- 易迪拓培训,专注于微波、射频、天线设计工程师的培养
基于集成计数器的N进制计数器设计与仿真
摘要:计数器是一种重要的时序逻辑电路,广泛应用于各类数字系统中。介绍以集成计数器74LS161和74LS160为基础,用归零法设计N进制计数器的原理与步骤。用此方法设计了3种36进制计数器,并用Multisim10软件进行仿真。计算机仿真结果表明设计的计数器实现了36进制计数的功能。基于集成计数器的N进制计数器设计方法简单、可行,运用Multisim10进行电子电路设计和仿真具有省时、低成本、高效率的优越性。
关键词:电路设计;仿真;计数器;归零法;Multisim10
计数器是记忆时钟脉冲个数的数字电路,作为一种最典型的时序逻辑电路,在各类数字系统中有着广泛的应用。计数器的设计方法主要有两种,1)以时钟触发器为核心加上必要的门电路进行设计;2)利用集成计数器构建,这种方法从设计原理到硬件实现都相对简单,因而较为常用。基于集成计数器的N进制计数器设计方法有归零法和置数法。文中以最常用的4位二进制(十六进制)同步加法计数器74LS161及十进制同步加法计数器74LS160为核心,以三十六进制为例,介绍了归零法设计N进制计数器的方法,并用Multisim10软件进行仿真。Multisim10软件由美国国家仪器(National Instruments,NI)公司于2007年推出,该软件具有以下特点:1)直观的图形界面;2)庞大的元器件库;3)丰富的测试仪器;4)完备的分析工具;5)强大的仿真能力;广泛应用于电子电路的教学、设计和科研中。
1 归零法设计原理
1.1 集成计数器功能描述
集成计数器由芯片厂家生产后,其功能已固化在集成芯片中,其功能常用状态表描述。表1是4位二进制同步加法计数器74LS161的状态表,表中是异步清零控制端,低电平有效;是同步置数控制端,低电平有效;ENP和ENT是计数器工作状态控制端,高电平计数;CLK是计数脉冲输入端;D、C、B、A是并行数据输入端;QD、QC、QB、QA是计数器状态输出端;“×”表示任意状态,“↑”表示时钟脉冲上升沿。
十进制同步加法计数器74LS160的状态表与74LS161类似,区别在于计数状态是按十进制(8421BCD码表示)规律变化。
1.2 归零法设计原理
设现有M进制集成计数器,设计N进制计数器。若M>N,从全零初始状态S0开始计数,第1个时钟到来时,计数状态为S1,第N-1时钟到来时,计数状态为SN-1,第N时钟到来时,利用集成计数器的清零端或是置数端,使计数状态返回全零初始状态S0,原M进制集成计数器中的SN~SM-1这M-N个状态被跳过。若集成计数器的清零端为异步控制方式,具体设计与仿真步骤为:
1)确定最大计数状态SN(过渡状态),并写出SN的二进制代码:
2)根据状态SN的非完全译码,求归零逻辑,即清零端控制信号的逻辑表达式;
3)在仿真平台Multisim中选择器件,根据归零逻辑创建仿真电路;
4)选择时钟信号源输入,示波器或数码管等作为测量或显示仪器,运行仿真电路,观测结果。[p]
如图1所示电路是基于集成4位二进制同步加法计数器74LS161,用归零法设计的七进制加法计数器的仿真电路。由于74LS161的清零端为异步控制方式,则最大计数状态SN=S7=0111;由此求出归零逻辑,仿真中用时钟电压源V1接入计数脉冲输入端CLK,用带译码的十六进制数码管U3作状态输出的显示器。运行仿真电路,在时钟控制下,数码管U3循环显示0,1,2,3,4,5,6,0,…,共7种输出状态,结果表明图1电路用7415161实现了七进制加法计数功能。
用归零法设计N进制计数器要注意以下两点:
1)当集成计数器的清零端为同步控制方式,则不会出现过渡状态SN,此时最大计数状态应为SN-1,相应归零逻辑也由SN-1求得。
2)若MN,需要用多个M进制集成计数级联,扩展成大容量计数器后,再使用归零法设计N进制计数器。
2 三十六进制加法计数器的设计与仿真
2.1 基于74LS161的三十六进制加法计数器的设计与仿真
74LS161为十六进制计数器,设计三十六进制计数器需要两个74LS161通过级联的方法,可先扩展成256(16×16)进制计数器。设低位的74LS161编号为1,高位的74LS161编号为2,再用归零法设计如下:
1)写出SN的二进制代码:SN=S36=100100;
2)求出归零逻辑:;
3)在仿真平台Multisim中选择2个74LS161,1个74LS00,2个5 V电源和地,根据归零逻辑创建仿真电路;
4)时钟电压源V1接入计数脉冲输入端CLK,用带译码的十六进制数码管U4和U5作状态输出的显示器,完整的三十六进制计数器仿真电路如图2所示。
[p]
运行仿真电路,在时钟控制下,数码管U5和U4以2位十六进制数方式循环显示00,01,02,…,09,0A,0B,…,0F,10,11,…,23,00,…,共36种输出状态,本质上是8个计数输出端Q2D~Q2AQ1D~Q1A对应二进制代码以00000000,00000001,…,00100011,00000000,…。循环变化,共36种输出状态。因此,图2电路用74LS161实现了三十六进制加法计数功能。
2.2 基于74LS160的三十六进制加法计数器的设计与仿真
74LS160为十进制计数器,其计数状态QDQCQBQA以8421BCD码的方式输出,最大状态为1001。设计三十六进制计数器需要2个74LS160通过级联的方法,可先扩展成100(10x10)进制计数器。设低位的74LS160编号为1,高位的74LS160编号为2,再用归零法设计如下:
1)写出SN的8421BCD码:SN=S36=(00110110)8421BCD;
2)求出归零逻辑:;
3)在仿真平台Multisim中选择2个74LS161,1个74LS20,2个5 V电源和地,根据归零逻辑创建仿真电路;
4)时钟电压源V1接入计数脉冲输入端CLK,用带译码的十六进制数码管U4和U5作状态输出的显示器,完整的三十六进制计数器仿真电路如图3所示。
运行仿真电路,在时钟控制下,数码管U5和U4以2位十进制数方式循环显示00,01,02,…35,00,…,共36种输出状态,本质上是8个计数输出端Q2D~Q2AQ1D~Q1A对应8421BCD码以初态00000000,随着时钟的到来依次加1,直到00110101,00000000,…,循环变化,共36种输出状态。因此,图3电路用74LS160实现了三十六进制加法计数功能。[p]
2.3 基于74LS161的三十六进制加法计数器的设计与仿真(以十进制数方式显示)
计数状态以十进制数方式显示,读数方便,符合多数人的习惯。若无十进制计数器74LS160,用十六进制计数器74LS161也可构成以十进制数方式显示的三十六进制加法计数器,但设计较为复杂。以下介绍一种设计方法。
1)确定级联逻辑:共需要2个74LS161,设低位的74LS161编号为1,高位的74LS161编号为2,采用与图2和图3同样的同步级联方式,即外接脉冲同时接入高、低位2个74LS161的计数脉冲输入端CLK。低位74LS161的计数控制端ENP和ENT都接高电平,即ENP1=ENT1=1,使其工作于计数状态。因为要采用十进制数方式显示,则低位74LS161最大输出状态1SN-1=1S9=Q1DQ1CQ1BQ1A=1001,此时其进位输出RCO1=0,不能用于控制高位74LS161进行计数。高位74LS161的计数控制端ENP和ENT可由低位最大状态的非完成译码控制,即ENP2=ENT2=Q1DQ1A。设初态为全零状态,每来一个时钟,低位74LS161记一次数,状态代码加1,第9个时钟到来后,高位74LS161计数控制端有效,第10个时钟到来,低位74LS161清零的同时,高位74LS161记一次数。
2)低位74LS161的归零逻辑:用同步置数控制端完成清零,则4个并行数据输入端都接低电平,即D1C1B1A1=0000;又1SN-1=1S9=(1001)8421BCD,。
3)整体归零逻辑:设计三十六进制计数器,设初始计数状态显示为00,则最大状态显示为35,可用两个74LS161的异步清零控制端完成整体清零。整体最大状态SN=S36=(00110110)8421BCD,。
4)在仿真平台Multisim中选择2个74LS161,74LS00、74LS04、74LS20各1个,2个5 V电源和地,根据归零逻辑创建仿真电路;
5)时钟电压源V1接入计数脉冲输入端CLK,用带译码的十六进制数码管U6和U7作状态输出的显示器,完整的三十六进制计数器仿真电路如图4所示。
运行仿真电路,在时钟控制下,数码管U7和U6以2位十进制数方式循环显示00,01,02,…35,00,…,共36种输出状态,显示结果与图3电路显示相同。因此,图4电路用74LS161实现了以十进制数方式显示的三十六进制加法计数功能。
3 结束语
计数器具有计数、分频、定时等功能特点,广泛应用于数字测量、控制等数字系统,掌握N进制计数器的设计方法有着理论和实践意义。文中以集成计数器74LS161和74LS160为基础,采用归零法,多方式地实例设计了36进制计数器,设计原理清晰,逻辑严谨;电路简单,易于实现。应用Multisim 10进行电子电路设计和仿真,可用大量丰富的元器件库和实用的虚拟仪器,操作简单,搭建电路方便、快捷,并且修改电路方便.是现代电子设计的有效方法。基于集成计数器的N进制计数器设计方法有推广价值,用非十进制集成计数器设计以十进制数方式显示的N进制计数器有创新性。
射频工程师养成培训教程套装,助您快速成为一名优秀射频工程师...