zoukankan      html  css  js  c++  java
  • UVM环境(一)

    1)如何避免绝对路径的出现:绝对路径一般都是用在信号的连接关系上,这样可以用virtual interface,来通过句柄的赋值来动态的建立连接关系。那么顶层模块怎么

                                         样将interface的句柄赋值给driver/monitor,通过config_db,必须显式的指出路径完成句柄赋值。而且config_db是一个参数化的

                                         类,参数类型是要传输的类型。set和get是两个静态function。一般放在test的initial过程块中或其他build_phase完成参数配置。

    2)objection机制:成对出现的raise_objection和drop_objection,通过event事件的触发来控制phase的运行时间。(限制:必须在第一个消耗仿真时间的语句之

                            前,进行raise)。

    3)factory机制:使用宏定义机制uvm_component_utils(),注册组件在UVM环境中,这样config_db的时候也才找得到路径。当运行run_test(env)时,UVM开始

                          从自身的build_phase开始执行各个phase,所以一般在env的build_phase中引入new(),构建各个组件。相对于component而已,UVM中的顶

                          层是uvm_test_top。另一类的宏定义是uvm_object_utils。

                         主要通过参数化的类这样的方式来实现,即通过字符串的名字来实例化类

    4)phase机制:UVM中的phase都是一个个function/task,只不过UVM对它们有特殊的event联系,可以直接通过run_test()启动,并严格按已规定好的执行顺序来执行

  • 相关阅读:
    <转>WCF中出现死锁或者超时
    无连接服务器与面向连接的服务器
    Linux系统调用
    vim文本删除方法 Linux
    深入了解C指针
    linux下c语言实现双进程运行
    *p++、(*p)++、*++p、++*p 的区别
    快速了解yuv4:4:4 yuv4:2:2 yuv 4:1:1 yuv 4:2:0四种YUV格式区别
    文件通过svn updata更新不到,并且svn st显示被删除的解决办法
    [非常重要的总结] Linux C相关函数
  • 原文地址:https://www.cnblogs.com/-9-8/p/4434680.html
Copyright © 2011-2022 走看看