交通燈控制器畢業(yè)設(shè)計(jì)論文.doc_第1頁
交通燈控制器畢業(yè)設(shè)計(jì)論文.doc_第2頁
交通燈控制器畢業(yè)設(shè)計(jì)論文.doc_第3頁
交通燈控制器畢業(yè)設(shè)計(jì)論文.doc_第4頁
交通燈控制器畢業(yè)設(shè)計(jì)論文.doc_第5頁
已閱讀5頁,還剩41頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、( 此文檔為 word 格式,下載后您可任意編輯修改!)優(yōu)秀論文審核通過未經(jīng)允許切勿外傳基于 VHDL交通燈控制電路設(shè)計(jì)Pride 【 kwg】(電信工程系電子信息工程專業(yè),2007 級 4)指導(dǎo)教師: 摘要 傳統(tǒng)的交通燈控制系統(tǒng)多數(shù)由單片機(jī)或PLC實(shí)現(xiàn),本文介紹的是基于EDA技術(shù)設(shè)計(jì)交通燈系統(tǒng)的一種方案。通過對系統(tǒng)進(jìn)行結(jié)構(gòu)分析,采用了層次化的設(shè)計(jì)方法,給出了各個(gè)模塊的VHDL程序,利用Max+Plus對應(yīng)用程序進(jìn)行了仿真,并給出了相應(yīng)的仿真結(jié)果。在用系統(tǒng)硬件描述語言進(jìn)行電路設(shè)計(jì)時(shí),應(yīng)充分認(rèn)識到VHDL語言的特點(diǎn),從設(shè)計(jì)思想、語句運(yùn)用及描述方法上等多方面對電路進(jìn)行優(yōu)化設(shè)計(jì),并使用規(guī)模更小的可編

2、程邏輯芯片,可以降低系統(tǒng)的成本。 關(guān)鍵詞 交通信號燈 ;系統(tǒng)硬件描述語言;仿真Design of trafficlightscontrolcircuitbased on VHDLKangWeiGang(Grade07,Class 4,Majorelectronics and informationengineering, Electronics and informationengineering Dept., Shaanxi University of Technology, Hanzhong 723000 , Shaanxi)Tutor:HeWeiAbstract : Traditiona

3、l traffic light control system is mostly achieved by a single chip or PLC,this paperintroducts a scheme of the design of traffic signal systems based on EDA technology. Each module is given VHDL program by ananlyzing the structure of the system and using a method,and it applies Max+Plus on the simul

4、ation of applications,and the corresponding simulation results are gained. When design the circuit with VHDL, we should1be fully aware of the characteristics of VHDL language and optimize the circuit design from the design, the use of statements and methodsof description,etc.Through optimizing circu

5、it design,we can use smaller programmable logic chip,thereby reducing system cost.Key words : traffic light ; VHDL ;simulation2目錄引言 .11概述 . .21.1交通燈的背景 .21.2交通燈的研究目的 .32EDA 技術(shù)的介紹 .42.1EDA 技術(shù) . .42.1.1 EDA 技術(shù)的發(fā)展 . .42.1.2 EDA 技術(shù)與傳統(tǒng)電子設(shè)計(jì)方法的比較 . .42.2 VHDL .52.3 MAX+PLUS .62.4CPLD .73交通燈控制系統(tǒng)工作原理 .83.1設(shè)計(jì)

6、方案及論證 .83.2具體設(shè)計(jì)及模塊劃分 .93.3工作原理 .103.4交通燈工作示意圖 .94系統(tǒng)設(shè)計(jì) . .114.1頂層電路設(shè)計(jì) .114.2交通燈主要控制模塊 .114.3定時(shí)單元以及顯示控制、譯碼電路 .34.4各模塊及整體仿真結(jié)果 .335硬件驗(yàn)證 .18總結(jié). 19致謝. 20參考文獻(xiàn) .21附錄 A 英文文獻(xiàn)22附錄 B 各模塊源程序29附錄 C 硬件實(shí)物圖384引言城市交通是城市活動(dòng)的重要組成部分,猶如人體的動(dòng)脈,維系著整個(gè)城市的正常運(yùn)轉(zhuǎn)。隨著人口的增多、科技的進(jìn)步和城市規(guī)模的擴(kuò)大,交通方式由原來簡單的車馬舟船,演變?yōu)楝F(xiàn)在的火車、汽車、地鐵、飛機(jī)等各種綜合型的運(yùn)輸方式。交通

7、作為現(xiàn)代城市的重要體現(xiàn)和標(biāo)志,見證著每一個(gè)城市的歷史與文明、發(fā)展與興衰。隨著城市經(jīng)濟(jì)的飛速發(fā)展、城市化進(jìn)程的加快,大量的人口涌入城市,造成市區(qū)人口稠密,社會(huì)經(jīng)濟(jì)發(fā)展、城市化和機(jī)動(dòng)化進(jìn)程的加快,使許多中心城市的交通在飛速發(fā)展的同時(shí)也對交通設(shè)施的建設(shè)提出了更高的要求。以前普通的交通控制器能根據(jù)事先給定的時(shí)間進(jìn)行通道的通禁控制,以達(dá)到自動(dòng)控制的目的,但由于如今車輛的迅速增多,給城市交通增加了嚴(yán)重的負(fù)擔(dān),而交通燈在其中正扮演著越來越重要的角色。因此,要求尋找一種可以隨時(shí)針對通道上車輛的密集程度來控制和調(diào)節(jié)主支干道的通禁時(shí)間,從而減少不合理的堵車現(xiàn)象的發(fā)生。目前 EDA技術(shù)發(fā)展迅速,是由于EDA技術(shù)主要

8、是依靠功能強(qiáng)大的電子計(jì)算機(jī),在EDA工具軟件平臺上,對以硬件描述語HDL(Hardware DescriptionLanguage)為系統(tǒng)邏輯描述手段完成的設(shè)計(jì)文件,自動(dòng)地完成邏輯編輯、化簡、分割、綜合、優(yōu)化和仿真、直至下載到可編程邏輯器件CPLDFPGA或?qū)S眉呻娐稟SIC(ApplicationSpecificIntegratedCircuit)芯片中,實(shí)現(xiàn)既定的電子電路設(shè)計(jì)功能1 。 EDA技術(shù)使得電子電路設(shè)計(jì)者的工作僅限于利用硬件描述語言和EDA軟件平臺來完成對系統(tǒng)硬件功能的實(shí)現(xiàn),極大地提高了設(shè)計(jì)效率,縮短了設(shè)計(jì)周期,節(jié)省了設(shè)計(jì)成本2 。實(shí)現(xiàn)路口交通燈系統(tǒng)的控制方法很多,可以用標(biāo)準(zhǔn)邏

9、輯器件,可編程控制器PLC,單片機(jī)等方案來實(shí)現(xiàn)。但是這些控制方法的功能修改及調(diào)試都需要硬件電路的支持,在一定程度上增加了功能修改及系統(tǒng)調(diào)試的困難。 因此,在設(shè)計(jì)中采用EDA技術(shù),應(yīng)用目前廣泛應(yīng)用的VHDL硬件電路描述語言,實(shí)現(xiàn)交通燈系統(tǒng)控制器的設(shè)計(jì),利用 MAX+PLUS集成開發(fā)環(huán)境進(jìn)行綜合、仿真 , 并下載到CPLD復(fù)雜可編程邏輯器件中,完成系統(tǒng)的控制作用。1 概述1.1 交通燈的背景早在 1850 年,城市交叉口處不斷增長的交通就引發(fā)了人們對安全和擁堵的關(guān)注。世界上第一臺交通自動(dòng)信號燈的誕生,拉開了城市交通控制的序幕,1868 年,英國工程師納伊特在倫敦威斯特敏斯特街口安裝了一臺紅綠兩色的

10、煤氣照明燈,用來控制交叉路口馬車的通行,但一次煤氣爆炸事故致使這種交通信號燈幾乎銷聲匿跡了近半個(gè)世紀(jì)。1914 年及稍晚一些時(shí)候,美國的克利夫蘭、紐約和芝加哥才重新出現(xiàn)了交通信號燈,它們采用電力驅(qū)動(dòng),與現(xiàn)在意義上的信號燈已經(jīng)相差無幾。1926 年英國人第一次安裝和使用自動(dòng)化的控制器來控制交通信號燈,這是城市交通自動(dòng)控制的起點(diǎn)。早期的交通信號燈使用“固定配時(shí)”方式實(shí)行自動(dòng)控制,這種方式對于早期交通流量不大的情況曾起過一定的作用。但隨著汽車工業(yè)的發(fā)展、交通流量增加、隨機(jī)變化增強(qiáng),采用以往那種單一模式的“固定配時(shí)”方式已不能滿足客觀需要,于是一種多時(shí)段多方案的信號控制器開始出現(xiàn)并逐步取代了傳統(tǒng)的只有

11、一種控制方案的控制器。除了多時(shí)段多方案定時(shí)控制的使用,為了避免各交叉路口之間“各自為政”的孤立控制方式對交通流造成的頻繁停車,還必須把相鄰的交叉路口作為一個(gè)系統(tǒng)來統(tǒng)一地加以控制。 1928 年,上述系統(tǒng)經(jīng)過改進(jìn),形成“靈活步進(jìn)式”定時(shí)系統(tǒng);由于它簡單、可靠、價(jià)格便宜,很快在美國推廣普及。這種系統(tǒng)以后不斷改進(jìn)、完善,成為當(dāng)今的協(xié)調(diào)控制系統(tǒng)。20 世紀(jì) 30 年代初,美國最早開始用車輛感應(yīng)式信號控制器,之后是英國,當(dāng)時(shí)使用的車輛檢測器是氣動(dòng)橡皮管檢測器。車輛感應(yīng)控制器的特點(diǎn)是它能根據(jù)檢測器測量的交通流量來調(diào)整綠燈時(shí)間的長短,使綠燈時(shí)間更有效地被利用,減少車輛在交叉口的時(shí)間延誤,比定時(shí)控制方式有更大

12、的靈活性。車輛感應(yīng)控制的這一特點(diǎn)刺激了車輛檢測器技術(shù)的發(fā)展。繼氣動(dòng)橡皮管式檢測器之后,雷達(dá)、超聲波、光電、地磁、電磁、微波、紅外以及環(huán)形線圈等檢測器相繼問世。當(dāng)今在城市道路交通自動(dòng)控制、交通監(jiān)測和交通數(shù)據(jù)采集系統(tǒng)中,應(yīng)用最廣的是環(huán)形線圈車輛檢測器。超聲波檢測器主要在日本等少數(shù)國家得到廣泛應(yīng)用。計(jì)算機(jī)技術(shù)的出現(xiàn)為交通控制技術(shù)的發(fā)展注入了新的活力,1952 年,美國科羅拉多州丹佛市首次利用模擬計(jì)算機(jī)和交通檢測器實(shí)現(xiàn)了對交通信號機(jī)網(wǎng)的配時(shí)方案自動(dòng)選擇式信號燈控制,而加拿大多倫多市于1964 年完成了計(jì)算機(jī)控制信號燈的實(shí)用化,建立了一套由IBM650 型計(jì)算機(jī)控制的交通信號協(xié)調(diào)控制系統(tǒng),成為世界上第一

13、個(gè)具有電子數(shù)字計(jì)算機(jī)城市交通控制系統(tǒng)的城市。這是道路交通控制技術(shù)發(fā)展的里程碑。伴隨著城市交通信號控制系統(tǒng)的迅速發(fā)展。人們認(rèn)識到,要更好地提高城市管理水平,不僅僅依靠硬件設(shè)備的更新和改進(jìn),還必須同時(shí)在控制邏輯和方法上有所突破,即城市交通的區(qū)域協(xié)調(diào)控制。傳統(tǒng)的城市道路交通控制指的是區(qū)域交叉口信號燈控制,而城市交通的區(qū)域協(xié)調(diào)控制,是在整個(gè)城市范圍內(nèi)對交通進(jìn)行控制,這無論是從理論角度還是實(shí)踐角度,都是一個(gè)極其復(fù)雜的大系統(tǒng)控制問題。國外對城市區(qū)域交通控制的研究,開始于20 世紀(jì)60 年代初。1967 年,英國運(yùn)輸與道路實(shí)驗(yàn)室(TRRL) 成功開發(fā)出TRANsYT(TraffioNetworkStudyT

14、ools)交通控制系統(tǒng),后來又在TRANsYT的基礎(chǔ)上開發(fā)了SEOOT(Split Cyele and Offset OPtimization Technique)系統(tǒng)。澳大利亞在70 年代末也開發(fā)了基于配時(shí)方案實(shí)時(shí)選擇方法來實(shí)現(xiàn)路網(wǎng)協(xié)調(diào)控制的SCAT(Sydney Coordinated AdaptiveTraffic Method)系統(tǒng)。這些系統(tǒng)己經(jīng)在西方國家的城市網(wǎng)絡(luò)交通中取得了成功的應(yīng)用。進(jìn)入 20 世紀(jì) 80 年代后期,隨著城市化進(jìn)程的加快和汽車的普及,城市交通擁擠、阻塞現(xiàn)象日趨惡化,由此引發(fā)的事故、噪聲和環(huán)境污染己成為日益嚴(yán)重的社會(huì)問題,交通問題成為困擾世界各國的普遍性難題。人們對

15、交通系統(tǒng)的規(guī)模復(fù)雜性和開放性特征有了更深一層的認(rèn)識,并開始意識到單獨(dú)考慮車輛或道路方面很難從根本上解決交通擁擠現(xiàn)象,只有把路口交通流運(yùn)行與信號控制的藕合作用綜合考慮,且賦以現(xiàn)代的各種高新技術(shù)方可徹底消除有關(guān)問題。于是,智能交通系統(tǒng)(ITS)應(yīng)運(yùn)而生,并得到迅猛發(fā)展。除在技術(shù)和功能上得到增強(qiáng)和完善的SCOOT和 SCATS以外, STREAM、ITACA、MOTION、RT-TRACS、SURFZ000、PRODYN和 UTOPIA等新一代城市交通控制系統(tǒng)相繼推出并投入應(yīng)用。目前城市交通控制研究的新發(fā)展主要體現(xiàn)在城市交通網(wǎng)絡(luò)的各個(gè)方面: 區(qū)域交通信號燈和城市快速公路匝道口的新的控制方法上;實(shí)現(xiàn)區(qū)

16、域和快速公路的集成控制;采用動(dòng)態(tài)路由導(dǎo)航與交通網(wǎng)絡(luò)控制結(jié)合以實(shí)現(xiàn)先進(jìn)車輛控制系統(tǒng)AvcS 為主的智能交通系統(tǒng)(ITS) ;以實(shí)現(xiàn)先進(jìn)交通管理系統(tǒng)ATMS和先進(jìn)駕駛員信息系統(tǒng)ATIS 為主的城市多智能體交通控制系統(tǒng);以及一些輔助的交通策略如道路自動(dòng)計(jì)費(fèi)、公共交通優(yōu)先等。可以說,在近百年的發(fā)展中,道路交通信號控制系統(tǒng)經(jīng)歷了無感應(yīng)控制到有感應(yīng)控制、手動(dòng)控制到自動(dòng)控制再到智能控制、單點(diǎn)控制 ( 點(diǎn)控 ) 到干線控制 ( 線控 ) 再到區(qū)域控制和網(wǎng)絡(luò)控制 ( 面控 ) 的過程。1.2交通燈的研究目的不同的城市存在著不同的城市問題,但其中有一個(gè)共同的問題就是城市交通。在交叉路口如何解決混合交通流中的相互影

17、響,就是解決問題的關(guān)鍵所在。隨著我國經(jīng)濟(jì)的穩(wěn)步發(fā)展,人民生活水平的日漸提高,越來越多的汽車進(jìn)入尋常百姓的家庭,再加上政府大力地發(fā)展公交、出租車行業(yè),道路上的車輛越來越多,使得城市的交通成為了一個(gè)主要的問題。嚴(yán)重的擁堵現(xiàn)象,逐漸惡化的城市環(huán)境,都給廣大市民帶來了許多困擾??上攵粋€(gè)沒有交通燈的社會(huì)將是何種樣子,那必將是交通秩序混亂,人們的出行安全沒有了任何保障,社會(huì)秩序也必將混亂不堪。但是以前的交通燈系統(tǒng)根本無法滿足現(xiàn)在社會(huì)的需求,所以需要運(yùn)用更新的技術(shù)來設(shè)計(jì)。本次設(shè)計(jì)是通過設(shè)計(jì)交通燈控制器, 了解 EDA技術(shù),掌握 VHDL硬件描述語言的設(shè)計(jì)方法和思想,鞏固和綜合運(yùn)用所學(xué)過的計(jì)算機(jī)組成原理

18、知識,提高分析、解決計(jì)算機(jī)技術(shù)實(shí)際問題的獨(dú)立工作能力。2 EDA技術(shù)的介紹2.1 EDA技術(shù)2.1.1 EDA技術(shù)的發(fā)展現(xiàn)代電子設(shè)計(jì)技術(shù)的核心是EDA( ElectronicDesign Automation )技術(shù)。 EDA技術(shù)使得設(shè)計(jì)者的工作僅限于利用軟件的方式,即利用硬件描述語言和EDA軟件來完成對系統(tǒng)硬件功能的實(shí)現(xiàn)3 。EDA(電子系統(tǒng)設(shè)計(jì)自動(dòng)化) 技術(shù)是 20 世紀(jì) 90 年代初從 CAD(計(jì)算機(jī)輔助設(shè)計(jì) ) 、CAM(計(jì)算機(jī)輔助制造 ) , CAT(計(jì)算機(jī)輔助測試 ) 和 CAE(計(jì)算機(jī)輔助工程 ) 的概念發(fā)展而來的。現(xiàn)代EDA技術(shù)就是以讓算機(jī)為工具,在 EDA軟件平臺上,根據(jù)硬件

19、描述語言HDL完成的設(shè)計(jì)文件,能自動(dòng)地完成用軟件方式描述的電子系統(tǒng)到硬件系統(tǒng)的邏輯編譯、邏輯化簡、邏輯分割、邏輯綜合及優(yōu)化、布局布線、邏輯仿真,直至完成對于特定目標(biāo)芯片的適配編譯、邏輯映射和編程下載等工作。設(shè)計(jì)者的工作僅限于利用軟件的方式來完成對系統(tǒng)硬件功能的描述,在 EDA工具的幫助下和應(yīng)用相應(yīng)的FPGACPLD器件,就可以得到最后的設(shè)計(jì)結(jié)果。盡管目標(biāo)系統(tǒng)是硬件,但整個(gè)設(shè)計(jì)和修改過程如同完成軟件設(shè)計(jì)一樣方便和高效。可見利用EDA技術(shù)進(jìn)行電子系統(tǒng)的設(shè)計(jì),具有以下幾個(gè)特點(diǎn):( 1)用軟件的方式設(shè)計(jì)硬件;( 2)用軟件方式設(shè)計(jì)的系統(tǒng)到硬件系統(tǒng)的轉(zhuǎn)換是由有關(guān)的開發(fā)軟件自動(dòng)完成的;( 3)采用自頂向下

20、 (top-down) 的設(shè)計(jì)方法;( 4)設(shè)計(jì)過程中可用有關(guān)軟件進(jìn)行各種仿真;( 5)系統(tǒng)可現(xiàn)場編程,在線升級;4( 6)整個(gè)系統(tǒng)可集成在一個(gè)芯片上,體積小、功耗低、可靠性高。EDA技術(shù)涉及面很廣, 內(nèi)容豐富, 主要應(yīng)掌握如下四個(gè)方面的內(nèi)容:(1)大規(guī)??删幊踢壿嬈骷?;(2) 硬件描述語言;(3) 軟件開發(fā)工具;(4) 實(shí)驗(yàn)開發(fā)系統(tǒng)。其中大規(guī)模可編程邏輯器件是利用EDA技術(shù)進(jìn)行電子系統(tǒng)設(shè)計(jì)的載體,硬件描述語言是利用EDA技術(shù)進(jìn)行電子系統(tǒng)設(shè)計(jì)的主要表達(dá)手段,軟件開發(fā)工具是利用EDA技術(shù)進(jìn)行電子系統(tǒng)設(shè)計(jì)的智能化的自動(dòng)設(shè)計(jì)工具,實(shí)驗(yàn)開發(fā)系統(tǒng)則是利用EDA技術(shù)進(jìn)行電子系統(tǒng)設(shè)計(jì)的下載工具及硬件驗(yàn)證工具

21、5 。硬件描述語言(HDL) 是相對于一般的計(jì)算機(jī)軟件語言如C、Pascal而言的。HDL是用于設(shè)計(jì)硬件電子系統(tǒng)的計(jì)算機(jī)語言,它描述電子系統(tǒng)的邏輯功能、電路結(jié)構(gòu)和連接方式6。 HDL 具有與具體硬件電路無關(guān)和與設(shè)計(jì)平臺無關(guān)的特性,并且具有良好的電路行為描述和系統(tǒng)描述的能力,并在語言易讀性和層次化結(jié)構(gòu)化設(shè)計(jì)方面,表現(xiàn)了強(qiáng)大的生命力和應(yīng)用潛力7 。用HDL進(jìn)行電子系統(tǒng)設(shè)計(jì)的一個(gè)很大的優(yōu)點(diǎn)是設(shè)計(jì)者可以專心致力于其功能的實(shí)現(xiàn),而不需要對不影響功能的與工藝有關(guān)的因素花費(fèi)過多的時(shí)間和精力。2.1.2 EDA技術(shù)與傳統(tǒng)電子設(shè)計(jì)方法的比較與傳統(tǒng)的電子設(shè)計(jì)方法相比,EDA 技術(shù)對于復(fù)雜電路的設(shè)計(jì)和調(diào)試都比較簡單

22、,如果某一過程存在錯(cuò)誤,查找和修改起來比較方便,而且EDA技術(shù)的可移植性很強(qiáng)。由于可編程邏輯器件性能價(jià)格比的不斷提高,開發(fā)軟件功能的不斷完善,而且由于用EDA技術(shù)設(shè)計(jì)電子系統(tǒng)具有用軟件的方式設(shè)計(jì)硬件,設(shè)計(jì)過程中可用有關(guān)軟件進(jìn)行各種仿真,系統(tǒng)可現(xiàn)場編程,在線升級,整個(gè)系統(tǒng)可集成在一個(gè)芯片上等特點(diǎn),比起傳統(tǒng)的設(shè)計(jì)方法可編程邏輯器件更符合現(xiàn)在數(shù)字電路設(shè)計(jì)的需求。傳統(tǒng)機(jī)電設(shè)備的電器控制系統(tǒng),如果利用EDA技術(shù)進(jìn)行重新設(shè)計(jì)或進(jìn)行技術(shù)改造,不但設(shè)計(jì)周期短、設(shè)計(jì)成本低,而且將提高產(chǎn)品或設(shè)備的性能,縮小產(chǎn)品體積,提高產(chǎn)品的技術(shù)含量,提高產(chǎn)品的附加值 8 。2.2 VHDL(1) VHDL 簡介VHDL 是一種

23、用于電路設(shè)計(jì)的高級語言。它在80 年代的后期出現(xiàn)。最初是由美國國防部開發(fā)出來供美軍用來提高設(shè)計(jì)的可靠性和縮減開發(fā)周期的一種使用范圍較小的設(shè)計(jì)語言。VHDL 主要用于描述數(shù)字系統(tǒng)的結(jié)構(gòu)、行為、功能和接口。除了含有許多具有硬件特征的語句外,VHDL的語言形式、描述風(fēng)格以及語法是十分類似于一般的計(jì)算機(jī)高級語言。VHDL的程序結(jié)構(gòu)特點(diǎn)是將一項(xiàng)工程設(shè)計(jì),或稱設(shè)計(jì)實(shí)體(可以是一個(gè)元件,一個(gè)電路模塊或一個(gè)系統(tǒng))分成外部(或稱可視部分,及端口)和內(nèi)部(或稱不可視部分)設(shè)計(jì)9。在對一個(gè)設(shè)計(jì)實(shí)體定義了外部界面后,一旦其內(nèi)部開發(fā)完成后,其他的設(shè)計(jì)就可以直接調(diào)用這個(gè)實(shí)體。這種將設(shè)計(jì)實(shí)體分成內(nèi)外部分的概念是VHDL系統(tǒng)

24、設(shè)計(jì)的基本點(diǎn)。(2) VHDL的特點(diǎn)功能強(qiáng)大、設(shè)計(jì)靈活VHDL 具有功能強(qiáng)大的語言結(jié)構(gòu),可以用簡潔明確的源代碼來描述復(fù)雜的邏輯控制。它具有多層次的設(shè)計(jì)描述功能,層層細(xì)化,最后可直接生成電路級描述。VHDL支持同步電路、異步電路和隨機(jī)電路的設(shè)計(jì),這是其他硬件描述語言所不能比擬的。VHDL還支持各種設(shè)計(jì)方法,既支持自底向上的設(shè)計(jì),又支持自頂向下的設(shè)計(jì);既支持模塊化設(shè)計(jì),又支持層次化設(shè)計(jì)。支持廣泛、易于修改由于 VHDL 已經(jīng)成為IEEE 標(biāo)準(zhǔn)所規(guī)范的硬件描述語言,目前大多數(shù)EDA 工具幾乎都支持VHDL,這為VHDL 的進(jìn)一步推廣和廣泛應(yīng)用奠定了基礎(chǔ)。在硬件電路設(shè)計(jì)過程中,主要的設(shè)計(jì)文件是用VHD

25、L編寫的源代碼,因?yàn)閂HDL 易讀和結(jié)構(gòu)化,所以易于修改設(shè)計(jì)。強(qiáng)大的系統(tǒng)硬件描述能力VHDL 具有多層次的設(shè)計(jì)描述功能,既可以描述系統(tǒng)級電路,又可以描述門級電路。而描述既可以采用行為描述、寄存器傳輸描述或結(jié)構(gòu)描述,也可以采用三者混合的混合級描述。另外, VHDL 支持慣性延遲和傳輸延遲,還可以準(zhǔn)確地建立硬件電路模型。VHDL 支持預(yù)定義的和自定義的數(shù)據(jù)類型,給硬件描述帶來較大的自由度,使設(shè)計(jì)人員能夠方便地創(chuàng)建高層次的系統(tǒng)模型。獨(dú)立于器件的設(shè)計(jì)、與工藝無關(guān)設(shè)計(jì)人員用VHDL 進(jìn)行設(shè)計(jì)時(shí),不需要首先考慮選擇完成設(shè)計(jì)的器件,就可以集中精力進(jìn)行設(shè)計(jì)的優(yōu)化。當(dāng)設(shè)計(jì)描述完成后,可以用多種不同的器件結(jié)構(gòu)來實(shí)

26、現(xiàn)其功能。很強(qiáng)的移植能力VHDL 是一種標(biāo)準(zhǔn)化的硬件描述語言,同一個(gè)設(shè)計(jì)描述可以被不同的工具所支持,使得設(shè)計(jì)描述的移植成為可能。易于共享和復(fù)用VHDL 采用基于庫(Library)的設(shè)計(jì)方法,可以建立各種可再次利用的模塊。這些模塊可以預(yù)先設(shè)計(jì)或使用以前設(shè)計(jì)中的存檔模塊,將這些模塊存放到庫中,就可以在以后的設(shè)計(jì)中進(jìn)行復(fù)用,可以使設(shè)計(jì)成果在設(shè)計(jì)人員之間進(jìn)行交流和共享,減少硬件電路設(shè)計(jì)。(3) VHDL 的優(yōu)勢 與其他的硬件描述語言相比, VHDL 具有更強(qiáng)的行為描述能力,從而決定了他成為系統(tǒng)設(shè)計(jì)領(lǐng)域最佳的硬件描述語言。強(qiáng)大的行為描述能力是避開具體的器件結(jié)構(gòu),從邏輯行為上描述和設(shè)計(jì)大規(guī)模電子系統(tǒng)的重

27、要保證。 VHDL 豐富的仿真語句和庫函數(shù),使得在任何大系統(tǒng)的設(shè)計(jì)早期就能查驗(yàn)設(shè)計(jì)系統(tǒng)的功能可行性,隨時(shí)可對設(shè)計(jì)進(jìn)行仿真模擬10 。 VHDL 語句的行為描述能力和程序結(jié)構(gòu)決定了他具有支持大規(guī)模設(shè)計(jì)的分解和已有設(shè)計(jì)的再利用功能,符合市場大規(guī)模系統(tǒng)、高效、高速的完成且必須有多人甚至多個(gè)代發(fā)組共同并行工作才能實(shí)現(xiàn)的需求。對于用VHDL完成的一個(gè)確定的設(shè)計(jì),可以利用EDA工具進(jìn)行邏輯綜合和優(yōu)化,并自動(dòng)的把VHDL描述設(shè)計(jì)轉(zhuǎn)變成門級網(wǎng)表。 VHDL 對設(shè)計(jì)的描述具有相對獨(dú)立性,設(shè)計(jì)者可以不懂硬件的結(jié)構(gòu),也不必知道最終設(shè)計(jì)實(shí)現(xiàn)的目標(biāo)器件是什么,而進(jìn)行獨(dú)立的設(shè)計(jì)。2.3 MAX+PLUS(1) 軟件簡介M

28、ax+plus是Altera公司提供的FPGACPLD開發(fā)集成環(huán)境,Altera是世界上最大可編程邏輯器件的供應(yīng)商之一。Max+plus界面友好,使用便捷,被譽(yù)為業(yè)界最易用易學(xué)的EDA軟件。在Max+plus上可以完成設(shè)計(jì)輸入、元件適配、時(shí)序仿真和功能仿真、編程下載整個(gè)流程,它提供了一種與結(jié)構(gòu)無關(guān)的設(shè)計(jì)環(huán)境,是設(shè)計(jì)者能方便地進(jìn)行設(shè)計(jì)輸入、快速處理和器件編程 11 。(2) 軟件開發(fā)系統(tǒng)的特點(diǎn) 開放的界面Max+plus支持與Cadence ,Exemplarlogic,MentorGraphics,Synplicty,Viewlogic和其它公司所提供的EDA工具接口。與結(jié)構(gòu)無關(guān)Max+plu

29、s系統(tǒng)的核心Complier支持 Altera公司的FLEX10K、 FLEX8000 、 FLEX6000 、MAX9000、 MAX7000、 MAX5000 和 Classic可編程邏輯器件,提供了世界上唯一真正與結(jié)構(gòu)無關(guān)的可編程邏輯設(shè)計(jì)環(huán)境。完全集成化Max+plus的設(shè)計(jì)輸入、處理與較驗(yàn)功能全部集成在統(tǒng)一的開發(fā)環(huán)境下,這樣可以加快動(dòng)態(tài)調(diào)試、縮短開發(fā)周期12。豐富的設(shè)計(jì)庫Max+plus提供豐富的庫單元供設(shè)計(jì)者調(diào)用,其中包括的邏輯功能(Macro-Function)以及新型的參數(shù)化的兆功能(74 系列的全部器件和多種特殊Mage-Function)。硬件描述語言(HDL)Max+plu

30、s軟件支持各種HDL 設(shè)計(jì)輸入選項(xiàng),包括VHDL、 Verilog HDL和Altera自己的硬件描述語言AHDL。2.4 CPLD( 1 ) CPLD簡介CPLD主要是由可編程邏輯宏單元(MC,Macro Cell)圍繞中心的可編程互連矩陣單元組成。其中 MC結(jié)構(gòu)較復(fù)雜,并具有復(fù)雜的IO 單元互連結(jié)構(gòu),可由用戶根據(jù)需要生成特定的電路結(jié)構(gòu),完成一定的功能。由于CPLD 內(nèi)部采用固定長度的金屬線進(jìn)行各邏輯塊的互連,所以設(shè)計(jì)的邏輯電路具有時(shí)間可預(yù)測性,避免了分段式互連結(jié)構(gòu)時(shí)序不完全預(yù)測的缺點(diǎn)。( 2)CPLD的發(fā)展歷史及應(yīng)用領(lǐng)域20 世紀(jì)70 年代,最早的可編程邏輯器件-PLD誕生了。其輸出結(jié)構(gòu)是

31、可編程的邏輯宏單元,因?yàn)樗挠布Y(jié)構(gòu)設(shè)計(jì)可由軟件完成(相當(dāng)于房子蓋好后人工設(shè)計(jì)局部室內(nèi)結(jié)構(gòu)),因而它的設(shè)計(jì)比純硬件的數(shù)字電路具有很強(qiáng)的靈活性,但其過于簡單的結(jié)構(gòu)也使它們只能實(shí)現(xiàn)規(guī)模較小的電路。為彌補(bǔ)PLD 只能設(shè)計(jì)小規(guī)模電路這一缺陷,20 世紀(jì)80 年代中期,推出了復(fù)雜可編程邏輯器件-CPLD 。目前應(yīng)用已深入網(wǎng)絡(luò)、儀器儀表、汽車電子、數(shù)控機(jī)床、航天測控設(shè)備等方面。( 3 ) CPLD器件的特點(diǎn)它具有編程靈活、集成度高、設(shè)計(jì)開發(fā)周期短、適用范圍寬、開發(fā)工具先進(jìn)、設(shè)計(jì)制造成本低、對設(shè)計(jì)者的硬件經(jīng)驗(yàn)要求低、標(biāo)準(zhǔn)產(chǎn)品無需測試、保密性強(qiáng)、價(jià)格大眾化等特點(diǎn),可實(shí)現(xiàn)較大規(guī)模的電路設(shè)計(jì),因此被廣泛應(yīng)用于產(chǎn)品

32、的原型設(shè)計(jì)和產(chǎn)品生產(chǎn)( 一般在10,000件以下) 之中。幾乎所有應(yīng)用中小規(guī)模通用數(shù)字集成電路的場合均可應(yīng)用CPLD 器件。CPLD 器件已成為電子產(chǎn)品不可缺少的組成部分,它的設(shè)計(jì)和應(yīng)用成為電子工程師必備的一種技能。3 交通燈控制系統(tǒng)方案論證3.1設(shè)計(jì)方案及論證( 1)設(shè)計(jì)方案方案一:采用小規(guī)模集成電路,用純硬件電路搭建。整個(gè)交通燈控制系統(tǒng)主要由時(shí)鐘產(chǎn)生電路、主控制電路、計(jì)時(shí)控制電路和交通信號顯示電路組成。時(shí)鐘產(chǎn)生電路是該系統(tǒng)中定時(shí)器和控制器的標(biāo)準(zhǔn)時(shí)鐘信號源。譯碼器輸出兩組信號燈的控制信號,經(jīng)驅(qū)動(dòng)電路驅(qū)動(dòng)信號燈工作。時(shí)鐘脈沖產(chǎn)生電路利用晶振,它可以發(fā)出連續(xù)脈沖從而控制兩片74LS161 組成的

33、計(jì)時(shí)電路的CLK端。它的周期T=0.7(R1+R2)C ,其周期約為1 秒。主控制器是系統(tǒng)的主要部分,由它控制其他電路之間的協(xié)調(diào)工作。系統(tǒng)的原理框圖如圖3.1 所示:圖 3.1方案一原理框圖方案二:采用單片機(jī)來實(shí)現(xiàn)。在整個(gè)系統(tǒng)設(shè)計(jì)當(dāng)中,以AT89C52單片機(jī)為核心,為使各模塊穩(wěn)定工作,采用單片機(jī)控制模塊提供電源,節(jié)約成本,但輸出功率不高。復(fù)位電路部分,考慮到程序的簡潔,避免冗長,采用按鍵復(fù)位,在芯片的復(fù)位端口外接復(fù)位電路,通過按鍵對單片機(jī)輸入一個(gè)高電平脈沖,達(dá)到復(fù)位目的。輸入信號部分,直接在 IO 口接上按鍵開關(guān),精簡和優(yōu)化電路,該系統(tǒng)對于交通燈及數(shù)碼管的控制只用單片機(jī)本身的IO 口就可以實(shí)現(xiàn)

34、,顯示電路采用共陽數(shù)碼管。整個(gè)系統(tǒng)組成框圖如圖3.2 所示:圖3.2方案二系統(tǒng)組成框圖方案三:采用可編程邏輯器件來實(shí)現(xiàn)該設(shè)計(jì)方案以CPLD器件為核心,用 VHDL編程實(shí)現(xiàn)各計(jì)時(shí)單元以及控制電路的功能,軟件上仿真調(diào)試,顯示電路采用7 段得共陰數(shù)碼管。系統(tǒng)組成框圖如圖3.3 所示:在Max+Plus圖 3.3系統(tǒng)組成框圖( 2)方案論證方案一采用的是集成硬件電路的搭建,各個(gè)模塊之間的接口很難保證,而且用到大量芯片來搭建各個(gè)模塊,整個(gè)電路系統(tǒng)體積相對較大,增加了系統(tǒng)的調(diào)試難度,不滿足現(xiàn)代社會(huì)發(fā)展的需求。方案二采用的以單片機(jī)為核心,電路整體簡單,擴(kuò)展性良好,很大程度上降低了調(diào)試難度,但是不滿足本次課題

35、基于 VHDL語言的要求,所以不采用。方案三以 CPLD器件為核心,以 VHDL語言為基礎(chǔ),編程具有很大的靈活性,而且這種語言也易于掌握和理解,調(diào)試和修改都比較容易,滿足課題的要求,所以最終選擇方案三。3.2具體設(shè)計(jì)以及模塊劃分設(shè)計(jì)方案:該設(shè)計(jì)分為6 個(gè)基本模塊:標(biāo)準(zhǔn)信號電路、信號燈控制電路、信號燈、各定時(shí)單元電路、顯示控制電路、譯碼顯示電路,組成框圖如上圖3.3 。標(biāo)準(zhǔn)信號為整個(gè)電路提供1Hz 信號,信號燈控制電路控制8 路燈的亮滅,定時(shí)電路分為45s 、10s、 5s、60s 定時(shí)單元,分別控制8 路燈的亮滅時(shí)間,顯示控制電路控制每一路燈的倒計(jì)時(shí)顯示時(shí)間,譯碼后通過數(shù)碼管顯示。3.3工作原

36、理交通燈的亮滅規(guī)律為:甲車道的綠燈亮,乙車道的紅燈亮,甲車道通車,經(jīng)45s 后,甲車道綠燈滅,甲車道左拐燈亮,經(jīng)10s 后,甲車道黃燈開始閃爍,同時(shí)乙車道黃燈開始閃爍,閃爍5s 后,甲車道紅燈亮,而同時(shí)乙車道的綠燈亮,乙車道開始通車,經(jīng)45s 后,乙車道綠燈滅,乙車道的左拐燈亮,經(jīng)10s 后,甲乙車道黃燈同時(shí)開始閃爍。閃爍5s 后,再切換到甲車道,重復(fù)上述過程。在試驗(yàn)箱開始表示甲路的綠色發(fā)光二極管亮45s ,然后依次是表示左拐的藍(lán)色二極管亮10s 和黃色二極管亮 5s,此過程乙路的紅色二極管亮60s ;此后乙路的綠色發(fā)光二極管,藍(lán)色發(fā)光二極管和黃色發(fā)光二極管依次亮 45s 、10s 、 5s,

37、此過程甲路紅色發(fā)光二極管亮 60s。重復(fù)以上過程。在試驗(yàn)過程中的四個(gè)數(shù)碼管,分兩個(gè)為一組,前一組表示甲路的倒計(jì)時(shí)時(shí)間,后一組表示乙路的倒計(jì)時(shí)時(shí)間。3.4交通燈工作示意圖十字路口的東西方向和南北方向分別安裝紅、綠、黃、藍(lán)交通信號燈,設(shè)置示意圖如圖3.4所示。南北方向和東西方向各設(shè)四路信號燈,分別代表紅燈、黃燈、綠燈、左拐燈。交通規(guī)則明確顯示必須按照交通指示燈來執(zhí)行,尤其是左拐,只有在左拐燈亮的時(shí)候才可以左拐。圖3.4 只是模擬的交通示意圖,但是結(jié)合上述原理很容易理解。圖 3.4 交通燈工作示意圖4系統(tǒng)設(shè)計(jì)4.1 頂層電路設(shè)計(jì)交通燈控制器的頂層電路圖是采用硬件描述語言設(shè)計(jì)的一個(gè)復(fù)雜電路系統(tǒng),而且采

38、用自頂向下的設(shè)計(jì)思想,將系統(tǒng)按功能逐層分割的層次化設(shè)計(jì)方法。在頂層設(shè)計(jì)中,要對內(nèi)部各功能模塊的連接關(guān)系和對外的接口關(guān)系進(jìn)行描述,而功能模塊實(shí)際的邏輯功能和具體的實(shí)現(xiàn)形式則由下一層模塊來描述。系統(tǒng)的頂層電路如圖4.1 , CLK為整個(gè)電路提供1Hz 的標(biāo)準(zhǔn)信號,用四個(gè)定時(shí)單元60s 、 45s、10s、 5s 分別控制四盞交通指示燈的倒計(jì)時(shí)顯示時(shí)間,交通燈控制部分JTDKZ控制交通燈的每一種狀態(tài),顯示控制部分XSKZ部分主要控制交通燈的亮滅時(shí)間,圖中譯碼器是47 譯碼器,譯碼后數(shù)據(jù)輸出到共陰數(shù)碼管。圖4.1頂層電路圖4.2交通燈主制模塊主要控制部分分別列出四種顏色燈的亮滅狀態(tài),分為六種狀態(tài) A、

39、 B、 C、D、E、F,每種狀態(tài)的持續(xù)時(shí)間也即是對應(yīng)控制每一路的四種燈亮的時(shí)間。如圖 4.2 交通燈控制模塊生成的器件, CLK 是輸入標(biāo)準(zhǔn)時(shí)鐘信號, AR、AY、 AG、 AL 為輸出信號控制甲車道的四盞指示燈, BR、 BY、 BG、 BL 為輸出信號控制乙車道的四盞指示燈,部分程序如下:entity jtdkz isport(clk:in std_logic;ar,ay,ag,al,br,by,bg,bl:out std_logic); -定義各路信號燈end entity jtdkz;architecture art of jtdkz istype state_type is(A,B,

40、C,D,E,F); -signal state:state_type;begincnt:process(clk)is信號燈的亮滅狀態(tài)分為六種variable s:integer range 0 to 60;-整形變量s 范圍0 到60when A=>ar<='0'ay<='0'ag<='1'al<='0'-A狀態(tài)各路燈的亮滅br<='1'by<='0'bg<='0'bl<='0'if s=45 then-a路綠燈亮

41、狀態(tài)持續(xù)45sstate<=B;clr:='0'en:='0'elsestate<=A;clr:='1'en:='1'4.3定時(shí)單元以及顯示控制、譯碼電路( 1)45s 定時(shí)單元控制兩路綠燈的顯示時(shí)間,從DOUT45端口輸出到顯示控制模塊的AIN45口, 45s 定時(shí)單元模塊生成器件如圖4.3 所示, EN45A、 EN45B分別甲路和乙路綠燈的使能信號控制端應(yīng)該哪一路的綠燈亮。45s 定時(shí)單元主要的VHDL程序段如下:entity cnt45s isport (clk,en45a,en45b:in std_logic

42、;輸入的標(biāo)準(zhǔn)時(shí)鐘和使能信號dout45:out std_logic_vector(7 downto 0);-輸出 8 位二進(jìn)制數(shù)end entity cnt45s;architecture art of cnt45s issignal cnt6b:std_logic_vector(5 downto 0);beginprocess(clk, en45a,en45b) isbeginif(clk'event and clk='1') thenif en45a='1'or en45b='1' then cnt6b<=cnt6b+1;-控制

43、輸出數(shù)據(jù)else cnt6b<="000000"(2) 60s 定時(shí)單元控制兩路紅燈的顯示時(shí)間,從DOUT60端口輸出到顯示控制模塊的AIN60口, 60s 定時(shí)單元模塊生成器件如圖4.4 所示, EN60A、 EN60B分別甲路和乙路紅燈的使能信號控制端應(yīng)該那一路紅燈亮。60s 定時(shí)單元的主要程序段如下:entity cnt60s isport (clk,en60a,en60b:in std_logic; - dout60:out std_logic_vector(7 downto 0);-輸入的標(biāo)準(zhǔn)時(shí)鐘和使能信號輸出 8 位二進(jìn)制數(shù)end entity cnt60

44、s;architecture art of cnt60s issignal cnt6b:std_logic_vector(5 downto 0);beginprocess(clk, en60a,en60b) isbeginif(clk'event and clk='1') thenif en60a='1'or en60b='1' then cnt6b<=cnt6b+1; -使能信號控制else cnt6b<="000000"( 3)10s 定時(shí)單元控制兩路左拐燈的顯示時(shí)間,口, 10s 定時(shí)單元模塊生成器件

45、如圖 4.5 所示,從 DOUT10端口輸出到顯示控制模塊的AIN10EN10A、 EN10B分別甲路和乙路紅燈的使能信號控制端應(yīng)該那一路紅燈亮。10s 定時(shí)單元的主要程序段如下:entity cnt10s isport (clk,en10a,en10b:in std_logic;-輸入的標(biāo)準(zhǔn)時(shí)鐘和使能信號dout10:out std_logic_vector(7 downto 0); -輸出 8 位二進(jìn)制數(shù)end entity cnt10s;architecture art of cnt10s issignal cnt4b:std_logic_vector(3 downto 0);begin

46、process(clk, en10a,en10b) isbeginif(clk'event and clk='1') thenif en10a='1'or en10b='1' then cnt4b<=cnt4b+1;-使能信號的控制else cnt4b<="0000"(4) 5s定時(shí)單元控制兩路黃燈的顯示時(shí)間,從DOUT5端口輸出到顯示控制模塊的AIN5端口,5s定時(shí)單元模塊生成器件如圖4.6 所示,EN5A、EN5B分別甲路和乙路紅燈的使能信號控制應(yīng)該那一路紅燈亮。 5s 定時(shí)單元的主要程序段如下:ent

47、ity cnt5s isport (clk,en5a,en5b:in std_logic; -輸入的標(biāo)準(zhǔn)時(shí)鐘和使能信號dout5:out std_logic_vector(7 downto 0); -輸出的 8 位二進(jìn)制數(shù)end entity cnt5s;architecture art of cnt5s issignal cnt3b:std_logic_vector(2 downto 0);beginprocess(clk, en5a,en5b) isbeginif(clk'event and clk='1') thenif en5a='1'or en5b='1' then cnt3b<=cnt3

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(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)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論