Infineon SAK-TC1784F-320F180EP BA, SAK-TC1782F-320F180HR BA User manual

  • Hello! I am an AI chatbot trained to assist you with the Infineon SAK-TC1784F-320F180EP BA User manual. 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!
User´s Manual
V1.1 2011-05
Microcontrollers
TC1784
32-Bit Single-Chip Microcontroller
Edition 2011-05
Published by
Infineon Technologies AG
81726 Munich, Germany
© 2011 Infineon Technologies AG
All Rights Reserved.
Legal Disclaimer
The information given in this document shall in no event be regarded as a guarantee of conditions or
characteristics. With respect to any examples or hints given herein, any typical values stated herein and/or any
information regarding the application of the device, Infineon Technologies hereby disclaims any and all warranties
and liabilities of any kind, including without limitation, warranties of non-infringement of intellectual property rights
of any third party.
Information
For further information on technology, delivery terms and conditions and prices, please contact the nearest
Infineon Technologies Office (www.infineon.com).
Warnings
Due to technical requirements, components may contain dangerous substances. For information on the types in
question, please contact the nearest Infineon Technologies Office.
Infineon Technologies components may be used in life-support devices or systems only with the express written
approval of Infineon Technologies, if a failure of such components can reasonably be expected to cause the failure
of that life-support device or system or to affect the safety or effectiveness of that device or system. Life support
devices or systems are intended to be implanted in the human body or to support and/or maintain and sustain
and/or protect human life. If they fail, it is reasonable to assume that the health of the user or other persons may
be endangered.
User´s Manual
V1.1 2011-05
Microcontrollers
TC1784
32-Bit Single-Chip Microcontroller
TC1784 User´s Manual
Revision History: V1.1, 2011-05
Previous Version: TS V1.0
Chapter Subjects (major changes since last revision)
Changes from TC1784 TS V1.0 to TC1784 UM V1.1
1 Introduction:
• No functional changes
2CPU:
• No functional changes
3SCU:
• Enhanced CHIPID register content
• Removed bit OSCCON.SHBY
• Changed reset value of register PLLEERAYCON0[16] to 1
• Aligned naming for PLLERAY and PLL_ERAY to PLL_ERAY
4 On-Chip System Buses and Bus Bridges:
• Corrected description of SBCU_CON.SVM bit
5PMU:
• Enhanced description of ALSE mechanism
• Added ALSE disable configuration
6 Data Access Overlay (OVC):
• No functional changes
7 BootROM Content:
• No functional changes
8 Memory Maps:
• No functional changes
• Corrected name PCODE to CMEM
9 General Purpose I/O Ports and Peripheral I/O Lines:
• The PDx encodings ´011´ and ´110´ in the where updated. These
encodings are used now for the A2 ´Strong Sharp-´ and ´Medium
Sharp-´ modes.
• The note regarding the constraint of the LVDS pair in CMOS mode was
updated.
10 PCP:
• Added register MIECON for the ECC control of the PCPs related
SRAMs
• Removed the PCP Soft Reset feature
11 DMA:
• No functional changes
12 LMB External Bus Unit (EBU):
• No functional changes
Trademarks
TriCore®, Infineon®, Infineon Technologies® and GPTA® are trademarks of Infineon
Technologies AG.
13 Interrupt System:
• No functional changes
14 System Timer (STM):
• Corrected the number of E-RAY interrupts to 10.
15 OCDS:
• No functional changes
• Replaced OCDS chapter with new User´s Manual chapter
16 ASC:
• No functional changes
• Improved description of the loop back operation in synchronous mode
17 SSC:
• No functional changes
18 MSC:
• No functional changes
19 MultiCAN:
• Connections to P4.0 and P4.1 added.
• Connections to ECTTx and from INT_0_15 reworked / removed
• Modified footnote about minimal required frequency at bootstraping
• Corrected TTFMR and TTSR reset values
• Added register bit FDR.FDIS bit
• Corrected description of RXPND and TXPND (Set by hardware and
must be reset by software)
• Added register CAN_EDCR
20 E-Ray:
• Corrected IOCR settings in Table of Port connections
21 GPTAv5:
• No functional changes
• Improved bit field description for GTCCTRk.OCM and LTCCTRk.OCM
bit field descriptions
22 MLI:
• Corrected reset value of the module ID register
23 ADC:
• No functional changes
24 FADC:
• No functional changes
• Offset calibration: improved description of the feature
TC1784 User´s Manual
Revision History: V1.1, 2011-05
We Listen to Your Comments
Any information within this document that you feel is wrong, unclear or missing at all?
Your feedback will help us to continuously improve the quality of this document.
Please send your proposal (including a reference to this document) to:
mcdocu.commen[email protected]
User´s Manual L-1 V1.1, 2011-05
TC1784
Table of Contents
1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-1
1.1 About this Document . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-1
1.1.1 Related Documentations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-1
1.1.2 Text Conventions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-1
1.1.3 Reserved, Undefined, and Unimplemented Terminology . . . . . . . . . . 1-3
1.1.4 Register Access Modes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-3
1.1.5 Abbreviations and Acronyms . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-4
1.2 System Architecture of the TC1784 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-7
1.2.1 TC1784 Block Diagram . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-8
1.2.2 System Features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-9
1.2.3 CPU Cores of the TC1784 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-10
1.2.3.1 High-performance 32-bit CPU . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-10
1.2.3.2 High-performance 32-bit Peripheral Control Processor . . . . . . . . . 1-11
1.3 On-Chip System Units . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-12
1.3.1 Flexible Interrupt System . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-12
1.3.2 Direct Memory Access Controller . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-12
1.3.3 System Timer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-13
1.3.4 System Control Unit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-16
1.3.4.1 Clock Generation Unit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-16
1.3.4.2 Features of the Watchdog Timer . . . . . . . . . . . . . . . . . . . . . . . . . . 1-16
1.3.4.3 Reset Operation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-16
1.3.4.4 External Interface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-17
1.3.4.5 Die Temperature Measurement . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-17
1.3.5 General Purpose I/O Ports and Peripheral I/O Lines . . . . . . . . . . . . . 1-17
1.3.6 Program Memory Unit (PMU) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-18
1.3.6.1 Boot ROM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-19
1.3.6.2 Overlay RAM and Data Acquisition . . . . . . . . . . . . . . . . . . . . . . . . 1-19
1.3.6.3 Emulation Memory Interface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-19
1.3.6.4 Tuning Protection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-19
1.3.6.5 Program and Data Flash . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-19
1.3.7 Data Access Overlay . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-23
1.3.8 Development Support . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-23
1.4 On-Chip Peripheral Units of the TC1784 . . . . . . . . . . . . . . . . . . . . . . . . 1-25
1.4.1 Asynchronous/Synchronous Serial Interfaces . . . . . . . . . . . . . . . . . . 1-25
1.4.2 High-Speed Synchronous Serial Interfaces (SSC) . . . . . . . . . . . . . . 1-27
1.4.3 Micro Second Channel Interface (MSC) . . . . . . . . . . . . . . . . . . . . . . 1-30
1.4.4 FlexRayâ„¢ Protocol Controller (E-Ray) . . . . . . . . . . . . . . . . . . . . . . . 1-32
1.4.4.1 E-Ray Kernel Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-32
1.4.4.2 Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-33
1.4.5 MultiCAN Controller . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-35
1.4.6 Micro Link Interface (MLI) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-37
Table of Contents
TC1784
Table of Contents
User´s Manual L-2 V1.1, 2011-05
1.4.7 General Purpose Timer Array (Intro) . . . . . . . . . . . . . . . . . . . . . . . . . 1-40
1.4.7.1 Functionality of GPTA0 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-41
1.4.7.2 Functionality of LTCA2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-43
1.4.8 Analog-to-Digital Converters . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-44
1.4.8.1 ADC Block Diagram . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-44
1.4.8.2 FADC Short Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-46
1.4.9 External Bus Interface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-49
1.5 On-Chip Debug Support (OCDS) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-49
1.5.1 On-Chip Debug Support . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-49
1.5.2 Real Time Trace . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-50
1.5.3 Calibration Support . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-50
1.5.4 Tool Interfaces . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-51
1.5.5 Self-Test Support . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-51
1.5.6 FAR Support . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-51
2 CPU Subsystem . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-1
2.1 TC1784 Processor Subsystem . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-1
2.2 Central Processing Unit Features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-2
2.2.1 CPU Diagram . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-3
2.2.2 Instruction Fetch Unit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-4
2.2.3 Execution Unit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-5
2.2.4 General Purpose Register File . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-6
2.3 CPU Implementation-Specific Features . . . . . . . . . . . . . . . . . . . . . . . . . . 2-7
2.3.1 Context Save Areas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-7
2.3.2 Program Counter Register - PC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-7
2.3.3 Interrupt System . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-9
2.3.4 Trap System . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-9
2.3.5 Memory Integrity Error Handling . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-10
2.3.5.1 Program Side Memories . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-10
2.3.5.2 Data Side Memories . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-12
2.3.5.3 TriCore 1.3 Compatibility . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-15
2.4 CPU Subsystem Registers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-16
2.5 CPU Core Special Function Registers (CSFR) . . . . . . . . . . . . . . . . . . . 2-17
2.5.1 Registers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-19
2.6 CPU General Purpose Registers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-24
2.7 CPU Memory Protection Registers . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-27
2.8 FPU Registers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-33
2.8.1 Registers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-34
2.9 Memory Integrity Registers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-35
2.9.1 Register Descriptions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-37
2.10 CPU Slave Interface (CPS) Registers . . . . . . . . . . . . . . . . . . . . . . . . . . 2-52
2.10.1 Register Descriptions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-53
2.11 Core Debug Registers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-56
TC1784
Table of Contents
User´s Manual L-3 V1.1, 2011-05
2.12 Implementation Specific Reset Values . . . . . . . . . . . . . . . . . . . . . . . . . 2-58
2.13 CPU Instruction Timing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-59
2.13.1 Integer-Pipeline Instructions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-60
2.13.1.1 Simple Arithmetic Instruction Timings . . . . . . . . . . . . . . . . . . . . . . 2-60
2.13.1.2 Multiply Instruction Timings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-64
2.13.1.3 Multiply Accumulate (MAC) Instruction Timing . . . . . . . . . . . . . . . 2-65
2.13.1.4 Control Flow Instruction Timing . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-66
2.13.2 Load-Store Pipeline Instructions . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-67
2.13.2.1 Address Arithmetic Timing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-67
2.13.2.2 Control Flow Instruction Timing . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-68
2.13.2.3 Load Instruction Timing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-69
2.13.2.4 Store Instruction Timing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-70
2.13.3 Floating Point Pipeline Timing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-71
2.14 Program Memory Interface (PMI) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-72
2.14.1 PMI Features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-72
2.14.2 LMB Access Priorities . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-73
2.14.3 Scratchpad RAM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-73
2.14.4 Instruction Cache . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-74
2.14.5 Program Line Buffer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-75
2.14.6 PMI Registers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-76
2.14.6.1 PMI Register Descriptions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-77
2.15 Data Memory Interface (DMI) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-83
2.15.1 DMI Features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-83
2.15.2 LMB Access Priorities . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-84
2.15.3 Local Data RAM (LDRAM) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-84
2.15.4 Data Cache . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-84
2.15.5 Data Line Buffer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-85
2.15.6 DMI Trap Generation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-86
2.15.7 DMI Registers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-88
2.15.7.1 DMI Register Descriptions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-89
3 System Control Unit (SCU) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-1
3.1 Clock System Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-2
3.1.1 Clock Generation Unit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-4
3.1.1.1 Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-4
3.1.1.2 Oscillator Circuit (OSC) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-5
3.1.1.3 Phase-Locked Loop (PLL) Module . . . . . . . . . . . . . . . . . . . . . . . . . 3-7
3.1.1.4 ERAY Phase-Locked Loop (PLL_ERAY) Module . . . . . . . . . . . . . 3-15
3.1.1.5 Clock Control Unit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-23
3.1.1.6 External Clock Output . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-25
3.1.1.7 CGU Registers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-30
3.1.2 Module Clock Generation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-49
3.1.2.1 Clock Control Register CLC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-50
TC1784
Table of Contents
User´s Manual L-4 V1.1, 2011-05
3.2 Reset Operation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-62
3.2.1 Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-62
3.2.2 Reset Types . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-62
3.2.3 Reset Sources Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-63
3.2.4 Module Reset Behavior . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-63
3.2.5 General Reset Operation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-64
3.2.6 Reset State Machine . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-65
3.2.7 Reset Counters (RSTCNTA and RSTCNTD) . . . . . . . . . . . . . . . . . . 3-65
3.2.8 De-assertion of a Reset . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-67
3.2.8.1 Example1: . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-67
3.2.8.2 Example2: . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-67
3.2.8.3 Example3: . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-67
3.2.9 Reset Triggers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-67
3.2.9.1 Specific Reset Triggers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-68
3.2.9.2 Configurable Reset Triggers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-68
3.2.10 Debug Specific Behavior . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-68
3.2.11 EEC Reset Specific Behavior . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-68
3.2.12 Reset Controller Registers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-69
3.2.12.1 Status Registers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-69
3.2.12.2 Configuration Registers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-71
3.3 External Interface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-76
3.3.1 External Service Requests (ESRx) . . . . . . . . . . . . . . . . . . . . . . . . . . 3-76
3.3.1.1 ESRx as Reset Request Trigger . . . . . . . . . . . . . . . . . . . . . . . . . . 3-76
3.3.1.2 ESRx as Reset Output . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-77
3.3.1.3 ESR Registers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-78
3.3.2 External Request Unit (ERU) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-85
3.3.2.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-85
3.3.2.2 ERU Pin Connections . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-87
3.3.2.3 External Request Select Unit (ERS) . . . . . . . . . . . . . . . . . . . . . . . 3-87
3.3.2.4 Event Trigger Logic (ETL) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-88
3.3.2.5 Connecting Matrix . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-90
3.3.2.6 Output Gating Unit (OGU) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-92
3.3.2.7 ERU Output Connections . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-94
3.3.2.8 External Request Unit Registers . . . . . . . . . . . . . . . . . . . . . . . . . . 3-96
3.4 Power Management . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-111
3.4.1 Power Management Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-111
3.4.2 Power Management Modes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-112
3.4.2.1 Idle Mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-112
3.4.2.2 Sleep Mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-113
3.4.3 Power Management Control and Status Register, PMCSR . . . . . . 3-113
3.5 Software Boot Support . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-116
3.5.1 Configuration done with Start-up . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-116
3.5.2 Start-up Configuration Options . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-116
TC1784
Table of Contents
User´s Manual L-5 V1.1, 2011-05
3.5.3 Start-up Registers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-117
3.5.3.1 Start-up Status Register . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-117
3.6 ECC Error Handling . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-120
3.6.1 ECC Software Testing Support . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-120
3.6.2 ECC Registers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-121
3.7 Die Temperature Measurement . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-127
3.7.1 Die Temperature Sensor Register . . . . . . . . . . . . . . . . . . . . . . . . . . 3-128
3.8 Watchdog Timer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-130
3.8.1 Watchdog Timer Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-130
3.8.2 Features of the Watchdog Timer . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-130
3.8.3 The Endinit Function . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-131
3.8.3.1 Password Access to WDT_CON0 . . . . . . . . . . . . . . . . . . . . . . . . 3-133
3.8.3.2 Modify Access to WDT_CON0 . . . . . . . . . . . . . . . . . . . . . . . . . . 3-134
3.8.3.3 Access to Endinit-Protected Registers . . . . . . . . . . . . . . . . . . . . 3-135
3.8.4 Timer Operation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-135
3.8.4.1 Timer Modes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-135
3.8.4.2 WDT Reset Behavior . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-137
3.8.4.3 WDT Operation During Power-Saving Modes . . . . . . . . . . . . . . . 3-138
3.8.4.4 Suspend Mode Support . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-139
3.8.5 Watchdog Timer Registers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-139
3.8.5.1 Watchdog Timer Control Register 0 . . . . . . . . . . . . . . . . . . . . . . 3-139
3.8.5.2 Watchdog Timer Control Register 1 . . . . . . . . . . . . . . . . . . . . . . 3-141
3.8.5.3 Watchdog Timer Status Register . . . . . . . . . . . . . . . . . . . . . . . . . 3-143
3.9 Emergency Stop Output Control . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-146
3.9.1 Emergency Stop Register . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-148
3.10 Interrupt Generation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-150
3.10.1 Interrupt Control Registers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-151
3.11 NMI Trap Generation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-162
3.11.1 Trap Control Registers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-163
3.12 Miscellaneous System Control Register . . . . . . . . . . . . . . . . . . . . . . . 3-172
3.12.1 GPTA Input IN1 Control . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-172
3.12.2 System Control Register . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-172
3.12.3 Identification Registers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-174
3.12.4 SCU Kernel Registers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-179
3.12.5 SCU Address Area . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-185
4 On-Chip System Buses and Bus Bridges . . . . . . . . . . . . . . . . . . . . . . 4-1
4.1 What is new . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-2
4.2 Local Memory Bus . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-3
4.2.1 Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-3
4.2.2 Transaction Types . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-3
4.2.2.1 Single Transfers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-3
4.2.2.2 Block Transfers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-4
TC1784
Table of Contents
User´s Manual L-6 V1.1, 2011-05
4.2.2.3 Atomic Transfers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-4
4.2.3 Address Alignment Rules . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-4
4.2.4 Reaction of a Busy Slave . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-4
4.2.5 LMB Basic Operation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-5
4.3 Local Memory Bus Controller Unit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-6
4.3.1 Basic Operation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-6
4.3.2 LMB Bus Arbitration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-6
4.3.2.1 LMB Bus Default Master . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-7
4.3.3 LMB Bus Error Handling . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-7
4.3.4 LMB Bus Control Unit Registers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-8
4.3.4.1 LMB Bus Control Unit Control Registers . . . . . . . . . . . . . . . . . . . . 4-10
4.4 Local Memory Bus to FPI Bus Interface (LFI Bridge) . . . . . . . . . . . . . . 4-16
4.4.1 Functional Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-16
4.4.2 LMB to FPI Bridge Control Registers . . . . . . . . . . . . . . . . . . . . . . . . . 4-18
4.4.2.1 LFI Register Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-19
4.5 System Peripheral Bus . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-21
4.5.1 Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-21
4.5.2 Bus Transaction Types . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-23
4.5.3 Reaction of a Busy Slave . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-23
4.5.4 Address Alignment Rules . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-24
4.5.5 FPI Bus Basic Operations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-24
4.6 FPI Bus Control Unit (SBCU) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-26
4.6.1 FPI Bus Arbitration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-26
4.6.1.1 Arbitration on the System Peripheral Bus . . . . . . . . . . . . . . . . . . . 4-26
4.6.1.2 Starvation Prevention . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-28
4.6.2 FPI Bus Error Handling . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-28
4.6.3 BCU Debug Support . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-31
4.6.3.1 Address Triggers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-31
4.6.3.2 Signal Status Triggers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-32
4.6.3.3 Grant Triggers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-33
4.6.3.4 Combination of Triggers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-34
4.6.3.5 BCU Breakpoint Generation Examples . . . . . . . . . . . . . . . . . . . . . 4-34
4.6.4 System Bus Control Unit Registers . . . . . . . . . . . . . . . . . . . . . . . . . . 4-37
4.6.4.1 SBCU ID Register Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-39
4.6.4.2 SBCU Control Registers Descriptions . . . . . . . . . . . . . . . . . . . . . . 4-40
4.6.4.3 SBCU Error Registers Descriptions . . . . . . . . . . . . . . . . . . . . . . . . 4-41
4.6.4.4 SBCU OCDS Registers Descriptions . . . . . . . . . . . . . . . . . . . . . . 4-45
4.6.4.5 SBCU Service Request Control Register Description . . . . . . . . . . 4-58
4.7 On Chip Bus Master TAG Assignments . . . . . . . . . . . . . . . . . . . . . . . . 4-59
5 Program Memory Unit (PMU) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-1
5.1 BootROM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-3
5.1.1 Addressing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-3
TC1784
Table of Contents
User´s Manual L-7 V1.1, 2011-05
5.1.2 Firmware Program Structure . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-3
5.2 Overlay RAM and Data Acquisition . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-4
5.2.1 Internal Overlay Memory . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-4
5.2.2 Online Data Acquisition (OLDA) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-4
5.2.3 Access Performance . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-5
5.2.4 Overlay Memory Control Register . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-5
5.3 Emulation Memory Interface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-7
5.4 PMU ID Register . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-8
5.5 Tuning Protection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-9
5.6 Program and Data Flash . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-10
5.6.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-10
5.6.2 Architectural and Operational Overview . . . . . . . . . . . . . . . . . . . . . . 5-14
5.6.2.1 Sector and Page Architecture . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-14
5.6.2.2 Data Flash and EEPROM Emulation . . . . . . . . . . . . . . . . . . . . . . . 5-15
5.6.2.3 Operational Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-17
5.6.2.4 Flash Access Control and Performance . . . . . . . . . . . . . . . . . . . . 5-24
5.6.3 Functional Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-26
5.6.3.1 Address Mapping . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-26
5.6.3.2 Basic Operating Modes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-28
5.6.3.3 Command Sequence Definitions . . . . . . . . . . . . . . . . . . . . . . . . . . 5-28
5.6.3.4 Functional Command Description . . . . . . . . . . . . . . . . . . . . . . . . . 5-31
5.6.3.5 Sector, Page and Block Addressing . . . . . . . . . . . . . . . . . . . . . . . 5-40
5.6.3.6 Register Addresses and Access Restrictions . . . . . . . . . . . . . . . . 5-43
5.6.3.7 Flash Status Definition . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-46
5.6.3.8 Flash Configuration Control . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-53
5.6.3.9 Flash Identification Register . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-59
5.6.4 Error Correction and Margin Control . . . . . . . . . . . . . . . . . . . . . . . . . 5-60
5.6.4.1 Dynamic Error Correction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-60
5.6.4.2 Margin Check Control . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-61
5.6.5 Read and Write Protection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-64
5.6.5.1 Read Protection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-64
5.6.5.2 Write and OTP Protection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-67
5.6.5.3 Protection Configuration Indication . . . . . . . . . . . . . . . . . . . . . . . . 5-68
5.6.5.4 User Configuration Blocks and Pages . . . . . . . . . . . . . . . . . . . . . . 5-76
5.6.6 Interrupt, Error and Operation Control . . . . . . . . . . . . . . . . . . . . . . . . 5-78
5.6.6.1 Interrupt Control . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-78
5.6.6.2 Trap Control . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-78
5.6.6.3 Handling Errors During Operation . . . . . . . . . . . . . . . . . . . . . . . . . 5-79
5.6.6.4 Handling Errors During Startup . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-84
5.6.6.5 Application Hints and Guidelines . . . . . . . . . . . . . . . . . . . . . . . . . . 5-86
5.6.7 Power Supply and Reset . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-89
5.6.7.1 Power Supply . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-89
5.6.7.2 Flash Power Consumption . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-89
TC1784
Table of Contents
User´s Manual L-8 V1.1, 2011-05
5.6.7.3 Flash Sleep Mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-89
5.6.7.4 Reset Control . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-91
6 Data Access Overlay (OVC) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-1
6.1 Basic Overlay Control . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-1
6.2 Online Data Acquisition (OLDA) and its Overlay . . . . . . . . . . . . . . . . . . . 6-4
6.3 Enable Control of Overlay Blocks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-4
6.4 Target and Overlay Memories . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-5
6.4.1 Target Memories . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-5
6.4.2 Internal Overlay Memory . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-5
6.4.3 Emulation Overlay Memory . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-6
6.4.4 External Overlay Memory . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-6
6.5 Change of Overlay Parameters and Overlay Start . . . . . . . . . . . . . . . . . 6-6
6.6 Block Priority and Access Performance . . . . . . . . . . . . . . . . . . . . . . . . . . 6-7
6.7 Overlay Control Registers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-7
7BootROM Content . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7-1
7.1 Start-up Mode Selection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7-1
7.2 Internal Start . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7-2
7.3 External Start . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7-2
7.4 Bootstrap Loading . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7-3
7.4.1 Common Procedures for all Bootloaders . . . . . . . . . . . . . . . . . . . . . . . 7-3
7.4.2 ASC Bootstrap Loader . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7-4
7.4.3 CAN Bootstrap Loader . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7-5
7.5 Alternate Boot Modes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7-6
7.5.1 Header Check in Alternate Boot Modes . . . . . . . . . . . . . . . . . . . . . . . 7-6
7.6 Startup Errors Handling . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7-9
7.7 Notes and usage hints . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7-10
7.7.1 Conditions upon user code start . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7-10
7.7.2 RAMs Handling . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7-10
7.7.3 Influencing the next SSW-execution . . . . . . . . . . . . . . . . . . . . . . . . . 7-10
8 Memory Maps . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8-1
8.1 What is new . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8-2
8.2 How to Read the Address Maps . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8-3
8.3 Contents of the Segments . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8-5
8.4 Address Map of the FPI Bus System . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8-7
8.4.1 Segments 0 to 14 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8-7
8.4.2 Segment 15 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8-12
8.5 Address Map of the Local Memory Bus (LMB) . . . . . . . . . . . . . . . . . . . 8-18
8.6 Memory Module Access Restrictions . . . . . . . . . . . . . . . . . . . . . . . . . . . 8-23
8.7 Side Effects from Modules to LDRAM . . . . . . . . . . . . . . . . . . . . . . . . . . 8-24
9 General Purpose I/O Ports and Peripheral I/O Lines (Ports) . . . . . . . 9-1
9.1 Basic Port Operation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-1
TC1784
Table of Contents
User´s Manual L-9 V1.1, 2011-05
9.1.1 Description Scheme for the Port IO Functions . . . . . . . . . . . . . . . . . . 9-2
9.1.2 Description of the port operation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-3
9.2 Port Register Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-5
9.2.1 Port Input/Output Control Registers . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-8
9.2.2 Pad Driver Mode Register . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-13
9.2.3 Port Output Register . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-16
9.2.4 Port Output Modification Register . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-17
9.2.5 Emergency Stop Register . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-19
9.2.6 Port Input Register . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-20
9.3 Port 0 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-21
9.3.1 Port 0 Configuration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-21
9.3.2 Port 0 Function Table . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-21
9.3.3 Port 0 Registers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-26
9.3.3.1 Port 0 Pad Driver Mode Register and Pad Classes . . . . . . . . . . . . 9-27
9.3.3.2 Port 0 Emergency Stop Register . . . . . . . . . . . . . . . . . . . . . . . . . . 9-27
9.4 Port 1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-28
9.4.1 Port 1 Configuration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-28
9.4.2 Port 1 Function Table . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-29
9.4.3 Port 1 Registers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-34
9.4.3.1 Port 1 Output Register . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-34
9.4.3.2 Port 1 Output Modification Register . . . . . . . . . . . . . . . . . . . . . . . . 9-34
9.4.3.3 Port 1 Input/Output Control Register 12 . . . . . . . . . . . . . . . . . . . . 9-35
9.4.3.4 Port 1 Input Register . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-35
9.4.3.5 Port 1 Pad Driver Mode Register and Pad Classes . . . . . . . . . . . . 9-35
9.4.3.6 Port 1 Emergency Stop Register . . . . . . . . . . . . . . . . . . . . . . . . . . 9-36
9.5 Port 2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-37
9.5.1 Port 2 Configuration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-37
9.5.2 Port 2 Function Table . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-37
9.5.3 Port 2 Registers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-41
9.5.3.1 Port 2 Output Register . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-41
9.5.3.2 Port 2 Output Modification Register . . . . . . . . . . . . . . . . . . . . . . . 9-41
9.5.3.3 Port 2 Input Register . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-41
9.5.3.4 Port 2 Pad Driver Mode Register and Pad Classes . . . . . . . . . . . . 9-42
9.5.3.5 Port 2 Emergency Stop Register . . . . . . . . . . . . . . . . . . . . . . . . . . 9-42
9.6 Port 3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-43
9.6.1 Port 3 Configuration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-43
9.6.2 Port 3 Function Table . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-44
9.6.3 Port 3 Registers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-49
9.6.3.1 Port 3 Pad Driver Mode Register and Pad Classes . . . . . . . . . . . . 9-50
9.6.3.2 Port 3 Emergency Stop Register . . . . . . . . . . . . . . . . . . . . . . . . . . 9-51
9.7 Port 4 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-52
9.7.1 Port 4 Configuration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-52
9.7.2 Port 4 Function Table . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-52
TC1784
Table of Contents
User´s Manual L-10 V1.1, 2011-05
9.7.3 Port 4 Registers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-53
9.7.3.1 Port 4 Output Register . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-54
9.7.3.2 Port 4 Output Modification Register . . . . . . . . . . . . . . . . . . . . . . . . 9-54
9.7.3.3 Port 4 Input/Output Control Register x (x = 4, 8 and 12) . . . . . . . . 9-54
9.7.3.4 Port 4 Input Register . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-54
9.7.3.5 Port 4 Emergency Stop Register . . . . . . . . . . . . . . . . . . . . . . . . . . 9-54
9.7.3.6 Port 4 Pad Driver Mode Register and Pad Classes . . . . . . . . . . . . 9-55
9.8 Port 5 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-56
9.8.1 Port 5 Configuration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-56
9.8.2 Port 5 Function Table . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-57
9.8.3 Port 5 Registers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-61
9.8.3.1 Port 5 Emergency Stop Register . . . . . . . . . . . . . . . . . . . . . . . . . . 9-61
9.8.3.2 Port 5 Pad Driver Mode Register and Pad Classes . . . . . . . . . . . . 9-62
9.9 Port 6 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-63
9.9.1 Port 6 Registers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-64
9.9.2 Port 6 Functions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-65
9.9.2.1 Port 6 Pad Driver Mode Register . . . . . . . . . . . . . . . . . . . . . . . . . . 9-66
9.9.2.2 Port 6 Emergency Stop Register . . . . . . . . . . . . . . . . . . . . . . . . . . 9-66
9.10 Port 7 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-67
9.10.1 Port 7 Registers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-67
9.10.2 Port 7 Functions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-68
9.10.2.1 Port 7 Pad Driver Mode Register . . . . . . . . . . . . . . . . . . . . . . . . . . 9-73
9.10.2.2 Port 7 Emergency Stop Register . . . . . . . . . . . . . . . . . . . . . . . . . . 9-73
9.11 Port 8 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-74
9.11.1 Port 8 Registers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-74
9.11.2 Port 8 Functions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-75
9.11.2.1 Port 8 Pad Driver Mode Register . . . . . . . . . . . . . . . . . . . . . . . . . . 9-79
9.11.2.2 Port 8 Emergency Stop Register . . . . . . . . . . . . . . . . . . . . . . . . . . 9-79
9.12 Port 9 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-80
9.12.1 Port 9 Registers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-80
9.12.2 Port 9 Functions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-81
9.12.2.1 Port 9 Pad Driver Mode Register . . . . . . . . . . . . . . . . . . . . . . . . . . 9-83
9.12.2.2 Port 9 Emergency Stop Register . . . . . . . . . . . . . . . . . . . . . . . . . . 9-83
9.13 Port 10 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-84
9.13.1 Port 10 Registers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-84
9.13.2 Port 10 Functions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-85
9.13.2.1 Port 10 Pad Driver Mode Register . . . . . . . . . . . . . . . . . . . . . . . . . 9-89
9.13.2.2 Port 10 Emergency Stop Register . . . . . . . . . . . . . . . . . . . . . . . . . 9-89
10 Peripheral Control Processor (PCP) . . . . . . . . . . . . . . . . . . . . . . . . . 10-1
10.1 PCP Feature/Enhancement History List . . . . . . . . . . . . . . . . . . . . . . . . 10-1
10.1.1 Switchable Core Clock Ratio . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-2
10.2 Peripheral Control Processor Overview . . . . . . . . . . . . . . . . . . . . . . . . . 10-2
TC1784
Table of Contents
User´s Manual L-11 V1.1, 2011-05
10.2.1 High Integrity Operation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-2
10.3 PCP Architecture . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-3
10.3.1 PCP Processor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-4
10.3.2 PCP Code Memory . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-5
10.3.2.1 CMEM Protection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-5
10.3.3 PCP Parameter RAM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-5
10.3.3.1 PRAM Protection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-6
10.3.4 FPI Bus Interface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-6
10.3.5 PCP Interrupt Control Unit and Service Request Nodes . . . . . . . . . . 10-6
10.4 PCP Programming Model . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-8
10.4.1 General Purpose Register Set of the PCP . . . . . . . . . . . . . . . . . . . . 10-8
10.4.1.1 Register R0 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-9
10.4.1.2 Registers R1, R2, and R3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-9
10.4.1.3 Registers R4 and R5 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-9
10.4.1.4 Register R6 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-10
10.4.1.5 Register R7 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-11
10.4.2 Contexts and Context Models . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-13
10.4.2.1 Context Models . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-13
10.4.2.2 Context Save Area . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-16
10.4.2.3 Context Restore Operation for CR6 and CR7 . . . . . . . . . . . . . . . 10-19
10.4.2.4 Context Save Operation for CR6 and CR7 . . . . . . . . . . . . . . . . . 10-23
10.4.2.5 Initialization of the Contexts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-26
10.4.2.6 Context Save Optimization . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-26
10.4.3 Channel Programs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-27
10.4.3.1 Channel Restart Mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-27
10.4.3.2 Channel Resume Mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-28
10.5 PCP Operation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-30
10.5.1 PCP Initialization . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-30
10.5.2 Channel Invocation and Context Restore Operation . . . . . . . . . . . . 10-30
10.5.3 Channel Exit and Context Save Operation . . . . . . . . . . . . . . . . . . . 10-31
10.5.3.1 Normal Exit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-31
10.5.3.2 Error Condition Channel Exit . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-32
10.5.3.3 Debug Exit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-33
10.6 PCP Interrupt Operation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-34
10.6.1 Issuing Service Requests to CPU or PCP . . . . . . . . . . . . . . . . . . . . 10-35
10.6.2 PCP Interrupt Control Unit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-35
10.6.3 PCP Service Request Nodes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-35
10.6.4 Issuing PCP Service Requests . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-36
10.6.4.1 Service Request on EXIT Instruction . . . . . . . . . . . . . . . . . . . . . . 10-37
10.6.4.2 Service Request on Suspension of Interrupt . . . . . . . . . . . . . . . . 10-37
10.6.4.3 Service Request on Error . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-38
10.6.4.4 Queue Full Operation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-38
10.7 PRAM Protection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-39
TC1784
Table of Contents
User´s Manual L-12 V1.1, 2011-05
10.7.1 Protection of PRAM against FPI Writes . . . . . . . . . . . . . . . . . . . . . . 10-41
10.7.2 Protection of PRAM against Internally Generated PRAM Writes . . 10-41
10.7.2.1 Context Save Region Protection . . . . . . . . . . . . . . . . . . . . . . . . . 10-41
10.7.2.2 Protected Channel PRAM Protection . . . . . . . . . . . . . . . . . . . . . 10-42
10.8 FPI Interface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-42
10.8.1 Operation as an FPI Master . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-42
10.8.2 Operation as an FPI Slave . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-43
10.9 PCP Error Handling . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-44
10.9.1 PRAM Protection Violation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-44
10.9.1.1 Enforced PRAM Partitioning . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-44
10.9.1.2 Protected Channel PRAM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-45
10.9.2 FPI Write Window Violation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-45
10.9.3 Channel Watchdog . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-45
10.9.4 Invalid Opcode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-45
10.9.5 Instruction Address Error . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-46
10.10 Software In-System Test Support . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-46
10.11 Memory Integrity Error Detection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-47
10.12 Instruction Set Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-48
10.12.1 DMA Primitives . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-48
10.12.2 Load and Store . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-49
10.12.3 Arithmetic and Logical Instructions . . . . . . . . . . . . . . . . . . . . . . . . . 10-50
10.12.4 Bit Manipulation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-52
10.12.5 Flow Control . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-52
10.12.6 Addressing Modes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-53
10.12.6.1 FPI Bus Addressing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-53
10.12.6.2 PRAM Addressing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-54
10.12.6.3 Bit Addressing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-54
10.12.6.4 Flow Control Destination Addressing . . . . . . . . . . . . . . . . . . . . . . 10-54
10.13 FPI Interface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-56
10.13.1 Access to the PCP Control Registers from the FPI Bus . . . . . . . . . 10-56
10.13.1.1 PCP Control Register Protection . . . . . . . . . . . . . . . . . . . . . . . . . 10-56
10.13.2 Access to the PRAM from the FPI Bus . . . . . . . . . . . . . . . . . . . . . . 10-57
10.13.3 Access to the CMEM from the FPI Bus . . . . . . . . . . . . . . . . . . . . . . 10-57
10.14 Debugging the PCP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-59
10.15 PCP Registers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-61
10.16 PCP Registers Address Space . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-64
10.17 Registers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-65
10.17.1 PCP Clock Control Register, PCP_CLC . . . . . . . . . . . . . . . . . . . . . 10-65
10.17.2 PCP Module Identification Register, PCP_ID . . . . . . . . . . . . . . . . . 10-66
10.17.3 PCP Control and Status Register, PCP_CS . . . . . . . . . . . . . . . . . . 10-67
10.17.4 PCP Error/Debug Status Register, PCP_ES . . . . . . . . . . . . . . . . . . 10-69
10.17.5 PCP Interrupt Control Register, PCP_ICR . . . . . . . . . . . . . . . . . . . 10-71
10.17.6 PCP Interrupt Threshold Register, PCP_ITR . . . . . . . . . . . . . . . . . 10-74
TC1784
Table of Contents
User´s Manual L-13 V1.1, 2011-05
10.17.7 PCP Interrupt Configuration Register, PCP_ICON . . . . . . . . . . . . . 10-75
10.17.8 PCP Stall Status Register, PCP_SSR . . . . . . . . . . . . . . . . . . . . . . . 10-77
10.17.9 SIST Mode Access Control Register, PCP_SMACON . . . . . . . . . . 10-79
10.17.10 Register Protection Register, PCP_RPROT . . . . . . . . . . . . . . . . . . 10-80
10.17.11 CMEM Protection Register, PCP_CPROT . . . . . . . . . . . . . . . . . . . 10-81
10.17.12 PRAM Protection Register, PCP_PPROT . . . . . . . . . . . . . . . . . . . . 10-82
10.17.13 FPI Write Window Register, PCP_FWWIN . . . . . . . . . . . . . . . . . . . 10-86
10.17.14 PCP Service Request Control Registers m, PCP_SRC[1:0] . . . . . . 10-87
10.17.15 PCP Service Request Control Registers m, PCP_SRC[3:2] . . . . . . 10-89
10.17.16 PCP Service Request Control Registers m, PCP_SRC[8:4] . . . . . . 10-90
10.17.17 PCP Service Request Control Registers m, PCP_SRC[11:9] . . . . . 10-91
10.18 PCP Instruction Set Details . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-93
10.18.1 Instruction Codes and Fields . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-93
10.18.1.1 Conditional Codes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-94
10.18.1.2 Instruction Fields . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-95
10.18.2 Counter Operation for COPY Instruction . . . . . . . . . . . . . . . . . . . . . 10-98
10.18.3 Counter Operation for BCOPY Instruction . . . . . . . . . . . . . . . . . . . . 10-99
10.18.4 Divide and Multiply Instructions . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-100
10.18.5 ADD, 32-bit Addition . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-101
10.18.6 AND, 32-bit Logical AND . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-102
10.18.7 BCOPY, DMA Operation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-103
10.18.8 CHKB, Check Bit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-104
10.18.9 CLR, Clear Bit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-104
10.18.10 COMP, 32-bit Compare . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-105
10.18.11 COPY, DMA Instruction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-106
10.18.12 DEBUG, Debug Instruction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-107
10.18.13 DINIT, Divide Initialization . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-108
10.18.14 DSTEP, Divide Instruction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-109
10.18.15 EXIT, Exit Instruction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-110
10.18.16 INB, Insert Bit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-111
10.18.17 JC, Jump Conditionally . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-112
10.18.18 JL, Jump Long Unconditional . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-113
10.18.19 LD, Load . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-113
10.18.20 LDL, Load 16-bit Value . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-115
10.18.21 MINIT, Multiply Initialization . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-115
10.18.22 MOV, Move Register to Register . . . . . . . . . . . . . . . . . . . . . . . . . . 10-116
10.18.23 Multiply Instructions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-117
10.18.24 NEG, Negate . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-118
10.18.25 NOP, No Operation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-118
10.18.26 NOT, Logical NOT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-118
10.18.27 OR, Logical OR . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-119
10.18.28 PRAM Bit Operations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-120
10.18.29 PRI, Prioritize . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-121
TC1784
Table of Contents
User´s Manual L-14 V1.1, 2011-05
10.18.30 RL, Rotate Left . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-122
10.18.31 RR, Rotate Right . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-122
10.18.32 SET, Set Bit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-123
10.18.33 SHL, Shift Left . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-123
10.18.34 SHR, Shift Right . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-124
10.18.35 ST, Store . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-125
10.18.36 SUB, 32-bit Subtract . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-126
10.18.37 XCH, Exchange . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-127
10.18.38 XOR, 32-bit Logical Exclusive OR . . . . . . . . . . . . . . . . . . . . . . . . . 10-128
10.18.39 Flag Updates of Instructions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-129
10.18.40 Instruction Timing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-130
10.19 Instruction Encoding . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-134
10.20 Programming of the PCP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-140
10.20.1 Initial PC of a Channel Program . . . . . . . . . . . . . . . . . . . . . . . . . . 10-140
10.20.1.1 Channel Entry Table . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-140
10.20.1.2 Channel Resume . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-141
10.20.2 Channel Management for Small and Minimum Contexts . . . . . . . 10-142
10.20.3 Unused Registers as Global’s or Constants . . . . . . . . . . . . . . . . . 10-142
10.20.4 Dispatch of Low Priority Tasks . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-143
10.20.5 Code Reuse Across Channels (Call and Return) . . . . . . . . . . . . . 10-143
10.20.6 Case-like Code Switches (Computed Go-To) . . . . . . . . . . . . . . . . 10-144
10.20.7 Simple DMA Operation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-144
10.20.7.1 COPY Instruction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-144
10.20.7.2 BCOPY Instruction (Burst Copy) . . . . . . . . . . . . . . . . . . . . . . . . 10-145
10.21 PCP Programming Notes and Tips . . . . . . . . . . . . . . . . . . . . . . . . . . 10-146
10.21.1 Notes on PCP Configuration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-146
10.21.2 General Purpose Register Use . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-146
10.21.3 Use of Channel Interruption . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-148
10.21.3.1 Dynamic Interrupt Masking . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-148
10.21.3.2 Control of Channel Priority (CPPN) . . . . . . . . . . . . . . . . . . . . . . 10-148
10.21.4 Implementing Divide Algorithms . . . . . . . . . . . . . . . . . . . . . . . . . . 10-149
10.21.5 Implementing Multiply Algorithms . . . . . . . . . . . . . . . . . . . . . . . . . 10-150
10.22 Implementation of the PCP in the TC1784 . . . . . . . . . . . . . . . . . . . . 10-152
10.22.1 PCP Memories . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-152
10.22.2 BCOPY Instruction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-152
10.22.3 PCP Reset Operation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-153
11 Direct Memory Access Controller (DMA) . . . . . . . . . . . . . . . . . . . . . 11-1
11.1 What is new . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11-1
11.2 DMA Controller Kernel Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11-3
11.2.1 Features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11-4
11.2.2 Definition of Terms . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11-5
11.2.3 DMA Principles . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11-6
/