2024年数字IC秋招-复旦微电子-数字前端/验证-笔试题

文章目录

  • 前言
  • 一、基础题/选做题
    • 1、什么是DMA,主要优点是什么,为什么这是它的优点
    • 2、SV的代码如下,给出$display中变量的值
    • 3、列出4bit格雷码编码,画出二进制码转格雷码电路图
    • 4、如何从慢时钟域捕获快时钟域脉冲信号,画出电路图或写出verilog代码
    • 5、请分别计算下图所示时序路径的setup slack和hold slack,并判断是否存在违例。各个器件和组合逻辑延时如图所示,其中DFF1和DFF2的setup时间为0.2 ns, hold为0.1 ns,时钟CLK周期为10 ns.
    • 6、谈谈对DFT的理解
    • 7、如果在电路中使用如下两种结构的时钟门控电路:
    • 8、请根据如下简单通讯电路的描述,给出验证思路或者方案
    • 9、用条件编译语句generate实现如下电路
    • 10、如下图所示,有两个异步时钟CLK1、CLK2,均为高速时钟,Q1为CLK1时钟域的信号,CLK2对Q1采样。请问可否以STA保证路径的时序?为什么?
    • 11、仿真不能继续进行,stuck在一点不动,可能是什么原因?
    • 12、请描述验证的考核指标覆盖率有哪些?并且简述其意义是什么。
    • 13、检测一个输入信号i_s,当i_s宽度大于等于一个clock时钟周期时,在下一个时钟沿输出信号o_s为一个clock时钟周期的高电平。请用verilog语言实现。(声明、模块头可以省略)
    • 14、请问如下电路中,所使用的两级同步电路是否正确?为什么?
    • 15、如何测试如图所示电路的SA0 fault?请写出所需加载激励以及对应输出。
    • 16、什么是竞争与冒险,解决竞争与冒险的方式有哪些?
    • 17、请简述集成电路设计流程,并给出该流程中各环节所用到的EDA工具(注:不局限于数字前端;各环节至少给出一种EDA工具)
    • 18、请简述latch与DFF的区别
    • 19、使用verilog function方式实现下面的prbs多项式,输出位宽为20bit:
    • 20、以下电路中,路径FF0/CK -> FF1/RN是否可以通过STA保证其时序满足器件要求?
    • 21、关于task的调用问题验证平台,的输出是什么?
    • 22、一个简单的仿真验证平台,有哪几部分构成?仿真平台应提供哪些关键信号?UVM都有哪些组件?什么是工厂模式?
    • 23、用CMOS电路画出以下表达式:AB+~(CD)
    • 24、数字电路采用Verilog完成设计,请问什么是RTL级设计?
    • 25、阻塞赋值与非阻塞赋值的区别,并举例一个简单的代码。


前言

笔试题型:基础题(10个) + 选做题(5个)
笔试平台:百一测试(电脑监控)
笔试时间:2h

做题感受:题目全部都是大题目,题量很大,压根写不完,而且做完一个部分才能跳到下一个部分,建议想不出来思路的直接立马放弃做下面的题目。


一、基础题/选做题

1、什么是DMA,主要优点是什么,为什么这是它的优点

2、SV的代码如下,给出$display中变量的值

class Packet;
	rand intlen;
	constraint c_short {len inside {[50-100]};}
	constraint c_long {len inside {[500:1000]};}
endclass
Packet P;
initial begin
	p =new();
	p.c_short.constraint_mode(0);
	assert (p.randomize());
	$display("len = %0d".p.len);
end
class ori_tran; 
	rand bit[31:0] i_a;
	rand bit[31:0] i_b;
	constraint test_cons{
		i_a == 'h10;
		i_ b== 'h12;}
endclasse
class div_tran extends ori_ran;
constraint test_cons{
	i_b == 'h22;
}
endclass
initial begin
	p=new();
	p.c_shoxt.constraint.mode(0);
	assert(p.randomize());
	$display("len = %0d",p.len);
end
class ori_tran; 
	rand bit[31:0] i_a;
	rand bit[31:0] i_b;
	constraint test_cons{
		i_a == 'h10;
		i_ b== 'h12;}
endclasse
class div_tran extends ori_ran;
constraint test_cons{
	i_b == 'h22;
}
endclass
initial begin
	p=new();
	assert(p.randomize());
	$display("i_a = %0h, i_b = %0h",p.i_a, p.i_b);
end

3、列出4bit格雷码编码,画出二进制码转格雷码电路图

4、如何从慢时钟域捕获快时钟域脉冲信号,画出电路图或写出verilog代码

5、请分别计算下图所示时序路径的setup slack和hold slack,并判断是否存在违例。各个器件和组合逻辑延时如图所示,其中DFF1和DFF2的setup时间为0.2 ns, hold为0.1 ns,时钟CLK周期为10 ns.

在这里插入图片描述

6、谈谈对DFT的理解

7、如果在电路中使用如下两种结构的时钟门控电路:

在这里插入图片描述
(1)请问会对电路产生什么影响(至少两种)?请画出相关时序图进行说明
(2)如何针对上述两种电路进行相应的修改?请画出电路结构图,并附上时序图进行说明如何消除上述影响

8、请根据如下简单通讯电路的描述,给出验证思路或者方案

该电路为单线通讯电路,并作为master器件,半双工工作,其信号线名字为RTX

  • master能发的命令只有1个且slave一定会给出响应,响应有2种:DONE、FAIL
  • master可通过输入信号start启动发命令,发完命令,立刻转入响应接收状态
  • slave回的响应,由于有被外部噪声干扰的可能,因此master接收slave的响应,有可能有以下几种情况
  1. slave应答DONE,master置起命令执行成功标志:CMD_DONE
  2. slave应答FAIL,master置起命令执行失败标志:CMD_FAIL
  3. slave应答既不是DONE也不是FAIL,master置起非法响应标志:SLV_ERR
    无论slave是上面哪种响应,master在置起标志后,都会重新回到等待发送命令状态
    假设在testbench中,以上所有三个标志信号以及启动信号start,全都是直接可见的,如下图所示:
    在这里插入图片描述

9、用条件编译语句generate实现如下电路

(1) 三输入的或门,位宽小于6
(2) 三输入与门,位宽等于8

10、如下图所示,有两个异步时钟CLK1、CLK2,均为高速时钟,Q1为CLK1时钟域的信号,CLK2对Q1采样。请问可否以STA保证路径的时序?为什么?

在这里插入图片描述

11、仿真不能继续进行,stuck在一点不动,可能是什么原因?

12、请描述验证的考核指标覆盖率有哪些?并且简述其意义是什么。

13、检测一个输入信号i_s,当i_s宽度大于等于一个clock时钟周期时,在下一个时钟沿输出信号o_s为一个clock时钟周期的高电平。请用verilog语言实现。(声明、模块头可以省略)

在这里插入图片描述

14、请问如下电路中,所使用的两级同步电路是否正确?为什么?

assign sig = cur_state[3:0]==4'b1010;
always @(posedge clk or negedge rst n)begin
	if(~rst_n) begin
		sig syn0 <= 1'b0;sig_syn1 <= 1'b0;end
	else begin
	sig syn0 <= sig:
	sig syn1 <= sig syno;
end

15、如何测试如图所示电路的SA0 fault?请写出所需加载激励以及对应输出。

在这里插入图片描述

16、什么是竞争与冒险,解决竞争与冒险的方式有哪些?

17、请简述集成电路设计流程,并给出该流程中各环节所用到的EDA工具(注:不局限于数字前端;各环节至少给出一种EDA工具)

18、请简述latch与DFF的区别

19、使用verilog function方式实现下面的prbs多项式,输出位宽为20bit:

x23+x18+1

20、以下电路中,路径FF0/CK -> FF1/RN是否可以通过STA保证其时序满足器件要求?

在这里插入图片描述

21、关于task的调用问题验证平台,的输出是什么?

initial begin
	#1 test(a);
end
task test(input bit a)
	if(a=2)
		$display("a=%d',a);
	else
	$display("HAHA!);
endtask

已知激励如下:

initial begin
	a=1;
	#2;
	a=2;
end

22、一个简单的仿真验证平台,有哪几部分构成?仿真平台应提供哪些关键信号?UVM都有哪些组件?什么是工厂模式?

23、用CMOS电路画出以下表达式:AB+~(CD)

24、数字电路采用Verilog完成设计,请问什么是RTL级设计?

25、阻塞赋值与非阻塞赋值的区别,并举例一个简单的代码。

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

行为管理设置能监控或者检测哪些东西

3 月 27 日&#xff0c;国新办举行“推动高质量发展”系列主题新闻发布会&#xff0c;浙江省省长王浩&#xff1a;全省市场经营主体 1040 万户&#xff0c;相当于平均每 6.5 个浙江人就有 1 个老板。 不由让小编想到&#xff0c;这么多老板&#xff0c;那么老板创办企业也怪不容…

蓝桥杯省三保底代码——数显+按键功能实现

目录 前言 一、为什么能保底省三 二、数显模块的实现 1.数码管显示​编辑 1&#xff09;断码表 2&#xff09;位选 3&#xff09;段选 4&#xff09;扫描 2.菜单 三、按键功能的实现 1.按键扫描 2.菜单切换 四、完整代码演示 五、结语 前言 上一期介绍全家桶时&…

【容器源码篇】Set容器(HashSet,LinkedHashSet,TreeSet的特点)

文章目录 ⭐容器继承关系&#x1f339;Set容器&#x1f5d2;️HashSet源码解析构造方法public HashSet()public HashSet(Collection<? extends E> c)public HashSet(int initialCapacity, float loadFactor)HashSet(int initialCapacity, float loadFactor, boolean dum…

OpenHarmony实战开发-Web组件的使用

介绍 本篇Codelab使用ArkTS语言实现一个简单的免登录过程&#xff0c;向大家介绍基本的cookie管理操作。主要包含以下功能&#xff1a; 获取指定url对应的cookie的值。设置cookie。清除所有cookie。免登录访问账户中心。 原理说明 本应用旨在说明Web组件中cookie的管理操作。…

蓝桥杯_day6

文章目录 不同路径不同路径II拿金币珠宝的最高价值 不同路径 【题目描述】 一个机器人位于一个 m x n 网格的左上角 &#xff08;起始点在下图中标记为 “Start” &#xff09;。 机器人每次只能向下或者向右移动一步。机器人试图达到网格的右下角&#xff08;在下图中标记为…

主成成分分析法

问题引入&#xff1a; 公司评价 假设你是一个公司的财务经理&#xff0c;掌握了公司所有数据&#xff0c;如:固定资产、流动资金、借贷的数额和期限、各种税费、工资支出、原料消耗、产值、利润、折扣、职工人数、分工和教育程度等等&#xff0c;你要如何选择关键因素进行汇报…

宝宝灯塔:成都辅助生殖市场研究,海外试管成热门

据宝宝灯塔网介绍&#xff1a;在成都的辅助生殖市场中&#xff0c;生殖医院一直是主体&#xff0c;它们提供专业的医疗服务和治疗&#xff0c;帮助不孕不育人群实现生育梦想。然而&#xff0c;随着科技的进步和市场的变化&#xff0c;互联网企业也开始涉足这一领域&#xff0c;…

盏燕生物科技将出席2024第七届燕窝天然滋补品博览会

参展企业介绍 深圳市盏燕生物科技有限公司&#xff0c;办公室地址位于中国第一个经济特区&#xff0c;鹏城深圳&#xff0c;深圳市龙岗区平湖街道禾花社区富安大道18号亚钢工贸大楼1栋1017A&#xff0c;我公司主要提供一般经营项目是&#xff1a;初级农产品、海产品、化妆品、…

低代码开发能用在哪些行业?

低代码开发平台&#xff08;Low code development platform&#xff09;是无需编码&#xff08;0代码&#xff09;或通过少量代码就可以快速生成应用程序的开发平台。通过可视化进行应用程序开发的方法&#xff0c;使具有不同经验水平的开发人员可以通过图形化的用户界面&#…

computed计算属性、watch侦听器、生命周期

计算属性 点击查看 Vue文档 基础语法 多次使用计算属性&#xff0c;计算属性方法也只执行一次&#xff0c; 调用计算属性的方法不能加() 直接修改计算数学的值 计算属性不能通过双向绑定修改&#xff08;默认不能改&#xff09; 想要修改计算属性&#xff0c;就必须使用计…

夜晚水闸3D可视化:科技魔法点亮水利新纪元

在宁静的夜晚&#xff0c;当城市的霓虹灯逐渐暗淡&#xff0c;你是否曾想过&#xff0c;那些默默守护着城市安全的水闸&#xff0c;在科技的魔力下&#xff0c;正焕发出别样的光彩&#xff1f;今天&#xff0c;就让我们一起走进夜晚水闸3D模型&#xff0c;感受科技为水利带来的…

包子凑数(蓝桥杯,闫氏DP分析法)

题目描述&#xff1a; 小明几乎每天早晨都会在一家包子铺吃早餐。 他发现这家包子铺有 N 种蒸笼&#xff0c;其中第 i 种蒸笼恰好能放 Ai 个包子。 每种蒸笼都有非常多笼&#xff0c;可以认为是无限笼。 每当有顾客想买 X 个包子&#xff0c;卖包子的大叔就会迅速选出若干笼…

计算机网络——29ISP之间的路由选择:BGP

ISP之间的路由选择&#xff1a;BGP 层次路由 一个平面的路由 一个网络中的所有路由器的地位一样通过LS&#xff0c;DV&#xff0c;或者其他路由算法&#xff0c;所有路由器都要知道其他所有路由器&#xff08;子网&#xff09;如何走所有路由器在一个平面 平面路由的问题 …

Liunx安装Nacos

Liunx安装Nacos 1、镜像下载 curl -O https://github.com/alibaba/nacos/releases/download/2.3.1/nacos-server-2.3.1.tar.gz2、解压到指定目录 tar -zxvf nacos-server-2.3.1.tar.gz -C /usr/local3、进入bin文件启动startup.sh文件 cd /usr/local/nacos/binsh startup.s…

精灵传信系统 匿名性系统 支持网站+小程序双端源码

精灵传信支持在线提交发送短信&#xff0c;查看回复短信&#xff0c;在线购买额度&#xff0c;自定义对接易支付&#xff0c;设置违禁词&#xff0c;支持网站小程序双端。 项目 地 址 &#xff1a; runruncode.com/php/19720.html 环境要求: PHP > 73 MySQL>5.6 Ngi…

Redis中的客户端(三)

客户端 身份验证 客户端状态的authenticated属性用于记录客户端是否通过了身份验证: typedef struct redisClient {// ...int authenticated;// ... } redisClient;如果authnticated的值为0&#xff0c;那么表示客户端未通过身份验证&#xff1b;如果authenticated的值为1&a…

分布式处理

前言 大家好&#xff0c;我是jiantaoyab&#xff0c;这是我作为学习笔记原理篇的最后一章&#xff0c;一台计算机在数据中心里是不够的。因为如果只有一台计算机&#xff0c;我们会遇到三个核心问题。第一个核心问题&#xff0c;叫作垂直扩展和水平扩展的选择问题&#xff0c;…

两年测开经历分享的测试开发学习路线

路线大纲 该学习路线一共是7个阶段&#xff0c;循序渐进&#xff0c;学习路线相对比较平缓图片 阶段0 : 前言 路线特点 适用于想转行做功能测试与测试开发的同学 给出目标、学习建议、关键知识点、最优资源以及各类资源推荐&#xff08;视频、书籍、文档、项目、工具等&am…

在宝塔面板中,为自己的云服务器安装SSL证书,为所搭建的网站启用https(主要部分攻略)

前提条件 My HTTP website is running Nginx on Debian 10&#xff08;或者11&#xff09; 时间&#xff1a;2024-3-28 16:25:52 你的网站部署在Debain 10&#xff08;或者11&#xff09;的 Nginx上 安装单域名证书&#xff08;默认&#xff09;&#xff08;非泛域名&#xf…

【TB作品】MSP430G2553,超声波倒车雷达PCB,单片机,超声波SR04,键盘,oled,

题目 硬件&#xff1a;MSP430G2553、 SR04超声波传感器 、3*4键盘、 无源蜂鸣器、oled显示屏 软件 1 、实时显示测量得到的距离 2、按键设置一个报警门限数值&#xff0c;直接输入数值后确认 3、低于报警门限数值就开始报警&#xff0c;而且距离越近蜂鸣器的鸣叫频率越高 程序…