How to pass an interface in checker.. endchecker block argument?

In reply to ben@SystemVerilog.us:

Hi Ben,

Thanks for suggesting that. I need to create multiple instance of the checker in my top module and for each instance the parameter is different. Can the let variable be overridden as was the case with parameters? Also is it legal to assign an input formal argument of the checker to the let variable as shown below?

checker ( input bit [3:0] no_of_bits_to_compare );

let WIDTH = no_of_bits_to_compare;

endchecker

The “WIDTH” is going to be used in an assertion property.