时序逻辑电路和组合逻辑电路是数字电路的两大类,它们的区别在于输出是否仅仅取决于该时刻的输入,还取决于数字电路原来的状态。具体来说,组合逻辑电路是任意时刻的输出仅仅取决于该时刻的输入,与时钟无关;而时序逻辑电路任意时刻的输出不仅取决于当前时刻的输入,而且还取决于数字电路原来的状态,需要在时钟上升沿发生变化才会输出结果。
时序逻辑电路和组合逻辑电路的区别可以从代码、电路图和波形图三个方面来理解。从代码层面来看,时序逻辑电路的敏感列表里面带有时钟上升沿,如果是没有上升沿或者是带有“*”号的代码,为组合逻辑。从电路图层面来看,时序逻辑电路相当于在组合逻辑电路的基础上多了一个D触发器。从波形图层面来看,组合逻辑的波形是即刻反映变化的,与时钟无关;但是时序逻辑的波形不会立刻反映出来,只有在时钟的上升沿发生变化。
时序逻辑电路可以分为存储电路和组合逻辑电路两部分。组合逻辑和时序逻辑是“继承关系”,时序逻辑电路在组合逻辑电路的基础上多了一个辅助的存储电路,即D触发器。在时序逻辑设计中,状态转换图是比转换表更加直观的表示方法,可以直接读出各个输入/输出/状态的对应关系,对于它们之间的影响关系也要比转换表直观。卡诺图可以表示输出和次态是如何受输入和现态影响的,在时序逻辑中有较多的无关项,卡诺图可以极大地方便列方程的过程。