【文章內(nèi)容簡(jiǎn)介】
要求的計(jì)費(fèi),從而初步論證計(jì)費(fèi)系統(tǒng)設(shè)計(jì)有效。 里程在三千米內(nèi)的計(jì)費(fèi)仿真圖(時(shí)段標(biāo)志為0)圖54功能仿真圖說(shuō)明:當(dāng)輸入適當(dāng)?shù)念l率(sclk)和速度脈沖(wclk)時(shí),可仿真計(jì)費(fèi)系統(tǒng)的計(jì)費(fèi)功能,當(dāng)計(jì)費(fèi)系統(tǒng)顯示里程為3千米時(shí),得到的里程費(fèi)用為640分。根據(jù)原設(shè)想的計(jì)費(fèi)要求與原理,計(jì)費(fèi)應(yīng)為前三千米計(jì)費(fèi)五元,超過(guò)三千米的按時(shí)段選擇的不同計(jì)費(fèi),由上圖可知,時(shí)段選擇為0,總費(fèi)用F(LCFY)=5+1*1.4=,與計(jì)費(fèi)系統(tǒng)仿真的結(jié)果一致,而且由上仿真圖還可以看出,即里程小于三千米時(shí),計(jì)費(fèi)為5元,當(dāng)計(jì)費(fèi)里程超過(guò)3千米時(shí),由此可知,該計(jì)費(fèi)系統(tǒng)能準(zhǔn)費(fèi)的按所要求的計(jì)費(fèi),從而初步論證計(jì)費(fèi)系統(tǒng)設(shè)計(jì)有效。(時(shí)段標(biāo)志為1)圖55功能仿真圖說(shuō)明:當(dāng)輸入適當(dāng)?shù)念l率(sclk)和速度脈沖(wclk)時(shí),可仿真計(jì)費(fèi)系統(tǒng)的計(jì)費(fèi)功能,當(dāng)計(jì)費(fèi)系統(tǒng)顯示里程為3千米時(shí),得到的里程費(fèi)用為680分。根據(jù)原設(shè)想的計(jì)費(fèi)要求與原理,計(jì)費(fèi)應(yīng)為前三千米計(jì)費(fèi)五元,超過(guò)三千米的按時(shí)段選擇的不同計(jì)費(fèi),由上圖可知,時(shí)段選擇為0,總費(fèi)用F(LCFY)=5+1*1.8=,與計(jì)費(fèi)系統(tǒng)仿真的結(jié)果一致,而且由上仿真圖還可以看出,即里程小于三千米時(shí),計(jì)費(fèi)為5元,當(dāng)計(jì)費(fèi)里程超過(guò)3千米時(shí),由此可知,該計(jì)費(fèi)系統(tǒng)能準(zhǔn)費(fèi)的按所要求的計(jì)費(fèi),并且有這圖與上一圖知道,按要求設(shè)置的時(shí)段選擇有效,從而初步論證計(jì)費(fèi)系統(tǒng)設(shè)計(jì)有效。圖56功能仿真圖說(shuō)明:當(dāng)輸入適當(dāng)?shù)念l率(sclk)和速度脈沖(wclk)時(shí),可仿真計(jì)費(fèi)系統(tǒng)的等候計(jì)費(fèi)功能,當(dāng)出租車的速度小于每分鐘200米時(shí),可認(rèn)為出租車處于等待狀態(tài),由上仿真圖可以看出,出租車的速度為120米每分鐘,等待時(shí)間為1分鐘,收費(fèi)為20分。根據(jù)根據(jù)原設(shè)想的計(jì)費(fèi)要求與原理,得到等待費(fèi)用的計(jì)費(fèi)有兩種方式,當(dāng)?shù)群驎r(shí)間小于1小時(shí)時(shí),等候單價(jià)為1元每五分鐘,即一分鐘收費(fèi)20分。與計(jì)費(fèi)系統(tǒng)仿真的結(jié)果一致,而且由上仿真圖還可以看出,按要求設(shè)置的熄燈標(biāo)志有效,從而初步論證計(jì)費(fèi)系統(tǒng)等候計(jì)時(shí)和等候收費(fèi)設(shè)計(jì)有效。 通過(guò)上面的六張出租車計(jì)費(fèi)系統(tǒng)仿真圖的仿真結(jié)果,可以得出這樣的結(jié)論:該計(jì)費(fèi)系統(tǒng)在整體上符合設(shè)計(jì)要求,能較好地判別出出租車的各種狀態(tài),從而由各種狀態(tài)能夠較好的計(jì)算出所要求的各種數(shù)據(jù),進(jìn)而達(dá)到計(jì)費(fèi)的目的。第6章 設(shè)計(jì)系統(tǒng)的方案結(jié)論VHDL硬件描述語(yǔ)言打破了硬件和軟件設(shè)計(jì)人員之間互不干涉的界限,可以使用語(yǔ)言的形式來(lái)進(jìn)行數(shù)字系統(tǒng)的硬件結(jié)構(gòu)、行為的描述,直接設(shè)計(jì)數(shù)字電路硬件系統(tǒng)。從本文描述的出租車計(jì)費(fèi)系統(tǒng)可以看出,通過(guò)編程、下載后,該芯片已經(jīng)具備了原來(lái)需要使用復(fù)雜的數(shù)字電路實(shí)現(xiàn)的功能;這樣,使用語(yǔ)言描述的形式,大大縮短了開(kāi)發(fā)周期,減少了開(kāi)發(fā)難度,并使得系統(tǒng)更加靈活、穩(wěn)健。同時(shí)我們?cè)谠O(shè)計(jì)中需注意的問(wèn)題 (1)在一個(gè)進(jìn)程中只允許一個(gè)信號(hào)上升沿作為觸發(fā)條件,且用觸發(fā)沿作為判別條件有利于系統(tǒng)實(shí)現(xiàn)的穩(wěn)定和精確,由于VHDL語(yǔ)言的特殊優(yōu)點(diǎn),他不需要像單片機(jī)那樣的比較長(zhǎng)等待延時(shí)來(lái)加以確定。從而能更快地正確檢測(cè)出條件的變化?! ?2)信號(hào)值改變后,要經(jīng)過(guò)一個(gè)小的延時(shí)才能生效,同一個(gè)信號(hào)不能在多個(gè)進(jìn)程中賦值(因多個(gè)信號(hào)源不能同時(shí)對(duì)同一個(gè)信號(hào)驅(qū)動(dòng))?! ?3)時(shí)序電路與組合電路最好不要在同一個(gè)進(jìn)程以免浪費(fèi)資源?! ?4)一個(gè)功能模塊最好按上升沿信號(hào)分多個(gè)進(jìn)程完成,各進(jìn)程間用信號(hào)聯(lián)系。 (5)同一個(gè)信號(hào)在進(jìn)程中的值改變后,要注意該值改變前后,該進(jìn)程中其他變量的變化,避免邏輯死鎖。這樣的錯(cuò)誤在邏輯上比較難以檢查出來(lái),且在編譯過(guò)程中也發(fā)想不了,所以要特別加以留意?! ?6)在順序語(yǔ)句中,信號(hào)賦值后需一定的延時(shí)才能改變而變量不需要延時(shí)。第7章 結(jié)束語(yǔ)經(jīng)過(guò)測(cè)試,本系統(tǒng)的所有功能均可正常運(yùn)行,并且達(dá)到預(yù)期效果,。優(yōu)點(diǎn):本系統(tǒng)所具有的功能含蓋面廣,同時(shí)還能很好的實(shí)現(xiàn)對(duì)所需各項(xiàng)數(shù)據(jù)的監(jiān)測(cè)和計(jì)費(fèi),與其它語(yǔ)言所編寫(xiě)的程序不同,本系統(tǒng)所采用的硬件描述語(yǔ)言更易于理解,層次分明,便于移植,效率比較高,再加上其操作簡(jiǎn)單。是一款很好的出租車計(jì)費(fèi)系統(tǒng)。不足:由于本計(jì)費(fèi)系統(tǒng)涉及到上升沿判別條件非常多,所以其還存在一點(diǎn)的毛刺干擾,要想計(jì)費(fèi)系統(tǒng)更加精確,應(yīng)該加入一定的毛刺消除方法,進(jìn)而消除毛刺的影響。同時(shí)由于MAX+plussII軟件的性能和本計(jì)費(fèi)系統(tǒng)的要求比較高,在功能仿真時(shí),其仿真時(shí)間有限,有一個(gè)功能仿真圖是沒(méi)有做出拉力,那就是等待時(shí)間超過(guò)一小時(shí)的等待計(jì)費(fèi),由于涉及到要判別是否等待時(shí)間超過(guò)一小時(shí),所以仿真時(shí)間超長(zhǎng),計(jì)算機(jī)難以承受,所以就沒(méi)有對(duì)其進(jìn)行專門(mén)的仿真驗(yàn)證了。修改意見(jiàn):本系統(tǒng)所具有的功能已經(jīng)可以滿足現(xiàn)代出租車正常的計(jì)費(fèi),但是其存在著運(yùn)行性能、可擴(kuò)展性差等問(wèn)題,應(yīng)著重改進(jìn)以下問(wèn)題.由于本計(jì)費(fèi)系統(tǒng)所涉及的模塊變量都只分配了16位的容量空間,所以其計(jì)時(shí)和計(jì)費(fèi)都有一定上限,當(dāng)超越了其計(jì)算范圍是,其只能在達(dá)到其的容量上限后歸零重新計(jì)算,比不能反映當(dāng)前變量的真實(shí)數(shù)值。所以可考慮分配更大的位數(shù)空間,比如32位。代碼的利用率不高,要善于使用自定義函數(shù)來(lái)實(shí)現(xiàn)功能,并且實(shí)現(xiàn)功能函數(shù)的分類管理的存放,以方便調(diào)用和修改,也便于擴(kuò)展,更有利于以后做研究的參考和借鑒。主要參考文獻(xiàn)[1]王誠(chéng), FPGA/CPLD 設(shè)計(jì),人民郵電出版社,2011. [2]陳忠坪,電子工業(yè)出版社,2010. [3],中科多媒體電子出版社,2011. [4],重慶大學(xué)出版社,2008. [5]何賓. EDA原理,. [6]].清華大學(xué)出版社,2009.[7]郭照南. 電子技術(shù)與EDA技術(shù)課程設(shè)計(jì),中南大學(xué)出版社,2010.[8潘松,黃繼業(yè). EDA技術(shù)實(shí)用教程—VHDL版(第四版),電子工業(yè)出版社,2010.致 謝在這里,我要感謝肖老師,因?yàn)樾だ蠋熢谖议_(kāi)發(fā)這個(gè)系統(tǒng)的過(guò)程是給我了很大的幫助,為了能完成這個(gè)系統(tǒng),肖老師在指導(dǎo)思路和編寫(xiě)模塊程序上給了我很大的幫助,這是肖老師對(duì)我的厚愛(ài),也是肖老師對(duì)我的培養(yǎng)。我會(huì)在以后的工作學(xué)習(xí)中繼續(xù)努力,絕不會(huì)辜負(fù)關(guān)心幫助我的人對(duì)我的希望!附錄 系統(tǒng)所用模塊源程序和編譯框圖1 分頻器模塊FPQ的VHDL程序設(shè)計(jì)LIBRARY IEEE。USE 。USE 。USE 。ENTITY FPQ ISPORT(SCLK: IN STD_LOGIC。 SCLK=200 Hz CLK1HZ: OUT STD_LOGIC)。 CLK1HZ=1 HzEND ENTITY FPQ。 ARCHITECTURE ART OF FPQ IS SIGNAL CNT100: INTEGER RANGE 0 TO 99。 SIGNAL CLK1: STD_LOGIC。 BEGIN PROCESS(SCLK)BEGIN IF SCLK39。EVENT AND SCLK=39。139。 THEN IF CNT100=99 THEN 當(dāng)達(dá)到99時(shí),CNT100清零 CNT100=0。 CLK1=NOT CLK1。 ELSE CNT100=CNT100+1 。否則CNT100加1 END IF。 ELSE CLK1=CLK1。 END IF。 CLK1HZ=CLK1。 END PROCESS。END ARCHITECTURE ART。用分頻器的編譯圖形生成符號(hào)2.等待判別模塊DDPB的VHDL程序設(shè)計(jì)LIBRARY IEEE。USE 。USE 。USE 。ENTITY DDPB IS PORT(START,WCLK:IN STD_LOGIC。 CLK1HZ:IN STD_LOGIC。 DDBZ:OUT STD_LOGIC)。 END ENTITY DDPB。ARCHITECTURE ART OF DDPB IS SIGNAL CNT60: STD_LOGIC_VECTOR(7 DOWNTO 0)。 SIGNAL T60S:STD_LOGIC。 SIGNAL WCLKCOU:STD_LOGIC_VECTOR(15 DOWNTO 0)。 BEGIN 產(chǎn)生60 s周期性跳變信號(hào)進(jìn)程PROCESS(CLK1HZ) IS BEGIN IF START=39。139。 THEN T60S=39。139。CNT60=00000000。ELSIF CLK1HZ39。EVENT AND CLK1HZ=39。139。 THEN IF