04 2021 档案

摘要:概述 sequence可通过sequencer向drive发送你的待测case,如果一个sequencer只发送一个sequence是不需要仲裁的,但在实际使用中,如果一个sequencer接收了两个sequence或者更多的时候,会怎样发送各自sequence的case呢?如果你要发送的case需 阅读全文
posted @ 2021-04-27 17:15 验证cc 阅读(489) 评论(0) 推荐(0) 编辑
摘要:概述 测试点实际上是把设计的功能按层级分解成一个个最简单、最底层的功能点,化繁为简,方便测试用例的实现。测试点主要从功能规格(FS)与架构规格(AS)中提取。测试点分解需要保证的几点原则: 完备性,即不能遗漏任何功能点,特别是异常处理,边界处理,容错处理这些往往容易被忽视; 低耦合,不同测试点之间的 阅读全文
posted @ 2021-04-26 21:23 验证cc 阅读(1665) 评论(0) 推荐(0) 编辑
摘要:vim编译器常用的配置方式 将下面代码拷贝到_vimrc中,放在vim的安装目录下,这里修改的只是我们用户的配置文件。 source $VIMRUNTIME/vimrc_example.vim set nocompatible "不使用兼容模式 set nu "显示行号 syntax on "语法高 阅读全文
posted @ 2021-04-23 11:25 验证cc 阅读(132) 评论(0) 推荐(0) 编辑
摘要:概述 virtual 是OOP中的一种关键字,主要体现的是多态。虚函数是指一个类中你希望重载的成员函数 ,当你用一个基类指针或引用指向一个继承类对象的时候,调用一个虚函数时, 实际调用的是继承类的版本。整理了uvm中使用virtual常用的四种情况: virtual interface;virtua 阅读全文
posted @ 2021-04-13 10:27 验证cc 阅读(753) 评论(0) 推荐(0) 编辑
摘要:概述 从概念上来说,数字验证包含两方面的内容,一个是验证功能,另一个是验证时序。对应的仿真模型(不论是model,standard cell等)也不外乎这两个部分,功能部分由逻辑,udp元件或gate构成,时序部分则包括了时序反标和时序检查两小块。 平时我们所说的功能验证,也就是前仿真,实现了对功能 阅读全文
posted @ 2021-04-06 16:07 验证cc 阅读(3685) 评论(0) 推荐(0) 编辑
摘要:简介 可通过 -cm_hier 配置文件来控制覆盖率收集范围 Coverage Metrics覆盖指标: -cm vcs使用编译选项 -cm (line+cond+tgl)生成simv.vdb文件夹,仿真选项中使用-cm (line+cond+tgl),会在simv.vdb/snps/coverag 阅读全文
posted @ 2021-04-05 14:51 验证cc 阅读(2534) 评论(0) 推荐(0) 编辑
摘要:概述 TLM:Transaction Level Modeling(事务级建模),它是一个独立于语言的一个标准,常用于系统建模,加速软硬件协同开发。在芯片开发中,常配合system C使用来进行系统设计。最新的标准是OCSI TLM 2.0。 TLM的端口整理 端口的按照类型可以划分为三种: por 阅读全文
posted @ 2021-04-05 14:12 验证cc 阅读(732) 评论(0) 推荐(0) 编辑
摘要:概述 功能覆盖率指你对设计所实现功能特性的收集,验证的目的就是确保设计在实际环境中的行为正确。设计规范里详细说明了设备应该如何运行,而验证计划里则列出了相应的功能应该如何激励、验证和测量。 功能覆盖率是和设计意图紧密相连的,有时也称为”规范覆盖率“,而代码覆盖率则是衡量设计的实现情况。 覆盖率完备性 阅读全文
posted @ 2021-04-02 10:31 验证cc 阅读(1771) 评论(0) 推荐(0) 编辑
摘要:概述 在进行芯片验证时,最重要的一个环节就是完成对dut的覆盖率收集工作,覆盖率主要分为下面三类: 1.代码覆盖率 2.功能覆盖率 3.断言覆盖率 如何完成覆盖率收集? 代码覆盖率:是衡量验证进展的最简易的方式。它的作用是检查代码是否冗余,设计要点是否遍历,被检测的对象是RTL代码,而代码覆盖率的检 阅读全文
posted @ 2021-04-01 17:56 验证cc 阅读(6263) 评论(0) 推荐(1) 编辑