1.冯诺依曼体系结构
冯诺依曼体系结构是计算机体系结构中的一种基本设计原则,它描述了计算机系统的组成和运作方式。该体系结构由计算机科学家约翰·冯·诺伊曼(John von Neumann)于20世纪中期提出,被广泛应用于现代计算机系统的设计和实现中。
冯诺依曼体系结构包括以下几个关键组成部分:
存储器(Memory):冯诺依曼体系结构中的存储器用于存储指令和数据。这里的存储器通常指的是内存,包括随机存储器(RAM)和只读存储器(ROM)。存储器中的数据可以根据地址进行读取和写入操作。
中央处理器(CPU):CPU是计算机的核心部件,负责执行指令并处理数据。CPU包括运算器(Arithmetic Logic Unit,ALU)和控制器(Control Unit)。运算器执行算术和逻辑运算,而控制器负责指挥数据的流动和执行指令的顺序。
输入/输出设备(Input/Output Devices):输入/输出设备用于与外部世界交互,包括键盘、鼠标、显示器、打印机等。在冯诺依曼体系结构中,所有的输入和输出都通过存储器进行传递,即输入设备将数据写入内存,输出设备从内存读取数据。
存储器-中央处理器之间的数据传输通路:冯诺依曼体系结构中,存储器和中央处理器之间有一条数据总线(Data Bus)和一条地址总线(Address Bus),用于传输数据和地址信息。
2.总线与数据传输通路
在计算机系统中,各个设备之间通过总线连接在主板上。总线是一组电子管道或连接,它允许数据在设备之间传输,以及设备与 CPU 或内存之间进行通信。总线可以传输各种类型的数据,包括指令、地址和数据。
设备之间的数据流动本质是数据在不同设备之间来回拷贝,拷贝的整体速度是决定计算机效率的重要指标
总线的作用是将计算机中的各种硬件设备连接起来,使它们可以相互通信和协作。通过总线,CPU 可以访问内存中的数据和指令,外部设备(如键盘、鼠标、硬盘等)可以与 CPU 或内存进行数据交换。
2.1 总线通常分为三种类型:地址总线、数据总线和控制总线。
地址总线(Address Bus):用于指示数据在内存或 I/O 设备中的位置。地址总线的宽度决定了系统可以寻址的内存空间大小。例如,32位地址总线可以寻址 2^32 个不同的内存单元,即 4GB 的内存空间。
数据总线(Data Bus):用于在 CPU、内存和 I/O 设备之间传输数据。数据总线的宽度决定了系统一次可以传输的数据位数。例如,32位数据总线可以一次传输 32 位(4 字节)的数据。
控制总线(Control Bus):用于控制数据的传输和操作。控制总线包括各种控制信号,如读写信号、时钟信号、中断信号等,用于指示数据传输的方向和时序。
总线连接在主板上,通过电路板上的导线和连接器进行物理连接。当 CPU 或其他设备需要访问内存或进行数据交换时,它们会通过总线发送相应的控制信号和数据,然后在目标设备上进行处理或存储。
数据传输通路:
数据传输通路通常指的是在芯片内部或芯片之间的数据传输路径,它们可以是在 CPU 芯片内部的各种通路,也可以是连接芯片之间的内部通路,比如连接 CPU 和内存、连接 CPU 和缓存等。数据传输通路的主要特点是速度非常快,因为它们通常是直接连接在芯片内部或紧密连接的芯片之间,所以传输速度非常高。
总线:
总线是计算机系统中不同组件之间进行数据传输的通道。它是连接 CPU、内存、输入输出设备和其他部件的物理通道,用于在它们之间传输数据和控制信号。总线分为地址总线、数据总线和控制总线三种,其中地址总线用于指示数据的存储位置,数据总线用于传输实际的数据,控制总线用于控制数据传输的时序和流向。总线的主要特点是它连接了整个计算机系统的各个部件,因此它的带宽和传输速度通常比较有限,而且需要考虑更多的时序和控制问题。
3.为什么有内存这个部分
平衡速度差异:CPU 的速度远远快于外部设备,如硬盘、光驱等。内存作为介于CPU和外部设备之间的媒介,可以帮助平衡这种速度差异。CPU 可以快速地从内存中读取或写入数据,而内存则可以暂时存储来自外部设备的数据,使得 CPU 不必等待外部设备完成读写操作。提高效率: 内存的引入使得计算机的运行更加高效。CPU 可以直接从内存中读取数据进行运算,而无需每次都去访问外部设备。这样可以大大提高数据访问速度,加快计算机的响应速度,提高整体性能。
缓存作用: 内存可以看作是一个非常大的缓存,存储了 CPU 需要频繁访问的数据和程序。通过在内存中暂时存储数据,可以减少 CPU 对外部设备的访问次数,提高计算机系统的效率。
降低成本: 内存的成本相对于 CPU 来说比较低廉,这使得计算机更加实用和经济。如果没有内存,CPU 将不得不直接与外部设备进行交互,这不仅会降低计算机的性能,还会增加硬件成本,使得计算机变得更加昂贵。
外设(输入或输出设备)要输入或者输出数据,也只能写入内存或者从内存中读取。
所有设备都只能直接和内存打交道
所有程序运行前都要先加载到内存里
4.计算机存储结构
CPU 寄存器(Registers):保存来自高速缓存(Cache)的字。
最小、最快、最贵的存储设备,通常位于 CPU 内部。
高速缓存(Cache):芯片内的缓存,保存来自芯片外缓存的缓存行。
包括芯片内高速缓存和芯片外高速缓存(如 SRAM、DRAM)。
提供比主存储器更快的访问速度,用于加速对常用数据和指令的访问。
主存储器(Main Memory):保存来自外部存储器(如磁盘、光盘、固态硬盘)的文件。
包括随机访问存储器(RAM)和只读存储器(ROM)。
速度介于高速缓存和外部存储器之间,价格适中。
外部存储器(External Storage):包括磁盘、光盘、固态硬盘(如 Flash、PROM、EPROM、E2PROM)等。
保存大量数据和文件,但访问速度相对较慢,价格相对较低。
提供长期存储和备份的功能,但通常不适合频繁的读写操作。
远程二级存储(Remote Secondary Storage):包括分布式文件系统、Web 服务器等。
提供远程存储和共享的功能,通常用于跨网络访问和备份数据。
所以,我们上面看到的存储器是特指主存储器——内存
计算机中不止有内存能存储。内存是计算机中用于临时存储数据和程序的一种存储介质,用于存储当前正在运行的程序和数据,是CPU能够直接访问的存储设备