会员登录 - 用户注册 - 设为首页 - 加入收藏 - 网站地图 FPGA完成AXI4总线的读写!
当前位置:首页 > 生活 > FPGA完成AXI4总线的读写 正文

FPGA完成AXI4总线的读写

时间:2025-05-25 20:07:04 来源:锐评时讯 作者:人文 阅读:516次

FPGA。完结AXI4总线的读写_如何写axi4逻辑。

一、AXI4。 接口。描绘。

通道。信号。源。信号描绘。
大局信号。ac。lk。主机。大局。时钟。
aresetn。主机。大局复位,低有用。
写通道地址与操控信号通道。M_AXI_WR_awid[3:0]。主机。写地址ID,用来标志一组写信号。
M_AXI_WR_aw。ad。dr[31:0]。主机。写地址,给出一次写突发传输的写地址。
M_AXI_WR_awlen[7:0]。主机。突发长度,给出突发传输的次数。
M_AXI_WR_awsize[2:0]。主机。突发巨细,给出每次突发传输的字节数。
M_AXI_WR_awbu。rs。t[1:0]。主机。突发类型。
M_AXI_WR_awlock。主机。总线锁信号,可提供操作的原子性。
M_AXI_WR_awcache[3:0]。主机。内存类型,标明一次传输是怎样经过体系的。
M_AXI_WR_awprot[2:0]。主机。维护类型,标明一次传输的特权级及安全等级。
M_AXI_WR_awqos[3:0]。主机。质量服务QoS。
M_AXI_WR_awvalid。主机。有用信号,标明此通道的地址操控信号有用。
M_AXI_WR_awready。从机。标明“从”可以接纳地址和对应的操控信号。
写通道数据通道。M_AXI_WR_wdata[63:0]。主机。写数据。
M_AXI_WR_wstrb[7:0]。主机。写数据有用的字节线,用来标明哪8bits数据是有用的。
M_AXI_WR_wlast。主机。标明此次传输是最终一个突发传输。
M_AXI_WR_wvalid。主机。写有用,标明此次写有用。
M_AXI_WR_wready。从机。标明从机可以接纳写数据。
写通道呼应通道。M_AXI_WR_bid[3:0]。从机。写呼应ID TAG。
M_AXI_WR_bresp[1:0]。从机。写呼应,标明写传输的状况。
M_AXI_WR_bvalid。从机。写呼应有用。
M_AXI_WR_bready。主机。标明主机可以接纳写呼应。
读通道地址与操控信号通道。M_AXI_RD_arid[3:0]。主机。读地址ID,用来标志一组写信号。
M_AXI_RD_araddr[31:0]。主机。读地址,给出一次写突发传输的读地址。
M_AXI_RD_arlen[7:0]。主机。突发长度,给出突发传输的次数。
M_AXI_RD_arsize[2:0]。主机。突发巨细,给出每次突发传输的字节数。
M_AXI_RD_arburst[1:0]。主机。突发类型。
M_AXI_RD_arlock[1:0]。主机。总线锁信号,可提供操作的原子性。
M_AXI_RD_arcache[3:0]。主机。内存类型,标明一次传输是怎样经过体系的。
M_AXI_RD_arprot[2:0]。主机。维护类型,标明一次传输的特权级及安全等级。
M_AXI_RD_arqos[3:0]。主机。质量服务QOS。
M_AXI_RD_arvalid。主机。有用信号,标明此通道的地址操控信号有用。
M_AXI_RD_arready。从机。标明“从”可以接纳地址和对应的操控信号。
读通道数据通道。M_AXI_RD_rid[3:0]。从机。读。IDt。ag。
M_AXI_RD_rdata[63:0]。从机。读数据。
M_AXI_RD_rresp[1:0]。从机。读呼应,标明读传输的状况。
M_AXI_RD_rlast。从机。标明读突发的最终一次传输。
M_AXI_RD_rvalid。从机。标明此通道信号有用。
M_AXI_RD_rready。主机。标明主机可以接纳读数据和呼应。信息。

二、地址通道的操控信号与地址描绘。

1、地址ID。

AWID[3:0]与ARID[3:0]:关于只要一个主机从机设备,该值可设置为恣意。

2、地址结构。

AWADDR[31:0]与ARADDR[31:0]:AXI协议是根据burst(突发)的,主机只给出突发传输的第一个字节的地址,从机有必要核算突发传输后续的地址。突发传输不能跨4KB鸿沟(避免突发跨过两个从机的鸿沟,也约束了从机所需支撑的地址自增数。

3、突发长度。

AWLEN[7:0]与ARLEN[7:0]:ARLEN[7:0]决议读传输的突发长度,AWLEN[7:0]决议写传输的突发长度。AXI4扩展突发长度支撑INCR突发类型为1256次传输,关于其他的传输类型仍然坚持116次突发传输(Burst_Length=AxLEN[7:0]+1)。

4、突发巨细。

ARSIZE[2:0],读突发传输;AWSIZE[2:0],写突发传输。

AxSIZE[2:0]。传输字节巨细。
3'b000。1。
3'b001。2。
3'b010。4。
3'b011。8。
3'b100。16。
3'b101。32。
3'b110。64。
3'b111。128。

5、突发类型。

AWBURST[1:0]与ARBURST[1:0]:。

AxBURST[1:0]。突发类型。
2'b00。FIXED。
2'b01。INCR。
2'b10。WRAP。
2'b11。Reserved。

FIXED:突发传输过程中地址固定,用于FIFO拜访。

INCR:增量突发,传输过程中,地址递加。增加量取决AxSIZE的值。

WRAP:回环突发,和增量突发相似,但会在特定高地址的鸿沟处回到低地址处。回环突发的长度只能是2,4,8,16次传输,传输首地址和每次传输的巨细对齐。最低的地址整个传输的数据巨细对齐。回环鸿沟等于(AxSIZE*AxLEN)。

三、数据通道信号描绘。

1、WDATA与RDATA:写与读数据线信号。

WSTRB:有用字节,WSTRB[n:0]对应于对应的写字节,WSTRB[n]对应WDATA[8n+7:8n],也便是关于的数据宽度的字节数是否有用。WVALID为低时,WSTRB可认为恣意值,WVALID为高时,WSTRB为高的字节线有必要指示有用的数据。关于一般使用,将WSTRB悉数置1即可,确保悉数数据有用。读通道无该信号。

2、WLAST与RLAST。

写与读最终一个字节,拉高标明传输最终一个字节,也意味着传输完毕。

3、burst[1:0]。

描绘读写相应结构。

burst[1:0]。
00。惯例拜访成功。
01。独占拜访成功。
10。从机过错。
11。解码过错。

四、突发写时序:

AXI4突发写可以分为7个状况,写闲暇,写通道写地址等候,写通道写地址,写数据等候,写数据循环,承受写应对,写完毕这7种状况。之所以划分为7个状况是为了后续写程序的状况机做预备。

7种状况。

1、写闲暇:等候触发突发信号。

2、写通道写地址等候:预备好写地址AWADDR,然后拉高AWVALID。

3、写通道写地址:从机承受到AWVALID,宣布AWREADY。

4、写数据等候:预备好数据WDATA,拉高WVALID。

5、写数据循环:从机承受WVALID,承认数据WDATA有用而且承受,宣布WREADY,AXI是突发传输:循环该操作到承受到WLAST最终一个数据标志位。

6、承受写应对:承受到从机宣布的BVALID,主机宣布BREADY。

7、写完毕:拉低未拉低的信号,进入写闲暇。

五、突发读时序。

AXI4突发读可以分为6个状况,读闲暇,读通道写地址等候,读通道写地址,读数据等候,读数据循环,读完毕这6种状况。之所以划分为6个状况是为了后续写程序的状况机做预备。

6种状况。

1、读闲暇:等候触发突发信号。

2、读通道写地址等候:预备好写地址ARADDR,然后拉高ARVALID。

3、读通道写地址:从机承受到ARVALID,宣布ARREADY。

4、读数据等候:从机预备好数据WDATA,从机拉高RVALID。

5、读数据循环:主机承受RVALID,承认数据RDATA有用而且承受,宣布RREADY给从机,AXI是突发传输:循环该操作到承受到RLAST最终一个数据标志位。

6、读完毕:拉低未拉低的信号,进入读闲暇。

注:

1、读数据有必要总是跟在与其数据相关联的地址之后。

2、写呼应有必要总是跟在与其相关联的写业务的最终呈现。

六、写时序状况机。

七、写时序代码。

module axi4_wri。te。(    input               clk             ,    input               resetn          ,    input               enable_write    ,  //写使能    input  [31:0]       w_addr          ,  //地址    input  [63:0]       w_data          ,  //数据    output reg          write_done      ,  //写完结    output reg          write_data      ,  //标明数据写入,突发形式下可用于切换数据的指示信号    //axi4写通道地址通道    output  [3:0]       m_axi_awid      , //写地址ID,用来标志一组写信号    output reg[31:0]    m_axi_awaddr    ,//写地址,给出一次写突发传输的写地址     output [7:0]        m_axi_awlen     , //突发长度,给出突发传输的次数     output [2:0]        m_axi_awsize    , //突发巨细,给出每次突发传输的字节数     output [1:0]        m_axi_awburst   , //突发类型     output              m_axi_awlock    , //总线锁信号,可提供操作的原子性     output [3:0]        m_axi_awcache   , //内存类型,标明一次传输是怎样经过体系的    output [2:0]        m_axi_awprot    , //维护类型,标明一次传输的特权级及安全等级     output [3:0]        m_axi_awqos     , //质量服务QoS    output reg          m_axi_awvalid   , //有用信号,标明此通道的地址操控信号有用     input               m_axi_awready   , //标明“从”可以接纳地址和对应的操控信号    //axi4写通道数据通道    output reg[63:0]    m_axi_wdata     , //写数据     output [7:0]        m_axi_wstrb     , //写数据有用的字节线     output reg          m_axi_wlast     , //标明此次传输是最终一个突发传输    output reg          m_axi_wvalid    , //写有用,标明此次写有用    input               m_axi_wready    , //标明从机可以接纳写数据     //axi4写通道应对通道     input [3:0]         m_axi_bid       , //写呼应ID TAG    input [1:0]         m_axi_bresp     , //写呼应,标明写传输的状况    input               m_axi_bvalid    , //写呼应有用    output reg          m_axi_bready      //标明主机可以接纳写呼应    );//。

内容来源:https://sonybravia.xyz/app-1/xổ số vũng tàu ngày 1 tháng 11 năm 2022,http://chatbotjud.saude.mg.gov.br/app-1/rei-bets

(责任编辑:女性)

    系统发生错误

    系统发生错误

    您可以选择 [ 重试 ] [ 返回 ] 或者 [ 回到首页 ]

    [ 错误信息 ]

    页面发生异常错误,系统设置开启调试模式后,刷新本页查看具体错误!