基于FPGA出租車計價器設計_第1頁
基于FPGA出租車計價器設計_第2頁
基于FPGA出租車計價器設計_第3頁
基于FPGA出租車計價器設計_第4頁
基于FPGA出租車計價器設計_第5頁
已閱讀5頁,還剩20頁未讀 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領

文檔簡介

1、摘 要 本文介紹了一種采用單片F(xiàn)PGA芯片進行出租車計費器的設計方法,主要闡述如何使用新興的EDA器件取代傳統(tǒng)的電子設計方法,利用FPGA的可編程性,簡潔而又多變的設計方法,縮短了研發(fā)周期,同時使出租車計費器體積更小功能更強大。本設計實現(xiàn)了出租車計費器所需的一些基本功能,計費包括起步價、行車里程計費、等待時間計費,同時考慮到出租車行業(yè)的一些特殊性,更注重了把一些新的思路加入到設計中。主要包括采用了FPGA芯片,使用VHDL語言進行編程,使其具有了更強的移植性,更加利于產(chǎn)品升級。關鍵詞:VHDL,計費器,Quartus,F(xiàn)PGA,EDAAbstractThis paper introduces

2、a design method for taxi meter using a single FPGA chip, mainly on how to use the new EDA device to replace the conventional electronic design method, using FPGA programmability, the design method which is simple and variable, shorten the development cycle, at the same time the taxi meter smaller fu

3、nction more powerful. The design and implementation of the taxi meter of some of the basic functions, billing, including the starting price, mileage billing, waiting time and billing, considering the particularity of the taxi industry, pay more attention to add some new ideas to the design. Mainly i

4、nclude the use of the FPGA chip, using VHDL language programming, so that it has a stronger portability, more conducive to product upgrades.Keywords VHDL, billing, Quartus II, FPGA, EDA目 錄摘 要IIAbstractIII1 引言12 VHDL簡述及應用22.1VHDL簡述22.2 VHDL的應用23 FPGA的簡述33.1 FPGA的介紹33.2 FPGA的整體結構33.3 Altera公司的FPGA34方案

5、的論證與選擇54.1方案論證54.2方案的選擇65主要模塊設計75.1按鍵模塊75.2控制模塊75.3 計費模塊85.4里程模塊85.5顯示模塊95.6分頻模塊96模塊仿真分析116.1按鍵模塊仿真116.2控制模塊仿真116.3計費模塊仿真126.4里程模塊仿真126.5分頻模塊仿真13結論14致謝15參考文獻16附錄117附錄2181 引言隨著EDA 技術的發(fā)展及大規(guī)模可編程邏輯器件CPLD/FPGA 的出現(xiàn), 電子系統(tǒng)的設計技術和工具發(fā)生了巨大的變化, 通過EDA 技術對CPLD/FPGA編程開發(fā)產(chǎn)品, 不僅成本低、周期短、可靠性高,而且可隨時在系統(tǒng)中修改其邏輯功能。本文介紹了一定外圍電

6、路組成的出租車計費器系統(tǒng)。2 VHDL簡述及應用2.1VHDL簡述VHDL具有多層次描述系統(tǒng)硬件功能的能力,支持自頂向下和基于庫的設計特點。其開發(fā)流程:在頂層用方框圖或硬件語言對電路的行為進行描述后,進行系統(tǒng)仿真驗證和糾錯。再用邏輯綜合優(yōu)化工具生成具體的門級邏輯電路的網(wǎng)表。然后通過適配器將網(wǎng)表文件配置于指定的目標器件,產(chǎn)生最終下載文件或配置文件。最后把適配后生成的下載或配置文件通過編程器或編程電纜下載到具體的FPGA/CPLD器件中去,以便進行硬件調試和驗證,而實現(xiàn)可編程的專用集成電路ASIC的設計。它出現(xiàn)于80年代后期,最初是由美國國防部開發(fā)出來的,是為了供美軍用來提高設計的可靠性和縮減開發(fā)

7、周期的一種使用范圍較小的設計語言 。VHDL是超高速集成電路硬件描述語言,是一種用于電路設計的高級語言。VHDL主要是應用在數(shù)字電路的設計中。目前,它在中國的應用多數(shù)是用在FPGA/CPLD/EPLD的設計中,同時也被一些實力較為雄厚的單位用來設計ASIC。2.2 VHDL的應用VHDL主要用于描述數(shù)字系統(tǒng)的結構,行為,功能和接口。除了含有許多具有硬件特征的語句外,VHDL的語言形式和描述風格與句法是十分類似于一般的計算機高級語言。VHDL系統(tǒng)設計與其他硬件描述語言相比,VHDL具有更強的行為描述能力,從而決定了他成為系統(tǒng)設計領域最佳的硬件描述語言。強大的行為描述能力是避開具體的器件結構,從邏

8、輯行為上描述和設計大規(guī)模電子系統(tǒng)的重要保證。3 FPGA的簡述3.1 FPGA的介紹目前以硬件描述語言(Verilog或VHDL)所完成的電路設計,可以經(jīng)過簡單的綜合與布局,快速的燒錄至FPGA上進行測試,是現(xiàn)代IC設計驗證的技術主流。這些可編輯元件可以被用來實現(xiàn)一些基本的邏輯門電路(比如AND、OR、XOR、NOT)或者更復雜一些的組合功能比如解碼器或數(shù)學方程式。在大多數(shù)的FPGA里面,這些可編輯的元件里也包含記憶元件例如觸發(fā)器(Flipflop)或者其他更加完整的記憶塊。 系統(tǒng)設計師可以根據(jù)需要通過可編輯的連接把FPGA內(nèi)部的邏輯塊連接起來,就好像一個電路試驗板被放在了一個芯片里。一個出廠

9、后的成品FPGA的邏輯塊和連接可以按照設計者而改變,所以FPGA可以完成所需要的邏輯功能。3.2 FPGA的整體結構FPGA具有掩膜可編程門陣列的通用結構,它由邏輯功能塊排成陣列組成,并由可編程的互連資源連接這些邏輯功能塊來實現(xiàn)不同的設計。下面以Xilinx公司的FPGA為例,分析其結構特點。FPGA一般由三種可編程電路和一個用于存放編程數(shù)據(jù)的靜態(tài)存儲器SRAM組成。這三種可編程電路是:可編程邏輯塊(ConfigurableLogicBlock,CLB)、輸入/輸出模塊(I/OBlock,IOB)和互連資源(InterconnectResource,IR)。FPGA的基本結構如圖1.19所示,

10、可編程邏輯塊(CLB)是實現(xiàn)邏輯功能的基本單元,它們通常規(guī)則地排列成一個陣列,散布于整個芯片;可編程輸入/輸出模塊(IOB)主要完成芯片上的邏輯與外部封裝腳的接口,它通常排列在芯片的四周;可編程互連資源(IR)包括各種長度的連線線段和一些可編程連接開關,它們將各個CLB之間或CLB、IOB之間以及IOB之間連接起來,構成特定功能的電路3.3 Altera公司的FPGAAltera公司的Cyclone II系列擴大了FPGA的密度,最多可以達到68416個邏輯單元,并且還提供了622個可用的輸入/輸出引腳和1.1M比特的嵌入式寄存器。Cyclone II器件的制造基于300mm晶圓,采用臺積電9

11、0nm、低K值電介質工藝,這種工藝技術采用了低絕緣體過程,確保了快速性、有效性和低成本。Cyclone II器件通過使硅片的面積最小化,所以可以在單芯片上支持復雜的數(shù)字系統(tǒng),而且在成本上還可以和ASIC進行競爭。Altera 最新一代低價位的FPGAcyclone II FPGA系列,和同類90nmFPGA器件相比,它提高了百分之六十的性能和降低了一半的功耗。它的低成本和優(yōu)化特征使Cyclone II 系列為各種各樣的汽車、消費、通訊、視頻處理、測試以及測量、和其他最終市場提供了理想的解決方案。4方案的論證與選擇4.1方案論證方案一運算控制器分頻器時鐘信號按鍵控制LED狀態(tài)顯示七段譯碼器數(shù)碼管

12、顯示計費信號計程信號3/8譯碼器分頻模塊控制計數(shù)模塊顯示模塊方案二頂層元件 按鍵模塊 控制模塊 計費模塊 顯示模塊 啟動鍵 停止鍵 里程顯示 費用顯示 費用計數(shù) 里程計數(shù)二選一多路選擇器4.2方案的選擇 經(jīng)本人認真仔細研究,為了更好地實現(xiàn)出租車計價器EDA設計,本人最終設計思路選擇方案二。最初的思路是1hz的時鐘信號傳輸給按鍵模塊,然后按鍵模塊控制控制模塊,控制模塊同時控制計費模塊和里程模塊,最終傳輸給顯示模塊。所以方案二更適合作為本設計的方案。 5主要模塊設計5.1按鍵模塊分別從a、b輸入兩個二位四進制數(shù)值,a3、a2、a1、a0,b3、b2、b1、b0,由比較器比較大小,當ab時X輸出高電

13、平,當ab時X輸出高電平,當ab時Y輸出高電平,當a=b時Z輸出高電平,其他情況下都為低電平。 上面的仿真波形是給a、b隨機加上時鐘用高低電平表示1和0然后進行仿真實驗,通過對仿真輸出的X、Y、Z的高低電平分析,該程序能夠實現(xiàn)題目要求的兩個二位四進制數(shù)值的比較。結果符合設計要求。6.2控制模塊仿真 圖6.2 控制模塊仿真 a,b是兩個數(shù)據(jù)通道輸入端口,s是通道選擇控制信號,y為數(shù)據(jù)輸出端。當s取值分別為1和0時,輸出端y將分別輸出來自輸入口a和b的數(shù)據(jù),針對選通控制端s上所加的不同電平,輸出端y將有對應的信號輸出。根據(jù)波形所示,符合控制模塊設計要求。6.3計費模塊仿真圖6.3 計費模塊仿真 據(jù)

14、圖6-3所示的仿真,根據(jù)本仿真glclk為時鐘信號為1HZ,出租車初始錢為7塊,之后每增加一公里錢就會加一塊,共四個數(shù)碼管,每個管顯示到9后進一位然后清零,共可以顯示四位金錢數(shù)。6.4里程模塊仿真圖6.4 里程模塊仿真 據(jù)圖6-4所示的仿真,根據(jù)本仿真glclk為時鐘信號為1HZ,出租車初始公里為0,之后每增加一公里公里數(shù)就會加一,共四個數(shù)碼管,每個管顯示到9后進一位然后清零,共可以顯示四位公里數(shù)。6.5分頻模塊仿真圖6.5 分頻模塊仿真結論該設計電路基本能滿足樂曲硬件演奏電路的EDA設計要求。一個星期的EDA課程設計馬上就要結束了。時間總是過得很快,經(jīng)過一周的課程設計的學習,我已經(jīng)自己能制作

15、一個出租車計價器,這其中的興奮是無法用言語表達的。學習EDA這段時間也是我們一學期最忙的日子,不僅面臨著期末考試,而且中間還有一些其他科目的實驗,更為緊急的是,之前剛做完的信號實驗,本周必須完成EDA的課程設計。任務對我們來說,顯得很重。為了盡快完成EDA的課程設計,我一天也沒歇息。相關知識缺乏給學習它帶來很大困難,為了盡快掌握它的用法,我照著原理圖學習視頻一步一步做,終于知道了如何操作。剛開始我網(wǎng)上搜索了一下相關內(nèi)容,順便到學校圖書館借相關書籍,經(jīng)過不斷比較與討論,最終敲定了電路原理圖,并且詢問了兄弟班關于元器件的參數(shù)情況。在做電路仿真時,我程序都已經(jīng)編程完事,修改好參數(shù)后,創(chuàng)建網(wǎng)絡列表時系

16、統(tǒng)總是報錯,無論我怎樣修改都不行,后來請教同學,他們也遇到了同樣的困惑。任何事情都不可能是一帆風順的,開始是創(chuàng)建網(wǎng)絡表時出現(xiàn)問題,后來是沒有差錯但出來的仿真波形不是預計中的,這確實很難修改。輸出時仿真波形總是一條直線,我弄了一晚上也找不出原因,整個人也顯得焦躁不已。接下來,雖然我們沒有實物階段。但是我想之前的電工實習讓我簡單的接觸到了焊接實物,以為會比較輕松,但實際焊接起來才發(fā)現(xiàn)此次與電工實習中的焊接實物有很大的不同,要自己對焊板上元件進行布置和焊接電路元件連線,增加了很大的難度。由于采用了電路板,為了使步線美觀、簡潔,還真是費了我們不少精力,經(jīng)過不斷的修改與討論,最終結果還比較另人滿意。經(jīng)過

17、這段課程設計的日子,我發(fā)現(xiàn)從剛開始的MAX+PLUS到現(xiàn)在的Quartus II,不管是學習哪種軟件,都給我留下了很深的印象。由于沒有接觸,開始學得很費力,但到后來就好了。在每次的課程設計中,遇到問題,最好的辦法就是問別人,因為每個人掌握情況不一樣,不可能做到處處都懂,發(fā)揮群眾的力量,復雜的事情就會變得很簡單。這一點我深有體會,在很多時候,我遇到的困難或許別人之前就已遇到,向他們請教遠比自己在那冥思苦想來得快。通過這次課程設計,我明白了一個團隊精神的重要性,因為從頭到尾,想出出主意,來解決中間出現(xiàn)的各種問題。從原理圖的最終敲定,到波形的仿真,每項工作都完成得很棒,銜接得很好,才使我很快的完成了

18、任務。盡管現(xiàn)在只是初步學會了EDA,離真正掌握還有一定距離,但學習的這段日子確實令我收益匪淺,不僅因為它發(fā)生在特別的時間,更重要的是我又多掌握了一門新的技術。致謝本人的學位論文是在我的專業(yè)課老師孟老師的親切關懷和悉心指導下完成的。他們嚴肅的科學態(tài)度,嚴謹?shù)闹螌W精神,精益求精的工作作風,深深地感染和激勵著我。從課題的選擇到項目的最終完成,孟老師都始終給予我細心的指導和不懈的支持。在此謹向孟老師致以誠摯的謝意和崇高的敬意。在此,我還要感謝在一起愉快的度過大學生活的每個可愛的同學們和尊敬的老師們,正是由于你們的幫助和支持,我才能克服一個一個的困難和疑惑,直至本文的順利完成。在論文即將完成之際,我的心

19、情無法平靜,從開始進入課題到論文的順利完成,有多少可敬的師長、同學、朋友給了我無言的幫助,在這里請接受我誠摯的謝意!謝謝你們!參考文獻1潘松著.EDA技術實用教程-VHDL版(第五版)M),科學出版社,20141王偉著.Verilog HDL程序設計與應用M),人民郵電出版社,20052潘松. CPLD/FPGA 在電子設計中的應用前景J.電子技術應用,1999,25( 7) 3張原.可編程邏輯器件設計及應用M.北京: 機械工業(yè)出版社,20034閻石. 電子技術基礎( 數(shù)字部分) M.北京:清華大學出版社,20005 Alera公司.Data Book.1999dd6王振紅.VHDL 數(shù)字電路

20、設計與應用實踐教程M.北京: 機械工業(yè)出版社, 2003.7 Mark Zwolinski.VHDL 數(shù)字系統(tǒng)設計M.北京: 電子工業(yè)出版社, 2002.8LIN Yuan Design of the taximeter system based on CPLD/FPGA9LI B i n The Design of Frequency Meter for Equal ObservationsBased on CPLD and C Language10艾紅,王捷,等.數(shù)字頻率計中c語言編程的研究團.儀器儀表學報,2002,23增刊(3):7 -8.11郭改枝,李樹華,王志慧.內(nèi)蒙古大學學報(自

21、然科學版)田.2004,35(1):83-87.12喬長安,陳運濤,張富平,等.等精度頻率測量方法Jl.火力與指揮控制,2003,28增刊:61-6213王核著.Verilog HDL程序設計與應用M),人民大學出版社,,2007:139-172.14陳逸譯.USB大全Ml.中國電力出版社,2001.15Cypresss emiconductor SL- 811HS embed2ded USB hostSlave附錄1總電路圖如下:附錄2 分頻模塊LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL;E

22、NTITY DIV ISPORT (CLK:IN STD_LOGIC; K_OR,K1,K2:OUT STD_LOGIC); END;ARCHITECTURE BHV OF DIV ISSIGNAL C1,C2:STD_LOGIC_VECTOR(7 DOWNTO 0);SIGNAL M1,M2:STD_LOGIC;BEGINPROCESS(CLK,C1) BEGINIF CLKEVENT AND CLK =1then IF (C1=) THEN C1=; ELSE C1=C1+1;END IF;IF (C1=) THEN M1=NOT M1; ELSIF (C1=)THEN M1=NOT M1

23、;END IF;END IF;END PROCESS;PROCESS(CLK,C2) BEGINIF CLKEVENT AND CLK =1then IF (C2=) THEN C2=; ELSE C2=C2+1;END IF;IF (C2=) THEN M2=NOT M2; ELSIF (C2=)THEN M2=NOT M2;END IF;END IF;END PROCESS;K1=M1; K2=M2; K_OR=M1 OR M2 ;END BHV;多路選擇器模塊entity mux21a is port(a,b,s:in bit; y:out bit);end entity mux21a;

24、architecture bhv of mux21a is begin process(a,b,s) begin if(s=1) then y=a;else y b) then X =1; Y =0; Z =0; elsif(a b) then X =0; Y =1; Z =0; ELSE X =0; Y =0; Z =1; end if; end process; end behave;計費模塊library ieee;use ieee.std_logic_1164.all;use ieee.std_logic_unsigned.all;entity cnt_fy isport(glclk:

25、 in std_logic; reset:in std_logic;pul:in std_logic;money0:out std_logic_vector(3 downto 0);money1:out std_logic_vector(3 downto 0);money2:out std_logic_vector(3 downto 0);money3:out std_logic_vector(3 downto 0);end;architecture behav of cnt_fy issignal money_cnt0:std_logic_vector(3 downto 0);signal

26、money_cnt1:std_logic_vector(3 downto 0);signal money_cnt2:std_logic_vector(3 downto 0);signal money_cnt3:std_logic_vector(3 downto 0);beginprocess(glclk)beginif reset=1 thenmoney_cnt0=0111;money_cnt1=0000;money_cnt2=0000;money_cnt3=0000;elsif glclkevent and glclk=0 thenif money_cnt3=9 and money_cnt2

27、=9 and money_cnt1=9 and money_cnt0=9 thenmoney_cnt0=0000; money_cnt1=0000; money_cnt2=0000; money_cnt3=0000; elsif money_cnt3/=9 and money_cnt2=9 and money_cnt1=9 and money_cnt0=9 thenmoney_cnt0=0000; money_cnt1=0000; money_cnt2=0000;money_cnt3=money_cnt3+0001;elsif money_cnt2/=9 and money_cnt1=9 an

28、d money_cnt0=9 thenmoney_cnt0=0000; money_cnt1=0000; money_cnt2=money_cnt2+0001;money_cnt3=money_cnt3;elsif money_cnt1/=9 and money_cnt0=9 thenmoney_cnt0=0000; money_cnt1=money_cnt1+0001;money_cnt2=money_cnt2;money_cnt3=money_cnt3;elsif money_cnt0/=9 then money_cnt0=money_cnt0+0001;money_cnt1=money_

29、cnt1;money_cnt2=money_cnt2;money_cnt3=money_cnt3;end if;end if;end process;money0=money_cnt0;-+0011;money2=money_cnt2;money1=money_cnt1;money3=money_cnt3;end;計程模塊library ieee;use ieee.std_logic_1164.all;use ieee.std_logic_unsigned.all;entity cnt_gl isport(glclk:in std_logic;reset:in std_logic;km_cnt0:out std_logic_vector(3 downto 0);km_cnt1:out std_logic_vector(3 downto 0);km_cnt2:out std_logic_vector(3 down

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論