最近,因为需要,学习了AXI总线协议和DDR3相关的知识,花了很多的时间去找各种相关的资料,深刻明白查资料的不容易,这里将所学到的东西做一个总结,同时给需要的人提供一些便利,有问题的欢迎一起讨论学习、共同进步。
1 AXI总线
首先来说一下有关AXI总线的知识,刚开始听到AXI的时候,因为不太了解的原因,觉得它非常复杂,其实我想告诉大家的是,等我们去了解它的时候,会发现它并没有想象中的那么复杂,和其他的总线很类似,只是用了不同的协议而已。
1.1 AXI总线的特点
AXI总线支持高性能、高频率系统设计,具有以下一些特点:
(1)它适合高带宽的低延时设计,满足大部分器件的接口,适合高初始延时的存储控制器,提供互联结构的灵活性与独立性,向下兼容AHB/APB这些已有的接口。
(2)它具有分离的地址/控制、数据相位。
(3)使用字节选通,支持非对齐的数据传输。
(4)基于(BURST)突发传输,只需传输首地址。
(5)读、写数据通道分离,能提供低功耗DMA。
(6)支持多种寻址方式、支持乱序传输、易于添加寄存器级进行时序收敛,AXI的设计目标可以在高时钟频率下运行,并在延迟时间长的状况下仍可以达到最高数据吞吐率。
AXI总线将读/写结果相分离,将数据写入和数据读出的信号相分离,可同时进行写入和读出操作。其实主要就是讲,AXI是一种高性能的总线,它的速度很快。突发传输是指,给出一个首地址之后,剩下的数据会依次传输,传输对应的地址是根据数据位宽来自增的,比如32bit的数据,突发长度为16(突发长度指的是每次突发传输所需传输数据的次数),那么它每次传输一个数据对应4BYTE,地址增加4,那么一次突发传输的地址就会增加64。
1.2 AXI总线的互联
如图所