多核处理器AMP/SMP/BMP介绍

科技   2024-11-19 12:01   北京  

1、多核处理器的发展

最初,商业化处理器都致力于单核处理器的发展,其性能已经发挥到极致,仅仅提高单核芯片的速度会产生过多热量且无法带来相应性能改善,但CPU性能需求大于CPU发展速度。

尽管通过增加流水线可以提高CPU的频率,但是由于缓存的增加与漏电流控制不力的因素,导致功率大幅增加,性能反而不如之前低频率的CPU。由于CPU的功率增加,导致CPU的散热问题也就更加严重,风冷已经不能解决问题了。

那么,此使新的技术就出现了:多核处理器。早在1996年就有第一款多核CPU原型Hydra。2001年IBM推出第一个商用多核处理器POWER4,2005年Intal和AMD多核处理器大规模应用。

多核处理器越来越流行,在服务器、桌面、上网本、平板、手机还是医疗设备、国防、航天等方面都得到了广泛的应用。

2、多核处理器的分类

2.1 从架构上区分

  • 同构多核架构:系统中的处理器在架构上是相同的

  • 异构多核架构:系统中的处理器在架构上是不同的

同构多核架构在硬件与软件设计上比较简单,通用性高。

异构多核处理器有:TI的达芬奇平台DM6000系列(ARM9+DSP)、Xilinx的Zynq7000系列(双核Cortex-A9+FPGA)、Cell处理器(1个64位POWERPC+8个32位协处理器)等等。

同构多核处理器有:Exynos4412,freescale i.mx6 dual和quad系列、TI的OMAP4460等,Intel的Core Duo、Core2 Duo等。

2.2 从运行模式上区分

在软件上区分的话,多核处理器有三种运行模式:

  • AMP(非对称多处理)

  • SMP(对称多处理)

  • BMP(受约束多处理)

AMP:

AMP是指,多个核相对独立的运行不同的任务,每个核之间相互隔离,可以运行不同的操作系统或裸机程序。

▲AMP运行模式

AMP的运行模式基本不会存在开销问题,尤其是在运行裸机程序时,甚至没有开销,这种模式比较适合实时性高的应用。但是两个核心之间的通信与资源共享需要有一套优秀的处理机制。

虽然多个核心可以运行不同的系统,但是需要有一个主要的核心,需要使用该核心来控制整个系统以及其他的核心。例如:一个核心运行运行实时性较高的任务,另一个核心运行UI界面。

SMP:

SMP是指多个核心运行一个操作系统,该操作系统同等的管理多个内核,这种运行模式就是简单提高运行性能。目前支持该运行模式的操作系统有:Linux,Windows,Vxworks。

目前,我们的PC机使用的就是这种运行模式,一般适用于功能复杂,对实时性要求不高的系统。

▲SMP运行模式
BMP:
BMP运行模式与 SMP类似,同样也是一个OS管理所有的核心,但开发者可以指定将某个任务仅在某个指定内核上执行 。

END

来源:嵌入式基地

版权归原作者所有,如有侵权,请联系删除

推荐阅读
为什么大厂都在用Yocto?
培养一个优秀的嵌入式工程师有多难?
C/C++大限将至,美国强硬要求2026年前全面剔除!

→点关注,不迷路←

嵌入式微处理器
关注嵌入式相关技术和资讯,你想知道的都在这里。
 最新文章