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

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

3天内不再提示

关于ARM 处理器的两种主要缓存系统

454398 来源: ARM 作者: ARM 2021-06-18 17:02 次阅读

为了从 ARM710a 和 StrongARM SA-110 等处理器获得最大性能,必须启用缓存。例如,应用程序可以通过系统上的底层微内核来完成这项工作。但是,如果没有这样的内核,应用程序将不得不自己启用缓存。

ARM 处理器上使用了两种主要的缓存系统。这些都是:

内存管理单元(例如 ARM610、ARM710a、SA-110)

保护单元(例如 ARM940T)

本应用笔记提供了一些示例代码,用于在两种类型的 ARM 处理器上启用缓存,并概述了 ARMulator 的 PageTables 模块。它还讨论了:

@armasm@ 和 @tasm@ 中的重复组装

@armasm@ 和 @tasm@ 条件汇编

@armasm@ 和 @tasm@ 中的宏

带有 C 编译器的内联汇编器

内联函数

内存管理单元 (MMU)

内存管理单元提供完整的虚拟内存系统。有关更完整的说明,请参阅 ARM 体系结构参考手册 (ARM DDI 0100)。简而言之,它使用片外页表向处理器描述:

虚拟到物理地址映射

访问权限

缓存和写缓冲区控制。

支持三种页面大小(1MB、64kB 和 4kB)。(还提供了 16kB 和 1kB 的子页面用于访问控制。)“域”的附加系统用于在多线程环境中提供有效的访问保护。

例如,该系统允许多个具有按需分页和交换的虚拟地址空间。UNIX 操作系统的风格已经移植到使用这种内存管理单元的 ARM 计算机上。

该系统的优点是:

以细粒度完全控制内存

基于域的保护

虚拟到物理地址转换。

主要缺点是它需要内存页表(如果不启用 MMU,则无法启用缓存)。

保护单元 (PU)
保护单元为更嵌入式的环境提供访问和缓存控制。有关更完整的说明,请参阅 ARM940T 数据表 (ARM DDI 0092)。

简而言之,保护单元有一组片上寄存器,其中包含以下描述:

访问权限

最多八个(可编程)内存区域的缓存和写缓冲区控制。

该系统允许在例如嵌入式应用程序中使用基本的内存保护和缓存控制。

该系统的优点是:

访问控制完全在片上(不需要任何片外表)

提供四级访问控制、缓存和写缓冲区控制

对指令和数据缓存的单独控制。

缺点是:

区域数量少

区域大小和对齐的限制。

例子

内存布局

尽管两个系统不同,但都使用协处理器 15 来控制系统。两个系统都有足够的通用功能来区分正在使用的系统。例如,考虑图 1 所示的内存映射。

pYYBAGDMYMWACIZaAAEvvSfH-vM570.png

底部的 16MB 内存被标记为可缓存。这是应用程序代码和堆的基础。

紧邻 2GB 的 1MB 内存也被标记为可缓存,因为这是放置堆栈的地方。

其余内存既不可缓存也不可缓冲。真实系统也可能将该内存标记为“不可访问”(中止生成)。

编辑:hfy

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • ARM处理器
    +关注

    关注

    6

    文章

    360

    浏览量

    41732
收藏 人收藏

    评论

    相关推荐

    ARM处理器ARM处理器工作模式

    ARM处理器状态ARM处理器的工作状态一般有两种,并可在两种状态之间切换:第一
    发表于 01-27 11:13

    ARM处理器ARM处理器工作模式

    ARM处理器状态ARM处理器的工作状态一般有两种,并可在两种状态之间切换:第一
    发表于 01-27 14:19

    两种ARM 64位处理器学习平台

    处理器,且有pin to pin兼容的Cortex-A9 架构的S5P4418可以应用于多种场合满足不同需求。市面上有很多使用这款芯片的板子,通过综合对比最终确定选择华清远见的产品,但是在同时推出的
    发表于 10-26 15:47

    ARM处理器工作模式

    ,字需要4字节对齐,半字需要2字节对齐。注:所谓的指令长度是一条完整的指令的长度,而不是单纯的mov这3个字母长度。二、ARM体系的CPU有两种工作状态1、ARM状态:处理器执行32位
    发表于 11-06 10:43

    ARM Cortex-A9处理器

    类别:嵌入式系统处理器知识产权许可商ARMHoldingsplc已经成功开发出双内核Cortex-A9处理器设计(被称为Osprey)的个实现。Cortex-A9
    发表于 09-06 09:27

    ARM920T高缓存处理器有哪些性能参数和特性?

    对调试信道的访问。CP15:系统控制处理器,提供 16 个额外寄存来配置与控制缓存、MMU、系统保 护、时钟模式及其他系列选项。
    发表于 09-26 09:43

    ARM920T处理器技术参考手册

    简单的总线接口,允许您围绕它设计自己的缓存和内存系统ARM9TDMI系列微处理器支持32位ARM和16位Thumb指令集,允许您在高性能和
    发表于 08-02 13:05

    ARM处理器的工作模式

    ARM处理器的工作模式 ARM处理器状态    ARM处理器
    发表于 03-01 15:41 30次下载

    什么是处理器缓存

    什么是处理器缓存处理器缓存: Cache(高速缓冲存储)是位于CPU与主内存间的一容量较
    发表于 02-04 12:02 882次阅读

    ARM,ARM处理器是什么意思

    ARM,ARM处理器是什么意思 ARM处理器简介 ARM(Advanced RISC Mach
    发表于 03-26 10:53 5273次阅读

    ARM处理器的2工作状态和7工作模式及37个寄存介绍

    在安卓支持三类处理器ARM、Intel和MIPS里面,ARM无疑被使用得最为广泛。那么ARM处理器到底是怎样工作的呢?本文
    发表于 04-23 16:34 1.5w次阅读

    arm的协处理器有几个?ARM处理器详解

    本文首先介绍了ARM处理器特点与主要模式,其次介绍了arm的协处理器有几个,最后介绍了CP14和CP15
    发表于 04-24 15:34 8962次阅读

    Arm处理器入侵服务两种途径

    至少有两种(可能还有更多种)途径可以让Arm处理器在数据中心中与现有的Intel和AMD X86处理器竞争。
    的头像 发表于 03-01 19:22 2767次阅读

    概述ARM处理器的工作状态和工作模式

    为了能够体现ARM的特点和性能,ARM处理器两种工作状态和7工作模式。
    发表于 07-08 15:29 9次下载
    概述<b class='flag-5'>ARM</b><b class='flag-5'>处理器</b>的工作状态和工作模式

    在FPGA和DSP两种处理器之间实现SRIO协议的方法

    摘要: 现代 信号 处理系统通常需要在不同处理器之间实现高速数据 通信 ,SRIO协议由于高效率、低延时的特性被广泛使用。本文研究了在 FPGA 和 DSP 两种处理器之间实现SRIO
    的头像 发表于 03-20 15:00 2109次阅读