嵌入式多处理器:原理、架构与应用
1. 引言
在嵌入式计算系统中,许多场景需要多个中央处理单元(CPU)协同工作。为构建这样的系统,需借助网络连接处理器、内存和设备。同时,要对系统进行编程,以充分利用多处理的并行性,并考虑网络带来的通信延迟。接下来将深入探讨并行和分布式嵌入式计算系统的基本概念。
2. 为何需要多处理器
2.1 定义
多处理器通常指由两个或以上处理器耦合而成的计算机系统。用于科学或商业应用的多处理器往往具有规则架构,即多个相同的处理器可访问统一的内存空间。我们用“处理单元(PE)”指代负责计算的任何单元,无论其是否可编程;用“网络(或互连网络)”描述处理单元之间的互连。
2.2 原因分析
嵌入式系统设计者需从更广泛的角度看待多处理器的本质。嵌入式计算系统基于各种多处理器架构构建,原因主要有以下几点:
- 成本/性能 :嵌入式多处理器能提供显著更好的成本/性能,即每花费一美元在系统上所获得的性能和功能。因为处理单元的购买价格与性能呈非线性关系,高速处理器成本高昂,将应用拆分到多个较小处理器上执行更为经济,尽管组装组件会增加成本,但总体系统成本更低。不过,将应用拆分到多个处理器上会带来更高的工程成本和开发周期,需在项目中加以考虑。
- 实时性能 :使用多个处理器有助于提升实时性能。将时间关键进程放在单独的处理器上,能更轻松地满足截止时间并对交互做出响应。在大多数实际调度模型中,在单个CPU上调度多个进程会产生开销,而将时间关键进程放在很少或没有时间共享的PE上可减少调度开销。由于为这种开销支付的是处理器