74ls190的功能及原理


74LS190:同步可预置BCD可逆计数器
74LS190是一款在数字电路领域中广泛应用的集成电路,其核心功能是一个同步可预置的BCD(Binary-Coded Decimal,二-十进制编码)可逆计数器。理解其功能和原理,是掌握数字逻辑电路设计的重要一环。它属于TTL(Transistor-Transistor Logic,晶体管-晶体管逻辑)家族的低功耗肖特基(LS)系列,这表示它具有相对较低的功耗和较快的开关速度,适用于各种中等速度的应用。
1. 计数器概述
在深入探讨74LS190之前,我们首先需要理解计数器的基本概念。计数器是一种能够对输入脉冲进行计数,并以特定方式显示或存储计数结果的数字电路。根据计数方式的不同,计数器可以分为加法计数器、减法计数器和可逆计数器。根据工作方式,又可以分为异步计数器和同步计数器。
加法计数器(Up Counter):每接收一个计数脉冲,计数器的当前值加1。
减法计数器(Down Counter):每接收一个计数脉冲,计数器的当前值减1。
可逆计数器(Up/Down Counter):根据控制信号,既可以进行加法计数,也可以进行减法计数。74LS190正是这样一种可逆计数器。
异步计数器(Asynchronous Counter):又称纹波计数器(Ripple Counter)。在这种计数器中,触发器的时钟输入不是同时接收到时钟脉冲,而是前一个触发器的输出作为后一个触发器的时钟输入。这种级联方式会导致信号的逐级延迟,在高频下容易出现累积误差,限制了其工作速度。
同步计数器(Synchronous Counter):所有触发器的时钟输入都同时接收到时钟脉冲。这意味着所有触发器的状态变化是同步发生的。同步计数器避免了异步计数器的累积延迟问题,因此具有更高的工作速度和稳定性。74LS190就是一种同步计数器。
2. BCD码与计数器模数
74LS190是一个BCD计数器。BCD码是一种用四位二进制数表示一位十进制数的编码方式。例如,十进制数0-9分别用二进制的0000-1001表示。BCD计数器与普通二进制计数器不同之处在于,它只在0到9之间进行计数,当计数到9后,下一个计数脉冲会使其回到0,并可能产生进位或借位信号。这种特性使得BCD计数器非常适合用于需要显示十进制数字的应用,例如数字时钟、频率计、万用表等。
计数器的**模数(Modulus)**是指计数器在一轮计数循环中所能达到的状态数。例如,一个模数为10的计数器(如BCD计数器)从0000计数到1001(即0到9),然后返回0000。74LS190的模数是10,因为它是一个BCD计数器。
3. 74LS190的引脚定义与功能
理解74LS190的引脚功能是掌握其工作原理的基础。它通常采用16引脚DIP(Dual In-line Package)封装。
QA,QB,QC,QD (输出):这四个引脚是计数器的Q端输出,代表当前的BCD计数状态。QD是最高有效位(MSB),QA是最低有效位(LSB)。
A,B,C,D (并行数据输入):这四个引脚用于在预置(加载)操作时输入数据。D是最高有效位,A是最低有效位。
PL/LD (并行加载/异步清除,Load/Clear):这是一个异步并行加载控制输入。当此引脚为低电平(0)时,计数器会异步加载输入引脚A,B,C,D上的数据到其内部计数寄存器,而无论时钟脉冲和计数方向如何。这个信号通常也被用作异步清除(Clear)功能,如果所有输入A,B,C,D都连接到低电平,那么加载操作就相当于将计数器清零。
CLK (时钟输入):这是一个边沿触发的时钟输入。74LS190对上升沿(正跳变)敏感。每次时钟脉冲从低电平变为高电平时,如果计数器处于计数模式,则计数器会根据方向控制信号进行加法或减法计数。
UP/DOWN (计数方向控制):这是一个高低电平控制的输入。当此引脚为高电平(1)时,计数器进行加法计数(Up)。当此引脚为低电平(0)时,计数器进行减法计数(Down)。
MAX/MIN (最大/最小计数输出):这是一个同步输出,用于指示计数器达到其最大值或最小值。
在加法计数模式下,当计数器达到9(1001)并在下一个时钟脉冲到来之前,$overline{MAX}/overline{MIN}输出会变为低电平。在计数脉冲作用后,计数器变为0000,同时overline{MAX}/overline{MIN}$回到高电平。这个信号通常用作进位输出(Carry Out)信号,用于级联多个计数器。
在减法计数模式下,当计数器达到0(0000)并在下一个时钟脉冲到来之前,$overline{MAX}/overline{MIN}输出会变为低电平。在计数脉冲作用后,计数器变为9999,同时overline{MAX}/overline{MIN}$回到高电平。这个信号通常用作借位输出(Borrow Out)信号,用于级联多个计数器。
EN/G (计数使能,Enable):这是一个低电平有效的计数使能输入。当此引脚为低电平(0)时,计数器被使能,可以响应时钟脉冲进行计数。当此引脚为高电平(1)时,计数器被禁止,不会响应时钟脉冲,保持当前计数状态。这个信号允许我们控制计数器何时开始或停止计数。
VCC (电源):通常连接到+5V直流电源。
GND (地):连接到电路地。
4. 工作原理详解
74LS190的内部结构主要由四个JK触发器(或D触发器)和组合逻辑电路组成。这些触发器是构成计数器的基本存储单元,而组合逻辑电路则负责实现计数逻辑、预置逻辑、进位/借位逻辑以及使能控制。
4.1 同步计数机制
74LS190是同步计数器,这意味着所有内部触发器的时钟输入都连接在一起,并由外部的CLK引脚提供。当CLK引脚接收到上升沿时,所有触发器在几乎同一时间响应,并根据其当前的输入状态和控制信号更新其输出。这消除了异步计数器中固有的传播延迟问题,从而允许更高的工作频率。
4.2 BCD计数逻辑
BCD计数器之所以能够在0-9之间循环计数,并在达到9后进位(或0后借位),是由于其内部复杂的组合逻辑设计。对于一个四位二进制计数器,它有16种状态(0000-1111)。为了实现BCD计数,在计数到1001(9)后,下一个脉冲应该让计数器回到0000,而不是1010(10)。
这通常通过在计数器内部加入清零逻辑或预置逻辑来实现。当计数器检测到当前状态为1001,并且下一个时钟脉冲到来时,内部逻辑会强制计数器跳转到0000。具体来说,对于加法计数,在达到9(1001)后,内部逻辑会阻止其计数到10,而是将其复位到0000,并产生一个进位信号。对于减法计数,在达到0(0000)后,内部逻辑会阻止其计数到-1,而是将其预置到9(1001),并产生一个借位信号。
4.3 计数方向控制 (UP/DOWN)
$UP/overline{DOWN}$引脚控制着内部计数逻辑的方向。
当$UP/overline{DOWN}$为高电平(1)时,计数器工作在加法模式。每个时钟脉冲到来时,计数器的当前值加1。例如,从0000到0001,再到0010,直到1001。
当$UP/overline{DOWN}$为低电平(0)时,计数器工作在减法模式。每个时钟脉冲到来时,计数器的当前值减1。例如,从1001到1000,再到0111,直到0000。
4.4 并行加载 (PL/LD)
$PL/overline{LD}$引脚是一个异步控制输入,优先级非常高。当它被拉低时(低电平有效),无论$CLK$、$overline{EN}/overline{G}$或$UP/overline{DOWN}$的状态如何,计数器会立即将并行数据输入$A, B, C, D$上的值加载到其输出QA,QB,QC,QD上。这个功能非常有用,可以用于:
初始化计数器:在系统启动时将计数器设置为一个预设的起始值。
预置特定值:在计数过程中随时将计数器设置为任意需要的起始点。
异步清零:如果所有并行输入A,B,C,D都接地(0),那么将$PL/overline{LD}$拉低就实现了异步清零功能。
需要注意的是,由于是异步加载,加载操作的完成与时钟脉冲无关。一旦$PL/overline{LD}$回到高电平,计数器才能重新响应时钟脉冲进行计数。
4.5 计数使能 (EN/G)
$overline{EN}/overline{G}$引脚控制着计数器的计数动作是否被允许。
当$overline{EN}/overline{G}为低电平(0)时,计数器被使能。它会正常响应时钟脉冲,并根据UP/overline{DOWN}$的设置进行加法或减法计数。
当$overline{EN}/overline{G}为高电平(1)时,计数器被禁止。无论CLK$引脚上是否有脉冲,计数器都会保持其当前的输出状态不变。这个功能常用于暂停计数、控制计数周期或在特定条件下禁用计数。
4.6 最大/最小计数输出 (MAX/MIN)
$overline{MAX}/overline{MIN}$是一个重要的输出,它提供了计数器达到其计数范围边缘的指示,从而方便地实现多个计数器的级联。
加法计数模式下作为进位输出(Carry Out):当计数器在加法模式下达到9(1001),并且下一个时钟脉冲即将到来时,$overline{MAX}/overline{MIN}会变为低电平。在时钟脉冲作用后,计数器状态变为0000,同时overline{MAX}/overline{MIN}$会返回高电平。这个低电平脉冲可以作为下一个级联计数器的时钟输入或使能信号,实现多位BCD计数。
减法计数模式下作为借位输出(Borrow Out):当计数器在减法模式下达到0(0000),并且下一个时钟脉冲即将到来时,$overline{MAX}/overline{MIN}会变为低电平。在时钟脉冲作用后,计数器状态变为1001(9),同时overline{MAX}/overline{MIN}$会返回高电平。这个低电平脉冲可以作为下一个级联计数器的时钟输入或使能信号,实现多位BCD减法计数。
这个输出的同步性非常关键:它与时钟脉冲同步产生,并且在下一个状态转换之前发出,从而确保在级联应用中数据的正确传递。
5. 内部逻辑与时序分析(简化)
要完全理解74LS190的内部逻辑,需要深入到其触发器和门电路的详细连接。通常,它由四个同步连接的JK触发器或D触发器组成,并通过复杂的组合逻辑实现BCD计数、方向控制、加载和进位/借位功能。
5.1 计数逻辑简化
以加法计数为例,当$UP/overline{DOWN}$为高电平时:
当计数到0000到1000时,每个时钟脉冲都会使计数器按正常的二进制序列递增。
当计数器当前状态为1001(9)时,下一个时钟脉冲到来时,内部逻辑会检测到这个状态。与其让计数器变为1010(10),内部逻辑会强制将其复位到0000,并同时激活$overline{MAX}/overline{MIN}$输出,产生一个低电平脉冲作为进位信号。
减法计数类似,当$UP/overline{DOWN}$为低电平时:
当计数到1001到0001时,每个时钟脉冲都会使计数器按正常的二进制序列递减。
当计数器当前状态为0000时,下一个时钟脉冲到来时,内部逻辑会检测到这个状态。与其让计数器变为1111(-1的补码),内部逻辑会强制将其预置到1001(9),并同时激活$overline{MAX}/overline{MIN}$输出,产生一个低电平脉冲作为借位信号。
5.2 时序图关键点
理解74LS190的时序图对于正确使用它至关重要。
时钟上升沿触发:所有同步计数动作都发生在CLK信号的上升沿。
$PL/overline{LD}$的异步性:当$PL/overline{LD}$变为低电平,输出$QA-QD$会立即响应并加载输入A−D的数据,与时钟无关。
$overline{EN}/overline{G}$的控制:$overline{EN}/overline{G}$必须在$CLK$上升沿到来之前稳定到低电平,才能使能计数。如果$overline{EN}/overline{G}为高电平,即使有CLK$脉冲,计数器状态也不会改变。
$overline{MAX}/overline{MIN}$的同步性:$overline{MAX}/overline{MIN}$输出会在计数器达到9(加法)或0(减法)之后,在下一个时钟脉冲的上升沿之前,同步地产生一个低电平脉冲。这个脉冲的持续时间与时钟周期相关,并且在计数器状态改变后会恢复高电平。
6. 74LS190的应用场景
74LS190作为一款功能强大的BCD可逆计数器,在各种数字系统中都有广泛应用。
6.1 数字显示系统
这是74LS190最常见的应用之一。结合BCD到七段显示译码器(如74LS47),可以方便地驱动七段数码管,实现数字时钟、计时器、频率计、数字电压表、计数显示器等。通过级联多个74LS190,可以构建多位数的计数显示系统。
示例:两位数加法计数显示
将一个74LS190作为个位数计数器,其QA−QD连接到74LS47的输入,再由74LS47驱动个位数码管。
个位数计数器的$overline{MAX}/overline{MIN}输出(当计数到9后产生的进位脉冲)连接到十位数计数器(另一个74LS190)的CLK$输入。
十位数计数器的QA−QD连接到其对应的74LS47译码器,再驱动十位数码管。
公共的时钟脉冲输入到个位数计数器的CLK。
通过$PL/overline{LD}预置初始值,通过UP/overline{DOWN}$控制计数方向。
6.2 频率测量
通过计数一个已知时间间隔内的脉冲数量,可以测量输入信号的频率。74LS190可以作为核心计数单元,配合门控电路和定时器电路。
6.3 定时器和延时电路
通过设定计数器的初始值和最终值,并以固定频率的时钟脉冲进行计数,可以实现精确的定时和延时。当计数器达到特定值时,可以产生一个输出信号触发其他事件。
6.4 脉冲发生器和序列控制器
通过编程计数器的预置值和计数方向,结合其输出,可以生成复杂的脉冲序列或控制特定事件的顺序发生。
6.5 数据处理和控制器
在一些简单的数字控制器或状态机中,74LS190可以作为状态计数器,根据外部事件改变其状态,并产生控制信号。
6.6 自动控制系统
在工业自动化、机器人等领域,74LS190可以用于位置计数、脉冲计数、流量测量等,从而实现精确的控制。
7. 级联应用
74LS190最重要的特性之一是其易于级联。通过将一个计数器的$overline{MAX}/overline{MIN}输出连接到下一个计数器的CLK输入,或者连接到下一个计数器的overline{EN}/overline{G}$输入(结合公共时钟),可以轻松构建任意位数的BCD计数器。
7.1 进位级联(加法计数)
最低位(个位)74LS190的$overline{MAX}/overline{MIN}输出连接到次低位(十位)74LS190的CLK$输入。
所有74LS190的$UP/overline{DOWN}$引脚连接到高电平(加法模式)。
所有74LS190的$overline{EN}/overline{G}$引脚连接到低电平(使能计数)。
公共时钟脉冲输入到最低位74LS190的CLK。 当个位计数器从9变为0时,其$overline{MAX}/overline{MIN}$产生一个低电平脉冲,这个脉冲作为十位计数器的时钟,使其加1。
7.2 借位级联(减法计数)
最低位(个位)74LS190的$overline{MAX}/overline{MIN}输出连接到次低位(十位)74LS190的CLK$输入。
所有74LS190的$UP/overline{DOWN}$引脚连接到低电平(减法模式)。
所有74LS190的$overline{EN}/overline{G}$引脚连接到低电平(使能计数)。
公共时钟脉冲输入到最低位74LS190的CLK。 当个位计数器从0变为9时,其$overline{MAX}/overline{MIN}$产生一个低电平脉冲,这个脉冲作为十位计数器的时钟,使其减1。
7.3 级联注意事项
时序:确保级联的时序正确。$overline{MAX}/overline{MIN}$的输出脉冲宽度要足够驱动下一级的时钟输入。
负载:注意驱动能力,如果需要驱动多级,可能需要额外的缓冲器。
预置:在多位计数器中,通常需要同时预置所有计数器到期望的初始值。
同步复位/清除:虽然74LS190有异步加载功能,但对于多位计数器,有时需要同步复位或清除所有计数器,以确保它们同时归零。
8. 与其他计数器的比较
在数字逻辑家族中,有多种计数器可供选择,例如二进制计数器(如74LS163、74LS161)、异步计数器(如74LS90、74LS93)等。与这些计数器相比,74LS190具有以下特点和优势:
BCD计数:专为十进制计数和显示优化,简化了与七段显示器等十进制外设的接口。而二进制计数器需要额外的译码器才能显示十进制。
同步工作:所有触发器同时响应时钟,避免了异步计数器的累积延迟问题,适合高频应用。异步计数器由于级联延迟,在高频下容易出现毛刺或计数错误。
可逆功能:集成了加法和减法计数能力,通过一个控制引脚即可切换,提供了更大的灵活性。许多计数器只有单一的加法或减法功能。
预置功能:允许在任何时候将计数器设置为任意起始值,极大地提高了设计的灵活性和初始化能力。
使能控制:方便地暂停和恢复计数,便于对计数过程进行精确控制。
进位/借位输出:方便地进行多级级联,构建任意位数的计数器。
9. 设计考量与常见问题
在使用74LS190时,需要考虑一些设计和应用方面的细节,以确保电路的稳定性和可靠性。
9.1 去耦电容
TTL集成电路在工作时,由于内部晶体管的开关动作,会产生瞬时电流尖峰,导致电源线上出现噪声。为了抑制这种噪声,通常建议在每个74LS190芯片的VCC和GND引脚之间并联一个0.01$mu F到0.1mu F$的去耦电容,并尽可能靠近芯片引脚放置。这有助于提供稳定的电源,防止计数错误。
9.2 输入引脚处理
未使用的输入:对于未使用的输入引脚,例如未使用的并行数据输入A,B,C,D、UP/DOWN、$PL/overline{LD}$或$overline{EN}/overline{G}$,不应让它们悬空。悬空引脚容易受到噪声干扰,导致不确定的逻辑状态。通常,应将未使用的输入引脚连接到确定的逻辑高电平(通过上拉电阻连接到VCC)或逻辑低电平(直接接地),具体取决于其默认的有效状态。例如,如果$PL/overline{LD}不使用加载功能,应将其拉高以禁用加载。如果overline{EN}/overline{G}$总是需要使能,则应将其拉低。
时钟信号:时钟信号的质量至关重要。应使用干净、无毛刺、上升沿和下降沿陡峭的时钟信号。毛刺可能导致计数器产生错误的计数。
9.3 建立时间与保持时间
建立时间(Setup Time):在时钟有效沿到来之前,数据输入必须保持稳定的最短时间。
保持时间(Hold Time):在时钟有效沿到来之后,数据输入必须保持稳定的最短时间。 对于74LS190,特别是在并行加载操作时,确保输入数据在$PL/overline{LD}信号从低变高之前满足建立时间和保持时间要求,以确保正确加载数据。同样,对于UP/overline{DOWN}和overline{EN}/overline{G}$等控制信号,它们也需要一定的建立时间才能在时钟作用时被正确识别。
9.4 扇出能力
74LS系列芯片的扇出能力(Fan-out)有限,即一个输出引脚能驱动的相同系列芯片的输入引脚数量是有限的。在设计复杂电路时,应确保74LS190的输出不会过载,如果需要驱动大量输入,可能需要使用缓冲器(如74LS244)来增强驱动能力。
9.5 功耗
尽管74LS系列是低功耗肖特基系列,但仍然需要注意整体系统的功耗预算,特别是在电池供电或功耗敏感的应用中。
9.6 毛刺问题
在同步计数器中,由于所有触发器同时翻转,理论上不应该有毛刺。然而,在实际电路中,由于器件传播延迟的微小差异,以及复杂的组合逻辑门,在输出切换时仍可能出现短暂的毛刺。这些毛刺通常持续时间非常短,但在某些对毛刺敏感的场合(如驱动另一个时钟输入)可能需要额外注意,例如通过增加锁存器或边缘触发器来消除。
10. 与微控制器(MCU)的结合
在现代数字系统中,微控制器(MCU)的应用日益普及。那么,74LS190这类专用计数器在有MCU的情况下是否还有用武之地呢?答案是肯定的。
硬件加速:对于需要高速、实时计数的应用,MCU的软件计数可能无法满足要求。74LS190可以提供硬件级的计数能力,分担MCU的负担,使其可以专注于其他任务。
精确时序:在一些对时序要求极其严格的应用中,硬件计数器提供的精确、可预测的计数行为优于软件实现的计数。
资源节约:MCU的通用I/O口可以用于控制74LS190的使能、方向和加载,从而节约MCU内部的定时器/计数器资源,将这些资源用于其他更复杂的任务。
去耦合:将计数功能交给专用芯片,可以使系统设计更加模块化,便于故障排除和升级。
当然,如果计数速度要求不高,或者MCU资源充足,直接在MCU内部使用定时器/计数器模块来实现计数功能会更加简洁和经济。74LS190更适用于那些对计数速度、精度有较高要求,或者希望减轻MCU负担的特定场景。
11. 总结
74LS190是一款经典的、功能强大的同步可预置BCD可逆计数器。它集成了BCD计数、加/减法计数、并行加载、使能控制以及进位/借位输出等多项功能于一体。其同步工作方式保证了更高的计数速度和稳定性,而BCD计数特性则使其在需要十进制显示的应用中尤为方便。
通过对其引脚功能、工作原理、时序特性以及级联应用的学习,我们可以清晰地看到74LS190在数字系统设计中的核心作用。无论是构建数字显示器、频率计、定时器,还是作为更复杂控制系统的一部分,74LS190都提供了一个可靠、高效的硬件解决方案。尽管现代电子设计中微控制器占据主导地位,但理解并掌握像74LS190这样的经典逻辑芯片,对于培养扎实的数字电路基础、理解底层硬件工作原理,以及在特定场景下选择最佳解决方案仍然具有不可替代的价值。它代表了数字逻辑设计中的一项基本构建块,是理解更复杂数字系统的基石。
责任编辑:David
【免责声明】
1、本文内容、数据、图表等来源于网络引用或其他公开资料,版权归属原作者、原发表出处。若版权所有方对本文的引用持有异议,请联系拍明芯城(marketing@iczoom.com),本方将及时处理。
2、本文的引用仅供读者交流学习使用,不涉及商业目的。
3、本文内容仅代表作者观点,拍明芯城不对内容的准确性、可靠性或完整性提供明示或暗示的保证。读者阅读本文后做出的决定或行为,是基于自主意愿和独立判断做出的,请读者明确相关结果。
4、如需转载本方拥有版权的文章,请联系拍明芯城(marketing@iczoom.com)注明“转载原因”。未经允许私自转载拍明芯城将保留追究其法律责任的权利。
拍明芯城拥有对此声明的最终解释权。