看看今天的嵌入式设备,我们就会意识到在过去的 5 到 10 年里我们经历了多么巨大的变化。这些设备变得更加强大,拥有漂亮的屏幕、惊人的电池寿命,当然还有连接性。 进化将继续。我们将获得更好的电池、更好的屏幕和更多的连接性。但是,未来五年设备和应用程序数量的增长将是什么?答案很明显:多核。 多核处理器以更小的芯片尺寸提供更高的每瓦性能,使其能够为未来的设备供电。多核处理器已经在当今的许多嵌入式设备中占据主导地位,尤其是那些为我们的电信连接提供动力的设备。多核将从这些设备迁移到所有其他设备,包括手机、打印机、汽车娱乐和工业控制设备。多核每秒提供更多指令。这种处理能力的提高为下一代嵌入式系统提供了两个主要好处: 更好的性能:以每秒指令数、每秒事务数、每秒处理的调用数、每秒测量值和总体吞吐量计算 整合:多个不同功能的组合,通常由单个芯片上的多个不同操作系统实例提供服务 多核对利用这种处理能力提出了挑战。要了解这一挑战,请考虑一个电信交换机,该交换机过去使用多个不同的处理器构建。在这个系统中,任何处理器的崩溃都不是有害的;处理器将简单地重新启动。另一方面,下一代电信系统有 12 个或更多内核。导致该处理器崩溃的崩溃可能会严重损坏交换机。因此,分离和故障隔离是必要的。 再举一个例子,考虑一个医疗系统,它过去是用 PC 构建的,用于人机交互和与办公室后端的集成。该系统使用 Microsoft Windows 和在其上运行的生产力套件以及提供控制和数据采集的嵌入式系统。相比之下,下一代医疗系统使用单个多核设备,同时运行 Microsoft Windows 和控制和测量功能——同一多核芯片上的不同操作系统,这需要操作系统实例之间的分离、故障控制和协作来传递数据. 正确管理这些多核设备的最佳方法是使用虚拟化。虚拟化允许设计人员对多核芯片进行分区。每个分区在空间(内存、设备)和时间(处理器核心使用)上都与下一个分区分开,并提供故障控制,这意味着一个分区不会对另一个分区产生负面影响。虚拟化允许称为虚拟机的多个分区共享一个内核并跨越多个内核。例如,虚拟机可以将一个八核多核芯片拆分为三个运行 Wind River Linux 对称多处理 (SMP) 的两核分区和两个运行 VxWorks 的单核分区。图 1 显示了 Wind River Hypervisor,它是 Wind River 多核软件解决方案的一部分。 图 1: Wind River Hypervisor 允许将内核划分为可在单个处理器内核或每个处理器内核上运行一个虚拟板的虚拟板。
虚拟化技术已经存在很多年了。它最初在 IBM 的大型机上开始,然后进入 IT 领域,现在正在嵌入式行业迅速采用。这些部门中的每一个都有略微不同的要求。在嵌入式行业中,占用空间很重要,确定性和中断延迟等实时特性也很重要。嵌入式虚拟化可在新的、强大的多核芯片上实现,例如采用 VT-x 虚拟化技术的英特尔处理器和飞思卡尔的 e500mc,后者用于 QorIQ 系列的一些片上系统 (SoC)。飞思卡尔的 e500 内核也提供虚拟化,这些内核用于嵌入式设计以及多个 ARM 变体。 多核和虚拟化正在改变人们设计嵌入式系统的方式。这种新技术的结合有可能将嵌入式演变变成一场革命。
|