文章目录
- 计算机组成与体系结构 概述
 - 计算机系统概述
 - 计算机系统的组成
 - 计算机层次结构
 
- 计算机性能评价
 
计算机组成与体系结构 概述
计算机系统概述
计算机系统的组成
计算机的基本部件:
- 运算器:ALU、GPRs(通用寄存器组)、标志寄存器等;
 - 存储器:存储阵列、地址译码器、读写控制电路;
 - 总线:数据(MDR)、地址(MAR)和控制线;
 - 控制器:对指令译码生成控制信号;
 
冯诺伊曼结构:运算器、控制器、存储器、输入设备和输出设备五个基本部件组成。
-  
存储器同时存放数据和指令,形式上没有区别;
 -  
内部以二进制表示指令和数据,每条指令由操作码和地址码两部分组成;
 -  
采用“存储程序”的工作方式。
 
“存储程序”工作方式:冯诺依曼结构的最重要的思想,指任何计算机完成的工作都要先悲编写成程序,然后将程序和原始数据送入主存并启动执行。一旦程序被启动,计算机应能在不需操作人员干预下,自动完成逐条取出指令和执行指令的任务。

计算机层次结构

- 最终用户工作:在应用程序层面,看到的是应用程序虚拟机,只知道如何使用相应的 应用程序;
 - 应用程序开发人员:在程序设计语言层面工作,看到的是高级语言虚拟机,只要会使用各种程序设计语言编程;
 - 系统维护人员:在操作系统层面工作,看到的是操作系统虚拟机,只要知道系统中的命令和工具如何使用;
 - 系统程序员(OS和编译器开发人员):工作在计算机逻辑结构层面(ISA层次),看到的是汇编语言虚拟机;
 
ISA(指令集体系结构):ISA 是一种规约,规定了如何使用硬件;是软/硬件的交界面;
- 常分为复杂指令集运算(CISC)和精简指令集运算(RISC) ;
 
计算机性能评价
计算机的性能指标:
- 完成任务所需要的时间:如响应时间、执行时间、等待时间或时延;
 - 单位时间所完成的任务:如吞吐率、带宽;
 
不同应用场合用户关心的性能不同,如:
- 要求吞吐率高的场合:多媒体应用;
 - 要求响应时间短的场合:事务处理系统;
 - 要求吞吐率高且响应时间短的场合:ATM、服务器;
 
通常把用户感觉到的响应时间分成以下两个时间:
- CPU 时间:指 CPU 真正花在程序执行上的时间,又分为: 
  
- 用户 CPU 时间:用来运行用户代码的时间;
 - 系统 CPU 时间:为了执行用户程序而需要运行操作系统程序的时间;
 
 - 其他时间:指等待 I/O 操作完成或 CPU 花在其他用户程序的时间;
 
基本的性能评价标准是:CPU 的执行时间 ,即执行程序中每条指令的时间。
CPI :平均每条指令所花费的 CPU 周期数
CPU 执行时间的计算
  
      
       
        
        
          CPU执行时间 
         
        
          = 
         
        
          指令条数 
         
        
          / 
         
        
          程序数 
         
        
          × 
         
        
          CPI 
         
        
          × 
         
        
          时钟周期 
         
        
       
         \text{CPU执行时间}=\text{指令条数}/\text{程序数}\times\text{CPI}\times\text{时钟周期} 
        
       
     CPU执行时间=指令条数/程序数×CPI×时钟周期
CPU time = Seconds Program = Instructions Program × Cycles Instructions × Seconds Cycles \text{CPU time}=\frac{\text{Seconds}}{\text{Program}} =\frac{\text{Instructions}}{\text{Program}} \times\frac{\text{Cycles}}{\text{Instructions}} \times\frac{\text{Seconds}}{\text{Cycles}} CPU time=ProgramSeconds=ProgramInstructions×InstructionsCycles×CyclesSeconds
例:程序P在机器A上运行需10 s, 机器A的时钟频率为400MHz。 现在要设计一台机器B,希望该程序在B上运行只需6 s;机器B时钟频率的提高导致了其CPI的增加,使得程序P在机器B上时钟周期数是在机器A上的1.2倍。机器B的时钟频率达到A的多少倍才能使程序P在B上执行速度是A上的10/6=1.67倍?
解:程序 P 在机器 A 上的时钟周期数为:
  
      
       
        
        
          10 
         
        
          s 
         
        
          × 
         
        
          400 
         
        
          MHz 
         
        
          = 
         
        
          4000 
         
        
          M 
         
        
       
         10\text{s}\times 400\text{MHz}=4000M 
        
       
     10s×400MHz=4000M
 B 机器的时钟频率为:
  
      
       
        
        
          1.2 
         
        
          × 
         
        
          4000 
         
        
          M 
         
        
          / 
         
        
          6 
         
        
          s 
         
        
          s 
         
        
          = 
         
        
          800 
         
        
          MHz 
         
        
       
         1.2 \times 4000\text{M}/6s\text{s}=800\text{MHz} 
        
       
     1.2×4000M/6ss=800MHz
 MIPS 定点指令执行速度:Million Instruction Per Second
MFLOPS 浮点操作速度:Million Floating-point Operations Per Second
Benchmarks 基准测试程序:专门用来进行性能评价的一组程序,通过运行实际负载赖反应计算机的性能。
- 缺陷:对基准测试程序进行特殊优化,可以得到不当的性能评测结果;
 


















