首页 > 其他分享 >关于UVM寄存器模型的理解

关于UVM寄存器模型的理解

时间:2023-08-20 14:22:05浏览次数:415  
标签:RAL sequence adapter uvm 寄存器 模型 UVM

UVM中的RAL寄存器模型的意义:让开发者能够方便,快速地配置dut的寄存器。

RAL寄存器模型的实质:仍然是UVM中的一个类,但不是作为组件,而是和sequence一样,在basetest中被实例化和使用。本质上,RAL模型与DUT的通信还是依赖于agent的,其顺序是RAL模型通过发起sequence,信息经过adapter转换,给到agent的sequencer,最终由driver来和dut进行通信。

 

 

 

实现RAL寄存器模型的逻辑:1设计并实现RAL寄存器模型。 2在basetest中实例化,并做好配置,连接等工作。 3调用rm(register model)的句柄,实现前门、后门访问。

用什么方法实现一个RAL:

1 通过继承uvm_reg, uvm_reg_block来构建寄存器模型(利用到的知识有 uvm_reg的层次,configure等的function)。

2 构建adapter,作为sequence和sequencer的中间件,在adapter内部实现reg2bus,bus2reg的function。

 register model 会发送给sequence一个uvm_reg_bus_op变量(这条从rm到seuqence的路径不需要写代码),adapter根据方向调用reg2bus/bus2reg,根据读/写请求,在transaction中传递信息。

3 在basetest中实例化register model和adapter, 

  这一步骤要做两件事情,第一,对rm进行configure,build, lock, reset等操作,第二,然后对其中的default_map,进行set_sequencer.

 

标签:RAL,sequence,adapter,uvm,寄存器,模型,UVM
From: https://www.cnblogs.com/juremy420/p/17643960.html

相关文章

  • llm 多模态通用大模型(nlp/cv)知识讲解
    模型算法(最难,模型结构与训练方法)数据(最耗时,数据与模型效果之间的关系)算力(GPU显卡+模型量化) 模型参数量、训练数据量:模型参数量决定整个模型的理论效果训练数据量决定整个模型的实际效果 多模态:用于表示某种信息的模式(图片、文字、语音、视频)通过各种预训练模型将信......
  • 知识图谱入门:使用Python创建知识图,分析并训练嵌入模型
    本文中我们将解释如何构建KG、分析它以及创建嵌入模型。构建知识图谱加载我们的数据。在本文中我们将从头创建一个简单的KG。 https://avoid.overfit.cn/post/7ec9eb11e66c4b44bd2270b8ad66d80d......
  • Dart 是不是单线程模型?是如何运行的?
    引用《Flutter中文网》里的话:Dart在单线程中是以消息循环机制来运行的,其中包含两个任务队列,一个是“微任务队列”microtaskqueue,另一个叫做“事件队列”eventqueue。入口函数main()执行完后,消息循环机制便启动了。首先会按照先进先出的顺序逐个执行微任务队列中的任务,当所......
  • 高级定时器寄存器
    TIMx_CR1TIM1&TIM8controlregister1TIM1和TIM8控制寄存器1TIMx_CR2TIM1&TIM8controlregister2TIM1和TIM8控制寄存器2TIMx_SMCRTIM1&TIM8slavemodecontrolregisterTIM1和TIM8从模式控制寄存器TIMx_DIERTIM1&TIM8DMA/interruptenablereg......
  • Netty核心功能与线程模型
    Netty初探NIO的类库和API繁杂,使用麻烦:需要熟练掌握Selector、ServerSocketChannel、SocketChannel、ByteBuffer等。开发工作量和难度都非常大:例如客户端面临断线重连、网络闪断、心跳处理、半包读写、网络拥塞和异常流的处理等等。Netty对JDK自带的NIO的API进行......
  • 利用text-generation-webui快速搭建chatGLM2-6b/LLAMA2-7B-chat大模型运行环境
    text-generation-webui 是一个基于Gradio的LLMWebUI开源项目,可以利用其快速搭建各种文本生成的大模型环境。一、安装text-generation-webui的readme其实已写得相当详细了,这里就不再重复,只说1个可能存在的坑:安装peft安装卡住requirements.txt中有一些依赖项,需要访问gith......
  • EinScan-S软件构建物体的空间三维模型:编码结构光
      本文介绍基于EinScan-S软件,实现编码结构光方法的空间三维模型重建的具体操作。(基于EinScan-S的编码结构光方法空间三维模型重建)  上一篇文章3DSOM软件基于物体的照片构建空间三维模型的方法详细介绍了基于3DSOM的侧影轮廓方法物体空间三维模型重建;接下来,本文我们将在一款......
  • 如何使用Git LFS下载大模型权重
    如何使用GitLFS下载大模型权重大语言模型的权重文件通常比较大,直接从浏览器中下载的话不太方便。我们可以使用GitLFS获得更好的下载体验。GitLFS(大文件存储)是Git的一个扩展,允许我们更高效地处理大文件。安装gitlfsinstall或者sudoapt-getinstallgit-lfs下载以清......
  • AI百度文心一言大语言模型接入使用(中国版ChatGPT)
    一、百度文心一言API基于百度文心一言语言大模型的智能文本对话AI机器人API,支持聊天对话、行业咨询、语言学习、代码编写等功能.二、使用步骤1、接口重要提示:建议使用https协议,当https协议无法使用时再尝试使用http协议请求方式:POSThttps://luckycola.com.cn/ai/openwx......
  • Gitflow分支管理模型
    1前言Gitflow是一个Git分支管理模型,由VincentDriessen于2010年发布在其个人网站的一篇博文中《AsuccessfulGitbranchingmodel》,该模型适用于多版本管理的项目,能够有效的促进团队成员之间的协作,提升代码的清晰度。2概览Gitflow工作流程如下:如上图,Gitflow流程中......