最近在尝试做一个Chiplink的项目,记录一下其中关于AXI的各种注意点。
1. Axi4取消了WID,因此对于AXI4 Master,不能进行乱序发送写(因为W通道没有ID号与AW通道的ID号不能进行乱序对应);W通道每一笔数据的顺序跟随AW的顺序;
2. 虽然Axi4的WID不能进行乱序发送写,但是由于AWID与BID都仍可以使用,因此可以写通道是可以进行乱序写响应的。
- 如:AW通道写ID的顺序是5,6,7,8;W通道虽然没有ID,但对应的4笔数据的顺序也是对应5,6,7,8;当AW、W通道的数据都发送完后,B通道的ID响应顺序可能是5,8,6,7
3. Axi写需要先发送写地址,再到写数据。
4. AW / AR通道中有AWLen / ARLen信号,其长度未必都能与W通道 / R通道的数据长度对应(W / R通道中用last信号表示每一笔数据的长度);
- 如:AW通道发送AxLen = 80; 但W通道对应的数据长度可能到第59个WDATA的时候last已经rise了。
5. Axi4各通道有User信号,官方文档中未对其功能进行定义,不推荐使用。