Cortex-A8处理器主要有哪些典型应用?
扫描二维码
随时随地手机看文章
ARM Cortex-A8处理器是第1款基于ARMv7架构的应用处理器,处理器的主频在600MHz到超过1GHz的范围内,既能满足低功耗移动设备的要求,又能满足需要高性能的消费类应用的要求。当时发布的时候,被称为有史以来ARM开发的性能最高、功率效率最高的处理器。Cortex-A8处理器的速率在600MHz到超过1GHz的范围内,能够满足那些需要工作在300mW以下的功耗优化的移动设备的要求;以及满足那些需要2000 Dhrystone MIPS的性能优化的消费类应用的要求。
ARMv7架构采用了Thumb-2技术,它是在ARM的Thumb代码压缩技术的基础上演进而来,并保持了对当时ARM解决方案的代码兼容性。Thumb-2技术比纯32位代码少使用31%的内存,减小了系统开销。同时能够提供比当时已有的基于Thumb技术的解决方案高出38%的性能。ARMv7架构还采用了NEON技术,将DSP和媒体处理能力提高了近4倍,并支持改良的浮点运算,能够满足3D图形、游戏物理应用以及传统嵌入式控制应用的需求。
Cortex-A8架构特性
ARM Cortex-A8处理器复杂的流水线架构基于双对称的、顺序发射的、13级流水线,带有先进的动态分支预测,可实现2.0 DMIPS/MHz。
顺序,双发射,超标量微处理器内核,13级主整数流水线。
10级NEON媒体流水线 10-stage NEON media pipeline,专用的L2缓存,带有可编程的等待状态,以及基于全局历史的分支预测。结合功率优化的加载存储流水线,为功率敏感型应用提供2.0 DMIPS/MHz的速率
遵从ARMv7架构规范
用于实现更高的性能、能量效率和代码密度的Thumb-2技术,NEON™信号处理扩展,用于加速H.264和MP3等媒体编解码器,以及Jazelle RCT Java-加速技术,用于最优化即时(JIT)编译和动态自适应编译(DAC),并将存储器尺寸减小了多达3倍。
Cortex-A8中采用的TrustZone技术可确保消费类产品(如运行开放式操作系统的移动电话、个人数字助理和机顶盒)中的数据隐私和DRM得到保护。
指令读取单元的主要构成如下图所示,指令读取单元对指令流进行预测,从L1指令缓存中取出指令放到译码流水线中。在此过程中使用到了TLB(Translation Lookaside Buffers,转换旁路缓冲器)。
指令译码单元对所有的ARM、Thumb-2指令进行译码排序,包括调试控制协处理器CP14的指令、系统控制协处理器CP15的指令。指令译码单元处理指令的顺序是:异常、调试事件、复位初始化、存储器内嵌自测CMI3IST、等待中断、其它事件。
指令执行单元包括两个对称的ALU(算术逻辑单元)流水线(ALU0和ALU1),它们都可以处理大多数算术指令。ALU0始终执行一对旧的发射指令。Cortex-A8处理器还配备乘法器和加载存储流水线,但这些都不对两条ALU流水线执行额外指令,可将它们视为“独立”流水线。使用它们必需同时使用两条ALU流水线中的一个,乘法器流水线只能与ALU1流水线中的指令结合使用,而加载存储流水线只能与任一ALU中的指令结合使用。
指令执行单元的功能:
· 执行所有整数ALU运算和乘法运算,并修改标志位;
· 根据要求产生用于存取的虚拟地址以及基本回写值;
· 将要存放的数据格式化,并将数据和标志向前发送;
· 处理分支及其它指令流变化,并评估指令条件码。
集成的L2缓存和优化的L1缓存
集成的L2缓存:使用标准编译的ARM建立而成,64K到2MB的可配置容量,和可编程的延迟;优化的L1缓存:经过性能和功耗的优化,结合最小访问延迟和散列确定方式,以便将性能最大化,将功耗最小化。
存储器系统
访问L1缓存导致的单周期加载使用代价,L1缓存的散列数组使得只有在可能需要时才会启用存储器。集成的、可配置L2缓存和用于数据流的NEON媒体单元之间的直连接口,Bank化的L2缓存设计,每次只设计1个Bank,支持多项与L3存储器之间的未完成事务,以充分利用CPU。
Cortex-A8应用
基于Cortex-A8内核的典型微处理器,包括苹果A4芯片、NXP(原飞思卡尔)i.MX5X系列芯片、三星S5PV210芯片、TI OMAP35XX与AM335X系列芯片等。