AXI Interconnect

目录

  • AXI Interconnect
    • AXI crossbar
    • AXI Data Width Converter
    • AXI Clock converter
    • AXI Protocol Converter
    • AXI Register Slice
    • AXI Data FIFO
    • AXI MMU
    • 参考文献

AXI Interconnect

Xilinx AXI Interconnect IP包含多个LogiCORE IP实例(基础架构核)的分层设计块,这些LogiCORE IP在 AXI Interconnect IP配置期间被配置和连接。每个LogicCORE IP也可以单独使用。AXI Interconnect IP允许任意AXI主从设备连接到它,这些设备可以在数据宽度、时钟域和AXI子协议(AXI4、AXI3或AXI4- lite)方面彼此不同。当任何连接的主设备或从设备的接口特征与互连内部的crossbar switch的接口特征不同时,相应的logicCORE IP会被自动推断出来,并在内部互连的结构上连接,以执行必要的转换。
包括AXI crossbar,AXI Data Width Converter,AXI Clock Converter,AXI Protocol Converter,AXI Data FIFO,AXI register slice,AXI MMU

AXI crossbar

将一个或多个类似的AXI内存映射master连接到一个或多个类似的内存映射slave。每个AXI Connect IP都会包含一个corssbar。

  1. 可选的互连结构
    • Crossbar mode (Performance optimized),性能优化模式
      • 共享地址,多数据的crossbar架构
      • 并行的读和写通道,当发生多个读/写的时候,可以按照AXI的排序规则并行执行,互不干扰
      • 根据配置连接的映射减少数据路径,从而减少资源的占用
      • 一个共享的写地址仲裁器和一个共享的读地址仲裁器,当数据传输至少占用三个节拍时,通常仲裁器并不会影响吞吐量
      • 只有在IP核被配置为AXI4或者AXI3协议,才支持此模式
    • Shared Access mode (Area optimized),面积优化模式
      • 共享读/写数据,单独共享地址路径
      • 每次处理一个事务
      • 最小化资源占用
  2. 支持多个事务传输(由互连结构可知,肯定是crossbar mode)
    • 支持具有多个重排序深度(ID线程)的master
    • 支持多达32位宽的ID信号,每个master可以有不同的ID位宽
    • 支持写响应重新排序、读数据重新排序和读数据交叉
    • 可配置每个master的写/读事务的接受限制
    • 可配置每个slave的写/读事务的发出限制
    • 可选的单线程模式,(每个连接的master)通过单次只允许一个线程ID产生一个或多个未完成的事务来减少线程控制逻辑
  3. 每个ID一个slave是避免循环依赖(死锁)的方法
    • 对于一个连接的master发出的每个ID线程,Interconnect在同一时间只允许一个或多个未完成的事务发送给一个写从设备和一个读从设备。
  4. 固定的优先级和轮询仲裁
    • 16个可配置的静态优先级级别
    • 没有更高优先级时,在所有连接的被配置为最低优先级0的master中采用轮询仲裁的方式
    • 任何已经达到其接受极限的SI slot,或者正在针对一个已经达到其发送极限的MI slot,或者试图以一种有死锁风险的方式访问一个MI slot,将被暂时取消仲裁资格,以便其他SI slot可以被仲裁。

AXI Data Width Converter

  1. SI data width: 32, 64, 128, 256, 512 or 1,024 bits
  2. MI data width: 32, 64, 128, 256, 512 or 1,024 bits (必须与 SI data width不通)
  3. 扩大规模时,当地址通道控制信号允许(CACHE可修改位被断言)时,数据被打包(合并)
  4. 在缩减规模时,如果超过了最大突发长度,则会将突发事务拆分为多个事务
  5. 扩大规模时,IP核以资源高效的方式,可以选择执行FIFO缓冲和时钟频率转换(同步或异步)

AXI Clock converter

  1. 同时钟域的转换,支持整数比(N:1和1:N)转换,2<=N<=16
  2. 异步转换跟同时钟域转换相比,占用更多的存储空间并引入更多延迟

AXI Protocol Converter

  1. AXI4 or AXI3 to AXI4-Lite协议转换
    • 存储Slave interface接收到的AWID和ARID,在响应传输时转换为BID和RID
    • 将突发传输转换为一系列的AXI4-Lite的单拍传输
  2. AXI4 to AXI3 协议转换
    • 将来自AXI4 master的超过16个节拍的事务,拆分为不超过16个节拍的多个事务。
    • 分割事务是单线程执行的,用以强制顺序合并响应传输。

AXI Register Slice

  1. 5个AXI 通道都是可以单独配置的
  2. 通过权衡频率和延迟,来实现时序收敛
  3. 每个寄存器slice有一个周期的延迟
  4. 在所有的AXI握手的条件下,能够在数据吞吐量没有损失的情况下传播AXI流量
  5. 可以选则流水线来跨越堆叠硅互连(SSI)设备中的超级逻辑区域(SLR)

AXI Data FIFO

  1. 读/写路径的单独可配置
  2. 基于32深度的LUT-RAM
  3. 基于512深度的block RAM
  4. 可选的数据包FIFO,来避免空满标志出现在突发传输的中间

AXI MMU

连接的端点master可访问多达256个地址空间

转载请注明出处。

参考文献

  • [1] : https://www.xilinx.com/support/documentation/ip_documentation/axi_interconnect/v2_1/pg059-axi-interconnect.pdf

你可能感兴趣的:(FPGA-xilinx,fpga开发)