同步时序和异步时序电路、并行

同步时序电路

同步时序电路的组成规则:一个电路是同步时序电路,若它由相互连接的电路元件构成,则需要满足以下条件:

  • 每一个电路元件是寄存器/组合电路
  • 至少一个电路元件是寄存器
  • 所有寄存器都接收同一个时钟信号
  • 每个环路至少包含一个寄存器

最简单的同步时序电路

同步时序逻辑电路的流水线形式

异步时序电路

非同步时序电路:异步电路

同步和异步电路

理论上,异步电路设计比同步电路设计更通用

因为:系统时序不受时钟控制的寄存器约束

类比→用任意电压的模拟电路比数字电路更通用;可使用各种反馈的异步电路比同步电路更通用

但,同步电路比异步电路更好设计;数字电路比模拟电路更容易。

实际上,几乎所有的系统本质上都是同步的。(两不同时钟的系统间通信、任意时刻接收输入,异步电路也重要)

总之,研究异步电路可能有利于改进同步电路

有限状态机

设计有限状态机的步骤:

1.确定输入输出

2.画状态图

3.对Moore型状态机:

①写状态转换表

②写输出表

4.对Mealy型状态机:

写出组合的状态转换表和输出表

5.选择状态编码(影响硬件设计)

6.为下一状态和输出逻辑写布尔表达式

7.画出电路草图

时序逻辑的时序

时钟沿对D采样sampling:触发器在时钟沿上升沿将输入D复制到输出Q

 类比,照相机的孔径时间:在此时间内物体需要保持不动,照相机才能获得清晰的图像

时序元件在时钟沿附近也有“孔径时间”:在此时间内需要输入稳定,触发器才可以有明确定义的输出→时钟沿前的建立时间、时钟沿后的保持时间

动态约束:信号可以在有限时间里反复震荡,但在动态约束下,我们只关心时钟周期结束时的最终值,此后设置一个稳定值(真实世界无法满足)

 用A[n]表示:第n个时钟周期结束时信号A的值,n是整数

不再考虑时刻t的值A(t), t是实数

足够长的时钟周期→使所有信号都稳定下来→限制系统速度

时钟偏移:真实系统中,时钟无法准确地同时到达所有触发器→增加必要的时钟周期

1 动态约束

 

输出:时钟上升时,在时钟Q到最小延迟$t_{ccq}$后开始改变,在时钟到传播延迟$t_{pcq}$内达到最终值

输入:时钟上升沿到来前,在建立时间$t_{setup}$内保持稳定;时钟上升沿后,至少在保持时间$t_{hold}$内保持稳定

孔径时间=建立时间+保持时间(输入保持稳定状态的时间总和)

动态约束: 同步时序电路的输入,必须在时钟沿附近的建立和维持孔径时间内保持稳定

2 系统时序

时钟周期/时钟时间$T_c$:重复时钟信号的上升沿之间的时间

时钟频率$f_c=\frac{1}{T_c}$,时钟频率↑  导致  数字系统在单位时间内完成的工作量↑

单位Hz(每秒周期数),换算关系:$1MHz=10^6Hz, 1GHz=10^9Hz$

1、建立时间约束

最小时钟周期: $T_c \geq t_{pcq} + t_{pd} + t_{setup}$

制造商确定触发器时钟到Q的传播延迟$t_pcq$,建立时间$t_{setup}$

最大延迟约束/建立时间约束(设计师可以控制的): $t_{pd} \leq T_c - ( t_{pcq} + t_{setup} )$

$( t_{pcq} + t_{setup} )$时序开销,$t_{pd}$传播延迟

传播延迟过大→【D2可能在R2对其采样时不能稳定到其最终值】

2、保持时间约束

下图:时钟上升沿后,只需$t_{ccq}+t_{cd}  \geq t_{hold}$,D2发生变化($t_{ccq},t_{cd}$触发器属性)

 组合逻辑的最小延迟约束/保持时间约束:$t_{cd}  \geq t_{hold}-t_{ccq}$

 若$t_{cd}=0$则$t_{hold} \leq t_{ccq}$ →【一个可靠的触发器的保持时间比它的最小延迟短】

 保持约束时间不能通过调整时钟周期改正,千万别违反“保持时间约束”

 关键路径:时间最长的

 最短路径

 

3 时钟偏移*

 现实世界,每个寄存器到达时间有所不同,时钟沿到达时间的变化称为时钟偏移

4 亚稳态

 输入时间在CLK之前的$t_{setup}$,CLK之后的$t_{hold}$时,破坏动态平衡,输出无法确定

亚稳态:触发器对孔径时间内发生变化的输入进行采样,输出Q随时可取$0~V_{DD}$之间电压

最后触发器确定输出到0或1的稳态,但到稳态的“分辨时间”无界,取决于球在最初位置上的平衡程度。

双稳态设备的两稳态间存在亚稳态。

5 同步器

 真实世界的异步输入不可避免输入数字系统,没处理好就会产生亚稳态,所以要想办法尽可能降低出现亚稳态电压的概率。

为保证产生正确逻辑电平,一切异步输入都要经过同步器

系统可靠性的度量→平均失效间隔时间MTBF

 岁同步器延迟$T_c$指数增加

 无封闭解(解析解,通过严格的公式所求得的解),故尝试带值

并行

系统速度度量/性能:延迟、通过系统的信息吞吐量

任务:经处理后能产生一组输出的一组输入

延迟:任务开始到结束需要的时间

吞吐量:系统单位时间内产生任务的数量

并行:同一时间内处理多个任务,可提高系统吞吐量

空间并行:多硬件,多任务同一时间一起处理

时间并行:一个任务分成多个阶段,分布到所有阶段

流水线:时间并行

并行的克星→依存关系(当前任务依赖于前一个任务的结果)

5.15

posted @ 2023-05-07 06:57  asandstar  阅读(292)  评论(0编辑  收藏  举报