摘 要: 傳統交通控制器多數由單片機或PLC實現。FPGA不僅可解決電子系統小型化、低功耗、高可靠性等問題,而且其開發周期短、開發軟件投入少、芯片價格不斷下降,促使FPGA越來越多地取代了ASIC的市場,尤其是對小批量、多品種的產品需求,使之成為首選。本文介紹了一種復雜路口交通燈控制器的設計用FPGA實現的方法。
關鍵詞: FPGA VHDL 交通控制器
1.引言
1.1課題的提出
近年來,隨著我國經濟的發展,城市的交通擁擠問題日趨嚴重,交通事故頻發,提高城市路網的通行能力、實現道路交通的科學化管理來減少路口交通事故迫在眉睫。因此研究開發出適合中國國情、性能價格比高的路口控制器成為一項特別緊迫的任務。
該語言因具備強大的行為描述能力和豐富的仿真語句而成為系統設計領域最佳的硬件描述語言。
1.2 FPGA簡介
FPGA不僅可以解決電子系統小型化、低功耗、高可靠性等問題,而且其開發周期短、開發軟件投入少、芯片價格不斷降低,促使FPGA越來越多地取代了ASIC的市場,特別是對小批量、多品種的產品需求,使FPGA成為首選。
1.3 FPGA特點
(1)FPGA芯片的規模也是越來越大,其單片邏輯門數已達到上百萬門,所能實現的功能越來越強,同時還可以實現系統集成。
(2)FPGA芯片在出廠之前100%都做過測試,不需要設計人員承擔投資風險和費用。而且資金投入少,節省許多潛在的開銷。
(3)用戶可以反復地編程,擦除,使用,或在外圍電路不變的情況下,用不同軟件就可實現不同功能。FPGA軟件易學易用,可以讓設計人員集中精力進行電路設計,快速將產品推向市場。
2.交通控制器系統的VHDL設計
2.1 VHDL語言概述
VHDL主要用于描述數字系統的結構,行為,功能和接口。VHDL的語言形式和描述風格與句法與一般的計算機高級語言十分類似。VHDL的程序結構特點是將一項工程設計,或稱設計實體分成可視部分和不可視部分,即涉及實體的內部功能和算法完成部分。
2.2 VHDL開發FPGA流程
用VHDL語言開發FPGA的完整流程為:文本編輯→功能仿真→邏輯綜合→布局布線→時序仿真→編程下載。
通常以上過程可以都在FPGA廠家提供的開發工具中完成,利用VHDL語言進行FPGA設計開發的基本流程如下:VHDL輸入→功能仿真→邏輯綜合→適配分割→布局布線→時序仿真→編程測試。
2.3交通控制器VHDL初步設計說明
初步設計主要是體現本次采用VHDL語言設計的設計思想,設計理念,設計方法。
在初步設計中暫不需要考慮以下幾點:
(1)開辟存儲單元,即系統開啟后運行的是固定的參數,不重新設置,運行參數不變;
(2)東西南北交通燈為簡單的紅綠黃三色燈,不帶指示箭頭,因而燈總數為12,需要的輸出控制線為6;
(3)南北向與東西向運行時間相同,即采用對偶式設計,因而時間置入只要簡單考慮南北向或東西向一種情況。
2.4初步設計要求
利用VHDL語言按照以下要求進行編程,具體要求如下:設計一個交通信號燈,要求能夠實現手動和自動兩種控制方式,在手動方式下,通過觸發相應的按鈕,進行東西向與南北向之間的交通信號的切換。在自動方式下,首先要能夠對東西向與南北向的紅綠燈時間與黃燈時間進行設置,在確認設置數值后,啟動系統,要求系統按照所預置的數值運行。
2.5初步設計思想
該程序總體分為兩大部分,一為手動部分,二為自動部分,因此在程序設計時也應該按照這兩個部分進行設計。
(1)自動部分。自動部分總體分為三大塊:一為設置部分,二為LED顯示部分,三為系統運行部分。整個系統設計的整體思想是,首先在設置部分對東西向與南北向的紅綠燈、黃燈時間進行設置,同時通過LED顯示部分,將所設置的數值在數碼管上顯示出來。接著,在系統運行部分,將設置部分所預設的數值作為整個系統運行的參數。
(2)手動部分。手動部分功能較為單一,只需通過觸發相應的按鈕,實現東西向與南北向之間的交通信號的切換,即兩個方向上的紅綠燈切換。
3.結論與拓展
3.1結論
從上述的討論中,可以看到本次采用FPGA實現復雜路口流量控制器有其獨特的優點,但也有不足之處。
3.2拓展
在總結和分析本次采用FPGA實現復雜路口交通流量控制器優缺點的基礎上,我們可以看出本次設計的交通控制器可以做以下拓展:
(1)開辟動態的存儲單元,滿足運行參數組可增可減;
(2)信號燈控制輸出口可進一步時分復用,減少輸出口數量;
(3)信號燈左右拐時間可設計不同,以進一步滿足實際交通情況;
(4)24小時制數字時控脈沖發生器改進為可置數,以滿足交通流量變化時可重新預置時間段。
總之,采用FPGA實現復雜路口交通流量控制器可以根據用戶的具體要求實現不同的拓展。
參考文獻:
[1]褚正勇,翁木云編著.FPGA設計及應用.西安電子科技大學出版社,2002.
[2]楊恒,盧飛成編著.FPGAHDL快速工程實踐入門與提高.北京航空航天大學出版社,2003.
[3]汪道憲主編.CPLD/FPGA可編程邏輯器件應用與開發.國防工業出版社,2004.
[4]黃正瑾編著.在系統編程技術及其應用.東南大學出版社,2004.