← 2024 · 太初元碁 · 芯片架构设计实习生 笔试

推荐答案 测试一下

以下关于 Verilog 的描述正确的是:

A. 如果 A=4'hb, 则^A=1'b1 B. module中的缺省类型为wire,输出的缺省类型为reg C. Generate, for, function语句可综合 D. Y=a+b; 属于阻塞赋值语句,执行该语句时,先计算a+b的值,然后更新Y值,在此过程中,不能运行其他语句
多选题 中等 2024秋招笔试真题Online Assessment太初元碁不定项选择题

参考答案

正确选项:A、C、D。 A选项正确:4'hb表示4位二进制数1011,归约异或(^)是对所有位进行异或运算。1^0^1^1 = 1,结果为1位1,即1'b1。 B选项错误:在Verilog中,module内部的所有端口(包括输入、输出、双向端口)默认类型均为wire,输出端口也不例外。只有显式声明为reg类型时,输出才是寄存器类型。 C选项正确:generate语句(如generate for、generate if等)可综合,用于生成多个实例或条件实例化;for循环在可综合设计中通常用于always块内或generate语句中,要求循环次数为常数;function可综合,但只能描述组合逻辑,不能包含时序控制语句(如#、wait等)。虽然存在使用限制,但整体上这些结构均被主流综合工具支持。 D选项正确:阻塞赋值符“=”意味着语句会立即执行。执行Y=a+b时,先计算右侧表达式的值,然后将结果赋值给Y,该过程完成之前不会执行其他语句,即同一always块中后续语句会等待当前赋值完成。

涉及知识点

  • 归约异或运算
  • 端口缺省类型wire
  • 可综合结构(generate/for/function)
  • 阻塞赋值特性
  • module端口声明规则
← 上一题
登录后反馈错题
下一题 →