2023年全國碩士研究生考試考研英語一試題真題(含答案詳解+作文范文)_第1頁
已閱讀1頁,還剩35頁未讀 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、<p><b>  摘 要</b></p><p>  汽車計價器是乘客與司機雙方的交易準則,它是出租車行業(yè)發(fā)展的重要標志,是出租車中最重要的工具。它關系著交易雙方的利益。具有良好性能的計價器無論是對廣大出租車司機朋友還是乘客來說都是很必要的。因此,汽車計價器的研究也是十分有一個應用價值的。 隨著生活水平的提高,人們已不再滿足于衣食住的享受,出行的舒適已受到越來越多人的關

2、注。于是,出租車行業(yè)以低價高質的服務給人們帶來了出行的享受。但是總存在著買賣糾紛困擾著行業(yè)的發(fā)展。而在出租車行業(yè)中解決這一矛盾的最好方法就是改良計價器。用更加精良的計價器來為乘客提供更加方便快捷的服務。 我國在70年代開始出現(xiàn)出租車,但那時的計費系統(tǒng)大都是國外進口不但不夠準確,價格還十分昂貴。隨著改革開放日益深入,出租車行業(yè)的發(fā)展勢頭已十分突出,國內各機械廠家紛紛推出國產(chǎn)計價器。出租車計價器的功能從剛開始的只顯示路程(需要司機自

3、己定價,計算后四舍五入),到能夠自主計費,以及現(xiàn)在的能夠打一發(fā)票和語音提示、按時間自主變動單價等功能。隨著城市旅游業(yè)的發(fā)展,出租車行業(yè)已成為城市的窗口,象征著一個城市的文明程度。本文中所用到的VHDL(Very High Speed </p><p>  文章首先簡述了出租車控制系統(tǒng)的意義和發(fā)展現(xiàn)狀以及VHDL語言的特點,然后介紹了出租車控系統(tǒng)的設計要求,設計思路,并給出了總體設計框圖,通過分析方框圖繪出詳細的模

4、塊電路流程圖并寫出程序源代碼,將代碼在max+plus2軟件上進行編譯仿真,波形基本符合設計要求。</p><p>  關鍵詞:出租車計價器 VHDL語言 max+plus2</p><p><b>  ABSTRACT</b></p><p>  Auto meter is both passengers and the driver o

5、f the trade standards, it is an important symbol of the taxi industry development, and is the most important tool in the taxi. It relates to the interests of both parties. Have good performance of the taxi driver meter w

6、hether friends or passengers alike is very necessary. Therefore, the study is also very car meter is an application value.</p><p>  As standard of living rise, people no longer eat satisfied enjoy comfortabl

7、e, travel has been more and more people's attention. Hence, the taxi industry with low quality of service has brought people travel to enjoy. But there are always trading disputes bothering industry development. But

8、in the taxi industry to solve this contradiction in the best method is improved on the meter. Use more sophisticated meter to provide more convenient services.</p><p>  Now cities taxi industry has universal

9、 meter automatic meter, so the development of technology already entrenched. And some of the smaller cities, but not with the urban construction speed increasingly, a symbol of the taxi trade city appearance will acceler

10、ate the development of popularization, the meter is undoubtedly, so future automobile meter market is very promising.</p><p>  China began to appear in the 1970s, but then the taxi billing system mostly impo

11、rted not only accurate, the price also is very expensive. Along with the reform and opening-up, the taxi industry development momentum has a very prominent, the domestic various machinery manufacturers have domestic mete

12、r. The meter taxi from the beginning of the function to display only the driver himself away (after), pricing, and are able to independently rounding billing, and now can play an invoice and audio, ac</p><p>

13、;  This article first introduced the meaning and taxi control system development status and the characteristics of the language of VHDL, then introduces the design of the control system of the taxi, design ideas, and pre

14、sents the overall design, through the analysis of the block diagram of the draw detailed modules circuit chart and write program source code, will in plus2 + Max compiled on software simulation, waveform basic comply wit

15、h the design requirements.</p><p>  Keywords: VHDL language auto meter plus2 + Max</p><p><b>  目 錄</b></p><p>  摘 要…………………………………………………………………………………………I</p><

16、;p>  ABSTRACT………………………………………………………………………………………II</p><p>  目 錄………………………………………………………………………………………III</p><p>  引 言……………………………………………………………………………………………1</p><p>  1 概述…………………………………………

17、………………………………………………2</p><p>  1.1 出租車計價器的發(fā)展及研究現(xiàn)狀……………………………………………………2</p><p>  1.2 出租車計價器設計的主要內容………………………………………………………3</p><p>  1.3 設計方法………………………………………………………………………………3</p><

18、;p>  1.4方案比較………………………………………………………………………………3</p><p>  2 出租車計價器系統(tǒng)的總體設計……………………………………………………………5</p><p>  2.1 系統(tǒng)總體設計要求……………………………………………………………………5</p><p>  2.2 設計思路…………………………………………………

19、……………………………5</p><p>  2.3 出租車計價器系統(tǒng)工作流程圖………………………………………………………6</p><p>  3 系統(tǒng)設計開發(fā)工作平臺的介紹……………………………………………………………7</p><p>  3.1 實驗板的介紹…………………………………………………………………………7</p><p> 

20、 3.1.1 ZY11EDA13BE實驗系統(tǒng)介紹……………………………………………………7</p><p>  3.1.2 ZY11EDA13BE實驗系統(tǒng)各模塊功能介紹………………………………………7</p><p>  4 VHDL語言基礎………………………………………………………………………………9</p><p>  4.1 概述………………………………………

21、……………………………………………9</p><p>  4.2 VHDL語言的特點………………………………………………………………………8</p><p>  4.3 VHDL語言編程概述……………………………………………………………………10</p><p>  4.3.1 VHDL程序的總體結構…………………………………………………………10</p>

22、;<p>  4.3.2實體設計概述…………………………………………………………………12</p><p>  4.3.3結構體設計概述………………………………………………………………13</p><p>  4.3.4配置……………………………………………………………………………14</p><p>  4.4 VHDL設計的流程及階段劃分……………

23、…………………………………………15</p><p>  4.4.1設計流程………………………………………………………………………15</p><p>  4.4.2設計階段的劃分………………………………………………………………16</p><p>  5 MAX+PLUSⅡ的使用…………………………………………………………………………17</p>&

24、lt;p>  5.1 概述…………………………………………………………………………………17</p><p>  5.2 MAX+PLUSⅡ的應用…………………………………………………………………17</p><p>  5.2.1 設計輸入……………………………………………………………………17</p><p>  5.2.2 設計項目的編譯……………………

25、………………………………………18</p><p>  5.2.3 模擬仿真和定時分析………………………………………………………18</p><p>  6 出租車計價器系統(tǒng)的VHDL程序設計……………………………………………………20</p><p>  6.1 模塊劃分……………………………………………………………………………20</p><

26、p>  6.2 計費和路程計算模塊………………………………………………………………21</p><p>  6.3 片選模塊………………………………………………………………………………22</p><p>  6.4 小數(shù)點控制模塊……………………………………………………………………23</p><p>  6.5 七段譯碼顯示模塊……………………………………

27、……………………………23</p><p>  7 出租車計價器系統(tǒng)的仿真結果及分析…………………………………………………26</p><p>  7.1 仿真實驗步驟………………………………………………………………………26</p><p>  7.2 仿真波形圖分析………………………………………………………………………26</p><p>

28、;  結 束 語………………………………………………………………………………29</p><p>  參 考 文 獻…………………………………………………………………………………30</p><p>  致 謝………………………………………………………………………………………31</p><p><b>  引 言</b></p>

29、;<p>  隨著我國社會經(jīng)濟的全面發(fā)展,各大中小城市的出租車營運事業(yè)發(fā)展迅速,出租車已經(jīng)成為人們日常出行選擇較為普通的交通工具。出租車計價器是出租車營運收費的專用智能化儀表室出租車市場規(guī)范化,標準化以及減少司機與乘客之間發(fā)生糾紛的重要設備。一種功能完備,簡單易用,計量準確的出租車計價器是加強出租車行業(yè)管理,提高服務質量的必需品。本設計就是采用VHDL硬件描述語言作為設計手段,采用自頂向下的設計思路,得到一種出租車計價系統(tǒng)

30、的軟件結構,通過max+plus2軟件下進行仿真,證明所設計的電路系統(tǒng)完成了出租車計價的功能,各項指標符合設計要求,具有一定的實用性。</p><p>  本文是在vhdl的基礎上對出租車計價器進行設計來實現(xiàn)其基本功能的。由于以往的設計主要是通過兩種:數(shù)字電路和模擬電路設計,基于單片機的設計。第一種方式的缺點既所設計的整體電路規(guī)模較大,所用的器件較多,造成故障率高,導致計價器不夠準確;而基于單片機的設計,雖然其有

31、著開發(fā)及制作成本低,能較大程度的利用資源,但其外圍電路較多,且調試復雜,抗干擾能力差,也導致計價器不夠準確。而本文所用的vhdl具有穩(wěn)定性好,抗干擾能力強等優(yōu)點,且非常適合做為出租車計價器的控制核心,所以選擇用vhdl來對計價器進行設計來實現(xiàn)其功能。</p><p>  本設計是對出租車計價器的四個模塊進行分析的,并結合相關文獻,對其中提到的以下四個模塊的設計進行了總結,綜述如下:</p><

32、p>  計費和路程計算模塊:計程模塊可以說是此系統(tǒng)中的重中之重,因為計費的主體是路程在占主導因素的,因此此模塊的設計要非常的仔細和精確。計程模塊中的有內部變量來判斷路程是否大于三公里,當大于三公里時,使得計費模塊開始工作,非則計費模塊一直是賦值為8,路程根據(jù)時鐘來進行計算。文獻《計算機技術與發(fā)展》第12期的文章《出租車幾家系統(tǒng)的設計》和《計算機與信息技術》第九期的文章《多功能出租車計價器的設計》中對計程模塊是這樣寫的:根據(jù)提供的時

33、鐘信號,計算車租車所行駛的里程數(shù)。計費模塊可以說是最最關鍵的一部分,因此要更加的準確和精確。計費模塊是對路程的計算得到的費用。文獻《計算機技術與發(fā)展》第12期文章《出租車幾家系統(tǒng)的設計》和《計算機與信息技術》中的《多動能出租車計價器的設計》:當出租車載上乘客并起步,駕駛員將空車指示牌扳倒后,空車指示牌指示燈熄滅,計價系統(tǒng)開始進入計費狀態(tài)。</p><p>  片選模塊:本系統(tǒng)中有兩片選模塊,其中一個也可叫動態(tài)掃描

34、模塊。第一個片選模塊控制實驗箱上的數(shù)碼管顯示的位置和數(shù)量,動態(tài)掃描模塊可將現(xiàn)實的結果顯示在數(shù)碼管上,時鐘比較大的時候,可以讓我們看上去多個數(shù)碼管顯示數(shù)值,與顯示模塊相對應。</p><p>  小數(shù)點控制模塊:因為路程,出租車費用不可能全是整數(shù),所以有小數(shù)位,那對應就要在數(shù)碼管上顯示小數(shù)點,本模塊就是專門起到控制小數(shù)點的作用。當模塊中的seldp為不同數(shù)值時,可控制不同數(shù)碼管顯示小數(shù)點,即當dpout=‘1’時即

35、可。</p><p>  七段譯碼器模塊顯示模塊:即通過選擇將出租車的行駛路程數(shù),費用通過數(shù)碼管進行顯示。文獻《計算機技術與發(fā)展》12期中文章《出租車幾家系統(tǒng)的設計》《計算機與信息技術》中的《多功能出租車計價器的設計》這樣寫道:實現(xiàn)計價,計程的顯示。用到8個數(shù)碼管,4個用來顯示路程,單位是公里即km,另外四個用來顯示費用,單位是人名幣元。路程上限為99.99km,車費上限為99.99元,因為數(shù)碼管有限,顯示的精確

36、有要求所以上限都有一定的限制。</p><p>  本設計是基于vhdl進行編程,然后在max+pus2進行波形仿真,對主題FPGA的設計書本《數(shù)字邏輯eda設計與實踐》,劉昌華是這樣描述的:“該電路的核心就是技術分頻電路,通過vhdl語言的順序語句if-then-else根據(jù)一個或者一組條件來選擇某一特定的執(zhí)行通道,生成計費數(shù)據(jù)里程數(shù)據(jù)等等。對模塊劃分書本《EDA技術綜合應用實力與分析》譚會生這樣寫道:根據(jù)設計

37、的要求,我們可將整個系統(tǒng)的taxi分成4個模塊,他們分別是:計費和路程計算模塊,片選模塊,小數(shù)點控制模塊,七段譯碼顯示模塊。</p><p>  通過對以上文獻的分析及綜合,得到了本設計的設計思路和設計框圖,并通過編程,進行仿真來實現(xiàn)出租車計價器的功能。</p><p><b>  1 概述</b></p><p>  1.1 出租車計價器的發(fā)

38、展及研究現(xiàn)狀</p><p>  出租車行業(yè)在我國是八十年代初興起的一項新興行業(yè),隨著我國國名經(jīng)濟的高速發(fā)展,出租車已成為城市公共交通的重要組成部分。多年來國內普遍使用的計價器只具備單一的脊梁功能。目前全世界的計價器中90%為臺灣所生產(chǎn)?,F(xiàn)今我國生產(chǎn)計價器的企業(yè)有上百家,主要集中在北京,上海,沈陽和廣州等地。我國第一家生產(chǎn)計價器的是重慶起重機廠,最早的計價器全部使用機械齒輪結構,只能簡單的計程功能,可以說,早期的

39、計價器就是個里程表。隨著科學技的發(fā)展,產(chǎn)生了第二代計價器。它采用手搖計算機與機械結構相結合的方式實現(xiàn)了半機械半電子化。此時它在計程的同時還完成計價的工作。大規(guī)模集成電路的發(fā)展又產(chǎn)生了第三代計價器,也就是全電子化的計價器。它的功能也在不斷完善。出租車計價器是一種專用的計量儀器,它安裝在出租車上,能夠連續(xù)累加,并只是出行中任意時刻乘客應付費用。隨著電子技術的發(fā)展以及對計價器的不斷改進和完善,便產(chǎn)生了諸多的附加功能。例如:(1)LED顯示功能

40、,數(shù)碼管的使用讓計價器實現(xiàn)多屏現(xiàn)實的功能;(2)永久時鐘功能,在非營業(yè)狀態(tài)下,日歷時鐘芯片的使用使計價器可以顯示永久時鐘;(3)存儲功能,可存儲多項營運數(shù)據(jù)。</p><p>  現(xiàn)在市面上使用的出租車計價器傳感器較多采用耐高溫的霍爾元件,使計價器即使在任何惡劣條件下仍能保持正常工作狀態(tài)?;魻栐慕Y構很簡單,它是由霍爾片,四級引線和殼體組成。霍爾片是一塊矩形半導體單晶薄片。在它的長度方向兩端面上焊有兩根引線,稱

41、為控制電流短引線,通常用紅色導線。其焊接處稱為控制電流極(或稱激勵電極),要求焊接處接觸電阻很小,并呈純電阻。在薄片的另梁斷面的中間以點的形式對稱的含有兩個霍爾輸出端引線,通常用綠色導線。其焊接處稱為霍爾電極,且電極寬度與長度之比要小于0.1,否則影像輸出。霍爾元件的殼體使用非導磁金屬,陶瓷或環(huán)氧樹脂封裝。</p><p>  1.2 出租車計價器設計的主要內容</p><p>  設計一

42、個出租車計價器,計費包括起步價,行車里程計數(shù),暫停不計費?,F(xiàn)場模擬汽車啟動,停止,暫停狀態(tài),分別用思維數(shù)碼管顯示金額和路程,各有兩位小數(shù),行程三公里之內起步價8元,超過三公里,每公里2元。</p><p><b>  1.3 設計方法</b></p><p>  本文將使用硬件描述語言VHDL設計出租車計價器系統(tǒng)。VHDL是高速集成電路硬件描述語言的簡稱。VHDL是采

43、用可編程邏輯器件通過對器件內部的設計來實現(xiàn)系統(tǒng)功能的,是一種基于芯片的設計方法,介紹了該系統(tǒng)和關鍵的設計結果。經(jīng)過在實驗箱上進行硬件測試,證明該出租車計價系統(tǒng)具有使用計價器的基本功能。</p><p><b>  1.4 方案比較</b></p><p>  方案一:用單片機實現(xiàn):通過軟件編程,仿真,調試,符合要求后將程序用編程器械如單片機芯片中。利用單片機的中斷響應

44、乘客開車或者等待的請求,進行相應的處理。</p><p>  方案二:用FPGA(可編程門列陣)實現(xiàn):利用硬件描述語言編程,仿真調試后下載到可編程邏輯器件(CPLD)上實現(xiàn)。</p><p>  比較而言,方案一的開發(fā)及制作成本較低,能較大程度利用資源,但是外圍電路較多,調試復雜,抗干擾能力差,由于主要是軟件運作,容易出錯,造成系統(tǒng)不穩(wěn)定。方案二將所有的器件集成在一塊芯片上,體積大大減少的

45、同時還提高了穩(wěn)定性,并且可應用于EDA軟件仿真,調試,易于進行功能擴展,外圍電路少,采用硬件邏輯電路的實現(xiàn),其最大的優(yōu)點是穩(wěn)定性好,抗干擾能力強,非常適合做為出租車的計價器系統(tǒng)的控制核心?;趯σ陨系目紤],我覺得FPGA能實現(xiàn)計程車的計價器的設計的要求,因此,決定選用FPGA為核心,用VHDL編程來實現(xiàn)計價器的設計。</p><p>  2 出租車計價器系統(tǒng)的總體設計</p><p>  

46、2.1 系統(tǒng)總體設計要求</p><p>  本文將利用VHDL語言設計一個出租車計價器的計費系統(tǒng),具體要求如下:</p><p>  行程三公里之內,起步價6元;</p><p>  三公里之外,每公里1元,車停止不計費;</p><p>  3 能顯示行駛公里數(shù),計費器費用;</p><p>  4 計價范圍0

47、—99.9元,計價分辨率為0.1元,行程范圍為0——99.99公里,分辨率為0.01公里。</p><p><b>  2.2 設計思路</b></p><p>  用時鐘模擬車速,時鐘越快車速越快,根據(jù)時鐘來進行計程和計費,最終將所得的路程和車費在數(shù)碼管上顯示出來。</p><p>  出租車計價器計費器的結構框圖如下圖所示。</p&g

48、t;<p>  圖2.1出租車計價器計費器的結構框圖</p><p>  1. 計數(shù)器1,接入車速表就可以實現(xiàn)計費,這里用于模擬車速度。</p><p>  2. 計數(shù)器5,為十進制計數(shù)器,預置數(shù)為車行起步里程三公里,計數(shù)脈沖為計數(shù)器1的進位信號。這樣當計數(shù)器達到30后,進位輸出為一高電平,控制計數(shù)器2,3,4開始計數(shù),這樣就能夠實現(xiàn)超過三公里后計費器再按每公里加收車費。

49、</p><p>  3. 計數(shù)器2,3,分別為車費十位,個位數(shù)值,計數(shù)器4為車費小數(shù)點后兩位數(shù)值。</p><p>  4. 片選mux為控制動態(tài)掃描電路輸出顯示的。</p><p>  2.3 出租車計價器系統(tǒng)工作流程圖</p><p>  對出租車計價器系統(tǒng)的工作進行分析,即出租車計價器工作流程圖如下圖所示</p>&

50、lt;p>  圖2.2出租車計價器工作流程圖</p><p>  出租車載客后,啟動計費器,整個系統(tǒng)開始工作,進入初始化狀態(tài),即計程從0開始,計費從8開始。再根據(jù)start信號判斷行駛還是停止。若start為1,則是行駛狀態(tài),計程器開始計數(shù),當路程超過三公里時,計費器開始累加,按2元每公里計算,計程器則繼續(xù),否則計費器不變。當start為0時,各個計數(shù)器都停止計數(shù),表示車停止狀態(tài)。出租車停止乘客下車后,按下

51、復位信號stop,則所有計數(shù)器復位。</p><p>  3 系統(tǒng)設計開發(fā)工作平臺的介紹</p><p>  3.1 實驗板的介紹</p><p>  3.1.1 ZY11EDA13BE實驗系統(tǒng)介紹</p><p>  (1) ZY11EDA13BE實驗系統(tǒng)特點</p><p>  采用主板A基本實驗系統(tǒng)+適配板B(擴

52、展板)+擴展板C(適配板)的結構,配置靈活,可擴展性強。主板是一個標準配置系統(tǒng),是一個最簡 EDA工具系統(tǒng),包含了核心芯片A(EP1K30QC208),在主板系統(tǒng)基礎上擴展了不同系統(tǒng),比如主板+單片機+擴展板構成單片機系統(tǒng),以及主板+擴展CPLD/FPGA等多重系統(tǒng)。另外實驗系統(tǒng)還有所有I/O口開放,數(shù)字EDA與模擬EDA混合實驗與開發(fā),編程下載通用性強,良好的混合電壓(MV)兼容功能,以及基于EDA技術的免連實驗系統(tǒng)等特點。</

53、p><p>  (2) ZY11EDA13BE實驗系統(tǒng)主板組成</p><p>  通用編程模塊、液晶顯示模塊、數(shù)碼顯示模塊、A/D、D/A轉換模塊、LED顯示模塊、數(shù)字可調信號源、濾波模塊、信號調節(jié)模塊、邏輯筆模塊、配置模塊、模式選擇模塊、模擬信號源、鍵盤模塊、開關按鍵模塊、電源模塊、分立元件模塊、喇叭模塊、I/O口插孔、核心芯片A、適配板B插座、適配板C插座、40PIN插座。</p&

54、gt;<p>  3.1.2 ZY11EDA13BE實驗系統(tǒng)各模塊功能介紹</p><p><b>  (1)通用編程模塊</b></p><p>  核心芯片A(EP1K30QC208)該模塊為CPLD/FPGA器件的通用下載電路模塊,可以對ALTERA、LATTICE、 XILINX等國際著名的PLD公司幾乎所有ISP或現(xiàn)場配置的CPLD/FPGA進

55、行編程下載,且能自動識別。選擇不同的跳線XK1(5V)、XK2(3.3V)、XK3(2.5V)或XK4(1.8V),可以對不同芯核典雅的CPLD/FPGA器件進行在系統(tǒng)編程和配置。</p><p> ?。?)D/A轉換模塊</p><p>  使用TLC7524芯片把數(shù)字量轉換為電流量,通過運放轉換為電壓輸出。由于輸入的是數(shù)字量,最后輸出的是間斷的點電壓值,由于該芯片為高速D/A轉換器件,

56、在送出數(shù)據(jù)很快的情況下看不出間斷點,為此可以利用D/A完成任意波形發(fā)生器實驗。為了產(chǎn)生比較好的波形,我們可以把輸出經(jīng)過實驗箱的濾波模塊濾波產(chǎn)生更好的模擬信號。另外一點要注意的是運放是供電,在做實驗時一定要打開該電源,否則沒有結果輸出。</p><p><b>  (3)濾波模塊</b></p><p>  對信號起高通、帶通、低通三種濾波作用,通過調節(jié)電位器FW1、F

57、W2的阻值可以改變截止頻率或中心頻率,為信號提供濾波工具。該模塊可對差模輸入信號進行濾波,若是單端輸入,一端輸入信號而另一端接地。在對信號進行濾波時,用FW1和FW2調節(jié)濾波效果。</p><p>  4 VHDL語言基礎</p><p><b>  4.1 概述</b></p><p>  硬件描述語言的發(fā)展座至今已有幾十年的歷史,并已成功地

58、應用到系統(tǒng)的仿真、驗證和設計、綜合等方面。目前常用的硬件描述語言有VHDL、 VerilogHDL 、ABEL等。其中VerilogHDL起源于集成電路的設計,ABEL起源于可編程邏輯器件的設計,而VHDL則起源于VHSIC計劃,這是美國國防部于1980年制定的,目標是為下一代集成電路的設計和制造而定制一種新的描述方法。VHSIC計劃和同期的ARPAR(先進的計算機體系結構)計劃,成為后來信息高速公路計劃的基礎。VHDL的英文全稱為Ve

59、ry-High-Speed Integrated Circuit Hardware Description Language,是IEEE標準化的硬件描述語言,并且已經(jīng)成為系統(tǒng)描述的國際公認標準,得到眾多EDA公司的支持。</p><p>  VHDL有兩個標準版本,最早是在1987年底,IEEE公布了VHDL的標準版本IEEE_1076。1993年,IEEE對VHDL進行了修訂,從更高的抽象層次和系統(tǒng)描述能力方面

60、擴展了VHDL的內容,公布了新版本的VHDL,即IEEE標準的1076-1993版本。這兩種版本在書寫格式上有細微的差別,不過絕大部分EDA軟件都支持這兩種版本的書寫格式。1997年,能夠同時描述數(shù)字和模擬集成電路的VHDL語言標準IEEE1076.1發(fā)布,即VHDL-AMS。</p><p>  VHDL語言覆蓋面廣,描述能力強,能支持硬件的設計、驗證、綜合和測試,是一種多層次的硬件描述語言。其設計描述可以是描

61、述電路具體組成的結構描述,也可以是描述電路功能的行為描述。這些描述可以從最抽象的系統(tǒng)級直到最精確的邏輯級,甚至門級。</p><p>  運用VHDL語言設計系統(tǒng)一般采用自頂向下分層設計的方法,首先從系統(tǒng)級功能設計開始,對系統(tǒng)高層模塊進行行為描述和功能仿真。系統(tǒng)的功能驗證完成后,將抽象的高層設計自頂向下逐級細化,直到與所用可編程邏輯器件相對應的邏輯描述。</p><p>  4.2 VHD

62、L語言的特點</p><p>  VHDL是一種全方位的硬件描述語言,具有極強的描述能力,主要用于描述數(shù)字系統(tǒng)的結構,行為,功能和接口,能支持系統(tǒng)行為級、寄存器傳輸級和邏輯門級三個不同層次的設計,支持結構、數(shù)據(jù)流、行為三種描述形式的混合描述,覆蓋面廣,抽象能力強,因此在實際應用中越來越廣泛。</p><p>  除了含有許多具有硬件特征的語句外,VHDL的語言形式和描述風格與句法是十分類似

63、于一般的計算機高級語言。VHDL的程序結構特點是將一項工程設計或稱設計實體(可以是一個元件,一個電路模塊或一個系統(tǒng))分成外部(或稱可是部分,及端口)和內部(或稱不可視部分),既涉及實體的內部功能和算法完成部分。在對一個設計實體定義了外部界面后,一旦其內部開發(fā)完成,其他的設計就可以直接調用這個實體。這種將設計實體分成內外部分的概念是VHDL系統(tǒng)設計的基本特點。</p><p>  應用VHDL進行工程設計的優(yōu)點是多

64、方面的:</p><p> ?。?)作為硬件描述語言的第一個國際標準,VHDL具有很強的可移植性。</p><p> ?。?)與其他的硬件描述語言相比,VHDL具有更強的行為描述能力,從而決定了他成為系統(tǒng)設計領域最佳的硬件描述語言。強大的行為描述能力是避開具體的器件結構,從邏輯行為上描述和設計大規(guī)模電子系統(tǒng)的重要保證。</p><p> ?。?)VHDL豐富的仿真語

65、句和庫函數(shù),隨時可對設計進行仿真模擬,因而能將設計中邏輯上的錯誤消滅在組裝之前,在大系統(tǒng)的設計早期就能查驗設計系統(tǒng)功能的可行性。</p><p>  (4)VHDL語句的行為描述能力和程序結構決定了他具有支持大規(guī)模設計的分解和已有設計的再利用功能。符合市場需求的大規(guī)模系統(tǒng)高效,高速的完成必須有多人甚至多個代發(fā)組共同并行工作才能實現(xiàn)。</p><p> ?。?)對于用VHDL完成的一個確定的

66、設計,可以利用EDA工具進行邏輯綜合和優(yōu)化,并自動的把VHDL描述設計轉變成門級網(wǎng)表。</p><p>  (6)VHDL對設計的描述具有相對獨立性,設計者可以不懂硬件的結構,也不必管理最終設計實現(xiàn)的目標器件是什么,而進行獨立的設計。</p><p> ?。?)VHDL用源代碼描述來進行復雜控制邏輯的設計,靈活又方便,同時也便于設計結果的交流、保存和重用。</p><p

67、>  在本設計中采用VHDL(VHSIC Hardware Description Language)語言進行設計輸入具有很多好處:作為一處標準的硬件描述語言,VHDL已在ASIC及PLD設計中不斷得到推廣,它有良好的可移植性和靈活性,對電路參數(shù)的修改和電路性能的模擬也較為方便,尤其在描述很復雜的電路時比原理圖輸入法的優(yōu)越性更大。例如,當我們要改變校驗符號的數(shù)量或多項式時,若采用VHDL語言輸入法,只需修改少量的VHDL語言源代碼

68、即可,而若采用原理圖輸入的方法,則改動起來就顯得十分麻煩。</p><p>  4.3 VHDL語言編程概述</p><p>  4.3.1 VHDL程序的總體結構</p><p>  一般而言,一個相對完整的VHDL語言程序(或稱為設計實體)至少應三個基本組成部分:①庫(Library)、程序包(Package)使用說明;②實體(Entity)說明;③實體對應的結

69、構體(Architecture)說明。其中,庫、程序包使用說明用于打開(調用)本設計實體將要用到的庫、程序包;實體說明用于描述該設計實體與外界的接口信號說明,是可視部分;結構體說明用于描述該設計實體內部工作的邏輯關系,是不可視部分。在一個實體中,允許含有一個或多個結構體,而在每一個結構體中又可以含有一個或多個進程以及其他的語句。根據(jù)需要,實體還可以有配置說明語句。配置說明語句主要用于以層次化的方式對特定的設計實體進行元件例化,或是為實體

70、選定某個特定的結構體。圖4-1顯示出了VHDL程序設計中比較全面的組成結構。</p><p>  VHDL語言的總體結構一般是:</p><p>  LIBRARY IEEE;</p><p>  USE IEEE.STD_LOGIC_1164.ALL;</p><p>  USE IEEE.STD_LOGIC_ARITH.ALL;</

71、p><p>  USE IEEE.STD_LOGIC_UNSIGN.ALL;</p><p>  ENTITY 實體名 IS </p><p><b>  [端口說明];</b></p><p><b>  END 實體名;</b></p><p>  ARCHITECTURE

72、 構造體名 OF 實體名 IS</p><p>  [定義語句]內部信號、常數(shù)、數(shù)據(jù)類型、函數(shù)等的定義;</p><p><b>  BEGIN</b></p><p><b>  [并行處理語句];</b></p><p><b>  END 構造體名;</b><

73、/p><p>  在程序開始的地方引用了IEEE庫,3個USE語句使得調用該庫的VHDL設計可以使用程序包STD_LOGIC_1164、STD_LOGIC_ARITH和STD_LOGIC_UNSIGNED中預定義的內容。</p><p>  STD_LOGIC_1164程序包,其中預定義的內容為STD_LOGIC,STD_LOGIC_VECTOR等數(shù)據(jù)類型,及一些數(shù)據(jù)類型的轉換函數(shù)。STD_L

74、OGIC_ARITH程序包,其中預定義的內容為有符號和無符號類型,以及基于這些類型的算術運算。STD_LOGIC_UNSIGNED程序包,其中預定義的內容為基于STD_LOGIC和STD_LOGIC_VECTOR的無符號的算術運算。由于在程序中最常用到的數(shù)據(jù)類型就是標準數(shù)據(jù)類型,所以一般都將以上的引用語句寫在程序的最前面。這樣在程序中就可以方便地對標準數(shù)據(jù)類型進行操作。</p><p>  4.3.2 實體設計概

75、述</p><p>  實體(entity)是一個設計實體的表層設計單元,其功能是對這個設計實體與外部電路進行接口描述它規(guī)定了設計單元的輸入輸出接口信號和引腳,是設計實體與外界的一個通信界面。</p><p><b> ?、?實體語句結構</b></p><p>  實體說明單元的常用語句結構如下:</p><p>  

76、entity 實體名 is</p><p>  [generic(類屬表);]</p><p>  [port(端口表);]</p><p>  end entity 實體名;</p><p>  實體說明單元必須以語句“entity 實體名is”開始,以語句“end entity 實體名;”結束,其中的實體名是設計者自己給設計實體的命名,可

77、供其他設計實體對其進行調用時使用(考慮到MAX+PLUSII要求源程序文件的名字與實體名必須一致,因此建議各個源程序文件的命名均與實體名一致)。中間在方括號內的語句描述,在特定的情況下并非時必須的。例如構建在VHDL仿真測試平臺時就不需要方括號中的語句。</p><p><b> ?、?類屬說明語句</b></p><p>  類屬(generic)參量是一種端口界面

78、常數(shù),通常以一種說明的形式放在實體或塊結構體前的說明部分。類屬為所說明的環(huán)境提供了一種靜態(tài)信息通道,類屬的值可以由設計實體外部提供。因此,設計者可以從外面通過類屬參量的重新設定而方便地改變一個設計實體或一個元件的內部電路結構和規(guī)模,而不需要修改實體內部程序。</p><p>  類屬說明的一般書寫格式如下:</p><p>  generic([常數(shù)名;數(shù)據(jù)類型[:設定值]]{;常數(shù)名;數(shù)

79、據(jù)類型[:設定值]});</p><p><b> ?、?端口說明</b></p><p>  由port引導的端口說明語句是對于一個設計實體界面的說明。實體端口說明的一般書寫格式如下:</p><p>  port(端口名:端口模式 數(shù)據(jù)類型;{端口名:端口模式 數(shù)據(jù)類型});</p><p>  其中,端口名是設計者

80、為實體的每一個對外通道所取得名字;端口模式是指這些通道上的數(shù)據(jù)流動方式,如輸入或輸出等;數(shù)據(jù)類型是指端口上流動的數(shù)據(jù)的表達格式。由于VHDL是一種強類型語言,它對語句中的所有操作數(shù)的數(shù)據(jù)類型都有嚴格的規(guī)定。一個實體通常有一個或多個端口,端口類似于原理圖部件符號上的管腳。實體與外界交流的信息必須通過端口通道流入或流出。</p><p>  IEEE1076標準包中定義了4種常用的端口模式,各端口模式的功能及符號&l

81、t;/p><p>  在實際的數(shù)字集成電路中,in相當于只允許輸入的引腳,out相當于只允許輸出的引腳,buffer相當于帶輸出緩沖器并可以回讀的引腳(與三態(tài)引腳不同),而inout相當于雙向引腳。</p><p>  4.3.3 結構體設計概述</p><p>  結構體(architecture)是用于描述設計實體的內部結構及實體端口間的邏輯關系。結構體內部構造的描

82、述層次和描述內容可以用圖4-3來說明。一般而言,一個完整的結構體由以下兩個基層次組成:</p><p>  1 對數(shù)據(jù)類型、常數(shù)、信號、子程序和元件等元素的說明部分;</p><p>  2 以行為、數(shù)據(jù)流、結構描述方式表達實體邏輯行為或功能的描述語句。</p><p>  結構體將具體實現(xiàn)一個實體。每個實體可以由多個機構體,每個結構體對應著實體的不同結構和算法的實

83、現(xiàn)方案,其間的各個結構的地位是同等的,但同一結構體不能為不同的實體所擁有。結構體不能單獨存在,它必須有一個界面說明,即對應著一個實體。對于具有多個結構體的實體,必須用配置(configuration)語句指明實際用于綜合的結構體和用于仿真的結構體。在電路中,如果實體代表一個器件符號,則結構體描述了這個符號的內部行為。當把這個符號例化成一個實際的器件安裝到電路上時,則需配置語句為這個例化的器件指定一個結構體(即指定一種實現(xiàn)方案),或由編譯

84、器自動選定一個默認的結構體。</p><p> ?、沤Y構體的一般語句格式</p><p>  結構體的語句格式如下:</p><p>  architecture 結構體名 of 實體名 is </p><p><b>  [說明語句]</b></p><p><b>  be

85、gin</b></p><p><b>  [功能描述語句]</b></p><p>  end architecture 結構體名;</p><p>  其中,實體名必須與設計實體名一致,而結構體名可以由設計者自己選擇,但當一個實體具有多個結構體時,結構體的取名不可重復。</p><p><b>

86、 ?、平Y構體說明語句</b></p><p>  結構體中的說明語句是對結構體的功能描述語句中將要用到的信號(signal)、數(shù)據(jù)類型(type)、常數(shù)(constant)、元件(component)、函數(shù)()、和過程()等加以說明的語句。但在一個結構體中說明和定義的數(shù)據(jù)類型、常數(shù)、元件、函數(shù)和過程只能用于這個結構體中,若希望其能用于其他的實體或結構體中,則需要專門的程序包來處理。</p>

87、<p><b>  ⑶功能描述語句結構</b></p><p>  結構體功能描述可以含有五種不同類型的,且是以并行方式工作的語句結構。而在每一語句結構內部可能含有并行運行的邏輯描述語句或順序運行的邏輯描述語句。各語句結構的基本組成和功能分別是:</p><p> ?、賶K語句是由一系列并行執(zhí)行語句構成的組合體,它的功能是將結構體中的并行語句組成一個或多個

88、模塊從而使程序結構清晰易讀。</p><p> ?、谶M程語句定義順序語句模塊,用以將從外部獲得的信號值,或內部的運算數(shù)據(jù)向其他的信號進行賦值。</p><p>  ③信號賦值語句將設計實體內的處理結果向定義的信號或界面端口進行賦值。</p><p> ?、茏映绦蛘{用語句用于調用一個已設計好的子程序。</p><p> ?、菰Z句對其他的

89、設計實體進行元件的調用說明,并將此元件的端口與其他的元件、信號或高層次實體的界面端口進行連接。</p><p><b>  4.3.4 配置</b></p><p>  配置(configuration)可以把特定的結構體指定給一個確定的實體。通常在大而復雜的VHDL工程設計中,配置語句可以為實體指定或配置一個結構體。如何利用配置使仿真器為同一實體配置不同的結構體以使

90、設計者比較不同結構體的仿真差別,或者為例化的各元件實體配置指定的結構體,從而形成一個所希望的例化元件層次構成的設計實體,當選擇改變結構體時,只需對配置文件進行重新編輯和仿真。</p><p>  配置語句的一般格式如下:</p><p>  configuration 配置名 of 實體名 is </p><p><b>  配置說明</b>&

91、lt;/p><p><b>  end 配置名;</b></p><p>  配置分為默認配置、元件配置、塊配置和結構配置共四種:</p><p> ?。?) 默認配置(配置指定)——是最簡單形式的顯式的配置(當有幾個結構體時,配置實體將自動調用最后編輯的結構體),不含任何塊語句和元件的模塊用這種配置,默認配置指定配置實體的配置名和為實體指定的結構

92、體。</p><p>  (2) 元件配置——通過構造可配置的具體安裝庫元件,在結構性結構體中,用元件配置語句配置這些元件。</p><p> ?。?) 塊配置——當結構體含有塊語句時,配置必須反映塊語句。塊起著在所含結構體和某種正被配置元件之間分出另一層次的作用,在配置結構體時,必須指明正在進行哪個塊的配置 。</p><p>  (4)結構配置——這種配置在結構

93、體說明部分并且規(guī)定用在結構體中的元件配置,若已經(jīng)采用了結構配置,則結構體中所用的元件不再需要單獨的配置說明。</p><p>  4.4 VHDL設計的流程及階段劃分</p><p>  4.4.1 設計流程</p><p>  設計的第一個步驟稱為設計的切入點,其方式有許多種,包含以原理圖繪制、狀態(tài)機或是真值表及波形的輸入等,當然VHDL也是其中的一種。將設計所達

94、到的目標以上述的各種方式之一進行描述,這是設計的第一步。將設計以VHDL完成后,接下來要做的是function simulation。Function simulation 所要達到的目標是功能上的驗證。在做function之前先要將VHDL進行語法上的檢查及編譯,等到通過了檢查才能進入 function simulation的步驟。在進行function simulation 時使用的方式大多是將特定的信號輸入設計,再觀察設計輸出的信

95、號是否正確。在做function simulation時可能需要常常回到VHDL source code 進行修改,等到所有的功能都正確后才能進行下一個步驟。緊接著的步驟是邏輯合成,其作用是將VHDL source code 依據(jù)之后的PLD轉換成place&route工具所需的輸入格式,一般PLD的發(fā)展統(tǒng)大多都能接收EDIF(Electronic Data Interchange Format)的格式。合成器的動作大</

96、p><p>  在進行place&route時設計者所能做的就是擬定constraint, constraint給予place&route一個努力的方向。當place&route工具讀入一個經(jīng)過邏輯合成的netlist的文件時,它并沒有將此一設計布成clock 10MHz的線路的概念,還是要將其布成clock 20KHz的線路。當對設計下了一些constraint 后,place&ro

97、ute才知道在某些時序上較臨界的線路需要用較快速的器件來完成,而在大部分不是很在乎時序的線路上用一般較普通的器件來完成。</p><p>  做完place&route后,開發(fā)工具可產(chǎn)生含有timing delay的VHDL netlist文件。這是最準確的timing delay 文件,所以可以在此做timing simulation。當然要不要做pre-layout simulation 是見人見智的

98、做法,也可以兩者都做,也有人認為可以做完place&route后將結果直接送到電路板上測試,因為要做simulation需要輸入正確的測試pattern。如果測試pattern不正確或是其代表性不夠,就算是做了simulation 也不能保證結果的正確。</p><p>  4.4.2 設計階段的劃分</p><p>  在一般的設計方法中可分為top down 或bottom u

99、p 兩種,以VHDL來做設計自然也不例外,但根據(jù)VHDL的特點,大多數(shù)人采用的是兩者結合的方式。先將整個設計依功能上的需要劃分成數(shù)個小的區(qū)塊,再從每個區(qū)塊中進行底層模塊詳細設計。也就是說在功能上采用top down design,當劃分完后開始coding的工作,此時則是由一個個下層的方塊開始,將一個個方塊都coding完畢,再完成function simulation之后,再調整時序使其協(xié)調工作,整合成完整的設計,實現(xiàn)預想的功能,這就

100、是在底層模塊的設計上采用bottom up的</p><p><b>  方式。 </b></p><p>  5 MAX+PLUSⅡ的使用</p><p><b>  5.1 概述</b></p><p>  美國Altera公司的MAX+plusⅡ開發(fā)工具是一種CAE軟件工具,全稱是全集成化

101、可編程邏輯設計環(huán)境(Multiple Array Matrix and Programmable Logic User Systems).該工具配備有編輯,編譯,仿真 ,芯片編程等功能,具有兩種輸入手段:文本輸入(使用一種編輯語言,如VHDL語言)和原理圖輸入。在使用過程中,可以把電路描述程序和設計電路圖變成基本的邏輯單元寫入到可編程芯片中(如FPGA,CPLD芯片),最終成為ASIC芯片.也可以不用搭建硬件電路,把MAX+PLUSⅡ作

102、為邏輯仿真工具,即可對設計進行調試,驗證。 MAX+PLUSⅡ開發(fā)工具目前在國內使用很普遍,擁有完備的在線幫助,初學者可以很快學習掌握該工具的使用,完成高性能的設計.它是EDA設計中不可缺少的一種工具。</p><p>  5.2 MAX+PLUSⅡ的應用</p><p>  使用MAX+PLUSⅡ進行設計總共包括四個階段分別是:設計輸入、設計處理、設計驗證和器件編程。</p>

103、<p>  5.2.1 設計輸入</p><p>  在Windows的程序管理器窗口中用鼠標左鍵雙擊圖標,或在“開始”菜單內選擇MAX+PLUSⅡ項,開始運行MAX+PLUSⅡ,管理器窗口被打開.</p><p><b>  圖形設計輸入方法</b></p><p>  MAX+PLUS II編譯器的工作對象是項目,所以在進行一

104、個邏輯設計時,首先要指定該設計的項目名稱,對干每個新的項目應該建立一個單獨的子目錄,如果該子目錄不存在, MAX+PLUSI將自動創(chuàng)建.以后所有與該項目有關的文件都將存在這個子錄下.每個設計必須有一個項目名,并需要保證項目名與設計文件名一致.再建立新文件,在 File菜單中選擇 New將出現(xiàn) New對話框;在New對話框中選擇Graphic Editor File項,然后按下OK按鈕,將會出現(xiàn)一個無標題的圖形編輯器窗口,通過點擊圖形編輯

105、器標題條中的放大按鈕,可使圖形編輯器窗口放至最大.</p><p>  (2)文本設計輸入方法</p><p>  MAX + PLUS II支持AHDL,VHDL和Verilog HDL等硬件描述語言.AHDL是Altera Hardware Description Languae的縮寫,它是一種高級硬件行為描述語言,該語言可以使用布爾方程,算術關系運算表達式、真值表、條件語句等方式進行

106、描述,適合做大型的、復雜的狀態(tài)機設計。VHDL和Verilog HDL是符合IEEE標準的高級硬件行為描述語言,也都適合于大型的、復雜的設計.這些語言都是用文本來進行設計,它們的輸入方式既有共同之處,又各有特點,設計人員可根據(jù)實際情況選擇使用.</p><p>  5.2.2 設計項目的編譯</p><p>  (1) 選擇器件,即定義用哪種CPLD或FPGA邏輯器件來實現(xiàn)設計.單擊Ass

107、ign菜單選擇Device選項,”Device Family”選擇”MAX7000”,”Device”項選擇”AUTO”,單擊”O(jiān)K”按鈕,就可以確認器件.</p><p>  (2) 保存文件并檢查基本錯誤.單擊file菜單,選擇”project/save&check”選項,出現(xiàn)”Safe As”對話框,選擇存儲路徑,保存.文件保存后自動出現(xiàn)檢查對話框,并自動提示有無錯誤.如有錯誤檢查文本或電路圖錯誤,

溫馨提示

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

評論

0/150

提交評論