计算机指令系统基础 - 流水线详解
文章目录
- 1 概述
- 2 流水线
- 2.1 图示对比
- 2.2 计算公式
- 2.3 技术指标
1 概述
#mermaid-svg-Y0cQLldtZ0uSXv4m {font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}#mermaid-svg-Y0cQLldtZ0uSXv4m .error-icon{fill:#552222;}#mermaid-svg-Y0cQLldtZ0uSXv4m .error-text{fill:#552222;stroke:#552222;}#mermaid-svg-Y0cQLldtZ0uSXv4m .edge-thickness-normal{stroke-width:2px;}#mermaid-svg-Y0cQLldtZ0uSXv4m .edge-thickness-thick{stroke-width:3.5px;}#mermaid-svg-Y0cQLldtZ0uSXv4m .edge-pattern-solid{stroke-dasharray:0;}#mermaid-svg-Y0cQLldtZ0uSXv4m .edge-pattern-dashed{stroke-dasharray:3;}#mermaid-svg-Y0cQLldtZ0uSXv4m .edge-pattern-dotted{stroke-dasharray:2;}#mermaid-svg-Y0cQLldtZ0uSXv4m .marker{fill:#333333;stroke:#333333;}#mermaid-svg-Y0cQLldtZ0uSXv4m .marker.cross{stroke:#333333;}#mermaid-svg-Y0cQLldtZ0uSXv4m svg{font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;}#mermaid-svg-Y0cQLldtZ0uSXv4m .label{font-family:"trebuchet ms",verdana,arial,sans-serif;color:#333;}#mermaid-svg-Y0cQLldtZ0uSXv4m .cluster-label text{fill:#333;}#mermaid-svg-Y0cQLldtZ0uSXv4m .cluster-label span{color:#333;}#mermaid-svg-Y0cQLldtZ0uSXv4m .label text,#mermaid-svg-Y0cQLldtZ0uSXv4m span{fill:#333;color:#333;}#mermaid-svg-Y0cQLldtZ0uSXv4m .node rect,#mermaid-svg-Y0cQLldtZ0uSXv4m .node circle,#mermaid-svg-Y0cQLldtZ0uSXv4m .node ellipse,#mermaid-svg-Y0cQLldtZ0uSXv4m .node polygon,#mermaid-svg-Y0cQLldtZ0uSXv4m .node path{fill:#ECECFF;stroke:#9370DB;stroke-width:1px;}#mermaid-svg-Y0cQLldtZ0uSXv4m .node .label{text-align:center;}#mermaid-svg-Y0cQLldtZ0uSXv4m .node.clickable{cursor:pointer;}#mermaid-svg-Y0cQLldtZ0uSXv4m .arrowheadPath{fill:#333333;}#mermaid-svg-Y0cQLldtZ0uSXv4m .edgePath .path{stroke:#333333;stroke-width:2.0px;}#mermaid-svg-Y0cQLldtZ0uSXv4m .flowchart-link{stroke:#333333;fill:none;}#mermaid-svg-Y0cQLldtZ0uSXv4m .edgeLabel{background-color:#e8e8e8;text-align:center;}#mermaid-svg-Y0cQLldtZ0uSXv4m .edgeLabel rect{opacity:0.5;background-color:#e8e8e8;fill:#e8e8e8;}#mermaid-svg-Y0cQLldtZ0uSXv4m .cluster rect{fill:#ffffde;stroke:#aaaa33;stroke-width:1px;}#mermaid-svg-Y0cQLldtZ0uSXv4m .cluster text{fill:#333;}#mermaid-svg-Y0cQLldtZ0uSXv4m .cluster span{color:#333;}#mermaid-svg-Y0cQLldtZ0uSXv4m div.mermaidTooltip{position:absolute;text-align:center;max-width:200px;padding:2px;font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:12px;background:hsl(80, 100%, 96.2745098039%);border:1px solid #aaaa33;border-radius:2px;pointer-events:none;z-index:100;}#mermaid-svg-Y0cQLldtZ0uSXv4m :root{--mermaid-font-family:"trebuchet ms",verdana,arial,sans-serif;}
2 流水线
2.1 图示对比
一条指令的执行步骤
指令使用流水线前后对比
假设每个步骤用时均为 1 S,则未使用流水线的总用时为:9 S,使用流水线的总用时为:5 S
2.2 计算公式
- 流水线执行时间:(t1+t2+t3)+(n−1)∗t1(t_1 + t_2 + t_3) + (n - 1) * t_1(t1+t2+t3)+(n−1)∗t1
- 其中 t1t_1t1 是 流水线周期,表示 执行时间最长的一段
例:若指令流水线把一条指令分为取值、分析和执行三部分,且三部分的时间分别是
取值2ns,分析2ns,执行1ns。那么,流水线的周期是?100条执行全部执行完毕
需要的时间是?分析:流水线周期 指执行时间最长的一段,此处为 2ns,100 条执行说明 n = 100答:流水线周期 2ns100 条执行总用时:(2+2+1) + (100-1)*2 = 203 ns
2.3 技术指标
- 吞吐率:Tp=nTkTp = \frac{n}{Tk}Tp=Tkn
- n:指令条数
- Tk:流水线时间
- 其中最大吞吐率(理论):Tp=1TTp = \frac{1}{T}Tp=T1 ,T:流水线周期
- 加速比:S=TsTkS = \frac{Ts}{Tk}S=TkTs
- Ts:未使用流水线时间
- Tk:流水线时间
- 效率:使用中的部件总部件\frac{使用中的部件}{总部件}总部件使用中的部件
还是以上述案例进行说明例:若指令流水线把一条指令分为取值、分析和执行三部分,且三部分的时间分别是
取值2ns,分析2ns,执行1ns,共 100 条指令。吞吐率:n = 100, Tk = (t1+t2+t3) + (n-1)*t1 = 203 nsTp = n / Tk = 100/203 条/ns理论吞吐率 = 1/T = 1/2 ns加速比:Ts = (2+2+1) * 100 = 500 nsS = Ts/Tk = 500/203效率:如下图
计算机指令系统基础 - 流水线详解相关推荐
- 计算机基础知识及其详解,计算机基础知识详解:计算机入门基础知识
能力训练网权威发布计算机基础知识详解,更多计算机基础知识详解相关信息请访问少儿综合素质训练网. [导语]以下是大范文网整理的计算机基础知识详解,欢迎阅读! 1.第一台计算机-ENIAC 大家只要知道第 ...
- Nmap扫描教程之基础扫描详解
Nmap扫描教程之基础扫描详解 Nmap扫描基础扫描 当用户对Nmap工具了解后,即可使用该工具实施扫描.通过上一章的介绍,用户可知Nmap工具可以分别对主机.端口.版本.操作系统等实施扫描.但是,在 ...
- 计算机图形学算法详解,计算机图形学裁剪算法详解
<计算机图形学裁剪算法详解>由会员分享,可在线阅读,更多相关<计算机图形学裁剪算法详解(10页珍藏版)>请在人人文库网上搜索. 1.裁剪算法详解在使用计算机处理图形信息时,计算 ...
- 网络管理之基础知识详解
网络管理之基础知识详解 目录 3.1 网络的特征 3.2 拓扑结构 4.1 OSI简介 4.2 数据传输过程 4.3 分层作用 4.4 PDU 5.1 单播 5.2 多播 5.3 广播 5.4 三种通 ...
- 小白入门!网络安全基础知识详解(附知识问答)
小白入门!网络安全基础知识详解(附知识问答) 一.引论 提到网络安全,一般人们将它看作是信息安全的一个分支,信息安全是更加广义的一个概念:防止对知识.事实.数据或能力非授权使用.误用.篡改或拒绝使用所 ...
- 职称计算机考试如何复习,全国职称计算机考试复习方法详解(一次性过关秘籍...
原标题:全国职称计算机考试复习方法详解(一次性过关秘籍 掌握合理的职称计算机考试复习方法可以使自己应考时能够得心应手.游刃有余. 熟悉考试形式 全国职称计算机考试是无纸化考试,考试全部在计算机上操作, ...
- python计算机二级操作题详解(一)
python计算机二级操作题详解(一) **1. 1.仅使用 Python 基本语法,即不使用任何模块,编写 Python 程序计算下列数学表达式的结果并输出,小数点后保留3位. 输入 该题目没有输入 ...
- [网络安全提高篇] 一一九.恶意软件动态分析经典沙箱Cape的安装和基础用法详解
终于忙完初稿,开心地写一篇博客. "网络安全提高班"新的100篇文章即将开启,包括Web渗透.内网渗透.靶场搭建.CVE复现.攻击溯源.实战及CTF总结,它将更加聚焦,更加深入,也 ...
- java基础(十三)-----详解内部类——Java高级开发必须懂的
java基础(十三)-----详解内部类--Java高级开发必须懂的 目录 为什么要使用内部类 内部类基础 静态内部类 成员内部类 成员内部类的对象创建 继承成员内部类 局部内部类 推荐博客 匿名内部 ...
最新文章
- cnc加工中心保养表_CNC数控加工中心,硬轨的好还是线轨的好?
- 【转】symbian操作系统 入门篇
- CSharpGL(1)从最简单的例子开始使用CSharpGL
- 可以ping通但远程桌面不行_【第1624期】HTML5:lt;agt;的ping属性之死亡ping与隐私追踪...
- Apache Flink 在实时金融数据湖的应用
- PJzhang:互联网是有国界
- SharePoint 2013 自定义扩展菜单(二)
- PHP-面向对象编程教程
- python 比较序列是否包含同样元素_Python学习之常见序列比较
- 无人驾驶——矩形框检测的学习笔记
- SAP手记之六:GUI安装后初始配置(中文语言包安装)
- AndroidStudio中获得的VersionCode一直为1和VersionName一直为1.0
- shutil模块拷贝与解压缩模块----day19
- 实变函数与计算机有关系吗,实变函数论文.doc
- 西安电子科技大学计算机学院数据结构真题,数据结构1800题(标准答案全)
- oracle负数金额大写,Oracle 小写金额转换为大写
- html与css笔记(旧)
- 系统结构考点之CRAY-1向量处理机
- 迅雷插件会导致IE8假死
- c语言读写tif文件,matlab使用imread读取tif文件错误
热门文章
- c++中用opengl的gl函数在三维空间中绘制圆形和画球体
- 前端开发想要月薪过万?给你指几条明路
- 如何将高版本服务器系统转为低版本,iOS高版本备份恢复到低版本系统的方法
- jenkins+python+git自动化测试框架_使用jenkins + python + selenium一步步搭建web自动化测试“框架”(1) - 各部件简介...
- 商城 mysql语句_简单商城的数据库建表sql
- FCTF公开赛 F1A4安全成立一周年庆典赛(4月5号)
- 为什么小领导讲话都很严厉,大领导都很和蔼?
- 哈萨克斯坦民众的大规模抗议活动
- Fiddler对安卓应用手机抓包图文教程
- 服务器定制化—服务器行业发展的新驱动力