一区二区三区三上|欧美在线视频五区|国产午夜无码在线观看视频|亚洲国产裸体网站|无码成年人影视|亚洲AV亚洲AV|成人开心激情五月|欧美性爱内射视频|超碰人人干人人上|一区二区无码三区亚洲人区久久精品

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

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

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

Xilinx FPGA平臺DDR3設(shè)計保姆式教程(三)

C29F_xilinx_inc ? 來源:賽靈思 ? 作者:賽靈思 ? 2022-02-21 18:15 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

干貨來了,用DDR搬磚,只需要會用IP就好,Xilinx官方Y(jié)YDS!

一、MIG IP核配置

工具 :VIVADO 2018.3

FPGA : XC7K325FFG900-2

DDR3 : MT41J256M16XX-125

配置時鐘部分,建議詳看第二篇《DDR各時鐘頻率分析》

(1)選中“MIG”進(jìn)入配置界面

Xilinx FPGA平臺DDR3設(shè)計保姆式教程(三)

(2)選擇Create Design來創(chuàng)建設(shè)計

Xilinx FPGA平臺DDR3設(shè)計保姆式教程(三)

①選擇Create Design來創(chuàng)建設(shè)計

②自定義名字

③選擇1個控制器就好

④是否使用AXI4接口,為了簡化理解,不勾選

(3)是否選擇兼容其他器件(不需要,直接NEXT)

Xilinx FPGA平臺DDR3設(shè)計保姆式教程(三)

(4)存儲器選擇,還用說嗎,DDR3走起

Xilinx FPGA平臺DDR3設(shè)計保姆式教程(三)

(5)重點來了,時鐘配置、DDR選型

Xilinx FPGA平臺DDR3設(shè)計保姆式教程(三)

①Clock Period,即DDR芯片物理側(cè)的IO時鐘頻率,稱之為核心頻率

②物理側(cè)到控制器時鐘的比例,可選4:1或2:1;決定了ui_clk的頻率;

如圖配置的話,ui_clk = 800M /4 =200Mhz

③選擇DDR3的類型,Components指的是DDR3的型號是元件類,筆記本那種的插條類是SODIMMs。

④選擇DDR3的型號

⑤數(shù)據(jù)位寬,由DDR型號決定,但是當(dāng)FPGA掛了多片DDR時,位寬相應(yīng)增加;

(6)配置系統(tǒng)時鐘

系統(tǒng)時鐘輸入,建議200M,后面參考時鐘可以直接使用系統(tǒng)時鐘。

Xilinx FPGA平臺DDR3設(shè)計保姆式教程(三)

(7)參考時鐘、復(fù)位

Xilinx FPGA平臺DDR3設(shè)計保姆式教程(三)

Xilinx FPGA平臺DDR3設(shè)計保姆式教程(三)

①系統(tǒng)時鐘選擇NO BUFFER,因為系統(tǒng)時鐘為200M,所以參考時鐘直接使用系統(tǒng)時鐘就好。 參考時鐘必須是200Mhz!

②復(fù)位是高電平有效還是低電平有效,筆者第一次玩DDR,仿真的時候初始化一直不成功,就是復(fù)位信號搞反了 = =||

③是否使用XADC,會輸出器件的溫度,如果其他模塊要用XADC,那么這里就不使能。

(8)下一頁,50歐電阻,根據(jù)硬件而定,不用管,直接NEXT

(9)新設(shè)計 or 管腳已固定?

如果硬件已經(jīng)定了,那么就選下面管腳已固定,然后讀取約束文件,設(shè)置管腳就好。

Xilinx FPGA平臺DDR3設(shè)計保姆式教程(三)

Xilinx FPGA平臺DDR3設(shè)計保姆式教程(三)

①管腳讀取配置好了,點②確定再next進(jìn)入下一頁。

但是,我們這里只是為了講解DDR應(yīng)用,沒有硬件,選第一種新設(shè)計模式。

(10)后面依次NEXT就好了,最后生成。

(11)IP核生成完畢,打開veo文件查看例化文件。

Xilinx FPGA平臺DDR3設(shè)計保姆式教程(三)

(12)所有不會使用的IP,我們都打開Example Design來了解使用。

Xilinx FPGA平臺DDR3設(shè)計保姆式教程(三)

IP核配置完成,讀寫測試下篇再講,下面重點講解各端口信號。

二、端口信號定義

對于mig與DDR3的讀寫原理我們不需要了解太多,交給mig就可以了。我們需要做的是控制好用戶接口,寫出正確的用戶邏輯,控制好讀寫時序。想要寫好User logic,我們就必須清楚每一個用戶控制接口的含義:

Xilinx FPGA平臺DDR3設(shè)計保姆式教程(三)

2.1全部端口的注釋詳解

Xilinx FPGA平臺DDR3設(shè)計保姆式教程(三)

Xilinx FPGA平臺DDR3設(shè)計保姆式教程(三)

2.2端口信號分類

2.2.1使用DDR只需要設(shè)計這幾個信號

app_cmd (你總要先確認(rèn)你想要寫還是想要讀吧)

操作命令,其實你只需要用到3'b000(寫入)和3'b001(讀出)

要和操作地址同時出現(xiàn)才有效。

2. app_addr (往哪兒寫,從哪兒讀?)

操作地址,按照結(jié)構(gòu)從高位到低位是 rank + bank + row + column

3. app_en (確認(rèn)地址線上的地址有效,不能初始值都一直有效吧)

操作地址app_addr的使能,只有它拉高的時候,對應(yīng)的app_addr才是有效的

4. app_wdf_data (要寫的話,你得有料不是)

寫入的數(shù)據(jù)接口

5. app_wdf_wren (那也不能什么料都往里倒不是)

寫入的數(shù)據(jù)接口app_wdf_data的使能,

只有它拉高的時候,對應(yīng)的app_wdf_data才是有效的

6. app_wdf_end (要你作甚,一句app_wdf_end = app_wdf_wren 搞定)

理論上應(yīng)該有點用,但是實際你只要讓它跟app_wdf_wren一樣就行了

emm...大神這段解釋很傳神,我直接copy過來了

2.2.2 IP核的輸出信號

app_rdy (想要DDR幫你干活,也得讓人家準(zhǔn)備好了不是?)

app_rdy表示UI已經(jīng)準(zhǔn)備好接收命令了,意思就是說必須要等app_rdy信號拉高了之后,app_en和app_cmd等才能開工干活= =

而且,這個不受你控制。等著吧

2. app_wdf_rdy (想要往DDR寫數(shù)據(jù)?不好意思,等我準(zhǔn)備好了再說)

app_wdy_rdy信號表示寫數(shù)據(jù)FIFO已經(jīng)準(zhǔn)備好接收數(shù)據(jù)了,數(shù)據(jù)在app_wdf_rdy = 1’b1且 app_wdf_wren = 1’b1時被寫入。

同理,這個rdy不也受你控制。等著吧

3. init_calib_complete(DDR讀寫不對?先檢查初始化成功了沒好吧)

init_calib_complete拉高表明DDR已經(jīng)校準(zhǔn)成功初始化完成了!

拿去搬磚吧!

4. ui_clk(看好了,邏輯使用的時鐘擱這輸出呢)

在第二篇《DDR的時鐘分析》里我們也講過,ui_clk就是邏輯使用的時鐘;由配置界面“Clock Period”與“4:1 / 2:1模式”確定的;如:核心頻率為400M;選擇了4:1模式,那么ui_clk = 400 / 4 =100 M;

記住,你的邏輯代碼工作在ui_clk這個時鐘域!

2.2.3 DDR讀數(shù)據(jù)信號歸類

再來對DDR的信號規(guī)個類吧,哎,這寫的真是羅里吧嗦

app_rdy

app_en

app_cmd

app_addr

在app_rdy為高 且 app_en 為高時,讓app_cmd = 3’b001,同時我們給出讀數(shù)據(jù)的地址app_addr,那么等段時間延遲后,我們就能讀出想要的數(shù)據(jù)了:(結(jié)合后文時序圖更容易理解)

app_rd_data

app_rd_data_valid

這就是我們讀出的數(shù)據(jù)了。

2.2.4 DDR寫數(shù)據(jù)信號歸類

①前提條件

app_rdy

app_wdf_rdy

app_en

②地址和命令

app_cmd

app_addr

③寫數(shù)據(jù)

app_wdf_wren

app_wdf_data

app_wdf_end

app_wdf_mask :一般不用,直接置0

想要寫數(shù)據(jù)到DDR?必須在①前提條件全部為高時,給出②地址和命令(app_cmd = 3’b000),然后給出③寫數(shù)據(jù)的信號,就成功寫入數(shù)據(jù)到DDR了;

注意:①②時序嚴(yán)格對齊!③相對①②可以提前1拍,或最多延遲2拍,但是最好跟①②對齊,不容易出錯。(結(jié)合后文時序圖更容易理解)

三、時序圖

玩接口嘛,大部分根據(jù)時序圖來就是了,挺簡單的

3.1 UI控制時序圖

Xilinx FPGA平臺DDR3設(shè)計保姆式教程(三)

如圖所示:

必須要app_rdy拉高時,你所給的(使能app_en、命令app_cmd、地址app_addr)才會被接受。

★app_rdy :前提條件,不管是讀還是寫,都必須在app_rdy為高的時候進(jìn)行操作。

3.2寫操作時序圖

Xilinx FPGA平臺DDR3設(shè)計保姆式教程(三)

正如前文信號歸類所說:

寫入DDR必須在前提條件(app_rdy & app_wdf_rdy)全部為高時,給出地址和命令(app_cmd = 3’b000),然后給出寫數(shù)據(jù)的信號(使能與數(shù)據(jù)),就成功寫入數(shù)據(jù)到DDR了;

注意:地址和命令必須時序嚴(yán)格對齊!寫數(shù)據(jù)信號相對來說有三種情況:①嚴(yán)格對齊;②可以提前1拍;③最多延遲2拍;但是最好全部時序?qū)R,不容易出錯。

3.3讀操作時序圖

Xilinx FPGA平臺DDR3設(shè)計保姆式教程(三)

讀操作就簡單了,在前提條件app_rdy為高時,給出命令(app_cmd = 3’b001)與地址(app_addr),等段時間延遲,數(shù)據(jù)就讀出來了,以valid信號表示數(shù)據(jù)有效。

下一篇我們就開始用DDR來搬磚了,測試下讀寫,初步掌握使用~

四、參考資料

《UG586》 官方文檔不多說,YYDS!

《Xilinx平臺DDR3設(shè)計教程之仿真篇》 一系列文章,筆者就是看過后才初步熟悉了DDR3的使用,推薦給大家。

審核編輯:湯梓紅

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

    關(guān)注

    2

    文章

    284

    瀏覽量

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

    關(guān)注

    4

    文章

    338

    瀏覽量

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

掃碼添加小助手

加入工程師交流群

    評論

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

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

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

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

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

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

    TPS51116為 DDR/SSTL-2、DDR2/SSTL-18、DDR3/SSTL-15、DDR3L、LPDDR3
    的頭像 發(fā)表于 04-29 16:38 ?380次閱讀
    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ù)手冊

    DDR模塊的PCB設(shè)計要點

    在高速PCB設(shè)計中,DDR模塊是絕對繞不過去的一關(guān)。無論你用的是DDR、DDR2還是DDR3,只要設(shè)計不規(guī)范,后果就是——信號反射、時序混亂、系統(tǒng)頻繁死機。
    的頭像 發(fā)表于 04-29 13:51 ?1117次閱讀
    <b class='flag-5'>DDR</b>模塊的PCB設(shè)計要點

    TPS51216-EP 增強型產(chǎn)品 完整的 DDR2、DDR3DDR3L 內(nèi)存電源解決方案 同步降壓控制器數(shù)據(jù)手冊

    TPS51216-EP 以最低的總成本和最小的空間為 DDR2、DDR3DDR3L 內(nèi)存系統(tǒng)提供完整的電源。它將同步降壓穩(wěn)壓控制器 (VDDQ) 與 2A 灌/拉跟蹤 LDO (VTT) 和緩
    的頭像 發(fā)表于 04-26 11:12 ?299次閱讀
    TPS51216-EP 增強型產(chǎn)品 完整的 <b class='flag-5'>DDR</b>2、<b class='flag-5'>DDR3</b> 和 <b class='flag-5'>DDR3</b>L 內(nèi)存電源解決方案 同步降壓控制器數(shù)據(jù)手冊

    DDR3 SDRAM配置教程

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

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

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

    DDR內(nèi)存控制器的架構(gòu)解析

    DDR內(nèi)存控制器是一個高度集成的組件,支持多種DDR內(nèi)存類型(DDR2、DDR3、DDR3L、LPDDR2),并通過精心設(shè)計的架構(gòu)來優(yōu)化內(nèi)存
    的頭像 發(fā)表于 03-05 13:47 ?1721次閱讀
    <b class='flag-5'>DDR</b>內(nèi)存控制器的架構(gòu)解析

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

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

    DDR3、DDR4、DDR5的性能對比

    DDR3、DDR4、DDR5是計算機內(nèi)存類型的不同階段,分別代表第代、第四代和第五代雙倍數(shù)據(jù)速率同步動態(tài)隨機存取存儲器(SDRAM)。以下是它們之間的性能對比: 一、速度與帶寬
    的頭像 發(fā)表于 11-29 15:08 ?1w次閱讀

    如何選擇DDR內(nèi)存條 DDR3DDR4內(nèi)存區(qū)別

    隨著技術(shù)的不斷進(jìn)步,計算機內(nèi)存技術(shù)也在不斷發(fā)展。DDR(Double Data Rate)內(nèi)存條作為計算機的重要組成部分,其性能直接影響到電腦的運行速度和穩(wěn)定性。DDR3DDR4是目前市場上最常
    的頭像 發(fā)表于 11-20 14:24 ?6038次閱讀

    【米爾-Xilinx XC7A100T FPGA開發(fā)板試用】+01.開箱(zmj)

    推出的MYC-J7A100T核心板及開發(fā)板是基于Xilinx Artix-7系列XC7A100T的開發(fā)平臺,FPGA工業(yè)芯,兼容國產(chǎn)PG2L100H: XC7A100T-2FGG484I具有高度
    發(fā)表于 11-12 15:45

    Xilinx 7系列FPGA PCIe Gen3的應(yīng)用接口及特性

    Xilinx7系列FPGA集成了新一代PCI Express集成塊,支持8.0Gb/s數(shù)據(jù)速率的PCI Express 3.0。本文介紹了7系列FPGA PCIe Gen3的應(yīng)用接口及
    的頭像 發(fā)表于 11-05 15:45 ?3111次閱讀
    <b class='flag-5'>Xilinx</b> 7系列<b class='flag-5'>FPGA</b> PCIe Gen<b class='flag-5'>3</b>的應(yīng)用接口及特性

    FPGA DDR4讀寫實驗

    *2^10*8*16bit=512M*16bit。DDR4 相較于 DDR3 在指令引腳上也發(fā)生了變化,DDR4 取消了我們所熟悉的使能 WE、列激活 CAS 和行激活 RAS 這
    發(fā)表于 09-13 20:18

    DDR3寄存器和PLL數(shù)據(jù)表

    電子發(fā)燒友網(wǎng)站提供《DDR3寄存器和PLL數(shù)據(jù)表.pdf》資料免費下載
    發(fā)表于 08-23 11:06 ?2次下載
    <b class='flag-5'>DDR3</b>寄存器和PLL數(shù)據(jù)表