快速学Arm——存储器加速模块(MAM)2

发布者:幸福时光最新更新时间:2021-01-15 来源: eefocus关键字:Arm  存储器  加速模块 手机看文章 扫描二维码
随时随地手机看文章

我们再来看一下LPC2300 ARM的MAM工作模式.LPC2300系列ARM允许用户设置MAM的加速级别,使芯片应用于某些对功耗和可预见性有要求的场合.MAM定义了如下的三种工作模式:

快速学Arm(36)--存储器加速模块(2)

从图中可以看出MAM功能会使系统耗费更多的能量,但预见性会提高.


MAM部分使能:


CPU顺序执行时所需要的代码由缓冲区提供,但是成像跳转后需要对Flash进行读操作.此外,若数据缓冲区中的数据可用,则从其中获取数据.但是,为了保证可预见性,同时也为了不增加功耗,MAM还是会虚拟一次对Flash的读操作.该模式下,CPU具有较好信号,较低的功耗,数据的可预见性也比较好.至于是如虚拟的,我目前还不清楚.


MAM完全使能:


CPU对需要的任何代码或数据,都会尝试先从喊出去中读取.如果存在,那么从缓冲区执行该代码或对该数据执行访问,否则对Flash执行读操作.该模式下,CPU具有最好的性能,但是系统的功耗身高,可预见性降低.


模式配置:


在复位后,MAM默认问禁止状态.用户可以随时将MAM打开或关闭.通常,我们都会把加速设置为完全使能,以使程序最高速度运行.而运行某些要求更坚强定时的代码时,我们可以关闭或部分关闭使能MAM,以较慢但可预测的速度运行代码.


MAM的寄存器只有两个,分别是MAM控制寄存器(MAMCR),MAM定时寄存器(MAMTIM):


.MAMCR:用于配置MAM的操作模式


.MAMTIM:用于配置访问片内Flash存储器的CCLK周期数.


只须用好这两个寄存器即可完成对MAM的各项操作.


在改变MAM定时值是须先光MAM.


然后将新值写入MAMTIM.


最后将需要的模式的对应值写入MAMCR,打开MAM.


在编程和擦除操作过程中不运行访问Flash存储器,若CPU发出访问Flash请求,MAM会强制CPU等待.此时,用户许注意看门狗溢出的可能.


为了防止从Flash存储器中读取无效的数据,Flash编程或擦除操作开始后MAM将不缓冲任何数据.所以,Flash操作结束后,任何Flash读操作都将启动新的取指操作.


Flash编程不受存储器加上模块的控制,而是作为一个独立的功能另行处理.

关键字:Arm  存储器  加速模块 引用地址:快速学Arm——存储器加速模块(MAM)2

上一篇:快速学Arm——存储器加速模块(1)
下一篇:ARM与不同位宽存储器的地址线错位接口 , 外部总线接口深

推荐阅读最新更新时间:2024-11-11 02:25

CPU漏洞惊动美国政府:Intel/ARM/微软/谷歌集体遭质疑
    Intel等厂家CPU处理器曝出的两大高危漏洞让整个行业风中凌乱,美国政府也对Intel、ARM、微软、Google、亚马逊等巨头的做法提出了质疑。   其实早在2017年6月份,Intel等行业巨头就被告知了漏洞的存在,然后按照行业惯例,波及的主要企业开始秘密联合起来,在暗中开始调查修复。   据说,巨头们原计划在今年1月9日正式向全球通告漏洞情况,但提前被媒体捅了出来,集体措手不及。   不过从目前的情况看,即便等到1月9日,漏洞也不可能及时修复,恐慌仍然不可避免。   对于将如此可怕漏洞隐瞒长达半年之久,最终导致行业一片混乱的状况,美国众议院也看不下去了,在一封公开信中提出质疑,并披露了美国科技行业众
[半导体设计/制造]
ARM aarch64汇编学习笔记(九):使用Neon指令(一)
NEON是一种基于SIMD思想的ARM技术。 SIMD, Single Instruction Multiple Data,是一种单条指令处理多个数据的并行处理技术,相比于一条指令处理一个数据,运算速度将会大大提高。 ARMv8 有31 个64位寄存器,1个不同名字的特殊寄存器,用途取决于上下文, 因此我们可以看成 31个64位的X寄存器或者31个32位的W寄存器(X寄存器的低32位) ARMv8有32个128位的V寄存器,相似的,我们同样可以看成是32个32位的S寄存器或者32个64位的D寄存器。 也可以用作32个64bit D0-D31或32个32bit S0-S31 或32个 16bit H0-h31 或 32个
[单片机]
<font color='red'>ARM</font> aarch64汇编学习笔记(九):使用Neon指令(一)
传苹果考虑加入美日韩联盟,出资东芝存储器业务
 东芝(Toshiba)21日宣布,决定由日本官民基金“产业革新机构(INCJ)”、美国投资基金以及韩国SK Hynix等所筹组的“日美韩联盟”作为半导体事业子公司“东芝存储器(Toshiba Memory Corporation、以下简称TMC)”的优先交涉对象,而该日美韩联盟将有强大的生力军加入?据悉苹果(Apple)考虑加盟。下面就随嵌入式小编一起来了解一下相关内容吧。 另外,因日本政府打出“忧心技术外流”大旗、导致台湾鸿海未能被选为优先交涉对象,但为什么同样身为“海外企业”的SK却能被选中?对此东芝有作出说明。 苹果可能将加入“日美韩联盟”,主因苹果iPhone等产品使用了大量的存储器,而若能对TMC进行出资、就有望更易
[嵌入式]
专访:ARM在可穿戴设备上采取什么策略?
   可穿戴设备无疑是今年科技产业界最红的话题之一,市场上已经出现各种智能手表、健身腕带等等相关产品,而且参与厂商不乏Samsung、LG以及Sony等智能手机大品牌。不久前笔者有机会与正锁定可穿戴设备市场的ARM移动部门营销经理David Maidment 见面,他分享了对于此一新兴市场的几点看法。 ARM移动部门营销经理David Maidment 问:ARM的技术将如何呈现在新一代的可穿戴设备市场上? Maidment答:我们正在与各家原厂、芯片业者、服务供货商等寻求采用那技术的对象合作,主要锁定低功耗的ARM IP,包括Cortex M、Cortex A 系列处理器,Mali绘图处理器,以及可提供可穿戴设备重要安全性
[手机便携]
更多3D Xpoint存储器细节曝光
    随着3D XPoint记忆体晶片脱离研究阶段进入量产,英特尔(Intel)与美光(Micron)合资记忆体制造商IM Flash的共同执行长Guy Blalock在一场于美国加州举行的晶片业高层年会上,透露了更多有关该创新记忆体技术的细节,以及其产品蓝图与制作上的困难度。 英特尔与美光是在去年7月宣布定义了一种新记忆体架构3D XPoint,填补了DRAM与快闪记忆体之间的空隙,以更高的性能与较低的延迟,提供媲美NAND快闪记忆体的密度;Blalock 表示:“硫系(Chalcogenide)材料与Ovonyx公司开发的开关(switch),是这种起源可回溯至1960年代的记忆体技术之神奇成分。” Blalock 指出,
[手机便携]
常用的汇编指令介绍
注意:此文档会根据学习过程中遇到的ARM汇编指令,持续更新。 LDR汇编指令: LDR指令的格式为: LDR{条件} 目的寄存器, 存储器地址 LDR指令用于从存储器中将一个32位的字数据传送到目的寄存器中。该指令通常用于从存储器 中读取32位的字数据到通用寄存器,然后对数据进行处理。当程序计数器PC作为目的寄存器时, 指令从存储器中读取的字数据被当作目的地址,从而可以实现程序流程的跳转。该指令在程序设 计中比较常用,寻址方式灵活多样,请读者认真掌握。 指令示例: LDR R0, //将存储器地址为R1的字数据读入寄存器R0。 LDR R0, //将存储器地址为R1+R2的字数据读入寄
[单片机]
移植e2fsprogs到arm平台
移植e2fsprogs到arm平台 也就是一般的交叉编译。 由于e2fsprogs通常会用到动态库,这里为了方便起见,采用了静态链接。 这样的话,向arm平台拷贝时,就不需要再关心动态库的问题了。 具体操作过程如下: tar -xzf e2fsprogs-1.42.5.tar.gz cd e2fsprogs-1.42.5 mkdir release cd release/ ../configure --host=arm-linux CC=arm-linux-gcc LDFLAGS=-static make 好了,现在release下面的各个目录下,已经有相应的可执行程序生成了。 将他们直接拷到arm平台下即
[单片机]
15.ARM处理器的启动流程
ARM处理器启动流程涉及三方面的知识: 启动方式 地址布局 启动流程 S3c2440的ARM处理器的启动流程: 2440支持 Nor Flash启动,Nor Flash的大小2MB Nand Flash启动,Nand Flash的大小256MB 所以2440把uboot和kernel、FileSystem放到Nand Flash来启动的 地址布局: Nand Flash Memory Mapping: 上图左边的结果是选择Nor Flash时启动时内存地址的布局,右边是选择Nand Flash启动的内存地址的布局。 开发板上电后,会在地址0处取第一条地址来执行。如果是Nor Flash,0地址就应该安排上Nor
[单片机]
15.<font color='red'>ARM</font>处理器的启动流程
小广播
设计资源 培训 开发板 精华推荐

最新单片机文章
  • 学习ARM开发(16)
    ARM有很多东西要学习,那么中断,就肯定是需要学习的东西。自从CPU引入中断以来,才真正地进入多任务系统工作,并且大大提高了工作效率。采 ...
  • 学习ARM开发(17)
    因为嵌入式系统里全部要使用中断的,那么我的S3C44B0怎么样中断流程呢?那我就需要了解整个流程了。要深入了解,最好的方法,就是去写程序 ...
  • 学习ARM开发(18)
    上一次已经了解ARM的中断处理过程,并且可以设置中断函数,那么它这样就可以工作了吗?答案是否定的。因为S3C44B0还有好几个寄存器是控制中 ...
  • 嵌入式系统调试仿真工具
    嵌入式硬件系统设计出来后就要进行调试,不管是硬件调试还是软件调试或者程序固化,都需要用到调试仿真工具。 随着处理器新品种、新 ...
  • 最近困扰在心中的一个小疑问终于解惑了~~
    最近在驱动方面一直在概念上不能很好的理解 有时候结合别人写的一点usb的例子能有点感觉,但是因为arm体系里面没有像单片机那样直接讲解引脚 ...
  • 学习ARM开发(1)
  • 学习ARM开发(2)
  • 学习ARM开发(4)
  • 学习ARM开发(6)
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

换一换 更多 相关热搜器件
更多往期活动

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved