收藏 分销(赏)

计算机体系结构总结.doc

上传人:a199****6536 文档编号:9512664 上传时间:2025-03-29 格式:DOC 页数:9 大小:79.54KB 下载积分:6 金币
下载 相关 举报
计算机体系结构总结.doc_第1页
第1页 / 共9页
计算机体系结构总结.doc_第2页
第2页 / 共9页


点击查看更多>>
资源描述
计算机体系结构详尽描述 一.计算机系统结构基础概念 1.计算机体系结构概念 1964年G.M.Amdahl在介绍IBM360系统时提出: 计算机系统结构是从程序员所看到计算机属性, 即程序员编写出能在机器上正确运行程序所必需了解概念性结构和功效特征。 系统结构是对计算机系统中各级界面划分、 定义及其上下功效分配。 系统结构设计关键研究界面属性透明性取舍。 计算机系统结构(体系结构)指是传统机器级系统结构。 计算机系统结构研究是软、 硬件之间功效分配以及对传统机器级界面确定。 2.计算机系统多级层次结构 二.计算机指令集结构设计 依据五个原因对计算机指令集结构进行分类: 在CPU中操作数存放方法; 指令中显式表示操作数个数; 操作数寻址方法; 指令集所提供操作类型; 操作数类型和大小 。其中1是最关键区分 依据CPU内部存放单元类型, 可将指令集结构分为 堆栈型指令集结构、 累加器型指令集结构和通用寄存器型指令集结构。优缺点?堆栈型(其CPU中存放操作数关键单元是堆栈): 是一个表示计算简单模型; 指令短小。不能访问堆栈, 从而极难生成有效代码; 同时, 因为堆栈是瓶颈, 所以极难被高效地实现。累加器型(其CPU中存放操作数关键单元是累加器): 降低了机器内部状态; 指令短小。因为累加器是唯一暂存器, 这种机器存放器通信开销最大。寄存器型(CPU中存放操作数关键单元是通用寄存器): 易于生成高效目标代码。全部操作数均需命名, 且要显式表示, 所以指令比较长 现代大多数机器均采取通用寄存器型指令集结构, 原因: 一是寄存器和CPU内部其她存放单元一样, 要比存放器快; 其次是对编译器而言, 能够愈加轻易、 有效地分配和使用寄存器。 寄存器-寄存器型(RR)优点: 简单, 指令字长固定, 是一个简单代码生成模型, 多种指令实施时钟周期数相近。缺点: 和ALU指令中含存放器操作数指令集结构相比, 指令条数多, 所以其目标代码量较大。 寄存器-存放器(RM)优点: 能够直接对存放器操作数进行访问, 轻易对指令进行编码, 且其目标代码量较小。缺点: 指令中操作数类型不一样。在一条指令中同时对一个寄存器操作数和存放器操作数进行编码, 将限制指令所能够表示寄存器个数。因为指令操作数能够存放在不一样类型存放器单元, 所以每条指令实施时钟周期数也不尽相同 存放器-存放器型(MM)优点: 是一个最紧密编码方法, 无需“浪费”寄存器保留变量。缺点: 指令字长多个多样。每条指令实施时钟周期数也大不一样, 对存放器频繁访问将造成存放器访问瓶颈问题 CISC即复杂指令集计算机。它是增强指令功效, 把越来越多功效交由硬件来实施, 而且指令数量也是越来越多。RISC精简指令集计算机。它是尽可能把指令集简化, 不仅指令条数少, 而且指令功效也比较简单。 三.流水线技术 流水线技术: 将一个反复时序过程分解成为若干个子过程, 而每一个子过程都可有效地在其专用功效段上与其她子过程同时实施。 时空图: 用来描述流水线工作, 横坐标表示时间, 纵坐标代表流水线各段。 流水技术有哪些特点? 1)流水过程由多个相联络子过程组成, 每个过程称为流水线“级”或“段”。2)每个子过程由专用功效段实现。3)各个功效段所需时间应尽可能相等。4)流水线需要有“经过时间”, 在此以后流水过程才进入稳定工作状态, 每一个时钟周期(拍)流出一个结果。5)流水技术适合于大量反复时序过程, 只有在输入端能连续地提供任务, 流水线效率才能充足发挥。 多倍性: 在系统受限部件上, 同时处于同一实施阶段指令或数据最大数目。 流水线分类 1根据流水线所完成功效(1)单功效流水线: 只能完成一个固定功效流水线(2)多功效流水线: 流水线各段能够进行不一样连接, 从而使流水线在不一样时间, 或者在同一时间完成不一样功效。 2根据同一时间内各段之间连接方法(1)静态流水线: 在同一时间内, 流水线各段只能按同一个功效连接方法工作。2)动态流水线: 在同一时间内, 当一些段正在实现某种运算时, 另部分段却在实现另一个运算。 3根据流水等级 (1)部件级流水线(运算操作流水线): 把处理机算术逻辑部件分段, 方便为多种数据类型进行流水操作。(2)处理机级流水线(指令流水线): 把解释指令过程根据流水方法处理。(3)处理机间流水线(宏流水线): 由两个以上处理机串行地对同一数据流进行处理, 每个处理机完成一项任务。 4按数据表示 (1)标量流水处理机: 处理机不含有向量数据表示, 仅对标量数据进行流水处理。(2)向量流水处理机: 处理机含有向量数据表示, 并经过向量指令对向量各元素进行处理。 5根据流水线中是否有反馈回路 (1)线性流水线: 流水线各段串行连接, 没有反馈回路。(2)非线性流水线: 流水线中除有串行连接通路外, 还有反馈回路。 流水线寄存器作用: 把数据和控制信息从一个流水段传送到下一个流水段。 消除流水线瓶颈段:细分瓶颈段; 反复设置瓶颈段。 价流水线性能指标(1) 吞吐率: 指在单位时间内流水线所完成任务数或输出结果数量。(2) 流水线加速比: 指m段流水线速度与等功效非流水线速度之比。(3) 效率: 指流水线设备利用率。 流水线相关三种类型: 相关是指两条指令之间存在某种依靠关系。确定程序中指令之间存在什么样相关, 对于充足发挥流水线效率相关键意义。 1. 结构相关: 当指令在重合实施过程中, 硬件资源满足不了指令重合实施要求, 发生资源冲突时将产生“结构相关”; 2. 数据相关: 当一条指令需要用到前面指令实施结果, 而这些指令均在流水线中重合实施时, 就可能引发“数据相关”; 3. 控制相关: 当流水线碰到分支指令和其她会改变PC值指令时就会发生“控制相关”。 消除相关基础方法: 1让流水线暂停实施一些指令, 而继续实施其她部分指令。2当一条指令被暂停时, 在该暂停指令以后发射全部指令都要被暂停, 而在该暂停指令之前发射指令则可继续实施, 在暂停期间, 流水线不会取新指令。 输入/输出方法: 程序控制(程序等候、 程序中止)、 DMA、 通道、 I/O处理机 数据相关: 对于两条指令i(在前)和j(在后), 假如下述条件之一成立, 则称指令j与指令i数据相关: (1)指令j使用指令i产生结果; (2)指令j与指令k数据相关, 而指令k又与指令i数据相关。 名相关 假如两条指令使用相同名, 不过它们之间并没有数据流动, 则称这两条指令存在名相关。指令j与指令i之间名相关有以下两种: (1)反相关。假如指令j写名与指令i读名相同, 则称指令i和j发生了反相关。反相关指令之间实施次序是必需严格遵守, 以确保i读值是正确。(2)输出相关。假如指令j和指令i写相同名, 则称指令i和j发生了输出相关。输出相关指令实施次序是不能颠倒, 以确保最终结果是指令j写进去。 处理方法: 换名技术, 经过改变指令中操作数名来消除名相关。 控制相关: 由分支指令引发相关。它需要依据分支指令实施结果来确定后续指令是否实施。 流水线冲突 指对于具体流水线来说, 因为相关存在, 使得指令流中下一条指令不能在指定时钟周期实施。(1)结构冲突: 因硬件资源满足不了指令重合实施要求而发生冲突。处理方法: 流水化功效单元; 资源反复; 暂停流水线。(2)数据冲突: 当指令在流水线中重合实施时, 因需要用到前面指令实施结果而发生冲突。依据指令对寄存器读写次序, 可将数据冲突分为: 写后读冲突; 写后写冲突; 读后写冲突。(3)控制冲突: 流水线碰到分支指令和其她会改变PC值指令所引发冲突。 四种处理数据冲突方法: 1)定向技术: 在某条指令产生一个结果之前, 其她指令并不真正需要该计算结果, 假如将该计结果从其产生地方直接送到其她指令需要它地方, 就能够避免暂停; 2)暂停技术: 设置一个“流水线互锁”功效部件, 一旦流水线互锁检测到数据相关, 流水线暂停实施发生数据相关指令后续全部指令, 直到该数据相关处理为止。; 3)采取编译器调度。当流水线中出现冲突时, 编译器经过重新排列代码次序来消除流水线中暂停, 这种技术称为流水线调度4)重新组织代码次序。 流水线设计者有时会许可结构冲突存在, 原因: 一是为了降低硬件开销, 二是为了降低功效单元延迟。 向量处理机: 含有向量数据表示和对应向量指令流水线处理机。 向量处理方法 (1) 水平处理方法: 向量计算是按行方法从左到右横向地进行。若向量长度为N, 则水平处理方法相当于实施N次循环。若使用流水线, 在每次循环中可能出现数据相关和功效转换, 不适合对向量进行流水处理。 (2) 垂直处理方法: 适合对向量进行流水处理, 向量运算指令源/目向量都放在存放器内, 使得流水线运算部件输入、 输出端直接与存放器相联, 组成MM型(存放器-存放器)运算流水线。 (3) 分组处理方法: 适合流水处理。可设长度为n向量寄存器, 使每组向量运算源/目向量都在向量寄存器中, 流水线运算部件输入、 输出端与向量寄存器相联, 组成RR型运算流水线。 提升向量处理机性能方法: 多个功效部件; 链接技术; 分段开采技术; 多处理机系统 向量链接技术: 当两条向量指令出现“写后读”相关时, 若它们不存在功效部件冲突和向量寄存器(源或目)冲突, 就有可能把它们所用功效部件头尾相接, 形成一个链接流水线, 进行流水处理。 链接技术应用条件: 1. 无功效部件冲突2. 无向量寄存器使用冲突 3. 只有在前一条指令第1个结果元素送入结果向量机寄存器那个时钟周期才能够进行链接。4. 当一条向量指令两个源操作数分别是两条先行指令结果寄存器时, 要求先行指令产生运算结果时间必需相等。5. 要求进行链接实施向量指令向量长度必需相等。 四. 指令级并行 指令级并行: 当指令之间不存在相关时, 它们能够在流水线中重合起来并行实施。这种指令序列中存在潜在并行性称为指令级并行。 静态调度技术: 依靠编译器对代码进行静态调度, 以降低相关和冲突。它不是在程序实施过程中、 而是在编译期间进行代码调度和优化。静态调度经过把相关指令拉开距离来降低可能产生停顿。 动态调度方法: 在流水线中出现相关时, 经过硬件重新安排指令实施次序, 来调整相关指令实际实施时关系, 降低处理器空转。优点。(1) 能够处理部分编译时情况不明相关(比如包含存放器访问相关), 并简化了编译器。(2)能够使原来是面向某一流水线优化编译代码在其她流水线(动态调度)上也能高效地实施。当然, 动态调度这些优点是以硬件复杂性显著增加为代价。 为了支持乱序实施, 将5段流水线译码(ID)段细分为两个段(1)流出: 指令译码, 并检验是否存在结构冲突。假如不存在结构冲突, 就将指令流出。(2)读操作数: 等候数据冲突消失(假如有话), 然后读操作数。 Tomasulo算法关键思想① 统计和检测指令相关, 操作数一旦就绪就立刻实施, 把发生RAW冲突可能性降低到最少; ② 经过寄存器换名来消除WAR冲突和WAW冲突。 Tomasulo算法基础思想是: 只要操作数有效, 就将其取到保留站, 避免指令流出时才到寄存器中取数据, 这就使得立即实施指令从对应保留站中取得操作数, 而不是从寄存器中。指令实施结果也是直接送到等候数据其她保留站中去。所以, 对于连续寄存器写, 只有最终一个才真正更新寄存器中内容。一条指令流出时, 存放操作数寄存器名被换成为对应于该寄存器保留站名称(编号)。指令流出逻辑和保留站相结合实现寄存器换名, 从而完全消除了数据写后写和先读后写相关这类名相关。 保留站: 设置在运算部件入口, 每个保留站中保留一条已经流出并等候到本功效部件实施指令(相关信息), 包含操作码、 操作数以及用于检测和处理冲突信息。 动态分支估计技术 在程序运行时, 依据分支指令过去表现来估计其未来行为。假如分支行为发生了改变, 估计结果也跟着改变。动态分支估计技术目有两个: 估计分支是否成功和立刻找到分支目标地址(或指令), 从而避免因控制相关而造成流水线停顿。 需要处理两个关键问题(1)怎样统计分支历史信息; (2) 怎样依据这些信息来估计分支去向(甚至取到指令)。 前瞻实施基础思想。 对分支指令结果进行猜测, 并假设这个猜测总是对, 然后按这个猜测结果继续取、 流出和实施后续指令。只是实施指令结果不是写回到寄存器或存放器, 而是放到一个称为ROB缓冲器中。等到对应指令得到“确定”(即确实是应该实施)后, 才将结果写入寄存器或存放器。 五. 存放层次 单级存放器关键矛盾: 速度越快, 每位价格就越高。容量越大, 每位价格就越低。容量越大, 速度越慢。采取多级存放层次方法来处理。 从用户角度来看, 存放器三个关键指标是: 容量、 速度和价格。 评价存放层次关键参数:存放层次平均每位价格、 命中率或失效率、 平均访问时间。 “Cache-主存”层次: 在CPU和主存之间增加一级速度快、 但容量较小而每位价格较贵高速缓冲存放器。借助于辅助软硬件, 它与主存组成一个有机整体, 以填补主存速度不足。 “主存-辅存”层次: 目是为了填补主存容量不足。它是在主存外面增加一个容量更大、 每位价格更廉价、 但速度更慢存放器。它们依靠辅助软硬件作用, 组成一个整体。 关键区分是什么? 目: 为了填补主存速度不足; 为了填补主存容量不足。存放管理实现: 全部由专用硬件实现; 关键由软件实现。经典块(页)大小: 几十个字节; 几百到几千个字节。CPU对第二级访问方法: 可直接访问; 均经过第一级。不命中时CPU是否切换: 不切换切换到其她进程 存放层次中应处理四个问题: 映像规则: 当把一个块调入高一层存放器时, 能够放到哪些位置上。查找算法: 当所要访问块在高一层存放器中时, 怎样找到该块。替换算法: 当发生失效时, 应替换哪一块。写策略: 当进行写访问时, 应进行哪些操作。 地址映像方法, 优缺点 (1) 全相联映像。实现查找机制复杂, 代价高, 速度慢。Cache空间利用率较高, 块冲突概率较低, 所以Cache失效率也低。 (2) 直接映像。实现查找机制简单, 速度快。Cache空间利用率较低, 块冲突概率较高, 所以Cache失效率也高。 (3)组相联映像。组相联是直接映像和全相联一个折中。 组相联Cache比相同容量直接映像Cache失效率低。由此是否能够得出结论: 采取组相联Cache一定能带来性能上提升?为何? 不一定。因为组相联命中率提升是以增加命中时间为代价, 组相联需要增加多路选择开关。 Cache中, 实现并行查找方法: 1用相联存放器实现。2用单体多字存放器和比较器来实现。 替换算法 (1)法: 简单、 易于用硬件实现, 但这种方法没有考虑Cache块过去被使用情况, 反应不了程序局部性, 所以其失效率比LRU高。(2)优异先出法: 轻易实现。它即使利用了同一组中各块进入Cache次序这一“历史”信息, 但还是不能正确地反应程序局部性。(3)最近最少使使用方法LRU: 失效率最低。不过LRU比较复杂, 硬件实现比较困难。 有效构建方法: 在构建系统过程中消除故障隐患, 这么建立起来系统就不会出现故障。 写策略 (1) 写直达法: 易于实现, 而且下一级存放器中数据总是最新。 (2) 写回法: 速度快, 写操作能以Cache存放器速度进行。而且对于同一单元多个写最终只需一次写回下一级存放器, 有些“写”只抵达Cache, 不抵达主存, 所以所使用存放器频带较低。 六. 输入/输出系统 输入/输出系统简称I/O系统, 它包含I/O设备以及I/O设备与处理机连接。 总线按用途分类, 总线可分为 (1)CPU存放器总线。CPU存放器总线比较短, 通常含有较高速度, 而且要和存放器系统速度匹配来优化带宽。(2)I/O总线。I/O总线要连接很多不一样类型、 不一样带宽设备, 所以比较长, 而且应遵照总线标准。 按设备定时方法分类, 总线可分为 (1) 同时总线。全部设备经过统一总线系统时钟进行同时。成本低, 因为它不需要设备之间相互确定时序逻辑。缺点: 总线操作必需以相同速度运行。(2) 异步总线。设备之间没有统一系统时钟, 设备自己内部定时。设备之间信息传送用总线发送器和接收器控制。轻易适应更广泛设备类型, 扩充总线时不用担心时钟时序和时钟同时问题。但在传输时, 异步总线需要额外同时开销。 输入输出系统概述 经历了3个阶段对应着3种方法: 程序控制I/O(程序查询、 中止驱动)、 直接存放器访问(DMA)、 I/O处理机方法(通道、 外围处理机PPU)。 输入输出设备分外存和传输设备两大类。 总线设计 总线分类: 半双工、 全双工; 芯片级、 板级(局部总线)、 系统级; 专用总线、 非专用总线。 依据信息传送方法不一样通道分为三种类型: (1) 字节多路通道: 一个简单共享通道, 关键为多台低速或中速外围设备服务。传送过程: 通道每连接一个外围设备, 只传送一个字节, 然后又与另一台设备连接, 并传送一个字节。 (2) 数组多路通道: 适于为高速设备服务。传送过程: 每连接一台高速设备, 通常传送一个数据块, 传送完成后, 又与另一台高速设备连接, 再传送一个数据块。 (3) 选择通道: 为多台高速外围设备服务。传送过程: 在选择通道中, 通道每连接一个外围设备, 就把这个设备n个字节全部传送完成, 然后再与另一台设备相连接。 通道处理机: 能够实施有限I/O指令, 而且能够被多台外围设备共享小型DMA专用处理机。 通道完成一次数据传输关键过程? (1) 在用户程序中使用访管指令进入管理程序, 由CPU经过管理程序组织一个通道程序, 并开启通道。 (2) 通道处理机实施CPU为它组织通道程序, 完成指定数据I/O工作。 (3) 通道程序结束后向CPU发中止请求。CPU响应这个中止请求后, 第二次进入操作系统, 调用管理程序对I/O中止请求进行处理。 通道关键功效8 (1) 接收CPU发来I/O指令, 依据指令要求选择一台指定外围设备与通道相连接。(2) 实施CPU为通道组织通道程序, 从主存中取出通道指令, 对通道指令进行译码, 并依据需要向被选中设备控制器发出多种操作命令。 (3) 给出外围设备相关地址, 即进行读/写操作数据所在位置。 (4) 给出主存缓冲区首地址, 这个缓冲区用来临时存放从外围设备上输入数据, 或者临时存放将要输出到外围设备中去数据。(5) 控制外围设备与主存缓冲区之间数据交换个数, 对交换数据个数进行计数, 并判定数据传送工作是否结束。 (6) 指定传送工作结束时要进行操作。 (7) 检验外围设备工作状态是正常或故障。依据需要将设备状态信息送往主存指定单元保留。 (8) 在数据传输过程中完成必需格式变换。
展开阅读全文

开通  VIP会员、SVIP会员  优惠大
下载10份以上建议开通VIP会员
下载20份以上建议开通SVIP会员


开通VIP      成为共赢上传

当前位置:首页 > 包罗万象 > 大杂烩

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        抽奖活动

©2010-2025 宁波自信网络信息技术有限公司  版权所有

客服电话:4009-655-100  投诉/维权电话:18658249818

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :微信公众号    抖音    微博    LOFTER 

客服