




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、 交通燈信號控制器設(shè)計 學(xué) 院: 信息工程學(xué)院專 業(yè): 通信工程班 級:姓 名:指導(dǎo)教師: 完成日期: 2010年6月1日目 錄引言1一緒論1(一)課題背景與意義1(二)課題任務(wù)要求2二 FPGA技術(shù)與開發(fā)工具介紹2(一) FPGA芯片2(二)VHDL語言簡介4(三) MAX+PLUS II軟件6三基于VHDL交通燈控制器設(shè)計和仿真7(一)設(shè)計思想介紹7(二)系統(tǒng)各功能模塊的實(shí)現(xiàn)8(三)系統(tǒng)綜合設(shè)計與仿真10(四)軟件調(diào)試過程中遇到的問題11四系統(tǒng)調(diào)試與實(shí)現(xiàn)12(一)GW48-CK系統(tǒng)概述12(二) GW48-CK系統(tǒng)工作原理13(三)實(shí)驗電路與管腳定義14(四)實(shí)驗箱上驗證時遇到的一些問題1
2、6(五)交通燈信號控制硬件測試16五畢業(yè)設(shè)計總結(jié)20結(jié)束語21參考文獻(xiàn)21摘 要自從交通燈誕生以來,其部的電路控制系統(tǒng)就不斷的被改進(jìn),設(shè)計方法也開始多種多樣,從而使交通燈顯得更加智能化。本設(shè)計主要在 MAX+plus環(huán)境下運(yùn)用VHDL進(jìn)行交通燈信號控制設(shè)計,并在GW48-CK型開發(fā)實(shí)驗箱上的FPGA器件EPF10K10LC84-4芯片上進(jìn)行硬件模擬實(shí)現(xiàn)。關(guān)鍵詞:智能化,交通燈,VHDL,MAX+plusAbstractSince the inception of traffic lights, the internal of the circuit control systems have b
3、een continuously improved ,and start variety of design,which make the traffic lights more intelligent . The design mainly using VHDL for traffic signal control design in the MAX + plus environment, and Conduct Hardware Simulation in the device EPF10K10LC84-4 chip of FPGA in GW48-CK-type development
4、boxKeyword:IntelligentTraffic lights VHDL MAX + plus 引 言隨著電子設(shè)計自動化(EDA)的發(fā)展,電子系統(tǒng)的設(shè)計技術(shù)和設(shè)計工具發(fā)生了深刻的變化。利用硬件描述語言對數(shù)字系統(tǒng)的硬件電路進(jìn)行描述是EDA的關(guān)鍵技術(shù)之一。VHDL (Very High Speed Integrated Circuit Hardware Description Language)語言是目前主流的硬件描述語言,它具有很強(qiáng)的電路描述和建模能力,且有與具體硬件電路無關(guān)和與設(shè)計平臺無關(guān)的特性,在語言易讀性和層次化結(jié)構(gòu)設(shè)計方面表現(xiàn)出強(qiáng)大的生命力和應(yīng)用潛力。在城市車流量日益增加的今天
5、,交通信號控制器扮演著越來越重要的角色。目前交通信號控制器可采用MCU、PLC和PLD等多種形式進(jìn)行控制。其中采用MCU進(jìn)行控制的特點(diǎn)是系統(tǒng)可塑性較強(qiáng),控制模式靈活多樣,但系統(tǒng)的組成除單片機(jī)芯片外還需要擴(kuò)展較多的外圍電路;采用PLC進(jìn)行控制的特點(diǎn)是編程較方便,容易擴(kuò)展輸入輸出通道,但系統(tǒng)硬件成本較高;采用PLD器件進(jìn)行控制的特點(diǎn)是控制簡單靈活,僅需要配置簡單的外圍電路即可實(shí)現(xiàn)特定的功能,這對于簡化交通信號控制器的設(shè)計、普與交通信號控制器的應(yīng)用將起到積極的推動作用。文中采用VHDL語言,運(yùn)用計數(shù)器設(shè)計方法對交通信號控制器進(jìn)行設(shè)計,并且利用EDA開發(fā)工具M(jìn)AX+PLUS II對代碼分別進(jìn)行全程編譯
6、和仿真,最后在FPGA器件上進(jìn)行下載驗證一 緒 論本設(shè)計系統(tǒng)是基于VHDL的模擬交通燈控制系統(tǒng),具有一定的現(xiàn)實(shí)意義。本課題的目的是以VHDL為基礎(chǔ),通過可編程邏輯器件CPLD/FPGA 的EPF10K10LC84-4,LED數(shù)碼管顯示和LED燈完成十字路口的工作狀態(tài)模擬,并且通過按鍵有效的監(jiān)視控制主,支干道是否有車輛通過,由監(jiān)控結(jié)果自動調(diào)節(jié)主,支干道的放行時間,等待時間和狀態(tài)轉(zhuǎn)換時間。(一) 課題背景與意義隨著社會經(jīng)濟(jì)的發(fā)展,城市交通問題越來越引起人們的關(guān)注。人、車、路三者關(guān)系的協(xié)調(diào),已成為交通管理部門需要解決的重要問題之一。城市交通控制系統(tǒng)是用于城市交通數(shù)據(jù)監(jiān)測、交通信號燈控制與交通疏導(dǎo)的計
7、算機(jī)綜合管理系統(tǒng),它是現(xiàn)代城市交通監(jiān)控指揮系統(tǒng)中最重要的組成部分。隨著城市機(jī)動車量的不斷增加,許多大城市如、等出現(xiàn)了交通超負(fù)荷運(yùn)行的情況,因此,自80年代后期,這些城市紛紛修建城市高速道路,在高速道路建設(shè)完成的初期,它們也曾有效地改善了交通狀況。然而,隨著交通量的快速增長和缺乏對高速道路的系統(tǒng)研究和控制,高速道路沒有充分發(fā)揮出預(yù)期的作用。而城市高速道路在構(gòu)造上的特點(diǎn),也決定了城市高速道路的交通狀況必然受高速道路與普通道路耦合處交通狀況的制約。所以,如何采用合適的控制方法,最大限度利用好耗費(fèi)巨資修建的城市高速道路,緩解主干道與匝道、城區(qū)同周邊地區(qū)的交通擁堵狀況,越來越成為交通運(yùn)輸管理和城市規(guī)劃部
8、門亟待解決的主要問題。和諧的城市交通具有很重要的現(xiàn)實(shí)意義。城市交通是城市經(jīng)濟(jì)生活的命脈,是衡量一個城市文明進(jìn)步的標(biāo)志,對于城市經(jīng)濟(jì)的發(fā)展和人們說水平的提高起著十分重要的作用。作為城市交通網(wǎng)的主要組成部分,交叉口是道路通行能力的瓶頸和交通堵塞與事故的多發(fā)地。城市的交通堵塞,大部分由于交叉口的通行能力不足或沒有充分利用造成的,這導(dǎo)致車流中斷,事故增多,延誤嚴(yán)重。對交叉口實(shí)行科學(xué)的管理與控制是交通控制工程的重要研究課題,是保障交叉口的交通安全和充分發(fā)揮交叉口的通行能力的重要措施,是解決城市交通問題的有效途徑。(二)課題任務(wù)要求1.運(yùn)用VHDL實(shí)現(xiàn)對十字路口交通燈信號控制編程,在MAX+PLUS II
9、環(huán)境編譯,仿真,綜合,并在GW48-CK型開發(fā)實(shí)驗箱上實(shí)現(xiàn)硬件驗證。2. 主干道和支道交叉路口的信號燈控制:優(yōu)先保證主干道的暢通 。平時處于“主干道綠燈,支道紅燈”狀態(tài),只有在支道有車輛通行要穿行主干道時,才將交通燈切向“主干道紅燈支道綠燈” 此外,每次通行時間不得短于30S,狀態(tài)交換過程出現(xiàn)的狀態(tài)持續(xù)時間都為4S二 FPGA技術(shù)與開發(fā)工具介紹(一) FPGA芯片1. FPGA的結(jié)構(gòu)特點(diǎn)盡管FPGA和CPLD與其他類型的PLD的結(jié)構(gòu)各有其特點(diǎn)和長處,但概括起來,它們是由三大部分組成的:二維的可配置邏輯功能模塊(ConfigurableLogic Blocks, CLB),構(gòu)成了PLD器件的邏輯
10、組成核心;輸入輸出模塊(Input/Output Blocks, IOB),連接邏輯塊的互連資源;可編程部互連資源(Programmable Interconnection, PI),由各種長度的連線線段組成,其中也有一些可編程的連接開關(guān),用于邏輯快之間、邏輯快與輸入/輸出塊之間的連接。2.FPGA的優(yōu)點(diǎn)FPGA芯片是特殊的ASIC芯片,除了具有ASIC的特點(diǎn)之外,還具有以下幾個優(yōu)點(diǎn):(1)隨著超大規(guī)模集成電路VLSI(Very Large Scale IC)工藝的不斷提高,單一芯片部可以容納上百萬個晶體管。FPGA芯片的規(guī)模也越來越大,其單片邏輯門數(shù)已經(jīng)達(dá)到上百萬門,所能實(shí)現(xiàn)的功能也越來越強(qiáng)
11、,同時還可以實(shí)現(xiàn)系統(tǒng)集成。(2)FPGA芯片在出廠前100都做過測試,不需要設(shè)計人員承擔(dān)投片風(fēng)險和費(fèi)用。設(shè)計人員只需在自己的實(shí)驗室里就可以通過相關(guān)的軟硬件環(huán)境來完成芯片的最終功能設(shè)計。所以,F(xiàn)PGA投入資金少,節(jié)省了許多潛在的花費(fèi)。(3)用戶可以反復(fù)的編程、擦除、使用,或者在外圍電路部動的情況下,用不同軟件就可以實(shí)現(xiàn)不同的功能;因此,用FPGA試制樣片,能以最快的速度占領(lǐng)市場。FPGA軟件包中有各種輸入工具、仿真工具、版圖設(shè)計工具與編程器等全線產(chǎn)品,使電路設(shè)計人員在很短的時間就可以完成電路的輸入、編譯、優(yōu)化、仿真,直至最后芯片的制作。當(dāng)電路中有少量改動時,更能顯示出FPGA的優(yōu)勢。電路設(shè)計人員
12、使用FPGA進(jìn)行電路設(shè)計時,不需要具備專門的IC深層次的知識。FPGA軟件易學(xué)易用,可以使設(shè)計人員集中精力進(jìn)行電路設(shè)計,快速將產(chǎn)品推向市場。3.FPGA的分類和使用在FPGA開發(fā)軟件中完成設(shè)計以后,軟件會產(chǎn)生一個最終的編程文件(如:.pof)。如何將編程文件燒到FPGA芯片上呢?(1)SRAM BaseSRAM Base的FPGA本身就像一個SRAM,在開機(jī)后其必須經(jīng)過一個稱為Configuration(配置)的過程。Configuration可將設(shè)計加載到電路板上的FPGA中,其方式一般通過各家廠商提供的特殊Download cable(下載電纜),或是在FPGA旁邊加塊PROM的方式實(shí)現(xiàn)。
13、但在關(guān)機(jī)后,F(xiàn)PGA的容消失,直到下次重新開機(jī)Configuration后,F(xiàn)PGA才能恢復(fù)正常的功能,Altera、Xilinx、Lucent等公司都采用這種方式,也是現(xiàn)在用的最多一種方式。由于LUT (Look-up table)主要適合SRAM工藝生產(chǎn),所以目前大部分FPGA都是基于SRAM工藝的,而SRAM工藝的芯片在掉電后信息就會丟失,一定需要外加一片專用配置芯片,在上電的時候,由這個專用配置芯片把數(shù)據(jù)加載到FPGA中,然后FPGA就可以正常工作,由于配置時間很短,不會影響系統(tǒng)正常工作。(2)Anti-FuseAnti-Fuse(反熔絲)的FPGA本身則像一個fuse-array,將
14、設(shè)計載入FPGA的過程一般稱為刻錄,因為它是將FPGA的fuse熔斷,因此在執(zhí)行這個動作以后,F(xiàn)PGA的功能就固定了,即使掉電后重起其功能仍然存在。對于這種FPGA,就不需要外加專用的配置芯片。但是這種方式的FPGA只能寫一次,所以危險性很大,初期的開發(fā)過程比較麻煩,費(fèi)用也比較高。但反熔絲技術(shù)也有許多優(yōu)點(diǎn):布線能力更強(qiáng),系統(tǒng)速度更快,功耗更低,同時抗輻射能力強(qiáng),可耐高低溫,可以加密,所以它在一些有特殊要求的領(lǐng)域中運(yùn)用更多,如軍事與航空航天。(二)VHDL語言簡介VHDL語言是一種用于電路設(shè)計的高級語言。它在80年代的后期出現(xiàn)。最初是由美國國防部開發(fā)出來供美軍用來提高設(shè)計的可靠性和縮減開發(fā)周期的
15、一種使用圍較小的設(shè)計語言 。但是,由于它在一定程度上滿足了當(dāng)時的設(shè)計需求,于是他在1987年成為ANSI/IEEE的標(biāo)準(zhǔn)(IEEE STD 1076-1987)。1993年更進(jìn)一步修訂,變得更加完備,成為ANSI/IEEE的ANSI/IEEE STD 1076-1993標(biāo)準(zhǔn)。目前,大多數(shù)的CAD廠商出品的EDA軟件都兼容了這種標(biāo)準(zhǔn)。VHDL的英文全寫是:VHSIC(Very High Speed Integrated Circuit)Hardware Descriptiong Lang
16、uage.翻譯成中文就是超高速集成電路硬件描述語言。因此它的應(yīng)用主要是應(yīng)用在數(shù)字電路的設(shè)計中。目前,它在中國的應(yīng)用多數(shù)是用在FPGA/CPLD/EPLD的設(shè)計中。1. VHDL的優(yōu)點(diǎn):當(dāng)前ASIC制造商都自己開發(fā)了HDL語言,但是都不通用,只有美國國防部開發(fā)的VHDL語言成為了IEEE. STD_1076標(biāo)準(zhǔn),并在全世界得到了承認(rèn)。該語言集成了各種HDL語言的優(yōu)點(diǎn),使數(shù)字系統(tǒng)設(shè)計更加簡單和容易。其具體優(yōu)點(diǎn)如下:(1) VHDL 語言功能強(qiáng)大 , 設(shè)計方式多樣VHDL 語言具有強(qiáng)大的語言結(jié)構(gòu), 只需采用簡單明確的VHDL語言程序就可以描述十分復(fù)雜的硬件電路。同時, 它還具有多層次的電路設(shè)計描述功
17、能。此外 ,VHDL 語言能夠同時支持同步電路、異步電路和隨機(jī)電路的設(shè)計實(shí)現(xiàn), 這是其他硬件描述語言所不能比擬的。VHDL 語言設(shè)計方法靈活多樣 , 既支持自頂向下的設(shè)計方式, 也支持自底向上的設(shè)計方法; 既支持模塊化設(shè)計方法, 也支持層次化設(shè)計方法。(2) VHDL 語言具有強(qiáng)大的硬件描述能力VHDL 語言具有多層次的電路設(shè)計描述功能,既可描述系統(tǒng)級電路 , 也可以描述門級電路;描述方式既可以采用行為描述、寄存器傳輸描述或者結(jié)構(gòu)描述,也可以采用三者的混合描述方式。同時,VHDL 語言也支持慣性延遲和傳輸延遲,這樣可以準(zhǔn)確地建立硬件電路的模型。VHDL 語言的強(qiáng)大描述能力還體現(xiàn)在它具有豐富的數(shù)
18、據(jù)類型。VHDL 語言既支持標(biāo)準(zhǔn)定義的數(shù)據(jù)類型,也支持用戶定義的數(shù)據(jù)類型,這樣便會給硬件描述帶來較大的自由度。(3) VHDL 語言具有很強(qiáng)的移植能力VHDL 語言很強(qiáng)的移植能力主要體現(xiàn)在: 對于同一個硬件電路的 VHDL 語言描述 , 它可以從一個模擬器移植到另一個模擬器上、從一個綜合器移植到另一個綜合器上或者從一個工作平臺移植到另一個工作平臺上去執(zhí)行。(4) VHDL 語言的設(shè)計描述與器件無關(guān)采用 VHDL 語言描述硬件電路時, 設(shè)計人員并不需要首先考慮選擇進(jìn)行設(shè)計的器件。這樣做的好處是可以使設(shè)計人員集中精力進(jìn)行電路設(shè)計的優(yōu)化, 而不需要考慮其他的問題。當(dāng)硬件電路的設(shè)計描述完成以后 ,VH
19、DL 語言允許采用多種不同的器件結(jié)構(gòu)來實(shí)現(xiàn)。(5) VHDL 語言程序易于共享和復(fù)用VHDL 語言采用基于庫 ( library) 的設(shè)計方法。在設(shè)計過程中 , 設(shè)計人員可以建立各種可再次利用的模塊 , 一個大規(guī)模的硬件電路的設(shè)計不可能從門級電路開始一步步地進(jìn)行設(shè)計 , 而是一些模塊的累加。這些模塊可以預(yù)先設(shè)計或者使用以前設(shè)計中的存檔模塊, 將這些模塊存放在庫中 , 就可以在以后的設(shè)計中進(jìn)行復(fù)用(6)VHDL的使用非常靈活VHDL最初是作為一種仿真標(biāo)準(zhǔn)格式出現(xiàn)的,有著豐富的仿真語句和庫函數(shù)。使其在任何大系統(tǒng)的設(shè)計中,隨時可對設(shè)計進(jìn)行仿真模擬。所以,即使在遠(yuǎn)離門級的高層次(即使設(shè)計尚未完成時),
20、設(shè)計者就能夠?qū)φ麄€工程設(shè)計的結(jié)構(gòu)和功能的可行性進(jìn)行查驗,并做出決策。2. VHDL設(shè)計電路主要的工作過程(1)編輯用文本編輯器輸入設(shè)計的源文件(為了提高輸入效率,可用某些專用編輯器)。(2)編譯用編譯工具將文本文件編譯成代碼文件,并檢查語法錯誤。(3)功能仿真(前仿真)在編譯前進(jìn)行邏輯功能驗證,此時的仿真沒有延時,對于初步的功能檢測非常方便。(4)綜合將設(shè)計的源文件用自動綜合工具由語言轉(zhuǎn)換為實(shí)際的電路圖(門電路級網(wǎng)表),但此時還沒有在芯片中形成真正的電路,就好像是把設(shè)計者腦海中的電路畫成了原理圖。(5)布局、布線用已生成的網(wǎng)表文件,再根據(jù)CPLD(或FPGA)器件的容量和結(jié)構(gòu),用自動布局布線工
21、具進(jìn)行電路設(shè)計。首先根據(jù)網(wǎng)表文件容和器件結(jié)構(gòu)確定邏輯門的位置,然后再根據(jù)網(wǎng)表提供的門連接關(guān)系,把各個門的輸入輸出連接起來,類似于設(shè)計PCB(印刷電路板)時的布局布線工作。最后生成一個供器件編程(或配置)的文件,同時還會在設(shè)計項目中增加一些時序信息,以便于后仿真。(6)后仿真(時序仿真)這是與實(shí)際器件工作情況基本一樣的仿真,用來確定設(shè)計在經(jīng)過布局、布線之后,是否仍能滿足設(shè)計要求。如果設(shè)計的電路時延滿足要求,則可以進(jìn)行器件編程(或配置)。(三) MAX+PLUS II軟件Max+plus是世界上最大可編程邏輯器件的供應(yīng)商之一Altera公司推出的一款FPGA/CPLD開發(fā)平臺。它具有多種原理圖輸入
22、和文本輸入(采用硬件語言)兩種輸入手段,如原理圖輸入和文本輸入(采用硬件語言)。具備編輯,編譯,仿真,綜合,下載等功能。用戶可以在此軟件中完成從源代碼輸入到最后燒制到芯片的全部開發(fā)工作。雖然此軟件支持的VHDL語句比專業(yè)的仿真和綜合工具要少,但是由于它的簡單易用和All-in-one(全部功能都集成在一個軟件中)特征,在國高等院校教學(xué)中得到廣泛的應(yīng)用。1. MAX+PLUS II電路設(shè)計流程:(1) 設(shè)計輸入 MAX + plus 支持多種設(shè)計輸入方式,如原理圖輸入、波形輸入、文本輸入和它們的混合輸入。本文采用的事VHDL文本輸入。 (2)設(shè)計
23、處理 設(shè)計輸入完后,用MAX + plus 的編譯器編譯、查錯、修改直到設(shè)計輸入正確,同時將對輸入文件進(jìn)行邏輯簡化、優(yōu)化,最后生成一個編程文件。 這是設(shè)計的核心環(huán)節(jié)。 (3)設(shè)計檢查MAX + plus 為設(shè)計者提供完善的檢查方法設(shè)計仿真和定時分析。其目的是檢驗電路的邏輯功能是否正確,同時測試目標(biāo)器件在最差情況下的時延。這一查錯過程對于檢驗組合邏輯電路的競爭冒險和時序邏輯電路的時序、時延等至關(guān)重要。 (4) 器件編程 當(dāng)電路設(shè)計、校驗之后,MAX+plus 的Pro
24、grammer 將編譯器所生成的編譯文件下載到具體的CPLD 器件中,即實(shí)現(xiàn)目標(biāo)器件的物理編程 。結(jié)構(gòu)流程圖如下所示:圖2.1三 基于VHDL交通燈控制器設(shè)計和仿真(一) 設(shè)計思想介紹欲設(shè)計一個由一條主干道和一條支干道的匯合點(diǎn)形成的十字交叉路口的交通燈控制器,具體要求如下:1.主,支干道各設(shè)一個黃,綠,紅指示燈,兩個顯示數(shù)碼管。 2.支干道沒有車輛通過時,主干道處于常允許通行狀態(tài)。3.當(dāng)主干道無車輛通行而支干道有車輛通行時,主干道狀態(tài)燈由“紅綠黃”周期顯示,支干道狀態(tài)燈由“綠黃紅”周期顯示。4.當(dāng)主、支道均有車時,主干道狀態(tài)燈由“綠黃紅”周期顯示,支干道狀態(tài)燈由“
25、紅綠黃”周期顯示。5.主,支干道允許通行(綠燈)時間均為35S,禁止通行(紅燈)時間均為39S,每次由亮綠燈到亮紅燈的轉(zhuǎn)換過程中,要亮4S的黃燈作為過渡,并進(jìn)行減計時顯示。整個結(jié)構(gòu)原理圖3.1如下所示:圖3.1 基于VHDL交通燈信號控制設(shè)計結(jié)構(gòu)原理圖(二)系統(tǒng)各功能模塊的實(shí)現(xiàn)1.計數(shù)器模塊:主要對clock時鐘的每一上升沿計數(shù),即實(shí)現(xiàn)秒計數(shù)。除此之外,還實(shí)現(xiàn)了對整個交通燈的狀態(tài)控制。圖3.2 計數(shù)器模塊圖形文件模塊功能實(shí)現(xiàn)主要程序部分見附錄1 2.控制器模塊: 實(shí)現(xiàn)對整個交通燈的功能控制,包括監(jiān)控主干道,支干道是否有普通車輛或特殊車輛通過;紅,黃,綠燈狀態(tài)轉(zhuǎn)變以與持續(xù)時間倒計時控制。圖3.3
26、 控制器模塊圖形文件 模塊功能實(shí)現(xiàn)主要程序部分見附錄2.3.分位器器模塊: 實(shí)現(xiàn)對紅,黃,綠燈狀態(tài)持續(xù)時間的分位作用,讓兩個數(shù)碼管能分別顯示十位,個位。圖3.4 控制器模塊圖形文件模塊功能實(shí)現(xiàn)主要程序部分見附錄3.(三)系統(tǒng)綜合設(shè)計與仿真 1.交通燈控制器頂層文件原理圖3.5如下所示:圖3.5 頂層文件原理圖2. MAX+PLUS II中的仿真如圖3.6所示:圖3.6 交通燈信號控制仿真波形Clock:時鐘輸入;Hold:特殊車輛監(jiān)控鍵。高電平時表示有特殊車輛通過,此時,主干道,支干道全變?yōu)榧t燈狀態(tài)且計數(shù)停止,變?yōu)榈碗娖胶笥嫈?shù)恢復(fù)正常。Mr: 主干道車量監(jiān)控鍵,高電平時表示有車連通過,反之則表
27、示無。Br: 支干道監(jiān)控鍵,高電平時表示有車連通過,反之則表示無。Reset:數(shù)碼管計數(shù)復(fù)位鍵,高電平時所有計數(shù)恢復(fù)到初始狀態(tài)。R,G,Y,R1,G1,Y1分別表示主,支干道的紅,綠,黃燈。(四) 軟件調(diào)試過程中遇到的問題由于大學(xué)期間應(yīng)用到VHDL的編程的設(shè)計較少,因此對VHDL沒有過系統(tǒng)的學(xué)習(xí),實(shí)踐經(jīng)驗就更少,以致在學(xué)習(xí)實(shí)踐過程中碰到了不少問題,但隨著學(xué)習(xí)的逐漸深入,不斷的練習(xí)實(shí)踐,這些問題也逐步解決了。1. 程序編譯過程中遇到的問題(1)首次編譯成功一個程序后,緊接著編譯第二個程序,提示框顯示編譯成功,可是在做頂層文件原理圖仿真時,一直提示有錯誤。后來經(jīng)過仔細(xì)檢查才發(fā)現(xiàn),原來我編譯第二個程
28、序時,沒有把工作文件設(shè)我當(dāng)前文件。(2)編譯文件時,跳出“type in waveform element must be “std_logic_vector” 錯誤提示框。后來經(jīng)過不斷查閱相關(guān)書籍,終于發(fā)現(xiàn)了問題所在:VHDL語言是一種強(qiáng)類型語言,對每個常數(shù),變量,信號等的數(shù)據(jù)類型都有一個要求,只有一樣數(shù)據(jù)類型的量,才能相互傳遞。我所編寫的程序數(shù)據(jù)輸出類型是std_logic_vector(),而信號聲明的數(shù)據(jù)類型為Integer,在數(shù)據(jù)傳遞過程中,我沒有經(jīng)過任何轉(zhuǎn)變,直接將信號值賦予輸出變量,所以出現(xiàn)了以上錯誤提示框。在所有數(shù)據(jù)類型更改為一致后,這個問題也就迎刃而解了。 2.程序仿真仿真中
29、遇到的問題將編譯成功的文件進(jìn)行波形仿真后,發(fā)現(xiàn)輸出信號的波形為一條直線,就是說沒有信號輸出。點(diǎn)擊“放大鏡”或者用鼠標(biāo)拖動波形圖下方滾動條,還是沒有波形變化。后來才發(fā)現(xiàn)原來我設(shè)置的“End time”太小了,以至于不能顯示完整的波形。解決方案:在波形文件下,點(diǎn)擊軟件“EDIT”下拉菜單,選擇“End time”,將其時間設(shè)的大些;同時也可以在波形文件下,選擇菜單“Option”下拉菜單,點(diǎn)擊“Grid size”將時鐘周期設(shè)置小些。四 系統(tǒng)調(diào)試與實(shí)現(xiàn)(一)GW48-CK系統(tǒng)概述1含Multi-task Reconfiguration電路結(jié)構(gòu)(多功能重配置結(jié)構(gòu),本公司設(shè)備特有)。該電路結(jié)構(gòu)由CPL
30、D和單片機(jī)聯(lián)合控制,能僅通過一個鍵,完成純電子切換(有的產(chǎn)品只能通過許多機(jī)械開關(guān)手動切換)的方式選擇12種不同的實(shí)驗系統(tǒng)硬件電路連接結(jié)構(gòu),大大提高了實(shí)驗系統(tǒng)的連線靈活性,但又不影響系統(tǒng)的工作速度(手工插線方式雖然靈活,但嚴(yán)重影響系統(tǒng)速度和電磁兼容性能,不適合高速FPGA/SOPC等電子系統(tǒng)實(shí)驗設(shè)計)。26大FPGA/CPLD公司下載功能和自動識別功能,即能對不同公司的FPGA/CPLD都可進(jìn)行實(shí)驗開發(fā)(此亦為本公司EDA產(chǎn)品特有的功能),如Altera、Xilinx、Lattice、Vantis、Atmel等;3FPGA/CPLD萬能接插口;智能譯碼模塊; 41Hz50MHz標(biāo)準(zhǔn)時鐘源; 數(shù)字
31、頻率計; 5含VGA、UART、PS/2、FPGA/單片機(jī)等接口; 6符合一般教學(xué)大綱的A/D和D/A;311構(gòu)成的A/D;7±12、5、3.3、2.5V混合電壓源; 8良好電磁兼容性的SX8200-J高速高密主板;9用于信號發(fā)生器實(shí)驗的有源濾波; 10除所有常規(guī)數(shù)字系統(tǒng)設(shè)計與驗證性實(shí)驗外,還包括許多設(shè)計與創(chuàng)新型實(shí)驗項目,如VGA口、PS/2、硬件RS232、FPGA對PC機(jī)通信、FPGA/CPLD開發(fā)、電子設(shè)計競賽培訓(xùn)與開發(fā)等40余種典型EDA實(shí)驗項目,11可以配不同規(guī)模的適配板,F(xiàn)PGA、CPLD、或模擬EDA(ispPAC)(二) GW48-CK系統(tǒng)工作原理GW48-CK系統(tǒng)結(jié)
32、構(gòu)原理圖4.1如下所示:圖4.1 GW48-CK系統(tǒng)結(jié)構(gòu)原理圖1BL1:實(shí)驗或開發(fā)所需的各類基本信號發(fā)生模塊。其中包括最多至8通道的單次脈沖信號發(fā)生器、高低電平信號發(fā)生器、BCD碼或16進(jìn)制碼(8421碼)信號發(fā)生器。所有這些信號的發(fā)生主要由BL6主控單元產(chǎn)生,并受控于系統(tǒng)板上的8個控制鍵。 2BL5:CPLD/FPGA輸出信息顯示模塊,其中包括直通非譯碼顯示、BCD七段譯碼顯示、16進(jìn)制全碼七段譯碼顯示、兩組8位發(fā)光管顯示、16進(jìn)制輸入信號顯示指示、聲響信號指示等。同樣,所有這些顯示形式與形式的變換皆由BL6轉(zhuǎn)換和獨(dú)立控制。3在BL6的監(jiān)控程序中安排了多達(dá)12種形式各異的信息矢量分布,即“電
33、路重構(gòu)軟配置”。由此可見,雖然GW48系統(tǒng)從硬件結(jié)構(gòu)上看,是一個完全固定下來的實(shí)驗系統(tǒng),但其功能結(jié)構(gòu)卻等同于12套實(shí)驗接口迥異的實(shí)驗系統(tǒng)(參見第二節(jié))。4BL3:此模塊主要是由一目標(biāo)芯片適配座以與上面的CPLD/FPGA 目標(biāo)芯片和編程下載電路構(gòu)成。通過更換目標(biāo)板,就能對多種目標(biāo)芯片進(jìn)行實(shí)驗。5BL6使GW48系統(tǒng)的應(yīng)用結(jié)構(gòu)靈活多變,實(shí)際應(yīng)用中,該模塊自動讀取BL7的選擇信息,以確定信息矢量分布。實(shí)驗前,可根據(jù)實(shí)驗類型,以與所需的CPLD/FPGA 目標(biāo)芯片的I/O接口位置,從14實(shí)驗電路結(jié)構(gòu)圖中找到相適應(yīng)的實(shí)驗系統(tǒng)功能結(jié)構(gòu),并將該圖的編號鍵入BL7,系統(tǒng)即刻進(jìn)入了所需要的接口和實(shí)驗?zāi)J?。(?/p>
34、)實(shí)驗電路與管腳定義1.實(shí)驗電路結(jié)構(gòu)圖:本次交通燈設(shè)計使用的是GW48CK型EDA實(shí)驗開發(fā)系統(tǒng)中的模式五,其電路結(jié)構(gòu)圖4.2如下:圖4.2電路結(jié)構(gòu)圖設(shè)計過程中所使用元器件:Mr由鍵4控制,Br由鍵3控制,Hold由鍵2控制,Reset由鍵1控制,D6,D7,D8,分別用以顯示主干道紅,黃,綠燈;D3,D2,D1分別用以顯示支干道綠,黃,紅燈。數(shù)碼管8,7分別顯示主干道倒計時的十位和個位,數(shù)碼管2,1分別顯示支干道倒計時的十位和個位。2. 管腳定義:設(shè)計所使用的芯片為EPF10K10LC84-4,由實(shí)際所選模式五電路結(jié)構(gòu)圖中所用元器件,管腳鎖定文件如表4.3所示:I/O標(biāo)識引腳名稱引腳號mrPI
35、O38brPIO27holdPIO16resetPIO05RPIO1525YPIO1424GPIO1323R1PIO817Y1PIO918G1PIO1019zhuganH3.0PIO47- PIO4479,78,73,72zhuganL3.0PIO43- PIO4071,70,67,66zhidaoH3.0PIO23- PIO2038,37,36,35zhidaoL3.0PIO19-PIO1630,29,28,27圖4.3管腳鎖定文件表(四) 實(shí)驗箱上驗證時遇到的一些問題1.程序的功能仿真和時序仿真編譯都已經(jīng)已經(jīng)通過了,在進(jìn)行程序下載燒制前,硬件設(shè)置中選擇byteblaster(mv)時,pa
36、rallel port與其他幾個口都是灰色,點(diǎn)擊ok,就彈出“can't find programming hardware”對話框。在經(jīng)過仔細(xì)檢查排錯后,終于發(fā)現(xiàn)我所使用的win XP 由于系統(tǒng)自保護(hù)機(jī)制,需要安裝下載電纜的驅(qū)動程序。安裝下載驅(qū)動后,一切工作正常。(五)交通燈信號控制硬件測試 1.GW48-CK型EDA實(shí)驗箱所用輸入輸出元件如4.4所示:圖4.4 GW48-CK型EDA實(shí)驗箱所用輸入輸出元件示意圖2.硬件測試結(jié)果:(1)當(dāng)支干道沒有車輛時(主干道可有車輛通過或者沒有車輛通過),此時,一直處于主干道綠燈,支干道紅燈狀態(tài),硬件結(jié)果如下所示:圖4.5.支干道沒有車輛通過時(
37、2)當(dāng)支干道有車輛通過且主干道沒有車輛通過時,主干道為紅燈,支干道為綠燈。此時,主干道數(shù)碼管進(jìn)行39S的倒計時計數(shù),然后主干道變?yōu)榫G燈,數(shù)碼管進(jìn)行35S的倒計時計數(shù),接著主干道變?yōu)辄S燈,主干道數(shù)碼管進(jìn)行4S的倒計時計數(shù),之后再轉(zhuǎn)為39S的紅燈狀態(tài),依次循環(huán);支干道數(shù)碼管首先進(jìn)行35S的綠燈倒計時計數(shù),然后是4S的黃燈倒計時計數(shù),接著是39S的紅燈倒計時計數(shù),之后變?yōu)榫G燈,依此循環(huán)。具體狀態(tài)結(jié)構(gòu)如圖4.6所示:圖4.6支道有車而主干道沒車的狀態(tài)結(jié)構(gòu)圖硬件實(shí)物結(jié)果圖4.7所示(按下復(fù)位鍵1,數(shù)碼管計數(shù)恢復(fù)至狀態(tài)初始值):圖4.7 支干道有車通過而主干道沒車輛通過時(3)當(dāng)支干道和主干道均有車輛通過
38、時,主干道為綠燈,支干道為紅燈。此時,支干道數(shù)碼管進(jìn)行39S的倒計時計數(shù),然后支干道變?yōu)榫G燈,數(shù)碼管進(jìn)行35S的倒計時計數(shù),接著支干道變?yōu)辄S燈,支干道數(shù)碼管進(jìn)行4S的倒計時計數(shù),之后再轉(zhuǎn)為39S的紅燈狀態(tài),依次循環(huán);主干道數(shù)碼管首先進(jìn)行35S的綠燈倒計時計數(shù),然后是4S的黃燈倒計時計數(shù),接著是39S的紅燈倒計時計數(shù),之后變?yōu)榫G燈,依此循環(huán)。具體結(jié)構(gòu)圖如4.8所示:圖4.8主干道與支干道均有車輛通過時的狀態(tài)結(jié)構(gòu)特硬件實(shí)物結(jié)果圖4.9所示(按下復(fù)位鍵1,數(shù)碼管計數(shù)恢復(fù)至狀態(tài)初始值):圖4.9 主干道和支干道均有車輛通過時(4)在任何狀態(tài)下,當(dāng)監(jiān)控到有特殊緊急車輛通過時。主干道與支干道均為紅燈,并且
39、數(shù)碼管停止計數(shù),特殊緊急車輛通過后,系統(tǒng)恢復(fù)原來狀態(tài),數(shù)碼管計數(shù)也恢復(fù)正常計數(shù)。硬件實(shí)物結(jié)果如4.10所示:圖4.10 有特殊緊急車輛通過時五 畢業(yè)設(shè)計總結(jié)通過此次畢業(yè)設(shè)計,我不僅把知識融會貫通,而且豐富了大腦,同時在查找資料的過程中也了解了許多課外知識,開拓了視野,認(rèn)識了將來電子的發(fā)展方向,使自己在專業(yè)知識方面和動手能力方面有了質(zhì)的飛躍。畢業(yè)設(shè)計是我作為一名學(xué)生即將完成學(xué)業(yè)的最后一次作業(yè),他既是對學(xué)校所學(xué)知識的全面總結(jié)和綜合應(yīng)用,又為今后走向社會的實(shí)際操作應(yīng)用鑄就了一個良好開端,畢業(yè)設(shè)計是我對所學(xué)知識理論的檢驗與總結(jié),能夠培養(yǎng)和提高設(shè)計者獨(dú)立分析和解決問題的能力;是我在校期間向?qū)W校所交的最后
40、一份綜和性作業(yè),從老師的角度來說,指導(dǎo)做畢業(yè)設(shè)計是老師對學(xué)生所做的最后一次執(zhí)手訓(xùn)練。其次,畢業(yè)設(shè)計的指導(dǎo)是老師檢驗其教學(xué)效果,改進(jìn)教學(xué)方法,提高教學(xué)質(zhì)量的絕好機(jī)會。畢業(yè)的時間一天一天的臨近,畢業(yè)設(shè)計也接近了尾聲。在不斷的努力下我的畢業(yè)設(shè)計終于完成了。在沒有做畢業(yè)設(shè)計以前覺得畢業(yè)設(shè)計只是對這幾年來所學(xué)知識的大概總結(jié),但是真的面對畢業(yè)設(shè)計時發(fā)現(xiàn)自己的想法基本是錯誤的。畢業(yè)設(shè)計不僅是對前面所學(xué)知識的一種檢驗,而且也是對自己能力的一種提高。通過這次畢業(yè)設(shè)計使我明白了自己原來知識太理論化了,面對單獨(dú)的課題的是感覺很茫然。自己要學(xué)習(xí)的東西還太多,以前老是覺得自己什么東西都會,什么東西都懂,有點(diǎn)眼高手低。通
41、過這次畢業(yè)設(shè)計,我才明白學(xué)習(xí)是一個長期積累的過程,在以后的工作、生活中都應(yīng)該不斷的學(xué)習(xí),努力提高自己知識和綜合素質(zhì)。 總之,不管學(xué)會的還是學(xué)不會的的確覺得困難比較多,真是萬事開頭難,不知道如何入手。最后終于做完了有種如釋重負(fù)的感覺。此外,還得出一個結(jié)論:知識必須通過應(yīng)用才能實(shí)現(xiàn)其價值!有些東西以為學(xué)會了,但真正到用的時候才發(fā)現(xiàn)是兩回事,所以我認(rèn)為只有到真正會用的時候才是真的學(xué)會了。在此要感我們的指導(dǎo)黃老師對我悉心的指導(dǎo),感老師們給我的幫助。在設(shè)計過程中,我通過查閱大量有關(guān)資料,與同學(xué)交流經(jīng)驗和自學(xué),并向老師請教等方式,使自己學(xué)到了不少知識,也經(jīng)歷了不少艱辛,但收獲同樣巨大。在整個設(shè)計中我懂得了
42、許多東西,也培養(yǎng)了我獨(dú)立工作的能力,樹立了對自己工作能力的信心,相信會對今后的學(xué)習(xí)工作生活有非常重要的影響。而且大大提高了動手的能力,使我充分體會到了在創(chuàng)造過程中探索的艱難和成功時的喜悅。雖然這個設(shè)計做的也不太好,但是在設(shè)計過程中所學(xué)到的東西是這次畢業(yè)設(shè)計的最大收獲和財富,使我終身受益。結(jié)束語利用MAX+plus II軟件平臺具有的強(qiáng)大仿真和應(yīng)用系統(tǒng)功能,以與在FPGA進(jìn)行數(shù)字系統(tǒng)設(shè)計時所具有的靈活方便,周期短的特點(diǎn)。采用VHDL硬件描述語言完成交通燈系統(tǒng)功能設(shè)計,并通過下載到GW48-CK型試驗箱,實(shí)現(xiàn)了基于FPGA器件的EPF10K10LC84-4交通燈系統(tǒng)控制的硬件測試。參考文獻(xiàn)1 黃任
43、, VHDL入門解惑經(jīng)典實(shí)例經(jīng)驗總結(jié) 航空航天大學(xué)2005.012 邢建平,曾繁泰,VHDL程序設(shè)計教程 清華大學(xué) 2005.113 松,王國棟. VHDL實(shí)用教程 電子科技大學(xué) 2001.14 鄒虹. 數(shù)字電路與邏輯設(shè)計 人民郵電 2008.035 明,松. 數(shù)字電子技術(shù)基礎(chǔ) 科學(xué) 2008.106恒,盧飛成.FPGA/VHDL快速工程實(shí)踐入門與提高.航空航天大學(xué)出版,2003.47羅勇,曉軍.基于FPGA的交通燈控制和實(shí)現(xiàn) 電子器件 2008年03期 8文暢.基于FPGA/CPLD和VHDL語言的交通燈控制系統(tǒng)設(shè)計 電腦知識與技術(shù)2007年第9期附錄:1.計數(shù)器模塊功能實(shí)現(xiàn)主要程序部分:P
44、1:process(clock,reset,hold) begin if rising_edge(clock) then if reset='1' then countnum<=0; elsif hold='1' then countnum<=countnum; else if countnum=77 then countnum<=0; else countnum<=countnum+1; end if; end if; end if; end process p1 ;2.控制器功能實(shí)現(xiàn)主要程序部分:P2: process(clock,m
45、r,br,hold,countnum) begin IF hold='1' then R<='1'R1<='1' G<='0' G1<='0' Y<='0'Y1<='0' ELSIF rising_edge(Clock) THEN IF (not br)='1' THEN R<='0'R1<='1' G<='1' G1<='0' Y<=
46、39;0'Y1<='0' NumA<=0;NumB<=0; ELSIF (br and not mr)='1' THEN IF CountNum<=38 THEN NumA<=39-CountNum; R<='1' G<='0' Y<='0' ELSIF CountNum<=73 THEN NumA<=74-CountNum; R<='0' G<='1' Y<='0' ELSE NumA<=78-Count
溫馨提示
- 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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 《先秦諸子哲學(xué)思想比較:大三哲學(xué)文化課教案》
- 養(yǎng)殖業(yè)合作飼養(yǎng)及利潤分配協(xié)議
- 電力工程設(shè)計與安裝施工合同
- 智能基金投資管理及銷售協(xié)議
- 烏江自刎的英雄故事征文
- 中小學(xué)生科普讀物讀后感
- 學(xué)校物業(yè)服務(wù)管理協(xié)議
- 農(nóng)業(yè)產(chǎn)業(yè)園區(qū)發(fā)展策略指南
- 2024-2025學(xué)年高二化學(xué)人教版選擇性必修3教學(xué)課件 第二章 第一節(jié) 烷烴
- 綠色環(huán)保項目合作框架協(xié)議
- 班級凝聚力主題班會12
- 初中語文“經(jīng)典誦讀與海量閱讀”校本課程實(shí)施方案
- 2025 春夏·淘寶天貓運(yùn)動戶外行業(yè)趨勢白皮書
- 西門子S7-1200 PLC應(yīng)用技術(shù)項目教程(第3版) 課件 1.認(rèn)識S7-1200PLC寬屏-(LAD+SCL)
- 《稅法》(第六版)全書教案電子講義
- 翻斗車司機(jī)安全培訓(xùn)
- 計算機(jī)軟件配置管理計劃規(guī)范
- 《勞動保障監(jiān)察條例》課件
- 中華人民共和國學(xué)前教育法
- 2021年廣東省公務(wù)員錄用考試《行測》題(鄉(xiāng)鎮(zhèn)卷)【原卷版】
- 2020年全國中學(xué)生生物學(xué)競賽聯(lián)賽試題真題(含答案解析)
評論
0/150
提交評論