利用基本RS锁存器设计仲裁逻辑电路方法

2015-07-05 01:56戴伏生
电气电子教学学报 2015年3期
关键词:逻辑电路触发器高电平

戴伏生

(哈尔滨工业大学威海校区信息与电气工程学院,山东威海264209)

0 引言

数字逻辑系统中存在多个相互独立工作的逻辑电路在使用系统的某些共同资源时会遇到冲突与竞争的问题。为避免竞争冲突造成逻辑混乱,必须确保同一时刻只有一个竞争者能取得资源的使用权,这就需要进行仲裁逻辑电路设计[1]。虽然,目前已有文献介绍了仲裁逻辑电路的一些设计方法。例如,用D锁存器进行设计,用优先权编码器进行设计,还有用单片机或计数器进行设计,但均存在一定缺陷[2-6]。用多个D锁存器设计的仲裁逻辑电路,当发生多个竞争者同时请求情况时,通过仿真实验发现存在仲裁失效现象;用优先权编码器或单片机进行设计,虽可以进行仲裁,但需要按照优先权高低排序等人为因素干预,造成仲裁可能出现不平等性。笔者在研究基本RS锁存器违背约束的现象时,发现该电路具备自由竞争确定输出状态的特点,这为设计仲裁逻辑电路提供了又一解决方案。

1 基本RS锁存器的约束项问题

在“数字电子技术基础”或者“数字逻辑基础”课程讲授到时序逻辑电路时,必然首先介绍各种类型的触发器[7,8]。因为它们是组成时序逻辑电路的核心部件,而基本RS锁存器或者称为基本RS触发器,又是构成触发器的最基本单元,利用与非门构成的基本RS锁存器如图1(a)所示,其中S'、R'以及Q'为S、R和Q的反变量的表示法。在介绍基本RS锁存器时一定会遇到约束项问题,教材中一般只提到不允许违反约束条件,而忽视了该约束项问题还可以在实际电路设计中得到合理利用。

所谓基本RS锁存器的约束项问题,是指图1中锁存器的输入端S'和R'均由逻辑0同时刻改变为逻辑1时,输出端Q和Q'将由逻辑1状态变为不确定状态,正因为该情况下输出端将会出现不确定状态,所以基本RS锁存器在一般场合应用时要避免该输入情况的发生,即输入信号的约束问题。按照约束项的逻辑描述为S'+R'=1或R·S=0。然而,如果按照约束项描述方式对基本RS锁存器的应用做出限制,那么其电路的一些独特的功能将会被掩盖。如果利用波形图描述该电路的功能,将会很好地体现该电路的一些特色功能,特征时序波形如图1(b)所示。

图1 基本RS锁存器

首先,由图1(b)可看出,虽然输入端S'和R'违背约束,但是只要S'和R'不同时由逻辑0变为1,输出端Q和Q'的状态能够确定。其特点是,S'和R'率先由逻辑0变为逻辑1所对应与非门输出将为逻辑0,且另外的与非门会被该输出的逻辑0信号锁定,使其输出继续保持为逻辑1,此时被锁定的与非门另一个输入信号不再起作用,只有当锁定的逻辑0信号撤销后,该与非门的输入信号才能起作用。显然,该特点符合先申请者优先取得权限的仲裁原则。

再有,也是需要特别阐明的不确定状态问题。即便输入端S'和R'均由逻辑0同时刻改变为逻辑1时,输出端Q和Q'的变化将由逻辑1状态变为不确定状态,但是该不确定状态并不是指输出端Q和Q'在逻辑0和1之间振荡,而是Q和Q'其中一个输出端必为逻辑0,另一个必为逻辑1,或者反之,只不过哪个输出端具体能停留在逻辑0还是逻辑1状态,无法通过逻辑分析能够预先得到具体结论,只能通过电路自行竞争后稳定到逻辑0或1的具体状态。正因为基本RS锁存器的输入信号绝对同时请求时,输出的最终状态是由电路竞争完成,这就为设计仲裁逻辑电路找到了一种解决方法。

2 仲裁逻辑电路设计

利用基本RS锁存器设计的通用仲裁电路原理结构如图2所示。其中,输入整形电路是把仲裁请求信号进行适当的处理,使其给仲裁逻辑电路输入一个高电平窄脉冲,该高电平窄脉冲持续时间要小于仲裁结果驻留时间,即在复原信号有效之前各输入信号应结束高电平。例如,如果是手动开关作为仲裁请求信号,则可以用施密特门电路或者单稳态电路把信号处理为高电平窄脉冲;如果是低电平窄脉冲的地址译码器输出作为仲裁请求信号,则利用反相器即可把信号处理为高电平窄脉冲。当然,有些应用场合仲裁请求信号本身就是高电平窄脉冲,则可以不用输入整形电路,即该部分是可选择的电路,可根据输入仲裁请求信号的实际情况添加和删除。图2中仲裁逻辑和结果存贮是本电路设计的关键,而复原电路一般都比较简单,在讨论设计仲裁逻辑和结果存贮逻辑电路的同时一并介绍复原电路。

图2 仲裁电路原理结构

通过上节对基本RS锁存器特点的介绍,其电路具备先申请者优先且同时申请则通过内部竞争决定输出逻辑状态等特点,按照基本RS锁存器工作特点进行扩展设计,得到多路仲裁逻辑电路,如图3所示。图中左侧用点划线圈起来的部分为仲裁逻辑电路,图中右侧n个上跳沿触发且并行工作的D触发器为仲裁结果存贮电路,其余为复原电路。无仲裁请求时,所有的输入X1~Xn且包括复原信号均为低电平,即逻辑0,此时仲裁逻辑电路的与非门所有输出Y1~Yn及存贮电路D触发器同相输出Q1~Qn均为高电平的逻辑1状态。电路工作原理如下。

当需要仲裁时,所对应的输入信号将是一个高电平窄脉冲。电路中若有两个或两个以上输入信号同时出现,则由其内部电路的竞争确定一个信号有效,这与基本触发器的触发功能一致。仲裁结束后Y1~Yn中只能有一个为低电平的逻辑0状态。

图3 多路仲裁及结果存贮逻辑电路

当出现仲裁结果,即Y1~Yn中出现唯一低电平逻辑0状态时,CP将产生一个上跳沿,该上跳沿作为n个并行工作D触发器的时钟信号,使n个D触发器接受所对应的输入Y1~Yn信号,并进行存贮,且通过其同相Q1~Qn和反相Q'1~Q'n端输出所存贮仲裁结果,该仲裁结果的逻辑状态可供后续电路使用,或控制相应电路动作,或提供状态查询。

仲裁结果被存贮后,通过图3电路中的与门,将输出低电平逻辑0信号,该信号作用于仲裁逻辑电路使其复原,提前准备好下一次仲裁,当输入的复原信号高电平窄脉冲结束后,便可进行下一次仲裁。

再有,如果对图3稍加改造,如再向右扩展一组或多组n个上跳沿触发且并行工作的D触发器,并且利用仲裁结果输出信号,对同时请求仲裁而竞争失败输入信号进行适当处理,还可以设计出排队式存贮仲裁结果的逻辑电路,可进一步提高仲裁电路功能。由于篇幅有限,此处不再赘述。

为了验证设计的正确性,利用Maxplus II仿真软件环境,在不失一般性前提下按照图3的工作原理,构建了四输入仲裁逻辑电路,仿真结果见图4所示。通过仿真可以看出,无论仲裁请求是否有先后或者是同时,仲裁结果只能有一个胜出,且先申请者优先,同时申请时电路通过内部竞争确定胜出者,验证了该设计的可行性和正确性。

图4 四输入仲裁逻辑电路仿真结果

3 结语

本文介绍的仲裁逻辑电路还可以用于多CPU共享存贮器、共享传输总线以及数字式抢答器等方面。本文留给读者的启迪是,要学会用辩证的方式思考,要善于分析问题的各种因素和特点,并抓住其实质,表面看似不利的因素往往有它独有的特点,应充分发挥这些特点去解决实际问题。

本文介绍的仲裁逻辑电路就是巧妙地利用基本RS锁存器输入信号由违反约束条件变化成符合约束条件的瞬间,其输出立即会变化成稳定的互斥状态的特点,设计出多个输入信号竞争时只有一个有效状态输出的仲裁逻辑电路。“数字电子技术基础”或“数字逻辑基础”课程中有很多类似的问题,例如,主从JK触发器有所谓的“一次性跳变”特点,难道这仅仅是主从JK触发器的缺点吗?回答是否定的。该特点完全能够被利用,以解决其它电路无法解决的实际问题,这需要读者在遇到实际问题并寻找解决方案时自行体会。

[1]马永军,彭建学,汤天浩,等.一种大容量双口RAM接口电路的设计[J].北京:中国仪器仪表,2007,(11):33-35.

[2]刘开绪.数字式抢答器的设计与实现[J].南京:电子工程师,2005,31(9):69-71.

[3]宁志刚,黄智伟,唐 慧,等.八位数显抢答器课程设计方法研讨[J].上海:实验室研究与探索,2009,28(1):65-67.

[4]王冬梅,张建秋.基于单片机的八路抢答器设计与实现[J].佳木斯:佳木斯大学学报(自然科学版),2009,27(3):350-352.

[5]刘永强.多单片机共享存贮器仲裁电路的一种设计方法[J].北京:微计算机信息,2001,17(2):73-74.

[6]熊建,熊光泽.一种高可信赖测控计算机的设计与实现[J].北京:单片机与嵌入式系统应用,2005,(2):20-23.

[7]阎石.数字电子技术基础(第五版)[M].北京:高等教育出版社,2006.

[8]陈光梦.数字逻辑基础(第三版)[M].上海:复旦大学出版社,2009.

猜你喜欢
逻辑电路触发器高电平
一种基于FPGA的PWM防错输出控制电路
数字电子时钟逻辑电路的教学设计与仿真
TS-03C全固态PDM中波发射机开关机控制电路原理及故障分析
浅谈物理电路与数字电路
使用触发器,强化安全性
PDM 1kW中波广播发射机保护电路分析
基于软件技术的组合逻辑电路模型分析与实现研究
短区间自动闭塞车站接近区段逻辑电路设计
浅谈时序逻辑电路
几种常见触发器工作方式的讨论