在RISC之后,出现了一些提高指令级并行性的技术,使得计算机在每个时钟周期里可以解释多条指令,这就是超标量技术和超流水线技术。

常规的标量流水线,每个时钟周期平均执行的指令的条数小于等于1,即它的指令级并行度小于等于1。

超标量

超标量技术是通过重复设置多个功能部件,并让这些功能部件同时工作来提高指令的执行速度,实际上是以增加硬件资源为代价来换取处理器性能的。使用超标量技术的处理器在一个时钟周期内可发射多条指令。

典型的标量流水线处理机把一条执行的执行过程分解为取指令、译码、执行、访存、写会等5级流水线,每一级的执行时间为一个基本时钟周期。让一条指令从译码段流动到执行段的操作通常称为发射指令。

单发射是指处理机在一个时钟周期内只从存储器取出一条指令进入指令流水线处理。它的设计目标是每个时钟周期平均执行一条指令。但是实际上由于数据相关、控制相关以及资源冲突等原因,只能接近一条指令。

所以,超标量还有另外一种说法。在一个时钟周期内能够同时发射多条指令。为了能够支持同时发射多条指令,超标量处理器必须具有至少两条及以上能够同时工作的指令流水线。具有多条能同时工作的流水线是所谓超标量的前提。

超流水线

超流水线仍然是一种流水线技术,可以认为它是将标量流水线的子过程再进一步细分,使得子过程数大于或等于8的情况。也就是说只需要增加少量硬件,通过各部分硬件的充分重叠工作来提高处理器性能。采用超流水线技术的处理器在一个时钟周期内可以分时发射多条指令。

提高流水线处理效率的另一个方法是缩短机器周期。一般是将一个机器周期划分为若干个子周期,每个子周期均发射一条新的指令,亦即每个机器周期发射多条指令,从而提高计算机的性能。这种处理方式称为超流水线处理技术。

超流水线技术对芯片的工作速度要求比较高,同时硬件系统比较复杂,需要占用较大的芯片的面积,因此超流水线结构在嵌入式RISC处理器中很少采用。

超线程

超线程是Intel公司提出的一种提高CPU性能的技术,就是将一个物理CPU当作两个逻辑CPU使用,使CPU可以同时执行多重线程,从而发挥更大的效率。超线程技术利用特殊的硬件指令,把两个逻辑内核模拟成两个物理芯片,让单个处理器都能使用线程级并行计算,进而兼容多线程操作系统和应用软件,减少CPU的闲置时间,提高CPU的运行效率。

超线程技术可以使操作系统或者应用软件的多个线程,同时运行于一个超线程处理器上,其内部的两个逻辑处理器共享一组处理器执行单元,并行完成加、乘、加载等操作。这样做可以使得处理器的处理能力提高30%,因为在同一时间内,应用程序可以充分使用芯片的各个运算单元。

对于单线程芯片来说,虽然也可以每秒处理成千上万条指令,但是在某一时刻,其只能够对一条指令(单个线程)进行处理,结果必然使处理器内部的其他处理单元闲置。而超线程技术则可以使处理器在某一时刻,同步并行处理更多指令和数据。所以,超线程是一种可以将CPU内部暂时闲置的处理资源充分调动起来的技术。

超线程技术与双核心技术区别

开启了超线程技术的CPU和双核CPU在操作系统中都同样被识别为两个处理器,他们究竟是不是一样的?

可以简单理解:双核心技术为两个“物理”核,是一种“硬”的方式;超线程技术只是两个“逻辑“处理器,是一种”软“的方式。

支持超线程的CPU能同时执行两个线程,但超线程中的两个逻辑处理器并没有独立的执行单元、整数单元、寄存器甚至缓存等资源。他们在运行过程中仍需要共用执行单元、缓存和系统总线接口。在执行多线程时两个逻辑处理器均是交替工作,如果两个线程都同时需要某一个资源时,其中一个要暂停并要让出资源,要待那些资源闲置时才能继续。因此,前面说超线程技术仅可看作是对单个处理器运算资源的优化利用。

而双核心技术则是通过“硬”的物理核心实现多线程工作,每个核心拥有独立的指令集、执行单元,与超线程中所采用的模拟共享机制完全不一样。在操作系统看来,他是实实在在的双处理器,可以同时执行多项任务,能让处理器资源真正实现并行处理模式,其效率和性能提升要比超线程技术高的多,两者不可同日而语。

百度百科对超标量定义

超标量CPU架构是指在一颗处理器内核中实行了指令级并行的一类并行计算。这种技术能够在相同的CPU主频下实现更高的CPU吞吐率。

一看就明白的超标量超流水线超线程简介相关推荐

  1. KEIL5创建新工程模板 以及文件简介概述

    STM32中文参考手册 第三章 MDK5软件入门 1.介绍MDK5软件的使用 2.ST官方固件库介绍 3.介绍怎样建立一个基于STM32官方固件库的工程模板 固件库就是函数的集合,固件库的作用就是向下 ...

  2. 计算机组成原理指令系统的设计,计算机组成原理与系统设计

    计算机组成原理与系统设计 语音 编辑 锁定 讨论 上传视频 <计算机组成原理与系统设计>是机械工业出版社出版的一本书. 中文名 计算机组成原理与系统设计 作    者出版社 出版时间 20 ...

  3. [龙讯增刊1号]龙芯哪里来

    LSLSLSLSLSLSLSLSLSLSLSLSLSLSLSLS                                                === 龙讯 ===           ...

  4. 计算机组成与系统结构名词解释,北京邮电大学 计算机系统结构(体系结构) 期末复习 术语解释...

    北邮 体系结构 期末复习 简答题(名词解释) 1. 计算机系统结构:机器语言程序员所看到的传统机器级所具有的属性,它包括概念性结构和功能特性两个方面. 2. 计算机组成:指的是计算机系统结构的逻辑实现 ...

  5. 解释术语 计算机系统结构,北京邮电大学 计算机系统结构(体系结构) 期末复习 术语解释.doc...

    文档介绍: 计算机系统结构:机器语言程序员所看到的传统机器级所具有的属性,它包括概念性结构和功能特性两个方面.计算机组成:指的是计算机系统结构的逻辑实现,包括物理机器级内的数据流和控制流的组成以及逻辑 ...

  6. 【408】计算机组成原理第一轮强化笔记

    计算机组成原理第一轮强化笔记 根据天勤高分笔记所做 1 计算机系统概述 计算机的发展历程 冯·诺依曼体系结构 第一代计算机(1946-1957年) 电子管时代,机器语言 第二代计算机(1958-196 ...

  7. 【计算机组成原理】计算机系统结构笔记:合集

    200803本篇是郑纬民<计算机系统结构>的读书笔记,欢迎各位路过指正!今天把九章全部更新完毕啦. 0. 分章节目录 [计算机组成原理]计算机系统结构笔记(1):基本概念 [计算机组成原理 ...

  8. 龙芯软件开发(6)--CPU龙芯2E

    在开发软件中,对于CPU的了解就是最重要的了.无论什么指令都需要CPU来执行.现在就来看看龙芯2E的具有什么特征了. 龙芯2号增强型处理器(简称"龙芯2E")是中国科学院计算技术研 ...

  9. (计算机组成原理)RISC与CISC的区别

    RISC全称Reduced Instruction Set Compute,精简指令集计算机. CISC全称Complex Instruction Set Computers,复杂指令集计算机. CI ...

  10. 【体系结构】山东大学计算机体系结构知识点清单

    涵盖所有考点,复习绝对高效,点赞+留邮箱获取pdf版本 计算机体系结构复习提纲 第一章 基本概念 1. 计算机系统的层次结构 语言实现的两种基本技术: 翻译:先把 N+1 级程序全部转换成 N 级程序 ...

最新文章

  1. 00后的AI开发者进阶之道:从入门到鏖战MIT编程大赛 | 人物志
  2. 04.ARP:地址解析协议
  3. python批量清除一个列表中的某个内容,filter和lambda结合使用的方法
  4. Tarjan算法 (强联通分量 割点 割边)
  5. CSS 设计指南(第3版) 初读笔记
  6. java Spring Boot中使用Swagger2构建API文档
  7. varnish 高性能方向代理服务器
  8. 大数据学习笔记:初探大数据世界
  9. TCP/IP详解读书笔记:链路层
  10. FPGA内部资源总结
  11. ubuntu系统使用光盘/ISO镜像作为apt-get更新源
  12. 机器人技术创新与实践旧版本大纲
  13. 某连锁酒店集团实行积分奖励计划,会员每次入住集团旗下酒店均可以获得一定积分,积分由欢迎积分加消费积分构成。其中欢迎积分跟酒店等级有关,具体标准如表2-1所示;消费积分跟每次入住消费金额有关,具体标准为
  14. 经此一疫,互联网公司格局发生了哪些变化?
  15. 跟着Nature学作图:最强“ 颠覆性 ”技术,您确定不学学?助力发Nature顶刊!...
  16. C语言基础(十三)系统错误信息
  17. kubeadm构建k8s之Prometheus-operated监控(0.18.1)
  18. Unity地面拼接实现无限路循环
  19. IBM Personal System/2 —— 25年的PC历史
  20. 上海铁路局电话订票和网上订票流程/指南

热门文章

  1. PDF转HTML常用方法分享
  2. [na]思科产品选型pdf
  3. zbbz的lisp_学习LISP语言的体会
  4. table模板标签,批量多选失效的问题,tr td结构多选框失效相关问题
  5. Android 触摸事件转换为鼠标事件
  6. php跨域有那些方法,PHP跨域访问的3种方法
  7. matlab的小波分析,matlab小波分析步骤是什么
  8. 安卓从入门到进阶推荐学习方法与书籍整理(pdf)
  9. DWM1000DISCOVERY开发板简介
  10. thinkphp6阿里云短信新版sdk对接(tp5对接新版阿里云短信sdk)