版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、VHDL語言與數(shù)字邏輯電路設(shè)計主講:許鋼2010.9許鋼 8/27/20221VHDL語言與數(shù)字邏輯電路設(shè)計第6講 VHDL并行語句并行語句是硬件描述語言與軟件程序最大的區(qū)別所在。所有并行語句在結(jié)構(gòu)體中的執(zhí)行都是同時進(jìn)行的,即它們的執(zhí)行順序與語句書寫的順序無關(guān)。這種并行性是由硬件本身的并行性決定的,即一旦電路接通電源,它的各部分就會按照事先設(shè)計好的方案同時工作。VHDL有幾種主要并行語句:進(jìn)程語句塊語句并行信號賦值語句元件例化語句生成語句并行過程調(diào)用語句許鋼 8/27/20222VHDL語言與數(shù)字邏輯電路設(shè)計第6講 VHDL并行語句進(jìn)程(Process)語句是一種并發(fā)處理語句,在一個構(gòu)造體中多
2、個Process是同時并行運(yùn)行,它是VHDL語言中描述硬件系統(tǒng)并發(fā)行為的最基本的語句。它的特點(diǎn)歸納如下: 一個進(jìn)程語句可以與其他進(jìn)程語句并發(fā)運(yùn)行; 進(jìn)程語句可以存取在設(shè)計實體或構(gòu)造體中定義的所有信號; 在一個進(jìn)程模塊內(nèi)的語句都是按順序執(zhí)行的; 進(jìn)程有掛起和執(zhí)行兩個狀態(tài),要激活進(jìn)程,在進(jìn)程結(jié)構(gòu)中必須包含一個敏感信號列表或含一個Wait語句; 進(jìn)程之間的通信是通過信號傳遞實現(xiàn)的。進(jìn)程語句 (Process)許鋼 8/27/20223VHDL語言與數(shù)字邏輯電路設(shè)計第6講 VHDL并行語句塊語句是將結(jié)構(gòu)體中的并行語句組合在一起,其主要目的是改善并行語句及其結(jié)構(gòu)的可讀性,一般用于較復(fù)雜的VHDL程序中;
3、但從綜合的角度看,BLOCK語句沒有實用價值。塊語句的語法描述如下:塊標(biāo)號:BLOCK說明語句;BEGIN并行語句;END BLOCK塊標(biāo)號;注意:塊標(biāo)號必須有。塊語句(Block)許鋼 8/27/20224VHDL語言與數(shù)字邏輯電路設(shè)計第6講 VHDL并行語句說明語句與結(jié)構(gòu)體的說明語句相同,主要是對該塊所要用到的對象、其它模塊等加以說明??烧f明的項目有: 端口說明、類屬說明; 子程序說明及子程序體; 數(shù)據(jù)類型說明; 常數(shù)說明; 信號說明; 元件說明等。塊語句(Block)許鋼 8/27/20225VHDL語言與數(shù)字邏輯電路設(shè)計第6講 VHDL并行語句例1:ARCHITECTURE behav
4、e OF test_block ISBEGIN.p1:BLOCKBEGINaequalb=1 WHEN a=b ELSE 0;agreatbb ELSE 0;alessb=1 WHEN aibus, bbus=dbus, dout=x );原有的信號、常數(shù)等說明語句;Begin原有的塊內(nèi)語句;End Block ALU;.End cpu-blk;塊語句(Block)許鋼 8/27/20229VHDL語言與數(shù)字邏輯電路設(shè)計第6講 VHDL并行語句并行信號賦值語句有三種形式: 簡單信號賦值語句簡單信號賦值語句的格式:賦值目標(biāo)=表達(dá)式;并行信號賦值語句許鋼 8/27/202210VHDL語言與數(shù)字邏
5、輯電路設(shè)計第6講 VHDL并行語句并行信號賦值語句有三種形式: 條件信號賦值語句條件信號賦值語句的格式:賦值目標(biāo)=表達(dá)式1 WHEN 賦值條件 ELSE表達(dá)式2 WHEN 賦值條件 ELSE.表達(dá)式n;例4:ARCHITECTURE archmux OF mux4 ISBEGIN y=a0 WHEN s=00 ELSEa1 WHEN s=01 ELSEa2 WHEN s=10 ELSEa3 ;END archmux;并行信號賦值語句對比If語句:If條件信號賦值語句是順序語句,只能用在進(jìn)程(Process)中。許鋼 8/27/202211VHDL語言與數(shù)字邏輯電路設(shè)計第6講 VHDL并行語句并
6、行信號賦值語句有三種形式: 選擇信號賦值語句選擇信號賦值語句的格式:WITH 選擇表達(dá)式 SELECT賦值目標(biāo)信號=表達(dá)式1 WHEN 選擇值1,表達(dá)式2 WHEN 選擇值2,.表達(dá)式n WHEN others;例5:ARCHITECTURE archmux OF mux4 ISBEGIN WITH s SELECTyqout, adr=qa); -元件例化語句,名稱關(guān)聯(lián)END arch;元件例化時的端口列表可采用位置關(guān)聯(lián)方法,如u1。這種方法要求的實參(該設(shè)計中連接到端口的實際信號,如rd、clk等)所映射的形參(被調(diào)用元件的對外接口信號)的位置同元件聲明中一致。元件例化時的端口列表也可采用
7、名稱關(guān)聯(lián)方法映射實參與形參,如u2。格式為(形參1=實參1,形參2=實參2,.),這種方法與位置無關(guān)。元件的例化【例6】:將一個模為10的計數(shù)器和一個七段譯碼器連接,送數(shù)碼管顯示。 已知模10計數(shù)器模塊名稱為:cntm10;七段譯碼器模塊名稱為:decode48許鋼 8/27/202220VHDL語言與數(shù)字邏輯電路設(shè)計第6講 VHDL并行語句元件的例化【例6】:將一個模為10的計數(shù)器和一個七段譯碼器連接,送數(shù)碼管顯示。 已知模10計數(shù)器模塊名稱為:cntm10;七段譯碼器模塊名稱為:decode48許鋼 8/27/202221VHDL語言與數(shù)字邏輯電路設(shè)計第6講 VHDL并行語句生成語句有一種
8、復(fù)制作用,它可以生成與某個元件或設(shè)計單元電路完全相同的一組并行元件或設(shè)計單元電路結(jié)構(gòu)。生成語句一般要和元件的例化語句聯(lián)合起來使用。生成語句的格式:標(biāo)號:FOR 循環(huán)變量 IN 取值范圍 GENERATE說明語句;BEGIN并行語句(含元件例化語句);END GENERATE標(biāo)號;或標(biāo)號:IF 條件 GENERAE說明語句;BEGIN并行語句(含元件例化語句) ;END GENERATE標(biāo)號;生成語句(Generate) 許鋼 8/27/202222VHDL語言與數(shù)字邏輯電路設(shè)計第6講 VHDL并行語句【例7】:利用Generate 語句產(chǎn)生4個D觸發(fā)器 ,如圖所示。生成語句(Generate)
9、 許鋼 8/27/202223VHDL語言與數(shù)字邏輯電路設(shè)計第6講 VHDL并行語句【例7】:利用Generate 語句產(chǎn)生4個D觸發(fā)器 ,如圖所示。LIBRARY ieee;USE ieee.std_logic_1164.ALL;ENTITY dff_4 IS PORT(clk,clrn,prn :IN std_logic; d :IN std_logic_vector(3 DOWNTO 0); q :OUT std_logic_vector(3 DOWNTO 0);END dff_4;ARCHITECTURE archdff_4 OF dff_4 IS COMPONENT dff PORT
10、(D,CLK,CLRN,PRN:IN std_logic; Q:OUT std_logic); END COMPONENT; BEGIN dff4:FOR i IN 3 DOWNTO 0 GENERATE u:dff PORT MAP (d(i),clk,clrn,prn,q(i); END GENERATE;END archdff_4;生成語句(Generate) 許鋼 8/27/202224VHDL語言與數(shù)字邏輯電路設(shè)計第6講 VHDL并行語句一般來講,如果電路中各元件實體的輸入、輸出端是規(guī)則的,則用FOR_GENERATE設(shè)計;如果是不規(guī)則的,則用IF_GENERATE語句設(shè)計。例8:4
11、位移位寄存器的設(shè)計,如圖所示。生成語句(Generate) 許鋼 8/27/202225VHDL語言與數(shù)字邏輯電路設(shè)計第6講 VHDL并行語句【例8】:4位移位寄存器的設(shè)計,如圖所示。LIBRARY ieee;USE ieee.std_logic_1164.ALL;ENTITY n_shifter IS GENERIC(m:integer:=4); PORT(a,clk,clrn,prn: IN std_logic; b: OUT std_logic);END n_shifter;ARCHITECTURE behave OF n_shifter IS COMPONENT dff PORT(d,
12、clk,clrn,prn: IN std_logic; q: OUT std_logic); END COMPONENT ; SIGNAL x:std_logic_vector(0 TO (m-2); -接下一頁生成語句(Generate) 許鋼 8/27/202226VHDL語言與數(shù)字邏輯電路設(shè)計第6講 VHDL并行語句【例8】:4位移位寄存器的設(shè)計,如圖所示。BEGIN shifter: FOR i IN 0 TO (m-1) GENERATE u1:IF i=0 GENERATE dffx: dff PORT MAP(a,clk,clrn,prn,x(i); END GENERATE u1; u2:IF (i0 AND i/=(m-1) GENERATE dffx:dff PORT MAP(x(i-1),clk,clrn,prn,x(i); END GENERATE u2; u3:IF i=(m-1) GENERATE dffx:dff PORT MAP(x(i-1),clk,clrn,prn,b); END GENERATE u3; END GENERATE
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- GB/T 25320.4-2024電力系統(tǒng)管理及其信息交換數(shù)據(jù)和通信安全第4部分:包含MMS的協(xié)議集及其附件
- GB/T 45159.3-2024機(jī)械振動與沖擊黏彈性材料動態(tài)力學(xué)性能的表征第3部分:懸臂剪切梁法
- GB/T 45205-2024經(jīng)營者公平競爭合規(guī)管理規(guī)范
- Lactofen-生命科學(xué)試劑-MCE-2687
- Dityrosine-dihydrochloride-Bityrosine-dihydrochloride-生命科學(xué)試劑-MCE-2022
- 2025年度酒店安全管理責(zé)任免除協(xié)議書模板
- 二零二五年度房地產(chǎn)項目財務(wù)風(fēng)險評估顧問協(xié)議
- 二零二五年度特色茶餐廳員工勞動保障合同
- 二零二五年度荒山承包與植被種植一體化合同
- 施工現(xiàn)場施工圖紙會審制度
- 房地產(chǎn)調(diào)控政策解讀
- 五年級數(shù)學(xué)(小數(shù)乘法)計算題專項練習(xí)及答案
- 產(chǎn)前診斷室護(hù)理工作總結(jié)
- 2024-2025學(xué)年八年級數(shù)學(xué)人教版上冊寒假作業(yè)(綜合復(fù)習(xí)能力提升篇)(含答案)
- 2024年社會工作者(中級)-社會綜合能力考試歷年真題可打印
- 人教版高中物理必修一全套課件【精品】
- 動物檢疫技術(shù)-臨診檢疫技術(shù)(動物防疫與檢疫技術(shù))
- 《華夏幸福房地產(chǎn)公司人才流失現(xiàn)狀、原因及應(yīng)對策略》開題報告(文獻(xiàn)綜述)3400字
- 文化墻、墻體彩繪施工方案
- 小型混凝土攪拌機(jī)-畢業(yè)設(shè)計
- 初中化學(xué)校本課程
評論
0/150
提交評論