2/320
Table of Contents
320
9
1 GENERAL DESCRIPTION . . . . . . .... . ... .. . . . . .... .... .. . .... .. . . . . . . ... .. . . . . . . 7
1.1 INTRODUCTION . . . . . . . . . . . . . .... . . ... .. ... .. .. . . . . . . . ... .. .. .... . . ... .. . 7
1.1.1 ST9+ Core . . . . . . . . . .... . ... .. . . . . .... .... .. . . . . . . . . . . . . . ... .. . .... . 7
1.1.2 External Memory Interface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
1.1.3 On-chip Peripherals . . . . . . .... . . ... .. ... .. .. . . . . . . . ... .. .. .... . . ... .. . 7
1.2 PIN DESCRIPTION . . .... . ... .. . . ... .. . .... . ... .. .. .. .... . . . ... . . . . . . . . . . 10
1.2.1 Electromagnetic Compatibility (EMC) . . . . ... . . . . . . . . . .... ... . . . . . . . . . . . . 10
1.2.2 I/O Port Alternate Functions .... . . ... .. .... ... . . . . . . . . . . . . . . . . . . . . ... .. 10
1.2.3 Termination of Unused Pins .... . . ... .. .... ... . . . . . . . . . . . . . . . . . . . . ... .. 10
1.2.4 Avoidance of Pin Damage . . . . . . . . . . . . . . . . . .... . . . .... .... .. . . . . . . . . . . 11
1.3 I/O PORTS . . . . . . . . . . . . . . . . . . .... . . ... .. ... .. .. . . . . . . . ... .. .. .... . . ... .. 19
1.4 OPERATING MODES . . . . . .... . ... .. . . . . .... .... .. . .... .. . . . . . . ... .. . .... 24
2 DEVICE ARCHITECTURE . . . . . . . . . . .... . . ... .. ... .. .. . . . . . . . ... .. .. .... . . ... .. 25
2.1 CORE ARCHITECTURE . . . . . . . . . . . . . . . . . . .... ... . . . . . . . . . . . . . . . . . . . . ... .. 25
2.2 MEMORY SPACES . . . . . . . . . . . . . . .... . ... .. .. .. . . . . . . . . . . . . ... . . . .... . ... 25
2.2.1 Register File . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
2.2.2 Register Addressing . . . . . . .... . . ... .. ... .. .. . . . . . . . ... .. .. .... . . ... .. 27
2.3 SYSTEM REGISTERS . . . . . . . . . . . . . . . . . . . . . . . . . .... .... ... . . . . . . . . ... .. . . . 28
2.3.1 Central Interrupt Control Register . . . . . .... . . . ... . . . . . . . . . . . . . ... ... . . . . 28
2.3.2 Flag Register . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .... .... .. . . . . . . . . . . 29
2.3.3 Register Pointing Techniques . . . . . . . . . . . . . . .... . ... ... . . . . . . . . ... .. .. . 30
2.3.4 Paged Registers . . . . .... . ... .. . . . . . ... . ... .. . . ... .. . .... . ... .. . . ... 33
2.3.5 Mode Register . . . . . . .... . ... .. . . . . .... .... .. . .... .. . . . . . . ... .. . .... 33
2.3.6 Stack Pointers . . . . . . . . . . . . . . . . ... . . . . . . . . . ... .. .. ... .. .. . . .. . . ... .. 34
2.4 MEMORY ORGANIZATION . . . . . . . . . . . . . . . .... . . . ... . . . . . . . . . . . . . ... ... . . . . 36
2.5 MEMORY MANAGEMENT UNIT . . . . . . . . . . .... . ... .. . . . . .... . . . . .. . . . . . . . . . . 37
2.6 ADDRESS SPACE EXTENSION . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38
2.6.1 Addressing 16-Kbyte Pages . . . . . . . . . . . . . . . .... . ... ... . . . . . . . . ... .. .. . 38
2.6.2 Addressing 64-Kbyte Segments . . . . . . . . . . . . . . . . . . . . . . . . . . . . .... . . ... .. 39
2.7 MMU REGISTERS . .... .. . .... . ... .. . . ... ... . ... .. . . ... .. . .... . ... .. . . ... 39
2.7.1 DPR[3:0]: Data Page Registers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .... . ... 39
2.7.2 CSR: Code Segment Register . . . . ... .. .... ... . . . ... .. .. .. .. . . . . . . ... .. 41
2.7.3 ISR: Interrupt Segment Register . . . . . . .... . . . ... . . . . . . . . . . . . . ... ... . . . . 41
2.7.4 DMASR: DMA Segment Register . . . . . .... . . . . .. . . . . . . . . . . . . . ... .. . .... 41
2.8 MMU USAGE . . . . . . . . . . . . . . . . . . . . . . . . . . .... . . . ... . . . . . . . . . . . . . ... ... . . . . 43
2.8.1 Normal Program Execution . . . . . . . . . . .... . . . . .. . . . . . . . . . . . . . ... .. . .... 43
2.8.2 Interrupts . . . . . . . . . . . . . . . . . . . . . . . . .... . . . ... . . . . . . . . . . . . . ... ... . . . . 43
2.8.3 DMA . . . . . . . . . . . . . . . . . . .... . . ... .. .... ... . . . . . . . . . . . . . . . . . . . . ... .. 43
3 SINGLE VOLTAGE FLASH & EEPROM . . . . . . . . .... . ... .. . . . . .... . . . ... . . . . . . . . . . 44
3.1 INTRODUCTION . . . . . . . . . . . . . .... . . ... .. ... .. .. . . . . . . . ... .. .. .... . . ... .. 44
3.2 FUNCTIONAL DESCRIPTION . . . . . .... .. . .... . ... .. .. .. .... . . . ... . . . . . . . . . . 45
3.2.1 Structure . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .... . ... 45
3.2.2 Software or Hardware EEPROM Emulation (Device dependent option) . .... . ... 45
3.2.3 Operation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .... . . . .... . ... .. . . ... .. . . . 46
3.3 REGISTER DESCRIPTION . .... . ... .. . . ... ... . ... .. . . ... .. . .... . ... .. . . ... 47
3.3.1 Control Registers . . . . . . . . . . . . . . . . . . . . . . . . .... .... ... . . . . . . . . ... .. . . . 47
3.3.2 Status Registers . . . . . . . . . . . . . . . . . . . . . . . . . .... . . . .... .... .. . .... .. . . . 50
3.4 WRITE OPERATION EXAMPLE . . . . . . . . . . . .... . ... .. . . ... .. . . . . . . ... .. . . ... 52