内容正文:
同步时序逻辑电路设计举例 同步时序逻辑电路设计举例 在数字系统中,同步时序电路的应用十分广泛,为了帮助熟练掌握其设计方法,下面给出几个设计实例。 例1.用T触发器作为存储元件,设计一个2位二进制减1计数器。电路工作状态受输入信号x的控制。当x=0时,电路状态不变;当x=1时,在时钟脉冲作用下进行减1计数。计数器有一个输出Z,当产生借位时Z为1,其他情况下Z为0。 解: 题中对电路的状态数目及状态转换关系均十分清楚,设计过程如下: ①作出状态图和状态表。根据问题要求,设状态变量用y2、y1表示,可直接作出计数器的二进制状态图如右图所示,二进制状态表如右表所示。 输入 状态y2y1 X=0 X=1 y2* y1* /Z y2* y1* /Z 0 0 0 0 0 1 1 1 0 1 0 1 0 0 0 0 1 1 1 1 0 1 0 0 1 0 1 0 0 0 1 0 输入 状态y2y1 X=0 X=1 y2* y1* /Z T2 T1 y2* y1* /Z T2 T1 0 0 0 0 0 0 0 1 1 1 1 1 0 1 0 1 0 0 0 0 0 0 0 1 1 1 1 1 0 0 0 1 0 0 0 1 1 0 1 0 0 0 0 0 1 0 1 1 T1=x 1 0 0 1 1 0 1 1 1 0 1 0 1 0 0 0 1 0 X 输入 状态y2y1 Z=xy2’y1’ 0 0 0 1 0 0 1 1 0 0 1 0 1 0 0 0 1 0 X 输入 状态y2y1 T2=xy1’ 1 0 0 1 0 0 1 1 0 0 1 0 1 0 0 0 1 0 X 输入 状态y2y1 ②确定激励函数和输出函数并化简。 根据状态表和T触发器的激励表,(次态和现态相同,T=0;次态和现态不同,T=1)可作出激励函数和输出函数真值表及卡诺图。 化简后,激励函数和输出函数表达式为 T2=xyl’ T1=x Z=xy2’y1’ ③画出逻辑电路图。根据激励函数和输出函数表达式,可画出逻辑电路图如下图。 同步时序逻辑电路设计举例2 例2. 设计一个两位串行输入、并行输出双向移位寄存器。该寄存器有xl和x2两个输入端,其中x2为控制端,用于控制移位方向,x1为数据输入端。当x2=0时,x1往寄存器高位串行送数,寄存器中的数据从高位移向低位;当x2=1时,xl往寄存器低位串行送数,寄存器中的数据从低位移向高位。寄存器的输出为触发器状态本身。 解:根据题意,设电路的状态变量为y2和y1,其中y2为高位,y1为低位,因而可直接画出寄存器的二进制状态图如下图,状态表如下表。 输入 状态x2x1 y2y1 x2x1=00 x2x1=01 x2x1=11 x2x1=10 Y2 Y1 Y2 Y1 Y2 Y1 Y2 Y1 0 0 0 0 1 0 0 1 0 0 0 1 0 0 1 0 1 1 1 0 1 1 0 1 1 1 1 1 1 0 1 0 0 1 1 1 0 1 0 0 假定采用D触发器作为存储元件,根据D触发器的激励表和状态表,可作出激励函数卡诺图如下图。 Y2=D2=x2’x1+x2y1 0 0 1 0 0 1 1 1 1 0 1 1 1 1 1 0 1 0 0 0 1 0 0 0 10 11 01 00 输入 状态x2x1 y2y1 Y1=D1=x2x1+x2’y2 0 1 1 1 0 1 0 1 1 1 1 1 0 1 0 0 1 0 0 1 0 0 0 0 10 11 01 00 输入 状态x2x1 y2y1 根据以上函数表达式,可画出该寄存器的逻辑电路如下图。 D2=x2’x1+x2y1 D1=x2x1+x2’y2 同步时序逻辑电路设计举例3 例3.用J—K触发器作为存储元件,设计一个“101”序列检测器。该电路有一个输入x和一个输出Z,当随机输入信号中出现“101”序列时,输出一个1信号。典型输入、输出序列如下。 输入x:0 0 1 0 1 0 1 1 0 1 0 0 输出Z:0 0 0 0 1 0 1 0 0 1 0 0 解 假定用Moore型同步时序电路实现给定功能,设计过程如下。 ①作出原始状态图和状态表。设初始状态为A,根据题意可作出原始状态图如下图,原始状态表如下表。 输入x 状态 x=0 x=1 输出 A A B 0 B C B 0 C A D 0 D C B 1 ②状态化简。根据化简法则可知,上表已是最小化状态表。 ③状态编码。由于最小化状态表中共有4个状态,故需2位二进制代码表示,即电路中要有2个触发器。设状态变量为y2、yl,根据相邻法的编码原则,该例可采用下左图所示的编码方案。相应的二进制状态表如下右表所示。 y2 y1 0 1 0 A C 1 B D 输入x 状态 y2y1 x=0 x=1 输出 Y2 Y1 Y2 Y