← 2024 · 芯原 · 数字IC设计 笔试

推荐答案 测试一下

Which of the following keywords are synthesizable?

A. $display B. for() C. function D. fork...join
多选题 中等 2024秋招笔试真题Online Assessment芯原不定项

参考答案

正确选项为 B、C。 A. $display:这是一个系统任务,用于在仿真时将信息打印到终端,属于仿真控制语句,不映射到实际硬件电路,因此不可综合。 B. for():在 Verilog/SystemVerilog 中,for 循环是可综合的,但必须满足循环边界是常量或可静态确定的条件(例如使用 parameter 或 genvar),且循环体内不包含不可综合的语句。综合工具会将其展开为硬件逻辑。 C. function:函数是可综合的硬件描述结构,常用于组合逻辑计算。函数内不能包含时序控制语句(如延迟、事件等待),且必须返回一个值。综合工具能够将函数调用映射为组合逻辑单元。 D. fork...join:这是一个并发控制语句,用于创建并行运行的进程,属于仿真建模结构。由于硬件本质上并行执行,但 fork...join 的同步机制(如 join、join_any、join_none)无法直接映射为硬件,且内部可能包含不可综合的时序控制,因此不可综合。 注意:本题为多选题,必须同时选择 B 和 C。

涉及知识点

  • 可综合与不可综合的区分
  • 系统任务不可综合
  • for循环可综合条件
  • function可综合
  • fork...join不可综合
← 上一题
登录后反馈错题
下一题 →