
DocID13284 Rev 2 3/564
UM0404 Contents
2.1 Word, byte and bit storage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41
2.2 On-chip Flash . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42
2.3 IRAM and SFR area . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44
2.3.1 System stack . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46
2.3.2 General purpose registers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46
2.3.3 PEC source and destination pointers . . . . . . . . . . . . . . . . . . . . . . . . . . 47
2.3.4 Special function registers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48
2.4 The on-chip XRAM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49
2.4.1 XRAM access via external masters . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50
2.5 External memory space . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50
2.6 Crossing memory boundaries . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51
3 The central processing unit (CPU) . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52
3.1 Instruction pipelines . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54
3.1.1 Sequential instruction processing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55
3.1.2 Standard branch instruction processing . . . . . . . . . . . . . . . . . . . . . . . . . 55
3.1.3 Cache jump instruction processing . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56
3.1.4 Particular pipeline effects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56
3.2 Bit-handling and bit-protection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59
3.3 Instruction execution times . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60
3.4 CPU special function registers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61
3.4.1 The system configuration register SYSCON . . . . . . . . . . . . . . . . . . . . . 62
3.4.2 X-Peripherals control register (XPERCON) . . . . . . . . . . . . . . . . . . . . . . 65
3.4.3 XPERCON and XPEREMU registers . . . . . . . . . . . . . . . . . . . . . . . . . . 66
3.4.4 Emulation dedicated registers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67
3.4.5 The processor status word PSW . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67
3.4.6 The instruction pointer IP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70
3.4.7 The code segment pointer CSP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71
3.4.8 The data page pointers DPP0, DPP1, DPP2, DPP3 . . . . . . . . . . . . . . . 72
3.4.9 The context pointer CP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73
3.4.10 The stack pointer SP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 76
3.4.11 The stack overflow pointer STKOV . . . . . . . . . . . . . . . . . . . . . . . . . . . . 76
3.4.12 The stack underflow pointer STKUN . . . . . . . . . . . . . . . . . . . . . . . . . . . 77
3.4.13 The multiply / divide high register MDH . . . . . . . . . . . . . . . . . . . . . . . . . 78
3.4.14 The multiply / divide low register MDL . . . . . . . . . . . . . . . . . . . . . . . . . . 78
3.4.15 The multiply / divide control register MDC . . . . . . . . . . . . . . . . . . . . . . . 79