关灯
请选择 进入手机版 | 继续访问电脑版
开启左侧

米联客(MSXBO)FDMA1.1版本AXI4 DMA支持多路同时读写PS或者PLDDR

[复制链接]
msxbo 发表于 2019-8-19 16:41:33 | 显示全部楼层 |阅读模式 打印 上一主题 下一主题
 
下载或者购买地址:https://www.osrc.cn/forum.php?mo ... 2200&extra=page%3D1

FDMA1.1版本AXI4 DMA支持多路同时读写PS或者PLDDR,演示例子中给出了2个FMDA同时访问PS DDR

购买开发板的有好评晒图的可以最先免费获取更新,未有好评晒图的等待统一更新,未购买开发板的,充值积分购买,10元购买100积分!

FDMA1.0发布以来感谢广大网友的测评,我们将继续对购买开发板的提供免费资料,以及对未购买米联客开发板的收取少量的成本费用!

FPGA BD设计 2路FDMA同时读写PS DDR 米联客(MSXBO)FDMA1.1版本AXI4 DMA支持多路同时读写PS或者PLDDR-1.jpg
升级后的FDMA IP需要配置AXI ID
米联客(MSXBO)FDMA1.1版本AXI4 DMA支持多路同时读写PS或者PLDDR-2.jpg
配置AXI interconncect 的FIFO
米联客(MSXBO)FDMA1.1版本AXI4 DMA支持多路同时读写PS或者PLDDR-3.jpg
米联客(MSXBO)FDMA1.1版本AXI4 DMA支持多路同时读写PS或者PLDDR-4.jpg
测试代码层次结构

米联客(MSXBO)FDMA1.1版本AXI4 DMA支持多路同时读写PS或者PLDDR-5.jpg

测试代码
module ps_ddr #(
parameter    integer      DDR_BASE  = 32'h1000000,
parameter    integer      DDR_RANGE = 32'd268435456
)
(
input ui_clk,
input ui_rstn,
output [31:0]   pkg_rd_addr,
output          pkg_rd_areq,
input  [31:0]   pkg_rd_data,
input           pkg_rd_en,
input           pkg_rd_last,
output [31:0]   pkg_rd_size,

output [31:0]   pkg_wr_addr,
output          pkg_wr_areq,
output [31:0]   pkg_wr_data,
input           pkg_wr_en,
input           pkg_wr_last,
output [31:0]   pkg_wr_size
    );

     wire ui_rstn;
     wire ui_clk;
     //-----------------fmda signals--------------------------------------
     wire [31:0] pkg_wr_addr;
    (*mark_debug = "true"*)  wire  [31:0] pkg_wr_data;
    (*mark_debug = "true"*) (* KEEP = "TRUE" *)  reg         pkg_wr_areq;
    (*mark_debug = "true"*)  wire        pkg_wr_en;
    (*mark_debug = "true"*)  wire        pkg_wr_last;
     wire [31:0] pkg_wr_size;
     wire [31:0] pkg_rd_addr;
    (*mark_debug = "true"*)  wire  [31:0] pkg_rd_data;
    (*mark_debug = "true"*) (* KEEP = "TRUE" *) reg         pkg_rd_areq;
    (*mark_debug = "true"*)  wire        pkg_rd_en;
    (*mark_debug = "true"*)  wire        pkg_rd_last;
     wire [31:0] pkg_rd_size;
    //---------------------------------------------------------------------
     reg [31:0]pkg_wr_cnt;
    (*mark_debug = "true"*) (* KEEP = "TRUE" *) reg [31:0]pkg_rd_cnt;
    (*mark_debug = "true"*) (* KEEP = "TRUE" *) reg [1:0] T_S;

     reg [31:0] pkg_addr;

     parameter WRITE1 = 0;
     parameter WRITE2 = 1;
     parameter READ1  = 2;
     parameter READ2  = 3;
     //-----------------  
     assign pkg_wr_size = 1024;
     assign pkg_rd_size = 1024;

     assign pkg_wr_data = pkg_wr_cnt;
     (*mark_debug = "true"*) wire test_error;
     assign test_error = (pkg_rd_en && (pkg_rd_cnt != pkg_rd_data));


     assign pkg_wr_addr = pkg_addr+ DDR_BASE;
     assign pkg_rd_addr = pkg_addr+ DDR_BASE;

     always @(posedge ui_clk)
     begin
       if(!ui_rstn)begin
           T_S <=0;
           pkg_wr_areq <= 1'b0;
           pkg_rd_areq <= 1'b0;         
           pkg_wr_cnt<=0;
           pkg_rd_cnt<=0;
           pkg_addr<=0;      
       end
       else begin
           case(T_S)
           WRITE1:begin
               if(pkg_addr>=DDR_RANGE) pkg_addr<=0;
               pkg_wr_areq  <= 1'b1;
               T_S <= WRITE2;
           end
           WRITE2:begin
               pkg_wr_areq  <= 1'b0;
               if(pkg_wr_last) begin
                    T_S <= READ1;
                    pkg_wr_cnt <= 32'd0;
               end
               else if(pkg_wr_en) begin
                   pkg_wr_cnt <= pkg_wr_cnt + 1'b1;
               end
           end
           READ1:begin
               pkg_rd_areq <= 1'b1;
               T_S <= READ2;   
           end   
           READ2:begin
               pkg_rd_areq <= 1'b0;
               if(pkg_rd_last) begin
                   T_S <= WRITE1;  
                   pkg_addr <= pkg_addr + 4096;
                   pkg_rd_cnt <= 32'd0;
               end
               else if(pkg_rd_en) begin
                   pkg_rd_cnt <= pkg_rd_cnt + 1'b1;
               end
           end            
           endcase
       end
     end

endmodule



越努力越幸运!加油!
 

精彩评论5

正序浏览
来自星星的你 发表于 2019-12-17 16:32:10 | 显示全部楼层
 
您好,我想问一下,这个IP核在哪可以下载到,上面给的下载链接是主页。
 
I'mpossible 发表于 2020-4-1 16:24:11 | 显示全部楼层
 
感谢分享
回复

使用道具 举报

 
清风扬 发表于 2020-4-12 06:13:44 | 显示全部楼层
 
下载过的 搞丢了
fpga 啥都能干
 
归零者 发表于 2020-6-29 19:55:49 | 显示全部楼层
 
求下载啊
回复

使用道具 举报

 
calter 发表于 2020-8-28 08:49:23 | 显示全部楼层
 
这个IP核提供下载吗?
 
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则


12关注

52粉丝

520帖子

排行榜

关注我们:微信公众号

官方微信

官方微信

客服热线:

0519-80699907

公司地址:常州溧阳市天目云谷3号楼北楼2楼

运营中心:常州溧阳市天目云谷3号楼北楼2楼

邮编:213300 Email:270682667#qq.com

Copyright   ©2019-2026  米联客uisrc内容版权归©UISRC.COM技术支持:UISRC.COM  备案号:苏ICP备19046771号