[嵌入式学习笔记]Arm绪论
发展背景20世界90年代初半导体行业产业链形成设计业制造业封装测试业三业分离的产业分工。台积电联电等半导体代工厂崛起一些fablesschipless无晶圆厂无芯片公司如雨后春笋般涌现出来。Arm公司介绍英国先进的RISC公司Advanced RISC Machines简称Arm公司作为fablesschipless无晶圆厂无芯片这一胜场模式最为成功的典范。既不生产芯片也不销售芯片而是设计出高效的IP内核授权给各半导体公司使用各半导体公司在Arm的基础上根据自己公司的产品定位推出自己的芯片产品最后由OEMOriginal Equipment Manufacturer原始设备制造商客户采用这些芯片构建基于ARM技术的产品。主营业务它提供一些高性能低功耗低成本和高可靠性的RISC处理器核外围部件和系统级芯片解决方案设计方案ARM的微处理器核适用于便携式通讯设备手持式计算机多媒体数字消费类产品和嵌入式系统解决方案。ARM处理器核简介ARM公司开发了很多系列的ARM处理器核目前应用比较广泛的是ARM7ARM9ARM9EARM10ARM11CortexCortex-ACortex-RCortex-MCortex-A面向高性能、复杂计算能运行 Linux、Android 等富操作系统。核心特征是带 MMU内存管理单元支持虚拟内存可实现多任务隔离。Cortex-R面向硬实时、安全关键场景。核心特征是用 MPU内存保护单元而非 MMU中断延迟极低且可预测。Cortex-M面向超低功耗、低成本、小面积的嵌入式控制。核心特征是极简设计。嵌入式处理器嵌入式微处理器Microprocessor UnitMPU一颗纯 CPU 芯片通常带 MMU内存管理单元支持虚拟内存、多进程隔离能跑 Linux 等富操作系统。需要外挂 RAM 和存储才能工作。嵌入式微控制器Microcontroller UnitMCU又称单片机。一颗单片小电脑把 CPU、Flash、RAM、外设全集成在一颗芯片里。通常不带 MMU只带 MPU内存保护单元或什么都没有。嵌入式DSP处理器Digital Signal Processor数字信号处理器专门为信号处理数学运算优化的处理器核心是硬件乘加单元MAC和 SIMD 指令。嵌入式片上系统System on ChipSoC把 CPU、GPU、DSP、内存控制器、各种外设全部集成在一颗芯片上的“超级芯片”。它是集成概念不是单一处理器类型。技术演化路径晶体管逻辑电路 → IC逻辑电路 → 微处理器 MPU→ DSP → 单片机MCU → FPGAField-Programmable Gate Array现场可编程门阵列技术 → ASICApplication-Specific Integrated Circuit专用集成电路 → SOC以AM64x/AM243x为例AM64x/AM243x共有1个Cortex-A53 双核仅 AM64x 2 个 Cortex-R5F 子系统R5FSS0/R5FSS1一个Cortex-M4F。其中Cortex-A53属于MPUCortex-R5F和Cortex-M4F属于MCU。RISC体系架构CISCComplex Instruction Set Computer复杂指令集RISCReduced Instruction Set Computer精简指令集指令格式和昌都固定且指令类型少指令功能简单寻址方式少而简单指令译码控制器采用硬布线逻辑易于流水线的实现进而获得高性能load-store体系结构数据处理指令只访问寄存器不会直接访问内存基于多个通过寄存器堆操作指令单周期完成ARM是当前使用最广最为成功的基于RISC的处理器它采用了若干RISC的特征但也放弃了若干其他特征。采用的特征load-store体系结构固定的32位指令3地址指令格式放弃的特征寄存器窗口延迟转移所有的指令单周期执行以AM64x/AM243x为例Cortex-A53它支持 AArch64 状态指令固定为 32 位同时也支持 AArch32 状态此时指令是 A32固定 32 位和 T3216/32 位混合 的混合Cortex-R5F 和 Cortex-M4F基于 Thumb-2 指令集指令长度是 16 位和 32 位混合的。常用的多核结构ARMARM性能分工各司其职。这种结构通常是同构多核或大小核核心思路是让多个 ARM 核分工协作平衡性能与功耗。ARMDSP控制与运算的经典组合。这是嵌入式领域非常成熟的异构多核方案。ARM 负责跑操作系统、管理外设和复杂逻辑DSP 则专职处理密集的数学运算。ARMFPGA软硬协同硬件加速。将 ARM 的软件可编程性和 FPGA 的硬件可编程性结合。ARM 跑软件流程FPGA 则用硬件电路实现超低延迟的接口或加速。以AM64x/AM243x为例ARMARMCortex-A53 Cortex-R5F Cortex-M4F异构多核 SoC。