第一章 CPU构架概述
来源:互联网 发布:h5小游戏网站源码 编辑:程序博客网 时间:2024/05/20 22:38
一、计算机系统结构概述
1、处理器分类:1)低端的标量处理器。适合于嵌入式,比如ARM
2)高端的超标量处理器。一般用于桌面系统及复杂运算方面,比如IBM的Power4和Intel 的IA64
2、高性能计算机经历了向量机和并行处理机两个阶段
3、单个CPU的并行技术
1)在软件上
2)硬件上
4、多线程处理器
1)指令交错多线程IMT。又称为“细粒度多线程”,每个指令都会发生切换
2)块交错多线程BMT。又称为“粗粒度多线程”
3)同时多线程SMT。允许在一个时钟周期内发射多个线程的多条指令
1.1.1计算机系统分类
单指令单数据流SISD、单指令多数据SIMD、多指令单数据流MISD、多指令流多数据流MIMD
SIMD又分为:向量计算机和处理器阵列计算机
1)向量计算机
a、是一种解决计算问题的高性能计算机,一般用于气象及军事应用等需要大量数值计算的方面
b、结构
2)处理器阵列计算机
a、处理器阵列通过重复设置 大量相同的处理单元,将他们按一定方式互连成阵列
b、分类:
共享内存SM、虚拟共享内存、分布式内存
1.1.2、微处理器概述
1)处理器的分类
CISC:指令长度可变
RISC:指令长度不变
1.1.3、处理器的性能度量
计算公式:
1.1.4、RISC CPU的结构
CPU主要由核心和外围组成
1)核心
运算器:算术逻辑运算单元ALU、浮点运算单元FPU、通用寄存器和专用寄存器
控制器:指令控制、时序控制、总线控制和中断控制
2)外围
二、标量流水线技术
CPU的整体逻辑设计方法:单周期指令、多周期指令和流水线指令
1.2.1 流水线分类
1、按功能划分
单功能流水线和多功能流水线
2、按反馈回路功能划分
线性流水线和非线性流水线
,,,
3、线性流水线的性能分析
1)吞吐率
2)加速比。
3)效率
1.2.3 流水线相关
1、数据和控制之间依赖关系
RAW:(Read After Write)指令i将数据写入到寄存器后,指令j才能从这个寄存器中读取数据
WAR:(Write After Read)指令i将数据从寄存器中读出后,指令j才能从这个寄存器中写数据
WAW:(Write After Write)
2、控制相关
流水线相关
结构相关-------资源冲突
结构相关的解决方法:向前定向路径反馈和在一个周期中间写入寄存器堆
控制相关的解决方法:分支预测技术和延时转移技术
1.2.4 OR1200 CPU流水线
一个典型的指令周期:取指、指令译码、取操作数、执行和存储
OR1200 CPU的每个流水线:
1)IF取指级2)ID指令译码级3)EX执行级4)MA存储器访问级5)WB回写级
三、超标量构架
特点:1)一个时钟内可以同时发射多条指令2)乱序执行
超标量流水线是使用了多个执行单元的并行流水线
1)时间并行2)空间并行
1.3.1 超标量流水线
1.3.2 分支预测技术
1、分支指令对流水线的影响
取指停顿
2、分支预测技术
1)主要是为了减少取指停顿或利用停顿周期处理一些操作
2)使用BTB(分支目标缓冲)
3)分支预测的方法
1)静态预测
2)动态预测:预测算法可以使用有限状态机描述
1)单条分支指令两位历史信息位的状态机预测
2)两级自适应分支预测
3)分支目标缓存
4)
1.3.3 指令的动态调度
处理器的ALU指令主要是寄存器-寄存器型的指令,ALU使用寄存器时,寄存器间存在着数据真相关、假相关、反相关和输出相关等问题,为了解决这些问题,提出了寄存器数据流技术--指令的动态调度
1)指令的动态调度策略:按序发射乱序完成和乱序发射乱序完成
2)指令动态调度主要包括:
记分板技术、Tomasulo机制、寄存器重命名和旁路等机制
1.3.4存储器数据流技术
1、存储器:Cache系统和虚存系统
2、使用的技术:存储器的访问机制、Cache实现、TLB实现以及Cache与TLB的交互
3、存储器访问机制:地址索引存储器、全相联存储器和组相联存储器
4、乱序执行load指令的技术有:
1)载入旁路,载入定向:
2)多端口非阻塞Cache
3)预取数据Cache
四、超长指令构架
VLIW、CISC和RISC构架区别
五、处理器介绍
1、超标量处理器
Core微构架
2、标量处理器
ARM
- 第一章 CPU构架概述
- (转载)第一章 MIPS CPU 体系结构概述
- intel CPU构架
- Android系统构架概述
- 第一章 概述
- 第一章概述
- 第一章----概述
- 第一章 概述
- 第一章 概述
- 第一章:概述
- 第一章:概述
- 第一章 概述
- 第一章 概述
- 第一章 概述
- 第一章概述
- 第一章 概述
- 第一章 概述
- 第一章 概述
- windows系统下安装ubuntu的方法
- redis安装步骤
- 统计思维:程序员数学之概率统计(第2版):第1章 探索性数据分析
- 蓝桥杯历届-猜年龄
- Android工程目录gen文件夹—笔记
- 第一章 CPU构架概述
- 设计模式
- 安卓自定义属性,Android studio无法提示,只提示3个
- PAT-1023 组个最小数
- ZOJ-3710-Friends【10th浙江省赛】【暴力】
- ZooKeeper架构设计及其应用要点
- 【bzoj3876】[Ahoi2014]支线剧情 有上下界的费用流
- 算法导论第三版第六章思考题
- 算法代码实现之希尔排序,Golang(Go语言)实现