Code Browser Pages:
| /////////////////////////////////////// /////////////////////////////////////// //// //// //// VMM 1.2 example //// //// //// //// For more vmm examples //// //// visit www.testbench.in //// //// //// /////////////////////////////////////// /////////////////////////////////////// //----------------------------------------------------------------------------- // coverage Callback Class //----------------------------------------------------------------------------- typedef class packet; class my_driver_cov_callbacks extends my_driver_callbacks; local packet pkt ; covergroup packet_cov; addr: coverpoint pkt.address { bins zero = {0}; bins onek = {255}; bins others = default; } data: coverpoint pkt.data { bins zero = {0}; bins onek = {255}; bins others = default; } endgroup //----------------------------------------------------------------------------- // new() - Constructor //----------------------------------------------------------------------------- function new(my_sb scbd); super.new(scbd); packet_cov = new(); endfunction: new // Callbacks before a transaction is started virtual task master_pre_tx(my_driver xactor, ref packet p ); // Empty endtask // Callback after a transaction is completed virtual task master_post_tx(my_driver xactor, packet p); pkt = p ; // Save a handle to the transaction packet_cov.sample(); // Sample Coverage endtask endclass: my_driver_cov_callbacks //----------------------------------------------------------------------------- // end of file //----------------------------------------------------------------------------- |