【题目编号】MC1-1282
【题目】D 触发器是一种时序逻辑电路,具有数据输入端 D、时钟输入端 CK 和数据输出端 Q。假设 D 触发器由 CK 的上升沿触发,则其工作情况为:
【答案】A
[A]每次 CK 上升沿到来时,Q 端都变得与 D 端一致
[B]每次 CK 上升沿到来时,Q 端都与 D 端反相
[C]每次 CK 下降沿到来时,Q 端都与 D 端反相
[D]每次 CK 下降沿到来时,Q 端都变得与 D 端一致
考点速览
这道题考的是上升沿触发的 D 触发器(D flip-flop)的工作方式。D 触发器有三个关键端子:数据输入端 D、时钟输入端 CK、数据输出端 Q。规则是:在时钟的有效边沿到来那一瞬间,Q 端取当前 D 端的值。题干说明由 CK 的上升沿触发,所以每次时钟由低变高的瞬间,Q 变得与 D 一致。答案是选项 A。
触发器是时序逻辑电路的基本存储单元,与前面那些门电路的分界线在于“记忆”。与门、或门的输出只由当前输入决定,触发器却能一直保持上一次采到的值,直到下一个边沿到来。这条分界线是理解计数器、移位寄存器、状态机的起点。
边沿触发与电平锁存的区别
按对时钟的响应方式,这类电路分成两大类。电平敏感的称为锁存器(latch):使能端有效期间,输出一直跟着数据端变化,使能端一撤销就把最后的值锁住。边沿敏感的称为触发器(flip-flop):只在时钟的上升沿或下降沿那一瞬间采样,其余时间输入端的任何变化都不影响输出。
这个差别在波形上看得最清楚。给一个锁存器的使能端加宽脉冲,脉冲期间数据端抖动几次,输出就会跟着抖几次,最后停在脉冲结束时的那一刻值。换成上升沿触发的触发器,同样一段抖动只有上升沿到达时的那个值被记下来,输出干净利落。
对触发器来说,边沿的方向至关重要。上升沿触发和下降沿触发是两种不同的器件,题目里“由 CK 的上升沿触发”这句话限定了采样时刻,选答案时必须盯住这个方向。与之配套的还有主从结构:内部用两级锁存器,前一级在时钟高电平期间跟随,后一级在时钟低电平期间跟随,合起来等效为边沿触发。
建立时间、保持时间与亚稳态
要让触发器可靠地采到一个值,数据端不能在边沿附近来回跳。器件参数表里会给出两个时间:建立时间(setup time)要求数据在时钟边沿到来之前已经稳定一段时间;保持时间(hold time)要求数据在边沿之后还要继续保持一段时间。两者合起来框出一个禁止变化的窗口。
如果数据的变化落进了这个窗口,输出可能既不是高也不是低,或者经过一段不确定的延时之后才随机确定到某一电平,这种现象叫亚稳态(metastability)。它不是器件坏了,而是数字电路与真实世界交接处的固有风险。
这也是跨时钟域信号处理要先做同步的原因。一路信号从一个时钟域进入另一个时钟域,采样边沿与信号跳变没有任何时间关系,直接送进触发器就可能踩进窗口。工程上的做法是串两级触发器做同步器,把亚稳态概率压到足够低,再交给后续逻辑使用。异步输入按键也是同样的道理,加一级消抖与同步电路,电路才稳定。
触发器在电台设备里的位置
D 触发器在收发信机里无处不在。频率合成器的可编程分频链由一连串触发器构成,每个边沿把计数值推进一格;控制单片机与射频芯片之间的串行总线用触发器做位对齐;面板按键的按下与松开,经触发器同步后送进处理器,避免抖动导致误触发。
在数模混合的电路里,触发器还负责“在正确时刻把数据交给数模转换器”:数据总线上的值随时在变,只有时钟边沿那一刻被锁住的值才会送出去,波形才不会出现毛刺。
一个触发器只能记住一位;把若干个输出连起来就能记住多位数,再让它们在时钟驱动下按既定顺序跳动,就成了计数器与状态机。这条线索的源头,就是“边沿到来时 Q 取 D 的值”。
逐项辨析
选项 A 正确:上升沿触发意味着在时钟由低变高的瞬间采样,Q 端随之变得与 D 端一致。这是 D 触发器最标准的定义。
选项 B 说每次上升沿到来时 Q 与 D 反相。反相是把数据取反后再输出,属于另一类器件或者需要额外加反相器才能实现,标准 D 触发器本身不做取反。
选项 C 说在时钟下降沿到来时 Q 与 D 反相。它同时错了两个地方:触发方向写成了下降沿,动作写成了反相。题干已经明确上升沿触发,方向错就直接排除。
选项 D 说每次下降沿到来时 Q 变得与 D 一致。动作描述是对的,采样时刻错了。若器件真由下降沿触发,这句话就成立;在上升沿触发的条件下,下降沿时刻的 Q 保持不变。这一项是典型的“半对半错”,最容易看走眼。
应试要点
上升沿触发的 D 触发器,记“沿到取值”:Q 在时钟上升沿那一瞬间变得与 D 相同,其余时间保持不动。答案是选项 A。排除干扰的窍门是分两步核对:先看触发方向对不对(上升沿还是下降沿),再看动作对不对(取同值还是取反)。两项都对才选。D 触发器是时序电路,与组合逻辑的区别就在于它带记忆。