文章目录

  • 前言
  • 一、将仿真中的多个不同的timescale进行统一
  • 二、举个例子
  • 三、VCS timescale问题查找
  • 总结

前言

在RTL验证过程中,有可能会用到多个VIP,不同的VIP,有可能会要求用到不同的timescale,那么如何在同一个仿真环境中,将这些不同的timescale进行统一呢。


一、将仿真中的多个不同的timescale进行统一

每个VIP都会有几个在testbench顶层需要包含进去的文件,这些文件包括宏定义、接口interface、以及env的主体。如果将这些文件都放到testbench去include,那么testbench自身、以及不同VIP的include文件之间的timescale设置就会有冲突,可以通过下面的方法来将不同的timescale进行统一。

首先,将不同的VIP需要包含的文件拎出来;
其次,建议一个单独的文件,按照不同的VIP需要的timescale进行设置,中间加入`resetall这个宏;
最后,将这个文件加到仿真编译的选项里边去。

二、举个例子

举个例子:有个验证环境,用到了USB和SDIO的VIP,USB的VIP需要的timescale是1ps/1ps,SDIO的VIP需要的timescale是1ns/1ps,testbench用到的timescale是1ns/1ps。

对于上述场景,

首先,在testbench中设置1ns/1ps的timescale。

其次,建立一个tb_vip.sv的文件,在该文件中分别加入USB和SDIO的VIP需要包含的文件。

//tb_vip.sv
//=========USB VIP==================
`timescale 1ps/1ps
`include "svt_usb_if.sv"
`include "svt_usb_pkg.sv"`resetall    //=========SDIO VIP==================
`timescale 1ns/1ps
`include "nvs_sd_if.sv"
`include "nvs_sd_inc.sv"

最后,在编译选项中直接将这个文件加进去。

irun tb_vip.sv

三、VCS timescale问题查找

vcs仿真timescale问题查找选项

-diag timescale


总结

本文主要记录一下,仿真过程中,如何处理多个timescale共存的问题。

处理仿真中存在多个timescale的问题相关推荐

  1. 【system verilog】继续探究IC前端仿真中的“时间”,timescale,timeunit/timeprecision设置

    前言 仿真中的时间单位/时间精度设置是保证验证环境稳定高效的重要手段,但是很多场景下却常常被忽视.如果没有设置合理的相对统一的时间单位/时间精度,不仅延时.打印等信息会不准确,多模块/环境协同时也会隐 ...

  2. modelsim仿真中 do文件的写法技巧

    Modelsim之 DO文件简介 网上的关于DO文件的编写好像资料不多,比较杂,所以本人总结一下常用的简单语法,方便大家查看.其实本人也刚接触DO文件没多久,有纰漏很正常,欢迎指正批评,互相学习.PS ...

  3. FPGA篇(十二)仿真中 `timesclae的用法

    `timescale 1ns/1ps // 小实验: `timescale 1ns / 1ps 前面是刻度(小数点之前),后面是精度(小数点之后); // 一旦超过了精度,就会四舍五入(modelSi ...

  4. 3 设置网格数的大小_流体仿真中,六面体(Hex)网格的求解效率真的比四面体(Tet)高”很多”么?...

    流体仿真中,六面体(Hex)网格与四面体(Tet)网格的争论一直伴随着整个CFD的发展过程,坊间也流传着许许多多关于六面体网格.结构化网格.四面体网格.甚至是Cutcell网格等相关内容的种类繁多的观 ...

  5. matlab在伪随机码,MATLAB在伪随机码的生成及仿真中的应用

    第21卷 第3期计 算 机 仿 真2004年3月 文章编号:1006-9348(2004)03-0149-04 MAT LAB在伪随机码的生成及仿真中的应用 郭海燕,毕红军 (北方交通大学电子信息工程 ...

  6. PROBOT_G603双臂GAZEBO+MoveIt!仿真中配置手眼相机和夹爪

    PROBOT_G603双臂GAZEBO+MoveIt!仿真中配置手眼相机和夹爪 问题描述 安装双臂模型 修改urdf文件 Gripper文件修改 Gripper添加到机械臂上 配置MoveIt! 配置 ...

  7. 流体仿真中,六面体(Hex)网格的求解效率真的比四面体(Tet)高”很多”么?

    作者 | 张杨 流体仿真中,六面体(Hex)网格与四面体(Tet)网格的争论一直伴随着整个CFD的发展过程,坊间也流传着许许多多关于六面体网格.结构化网格.四面体网格.甚至是Cutcell网格等相关内 ...

  8. 开关电源matlab仿真文件,《MATLAB+在开关电源仿真中的应用.pdf》-支持高清全文免费浏览-max文档...

    您所在位置:网站首页 > 海量文档 &nbsp>&nbsp计算机&nbsp>&nbspmatlab MATLAB+在开关电源仿真中的应用.pdf3页 ...

  9. matlab motor,MATLAB在电机仿真中的应用 Application of MATLAB in motor simulation.pdf

    MATLAB在电机仿真中的应用 Application of MATLAB in motor simulation 2009年第3l卷 电气传动自动化 V01.31.No.4 DRIVE 2009.3 ...

最新文章

  1. 以sysdba身份登录oracle报ORA-1031权限不足错误之完美分析
  2. Centos7使用yum源安装mysql5.7和redis
  3. dfs遍历和bfs遍历python_广度优先遍历(BFS)和深度优先遍历(DFS)
  4. SpringMVC的请求-文件上传-客户端表单实现
  5. 微软中国望京新办公楼一游(下)
  6. Docker系列之一:在线安装docker和下载镜像
  7. Crystal Reports基础知识
  8. 数据库索引的概念和分类
  9. Win11不能拖拽图片到任务栏软件上快速打开怎么办
  10. 问道娃娃进阶技能学习方法及技能效果图文介绍
  11. c语言中字符后u代表什么意思,C语言中的0U或1U是什么意思?
  12. 计算机专业的可迁移技能,动词可迁移技能的发现.PPT
  13. 在线生成网址二维码的API
  14. Flex布局做出自适应页面--语法和案例
  15. 微信小程序全局变量改变监听
  16. 2019中国智能语音的发展历程、现状及前景分析
  17. word缺失字体问题
  18. 数学建模学习笔记(第五章:6个动态模型-微分方程的建立与分析)
  19. FPGA实现图像任意位置显示,串口协议控制显示位置,提供工程源码和技术支持
  20. vue报错 Avoided redundant navigation to current location: “/search“

热门文章

  1. 【转】如果你生在1993、94,那你一定会懂。
  2. 云厂商第一家,腾讯安全获国家级信息安全服务资质“双认证”
  3. android百度地图拖拽地图定位,百度地图的定位以及拖拽(显示坐标位置)
  4. 基于Python+Tkinter GUI 的模式识别水果分类小程序
  5. English Sources
  6. 前端框架 Electron 使用总结
  7. 练习-定义和调用求最大公约数和最小公倍数的函数
  8. 一个ServiceHost寄宿多个服务
  9. 6.3数据粒度的转换
  10. WORD2010设置正文页码(不包括目录和封皮)