2011年11月,ARM发布了ARMv8处理器架构的部分技术细节。这是ARM的首款支持64位指令集的处理器架构。由于ARM处理器的授权内核被广泛用于手机等诸多电子产品,故ARMv8架构作为处理器的核心技术受到多方应用。十年之后,为了满足全球对功能日益强大的安全、人工智能(AI)和无处不在的专用处理的需求,ARM宣布推出ARMv9架构,ARMv9立足于ARMv8的成功基础,是这十年来最新的ARM架构。
ARM首席执行官Simon Segars表示:“ARMv9架构的推出标志着我们公司进入了一个新时代,这是一个推动安全的人工智能驱动计算的全球普适性平台,将使我们由1,000多个合作伙伴组成的生态系统能够一直持续到2030年代。ARMv9将催生出3000亿颗基于ARM架构芯片大市场。ARMv9路线图包含了多个新元素,以满足从最小的传感器到最大的超级计算机的专业化计算需求。”
ARMv9架构亮点:聚焦安全和AI
1.机密计算架构,构建坚实安全堡垒
随着全球联网设备激增,安全性日益重要,赛门铁克在2020年Q1检测到其物联网有近1900万次攻击。相当于每超过100次攻击速度,比2019年底高出13%,网络犯罪损失的金额将高达六万亿美元。不难看出,在物联网领域,最大的挑战之一在于众多终端设备,数据收集,以及与实体世界交互的安全性。
为了保护全球数据安全,ARMv9架构路线图引入了ARM机密计算架构(Confidential Compute Architecture, CCA)。机密计算通过打造基于硬件的安全运行环境来执行计算,保护部分代码和数据,免于被存取或修改,甚至不受特权软件的影响。
ARM CCA将引入动态创建机密领域(Realms)的概念,机密领域面向所有应用,运行在独立于安全或非安全环境之外的环境中,以实现保护数据安全的目的。例如,在商业应用中,机密领域可以保护系统中商用机密数据和代码,无论它们正被使用、闲置或正在传输中。事实上,在最近一项针对企业高管的调查中,超过九成的受访者相信,机密计算可以帮助降低企业在安全方面投入的成本,如此一来,他们可以转而进行大量的工程创新。机密领域是存储数据和执行代码的动态安全区域,与操作系统或管理程序的特权模式分离。
它建立在ARM的TrustZone技术之上,是软件容器的硬件版本,允许应用程序轻松地在不同的系统上运行。然而,这将需要对操作系统(如Linux的Linaro版本)和管理程序进行更改,因此重点放在生态系统上。例如可以将个人银行信息与智能手机的社交媒体应用完全分离。ARM CCA的新安全功能意味着,即使社交媒体应用真的感染了恶意软件,也不会传播设备其他部分。
Seagars:“从云计算、数据中心到超级计算机,机密领域能在最高性能的系统中提供安全保障, “机密领域是一项新技术,我们预计它将被广泛应用,我们正在软件方面非常努力地工作,帮助人们构建硬件之上的软件。”
此外,ARM还与合作伙伴共同开发平台安全架构PSA,作为一套标准的威胁模型、措施及时间,提供给终端设计人员使用。它与分级认证相结合后可以让此设备的采购者对资产的安全性更放心。
内存标签:解决长期存在软件中的顽疾
此外,内存安全一直困扰着我们十几年。如何在这些内存安全漏洞利用之前就能发现问题,是提高全球软件安全最重要一步。为此ARM与Google合作开发“内存标签扩展”技术,可在软件中查找空间和时间内存安全问题,这些扩展技术软件将指向内存的指针和标签建立联系,并在使用指针时检查这个标签是否正确。如果存取超过范围,标签检查就会失败。这样我们就可以找到来自内存安全问题的根源。
2. 可伸缩矢量扩展(SVE2)让AI算力大幅提高
还记得2016年日本排名第一的超级计算机Fukagu吗?可伸缩矢量扩展(SVE)首次应用于此。如今ARM推出新版本SVE2,这是一项用于辅助机器学习和数字信号处理的技术,有助于对5G系统、VR/AR、机器学习等一系列工作负载的处理。
SVE和SVE2的优势还在于其可变的向量大小,范围从128b到2048b,从而允许向量的可变粒度为128b,无论实际运行的硬件是什么。纯粹从向量处理和编程的角度来看,这意味着软件开发人员将只需要编译一次其代码,并且如果将来某个CPU带有本机512b SIMD执行管道,该代码将能够已经充分利用了单元的整个宽度。同样,相同的代码将能够在具有较低硬件执行宽度能力的更保守的设计上运行,这对于ARM设计从物联网,移动到数据中心的CPU而言至关重要。
据了解,ARM面临的挑战在于将Fugaku超级计算机中使用的SVE应用于手机AI的A系列芯片,以及R系列实时控制器和M系列微控制器里面。
Simon Seagars表示:“我们已经在v9上努力了很久,现在终于可以公开了。我们特别关注ML工作负载和DSP的执行,但我们将着重在生态系统上,开放编写代码,并让它在任何标准化水平的平台上工作,这一点很重要。”
ARMv9 SVE2扩展增加了压缩和解压缩CPU核心内的代码和数据能力,以减少芯片外数据移动,从而降低能耗。Seagars表示:“SVE2是一个非常重要的步骤,它扩展了我们可以操作的数据类型的大小,支持更多的并行化,并将显著提升许多应用程序的性能。除此之外,SVE2增强多项DSP和ML处理能力,例如Scatter-Gather DMA直接存储器访问,把它放到CPU架构中,能实现更多的循环,更大的DSP处理能力,从而支持更多的并行化。”
Seagars 强调了数据重用的重要性,“数据重用是我们多年来一直在关注的问题——将数据移到芯片上和移出芯片的过程耗电很大,所以我们多年来已经做了很多事情来使用芯片上的数据。这就是为什么我们在SVE2中增加了数据大小。芯片上的数据越多,能源效率就越高。”然而,SVE2需要为R系列和M系列实现进行调整。这将更直接地与RISC-V架构中的扩展进行竞争。
在计算性能方面,ARM预计,随着软硬件优化,基于ARMv9架构的下两代CPU产品将实现超30%的性能提升,而且这样30%的算力提升完全得益于本身架构而不是借助制程工艺来实现。
标准化程度如何权衡?
ARM讲到了标准化程度,强调了如何在标准和定置化方面进行权衡。如果过多的标准化,合作伙伴将无法开发合适的专用解决方案。但如果标准化太少,我们就得承担低价值、形同实异的解决方案的风险。这将让软件的生态系统的成本增加,而且毫无益处。为此,ARM推出服务器基础系统架构SBSA和相关认证计划,这将推动适量的标准化进程。
在这十年里,ARM扩充了许多新技术,以及强化了许多安全功能,这是未来十年ARM架构的主要更新,它将应用于我们所有的CPU里面。如今,数据收集往往始于如ARM-M系列的超低功耗物联网设备。对于未来,管理大量数据的需求意味着在整个网络上进行的数据处理将不断增加。但目前许多网络实际上只充当了传输数据这类相对简单的管道。因此需要在网络边缘增强算力和标准化系统,这就需要新的组件和版本。
ARM计划每年发布ARMv9架构的同步版本。Seagars表示:“在ARMv8中,我们为R系列和M系列创建了额外的配置文件,它们以略微不同的方式实现了一些特性,我希望v9也是如此, R系列和M系列的时间表还不能公开,但随着时间的推移,这些将在我们的CPU上实现。”
ARM还希望提供一个称为SystemReady的标准化过程,以便代码能够轻松地在任何v9处理器上运行。这必须考虑到大量不同的CPU, GPU和NPU核以及外围设备。
数据中心的标准化、安全性和代码可移植性是亚马逊的主要关注点,亚马逊是其Graviton芯片的关键客户。
Seagars表示:“预计在不久的将来,基于v9上的Neoverse core将会上市。我们在数据中心看到了许多围绕ARM架构的活动,我们期待其他数据中心供应商也将部署ARM技术,随着时间的推移,将会从v8转向v9。”
“在我们展望未来十年的计算领域时,没有一种模式是万能的。从更广泛的执行单元到处理这些向量的小型节能微控制器,这些微控制器没有巨大的处理能力,但仍然必须以最节能和安全的方式进行处理,所以我们希望在一个框架中混合并匹配CPU、GPU、NPU和任何其他处理能力,并尽可能多地重用。”
未来ARM CPU路线图
ARM谈到了CPU的规划,这与即将到来的v9设计的技术路线图紧密相关,ARM还谈到了有关他们在未来2年中对v9设计的预期性能的一些观点。
ARM继续将CPU视为未来最通用的计算模块。尽管专用的加速器或GPU将会占有一席之地,但它们很难解决一些重要问题,例如可编程性,保护性,普遍性(本质上是在任何设备上运行它们的能力)以及经过验证的正常工作的能力。当前,计算生态系统在运行方式上极为分散,不仅设备类型不同,而且设备供应商和操作系统也不同。
SVE2和矩阵乘法(Matrix Multiply) 可以极大地简化软件生态系统,并允许计算工作负载以更统一的方法向前迈进,该方法将来将可以在任何设备上运行。
自1991年以来,ARM已发货量达到1800亿部,他们预计,在ARMv9架构的推动下,未来10年的发货量将超过3000亿部。