[处理器、单片机]ARM
1、ARM简介:
ARM是Advanced RISC Machines的缩写。1985年4月26日,第一个ARM原型在英国剑桥的Acorn计算机有限公司诞生,由美国加州San Jose VLSI技术公司制造。20世纪80年代后期,arm产品用于台式机。1990年Acorn改换成Advanced RISC Machines Limited公司(后简称为arm limited)。20世纪90年代,arm32位嵌入式RISC处理器扩展到世界范围,占据了低功耗、低成本和高性能的嵌入式系统应用领域的领先地位。
2、ARM处理器架构:[引自官网]
ARM 架构是构建每个 ARM 处理器的基础。随着时间的推移,ARM 架构也在不断地进化发展,加入新的架构特性以满足不断增长的新功能、高性能需求以及新兴市场的需要。有关最新公布版本的信息,请参阅 ARMv8 架构。
ARM 架构支持跨跃多个性能点的实现,并已在许多细分市场中成为主导的架构。ARM 架构支持非常广泛的性能点,因而可以利用最新的微架构技术获得极小的 ARM 处理器实现和极有效的高级设计实现。实现规模、性能和低功耗是 ARM 架构的关键特性。
ARM 已经开发了架构扩展,从而为 Java 加速 (Jazelle®)、安全性 (TrustZone®)、SIMD 和高级 SIMD (NEON™) 技术提供支持。ARMv8-A 架构增加了密码扩展作为可选功能。
ARM 架构与精简指令集计算 (RISC) 架构类似,因为它包含以下典型 RISC 架构特征:
- 统一寄存器文件加载/存储架构,其中的数据处理操作只针对寄存器内容,并不直接针对内存内容。
- 简单寻址模式,所有加载/存储地址只通过寄存器内容和指令字段确定。
对基本 RISC 架构的增强使 ARM 处理器可以实现较高性能、较小代码大小、较低功耗和较小硅面积的良好平衡。
【注】从以上论断可以看出,CPU的架构也就是它的指令架构。ARM的架构是基本RISC架构的增强型架构。
图1:arm架构或指令集版本的进化
从上图可以看出arm64是从armv8才出现的。具体的arm架构版本和相应的内核(core)设计如下表所示:
Architecture | Bit width | Cores designed by ARM Holdings | Cores designed by third parties | Cortex profile | References |
---|---|---|---|---|---|
ARM1 | |||||
ARM2, ARM3 | Amber, STORM Open Soft Core[27] | ||||
ARM6, ARM7 | |||||
ARM8 | StrongARM, FA526 | ||||
ARM7TDMI, ARM9TDMI | |||||
ARM7EJ, ARM9E, ARM10E | XScale, FA626TE, Feroceon, PJ1/Mohawk | ||||
ARM11 | |||||
ARM Cortex-M0, ARM Cortex-M0+, ARM Cortex-M1 | Microcontroller | ||||
ARM Cortex-M3 | |||||
ARM Cortex-M4, ARM Cortex-M7 | |||||
ARM Cortex-R4, ARM Cortex-R5, ARM Cortex-R7 | |||||
ARM Cortex-A5, ARM Cortex-A7, ARM Cortex-A8, ARM Cortex-A9, ARM Cortex-A12, ARM Cortex-A15, ARM Cortex-A17 | Krait, Scorpion, PJ4/Sheeva, Apple A6/A6X | ||||
ARM Cortex-A53, ARM Cortex-A57,[28] ARM Cortex-A72[29] | X-Gene, Nvidia Project Denver, AMD K12, Apple A7/A8/A8X, Cavium Thunder X [30][31][32] |
||||
No announcements yet | |||||
No announcements yet |
表1:arm 内核(core)表
【推荐】中国电信天翼云云端翼购节,2核2G云服务器一口价38元/年
【推荐】博客园携手 AI 驱动开发工具商 Chat2DB 推出联合终身会员
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 时间轮在 Netty , Kafka 中的设计与实现
· MySQL 优化利器 SHOW PROFILE 的实现原理
· 在.NET Core中使用异步多线程高效率的处理大量数据
· 聊一聊 C#前台线程 如何阻塞程序退出
· 几种数据库优化技巧
· 跟着 8.6k Star 的开源数据库,搞 RAG!
· 夜莺 v8 第一个版本来了,开始做有意思的功能了
· 3款.NET开源、功能强大的通讯调试工具,效率提升利器!
· 推荐一个C#轻量级矢量图形库
· .NET 9 增强 OpenAPI 规范,不再内置swagger