你的位置:首頁 > 測試測量 > 正文

基于EDA層次化設(shè)計方法的出租車計費器設(shè)計

發(fā)布時間:2011-11-21

中心議題:
  • 基于EDA層次化設(shè)計方法的出租車計費器設(shè)計
解決方案:
  • 采用系統(tǒng)編程技術(shù)
  • 現(xiàn)場對系統(tǒng)進行邏輯重構(gòu)和升級
  • 采用VHDL編寫各個功能模塊

0 引言

EDA使用戶在無需實際芯片、電路板和儀器儀表的情況下進行電路設(shè)計和分析;采用在系統(tǒng)編程技術(shù),在現(xiàn)場對系統(tǒng)進行邏輯重構(gòu)和升級,實現(xiàn)硬件設(shè)計軟件化。

EDA技術(shù)以可編程邏輯器件FPGA和CPLD及其開發(fā)系統(tǒng)為硬件平臺,以EDA開發(fā)軟件如Max+PlusⅡ為開發(fā)工具,基于邏輯功能模塊的層次化設(shè)計方法設(shè)計數(shù)字系統(tǒng)。Max+PlusⅡ設(shè)計可采用原理圖、硬件描述語言(VHDL)等多種輸入方式,并支持這些文件的任意混合設(shè)計。對于不同層次,可采用不同的輸入方式進行設(shè)計。由于VHDL擅長描述模塊的邏輯功能,所以在對底層模塊設(shè)計中,常采用VHDL進行描述,而原理圖則擅長描述模塊間的連接關(guān)系,故在頂層設(shè)計中,常采用原理圖輸入方法。出租車計費器通常以單片機為核心進行設(shè)計,本文以為它例介紹基于EDA技術(shù)的數(shù)字系統(tǒng)混合設(shè)計方法。

1 出租車計費器功能

出租車計費器的功能要求:

(1)實現(xiàn)出租車按行駛里程收費,起步費為7.0元;
(2)行駛3 km后再按2元/km計費,車停時不計費;
(3)能預(yù)置起步費和每公里收費,并能模擬汽車啟動、停止、車速等狀態(tài)。

根據(jù)VHDL特點,設(shè)計者不再需要考慮選擇固定功能的標(biāo)準(zhǔn)芯片,而是從實現(xiàn)系統(tǒng)功能與性能出發(fā)來,建立出租車計費器系統(tǒng)模塊,如圖1所示。

2 出租車計費器的設(shè)計與實現(xiàn)

本系統(tǒng)分底層和頂層2個層次設(shè)計,底層設(shè)計采用VHDL編寫各個功能模塊,頂層設(shè)計采用原理圖方式描述各模塊間的連接。

2.1 底層文件的設(shè)計

底層模塊包括:出租車車速控制模塊;計費器里程計數(shù)模塊;計費器計費計數(shù)模塊3個模塊。

以出租車車速控制模塊為例介紹。

出租車車速控制模塊用于控制出租車的車速。圖1中,當(dāng)起/停開關(guān)及清零信號RESET都為“1”時,汽車啟動就開始進入里程計數(shù)和計費器工作狀態(tài)。通過改變“車速選擇”端的輸入值可以控制汽車行駛快慢。用CLK6作為車速控制模塊的時鐘輸入,CLOCK6作為輸出,用A、B作為車速選擇變量,分別取值從“00”→“01”→“10”→“11”時,車速越來越塊。其VHDL程序代碼如下:
以上程序代碼經(jīng)過編譯后生成相應(yīng)模塊符號,如圖2所示,供頂層設(shè)計時調(diào)用。

程序經(jīng)過時序仿真后的波形,如圖3所示。
2.2 頂層原理圖設(shè)計

頂層設(shè)計采用原理圖輸入方式。通過調(diào)用生成的各模塊符號,并將它們作適當(dāng)連接以實現(xiàn)頂層文件的設(shè)計。出租車計費器的頂層設(shè)計電路,如圖4所示。
圖4中,ko1,ko2為車速控制開關(guān);clk為時鐘信號;reset為復(fù)位信號;up_down為起/??刂菩盘?;count為預(yù)置每公里收費的信號;load為預(yù)置使能信號;dd為預(yù)置起步費信號;out5,out4為記錄里程的整數(shù)位;out6為記錄里程的小數(shù)位;outl,out2為記錄費用的整數(shù)位;out3為記錄費用的小數(shù)位。

2.3 頂層文件仿真與下載

頂層原理圖經(jīng)過編譯后生成頂層文件,對頂層文件進行仿真,結(jié)果正確后,利用Altera公司的FPGA芯片EPF10K3LC84—3及其SE-5M型開發(fā)系統(tǒng)進行下載。下載結(jié)果顯示,所設(shè)計的出租車計費器完全符合設(shè)計要求。

3 結(jié)語

由上述設(shè)計實例可見,采用EDA技術(shù)設(shè)計數(shù)字系統(tǒng)則是一種基于邏輯功能模塊的“自上而下”層次化設(shè)計方法。即從整個系統(tǒng)功能與性能優(yōu)化出發(fā),將系統(tǒng)分解為各功能模塊,由VHDL描述模塊的邏輯功能,生成滿足相應(yīng)邏輯功能的新器件,實現(xiàn)底層設(shè)計;再采用原理圖輸入方式,將生成的新器件連成系統(tǒng)圖,實現(xiàn)頂層設(shè)計。另外,由于新器件內(nèi)部電路是用程序構(gòu)建的,硬件的邏輯關(guān)系由語言來描述,所以只要修改語句則可修改硬件的邏輯關(guān)系。由此可見這種設(shè)計方法,可大大提高工作效率,設(shè)計更加靈活、快捷,可減少器件的數(shù)量,避免復(fù)雜的接線,縮小系統(tǒng)的體積,降低消耗,提高系統(tǒng)的可靠性、繼承性、移植性。
要采購開關(guān)么,點這里了解一下價格!
特別推薦
技術(shù)文章更多>>
技術(shù)白皮書下載更多>>
熱門搜索
壓控振蕩器 壓力傳感器 壓力開關(guān) 壓敏電阻 揚聲器 遙控開關(guān) 醫(yī)療電子 醫(yī)用成像 移動電源 音頻IC 音頻SoC 音頻變壓器 引線電感 語音控制 元件符號 元器件選型 云電視 云計算 云母電容 真空三極管 振蕩器 振蕩線圈 振動器 振動設(shè)備 震動馬達 整流變壓器 整流二極管 整流濾波 直流電機 智能抄表
?

關(guān)閉

?

關(guān)閉