计算机系统由什么组成(深度解读计算机系统的基本构成)

6941 完若星
摘要:计算机系统由以下子系统构成包括CPU,主存,IO设备,总线,CPU从存储器读取程序和数据,执行程序,将程序执行后的数据输出到主存,CPU通过时钟生成连续的间隔固定的电脉冲流

计算机系统由以下子系统构成包括CPU,主存,IO设备,总线。下图为计算机系统结构图:

e57d14086ccc431f85cedbd5a983997a~noop.png

一、中央处理单元(CPU)

3b60927cfc3148119901f48562ebc9c9~noop.png

CPU从存储器读取程序和数据,执行程序,将程序执行后的数据输出到主存。

CPU通过时钟生成连续的间隔固定的电脉冲流, 在每个时钟周期到来时,会执行一条机器指令(极致情况下),时钟的单位就是时钟频率,单位为Hz,一般在1Mhz-4。5GHz之间,比如1GHz的时钟频率可以表示一个时钟周期为1ns。

CPU主要由寄存器(PC寄存器(程序计数器), 地址寄存器,数据寄存器,指令寄存器,条件寄存器,通用类寄存器等),CU(控制单元),ALU(算数逻辑单元),多路选择器,高速缓冲等组成。

1.1寄存器

PC寄存器用来存储下一条执行的程序指令的内存地址,每次执行指令时,会将内存地址存储到地址寄存器,然后再指向下一条指令地址。

地址寄存器用来存储当前要访问的内存地址,用于访问高速缓冲或者主存中的程序指令或者数据;

数据寄存器用来临时存储来自高速缓冲或者主存中的指令或者数据;

指令寄存器用来存储当前正在执行的程序指令;

条件寄存器用来存储当前运算的条件表达式的结果;

通用类寄存器用于存储从程序指令的操作数中获取到的数据或者内存地址。

1.2 控制单元CU

用于解码程序指令,分析操作数,根据指令和操作数据进行调度,主要目的是解码指令,执行指令。

1.3 ALU(算数逻辑单元)

用于进行加减以及布尔类逻辑操作,输出操作结果,条件码,溢出标志,进位标志等

1.4高速缓冲

高速缓冲一般采用SRAM,其存储效率比主存快上百倍,为了减少CPU时钟周期的浪费,将最近热点的程序指令或者数据存储在缓冲中。

其实在一个较大较慢的设备前增加一个较小较快的缓冲可以提高这个慢的设备的存取效率,如下图所示:

a556b265eeb64d129170bdec5fa8d269~noop.png

CPU直接从寄存器中获取数据,寄存器可以从L1高速缓冲获取数据,如果L1获取不到数据,则可以继续从L2高速缓冲,以此类推,每次都优先从最近的较快的设备中获取数据。

二、存储器(主存DRAM)

存储器用来保存程序和数据,有两种体系结构:

哈佛体系结构

程序和数据用两个存储器分开存储。

冯·诺依曼体系结构

程序和数据公用一个存储器进行存储,目前是主流。

三、IO设备

包括IO控制器或适配器以及IO设备本身。

控制器一般集成到电路板上,比如USB控制器,磁盘控制器等。

适配器一般插在电路板的插槽上如显卡适配器,控制器与适配器功能类似,都提供硬件接口,接受操作系统的指令,对IO设备进行控制,读写等。

因此对于操作系统来说,它并不知道它连接的是什么设备,因为它只与控制器或者适配器打交道,一般控制器或者适配器都是标准化的。

例如 SATA磁盘控制器就是标准化的,任何SATA磁盘都可以适配到SATA磁盘控制器上。

四、总线

CPU,内存,IO设备通过各类总线进行通信,所有的总线类型都不一定相同。

例如PC机主板上的PCIE总线用于接入高速的IO设备,USB的总线则用于接入慢速的IO设备,所以可以采用一些比如总线扩展接口或者桥接技术来保证不同类型总线之间交换数据。

相关文章

发表评论

登录后才能评论

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任如发现本站有涉嫌抄袭侵权/违法违规的内容,请发送邮件至154386093@qq.com举报,一经查实,本站将立刻删除。