电子发烧友App

硬声App

0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示
电子发烧友网>电子资料下载>ARM>ARMv6增加的系统支持

ARMv6增加的系统支持

2017-10-17 | rar | 0.4 MB | 次下载 | 1积分

资料介绍

16.2 ARMv6增加的系统支持
  为了满足目前无线网络汽车电子和消费类电子产品不断增长的市场需要,ARM公司在ARMv6中引入新的技术和结构组成,包括增强的DSP支持和对多处理器环境的支持。
  16.2.1 存储管理
  由于在ARMv6体系结构中引入新的存储管理机制,处理器的整体性能得到提高。在新的体系结构中,平均指令预取和数据等待时间大幅度减少,存取过程中Cache命中率显著提高。由于存储机制的改善,系统整体性能的提高达到30%。
  另外,存储系统的改善使系统总线(BUS)使用更加合理,从而减少了系统总线使用频度,降低了系统功耗。
  图16.2显示了ARMv6体系结构存储系统示意图。
  
  图16.2 ARMv6存储系统示意图
  1.ARMv6 L1 Cache
  ARMv6采用“分层”的存储管理,存储层次的最顶层在处理器内核中。该存储器被称为寄存器文件(register file)。这些寄存器被集成在处理器内核中,在系统中提供最快的存储访问。
  ARMv6体系结构处理器使用物理索引Cache(Physically tagged caches),即地址转换在CPU和Cache之间,这样就减少了CPU在运行大的操作系统时由于上下文切换而带来的系统开销。使用这种物理Cache,可以使CPU的整体性能提高近20%。
  为了减少在内容转换时,刷新Cache的CPU开销,ARMv6将L1 Cache构建为使用物理寻址的存储系统。系统中设有TCM作为物理可寻址的快速访问内存,存在于存储系统中,作为Cache的补充。无论Cache还是TCM,都可以配置为指令和数据分离的Harvard架构或指令和数据统一的冯·诺依曼架构。另外,L1 DMA子系统可以使数据在没有CPU参与的情况下,直接和TCM进行数据传输。
  2.页表格式
  在ARMv6体系结构中,页表格式也发生了变化。图16.3显示了新的一级页表格式。
  ARMv6增加的系统支持
  图16.3 ARMv6页表格式
  协处理器CP15中的XP-bit可以指定是否使用这种新的页表格式。如果不设置该位,则系统继续使用ARMv5架构的页表格式。
  从图16.3可以看出,新的页表格式增加了以下特性:
  · XN:从不执行位(execute never bit)。
  · nG:非全局地址映射位(not Global bit for address matching)。
  应用程序空间指示ASID(Application Space Identifier)是ARMv6体系中增加的又一关键特性。当nG位置位时,地址转换使用虚拟地址和ASID相结合的方法以减少上下文切换的时间。同时,应用程序空间指示提供了一种任务可知调试方法(task-aware debugging)。
  有关ARMv6存储系统的详细内容请参阅ARM相关文档。
  3.增加的页表基地址寄存器
  为了提高地址转换的处理速度,ARMv6体系结构中增加了一个新的页表基地址寄存器,以存储二级页表的基地址。CP15同时支持TTBR0和TTBR1。专门的控制寄存器用来保存用户设定的整数N,N的取值范围为0~7。当N的值不等于0时,0~232-N的地址空间使用TTBR0,而其他空间使用TTBR1进行传输控制。一级页表根据N取值的不同,占有128bytes~16KB存储空间。
  16.2.2 多处理单元支持
  由于片上系统Soc结构的复杂化,ARM内核现在经常被用于有多个处理单元的设备,这些处理单元竞争使用系统的共享资源。为了满足多处理单元任务间同步的需要,Load/Store互斥指令引入到新的ARMv6体系结构中来。新指令包括:
  · LDREX:加载互斥指令。
  · STREX:存储互斥指令。
  LDREX指令从存储器中装载一个值到寄存器,在处理这个数据时,不会有任何其他因素改变该值。STREX指令存储一个值到寄存器,并返回一个指示值。
  16.2.3 异常处理和中断
  ARMv6体系结构提供了对向量中断(vectored Interrupt)的支持。向量中断控制器(VIC,Vectored Interrupt Controller)由CP15的寄存器1中的VE – bit来控制。当向量中断控制器使能时,该控制器可以向CPU提供发生中断的向量。
  另外,在ARMv6的体系结构中,程序状态寄存器CPSR扩展了A位来控制Abort异常。这种机制类似于程序状态寄存器CPSR中I和F bit对IRQ和FIQ的控制。
  操作系统通常在堆栈中保存一次中断或异常处理的返回状态。ARMv6增加了新的指令来提高这类操作的效率。这种操作在中断/调度程序驱动系统中,出现的频率是很高的。这些新增加的指令包括:
  · SRS:保存返回状态在特定模式的堆栈中。
  · RFE:异常返回。
  · CPSID/CPSIE:改变处理器状态,开中断或关中断。
  16.2.4 混和大小端支持
  AMRv6体系结构中增加了同时处理大端和小端数据的能力。新增加了指令SETEND来设置一段代码处理数据的字节排列方式,另外还增加了一些单独的处理指令来提高在混和大小端环境下的处理效率。
  指令SETEND的标准格式如下:
  SETEND《endian_specifier》
  该指令根据参数《endian_specifier》的值来改变默认的数据端格式。
  SETEND指令的设置直接和程序状态寄存器CPSR中新增加的E位相对应。E位对数据大小端的控制如图16.4所示。
下载该资料的人也在下载 下载该资料的人还在阅读
更多 >

评论

查看更多

下载排行

本周

  1. 1DC电源插座图纸
  2. 0.67 MB   |  2次下载  |  免费
  3. 2AN158 GD32VW553 Wi-Fi开发指南
  4. 1.51MB   |  2次下载  |  免费
  5. 3AN148 GD32VW553射频硬件开发指南
  6. 2.07MB   |  1次下载  |  免费
  7. 4AN111-LTC3219用户指南
  8. 84.32KB   |  次下载  |  免费
  9. 5AN153-用于电源系统管理的Linduino
  10. 1.38MB   |  次下载  |  免费
  11. 6AN-283: Σ-Δ型ADC和DAC[中文版]
  12. 677.86KB   |  次下载  |  免费
  13. 7SM2018E 支持可控硅调光线性恒流控制芯片
  14. 402.24 KB  |  次下载  |  免费
  15. 8AN-1308: 电流检测放大器共模阶跃响应
  16. 545.42KB   |  次下载  |  免费

本月

  1. 1ADI高性能电源管理解决方案
  2. 2.43 MB   |  450次下载  |  免费
  3. 2免费开源CC3D飞控资料(电路图&PCB源文件、BOM、
  4. 5.67 MB   |  138次下载  |  1 积分
  5. 3基于STM32单片机智能手环心率计步器体温显示设计
  6. 0.10 MB   |  130次下载  |  免费
  7. 4使用单片机实现七人表决器的程序和仿真资料免费下载
  8. 2.96 MB   |  44次下载  |  免费
  9. 53314A函数发生器维修手册
  10. 16.30 MB   |  31次下载  |  免费
  11. 6美的电磁炉维修手册大全
  12. 1.56 MB   |  24次下载  |  5 积分
  13. 7如何正确测试电源的纹波
  14. 0.36 MB   |  17次下载  |  免费
  15. 8感应笔电路图
  16. 0.06 MB   |  10次下载  |  免费

总榜

  1. 1matlab软件下载入口
  2. 未知  |  935121次下载  |  10 积分
  3. 2开源硬件-PMP21529.1-4 开关降压/升压双向直流/直流转换器 PCB layout 设计
  4. 1.48MB  |  420062次下载  |  10 积分
  5. 3Altium DXP2002下载入口
  6. 未知  |  233088次下载  |  10 积分
  7. 4电路仿真软件multisim 10.0免费下载
  8. 340992  |  191367次下载  |  10 积分
  9. 5十天学会AVR单片机与C语言视频教程 下载
  10. 158M  |  183335次下载  |  10 积分
  11. 6labview8.5下载
  12. 未知  |  81581次下载  |  10 积分
  13. 7Keil工具MDK-Arm免费下载
  14. 0.02 MB  |  73810次下载  |  10 积分
  15. 8LabVIEW 8.6下载
  16. 未知  |  65988次下载  |  10 积分