AXI总线学习连载(7)
鲁迅曾经说过:
学硬件,不是学哪里查哪里,有一些东西是必须系统的学的,不管是嵌入式还是FPGA,硬件学习的积累一定要是系统的。
我也曾经说过:
英文手册非常重要,这是学习硬件标准的不二法门,没有捷径,我们这一行可以不说英语,英语也可以像我和我某些同事一样口语富有乡土气息,但是一定要能熟练看,内心看,做阅读理解一样看
跟着这篇博客,慢慢学习,对着官方文档,不仅可以学会这个协议,更能够学会硬件学习的方法,所谓举一反三。(我说的比鲁迅还多)
好了既然是axi,那么这么说,只要你使用arm架构的芯片,arm和fpga(pl 可编程逻辑)部分通信,或者外部设备通信,你都会用上这个协议。所以一起来学习,打工人!就该把自己的时间全部放在上面
好了不废话了,一起来探索吧!
不要厌烦枯燥,理论学习是在实践之前的必经过程,当学习完axi原型后,我也会专门贴出来一个axi协议使用开发的详细详细详细的n次方的接口解析。请学习过程中不要放弃,不要觉得枯燥!! (其实说给自己听的)
qq:2198187857 这里放出来一下,就是希望朋友们指导,有不足的地方批评教育一下,作为新手,还是很认真在学习
--------------------------------------------------------------分割线-----------------------------------------笨蛋看不见-----------------------------------------
上一个连载学习了burst size 和burst length 回忆一下,我们知道再一次burst的过程里,burst size 实际上是数据总线位宽,burst length 是拍数,两个的乘积就是数据的总量,但是数据总量不能超过4KB的
容量。
好了现在这一次我们学习burst size 和burst address
在AXI原型当中有三种类型的burst ,我们一个一个认识
还是放出官方的英语注解进行解析
第一种叫做fixed burst机制,这时候每一次都是重复的往这一个地址写东西,这个很好理解,这个其实就是FIFO的作用,往一个地址的地方重复的写入。这个很简单
第二种就是我们说的增长burst机制,顾名思义,这个方式是每一次传输都在上一次传输地址的基础上增长,地址到底增长多少取决于burst size ,其实就是要是burst size每次增加
多少个字节相应的做出变化,官方做了一个实例,假设每一次传输的burst size 都是32位即4个字节,由于是字节编址,所以下一次的传输地址会增加4,但是要记住地址通道
其实只传输首地址,至于后续地址怎么变化,其实就是取决于burst type。
这种方式,其实常用于一般的存储单元的有序访问,比如ram读写什么的