数据选择器
数据选择器又称多路开关,它是以“与-或”门、 “与-或-非”门实现的电路,在选择信号的控制下,实现从多个输入通道中选择某一个通道的数据作为输出。
在计算机中,按照需要从多个输入数据中选择其一作为输出是最常遇到的需求之一。例如,从多个寄存器中,选择指定的一个寄存器中的内容送到 ALU 的一个输入端,选择多个数据中的一个写入指定的寄存器,选择多个数据中的一个送往指示灯进行显示等等。
译码器
译码器电路,实现对 n 个输入变量,给出2n个输出信号的功能,每个输出信号对应 n 个输入变量的一个最小项。是否需要译码,通常可以用一或几个控制信号加以控制。译码器多用于处理从多个互斥信号中选择其一的场合。
SN74LS138
SN74LS139
应用举例。
编码器
编码器电路,通常实现把 2n 个输入变量编码成 n 个输出信号的功能,可以处理 2n 个输入变量之间的优先级关系,例如在有多个中断请求源信号到来时,可以借助编码器电路给出优先级最高的中断请求源所对应的优先级编码。
SN74LS148
本章主要内容
数字逻辑电路基础
基本逻辑门和布尔代数知识基础
组合逻辑电路及其应用
时序逻辑电路及其应用
现场可编程器件及其应用
R-S触发器
触发器是典型的时序逻辑电路,有记忆功能,最简单的可以由两个交叉耦合的 “与非”门组成的 R-S 触发器,2 个输出分别为 Q和 /Q,两路输入分别为 R 和 S。
当R为低电平,S为高电平时,会使/Q变为高电平,此时 Q 定变成低电平,在 R恢复为高电平后, Q和 /Q将保持不变,即记忆了本次变化。当S为低电平,R为高电平时,会使Q变为高电平,此时 / Q 定变成低电平,在 S 恢复为高电平后, Q和 /Q 也将保持不变,这是 R-S 触发器。
D型触发器
前面刚介绍的触发器属于电平触发方式,输入 R 和 S 不能同时为低电平,而且 R 、S 和 D 在触发器写入期间应保持不变,否则产生操作错误。
另外一种由 3 个基本触发器构成的是 D 型触发器,它属于边沿触发方式。输入信号 D 在触发脉冲 CP 的正跳变沿期间被写入触发器,其它时间 D 的变化不会影响触发器的状态。
D型触发器又被称为延时触发器,常用于构建寄存器,移位寄存器,计数器等部件。
输入信号 /SD 和 /RD用于触发器的清 0 和置 1操作。
寄存器、计数器
寄存器是计算机中的重要部件,用于暂存指令和数据等,通常多选用 多个并行操作的 D 触发器或锁存器组成。一个寄存器所使用的触发器的数目被称为寄存器的位数,例如 4位、8位等;从使用的角度,还可以通过另外几个控制信号,控制寄存器是否可以接受输入,输出的是正常逻辑电平还是高阻态,是否具有清 0 寄存器内容的功能。
移位寄存器还多出了左右移位操作的功能。
计数器是计算机和数字仪表中经常使用的一种电路,按时钟作用方式,可以分为同步和异步两大类,其中同步计数器线路略复杂但性能更好,用于脉冲分频和需要计数的场合,例如二进制或十进制计数。
本章主要内容
数字逻辑电路基础
基本逻辑门和布尔代数知识基础
组合逻辑电路及其应用
时序逻辑电路及其应用
现场可编程器件及其应用
阵列逻辑电路
阵列逻辑电路是指逻辑元件在硅芯片上以阵列形式排列的器件,它占用芯片面积小,成品率高,用户可编程,使用灵活。
阵列逻辑电路包括存储器(RAM,ROM),可编程逻辑阵列(PLA),可编程阵列逻辑(PAL),通用阵列逻辑(GAL),可编程门阵列(PGA),可编程宏单元阵列(PMA)等多种类型。除了RAM和ROM之外,其它几种电路统称可编程逻辑器件(programmable logic devices,PLD),教学计算机中用得最多的是GAL20V8和高集成度的多PAL (AMD公司的 MACH-4 产品) 芯片,将在后续部分进一步介绍,它们可以实现组合逻辑电路或者时序逻辑电路的功能,都由“与”和“或”两级阵列组成。
存储器芯片RAM和ROM
RAM 和 ROM 是典型的阵列逻辑电路,都由“与”和“或”两级阵列组成,其中的与阵列组成地址译码器,它给出全部地址输入的最小项,用户不可编程,用于选择被读写的存储器单元,或阵列组成存储体,保存写入存储器中的内容。
RAM 和 ROM 的区别:前者对或阵列中的内容可以读写,后者或阵列中的内容主要用于读出,对写操作可能不支持,或者需经过特殊的办法才能执行。
有关存储器芯片的知识,将在介绍存储器的章节中重点讲解,无需在这里的线路部分多加说明,而后面的 GAL20V8 、MACH-4 和 FPGA器件的有关知识不属于本课程的重点内容,需在这里多说几句。
通用阵列逻辑GAL
通用阵列逻辑 (generic array logic,GAL) 器件,是一种可用电擦出、现场可重复编程、使用灵活的简单 PLD。
它的内部结构包括:输入门,输出三态门,与门阵列,输出逻辑宏单元(内含或阵列),从输出反馈到输入的控制门等。GAL20V8 器件最多支持 20 个输入引脚、8 个输出引脚,支持组合逻辑和时序逻辑两种运行方式,输出有三态、极性可控,支持内部信息加密保护。
在教学计算机中,用于实现那些逻辑内容经常需要变化的组合逻辑的功能,用于实现内容经常需要变化的时序逻辑的功能,或者在不同需求环境下,需要在组合逻辑和时序逻辑之间进行切换的线路部分,特别适用于实现由“与-或”两级逻辑完成的线路功能。在实验指导书中对该器件使用方法有更多说明。
在适应变换设计、减少器件类型和数量等方面效果明显。
复杂s的可编程逻辑器件CPLD:MACH器件
MACH (macro array CMOS high-density) 是一种复杂的、电可擦出的、现场可编程逻辑器件 CPLD。
它的内部结构由多个 PAL 块和一个中央开关矩阵互连而成。每个 PAL 块内又含多个宏单元(输出宏单元和隐埋宏单元),中央开关矩阵为 多个PAL 块的信号输入和块间通信提供通路。在实验指导书中对该器件结构有更详细地介绍。
与 GAL20V8 芯片相比,MACH有更多的输入输出引脚和更多的宏单元,支持的逻辑功能更加强大,使用更加方便,还支持在线编程写入。在教学计算机中,主要作为组合逻辑控制器的时序控制信号形成部件,用于提供基本指令用到的全部控制信号。
用现场可编程逻辑器件 CPLD实现组合逻辑控制器是非常方便和有效的,对理解数字系统设计自动化的知识也很有用。
可在线编程门阵列器件FPGA
这是一种与 PLD 器件在内部结构、功能特性方面都不相同的器件。其内部由许多个独立的可编程逻辑模块 CLB、输入输出模块 IOB 和互连资源 IR 3部分组成。
与 IOB 连接的输入输出引脚更多,大部分入出引脚支持三态逻辑,极性可控,可指定用于输入或输出;
每一个 CLB 的内部都包含一些组合逻辑电路和 1 或 2 个触发器电路,能编程实现不同的组合、时序逻辑线路功能。
内部互连资源由金属线、开关阵列和可编程连接点组成,用于连接众多的 CLB 和 IOB ,以构成不同的复杂系统。
FPGA 芯片的工作状态(提供的逻辑功能)是由芯片内的编程数据存储器的内容决定的,这些数据要存在片外的 EPROM 器件中,每次重新加电后,将其装入到编程数据存储器中。
FPGA 芯片集成度更高,功能更强大,但对决定内部功能的数据不能加密,各信号的延迟时间不是固定的,需要注意。可用选用 FPGA 芯片实现简单一点的 CPU 的功能。
|