我们是否希望ARM架构(包括NVIDIA Tegra)的所有未来移动设备都能支持它?
答案 0 :(得分:3)
与某些其他ISA作者公司不同,ARM并没有对后向兼容性做出艰难的承诺。移动设备是ARM内核的主要市场,它具有独特性和异构性,以至于拥有稳定的ISA不会产生太大影响。 ARM还针对低功耗应用程序,这意味着只需使用目标应用程序可以利用的内容,就可以排除不需要的功能并保持指令集较小。因此,ARM体系结构的给定版本是ISA系列的联合体,它们共同定义了功能丰富的系统,并且具有相对较少的不需要的指令系列。
跨越发行版更改指令集的(不完整)参数是ISA不再被视为程序员抽象,而特定于芯片的编译器的任务是为程序员提供稳定的语言。当然,编译器只是非常善于将C压缩成奢侈的指令,而特定于体系结构的指令(以及汇编的手工编码段)在效率关键库中仍然很常见。
虽然我们看到的一些ISA扩展已经证明是多年来证明是广泛有用的ISA功能(NEON看起来是其中之一 - 128位SIMD很方便!)比其他人更可靠地持续存在似乎并不保证任何特定的ISA扩展将成为未来兼容的。
在回答最初的问题时,NEON在所有Cortex-A8设备中都是强制性的,但在Cortex-A9中是可选的。 ARM的商业模式允许公司许可Cortex-A9核心并省略非强制性扩展。 Tegra 2似乎排除了NEON(但通过以GPU的形式提供“SIMD” - 协处理器来弥补它)。