hii…
i have configuration class .
need to access those variables throughout environment for that im setting the handle in test
like this uvm_config_db #(int)::set(this,“*”,“cfg”,cfg);
getting in lower level components
for this im created object and accessing the variables but im getting below error
please let me know the meaning of this error
Stack pointer: 0x7f32f3e81bb0
Local variable address: 0x7f32f3e81fcf
KERNEL: Fatal Error: System exception occurred: SIGSEGV. Cannot continue
here im sharing my link
check the bast test, environment,uvm_monitor,
The uvm_config_db calls need to be typed appropriately. You are using ‘int’ when you should be using the appropriate data type that matches the object:
Also, you should always check the return code of a get() to ensure that it worked correctly.
if (!uvm_config_db#(uart_config)::get(this,"","cfg",cfg)) `uvm_fatal(get_name(), "No configuration provided");
have one more doubt
1.my config cls is a object entity so i am creating object by using new method or we need to create by using create method
2. similarly sequence also since its object but y we are creating the object by using create method
3. setting in test if i am trying to get in transaction class that’s not accepting y
can u plz give me the brief explanation im little bit confusion plz…
hi…
im setting the cfg handle in test here i am creating the object and is it necessary to create object again when we are getting the handle in lower level
Tq so much
3. Qus is
I’m setting the config db and trying to get in transaction class it means sequence item class
In transaction class I’m declaring the all the variables
Plz check my link in that refer uart_sequence_item
You already have all of the configuration information in the configuration object. Don’t duplicate the information in the sequence_item. The sequence_item should only contain the information relative to the transaction (rx_data, tx_data).