




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、目錄摘要IIIAbstractIV第一章緒論11.1交通燈簡介11.2基于 Verilog HDL 交通燈控制的優點2CPLD 及 Verilog HDL 介紹4CPLD 介紹4Verilog HDL 介紹6第二章2.12.22.3仿真. 92.4仿真流程.10第三章交通信號控制電路的功能及實現原理 .123.1交通信號控制電路的功能分析.123.2交通信號控制電路實現原理.12第四章交通控制電路的 Verilog HDL 的設計實現.分頻模塊.154.1154.2控制模塊.154.3定時模塊.164.4計數模塊.174.5計數器控制模塊.174.6譯碼模塊.184.7緊急模塊.19第五章總結
2、與展望 .205.1開發難點與解決技巧.205.2系統說明與總結.205.3展望.21參考文獻.22附錄.23致謝37基于 Verilog HDL 交通燈控制系統設計摘要城市道路交叉口是城市道路網絡的基本節點,也是網絡交通流的瓶頸。交通燈是城市交通系統的重要組成部分,對于保證機動車輛的安全行駛,維持城市道路的順暢起到了重要作用。而交通信號控制的目的是為城市道路交叉口( 或交通網絡) 提供安全可靠和有效的交通流, 通常最為常用的原則是車輛在交叉口的通過量最大或車輛在交叉口的延誤最小。主要介紹以目前應用較為廣泛的 Verilog HDL 硬件描述語言,實現通燈系統的控制器的硬件電路描述。這種硬件電
3、路描述在 Altera 公司本對路的 EDAMAX+PLUS環境下通過了編譯、仿真、并到 CPLD 器件上進行編程制作,實現了交通燈系統的控制過程。利用 CPLD 的可重復編程和在動態系統重構的特性, 大大地提高了數字系統設計的靈活性和通用性。: Verilog HDL; CPLD;交通燈控制器;仿真Traffic control system based on Verilog HDLAbstractUrban roadersections city road network is the basic nodes, also is thebottleneck of the network tr
4、affic flow. The traffic light is urban traffic supervisystem important constituent, to guarantee the safety of motor vehicle driving,maain the urban road smooth played an important role. And traffic signalcontrol is designed for urban roadersections (or traffic network) provide safeand reliable and
5、effective traffic flow, usually the principle is most commonlyused vehicles in crossing through the largest amount or vehicles atdelay the smallest.ersectionThis pr mainlyroduthe application at present are more widelyVerilog HDL hardware description language, realize theersection traffic lightsystem
6、 controller hardware circuit is described. The hardware circuit described in the EDA software platform Altera company environment MAX + PLUS passedcompiled, simulation, and download to CPLD device on production, realizing theprogramming the control pros of traffic light syst em. Use CPLD repeatedpro
7、gramming and the characteristics of the dynamic system reconstruction, isgrey raised digital system design flexibility and versatility. This design to thetraditional traffic lights were improved, instead of the pure wirrow indicator lights red olivine, increased the green countdown and left turn to
8、turn indicatorand other new function, make provide rationalization.Keywords: Verilog HDL, CPLD, Traffic Light Controller, Simulation第一章緒論1.1交通燈簡介交通燈的雛形誕生于 19 世紀的英國,它最初只有紅綠兩種燈,由手動切換紅綠顏色。而黃色信號燈的發明者是我國的,他懷著“ 科學救國” 的抱負到深造,在大發明家為董事長的通用電器公司任職員。一天,他站在繁華的路口等待綠燈信號,當他看到紅燈而正要過去時, 一輛轉彎的汽車呼地一聲擦身而過,嚇了他一身冷汗。回到宿舍,他
9、反復琢磨, 終于想到在紅、綠燈中間再加上一個黃色信號燈,提醒人們注意。他的建議立即得到有關方面的肯定。于是紅、黃、綠三色信號燈即以一個完整的指揮信號,遍及全世界陸、海、空交通領域了。隨著各種交通工具的發展和交通指揮的需要,第一盞名副其實的三色燈(紅、黃、綠三種標志)于 1918 年誕生。它是三色圓形四面投影器,被安裝在紐約市五號街的一座高塔上,由于它的誕生,使城市交通大為改善。并且規定:綠燈亮時,準許車輛通行,黃燈亮時,已越過停止線的車輛可以繼續通行;紅燈亮時, 車輛通行。從最早牽皮帶到 20 世紀 50 年代的電氣控制,從采用計算機控制到現代化的電子定時,交通信號燈在科學化、自動化上不斷地更
10、新、發展和完善。現在大多數的交通燈都由單片機控制,由紅黃綠三色燈組成,通過設置好南北向和東西向各色燈的亮滅順序和維持的時間來指揮交通。交通對國民經濟的發展具有重要的作用,然而,大多數城市交通常常出現交通堵塞現象,車輛行駛中不僅車速受到限制,并且非機動車輛和行人的干擾, 有時甚至頻繁遇到多個紅燈信號,難以實現高效、快捷地運行。因此,協調性控制交通樞紐的信號,對提高城市道路的通行能力十分有效1。城市交通燈控制系統是用于城市交通數據監測、交通信號燈與交通疏導的指揮系統中最重要的組成部分2。交通燈計算機綜合系統,它是現代城市的出現極大的改善了城市交通,保障了人民的交通安全。但是,隨著現在科技取得不斷的
11、進步,人民生活質量不斷提高,大量的車流量注入城市的交通,僅僅靠傳統的單片機交通控制燈已經不太適應了。并且傳統的交通燈也存在一些缺點和不足。比如,單片機控制的交通燈不夠穩定,經過長期運行容易出現故障,其次它升級擴展時必須全部更換,這樣一來很大的造成了運用上的不便和資源上的浪費。傳統的交通燈一般只能實現定時的控制,而現在市區用的相對比較智能化的交通燈也只能根據前一天的車流量,來調節第二天紅綠燈的定時時間,無法做到實時變化。而智能交通燈系統是通過一條通信總線把控制各車道繼電器控制器和車輛探測器輸入多功能模塊連接起來,通過中心的管理計算機實現集中管理。管理計算機可對現場控制設備任意配置, 任意開啟某一
12、車道。般采用 EDA 技術實現。EDA 技術自動化、智能現在的智能交通燈系化程度高, 功能比較完善, 界面非常友好, 并且技術相當實用, 在信號燈的研發過, 需要用到 EDA 技術中的Verilog HDL 硬件描述語言來編寫信號燈的控制仿真程序。而 Verilog HDL 是其中目前應用最廣泛的一種3。是全方位的硬件描述語言, 幾乎覆蓋了以往各種硬件描述語言的功能, 整個自頂向下或自底向上的電路設計過程都可以用 Verilog HDL 硬件描述語言來完成。因此將EDA 技術運用到信號控制交叉口的設計中。隨著 EDA 技術的發展,在今后的開發中, EDA 具有更好的開發電子產品和性價比, 擁有
13、廣泛的市場前景4 。交通燈控制器設計是數字電路中的經典問題, 傳統的設計方法是基于中. 小規模集成電路進行的, 采用的電路元件多, 接線復雜, 故障率高, 可靠性低, 修改電路的功能需要硬件電路的支持。可編程邏輯器件 PLD 的出現,使得在實驗速硬件描述語言 Verilong HDL 可以對數字室就可以制作集成電路。系統進行抽象的行為與功能描述 ,在電子設計的各個階段、各個層次可以用計算機進行, 編程簡單, 程序修改容易, 不需要硬件電路的支持, 給設計者帶來了很大的方便。因此,隨著城市交通的快速發展,傳統上的交通燈已經很少使用了,大多數的交通燈都開始使用新的技術來代替傳統的交通燈了。1.2基
14、于 Verilog HDL 交通燈控制的優點Verilog HDL 是工業和學術界的硬件設計者所使用的兩種主要的 HDL 之一,另一種是 VHDL。現在他們都已成為 IEEE 標準。兩者各有特點,但 VerilogHDL 擁有更悠久的歷史、更廣泛的設計群體,資源也遠比 VHDL 豐富,且非常容易學習掌握。Verilog HDL 語言具有結構清晰、文法簡明、功能強大、高速模擬和多庫支持等優點,被近 90%的半導體公司使用,成為一種強大的設計工具5。基于Verilog HDL 交通燈改善了傳統交通燈不夠穩定和不利于升級的缺點。本文提出了以 Verilog HDL 語言為,設計了交通燈控制系統。其代
15、碼具有良好的可讀性和易理解通燈控制系統主要是實現城市交叉路口紅綠燈的控制。在現代化的大城市中, 交叉路口越來越多,在每個交叉路口都需要使用紅綠燈進行交通指揮和管理,紅、黃、綠燈的轉換要有一個準確的時間間隔和轉換順序,這就需要有一個安全、自動的系統對紅、黃、綠燈的轉換進行管理,本系統就是基于此目的而開發的。Verilog HDL 是一種全方位的硬件描述語言,實現對路通燈系統的控制器的硬件電路描述。這種硬件電路描述在Altera 公司的 EDA到 CPLD 器件上進行編程制作, MAX+PLUS環境下通過了編譯、仿真、并實現了交通燈系統的控制過程6。利用 CPLD 的可重復編程和在動態系統重構的特
16、性,大大地提高了數字系統設計的靈活性和通用性。第二章CPLD 及 Verilog HDL 介紹2.1CPLD 介紹可編程邏輯器件 PLD( programmable logic device)是 20 世紀 70 年代發展起來的一種劃時代的新型邏輯器件,經歷了 PLA(programmable logic array)、 PAL(programmable array logic) 、 GAL(generic array logic) 、 CPLD(complex programmable logic device)/FPGA(field programmable gate array) 幾個發
17、展階段, 其中 Altera 推出的類似于 PAL 結構的擴展型 CPLD(Complex ProgrammableLogic Dvice) 是一種較 PLD 更為復雜的邏輯元件。用戶可以根據各自的需要而自行構造邏輯功能的數字集成電路。其基本設計方法是借助集成開發平電纜( “在臺,用原理圖、硬件描述語言等方法,生成相應的目標文件,通過系統”編程)將代碼傳送到目標中,實現設計的數字系統。CPLD 的生產廠家主要有 Altera、Xilinx 和 Lattice 這三個公司, 它們也是 CPLD 發展的典型代表。Xilinx 公司主要產品有 XC9500/4000 、Coolrunner(XPLA
18、3) 、Spartan 和Vertex 等系列,其最大的 Vertex Pro 器件已經達到 800 萬門。開發也由Foundation 系列發展到了現在 ISE6.x。ISE(egrated system configuration) 是Xilinx 提供的一套工具集,它集成的工具可以完成整個 CPLD/FPGA 的開發過程,支持幾乎所有的 Xilinx 公司的 CPLD/FPGA 的主流器件7。Lattice 公司是 ISP(insystem programmability) 技術的發明者, ISP 技術極大地促進了 PLD 產品的發展,它的主要產品有 ispLSI2000/5000/80
19、00,MACH4/5等。開發為 ISP Synario、ispLever3.x。近年來,可編程邏輯器件的發展主要趨于如下幾個方面: 力求功耗更低,可編程邏輯器件的將向著低于 5V 的方向前進;ASCI 和 PLD 將把各自的優點相互融合, 共同發展;集成度提高, 價格降低是可編程邏輯器件發展的必然趨勢;4.把 DSP、器、應用接口等集成在 PLD 上以拓展其功能是可編程邏輯器件的現狀,可見在可編程邏輯器件上的可編程片上系統集成 SOPC( Systemon a programmable chip)是它的另一個發展趨勢;為滿足更高的硬件需求,可編程邏輯器件將向高頻方向發展;高擴展性的發展方向是
20、CPLD 改進電路的必然需求。隨著 PLD 的發展, CPLD 必定能在 EDA上發揮越來越大的作用。CPLD 主要是由可編程邏輯宏單元(MC, Macro Cell)圍繞中心的可編程互連矩陣單元組成。其中 MC 結構較復雜,并具有復雜的 I/O 單元互連結構,可由用戶根據需要生成特定的電路結構,完成一定的功能。由于 CPLD 內部采用固定長度的金屬線進行各邏輯塊的互連,所以設計的邏輯電路具有時間可性,避免了分段式互連結構時序不完全的缺點。CPLD 具有體系結構和邏輯單元靈活、集成度高以及適用范圍寬等特點。它既繼承了 PLD 和通用門陣列可實現較大規模的電路和編程靈活的特點,與其相比又有過之而
21、無不及的優點,比如它設計制造成本低、設計開發周期短、開發工具先進、具有電可擦除、編程的功能。因此被廣泛應用于門陣列,PLD 和中小規模通用邊緣掃描及數字集成電路的場合。隨著超大規模集成電路工藝的不斷提高 CPLD的規模也由最初的幾十門擴大到現在的上百萬門。而利用可編程邏輯器件設計交通信號控制電路時有如下優點:(1)能力強。隨著工業的發展,電磁干擾日趨嚴重,而交通燈應用的能力的 CPLD 來設計;特殊場合需要較高的穩定, 故本文選用高穩定性高。CPLD 通常的平均無故障時間都在 30 萬小時以上; 可重復編程。設計更新時隨意更改和補充,不必再更換新器件,彌補了ASIC設計的交通燈的靈活度不高,難
22、以更新和擴展的特點,既減輕了工作負擔,又節約了資源; (4)近年來 CPLD 價格逐步下降,性能卻大幅度的提高,實際應用性高。盡管 FPGA 和 CPLD 都是可編程 ASIC 器件,有很多共同特點,但由于 CPLD 和 FPGA 結構上的差異, 具有各自的特點:1.CPLD 更適合完成各種算法和組合邏輯,FPGA 更適合于完成時序邏輯。換句話說,FPGA 更適合于觸發器豐富的結構,而 CPLD 更適合于觸發器有限而乘積項豐富的結構;2.CPLD 的連續式布線結構決定了它的時序延遲是均勻的和可的, 而FPGA 的分段式布線結構決定了其延遲的不可性;在編程上 FPGA 比 CPLD 具有更大的靈
23、活性。CPLD 通過修改具有固定內連電路的邏輯功能來編程,FPGA 主要通過改變內部連線的布線來編程;FP GA 可在邏輯門下編程,而 CPLD 是在邏輯塊下編程; FPGA 的集成度比 CPLD 高,具有更復雜的布線結構和邏輯實現;CPLD 比 FPGA 使用起來更方便。 CPLD 的編程采用 E2PROM 或FASTFLASH 技術,無需外部器,使用簡單。而 FPGA 的編程信息需存放器上,使用方法復雜;在外部6.CPLD 的速度比 FPGA 快,并且具有較大的時間可性。這是由于 FPGA是門級編程,并且CLB 之間采用分布式互聯,而CPLD 是邏輯塊級編程,并且其邏輯塊之間的互聯是集總式
24、的;7.在編程方式上,CPLD 主要是基于 E2PROM 或 FLASH器編程, 編程次數可達 1 萬次,優點是系統斷電時編程信息也不丟失。CPLD 又可分為在編程器上編程和在系統編程兩類。FPGA 大部分是基于 SRAM 編程,編程信息在系統斷電時丟失,每次上電時,需從器件外部將編程數據重新寫入 SRAM 中。其優點是可以編程任意次,可在工作中快速編程,從而實現板級和系統級的動態配置;8.CPLD性好,FPGA性差; 9.一般情況下,CPLD 的功耗要比 FPGA 大,且集成度越高越明顯。2.2Verilog HDL 介紹近 30 年來,由于微電子學和計算機科學的迅速發展,給 EDA(電子設
25、計自動化) 行業帶來了巨大的變化。特別是進入 20 世紀 90 年代后,電子系統已經從電路板級系統集成發展成為包括 ASIC、FPGA 和嵌入系統的多種模式。可以說 EDA 產業已經成為電子信息類產品的支柱產業。EDA 之所以能蓬勃發展的關鍵之一就是采用了硬件描述語言(HDL) 描述電路系統。就 FPGA 和CPLD 開發而言,比較流行的 HDL 主要有 Verilog HDL、VHDL、ABEL-HDL和 AHDL 等。其中 VHDL 與 Verilog HDL 這兩種語言都是用于數字電子系統設計的硬件描述語言,而且都已經是 IEEE 的標準。 VHDL 1987 年成為標準, 而 Veri
26、log 硬件描述語言( Verilog HDL)于 1995 年被接納為 IEEE 標準,標準為 IEEE Std 1364-1995。它使各種設計工具(包括驗證仿真、時序分析、測試分析以及綜合)能夠在多個抽象層次上以標準文本格式描述數字系統,簡單、直觀并富有效率。由于其豐富的功能, Verilog HDL 已經成為數字系統設計的首選語言。這兩者有其共同的特點: 1 . 能形式化地抽象表示電路的行為和結構; 支持邏輯設計中層次與范圍地描述; 可借用高級語言地精巧結構來簡化電路行為和結構;具有電路仿真與驗證機制以保證設計的正確性; 4.5.6.7.路描述由到低層的綜合轉換; 硬件描述和實現工藝無
27、關; 便于文檔管理; 易于理解和設計重用。但是兩者也各有特點: Verilog HDL 推出已經有 20 年了,擁有廣泛的設計群體,成資源也比 VHDL 豐富。 Verilog 更大的一個優勢是:它非常容易掌握,只要有 C言的編程基礎,通過比較短的時間,經過一些實際的操作,可以在 2 3月內掌握這種設計技術。而 VHDL 設計相對要難一點,這個是因為 VHDL語個不是很直觀, 需要有 EDA 編程基礎,一般認為至少要半年以上的專業培訓才能掌握。目前版本的 Verilog HDL 和 VHDL 在行為級抽象建模的覆蓋面范圍方面有所不同。一般認為 Verilog 在系統級抽象方面要比 VHDL 略
28、差一些,而在門級開關電路描述方面要強的多。近 10 年來, EDA言爭論不休,目前在 界一直在對數字邏輯設計中究竟用哪一種硬件描述語,次數字系統設計領域中,應用 Verilog 和VHDL 的比率是 80發展的比較好。和 20差不多;而在歐洲 VHDL;和和很多集成電路設計公司都采用 Verilog ,但 VHDL 也有一定的市場。Verilog HDL 是一種硬件描述語言, 可用于從算法級、門級到開關級的多種抽象層次的數字系統建模8。由于 Verilog HDL 既是機器可讀的語言也是人類可讀的語言,因此它支持硬件設計的開發、驗證、綜合和測試;硬件數據之間的通信; 硬件的設計、和修改。現在,
29、 Verilog HDL 已經成為數字系統設計的首選語言, 并成為綜合、驗證和布局布線技術的基礎。Verilog HDL 的基本結構是:用 Verilog HDL 描述的電路設計就是該電路的 Verilog HDL 模型,也稱為模塊,是 Verilog 的基本描述。模塊描述某個設計的功能或結構以及與其他模塊通信的外部接口,一般來說一個文件就是一個模塊,但并不絕對如此。模塊是并行運行的,通常需要一個模塊通過調用其他模塊的實例來定義一個封閉的系統,包括測試數據和硬件描述。一個模塊的基本架構如下: module module_name (port_list)/各種變量、信號reg /寄存器wire/
30、線網parameter/參數 input/輸入信號 output/輸出信號inout/輸入輸出信號function/函數task/任務/程序代碼initial assignment always assignment module assignment gate assignment UDP assignmentcontinous assignment endmodule說明部分用于定義不同的項,例如模塊描述中使用的寄存器和參數。語句用于定義設計的功能和結構。說明部分可以分散于模塊的任何地方,但是變量、寄存器、線網和參數等的說明必須在使用前出現。一般的模塊結構如下: module () end
31、module其中,用來指定數據對象為寄存器型、器型、線型以及過程塊。可以是 initial 結構、always 結構、連續賦值或模塊實例9。Verilog 包含了豐富的內建原語,包括邏輯門、用戶定義的原語、開關以及線邏輯。它還具有器件管腳間的時延和時序檢查功能。從本質上講, Verilog所具有的混合抽象層次由兩種數據類型所提供,這兩種數據類型是線網( net)和變量( variable)。對于連續賦值, 變量和線網的表達式能夠連續地將值驅動到線網,它提供了基本的結構級建模方法。對于過程賦值,變量和網絡值的計算結果可以 于變量當中,它提供了基本的行為級建模方法。 一個用 Verilog HDL
32、 描述的設計包含一組模塊,每一個模塊都包含一個 I/O 接口和一個功能描述。模塊的功能描述可以是結構級的、行為級的、也可以是結構級和行為級的混合。這些模塊組成一個層次化結構并使用線網進行互連。Verilog 語言可以通過使用編程語言接口( Programming Languageerface,PLI)和 Verilog 程序接口( Verilog Proceduralerface,VPI)進行擴展。PLI/VPI包含在 Verilog HDL 描述內部的是一些例程的集合,它使得外部函數能夠信息,推動了與仿真之間的動態交互。PLI/VPI 的應用包括將 Verilog HDL 仿真器與其它仿真和
33、 CAD 系統、用戶定制的調試任務、時延計算以及標注器相連接。2.3仿真本設計利用的是 Max+plus仿真進行仿真, Max+plus是 Altera 公司提供的 FPGA/CPLD 開發集成環境, Altera 是世界上最大可編程邏輯器件的供應商之一。Max+plus 界面友好,使用便捷,被譽為業界最易用易學的 EDA。在 Max+plus上可以完成設計輸入、元件適配、時序仿真和功能仿真、編程整個流程,它提供了一種與結構無關的設計環境,是設計者能方便地進行設計輸入、快速處理和器件編程10。Max+plus開發系統的特點:1、開放的界面Max+plus支持與 Cadence,Exemplar
34、logic,Ment Viewlogic 和其它公司所提供的 EDA 工具接口。2、與結構無關raphics,Synplicty,Max+plus系統的Compr 支持 Altera 公司的 FLEX10K、FLEX8000、FLEX6000、MAX9000、MAX7000、MAX5000 和 Classic 可編程邏輯器件,提供了世界上唯一真正與結構無關的可編程邏輯設計環境。3、完全集成化Max+plus的設計輸入、處理與較驗功能全部集成在這樣可以加快動態調試、縮短開發周期。的開發環境下, 4、豐富的設計庫Max+plus提供豐富的庫單元供設計者調用,其中包括 74 系列的全部器件和多種特殊
35、的邏輯功能( Macro-Function )以及新型的參數化的兆功能( Mage-Function)。5、模塊化工具設計可以從各種設計輸入、處理和較驗選項中進行選擇從而使設計環境用戶化。6、硬件描述語言( HDL)Max+plus支持各種 HDL 設計輸入選項,包括 VHDL、Verilog HDL和 Altera 自己的硬件描述語言 AHDL。7、Opencore 特征Max+plus宏函數。具有開放核的特點,允許設計添加自己認為有價值的2.4仿真流程用 VHDL/VerilogHD 語言開發 PLD/FPGA 的完整流程為: 1.文本編輯:用任何文本編輯器都可以進行,也可以用的 HDL
36、編輯環境。通常 VHDL 文件保存為.vhd 文件, Verilog 文件保存為.v 文件。2.功能仿真:將文件調入 HDL 仿真進行功能仿真,檢查邏輯功能是否正確(也叫前仿真,對簡單的設計可以跳過這一步,只在布線完成以后,進行時序仿真)。3.邏輯綜合: 將源文件調入邏輯綜合表達式和信號的連接關系。邏輯綜合進行綜合,即把語言綜最簡的會生成.edf( edif)的 EDA 工業標準文件。4.布局布線:將.edf 文件調入 PLD 廠家提供的好的邏輯安放到 PLD/FPGA 內。中進行布線,即把設計5.時序仿真: 需要利用在布局布線中獲得的精確參數,用仿真路的時序( 也叫后仿真)。驗證電6.編程:
37、確認仿真無誤后, 將文件到中。第三章交通信號控制電路的功能及實現原理3.1交通信號控制電路的功能分析本文所設計的交通控制電路主要實現直行綠燈倒計時、通行方向指示( 左轉、直行和右轉)、左轉彎待轉指示和緊急狀態這四種功能。具體通行情況如下:( 1)南北的右轉和直行綠燈亮,左轉待轉指示燈亮,東西的指示燈全部為紅燈,持續 20s;( 2) 20s 后,南北并持續 3s;的左轉待轉指示燈滅,右轉和直行綠燈切換為黃燈( 3) 3s 后,南北20s;( 4) 20s 后, 南北( 5) 3s 后,南北的左轉指示燈亮, 右轉和直行指示燈為紅燈,持續的左轉綠燈切換為黃燈并持續 3s;的指示燈全為紅燈, 東西的
38、右轉和直行綠燈亮, 左轉待轉指示燈亮,持續 20s;( 6) 20s 后,東西并持續 3s;( 7) 3s 后, 東西20s;( 8) 20s 后, 東西的左轉待轉指示燈滅,右轉和直行綠燈切換為黃燈的左轉指示燈亮, 右轉和直行指示燈為紅燈,持續的左轉綠燈切換為黃燈并持續 3s;) 以上 8 種狀態循環往復,指揮交通。)遇到公務車出行時的緊急狀態,各方向全部紅燈亮,讓路給公務車。3.2交通信號控制電路實現原理本文設計的交通信號控制控制電路實現原理是: 把由 20M 的有振HOSONIC419 產生的復雜可編程邏輯器件 CPLD 的系統時鐘輸入到分頻模塊, 經分頻模塊分頻產生頻率為 1Hz 的時鐘
39、脈沖,作為控制定時模塊、控制模塊、緊急模塊、計數模塊的時鐘信號,然后再由定時模塊來控制緊急模塊和控制模塊,按照交通管理規則控制各色箭頭工作狀態的切換和各箭頭的持續時間,然后把各箭頭的狀態送到發光二極管來顯示。最后,由系統時鐘和計數模塊以及控制模塊來共同控制計數器控制模塊,計數器的時鐘為 1Hz,再把計數器控制模塊送出的 BCD 碼送給譯計時。譯碼后,送給數碼管顯示各方向直行綠燈的倒本設計在 EPM7128S上完成設計, EPM7128S 是以 CPLD(ComplexProgrammable Logic Device)MAX7128S 為。ALTERA 的 EPM7128S 系列 CPLD 是
40、基于第二代多陣列矩陣( MAX) 結構體系地高性能 EEPROM 結構的 CPLD。完全符合 IEEE 1149.1 JTAG 邊界掃描標準,具有 5V ISP 的功能; 邏輯密度為 2500 個可用編程門電路,128 個宏單元;可編程 I/O 口,TTL 邏輯電平為 5V 或 3V;引腳到引腳的邏輯延時為 5.0ns,計數器工作頻率可達到151.5MHz(EPM7128SLC-6);有集電極開路選擇,可編程宏單元觸發器,具有專有的清除( clear)、時鐘( clock)、輸出使能( OE)控制;與不源電壓的系統接口, VCCIO 引腳用于輸出緩沖器接到 5V 電源時,輸出電平與 5V 電源
41、兼容, VCCIO 引腳用于輸出緩沖器接到 3.3V 電源時,輸出電平與 3.3V 電源兼容,VCC用于內部電路和輸入緩沖器;器件具有一個可編程的程序加密位,全面保護你的設計, 防止程序被讀出和。的特點有以下幾點:以第二代多陣列矩陣( MAX ) 結構為基礎, 是一種高性能 CMOSEEPROM 器件;通過 JTAG( JoText Action Group 聯合測試組)接口可實現編程( ISP),本實驗板提供 JTAG 接口;邏輯密度為 2500 個可用編程門電路, 128 個宏單元; 68 條可編程 I/O 口, TTL 邏輯電平為 5V 或 3V;引腳到引腳的邏輯延時為 5.0ns, 計
42、數器工作頻率可達到 151.5MHz;有集電極開路選擇,可編程宏單元觸發器, 具有專有的清除( clear)、時鐘( clock)、輸出使能( OE)控制; 與不源電壓的系統接口,VCCIO 引腳用于輸出緩沖器接到 5V 電源時,輸出電平與 5V 電源兼容,VCCIO 引腳用于輸出緩沖器接到 3.3V 電源時,輸出電平與 3.3V 電源兼容,VCC用于內部電路和輸入緩沖器; 包括一個可編程的程序加密位,全面保護專利設計,防止程序被讀出。和以下為交通信號控制電路實現原理如圖 3.2 所示:圖 3.2交通信號控制電路實現原理圖第四章交通控制電路的 Verilog HDL 的設計實現本文所設計的交通
43、信號控制電路通過 Verilog HDL 來實現,遵照電路所實現的功能,確立本課題分為分頻模塊、控制模塊、定時模塊、計數模塊、計數器控制模塊、譯碼模塊和緊急模塊七大部分。4.1分頻模塊分頻模塊的作用是將 CPLD 的頻率轉換為所需的時鐘頻率。本文設計所選的 CPLD 為 EPM7128S,它的頻率為 20MHz,而交通信號控制電路所要求的頻率為 1Hz。因此,只有把 EPM7128S 進行 20000000 分頻才能得到所需頻率。分頻模塊的編程代碼見附錄。變量定義說明如下:clk: CPLD 系統時鐘; CP: 分頻后的時鐘。4.2控制模塊控制模塊是交通信號控制電路中最重要的部分,它按照交通管
44、理規則控制信號燈工作狀態的轉換來指揮交通。本文設計的交通信號控制電路把南北向或東西向相同轉向的指示燈使用同一控制端,即節約了資源,又提高了程序運行速度。控制模塊采用 MOOR 型狀態機設計方法設計,其編程代碼見附錄。變量定義說明如下:NSlturnsta, WElturnsta:分別為南北向和東西向的轉指示燈; NSR1,NSY1,NSG1,NSR2,NSY2,NSG2,NSR3,NSY3,NSG3 :分別為南北向左轉紅黃綠箭頭,直行紅黃綠箭頭和右轉紅黃綠箭頭; WER1,WEY1,WEG1,WER2,WEY2,WEG2,WER3,WEY3,WEG3 :分別為東西向左轉紅黃綠箭頭,直行紅黃綠箭
45、頭和右轉紅黃綠箭頭; CP: 分頻后的時鐘; s:各個燈的狀態; 控制模塊模擬仿真后得到的波形如圖 4.1 所示。從圖中可知,當南北向左彎待轉指示燈亮(NSlturnsta)的時候,南北向直行綠色指示燈(NSG2)和右轉綠色指示燈(NSG3) 亮,左轉顯示紅燈(NSR1)。當南北向直行黃色指示燈(NSY2) 和右轉黃色指示燈亮(NSY3)的時候,南北向轉指示燈(NSlturnsta)滅,左轉顯示紅燈(NSR1)。當左轉綠色指示燈亮(或者閃爍)(NSG1)或黃色指示燈(NSY1) 亮的時候, 直行(NSR2) 和右轉(NSR3) 顯示紅燈,黃燈過后,南北向全紅燈。切換為東西向顯示, 各燈切換順序
46、同南北向。故該模塊符合設計要求,設計合理。圖 4.1 控制模塊仿真波形圖4.3定時模塊定時模塊是交通信號控制電路中不可或缺的部分,它決定了各信號燈持續亮滅的時間。因此定時模塊設計的合理性直接影響著交通信號控制電路的優劣。定時模塊的編程代碼見附錄。變量定義說明如下:CP: 分頻后的時鐘; s:各個燈的狀態。定時模塊模擬仿真后得到的波形圖如圖 4.2。由圖可知,當狀態 0( s=0)持續 17 秒( j=16)后切換為狀態 1( s=1),狀態 1 持續 3 秒( j=19)后切換為狀態 3( s=3)。故該模塊符合設計要求,設計合理。圖 4.2定時模塊仿真波形圖4.4計數模塊本設計的計數模塊的作
47、用是計算直行綠燈的持續時間 20 秒,顯示直行綠燈的倒計時。計數模塊的編程代碼如下: 變量定義如下: CP:分頻后的時鐘; dataout:直行綠燈倒計時。計數模塊模擬仿真后的波形圖如圖 4.3。從圖中可看出,計數時間間隔為 1秒,數字從 19 倒計數至 0。故符合設計要求,設計合理。圖 4.3計數模塊仿真波形4.5計數器控制模塊計數器控制模塊也就是動態掃描模塊,它的作用是把計數模塊的數字送給譯碼模塊。計數器控制模塊的編程代碼見附錄。變量定義說明如下:NSlturnsta,WElturnsta:分別為南北向和東西向NS1,NS2,WE1,WE2: 置位指示信號;轉指示燈; Datain:從計數
48、器傳送來的數據; Dataled:置位后輸出給譯Clk: CPLD 系統時鐘。的數據; 計數器控制模塊模擬仿真后的波形如圖 4.4。由圖可知,當南北向轉指示燈( NSlturnsta)亮、東西向轉指示燈( WElturnsta)滅,狀態( s)為 1 的時候,把計數器的個位數送給南北向數碼顯示管的個位,南北向個位置位指示燈( NS1)亮; 當狀態為 2 的時候把計數器的十位數送給南北向數碼顯示管的十位,南北向個位置位指示燈( NS2)亮。當東西向轉指示燈( WElturnsta )亮、 南北向轉指示燈( NSlturnsta) 滅,狀態( s)為 3 的時候, 把計數器的個位數送給東西向數碼顯
49、示管的個位,東西向個位置位指示燈( WE1)亮;當狀態為 4 的時候把計數器的十位數送給東西向數碼顯示管的十位,東西向十位置位指示燈( WE2)亮。圖 4.4 計數器控制模塊仿真波形圖4.6譯碼模塊譯碼模塊的作用是把計數器控制模塊傳送過來的 BCD 碼轉換成 7 段字型代碼,并送給數碼顯示管顯示。譯碼模塊的編程代碼見附錄。變量定義說明如下:a,b,c,d,e,f,g: 7 段數碼管的各段指示燈; dp: 數碼管上的小數點; data: 從計數器控制模塊傳送來的數據。譯碼模塊的模擬仿真波形如圖 4.5。由圖可知,符合設計要求,設計合理。圖 4.5 譯碼模塊仿真波形圖4.7緊急模塊緊急模塊的作用是
50、為、消防車、救護車、運鈔車及裝載物品的貨車等特殊類型的車輛提供實時優先通行權,它的實現原理是使得系統時鐘顯示低電平狀態,讓各方向都顯示全紅燈狀態。緊急模塊的編程代碼如下:變量定義說明如下:jinji:緊急狀態輸入端;clk:系統時鐘; clk1:緊急狀態模塊時鐘。緊急模塊的模擬仿真波形如圖 4.6。如圖可知,當緊急狀態按鈕(jinji)按下的時候,時鐘(clk1)顯示為低電平,否則時鐘為 CPLD 的時鐘(clk)。故符合設計要求,設計合理。圖 4.6緊急模塊仿真波形圖第五章總結與展望5.1開發難點與解決技巧本設計在開發過遇到了眾多問題和,現在把一些主要的開發難點和解決技巧羅列如下: 問題一、
51、由于輸出口太多,不僅浪費了資源,而且影響了程序的執行速度。解決技巧:把兩個相對方向的相同轉向的同顏色指示燈接同一輸出口,每一時刻直行和右轉方向的狀態相同。既加快了程序運行速度,又節約了資源。問題二、該系統對直行綠燈的持續時間進行了倒計時,所以在南北向和東西向七段數碼顯示管的切換上難以把握。解決技巧:在設計過,本文使用了動態掃描來實現。具體實現方法為: 把計數器輸出的數據傳送給計數器控制器,然后把輸出的數據送給譯,最后在不同時刻把數據的個位和十位分別南北向的個位和十位或東西向的個位和十位。總之,在開發設計的過存在有種種問題和難點。但是,經過查閱資料和指導老師的指導下,以及同學的幫助下, 解決了很
52、多和難題。5.2系統說明與總結本系統主要應用于交通繁忙、路況繁忙的路口,系統設置為南北向直行和右轉綠燈持續 20 秒后,切換為黃燈亮 3 秒, 然后再切換為紅燈,同時左轉綠燈亮, 持續 20 秒。最后左轉黃燈亮 3 秒, 切換為紅燈,同時東西向各指示燈以相同的順序和時間間隔執行(注:各的轉指示燈跟直行燈同滅)。交通部門亦可根據各路段各時間點的路況信息隨時調整系統各指示燈的持續狀態。該系統配備一個緊急狀態,上面有緊急按鈕, 、救護車等公務車出行的時候,可以通過此按鈕讓各方向都指示為紅燈,以便讓公務車優先行駛。緊急情況出現太過頻繁或持續時間過長,將嚴重影響交通或造成堵塞,所以必須控制該數量,并加以
53、嚴格保管。最終實現城市交通安全,暢通無阻的交通環境,以提高人民生活安全保障。5.3展望隨著生活水平的日益提高,以車帶步的需求會越來越高,因此汽車數量也會越來越多,這將直接導致交通狀況越來越糟。所以不管時代如何發展,交通信號控制電路系統是永遠不會被淘汰的,而且隨著時代的進步,對此的要求越來越高,設計越來越復雜。在以后的設計中,不妨加入傳感器,擴展新的功能, 可以根據上下班或節假日的車流量調整各方向各色指示燈的亮滅順序和持續時間, 使之更加智能化,使得交通更加規范有序。參考文獻. 一種智能交通信號控制機的設計與實現 J. 計算 機應 用研 1 史 忠科, 陳小 鋒,究,2004,08:145.23
54、45.交通燈控制系統電路設計J.重慶.一種基于 EDA 的智能交通燈設計J.學院學報,2005,02:1.工業學院學報,2009,01:1.基于 VHDL 狀態機設計的智能交通控制燈J.國外電子元器件,2007,02:39.基于 Verilog HDL 設計的交通燈控制系統J.現代電子技術,2005, 08:2.6 郭長輝, 王思明. 基于 Verilog HDL 語言的帶左轉復雜交通燈設計J. 微型電腦應用,2006,04:1.7徐志軍,徐光輝.CPLD/FPGA 的開發與應用M.: 電子工業: 電子工業,2002.17.,2002.146.8910,.數字系統設計與 Verilong HD
55、LM.Verilong HDL 實用M.: 電子科技大學,1999.18. 基于 FPGA/CPLD 和 VHDL 語言的交通燈控制系統設計J. 開發與設計技術,2007,06:1618.附錄EPM7128S參考:4.1分頻模塊的編程代碼程序如下:module fenpin(CP,clk); outpP;reg CP;reg24:0i;inplk;always(beginedge clk)if(i=19999999)begini=0; CP=1;end elsebegin/實現 20000000 分頻i=i+1; CP=0;endendendmodule4.2 控制模塊編程代碼程序如下:mod
56、ulecontrol(NSlturnsta,NSR1,NSY1,NSG1,NSR2,NSY2,NSG2,NSR3,NSY3,NSG3, WElturnsta,WER,WEY1,WEG1,WER2,WEY2,WEG2,WER3,WEY3,WEG3,s,CP);outputNSlturnsta,NSR1,NSY1,NSG1,NSR2,NSY2,NSG2,NSR3,NSY3,NSG3,WElturnsta,WER1,WEY1,WEG1, WER2,WEY2,WEG2,WER3,WEY3,WEG3;output3:0s;inpregP;NSlturnsta,NSR1,NSY1,NSG1,NSR2,NS
57、Y2,NSG2,NSR3,NSY3,NSG3,WElturnsta,WER1,WEY1,WEG1,WER2,WEY2,WEG2,WER3,WEY3,WEG3;reg3:0s;always(beginedge CP)if(s=11) s=0;elses=s+1;endalways(s) begincase(s)4b0000:全紅燈/南北向直行和右轉綠燈以及轉指示燈亮,東西向beginNSlturnsta=1; WElturnsta=0;NSR1=1;NSY1=0;NSG1=0; NSR2=0;NSY2=0;NSG2=1; NSR3=0;NSY3=0;NSG3=1; WER1=1;WEY1=0;W
58、EG1=0; WER2=1;WEY2=0;WEG2=0; WER3=1;WEY3=0;WEG3=0;end4b0001:begin/南北向直行和右轉綠燈閃爍NSlturnsta=1; WElturnsta=0;NSR1=1;NSY1=0;NSG1=0; NSR2=0;NSY2=0;NSG2=CP; NSR3=0;NSY3=0;NSG3=CP; WER1=1;WEY1=0;WEG1=0; WER2=1;WEY2=0;WEG2=0; WER3=1;WEY3=0;WEG3=0;end4b0010:begin/南北向直行和右轉黃燈亮以及轉指示燈滅NSlturnsta=0;WElturnsta=0; N
59、SR1=1;NSY1=0;NSG1=0; NSR2=0;NSY2=1;NSG2=0; NSR3=0;NSY3=1;NSG3=0; WER1=1;WEY1=0;WEG1=0; WER2=1;WEY2=0;WEG2=0; WER3=1;WEY3=0;WEG3=0;end4b0011:begin/南北向直行和右轉紅燈亮, 左轉綠燈亮NSlturnsta=0; WElturnsta=0;NSR1=0;NSY1=0;NSG1=1; NSR2=1;NSY2=0;NSG2=0; NSR3=1;NSY3=0;NSG3=0; WER1=1;WEY1=0;WEG1=0; WER2=1;WEY2=0;WEG2=0;
60、 WER3=1;WEY3=0;WEG3=0;end4b0100:begin/南北向左轉綠燈閃爍NSlturnsta=0; WElturnsta=0;NSR1=0;NSY1=0;NSG1=CP; NSR2=1;NSY2=0;NSG2=0; NSR3=1;NSY3=0;NSG3=0; WER1=1;WEY1=0;WEG1=0; WER2=1;WEY2=0;WEG2=0;WER3=1;WEY3=0;WEG3=0;end4b0101:begin/南北向左轉黃燈亮NSlturnsta=0; WElturnsta=0;NSR1=0;NSY1=1;NSG1=0; NSR2=1;NSY2=0;NSG2=0;
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 《護腎護健康》課件
- 《車輛識別代碼》課件 - 深入了解汽車的身份證號碼
- 《社區健康管理與發展》課件
- 《物業管理人員工作規范》課件
- 《探索教育原理》課件
- 《急性心力衰竭急救》課件
- 《禮儀與職業》課件
- 咸陽職業技術學院《動物遺傳學》2023-2024學年第二學期期末試卷
- 江蘇建筑職業技術學院《田徑教學與訓練Ⅱ》2023-2024學年第二學期期末試卷
- 2025年鞍山貨運資格證試題及答案
- 75%食用酒精安全技術說明書(MSDS)
- 《十萬個為什么》整本書閱讀-課件-四年級下冊語文(統編版)
- 廢品入庫單模板
- 2023年版-腫瘤內科臨床路徑
- 婚育情況登記表
- word精美小升初簡歷歐式模板
- 復旦大學附屬眼耳鼻喉醫院耳鼻喉進修匯報
- 巖芯鑒定手冊
- 快速排序算法高校試講PPT
- 甘肅歷史與甘肅文化
- 高邊坡施工危險源辨識及分析
評論
0/150
提交評論