打印
[Kinetis]

浅谈FSL Kinetis存储器映射

[复制链接]
597|5
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
energy1|  楼主 | 2015-3-25 20:14 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
  与传统的ARM架构有所不同,自ARMv7以后的Cortex系列(这里只以Cortex-M为例),其内存映射结构发生了很大的变化。首先是ARMv7-M的内存映射是大致框架预定义好的了(即其内存映射已经固定好了,哪个地址范围用使用什么总线支持什么外设等都已经在框架里规定好了的,这样带来的一个好处是方便软件在不同的ARM芯片中的移植),其次就是ARMv7-M的存储器系统支持所谓的“位带”(Bitband),可以方便实现“位”的原子操纵(这个“位带”概念解释起来很麻烦,有兴趣的可以网上搜些资料学习一下,这里就不展开说了),还有就是支持非对齐访问、互斥访问和大小端配置(大小端这个真的很重要,初手们应该好好理解这个概念,今年找工作的笔试题几乎每个公司都问到了)。另外虽然其内存映射是已经预定义好的,但由于是粗制的框架形式,依然允许不同的半导体厂商灵活分配存储器空间,生产出不同特色的MCU,Kinetis就是其中之一,下面就以Cortex-M4的Kinetis为例说说其内存映射的安排,继续以图为例,细看图上文字说明:

相关帖子

沙发
energy1|  楼主 | 2015-3-25 20:15 | 只看该作者



使用特权

评论回复
板凳
energy1|  楼主 | 2015-3-25 20:15 | 只看该作者
这里有个概念需要细说一下,即Write-Back和Write-through(这部分摘自ARM CM3 权威指南)。其中写回(即Write-Back)是指写入的数据先逗留在缓存中,待到必要的时候在落实到最终的目的地,即实现Cache的功能,利于改善数据传送的效率,减少主存储器的访问操作;而Write-through(即写通),指绕够cache,直接落实到目的存储器,写操作立即生效,常用于和片上外设或者其他处理器共享内存中,怎么样是不是想到了“volatile”这个关键字了,对了,他们两个就是对应的,即用Volatile声明的变量时放在写通区RAM里的,这回对上了吧,哈哈~

使用特权

评论回复
地板
598330983| | 2015-3-27 21:59 | 只看该作者
非常感谢分享

使用特权

评论回复
5
598330983| | 2015-3-27 21:59 | 只看该作者
这么好的内容,以前为见过

使用特权

评论回复
6
FSL_TICS_ZJJ| | 2015-4-10 15:39 | 只看该作者
非常感谢你关于Kinetis的经验分享 !

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

94

主题

422

帖子

10

粉丝