EDA技術(shù)與應(yīng)用課程—交通燈控制器的設(shè)計_第1頁
EDA技術(shù)與應(yīng)用課程—交通燈控制器的設(shè)計_第2頁
EDA技術(shù)與應(yīng)用課程—交通燈控制器的設(shè)計_第3頁
EDA技術(shù)與應(yīng)用課程—交通燈控制器的設(shè)計_第4頁
EDA技術(shù)與應(yīng)用課程—交通燈控制器的設(shè)計_第5頁
已閱讀5頁,還剩15頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

1、本科課程設(shè)計報告本科課程設(shè)計報告課程名稱:CPLD/FPGA 應(yīng)用設(shè)計 課程設(shè)計題目 交通燈控制器 實驗地點: 中區(qū)采礦樓二層 專業(yè)班級: 電信 學(xué)號: 學(xué)生姓名: 2014 年 6 月 17 日目錄目錄第一章第一章 緒論緒論.11.1 EDA 技術(shù)的概述.11.1.1 EDA 技術(shù)發(fā)展歷史 .11.1.2 EDA 技術(shù)的基本特征 .11.2 VHDL 硬件描述語言.2VHDL 設(shè)計的特點.2第二章第二章 系統(tǒng)設(shè)計要求與內(nèi)容系統(tǒng)設(shè)計要求與內(nèi)容.42.1 課程設(shè)計交通燈控制系統(tǒng)要求.42.2 設(shè)計思路.42.2.1 交通燈控制器原理框圖.42.2.2 控制情況表.52.2.3 設(shè)計電路原理圖.6

2、第三章第三章 系統(tǒng)設(shè)計方案系統(tǒng)設(shè)計方案.73.1 設(shè)計模塊與程序.73.1.1 交通燈控制器 JTDKZ 設(shè)計模塊與程序 .73.1.2 顯示控制單元 CSKZ 設(shè)計模塊與程序 .93.1.3 倒計時 45sCNT45s 設(shè)計模塊與程序.103.1.4 倒計時 25sCNT25s 設(shè)計模塊與程序.123.1.5 倒計時 5sCNT05s 的設(shè)計模塊與程序.133.2 管腳定義.153.3 時序仿真結(jié)果.153.4 實驗調(diào)試結(jié)果.16第四章第四章 心得體會心得體會.17參考文獻(xiàn)參考文獻(xiàn).18 第 1 頁 共 18 頁第一章第一章 緒論緒論1.11.1 EDAEDA 技術(shù)的概述技術(shù)的概述EDA 是

3、在電子電路 CAD(ComputerAidedDesign,計算機(jī)輔助設(shè)計)的基礎(chǔ)上發(fā)展起來的計算機(jī)軟件系統(tǒng)。EDA 技術(shù)就是依賴功能強(qiáng)大的計算機(jī),在EDA 工具軟件平臺上,對以硬件描述語言 HDL(HardwareDescriptionLanguage)為系統(tǒng)邏輯描述手段完成的設(shè)計文件,自動地完成邏輯編譯、邏輯化簡、邏輯分割、邏輯綜合、結(jié)構(gòu)綜合(布局布線),以及邏輯優(yōu)化和仿真測試,直至實現(xiàn)既定的電子線路系統(tǒng)功能。EDA 技術(shù)使得設(shè)計者的工作僅限于利用軟件的方式,即利用硬件描述語言和 EDA 軟件來完成對系統(tǒng)硬件功能的實現(xiàn),這是電子設(shè)計技術(shù)的一個巨大進(jìn)步。1.1.1 EDA 技術(shù)發(fā)展歷史技術(shù)發(fā)

4、展歷史20 世紀(jì) 70 年代為計算機(jī)輔助設(shè)計(CAD,ComputerAidedDesign)階段。人們開始用計算機(jī)輔助進(jìn)行 IC 版圖編輯、PCB 布局布線,取代了手工操作。20 世紀(jì) 80 年代為計算機(jī)輔助工程 CAE,ComputerAidedEn 出 neering)階段。與 CAD 相比,CAE 除了有純粹的圖形繪制功能外,又增加了電路功能設(shè)計和結(jié)構(gòu)設(shè)計,并且通過電氣連接網(wǎng)絡(luò)表將兩者結(jié)合在一起,實現(xiàn)了工程設(shè)計。CAE 的主要功能是:原理圖輸入、邏輯仿真、電路分析、自動布局布線、PCB后分析。20 世紀(jì) 90 年代為電子設(shè)計自動化(EDA)階段。1.1.2 EDA 技術(shù)的基本特征技術(shù)的

5、基本特征EDA 代表了當(dāng)今電子設(shè)計技術(shù)的最新發(fā)展方向。它的基本特征是:設(shè)計人員按照“自頂向下”的設(shè)計方法,對整個系統(tǒng)進(jìn)行方案設(shè)計和功能劃分。系統(tǒng)的關(guān)鍵電路用一片或幾片專用集成電路(ASIC,ApplicationSpecificIntegratedCircnit)實現(xiàn),然后采用硬件描述語言(HDlHardwareDescriptionLanguage)完成系統(tǒng)行為級 第 2 頁 共 18 頁設(shè)計,最后通過綜合器和適配器生成最終的目標(biāo)器件,這樣的設(shè)計方法被稱為高層次的電子設(shè)計方法。 1.2 VHDL 硬件描述語言硬件描述語言 美國國防部在 1981 年提出了一種新的 HDL,稱為 VHSICHa

6、rdwareDescriptionLanguage,簡稱為 VHDL。VHDL 是超高速集成電路硬件描述語言(VeryHigh-SpeedIntegratedCircuitHardwareDescriptionLanguage)的縮寫。VHDL符合美國電氣和電子工程師協(xié)會標(biāo)準(zhǔn)(IEEE1076 標(biāo)準(zhǔn)),它可以用一種形式化的方法來描述數(shù)字電路和設(shè)計數(shù)字邏輯系統(tǒng)。利用 VHDL 進(jìn)行自頂向下的電路設(shè)計,并結(jié)合一些先進(jìn)的 EDA 工具軟件(例如 MAXPLUSII、EWB 和 Protel 等),可以極大地縮短產(chǎn)品的設(shè)計周期,加快產(chǎn)品進(jìn)入市場的步伐,在當(dāng)前高速發(fā)展的信息時代,可以更好地把握商機(jī)。14

7、1VHDL 編程思想 VHDL 必須適應(yīng)實際電路系統(tǒng)的工作方式,以并行和順序的多種語句方式來描述在同一時刻中所有可能發(fā)生的事件??梢哉J(rèn)為,VHDL 具有描述由相關(guān)和不相關(guān)的多維時空組合的復(fù)合體系統(tǒng)的功能。因此,要求系統(tǒng)設(shè)計人員擺脫一維的思維模式,以多維并發(fā)的思路來完成 VHDL 的程序設(shè)計。一個成功的 VHDL 工程設(shè)計,對其評判的標(biāo)準(zhǔn)包括:是否能完成功能要求、滿足速度要求,并考慮其可靠性以及資源的占用情況。在具體的工程設(shè)計中,必須清楚軟件程序和硬件構(gòu)成之間的聯(lián)系,在考慮語句能夠?qū)崿F(xiàn)的功能的同時,要考慮實現(xiàn)這些功能可能付出的硬件代價。在編程過程中,某個不恰當(dāng)?shù)恼Z句、算法或可省去的操作都可能帶來

8、硬件資源的浪費(fèi)。因此,在保證完成功能的情況下,應(yīng)該盡量合理且有效地利用VHDL 語言所提供的各種有利的語法條件,盡量地優(yōu)化算法,從而節(jié)約硬件資源。VHDL 設(shè)計的特點設(shè)計的特點用 VHDL 代碼而不是原理圖進(jìn)行設(shè)計,意味著整個電路板的模型及其性能可用計算機(jī)模擬進(jìn)行驗證。 第 3 頁 共 18 頁VHDL 元件的設(shè)計與工藝無關(guān),與工藝獨(dú)立,方便工藝轉(zhuǎn)換。設(shè)計出來的元件放在庫中,想用時可以隨時調(diào)用。在傳統(tǒng)的原理圖設(shè)計中,設(shè)計者在設(shè)計時必須手工檢查與工藝有關(guān)的因素,如時序、面積、驅(qū)動強(qiáng)度、元件選擇和扇出。有了 VHDL 后,無需考慮電路的功能、需求說明中的需求、電路的驅(qū)動能力和延時等與工藝有關(guān)的因素

9、,使設(shè)計者可計算機(jī)系統(tǒng)設(shè)計注重其功能,即需求的實現(xiàn),而不必對不影響功能但與工藝有關(guān)的因素花費(fèi)過多的精力去排除。VHDL 支持各種設(shè)計方法,自頂向下、自底向上或混合的都可以。VHDL 還支持高層次設(shè)計,使設(shè)計生命周期延長??蛇M(jìn)行從系統(tǒng)級到邏輯級即最抽象的到最精確的跨越多層次的描述,即混合描述。VHDL 區(qū)別于其他的 HDL,已形成標(biāo)準(zhǔn),其代碼在不同的 EDA 系統(tǒng)中可交換建模。 第 4 頁 共 18 頁第二章第二章 系統(tǒng)設(shè)計系統(tǒng)設(shè)計要求要求與內(nèi)容與內(nèi)容2.1 課程課程設(shè)計交通燈控制系統(tǒng)要求設(shè)計交通燈控制系統(tǒng)要求設(shè)計一個由一條主干道和一條支干道的匯合點形成的十字交叉路口的交通燈控制器,具體求如下:

10、1、主、支干道各設(shè)一個綠、黃、紅指示燈用于指示狀態(tài),兩位顯示數(shù)碼管用于顯示倒計時時間。2、當(dāng)主、支道均有車時,兩者交替允許通行,主干道每次放行 45s,支干道次每放行 25s,在每次由綠燈轉(zhuǎn)換為紅燈時,要有 5s 的黃燈作為過渡。應(yīng)有倒計時顯示。3、特殊功能,智能交通燈控制:若支干道無車時,主干道處于常允許通行狀態(tài)。2.2 設(shè)計思路設(shè)計思路2.2.1 交通燈控制器原理框圖交通燈控制器原理框圖交通燈控制器原理框圖如下圖所示,包括置數(shù)模塊、計數(shù)模塊、主控制器模塊和譯碼器模塊。置數(shù)模塊將交通燈的點亮?xí)r間預(yù)置到置數(shù)電路中,計數(shù)模塊以秒為單位倒計時,當(dāng)計數(shù)值減為零時,主控電路改變輸出狀態(tài),電路進(jìn)入下一個

11、狀態(tài)的倒計時。其中,核心部分是主控制模塊。主控制器清零紅 綠 黃特殊狀態(tài)紅 綠 黃定時計數(shù)器置數(shù)器譯碼器顯示器 第 5 頁 共 18 頁2.2.2 控制情況表控制情況表狀態(tài)主干道主干道倒時支干道主干道倒計時1綠燈亮45紅燈亮2黃燈亮5紅燈亮503紅燈亮綠燈亮254紅燈亮30黃燈亮5 第 6 頁 共 18 頁2.2.3 設(shè)計電路原理圖設(shè)計電路原理圖 第 7 頁 共 18 頁第三章第三章 系統(tǒng)設(shè)計方案系統(tǒng)設(shè)計方案3.1 設(shè)計設(shè)計模塊與程序模塊與程序3.1.1 交通燈控制器交通燈控制器 JTDKZ 設(shè)計模塊與程序設(shè)計模塊與程序交通燈控制器 JTDKZ 原理圖模塊LIBRARY IEEE;USE IE

12、EE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL;ENTITY JTDKZ ISPORT(CLK,SM,SB: IN STD_LOGIC;MR,MY,MG,BR,BY,BG: OUT STD_LOGIC);END JTDKZ;ARCHITECTURE ART OF JTDKZ ISTYPE STATE_TYPE IS(A,B,C,D);SIGNAL STATE:STATE_TYPE;BEGINCNT:PROCESS(CLK) ISVARIABLE S:INTEGER RANGE 0 TO 45;VARIABLE CLR,EN:BIT;B

13、EGINIF(CLKEVENT AND CLK=1)THEN IF CLR=0THEN S:=0; ELSIF EN=0 THEN S:=S;ELSES:=S+1; 第 8 頁 共 18 頁END IF;CASE STATE ISWHEN A=MR=0;MY=0;MG=1; BR=1;BY=0;BG=0; IF(SB AND SM)=1THENIF S=45 THENSTATE=B;CLR:=0;EN:=0;ELSE STATE=A;CLR:=1;EN:=1; END IF;ELSIF(SB AND (NOT SM)=1THENSTATE=B;CLR:=0;EN:=0;ELSE STATEMR

14、=0;MY=1;MG=0; BR=1;BY=0;BG=0;IF S=5 THENSTATE=C;CLR:=0;EN:=0;ELSESTATEMR=1;MY=0;MG=0; BR=0;BY=0;BG=1;IF(SM AND SB)=1THENIF S=25 THENSTATE=D;CLR:=0;EN:=0;ELSESTATE=C;CLR:=1;EN:=1;END IF;ELSIF SB=0 THENSTATE=D;CLR:=0;EN:=0;ELSESTATEMR=1;MY=0;MG=0; BR=0;BY=1;BG=0;IF S=5 THENSTATE=A;CLR:=0;EN:=0;ELSESTA

15、TE=D;CLR:=1;EN:=1;END IF; 第 9 頁 共 18 頁END CASE;END IF;END PROCESS CNT;END ARCHITECTURE ART;3.1.2 顯示控制單元顯示控制單元 CSKZ 設(shè)計模塊與程序設(shè)計模塊與程序顯示控制單元 CSKZ 原理圖模塊源程序:LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL;ENTITY CSKZ IS PORT(EN45,EN25,EN05M,EN05B:IN STD_LOGIC;AIN45M,AIN45B:IN STD_L

16、OGIC_VECTOR(7 DOWNTO 0);AIN25M,AIN25B,AIN05:IN STD_LOGIC_VECTOR(7 DOWNTO 0); DOUTM,DOUTB:OUT STD_LOGIC_VECTOR(7 DOWNTO 0);END ENTITY CSKZ;ARCHITECTURE ART OF CSKZ ISBEGINPROCESS(EN45,EN25,EN05M,EN05B) ISBEGINIF EN45=1 THENDOUTM=AIN45M(7 DOWNTO 0);DOUTB=AIN45B(7 DOWNTO 0); ELSIF EN05M =1THENDOUTM=AIN

17、05(7 DOWNTO 0);DOUTB=AIN05(7 DOWNTO 0);ELSIF EN25=1 THENDOUTM=AIN25M(7 DOWNTO 0);DOUTB=AIN25B(7 DOWNTO 0); 第 10 頁 共 18 頁ELSIF EN05B=1 THENDOUTM=AIN05(7 DOWNTO 0);DOUTB=AIN05(7 DOWNTO 0);END IF ;END PROCESS;END ARCHITECTURE ART;3.1.3 倒計時倒計時 45sCNT45s 設(shè)計模塊與程序設(shè)計模塊與程序倒計時 45sCNT45s 的原理圖模塊:LIBRARY IEEE;US

18、E IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL;ENTITY CNT45S ISPORT(SB,CLK,EN45:IN STD_LOGIC; DOUT45M,DOUT45B:OUT STD_LOGIC_VECTOR(7 DOWNTO 0);END CNT45S;ARCHITECTURE ART OF CNT45S IS SIGNAL CNT6B:STD_LOGIC_VECTOR(5 DOWNTO 0); BEGIN PROCESS(SB,CLK,EN45) IS BEGIN IF SB=0 THEN CNT6B=CNT6B-C

19、NT6B-1; ELSIF(CLKEVENT AND CLK=1)THEN IF EN45=1THEN CNT6B=CNT6B+1; ELSIF EN45=0THEN CNT6BDOUT45M=01000101;DOUT45BDOUT45M=01000100;DOUT45BDOUT45M=01000011;DOUT45BDOUT45M=01000010;DOUT45BDOUT45M=01000001;DOUT45BDOUT45M=01000000;DOUT45BDOUT45M=00111001;DOUT45BDOUT45M=00111000;DOUT45BDOUT45M=00110111;DO

20、UT45BDOUT45M=00110110;DOUT45BDOUT45M=00110101;DOUT45BDOUT45M=00110100;DOUT45BDOUT45M=00110011;DOUT45BDOUT45M=00110010;DOUT45BDOUT45M=00110001;DOUT45BDOUT45M=00110000;DOUT45BDOUT45M=00101001;DOUT45BDOUT45M=00101000;DOUT45BDOUT45M=00100111;DOUT45BDOUT45M=00100110;DOUT45BDOUT45M=00100101;DOUT45BDOUT45M

21、=00100100;DOUT45BDOUT45M=00100011;DOUT45BDOUT45M=00100010;DOUT45BDOUT45M=00100001;DOUT45BDOUT45M=00100000;DOUT45BDOUT45M=00011001;DOUT45BDOUT45M=00011000;DOUT45BDOUT45M=00010111;DOUT45BDOUT45M=00010110;DOUT45BDOUT45M=00010101;DOUT45BDOUT45M=00010100;DOUT45BDOUT45M=00010011;DOUT45BDOUT45M=00010010;DO

22、UT45BDOUT45M=00010001;DOUT45BDOUT45M=00010000;DOUT45BDOUT45M=00001001;DOUT45BDOUT45M=00001000;DOUT45BDOUT45M=00000111;DOUT45BDOUT45M=00000110;DOUT45BDOUT45M=00000101;DOUT45BDOUT45M=00000100;DOUT45BDOUT45M=00000011;DOUT45BDOUT45M=00000010;DOUT45BDOUT45M=00000001;DOUT45BDOUT45M=01000110;DOUT45B=010100

23、01;END CASE; 第 12 頁 共 18 頁END PROCESS;END ARCHITECTURE ART;3.1.4 倒計時倒計時 25sCNT25s 設(shè)計模塊與程序設(shè)計模塊與程序倒計時 25sCNT25s 的原理圖模塊:源程序:LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL;ENTITY CNT25S IS PORT(SB,SM,CLK,EN25:IN STD_LOGIC; DOUT25M,DOUT25B:OUT STD_LOGIC_VECTOR(7 DOWNTO 0);END EN

24、TITY CNT25S;ARCHITECTURE ART OF CNT25S IS SIGNAL CNT5B:STD_LOGIC_VECTOR(4 DOWNTO 0); BEGINPROCESS(SB,SM,CLK,EN25)ISBEGIN IF SB=0 OR SM=0THEN CNT5B=CNT5B-CNT5B-1; ELSIF SM=0THEN CNT5B=CNT5B-CNT5B-1; ELSIF(CLKEVENT AND CLK=1)THEN IF EN25=1THEN CNT5B=CNT5B+1; ELSIF EN25=0THEN CNT5BDOUT25B=00100101;DOUT

25、25MDOUT25B=00100100;DOUT25MDOUT25B=00100011;DOUT25MDOUT25B=00100010;DOUT25MDOUT25B=00100001;DOUT25MDOUT25B=00100000;DOUT25MDOUT25B=00011001;DOUT25MDOUT25B=00011000;DOUT25MDOUT25B=00010111;DOUT25MDOUT25B=00010110;DOUT25MDOUT25B=00010101;DOUT25MDOUT25B=00010100;DOUT25MDOUT25B=00010011;DOUT25MDOUT25B=0

26、0010010;DOUT25MDOUT25B=00010001;DOUT25MDOUT25B=00010000;DOUT25MDOUT25B=00001001;DOUT25MDOUT25B=00001000;DOUT25MDOUT25B=00000111;DOUT25MDOUT25B=00000110;DOUT25MDOUT25B=00000101;DOUT25MDOUT25B=00000100;DOUT25MDOUT25B=00000011;DOUT25MDOUT25B=00000010;DOUT25MDOUT25B=00000001;DOUT25MDOUT25B=00100110;DOUT

27、25M=00110001;END CASE;END PROCESS;END ARCHITECTURE ART;3.1.5 倒計時倒計時 5sCNT05s 的設(shè)計模塊與程序的設(shè)計模塊與程序倒計時 5sCNT05s 設(shè)計的原理圖模塊源程序:LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL;ENTITY CNT05S ISPORT(CLK,EN05M,EN05B:IN STD_LOGIC; DOUT5:OUT STD_LOGIC_VECTOR(7 DOWNTO 0); 第 14 頁 共 18 頁END C

28、NT05S;ARCHITECTURE ART OF CNT05S IS SIGNAL CNT3B:STD_LOGIC_VECTOR(2 DOWNTO 0); BEGIN PROCESS(CLK,EN05M,EN05B)IS BEGIN IF(CLKEVENT AND CLK=1)THEN IF EN05M=1THEN CNT3B=CNT3B+1; ELSIF EN05B=1THEN CNT3B=CNT3B+1; ELSECNT3BDOUT5DOUT5DOUT5DOUT5DOUT5DOUT5=00000000; END CASE; END PROCESS;END ARCHITECTURE ART; 第 15 頁 共 18 頁3.2 管腳定義管腳定義3.3 時序仿真結(jié)果時序仿真結(jié)果 第 16 頁 共 18 頁3.4 實驗調(diào)試結(jié)果實驗調(diào)試結(jié)果開始時,支干道沒有車輛

溫馨提示

  • 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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論