er.akhilkumar
Full Member level 2
I am getting following elaboration errors while using parameterized interfaces:
ncelab: *E,TYCMPAT (TB top): formal and actual do not have assignment compatible data types (expecting datatype compatible with 'virtual interface interface_name#(.Integer_type_parameter(64))' but found an incompatible 'interface_name#(.integer_type_parameter(32)) instance' instead).
Everything is working fine when I am passing value to parameter equal to the default value. But when value passed is different than the default value it shows above error.
Following is the interface code:
interface interface_name #(parameter int integer_type_parameter = 64) ();
port declarations...
..........................
endinterface : interface_name
Following is interface's instantiation in Testbench top:
module testbench_top();
parameter int integer_type_parameter = 32; // when value is 64 everything is working fine
interface_name #(.integer_type_parameter(integer_type_parameter)) object_name ();
endmodule
Can anyone please help me in solving this problem?
Thanx
ncelab: *E,TYCMPAT (TB top): formal and actual do not have assignment compatible data types (expecting datatype compatible with 'virtual interface interface_name#(.Integer_type_parameter(64))' but found an incompatible 'interface_name#(.integer_type_parameter(32)) instance' instead).
Everything is working fine when I am passing value to parameter equal to the default value. But when value passed is different than the default value it shows above error.
Following is the interface code:
interface interface_name #(parameter int integer_type_parameter = 64) ();
port declarations...
..........................
endinterface : interface_name
Following is interface's instantiation in Testbench top:
module testbench_top();
parameter int integer_type_parameter = 32; // when value is 64 everything is working fine
interface_name #(.integer_type_parameter(integer_type_parameter)) object_name ();
endmodule
Can anyone please help me in solving this problem?
Thanx