firelizzard
New member
As far as I can tell, the actual memory map is as follows:
Type (len): start address in hex
-------------------------------
Flash (128K): 0000,0000
FlexNVM (32K): 1000,0000
FlexRAM (2K): 1400,0000
SRAM (16K): 1FFF,E000
Bitband (256K): 2200,0000
The Flash and SRAM sections make sense as far as the specs go (128K Flash, 16K RAM, 2K EEPROM). The length of the FlexRAM suggests that it is the 'EEPROM'. Since the Bitband is actually the SRAM_U Bitband, it's length makes sense (8K * 32).
For those who don't know, the Bitband is a specially address space. It is aliased to the upper half of the SRAM (starting at 2000,0000, 8K in length). However, it is not byte-for-byte aliased. Every 32-bit location in the Bitband is aliased to a single bit in the upper SRAM. Setting or clearing the least significant bit of the Bitband location sets or clears the corresponding bit of the upper SRAM. The upper 31 bits of Bitband locations is unused.
My question is, what are FlexNVM and FlexRAM? Are there actual 32K and 2K blocks of memory on the chip? Are they aliased to Flash, to SRAM, somewhere else?
P.S.: Here's a memory map with ranges
Type: Start - End
Flash: 0000,0000 - 0001,FFFF
FlexNVM: 1000,0000 - 1007,FFFF
FlexRAM: 1400,0000 - 1400,07FF
SRAM_L: 1FFF,EFFF - 1FFF,FFFF
SRAM_U: 2000,0000 - 2000,3FFF
Bitband: 2200,0000 - 2203,FFFF
Type (len): start address in hex
-------------------------------
Flash (128K): 0000,0000
FlexNVM (32K): 1000,0000
FlexRAM (2K): 1400,0000
SRAM (16K): 1FFF,E000
Bitband (256K): 2200,0000
The Flash and SRAM sections make sense as far as the specs go (128K Flash, 16K RAM, 2K EEPROM). The length of the FlexRAM suggests that it is the 'EEPROM'. Since the Bitband is actually the SRAM_U Bitband, it's length makes sense (8K * 32).
For those who don't know, the Bitband is a specially address space. It is aliased to the upper half of the SRAM (starting at 2000,0000, 8K in length). However, it is not byte-for-byte aliased. Every 32-bit location in the Bitband is aliased to a single bit in the upper SRAM. Setting or clearing the least significant bit of the Bitband location sets or clears the corresponding bit of the upper SRAM. The upper 31 bits of Bitband locations is unused.
My question is, what are FlexNVM and FlexRAM? Are there actual 32K and 2K blocks of memory on the chip? Are they aliased to Flash, to SRAM, somewhere else?
P.S.: Here's a memory map with ranges
Type: Start - End
Flash: 0000,0000 - 0001,FFFF
FlexNVM: 1000,0000 - 1007,FFFF
FlexRAM: 1400,0000 - 1400,07FF
SRAM_L: 1FFF,EFFF - 1FFF,FFFF
SRAM_U: 2000,0000 - 2000,3FFF
Bitband: 2200,0000 - 2203,FFFF