🌱 "人生最深的裂痕,往往是光照进来的地方。
别怕脚下的荆棘,那是你与平庸划清界限的勋章;别惧眼前的迷雾,星辰永远藏在云层之上。真正的强者不是从未跌倒,而是把每一次踉跄都踏成攀登的阶梯。记住:种子破土前要经历黑暗,蝴蝶展翅前要独自破茧,你此刻的坚持终会化作破晓的曙光。
奔跑时不必时刻仰望终点,但永远别停下丈量土地的双脚。那些咬牙撑过的深夜孤灯,那些含泪播种的倔强岁月,终会在某个清晨开出漫山遍野的绚烂。
你的未来不在别人的眼光里,而在你紧握方向盘的掌纹中。去成为风,而不是等待被吹动的旗;去雕刻时光,而不是被岁月雕刻。当你比昨天的自己多走了一步,整个世界都会为你让路。
向前走,莫回头——时光终会为你的坚持加冕。" 🌟
计算机组成原理资源网
https://www.wenjingketang.com/这里面有ppt课后习题及答案,需要的可以自行下载
目录
4.2.3 只读存储器(ROM)和闪速存储器(Flash Memory)
4.2 半导体存储器
半导体存储器是现代计算机系统中不可或缺的组成部分,主要用于存储程序和数据。它具有速度快、体积小、功耗低等优点,广泛应用于计算机的主存储器、缓存、嵌入式系统等。半导体存储器主要分为随机存储器(RAM)和只读存储器(ROM)两大类。本节将详细介绍半导体存储器的基本结构、分类及其工作原理。
4.2.1 半导体存储芯片的基本结构
半导体存储芯片的基本结构包括存储单元阵列、地址译码器、读写控制电路和数据输入输出缓冲器等部分。
1. 存储单元阵列
存储单元阵列是存储芯片的核心部分,由大量的存储单元组成。每个存储单元可以存储一个二进制位(0或1)。存储单元通常以矩阵形式排列,行和列分别由地址译码器控制。常见的存储单元有静态随机存储器(SRAM)单元和动态随机存储器(DRAM)单元。
-
SRAM单元:SRAM单元通常由6个晶体管组成,具有较快的访问速度,但占用面积较大,功耗较高。SRAM单元不需要刷新操作,数据可以长期保持。
-
DRAM单元:DRAM单元通常由1个晶体管和1个电容组成,占用面积较小,功耗较低,但需要定期刷新以保持数据。DRAM的访问速度相对较慢。
2. 地址译码器
地址译码器用于将CPU发出的地址信号转换为存储单元阵列中的具体行和列地址。地址译码器通常分为行地址译码器和列地址译码器。行地址译码器选择存储单元阵列中的某一行,列地址译码器选择该行中的某一列,从而定位到具体的存储单元。
3. 读写控制电路
读写控制电路用于控制存储单元的读写操作。当CPU发出读信号时,读写控制电路将选中的存储单元中的数据读出并送到数据输出缓冲器;当CPU发出写信号时,读写控制电路将数据输入缓冲器中的数据写入选中的存储单元。
4. 数据输入输出缓冲器
数据输入输出缓冲器用于暂存CPU与存储芯片之间的数据。在读操作时,数据从存储单元阵列中读出并暂存到输出缓冲器中,然后送到CPU;在写操作时,数据从CPU送到输入缓冲器中,然后写入存储单元阵列。
4.2.2 随机存储器(RAM)
随机存储器(Random Access Memory,RAM)是一种易失性存储器,即断电后数据会丢失。RAM的主要特点是可以通过地址随机访问任意存储单元,且读写速度较快。RAM主要分为静态随机存储器(SRAM)和动态随机存储器(DRAM)两种。
1. 静态随机存储器(SRAM)
SRAM的存储单元由6个晶体管组成,具有较快的访问速度和较低的功耗。SRAM不需要刷新操作,数据可以长期保持,因此常用于高速缓存(Cache)等对速度要求较高的场合。
-
SRAM的结构:SRAM的存储单元由两个交叉耦合的反相器组成,形成一个双稳态电路。每个存储单元可以存储一个二进制位,且只要电源不断,数据就可以一直保持。
-
SRAM的读写操作:在读操作时,行地址译码器选中某一行,列地址译码器选中某一列,选中的存储单元中的数据通过读写控制电路送到数据输出缓冲器。在写操作时,数据从数据输入缓冲器写入选中的存储单元。
2. 动态随机存储器(DRAM)
DRAM的存储单元由1个晶体管和1个电容组成,具有较高的存储密度和较低的功耗。DRAM需要定期刷新以保持数据,因此常用于主存储器等对容量要求较高的场合。
-
DRAM的结构:DRAM的存储单元由一个晶体管和一个电容组成。电容用于存储电荷,表示二进制位0或1。由于电容会逐渐漏电,因此需要定期刷新以保持数据。
-
DRAM的读写操作:在读操作时,行地址译码器选中某一行,列地址译码器选中某一列,选中的存储单元中的数据通过读写控制电路送到数据输出缓冲器。在写操作时,数据从数据输入缓冲器写入选中的存储单元。由于DRAM需要刷新操作,因此读写操作相对复杂。
3. SRAM与DRAM的比较
-
速度:SRAM的访问速度比DRAM快,因为SRAM不需要刷新操作。
-
容量:DRAM的存储密度比SRAM高,因此DRAM的容量通常比SRAM大。
-
功耗:SRAM的功耗比DRAM高,因为SRAM的存储单元由6个晶体管组成,而DRAM的存储单元由1个晶体管和1个电容组成。
-
成本:DRAM的成本比SRAM低,因为DRAM的存储密度高,单位容量的成本较低。
4.2.3 只读存储器(ROM)和闪速存储器(Flash Memory)
只读存储器(Read-Only Memory,ROM)是一种非易失性存储器,即断电后数据不会丢失。ROM的主要特点是数据只能读取,不能写入或只能有限次写入。ROM常用于存储固件、引导程序等不需要频繁修改的数据。闪速存储器(Flash Memory)是一种特殊的ROM,具有较高的存储密度和较快的读写速度,广泛应用于U盘、固态硬盘(SSD)等场合。
1. 只读存储器(ROM)
ROM的主要特点是数据只能读取,不能写入或只能有限次写入。ROM的种类较多,常见的有掩模ROM(Mask ROM)、可编程ROM(PROM)、可擦除可编程ROM(EPROM)和电可擦除可编程ROM(EEPROM)等。
-
掩模ROM(Mask ROM):掩模ROM的数据在制造时通过掩模工艺写入,用户无法修改。掩模ROM的成本较低,适用于大批量生产。
-
可编程ROM(PROM):PROM的数据可以由用户通过编程器写入,但只能写入一次,写入后无法修改。
-
可擦除可编程ROM(EPROM):EPROM的数据可以由用户通过编程器写入,且可以通过紫外线照射擦除,然后重新写入。EPROM的擦除操作需要专门的紫外线擦除器。
-
电可擦除可编程ROM(EEPROM):EEPROM的数据可以由用户通过编程器写入,且可以通过电信号擦除,然后重新写入。EEPROM的擦除操作不需要专门的设备,擦写速度较快。
2. 闪速存储器(Flash Memory)
闪速存储器是一种特殊的EEPROM,具有较高的存储密度和较快的读写速度。闪速存储器的存储单元通常由浮栅晶体管组成,数据通过控制浮栅晶体管的电荷状态来存储。闪速存储器的主要特点是可以在块级别进行擦除和写入操作,因此读写速度较快。
-
NOR Flash:NOR Flash的存储单元以并联方式连接,具有较快的随机访问速度,适用于存储程序代码等需要快速读取的数据。
-
NAND Flash:NAND Flash的存储单元以串联方式连接,具有较高的存储密度和较快的连续读写速度,适用于存储大容量数据,如U盘、固态硬盘(SSD)等。
3. ROM与Flash Memory的比较
-
可写性:ROM的数据只能读取,不能写入或只能有限次写入;Flash Memory可以多次擦写。
-
速度:Flash Memory的读写速度比ROM快,尤其是NAND Flash的连续读写速度较快。
-
容量:Flash Memory的存储密度比ROM高,因此Flash Memory的容量通常比ROM大。
-
成本:Flash Memory的成本比ROM高,因为Flash Memory的制造工艺更复杂。
4.3 主存储器与CPU的连接
主存储器是计算机系统中用于存储程序和数据的主要存储器,通常由DRAM组成。主存储器与CPU之间的连接是计算机系统设计中的重要环节,直接影响系统的性能。本节将详细介绍主存储器与CPU的连接原理及主存容量的扩展方法。
4.3.1 连接原理
主存储器与CPU之间的连接主要通过地址总线、数据总线和控制总线实现。CPU通过地址总线发送地址信号,选择主存储器中的某个存储单元;通过数据总线与主存储器进行数据交换;通过控制总线发送读写控制信号,控制主存储器的读写操作。
1. 地址总线
地址总线用于传输CPU发出的地址信号,选择主存储器中的某个存储单元。地址总线的宽度决定了CPU可以访问的主存储器容量。例如,32位地址总线可以访问2^32个存储单元,即4GB的主存储器容量。
2. 数据总线
数据总线用于传输CPU与主存储器之间的数据。数据总线的宽度决定了CPU与主存储器之间一次可以传输的数据量。例如,64位数据总线一次可以传输8字节的数据。
3. 控制总线
控制总线用于传输CPU发出的控制信号,控制主存储器的读写操作。常见的控制信号包括读信号(RD)、写信号(WR)和片选信号(CS)等。读信号用于指示CPU要从主存储器中读取数据;写信号用于指示CPU要向主存储器中写入数据;片选信号用于选择某个主存储器芯片。
4. 时序控制
主存储器与CPU之间的数据传输需要严格的时序控制。CPU在发出地址信号后,需要等待一定的时间(称为访问时间)才能从主存储器中读取数据或向主存储器中写入数据。访问时间由主存储器的性能决定,通常以纳秒(ns)为单位。CPU与主存储器之间的时序控制通过时钟信号实现,时钟信号的频率决定了数据传输的速度。
4.3.2 主存容量的扩展
随着计算机系统对存储容量需求的增加,主存储器的容量也需要不断扩展。主存容量的扩展主要通过增加存储芯片的数量或使用更大容量的存储芯片实现。主存容量的扩展方法包括位扩展、字扩展和字位同时扩展。
1. 位扩展
位扩展是指通过增加存储芯片的数量来扩展数据总线的宽度。例如,如果每个存储芯片的数据宽度为8位,而CPU的数据总线宽度为32位,则可以通过4个存储芯片进行位扩展,使数据总线的宽度达到32位。
-
位扩展的实现:在位扩展中,所有存储芯片的地址总线和控制总线并联连接,数据总线分别连接到CPU数据总线的不同位。例如,4个8位存储芯片的数据总线分别连接到CPU数据总线的低8位、次低8位、次高8位和高8位。
2. 字扩展
字扩展是指通过增加存储芯片的数量来扩展地址总线的宽度,从而增加主存储器的容量。例如,如果每个存储芯片的容量为1MB,而CPU的地址总线宽度为32位,则可以通过多个存储芯片进行字扩展,使主存储器的容量达到4GB。
-
字扩展的实现:在字扩展中,所有存储芯片的数据总线和控制总线并联连接,地址总线通过地址译码器选择不同的存储芯片。例如,4个1MB存储芯片的地址总线分别连接到CPU地址总线的低20位,地址译码器通过CPU地址总线的高12位选择不同的存储芯片。
3. 字位同时扩展
字位同时扩展是指同时进行位扩展和字扩展,以增加主存储器的容量和数据总线的宽度。例如,如果每个存储芯片的容量为1MB,数据宽度为8位,而CPU的地址总线宽度为32位,数据总线宽度为32位,则可以通过16个存储芯片进行字位同时扩展,使主存储器的容量达到16MB,数据总线的宽度达到32位。
-
字位同时扩展的实现:在字位同时扩展中,存储芯片分为若干组,每组存储芯片进行位扩展,不同组存储芯片进行字扩展。例如,16个8位存储芯片分为4组,每组4个存储芯片进行位扩展,使每组的数据总线宽度达到32位;4组存储芯片通过地址译码器进行字扩展,使主存储器的容量达到16MB。
4. 存储器模块
存储器模块是指将多个存储芯片集成在一个模块中,以方便主存容量的扩展。常见的存储器模块包括单列直插内存模块(SIMM)和双列直插内存模块(DIMM)。存储器模块通过插槽与主板连接,用户可以通过更换或增加存储器模块来扩展主存容量。
-
SIMM:SIMM是一种早期的存储器模块,通常由多个存储芯片组成,数据总线宽度为32位。SIMM模块的两面引脚是并联的,因此插入时不需要区分方向。
-
DIMM:DIMM是一种现代的存储器模块,通常由多个存储芯片组成,数据总线宽度为64位。DIMM模块的两面引脚是独立的,因此插入时需要区分方向。
5. 存储器控制器
存储器控制器是CPU与主存储器之间的接口电路,用于控制主存储器的读写操作。存储器控制器通常集成在CPU或主板芯片组中,负责地址译码、时序控制、刷新控制等功能。存储器控制器的性能直接影响主存储器的访问速度和系统的整体性能。
-
地址译码:存储器控制器将CPU发出的地址信号转换为存储芯片的行地址和列地址,选择具体的存储单元。
-
时序控制:存储器控制器根据主存储器的访问时间,控制CPU与主存储器之间的数据传输时序。
-
刷新控制:对于DRAM,存储器控制器需要定期发出刷新信号,以保持存储单元中的数据。
总结
半导体存储器是现代计算机系统中不可或缺的组成部分,主要包括随机存储器(RAM)和只读存储器(ROM)两大类。RAM具有较快的访问速度,但断电后数据会丢失;ROM具有非易失性,但数据只能读取或只能有限次写入。主存储器与CPU之间的连接通过地址总线、数据总线和控制总线实现,主存容量的扩展可以通过位扩展、字扩展和字位同时扩展实现。存储器模块和存储器控制器是主存容量扩展和访问控制的重要组件。随着计算机系统对存储容量和速度需求的不断增加,半导体存储器的技术也在不断发展,未来将出现更高性能、更大容量的存储器件。