《電子設(shè)計(jì)自動(dòng)化技術(shù)》課件-第四篇、QuartusⅡ操作入門(mén)與應(yīng)用_第1頁(yè)
《電子設(shè)計(jì)自動(dòng)化技術(shù)》課件-第四篇、QuartusⅡ操作入門(mén)與應(yīng)用_第2頁(yè)
《電子設(shè)計(jì)自動(dòng)化技術(shù)》課件-第四篇、QuartusⅡ操作入門(mén)與應(yīng)用_第3頁(yè)
《電子設(shè)計(jì)自動(dòng)化技術(shù)》課件-第四篇、QuartusⅡ操作入門(mén)與應(yīng)用_第4頁(yè)
《電子設(shè)計(jì)自動(dòng)化技術(shù)》課件-第四篇、QuartusⅡ操作入門(mén)與應(yīng)用_第5頁(yè)
已閱讀5頁(yè),還剩133頁(yè)未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

第四篇、QuartusⅡ操作入門(mén)與應(yīng)用原理圖輸入法設(shè)計(jì)二輸入與門(mén)1四位加法器的層次電路設(shè)計(jì)2用LPM設(shè)計(jì)正弦波發(fā)生器3第四篇、QuartusⅡ操作入門(mén)與應(yīng)用學(xué)習(xí)目標(biāo)最終目標(biāo):1.掌握運(yùn)用QuartusⅡ原理圖輸入法設(shè)計(jì)數(shù)字電路的方法;2.了解FPGA的結(jié)構(gòu)、工作原理及生產(chǎn)廠商。促成目標(biāo):1.會(huì)運(yùn)用QuartusⅡ原理圖輸入法設(shè)計(jì)簡(jiǎn)單數(shù)字電路;2.會(huì)運(yùn)用QuartusⅡ文本輸入法設(shè)計(jì)簡(jiǎn)單數(shù)字電路;3.會(huì)運(yùn)用QuartusⅡ?qū)λO(shè)計(jì)電路進(jìn)行編譯、時(shí)序仿真及下載。項(xiàng)目一、原理圖輸入法設(shè)計(jì)二輸入與門(mén)一、學(xué)習(xí)目標(biāo)最終目標(biāo):1.掌握QuartusⅡ原理圖輸入設(shè)計(jì)法;2.掌握運(yùn)用QuartusⅡ進(jìn)行FPGA開(kāi)的流程。促成目標(biāo):1.會(huì)進(jìn)行工程、原理圖文件、激勵(lì)波形文件的創(chuàng)建、保存等操作;2.會(huì)調(diào)用Symbol元件庫(kù)和放置元件;3.會(huì)準(zhǔn)確進(jìn)行連線操作;4.會(huì)對(duì)所設(shè)計(jì)電路進(jìn)行編譯、仿真等操作;5.會(huì)運(yùn)用QuartusⅡ?qū)λO(shè)計(jì)電路進(jìn)行管腳鎖定;6.會(huì)運(yùn)用QuartusⅡ?qū)λO(shè)計(jì)電路進(jìn)行編程下載;7.會(huì)運(yùn)用EDA實(shí)驗(yàn)系統(tǒng)對(duì)所設(shè)計(jì)電路進(jìn)行驗(yàn)證測(cè)試。二、工作任務(wù)在QuartussⅡ平臺(tái)下,用FPGA設(shè)計(jì)一個(gè)二輸入與門(mén),并進(jìn)行時(shí)序仿真和下載到EDA實(shí)驗(yàn)系統(tǒng)進(jìn)行測(cè)試。項(xiàng)目一、原理圖輸入法設(shè)計(jì)二輸入與門(mén)三、理論知識(shí)1.PLD簡(jiǎn)介可編程邏輯器件PLD(ProgrammableLogicDevice)是20世紀(jì)70年代發(fā)展起來(lái)的一種新型邏輯器件,它是大規(guī)模集成電路技術(shù)與計(jì)算機(jī)輔助設(shè)計(jì)(CAD)、計(jì)算機(jī)輔助生產(chǎn)(CAM)和計(jì)算機(jī)輔助測(cè)試(CAT)相結(jié)合的一種產(chǎn)物,是現(xiàn)代數(shù)字電子系統(tǒng)向著超高集成度、超低功耗、超小型封裝和專(zhuān)用化方向發(fā)展的重要基礎(chǔ)。它的應(yīng)用和發(fā)展不僅簡(jiǎn)化了電路設(shè)計(jì),降低了成本,提高了系統(tǒng)的可靠性和保密性,而且給數(shù)字系統(tǒng)的設(shè)計(jì)方法帶來(lái)了革命性的變化。目前,主要運(yùn)用的高密度PLD器件有復(fù)雜可編程邏輯器件CPLD(ComplexProgrammableLogicDevice)和現(xiàn)場(chǎng)可編程門(mén)陣列FPGA(FieldProgrammableGateArray)。項(xiàng)目一、原理圖輸入法設(shè)計(jì)二輸入與門(mén)FPGA/CPLD最明顯的特點(diǎn)是高集成度、高速度和高可靠性,其時(shí)鐘延時(shí)可小至納秒級(jí),結(jié)合其并行工作方式,在超高速應(yīng)用領(lǐng)域和實(shí)時(shí)測(cè)控方面有著非常廣闊的應(yīng)用前景。在高可靠應(yīng)用領(lǐng)域,如果設(shè)計(jì)得當(dāng),將不會(huì)存在類(lèi)似于MCU的復(fù)位不可靠和PC的跑飛等問(wèn)題。FPGA/CPLD的高可靠性還表現(xiàn)在幾乎可將整個(gè)系統(tǒng)下載于同一芯片中,實(shí)現(xiàn)所謂片上系統(tǒng)(SOPC),從而大大縮小了體積,易于管理和屏蔽。用FPGA/CPLD來(lái)開(kāi)發(fā)數(shù)字系統(tǒng)具有開(kāi)發(fā)周期短、投資風(fēng)險(xiǎn)小、產(chǎn)品上市速度快、市場(chǎng)適應(yīng)能力強(qiáng)和硬件升級(jí)回旋余地大,而且當(dāng)產(chǎn)品定型和產(chǎn)量擴(kuò)大后,可將在生產(chǎn)中達(dá)到充分檢驗(yàn)的VHDL設(shè)計(jì)迅速實(shí)現(xiàn)ASIC投產(chǎn)。項(xiàng)目一、原理圖輸入法設(shè)計(jì)二輸入與門(mén)2.可編程邏輯器件的開(kāi)發(fā)環(huán)境可編程器件的設(shè)計(jì)離不開(kāi)EDA軟件。現(xiàn)在有多種支持CPLD和FPGA的設(shè)計(jì)軟件,有的設(shè)計(jì)軟件是由芯片制造商提供的,如Altera開(kāi)發(fā)的QuartusⅡ軟件包,Xilinx開(kāi)發(fā)的ISE軟件包,Lattice開(kāi)發(fā)的針對(duì)ispLSI器件的PDS軟件包;有的是由專(zhuān)業(yè)EDA軟件商提供的,稱(chēng)為第三方設(shè)計(jì)軟件,例如Cadence、Mental、Synopsys、Viewlogic和DATAI/O公司的設(shè)計(jì)軟件。第三方軟件往往能夠開(kāi)發(fā)多家公司的器件,在利用第三方軟件設(shè)計(jì)具體型號(hào)的器件時(shí),需要器件制造商提供器件庫(kù)和適配器(Fitter)軟件。QuartusⅡ軟件包是美國(guó)Altera公司的第四代EDA開(kāi)發(fā)軟件。其提供了一個(gè)一種與結(jié)構(gòu)無(wú)關(guān)的設(shè)計(jì)環(huán)境,非常適應(yīng)具體的設(shè)計(jì)需要。QuartusⅡ提供了方便的設(shè)計(jì)輸入方式、快速的編譯和直接易懂的器件編程。能夠支持邏輯門(mén)數(shù)在百萬(wàn)門(mén)以上的邏輯器件的開(kāi)發(fā),并且為第三方工具提供了無(wú)縫接口。項(xiàng)目一、原理圖輸入法設(shè)計(jì)二輸入與門(mén)3.可編程邏輯器件的開(kāi)發(fā)設(shè)計(jì)過(guò)程CPLD/FPGA器件的開(kāi)發(fā)設(shè)計(jì)一般可以分為設(shè)計(jì)輸入、設(shè)計(jì)實(shí)現(xiàn)、設(shè)計(jì)校驗(yàn)和下載編程四個(gè)步驟,如圖4-1-1所示。圖4-1-1可編程邏輯器件的開(kāi)發(fā)設(shè)計(jì)流程項(xiàng)目一、原理圖輸入法設(shè)計(jì)二輸入與門(mén)(1)設(shè)計(jì)輸入設(shè)計(jì)輸入就是將設(shè)計(jì)者所設(shè)計(jì)的電路以開(kāi)發(fā)軟件要求的某種形式表達(dá)出來(lái),并輸入到相應(yīng)的軟件中。設(shè)計(jì)輸入有多種表達(dá)方式,主要包括原理圖輸入方式、硬件描述語(yǔ)言文本輸入方式、波形設(shè)計(jì)輸入方式等,其中最常用的是原理圖輸入方式和硬件描述語(yǔ)言文本輸入方式兩種。1)原理圖輸入方式。原理圖是圖形化的表達(dá)方式,使用元件符號(hào)和連線等符號(hào)來(lái)描述設(shè)計(jì)。其特點(diǎn)是適合描述連接關(guān)系和接口關(guān)系,而描述邏輯功能則很繁瑣。為提高這種輸入方式的效率,應(yīng)采用自頂向下邏輯分塊,把大規(guī)模的電路劃分成若干小塊的方法。一般而言,如果對(duì)系統(tǒng)很了解,并且系統(tǒng)速率較高,或在大系統(tǒng)中對(duì)時(shí)間特性要求較高的部分,可以采用這種方法。原理圖輸入方式效率較低,但容易實(shí)現(xiàn)仿真,便于對(duì)信號(hào)的觀察以及對(duì)電路的調(diào)整。項(xiàng)目一、原理圖輸入法設(shè)計(jì)二輸入與門(mén)2)硬件描述語(yǔ)言文本輸入方式。硬件描述語(yǔ)言采用文本方式描述設(shè)計(jì),其邏輯描述能力強(qiáng),但不適合描述接口和連接關(guān)系。如ABEL-HDL、Verilog-HDL、AHDL和VHDL等,它們支持布爾方程、真值表、狀態(tài)機(jī)等邏輯描述方式,適合描述計(jì)數(shù)器、譯碼器、比較器和狀態(tài)機(jī)等的邏輯功能,在描述復(fù)雜設(shè)計(jì)時(shí),非常簡(jiǎn)潔,具有很強(qiáng)的邏輯描述和仿真功能,但硬件描述語(yǔ)言輸入必須依賴(lài)綜合器,只有好的綜合器才能把語(yǔ)言綜合成優(yōu)化的電路。對(duì)于大量規(guī)范的、易于語(yǔ)言描述、易于綜合、速率較低的電路,可以采用這種輸入方式。2)設(shè)計(jì)實(shí)現(xiàn)設(shè)計(jì)實(shí)現(xiàn)主要由EDA開(kāi)發(fā)工具依據(jù)設(shè)計(jì)輸入文件來(lái)自動(dòng)進(jìn)行優(yōu)化、合并、映射、布局和布線等,自動(dòng)生成用于器件編程、波形仿真及延時(shí)分析等所需的數(shù)據(jù)文件。此部分對(duì)開(kāi)發(fā)系統(tǒng)來(lái)講是核心部分,但對(duì)用戶(hù)來(lái)說(shuō),它的實(shí)現(xiàn)過(guò)程究竟如何,用戶(hù)并不關(guān)心。用戶(hù)只要通過(guò)設(shè)置“設(shè)計(jì)實(shí)現(xiàn)策略”等參數(shù)來(lái)控制設(shè)計(jì)實(shí)現(xiàn)過(guò)程。項(xiàng)目一、原理圖輸入法設(shè)計(jì)二輸入與門(mén)3)設(shè)計(jì)校驗(yàn)設(shè)計(jì)校驗(yàn)包括仿真和定時(shí)分析兩部分,這一步通過(guò)仿真器和時(shí)延分析器來(lái)完成,利用編譯器產(chǎn)生的數(shù)據(jù)文件自動(dòng)完成邏輯功能仿真和延時(shí)特性仿真。在仿真文件中加載不同的激勵(lì),可以觀察中間結(jié)果以及輸出波形。必要時(shí),可以返回設(shè)計(jì)輸入階段,修改設(shè)計(jì)輸入,最終達(dá)到設(shè)計(jì)要求。這一部分的最大功能是便于用戶(hù)查看自己的設(shè)計(jì)思想是否得到實(shí)現(xiàn)。我們可以在設(shè)計(jì)的過(guò)程中對(duì)整個(gè)系統(tǒng)乃至各個(gè)模塊進(jìn)行仿真,即在計(jì)算機(jī)上用軟件驗(yàn)證連接功能是否正確,各部分的時(shí)序配合是否準(zhǔn)確。如果有問(wèn)題,可以很方便地修改錯(cuò)誤,從而不必在硬件上作改動(dòng),極大地節(jié)約了成本。高級(jí)的仿真軟件還可以對(duì)整個(gè)系統(tǒng)設(shè)計(jì)的性能進(jìn)行估計(jì)。規(guī)模越大的設(shè)計(jì),越發(fā)需要設(shè)計(jì)仿真。仿真不消耗資源,僅消耗少許時(shí)間,但從節(jié)約成本的角度考慮,這種時(shí)間消耗是完全值得的。可以認(rèn)為仿真是EDA的精髓。項(xiàng)目一、原理圖輸入法設(shè)計(jì)二輸入與門(mén)4)下載編程下載編程是把設(shè)計(jì)下載到對(duì)應(yīng)的實(shí)際PLD器件,實(shí)現(xiàn)硬件設(shè)計(jì)。軟件部分一般由可編程邏輯器件的廠商提供專(zhuān)門(mén)針對(duì)器件下載或編程軟件來(lái)實(shí)現(xiàn)。4.主要PLD廠商作為一名優(yōu)秀的電子器件設(shè)計(jì)工程師,為使設(shè)計(jì)得心應(yīng)手,對(duì)相關(guān)廠商應(yīng)有一定的了解。下面對(duì)主要EDA廠商進(jìn)行介紹。1)Altera:Altera公司在20世紀(jì)90年代以后發(fā)展很快,是最大的可編程邏輯器件供應(yīng)商之一。其主要產(chǎn)品有MAX3000/7000、FLEX6000、FLEX8000、FLEX10K、APEX20K、Stratix和Cyclone等,提供門(mén)數(shù)為5000~250000,開(kāi)發(fā)軟件為MAX+plusⅡ和QuartusⅡ。2)Xilinx:FPGA的發(fā)明者,老牌PLD公司,是最大的可編程邏輯器件供應(yīng)商之一。其產(chǎn)品種類(lèi)較全,主要有XC2000、XC3000、XC4000、XC4000E、XC4000XLA、XC5200、Coolrunner(XPLA3)、Spartan和Virtex系列等,可用門(mén)數(shù)為1200~18000,開(kāi)發(fā)軟件為Foundation、Alliance和ISE。通常來(lái)說(shuō),在歐洲用Xilinx器件的人多,在日本和亞太地區(qū)用Altera器件的人多,在美國(guó)則是平分秋色。全球PLD/FPGA產(chǎn)品60%以上是由Altera和Xilinx提供的,它們共同決定了PLD技術(shù)的發(fā)展方向。項(xiàng)目一、原理圖輸入法設(shè)計(jì)二輸入與門(mén)3)Lattice:Lattice是ISP技術(shù)的發(fā)明者。ISP技術(shù)極大地促進(jìn)了PLD產(chǎn)品的發(fā)展。與Altera和Xilinx相比,Lattice的開(kāi)發(fā)工具略遜一籌,大規(guī)模PLD、FPGA的競(jìng)爭(zhēng)力還不夠強(qiáng),但其中小規(guī)模PLD比較有特色。Lattice于1999年推出可編程模擬器件,同時(shí)收購(gòu)Vantis公司,又于2001年12月收購(gòu)Agere公司的FPGA部門(mén),成為全球第三大可編程邏輯器件供應(yīng)商。其主要產(chǎn)品有ispLSI2000/5000/8000、MACH4/5和ispMACH4000等,集成度可多達(dá)25000個(gè)PLD等效門(mén)。項(xiàng)目一、原理圖輸入法設(shè)計(jì)二輸入與門(mén)四、技能訓(xùn)練(一)QuartusⅡ軟件的安裝1.把QuartusⅡ開(kāi)發(fā)軟件的安裝光盤(pán)放入計(jì)算機(jī)的光驅(qū)中,雙擊根目錄下的install.exe文件即開(kāi)始安裝QuartusⅡ軟件。圖4-1-2QuartusⅡ安裝選擇項(xiàng)目一、原理圖輸入法設(shè)計(jì)二輸入與門(mén)2.在圖4-1-2中,單擊InstallQuartusⅡandRelatedSoftware按鈕,即可進(jìn)入如圖4-1-2所示的QuartusⅡ開(kāi)發(fā)軟件的安裝歡迎界面。圖4-1-3QuartusⅡ開(kāi)發(fā)軟件的安裝歡迎界面項(xiàng)目一、原理圖輸入法設(shè)計(jì)二輸入與門(mén)3.單擊4-1-3中的Next按鈕即可進(jìn)入如圖4-1-4所示的選擇安裝軟件的界面,設(shè)計(jì)者可以根據(jù)擁有的軟件來(lái)選擇安裝QuartusⅡ軟件、ModelSim軟件、MegaCoreIPLibrary工具包軟件以及NiosⅡ嵌入式處理器開(kāi)發(fā)軟件,選擇好要安裝的軟件后,單擊Next按鈕即可進(jìn)入如圖4-1-5所示的QuartusⅡ開(kāi)發(fā)環(huán)境的協(xié)議接受界面。圖4-1-4選擇安裝軟件的界面項(xiàng)目一、原理圖輸入法設(shè)計(jì)二輸入與門(mén)4.在圖4-1-5中單擊單選按鈕“Iacceptthetermsofthelicenseagreement”,按Next按鈕進(jìn)入如圖4-1-6所示的定義用戶(hù)名和公司名信息的界面。圖4-1-5QuartusⅡ開(kāi)發(fā)環(huán)境的協(xié)議接受界面項(xiàng)目一、原理圖輸入法設(shè)計(jì)二輸入與門(mén)圖4-1-6定義用戶(hù)名和公司名信息的界面項(xiàng)目一、原理圖輸入法設(shè)計(jì)二輸入與門(mén)5.在圖4-1-6中單擊Next按鈕,進(jìn)入圖4-1-7所示的QuartusⅡ開(kāi)發(fā)軟件安裝目錄選擇界面。圖4-1-7QuartusⅡ開(kāi)發(fā)軟件安裝目錄選擇界面項(xiàng)目一、原理圖輸入法設(shè)計(jì)二輸入與門(mén)在圖4-1-7中選擇QuartusⅡ開(kāi)發(fā)軟件安裝目錄,默認(rèn)的安裝路徑是C:\altera\quartus60目錄。6.在圖4-1-7中,單擊Next按鈕進(jìn)入如圖4-1-8所示的QuartusⅡ開(kāi)發(fā)軟件完全安裝(Complete)和自定義安裝選擇界面。此處選擇完全安裝。圖4-1-8QuartusⅡ開(kāi)發(fā)軟件自定義安裝和完全安裝選擇界面項(xiàng)目一、原理圖輸入法設(shè)計(jì)二輸入與門(mén)7.在圖4-1-8中,單擊Next按鈕就開(kāi)始安裝程序文件了,如圖4-1-9所示。等待一段時(shí)間,QuartusⅡ開(kāi)發(fā)軟件就安裝成功了,如圖4-1-10所示,按Finish按鈕完成安裝。圖4-1-9QuartusⅡ開(kāi)發(fā)軟件正在安裝的過(guò)程中圖4-1-10QuartusⅡ開(kāi)發(fā)軟件安裝成功的界面項(xiàng)目一、原理圖輸入法設(shè)計(jì)二輸入與門(mén)(二)QuartusⅡ軟件授權(quán)QuartusⅡ安裝完成后,雙擊桌面上的QuartusⅡ軟件圖標(biāo)或者單擊windows開(kāi)始|程序|Altera|QuartusⅡ6.0|QuartusⅡ6.0,即可進(jìn)入QuartusⅡ集成開(kāi)發(fā)環(huán)境。首次啟動(dòng)QuartusⅡ開(kāi)發(fā)軟件,會(huì)出現(xiàn)的軟件請(qǐng)求授權(quán)的選項(xiàng),如圖4-1-11所示。圖4-1-11軟件請(qǐng)求授權(quán)項(xiàng)目一、原理圖輸入法設(shè)計(jì)二輸入與門(mén)前面兩項(xiàng)分別是30天試用期和自動(dòng)從Altera網(wǎng)站請(qǐng)求許可文件,如果擁有授權(quán)文件,則選擇第三項(xiàng)Specifyvalidlicensefile,點(diǎn)擊OK按鈕,授權(quán)文件設(shè)置界面如圖4-1-12所示。啟動(dòng)QuartusⅡ開(kāi)發(fā)軟件后,也可以通過(guò)執(zhí)行Tools|LiceseSteup…命令,進(jìn)入圖4-1-12所示授權(quán)文件設(shè)置界面。圖4-1-12設(shè)置授權(quán)文件界面項(xiàng)目一、原理圖輸入法設(shè)計(jì)二輸入與門(mén)導(dǎo)入授權(quán)文件后,用戶(hù)信息顯示如圖4-1-14所示。至此,QuartusⅡ6.0軟件的安裝授權(quán)全部結(jié)束,可以開(kāi)始設(shè)計(jì)工作了。點(diǎn)擊圖4-1-12中的…按鈕,選擇授權(quán)文件(license文件)所在的路徑,如圖4-1-13所示。圖4-1-14正確導(dǎo)入授權(quán)文件后的畫(huà)面圖4-1-13導(dǎo)入授權(quán)文件項(xiàng)目一、原理圖輸入法設(shè)計(jì)二輸入與門(mén)(三)原理圖輸入法設(shè)計(jì)二輸入與門(mén)下面以設(shè)計(jì)二輸入與門(mén)為例,來(lái)說(shuō)明QuartusⅡ原理圖輸入法的使用。1.創(chuàng)建工程設(shè)計(jì)項(xiàng)目QuartusⅡ中任何一項(xiàng)設(shè)計(jì)都是一項(xiàng)工程,并將工程項(xiàng)目中的所有文件保存在一個(gè)文件夾中,且文件夾名中不能出現(xiàn)中文和Quartus保留字,因此,利用QuartusⅡ設(shè)計(jì)數(shù)字系統(tǒng)之前,一般應(yīng)先建立一個(gè)文件夾,來(lái)保存設(shè)計(jì)文件。例如:D:\mydesign。創(chuàng)建工程設(shè)計(jì)項(xiàng)目的步驟如下:項(xiàng)目一、原理圖輸入法設(shè)計(jì)二輸入與門(mén)(1)打開(kāi)QuartusⅡ集成環(huán)境后,呈現(xiàn)如圖4-1-15所示的主窗口界面。圖4-1-15QuartusⅡ主窗口界面項(xiàng)目一、原理圖輸入法設(shè)計(jì)二輸入與門(mén)(2)執(zhí)行主窗口菜單File|NewProjectWizard…命令,彈出新建設(shè)計(jì)項(xiàng)目介紹的對(duì)話框,按Next按鈕,彈出如圖4-1-16所示的新建設(shè)計(jì)項(xiàng)目對(duì)話框,在對(duì)話框下輸入項(xiàng)目路徑、項(xiàng)目名稱(chēng)和頂層實(shí)體文件名,如and_2。注意:●項(xiàng)目路徑、項(xiàng)目名稱(chēng)和頂層實(shí)體文件名中均不能出現(xiàn)中文和Quartus的保留字;●項(xiàng)目路徑不能在驅(qū)動(dòng)器的根目錄。圖4-1-16NewProjectWizard對(duì)話框項(xiàng)目一、原理圖輸入法設(shè)計(jì)二輸入與門(mén)(2)點(diǎn)擊圖4-1-16中Next按鈕,彈出圖4-1-17如所示添加或刪除與該項(xiàng)目有關(guān)的所有文件對(duì)話框。此處因暫無(wú)相關(guān)設(shè)計(jì)文件,故不需要選擇。圖4-1-17添加或刪除與該項(xiàng)目有關(guān)文件對(duì)話框項(xiàng)目一、原理圖輸入法設(shè)計(jì)二輸入與門(mén)(3)點(diǎn)擊圖4-1-17中的Next按鈕,彈出圖4-1-16來(lái)設(shè)置下載目標(biāo)器件和器件的封裝形式、引腳數(shù)目和速度級(jí)別對(duì)話框。圖4-1-18選擇下載目標(biāo)器件對(duì)話框注:選擇下載目標(biāo)器件的選擇要根據(jù)EDA實(shí)驗(yàn)系統(tǒng)上的FPGA/CPLD芯片來(lái)選擇。項(xiàng)目一、原理圖輸入法設(shè)計(jì)二輸入與門(mén)(4)在圖4-1-18中設(shè)置好下載目標(biāo)器件后,點(diǎn)擊Next按鈕,彈出添加其它EDA工具對(duì)話框,如圖4-1-19所示。此處不需添加其它EDA工具,故點(diǎn)擊Next按鈕。圖4-1-19添加其它EDA工具對(duì)話框項(xiàng)目一、原理圖輸入法設(shè)計(jì)二輸入與門(mén)5)在圖4-1-19中,點(diǎn)擊Next按鈕,彈出的是前面輸入內(nèi)容的總覽對(duì)話框。點(diǎn)擊Finish按鈕,項(xiàng)目出現(xiàn)在項(xiàng)目導(dǎo)航窗口exp1表示頂層實(shí)體文件,雙擊文件名可打開(kāi)文件,如圖4-1-20所示。至此,工程項(xiàng)目創(chuàng)建完畢。圖4-1-20建立項(xiàng)目and_2項(xiàng)目一、原理圖輸入法設(shè)計(jì)二輸入與門(mén)2.編輯設(shè)計(jì)原理圖在QuartusⅡ中,通過(guò)模塊/原理圖編輯器可以編輯圖表模塊和符號(hào),產(chǎn)生原理圖文件(.bdf)。原理圖輸入的基本步驟包括:創(chuàng)建原理圖文件、輸入元件符號(hào)或模塊、元件符號(hào)和模塊間連線等。(1)打開(kāi)原理圖編輯器執(zhí)行菜單File|New命令,彈出如圖4-1-21所示的編輯文件類(lèi)型對(duì)話框,選擇BlockDiagram/SchematicFile(模塊/原理圖文件)選項(xiàng)后點(diǎn)擊OK按鈕即可進(jìn)入QuartusⅡ原理圖編輯器環(huán)境,如圖4-1-22所示。原理圖器右邊為工作區(qū),左邊為原理圖編輯工具條,原理圖編輯工具條按鈕從上到下依次為:選擇工具、文本工具、元件符號(hào)工具、模塊工具、正交節(jié)點(diǎn)工具、正交總線工具、正交管道工具、橡皮筋工具、部分線選擇工具、放大/縮小按鈕、全屏按鈕、查找工具、元件水平翻轉(zhuǎn)按鈕、元件垂直翻轉(zhuǎn)按鈕、元件逆時(shí)針旋轉(zhuǎn)90度按鈕、畫(huà)矩形框工具、畫(huà)橢圓形工具、畫(huà)直線工具、畫(huà)弧線工具,這些工具欄按鈕均可在菜單命令Edit和View菜單中找到。項(xiàng)目一、原理圖輸入法設(shè)計(jì)二輸入與門(mén)圖4-1-21編輯文件類(lèi)型對(duì)話框圖4-1-22原理圖編輯器項(xiàng)目一、原理圖輸入法設(shè)計(jì)二輸入與門(mén)項(xiàng)目一、原理圖輸入法設(shè)計(jì)二輸入與門(mén)(2)輸入元件符號(hào)以輸入一個(gè)二輸入與門(mén)元件為例,來(lái)介紹元件的輸入過(guò)程。1)在原理圖編輯器窗口下,選擇菜單Edit|InsertSymbol…,或點(diǎn)擊工具欄中模塊符號(hào)的圖標(biāo),也可以直接在編輯器空白處雙擊鼠標(biāo)左鍵,出現(xiàn)如圖4-1-23所示的Symbol對(duì)話框。圖4-1-23Symbol對(duì)話框項(xiàng)目一、原理圖輸入法設(shè)計(jì)二輸入與門(mén)2)在Symbol對(duì)話框的Libraries中點(diǎn)擊“+”,擴(kuò)展C:\altera\quartus\libraries中的文件夾Primitives\storage,選中and2,也可以直接在Name欄中輸入關(guān)鍵字and2,Symbol對(duì)話框右邊出現(xiàn)觸發(fā)器圖元。3)點(diǎn)擊OK按鈕,在模塊編輯器中點(diǎn)擊鼠標(biāo)左鍵,插入and2與門(mén)符號(hào)。4)重復(fù)以上3步,可輸入其他邏輯符號(hào)。右鍵選中符號(hào),拖動(dòng)鼠標(biāo),可復(fù)制并連續(xù)輸入符號(hào)。刪除符號(hào)時(shí),選中元件符號(hào)后,按鍵盤(pán)Delete鍵即可。Symbol對(duì)話框左下角的3個(gè)復(fù)選框表示輸入符號(hào)的不同方式:連續(xù)輸入符號(hào)(Repeat-insertmode)、以圖表模塊形式輸入符號(hào)(InsertSymbolAsblock)、打開(kāi)MegaWizardPlug-InManager。項(xiàng)目一、原理圖輸入法設(shè)計(jì)二輸入與門(mén)(3)輸入引腳類(lèi)型在圖4-1-24Symbol對(duì)話框的符號(hào)庫(kù)擴(kuò)展文件夾C:\altera\quartus6.0\libraries中的Primitives\Pin,選擇引腳類(lèi)型input(輸入引腳)、output(輸出引腳)、bidir(雙向引腳),也可以在Name欄中直接輸入引腳關(guān)鍵字來(lái)輸入引腳。(4)引腳命名用鼠標(biāo)左鍵雙擊引腳符號(hào),彈出Properties屬性對(duì)話框,在General欄的Pinname(s)中填寫(xiě)自定義的引腳名稱(chēng)?;蛘哂檬髽?biāo)指向引腳符號(hào)的pin_name,雙擊鼠標(biāo)左鍵,引腳符號(hào)會(huì)變黑,鍵入引腳名稱(chēng),按回車(chē)鍵,自動(dòng)指向下一個(gè)引腳的pin_name處,繼續(xù)對(duì)下一個(gè)引腳命名。此處與門(mén)的兩個(gè)輸入引腳名分別為a和b,輸出引腳名為y。項(xiàng)目一、原理圖輸入法設(shè)計(jì)二輸入與門(mén)(5)元件符號(hào)間連線在QuartusⅡ的原理圖編輯器中能用“智能”連接工具(節(jié)點(diǎn)、總線和管道工具)連接模塊和符號(hào)。管道主要用于連模塊,代表進(jìn)出模塊的一個(gè)或多個(gè)I/O端口信號(hào)的總線組。當(dāng)鼠標(biāo)位于元件符號(hào)的引腳上或圖表模塊邊沿時(shí),“智能”連接工具自動(dòng)變成十字形畫(huà)線指針,如圖4-1-24所示。移動(dòng)鼠標(biāo),選擇連線起點(diǎn),按住左鍵拖動(dòng)鼠標(biāo)至結(jié)束點(diǎn)(輸出引腳符號(hào))放開(kāi)。圖4-1-24二輸入與門(mén)原理圖項(xiàng)目一、原理圖輸入法設(shè)計(jì)二輸入與門(mén)(6)保存文件當(dāng)原理圖設(shè)計(jì)好后,選擇菜單File|Save或單擊保存文件圖標(biāo),彈出如圖4-1-25所示的SaveAs話框,輸入文件名and_2后,選中對(duì)話框下端的可選項(xiàng)Addfiletocurrentproject,將原理圖文件添加到當(dāng)前工程項(xiàng)目and_2中,并作為頂層實(shí)體文件,然后再單擊保存按鈕即可。圖4-1-25保存原理圖文件and_2.bdf注意:保存時(shí),原理圖文件如果是頂層文件,則頂層原理圖文件名要與工程項(xiàng)目名保持一致,否則會(huì)編譯出錯(cuò)。項(xiàng)目一、原理圖輸入法設(shè)計(jì)二輸入與門(mén)3.編譯工程項(xiàng)目選擇菜單Processing|StartComplition或直接點(diǎn)擊工具欄中編譯快捷按鈕開(kāi)始編譯。編譯過(guò)程中,狀態(tài)窗口顯示編譯進(jìn)度的百分比和每個(gè)階段所花時(shí)間。信息窗口顯示所有信息、警告和錯(cuò)誤。雙擊某個(gè)信息項(xiàng),可以定位到原設(shè)計(jì)文件并高亮顯示。編譯完成后將產(chǎn)生一個(gè)編譯報(bào)告欄,編譯結(jié)果在報(bào)告欄中自動(dòng)更新,如圖4-1-26所示。編譯報(bào)告包含了將一個(gè)設(shè)計(jì)放到器件中的所有信息,如器件資源統(tǒng)計(jì)、編譯設(shè)置、底層顯示、器件資源利用率、適配結(jié)果、延時(shí)分析結(jié)果以及CPU使用資源等。這是一個(gè)只讀窗口,選中某項(xiàng)可獲得更詳細(xì)的信息。如果編譯有錯(cuò)誤,需要修改設(shè)計(jì),并重新編譯。項(xiàng)目一、原理圖輸入法設(shè)計(jì)二輸入與門(mén)圖4-1-26設(shè)計(jì)項(xiàng)目的編譯項(xiàng)目一、原理圖輸入法設(shè)計(jì)二輸入與門(mén)4.時(shí)序仿真當(dāng)一個(gè)設(shè)計(jì)項(xiàng)目的編譯完成之后,能否實(shí)現(xiàn)預(yù)期的邏輯功能,仍需要進(jìn)一步的檢驗(yàn)。為了實(shí)現(xiàn)正確的邏輯設(shè)計(jì),仿真分析過(guò)程是必不可少的一個(gè)環(huán)節(jié)。仿真分析就是在波形編輯器中將設(shè)計(jì)的邏輯功能用波形圖的形式顯示出來(lái),檢查邏輯功能是否符合設(shè)計(jì)要求,并給出波形分析報(bào)告。設(shè)計(jì)項(xiàng)目波形仿真的過(guò)程如下:(1)創(chuàng)建波形文件并進(jìn)入編輯環(huán)境執(zhí)行菜單命令File|New或者單擊標(biāo)準(zhǔn)工具欄上的新建圖標(biāo),則可打開(kāi)新建文件對(duì)話框,在OtherFiles標(biāo)簽頁(yè)中選擇VectorWaveformFile項(xiàng)則可以新建一個(gè)矢量波形文件(*.vwf)。單擊OK按鈕即可進(jìn)入QuartusⅡ軟件的波形文件編輯器,如圖4-1-27所示。其標(biāo)題欄的默認(rèn)文件名是Waveforml.vwf。項(xiàng)目一、原理圖輸入法設(shè)計(jì)二輸入與門(mén)圖4-1-27QuartusⅡ波形文件編輯器項(xiàng)目一、原理圖輸入法設(shè)計(jì)二輸入與門(mén)(2)插入節(jié)點(diǎn)在波形文件編輯器中,插入節(jié)點(diǎn)步驟如下:1)在圖4-1-28中,選擇菜單Edit|InsertNodeorBus…,在彈出的InsertNodeorBus對(duì)話框中點(diǎn)擊按鈕NodeFinder,彈出節(jié)點(diǎn)查找對(duì)話框,如圖4-1-26所示。圖4-1-28節(jié)點(diǎn)查找對(duì)話框項(xiàng)目一、原理圖輸入法設(shè)計(jì)二輸入與門(mén)2)在圖4-1-28信號(hào)節(jié)點(diǎn)查找對(duì)話框的Filter欄目中選擇Pins:all后,再單擊List按鈕,這時(shí)在窗口左邊的NodesFound:框中將列出該設(shè)計(jì)項(xiàng)目的全部信號(hào)節(jié)點(diǎn)。若在仿真中需要觀察全部信號(hào)的波形,則單擊窗口中間的“>>”按鈕;若在仿真中只需要觀察部分信號(hào)的波形,則首先用鼠標(biāo)單擊信號(hào)名,然后單擊窗口中間的“≥”按鈕,選中的信號(hào)即進(jìn)入到窗口右邊的SelectedNodes(被選擇的節(jié)點(diǎn))框中。如果需要?jiǎng)h除SelectedNodes框中的節(jié)點(diǎn)信號(hào),也可以用鼠標(biāo)將其選中,然后單擊窗口中間的“≥”按鈕。節(jié)點(diǎn)信號(hào)選擇完畢后,單擊OK按鈕即可。項(xiàng)目一、原理圖輸入法設(shè)計(jì)二輸入與門(mén)(3)設(shè)置輸入節(jié)點(diǎn)的波形在波形文件編輯器中,設(shè)置輸入節(jié)點(diǎn)的波形步驟如下:1)選擇菜單Edit/EndTime…,設(shè)置仿真結(jié)束時(shí)間,如10μS;選擇菜單Edit/GridSize...,修改仿真柵格大小為1μS。設(shè)置好的仿真結(jié)束時(shí)間和柵格大小如圖4-1-29所示。圖4-1-29設(shè)置仿真結(jié)束時(shí)間和柵格大小項(xiàng)目一、原理圖輸入法設(shè)計(jì)二輸入與門(mén)2)設(shè)置輸入信號(hào)波形時(shí),先選中一個(gè)節(jié)點(diǎn),節(jié)點(diǎn)選中后,波形文件編輯器左側(cè)波形編輯工具按鈕被激活,然后單擊波形編輯工具按鈕來(lái)節(jié)點(diǎn)賦值,如圖4-1-30所示。也可以拖動(dòng)鼠標(biāo),選定信號(hào)的某個(gè)時(shí)間段進(jìn)行賦值。圖4-1-30中,波形編輯工具按鈕從上而下依次為:嵌入分離窗口工具、選擇工具、文本工具、波形編輯工具、縮放工具、全屏顯示、查找工具、替換文本工具、波形編輯中的未初始化設(shè)置、不定狀態(tài)設(shè)置、強(qiáng)0電平設(shè)置、強(qiáng)1電平設(shè)置、高阻設(shè)置、弱不定電平設(shè)置、弱0電平設(shè)置、弱1電平設(shè)置、無(wú)關(guān)狀態(tài)設(shè)置、對(duì)選擇的波形電平取反、計(jì)數(shù)器設(shè)置工具、時(shí)鐘信號(hào)設(shè)置工具、信號(hào)任意值設(shè)置、隨機(jī)信號(hào)設(shè)置工具、對(duì)齊網(wǎng)格工具、排序工具。項(xiàng)目一、原理圖輸入法設(shè)計(jì)二輸入與門(mén)圖4-1-30設(shè)置輸入信號(hào)波形項(xiàng)目一、原理圖輸入法設(shè)計(jì)二輸入與門(mén)(4)保存波形文件執(zhí)行菜單File|Saveas命令,彈出圖4-1-31所示的另存為對(duì)話框,文件名輸入and_2,保存類(lèi)型取默認(rèn),點(diǎn)擊保存按鈕保存輸入波形文件。注:輸入波形文件名必須與工程項(xiàng)目名一致,否則會(huì)出錯(cuò)。圖4-1-31輸入波形文件保存對(duì)話框項(xiàng)目一、原理圖輸入法設(shè)計(jì)二輸入與門(mén)(5)設(shè)置仿真器執(zhí)行菜單Assignments|TimingAnalysisSetting…命令,在Settings對(duì)話框的SimulatorSettings項(xiàng)中直接設(shè)置。在QuartusⅡ中,仿真模式有兩種:功能仿真(Functional)和時(shí)序仿真(Timing),如圖4-1-32所示。功能仿真又稱(chēng)前仿真,是在不考慮器件延時(shí)的理想情況下進(jìn)行的邏輯驗(yàn)證;時(shí)序仿真又稱(chēng)后仿真,是在考慮了具體適配器件的各種延時(shí)的情況下進(jìn)行的仿真。功能仿真只檢驗(yàn)設(shè)計(jì)項(xiàng)目的邏輯功能,時(shí)序仿真則將延時(shí)信息也考慮在內(nèi),更符合系統(tǒng)的實(shí)際工作情況,故一般選用時(shí)序仿真。項(xiàng)目一、原理圖輸入法設(shè)計(jì)二輸入與門(mén)圖4-1-32選擇仿真模式項(xiàng)目一、原理圖輸入法設(shè)計(jì)二輸入與門(mén)(6)運(yùn)行仿真器選擇菜單Processing|StartSimulation或點(diǎn)擊工具欄中的仿真快捷按鈕運(yùn)行仿真器,仿真狀態(tài)窗口和仿真報(bào)告欄自動(dòng)出現(xiàn)并更新,信息窗口中顯示相關(guān)信息。二輸入與門(mén)仿真波形見(jiàn)圖4-1-33。如果仿真結(jié)果有錯(cuò)誤,需要修改設(shè)計(jì)并重新編譯、仿真。項(xiàng)目一、原理圖輸入法設(shè)計(jì)二輸入與門(mén)圖4-1-33二輸入與門(mén)仿真波形項(xiàng)目一、原理圖輸入法設(shè)計(jì)二輸入與門(mén)5.引腳鎖定所謂引腳鎖定,就是用戶(hù)根據(jù)需要將目標(biāo)芯片那些引腳設(shè)定為輸入腳,那些引腳設(shè)定為輸出腳。因此,用戶(hù)要根據(jù)自己的EDA實(shí)驗(yàn)系統(tǒng)來(lái)鎖定引腳。引腳鎖定的一般步驟如下:(1)執(zhí)行Assignments|AssignmentsEditor命令或者直接單擊AssignmentsEditor按鈕,打開(kāi)如圖4-1-34所示的引腳鎖窗口,在窗口的Category欄目選擇Pin項(xiàng),或直接單擊右上側(cè)的Pin按鈕。圖4-1-34引腳鎖窗口1項(xiàng)目一、原理圖輸入法設(shè)計(jì)二輸入與門(mén)(2)用鼠標(biāo)左鍵雙擊to欄目下的《new》,在其下拉菜單中列出了設(shè)計(jì)項(xiàng)目中電路的全部輸入和輸出引腳名,例如and_2的a、b、和y引腳,用鼠標(biāo)選擇其中的一個(gè)引腳,如圖4-1-35所示。圖4-1-35引腳鎖窗口2項(xiàng)目一、原理圖輸入法設(shè)計(jì)二輸入與門(mén)(3)用鼠標(biāo)左鍵雙擊Location欄目下的《new》,在其下拉菜單中列出了目標(biāo)芯片全部可使用的I/O引腳,然后用鼠標(biāo)選擇其中的一個(gè)I/O引腳分配給Name欄目下某個(gè)引腳。例如將Pin_7、Pin_6、和Pin_13分配分別給to欄目下的a、b和y引腳,如圖4-1-36所示。圖4-1-36引腳鎖定后窗口項(xiàng)目一、原理圖輸入法設(shè)計(jì)二輸入與門(mén)(4)執(zhí)行菜單Processing|StartCompilation命令對(duì)鎖定引腳后的設(shè)計(jì)項(xiàng)目重新編譯,產(chǎn)生設(shè)計(jì)電路的下載文件(.sof)和配置文件(.pof)。6.編程下載設(shè)計(jì)文件將編譯產(chǎn)生的sof格式配置文件配置進(jìn)FPGA中,進(jìn)行硬件測(cè)試的步驟如下:(1)啟動(dòng)編程窗口首先用戶(hù)根據(jù)EDA實(shí)驗(yàn)系統(tǒng)支持的下載方式(此處選用ByteBlasterMV方式),用下載電纜把實(shí)驗(yàn)系統(tǒng)和PC通信口連接好,打開(kāi)實(shí)驗(yàn)系統(tǒng)電源。選擇菜單Tool|Programmer命令,于是彈出如圖4-1-37所示的編程窗。在Mode欄中有4種編程模式可以選擇:JTAG、PassiveSerialProgramming、ActiveSerialProgramming和In-SocketProgramming。為了直接對(duì)FPGA進(jìn)行配置,在編程窗的編程模式Mode中選擇JTAG(默認(rèn)),并選中打勾下載文件右側(cè)的第一小方框。項(xiàng)目一、原理圖輸入法設(shè)計(jì)二輸入與門(mén)圖4-1-37編程窗口項(xiàng)目一、原理圖輸入法設(shè)計(jì)二輸入與門(mén)(2)設(shè)置編程器若是初次安裝的QuartusII,在編程前必須進(jìn)行編程器選擇操作。這里準(zhǔn)備選擇ByteBlasterMV[LPT1]。在編程方式窗口中,單擊HardwareSetup按鈕,在彈出如圖4-1-38所示的HardwareSetup對(duì)話框中單擊HardwareSettings標(biāo)簽,再雙擊此頁(yè)中的選項(xiàng)ByteBlasterMV之后,單擊Close按鈕,關(guān)閉對(duì)話框即可。這時(shí)應(yīng)該在編程窗右上顯示出編程方式:ByteBlasterMV[LPT1](如圖4-1-38所示)。項(xiàng)目一、原理圖輸入法設(shè)計(jì)二輸入與門(mén)如果打開(kāi)圖4-1-38所示的窗口內(nèi)Currentlyselected右側(cè)顯示NoHardware,則必須加入下載方式。即單擊AddHardware按鈕,在彈出的窗口中單擊OK按鈕,再在圖4-1-39所示的窗口雙擊ByteBlasterMV,使Currentlyselected右側(cè)顯示ByteBlasterMV[LPT1]。圖4-1-38HardwareSetup對(duì)話框項(xiàng)目一、原理圖輸入法設(shè)計(jì)二輸入與門(mén)圖4-1-39加入編程下載方式圖4-1-40雙擊選中的編程方式名(3)編程下載執(zhí)行Processing|StartProgramming命令或者直接單擊Start按鈕,即可實(shí)現(xiàn)設(shè)計(jì)電路到目標(biāo)芯片的編程下載。當(dāng)Progress顯示出100%,以及在底部的處理欄中出現(xiàn)ConfigurationSucceeded時(shí),表示編程成功,否則單擊Start按鈕,直至編程成功。編程成功就可以在EDA實(shí)驗(yàn)系統(tǒng)上對(duì)所設(shè)計(jì)的硬件電路進(jìn)行測(cè)試了。項(xiàng)目一、原理圖輸入法設(shè)計(jì)二輸入與門(mén)7.編程配置器件為了使FPGA在上電啟動(dòng)后仍然保持原有的配置文件,并能正常工作,必須將配置文件燒寫(xiě)進(jìn)專(zhuān)用的配置芯片中。下面,以Cyclone系列器件的專(zhuān)用配置器件(EPCS)為例,來(lái)說(shuō)明編程配置器件流程:(1)選擇編程模式和編程目標(biāo)文件在如圖4-1-37所示窗口的Mode欄,選擇ActiveSerialProgramming編程模式,打開(kāi)編程文件,選中文件and_2.pof,并選中打勾編程選項(xiàng),如圖4-1-41所示。項(xiàng)目一、原理圖輸入法設(shè)計(jì)二輸入與門(mén)圖4-1-41ByteBlaster接口AS模式編程窗口項(xiàng)目一、原理圖輸入法設(shè)計(jì)二輸入與門(mén)(2)AS模式編程下載單擊圖4-1-41所示窗口的Start,編程成功后FPGA將自動(dòng)被EPCS器件配置而進(jìn)入工作狀態(tài)。此后每次上電,F(xiàn)PGA都能被EPCS1自動(dòng)配置,進(jìn)入正常工作狀態(tài)。圖4-1-41ByteBlaster接口AS模式編程窗口項(xiàng)目一、原理圖輸入法設(shè)計(jì)二輸入與門(mén)(3)啟動(dòng)編程窗口選擇菜單Tool|Programmer命令,于是彈出如圖4-1-37所示的編程窗。在Mode欄中有4種編程模式可以選擇:JTAG、PassiveSerialProgramming、ActiveSerialProgramming和In-SocketProgramming。為了直接對(duì)FPGA進(jìn)行配置,在編程窗的編程模式Mode中選擇JTAG(默認(rèn)),并選中打勾下載文件右側(cè)的第一小方框。圖4-1-41ByteBlaster接口AS模式編程窗口(4)編程下載首先設(shè)置GW48系列EDA實(shí)驗(yàn)開(kāi)發(fā)系統(tǒng)的實(shí)驗(yàn)電路結(jié)構(gòu)為電路模式6,根據(jù)實(shí)驗(yàn)電路結(jié)構(gòu)圖和引腳對(duì)照表可知,a、b分別與PIO13、PIO12相連,即通過(guò)鍵2/1輸入;y與PIO16相連,輸出結(jié)果將在發(fā)光管D1顯示。執(zhí)行“Processing|StartProgramming”命令或者直接單擊“Start”按鈕,即可實(shí)現(xiàn)設(shè)計(jì)電路到目標(biāo)芯片的編程下載。當(dāng)“Progress”顯示出100%,以及在底部的處理欄中出現(xiàn)“ConfigurationSucceeded”時(shí),表示編程成功,否則單擊“Start”按鈕,直至編程成功。編程成功就可以在EDA實(shí)驗(yàn)系統(tǒng)上對(duì)所設(shè)計(jì)的硬件電路進(jìn)行測(cè)試了。項(xiàng)目一、原理圖輸入法設(shè)計(jì)二輸入與門(mén)五、練習(xí)1.用FPGA設(shè)計(jì)一個(gè)二輸入與非門(mén),并進(jìn)行時(shí)序仿真和在EDA實(shí)驗(yàn)系統(tǒng)上測(cè)試。2.用FPGA設(shè)計(jì)一個(gè)2選1數(shù)據(jù)選擇器,并進(jìn)行時(shí)序仿真和在EDA實(shí)驗(yàn)系統(tǒng)上測(cè)試。3.用原理圖輸入法設(shè)計(jì)一個(gè)計(jì)數(shù)、譯碼顯示電路,要求如下:(1)計(jì)數(shù)器為10進(jìn)制可逆計(jì)數(shù)器,且具有清零功能;(2)計(jì)數(shù)器的輸出接七段顯示譯碼器進(jìn)行譯碼;(3)對(duì)所設(shè)計(jì)的計(jì)數(shù)器、譯碼顯示電路進(jìn)行時(shí)序仿真,并下載到EDA實(shí)驗(yàn)系統(tǒng)進(jìn)行驗(yàn)證測(cè)試其正確性。項(xiàng)目二、四位加法器的層次電路設(shè)計(jì)一、學(xué)習(xí)目標(biāo)終極目標(biāo):1.進(jìn)一步掌握QuartusⅡ原理圖輸入設(shè)計(jì)法;2.掌握QuartusⅡ?qū)哟坞娐返姆椒?。促成目?biāo):1.會(huì)運(yùn)用QuartusⅡ創(chuàng)建工程和原理圖文件;2.會(huì)對(duì)原理圖進(jìn)行模塊化并能夠在高層次電路中進(jìn)行調(diào)用;3.會(huì)運(yùn)用總線設(shè)計(jì)原理圖;3.會(huì)運(yùn)用QuartusⅡ?qū)λO(shè)計(jì)電路進(jìn)行編譯、仿真和編程下載;4.會(huì)運(yùn)用EDA實(shí)驗(yàn)系統(tǒng)對(duì)所設(shè)計(jì)電路進(jìn)行驗(yàn)證測(cè)試。二、工作任務(wù)用層次電路設(shè)計(jì)一個(gè)四位加法器,并進(jìn)行時(shí)序仿真測(cè)試和下載到EDA實(shí)驗(yàn)系統(tǒng)測(cè)試。項(xiàng)目二、四位加法器的層次電路設(shè)計(jì)三、理論知識(shí)層次電路的設(shè)計(jì)方有兩種,即自下而上(Bottom-Up)的設(shè)計(jì)和自上而下(Top-Down)的設(shè)計(jì)。二者各有其特點(diǎn)。所謂自下而上(Bottom-Up)的設(shè)計(jì)方法,就是系統(tǒng)設(shè)計(jì)師們根據(jù)自己的實(shí)踐經(jīng)驗(yàn),利用現(xiàn)有的通用元器件,先完成各個(gè)部件底層的設(shè)計(jì)、搭試、測(cè)量性能指標(biāo),再組成整個(gè)系統(tǒng),而后經(jīng)調(diào)試、測(cè)量看整個(gè)系統(tǒng)是否達(dá)到規(guī)定的性能指標(biāo)。下面舉例的四位加法器設(shè)計(jì)就是采用的這種設(shè)計(jì)方法。在現(xiàn)代的數(shù)字系統(tǒng)設(shè)計(jì)中更多采用的是自上而下(Top-Down)的設(shè)計(jì)方法,這種設(shè)計(jì)方法首先從系統(tǒng)設(shè)計(jì)入手,先從頂層進(jìn)行功能方框圖劃分和結(jié)構(gòu)設(shè)計(jì)入手,實(shí)現(xiàn)從設(shè)計(jì)、仿真、測(cè)試一體化。其方案的驗(yàn)證與設(shè)計(jì)、電路與PCB設(shè)計(jì)、ASIC設(shè)計(jì)都由電子系統(tǒng)設(shè)計(jì)師借助于EDA工具來(lái)完成。QuartusⅡ?qū)σ陨蟽煞N設(shè)計(jì)方法均支持。項(xiàng)目二、四位加法器的層次電路設(shè)計(jì)四、技能訓(xùn)練(一)為本項(xiàng)工程設(shè)計(jì)建立文件夾在D盤(pán)創(chuàng)建一文件夾來(lái)存放本工程項(xiàng)目所設(shè)計(jì)的文件,文件夾取名為4bit_adder。(二)底層一位半加器設(shè)計(jì)1.創(chuàng)建一位半加器工程項(xiàng)目執(zhí)行主窗口菜單File|NewProjectWizard…命令,創(chuàng)建一位半加器工程項(xiàng)目。項(xiàng)目保存路徑為D:\4bit_adder,項(xiàng)目名為h_adder,項(xiàng)目頂層實(shí)體名為h_adder,項(xiàng)目下載目標(biāo)芯片為EP1C6Q240C8。項(xiàng)目相關(guān)設(shè)置如圖4-2-1所示。項(xiàng)目二、四位加法器的層次電路設(shè)計(jì)(b)目標(biāo)芯片設(shè)置(a)項(xiàng)目相關(guān)文件設(shè)置(b)目標(biāo)芯片設(shè)置項(xiàng)目二、四位加法器的層次電路設(shè)計(jì)2.一位半加器原理圖設(shè)計(jì)執(zhí)行主窗口菜單File|New命令,彈出編輯文件類(lèi)型對(duì)話框,選擇BlockDiagram|SchematicFile方式創(chuàng)建原理圖文件。按圖4-2-2編輯設(shè)計(jì)一位半加器原理圖,完成后將一位半加器原理圖文件保存為h_adder.bdf文件,并添加到當(dāng)前h_adder項(xiàng)目中。圖4-2-2中a,b為加數(shù)和被加數(shù)輸入引腳;ci為進(jìn)位輸出引腳;s為和輸出引腳。圖4-2-2一位半加器原理圖項(xiàng)目二、四位加法器的層次電路設(shè)計(jì)3.一位半加器編譯、時(shí)序仿真測(cè)試執(zhí)行主窗口菜單Processing|StartComplition或直接點(diǎn)擊工具欄中編譯快捷按鈕開(kāi)始編譯一位半加器項(xiàng)目。編譯沒(méi)有錯(cuò)誤后,按圖4-2-3對(duì)一位半加器進(jìn)行時(shí)序仿真測(cè)試其正確性。圖4-2-3一位半加器時(shí)序仿真測(cè)試波形項(xiàng)目二、四位加法器的層次電路設(shè)計(jì)4.創(chuàng)建一位半加器模塊符號(hào)在一位半加器編譯、時(shí)序仿真測(cè)試沒(méi)有錯(cuò)誤后,將其創(chuàng)建為一可調(diào)用的模塊符號(hào),供高層次電路來(lái)調(diào)用。創(chuàng)建電路模塊符號(hào)的方法如圖4-2-4所示。在打開(kāi)半加器原理圖文件h_adder.bdf的情況下,選擇菜單File|Create/Update|CreateSymbolFilesforCurrentFile命令,即可將當(dāng)前文件h_adder.bdf變成一個(gè)元件符號(hào)存盤(pán),以待在高層次設(shè)計(jì)中調(diào)用。項(xiàng)目二、四位加法器的層次電路設(shè)計(jì)圖4-2-4創(chuàng)建一位半加器模塊符號(hào)項(xiàng)目二、四位加法器的層次電路設(shè)計(jì)(三)一位全加器設(shè)計(jì)1.創(chuàng)建一位全加器工程項(xiàng)目執(zhí)行主窗口菜單File|NewProjectWizard…命令,創(chuàng)建一位全加器工程項(xiàng)目。項(xiàng)目保存路徑為D:\4bit_adder,項(xiàng)目名為f_adder,項(xiàng)目頂層實(shí)體名為f_adder,項(xiàng)目下載目標(biāo)芯片為EP1C6Q240C8。注意:為了調(diào)用一位半加器模塊,一位全加器工程項(xiàng)目保存路徑必需要與一位半加器工程項(xiàng)目保存路徑相同,即也保存在D:\4bit_adder中。2.一位全加器原理圖設(shè)計(jì)按圖4-2-5編輯設(shè)計(jì)一位半加器原理圖,完成后將一位全加器原理圖文件保存為f_adder.bdf文件,并添加到當(dāng)前f_adder項(xiàng)目中。圖4-2-5中,h_adder模塊符號(hào)可在原理圖空白出雙擊鼠標(biāo)左鍵,在彈出的Symbol對(duì)話框中Libraries下的Project中調(diào)出,如圖4-2-6所示。鼠標(biāo)左鍵雙擊h_adder模塊符號(hào),可打開(kāi)其內(nèi)部原理圖。項(xiàng)目二、四位加法器的層次電路設(shè)計(jì)圖4-2-5一位全加器原理圖圖4-2-6h_adder模塊符號(hào)的調(diào)用項(xiàng)目二、四位加法器的層次電路設(shè)計(jì)3.一位全加器編譯、時(shí)序仿真測(cè)試對(duì)一位全加器編譯沒(méi)有錯(cuò)誤后,按圖4-2-7對(duì)一位全加器進(jìn)行時(shí)序仿真測(cè)試其正確性。圖4-2-7一位全加器時(shí)序仿真測(cè)試波形項(xiàng)目二、四位加法器的層次電路設(shè)計(jì)4.創(chuàng)建一位全加器模塊符號(hào)執(zhí)行主窗口菜單File|Create/Update|CreateSymbolFilesforCurrentFile命令,創(chuàng)建一位全加器模塊符號(hào),以待在高層次設(shè)計(jì)中調(diào)用。(四)頂層四位加法器設(shè)計(jì)1.創(chuàng)建4加法器工程項(xiàng)目執(zhí)行主窗口菜單File|NewProjectWizard…命令,創(chuàng)建4加法器工程項(xiàng)目。項(xiàng)目保存路徑為D:\4bit_adder,項(xiàng)目名為4bit_adde,項(xiàng)目頂層實(shí)體名為4bit_adde,項(xiàng)目下載目標(biāo)芯片為EP1C6Q240C8。注意:為了調(diào)用一位全加器模塊,四位加法器工程項(xiàng)目保存路徑必需要與一位全加器工程項(xiàng)目保存路徑相同,即也保存在D:\4bit_adder中。2.四位加法器原理圖設(shè)計(jì)項(xiàng)目二、四位加法器的層次電路設(shè)計(jì)(1)原理圖文件的創(chuàng)建按圖4-2-8編輯設(shè)計(jì)四位加法器原理圖,完成后將四位加法器原理圖文件保存為4bit_adder.bdf文件,并添加到當(dāng)前4bit_adder項(xiàng)目中。圖中引腳名a[3..0]為用總線表示的輸入引腳,表示有4個(gè)輸入引腳,引腳名分別為a[3]、a[2]、a[1]和a[0]。圖中在連接導(dǎo)線上的a[0]、b[1]、s[1]等為導(dǎo)線的節(jié)點(diǎn)名,只要引腳名和導(dǎo)線上的節(jié)點(diǎn)名相同,表示該導(dǎo)線與該引腳有電氣上的連接。例如,引腳名為a[3]的引腳與導(dǎo)線的節(jié)點(diǎn)名為a[3]的導(dǎo)線是電氣上相連在一起的。項(xiàng)目二、四位加法器的層次電路設(shè)計(jì)圖4-2-8四位加法器原理圖項(xiàng)目二、四位加法器的層次電路設(shè)計(jì)(2)導(dǎo)線的節(jié)點(diǎn)名編輯1)導(dǎo)線的節(jié)點(diǎn)名輸入方法導(dǎo)線的節(jié)點(diǎn)名輸入方法有如下三種方法:在元件的引腳脫出導(dǎo)線后直接輸入導(dǎo)線接點(diǎn)名即可。用鼠標(biāo)左鍵點(diǎn)擊已放置好的導(dǎo)線,選中該導(dǎo)線后即可輸入導(dǎo)線接點(diǎn)。將鼠標(biāo)指針移到要輸入節(jié)點(diǎn)名的導(dǎo)線上,當(dāng)鼠標(biāo)指針移變成帶箭頭的十字架時(shí),按鼠標(biāo)右鍵,在彈出菜單中選擇Propertioes命令后,彈出圖4-2-9所示的NodePropertioes對(duì)話框。在該對(duì)話框中的General選項(xiàng)中的Name欄中輸入導(dǎo)線節(jié)點(diǎn)名后單擊確定按鈕即可。項(xiàng)目二、四位加法器的層次電路設(shè)計(jì)圖4-2-9NodePropertioes對(duì)話框圖4-2-9NodePropertioes對(duì)話框注意:導(dǎo)線節(jié)點(diǎn)名不能用原理圖工具條中的按鈕來(lái)放置。2)導(dǎo)線的節(jié)點(diǎn)名的刪除要?jiǎng)h除導(dǎo)線的節(jié)點(diǎn)名,只要在圖4-2-9處的Name欄中刪除節(jié)點(diǎn)名即可。項(xiàng)目二、四位加法器的層次電路設(shè)計(jì)3.四位加法器編譯、時(shí)序仿真測(cè)試對(duì)四位加法器編譯沒(méi)有錯(cuò)誤后,按圖4-2-10對(duì)四位加法器進(jìn)行時(shí)序仿真測(cè)試其正確性。圖4-2-10四位加法器時(shí)序仿真測(cè)試波形項(xiàng)目二、四位加法器的層次電路設(shè)計(jì)

4.四位加法器引腳鎖定執(zhí)行Assignments|AssignmentsEditor命令或者直接單擊AssignmentsEditor按鈕,調(diào)出AssignmentsEditor編輯器,用戶(hù)根據(jù)EDA實(shí)驗(yàn)系統(tǒng)對(duì)四位加法器項(xiàng)目的輸入輸出引腳進(jìn)行引腳鎖定。此處舉例按圖4-2-11所示進(jìn)行鎖定,引腳鎖定后會(huì)在圖4-2-57所示的原理圖中出現(xiàn)具體的引腳鎖定標(biāo)志。例如,PIN_137代表FPGA芯片的137腳分配給了ci引腳。項(xiàng)目二、四位加法器的層次電路設(shè)計(jì)圖4-2-11四位加法器引腳鎖定設(shè)置5.執(zhí)行菜單Processing|StartSimulation命令,對(duì)鎖定引腳后的四位加法器項(xiàng)目重新編譯,產(chǎn)生設(shè)計(jì)電路的下載文件(.sof)和配置文件(.pof)供編程下載使用。6.四位加法器編程下載測(cè)試選擇菜單Tool|Programmer命令,在彈出的編程窗口中做好相關(guān)設(shè)置后,將四位加法器設(shè)計(jì)項(xiàng)目下載到FPGA目標(biāo)芯片中,并在EDA實(shí)驗(yàn)系統(tǒng)上測(cè)試其正確性。項(xiàng)目二、四位加法器的層次電路設(shè)計(jì)五、練習(xí)利用QuartusⅡ?qū)哟坞娐吩O(shè)計(jì)法。設(shè)計(jì)一具有如下功能的數(shù)字鐘:1.具有時(shí)、分、秒計(jì)數(shù)功能,且以24小時(shí)循環(huán)計(jì)時(shí)。2.計(jì)時(shí)結(jié)果要用6個(gè)數(shù)碼管分別顯示時(shí)、分、秒的十位和個(gè)位。3.具有清零的功能。項(xiàng)目三、用LPM設(shè)計(jì)正弦波發(fā)生器一、學(xué)習(xí)目標(biāo)終極目標(biāo):1.理解LPM概念、組件和優(yōu)點(diǎn);2.掌握典型LPM設(shè)計(jì)方法和設(shè)計(jì)流程。促成目標(biāo):1.會(huì)定制ROM初始化數(shù)據(jù)文件;2.會(huì)定制LPM模塊;3.會(huì)使用嵌入式邏輯分析儀;4.會(huì)使用在系統(tǒng)存儲(chǔ)器進(jìn)行數(shù)據(jù)讀寫(xiě);二、工作任務(wù)在QuartusⅡ平臺(tái)上,基于LPM模塊設(shè)計(jì)一個(gè)正弦波發(fā)生器。要求:1.正確定制ROM初始化數(shù)據(jù)文件;2.使用LPM定制ROM元件和計(jì)數(shù)器元件;3.完成頂層設(shè)計(jì)、時(shí)序仿真、管腳分配、下載測(cè)試,在實(shí)驗(yàn)系統(tǒng)上驗(yàn)證設(shè)計(jì)。4.使用嵌入式邏輯分析儀測(cè)試波形;5.使用在系統(tǒng)存儲(chǔ)器進(jìn)行數(shù)據(jù)讀寫(xiě),結(jié)合SignalTapII觀察對(duì)波形的影響;項(xiàng)目三、用LPM設(shè)計(jì)正弦波發(fā)生器2.正弦信號(hào)發(fā)生器工作原理圖4-3-1所示的正弦信號(hào)發(fā)生器的結(jié)構(gòu)由4個(gè)部分組成?!裼?jì)數(shù)器或地址發(fā)生器(這里選擇6位)。●正弦信號(hào)數(shù)據(jù)ROM(6位地址線,8位數(shù)據(jù)線),含有64個(gè)8位數(shù)據(jù)(一個(gè)周期)。●原理圖頂層設(shè)計(jì)?!?位D/A(實(shí)驗(yàn)中可用DAC0832代替)。圖4-3-1正弦信號(hào)發(fā)生器結(jié)構(gòu)框圖項(xiàng)目三、用LPM設(shè)計(jì)正弦波發(fā)生器三、理論知識(shí)1.宏功能模塊簡(jiǎn)介L(zhǎng)PM是參數(shù)可設(shè)置模塊庫(kù)(LibraryofParameterizedModules)的英語(yǔ)縮寫(xiě),Altera提供的可參數(shù)化宏功能模塊和LPM函數(shù)均基于Altera器件的結(jié)構(gòu)做了優(yōu)化設(shè)計(jì)。在許多實(shí)用情況中,必須使用宏功能模塊才可以使用一些Altera特定器件的硬件功能。例如各類(lèi)片上存儲(chǔ)器、DSP模塊、LVDS驅(qū)動(dòng)器、嵌入式PLL以及SERDES和DDIO電路模塊等。這些可以以圖形或硬件描述語(yǔ)言模塊形式方便調(diào)用的宏功能塊,使得基于EDA技術(shù)的電子設(shè)計(jì)的效率和可靠性有了很大的提高。設(shè)計(jì)者可以根據(jù)實(shí)際電路的設(shè)計(jì)需要,選擇LPM庫(kù)中的適當(dāng)模塊,并為其設(shè)定適當(dāng)?shù)膮?shù),就能滿足自己的設(shè)計(jì)需要,從而在自己的項(xiàng)目中十分方便地調(diào)用優(yōu)秀的電子工程技術(shù)人員的硬件設(shè)計(jì)成果。LPM功能模塊內(nèi)容豐富,每一模塊的功能、參數(shù)含義、使用方法、硬件描述語(yǔ)言模塊參數(shù)設(shè)置及調(diào)用方法都可以在QuartusII中的Help中查閱到,方法是選擇Help菜單中的Megafunctions/LPM命令。項(xiàng)目三、用LPM設(shè)計(jì)正弦波發(fā)生器Altera提供多種方法來(lái)獲取AlteraMegafunctionPartnersProgram(AMPP)和MegaCore宏功能模塊,這些函數(shù)經(jīng)嚴(yán)格的測(cè)試和優(yōu)化,可以在Altera特定器件結(jié)構(gòu)中發(fā)揮出最佳性能??梢允褂眠@些知識(shí)產(chǎn)權(quán)的參數(shù)化模塊減少設(shè)計(jì)和測(cè)試的時(shí)間。MegaCore和AMPP宏功能模塊包括應(yīng)用于通信、數(shù)字信號(hào)處理(DSP)、PCI和其他總線界面,以及存儲(chǔ)器控制器中的宏功能模塊。Altera提供的宏功能模塊與LPM函數(shù)有以下幾方面?!袼阈g(shù)組件:包括累加器、加法器、乘法器和LPM算術(shù)函數(shù)。●門(mén)電路:包括多路復(fù)用器和LPM門(mén)函數(shù)?!馡/O組件:包括時(shí)鐘數(shù)據(jù)恢復(fù)(CDR)、鎖相環(huán)(PLL)、雙數(shù)據(jù)速率(DDR)、千兆位收發(fā)器塊(GXB)、LVDS接收器和發(fā)送器、PLL重新配置和遠(yuǎn)程更新宏功能模塊?!翊鎯?chǔ)器編譯器:包括FIFOPartitioner、RAM和ROM宏功能模塊?!翊鎯?chǔ)組件:包括存儲(chǔ)器、移位寄存器宏模塊和LPM存儲(chǔ)器函數(shù)。項(xiàng)目三、用LPM設(shè)計(jì)正弦波發(fā)生器圖4-3-1所示的信號(hào)發(fā)生器結(jié)構(gòu)圖中,頂層文件singt在FPGA中實(shí)現(xiàn),包含兩個(gè)部分:ROM的地址信號(hào)發(fā)生器,由LPM_counter構(gòu)成;一個(gè)正弦數(shù)據(jù)ROM,由LPM_ROM模塊構(gòu)成。地址發(fā)生器的時(shí)鐘CLK的輸入頻率f0與每周期的波形數(shù)據(jù)點(diǎn)數(shù)(在此選擇64點(diǎn)),以及D/A輸出的頻率f的關(guān)系是:f=f0/64。3.數(shù)據(jù)文件的初始化方法在此首先確定圖4-3-1中ROM內(nèi)的波形數(shù)據(jù)文件。QuartusII能接受的LPM_ROM中的初始化數(shù)據(jù)文件的格式有兩種:MemoryInitializationFile(.mif)格式和Hexadecimal(Intel-Format)File(.hex)格式。以下以64點(diǎn)正弦波形數(shù)據(jù)為例分別說(shuō)明。實(shí)際應(yīng)用中只要使用其中一種格式的文件即可。項(xiàng)目三、用LPM設(shè)計(jì)正弦波發(fā)生器(1)定制.mif格式文件.1)QuartusII中建立.mif格式文件.如同在能力訓(xùn)練中所學(xué)習(xí),首先在QuartusII中選擇ROM數(shù)據(jù)文件編輯窗,即選擇菜單File→New命令,并在New窗口中單擊Otherfiles標(biāo)簽,再選擇MemoryInitializationFile項(xiàng),單擊OK按鈕后產(chǎn)生ROM數(shù)據(jù)文件大小選擇窗。根據(jù)64點(diǎn)8位正弦數(shù)據(jù)的情況,可選ROM的數(shù)據(jù)數(shù)Number為64,數(shù)據(jù)寬Wordsize取8位。單擊OK按鈕,將出現(xiàn)空的mif數(shù)據(jù)表格。將波形數(shù)據(jù)填入此表中,完成后,選擇菜單File→SaveAs命令,保存此數(shù)據(jù)文件,即可定制完成相應(yīng)的波形數(shù)據(jù)軟件。2)通過(guò)波形數(shù)據(jù)文件軟件生成。目前有眾多波形數(shù)據(jù)文件生成軟件,讀者可去互聯(lián)網(wǎng)搜索。這里介紹一種簡(jiǎn)單的波形數(shù)據(jù)文件生成軟件Guagle_wave。打開(kāi)該軟件,選擇->查看|全局參數(shù),如圖4-3-2:項(xiàng)目三、用LPM設(shè)計(jì)正弦波發(fā)生器圖4-3-2Guagle_wave查看|全局參數(shù)項(xiàng)目三、用LPM設(shè)計(jì)正弦波發(fā)生器在設(shè)定波形菜單中選擇正弦波,如圖4-3-4:設(shè)置全局參數(shù),數(shù)據(jù)長(zhǎng)度為64,數(shù)據(jù)位寬為8,如圖4-3-3,選擇確定:圖4-3-3設(shè)置全局參數(shù)圖4-3-4在設(shè)定波形菜單中選擇正弦波項(xiàng)目三、用LPM設(shè)計(jì)正弦波發(fā)生器選擇->文件|保存,為文件選擇相應(yīng)的目錄,即可得到相應(yīng)的mif格式文件。圖4-3-5保存相應(yīng)的mif格式文件項(xiàng)目三、用LPM設(shè)計(jì)正弦波發(fā)生器我們可以使用Windows的記事本打開(kāi)s.mif驗(yàn)證,如例4-3-1所示:例4-3-1WIDTH=8;DEPTH=64;ADDRESS_RADIX=HEX;DATA_RADIX=HEX;CONTENTBEGIN0000:0080;0001:008C;0002:0098;0003:00A5;0004:00B0;0005:00BC;0006:00C6;0007:00D0;0008:00DA;0009:00E2;…(數(shù)據(jù)略去)003A:0039;003B:0043;003C:004F;003D:005A;003E:0067;003F:0073;END;項(xiàng)目三、用LPM設(shè)計(jì)正弦波發(fā)生器3)用高級(jí)程序語(yǔ)言生成MIF文件也可以用程序語(yǔ)言生成,如C程序。例4-3-2是產(chǎn)生正弦波數(shù)據(jù)值的C程序。例4-3-2#include<stdio.h>#include"math.h"main(){inti;floats;for(i=0;i<1024;i++){s=sin(atan(1)*8*i/1024);printf("%d:%d;\n",i,(int)((s+1)*1023/2));}}把上述程序編譯成程序后,可在DOS命令行下執(zhí)行命令:romgen>sin_rom.mif;將生成sin_rom.mif文件,再加上.mif文件的頭部說(shuō)明即可。romgen假設(shè)是編譯后的程序名。項(xiàng)目三、用LPM設(shè)計(jì)正弦波發(fā)生器(2)建立.hex格式文件建立.hex格式文件有兩種方法,第一種方法與以上介紹的用Quartus生成.mif格式文件的方法相同,只是在New窗中單擊Otherfiles標(biāo)簽后,選擇Hexadecimal(Intel-Format)File項(xiàng),最后存盤(pán).hex格式文件(如圖4-3-6所示)。第二種方法是用普通單片機(jī)編譯器來(lái)產(chǎn)生。方法是利用匯編程序編輯器將此64個(gè)數(shù)據(jù)編輯于編輯窗中,然后用單片機(jī)ASM編譯器產(chǎn)生.hex格式文件。圖4-3-6建立.hex格式文件這里提到的.hex格式文件生成的方法很容易應(yīng)用到51單片機(jī)/CPU設(shè)計(jì)中,或程序ROM調(diào)用應(yīng)用程序的設(shè)計(jì)技術(shù)中。項(xiàng)目三、用LPM設(shè)計(jì)正弦波發(fā)生器4.嵌入式邏輯分析儀簡(jiǎn)介隨著邏輯設(shè)計(jì)復(fù)雜性的不斷增加,僅依賴(lài)于軟件方式的仿真測(cè)試來(lái)了解設(shè)計(jì)系統(tǒng)的硬件功能已遠(yuǎn)遠(yuǎn)不夠了,而不斷需要重復(fù)進(jìn)行的硬件系統(tǒng)的測(cè)試也變得更為困難。為了解決這些問(wèn)題,設(shè)計(jì)者可以將一種高效的硬件測(cè)試手段和傳統(tǒng)的系統(tǒng)測(cè)試方法相結(jié)合來(lái)完成。這就是嵌入式邏輯分析儀的使用。它可以隨設(shè)計(jì)文件一并下載于目標(biāo)芯片中,用以捕捉目標(biāo)芯片內(nèi)部信號(hào)節(jié)點(diǎn)處的信息,而又不影響原硬件系統(tǒng)的正常工作。這就是QuartusII中SignalTapII的目的。在實(shí)際監(jiān)測(cè)中,SignalTapII將測(cè)得的樣本信號(hào)暫存于目標(biāo)器件中的嵌入式RAM(如ESB、M4K)中,然后通過(guò)器件的JTAG端口將采得的信息傳出,送入計(jì)算機(jī)進(jìn)行顯示和分析。嵌入式邏輯分析儀SignalTapII允許對(duì)設(shè)計(jì)中的所有層次的模塊的信號(hào)節(jié)點(diǎn)進(jìn)行測(cè)試,可以使用多時(shí)鐘驅(qū)動(dòng),而且還能通過(guò)設(shè)置以確定前后觸發(fā)捕捉信號(hào)信息的比例。項(xiàng)目三、用LPM設(shè)計(jì)正弦波發(fā)生器5.在系統(tǒng)存儲(chǔ)器簡(jiǎn)介對(duì)于Cyclone等系列的FPGA,只要對(duì)使用的LPM_ROM或LPM_RAM模塊適當(dāng)設(shè)置,就能利用QuartusII的EAB在系統(tǒng)(In-System)讀寫(xiě)編輯器直接通過(guò)JTAG口讀取或改寫(xiě)FPGA內(nèi)處于工作狀態(tài)的存儲(chǔ)器中的數(shù)據(jù),讀取過(guò)程不影響FPGA的正常工作。此編輯器的功能有許多用處,如在系統(tǒng)了解ROM中加載的數(shù)據(jù)、讀取基于EAB的RAM中采樣獲得的數(shù)據(jù),以及對(duì)嵌入在由FPGA資源設(shè)計(jì)成的CPU中的數(shù)據(jù)RAM和程序ROM中的信息讀取和數(shù)據(jù)修改等。項(xiàng)目三、用LPM設(shè)計(jì)正弦波發(fā)生器四、技能訓(xùn)練1.定制ROM初始化數(shù)據(jù)文件;建立.mif格式文件。首先在QuartusII中選擇ROM數(shù)據(jù)文件編輯窗,即選擇菜單File→New命令,并在New窗口中單擊Otherfiles標(biāo)簽,再選擇如圖4-3-7所示的MemoryInitializationFile項(xiàng),單擊OK按鈕后產(chǎn)生如圖4-3-8所示的ROM數(shù)據(jù)文件大小選擇窗。根據(jù)64點(diǎn)8位正弦數(shù)據(jù)的情況,可選ROM的數(shù)據(jù)數(shù)Number為64,數(shù)據(jù)寬Wordsize取8位。單擊OK按鈕,將出現(xiàn)如圖4-3-9所示的mif數(shù)據(jù)表格,表格中的數(shù)據(jù)格式可通過(guò)鼠標(biāo)右鍵單擊窗口邊緣的地址數(shù)據(jù)彈出的窗口選擇。將波形數(shù)據(jù)填入此表中,完成后,選擇菜單File→SaveAs命令,保存此數(shù)據(jù)文件,在這里不妨取名為s.mif。一般來(lái)說(shuō),對(duì)于文件的路徑結(jié)構(gòu),如果信號(hào)發(fā)生器工程的主文件存放路徑是d:\singt\,則可在d:\singt\下單獨(dú)建一子目錄如d:\singt\dataMIF\中僅存放波形數(shù)據(jù)文件s.mif。推薦以這種方式使用ROM數(shù)據(jù)文件,但不要用data等容易與其他名稱(chēng)相混淆的名稱(chēng)作為文件夾名。項(xiàng)目三、用LPM設(shè)計(jì)正弦波發(fā)生器圖4-3-7建立mif格式文件圖4-3-8ROM的數(shù)據(jù)數(shù)和數(shù)據(jù)寬度圖4-3-9QuartusII設(shè)計(jì)MIF文件項(xiàng)目三、用LPM設(shè)計(jì)正弦波發(fā)生器2.定制LPM_ROM元件在設(shè)計(jì)正弦信號(hào)發(fā)生器前,必須首先完成存放波形數(shù)據(jù)ROM的設(shè)計(jì)。定制正弦信號(hào)數(shù)據(jù)ROM宏功能塊,并將以上的波形數(shù)據(jù)加載于此ROM中。設(shè)計(jì)步驟如下:選擇菜單File→New命令,產(chǎn)生如圖4-3-10所示的界面,建立原理圖文件。建立原理圖文件后,點(diǎn)擊SymbolTool按鈕,如圖4-3-11所示圖4-3-10QuartusII設(shè)計(jì)MIF文件項(xiàng)目三、用LPM設(shè)計(jì)正弦波發(fā)生器選擇Megafunctions下Storage中的LPM_ROM,如圖圖4-3-12圖4-3-11點(diǎn)擊SymbolTool按鈕項(xiàng)目三、用LPM設(shè)計(jì)正弦波發(fā)生器圖4-3-12選擇Storage中的LPM_ROM項(xiàng)目三、用LPM設(shè)計(jì)正弦波發(fā)生器單擊OK,出現(xiàn)如圖4-3-13所示界面:圖4-3-13創(chuàng)建LPM_ROM輸出文件類(lèi)型項(xiàng)目三、用LPM設(shè)計(jì)正弦波發(fā)生器點(diǎn)擊Next,出現(xiàn)如圖4-3-14,選擇ROM控制線、地址線和數(shù)據(jù)線。在圖4-3-14所示的對(duì)話框中選擇地址線位寬和ROM中數(shù)據(jù)數(shù)分別為8和64;圖4-3-14選擇data_rom模塊數(shù)據(jù)線和地址線寬度項(xiàng)目三、用LPM設(shè)計(jì)正弦波發(fā)生器單擊Next按鈕后出現(xiàn)如圖4-3-15所示的界面。圖4-3-15選擇地址鎖存信號(hào)項(xiàng)目三、用LPM設(shè)計(jì)正弦波發(fā)生器圖4-3-16調(diào)入ROM初始化數(shù)據(jù)文件并選擇在系統(tǒng)讀寫(xiě)功能項(xiàng)目三、用LPM設(shè)計(jì)正弦波發(fā)生器項(xiàng)目三、用LPM設(shè)計(jì)正弦波發(fā)生器在圖4-3-16所示的“Doyouwantto...”欄選中“yes,usethisfileforthememorycontent”單選按鈕,并單擊Browse按鈕,選擇指定路徑上的文件s.mif。選中AlowIn-SystemMemory...”單選按鈕,并在TheInstanceIDofthisrom欄輸入rom1,作為此ROM的ID名稱(chēng)。通過(guò)這個(gè)設(shè)置,可以允許QuartusII能通過(guò)JTAG口對(duì)下載于FPGA中的此ROM進(jìn)行“在系統(tǒng)”測(cè)試和讀寫(xiě)(如果需要讀寫(xiě)多個(gè)嵌入的LPM_ROM或LPM_RAM,ID號(hào)rom1就作為此ROM的識(shí)別名稱(chēng)),這種讀寫(xiě)不影響FPGA中電子系統(tǒng)的正常工作。最后單擊圖4-3-16所示的Next按鈕,再單擊圖4-3-17所示的Finish按鈕后完成ROM定制。項(xiàng)目三、用LPM設(shè)計(jì)正弦波發(fā)生器圖4-3-17LPM_ROM設(shè)計(jì)完成項(xiàng)目三、用LPM設(shè)計(jì)正弦波發(fā)生器3.定制LPM_COUNTER計(jì)數(shù)器元件;計(jì)數(shù)器的LPM設(shè)計(jì)與ROM相似,首先進(jìn)入如圖4-3-18所示界面,選擇Megafunctions下arithmetic中的LPM_counter:圖4-3-18計(jì)數(shù)器LPM宏單元設(shè)定項(xiàng)目三、用LPM設(shè)計(jì)正弦波發(fā)生器單擊OK后進(jìn)入如下界面,圖4-3-19創(chuàng)建LPM_COUNTER輸出文件類(lèi)型項(xiàng)目三、用LPM設(shè)計(jì)正弦波發(fā)生器單擊NEXT,進(jìn)入到圖4-3-20所示頁(yè)面,進(jìn)行計(jì)數(shù)器總線與方向設(shè)定,選擇q輸出的總線為6bits,方向?yàn)閁ponly圖4-3-20計(jì)數(shù)器總線與方向設(shè)定項(xiàng)目三、用LPM設(shè)計(jì)正弦波發(fā)生器繼續(xù)單擊NEXT進(jìn)入到下一步設(shè)定,如圖4-3-21,進(jìn)行計(jì)數(shù)器類(lèi)型和計(jì)數(shù)使能設(shè)定,圖4-3-21計(jì)數(shù)器類(lèi)型與使能端設(shè)定項(xiàng)目三、用LPM設(shè)計(jì)正弦波發(fā)生器最后單擊圖4-3-21所示的Next按鈕,再單擊圖4-3-22所示的Finish按鈕后完成計(jì)數(shù)器定制。圖4-3-22計(jì)數(shù)器LPM設(shè)計(jì)完成項(xiàng)目三、用LPM設(shè)計(jì)正弦波發(fā)生器4.完成頂層設(shè)計(jì),時(shí)序仿真,管腳分配,下載測(cè)試這里的設(shè)計(jì)流程主要包括編輯頂層設(shè)計(jì)文件、全程編譯、時(shí)序仿真、引腳鎖定、再次編譯并下載。畫(huà)好信號(hào)發(fā)生器的頂層原理圖后,如圖圖4-3-23,將設(shè)計(jì)文件存盤(pán)為singt.bdf,圖4-3-23信號(hào)發(fā)生器的頂層原理圖設(shè)計(jì)文件singt.bdf項(xiàng)目三、用LPM設(shè)計(jì)正弦波發(fā)生器FPGA目標(biāo)芯片可選擇Cyclone1C6Q240C8,全程編譯一次后進(jìn)入時(shí)序仿真測(cè)試。圖4-3-24所示的是仿真結(jié)果。由波形可見(jiàn),隨著每一個(gè)時(shí)鐘上升沿的到來(lái),輸出端口將正弦波數(shù)據(jù)依次輸出。將這些數(shù)據(jù)與圖4-3-9所示的加載于LPM_ROM的數(shù)據(jù)比較,可以看出,設(shè)計(jì)是正確的。圖4-3-24仿真波形輸出項(xiàng)目三、用LPM設(shè)計(jì)正弦波發(fā)生器仿真完成后進(jìn)行硬件測(cè)試,將設(shè)計(jì)定義管腳,下載到實(shí)驗(yàn)箱進(jìn)行測(cè)試。本例選擇電路模式5,則時(shí)鐘CLK接實(shí)驗(yàn)箱的clock0(28腳);EN接實(shí)驗(yàn)箱的鍵1(233腳);DOUT(0)、DOUT(1)、…、DOUT(7)分別為第21、41、128、132、133、134、135、136腳,編譯下載singt.sof后,打開(kāi)+/-12V電壓開(kāi)關(guān),將CLK的時(shí)鐘通過(guò)實(shí)驗(yàn)箱上clock0的跳線選擇頻率為65536Hz,再將示波器接于實(shí)驗(yàn)箱相應(yīng)的觀測(cè)點(diǎn)上就能觀察波形的輸出情況了。5.使用嵌入式邏輯分析儀測(cè)試波形。這里將以上面設(shè)計(jì)的正弦信號(hào)發(fā)生器為例介紹SignalTapII的使用方法,流程如下:(1)打開(kāi)SignalTapII編輯窗選擇菜單File→New命令,在New窗口中選擇OtherFiles中的SignalTapIIFile(如圖4-3-25所示),單擊OK按鈕,即出現(xiàn)SignalTapII編輯窗(如圖4-3-26所示)。項(xiàng)目三、用LPM設(shè)計(jì)正弦波發(fā)生器圖4-3-25創(chuàng)建SignalTapIIFile項(xiàng)目三、用LPM設(shè)計(jì)正弦波發(fā)生器圖4-3-26SignalTapII編輯窗項(xiàng)目三、用LPM設(shè)計(jì)正弦波發(fā)生器(2)調(diào)入待測(cè)信號(hào)首先單擊上排的Instance欄內(nèi)的auto_signaltap_0,更改此名,如Singt,這是其中一組待測(cè)信號(hào)名。為了調(diào)入待測(cè)信號(hào)名,在下欄的空白處雙擊,即彈出NodeF

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
  • 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ì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論