读/写axi事务中有哪些必要的属性?

时间:2016-08-23 09:06:47

标签: system-verilog uvm

我正在为包含AXI总线的设计编写验证环境。

读/写AXI事务中有哪些必要的属性?

我的交易看起来如下所示。我是否需要添加其他内容?

typedef enum bit [3:0] { LENGTH_[1:256] } length_e;

//----------------------------------------------------------------------
//Transaction
//----------------------------------------------------------------------
class axi_transaction extends uvm_sequence_item;
   bit [3:0] id;
   bit [31:0] address;
   length_e length;
   transfer transfers[];
   int unsigned delay;

endclass

class transfer extends uvm_sequence_item;
  rand bit[31:0] data;
  rand int unsigned delay;

  // ...
endclass

1 个答案:

答案 0 :(得分:0)

AXI4有五个通道,其中3个是写通道,2个是读通道,即写地址通道,写数据通道,写响应通道,读地址通道和读数据通道。基本上,对于握手机制,你必须要小心主要是VALID和READY信号,握手时产生适当的响应BRESP和RRESP信号。对于深度规范,你应该阅读ARM AMBA AXI规范。