第 11 讲:边沿触发器、转换与时序约束

边沿触发器把连续时间分成离散的状态更新时刻。分析功能靠特性方程,判断能否可靠工作则靠时序约束。

常用触发器

D 触发器

Qn+1=D.Q^{n+1}=D.

在有效边沿把 D 采样到 Q,最适合寄存数据,也最方便用组合逻辑直接产生次态。

JK 触发器

JJKK功能
00保持
01置 0
10置 1
11翻转

特性方程

Qn+1=JQˉn+KˉQn.Q^{n+1}=J\bar Q^n+\bar KQ^n.

T 触发器

Qn+1=T⊕Qn.Q^{n+1}=T\oplus Q^n.

T=0T=0 保持,T=1T=1 翻转,适合计数器。若永远翻转,常写为 T′=T'= 触发器或把 JK 的 J=K=1J=K=1。

激励表

设计时已知 Qn,Qn+1Q^n,Q^{n+1},要反求输入。D 最简单:D=Qn+1D=Q^{n+1}。T 为

T=Qn⊕Qn+1.T=Q^n\oplus Q^{n+1}.

JK 的某些输入是无关项:例如 0→00\to0 只要求 J=0J=0,KK 可任意。利用这些无关项可简化激励逻辑。

触发器相互转换

核心是让目标次态方程等于现有触发器特性方程。例如用 JK 实现 D:要求

JQˉ+KˉQ=D.J\bar Q+\bar KQ=D.

一种简单接法是

J=D,K=Dˉ.J=D,\qquad K=\bar D.

用 D 实现 T 则直接接

D=T⊕Q.D=T\oplus Q.

转换方案不一定唯一,应利用无关项化简。

建立、保持与传播延迟

输入 D 必须在有效时钟边沿前至少 tsut_{su} 稳定,并在边沿后至少 tht_h 保持。边沿后输出经过时钟到 Q 延迟 tCQt_{CQ} 才稳定。

正边沿 D 触发器的建立时间与保持时间窗口

虚线围出的就是采样边沿两侧的禁变窗口:边沿前留出 tsut_{su},边沿后继续保持 tht_h。只有 D 在这段时间内稳定,触发器才有可靠的采样条件。

同步路径中,一个触发器输出经过组合逻辑到下一个触发器。时钟周期至少满足

Tclk≥tCQ(max)+tcomb(max)+tsu+tskew,T_{clk}\ge t_{CQ(max)}+t_{comb(max)}+t_{su}+t_{skew},

从而决定最高频率。保持时间则检查最短路径:

tCQ(min)+tcomb(min)≥th+tskewt_{CQ(min)}+t_{comb(min)} \ge t_h+t_{skew}

(具体偏斜符号按定义)。提高时钟周期不能修复保持违例,因为保持问题发生在同一个边沿附近。

亚稳态

若异步输入恰在采样边沿附近变化,触发器可能暂时停在非 0 非 1 的亚稳状态。不能从根本消除概率,只能用同步器给它更多恢复时间。

单比特异步控制常用两级 D 触发器同步;多位数据不能简单逐位同步,否则各位可能来自不同时刻,应使用握手、FIFO 或 Gray 码等协议。

波形题步骤

  1. 标出有效边沿;
  2. 先处理异步置位/清零;
  3. 在每个有效边沿读取输入和现态;
  4. 按特性方程求次态;
  5. 把输出变化画在 tCQt_{CQ} 之后;
  6. 锁存器则标出整个透明窗口,不能只看边沿。

移位寄存器

多个 D 触发器串联、共用时钟,可每个边沿把数据移一位。根据串/并输入输出分为 SISO、SIPO、PISO、PIPO。反馈异或可形成线性反馈移位寄存器,但必须避免落入全零锁死状态。

评论