![基于Verilog HDL出租車(chē)計(jì)費(fèi)器設(shè)計(jì)_第1頁(yè)](http://file3.renrendoc.com/fileroot_temp3/2022-1/13/1f94abc1-167e-4ce1-838e-5c633f321b86/1f94abc1-167e-4ce1-838e-5c633f321b861.gif)
![基于Verilog HDL出租車(chē)計(jì)費(fèi)器設(shè)計(jì)_第2頁(yè)](http://file3.renrendoc.com/fileroot_temp3/2022-1/13/1f94abc1-167e-4ce1-838e-5c633f321b86/1f94abc1-167e-4ce1-838e-5c633f321b862.gif)
![基于Verilog HDL出租車(chē)計(jì)費(fèi)器設(shè)計(jì)_第3頁(yè)](http://file3.renrendoc.com/fileroot_temp3/2022-1/13/1f94abc1-167e-4ce1-838e-5c633f321b86/1f94abc1-167e-4ce1-838e-5c633f321b863.gif)
![基于Verilog HDL出租車(chē)計(jì)費(fèi)器設(shè)計(jì)_第4頁(yè)](http://file3.renrendoc.com/fileroot_temp3/2022-1/13/1f94abc1-167e-4ce1-838e-5c633f321b86/1f94abc1-167e-4ce1-838e-5c633f321b864.gif)
![基于Verilog HDL出租車(chē)計(jì)費(fèi)器設(shè)計(jì)_第5頁(yè)](http://file3.renrendoc.com/fileroot_temp3/2022-1/13/1f94abc1-167e-4ce1-838e-5c633f321b86/1f94abc1-167e-4ce1-838e-5c633f321b865.gif)
版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、 基于Verilog HDL的出租車(chē)計(jì)費(fèi)器設(shè)計(jì)基于Verilog HDL的出租車(chē)計(jì)費(fèi)器設(shè)計(jì)學(xué)生姓名:李明洪 指導(dǎo)老師:肖紅光摘 要 本次課程設(shè)計(jì)主要是基于FPGA芯片,使用硬件描述語(yǔ)言Veriloh HDL,采用“自頂向下”的設(shè)計(jì)方法,編寫(xiě)一個(gè)出租車(chē)計(jì)費(fèi)器芯片,并使用Max+Plus II軟件仿真平臺(tái)。本文主要描述了出租車(chē)計(jì)費(fèi)器的設(shè)計(jì)思路與模塊劃分。把出租車(chē)計(jì)費(fèi)器劃分為五大模塊,共同實(shí)現(xiàn)了出租車(chē)計(jì)費(fèi)以及預(yù)置和模擬汽車(chē)啟動(dòng)、停止、暫停等功能,并動(dòng)態(tài)掃描顯示車(chē)費(fèi)數(shù)目。最后,使用Max+Plus II仿真平臺(tái)對(duì)每個(gè)模塊和主程序分別進(jìn)行了仿真,并對(duì)仿真出來(lái)的波形作了分析。關(guān)鍵詞 出租車(chē)計(jì)費(fèi); Veri
2、log HDL; Max+Plus II; 仿真The design of taxi meter based on Verilog HDLAbstract The course design is mainly based on FPGA chip, the use of hardware description language Veriloh HDL, using "top down " design method, the preparation of a taxi meter chip, and use the Max + Plus II software simu
3、lation platform. This paper describes the design idea of the taxi meter and module division. The taxi meter is divided into five modules together to achieve a taxi and analog auto billing and pre-start, stop, pause function, and dynamic scan showed the number of fare. Finally, using Max + Plus II si
4、mulation platform and the main program for each module were simulated, and the simulation from an analysis of the waveform.Keywords Taxi charges;Verilog HDL; Max+Plus II;Simulation1 引 言隨著中國(guó)城市化的快速發(fā)展,人們出行的選擇也會(huì)越來(lái)越多樣化,但是出租車(chē)作為一種重要的交通工具,也越來(lái)越多的被人們所選擇,雖然在大中城市,出租車(chē)已經(jīng)相當(dāng)普及,但是在一些小的城市,出租車(chē)行業(yè)也因?yàn)槌鞘谢M(jìn)程的加快而快速發(fā)展。當(dāng)然,出租車(chē)
5、的計(jì)費(fèi)器也由當(dāng)初的只能顯示路程的計(jì)費(fèi)方式變成現(xiàn)在的,能夠自主計(jì)費(fèi)以及打印發(fā)票和語(yǔ)音提示。根據(jù)出租車(chē)行業(yè)的需求,國(guó)內(nèi)各機(jī)械廠(chǎng)家紛紛推出國(guó)產(chǎn)計(jì)價(jià)器,傳統(tǒng)的出租車(chē)計(jì)費(fèi)器由于發(fā)展使用了十幾年,在穩(wěn)定性、成本、以及使用習(xí)慣上都具有一定的優(yōu)勢(shì)。Verilog HDL和VHDL是目前世界上最流行的兩種硬件描述語(yǔ)言(HDL:Hardware Description Language),均為IEEE標(biāo)準(zhǔn),被廣泛地應(yīng)用于基于可編程邏輯器件的項(xiàng)目開(kāi)發(fā)。二者都是在20世紀(jì)80年代中期開(kāi)發(fā)出來(lái)的,前者由Gateway Design Automation公司(該公司于1989年被Cadence公司收購(gòu))開(kāi)發(fā),后者由美國(guó)軍
6、方研發(fā)。 HDL語(yǔ)言以文本形式來(lái)描述數(shù)字系統(tǒng)硬件結(jié)構(gòu)和行為1,是一種用形式化方法來(lái)描述數(shù)字電路和系統(tǒng)的語(yǔ)言,可以從上層到下層來(lái)逐層描述自己的設(shè)計(jì)思想。即用一系列分層次的模塊來(lái)表示復(fù)雜的數(shù)字系統(tǒng),并逐層進(jìn)行驗(yàn)證仿真,再把具體的模塊組合由綜合工具轉(zhuǎn)化成門(mén)級(jí)網(wǎng)表,接下去再利用布局布線(xiàn)工具把網(wǎng)表轉(zhuǎn)化為具體電路結(jié)構(gòu)的實(shí)現(xiàn)。目前,這種自頂向下的方法已被廣泛使用。本文介紹了相關(guān)的軟件平臺(tái)Max+Plus II及硬件編程語(yǔ)言-Verilog HDL。主要論述了一個(gè)出租車(chē)計(jì)費(fèi)器從設(shè)計(jì)思路到系統(tǒng)仿真的整個(gè)設(shè)計(jì)過(guò)程。本次設(shè)計(jì)的目的就是在掌握計(jì)算機(jī)組成原理理論的基礎(chǔ)上,了解EDA技術(shù),掌握Verilog HDL硬件描
7、述語(yǔ)言的設(shè)計(jì)方法和思想,通過(guò)學(xué)習(xí)的Verilog HDL語(yǔ)言結(jié)合電子電路的設(shè)計(jì)知識(shí)理論聯(lián)系實(shí)際,掌握所學(xué)的課程知識(shí),通過(guò)本課程設(shè)計(jì),達(dá)到鞏固和綜合運(yùn)用計(jì)算機(jī)原理中的知識(shí),理論聯(lián)系實(shí)際,鞏固所學(xué)理論知識(shí),并且提高自己通過(guò)所學(xué)理論分析、解決計(jì)算機(jī)實(shí)際問(wèn)題的能力。通過(guò)這次EDA方面的課程設(shè)計(jì),可以提高我們對(duì)EDA領(lǐng)域及通信電路設(shè)計(jì)領(lǐng)域的認(rèn)識(shí),有利于培養(yǎng)我們?cè)谕ㄐ烹娐稥DA方面的設(shè)計(jì)能力。一人一題特別有利于鍛煉我們獨(dú)立分析問(wèn)題和解決問(wèn)題的能力。設(shè)計(jì)過(guò)程的復(fù)雜加老師的嚴(yán)格要求有益于培養(yǎng)我們嚴(yán)謹(jǐn)?shù)墓ぷ髯黠L(fēng)。2 理論基礎(chǔ)2.1 Verilog HDL語(yǔ)言的功能和設(shè)計(jì)方法Verilog HDL語(yǔ)言以文本形式來(lái)
8、描述數(shù)字系統(tǒng)硬件結(jié)構(gòu)和行為3,是一種用形式化方法來(lái)描述數(shù)字電路和系統(tǒng)的語(yǔ)言,可以從上層到下層來(lái)逐層描述自己的設(shè)計(jì)思想。即用一系列分層次的模塊來(lái)表示復(fù)雜的數(shù)字系統(tǒng)4,并逐層進(jìn)行驗(yàn)證仿真,再把具體的模塊組合由綜合工具轉(zhuǎn)化成門(mén)級(jí)網(wǎng)表,接下去再利用布局布線(xiàn)工具把網(wǎng)表轉(zhuǎn)化為具體電路結(jié)構(gòu)的實(shí)現(xiàn)。目前,這種自頂向下的方法已被廣泛使用。概括地講,HDL語(yǔ)言包含以下主要特征: (1) HDL語(yǔ)言既包含一些高級(jí)程序設(shè)計(jì)語(yǔ)言的結(jié)構(gòu)形式,同時(shí)也兼顧描述硬件線(xiàn)路連接的具體結(jié)構(gòu)。 (2) 通過(guò)使用結(jié)構(gòu)級(jí)行為描述,可以在不同的抽象層次描述設(shè)計(jì)。HDL語(yǔ)言采用自頂向下的數(shù)字電路設(shè)計(jì)方法,主要包括3個(gè)領(lǐng)域5個(gè)抽象層次。 (3)
9、 HDL語(yǔ)言是并行處理的,具有同一時(shí)刻執(zhí)行多任務(wù)的能力。這和一般高級(jí)設(shè)計(jì)語(yǔ)言(例如C語(yǔ)言等)串行執(zhí)行的特征是不同的。 (4) HDL語(yǔ)言具有時(shí)序的概念。一般的高級(jí)編程語(yǔ)言是沒(méi)有時(shí)序概念的,但在硬件電路中從輸入到輸出總是有延時(shí)存在的,為了描述這一特征,需要引入時(shí)延的概念。HDL語(yǔ)言不僅可以描述硬件電路的功能,還可以描述電路的時(shí)序。 Verilog HDL的主要能力:Verilog HDL既是一種行為描述語(yǔ)言,也是一種結(jié)構(gòu)描述語(yǔ)言。如果按照一定的規(guī)則和風(fēng)格編寫(xiě)代碼,就可以將功能行為模塊通過(guò)工具自動(dòng)轉(zhuǎn)化為門(mén)級(jí)互連的結(jié)構(gòu)模塊。這意味著利用Verilog語(yǔ)言所提供的功能,就可以構(gòu)造一個(gè)模塊間的清晰結(jié)構(gòu)來(lái)
10、描述復(fù)雜的大型設(shè)計(jì),并對(duì)所需的邏輯電路進(jìn)行嚴(yán)格的設(shè)計(jì)。 下面列出的是Verilog語(yǔ)言的主要功能: (1) 可描述順序執(zhí)行或并行執(zhí)行的程序結(jié)構(gòu); (2) 用延遲表示式或事件表達(dá)式來(lái)明確地控制過(guò)程的啟動(dòng)時(shí)間; (3) 通過(guò)命名的事件來(lái)觸發(fā)其他過(guò)程里的激活行為或停止行為; (4) 提供了條件和循環(huán)等程序結(jié)構(gòu); (5) 提供了可帶參數(shù)且非零延續(xù)時(shí)間的任務(wù)程序結(jié)構(gòu); (6) 提供了可定義新的操作符的函數(shù)結(jié)構(gòu); (7) 提供了用于建立表達(dá)式的算術(shù)運(yùn)算符、邏輯運(yùn)算符和位運(yùn)算符; (8) 提供了一套完整的表示組合邏輯基本元件的原語(yǔ); (9) 提供了雙向通路和電阻器件的描述; (10)可建立MOS器件的電荷分
11、享和衰減模型; (11)可以通過(guò)構(gòu)造性語(yǔ)句精確地建立信號(hào)模型; Verilog HDL設(shè)計(jì)方法:自下而上的設(shè)計(jì)方法 自下而上的設(shè)計(jì)是傳統(tǒng)的設(shè)計(jì)方法,是從基本單元出發(fā),對(duì)設(shè)計(jì)進(jìn)行逐層劃分的過(guò)程。這種設(shè)計(jì)方法與用電子元件在模擬實(shí)現(xiàn)板上建立一個(gè)系統(tǒng)的步驟有密切的關(guān)系。優(yōu)、缺點(diǎn)分別如下: 優(yōu)點(diǎn), 設(shè)計(jì)人員對(duì)這種設(shè)計(jì)方法比較熟悉;實(shí)現(xiàn)各個(gè)子模塊所需的時(shí)間較短。 缺點(diǎn), 對(duì)系統(tǒng)的整體功能把握不足;由于必須先對(duì)多個(gè)子模塊進(jìn)行設(shè)計(jì),因此實(shí)現(xiàn)整個(gè)系統(tǒng)的功能所需的時(shí)間長(zhǎng);另外,對(duì)設(shè)計(jì)人員之間相互協(xié)作也有較高的要求。 自上而下的設(shè)計(jì)方法 自上而下的設(shè)計(jì)是從系統(tǒng)級(jí)開(kāi)始,把系統(tǒng)劃分為基本單元,然后再把基本單元?jiǎng)澐譃橄乱?/p>
12、層次的基本單元,直到可用EDA元件實(shí)現(xiàn)為止。這種方法的優(yōu)、缺點(diǎn)如下。 優(yōu)點(diǎn), 在設(shè)計(jì)周期開(kāi)始就做好了系統(tǒng)分析;由于設(shè)計(jì)的主要仿真和調(diào)試過(guò)程是在高層完成的,所以能夠早期發(fā)現(xiàn)結(jié)構(gòu)設(shè)計(jì)上的錯(cuò)誤,避免了設(shè)計(jì)工作的浪費(fèi),方便了系統(tǒng)的劃分和整個(gè)項(xiàng)目的管理,可減少設(shè)計(jì)人員勞動(dòng),避免了重復(fù)設(shè)計(jì)。 缺點(diǎn) ,得到的最小單元不標(biāo)準(zhǔn),且制造成本高。 混合的設(shè)計(jì)方法 復(fù)雜數(shù)字邏輯電路和系統(tǒng)設(shè)計(jì)過(guò)程5,通常是以上兩種設(shè)計(jì)方法的結(jié)合。設(shè)計(jì)時(shí)需要考慮多個(gè)目標(biāo)的綜合平衡。在高層系統(tǒng)用自上而下的設(shè)計(jì)方法實(shí)現(xiàn),而使用自下而上的方法從庫(kù)元件或以往設(shè)計(jì)庫(kù)中調(diào)用已有的設(shè)計(jì)單元?;旌显O(shè)計(jì)方法兼有以上兩種方法的優(yōu)點(diǎn),并且可使用先進(jìn)的矢量測(cè)試
13、方法。2.2 Max+Plus II設(shè)計(jì)流程Max+plus是Altera公司提供的FPGA/CPLD開(kāi)發(fā)集成環(huán)境,Altera是世界上最大可編程邏輯器件2的供應(yīng)商之一。Max+plus界面友好,使用便捷,被譽(yù)為業(yè)界最易用易學(xué)的EDA軟件。在Max+plus上可以完成設(shè)計(jì)輸入、元件適配、時(shí)序仿真和功能仿真、編程下載整個(gè)流程,它提供了一種與結(jié)構(gòu)無(wú)關(guān)的設(shè)計(jì)環(huán)境,是設(shè)計(jì)者能方便地進(jìn)行設(shè)計(jì)輸入、快速處理和器件編程。設(shè)計(jì)流程:使用Max+plus軟件設(shè)計(jì)流程由以下幾部分組成。(1) 設(shè)計(jì)輸入:可以采用原理圖輸入、HDL語(yǔ)言描述、EDIF網(wǎng)表輸入及波形輸入等幾種方式。(2) 編譯:先根據(jù)設(shè)計(jì)要求設(shè)定編譯參
14、數(shù)和編譯策略,如器件的選擇、邏輯綜合方式的選擇等。然后根據(jù)設(shè)定的參數(shù)和策略對(duì)設(shè)計(jì)項(xiàng)目進(jìn)行網(wǎng)表提取、邏輯綜合和器件適配,并產(chǎn)生報(bào)告文件、延時(shí)信息文件及編程文件,供分析仿真和編程使用。(3) 仿真:仿真包括功能仿真、時(shí)序仿真和定時(shí)分析,可以利用軟件的仿真功能來(lái)驗(yàn)證設(shè)計(jì)項(xiàng)目的邏輯功能是否正確。(4) 編程與驗(yàn)證:用經(jīng)過(guò)仿真確認(rèn)后的編程文件通過(guò)編程器(Programmer)將設(shè)計(jì)下載到實(shí)際芯片中,最后測(cè)試芯片在系統(tǒng)中的實(shí)際運(yùn)行性能。 在設(shè)計(jì)過(guò)程中,如果出現(xiàn)錯(cuò)誤,則需重新回到設(shè)計(jì)輸入階段,改正錯(cuò)誤或調(diào)整電路后重復(fù)上述過(guò)程。3 出租車(chē)計(jì)費(fèi)器設(shè)計(jì)隨著中國(guó)城市化的快速發(fā)展,人們出行的選擇也會(huì)越來(lái)越多樣化,但是
15、出租車(chē)作為一種重要的交通工具,也越來(lái)越多的被人們所選擇,雖然在大中城市,出租車(chē)已經(jīng)相當(dāng)普及,但是在一些小的城市,出租車(chē)行業(yè)也因?yàn)槌鞘谢M(jìn)程的加快而快速發(fā)展。此次設(shè)計(jì)采用EDA技術(shù),把出租車(chē)計(jì)費(fèi)器劃分為五大模塊,共同實(shí)現(xiàn)了出租車(chē)計(jì)費(fèi)以及預(yù)置和模擬汽車(chē)啟動(dòng)、停止、暫停等功能,并動(dòng)態(tài)掃描顯示車(chē)費(fèi)數(shù)目。最后,使用Max+Plus II仿真軟件對(duì)每個(gè)模塊和主程序分別進(jìn)行了結(jié)果仿真,并對(duì)仿真出來(lái)的結(jié)果作了分析。3.1 整體設(shè)計(jì)方案根據(jù)自己對(duì)出租車(chē)從啟動(dòng)記費(fèi)到停止打印發(fā)票的整個(gè)過(guò)程的理解,將整個(gè)出租車(chē)計(jì)費(fèi)系統(tǒng)主要?jiǎng)澐譃?大塊。計(jì)費(fèi)器按里程收費(fèi),每100米開(kāi)始一次計(jì)費(fèi)。各模塊功能如下:(1) 車(chē)速控制模塊當(dāng)起
16、停鍵為啟動(dòng)狀態(tài)時(shí)(高電平),模塊根據(jù)車(chē)速選擇和基本車(chē)速發(fā)出響應(yīng)頻率的脈沖驅(qū)動(dòng)計(jì)費(fèi)器和里程顯示模塊進(jìn)行計(jì)數(shù);當(dāng)處于停止?fàn)顟B(tài)時(shí)暫停發(fā)出脈沖,此時(shí)計(jì)費(fèi)器和里程顯示模塊相應(yīng)的停止計(jì)數(shù)。(2) 里程動(dòng)態(tài)顯示模塊其包括計(jì)數(shù)車(chē)速控制模塊發(fā)出的脈沖以及將計(jì)數(shù)顯示動(dòng)態(tài)顯示出來(lái),每來(lái)一個(gè)脈沖里程值加0.1(控制器每發(fā)一個(gè)脈沖代表運(yùn)行了0.1公里)。(3) 計(jì)費(fèi)動(dòng)態(tài)顯示模塊其初值為10元,當(dāng)里程超過(guò)3公里后才接受計(jì)數(shù)車(chē)速控制模塊發(fā)出的脈沖的驅(qū)動(dòng),并且計(jì)數(shù)顯示動(dòng)態(tài)顯示出來(lái),每來(lái)一個(gè)脈沖(代表運(yùn)行了0.5公里)其數(shù)值加1元,當(dāng)收費(fèi)超過(guò)20時(shí)數(shù)值加1.5元。根據(jù)上述要求,繪制出計(jì)費(fèi)器的大致設(shè)計(jì)構(gòu)想框圖,如圖3-1所示。車(chē)
17、速控制模塊里程動(dòng)態(tài)顯示計(jì)費(fèi)動(dòng)態(tài)顯示 車(chē)速選擇 起/停開(kāi)關(guān) 基本速率 Rest 掃描時(shí)鐘 顯示輸出 顯示輸出圖3-1計(jì)費(fèi)器設(shè)計(jì)構(gòu)想框圖3.2詳細(xì)設(shè)計(jì)思路本次出租車(chē)計(jì)費(fèi)器的設(shè)計(jì)主要是基于FPGA芯片,使用硬件描述語(yǔ)言Verilog HDL,采用“自頂向下”的設(shè)計(jì)方法,編寫(xiě)一個(gè)出租車(chē)計(jì)費(fèi)器芯片,并使用Max+Plus II軟件仿真結(jié)果。把出租車(chē)計(jì)費(fèi)器劃分為五大模塊,共同實(shí)現(xiàn)了出租車(chē)計(jì)費(fèi)以及預(yù)置和模擬汽車(chē)啟動(dòng)、停止、暫停等功能,并動(dòng)態(tài)掃描顯示車(chē)費(fèi)數(shù)目。最后,使用Max+Plus II仿真平臺(tái)對(duì)每個(gè)模塊和主程序分別進(jìn)行了波形仿真,并對(duì)仿真出來(lái)的波形作了分析。本次出租車(chē)計(jì)費(fèi)器設(shè)計(jì)要求實(shí)現(xiàn)如下功能:(1)
18、能實(shí)現(xiàn)計(jì)費(fèi)功能,計(jì)費(fèi)標(biāo)準(zhǔn)為:按行駛里程收費(fèi),起步費(fèi)為10.00元,并在車(chē)行3公里后再按2元/公里,當(dāng)計(jì)費(fèi)器計(jì)費(fèi)達(dá)到或超過(guò)一定收費(fèi)(如20元)時(shí),每公里加收50%的車(chē)費(fèi),車(chē)停止不計(jì)費(fèi)。(2) 實(shí)現(xiàn)預(yù)置功能:能預(yù)置起步費(fèi)、每公里收費(fèi)、車(chē)行加費(fèi)里程。(3) 實(shí)現(xiàn)模擬功能:能模擬汽車(chē)啟動(dòng)、停止、暫停、車(chē)速等狀態(tài)。(4) 設(shè)計(jì)動(dòng)態(tài)掃描電路:將車(chē)費(fèi)顯示出來(lái),有兩位小數(shù)。(5) 用Verilog HDL語(yǔ)言設(shè)計(jì)符合上述功能要求的出租車(chē)計(jì)費(fèi)器,并用層次化設(shè)計(jì)方法設(shè)計(jì)該電路。(6) 各計(jì)數(shù)器的計(jì)數(shù)狀態(tài)用功能仿真的方法驗(yàn)證,并通過(guò)有關(guān)波形確認(rèn)電路設(shè)計(jì)是否正確。(7) 完成電路全部設(shè)計(jì)后,通過(guò)系統(tǒng)實(shí)驗(yàn)箱下載驗(yàn)證設(shè)計(jì)
19、的正確性。3.3 模塊實(shí)現(xiàn)為了使各模塊間能夠無(wú)沖突地完成各自的工作,加入適當(dāng)?shù)妮o助模塊,并結(jié)合計(jì)費(fèi)器設(shè)計(jì)要求及各模塊要實(shí)現(xiàn)的功能,在設(shè)計(jì)構(gòu)想框圖基礎(chǔ)上,將其細(xì)化,得到系統(tǒng)總體模型圖,如圖3-2所示。車(chē)速控制(MS)模擬計(jì)費(fèi)(COUNTER)掃描時(shí)鐘(PULSE) 路程、車(chē)費(fèi)顯示(SCAN-LED) 車(chē)行狀態(tài)輸出(SOUT)加速信號(hào)勻速信號(hào)加速按鍵 使能信號(hào) 暫停信號(hào) 清零信號(hào) 時(shí)鐘信號(hào)圖3-2計(jì)費(fèi)器系統(tǒng)總體模型圖在圖3-2中,車(chē)速控制模塊主要將車(chē)行駛的狀態(tài),加速或者勻速,轉(zhuǎn)換成脈沖信號(hào);掃描時(shí)鐘模塊,每隔一段時(shí)間,掃描一次車(chē)行速度,并將狀態(tài)信號(hào)送給計(jì)費(fèi)器;車(chē)行狀態(tài)輸出模塊,將車(chē)速控制模送來(lái)的脈
20、沖信號(hào)進(jìn)行翻譯,判斷車(chē)是何種行駛狀態(tài);模擬計(jì)費(fèi)模塊,根據(jù)掃描時(shí)鐘的信號(hào),定時(shí)對(duì)路程計(jì)算,并將編碼信號(hào)送給顯示模塊;路程、車(chē)費(fèi)顯示模塊,對(duì)計(jì)費(fèi)模塊送來(lái)的信號(hào)進(jìn)行編譯,并顯示出來(lái)。結(jié)合系統(tǒng)設(shè)計(jì)的總體要求和各模塊的詳細(xì)功能要求,接下來(lái),便是使用硬件描述語(yǔ)言Verilog HDL和軟件仿真平臺(tái)Max+Plus II,編寫(xiě)出各模塊的功能語(yǔ)言,并進(jìn)行編譯、仿真,最終得到系統(tǒng)模塊圖。其設(shè)計(jì)流程如圖3-3所示。 開(kāi) 始功 能 分 析編譯檢 錯(cuò)檢 錯(cuò)修 改編 寫(xiě)功 能 語(yǔ) 言結(jié) 束波形仿 真檢 錯(cuò)修 改 編譯成功 仿真成功 出 錯(cuò) 出 錯(cuò) 圖3-3計(jì)費(fèi)器模塊設(shè)計(jì)流程圖 根據(jù)設(shè)計(jì)流程,按照從部分到整體的設(shè)計(jì)思路,
21、先設(shè)計(jì)出各個(gè)功能模塊,最后,結(jié)合圖3-2將各功能模塊連接在一起,形成了計(jì)費(fèi)器整體系統(tǒng)模塊圖,如圖3-4所示。圖3-4 計(jì)費(fèi)器整體系統(tǒng)模塊圖在圖3-4中模塊MS,輸入端口CK0、CK1為兩個(gè)不同的時(shí)鐘信號(hào),高電平有效。來(lái)模擬汽車(chē)的加速和勻速,JS加速按鍵,高電平有效。CLK-OUT為狀態(tài)脈沖輸出信號(hào)。模塊PULSE實(shí)現(xiàn)將時(shí)鐘信號(hào)5分頻功能。模塊COUNTER實(shí)現(xiàn)汽車(chē)模擬計(jì)費(fèi)功能。CLR1為清零信號(hào),CLK-DIV為時(shí)鐘掃描信號(hào);SI為狀態(tài)信號(hào),c1,c2,c3分別為費(fèi)用的三為顯示。模塊SOUT實(shí)現(xiàn)車(chē)行狀態(tài)輸出功能,其中clk為時(shí)鐘信號(hào),enable 為啟動(dòng)使能信號(hào),sto暫停信號(hào),勻?yàn)楦唠娖接行?/p>
22、。clr為清零信號(hào),低電平有效,st為狀態(tài)信號(hào),0電平表示勻速,1電平表示加速。模塊SCAN-LED實(shí)現(xiàn)顯示車(chē)費(fèi)功能。BT為選位信號(hào),SG譯碼信號(hào)。將圖3-4形成的系統(tǒng)在Max+plus平臺(tái)中進(jìn)行編譯、仿真,形成了計(jì)費(fèi)器最終頂層模塊如圖3-5所示。圖3-5 TAXI模塊圖該模塊為計(jì)費(fèi)器最終頂層模塊,T_CLK0、T_CLK1、T_CLK2為三個(gè)時(shí)鐘信號(hào),T-JS 加速信號(hào),高電平有效,T-ENABLE為啟動(dòng)使能信號(hào),高電平有效,T-CLR為清零信號(hào),低電平有效,STO為暫停信號(hào),高電平有效。T-BT為選位信號(hào),T-SG為譯碼信號(hào)。4 計(jì)費(fèi)器各模塊的仿真4.1模塊MS的仿真 依據(jù)設(shè)計(jì)思路和Max
23、+plus II設(shè)計(jì)平臺(tái)以及Verilog HDL語(yǔ)言,編寫(xiě)出模塊程序,調(diào)試完成后,進(jìn)行波形仿真,得到MS模塊仿真圖,如圖4-1所示。圖4-1 MS模塊仿真圖圖4-1中,JS為加速輸入信號(hào),高電平有效;CK0為勻速輸入信號(hào);CK1時(shí)鐘信號(hào),高電平有效。如圖,在有加速信號(hào)持續(xù)輸入的狀態(tài)下,每隔一段時(shí)間,CLK-OUT端有一個(gè)加速脈沖輸出,由仿真圖象可以看出,MS模塊正常運(yùn)行。4.2模塊SOUT的仿真依據(jù)設(shè)計(jì)思路和Max+Plus II設(shè)計(jì)平臺(tái)以及Verilog HDL語(yǔ)言,編寫(xiě)出模塊程序,調(diào)試完成后,進(jìn)行波形仿真,得到SOUT模塊仿真圖,如圖4-2所示。圖4-2 SOUT模塊仿真圖 圖4-2中,
24、STO為暫停信號(hào),高電平有效;ENABLE為啟動(dòng)使能信號(hào),高電平有效;CLR為清零信號(hào),高電平有效;ST為狀態(tài)信號(hào);CLK為時(shí)鐘信號(hào);ST為狀態(tài)信號(hào),0電平表示勻速,1電平表示加速。如圖,汽車(chē)在有啟動(dòng)信號(hào)持續(xù)輸入的狀態(tài)下,車(chē)行狀態(tài)輸出端有相應(yīng)的狀態(tài)信號(hào)輸出,由仿真圖象可以看出,SOUT模塊正常運(yùn)行。4.3模塊PULSE的仿真依據(jù)設(shè)計(jì)思路和Max+Plus II設(shè)計(jì)平臺(tái)以及Verilog HDL語(yǔ)言,編寫(xiě)出模塊程序,調(diào)試完成后,進(jìn)行波形仿真,得到PULSE模塊仿真圖,如圖4-3所示。圖4-3 PULSE模塊仿真圖圖4-3中,CLK0為時(shí)鐘信號(hào),由仿真圖象可以看出,PULSE模塊正常運(yùn)行,輸出了0
25、到4,實(shí)現(xiàn)時(shí)鐘掃描的5分頻功能。4.4模塊COUNTER的仿真依據(jù)設(shè)計(jì)思路和Max+Plus II設(shè)計(jì)平臺(tái)以及Verilog HDL語(yǔ)言,編寫(xiě)出模塊程序,調(diào)試完成后,進(jìn)行波形仿真,得到COUNTER模塊仿真圖,如圖4-4所示。圖4-4 COUNTER模塊仿真圖圖4-4中,CLR1為清零信號(hào),低電平有效;SI為狀態(tài)信號(hào);CLK-DIV為時(shí)鐘掃描信號(hào);C1、C2、C3為費(fèi)用信號(hào)的三行顯示。如圖,汽車(chē)在行駛狀態(tài)下,每隔一段時(shí)間,費(fèi)用顯示輸出端會(huì)有相應(yīng)的信號(hào)輸出,由仿真圖象可以看出,COUNTER模塊正常運(yùn)行。 4.5模塊SCAN_LED的仿真依據(jù)設(shè)計(jì)思路和Max+Plus II設(shè)計(jì)平臺(tái)以及Veril
26、og HDL語(yǔ)言,編寫(xiě)出模塊程序,調(diào)試完成后,進(jìn)行波形仿真,得到SCAN-LED模塊仿真圖,如圖4-5所示。圖4-5 SCAN-LED模塊仿真圖圖4-5中,BT為選位信號(hào);SG譯碼信號(hào)。如圖,每行駛一段時(shí)間,顯示位上的不同數(shù)位上會(huì)有信號(hào)輸出,仿真圖象可以看出,SCAN-LED模塊正常運(yùn)行。4.6模塊TAXI的仿真依據(jù)設(shè)計(jì)思路和Max+Plus II設(shè)計(jì)平臺(tái)以及Verilog HDL語(yǔ)言,編寫(xiě)出模塊程序,調(diào)試完成后,進(jìn)行波形仿真,得到TAXI模塊仿真圖,如圖4-6所示。圖4-6 TAXI模塊仿真圖 圖4-6中,js為加速輸入信號(hào),高電平有效;enable為啟動(dòng)使能信號(hào),高電平有效;clr為清零信
27、號(hào),高電平有效;clk2 ck1 ck2為時(shí)鐘信號(hào)。結(jié)合前面各模塊的輸入、輸出端功能介紹和各模塊仿真圖像說(shuō)明,可以看出,TAXI模塊正常運(yùn)行。5 小結(jié) 本次課程設(shè)計(jì)要求基于可編程邏輯器件,使用硬件描述語(yǔ)言Verilog HDL編寫(xiě)一個(gè)出租車(chē)計(jì)費(fèi)器控制器芯片,并用Max+Plus II軟件平臺(tái)進(jìn)行仿真。根據(jù)自己對(duì)出租車(chē)從啟動(dòng)計(jì)費(fèi)到停車(chē)打票過(guò)程的理解,其過(guò)程可描述為預(yù)置、模擬汽車(chē)啟動(dòng)、停止、暫停等功能,并動(dòng)態(tài)掃描顯示車(chē)費(fèi)數(shù)目。由此必需設(shè)計(jì)出3個(gè)大的模塊:一是車(chē)速控制模塊,此模塊控制汽車(chē)的加速或勻速狀態(tài);二是動(dòng)態(tài)里程顯示模塊,此模塊的主要功能是隨時(shí)顯示車(chē)行的路程;三是計(jì)費(fèi)動(dòng)態(tài)顯示模塊,此模塊的功能是
28、根據(jù)車(chē)行路程計(jì)算并輸出相應(yīng)的費(fèi)用。在整個(gè)設(shè)計(jì)過(guò)程當(dāng)中,首先要根據(jù)模塊設(shè)計(jì)所要達(dá)到的要求編寫(xiě)源代碼,在編寫(xiě)完后編譯的過(guò)程中經(jīng)常會(huì)出現(xiàn)程序編譯錯(cuò)誤。根據(jù)系統(tǒng)提示,我找到了錯(cuò)誤的位置,然后查詢(xún)錯(cuò)誤的原因。通過(guò)和同學(xué)探討,或者請(qǐng)教老師,所有的問(wèn)題都一一解決了。 在整個(gè)電路設(shè)計(jì)完畢并仿真成功后發(fā)現(xiàn),其實(shí)整個(gè)電路設(shè)計(jì)實(shí)現(xiàn)的功能還是比較實(shí)用和易于操作的,而自己也為此付出了許多:從根據(jù)課題要求查找相關(guān)資料,學(xué)習(xí)硬件語(yǔ)言,到自己能夠獨(dú)立編寫(xiě)小程序;從對(duì)Max+Plus II軟件平臺(tái)的摸索,一次次修改程序,到仿真得到較滿(mǎn)意的結(jié)果;從對(duì)截圖工具的搜索下載,論文資料的搜集,到文字排版的學(xué)習(xí)。在設(shè)計(jì)過(guò)程中遇到了很多困難
29、,在指導(dǎo)老師的指引和同學(xué)的幫助下,通過(guò)不斷探索學(xué)習(xí),使問(wèn)題得到了一定的解決。終于使出租車(chē)計(jì)費(fèi)器各模塊的功能正常運(yùn)行,仿真成功,進(jìn)而,整個(gè)計(jì)費(fèi)器系統(tǒng)成功仿真運(yùn)行成功。通過(guò)本學(xué)期課程設(shè)計(jì)的學(xué)習(xí),我從中學(xué)習(xí)到了很多,對(duì)可編程邏輯器件,Verilog HDL語(yǔ)言,Max+Plus II軟件平臺(tái)有了一定的了解,尤其是用Verilog HDL語(yǔ)言編程和仿真。在本次設(shè)計(jì)中最大的收獲是在不斷地發(fā)現(xiàn)問(wèn)題,分析問(wèn)題,解決問(wèn)題的過(guò)程中培養(yǎng)了自己的科研能力,為今后的學(xué)習(xí)和工作積累了一定的經(jīng)驗(yàn)。第 27 頁(yè) 共 27 頁(yè) 李明洪 基于Verilog HDL的出租車(chē)計(jì)費(fèi)器設(shè)計(jì)參考文獻(xiàn)1陳林,ASIC與Verilog數(shù)字系
30、統(tǒng)設(shè)計(jì). 武漢-華中科技大學(xué)出版社. 2009.102宋萬(wàn)杰,羅豐,吳順君CPLD技術(shù)及其應(yīng)用西安:西安電子科技大學(xué)出版社,1999.93王鑫明,楊吉斌.數(shù)字系統(tǒng)設(shè)計(jì)與Verilog HDLM.北京:電子工業(yè)出版社,2002.4張文.可編程邏輯器件的發(fā)展與應(yīng)用J.大眾科技,2006,87(1):49-505楊志鐘,懷樺林,郭順化.數(shù)字電子技術(shù)基礎(chǔ)M.北京:高等教育出版社,2004.6 王道憲CPLD/FPGA可編程邏輯器件應(yīng)用與開(kāi)發(fā)M北京:國(guó)防工業(yè)出版社,2004.1附錄:源程序設(shè)計(jì)清單/ 程序名稱(chēng):基于Verilog HDL出租車(chē)計(jì)費(fèi)器設(shè)計(jì)/ 程序功能:采用Verilog HDL語(yǔ)言設(shè)計(jì)程序
31、,實(shí)現(xiàn)出租車(chē)計(jì)費(fèi)器的功能實(shí)現(xiàn)。/ 程序作者:李明洪/ 最后修改日期:2010-12-29MS模塊源程序:module MS (CK0, CK1, JS, CLK_OUT);input CK0; input CK1; input JS; output CLK_OUT; reg CLK_OUT;always (JS or CK0 or CK1)beginif (JS = 1'b0)beginCLK_OUT <= CK0 ; endelsebeginCLK_OUT <= CK1 ; end end endmoduleSOUT模塊源程序:module SOUT (CLK, ENAB
32、LE, STO, CLR, ST);input CLK; input ENABLE; input STO; input CLR; output1:0 ST; reg1:0 ST;always (CLK or ENABLE or STO or CLR)begin : xhdl_1reg7:0 CQI; reg1:0 STATE; if (CLR = 1'b0)beginCQI = 81'b0; endelse if (CLK = 1'b1)beginif (STO = 1'b1)beginSTATE = 2'b00; CQI = CQI; endelse
33、if (ENABLE = 1'b1)beginCQI = CQI + 1; if (CQI <= 30)beginSTATE = 2'b01; endelse if (CQI > 30 & CQI <= 80)beginSTATE = 2'b10; endelsebeginSTATE = 2'b11; end end end ST <= STATE ; end endmodulePULSE模塊源程序:module PULSE (CLK0, FOUT);input CLK0; output FOUT; reg FOUT;always
34、 (CLK0)begin : xhdl_1reg2:0 CNT; reg FULL; if (CLK0 = 1'b1)beginif (CNT = 3'b100)beginCNT = 3'b000; FULL = 1'b1; endelsebeginCNT = CNT + 1; FULL = 1'b0; end end FOUT <= FULL ; end endmoduleCOUNTER模塊源程序:module COUNTER (CLK_DIV, CLR1, SI, C1, C2, C3);input CLK_DIV; input CLR1; i
35、nput1:0 SI; output3:0 C1; reg3:0 C1;output3:0 C2; reg3:0 C2;output3:0 C3; reg3:0 C3;always (CLK_DIV or CLR1 or SI)begin : xhdl_1reg3:0 Q1; reg3:0 Q2; reg3:0 Q3; if (CLR1 = 1'b0)beginQ1 = 4'b0000; Q2 = 4'b0000; Q3 = 4'b0000; endelse if (CLK_DIV = 1'b1)begincase (SI)2'b00 :begi
36、nQ1 = Q1; Q2 = Q2; Q3 = Q3; end2'b01 :beginQ1 = 4'b0000; Q2 = 4'b0000; Q3 = 4'b0001; end2'b10 :beginif (Q2 < 4'b1001)beginQ2 = Q2 + 1; endelsebeginQ2 = 4'b0000; if (Q3 < 4'b1001)beginQ3 = Q3 + 1; end end Q1 = 4'b0000; end2'b11 :beginif (Q1 < 4'b01
37、01)begiQ1 = Q1 + 5; endelsebeginQ1 = 4'b0000; end if (Q1 = 4'b0101)beginif (Q2 < 4'b1001)beginQ2 = Q2 + 1; endelsebeginQ2 = 4'b0000; if (Q3 < 4'b1001)beginQ3 = Q3 + 1; end end endelsebeginif (Q2 < 4'b1001)beginQ2 = Q2 + 2; endelsebeginQ2 = 4'b0001; if (Q3 < 4&
38、#39;b1001)beginQ3 = Q3 + 1; end end end enddefault :beginendendcase end C1 <= Q1 ; C2 <= Q2 ; C3 <= Q3 ; end endmoduleSCAN-LED模塊源程序:module SCAN_LED (DI1, DI2, DI3, CLK2, SG, BT);input3:0 DI1; input3:0 DI2; input3:0 DI3; input CLK2; output6:0 SG; reg6:0 SG;output2:0 BT; reg2:0 BT;reg1:0 CNT4
39、; reg3:0 A; always (CLK2)begin : P1reg1:0 SQ; if (CLK2 = 1'b1)beginif (SQ = 2'b10)beginSQ = 2'b00; endelsebeginSQ = SQ + 1; end end CNT4 <= SQ ; end always (CNT4)begin : P2case (CNT4)2'b00 :beginBT <= 3'b001 ; A <= DI1 ; end2'b01 :beginBT <= 3'b010 ; A <= DI2 ; end2'b10 :beginBT <= 3'b100 ; A <= DI3 ; end2'b11 :beginB
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年住宅小區(qū)自動(dòng)化系統(tǒng)施工合同模板
- 2025年婦科用藥項(xiàng)目立項(xiàng)申請(qǐng)報(bào)告
- 2025年勞務(wù)服務(wù)合同標(biāo)準(zhǔn)化范本
- 2025年醫(yī)事人員勞動(dòng)合同樣式
- 2025年婚姻財(cái)產(chǎn)協(xié)議書(shū)范例及標(biāo)準(zhǔn)格式
- 2025年獵頭項(xiàng)目提案報(bào)告
- 2025年二級(jí)渠道策劃銷(xiāo)售代理合同書(shū)
- 2025年人才交流策劃共識(shí)協(xié)議
- 2025年企業(yè)股東間投資協(xié)議合同示例
- 2025年分公司經(jīng)濟(jì)責(zé)任合同
- 小學(xué)生心理健康講座5
- 綿陽(yáng)市高中2022級(jí)(2025屆)高三第一次診斷性考試(一診)數(shù)學(xué)試卷(含答案逐題解析)
- 貴州省房屋建筑和市政工程標(biāo)準(zhǔn)監(jiān)理電子招標(biāo)文件(2023年版)
- 高級(jí)職業(yè)培訓(xùn)師(三級(jí))職業(yè)資格鑒定考試題及答案
- 小學(xué)英語(yǔ)800詞分類(lèi)(默寫(xiě)用)
- 真實(shí)世界研究指南 2018
- JBT 7946.3-2017 鑄造鋁合金金相 第3部分:鑄造鋁合金針孔
- 2024年燃?xì)廨啓C(jī)值班員技能鑒定理論知識(shí)考試題庫(kù)-上(單選題)
- 中學(xué)校園安保服務(wù)投標(biāo)方案
- 義務(wù)教育“雙減”作業(yè)設(shè)計(jì)初中生物作業(yè)設(shè)計(jì)案例共三篇
- 2024-2030年中國(guó)車(chē)載冰箱行業(yè)市場(chǎng)發(fā)展調(diào)研及投資戰(zhàn)略分析報(bào)告
評(píng)論
0/150
提交評(píng)論