← 2022 · 荣耀 笔试

推荐答案 测试一下

线型信号必须显示定义

A.正确 B.错误
简答题 中等 笔试真题

参考答案

B.错误。在Verilog中,线型信号(wire)并非必须显式定义。如果信号未经过显式声明,编译器会默认将其视为wire类型(隐式定义)。这一规则适用于大多数情况,例如出现在assign语句左侧、端口连接等。但存在一些例外:当信号有多个驱动源时,隐式定义可能导致多驱动冲突,此时显式定义(如声明为tri或wand)可以明确类型;另外,某些编译器可能对未声明信号报出警告或错误,但严格遵循IEEE标准时,隐式定义是合法的。因此,题目中的“必须显示定义”表述过于绝对,正确说法是“推荐显式定义”或“隐式定义也是允许的”。易错点在于混淆了‘必须’与‘推荐’,以及忽略了默认类型的规则。此外,在SystemVerilog中,默认类型变为logic(四态变量),但wire仍可隐式定义。

涉及知识点

  • Verilog隐式定义规则
  • wire与reg的默认类型区别
  • 显式定义与隐式定义的适用场景
← 上一题
登录后反馈错题
下一题 →