计算机体系结构:1.计算机系统概述

1.1 计算机系统的基本组成

1.1.1 计算机硬件的基本组成

冯·诺依曼结构:

  1. 采用“存储程序”的工作方式
  2. 计算机由运算器、控制器、存储器、输入设备和输出设备4个基本部件组成
  3. 存储器不仅能存放数据,而且也能存放指令,形式上数据和指令没有区别,但计算机应区分它们;控制器应能控制指令的自动执行;运算器应能进行加、减、乘、除4种基本算术运算,并且也能进行逻辑运算;操作人员可以通过输入/输出设备使用计算机
  4. 计算机内部以二进制形式表示指令和数据;每条指令由操作码和地址码两部分组成,操作码指出操作类型,地址码指出操作数的地址;由一串指令组成程序。
1.中央处理器

​ 中央处理器简称CPU或处理器,主要用于指令的执行。包含两种基本部件:数据通路和控制器。

​ 数据通路主要包含算术逻辑部件(ALU)和通用寄存器,ALU进行算术和逻辑运算,通用寄存器用来暂存指令所用的操作数或执行结果。

​ 控制器用来对指令进行译码。

2.存储器

​ 存储器分为内存和外存,内存包括主存储器和高速缓存(cache)。

​ 外存包括磁盘存储器和固态硬盘等直接和驻村交换信息的存储器,以及一些用于数据备份的海量后备存储器。

3.外部设备和设备控制器

​ 外部设备简称外设,也称为I/O设备,通常由机械部分和电子部分组成,两部分通常是可以分开的。

​ 外设通过设备控制器连接到主机上,各种设备控制器统称为I/O控制器、I/O接口或I/O模块。

在这里插入图片描述

图1 一个典型计算机系统的硬件组成

1.5 计算机系统性能评价

​ 计算机系统的性能主要考虑的是CPU性能,但二者不等价,有一些区别。系统性能是指系统的响应时间,它与CPU性能相关,同时也与CPU以外的其他部分有关。

​ 几个重要的概念和参数:

  1. 时钟周期(clock cycle,tick,clock tick,clock)。计算机执行一条指令的过程被分成若干步骤来完成,每一步都要有响应的控制信号进行控制,这些控制信号何时发出、作用时间多长,都要有相应的定时信号进行同步。因此,计算机必须能够产生同步的时钟定时信号,也就是CPU的主脉冲信号,其宽度称为时钟周期。

  2. 时钟频率(clock rate)。时钟周期的倒数

  3. CPI(cycles per instruction)。CPI表示执行一条指令所需的时钟周期数。不同指令的功能不同,所需的时钟周期数也可能不同,因此,对于一条特定指令而言,其CPI指执行该指令所需的时钟周期数,此时CPI是一个确定的值;

    对于一个程序或一台机器来说,其综合CPI指该程序或该机器指令集中的所有指令执行所需的平均时钟周期数。
    用户 C P U 时间 = 程序总时间周期数 × 时钟周期 = 程序总指令条数 × C P I × 时钟周期 用户CPU时间=程序总时间周期数×时钟周期=程序总指令条数×CPI×时钟周期 用户CPU时间=程序总时间周期数×时钟周期=程序总指令条数×CPI×时钟周期

    C P I = ∑ i = 1 n ( C P I i × F i ) CPI=\sum_{i=1}^n(CPI_i \times F_i) CPI=i=1n(CPIi×Fi)

    C P I i CPI_i CPIi表示第i条指令的 C P I CPI CPI, F i F_i Fi表示第i条指令在程序中的比例。

用指令执行速度进行性能评估

​ 最早用来衡量计算机性能的指标是每秒钟完成单个运算指令的条数。指令速度所用的计量单位为MIPS(million instructions per second),其含义是平均每秒钟执行多少百万条指令。类似的单位由GIPS,TIPS等

​ 设某类指令i在程序中所占比例为 w i w_i wi,执行时间为 t i t_i ti,则等效指令的执行时间为
T = w 1 × t 1 + w 2 × t 2 + … + w n × t n T=w_1\times t_1 +w_2 \times t_2 +…+w_n \times t_n T=w1×t1+w2×t2++wn×tn
​ n为指令种类数,若执行时间用时钟周期数来衡量的话,则上式的结果就是 C P I CPI CPI。对指令平均执行时间求倒数能够得到MIPS值。
M I P S = 时钟频率 C P I = 1 C P I × 时钟周期 MIPS=\frac{时钟频率}{CPI}=\frac{1}{CPI\times时钟周期} MIPS=CPI时钟频率=CPI×时钟周期1
​ 选取一组合适的指令组合,使得得到的平均 C P I CPI CPI最小,由此得到的MIPS就是峰值MIPS(peak MIPS)。

​ 与顶点指令执行速度MIPS相对应的用来表示浮点操作速度的指标是MFLOPS(million floating-point operations per second).表示每秒钟执行的浮点运算有多少百万次,它是基于所完成的操作次数而不是指令数来衡量的。类似指标还有GELOPS( 1 0 9 10^9 109次/s)、TFLOPS( 1 0 12 10^{12} 1012次/s)、PFLOPS( 1 0 15 10^{15} 1015次/s)和EFLOPS( 1 0 18 10^{18} 1018次/s)等。

Amdahl定律·

​ 阿姆达尔定律是计算机系统设计方面重要的定量原则之一。
改进后的执行时间 = 改进部分执行时间 改进部分的改进倍数 + 未改进部分执行时间 改进后的执行时间=\frac{改进部分执行时间}{改进部分的改进倍数}+未改进部分执行时间 改进后的执行时间=改进部分的改进倍数改进部分执行时间+未改进部分执行时间

整体改进倍数 = 1 改进部分执行时间比例 改进部分的改进倍数 + 未改进部分执行时间的比例 整体改进倍数=\frac{1}{\frac{改进部分执行时间比例}{改进部分的改进倍数}+未改进部分执行时间的比例} 整体改进倍数=改进部分的改进倍数改进部分执行时间比例+未改进部分执行时间的比例1

  • 27
    点赞
  • 27
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值