3.10.3.1 Program Memory
The composition of the program memory is different for the ATA8510 and the ATA8515.
The program memory of the ATA8510 consists of a 10K words Flash and a 12K words ROM as depicted in the following figure.
The reset vector is located by default at the address 0x0000. The reset vector can be moved to the beginning of the user Flash section (ATA8510) by setting the boot reset fuse (BOOTRST) appropriately. For further details, see the Fuse Low Byte.
The ATA8515 solely implements the firmware ROM, as shown in the following figure. User-defined software extensions are not possible.
In-System Re-programmable Flash Program Memory (ATA8510)
The ATA8510 contains 20-KB on-chip in-system re-programmable Flash memory for program storage. All AVR instructions are 16 or 32 bits wide because the Flash is organized as 10K x 16 bits located in 320 pages (32 words per page).
The program counter (PC) is 15 bits wide, thus addressing the 52 KB program memory locations. The operation of the boot program section and associated boot lock bits for firmware protection are described in detail in Program and Data Memory Lock Bits. In-System Programming contains a detailed description of Flash data serial downloading using the SPI pins.
Constant tables can be allocated within the entire program memory address space (see the LPM – “Load Program Memory” instruction description).
The Flash is provided with internal error correction coding to ensure robust operation. The coding ensures the correction of 1 bit in each program memory word (16-bit).
Timing diagrams for instruction fetch and execution are presented in the Instruction Execution Timing.
Flash programming is only allowed at an ambient temperature between -40°C and +65°C. Reading the Flash does not have this restriction.
Firmware Read-Only Memory (ROM)
The 24 KB ROM provides the firmware functionality of the ATA8510/15, including initialization, self calibration and automatic receiving of multiple channels with configurable parameters. The firmware features are described in System Functional Description.