0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

H7的特点 什么是超标量流水线

麦辣鸡腿堡 来源:轩哥谈芯 作者:义轩 2023-11-29 16:52 次阅读

一、H7 的特点

首先看看 M7 内核的 GD32H7都具备哪些不一样的功能,以下只是我个人关注的点:

主频高,GD32H7系列MCU采用基于Armv7E-M架构,主频高达600MHz。

6 级流水线,并且是超标量的,并且支持分支预测。

内置了高级DSP硬件加速器和双精度浮点单元(FPU),以及硬件三角函数加速器(TMU)和滤波算法加速器(FAC)。

内置了TFT LCD液晶驱动器和图形处理加速器IPA (Image Processing Accelerator),支持2D图像叠加、旋转、缩放及多种颜色格式转换等功能。

主频越来越高自然不必说了,后面两个内置硬件过两天在学习。

今儿先学习下 M7 内核的功劳,也就是这里的分支预测和超标量流水线。

二、什么是超标量流水线

超标量流水线(Superscalar Pipeline)是一种计算机处理器架构,它可以同时执行多条指令,从而提高指令执行的效率。这种架构允许处理器在一个时钟周期内执行多个指令,而不是像传统的标量流水线那样每个时钟周期执行一条指令。

先看传统的流水线架构:

图片

在传统的标量流水线架构中,我们如果想让 CPU 执行一条机器指令,要经历:取址(IF)→ 译码(ID)→ 执行(EX)→ 访问内存(MEM)→写回内存(WB)等五个步骤,那么在系统时钟的驱动下,如果串行处理,那么执行一条指令至少要 5 个时钟周期。

CPU 在执行每一个单一步骤的时候,并不一定会用到所有的硬件,也就是说五个步骤其实存在一定的独立性,那么我们可以增加一些硬件让 CPU在一个时钟触发下做两件以上的事情。

图片

这么一来,我们就可以让多条指令的执行看起来并行执行,其实就是为每条指令的执行提前做一些准备工作,从结果看,我们几乎可以做到每个时钟周期执行一条指令了。

以上就是标量的流水线,就是让 指令执行进行一定的硬件分工,然后在一个时钟触发下,不同的硬件可以同时做一些不同的事情,从而保证每个时钟周期内都有一个产出—— 执行完一条完整的指令。

OK,如果我想给让CPU 提高点人效,让它一个机器时钟内完成多个指令的执行该怎么办呢?

加人呗,一个岗位上放俩人,甚至更多

当然人多了,容易乱套,这里是因为每个指令本质是上串行的,前后有依赖,所以不能一味的增加人力,结果肯定是流水线上打起来。

图片

上图中,我们在每一个流水阶段增加了一个人力,整个系统看起来瞬间效率提高了一倍。

以上就是超标量流水线的描述,下面我们看看,如何在 程序设计上利用这个超标量的流水线。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 处理器
    +关注

    关注

    68

    文章

    19281

    浏览量

    229781
  • mcu
    mcu
    +关注

    关注

    146

    文章

    17143

    浏览量

    351130
  • 内核
    +关注

    关注

    3

    文章

    1372

    浏览量

    40288
  • 加速器
    +关注

    关注

    2

    文章

    799

    浏览量

    37863
收藏 人收藏

    评论

    相关推荐

    什么是超标量处理器的流水线超标量处理器的特点有哪些?

    如果每周期可取出多条指令(eg: 超过一条)送到流水线中执行,并使用硬件来对指令进行调度(eg: 靠硬件自身来决定哪些指令可以并行执行)的处理器,就可称为超标量处理器;
    的头像 发表于 03-04 14:03 3080次阅读

    FPGA中的流水线设计

    8bit 流水线加法器的小例子 module add8(a, b, c);input[7:0] a;input[7:0] b;output [8:0] c; assign c[8:0
    发表于 10-26 14:38

    现代RISC中的流水线技术

    取得了成功。流水线技术是当前指令集处理器设计中广泛采用的技术。在这里我们将重点放在(标量流水线处理器的设计。流水线处理器设计中的许多方法和技术,例如用于检测和化解相关的
    发表于 03-01 17:52

    什么是流水线技术

    什么是流水线技术 流水线技术
    发表于 02-04 10:21 3927次阅读

    什么是超标量技术/FADD?

    什么是超标量技术/FADD? 超标量(superscalar)是指在CPU中有一条以上的流水线,并且每时钟周期内可以完成一条以上的指令,
    发表于 02-04 10:45 1590次阅读

    流水线中的相关培训教程[1]

    流水线中的相关培训教程[1]  学习目标     理解流水线中相关的分类及定义;
    发表于 04-13 15:56 1050次阅读

    电镀流水线的PLC控制

    电镀流水线的PLC控制电镀流水线的PLC控制电镀流水线的PLC控制
    发表于 02-17 17:13 36次下载

    FPGA之为什么要进行流水线的设计

    流水线又称为装配线,一种工业上的生产方式,指每一个生产单位只专注处理某一个片段的工作。以提高工作效率及产量;按照流水线的输送方式大体可以分为:皮带流水装配线、板链线、倍速链、插件线、网带线、悬挂线及滚筒
    的头像 发表于 11-28 07:04 3612次阅读

    各种流水线特点及常见流水线设计方式

    按照流水线的输送方式大体可以分为:皮带流水装配线、板链线、倍速链、插件线、网带线、悬挂线及滚筒流水线这七类流水线
    的头像 发表于 07-05 11:12 7348次阅读
    各种<b class='flag-5'>流水线</b><b class='flag-5'>特点</b>及常见<b class='flag-5'>流水线</b>设计方式

    电焊机自动组装流水线特点

    ,为什么它的发展会这么好呢,前初的皮带线,可以说是 受消费者们欢迎的,为什么组装流水线会超过皮带线呢,它具有什么特别的特点呢?
    发表于 08-05 18:51 1172次阅读

    如何选择合适的LED生产流水线输送方式

    LED生产流水线输送形式分为平面直线传输流水线、各种角度平面转弯传输流水线、斜面上传流水线、斜面下传流水线这四种输送方式,企业也是可以根据L
    发表于 08-06 11:53 1028次阅读

    嵌入式_流水线

    流水线一、定义流水线是指在程序执行时多条指令重叠进行操作的一种准并行处理实现技术。各种部件同时处理是针对不同指令而言的,他们可同时为多条指令的不同部分进行工作。• 把一个重复的过程分解为若干个子过程
    发表于 10-20 20:51 6次下载
    嵌入式_<b class='flag-5'>流水线</b>

    CPU流水线的问题

    1989 年推出的 i486 处理器引入了五级流水线。这时,在 CPU 中不再仅运行一条指令,每一级流水线在同一时刻都运行着不同的指令。这个设计使得 i486 比同频率的 386 处理器性能提升了不止一倍。
    的头像 发表于 09-22 10:04 1997次阅读

    什么是流水线 Jenkins的流水线详解

    jenkins 有 2 种流水线分为声明式流水线与脚本化流水线,脚本化流水线是 jenkins 旧版本使用的流水线脚本,新版本 Jenkin
    发表于 05-17 16:57 1084次阅读

    首款Cortex-M7内核超高性能MCU性能揭秘

    GD32H7系列MCU采用基于Armv7E-M架构的600MHz Arm Cortex-M7高性能内核,凭借支持分支预测的6级超标量流水线架构,以及支持高带宽的AXI和AHB总线接口,
    发表于 05-25 11:36 1119次阅读
    首款Cortex-M<b class='flag-5'>7</b>内核超高性能MCU性能揭秘