版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、西華大學(xué)課程設(shè)計(jì)說明書第1頁1、刖百2、eda技術(shù)的介紹2.1什么是eda2.2 eda技術(shù)的發(fā)展2.3 eda技術(shù)的基本設(shè)計(jì)方法2.3.1電路級(jí)設(shè)計(jì)2.3.2系統(tǒng)級(jí)設(shè)計(jì)3、cpldf口 fpga勺主要芯片介紹.3.1 cpld 介紹3.2 fpga 介紹4、設(shè)計(jì)內(nèi)容介紹4.1 fifo的介紹4.2同步fifo的介紹.105、方案比較125.1原理圖設(shè)計(jì).125.2 verilog hdl 的設(shè)計(jì)126、編程實(shí)現(xiàn)136.1原理圖設(shè)計(jì).136.2 verilog hdl 的設(shè)計(jì)程序如下所示:137、仿真167.1原理圖輸入.167.2 verilog hdl 語言輸入168、fpgaft小系統(tǒng)電
2、路188.1 fpga設(shè)計(jì)的總框圖188.2 fpga與單片機(jī)相連接的系統(tǒng)198.3 fpga的下載以及配置209、調(diào)試22西華大學(xué)課程設(shè)計(jì)說明書2310、總結(jié)11、參考資料:24.附錄第#頁1、西華大學(xué)課程設(shè)計(jì)說明書10、/ 、.刖b第3頁現(xiàn)代eda技術(shù),與原來的大規(guī)??删幊踢壿嬈骷膽?yīng)用相比較,它的應(yīng)用范圍已 經(jīng)遠(yuǎn)遠(yuǎn)超過了數(shù)字邏輯器件的應(yīng)用范圍。通過運(yùn)用verilog hdl語言編程,軟件 quartus ii 6.0,逐漸掌握eda的用法,熟練步驟,對(duì)以后的學(xué)習(xí)與工作做了很好的鋪墊;剖析整個(gè)系統(tǒng)運(yùn)行的步驟與工作原理, 從而完成對(duì)整個(gè)設(shè)計(jì)的理論分析任務(wù),以次來指導(dǎo)其它設(shè)計(jì)過程;硬件電路設(shè)計(jì)
3、主要是設(shè)計(jì)相關(guān)模塊的設(shè)計(jì)思想的可視化,是相關(guān)模塊的電路圖的匯總和其相關(guān)仿真波形的集 錦,該部分條理清晰,思路明確,從中我們可以清晰地看到該設(shè)計(jì)方案的具體模塊和整 個(gè)設(shè)計(jì)的原理結(jié)構(gòu)實(shí)圖;程序設(shè)計(jì)這一部分主要闡述該設(shè)計(jì)的設(shè)計(jì)方法與設(shè)計(jì)思想,進(jìn)一步從軟件設(shè)計(jì)上揭示設(shè)計(jì)構(gòu)思,主要包含了整個(gè)設(shè)計(jì)所用到的模塊的硬件描述語言的 設(shè)計(jì),通過這一部分的學(xué)習(xí),對(duì) verilog hdl的設(shè)計(jì)方法有了進(jìn)一步的學(xué)習(xí),對(duì)其相關(guān) 語言設(shè)計(jì)規(guī)范有了更深層次的掌握,能夠更加熟練的做一些編程設(shè)計(jì)。最后通過設(shè)計(jì)了解到基于pld的edak術(shù)的發(fā)展和應(yīng)用領(lǐng)域不斷的擴(kuò)大與深入 eda 技術(shù)在電子信息、通信、自動(dòng)控制及計(jì)算機(jī)應(yīng)用等領(lǐng)域的
4、重要性日益突出。隨著技術(shù)市 場(chǎng)與人才市場(chǎng)對(duì)edaft術(shù)的需求不斷提高,產(chǎn)品的市場(chǎng)效率和技術(shù)要求也將會(huì)影響到教 學(xué)與科研領(lǐng)域,因此這一次課程設(shè)計(jì)的開展很好的把握住了教學(xué)的改革方向,更好的鍛煉了學(xué)生理論聯(lián)系實(shí)踐的能力。此次課程設(shè)計(jì)對(duì)我在edak術(shù)的學(xué)習(xí)中有著很重要的影響,通過實(shí)驗(yàn)我們非常充分 運(yùn)運(yùn)用了實(shí)驗(yàn)室的器材,發(fā)揮團(tuán)隊(duì)精神,不畏困難,根據(jù)自己所學(xué)的edawr,認(rèn)真的分析了老師要求的設(shè)計(jì)任務(wù),明確了設(shè)計(jì)思路,我們齊心努力下成功的完成了先進(jìn)先出 同步fifo的設(shè)計(jì),對(duì)edag術(shù)的運(yùn)用有了深一層的認(rèn)識(shí),對(duì) verilog hdl程序語言設(shè) 計(jì)有了更深的理解。西華大學(xué)課程設(shè)計(jì)說明書102、eda技術(shù)的
5、介紹2.1 什么是eda20世紀(jì)90年代,國(guó)際上電子和計(jì)算機(jī)技術(shù)較先進(jìn)的國(guó)家, 一直在積極探索新的電 子電路設(shè)計(jì)方法,并在設(shè)計(jì)方法、工具等方面進(jìn)行了徹底的變革,取得了巨大成功。在 電子技術(shù)設(shè)計(jì)領(lǐng)域,可編程邏輯器件(如 cpld fpga的應(yīng)用,已得到廣泛的普及,這 些器件為數(shù)字系統(tǒng)的設(shè)計(jì)帶來了極大的靈活性。 這些器件可以通過軟件編程而對(duì)其硬件 結(jié)構(gòu)和工作方式進(jìn)行重構(gòu),從而使得硬件的設(shè)計(jì)可以如同軟件設(shè)計(jì)那樣方便快捷。這一 切極大地改變了傳統(tǒng)的數(shù)字系統(tǒng)設(shè)計(jì)方法、設(shè)計(jì)過程和設(shè)計(jì)觀念,促進(jìn)了ed儆術(shù)的迅速發(fā)展。eda1電子設(shè)計(jì)自動(dòng)化(electronic design automation )的縮寫,
6、在20世紀(jì)90 年代初從計(jì)算機(jī)輔助設(shè)計(jì)(cad、計(jì)算機(jī)輔助制造(cam、計(jì)算機(jī)輔助測(cè)試(cat 和計(jì)算機(jī)輔助工程(cae的概念發(fā)展而來的。eda技術(shù)就是以計(jì)算機(jī)為工具,設(shè)計(jì)者在 edaa件平臺(tái)上,用硬件描述語言 hdl完成設(shè)計(jì)文件,然后由計(jì)算機(jī)自動(dòng)地完成邏輯編 譯、化簡(jiǎn)、分割、綜合、優(yōu)化、布局、布線和仿真,直至對(duì)于特定目標(biāo)芯片的適配編譯、 邏輯映射和編程下載等工作。edak術(shù)的出現(xiàn),極大地提高了電路設(shè)計(jì)的效率和可 *性, 減輕了設(shè)計(jì)者的勞動(dòng)強(qiáng)度。2.2 eda技術(shù)的發(fā)展回顧近30年電子設(shè)計(jì)技術(shù)的發(fā)展歷程,可將 edak術(shù)分為三個(gè)階段。- 七十 年代為cadt段,這一階段人們開始用計(jì)算機(jī)輔助進(jìn)行
7、ic版圖編輯和pcbw同布 線,取代了手工操作,產(chǎn)生了計(jì)算機(jī)輔助設(shè)計(jì)的概念。- 八十年代為caeb段,與cad相比,除了純粹的圖形繪制功能外,又增加了電路功能設(shè)計(jì)和結(jié)構(gòu)設(shè)計(jì),并且通過電氣連接網(wǎng)絡(luò)表將兩者結(jié)合在一起,以實(shí)現(xiàn)工程設(shè)計(jì),這就是計(jì)算機(jī)輔助工程的概念。cae的主要功能是:原理圖輸入,邏輯仿真,電路分析,自動(dòng)布局布線,pcb后分 析。九十年代為esd/wcad/ca豉術(shù)取得了巨大的成功,但并沒有把人從繁重的 設(shè)計(jì)工作中徹底解放出來。在整個(gè)設(shè)計(jì)過程中,自動(dòng)化和智能化程度還不高,各 種edaa件界面千差萬別,學(xué)習(xí)使用困難,并且互不兼容,直接影響到設(shè)計(jì)環(huán)節(jié)間的銜接。基于以上不足,人們開 始 追求
8、貫徹整個(gè)設(shè)計(jì)過程的自動(dòng)化,這就是 esd/sp電子系統(tǒng)設(shè)計(jì)自動(dòng)化。2.3 eda技術(shù)的基本設(shè)計(jì)方法edaj術(shù)的每一次進(jìn)步,都引起了設(shè)計(jì)層次上的一個(gè)飛躍。物理級(jí)設(shè)計(jì)主要指 ic 版圖設(shè)計(jì),一般由半導(dǎo)體廠家完成,對(duì)電子工程師并沒有太大的 意義,因此本文重點(diǎn) 介紹電路級(jí)設(shè)計(jì)和系統(tǒng)級(jí)設(shè)計(jì)。2.3.1 電路級(jí)設(shè)計(jì)電子工程師接受系統(tǒng)設(shè)計(jì)任務(wù)后,首先確定設(shè)計(jì)方案,同時(shí)要選擇能實(shí)現(xiàn)該方案 的合適 元器件,然后根據(jù)具體的元器件設(shè)計(jì)電路原理圖。接著進(jìn)行第一次仿真,包括 數(shù)字電路的邏輯模擬、故障分析、模擬電路的交直流分析、瞬態(tài)分析。系統(tǒng)在進(jìn)行仿 真時(shí),必須要有元件模型庫(kù)的支 持,計(jì)算機(jī)上模擬的輸入輸出波形代替了實(shí)際
9、電路調(diào) 試中的信號(hào)源和示波器。這一次仿真主要是檢驗(yàn)設(shè)計(jì)方案在功能方面的正確性。仿真通過后,根據(jù)原理圖產(chǎn)生的電氣連接網(wǎng)絡(luò)表進(jìn)行pcbk的自動(dòng)布局布線。在制作 pcb板之前還可以進(jìn)行后分析,包括熱分析、噪聲及竄擾分析、電磁兼容分析、可靠性分析 等,并 且可以將分析后的結(jié)果參數(shù)反標(biāo)回電路圖,進(jìn)行第二次仿真,也稱為后仿真, 這一次仿真主要是檢 驗(yàn)pcbk在實(shí)際工作環(huán)境中的可行tto由此可見,電路級(jí)的eda技術(shù)使電子工程師在實(shí)際的電子系統(tǒng)產(chǎn)生之前,就可以全面地了解系統(tǒng)的功能特性和物理特性,從而將開發(fā)過程中出現(xiàn)的缺陷消滅在設(shè)計(jì)階段,不僅縮短了開發(fā)時(shí)間,也降低了開發(fā)成本。2.3.2系統(tǒng)級(jí)設(shè)計(jì)西華大學(xué)課程設(shè)計(jì)
10、說明書10進(jìn)入90年代以來,電子信息類產(chǎn)品的開發(fā)出現(xiàn)了兩個(gè)明顯的特點(diǎn):一是產(chǎn)品的復(fù) 雜程 度加深,二是產(chǎn)品的上市時(shí)限緊迫。然而電路級(jí)設(shè)計(jì)本質(zhì)上是基于門級(jí)描述的單 層次設(shè)計(jì),設(shè)計(jì)的 所有工作(包括設(shè)計(jì)輸入,仿真和分析,設(shè)計(jì)修改等)都是在基本 邏輯門這一層次上進(jìn)行的,顯然 這種設(shè)計(jì)方法不能適應(yīng)新的形勢(shì),為此引入了一種高 層次的電子設(shè)計(jì)方法,也稱為系統(tǒng)級(jí)的設(shè)計(jì)方法。高層次設(shè)計(jì)是一種“概念驅(qū)動(dòng)式”設(shè)計(jì),設(shè)計(jì)人員無須通過門級(jí)原理圖描述電路,而是針對(duì)設(shè)計(jì)目標(biāo)進(jìn)行功能描述,由于擺脫了電路細(xì)節(jié)的束縛,設(shè)計(jì)人員可以把精力集中于創(chuàng)造性的概念構(gòu)思與方案上,一且這些概念構(gòu)思以高層次描述的形式輸入計(jì)算機(jī)后,eda 系統(tǒng)
11、就能以規(guī)則驅(qū)動(dòng)的方式自 動(dòng)完成整個(gè)設(shè)計(jì)。這樣,新的概念得以迅速有效的成為產(chǎn)品,大大縮短了產(chǎn)品的研制周 期。不僅如此,高層次設(shè)計(jì)只是定義系統(tǒng)的行為特性,可以不涉及實(shí)現(xiàn)工藝,在廠家綜 合庫(kù)的支持下,利用綜合優(yōu)化工具可以將高層次描述轉(zhuǎn)換成針對(duì)某種工藝優(yōu)化的網(wǎng)表, 工藝轉(zhuǎn)化變得輕松容易。高層次設(shè)計(jì)步驟如下:第一步:- 按照自頂向下”的設(shè)計(jì)方法進(jìn)行系統(tǒng)劃分。第二步:- 輸入vhdl弋碼,這是高層次設(shè)計(jì)中最為普遍的輸入方式。止匕外,還可以采用圖形輸入方式(框圖,狀態(tài)圖等),這種輸入方式具有直觀、容易理解的優(yōu)點(diǎn)。第三步:- 將以上的設(shè)計(jì)輸入編譯成標(biāo)準(zhǔn)的 vhdlfc件對(duì)于大型設(shè)計(jì),還要進(jìn)行代碼級(jí)的功能仿 真
12、,主要是檢驗(yàn)系統(tǒng)功能設(shè)計(jì)的正確性,因 為對(duì)于大型設(shè)計(jì),綜合、適配要花費(fèi)數(shù)小時(shí),在綜合前對(duì)源代碼仿真,就可以大大減少設(shè)計(jì)重復(fù)的次數(shù)和時(shí)間,一般情況下,可略去這一仿真步驟。第四步:- 利用綜合器對(duì)vhdl代碼進(jìn)行綜合優(yōu)化處理,生成門級(jí)描述的網(wǎng)表文件 ,這是將高層次 描述 轉(zhuǎn)化為硬件電路的關(guān)鍵步驟。綜合優(yōu)化是針對(duì)asic芯片供應(yīng)商的某一產(chǎn)品系列進(jìn)行的, 所以綜合的過程要在相應(yīng)的 廠家綜合庫(kù)支持下才能完成。綜合后,可利用產(chǎn)生的網(wǎng)表 文件進(jìn)行適配前的時(shí)序仿真,仿真過程不 涉及具體器件的硬件特性,較為粗略。一般 設(shè)計(jì),這一仿真步驟也可略去。第五步:- 利用適配器將綜合后的網(wǎng)表文件針對(duì)某 一具體的目標(biāo)器件進(jìn)
13、行邏輯映射操作,包括底層器件配置、邏輯分割、邏輯優(yōu)化和布局布線。適配完成后,產(chǎn)生多項(xiàng)設(shè)計(jì)結(jié)果:適配報(bào)告,包括芯片內(nèi)部資源利用情況,設(shè)計(jì)的布爾方程描述情況等;適配后的仿真模型;器件編程文件。根據(jù)適配后的第5頁up西華大學(xué)課程設(shè)計(jì)說明書仿真模型,可以進(jìn)行適配后wmjj,因?yàn)橐呀?jīng)得到器件的實(shí)際硬件特性(如時(shí)延特 性),所以仿真結(jié)果能比較精確地預(yù)期未來芯片的實(shí)際性能。如果仿真結(jié)果達(dá)不到設(shè)計(jì) 要求,就 需要修改vhdlm代碼或選擇不同速度品質(zhì)的器件,直至滿足設(shè)計(jì)要求。第六 步:- 將適配器產(chǎn)生的器件編程文件通過編程器或下載電纜載入到目標(biāo)芯片fpga或cpldt。如果是大批量產(chǎn)品開發(fā),通過更換相應(yīng)的廠家綜
14、合庫(kù),可以很容易轉(zhuǎn)由asic 形式實(shí)現(xiàn)。第7頁西華大學(xué)課程設(shè)計(jì)說明書103、cpl于口 fpga勺主要芯片介紹3.1 cpld 介紹cpl皿complex pld的簡(jiǎn)稱,顧名思義,具是一種較 pld為復(fù)雜的邏輯元件。cp ld是一種整合性較高的邏輯元件。由于具有高整合性的特點(diǎn),故具有性能提升,可靠度 增加,pcb面積減少及成本下降等優(yōu)點(diǎn)。cplde件,基本上是由許多個(gè)邏輯方塊(logi c blocks )所組合而成的。而各個(gè)邏輯方塊均相似于一個(gè)簡(jiǎn)單的pldte件(如22v10)。邏輯方塊間的相互關(guān)系則由可變成的連線架構(gòu),將整個(gè)邏輯電路合成而成。常見的cpld元件有 altera 公司的 ma
15、x500q max7000以及 max ii 系列。cypress 的 max340及 f lash370系列等,一般來說cplde件的可邏輯閘數(shù)(gate count) 約在10007000 gate 之間。 這里主要介紹max ii器件maxii器件系列是一種非易失性、即用性可編程邏輯系列,它采用了一種突破性的 新型cpl冰構(gòu)。這種新型架不的成本是原先 max器件的一半,功耗是其十分之一,密度 是其四倍,性能卻是其兩倍。這些超級(jí)性能是在提供了所有 max!列cpld先進(jìn)特性的架 構(gòu)的基礎(chǔ)上,根據(jù)altera專家們的意見而重新采用基于查找表的架構(gòu)而得到的。這種基于查找表的架構(gòu)在最小的i/o焊
16、盤約束的空間內(nèi)提供了最多的邏輯容量。因此 ,max ii cpl皿所有cplds列產(chǎn)品中成本最低、功耗最小和密度最高的器件?;诔杀緝?yōu)化的0.18微米6層金屬flash工藝,max ii器件系列具有cpld9t有的 優(yōu)點(diǎn),例如非易失性、即用性、易用性和快速傳輸延時(shí)性。以滿足通用性,低密度邏輯應(yīng)用為目標(biāo),max ii器件成為接口橋接、i/o擴(kuò)展、器件配置和上電順序等應(yīng)用最理想的 解決方案。除這些典型的 cpld應(yīng)用之外,max ii器件還能滿足大量從前在 fpga assp 和標(biāo)準(zhǔn)邏輯器件中實(shí)現(xiàn)的低密度可編程邏輯需求。max ii器件提供的密度范圍從 240到2210個(gè)邏輯單元(le),最多達(dá)2
17、72個(gè)用戶i/o 管腳。3.2 fpga 介紹西華大學(xué)課程設(shè)計(jì)說明書10fpga1英文field programmable gate array的縮寫,即現(xiàn)場(chǎng)可編程門陣列,它 是在pal gal epld?可編程器件的基礎(chǔ)上進(jìn)一步發(fā)展的產(chǎn)物。它是作為專用集成電 路(asic)領(lǐng)域中的一種半定制電路而出現(xiàn)的,既解決了定制電路的不足,又克服了原 有可編程器件門電路數(shù)有限的缺點(diǎn)。fpg麻用了邏輯單元陣列l(wèi)ca(logic cell array) 這樣一個(gè)新概念,內(nèi)部包括可配置邏輯模塊clb(configurable logic block )、輸出輸入模塊 iob (input output blo
18、ck )和內(nèi)部連線(interconnect )三個(gè)部分。fpgas5 片是小批量系統(tǒng)提高系統(tǒng)集成度、可靠性的最佳選擇之一。目前fpga勺品種很多,有xilinx公司的virtex系列、ti公司的tpc系列、alter於司的stratix 系列等。這里 主要介紹cyclone ii系列器件。cyclone ii系列器件是altera 低成本cyclone系列的第二代產(chǎn)品,cyclone ii fpga的成本比第一代cyclone器件低30%邏輯容量大3倍多。cyclone ii器件采用 tsmc經(jīng)驗(yàn)證的90nm低k絕緣材料工藝技術(shù),是業(yè)界成本最低的 fpga cyclone ii器 件容量有4
19、60868416個(gè)邏輯單元,還具有新的增強(qiáng)特性,包括多達(dá) 1.1mbit的嵌入存 儲(chǔ)器、多達(dá)150個(gè)嵌入18x18乘法器、鎖相環(huán)、支持外部存儲(chǔ)器接口及差分和單端i/o 標(biāo)準(zhǔn)。cyclone ii器件系列是采用tsmc勺1.2v、90nm低k絕緣材料工藝。cyclone ii 器件系列是多種不同市場(chǎng)上大批量應(yīng)用最優(yōu)的低成本方案,包括消費(fèi)電子、電信和無線、計(jì)算機(jī)外設(shè)、工業(yè)和汽車。cyclone ii器件包含了許多新的增強(qiáng)特性,如嵌入存儲(chǔ)器、 嵌入乘法器、pll和低成本的封裝,這些都為諸如視頻顯示、數(shù)字電視、機(jī)頂盒、dvd播 放器、dsl調(diào)制解調(diào)器、家用網(wǎng)關(guān)和中低端路由器等批量應(yīng)用進(jìn)行了優(yōu)化。cyc
20、lone ii系列包括6種器件,容量從460868416個(gè)邏輯單元。cyclone ii器件低成本的封裝支 持垂直移植,這些封裝包括扁平四方封裝(tqfp、速率四方封裝(pqfp和fineline bga 封裝。西華大學(xué)課程設(shè)計(jì)說明書;d, c, b, a ; ; ; | 1| 2 |3 |4 |5| 6| 7| 8|兩邊的箭頭表示數(shù)據(jù)移動(dòng)的方向。a, b, c, d表示被處理的數(shù)據(jù)。1, 2, 3, 4,.8表示fifo的8個(gè)存儲(chǔ)單元。表明這個(gè)fifo中共有8個(gè)寄存器單元。每個(gè)寄存器單元 可以存儲(chǔ)一個(gè)數(shù)據(jù)。所以寄存器的單元越多,fifo的存儲(chǔ)能力就越強(qiáng)。每個(gè)寄存器單元 的位寬與fifo的輸入
21、和輸出端的位寬是一致的。如果要處理的數(shù)據(jù)a, b, c, d是16位的數(shù)據(jù),那么輸入輸出端及每個(gè)寄存器單元的位寬就都是16位。這個(gè)fifo可以命名為8x16fifq它在每一個(gè)時(shí)鐘上升沿到來時(shí),數(shù)據(jù)向右移動(dòng)一個(gè)存儲(chǔ)單元。這樣在時(shí)鐘 的控制下,數(shù)據(jù)從左到右通過存儲(chǔ)單元。fifo通常是雙端口的存儲(chǔ)器,其中一個(gè)端口用于寫入數(shù)據(jù),而另一個(gè)端口用于讀 出數(shù)據(jù)??梢酝瑫r(shí)對(duì)存儲(chǔ)器字存儲(chǔ)單元進(jìn)行寫入和讀出操作。 它的數(shù)據(jù)吞吐率是普通ram 的兩倍。fifo型的存儲(chǔ)器不需要由地址來存取數(shù)據(jù)。需要由另外的信號(hào)線(或標(biāo)志)來指 明存儲(chǔ)器的內(nèi)容狀態(tài)。現(xiàn)在的fifo存儲(chǔ)器采用sraw元來實(shí)現(xiàn)。它是基于帶兩個(gè)指針的環(huán)行的
22、fifo結(jié) 構(gòu)的。要寫入的數(shù)據(jù)的存儲(chǔ)地址放在寫指針中,而fifo結(jié)構(gòu)中要讀出的第一個(gè)數(shù)據(jù)的地址放在讀指針中。在復(fù)位后,兩個(gè)指針都指向存儲(chǔ)器的同一個(gè)字單元。每次寫操作后,第11頁西華大學(xué)課程設(shè)計(jì)說明書寫指針指向下一個(gè)存儲(chǔ)單元啊虬口的讀取操作,會(huì)把讀指針指向下一個(gè)要讀取的數(shù) 據(jù)字,讀指針就不斷地跟隨寫指針,當(dāng)讀指針跟上寫指針后,fifo的結(jié)構(gòu)里面為空。如果寫指針追上讀指針,fifo結(jié)構(gòu)里面的數(shù)據(jù)是滿載的。如果從硬件上來實(shí)現(xiàn)循環(huán)存儲(chǔ)器, 可以用雙端口的sra味存取數(shù)據(jù)。指針具用二進(jìn)制計(jì)數(shù)器的特征,它用于產(chǎn)生sram勺存儲(chǔ)器地址。4.2 同步fifo的介紹同步fifo存儲(chǔ)器的基本結(jié)構(gòu)包括存儲(chǔ)器陣列,標(biāo)
23、志邏輯和擴(kuò)展邏輯。存儲(chǔ)器陣列 由雙端口存儲(chǔ)單元構(gòu)成。允許同時(shí)對(duì)存儲(chǔ)單元的兩個(gè)端口(讀端口和寫端口)進(jìn)行存取。標(biāo)志邏輯用于比較兩個(gè)地址指針的值,如果兩個(gè)值的比較結(jié)果為零,fifo存儲(chǔ)器為全空, 同時(shí)全空標(biāo)志為真。如果兩個(gè)值的比較結(jié)果等于存儲(chǔ)器的容量深度,說明存儲(chǔ)器全滿, 同時(shí)全滿標(biāo)志為真。還可以設(shè)置其他一些標(biāo)志,比如半滿,可編程接近滿,可編程接近 空等。它們也通過對(duì)偏移量寄存器中的編程值和存儲(chǔ)器陣列中的字的數(shù)量進(jìn)行比較來生 成。同步fifo內(nèi)部通過控制電路和ramb實(shí)現(xiàn),控制電路主要包括寫指針管理電路, 讀指針管理電路,以及fifo狀態(tài)判斷電路,對(duì)于同步fifo來講,讀和寫的指針管理電 路實(shí)際上
24、就是二進(jìn)制計(jì)數(shù)器。設(shè)計(jì)fifo電路,最重要的是對(duì)fifo狀態(tài)進(jìn)行判斷。假設(shè)寬度任意而深度為8的f ifo,當(dāng)讀指針read_pointer和寫指針write_pointer 的值一樣的時(shí)候,很顯然,這時(shí) fifo的狀態(tài)為空。比較麻煩的是對(duì)fifo是否已經(jīng)滿的狀態(tài)的判斷,因?yàn)榇嬖趦煞N情況, 第種情況時(shí)寫指針 write_pointer 比讀指針 read_pointer 大,比如 writer_pointer =7 而read_pointer = 0 , 還有種情況時(shí)寫指針 writer_pointer比讀指針 read_pointer小,比如writer_pointer = 2 而read_p
25、ointer = 3 。由于讀寫電路在循環(huán)的讀寫 ram所以在上面白兩種情況下fifo實(shí)際上都已經(jīng)滿了。那么如何對(duì)讀寫指針的判斷比 較容易的得出fifo已經(jīng)滿了,同時(shí)這樣的判斷電路還要容易參數(shù)化?第一種情況下,write_pointer - read_pointer = 7,實(shí)際上就是fifo深度減一,第二種情況下,(write_pointer + 8)- read_pointer = 7, 也是 fifo深度減一。第#頁西華大學(xué)課程設(shè)計(jì)說明書 卜面的框圖1主要描述同步fifo的內(nèi)部結(jié)構(gòu)同步fifo內(nèi)部緒構(gòu)圖.圖1 fifo的內(nèi)部結(jié)構(gòu)第17頁西華大學(xué)課程設(shè)計(jì)說明書105、方案比較在fpgaj計(jì)
26、中,有兩種方式,一種是原理圖式圖形設(shè)計(jì),另一種是文本語言輸入。 使用原理圖輸入對(duì)電路進(jìn)行描述主要適用于小規(guī)模電路的設(shè)計(jì), 因?yàn)樾∫?guī)模的電路布線 簡(jiǎn)單;而verilog hdl輸入適合大規(guī)模的電路設(shè)計(jì),并且有很好的可移植性,可讀性強(qiáng), 易于交流的特點(diǎn)。5.1 原理圖設(shè)計(jì)在quartus6.0上,建立設(shè)計(jì)工程,設(shè)定工程文件,選擇目標(biāo)文件,設(shè)定目標(biāo)器件 的參數(shù),打開原理圖編輯窗口,在上面放置所選的器件,再連線、編譯,仿真,觀察仿 真波形。在本設(shè)計(jì)中,同樣也可以,只不過在選擇器件時(shí)要設(shè)置輸入數(shù)據(jù)的寬度和fifo的深度5.2 verilog hdl 的設(shè)計(jì)在quartus6.0上的文本編輯框上輸入設(shè)計(jì)的
27、程序,再編譯,若成功,打開波形編 輯器進(jìn)行仿真,若不成功,則修改程序直到編譯成功為止,再進(jìn)行仿真,最后觀察波形 是否與所要達(dá)到的目的相同。使用原理圖輸入對(duì)電路進(jìn)行描述主要適用于小規(guī)模電路的設(shè)計(jì),因?yàn)樾∫?guī)模的電 路布線簡(jiǎn)單;而verilog hdl輸入適合大規(guī)模的電路設(shè)計(jì),并且有很好的可移植性,可 讀性強(qiáng),易于交流的特點(diǎn)。西華大學(xué)課程設(shè)計(jì)說明書 clockinst1 bit x s words圖 2 1bitx8words fifo6.2 verilog hdl 的設(shè)計(jì) 程序如下所示:module myfifo(clk,din,dout,re,wf,red,we,ra,wa);input clk
28、,we,red,din;output dout,re,wf;output 3:0wa,rareg 3:0wa,ra;reg a,b,c,d,e,f,g,h;reg dout,re,wf;always (posedge clk)beginif (we&!wf=1)wa=wa+1;if (red&!re=1)ra=ra+1;西華大學(xué)課程設(shè)計(jì)說明書10always (posedge clk)beginif (wa3:0=ra3:0)re=1;elsere=0;if (wa3!=ra3)&(wa2:0=ra2:0)wf=1;elsewf=0;endalways (posedge clk)if (we&
29、!wf)case (wa2:0)3b000:a=din;3b001: b=din;3b010: c=din;3b011: d=din;3b100: e=din;3b101: f=din;3b110:g=din;西華大學(xué)課程設(shè)計(jì)說明書103b111:h=din;endcasealways (posedge clk)if (red&!re)case (ra2:0)3b000:dout=a;3b001:dout=b;3b010:dout=c;3b011:dout=d;3b100:dout=e;3b101:dout=f;3b110: dout=g;3bill:dout=h;endcaseendmodu
30、le西華大學(xué)課程設(shè)計(jì)說明書7、仿真7.1原理圖輸入10仿真波形圖如圖3圖3原理圖輸入的仿真波形圖7.2 verilog hdl 語言輸入仿真波形圖如圖4、5、6第21頁寫滿功能的仿真波形圖simulati on rnod: timingmaster time bar;o p$“,pointei;83,b5 r)$interval;s3.05 rsstart;圖5讀空功能的仿真波形圖nil吐。口 node: tin】穌lastertnie bar opszlk din 如匕 ra re redy3 v? vf0.0 ns4卜50 0 nsrai曲1402nsinter 時(shí)erd:90.0 m 1
31、鳴 17c.0ns210.0 k 250.0 ks 四o.qns 33d.0miiiiiiiomo既kq 炳r:(wu面丫而,山。k qll;燈而丫100圖6文本輸入的仿真波形圖西華大學(xué)課程設(shè)計(jì)說明書8、fpg渥小系統(tǒng)電路8.1 fpga設(shè)計(jì)的總框圖供電電路單片熱電單片機(jī)復(fù)髓機(jī)單片機(jī)程序下載fpga電源pq上拉電 阻fpga引腳 組)fpg湖10 口引腳四個(gè)獨(dú)立的按鍵和4*4按 鍵單片機(jī)引腳兩個(gè)4位共陽數(shù) 碼管平關(guān) 電開有源品振電路墻lcd顯 示電 路蜂鳴fpga程序下載電路adcjs眸紅外建 口電寤dcis圖7設(shè)計(jì)fpgar小系統(tǒng)的總框圖從上圖7可以看出包括有關(guān)fpga的電源部分,程序下載電
32、路,外部接口,顯示部 分,以及與之相連的單片機(jī)部分(電源部分、單片機(jī)程序下載、單片機(jī)電路)和單片機(jī)、 fpga勺引腳功能等。這樣在做具體設(shè)計(jì)的時(shí)候可以根據(jù)上面的框圖來設(shè)計(jì)具體的電路。第23頁西華大學(xué)課程設(shè)計(jì)說明書108.2 fpga與單片機(jī)相連接的系統(tǒng)圖8 fpga與單片機(jī)相連的電路圖在這個(gè)系統(tǒng)中,fpga1序下載電路和單片機(jī)下載電路相連接, 這樣可以通過軟件能 夠把計(jì)算機(jī)上編寫的程序下載到 fpga5片上,就可以在fpga5片上仿真出來,如圖8。圖9是具體的fpgas序下你nr18 尸 9 r3o 性10b: 30k 10e 10+jv?*口1u7data0pclk|空口 pc80kncoh donedclkdoneccncqnfighcstatushcdatao0hd610ps-load35t9datadclkvcc wcoencacsncs&hdtckdclktdoclkusb/iocohfdoweri的 us 皿。ihtt.dohe/io ncohfiothslocmonstxtusde近/d颼皿ddv毗dcgpg/gclkldataod*dkaijtd&501tadevclrn/iodedkaledfcputi nceod 也也 d od pin
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 超市監(jiān)控系統(tǒng)布線合同
- 地鐵物業(yè)員工招聘合同
- 煤礦車輛駕駛員聘用協(xié)議
- 兒童教育顧問聘用合同
- 通信設(shè)施顧問服務(wù)協(xié)議
- 防溺水幼兒園安全教育
- 圖書館砌墻施工合同
- 天大嵌入式系統(tǒng)課件-0-介紹
- 電工觸電應(yīng)急演練
- 關(guān)于實(shí)習(xí)生的個(gè)人實(shí)習(xí)報(bào)告集錦九篇
- 統(tǒng)編版(2024新版)七年級(jí)上冊(cè)道德與法治第九課第一框《增強(qiáng)安全意識(shí)》教學(xué)設(shè)計(jì)
- 老舊小區(qū)整體改造施工投標(biāo)方案(技術(shù)標(biāo))
- 新湘教版八年級(jí)上數(shù)學(xué)復(fù)習(xí)計(jì)劃
- GB/T 44200-2024建筑垃圾再生骨料生產(chǎn)成套裝備技術(shù)要求
- 幼兒園小班科學(xué)活動(dòng)《小手摸一摸》課件
- 文言文閱讀訓(xùn)練:《通鑒紀(jì)事本末-劉邦起兵》(附答案解析與譯文)
- 食品輻照行業(yè)發(fā)展現(xiàn)狀及潛力分析研究報(bào)告
- 離婚協(xié)議中子女撫養(yǎng)權(quán)的確定
- 全媒體運(yùn)營(yíng)師職業(yè)技能競(jìng)賽題庫(kù)及答案(1-250判斷題)
- 2024場(chǎng)地轉(zhuǎn)租協(xié)議
- 家長(zhǎng)會(huì)課件:小學(xué)數(shù)學(xué)家長(zhǎng)會(huì)課件
評(píng)論
0/150
提交評(píng)論