随笔分类 -  IC验证

摘要:VCS -- fgp 仿真加速 FGP 是什么 FGP (Fine-Grained Parallelism): 细粒度并行仿真技术;VCS利用FGP技术动态调整算法,能够优化并充分利用多核和众核处理器平台,提高仿真性能 Two-step flow: % vcs -fgp -full64 <other 阅读全文
posted @ 2022-10-12 10:20 Thisway2014 阅读(5089) 评论(2) 推荐(0) 编辑
摘要:VCS -- ucli save-restore的妙用 背景 跑了一两周的case 突然LSF崩溃,所有验证进度中断,ICer内心也是很奔溃的。 VCS 其实提供了一种save 仿真状态的功能,配合restore使用,可使仿真中断后,在save点重启仿真。 ucli 描述: Use this com 阅读全文
posted @ 2022-09-16 10:35 Thisway2014 阅读(3578) 评论(0) 推荐(0) 编辑
摘要:Synopsys VIP仿真中 UVM_ERROR处理 问题描述: 使用 Synopsys 的 SPI-VIP 进行仿真时,会报 UVM_ERRRO,如下 SPI VIP 中的描述如下: 分析原因 主要原因是多驱动的问题,需要 synopsys 分析,从仿真波形上看功能没有问题。 错误波形如下: 正 阅读全文
posted @ 2022-09-14 16:49 Thisway2014 阅读(1891) 评论(0) 推荐(0) 编辑
摘要:背景 VCS提供了一套对编译时间和仿真时间分析优化的工具,在compile 和simulation option中加入相应的option; 在simulation log path会多出simulation profile log: profileReport.html ; 打开html 分析各方法 阅读全文
posted @ 2022-09-14 16:14 Thisway2014 阅读(1800) 评论(0) 推荐(0) 编辑
摘要:介绍 Verdi Protocol Analyzer 和Verdi Transaction Debug中提及的一样,显示transaction的 “波形” 与具体信息。但是需要配合SNPS VIP使用,显示更多协议相关的信息: 如 latency 、bandwidth 等 配置 Compile Ti 阅读全文
posted @ 2022-08-17 17:20 Thisway2014 阅读(771) 评论(0) 推荐(0) 编辑
摘要:5. UVM -- suquence机制UVM -- suquence机制 1.1. sequence 机制的原理 1.2. sequence机制的使用 1.3. sequence 的启动 (2种方法) 1.3.1. 方法一:设置default_sequence 1.3.2. 方法二:手动启动sequence (更常用) task my_ 阅读全文
posted @ 2022-07-21 18:25 Thisway2014 阅读(684) 评论(0) 推荐(0) 编辑
摘要:4. UVM -- TLM通信机制与平台的connect1. 事务 tansaction 事务 tansaction 是一系列具有一定关系和功能的数据集合。 简单来说,一个tansaction就是把具有某一特定功能的一组信息封装在一起而成为的一个类; 事务是UVM平台中信息交互的基本单元 1.1. 从uvm_sequence_item扩展事务 1.2. 阅读全文
posted @ 2022-07-17 19:22 Thisway2014 阅读(924) 评论(0) 推荐(0) 编辑
摘要:3. UVM -- factory机制与平台组件构建3. UVM -- factory机制与平台组件构建 3.1. 什么是factory机制 UVM工厂机制可以使用户在不更改代码的情况下实现不同对象的替换; 工厂是UVM的一种数据结构。它的作用范围是整个平台空间,它有且仅有一个实例化对象 (即单实例类)。它是一个 多态构造器,可仅仅使用一个函数让用户 阅读全文
posted @ 2022-07-17 17:17 Thisway2014 阅读(1693) 评论(0) 推荐(0) 编辑
摘要:2. UVM -- phase机制与UVM验证平台的运行2. UVM -- phase机制与UVM验证平台的运行 2.1. UVM phase机制 phase机制可以将 UVM仿真阶段 层次化,即 使各个phase按先后顺序执行,同时也使处于同一phase中的层次化组件之间按顺序执行 ,达到同步仿真过程的效果。 phase机制主要包括以下三个主要部分,并 阅读全文
posted @ 2022-07-10 18:15 Thisway2014 阅读(1055) 评论(0) 推荐(0) 编辑
摘要:1. UVM -- 基础知识1. UVM -- 基础知识 1.1. 什么是UVM 硬件设计主要由几个 Verilog(.v)文件和一个顶部模块组成,其中所有其他子模块都实例化以实现所需的行为和功能。 IC验证需要 设计一个名为 testbench 的环境;用不同的刺激驱动设计,以观察其输出,并将其与预期值进行比较,以查看设计是 阅读全文
posted @ 2022-07-09 21:57 Thisway2014 阅读(2186) 评论(1) 推荐(4) 编辑
摘要:1. 背景说明 SoC 验证平台既有UVM部分又有C部分,这样就涉及UVM和C 参数统一的问题。脚本采用的是Makefile,下面探讨下通过cmd options将参数传递给sv和C。 2. 方法探讨 2.1. sv 从cmd define传参 makefile 里设置RUNOPTS sv 里使用 阅读全文
posted @ 2022-07-05 17:18 Thisway2014 阅读(614) 评论(0) 推荐(0) 编辑
摘要:什么是UVM sequence librarysequence library? 其本质是一个sequence, 相对于普通的sequence, sequence library有以下功能: 其他sequence可以向sequence library注册 可根据配置产生并且执行已经在其内部注册过的sequence 具有多种内嵌的选择sequen 阅读全文
posted @ 2022-06-19 22:47 Thisway2014 阅读(180) 评论(0) 推荐(0) 编辑
摘要:UVM Testbench Architecture UVM testbench 是使用SystemVerilog(动态)类对象与SystemVerilog(静态)接口和结构化层次结构中的模块交互构建的。层次结构由功能层组成,testbench 的中心是被测设计(DUT)。 事务处理器和testbe 阅读全文
posted @ 2022-06-16 22:18 Thisway2014 阅读(552) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示