2

I am writing a verification environment for a design which includes an AXI bus.

What are the necessary properties in the read/write AXI transactions?

My transaction looks as seen below. Do I have to add something else?

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
AndresM
  • 1,293
  • 10
  • 19
sara8d
  • 403
  • 4
  • 17
  • 32
  • 1
    There are many properties that you will might want to establish. You can probably discover many of these by carefully reading the AXI specification and looking for cases where it says "X must do Y," for instance, you may want to require that when a master asserts valid and the slave is not ready, the master holds its request steady until ready. Beyond the spec itself, there may be other application-specific properties that you want to check. For instance, the "user" bits are user-defined signals that you may expect to behave in some certain way. At any rate, this would be quite a project. – Jared Davis Sep 07 '16 at 14:27
  • Here are the [AXI spec](http://infocenter.arm.com/help/index.jsp?topic=/com.arm.doc.ihi0022b/index.html) and the [AXI4 spec](http://infocenter.arm.com/help/index.jsp?topic=/com.arm.doc.ihi0051a/index.html). – AndresM Feb 23 '17 at 22:06

1 Answers1

0

AXI4 have five channels out of which 3 are write channel and 2 are read channels i.e write address channel, write data channel, write response channel, read address channel and read data channel.Basically, for handshake mechanism, you have to care about mainly VALID and READY signal and upon handshake, it generate proper response BRESP and RRESP signal.For depth specification, you should read ARM AMBA AXI specification.

Xeroxpop
  • 79
  • 1
  • 1
  • 6