ARM Cortex A53 - 硬件虚拟化特性
ARM Cortex A53 - Hardware virtualization features
我正在查看有关 ARM Cortex A53 处理器的维基百科 page。此处理器的功能列表包括术语 hardware virtualization
。我想问问有没有人知道这包括哪些功能列表?它与 Trustzone
分开列出,所以我假设它表示与 TEE 无关的功能。
ARM 在他们的书中了解并描述了虚拟化特性,并且虚拟化能力对于所有 ARM 版本的实现都是相同的(AVMv8-A, list of implementations). There is book for A53 Cortex MPcore with some details: http://infocenter.arm.com/help/topic/com.arm.doc.ddi0500g/index.htmlARM Cortex-A53 MPCore 处理器技术参考手册
4.2.12. AArch64 virtualization registers http://infocenter.arm.com/help/topic/com.arm.doc.ddi0500g/CIHFBCDH.html
4.3.28. Virtualization Processor ID Register http://infocenter.arm.com/help/topic/com.arm.doc.ddi0500g/BABEJIHA.html
4.3.29. Virtualization Multiprocessor ID Register http://infocenter.arm.com/help/topic/com.arm.doc.ddi0500g/BABCBAIE.html
4.3.50. Virtualization Translation Control Register, EL2 http://infocenter.arm.com/help/topic/com.arm.doc.ddi0500g/CIHJBCCC.html
4.4.27. AArch32 Virtualization registers http://infocenter.arm.com/help/topic/com.arm.doc.ddi0500g/CIHIFBII.html
4.5.25. Virtualization Processor ID Register http://infocenter.arm.com/help/topic/com.arm.doc.ddi0500g/BABJDFCE.html
4.5.26. Virtualization Multiprocessor ID Register http://infocenter.arm.com/help/topic/com.arm.doc.ddi0500g/BABGDAIC.html
4.5.44. Virtualization Translation Control Register http://infocenter.arm.com/help/topic/com.arm.doc.ddi0500g/CIHBHGJE.html
GIC 中也有用于中断虚拟化的模式(http://infocenter.arm.com/help/topic/com.arm.doc.ddi0500g/CIACFDIC.html 第 9 章通用中断控制器 CPU 接口 - 同一本书)和 EL2-EL3 的不同地址转换方案:
适用于 ARMv8-A 的 ARM Cortex-A 系列程序员指南,内存管理单元,12.6。 EL2 和 EL3 的翻译 http://infocenter.arm.com/help/topic/com.arm.doc.den0024a/BABHDAJD.html
在 Linux (https://lwn.net/Articles/650524/) 中有一些关于实现 ARMv8.1 虚拟化支持的数据,但是 我不确定 A53 内核是否实现了 v8.1(这可能取决于 A53 内核的硬件版本)。 ARM 8.1 版本于 2014 年 12 月发布,包含 "Virtualization Host Extensions (VHE)"。有一些关于 VHE 的帖子和论文:
- https://community.arm.com/processors/b/blog/posts/the-armv8-a-architecture-and-its-ongoing-development ARMv8-A 架构及其持续发展 - 2014 年 12 月 2 日("early adopter silicon expected in the latter part of 2015",还有 8.1 到 8.0 的更改列表)
- https://www.linaro.org/blog/core-dump/on-the-performance-of-arm-virtualization/ 关于 ARM 虚拟化的性能,2016 - 关于 Type 1(特殊管理程序和几个普通客户机 OS)和 Type 2 虚拟化(一个普通 OS 是主机,它可以作为来宾启动应用程序和其他 VM OS),KVM ARM 和 Xen ARM 与 x86 的 hypercall 成本数据。
- http://docshare01.docshare.tips/files/26002/260020807.pdf KVM/arm64 架构演进,2015 年。幻灯片显示了 EL3、EL2 和 EL1 级别与 TrustZone(ARMv8-A 特权模型)的关系,列出了 ARM 世界中虚拟化扩展的不同变体(具有 EL2 级别的晚期 ARMv7 中的体系结构虚拟化扩展;在 v8.1 中由 "Virtualization Host Extensions" 更改)
- https://www.cs.columbia.edu/~nieh/pubs/isca2016_armvirt.pdf ARM 虚拟化:性能和架构影响,DOI 10.1109/ISCA.2016.35,2016
- http://events.linuxfoundation.org/sites/events/files/slides/xds15_0.pdf ARM 生态系统简述,2015
我正在查看有关 ARM Cortex A53 处理器的维基百科 page。此处理器的功能列表包括术语 hardware virtualization
。我想问问有没有人知道这包括哪些功能列表?它与 Trustzone
分开列出,所以我假设它表示与 TEE 无关的功能。
ARM 在他们的书中了解并描述了虚拟化特性,并且虚拟化能力对于所有 ARM 版本的实现都是相同的(AVMv8-A, list of implementations). There is book for A53 Cortex MPcore with some details: http://infocenter.arm.com/help/topic/com.arm.doc.ddi0500g/index.htmlARM Cortex-A53 MPCore 处理器技术参考手册
4.2.12. AArch64 virtualization registers http://infocenter.arm.com/help/topic/com.arm.doc.ddi0500g/CIHFBCDH.html
4.3.28. Virtualization Processor ID Register http://infocenter.arm.com/help/topic/com.arm.doc.ddi0500g/BABEJIHA.html
4.3.29. Virtualization Multiprocessor ID Register http://infocenter.arm.com/help/topic/com.arm.doc.ddi0500g/BABCBAIE.html
4.3.50. Virtualization Translation Control Register, EL2 http://infocenter.arm.com/help/topic/com.arm.doc.ddi0500g/CIHJBCCC.html
4.4.27. AArch32 Virtualization registers http://infocenter.arm.com/help/topic/com.arm.doc.ddi0500g/CIHIFBII.html
4.5.25. Virtualization Processor ID Register http://infocenter.arm.com/help/topic/com.arm.doc.ddi0500g/BABJDFCE.html
4.5.26. Virtualization Multiprocessor ID Register http://infocenter.arm.com/help/topic/com.arm.doc.ddi0500g/BABGDAIC.html
4.5.44. Virtualization Translation Control Register http://infocenter.arm.com/help/topic/com.arm.doc.ddi0500g/CIHBHGJE.html
GIC 中也有用于中断虚拟化的模式(http://infocenter.arm.com/help/topic/com.arm.doc.ddi0500g/CIACFDIC.html 第 9 章通用中断控制器 CPU 接口 - 同一本书)和 EL2-EL3 的不同地址转换方案: 适用于 ARMv8-A 的 ARM Cortex-A 系列程序员指南,内存管理单元,12.6。 EL2 和 EL3 的翻译 http://infocenter.arm.com/help/topic/com.arm.doc.den0024a/BABHDAJD.html
在 Linux (https://lwn.net/Articles/650524/) 中有一些关于实现 ARMv8.1 虚拟化支持的数据,但是 我不确定 A53 内核是否实现了 v8.1(这可能取决于 A53 内核的硬件版本)。 ARM 8.1 版本于 2014 年 12 月发布,包含 "Virtualization Host Extensions (VHE)"。有一些关于 VHE 的帖子和论文:
- https://community.arm.com/processors/b/blog/posts/the-armv8-a-architecture-and-its-ongoing-development ARMv8-A 架构及其持续发展 - 2014 年 12 月 2 日("early adopter silicon expected in the latter part of 2015",还有 8.1 到 8.0 的更改列表)
- https://www.linaro.org/blog/core-dump/on-the-performance-of-arm-virtualization/ 关于 ARM 虚拟化的性能,2016 - 关于 Type 1(特殊管理程序和几个普通客户机 OS)和 Type 2 虚拟化(一个普通 OS 是主机,它可以作为来宾启动应用程序和其他 VM OS),KVM ARM 和 Xen ARM 与 x86 的 hypercall 成本数据。
- http://docshare01.docshare.tips/files/26002/260020807.pdf KVM/arm64 架构演进,2015 年。幻灯片显示了 EL3、EL2 和 EL1 级别与 TrustZone(ARMv8-A 特权模型)的关系,列出了 ARM 世界中虚拟化扩展的不同变体(具有 EL2 级别的晚期 ARMv7 中的体系结构虚拟化扩展;在 v8.1 中由 "Virtualization Host Extensions" 更改)
- https://www.cs.columbia.edu/~nieh/pubs/isca2016_armvirt.pdf ARM 虚拟化:性能和架构影响,DOI 10.1109/ISCA.2016.35,2016
- http://events.linuxfoundation.org/sites/events/files/slides/xds15_0.pdf ARM 生态系统简述,2015