乐竞体育

半导体存储器思维导图

发表时间:2022-08-16 06:57:18 | 作者:乐竞体育

  半导体存储器一般指半导体集成存储器。用半导体集成电路工艺制成的存储数据信息的固态电子器件。简称半导体存储器。

  半导体存储器具有存取速度快、集成度高、体 积小、功耗低、应用方便的特点

  –双极型 速度快,集成度较低、功耗大、价格偏高 。由TTL晶体管逻辑电路构成,常用作高速缓存器 (Cache) –MOS型(金属氧化物半导体型)主要用来构造内存 ,集成度高、功耗低、价格便宜,但速度较双极型 器件慢。

   随机存取存储器RAM(Ramdom Access Memory 随机存储器RAM组成计算机的内存储器。所有在计算机中运 行的程序和使用的数据都要调入RAM,才能在CPU的控制下 工作。  只读存储器ROM(Read Only Memory) 只读存储器ROM用来存放各种固定的程序和数据。特别在小 型控制系统中,用来存放系统的控制程序。非易失性存储器

  存储容量:半导体存储器芯片的存储容量是指存储器可以容纳的二进制信息量 用N×M表示,N为存储单元数,M为每个存储单元存储信息的位数。 

  存储器的可靠性用平均故障间隔时间(MTBF,Mean Time Between Failures)来衡量,MTBF越长,可靠性越高。

   半导体存储器由地址寄存器MAR、译码驱动电路、 存储体、读/写驱动电路、数据寄存器MDR、控制逻辑6部分组成

  这种存储电路的读出过程是非破坏性的,即信息在读出之后,原存储电路的状态不变。

  典型的静态RAM芯片如HM 6116(2K×8位),6264(8K×8位),62128(16K×8位)和 62256(32K×8位)等

   6116是一种2048×8位的高速静态CMOS随机存取存储器,其基本特征是: (1)高速度 存取时间为100 ns/120 ns/150 ns/200 ns(分别以6116—— 10、6116——12、6116—15、6116—20为标志。 (2)低功耗 运行时为150 mW,空载时为100 mW。 (3)与TTL兼容。 (4)管脚引出与标准的2K×8b的芯片(例如2716芯片)兼容。 (5)完全静态——无需时钟脉冲与定时选通脉冲。

  – 静态RAM的引脚: 数据线:由RAM的位数决定; 地址线:由RAM的单元数决定; 控制线:CE:片选,有效时,芯片才工作; WE:读写控制,为0时写,为1时读; OE:输出控制,为0时,允许输出。 – 和CPU的连接。

  • 信号存储在电容 C上。 • 行选择信号有效时可以刷新, 也可以读出,但读出时必须列选择信号也有效。 • 破坏性读出 – 为使Cs上读出后仍能保持原存信息(电荷),刷新放大器需要对这些电容进行重写操作,以补充电荷使之保持 原信息不变----回写(刷新)。

  • 为了降低芯片的功耗,保证足够的集成度,减少芯片对外封装引脚数目和便于刷新控制,DRAM芯片都设计 成位结构形式,即每个存储单元只有一位数据位 –一个芯片上含有若干字,如4K×1位,8K×1位, 16K×1位, 64K×1位或 256K×1位等。 –存储体的这一结构形式是DRAM芯片的结构特点之一。

  • 基本特征: (1)存取时间为150 ns/200 ns(分别以2164A-15、2164A20为标志)。 (2)低功耗,工作时最大为275 mW,维持时最大为27.5 mW。 (3)每2ms需刷新一遍,每次刷新512个存储单元,2 ms内需 有128个刷新周期。 •动态RAM – 动态RAM的位数都是1位; – 动态RAM的地址引脚只是实际地址线的一半。 – 为保证地址正确读入,有行、列地址控 制输入CAS和RAS,控制输入有效 时,分 别读入一半地址。 – 2164是64K×1位RAM。 

  DRAM与CPU相连时,其管脚和CPU三总线相连接的方法与SRAM基本类似,但是必须强调的是:DRAM由于其结构的不同,其与CPU连接时必须考虑三个特殊问题

  与SRAM不同,DRAM基本上都是采用CMOS管栅极电容充放电的原理来存取一位二进制信息,因此,为防止电容电荷泄露造成的信息丢失,就必须定时对DRAM所存取的数据进行刷新。因此需要设计定时刷新电路。 实现DRAM刷新的方法和电路很多,可以由CPU通过定时中断方式来处理,也可以由DMA控制器来实现,还可以采用专用DRAM刷新控制器来实现。

  DRAM芯片管脚往往采用两路复用锁存方式,即把地址信号分成行、列两组,共用地址输入线,分两次将其输入芯片内部进行锁存; 为指明当前地址信号是行地址信号还是列地址信号,分别由行、列地址选通信号RAS和CAS来控制。

  DRAM芯片都设计成位结构形式,但当前微机系统中存储器均以字节为单位进行组织。因此,必须将8片DRAM芯片(加奇偶校验位则为9片)并联,并以此为单位进行存储器容量的扩展。

  • 与RAM不同,ROM在使用时只能读出,不能随机写入。 • ROM有多种分类,目前用的最多的是EPROM 和EEPROM。

  EPROM芯片常用的有: – 2716(2K×8) – 2732(4K×8) – 2764(8K×8) – 27128(16K×8) – 27256(32K×8) – 27512(64K×8)等。

  •Intel 2732A是一种 4K × 8 b 的EPROM – 12条地址线条数据线 。 – CE为芯片允许信号, 用来选择芯片; – OE为输出允许信号, 用来把输出数据送上数据线, 只有当这两条控制线同时有效时,才能从输出端得到读出的数据。

  PROM在与CPU的接口方法与SRAM芯片非常相似, 但是PROM的写操作必须要利用紫外光进行内容的擦除,然后再使用专门的编程器进行写入,因此 其写操作不能像SRAM一样随机写入。

  具有EPROM的数据非易失性和可更新性。 – 但其数据的写入和擦除由主机系统内用电信号实现。 – 与EEPROM 的数据擦除方式不同,NOR FLASH的数据擦除方式只能采用按块擦除的方式(块的大小一般为256KB~20MB); – NOR FLASH比较适合应用于频繁随机读写的场合,常用于手机等嵌入式系统的程序代码存储器。

  NOR Flash带有SRAM接口,因此其与系统的连接可以采用如同SRAM存储器一样的方法。其操作主要包含读、写编程、扇区/块擦除和芯片擦除。

  其数据和地址采用同一总线进行串行读取,不能随机按字节进行访问。 • 但与NOR FLASH相比,其成本相对较低,容量大,适用于纯数据存储和文件存储的场合,我们常用的U盘和数码存储卡大都是采用NAND型闪存。

  NAND Flash其数据的读取采用较为复杂的I/O口来串行地读取,且产品和厂商不同,读取的方法也不相同,因此其与微处理器的接口较为复杂,其本质实际是一个I/O接口

  双端口存储器具有两组相互独立的读写控制电路, 两组电路独立并行工作,因而工作速度较快而得到较为广泛的应用。

  在高速双端口存储器IDT7132 中,有两个相互独立的端口:左端口 和右端口。分别具有各自的地址线、数据线和控制信号。当任意一 个端口被选中时,即可对整个存储器进行读写。

  微机中的内存往往被分为片内存储器和扩展的片外存储器。构建存储器系统时,应根据微处理器的不同,选择不同的存储器组织结构。

  –首先应该确定整机存储容量,再根据需要确定选用存储芯片的类型和数量 –划分RAM、ROM区,画出地址分配图 –并根据地址分配图确定译码方法 –最后选用合适器件,画出译码电路图。

  – 在微型机系统中,CPU通过总线与存储器芯片连接,而CPU的总线驱动能力有限。 – 一般输出线的直流负载能力为带一个TTL负载,但存储器芯片多为MOS电路,直流负载很小,主要负载为电容负载。 因此在小型系统中,CPU可直接与存储器芯片连接,然而在与大容量的存储器连接时,还是应考虑总线的驱动问题。

  在考虑存储器与CPU连接时,必须考虑存储器芯片的工作速度是否能与CPU的读/写时序相匹配问题,应从存储器芯片工作时序和CPU时序两个方面来考虑。

  – 用一条多余的地址线连接一片存储器芯片,可以直接连接,或通过反相器连接。 – 用线选法寻址,需要增加的硬件电路最少,甚至不需要增加任何硬件。 – 但是,线选法所选择的芯片的地址是不连续的,在使用中不方便。此外,线选法会产生不可以使用的地址,地址的利用率受到影响.

  – 用多余地址线的一部分加到译码器,用译码器的输出控制存储器芯片的片选端。 – 各芯片的地址可以保证是连续的。 – 由于还有一部分地址线没有参加寻址,这些地址线的信号值 可以是任意的。结果是使得每个芯片的地址区不是唯一的,也就是存在着地址的重叠区。

  – 用全部多余的地址线加到译码器,用译码器输出控制存储器芯片的片选端。 – 由于全部地址线都参加译码,存储器芯片的地址将是唯一的。 – 一般来说,全译码需要的译码器比较复杂,译码器的输出可 能没有全部使用。 – 适当地连接译码器,可以即达到全译码的效果,译码器也不太复杂。

  – 根据存储器的容量和芯片的容量决定需要存储器芯片的数目: T=总容量/单片容量 注意:总容量是存储器单元数×8 如:64KB存储器需要2164(64K×1位): (64K×8) / (64K×1)=8片 – 根据需要选择静态或动态RAM

  – 对于8086CPU存储器地址和外设地址可以分开考虑。 但对有些CPU,必须将存储器和外设的地址统一考虑。 – 8086的低端存储区(00000H~003FFH)是用作中断地址表,不能用作一般的程序区。 – 8086的高端(FFFF0H)是复位后的程序入口,使用时必须要住意。

  –在STM32的存储器系统中,存储器与外设空间采用统一的编址方式,且各字节按小端格式在存储器中存储。 – STM32 采用了固定的存储映射结构,其地址空间是 4 GB,程序存储器、数据存储器、寄存器和 I/O 端口排列在此空间内,整个存储空间分为8个主要块,每个块为 512 MB。

  •代码区(0x00000000 ~ 0x1FFFFFFF):用于存放程序。

  •SRAM 区(0x20000000 ~ 0x3FFFFFFF):用于片内SRAM,可存储数据,亦可以存放程序,用于固件升级等维护工作。

  •片上外设区(0x40000000 ~ 0x5FFFFFFF):用于片上外设STM32通过把片上外设的寄存器映射到外设区,从而可以简单地通过访问内存的方式来访问这些外设的寄存器,以控制外设的工作。

  •外部RAM 区的前半段(0x6000 0000 ~ 0x7FFF FFFF):指向片上RAM 或片外 RAM。

  •外部RAM 区的后半段(0x8000 0000 ~ 0x9FFF FFFF):指向片上RAM 或片外 RAM。

  •外部外设区的前半段(0xA000 0000 ~ 0xBFFF FFFF):用于片外外设的寄存器 ,也用于多核系统中的共享内存。

  •外部外设区的后半段(0xC000 0000 ~ 0xDFFF FFFF):用于片外外设的寄存器 ,也用于多核系统中的共享内存。

  •系统区(0xE000 0000 ~ 0xFFFF FFFF):用于私有外设和芯片厂商指定功能区

  • STM32系列采用可变静态存储控制器(Flexible Static Memory Controller, FSMC)这种新型的存储器扩展技术来进行外部存储 器扩展,其可根据系统的应用需要,灵活方便地进行不同类型大容量静态存储器的扩展。

  • FSMC支持多种数据宽度的异步读/ 写操作,而且支持对NOR闪存 、PSRAM、NAND 闪存的同步突发访问,支持程序从FSMC扩展的外部存储器直接运行。

  •STM32支持1GB 的外部RAM扩展,在进行存储器扩展时, FSMC可以将外部存储器划分为256MB 的连续4个存储块

  • 虚拟存储器(Virtual Memory)是指在内存不足的情况下,利用外存储器的一部分空间模拟内存,使软件可以将其当成一般的内存使用,从使用的角度来看, 除了速度较慢外,其他的和内存相比并无明显区别。 • 虚拟存储器圆满解决了计算机存储系统对存储容量、单位成本和存取速度的苛刻要求,取得了三者之间的最佳平衡 • 将主存和辅存的地址空间统一编址,提供了比实际物理内存大得多的存储空间。对虚拟内存空间的访问就像是在访问一个非常大的线性地址空间。 • 在程序运行时,存储器管理软件只是把虚拟地址空间的一小部分映射到主存储器,其余部分则仍存储在磁盘上。 • 当访问存储器的范围发生变化时,处于后台的存储器管理软件再把用户所需要的内容从磁盘调入内存,覆盖原先存在的部分后继续运行。 • 实地址和虚地址转换通过存储器管理部件MMU自动实现 • 基本信息传送单位可采用段式、页式或段页式等

  • 基于程序执行的两个特征: – 程序访问的局部性:过程、循环、子程序。 – 数据存取的局部性:数据相对集中存储。 • 存储器的访问相对集中的特点使得我们可以把频繁访问的指令、数据存放在速度非常高(与CPU速度相当)的SRAM— —高速缓存CACHE中。需要时就可以快速地取出。

  •微处理器的性能  •k为比例常数, f为工作频率,CPI为执行每条指令需要的周期数,H为Cache的命中率,N为存取周期数。 •要提高处理器的性能,应提高工作频率f,减少执行每条指令需要的周期数CPI,提高Cache的命中率H,减少存取周期数N 。 •分级Cache结构一般分为二级 ,提高了命中率,加快了处理 速度,使命中率高达98%。

  存储层次 按照访问速度从高到低,依次为寄存器组、高速缓存( Cache)、内存和外存 

  • CPU工作速度与内存工作速度不匹配 • 解决方法: – CPU插入等待周期——降低了运行速度; – 采用高速RAM——成本太高; – 在CPU和RAM之间插入高速缓存——成本上升不多、但速度可大幅度提高。