当前位置: 首页 > news >正文

AXI-LITE slave读写时序

从机接口(被控模块接口)

.s_axi_aclk(s_axi_aclk),                          // input wire s_axi_aclk
.s_axi_aresetn(s_axi_aresetn),                    // input wire s_axi_aresetn
.s_axi_awaddr(s_axi_awaddr),                      // input wire [11 : 0] s_axi_awaddr
.s_axi_awvalid(s_axi_awvalid),                    // input wire s_axi_awvalid
.s_axi_awready(s_axi_awready),                    // output wire s_axi_awready
.s_axi_wdata(s_axi_wdata),                        // input wire [31 : 0] s_axi_wdata
.s_axi_wstrb(s_axi_wstrb),                        // input wire [3 : 0] s_axi_wstrb
.s_axi_wvalid(s_axi_wvalid),                      // input wire s_axi_wvalid
.s_axi_wready(s_axi_wready),                      // output wire s_axi_wready
.s_axi_bresp(s_axi_bresp),                        // output wire [1 : 0] s_axi_bresp
.s_axi_bvalid(s_axi_bvalid),                      // output wire s_axi_bvalid
.s_axi_bready(s_axi_bready),                      // input wire s_axi_bready
.s_axi_araddr(s_axi_araddr),                      // input wire [11 : 0] s_axi_araddr
.s_axi_arvalid(s_axi_arvalid),                    // input wire s_axi_arvalid
.s_axi_arready(s_axi_arready),                    // output wire s_axi_arready
.s_axi_rdata(s_axi_rdata),                        // output wire [31 : 0] s_axi_rdata
.s_axi_rresp(s_axi_rresp),                        // output wire [1 : 0] s_axi_rresp
.s_axi_rvalid(s_axi_rvalid),                      // output wire s_axi_rvalid
.s_axi_rready(s_axi_rready),                      // input wire s_axi_rready

写数据时序

在这里插入图片描述
AXI-Lite写操作有两个通道:写地址通道(AW)和写数据通道(W)。
你可以先发送地址,再发送数据,也可以先发送数据,再发送地址,或者同时发送,协议都支持。
只有当地址和数据都有效时,AXI-Lite从接口才会执行一次写操作。

一:地址发送阶段

在写数据过程中,主机的地址连接在s_axi_awaddr总线上,同时将s_axi_awvalid信号拉高,表示主机的有效地址信息已经在信道上等待从机完成接收。同时等待从机发出的接受响应,当从机发送的s_axi_awready有效(拉高)时表示从机允许接收地址信息。
从接口只在s_axi_awvaild和s_axi_awready同时有效时才能完成地址信息的接收,即完成主接口的写地址发送。
awvalid写地址有效是主机发出的,主机来定义写入的数据是否是有效
awready地址接收有效是从机发出的,从机来定义是否可以为有效接收

二:数据写入阶段

主接口发送完地址信息后,准备写入数据,将待写入的数据置于s_axi_wdata总线上(s_axi_wstrb表示写入选通吸信号,默认为11,表示写入数据均可用),并将s_axi_wvalid置为有效(拉高),表示数据已经在信道上等待从机发出的写入响应信号,进而写入从接口。
从接口将s_axi_wready信号拉高,表示从接口可以被写入数据了。
当s_axi_wavaild和s_axi_wready信号同时为1后,表示完成了数据写入

三:响应接收阶段【响应信号表示接收数据是否为有效数据,但完成响应被主机知晓,也需要有响应的有效信号】

主接口完成数据写入后,主机把 s_axi_bready信号拉高(给从机一个我可以接收响应了 的信号),等待从机接口的响应信号。从接口的响应信号s_axi_bresp[1:0]用2‘b00表示数据信道的数据写入成功,即OKEY,从机接口发出的s_axi_bresp响应信号 的有效信号s_axi_bvaild为1时才表示响应有效。

主机的s_axi_bready=1,从机的s_axi_bresp[1:0]=2‘b00,s_axi_bvaild=1,同时满足表示主机接口确认从接口完成了数据的写入。

总结AXI-LITE写数据流程:

  • 主机发出写地址(AWADDR+AWVALID),等待AWREADY。(s_axi_awvaild和s_axi_awready同时有效时才能完成地址信息写入)
  • 主机发出写数据(WDATA+WVALID),等待WREADY。(s_axi_wavaild和s_axi_wready信号同时为1后,表示完成了数据写入)
  • 从机收到地址和数据后,发出写响应(BRESP+BVALID),主机用BREADY响应。
  • 一次写操作完成。

读数据时序

在这里插入图片描述
一:地址发送:

主机将要读入的地址输入到s_axi_araddr总线上,同时将s_axi_arvalid信号拉高。表示主机的地址已经在信道上等待从接口完成接收,同时等待从接口发出s_axi_arready信号,当从接口发出的s_axi_arready信号有效时,表示从接口允许接收地址信息。
从接口只在s_axi_arvaild信号和s_axi_arready同时有效时才能完成信息接收,即完成主接口的读地址发送。

二:数据接收:

主机发送完地址请求后,发送接收数据请求信号,将s_axi_rready信号拉高,表示主机可以接收数据了。从接口接收到主接口的准备ready信号后给出响应,在s_axi_rdata总线上发送主机请求的数据,同时把s_axi_rvaild信号拉高,表示s_axi_rdata数据有效,主机根据s_axi_rvaild信号 有效 接收数据,完成数据的读过程。

总结AXI-LITE读数据流程:

  • 主机发出读地址(ARADDR+ARVALID),等待从机 ARREADY。
  • 从机返回数据(RDATA+RVALID),主机用 RREADY 响应。
  • 一次读操作完成。

相关文章:

  • MySQL 与 FastAPI 交互教程
  • 589. N叉树的前序遍历迭代法:null指针与栈的巧妙配合
  • Crowdfund Insider聚焦:CertiK联创顾荣辉解析Web3.0创新与安全平衡之术
  • 职坐标AIoT技能培训课程实战解析
  • base64加密为何可以直接找三方网站解密
  • Unity:场景管理系统 —— SceneManagement 模块
  • Reactive与Ref的故事
  • day22-数据结构之 栈队列
  • RAGFlow升级到最新0.18.0新手指南
  • APIfox参数化配置
  • AI 赋能 Copula 建模:大语言模型驱动的相关性分析革新
  • 操作系统-锁/内存/中断/IO
  • c++20引入的三路比较操作符<=>
  • 保姆教程-----安装MySQL全过程
  • DiT中的 Adaptive Layer Normalization (adaLN) 讲解
  • 【Android构建系统】如何在Camera Hal的Android.bp中选择性引用某个模块
  • 使用哈希表封装myunordered_set和myunordered_map
  • leetcode:58. 最后一个单词的长度(python3解法)
  • Centos7 中 Docker运行配置Apache
  • 【Shell的基本操作】
  • 特朗普政府涉税改法案遭众议院预算委员会否决
  • 昆明公布3起经济犯罪案例:一人持有820余万假美元被判刑十年
  • 李强:把做强国内大循环作为推动经济行稳致远的战略之举
  • 辽宁盘山县一乡镇幼儿园四名老师被指多次殴打一女童,均被行拘
  • 被前男友泼汽油致残后,一个女孩经历的双重灼烧
  • 【社论】公平有序竞争,外卖行业才能多赢