<acronym id="s8ci2"><small id="s8ci2"></small></acronym>
<rt id="s8ci2"></rt><rt id="s8ci2"><optgroup id="s8ci2"></optgroup></rt>
<acronym id="s8ci2"></acronym>
<acronym id="s8ci2"><center id="s8ci2"></center></acronym>
0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

基于FPGA的DDR3讀寫測試

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

本文介紹一個FPGA開源項目:DDR3讀寫。該工程基于MIG控制器IP核對FPGA DDR3實現讀寫操作。

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

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

01軟硬件平臺

  • 軟件平臺:Vivado 2017.4;
  • 硬件平臺:XC7A35TFTG256-1;

02IP核參數配置

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

圖片

接口配置界面,保持默認選項。

圖片

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

圖片

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

圖片

  • System Clock:No Buffer;
  • Reference Clock:使用系統時鐘;
  • 系統復位信號:低電平有效;

圖片

讀取XDC文件管腳配置,并點擊validate,進行校驗。

圖片

系統信號選擇不用配置,保持默認選項即可。

03用戶接口 & 讀寫時序

MIG IP產生的用戶接口信號是以app_*格式命名:

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

DDR寫時序如下圖所示。邏輯比較簡單,將所有信號嚴格對齊即可。但有一個需要注意的地方,就是當 app_rdy 和 app_wdf_rdy 都為高的時候,才能同時拉高 app_en ,這時寫入的數據才有效。

圖片

DDR讀時序如下圖所示。app_cmd、app_addr、app_en、app_rdy信號嚴格對齊即可,但是同樣需要在 app_rdy 拉高的情況下,才能拉高 app_en 。另外,數據讀出會略有延遲。

圖片

04Vivado工程源碼結構

本工程源碼結構如下圖所示。

圖片

  • ddr_ctrl:ddr用戶接口讀寫控制模塊;
  • clk_wiz_0:產生200M時鐘供MIG IP使用;
  • time_ref:系統時間基準模塊,以1s為周期計數;

05實現功能 & 測試結果

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

圖片

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • FPGA
    +關注

    關注

    1604

    文章

    21340

    瀏覽量

    594042
  • 控制器
    +關注

    關注

    112

    文章

    15277

    瀏覽量

    171805
  • DDR3
    +關注

    關注

    2

    文章

    271

    瀏覽量

    41849
  • 接口
    +關注

    關注

    33

    文章

    7740

    瀏覽量

    148704
  • AXI
    AXI
    +關注

    關注

    1

    文章

    126

    瀏覽量

    16316
收藏 人收藏

    評論

    相關推薦

    基于FPGADDR3多端口讀寫存儲管理系統設計

    本文以Kintex-7系列XC7K410T FPGA芯片和兩片MT41J128M16 DDR3 SDRAM芯片為硬件平臺,設計并實現了基于FPGA的視頻圖形顯示系統的DDR3多端口存儲
    發表于 04-07 15:52 ?1.2w次閱讀
    基于<b class='flag-5'>FPGA</b>的<b class='flag-5'>DDR3</b>多端口<b class='flag-5'>讀寫</b>存儲管理系統設計

    【紫光同創國產FPGA教程】【第十章】DDR3讀寫測試實驗

    本實驗為后續使用DDR3內存的實驗做鋪墊,通過循環讀寫DDR3內存,了解其工作原理和DDR3控制器的寫法,由于DDR3控制復雜,控制器的編寫
    的頭像 發表于 02-05 13:27 ?8461次閱讀
    【紫光同創國產<b class='flag-5'>FPGA</b>教程】【第十章】<b class='flag-5'>DDR3</b><b class='flag-5'>讀寫</b><b class='flag-5'>測試</b>實驗

    cyclone V控制DDR3讀寫,quartusII配置DDR3 ip核后,如何調用實現DDR3讀寫呢,謝謝

    DDR3的IP核配置完畢后,產生了好多文件,請問如何調用這些文件實現DDR3讀寫呢?看了一些文章,說是要等到local_init_done為高電平后,才能進行讀寫操作。請問
    發表于 01-14 18:15

    FPGA輸出的DDR3差分時鐘左右抖動很厲害,請問是怎么回事呢?

    各位專家,我使用altera的cyclone5的DDR3硬核控制器,輸入時鐘是國產的125兆50PPM有源晶振,現在調試時發現對DDR3讀寫偶爾出錯。我們測試
    發表于 05-11 06:50

    基于FPGADDR3六通道讀寫防沖突設計

    讀寫防沖突設計,能有效地解決在期貨行情數據處理中多通道同時訪問DDR3的沖突問題,在現有的Kintex-7系列FPGA平臺期貨行情數據處理系統中取得了良好的應用效果。測試結果表明該防
    發表于 08-02 09:32

    基于FPGADDR3 SDRAM控制器的設計與優化

    控制器的編寫,并在Kintex-7 FPGA芯片上完成了功能測試及實現。1 DDR3連續讀寫操作的FPGA 實現設計選用8片Mircon公司
    發表于 08-02 09:34

    基于FPGADDR3多端口讀寫存儲管理的設計與實現

    ,設計的DDR3存儲管理系統簡化了多端口讀寫DDR3的復雜度,提高并行處理的速度。引言機載視頻圖形顯示系統主要實現2D圖形的繪制,構成各種飛行參數畫面,同時疊加實時的外景視頻。由于FPGA
    發表于 08-02 11:23

    關于FPGA外部的DDR3 DRAM怎么回事

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

    DDR3芯片讀寫控制及調試總結

    DDR3芯片讀寫控制及調試總結,1. 器件選型及原理圖設計(1) 由于是直接購買現成的開發板作為項目前期開發調試使用,故DDR3芯片已板載,其型號為MT41J256M16HA-125,美光公司生產的4Gb容量
    發表于 07-22 08:33

    FPGA DEMO】Lab2:DDR3讀寫實驗

    `本開發板板載了一片高速 DDR3 SDRAM, 型號:MT41J128M16JT-093, 容量:256MByte(128M*16bit),16bit 總線。開發板上 FPGADDR3
    發表于 07-30 11:23

    怎樣對DDR3芯片進行讀寫控制呢

    怎樣對DDR3芯片進行讀寫控制呢?如何對DDR3芯片進行調試?
    發表于 08-12 06:26

    ddr3讀寫分離方法有哪些?

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

    基于FPGADDR3多端口讀寫存儲管理的設計與實現

    為了解決視頻圖形顯示系統中多個端口訪問DDR3的數據存儲沖突,設計并實現了基于FPGADDR3存儲管理系統。DDR3存儲器控制模塊使用MIG生成D
    發表于 11-18 18:51 ?6567次閱讀
    基于<b class='flag-5'>FPGA</b>的<b class='flag-5'>DDR3</b>多端口<b class='flag-5'>讀寫</b>存儲管理的設計與實現

    基于AXI總線的DDR3讀寫測試

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

    闡述DDR3讀寫分離的方法

    DDR3是2007年推出的,預計2022年DDR3的市場份額將降至8%或以下。但原理都是一樣的,DDR3讀寫分離作為DDR最基本也是最常用
    的頭像 發表于 10-18 16:03 ?618次閱讀
    闡述<b class='flag-5'>DDR3</b><b class='flag-5'>讀寫</b>分離的方法
    亚洲欧美日韩精品久久_久久精品AⅤ无码中文_日本中文字幕有码在线播放_亚洲视频高清不卡在线观看
    <acronym id="s8ci2"><small id="s8ci2"></small></acronym>
    <rt id="s8ci2"></rt><rt id="s8ci2"><optgroup id="s8ci2"></optgroup></rt>
    <acronym id="s8ci2"></acronym>
    <acronym id="s8ci2"><center id="s8ci2"></center></acronym>