计算机组成原理:存储系统【三】

简介: 计算机组成原理:存储系统【三】



🚀1 只读存储器ROM

✈️1.1 总览

✈️1.2 各种ROM

注意:虽然闪存既可以读也可以写,但是它还是属于ROM

✈️1.3 计算机内部重要的ROM

计算机主机的结构如图所示

在关机后,主存中RAM的数据全部被清除,那么如果不采取其他措施,CPU就无法读取指令。

操作系统实际上是安装在辅存中,CPU需要读取主板上BIOS(属于ROM)芯片上的“自举装入程序”,它负责引导操作系统的装入(开机)。

逻辑上,我们应该将主存视为RAM+ROM的组成。CPU将二者统一编码,比如说,ROM占1KB,则ROM存储单元编号为1-1023,而RAM存储单元的编号起始位为1024。

✈️1.4 总结

ROM也具有“随机存取”的特点

🚀2 主存储器与CPU的连接

🛩️2.1 总览

🛩️2.2 芯片输入输出信号的常用缩写

字扩展:字扩展就是要增加存储字的数量

位扩展:增大数据的范围

🛩️2.3 位扩展

🛰️2.3.1 单块芯片的连接

🛰️2.3.2 两块芯片的位扩展

🛰️2.3.3 多块芯片的位扩展

🛩️2.4 字拓展

🛰️2.4.1 译码器片选法

(1)两块芯片的字拓展

与之前一样,两块芯片接入同样的电信号、同时并联接入数据总线,这就要求同一时间只有一块芯片可以工作,使用A13位控制芯片的片选信号(称为1-2译码器)。这样,可表示地址范围从212变为213。

(2)多块芯片的字扩展

使用上文的思路,只要片选信号足够多,就可以连接多块芯片(由1-2译码器变为2-4译码器、3-8译码器)

如图所示的电路,地址范围由一块芯片的213变为215

🛰️2.4.2 线选法

(1)基本思路与译码器片选法一致,但是它不是采用译码器。假设有两块芯片,则A13、A14直接与芯片连接,可想而知,只有当A13、A14位01或10时芯片才单独工作,输出的信号才有效。这样就使地址空间不连续。而采用译码器片选法得到的地址空间是连续的。

🛩️2.5 字位同时扩展

🛩️2.6 总结

🛩️2.7 关于译码器的补充

一般来说,CPU与主存之间是如此连接的,CPU在将地址电信号发出后,会等信号稳定后再发出主存请求信号,译码器才工作,这样主存得到的就是一个稳定的信号。

🚀3 双口RAM与多模块存储器

🛫3.1 知识总览

🛫3.2 双端口RAM

🛸3.2.1 示意图

它的作用是优化多核CPU访问一根内存条的速度。同时它需要两组完全独立的数据线、地址线、控制线。CPU、RAM中也要有更复杂的控制电路。

🛸3.2.2 访问情况

解决办法:

🛫3.3 多体并行器

1. 假设电脑中有四个内存条,每个内存条中有八个存储单元。在给存储单元编号时,可以先将内存条编号,再将存储单元编号。有高位交叉编址及低位交叉编址。如图所示。

2. 将各存储单元的编号写为十进制,分别为

高位编址:

0 8 16 24
1 9 17 25
… … … …
7 15 23 31

低位编址:

0 1 2 3
4 5 6 7
… … … …
28 29 30 31

🛸3.3.1 访问时间

(1)我们知道,主存在一次读写操作后(假设时间为r),需要一定时间进行恢复(一般较长,这里假设为3r)。

(2)当使用高位交叉编址时,CPU按序访问主存,由于0-8号存储单元连续的分布在一条主存内,则每访问一个存储单元都要花费4r的时间,如图所示

(3)当使用低位交叉编址时,CPU按序访问主存,由于0-4号存储单元是一次分布在M0-M4中,读写操作完成后主存立即进行恢复(这个操作无须CPU介入)。所以当访问完第4个存储单元后,第1个存储单元已经恢复并可以立即访问,如图所示。

可以看出低位编址的性能大大超过高位编址

(4)可以看出,

🛫3.4 多模块存储器

分为多体并行存储器、单体多字存储器

可以看出,单体多字存储器的灵活性较差,特别是当目的数据不是连续的4个单元时,单体存储器会读入较多的无用数据。

🛫3.5 总结

🚀4 总结

计算机组成原理如一座精密的交响乐团,微观中展现着电子的舞蹈,宏观中奏响着科技的交响曲。

它拆解复杂问题为简单指令,通过微处理器的默契协作,创造出无尽可能。

存储单元如记忆的灯塔,指引信息的航程。

总线是信息的大道,连接着各个功能模块,使计算机成为无比高效的智慧之器。

在计算机组成原理的魔法指导下,世界逐渐变得更加智能、便捷、创新。

渴望挑战计算机组成与原理的学习路径和掌握进阶技术?不妨点击下方链接,一同探讨更多CO的奇迹吧。我们推出了引领趋势的💻CO专栏:《计算机组成原理基础》 ,旨在深度探索CO的实际应用和创新。🌐🔍

相关文章
|
存储 数据采集 监控
信息系统架构开发方法ADM
信息系统架构开发方法ADM
1591 5
|
机器学习/深度学习 存储 人工智能
【科普向】我们所说的AI模型训练到底在训练什么?
人工智能(AI)模型训练类似于厨师通过反复实践来掌握烹饪技巧。它通过大量数据输入,自动优化内部参数(如神经网络中的权重和偏置),以最小化预测误差或损失函数,使模型在面对新数据时更加准确。训练过程包括前向传播、计算损失、反向传播和更新权重等步骤,最终生成权重文件保存模型参数,用于后续的应用和部署。理解生物神经网络的工作原理为人工神经网络的设计提供了灵感,后者广泛应用于图像识别、自然语言处理等领域。
|
存储 数据安全/隐私保护 开发者
领取永久免费的ClawCloud云服务容器部署Alist网盘
领取永久免费的ClawCloud云服务容器部署Alist网盘,这是一款类似于 Vercel 和 Netlify 的在线开发平台,专为开发者和个人用户设计。如 Alist、Dify、frp 等,无需复杂的配置或高昂的成本。目前,平台提供永久免费的 5 刀/月额度,只需绑定一个注册超过 180 天的 GitHub 账号即可享受。
4633 10
|
存储 人工智能 运维
面向AI的服务器计算软硬件架构实践和创新
阿里云在新一代通用计算服务器设计中,针对处理器核心数迅速增长(2024年超100核)、超多核心带来的业务和硬件挑战、网络IO与CPU性能增速不匹配、服务器物理机型复杂等问题,推出了磐久F系列通用计算服务器。该系列服务器采用单路设计减少爆炸半径,优化散热支持600瓦TDP,并实现CIPU节点比例灵活配比及部件模块化可插拔设计,提升运维效率和客户响应速度。此外,还介绍了面向AI的服务器架构挑战与软硬件结合创新,包括内存墙问题、板级工程能力挑战以及AI Infra 2.0服务器的开放架构特点。最后,探讨了大模型高效推理中的显存优化和量化压缩技术,旨在降低部署成本并提高系统效率。
|
Web App开发 缓存 JavaScript
【开发工具】【windows】Visual Studio Code(VS Code)远程Linux服务器环境搭建——SSH篇
【开发工具】【windows】Visual Studio Code(VS Code)远程Linux服务器环境搭建——SSH篇
2025 0
【开发工具】【windows】Visual Studio Code(VS Code)远程Linux服务器环境搭建——SSH篇
|
存储 缓存 NoSQL
Redis中大Key与热Key的解决方案
在工作中,Redis作为一款高性能缓存数据库被广泛应用,但常遇到“大key”和“热key”问题。“大key”指单个键包含大量数据,导致内存消耗高、性能下降及持久化效率降低;“热key”则是频繁访问的键,会引起CPU占用率高、请求阻塞等问题。本文详细分析了这些问题的定义、影响、原因,并提供了相应的解决方案,如合理设置缓存时间和数据结构、拆分大key、采用热点数据分片等方法。
1517 5
Redis中大Key与热Key的解决方案
|
存储 API C语言
【C语言】实践:贪吃蛇小游戏(附源码)(一)
【C语言】实践:贪吃蛇小游戏(附源码)
|
存储 固态存储 芯片
408计算机组成原理学习笔记——存储系统(二)
408计算机组成原理学习笔记——存储系统
1634 1
408计算机组成原理学习笔记——存储系统(二)
|
安全 Linux 测试技术
Kali Linux预装的自动化渗透测试工具
Kali Linux预装的自动化渗透测试工具
1538 2
|
存储 芯片 块存储
3.5主存储器与CPU的连接
3.5主存储器与CPU的连接
1480 1
3.5主存储器与CPU的连接

热门文章

最新文章