Cortex M3存储器映射
CortexM3存儲器系統(tǒng)
宗旨:技術(shù)的學(xué)習(xí)是有限的,分享的精神是無限的。
? ? ? ? CM3 只有一個單一固定的存儲器映射。這一點(diǎn)極大地方便了軟件在各種 CM3 單片機(jī)間的移植。
? ? ? ? 存儲空間的一些位置用于調(diào)試組件等私有外設(shè),這個地址段被稱為“私有外設(shè)區(qū)”。私有外設(shè)區(qū)的組件包括:閃存地址重載及斷點(diǎn)單元(FPB),數(shù)據(jù)觀察點(diǎn)單元(DWT),儀器化跟蹤宏單元(ITM),嵌入式跟蹤宏單元(ETM),跟蹤端口接口單元(TPIU), ROM 表。
? ? ? ? CM3的地址空間是 4GB, 程序可以在代碼區(qū),內(nèi)部 SRAM 區(qū)以及外部 RAM 區(qū)中執(zhí)行。但是因?yàn)橹噶羁偩€與數(shù)據(jù)總線是分開的,最理想的是把程序放到代碼區(qū),從而使取指和數(shù)據(jù)訪問各自使用自己的總線,并行不悖。
1、代碼區(qū)
?????? 存放指令和數(shù)據(jù),取指通過指令碼(ICode)總線,數(shù)據(jù)訪問借助數(shù)據(jù)碼(DCode)總線。
2、片上SRAM
? ? ? ?內(nèi)部SRAM 區(qū)的大小是 512MB,用于讓芯片制造商連接片上的 SRAM,這個區(qū)通過系統(tǒng)總線來訪問。在這個區(qū)的下部,有一個 1MB 的區(qū)間,被稱為“位帶區(qū)”。該位帶區(qū)還有一個對應(yīng)的、 32MB 的“位帶別名(alias)區(qū)”,容納了 8M 個“位變量”(對比 8051 的只有 128 個位變量)。位帶區(qū)對應(yīng)的是最低的 1MB 地址范圍,而位帶別名區(qū)里面的每個字對應(yīng)位帶區(qū)的一個比特。位帶操作只適用于數(shù)據(jù)訪問,不適用于取指。通過位帶的功能,可以把多個布爾型數(shù)據(jù)打包在單一的字中,卻依然可以從位帶別名區(qū)中,像訪問普通內(nèi)存一樣地使用它們。位帶別名區(qū)中的訪問操作是原子的。
3、片上外設(shè)
? ? ? ? 512M由片上外設(shè)(的寄存器)使用。這個區(qū)中也有一條 32MB 的位帶別名,以便于快捷地訪問外設(shè)寄存器,用法與內(nèi)部 SRAM 區(qū)中的位帶相同。
4、2個1G空間
? ? ? ? 分別用于連接外部 RAM 和外部設(shè)備,它們之中沒有位帶。兩者的區(qū)別在于外部 RAM 區(qū)允許執(zhí)行指令,而外部設(shè)備區(qū)則不允許。
5、最后0.5G
? ? ? ? 包括了系統(tǒng)級組件,內(nèi)部私有外設(shè)總線 s,外部私有外設(shè)總線 s,以及由提供者定義的系統(tǒng)外設(shè)。
私有外設(shè)總線有兩條:
AHB 私有外設(shè)總線,只用于CM3內(nèi)部的AHB外設(shè),它們是:NVIC, FPB, DWT和ITM。
APB 私有外設(shè)總線,既用于CM3內(nèi)部的APB設(shè)備,也用于外部設(shè)備(這里的“外部”是對內(nèi)核而言)。CM3允許器件制造商再添加一些片上APB外設(shè)到APB私有總線上,它們通過APB接口來訪問。
總結(jié)
以上是生活随笔為你收集整理的Cortex M3存储器映射的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 嵌入式高手之路
- 下一篇: 龙星电脑横机制版软件_龙星电脑横机制版四