FX3 的 memory, 基本上可以分成三類, D-TCM/I-TCM/System memory. TCM 是 Tightly-coupled memory 的縮寫, 它是 low-latency memory, 可以提供快速的記憶體存取.
D-TCM
D-TCM 是資料 (data) 用的 TCM. FX3 有 8 K 的 D-TCM. SDK 預設把這一塊記憶體, 分配給系統的堆疊.
modes | address | size | |
SYS MODE STACK | 0x10000000-0x10000800 | 2 K | |
ABT MODE STACK | 0x10000800-0x10000900 | 256 B | |
UND MODE STACK | 0x10000900-0x10000A00 | 256 B | |
FIQ MODE STACK | 0x10000A00-0x10000C00 | 512 B | |
IRQ MODE STACK | 0x10000A00-0x10001000 | 1 K | |
SVC MODE STACK | 0x10000A00-0x10002000 | 4 K | |
I-TCM
I-TCM 是 instruction TCM. FX3 有 16 K 的 I-TCM. SDK 預設把這一塊記憶體, SDK 主要分配給 Interrupt Handler, 以及 Exception Vector.
usage | address | size | |
Execption Vector | 0x00000000-0x00000100 | 256 B | Fixed |
Interrupt Handler | 0x00000100-0x00004000 | 16 K – 256 B | |
System memory
不同的 FX3 型號, system memory 的 size 可能有所不同, 有 256K/512K 的差別. 以下以 512 K 作說明.
usage | address | size | |
DMA descriptor | 0x40000000-0x40003000 | 12 K | Fixed |
Code Area | 0x40003000-0x40030000 | 180 K | |
Data Area | 0x40030000-0x40037000
0x40030000-0x40038000 | 28 K
32 K | (with Compiler Heap)
(without Compiler Heap) |
Compiler Heap | 0x40030000-0x40037000 | 4 K | (if used) |
RTOS Heap | 0x40038000-0x40040000 | 32 K | |
DMA Buffer Area | 0x40040000-0x40080000 | 256 K | |
沒有留言:
張貼留言
請提供您寶貴的意見