9.3 In-System Reprogrammable Flash Program Memory
The ATtiny102/ATtiny104 contains 1024 Bytes On-chip In-System Reprogrammable Flash memory for program storage. Since all AVR instructions are 16 or 32 bits wide, the Flash is organized as 512 x 16.
The device Program Counter (PC) is 9 bits wide, thus addressing the 512 program memory locations, starting at 0x000. Memory Programming contains a detailed description on Flash data serial downloading.
Constant tables can be allocated within the entire address space of program memory by using load/store instructions. Since program memory can not be accessed directly, it has been mapped to the data memory. The mapped program memory begins at byte address 0x4000 in data memory. Although programs are executed starting from address 0x000 in program memory it must be addressed starting from 0x4000 when accessed via the data memory.
Timing diagrams of instruction fetch and execution are presented in Instruction Execution Timing section.