数字IC/FPGA校招笔试题解析(一)
数字IC/FPGA校招笔试题解析(一)
题目1
问题:数字电路设计中,下列哪种手段无法消除竞争冒险现象?
选项:
a. 加滤波电容,消除毛刺
b. 增加冗余项消除逻辑冒险
c. 增加选通信号,避开毛刺
d. 降低时钟频率
答案:d
解析:
在同步电路中,降低时钟频率虽能通过增加时序裕量减少毛刺被采样的风险,但并非从根源消除毛刺。异步电路中,毛刺仍可能被下游电路捕获。而选项a、b、c均为直接消除毛刺的方法。
题目2
问题:异步时钟数据采样的方法错误的是?
选项:
a. 单bit高频时钟脉冲展宽后给低频时钟采样
b. 握手信号后再采样
c. 使用FIFO隔离进行多bit采样
d. 高频时钟直接采样低频时钟的多bit数据
答案:d
解析:
多bit数据因各bit传输延迟不同,直接采样可能导致数据错位。正确方法需通过握手、FIFO或格雷码转换单bit传输。
题目3
问题:以下不能对多bit数据总线进行时钟异步处理的是?
选项:
a. Dmux synchronizer
b. Gray-code
c. 寄存器同步
d. AFIFO
答案:c
解析:
多bit数据总线无法直接通过寄存器同步处理,需采用专用同步结构(如AFIFO)或编码方式(如格雷码)。
题目4
问题:4bit有符号数 a=4'b1001
取绝对值为 4'b0110
,是否正确?
答案:错误
解析:
• 原数 1001
表示十进制为
−
7
-7
−7(符号位为1,数值部分
001
=
1
001=1
001=1,总为
−
8
+
1
=
−
7
-8+1=-7
−8+1=−7)。
• 绝对值为
7
7
7,对应二进制为 0111
,而非 0110
。
题目5
问题:无符号数比较器 a > b
和 a < b
的面积是否相同?
答案:正确
解析:
无符号数比较器的硬件逻辑对称,仅决策点不同(判断高位为1或0),面积差异可忽略。
题目6
问题:组合逻辑电路与时序逻辑电路的特点描述是否正确?
答案:正确
解析:
• 组合逻辑:输出仅依赖当前输入,无记忆功能。
• 时序逻辑:输出依赖当前输入和过去状态,含存储元件(如触发器)。
题目7
问题:高功能覆盖率是否意味着高代码覆盖率?
答案:错误
解析:
功能覆盖率关注特定测试点,代码覆盖率衡量代码执行情况。二者无直接关联。例如,测试加法器可能覆盖功能但忽略其他模块代码。
题目8
问题:是否需遍历所有可能输入以发现逻辑缺陷?
答案:错误
解析:
测试应基于规格和合理场景,无需穷举。重点覆盖关键路径和边界条件。
题目9
问题:Verilog中关于函数的描述,哪项错误?
选项:
a. 函数可调用其他函数
b. 函数仅返回一个值
c. 函数必须至少有一个输入
d. 函数不含时延控制
答案:无(选项均正确)
解析:
Verilog函数支持嵌套调用、单返回值、至少一个输入,且禁止时延控制。
题目10
问题:SystemVerilog中任务(task)能否调用函数(function)?
答案:正确
解析:
任务可调用函数,但函数不可调用任务(因函数需即时返回,任务可能含时延)。
题目11
问题:以下可综合的语句是?
选项:
a. initial
b. forever
c. for
d. fork join
答案:c
解析:
for
循环可综合,常用于组合逻辑或生成块。其余语句多用于仿真。
题目12
问题:同步与异步时序电路的核心区别?
选项:
a. 无触发器
b. 无稳定状态
c. 无统一时钟
d. 输出仅与内部状态有关
答案:c
解析:
异步电路无全局时钟,依赖局部握手或事件驱动。
题目13
问题:模块输入端悬空时值为?
选项:
a. 0
b. x
c. 1
d. z
答案:d
解析:
悬空输入端无驱动,呈现高阻态(Z)。
题目14
问题:以下属于时序逻辑电路的是?
选项:
a. 译码器
b. 计数器
c. 编码器
d. 数据选择器
答案:b
解析:
计数器依赖时钟和状态记忆,其他为组合逻辑。
题目15
问题:以下说法错误的是?
选项:
a. 为避免wire信号出现x态,声明时赋初值0
b. 模块多次例化可用 generate for
简化
c. 例化需显式列出所有端口(即使未连接)
d. 循环次数需为常数
答案:a
解析:
wire
赋初值可能导致多驱动冲突,应在组合逻辑中初始化。
题目16
问题:寄存器输出不关心时设为0能否降低功耗?
答案:错误
解析:
保持原值可减少信号跳变,降低动态功耗。强制置0可能增加翻转次数。
题目17
问题:高频时钟域向低频传输数据总线的正确方法?
选项:
a. 握手信号
b. 异步FIFO
c. 同步FIFO
d. 打两拍同步
答案:b
解析:
异步FIFO适用于高频到低频的多bit传输。握手需数据保持稳定,与题目“每周期变化”矛盾。
题目18
问题:解决Setup违例不可用的方法是?
选项:
a. 减小信号延迟
b. 插入流水线
c. 降频
d. 升频
答案:d
解析:
升频会缩短时钟周期,恶化Setup时间裕量。
题目19
问题:Verilog变量命名是否需避开关键字?
答案:正确
解析:
变量名与关键字冲突会导致编译错误或语义混淆。
题目20
问题:关于亚稳态的正确描述是?
选项:
a. 异步逻辑无亚稳态
b. 格雷码消除亚稳态
c. 亚稳态不传递
d. 时钟有效沿数据未稳定导致触发器无法判断
答案:d
解析:
亚稳态由建立/保持时间违例引发,可能导致下游逻辑异常。格雷码仅降低概率,无法消除。
整理说明:
本文按题目顺序编排,每道题独立成段,包含问题、选项、答案及解析。更多笔试题,请关注移知。