1. 程式人生 > 其它 >i.MX RT1050 Memory Management

i.MX RT1050 Memory Management

i.MXRT1052 支援多種選擇,通過 EMC/SEMC、FlexRAM、FlexSPI 或 SD/eMMC/SDIO 卡介面使用和擴充套件系統記憶體

 

 

 

將 AXI / TCM 介面訊號轉換為 RAM 介面訊號
− 實現 OCRAM、DTCM 和 ITCM 訪問片上 RAM 的多路複用器控制
− 3 個用於 I-TCM、DTCM 和 OCRAM 的整合 RAM 控制器,通過專用匯流排介面
− 片上 RAM 可靈活劃分為 TCM、OCRAM 儲存器
− 3 個電源域分配給專用組或組組以降低功耗
− 時鐘源從 6MHz(預設)到最大 600MHz(對 flexram_clk、ocram_clk 有效)

 

 

Integrated I-TCM and D-TCM controller

 

 

將 TCM 介面訊號轉換為 RAM 訪問訊號
− 64 位 I-TCM 介面和 2x32 位 D-TCM 介面
▪ 支援高達 16MB TCM(I-TCM 和 DTCM)空間
− 支援兩種訪問模式:
▪ 快速模式:1 週期 R/W 訪問(預設)
▪ 等待模式:2 週期 R/W 訪問(可通過 TCM_CTRL 啟用
暫存器)
− 與以相同頻率執行的 M7 Core 的同步介面
− 自動時鐘門控控制以降低功耗

 

將 AXI 介面訊號轉換為 RAM 訪問訊號
− 支援高達 512KB SRAM 的單組控制器
− 包含 2 個獨立控制單元,用於專用 R/W 訪問
− 整合迴圈仲裁器以控制同時 R/W 訪問
在同一個 RAM 銀行
▪ 無需呼叫仲裁器即可同時 R/W 訪問不同的 RAM bank
▪ 針對相同的 RAM bank 時,READ 優先於 WRITE
− 與系統匯流排同步,與匯流排同頻執行
− 允許為 R/W 訪問配置時序引數
▪ 可通過 OCRAM_CTL[3:0] 位中的 IOMUXC_GPR_GPR3 進行配置
▪ 啟用時提供 3 種計時模式:
• R/W 地址流水線 - 來自 AXI 主機的 R/W 地址字延遲 1 個時鐘週期
• 寫入資料流水線 - 來自 AXI 主機的 WRITE 資料字延遲 1 個時鐘週期
• 讀取資料等待狀態 - 2 週期讀取訪問

 

 

 

RAM 陣列分割槽
− ITCM、DTCM 和 OCRAM 的可配置大小(0 至 512kB)
▪ 通過IOMUXC_GPR 暫存器,每個bank 2bits
− 最小的 RAM 分割槽為 32kB,最多可形成 16 個 RAM bank
− 靈活的 RAM 銀行組織(但不允許重疊)
− 根據裝置記憶體對映分割槽產生連續的地址空間
• 訪問控制
− Bank8-15 可以通過硬體熔斷器禁用(最大 RAM 大小為
256KB)
− 當 OCRAM/ITCM/DTCM 訪問超出時產生中斷
配置的 RAM 範圍
− 訪問配置的 OCRAM、ITCM 或
發生 DTCM 地址(在 *_MAGIC_ADDR 暫存器中分配)
− OCRAM、ITCM 和 DTCM 的獨立地址控制
− 基於暫存器設定的讀或寫訪問中斷生成

 

 

 

3 個電源域 PDRET、PDRAM0 和 PDRAM1 支援低功耗模式

− 通過 GPC 和 PGC 單元啟用/禁用電源域
▪ PDRET
• 僅 RAM bank 0 (32kB),除 SNVS 模式外始終開啟
▪ PDRAM0
• RAM bank 1-7 (224kB),通過 GPC_CNTR 暫存器中的 PDRAM0_PGE 位開啟/關閉電源
• 當 PDRAM0_PGE 置位時,PDRAM0 在 ARM 核心斷電時保持活動狀態
▪ PDRAM1
• RAM bank 8-15 (256kB),通過 PGC_MEGA 暫存器中的電源門控控制
• 通過 PGC_MEGA_PDNSCR、PGC_MEGA_PUSCR 暫存器的電源時序時序
• 通過 PGC_MEGA_CTRL 暫存器的電源控制選項,在電源關閉 PDRAM1
向下請求
− 操作模式:
▪ 執行模式 - 所有 RAM 庫都已通電
▪ 保留模式 – 除 Bank0 外,所有 RAM 庫均已斷電
▪ 部分模式 - 8 個 RAM 銀行 (Bank8-15) 可以隨時斷電

 

 

 

 

 

 

配置取決於應用要求
• 高速執行時分割槽很重要
• TCM 可視為單週期 RAM
• TCM 記憶體仍可通過 DMA 訪問
• 使用以下注意事項:
− 關鍵程式碼(向量表、ISR)和程式碼通常只有
核心訪問的應該/可以放在 ITCM 區域
− 資料通常僅由核心(堆疊、堆……)訪問
應該/可以放在 DTCM 區域
− 資料通常由多個匯流排主控器(核心、
DMA) 應放置在 OCRAM 中
− 不太重要的資料可以放在外部 SDRAM 中

ITCM、DTCM 和 OCRAM 的最佳大小需要是
在構建過程中確定和調整