<4D F736F F F696E74202D DB5DABEC5BDB22DCEA2B4A6C0EDC6F7B5C4D3B2BCFEBDE1B9B9A3A8D2BBA3A92E >

Similar documents
<4D F736F F D20B5DAC8FDCBC4D5C2D7F7D2B5B4F0B0B82E646F63>

<4D F736F F D20C7B0CBC4D5C2D7F7D2B5CCE22E646F6378>

Ps22Pdf


1 CPU

L1 computer system overview

第1章 概论

《计算机应用基础》学习材料(讲义)

第五章 重叠、流水和现代处理器技术

投影片 1

CPU CPU Intel CPU AMD CPU CPU Socket A/Socket 370 CPU Socket 478 CPU CPU CPU CPU CPU

计组复习提纲

例 如, 一 个 含 有 2000 个 记 录 的 文 件, 每 个 磁 盘 块 可 容 纳 250 个 记 录, 则 该 文 件 包 含 8 个 磁 盘 块 然 后 对 该 文 件 作 二 路 归 并 的 外 排 序, 每 次 往 内 存 读 入 两 个 磁 盘 块, 排 序 后 再 写 回 磁

多核心CPU成長日記.doc

Training

Microsoft PowerPoint - IC-HG-Review.ppt

Microsoft PowerPoint - 第01章 基础知识.pptx

水晶分析师

lecture21

<4D F736F F F696E74202D DB5DACAAEBEC5BDB22DB4E6B4A2C6F7BCB0C6E4BDD3BFDAA3A8D2BBA3A92E >

Intel® Core2™ i7 Processor

Microsoft Word - A doc

ebook105-12

DPJJX1.DOC

Microsoft Word - administrative-law-08.doc

相 关 知 识 1 计 算 机 工 作 原 理 1946 年 2 月, 世 界 上 第 一 台 电 子 计 算 机 ENIAC (Electronic Numerical Integrator And Computer, 电 子 数 字 积 分 计 算 机 ) 诞 生 于 美 国 宾 夕 法 尼 亚

第 十 一 期 2015 年 2 月 关 于 车 辆 购 置 税 征 收 管 理 有 关 问 题 的 公 告 ( 点 击 跳 转 至 全 文 ) 国 家 税 务 总 局 公 告 2015 年 第 4 号 关 于 电 池 涂 料 消 费 税 征 收 管 理 有 关 问 题 的 公 告 ( 点 击 跳

Microsoft PowerPoint - 01-第一讲-课程概述.pptx

PowerPoint Presentation

2. 下 列 理 解 和 分 析, 不 符 合 原 文 意 思 的 一 项 是 ( ) A. 水 手 在 伦 敦 讲 东 印 度 群 岛 的 所 见 所 闻, 匠 人 在 火 炉 边 讲 自 己 的 人 生 经 历, 他 们 讲 的 故 事 各 有 特 点, 但 同 属 于 传 统 故 事 模 式

untitled

穨series019-IA.PDF

Microsoft PowerPoint - chx09_org14_pipelining_1.ppt

L23

Microsoft PowerPoint - 第9讲-08.ppt [兼容模式]

2 微机原理与接口技术 ( 第二版 ) 图 1 1 第一台电子计算机 ENIAC 1944~1945 年间, 著名的美籍匈牙利数学家冯 诺依曼 (John Von Neumann)( 如图 1 2 (a) 所示 ) 应邀参加 ENIAC 计算机研制任务 在研制中, 他深刻认识到 ENIAC 不能存储

Ch03_嵌入式作業系統建置_01

第二章 8086体系结构与80X86CPU

一个开放源码的嵌入式仿真环境 ― SkyEye

计算机组成原理

<4D F736F F D20D5D0B1EACEC4BCFEBCB0C7E5BDE0B7FECEF1BACFCDAC28C2C9CAA6B0E631A3A92E646F6378>

<4D F736F F D20B160A5CEA4A4B0EABCF4BB79A5DCA8D22E646F63>

國立中山大學學位論文典藏.PDF

"#" " "" " " "# $ " %( )# #( %& ( " % " " # ) *# " # " $ " #(( " " "#+( % " % $ " & # " " $ $ " " $ % & " #$ % $ "& $ "" " ") # #( "( &( %+"(

89,,,,,,,,,,,,,,,,?,???,,,,,,,,,,,,,

!"#!" # $% & ($) *! +,-./ 0%)!1"%& 0%2!$!$$$ "$$$$ #$ % $$30!4$4 5,6 *& (+ 0!&" * + 7!!4 & ( )! & ( )! 80)09! 7&! #!1!1$" &&!!%!,-./ 0%)!1"%& 0%2 &1$

!!! #!!! $##%!!! $!!!! &!!!! (!! %!! )!!! *!!!!!!! #!!!!! $

!##$ %!!##$ & (!##$ %!!##$ &!##$!##(!##$! "

L7 Cache I

团 学 要 闻 我 校 召 开 共 青 团 五 届 九 次 全 委 ( 扩 大 ) 会 议 3 月 17 日, 我 校 共 青 团 五 届 九 次 全 委 ( 扩 大 ) 会 议 在 行 政 办 公 楼 五 楼 会 议 室 举 行, 校 团 委 委 员 各 院 ( 系 ) 团 委 书 记 校 学 生

Microsoft Word - 第2章 ARM体系结构.doc

lecture13

PowerPoint 簡報

<4D F736F F D20AC4FBDBDA4FBB67DA96CAABA2DA743A67EAFC5AAA95FA7B9BD5A5F2E646F63>

ex

<4D F736F F D20B5DAC1F9D5C2CFB0CCE2B4F0B0B8A3A8CDF8D5BEA3A92E646F63>

101

Untitiled

中艺华海修改1.7.indd

北 京 蓝 皮 书 公 共 服 务 相 比 而 言, 养 老 医 疗 失 业 等 保 险 都 早 已 经 由 国 务 院 颁 布 了 相 应 的 立 法 条 例, 在 全 国 范 围 内 形 成 了 统 一 的 制 度 党 的 十 八 届 四 中 全 会, 首 次 以 依 法 治 国 为 主 题,

2006年中央、国家机关公务员录用考试


untitled

Autodesk Product Design Suite Standard 系统统需求 典型用户户和工作流 Autodesk Product Design Suite Standard 版本为为负责创建非凡凡产品的设计师师和工程师提供供基本方案设计和和制图工具, 以获得令人惊叹叹的产品

Microsoft Word - 最新正文.doc

大学计算机信息技术教程·配套习题集(印刷稿/理论题<必做/选做题>)

( ), 16/ 32 Intel 8086, Intel, , Intel8086 Intel I/ O,, ( CIP ) /,,. :, ( ) ISBN T P36 CIP ( 2002) 0

Microsoft PowerPoint ren-build-CPU [兼容模式]

计算机组成与系统结构

-1

Microsoft Word - 2B802內文.doc

東區校園中法治教育種子師資教學研習營

閱 讀 素 材 V.S 分 組 方 式 的 差 異 化 教 學 工 具 表 班 級 :( ) 閱 讀 素 材 V.S 分 組 方 式 獨 立 閱 讀 夥 伴 閱 讀 ( 同 質 性 ) 夥 伴 閱 讀 ( 異 質 性 ) 友 善 陪 伴 虛 心 受 教 國 語 日 報 新 聞 生 活 文 藝 兒 童

Microsoft Word - 1HF12序.doc

Microsoft Word - 讀報看科普─人體篇_橫_.doc

鍟嗗搧瑙傚療鈥㈤挗鏉

席 远 杨 一 人 了, 正 当 她 开 枪 时 却 发 现 子 弹 没 了 该 死, 只 能 赤 手 空 拳 了 洛 水 云 与 席 远 杨 交 起 手 来, 洛 水 云 出 手 招 招 致 命 想 那 席 远 杨 也 不 是 泛 泛 之 辈, 很 快 掌 握 了 洛 水 云 出 招 路 数 看

Microsoft Word ZW-11111

MSAC-EX1

Microsoft PowerPoint - chx09_org16_pipelining_3.ppt

P4Dual-915GL_BIOS_CN.p65

大学计算机基础B.doc

第七章 中断

???p???M?????????[??

附 件 :2015 年 度 普 通 高 等 学 校 本 科 专 业 备 案 和 审 批 结 果 教 育 部 2016 年 2 月 16 日 抄 送 : 国 家 发 展 改 革 委 财 政 部 国 家 卫 生 计 生 委 国 家 中 医 药 管 理 局 部 内 发 送 : 有 关 部 领 导, 办 公

目 录

P4V88+_BIOS_CN.p65

Name__________________________________

BPR JIT

KV-cache 1 KV-cache Fig.1 WorkflowofKV-cache 2.2 Key-value Key ; Key Mem-cache (FIFO) Value Value Key Mem-cache ( Value 256B 100 MB 20%

<4D F736F F F696E74202D20B5DA35D5C2CEA2B4A6C0EDC6F7B9A4D7F7D4ADC0ED2E707074>

PowerPoint 演示文稿

答辩用模板

,,, PCB, AR M VxWorks DSP,,,,,,,,,,, (CIP) /,,.:,2005 ISBN TP36 CIP (2005) : ( 10 ) : : (010 ) : (010)


二零一五年施政報告 - 施政綱領 - 第三章 扶貧及為弱勢社群提供支援

育 部 分 則 由 陳 淑 貞 委 員 及 李 兆 環 委 員 共 同 執 行, 在 此 先 感 謝 各 位 委 員 及 學 者 專 家 之 參 與 二 目 前 評 論 報 告 初 稿 之 架 構 區 分 為 對 政 府 機 關 回 應 意 見 之 觀 察 優 點 及 待 改 進 事 項, 以 及

<4D F736F F D20BACBB0B2C8ABD3EBB7C5C9E4D0D4CEDBC8BEB7C0D6CEA1B0CAAEB6FECEE5A1B1B9E6BBAEBCB C4EAD4B6BEB0C4BFB1EA2E646F63>

附 : 初 中 组 一 等 奖 (31 个 ): 天 河 外 国 语 学 校 中 山 大 学 附 属 中 学 番 禺 区 大 石 富 丽 中 学 广 东 实 验 中 学 附 属 天 河 学 校 花 都 区 实 验 中 学 增 城 区 凤 凰 城 中 英 文 学 校 广 州 市 执 信 中 学 花 都

<4F4BBEFAA576A470BBA15FC160AAED E786C73>

Transcription:

第九讲 授课教师 : 陆俊林王箫音 2012 年春季学期

主要内容 一 微处理器的总体结构 二 高速缓存 三 流水线 四 超标量流水线 教材相关章节 : 微型计算机基本原理与应用 ( 第二版 ) 第 7 章微处理器的内部结构及外部功能特性 1

主要内容 一 微处理器的总体结构 二 高速缓存 三 流水线 四 超标量流水线 2

微处理器相关的若干关键设计 总线 : 提高微处理器 存储器和外设之间的传输效率 转移预测 : 提高微处理器流水线的工作效率 流水线和超标量 : 提高微处理器执行指令的并行程度 高速缓存 : 缓解微处理器与存储器之间的性能瓶颈 3

实例分析 :Pentium 微处理器 1993 年正式推出 采用 0.8 µm 工艺 主频 60~66 MHz Intel 推出的第一款超标量微处理器 4

储器I/O 接口Pentium 微处理器的结构示意图 Pentium 微处理器 控制总线 32 位地址总线 64 位数据总线存总线接口单元 (BIU) 指令 Cache(8KB) 预取缓存器指令译码器 执行单元 (EU) ALU (U 流水 ) ALU (V 流水 ) 寄存器组 32 位 32 位 BTB 控制单元 (CU) Microcode ROM 浮点处理单元 (FPU) 数据 Cache(8KB) 5

储器I/O 接口控制单元 CU(Control Unit) Pentium 微处理器 控制总线 32 位地址总线 64 位数据总线存总线接口单元 (BIU) 指令 Cache(8KB) 预取缓存器指令译码器 执行单元 (EU) ALU (U 流水 ) ALU (V 流水 ) 寄存器组 32 位 32 位 BTB 控制单元 (CU) Microcode ROM 浮点处理单元 (FPU) 数据 Cache(8KB) 6

控制单元的主要特点 基本功能 控制整个微处理器按照一定的时序过程一步一步地完成指令的操作 处理 异常 和 中断 有关的操作和控制 实现方式 大多数简单指令都是以 硬连线 逻辑来实现 复杂指令的执行是以 微程序 方式实现的, 微程序存放在只读存储器 Microcode ROM 中 7

执行指令的主要步骤 基本步骤 Pentium 实现 ARM9 实现 1 取指 (Fetch) 1 指令预取 1 取指 2 译码(Decode) 2 译码 3 地址生成 3 执行 (Execute) 4 执行 2 译码 3 执行 4 访存 4 回写 (Write-back)5 回写 5 写回 8

执行指令过程的示意图 (ADD AL, [30H]) 存储器代码段.. 30020H 10101010.. 10030H 00010010.. 数据段 系统总线 总线接口单元 30020H 10101010 取指 10101010 译码 mem[30h] op-add 地址生成 al-num 10030H 10030H 12H 执行 46H al-num 微处理器 46H 回写 al-num 寄存器 34H al-num 9

访问存储器对性能的影响 ADD AL, [30H] 取指译码地址生成执行回写 1 100 1 1 100 1 1 读存储器取指令,CPU 暂停 读存储器取操作数,CPU 暂停 ADD [30H], AL 1 100 1 1 100 1 1 读存储器取指令,CPU 暂停读存储器取操作数,CPU 暂停写存储器 ADD AL, BL 1 100 11111 读存储器取指令,CPU 暂停 存储器的延迟是影响性能的关键因素 10

主要内容 一 微处理器的总体结构 二 高速缓存 三 流水线 四 超标量流水线 11

处理器与存储器的性能 处理器与存储器的性能差距日益加大 处理器性能增长超过 10000 倍 存储器 (DRAM) 性能增长不到 10 倍 *Computer Architecture A Quantitative Approach, 4th Edition 12

存储层级示意图 高速缓存 Cache 位置 :CPU 和主存之间特点 : 与主存相比, 容量小, 速度快, 离 CPU 近作用 :1. 使 CPU 在较低速的存储器件条件下获得较高速的存储器访问时间 2. 提高系统的性能价格比 通用寄存器 Byte 量级 高速缓存 KB~MB 量级 主存 MB~GB 量级 本地二级存储 GB~TB 量级 更小 更快 单位字节成本更高 更大 更慢 单位字节成本更低 13

高速缓存 (Cache) 对性能的影响 取指译码地址生成执行回写 1 100 1 1 100 1 1 读存储器取指令,CPU 暂停读存储器取操作数,CPU 暂停写存储器 无 Cache 时的指令执行时间 有 Cache 时的指令执行时间 取指 执行 1311311 回写 CPU CPU Cache(SRAM) 译码 地址生成 Memory(DRAM) 14

早期的 Cache 设计 CPU 典型主频访存周期 DRAM 延迟 Cache 设计 8088 4.77MHz (210ns) 4 (840ns) 250ns 无需 Cache 80286 10MHz (100ns) 2 (200ns) 220ns 无需 Cache 80386 25MHz (40ns) 2 (80ns) 190ns 片外 Cache 80486 33MHz (30ns) 2 (60ns) 165ns 8KB 片内 Cache 15

80486 的高速缓存设计 80486 采用指令和数据共用的 Cache 缺陷 : 指令和数据的局部性相互影响 例如 : 一个数据密集的程序会很快占满 Cache, 几乎没有空间用于指令 地址生成 取指译码执行回写 Memory Cache CPU Core 16

Pentium 的高速缓存设计 Pentium 采用指令和数据分离的 Cache 8KB 指令 Cache(I-Cache): 只存储指令 8KB 数据 Cache(D-Cache): 只存储指令所需的数据? 哈佛结构冯 诺依曼结构 Memory I-Cache D-Cache CPU Core 17

冯 诺依曼结构 1945 年, 冯 诺依曼系统性地提出了 存储程序 的概念和二进制原理 人们把利用这种概念和原理设计的电子计算机统称为 冯 诺依曼结构计算机 第一台冯 诺依曼结构计算机是 1951 年正式运行的 EDVAC 18

冯 诺依曼结构计算机的特点 1 计算机由五大部件组成 2 指令和数据不加区别地存放在同一存储器 3 指令和数据均以二进制表示 4 指令由操作码和地址码组成 5 自动取指, 串行执行运算器状命令 6 态 程序和数据输入 输入设备 状态和请求 命令和应答 地址 数据 存储器 控制器 指令 输出设备 命令和应答 状态和请求 结果输出 19

非冯 诺依曼计算机 数据流计算机 数据令牌 5 2 人工智能计算机归约计算机 b:(5) c:(2) K1: + ( ) 3 K3/1 K2: - ( ) ( ) K3/2 K1:(+ b 3) K2:(- b c) K3: ( ) ( ) X/1 24 需求 X:( K1 K2) 示例 : 计算函数 X=(b+3) (b-c) K1: b+3, K2: b-c, K3: X=K1 K2 结果 X:(24) 20

哈佛结构 (Harvard Architecture) 起源 : 哈佛大学的 Harvard Mark I 计算机 IBM - Automatic Sequence Controlled Calculator (ASCC) Harvard Mark I 1944 21

哈佛结构计算机的特点 指令和数据存储在不同存储器, 可同时访问 指令存储器和数据存储器分别采用独立编址的地址空间 ( 例如, 存在两个不同的地址 0) 指令存储器和数据存储器使用不同的通道与 CPU 连接 微控制器 PIC 系列 ALU Instruction Memory Control Unit Data Memory I/O 22

改进的哈佛结构 Modified Harvard Architecture VS Pure Harvard Architecture 主要改进 : 指令存储器和数据存储器采用统一编址的地址空间保持不变 : 指令和数据存储在不同存储器, 可同时访问 带高速缓存的现代处理器大多采用 改进的哈佛结构, 包括 x86 ARM PowerPC 等 23

哈佛结构 冯 诺依曼结构 现代计算机 CPU CPU Memory Instruction Memory Data Memory 冯 诺依曼结构 冯 诺依曼结构 计算机 哈佛结构 处理器采用 改进的哈佛结构 Memory I-Cache D-Cache CPU Core 现代计算机的普遍结构 24

Pentium 的高速缓存设计 Pentium 微处理器 指令 Cache(8KB) BTB 总线接口单元 (BIU) 预取缓存器指令译码器 执行单元 (EU) ALU (U 流水 ) ALU (V 流水 ) 寄存器组 数据 Cache(8KB) 控制单元 (CU) Microcode ROM 浮点处理单元 (FPU) 25

多级 Cache 的设计示例 L1 Cache: 指令和数据分离 L2 Cache: 统一的指令和数据 L3 Cache: 统一的指令和数据 CPU Core CPU Core CPU Core CPU Core 32KB I-Cache 32KB I-Cache 32KB I-Cache 32KB I-Cache 32KB D-Cache 32KB D-Cache 32KB D-Cache 32KB D-Cache 256KB L2 Cache 256KB L2 Cache 256KB L2 Cache 256KB L2 Cache 8MB L3 Cache 26

主要内容 一 微处理器的总体结构 二 高速缓存 三 流水线 四 超标量流水线 27

非流水线的操作 假设每步花费 1 分钟, 则做一道菜需 4 分钟 若做三道菜, 则共需 12 分钟 1. 洗菜 4. 装盘 2. 切菜 3. 炒菜 28

流水线的操作 123456 假设每步花费 1 分钟做三道菜, 只需 6 分钟 洗菜切菜炒菜装盘 29

流水线 流水线 (pipeline) 方式 把一个重复的过程分解为若干子过程 每个子过程可以与其它子过程并行进行 微处理器采用流水线技术 提高处理部件的使用效率 加快执行程序的速度 30

微处理器的流水线设计 划分 把每条指令分为若干个顺序的操作, 如取指 译码 执行等 每个操作分别由不同的处理部件来完成, 如取指部件 译码部件 执行部件等 处理 对于每个处理部件, 每条指令的同类操作 ( 如取指 ) 就像流水一样连续被加工处理 这种指令重叠 处理部件连续工作的处理器, 称为流水线处理器 31

五级流水的工作过程 Pentium 的流水线的工作过程 时间单位 0 1 2 3 4 5 6 7 第一条指令 取指译码地址生成执行写结果 第二条指令 取指译码地址生成执行写结果 第三条指令 取指译码地址生成执行写结果 取指部件 译码部件 地址生成部件 执行部件 回写部件 32

五级流水线的效率分析 流水线中的各个处理部件可并行工作, 从而可使整个程序的执行时间缩短 如前图的五级流水方式执行,3 条指令用 7 个时间单位完成 如果以完全串行的方式执行, 则 3 条指令需 3 5=15 个时间单位才能完成 流水线并非缩短单条指令的执行时间 ( 甚至增加时间 ), 而是提高了指令的吞吐率 33

流水线的平衡性 洗菜 切菜 装盘各用 1 分钟, 炒菜用 2 分钟 不采用流水线时 : 做一盘菜用 5 分钟 ; 连续做时, 每 5 分钟出一盘 采用流水线时 : 做一盘菜用 8 分钟 ; 连续做时, 每 2 分钟出一盘 改进 : 将炒菜分成两步, 可达到每 1 分钟出一盘, 形成更平衡的流水线 洗菜切菜炒菜装盘 34

流水线的深度 超级流水线 技术 (Super Pipelining) 流水线的若干流水级进一步细分为更多的阶段 ( 流水小级 ) 每个 流水小级 可以与其他指令的不同 流水小级 并行执行, 进一步提高指令吞吐率 Pentium: 5 级取指译码地址生成执行回写 Pentium II: 11 级 IF1 IF2 IF3 ID1 ID2 RAT ROB DIS EX RET1 RET2 ARM9: 5 级取指译码执行访存写回 ARM11: 8 级取指 1 取指 2 译码发射执行 1 执行 2 执行 3 写回 35

主要内容 一 微处理器的总体结构 二 高速缓存 三 流水线 四 超标量流水线 36

超标量结构 超标量 (Superscalar) 结构 通常, 具有两条或两条以上能够并行工作的流水线结构称为超标量结构 ( 也常称为 超标量流水线 或直接称为 超标量 ) 使用超标量结构的处理器称为超标量处理器 Pentium 的超标量结构 两条流水线 : U 流水 和 V 流水 每条流水线都拥有自己的地址生成逻辑 ALU 及数据 Cache 接口 在一个时钟周期内, 可以同时发送两条指令 37

Pentium 的超标量流水线 Pentium 微处理器 流水线示意图 指令 Cache(8KB) BTB 取指译码地址生成地址生成执行执行回写回写 总线接口单元 (BIU) 预取缓存器指令译码器 执行单元 (EU) ALU (U 流水 ) ALU (V 流水 ) 寄存器组 控制单元 (CU) Microcode ROM 浮点处理单元 (FPU) 数据 Cache(8KB) 38

指令Cache 数超标量流水线运行示例 总线接口部件 据Cache 指令地址 ADD AL, [lmem1] SUB [lmem2], BL lmem2 地址生成 10101010 op-sub bl-num pmem2 pmem2 data2 执行 pmem2 sub-data pmem2 回写 sub-data bl-data bl-num 取指 译码 lmem1 op-add 地址生成 al-num pmem1 pmem1 执行 data1 add-data al-num add-data 寄存器 01010101 回写 al-num al-data al-num 39

超标量处理器实例 :Core i7(intel) 四核,4 发射 16 级流水 40

超标量处理器实例 : Cortex-A9(ARM) 双核,4 发射 8~11 级流水 41

超标量处理器实例 : UniCore-3(PKU) 四核,3 发射 8 级流水 42

作业 作业题 : 教材第 230 页第 1 3 4 题 43

下讲预告 下讲 主题 微处理器的硬件 结构 ( 二 ) 学习 资料 教材第 7 章 :7.1 44

谢谢! 45