• AXI协议详解(9)-数据总线


    数据总线

    本章描述了 AXI 读写数据总线上不同大小的传输,以及接口如何使用字节不变字节序来处理混合字节序传输。

    它包含以下部分:

    • 数据总线
    • 写选通
    • 窄传输
    • 字节不变性

    9.1 关于数据总线

    AXI协议有两条独立的数据总线,一条用于读数据,一条用于写数据。 因为这些数据总线有自己独立的握手信号,所以有可能同时在两条总线上进行数据传输。

    Master产生的每个传输必须与传输的数据总线宽度相同或更窄。

    9.2 写选通

    写选通信号 WSTRB 可以使能写数据总线上的稀疏数据传输。 每个写选通信号对应写数据总线的一个字节。 置位时,写选通指示数据总线的相应字节通道包含要在内存中更新的有效信息。

    写数据总线的每8位有一个写选通,所以WSTRB[n]对应WDATA[(8×n)+7:(8×n)]。 图 9-1 显示了 64 位数据总线上的这种关系。

    image-20221030164046413

    Figure9-1 Byte lane mapping

    Master必须确保写选通仅针对可以包含由事务的控制信息确定的有效数据的字节通道。

    9.3 窄传输

    当Master产生比其数据总线窄的传输时,地址和控制信息决定传输使用哪些字节通道。 在递增或回环突发时,不同的字节通道在突发的每个节拍上传输数据。 在固定突发中,地址保持不变,可以使用的字节通道也保持不变。

    图 9-2 和图 9-3 给出了两个字节通道使用示例。
    在图 9-2 中:

    • 突发有五次传输
    • 起始地址为 0
    • 每次传输为八位
    • 传输在 32 位总线上进行

    image-20221030164223346

    Figure9-2 Narrow transfer example with 8-bit transfers

    在图 9-3 中:
    • 突发具有三个传输
    • 起始地址为 4
    • 每次传输都是 32 位
    • 传输在 64 位总线上进行。

    image-20221030164309812

    Figure9-3 Narrow transfer example with 32-bit transfers

    9.4 字节不变性

    为了访问保存在同一内存空间中的混合端数据结构,AXI 协议使用字节不变端方案。

    字节不变的字节序意味着到给定地址的字节传输会将相同数据总线上的八位数据传递到相同的地址位置。

    只有一种传输宽度的组件必须将其字节通道连接到数据总线的相应字节通道。支持多种传输宽度的组件可能需要更复杂的接口来转换不是自然字节不变的接口。

    大多数小端组件可以直接连接到字节不变的接口。仅支持大端传输的组件需要一个用于字节不变操作的转换函数。

    图 9-4 是一个需要字节不变访问的数据结构示例。标头信息(例如源和目标标识符)可能采用小端格式,但有效负载是大端字节流。

    image-20221030164417886

    Figure 9-4 Example mixed-endian data structure

    字节不变性确保对部分标头信息的小端访问不会破坏结构中的其他大端数据。

  • 相关阅读:
    【数据结构】顺序表
    JS 浏览器对象模型BOM与文档对象模型DOM
    终于来啦!DALL·E API公测开始;从加减乘除到机器学习·系列电子书;Python技术面试题库;新型AI图片库;前沿论文 | ShowMeAI资讯日报
    mysql全文索引
    第73期:图论-2022/7/19学习报告
    基于功能安全的车载计算平台开发:软件层面
    GPT与MBR:硬盘分区表格式的革新与区别
    Python VScode 配置
    Java导出请求头
    计算机毕业设计 基于Web铁路订票管理系统 火车订票管理系统的设计与实现 Javaweb项目 Java实战项目 前后端分离 文档报告 代码讲解 安装调试
  • 原文地址:https://blog.csdn.net/zj907638274/article/details/127602083