应用研发之基础知识 - 计算机硬件基础
1:计算机的结构
现代计算机依然是遵循冯·诺依曼的逻辑结构。
1.1 冯·诺依曼体系结构:
计算机由五个部分组成:运算器、控制器、存储器、输入设备、输出设备。
CPU:运算器+控制器+内存缓存
存储器:内存
输入输出设备(IO设备):磁盘,usb,鼠键,显卡,网卡等 可统一称为外部IO设备。通过IO接口交互,统一编址。
特点:
软硬件分离(程序与硬件分离),程序存储起来,cpu从存储中读取程序与数据进行计算
指令与数据一起参与计算
指令包括操作码+操作数
指令顺序执行(单处理器内)
指令在存储器中存放,由指令计数器指明要计算指令的存放地址。
1.2 总线-各部件间的连接
CPU是大脑,总线是神经,负责各个硬件间的信息传递。
总线的指标:
总线位宽(字长):一次传递的位数,32位,64位 等
总线频率:单位时间内运行次数
总线的带宽:单位时间内传递的数据量
总线的带宽公式=总线的工作频率*总线的位宽/8
总线分类:
按传递信息内容分:数据总线,地址总线,控制总线。
地址总线:CPU向外部传递存储设备及外部IO传递地址的。
地址总线的位宽:决定cpu可直接寻址内存空间大小。
如地址总线为n位,则可寻址空间为2^n。
一个地址存放一个字节B
32位地址总线支持 2^32 B=4GB.,
1.3 影响性能的频率
CPU频率:CPU主频,决定CPU的运行速度
系统总线频率:也称外频, CPU与外部(主板芯片组)交换数据、指令的工作时钟频率。
倍频:倍频则是指CPU外频与主频相差的倍数。
三者关系是:主频=外频x倍频
读写性能-带宽
指 单位时间内传递的数据量
内存读写速度,受限总线频率与内存的等效频率,频率越高一次读写越快,位数越大一次读取的数据越多。
总线带宽:CPU与总线交换的带宽,=CPU主频*64/8
内存带宽:内存频率*系数*64/8,新内存可以多通道,DDR一个震荡可以做两次数据传递。系数=4。内存位宽不只64,有128,256.
如果CPU与总线的读写带宽与内存的读写带宽不一致,实际带宽就受限于慢的一方。
内存与比CPU慢,因此cpu中内存高速缓存,并结合预取技术,很多数据提前进入高速缓存。读取某个数据,跟他相邻的可能后续要读取,就预先取到高速缓存。
1.4 CPU
CPU的是 大脑,协调所有硬件。运算的实际执行者,CPU从存储器读取指令进行计算,指令按顺序执行。
CPU结构
运算器+控制器
运算器---数据流
控制器---指令流
CPU逻辑封装
内部:电路的开关控制。
对外API: 指令集,通常说的机器指令。上层(操作系统)通过指令集与CPU交互。
指令集:cpu可采用不同指令集的提供不同的规范,如X86,ARM指令集。
内部不同实现:电路的封装控制,即cpu的微架构,同一个规范(指令集)可有多种实现。 如Intel、高
通采用不同微架构实现X86指令集。
指令内容:运算指令+地址
CPU指标
位数:16,32,64
频率:1秒内发生的同步脉冲数,决定速度。3-4GHZ
架构:内部设计,高效节能。
制程:越小越好 7nm
核心数:晶体管体积减小的天花板到来。多个核心一起运行多个任务提升总体性能--多个核心才能真正的并
行计算。也为多线程带来问题。
内部高速缓存:可减少读取内存
频率决定让一个计算最快多快,核心数决定可以并行多少个计算。
CPU架构的复杂度进化:
支持的指令集(电路复杂)
高速缓存:提高性能,同时引入复杂性。
多核心:为提高性能引入的复杂性。
最特殊的驱动:CPU驱动。
主板集成,BIOS中
1.5 内存
工作频率,存储容量
内存速度:内存频率*内存位数/8
地址:存储的位置,数据与要执行指令都在存储器中存放,每个字节一个地址。
1.6发展进化趋势
内存与磁盘技术成本降低的快,访问时间降低的慢
CPU提高的速度大于存储提高的速度。(cpu 与内存,磁盘间的速度差距在逐渐拉大)
CPU频率的提高在03年后就基本停滞了,性能提高都是通过多核实现的。
-参考:深入理解计算机系统-第二版-6.1.4
评论