Ethernut 1.3 Memory Map
The ATmega128 used on Ethernut 1.3 is a member of the AVR family of microcontrollers,
which are Harvard Architecture Machine, where program code and data are stored
separately.
Data Memory
Address |
Description |
0x0000 - 0x001F |
CPU Registers (Note 1) |
0x0020 - 0x005F |
I/O Registers (Note 1) |
0x0060 - 0x00FF |
Extended I/O Registers (Note 1) |
0x0100 - 0x10FF |
Fast Internal RAM, no wait states required |
0x1100 - 0x7FFF |
External RAM, 1 wait state is recommended |
0x8000 - 0x82FF |
Unused, Available for Custom Extensions |
0x8300 - 0x831F |
Ethernet Controller Registers (Note 2) |
0x8320 - 0xFFFF |
Unused, Available for Custom Extensions |
Note 1: See ATmega128 datasheet
Note 2: See RTL8019AS datasheet
Program Memory
Word Address |
Description |
0x0000 - 0x0045 |
Vector Table |
0x0046 - 0xEFFF |
Initialization, RTOS and Application Sections |
0xF000 - 0xF7FF |
Bootloader Section, if BOOTSZ = 00b (Note 1) |
0xF800 - 0xFBFF |
Bootloader Section, if BOOTSZ = 01b (Note 1) |
0xFC00 - 0xFDFF |
Bootloader Section, if BOOTSZ = 10b (Note 1) |
0xFE00 - 0xF7FF |
Bootloader Section, if BOOTSZ = 11b (Note 1) |
Note 1: Available for applications if not used by bootloader.
|