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

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

3天内不再提示

嵌入式性能面临的挑战及下一代嵌入式处理器架构

454398 来源:EDN 作者:Michael Thompson 2021-03-24 11:54 次阅读

作者:Michael Thompson, 新思科技高级产品营销经理

由于工艺节点从云端拓展到互联网边缘与端点,高端嵌入式应用也随之发生转变。性能需求迅速演进,并改变了处理器架构及其在设计中的实现方式。这是增加多核处理器的应用以提供更高性能的背后原因。目前大多数高端处理器都支持双核和四核配置。有些处理器最多支持8个CPU核心,但即便如此无法满足存储、汽车、网络5G等新兴应用的性能需求。下一代嵌入式应用需要对大型CPU集群和专用硬件加速器提供可扩展的支持,以实现所需的性能。大型多核处理器需要新的架构方法来提供更高的性能,并且不会给嵌入式设计者带来其他实现和时序收敛问题。

嵌入式性能面临的挑战

毋庸讳言,先进工艺节点已无法像从前那样提供更高时钟频率和更低功耗。各代工艺节点的逻辑速度在持续增长,但内存访问时间却没有变化(图1)。处理器中的限速路径几乎总是经过内存。由于半导体物理学的真正局限性,这类情况在未来工艺节点上也不太可能发生转变。

图1:嵌入式存储器性能差距

同时,嵌入式应用的最高时钟频率已达到1GHz–2GHz范围(图2)。诚然,有些时钟频率高于2GHz,但这是例外。对于多数应用而言,这是无法实现的。功耗和面积都是有限的,这两者都会随着时钟频率迅速增加。大多数嵌入式设计的时钟频率都低于1GHz。未来这一趋势不会改变。就多数嵌入式设计而言,通过增加时钟频率来提高性能是不现实的。

问题在于针对嵌入式应用的性能需求在不断增多。这是由竞争、新特性的添加和应用空间需求的变化所造成的。例如,更大容量和更高访问速度的需求使得SSD驱动器的尺寸迅速增大。此外,计算机储存和AI功能也被添加至嵌入式应用中,以延长驱动器寿命和提升数据访问性能。因此上述综合因素都对SSD控制器以及用于实现新功能的处理器提出了更高的性能需求。

提高处理器性能

许多方法已经用于提高处理器性能。多年来,增加流水线级数一直被用于解决内存限速问题。例如,DesignWare® ARC® HS处理器具有10级流水线,两个周期的内存访问,能够在16FFC工艺中提供1.8GHz的时钟频率(最差情况下)。嵌入式设计的时钟频率是有限制的,因此在处理器的流水线上增加更多的处理级别并不会带来什么改善。今后这一情况可能会改变,但现如今10级流水线是嵌入式设计的最佳选择。

就性能增益与增加的面积和功耗对比而言,超标量实现是一个很好的折衷方案。从单一发射架构转变至双发射架构能够在面积和功耗有限增加的情况下将RISC性能提升40%。对于嵌入式处理器来说,这是一个很好的折衷方案。采用三发射或四发射架构将会进一步增加CPU面积与功耗,且性能提升幅度较小。以任何代价提高性能从来都不是嵌入式处理器的目标。

添加乱序(OoO)执行可以提高嵌入式应用的性能,且不会增加时钟频率。通常,支持完整乱序的CPU会给嵌入式应用带来适得其反的效果。而采用有限乱序的方法可以在不增加处理器面积的情况下获得最佳性能提升。有限乱序通常用于高端嵌入式处理器。

缓存的目的是为了让内存更加靠近处理器,从而提高性能。缓存支持处理器的单周期数据存取。将处理器所需信息存放于缓存中能够提升性能。经常使用的代码和数据保存在一级缓存中。使用较少的代码和数据保存在访问速度较慢的二级缓存或外部内存中,并在需要时进行读取。对于多核处理器来说,保持一级数据缓存之间的一致性也可以提高性能。一级缓存和一致性在嵌入式处理器中很常见,而二级缓存(和三级缓存)仅用于高端应用。

在嵌入式设计中采用多个处理器的趋势正不断演进。几年前,一个典型的片上系统(SoC)只包含一到两个处理器。如今,即便是低端设计,处理器数量也超过5个,而且还在不断增加。为了支撑这一转变,中高端嵌入式应用的处理器提供了多核实现方式。支持两个、四个和八个CPU核心的处理器已经推出。程序员可以使用Linux或其他操作系统在CPU内核之间顺畅地进行操作,同时平衡执行以提高性能。

硬件加速器正越来越多地应用于嵌入式设计。它们以最小的功耗和面积提供高性能,同时减轻处理器的负担。硬件加速器的主要缺点是它们的不可编程性。添加加速器使之与处理器并行工作可以缓解这种情况。然而,现有处理器只能有限度地支持硬件加速器,有的甚至无法提供支持。有些处理器(如ARC处理器)支持自定义指令,允许用户向处理器流水线添加硬件。尽管自定义指令很诱人,但硬件加速器也带来了其他好处,与处理器并行使用时,可以显著提高性能。

嵌入式应用的处理器性能提升存在许多挑战。处理器已经支持更深层次的流水线技术,超标量实现和乱序功能能够有所帮助,但也只能到此为止。缓存技术已经非常丰富,一致性也是如此,因此不太可能取得进一步的进展。在设计中采用更多的CPU核心数与硬件加速器是嵌入式设计人员正采取的更高性能实现途径。

下一代嵌入式处理器架构

下一代处理器将支持大型多核实现和硬件加速(图3)。处理器供应商要做的不仅仅是向现有处理器添加接口。支持4个或8个CPU内核的处理器已经达到了最大频率限制,并且在时序收敛方面可能会出现重大问题。增加更多的内核只会让这一问题变得更糟糕。下一代处理器必须从内部处理器互连的完全重构开始,改进时序收敛,解决速度限制,并增加内部带宽。外部接口的带宽也必须增加,以支持数据进出处理器。

图3:下一代嵌入式处理器架构

服务质量(QoS)技术在片上网络(NOC)中得到了广泛的应用,但在多核处理器中的应用却很有限。这种情况将在下一代处理器中发生改变,让程序员能够管理每个CPU核心和加速器的内部带宽,从而最大限度地提高性能。这取决于应用,虽然并非每个设计都需要服务质量技术,但在其他设计中,它对于确保可预测性能至关重要。

大型处理器集群的优势

大型多核处理器比小型多核处理器具有优势。采用一个具有12个CPU核心的处理器,而不是使用具有4个CPU核心的三个处理器集群,将减少CPU核心之间的延迟,并支持对内核的直接窥探。大型处理器集群的另一个优势是能提供更优越的软件扩展性。具有12个CPU核心的处理器为程序员提供了更大的软件分区灵活性,用于处理任务的核心数量可以根据需要的性能动态进行分配。在多个处理器集群中,由于缺乏CPU内核之间的统一访问,因此很难获得这种级别的软件性能控制。

大型多核处理器也将从与硬件加速器的紧密耦合中获得优势。将硬件加速器接口移动到处理器内部,而不是通过SoC总线连接它们,将减少SoC总线上的延迟和流量,同时提高数据共享和系统性能。采用共享用户寄存器也可以提高加速器上可编程控制的效率。

ARC HS5x/HS6x

新思科技公司(Synopsys)下一代DesignWare ARC HS5x和ARC HS6x处理器IP利用前面描述的许多方法来提高处理器性能。这些处理器具有高速10级、双发射流水线,在功耗和面积有限的情况下提高了功能单元的利用率。ARC 64位 HS6x处理器具有完整的64位流水线和寄存器文件,支持64位虚拟地址空间和52位物理地址空间,可以直接寻址当前和未来的大内存,并支持128位加载和存储,以实现高效的数据移动。

图4:DesignWare ARC HS5x/HS6x处理器IP框图

32位ARC HS5x和64位HS6x处理器的多核版本都包含一个先进的高带宽内部处理器互连结构,其设计旨在通过异步时钟和高达800 GB/s的内部聚合带宽来简化时序收敛。新款ARC HS处理器的多核版本包括一个创新的互连结构,可连接多达12个核心,支持多达16个硬件加速器的接口。为了进一步简化时序收敛,每个核位于自己的功率域中,并且与其他核具有异步时钟关系。跟所有ARC处理器一样,HS5x和HS6x处理器都高度可配置,并采用ARC Processor Extension(APEX)技术,支持自定义指令,可满足每个嵌入式应用的独特性能、功耗和面积要求。

为了加速软件开发,ARC HS5x和HS6x处理器由ARC MetaWare开发工具套件提供支持,可生成高效代码。处理器的开源软件支持包括Zephyr实时操作系统、优化的Linux内核、GNU编译器集合(GCC)、GNU调试器(GDB)和相关的GNU编程实用程序(二进制工具)。

总结

由于嵌入式应用的性能需求将日益增多,嵌入式应用中所采用的处理器也必须随之提高性能。鉴于面积与功耗的有限性,以及处理器性能简易提升已取得进展,这将面临挑战。先进工艺节点不再像以前那样带来性能提升,嵌入式处理器的速度也受到了限制。超标量和乱序功能在高端处理器中很常见,但64位(尽管必要)提供的性能提升有限。新一代多核处理器需要支持8个以上的CPU核心数,并需要采用硬件加速器内部互连结构。新处理器如DesignWare ARC HS5x和HS6x处理器IP将提供可扩展的性能和功能,并让设计师能够解决其嵌入式应用的功耗和面积需求。新款处理器采用先进的架构与高速内部互连结构,不仅满足了当今高端嵌入式应用的性能需求,同时也为未来设计留下了足够空间。

编辑:hfy

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

    关注

    68

    文章

    19286

    浏览量

    229830
  • cpu
    cpu
    +关注

    关注

    68

    文章

    10863

    浏览量

    211758
  • 嵌入式处理器

    关注

    0

    文章

    253

    浏览量

    30743
收藏 人收藏

    评论

    相关推荐

    AMD EPYC嵌入式9004和8004系列处理器介绍

    可扩展至 96 核( 9004 系列),热设计功率( TDP )自 70W 起( 8004 系列),第四 AMD EPYC 嵌入式处理器旨在满足下一代网络、安全/防火墙、存储及工业系
    的头像 发表于 12-18 15:57 375次阅读
    AMD EPYC<b class='flag-5'>嵌入式</b>9004和8004系列<b class='flag-5'>处理器</b>介绍

    AMD 面向嵌入式系统推出高能效 EPYC 嵌入式 8004 系列

    AMD 凭借其 EPYC™ 嵌入式处理器不断树立行业标准,为网络、存储和工业应用提供卓越的性能、效率、连接与创新。今天,我们正以第四 AMD EPYC
    发表于 10-11 13:58 716次阅读

    嵌入式Hypervisor:架构、原理与应用 阅读体验 +Hypervisor基础概念

    解决嵌入式系统资源有限但应用场景日益复杂的难题。单核处理器计算性能的提高和多核处理器的引入为嵌入式Hypervisor的发展提供了硬件基础。
    的头像 发表于 10-08 15:08 590次阅读
    <b class='flag-5'>嵌入式</b>Hypervisor:<b class='flag-5'>架构</b>、原理与应用 阅读体验 +Hypervisor基础概念

    嵌入式linux开发的基本步骤有哪些?

    之前,首先需要选择合适的硬件平台。硬件选择需要考虑以下几个方面: 1.1 处理器 嵌入式Linux开发需要处理器,常见的处理器有ARM、
    的头像 发表于 09-02 09:11 494次阅读

    嵌入式微处理器的分类 嵌入式微处理器的种类和型号

    的分类可以从多个角度进行划分,比如架构、指令集、用途等。下面将从这些角度详细介绍嵌入式微处理器的种类和型号。 架构分类 嵌入式微处理器
    的头像 发表于 05-04 16:31 2245次阅读

    嵌入式微处理器种类 举例介绍嵌入式微处理器有哪几类?

    嵌入式微处理器的各种类型。 ARM体系结构 ARM(Advanced RISC Machine)体系结构是种广泛应用于嵌入式系统中的指令集架构
    的头像 发表于 05-04 16:27 2089次阅读

    嵌入式微处理器的类型与特点 嵌入式微处理器技术的优缺点

    嵌入式微处理器种专门设计和应用于嵌入式系统的微处理器。相比于常规计算机系统,嵌入式系统通常具有更高的实时性、更低的功耗、较小的尺寸和成本
    的头像 发表于 05-04 15:10 2908次阅读

    嵌入式微处理器的功能 嵌入式微处理器原理与应用

    嵌入式微处理器种集成了中央处理单元(CPU)核心和各种外围接口的集成威廉希尔官方网站 ,广泛应用于嵌入式系统中。由于嵌入式系统对功耗、体积和成本等方面
    的头像 发表于 05-04 14:50 1173次阅读

    什么是嵌入式微处理器? 嵌入式微处理器的区别

    嵌入式微处理器(Embedded Microprocessor)是种被用于控制和操作特定嵌入式系统的微处理器嵌入式系统是指内部集成了特定
    的头像 发表于 04-21 15:44 1573次阅读

    嵌入式微处理器的分类特点 嵌入式微处理器作用

    嵌入式微处理器种专门设计用于控制和执行嵌入式系统任务的微处理器。与通用微处理器相比,嵌入式微处理器
    的头像 发表于 04-21 14:52 1274次阅读

    嵌入式微处理器架构可分为

    性能、功耗和可靠性都有重要影响。 目前,主流的嵌入式微处理器架构主要有ARM架构、x86架构和MIPS
    的头像 发表于 04-21 14:39 1186次阅读

    dsp是嵌入式微处理器种设备吗 ARM嵌入式微处理器有何特点?

    的微处理器,它通常具有低功耗、小尺寸和低成本的特点。 ARM嵌入式微处理器是由ARM公司设计的系列低功耗、高性能嵌入式
    的头像 发表于 04-21 09:37 994次阅读

    什么是嵌入式微处理器嵌入式微处理器有哪些?

    嵌入式微处理器是指嵌入到特定应用系统中的微处理器,它是整个嵌入式系统的核心,由通用处理器演变而来,具有体积小、重量轻、成本低、可靠性高等优点
    的头像 发表于 03-29 11:39 1033次阅读

    嵌入式微处理器的原理和应用

    嵌入式微处理器是专为嵌入式系统设计的微处理器,它们是嵌入式系统的核心组件,负责执行程序指令、处理数据和控制其他硬件设备。与通用微
    的头像 发表于 03-28 15:51 936次阅读

    嵌入式fpga是什么意思

    嵌入式FPGA是指将FPGA技术集成到嵌入式系统中的种解决方案。嵌入式系统是种为特定应用而设计的计算机系统,它通常包括
    的头像 发表于 03-15 14:29 1260次阅读