出租車計(jì)價(jià)器的FPGA設(shè)計(jì)
2.3 緩沖器模塊
三位BCD碼加法器輸出的結(jié)果通過(guò)緩沖器以后,反饋到輸入端重新作為一個(gè)加數(shù),在1km脈沖信號(hào)的作用下,每來(lái)一個(gè)脈沖就和單價(jià)相加,形成連續(xù)累加的功能。緩沖器還有一個(gè)控制輸入端LD,LD=O時(shí),在1km脈沖的作用下,輸出起步價(jià)6元;LD=1時(shí),在1km脈沖的作用下,輸出和輸入相等。緩沖器的Verilog HDL源程序如下:
2.4 整體電路
將各個(gè)模塊按照輸入輸出關(guān)系連接成整體電路如圖6所示。
在整體電路中,clk為最原始的時(shí)鐘輸入端,cr為異步清零端,q[11..O]輸出里程,jiaqian[11..O]輸出乘客應(yīng)付的費(fèi)用。
3 系統(tǒng)仿真驗(yàn)證
整體電路的仿真波形如圖7所示。
從系統(tǒng)仿真波形圖7(a)中可以看出,當(dāng)清零端cr=O時(shí),里程數(shù)立刻清零,乘客應(yīng)付的費(fèi)用顯示三位十進(jìn)制數(shù)060(起步價(jià)6元),表示乘客剛上車。當(dāng)清零端cr=1時(shí),出租車開(kāi)始行進(jìn),里程和費(fèi)用都開(kāi)始計(jì)數(shù),里程顯示三位十進(jìn)制數(shù),前兩位為整數(shù),第三位為小數(shù),也就是每行駛100 m計(jì)一次數(shù)。
從系統(tǒng)仿真波形圖7(b)中可以看出,行駛到3 km時(shí),費(fèi)用由6元增加為7.6元,行駛到4 km時(shí),費(fèi)用由7.6元增加為9.2元,在3~7 km之間時(shí),每行駛1 km增加1.6元。
系統(tǒng)仿真波形圖7(c)中顯示了每行駛1 km后,費(fèi)用逐漸累加的情況。系統(tǒng)仿真波形完全驗(yàn)證了預(yù)期的設(shè)計(jì)要求。
4 結(jié) 語(yǔ)
通過(guò)仿真驗(yàn)證表明,本文所設(shè)計(jì)的出租車計(jì)價(jià)器能夠正常地顯示行駛的里程數(shù)和乘客應(yīng)付的費(fèi)用,符合預(yù)定的計(jì)費(fèi)標(biāo)準(zhǔn)和功能要求?;?a class="contentlabel" href="http://m.butianyuan.cn/news/listbylabel/label/FPGA">FPGA的設(shè)計(jì),集成度高、設(shè)計(jì)周期短。尤其是當(dāng)計(jì)費(fèi)標(biāo)準(zhǔn)發(fā)生變化時(shí),容易通過(guò)改寫Verilog HDL源程序來(lái)完成新的設(shè)計(jì)。
評(píng)論