

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、第六章:可編程邏輯器件基礎(chǔ) 6.1.2可編程邏輯器件通常分為三類: PAL/GAL:簡(jiǎn)單的邏輯陣列 CPLD:復(fù)雜可編程邏輯器件 FPGA:現(xiàn)場(chǎng)可編程門陣列611FPGA/CPLD的基本概念 CPLD:基于EECMOS工藝,下載程序掉電不丟失?;窘M成:可編程的I/O單元、基本邏輯單元、布線池和其他輔助單元等。 FPGA:基于SRAM或FLASH工藝,配置程序掉電丟失。基本組成:可編程輸入/輸出(I/O)單元、基本邏輯單元、布線資源、嵌入式塊RAM、底層嵌入功能單元、內(nèi)嵌專用硬核等。613FPGA/CPLD的基本邏輯單元 1、與或陣列CPLD 與或陣列結(jié)構(gòu)可以通過(guò)改變與或陣列的連接實(shí)現(xiàn)不同的邏
2、輯電路。3種形式:與陣列固定,或陣列可編程一PROM與陣列可編程,或陣列固定PAL、GAL、CPLD與陣列和或陣列均可編程一PAL與或陣列實(shí)現(xiàn)加法器2、查找表(LUT): FPGA的可編程邏輯單元是查找表,通過(guò)查找表實(shí)現(xiàn)邏輯函數(shù)查找表的物理結(jié)構(gòu)是靜態(tài)存儲(chǔ)器(SRAM) M個(gè)輸入項(xiàng)的邏輯函數(shù)可以由一個(gè)位的SRAM實(shí)現(xiàn)。當(dāng)用戶通過(guò)原理圖或VHDL描述一邏輯電路功能時(shí),EDA軟件自動(dòng)計(jì)算邏輯電路的所有可能取值,并寫入SRAM中。多級(jí)開關(guān)和多級(jí)與非門614FPGA/CPLD的結(jié)構(gòu)1、FPGA的基本結(jié)構(gòu):有六部分組成:可編程輸入/輸出(I/O)單元、基本邏輯單元、布線資源、嵌入式塊RAM、底層嵌入功能單
3、元、內(nèi)嵌專用硬核等布線池和其他輔助單元 1)可編程輸入/輸出(I/O)單元: 芯片與外界電路的接口部分可編程:通過(guò)軟件的配置,適配不同的電器標(biāo)準(zhǔn)與I/O物理特性 2)基本可編程邏輯單元(LE、LC) 基本由查找表和寄存器組成 查找表完成組合邏輯功能 寄存器可配置成同步異步復(fù)位或置位、時(shí)鐘使能的觸發(fā)器和所存器 多個(gè)可編程邏輯單元構(gòu)成一個(gè)邏輯陣列(LAB)614FPGA/CPLD的結(jié)構(gòu) 3)嵌入式塊RAM可配置成SRAM、DRAM、ROM、FIFO等形式的存儲(chǔ)器 4)布線資源布線資源連通FPGA內(nèi)部所有的單元 連線的長(zhǎng)度和工藝決定著信號(hào)在連線上的驅(qū)動(dòng)能力和傳輸速度。 設(shè)計(jì)實(shí)現(xiàn)時(shí),由布局布線器自動(dòng)根
4、據(jù)輸入的邏輯網(wǎng)表和約束條件完成所用的底層單元模塊的連接。設(shè)計(jì)者不需要選擇布線資源。 5)底層嵌入功能單元通用程度較高的嵌入式功能模塊(PLL、DSP、CPU等) 兩種方法實(shí)現(xiàn)這些功能單元的使用:在VHDL代碼和原理圖中直接例化在IP和生成器中配置相關(guān)參數(shù),自動(dòng)生成IP。614FPGA/CPLD的結(jié)構(gòu)6)內(nèi)嵌專用硬核:通用性較弱的硬核不是所有的FPGA都包含硬核,針對(duì)性較強(qiáng)的才有,例如高端通信產(chǎn)品中使用的FPGA內(nèi)有串并收發(fā)單元2、CPLD的基本結(jié)構(gòu)基于乘積項(xiàng)結(jié)構(gòu)由可編程的I/O單元、基本邏輯單元、布線池和其他輔助單元1)可編程的I/O單元和FPGA的可編程I/O單元功能一致可編程I/O支持的I
5、/O標(biāo)準(zhǔn)較少,頻率較低。614FPGA/CPLD的結(jié)構(gòu) 2)基本邏輯單元基本邏輯單元結(jié)構(gòu)和FPGA差別較大 CPLD中沒(méi)有查找表,由與或陣列加觸發(fā)器組成一宏單元(MC) 與或陣列完成組合邏輯功能 觸發(fā)器完成時(shí)序邏輯功能 多個(gè)宏單元的集合邏輯陣列塊(LAB)ALTERA公司通用邏輯陣列模塊(GAB)LATTICE公司功能模塊(FB)XILINX公司 3)布線池、布線矩陣 采用集中式布線池結(jié)構(gòu)開關(guān)式矩陣可編程互聯(lián)矩陣一ALTERA公司全局布線池LATTICE公司高速互聯(lián)和交叉矩陣一XILINX公司布線池結(jié)構(gòu)固定,輸入管腳到輸出管腳的標(biāo)準(zhǔn)延時(shí)固定一Tpd表示。614FPGA/CPLD的結(jié)構(gòu)其他輔助功
6、能模塊:JTAG編程模塊、全局時(shí)鐘、全局使能、全局復(fù)位/置位單元。FPGA器件EPF10K10LC84-3內(nèi)部結(jié)構(gòu)CPLD器件EPM7128B100-4內(nèi)部結(jié)構(gòu)615FPGA/CPLD的比較615FPGA/CPLD的比較6.1.6可編程元件 I三種類型: 熔絲和反熔絲 浮柵編程元件 SRAM配置存儲(chǔ)器第七章仿真及邏輯綜合7.1.2仿真方法 仿真分:功能仿真、時(shí)序仿真仿真方法有兩種: 交互式仿真方法 允許仿真運(yùn)行期間對(duì)信號(hào)賦值,指定仿真執(zhí)行時(shí)間,并觀察輸出信號(hào)波形。 測(cè)試平臺(tái)仿真方法 利用測(cè)試平臺(tái),自動(dòng)地對(duì)被測(cè)單元輸入測(cè)試矢量信號(hào),通過(guò)波形輸出,文件記錄輸出,或與測(cè)試平臺(tái)中的設(shè)定輸出矢量來(lái)進(jìn)行比
7、較,驗(yàn)證仿真結(jié)果測(cè)試平臺(tái)與原代碼具有相同的輸入、輸出端口,利用測(cè)試平臺(tái)可以對(duì)一個(gè)設(shè)計(jì)進(jìn)行功能仿真和時(shí)序仿真。7.1.3測(cè)試程序(平臺(tái))的設(shè)計(jì)方法測(cè)試(平臺(tái))程序應(yīng)包括:(1)被測(cè)實(shí)體引入部分; (2)被測(cè)實(shí)體仿真信號(hào)輸入部分; (3)被測(cè)實(shí)體工作狀態(tài)激活部分;(4)被測(cè)實(shí)體信號(hào)輸出部分; (5)被測(cè)實(shí)體功能仿真的數(shù)據(jù)比較以及判斷結(jié)果輸出部分(錯(cuò)誤警告成功通過(guò)信息); (6)被測(cè)實(shí)體的仿真波形比較處理部分。例7-2是對(duì)例5-18中一位全加器構(gòu)造的測(cè)試程序 【例7-2】LIBRARYIEEE;USEIEEE.STD_LOGIC_1164.ALL;ENTITYadder_tbISENDadder_t
8、b;ARCHITECTUREtb_architecutreOFadder_tbISCOMPONENTfull_adder-被測(cè)元件聲明PORT(a,b,cin:INSTD_LOGIC;sum,cout:OUTSTD_LOGIC);ENDCOMPONENT;SIGNALa,b,cin:STD_LOGIC;-輸入的激勵(lì)信號(hào) SIGNALsum,cout:STD_LOGIC;-輸出的仿真信號(hào)例7-2是對(duì)例5-18中一位全加器構(gòu)造的測(cè)試程序 TYPEtest_recISRECORDa:STD_LOGIC;b:STD_LOGIC;cin:STD_LOGIC;sum:STD_LOGIC;cout:STD_
9、LOGIC;ENDRECORD;TYPEtest_arrayISARRAY(POSITIVERANGE<>)OFtest_rec;CONSTANTpattern:test_array:=( (a=>'0',b=>'0',cin=>'0',sum=>'0',cout=>'0'),-測(cè)試向量表 (a=>'0',b=>'0',cin=>T,sum=>'1',cout=>'0'), (a=
10、>'0',b=>'1',cin=>'0',sum=>'1',cout=>'0'), (a=>'0',b=>'1',cin=>'1',sum=>'0',cout=>'1'), (a=>'1',b=>'0',cin=>'0',sum=>'1',cout=>'0'), (a=
11、>'1',b=>'0',cin=>'1',sum=>'0',cout=>'1'), (a=>'1',b=>'1',cin=>'0',sum=>'0',cout=>'1'), (a=>'1',b=>'1',cin=>'1',sum=>'1',cout=>'1') );例7
12、-2是對(duì)例5-18中一位全加器構(gòu)造的測(cè)試程序例7-2是對(duì)例5-18中一位全加器構(gòu)造的測(cè)試程序STIM:PROCESSVARIABLEvector:test_rec;VARIABLEerrors:BOOLEAN:=FALSE;BEGINFORiINpattern'RANGELOOPvector:=pattern(i); a<=vector.a;-由測(cè)試向量表施加激勵(lì) b<=vector.b;cin<=vector.cin;WAITFOR100ns;-仿真結(jié)果與預(yù)期結(jié)果的比較IF(sum/=vector.sum)THENerrors:=TRUE;ENDIF;IF(cout
13、/=vector.cout)THENerrors:=TRUE;ENDIF;ENDLOOP;結(jié)構(gòu)體描述模型:ASSERTNOTerrors-輸出出錯(cuò)信息REPORT"ERRORS!"SEVERITYNOTE;ASSERTerrorsREPORT"NOERRORS!"SEVERITYNOTE;WAIT;ENDPROCESS;ENDtb_architecutre;例7-2是對(duì)例5-18中一位全加器構(gòu)造的測(cè)試程序-配置聲明CONFIGURATIONtestbench_for_adderOFadder_tbIS-FORtb_architecutreFORUUT:f
14、ull_adderUSEENTITYWORK.full_adder(full1);ENDFOR; ENDFOR; ENDtestbench_for_adder;7.1.4仿真輸入信息的產(chǎn)生1程序直接產(chǎn)生法就是由設(shè)計(jì)者設(shè)計(jì)一段VHDL語(yǔ)言程序,由該程序中的進(jìn)程語(yǔ)句直接產(chǎn)生仿真的輸入信息。有三種方法:1 )在程序中定義測(cè)試向量表2 )采用并發(fā)描述語(yǔ)句3 )采用順序描述語(yǔ)句例如,對(duì)具有以下端口帶預(yù)置端的可逆計(jì)數(shù)器進(jìn)行仿真。 LIBRARYIEEE; USEIEEE.STD_LOGIC_1164.ALL; ENTITYcounterIS PORT(clk:INSTD_LOGIC;data:INSTD_
15、LOGIC_VECTOR(3downto0);-并行數(shù)據(jù)輸入 reset:INSTD_LOGIC;-復(fù)位信號(hào) load:INSTD_LOGIC;-并行信號(hào)裝載允許 up_dn:INSTD_LOGIC;-計(jì)數(shù)方向輸入 q:OUTSTD_LOGIC_VECTOR(3downto0)-計(jì)數(shù)器輸出 ); ENDcounter;例如,對(duì)具有以下端口帶預(yù)置端的可逆計(jì)數(shù)器進(jìn)行仿真。 在測(cè)試程序中結(jié)構(gòu)體的定義部分定義如下語(yǔ)句: constantCLK_PERIOD:TIME:=30ns; signalCLK:STD_LOGIC:='1'則計(jì)數(shù)器的輸入信號(hào)elk,reset,up_dn,data
16、和load可用以下語(yǔ)句產(chǎn)生。 【例7-3】 clk<=NOTclkAFTERCLK_PERIOD/2; reset<='0','1'AFTER10ns,'0'AFTER50ns; up_dn<='0','1'AFTER500ns,'0'AFTER1100ns; data<="1001","0110"AFTER700ns; load<='0','1'AFTER350ns,'0'AFTE
17、R400ns,'1'AFTER900ns,'0'AFTER950ns;例如,對(duì)具有以下端口帶預(yù)置端的可逆計(jì)數(shù)器進(jìn)行仿真。 3)采用順序描述語(yǔ)句【例7-4】-產(chǎn)生時(shí)鐘信號(hào)CLK_GEN:PROCESSBEGINclk<=NOTclkAFTERCLK_PERIOD/2;ENDPROCESS;例如,對(duì)具有以下端口帶預(yù)置端的可逆計(jì)數(shù)器進(jìn)行仿真。 -產(chǎn)生其他輸入信號(hào) STIM:PROCESSWAITFOR10BEGINup_dn<='0'data<="1001"load<='0'reset<='0'ns; reset<='1'WAITFOR40ns; reset<='
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 專業(yè)工業(yè)廠房買賣合同范本
- 合同范本彩鋼棚
- 公家車庫(kù)出租合同范本
- 發(fā)廊股東協(xié)議合同范本
- 北京中開合同范本
- 合建房合同范本
- 勞動(dòng)合同范本企業(yè)
- 從化醫(yī)院食堂承包合同范本
- 項(xiàng)目合作定金合同范本
- 合同范本范本
- 某大學(xué)中醫(yī)學(xué)(專升本)學(xué)士學(xué)位考試復(fù)習(xí)題
- 縣醫(yī)院聘請(qǐng)社會(huì)監(jiān)督員實(shí)施方案(經(jīng)典版)
- 江西省數(shù)字產(chǎn)業(yè)集團(tuán)有限公司招聘筆試真題2023
- DL-T+5174-2020燃?xì)?蒸汽聯(lián)合循環(huán)電廠設(shè)計(jì)規(guī)范
- 弟子規(guī)帶拼音全文課件省公共課一等獎(jiǎng)全國(guó)賽課獲獎(jiǎng)?wù)n件
- 2024年揚(yáng)州市職業(yè)大學(xué)單招職業(yè)適應(yīng)性測(cè)試題庫(kù)附答案
- 猜猜我有多愛(ài)你-繪本故事
- 人教版pep小學(xué)四年級(jí)英語(yǔ)下冊(cè)全冊(cè)完整
- 人教部編版《道德與法治》六年級(jí)下冊(cè)第9課《日益重要的國(guó)際組織》精美課件
- 第5課《匆匆》課件-2023-2024學(xué)年統(tǒng)編版(五四學(xué)制)語(yǔ)文六年級(jí)下冊(cè)
- 禁毒社工知識(shí)培訓(xùn)課件
評(píng)論
0/150
提交評(píng)論