0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
电子发烧友
开通电子发烧友VIP会员 尊享10大特权
海量资料免费下载
精品直播免费看
优质内容免费畅学
课程9折专享价
創(chuàng)作中心

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

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

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

CHANBAEK ? 來(lái)源:FPGA Zone ? 作者:FPGA Zone ? 2023-09-01 16:20 ? 次閱讀

本文開源一個(gè)FPGA項(xiàng)目:基于AXI總線的DDR3讀寫。之前的一篇文章介紹了DDR3簡(jiǎn)單用戶接口的讀寫方式:《DDR3讀寫測(cè)試》,如果在某些項(xiàng)目中,我們需要把DDR掛載到AXI總線上,那就要通過(guò)MIG IP核提供的AXI接口來(lái)讀寫DDR。

下面圍繞Vivado BD工程的搭建以及各個(gè)IP的使用簡(jiǎn)單介紹一下該項(xiàng)目。

01軟硬件平臺(tái)

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

02創(chuàng)建Vivado BD工程

2.1 Clocking Wizard

首先在BD工程中添加Clocking Wizard IP核,用于給MIG IP核提供200M時(shí)鐘以及復(fù)位信號(hào)。

圖片

2.2 MIG IP

添加MIG IP核,接口已經(jīng)默認(rèn)配置成AXI接口。

圖片

  • Clock Period:這里配置成400Mhz;
  • Data Width:采用16bits;

圖片

  • AXI參數(shù)配置:Data Width 配置成128 bits。DDR3是雙沿工作,并且工作頻率和用戶時(shí)鐘頻率為4:1,因此這里AXI總線位寬最大可配置為16bits42=128bits;

圖片

  • MIG IP核輸入時(shí)鐘:200MHz;

圖片

  • 系統(tǒng)時(shí)鐘:No Buffer;
  • 參考時(shí)鐘:選擇Use System Clock;

圖片

配置好MIG IP后,將其與時(shí)鐘模塊(Clocking Wizard)進(jìn)行連接。

圖片

2.3 FDMA

FDMA 是米聯(lián)客基于AXI4總線協(xié)議設(shè)計(jì)的一個(gè)DMA控制器,將其掛載到AXI4總線上,可以方便地對(duì)PL或者PS端DDR進(jìn)行讀寫。

  • FDMA寫時(shí)序

FDMA寫時(shí)序如下圖所示。將fdma_wready拉高,當(dāng)fdma_wbusy為低的時(shí)候表示總線空閑,此時(shí)可以拉高fdma_wreq,同時(shí)設(shè)置起始地址和數(shù)據(jù)長(zhǎng)度。當(dāng)fdma_wvalid為高時(shí),寫入有效數(shù)據(jù)。最后一個(gè)數(shù)據(jù)寫完,fdma_wvalid和fdma_wbusy會(huì)拉低。

圖片

  • FDMA讀時(shí)序

FDMA讀時(shí)序如下圖所示。將fdma_rready拉高,當(dāng)fdma_rbusy為低的時(shí)候表示總線空閑,此時(shí)可以拉高fdma_rreq,同時(shí)設(shè)置起始地址和數(shù)據(jù)長(zhǎng)度。當(dāng)fdma_rvalid為高時(shí),輸出有效數(shù)據(jù)。最后一個(gè)數(shù)據(jù)讀完,fdma_rvalid和fdma_rbusy會(huì)拉低。

圖片

對(duì)FDMA IP參數(shù)進(jìn)行配置:這里采用32位寬地址線以及64位寬數(shù)據(jù)線進(jìn)行測(cè)試。

圖片

然后,將FDMA連接到AXI總線上,并通過(guò)axi_smc IP進(jìn)行數(shù)據(jù)位寬轉(zhuǎn)換。將需要調(diào)用的接口接出來(lái),得到以下BD工程。

圖片

配置起始地址為0x0000_0000,令DDR的讀寫地址從0開始。

圖片

最后在頂層文件中添加用戶邏輯,并生成bit文件。

03功能測(cè)試

該Vivado工程實(shí)現(xiàn)的功能是基于AXI總線對(duì)DDR3進(jìn)行連續(xù)讀寫測(cè)試,每次突發(fā)讀寫長(zhǎng)度為512*64bits,地址范圍為0~100M。FPGA板上測(cè)試結(jié)果如下圖所示。

圖片

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

    關(guān)注

    1643

    文章

    21983

    瀏覽量

    614798
  • DDR3
    +關(guān)注

    關(guān)注

    2

    文章

    283

    瀏覽量

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

    關(guān)注

    33

    文章

    8962

    瀏覽量

    153308
  • IP核
    +關(guān)注

    關(guān)注

    4

    文章

    338

    瀏覽量

    50529
  • AXI總線
    +關(guān)注

    關(guān)注

    0

    文章

    66

    瀏覽量

    14511
收藏 0人收藏

    評(píng)論

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

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

    DDR3只有一組控制、地址和數(shù)據(jù)總線,因此同一時(shí)刻只能有一個(gè)設(shè)備在訪問(wèn)。##幀地址控制模塊主要是將DDR3空間進(jìn)行劃分,同時(shí)控制幀地址的切換。
    發(fā)表于 04-07 15:52 ?1.4w次閱讀
    基于FPGA的<b class='flag-5'>DDR3</b>多端口<b class='flag-5'>讀寫</b>存儲(chǔ)管理系統(tǒng)設(shè)計(jì)

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

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

    使用AXI-Full接口的IP進(jìn)行DDR讀寫測(cè)試

    首先對(duì)本次工程進(jìn)行簡(jiǎn)要說(shuō)明:本次工程使用AXI-Full接口的IP進(jìn)行DDR讀寫測(cè)試。在我們的DDR
    的頭像 發(fā)表于 07-18 09:53 ?6041次閱讀
    使用<b class='flag-5'>AXI</b>-Full接口的IP進(jìn)行<b class='flag-5'>DDR</b>的<b class='flag-5'>讀寫</b><b class='flag-5'>測(cè)試</b>

    cyclone V控制DDR3讀寫,quartusII配置DDR3 ip核后,如何調(diào)用實(shí)現(xiàn)DDR3讀寫呢,謝謝

    DDR3的IP核配置完畢后,產(chǎn)生了好多文件,請(qǐng)問(wèn)如何調(diào)用這些文件實(shí)現(xiàn)DDR3讀寫呢?看了一些文章,說(shuō)是要等到local_init_done為高電平后,才能進(jìn)行讀寫操作。請(qǐng)問(wèn)
    發(fā)表于 01-14 18:15

    玩轉(zhuǎn)Zynq連載37——[ex56] 基于Zynq的AXI HP總線讀寫實(shí)例

    HP總線。PL作為AXI HP主機(jī),可以通過(guò)這4條總線實(shí)現(xiàn)對(duì)內(nèi)存(DDR3)的讀寫訪問(wèn),這4條總線
    發(fā)表于 11-26 09:47

    如何避免AXI_hp總線鎖死?

    `1、在開發(fā)zynq工程時(shí)遇到多個(gè)axi_hp總線讀寫ddr時(shí),總線鎖死?,F(xiàn)象就是axi_hp的
    發(fā)表于 04-15 21:57

    【FPGA DEMO】Lab2:DDR3讀寫實(shí)驗(yàn)

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

    紫光同創(chuàng)FPGA入門指導(dǎo):DDR3 讀寫——紫光盤古系列50K開發(fā)板實(shí)驗(yàn)教程

    ?支持裁剪的 AXI4 總線協(xié)議 ?一個(gè) AXI4 256 bit Host Port ?支持 Self_refresh,Power down ?支持 Bypass DDRC ?支持 DDR
    發(fā)表于 05-19 14:28

    ddr3讀寫分離方法有哪些?

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

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

    讀寫操作。DDR3用戶接口仲裁控制模塊將中斷請(qǐng)求分成多個(gè)子請(qǐng)求,實(shí)現(xiàn)視頻中斷和圖形中斷的并行處理。幀地址控制模塊確保當(dāng)前輸出幀輸出的是最新寫滿的幀。
    發(fā)表于 11-18 18:51 ?7549次閱讀
    基于FPGA的<b class='flag-5'>DDR3</b>多端口<b class='flag-5'>讀寫</b>存儲(chǔ)管理的設(shè)計(jì)與實(shí)現(xiàn)

    關(guān)于期貨行情數(shù)據(jù)加速處理中基于FPGA的DDR3六通道讀寫防沖突設(shè)計(jì)詳解

    SDRAM成為首選方法。但由于DDR3只有一套數(shù)據(jù)訪問(wèn)通道,不能滿足多個(gè)通道同時(shí)訪問(wèn)的需求。此前的對(duì)于SDRAM的多通道解決方案中,比如曹一江等設(shè)計(jì)的基于NPI總線的片外存儲(chǔ)器,最大帶寬可達(dá)743 Mb/s
    發(fā)表于 08-01 15:25 ?3666次閱讀
    關(guān)于期貨行情數(shù)據(jù)加速處理中基于FPGA的<b class='flag-5'>DDR3</b>六通道<b class='flag-5'>讀寫</b>防沖突設(shè)計(jì)詳解

    Virtex7上DDR3測(cè)試例程

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

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

    本文介紹一個(gè)FPGA開源項(xiàng)目:DDR3讀寫。該工程基于MIG控制器IP核對(duì)FPGA DDR3實(shí)現(xiàn)讀寫操作。
    的頭像 發(fā)表于 09-01 16:23 ?2287次閱讀
    基于FPGA的<b class='flag-5'>DDR3</b><b class='flag-5'>讀寫</b><b class='flag-5'>測(cè)試</b>

    闡述DDR3讀寫分離的方法

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

    FPGA通過(guò)AXI總線讀寫DDR3實(shí)現(xiàn)方式

    AXI總線由一些核心組成,包括AXI主處理器接口(AXI4)、AXI處理器到協(xié)處理器接口(AXI
    發(fā)表于 04-18 11:41 ?1792次閱讀

    電子發(fā)燒友

    中國(guó)電子工程師最喜歡的網(wǎng)站

    • 2931785位工程師會(huì)員交流學(xué)習(xí)
    • 獲取您個(gè)性化的科技前沿技術(shù)信息
    • 參加活動(dòng)獲取豐厚的禮品