[sv-ac] Fwd: sv-ac: virtual interface application example

From: ben cohen <hdlcohen@gmail.com>
Date: Tue Jun 22 2010 - 10:30:01 PDT

---------- Forwarded message ----------
From: ben cohen <hdlcohen@gmail.com>
Date: Tue, Jun 22, 2010 at 9:58 AM
Subject: sv-ac: virtual interface application example
To: sv-ac@eda.org

* `define TOP fifo_tb*
module fifo_tb;
  ...
 * fifo_if f_if(.*); // instantiation of fifo interface*
endmodule : fifo_tb

class Fifo_env extends vmm_env; // ENVIRONMENT
  ....
  Fifo_cmd_xactor fifo_cmd_xactor_0; // command-layer declaration
  ...
endclass : Fifo_env

 function void Fifo_env::build();
  ...
    this.fifo_cmd_xactor_0 = new("cmd_xactor",
                        0,
                       * `TOP.f_if,* // <----- actual interface passed
                        fifo_channel_0,
                        fifo_response_chan0
                        );
  ...

endfunction : build

class Fifo_cmd_xactor extends vmm_xactor;
  *virtual fifo_if.fdrvr_if_mp f_if;*
  ...
  function new(...
               virtual fifo_if.fdrvr_if_mp new_vir_if,
               ... );
      *this.f_if = new_vir_if;*
     ...
  endfunction : new
endclass: Fifo_cmd_xactor

  task Fifo_cmd_xactor::push_task (word_t data);
   * f_if.driver_cb.data_in <= data;*
* f_if.driver_cb.push <= 1'b1;*
* f_if.driver_cb.pop <= 1'b0;*
* @ ( f_if.driver_cb);*
* f_if.driver_cb.push <= 1'b0;*
  endtask : push_task

-- 
This message has been scanned for viruses and
dangerous content by MailScanner, and is
believed to be clean.
Received on Tue Jun 22 11:52:46 2010

This archive was generated by hypermail 2.1.8 : Tue Jun 22 2010 - 11:52:54 PDT