数字IC验证高频面试问题整理附答案(二)

近日后台有同学私信还想要验证的面试题目,这不就来了~

Q16.权重约束中”:=”和”: /”的区别

: =操作符表示值范围内的每一个值的权重是相同的,比如[1:3]:=40,表示1,2,3取到的概率为40/120;

:/操作符表示权重要平均分到值范围内的每一个值,比如[1:3]:/60,表示1,2,3取到的概率为20/60。

Q17.rand和randc区别

rand: 表示随机,比如有56个数,每次的随机概率都是1/56;
randc: 表示周期性随机,比如56个数,第一次随机的概率为1/56,第二次随机的概率为1/55,以此类推。

Q18.break、continue和returen的含义用法

break 语句结束整个循环。
continue 立即结束本次循环,继续执行下一次循环。
return 语句会终止函数的执行并返回函数的值(如果有返回值的话)。

Q19.function中return语句执行之后,function里剩下的代码语句还会执行吗

return之后,function里剩下的语句不能执行,其是终止函数的执行,并返回函数的值。

Q20.触发器和锁存器的区别

触发器: 时钟触发,受时钟控制,只有在时钟触发时才采样当前的输入,产生输出。

锁存器: 由电平触发,非同步控制。在使能信号有效时锁存器相当于通路,在使能信号无效时锁存器保持输出状态。触发器由时钟沿触发,同步控制。

锁存器对输入电平敏感,受布线延迟影响较大,很难保证输出没有毛刺产生;触发器则不易产生毛刺。

Q21.为什么要使用两级触发器进行同步

使用二级触发器进行同步可以极大的避免亚稳态的出现:

至于为什么“打两拍”可以减少亚稳态,我觉得根本原因是在于寄存器是一个双稳态器件,只有0和1两种稳定的状态。在绝大多数时候,第一级Flop的Q端,即使出现亚稳态,也会在一个时钟周期内稳定下来,这样第二级Flop所采到的就是一个稳定的值。“打两拍”就是利用这一点,切断了亚稳态的传播。

Q22.setup和hold违例分别是什么

setup time是指在时钟有效沿之前,数据输入端信号必须保持稳定的最短时间。
hold time是指在时钟有效沿之后,数据输入端信号必须保持稳定的最短时间。

hold time时序检查确保新数据不会在触发器稳定输出初始数据之前过早到达D端而覆盖其初始数据。
[图片]

总结为一句话:当前待传输的数据,相对于Capture edge来说,必须早来(setup time)晚走(hold time)。

Q23.SVA中and、intersect、or、throughout、$past如何使用

and:可以按照逻辑与的方式组合两个序列,当两个序列都匹配时,整个属性成功。

示例:
property p;
sequence_a and sequence_b;
endproperty
注意】sequence_a和sequence_b的检查起始点必须一样,但是两者结束的结束点可以不一样,整个属性的成功点以两个sequence中最后一个成功的sequence的匹配点为属性的成功点。
or:可以按照逻辑或的方式组合两个序列,当两个序列有一个匹配时,整个属性成功。
示例:
property p;
sequence_a or sequence_b;
endproperty
注意】sequence_a和sequence_b的检查起始点必须一样,但是两者结束的结束点可以不一样,整个属性的成功点取决于最早匹配成功的sequence,只要两个序列有一个匹配成功,整个属性就认为匹配。

intersect两侧的表达式都是sequence,不能是property,使用intersect时需要确保其两侧的sequence必须同时开始,且当两个sequence最终同时匹配时才认为两个序列的intersect匹配,即两个sequence匹配的长度必须相同,intersect操作符和and操作符很相似,但是and没有要求两个序列最终匹配时同时匹配。

在SVA中有时需要某些信号在一个序列的检查过程中一直保持一个状态,此时就可以使用throughout操作符,当这些信号的状态发生不期望的变化时,序列的检查即认为失败。

past主要用于检查当前表达式前一个时钟周期(如果不指定number_of_ticks,默认指向前一个时钟周期)值是否为真,如果位真则$past返回为真。其格式如下:
past(expression[,number_of_ticks]);
其中number_of_ticks可以指定检查当前时刻之前number_of_ticks个周期的采样值.

Q24.SVA中”->”和”=>”区别

@ (posedge clk) a |-> b 断定clk上升沿后,a事件"开始发生",同时,b事件发生
@ (posedge clk) a |=> b 断定clk上升沿后,a事件开始发生,下一个时钟沿后,b事件开始发生。

Q25.如何关闭约束

根据不同需要,来选择使能哪些约束块,禁止哪些约束块的要求,可以使用内建的constrai nt_mode()函数打开或者关闭多个约束块;rand_mode()函数打开或者关闭随机变量。

Q26.deep copy和shallow copy区别

如果拷贝的对象里的元素只有值,没有引用,那浅拷贝和深拷贝没有差别,都会将原有对象复制一份,产生一个新对象,对新对象里的值进行修改不会影响原有对象,新对象和原对象完全分离开。

如果拷贝的对象里的元素包含引用(像一个列表里储存着另一个列表,存的就是另一个列表的引用),那浅拷贝和深拷贝是不同的,浅拷贝虽然将原有对象复制一份,但是依然保存的是引用,所以对新对象里的引用里的值进行修改,依然会改变原对象里的列表的值,新对象和原对象完全分离开并没有完全分离开。而深拷贝则不同,它会将原对象里的引用也新创建一个,即新建一个列表,然后放的是新列表的引用,这样就可以将新对象和原对象完全分离开。

Q27.队列常用的方法有哪些

队列常用的使用方法:insert,delete, push_back和pop_front
Push插入,pop取出
Front前边,back后边

Q28.local和protected区别

类中如果没有指明访问类型,那么成员的默认类型是public,子类和外部均可以访问成员。
如果指明了访问类型是protected,那么只有该类或者子类可以访问成员,而外部无法访问。
如果指明了访问类型是local,那么只有该类可以访问成员,子类和外部均无法访问。

Q29.常用的debug方法有哪些

1.打印显示
2.设置断点
3.波形分析

Q30.亚稳态的危害

亚稳态是指触发器无法在某个规定时间段内达到一个可确认的状态。
亚稳态违背了时序,无法在规定的时间内达到稳定,且亚稳态具有传输功能,会传递给后一级的触发器,从而导致电路出错。亚稳态最后会稳定下来,但是所需的时间较长。

共150道验证高频面试题整理(含答案)
在这里插入图片描述

篇幅限制,IC验证面试题目就不一一罗列了,大家如果需要面试题目,以及想了解简历上需要注意的问题,或者面试前需要准备的东西,都可以跟工程师先了解一下(所有面试题目可领)

这里放个入口:IC验证面试题目

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

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Devart dbForge Studio for MySQL Crack

Devart dbForge Studio for MySQL Crack dbForge Studio for MySQL是一个用于MySQL和MariaDB数据库开发、管理和管理的通用GUI工具。IDE允许您通过直观的界面创建和执行查询、开发和调试存储例程、自动化数据库对象管理、分析表数据。MySQL客户端提供了数据和模式比较和同步工具…

单例模式和工厂模式

目录 今日良言:关关难过关关过,步步难行步步行 一、单例模式 1.饿汉模式 2.懒汉模式 二、工厂模式 今日良言:关关难过关关过,步步难行步步行 一、单例模式 首先来解释一下,什么是单例模式。 单例模式也就是单个…

AWS——01篇(AWS入门 以及 AWS之EC2实例及简单实用)

AWS——01篇(AWS入门 以及 AWS之EC2实例及简单实用) 1. 前言2. 创建AWS账户3. EC23.1 启动 EC2 新实例3.1.1 入口3.1.2 设置名称 选择服务3.1.3 创建密钥对3.1.4 网络设置——安全组3.1.4.1 初始设置3.1.4.2 添加安全组规则(开放新端口&…

【夜深人静学习数据结构与算法 | 第十二篇】动态规划——背包问题

目录 前言: 01背包问题: 二维数组思路: 一维数组思路: 总结: 前言: 在前面我们学习动态规划理论知识的时候,我就讲过要介绍一下背包问题,那么今天我们就来讲解一下背包问题。 在这…

Tailwind CSS:简洁高效的工具,提升前端开发体验

112. Tailwind CSS:简洁高效的工具,提升前端开发体验 1. 什么是Tailwind CSS? Tailwind CSS是由Adam Wathan、Jonathan Reinink、David Hemphill和Steve Schoger等人共同创建的一种现代CSS框架。与传统的CSS框架不同,Tailwind CS…

mysql安装教程保姆级

MySQL免安装本地运行 1.下载MySQL2.创建install.bat3.init.sql 初始创建4.环境变量配置5.运行 install.bat 管理员权限运行6.连接成功遇到的问题 1.下载MySQL ①地址:https://downloads.mysql.com/archives/community/ ②解压 2.创建install.bat 放在mysql>b…

AI相机“妙鸭相机”原理分析和手动实现方案

妙鸭相机 一个通过上传大约20张照片,生成专属自拍。在2023年7月末爆火,根据36Kr报道,妙鸭相机系阿里系产品,挂靠在阿里大文娱体系下,并非独立公司。 使用方法是上传20张自拍照片,之后可以选择模板生成自己…

xlrd与xlwt操作Excel文件详解

Python操作Excel的模块有很多,并且各有优劣,不同模块支持的操作和文件类型也有不同。下面是各个模块的支持情况: .xls.xlsx获取文件内容写入数据修改文件内容保存样式调整插入图片xlrd√√√xlwt√√√√√xlutils√√√√xlwings√√√√√…

[openCV]基于拟合中线的智能车巡线方案V1

import cv2 as cv import os import numpy as np# 遍历文件夹函数 def getFileList(dir, Filelist, extNone):"""获取文件夹及其子文件夹中文件列表输入 dir:文件夹根目录输入 ext: 扩展名返回: 文件路径列表"""newDir d…

【具有非线性反馈的LTI系统识别】针对反馈非线性的LTI系统,提供非线性辨识方案(SimulinkMatlab代码实现)

💥💥💞💞欢迎来到本博客❤️❤️💥💥 🏆博主优势:🌞🌞🌞博客内容尽量做到思维缜密,逻辑清晰,为了方便读者。 ⛳️座右铭&a…

Stable Diffusion教程(7) - PS安装AI绘画插件教程

配套教程视频:https://v.douyin.com/Uyux9F6/ 1. 前置条件 安装了stable diffusion 还没安装的从知识库安装 阿超的AI绘画知识库 语雀 安装了ps2023 还没安装的从网盘下载Win版 PS 2023【必须win10、11】.rar官方版下载丨最新版下载丨绿色版下载丨APP下载-12…

字典与数组第5讲:数组区域内,数组公式的编辑和删除

【分享成果,随喜正能量】我们的心和宇宙本是相通的,所以生命内在蕴含了无限的智慧,但在没有开发没有证悟之前,生命是渺小而短暂的……..。 《VBA数组与字典方案》教程(10144533)是我推出的第三套教程&#…

Idea中侧面栏不见了,如何设置?

一、打开idea点击File然后点击Setting 二、点击Appearance,然后划到最下面,勾选Show tool windows bars和Side-by-side layout on the left 三、侧面栏目正常显示

pyspark使用XGboost训练模型实例

遇到一个还不错的使用Xgboost训练模型的githubhttps://github.com/MachineLP/Spark-/tree/master/pyspark-xgboost 1、这是一个跑通的代码实例,使用的是泰坦尼克生还数据,分类模型。 这里使用了Pipeline来封装特征处理和模型训练步骤,保存为…

【LeetCode每日一题】——304.二维区域和检索-矩阵不可变

文章目录 一【题目类别】二【题目难度】三【题目编号】四【题目描述】五【题目示例】六【题目提示】七【解题思路】八【时间频度】九【代码实现】十【提交结果】 一【题目类别】 矩阵 二【题目难度】 中等 三【题目编号】 304.二维区域和检索-矩阵不可变 四【题目描述】 …

JS进阶-Day3

🥔:永远做自己的聚光灯 JS进阶-Day1——点击此处(作用域、函数、解构赋值等) JS进阶-Day2——点击此处(深入对象之构造函数、实例成员、静态成员等;内置构造函数之引用类型、包装类型等) 更多JS…

【C++】—— 多态常见的笔试和面试问题

序言: 在上期,我们对多态进行了详细的讲解。本期,我给大家带来的是关于有关多态常见的笔试和面试问题,帮助大家理解记忆相关知识点。 目录 (一)概念查考 (二)问答题 1、简述一下…

C数据结构与算法——哈希表/散列表创建过程中的冲突与聚集(哈希查找) 应用

实验任务 (1) 掌握散列算法(散列函数、散列存储、散列查找)的实现; (2) 掌握常用的冲突解决方法。 实验内容 (1) 选散列函数 H(key) key % p,取散列表长 m 为 10000,p 取小于 m 的最大素数; (2) 测试 α…

阿里云安全组设置

简介​ 云主机安全组必须打开如下端口: ssh:22http:80https:443ftp:21、20000~30000 阿里云安全组端口开放教程​ 腾讯云安全组端口开放教程​ 华为云安全组端口开放教程​

C 语言高级2-多维数组,结构体,递归操作

1. 多维数组 1.1 一维数组 元素类型角度:数组是相同类型的变量的有序集合内存角度:连续的一大片内存空间 在讨论多维数组之前,我们还需要学习很多关于一维数组的知识。首先让我们学习一个概念。 1.1.1 数组名 考虑下面这些声明&#xff1…