奇幻新游活动中心



第三章:储存系统¶

第三章:储存系统¶

概述¶

一段话总结¶

本文围绕计算机存储系统展开,存储系统基于程序局部性原理构建层次结构,包含寄存器、Cache、内存、辅存等。内存技术指标有存储容量和存取速度 ,其编址方式分大端、小端。存储器分类多样,按存储介质、读写功能等划分。随机读写存储器包括静态和动态两种,各有其结构、时序和刷新策略。此外,还介绍了闪速存储器、双端口存储器和多模块交叉存储器的特点、应用等内容。

思维导图¶

详细总结¶

存储系统的层次结构

原理基础:依据程序的局部性原理,包括时间局部性和空间局部性,构建存储系统层次结构。

层次组成:从高到低依次为寄存器、Cache、内存(主存)、辅存(外存)。各级存储的访问速度逐渐变慢、成本降低、容量增大。例如,寄存器访问速度小于1ns,Cache访问时间为1 - 5ns,内存访问时间为10 - 50ns,Flash Disk访问时间为0.1ms,Traditional Disk访问时间为10ms 。

内存储器的相关知识

编址方式:有大端(Big - endian)和小端(Little - endian)之分。大端模式下,数据高位存于低地址;小端模式则相反。

技术指标:主要有存储容量和存取速度,存取速度包括访问时间和存取周期。

分类方式:分类方式多样,按存储介质、与CPU的耦合程度、读写功能、掉电后信息保持情况、数据存取随机性、访问串并行性、时钟特性、访问方式、信息储存方法、功能等进行分类。习惯上分为主存等。

总体结构:主存由控制总线、控制电路、存储体、读写电路、MDR(数据寄存器)、驱动器、译码器、MAR(地址寄存器)等组成。

随机读写存储器

静态随机存取存储器(SRAM):有其特定的结构,包括地址反相器、译码器、驱动器、存储矩阵等。可进行位扩展、字扩展和字位扩展。读、写周期各有相应时序。

动态随机存取存储器(DRAM):管脚信号有A0 - A9、RAS、CAS等。具有刷新控制与定时电路,刷新策略有集中式刷新和分散式刷新。读、写、刷新周期均有时序要求。

其他存储器

闪速存储器(Flash Memory)

技术分类:主要有线性闪存和非线性闪存(NOR flash和NAND flash)。两者在读写、擦除、编程、接口方式、信息存储可靠性、可擦除次数和适用场景等方面存在差异 。

组织结构与操作:有特定的组织结构和逻辑结构,操作包括读、写、保持、输出禁止、复位等,各操作对应不同的控制信号组合。

双端口存储器:有两个独立端口可同时访问,逻辑结构包含两个地址寄存器、译码器、存储体等。读写控制方式分无冲突和有冲突两种,有冲突时需进行仲裁。

总结:计算机存储系统的层次结构设计,旨在平衡速度、成本和容量。不同类型存储器的特性差异,决定了它们在系统中的不同应用场景。随着技术发展,存储系统不断优化,以满足计算机性能提升的需求。

关键问题¶

程序局部性原理如何影响存储系统的层次结构设计?

答案:程序局部性原理包含时间局部性和空间局部性。时间局部性指程序中近期被访问的信息可能再次被访问,空间局部性指被访问的信息附近的数据也可能被访问。基于此,存储系统将访问速度快、容量小、成本高的寄存器和Cache放在靠近CPU的位置,用于存储近期频繁访问的数据和指令;而将访问速度慢、容量大、成本低的内存和辅存放在下层,存储大量不常立即访问的数据。这样的层次结构能利用程序局部性,提高存储系统的整体访问效率。

NOR flash和NAND flash的主要区别有哪些?

比较项目

NOR flash

NAND flash

读操作

快速随机读

以页为单位读

在线执行指令

支持

不支持

擦除方式

以区块(sector)或芯片为单位

以块(block)为单位

编程方式

以字为单位

以页为单位

接口方式

独立的DB和AB

DB、AB复用

信息存储可靠性

可擦除次数

较少

约为NOR flash的10倍

适用场景

适用于擦除和编程操作较少而直接执行代码的场合,不适用于纯数据存储和文件存储

适用于高容量存储设备,增加控制器后也可用于程序存储

双端口存储器在读写控制方面,无冲突和有冲突的情况有何不同?

答案:无冲突时,双端口存储器的两个端口可根据不同的读写控制信号组合,独立进行数据读写操作,如不同的字节读写、数据写入和读出等。而有冲突时,当两个端口试图同时访问同一存储单元,就需要进行仲裁。仲裁方式包括控制仲裁和地址仲裁,通过BUSY信号等机制来协调访问顺序,避免数据冲突,确保存储系统的正常运行。

存储系统的层次结构¶

多级存储体系的组成¶

该部分内容主要围绕计算机存储系统的层次结构展开,涵盖了发展背景、原理依据、具体组成以及设计目标等方面,具体总结如下:

发展背景:早期计算机系统对存储容量和访问速度要求较低,如20世纪70年代中型机存储器为十几kB,个人计算机操作系统MS - DOS为1MB。近年来,随着软件复杂度提升、多媒体与网络技术普及,对存储容量需求不断增大,且CPU工作速度提升更快,与内存速度差距加大。同时,存储器价格较高,在整机成本中占比较大,因此需要在成本和性能间寻求平衡,进而产生了存储器分层策略。

程序局部性原理:程序在较短时间内,访问的存储器地址集中在较小范围内。具体分为时间局部性和空间局部性,时间局部性指最近被访问的信息很可能再次被访问;空间局部性指最近被访问信息临近的信息也可能被访问 。该原理为存储系统分层提供了理论依据。

存储系统层次结构组成

两级存储体系:由内存和外存(辅存)组成。内存速度高、容量小、价格高,由半导体器件构成;外存速度低、容量大、价格便宜。

三级存储体系:包括高速缓冲存储器(cache)、主存和辅存,内存由cache和主存组成。其中,寄存器速度极高但数量少。不同层级在容量、访问速度、价格和带宽上差异明显,如寄存器容量为100s Bytes,访问速度小于1ns;磁带容量可达1.5T(每盘),访问时间为1min 。

数据传输单元:不同层级间数据传输单元不同,如cache controller传输单元为8 - 128字节,操作系统为512 - 4K字节 。

cache分类:cache可进一步分为一级(L1)、二级(L2)、三级(L3)cache,还可分为指令cache(I - cache)和数据cache(D - cache)。

设计目标:外存主要解决存储容量问题,cache主要解决速度问题,整个存储系统旨在提高性能 - 价格比,使其在速度上接近cache,在容量和价格上接近外存,实现“多快好省”。

鲲鹏920处理器片上系统的内存储系统¶

这段内容主要介绍了鲲鹏920处理器片上系统的内存储系统,其层次结构包含多级Cache、主存和硬盘,具体如下:

多级Cache

L1 Cache和L2 Cache:每个内核都配有私有的L1 Cache和L2 Cache。其中,L1 I-Cache(指令缓存)和L1 D-Cache(数据缓存)的大小均为64KB ,用于快速存储处理器近期需要执行的指令和处理的数据,提高数据读取速度。L2 Cache大小为512KB,进一步缓冲数据和指令,缓解L1 Cache容量限制,增强缓存性能。

L3 Cache:采用片内共享架构,每个超级内核集群配置共享的L3 Cache。它是系统级片上三级高速缓存,L3 Cache数据块位于内核集群之外,而标记块作为协议处理模块集成在每个内核集群中。这种设计能降低监听延迟,使多个内核可高效共享数据,提升整个系统的缓存访问效率。

主存和硬盘:除了多级Cache,鲲鹏920处理器片上系统的内存储系统还包括主存和硬盘。主存作为计算机运行时数据和程序的主要存储区域,可被处理器直接访问,存储正在运行的程序和处理的数据 。硬盘则用于长期大容量存储数据,如操作系统、应用程序和用户文件等,弥补主存断电数据丢失和容量不足的问题。

内存储器的编址方式¶

该节内容主要介绍了存储器访问和内存的主要技术指标,具体如下:

存储器访问:存储器访问每次读写信息量的方式有字寻址、半字寻址和字节寻址。字寻址每次访存读写一个存储字,半字寻址每次访存读写半个存储字,字节寻址每次访存读写一个字节,此处字长设定为4字节。

内存的主要技术指标

存储容量:指存储器可存储信息的字节数或比特数,通常表示为“存储字数×存储字长” ,即存储单元数与每单元的比特数的乘积。例如,1M比特的存储器可组织成1M×1比特、128K×8比特、256K×4比特等形式。

存取速度

访问时间(存取时间)TA:是从存储器接收到读/写命令到信息被读出或写入完成所需的时间,它取决于存储介质的物理特性和寻址部件的结构。

存取周期TM:在存储器连续读写过程中,一次完整的存取操作所需的时间,也是CPU连续两次访问存储器的最小时间间隔。

数据传送速率(频宽)BM:单位时间内能够传送的信息量。若系统的总线宽度为W bit,其计算公式为BM = W/TM(b/s)。

存储器的分类¶

该节内容主要介绍了存储器的多种分类方式,以及内存储器的习惯分类,具体如下:

按存储介质分类:分为半导体存储器、磁介质存储器、光存储器。半导体存储器常见于计算机内存;磁介质存储器如磁盘;光存储器如光盘。

按与CPU的耦合程度分类:可分为内存(包含主存和cache)和外存。内存与CPU直接相连,速度快,用于存储当前正在运行的程序和数据;外存用于长期存储大量数据,速度相对较慢,如硬盘、U盘等。

按读写功能分类:包括读写存储器(RWM)和只读存储器(ROM)。读写存储器允许对其存储内容进行读取和写入操作;只读存储器中的内容一般只能读取,不能随意写入,常用于存储固定的程序或数据。

按掉电后信息保持情况分类:有易失性(挥发性)存储器和非易失性(不挥发)存储器。易失性存储器在断电后存储的信息会丢失,如常见的内存;非易失性存储器断电后信息仍能保存,如硬盘、ROM等。

按数据存取随机性分类:分为随机存取存储器(RAM)、顺序存取存储器(SAM)和直接存取存储器(DAM)。随机存取存储器可随机访问存储单元,访问时间与存储单元位置无关;顺序存取存储器只能按顺序依次访问存储单元;直接存取存储器对存储单元的访问介于随机存取和顺序存取之间,可直接快速定位到存储区域,但在区域内仍需顺序查找。

按访问串并行性分类:有并行存取存储器和串行存取存储器。并行存取存储器能同时对多个存储单元进行读写操作,速度快;串行存取存储器则依次对存储单元进行读写,速度相对较慢。

按时钟特性分类:分为同步存储器和异步存储器。同步存储器的操作与时钟信号同步,按固定的时钟周期进行读写;异步存储器的操作不依赖时钟信号,根据控制信号和数据的状态进行读写。

按访问方式分类:包括按地址访问的存储器和按内容访问的存储器(CAM,即相联存储器)。按地址访问的存储器通过指定地址来访问存储单元;相联存储器按存储内容的特征进行访问,常用于高速缓存和快速查找等场景。

按半导体存储器信息储存方法分类:分为静态(static)存储器和动态(dynamic)存储器。静态存储器利用触发器存储信息,只要电源正常,信息就能稳定保存;动态存储器利用电容存储信息,需要定期刷新以保持信息的正确性 。

按功能分类:有系统存储器、显示存储器、控制存储器等。系统存储器用于存储计算机系统运行所需的程序和数据;显示存储器用于存储显示设备所需的图像数据;控制存储器用于存储微程序等控制信息。

内存储器的习惯分类

RAM(易失性半导体读写存储器):包括静态RAM(SRAM)和动态RAM(DRAM)。SRAM速度快,但成本高、集成度低;DRAM成本低、集成度高,但速度相对较慢,常见的有FastPage DRAM、SDR SDRAM、DDR SDRAM等。

ROM(非易失性半导体只读存储器):包括掩膜ROM(MASK ROM)、可编程ROM(PROM) 。PROM又分为一次性可编程ROM(OTP ROM)和可擦除PROM(EPROM) 。EPROM包括紫外线擦除EPROM(UV EPROM)和电擦除EPROM(EEPROM,E²PROM) ,还有闪速存储器(FLASH ROM),如NOR Flash和NAND Flash等。

闪存技术¶

特殊储存器¶