← 数字IC设计经典笔试题

推荐答案 测试一下

画出DFF的结构图,用verilog实现之。(威盛)

编程题 中等 笔试真题

参考答案

DFF(D触发器)是时序逻辑电路基本单元,用于在时钟边沿捕获数据并保持。其典型结构包含:数据输入D、时钟clk、异步复位rst_n(低有效)、数据输出Q。内部由主从锁存器构成:主锁存器在时钟低电平透明,从锁存器在高电平透明;组合成边沿触发。结构图可表示为:D连接主锁存器输入,主锁存器输出连从锁存器输入,从锁存器输出为Q;时钟经反相后控制主锁存器,直接控制从锁存器。复位信号直接清零两个锁存器。 Verilog实现(异步复位、上升沿触发): module dff ( input wire clk, input wire rst_n, input wire d, output reg q ); always @(posedge clk or negedge rst_n) begin if (!rst_n) q <= 1'b0; else q <= d; end endmodule 易错点:1. 敏感列表漏写复位信号或写错边沿(异步复位必须包含posedge/negedge rst_n);2. 使用阻塞赋值=导致仿真时竞争;3. 复位逻辑与数据逻辑顺序错误(应优先判断复位);4. 未考虑保持时间约束。若需同步复位,敏感列表只需posedge clk,内部if (!rst_n)包含在时钟内。注意时序仿真中复位信号需同步释放以避免亚稳态。

涉及知识点

  • D触发器主从结构
  • 边沿触发与电平触发区别
  • Verilog always敏感列表写法
  • 阻塞赋值与非阻塞赋值
  • 同步复位与异步复位特性
← 上一题
登录后反馈错题
下一题 →