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

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

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

基于FPGA的DDR3讀寫測(cè)試

CHANBAEK ? 來源:FPGA Zone ? 作者:FPGA Zone ? 2023-09-01 16:23 ? 次閱讀

本文介紹一個(gè)FPGA開源項(xiàng)目:DDR3讀寫。該工程基于MIG控制器IP核對(duì)FPGA DDR3實(shí)現(xiàn)讀寫操作。

MIG控制器支持兩種接口:(1)簡單用戶控制邏輯接口;(2)AXI接口。該工程采用前者,后面會(huì)整理DDR3的AXI總線訪問方法。

下面簡單介紹一下MIG控制器IP核的使用以及FPGA板上測(cè)試結(jié)果。

01軟硬件平臺(tái)

  • 軟件平臺(tái):Vivado 2017.4;
  • 硬件平臺(tái):XC7A35TFTG256-1;

02IP核參數(shù)配置

MIG(Memory Interface Generator)IP核提供了用戶接口邏輯,以便于實(shí)現(xiàn)對(duì)DDR的訪問。有關(guān)MIG的詳細(xì)描述,可以參考官方文檔:ug586。這里不展開介紹。

圖片

接口配置界面,保持默認(rèn)選項(xiàng)。

圖片

  • Clock Period:配置主時(shí)鐘頻率,這里選擇400M。由于DDR是雙沿工作,所以讀寫速率為400M2Data Width(16bits);
  • 時(shí)鐘頻率和用戶時(shí)鐘頻率比例:4:1,因此生成的用戶時(shí)鐘為100M;
  • Memory Part:配置DDR參數(shù),根據(jù)實(shí)際情況選擇;
  • Data Mask:如果選用的DDR帶有data mask就選上,并將信號(hào)拉低,表示不屏蔽數(shù)據(jù)接口;

圖片

Input Clock Period:輸入時(shí)鐘,這里選擇200M。

圖片

  • System Clock:No Buffer;
  • Reference Clock:使用系統(tǒng)時(shí)鐘;
  • 系統(tǒng)復(fù)位信號(hào):低電平有效;

圖片

讀取XDC文件管腳配置,并點(diǎn)擊validate,進(jìn)行校驗(yàn)。

圖片

系統(tǒng)信號(hào)選擇不用配置,保持默認(rèn)選項(xiàng)即可。

03用戶接口 & 讀寫時(shí)序

MIG IP產(chǎn)生的用戶接口信號(hào)是以app_*格式命名:

input  [127:0] app_rd_data;      //讀數(shù)據(jù)
input          app_rd_data_end;  //讀數(shù)據(jù)結(jié)束
input          app_rd_data_valid;//讀數(shù)據(jù)有效
input          app_rdy;          //MIG控制器準(zhǔn)備好讀寫
input          app_wdf_rdy;      //MIG控制器準(zhǔn)備好寫
output [27:0]  app_addr;         //讀寫地址
output [2:0]   app_cmd;          //讀寫命令
output         app_en;           //控制命令使能
output [127:0] app_wdf_data;     //寫數(shù)據(jù)
output         app_wdf_end;      //寫數(shù)據(jù)結(jié)束 
output         app_wdf_wren;     //寫數(shù)據(jù)使能

DDR寫時(shí)序如下圖所示。邏輯比較簡單,將所有信號(hào)嚴(yán)格對(duì)齊即可。但有一個(gè)需要注意的地方,就是當(dāng) app_rdy 和 app_wdf_rdy 都為高的時(shí)候,才能同時(shí)拉高 app_en ,這時(shí)寫入的數(shù)據(jù)才有效。

圖片

DDR讀時(shí)序如下圖所示。app_cmd、app_addr、app_en、app_rdy信號(hào)嚴(yán)格對(duì)齊即可,但是同樣需要在 app_rdy 拉高的情況下,才能拉高 app_en 。另外,數(shù)據(jù)讀出會(huì)略有延遲。

圖片

04Vivado工程源碼結(jié)構(gòu)

本工程源碼結(jié)構(gòu)如下圖所示。

圖片

  • ddr_ctrl:ddr用戶接口讀寫控制模塊;
  • clk_wiz_0:產(chǎn)生200M時(shí)鐘供MIG IP使用;
  • time_ref:系統(tǒng)時(shí)間基準(zhǔn)模塊,以1s為周期計(jì)數(shù);

05實(shí)現(xiàn)功能 & 測(cè)試結(jié)果

該Vivado工程主要用于FPGA DDR3讀寫功能測(cè)試?;谟脩艨刂七壿嫿涌?,以1s為周期,每周期內(nèi)完成1次讀寫操作。板上測(cè)試1次讀寫操作的結(jié)果如下圖所示。

圖片

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

    關(guān)注

    1629

    文章

    21736

    瀏覽量

    603385
  • 控制器
    +關(guān)注

    關(guān)注

    112

    文章

    16361

    瀏覽量

    178050
  • DDR3
    +關(guān)注

    關(guān)注

    2

    文章

    276

    瀏覽量

    42270
  • 接口
    +關(guān)注

    關(guān)注

    33

    文章

    8598

    瀏覽量

    151157
  • AXI
    AXI
    +關(guān)注

    關(guān)注

    1

    文章

    127

    瀏覽量

    16631
收藏 人收藏

    評(píng)論

    相關(guān)推薦

    基于FPGADDR3多端口讀寫存儲(chǔ)管理系統(tǒng)設(shè)計(jì)

    本文以Kintex-7系列XC7K410T FPGA芯片和兩片MT41J128M16 DDR3 SDRAM芯片為硬件平臺(tái),設(shè)計(jì)并實(shí)現(xiàn)了基于FPGA的視頻圖形顯示系統(tǒng)的DDR3多端口存儲(chǔ)
    發(fā)表于 04-07 15:52 ?1.3w次閱讀
    基于<b class='flag-5'>FPGA</b>的<b class='flag-5'>DDR3</b>多端口<b class='flag-5'>讀寫</b>存儲(chǔ)管理系統(tǒng)設(shè)計(jì)

    基于Digilent的Arty Artix-35T FPGA開發(fā)板的DDR3讀寫控制

    將通過五篇文章來給大家講解xilinx FPGA 使用mig IP對(duì)DDR3讀寫控制,旨在讓大家更快的學(xué)習(xí)和應(yīng)用DDR3。 本實(shí)驗(yàn)和工程基于Digilent的Arty Artix-3
    的頭像 發(fā)表于 12-15 16:45 ?2854次閱讀
    基于Digilent的Arty Artix-35T <b class='flag-5'>FPGA</b>開發(fā)板的<b class='flag-5'>DDR3</b><b class='flag-5'>讀寫</b>控制

    基于Arty Artix-35T FPGA開發(fā)板的DDR3和mig介紹

    講解xilinx FPGA 使用mig IP對(duì)DDR3讀寫控制,旨在讓大家更快的學(xué)習(xí)和應(yīng)用DDR3。 本實(shí)驗(yàn)和工程基于Digilent的Arty Artix-35T
    的頭像 發(fā)表于 01-01 10:09 ?4225次閱讀
    基于Arty Artix-35T <b class='flag-5'>FPGA</b>開發(fā)板的<b class='flag-5'>DDR3</b>和mig介紹

    【紫光同創(chuàng)國產(chǎn)FPGA教程】【第十章】DDR3讀寫測(cè)試實(shí)驗(yàn)

    本實(shí)驗(yàn)為后續(xù)使用DDR3內(nèi)存的實(shí)驗(yàn)做鋪墊,通過循環(huán)讀寫DDR3內(nèi)存,了解其工作原理和DDR3控制器的寫法,由于DDR3控制復(fù)雜,控制器的編寫
    的頭像 發(fā)表于 02-05 13:27 ?9483次閱讀
    【紫光同創(chuàng)國產(chǎn)<b class='flag-5'>FPGA</b>教程】【第十章】<b class='flag-5'>DDR3</b><b class='flag-5'>讀寫</b><b class='flag-5'>測(cè)試</b>實(shí)驗(yàn)

    基于FPGADDR3多端口讀寫存儲(chǔ)管理設(shè)計(jì)

    今天給大俠帶來《基于FPGADDR3多端口讀寫存儲(chǔ)管理設(shè)計(jì)》,話不多說,上貨。 摘要 為了解決視頻圖形顯示系統(tǒng)中多個(gè)端口訪問DDR3時(shí)出現(xiàn)的數(shù)據(jù)存儲(chǔ)沖突問題,設(shè)計(jì)了一種基于
    發(fā)表于 06-26 18:13

    基于FPGADDR3六通道讀寫防沖突設(shè)計(jì)

    讀寫防沖突設(shè)計(jì),能有效地解決在期貨行情數(shù)據(jù)處理中多通道同時(shí)訪問DDR3的沖突問題,在現(xiàn)有的Kintex-7系列FPGA平臺(tái)期貨行情數(shù)據(jù)處理系統(tǒng)中取得了良好的應(yīng)用效果。測(cè)試結(jié)果表明該防
    發(fā)表于 08-02 09:32

    基于FPGADDR3 SDRAM控制器的設(shè)計(jì)與優(yōu)化

    控制器的編寫,并在Kintex-7 FPGA芯片上完成了功能測(cè)試及實(shí)現(xiàn)。1 DDR3連續(xù)讀寫操作的FPGA 實(shí)現(xiàn)設(shè)計(jì)選用8片Mircon公司
    發(fā)表于 08-02 09:34

    基于FPGADDR3多端口讀寫存儲(chǔ)管理的設(shè)計(jì)與實(shí)現(xiàn)

    ,設(shè)計(jì)的DDR3存儲(chǔ)管理系統(tǒng)簡化了多端口讀寫DDR3的復(fù)雜度,提高并行處理的速度。引言機(jī)載視頻圖形顯示系統(tǒng)主要實(shí)現(xiàn)2D圖形的繪制,構(gòu)成各種飛行參數(shù)畫面,同時(shí)疊加實(shí)時(shí)的外景視頻。由于FPGA
    發(fā)表于 08-02 11:23

    關(guān)于FPGA外部的DDR3 DRAM怎么回事

    我是一名labview FPGA程序員,使用的是NI 7975 fpga模塊,它具有kintex 7 fpga。該模塊具有外部DDR3 DRAM 0f 2GB以及kintex 7
    發(fā)表于 05-20 14:42

    ddr3讀寫分離方法有哪些?

    DDR3是目前DDR的主流產(chǎn)品,DDR3讀寫分離作為DDR最基本也是最常用的部分,本文主要闡述DDR3
    的頭像 發(fā)表于 11-06 13:44 ?8860次閱讀
    <b class='flag-5'>ddr3</b>的<b class='flag-5'>讀寫</b>分離方法有哪些?

    基于FPGADDR3多端口讀寫存儲(chǔ)管理的設(shè)計(jì)與實(shí)現(xiàn)

    為了解決視頻圖形顯示系統(tǒng)中多個(gè)端口訪問DDR3的數(shù)據(jù)存儲(chǔ)沖突,設(shè)計(jì)并實(shí)現(xiàn)了基于FPGADDR3存儲(chǔ)管理系統(tǒng)。DDR3存儲(chǔ)器控制模塊使用MIG生成D
    發(fā)表于 11-18 18:51 ?7138次閱讀
    基于<b class='flag-5'>FPGA</b>的<b class='flag-5'>DDR3</b>多端口<b class='flag-5'>讀寫</b>存儲(chǔ)管理的設(shè)計(jì)與實(shí)現(xiàn)

    Virtex7上DDR3測(cè)試例程

    ??這篇文章我們講一下Virtex7上DDR3測(cè)試例程,Vivado也提供了一個(gè)DDR的example,但卻是純Verilog代碼,比較復(fù)雜,這里我們把DDR3的MIG的IP Cor
    的頭像 發(fā)表于 08-16 10:28 ?1924次閱讀

    FPGA學(xué)習(xí)-DDR3

    一、DDR3簡介 ? ? ? ? DDR3全稱double-data-rate 3 synchronous dynamic RAM,即第三代雙倍速率同步動(dòng)態(tài)隨機(jī)存儲(chǔ)器。所謂同步,是指DDR3
    的頭像 發(fā)表于 12-21 18:30 ?3318次閱讀

    基于AXI總線的DDR3讀寫測(cè)試

    本文開源一個(gè)FPGA項(xiàng)目:基于AXI總線的DDR3讀寫。之前的一篇文章介紹了DDR3簡單用戶接口的讀寫方式:《
    的頭像 發(fā)表于 09-01 16:20 ?4564次閱讀
    基于AXI總線的<b class='flag-5'>DDR3</b><b class='flag-5'>讀寫</b><b class='flag-5'>測(cè)試</b>

    闡述DDR3讀寫分離的方法

    DDR3是2007年推出的,預(yù)計(jì)2022年DDR3的市場份額將降至8%或以下。但原理都是一樣的,DDR3讀寫分離作為DDR最基本也是最常用
    的頭像 發(fā)表于 10-18 16:03 ?1078次閱讀
    闡述<b class='flag-5'>DDR3</b><b class='flag-5'>讀寫</b>分離的方法