版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、 第第6章章 Verilog HDL設(shè)計進階設(shè)計進階 習(xí)習(xí) 題題實驗與設(shè)計實驗與設(shè)計習(xí)習(xí) 題題 6-1 在在Verilog設(shè)計中,給時序電路清零(復(fù)位)有兩種不同方法,它們是什么,如何設(shè)計中,給時序電路清零(復(fù)位)有兩種不同方法,它們是什么,如何實現(xiàn)?實現(xiàn)?答:同步清零、異步清零,在過程語句敏感信號表中的邏輯表述答:同步清零、異步清零,在過程語句敏感信號表中的邏輯表述posedge CLK用于指明用于指明正向跳變,或正向跳變,或negedge用于指明負向跳變實現(xiàn)用于指明負向跳變實現(xiàn) 6-2 哪一種復(fù)位方法必須將復(fù)位信號放在敏感信號表中?給出這兩種電路的哪一種復(fù)位方法必須將復(fù)位信號放在敏感信號表
2、中?給出這兩種電路的Verilog描述。描述。答:異步復(fù)位必須將復(fù)位信號放在敏感信號表中。答:異步復(fù)位必須將復(fù)位信號放在敏感信號表中。always (posedge CLK) /CLK上升沿啟動上升沿啟動 Q=D; /當(dāng)當(dāng)CLK有升沿時有升沿時D被鎖入被鎖入Qalways (posedge CLK or negedge RST) begin /塊開始塊開始 if(!RST)Q=0; /如果如果RST=0條件成立,條件成立,Q被清被清0else if(EN) Q=D;/在在CLK上升沿處,上升沿處,EN=1,則執(zhí)行賦值語句,則執(zhí)行賦值語句end /塊結(jié)束塊結(jié)束 習(xí)習(xí) 題題 6-3 用不同循環(huán)語句
3、分別設(shè)計一個邏輯電路模塊,用以統(tǒng)計一用不同循環(huán)語句分別設(shè)計一個邏輯電路模塊,用以統(tǒng)計一8位二進制數(shù)中含位二進制數(shù)中含1的的數(shù)量。數(shù)量。 module cnt53(a,Q);output3:0a;input7:0 Q;reg3:0 a;integer i; always (Q) begin a=0; for(i=0;i1; end endendmoduleforfor循環(huán)語句循環(huán)語句module Statistics8(sum,A); parameter S=8; output3:0sum; input7:0 A; regS:1 AT; reg3:0 sum; regS:0 CT; always
4、 (A) begin AT=S1b0,A; sum=0; CT=S; while(CT0) begin if(AT1)sum=sum+1;else sum=sum; begin CT= CT-1; AT=AT1; end end end endmodule 6-3 6-3 用不同循環(huán)語句分別設(shè)計一個邏輯電路模塊,用以統(tǒng)計一用不同循環(huán)語句分別設(shè)計一個邏輯電路模塊,用以統(tǒng)計一8 8位二進制數(shù)位二進制數(shù)中含中含1 1的數(shù)量。的數(shù)量。 module module cnt54(f,t);output output f;inputinput6:0 t;regreg2:0 sum;integer integ
5、er i; regreg f;always always (t) begin begin sum=0; for for(i=0;ib)?a:b;assign sum2=(cd)?c:d;assign max=(sum1sum2)?sum1:sum2;endmodule習(xí)習(xí) 題題 6-6 從不完整的條件語句產(chǎn)生時序模塊的原理看,例從不完整的條件語句產(chǎn)生時序模塊的原理看,例6-9和例和例6-10從表面上看都包含從表面上看都包含不完整條件語句,試說明,為什么例不完整條件語句,試說明,為什么例6-9的綜合結(jié)果含鎖存器,二例的綜合結(jié)果含鎖存器,二例6-10卻沒有。卻沒有?!纠?-96-9】非阻塞賦初值
6、導(dǎo)致錯誤非阻塞賦初值導(dǎo)致錯誤【例例6-106-10】阻塞賦初值正確阻塞賦初值正確module mux4_1(D0,D1,D2,D3,S1,S0,OUT); output OUT ; input D0,D1, D2,D3,S1, SO;reg 2:0 T ; reg OUT;always (D0, D1,D2,D3, S1,S0) begin T = 0; if (SO=1) T = T+1 if (S1=1) T = T+2 ; case (T) 0 : OUT = D0; 1 : OUT = D1; 2 : OUT = D2 ; 3 : OUT= D3; default : OUT D0;
7、endcase endendmodulemodule mux4_1(DO,D1, D2,D3,S1, SO, OUT); output OUT ; input DO,D1, D2,D3,S1, SO;reg 2:0 T ; reg OUT;always (D0, D1,D2,D3, S1,S0) begin T = 0; if (SO=1) T = T+1 if (S1=1) T = T+2 ; case (T) 0 : OUT = D0; 1 : OUT= D1; 2 : OUT =D2 ; 3 : OUT= D3; default : OUT D0; endcase endendmodul
8、e答:參見書答:參見書P137習(xí)習(xí) 題題 6-6 從不完整的條件語句產(chǎn)生時序模塊的原理看,例從不完整的條件語句產(chǎn)生時序模塊的原理看,例6-9和例和例6-10從表面上看都包含從表面上看都包含不完整條件語句,試說明,為什么例不完整條件語句,試說明,為什么例6-9的綜合結(jié)果含鎖存器,二例的綜合結(jié)果含鎖存器,二例6-10卻沒有。卻沒有。答:參見書答:參見書P137 事實上,例事實上,例6-96-9中,中,T T在過程中出現(xiàn)了在過程中出現(xiàn)了3 3次非阻塞賦值操作,即有次非阻塞賦值操作,即有3 3個賦值源對個賦值源對同一信號同一信號T T進行賦值進行賦值-T=0-T=0、T=T+1T=T+1和和T=T+2
9、T=T+2。但根據(jù)以上的討論,對于非阻塞。但根據(jù)以上的討論,對于非阻塞式賦值,前兩個語句中的賦值目標(biāo)信號式賦值,前兩個語句中的賦值目標(biāo)信號T T都不可能得到任何數(shù)值,只有最后的都不可能得到任何數(shù)值,只有最后的T=T+2T=T+2語句中的語句中的T T的值能得到更新。然而,由于賦值符號右邊的的值能得到更新。然而,由于賦值符號右邊的T T始終未得到任何始終未得到任何確定的初始值,即語句確定的初始值,即語句T=0T=0并未完成賦值,所以最后的并未完成賦值,所以最后的T T始終是個未知值。結(jié)果始終是個未知值。結(jié)果只能被綜合成隨只能被綜合成隨S1S1和和S0S0隨機變動的時序電路,導(dǎo)致隨機變動的時序電路
10、,導(dǎo)致T T成為一個不確定的信號。結(jié)成為一個不確定的信號。結(jié)果在過程最后的果在過程最后的casecase語句中,無法通過判斷語句中,無法通過判斷T T的值來確定選通輸入,即對的值來確定選通輸入,即對OUTOUT的賦的賦值。值。 例例6-106-10就不一樣了。程序首先執(zhí)行了阻塞式賦值語句就不一樣了。程序首先執(zhí)行了阻塞式賦值語句T=0T=0,T T即刻被更新,從即刻被更新,從而使兩個而使兩個ifif語句中的語句中的T T都能得到確定的初值。另一方面,當(dāng)都能得到確定的初值。另一方面,當(dāng)ifif語句不滿足條件時,語句不滿足條件時,即當(dāng)即當(dāng)S0S0或或S1S1不等于不等于1 1時,由于時,由于T T已
11、經(jīng)在第一條賦值語句中被更新為確定的值已經(jīng)在第一條賦值語句中被更新為確定的值0 0了,了,所以盡管兩個所以盡管兩個ifif語句從表面上看都屬于不完整的條件語句,也不可能被綜合成時語句從表面上看都屬于不完整的條件語句,也不可能被綜合成時序電路了。顯然也就有了圖序電路了。顯然也就有了圖6-46-4所示正確的波形輸出。所示正確的波形輸出。 習(xí)習(xí) 題題6-7 6-7 設(shè)計一個求補碼的程序,輸入數(shù)據(jù)是一個有符號的設(shè)計一個求補碼的程序,輸入數(shù)據(jù)是一個有符號的8 8位二進制數(shù)。位二進制數(shù)。/設(shè)計一個求補碼的程序,輸入數(shù)據(jù)是一個有符號的設(shè)計一個求補碼的程序,輸入數(shù)據(jù)是一個有符號的8 8位二進制數(shù)位二進制數(shù)mod
12、ule cnt57(a,b); /module cnt57(a,b); /二進制數(shù)補碼二進制數(shù)補碼input 7:0 a;input 7:0 a;output 7:0 b;output 7:0 b;integer i;integer i;regreg 7:0d; 7:0d;regreg 6:0c; 6:0c;always (a) always (a) beginbegin if(a7=1) if(a7=1) begin begin for(i=0;i7;i=i+1)ci=!ai for(i=0;i=5)?1:0;endmodule/程序1module BCD_Compare(a,b); out
13、put b; input3:0a; wire c,d; and(c,a1,a2); and(d,a0,a2); or(b,d,c,a3);endmodule 6-9 用原理圖或用原理圖或Verilog輸入方式分別設(shè)計一個周期性產(chǎn)生二進制序列輸入方式分別設(shè)計一個周期性產(chǎn)生二進制序列01001011001的序列發(fā)生器,用移位寄存器或用同步時序電路實現(xiàn),并用時序仿真器驗證其功能。的序列發(fā)生器,用移位寄存器或用同步時序電路實現(xiàn),并用時序仿真器驗證其功能。習(xí)習(xí) 題題1.1.計數(shù)型序列信號發(fā)生器組成與特點計數(shù)型序列信號發(fā)生器組成與特點 計數(shù)型序列信號發(fā)生器能產(chǎn)生多組序列信號,這是移位型發(fā)生器所沒有的功能.
14、計數(shù)型序列信號發(fā)生器是由計數(shù)器和組合電路構(gòu)成的,序列的長度P就是計數(shù)器的模數(shù)。2.2.計數(shù)型序列信號發(fā)生器的設(shè)計計數(shù)型序列信號發(fā)生器的設(shè)計( (通過例題來說明通過例題來說明) ) 例1.設(shè)計01001011001序列信號發(fā)生器 由于序列長度已經(jīng)知道P=11,所以先用74163N設(shè)計一個模11的計數(shù)器,再用八選一數(shù)據(jù)選擇器實現(xiàn)序列輸出,把計數(shù)器的輸出端作為數(shù)據(jù)選擇器的地址變量。它的電路圖為:如圖(1) 序列信號是指在同步脈沖作用下循環(huán)地產(chǎn)生一串周期性的二進制信號,能產(chǎn)序列信號是指在同步脈沖作用下循環(huán)地產(chǎn)生一串周期性的二進制信號,能產(chǎn)生這種信號的邏輯器件就稱為序列信號發(fā)生器,根據(jù)結(jié)構(gòu)不同生這種信號
15、的邏輯器件就稱為序列信號發(fā)生器,根據(jù)結(jié)構(gòu)不同, ,它可它可和和。 6-9 用原理圖或用原理圖或Verilog輸入方式分別設(shè)計一個周期性產(chǎn)生二進制序列輸入方式分別設(shè)計一個周期性產(chǎn)生二進制序列01001011001的序列發(fā)生器,用移位寄存器或用同步時序電路實現(xiàn),并用時序仿真器驗證其功能。的序列發(fā)生器,用移位寄存器或用同步時序電路實現(xiàn),并用時序仿真器驗證其功能。習(xí)習(xí) 題題1101000101CPCPQD(A2)QD(A2) QC(D4QC(D4、 D5)D5)QB(A1)QB(A1)QA(A0QA(A0、D7)D7)D DF F1 10 01 10 01 1D1D10 02 20 01 11 10
16、0D2D21 13 30 01 11 11 1D3D30 04 41 10 00 00 0D4D40 05 51 1000 01 1D5D51 16 61 10 01 10 0D6D60 07 71 10 01 11 1D7D71 18 81 11 10 00 0D4D41 19 91 1110 01 1D5D50 010101 11 11 10 0D6D60 011111 11 11 11 1D7D71 1U474163NQA14QB13QC12QD11RCO15A3B4C5D6ENP7ENT10LOAD9CLR1CLK2U1A74S04DU1B74S04DU274151NW6D04D13D
17、22D31D415D514D613D712A11C9B10Y5G7VDD5VV1100 Hz 5 V XSC1ABExt Trig+_+_ 6-9 用原理圖或用原理圖或Verilog輸入方式分別設(shè)計一個周期性產(chǎn)生二進制序列輸入方式分別設(shè)計一個周期性產(chǎn)生二進制序列01001011001的序列發(fā)生器,用移位寄存器或用同步時序電路實現(xiàn),并用時序仿真器驗證其功能。的序列發(fā)生器,用移位寄存器或用同步時序電路實現(xiàn),并用時序仿真器驗證其功能。習(xí)習(xí) 題題1.移位型序列信號發(fā)生器的組成 移位型序列信號發(fā)生器是由移位寄存器和組合電路兩部分構(gòu)成,組合電路的輸出,作為移位寄存器的串行輸入。由n位移位寄存器構(gòu)成的序列信
18、號發(fā)生器所產(chǎn)生的序列信號的最大長度為:P=2n2.2.移位型序列信號發(fā)生器的設(shè)計移位型序列信號發(fā)生器的設(shè)計( (我們通過例題來說明我們通過例題來說明) ) 例1.試設(shè)計一個01001011001序列信號發(fā)生器 首先確定移位寄存器的位數(shù),并畫出編碼狀態(tài)圖,并找出遷移關(guān)系. P=11,因此只需要74194N中的四位,按序列信號四位一組去劃分(有十中狀態(tài)),它的轉(zhuǎn)換關(guān)系是:如圖(1)如圖如圖(1) (1) 6-9 用原理圖或用原理圖或Verilog輸入方式分別設(shè)計一個周期性產(chǎn)生二進制序列輸入方式分別設(shè)計一個周期性產(chǎn)生二進制序列01001011001的序列發(fā)生器,用移位寄存器或用同步時序電路實現(xiàn),并用
19、時序仿真器驗證其功能。的序列發(fā)生器,用移位寄存器或用同步時序電路實現(xiàn),并用時序仿真器驗證其功能。習(xí)習(xí) 題題CPCPQDQDQCQCQBQBQAQA序列序列F F0 00 01 10 00 04 41 11 11 10 00 01 19 90 02 20 00 01 10 02 21 13 30 01 10 01 15 51/01/04 41 10 01 11 111110 05 50 01 11 10 06 60 06 61 11 10 00 012121 17 71 10 01 10 010100 0 6-9 用原理圖或用原理圖或Verilog輸入方式分別設(shè)計一個周期性產(chǎn)生二進制序列輸入方式
20、分別設(shè)計一個周期性產(chǎn)生二進制序列01001011001的序列發(fā)生器,用移位寄存器或用同步時序電路實現(xiàn),并用時序仿真器驗證其功能。的序列發(fā)生器,用移位寄存器或用同步時序電路實現(xiàn),并用時序仿真器驗證其功能。習(xí)習(xí) 題題74194N U474194NA3B4C5D6SL7QA15QB14QC13QD12SR2CLR1S09S110CLK11V1100 Hz 5 V XSC1ABExt Trig+_+_VDD5VU174150NW10E08E17E26E35E44E53E62E71A15G9E823E922E1021E1120E1219E1318E1417E1516C13B14D110100101100
21、1J1Key = SpaceU2A7476N1J41Q151Q141K161CLR31CLK11PR2U3A7400NU5A7404N 6-9 用原理圖或用原理圖或Verilog輸入方式分別設(shè)計一個周期性產(chǎn)生二進制序列輸入方式分別設(shè)計一個周期性產(chǎn)生二進制序列01001011001的序列發(fā)生器,用移位寄存器或用同步時序電路實現(xiàn),并用時序仿真器驗證其功能。的序列發(fā)生器,用移位寄存器或用同步時序電路實現(xiàn),并用時序仿真器驗證其功能。習(xí)習(xí) 題題CPCPQDQDQCQCQBQBQAQA譯碼選擇譯碼選擇右移輸入右移輸入序列序列0 00 00 00 00 00 01 10 01 10 00 00 01 11
22、11 11 12 20 00 01 11 13 31 10 03 30 01 11 11 17 71 10 04 41 11 11 11 115150 01 15 51 11 11 10 014140 00 06 61 11 10 00 012121 11 17 71 10 00 01 19 90 01 18 80 00 01 10 02 20 00 09 90 01 10 00 04 40 00 010101 10 00 00 08 80 01 111110 01 11 10 06 612120 01 10 01 15 513131 10 01 10 0101014141 10 01 11
23、1111115151 11 10 01 11313U474194NA3B4C5D6SL7QA15QB14QC13QD12SR2CLR1S09S110CLK11XSC1ABExt Trig+_+_VDD5VU174150NW10E08E17E26E35E44E53E62E71A15G9E823E922E1021E1120E1219E1318E1417E1516C13B14D1101001011001U2A7404NU3A7404NU7B7486NU6A7408JU6B7408JU5A7432NVDD5VU8A7404NLED1AV1500 Hz 5 V 6-9 用原理圖或用原理圖或Verilog
24、輸入方式分別設(shè)計一個周期性產(chǎn)生二進制序列輸入方式分別設(shè)計一個周期性產(chǎn)生二進制序列01001011001的序列發(fā)生器,用移位寄存器或用同步時序電路實現(xiàn),并用時序仿真器驗證其功能。的序列發(fā)生器,用移位寄存器或用同步時序電路實現(xiàn),并用時序仿真器驗證其功能。習(xí)習(xí) 題題/【例6-14】module SHFT1(CLK,LOAD,DIN,QB,CN); /左移移位寄存器 output10:0QB; /移位數(shù)據(jù)輸出 output CN; /進位輸出 input CLK,LOAD; input 10:0DIN;/待加載移位的數(shù)據(jù) reg CY;always (posedge CLK ) begin if(!L
25、OAD)REG=DIN; /注意LOAD是與CLK上升沿同步的控制信號 else end assign QB=REG; /移位后輸出 assign CN=CY; /移位后輸出endmodule 6-10 6-10 基于原理圖輸入方式,用基于原理圖輸入方式,用7419474194、7427374273、D D觸發(fā)器等器件組成觸發(fā)器等器件組成8 8位位串入并出的轉(zhuǎn)換電路,要求在轉(zhuǎn)換過程中數(shù)據(jù)不變,只有當(dāng)串入并出的轉(zhuǎn)換電路,要求在轉(zhuǎn)換過程中數(shù)據(jù)不變,只有當(dāng)8 8位一組數(shù)據(jù)全位一組數(shù)據(jù)全部轉(zhuǎn)換結(jié)束后,輸出才變化一次。部轉(zhuǎn)換結(jié)束后,輸出才變化一次。用計數(shù)器和數(shù)據(jù)選擇器構(gòu)成用計數(shù)器和數(shù)據(jù)選擇器構(gòu)成序列信號
26、發(fā)生器序列信號發(fā)生器例:產(chǎn)生一個例:產(chǎn)生一個8位的序列信號位的序列信號 00010111U774163NQA14QB13QC12QD11RCO15A3B4C5D6ENP7ENT10LOAD9CLR1CLK2U874151NW6D04D13D22D31D415D514D613D712A11C9B10Y5G7VDD5Vclkout實驗與設(shè)計實驗與設(shè)計6-1 半整數(shù)與奇數(shù)分頻器設(shè)計半整數(shù)與奇數(shù)分頻器設(shè)計(1)實驗?zāi)康模簩W(xué)習(xí)利用)實驗?zāi)康模簩W(xué)習(xí)利用Verilog完成實用程序的設(shè)計。完成實用程序的設(shè)計。(2)實驗內(nèi)容)實驗內(nèi)容1:(3)實驗內(nèi)容)實驗內(nèi)容2:(4)實驗內(nèi)容)實驗內(nèi)容3:(5)實驗內(nèi)容)實驗內(nèi)容4:實驗與設(shè)計實驗與設(shè)計6-2 數(shù)控分頻器設(shè)計數(shù)控分頻器設(shè)計(1)實驗?zāi)康模海嶒災(zāi)康模海?)實驗內(nèi)容)實驗內(nèi)容1:(3)實驗內(nèi)容)實驗內(nèi)容2:(4)實驗內(nèi)容)實驗內(nèi)容3:(5)實驗內(nèi)容)實驗內(nèi)容4:(6)實驗內(nèi)容)實驗內(nèi)容5:實驗與設(shè)計實驗與設(shè)計6-3 VGA彩條信號顯示控制電路設(shè)計彩條信號顯示控制電路設(shè)計(1)實驗?zāi)康模海嶒災(zāi)康模海?)實驗原理:)實驗原理:實驗與設(shè)計實驗與設(shè)計6-3 VGA
溫馨提示
- 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)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 醫(yī)療器械貸款管理辦法
- 醫(yī)藥生產(chǎn)車間管理規(guī)程
- 科技園區(qū)智能化系統(tǒng)招標(biāo)
- 2025資產(chǎn)置換合同書范文
- 信息技術(shù)設(shè)備維護與保養(yǎng)守則
- 科技大賽主持人招聘協(xié)議
- 城市排水系統(tǒng)改造圍擋協(xié)議
- 鋁型材定制合同樣本
- 制造業(yè)生產(chǎn)合同管理要點
- 手機制造廠房建設(shè)施工合同
- 【講座】2020年福建省高職分類考試招生指導(dǎo)講座
- GB 18450-2001民用黑火藥
- 性格決定命運課件
- 學(xué)習(xí)會計基礎(chǔ)工作規(guī)范課件
- 民間文學(xué)(全套課件)
- 初二期末放假前家長會
- DB41-T 2137-2021公路隧道監(jiān)控量測技術(shù)規(guī)程-(高清現(xiàn)行)
- 雙面埋弧焊螺旋鋼管公稱外公壁厚和每米理論重量
- 協(xié)昌電磁脈沖閥介紹
- 爆破作業(yè)盲炮處理方案
- 富士施樂VC2265打印機使用說明SPO
評論
0/150
提交評論