270 likes | 555 Views
§2 计算机系统结构、组成与实现. 计算机系统结构、组成与实现的定义和内涵 计算机系统结构、组成和实现的相互关系. Art and Architecture. What ’ s the difference between Art and Architecture?. Lyonel Feininger, Marktkirche in Halle. 第戎圣母院. Art and Architecture. What ’ s the difference between Art and Architecture?. 哥特式建筑特点.
E N D
§2 计算机系统结构、组成与实现 • 计算机系统结构、组成与实现的定义和内涵 • 计算机系统结构、组成和实现的相互关系
Art and Architecture What’s the difference between Art and Architecture? Lyonel Feininger, Marktkirche in Halle
第戎圣母院 Art and Architecture What’s the difference between Art and Architecture?
哥特式建筑特点 • 是尖塔高耸、尖形拱门、大窗户及绘有圣经故事的花窗玻璃。 • 在设计中利用尖肋拱顶、飞扶壁、修长的束柱,营造出轻盈修长的飞天感。 • 新的框架结构以增加支撑顶部的力量,使整个建筑以直升线条、雄伟的外观和教堂内空阔空间,常结合镶着彩色玻璃的长窗,使教堂内产生一种浓厚的宗教气氛。 科隆大教堂是哥特式建筑的经典之作 法国斯特拉斯堡大教堂的玫瑰窗
What’s Computer Architecture? The attributes of a [computing] system as seen by the programmer, i.e., the conceptual structure and functional behavior, as distinct from the organization of the data flows and controls the logic design, and the physical implementation. Amdahl, Blaaw, and Brooks, 1964 SOFTWARE
计算机系统结构的定义System Architecture • 是一个系统在其所处环境中最高层次的概念;是对计算机系统中各机器级之间界面的划分和定义,以及对各级界面上、下的功能进行分配。 • 1964年,IBM/360系列机的总设计工程师G.M.Amdahl、G.A.Blaauw、F.P.Brooks等人提出。也称体系结构。 • 指的是计算机系统设计的观念与架构,描述计算机在实做的设计原则。 • 是从程序员的角度所看到的系统的属性,是概念上的结构和功能上的行为 • 程序员:系统程序员(包括:汇编语言、机器语言、编译程序、操作系统) • 看到的:编写出能在机器上正确运行的程序所必须了解到的 • 它不同于数据流程和控制的组织,不同于逻辑设计以及物理实现方法。
概念性结构 • IBM360系列计算机的概念性结构
功能特性指令系统及其执行模式 • 数据表示:硬件直接认别和处理的数据类型 • 寻址技术:编址方式、寻址方式和定位方式 • 寄存器定义:寄存器的定义、数量和使用规则 • 指令系统:指令的操作类型、格式、排序等 • 存储系统:要求速度高、容量大、价格便宜 • 中断系统:中断类型、中断级别和响应方式 • 输入输出系统:数据交换方式、交换过程控制 • 机器工作状态:定义和切换方式,如内核态、执行态、管理态和用户态
计算机系统结构 • 研究软硬件功能分配和对软硬件界面的确定 • 计算机系统由软件、硬件和固件组成,它们在功能上是同等的 • 同一种功能可以用硬件实现,也可以用软件或固件实现 • 不同的组成只是性能和价格不同,他们的系统结构是相同的 • 系列计算机概念:相同系统结构,不同组成和实现的一系列计算机系统
定义的理解 • 从两个角度理解: • 从应用程序设计者------外特性 • 从计算机系统设计者---内特性 • 计算机系统结构作为一门学科,主要研究软件、硬件功能的分配和对软件、硬件界面的确定。
计算机系统结构的外特性 • 是计算机系统的概念性结构和功能特性 • 一般应包括以下几个方面 • 指令系统、数据表示、操作数的寻址方式 • 寄存器的构成定义、中断机构和例外条件 • 存储体系和管理、I/O结构 • 机器工作状态定义和切换、信息保护 • 在所有系统结构的特性中,指令系统的外特性是最关键的
计算机系统结构的内特性 • 计算机系统的设计人员看到的基本属性,是外特性的逻辑实现。 • 包含内容: • 数据通路宽度、专用部件设计、各种OS共享程度 • 功能部件并行度、控制机构组成方式、排队与缓冲技术 • 预估与预判技术、可靠性技术等。 • 内特性研究目标:内特性主要是如何合理地实现分配给硬件的功能。
学习的重要性 • 2000年IEEE-CS教学计划和数据结构一起作为主干课。 • 有助于理解不同时期出现的新概念和新技术 • 如:Cache、相联、CISC、RISC、Cluster、SMP、MPP、网格计算、云计算、多核技术、众核技术等。 • 与之有关的课程: • 计算机组成、操作系统、编译原理、汇编语言、高级语言、计算机网络、微机原理与接口、嵌入式系统等
计算机系统结构 Computer Architecture 程序员所看的计算机 系统的属性 计算机组成 Computer Organization 计算机系统的逻辑实现 计算机实现 Computer Implementation 计算机系统的物理实现 计算机系统的课程体系
计算机组成Computer Organization • 计算机组成、计算机组织、计算机原理、计算机组成原理 • 研究硬件系统各组成部分的内部构造和相互联系,以实现机器指令级的各种功能和特性 • 目标是最合理的方式将各种设备和部件连接为计算机,以达到最优的性价比,从而实现所确定的系统结构 • 是计算机系统结构的逻辑实现,包括机器级内的数据流和控制流的组成以及逻辑设计等
计算机组成设计的几个方面 • 数据通路宽度 • 各种操作功能部件的共享程度 • 专用部件的设置 • 功能部件的并行性 • 缓冲和排队技术 • 控制机构的组成方式 • 预测技术 • 可靠性技术
计算机实现Computer Implementation • 计算机组成的物理实现 • 研究各部件的物理结构、机器的制造技术和工艺等,是计算机组成的物理实现。它着眼于器件技术和微组装技术。 • 主要研究内容 • 处理机、主存储器等部件的物理结构 • 器件的集成度和速度 • 专用器件的设计器件、模块、插件、底版的划分与连接 • 电源、冷却及装配技术,制造工艺及技术信号传输技术等 • 主存的物理实现,如存储器采用什么样器件,逻辑电路设计和微组装技术均属计算机实现
举例1 • 指令系统 • 指令系统的确定----系统结构 • 指令的实现----------组成 • 具体电路、器件设计及装配技术---实现 • 乘法指令 • 是否设乘法指令---系统结构 • 用高速乘法器还是加法器移位器实现---组成 • 器件的类型、数量及组装技术的确定---实现
举例2 • 主存系统 • 主存容量与编址方式的确定----系统结构 • 主存速度的确定、逻辑结构的模式---组成 • 器件的选定、电路的设计、组装技术---实现 • 什么样的系列机属系统结构,系列内的不同型号计算机的组织属组成
透明性 • 本来存在的事务或属性,从某个角度上看不到。反之,不透明。 • 例外:C语言的register类别变量。 • 在一个计算机系统中,低层机器的属性往往对高层机器的程序员是透明的 • 计算机组成设计的内容,对传统机器程序员来讲一般是透明的。
举例1 • 在多级层次结构的计算机系统中,传统机器级的概念性结构和功能特性,对高级语言的程序员来说是透明的,而对汇编语言的程序员来说不是透明的。这说明高级语言的程序员不必知道机器的指令系统、中断机构等,这些本来存在的属性,对高级语言的程序员来说好象不存在一样,所以说是透明的。 • 对计算机系统结构来说,存储器采用交叉存取还是并行存取、CPU内部的数据通路的宽度是8位还是16位,这些都是透明的,而对计算机组成来说这些不是透明的。
举例2 • 指令执行采用串行、重叠还是流水控制方式,对系统结构来说是透明的,但对计算机组成来说不是透明的。 • 乘法指令采用专用乘法器实现。对系统结构来说是透明的,而对计算机组成来说不是透明的。 • 存储器采用哪种芯片,对计算机系统结构和组成来说是透明的,而对计算机实现来说不是透明的。
系统结构、组成和实现三者的相互关系 • 具有相同系统结构的计算机可以采用不同的组成,一种计算机组成可以采用多种不同的计算机实现; • 采用不同的系统结构会使可以采用的组成技术产生差异,计算机组成也会影响系统结构;
不同系统结构的影响(举例) A:=B+C D:=E*F 面向寄存器: LOAD R1,B ADD R1,C STORE R1,A LOAD R2,E MPY R2,F STORE R2,D 面向三地址寻址: ADD B,C,A MPY E,F,D
系统结构、组成和实现三者的相互关系 • 计算机组成的设计,其上决定于计算机系统结构,其下又受限于所用的实现技术,它的发展促进了实现技术的发展,也促进了结构的发展; • 计算机实现,特别是器件技术的发展是计算机系统结构和组成的基础,促进了组成与结构的发展; • 随着技术的发展,三者关系融合于一体,难以分开,在相互促进中发展。 • 学习方法 • 从内到外:数字逻辑-> 组成-> 系统结构 • 从外到内:系统结构-> 组成 • 建议:计算机专业,从内到外 软件工程专业,从外到内