freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

20xx畢業(yè)論文設(shè)計(jì)-函數(shù)信號(hào)發(fā)生器的fpga設(shè)計(jì)-在線瀏覽

2025-03-02 16:11本頁(yè)面
  

【正文】 設(shè)計(jì)方式帶來(lái)了革命性的變化。20世紀(jì)70年代,早期的可編程邏輯器件只有可編程只讀存儲(chǔ)器(PROM)、紫外線可擦除只讀存儲(chǔ)器(EPROM)和電可擦除只讀存儲(chǔ)器(EEPROM)3種。PLA在結(jié)構(gòu)上由一個(gè)可編程的與陣列和可編程的或陳列構(gòu)成,陣列規(guī)模小,編程過(guò)程復(fù)雜繁瑣。在這之后出現(xiàn)了可編程陣列邏輯(Programmable Array Logic,PAL)器件。為了彌補(bǔ)這一缺陷,20世紀(jì)80年代中期,著名的可編程邏輯器件廠商Altera和Xilinx分別推出了擴(kuò)展型的復(fù)雜可編程邏輯器件(Complex Programmable Logic Device,CPLD)和類似于標(biāo)準(zhǔn)門(mén)陣列的現(xiàn)場(chǎng)可編程門(mén)陣列(Field Programmable Gate Array,F(xiàn)PGA)。經(jīng)過(guò)近20年的發(fā)展,可編程邏輯器件已經(jīng)取得了長(zhǎng)足的進(jìn)步,資源更加豐富,使用越來(lái)越方便。 FPGA的設(shè)計(jì)方法FPGA的常用設(shè)計(jì)方法包括“自頂向下”和“自下而上”[6]。所謂“自頂向下”設(shè)計(jì)方法,簡(jiǎn)單地說(shuō),就是采用可完全獨(dú)立于芯片廠商及其產(chǎn)品結(jié)構(gòu)的描述語(yǔ)言,在功能級(jí)對(duì)設(shè)計(jì)產(chǎn)品進(jìn)行定義,并結(jié)合功能仿真技術(shù),以確保設(shè)計(jì)的正確性,在功能定義完成后,利用邏輯綜合技術(shù),把功能描述轉(zhuǎn)換成某一具體結(jié)構(gòu)芯片的網(wǎng)表文件,輸出給廠商的布局布線器進(jìn)行布局布線?!白皂斚蛳隆痹O(shè)計(jì)方法的優(yōu)越性是顯而易見(jiàn)的。其次,設(shè)計(jì)的再利用得到保證。所謂模塊化就是對(duì)以往設(shè)計(jì)成果進(jìn)行修改、組合和再利用,產(chǎn)生全新的或派生設(shè)計(jì)。因此,可以以一種IP(Intelligence Property 知識(shí)產(chǎn)權(quán))的方式進(jìn)行存檔,以便將來(lái)重新利用。簡(jiǎn)單的語(yǔ)言描述即可完成復(fù)雜的功能,而不需要手工繪圖。設(shè)計(jì)師可在較短的時(shí)間內(nèi)采用各種結(jié)構(gòu)芯片來(lái)完成同一功能描述,從而在設(shè)計(jì)規(guī)模、速度、芯片價(jià)格及系統(tǒng)性能要求等方面進(jìn)行平衡,選擇最佳結(jié)果。 FPGA的設(shè)計(jì)流程 基于“自頂向下”設(shè)計(jì)方法的FPGA設(shè)計(jì)流程FPGA開(kāi)發(fā)采用的是一種高層次設(shè)計(jì)方法[4],這是一種“自頂向下”的方法,適應(yīng)了當(dāng)今芯片開(kāi)發(fā)的復(fù)雜程度提高、上市時(shí)間緊迫的特點(diǎn)。然后用綜合優(yōu)化工具生成具體門(mén)電路的網(wǎng)表,其對(duì)應(yīng)的物理實(shí)現(xiàn)級(jí)(層)可以是印刷電路板或?qū)S眉呻娐?。其設(shè)計(jì)流程步驟如下:(1)按照“自頂向下”的設(shè)計(jì)方法進(jìn)行系統(tǒng)劃分。這是高層次設(shè)計(jì)中最為普遍的輸入方式,用任何文本編輯器都可以。(3)將以上的設(shè)計(jì)輸入編譯成標(biāo)準(zhǔn)的VHDL文件,然后將文件調(diào)入仿真軟件進(jìn)行功能仿真,檢查邏輯功能是否正確。(4)利用綜合器對(duì)源代碼進(jìn)行綜合優(yōu)化處理,生成門(mén)級(jí)描述的網(wǎng)表文件,即將源文件調(diào)入邏輯綜合軟件進(jìn)行邏輯分析處理。(6)將適配器產(chǎn)生的器件編程文件通過(guò)編程器或下載電纜載入到目標(biāo)芯片F(xiàn)PGA中。(2)功能設(shè)計(jì)完全獨(dú)立于物理實(shí)現(xiàn)。設(shè)計(jì)結(jié)果完全可以以一種知識(shí)產(chǎn)權(quán)(Intellectual Property,IP)的方式作為設(shè)計(jì)成果,應(yīng)用于其他電子產(chǎn)品設(shè)計(jì)中,做到設(shè)計(jì)成果再利用。(5)設(shè)計(jì)并處理大規(guī)模、復(fù)雜電路。為設(shè)計(jì)系統(tǒng)的小型化、低功耗、高可靠性等提供了集成的手段。據(jù)統(tǒng)計(jì),采用“自頂向下”設(shè)計(jì)流程的生產(chǎn)率可達(dá)到傳統(tǒng)設(shè)計(jì)方法的24倍。隨著可編程邏輯器件的高速發(fā)展,可編程邏輯器件將進(jìn)一步擴(kuò)大其領(lǐng)地,向著更高密度和更大容量方向邁進(jìn)。本設(shè)計(jì)采用VHDL語(yǔ)言來(lái)編寫(xiě)程序的。VHDL語(yǔ)言還可以由設(shè)計(jì)人員自己定義數(shù)據(jù)類型,這一點(diǎn)也是其他高級(jí)語(yǔ)言做不到的。這些硬件描述語(yǔ)言具有很大的差異,并且只能在本公司的EDA開(kāi)發(fā)工具上使用,這大大限制了硬件描述語(yǔ)言的使用。(1)20世紀(jì)70年代末和80年代初,美國(guó)國(guó)防部提出了VHSIC(Very High Speed Integrated Circuit)計(jì)劃,VHSIC計(jì)劃的目標(biāo)是為下一代集成電路的生產(chǎn)、實(shí)現(xiàn)階段性的工藝極限以及完成10萬(wàn)門(mén)級(jí)以上的設(shè)計(jì),建立一項(xiàng)新的描述方法。這個(gè)語(yǔ)言只是一個(gè)使電路文體化的一種標(biāo)準(zhǔn),目的是使文本描述的電路設(shè)計(jì)能夠?yàn)槠渌怂斫?,同時(shí)也可以作為一種模型語(yǔ)言并能采用軟件進(jìn)行模擬。經(jīng)過(guò)多次反復(fù)的修改與擴(kuò)充,直到1987年12月,VHDL語(yǔ)言才被接納為IEEE 1076標(biāo)準(zhǔn)。1993年,IEEE 1076標(biāo)準(zhǔn)被修訂,更新為新的VHDL語(yǔ)言標(biāo)準(zhǔn)IEEE 1164。 VHDL語(yǔ)言的特點(diǎn)VHDL語(yǔ)言能夠成為標(biāo)準(zhǔn)化的硬件描述語(yǔ)言并獲得廣泛應(yīng)用,它自身必然具有很多其他硬件描述語(yǔ)言所不具備的優(yōu)點(diǎn)。同樣,它也具有一些自身的缺點(diǎn),或者說(shuō)VHDL語(yǔ)言還有一些需要不斷完善的地方。優(yōu)點(diǎn)缺點(diǎn),設(shè)計(jì)方式多樣1. VHDL語(yǔ)言有時(shí)不能準(zhǔn)確地描述硬件電路3. VHDL語(yǔ)言具有強(qiáng)大的移植能力2. VHDL語(yǔ)言的系統(tǒng)級(jí)抽象描述能力較差4. VHDL語(yǔ)言的設(shè)計(jì)描述與器件無(wú)關(guān)5. VHDL語(yǔ)言程序易于共享和復(fù)用3. VHDL語(yǔ)言不能描述模擬電路圖21 VHDL優(yōu)缺點(diǎn)對(duì)照 VHDL語(yǔ)言的開(kāi)發(fā)流程VHDL語(yǔ)言作為一種標(biāo)準(zhǔn)化的硬件描述語(yǔ)言[3],在對(duì)硬件電路進(jìn)行描述的過(guò)程中應(yīng)該遵循一定的流程。采用VHDL語(yǔ)言進(jìn)行硬件電路設(shè)計(jì)的流程圖如圖2-2所示。以下是基于FPGA的VHDL設(shè)計(jì)的一些經(jīng)驗(yàn)。良好的編程習(xí)慣就是在滿足功能和性能目標(biāo)的前提下,增強(qiáng)代碼的可讀性、可移植性。(2)使用有意義的信號(hào)名、端口名、函數(shù)名和參數(shù)名。對(duì)于超過(guò)28個(gè)字符的信號(hào)名,有些EDA工具不能夠識(shí)別,再者太長(zhǎng)的信號(hào)名也不容易記憶。(4)對(duì)于時(shí)鐘信號(hào)使用clk作為信號(hào)名,如果設(shè)計(jì)中存在多個(gè)時(shí)鐘,使用clk作為時(shí)鐘信號(hào)的前綴,如clkclkclk_interace等。(6)對(duì)于低電平有效的信號(hào),應(yīng)該以一個(gè)下劃線跟一個(gè)小字母b或n表示(a2b_req_n、a2b_req_b)。(7)對(duì)于復(fù)位信號(hào)使用rst作為信號(hào)名,如果復(fù)位信號(hào)是低電平有效,建議使用rst_n。如*_r表示寄存器輸出,*_a表示異步信號(hào)等等一些習(xí)慣的約定。文件頭一般包含如下的內(nèi)容:文件名,設(shè)計(jì)者,模塊名,模塊的實(shí)現(xiàn)功能概述,使用的仿真軟件以及軟件運(yùn)行的平臺(tái),使用的綜合工具以及工具運(yùn)行的平臺(tái),文件創(chuàng)建時(shí)間,文件修改時(shí)間。注釋?xiě)?yīng)在代碼附近,要求簡(jiǎn)明扼要,只要足夠說(shuō)明設(shè)計(jì)意圖即可,避免過(guò)于復(fù)雜。(12)建議采用縮進(jìn)提高續(xù)行和嵌套語(yǔ)句的可讀性。例如:將輸出端口命名為out,就和VHDL的保留字OUT相同,編譯時(shí)就會(huì)報(bào)錯(cuò)。(15)在例化模塊時(shí),使用名字顯式映射而不要采用位置相關(guān)的映射,這樣可以提高代碼的可讀性和避免編譯連線錯(cuò)誤。(17)盡可能使用循環(huán)語(yǔ)句和寄存器組來(lái)提高源代碼的可讀性,這樣可以有效地減少代碼行數(shù)。(19)在設(shè)計(jì)中不要直接使用數(shù)字,作為例外,可以使用0和1。(21)在設(shè)計(jì)中避免實(shí)例化具體的門(mén)級(jí)電路。Altera公司的Quartus II軟件提供完整的多平臺(tái)設(shè)計(jì)環(huán)境,能夠直接滿足特定的設(shè)計(jì)需要,為FPGA/CPLD開(kāi)發(fā)提供全面的設(shè)計(jì)環(huán)境。Quartus II軟件含有FPGA和CPLD設(shè)計(jì)所有階段的解決方案。Quartus II的前身——MAX+plus II,雖然是一個(gè)非常成功的開(kāi)發(fā)環(huán)境,但是隨著集成電路的發(fā)展,規(guī)模的飛速擴(kuò)大,MAX+plus II這種基于底層的開(kāi)發(fā)環(huán)境越來(lái)越不能滿足現(xiàn)在對(duì)系統(tǒng)級(jí)開(kāi)發(fā)的要求,隨著用戶要求的不斷提高,Altera公司終于發(fā)布了它的替代產(chǎn)品——Quartus II。⑵時(shí)序估算迅速提高時(shí)序性能。⑷I/O引腳分配和確認(rèn)。⑹OS支持。 Quartus II的設(shè)計(jì)流程用戶首先對(duì)所做項(xiàng)目進(jìn)行設(shè)計(jì)[10],明確設(shè)計(jì)目的、設(shè)計(jì)要求。輸入完成后進(jìn)行編譯,若編譯過(guò)程中發(fā)現(xiàn)錯(cuò)誤,則應(yīng)檢查設(shè)計(jì)輸入以修改錯(cuò)誤,直至沒(méi)有錯(cuò)誤產(chǎn)生。最后將設(shè)計(jì)配置到目標(biāo)器件中進(jìn)行硬件驗(yàn)證與測(cè)試。圖23 Quartus II的設(shè)計(jì)流程圖 Quartus II設(shè)計(jì)方法在建立新設(shè)計(jì)時(shí),應(yīng)重視和考慮Quartus II軟件提供的設(shè)計(jì)方法,包括自上而下或自下而上的漸進(jìn)式設(shè)計(jì)流程,以及基于模塊的設(shè)計(jì)流程。自上而下與自下而上的設(shè)計(jì)方法比較:Quartus II軟件同時(shí)支持自上而下和自下而上的編譯過(guò)程。不同的設(shè)計(jì)人員或者IP提供者設(shè)計(jì)并驗(yàn)證設(shè)計(jì)的不同部分,工程負(fù)責(zé)人在設(shè)計(jì)實(shí)體完成后將其加入到工程中。在設(shè)計(jì)中完成的部分得到適配結(jié)果,當(dāng)設(shè)計(jì)的其他部分改動(dòng)時(shí),其性能保持不變。漸進(jìn)式編譯提供導(dǎo)出和導(dǎo)入功能來(lái)實(shí)現(xiàn)這種設(shè)計(jì)方法。然后,工程負(fù)責(zé)人將每一個(gè)設(shè)計(jì)模塊作為設(shè)計(jì)分區(qū)導(dǎo)入到頂層工程中。在完整的漸進(jìn)式編譯流程中,如果以前出于保持性能不變的原因而采用自下而上的方法,那么現(xiàn)在可以采用自上而下方法來(lái)達(dá)到同樣的目的。第一,自上而下流程要比對(duì)應(yīng)的自下而上流程執(zhí)行起來(lái)簡(jiǎn)單一些。 3 函數(shù)信號(hào)發(fā)生器的FPGA設(shè)計(jì) 三角波信號(hào)發(fā)生器的設(shè)計(jì) 三角波的VHDL描述:設(shè)定一個(gè)變量n,定義其范圍為“00000111”到“11111000”,每到一個(gè)脈沖,分別對(duì)它進(jìn)行+8或8,然后把改變后的n送到輸出y,生成了三角波信號(hào)。(三角波) LIBRARY IEEE。USE 。 y:OUT std_logic_vector(7 DOWNTO 0))。ARCHITECTURE rtl OF delta ISBEGIN PROCESS(clk,clr) VARIABLE n:std_logic_vector(7 DOWNTO 0)。 BEGIN IF clr=39。THEN n:=00000000。EVENT AND clk=39。THEN IF f=39。THEN IF n=11111000THEN n:=11111111。139。 END IF。 f:=39。 ELSE n:=n8。 END IF。 y=n。END rtl。三角波信號(hào)發(fā)生器的RTL圖如圖3-1所示。當(dāng)給輸入信號(hào)clr賦于1值時(shí),檢測(cè)到時(shí)鐘clk的上升沿。正弦波產(chǎn)生電路的VHDL描述如下。USE 。USE 。 d:OUT std_logic_vector(7 DOWNTO 0))。ARCHITECTURE rtl OF sin ISBEGIN PROCESS(clk,clr) VARIABLE tmp:integer RANGE 0 TO 63。039。 ELSIF clk39。139。 ELSE tmp:=tmp+1。 CASE tmp IS WHEN 00=d=conv_std_logic_ve
點(diǎn)擊復(fù)制文檔內(nèi)容
電大資料相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1