|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有账号?注册
x
数字逻辑中的冒险问题
具体设计为:
F=A*B*(!C)*D,为使能信号; M为一个方波;K为方向信号。
当F=1时有效,若K=1,则Q1,Q4输出方波;Q2,Q3输出低电平。
若K=0,则Q2,Q3输出方波;Q1,Q4输出低电平。
当F=0时无效,不论K为何值,都是Q1,Q2输出低电平,Q3,Q4输出高电平。
我设计的逻辑关系为 Q1=F*K*M
Q2=F*(!K)*M
Q3=((!F)*(!K)+(!F)*K)+F*(!K)*M=(!F)+F*(!K)*M
Q4=((!F)*(!K)+(!F)*K)+F*K*M=(!F)+F*K*M
这样的逻辑能够实现所需的功能,但是Q3和Q4由于(!F)和F为互补信号,因此经过与门和或门电路会产生竞争冒险,导致输出的波形中出现毛刺。若令Q3=(!F)+F*(!K)*M+1*(!K)*M,则能够将(!F)和F引起的冒险消除,但是由于M为方波信号,则新引入的(!K)*M会和F*(!K)*M产生新的关于M的互补信号,导致新的冒险产生。
我想请教一下大家,以上的分析是否正确?能否彻底将这一竞争冒险消除?是否有其他的设计方法来完成这一设计目标而不产生竞争冒险?
拜谢了!!!~~~~ |
|