c4brian Posted July 31, 2015 Report Share Posted July 31, 2015 I am having a major hangup with RivieraPro... I bind an interface to a VHDL instance, but I am unable to set this interface into the configuration Database. interface whitebox_if( input logic some_signal, input logic some_other_signal ); endinterface MyDut dut (...); bind dut whitebox_if wb_if ( sig1, sig2); // works initial uvm_config_db #(virtual whitebox_if)::set(null, "*", "v_interfaces" , dut.wb_if); // fails!!! Fatal Error: ELAB2_0036 Unresolved hierarchical reference to "dut.wb_if" from module "dut_top" (module not found). Quote Link to comment Share on other sites More sharing options...
kirloy369 Posted August 24, 2015 Report Share Posted August 24, 2015 Probably you should contact Aldec's Technical Support or you could use this workaround - try to use binding to module instead binding to instance in your case it would be: bind MyDut whitebox_if wb_if ( sig1, sig2); instead yours: bind dut whitebox_if wb_if ( sig1, sig2); This should helps. Quote Link to comment Share on other sites More sharing options...
c4brian Posted August 25, 2015 Author Report Share Posted August 25, 2015 Just for reference.. Aldec support finally shared a workaround that seems to work. Yes, the syntax is a little strange, but this is an Aldec "wrapper" file path. virtual my_interface_if vif; vif = dut_top.\bind:dut_inst:sig_if .sig_if; // normally this would just be dut_top.sig_ifuvm_config_db #( virtual my_interface )::set( null , "*" , "my_interface", vif ) ; Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.