![第六章數(shù)字系統(tǒng)綜合設(shè)計(jì)實(shí)例_第1頁](http://file3.renrendoc.com/fileroot_temp3/2022-1/6/2d85c4ae-a3df-4416-93f9-fbac8c6a7028/2d85c4ae-a3df-4416-93f9-fbac8c6a70281.gif)
![第六章數(shù)字系統(tǒng)綜合設(shè)計(jì)實(shí)例_第2頁](http://file3.renrendoc.com/fileroot_temp3/2022-1/6/2d85c4ae-a3df-4416-93f9-fbac8c6a7028/2d85c4ae-a3df-4416-93f9-fbac8c6a70282.gif)
![第六章數(shù)字系統(tǒng)綜合設(shè)計(jì)實(shí)例_第3頁](http://file3.renrendoc.com/fileroot_temp3/2022-1/6/2d85c4ae-a3df-4416-93f9-fbac8c6a7028/2d85c4ae-a3df-4416-93f9-fbac8c6a70283.gif)
![第六章數(shù)字系統(tǒng)綜合設(shè)計(jì)實(shí)例_第4頁](http://file3.renrendoc.com/fileroot_temp3/2022-1/6/2d85c4ae-a3df-4416-93f9-fbac8c6a7028/2d85c4ae-a3df-4416-93f9-fbac8c6a70284.gif)
![第六章數(shù)字系統(tǒng)綜合設(shè)計(jì)實(shí)例_第5頁](http://file3.renrendoc.com/fileroot_temp3/2022-1/6/2d85c4ae-a3df-4416-93f9-fbac8c6a7028/2d85c4ae-a3df-4416-93f9-fbac8c6a70285.gif)
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、第六章第六章 數(shù)字系統(tǒng)綜合設(shè)計(jì)實(shí)例數(shù)字系統(tǒng)綜合設(shè)計(jì)實(shí)例交通燈控制器交通燈控制器任務(wù)二任務(wù)二 半整數(shù)分頻器的設(shè)計(jì)半整數(shù)分頻器的設(shè)計(jì)任務(wù)一任務(wù)一正負(fù)脈寬數(shù)控調(diào)制信號(hào)發(fā)生器的設(shè)計(jì)正負(fù)脈寬數(shù)控調(diào)制信號(hào)發(fā)生器的設(shè)計(jì)任務(wù)三任務(wù)三 數(shù)字秒表的設(shè)計(jì)數(shù)字秒表的設(shè)計(jì)任務(wù)四任務(wù)四任務(wù)一任務(wù)一 半整數(shù)分頻器的設(shè)計(jì)半整數(shù)分頻器的設(shè)計(jì)階段一階段一 小數(shù)分頻的基本原理小數(shù)分頻的基本原理 階段二階段二 電路組成電路組成 階段三階段三 VHDLVHDL程序程序 階段四階段四 仿真結(jié)果仿真結(jié)果階段一階段一小數(shù)分頻的基本原理小數(shù)分頻的基本原理采用可編程邏輯器件實(shí)現(xiàn)分頻系數(shù)為采用可編程邏輯器件實(shí)現(xiàn)分頻系數(shù)為2.52.5的的分頻器,可
2、采用以下方法:設(shè)計(jì)一個(gè)模分頻器,可采用以下方法:設(shè)計(jì)一個(gè)模3 3的的計(jì)數(shù)器,再設(shè)計(jì)一個(gè)扣除脈沖電路,加在模計(jì)數(shù)器,再設(shè)計(jì)一個(gè)扣除脈沖電路,加在模3 3計(jì)數(shù)器輸出之后,每來兩個(gè)脈沖就扣除一計(jì)數(shù)器輸出之后,每來兩個(gè)脈沖就扣除一個(gè)脈沖個(gè)脈沖( (實(shí)際上是使被扣除的脈沖變成很窄實(shí)際上是使被扣除的脈沖變成很窄的脈沖,可由異或門實(shí)現(xiàn)的脈沖,可由異或門實(shí)現(xiàn)) ),就可以得到分,就可以得到分頻系數(shù)為頻系數(shù)為2.52.5的小數(shù)分頻器。采用類似方法,的小數(shù)分頻器。采用類似方法,可以設(shè)計(jì)分頻系數(shù)為任意半整數(shù)的分頻器??梢栽O(shè)計(jì)分頻系數(shù)為任意半整數(shù)的分頻器。小數(shù)分頻的基本原理為脈沖吞小數(shù)分頻的基本原理為脈沖吞吐計(jì)數(shù)法:
3、設(shè)計(jì)兩個(gè)不同分頻吐計(jì)數(shù)法:設(shè)計(jì)兩個(gè)不同分頻比的整數(shù)分頻器,通過控制單比的整數(shù)分頻器,通過控制單位時(shí)間內(nèi)兩種分頻比出現(xiàn)的不位時(shí)間內(nèi)兩種分頻比出現(xiàn)的不同次數(shù),從而獲得所需的小數(shù)同次數(shù),從而獲得所需的小數(shù)分頻值分頻值。 階段二階段二電路組成電路組成 圖6-1 通用半整數(shù)分頻器階段三階段三 VHDLVHDL程序程序 LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL; ENTITY deccount IS PORT ( inclk: IN STD_LOGIC;-時(shí)鐘源 preset: IN STD_LOGIC
4、_VECTOR(3 DOWNTO 0); -預(yù)置分頻值Noutclk1: OUT STD_LOGIC; outclk2: BUFFER STD_LOGIC-輸出時(shí)鐘 );END deccount; ARCHITECTURE deccount_arch OF deccount ISSIGNAL clk, divide2: STD_LOGIC;SIGNAL count: STD_LOGIC_VECTOR(3 DOWNTO 0);BEGINclk=inclk XOR divide2; -inclk與divide2異或后作為模N計(jì)數(shù)器的時(shí)鐘outclk1=inclk;PROCESS(clk)BEGIN
5、 IF(clkevent AND clk=1) THEN IF(count=0000) THENcount=preset-1;-置整數(shù)分頻值N outclk2=1; ELSE count=count-1;-模N計(jì)數(shù)器減法計(jì)數(shù) outclk2=0; END IF; END IF;END PROCESS; PROCESS(outclk2)BEGIN IF(outclk2event AND outclk2=1) THEN divide2=NOT divide2;-輸出時(shí)鐘二分頻 END IF;END PROCESS;END deccount_arch;階段四階段四 仿真結(jié)果仿真結(jié)果圖6-3 半整數(shù)分
6、頻器仿真波形圖任務(wù)二任務(wù)二 交通燈控制器交通燈控制器階段一階段一 功能描述功能描述階段二階段二 交通燈控制器的實(shí)現(xiàn)交通燈控制器的實(shí)現(xiàn)階段三階段三 VHDLVHDL程序程序 階段四階段四 仿真結(jié)果仿真結(jié)果 階段一階段一 功能描述功能描述設(shè)東西方向和南北方向的車流量大致相同,設(shè)東西方向和南北方向的車流量大致相同,因此紅、黃、綠燈的時(shí)長也相同,定為紅因此紅、黃、綠燈的時(shí)長也相同,定為紅燈燈45秒,黃燈秒,黃燈5秒,綠燈秒,綠燈40秒,同時(shí)用數(shù)秒,同時(shí)用數(shù)碼管指示當(dāng)前狀態(tài)碼管指示當(dāng)前狀態(tài)(紅、黃、綠燈紅、黃、綠燈)剩余時(shí)剩余時(shí)間。另外,設(shè)計(jì)一個(gè)緊急狀態(tài),當(dāng)緊急狀間。另外,設(shè)計(jì)一個(gè)緊急狀態(tài),當(dāng)緊急狀態(tài)出
7、現(xiàn)時(shí),兩個(gè)方向都禁止通行,指示紅態(tài)出現(xiàn)時(shí),兩個(gè)方向都禁止通行,指示紅燈。緊急狀態(tài)解除后,重新計(jì)數(shù)并指示時(shí)燈。緊急狀態(tài)解除后,重新計(jì)數(shù)并指示時(shí)間。間。 階段二階段二交通燈控制器的實(shí)現(xiàn)交通燈控制器的實(shí)現(xiàn) 交通燈控制器是狀態(tài)機(jī)的一個(gè)典型應(yīng)用,交通燈控制器是狀態(tài)機(jī)的一個(gè)典型應(yīng)用,除了計(jì)數(shù)器是狀態(tài)機(jī)外,還有東西、南北除了計(jì)數(shù)器是狀態(tài)機(jī)外,還有東西、南北方向的不同狀態(tài)組合方向的不同狀態(tài)組合(紅綠、紅黃、綠紅、紅綠、紅黃、綠紅、黃紅黃紅4個(gè)狀態(tài)個(gè)狀態(tài)),如表,如表6-1所示。但我們可以所示。但我們可以簡單地將其看成兩個(gè)簡單地將其看成兩個(gè)(東西、南北東西、南北)減減1計(jì)數(shù)計(jì)數(shù)的計(jì)數(shù)器,通過檢測(cè)兩個(gè)方向的計(jì)數(shù)值
8、,的計(jì)數(shù)器,通過檢測(cè)兩個(gè)方向的計(jì)數(shù)值,可以檢測(cè)紅、黃、綠燈組合的跳變。這樣可以檢測(cè)紅、黃、綠燈組合的跳變。這樣使一個(gè)較復(fù)雜的狀態(tài)機(jī)設(shè)計(jì)變成一個(gè)較簡使一個(gè)較復(fù)雜的狀態(tài)機(jī)設(shè)計(jì)變成一個(gè)較簡單的計(jì)數(shù)器設(shè)計(jì)。單的計(jì)數(shù)器設(shè)計(jì)。 表表6-1 交通燈的交通燈的4種可能亮燈狀態(tài)種可能亮燈狀態(tài)圖圖6-4 交通燈控制器外部接口交通燈控制器外部接口 階段三階段三 VHDLVHDL程序程序 LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL; ENTITY deccount IS PORT ( inclk: IN STD_LO
9、GIC;-時(shí)鐘源 preset: IN STD_LOGIC_VECTOR(3 DOWNTO 0); -預(yù)置分頻值Noutclk1: OUT STD_LOGIC; outclk2: BUFFER STD_LOGIC-輸出時(shí)鐘 );END deccount; ARCHITECTURE deccount_arch OF deccount ISSIGNAL clk, divide2: STD_LOGIC;SIGNAL count: STD_LOGIC_VECTOR(3 DOWNTO 0);BEGINclk=inclk XOR divide2; 表表6-2 交通燈設(shè)計(jì)中的狀態(tài)跳變點(diǎn)交通燈設(shè)計(jì)中的狀態(tài)跳變
10、點(diǎn)階段三階段三 VHDLVHDL程序程序 LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL; ENTITY traffic ISPORT(clk,urgency: IN STD_LOGIC; led: BUFFER STD_LOGIC_VECTOR(7 DOWNTO 0); East_West,South_North:BUFFER STD_LOGIC_VECTOR(7 DOWNTO 0);END traffic;ARCHITECTURE rtl OF traffic ISBEGIN PROCESS(
11、clk) BEGIN IF urgency=0 THEN led=10000001; East_West=00000000; South_North01000110 OR South_North01000110 THEN East_West=01000101; South_North=01000000; led=10000100; ELSIFEast_West=00000110AND South_North=00000001 THEN East_West=00000101; South_North=00000101; led=10000010;ELSIFEast_West=00000001AN
12、D South_North=00000001 AND led=10000010 THEN East_West=01000000; South_North=01000101; led=00100001; ELSIFEast_West=00000001AND South_North=00000110 THEN East_West=00000101; South_North=00000101; led=01000001;ELSIFEast_West=00000001AND South_North=00000001 AND led=01000001 THEN East_West=01000101; S
13、outh_North=01000000; led=10000100; ELSIF East_West(3 DOWNTO 0)=0 THEN East_West=East_West-7; South_North=South_North-1;ELSIF South_North(3 DOWNTO 0)=0 THEN East_West=East_West-1; South_North=South_North-7; ELSE East_West=East_West-1; South_North=South_North-1; END IF; END IF; END PROCESS;END rtl;階段四
14、階段四 仿真結(jié)果仿真結(jié)果 圖圖6-5 交通燈控制器仿真波形圖交通燈控制器仿真波形圖任務(wù)三正負(fù)脈寬數(shù)控調(diào)制信號(hào)發(fā)生器任務(wù)三正負(fù)脈寬數(shù)控調(diào)制信號(hào)發(fā)生器的設(shè)計(jì)的設(shè)計(jì) 階段一階段一 設(shè)計(jì)思路設(shè)計(jì)思路階段二階段二 VHDLVHDL程序程序 階段一階段一 設(shè)計(jì)思路設(shè)計(jì)思路圖圖6-6是脈寬數(shù)控調(diào)制信號(hào)發(fā)生器邏輯圖,是脈寬數(shù)控調(diào)制信號(hào)發(fā)生器邏輯圖,此信號(hào)發(fā)生器是由兩個(gè)完全相同的可自加此信號(hào)發(fā)生器是由兩個(gè)完全相同的可自加載加法計(jì)數(shù)器載加法計(jì)數(shù)器LCNT8組成的,它的輸出信組成的,它的輸出信號(hào)的高低電平脈寬可分別由兩組號(hào)的高低電平脈寬可分別由兩組8位預(yù)置數(shù)位預(yù)置數(shù)進(jìn)行控制。進(jìn)行控制。圖圖6-6 脈寬數(shù)控調(diào)制信號(hào)發(fā)
15、生器邏輯圖脈寬數(shù)控調(diào)制信號(hào)發(fā)生器邏輯圖階段二階段二 VHDLVHDL程序程序 (1)8位可自加載加法計(jì)數(shù)器的源程序LCNT8.VHDLIBRARY IEEE;USE IEEE.STD_LOGIC_1164,.ALL;ENTITY LCNT8 IS -8位可自加載加法計(jì)數(shù)器PORT(CLK,LD:IN STD_LOGIC; -工作時(shí)鐘/預(yù)置值加載信號(hào) D:IN INTEGER RANGE 0 TO 255;-8位分頻預(yù)置數(shù) CAO:OUT STD_LOGIC); -計(jì)數(shù)溢出輸出END ENTITY LCNT8;ARCHITECTURE ART OF LCNT8 IS SIGNAL COUNT:I
16、NTEGER RANGE 0 TO 255; -8位計(jì)數(shù)器設(shè)置BEGINPROCESS ( CLK ) ISBEGINIF CLKEVENT AND CLK= 1 THEN IF LD= 1 THEN COUNT=D; -LD為高電平時(shí)加載預(yù)置數(shù)ELSE COUNT=COUNT+1; -否則繼續(xù)計(jì)數(shù) END IF; END IF;END PROCESS;PROCESS (CLK, COUNT) ISBEGIN IF CLKEVENT AND CLK=1 THEN IF COUNT=255 THEN CAO= 1;ELSE CAOCLK,LD=LD1,D=A,CAO=CAO1);U2:LCNT8
17、 PORT MAP(CLK=CLK,LD=LD2,D=B,CAO=CAO2);PROCESS(CAO1,CAO2) ISBEGINIF CAO1= 1 THEN PSINT= 0;ELSIF CAO2 EVENT AND CAO2= 1 THEN PSINT=1;END IF;END PROCESS;LD1=NOT PSINT;LD2=PSINT;PSOUT=PSINT;END ARCHITECTURE ART; 任務(wù)四任務(wù)四 數(shù)字秒表的設(shè)計(jì)數(shù)字秒表的設(shè)計(jì) 階段一階段一 設(shè)計(jì)思路設(shè)計(jì)思路階段二階段二 VHDLVHDL程序程序 階段一階段一 設(shè)計(jì)思路設(shè)計(jì)思路今需設(shè)計(jì)一個(gè)計(jì)時(shí)范圍為今需設(shè)計(jì)一個(gè)計(jì)時(shí)
18、范圍為0.01秒秒1小時(shí)的小時(shí)的數(shù)字秒表,首先需要獲得一個(gè)比較精確的數(shù)字秒表,首先需要獲得一個(gè)比較精確的計(jì)時(shí)基準(zhǔn)信號(hào),這里是周期為計(jì)時(shí)基準(zhǔn)信號(hào),這里是周期為1/100 s的計(jì)的計(jì)時(shí)脈沖。其次,除了對(duì)每一計(jì)數(shù)器需設(shè)置時(shí)脈沖。其次,除了對(duì)每一計(jì)數(shù)器需設(shè)置清零信號(hào)輸入外,還需在六個(gè)計(jì)數(shù)器設(shè)置清零信號(hào)輸入外,還需在六個(gè)計(jì)數(shù)器設(shè)置時(shí)鐘使能信號(hào),即計(jì)時(shí)允許信號(hào),以便作時(shí)鐘使能信號(hào),即計(jì)時(shí)允許信號(hào),以便作為秒表的計(jì)時(shí)起、??刂崎_關(guān)為秒表的計(jì)時(shí)起、停控制開關(guān) 。因此數(shù)字秒表可由一個(gè)分頻器、四個(gè)十進(jìn)因此數(shù)字秒表可由一個(gè)分頻器、四個(gè)十進(jìn)制計(jì)數(shù)器制計(jì)數(shù)器(1/100秒、秒、1/10秒、秒、1秒、秒、1分分)以以及兩
19、個(gè)六進(jìn)制計(jì)數(shù)器及兩個(gè)六進(jìn)制計(jì)數(shù)器(10秒、秒、10分分)組成,組成,如圖如圖6-7所示。所示。圖圖6-7 數(shù)字秒表電路邏輯圖數(shù)字秒表電路邏輯圖階段二階段二 VHDLVHDL程序程序 1) 3 MHz100 Hz分頻器的源程序CLKGEN.VHDLIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;ENTITY CLKGEN IS PORT (CLK:IN STD_LOGIC; -3 MHz信號(hào)輸入 NEWCLK:OUT STD_LOGIC); -100 Hz計(jì)時(shí)時(shí)鐘信號(hào)輸出END ENTITY CLKGEN;ARCHITECTURE ART OF CLKGEN IS
20、 SIGNAL CNTER:INTEGER RANGE 0 TO 10#29999#; -十進(jìn)制計(jì)數(shù)預(yù)制數(shù)BEGINPROCESS(CLK) IS -分頻計(jì)數(shù)器,由3 MHz時(shí)鐘產(chǎn)生100 Hz信號(hào)BEGIN IS IF CLKEVENT AND CLK=1 THEN IF CNTER=10#29999# THEN CNTER=0;-3 MHz信號(hào)變?yōu)?00 Hz,計(jì)數(shù)常數(shù)為30 000ELSE CNTER=CNTER+1; END IF; END IF;END PROCESS;PROCESS(CNTER) IS -計(jì)數(shù)溢出信號(hào)控制BEGIN IF CNTER=10#29999# THEN N
21、EWCLK=1; ELSE NEWCLK=0; END IF;END PROCESS;END ARCHITECTURE ART; 2) 六進(jìn)制計(jì)數(shù)器的源程序CNT6.VHD(十進(jìn)制計(jì)數(shù)器的源程序CNT10.VHD與此類似)LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL;ENTITY CNT6 ISPORT (CLK:IN STD_LOGIC; CLR:IN STD_LOGIC; ENA: IN STD_LOGIC; CQ:OUT STD_LOGIC_VECTOR(3 DOWNTO 0); CARRY_OUT: OUT STD_LOGIC ); END ENTITY C
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(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è)管理委托合同
- 家庭室內(nèi)外裝修合同書
- 多模式跨境電子商務(wù)解決方案策劃與設(shè)計(jì)全案指南
- 研發(fā)項(xiàng)目管理作業(yè)指導(dǎo)書
- 生物技術(shù)與實(shí)驗(yàn)室技能作業(yè)指導(dǎo)書
- 電線電纜購銷合同
- 2025年天津年貨運(yùn)從業(yè)資格證考試從業(yè)從業(yè)資格資格題庫及答案
- 2025年烏魯木齊貨運(yùn)從業(yè)資格考試題目大全
- 小學(xué)青島版一年級(jí)數(shù)學(xué)上冊(cè)口算練習(xí)題總匯
- 《配電網(wǎng)設(shè)施可靠性評(píng)價(jià)指標(biāo)導(dǎo)則》
- 2024年國家電網(wǎng)招聘之通信類題庫附參考答案(考試直接用)
- ## 外事領(lǐng)域意識(shí)形態(tài)工作預(yù)案
- CJJ 169-2012城鎮(zhèn)道路路面設(shè)計(jì)規(guī)范
- 第八單元金屬和金屬材料單元復(fù)習(xí)題-2023-2024學(xué)年九年級(jí)化學(xué)人教版下冊(cè)
- 鋼鐵是怎樣煉成的保爾成長史
- 精神科護(hù)理技能5.3出走行為的防范與護(hù)理
- 煤礦機(jī)電運(yùn)輸培訓(xùn)課件
- 采購管理學(xué)教學(xué)課件
- 《供應(yīng)商質(zhì)量會(huì)議》課件
- 江蘇省科技企業(yè)孵化器孵化能力評(píng)價(jià)研究的中期報(bào)告
評(píng)論
0/150
提交評(píng)論