NXP MSC8126 Reference guide

  • Hello! I am an AI chatbot trained to assist you with the NXP MSC8126 Reference guide. I’ve already reviewed the document and can help you find the information you need or explain it in simple terms. Just ask your questions, and providing more details will help me assist you more effectively!
MSC8126 Reference Manual
Quad Core 16-Bit Digital Signal Processor
MSC8126RM
Rev 2, April 2005
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 products 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.
Freescale™ and the Freescale logo are trademarks of Freescale Semiconductor,
Inc. StarCore is a trademark of StarCore LLC. Metrowerks and CodeWarrior are
registered trademarks of Metrowerks Corp. in the U.S. and/or other countries. All
other product or service names are the property of their respective owners.
© Freescale Semiconductor, Inc. 2004, 2005.
MSC8126RM
Rev. 2
4/2005
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 München, 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
1
MSC8126 Overview
2
SC140 Core Overview
4
System Interface Unit (SIU)
7
Clocks
12
Memory Controller
13
System Bus
14
Direct Slave Interface (DSI)
17
Interrupt Processing
18
Debugging
21
A
Programming Reference
B
MSC8126 Dictionary
I
Index
Universal Asynchronous Receiver/Transmitter (UART)
External Signals
Reset
Boot Program
Memory Map
Extended Core
Hardware Semaphores
Direct Memory Access (DMA) Controller
Internal Peripheral Bus (IPBus)
Time-Division Multiplexing (TDM) Interface
Timers
General-Purpose Input/Output (GPIO)
3
5
6
8
9
15
16
19
20
22
23
MQBus and M2 Memory
10
SQBus
11
I
2
C Software Module
24
Ethernet Controller
25
Viterbi Coprocessor (VCOP)
26
Turbo Coprocessor (TCOP)
27
C
MSC8126 Boot Code
1
MSC8126 Overview
2
SC140 Core Overview
4
System Interface Unit (SIU)
7
Clocks
12
Memory Controller
13
System Bus
14
Direct Slave Interface (DSI)
17
Interrupt Processing
18
Debugging
21
A
Programming Reference
B
MSC8126 Dictionary
I
Index
Universal Asynchronous Receiver/Transmitter (UART)
External Signals
Reset
Boot Program
Memory Map
Extended Core
Hardware Semaphores
Direct Memory Access (DMA) Controller
Internal Peripheral Bus (IPBus)
Time-Division Multiplexing (TDM) Interface
Timers
General-Purpose Input/Output (GPIO)
3
5
6
8
9
15
16
19
20
22
23
MQBus and M2 Memory
10
SQBus
11
I
2
C Software Module
24
Ethernet Controller
25
Viterbi Coprocessor (VCOP)
26
Turbo Coprocessor (TCOP)
27
C
MSC8126 Boot Code
MSC8126 Reference Manual, Rev. 2
Freescale Semiconductor v
Contents
About This Book
Before Using This Manual—Important Note . . . . . . . . . . . . . . . . . . . . . . . . . . . xxii
Audience and Helpful Hints . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .xxii
Notational Conventions and Definitions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .xxii
Conventions for Registers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xxiv
Organization . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xxiv
Other MSC8126 Documentation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .xxvii
Further Reading . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .xxvii
1 MSC8126 Overview
1.1 Features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-2
1.2 Architecture . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-10
1.2.1 Extended Core. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-12
1.2.1.1 SC140 Core . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-12
1.2.1.2 M1 Memory . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-13
1.2.1.3 Instruction Cache . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-13
1.2.1.4 QBus System . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-15
1.2.2 Power Saving Modes. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-16
1.2.2.1 Extended Core Wait Mode. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-16
1.2.2.2 Extended Core Stop Mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-17
1.2.3 M2 Memory. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-17
1.2.4 System Interface Unit (SIU) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-17
1.2.4.1 60x-Compatible System Bus Interface. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-17
1.2.4.2 Memory Controller. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-18
1.2.5 Direct Slave Interface (DSI) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-18
1.2.6 Direct Memory Access (DMA) Controller . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-19
1.2.7 Internal and External Bus Architecture. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-20
1.2.8 TDM Serial Interface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-22
1.2.9 Ethernet Controller . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-23
1.2.10 VCOP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-24
1.2.11 TCOP. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-25
1.2.12 Universal Asynchronous Receiver/Transmitter (UART) . . . . . . . . . . . . . . . . 1-26
1.2.13 Timers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-26
MSC8126 Reference Manual, Rev. 2
vi Freescale Semiconductor
Contents
1.2.14 GPIOs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-26
1.2.15 Reset and Boot . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-26
1.2.16 Interrupt Scheme . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-27
1.2.17 Signal Multiplexing Options. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-28
1.3 Internal Communication and Semaphores. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-28
1.3.1 Internal Communication . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-29
1.3.2 Atomic Operations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-29
1.3.3 Hardware Semaphores. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-29
2 SC140 Core Overview
2.1 Architecture . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-2
2.1.1 Data Arithmetic Logic Unit (Data ALU) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-2
2.1.1.1 Data Registers. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-4
2.1.1.2 Multiply-Accumulate (MAC) Unit. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-4
2.1.1.3 Bit-Field Unit (BFU) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-5
2.1.2 Address Generation Unit (AGU). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-5
2.1.2.1 Stack Pointer Registers. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-7
2.1.2.2 Bit Mask Unit (BMU) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-7
2.1.3 Program Sequencer Unit (PSEQ) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-7
2.1.4 Enhanced On-Chip Emulation (EOnCE) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-8
2.2 Programming Model . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-8
2.2.1 AGU Programming Model . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-8
2.2.2 Data Arithmetic Logic Programming Model . . . . . . . . . . . . . . . . . . . . . . . . . 2-11
2.2.3 Program Control Unit Programming Model . . . . . . . . . . . . . . . . . . . . . . . . . . 2-12
2.3 Instruction Set Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-12
2.4 Additional Programming Considerations. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-19
3 External Signals
3.1 Power Signals. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-3
3.2 Clock Signals . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-3
3.3 Reset and Configuration Signals . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-3
3.4 Direct Slave Interface, System Bus, Ethernet, and Interrupt Signals . . . . . . . . . 3-4
3.5 Memory Controller Signals . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-16
3.6 GPIO, TDM, UART, and Timer Signals . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-18
3.7 Dedicated Ethernet Signals . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-27
3.8 EOnCE Event and JTAG Test Access Port Signals. . . . . . . . . . . . . . . . . . . . . . 3-27
3.9 Reserved Signals . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-28
4 System Interface Unit (SIU)
4.1 Architecture . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-2
4.1.1 Bus Monitors. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-3
MSC8126 Reference Manual, Rev. 2
Freescale Semiconductor vii
Contents
4.1.2 Timers Clock. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-4
4.1.3 Time Counter (TMCNT). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-4
4.1.4 Periodic Interrupt Timer (PIT) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-5
4.1.5 SIU and General Software Watchdog Timers. . . . . . . . . . . . . . . . . . . . . . . . . . 4-6
4.1.6 SIU Multiplexing. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-8
4.2 SIU Programming Model. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-10
4.2.1 System Configuration and Protection Registers . . . . . . . . . . . . . . . . . . . . . . . 4-10
4.2.2 Periodic Interrupt Registers. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-27
5 Reset
5.1 Power-On Reset (PORESET) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-2
5.2 Reset Configuration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-4
5.2.1 Reset Configuration Through the DSI . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-5
5.2.2 Reset Configuration Through the System Bus . . . . . . . . . . . . . . . . . . . . . . . . . 5-7
5.3 Hard Reset . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-8
5.4 Soft Reset. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-9
5.5 Reset Configuration Writes Through the System Bus. . . . . . . . . . . . . . . . . . . . . 5-9
5.5.1 Single MSC8126 With Default Configuration . . . . . . . . . . . . . . . . . . . . . . . . . 5-9
5.5.2 Single MSC8126 System Configuration From EPROM. . . . . . . . . . . . . . . . . 5-10
5.5.3 Single Slave MSC8126 Configuration by System Bus Host . . . . . . . . . . . . . 5-11
5.5.4 Multi-MSC8126 System Configuration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-11
5.5.5 Multiple MSC8126 Devices in a System With No EPROM . . . . . . . . . . . . . 5-14
5.6 Reset Programming Model . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-14
5.6.1 Hard Reset Configuration Word . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-14
5.6.2 Reset Status Registers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-17
6 Boot Program
6.1 Boot Basics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-2
6.2 Booting From an External Memory Device. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-3
6.3 Booting from an External Host (DSI or System Bus) . . . . . . . . . . . . . . . . . . . . . 6-4
6.4 Booting From the TDM Interface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-4
6.4.1 Initializing the TDM Physical Layer. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-5
6.4.1.1 Receiver Initialization . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-6
6.4.1.2 Transmitter Initialization . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-7
6.4.2 TDM Logical Layer Handshake . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-8
6.4.2.1 Messages Structure. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-8
6.4.2.2 Operation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-10
6.5 Booting From a UART Device . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-13
6.6 Booting from I²C Slave Memory Device. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-14
6.6.1 Procedure Flow . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-16
6.6.2 I
2
C System. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-17
MSC8126 Reference Manual, Rev. 2
viii Freescale Semiconductor
Contents
7Clocks
7.1 Clock Generation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7-2
7.2 Board-Level Clock Distribution. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7-3
7.2.1 Single Master Mode Board-Level Clock Distribution . . . . . . . . . . . . . . . . . . . 7-3
7.2.2 Multi-Master Mode Board-Level Clock Distribution. . . . . . . . . . . . . . . . . . . . 7-5
7.3 Clock Configuration. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7-7
7.4 Clocks Programming Model . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7-10
8Memory Map
8.1 SC140 Core Internal Address Space . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8-7
8.2 QBus Address Space . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8-8
8.3 MQBus Address Space . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8-10
8.4 SQBus Address Space . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8-11
8.5 IPBus1 Address Space . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8-11
8.6 IPBus2 Address Space . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8-26
8.7 Local Bus Address Space. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8-28
8.8 System Bus Address Space . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8-56
8.9 DSI Address Map. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8-61
8.10 Pseudo Command Address Space . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8-80
8.11 Notes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8-80
9 Extended Core
9.1 SC140 DSP Core . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-2
9.2 Extended Core Memory (M1) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-3
9.2.1 Memory Organization. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-4
9.2.1.1 Memory Groups . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-4
9.2.1.2 Memory Contention and Priority . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-6
9.2.2 Errors and Exceptions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-6
9.2.2.1 Errors . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-6
9.2.2.2 Exceptions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-6
9.3 Extended QBus System . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-7
9.3.1 Architecture. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-8
9.3.1.1 Fetch Unit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-9
9.3.2 QBus Execution Order . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-11
9.3.3 QBus Banks. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-11
9.3.4 Bank Registers. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-12
9.3.5 Bank Addressing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-12
9.3.6 Reservation Process. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-14
9.3.7 Setting a Data Area . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-15
9.3.8 Instruction Cacheable Area. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-17
9.3.9 EQBS Programming Model . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-18
MSC8126 Reference Manual, Rev. 2
Freescale Semiconductor ix
Contents
9.4 Instruction Cache (ICache) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-24
9.4.1 ICache Attributes. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-28
9.4.2 Debugging . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-29
9.4.3 Multi-Task Support. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-32
9.4.4 ICache Programming Model. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-33
9.4.4.1 Modes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-34
9.4.4.2 Commands . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-34
9.4.4.3 Reads . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-35
9.4.4.4 Restrictions. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-35
9.4.4.5 ICache Registers. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-36
9.5 Programmable Interrupt Controller (PIC) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-38
9.6 Local Interrupt Controller (LIC) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-39
9.7 Extended Core Power Saving Modes. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-39
9.7.1 Extended Core Wait Mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-39
9.7.2 Extended Core Stop Mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-39
10 MQBus and M2 Memory
10.1 MQBus Arbitration Model. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-2
10.2 M2 Memory . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-3
10.3 Reservation Operation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-3
11 SQBus
11.1 System Bus Interface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11-2
11.2 Reservation (Atomic) Operation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11-2
11.2.1 Reservation Operation in the SQBus Arbiter . . . . . . . . . . . . . . . . . . . . . . . . . 11-3
11.2.2 Reservation Operation on the System Bus . . . . . . . . . . . . . . . . . . . . . . . . . . . 11-3
11.2.3 Conditions for Failure of the Reservation Operation . . . . . . . . . . . . . . . . . . . 11-3
12 Memory Controller
12.1 Basic Architecture . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12-3
12.1.1 Address and Address Space Checking . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12-8
12.1.2 Page Hit Checking. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12-8
12.1.3 Parity Generation and Checking . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12-8
12.1.4 Transfer Error Acknowledge (TEA
) Generation . . . . . . . . . . . . . . . . . . . . . . 12-9
12.1.5 Machine Check Interrupt (MCP
) Generation . . . . . . . . . . . . . . . . . . . . . . . . . 12-9
12.1.6 Data Buffer Controls (BCTL[0–1]
). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12-9
12.1.7 Atomic Bus Operation. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12-10
12.1.8 Partial Data Valid Indication (PSDVAL
) . . . . . . . . . . . . . . . . . . . . . . . . . . . 12-10
12.1.9 ECC/Parity Byte-Select (PPBS
) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12-11
12.1.10 Data Pipelining . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12-11
12.1.11 60x-Compatible Mode. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12-12
MSC8126 Reference Manual, Rev. 2
x Freescale Semiconductor
Contents
12.1.12 External Memory Controller Support . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12-12
12.1.13 External Address Latch Enable Signal (ALE) . . . . . . . . . . . . . . . . . . . . . . . 12-12
12.1.14 BADDR[27–31] Signal Connections . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12-12
12.2 SDRAM Machine . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12-13
12.2.1 Supported SDRAM Configurations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12-14
12.2.2 SDRAM Power-On Initialization . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12-14
12.2.3 JEDEC-Standard SDRAM Interface Commands . . . . . . . . . . . . . . . . . . . . . 12-16
12.2.4 Page-Mode Support and Pipeline Accesses . . . . . . . . . . . . . . . . . . . . . . . . . 12-16
12.2.5 Bank Interleaving . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12-17
12.2.6 BNKSEL Signals in Single-MSC8126 Bus Mode . . . . . . . . . . . . . . . . . . . . 12-18
12.2.7 SDRAM Address Multiplexing (SDAM and BSMA) . . . . . . . . . . . . . . . . . 12-18
12.2.8 SDRAM Read/Write Transactions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12-20
12.2.9 SDRAM Refresh . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12-20
12.2.10 SDRAM Signals: Device-Specific Parameters . . . . . . . . . . . . . . . . . . . . . . . 12-20
12.2.11 SDRAM Signals: General Interface Timing. . . . . . . . . . . . . . . . . . . . . . . . . 12-25
12.2.12 SDRAM Signals: mode-set Command Timing. . . . . . . . . . . . . . . . . . . . . . . 12-28
12.2.13 SDRAM Signals: Refresh Timing. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12-28
12.2.14 SDRAM Configuration Examples . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12-29
12.2.14.1 SDRAM Configuration Example (Page-Based Interleaving) . . . . . . . . . . 12-29
12.2.14.2 SDRAM Configuration Example (Bank-Based Interleaving) . . . . . . . . . . 12-31
12.3 General-Purpose Chip-Select Machine (GPCM). . . . . . . . . . . . . . . . . . . . . . . 12-33
12.3.1 GPCM Signals: Timing Configuration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12-34
12.3.1.1 Chip-Select Assertion Timing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12-34
12.3.1.2 Chip-Select and Write Enable Deassertion Timing . . . . . . . . . . . . . . . . . . 12-36
12.3.1.3 Relaxed Timing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12-37
12.3.1.4 Output Enable (POE
) Timing. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12-38
12.3.1.5 Programmable Wait State Configuration . . . . . . . . . . . . . . . . . . . . . . . . . . 12-38
12.3.1.6 Extended Hold Time on Read Accesses. . . . . . . . . . . . . . . . . . . . . . . . . . . 12-40
12.3.2 GPCM Signals: External Access Termination . . . . . . . . . . . . . . . . . . . . . . . 12-42
12.3.3 Boot Chip-Select Operation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12-44
12.3.4 Differences Between MPC8xx GPCM and MSC8126 GPCM. . . . . . . . . . . 12-44
12.4 User-Programmable Machines (UPMs). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12-45
12.4.1 Requests . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12-46
12.4.1.1 Memory Access Requests. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12-47
12.4.1.2 UPM Refresh Timer Requests . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12-48
12.4.1.3 Software Requests—run Command . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12-48
12.4.1.4 Exception Requests . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12-48
12.4.2 Programming the UPMs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12-49
12.4.3 Clock Timing. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12-49
12.4.4 RAM Array . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12-50
12.4.4.1 RAM Words . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12-51
MSC8126 Reference Manual, Rev. 2
Freescale Semiconductor xi
Contents
12.4.4.2 Last Word (LAST) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12-59
12.4.4.3 Address Multiplexing. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12-59
12.4.4.4 Data Valid and Data Sample Control . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12-59
12.4.4.5 Disable Timer Mechanism (TODT) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12-60
12.4.4.6 Signal Deassertion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12-60
12.4.4.7 Wait Mechanism. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12-60
12.4.4.8 Extended Hold Time on Read Accesses. . . . . . . . . . . . . . . . . . . . . . . . . . . 12-61
12.4.5 DRAM Configuration Example . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12-62
12.4.6 Interface Examples . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12-63
12.4.6.1 Memory System Interface Example Using UPM. . . . . . . . . . . . . . . . . . . . 12-63
12.4.6.2 EDO Interface Example . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12-74
12.4.7 Differences Between MPC8xx UPM and MSC8126 UPM . . . . . . . . . . . . . 12-82
12.5 Handling Devices With Slow or Variable Access Times . . . . . . . . . . . . . . . . 12-82
12.5.1 Hierarchical Bus Interface Example . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12-83
12.5.2 Slow Devices Example . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12-83
12.6 External Master Support (60x-Compatible Mode) . . . . . . . . . . . . . . . . . . . . . 12-83
12.6.1 Strict 60x-Compatible External Masters. . . . . . . . . . . . . . . . . . . . . . . . . . . . 12-84
12.6.2 MSC8126-Type External Masters. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12-84
12.6.3 Extended Controls in 60x-Compatible Mode . . . . . . . . . . . . . . . . . . . . . . . . 12-84
12.6.4 Address Incrementing for External Bursting Masters. . . . . . . . . . . . . . . . . . 12-85
12.6.5 External Masters Timing. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12-85
12.7 Internal SRAM and IPBus Peripherals Support. . . . . . . . . . . . . . . . . . . . . . . . 12-92
12.7.1 UPM Programming ExampleInternal SRAM . . . . . . . . . . . . . . . . . . . . . 12-92
12.7.2 GPCM Programming Example, IPBus Peripherals. . . . . . . . . . . . . . . . . . . . 12-94
12.7.3 Flyby Mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12-94
12.8 Memory Controller Programming Model . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12-95
13 System Bus
13.1 System Bus Signals . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13-1
13.1.1 Address Arbitration. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13-3
13.1.2 Address Start . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13-5
13.1.3 Address Bus. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13-5
13.1.4 Address Transfer Attribute . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13-6
13.1.5 Address Transfer Termination . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13-8
13.1.6 Data Arbitration. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13-9
13.1.7 Data Transfer. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13-10
13.1.8 Data Transfer Termination . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13-12
13.2 60x-Compatible Bus Protocols . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13-14
13.2.1 System Bus Operating Modes. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13-14
13.2.1.1 Single MSC8126 Bus Mode. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13-14
13.2.1.2 60x-Compatible Bus Mode. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13-16
MSC8126 Reference Manual, Rev. 2
xii Freescale Semiconductor
Contents
13.2.2 System Bus Protocols . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13-17
13.2.2.1 Arbitration Phase . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13-18
13.2.2.2 Address Pipelining and Split-Bus Transactions . . . . . . . . . . . . . . . . . . . . . 13-19
13.2.2.3 Memory Coherency . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13-19
13.2.3 Address Tenure Operations. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13-19
13.2.3.1 Address Arbitration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13-20
13.2.3.2 Address Pipelining . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13-21
13.2.3.3 Address Transfer Attribute Signals . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13-22
13.2.3.4 Burst Ordering During Data Transfers. . . . . . . . . . . . . . . . . . . . . . . . . . . . 13-24
13.2.3.5 Effect of Alignment on Data Transfers . . . . . . . . . . . . . . . . . . . . . . . . . . . 13-24
13.2.3.6 Effect of Port Size on Data Transfers. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13-26
13.2.3.7 60x-Compatible System Bus Mode—Size Calculation . . . . . . . . . . . . . . . 13-30
13.2.3.8 Extended Transfer Mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13-31
13.2.3.9 Address Transfer Termination . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13-33
13.2.3.10 Address Retried With ARTRY
Signal . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13-33
13.2.3.11 Address Tenure Timing Configuration . . . . . . . . . . . . . . . . . . . . . . . . . . . 13-34
13.2.3.12 Pipeline Control . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13-35
13.2.4 Data Tenure Operations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13-36
13.2.4.1 Data Bus Arbitration. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13-36
13.2.4.2 Data Streaming Mode. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13-36
13.2.4.3 Data Bus Transfers and Normal Termination . . . . . . . . . . . . . . . . . . . . . . 13-37
13.2.4.4 Effect of ARTRY
Assertion on Data Transfer and Arbitration . . . . . . . . . 13-38
13.2.4.5 Port Size Data Bus Transfers and PSDVAL
Termination . . . . . . . . . . . . . 13-38
13.2.4.6 Data Bus Termination by Assertion of TEA
Signal. . . . . . . . . . . . . . . . . . 13-40
14 Direct Slave Interface (DSI)
14.1 Data Bus. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14-3
14.1.1 Data Bus Width. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14-3
14.1.2 DCR[BEM] Bit Access Considerations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14-4
14.2 Address Bus . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14-6
14.2.1 Sliding Window Addressing Mode. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14-6
14.2.2 Full Address Addressing Mode. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14-8
14.2.3 Host Chip ID Signals (HCID[0–3]) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14-10
14.2.4 DSI Endian Modes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14-10
14.3 Host Access Modes and Timings. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14-11
14.3.1 Single Strobe Versus Dual Strobe Access Modes. . . . . . . . . . . . . . . . . . . . . 14-11
14.3.2 Synchronous Versus Asynchronous Access Mode. . . . . . . . . . . . . . . . . . . . 14-12
14.3.2.1 Burst Transfers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14-12
14.3.2.2 DSI Access Modes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14-13
14.3.3 Asynchronous Mode Operation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14-13
14.3.3.1 Asynchronous Write Using Dual Strobe Mode . . . . . . . . . . . . . . . . . . . . . 14-13
MSC8126 Reference Manual, Rev. 2
Freescale Semiconductor xiii
Contents
14.3.3.2 Asynchronous Write Using Single Strobe Mode . . . . . . . . . . . . . . . . . . . . 14-15
14.3.3.3 Asynchronous Read Using Dual Strobe Mode. . . . . . . . . . . . . . . . . . . . . . 14-16
14.3.3.4 Asynchronous Read Using Single Strobe Mode . . . . . . . . . . . . . . . . . . . . 14-17
14.3.4 Synchronous Mode Operation. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14-18
14.3.4.1 Synchronous Single Write Using Dual Strobe Mode. . . . . . . . . . . . . . . . . 14-18
14.3.4.2 Synchronous Single Write Using Single Strobe Mode . . . . . . . . . . . . . . . 14-19
14.3.4.3 Synchronous Single Read Using Dual Strobe Mode . . . . . . . . . . . . . . . . . 14-20
14.3.4.4 Synchronous Single Read Using Single Strobe Mode. . . . . . . . . . . . . . . . 14-21
14.3.4.5 Synchronous Burst Write Using Dual Strobe Mode . . . . . . . . . . . . . . . . . 14-22
14.3.4.6 Synchronous Burst Write Using Single Strobe Mode . . . . . . . . . . . . . . . . 14-23
14.3.4.7 Synchronous Burst Read Using Dual Strobe Mode. . . . . . . . . . . . . . . . . . 14-24
14.3.4.8 Synchronous Burst Read Using Single Strobe Mode. . . . . . . . . . . . . . . . . 14-25
14.3.5 Broadcast Accesses . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14-26
14.4 DSI Configuration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14-27
14.4.1 Stop Mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14-28
14.4.2 DSI Reset During Host Access . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14-28
14.5 DSI Programming Model. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14-29
14.5.1 Control Registers. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14-29
14.5.2 Status Registers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14-35
15 Hardware Semaphores
16 Direct Memory Access (DMA) Controller
16.1 DMA Signals: Requestor Interface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16-3
16.1.1 Signal Functionality . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16-3
16.1.2 Peripheral Access Timing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16-4
16.2 DMA Operating Modes: Transfer Types. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16-8
16.2.1 DMA Transfer Size and Peripheral Port Size . . . . . . . . . . . . . . . . . . . . . . . . . 16-8
16.2.2 DMA Access Modes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16-8
16.2.3 Application Examples . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16-10
16.2.3.1 External Memory and an External Peripheral on the System Bus . . . . . . . 16-10
16.2.3.2 External Peripheral to Internal Memory. . . . . . . . . . . . . . . . . . . . . . . . . . . 16-11
16.2.3.3 External Peripheral to External Peripheral. . . . . . . . . . . . . . . . . . . . . . . . . 16-12
16.2.3.4 External Memory and External Memory on the System Bus. . . . . . . . . . . 16-13
16.2.3.5 External Memory to Internal Memory on the System Bus. . . . . . . . . . . . . 16-14
16.2.3.6 Internal Memory to Internal Memory. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16-15
16.2.3.7 Flyby Transfer from External Peripheral to External Memory . . . . . . . . . 16-16
16.2.3.8 Flyby Transfers Between Internal Memories, M2 and M1 . . . . . . . . . . . . 16-17
16.2.3.9 Transfers Between Internal Memories M1 and M1 (Flyby Mode) . . . . . . 16-18
16.2.4 DMA Operating Modes: Buffer Types . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16-18
16.2.4.1 Simple Buffer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16-21
MSC8126 Reference Manual, Rev. 2
xiv Freescale Semiconductor
Contents
16.2.4.2 Cyclic Buffer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16-22
16.2.4.3 Incremental Buffer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16-23
16.2.4.4 Chained Buffer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16-24
16.2.4.5 Complex Buffers—Dual Cyclic Buffers . . . . . . . . . . . . . . . . . . . . . . . . . . 16-25
16.2.5 2D Data Transfers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16-26
16.3 DMA Transfer Programming. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16-29
16.3.1 DMA Priority Type. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16-30
16.3.1.1 Fixed-Priority Mode. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16-30
16.3.1.2 Round-Robin Priority Mode. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16-30
16.3.2 DMA Data Transfer Examples . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16-32
16.3.3 Terminating a DMA Transfer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16-32
16.4 DMA Programming Model . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16-33
16.4.1 Configuration Registers. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16-34
16.4.2 DMA Status and Interrupt Registers. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16-41
16.4.3 Bus Error Registers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16-42
17 Interrupt Processing
17.1 Architecture . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17-4
17.1.1 Global Interrupt Controller . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17-4
17.1.1.1 INT_OUT
Generation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17-6
17.1.1.2 NMI
or NMI_OUT Generation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17-7
17.1.1.3 Virtual Interrupt Generation. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17-7
17.1.1.4 Virtual NMI
Generation. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17-8
17.1.1.5 GIC Stop Mode. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17-8
17.1.2 Local Interrupt Controller (LIC) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17-9
17.1.2.1 Resolving LIC Interrupts by the SC140 Cores. . . . . . . . . . . . . . . . . . . . . . 17-11
17.1.2.2 Level Interrupt Mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17-12
17.1.2.3 Edge Interrupt Mode. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17-12
17.1.2.4 DMA Interrupts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17-13
17.1.2.5 LIC Interrupt Sources. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17-13
17.1.3 Programmable Interrupt Controller (PIC). . . . . . . . . . . . . . . . . . . . . . . . . . . 17-19
17.1.4 Peripheral Bus (QBus) Interface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17-20
17.1.4.1 Interrupt Request Generation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17-20
17.1.5 Interrupt Routing. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17-20
17.2 Interrupt Programming Examples . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17-23
17.2.1 Initialization . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17-23
17.2.2 LIC and PIC Programming . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17-24
17.2.3 Clearing Pending Requests . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17-25
17.3 Interrupts Programming Model . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17-25
17.3.1 GIC Programming Model . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17-25
17.3.2 LIC Programming Model . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17-31
MSC8126 Reference Manual, Rev. 2
Freescale Semiconductor xv
Contents
17.3.2.1 LIC Interrupt Configuration Registers . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17-32
17.3.2.2 LIC Interrupt Enable Registers. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17-38
17.3.2.3 LIC Interrupt Status Registers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17-39
17.3.3 PIC Registers. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17-40
17.3.3.1 Edge/Level-Triggered Interrupt Priority Registers . . . . . . . . . . . . . . . . . . 17-40
17.3.3.2 Interrupt Priority Structure and Mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17-41
17.3.3.3 Interrupt Pending Registers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17-43
18 Debugging
18.1 Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18-2
18.2 TAP Controller. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18-4
18.3 Instruction Decoding . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18-5
18.4 Multi-Core JTAG and EOnCE Module Concept. . . . . . . . . . . . . . . . . . . . . . . . 18-8
18.4.1 Enabling the EOnCE Module . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18-9
18.4.2 DEBUG_REQUEST and ENABLE_EOnCE Commands . . . . . . . . . . . . . . 18-10
18.4.3 Reading/Writing EOnCE Registers Through JTAG. . . . . . . . . . . . . . . . . . . 18-10
18.5 Signalling a Debug Request. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18-12
18.5.1 EE_CTRL Modifications for the MSC8126 . . . . . . . . . . . . . . . . . . . . . . . . . 18-12
18.5.2 Event Selector Register Programming . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18-13
18.5.3 EDCA1_CTRL Register Programming . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18-14
18.5.4 Real-Time Debug Request . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18-14
18.5.5 Exiting Debug Mode. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18-15
18.5.6 Accessing EOnCE Registers Through JTAG in Real Time . . . . . . . . . . . . . 18-15
18.5.7 External Debug Exception Request. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18-16
18.5.8 Generating a Debug Exception From an EDCA PC Detection Event . . . . . 18-16
18.6 Tracing in the MSC8126 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18-16
18.7 General JTAG Mode Restrictions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18-17
18.8 JTAG and EOnCE Module Programming Model . . . . . . . . . . . . . . . . . . . . . . 18-18
18.8.1 Identification Register. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18-18
18.8.2 Boundary Scan Register (BSR). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18-18
18.8.3 Shift Registers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18-21
18.8.3.1 Bypass Register . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18-21
18.8.3.2 Identification Register . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18-21
18.8.3.3 General-Purpose Register. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18-22
18.8.3.4 Parallel Input Register . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18-23
19 Internal Peripheral Buses (IPBuses)
19.1 TDM Interface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19-1
19.2 UART. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19-2
19.3 Timers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19-2
19.4 GPIOs. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19-2
MSC8126 Reference Manual, Rev. 2
xvi Freescale Semiconductor
Contents
19.5 Hardware Semaphore Registers. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19-2
19.6 Global Interrupt Controller (GIC) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19-3
19.7 Direct Slave Interface (DSI) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19-3
19.8 Ethernet Controller. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19-3
19.9 Viterbi Co-Processor (VCOP) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19-4
19.10 Turbo Co-Processor (TCOP) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19-4
19.11 IPBus Functionality . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19-4
19.12 Stop Options. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19-5
19.13 IPBus Programming Model . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19-7
20 TDM Interface
20.1 Typical Configurations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20-5
20.2 TDM Basics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20-6
20.2.1 Common Signals for the TDM Modules. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20-8
20.2.2 Receiver and Transmitter Independent or Shared Operation . . . . . . . . . . . . 20-10
20.2.3 TDM Data Structures . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20-13
20.2.4 Serial Interface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20-15
20.2.4.1 Sync Out Configuration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20-15
20.2.4.2 Sync In Configuration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20-16
20.2.4.3 Serial Interface Synchronization . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20-18
20.2.4.4 Reverse Data Order . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20-20
20.2.5 TDM Local Memory . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20-21
20.2.6 Buffers Mapped on the Local Bus. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20-22
20.2.6.1 Data Buffer Size and A/m-law Channels . . . . . . . . . . . . . . . . . . . . . . . . . . 20-22
20.2.6.2 Data Buffer Address. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20-23
20.2.6.3 Threshold Pointers and Interrupts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20-25
20.2.6.4 Unified Buffer Mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20-27
20.2.7 Adaptation Machine . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20-28
20.3 TDM Power Saving . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20-30
20.4 Channel Activation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20-30
20.5 Loopback Support . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20-31
20.6 TDM Initialization . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20-32
20.7 TDM Programming Model . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20-33
20.7.1 Configuration Registers. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20-35
20.7.2 Control Registers. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20-52
20.7.3 Status Registers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20-60
20.7.4 System Bus Registers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20-67
21 UART
21.1 Transmitter. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21-6
21.1.1 Character Transmission. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21-7
MSC8126 Reference Manual, Rev. 2
Freescale Semiconductor xvii
Contents
21.1.2 Break Characters . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21-9
21.1.3 Idle Characters. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21-10
21.1.4 Parity Bit Generation. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21-10
21.2 Receiver . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21-10
21.2.1 Character Reception . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21-11
21.2.2 Data Sampling. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21-12
21.2.3 Framing Error . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21-17
21.2.4 Parity Error . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21-18
21.2.5 Break Characters . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21-18
21.2.6 Baud-Rate Tolerance. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21-18
21.2.6.1 Slow Data Tolerance . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21-19
21.2.6.2 Fast Data Tolerance . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21-20
21.2.7 Receiver Wake-Up . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21-20
21.2.7.1 Idle Input Line Wake-Up (WAKE = 0) . . . . . . . . . . . . . . . . . . . . . . . . . . . 21-21
21.2.7.2 Address Mark Wake-Up (WAKE = 1). . . . . . . . . . . . . . . . . . . . . . . . . . . . 21-21
21.3 Reset Initialization . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21-21
21.4 Modes of Operation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21-22
21.4.1 Run Mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21-22
21.4.2 Single-Wire Operation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21-22
21.4.3 Loop Operation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21-23
21.4.4 Stop Mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21-23
21.4.5 Receiver Standby Mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21-23
21.5 Interrupt Operation. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21-24
21.6 UART Programming Model . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21-24
22 Timers
22.1 Timers Programming Model . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22-8
22.1.1 Configuration Registers. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22-9
22.1.2 Control Registers. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22-15
22.1.3 Status Registers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22-16
23 GPIO
23.1 Features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23-1
23.2 GPIO Block Diagram. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23-2
23.3 Ethernet Functionality of GPIO. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23-4
23.4 GPIO Connection Functions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23-6
23.5 GPIO Programming Model . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23-9
24 I²C Software Module
24.1 i2c_txrx_bit Routine . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24-3
24.2 i2c_txrx_byte Routine . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24-5
MSC8126 Reference Manual, Rev. 2
xviii Freescale Semiconductor
Contents
24.3 i2c_read_SequentialData Routine . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24-7
24.4 i2c_sample_gpio Routine. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24-9
24.5 i2c_assert_start Routine. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24-10
24.6 i2c_assert_stop Routine . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24-11
24.7 i2c_WaitFor_StartCond_BusFreeTime Routine . . . . . . . . . . . . . . . . . . . . . . . 24-12
24.8 i2c_write_SequentialData Routine . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24-13
25 Ethernet Controller
25.1 Ethernet Basics. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25-1
25.2 Media-Independent Interfaces . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25-5
25.3 MSC8126 Ethernet Controller . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25-5
25.4 Modes of Operation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25-6
25.4.1 MII Mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25-7
25.4.2 RMII Mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25-7
25.4.3 SMII Mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25-7
25.4.4 Special Modes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25-8
25.4.4.1 Loopback Mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25-8
25.4.4.2 Echo Mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25-9
25.4.4.3 Low-Power Stop Mode. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25-9
25.4.5 Management Interface. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25-9
25.5 External Signals . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25-10
25.6 Ethernet Controller Interfaces . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25-12
25.6.1 MII. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25-13
25.6.1.1 MII Transmit Flow . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25-13
25.6.1.2 MII Receive Flow. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25-14
25.6.2 RMII . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25-14
25.6.2.1 RMII Transmit Flow. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25-15
25.6.2.2 RMII Receive Flow . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25-16
25.6.3 SMII . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25-16
25.6.3.1 SMII Transmit Flow. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25-17
25.6.3.2 SMII Receive Flow Mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25-19
25.7 MAC Control of CSMA/CD . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25-21
25.7.1 Handling Packet Collisions. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25-21
25.7.2 Controlling Packet Flow . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25-22
25.7.3 Controlling PHY Links . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25-22
25.8 RMON Support . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25-23
25.9 Frame Recognition. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25-23
25.9.1 Pattern Matching Recognition. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25-23
25.9.2 Destination Address Recognition . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25-25
25.9.3 Hash Table Algorithm. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25-27
25.10 Buffer Descriptors . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25-28
MSC8126 Reference Manual, Rev. 2
Freescale Semiconductor xix
Contents
25.10.1 Data Buffer Descriptor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25-28
25.10.2 Receive Frame Processing with Pattern Matching . . . . . . . . . . . . . . . . . . . . 25-30
25.10.3 Receive Pattern Matching Filing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25-31
25.10.4 Filing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25-35
25.10.5 Transmit Frame Processing with Insertion . . . . . . . . . . . . . . . . . . . . . . . . . . 25-36
25.11 Flow Control . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25-38
25.12 Interrupt Handling . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25-39
25.13 Error-Handling. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25-41
25.14 Inter-Packet Gap Time. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25-42
25.15 Connecting to Physical Interfaces . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25-42
25.16 Initialization and Reset. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25-46
25.17 Ethernet Controller Programming Model . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25-49
25.17.1 General Control and Status Registers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25-53
25.17.2 FIFO Control and Status Registers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25-62
25.17.3 Transmit Control and Status Registers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25-69
25.17.4 Receive Control and Status Registers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25-78
25.17.5 MAC Registers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25-84
25.17.6 MII Management Registers. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25-92
25.17.7 MIIGSK Registers. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25-96
25.17.8 RMON Management Information Base (MIB). . . . . . . . . . . . . . . . . . . . . . 25-105
25.17.9 Hash Function Registers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25-132
25.17.10 Pattern Matching Registers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25-133
25.17.11 Data Structures (Buffer Descriptors). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25-138
26 Viterbi Coprocessor (VCOP)
26.1 Features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26-2
26.2 Operating Modes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26-3
26.3 Path/Branch Metric Calculation. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26-6
26.3.1 Path Metric Calculation. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26-6
26.3.2 Branch Metric Calculation for Channel Equalization. . . . . . . . . . . . . . . . . . . 26-7
26.3.3 Branch Metric Calculation for Channel Decoding . . . . . . . . . . . . . . . . . . . . . 26-8
26.4 Initialization/Application Information . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26-10
26.4.1 GSM Channel Equalization. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26-10
26.4.2 GSM Channel Decoding . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26-11
26.4.3 WCDMA Channel Decoding and BTFD . . . . . . . . . . . . . . . . . . . . . . . . . . . 26-12
26.4.4 Known Restrictions. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26-12
26.5 VCOP Programming Model. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26-13
27 Turbo Coprocessor (TCOP)
27.1 Turbo Decoding Basics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27-1
27.1.1 Encoder Scheme . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27-1
MSC8126 Reference Manual, Rev. 2
xx Freescale Semiconductor
Contents
27.1.2 Decoder Scheme . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27-2
27.1.3 Dual-Pass Decoding Flow. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27-5
27.2 TCOP Architecture . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27-8
27.3 TCOP Data Input/Output Formats. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27-11
27.3.1 Input Ys Block . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27-11
27.3.2 Input Yp1 Block . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27-12
27.3.3 Input Yp1a Block . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27-13
27.3.4 Output Hard-Decision and Internally Used Lambda Block . . . . . . . . . . . . . 27-13
27.3.5 Optional Output Soft Results Block . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27-14
27.3.6 Input Initial Alpha and Beta . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27-15
27.4 Programming Flow . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27-16
27.5 Gamma, Alpha, Beta, and Lambda Calculations. . . . . . . . . . . . . . . . . . . . . . . 27-16
27.5.1 Time Relations Example for a 4-Bit Block. . . . . . . . . . . . . . . . . . . . . . . . . . 27-18
27.5.2 Fixed-Point Format . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27-18
27.5.2.1 Fixed-Point Input and Output Format Example. . . . . . . . . . . . . . . . . . . . . 27-19
27.5.2.2 Variable Sizes. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27-20
27.5.2.3 a, b Normalization . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27-20
27.5.3 Max* Implementation. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27-21
27.6 TCOP Programming Model. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27-22
A Programming Reference
A.1 Register Addressing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .A-1
A.2 Interrupts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .A-2
A.3 Programming Sheets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .A-9
B MSC8126 Dictionary
C MSC8126 Boot Code
Index
/