第四章 存储器和存储系统分层的存储系统基本概念存储容量 存储器可以容纳的二进制信息量存储器包含的存储单元的总数 存储容量 = 存储单 元(字节)存储器所能记忆的全部二进制信息量 例如:某存储器有4096字节的存储单元 则存储器的存储容量 为 4KB = 32KBit存储系统的分层结构CPU内部主机内部外部设备价格高低容量小大CacheCPURAMROM外存主存带 C ache 的结构层次存储系统中的主存按存储介质分类半导体存储器体积小、功耗低、存取时间短、信息容易丢失磁表面存储器信息不易丢失磁芯 存储器体积庞大、工艺复杂、功耗大光盘存储器记录密度高、耐用性好、可靠性高、可互换性强按存取方式分类只读存储器(ROM) 掩膜R OM、PROM、EPROM、EEPROM、FLASH memory随机存取存储器(RAM) SRAM、DRAM串行访问存 储器 磁带存储器图 主存的基本组成主存的工作过程主存的技术指标存储容量主存中能存放二进制代码的总数存储容量 = 存储单元 数 字长存储速度存取时间:又叫存储器的访问时间,是指启动一次存储器操作(读或写)到完成该操作所需要的全部时间存取周期:存储器进 行连续两次独立的存储器操作所需要的最小时间间隔 MOS的存取周期100ns,TTL的存取周期10ns存储器的带宽每秒从存储器中 进出信息的最大数量。单位为字节/秒或字/秒例如:存取周期为500ns,则1秒周内能进行1/( 500 10 -9 )= 200万次操作,假设每个存储周期能够 访问16位的二进制数,则它的带宽为 200万 2 8 = 200万 2 字节/秒 = 4M字节/秒提高存 储器的带宽:缩短存取周期、增加存储字长、增加存储体几种半导体存储器地址线编号方式:A0,A1,……,An存储器芯片引脚的数目决定的 存储器的容量。一个存储器芯片引脚的数目为10则地址范围为00 0000 0000 – 11 1111 1111存储容量为 210 = 1024 个存储单元,即 1KB。假设CPU有16位的地址总线,那么它可以访问的存储空间范围为 0000H – FFFFH,即 216 = 64KB8086,8088地址总线为20位,可以访问的存储空间的范围为:00000H – FFFFFH,即 220 = 1MB80286地址总线为24位,可访问的存储空间为16M80386,80486和Pentium地址总线为32位,可访问的存储 空间为4GPentium Pro 和 Pentium II 的地址总线为36位,可访问的存储空间为64G16位二进制数表示的地址: 0000, 0001, 0002, …………………… 000E, 000F0000, 0001, 0002, …………………… 0 00E, 000F…………………………………………………………FFE0, FFE1, FFE2, …………………… FFEE, F FEFFFF0, FFF1, FFF2, ………………….… FFFE, FFFF数据线表示方式:D0,D1,…………,Dm存储器 的容量通常为字节也可以用字(16位)、4位或1位来进行表示1K8 表示有1K的存储容量,每个存储单元输出8位数据16K 1 表示有16K的存储容量,每个存储单元输出1位 的数据芯片选择线(片选线)存储器芯片上有一个或一个以上允许存 储器芯片工作的控制线表示方式:片选(CS),片允许(CE), 或简写为 S读写控制线存储器芯片上 传输读、写控制信号,ROM只有读信号,RAM上有一到两个读写控制信号表示方式ROM 允许输出信号 OE 或简称 GRAM 读 信号 WE 或简称 W 写信号 OE 或简称 G只读存储器掩膜ROMPROM存0,则烧断熔丝;存1,熔 丝不断。只能实现一次编程EPROM改写方式紫外线照射电气的方法(EEPROM)FLASH memoryP 基片N+N+SDGSiO 2静态RAM(SRAM)VCCT1T3T2T4T5T6A’A位线B’位线B地址选择动态RAM利用存储器芯片构造存储系统利用与非门实 现译码例:假设某微处理器有20根地址线 A0,A1,A2,…………,A19 8根数据线D0,D1,D2,… ………,D7 20根地址线:CPU可以访问1M个存储单元 8根数据线:CPU和存储器之间每次 传送的数 据为8位 存储器使用 2K 8 EPROM:11根地址线 ,8 根数据线2K8EPROM2K 8 EPROM被译为地址 FF000H~FF7FFH利用译码器实现译码74L S138译码器例:假设微处理器系统中从0E0000H开始的64K存储区 无存储器,已知某一类RAM是8K8的存储芯片, 如何进行扩充?Y0Y1Y2Y3Y4Y5Y6Y7存储器的扩展存储器的位扩展位扩展是指增加存储器的字长,如1K4的存 储器,可组成1K8的存储器21142114存储器的字扩展字扩展是指增加存储器的字的数量,如2片 1K8的存储器,可组成2K8的存储器, 即存储器的容量增加了一倍1K 8 A1K 8 B存 储器的字、位扩展字、位扩展是指既增加存储器的字的数量又增 加字长,如4片1K4的存储器,可 组成2K8的存储器,即存储器的 容量、字长都增加了一倍。1K 41K 41K 41K 4例:假设 8086 系统中从 0E0000H 开始的 64K 存储区无 存储器,2764E PROM 是 8k8 的只读存储器,如何 对其进行扩充?第二步:根据地址范围的容量及该范围在计算机中的应用,选 择存储芯片 要扩充64K的存储容量,给定了只读存储器2764EPROM, 共需要 8 片 2764EPROM 进行扩充。第四步:片选信号的形成 A19 A18 A17 A16 A15 A14 A 13 A12 A11 A10 A9 A8 A7 A6 A5 A4 A3 A2 A1 A0 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 …… …… …… 1 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1Y0Y1Y2Y3 Y4Y5Y6Y7 A19 A18 A17 A16 A15 A14 A13 A12 A11 A10 A9 A8 A7 A6 A5 A 4 A3 A2 A1 A0 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 …… …… …… 1 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1针对译码器的Y0输出,这时CBA=000,即A15=0, A14=0, A13 =0地址范围: 1110 0000 0000 0000 0000 = E0000H 1110 00 01 1111 1111 1111 = E1FFFH针对译码器的Y1输出,这时CBA=001,即A15=0, A14=0, A13 =1地址范围: 1110 0010 0000 0000 0000 = E2000H 1110 00 11 1111 1111 1111 = E3FFFH例:假设 CPU 有16根地址线,8根数据线,并用 MREQ作 为访存控制信 号(低电平有效),用 WR 做读/写控制信号(高电平为读,低电平为写),现有下列存储芯片:1K4位RAM,4K8位RAM,8K 8位RAM,2K8位ROM,4K8位ROM,8K8位ROM及74LS138译码器和各种门电路,画出CPU与存储器的连接图, 要求: 1. 主存地址空间分配 6000H ~ 67FFH 为系统程序区 6800H ~ 6BFFH 为用户程序区 2. 合理选用上述存储芯片,说明各选几片? 3. 详细画出存储器芯片的片选逻辑 图。解:第一步:将地址范围写成二进制代码,并确定其总容量 A15 A14 A13 A12 A11 A10 A9 A8 A7 A6 A5 A4 A3 A2 A1 A0 0 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 …… …… …… 0 1 1 0 0 1 1 1 1 1 1 1 1 1 1 1 0 1 1 0 1 0 0 0 0 0 0 0 0 0 0 0 …… …… …… 0 1 1 0 1 0 1 1 1 1 1 1 1 1 1 1系统程序区2K8用户程序区1K8第二步:根据地址范围的容量及该范围在计算机中的应用,选 择存储芯片 由 6000H ~ 67FFH 为系统程序区,为2K8位,应选择一 片 2K8 位 ROM 由 6800H ~ 6BFFH 为用户程序区,为1K8位,应选择两 片 1K4 位 RAM第三步:分配 CPU 的地址线 将 CPU 的低11位地 址线A10 ~ A0与2K8位的ROM地址线相 连,将 CPU 的低10位地址线A9 ~ A0与1K4 位的RAM地址 线相连,剩下的高位地址与访存控制信号共同产生存储芯 片的片选信号。 第四步:由题给出的74LS138译码器的输入逻辑关系可知,必须保 证G1为高电平,G2A、G2B为低电平才 能使译码器工作。 A15为低,连接到G2A上,A14为高,连接到G1上,MREQ 为低,连接到G2B上 。保证了三个控制端的要求 A13、A12、A11连接到C、B、A上。输出Y4有效 时,选中 一片ROM;Y5有效时,同时A10有效为低电平,选中两片 RAM。读出 时低电平有效,RAM的读/写控制端与CPU的 命令端WR相连 ROM 的数 据线是单向的2K 81K 41K 4MREQD7D6D5D4D3D2D1D0WRA10A9A8A7A6A5A4A3A2 A1A0CBAA13A12A11G1G2AG2BA15A14Y7Y6Y5Y4Y3Y2Y1Y0提高访问存储器速度的方法多存储体方式单 体多字系统前提:指令和数据在主存中必须是连续存放的,一旦遇到转移指令或者操作数不能连续存放,这种方法的效果就不明显多体并行存储系统 (地址码被分为体号、体内地址两部分)高位交叉编址 – 有利于存储器的扩充00000000000100001000001100010 00001010001100001110010000010010010100010110011000011010011100011 11010000010001010010010011010100010101010110010111011000011001011 01001101101110001110101111001111110000010000110001010001110010010 01011001101001111010001010011010101010111011001011011011101011111 10000110001110010110011110100110101110110110111111000111001111010 111011111100111101111110111111M0M1M2M3低位交叉编址 – 有利于解决访存冲突000000000 10000100000110001000001010001100001110010000010010010100010110011 0000110100111000111100M0M1M2M300000100010100100100110101000101010 10110010111011000011001011010011011011100011101011110011111010000 10000110001010001110010010010110011010011110100010100110101010101 11011001011011011101011111000001100011100101100111101001101011101 1011011111100011100111101011101111110011110111111011111111高速缓冲存储器 -- Cache问题的提出避免CPU与I/O争抢访存 I/O设备向主存请求的级别高于CPU访存解决CPU与主存之间速度不匹配 的问题 CPU的速度每年增长60% RAM速度每年改进 7%程序访问的局部性原理使CPU与Cache交换信息成为可能C ache的工作原理影响Cache命中率的因素块长 一般块长取4至8个可编址单位(字或字节) IBM370/168的主存是4 体交叉,每个体宽为64 位(8个字节),Cache的块长为32个字节。容量 Cache的容量是成本与命中率的折衷 80 386主存的最大容量为4GB,Cache的容量为 16KB或32KB,命中率可达95%以上替换算法先进先出(FIFO)优点:实 现容易、开销小缺点:可能把一些常用的程序,如子程序、循环程序块,作为最早进入Cache块,替换出去近期最少使用法(LRU)优点:命 中率高缺点:开销大Cache的读/写操作读操作写操作写直达法:数据写入Cache的同时,也写入主存的相应的块。 能始终保证Ca che中的内容和主存中的内容一致。写回法:数据每次只是暂时写入Cache中,并用标志将该块加以注明,当该块从Cache中替换出去时 ,才写入主存中。 该方法速度快,但因主存中的字块未经随时修改,可能失效。信息只写入主存,同时将相应的Cache块有效位置“0” ,表明此块已失效,需要时从主存中调入。还有一种情况,被修改的单元不在Cache内,这时,写操作只对主存进行。Cache的改进单一缓 存和两级缓存统一缓存和分开缓存统一缓存:指令和数据都存放在同一缓存内的Cache分开缓存:指令和数据分别存放在两个缓存中。外部存储 器主要技术指标存储密度:单位长度内存储的二进制信息道密度:磁盘沿半径方向,单位长度的磁道数位密度:单位长度磁道能纪录的二进制信息的 位数存储容量外存储器所能存储的二进制信息的总数量。一般以位或字节为单位。磁盘存储器容量盘面数:可以存储数据的盘面个数扇区:每个磁道 分为若干个区域,每个扇区存放512个字节数据磁盘存储器容量 = 盘面数每个盘面的磁道数扇区数每个扇区存储字节数格式化容量和非 格式化容量非格式化容量:磁盘表面可以利用的磁化单元总数格式化容量:磁盘按某种特定的存储格式所能存储数据的总量平均存取时间平均找道时 间+平均等待时间+控制指令运行时间数据传输率单位时间内磁表面存储器向主机传送数据的位数或字节数数据传输率 = 记录密度 记录介 质的运行速度误码率是衡量磁表面存储器出错概率的参数误码率 = 出错信息的位数 / 读出的总信息位数磁记录原理和记录方式磁记录原理记 录方式归零制(RZ)记录1时通正向脉冲电流,记录0时通负向脉冲电流两位信息之间的驱动电流归零记录密度不高,目前很少使用不归零制(N RZ)磁头线圈始终有电流当连续记录 1 或者 0 时,写电流方向不变,只有当两个相邻的代码不同时,写电流才改变方向。见1就翻的不归 零制(NRZ1)磁头线圈始终有电流记录 0 时电流不改变方向,记录 1 时电流改变方向调相制(PM)记录0时,电流由负编正,记录1 时,电流由正变负每两个相同信息的交界处,电流方向变化一次;相邻信息不同时,电流方向不变应用于磁带存储器中调频制(FM)以驱动电流变 化的频率不同来区别记录1或者0记录0时,在一位信息的记录时间内电流保持不变;记录1时,在一位信息记录时间的中间时刻,电流改变一次方 向。相邻信息的交界处,线圈电流均变化一次。广泛应用于硬磁盘和软磁盘中改进调频制(MFM)记录0时,在记录时间内电流不变,在记录1时 在记录时间的中间时刻电流发生一次变化。(与调频制相同)只有当连续记录两个或两个以上的0时,才在每位的起始处电流改变一次。写入同样的 数据序列时,MFM比FM磁翻转次数少,在相同长度的磁层上可记录的信息量将会增加,从而提高了磁记录密度。倍密度软磁盘采用MFM的记录 方式评价记录方式的主要指标编码效率位密度与磁化翻转密度的比值,可以用记录一位信息的最大磁化翻转次数来表示FM、PM记录方式中,记录 一位信息的最大磁化翻转次数为2,因此编码效率为50%。MFM、NRZ、NRZ1中,编码效率为100%自同步能力从单个磁道读出的脉冲 序列中所提取同步时钟脉冲的难易程度。NRZ1采用外同步FM、MFM是具有自同步能力的记录方式软磁盘存储器概述软盘存储器的盘片使用类 似塑料薄膜唱片的柔性材料制成的,简称软盘软盘特点转速低、存取速度低活动磁头、可换盘片结构软盘的磁头直接接触盘片进行读写价格便宜、保 存方便、使用灵活第一台软盘机是IBM公司1972年研制成功的IBM3740数据录入系统,采用的是8英寸单密度软盘,容量为256K。 软磁盘片记录格式软盘驱动器和控制器软磁盘存储器由软盘驱动器(驱动结构、磁头、定位机构、读写电路)、软盘控制器(解释来自主机的命令并 向软盘驱动器发出各种控制信号,同时还要检测驱动器的状态,发送读写数据命令)、软磁盘片三部分组成具体操作寻道操作:将磁头定位在目标磁 道上地址检测操作:主机将目标地址送往磁盘控制器,控制器从驱动器上按记录格式读区地址信息,并与目标地址进行比较,找到欲读写信息的磁盘地址读写数据操作:首先检测数据标志是否正确,然后将数据字段的内容读入内存,最后进行CRC校验写数据操作:写数据时,不仅要将原始信息经编码后写入磁盘,同时还要写上数据区标志和CRC校验码及间隙初始化:在盘片上写格式化信息,对每个磁道划分区段硬盘存储器硬盘存储器的类型按磁头的工作方式分类固定磁头硬盘存储器移动磁头硬盘存储器按硬盘是否具有可换性分类可换盘磁盘存储器固定盘磁盘存储器温彻斯特硬盘是一种可移动磁头固定盘片的磁盘存储器1972年首先应用在IBM3340硬盘存储器中采用密封组合方式,将磁头、盘片、驱动部件以及读写电路等制成一个不能随意拆卸的整体 防尘性能好、可靠性高、对环境要求不高硬盘存储器的结构磁盘驱动器 主要包括主轴、定位驱动及数据控制等部分磁盘控制器:接收主机发送来的命令盘片格式化和分区低级格式化对盘片上的扇区加上标记,以便驱动器能识别指定的扇区,并规定扇区的交错因子。容易对硬盘产生损伤,尽量不使用硬盘的分区目的:将物理硬盘分为若干个逻辑存储区域,主要是为了使用不同的操作系统可以系硬盘上建立一个基本分区、一个逻辑分区高级格式化FORMAT命令是硬盘的记录格式能为系统接受。检测出硬盘由却显得磁道和扇区,建立目录、文件分配表和装入操作系统文件 |
|