全球最实用的IT互联网信息网站!

AI人工智能P2P分享&下载搜索网页发布信息网站地图

当前位置:诺佳网 > 电子/半导体 > 接口/总线/驱动 >

AMBA4—无聊的Narrow transfers介绍

时间:2023-06-11 10:22

人气:

作者:admin

标签: STRB 

导读:AMBA4—无聊的Narrow transfers介绍-AMBA总线无论FPGA还是ASIC,应该都是比较常用的一组总线协议。...

 编 者 按   

    AMBA总线无论FPGA还是ASIC,应该都是比较常用的一组总线协议。对于其中的协议,有一种传输格式叫Narrow Transfers,颇有些“无聊”~

》AxSize     

在AXI4总线里,Aw通道以及Ar通道均存在一个size字段:

ef42ac5e-073f-11ee-962d-dac502259ad0.jpg

    这里面就有点儿意思了。比如说在FPGA里面常用的512总线位宽场景下,FPGA设计里一般也会直接固定死arsize、awsize为0x6,即每拍传输64Bytes,然而协议里面的设置也允许了axsize可以设置为0x0~0x6中的任一值,即每拍可以传输1、2、4、8、16、32、64中的任一情况。而这种不满位宽输出的场景,即为“Narrow Transfers”。

》传输规则

在AXI4总线中,协议中规定了其传输规则:

Start_Addr:Master发起传输的起始地址。

Data_Bytes:总线数据位宽。

Aligned_Addr:地址对齐的起始地址

Address_N:第N拍的传输地址(1为第一拍)

Wrap_Boundary:Warp传输的相应低位地址

Lower_Byte_Lane:每拍传输的低位地址

Upper_Byte_Lane:每拍传输的高位地址

INT(x):X向下取整

    对于传输,定义:

Start_Addr=AxADDR

Aligned_Addr = INT(Start_Addr / Size)* Size

wKgaomSFMEqAAkqSAAIIRWCgR2A163.jpg

ef65a6f0-073f-11ee-962d-dac502259ad0.jpg

    对于AwSize为2,即4字节时,传输时序为:

ef75f726-073f-11ee-962d-dac502259ad0.jpg

    对于awSize为1时,即2字节,传输时序为:

ef91ffca-073f-11ee-962d-dac502259ad0.jpg

 仔细分析上面的这三张图,除了awsize为3的正常传输外,剩下的两个均是narrow transfer。   

 如果你从下往上看,像俄罗斯方块那种从下往上堆叠,在地址不跨越总线位宽地址(8 Byte)的情况下,像俄罗斯方块那种模式,则会有:

efa179b4-073f-11ee-962d-dac502259ad0.jpg

    所以,所谓的narrow transfer,不过是正常的传输给拆分成按照(1<

efc3b3d0-073f-11ee-962d-dac502259ad0.jpg

      确实有点儿蛮“无聊”的是吧~

》实现考虑     

从逻辑实现的角度来考虑,对于Master实现,当满带宽的数据(总线位宽用满)进来后,我们所需要考虑的是数据需要停留几拍。

而停留几拍数据,所需要考虑的是地址累加什么时候到达Data_Bytes的整数倍(或者数据全部送完)。然后再取下一拍送出即可,同时输出相应的STRB信号进行字节选取。

而对于Slave端实现的角度,我们同样需要根据相应的规则选择停留合并合适的N拍后进行输出,比如写通道,则可以:   

efe2a11e-073f-11ee-962d-dac502259ad0.png






审核编辑:刘清

温馨提示:以上内容整理于网络,仅供参考,如果对您有帮助,留下您的阅读感言吧!
相关阅读
本类排行
相关标签
本类推荐

CPU | 内存 | 硬盘 | 显卡 | 显示器 | 主板 | 电源 | 键鼠 | 网站地图

Copyright © 2025-2035 诺佳网 版权所有 备案号:赣ICP备2025066733号
本站资料均来源互联网收集整理,作品版权归作者所有,如果侵犯了您的版权,请跟我们联系。

关注微信