Keyboard shortcuts

Press or to navigate between chapters

Press ? to show this help

Press Esc to hide this help

如何读时序图

复习

  1. 第二十三章:了解了时钟,认识了上升沿与下降沿

TL;DR

  • 时序图用横轴表示时间、纵轴表示高低电平,记录信号随时间的变化
  • 读法:在某个时刻画一条竖线,线碰到的每个信号值,就是那一刻各信号的值
  • 上升沿、下降沿,就是信号在 0 和 1 之间跳变的那一瞬间

正文

为什么要学“看图“

  前面几章,电路图画的都是“谁和谁相连“。但时序电路不只是连对了就行,还要看信号随时间怎么变——比如时钟什么时候跳变、数据什么时候稳定。描述这种“随时间变化“的图,就叫时序图(Timing Diagram)

  它是学触发器、寄存器、总线的通用语言。这一章先把看图的本领练好,后面就轻松了。

怎么读

  时序图的规则很简单:

  • 横轴是时间,从左往右走
  • 每一行是一个信号,纵轴只有高电平(1)和低电平(0)
  • 在任意一个时刻,画一条竖直的线,它和每条信号线的交点,就是那一刻该信号的值
时刻:      t1      t2      t3
时钟:  _|-|_|-|_|-|_|-|_|-|_
数据:  ____|-----|________|----

  比如在 t2 这一刻画一条竖线:时钟是高电平、数据是 1。整张图,就是把这些时刻的取值连成一条随时间变化的波形。

上升沿与下降沿

  信号从 0 跳到 1 的那一瞬间,叫上升沿;从 1 跳到 0,叫下降沿

上升沿 ↓
      ___
_____|   |_____
     ↑
     下降沿

  时序电路里,很多动作都发生在边沿,而不是盯着电平的高低。因为电平可以持续很久、容易被噪声干扰,而边沿只是一个瞬间,干净利落。这正是后面触发器要采用“边沿触发“的原因。

一个例子

  假设有个信号 WE(写使能)和一个数据 D,规定“WE 为 1 时才把 D 存进去“。时序图如下:

D:    ___|=====|_____|===|______
        0    1     0    1
WE:   ________|-----------|_____
               ↑ 存 1      ↑ 存 0

  读法:第一段 WE = 1 期间,D 是 1,于是存进 1;第二段 WE = 1 期间,D 是 0,于是存进 0。其余时间 WE = 0,数据怎么变都不影响存储。

  看懂这张图,下一章的触发器就水到渠成了。

思考题

  如果规定“只在 WE上升沿D 存进去“,那么上面那张图里,存储动作会发生在哪几个时刻?和“ WE 为 1 期间一直跟随 D “相比,哪种更抗噪声?

小结

知识点

  • 时序图:描述信号随时间的变化
  • 读图方法:某一时刻画竖线,交点即取值
  • 上升沿与下降沿
  • 边沿触发为什么更抗噪声

参考资料

  1. Wikipedia(zh):时序图:数字电路中的时序图
  2. Wikipedia(zh):信号边沿:上升沿与下降沿

思考题答案(仅供参考)

  存储会发生在每次 WE 由 0 变 1 的那一刻,也就是两个上升沿:分别存入当时的 D 值(1 和 0)。与“ WE 为 1 期间一直跟随 D “相比,边沿触发只在极短的瞬间采样,噪声只要没恰好撞上那一刻,就不会被存进去,因此更抗干扰。

协议

  本作品采用知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议进行许可。

封面图

设计师 | 南国微雪