1、第8章 半导体存储器和可编程逻辑器件 8.1 概述 8.2 只读存储器(ROM)8.3 随机存取存储器(RAM)8.4 可编程逻辑器件(PLD)8.5 用存储器实现组合逻辑函数 第第8 8章章 半导体存储器和可编程逻辑器件半导体存储器和可编程逻辑器件 第8章 半导体存储器和可编程逻辑器件 半导体存储器是当今数字电路系统中不可缺少的重要组成部分,它不仅能够大量存放数据、资料和运算程序等二进制数码,而且可以大量存放文字、声音和图像等二元信息代码。8.1 8.1 概概 述述 第8章 半导体存储器和可编程逻辑器件 8.2.1 固定固定ROM1.结构结构固定ROM由地址译码器和存储矩阵两部分组成,为了增
2、强带负载能力,在输出端接有读出电路,其结构示意图如图8-1所示。8.2 8.2 只读存储器只读存储器(ROM)(ROM)第8章 半导体存储器和可编程逻辑器件 图8-1 ROM结构示意图第8章 半导体存储器和可编程逻辑器件 2.工作原理工作原理如图8-2所示是一个由二极管构成的容量为44的固定ROM。地址译码器就是一个由二极管与门构成的阵列,称为与阵列。存储矩阵是由二极管或门构成的阵列,称为或阵列。由此可以画出如图8-3所示的ROM逻辑图。第8章 半导体存储器和可编程逻辑器件 图8-2 二极管ROM电路第8章 半导体存储器和可编程逻辑器件 图8-3 图8-2所示ROM的逻辑图第8章 半导体存储器
3、和可编程逻辑器件 由图8-3可得地址译码器的输出为 (8.1)013012011010AAWAAWAAWAAW第8章 半导体存储器和可编程逻辑器件 存储矩阵的输出为(8.2)由这些表达式可求出如图8-2所示ROM的存储内容,如表8-1所示。0131010102101021231010103011010DWWA AA ADWWA AA ADWWWA AA AA ADWWA AA A第8章 半导体存储器和可编程逻辑器件 表表8-1 图图8-2所示所示ROM的存储内容的存储内容 第8章 半导体存储器和可编程逻辑器件 如图8-2所示的ROM可以画成如图8-4所示的阵列图。图8-4 ROM简化阵列图(点
4、阵图)第8章 半导体存储器和可编程逻辑器件 8.2.2 可编程可编程ROM(PROM)固定ROM存储的信息是固定的,用户不能改变。而在实际应用时,用户往往需要方便自己编程,将一些新的数据和信息存储到存储器中。这样,就产生了PROM、EPROM等可编程只读存储器,以满足用户的不同需求。本节先介绍一次编程只读存储器(PROM)。第8章 半导体存储器和可编程逻辑器件 厂家为了满足用户的需求,在制造这种器件时,让存储矩阵中所有存储单元的内容为1。其具体结构是:在存储矩阵的每个交叉点处都制作了二极管、双极型晶体管或MOS场效应管,而且,每个管子都串联了一个快速熔丝,如图8-5所示。图8-6就是一个PRO
5、M存储矩阵全部存1的示意图。第8章 半导体存储器和可编程逻辑器件 图8-5 PROM存储单元中的熔丝第8章 半导体存储器和可编程逻辑器件 图8-6 存储矩阵全部存1 第8章 半导体存储器和可编程逻辑器件 PROM的基本结构常用如图8-7所示的阵列图表示。它由一个固定的与阵列(地址译码器)和一个可编程的或阵列(存储矩阵)组成,图中黑点表示固定的连接点,带叉点表示编程点,这就是一个尚未编程的PROM阵列图。第8章 半导体存储器和可编程逻辑器件 图8-7 PROM的基本结构图 第8章 半导体存储器和可编程逻辑器件 8.2.3 可擦除可编程可擦除可编程ROM(EPROM)1 光可擦除可编程只读存储器光
6、可擦除可编程只读存储器(EPROM)用紫外线或X射线擦除的可编程只读存储器称为EPROM,现在也称为UVEPROM。图8-8(a)为UVEPROM内用N沟道增强型浮置栅MOS管组成的一个存储单元结构,其符号及单元电路如图8-8(b)所示。控制栅g用于控制其内部的浮置栅Gf,用于存储信息1或0。第8章 半导体存储器和可编程逻辑器件 图8-8 N沟道增强型MOS管的结构及符号第8章 半导体存储器和可编程逻辑器件 2 电可擦除可编程只读存储器电可擦除可编程只读存储器(E2PROM)由于EPROM必须把芯片放在专用设备上用紫外线进行擦除,因此耗时较长,又不能在线进行,使用起来很不方便。后来出现了采用电
7、信号擦除的可编程ROM,称为E2PROM,它可以进行在线擦除和编程。由于器件内部具有由5V产生21V的转换电路和编程电压形成电路,因此在擦除信息和编程时无需专用设备,且擦除速度较快。E2PROM存储单元结构有两种,一种为双层栅介质MOS管,另一种为浮置隧道氧化层MOS管。后者型号有2816、2816A、2817、2817A,均为2K8位;2864为8K8位。它们的擦写次数可达104次以上。第8章 半导体存储器和可编程逻辑器件 8.3.1 静态随机存储器静态随机存储器(SRAM)1 SRAM的基本结构及输入输出的基本结构及输入输出SRAM的基本结构与ROM类似,由存储阵列、地址译码器和输入/输出
8、控制电路三部分组成,其结构框图如图8-9所示。其中A0An1是n根地址线,I/O0 I/Om1是m根双向数据线,其容量为2nm位。8.3 8.3 随机存取存储器随机存取存储器(RAM)(RAM)第8章 半导体存储器和可编程逻辑器件 图8-9 SRAM结构框图 第8章 半导体存储器和可编程逻辑器件 2 SRAM存储单元存储单元SRAM与ROM的主要差别是存储单元。SRAM的存储单元是由锁存器(或触发器)构成的,因此,SRAM属于时序逻辑电路。图8-10画出了存储矩阵中第j列、第i行存储单元结构示意图。第8章 半导体存储器和可编程逻辑器件 图8-10 存储矩阵中第j列、第i行存储单元结构示意图第8
9、章 半导体存储器和可编程逻辑器件 8.3.2 动态随机存储器动态随机存储器(DRAM)单管动态DRAM 单元是由一个晶体管V和一个电容CS构成的,如图8-11所示。第8章 半导体存储器和可编程逻辑器件 图8-11 单管DRAM存储单元结构第8章 半导体存储器和可编程逻辑器件 假设UBIT是在CS上的初始电压,UBL是在电荷重新分布后在位线上的电压。电压的变化量计算如下:SDSPREBITPRESDDPRESBITPREBL)(CCCUUUCCCUCUUUU第8章 半导体存储器和可编程逻辑器件 8.3.3 存储容量的扩展方法存储容量的扩展方法1.字长字长(位数位数)的扩展的扩展通常RAM芯片的字
10、长为1位、4位、8位、16位和32位等。当实际的存储器系统的字长超过RAM芯片的字长时,需要对RAM实行位扩展。位扩展可以利用芯片的并联方式实现,即将RAM的地址线、读/写控制线和片选信号对应地并联在一起,而各个芯片的数据输入/输出端作为字的各个位线。如图8-12 所示,用4个4k4位的RAM芯片可以扩展成4k16位的存储系统。第8章 半导体存储器和可编程逻辑器件 图8-12 用4个4k4位的RAM芯片扩展成4k16位的存储系统 第8章 半导体存储器和可编程逻辑器件 字数的扩展可以利用外加译码器控制存储器芯片的片选端来实现。例如,利用2-4线译码器74LS139将4个8k8位的RAM芯片扩展成
11、为32k8位的存储器系统。扩展方式如图8-13 所示。第8章 半导体存储器和可编程逻辑器件 图8-13 用4个8k8位的RAM芯片扩展成32k8位的存储器系统 第8章 半导体存储器和可编程逻辑器件 8.4.1 PLD基本电路的结构、功能与习惯表示法基本电路的结构、功能与习惯表示法PLD的结构框图如图8-14所示。8.4 8.4 可编程逻辑器件可编程逻辑器件(PLD)(PLD)第8章 半导体存储器和可编程逻辑器件 图8-14 PLD的结构框图第8章 半导体存储器和可编程逻辑器件 PLD结构复杂,线路纵横交错。为了清晰地表示PLD,人们约定了一些不同于常规的图形含义和图形符号。图8-15(a)中的
12、黑点表示固定连接点,用户不能改变。图8-15(b)中的带叉点是连通的,但为编程连接,留给用户编程用。用户编程时,需要连通,则保留“”点;需要两线断开,则擦除“”点。图8-15(c)表示断开连接,或者编程时“”点被擦除过。第8章 半导体存储器和可编程逻辑器件 图8-15 PLD中的三种交叉点(a)固定连接;(b)编程连接;(c)断开连接第8章 半导体存储器和可编程逻辑器件 图8-16表明了与门和或门在PLD中的画法。图8-16 与门和或门在PLD中的画法第8章 半导体存储器和可编程逻辑器件 图8-17(a)表示缓冲器。也有的书中把缓冲器的画法用图8-17(b)所示符号表示。图8-17 缓冲器第8
13、章 半导体存储器和可编程逻辑器件 8.4.2 可编程逻辑阵列可编程逻辑阵列(PLA)【例例8.1】用PLA实现4位二进制码转换为格雷码的代码转换电路。解解 根据表8-2所示的代码转换真值表,将多输出函数化简后得到最简输出表达式为 实现电路如图8-18所示。01010121212323233GB BB BGB BB BGB BB BGB第8章 半导体存储器和可编程逻辑器件 表表8-2 二进制码转换为格雷码真值表二进制码转换为格雷码真值表 第8章 半导体存储器和可编程逻辑器件 图8-18 例8.1图第8章 半导体存储器和可编程逻辑器件 图8-19所示为时序逻辑型PLA结构图,与组合型PLA结构相比
14、,它由可编程的与阵列、或阵列和触发器存储电路构成。图8-19 时序逻辑型PLA结构图 第8章 半导体存储器和可编程逻辑器件 8.4.3 可编程阵列逻辑可编程阵列逻辑(PAL)1.专用输出结构专用输出结构这种结构的输出只能输出信号,不能做反馈输入,图8-20所示为具有4个乘积项的或非门输出结构。输入信号经过输入缓冲器与输入行相连。图中的输出部分采用或非门,输出低电平有效。若是输出部分采用或门,则输出高电平有效。有的器件还用互补输出的或门,则称为互补型输出。这种输出结构只适用于实现组合逻辑函数。目前常用的产品有PAL10H8(10输入,8输出,高电平有效)、PAL10L8和PAL16C1(16输入
15、,1个输出,互补型)输出等。第8章 半导体存储器和可编程逻辑器件 图8-20 专用输出结构第8章 半导体存储器和可编程逻辑器件 2.可编程输入可编程输入/输出结构输出结构可编程输入/输出结构如图8-21所示。图中或门经三态缓冲器由I/O端引出,三态门受第一个与门所对应的乘积项控制,I/O端的信号也可以经过缓冲器反馈到与阵列的输入。当与门输出为0时,三态门禁止,输出呈高阻状态,I/O引脚作输入使用;当与门输出为1时,三态门被选通,I/O引脚作输出使用。与专用输出结构相比,这种PAL器件的引出端配置灵活,其输入/输出引出端的数目可根据实际应用加以改变,即提供双向输入/输出功能。利用可编程输入/输出
16、型PAL器件,可方便地设计编码器、译码器、数据选择器等组合逻辑电路。这种结构的产品有PAL16L8、PAL20L10等。第8章 半导体存储器和可编程逻辑器件 图8-21 可编程输入/输出结构第8章 半导体存储器和可编程逻辑器件 3.带反馈的寄存器结构带反馈的寄存器结构带反馈的寄存器结构如图8-22所示。这种结构输出端有一个D触发器,在时钟上升沿作用下先将或门的输出(输入乘积项的和)寄存在D触发器的Q端,当使能信号EN有效时,Q端的信号经三态缓冲器反相后输出。触发器的输出还可以通过反馈缓冲器送至与阵列的输入端,因而这种结构的PAL能记忆原来的状态,且整个器件只有一个公用时钟脉冲CP和一个使能信号
17、输入端,从而实现时序逻辑功能,因此可构成计数器、移位寄存器等同步时序逻辑电路。这种机构的PAL产品有PAL16R4、PAL16R8等。Q第8章 半导体存储器和可编程逻辑器件 图8-22 带反馈的寄存器结构第8章 半导体存储器和可编程逻辑器件 4.带异或的寄存器结构带异或的寄存器结构带异或的寄存器结构如图8-23所示。其输出部分有两个或门,它们的输出经异或门进行异或运算后再经D触发器和三态缓冲器输出。这种机构不仅便于对与或逻辑阵列输出函数求反,还可以实现对寄存器状态进行保持操作。第8章 半导体存储器和可编程逻辑器件 图8-23 带异或的寄存器结构第8章 半导体存储器和可编程逻辑器件【例例8.2】
18、用PAL器件设计一个3-8线译码器。解解 设输入选通端为,译码器的地址输入为A0、A1和A2,其输出为。3-8线译码器的真值表如表8-3所示。EN70YY第8章 半导体存储器和可编程逻辑器件 表表8-3 3-8线译码器的真值表线译码器的真值表 第8章 半导体存储器和可编程逻辑器件 由表8-3可知,当输入选通端为0,3-8线译码器的输出表达式为EN,0120AAAY,0121AAAY,0122AAAY,0123AAAY,0124AAAY,0125AAAY,0126AAAY 0127AAAY 第8章 半导体存储器和可编程逻辑器件 因为输出表达式为组合型负逻辑函数,需要输出低电平有效的PAL器件;又
19、要求具有使能输出,需要带输出三态控制的PAL器件;另外需要4个输入端,8个输出端。PAL16L8器件为可编程输入/输出型结构的PAL器件,它有16个输入端、8个输出端。每个输出中有8个乘积项,其中每个输出中第一个乘积项为专用乘积项,用于控制三态输出缓冲器的输出。故可以选用PAL16L8器件实现3-8线译码器。简化示意图如图8-24所示。第8章 半导体存储器和可编程逻辑器件 图8-24 用PAL16L8实现3-8线译码器 第8章 半导体存储器和可编程逻辑器件 8.4.4 通用阵列逻辑通用阵列逻辑(GAL)GAL器件具有以下优点:(1)采用电擦除工艺和高速编程方法,使器件擦除改写方便、快速,改写整
20、个芯片只需要几秒钟,一片可改写100次以上。(2)采用先进的E2CMOS工艺,使GAL器件既有双极型器件的高速性能,又有CMOS器件功耗低的优点。存取速度为几十纳秒,功耗仅为双极型PAL器件的几分之一,编程数据可保存20年以上。第8章 半导体存储器和可编程逻辑器件(3)采用可编程逻辑宏单元(OLMC),使器件结构灵活,通用性强。少数几种GAL器件几乎可以取代大多数的中、小规模数字集成电路和PAL。(4)具有加密功能,可有效防止电路设计被非法抄袭;具有电子标签,便于文档管理,提高了生产效率。GAL16V8器件逻辑结构图如图8-25所示。第8章 半导体存储器和可编程逻辑器件 图8-25 GAL16
21、V8逻辑图第8章 半导体存储器和可编程逻辑器件 图8-26 中所示移位寄存器是一个高速串行移位寄存器,共82位。第8章 半导体存储器和可编程逻辑器件 图8-26 可编程单元地址分配图第8章 半导体存储器和可编程逻辑器件 8.4.5 在系统可编程逻辑器件在系统可编程逻辑器件(ISP-PLD)在高密度ISP-PLD中,以ispLSI1016为例作一简单介绍。它的电路结构框图和逻辑功能划分框图分别如图8-27和图8-28所示。第8章 半导体存储器和可编程逻辑器件 图8-27 ispLSI1016的电路结构框图第8章 半导体存储器和可编程逻辑器件 图8-28 ispLSI1016的逻辑功能划分框图 第
22、8章 半导体存储器和可编程逻辑器件 由图8-27可见,ispLSI1016芯片有A0A7和B0B7共16个通用逻辑快GLB(GenericLogic Block)、32个输入/输出单元IOC、全局布线区GRP(Global Routing Pool)、时钟脉冲分配网络CDN(Clock Distribution Network)和编程控制电路。N0N3是4个专用输入。(1)全局布线区GRP。GRP位于芯片中央。通过编程,可将16个GLB互相连接以及与IOC和ORP连接,任何一个GLB都能与任何一个IOC相连。第8章 半导体存储器和可编程逻辑器件(2)通用逻辑块GLB。GLB位于GRP的两边,每
23、边8块,共16块。GLB主要由可编程的与阵列、乘积项共享的或阵列和四输出逻辑宏单元 OLMC三部分组成,如图8-29所示。它的与阵列有18个输入端,其中16个来自GRP,2个是专用输入。每个GLB有20个与门,组成20个乘积项。4个或门的输入分别按4、4、5、7配置,它们的4个输出分别送至4个输出逻辑宏单元 OLMC,OLMC的4个输出分别送至GRP、ORP和IOC。第8章 半导体存储器和可编程逻辑器件 图8-29 GLB的电路结构框图第8章 半导体存储器和可编程逻辑器件(3)输出布线区ORP。ORP是可编程阵列,阵列的输入是8个GLB的32个输出。阵列的16个输出端分别与该侧的16个IOC相
24、连,这就是把GLB的输出信号连接到IOC。不仅可以将一个GLB的输出送至16个IOC的某一个,还可以通过输入总线和GRP送至另一侧的16个IOC。ORP逻辑功能的示意图如图8-30所示。(4)时钟脉冲分配网络CDN。(5)编程使能信号ispEN。第8章 半导体存储器和可编程逻辑器件 图8-30 ORP逻辑功能的示意图 第8章 半导体存储器和可编程逻辑器件 8.4.6 复杂可编程逻辑器件复杂可编程逻辑器件(CPLD)复杂可编程逻辑器件(CPLD)是在简单PLD的概念基础上做了进一步的扩展,从而改善了系统的性能,提高了器件的集成度,使印刷电路板的面积缩小,可靠性提高,成本降低。和简单PLD相比,C
25、PLD有更多的输入信号、乘积项和宏单元。目前,生产CPLD器件的公司主要有:美国的Altera、AMD、Lattice和Xilinx等公司。尽管各厂商所生产的器件结构千差万别,但它们仍有共同之处,图8-31是一般CPLD器件的结构框图。第8章 半导体存储器和可编程逻辑器件 图8-31 CPLD器件的结构框图 第8章 半导体存储器和可编程逻辑器件(1)逻辑块。CPLD中的逻辑块类似于一个低密度的PLD,如GAL。(2)可编程内部连线。可编程内部连线的作用是实现逻辑块与逻辑块之间、逻辑块与I/O块之间以及全局信号到逻辑块和I/O块之间的连接。连接区的可编程连接一般由E2CMOS管实现,其原理如图8
26、-32所示,当E2CMOS管被编程为导通时,纵线和横线连通;被编程为截止时,则不通。(3)I/O单元。第8章 半导体存储器和可编程逻辑器件 图8-32 可编程内部连线原理图第8章 半导体存储器和可编程逻辑器件 8.4.7 现场可编程门阵列现场可编程门阵列(FPGA)图8-33为FPGA的基本结构图,由可编程输入/输出模块(IOC)、可编程逻辑模块(CLB)和可编程连线资源(IR)组成,还有一个用于存放编程数据的静态存储器,其中设定的数据用来确定三种可编程单元的工作状态。第8章 半导体存储器和可编程逻辑器件 图8-33 FPGA的基本结构图第8章 半导体存储器和可编程逻辑器件 1.可编程输入可编
27、程输入/输出模块输出模块(IOC)2.可编程逻辑模块可编程逻辑模块(CLB)3.可编程连线资源可编程连线资源(IR)第8章 半导体存储器和可编程逻辑器件 8.4.8 在系统可编程通用数字开关在系统可编程通用数字开关(ispGDS)现以ispGDS22为例介绍其结构和工作原理,图8-34为ispGDS22的结构框图,它由可编程开关矩阵和一些输入/输出单元IOC组成。第8章 半导体存储器和可编程逻辑器件 图8-34 ispGDS22的结构框图第8章 半导体存储器和可编程逻辑器件 可编程开关矩阵中每个交叉点是否接通,可用一位编程单元的状态来控制。这样,通过编程的方法可将A列中某一个IOC与B列中某一
28、个IOC接通。IOC的电路结构如图8-35 所示。第8章 半导体存储器和可编程逻辑器件 图8-35 IOC的电路结构图第8章 半导体存储器和可编程逻辑器件【例例8.3】试用ROM构成全减器。解解 全减器有三个输入量和两个输出量。设A是被减数,B是减数,C0是低位借位;输出量S为本位差数,C为本位向高位借位数。全减器输出量S和C的逻辑式为 (8.3)(8.4)8.5 8.5 用存储器实现组合逻辑函数用存储器实现组合逻辑函数 00001247SABCABCABCABCmmmm00001237CABCABCABCABCmmmm第8章 半导体存储器和可编程逻辑器件 全减器的逻辑状态及三输入变量的最小项
29、编号如表8-4所示。输入变量数n3,最小项数N238。根据表8-4,由ROM构成的全减器如图8-36所示。A、B和C0作为地址码,其不同的取值对应不同的最小项,选中不同的字线为1。在式(8.3)和式(8.4)中,S含有最小项m1、m2、m4和m7;C也含有最小项m1、m2、m3和m7。第8章 半导体存储器和可编程逻辑器件 表表8-4 用用ROM构成全减器的逻辑状态构成全减器的逻辑状态 第8章 半导体存储器和可编程逻辑器件 图8-36 用ROM构成的全减器阵列图 第8章 半导体存储器和可编程逻辑器件【例例8.4】图8-37是用ROM构成的七段译码器的电路框图。A3A2A1A0是四位二进制数,RO
30、M七段译码器的输出ag控制半导体数码管七个字段(共阴极接法,高电平有效)。试列出ROM七段译码器状态表,画出ROM阵列图。第8章 半导体存储器和可编程逻辑器件 图8-37 ROM七段译码电路框图 第8章 半导体存储器和可编程逻辑器件 解解 四位二进制数A3A2A1A0共有N24=16个最小项,其中m0m9对应十进制数的09这十个数码,如表8-5所示。表表8-5 ROM七段译码状态表七段译码状态表 第8章 半导体存储器和可编程逻辑器件 图8-38为ROM七段译码的阵列图,带叉点上的黑点表示存1,无黑点表示存0。第8章 半导体存储器和可编程逻辑器件 图8-38 ROM七段译码阵列图第8章 半导体存
31、储器和可编程逻辑器件【例例8.5】试用PROM实现一组逻辑函数:解解 (1)由于PROM的地址译码器是最小项译码器,所以需把Y0Y2各式化为最小项形式:012YABCYABCACYABCDABCDBCD第8章 半导体存储器和可编程逻辑器件 06711011121314152671014()()()()()YABC DDABCDABCDmmYABCACABC DDAC BB DDABCDABCDABCDABCDABCDABCDmmmmmmYABCDABCDBCD AAABCDABCDABCDABCDmmmm第8章 半导体存储器和可编程逻辑器件(2)按Y0Y2各式总共含有的最小项编程,可画出如图8-39所示的阵列图。画法是:标出输入变量的原变量A、B、C、D。在与阵列上用黑点标出上述8个最小项(其余不用的最小项不必标出)。在或阵列上根据Y0Y2各式的最小项选留编程点“”(未标叉点处表示已被擦除)。第8章 半导体存储器和可编程逻辑器件 图8-39 例8.5图