论文部分内容阅读
摘要:介绍了一种基于在二进制计数器基础上对触发器驱动方程进行修正使之变为N进制计数器的设计方法,与传统的计数器设计一般方法比较具有快捷、简便易于理解、不易出错的优点,在数字电子技术教学中应用对学生进一步掌握知识和拓展思维起到较好的效果。
关键词:N进制计数器;设计;修正
0.前言
计数器的设计是数字电子技术课程教学中的重要内容之一。N进制计数器又称为任意进制计数器,是一种常见的时序逻辑电路,但因其设计过程较为抽象、复杂,所以常常是学生(特别是高职生)感到较难理解和掌握的内容之一。目前在多数教材中介绍的设计方法基本是用同步时序逻辑电路的一般设计方法,即选定触发器,且经过列状态表和驱动表、卡诺图化简求各位触发器的驱动信号方程、画出计数器的逻辑电路图和检查计数器能否自启动等一系列过程,这样的设计过程较为复杂且容易出错。使用一种基于在二进制计数器基础上对触发器驱动方程进行修正使之变为N进制计数器的设计方法不但快捷、简便易于理解,而且不易出错,在实际教学中应用起到了良好的效果,也在一定程度上扩展学生的思维。
1.计数器一般设计方法存在的问题
应用一般的设计计数器电路方法来设计N进制计数器虽然流程清晰,结构性强,但因为需要经过的推理计算步骤较多,设计过程较为繁琐复杂,也很容易出错,作为初学者特别是高职学生往往较难准确把握。
2.基于二进制计数器基础上修正驱动方程的设计方法
下面我们以由JK触发器构成的14进制同步加计数器为例进行说明。
首先,这种设计方法需要将待设计的N进制计数器与相对应的二进制计数器进行对比,即把N进制计数器与模为M(M≥N)的二进制计数器对比。因此,我们将14进制计数器与最小模值为16的二进制计数器进行对比(这个计数器需要有4位JK触发器组成),然后根据两者运行规律的差别,找出14进制计数器驱动方程的修正方法。
(1)两种计数器工作状态的对比
将14进制加法计数器的输出(Q3 Q2 Q1 Q0)与模为16的二进制加计数器的输出通过列状态表进行逐一对比,观察两种计数器状态的变化规律和特征。
(2)14进制计数器驱动方程的导出
从状态表中可观察到,由JK触发器构成的二进制计数器各触发器的驱动信号应为:J0=K0=1,J1=K1=Q0, J2=K2=Q1Q0,J3=K3= Q2Q1Q0,这是因为从初态0000开始,当J0=K0=1时,每来一个计数脉冲CP,最低位触发器就翻转一次;而其它位的触发器仅在Ji=Ki=Qi-1Qi-2···Q0=1的条件下,当CP的边沿来到时才翻转,从而构成了二进制计数器的运行规律。
再观察14进制计数器和二进制计数器状态的区别,可发现两者仅在第14个CP来到时(即14进制计数器最末状态的次态处)不同,其余状态都相同,故可对模为16的二进制计数器各触发器的驱动方程做如下修改,使之变成14进制计数器:
①对于Q0来说,因为二进制计数器和14进制计数器的所有现态、次态都相同(一一对应),故与其对应的触发器驱动方程不需要修改,仍为原来J0=K0=1,即每来一个计数CP,Q0的状态都翻转一次;
②对于Q1来说,从第13个CP到第14个CP到来,14进制计数器的Q1要求保持0不变,而二进制计数器的Q1却是从0跳变到1,两者出现了不同,这时要对二进制计数器Q1对应触发器的驱动方程进行修改,使之适应14进制计数器特征要求。若将二进制计数器Q1对应触发器的驱动方程J1=K1=Q0修改为 ,则在且仅在1101状态时J1=K1=0,Q1的次态将保持0不变,而1101之前的其余任何状态Q1对应触发器的驱动方程都将与原方程结果一致,即 ,Q1仍是按二进制计数器规律变化,这样Q1位就满足了14进制计数器的特征要求。
③对于Q2和Q3来说,从第13个CP到第14个CP到来,二进制计数器与14进制计数器的Q2、Q3变化也不相同,故也需要对二进制计数器Q2、Q3对应触发器的驱动方程进行修改,使它们适应14进制计数器的要求。因为在1101状态时二进制计数器Q2、Q3的次态都保持1不变,现需要让它们的次态都翻转变为0,因此需将Q2对应触发器的驱动方程修改为 ,而将Q3对应触发器的驱动方程修改为 ,这样在且仅在1101状态时可使二进制计数器Q2、Q3对应触发器的驱动方程为J2=K2=1,J3=K3=1,Q2、Q3的次态将变为0,而在1101之前的任一状态Q2、Q3的驱动方程都与原方程结果一致,即Q2、Q3仍按二进制计数器规律变化,满足了14进制计数器的特征要求。
综上所述,可以歸纳出由JK触发器构成的计数器,通过二进制计数器修正驱动方程得到N进制计数器方法如下:
将待设计的N进制计数器的最末状态到次态变化情况与相同位数的二进制计数器对应的状态到次态变化情况逐位进行比较:
(1)若某位对比状态变化结果完全相同(如Q0),则该位触发器的驱动方程不需要改变;
(2)若某对比位状态变化结果出现不同,则要修改二进制计数器原驱动方程。只有两种可能出现的情况:
①如果二进制计数器该位状态是从0跳变到1(如Q1),需将原驱动方程与待设计N进制计数器的最末状态对应的最小项相“与”,得到一个新的驱动方程;
②如果二进制计数器该位状态保持1不变,即现态到次态都是1(如Q2和Q3),则将原驱动方程与待设计N进制计数器的最末状态对应的最小项相“或”,得到另一个新的驱动方程。
由其它触发器构成的计数器修正原理相同,即亦将待设计的N进制计数器的最末状态到次态变化情况与二进制计数器对应状态的现态到次态变化情况进行逐位比较,变化相同的位触发器驱动方程不变,变化不同的位,则需要修改对应触发器驱动方程。
3.结束语
这种基于修改二进制计数器驱动方程的N进制计数器设计方法相比常规的设计方法更为简单、快速,虽然最后的驱动方程不一定是最简的,但由于驱动方程的修改都是和状态对应最小项有关,而且都是由二进制计数器方程修改变来的,因此修改后的新驱动方程所建立的逻辑电路是具有自启动功能的。在数字电子技术教学中如能适当加以应用,对学生进一步掌握知识以及提高分析问题的能力都将起到较好的促进作用。
参考文献:
[1]康华光.电子技术基础(数字部分). [M] .北京:高等教育出版社,2002
[2]葛仁华.数字电子计数. [M] .广州:华南理工大学出版社,2007
[3]刘树平,吴勇灵,钱莉.小规模集成电路异步十一进制加法计数器设计分析[J]. 黔南民族师范学院学报,2014(2)
作者简介:雷志坤,男,1966.5,大学本科,广西机电职业技术学院电气工程系,副教授,研究方向:电路电子技术、实验实训教学。
关键词:N进制计数器;设计;修正
0.前言
计数器的设计是数字电子技术课程教学中的重要内容之一。N进制计数器又称为任意进制计数器,是一种常见的时序逻辑电路,但因其设计过程较为抽象、复杂,所以常常是学生(特别是高职生)感到较难理解和掌握的内容之一。目前在多数教材中介绍的设计方法基本是用同步时序逻辑电路的一般设计方法,即选定触发器,且经过列状态表和驱动表、卡诺图化简求各位触发器的驱动信号方程、画出计数器的逻辑电路图和检查计数器能否自启动等一系列过程,这样的设计过程较为复杂且容易出错。使用一种基于在二进制计数器基础上对触发器驱动方程进行修正使之变为N进制计数器的设计方法不但快捷、简便易于理解,而且不易出错,在实际教学中应用起到了良好的效果,也在一定程度上扩展学生的思维。
1.计数器一般设计方法存在的问题
应用一般的设计计数器电路方法来设计N进制计数器虽然流程清晰,结构性强,但因为需要经过的推理计算步骤较多,设计过程较为繁琐复杂,也很容易出错,作为初学者特别是高职学生往往较难准确把握。
2.基于二进制计数器基础上修正驱动方程的设计方法
下面我们以由JK触发器构成的14进制同步加计数器为例进行说明。
首先,这种设计方法需要将待设计的N进制计数器与相对应的二进制计数器进行对比,即把N进制计数器与模为M(M≥N)的二进制计数器对比。因此,我们将14进制计数器与最小模值为16的二进制计数器进行对比(这个计数器需要有4位JK触发器组成),然后根据两者运行规律的差别,找出14进制计数器驱动方程的修正方法。
(1)两种计数器工作状态的对比
将14进制加法计数器的输出(Q3 Q2 Q1 Q0)与模为16的二进制加计数器的输出通过列状态表进行逐一对比,观察两种计数器状态的变化规律和特征。
(2)14进制计数器驱动方程的导出
从状态表中可观察到,由JK触发器构成的二进制计数器各触发器的驱动信号应为:J0=K0=1,J1=K1=Q0, J2=K2=Q1Q0,J3=K3= Q2Q1Q0,这是因为从初态0000开始,当J0=K0=1时,每来一个计数脉冲CP,最低位触发器就翻转一次;而其它位的触发器仅在Ji=Ki=Qi-1Qi-2···Q0=1的条件下,当CP的边沿来到时才翻转,从而构成了二进制计数器的运行规律。
再观察14进制计数器和二进制计数器状态的区别,可发现两者仅在第14个CP来到时(即14进制计数器最末状态的次态处)不同,其余状态都相同,故可对模为16的二进制计数器各触发器的驱动方程做如下修改,使之变成14进制计数器:
①对于Q0来说,因为二进制计数器和14进制计数器的所有现态、次态都相同(一一对应),故与其对应的触发器驱动方程不需要修改,仍为原来J0=K0=1,即每来一个计数CP,Q0的状态都翻转一次;
②对于Q1来说,从第13个CP到第14个CP到来,14进制计数器的Q1要求保持0不变,而二进制计数器的Q1却是从0跳变到1,两者出现了不同,这时要对二进制计数器Q1对应触发器的驱动方程进行修改,使之适应14进制计数器特征要求。若将二进制计数器Q1对应触发器的驱动方程J1=K1=Q0修改为 ,则在且仅在1101状态时J1=K1=0,Q1的次态将保持0不变,而1101之前的其余任何状态Q1对应触发器的驱动方程都将与原方程结果一致,即 ,Q1仍是按二进制计数器规律变化,这样Q1位就满足了14进制计数器的特征要求。
③对于Q2和Q3来说,从第13个CP到第14个CP到来,二进制计数器与14进制计数器的Q2、Q3变化也不相同,故也需要对二进制计数器Q2、Q3对应触发器的驱动方程进行修改,使它们适应14进制计数器的要求。因为在1101状态时二进制计数器Q2、Q3的次态都保持1不变,现需要让它们的次态都翻转变为0,因此需将Q2对应触发器的驱动方程修改为 ,而将Q3对应触发器的驱动方程修改为 ,这样在且仅在1101状态时可使二进制计数器Q2、Q3对应触发器的驱动方程为J2=K2=1,J3=K3=1,Q2、Q3的次态将变为0,而在1101之前的任一状态Q2、Q3的驱动方程都与原方程结果一致,即Q2、Q3仍按二进制计数器规律变化,满足了14进制计数器的特征要求。
综上所述,可以歸纳出由JK触发器构成的计数器,通过二进制计数器修正驱动方程得到N进制计数器方法如下:
将待设计的N进制计数器的最末状态到次态变化情况与相同位数的二进制计数器对应的状态到次态变化情况逐位进行比较:
(1)若某位对比状态变化结果完全相同(如Q0),则该位触发器的驱动方程不需要改变;
(2)若某对比位状态变化结果出现不同,则要修改二进制计数器原驱动方程。只有两种可能出现的情况:
①如果二进制计数器该位状态是从0跳变到1(如Q1),需将原驱动方程与待设计N进制计数器的最末状态对应的最小项相“与”,得到一个新的驱动方程;
②如果二进制计数器该位状态保持1不变,即现态到次态都是1(如Q2和Q3),则将原驱动方程与待设计N进制计数器的最末状态对应的最小项相“或”,得到另一个新的驱动方程。
由其它触发器构成的计数器修正原理相同,即亦将待设计的N进制计数器的最末状态到次态变化情况与二进制计数器对应状态的现态到次态变化情况进行逐位比较,变化相同的位触发器驱动方程不变,变化不同的位,则需要修改对应触发器驱动方程。
3.结束语
这种基于修改二进制计数器驱动方程的N进制计数器设计方法相比常规的设计方法更为简单、快速,虽然最后的驱动方程不一定是最简的,但由于驱动方程的修改都是和状态对应最小项有关,而且都是由二进制计数器方程修改变来的,因此修改后的新驱动方程所建立的逻辑电路是具有自启动功能的。在数字电子技术教学中如能适当加以应用,对学生进一步掌握知识以及提高分析问题的能力都将起到较好的促进作用。
参考文献:
[1]康华光.电子技术基础(数字部分). [M] .北京:高等教育出版社,2002
[2]葛仁华.数字电子计数. [M] .广州:华南理工大学出版社,2007
[3]刘树平,吴勇灵,钱莉.小规模集成电路异步十一进制加法计数器设计分析[J]. 黔南民族师范学院学报,2014(2)
作者简介:雷志坤,男,1966.5,大学本科,广西机电职业技术学院电气工程系,副教授,研究方向:电路电子技术、实验实训教学。