chinese直男口爆体育生外卖, 99久久er热在这里只有精品99, 又色又爽又黄18禁美女裸身无遮挡, gogogo高清免费观看日本电视,私密按摩师高清版在线,人妻视频毛茸茸,91论坛 兴趣闲谈,欧美 亚洲 精品 8区,国产精品久久久久精品免费

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

關(guān)于Virtex7上DDR3的測(cè)試?yán)淘斀?/h1>

這篇文章我們講一下Virtex7上DDR3的測(cè)試?yán)?,Vivado也提供了一個(gè)DDR的example,但卻是純Verilog代碼,比較復(fù)雜,這里我們把DDR3的MIG的IP Core掛在Microblaze下,用很簡(jiǎn)單的程序就可以進(jìn)行DDR3的測(cè)試。

但這個(gè)工程只是一個(gè)簡(jiǎn)單的測(cè)試用例,實(shí)際應(yīng)用中不會(huì)這么用的,因此傳輸效率太低。

新建工程,FPGA選型為xc7v690tffg-1761。

1. 創(chuàng)建Block Design,命名為Microblaze_DDR3。

6d8c03fe-a08a-11eb-8b86-12bb97331649.jpg

2. 在bd文件中加入Mircoblaze。

6dae880c-a08a-11eb-8b86-12bb97331649.png

3. 點(diǎn)擊Run Block Automation。

6dcb028e-a08a-11eb-8b86-12bb97331649.png

4. 按照默認(rèn)配置,確定即可。

6def5e7c-a08a-11eb-8b86-12bb97331649.png

5. 出現(xiàn)下面的界面。

6e117eb2-a08a-11eb-8b86-12bb97331649.png

6. 添加MIG的IP Core。

6e38d52a-a08a-11eb-8b86-12bb97331649.png

7. 開始配置DDR,選擇Create Design.

6e53d6f4-a08a-11eb-8b86-12bb97331649.png

8. 這一步是選擇Pin腳兼容的FPGA,我們不做選擇,直接Next。

6e78cc2a-a08a-11eb-8b86-12bb97331649.png

9. 選擇DDR3。

6ecac43a-a08a-11eb-8b86-12bb97331649.png

10.

①選擇DDR的工作頻率,我們這里讓DDR3的頻率為1600MHz,所以時(shí)鐘頻率是800MHz;

②選擇器件,根據(jù)實(shí)際情況來(lái)選擇即可;

③數(shù)據(jù)位寬,也是根據(jù)板卡上的實(shí)際位寬進(jìn)行選擇;

④默認(rèn)即可。

6f05cb52-a08a-11eb-8b86-12bb97331649.png

11. 選擇AXI總線的位寬,這里我們選擇512。

6f2dadde-a08a-11eb-8b86-12bb97331649.png

12.

①選擇輸入時(shí)鐘頻率,雖然DDR的工作時(shí)鐘是800MHz(在第10步中選擇),但我們可以輸入一個(gè)低頻時(shí)鐘,然后MIG的IP Core中會(huì)倍頻到所需頻率。

②MIG的IP Core默認(rèn)會(huì)輸出一個(gè)200MHz的時(shí)鐘,如果還需要其他的時(shí)鐘輸出,可以在這里選擇。其他選擇默認(rèn)即可。

6f75a9cc-a08a-11eb-8b86-12bb97331649.png

13.

①選擇輸入時(shí)鐘的方式,這里的輸入時(shí)鐘就是我們上一個(gè)頁(yè)面中的設(shè)置的200MHz的輸入時(shí)鐘,如果選擇差分或單端,則輸入通過FPGA的管腳輸入200MHz時(shí)鐘到MIG的IP Core;如果選擇No Buffer,則可以通過FPGA內(nèi)部的MMCM輸出一個(gè)200MHz時(shí)鐘到MIG;這里我選擇了No Buffer;

②選擇參考時(shí)鐘的方式,參考時(shí)鐘頻率固定是200MHz,如果選擇如果選擇差分或單端,則輸入通過FPGA的管腳輸入200MHz時(shí)鐘到MIG的IP Core;如果選擇No Buffer,則可以通過FPGA內(nèi)部的MMCM輸出一個(gè)200MHz時(shí)鐘到MIG;如果在前一個(gè)頁(yè)面中選擇了輸入時(shí)鐘頻率是200MHz,則這邊會(huì)出現(xiàn)一個(gè)Use System Clock的選項(xiàng),因?yàn)榇藭r(shí)兩個(gè)時(shí)鐘頻率是相同的嘛。這里我選擇了Use System Clock;

③設(shè)置輸入復(fù)位信號(hào)的極性,這個(gè)要特別注意,盡量選擇高有效,因?yàn)闊o(wú)論我們選擇高復(fù)位還是低復(fù)位,它的端口名都叫sys_rst,會(huì)讓人直觀就覺得是高復(fù)位。我第一次使用時(shí),就沒注意到這個(gè)選項(xiàng),默認(rèn)為低,但在MIG的端口上看到sys_rst這個(gè)名字我以為是高有效,結(jié)果DDR一直不通。

(備注:對(duì)于絕大多數(shù)的Xilinx的IP,如果是低有效的復(fù)位,端口名字中肯定是有N這個(gè)標(biāo)志的)

6f9d6746-a08a-11eb-8b86-12bb97331649.png

14. 這個(gè)頁(yè)面不需要操作。

6fd57500-a08a-11eb-8b86-12bb97331649.png

15. 下面開始分配管腳,我比較習(xí)慣于選第二個(gè),無(wú)論是第一次分配還是后面再重新分配。

7006581e-a08a-11eb-8b86-12bb97331649.png

16. 在這一頁(yè),可以根據(jù)原理圖一一分配管腳;如果有現(xiàn)成的xdc/ucf文件,可以直接通過Read XDC/UCF讀入,然后再選擇Validate驗(yàn)證管腳分配是否正確。

7020085e-a08a-11eb-8b86-12bb97331649.png

如果Validate成功,則會(huì)提示下面的界面。

702e699e-a08a-11eb-8b86-12bb97331649.png

17. 如果在第13步中,選擇了差分或單端輸入,則這里會(huì)出現(xiàn)下面第一個(gè)圖;如果選擇了No buffer,則這里會(huì)出現(xiàn)第二個(gè)圖。很容易理解,如果選擇了通過外部管腳輸入時(shí)鐘,那這里就是讓選擇具體的管腳。并不是所有的MRCC或者SRCC管腳都可以選的,只能選擇跟DDR管腳同一片區(qū)域的(比如DDR放在了Bank31 32 33,那么這里的時(shí)鐘輸入管腳就不能選擇Bank15)。

704795fe-a08a-11eb-8b86-12bb97331649.png

如果不選擇復(fù)位信號(hào)管腳,就可以通過FPGA內(nèi)部邏輯來(lái)輸入復(fù)位。

706c407a-a08a-11eb-8b86-12bb97331649.png

后面一路Next就完成了MIG IP Core的配置了。

18. 在bd文件中,加入AXI Interconnect、UARTLite和Interrupt(如果不加中斷模塊,Microblaze的程序跑不起來(lái)),串口用來(lái)打印信息。然后再添加各輸入輸出端口,把內(nèi)部的線連接起來(lái),如下圖所示。

70931d94-a08a-11eb-8b86-12bb97331649.jpg

但這個(gè)圖里的線太多,看著不直觀,我們把Microblaze模塊、mdm_1、rst_clk_wiz和local_memory模塊(上圖中紅框中的4個(gè)模塊)放到一個(gè)子模塊中,取名mb_min_sys,如下圖。

70c309a0-a08a-11eb-8b86-12bb97331649.jpg

19. 創(chuàng)建頂層的top文件,并在top文件中例化bd文件。可以把init_calib_complete和mmcm_locked這兩個(gè)信號(hào)抓出來(lái),在下載程序后,這兩個(gè)信號(hào)必須都是高,不然DDR就工作不正常,肯定是中間某個(gè)環(huán)節(jié)配置有問題。具體top.v文件內(nèi)容見附錄。

20. 將工程綜合、實(shí)現(xiàn)、生成bit文件,并導(dǎo)出Hardware。

70e8feb2-a08a-11eb-8b86-12bb97331649.png

21. 打開sdk,新建Application Project,并按下面的步驟依次操作。

7129f552-a08a-11eb-8b86-12bb97331649.png

715055d0-a08a-11eb-8b86-12bb97331649.png

再選擇模板為HelloWorld,最后Finish。

716cc602-a08a-11eb-8b86-12bb97331649.png

22. 修改helloworld.c,見附錄,重新編譯,如果提示overflowed則把lscript.ld文件中的size改大。

718dc230-a08a-11eb-8b86-12bb97331649.png

運(yùn)行程序后,可以看到串口打印信息如下:

71b67716-a08a-11eb-8b86-12bb97331649.png

說明DDR3可以正常工作。

附錄

top.v

`timescale 1ns / 1ps

module top ( input clk_n, input clk_p, input UART_rxd, output UART_txd, output [15:0]ddr3_addr, output [2:0]ddr3_ba, output ddr3_cas_n, output [0:0]ddr3_ck_n, output [0:0]ddr3_ck_p, output [0:0]ddr3_cke, output [0:0]ddr3_cs_n, output [7:0]ddr3_dm, inout [63:0]ddr3_dq, inout [7:0]ddr3_dqs_n, inout [7:0]ddr3_dqs_p, output [0:0]ddr3_odt, output ddr3_ras_n, output ddr3_reset_n, output ddr3_we_n ); wire axi4_clk; wire axil_clk; reg axi4_rstn; wire axil_rstn; wire init_calib_complete; wire mmcm_locked;

wire ddr_rst;

always @ ( posedge axi4_clk ) begin axi4_rstn 《= axil_rstn; end

reg [8:0] cnt;

always @ ( posedge axil_clk ) begin if(~axil_rstn) cnt 《= ‘d0; else if(cnt==’d256) cnt 《= cnt ; else cnt 《= cnt + 1‘b1; end assign ddr_rst = (cnt==’d256)?1‘b0:1’b1; MicroBlaze_DDR3 MicroBlaze_DDR3_i

(.UART_rxd (UART_rxd ), .UART_txd (UART_txd ), .axil_clk (axil_clk ), .axi4_clk (axi4_clk ), .axi4_rstn (axi4_rstn ), .clk_in_clk_n (clk_n ), .clk_in_clk_p (clk_p ), .ddr3_addr (ddr3_addr ), .ddr3_ba (ddr3_ba ), .ddr3_cas_n (ddr3_cas_n ), .ddr3_ck_n (ddr3_ck_n ), .ddr3_ck_p (ddr3_ck_p ), .ddr3_cke (ddr3_cke ), .ddr3_cs_n (ddr3_cs_n ), .ddr3_dm (ddr3_dm ), .ddr3_dq (ddr3_dq ), .ddr3_dqs_n (ddr3_dqs_n ), .ddr3_dqs_p (ddr3_dqs_p ), .ddr3_odt (ddr3_odt ), .ddr3_ras_n (ddr3_ras_n ), .ddr3_reset_n (ddr3_reset_n ), .ddr3_we_n (ddr3_we_n ), .ddr_rst (ddr_rst ), .init_calib_complete (init_calib_complete ), .mmcm_locked (mmcm_locked ), .reset (1‘b0 ), .axil_rstn (axil_rstn ) );

endmodule

helloworld.c

#include《stdio.h》#include“platform.h”#include“xil_printf.h”

int main(){ init_platform(); print(“-------ddr3test----------------------

”); unsignedint*DDR_MEM = (unsignedint*)XPAR_MIG_7SERIES_0_BASEADDR; //write data to ddr3 *DDR_MEM =0x12345678; //read back unsignedint value =*(unsignedint *)XPAR_MIG_7SERIES_0_BASEADDR; xil_printf(“value= 0x%x

”, value);

cleanup_platform(); return 0;}
編輯:lyn

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • FPGA
    +關(guān)注

    關(guān)注

    1655

    文章

    22283

    瀏覽量

    630290
  • DDR3
    +關(guān)注

    關(guān)注

    2

    文章

    287

    瀏覽量

    43938
  • Virtex-7
    +關(guān)注

    關(guān)注

    0

    文章

    31

    瀏覽量

    17585

原文標(biāo)題:Virtex7 Microblaze下DDR3測(cè)試

文章出處:【微信號(hào):HXSLH1010101010,微信公眾號(hào):FPGA技術(shù)江湖】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評(píng)論

    相關(guān)推薦
    熱點(diǎn)推薦

    使用AXI4接口IP核進(jìn)行DDR讀寫測(cè)試

    本章的實(shí)驗(yàn)任務(wù)是在 PL 端自定義一個(gè) AXI4 接口的 IP 核,通過 AXI_HP 接口對(duì) PS 端 DDR3 進(jìn)行讀寫測(cè)試,讀寫的內(nèi)存大小是 4K 字節(jié)。
    的頭像 發(fā)表于 11-24 09:19 ?2763次閱讀
    使用AXI4接口IP核進(jìn)行<b class='flag-5'>DDR</b>讀寫<b class='flag-5'>測(cè)試</b>

    HummingBird EV Kit - DDR3 引腳不匹配是怎么回事?

    下面是HummingBird EV Kit給的版圖,其中DDR3_D0對(duì)應(yīng)的應(yīng)該是板子的FPGA的C2引腳:? 不過我在配置MIG的時(shí)候,通過讀入ucf文件的方式配置DDR3 SDRAM的引腳
    發(fā)表于 11-06 07:57

    DDR3 SDRAM參考設(shè)計(jì)手冊(cè)

    電子發(fā)燒友網(wǎng)站提供《DDR3 SDRAM參考設(shè)計(jì)手冊(cè).pdf》資料免費(fèi)下載
    發(fā)表于 11-05 17:04 ?1次下載

    基于DDR200T開發(fā)板的e203進(jìn)行DDR3擴(kuò)展

    由于e203內(nèi)部DTCM空間較小,所以本隊(duì)針對(duì)DDR200T開發(fā)板進(jìn)行針對(duì)e203的DDR3存儲(chǔ)器擴(kuò)展。 論壇中所給出的e203擴(kuò)展DDR的方法大致分為兩種,一種是直接將DDR存儲(chǔ)器的
    發(fā)表于 10-21 12:43

    DDR200T中的DDR3的使用配置

    蜂鳥DDR200T中DDR3的ip配置案列,提供DDR3引腳配置。具體參數(shù)可更具項(xiàng)目實(shí)際更改。 這里選用的axi接口 在賽靈思的IP配置中沒有MT41K28M6JT-125K內(nèi)存的信息,因此選用
    發(fā)表于 10-21 11:19

    TPS7H3302EVM評(píng)估模塊技術(shù)解析

    3A,支持測(cè)試DDRDDR2、 DDR3、DDR3L和DD
    的頭像 發(fā)表于 08-27 16:14 ?708次閱讀
    TPS<b class='flag-5'>7</b>H3302EVM評(píng)估模塊技術(shù)解析

    AD設(shè)計(jì)DDR3時(shí)等長(zhǎng)設(shè)計(jì)技巧

    本文緊接著前一個(gè)文檔《AD設(shè)計(jì)DDR3時(shí)等長(zhǎng)設(shè)計(jì)技巧-數(shù)據(jù)線等長(zhǎng) 》。本文著重講解DDR地址線、控制信號(hào)線等長(zhǎng)設(shè)計(jì),因?yàn)榈刂肪€、控制信號(hào)線有分支,SOC有可能帶有2片DDR或者更多,我們叫做T型分支
    發(fā)表于 07-29 16:14 ?2次下載

    AD設(shè)計(jì)DDR3時(shí)等長(zhǎng)設(shè)計(jì)技巧

    的講解數(shù)據(jù)線等長(zhǎng)設(shè)計(jì)。? ? ? 在另一個(gè)文件《AD設(shè)計(jì)DDR3時(shí)等長(zhǎng)設(shè)計(jì)技巧-地址線T型等長(zhǎng)》中著重講解使用AD設(shè)計(jì)DDR地址線走線T型走線等長(zhǎng)處理的方法和技巧。
    發(fā)表于 07-28 16:33 ?4次下載

    【RK3568+PG2L50H開發(fā)板實(shí)驗(yàn)例程】FPGA部分 | DDR3 讀寫實(shí)驗(yàn)例程

    ? 本原創(chuàng)文章由深圳市小眼睛科技有限公司創(chuàng)作,版權(quán)歸本公司所有,如需轉(zhuǎn)載,需授權(quán)并注明出處(www.meyesemi.com) 1.實(shí)驗(yàn)簡(jiǎn)介 實(shí)驗(yàn)?zāi)康模?完成 DDR3 的讀寫測(cè)試。 實(shí)驗(yàn)環(huán)境
    發(fā)表于 07-10 10:46

    在Vivado調(diào)用MIG產(chǎn)生DDR3的問題解析

    下面是調(diào)用的DDR3模塊的,模塊的倒數(shù)第二行是,模塊的時(shí)鐘輸入,時(shí)鐘源來(lái)自PLL產(chǎn)生的系統(tǒng)時(shí)鐘的倍頻。
    的頭像 發(fā)表于 05-03 10:21 ?1216次閱讀
    在Vivado調(diào)用MIG產(chǎn)生<b class='flag-5'>DDR3</b>的問題解析

    TPS51116 完整的DDR、DDR2、DDR3、DDR3L、LPDDR3DDR4 電源解決方案同步降壓控制器數(shù)據(jù)手冊(cè)

    TPS51116為 DDR/SSTL-2、DDR2/SSTL-18、DDR3/SSTL-15、DDR3L、LPDDR3
    的頭像 發(fā)表于 04-29 16:38 ?915次閱讀
    TPS51116 完整的<b class='flag-5'>DDR</b>、<b class='flag-5'>DDR</b>2、<b class='flag-5'>DDR3</b>、<b class='flag-5'>DDR3</b>L、LPDDR<b class='flag-5'>3</b> 和 <b class='flag-5'>DDR</b>4 電源解決方案同步降壓控制器數(shù)據(jù)手冊(cè)

    DDR3 SDRAM配置教程

    DDR3 SDRAM(Double-Data-Rate ThreeSynchronous Dynamic Random Access Memory)是DDR SDRAM的第三代產(chǎn)品,相較于DDR2,
    的頭像 發(fā)表于 04-10 09:42 ?3767次閱讀
    <b class='flag-5'>DDR3</b> SDRAM配置教程

    燦芯半導(dǎo)體推出DDR3/4和LPDDR3/4 Combo IP

    燦芯半導(dǎo)體(上海)股份有限公司(燦芯股份,688691)宣布推出基于28HKD 0.9V/2.5V 平臺(tái)的DDR3/4, LPDDR3/4 Combo IP。該IP具備廣泛的協(xié)議兼容性,支持DDR3
    的頭像 發(fā)表于 03-21 16:20 ?900次閱讀

    初次使用XC7A35T-FGG484做設(shè)計(jì),用的是25MHZ有源晶振,有源晶振3.3V供電,DDR3的供電1.35V,現(xiàn)在接上晶振后,DDR3的供電變成1.8V

    初次使用XC7A35T-FGG484做設(shè)計(jì),用的是25MHZ有源晶振,有源晶振3.3V供電,DDR3的供電1.35V,現(xiàn)在接上晶振后,DDR3的供電變成1.8V 求助怎么解決。
    發(fā)表于 03-21 14:25

    三大內(nèi)存原廠或?qū)⒂?025年停產(chǎn)DDR3/DDR4

    據(jù)報(bào)道,業(yè)內(nèi)人士透露,全球三大DRAM內(nèi)存制造商——三星電子、SK海力士和美光,有望在2025年內(nèi)正式停產(chǎn)已有多年歷史的DDR3DDR4兩代內(nèi)存。 隨著技術(shù)的不斷進(jìn)步和消費(fèi)級(jí)平臺(tái)的更新?lián)Q代
    的頭像 發(fā)表于 02-19 11:11 ?3198次閱讀