Jump to content

Ashik Ghona

Members
  • Content Count

    1
  • Joined

  • Last visited

About Ashik Ghona

  • Rank
    Member
  • Birthday 10/16/1989

Profile Information

  • Gender
    Male
  • Location
    Bangalore,India
  • Interests
    Coding,Coffee,Debugging,Quotes,Novels
  1. Keep all your parameters used in interface in package. import that package in appropriate scope. then you don't need to pass parameters with interface and hence you don't need to use uvm_config_db with interface parameter. only normal interface you have to set using uvm_config_db. example : //if_pkg.sv file package if_pkg; parameter DATA_WIDTH = 20 endpackage //interface.sv file import if_pkg :: * interface my_if (input logic clk); logic [DATA_WIDTH-1 : 0] data; endinterface //top.sv file import if_pkg::* module top; bit clk= 0 ; my_if inst_if (.clk(clk)); DUT #( .DATA_WIDTH(if_pkg::DATA_WIDTH) ) dut_inst( //ports ); initial begin uvm_config_db #(virtual my_if):: set(uvm_root::get(), "*" , "inst_if", inst_if); end endmodule So in above code DATA_WIDTH will be visible inside instance of my_if interface and you don't need to pass parameter to interface. It will be passed to DUT also
×
×
  • Create New...