AXI4的4K边界

AXI4的4K边界

一、什么是4k边界?

主机每一次写突发或者读突发传输,地址偏移量(或叫地址增加量),不能超过4K,也不能跨域4K。4K=4096。

举个例子:数据位宽m_axi_wdata=128bit,突发长度为100。可以计算出突发长度的字节数量:128÷8×100=1600。

第一次:突发开始的地址是0,结束地址(最后一个字节的地址)是1599。axi总线规定一个字节对应一个地址。

第二次:突发开始的地址是1600,结束地址(最后一个字节的地址)是3199。axi总线规定一个字节对应一个地址。

第三次:突发开始的地址是3200,结束地址(最后一个字节的地址)是4799。axi总线规定一个字节对应一个地址。这个就有问题了,地址超过了4096(4k)

如下图,4k区间即0-4095,或者4096-8191,读写的时候不能跨越4k区间

image-20240222140853695

二、计算最大的突发长度发

计算公式:最大的突发长度发=4096÷(axi数据位宽÷8)

1)m_axi_wdata=128bit:可以计算出最大突发长度:4096/(128÷8)=256。4096是4k边界,128÷8为字节数

2)m_axi_wdata=256bit:可以计算出最大突发长度:4096/(256÷8)=128。

3)m_axi_wdata=512bit:可以计算出最大突发长度:4096/(512÷8)=64。

4)m_axi_wdata=64bit:可以计算出最大突发长度:256。按照上面的计算的话4096/(64÷8)=512,但是axi总线规定突发长度在0到256之间,所以此时最大只能是256

三、如何避免4k边界

1)如果突发长度固定,每次突发的地址偏移量可被4096整除,比如axi4写数据位宽为128bit,突发长度为128,则地址偏移量:128*(128/8)=2048。4096÷2048=2,地址偏移量可以被整除,这可以避免跨越4k边界。地址偏移量就是结束地址减去起始地址。

2)如果突发长度不固定,可以给每次突发分配4k地址空间。

假设数据位宽m_axi_wdata=128bit。第一次突发长度为100,起始地址是0,结束地址是128/8*100 - 1=1599。第二次突发长度是200的话,起始地址是1600,结束地址是1600+(128/8 * 200)-1=4799,此时跨越了4k边界,会出现错误。为了避免跨越4k边界,可以在第二次时,初始地址给4096,那么结束地址就是4096+(128/8 * 200)-1=7295。同理,第三次突发时,起始地址可以从8192开始。

--晓凡	2024222日于武汉书

相关推荐

  1. AXI4总线信号

    2024-02-22 18:20:03       32 阅读
  2. AXI4---锁定访问

    2024-02-22 18:20:03       34 阅读
  3. K8S学习指南(4)-minikube使用

    2024-02-22 18:20:03       55 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-02-22 18:20:03       94 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-02-22 18:20:03       100 阅读
  3. 在Django里面运行非项目文件

    2024-02-22 18:20:03       82 阅读
  4. Python语言-面向对象

    2024-02-22 18:20:03       91 阅读

热门阅读

  1. vue+element下日期组件momentjs转换赋值问题

    2024-02-22 18:20:03       44 阅读
  2. 内存泄漏与内存溢出

    2024-02-22 18:20:03       45 阅读
  3. centos安装扩展

    2024-02-22 18:20:03       37 阅读
  4. 2023年10月CCAA认证通用基础真题

    2024-02-22 18:20:03       100 阅读
  5. python中websockets与主线程传递参数

    2024-02-22 18:20:03       45 阅读
  6. flask请求时间记录和日志处理

    2024-02-22 18:20:03       47 阅读
  7. 字节飞书面试算法题

    2024-02-22 18:20:03       42 阅读
  8. python 函数-02-返回值&注释格式

    2024-02-22 18:20:03       40 阅读