實(shí)驗(yàn)一 存儲器實(shí)驗(yàn)_第1頁
實(shí)驗(yàn)一 存儲器實(shí)驗(yàn)_第2頁
實(shí)驗(yàn)一 存儲器實(shí)驗(yàn)_第3頁
實(shí)驗(yàn)一 存儲器實(shí)驗(yàn)_第4頁
實(shí)驗(yàn)一 存儲器實(shí)驗(yàn)_第5頁
已閱讀5頁,還剩6頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、實(shí)驗(yàn)一 存儲器實(shí)驗(yàn)1FPGA中LPM_ROM定制與讀出實(shí)驗(yàn)一實(shí)驗(yàn)?zāi)康?、掌握FPGA中l(wèi)pm_ROM的設(shè)置,作為只讀存儲器ROM的工作特性和配置方法。2、用文本編輯器編輯mif文件配置ROM,學(xué)習(xí)將程序代碼以mif格式文件加載于lpm_ROM中;3、在初始化存儲器編輯窗口編輯mif文件配置ROM;4、驗(yàn)證FPGA中mega_lpm_ROM的功能。二實(shí)驗(yàn)原理ALTERA的FPGA中有許多可調(diào)用的LPM (Library Parameterized Modules)參數(shù)化的模塊庫,可構(gòu)成如lpm_rom、lpm_ram_io、lpm_fifo、lpm_ram_dq的存儲器結(jié)構(gòu)。CPU中的重要部件,

2、如RAM、ROM可直接調(diào)用他們構(gòu)成,因此在FPGA中利用嵌入式陣列塊EAB可以構(gòu)成各種結(jié)構(gòu)的存儲器,lpm_ROM是其中的一種。lpm_ROM有5組信號:地址信號address 、數(shù)據(jù)信號q 、時鐘信號inclock、outclock、允許信號memenable,其參數(shù)都是可以設(shè)定的。由于ROM是只讀存儲器,所以它的數(shù)據(jù)口是單向的輸出端口,ROM中的數(shù)據(jù)是在對FPGA現(xiàn)場配置時,通過配置文件一起寫入存儲單元的。圖3-1-1中的lpm_ROM有3組信號:inclk輸入時鐘脈沖;q23.0lpm_ROM的24位數(shù)據(jù)輸出端;a5.0lpm_ROM的6位讀出地址。實(shí)驗(yàn)中主要應(yīng)掌握以下三方面的內(nèi)容: l

3、pm_ROM的參數(shù)設(shè)置; lpm_ROM中數(shù)據(jù)的寫入,即LPM_FILE初始化文件的編寫; lpm_ROM的實(shí)際應(yīng)用,在GW48_CP+實(shí)驗(yàn)臺上的調(diào)試方法。三實(shí)驗(yàn)步驟(1)用圖形編輯,進(jìn)入mega_lpm元件庫,調(diào)用lpm_rom元件,設(shè)置地址總線寬度address和數(shù)據(jù)總線寬度q,分別為6位和24位,并添加輸入輸出引腳,如圖3-1-1設(shè)置和連接。(2)設(shè)置圖3-1-1為工程。(3)在設(shè)置lpm_rom數(shù)據(jù)參數(shù)選擇項(xiàng)lpm_file的對應(yīng)窗口中(圖3-1-2),用鍵盤輸入lpm_ROM配置文件的路徑(rom_a.mif),然后設(shè)置在系統(tǒng)ROM/RAM讀寫允許,以便能對FPGA中的ROM在系統(tǒng)讀

4、寫。(4) 用初始化存儲器編輯窗口編輯lpm_ROM配置文件(文件名.mif)。這里預(yù)先給出后面將要用到的微程序文件:rom_a.mif 。rom_a.mif中的數(shù)據(jù)是微指令碼(圖3-1-3)。(5)全程編譯。(6)下載SOF文件至FPGA,改變lpm_ROM的地址a5.0,外加讀脈沖,通過實(shí)驗(yàn)臺上的數(shù)碼管比較讀出的數(shù)據(jù)是否與初始化數(shù)據(jù)(rom_a.mif中的數(shù)據(jù))一致。注:下載sof示例文件至實(shí)驗(yàn)臺上的FPGA,選擇實(shí)驗(yàn)電路模式仍為NO.0,24位數(shù)據(jù)輸出由數(shù)碼8至數(shù)碼3顯示,6位地址由鍵2、鍵1輸入,鍵1負(fù)責(zé)低4位,地址鎖存時鐘CLK由鍵8控制,每一次上升沿,將地址鎖入,數(shù)碼管8/7/6/

5、5/4/3將顯示ROM中輸出的數(shù)據(jù)。發(fā)光管8至1顯示輸入的6位地址值。圖3-1-1 lpm_ROM的結(jié)構(gòu)圖圖3-1-2 設(shè)置在系統(tǒng)ROM/RAM讀寫允許圖3-1-3 rom_a.mif中的數(shù)據(jù)(7)打開QuartusII的在系統(tǒng)存儲模塊讀寫工具,了解FPGA中ROM中的數(shù)據(jù),并對其進(jìn)行在系統(tǒng)寫操作(圖3-1-4)。圖3-1-4 在系統(tǒng)存儲模塊讀寫四實(shí)驗(yàn)要求(1) 實(shí)驗(yàn)前認(rèn)真復(fù)習(xí)LPM-ROM存儲器部分的有關(guān)內(nèi)容。(2) 記錄實(shí)驗(yàn)數(shù)據(jù),寫出實(shí)驗(yàn)報(bào)告,給出仿真波形圖。(3) 通過本實(shí)驗(yàn),對FPGA中EAB構(gòu)成的LPM-ROM存儲器有何認(rèn)識,有什么收獲?五思考題(1)如何在圖形編輯窗口中設(shè)計(jì)LPM-

6、ROM存儲器?怎樣設(shè)計(jì)地址寬度和數(shù)據(jù)線的寬度?怎樣導(dǎo)入LPM-ROM的設(shè)計(jì)參數(shù)文件和存儲LPM-ROM的設(shè)計(jì)參數(shù)文件?(2)怎樣對LPM-ROM的設(shè)計(jì)參數(shù)文件進(jìn)行軟件仿真測試?(3)怎樣在GW48實(shí)驗(yàn)臺上對LPM-ROM進(jìn)行測試?(4)學(xué)習(xí)LPM-ROM用VHDL語言的文本設(shè)計(jì)方法(頂層文件用VHDL表達(dá))。 (5)了解LPM-ROM存儲器占用FPGA中EAB資源的情況。 2FPGA中LPM_RAM讀寫實(shí)驗(yàn)一實(shí)驗(yàn)?zāi)康?、 了解FPGA中RAMlpm_ram_dq的功能,2、 掌握lpm_ram_dq的參數(shù)設(shè)置和使用方法,3、掌握lpm_ram_dq作為隨機(jī)存儲器RAM的工作特性和讀寫方法。二實(shí)

7、驗(yàn)原理在FPGA中利用嵌入式陣列塊EAB可以構(gòu)成存儲器,lpm_ram_dq的結(jié)構(gòu)如圖3-2-1。數(shù)據(jù)從ram_dp0的左邊D7.0輸入,從右邊Q7.0輸出,R/W為讀/寫控制信號端。數(shù)據(jù)的寫入:當(dāng)輸入數(shù)據(jù)和地址準(zhǔn)備好以后,在inclock是地址鎖存時鐘,當(dāng)信號上升沿到來時,地址被鎖存,數(shù)據(jù)寫入存儲單元。數(shù)據(jù)的讀出:從A7.0輸入存儲單元地址,在CLK信號上升沿到來時,該單元數(shù)據(jù)從Q7.0輸出。R/W讀/寫控制端,低電平時進(jìn)行讀操作,高電平時進(jìn)行寫操作;CLK讀/寫時鐘脈沖; DATA7.0RAM_dq0的8位數(shù)據(jù)輸入端;A7.0RAM的讀出和寫入地址; Q7.0RAM_dq0的8位數(shù)據(jù)輸出端

8、。三實(shí)驗(yàn)步驟(1)按圖3-2-1輸入電路圖。并進(jìn)行編譯、引腳鎖定、FPGA配置。(2)通過鍵1、鍵2輸入RAM的8位數(shù)據(jù)(選擇實(shí)驗(yàn)電路模式1),鍵3、鍵4輸入存儲器的8位地址。鍵8控制讀/寫允許,低電平時讀允許,高電平時寫允許;鍵7(CLK0)產(chǎn)生讀/寫時鐘脈沖,即生成寫地址鎖存脈沖,對lpm_ram_dq進(jìn)行寫/讀操作。(3)注意,lpm_ram_dq也能加入初始化文件(這里是5_ram.mif ,是后面將要用到的模型CPU執(zhí)行微程序文件),注意此文件加入的路徑表達(dá)和文件表達(dá)(3-2-2): ./ 5_ram.mif ,(后綴mif要小寫),同時選擇在系統(tǒng)讀寫RAM功能,RAM的ID名取為:

9、ram1。注:驗(yàn)證程序文件在DEMO5_lpm_ram目錄,工程名是ram_dp1.bdf,下載ram_dp1.sof至實(shí)驗(yàn)臺上的FPGA,選擇實(shí)驗(yàn)電路模式為NO.1,按以上方式首先進(jìn)行驗(yàn)證實(shí)驗(yàn)。首先控制讀出初始化數(shù)據(jù),與載入的初始化文件ram_dp1.mif中的數(shù)據(jù)進(jìn)行比較,然后控制寫入一些數(shù)據(jù),再讀出比較。使用在系統(tǒng)讀寫RAM的工具對其中的數(shù)據(jù)進(jìn)行讀寫操作(圖3-2-3),設(shè)置成連續(xù)讀模式,將在系統(tǒng)讀寫工具窗口的數(shù)據(jù)與實(shí)驗(yàn)箱上數(shù)碼管上顯示的數(shù)據(jù)對照起來看。四實(shí)驗(yàn)要求(1) 實(shí)驗(yàn)前認(rèn)真復(fù)習(xí)存儲器部分的有關(guān)內(nèi)容;(2) 寫出實(shí)驗(yàn)報(bào)告五思考題(1)如何在圖形編輯窗口中設(shè)計(jì)lpm_ram_dq存儲

10、器?怎樣設(shè)定地址寬度和數(shù)據(jù)線的寬度?設(shè)計(jì)一數(shù)據(jù)寬度為6,地址線寬度為7的RAM,仿真檢驗(yàn)其功能,并在FPGA上進(jìn)行硬件測試。(2)如何建立lpm_ram_dq的數(shù)據(jù)初始化,如何導(dǎo)入和存儲lpm_ram_dq參數(shù)文件?生成一個mif文件,并導(dǎo)入以上的RAM中。(3)怎樣對lpm_ram_dq設(shè)計(jì)參數(shù)文件進(jìn)行軟件仿真測試?(4)使用VHDL文件作為頂層文件,學(xué)習(xí)lpm_ram_dq的VHDL語言的文本設(shè)計(jì)方法。(5)了解lpm_ram_dq存儲器占用FPGA中EAB資源的情況。(6)使用系統(tǒng)讀寫RAM的工具對其中的數(shù)據(jù)進(jìn)行讀寫操作。(7)lpm_ram_dq存儲器在CPU中有何作用? 圖3-2-2

11、 lpm_ram_dq加入初始化文件和選擇在系統(tǒng)讀寫RAM功能圖3-2-1 lpm_ram_dp實(shí)驗(yàn)電路圖3 FIFO定制與讀/寫實(shí)驗(yàn)一實(shí)驗(yàn)?zāi)康?. 掌握FPGA中先進(jìn)先出存儲器lpm_fifo的功能,工作特性和讀寫方法。2. 了解FPGA中l(wèi)pm_fifo的功能,掌握lpm_fifo的參數(shù)設(shè)置和使用方法。3. 掌握lpm_fifo作為先進(jìn)先出存儲器FIFO的工作特性和讀寫方法。二實(shí)驗(yàn)原理FIFO(First In First Out)是一種存儲電路,用來存儲、緩沖在兩個異步時鐘之間的數(shù)據(jù)傳輸。使用異步FIFO可以在兩個不同時鐘系統(tǒng)之間快速而方便地實(shí)時傳輸數(shù)據(jù)。在網(wǎng)絡(luò)接口、圖像處理、CPU設(shè)計(jì)

12、等方面,F(xiàn)IFO具有廣泛的應(yīng)用。在FPGA中利用嵌入式陣列塊EAB可以構(gòu)成存儲器,lpm_fifo的結(jié)構(gòu)如圖3-3-1所示。WR 寫控制端,高電平時進(jìn)行寫操作;RD 讀控制端,高電平時進(jìn)行讀操作;CLK 讀/寫時鐘脈沖; CLR FIFO中數(shù)據(jù)異步清零信號;D7.0 lpm_fifo的8位數(shù)據(jù)輸入端; Q7.0 lpm_fifo的8位數(shù)據(jù)輸出端; U7.0 表示lpm_fifo已經(jīng)使用的地址空間 圖3-3-1 lpm_fifo的實(shí)驗(yàn)結(jié)構(gòu)圖圖3-3-2 lpm_fifo的仿真波形圖三實(shí)驗(yàn)步驟1編輯輸入lpm_fifo實(shí)驗(yàn)電路(雙擊原理圖3-3-1的FIFO元件,可進(jìn)入該元件的編輯窗)。2將編譯通

13、過的文件下載到GW-48實(shí)驗(yàn)臺,實(shí)驗(yàn)臺選擇工作模式NO.0;3通過實(shí)驗(yàn)臺上的鍵1、鍵2輸入數(shù)據(jù),鍵3控制讀/寫允許WR(高電平寫有效,低電平讀有效,)、鍵7控制數(shù)據(jù)清0(高電平清0有效)、鍵8輸入CLK信號,數(shù)碼管4/3顯示已占用地址,數(shù)碼管2/1顯示FIFO輸出的數(shù)據(jù):4將數(shù)據(jù)寫入LPM-FIFO:鍵3置高電平(寫允許);鍵7清0一次;鍵1、鍵2每輸入一個新數(shù)據(jù)(數(shù)據(jù)顯示于發(fā)光管D8-D1),鍵8就給出一個脈沖(按鍵0-1-0),將數(shù)據(jù)壓入FIFO中; 5將數(shù)據(jù)讀出LPM-FIFO:鍵3置低電平(讀允許);隨著鍵8給出脈沖,觀察數(shù)碼管2/1顯示的FIFO中輸出的數(shù)據(jù),與剛才寫入的數(shù)據(jù)進(jìn)行比較

14、,同時注意數(shù)碼4/3顯示的地址數(shù)變化的順序。注:驗(yàn)證程序文件工程名是fifo2.bdf,下載fifo2.sof至實(shí)驗(yàn)臺上的FPGA,選擇實(shí)驗(yàn)電路模式為NO.0,按以上方式首先進(jìn)行驗(yàn)證實(shí)驗(yàn)。四實(shí)驗(yàn)要求1實(shí)驗(yàn)前認(rèn)真復(fù)習(xí)LPM-FIFO存儲器部分的有關(guān)內(nèi)容。2完成FIFO設(shè)計(jì)和驗(yàn)證,給出仿真波形圖,增加“空”、“未滿”、“滿”的標(biāo)志信號,寫出實(shí)驗(yàn)報(bào)告。五思考題1通過本實(shí)驗(yàn),對FPGA中EAB構(gòu)成的LPM-FIFO存儲器有何認(rèn)識,有什么收獲?2如何了解lpm_fifo存儲器占用FPGA中EAB資源的情況?3lpm_fifo存儲器在CPU設(shè)計(jì)中有何作用?當(dāng)lpm_fifo“空”、“未滿”、“滿”時,fu

15、ll、empty和usedw7.0d的輸出信號如何變化?4怎樣通過波形仿真了解LPM-FIFO存儲器的功能?5如何設(shè)置LPM-FIFO存儲器各項(xiàng)參數(shù)?4 FPGA與外部16位RAM接口實(shí)驗(yàn)一實(shí)驗(yàn)?zāi)康?掌握FPGA與外部RAM的硬件接口技術(shù)。 2通過FPGA控制,向外部RAM寫入數(shù)據(jù)。3通過FPGA控制,從外部RAM讀出數(shù)據(jù),并且用數(shù)碼管顯示讀出的數(shù)據(jù)。二實(shí)驗(yàn)原理用FPGA與外部RAM接口,實(shí)現(xiàn)對外部RAM的讀寫控制。FPGA需要產(chǎn)生地址信號和讀寫控制信號,并且需要采用具有雙向I/O功能的電路結(jié)構(gòu),實(shí)現(xiàn)對SRAM 數(shù)據(jù)端口輸入/輸出操作。接口電路主要由可增減地址計(jì)數(shù)器LPM_COUNTER、三態(tài)

16、總線控制器LPM_BUSTRI、讀寫控制電路組成。實(shí)驗(yàn)電路結(jié)構(gòu)如圖3-4-1所示, 圖3-4-1 FPGA與外部16位數(shù)據(jù),18位地址線寬SRAM接口電路結(jié)構(gòu)三16位SRAM讀寫邏輯設(shè)計(jì)如果要設(shè)計(jì)16位數(shù)據(jù)總線的CPU,又要用到大容量的RAM,就必須外接具有16位數(shù)據(jù)口的RAM。在實(shí)驗(yàn)板上與FPGA相接有2片256K字節(jié)/每片的16位RAM:IDT71V416,電路連接如圖3-4-2所示,F(xiàn)PGA讀寫控制電路原理圖如圖3-4-1所示。實(shí)驗(yàn)驗(yàn)證步驟如下(對其中1片RAM讀寫):1、驗(yàn)證程序sram.bdf,下載sram.sof至實(shí)驗(yàn)臺上的FPGA,選擇實(shí)驗(yàn)電路模式為N0.1;用一接插線將適配板上

17、方的P196針與實(shí)驗(yàn)板主系統(tǒng)上的鍵9的插針相接,鍵9作為地址計(jì)數(shù)器清0控制端。2、利用鍵4、鍵3、鍵2、鍵1輸入數(shù)據(jù),放在RAM數(shù)據(jù)口,如ABCDH(顯示于數(shù)碼管4/3/2/1);3、按動鍵9,對地址信號發(fā)生計(jì)數(shù)器清0,鍵7置1(寫RAM允許,高電平為讀RAM寫允許);4、寫RAM。用鍵4/3/2/1每更新一次16位輸入數(shù)據(jù),就按動1次鍵8(0à1à0),即使地址值自動加1(地址值顯示于發(fā)光管D8D1,左為高位,了解圖3-4-1的地址計(jì)數(shù)器功能)。5、讀出已被寫入的數(shù)據(jù)。按動鍵9,對地址信號發(fā)生計(jì)數(shù)器清0,鍵7置0(讀RAM允許),之后連續(xù)按鍵8,遞增地址值(地址值顯示于發(fā)光管D8D1),將能依次順序(顯示于數(shù)碼8/7/6/5上)讀出外部16位RAM中已寫入的數(shù)據(jù),與輸入數(shù)據(jù)進(jìn)行比較。圖3-4-2 16位SRAM和

溫馨提示

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

評論

0/150

提交評論