数字IC笔试题6

目录

一、单选题(共20题,每题3分,共60分)

1. D触发器:Tsetup=3ns,Thold=1ns,Tck2q=1ns,该D触发器最大可运行时钟频率是(D)

2.下列电路属于时序电路的是(D)

3.以下不能提高验证环境的可重用性的是(B)

4.组合逻辑电路的险现象是由于(A)引起的

5.关于Task与Function语句,以下正确的是(D)

6.数字电路设计中,下流哪些手段无法消除竞争冒险现象(B)

9. UVM中以下描述正确的是(B)

10.关于异步复位,描述错误的是(C)

11.关于动态数组和队列,描述错误的是(C)

12.有一个FIFO设计,输入时钟100MHz,输出时钟70MHz,输入数据模式固定,其中1000个时钟中有700个时钟写传输连续数据。为了避免FIFO下溢/上溢,FIFO最小深度是多少(C)

13.芯片中有关GPIO的叙述,不正确的是(A)

14.下面关于AHB协议描述错误的是

15.下面哪个不属于跨时钟域数据传递的基本方法(A)

16.以下为文件后缀为某代工厂提供的库文件,合法的电压,环境温度范围内,以下哪种情况内部信号速度最快(B)

17.以下Verilog运算符优先级由高到低正确的是(D)

18.下面哪个phase属于task phase(D)

19.以下不能对多bit的数据总线的时钟异步处理的是(B)

20.关于’uvm_do_on和’uvm_do_on_with,表述正确的是(B)

二、多选题(共10题,每题4分,共40分)

1.下面属于双状态数据类型的是(AC)

2.在静态时序分析中计算时钟延迟需要考虑以下哪些因素(ACD)

3. 以下逻辑(A,B,D)能实现:输入三个1bitA,B,C变量,若其中两个以上变量为1,则输出1:(ACD)

4.如下verilog描述中哪个或者哪几个会生成寄存器(BC)

5.在不增加pipeline的情况下,如何解决一条critical path的setup时序不满足的问题?(ABC)

6.关于重载,下面描述正确的有(ABD)

7.对改善亚稳态问题有效果的方法是(ABCD)

8.有关virtual sequencer描述正确的是(ABC)

9.下列哪些class派生来自uvm_component(ABD)

10.关于线程,以下描述正确的是(AB)


一、单选题(共20题,每题3分,共60分)

1. D触发器:Tsetup=3ns,Thold=1ns,Tck2q=1ns,该D触发器最大可运行时钟频率是(D)

A、1GHZ

B、500MHZ

C、250MHZ

D、200MHZ

        Tclk >= Tsetup + Tck2q = 4 ns;所以最大运行时钟250 MHz。

        Thold与时钟的最大频率无关。

2.下列电路属于时序电路的是(D)

A、编码器

B、译码器

C、数据选择器

D、计数器

3.以下不能提高验证环境的可重用性的是(B)

A、使用宏定义

B、使用绝对路径索引文件

C、使用factory进行重载

D、使用intertface进行连接

4.组合逻辑电路的险现象是由于(A)引起的

A、电路存在延时

B、电路有多个输出

C、电路未达到最简

D、逻辑门类型不同

5.关于Task与Function语句,以下正确的是(D)

A、在Function中,可以调用Task

B、Function至少有一个输入变量

C、function必须要有返回值

D、Task可以有返回值

        

6.数字电路设计中,下流哪些手段无法消除竞争冒险现象(B)

A、增加冗余项消除逻辑冒险

B、降低时钟频率

C、增加选通信号,避开毛刺

D、加滤波电容,消除毛刺

        在组合逻辑电路中,某个输入变量通过两条或两条以上的途径传到输出端,由于每条途径延迟时间不同,到达输出门的时间就有先有后,这种现象称为竞争

7.关于代码覆盖率,描述正确的是(B)

A、代码覆盖率不包括toggle覆盖率

B、代码覆盖率包括line覆盖率

C、代码覆盖率包括功能覆盖率

D、代码覆盖率达到100%,表示验证足够完备,可以停止验证

        

代码覆盖率用于衡量你执行了多少设计代码,关注点在设计代码上,而不是测试平台

行覆盖率:多少行代码被执行过

路径覆盖率:在穿过代码和表达式的路径中有哪些已经被执行过

翻转覆盖率:哪些单位比特变量的值为0或1

状态机覆盖率:状态机哪些状态和状态转换已经被访问过

8.关于正则匹配,描述错误的是(A)

A、\w可以匹配a-z、A-Z以及0-9,无法匹配下划线

B、\s可以匹配任意空白符,包括换行符

C、^表示一行的开头

D、\d可以匹配0-9

        \d匹配任意的数字,\D匹配任意的非数字

        \w: 匹配的是 a-z,A-Z,数字和下划线

        \s匹配的是空白字符(包括:\n,\t,\r和空格)

        ^ 匹配字符串的开始

        $ 匹配字符串的结束

9. UVM中以下描述正确的是(B)

A、connect_phase的执行是自上而下

B、reset_phase在main_phase之前执行

C、可以在build_phase进行objection的raise

D、build_phase的执行是自下而上

        C也可以,但是没必要。一般只在task phase 中用到objection机制

10.关于异步复位,描述错误的是(C)

A、数字设计经常使用异步复位同步释放

B、异步复位可以节省资源

C、使用异步复位有利于进行时序分析

D、异步复位对毛刺很敏感,抗干扰能力差

11.关于动态数组和队列,描述错误的是(C)

A、动态数组需要调用delete函数释放空间

B、队列在扩大时,sv会自动分配空间

C、动态数组和动态队列实例化使用new[]

D、队列相关函数包括pop_front()、push_back()

        队列不需要new函数

12.有一个FIFO设计,输入时钟100MHz,输出时钟70MHz,输入数据模式固定,其中1000个时钟中有700个时钟写传输连续数据。为了避免FIFO下溢/上溢,FIFO最小深度是多少(C)

A、360

B、1170

C、420

D、270

13.芯片中有关GPIO的叙述,不正确的是(A)

A、GPIO般只具有0态和1态,不具有高阻状态

B、GPIO的引脚般是多功能复用的

C、GPIO作为输入接口时具有缓冲功能

D、GPIO作为输出接口时具有锁存功能

        高阻、推挽、复用等都有,点过灯的应该都知道

14.下面关于AHB协议描述错误的是

A、Burst传输不能跨越1KB地址边界

B、HRESP[1:0]有OKAY、ERROR、SPLIT和RETRY

C、Burst传输包括single传输、定长传输和不定长传输

D、读写操作的地址相位只会维持1拍时钟

        

15.下面哪个不属于跨时钟域数据传递的基本方法(A)

A、信号通路上插入isolation

B、使用FIFO

C、使用多级触发器缓冲

D、使用握手协议

        隔离是为了低功耗

16.以下为文件后缀为某代工厂提供的库文件,合法的电压,环境温度范围内,以下哪种情况内部信号速度最快(B)

A、SS_-40°C

B、FF_-40°C

C、SS_125°C

D、FF_125°C

        由于工艺偏差,即使在同一圆片上的芯片,就是不同位置的器件属性会有所不同。

        单一器件所测的结果为正态分布,均值为tt,最小最大限制值为ss与ff。

17.以下Verilog运算符优先级由高到低正确的是(D)

A、&,|&&,^,!

B、^,!,&,|,&&

C、!,|,&,&&,^

D、!,&,^,|,&&

18.下面哪个phase属于task phase(D)

A、connect phase

B、build phase

C、report_phase

D、reset phase

19.以下不能对多bit的数据总线的时钟异步处理的是(B)

A、Gray-code

B、寄存器同步

C、FIFO

D、Dmux synchronizer

        寄存器同步只适用于单bit信号

20.关于’uvm_do_on和’uvm_do_on_with,表述正确的是(B)

A、在使用之前对应的对象需要进行实例化

B、都有三个参数

C、第二个参数可以是virtual sequencer

D、第一个参数必须是transaction指针或者sequence指针

        白皮书P175

二、多选题(共10题,每题4分,共40分)

1.下面属于双状态数据类型的是(AC)

A、byte

B、logic

C、bit

D、integer

2.在静态时序分析中计算时钟延迟需要考虑以下哪些因素(ACD)

A、时钟源的抖动(jitter)

B、寄存器的建立和保持时间

C、时钟树不平衡引入的偏差(skew)

D、工艺特性造成的on-chip variation

3. 以下逻辑(A,B,D)能实现:输入三个1bitA,B,C变量,若其中两个以上变量为1,则输出1:(ACD)

A、x=(A&B)|(B&C)|(C&A)

B、x=(~A&B|~B&A)^C

C、x=(~A&B|~B&A)?C:A

D、x=(~A&B|~B&A)?C:B

4.如下verilog描述中哪个或者哪几个会生成寄存器(BC)

A、always@(clk)

reg_a<=reg_b;

B、always@(negedge clk)

reg_a<= reg_b;

C、always@(posedge clk)

reg_a<=reg_b;

D、assign reg_a=reg_b;

        B,C时钟边沿触发,D是组合逻辑。

5.在不增加pipeline的情况下,如何解决一条critical path的setup时序不满足的问题?(ABC)

A、将部分组合逻辑电路搬移到前级path上

B、使用更先进工艺的工艺库

C、降低时钟频率

D、在这条path上插入寄存器

        额外插入寄存器增加的时钟周期延时并不会违反整个设计的规范要求,从而不会影响设计的总体功能性实现也即额外插入的寄存器在保持吞吐量不变的情况下改善了设计的时序性能。当然,其不可避免地会带来部分面积的增加。在笔试题1部分也有类似题。

6.关于重载,下面描述正确的有(ABD)

A、函数、任务可以被重载

B、transaction可以被重载

C、sequence不能被重载

D、UVM factory机制的重载要求重载的类必须派生自被重载的类

7.对改善亚稳态问题有效果的方法是(ABCD)

A、引入同步机制,如加两级触发器

B、降低时钟频率

C、改善时钟质量,用边沿变化快速的时钟信号

D、用反应更快速的DFF

8.有关virtual sequencer描述正确的是(ABC)

A、virtual sequencer并不和任何driver相连

B、virtual sequencer可以控制其他sequencer

C、sequence并不在virtual sequencer里产生和传递

D、virtual sequencer自身可以传递transaction

9.下列哪些class派生来自uvm_component(ABD)

A、Sequencer

B、Monitor

C、Transaction

D、Driver

10.关于线程,以下描述正确的是(AB)

A、disable语句可以提前结束所有线程

B、fork...join、fork... join_none、fork...join_any语句块都是以并发方式执行

C、fork...join_none内部的任意一个语句块执行完成之后,父线程才能继续执行

D、fork...join_any内部的所有语句块执行完成之后,父线程才能继续执行

  • 2
    点赞
  • 60
    收藏
    觉得还不错? 一键收藏
  • 7
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 7
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值