计算机系统设计基础
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
第1章 计算机系统设计基础
• 1.1 计算机系统的基本概念 • 1.2 计算机系统的设计技术 • 1.3 计算机系统的性能评价 • 1.4 计算机系统结构的发展
2020年2月5日星期三
1
本章学习要求
• 了解计算机系统的多级层次结构
• 掌握系统结构、组成和实现的定义及属 性,会透明性分析
• 掌握计算机系统的设计原理、性能计算 • 掌握计算机系统的分类,特别是Flynn分
2020年2月5日星期三
3
计算机的功能
• 科学计算 • 数据处理(信息处理) • 过程控制 • 人工智能 • ……
2020年2月5日星期三
4
1.1 计算机系统的基本概念
• 机器:能存储和执行相应语言程序的算 法和数据结构的执行体
• 计算机语言:是用以描述控制流程的、 有一定规则的字符集合
– 语言不是专属软件范畴,可以介属于计算机 系统的各个层次,具有不同作用
2020年2月5日星期三
18
计算机系统结构的基本属性
• 一般应包括以下几个方面
– 指令系统、数据表示、操作数的寻址方式 – 寄存器的构成定义、中断机构和例外条件 – 存储体系和管理、I/O结构 – 机器工作状态定义和切换、信息保护
在所有系统结构的特性中,指令系统的外特 性是最关键的
2020年2月5日星期三
例:英语翻译
计算机系统中的翻译功能常由应用程序 包、编译程序、汇编程序等软件完成。
解 释 (Interpretation ):在 低 一级 机 器级上用它的一串语句或指令来仿真高 一级机器上的一条语句或指令的功能, 通过对高一级机器语言程序中的每条语 句或指令逐条解释来实现的技术
解释过程中不生成中间程序(节省了存 储空间)
• 是对计算机系统中各机器级之间界面的划 分和定义,以及对各级界面上、下的功能
进行分配
– 1964年,IBM/360系列机的总设计工程师G.M. Amdahl、G.A. Blauw、F.P. Brooks等人提出。 也称体系结构。
– 是从程序员的角度所看到的系统的属性,是 概念上的结构和功能上的行为
2020年2月5日星期三
8
从设计人员看到的层次
• 应用程序级 • 高级语言级 • 汇编语言级 • 操作系统级 • 机器语言级 • 微程序控制级 • 硬联逻辑级
用户 高级语言程序员 汇编语言程序员 操作员 机器语言程序员
逻辑程序员 硬件设计员
2020年2月5日星期三
9
翻译(Translation):先用转换程序将高 一级机器级上的程序整个地变换成低一 级机器级上可运行的等效程序(中间程 序),然后再在低一级机器级上去实现 的技术。
用内存少
– 软件实现:速度低、复制费用低;灵活性好、 占用内存多
• 发展趋势
– 硬件实现的比例越来越高 – 硬件所占的成本越来越低
2020年2月5日星期三
13
计算机系统的软硬件成本变化
成本
软件
Fra Baidu bibliotek
2020年2月5日星期三
70年代
硬件 年代
14
从概念和功能上将计算机系统看成多级层次结构 的优点:
1. 理解软件、硬件、固件的地位和作用 2. 理解各种语言的实质和实现途径 3. 探索虚拟机新的实现方法和新的系统设计
或者:一条N+1级指令--〉一串N级指令
例:解释一件事
翻译和解释是语言实现的两种基本技术。
•解释比翻译费时,但节省存储空间
•翻译为整体行为,可以优化,效率高, 与平台有关
•解释为局部行为,不优化,效率低, 与平台无关
翻译+解释:Java
控制流程的三种实现方法
• 全硬件、软硬件结合、全软件
– 逻辑上等价,物理意义上不等价 – 硬件实现:速度快、成本高;灵活性差、占
– 它不同于数据流程和控制的组织,不同于逻 辑设计以及物理实现方法
2020年2月5日星期三
17
定义的理解
• 从两个角度理解
一是计算机系统结构既然是“从程序员的角度所看到 的系统的属性”,那么每一级“机器”都有一个系统结 构,而且它们相互不同
二是将计算机的系统结构定义在传统机器界面(M1) 程序员所看到的计算机的基本属性
2020年2月5日星期三
5
1.1.1计算机系统的多级层次结构
从使用语言的角度上,将计算机系统 看成按功能划分的多级层次结构
机器、汇编、高级、应用语言
低级
高级
后者比前者功能更强、使用更方便;
而前者是后者发展的基础,在单条指令的 执行速度相比较,前者更快。
计算机系统的多级层次结构图
应用软件
系统软件 软件
由硬件固件实现——高级语言机器 多处理机系统——由真正微处理机实现 4. 理解计算机体系结构的定义
5. 在一台真正的宿主机上通过模拟或仿真另一台不 同的假想机器——自虚拟技术
1.1.2 系统结构、组成与实现
• 定义与理解 • 三者的相互关系
2020年2月5日星期三
16
计算机系统结构的定义 System Architecture
软硬件交界面 硬件 固件
应用语言级 L5虚拟机
翻译(应用程序包) 高级语言机器 L4虚拟机
翻译(编译程序) 汇编语言机器 L3虚拟机
翻译(汇编程序) 操作系统机器 L2虚拟机
部分解释(操作系统)
传统机器级 物理机器
微程序/硬联
解释
直接由硬件执行
2020年2月5日星期三
7
多级层次结构(机器—语言)
• M5: 应用语言机器------应用语言(L5) • M4: 高级语言机器------高级语言(L4) • M3: 汇编语言机器------汇编语言(L3) • M2: 操作系统机器------作业控制语言(L2) • M1: 传统机器------------机器语言(L1) • M0: 微程序机器---------微程序语言(L0)
类
• 了解软件对计算机系统结构发展的影响
2020年2月5日星期三
2
什么是计算机?
• 计算机是一种不需要人的直观干预而能自动完 成各种算术和逻辑运算的工具
• 随着计算机科学技术的发展和应用范围的扩大, 计算机已由单一的数值计算,扩展到信息处理、 知识推理等非计算领域
• 说明:
– 随着技术的发展,概念有所变化 – 计算机是工具
19
计算机组成 Computer Organization
• 研究硬件系统各组成部分的内部构造和相 互联系,以实现机器指令级的各种功能和
特性,目标是用最合理地方式将各种设备
和部件连接为计算机,以达到最优的性价 比,从而实现所确定的系统结构。
• 1.1 计算机系统的基本概念 • 1.2 计算机系统的设计技术 • 1.3 计算机系统的性能评价 • 1.4 计算机系统结构的发展
2020年2月5日星期三
1
本章学习要求
• 了解计算机系统的多级层次结构
• 掌握系统结构、组成和实现的定义及属 性,会透明性分析
• 掌握计算机系统的设计原理、性能计算 • 掌握计算机系统的分类,特别是Flynn分
2020年2月5日星期三
3
计算机的功能
• 科学计算 • 数据处理(信息处理) • 过程控制 • 人工智能 • ……
2020年2月5日星期三
4
1.1 计算机系统的基本概念
• 机器:能存储和执行相应语言程序的算 法和数据结构的执行体
• 计算机语言:是用以描述控制流程的、 有一定规则的字符集合
– 语言不是专属软件范畴,可以介属于计算机 系统的各个层次,具有不同作用
2020年2月5日星期三
18
计算机系统结构的基本属性
• 一般应包括以下几个方面
– 指令系统、数据表示、操作数的寻址方式 – 寄存器的构成定义、中断机构和例外条件 – 存储体系和管理、I/O结构 – 机器工作状态定义和切换、信息保护
在所有系统结构的特性中,指令系统的外特 性是最关键的
2020年2月5日星期三
例:英语翻译
计算机系统中的翻译功能常由应用程序 包、编译程序、汇编程序等软件完成。
解 释 (Interpretation ):在 低 一级 机 器级上用它的一串语句或指令来仿真高 一级机器上的一条语句或指令的功能, 通过对高一级机器语言程序中的每条语 句或指令逐条解释来实现的技术
解释过程中不生成中间程序(节省了存 储空间)
• 是对计算机系统中各机器级之间界面的划 分和定义,以及对各级界面上、下的功能
进行分配
– 1964年,IBM/360系列机的总设计工程师G.M. Amdahl、G.A. Blauw、F.P. Brooks等人提出。 也称体系结构。
– 是从程序员的角度所看到的系统的属性,是 概念上的结构和功能上的行为
2020年2月5日星期三
8
从设计人员看到的层次
• 应用程序级 • 高级语言级 • 汇编语言级 • 操作系统级 • 机器语言级 • 微程序控制级 • 硬联逻辑级
用户 高级语言程序员 汇编语言程序员 操作员 机器语言程序员
逻辑程序员 硬件设计员
2020年2月5日星期三
9
翻译(Translation):先用转换程序将高 一级机器级上的程序整个地变换成低一 级机器级上可运行的等效程序(中间程 序),然后再在低一级机器级上去实现 的技术。
用内存少
– 软件实现:速度低、复制费用低;灵活性好、 占用内存多
• 发展趋势
– 硬件实现的比例越来越高 – 硬件所占的成本越来越低
2020年2月5日星期三
13
计算机系统的软硬件成本变化
成本
软件
Fra Baidu bibliotek
2020年2月5日星期三
70年代
硬件 年代
14
从概念和功能上将计算机系统看成多级层次结构 的优点:
1. 理解软件、硬件、固件的地位和作用 2. 理解各种语言的实质和实现途径 3. 探索虚拟机新的实现方法和新的系统设计
或者:一条N+1级指令--〉一串N级指令
例:解释一件事
翻译和解释是语言实现的两种基本技术。
•解释比翻译费时,但节省存储空间
•翻译为整体行为,可以优化,效率高, 与平台有关
•解释为局部行为,不优化,效率低, 与平台无关
翻译+解释:Java
控制流程的三种实现方法
• 全硬件、软硬件结合、全软件
– 逻辑上等价,物理意义上不等价 – 硬件实现:速度快、成本高;灵活性差、占
– 它不同于数据流程和控制的组织,不同于逻 辑设计以及物理实现方法
2020年2月5日星期三
17
定义的理解
• 从两个角度理解
一是计算机系统结构既然是“从程序员的角度所看到 的系统的属性”,那么每一级“机器”都有一个系统结 构,而且它们相互不同
二是将计算机的系统结构定义在传统机器界面(M1) 程序员所看到的计算机的基本属性
2020年2月5日星期三
5
1.1.1计算机系统的多级层次结构
从使用语言的角度上,将计算机系统 看成按功能划分的多级层次结构
机器、汇编、高级、应用语言
低级
高级
后者比前者功能更强、使用更方便;
而前者是后者发展的基础,在单条指令的 执行速度相比较,前者更快。
计算机系统的多级层次结构图
应用软件
系统软件 软件
由硬件固件实现——高级语言机器 多处理机系统——由真正微处理机实现 4. 理解计算机体系结构的定义
5. 在一台真正的宿主机上通过模拟或仿真另一台不 同的假想机器——自虚拟技术
1.1.2 系统结构、组成与实现
• 定义与理解 • 三者的相互关系
2020年2月5日星期三
16
计算机系统结构的定义 System Architecture
软硬件交界面 硬件 固件
应用语言级 L5虚拟机
翻译(应用程序包) 高级语言机器 L4虚拟机
翻译(编译程序) 汇编语言机器 L3虚拟机
翻译(汇编程序) 操作系统机器 L2虚拟机
部分解释(操作系统)
传统机器级 物理机器
微程序/硬联
解释
直接由硬件执行
2020年2月5日星期三
7
多级层次结构(机器—语言)
• M5: 应用语言机器------应用语言(L5) • M4: 高级语言机器------高级语言(L4) • M3: 汇编语言机器------汇编语言(L3) • M2: 操作系统机器------作业控制语言(L2) • M1: 传统机器------------机器语言(L1) • M0: 微程序机器---------微程序语言(L0)
类
• 了解软件对计算机系统结构发展的影响
2020年2月5日星期三
2
什么是计算机?
• 计算机是一种不需要人的直观干预而能自动完 成各种算术和逻辑运算的工具
• 随着计算机科学技术的发展和应用范围的扩大, 计算机已由单一的数值计算,扩展到信息处理、 知识推理等非计算领域
• 说明:
– 随着技术的发展,概念有所变化 – 计算机是工具
19
计算机组成 Computer Organization
• 研究硬件系统各组成部分的内部构造和相 互联系,以实现机器指令级的各种功能和
特性,目标是用最合理地方式将各种设备
和部件连接为计算机,以达到最优的性价 比,从而实现所确定的系统结构。