芯片工程师求职题目之验证篇(2)

news2024/9/20 8:11:25

1. 事件驱动的仿真器和和基于周期的仿真器有什么区别?

事件驱动的仿真器顾名思义就是根据事件(event)触发仿真进行的,在进入一个周期中,它会获取每个事件并通过设计传播求值,直到达到稳定状态的条件,接着进入下一个周期。事件被定义为一个设计中的任何输入刺激的变化。由于输入的到达时间和来自下游设计的信号反馈不同,一个设计可能在一个周期中被求值多次。主流EDA工具都是采用事件驱动的仿真器,比如Mentor QuestaSim,Synopsys VCS和Cadence Xcelium。

基于周期的仿真器没有时钟周期内的概念,每个逻辑单元在每个周期只求值一次,这有助于显著提高仿真速度。缺点是它不能真正检测信号的任何毛刺,并且它只能在完全同步的逻辑设计中工作的很好。由于在仿真期间没有考虑设计的时序,因此需要使用静态时序分析工具进行时序验证。基于周期的仿真器用的比较少,但在一些开发大型设计的公司中,它们是定制的。

2. 您将如何跟踪验证项目的进度?

要写好验证计划,验证计划根据场景和设计规格列出随机用例、直接用例和需要收齐的覆盖率的详细情况,并包含了验证环境开发的细节,包括激励生成和检查方法。

在项目早期阶段时,通过跟踪验证环境(激励生成器、检查器、监视器)、测试用例开发和功能覆盖率模型开发的完备性来跟踪验证进度。一旦开发了大多数测试用例和受约束随机生成其,那么测试用例通常会在服务器上做大规模回归,这时候可以根据回归通过率、漏洞率和功能覆盖率收敛情况来监控进度。

3. 您如何衡量验证的完备性,或者何时/如何说验证已经完成了?

当设计的实现行为与需求规范和设计规范匹配且没有任何错误时,可以称为功能验证完成了。为了实现这一点,我们需要对设计灌入各种激励,以涵盖所有可能得输入场景,并验证设计符合规范,没有任何错误。然而,随着设计的复杂性不断增加,几乎不可能定义所有可能得输入激励场景。此外,资源和时间的限制也使这种完备性的理想定义变得不切实际。

因此,在大多数项目中,验证的完整性是关于通过一组度量标准和最小化设计缺陷风险的过程所获得的信心。以下是为实现验证完备性的高可信度而需要遵循的一些度量标准和过程:

  • 评审验证计划和设计规范,确保所有细节都被理解和捕获;
  • 根据评审过的验证计划,确保环境开发、测试用例开发和功能覆盖率模型方面的开发的完备性,符合验证计划要求;
  • 审查验证环境的激励生成器、约束、检查器、断言和覆盖率模型的实现;
  • 确保所有的测试用例在回归模式下被启用,并且连续几周都没有失败,所有的覆盖率指标都得到满足或解释;
  • 确保bug率和未解决的bug为0,或可以很好解释为对设计没有影响;
  • 重要场景的波形检查;
  • 如果可能得话,确保formal验证也已经做完了;
  • 将最新的bug率和bug趋势与过去类似复杂度的成功项目进行比较;

4. 我们什么时候需要参考模型来验证RTL设计?使用参考模型的优点是什么?

参考模型通常是设计规范的不可综合模型,通常用C或者SystemVerilog等高级编程语言编写。参考模型有时是为了在周期级高精度或更高级别边界上匹配设计规范而实现的。例如:CPU的参考模型应该准确地模拟指令边界的状态,而AMBA总线协议的参考模型应该根据协议精确到周期级别。

参考模型通常用于checker/scoreboard,来对给定的激励输出预期的响应,这样就可以和实际结果或设计中的输出进行比较。

5. 什么是总线功能模型(BFM: Bus Functional Model)

传统上,总线功能模型(BFM)是用高级编程语言(如C/SystemVerilog)编写的不可综合的模型,它对总线接口的功能进行建模,并且可以连接到设计接口以模拟设计。在BFM的一侧将有一个在信号级别实现总线协议的接口,而另一侧将有一个支持发送或接收事务级传输类型包的接口。

随着这个定义的不断发展,在像UVM这样的方法论中,没有想BFM这样的真正组件,但功能是由driver, monitor和sequence等组件的集合实现的。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/733863.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Android:安卓开发采用Volley网络框架+MySQL数据库,实现从服务器获取数据并展示完成记单词APP

一、功能与要求 实现功能:设计一个记单词APP。服务器采用Tomcat,数据库采用Mysql。实现用户的注册登录功能以及单词的增删改查。 指标要求:实现UI布局;将系统数据保存到Mysql数据库中,并采用Volley网络框架实现从服务…

【机器学习核心总结】什么是随机森林

什么是随机森林 森林里有很多树,随机森林里有很多决策树。 随机森林是决策树的升级版,随机指的是树的生长过程。世上没有两片相同的树叶,随机森林中的树也各不相同。在构建决策树时,我们会从训练数据中有放回的随机选取一部分样本…

Kubernetes service服务的发布 - kube-proxy(负载均衡器)-IPVS

目录 Service Service将内部的pod暴露到外面,让用户可以访问 负载均衡策略: Service 的类型: 案例:Service服务发布案例 扩展:我们在案例再加入一个探针的使用 更改后的my_nginx.yaml文件: 创建Pod&…

ChatGLM2-6B发布,C-Eval超GPT4,支持32k上下文!

自清华大学数据挖掘实验室(THUDM)3月开源ChatGLM-6B已经过去了3个多月,最近他们又带来了性能全面提升的“船新”版本-ChatGLM2-6B。别看名字变化小,其实更新的模型性能是又有量又实用。不了解ChatGLM的小伙伴可以看我这篇文章&…

Java基础之五 反射

通过Java反射机制,可以在程序中访问已经装载到JVM中的Java对象的描述,实现访问、检测和修改描述Java对象本身信息的功能。 通过反射可以访问的主要描述信息 访问成员变量 常用方法:getFields()、getField(String name)、getDeclaredFields()…

第 353 场LeetCode周赛

A 找出最大的可达成数字 签到题 class Solution { public:int theMaximumAchievableX(int num, int t) {return numt*2;} };B 达到末尾下标所需的最大跳跃次数 动态规划: 定义 p i p_i pi​为跳至 i i i处所需的最大跳跃次数, 有状态转移方程 p i m a x { p j 1 ∣ 0 ≤ j &…

文档管理:PaperPort Professional 14.7 Crack

文档管理变得简单 PaperPort Professional 快速、轻松地访问重要文档对于保持组织平稳运行至关重要。与其浪费时间在文件夹中搜索所需的文件,不如在PC上扫描,转换,组织,组装和共享文档和图像,或者更好的是,…

vue对于数组的数据监听变化和object是不一样的吗?

我们知道vue对于数组的数据监听变化和object是不一样的,因为我们常说的Object.defineProperty是对象上面的方法,所以对于array数组需要实现另外一套变化侦测机制。 今天我们就来研究下。 在哪里收集依赖 array数据设计了新的变化侦测机制,…

阿里云服务器架构X86计算、ARM、GPU/FPGA、裸金属和超级计算集群

阿里云服务器架构有什么区别?X86计算、ARM计算、GPU/FPGA/ASIC、弹性裸金属服务器、超级计算集群有什么区别?阿里云服务器网分享云服务器ECS架构详细说明: 目录 阿里云服务器ECS架构说明 X86计算 ARM计算 GPU/FPGA/ASIC 弹性裸金属服务…

第八章:L2JMobius学习 – 游戏服务GameServer讲解

本章节我们来讲解GameServer服务,首先来查看它的文件结构 ai:游戏角色自动化处理,比如说,自动攻击。 cache:数据缓存,里面就一个HtmCache.java类,缓存HTML文件内容。 communitybbs:b…

【C语言】1-Visual C++ 2010 的简单使用和第一个 C 语言程序

1. Visual C++ 2010 的简单使用 1.1 面板介绍 1.2 新建C语言项目 打开 Visual C++ 2010,点击 New Project 根据下面的图示进行操作,其中需要注意 ③:这里输入的为项目名(建议和我的命名保持一致) ④:这里是项目存放的位置,可以自己选择,最好不要有中文路径(只要是使…

苹果用户要留意?女子FaceTime通话面临巨额骗局,损失高达160万

FaceTime通话是苹果提供的一项服务,可以让使用iOS、iPadOS设备或Mac电脑的用户进行视频或音频通话。只要知道对方的Apple ID,世界各地的苹果设备都可以通过该ID进行呼叫。 据报道,一名居住在上海金山的女性最近遭受了一种新型诈骗&#xff0c…

js逆向补环境-调试工具vscode与nodejs使用之无环境联调

目录 一、啊哈一、Nodejs安装1、nodejs最新版本的安装(windows)2、旧版nodejs更新成最新版本(windows)3、nodejs安装(linux) 二、vscode安装使用(windows)1、下载安装vscode2、vscode运行插件Code Runner安…

多元分类预测 | Matlab基于K近邻算法(KNN)的数据分类预测,多特征输入模型

文章目录 效果一览文章概述部分源码参考资料效果一览 文章概述 基于K近邻算法(KNN)的数据分类预测,多特征输入模型 多特征输入单输出的二分类及多分类模型。程序内注释详细,直接替换数据就可以用。程序语言为matlab,程序可出分类效果图,迭代优化图,混淆矩阵图。 部分源码

MAYA粒子爆炸

创建粒子替代 中心归零 只有一种石头 particleShape1.shitourand(0,5); 设置石头大小 等比例变小 particleShape1.daxiao<<0.2,0.2,0.2>>; 使用变量代替 float $daxiaorand(0.2,0.5); particleShape1.daxiao<<$daxiao,$daxiao,$daxiao>>; 非等比例缩…

【国家标准】GB 7713-87 科学技术报告、学位论文和学术论文编写格式

目 录 1 引言 2 定义 2.1 科学技术报告 2.2 学位论文 2.3 学术论文 3 编写要求 4 编写格式 5 前置部分 5.1 封面 5.2 封二 5.3 题名页 5.4 变异本 5.5 题名 5.6 序或前言 5.7 摘要 5.8 关键词 5.9 目次页 6 主体部分 6.1 格式 6.2 序号 6.3 引言(或绪论)…

基于stm32单片机的智能家居环境监控系统

​一.硬件方案 智能家居环境监控系统的整体电路主要由stm32单片机最小系统&#xff0c;光MQ-2烟雾传感器电路&#xff0c;红外人体检测电路&#xff0c;DS18B20温度传感器&#xff0c;LCD1602显示电路&#xff0c;水泵驱动电路&#xff0c;风扇驱动电路&#xff0c;LED指示灯&…

传输方式的分类【图解TCP/IP(笔记五)】

文章目录 传输方式的分类面向有连接型和无连接型面向有连接型面向无连接型 电路交换与分组交换根据接收端数量分类单播&#xff08;Unicast&#xff09;广播&#xff08;Broadcast&#xff09;多播&#xff08;Multicast&#xff09;任播&#xff08;Anycast&#xff09; 传输方…

ModaHub魔搭社区:Zilliz Cloud快速开始教程(一)

目录 前提条件 创建 Collection 查看 Collection 插入数据 本教程涵盖以下 Zilliz Cloud 集群操作指南: 创建 Collection查看 Collection插入数据向量搜索、向量查询、通过 ID 获取 Entity删除 Entity删除 Collection 前提条件 在本文档中,我们将使用 Milvus 的 SDK。…