【开卷】第一期:2022海思提前批数字芯片(做题笔记)

本文总结了数字芯片设计的基础概念和技术,包括亚稳态、毛刺、综合、功能覆盖率等内容。探讨了不同类型的触发器行为、状态机差异以及设计中常见的问题解决方案。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

这里写自定义目录标题


试题来源: 【旧文新发】海思2022提前批数字芯片笔试(带解析).

知识点总结(未完待续)

1 亚稳态

亚稳态一般出现在异步信号和跨时钟域的情况下。
1) 在跨时钟域的情况下,由于两端的时钟相移未知,所以在源寄存器发出的信号可能在任何情况下到目标寄存器,无法确定满足Tsu和Th的要求。
2) 异步信号的输入也是同理,不确定信号在什么时候到达。

  • 多级寄存器无法消除亚稳态,但是能降低概率
  • 同步时钟也有可能发送亚稳态,且随着频率变高,亚稳态的概率会随之变大
  • 亚稳态是极不稳定的,理论上来讲处在亚稳态的时间可以无限长
  • 亚稳态稳定到0或者1,是随机的,与输入没有必然的关系

毛刺

组合逻辑中,由于走线延迟和门延迟,组合逻辑的输出并非同时,往往会出现一些不正确的信号。
添加寄存器,引入时序逻辑可以降低毛刺出现的概率。

竞争与冒险

3 综合(synthesis)

Synopsys DC(Design Compiler)

  • 综合主要包括三个阶段:转换(translation)、优化 (optimization)与映射(mapping)
  • Translation是指把设计的HDL描述转化为GTECH库元件组成的逻辑电路;
  • Mapping是指将GTECH库元件映射到某一特定的半导体工艺库上,此时的电路网表包含了相关的工艺参数。
  • Optimization是根据设计者设定的时延、面积、线负载模型等综合约束条件对电路网表进一步优化的过程。

4 two 功能覆盖率与代码覆盖率

DUT,Design Under Test 通俗的说验证RTL代码

  • 代码覆盖率高、功能覆盖率低,需要加强功能点的覆盖
  • 代码覆盖率低、功能覆盖率高,往往是一个危险信号,说明功能覆盖率建模还不完善
  • 代码覆盖率高,功能覆盖率高,往往标志验证正处于收敛状态,需要加强各边界点和异常点的测试

6 STA

  • Retiming就是重新调整时序,例如电路中遇到复杂的组合逻辑,延迟过大,电路时序不满足,这个时候采用流水线技术,在组合逻辑中插入寄存器加流水线,进行操作,面积换速度思想。FPGA&ASIC设计之“四大神器”

7 格雷码

任意两个相邻的代码只有一位二进制数不同,则称这种编码为格雷码(Gray Code),另外由于最大数与最小数之间也仅一位数不同,即“首尾相连”,因此又称循环码或反射码。
在这里插入图片描述

12

面向对象程序设计(Object Oriented Programming,OOP)三大特性(封装,继承,多态),多态 在SystemVerilog中一般通过 “virtual” 关键字实现。

13

logic、reg都是4态数据类型
bit二态

单选题(2分)

1.关于亚稳态的描述错误的是()

A.多用几级寄存器打拍可以消除亚稳态。
B.亚稳态是极不稳定的,理论上来讲处在亚稳态的时间可以无限长。
C.亚稳态稳定到0或者1,是随机的,与输入没有必然的关系。
D.如果数据传输中不满足触发器的建文时间Tsu和保持时间Th,可能产生亚稳态。
A 多级寄存器无法完全消除亚稳态

2.一段程序如下,请问在45这个时刻上,A B的值各是多少()

fork
begin
A=1;
#20 A=0;
#30 A=1;
#50 A=0;
end
begin
B=1;
#20 B=0;
#30 B=1;
#50 B=0.
End
join
A.0,1
B.0,0
C.1,0
D.1,1
B fork-join的并行性

3.下列关于综合的说法哪项是不正确的()

A.综合(Synthesis)简单地说就是将HDL代码转化为门级网表的过程
B.综合由Translation和Mapping两个步骤组成
C. Mapping把用GTECH库元件构成的电路映射到某一特定厂家的工艺库上
D. Translation是指把HDL语言描述的电路转化为用GTECH库元件组成的逻辑电路的过程
B Translation,Mapping,Optimization

4.当功能覆盖率(Functional Coverage)达到100%,可以说明:()

A.DUT的功能点已经100%覆盖。
B.功能覆盖率(Functional Coverage)对应的DUT响应是正确的。
C.某些令人关注的情况已经得到测试覆盖。
D.验证工作可以结束
C

5.使用相同时钟沿的同步数字电路,以下因素和最高工作频率无关的是:( )

A.触发器之间最长的组合逻辑
B.触发器的建立/保持时间
C.时钟低电平持续时间
D.逻辑块间互连布线长度
C 静态时序分析基础

6.同步电路设计中出现setup time不满足,不可以采用下面哪种措施解决()

A.增加时钟频率
B.减小信号延迟
C. pipeline
D. retiming
A 静态时序分析基础

7.下列说法正确的是

A.设计异步FIFO时采用格雷码的原因主要是为了省功耗
B.对单比特控制信号打两拍后可以完全避免了亚稳态
C.异步处理需要考虑发送和接收时钟之间的频率关系
D.尽量将异步逻辑和同步逻辑剥离开,分别在不同的模块中实现
C 快时钟域到慢,慢到快,时钟呈倍数关系等 (D)答案存疑

8.Moore状态机和Mealy状态机的差异在()是否相关。

A.状态和输入信号
B.输出信号和状态
C.输出信号和输入信号
D.状态和输出信号
C Moore型的输出只与当前状态有关,而Mealy型的输出还与输入相关

9.计算机执行程序时,在()的控制下,逐条从内存中取出指令、分析指令、执行指令。

A.控制器
B.运算器
C.存储器
D.I/o设备
A

10.相互间相位固定且频率相同的时钟就是同步时钟()

A.正确
B.错误
A

11.下面的verilog代码:

timescale 1ns/100ps
initial clk=1’b0
always #100clk<= ~clk;
产生的时钟频率是:()
A. 5MHz
B. 10 MHz
C. 100MHz
D. 50MHz
A 一个时钟周期200ns

12.如果该class会被继承,则该class所有定义的function/task都需要加virtual()

A.正确
B.错误
B 不用加,加了是为了防止修改内部值

13.bit、logic、reg都是4态数据类型

A.正确
B.错误
B bit是二态

14.关于亚稳态,以下说法错误的是()

A.亚稳态出现的概率与器件工艺,时钟频率等有关系
B.亚稳态打两拍就可以消除
C.数字系统中,信号无法满足setup和Hold时容易出现亚稳态
D.当一个触发器进入亚稳态,既无法准确预测寄存器的输出电平,也很难预测何时输出才能稳定在某个正确的电平上
B 多级打拍无法消除亚稳态

15.对于相同位数输入的变量比较器,大于和小于的面积是一样的

A.对
B.错误
A

16.以下说法关于低功耗的说法不正确的是:

A.采用合理的power gating方案可以降低功耗。
B.clock gating可以降低芯片功耗
C.通过降低数据的翻转率可以降低功耗。
D.无论设计大小,一律采用先进工艺。
D

17.在System Verilog中,调用$write可以自动地在输出后进行换行。

A.正确
B.错误
B $display自动换行

18.有如下代码

class C1;
rand int m;
constraint c1_ cons { m<=10;}
endclass
class C2 extends C1;
constraint c1_cons { m>=10;}
endclass
以代码最终实现的约束效果是()
A.m>=10
B.m<=10
C.m=10
D.解约束失败
A
在扩展类中定义了一个约束,并且扩展后的约束名和基类里的约束名相同,那么扩展类的约束就会替代基类中的约束

19.CPU流水线级数越多,CPU每周期处理的指令数就越多()。

A.正确
B.错误
B 单周期CPU正确,多周期CPU每周期的指令数和很多因素有关,故X

20.下列哪项不属于动态功耗? ()

A.电路短路功耗
B.电路翻转功耗
C.二极管反向电流引起的功耗。
C 反向电流是静态功耗

21.数字电路中用“1”和“0”分别表示两种状态,二者无大小之分()

A.正确
B.错误
A

22.芯片的某条时序路径的保持时间不满足,可通过降低工作频率来满足保持时间()。

A.正确
B.错误
hold time决定了电路的最低频率,可以加buffer改进hold time

23.异步处理电路中,两级触发器同步方法可以确保第二级寄存器的输出不出现亚稳态。

A.正确
B.错误
B

24.一个十进制数-3,定点位宽为4bit,在Verilog语言中分别用2进制补码表示为

A.4’b1100
B.4’b1101
C.4’b1011
D.4’b0011
B 求负整数的补码,将其原码除符号位外的所有位取反(0变1,1变0,符号位为1不变)后加1

25.systemverilog中类默认的成员属性是()

A.private
B.public
C.automatic
D.local
B

26.格雷码的异步处理可以采用直接打拍的方式,在STA时不需要特殊检查()

A.正确
B.错误
A 异步操作不满足进行STA的基本原则,只能从设计上保证

27.电路和波形如图,正确输出的波形是()

图片
A.2
B.1
C.3
D.4
B D触发器的基本知识(二分频)

28.某包处理器的工作时钟为125MHz,在正常工作时,它可以每32个时钟周期处理个64字节的以太包。则该包处理器的处理性能是() .

A.2G bps
B.4G bps
C.1G bps
D.250M bps
A 1MHZ=1 000 000 HZ 一个字节8个bit

29.在同步电路设计中,逻辑电路的时序模型如下:

图片
T1为触发器的时钟端到数据输出端的延时,T2和T4为连线延时,T3为组合逻辑延时,T5为时钟网络延时:
假设时钟clk的周期为Tcycle;
假设Tsetup. Thold分别为触发器的setup time, hold time.
那么,为了保证数据正确采样(该路径为multi-cycle路径),下面哪个等式必须正确:()
A.T1+T2+T3+T4<Tcycle- Tsetup +T5,T1+T2+T3+T4>Thold
B.T1+T2+T3+T4+T5<Tcycle- Tsetup,T1+T2+T3+T4>Thold
C.T1+T2+T3+T4<Tcycle- Tsetup,T1+T2+T3+T4+T5>Thold
D.T1+T2+T3+T4<Tcycle- Tsetup+T5,T1+T2+T3+T4>Thold+T5
D setup和hold time 的计算

30.为什么数字电路系统中只使用二进制?

A.自然界的本质决定
B.比十进制更简单
C.晶体管的特性决定
D.其他都正确
C

多选题(4分)

1.电路设计中需要关注PPA,分别指( )

A.功耗
B.性能
C.面积
D.成本
ABC PPA的含义

2.下述关于覆盖率收集结果的描述正确的是( )

A.代码覆盖率高、功能覆盖率低,需要加强功能点的覆盖
B.代码覆盖率低、功能覆盖率高,往往是一个危险信号,说明功能覆盖率建模还不完善
C.功能覆盖率达到100时,代码覆盖率一定已经全部覆盖
D.代码覆盖率高,功能覆盖率高,往往标志验证正处于收敛状态,需要加强各边界点和异常点的测试
ABD

3.在设计中,可以被用于进行不同时钟域隔离的memory类型为( )

A. two-port Register File
B. single-port Register File
C. single-port RAM
D. dual-port RAM
AD

4.芯片的工作条件主要是指()

A.工艺
B.电压
C.温度
D.湿度
ABC

5.以下哪几种因素会影响芯片的静态功耗( )

A.工作电压
B.负载电容
C.工作温度
D.翻转活动因子
E.工艺
ACE 负载电容,翻转活动因子都是动态功耗

6.下面哪些语句是不可综合的( )

A. generate
B. always
C. time
D. initial
E. delays
CDE

7.在IC设计中,复位设计面临的主要问题包括( )

A.时钟域的同步
B.去毛刺
C.可否做STA检查
D.对时钟的依赖程度
ABCD(存疑,希望有懂得大佬解释一下)

8.下面关于always语句的使用描述正确的是( )

A.在组合always模块中使用阻塞赋值语句
B.在时序always模块中使用非阻塞赋值语句
C.避免在组合always模块中敏感信号列表中缺少信号
D.避免敏感信号列表中出现冗余信号
ABCD

9.125MHz时钟域的多bit信号A[127:0]需要同步到25MHz时钟域,可能使用的同步方式有( )

A.双向握手
B. DMUX
C.打三拍
D.异步FIFO
ABD 跨时钟域传输的基本知识

10.某个时钟域的建立时间要求是3ns,保持时间要求是3ns,那么如下几个寄存器,存在时序收敛问题的是:

A.数据在一个时钟周期内的连续稳定时间为6ns,且数据在触发器时钟有效沿前,保持稳定不变的时间为4ns,
B.数据在一个时钟周期内的连续稳定时间为8ns,且数据在触发器时钟有效沿前,保持稳定不变的时间为4ns,
C.数据在一个时钟周期内的连续稳定时间为8ns,且数据在触发器时钟有效治前,保持稳定不变的时间为2ns,
D.数据在一个时钟周期内的连续稳定时间为6ns,且数据在触发器时钟有效沿前,保持稳定不变的时间的2ns,
ACD 只有B满足时序,选不符合的(B 整个连续有效时间为8ns,setup time为4ns,则hold time为4ns)


都看到这儿了,点个赞吧!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值