F r ees cal e Semi co n d u c to r
© F r eesc al e Sem i cond uct or , I nc . , 2 004. Al l r i g ht s r eser ved .
MPC850 Family User’s Manual
Integrated Communications Microprocessor
Supports MPC850
MPC850DE
MPC850SR
MPC850DSL
MPC850UM/D
Rev. 1, 1/2001
How to Reach Us:
Home Page:
www.freescale.com
E-mail:
support@freescale.com
USA/Europe or Locations Not Listed:
Freescale Semiconductor
Technical Information Center, CH370
1300 N. Alma School Road
Chandler, Arizona 85224
+1-800-521-6274 or +1-480-768-2130
support@freescale.com
Europe, Middle East, and Africa:
Freescale Halbleiter Deutschland GmbH
Technical Information Center
Schatzbogen 7
81829 Muenchen, Germany
+44 1296 380 456 (English)
+46 8 52200080 (English)
+49 89 92103 559 (German)
+33 1 69 35 48 48 (French)
support@freescale.com
Japan:
Freescale Semiconductor Japan Ltd.
Headquarters
ARCO Tower 15F
1-8-1, Shimo-Meguro, Meguro-ku,
Tokyo 153-0064
Japan
0120 191014 or +81 3 5437 9125
support.japan@freescale.com
Asia/Pacific:
Freescale Semiconductor Hong Kong Ltd.
Technical Information Center
2 Dai King Street
Tai Po Industrial Estate
Tai Po, N.T., Hong Kong
+800 2666 8080
support.asia@freescale.com
For Literature Requests Only:
Freescale Semiconductor Literature Distribution Center
P.O. Box 5405
Denver, Colorado 80217
1-800-441-2447 or 303-675-2140
Fax: 303-675-2150
LDCForFreescaleSemiconductor@hibbertgroup.com
Information in this document is provided solely to enable system and software
implementers to use Freescale Semiconductor products. There are no express or
implied copyright licenses granted hereunder to design or fabricate any integrated
circuits or integrated circuits based on the information in this document.
Freescale Semiconductor reserves the right to make changes without further notice to
any products herein. Freescale Semiconductor makes no warranty, representation or
guarantee regarding the suitability of its products for any particular purpose, nor does
Freescale Semiconductor assume any liability arising out of the application or use of
any product or circuit, and specifically disclaims any and all liability, including without
limitation consequential or incidental damages. “Typical” parameters which may be
provided in Freescale Semiconductor data sheets and/or specifications can and do
vary in different applications and actual performance may vary over time. All operating
parameters, including “Typicals” must be validated for each customer application by
customer’s technical experts. Freescale Semiconductor does not convey any license
under its patent rights nor the rights of others. Freescale Semiconductor pro ducts are
not designed, intended, or authorized for use as components in systems intended for
surgical implant into the body, or other applications intended to support or sustain life,
or for any other application in which the failure of the Freescale Semiconductor product
could create a situation where personal injury or death may occur. Should Buyer
purchase or use Freescale Semiconductor products for any such unintended or
unauthorized application, Buyer shall indemnify and hold Freescale Semiconductor
and its officers, employees, subsidiaries, affiliates, and distributors harmless against all
claims, costs, damages, and expenses, and reasonable attorney fees arising out of,
directly or indirectly, any claim of personal injury or death associated with such
unintended or unauthorized use, even if such claim alleges that Freescale
Semiconductor was negligent regarding the design or manufacture of the part.
Part I—Overview
MPC850 Overview
Memory Map
Part II—PowerPC Microprocessor Module
PowerPC Core
PowerPC Core Register Set
MPC850 Instruction Set
Exceptions
Instruction and Data Caches
Memory Management Unit
Instruction Execution Timing
Part III—PowerPC Microprocessor Module
System Interface Unit
Reset
Part IV—Hardware Interface
External Signals
External Bus Interface
Clocks and Power Control
Memory Controller
PCMCIA Interface
I
1
2
II
3
4
5
6
7
8
9
III
10
11
IV
12
13
14
15
16
III
IV
I
1
2
II
3
4
5
6
7
8
9
10
11
12
13
14
15
16
Part I—Overview
MPC850 Overview
Memory Map
Part II—PowerPC Microprocessor Module
PowerPC Core
PowerPC Core Register Set
MPC850 Instruction Set
Exceptions
Instruction and Data Caches
Memory Management Unit
Instruction Execution Timing
Part III—PowerPC Microprocessor Module
System Interface Unit
Reset
Part IV—Hardware Interface
External Signals
External Bus Interface
Clocks and Power Control
Memory Controller
PCMCIA Interface
Part V—Communications Processor Module
Communications Processor Module and Timers
Communications Processor
SDMA Channels and IDMA Emulation
Serial Interface
SCC Introduction
SCC UART Mode
SCC HDLC Mode
SCC AppleTalk Mode
SCC Asynchronous HDLC Mode and IrDA
SCC BISYNC Mode
SCC Ethernet Mode
SCC Transparent Mode
IrDA Mode—SCC2 Only
Serial Management Controllers
Serial Peripheral Interface
Universal Serial Bus Controller
2
I
C Controller
Parallel I/O Ports
CPM Interrupt Controller
Part VI—Asynchronous Transfer Mode
ATM Overview
Buffer Descriptors and Connection Tables
ATM Parameter RAM
ATM Controller
ATM Pace Control
ATM Exceptions
Interface Configuration
UTOPIA Interface
Part VII—System Debugging and Testing Support
System Development and Debugging
IEEE 1149.1 Test Access Port
Byte Ordering
Serial Communication Performance
Register Quick Reference Guide
Instruction Set Listings
MPC850
MPC850DSL
Glossary
Index
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
43
44
45
43
GLO
IND
V
VI
VII
A
B
C
D
E
F
I
V
VI
VII
A
B
C
D
E
F
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
43
44
45
43
GLO
IND
Part V—Communications Processor Module
Communications Processor Module and Timers
Communications Processor
SDMA Channels and IDMA Emulation
Serial Interface
SCC Introduction
SCC UART Mode
SCC HDLC Mode
SCC AppleTalk Mode
SCC Asynchronous HDLC Mode and IrDA
SCC BISYNC Mode
SCC Ethernet Mode
SCC Transparent Mode
IrDA Mode—SCC2 Only
Serial Management Controllers
Serial Peripheral Interface
Universal Serial Bus Controller
I2C Controller
Parallel I/O Ports
CPM Interrupt Controller
Part VI—Asynchronous Transfer Mode
ATM Overview
Buffer Descriptors and Connection Tables
ATM Parameter RAM
ATM Controller
ATM Pace Controller
ATM Exceptions
Interface Configuration
UTOPIA Interface
Part VII—System Debugging and Testing Support
System Development and Debugging
IEEE 1149.1 Test Access Port
Byte Ordering
Serial Communication Performance
Register Quick Reference Guide
Instruction Set Listings
MPC850
MPC850DSL
Glossary
I
Index
CONTENTS
Paragraph
Number
Title
Page
Number
Part I
Overview
Chapter 1
Overview
1.1 Features............................................................................................................... 1–2
1.2 Overview of Major Components ........................................................................ 1–7
1.2.1 PowerPC Microprocessor Module.................................................................. 1–8
1.2.2 Configuration and Reset ................................................................................. 1–8
1.2.2.1 System Interface Unit (SIU) ....................................................................... 1–8
1.2.2.2 Resets.......................................................................................................... 1–9
1.2.3 MPC850 Hardware Interface ........................................................................ 1–10
1.2.3.1 Signals....................................................................................................... 1–11
1.2.3.2 Clocking and Power Management............................................................ 1–13
1.2.3.3 Memory Controller ................................................................................... 1–14
1.2.4 Communications Processor Module (CPM) ................................................. 1–15
1.2.5 System Debugging and Testing Support ...................................................... 1–17
1.3 Differences between the MPC850 Family and MPC860.................................. 1–17
Chapter 2
Memory Map
Part II
PowerPC Microprocessor Module
Chapter 3
The PowerPC Core
3.1 The MPC850 Core as a PowerPC Implementation............................................. 3-1
3.2 PowerPC Architecture Overview........................................................................ 3-1
3.2.1 Levels of the PowerPC Architecture .............................................................. 3-3
3.3 Features............................................................................................................... 3-4
3.4 Basic Structure of the Core ................................................................................. 3-5
3.4.1 Instruction Flow.............................................................................................. 3-6
3.4.2 Basic Instruction Pipeline ............................................................................... 3-7
3.4.3 Instruction Unit ............................................................................................... 3-7
3.4.3.1 Branch Operations ...................................................................................... 3-7
3.4.3.2 Dispatching Instructions ............................................................................. 3-9
3.5 Register Set ......................................................................................................... 3-9
3.6 Execution Units................................................................................................... 3-9
Contents
vii
CONTENTS
Paragraph
Number
3.6.1 Branch Processing Unit ................................................................................ 3-10
3.6.2 Integer Unit ................................................................................................... 3-10
3.6.3 Load/Store Unit............................................................................................. 3-10
3.6.3.1 Executing Load/Store Instructions ........................................................... 3-12
3.6.3.2 Serializing Load/Store Instructions .......................................................... 3-12
3.6.3.3 Store Accesses .......................................................................................... 3-12
3.6.3.4 Nonspeculative Load Instructions ............................................................ 3-13
3.6.3.5 Unaligned Accesses .................................................................................. 3-13
3.6.3.6 Atomic Update Primitives ........................................................................ 3-14
3.7 The MPC850 and the PowerPC Architecture ................................................... 3-14
Title
Page
Number
Chapter 4
PowerPC Core Register Set
4.1 MPC850 Register Implementation ..................................................................... 4-1
4.1.1 PowerPC Registers—User Registers .............................................................. 4-2
4.1.1.1 PowerPC User-Level Register Bit Assignments ........................................ 4-2
4.1.1.1.1 Condition Register (CR)......................................................................... 4-2
4.1.1.1.2 Condition Register CR0 Field Definition............................................... 4-3
4.1.1.1.3 XER ........................................................................................................ 4-3
4.1.1.1.4 Time Base Registers ............................................................................... 4-4
4.1.2 PowerPC Registers—Supervisor Registers .................................................... 4-4
4.1.2.1 DAR, DSISR, and BAR Operation............................................................. 4-5
4.1.2.2 Unsupported Registers................................................................................ 4-6
4.1.2.3 PowerPC Supervisor-Level Register Bit Assignments............................... 4-6
4.1.2.3.1 Machine State Register (MSR)............................................................... 4-6
4.1.2.3.2 Processor Version Register..................................................................... 4-8
4.1.3 MPC850-Specific SPRs.................................................................................. 4-8
4.1.3.1 Accessing SPRs ........................................................................................ 4-11
4.2 Register Initialization at Reset .......................................................................... 4-11
Chapter 5
MPC850 Instruction Set
5.1 Operand Conventions.......................................................................................... 5-1
5.1.1 Data Organization in Memory and Data Transfers......................................... 5-1
5.1.2 Aligned and Misaligned Accesses .................................................................. 5-1
5.2 Instruction Set Summary..................................................................................... 5-2
5.2.1 Classes of Instructions .................................................................................... 5-3
5.2.1.1 Definition of Boundedly Undefined ........................................................... 5-4
5.2.1.2 Defined Instruction Class ........................................................................... 5-4
5.2.1.3 Illegal Instruction Class .............................................................................. 5-4
MPC850 Family User’s Manual
CONTENTS
Paragraph
Number
5.2.1.4 Reserved Instruction Class ......................................................................... 5-5
5.2.2 Addressing Modes .......................................................................................... 5-5
5.2.2.1 Memory Addressing ................................................................................... 5-5
5.2.2.2 Effective Address Calculation .................................................................... 5-6
5.2.2.3 Synchronization .......................................................................................... 5-6
5.2.2.3.1 Context Synchronization ........................................................................ 5-6
5.2.2.3.2 Execution Synchronization..................................................................... 5-7
5.2.2.3.3 Instruction-Related Exceptions............................................................... 5-7
5.2.3 Instruction Set Overview ................................................................................ 5-7
5.2.4 PowerPC UISA Instructions ........................................................................... 5-8
5.2.4.1 Integer Instructions ..................................................................................... 5-8
5.2.4.1.1 Integer Arithmetic Instructions............................................................... 5-8
5.2.4.1.2 Integer Compare Instructions ................................................................. 5-9
5.2.4.1.3 Integer Logical Instructions.................................................................. 5-10
5.2.4.1.4 Integer Rotate and Shift Instructions .................................................... 5-10
5.2.4.2 Load and Store Instructions ...................................................................... 5-11
5.2.4.2.1 Integer Load and Store Address Generation......................................... 5-11
5.2.4.2.2 Register Indirect Integer Load Instructions .......................................... 5-12
5.2.4.2.3 Integer Store Instructions...................................................................... 5-12
5.2.4.2.4 Integer Load and Store with Byte-Reverse Instructions....................... 5-13
5.2.4.2.5 Integer Load and Store Multiple Instructions....................................... 5-13
5.2.4.2.6 Integer Load and Store String Instructions........................................... 5-14
5.2.4.3 Branch and Flow Control Instructions...................................................... 5-14
5.2.4.3.1 Branch Instruction Address Calculation............................................... 5-15
5.2.4.3.2 Branch Instructions............................................................................... 5-15
5.2.4.3.3 Condition Register Logical Instructions............................................... 5-16
5.2.4.4 Trap Instructions....................................................................................... 5-16
5.2.4.5 Processor Control Instructions.................................................................. 5-17
5.2.4.5.1 Move to/from Condition Register Instructions..................................... 5-17
5.2.4.6 Memory Synchronization Instructions—UISA ........................................ 5-17
5.2.5 PowerPC VEA Instructions .......................................................................... 5-19
5.2.5.1 Processor Control Instructions.................................................................. 5-19
5.2.5.2 Memory Synchronization Instructions—VEA ......................................... 5-20
5.2.5.2.1 eieio Behavior....................................................................................... 5-20
5.2.5.2.2 isync Behavior ...................................................................................... 5-20
5.2.5.3 Memory Control Instructions—VEA ....................................................... 5-21
5.2.6 PowerPC OEA Instructions .......................................................................... 5-21
5.2.6.1 System Linkage Instructions..................................................................... 5-22
5.2.6.2 Processor Control Instructions—OEA ..................................................... 5-22
5.2.6.2.1 Move to/from Machine State Register Instructions.............................. 5-22
5.2.6.2.2 Move to/from Special-Purpose Register Instructions........................... 5-22
5.2.6.3 Memory Control Instructions—OEA ....................................................... 5-23
Title
Page
Number
Contents
ix
CONTENTS
Paragraph
Number
Title
Page
Number
Chapter 6
Exceptions
6.1 Exceptions........................................................................................................... 6-2
6.1.1 Exception Ordering......................................................................................... 6-3
6.1.2 PowerPC-Defined Exceptions ........................................................................ 6-4
6.1.2.1 System Reset Interrupt (0x00100) .............................................................. 6-5
6.1.2.2 Machine Check Interrupt (0x00200) .......................................................... 6-5
6.1.2.3 DSI Exception (0x00300) ........................................................................... 6-6
6.1.2.4 ISI Exception (0x00400)............................................................................. 6-6
6.1.2.5 External Interrupt Exception (0x00500)..................................................... 6-6
6.1.2.6 Alignment Exception (0x00600) ................................................................ 6-7
6.1.2.6.1 Integer Alignment Exceptions ................................................................ 6-8
6.1.2.7 Program Exception (0x00700).................................................................... 6-9
6.1.2.8 Decrementer Exception (0x00900)........................................................... 6-10
6.1.2.9 System Call Exception (0x00C00) ........................................................... 6-10
6.1.2.10 Trace Exception (0x00D00) ..................................................................... 6-11
6.1.2.11 Floating-Point Assist Exception ............................................................... 6-12
6.1.3 Implementation-Specific Exceptions............................................................ 6-12
6.1.3.1 Software Emulation Exception (0x01000) ............................................... 6-12
6.1.3.2 Instruction TLB Miss Exception (0x01100)............................................. 6-12
6.1.3.3 Data TLB Miss Exception (0x01200)....................................................... 6-13
6.1.3.4 Instruction TLB Error Exception (0x01300) ............................................ 6-13
6.1.3.5 Data TLB Error Exception (0x014000).................................................... 6-14
6.1.3.6 Debug Exceptions (0x01C00–0x01F00) .................................................. 6-15
6.1.4 Implementing the Precise Exception Model................................................. 6-16
6.1.5 Recoverability after an Exception................................................................. 6-17
6.1.6 Exception Latency ........................................................................................ 6-18
6.1.7 Partially Completed Instructions .................................................................. 6-20
Chapter 7
Instruction and Data Caches
7.1 Instruction Cache Organization .......................................................................... 7–2
7.2 Data Cache Organization .................................................................................... 7–4
7.3 Cache Control Registers ..................................................................................... 7–6
7.3.1 Instruction Cache Control Registers ............................................................... 7–6
7.3.1.1 Reading Data and Tags in the Instruction Cache........................................ 7–8
7.3.1.2 IC_CST Commands.................................................................................... 7–9
7.3.1.2.1 Instruction Cache Enable/Disable Commands ....................................... 7–9
7.3.1.2.2 Instruction Cache Load & Lock Cache Block Command ...................... 7–9
7.3.1.2.3 Instruction Cache Unlock Cache Block Command.............................. 7–10
MPC850 Family User’s Manual
CONTENTS
Paragraph
Number
7.3.1.2.4 Instruction Cache Unlock All Command ............................................. 7–11
7.3.1.2.5 Instruction Cache Invalidate All Command ......................................... 7–11
7.3.2 Data Cache Control Registers....................................................................... 7–11
7.3.2.1 Reading Data Cache Tags and Copyback Buffer ..................................... 7–14
7.3.2.2 DC_CST Commands ................................................................................ 7–15
7.3.2.2.1 Data Cache Enable/Disable Commands ............................................... 7–16
7.3.2.2.2 Data Cache Load & Lock Cache Block Command.............................. 7–16
7.3.2.2.3 Data Cache Unlock Cache Block Command........................................ 7–17
7.3.2.2.4 Data Cache Unlock All Command ....................................................... 7–17
7.3.2.2.5 Data Cache Invalidate All Command................................................... 7–17
7.3.2.2.6 Data Cache Flush Cache Block Command........................................... 7–17
7.4 PowerPC Cache Control Instructions ............................................................... 7–18
7.4.1 Instruction Cache Block Invalidate (
7.4.2 Data Cache Block Touch (
Touch for Store (
7.4.3 Data Cache Block Zero (
7.4.4 Data Cache Block Store (
7.4.5 Data Cache Block Flush (
7.4.6 Data Cache Block Invalidate (
7.5 Instruction Cache Operations............................................................................ 7–20
7.5.1 Instruction Cache Hit .................................................................................... 7–22
7.5.2 Instruction Cache Miss ................................................................................. 7–22
7.5.3 Instruction Fetching on a Predicted Path ...................................................... 7–23
7.5.4 Fetching Instructions from Caching-Inhibited Regions................................ 7–23
7.5.5 Updating Code and Memory Region Attributes ........................................... 7–24
7.6 Data Cache Operation ....................................................................................... 7–24
7.6.1 Data Cache Load Hit..................................................................................... 7–25
7.6.2 Data Cache Read Miss.................................................................................. 7–25
7.6.3 Write-Through Mode.................................................................................... 7–26
7.6.3.1 Data Cache Store Hit in Write-Through Mode......................................... 7–26
7.6.3.2 Data Cache Store Miss in Write-Through Mode...................................... 7–26
7.6.4 Write-Back Mode ......................................................................................... 7–26
7.6.4.1 Data Cache Store Hit in Write-Back Mode .............................................. 7–26
7.6.4.2 Data Cache Store Miss in Write-Back Mode ........................................... 7–27
7.6.5 Data Accesses to Caching-Inhibited Memory Regions ................................ 7–27
7.6.6 Atomic Memory References......................................................................... 7–28
7.7 Cache Initialization after Reset......................................................................... 7–29
7.8 Debug Support .................................................................................................. 7–29
7.8.1 Instruction and Data Cache Operation in Debug Mode................................ 7–30
7.8.2 Instruction and Data Cache Operation with a Software Monitor Debugger. 7–30
dcbtst
Title
icbi
)..................................................... 7–18
dcbt
) and Data Cache Block
) ...........................................................................7–18
dcbz
) ..................................................................... 7–19
dcbst
) ................................................................... 7–19
dcbf
) .................................................................... 7–20
dcbi
) ............................................................. 7–20
Page
Number
Contents
xi
CONTENTS
Paragraph
Number
Title
Page
Number
Chapter 8
Memory Management Unit
8.1 Features............................................................................................................... 8–1
8.2 PowerPC Architecture Compliance .................................................................... 8–2
8.3 Address Translation ............................................................................................ 8–3
8.3.1 Translation Disabled ....................................................................................... 8–3
8.3.2 Translation Enabled ........................................................................................ 8–3
8.3.3 TLB Operation................................................................................................ 8–5
8.4 Using Access Protection Groups ........................................................................ 8–6
8.5 Protection Resolution Modes.............................................................................. 8–7
8.6 Memory Attributes.............................................................................................. 8–8
8.7 Translation Table Structure................................................................................. 8–9
8.7.1 Level-One Descriptor ................................................................................... 8–12
8.7.2 Level-Two Descriptor................................................................................... 8–13
8.7.3 Page Size....................................................................................................... 8–14
8.8 Programming Model ......................................................................................... 8–14
8.8.1 IMMU Control Register (MI_CTR) ............................................................. 8–15
8.8.2 DMMU Control Register (MD_CTR) .......................................................... 8–16
8.8.3 IMMU/DMMU Effective Page Number Register (Mx_EPN) ..................... 8–17
8.8.4 IMMU Tablewalk Control Register (MI_TWC) .......................................... 8–18
8.8.5 DMMU Tablewalk Control Register (MD_TWC) ....................................... 8–19
8.8.6 IMMU Real Page Number Register (MI_RPN) ........................................... 8–20
8.8.7 DMMU Real Page Number Register (MD_RPN) ........................................ 8–21
8.8.8 MMU Tablewalk Base Register (M_TWB) ................................................. 8–23
8.8.9 MMU Current Address Space ID Register (M_CASID).............................. 8–23
8.8.10 MMU Access Protection Registers (MI_AP/MD_AP) ................................ 8–24
8.8.11 MMU Tablewalk Special Register (M_TW) ................................................ 8–24
8.8.12 MMU Debug Registers................................................................................. 8–24
8.8.12.1 IMMU CAM Entry Read Register (MI_CAM) ........................................ 8–25
8.8.12.2 IMMU RAM Entry Read Register 0 (MI_RAM0) ................................... 8–26
8.8.12.3 IMMU RAM Entry Read Register 1 (MI_RAM1) ................................... 8–27
8.8.12.4 DMMU CAM Entry Read Register (MD_CAM)..................................... 8–27
8.8.12.5 DMMU RAM Entry Read Register 0 (MD_RAM0)................................ 8–28
8.8.13 DMMU RAM Entry Read Register 1 (MD_RAM1).................................... 8–29
8.9 Memory Management Unit Exceptions ............................................................ 8–31
8.10 TLB Manipulation ............................................................................................ 8–31
8.10.1 TLB Reload................................................................................................... 8–32
8.10.1.1 Translation Reload Examples ................................................................... 8–32
8.10.2 Locking TLB Entries .................................................................................... 8–33
8.10.3 Loading Locked TLB Entries ....................................................................... 8–34
8.10.4 TLB Invalidation........................................................................................... 8–34
MPC850 Family User’s Manual
CONTENTS
Paragraph
Number
Title
Page
Number
Chapter 9
Instruction Execution Timing
9.1 Instruction Execution Timing Examples ............................................................ 9–1
9.1.1 Data Cache Load with a Data Dependency .................................................... 9–1
9.1.2 Writeback Arbitration ..................................................................................... 9–2
9.1.3 Private Writeback Bus Load ........................................................................... 9–3
9.1.4 Fastest External Load (Data Cache Miss)....................................................... 9–3
9.1.5 A Full Completion Queue............................................................................... 9–4
9.1.6 Branch Instruction Handling........................................................................... 9–4
9.1.7 Branch Prediction ........................................................................................... 9–5
9.2 Instruction Timing List ....................................................................................... 9–6
9.2.1 Load/Store Instruction Timing........................................................................ 9–7
9.2.2 String Instruction Latency .............................................................................. 9–8
9.2.3 Accessing Off-Core SPRs............................................................................... 9–8
Part III
Configuration and Reset
Chapter 10
System Interface Unit
10.1 Features............................................................................................................. 10–2
10.2 System Configuration and Protection ............................................................... 10–2
10.3 Multiplexing SIU Pins ...................................................................................... 10–4
10.4 Programming the SIU ....................................................................................... 10–5
10.4.1 Internal Memory Map Register (IMMR)...................................................... 10–5
10.4.2 SIU Module Configuration Register (SIUMCR).......................................... 10–6
10.4.3 System Protection Control Register (SYPCR) ............................................. 10–8
10.4.4 Transfer Error Status Register (TESR)......................................................... 10–9
10.4.5 Register Lock Mechanism .......................................................................... 10–10
10.5 System Configuration ..................................................................................... 10–11
10.5.1 Interrupt Structure....................................................................................... 10–11
10.5.2 Priority of Interrupt Sources ....................................................................... 10–13
10.5.3 SIU Interrupt Processing............................................................................. 10–14
10.5.3.1 Nonmaskable Interrupts—IRQ0 and SWT............................................. 10–14
10.5.4 Programming the SIU Interrupt Controller................................................. 10–15
10.5.4.1 SIU Interrupt Pending Register (SIPEND) ............................................. 10–15
10.5.4.2 SIU Interrupt Mask Register (SIMASK) ................................................ 10–17
10.5.4.3 SIU Interrupt Edge/Level Register (SIEL) ............................................. 10–18
10.5.4.4 SIU Interrupt Vector Register (SIVEC) ................................................. 10–19
10.6 The Bus Monitor............................................................................................. 10–20
Contents
xiii
CONTENTS
Paragraph
Number
10.7 The Software Watchdog Timer....................................................................... 10–21
10.7.1 Software Service Register (SWSR) ............................................................ 10–22
10.8 The PowerPC Decrementer............................................................................. 10–23
10.8.1 Decrementer Register (DEC)...................................................................... 10–24
10.9 The PowerPC Timebase.................................................................................. 10–24
10.9.1 Timebase Register (TBU and TBL)............................................................ 10–25
10.9.2 Timebase Reference Registers (TBREFA and TBREFB).......................... 10–26
10.9.3 Timebase Status and Control Register (TBSCR) ....................................... 10–26
10.10 The Real-Time Clock...................................................................................... 10–27
10.10.1 Real-Time Clock Status and Control Register (RTCSC) ........................... 10–28
10.10.2 Real-Time Clock Register (RTC) ............................................................... 10–29
10.10.3 Real-Time Clock Alarm Register (RTCAL) .............................................. 10–29
10.10.4 Real-Time Clock Alarm Seconds Register (RTSEC)................................. 10–30
10.11 The Periodic Interrupt Timer (PIT)................................................................. 10–31
10.11.1 Periodic Interrupt Status and Control Register (PISCR) ............................ 10–32
10.11.2 PIT Count Register (PITC) ......................................................................... 10–33
10.11.3 PIT Register (PITR).................................................................................... 10–33
10.12 General SIU Timers Operation ....................................................................... 10–34
10.12.1 Freeze Operation......................................................................................... 10–34
10.12.2 Low-Power Stop Operation ........................................................................ 10–34
Title
Page
Number
Chapter 11
Reset
11.1 Types of Reset................................................................................................... 11–1
11.1.1 Power-On Reset ............................................................................................ 11–2
11.1.2 External Hard Reset ...................................................................................... 11–2
11.1.3 Internal Hard Reset ....................................................................................... 11–2
11.1.3.1 PLL Loss of Lock ..................................................................................... 11–3
11.1.3.2 Software Watchdog Reset......................................................................... 11–3
11.1.3.3 Checkstop Reset........................................................................................ 11–3
11.1.4 Debug Port Hard or Soft Reset ..................................................................... 11–3
11.1.5 JTAG Reset................................................................................................... 11–3
11.1.6 Power-On and Hard Reset Sequence ............................................................ 11–4
11.1.7 External Soft Reset ....................................................................................... 11–4
11.1.8 Internal Soft Reset ........................................................................................ 11–4
11.1.9 Soft Reset Sequence...................................................................................... 11–5
11.2 Reset Status Register (RSR) ............................................................................. 11–5
11.3 MPC850 Reset Configuration........................................................................... 11–6
11.3.1 Hard Reset..................................................................................................... 11–7
11.3.1.1 Hard Reset Configuration Word ............................................................... 11–9
11.3.2 Soft Reset.................................................................................................... 11–11
11.4 TRST and Power Mode Considerations ......................................................... 11–11
MPC850 Family User’s Manual
CONTENTS
Paragraph
Number
Title
Page
Number
Part IV
The Hardware Interface
Chapter 12
External Signals
12.1 System Bus Signals........................................................................................... 12–5
12.2 Active Pull-Up Buffers ................................................................................... 12–18
12.3 Internal Pull-Up and Pull-Down Resistors .................................................... 12–19
12.4 Recommended Basic Pin Connections ........................................................... 12–20
12.4.1 Reset Configuration .................................................................................... 12–20
12.4.1.1 Bus Control Signals and Interrupts ......................................................... 12–20
12.4.2 JTAG and Debug Ports ............................................................................... 12–21
12.4.3 Unused Inputs ............................................................................................. 12–21
12.4.4 Unused Outputs........................................................................................... 12–21
12.5 Signal States during Hardware Reset.............................................................. 12–21
Chapter 13
External Bus Interface
13.1 Features............................................................................................................. 13–1
13.2 Bus Transfer Overview ..................................................................................... 13–1
13.3 Bus Interface Signal Descriptions..................................................................... 13–2
13.4 Bus Operations.................................................................................................. 13–6
13.4.1 Basic Transfer Protocol ................................................................................ 13–6
13.4.2 Single-Beat Transfer ..................................................................................... 13–6
13.4.2.1 Single-Beat Read Flow ............................................................................. 13–7
13.4.2.2 Single-Beat Write Flow .......................................................................... 13–10
13.4.3 Burst Transfers............................................................................................ 13–13
13.4.4 Burst Operations ......................................................................................... 13–14
13.4.5 Alignment and Data Packing on Transfers ................................................. 13–23
13.4.6 Arbitration Phase ........................................................................................ 13–26
13.4.6.1 Bus Request (BR) ................................................................................... 13–27
13.4.6.2 Bus Grant (BG)....................................................................................... 13–27
13.4.6.3 Bus Busy (BB) ........................................................................................ 13–28
13.4.6.4 External Bus Parking .............................................................................. 13–30
13.4.7 Address Transfer Phase-Related Signals .................................................... 13–30
13.4.7.1 Transfer Start (TS) .................................................................................. 13–30
13.4.7.2 Address Bus ............................................................................................ 13–31
13.4.7.3 Transfer Attributes .................................................................................. 13–31
13.4.7.3.1 Read/Write (RD/WR) ......................................................................... 13–31
13.4.7.3.2 Burst Indicator (BURST).................................................................... 13–31
Contents
xv
CONTENTS
Paragraph
Number
13.4.7.3.3 Transfer Size (TSIZ)........................................................................... 13–31
13.4.7.3.4 Address Types (AT) ........................................................................... 13–31
13.4.7.3.5 Burst Data in Progress (BDIP) ........................................................... 13–34
13.4.8 Termination Signals.................................................................................... 13–34
13.4.8.1 Transfer Acknowledge (TA)................................................................... 13–34
13.4.8.2 Burst Inhibit (BI) .................................................................................... 13–34
13.4.8.3 Transfer Error Acknowledge (TEA)....................................................... 13–34
13.4.8.4 Termination Signals Protocol ................................................................. 13–34
13.4.9 Memory Reservation................................................................................... 13–35
13.4.9.1 Kill Reservation (KR) ............................................................................. 13–36
13.4.10 Bus Exception Control Cycles.................................................................... 13–37
13.4.10.1 RETRY ................................................................................................... 13–38
Title
Page
Number
Chapter 14
Clocks and Power Control
14.1 Features............................................................................................................. 14–1
14.2 The Clock Module ............................................................................................ 14–2
14.2.1 External Reference Clocks............................................................................ 14–3
14.2.1.1 Off-Chip Oscillator Input (EXTCLK) ...................................................... 14–4
14.2.1.2 Crystal Oscillator Support (EXTAL and XTAL) ..................................... 14–4
14.2.2 System PLL................................................................................................... 14–5
14.2.2.1 SPLL Reset Configuration........................................................................ 14–6
14.2.2.2 SPLL Output Characteristics and Stability ............................................... 14–7
14.2.2.3 The System Phase-Locked Loop Pins (VDDSYN, VSSSYN,
VSSSYN1, XFC) ..................................................................................14–7
14.2.2.4 Disabling the SPLL................................................................................... 14–8
14.3 Clock Signals .................................................................................................... 14–8
14.3.1 Clocks Derived from the SPLL Output ........................................................ 14–9
14.3.1.1 The Internal General System Clocks (GCLK1C, GCLK2C,
GCLK1, GCLK2) ...............................................................................14–10
14.3.1.2 Memory Controller and External Bus Clocks (GCLK1_50,
GCLK2_50, CLKOUT) ......................................................................14–11
14.3.1.3 CLKOUT Special Considerations: 1:2:1 Mode...................................... 14–14
14.3.1.4 The Baud Rate Generator Clock (BRGCLK) ......................................... 14–14
14.3.1.5 The Synchronization Clock (SYNCCLK, SYNCCLKS) ....................... 14–14
14.3.2 The PIT and RTC Clock (PITRTCLK) ...................................................... 14–15
14.3.3 The Time Base and Decrementer Clock (TMBCLK)................................. 14–16
14.4 Power Distribution.......................................................................................... 14–16
14.4.1 I/O Buffer Power (VDDH) ......................................................................... 14–17
14.4.2 Internal Logic Power (VDDL).................................................................... 14–18
14.4.3 Clock Synthesizer Power (VDDSYN, VSSSYN, VSSYN1) ..................... 14–18
MPC850 Family User’s Manual
CONTENTS
Paragraph
Number
14.4.4 Keep-Alive Power (KAPWR) .................................................................... 14–18
14.5 Power Control (Low-Power Modes)............................................................... 14–18
14.5.1 Normal High Mode..................................................................................... 14–21
14.5.2 Normal Low Mode...................................................................................... 14–21
14.5.3 Doze High Mode......................................................................................... 14–21
14.5.4 Doze Low Mode ......................................................................................... 14–22
14.5.5 Sleep Mode ................................................................................................. 14–23
14.5.6 Deep-Sleep Mode ....................................................................................... 14–23
14.5.7 Power-Down Mode..................................................................................... 14–24
14.5.7.1 Software Initiation of Power-Down Mode, with Automatic Wake-up... 14–24
14.5.7.2 Maintaining the Real-Time Clock (RTC) During
Shutdown or Power Failure ................................................................14–26
14.5.7.3 Register Lock Mechanism: Protecting SIU
Registers in Power-Down Mode..........................................................14–26
14.5.8 TMIST: Facilitating Nesting of SIU Timer Interrupts................................ 14–27
14.6 Clock and Power Control Registers................................................................ 14–27
14.6.1 System Clock and Reset Control Register (SCCR) .................................... 14–27
14.6.2 PLL, Low-Power, and Reset Control Register (PLPRCR)......................... 14–29
Title
Page
Number
Chapter 15
Memory Controller
15.1 Features............................................................................................................. 15–1
15.2 Basic Architecture............................................................................................. 15–4
15.3 Chip-Select Programming Common to the GPCM and UPM .......................... 15–6
15.3.1 Address Space Programming........................................................................ 15–7
15.3.2 Register Programming Order........................................................................ 15–7
15.3.3 Memory Bank Write Protection.................................................................... 15–7
15.3.4 Address Type Protection............................................................................... 15–7
15.3.5 8-, 16-, and 32-Bit Port Size Configuration.................................................. 15–7
15.3.6 Parity Configuration ..................................................................................... 15–8
15.3.7 Memory Bank Protection Status ................................................................... 15–8
15.3.8 UPM-Specific Registers ............................................................................... 15–8
15.3.9 GPCM-Specific Registers............................................................................. 15–8
15.4 Register Descriptions ........................................................................................ 15–9
15.4.1 Base Registers (BRx).................................................................................... 15–9
15.4.2 Option Registers (ORx) .............................................................................. 15–10
15.4.3 Memory Status Register (MSTAT) ............................................................ 15–13
15.4.4 Machine A Mode Register/Machine B Mode Registers (MxMR) ............. 15–13
15.4.5 Memory Command Register (MCR) .......................................................... 15–15
15.4.6 Memory Data Register (MDR) ................................................................... 15–16
15.4.7 Memory Address Register (MAR) ............................................................. 15–17
Contents
xvii
CONTENTS
Paragraph
Number
15.4.8 Memory Periodic Timer Prescaler Register (MPTPR)............................... 15–18
15.5 General-Purpose Chip-Select Machine (GPCM)............................................ 15–18
15.5.1 Timing Configuration ................................................................................. 15–19
15.5.1.1 Chip-Select Assertion Timing ................................................................ 15–20
15.5.1.2 Chip-Select and Write Enable Deassertion Timing ................................ 15–21
15.5.1.3 Relaxed Timing ...................................................................................... 15–23
15.5.1.4 Output Enable (OE) Timing ................................................................... 15–26
15.5.1.5 Programmable Wait State Configuration................................................ 15–26
15.5.1.6 Extended Hold Time on Read Accesses ................................................. 15–26
15.5.2 Boot Chip-Select Operation........................................................................ 15–28
15.5.3 External Asynchronous Master Support ..................................................... 15–29
15.5.4 Special Case: Bursting with External Transfer Acknowledge: .................. 15–30
15.6 User-Programmable Machines (UPMs).......................................................... 15–31
15.6.1 Requests ...................................................................................................... 15–32
15.6.1.1 Internal/External Memory Access Requests........................................... 15–32
15.6.1.2 UPM Periodic Timer Requests ............................................................... 15–33
15.6.1.3 Software Requests—MCR run Command.............................................. 15–33
15.6.1.4 Exception Requests................................................................................. 15–33
15.6.2 Programming the UPM............................................................................... 15–34
15.6.3 Control Signal Generation Timing ............................................................. 15–34
15.6.4 The RAM Array.......................................................................................... 15–37
15.6.4.1 RAM Words............................................................................................ 15–37
15.6.4.2 Chip-Select Signals (CSTx).................................................................... 15–41
15.6.4.3 Byte-Select Signals (BSTx) .................................................................... 15–42
15.6.4.4 General-Purpose Signals (GxTx, G0x) ................................................... 15–43
15.6.4.5 Loop Control (LOOP)............................................................................. 15–44
15.6.4.6 Exception Pattern Entry (EXEN)............................................................ 15–45
15.6.4.7 Address Multiplexing (AMX) ................................................................ 15–45
15.6.4.8 Transfer Acknowledge and Data Sample Control (UTA, DLT3) .......... 15–50
15.6.4.9 Disable Timer Mechanism (TODT) ....................................................... 15–51
15.6.4.10 The Last Word (LAST) .......................................................................... 15–51
15.6.4.11 The Wait Mechanism (WAEN) .............................................................. 15–51
15.6.4.11.1 Internal and External Synchronous Masters ....................................... 15–51
15.6.4.11.2 External Asynchronous Masters ......................................................... 15–52
15.7 Handling Devices with Slow or Variable Access Times ................................ 15–53
15.7.1 Hierarchical Bus Interface Example ........................................................... 15–54
15.7.2 Slow Devices Example ............................................................................... 15–54
15.8 External Master Support ................................................................................. 15–54
15.8.1 Synchronous External Masters ................................................................... 15–54
15.8.2 Asynchronous External Masters ................................................................. 15–55
15.8.3 Special Case: Address Type Signals for External Masters......................... 15–55
15.8.4 UPM Features Supporting External Masters .............................................. 15–55
15.8.4.1 Address Incrementing for External Synchronous Bursting Masters ...... 15–55
Title
Page
Number
MPC850 Family User’s Manual
CONTENTS
Paragraph
Number
15.8.4.2 Handshake Mechanism for Asynchronous External Masters ................. 15–56
15.8.4.3 Special Signal for External Address Multiplexer Control ...................... 15–56
15.8.5 External Master Examples .......................................................................... 15–56
15.8.5.1 External Masters and the GPCM ............................................................ 15–56
15.8.5.2 External Masters and the UPM ............................................................... 15–58
15.9 Memory System Interface Examples .............................................................. 15–63
15.9.1 Page-Mode DRAM Interface Example....................................................... 15–63
15.9.2 Page Mode Extended Data-Out Interface Example.................................... 15–74
Title
Page
Number
Chapter 16
PCMCIA Interface
16.1 System Configuration ....................................................................................... 16–1
16.2 PCMCIA Module Signal Definitions................................................................ 16–1
16.2.1 PCMCIA Cycle Control Signals................................................................... 16–3
16.2.2 PCMCIA Input Port Signals ......................................................................... 16–4
16.2.3 PCMCIA Output Port Signals (OP[0–4]) ..................................................... 16–5
16.2.4 Other PCMCIA Signals ................................................................................ 16–5
16.3 Operation Description....................................................................................... 16–5
16.3.1 Memory-Only Cards ..................................................................................... 16–6
16.3.2 I/O Cards....................................................................................................... 16–6
16.3.3 Interrupts....................................................................................................... 16–6
16.3.4 Power Control ............................................................................................... 16–7
16.3.5 Reset and Three-State Control...................................................................... 16–7
16.3.6 DMA ............................................................................................................. 16–7
16.4 Programming Model ......................................................................................... 16–8
16.4.1 PCMCIA Interface Input Pins Register (PIPR) ............................................ 16–8
16.4.2 PCMCIA Interface Status Changed Register (PSCR) .................................. 16–9
16.4.3 PCMCIA Interface Enable Register (PER) ................................................ 16–10
16.4.4 PCMCIA Interface General Control Register B (PGCRB) ........................ 16–11
16.4.5 PCMCIA Base Registers 0–7 (PBR0–PBR7)............................................. 16–12
16.4.6 PCMCIA Option Register 0–7 (POR0–POR7) .......................................... 16–12
16.5 PCMCIA Controller Timing Examples .......................................................... 16–16
Contents
xix
CONTENTS
Paragraph
Number
Title
Page
Number
Part V
Communications Processor Module
Chapter 17
Communications Processor Module and CPM Timers
17.1 Features............................................................................................................. 17–1
17.2 CPM General-Purpose Timers.......................................................................... 17–4
17.2.1 Features......................................................................................................... 17–5
17.2.2 CPM Timer Operation .................................................................................. 17–6
17.2.2.1 Timer Clock Source .................................................................................. 17–6
17.2.2.2 Timer Reference Count............................................................................. 17–6
17.2.2.3 Timer Capture ........................................................................................... 17–6
17.2.2.4 Timer Gating (Timers 1 and 2 only) ......................................................... 17–7
17.2.2.5 Cascaded Mode......................................................................................... 17–7
17.2.2.6 Timer 1 and SPKROUT............................................................................ 17–8
17.2.3 CPM Timer Register Set............................................................................... 17–8
17.2.3.1 Timer Global Configuration Register (TGCR)......................................... 17–8
17.2.4 Timer Mode Registers (TMR1–TMR4) ....................................................... 17–9
17.2.4.1 Timer Reference Registers (TRR1–TRR4) ............................................ 17–10
17.2.4.2 Timer Capture Registers (TCR1–TCR4) ................................................ 17–10
17.2.4.3 Timer Counter Registers (TCN1–TCN4) ............................................... 17–11
17.2.4.4 Timer Event Registers (TER1–TER4).................................................... 17–11
17.2.5 Timer Initialization Examples .................................................................... 17–12
Chapter 18
Communications Processor
18.1 Features............................................................................................................. 18–1
18.2 Communicating with the Core.......................................................................... 18–2
18.3 Communicating with the Peripherals................................................................ 18–2
18.4 CP Microcode Revision Number ...................................................................... 18–3
18.5 CP Register Set and CP Commands ................................................................. 18–4
18.5.1 RISC Controller Configuration Register (RCCR) ........................................ 18–4
18.5.2 RISC Microcode Development Support Control Register (RMDS) ............ 18–5
18.5.3 CP Command Register (CPCR).................................................................... 18–6
18.5.4 CP Commands .............................................................................................. 18–7
18.5.4.1 CP Command Examples ........................................................................... 18–9
18.5.4.2 CP Command Execution Latency............................................................. 18–9
18.6 Dual-Port RAM................................................................................................. 18–9
18.6.1 System RAM and Microcode Packages...................................................... 18–11
18.6.2 The Buffer Descriptor (BD)........................................................................ 18–12
MPC850 Family User’s Manual
CONTENTS
Paragraph
Number
18.6.3 Parameter RAM .......................................................................................... 18–12
18.7 The RISC Timer Table.................................................................................... 18–13
18.7.1 RISC Timer Table Scan Algorithm ............................................................ 18–14
18.7.2 The set timer Command.............................................................................. 18–14
18.7.3 RISC Timer Table Parameter RAM and Timer Table Entries ................... 18–14
18.7.3.1 RISC Timer Command Register (TM_CMD) ........................................ 18–15
18.7.3.2 RISC Timer Table Entries ...................................................................... 18–16
18.7.4 RISC Timer Event Register (RTER)/Mask Register (RTMR)................... 18–16
18.7.5 PWM Mode................................................................................................. 18–16
18.7.6 RISC Timer Initialization ........................................................................... 18–17
18.7.7 RISC Timer Interrupt Handling.................................................................. 18–18
18.7.8 Using the RISC Timers to Track CP Loading ............................................ 18–18
Title
Page
Number
Chapter 19
SDMA Channels and IDMA Emulation
19.1 SDMA Channels ............................................................................................... 19–1
19.1.1 SDMA Transfers........................................................................................... 19–2
19.1.2 U-Bus Arbitration and the SDMA Channels ................................................ 19–2
19.2 SDMA Registers ............................................................................................... 19–3
19.2.1 SDMA Configuration Register (SDCR) ....................................................... 19–3
19.2.2 SDMA Status Register (SDSR) .................................................................... 19–4
19.2.3 SDMA Mask Register (SDMR).................................................................... 19–5
19.2.4 SDMA Address Register (SDAR) ................................................................ 19–5
19.3 IDMA Emulation .............................................................................................. 19–5
19.3.1 IDMA Features ............................................................................................. 19–6
19.3.2 IDMA Parameter RAM ................................................................................ 19–6
19.3.3 IDMA Registers............................................................................................ 19–7
19.3.3.1 DMA Channel Mode Registers (DCMR) ................................................. 19–7
19.3.3.2 IDMA Status Registers (IDSR1 and IDSR2) ........................................... 19–8
19.3.3.3 IDMA Mask Registers (IDMR1 and IDMR2).......................................... 19–9
19.3.4 IDMA Buffer Descriptors (BD).................................................................... 19–9
19.3.4.1 Function Code Registers—SFCR and DFCR......................................... 19–11
19.3.4.2 Auto-Buffering and Buffer-Chaining ..................................................... 19–12
19.3.5 IDMA CP Commands................................................................................. 19–12
19.3.6 IDMA Channel Operation .......................................................................... 19–13
19.3.6.1 Activating an IDMA Channel................................................................. 19–13
19.3.6.2 Suspending an IDMA Channel ............................................................... 19–13
19.3.7 IDMA Interface Signals—DREQ and SDACK.......................................... 19–13
19.3.7.1 IDMA Requests for Memory/Memory Transfers ................................... 19–14
19.3.7.2 IDMA Requests for Peripheral/Memory Transfers ................................ 19–14
19.3.7.2.1 Level-Sensitive Requests.................................................................... 19–14
Contents
xxi
CONTENTS
Paragraph
Number
19.3.7.2.2 Edge-Sensitive Requests..................................................................... 19–15
19.3.8 IDMA Transfers—Dual-Address and Single-Address ............................... 19–15
19.3.8.1 Dual-Address (Dual-Cycle) Transfer ..................................................... 19–15
19.3.8.2 Single-Address (Single-Cycle) Transfer (Fly-By).................................. 19–16
19.3.9 Single-Buffer Mode on IDMA1—A Special Case ..................................... 19–18
19.3.9.1 IDMA1 Channel Mode Register (DCMR) (Single-Buffer Mode) ......... 19–19
19.3.9.2 IDMA1 Status Register (IDSR1) (Single-Buffer Mode) ........................ 19–19
19.3.9.3 IDMA1 Mask Register (IDMR1) (Single-Buffer Mode) ....................... 19–20
19.3.9.4 Burst Timing (Single-Buffer Mode) ....................................................... 19–20
19.3.10 External Recognition of an IDMA Transfer ............................................... 19–21
19.3.11 Interrupts During an IDMA Bus Transfer .................................................. 19–22
Title
Page
Number
Chapter 20
Serial Interface
20.1 SI Features ........................................................................................................ 20–2
20.2 The Time-Slot Assigner (TSA)......................................................................... 20–3
20.2.1 TSA Signals .................................................................................................. 20–7
20.2.2 Enabling Connections to the TSA ................................................................ 20–7
20.2.3 SI RAM......................................................................................................... 20–8
20.2.3.1 Disabling and Reenabling the TSA .......................................................... 20–8
20.2.3.2 TDMa Channel with Static Frames .......................................................... 20–8
20.2.3.3 SI RAM Dynamic Changes ...................................................................... 20–8
20.2.3.4 TDMa Channel with Dynamic Frames ................................................... 20–10
20.2.3.5 Programming the SI RAM...................................................................... 20–11
20.2.3.6 SI RAM Programming Example ............................................................ 20–13
20.2.4 The SI Registers.......................................................................................... 20–14
20.2.4.1 SI Global Mode Register (SIGMR) ........................................................ 20–14
20.2.4.2 SI Mode Register (SIMODE) ................................................................. 20–14
20.2.4.3 SI Clock Route Register (SICR) ............................................................. 20–20
20.2.4.4 SI Command Register (SICMR)............................................................. 20–22
20.2.4.5 SI Status Register (SISTR) ..................................................................... 20–22
20.2.4.6 SI RAM Pointer Register (SIRP)............................................................ 20–23
20.2.5 IDL Bus Implementation ............................................................................ 20–24
20.2.5.1 ISDN Terminal Adaptor Application ..................................................... 20–25
20.2.5.2 Programming the IDL Interface.............................................................. 20–27
20.2.6 GCI Bus Implementation ............................................................................ 20–28
20.2.6.1 GCI Activation/Deactivation .................................................................. 20–30
20.2.6.2 Programming the GCI Interface ............................................................. 20–30
20.2.6.2.1 Normal Mode...................................................................................... 20–30
20.2.6.2.2 SCIT Mode ......................................................................................... 20–30
20.2.6.3 GCI Interface (SCIT Mode) Programming Example ............................. 20–31
MPC850 Family User’s Manual
CONTENTS
Paragraph
Number
20.3 NMSI Configuration ....................................................................................... 20–32
20.4 Baud Rate Generators (BRGs)........................................................................ 20–34
20.4.1 Baud Rate Generator Configuration Registers (BRGCn)........................... 20–36
20.4.2 Autobaud Operation on the SCC UART .................................................... 20–37
20.4.3 UART Baud Rate Examples ....................................................................... 20–38
Title
Page
Number
Chapter 21
Serial Communications Controllers
21.1 Features............................................................................................................. 21–2
21.2 SCC Registers ................................................................................................... 21–3
21.2.1 General SCC Mode Register (GSMR).......................................................... 21–3
21.2.2 Protocol-Specific Mode Register (PSMR) ................................................... 21–9
21.2.3 Data Synchronization Register (DSR).......................................................... 21–9
21.2.4 Transmit-on-Demand Register (TODR)..................................................... 21–10
21.3 SCC Buffer Descriptors (BDs) ....................................................................... 21–11
21.4 SCC Parameter RAM...................................................................................... 21–13
21.4.1 Function Code Registers (RFCR and TFCR) ............................................. 21–15
21.4.2 Handling SCC Interrupts ............................................................................ 21–15
21.4.3 SCC Initialization ....................................................................................... 21–16
21.4.4 Controlling SCC Timing with RTS, CTS, and CD..................................... 21–17
21.4.4.1 Synchronous Protocols ........................................................................... 21–17
21.4.4.2 Asynchronous Protocols ......................................................................... 21–20
21.4.5 Digital Phase-Locked Loop (DPLL) Operation.......................................... 21–21
21.4.5.1 Encoding Data with a DPLL................................................................... 21–23
21.4.6 Clock Glitch Detection ............................................................................... 21–24
21.4.7 Reconfiguring the SCCs ............................................................................. 21–25
21.4.7.1 General Reconfiguration Sequence for an SCC Transmitter.................. 21–25
21.4.7.2 Reset Sequence for an SCC Transmitter ................................................ 21–26
21.4.7.3 General Reconfiguration Sequence for an SCC Receiver ...................... 21–26
21.4.7.4 Reset Sequence for an SCC Receiver ..................................................... 21–26
21.4.7.5 Switching Protocols ................................................................................ 21–26
21.4.8 Saving Power .............................................................................................. 21–26
Chapter 22
SCC UART Mode
22.1 Features............................................................................................................. 22–2
22.2 Normal Asynchronous Mode............................................................................ 22–3
22.3 Synchronous Mode ........................................................................................... 22–3
22.4 SCC UART Parameter RAM............................................................................ 22–4
22.5 Data-Handling Methods: Character- or Message-Based .................................. 22–5
Contents
xxiii
CONTENTS
Paragraph
Number
22.6 Error and Status Reporting................................................................................ 22–6
22.7 SCC UART Commands.................................................................................... 22–6
22.8 Multidrop Systems and Address Recognition................................................... 22–7
22.9 Receiving Control Characters ........................................................................... 22–7
22.10 Hunt Mode (Receiver) ...................................................................................... 22–9
22.11 Inserting Control Characters into the Transmit Data Stream............................ 22–9
22.12 Sending a Break (Transmitter)........................................................................ 22–10
22.13 Sending a Preamble (Transmitter) .................................................................. 22–10
22.14 Fractional Stop Bits (Transmitter) .................................................................. 22–10
22.15 Handling Errors in the SCC UART Controller............................................... 22–11
22.16 UART Mode Register (PSMR)....................................................................... 22–12
22.17 SCC UART Receive Buffer Descriptor (RxBD) ............................................ 22–14
22.18 SCC UART Transmit Buffer Descriptor (TxBD)........................................... 22–17
22.19 SCC UART Event Register (SCCE) and Mask Register (SCCM) ................. 22–18
22.20 SCC UART Status Register (SCCS)............................................................... 22–20
22.21 SCC UART Programming Example............................................................... 22–21
22.22 S-Records Loader Application........................................................................ 22–22
Title
Page
Number
Chapter 23
SCC HDLC Mode
23.1 SCC HDLC Features......................................................................................... 23–2
23.2 SCC HDLC Channel Frame Transmission ....................................................... 23–2
23.3 SCC HDLC Channel Frame Reception ............................................................ 23–3
23.4 SCC HDLC Parameter RAM............................................................................ 23–3
23.5 Programming the SCC HDLC Controller......................................................... 23–5
23.6 SCC HDLC Commands.................................................................................... 23–5
23.7 Handling Errors in the SCC HDLC Controller................................................. 23–6
23.8 HDLC Mode Register (PSMR)......................................................................... 23–7
23.9 SCC HDLC Receive Buffer Descriptor (RxBD) .............................................. 23–8
23.10 SCC HDLC Transmit Buffer Descriptor (TxBD)........................................... 23–11
23.11 HDLC Event Register (SCCE)/HDLC Mask Register (SCCM) .................... 23–12
23.12 SCC HDLC Status Register (SCCS)............................................................... 23–14
23.13 SCC HDLC Programming Examples ............................................................. 23–14
23.13.1 SCC HDLC Programming Example #1...................................................... 23–14
23.13.2 SCC HDLC Programming Example #2...................................................... 23–16
23.14 HDLC Bus Mode with Collision Detection.................................................... 23–16
23.14.1 HDLC Bus Features.................................................................................... 23–19
23.14.2 Accessing the HDLC Bus ........................................................................... 23–19
23.14.3 Increasing Performance .............................................................................. 23–20
23.14.4 Delayed RTS Mode .................................................................................... 23–20
23.14.5 Using the Time-Slot Assigner (TSA) ......................................................... 23–22
MPC850 Family User’s Manual
CONTENTS
Paragraph
Number
23.14.6 HDLC Bus Protocol Programming............................................................. 23–22
23.14.6.1 Programming GSMR and PSMR for the HDLC Bus Protocol .............. 23–22
23.14.6.2 HDLC Bus Controller Programming Example....................................... 23–23
Title
Page
Number
Chapter 24
SCC AppleTalk Mode
24.1 Operating the LocalTalk Bus ............................................................................ 24–1
24.2 Features............................................................................................................. 24–2
24.3 Connecting to AppleTalk.................................................................................. 24–3
24.4 Programming the SCC in AppleTalk Mode...................................................... 24–3
24.4.1 Programming the GSMR .............................................................................. 24–3
24.4.2 Programming the PSMR............................................................................... 24–4
24.4.3 Programming the TODR............................................................................... 24–4
24.4.4 SCC AppleTalk Programming Example....................................................... 24–4
Chapter 25
SCC Asynchronous HDLC Mode and IrDA
25.1 Asynchronous HDLC Features ......................................................................... 25–1
25.2 Asynchronous HDLC Frame Transmission Processing ................................... 25–2
25.3 Asynchronous HDLC Frame Reception Processing......................................... 25–2
25.4 Transmitter Transparency Encoding................................................................. 25–3
25.5 Receiver Transparency Decoding ..................................................................... 25–3
25.6 Exceptions to RFC 1549 ................................................................................... 25–4
25.7 Asynchronous HDLC Channel Implementation............................................... 25–5
25.8 Asynchronous HDLC Mode Parameter RAM.................................................. 25–5
25.9 Configuring GSMR and DSR for Asynchronous HDLC ................................. 25–6
25.9.1 General SCC Mode Register (GSMR).......................................................... 25–7
25.9.2 Data Synchronization Register
25.10 Programming the Asynchronous HDLC Controller ......................................... 25–7
25.11 Asynchronous HDLC Commands .................................................................... 25–7
25.12 Handling Errors in the Asynchronous HDLC Controller ................................. 25–8
25.13 SCC Asynchronous HDLC Registers ............................................................... 25–9
25.13.1 Asynchronous HDLC Event Register (SCCE)/Asynchronous
HDLC Mask Register (SCCM) ................................................................25–9
25.13.2 SCC Asynchronous HDLC Status Register (SCCS) .................................. 25–10
25.13.3 Asynchronous HDLC Mode Register (PSMR) .......................................... 25–11
25.14 SCC Asynchronous HDLC RxBDs ................................................................ 25–11
25.15 SCC Asynchronous HDLC TxBDs ................................................................ 25–13
25.16 Differences between HDLC and Asynchronous HDLC................................. 25–14
25.17 SCC Asynchronous HDLC Programming Example....................................... 25–15
(DSR).......................................................... 25–7
Contents
xxv
CONTENTS
Paragraph
Number
Title
Page
Number
Chapter 26
SCC BISYNC Mode
26.1 Features............................................................................................................. 26–2
26.2 SCC BISYNC Channel Frame Transmission ................................................... 26–2
26.3 SCC BISYNC Channel Frame Reception......................................................... 26–3
26.4 SCC BISYNC Parameter RAM........................................................................ 26–4
26.5 SCC BISYNC Commands ................................................................................ 26–5
26.6 SCC BISYNC Control Character Recognition ................................................. 26–6
26.7 BISYNC SYNC Register (BSYNC)................................................................. 26–7
26.8 SCC BISYNC DLE Register (BDLE) .............................................................. 26–8
26.9 Sending and Receiving the Synchronization Sequence .................................... 26–9
26.10 Handling Errors in the SCC BISYNC .............................................................. 26–9
26.11 BISYNC Mode Register (PSMR)................................................................... 26–10
SCC
26.12
26.13 SCC BISYNC Transmit BD (TxBD).............................................................. 26–13
26.14 BISYNC Event Register (SCCE)/BISYNC Mask Register (SCCM)............. 26–15
26.15 SCC Status Registers (SCCS)......................................................................... 26–16
26.16 Programming the SCC BISYNC Controller................................................... 26–16
26.17 SCC BISYNC Programming Example ........................................................... 26–17
BISYNC Receive BD (RxBD)............................................................... 26–12
Chapter 27
SCC Ethernet Mode
27.1 Ethernet on the MPC850................................................................................... 27–2
27.2 Features............................................................................................................. 27–3
27.3 Learning Ethernet on the MPC850 ................................................................... 27–4
27.4 Connecting the MPC850 to Ethernet ................................................................ 27–4
27.5 SCC Ethernet Channel Frame Transmission .................................................... 27–6
27.6 SCC Ethernet Channel Frame Reception.......................................................... 27–6
27.7 SCC Ethernet Parameter RAM ......................................................................... 27–7
27.8 Programming the Ethernet Controller............................................................. 27–10
27.9 SCC Ethernet Commands ............................................................................... 27–10
27.10 SCC Ethernet Address Recognition................................................................ 27–11
27.11 Hash Table Algorithm..................................................................................... 27–12
27.12 Interpacket Gap Time ..................................................................................... 27–13
27.13 Handling Collisions ........................................................................................ 27–13
27.14 Internal and External Loopback...................................................................... 27–13
27.15 Full-Duplex Ethernet Support......................................................................... 27–14
27.16 Handling Errors in the Ethernet Controller..................................................... 27–14
27.17 Ethernet Mode Register (PSMR) .................................................................... 27–15
27.18 SCC Ethernet Receive Buffer Descriptor ....................................................... 27–16
MPC850 Family User’s Manual
CONTENTS
Paragraph
Number
27.19 SCC Ethernet Transmit Buffer Descriptor...................................................... 27–18
27.20 SCC Ethernet Event Register (SCCE)/Mask Register (SCCM) ..................... 27–20
27.21 SCC Ethernet Programming Example ............................................................ 27–21
Title
Page
Number
Chapter 28
SCC Transparent Mode
28.1 Features............................................................................................................. 28–1
28.2 SCC Transparent Channel Frame Transmission Process.................................. 28–2
28.3 SCC Transparent Channel Frame Reception Process....................................... 28–2
28.4 Achieving Synchronization in Transparent Mode ............................................ 28–3
28.4.1 Synchronization in NMSI Mode................................................................... 28–3
28.4.1.1 In-Line Synchronization Pattern ............................................................... 28–3
28.4.1.2 External Synchronization Signals ............................................................. 28–4
28.4.1.2.1 External Synchronization Example ...................................................... 28–4
28.4.1.3 Transparent Mode without Explicit Synchronization ............................... 28–5
28.4.1.4 End of Frame Detection ............................................................................ 28–5
28.4.2 Synchronization and the TSA ....................................................................... 28–5
28.4.2.1 In-line Synchronization Pattern ................................................................ 28–5
28.4.2.2 Inherent Synchronization .......................................................................... 28–6
28.5 CRC Calculation in Transparent Mode............................................................. 28–6
28.6 SCC Transparent Parameter RAM.................................................................... 28–6
28.7 SCC Transparent Commands............................................................................ 28–6
28.8 Handling Errors in the Transparent Controller ................................................. 28–7
28.9 Transparent Mode and the PSMR..................................................................... 28–8
28.10 SCC Transparent Receive Buffer Descriptor (RxBD)...................................... 28–8
28.11 SCC Transparent Transmit Buffer Descriptor (TxBD) .................................. 28–10
28.12 SCC Transparent Event Register (SCCE)/Mask Register (SCCM) ............... 28–11
28.13 SCC Status Register in Transparent Mode (SCCS)........................................ 28–12
28.14 SCC2 Transparent Programming Example..................................................... 28–13
Chapter 29
IrDA Mode—SCC2 Only
29.1 Low-Speed IrDA Protocol ................................................................................ 29–2
29.2 Middle-Speed IrDA Protocol............................................................................ 29–2
29.3 High-Speed IrDA Protocol ............................................................................... 29–3
29.3.1 4PPM Data Encoding Definition .................................................................. 29–3
29.3.2 Data Link Layer ............................................................................................ 29–4
29.3.3 Serial Infrared Interaction Pulses.................................................................. 29–5
29.4 IrDA Registers .................................................................................................. 29–6
29.4.1 Infrared Mode Register (IRMODE) ............................................................. 29–6
Contents xxvii
CONTENTS
Paragraph
Number
29.4.2 Infrared Serial Interaction Control Register (IRSIP).................................... 29–7
29.5 Low-Speed IrDA Programming........................................................................ 29–8
29.6 Middle-Speed IrDA Programming ................................................................... 29–9
29.7 High-Speed IrDA Programming Example...................................................... 29–10
Title
Page
Number
Chapter 30
Serial Management Controllers (SMCs)
30.1 SMC Features.................................................................................................... 30–2
30.2 Common SMC Settings and Configurations..................................................... 30–3
30.2.1 SMC Mode Registers (SMCMRn) ............................................................... 30–3
30.2.2 SMC Buffer Descriptors (BDs) .................................................................... 30–5
30.2.3 SMC Parameter RAM................................................................................... 30–6
30.2.3.1 SMC Function Code Registers (RFCR/TFCR) ........................................ 30–7
30.2.4 Disabling SMCs On-the-Fly ......................................................................... 30–8
30.2.4.1 SMC Transmitter Full Sequence .............................................................. 30–8
30.2.4.2 SMC Transmitter Shortcut Sequence ....................................................... 30–9
30.2.4.3 SMC Receiver Full Sequence ................................................................... 30–9
30.2.4.4 SMC Receiver Shortcut Sequence ............................................................ 30–9
30.2.4.5 Changing SMC Protocols ......................................................................... 30–9
30.2.5 Saving Power ................................................................................................ 30–9
30.2.6 Handling Interrupts In the SMC ................................................................... 30–9
30.3 SMC in UART Mode...................................................................................... 30–10
30.3.1 SMC UART Features.................................................................................. 30–10
30.3.2 SMC UART-Specific Parameter RAM ...................................................... 30–11
30.3.3 SMC UART Channel Transmission Process .............................................. 30–11
30.3.4 SMC UART Channel Reception Process ................................................... 30–12
30.3.5 Data Handling Modes: Character- and Message-Oriented ......................... 30–12
30.3.6 SMC UART Commands............................................................................. 30–13
30.3.7 Sending a Break .......................................................................................... 30–13
30.3.8 Sending a Preamble .................................................................................... 30–13
30.3.9 Handling Errors in the SMC UART Controller.......................................... 30–14
30.3.10 SMC UART Receive BD (RxBD).............................................................. 30–14
30.3.11 SMC UART Transmit BD (TxBD) ............................................................ 30–17
30.3.12 SMC UART Event Register (SMCE)/Mask Register (SMCM)................. 30–18
30.3.13 SMC UART Controller Programming Example ........................................ 30–19
30.4 SMC in Transparent Mode.............................................................................. 30–20
30.4.1 SMC Transparent Mode Features ............................................................... 30–21
30.4.2 SMC Transparent-Specific Parameter RAM .............................................. 30–21
30.4.3 SMC Transparent Channel Transmission Process...................................... 30–21
30.4.4 SMC Transparent Channel Reception Process ........................................... 30–22
30.4.5 Using SMSYN for Synchronization ........................................................... 30–22
MPC850 Family User’s Manual
CONTENTS
Paragraph
Number
30.4.6 Using TSA for Synchronization ................................................................. 30–23
30.4.7 SMC Transparent Commands..................................................................... 30–25
30.4.8 Handling Errors in the SMC Transparent Controller.................................. 30–26
30.4.9 SMC Transparent Receive BD (RxBD)...................................................... 30–26
30.4.10 SMC Transparent Transmit BD (TxBD) .................................................... 30–27
30.4.11 SMC Transparent Event Register (SMCE)/Mask Register (SMCM)......... 30–29
30.4.12 SMC Transparent NMSI Programming Example....................................... 30–29
30.4.13 SMC Transparent TSA Programming Example ......................................... 30–30
30.5 SMC in GCI Mode.......................................................................................... 30–31
30.5.1 SMC GCI Parameter RAM......................................................................... 30–32
30.5.2 Handling the GCI Monitor Channel ........................................................... 30–32
30.5.2.1 SMC GCI Monitor Channel Transmission Process ................................ 30–32
30.5.2.1.1 SMC GCI Monitor Channel Reception Process ................................. 30–32
30.5.3 Handling the GCI C/I Channel ................................................................... 30–33
30.5.3.1 SMC GCI C/I Channel Transmission Process ........................................ 30–33
30.5.3.2 SMC GCI C/I Channel Reception Process ............................................. 30–33
30.5.4 SMC GCI Commands................................................................................. 30–33
30.5.5 SMC GCI Monitor Channel RxBD ............................................................ 30–33
30.5.6 SMC GCI Monitor Channel TxBD............................................................. 30–34
30.5.7 SMC GCI C/I Channel RxBD .................................................................... 30–35
30.5.8 SMC GCI C/I Channel TxBD..................................................................... 30–35
30.5.9 SMC GCI Event Register (SMCE)/Mask Register (SMCM)..................... 30–36
Title
Page
Number
Chapter 31
Serial Peripheral Interface (SPI)
31.1 Features............................................................................................................. 31–2
31.2 SPI Clocking and Signal Functions .................................................................. 31–2
31.3 Configuring the SPI Controller......................................................................... 31–3
31.3.1 The SPI as a Master Device.......................................................................... 31–3
31.3.2 The SPI as a Slave Device ............................................................................ 31–5
31.3.3 The SPI in Multi-master Operation .............................................................. 31–5
31.4 SPI Registers..................................................................................................... 31–7
31.4.1 SPI Mode Register (SPMODE) .................................................................... 31–7
31.4.1.1 SPI Transfers with Different Clocking Modes ......................................... 31–8
31.4.1.2 SPI Examples with Different SPMODE[LEN] Values ............................ 31–9
31.4.2 SPI Event/Mask Registers (SPIE/SPIM) .................................................... 31–10
31.4.3 SPI Command Register (SPCOM) ............................................................. 31–10
31.5 SPI Parameter RAM ....................................................................................... 31–11
31.5.1 Receive/Transmit Function Code Registers (RFCR/TFCR) ...................... 31–12
31.6 SPI Commands................................................................................................ 31–13
31.7 The SPI Buffer Descriptor (BD) Table........................................................... 31–13
Contents xxix
CONTENTS
Paragraph
Number
Title
Page
Number
31.7.1 SPI Buffer Descriptors (BDs) ..................................................................... 31–13
31.7.1.1 SPI Receive BD (RxBD) ........................................................................ 31–14
31.7.1.2 SPI Transmit BD (TxBD) ....................................................................... 31–15
31.8 SPI Master Programming Example ................................................................ 31–16
31.9 SPI Slave Programming Example................................................................... 31–17
31.10 Handling Interrupts in the SPI ........................................................................ 31–18
Chapter 32
Universal Serial Bus Controller
32.1 Overview........................................................................................................... 32–1
32.2 Features............................................................................................................. 32–2
32.3 Host Controller Limitations .............................................................................. 32–3
32.4 USB Controller Signal Functions and Clocking............................................... 32–3
32.5 Sending and Receiving ..................................................................................... 32–5
32.6 USB Parameter RAM ....................................................................................... 32–7
32.7 USB Registers................................................................................................. 32–10
32.7.1 USB Mode Register (USMOD).................................................................. 32–10
32.7.2 USB Slave Address Register (USADR) ..................................................... 32–11
32.7.3 USB Endpoint Configuration Registers 0–3 (USEPn) ............................... 32–11
32.7.4 USB Command Register (USCOM)........................................................... 32–12
32.7.5 USB Event Register (USBER)/Mask Register (USBMR) ......................... 32–13
32.7.6 USB Status Register (USBS)...................................................................... 32–14
32.8 USB Buffer Descriptor Tables........................................................................ 32–15
32.8.1 USB Receive Buffer Descriptor (RxBD).................................................... 32–17
32.8.2 USB Transmit Buffer Descriptor (TxBD) .................................................. 32–18
32.9 USB CP Commands........................................................................................ 32–20
32.10 USB Controller Errors .................................................................................... 32–21
32.11 Programming the USB Host Controller.......................................................... 32–22
32.11.1 USB Host Controller Initialization Example .............................................. 32–23
32.12 USB Function Controller Initialization Example ........................................... 32–24
Chapter 33
2
I
C Controller
33.1 I2C Features...................................................................................................... 33–2
33.2 I2C Controller Clocking and Signal Functions................................................. 33–2
33.3 I2C Controller Transfers ................................................................................... 33–3
33.3.1 I
33.3.2 I
33.3.3 I
33.3.4 I
2
C Master Write (Slave Read)..................................................................... 33–3
2
C Loopback Testing................................................................................... 33–4
2
C Master Read (Slave Write)..................................................................... 33–4
2
C Multi-Master Considerations ................................................................. 33–5
MPC850 Family User’s Manual