\\\插播一条:
自己在今年整理一套单片机单片机相关论文800余篇
论文制作思维导图
原理图+源代码+开题报告+正文+外文资料
想要的同学私信找我。
深入 AXI4 总线架构
本系列我想深入探寻 AXI4 总线。不过事情总是这样,不能我说想深入就深入。当前我对 AXI总线的理解尚谈不上深入。但我希望通过一系列文章,让读者能和我一起深入探寻 AXI4。
声明:部分时序图以及语句引用或翻译自 ARM AMBA 官方手册
(有的时候感觉手册写得太好了,忍不住就直接翻译了。。)
声明2:AXI 总线是 ARM 公司的知识产权
备注:
·下载手册可以到ARM官网搜AMBA ,需要注册 ARM 账号。
·如果外网连接不便,可以到 ARM China 的极术社区下载(需要完成新手任务)
深入 AXI4 总线(一)握手机制
·百度文库应该有中文翻译版本。
本期我们将探讨 AXI 总线的传输通道(对应手册中的章 A1.3)、各通道信号(A2)、通道间的关系(A3)以及 AXI 总线的拓扑连接(A1.3.2)。
五个独立通道
AXI4 总线的一大特征是它有 5 个独立的传输通道,这些通道都只支持单向传输。
作为类比,SPI 总线有 2 条单向传输通道:MISO, MOSI。SPI 输写和输出的数据,大路朝天,各走一条。
而作为比照, IIC 协议则独有 SDA 一条双向通道,输写输出数据只能在这一条通道上分时双向传输。
单向传输的通道意味着两端的终端节点是有身份差距的,好比水只能从上游流到下流。在 AXI 总线传输中,通道两端分为 Master 主机与 Slave 从机,主机总是发起读写请求的一方。常见的主机有CPU、DMA,而存储介质控制器(假如 DDR 控制器)则是典型的从机。主机可能通过从机读取或者写入存储介质。而显然从机不可能主动向 CPU 写入数据。
通道的读/写定义都是依据主机来定义的,那么五个通道都有谁呢:
读地址 (AR) read address
读数据 (R) read data
写地址 (AW) write address
写数据 (W) write data
写回复 (R) write response
5 个是不是很奇怪,你看读/写怎么也得是个 2 的倍数不是,那为什么不是 6 条,为什么没有读回复?其实,读回复借用了读数据通道。至于为什么有独立的写回复,而没读回复通道,我们之后再讲。
读写传输操作中的通道们
首先是写传输操作(Write transcation):
如下图所示,主机首先在写地址通道