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

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

3天内不再提示

多核处理器实时控制性能的介绍

电子设计 来源:郭婷 作者:电子设计 2019-02-06 10:49 次阅读

如果时序定义明确且时间关键功能被分区,单核微控制器可以执行多任务,以便中断和定时器服务例程响应时间足够快,可以处理手头的任务。然而,它的设计相当于杂耍。当一个球在空中不需要服务时,另一个球可能需要立即服务以保持过程移动。只要你足够快以切换上下文,一切都很好。

当任务重叠时,可能无法足够快地做出反应,例如当同时发生多个同步和异步刺激时。在这些情况下,只有几个选项。一个是更快的处理器。另一种方法是使用多个处理器并将应用程序划分为时间可管理或流水线组块。第三种,也是最好的选择,就是采用单芯片双核或多核处理器。

本文介绍具有多个核心的处理器。这些部分允许任务主管为每个核心分配个人职责,以便其他干扰不会影响完成诸如时间关键控制循环等任务所需的实时性能。

总线背面

了解如何最好地选择双核或多核处理器的关键在于它如何使用或复制资源。最简单(也是非常有效)的方法是每个处理核心都有自己的“支持人员”,包括自己的程序和数据存储器,时钟和I/O.共享外设需要由当前使用它们的处理器内核声明(图1),双端口内存可以作为交换关键数据的手段。

多核处理器实时控制性能的介绍

图1:当每个微核心拥有自己的资源以便独立运行时,提供最大的自由度。唯一可能的争用点是必须设计用于处理它的双端口RAM

共享资源可以节省芯片面积和功耗,但必须以每个处理器内核始终可用的方式进行同步。浮点处理器可能需要多个指令和周期来加载操作数,然后进行处理和存储。在目前为止讨论的两种情况下,在资源空闲之前将不同的核心保持在等待状态并不是一种有效的方法,并且在这些条件下或多或少会将性能降低到单核级别。

对于像数据总线这样的通用数据路径资源也是如此。如果内部只有一个数据总线,则每个核心都需要访问它,通常每个周期至少有一次,但有时更多。存在争用时可以插入等待状态,但这对原因没有帮助。

正如您所猜测的那样,内核的同步性和时序性是一个重要因素。如果每个内核以其自己的频率以自己的频率运行,则可以访问共享总线。但是,如果使用公共时钟在内核之间交错微状态,则可以在没有任何争用的情况下最大限度地利用内部资源。以Von Neumann架构为例,我们可以让四个核心处理器使用读取,解码,操作和执行周期共享一个公共总线(图2)。请注意,虽然第2阶段和第3阶段操作可以在每个处理器内部,但使用总线的执行周期(如内存存储)仍然可能导致争用。如果I/O路径对处理器是唯一的,则可以在执行周期期间执行一些I/O操作。

多核处理器实时控制性能的介绍

图2:当多个微控制器及时交错时,更容易实现对总线管理等公共资源的更好控制。当发生内存和I/O读写时,仍然必须小心,因为它们可以声明总线。具有分割代码和数据总线的哈佛架构可以解决这个问题。

要记住的另一个因素是部件中的每个核心处理器不必相同或相同。恩智浦半导体的32位非对称双核204 MHz PC4337JBD144E是该公司LPC43xx系列ARM®Cortex™M4和M0内核的成员,采用单封装。这些部件的ROM,RAM,外设组合,I/O和封装尺寸各不相同,但所有部件都具有较小的M0内核,可以接管内务管理,初始化和数据管理工作,而M4内核可以自由地执行更多过程密集型功能,得益于其浮点硬件DSP扩展。

恩智浦部件使用多层矩阵和各个外设桥来解决处理器内核和外设之间的仲裁问题(图3)。 Master和Slave指定也确保优先级。其思想是AHB矩阵将ARM Cortex M4总线和其他总线主控器连接到外设,以便允许不同总线主控器同时访问位于不同从端口上的外设。

多核处理器实时控制性能的介绍

图3:为解决总线争用问题,恩智浦使用AHB矩阵,允许多个内核和外设在需要时访问总线。

飞思卡尔的i.MX 6是一系列可扩展的单核,双核和四核32位ARM 9处理器。它们的内核每个时钟速度为1 GHz,与其他高端处理器一样,这些器件具有硬件支持,如USB(和OTG),以太网,MMC/SD卡,PCI,2D和3D图形以及SATA等外设。只是几个(图4)。

多核处理器实时控制性能的介绍

图4:飞思卡尔的方法是在添加核心时添加更复杂的外围设备和接口。这允许使用内核代码进行可扩展开发以进行基本固件验因此,在逐步添加更多核心和功能之前,可以建立稳定的固件库。

采用飞思卡尔的双核MCIMX6D5EYM10AC采用624引脚FBGA封装。它的0.9至1.5 V操作可将热量和功耗降至最低,而224 I/O并非易事。虽然这个I/O的一部分通过外部总线接口专用于外部程序存储器,但这些部件非常密集,晶体管数量非常高,因此保持低功耗至关重要。

应该注意,这些核不是不对称的。它们实际上完全相同。这意味着单核设计可以迁移到双核或四核设计,并且随着性能的提高,代码将兼容。这可能是一个关键的决定因素,特别是如果您正在设计笔记本电脑智能手机,笔记本电脑或其他需要同时支持许多高端外设的多功能设备。

多核MCU领域的另一个参与者是XMOS,它提供了一系列可扩展的32位部分。 XS1系列包括单核,双核,四核,十六进制和八核,以及多达16核的器件,从48引脚TQFP封装到512引脚LFBGA封装(图5)。这些部件还包含丰富的外围设备和功能。考虑0.95至3.6 V 48引脚400 MIPS四核XS1-L4A-64-TQ48-C4。每个核心(称为磁贴)可同时执行实时任务,并可执行计算,高级DSP代码,控制代码或处理I/O的软件。

多核处理器实时控制性能的介绍

图5:借助XMOS的通道链接和响应端口映射方法,最多可将16个内核放在一个封装中。当扩展发生时,可以复制ROM,RAM和时序等关键功能。

在XMOS中,部件调度硬件执行类似RTOS的功能,以确保低延迟并消除中断,确保确定性操作。由于每个核心都是相同的,随着计算和多任务处理需求的增长,您的设计功能也可以增长,而无需重新开始创建软件。

总之,处理器和功能的巧妙划分可以简化设计,多核部件可以成为帮助工程师解决关键实时需求的关键因素。许多精心设计的零件和工具随时可以提供帮助。有关本文中讨论的部分的更多信息,请使用提供的链接访问Digi-

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

    关注

    48

    文章

    6806

    浏览量

    147601
  • 处理器
    +关注

    关注

    68

    文章

    18250

    浏览量

    222055
  • 存储器
    +关注

    关注

    38

    文章

    7141

    浏览量

    161971
收藏 人收藏

    评论

    相关推荐

    多核处理器设计九大要素

    商用CPU的“未来”高性能处理器结构。  虽然多核能利用集成度提高带来的诸多好处,让芯片的性能成倍地增加,但很明显的是原来系统级的一些问题便引入到了
    发表于 04-13 09:48

    工业应用理想选择多核处理器

    于中央的高性能ARM® Cortex®-A15,该处理器系列为工业市场提供了一个拥有高性能和高灵活性的解决方案。多核处理器是很多工业应用的理
    发表于 09-04 10:07

    多核处理器的优点

    处理器。通过在两个执行内核之间划分任务,多核处理器可在特定的时钟周期内执行更多任务。 多核技术能够使服务并行
    发表于 06-20 06:47

    典型的支持多核处理器的RTOS功能解析

    1、基于同步原语扩展的实时操作系统 在多核处理器的每一个处理器核上都运行一个完全相同的RTOS,然后提供扩展的组件库,这种组件库提供相应的同步原语以支持
    发表于 06-29 08:30

    多核嵌入式处理器开发工具介绍

    多核处理器的应用将为设备制造厂商解决复杂和成本问题并快速开发丰富多样的功能找到新的有效途径,对多核编程和调试的支持力度也正在日益增加。实时操作系统(RTOS)和工具供应商正在不断改进以
    发表于 07-08 06:35

    基于实时网络如何提高多轴运动控制性能

    的执行必须与同一个时钟同步。第一种同步很好理解,它是网络控制器的固有部分。然而,第二种同步到目前为止一直为人所忽视,如今成为运动控制性能的瓶颈。
    发表于 07-30 07:56

    实时网络怎么提高多轴运动控制性能

    的执行必须与同一个时钟同步。第一种同步很好理解,它是网络控制器的固有部分。然而,第二种同步到目前为止一直为人所忽视,如今成为运动控制性能的瓶颈。
    发表于 08-07 07:49

    多核设备中的Linux实时性能怎么提高?

    上个世纪,研发人员投入了大量精力提高 Linux 实时性能和行为,最著名的是 PREEMPT_RT Linux 实时扩展。最近,研发人员致力于研究适用于多核设备的 Linux 用户空间
    发表于 04-06 08:17

    如何通过LabVIEW图形化开发平台有效优化多核处理器环境下的信号处理性能

    多核处理器环境下的编程挑战是什么如何通过LabVIEW图形化开发平台有效优化多核处理器环境下的信号处理性能
    发表于 04-26 06:40

    一种对多核处理器架构上程序时间测量的全新技术介绍

    概述尽管多核处理器比单核处理器提供更强大的处理能力,当时多核处理器存在难以检测和并发相关的错误。
    发表于 12-14 07:07

    STM32MP1多核处理器有哪些性能

    STM32MP1多核处理器有哪些性能呢?
    发表于 12-15 06:13

    MPU进化,多核异构处理器有多强?

    数据传输效率低,这将严重影响产品的性能;而如果采用高速并口,则占用管脚多,硬件成本将会增加。​为解决这一痛点,各大芯片公司陆续推出了兼具A核和M核的多核异构处理器,如NXP的i.MX8系列、瑞萨的RZ
    发表于 11-21 09:45

    多核处理器架构及调试

      认识多核基本架构   多核处理器在同一个芯片中植入了多个处理器引擎,这就可以提供更高的CPU性能、功能特性和分区能力。一般说来,
    发表于 08-26 18:08 1250次阅读

    第1章 多核处理器基础

    多核处理器基础,介绍了嵌入式的多核的信息
    发表于 04-11 14:17 2次下载

    浅议多核处理器技术

    多核处理器以其高性能、低功耗优势正逐步取代传统的单处理器成为市场的主流。随着应用需求的扩大和技术的不断进步,多核必将展示出其强大的
    发表于 03-29 10:47 8次下载