计算机体系结构知识点汇总
- 格式:doc
- 大小:1.08 MB
- 文档页数:22
高校计算机专业计算机组成原理知识点归纳整理计算机组成原理是计算机科学与技术专业的核心课程之一,它涵盖了计算机体系结构、数字逻辑电路、指令系统和运算器等重要内容。
对于计算机专业的学生来说,掌握计算机组成原理的知识点是至关重要的。
本文将对高校计算机专业计算机组成原理的知识点进行归纳整理,以便学生们在学习和工作中能够更好地运用相关知识。
一、计算机体系结构计算机体系结构是计算机系统中最为基础的部分,它包括计算机硬件层次的组成和计算机相互联系的方式。
计算机体系结构的主要知识点如下:1. Von Neumann 结构:指的是将指令和数据存储在同一存储器中,并通过总线进行传输的计算机结构。
2. 存储器的层次结构:主要包括寄存器、缓存、内存和外存等不同速度和容量的存储器,以满足计算机对于数据存储和访问的需求。
3. CPU 的结构与功能:包括指令寄存器、程序计数器、算术逻辑单元(ALU)等组成部分,用于执行指令和完成计算任务。
4. 输入输出系统:涉及外设和主机之间的数据传输,包括中断、DMA等技术。
二、数字逻辑电路数字逻辑电路是计算机中的基本组成部分,它用于处理和传输数字信号。
在计算机组成原理中,数字逻辑电路是非常重要的知识点。
以下是数字逻辑电路的主要知识点:1. 布尔代数与逻辑运算:包括与、或、非、异或等逻辑运算的基本定义和性质,以及基于逻辑门实现的逻辑电路。
2. 组合逻辑电路:由逻辑门组成的电路,输出仅与输入的当前状态有关,不受时钟信号的影响。
3. 时序逻辑电路:输出与输入的当前状态和历史状态有关,包括锁存器、触发器和计数器等电路。
三、指令系统与运算器指令系统是计算机的核心部分,它规定了计算机能够识别和执行的指令集。
而运算器则是计算机中负责执行算术和逻辑运算的部件。
以下是指令系统与运算器的主要知识点:1. 指令的格式与寻址方式:根据指令和操作数的组织形式,可以将指令分为不同的格式,如固定格式、可变格式和根据寻址方式分为立即寻址、直接寻址、间接寻址等。
计算机系统结构知识点汇总计算机系统结构是一门研究计算机硬件与软件之间关系的学科,它涵盖了从处理器设计到存储系统,再到输入输出设备等多个方面。
以下是对计算机系统结构中一些重要知识点的汇总。
一、指令系统指令系统是计算机硬件能够执行的操作的集合。
它规定了计算机能够执行的指令格式、操作码和操作数的编码方式等。
指令的长度、寻址方式以及指令的类型(如数据传输指令、算术逻辑运算指令、控制转移指令等)都会对计算机的性能产生影响。
例如,精简指令集计算机(RISC)通常具有较少但简单、规整的指令,而复杂指令集计算机(CISC)则拥有更多复杂的指令。
RISC 处理器通过简化指令集来提高指令执行的效率,而 CISC 处理器则试图通过提供丰富的指令来减少编程的复杂性。
二、处理器结构处理器是计算机的核心部件,其结构包括数据通路和控制单元。
数据通路负责处理数据的运算和传输,而控制单元则根据指令来控制数据通路的操作。
流水线技术是提高处理器性能的重要手段之一。
通过将指令的执行过程分为多个阶段,并在不同的阶段同时处理不同的指令,可以大大提高指令的执行速度。
但流水线也会带来诸如冒险(如数据冒险、控制冒险)等问题,需要通过适当的方法(如前递、延迟槽等)来解决。
超标量和超流水线技术则进一步提升了处理器的性能。
超标量处理器在一个时钟周期内可以同时发射多条指令,而超流水线处理器则将流水线的级数进一步增加,以提高时钟频率。
三、存储系统存储系统包括高速缓存(Cache)、主存和辅存。
高速缓存是位于处理器和主存之间的小而快的存储器,用于减少处理器访问主存的时间。
Cache 的命中率对系统性能至关重要,而影响命中率的因素包括Cache 的容量、块大小和替换策略等。
主存通常采用动态随机存储器(DRAM),其速度比Cache慢,但容量较大。
为了提高主存的访问速度,可以采用多体交叉存储技术。
辅存如硬盘、光盘等用于长期存储大量数据,其特点是容量大但速度慢。
计算机体系结构必考知识点一、知识概述《计算机体系结构必考知识点》①基本定义:计算机体系结构呢,简单说就是计算机的各个组成部分,像处理器、内存、输入输出设备等,它们之间是怎么连接的,还有各自的功能怎么协同工作。
就好比一个足球队,每个球员(硬件组件)都有自己的位置(功能),教练(操作系统等软件)怎么安排他们配合踢球(协同工作),这就是大致的概念。
②重要程度:在计算机这个学科里,这可太重要了。
要是不懂体系结构,就好比你盖房子不知道怎么搭框架,那接下来的装修(软件开发之类的)就无从下手。
计算机系统的性能、功能等都和它有很大关系。
③前置知识:得有基本的数字电路知识,像什么是逻辑门之类的。
还有对计算机各个硬件部件有个简单了解,就像你得知道有CPU这个东西,它大致是干啥的。
如果之前学过计算机组成原理那就更好了,就像你是个盖房子的小工,盖了几次小房子(了解简单的硬件组合),再来盖大楼(学习体系结构)就容易些。
④应用价值:实际应用可多了。
比如说设计新的计算机芯片,要考虑体系结构。
像手机厂商想让手机运行得更快,还不那么耗电,那就得优化手机芯片的体系结构。
再比如说云计算中心设计大型服务器集群,也得按照合理的体系结构来,这样才能高效处理海量的数据。
二、知识体系①知识图谱:在计算机学科的大地图里,计算机体系结构是重要的一块。
它连接着计算机硬件底层,向上又影响着操作系统、软件应用的开发。
就好比它是城市里的交通规划(对计算机里的数据等流动起规划作用),其他的建筑物(软件等)得按照这个交通规划来建设。
②关联知识:和计算机组成原理关联紧密,组成原理就像是讲每个部件的详细构造,体系结构就是把这些部件组合起来看。
和操作系统也有很大关系,操作系统的运行依赖于计算机体系结构提供的环境。
就好像演员(操作系统)得在舞台(体系结构)上表演。
③重难点分析:掌握难度在于概念比较抽象,像多级存储体系结构,什么缓存、主存、外存的关系不好理解。
关键点在于要理解各个部件的交互原理。
1计算机组成——计算机体系结构的逻辑实现。
2计算机实现——计算机组成的物理实现。
3关系系统结构是组成的抽象,组成是实现的抽象4体系结构——程序员所看到的计算机的属性,即概念性结构与功能特性。
5软件兼容——同一个软件可以不加修改地运行于体系结构相同的各档机器上,而且它们所获得的结果一样,差别只在于运行的时间不同。
6 Amdahl定律——加快某部件执行速度所获得的系统性能加速比,受限于该部件在系统中的所占的重要性。
1 结构相关——某些指令组合在流水线中重叠执行时,发生资源冲突,则称该流水线有结构相关。
2 数据相关——当指令在流水线中重叠执行时,流水线有可能改变指令读/写操作的顺序,使得读/写操作顺序不同于它们非流水实现时的顺序,将导致数据相关。
3 定向——将计算结果从其产生的地方直接送到其他指令需要它的地方,或所有需要它的功能单元,避免暂停。
4 RAW——两条指令i,j,i在j前进入流水线,j执行要用到i的结果,但当其在流水线中重叠执行时,j可能在i写入其结果之前就先行对保存该结果的寄存器进行读操作,得到错误值。
★1 强制性失效——当第一次访问一个块时,该块不在Cache中,需要从下一级存储器中调入Cache,这就是强制性失效。
2 Victim Cache——位于Cache和存储器之间的又一级Cache,容量小,采用全相联策略。
用于存放由于失效而被丢弃(替换)的那些块。
每当失效发生时,在访问下一级存储器之前,先检查Victim Cache中是否含有所需块。
4 2:1Cache经验规则——大小为N的直接映象Cache的失效率约等于大小为N /2的两路组相联Cache的实效率。
1 互联网络:互联网络是将对称式的系统或分布式系统中的节点连接起来所构成的网络,这些节点可能是处理器,存储模块或者其他设备,他们通过互联网络进行信息交换2 互联网络特点:数数据传送速率高,延迟低,通信频带宽机群系统:机群是一种价格低廉,易于构建,可扩展性强的并行计算机系统,由多台同构或者异构的地理计算机通过高性能网络或者局域网互联在一起,协同完成特定的并行计算机任务。
第一章计算机体系结构得基本概念1计算机系统结构得经典定义程序员所瞧到得计算机属性,即概念性结构与功能特性。
2透明性在计算机技术中,把这种本来存在得事物或属性,但从某种角度瞧又好像不存在得概念称为透明性。
3系列机由同一厂家生产得具有相同系统结构、但具有不同组成与实现得一系列不同型号得计算机。
4常见得计算机系统结构分类法有两种:Flynn 分类法、冯氏分类法Flynn 分类法把计算机系统得结构分为4 类:单指令流单数据流(SISD)单指令流多数据流(SIMD)多指令流单数据流(MISD)多指令流多数据流(MIMD)5 改进后程序得总执行时间系统加速比为改进前与改进后总执行时间之比6CPI(Cycles Per Instruction):每条指令执行得平均时钟周期数CPI = 执行程序所需得时钟周期数/IC7存储程序原理得基本点:指令驱动8冯·诺依曼结构得主要特点1以运算器为中心。
2在存储器中,指令与数据同等对待。
指令与数据一样可以进行运算,即由指令组成得程序就是可以修改得。
3存储器就是按地址访问、按顺序线性编址得一维结构,每个单元得位数就是固定得。
4指令得执行就是顺序得5指令由操作码与地址码组成。
6指令与数据均以二进制编码表示,采用二进制运算。
9软件得可移植性一个软件可以不经修改或者只需少量修改就可以由一台计算机移植到另一台计算机上正确地运行。
差别只就是执行时间得不同。
我们称这两台计算机就是软件兼容得。
实现可移植性得常用方法:采用系列机、模拟与仿真、统一高级语言。
软件兼容:向上(下)兼容:按某档机器编制得程序,不加修改就能运行于比它高(低)档得机器。
向前(后)兼容:按某个时期投入市场得某种型号机器编制得程序,不加修改地就能运行于在它之前(后)投入市场得机器。
向后兼容就是系列机得根本特征。
兼容机:由不同公司厂家生产得具有相同系统结构得计算机。
10并行性:计算机系统在同一时刻或者同一时间间隔内进行多种运算或操作。
考研计算机体系结构知识点梳理计算机体系结构是计算机科学与技术中的重要分支,涵盖了计算机硬件和软件之间的接口设计、计算机系统的层次结构、指令集架构等内容。
考研中,对计算机体系结构的掌握是非常重要的,本文将对考研计算机体系结构的知识点进行梳理和总结。
一、计算机体系结构的基本概念计算机体系结构(Computer Architecture)是指计算机硬件与软件之间接口规格定义的集合,它包括计算机硬件的组成和工作原理,以及指令集架构和计算机系统的层次结构。
1.1 计算机硬件的组成计算机硬件由中央处理器(CPU)、存储器(Memory)、输入输出设备(I/O)等组成。
其中,中央处理器是计算机的核心部件,负责执行指令和进行数据处理。
1.2 计算机系统的层次结构计算机系统的层次结构包括硬件层次结构和软件层次结构。
硬件层次结构包括处理器、存储器、总线等组成部分;软件层次结构包括操作系统、编译系统、应用软件等。
1.3 指令集架构指令集架构(Instruction Set Architecture,ISA)定义了计算机系统的指令集合和指令的编码格式。
常见的指令集架构包括精简指令集(RISC)和复杂指令集(CISC)。
二、计算机的性能指标在计算机体系结构中,常用的性能指标有时钟周期、时钟频率、执行时间和吞吐量等。
2.1 时钟周期和时钟频率时钟周期是指计算机系统中最小的时间单位,是计算机进行一次简单操作所需要的时间。
时钟频率是指计算机系统每秒钟进行时钟周期的次数。
2.2 执行时间执行时间是指计算机完成一个程序的时间,它等于指令执行的总周期数乘以时钟周期。
执行时间是衡量计算机性能的重要指标,通常以秒为单位。
2.3 吞吐量吞吐量是指计算机系统在单位时间内完成的任务数量。
吞吐量大表示计算机系统的处理能力强,可以同时处理更多的任务。
三、指令的执行流程计算机处理器执行指令的流程包括指令获取、指令译码、指令执行和结果写回等步骤。
3.1 指令获取指令获取是指计算机从存储器中获取指令的过程。
计算机组成与体系结构知识点1.总线和输入输出系统:1.总线总线是构成计算机系统的互连机构,是多个系统功能部件之间进行数据传送的公共通路。
借助于总线连接,计算机在各系统功能部件之间实现地址、数据和控制信息的交换,并在争用资源的基础上进行工作。
2.总线特性总线特性包括:物理特性:描述总线的物理连接方式(电缆式、主板式、背板式);功能特性:描述总线中每一根线的功能;电气特性:定义每一根线上信号的传递方向、传递方式(单端方式或差分方式等),以及有效电平范围;时间特性:定义了总线上各信号的时序关系。
3.总线标准化为了使不同厂家生产的相同功能部件可以互换使用,就需要进行系统总线的标准化工作,总线的标准化有利于系统的可扩展性。
标准化工作一般由国际标准化组织负责进行定义或推荐,从总线特性上进行规范,标准化总线种类繁多,例:ISA总线、PCI总线、Futurebus+总线等。
4. 总线带宽总线带宽是衡量总线性能的重要指标,定义了总线本身所能达到的最高传输速率(但实际带宽会受到限制),单位:兆字节每秒(MB/s)。
5.接口接口是连接两个部件的逻辑电路,适配器就是一种典型的接口。
计算机接口的主要功能是:实现高速CPU与低速外设之间工作速度上的匹配和同步,并完成计算机与和外设之间的所有数据传送和控制。
接口的作用可归纳为:(1)实现数据缓冲,使主机与外设在工作速度上达到匹配;(2)实现数据格式的转换;(3)提供外设和接口的状态;(4)实现主机与外设之间的通讯联络控制。
6.设置接口的必要性由于I/O设备在结构和工作原理上与主机有很大的差异,主要为:(1)传送速度的匹配问题;(2)时序的配合问题;(3)信息表示格式上的一致性问题;(4)信息类型及信号电平匹配问题。
为了协调这些差异,需加入接口电路,接口在这里起一个转换器的作用。
7.接口的典型功能接口通常具有:控制、缓冲、状态、转换、整理、程序中断功能。
8.设备编址方法统一编址:将I/O设备与内存统一编址,占有同一个地址空间。
计算机对口高职知识点总结一、计算机体系结构与组成1. 计算机的基本结构计算机由中央处理器(CPU)、存储器(内存)、输入设备和输出设备组成。
中央处理器负责执行程序,存储器用于存储程序和数据,输入设备用于将数据输入到计算机,输出设备用于将计算结果显示或输出。
2. 冯·诺伊曼结构冯·诺伊曼结构是一种计算机体系结构,它将程序指令和数据存储在同一存储器中,并且通过地址寻址的方式来访问存储器中的数据和指令。
3. 存储器层次结构存储器层次结构包括寄存器、高速缓存、内存和磁盘等不同层次的存储器。
不同层次的存储器具有不同的访问速度和容量。
4. 输入输出系统输入输出系统主要包括输入输出设备、设备控制器和设备驱动程序。
设备控制器负责控制输入输出设备的操作,设备驱动程序负责与设备控制器进行通信。
二、计算机网络与通信技术1. 计算机网络基本概念计算机网络是将多台计算机通过通信链路连接起来,实现数据和资源共享的系统。
计算机网络包括局域网(LAN)、广域网(WAN)和互联网等不同类型。
2. 计算机网络体系结构计算机网络体系结构分为七层,分别是物理层、数据链路层、网络层、传输层、会话层、表示层和应用层。
不同层次的协议负责不同的功能。
3. 网络协议网络协议是计算机网络中用于通信和数据传输的规定。
常见的网络协议包括TCP/IP协议、UDP协议、HTTP协议、FTP协议等。
4. 网络安全网络安全是指保护计算机网络系统不受攻击、损坏和未授权访问的能力。
网络安全包括防火墙、入侵检测系统、加密技术和访问控制等手段。
三、操作系统1. 操作系统基本概念操作系统是计算机系统的核心软件,负责管理计算机的硬件资源、提供用户界面、执行程序和文件管理等功能。
2. 操作系统的功能操作系统主要有五大功能,分别是处理机管理、存储器管理、文件管理、设备管理和用户接口。
3. 操作系统类型常见的操作系统类型包括Windows、Linux、Unix和macOS等。
计算机系统结构自考笔记一、计算机系统结构概述。
1. 计算机系统的层次结构。
- 从底层到高层:硬件、操作系统、系统软件、应用软件。
- 各层次的功能及相互关系。
例如,硬件为软件提供运行平台,软件控制硬件资源的使用等。
2. 计算机系统结构的定义。
- 经典定义:程序员所看到的计算机属性,即概念性结构与功能特性。
- 包括指令系统、数据类型、寻址技术、I/O机制等方面的属性。
3. 计算机系统结构的分类。
- 按指令流和数据流的多倍性分类。
- 单指令流单数据流(SISD):传统的单处理器计算机。
- 单指令流多数据流(SIMD):如阵列处理机,适合进行数据并行处理。
- 多指令流单数据流(MISD):较少见的结构。
- 多指令流多数据流(MIMD):多处理器系统,如对称多处理机(SMP)。
- 按存储程序原理分类。
- 冯·诺依曼结构:程序和数据存储在同一存储器中,按地址访问。
- 哈佛结构:程序存储器和数据存储器分开,有各自独立的地址空间。
二、数据表示与指令系统。
1. 数据表示。
- 数据类型。
- 数值型数据(整数、浮点数):不同的表示格式,如定点数的原码、反码、补码表示;浮点数的IEEE 754标准表示。
- 非数值型数据(字符、字符串、逻辑数据等)。
- 数据的存储方式。
- 大端存储与小端存储:大端存储是高位字节存于低地址,小端存储是低位字节存于低地址。
2. 指令系统。
- 指令格式。
- 操作码:表示指令的操作类型,如加法、减法等操作。
- 地址码:指出操作数的地址或操作数本身。
有零地址、一地址、二地址、三地址等指令格式,每种格式的特点及适用场景。
- 指令类型。
- 数据传送指令:在寄存器、存储器等之间传送数据。
- 算术运算指令:加、减、乘、除等运算。
- 逻辑运算指令:与、或、非等逻辑操作。
- 控制转移指令:如无条件转移、条件转移、子程序调用与返回等,用于改变程序的执行顺序。
三、存储系统。
1. 存储器层次结构。
- 高速缓冲存储器(Cache) - 主存储器 - 辅助存储器的层次结构。
计算机科学基本知识点总结一、计算机体系结构1. 计算机组成计算机由硬件和软件两部分组成。
硬件包括中央处理器、内存、输入设备和输出设备等,而软件包括操作系统、应用程序等。
计算机组成的基本原理是冯·诺伊曼体系结构,它包括存储器、运算器、控制器和输入/输出设备。
2. 中央处理器中央处理器(CPU)是计算机的核心部件,它负责执行指令和进行数据处理。
CPU包括运算单元和控制单元,分别负责执行运算和控制指令的执行。
3. 存储器存储器用来存储数据和程序,包括随机存储器(RAM)和只读存储器(ROM)。
RAM是临时存储器,用来存储正在运行的程序和数据,而ROM是永久存储器,用来存储系统启动程序和固化程序。
4. 输入/输出设备输入设备用来接受外部数据,比如键盘、鼠标等;输出设备用来输出计算结果,比如显示器、打印机等。
5. 指令集架构指令集架构是CPU执行指令的规则和格式,包括指令的格式、寻址方式等。
常见的指令集架构有x86、ARM等。
二、计算机网络1. 网络基础计算机网络是连接在一起的计算机和设备之间的通信系统。
网络基础包括网络拓扑结构、传输介质、网络协议等内容。
2. OSI模型OSI模型是计算机网络体系结构标准的一种分层模型,它分为物理层、数据链路层、网络层、传输层、会话层、表示层和应用层七层。
每一层负责不同的功能,完成数据传输和通信。
3. TCP/IP协议TCP/IP协议是计算机网络通信协议的基础,它包括TCP协议和IP协议。
TCP协议实现了可靠的数据传输,IP协议实现了数据的路由和分发。
4. 网络安全网络安全是计算机网络中的重要问题,涉及网络攻击、数据加密、防火墙等内容。
网络安全的目标是保护网络中的数据和通信安全。
5. 互联网互联网是全球范围内的计算机网络,它包括万维网、电子邮件、文件传输协议等服务。
互联网的基础是TCP/IP协议和域名系统。
三、操作系统1. 操作系统基础操作系统是计算机系统中的管理软件,它负责管理计算机的资源、控制程序的执行和提供用户界面等功能。
计算机体系结构知识点汇总(总20页)-CAL-FENGHAI.-(YICAI)-Company One1-CAL-本页仅作为文档封面,使用请直接删除第一章计算机体系结构的基本概念1.计算机系统结构的经典定义程序员所看到的计算机属性,即概念性结构与功能特性。
(计算机组成:指计算机系统结构的逻辑实现。
计算机实现:计算机组成的物理实现)2.计算机系统的多级层次结构:1.虚拟机:应用语言机器->高级语言机器->汇编语言机器->操作系统机器2.物理机:传统机器语言机器->微程序机器3.透明性:在计算机技术中,把这种本来存在的事物或属性,但从某种角度看又好像不存在的概念称为透明性。
4.编译:先用转换程序把高一级机器上的程序转换为低一级机器上等效的程序5.解释:对于高一级机器上的程序中的每一条语句或指令,都转去执行低一级机器上的一段等效程序。
6.常见的计算机系统结构分类法有两种:Flynn分类法、冯氏分类法(按系统并行度)进行分类。
Flynn分类法把计算机系统的结构分为4类:单指令流单数据流(SISD)单指令流多数据流(SIMD)多指令流单数据流(MISD)多指令流多数据流(MIMD)IS指令流,DS数据流,CS(控制流),CU(控制部件),PU(处理部件),MM,SM(表示存储器)7.计算机设计的定量原理:1.大概率事件优先原理(分配更多资源,达到更高性能)2.Amdahl定理:加速比:(Fe为可改进比例(可改进部分的执行时间/总的执行时间),Se为部件加速比(改进前/改进后)3.程序的局部性原理:时间局部性:程序即将使用的信息很可能是目前使用的信息。
空间局部性:即将用到的信息可能与目前用到的信息在空间上相邻或相近。
4.CPU性能公式:1.时钟周期时间2.CPI:CPI = 执行程序所需的时钟周期数/IC3.IC(程序所执行的指令条数)8.并行性:计算机系统在同一时刻或者同一时间间隔内进行多种运算或操作。
同时性:两个或两个以上的事件在同一时刻发生。
并发性:两个或两个以上的事件在同一时间间隔内发生。
从处理数据的角度来看,并行性等级从低到高可分为:1.字串位串:每次只对一个字的一位进行处理。
最基本的串行处理方式,不存在并行性。
2.字串位并:同时对一个字的全部位进行处理,不同字之间是串行的。
开始出现并行性。
3.字并位串:同时对许多字的同一位(称为位片)进行处理。
具有较高的并行性。
4.全并行:同时对许多字的全部位或部分位进行处理。
最高一级的并行。
从执行程序的角度来看,并行性等级从低到高可分为:1.指令内部并行:单条指令中各微操作之间的并行。
2.指令级并行:并行执行两条或两条以上的指令。
3.线程级并行:并行执行两个或两个以上的线程。
通常是以一个进程内派生的多个线程为调度单位。
4.任务级或过程级并行:并行执行两个或两个以上的过程或任务(程序段)以子程序或进程为调度单元。
5.作业或程序级并行:并行执行两个或两个以上的作业或程序。
提高并行性的技术途径:1.时间重叠引入时间因素,让多个处理过程在时间上相互错开,轮流重叠地使用同一套硬件设备的各个部分,以加快硬件周转而赢得速度。
2.资源重复引入空间因素,以数量取胜。
通过重复设置硬件资源,大幅度地提高计算机系统的性能。
3.资源共享这是一种软件方法,它使多个任务按一定时间顺序轮流使用同一套硬件设备。
3.系列机由同一厂家生产的具有相同系统结构、但具有不同组成和实现的一系列不同型号的计算机。
7.存储程序原理的基本点:指令驱动8.冯·诺依曼结构的主要特点1.以运算器为中心。
2.在存储器中,指令和数据同等对待。
指令和数据一样可以进行运算,即由指令组成的程序是可以修改的。
3.存储器是按地址访问、按顺序线性编址的一维结构,每个单元的位数是固定的。
4.指令的执行是顺序的5.指令由操作码和地址码组成。
6.指令和数据均以二进制编码表示,采用二进制运算。
9.软件的可移植性一个软件可以不经修改或者只需少量修改就可以由一台计算机移植到另一台计算机上正确地运行。
差别只是执行时间的不同。
我们称这两台计算机是软件兼容的。
实现可移植性的常用方法:采用系列机、模拟与仿真、统一高级语言。
软件兼容:向上(下)兼容:按某档机器编制的程序,不加修改就能运行于比它高(低)档的机器。
向前(后)兼容:按某个时期投入市场的某种型号机器编制的程序,不加修改地就能运行于在它之前(后)投入市场的机器。
向后兼容是系列机的根本特征。
兼容机:由不同公司厂家生产的具有相同系统结构的计算机。
第二章计算机指令集结构1.CPU中用来存储操作数的存储单元的主要类型:堆栈、累加器、通用寄存器组2.通用寄存器型指令集结构进一步细分为3种类型寄存器-寄存器型(RR型)寄存器-存储器型(RM型)存储器-存储器型(MM型)3.指令集结构的设计主要考虑3个因素:速度、成本、灵活性对指令集的基本要求:完整性、规整性、高效率、兼容性4.设计RISC机器遵循的原则1.指令条数少而简单。
只选取使用频度很高的指令,在此基础上补充一些最有用的指令。
2.采用简单而又统一的指令格式,并减少寻址方式;指令字长都为32位或64位。
3.指令的执行在单个机器周期内完成。
(采用流水线机制)4.只有load和store指令才能访问存储器,其他指令的操作都是在寄存器之间进行。
(即采用load-store结构)5.大多数指令都采用硬连逻辑来实现。
6.强调优化编译器的作用,为高级语言程序生成优化的代码。
7.充分利用流水技术来提高性能。
5.指令由两部分组成:操作码、地址码指令集的3种编码格式:变长编码格式、定长编码格式、混合型编码格式第三章流水线技术1.流水线技术:把一个重复的过程分解为若干个子过程,每个子过程由专门的功能部件来实现。
把多个处理过程在时间上错开,依次通过各功能段,这样,每个子过程就可以与其他的子过程并行进行。
(流水线中的每个子过程及其功能部件称为流水线的级或段,段与段相互连接形成流水线。
流水线的段数称为流水线的深度。
)2.CPU流水线:1.IF(取指令):根据PC值从指令内存中读取一条指令,并且设置下一周期的PC值。
2.ID(解码):根据操作码从指令中提取操作数。
3.EX(执行):执行指令4.MEM(内存操作)5.WB(回写):修改寄存器3.通过时间:第一个任务从进入流水线到流出结果所需的时间。
排空时间:最后一个任务从进入流水线到流出结果所需的时间。
4.流水线分类:1.单功能流水线与多功能流水线单功能流水线:只能完成一种固定功能的流水线。
多功能流水线:流水线的各段可以进行不同的连接,以实现不同的功能。
2.静态流水线与动态流水线静态流水线:在同一时间内,多功能流水线中的各段只能按同一种功能的连接方式工作。
动态流水线:在同一时间内,多功能流水线中的各段可以按照不同的方式连接,同时执行多种功能。
3.线性流水线与非线性流水线线性流水线:流水线的各段串行连接,没有反馈回路。
数据通过流水线中的各段时,每一个段最多只流过一次。
非线性流水线:流水线中除了有串行的连接外,还有反馈回路。
5. 表示方法:1. 连接图:Figure 1 多功能流水线,可执行乘与加2. 时空图:Figure 2 静态: 加法完成后再进行乘法。
动态:不要求加法完成6. 性能指标:1. 吞吐率:在单位时间内流水线所完成的任务数量或输出结果的数量。
KnTP T2. 加速比:完成同样一批任务,不使用流水线所用的时间与使用流水线所用的时间之比。
s kT S T =3. 效率:流水线中的设备实际使用时间与整个运行时间的比值,即流水线设备的利用率。
nE k n 1=+- n 个任务实际占用的时空区/k 个段总的时空区4. 当流水线各段时间相等时,流水线的效率与吞吐率成正比。
nTP Tk =Tk=(k+n-1) △t E=TP △t 5. 流水线的效率是流水线的实际加速比S 与它的最大加速比k 的比值。
S E =k nk S=k n 1+-从时空图上看,效率就是n 个任务占用的时空面积和k 个段总的时空面 之比。
7. 流水线相关:1. 数据相关:数据相关具有传递性,反映了数据的流动关系如果两条指令使用相同的名,但是它们之间并没有数据流动,则称这两条指令存在名相关。
2. 名相关:反相关:如果指令j 写的名与指令i 读的名相同,则称指令i 和j 发生了反相关。
指令j 写的名=指令i 读的名输出相关:如果指令j 和指令i 写相同的名,则称指令i 和j 发生了输出相关。
指令j 写的名=指令i 写的名3. 控制相关:控制相关是指由分支指令引起的相关8. 流水线冲突:1. 结构冲突:因硬件资源满足不了指令重叠执行的要求而发生的冲突。
2. 数据冲突:当指令在流水线中重叠执行时,因需要用到前面指令的执行结果而发生的冲突。
3. 控制冲突:流水线遇到分支指令和其他会改变PC 值的指令所引起的冲突。
9.解决流水线冲突:1.数据冲突有:写后读冲突(RAW)在 i 写入之前,j 先去读。
j 读出的内容是错误的。
对应于数据相关写后写冲突(WAW)在 i 写入之前,j 先写。
最后写入的结果是 i 的。
错误!对应于输出相关读后写冲突(WAR)在 i 读之前,j 先写。
i 读出的内容是错误的!由反相关引起。
定向技术:在某条指令产生计算结果之前,其他指令并不真正立即需要该计算结果,如果能够将该计算结果从其产生的地方直接送到其他指令需要它的地方,那么就可以避免停顿。
流水线互锁机制,插入“暂停”。
作用:检测发现数据冲突,并使流水线停顿,直至冲突消失。
依靠编译器解决数据冲突让编译器重新组织指令顺序来消除冲突,这种技术称为指令调度或流水线调度。
任务:在延迟槽中放入有用的指令。
由编译器完成。
能否带来好处取决于编译器能否把有用的指令调度到延迟槽中。
三种调度方法:从前调度、从目标处调度、从失败处调度MIPS若检测到RAW冲突,流水线互锁机制必须在流水线中插入停顿,并使当前正处于IF段和ID段的指令不再前进。
分支指令的条件测试和分支目标地址计算在EX段完成,对PC的修改在MEM 段完成。
一条指令的执行过程分为以下5个周期:1.取指令周期(IF)IR ← Mem[PC] 。
PC值加4。
(假设每条指令占4个字节)2.指令译码/读寄存器周期(ID)译码。
用IR中的寄存器编号去访问通用寄存器组,读出所需的操作数。
3.执行/有效地址计算周期(EX)不同指令所进行的操作不同:存储器访问指令:ALU把所指定的寄存器的内容与偏移量相加,形成用于访存的有效地址。
寄存器-寄存器ALU指令:ALU按照操作码指定的操作对从通用寄存器组中读取的数据进行运算。
寄存器-立即数ALU指令:ALU按照操作码指定的操作对从通用寄存器组中读取的第一操作数和立即数进行运算。