第6章 存储器系统.ppt

  1. 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
* 存储器系统 5. 存储器系统 5.1 存储系统功能概览 存储器映射是预定义的。 CM3的存储器系统支持所谓的“位带”(bit-band)操作。 CM3的存储器系统支持非对齐访问和互斥访问。 CM3的存储器系统支持小端配置和大端配置。 * 5. 存储器系统 CM3的 地址空间是4GB * 5.2 存储器映射 GB 4 5. 存储器系统 代码区:程序可以在代码区(512MB); 内部SRAM区:大小512MB,用于让芯片制造商连接片上的SRAM,这个区通过系统总线来访问。 一个1MB的区间,被称为“位带区”。 该一个对应的、32MB的“位带别名(alias)区”,容纳了8M个“位变量”。位带别名区里面的每个字对应位带区的一个比特。位带操作只适用于数据访问,不适用于取指。位带别名区中的访问操作是原子的。 * 5.2 存储器映射 5. 存储器系统 片上外设区:一个512MB范围。有一条32MB的位带别名,以便于快捷地访问外设寄存器,可以方便地访问各种控制位和状态位。要注意的是,外设区内不允许执行指令。 * 5.2 存储器映射 5. 存储器系统 片外外设、片外RAM:两个1GB的范围,分别用于连接外部RAM和外部设备,它们之中没有位带。两者的区别在于外部RAM区允许执行指令,而外部设备区则不允许。 * 5.2 存储器映射 5. 存储器系统 系统区 系统级组件,内部私有外设总线,外部私有外设总线,以及由提供者定义的系统外设。 私有外设总线有两条: AHB私有外设总线,只用于CM3内部的AHB外设(NVIC, FPB, DWT和ITM)。 APB私有外设总线,既用于CM3内部的APB设备,也用于内核外部设备。CM3允许器件制造商再添加一些片上APB外设到APB私有总线上,它们通过APB接口来访问。 * 5.2 存储器映射 5. 存储器系统 未用的提供商指定区:可通过系统总线来访问,但是不允许在其中执行指令。 * 5.2 存储器映射 5. 存储器系统 CM3在定义了存储器映射之外,还为存储器的访问规定了4种属性,分别是: 可否缓冲(Bufferable) 可否缓存(Cacheable) 可否执行(Executable) 可否共享(Sharable) * 5.3 存储器的各种访问属性 写回(Write Back): 写入的数据先逗留在缓存中,待到必要时再落实到最终目的地,用于改善数据传送的效率,减少对访问主存储器的访问操作。 写通(Write Through): 写操作“穿透”中途的缓存,直接落入最终的存储器目的地址中,使写操作的结果立即生效。 5. 存储器系统 1. 代码区(0x0000_0000- 0x1FFF_FFFF)。该区是可以执行指令的,缓存属性为 WT(“写通”,Write Through),即不可以缓存。此区允许布设数据存储器。在此区上的数据操作是通过数据总线接口的(读数据使用 D-Code,写数据使用 System),且在此区上的写操作是缓冲的。 2. SRAM区(0x2000_0000 – 0x3FFF_FFFF)。此区用于片内SRAM,写操作是缓冲的,并且可以选择WB-WA(Write Back, Write Allocated)缓存属性。此区可以执行指令,以允许把代码拷贝到内存中执行——常用于固件升级等维护工作。 * 5.3 存储器的各种访问属性 5. 存储器系统 3. 片上外设区(0x4000_0000 – 0x5FFF_FFFF)。该区用于片上外设,因此是不可缓存的,也不可以在此区执行指令。 4. 外部RAM区的前半段(0x6000_0000 - 0x7FFF_FFFF)。该区可用于布设片上RAM或片外RAM,可缓存(缓存属性为WB-WA),并且可以执行指令。 5. 外部RAM区的后半段(0x8000_0000 – 0x9FFF_FFFF)。除了不可缓存(WT)外,同前半段。 * 5.3 存储器的各种访问属性 5. 存储器系统 6. 外部外设区的前半段(0xA000_0000 – 0xBFFF_FFFF)。用于片外外设的寄存器,也用于多核系统中的共享内存(需要严格按顺序操作,即不可缓冲)。该区也是个不可执行区。 7. 外部外设区的后半段(0xC000_0000 – 0xDFFF_FFFF)。目前与前半段的功能完全一致。 8. 系统区(0xE000_0000 – 0xFFFF_FFFF)。此区是私有外设和供应商指定功能区。此区不可执行代码。系统区涉及到很多关键部位,因此访问都是严格序列化的(不可缓存,不可缓冲)。而供应商指定功能区则是可以缓存和缓冲的。 * 5.3 存储器的各种访问属性 5. 存储器系统 CM3有一个缺省的存储访问许可,它能防

文档评论(0)

shuwkb + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档