Skip to content

Instantly share code, notes, and snippets.

@dvtalk
Last active July 29, 2024 01:58
Show Gist options
  • Save dvtalk/c86610be744485805d35a21096d3342d to your computer and use it in GitHub Desktop.
Save dvtalk/c86610be744485805d35a21096d3342d to your computer and use it in GitHub Desktop.
uvm_config_db note

Why using

  • Avoid dependent between object.
  • Avoid OOP restriction when use factory override.
    • For example: if we assign object directly top_env.module_a_agent.m_obj = m_obj; However, the m_obj only exist in the overriden type of module a agent --> issue.
  • In sequence to get data, comp handle.

Why not using

  • From uvm cookbook, intensive use of uvm_config_db slows simulation
    • Only use with class type, not primitive type variable.
    • Do not polling for change from uvm_config_db.
    • Use specific path/inst, do not use "*".
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment