芯片多核的基本概念
同构多核(Homogeneous)vs 异构多核(Heterogeneous)
从硬件设计上,多核可以分为同构多核和异构多核:同构多核指的是所有的 CPU 内核具有相同的架构,比如 NXP 的 S32K3(Cortex-M7)和芯驰科技的 E3(Cortex-R5)。异构多核指的是 CPU 内核具有不同的架构,比如 Infineon 的 Traveo T2G(Cortex-M0 + Cortex-M4/Cortex-M7)和 ST 的 STM32H7(Cortex-M4 + Cortex-M7)。ARM + RISC-V 属于异构多核。
对称多处理(SMP) vs 非对称多处理(AMP)
从软件设计上,多核可以分为对称多处理(SMP)和非对称多处理(AMP):SMP 指的是所有的 CPU 内核运行同一套程序(一般通过 CoreID 来实现不同的 CPU 内核执行不同的操作),AMP 指的是不同的 CPU 内核运行不同的程序。
Warning
只有同构多核才能实现 SMP,同构多核也可以实现 AMP,异构多核只能实现 AMP