AXI muckbucket
Public Member Functions | List of all members
memory Class Reference

Extremely simple memory model with just write() and read() methods. More...

Inheritance diagram for memory:
Inheritance graph
[legend]
Collaboration diagram for memory:
Collaboration graph
[legend]

Public Member Functions

uvm_component_utils(memory) bit<7 new (string name="memory", uvm_component parent=null)
 Constructor. More...
 
virtual void write (input bit< ADDR_WIDTH-1:0 > addr, input bit< 7:0 > data)
 Writes into memory. More...
 
virtual bit< 7:0 > read (input bit< ADDR_WIDTH-1:0 > addr)
 Reads from memory. More...
 
bit seq_item_check (ref axi_seq_item item, input bit< ADDR_WIDTH-1:0 > lower_addr, input bit< ADDR_WIDTH-1:0 > upper_addr)
 Compares an axi_seq_item's data and burst_type against expected matching memory contents. More...
 

Detailed Description

Extremely simple memory model with just write() and read() methods.

Definition at line 32 of file memory.svh.

Member Function Documentation

memory::new ( string  name = "memory",
uvm_component  parent = null 
)

Constructor.

Doesn't actually do anything except call parent constructor

Definition at line 51 of file memory.svh.

References new().

Referenced by new().

Here is the call graph for this function:

Here is the caller graph for this function:

automatic bit< 7:0 > memory::read ( input bit< ADDR_WIDTH-1:0 >  addr)
virtual

Reads from memory.

uses an associative array. If reading from unwritten address, 'z is returned.

Definition at line 67 of file memory.svh.

Referenced by axi_monitor::read_address(), and seq_item_check().

Here is the caller graph for this function:

automatic bit memory::seq_item_check ( ref axi_seq_item  item,
input bit< ADDR_WIDTH-1:0 >  lower_addr,
input bit< ADDR_WIDTH-1:0 >  upper_addr 
)

Compares an axi_seq_item's data and burst_type against expected matching memory contents.

This function takes into account fixed, incrementing and wrapped burst types. That includes accounting for burst_size.

Definition at line 85 of file memory.svh.

References ADDR_WIDTH, calculate_axlen(), e_FIXED, e_INCR, e_WRAP, and read().

Referenced by axi_sequential_reads_seq::body(), axi_sequential_writes_seq::body(), axi_pipelined_reads_seq::response_handler(), and axi_pipelined_writes_seq::response_handler().

Here is the call graph for this function:

Here is the caller graph for this function:

automatic void memory::write ( input bit< ADDR_WIDTH-1:0 >  addr,
input bit< 7:0 >  data 
)
virtual

Writes into memory.

Definition at line 58 of file memory.svh.

Referenced by axi_sequential_reads_seq::body(), axi_sequential_writes_seq::body(), axi_pipelined_reads_seq::body(), axi_pipelined_writes_seq::body(), and axi_monitor::write_data().

Here is the caller graph for this function:


The documentation for this class was generated from the following file: