




版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領
文檔簡介
1、FPGA-CPLDFPGA-CPLD原理及應用原理及應用 FPGA-CPLD原理及應用 第5章 基本邏輯電路設計第5章 基本邏輯電路設計FPGA-CPLD原理及應用 第5章 基本邏輯電路設計5.1.1 門電路設計FPGA-CPLD原理及應用 第5章 基本邏輯電路設計5.4 設計實例:交通信號燈控制器設計FPGA-CPLD原理及應用 第5章 基本邏輯電路設計支干道 主干道FPGA-CPLD原理及應用 第5章 基本邏輯電路設計 設計并實現(xiàn)一十字路口的紅、綠、黃三色交通燈控制與顯設計并實現(xiàn)一十字路口的紅、綠、黃三色交通燈控制與顯示電路,即每個路口設置一組紅、黃、綠交通燈。示電路,即每個路口設置一組紅
2、、黃、綠交通燈。問題描述FPGA-CPLD原理及應用 第5章 基本邏輯電路設計1定義交通燈的狀態(tài),確定狀態(tài)表;定義交通燈的狀態(tài),確定狀態(tài)表;狀態(tài)東西方向 南北方向 時間( (s s) )S S0 0綠燈亮紅燈亮TeS S1 1黃燈亮紅燈亮TyS S2 2紅燈亮綠燈亮TsS S3 3紅燈亮黃燈亮Ty設計思路FPGA-CPLD原理及應用 第5章 基本邏輯電路設計實例1. 交通燈控制器 設計要求 設計方案 各模塊電路設計及程序 頂層原理圖電路設計 仿真結果FPGA-CPLD原理及應用 第5章 基本邏輯電路設計十字路口交通燈模塊SNG/EWRSNY/EWRSNR/EWYSNR/EWG南北干道通行東西干
3、道停止黃燈等待南北干道停止東西干道通行黃燈等待FPGA-CPLD原理及應用 第5章 基本邏輯電路設計十字路口交通燈模塊計時模塊狀態(tài)轉換模塊顯示模塊FPGA-CPLD原理及應用 第5章 基本邏輯電路設計層次化(交通燈)FPGA-CPLD原理及應用 第5章 基本邏輯電路設計 交通控制燈各模塊電路的設計 1. 控制模塊ctrl 2. 時鐘分頻模塊 3. 分位電路模塊 4. 數(shù)碼管動態(tài)掃描顯示模塊FPGA-CPLD原理及應用 第5章 基本邏輯電路設計1基本功能基本功能2擴展功能擴展功能(1)特殊狀態(tài)控制功能)特殊狀態(tài)控制功能 特殊狀態(tài)如緊急車輛隨時通行功能受一開關控制,無特殊狀態(tài)如緊急車輛隨時通行功能
4、受一開關控制,無急車時,信號燈按正常時序控制。有急車來時,將特殊狀急車時,信號燈按正常時序控制。有急車來時,將特殊狀態(tài)開關按下,不管原來信號燈的狀態(tài)如何,一律強制讓兩態(tài)開關按下,不管原來信號燈的狀態(tài)如何,一律強制讓兩個方向的紅燈同時點亮,禁止其它車輛通行,同時計時停個方向的紅燈同時點亮,禁止其它車輛通行,同時計時停止;特殊狀態(tài)結束后,恢復原來狀態(tài)繼續(xù)運行。止;特殊狀態(tài)結束后,恢復原來狀態(tài)繼續(xù)運行。(2)信號燈點亮時間預置功能)信號燈點亮時間預置功能 控制電路在任何時候可根據(jù)實際情況修改信號燈點亮控制電路在任何時候可根據(jù)實際情況修改信號燈點亮時間。時間。功能分析FPGA-CPLD原理及應用 第5
5、章 基本邏輯電路設計程序設計思路 在進程中利用自定義數(shù)據(jù)類型定義交通燈的在進程中利用自定義數(shù)據(jù)類型定義交通燈的4個狀態(tài),個狀態(tài),根據(jù)東西、南北方向的時間計數(shù)器的計數(shù)結果利用根據(jù)東西、南北方向的時間計數(shù)器的計數(shù)結果利用CASE語句實現(xiàn)語句實現(xiàn)4個狀態(tài)的轉換,在每一個狀態(tài)中利用內(nèi)個狀態(tài)的轉換,在每一個狀態(tài)中利用內(nèi)部信號傳遞實現(xiàn)對紅黃綠燈的顯示控制。部信號傳遞實現(xiàn)對紅黃綠燈的顯示控制。1狀態(tài)轉換的實現(xiàn)狀態(tài)轉換的實現(xiàn)FPGA-CPLD原理及應用 第5章 基本邏輯電路設計FSM設計方法 分析控制器設計指標,建立系統(tǒng)算法模型,即狀態(tài)轉換圖; 分析被控對象的時序,確定控制器的有限狀態(tài)機的各個狀態(tài)及輸入、輸出
6、條件; 應用VHDL語言完成狀態(tài)機的描述。FPGA-CPLD原理及應用 第5章 基本邏輯電路設計FSM分類 Moore型:輸出信號僅與現(xiàn)態(tài)相關 Mealy型:輸出信號與現(xiàn)態(tài)和輸入相關DFFsOutputComb. LogicFeedbackComb. LogicDFFsOutputComb. LogicFeedbackComb. LogicMooreMealy現(xiàn)態(tài)次態(tài)輸入輸出現(xiàn)態(tài)次態(tài)輸出輸入FPGA-CPLD原理及應用 第5章 基本邏輯電路設計FPGA-CPLD原理及應用 第5章 基本邏輯電路設計FSM 構成FSM用來解決一般時序邏輯電路問題,包括同步/異步時序邏輯 狀態(tài)寄存器 當前狀態(tài)(現(xiàn)態(tài)
7、)寄存器 組合邏輯電路 下一狀態(tài)(次態(tài))組合邏輯 輸出組合邏輯Moore和和Mealy狀態(tài)機描述的區(qū)別就在于狀態(tài)機描述的區(qū)別就在于輸出邏輯輸出邏輯進程進程FPGA-CPLD原理及應用 第5章 基本邏輯電路設計vhdl語言描述FSM的建立過程定義狀態(tài)機的狀態(tài)定義狀態(tài)變量描述狀態(tài)機的進程FPGA-CPLD原理及應用 第5章 基本邏輯電路設計定義狀態(tài)機的狀態(tài) 在使用狀態(tài)機之前應該定義狀態(tài)變量的枚舉類型,可以定義在狀態(tài)機描述的源文件中,或者是專門的程序包中。 例子: TYPE state IS (state1,state2);交通燈 type color is(greenred,yellowred,r
8、edgreen,redyellow); FPGA-CPLD原理及應用 第5章 基本邏輯電路設計定義狀態(tài)變量u定義兩個狀態(tài)機變量:當前狀態(tài)和次態(tài),其中當前狀態(tài)描述的是一組寄存器,而下狀態(tài)描述的是組合邏輯。u例: signal current_state:state; signal next_state:state;交通燈: signal current_state:color:=redgreen; signal next_state:color;FPGA-CPLD原理及應用 第5章 基本邏輯電路設計描述狀態(tài)機的進程狀態(tài)機的描述方式: 三進程、二進程、單進程(本實驗采用)一般采用三個進程來描述狀態(tài)
9、機 描述狀態(tài)機寄存器的時序進程 描述次態(tài)產(chǎn)生邏輯的組合邏輯進程 描述輸出組合邏輯進程FPGA-CPLD原理及應用 第5章 基本邏輯電路設計狀態(tài)機寄存器的時序進程process(reset,clk) begin if reset=1 then current_state=初始狀態(tài); else rising_edge(clk) then current_state=next_state; end if;end process;一定要有復位信號,否則狀態(tài)機處于隨機狀態(tài),無法開始正常一定要有復位信號,否則狀態(tài)機處于隨機狀態(tài),無法開始正常工作工作FPGA-CPLD原理及應用 第5章 基本邏輯電路設計次態(tài)
10、轉移邏輯進程process(current_state,其他輸入信號) begin next_state . next_state . next_state=某個狀態(tài); . end case;end process;狀態(tài)轉換的條件狀態(tài)的表現(xiàn)FPGA-CPLD原理及應用 第5章 基本邏輯電路設計 次態(tài)轉移邏輯進程 在case語句之前,給nenxt_state賦一個缺省值: next_state -the normal stagecase temp_color isStageControl.VHD狀態(tài)控制模塊本模塊是單進程模式,可改寫為三進程模式FPGA-CPLD原理及應用 第5章 基本邏輯電路設
11、計when greenred= -initial stagetempr=1100;tempg=0011;tempytemp_h=0000;temp_l=1001;stagechangecase temp_l is其中一個狀態(tài)的程序其他以此類推其中一個狀態(tài)的程序其他以此類推紅黃綠燈的亮滅紅黃綠燈亮滅的時間Case:判斷狀態(tài)的轉換還是保持FPGA-CPLD原理及應用 第5章 基本邏輯電路設計 when 0000= temp_l=1001; temp_h case temp_h is when 0000 = temp_h=0000; temp_l=0000; stagechange=0; temp_
12、color temp_l temp_l=temp_l-1;end case; end case;其中一個狀態(tài)的程序其他以此類推其中一個狀態(tài)的程序其他以此類推下一個狀態(tài)Case:處于保持狀態(tài)時時間的 遞減FPGA-CPLD原理及應用 第5章 基本邏輯電路設計狀態(tài)機查看FPGA-CPLD原理及應用 第5章 基本邏輯電路設計 東西、南北兩個方向共用東西、南北兩個方向共用8個數(shù)碼管顯示時間,為節(jié)省邏輯器件的個數(shù)碼管顯示時間,為節(jié)省邏輯器件的I/O,時間顯示采用動態(tài)掃描的方法。動態(tài)掃描的基本原理是對于一組數(shù)碼管動態(tài)掃時間顯示采用動態(tài)掃描的方法。動態(tài)掃描的基本原理是對于一組數(shù)碼管動態(tài)掃描顯示需要由兩組信號
13、來控制:一組是字段輸出口輸出的字形代碼,用來控制描顯示需要由兩組信號來控制:一組是字段輸出口輸出的字形代碼,用來控制顯示的字形,稱為段碼;另一組是位輸出口輸出的控制信號,用來選擇第幾位顯示的字形,稱為段碼;另一組是位輸出口輸出的控制信號,用來選擇第幾位數(shù)碼管工作,稱為位碼。各位數(shù)碼管的段線并聯(lián),段碼的輸出對各位數(shù)碼管來數(shù)碼管工作,稱為位碼。各位數(shù)碼管的段線并聯(lián),段碼的輸出對各位數(shù)碼管來說都是相同的。說都是相同的。 因此,在同一時刻如果各位數(shù)碼管的位選線都處于選通狀態(tài)的話,因此,在同一時刻如果各位數(shù)碼管的位選線都處于選通狀態(tài)的話,8位數(shù)位數(shù)碼管將顯示相同的字符。若要各位數(shù)碼管能夠顯示出與本位相應
14、的字符,就只碼管將顯示相同的字符。若要各位數(shù)碼管能夠顯示出與本位相應的字符,就只讓這一位的位選線處于導通狀態(tài),而其它各位的位選線處于關閉狀態(tài)。同時,讓這一位的位選線處于導通狀態(tài),而其它各位的位選線處于關閉狀態(tài)。同時,段線上輸出相應位要顯示字符的字型碼。這樣在同一時刻,只有選通的那一位段線上輸出相應位要顯示字符的字型碼。這樣在同一時刻,只有選通的那一位顯示出字符,而其它各位則是熄滅的,如此循環(huán)下去,就可以使各位數(shù)碼管顯顯示出字符,而其它各位則是熄滅的,如此循環(huán)下去,就可以使各位數(shù)碼管顯示出將要顯示的字符示出將要顯示的字符 。2時間顯示的實現(xiàn)時間顯示的實現(xiàn)FPGA-CPLD原理及應用 第5章 基本
15、邏輯電路設計設計框圖FPGA-CPLD原理及應用 第5章 基本邏輯電路設計Quartus II 設計及仿真FPGA-CPLD原理及應用 第5章 基本邏輯電路設計entity scandisplay is port( clk,emergencykey:in std_logic;catn:out std_logic_vector(3 downto 0); timeh1,timel1:in std_logic_vector(3 downto 0); num_out:out std_logic_vector(6 downto 0);end scandisplay;architecture behav
16、of scandisplay is signal num_in: std_logic_vector(3 downto 0); signal counter:integer range 0 to 1; signal led_chioce:std_logic;Begin掃描顯示模塊scandisplay.VHDFPGA-CPLD原理及應用 第5章 基本邏輯電路設計process(clk) ; -數(shù)碼管掃描 begin if (clkevent and clk=1) then counter=counter+1; if counter=1 then num_in=timeh1; led_sel=10
17、1; else num_in=timel1; led_selnum_outnum_outnum_out=div_fre_1kHz) thenfre_1kHz=0; clk_1kHz=not clk_1kHz; elseFPGA-CPLD原理及應用 第5章 基本邏輯電路設計分頻clk_demultiplier.vhd fre_1kHz=div_fre_1Hz) then fre_1Hz=0; clk_1Hz=not clk_1Hz; else fre_1Hzclk, clk_1kHz=scan_clk, clk_1Hz=count_clk); u1: StageControl port map
18、(clk=count_clk, emergencykey=emergencykey, red=red, green=green,yellow=yellow,time_h=temp_h, time_l=temp_l); u2: scandisplay port map (clk=scan_clk,time_h=temp_h,time_l=temp_l, led_segcode=led_seg,led_sel=led_sel);end;頂層實體: traffic_light_control.vhdFPGA-CPLD原理及應用 第5章 基本邏輯電路設計 引腳鎖定:引腳鎖定: 長江大學電工電子示范中心提示數(shù)碼管:數(shù)碼管:a(pin_G18) b(pin_F22) c(pin_E17) d(pin_L26) e(pin_L25) f(pin_J22) g(pin_H22) 共陰極共陰極 芯片: Cyclone IV
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年室內(nèi)設計委托協(xié)議合同范本
- 2025年的委托銷售合同范本
- 2025合同法規(guī)管理范文
- 農(nóng)業(yè)機械化與技術進步試題集
- 2025年天水貨運從業(yè)資格證考試題
- 個人店鋪合伙合同樣本
- 業(yè)務兼職合同標準文本
- 臨床執(zhí)業(yè)醫(yī)師考試中的多項選擇題解析試題及答案
- 上海出境旅游合同標準文本
- 農(nóng)村廢棄大坑合同范例
- 2025年廣東能源集團云浮蓄能發(fā)電有限公司招聘筆試參考題庫含答案解析
- 2024年考生面對挑戰(zhàn)時的心理調(diào)整試題及答案
- 2025-2030全球及中國4,4-二氟二苯甲酮行業(yè)市場現(xiàn)狀供需分析及市場深度研究發(fā)展前景及規(guī)劃可行性分析研究報告
- 【初中地理】撒哈拉以南非洲課件-2024-2025學年人教版地理七年級下冊
- 2024年信息安全試題及答案
- 藥物治療管理MTM
- 廣東省佛山市南海區(qū)2024-2025學年七年級外研版英語期中練習題(含答案)
- 鋼筋精算管理操作手冊
- 2025年河南水利與環(huán)境職業(yè)學院單招職業(yè)技能測試題庫審定版
- 近十年英語中考完形填空試題
- 教學課件:密織法律之網(wǎng)和強化法治之力
評論
0/150
提交評論