




版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、 地鐵站售票系統(tǒng)的控制摘要 隨著公共交通的飛速發(fā)展,地鐵已經(jīng)不再是一個(gè)新的名詞,地鐵給城市帶來(lái)的便捷眾所周知,但是如何更好的控制地鐵,已經(jīng)成為很多國(guó)家追捧的熱點(diǎn)和難題。 本課題就是圍繞地鐵控制中的售票系統(tǒng)的控制實(shí)現(xiàn),系統(tǒng)闡述了EDA技術(shù)的由來(lái)和發(fā)展前景,VHDL語(yǔ)言的編譯,以及在電腦中運(yùn)用MAXPLUS軟件的仿真出課題要求任務(wù)。讓我們不僅在理論上實(shí)現(xiàn)了地鐵售票系統(tǒng)的控制語(yǔ)言的編譯,而且在軟件上也得到仿真。通過(guò)圖表。讓我們看到程序運(yùn)行數(shù)據(jù),流程說(shuō)明,以及可能產(chǎn)生的問(wèn)題。這一切都是通過(guò)精心的論證。當(dāng)然本論文也可以讓地鐵站工作人員對(duì)票務(wù)的管理具有很好的參考價(jià)值關(guān)鍵詞:EDA技術(shù) VHDL語(yǔ)言 MAX
2、PLUS仿真軟件 Subway station ticket system control AbstractWith the rapid development of public transportation, subway is no longer a new term, subway to the city brought convenient as everyone knows, but how to better control the subway, has become in many countries pursued hot and difficult problem.The
3、 topic is on the subway control in the ticketing system control, the system elaborated the EDA technology of the origin and development prospects, VHDL language compiler, as well as in computer by use of MAXPLUS software simulation to task demands of the task. Let us not only in the theory on the re
4、alization of the subway ticketing system control language compiler, but also in the software has also been simulation. Through the graph. Let us see the program operation data, process description, and possible problems. All this is through careful argumentation. Of course, this thesis also can let
5、subway station staff to the ticket clerk management has very good reference valueKey words: EDA VHDL MAXPLUS language simulation software目錄摘要1Abstract2第一章 EDA技術(shù)概述61.1 EDA技術(shù)的概念61.2 EDA技術(shù)的主要內(nèi)容61.3 EDA常用軟件介紹71.4 EDA技術(shù)的應(yīng)用展望8第二章 VHDL編程基礎(chǔ)92.1 概述92.2 數(shù)字系統(tǒng)的硬件設(shè)計(jì)概述92.1.2利用硬件描述語(yǔ)言()的硬件電路設(shè)計(jì)方法92.1.3 VHDL語(yǔ)言設(shè)計(jì)硬件電路的
6、優(yōu)點(diǎn)102.2 VHDL語(yǔ)言程序的基本結(jié)構(gòu)102.2.1 VHDL語(yǔ)言設(shè)計(jì)的基本單元102.2.2構(gòu)造體(實(shí)現(xiàn))102.2.3語(yǔ)言結(jié)構(gòu)體的子結(jié)構(gòu)描述122.2.4庫(kù)132.2.5包集合132.2.6配置132.3 VHDL語(yǔ)言的數(shù)據(jù)類型及運(yùn)算操作符142.3.1 VHDL語(yǔ)言的客體(或?qū)ο?及其分類142.3.2 VHDL語(yǔ)言的數(shù)據(jù)類型152.3.3用戶定義的子類型162.3.4數(shù)據(jù)類型的轉(zhuǎn)換172.4 VHDL語(yǔ)言的主要描述語(yǔ)句172.5 VHDL語(yǔ)言構(gòu)造體的描述方式18第三章 MAX+PLUS使用簡(jiǎn)介193.1 建立一個(gè)新項(xiàng)目203.2 建立一新的圖形輸入文件213.3 編輯圖形輸入文件2
7、23.4 編譯項(xiàng)目文件243.5 創(chuàng)建波形文件并進(jìn)行功能仿真25第四章 設(shè)計(jì)284.1 設(shè)計(jì)要求:294.2 課題分析294.2.1系統(tǒng)流程圖:294.2.2系統(tǒng)狀態(tài)圖31第五章 實(shí)現(xiàn)32第六章 總結(jié)39致謝39參考文獻(xiàn)39附錄40引言隨著大規(guī)模集成電路技術(shù)和計(jì)算機(jī)技術(shù)的不斷發(fā)展,在涉及通信、國(guó)防、航天、醫(yī)學(xué)、工業(yè)自動(dòng)化、計(jì)算機(jī)應(yīng)用、儀器儀表等領(lǐng)域的電子系統(tǒng)設(shè)計(jì)工作中,EDA技術(shù)的含量正以驚人的速度上升;電子類的高新技術(shù)項(xiàng)目的開(kāi)發(fā)也逾益依賴于EDA技術(shù)的應(yīng)用。即使是普通的電子產(chǎn)品的開(kāi)發(fā),EDA技術(shù)常常使一些原來(lái)的技術(shù)瓶頸得以輕松突破,從而使產(chǎn)品的開(kāi)發(fā)周期大為縮短、性能價(jià)格比大幅提高。不言而喻,
8、EDA技術(shù)將迅速成為電子設(shè)計(jì)領(lǐng)域中的極其重要的組成部分。地鐵的控制固然離不開(kāi)這項(xiàng)新的技術(shù),因此我們應(yīng)該更應(yīng)該對(duì)這項(xiàng)技術(shù)有一定的認(rèn)識(shí)!4 第一章 EDA技術(shù)概述1.1 EDA技術(shù)的概念 即電子設(shè)計(jì)自動(dòng)( Electronic DesignAutomation)技術(shù),以大規(guī)模可編程邏輯器件為設(shè)計(jì)載體,以硬件描述語(yǔ)言為系統(tǒng)邏輯描述的主要表達(dá)方式,以計(jì)算機(jī)、大規(guī)模可編程邏輯器件的開(kāi)發(fā)軟件及實(shí)驗(yàn)開(kāi)發(fā)系統(tǒng)為設(shè)計(jì)工具,通過(guò)有關(guān)的開(kāi)發(fā)軟件,自動(dòng)完成用軟件的方式設(shè)計(jì)電子系統(tǒng)到硬件系統(tǒng)的一門(mén)技術(shù)。1.2 EDA技術(shù)的主要內(nèi)容 EDA技術(shù)涉及面很廣,內(nèi)容豐富,從教學(xué)和實(shí)用的角度看,主要應(yīng)掌握如下四個(gè)方面的內(nèi)容:1)
9、大規(guī)??删幊踢壿嬈骷?2)硬件描述語(yǔ)言;3)軟件開(kāi)發(fā)工具;4)實(shí)驗(yàn)開(kāi)發(fā)系統(tǒng)。其中,大規(guī)??删幊踢壿嬈骷抢肊DA技術(shù)進(jìn)行電子系統(tǒng)設(shè)計(jì)的載體,硬件描述語(yǔ)言是利用EDA技術(shù)進(jìn)行電子系統(tǒng)設(shè)計(jì)的主要表達(dá)手段,軟件開(kāi)發(fā)工具是利用EDA技術(shù)進(jìn)行電子系統(tǒng)設(shè)計(jì)的智能化的自動(dòng)設(shè)計(jì)工具,實(shí)驗(yàn)開(kāi)發(fā)系統(tǒng)則是利用EDA技術(shù)進(jìn)行電子系統(tǒng)設(shè)計(jì)的下載工具及硬件驗(yàn)證工具。大規(guī)??删幊踢壿嬈骷LD(Programmable Logic Device,可編程邏輯器件)是一種由用戶編程以實(shí)現(xiàn)某種邏輯功能的新型邏輯器件。FPGA和CPLD分別是現(xiàn)場(chǎng)可編程門(mén)陣列和復(fù)雜可編程邏輯器件的簡(jiǎn)稱,兩者的功能基本相同,只是實(shí)現(xiàn)原理略有不同,所
10、以我們有時(shí)可以忽略這兩者的區(qū)別,統(tǒng)稱為可編程邏輯器件或CPLD/FPGA。PLD是電子設(shè)計(jì)領(lǐng)域中最具活力和發(fā)展前途的一項(xiàng)技術(shù),PLD能完成任何數(shù)字器件的功能。PLD如同一張白紙或是一堆積木,工程師可以通過(guò)傳統(tǒng)的原理圖輸入法,或是硬件描述語(yǔ)言自由的設(shè)計(jì)一個(gè)數(shù)字系統(tǒng),通過(guò)軟件仿真,我們可以事先驗(yàn)證設(shè)計(jì)的正確性。在PCB完成以后,還可以利用PLD的在線修改能力,隨時(shí)修改設(shè)計(jì)而不必改動(dòng)硬件電路。使用PLD來(lái)開(kāi)發(fā)數(shù)字電路,可以大大縮短設(shè)計(jì)時(shí)間,減少PCB面積,提高系統(tǒng)的可靠性。PLD的這些優(yōu)點(diǎn)使得PLD技術(shù)在20世紀(jì)90年代以后得到飛速的發(fā)展,同時(shí)也大大推動(dòng)了EDA軟件和硬件描述語(yǔ)言(HDL)的進(jìn)步。硬
11、件描述語(yǔ)言(HDL)硬件描述語(yǔ)言(HDL)是相對(duì)于一般的計(jì)算機(jī)軟件語(yǔ)言如C、Pascal而言的。HDL是用于設(shè)計(jì)硬件電子系統(tǒng)的計(jì)算機(jī)語(yǔ)言,它描述電子系統(tǒng)的邏輯功能、電路結(jié)構(gòu)和連接方式。HDL具有與具體硬件電路無(wú)關(guān)和與設(shè)計(jì)平臺(tái)無(wú)關(guān)的特性,并且具有良好的電路行為描述和系統(tǒng)描述的能力,并在語(yǔ)言易讀性和層次化結(jié)構(gòu)化設(shè)計(jì)方面,表現(xiàn)了強(qiáng)大的生命力和應(yīng)用潛力。用HDL進(jìn)行電子系統(tǒng)設(shè)計(jì)的一個(gè)很大的優(yōu)點(diǎn)是設(shè)計(jì)者可以專心致力于其功能的實(shí)現(xiàn),而不需要對(duì)不影響功能的與工藝有關(guān)的因素花費(fèi)過(guò)多的時(shí)間和精力。就FPGA/CPLD開(kāi)發(fā)來(lái)說(shuō),比較常用和流行的HDL主要有VHDL、Verilog HDL、ABEL、AHDL、Sy
12、stemVerilog和SystemC。其中VHDL、Verilog在現(xiàn)在EDA設(shè)計(jì)中使用最多,也擁有幾乎所有的主流EDA工具的支持。而Sys-temVerilog和SystemC這兩種HDL語(yǔ)言還處于完善過(guò)程中?,F(xiàn)在,VHDL和Verilog作為IEEE的工業(yè)標(biāo)準(zhǔn)硬件描述語(yǔ)言,又得到眾多EDA公司的支持,在電子工程領(lǐng)域,已成為事實(shí)上的通用硬件描述語(yǔ)言。有專家認(rèn)為,在新的世紀(jì)中,VHDL與Verilog HDL語(yǔ)言將承擔(dān)起大部分的數(shù)字系統(tǒng)設(shè)計(jì)任務(wù)。1 1.3 EDA常用軟件介紹 EDA工具層出不窮,目前進(jìn)入我國(guó)并具有廣泛影響的EDA軟件有:multiSIM7(原EWB的最新版本)、PSPICE
13、、OrCAD、PCAD、Protel、Viewlogic、Mentor、Graphics、Synopsys、LSIIogic、Cadence、MicroSim等等。這些工具都有較強(qiáng)的功能,一般可用于幾個(gè)方面,例如很多軟件都可以進(jìn)行電路設(shè)計(jì)與仿真,同進(jìn)還可以進(jìn)行PCB自動(dòng)布局布線,可輸出多種網(wǎng)表文件與第三方軟件接口。1.4 EDA技術(shù)的應(yīng)用展望EDA技術(shù)將廣泛應(yīng)用于高校電類專業(yè)的實(shí)踐教學(xué)和科研工作中與世界各知名高校相比,我國(guó)高等院校在EDA及微電子方面的教學(xué)和科研工作有著明顯的差距,我們的學(xué)生現(xiàn)在做的課程實(shí)驗(yàn)普遍陳舊,動(dòng)手能力較差。從某種意義上來(lái)說(shuō),EDA教學(xué)科研情況如何,代表著一個(gè)學(xué)校電類專業(yè)
14、教學(xué)及科研水平的高低,而EDA教學(xué)科研工作開(kāi)展起來(lái)后,還會(huì)對(duì)微電子類、計(jì)算機(jī)類學(xué)科產(chǎn)生積極的影響,從而帶動(dòng)各高校相應(yīng)學(xué)科的同步發(fā)展。EDA技術(shù)將廣泛應(yīng)用于專用集成電路和新產(chǎn)品的開(kāi)發(fā)研制中由于可編程邏輯器件性能價(jià)格比的不斷提高,開(kāi)發(fā)軟件功能的不斷完善,而且由于用EDA技術(shù)設(shè)計(jì)電子系統(tǒng)具有用軟件的方式設(shè)計(jì)硬件;設(shè)計(jì)過(guò)程中可用有關(guān)軟件進(jìn)行各種仿真;系統(tǒng)可現(xiàn)場(chǎng)編程,在線升級(jí);整個(gè)系統(tǒng)可集成在一個(gè)芯片上等特點(diǎn),使其將廣泛應(yīng)用于專用集成電路和機(jī)械、電子、通信、航空航天、化工、礦產(chǎn)、生物、醫(yī)學(xué)、軍事等各個(gè)領(lǐng)域新產(chǎn)品的開(kāi)發(fā)研制中。EDA技術(shù)將廣泛應(yīng)用于傳統(tǒng)機(jī)電設(shè)備的升級(jí)換代和技術(shù)改造傳統(tǒng)機(jī)電設(shè)備的電器控制系統(tǒng)
15、,如果利用EDA技術(shù)進(jìn)行重新設(shè)計(jì)或進(jìn)行技術(shù)改造,不但設(shè)計(jì)周期短、設(shè)計(jì)成本低,而且將提高產(chǎn)品或設(shè)備的性能,縮小產(chǎn)品體積,提高產(chǎn)品的技術(shù)含量,提高產(chǎn)品的附加值。EDA技術(shù)將在國(guó)防現(xiàn)代化建設(shè)中發(fā)揮重要的作用EDA技術(shù)是電子設(shè)計(jì)領(lǐng)域的一場(chǎng)革命,目前正處于高速發(fā)展階段,每年都有新的EDA工具問(wèn)世,我國(guó)EDA技術(shù)的應(yīng)用水平長(zhǎng)期落后于發(fā)達(dá)國(guó)家,如果說(shuō)用于民品的核心集成電路芯片還可以從國(guó)外買的到的話,那么軍用集成電路就必須依靠自己的力量研制開(kāi)發(fā),因?yàn)橛缅X是買不到國(guó)防現(xiàn)代化的,特別是中國(guó)作為一支穩(wěn)定世界的重要力量,更要走自主開(kāi)發(fā)的道路。強(qiáng)大的現(xiàn)代國(guó)防必須建立在自主開(kāi)發(fā)的基礎(chǔ)上,因此,廣大電子工程技術(shù)人員應(yīng)該盡早
16、掌握這一先進(jìn)技術(shù),這不僅是提高設(shè)計(jì)效率和我國(guó)電子工業(yè)在世界市場(chǎng)上生存、竟?fàn)幣c發(fā)展的需要,更是建立強(qiáng)大現(xiàn)代國(guó)防的需要。第二章 VHDL編程基礎(chǔ)2.1 概述VHDL語(yǔ)言(VHSIC Hardware Description Language,甚高速集成電路硬件描述語(yǔ)言)是一種設(shè)計(jì)、仿真、綜合的標(biāo)準(zhǔn)硬件描述語(yǔ)言,是對(duì)可編程邏輯器件進(jìn)行開(kāi)發(fā)與設(shè)計(jì)的重要工具,其優(yōu)點(diǎn)是:支持自上而下和基于庫(kù)的設(shè)計(jì),支持范圍廣,具有多層次描述系統(tǒng)硬件功能的能力。VHDL語(yǔ)言已成為IEEE的一種工業(yè)標(biāo)準(zhǔn),是實(shí)現(xiàn)信息系統(tǒng)硬件開(kāi)發(fā)所必備的知識(shí)和技能。2.2 數(shù)字系統(tǒng)的硬件設(shè)計(jì)概述 l 采用自下而上(ottom )的設(shè)計(jì)方法l 采
17、用通用的邏輯元、器件l 在系統(tǒng)硬件設(shè)計(jì)的后期進(jìn)行仿真和調(diào)試l 主要設(shè)計(jì)文件是電原理圖2.1.2利用硬件描述語(yǔ)言()的硬件電路設(shè)計(jì)方法l 硬件描述語(yǔ)言:可以描述硬件電路的功能,信號(hào)連接關(guān)系和定時(shí)關(guān)系的語(yǔ)言。利用硬件描述語(yǔ)言編程來(lái)表示邏輯器件與系統(tǒng)硬件的功能和行為,是該設(shè)計(jì)方法的一個(gè)重要特征。l 采用自上而下(op Down)的設(shè)計(jì)方法 就是從系統(tǒng)的總體要求出發(fā),自上而下地逐步將設(shè)計(jì)內(nèi)容細(xì)化,最后完成系統(tǒng)硬件的總體設(shè)計(jì)。l 設(shè)計(jì)的三個(gè)層次:第一層次是行為描述。 第二層次是RTL方式描述,又稱寄存器傳輸描述(數(shù)據(jù)流描述),以實(shí)現(xiàn)邏輯綜合。第三層次是邏輯綜合。l 自上而下硬件設(shè)計(jì)流程(表2-1)表2-
18、12.1.3 VHDL語(yǔ)言設(shè)計(jì)硬件電路的優(yōu)點(diǎn)l 美國(guó)國(guó)防部1982年開(kāi)發(fā)VHDL(Very -High-Speed Integrated Circuit Hardware Description Language)語(yǔ)言,是當(dāng)前廣泛使用的HDL語(yǔ)言之一,并被IEEE和美國(guó)防部采用為標(biāo)準(zhǔn)的HDL語(yǔ)言。l 設(shè)計(jì)技術(shù)齊全、方法靈活、支持廣泛l 系統(tǒng)硬件描述能力強(qiáng)l 可以與工藝無(wú)關(guān)編程l 語(yǔ)言標(biāo)準(zhǔn)、規(guī)范、易于共享和復(fù)用 2.2 VHDL語(yǔ)言程序的基本結(jié)構(gòu)2.2.1 VHDL語(yǔ)言設(shè)計(jì)的基本單元l 一個(gè)完整的VHDL語(yǔ)言程序通常包含實(shí)體(Entity)、構(gòu)造體(Architecture)、配置(Config
19、uration)、包集合(Package)和庫(kù)(Library):l 功能: 實(shí)體、構(gòu)造體、包集合、配置和庫(kù) l 基本組成:實(shí)體說(shuō)明和構(gòu)造體兩部分 2.2.2構(gòu)造體(實(shí)現(xiàn))1 實(shí)體說(shuō)明:規(guī)定此實(shí)體輸入與輸出的數(shù)目與類型。l 結(jié)構(gòu): entity 實(shí)體名 isgeneric(類屬參數(shù)說(shuō)明);port(端口說(shuō)明);end實(shí)體名;l 類屬參數(shù)說(shuō)明:generic ( 常數(shù)名:數(shù)據(jù)類型:數(shù)值);在端口說(shuō)明前,用于指定參數(shù)。l 端口說(shuō)明: 在entity語(yǔ)句的實(shí)體說(shuō)明部分,常用port語(yǔ)句描述實(shí)體對(duì)外界連接的端口(數(shù)目、方向和數(shù)據(jù)類型)。port (端口名:端口方向端口數(shù)據(jù)類型;端口名:端口方向端口數(shù)據(jù)
20、類型;);端口方向:in (輸入),只能讀,用于:時(shí)鐘輸入、控制輸入(裝入、復(fù)位、使能)、單向數(shù)據(jù)輸入;out (輸出),只能被賦值,用于不能反饋的輸出;inout(輸入輸出) ,既可讀又可被賦值,被讀的值是端口輸入值而不是被賦值,作為雙向端口。buffer(緩沖),類似于輸出,但可以讀,讀的值是被賦值,用做內(nèi)部反饋用,不能作為雙向端口使用。VHDL語(yǔ)言設(shè)計(jì)的構(gòu)造體構(gòu)造體定義實(shí)體功能的一種實(shí)現(xiàn)。l 構(gòu)造體的結(jié)構(gòu):architecture 構(gòu)造體名of 實(shí)體名 is塊說(shuō)明項(xiàng)begin 并發(fā)語(yǔ)句end 構(gòu)造體名;塊說(shuō)明項(xiàng)(或定義語(yǔ)句),位于architecture 和begin之間,對(duì)構(gòu)造體內(nèi)部的
21、使用信號(hào)、常數(shù)、數(shù)據(jù)類型和函數(shù)進(jìn)行說(shuō)明。l 并行語(yǔ)句處于begin 與end之間,描述構(gòu)造體的行為與連接關(guān)系。l 構(gòu)造體的描述方法: 行為描述 數(shù)據(jù)流描述或RTL描述 結(jié)構(gòu)化描述 l 構(gòu)造體的組織(表2-2)表2-22.2.3語(yǔ)言結(jié)構(gòu)體的子結(jié)構(gòu)描述1. block語(yǔ)句結(jié)構(gòu)l 語(yǔ)句結(jié)構(gòu):塊結(jié)構(gòu)名:block begin . . .end block 塊結(jié)構(gòu)名;2. 進(jìn)程(process)語(yǔ)句結(jié)構(gòu)l 進(jìn)程語(yǔ)句的結(jié)構(gòu):進(jìn)程名:process(信號(hào),信號(hào),) 說(shuō)明內(nèi)部變量begin順序語(yǔ)句 end process;l 功能獨(dú)立的電路可用進(jìn)程來(lái)描述l 進(jìn)程中語(yǔ)句的順序性l 進(jìn)程的啟動(dòng)l 進(jìn)程的同步描述同
22、一結(jié)構(gòu)體中有多個(gè)進(jìn)程存在時(shí),進(jìn)程之間可一邊進(jìn)行通信,一邊并行同步執(zhí)行。子程序(subprogram)語(yǔ)句結(jié)構(gòu)描述 兩種類型:過(guò)程(procedure) 函數(shù) (function)l 過(guò)程語(yǔ)句結(jié)構(gòu):procedure 過(guò)程名(參數(shù)1,參數(shù)2,) is 定義語(yǔ)句;begin 順序處理語(yǔ)句;end 過(guò)程名;l 函數(shù)語(yǔ)句結(jié)構(gòu):function 函數(shù)名(參數(shù)1,參數(shù)2,) return 數(shù)據(jù)類型名 is 定義語(yǔ)句;begin 順序處理語(yǔ)句; return 返回變量名end 函數(shù)名;2.2.4庫(kù)庫(kù)(Library)是經(jīng)編譯后的數(shù)據(jù)的集合,庫(kù)說(shuō)明總是放在設(shè)計(jì)單元的最前面。1) 庫(kù)的種類:l IEEE 庫(kù) l
23、 STD庫(kù) l ASIC矢量庫(kù)l WORK 庫(kù)l 用戶定義的庫(kù)2) 庫(kù)的使用l 除WORK、STD庫(kù)外,首先要說(shuō)明。格式: library 庫(kù)名; use 庫(kù)名.包名.項(xiàng)目名;l 庫(kù)說(shuō)明的作用范圍:從實(shí)體開(kāi)始到其所屬構(gòu)造體、配置為止。2.2.5包集合l 包集合用于封裝屬于多個(gè)設(shè)計(jì)單元分享的公共信息。l 包集合由包說(shuō)明(說(shuō)明數(shù)據(jù)類型、子程序和常量等)和包體(它含有子程序體與現(xiàn)有的延時(shí)常數(shù))所組成。子程序由執(zhí)行公共操作的過(guò)程和函數(shù)組成。包集合是分享屬于實(shí)體數(shù)據(jù)的一種機(jī)制,把子程序、數(shù)據(jù)類型和元件說(shuō)明看成建立設(shè)計(jì)的工具,則包集合可看成工具箱。 1) 包集合的結(jié)構(gòu): package 包集合名 is 包
24、集合說(shuō)明語(yǔ)句; end 包集合名; package body 包集合名 is 包集合體說(shuō)明語(yǔ)句; end 包集合名;注:包集合體為可選項(xiàng)。3) 包集合的使用: use work.包集合名.all;l 用于其他使用此包集合的程序: 2.2.6配置描述層與層之間的連接關(guān)系以及實(shí)體與構(gòu)造體之間的連接關(guān)系。在仿真時(shí)利用配置選擇不同的構(gòu)造體。格式:CONFIGURATION 配置名 OF 實(shí)體名 ISFOR 構(gòu)造體名END FOR; END 配置名;2.3 VHDL語(yǔ)言的數(shù)據(jù)類型及運(yùn)算操作符 2.3.1 VHDL語(yǔ)言的客體(或?qū)ο?及其分類l 可以賦予一個(gè)值的對(duì)象成為客體(object)。l 客體包括:
25、 信號(hào)、變量、常數(shù)l 客體的含義與說(shuō)明:(表2-3)客體說(shuō)明 含 義 說(shuō) 明 場(chǎng) 合 信號(hào) 全局量architecture, package, entity 變量 局部量process, function, procedure 常數(shù)全局量、 局部量 包括上面兩種場(chǎng)合表2-3l 客體說(shuō)明格式:客體類別 客體名 數(shù)據(jù)類型:=初始值1)常數(shù)(constant)l 格式: constant 常數(shù)名:數(shù)據(jù)類型:=初始值;2)變量l 格式: Variable變量名:數(shù)據(jù)類型 約束條件 :=表達(dá)式;l 格式:l signal變量名:數(shù)據(jù)類型約束條件:=初始值;l 進(jìn)程中向信號(hào)賦值的時(shí)刻和信號(hào)得到該值的時(shí)刻之
26、間有延遲;l 當(dāng)向信號(hào)賦值時(shí)未給定延遲,但有一隱含延遲,稱延遲;l 延遲是一個(gè)無(wú)窮小的時(shí)間量;3)信號(hào)與變量的區(qū)別l 變量賦值立即發(fā)生,無(wú)延遲;信號(hào)賦值至少有延遲,在進(jìn)程中僅當(dāng)碰到wait語(yǔ)句或進(jìn)程結(jié)束賦值才生效。l 進(jìn)程只對(duì)信號(hào)敏感,而對(duì)變量不敏感。l 信號(hào)除當(dāng)前值外還有許多相關(guān)信息,而變量只有當(dāng)前值。l 信號(hào)是全局量,變量為局部量。l 信號(hào)在電路中的功能是保存變化的數(shù)值和連接子元件;變量在電路中無(wú)類似的對(duì)應(yīng)關(guān)系,用于計(jì)算。2.3.2 VHDL語(yǔ)言的數(shù)據(jù)類型1.標(biāo)準(zhǔn)數(shù)據(jù)類型(表2-4) 數(shù)據(jù)類型 含 義 整 數(shù)(integer) 自然數(shù)(natural) 正整數(shù)(positive) -214
27、7483647-2147483647 0 - 2147483647 1- 2147483647 實(shí) 數(shù)浮點(diǎn)數(shù),-1。0E+38-+1。0E+38 位邏輯“0”或“1” 位矢量位矢量 布爾量邏輯“假”或“真” 字 符ASCII字符 時(shí) 間時(shí)間單位fs,ps,ns,us,ms,sec,min,hr 錯(cuò)誤等級(jí)NOTE,WARNING,ERROR,F(xiàn)AILURE 字符串字符矢量表2-4l VHDL中的預(yù)定義類型,用戶不必明顯地說(shuō)明就可直接使用,在STANDARD 程序包中。l 整數(shù)(integer)l 整數(shù)類型的行為和算術(shù)中整數(shù)相似 *范圍: -2147483647-2147483647l 自然數(shù)(n
28、atural) *范圍: 0-2147483647l 正整數(shù)(positive) *范圍: 1-2147483647l 布爾類型: 實(shí)際是一個(gè)兩值(false和true)的枚舉型;無(wú)數(shù)值含義,不能進(jìn)行算術(shù)運(yùn)算,能進(jìn)行關(guān)系運(yùn)算。l 位(bit): 表示:或.l 位矢量(bit_vector)用雙引號(hào)括起來(lái)的一組位數(shù)據(jù),例:00110,X00BB。l 字符(character) 用單引號(hào)括起; 大、小寫(xiě)含義不同; 包括:到中的字母、到中的數(shù)字、空白及特殊字符。l 字符串(string)用雙引號(hào)括起;l 時(shí)間: 物理型數(shù)據(jù)(物理類型表示如距離、電流和時(shí)間一類的物理量),包含整數(shù)與單位兩部分,例如:5
29、5 sec,2 min.l 錯(cuò)誤等級(jí):表征系統(tǒng)狀態(tài),共四種:(Note,Warning,Error,Failure),編譯與仿真時(shí)用。2 用戶定義的數(shù)據(jù)類型l 格式:type 數(shù)據(jù)類型名,數(shù)據(jù)類型名 數(shù)據(jù)類型定義;不能進(jìn)行邏輯綜合*枚舉(enumerated)類型*整數(shù)(integer)類型*實(shí)數(shù)(real)(float)類型*數(shù)組(array)類型*存取(access)類型*文件(file)類型*時(shí)間(time)類型*記錄(recorde)類型l 枚舉(enumerated)類型 枚舉類型是抽象數(shù)據(jù)類型,它描述用戶定義的操作并使模塊更可讀,此類型通過(guò)列出(或枚舉)該類型中所有元素來(lái)定義。*格
30、式: TYPE 數(shù)據(jù)類型名 IS (元素,元素,);*“數(shù)據(jù)類型名”可用字母、下劃線和數(shù)組成的序列,且必須以字母開(kāi)頭,也不能用VHDL保留字。元素是單字符或字符串。若為單字符則外加單引號(hào)。l 整數(shù)(integer)類型l 實(shí)數(shù)(real)(float)類型l 實(shí)型類型行為和算術(shù)中的實(shí)數(shù)類似l 數(shù)組(array)類型 l 時(shí)間(time)類型l 記錄(recorde)類型 2.3.3用戶定義的子類型l 子類型能對(duì)基本類型的范圍加限制。l 格式:SUBTYPE 子類型名 IS 數(shù)據(jù)類型名范圍;l 是對(duì)原數(shù)據(jù)類型指定范圍而形成,或與原類型范圍一致。2.3.4數(shù)據(jù)類型的轉(zhuǎn)換l 不同類型的數(shù)據(jù)必須在類型
31、轉(zhuǎn)換后才能進(jìn)行運(yùn)算或操作。l 類型轉(zhuǎn)換函數(shù)表:(表2-5) 函 數(shù) 名 功 能l std_logic_1164包集合TO_STDLOGICVECTOR(A)TO_BITVECTOR(A)TO_STDLOGIC(A)TO_BIT(A) 由 BIT_VECTOR轉(zhuǎn)換成 STD_LOGIC_VECTOR 由 STD_LOGIC_VECTOR轉(zhuǎn)換成 BIT_VECTOR 由 BIT轉(zhuǎn)換成 STD_LOGIC 由 STD_LOGIC 轉(zhuǎn)換成 BIT l std_logic_arith包集合CONV_STD_LOGIC_VECTOR(A,位長(zhǎng) )CONV_INTEGER(A)由INTEGER ,UNSIG
32、NED,SIGNED轉(zhuǎn)換成 STD_LOGOC_VECTOR由UNSIGNED,SIGNED轉(zhuǎn)換成 INTEGERl std_logic_unsigned包集合CONV_INTEGER(A)由STD_LOGOC_VECTOR轉(zhuǎn)換成 INTEGER表2-5 2.4 VHDL語(yǔ)言的主要描述語(yǔ)句l 順序語(yǔ)句和并發(fā)語(yǔ)句順序描述語(yǔ)句l WAIT語(yǔ)句l 斷言語(yǔ)句l 信號(hào)賦值語(yǔ)句l 變量賦值語(yǔ)句l IF語(yǔ)句l CASE語(yǔ)句l LOOP語(yǔ)句 l NEXT 語(yǔ)句l 過(guò)程調(diào)用語(yǔ)句l NULL語(yǔ)句(只占位置的空操作,對(duì)信號(hào)賦空值,表示關(guān)閉)2.5 VHDL語(yǔ)言構(gòu)造體的描述方式1.體的行為描述方式l 可并行信號(hào)賦值是
33、VHDL的特點(diǎn)。 2延時(shí)語(yǔ)句l 慣性延時(shí)l 傳輸延時(shí)3GENERIC 語(yǔ)句l 用于不同層次之間的信息傳送構(gòu)造體的寄存器傳輸描述方式1.描述方式的特點(diǎn)l 寄存器描述方法: 與硬件一一對(duì)應(yīng)的描述或寄存器之間的功能描述 (p56-57)l VHDL語(yǔ)言的限制2.描述方式應(yīng)注意的問(wèn)題l X狀態(tài)傳遞l 寄存器RTL描述的限制:*在一個(gè)進(jìn)程中不能有多于一個(gè)寄存器的描述*IF語(yǔ)句中不能有ELSEl 關(guān)聯(lián)性強(qiáng)的信號(hào)應(yīng)放在一個(gè)進(jìn)程中構(gòu)造體的結(jié)構(gòu)描述方式l 多層次設(shè)計(jì),高層次設(shè)計(jì)調(diào)用低層次設(shè)計(jì)模塊 COMPONENT 語(yǔ)句l 元件說(shuō)明COMPONENT 元件名 GENERIC(類屬說(shuō)明) PORT(端口說(shuō)明)EN
34、D COMPONENT;l 可以在結(jié)構(gòu)體、包集合和BLOCK的說(shuō)明中使用l 元件例化語(yǔ)句*將現(xiàn)成元件的端口信號(hào)映射成高層次設(shè)計(jì)電路中的信號(hào);*格式: 例化名:元件名 generic map (類屬名=表達(dá)式,類屬名=表達(dá)式) port map (端口信號(hào)名=信號(hào),端口信號(hào)名= 信號(hào))*類屬映射為可選項(xiàng),類屬名與元件說(shuō)明語(yǔ)句中的相同,每個(gè)表達(dá)式要計(jì)算出一個(gè)值。*端口信號(hào)名與元件說(shuō)明語(yǔ)句中的相同,信號(hào)為高層實(shí)際信號(hào)。端口映射方法: 位置映射:把實(shí)際信號(hào)按元件端口說(shuō)明的順序列在端口映射表; 名稱映射:將元件端口說(shuō)明中的端口名賦給實(shí)際信號(hào)。 第三章 MAX+PLUS使用簡(jiǎn)介 完成組合邏輯電路的設(shè)計(jì)與仿
35、真過(guò)程,可以使用EDA數(shù)字系統(tǒng)開(kāi)發(fā)軟件MAX+PLUS,主要用到以下操作,而且有順序規(guī)定,在編譯前需對(duì)圖形編輯文件保存,并且項(xiàng)目文件必須與圖形文件名稱一致、保存在同一文件夾,只是后綴不同。編譯正確后才能創(chuàng)建波形文件,波形文件保存后,才能進(jìn)行仿真,最后進(jìn)行時(shí)序分析。如中途進(jìn)行修改,從修改開(kāi)始的操作步驟要重做一邊。1、 建立一個(gè)新項(xiàng)目;2、 建立一個(gè)新的圖形輸入文件;3、 進(jìn)行圖形輸入文件的編輯;4、 進(jìn)行項(xiàng)目文件的編譯;5、 創(chuàng)建波形文件并進(jìn)行功能仿真;6、 進(jìn)行時(shí)序分析。3.1 建立一個(gè)新項(xiàng)目 啟動(dòng)MAX+plusII:在WINDOWS界面下,單擊開(kāi)始程序 AlteraMAX+plusII9.
36、5,進(jìn)入MAX+plusII9.5管理器窗口,見(jiàn)圖3.1 用 MAX+plusII編譯一個(gè)設(shè)計(jì)文件之前,必須先指定一個(gè)項(xiàng)目文件,選中FileProjectName,顯示對(duì)話框圖3.2 在Project Name框中,鍵入項(xiàng)目名,如test1,若改變test1所屬子目錄,用戶可在Directories窗口中修改。 選擇OK,則MAX+plusII9.5窗口標(biāo)題會(huì)變成新的項(xiàng)目名稱:MAX+plusII Manager-d:Max2worktest1。 如已打開(kāi)一個(gè)圖形文件,可用菜單FileProjectSet Project To Current File將項(xiàng)目設(shè)為與當(dāng)前圖形文件相對(duì)應(yīng)。注意:換一
37、個(gè)電路圖,必須重新定義項(xiàng)目名,項(xiàng)目名與文件名必須一致。圖3.1 圖3.23.2 建立一新的圖形輸入文件 在文件菜單中,選中FileNew,出現(xiàn)圖對(duì)話框New如圖3.3,New的對(duì)話框供讀者選擇輸入方法:l 圖形文件l 符號(hào)文件l 文本文件 l 波形文件下面介紹的是使用圖形輸入法。 圖3.3 圖3.4 選擇Graphic Editor file圖形輸入文件,選擇OK,則出現(xiàn)一個(gè)無(wú)名稱的圖形編輯窗口,如圖3.4中標(biāo)明了每個(gè)按鈕的功能,這些按鈕在今后的設(shè)中會(huì)經(jīng)常用到。 選擇工具 正交線工具 弧線工具 放大按鈕與窗口適配 打開(kāi)橡皮筋 連接功能文本工具對(duì)角線工具圓形工具縮小按鈕連接點(diǎn)接斷關(guān)閉橡皮筋連接功
38、能 在無(wú)名稱的編輯窗口中,選Filesave或save as,出現(xiàn)save as 窗口, 在File Name中,輸入test1.gdf文件名,“.gdf”是缺省擴(kuò)展名不能改。 選擇OK,即被保存到當(dāng)前項(xiàng)目子目錄下。3.3 編輯圖形輸入文件MAX+plusII為實(shí)現(xiàn)不同的邏輯功能提供了大量的圖元和宏功能符號(hào)提供設(shè)計(jì)人員在圖表編輯器文件中直接使用。其中,Prim(Altera圖元庫(kù))包括基本的邏輯塊電路,mf(宏功能庫(kù))包括所有74系列邏輯。輸入圖元或宏功能塊的步驟如下: 圖3.5 選擇工具有效時(shí),在圖形編輯器窗口的空白處單擊鼠標(biāo)以確定輸入位置。圖1-5輸入符號(hào) 選擇Enter Symbol或雙
39、擊鼠標(biāo)就會(huì)出現(xiàn)一個(gè)Enter Symbol對(duì)話框,在Symbol Libraries對(duì)話框中選擇“maxplusmax2libprim ” 路徑,所有的Altera圖元就會(huì)以列表的方式顯示出來(lái),選中所需的輸入圖元,然后選擇OK,所選的圖元就會(huì)出現(xiàn)在圖形編輯器中,如圖3.5只要重復(fù)上述兩步,就可連續(xù)選取圖元。74系列符號(hào)的輸入方法和圖元的輸入方法相似,只要在Symbol Libraries框中選擇“maxplusmax2libmf ” 路徑即可。圖元的符號(hào)表示采用美國(guó)標(biāo)準(zhǔn),與我國(guó)標(biāo)準(zhǔn)有所不同。 輸入圖元時(shí)也可以在Enter Symbol對(duì)話框中的Symbol Name框上直接寫(xiě)入圖元的名稱,常用
40、圖元名稱見(jiàn)附錄二。 放置輸入、輸出引腳,放置方法與放置圖元相似,即在圖形編輯器窗口的空白處雙擊鼠標(biāo)左鍵,就可顯示Enter Symbol對(duì)話框。只要在Symbol Name框中鍵入INPUT,然后選擇OK,符號(hào)INPUT就會(huì)顯示在圖形編輯器中。若在Enter Symbol對(duì)話框中鍵入OUTPUT,則OUTPUT也就會(huì)顯示出來(lái)。在引腳的PIN_NAME處雙擊鼠標(biāo)左鍵,可以對(duì)引腳進(jìn)行命名。如圖1-6所示。 需輸入高電平、低電平時(shí),可用電源(Vcc)和地(GND),輸入方法同。 如果需要連接兩個(gè)端口,可將鼠標(biāo)移到其中一個(gè)端口上,這時(shí)鼠標(biāo)指示符自動(dòng)變?yōu)椤?”形狀,然后一直按住鼠標(biāo)左鍵并將鼠標(biāo)拖到第二個(gè)
41、端口,放開(kāi)左鍵,則一條連線被畫(huà)好了。如圖3.6所示。如果需要?jiǎng)h除一根連線,可單擊此線使其成高亮線,然后手按Del鍵即可。當(dāng)兩條線相交時(shí),可以用“連接點(diǎn)接斷”工具選擇通斷 圖3.6 如果要重復(fù)放置同一個(gè)符號(hào),可用復(fù)制符號(hào)的方法,這樣可以提高圖形輸入的速度,復(fù)制符號(hào)的具體方法是將鼠標(biāo)放在所要復(fù)制的符號(hào)上,按下Ctrl鍵和鼠標(biāo)左鍵不放,同時(shí)拖住鼠標(biāo),并把它放在指定位置,這樣就可以復(fù)制符號(hào)了。另外還可以用copy和paste命令進(jìn)行。 右鍵菜單和工具中有旋轉(zhuǎn)、翻轉(zhuǎn)工具,可對(duì)符號(hào)、引腳或引線進(jìn)行水平或垂直翻轉(zhuǎn),或旋轉(zhuǎn)90、180、270。 除了引腳以外,對(duì)引線也可以進(jìn)行命名。方法是選中需命名的引線,然后
42、輸入名字。對(duì)于n位寬的總線A命名,可以采用An1.0形式,其中單個(gè)信號(hào)可用A0、A1、A2,An形式。同一名稱的引線即使在圖形中不相連,它們?cè)谶壿嬌弦彩窍噙B的。因此對(duì)較長(zhǎng)或較難連通的連接線只要將它們命名為同一名稱即可相連。注:如果引線與引腳同名,則表示這條引線與引腳是相連的。但不能存在相同名稱的引腳。 圖形編輯器選項(xiàng):在圖形編輯窗口的Options菜單中列出了編輯圖形時(shí)的一些選項(xiàng),包括文本的字型和大小控制、線型、顯示任務(wù)、網(wǎng)絡(luò)控制等,讀者可以根據(jù)需要進(jìn)行選擇。注意:1 連線需要與元件相連時(shí),必須打開(kāi)“橡皮筋連接”工具,連線后可以用移動(dòng)元件的方法來(lái)驗(yàn)證,連線是否真的連上。2 交叉線的交接處有黑點(diǎn)
43、時(shí)為相通,無(wú)黑點(diǎn)時(shí)不通,可用“連接點(diǎn)接斷”工具選擇“通”或“斷”。3 保存圖形文件時(shí)文件名必須與項(xiàng)目文件名一致,后綴用默認(rèn)的“.gdf”。3.4 編譯項(xiàng)目文件MAX+plusII編譯器可以檢查項(xiàng)目中的錯(cuò)誤并進(jìn)行邏輯綜合,將項(xiàng)目最終設(shè)計(jì)結(jié)果加載到Altera器件中去,并為模擬和編程產(chǎn)生輸出文件。我們將利用編譯器檢查輸入圖形文件的錯(cuò)誤并對(duì)編譯后的結(jié)果進(jìn)行功能仿真和時(shí)序仿真。3.7 打開(kāi)編譯器窗口:在MAX+plusII菜單內(nèi)選擇Compiler菜單項(xiàng),則出現(xiàn)編譯器窗口,如圖3.7所示。 選擇Start即可開(kāi)始對(duì)所要編譯的項(xiàng)目文件進(jìn)行處理。在編譯項(xiàng)目期間,所有信息、錯(cuò)誤和警告將會(huì)在自動(dòng)打開(kāi)的信息處理
44、窗口中顯示出來(lái)。如果有錯(cuò)誤發(fā)生,選中該錯(cuò)誤信息,然后按下Locate按鈕,就會(huì)找到該錯(cuò)誤在設(shè)計(jì)文件中的位置。如圖3.8所示。3.8 如果輸入圖形文件有錯(cuò)誤,可修改錯(cuò)誤后,重復(fù)、。編譯通過(guò)后,編譯器會(huì)將項(xiàng)目的設(shè)計(jì)結(jié)果加載到一個(gè)Altera器件中。同時(shí)產(chǎn)生報(bào)告文件、編程文件和用于仿真的輸出文件。3.5 創(chuàng)建波形文件并進(jìn)行功能仿真設(shè)計(jì)輸入和編譯僅僅是整個(gè)設(shè)計(jì)過(guò)程的一部分,成功的編譯只能保證為項(xiàng)目創(chuàng)建一個(gè)編程文件,而不能保證該項(xiàng)目將按期望的那樣運(yùn)行。因此需要通過(guò)模擬來(lái)證明項(xiàng)目的功能是否正確。在模擬過(guò)程中,需要給MAX+plusII模擬器提供輸入變量,模擬器將利用這此輸入信號(hào)來(lái)產(chǎn)生輸出信號(hào)(與可編程器件
45、在同一條件下產(chǎn)生的信號(hào)相同)。根據(jù)所需的信息種類,設(shè)計(jì)人員可用MAX+plusII進(jìn)行功能或時(shí)序模擬。功能模擬僅是測(cè)試項(xiàng)目的邏輯功能,而時(shí)序模擬不僅測(cè)試邏輯功能,還可測(cè)試目標(biāo)器件最差情況下的時(shí)間關(guān)系。創(chuàng)建模擬文件和功能模擬的方法如下: 從File菜單中選擇New,然后選擇Waveform Editor File,從下拉列表中選擇.scf擴(kuò)展名,并按OK,即可創(chuàng)建一個(gè)新的無(wú)標(biāo)題文件,如圖3.8所示。圖3.8 從File菜單中選擇End Time,鍵入1ms,按OK鍵,則設(shè)置了模擬的時(shí)間長(zhǎng)度為1ms。 在Options菜單中選擇Grid Size,鍵入40ns,按OK鍵,則網(wǎng)絡(luò)間距變成了40ns,
46、建議取值40ns或以上,取值太小會(huì)引起正常邏輯和延時(shí)相混淆,太大時(shí)需要的仿真時(shí)間長(zhǎng),第中的仿真模擬時(shí)間長(zhǎng)度,需結(jié)合所需仿真的邏輯組合個(gè)數(shù)或時(shí)序長(zhǎng)度和網(wǎng)格間距時(shí)間,太短不能仿真全部邏輯或時(shí)序,太長(zhǎng)所需計(jì)算時(shí)間長(zhǎng)。 在圖3.8中選擇Node菜單中的Enter Nodes from SNF菜單項(xiàng)或在窗口內(nèi)的空白處單擊鼠標(biāo)右鍵,則Enter Nodes From SNF對(duì)話框?qū)⒊霈F(xiàn)在屏幕上。如圖所示。僅選中Type框中input和output項(xiàng),Node Group對(duì)話框?yàn)椤?”,選擇list,可列出所有的input和output。單擊可使用節(jié)點(diǎn)或組窗口中的所需項(xiàng),選擇右鍵頭,把選中的節(jié)點(diǎn)或組送到右窗
47、口。選擇OK,出現(xiàn)波形編輯器。放大工具縮小工具窗口適配改寫(xiě)波形為0改寫(xiě)波形為1改寫(xiě)波形為不定態(tài)改寫(xiě)波形為高阻態(tài)翻轉(zhuǎn)波形設(shè)置周期狀態(tài)工具設(shè)置計(jì)數(shù)狀態(tài)工具設(shè)置組狀態(tài)工具設(shè)置狀態(tài)機(jī)狀態(tài)工具圖3.9工具 此時(shí)output為不定態(tài),可根據(jù)需要來(lái)編輯input的狀態(tài)來(lái)觀察輸出波形,可以利用左邊給出的快捷按鈕進(jìn)行波形編輯,快捷按鈕主要功能見(jiàn)圖。 是選擇工具,可以用來(lái)選擇一段波形。按下選擇工具,在波形編輯區(qū)拖動(dòng)鼠標(biāo)即可選中一段波形,或單擊Name區(qū)選中整個(gè)波形。 是字符輸入工具。 是波形編輯工具,按下編輯工具,在波形編輯區(qū)拖動(dòng)鼠標(biāo)即可修改一段波形。波形的最小變化,不會(huì)超過(guò)網(wǎng)絡(luò)間距,可以改變網(wǎng)絡(luò)間距設(shè)定波形最小
48、變化。 這里我們輸入input的所有狀態(tài)(ABCD:0000、0001、0010,),如圖3.10所示。 圖3.10 選擇File Save As,在File Name框中會(huì)自動(dòng)出現(xiàn)test1.scf,然后選擇OK,存盤(pán),仿真前波形文件必須手工保存,系統(tǒng)不會(huì)提示保存對(duì)話框。圖3.11 仿真:在MAX+plusII菜單中,選擇Simulator,出現(xiàn)圖3.11,單擊start后,若無(wú)錯(cuò)誤,則顯示零錯(cuò)誤零警告框,單擊OK后,出現(xiàn)波形框,這時(shí)可根據(jù)輸入波形來(lái)觀察對(duì)應(yīng)的輸出波形是否正確。 通過(guò)光標(biāo)鍵移動(dòng)參考線,可觀察此時(shí)參考線位置顯示的數(shù)據(jù),數(shù)據(jù)值顯示在第一行第二列的Time框中。 利用右側(cè)的放大工具
49、將波形放大,會(huì)發(fā)現(xiàn)輸出波形并沒(méi)有完全對(duì)應(yīng)于輸入波形,如圖3.12所示,這是由于延時(shí)產(chǎn)生的。圖3.12 根據(jù)仿真結(jié)果,核對(duì)輸出與輸入之間的邏輯關(guān)系及時(shí)序與設(shè)計(jì)要求是否一致。第四章 設(shè)計(jì)4.1 設(shè)計(jì)要求:功能描述:用于模仿地鐵售票的自動(dòng)售票,完成地鐵售票的核心控制功能。功能要求:售票機(jī)有兩個(gè)進(jìn)幣孔,一個(gè)是輸入硬幣,一個(gè)是輸入紙幣,硬幣的識(shí)別范圍是5角和1 元的硬幣,紙幣的識(shí)別范圍是1 元、5 元,1 元,20 元,50元,100元。乘客可以連續(xù)多次投入錢幣。乘客可以選擇的種類為2元和3元和4元,乘客一次只能選擇一個(gè)出站口。購(gòu)買車票時(shí),乘客先選擇出站名,然后選擇所需的票數(shù),再進(jìn)行投幣,投入的錢幣達(dá)到
50、所需金額時(shí),售票機(jī)自動(dòng)出票,并找出余額,本次交易結(jié)束,等待下一次的交易。在投幣期間,乘客可以按取消鍵取消本次操作,錢幣自動(dòng)退出。4.2 課題分析1 買車票時(shí),乘客按“開(kāi)始選擇”按鈕,接著選擇出站口接著 選擇購(gòu)票數(shù)量(根據(jù)提示,一次購(gòu)票數(shù)限制在3張以內(nèi));然后按“開(kāi)始投幣”按鈕,投入錢幣;當(dāng)投入的錢幣達(dá)到所需金額時(shí),售票機(jī)自動(dòng)出票,并找出余額。考慮到控制整個(gè)售票機(jī)的物理體積,余額將全部采用5角硬幣的形式找出。2 選擇出站口或投幣過(guò)程中,乘客都可以按“取消”按鈕取消該次交易。選擇出站口的過(guò)程中,若按“取消”,則售票機(jī)直接回到初始狀態(tài);投幣過(guò)程中,若按“取消”,則售票機(jī)將乘客已經(jīng)投入的錢幣全部退出,
51、再回到初始狀態(tài)。3 客一次只能選擇一個(gè)出站口,根據(jù)乘坐的站數(shù)確定票價(jià)。假設(shè)乘客購(gòu)票所在站到終點(diǎn)站共有15站。若乘坐1-8站,則票價(jià)為2元張;若乘坐9-16站,則票價(jià)為4元張。16個(gè)站用長(zhǎng)度位4的二進(jìn)制向量編碼表示,即0001表示乘坐1站,0010表示乘坐2站,依次類推,1111表示乘坐15站(到終點(diǎn)站)。4 票機(jī)有2個(gè)進(jìn)幣端口。硬幣口可識(shí)別5角和1元2種硬幣,擬用長(zhǎng)度為2的一比特?zé)嵛唬╫ne-hot)編碼方式表示,即01表示5角,10表示1元。紙幣口類似,用長(zhǎng)度為4的一比特?zé)嵛痪幋a方式表示。乘客可以連續(xù)多次投入錢幣,并且可以以任意順序投入硬幣和紙幣。5 票機(jī)設(shè)有錢幣“暫存桿”,其有3個(gè)狀態(tài):退幣狀態(tài)、等待狀態(tài)、進(jìn)幣狀態(tài),分別用00、01、10表示。退幣狀態(tài)下,“暫存桿”將乘客投入的錢幣推出;等待狀態(tài)下,投入的錢幣被“暫存桿”擋住暫存;進(jìn)幣狀態(tài)下,“暫存桿”將乘客投入的錢幣推入售票機(jī)內(nèi)部。4.2.1系統(tǒng)流程圖:初始狀態(tài)按“開(kāi)始選擇”選擇出站口按“開(kāi)始投幣”投入錢幣錢幣足夠找零口找零出票口出票按“取消”按“
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年度環(huán)保設(shè)備租賃合同價(jià)款調(diào)整與環(huán)保設(shè)施運(yùn)行維護(hù)
- 二零二五年度醫(yī)療健康產(chǎn)業(yè)合作利潤(rùn)分成協(xié)議
- 2025年度股東持股比例調(diào)整與公司投資決策程序協(xié)議
- 二零二五年度手集裝箱房移動(dòng)辦公空間轉(zhuǎn)讓協(xié)議
- 二零二五年度知識(shí)產(chǎn)權(quán)保護(hù)服務(wù)協(xié)議范本
- 藥店員工勞動(dòng)合同協(xié)議書(shū)(2025年度)-藥品追溯與供應(yīng)鏈安全
- 二零二五年度游泳池租賃與水上運(yùn)動(dòng)設(shè)備供應(yīng)合同
- 二零二五年度電商平臺(tái)電商平臺(tái)數(shù)據(jù)分析與運(yùn)營(yíng)優(yōu)化合同
- 電梯維修四季度安全事故應(yīng)急預(yù)案
- 2025年度豪華私人房屋裝修安全保證合同
- 咖啡與茶文化培訓(xùn)1
- 一+《展示國(guó)家工程++了解工匠貢獻(xiàn)》(教學(xué)課件)-【中職專用】高二語(yǔ)文精講課堂(高教版2023·職業(yè)模塊)
- DIY服裝營(yíng)銷計(jì)劃書(shū)
- 全國(guó)教育科學(xué)規(guī)劃課題申報(bào)書(shū):71.《教師在教育數(shù)字化轉(zhuǎn)型中的作用及其實(shí)現(xiàn)路徑研究》
- 非標(biāo)設(shè)備合同范本
- 訂單采購(gòu)模板
- 輸電線路組成(金具、絕緣)
- 瀝青混凝土拌合站吊裝計(jì)算書(shū)
- 安全生產(chǎn)規(guī)章制度和崗位操作規(guī)程的目錄清單及內(nèi)容(無(wú)倉(cāng)儲(chǔ)經(jīng)營(yíng)單位)
- 餐飲合伙聯(lián)營(yíng)協(xié)議書(shū)范本
- 奶牛外貌線性評(píng)定方法與標(biāo)準(zhǔn)課件
評(píng)論
0/150
提交評(píng)論