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

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

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

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

Xilinx FPGA平臺(tái)DDR3設(shè)計(jì)保姆式教程(四)

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

掃碼添加小助手

加入工程師交流群

實(shí)驗(yàn)任務(wù):

將輸入數(shù)據(jù)(data_in)存入ddr,然后讀出,驗(yàn)證輸入輸出數(shù)據(jù)是否相等。

一、前言

接上一篇(3)MIG的使用教程

MIG配置如下:

1. 系統(tǒng)時(shí)鐘sys_clk = 200Mhz

2. 系統(tǒng)復(fù)位sys_rst 低有效

3. 模式:4:1

4. 位寬: 16bit

注:由于選擇的DDR3的突然長度為8,所以mig的數(shù)據(jù)位寬=16*8=128bit,對應(yīng)到代碼即app_wdf_data[127:0] , app_rd_data[127:0]。

二、系統(tǒng)方案

2.1方案設(shè)計(jì)

實(shí)驗(yàn)任務(wù):

將數(shù)據(jù)(data_in),存入ddr,然后讀出,驗(yàn)證輸入輸出數(shù)據(jù)是否相等。

實(shí)驗(yàn)?zāi)康模?/p>

初步掌握DDR讀寫設(shè)計(jì)。

Xilinx FPGA平臺(tái)DDR3設(shè)計(jì)保姆式教程(四)

為什么要先過FIFO再寫入DDR?

因?yàn)镈DR接口對用戶而言并不是一直有效,只有等DDR“有效”時(shí)(app_rdy = 1 && app_wdf_rdy = 1),才能進(jìn)行寫入。

2.1.1輸入接口時(shí)序圖

Xilinx FPGA平臺(tái)DDR3設(shè)計(jì)保姆式教程(四)

輸入數(shù)據(jù)為1-50共50個(gè)數(shù)據(jù),以vld_in信號(hào)表征輸入數(shù)據(jù)有效。

2.2狀態(tài)機(jī)設(shè)計(jì)

2.2.1獨(dú)熱碼localparam S0_IDLE = 6'b000001; //初始化狀態(tài),DDR初始化成功就跳轉(zhuǎn)S1

localparam S1_WAIT = 6'b000010; //等待狀態(tài),等FIFO緩存好數(shù)據(jù)就跳轉(zhuǎn)S2
localparam S2_WRITE = 6'b000100; //寫DDR狀態(tài),F(xiàn)IFO數(shù)據(jù)寫完就跳轉(zhuǎn)到S3
localparam S3_WR_DONE = 6'b001000; //寫完成狀態(tài),給出讀地址初始值就跳到S4
localparam S4_READ = 6'b010000; //讀DDR狀態(tài),讀到相應(yīng)長度的數(shù)量就跳到S5
localparam S5_RD_DONE = 6'b100000; //讀完成狀態(tài),跳回IDLE

2.2.2狀態(tài)機(jī)流程圖

Xilinx FPGA平臺(tái)DDR3設(shè)計(jì)保姆式教程(四)

2.2.3三段式狀態(tài)機(jī)
always @(posedge sys_clk or posedge sys_rst)begin
if(sys_rst == 1'b1)
current_state else
current_state end
always @(*)begin
case(current_state)
S0_IDLE :
if(init_calib_complete == 1'b1)
next_state else
next_state S1_WAIT :
if(eof == 1'b1)
next_state else
next_state S2_WRITE :
if(ififo_empty == 1'b1)
next_state else
next_state S3_WR_DONE :
next_state S4_READ :
if(cnt_read == cnt_length)
next_state else
next_state S5_RD_DONE :
next_state default :
next_state endcase
end
always @(posedge sys_clk or posedge sys_rst)begin
if(sys_rst == 1'b1)begin
cnt_length cnt_read cnt_write app_addr end
else case(current_state)
S0_IDLE : ;
S1_WAIT : ;
S2_WRITE:
if(app_rdy && app_wdf_rdy && app_en)begin
app_addr cnt_write end
else begin
app_addr cnt_write end
S3_WR_DONE :begin
cnt_length app_addr end
S4_READ :
if(app_rdy && app_en)begin
app_addr cnt_read end
else begin
app_addr cnt_read end
S5_RD_DONE :begin
cnt_length cnt_read cnt_write end
default : ;
endcase
end

代碼很簡單,對應(yīng)流程圖跳轉(zhuǎn),此處不再啰嗦 。

2.3app接口設(shè)計(jì)

assign app_wdf_mask = 16'b0; //掩碼置0,表示傳輸?shù)娜繛橛行?shù)據(jù)
assign ififo_rden = (current_state == S2_WRITE)&& app_rdy && app_wdf_rdy;
assign app_en = ((current_state == S2_WRITE)&&(ififo_vld)) || (current_state == S4_READ);
assign app_cmd = (current_state == S4_READ) ? 3'b001 : 3'b000;
assign app_wdf_wren = ififo_vld;
assign app_wdf_end = ififo_vld;
assign app_wdf_data = ififo_rdata;

三、仿真結(jié)果

因?yàn)镈DR仿真,需要用到ddr3_model和其他文件,單開一篇來講解。

這里只看仿真結(jié)果。

輸入:

Xilinx FPGA平臺(tái)DDR3設(shè)計(jì)保姆式教程(四)

輸出:

Xilinx FPGA平臺(tái)DDR3設(shè)計(jì)保姆式教程(四)

輸入數(shù)據(jù): 1-50;

輸出數(shù)據(jù): 1-50;

DDR讀寫測試成功!

審核編輯:湯梓紅

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

    關(guān)注

    1645

    文章

    22034

    瀏覽量

    618021
  • DDR3
    +關(guān)注

    關(guān)注

    2

    文章

    284

    瀏覽量

    43143
  • Xilinx
    +關(guān)注

    關(guān)注

    73

    文章

    2184

    瀏覽量

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

掃碼添加小助手

加入工程師交流群

    評論

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

    【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)簡介 實(shí)驗(yàn)?zāi)康模?完成 DDR3 的讀寫測試。 實(shí)驗(yàn)環(huán)境
    發(fā)表于 07-10 10:46

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

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

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

    TPS51116為 DDR/SSTL-2、DDR2/SSTL-18、DDR3/SSTL-15、DDR3L、LPDDR3
    的頭像 發(fā)表于 04-29 16:38 ?374次閱讀
    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è)計(jì)要點(diǎn)

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

    TPS51216-EP 增強(qiáng)型產(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 增強(qiáng)型產(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)品,相較于DDR2,
    的頭像 發(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 平臺(tái)DDR3/4, LPDDR3/4 Combo IP。該IP具備廣泛的協(xié)議兼容性,支持D
    的頭像 發(fā)表于 03-21 16:20 ?464次閱讀

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

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

    三大內(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 ?1632次閱讀

    基于Xilinx ZYNQ7000 FPGA嵌入開發(fā)實(shí)戰(zhàn)指南

    電子發(fā)燒友網(wǎng)站提供《基于Xilinx ZYNQ7000 FPGA嵌入開發(fā)實(shí)戰(zhàn)指南.pdf》資料免費(fèi)下載
    發(fā)表于 12-10 15:31 ?37次下載

    DDR3、DDR4、DDR5的性能對比

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

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

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

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

    推出的MYC-J7A100T核心板及開發(fā)板是基于Xilinx Artix-7系列XC7A100T的開發(fā)平臺(tái),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 ?3108次閱讀
    <b class='flag-5'>Xilinx</b> 7系列<b class='flag-5'>FPGA</b> PCIe Gen<b class='flag-5'>3</b>的應(yīng)用接口及特性

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

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