【正文】
139。039。039。139。139。039。039。 END IF。 THEN S:=S。 ELSIF EN=39。039。139。 BEGIN IF(CLK39。 BEGIN CNT:PROCESS(CLK) IS VARIABLE S:INTEGER RANGE 0 TO 45。 ARCHITECTURE ART OF JTDKZ IS TYPE STATE_TYPE IS(A,B,C,D)。 MR,MY0,MG0,BR,BY0,BG0:OUT STD_LOGIC)。 USE 。 END ARCHITECTURE ART。 END IF。 ELSE OUTA=39。THEN OUTA=39。 ARCHITECTURE ART OF CSKZ IS BEGIN PROCESS IS BEGIN IF INA=39。 OUTA:OUT STD_LOGIC)。 USE 。 LIBRARY IEEE。 END PROCESS。DOUT45B=00000000。DOUT45B=00000110。DOUT45B=00000111。DOUT45B=00001000。DOUT45B=00001001。DOUT45B=00010000。DOUT45B=00010001。DOUT45B=00010010。DOUT45B=00010011。DOUT45B=00010100。DOUT45B=00010101。DOUT45B=00010110。DOUT45B=00010111。DOUT45B=00011000。DOUT45B=00011001。DOUT45B=00100000。DOUT45B=00100001。DOUT45B=00100010。DOUT45B=00100011。DOUT45B=00100100。DOUT45B=00100101。DOUT45B=00100110。DOUT45B=00100111。DOUT45B=00101000。DOUT45B=00101001。DOUT45B=00110000。DOUT45B=00110001。DOUT45B=00110010。DOUT45B=00110011。DOUT45B=00110100。DOUT45B=00110101。DOUT45B=00110110。DOUT45B=00110111。DOUT45B=00111000。DOUT45B=00111001。DOUT45B=01000000。DOUT45B=01000001。DOUT45B=01000010。DOUT45B=01000011。DOUT45B=01000100。DOUT45B=01000101。DOUT45B=01000110。DOUT45B=01000111。DOUT45B=01001000。DOUT45B=01001001。DOUT45B=01010000。 END PROCESS。 END IF。039。 THEN CNT6B=CNT6B+1。) THEN IF EN45=39。EVENT AND CLK=39。 THEN CNT6B=CNT6BCNT6B1。 BEGIN PROCESS(SB,CLK,EN45) IS BEGIN IF SB=39。 END ENTITY CNT45S。 ENTITY CNT45S IS PORT(SB,CLK,EN45:IN STD_LOGIC。 USE 。 END ARCHITECTURE ART。 END CASE。 WHEN OTHERS=DOUT25M=00000000。 WHEN11000=DOUT25M=00000001。 WHEN10111=DOUT25M=00000010。 WHEN10110=DOUT25M=00000011。 WHEN10101=DOUT25M=00000100。 WHEN10100=DOUT25M=00000101。 WHEN10011=DOUT25M=00000110。 WHEN10010=DOUT25M=00000111。 WHEN10001=DOUT25M=00001000。 WHEN10000=DOUT25M=00001001。 WHEN01111=DOUT25M=00010000。 WHEN01110=DOUT25M=00010001。 WHEN01101=DOUT25M=00010010。 WHEN01100=DOUT25M=00010011。 WHEN01011=DOUT25M=00010100。 WHEN01010=DOUT25M=00010101。 WHEN01001=DOUT25M=00010110。 WHEN01000=DOUT25M=00010111。 WHEN00111=DOUT25M=00011000。 WHEN00110=DOUT25M=00011001。 WHEN00101=DOUT25M=00100000。 WHEN00100=DOUT25M=00100001。 WHEN00011=DOUT25M=00100010。 WHEN00010=DOUT25M=00100011。 WHEN00001=DOUT25M=00100100。 PROCESS(CNT5B) IS BEGIN CASE CNT5B IS WHEN00000=DOUT25M=00100101。 END IF。 THEN CNT5B=CNT5BCNT5B1。 ELSIF EN25=39。139。139。 ELSIF(CLK39。039。039。 ARCHITECTURE ART OF CNT25S IS SIGNAL CNT5B:STD_LOGIC_VECTOR(4 DOWNTO 0)。 DOUT25M,DOUT25B:OUT STD_LOGIC_VECTOR(7 DOWNTO 0))。 USE 。 LIBRARY IEEE。 END PROCESS。 WHEN OTHERS=DOUT5=00000000。 WHEN011=DOUT5=00000010。 WHEN001=DOUT5=00000100。 END PROCESS。 END IF。039。 THEN CNT3B=CNT3B+1。 ELSIF EN05B=39。139。139。 BEGIN PROCESS(CLK,EN05M,EN05B) IS BEGIN IF(CLK39。 END ENTITY CNT05S。 ENTITY CNT05S IS PORT(CLK,EN05M,EN05B:IN STD_LOGIC。 USE 。 記錄實(shí)驗(yàn)過(guò)程中出現(xiàn)的問(wèn)題及解決辦法。 根據(jù)選用的軟件及 EDA實(shí)驗(yàn)開(kāi)發(fā)裝置編好用于硬件驗(yàn)證的管腳鎖定文件。 寫(xiě)各個(gè) VHDL 源程序。 主、支干道均有車時(shí),兩者交替道允許通,主干道每次放行 45S,支干 道每次放行 25S,在每次由亮綠燈變成亮紅燈的轉(zhuǎn)換過(guò)程中,要亮 5S 的黃燈作為過(guò)渡,并進(jìn)行減計(jì)時(shí)顯示。當(dāng)主干道允許通行亮綠燈時(shí),支干道亮紅燈。 設(shè)計(jì)任務(wù) 設(shè)計(jì)一個(gè)由一條主干道和一條支干道的匯合點(diǎn)形成的十字交叉路口的交通燈控制器,具體要求如下: 支干道各設(shè)有一個(gè)綠、紅、黃指示燈,兩個(gè)顯示數(shù)碼管。 實(shí)驗(yàn)?zāi)康? 熟悉 Quartus II 的使用。 END behav。 END PROCESS COM。 THEN REGL=D。EVENT AND LOCK=39。 END PROCESS REG。 THEN CURRENT_STATE=NEXT_STATE。EVENT AND CLK0=39。 END PROCESS PRO。 WHEN OTHERS = NEXT_STATE = S0。139。139。039。039。 WHEN S7 = =7。139。139。039。039。 WHEN S6 = =6。039。139。139。039。 WHEN S5 = =5。 ELSE NEXT_STATE = S4。139。039。039。039。039。 WHEN S4 = =4。 ELSE NEXT_STATE = S3。039。039。039。139。139。 WHEN S3 = =3。039。039。139。139。 WHEN S2 = =2。039。039。039。039。 WHEN S1 = =1。039。039。039。039。 PRO: PROCESS(CURRENT_STATE,EOC) BEGIN CASE CURRENT_STATE IS WHEN S0 = =0。 BEGIN ADDA=39。 SIGNAL REGL:STD_LOGIC_VECTOR(7 DOWNTO 0)。 ARCHITECTURE behav OF AD0809 IS TYPE ST_TYPE IS (S0, S1, S2, S3,S4,S5,S6,S7)。 : OUT INTEGER RANGE 15 DOWNTO 0)。 ALE,START : OUT STD_LOGIC。 CLK0,EOC : IN STD_LOGIC。 USE 。 ALE=‘ 0’, START=‘ 0’, OE=‘ 1’, LOCK=‘ 1’; 其它狀態(tài):返回到初始狀態(tài)。 ALE=‘ 0’, START=‘ 0’, OE=‘ 1’, LOCK=‘ 1’; S6 狀態(tài):延時(shí)狀態(tài)。 ALE=‘ 0’, START=‘ 0’, OE=‘ 1’, LOCK=‘ 0’; S5 狀態(tài):數(shù)據(jù)鎖存狀態(tài)。 S4 狀態(tài):數(shù)據(jù)輸出允許狀態(tài)。 ALE= START=‘ 0’, OE=LOCK=‘ 0’; IF EOC=‘ 0’ 保持當(dāng)前狀態(tài)不變,繼續(xù)等待 A/D 轉(zhuǎn)換。 ALE=‘ 1’ , START=OE=LOCK=‘ 0’; S2 狀態(tài):?jiǎn)?dòng) A/D 轉(zhuǎn)換。 ADDC=‘ 1’,選擇 1 通道模擬信號(hào)輸入。 三、實(shí)驗(yàn)步驟: ADC0809 特點(diǎn)介紹 ( 1)、單極性輸入, 8 位 A/D 轉(zhuǎn)換精度 。 將轉(zhuǎn)換結(jié)果送數(shù)碼管顯示器顯示( 2 位)。 掌握 A/D 采樣控制器的 VHDL 語(yǔ)言編程方法。 仿真結(jié)果: 實(shí)驗(yàn) 九 A/D 采樣控制器設(shè)計(jì) 一、實(shí)驗(yàn)?zāi)康募耙螅? 掌握 VHDL 語(yǔ)言的基本結(jié)構(gòu)及編程思想。 END PROCESS。 ELSE AB=1011。 END PROCESS。 END CASE。END IF。 WHEN 7 = IF DIN = D(0) THEN Q=8。ELSE Q=0。END IF。 WHEN 5 = IF DIN = D(2) THEN Q=6。ELSE Q=0。END IF。 WHEN 3 = IF DIN = D(4) THEN Q=4。ELSE Q=0。END IF。 WHEN 1 = IF DIN = D(6) THEN Q=2。ELSE Q=0。 AND clk39。 ELSIF clk=39。139。 BEGIN D=11100101。 ARCHITECTURE behv OF SCHK IS SIGNAL Q:INTEGER RANGE 0 TO 8。 AB : OUT STD_LOGIC_VECTOR(3 DOWNTO 0))。 USE 。 三、實(shí)驗(yàn)步驟: 編輯系列檢測(cè)器的 VHDL 程序; 仿真測(cè)試并給出仿真波形,了解控制信號(hào)的時(shí)序; 將上述方案改為系列檢測(cè)密碼為可預(yù)置(外部輸入)情況,重新編寫(xiě)程序、編譯和仿真,并記錄仿真結(jié)果。 END ARCHITECTURE ART。 U5:CNT10 PORT MAP(S4,CLR,ENA,DOUT(19 DOWNTO 16),S5)。 U3:CN