• UVM入坑系列笔记(一)


      最近本人在做毕业设计,需要用到UVM搭建验证平台,故在网上查找相关资料,看了一些博客和科普,多少有些收获,记录在这里,以便以后复习查看。以下是本人根据网上学习资料整理的笔记,如果有什么不对的地方欢迎指正!

      那么,开始入坑吧!

    1. build_phase完成的工作主要有:

    (1) 完成实例化;

    (2) 完成config_db机制的get行为,即把其它component设置给此component的一些参数接收过来;

    2. agent主要有两种工作形式:UVM_PASSIVE和UVM_ACTIVE

    UVM_PASSIVE:agent以这种形式运行时,只监测总线而不驱动总线;

    UVM_ACTIVE:agent以这种形式运行时,既可以监测总线,也可以驱动总线;

    3.两个主要端口:uvm_blocking_get_port是一个TLM事务级端口,用于接收由uvm_analysis_port发送的信息,而uvm_analysis_port是发送信息的端口,其发送的消息会被前面的端口所接收。uvm验证平台的各个组件之间通过这两个端口来实现事务级别通信。

    4.scoreboard中一般使用一个队列来暂存从reference model得到的期望数据。

    5.uvm验证平台可以使用uvm_tlm_analysis_fifo把uvm_blocking_get_port和uvm_analysis_port连接;

    6.在UVM中,定义一个类但是没有实例化,一般来说是没有意义的,但是存在特殊的情况:对于一个静态类,即其成员变量都是静态的,不实例化也可以正常使用;

     

       未完待续..................

  • 相关阅读:
    mysql 单表查询
    socket 阻塞,同步、I/O模型
    I/O复用
    send函数和recv函数
    linux网络编程、系统编程
    TCP三次握手、四次挥手
    支持中文的PHP按字符串长度分割成数组代码
    php json_encode 处理中文
    php base64各种上传
    本地创建分支
  • 原文地址:https://www.cnblogs.com/chenwx-jay/p/UVM_TEST1.html
Copyright © 2020-2023  润新知