1. 存儲器和總線架構
1.1 系統架構
I總線:
此總線用于將 Cortex?-M4F 內核的指令總線連接到總線矩陣。內核通過此總線獲取指令。
此總線訪問的對象是包含代碼的存儲器(內部 Flash/SRAM 或通過 FSMC 的外部存儲器)。
D總線:
此總線用于將 Cortex?-M4F 數據總線和 64 KB CCM 數據 RAM 連接到總線矩陣。內核通過此總線進行立即數加載和調試訪問。此總線訪問的對象是包含代碼或數據的存儲器(內部Flash 或通過 FSMC 的外部存儲器)
注意:
CCM(Core Coupled Memory)是給F4內核專用的全速64KB RAM, 它們沒有經過總線矩陣, F4內核與之直接相連, 地址空間在0x1000_0000 ~ 0x1000_FFFF。可以用作堆棧以及高速運算的數據緩存。
參考應用:CCM中移植FreeRTOS
s:總線:
此總線用于將 Cortex?-M4F 內核的系統總線連接到總線矩陣。此總線用于訪問位于外設或 SRAM 中的數據。也可通過此總線獲取指令(效率低于 ICode)。此總線訪問的對象是112 KB、 64 KB 和 16 KB 的內部 SRAM、包括 APB 外設在內的 AHB1 外設、 AHB2 外設以及通過 FSMC 的外部存儲器
S3,S4:DMA存儲器總線
此總線用于將 DMA 存儲器總線主接口連接到總線矩陣。 DMA 通過此總線來執行存儲器數據的傳入和傳出。此總線訪問的對象是數據存儲器:內部 SRAM( 112 KB、 64 KB、 16 KB)以及通過 FSMC 的外部存儲器。
S5:DMA外設總線:
此總線用于將 DMA 外設主總線接口連接到總線矩陣。 DMA 通過此總線訪問 AHB 外設或執行存儲器間的數據傳輸。此總線訪問的對象是 AHB 和 APB 外設以及數據存儲器:內部SRAM 以及通過 FSMC 的外部存儲器。
S6:以太網 DMA 總線
此總線用于將以太網 DMA 主接口連接到總線矩陣。以太網 DMA 通過此總線向存儲器存取數據。此總線訪問的對象是數據存儲器:內部 SRAM( 112 KB、 64 KB 和 16 KB)以及通過FSMC 的外部存儲器。
S7: USB OTG HS DMA 總線
此總線用于將 USB OTG HS DMA 主接口連接到總線矩陣。 USB OTG DMA 通過此總線向存儲器加載/存儲數據。此總線訪問的對象是數據存儲器:內部 SRAM(112 KB、 64 KB 和 16 KB)以及通過 FSMC 的外部存儲器。
AHB、APB總線圖:
結合以上兩張圖可見:GPIO由AHB1控制,DMA1可以訪問TIM2、3、4、5、12、13;DMA2訪問GPIO(因為在AHB1總線上)
1.2.存儲器映射
存儲器本身不具有地址信息,它的地址是由芯片廠商或用戶分配,給存儲器分配地址的過程就稱為存儲器映射,具體見圖 5-5。 如果給存儲器再分配一個地址就叫存儲器重映射
模塊0:FLASH、CCM等
模塊1:SRAM1、SRAM2、SRAM3(根據圖1,以太網和AHB總線能訪問SRAM1\2\3,并且支持并發訪問,即CPU讀寫SRAM1時,以太網可讀寫SRAM2)
外設地址APB1、APB2、AHB1可以詳細查找 stm32F4xx中文參考手冊
1.3、自舉配置
嵌入式自舉程序模式用于通過以下串行接口重新編程 Flash:
● USART1(PA9/PA10)
● USART3( PB10/11 和 PC10/11)
● CAN2(PB5/13)
● USB OTG FS(PA11/12) 從設備模式( DFU:器件固件升級)。
編輯:hfy
-
FlaSh
+關注
關注
10文章
1640瀏覽量
148307 -
存儲器
+關注
關注
38文章
7519瀏覽量
164085 -
總線
+關注
關注
10文章
2894瀏覽量
88223
發布評論請先 登錄
相關推薦
評論