Zynq中AXI4-Lite功能
AXI4-Lite接口是AXI4的子集,专用于和元器件内的控制寄存器进行通信。AXI-Lite允许构建简单的元件接口。这个接口规模较小,对设计和验证方面的要求更少。AXI4-Lite接口的特性如下:
1) 突发长度为1。
2) 所有访问数据的宽度和数据总线宽度相同。
3) 支持数据总线宽度为32位或64位。
4) 所有的访问相当于AWCACHE和ARCACHE等于b0000(非缓冲和非缓存)。
5) 不支持互斥性操作。
Zynq中AXI-Stream功能
AXI-Stream协议作为一个标准接口,用于连接数据交换元件。接口将产生数据的一个主设备和接收数据的一个从设备连接。当很多元件和从元件连接时,也能使用该协议。协议支持使用具有相同设置共享总线的多个数据流。该协议允许建立一个互联结构。
接口描述如下:
TVALID和TREADY握手信号用来确定跨接口数据的时间。双向的流控制机制使得主设备和从设备能够控制跨接口所发送的数据和控制信息的速度
一个主设备不允许在确认TVALID前,等待确认TREADY。一旦确认TVALID,必须一致保持这个状态,知道产生握手信号。
在确认相应的TREADY信号前,一个从设备允许等待确认TVALID。
如果从设备确认了TREADY,在TVALID信号确认前,允许不确认TREADY。
上图给出了TVALID在TREADY前的握手信号,从图中可以看出,主设备给出数据和控制信号,并且确认TVALID信号为高。一旦主设备确认了VALID,来自主设备的数据或从设备控制信息保持不变。这种状态一直保持到从设备驱动TREADY信号为高位置,它用来表示从设备可以接收数据和控制信号。在这种情况下,一旦从设备确认TREADY为高,则开始进行传输。
上图给出了TREADY在TVALID前的握手信号,从图中可以看出,在数据和控制信息有效前,从设备驱动TREADY信号为高。这表示,从设备可以在一个ACLK周期内接收数据和控制信息。在这种情况下,一旦主机确认TVALID信号为高,则开始传输。
上图给出了TVALID和TREADY握手的图,在ACLK一个周期内,主设备确认TVALID为高,从设备确认TREADY为高,则开始传输。