NXP Semiconductors MSC8158E User manual

MSC8158E Reference Manual
Broadband Wireless Access Six Core DSP With Security
MSC8158ERM
Rev 2, January 2012

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, the Freescale logo, StarCore, and CodeWarrior are trademarks of
Freescale Semiconductor, Inc., Reg. U.S. Pat. & Tm. Off. QUICC Engine is a
trademark of Freescale Semiconductor, Inc. All other product or service names are
the property of their respective owners.
© 2010–2012 Freescale Semiconductor, Inc.
MSC8158RME
Rev. 2
1/2012
How to Reach Us:
Home Page:
www.freescale.com
Web Support:
http://www.freescale.com/support
North America:
Freescale Semiconductor, Inc.
Technical Sales and Commercial Support
Periferico Sur #8110
Col. El Mante
Tlaquepaque
Jalisco 45609
Mexico
1-800-521-6274 (US/Canada)
001 800 514 3392 (Mexico)
www.freescale.com/support
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)
www.freescale.com/support
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
Asia/Pacific:
Freescale Semiconductor China Ltd.
Exchange Building 23F
No. 118 Jianguo Road
Chaoyang District
Beijing 100022
China
+86 010 5879 8000

1
Overview
2
SC3850 Core Overview
4
Chip-Level Arbitration and Switching System (CLASS)
7
Clocks
13
Direct Memory Access (DMA) Controller 14
High Speed Serial Interface (HSSI) 15
Serial RapidIO Controller and Enhance Message Complex
QUICC Engine Subsystem
19
UART
23
I2C
External Signals
Reset
Boot Program
Memory Map
MSC8158 SC3850 DSP Subsystem
Timers
Hardware Semaphores
Debugging, Profiling, and Performance Monitoring
3
5
6
8
9
18
20
22
24
DDR-SDRAM Controller
11
Interrupt Handling
12
16
Common Public Radio Interface (CPRI)
Internal Memory Subsystem
10
GPIO 21
General Configuration Registers
17
Security Engine (SEC) 26
Multi Accelerator Platform Engine, Baseband 2 (MAPLE-B2) 25

1Overview
2SC3850 Core Overview
4Chip-Level Arbitration and Switching System (CLASS)
7Clocks
13
Direct Memory Access (DMA) Controller
14
High Speed Serial Interface (HSSI)
15
Serial RapidIO Controller and Enhance Message Complex
QUICC Engine Subsystem
19 UART
23 I2C
External Signals
Reset
Boot Program
Memory Map
MSC8158 SC3850 DSP Subsystem
Timers
Hardware Semaphores
Debugging, Profiling, and Performance Monitoring
3
5
6
8
9
18
20
22
24
DDR-SDRAM Controller
11
Interrupt Handling
12
16
Common Public Radio Interface (CPRI)
Internal Memory Subsystem
10
GPIO
21
General Configuration Registers
17
Security Engine (SEC)
26
Multi Accelerator Platform Engine, Baseband 2 (MAPLE-B2)
25

MSC8158E Reference Manual, Rev. 2
Freescale Semiconductor v
Contents
Before Using This Manual—Important Note . . . . . . . . . . . . . . . . . . . . . . . . . .lxviii
Audience and Helpful Hints . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .lxviii
Notational Conventions and Definitions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .lxix
Conventions for Registers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . lxx
Organization . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . lxx
Other MSC8158E Documentation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .lxxiii
Further Reading . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .lxxiii
Document Change History . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . lxxiv
1Overview
1.1 Features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-2
1.2 Block Diagram. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-17
1.3 Architecture . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-17
1.4 StarCore SC3850 DSP Subsystem. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-18
1.4.1 StarCore SC3850 DSP Core . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-19
1.4.2 L1 Instruction Cache. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-20
1.4.3 L1 Data Cache. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-20
1.4.4 L2 Unified Cache/M2 Memory. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-21
1.4.5 Memory Management Unit (MMU) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-21
1.4.6 Debug and Profiling Unit (DPU) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-21
1.4.7 Extended Programmable Interrupt Controller . . . . . . . . . . . . . . . . . . . . . . . . 1-22
1.4.8 Timer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-22
1.5 MAPLE-B2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-23
1.6 Security Engine (SEC). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-23
1.7 Chip-Level Arbitration and Switching System (CLASS) . . . . . . . . . . . . . . . . . 1-24
1.8 M3 Memory . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-24
1.9 Clocks. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-25
1.10 DDR Controller (DDRC). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-25
1.11 DMA Controller. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-26
1.12 High Speed System Interface. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-27
1.12.1 CLASS1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-27
1.12.2 OCN Fabric . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-28
1.12.3 OCN-to-MBus (O2M) Bridges . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-28
1.12.4 DMA Controllers. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-28

MSC8158E Reference Manual, Rev. 2
vi Freescale Semiconductor
Contents
1.12.5 Serial RapidIO Complex. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-28
1.12.6 Protocol Converter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-29
1.12.7 SerDes PHY Interfaces . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-29
1.13 QUICC Engine Subsystem. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-29
1.13.1 Ethernet Controllers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-30
1.13.2 Serial Peripheral Interface (SPI) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-30
1.14 Global Interrupt Controller (GIC) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-31
1.15 UART. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-31
1.16 Timers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-31
1.17 Hardware Semaphores . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-31
1.18 Virtual Interrupts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-31
1.19 I2C Interface. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-32
1.20 GPIOs. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-32
1.21 Boot Options . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-32
1.22 JTAG . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-32
1.23 Developer Environment. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-32
1.23.1 Tools . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-33
1.23.2 Application Software. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-34
2SC3850 Core Overview
2.1 Core Architecture Features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-2
2.2 StarCore SC3850 Core Architecture . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-4
3External Signals
3.1 Power Signals. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-4
3.2 Clock Signals . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-5
3.3 Reset and Configuration Signals . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-6
3.4 Memory Controller . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-11
3.5 SerDes Multiplexed Signals for the Serial RapidIO, CPRI, and
SGMII Interfaces . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-12
3.6 CPRI Signals . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-13
3.7 Ethernet Signals . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-16
3.8 Serial Peripheral Interface (SPI) Signal Summary . . . . . . . . . . . . . . . . . . . . . . 3-18
3.9 GPIO/Maskable Interrupt Signal Summary. . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-19
3.10 Timer Signals. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-24
3.11 UART Signals . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-26
3.12 I2C Signals . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-27
3.13 External DMA Signals. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-27
3.14 Other Interrupt Signals. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-28
3.15 OCE Event and JTAG Test Access Port Signals. . . . . . . . . . . . . . . . . . . . . . . . 3-29

MSC8158E Reference Manual, Rev. 2
Freescale Semiconductor vii
Contents
4Chip-Level Arbitration and Switching System (CLASS)
4.1 CLASS Features. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-2
4.2 Functional Description. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-3
4.2.1 Expander Module and Transaction Flow . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-4
4.2.2 Multiplexer and Arbiter Module . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-4
4.2.2.1 CLASS Arbiter. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-4
4.2.2.1.1 Weighted Arbitration. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-5
4.2.2.1.2 Late Arbitration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-5
4.2.2.1.3 Priority Masking . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-5
4.2.2.1.4 Auto Priority Upgrade . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-5
4.2.2.2 CLASS Multiplexer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-5
4.2.3 Normalizer Module . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-6
4.2.4 CLASS Control Interface (CCI) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-6
4.3 CLASS Error Interrupts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-6
4.4 CLASS Debug Profiling Unit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-7
4.4.1 Profiling. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-7
4.4.2 Watch Point Unit. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-8
4.4.3 Event Selection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-9
4.4.4 Debug and Profiling Events . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-12
4.5 CLASS Reset . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-12
4.5.1 Soft Reset . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-12
4.5.2 Hard Reset. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-12
4.6 Limitations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-13
4.7 Programming Model . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-14
4.7.1 CLASS Priority Mapping Registers (C0PMRx). . . . . . . . . . . . . . . . . . . . . . . 4-15
4.7.2 CLASS Priority Auto Upgrade Value Registers (C0PAVRx) . . . . . . . . . . . . 4-16
4.7.3 CLASS Priority Auto Upgrade Control Registers (C0PACRx) . . . . . . . . . . . 4-17
4.7.4 CLASS Error Address Registers (C0EARx) . . . . . . . . . . . . . . . . . . . . . . . . . 4-18
4.7.5 CLASS Error Extended Address Registers (C0EEARx) . . . . . . . . . . . . . . . . 4-19
4.7.6 CLASS Initiator Profiling Configuration Registers (C0IPCRx) . . . . . . . . . . 4-20
4.7.7 CLASS Initiator Watch Point Control Registers (C0IWPCRx) . . . . . . . . . . . 4-22
4.7.8 CLASS Arbitration Weight Registers (C0AWRx) . . . . . . . . . . . . . . . . . . . . . 4-23
4.7.9 CLASS Start Address Decoder x (C0SADx) . . . . . . . . . . . . . . . . . . . . . . . . . 4-24
4.7.10 CLASS End Address Decoder x (C0EADx). . . . . . . . . . . . . . . . . . . . . . . . . . 4-25
4.7.11 CLASS Attributes Decoder 1 (C0ATD1) . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-26
4.7.12 CLASS Attributes Decoder x (C0ATDx) . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-28
4.7.13 CLASS IRQ Status Register (C0ISR) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-29
4.7.14 CLASS IRQ Enable Register (C0IER) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-30
4.7.15 CLASS Target Profiling Configuration Register (C0TPCR) . . . . . . . . . . . . . 4-30
4.7.16 CLASS Profiling Control Register (C0PCR) . . . . . . . . . . . . . . . . . . . . . . . . . 4-32
4.7.17 CLASS Watch Point Control Registers (C0WPCR) . . . . . . . . . . . . . . . . . . . 4-33

MSC8158E Reference Manual, Rev. 2
viii Freescale Semiconductor
Contents
4.7.18 CLASS Watch Point Access Configuration Register (C0WPACR) . . . . . . . 4-34
4.7.19 CLASS Watch Point Extended Access Configuration Register
(C0WPEACR) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-35
4.7.20 CLASS Watch Point Address Mask Registers (C0WPAMR) . . . . . . . . . . . . 4-36
4.7.21 CLASS Profiling Time-Out Registers (C0PTOR) . . . . . . . . . . . . . . . . . . . . . 4-37
4.7.22 CLASS Target Watch Point Control Registers (C0TWPCR) . . . . . . . . . . . . 4-38
4.7.23 CLASS Profiling IRQ Status Register (C0PISR) . . . . . . . . . . . . . . . . . . . . . . 4-39
4.7.24 CLASS Profiling IRQ Enable Register (C0PIER) . . . . . . . . . . . . . . . . . . . . . 4-40
4.7.25 CLASS Profiling Reference Counter Register (C0PRCR) . . . . . . . . . . . . . . . 4-40
4.7.26 CLASS Profiling General Counter Registers (C0PGCRx). . . . . . . . . . . . . . . 4-41
4.7.27 CLASS Arbitration Control Register (C0ACR) . . . . . . . . . . . . . . . . . . . . . . . 4-42
5Reset
5.1 Reset Operations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-1
5.1.1 Reset Sources . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-2
5.1.2 Reset Actions. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-2
5.1.3 Power-On Reset Flow . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-3
5.1.4 Detailed Power-On Reset Flow. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-3
5.1.5 HRESET Flow. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-6
5.2 Reset Configuration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-6
5.2.1 Reset Configuration Signals . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-7
5.2.2 Reset Configuration Words Source. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-7
5.2.3 Reset Configuration Input Signal Selection and Reset Sequence Duration . . . 5-8
5.2.4 Reset Configuration Words. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-8
5.2.5 Loading The Reset Configuration Words . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-8
5.2.5.1 Loading From an I2C EEPROM (RCW_SRC[0–2] = 010). . . . . . . . . . . . . . 5-9
5.2.5.1.1 Using The Boot Sequencer For Reset Configuration . . . . . . . . . . . . . . . . . 5-9
5.2.5.1.2 EEPROM Slave Address . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-9
5.2.5.1.3 EEPROM Data Format In Reset Configuration Mode . . . . . . . . . . . . . . . . 5-9
5.2.5.1.4 Single Device Loading From I2C EEPROM. . . . . . . . . . . . . . . . . . . . . . . 5-10
5.2.5.1.5 Loading Multiple Devices From a Single I2C EEPROM . . . . . . . . . . . . . 5-10
5.2.5.2 Loading Multiplexed RCW from External Pins (RCW_SRC[0–2] = 000) . 5-12
5.2.5.3 Loading Reduced RCW From External Pins (RCW_SRC[0–2] = 011) . . . 5-13
5.2.5.3.1 Reduced External Reset Configuration Word Low Field Values . . . . . . . 5-13
5.2.5.3.2 Reduced External Reset Configuration Word High Field Values. . . . . . . 5-14
5.2.5.4 Default Reset Configuration Words (RCW_SRC[0–2] = 100 or 101). . . . . 5-14
5.2.5.4.1 Hard Coded Reset Configuration Word Low Field Values. . . . . . . . . . . . 5-14
5.2.5.4.2 Hard Coded Reset Configuration Word High Field Values . . . . . . . . . . . 5-15
5.3 Reset Programming Model . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-16
5.3.1 Reset Configuration Word Low Register (RCWLR) . . . . . . . . . . . . . . . . . . . 5-16
5.3.2 Reset Configuration Word High Register (RCWHR). . . . . . . . . . . . . . . . . . . 5-20

MSC8158E Reference Manual, Rev. 2
Freescale Semiconductor ix
Contents
5.3.3 Reset Status Register (RSR) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-22
5.3.4 Reset Protection Register (RPR). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-24
5.3.5 Reset Control Register (RCR). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-25
5.3.6 Reset Control Enable Register (RCER) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-26
6Boot Program
6.1 Functional Description. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-2
6.1.1 Private Configuration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-3
6.1.2 Shared Configuration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-3
6.1.3 Patch Mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-4
6.1.4 Multi Device Support for the I2C Bus. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-4
6.1.5 Example Configuration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-6
6.2 Boot Modes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-9
6.2.1 I2C EEPROM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-9
6.2.2 Ethernet . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-14
6.2.2.1 DHCP Client. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-15
6.2.2.2 TFTP Client . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-16
6.2.2.3 Boot File Format. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-16
6.2.3 Simple Ethernet Boot . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-18
6.2.3.1 Simple Ethernet Boot Flow . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-18
6.2.3.2 Simple Ethernet Boot Ports . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-19
6.2.3.3 Boot File Format. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-20
6.2.4 Serial RapidIO Interconnect . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-21
6.2.4.1 Serial RapidIO Interface Without I2C Support . . . . . . . . . . . . . . . . . . . . . . 6-21
6.2.4.2 Serial RapidIO Interface with I2C Support . . . . . . . . . . . . . . . . . . . . . . . . . 6-22
6.2.5 SPI. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-22
6.3 Jump to User Code. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-23
6.4 System after Boot. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-23
6.5 Boot Errors. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-24
7Clocks
7.1 Clock Generation Components and Modes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7-2
7.2 System Clock Control Register (SCCR) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7-4
8General Configuration Registers
8.1 Programming Model . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8-1
8.2 Detailed Register Descriptions. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8-3
8.2.1 General Configuration Register 1 (GCR1) . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8-3
8.2.2 General Configuration Register 2 (GCR2) . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8-4
8.2.3 General Status Register 1 (GSR1). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8-6
8.2.4 High Speed Serial Interface Status Register (HSSI_SR) . . . . . . . . . . . . . . . . . 8-8

MSC8158E Reference Manual, Rev. 2
x Freescale Semiconductor
Contents
8.2.5 DDR General Control Register (DDR_GCR). . . . . . . . . . . . . . . . . . . . . . . . . 8-11
8.2.6 High Speed Serial Interface Control Register 1 (HSSI_CR1) . . . . . . . . . . . . 8-12
8.2.7 High Speed Serial Interface Control Register 2 (HSSI_CR2) . . . . . . . . . . . . 8-15
8.2.8 QUICC Engine Control Register (QECR) . . . . . . . . . . . . . . . . . . . . . . . . . . . 8-16
8.2.9 GPIO Pull-Up Enable Register (GPUER). . . . . . . . . . . . . . . . . . . . . . . . . . . . 8-17
8.2.10 GPIO Input Enable Register (GIER). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8-18
8.2.11 System Part and Revision ID Register (SPRIDR) . . . . . . . . . . . . . . . . . . . . . 8-19
8.2.12 General Control Register 4 (GCR4) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8-20
8.2.13 General Control Register 5 (GCR5) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8-22
8.2.14 General Status Register 2 (GSR2). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8-24
8.2.15 Core Subsystem Slave Port Priority Control Register (TSPPCR) . . . . . . . . . 8-26
8.2.16 General Status Register 3 (GSR3). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8-27
8.2.17 General Control Register 6 (GCR6) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8-29
8.2.18 General Control Register 7 (GCR7) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8-30
8.2.19 General Control Register 8 (GCR8) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8-33
8.2.20 General Control Register 10 (GCR10) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8-34
8.2.21 General Interrupt Register 1 (GIR1) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8-35
8.2.22 General Interrupt Enable Register 1 (GIER1_x). . . . . . . . . . . . . . . . . . . . . . . 8-37
8.2.23 General Interrupt Register 3 (GIR3) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8-38
8.2.24 General Interrupt Enable Register 3 for Cores 0–3 (GIER3_x) . . . . . . . . . . . 8-40
8.2.25 General Interrupt Register 5 (GIR5) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8-42
8.2.26 General Interrupt Enable Register 5 (GIER5_x). . . . . . . . . . . . . . . . . . . . . . . 8-44
8.2.27 General Control Register 11 (GCR11) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8-46
8.2.28 General Control Register 13 (GCR13) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8-47
8.2.29 General Status Register 8 (GSR8). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8-48
8.2.30 DMA Request0 Control Register (GCR_DREQ0) . . . . . . . . . . . . . . . . . . . . . 8-49
8.2.31 DMA Request1 Control Register (GCR_DREQ1) . . . . . . . . . . . . . . . . . . . . . 8-53
8.2.32 DMA Done Control Register (GCR_DDONE) . . . . . . . . . . . . . . . . . . . . . . . 8-57
8.2.33 DDR Controller General Configuration Register (DDRC_GCR). . . . . . . . . . 8-60
8.2.34 Core Subsystem Slave Port General Configuration Register
(CORE_SLV_GCR) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8-62
8.2.35 QUICC Engine Input General Control Register (QE_PIO_IN_GCR) . . . . . . 8-63
8.2.36 QUICC Engine Output General Status Register (QE_PIO_OUT_GSR) . . . . 8-64
8.2.37 L2Q Arbitration Control for Core Subsystems 0 and 1
(MEX_T2_0_1_ARB). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8-65
8.2.38 L2Q Arbitration Control for Core Subsystems 2 and 3
(MEX_T2_2_3_ARB). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8-66
8.2.39 L2Q Arbitration Control for Core Subsystems 4 and 5
(MEX_T2_4_5_ARB). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8-67
8.2.40 General Interrupt Register 6 (GIR6) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8-68
8.2.41 General Interrupt Enable Register 6 (GIER6_x). . . . . . . . . . . . . . . . . . . . . . . 8-71

MSC8158E Reference Manual, Rev. 2
Freescale Semiconductor xi
Contents
8.2.42 General Interrupt Register 7 (GIR7) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8-74
8.2.43 General Interrupt Enable Register 7 (GIER7_x). . . . . . . . . . . . . . . . . . . . . . . 8-76
8.2.44 DDR View Through L2 Memory Core Subsystems 0–3 (L2MAP_0_3) . . . . 8-79
8.2.45 DDR View Through L2 Memory Core Subsystems 4–5 (L2MAP_4_5) . . . . 8-80
8.2.46 eMSG to QUICC Engine External Request Enable (CPCEER) . . . . . . . . . . . 8-81
8.2.47 RGMII1 High Resolution Delay Register (UCC1_DELAY_HR) . . . . . . . . . 8-84
8.2.48 RGMII2 High Resolution Delay Register (UCC3_DELAY_HR) . . . . . . . . . 8-86
8.2.49 General Interrupt Register 8 (GIR8) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8-88
8.2.50 CPRI to MAPLE External Request Enable (MAPLE_EXT_REQ_EN_1) . . 8-89
9Memory Map
9.1 Shared Memory Address Space . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-1
9.2 Shared SC3850 DSP Core Subsystem M2/L2 Memories . . . . . . . . . . . . . . . . . . 9-2
9.3 SC3850 DSP Core Subsystem Internal Address Space . . . . . . . . . . . . . . . . . . . . 9-5
9.4 CCSR Address Space. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-5
9.5 Initiators Views of the System Address Space . . . . . . . . . . . . . . . . . . . . . . . . . . 9-7
9.5.1 SC3850 (Data) View of the System Address Space . . . . . . . . . . . . . . . . . . . . . 9-7
9.5.2 Peripherals View of the System Address Space . . . . . . . . . . . . . . . . . . . . . . . . 9-8
9.5.3 Security Engine View of the System Address Space . . . . . . . . . . . . . . . . . . . . 9-8
9.6 Detailed System Memory Map . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-9
10 SC3850 DSP Subsystem
10.1 SC3850 DSP Core Subsystem Features. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-2
10.2 SC3850 Core . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-3
10.3 Instruction Channel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-4
10.3.1 Instruction Cache . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-4
10.3.2 Instruction Fetch Unit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-5
10.4 Data Channel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-5
10.4.1 Data Cache . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-5
10.4.2 Data Fetch Unit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-6
10.4.3 Write-Back Buffer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-7
10.4.4 Write-Through Buffer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-7
10.4.5 Data Control Unit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-7
10.4.6 Write Queue . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-8
10.5 Memory Management Unit (MMU) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-8
10.6 L2 Cache . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-9
10.7 On-Chip Emulator and Debug and Profiling Unit . . . . . . . . . . . . . . . . . . . . . 10-10
10.8 Extended Programmable Interrupt Controller . . . . . . . . . . . . . . . . . . . . . . . . . 10-11
10.9 Timer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-11
10.10 Interfaces . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-11
10.10.1 QBus to MBus Interface Bridge . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-11

MSC8158E Reference Manual, Rev. 2
xii Freescale Semiconductor
Contents
10.10.2 MBus to DMA Bridge. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-11
10.11 Entering and Exiting Wait and Stop States Safely. . . . . . . . . . . . . . . . . . . . . . 10-12
10.11.1 Wait State . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-12
10.11.2 Stop State. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-12
10.11.2.1 Procedure for Entering DSP Subsystem Stop State Safely . . . . . . . . . . . . 10-12
10.11.2.2 Procedure for Exiting the Stop State Safely. . . . . . . . . . . . . . . . . . . . . . . . 10-13
10.12 Programming Restrictions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-13
11 Internal Memory Subsystem
11.1 Memory Management Unit (MMU) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11-2
11.2 Instruction Channel (ICache and IFU). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11-3
11.3 Data Channel and Write Queue (DCache). . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11-5
11.4 L2 Unified Cache/M2 Memory . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11-8
11.5 M3 Memory . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11-12
11.6 Internal Boot ROM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11-12
12 DDR SDRAM Memory Controller
12.1 DDR Memory Controller Features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12-2
12.2 DDR Memory Controller Modes of Operation . . . . . . . . . . . . . . . . . . . . . . . . . 12-2
12.3 DDR Controller Functional Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12-3
12.3.1 DDR SDRAM Interface Operation. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12-7
12.3.2 Supported DDR SDRAM Organizations . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12-8
12.3.3 DDR SDRAM Address Multiplexing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12-8
12.3.4 JEDEC Standard DDR SDRAM Interface Commands. . . . . . . . . . . . . . . . . 12-11
12.3.5 DDR SDRAM Interface Timing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12-13
12.3.6 Clock Distribution. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12-16
12.3.7 DDR SDRAM Mode-Set Command Timing . . . . . . . . . . . . . . . . . . . . . . . . 12-17
12.3.8 DDR SDRAM Registered DIMM Mode . . . . . . . . . . . . . . . . . . . . . . . . . . . 12-18
12.3.9 DDR SDRAM Write Timing Adjustments. . . . . . . . . . . . . . . . . . . . . . . . . . 12-19
12.3.10 DDR SDRAM Refresh . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12-20
12.3.10.1 DDR SDRAM Refresh Timing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12-21
12.3.10.2 DDR SDRAM Refresh and Power-Saving Modes. . . . . . . . . . . . . . . . . . . 12-22
12.3.10.3 Self-Refresh in Sleep Mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12-23
12.3.11 DDR Data Beat Ordering . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12-24
12.3.12 Page Mode and Logical Bank Retention. . . . . . . . . . . . . . . . . . . . . . . . . . . . 12-24
12.3.13 Error Checking and Correcting (ECC) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12-24
12.3.14 Error Management. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12-26
12.4 Initialization/Application Information. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12-27
12.4.1 Programming Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12-30
12.4.2 DDR SDRAM Initialization Sequence . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12-32
12.4.3 Self-Refresh Mode Usage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12-32

MSC8158E Reference Manual, Rev. 2
Freescale Semiconductor xiii
Contents
12.4.3.1 Software Based Self-Refresh Scheme . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12-32
12.4.3.2 Bypassing Re-initialization During Battery-Backed Operation. . . . . . . . . 12-33
12.5 Memory Controller Programming Model . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12-33
12.5.1 Chip-Select x Bounds Register (CSx_BNDS) . . . . . . . . . . . . . . . . . . . . . . . 12-35
12.5.2 Chip-Select x Configuration Register (CSx_CONFIG) . . . . . . . . . . . . . . . . 12-36
12.5.3 Chip-Select x Configuration Register 2 (CSx_CONFIG_2). . . . . . . . . . . . . 12-38
12.5.4 DDR SDRAM Timing Configuration 3 Register (TIMING_CFG_3) . . . . . 12-39
12.5.5 DDR SDRAM Timing Configuration Register 0 (TIMING_CFG_0) . . . . . 12-42
12.5.6 DDR SDRAM Timing Configuration Register 1 (TIMING_CFG_1) . . . . . 12-45
12.5.7 DDR SDRAM Timing Configuration Register 2 (TIMING_CFG_2) . . . . . 12-48
12.5.8 DDR SDRAM Control Configuration Register (DDR_SDRAM_CFG) . . . 12-51
12.5.9 DDR SDRAM Control Configuration Register 2 (DDR_SDRAM_CFG_2) 12-54
12.5.10 DDR SDRAM Mode Configuration Register (DDR_SDRAM_MODE). . . 12-57
12.5.11 DDR SDRAM Mode Configuration 2 Register (DDR_SDRAM_MODE_2)12-58
12.5.12 DDR SDRAM Mode Control Register (DDR_SDRAM_MD_CNTL) . . . . 12-58
12.5.13 DDR SDRAM Interval Configuration Register
(DDR_SDRAM_INTERVAL) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12-61
12.5.14 DDR SDRAM Data Initialization Register (DDR_DATA_INIT) . . . . . . . . 12-62
12.5.15 DDR SDRAM Clock Control Configuration Register
(DDR_SDRAM_CLK_CNTL) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12-63
12.5.16 DDR SDRAM Initialization Address Register (DDR_INIT_ADDR) . . . . . 12-64
12.5.17 DDR Initialization Enable Register (DDR_INIT_EN) . . . . . . . . . . . . . . . . . 12-65
12.5.18 DDR SDRAM Timing Configuration 4 Register (TIMING_CFG_4) . . . . . 12-66
12.5.19 DDR SDRAM Timing Configuration 5 Register (TIMING_CFG_5) . . . . . 12-68
12.5.20 DDR ZQ Calibration Control Register (DDR_ZQ_CNTL) . . . . . . . . . . . . . 12-70
12.5.21 DDR Write Leveling Control Register (DDR_WRLVL_CNTL). . . . . . . . . 12-72
12.5.22 DDR Write Leveling Control 2 Register (DDR_WRLVL_CNTL_2) . . . . . 12-75
12.5.23 DDR Write Leveling Control 3 Register (DDR_WRLVL_CNTL_3) . . . . . 12-78
12.5.24 DDR Self Refresh Counter Register (DDR_SR_CNTR) . . . . . . . . . . . . . . . 12-81
12.5.25 DDR SDRAM Register Control Words 1 Register
(DDR_SDRAM_RCW_1) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12-82
12.5.26 DDR SDRAM Register Control Words 2 Register
(DDR_SDRAM_RCW_2) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12-83
12.5.27 DDR SDRAM Mode 3 Configuration Register (DDR_SDRAM_MODE_3)12-84
12.5.28 DDR SDRAM Mode Configuration 4 Register (DDR_SDRAM_MODE_4)12-85
12.5.29 DDR Debug Status Register 1 (DDRDSR_1). . . . . . . . . . . . . . . . . . . . . . . . 12-86
12.5.30 DDR Debug Status Register 2 (DDRDSR_2). . . . . . . . . . . . . . . . . . . . . . . . 12-87
12.5.31 DDR Control Driver Register 1 (DDRCDR_1) . . . . . . . . . . . . . . . . . . . . . . 12-87
12.5.32 DDR Control Driver Register 2 (DDRCDR_2) . . . . . . . . . . . . . . . . . . . . . . 12-91
12.5.33 DDR SDRAM IP Block Revision 1 Register (DDR_IP_REV1) . . . . . . . . . 12-92
12.5.34 DDR SDRAM IP Block Revision 2 Register (DDR_IP_REV2) . . . . . . . . . 12-92

MSC8158E Reference Manual, Rev. 2
xiv Freescale Semiconductor
Contents
12.5.35 DDR Memory Test Control Register (DDR_MTCR). . . . . . . . . . . . . . . . . . 12-93
12.5.36 DDR Data Memory Test Pattern x Register (DDR_MTPx) . . . . . . . . . . . . . 12-94
12.5.37 DDR SDRAM Memory Data Path Error Injection Mask High Register
(DATA_ERR_INJECT_HI) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12-95
12.5.38 DDR SDRAM Memory Data Path Error Injection Mask Low Register
(DATA_ERR_INJECT_LO). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12-96
12.5.39 DDR SDRAM Memory Data Path Error Injection Mask ECC Register
(ERR_INJECT). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12-97
12.5.40 DDR SDRAM Memory Data Path Read Capture Data High Register
(CAPTURE_DATA_HI). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12-98
12.5.41 DDR SDRAM Memory Data Path Read Capture Data Low Register
(CAPTURE_DATA_LO) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12-98
12.5.42 DDR SDRAM Memory Data Path Read Capture ECC Register
(CAPTURE_ECC) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12-99
12.5.43 DDR SDRAM Memory Error Detect Register (ERR_DETECT) . . . . . . . . 12-99
12.5.44 DDR SDRAM Memory Error Disable Register (ERR_DISABLE). . . . . . 12-101
12.5.45 DDR SDRAM Memory Error Interrupt Enable Register (ERR_INT_EN) 12-102
12.5.46 DDR SDRAM Memory Error Attributes Capture Register
(CAPTURE_ATTRIBUTES) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12-103
12.5.47 DDR SDRAM Memory Error Address Capture Register
(CAPTURE_ADDRESS) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12-104
12.5.48 DDR SDRAM Single-Bit ECC Memory Error Management Register
(ERR_SBE). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12-105
13 Interrupt Handling
13.1 Global Interrupt Controller (GIC) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13-3
13.2 General Configuration Block. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13-4
13.2.1 Interrupt Groups Toward the SC3850 Cores. . . . . . . . . . . . . . . . . . . . . . . . . . 13-5
13.2.2 Interrupt Groups Toward QUICC Engine Processors. . . . . . . . . . . . . . . . . . . 13-6
13.2.3 External Interrupts. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13-6
13.2.4 Interrupt Groups Directed Toward MAPLE-B2 . . . . . . . . . . . . . . . . . . . . . . . 13-7
13.2.5 Interrupt Handling. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13-8
13.3 Interrupt Mapping . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13-9
13.4 Core Interrupt Mesh. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13-25
13.5 Programming Model . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13-26
13.5.1 Global Interrupt Controller . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13-26
13.5.1.1 Virtual Interrupt Generation Register (VIGR) . . . . . . . . . . . . . . . . . . . . . . 13-26
13.5.1.2 Virtual Interrupt Status Register (VISR) . . . . . . . . . . . . . . . . . . . . . . . . . . 13-27
13.5.2 General Interrupt Configuration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13-29
13.5.3 Programming Restrictions. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13-30

MSC8158E Reference Manual, Rev. 2
Freescale Semiconductor xv
Contents
14 Direct Memory Access (DMA) Controller
14.1 Operating Modes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14-2
14.2 Buffer Types . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14-3
14.2.1 One-Dimensional Simple Buffer. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14-4
14.2.2 One-Dimensional Cyclic Buffer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14-5
14.2.3 One-Dimensional Chained Buffer. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14-6
14.2.4 One-Dimensional Incremental Buffer. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14-7
14.2.5 One-Dimensional Complex Buffers With Dual Cyclic Buffers . . . . . . . . . . . 14-8
14.2.6 Two-Dimensional Simple Buffer. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14-9
14.2.7 Three-Dimensional Simple Buffer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14-11
14.2.8 Four-Dimensional Simple Buffer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14-12
14.2.9 Multi-Dimensional Chained Buffer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14-15
14.2.10 Two-Dimensional Cyclic Buffer. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14-17
14.2.11 Three-Dimensional Cyclic Buffer. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14-18
14.3 Arbitration Types. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14-19
14.3.1 Round-Robin Arbitration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14-19
14.3.2 EDF Arbitration. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14-20
14.3.2.1 Issuing Interrupts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14-21
14.3.2.2 Counter Control . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14-21
14.3.2.3 Clock Source to the Counters. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14-22
14.4 Interrupts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14-22
14.4.1 Maskable Interrupts. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14-22
14.4.2 Nonmaskable Interrupts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14-22
14.5 DMA Peripheral Interface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14-23
14.5.1 Modes of Operation. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14-23
14.5.2 Configuration and Control Registers. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14-24
14.5.3 Functional Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14-25
14.5.3.1 Request Signal . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14-25
14.5.3.2 Done Signal . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14-25
14.5.3.3 Signal Operation. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14-25
14.5.4 Using the DMA Peripheral Interface Block . . . . . . . . . . . . . . . . . . . . . . . . . 14-26
14.6 DMA Programming Model . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14-27
14.6.1 DMA Buffer Descriptor Base Registers x (DMABDBRx). . . . . . . . . . . . . . 14-28
14.6.2 DMA Controller Channel Configuration Registers x (DMACHCRx) . . . . . 14-29
14.6.3 DMA Controller Global Configuration Register (DMAGCR) . . . . . . . . . . . 14-31
14.6.4 DMA Channel Enable Register (DMACHER). . . . . . . . . . . . . . . . . . . . . . . 14-31
14.6.5 DMA Channel Disable Register (DMACHDR) . . . . . . . . . . . . . . . . . . . . . . 14-32
14.6.6 DMA Channel Freeze Register (DMACHFR) . . . . . . . . . . . . . . . . . . . . . . . 14-33
14.6.7 DMA Channel Defrost Register (DMACHDFR).. . . . . . . . . . . . . . . . . . . . . 14-33
14.6.8 DMA Time-To-Dead Line Registers x (DMAEDFTDLx). . . . . . . . . . . . . . 14-34
14.6.9 DMA EDF Control Register (DMAEDFCTRL). . . . . . . . . . . . . . . . . . . . . . 14-35

MSC8158E Reference Manual, Rev. 2
xvi Freescale Semiconductor
Contents
14.6.10 DMA EDF Mask Register (DMAEDFMR) . . . . . . . . . . . . . . . . . . . . . . . . . 14-35
14.6.11 DMA EDF Mask Update Register (DMAEDFMUR). . . . . . . . . . . . . . . . . . 14-36
14.6.12 DMA EDF Status Register (DMAEDFSTR) . . . . . . . . . . . . . . . . . . . . . . . . 14-38
14.6.13 DMA Mask Register (DMAMR) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14-38
14.6.14 DMA Mask Update Register (DMAMUR). . . . . . . . . . . . . . . . . . . . . . . . . . 14-39
14.6.15 DMA Status Register (DMASTR) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14-40
14.6.16 DMA Error Register (DMAERR). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14-41
14.6.17 DMA Debug Event Status Register (DMADESR) . . . . . . . . . . . . . . . . . . . . 14-43
14.6.18 DMA Round-Robin Priority Group Update Register (DMARRPGUR) . . . 14-43
14.6.19 DMA Channel Active Status Register (DMACHASTR) . . . . . . . . . . . . . . . 14-44
14.6.20 DMA Channel Freeze Status Register (DMACHFSTR) . . . . . . . . . . . . . . . 14-44
14.6.21 DMA Channel Buffer Descriptors . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14-45
14.6.21.1 Buffer Attributes (BD_ATTR). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14-48
14.6.21.2 Multi-Dimensional Buffer Attributes (BD_MD_ATTR). . . . . . . . . . . . . . 14-51
15 High Speed Serial Interface (HSSI) Subsystem
15.1 HSSI Subsystem Block Diagram . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15-2
15.2 CLASS1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15-3
15.2.1 Functional Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15-4
15.2.1.1 Expander Module and Transaction Flow . . . . . . . . . . . . . . . . . . . . . . . . . . . 15-4
15.2.1.2 Multiplexer and Arbiter Module . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15-4
15.2.1.2.1 CLASS Arbiter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15-5
15.2.1.2.2 CLASS Multiplexer. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15-6
15.2.1.2.3 Normalizer Module . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15-6
15.2.1.3 CLASS1 Control Interface (C1CI). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15-6
15.2.2 CLASS Error Interrupts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15-6
15.2.3 CLASS Debug Profiling Unit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15-7
15.2.3.1 Profiling . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15-7
15.2.3.2 Watch Point Unit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15-8
15.2.3.3 Event Selection. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15-9
15.2.3.4 Debug and Profiling Events . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15-12
15.2.4 CLASS Reset. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15-12
15.2.5 Limitations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15-12
15.3 OCN Fabric . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15-12
15.4 OCN-to-MBus (O2M) Bridges . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15-13
15.5 DMA Controllers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15-13
15.5.1 Overview. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15-14
15.5.2 Features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15-14
15.5.3 Modes of Operation. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15-14
15.5.4 DMA Channel Operation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15-16
15.5.4.1 Basic DMA Mode Transfer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15-16

MSC8158E Reference Manual, Rev. 2
Freescale Semiconductor xvii
Contents
15.5.4.1.1 Basic Direct Mode. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15-17
15.5.4.1.2 Basic Direct Single-Write Start Mode. . . . . . . . . . . . . . . . . . . . . . . . . . . 15-17
15.5.4.1.3 Basic Chaining Mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15-18
15.5.4.1.4 Basic Chaining Single-Write Start Mode . . . . . . . . . . . . . . . . . . . . . . . . 15-19
15.5.4.1.5 Extended DMA Mode Transfer. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15-19
15.5.4.1.5.1 Extended Direct Mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15-19
15.5.4.1.5.2 Extended Direct Single-Write Start Mode . . . . . . . . . . . . . . . . . . . . . . . . . . . 15-20
15.5.4.1.5.3 Extended Chaining Mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15-20
15.5.4.1.5.4 Extended Chaining Single-Write Start Mode . . . . . . . . . . . . . . . . . . . . . . . . 15-20
15.5.4.2 Channel Continue Mode for Cascading Transfer Chains. . . . . . . . . . . . . . 15-21
15.5.4.2.1 Basic Mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15-22
15.5.4.2.2 Extended Mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15-22
15.5.4.3 Channel Abort . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15-22
15.5.4.4 Bandwidth Control . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15-22
15.5.4.5 Channel State . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15-23
15.5.4.6 Illustration of Stride Size and Stride Distance . . . . . . . . . . . . . . . . . . . . . . 15-23
15.5.5 DMA Transfer Interfaces . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15-24
15.5.6 DMA Errors. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15-24
15.5.7 DMA Descriptors . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15-24
15.5.8 Local Access ATMU Registers. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15-27
15.5.9 Limitations and Restrictions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15-27
15.6 Serial RapidIO Complex . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15-28
15.7 Protocol Converter. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15-28
15.8 SerDes PHY Interfaces . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15-28
15.8.1 Serdes Banks and PLL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15-29
15.8.2 SerDes PLL Reference Clocks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15-29
15.8.3 SerDes PLL Multiplexing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15-30
15.8.4 SerDes Clocks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15-31
15.9 HSSI Programming Model. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15-32
15.9.1 CLASS1 Priority Mapping Registers (C1PMRx). . . . . . . . . . . . . . . . . . . . . 15-35
15.9.2 CLASS1 Priority Auto Upgrade Value Registers (C1PAVRx) . . . . . . . . . . 15-36
15.9.3 CLASS1 Priority Auto Upgrade Control Registers (C1PACRx) . . . . . . . . . 15-37
15.9.4 CLASS1 Error Address Registers (C1EARx) . . . . . . . . . . . . . . . . . . . . . . . 15-38
15.9.5 CLASS1 Error Extended Address Registers (C1EEARx) . . . . . . . . . . . . . . 15-39
15.9.6 CLASS1 Initiator Profiling Configuration Registers (C1IPCRx) . . . . . . . . 15-40
15.9.7 CLASS1 Initiator Watch Point Control Registers (C1IWPCRx) . . . . . . . . . 15-41
15.9.8 CLASS1 Arbitration Weight Registers (C1AWRx) . . . . . . . . . . . . . . . . . . . 15-42
15.9.9 CLASS1 Start Address Decoder 1 (C1SAD1) . . . . . . . . . . . . . . . . . . . . . . . 15-43
15.9.10 CLASS1 Start Address Decoder 2(C1SAD2). . . . . . . . . . . . . . . . . . . . . . . . 15-44
15.9.11 CLASS1 End Address Decoder 1 (C1EAD1). . . . . . . . . . . . . . . . . . . . . . . . 15-45
15.9.12 CLASS1 End Address Decoder 1 (C1EAD2). . . . . . . . . . . . . . . . . . . . . . . . 15-46
15.9.13 CLASS1 Attributes Decoder 1 (C1ATD1) . . . . . . . . . . . . . . . . . . . . . . . . . . 15-47

MSC8158E Reference Manual, Rev. 2
xviii Freescale Semiconductor
Contents
15.9.14 CLASS1 Attributes Decoder 1 (C1ATD2) . . . . . . . . . . . . . . . . . . . . . . . . . . 15-49
15.9.15 CLASS1 IRQ Status Register (C1ISR) . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15-50
15.9.16 CLASS1 IRQ Enable Register (C1IER) . . . . . . . . . . . . . . . . . . . . . . . . . . . 15-52
15.9.17 CLASS1 Target Profiling Configuration Register (C1TPCR) . . . . . . . . . . . 15-53
15.9.18 CLASS1 Profiling Control Register (C1PCR) . . . . . . . . . . . . . . . . . . . . . . . 15-54
15.9.19 CLASS1 Watch Point Control Registers (C1WPCR) . . . . . . . . . . . . . . . . . 15-55
15.9.20 CLASS1 Watch Point Access Configuration Register (C1WPACR) . . . . . 15-57
15.9.21 CLASS1 Watch Point Extended Access Configuration Register
(C1WPEACR) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15-58
15.9.22 CLASS1 Watch Point Address Mask Registers (C1WPAMR) . . . . . . . . . . 15-59
15.9.23 CLASS1 Profiling Time-Out Registers (C1PTOR) . . . . . . . . . . . . . . . . . . . 15-60
15.9.24 CLASS1 Target Watch Point Control Registers (C1TWPCR) . . . . . . . . . . 15-61
15.9.25 CLASS1 Profiling IRQ Status Register (C1PISR) . . . . . . . . . . . . . . . . . . . . 15-62
15.9.26 CLASS1 Profiling IRQ Enable Register (C1PIER) . . . . . . . . . . . . . . . . . . . 15-63
15.9.27 CLASS1 Profiling Reference Counter Register (C1PRCR) . . . . . . . . . . . . . 15-64
15.9.28 CLASS1 Profiling General Counter Registers (C1PGCRx). . . . . . . . . . . . . 15-65
15.9.29 CLASS1 Arbitration Control Register (C1ACR) . . . . . . . . . . . . . . . . . . . . . 15-66
15.9.30 Mode Registers 0–3 (DnMR[0–3]). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15-67
15.9.31 Status Registers (DnSRn) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15-70
15.9.32 Current Link Descriptor Extended Address Registers (DnECLNDARn). . . 15-72
15.9.33 Current Link Descriptor Address Registers (DnCLNDARn): . . . . . . . . . . . 15-73
15.9.34 Source Attributes Registers (DnSATRn) . . . . . . . . . . . . . . . . . . . . . . . . . . . 15-74
15.9.35 Source Address Registers (DnSARn) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15-75
15.9.36 Destination Attributes Registers (DnDATRn).. . . . . . . . . . . . . . . . . . . . . . . 15-76
15.9.37 Destination Address Registers (DnDARn) . . . . . . . . . . . . . . . . . . . . . . . . . . 15-77
15.9.38 Byte Count Registers (DnBCRn).. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15-78
15.9.39 Extended Next Link Descriptor Address Registers (DnENLNDARn). . . . . 15-79
15.9.40 Next Link Descriptor Address Registers (DnNLNDARn) . . . . . . . . . . . . . . 15-80
15.9.41 Extended Current List Descriptor Address Registers (DnECLSDARn). . . . 15-81
15.9.42 Current List Descriptor Address Registers (DnCLSDARn) . . . . . . . . . . . . . 15-82
15.9.43 Extended Next List Descriptor Address Registers (DnENLSDARn). . . . . . 15-83
15.9.44 Next List Descriptor Address Registers (DnNLSDARn) . . . . . . . . . . . . . . . 15-84
15.9.45 Source Stride Registers (DnSSRn) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15-85
15.9.46 Destination Stride Registers (DnDSRn) . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15-86
15.9.47 DMA General Status Register (DnDGSR)) . . . . . . . . . . . . . . . . . . . . . . . . . 15-87
15.9.48 Local Access Window Base Address Registers 0–9 (DnLAWBAR[0–9]) . 15-89
15.9.49 Local Access Window Attributes Registers 0–9 (DnLAWAR[0–9]). . . . . . 15-90
15.9.50 CPRIn PCVTR Control Register 0(PCVTRCPRInCR0) . . . . . . . . . . . . . . . 15-92
15.9.51 CPRIn PCVTR Control Register 1(PCVTRCPRInCR1) . . . . . . . . . . . . . . . 15-93
15.9.52 SRDS Bank 1 Reset Control Register (SRDSB1RSTCTL) . . . . . . . . . . . . . 15-94
15.9.53 SRDS Bank 2 Reset Control Register (SRDSB2RSTCTL) . . . . . . . . . . . . . 15-95

MSC8158E Reference Manual, Rev. 2
Freescale Semiconductor xix
Contents
15.9.54 SRDS Bank 1–2 PLL Control Register 0 (SRDSB[1–2]PLLCR0) . . . . . . . 15-96
15.9.55 SRDS Bank 1–2 PLL Control Register 1 (SRDSB[1–2]PLLCR1) . . . . . . . 15-97
15.9.56 Lane C–J General Control Register 0 (L[C–J]GCR0) . . . . . . . . . . . . . . . . . 15-98
15.9.57 Lane C–J General Control Register 1 (L[C–J]GCR1) . . . . . . . . . . . . . . . . . 15-99
15.9.58 Lane C–J Receive Equalization Control Register 0 (L[C–J]RECR0). . . . . 15-100
15.9.59 Lane C–J Transmit Equalization Control Register 0 (L[C–J]TECR0) . . . . 15-102
15.9.60 Lane C–J Test Control/Status Register 3 (L[C–J]TCSR3) . . . . . . . . . . . . . 15-104
16 Serial RapidIO Controller and Enhanced Message Complex
16.1 Serial RapidIO and eMSG Complex Overview. . . . . . . . . . . . . . . . . . . . . . . . . 16-4
16.1.1 Serial RapidIO Ports . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16-4
16.1.2 eMSG Unit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16-5
16.1.3 Internal Processing Support . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16-7
16.1.4 Operating Modes. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16-8
16.1.5 x1/x2/x4 LP-Serial Signals . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16-8
16.1.6 RapidIO Interface Activation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16-9
16.1.6.1 Initialization for Booting the MSC8158E DSP . . . . . . . . . . . . . . . . . . . . . . 16-9
16.1.6.2 Initialization for Non-Boot Operation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16-9
16.1.7 Link Training. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16-9
16.1.7.1 Initialize Link . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16-10
16.1.7.2 Reset Link. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16-10
16.1.7.3 Software Retraining . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16-11
16.1.8 Special Case of x2/x1 Modes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16-11
16.2 RapidIO Interface Basics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16-12
16.2.1 RapidIO Transactions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16-12
16.2.2 Message Passing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16-14
16.2.3 RapidIO Data Streaming (Type9) Transactions . . . . . . . . . . . . . . . . . . . . . . 16-14
16.2.4 RapidIO GSM Transactions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16-15
16.2.5 RapidIO Packet Format. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16-15
16.2.6 RapidIO Control Symbol Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16-17
16.2.7 Accessing Configuration Registers via RapidIO Packets . . . . . . . . . . . . . . . 16-18
16.2.7.1 Inbound Maintenance Accesses . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16-18
16.2.7.2 Guidelines. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16-19
16.2.7.3 Outbound Maintenance Accesses. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16-19
16.2.8 Interaction with the Message Unit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16-19
16.2.8.1 Inbound (Rx) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16-20
16.2.8.2 Outbound (Tx) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16-20
16.2.8.3 Buffer Allocation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16-20
16.2.8.3.1 Tx Message Unit Request Packets. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16-21
16.2.8.3.2 Tx Message Unit Response/Flow Control Packets . . . . . . . . . . . . . . . . . 16-22
16.2.8.3.3 Arbitration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16-23

MSC8158E Reference Manual, Rev. 2
xx Freescale Semiconductor
Contents
16.2.8.3.3.1 Arbitration Point 0 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16-23
16.2.8.3.3.2 Arbitration Point 1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16-24
16.2.8.3.3.3 Arbitration Point 2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16-24
16.2.9 RapidIO ATMU Implementation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16-24
16.2.9.1 RapidIO Outbound ATMU. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16-25
16.2.9.2 Outbound Windows . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16-27
16.2.9.3 Window Size and Segmented Windows. . . . . . . . . . . . . . . . . . . . . . . . . . . 16-27
16.2.9.3.1 Valid Hits to Multiple ATMU Windows. . . . . . . . . . . . . . . . . . . . . . . . . 16-52
16.2.9.3.2 Window Boundary Crossing Errors. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16-53
16.2.9.4 RapidIO Inbound ATMU . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16-54
16.2.9.4.1 Hits to Multiple ATMU Windows. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16-56
16.2.9.4.2 Window Boundary Crossing Errors. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16-56
16.2.10 Generating Link-Request/Reset-Device . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16-57
16.2.11 Outbound Drain Mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16-58
16.2.12 Input Port Disable Mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16-59
16.2.13 Software Assisted Error Recovery Register Support . . . . . . . . . . . . . . . . . . 16-59
16.2.14 Errors and Error Handling. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16-60
16.2.14.1 RapidIO Error Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16-60
16.2.14.2 Physical Layer RapidIO Errors . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16-61
16.2.14.3 Logical Layer RapidIO Errors . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16-64
16.3 RapidIO Enhanced Message Unit (eMSG) Communication . . . . . . . . . . . . . . 16-90
16.3.1 Overview. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16-90
16.3.2 Modes of Operation. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16-92
16.3.2.1 Outbound Modes of Operation. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16-92
16.3.2.2 Inbound Modes of Operation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16-92
16.3.3 Command Descriptor Format . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16-93
16.3.3.1 Inbound Command Descriptor Format. . . . . . . . . . . . . . . . . . . . . . . . . . . . 16-93
16.3.3.2 Outbound Command Descriptor Format . . . . . . . . . . . . . . . . . . . . . . . . . . 16-95
16.3.3.3 Outbound Completion Queues . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16-96
16.3.4 Scatter/Gather Tables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16-97
16.3.5 Type5 NWrite Unit Functional Description . . . . . . . . . . . . . . . . . . . . . . . . . 16-99
16.3.5.1 Type5 Outbound NWrite Descriptor Format . . . . . . . . . . . . . . . . . . . . . . . 16-99
16.3.5.2 Type5 Outbound NWrite Operation. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16-102
16.3.5.2.1 Work Scheduling . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16-102
16.3.5.2.2 Adding NWrites to a Message Queue . . . . . . . . . . . . . . . . . . . . . . . . . . 16-102
16.3.5.2.3 NWrite Initialization . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16-103
16.3.5.2.4 Error Handling. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16-103
16.3.5.2.4.1 Descriptor Error . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16-104
16.3.5.2.4.2 Transaction Errors . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16-104
16.3.6 Type6 Streaming Write Functional Description . . . . . . . . . . . . . . . . . . . . . 16-105
16.3.6.1 Type6 Outbound SWrite Descriptor Format . . . . . . . . . . . . . . . . . . . . . . 16-105
16.3.6.2 Type6 Outbound SWrite Operation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16-107
Table of contents
Other NXP Semiconductors Wireless Router manuals