棋子 · 2019年10月16日

W channel 需要加入buffer吗?

ID不同的transaction,如果支持interleave,接收数据的一方需要加入buffer暂存已经读到的数据,发送数据是否需要加入buffer?如果需要,用途是什么,当一笔数据可以发送的时候是否可以直接发送出去而不缓存?

1 个回答 得票排序 · 时间排序
极术小姐姐 · 2019年10月16日

如果只是简单的master,也不需要考虑性能啥的, 那么master准备好了数据就送出去就行了。但是对于一个相对比较复杂的master来说,需要考虑性能的话,这时候就需要队列或者缓存去排放数据了。比如一个master可以发送不同ID的transaction,但只有一个AXI master接口,内部可能来自不同个子模块,有些transaction的写数据准备的比较慢,有些transaction的写数据准备的快,那么这时候就需要一个queue来存放数据,有些数据可以强行插队(适用于AXI3)

你的回答