华为2019数字电路设计校招笔试题
1.单选
-
表示任意两位无符号十进制数需要(C)位二进制数
【A】6
【B】8
【C】7
【D】5 -
时间尺度定义为timescale 10ns/100ps,选择正确答案(B)
【A】时间精度10ns
【B】时间精度100ps
【C】时间单位100ps
【D】时间精度不确定 -
时序逻辑电路不仅与输入有关,还与原来的状态有关(A)
【A】正确
【B】错误 -
同步复位需要进行Recovery和Removal检查,异步复位不需要进行(A)
【A】正确
【B】错误 -
异步FIFO设计中,满信号由写时钟产生,空信号由读时钟产生(A)
【A】正确
【B】错误 -
以下关于False-Path正确的是(C)
【A】一般异步电路可以设置为False-Path
【B】两个不同频率的接口一定可以设置为False Path
【C】一般异步复位可以设置为False Path
【D】一般模拟IP和系统的互连接口都可以设置为False Path -
下面是一个什么样的电路?(C)
always@(posedge clk or negedge rst_n) begin if(rst_n == 1'b0) a<=2'b0; else if(b>2'b0) a<=b; end
【A】综合为Latch
【B】带同步复位的D触发器
【C】带异步复位的D触发器
【D】组合逻辑 -
对于信号定义语句:
reg [0:4] always,a;
,说法错误的是(D)
【A】不能使用关键字定义信号名
【B】信号定义为reg
型,只能使用在时序电路的赋值中
【C】bit定义顺序应该从高到低
【D】每个信号应该单独用一行来声明 -
下列说法错误的是(D)
【A】条件语句,如果无关优先级,尽量采用case,避免多级else if影响时序
【B】if/else语句配对使用,case语句加default项;组合逻辑中在所有条件下都要对信号赋值,如果要保持不变则用a=a的方式赋值
【C】两个向量进行比较操作或加减操作或赋值操作时,两个向量的位宽要相等,避免隐式扩展
【D】可综合代码中,除了for语句中的循环变量可以定义为integer型外,所有变量和信号都只能为wire型或者reg型,不能定义为整型、实数型、无符号型、realtime型和time型 -
关于异步设计的危害,下面说法错误的是(C)
【A】信号的时延随着每次布局布线的不同而不同,随着PVT的改变而改变,因此可靠性很差,而且不容易移植
【B】异步设计会产生毛刺
【C】异步设计不能做静态时序分析(STA)
【D】异步设计会带来很大的同步翻转噪声 -
多bit总线信号可以通过格雷码转换进行异步处理,例如:8bit的数据总线进行格雷码转换,然后通过双触发器法实现异步处理(A)
【A】正确
【B】错误 -
SystemVerilog中,下面哪种数组在使用前需要先执行new操作(C)
【A】压缩数组
【B】联合数组
【C】动态数组
【D】多维数组 -
电路设计中,只要采用STA就可以保证电路设计的准确性,不需要再进行动态时序分析了(B)
【A】正确
【B】错误 -
对于initial语句,说法错误的是(D)
【A】在仿真过程中只执行一次
【B】这是一种过程结构语句
【C】在模拟的0时刻开始执行
【D】可用于给实际电路赋初值 -
线型信号必须显示定义(B)
【A】正确
【B】错误 -
以下名称不属于Verilog关键字的是(D)
【A】genvar
【B】endcase
【C】cmos
【D】cnt -
当功能覆盖率达到100%,可以说明(B)
【A】功能覆盖率对应的DUT响应是正确的
【B】某些令人关注的情况已经得到测试覆盖
【C】DUT的功能点已经100%覆盖
【D】意味着验证的完整性 -
下面表达式正确的是(C)
【A】a = 4'df;
【B】c = 3'd8;
【C】b = 5'h1;
【D】d = 3'b2; -
RTL代码是测试点的一个重要来源(A)
【A】正确
【B】错误 -
时序电路中,既可以使用阻塞赋值,也可以使用非阻塞赋值(B)
【A】正确
【B】错误 -
数字电路设计中,下列哪种手段无法消除竞争冒险现象(D)
【A】加滤波电容,消除毛刺
【B】增加冗余项消除逻辑冒险
【C】增加选通信号,避开毛刺
【D】降低时钟频率 -
异步时钟数据采样的方法错误的是(D)
【A】单bit高频时钟脉冲展宽后给低频时钟进行采样
【B】握手信号后再采样
【C】使用FIFO隔离进行多bit的采样
【D】高频时钟直接采样低频时钟的多bit数据 -
以下不能对多bit的数据总线的时钟异步处理的是(B)
【A】DMUX synchronizer
【B】Gray Code
【C】寄存器同步
【D】AFIFO -
一个4bit位宽的有符号数
a=4'b1001
取绝对值后的值为abs(a)=4'b0110
(B)
【A】正确
【B】错误 -
对于两个位宽相同的无符号数a和b,a>b和a<b两个比较器面积是一样的(A)
【A】正确
【B】错误 -
组合逻辑电路的特点是输出信号只是该时刻的输入信号的函数,它是无记忆功能的。时序逻辑电路的特点是任何时刻产生的稳定输出信号不仅与该时刻输入信号有关,而且与它过去的状态有关(A)
【A】正确
【B】错误 -
高的功能覆盖率意味着高的代码覆盖率(B)
【A】正确
【B】错误 -
为了发现逻辑缺陷,要想到什么测什么,一定要遍历所有的可能(B)
【A】正确
【B】错误 -
在Verilog中,关于函数不正确的是(C)
【A】函数可以调用其它函数
【B】函数只能返回一个值
【C】函数必须带有至少一个输入
【D】不能包含任何时延或者时序控制 -
在SystemVerilog中,函数可以调用任务(B)
【A】正确
【B】错误 -
下面的哪个语句是可以综合的(C)
【A】initial 过程块
【B】forever 循环语句
【C】for 循环语句
【D】fork join -
同步时序电路与异步时序电路比较,其差异在于后者(C)
【A】没有触发器
【B】没有稳定状态
【C】没有统一的时钟脉冲控制
【D】输出只与内部状态有关 -
在模块实例语句中,悬空端口可通过将端口表达式表示为空白来指定为悬空端口,模块的输入端悬空值为(B)
【A】0
【B】X
【C】1
【D】Z -
下列电路中属于时序逻辑电路的是(B)
【A】译码器
【B】计数器
【C】编码器
【D】数据选择器 -
下列说法错误的是(B)
【A】为了避免wire信号出现X态,最好在声明时赋初始值0
【B】一个模块例化多次,可以使用generate for循环减少代码量
【C】模块例化时,需要将端口显式列出,即使某个端口未连接信号
【D】循环表达式的循环次数必须为常数 -
某个状态下,不关心某个寄存器的输出值,那么将其设计为输出0,可以降低功耗(B)
【A】正确
【B】错误 -
高频时钟域的总线数据(每时钟周期都变化)传递给低频时钟域时,哪种同步方式正确?(B)
【A】使用握手信号进行同步
【B】使用异步FIFO
【C】使用同步FIFO
【D】使用打2拍进行同步 -
同步电路设计中出现setup time不满足,不可以采用下面哪种措施解决?(D)
【A】pipeline
【B】减小信号延迟
【C】降低时钟频率
【D】增加时钟频率 -
编写Verilog HDL时,变量的定义不可以与关键词冲突(A)
【A】正确
【B】错误 -
关于亚稳态描述正确的是(D)
【A】异步逻辑不会产生亚稳态
【B】采用格雷码能消除亚稳态
【C】亚稳态不会传递,所以不会导致相关逻辑处于不确定态
【D】在时钟有效沿的时候外部数据未稳定,导致触发器不能判断数据电平状态
2.不定项选择
-
异步设计的特点是(BC)
【A】没有时钟skew问题
【B】可移植性高
【C】低电源消耗
【D】设计可靠性高 -
关于状态机编码,下面描述中正确的是(ABC)
【A】用组合逻辑和时序逻辑分离的风格描述FSM
【B】用case语句描述状态的转移
【C】状态编码用parameter定义
【D】状态机必须有default -
如果功能覆盖率没有达到100%的话,可以采取的措施有(CD)
【A】分析是否进行组合的项太多,导致功能覆盖率不高,适当减少组合项
【B】适当提高属性值的采样频率,对覆盖率报告中的漏洞进行覆盖
【C】检查激励产生机制,采用一些必要的约束,继续进行仿真
【D】再做一些定向测试,直接命中覆盖率报告中的漏洞 -
对于双触发器异步处理电路说法正确的是(BCD)
【A】对任何单bit信号都可以用此电路处理
【B】各个寄存器之间不能有组合逻辑
【C】需要考虑两个时钟的频率与信号的宽度
【D】无法绝对避免亚稳态的产生 -
影响CMOS电路静态功耗的因素有哪些?(ACD)
【A】供电电压
【B】工作频率
【C】工艺
【D】温度
网友评论