1、2022-12-31本章重点:本章重点:*半导体存储器的结构、分类及应用;*可编程器件的原理及应用;*硬件描述语言。2022-12-327.1 半导体存储器半导体存储器 存储器(Memory)是计算机系统中的记忆设备,用来存放程序和数据。存储器的种类很多,根据存储器使用介质的不同,可分为磁介质存储器、半导体介质存储器、光介质存储器。2022-12-33 按照功能不同,半导体存储器可分为只读存储器(Read Only Memory,ROM)和随机存取存储器(Random Access Memory,RAM)。2022-12-347.1.1 只读存储器 只读存储器(ROM)属于非易失性存储器,断电
2、之后,保存在ROM中的数据仍能够长期保存。ROM通常适合于不频繁写入数据的场合,如计算机和其他数字系统中存储系统软件、应用程序、常数等信息都存放在ROM中。2022-12-351.ROM的分类 根据ROM存储信息的方式不同,可分为以下几类:(1)掩膜ROM(Mask Rom)出厂前由芯片厂家将程序写入到ROM里。写入后信息只能读出,不能再修改。这种ROM的集成度高,适合大批量生产的产品。2022-12-36(2)可编程ROM(PROM)与掩膜只读存储器相比,PROM有一定灵活性,可由用户根据自己的需要编程。PROM在出厂时,所有的信息均为0(或1),用户可以根据自己设计的需要对PROM编程写入
3、信息。由于物理结构和制造工艺的限制,PROM的编程是一次性的,编程后就不能再修改。2022-12-37(3)可擦除的可编程ROM(EPROM)EPROM适用于需要多次改写存贮内容的场合。2022-12-382.ROM的基本结构 ROM的基本结构是由地址译码器、存储矩阵和输出缓冲器组成。2022-12-39 用二极管组成的44位ROM电路。A1、A0称为地址线;W3W0称为字线;D3D0称为位线。2022-12-310 W3W0(字线),高电平有效,每一时刻只有一条为高电平而其余三条为低电平,字线为高电平时选中一行存贮单元(包含4位,称为一个字)。位线输出即为这个字的各位。2022-12-311
4、 存贮矩阵是由二极管矩阵组存贮矩阵是由二极管矩阵组成,当某字线为高电平时,接成,当某字线为高电平时,接于该字线上的二极管就会导通于该字线上的二极管就会导通,因此接有二极管的位线上就,因此接有二极管的位线上就是高电平,而没有接二极管的是高电平,而没有接二极管的位线上就是低电平。当输出使位线上就是低电平。当输出使能(低电平有效)为低电平时能(低电平有效)为低电平时,输出缓冲器打开,位线上的,输出缓冲器打开,位线上的数据就输出到外部的数据总线数据就输出到外部的数据总线D3D0上。上。2022-12-3122022-12-313 为简化作图,也可以画出存储矩阵的结点连接图,即在存储矩阵中接有二极管的交
5、叉点上画一个圆点,代替存储器件。D0D1D2D3W0W1W2W32022-12-3143.ROM的应用 归纳起来主要有以下四个方面的应用:(1)存贮固定的程序在个人电脑中,ROM用来存贮起动程序,上电后计算机首先执行起动程序,将操作系统软件由硬盘调入内存。在以单片机为控制核心的各种数字化仪器中,ROM用来存贮监控程序及仪器的专用程序,使仪器具有智能化功能。2022-12-3152022-12-316(2)存贮固定的数据表格 在数学运算中为了加快运算速度,常将某变量的函数例如三角函数、对数函数等先造一个表,预先写入ROM中。工作时,只要将变量作为地址读取ROM,则从该地址中读出的内容就是这个变量
6、的函数值。2022-12-317(3)产生波形 如果在ROM中预先写入各种波形的数据,例如正弦波、三角波、方波、阶梯波等,用一个二进制计数器为ROM提供地址,ROM的输出数据经D/A转换器转换为模拟信号,再经低通滤波器,就可以得到相应的波形。2022-12-318例如:将一片EPROM 2716中写入如下数据:00H-01H-FEH-FFH-FEH-01H-00H-01H-。采用如下电路,振荡器产生的连续脉冲信号作为计数器的时钟输入,计数器由3片四位二进制计数器74LS163组成12位的同步计数器,计数器的低11位输出作为EPROM的地址,这样,EPROM就可以反复输出其存贮的数据,在示波器上
7、就可以观察到一个三角波形。A10A0Q7Q0CEOEEPROM(2716)由3片74LS163组成的同步计数器振荡器D/A低通滤波器送示波器2022-12-319(4)实现组合逻辑函数 从ROM的结构可看出,当把输入地址看作二进制变量,将地址译码器的输出看作是由输入变量组成的全部最小项,将存储矩阵(或阵列)看作是“或”输出时,则ROM就可组成任意组合逻辑,具有n位地址输入、m位数据输出的ROM可实现m个n变量的组合逻辑函数。2022-12-320【例7-1】利用ROM完成8421BCD到余3码的转换。解:设8421BCD为A3A2A1A0,余3码为Y3Y2Y1Y0,二者之间的对应关系如表7-2
8、所示。2022-12-3212022-12-322 取具有4位地址输入、4位数据输出的164位ROM,将4个输入变量分别接至地址输入端A3、A2、A1、A0,按照逻辑函数的要求存入相应的数据,即可在数据输出端获得Y3、Y2、Y1、Y0。具体实现电路如图7-8所示。2022-12-3237.1.2 随即存取存储器 随机存取存储器(Random Access Memory,RAM)是一种读写方便、使用灵活的随机读/写存储器。但是一旦掉电,存储的信息就会丢失。RAM适用于数据需要随时读写的工作环境。如计算机里的内存条,显卡的显存就是典型的RAM。2022-12-3241.RAM的分类 RAM根据原理
9、的不同,分为静态随机存取存储器(SRAM)和动态随机存取存储器(DRAM)两种。按照集成电路器件的不同,又可分为双极型和MOS型两种。2022-12-325(1)SRAM SRAM是一种只要在供电条件下便能够存储数据的存储器件,是大多数高性能系统的一个关键部分。SRAM的特点是工作速度快,只要电源不撤除,写入SRAM的信息就不会消失,不需要刷新电路,同时在读出时不破坏原来存放的信息,一经写入可多次读出,但集成度较低,功耗较大。SRAM一般用来作为计算机中的高速缓冲存储器(Cache)。2022-12-3262022-12-327(2)DRAM DRAM,它是利用场效应管的栅极对其衬底间的分布电
10、容来保存信息,以存储电荷的多少,即电容端电压的高低来表示“1”和“0”。DRAM集成度较高,功耗也较低,但缺点是保存在DRAM中的信息_场效应管栅极分布电容里的信息随着电容器的漏电而会逐渐消失,一般信息保存时间为2ms左右。为了保存DRAM中的信息,必须每隔12ms对其刷新一次。因此,采用DRAM的计算机必须配置动态刷新电路,防止信息丢失。DRAM一般用作计算机中的主存储器。2022-12-3282.RAM的特点(1)随机存取(2)易失性(3)高访问速度(4)需要刷新(5)对静电敏感2022-12-3293.RAM的应用 RAM主要的应用场合是计算机系统,例如个人电脑中的内存用的就是DRAM。
11、因为DRAM需要刷新逻辑电路,所以在数字化仪器仪表的单片机系统中,大都采用SRAM。常用的SRAM有几种:2114 1K4位;6116 2K8位;6264 8K8位。2022-12-330图7-10是由2片6264构成的16KB的数据存贮器电路,每片6264的地址范围为:RAM0,2000H-3FFFH,8KB;RAM1,4000H-5FFFH,8KB2022-12-3317.2 可编程器件7.2.1概述 为了解决早期采用专用集成电路(ASIC)完成电路设计所存在的。开发费用高、设计周期长、产品的性价比较低等缺陷。出现了一种新的器件:能够简化设计过程、降低系统体积、节约成本、提高可靠性、缩短研
12、发周期、各个厂家可以提供、具有一定连线和封装好的具有一定功能的标准电路。使用户可以根据需要自己使用某种编程技术进行内部电路结构的连接,实现用户既是设计者也是使用者的转变,这就是可编程逻辑器件(PLD)。2022-12-3322022-12-3332022-12-3342022-12-3352022-12-3362022-12-3372022-12-3382022-12-3397.2.2可编程阵列逻辑(PAL)PAL属于可编程逻辑器件的早期产品。它由一个可编程的“与”逻辑阵列和一个固定的“或”逻辑阵列构成。由于任意一个组合逻辑都可以用“与或”表达式来描述,所以,通过对“与”逻辑阵列编程可以获得不
13、同形式的组合逻辑函数。2022-12-340阵列2022-12-3412022-12-3422022-12-3432022-12-3442022-12-3452022-12-346CBCACABCAF1BCABBCAABF2BABAF32022-12-347BCABF2CBCAF1BABAF32022-12-3487.2.3通用阵列逻辑(GAL)2022-12-3492022-12-3502022-12-3512022-12-3522022-12-3532022-12-3542022-12-355111BAF 222BAF333BAF 444BAF555BAF666BAF2022-12-356
14、2022-12-3572022-12-3582022-12-3597.2.4 CPLD和FPGA一、CPLD2022-12-3602022-12-3612022-12-3622022-12-3632022-12-364二、现场可编程门阵列FPGA2022-12-3652022-12-3662022-12-3672022-12-3687.2.5 ISP技术 可编程器件的编程方式有两种,一种是采用专用编程器进行编程,一种是在系统编程(ISP,In-System Programming)。后者甩掉了专用编程器,而且也不用将芯片从电路系统取下,只利用计算机和一组下载电缆就可以在系统编程,已经编程的器件
15、也可以用ISP方式擦除或再编程。2022-12-3691.ISP的工作原理 ISP的实现相对要简单一些,一般是通过片内可擦写的FLASH存储器实现的。其通用做法是内部的存储器可以由上位机的软件通过串口来进行改写。对于单片机来讲可以通过SPI或其它的串行接口接收上位机传来的数据并写入存储器中。所以即使我们将芯片焊接在电路板上,只要留出和上位机接口的这个串口,就可以实现芯片内部存储器的改写,而无须再取下芯片。2022-12-3702.ISP的优点 ISP技术的优势是不需要编程器就可以进行单片机的实验和开发,单片机芯片可以直接焊接到电路板上,调试结束即成成品,免去了调试时由于频繁地插入取出芯片对芯片
16、和电路板带来的不便。ISP技术为随时改变系统的数据代码,从而改变系统的逻辑功能带来了极大的方便,它是现代电子技术的一项重要成就。目前ISP技术被广泛地应用在单片机(微处理器)、可编程逻辑集成电路等中。ISP技术是未来发展的方向。2022-12-3717.3 硬件描述语言2022-12-3727.3.1 概述 随着EDA技术的发展,采用硬件描述语言进行PLD/CPLD/FPGA设计开发成为当前的一种发展趋势。硬件语言采用软件编程的方法来描述电子系统的逻辑功能、电路结构和连接方式等。利用硬件描述语言设计电子系统要比传统的原理图法简洁、准确、方便;同时它可以对电子系统的设计进行不同层次、不同领域的仿
17、真验证和综合优化等处理,从而实现设计的高度自动化。现在,国内外硬件描述语言的种类十分繁多,目前广泛应用的硬件描述语言有ABEL、AHDL、Verilog HDL和VHDL。2022-12-3737.3.2 VHDL/Verilog HDL的开发流程 目前最主流的硬件描述语言是VHDL和Verilog HDL。一般而言,这两种语言在使用时的侧重点稍有不同,前者非常适合大型电子系统的描述,后者则更加适合硬件细节的描述。用VHDL/VerilogHD语言开发PLD/FPGA的完整流程为:2022-12-374(1)文本编辑(2)功能仿真(3)逻辑综合(4)布局布线(5)时序仿真(6)编程下载2022
18、-12-3757.3.3 VHDL开发实例1.VHDL的结构 在VHDL中,一个任意复杂度的电路模块都看作是一个设计单元,这个模块可以是门、芯片或电路板。也就是说,一个VHDL设计单元不仅可以描述诸如门电路那样的简单电路,也可以描述诸如微处理器那样的复杂电路。VHDL中,一个完整的设计单元是由库、程序包、实体说明、结构体和配置五部分组成的。2022-12-3762.VHDL源文件的基本格式常用的VHDL源文件基本格式为:LIBRARY 库名;-库USE 库名.程序包名.程序包中的项目;-程序包ENTITY 实体名 IS -实体说明PORT();END 实体名;ARCHITECTURE 结构体名
19、 OF 实体名 -结构体()END 结构体名;2022-12-3773.VHDL设计实例【例7-5】用VHDL硬件描述语言设计一个两输入与门。解:两输入与门的代码如下所示。LIBRARY IEEE;-库USE IEEE.std_logic_1164.ALL;-程序包ENTITY and2gate IS -实体说明PORT(a,b:IN std_logic;f:OUT std_logic);END and2gate;ARCHITECTURE and2b OF and2gate IS -结构体BEGIN f=a AND b;END and2b;本例中,实体部分描述的是两输入与门的外部特征,即:a,b为输入信号,f为输出信号;结构体部分描述的是两输入与门的逻辑功能,即:f=ab。若要设计一个两输入异或门,只需要将上述程序中的f=a AND b改为f=a XOR b,然后出现“and”的地方均用“xor”替代即可。2022-12-378