Technical Reference Manual: TMS320F2837xD Dual-Core Delfino Microcontrollers
Technical Reference Manual: TMS320F2837xD Dual-Core Delfino Microcontrollers
Technical Reference Manual: TMS320F2837xD Dual-Core Delfino Microcontrollers
Microcontrollers
Preface....................................................................................................................................... 81
1 C28x Processor .................................................................................................................. 82
1.1 Overview..................................................................................................................... 83
1.1.1 Floating-Point Unit ................................................................................................ 83
1.1.2 Trigonometric Math Unit ......................................................................................... 83
1.1.3 Viterbi, Complex Math, and CRC Unit II (VCU-II) ............................................................ 84
2 System Control .................................................................................................................. 85
2.1 Introduction .................................................................................................................. 86
2.2 System Control Functional Description .................................................................................. 86
2.2.1 Device Identification .............................................................................................. 86
2.2.2 Device Configuration Registers ................................................................................. 87
2.3 Resets ....................................................................................................................... 87
2.3.1 Reset Sources ..................................................................................................... 87
2.3.2 External Reset (XRS) ............................................................................................. 88
2.3.3 Power-On Reset (POR) .......................................................................................... 88
2.3.4 Debugger Reset (SYSRS) ....................................................................................... 88
2.3.5 Watchdog Reset (WDRS) ........................................................................................ 89
2.3.6 NMI Watchdog Reset (NMIWDRS) ............................................................................. 89
2.3.7 DCSM Safe Code Copy Reset (SCCRESET) ................................................................. 89
2.3.8 Hibernate Reset (HIBRESET) ................................................................................... 89
2.3.9 Hardware BIST Reset (HWBISTRS)............................................................................ 89
2.3.10 Test Reset (TRST) ............................................................................................... 89
2.4 Peripheral Interrupts ....................................................................................................... 89
2.4.1 Interrupt Concepts................................................................................................. 90
2.4.2 Interrupt Architecture.............................................................................................. 90
2.4.3 Interrupt Entry Sequence ......................................................................................... 91
2.4.4 Configuring and Using Interrupts ................................................................................ 92
2.4.5 PIE Channel Mapping ............................................................................................ 95
2.4.6 Vector Tables ...................................................................................................... 96
2.5 Exceptions and Non-Maskable Interrupts ............................................................................. 102
2.5.1 Configuring and Using NMIs ................................................................................... 102
2.5.2 Emulation Considerations ...................................................................................... 102
2.5.3 NMI Sources ...................................................................................................... 103
2.5.4 Illegal Instruction Trap (ITRAP) ................................................................................ 103
2.6 Safety Features ........................................................................................................... 103
2.6.1 Write Protection on Registers .................................................................................. 103
2.6.2 Missing Clock Detection Logic ................................................................................. 104
2.6.3 PLLSLIP Detection .............................................................................................. 105
2.6.4 CPU1 and CPU2 PIE Vector Address Validity Check ...................................................... 105
2.6.5 NMIWDs .......................................................................................................... 106
2.6.6 ECC and Parity Enabled RAMs, Shared RAMs Protection ................................................ 106
2.6.7 ECC Enabled Flash Memory ................................................................................... 106
2.6.8 ERRORSTS Pin.................................................................................................. 106
2.7 Clocking ................................................................................................................... 107
2.7.1 Clock Sources .................................................................................................... 109
14.13.7 Practical Applications Using Phase Control Between PWM Modules ................................ 1755
14.13.8 Controlling a 3-Phase Interleaved DC/DC Converter ................................................... 1756
14.13.9 Controlling Zero Voltage Switched Full Bridge (ZVSFB) Converter................................... 1759
14.13.10 Controlling a Peak Current Mode Controlled Buck Module ........................................... 1760
14.13.11 Controlling H-Bridge LLC Resonant Converter......................................................... 1761
14.14 Registers ................................................................................................................. 1763
14.14.1 EPWM Base Addresses .................................................................................... 1763
14.14.2 EPWM_REGS Registers ................................................................................... 1764
14.14.3 EPWM_XBAR_REGS Registers ........................................................................... 1900
14.14.4 SYNC_SOC_REGS Registers ............................................................................. 1993
15 High-Resolution Pulse Width Modulator (HRPWM) .............................................................. 2001
15.1 Introduction ............................................................................................................... 2002
15.2 Operational Description of HRPWM .................................................................................. 2004
15.2.1 Controlling the HRPWM Capabilities ....................................................................... 2004
15.2.2 Configuring the HRPWM ..................................................................................... 2007
15.2.3 Configuring Hi-Res in Deadband Rising Edge and Falling Edge Delay ............................... 2008
15.2.4 Principle of Operation ......................................................................................... 2008
15.2.5 Deadband High Resolution Operation ..................................................................... 2018
15.2.6 Scale Factor Optimizing Software (SFO) .................................................................. 2019
15.2.7 HRPWM Examples Using Optimized Assembly Code. .................................................. 2019
15.3 Appendix A: SFO Library Software - SFO_TI_Build_V7.lib........................................................ 2025
15.3.1 Scale Factor Optimizer Function - int SFO() .............................................................. 2025
15.3.2 Software Usage ............................................................................................... 2026
16 Enhanced Capture (eCAP) ................................................................................................ 2028
16.1 Introduction ............................................................................................................... 2029
16.2 Description ............................................................................................................... 2029
16.3 Configuring Device Pins for the eCAP ............................................................................... 2029
16.4 Capture and APWM Operating Mode ................................................................................ 2030
16.5 Capture Mode Description ............................................................................................. 2031
16.5.1 Event Prescaler ................................................................................................ 2032
16.5.2 Edge Polarity Select and Qualifier .......................................................................... 2033
16.5.3 Continuous/One-Shot Control ............................................................................... 2033
16.5.4 32-Bit Counter and Phase Control .......................................................................... 2034
16.5.5 CAP1-CAP4 Registers ....................................................................................... 2035
16.5.6 Using SWSYNC with the ECAP Module ................................................................... 2035
16.5.7 Interrupt Control ............................................................................................... 2036
16.5.8 Shadow Load and Lockout Control ......................................................................... 2038
16.5.9 APWM Mode Operation ...................................................................................... 2038
16.6 Application of the ECAP Module ..................................................................................... 2039
16.6.1 Example 1 - Absolute Time-Stamp Operation Rising Edge Trigger .................................... 2039
16.6.2 Example 2 - Absolute Time-Stamp Operation Rising and Falling Edge Trigger ...................... 2042
16.6.3 Example 3 - Time Difference (Delta) Operation Rising Edge Trigger .................................. 2044
16.6.4 Example 4 - Time Difference (Delta) Operation Rising and Falling Edge Trigger .................... 2046
16.7 Application of the APWM Mode ....................................................................................... 2048
16.7.1 Example 1 - Simple PWM Generation (Independent Channel/s) ....................................... 2048
16.8 Registers ................................................................................................................. 2050
16.8.1 eCAP Base Addresses ....................................................................................... 2050
16.8.2 ECAP_REGS Registers ...................................................................................... 2051
17 Enhanced QEP (eQEP) ..................................................................................................... 2068
17.1 Introduction ............................................................................................................... 2069
17.2 Configuring Device Pins ................................................................................................ 2071
17.3 Description ............................................................................................................... 2071
17.3.1 EQEP Inputs ................................................................................................... 2071
List of Figures
2-1. Device Interrupt Architecture ............................................................................................. 90
2-2. Interrupt Propagation Path ................................................................................................ 92
2-3. Missing Clock Detection Logic .......................................................................................... 105
2-4. ERRORSTS Pin Diagram ............................................................................................... 107
2-5. Clocking System .......................................................................................................... 108
2-6. Single-ended 3.3V External Clock ...................................................................................... 109
2-7. External Crystal ........................................................................................................... 110
2-8. External Resonator ....................................................................................................... 110
2-9. AUXCLKIN ................................................................................................................. 110
2-10. CPU-Timers ............................................................................................................... 117
2-11. CPU-Timer Interrupts Signals and Output Signal .................................................................... 118
2-12. CPU Watchdog Timer Module ......................................................................................... 119
2-13. Memory Architecture ..................................................................................................... 125
2-14. Arbitration Scheme on Global Shared Memories ..................................................................... 127
2-15. Arbitration Scheme on Local Shared Memories ...................................................................... 128
2-16. FMC Interface with Core, Bank and Pump ............................................................................ 135
2-17. Flash Prefetch Mode ..................................................................................................... 138
2-18. ECC Logic Inputs and Outputs.......................................................................................... 141
2-19. Flash Pump Semaphore (PUMPREQUEST) States and State Transitions ....................................... 145
2-20. Clock Configuration Semaphore (CLKSEM) State Transitions ..................................................... 145
2-21. Storage of Zone-Select Bits in OTP ................................................................................... 149
2-22. Location of Zone-Select Block Based on Link-Pointer ............................................................... 150
2-23. CSM Password Match Flow (PMF) ..................................................................................... 154
2-24. ECSL Password Match Flow (PMF) .................................................................................... 156
2-25. TIM Register ............................................................................................................... 161
2-26. PRD Register .............................................................................................................. 162
2-27. TCR Register .............................................................................................................. 163
2-28. TPR Register .............................................................................................................. 165
2-29. TPRH Register ............................................................................................................ 166
2-30. PIECTRL Register ........................................................................................................ 169
2-31. PIEACK Register.......................................................................................................... 170
2-32. PIEIER1 Register ......................................................................................................... 171
2-33. PIEIFR1 Register ......................................................................................................... 173
2-34. PIEIER2 Register ......................................................................................................... 175
2-35. PIEIFR2 Register ......................................................................................................... 177
2-36. PIEIER3 Register ......................................................................................................... 179
2-37. PIEIFR3 Register ......................................................................................................... 181
2-38. PIEIER4 Register ......................................................................................................... 183
2-39. PIEIFR4 Register ......................................................................................................... 185
2-40. PIEIER5 Register ......................................................................................................... 187
2-41. PIEIFR5 Register ......................................................................................................... 189
2-42. PIEIER6 Register ......................................................................................................... 191
2-43. PIEIFR6 Register ......................................................................................................... 193
2-44. PIEIER7 Register ......................................................................................................... 195
2-45. PIEIFR7 Register ......................................................................................................... 197
2-46. PIEIER8 Register ......................................................................................................... 199
2-47. PIEIFR8 Register ......................................................................................................... 201
14-30. Up-Down-Count, Dual Edge Asymmetric Waveform, With Independent Modulation on EPWMxA—Active
Low ........................................................................................................................ 1713
14-31. Up-Down-Count, PWM Waveform Generation Utilizing T1 and T2 Events ..................................... 1714
14-32. Dead_Band Submodule ................................................................................................ 1714
14-33. Configuration Options for the Dead-Band Submodule ............................................................. 1717
14-34. Dead-Band Waveforms for Typical Cases (0% < Duty < 100%).................................................. 1719
14-35. PWM Chopper Submodule............................................................................................. 1721
14-36. PWM Chopper Submodule Operational Details ..................................................................... 1722
14-37. Simple PWM Chopper Submodule Waveforms Showing Chopping Action Only ............................... 1722
14-38. PWM Chopper Submodule Waveforms Showing the First Pulse and Subsequent Sustaining Pulses ...... 1723
14-39. PWM Chopper Submodule Waveforms Showing the Pulse Width (Duty Cycle) Control of Sustaining
Pulses ..................................................................................................................... 1724
14-40. Trip-Zone Submodule ................................................................................................... 1725
14-41. Trip-Zone Submodule Mode Control Logic .......................................................................... 1729
14-42. Trip-Zone Submodule Interrupt Logic................................................................................. 1730
14-43. Event-Trigger Submodule .............................................................................................. 1731
14-44. Event-Trigger Submodule Showing Event Inputs and Prescaled Outputs....................................... 1732
14-45. Event-Trigger Interrupt Generator ..................................................................................... 1734
14-46. Event-Trigger SOCA Pulse Generator ............................................................................... 1735
14-47. Event-Trigger SOCB Pulse Generator ............................................................................... 1735
14-48. Digital-Compare Submodule High-Level Block Diagram ........................................................... 1736
14-49. ePWM Trip Input Connectivity ......................................................................................... 1737
14-50. DCAEVT1 Event Triggering ............................................................................................ 1740
14-51. DCAEVT2 Event Triggering ............................................................................................ 1740
14-52. DCBEVT1 Event Triggering ............................................................................................ 1741
14-53. DCBEVT2 Event Triggering ............................................................................................ 1741
14-54. Event Filtering ........................................................................................................... 1742
14-55. Blanking Window Timing Diagram .................................................................................... 1742
14-56. Valley Switching ......................................................................................................... 1744
14-57. EPWM X-BAR ........................................................................................................... 1745
14-58. Simplified ePWM Module............................................................................................... 1746
14-59. EPWM1 Configured as a Typical Master, EPWM2 Configured as a Slave ..................................... 1747
14-60. Control of Four Buck Stages. Here FPWM1≠ FPWM2≠ FPWM3≠ FPWM4 .................................................. 1748
14-61. Buck Waveforms for (Note: Only three bucks shown here) ....................................................... 1749
14-62. Control of Four Buck Stages. (Note: FPWM2 = N x FPWM1) ............................................................ 1750
14-63. Buck Waveforms for (Note: FPWM2 = FPWM1))........................................................................... 1751
14-64. Control of Two Half-H Bridge Stages (FPWM2 = N x FPWM1) .......................................................... 1752
14-65. Half-H Bridge Waveforms for (Note: Here FPWM2 = FPWM1 ) .......................................................... 1753
14-66. 3-Phase Inverter Waveforms (Only One Inverter Shown) ......................................................... 1754
14-67. Configuring Two PWM Modules for Phase Control ................................................................. 1755
14-68. Timing Waveforms Associated With Phase Control Between Two Modules .................................... 1756
14-69. Control of a 3-Phase Interleaved DC/DC Converter ................................................................ 1757
14-70. 3-Phase Interleaved DC/DC Converter Waveforms for ........................................................... 1758
14-71. Controlling a Full-H Bridge Stage (FPWM2 = FPWM1) ................................................................... 1759
14-72. ZVS Full-H Bridge Waveforms ........................................................................................ 1760
14-73. Peak Current Mode Control of a Buck Converter ................................................................... 1760
14-74. Peak Current Mode Control Waveforms for ......................................................................... 1761
14-75. Control of Two Resonant Converter Stages ......................................................................... 1761
14-76. H-Bridge LLC Resonant Converter PWM Waveforms.............................................................. 1762
21-18. Possible Inputs to the Sample Rate Generator and the Polarity Bits ............................................ 2255
21-19. CLKG Synchronization and FSG Generation When GSYNC = 1 and CLKGDV = 1 ........................... 2257
21-20. CLKG Synchronization and FSG Generation When GSYNC = 1 and CLKGDV = 3 ........................... 2258
21-21. Overrun in the McBSP Receiver ...................................................................................... 2260
21-22. Overrun Prevented in the McBSP Receiver ......................................................................... 2261
21-23. Possible Responses to Receive Frame-Synchronization Pulses ................................................. 2261
21-24. An Unexpected Frame-Synchronization Pulse During a McBSP Reception .................................... 2262
21-25. Proper Positioning of Frame-Synchronization Pulses .............................................................. 2263
21-26. Data in the McBSP Transmitter Overwritten and Thus Not Transmitted......................................... 2263
21-27. Underflow During McBSP Transmission ............................................................................. 2264
21-28. Underflow Prevented in the McBSP Transmitter .................................................................... 2265
21-29. Possible Responses to Transmit Frame-Synchronization Pulses ................................................ 2265
21-30. An Unexpected Frame-Synchronization Pulse During a McBSP Transmission ................................ 2266
21-31. Proper Positioning of Frame-Synchronization Pulses .............................................................. 2267
21-32. Alternating Between the Channels of Partition A and the Channels of Partition B ............................. 2269
21-33. Reassigning Channel Blocks Throughout a McBSP Data Transfer .............................................. 2270
21-34. McBSP Data Transfer in the 8-Partition Mode ...................................................................... 2271
21-35. Activity on McBSP Pins for the Possible Values of XMCM ........................................................ 2274
21-36. Typical SPI Interface .................................................................................................... 2275
21-37. SPI Transfer With CLKSTP = 10b (No Clock Delay), CLKXP = 0, and CLKRP = 0 ........................... 2277
21-38. SPI Transfer With CLKSTP = 11b (Clock Delay), CLKXP = 0, CLKRP = 1 ..................................... 2277
21-39. SPI Transfer With CLKSTP = 10b (No Clock Delay), CLKXP = 1, and CLKRP = 0 ........................... 2277
21-40. SPI Transfer With CLKSTP = 11b (Clock Delay), CLKXP = 1, CLKRP = 1 ..................................... 2277
21-41. SPI Interface with McBSP Used as Master .......................................................................... 2279
21-42. SPI Interface With McBSP Used as Slave ........................................................................... 2280
21-43. Unexpected Frame-Synchronization Pulse With (R/X)FIG = 0 .................................................... 2287
21-44. Unexpected Frame-Synchronization Pulse With (R/X)FIG = 1 .................................................... 2287
21-45. Companding Processes for Reception and for Transmission .................................................... 2288
21-46. Range of Programmable Data Delay ................................................................................. 2289
21-47. 2-Bit Data Delay Used to Skip a Framing Bit ........................................................................ 2289
21-48. Data Clocked Externally Using a Rising Edge and Sampled by the McBSP Receiver on a Falling Edge .. 2294
21-49. Frame of Period 16 CLKG Periods and Active Width of 2 CLKG Periods ....................................... 2295
21-50. Data Clocked Externally Using a Rising Edge and Sampled by the McBSP Receiver on a Falling Edge .. 2297
21-51. Unexpected Frame-Synchronization Pulse With (R/X) FIG = 0 ................................................... 2307
21-52. Unexpected Frame-Synchronization Pulse With (R/X) FIG = 1 ................................................... 2307
21-53. Companding Processes for Reception and for Transmission ..................................................... 2308
21-54. μ-Law Transmit Data Companding Format .......................................................................... 2308
21-55. A-Law Transmit Data Companding Format .......................................................................... 2309
21-56. Range of Programmable Data Delay ................................................................................. 2310
21-57. 2-Bit Data Delay Used to Skip a Framing Bit ........................................................................ 2310
21-58. Data Clocked Externally Using a Rising Edge and Sampled by the McBSP Receiver on a Falling Edge .. 2314
21-59. Frame of Period 16 CLKG Periods and Active Width of 2 CLKG Periods ....................................... 2314
21-60. Data Clocked Externally Using a Rising Edge and Sampled by the McBSP Receiver on a Falling Edge .. 2316
21-61. Four 8-Bit Data Words Transferred To/From the McBSP .......................................................... 2320
21-62. One 32-Bit Data Word Transferred To/From the McBSP .......................................................... 2320
21-63. 8-Bit Data Words Transferred at Maximum Packet Frequency ................................................... 2321
21-64. Configuring the Data Stream of as a Continuous 32-Bit Word .................................................... 2321
21-65. Receive Interrupt Generation .......................................................................................... 2322
21-66. Transmit Interrupt Generation ......................................................................................... 2322
23-26. USB Low-Speed Last Transaction to End of Frame Timing Register (USBLSEOF) ........................... 2499
23-27. USB Transmit Functional Address Endpoint n Registers (USBTXFUNCADDR[n]) ............................ 2500
23-28. USB Transmit Hub Address Endpoint n Registers (USBTXHUBADDR[n])...................................... 2501
23-29. USB Transmit Hub Port Endpoint n Registers (USBTXHUBPORT[n]) ........................................... 2502
23-30. USB Receive Functional Address Endpoint n Registers (USBFIFO[n]) ......................................... 2503
23-31. USB Receive Hub Address Endpoint n Registers (USBRXHUBADDR[n]) ...................................... 2504
23-32. USB Transmit Hub Port Endpoint n Registers (USBRXHUBPORT[n]) .......................................... 2505
23-33. USB Maximum Transmit Data Endpoint n Registers (USBTXMAXP[n]) ......................................... 2506
23-34. USB Control and Status Endpoint 0 Low Register (USBCSRL0) in Host Mode ................................ 2507
23-35. USB Control and Status Endpoint 0 Low Register (USBCSRL0) in Device Mode ............................. 2508
23-36. USB Control and Status Endpoint 0 High Register (USBCSRH0) in Host Mode ............................... 2509
23-37. USB Control and Status Endpoint 0 High Register (USBCSRH0) in Device Mode ............................ 2509
23-38. USB Receive Byte Count Endpoint 0 Register (USBCOUNT0)................................................... 2510
23-39. USB Type Endpoint 0 Register (USBTYPE0) ....................................................................... 2510
23-40. USB NAK Limit Register (USBNAKLMT) ............................................................................ 2511
23-41. USB Transmit Control and Status Endpoint n Low Register (USBTXCSRL[n]) in Host Mode ................ 2512
23-42. USB Transmit Control and Status Endpoint n Low Register (USBTXCSRL[n]) in Device Mode ............. 2513
23-43. USB Transmit Control and Status Endpoint n High Register (USBTXCSRH[n]) in Host Mode ............... 2515
23-44. USB Transmit Control and Status Endpoint n High Register (USBTXCSRH[n]) in Device Mode ............ 2516
23-45. USB Maximum Receive Data Endpoint n Registers (USBRXMAXP[n]) ......................................... 2517
23-46. USB Receive Control and Status Endpoint n Low Register (USBCSRL[n]) in Host Mode .................... 2518
23-47. USB Control and Status Endpoint n Low Register (USBCSRL[n]) in Device Mode ............................ 2519
23-48. USB Receive Control and Status Endpoint n High Register (USBCSRH[n]) in Host Mode ................... 2520
23-49. USB Control and Status Endpoint n High Register (USBCSRH[n]) in Device Mode ........................... 2521
23-50. USB Maximum Receive Data Endpoint n Registers (USBRXCOUNT[n]) ....................................... 2522
23-51. USB Host Transmit Configure Type Endpoint n Register (USBTXTYPE[n]) .................................... 2523
23-52. USB Host Transmit Interval Endpoint n Register (USBTXINTERVAL[n]) ....................................... 2524
23-53. USB Host Configure Receive Type Endpoint n Register (USBRXTYPE[n]) .................................... 2525
23-54. USB Host Receive Polling Interval Endpoint n Register (USBRXINTERVAL[n]) ............................... 2526
23-55. USB Request Packet Count in Block Transfer Endpoint n Registers (USBRQPKTCOUNT[n]) .............. 2527
23-56. USB Receive Double Packet Buffer Disable Register (USBRXDPKTBUFDIS) ................................. 2528
23-57. USB Transmit Double Packet Buffer Disable Register (USBTXDPKTBUFDIS) ................................ 2530
23-58. USB External Power Control Register (USBEPC) .................................................................. 2531
23-59. USB External Power Control Raw Interrupt Status Register (USBEPCRIS) .................................... 2533
23-60. USB External Power Control Interrupt Mask Register (USBEPCIM) ............................................. 2534
23-61. USB External Power Control Interrupt Status and Clear Register (USBEPCISC) .............................. 2535
23-62. USB Device RESUME Raw Interrupt Status Register (USBDRRIS) ............................................. 2536
23-63. USB Device RESUME Raw Interrupt Status Register (USBDRRIS) ............................................. 2537
23-64. USB Device RESUME Interrupt Status and Clear Register (USBDRISC)....................................... 2538
23-65. USB General-Purpose Control and Status Register (USBGPCS) ................................................ 2539
23-66. USB DMA Select Register (USBDMASEL) .......................................................................... 2540
24-1. uPP Integration .......................................................................................................... 2543
24-2. Functional Block Diagram .............................................................................................. 2544
24-3. RX in SDR or DDR (non-demux) Mode .............................................................................. 2545
24-4. RX in DDR (demux) Mode ............................................................................................. 2545
24-5. TX in SDR (non-interleave) or DDR (non-demux) Mode ........................................................... 2545
24-6. TX in SDR (interleave) or DDR (demux) Mode ..................................................................... 2545
24-7. IO Output Clock Generation for TX Mode............................................................................ 2546
24-8. IO Input clock for RX Mode ............................................................................................ 2546
List of Tables
1-1. TMU Supported Instructions .............................................................................................. 83
1-2. Viterbi Decode Performance .............................................................................................. 84
1-3. Complex Math Performance .............................................................................................. 84
2-1. Reset Signals ............................................................................................................... 87
2-2. PIE Channel Mapping ..................................................................................................... 95
2-3. CPU Interrupt Vectors ..................................................................................................... 96
2-4. PIE Interrupt Vectors ....................................................................................................... 97
2-5. Access to EALLOW-Protected Registers .............................................................................. 104
2-6. Clock Connections Sorted by Clock Domain .......................................................................... 113
2-7. Clock Connections Sorted by Module Name .......................................................................... 114
2-8. Example Watchdog Key Sequences ................................................................................... 119
2-9. Local Shared RAM........................................................................................................ 126
2-10. Global Shared RAM ...................................................................................................... 126
2-11. Error Handling in Different Scenarios .................................................................................. 131
2-12. Mapping of ECC Bits in Read Data from ECC/Parity Address Map ............................................... 132
2-13. Mapping of Parity Bits in Read Data from ECC/Parity Address Map .............................................. 132
2-14. RAM Status ................................................................................................................ 146
2-15. Security Levels ............................................................................................................ 147
2-16. System Control Base Address Table................................................................................... 159
2-17. CPUTIMER_REGS Registers ........................................................................................... 160
2-18. CPUTIMER_REGS Access Type Codes .............................................................................. 160
2-19. TIM Register Field Descriptions ........................................................................................ 161
2-20. PRD Register Field Descriptions ....................................................................................... 162
2-21. TCR Register Field Descriptions........................................................................................ 163
2-22. TPR Register Field Descriptions ........................................................................................ 165
2-23. TPRH Register Field Descriptions ...................................................................................... 166
2-24. PIE_CTRL_REGS Registers ............................................................................................ 167
2-25. PIE_CTRL_REGS Access Type Codes ............................................................................... 167
2-26. PIECTRL Register Field Descriptions .................................................................................. 169
2-27. PIEACK Register Field Descriptions ................................................................................... 170
2-28. PIEIER1 Register Field Descriptions ................................................................................... 171
2-29. PIEIFR1 Register Field Descriptions ................................................................................... 173
2-30. PIEIER2 Register Field Descriptions ................................................................................... 175
2-31. PIEIFR2 Register Field Descriptions ................................................................................... 177
2-32. PIEIER3 Register Field Descriptions ................................................................................... 179
2-33. PIEIFR3 Register Field Descriptions ................................................................................... 181
2-34. PIEIER4 Register Field Descriptions ................................................................................... 183
2-35. PIEIFR4 Register Field Descriptions ................................................................................... 185
2-36. PIEIER5 Register Field Descriptions ................................................................................... 187
2-37. PIEIFR5 Register Field Descriptions ................................................................................... 189
2-38. PIEIER6 Register Field Descriptions ................................................................................... 191
2-39. PIEIFR6 Register Field Descriptions ................................................................................... 193
2-40. PIEIER7 Register Field Descriptions ................................................................................... 195
2-41. PIEIFR7 Register Field Descriptions ................................................................................... 197
2-42. PIEIER8 Register Field Descriptions ................................................................................... 199
2-43. PIEIFR8 Register Field Descriptions ................................................................................... 201
2-44. PIEIER9 Register Field Descriptions ................................................................................... 203
4-24. Active Destination Begin and Current Address Pointer Registers (SRC_ADDR/DST_ADDR) Field
Descriptions ............................................................................................................... 658
5-1. Configuration Options .................................................................................................... 664
5-2. Write Followed by Read - Read Occurs First ........................................................................ 673
5-3. Write Followed by Read - Write Occurs First ........................................................................ 673
5-4. ADC to CLA Early Interrupt Response ................................................................................ 675
5-5. Operand Nomenclature .................................................................................................. 677
5-6. INSTRUCTION dest, source1, source2 Short Description .......................................................... 678
5-7. Addressing Modes ........................................................................................................ 679
5-8. Shift Field Encoding ...................................................................................................... 680
5-9. Operand Encoding ........................................................................................................ 680
5-10. Condition Field Encoding ................................................................................................ 680
5-11. General Instructions ...................................................................................................... 681
5-12. Pipeline Activity For MBCNDD, Branch Not Taken .................................................................. 696
5-13. Pipeline Activity For MBCNDD, Branch Taken ....................................................................... 696
5-14. Pipeline Activity For MCCNDD, Call Not Taken ..................................................................... 702
5-15. Pipeline Activity For MCCNDD, Call Taken .......................................................................... 702
5-16. Pipeline Activity For MMOV16 MARx, MRa , #16I ................................................................... 734
5-17. Pipeline Activity For MMOV16 MAR0/MAR1, mem16 ............................................................... 737
5-18. Pipeline Activity For MMOVI16 MAR0/MAR1, #16I .................................................................. 751
5-19. Pipeline Activity For MRCNDD, Return Not Taken .................................................................. 773
5-20. Pipeline Activity For MRCNDD, Return Taken ....................................................................... 773
5-21. Pipeline Activity For MSTOP ............................................................................................ 777
5-22. CLA Base Address Table ................................................................................................ 792
5-23. CLA_REGS Registers .................................................................................................... 793
5-24. CLA_REGS Access Type Codes ....................................................................................... 793
5-25. MVECT1 Register Field Descriptions .................................................................................. 795
5-26. MVECT2 Register Field Descriptions .................................................................................. 796
5-27. MVECT3 Register Field Descriptions .................................................................................. 797
5-28. MVECT4 Register Field Descriptions .................................................................................. 798
5-29. MVECT5 Register Field Descriptions .................................................................................. 799
5-30. MVECT6 Register Field Descriptions .................................................................................. 800
5-31. MVECT7 Register Field Descriptions .................................................................................. 801
5-32. MVECT8 Register Field Descriptions .................................................................................. 802
5-33. MCTL Register Field Descriptions ...................................................................................... 803
5-34. MIFR Register Field Descriptions....................................................................................... 804
5-35. MIOVF Register Field Descriptions..................................................................................... 806
5-36. MIFRC Register Field Descriptions..................................................................................... 808
5-37. MICLR Register Field Descriptions ..................................................................................... 810
5-38. MICLROVF Register Field Descriptions ............................................................................... 812
5-39. MIER Register Field Descriptions ...................................................................................... 814
5-40. MIRUN Register Field Descriptions .................................................................................... 816
5-41. _MPC Register Field Descriptions ...................................................................................... 818
5-42. _MAR0 Register Field Descriptions .................................................................................... 819
5-43. _MAR1 Register Field Descriptions .................................................................................... 820
5-44. _MSTF Register Field Descriptions .................................................................................... 821
5-45. _MR0 Register Field Descriptions ...................................................................................... 824
5-46. _MR1 Register Field Descriptions ...................................................................................... 825
5-47. _MR2 Register Field Descriptions ...................................................................................... 826
21-68. Register Bit Used to Set Transmit Clock Polarity ................................................................... 2315
21-69. McBSP Emulation Modes Selectable with FREE and SOFT Bits of SPCR2.................................... 2317
21-70. Reset State of Each McBSP Pin ...................................................................................... 2317
21-71. Receive Interrupt Sources and Signals .............................................................................. 2322
21-72. Transmit Interrupt Sources and Signals .............................................................................. 2322
21-73. Error Flags ............................................................................................................... 2323
21-74. McBSP Mode Selection ................................................................................................ 2323
21-75. McBSP Base Address Table........................................................................................... 2325
21-76. McBSP Register Summary............................................................................................. 2325
21-77. Serial Port Control 1 Register (SPCR1) Field Descriptions ....................................................... 2327
21-78. Serial Port Control 2 Register (SPCR2) Field Descriptions........................................................ 2330
21-79. Receive Control Register 1 (RCR1) Field Descriptions ............................................................ 2332
21-80. Frame Length Formula for Receive Control 1 Register (RCR1) .................................................. 2333
21-81. Receive Control Register 2 (RCR2) Field Descriptions ............................................................ 2333
21-82. Frame Length Formula for Receive Control 2 Register (RCR2) .................................................. 2334
21-83. Transmit Control 1 Register (XCR1) Field Descriptions ........................................................... 2335
21-84. Frame Length Formula for Transmit Control 1 Register (XCR1) ................................................. 2335
21-85. Transmit Control 2 Register (XCR2) Field Descriptions ........................................................... 2336
21-86. Frame Length Formula for Transmit Control 2 Register (XCR2) ................................................. 2337
21-87. Sample Rate Generator 1 Register (SRGR1) Field Descriptions ................................................. 2338
21-88. Sample Rate Generator 2 Register (SRGR2) Field Descriptions ................................................. 2339
21-89. Multichannel Control 1 Register (MCR1) Field Descriptions ...................................................... 2340
21-90. Multichannel Control 2 Register (MCR2) Field Descriptions ...................................................... 2342
21-91. Pin Control Register (PCR) Field Descriptions ...................................................................... 2344
21-92. Pin Configuration ....................................................................................................... 2346
21-93. Receive Channel Enable Registers (RCERA...RCERH) Field Descriptions..................................... 2346
21-94. Use of the Receive Channel Enable Registers ..................................................................... 2347
21-95. Transmit Channel Enable Registers (XCERA...XCERH) Field Descriptions .................................... 2348
21-96. Use of the Transmit Channel Enable Registers .................................................................... 2349
21-97. McBSP Interrupt Enable Register (MFFINT) Field Descriptions .................................................. 2350
22-1. CAN Register Access From Software ................................................................................ 2354
22-2. CAN Register Access From CCS ..................................................................................... 2355
22-3. PIE Nomenclature for Interrupts ....................................................................................... 2361
22-4. Programmable Ranges Required by CAN Protocol ................................................................ 2369
22-5. Message Object Field Descriptions ................................................................................... 2378
22-6. Message RAM Addressing in Debug Mode ......................................................................... 2381
22-7. CAN Base Addresses Table ........................................................................................... 2383
22-8. CAN_REGS Registers .................................................................................................. 2384
22-9. CAN_REGS Access Type Codes ..................................................................................... 2385
22-10. CAN_CTL Register Field Descriptions ............................................................................... 2386
22-11. CAN_ES Register Field Descriptions ................................................................................. 2389
22-12. CAN_ERRC Register Field Descriptions ............................................................................. 2391
22-13. CAN_BTR Register Field Descriptions ............................................................................... 2392
22-14. CAN_INT Register Field Descriptions ................................................................................ 2394
22-15. CAN_TEST Register Field Descriptions.............................................................................. 2395
22-16. CAN_PERR Register Field Descriptions ............................................................................. 2397
22-17. CAN_RAM_INIT Register Field Descriptions ........................................................................ 2398
22-18. CAN_GLB_INT_EN Register Field Descriptions .................................................................... 2399
22-19. CAN_GLB_INT_FLG Register Field Descriptions .................................................................. 2400
23-20. USB Device Control Register (USBDEVCTL) Field Descriptions ................................................. 2492
23-21. USB Transmit Dynamic FIFO Sizing Register (USBTXFIFOSZ) Field Descriptions ........................... 2494
23-22. USB Receive Dynamic FIFO Sizing Register (USBRXFIFOSZ) Field Descriptions ............................ 2495
23-23. USB Transmit FIFO Start Address Register (USBTXFIFOADDR) Field Descriptions ......................... 2496
23-24. USB Receive FIFO Start Address Register (USBRXFIFOADDR) Field Descriptions .......................... 2497
23-25. USB Connect Timing Register (USBCONTIM) Field Descriptions................................................ 2498
23-26. USB Full-Speed Last Transaction to End of Frame Timing Register (USBFSEOF) Field Descriptions ..... 2499
23-27. USB Low-Speed Last Transaction to End of Frame Timing Register (USBLSEOF) Field Descriptions..... 2499
23-28. USB Transmit Functional Address Endpoint n Registers (USBTXFUNCADDR[n]) Field Descriptions ...... 2500
23-29. USB Transmit Hub Address Endpoint n Registers(USBTXHUBADDR[n]) Field Descriptions ................ 2501
23-30. USB Transmit Hub Port Endpoint n Registers(USBTXHUBPORT[n]) Field Descriptions ..................... 2502
23-31. USB Recieve Functional Address Endpoint n Registers(USBFIFO[n]) Field Descriptions .................... 2503
23-32. USB Receive Hub Address Endpoint n Registers(USBRXHUBADDR[n]) Field Descriptions ................ 2504
23-33. USB Transmit Hub Port Endpoint n Registers(USBRXHUBPORT[n]) Field Descriptions ..................... 2505
23-34. USB Maximum Transmit Data Endpoint n Registers(USBTXMAXP[n]) Field Descriptions ................... 2506
23-35. USB Control and Status Endpoint 0 Low Register(USBCSRL0) in Host Mode Field Descriptions .......... 2507
23-36. USB Control and Status Endpoint 0 Low Register (USBCSRL0) in Device Mode Field Descriptions ....... 2508
23-37. USB Control and Status Endpoint 0 High Register (USBCSRH0) in Host Mode Field Descriptions......... 2509
23-38. USB Control and Status Endpoint 0 High Register (USBCSRH0) in Device Mode Field Descriptions ...... 2509
23-39. USB Receive Byte Count Endpoint 0 Register (USBCOUNT0) Field Descriptions ............................ 2510
23-40. USB Type Endpoint 0 Register (USBTYPE0) Field Descriptions ................................................. 2510
23-41. USB NAK Limit Register (USBNAKLMT) Field Descriptions ...................................................... 2511
23-42. USB Transmit Control and Status Endpoint n Low Register (USBTXCSRL[n]) in Host Mode Field
Descriptions .............................................................................................................. 2512
23-43. USB Transmit Control and Status Endpoint n Low Register (USBTXCSRL[n]) in Device Mode Field
Descriptions .............................................................................................................. 2513
23-44. USB Transmit Control and Status Endpoint n High Register (USBTXCSRH[n]) in Host Mode Field
Descriptions .............................................................................................................. 2515
23-45. USB Transmit Control and Status Endpoint n High Register (USBTXCSRH[n]) in Device Mode Field
Descriptions .............................................................................................................. 2516
23-46. USB Maximum Receive Data Endpoint n Registers (USBTXMAXP[n]) Field Descriptions ................... 2517
23-47. USB Control and Status Endpoint n Low Register(USBCSRL[n]) in Host Mode Field Descriptions ......... 2518
23-48. USB Control and Status Endpoint 0 Low Register(USBCSRL[n]) in Device Mode Field Descriptions ...... 2519
23-49. USB Control and Status Endpoint n High Register (USBCSRH[n]) in Host Mode Field Descriptions ....... 2520
23-50. USB Control and Status Endpoint 0 High Register(USBCSRH[n]) in Device Mode Field Descriptions ..... 2521
23-51. USB Maximum Receive Data Endpoint n Registers (USBRXCOUNT[n]) Field Descriptions ................. 2522
23-52. USB Host Transmit Configure Type Endpoint n Register(USBTXTYPE[n]) Field Descriptions .............. 2523
23-53. USBTXINTERVAL[n] Frame Numbers ............................................................................... 2524
23-54. USB Host Transmit Interval Endpoint n Register(USBTXINTERVAL[n]) Field Descriptions .................. 2524
23-55. USB Host Configure Receive Type Endpoint n Register(USBRXTYPE[n]) Field Descriptions ............... 2525
23-56. USBRXINTERVAL[n] Frame Numbers ............................................................................... 2526
23-57. USB Host Receive Polling Interval Endpoint n Register(USBRXINTERVAL[n]) Field Descriptions.......... 2526
23-58. USB Request Packet Count in Block Transfer Endpoint n Registers (USBRQPKTCOUNT[n]) Field
Descriptions .............................................................................................................. 2527
23-59. USB Receive Double Packet Buffer Disable Register (USBRXDPKTBUFDIS) Field Descriptions .......... 2528
23-60. USB Transmit Double Packet Buffer Disable Register (USBTXDPKTBUFDIS) Field Descriptions .......... 2530
23-61. USB External Power Control Register (USBEPC) Field Descriptions ............................................ 2531
23-62. USB External Power Control Raw Interrupt Status Register (USBEPCRIS) Field Descriptions .............. 2533
23-63. USB External Power Control Interrupt Mask Register (USBEPCIM) Field Descriptions....................... 2534
23-64. USB External Power Control Interrupt Status and Clear Register (USBEPCISC) Field Descriptions ....... 2535
23-65. USB Device RESUME Raw Interrupt Status Register (USBDRRIS) Field Descriptions....................... 2536
23-66. USB Device RESUME Raw Interrupt Status Register (USBDRRIS) Field Descriptions....................... 2537
23-67. USB Device RESUME Interrupt Status and Clear Register (USBDRISC) Field Descriptions ................ 2538
23-68. USB General-Purpose Control and Status Register (USBGPCS) Field Descriptions .......................... 2539
23-69. USB DMA Select Register (USBDMASEL) Field Descriptions .................................................... 2540
24-1. uPP Signal Description ................................................................................................. 2547
24-2. CPU/CLA/uPP-DMA Address Map.................................................................................... 2554
24-3. CPU/CLA/uPP-DMA Address Map.................................................................................... 2555
24-4. uPP Parameters Useful for System Tuning .......................................................................... 2556
24-5. UPP Base Address Table .............................................................................................. 2557
24-6. UPP_REGS Registers .................................................................................................. 2558
24-7. UPP_REGS Access Type Codes ..................................................................................... 2558
24-8. PID Register Field Descriptions ....................................................................................... 2560
24-9. PERCTL Register Field Descriptions ................................................................................. 2561
24-10. CHCTL Register Field Descriptions ................................................................................... 2563
24-11. IFCFG Register Field Descriptions.................................................................................... 2564
24-12. IFIVAL Register Field Descriptions ................................................................................... 2566
24-13. THCFG Register Field Descriptions .................................................................................. 2567
24-14. RAWINTST Register Field Descriptions.............................................................................. 2569
24-15. ENINTST Register Field Descriptions ................................................................................ 2571
24-16. INTENSET Register Field Descriptions .............................................................................. 2573
24-17. INTENCLR Register Field Descriptions .............................................................................. 2575
24-18. CHIDESC0 Register Field Descriptions .............................................................................. 2577
24-19. CHIDESC1 Register Field Descriptions .............................................................................. 2578
24-20. CHIDESC2 Register Field Descriptions .............................................................................. 2579
24-21. CHIST0 Register Field Descriptions .................................................................................. 2580
24-22. CHIST1 Register Field Descriptions .................................................................................. 2581
24-23. CHIST2 Register Field Descriptions .................................................................................. 2582
24-24. CHQDESC0 Register Field Descriptions ............................................................................. 2583
24-25. CHQDESC1 Register Field Descriptions ............................................................................. 2584
24-26. CHQDESC2 Register Field Descriptions ............................................................................. 2585
24-27. CHQST0 Register Field Descriptions ................................................................................. 2586
24-28. CHQST1 Register Field Descriptions ................................................................................. 2587
24-29. CHQST2 Register Field Descriptions ................................................................................. 2588
24-30. GINTEN Register Field Descriptions ................................................................................. 2589
24-31. GINTFLG Register Field Descriptions ................................................................................ 2590
24-32. GINTCLR Register Field Descriptions ................................................................................ 2591
24-33. DLYCTL Register Field Descriptions ................................................................................. 2592
25-1. Configuration for EMIF1 and EMIF2 Modules ....................................................................... 2594
25-2. EMIF Pins Used to Access Both SDRAM and Asynchronous Memories ........................................ 2597
25-3. EMIF Pins Specific to SDRAM ........................................................................................ 2597
25-4. EMIF Pins Specific to Asynchronous Memory ...................................................................... 2598
25-5. EMIF SDRAM Commands ............................................................................................. 2598
25-6. Truth Table for SDRAM Commands .................................................................................. 2599
25-7. 16-bit EMIF Address Pin Connections................................................................................ 2600
25-8. Description of the SDRAM Configuration Register (SDRAM_CR) ................................................ 2602
25-9. Description of the SDRAM Refresh Control Register (SDRAM_RCR) ........................................... 2602
25-10. Description of the SDRAM Timing Register (SDRAM_TR) ........................................................ 2603
25-11. Description of the SDRAM Self Refresh Exit Timing Register (SDR_EXT_TMNG) ............................ 2603
Notational Conventions
This document uses the following conventions.
• Hexadecimal numbers may be shown with the suffix h or the prefix 0x. For example, the following
number is 40 hexadecimal (decimal 64): 40h or 0x40.
• Registers in this document are shown in figures and described in tables.
– Each register figure shows a rectangle divided into fields that represent the fields of the register.
Each field is labeled with its bit name, its beginning and ending bit numbers above, and its
read/write properties with default reset value below. A legend explains the notation used for the
properties.
– Reserved bits in a register figure can have one of multiple meanings:
• Not implemented on the device
• Reserved for future device expansion
• Reserved for TI testing
• Reserved configurations of the device that are not supported
– Writing nondefault values to the Reserved bits could cause unexpected behavior and should be
avoided.
Glossary
TI Glossary — This glossary lists and explains terms, acronyms, and definitions.
C28x Processor
This chapter contains a modified description of the C28x Processor and provides links to access their
respective references guides.
1.1 Overview
The CPU is a 32-bit fixed-point processor. This device draws from the best features of digital signal
processing; reduced instruction set computing (RISC); and microcontroller architectures, firmware, and
tool sets.
The CPU features include a modified Harvard architecture and circular addressing. The RISC features are
single-cycle instruction execution, register-to-register operations, and modified Harvard architecture. The
microcontroller features include ease of use through an intuitive instruction set, byte packing and
unpacking, and bit manipulation. The modified Harvard architecture of the CPU enables instruction and
data fetches to be performed in parallel. The CPU can read instructions and data while it writes data
simultaneously to maintain the single-cycle instruction operation across the pipeline. The CPU does this
over six separate address/data buses.
For more information on CPU architecture and instruction set, see the TMS320C28x CPU and Instruction
Set Reference Guide (literature number SPRU430). For more information on the C28x Floating Point Unit
(FPU), Trigonometric Math Unit, and Viterbi, Complex Math, and CRC Unit II (VCU-II) instruction sets, see
the TMS320C28x Extended Instruction Sets Technical Reference Guide (literature number SPRUHS1). A
brief overview of the FPU, TMU, and VCU-II are provided here.
No changes have been made to existing instructions, pipeline or memory bus architecture. All TMU
instructions use the existing FPU register set (R0H to R7H) to carry out their operations.
NOTE: Only the CRC-related VCU instructions will be supported in future devices. FFT algorithms
are available for the C28x+FPU.
System Control
This chapter explains system control and interrupts found on this MCU. The system control module
configures and manages the overall operation of the device and provides information about the device
status. Configurable features in system control include reset control, NMI operation, power control, clock
control, and low-power modes.
2.1 Introduction
On this device, the CPU1 subsystem acts as a master, and by default (upon reset), it owns all the
configuration and control. Through software running on CPU1, peripherals and I/Os can be configured to
be accessible by the CPU2 subsystem and the configuration so chosen could be locked.
The PLL clock configuration is also owned by the CPU1 subsystem by default, but a clock control
semaphore is provided by which CPU2 can grab access to the clock configuration registers.
Each CPU has its own NMI module to handle different exceptions during run time. If the NMI was on
CPU1, any NMI exception that is unhandled before the NMI Watchdog (NMIWD) timer expiration will reset
the entire device. If the NMI was on the CPU2 subsystem, then the CPU2 subsystem alone will be reset,
in which case the CPU1 subsystem will be informed by another NMI that the CPU2 subsystem was reset
because of NMIWD timer expiration.
Each CPU subsystem has its own watchdog timer module for software to use. Watchdog timer expiration
on CPU2 will reset the CPU2 subsystem alone when configured to generate a reset, but watchdog timer
expiration on CPU1 will reset the entire device.
Except for a CPU2 standalone internal reset such as CPU2.NMIWD or CPU2.WD each time the device is
reset, the CPU2 subsystem will be held under reset until the CPU1 subsystem brings it out of reset. This
is done by the boot ROM software running on the CPU1 core.
The register space of the device system control module is divided into three categories and will be
explained further in this chapter. They are:
1. System Control Device Configuration Registers (DEV_CFG_REGS). These registers are mapped to
CPU1 only. The base address of these registers on the CPU1 address space begins at 0x5D000.
2. System Control Clock Configuration Registers (CLK_CFG_REGS). These registers are mapped to
both CPU1 and CPU2 address space but access control is based on a Clock Control Semaphore
register. The base address of these registers on both the CPU subsystems begins at 0x5D200.
3. System control CPU Subsystem Registers (CPU_SYS_REGS). These registers are mapped to both
the CPU subsystems. The base address of these registers on both the CPU subsystems begins at
0x5D300.
This chapter explains the system control module on both the CPU subsystems.
2.3 Resets
This section explains the types and effects of the different resets on this device.
CPU1
INPUTXBAR4 CPU1.XINT1 Control
GPIO0 CPU1. INT1
GPIO1 INPUTXBAR5 CPU1.XINT2 Control to
Input ePIE
... INPUTXBAR6 CPU1.XINT3 Control INT12
... X-BAR CPU1.XINT4 Control
INPUTXBAR13
GPIOx
INPUTXBAR14 CPU1.XINT5 Control
CPU1.TINT1
CPU1.TIMER1 INT13
CPU1.TINT2
CPU1.TIMER2 INT14
IPC
4 Interrupts
Peripherals
CPU1.NMIWD NMI
CPU2
CPU2.XINT1 Control
CPU2.XINT2 Control INT1
CPU2.XINT3 Control CPU2 to
ePIE INT12
CPU2.XINT4 Control
CPU2.XINT5 Control
CPU2.TINT1
CPU2 .LPMINT CPU2.TIMER1 INT13
LPM Logic CPU2.W AKEINT
CPU2.TINT2
CPU2.WD CPU2.TIMER2 INT14
CPU2.W DINT
CPU2.TINT0
CPU2.TIMER0
PIEIERx.2
Peripheral 0 Set
PIEIFRx.2 1 PIEACK.x IER.x ST1.INTM
Interrupt
Latch 1 0 1
CPU
B 0 IFR.x 1 0
Interrupt
Latch
Logic
PIEIERx.16
0
Peripheral
PIEIFRx.16 1
Interrupt
Latch
P
When a peripheral generates an interrupt (on PIE group x, channel y), it triggers the following sequence of
events:
1. The interrupt is latched in PIEIFRx.y.
2. If PIEIERx.y is set, the interrupt propagates.
3. If PIEACK.x is clear, the interrupt propagates and PIEACK.x is set.
4. The interrupt is latched in IFR.x.
5. If IER.x is set, the interrupt propagates.
6. If INTM is clear, the CPU receives the interrupt.
7. Any instructions in the D2 or later stage of the pipeline are run to completion. Instructions in earlier
stages are flushed.
8. The CPU saves its context on the stack.
9. IFR.x and IER.x are cleared. INTM is set. EALLOW is cleared.
10. The CPU fetches the ISR vector from the PIE. PIEIFRx.y is cleared.
11. The CPU branches to the ISR.
The interrupt latency is the time between PIEIFRx.y latching the interrupt and the first ISR instruction
entering the execution stage of the CPU pipeline. The minimum interrupt latency is 14 SYSCLK cycles.
Wait states on the ISR or stack memories will add to the latency. External interrupts add a minimum of two
SYSCLK cycles for GPIO synchronization plus extra time for input qualification (if used). Loops created
using the C28x RPT instruction cannot be interrupted.
CPU Suspended When the CPU is suspended, the NMI watchdog counter will
be suspended.
Run-Free Mode When the CPU is placed in run-free mode, the NMI watchdog
counter will resume operation as normal.
Real-Time Single-Step Mode When the CPU is in real-time single-step mode, the NMI
watchdog counter will be suspended. The counter remains
suspended even within real-time interrupts.
Real-Time Run-Free Mode When the CPU is in real-time run-free mode, the NMI
watchdog counter operates as normal.
NOTE: A RAM fetch access violation will trigger an ITRAP in addition to the normal peripheral
interrupt for RAM access violations. The CPU will handle the ITRAP first.
At reset, the EALLOW bit is cleared, enabling EALLOW protection. While protected, all writes to protected
registers by the CPU are ignored and only CPU reads, JTAG reads, and JTAG writes are allowed. If this
bit is set, by executing the EALLOW instruction, the CPU is allowed to write freely to protected registers.
After modifying registers, they can once again be protected by executing the EDIS instruction to clear the
EALLOW bit.
CLKSRCCTL1.OSCCLRSRCSEL /1,
Switch
SYSPLL /2,
Ckt
/4
Mux
PLLRAWCLK ..
(glitch- PLLSYSCLK
/124
PLL Locking free)
/126
Registers Control
Ckt
Clock Dividers
2. Hardware also generates EPWM Trip signals which will trip the PWM outputs using TRIPIN15.
3. An NMI to the other CPU is sent if the current mismatch is during a vector fetch. For example, on an
NMI vector fetch error for CPU2, an NMI is also fired to CPU1.NMIWD.
If there is no mismatch, the correct vector is jammed onto the C28 program control.
2.6.5 NMIWDs
Each CPU has user-programmable NMIWD period registers, in which users can set a limit on how much
time they want to allocate for the device to acknowledge the NMI. If the NMI is not acknowledged, it will
cause a device reset.
CPU1.NMIWD.NMISHDFLG.Bit-0
CPU1.NMIWD.NMISHDFLG.Bit-1
CPU1.NMIWD.NMISHDFLG.Bit-15
CPU2.NMIWD.NMISHDFLG.Bit-0
CPU2.NMIWD.NMISHDFLG.Bit-1
CPU2.NMIWD.NMISHDFLG.Bit-15
2.7 Clocking
This section explains the clock sources and clock domains on this device, and how to configure them for
application use. Figure 2-5 provides an overview of the device's clocking system.
CPU1.PCLKCRx CPUSELx
PERx.SYSCLK To peripherals
CPU2.PCLKCRx
CPU2.PCLKCRx
PLLSYSCLK /1
EPWMCLK To ePWMs
/2
CPU2.PCLKCRx
HRPWM
CPU1.PCLKCRx
CPUSELx
CLKSRCCTL2
AUXCLK
AUXOSCCLK AUXPLLCLK To USB bit clock
Divider
Auxiliary PLL AUXPLLRAWCLK
Note: The default/2 divider for ePWMs and EMIFs is not shown.
VDDOSC X1 VSSOSC X2
3.3V NC
3.3V
Clk
VDD OUT
GND
3.3V Oscillator
• An external crystal. The crystal should be connected across X1 and X2 with its load capacitors
connected to VSSOSC as shown in Figure 2-7.
VDDOSC X1 VSSOSC X2
3.3V
Crystal
RD CL2 CL1
• An external resonator. The resonator should be connected across X1 and X2 with its ground
connected to VSSOSC as shown in Figure 2-8.
VDDOSC X1 VSSOSC X2
3.3V
Resonator
2.7.4 XCLKOUT
It is sometimes necessary to observe a clock directly for debug and testing purposes. The external clock
output (XCLKOUT) feature supports this by connecting a clock to an external pin, GPIO73. The available
clock sources are PLLSYSCLK, PLLRAWCLK, CPU1.SYSCLK, CPU2.SYSCLK, AUXPLLRAWCLK,
INTOSC1, and INTOSC2.
To use XCLKOUT, first select the clock source via the CLKSRCCTL3 register. Next, select the desired
output divider via the XCLKOUTDIVSEL register. Finally, connect GPIO73 to mux channel 3 using the
GPIO configuration registers.
If CAN or USB is required, an external clock source with a precise frequency must be used as a reference
clock. Otherwise, it may be possible to use only INTOSC2 and avoid the need for more external
components.
NOTE: The system clock frequency (PLLSYSCLK) may not exceed the limit specified in the
datasheet. This limit does not allow for oscillator tolerance.
The clock source and PLL configuration registers are shared between the two CPUs. Register access is
controlled via a semaphore, which is described in the Inter-Processor Communication chapter.
NOTE: If the CPU2 changes the OSCCLK source, it will not automatically bypass the PLL. The
CPU2 must manually bypass the PLL first by writing a 0 to SYSPLLCTL1.PLLCLKEN.
NOTE: If the AUXOSCCLK source is changed on the same AUXOSCCLK cycle as the multiplier, the
PLL will be disabled but the AUXPLLMULT register will show the written value. This can
happen when the system PLL is enabled before configuring the auxiliary PLL (CPUCLK >>
AUXOSCCLK). To avoid this issue, wait two AUXOSCCLK cycles between changing the
clock source and writing to AUXPLLMULT.
CLKSRCCTL1.OSCCLKSRCSEL = 0x1
SYSPLLMULT.IMULT = 26 (0x1A)
SYSPLLMULT.FMULT = .50 (0x2)
SYSCLKDIVSEL.PLLSYSCLKDIV = 4 (0x2)
SYSPLLCTL1.PLLCLKEN = 1
PERCLKDIVSEL.EPWMCLKDIV = 1 (0x0)
PERCLKDIVSEL.EMIF1CLKDIV = 1 (0x0)
PERCLKDIVSEL.EMIF2CLKDIV = 1 (0x0)
CLKSRCCTL2.AUXOSCCLKSRCSEL = 0x1
AUXPLLMULT.IMULT = 8 (0x08)
AUXPLLMULT.FMULT = .00 (0x0)
AUXCLKDIVSEL.AUXPLLDIV = 2 (0x1)
AUXPLLCTL1.PLLCLKEN = 1
This gives a PLLRAWCLK of 397.5 MHz and an AUXPLLRAWCLK of 120 MHz, both of which are in the
acceptable range. The CPU frequency is 99.375 MHz. Crystals have tight frequency tolerances, which
should keep the system clock from exceeding 100 MHz. The USB frequency is exactly 60 MHz. Since the
CPU frequency is less than 100 MHz, the ePWM and EMIF clock dividers can be set to /1.
Example 2: Using INTOSC2 (10 MHz) as a reference, generate a CPU frequency of 200 MHz - 3%:
CLKSRCCTL1.OSCCLKSRCSEL = 0x0
SYSPLLMULT.IMULT = 38 (0x26)
SYSPLLMULT.FMULT = .75 (0x3)
SYSCLKDIVSEL.PLLSYSCLKDIV = 2 (0x1)
SYSPLLCTL1.PLLCLKEN = 1
Reset
Timer reload
Borrow
TINT
INT1 TINT0
to PIE TIMER0
INT12
28x
CPU
TINT1
INT13 TIMER1
TINT2
INT14 TIMER2
A The timer registers are connected to the memory bus of the C28x processor.
B The CPU Timers are synchronized to SYSCLKOUT.
WDCR(WDPS(2:0)) WDCR(WDDIS)
WDCNTR(7:0)
WDWCR(MIN(7:0))
WDKEY(7:0) Watchdog
Watchdog Window
Good Key Out of Window
Key Detector Detector
Bad Key
55 + AA
WDRSTn
Generate
512-WDCLK
WDINTn Watchdog Timeout
Output Pulse
SCSR(WDENINT)
Step 3 in Table 2-8 is the first action that enables the WDCNTR to be reset. The WDCNTR is not actually
reset until step 6. Step 8 again re-enables the WDCNTR to be reset and step 9 resets the WDCNTR. Step
10 again re-enables the WDCNTR to be reset. Writing the wrong key value to the WDKEY in step 11
causes no action, however the WDCNTR is no longer enabled to be reset and the 0xAA in step 12 now
has no effect.
If the watchdog is configured to reset the device, then a WDCR overflow or writing the incorrect value to
the WDCR[WDCHK] bits will reset the device and set the watchdog flag (WDRSn) in the reset cause
register (RESC). After a reset, the program can read the state of this flag to determine whether the reset
was caused by the watchdog. After doing this, the program should clear WDRSn to allow subsequent
watchdog resets to be detected. Watchdog resets are not prevented when the flag is set.
CPU Suspended: When the CPU is suspended, the watchdog clock (WDCLK) is suspended
Run-Free Mode: When the CPU is placed in run-free mode, then the watchdog module
resumes operation as normal.
Real-Time Single-Step When the CPU is in real-time single-step mode, the watchdog clock
Mode: (WDCLK) is suspended. The watchdog remains suspended even within real-
time interrupts.
Real-Time Run-Free When the CPU is in real-time run-free mode, the watchdog operates as
Mode: normal.
2.10.1 IDLE
IDLE is a standard feature of the C28x CPU. In this mode, the CPU clock is gated while all peripheral
clocks are left running. IDLE can thus be used to conserve power while a CPU is waiting for peripheral
events. When one CPU is in IDLE, there is no effect on the other CPU subsystem.
Any enabled interrupt will wake the CPU up from IDLE mode.
To enter IDLE mode, set LPMCR.LPM to 0x0 and execute the IDLE instruction.
2.10.2 STANDBY
STANDBY is a more aggressive low-power mode that gates both the CPU clock and any peripheral clocks
derived from the CPU's SYSCLK. The watchdog however, is left active. Like IDLE, this mode affects only
one CPU subsystem. The other CPU subsystem and all of its peripherals are unaffected. STANDBY is
best suited for an application where the wake-up signal will come from an external system (or CPU
subsystem) rather than a peripheral input.
IPC interrupt 1 (flag 0), an NMI fired to the other CPU, or (optionally) a watchdog interrupt, will wake the
CPU subsystem up from STANDBY mode. Any of GPIO0-63 can also be configured to wake up the
subsystem when they are driven active low. Upon wakeup, the CPU receives a WAKEINT interrupt, even
if it was woken by an IPCINT1 signal.
To enter STANDBY mode:
1. Set LPMCR.LPM to 0x1.
2. Enable the WAKEINT interrupt in the PIE.
3. For watchdog interrupt wakeup, set LPMCR.WDINTE to 1 and configure the watchdog to generate
interrupts.
4. For GPIO wakeup, set GPIOLPMSEL0 and GPIOLPMSEL1 to connect the chosen GPIOs to the LPM
module, and set LPMCR.QUALSTDBY to select the number of OSCCLK cycles for input qualification.
5. Execute the IDLE instruction to enter STANDBY.
To wake up from Standby mode:
1. Configure the desired GPIO to trigger the wakeup.
2. Drive the selected GPIO signal low; it must remain low for the number of OSCCLK cycles specified in
the QUALSTDBY bits in the LPMCR register. If the signal is sampled high during this period, the count
restarts.
At the end of the qualification period, the PLL enables the CLKIN to the CPU and the WAKEINT interrupt
is latched in the PIE block. The WAKEINT interrupt can also triggered by IPCINT1 sent from the other
CPU and a watchdog interrupt.
The CPU is now out of STANDBY mode and can resume normal execution.
If CPU2 is in STANDBY mode, writing a 1 to the RESET bit of the CPU2RESCTL register will have no
effect. CPU2 may be reset by any Chip-level reset (POR, XRSn, CPU1.WDRSn, or CPU1.NMIWDRSn) or
HIBRESETn. Alternately CPU2 may be woken up by any configured wake-up event.
If CPU2 is in STANDBY mode and the debugger is connected, executing a debug reset on CPU2 will
have no effect. In order to wake the CPU2 with the debugger, Click Run, Single Step, or Step over in the
Debug toolbar. CCS will prompt the user requesting to bring the CPU out of the low-power mode. Click
Yes. This will wake CPU2 from STANDBY and continue execution.
2.10.3 HALT
HALT is a global low-power mode that gates almost all system clocks and allows for power-down of
oscillators and analog blocks. This mode affects both CPU subsystems. HALT can be used for additional
power savings over putting both CPU subsystems in STANDBY, although the options for wakeup are
more limited.
Similar to STANDBY, any of GPIO0-63 can be configured to wake up the system from HALT. No other
wakeup option is available. However, CPU1's watchdog may still be clocked, and can be configured to
produce a watchdog reset if a timeout mechanism is needed. On wakeup, both CPUs receive a WAKEINT
interrupt.
To enter HALT mode:
1. Disable all interrupts with the exception of the WAKEINT interrupt on both CPUs. The other interrupts
can be reenabled after the device is brought out of HALT mode.
2. Put CPU2 into IDLE mode. (Using STANDBY will cause a duplicate WAKEINT on CPU2). CPU1
should verify this by checking the LPMSTAT register.
3. Set LPMCR.LPM to 0x2. Set GPIOLPMSEL0 and GPIOLPMSEL1 to connect the chosen GPIOs to the
LPM module.
4. Set CLKSRCCTL1.WDHALTI to 1 to keep the CPU1 watchdog active and INTOSC1 and INTOSC2
powered up in HALT.
5. Set CLKSRCCTL1.WDHALTI to 0 to disable the CPU1 watchdog and power down INTOSC1 and
INTOSC2 in HALT.
6. Execute the IDLE instruction on CPU1 to enter HALT.
If an interrupt or NMI is received while the IDLE instruction is in the pipeline, the system will begin
executing the WAKEINT ISR. After HALT wakeup, ISR execution will resume where it left off.
NOTE: Before entering HALT mode, if the system PLL is locked (SYSPLL.LOCKS = 1), it must also be
connected to the system clock (PLLCTL1.PLLCLKEN = 1). Otherwise, the device will never wake up.
To wake up from HALT mode:
1. Drive the selected GPIO low for a minimum 5us. This will activate the CPU1.WAKEINT and
CPU2.WAKEINT PIE interrupts.
2. Drive the wake-up GPIO high again to initiate the powering up of the SYSPLL and AUXPLL
3. Wait 16us plus 1024 OSCLK cycles to allow the PLLs to lock and the WAKEINT ISR to be latched.
4. Execute the WAKEINT ISR.
The device is now out of HALT mode and can resume normal execution.
2.10.4 HIB
Hibernate (HIB) is a global low-power mode that gates the supply voltages to most of the system. This
mode affects both CPU subsystems. HIB is essentially a controlled power-down with remote wakeup
capability, and can be used to save power during long periods of inactivity. Because gating the supply
voltage corrupts the state of the logic, a reset is required to exit HIB. To prevent external systems from
being affected by the reset, HIB provides isolation of the I/O pin states as well as low-power data retention
via the M0 and M1 memories.
Unlike the clock-gating modes, HIB does not have a true wakeup. Instead, GPIO41 becomes HIBWAKE,
an asynchronous reset signal. When the boot ROM detects a HIB wakeup, it will avoid clearing M0 and
M1 and call a user-specified I/O restore function. To prevent glitches on internal and external signals, XRS
will also generate a HIBWAKE signal during HIB. The I/O restore function should set up the GPIO control
registers to match their pre-HIB state, then write a 1 to LPMCR.IOISODIS to deactivate I/O isolation. If the
restore function does not disable isolation, the boot ROM will do it.
To enter HIB mode:
1. Save any necessary state to the M0 and M1 memories of both CPUs.
2. Put all I/Os in the desired state for isolation and deactivate any analog modules in use.
3. Write the address of the I/O restore function for each CPU to its IORESTOREADDR register.
4. Put CPU2 in reset, IDLE, or STANDBY.
5. Bypass the PLL by setting PLLCLKEN to 0.
6. Set CPU1's LPMCR.LPM to 0x3 and execute the IDLE instruction.
Any debugger connection will be lost on HIB entry since the JTAG logic is powered down.
Due to the loss of system state on HIB entry, it is possible for error information to be lost if an NMI is
triggered while the IDLE instruction is in the pipeline. The ERRORSTS pin will be set and remain set until
I/O isolation is disabled, but there will be no way to tell what caused the error.
To wake the device from HIB mode:
1. Assert the dedicated GPIOHIBWAKE pin (GPIO41) low to enable the power-up of the device clock
sources.
2. Assert GPIOHIBWAKE pin high again. This triggers the power-up of the rest of the device.
3. Boot ROM code will execute on HIB wake-up. Boot ROM will read CPU1.RESC.HIBRESTn bit to
determine this is a wakeup from HIB.
4. Boot ROM calls the I/O context restore routine. This I/O restore function should reconfigure the I/O
configuration and do any other necessary application setup.
Since waking up from HIB mode is a type of reset, the device will enter the main function. The device is
now out of HIB mode and can normal execution.
NOTE: The bootROM uses locations 0x02-0x122 on CPU1’s M0 RAM and locations 0x02-0x80 on
CPU2’s M0 RAM. To prevent losing any data during HIB wake-up, avoid saving any critical
data to these locations.
NOTE: The application must bypass the PLL before executing the IDLE instruction to enter HIB. If
the PLL is not bypassed when entering HIB, there will be a brief current spike on the Vdd
supply that may cause the device to reset.
CPU1.CLA1 TO CPU2.CLA1 TO
CPU1 MSGRAM CPU2 MSGRAM
CPU1.DMA CPU2.DMA
CPU1 CPU2
CPU1.M0 RAM CPU2.M0 RAM
CPU2 TO CPU1
MSGRAM
CPU1.M1 RAM CPU2.M1 RAM
CPU1 TO CPU2
CPU1.Dx RAM MSGRAM CPU2.Dx RAM
Like other shared RAM, these RAMs also have a different levels of access protection which can be
enabled or disabled by configuring specific bits in the GSxACCPROT registersmapped in each subsystem.
Master select and access protection configuration for each GSx RAM block can be individually locked by
the user to prevent further update to these bit fields. The user can also choose to permanently lock the
configuration to individual bit fields by setting the specific bit fields in the GSxCOMMIT register (refer to
the register description for more details). Once configuration is committed for a particular GSx RAM block,
it can not be changed further until CPUx.SYSRS is issued. Only the CPU1 SW can change the master
select configuration by writing into the GSxMSEL register, mapped on the CPU1. The GSxMSEL register,
which is mapped to the CPU2 subsystem, is a status register which can only be used by CPU2 SW to
know the master ownership for each GSx RAM block.
CPU1.DMA READ/WRITE
RR-CPU2.DMA RR-CPU1.DMA
CPU2-DWRITE
CPU2
CPU2-DREAD Fixed Granted CPU2 Access
Priority
CPU2-PREAD/FETCH Arbiter
RR-CPU2
CPU2.DMA READ/WRITE
If a write protection violation occurs, write gets ignored, a flag gets set into the appropriate access
violation flag register, and the memory address for which the access violation occurred, gets latched into
the appropriate CPU write access violation address register. Also, an access violation interrupt is
generated if enabled in the interrupt enable register.
If a write access is made to GSx memory by a non-master DMA, it is called a non-master write protection
violation. If a write access is made to a dedicated or shared memory by a master DMA, and
DMAWRPROTx is set to ‘1’ for that memory, it is called a master DMA write protection violation.
If a write protection violation occurs on CPU1, write is ignored and a DMAERR interrupt gets generated,
whereas in the case of CPU2, a write is ignored and an access violation interrupt is generated if enabled
in the interrupt enable register. A flag gets set in the DMA access violation flag register, and the memory
address where the violation happened gets latched in the DMA fetch access violation address register.
These are dedicated registers for each subsystem.
Note 1: All access protections are ignored during debug accesses. Write access to a protected
memory will go through when it is done via the debugger, irrespective of the write protection
configuration for that memory.
Note 2: Access protection is not implemented for M0 and M1 memories.
Note 3: In the case of local shared RAM, if memory is shared between the CPU and its CLA, the
CPU will only have access if the memory is configured as data RAM for the CLA. If it is
programmed as program RAM, all the access from the CPU (including read) and data access
from the CLA will be blocked, and violation will be considered as a non-master access
violation. If the memory is configured as dedicated to the CPU, all access from the CLA will
be blocked and the violation will be considered a non-master access violation.
NOTE: In the case of an uncorrectable error during fetch on the CPU, there is the possibility of
getting an ITRAP before an NMI exception, since garbage instructions enter into the CPU
pipeline before the NMI gets generated.
During debug accesses, correctable as well as uncorrectable errors are masked.
NOTE: The memory map for ECC/Parity bits and data bits are the same. The user must choose a
different test mode to access ECC/Parity bits.
The following table shows the bit mapping for the ECC/Parity bits when they are read in RAMTEST mode
using their respective addresses.
Table 2-12. Mapping of ECC Bits in Read Data from ECC/Parity Address Map
Data Bits Location in Read Data Content (ECC Memory)
6:0 ECC Code for lower 16 bits of data
7 Not Used
14:8 ECC Code for upper 16 bits of data
15 Not Used
22:16 ECC Code for address
31:23 Not Used
Table 2-13. Mapping of Parity Bits in Read Data from ECC/Parity Address Map
Data Bits Location in Read Data Content (Parity Memory)
0 Parity for lower 16 bits of data
7:1 Not Used
8 Parity for upper 16 bits of data
15:9 Not Used
16 Parity for address
31:17 Not Used
NOTE: None of the masters should access the memory while initialization is taking place. If memory
is accessed before RAMINITDONE is set, the memory read/write as well as initialization will
not happen correctly.
2.12.1 Features
Features of flash memory include:
• Dedicated flash bank in the CPU1 subsystem (refer to the device data manual for the size of flash
bank)
• Dedicated flash bank in the CPU2 subsystem (refer to the device data manual for the size of flash
bank)
• Dedicated flash module controller (FMC) in the CPU1 and CPU2 subsystems for each bank
• 128 bits (bank width) can be programmed at a time along with ECC
• Multiple sectors providing the option of leaving some sectors programmed and only erasing specific
sectors
• User-programmable OTP locations for configuring security, OTP boot-mode and boot-mode select pins
(if the user is unable to use the factory-default boot-mode select pins)
• Single-flash pump shared by the CPU1 and CPU2 subsystems
• Hardware flash pump semaphore to control ownership of the pump between the two FMCs.
• Enhanced performance using the code-prefetch mechanism and data cache in CPU1-FMC and CPU2-
FMC
• Configurable wait states to give the best performance for a given execution speed
• Safety Features
– SECDED-single error correction and double error detection is supported in both FMCs
– Address bits are included in ECC
– Test mode to check the health of ECC logic
• Supports low-power modes for flash bank and pump for power savings
• Built-in power mode control logic
• Integrated flash program/erase state machine (FSM) in both FMCs
– Simple flash API algorithms
– Fast erase and program times (refer to the device data manual for details)
• Code Security Module (CSM) to prevent access to the flash by unauthorized persons (refer to
Section 2.13 for details)
NOTE: Before initializing wait-states, turn off the pre-fetch and data caching in the FRD_INTF_CTRL
register.
CPU2-Bank
CPU2 Core
CPU2-FMC
Pump
CPU1-FMC
CPU1 Core
Pump Semaphore
CPU1 System Clock
CPU1-Bank
The CPU2 in the CPU2 subsystem interfaces with the CPU2 flash module controller (CPU2-FMC) which in
turn, interfaces with the CPU2 flash bank and shared pump to perform erase/program operations as well
as to read data/execute code from the CPU2 flash bank. Control signals to the flash pump will be
controlled by either CPU2-FMC or CPU1-FMC, depending on who gains the flash pump semaphore.
There is a state machine in both CPU1-FMC and CPU2-FMC which generates the erase/program
sequences in hardware. This simplifies the Flash API software which configures control registers in the
FMC to perform flash erase and program operations (see TMS320F2837xD Flash API Version 1.54
Reference Guide , SPNU629, for details on Flash API).
Section 2.12.6 through Section 2.12.10 describe FMC in detail.
The flash bank and OTP operate in three power modes: Sleep (lowest power), Standby, and Active
(highest power)
• Sleep State
This is the state after a device reset. In this state, a CPU data read or opcode fetch will automatically
initiate a change in power mode to the standby state and then to the active state. During this transition
time to the active state, the CPU will automatically be stalled.
• Standby State
This state uses more power than the sleep state, but takes a shorter time to transition to the active or
read state. In this state, a CPU data read or opcode fetch will automatically initiate a change in power
mode to the active state. During this transition time to the active state, the CPU will automatically be
stalled. Once the flash/OTP has reached the active state, the CPU access will complete as normal.
• Active or Read State
In this state, the bank and pump are in active power mode state (highest power)
The charge pump operates in two power modes:
• Sleep (lowest power)
• Active (highest power)
Any access to any flash bank/OTP causes the charge pump to go into active mode, if it is in sleep mode.
An erase or program command causes the charge pump and bank to become active. If any bank is in
active or in standby mode, the charge pump will be in active mode, independent of the pump power mode
control configuration (PMPPWR bit field in the FPAC1 register).
To power down the Flash pump, both the CPU1 and CPU2 must each power down the Flash Pump
without any Flash accesses in between. The Flash Pump will not enter low-power mode if the below
sequence is not followed.
1. When the system is ready to power down the Flash completely, synchronize CPU1 and CPU2. CPU2
will enter its Flash power-down phase (steps 2, 3, 4, and 5) while the CPU1 will be waiting for it to
complete.
2. Acquire the Pump Semaphore with the CPU2.
3. Assign a value of 0x14 to CPU2 VREADST (refer to the FBAC register) to ensure the requisite delay
needed for the flash pump/bank to come out of low-power mode later: FBAC.VREADST = 0x14
4. Change the CPU2 Flash Bank Fall Back power mode to Sleep: FBFALLBACK.BNKPWR = 0.
5. Change the CPU2 Flash Charge Pump Fall Back power mode to Sleep: FPAC1.PMPPWR = 0. CPU2
should notify CPU1 that it has completed the above sequence. It should wait until CPU1 completes
steps 6, 7, 8, 9 and 10.
6. Acquire the Pump Semaphore with the CPU1.
7. Assign a value of 0x14 to CPU1 VREADST (refer to FBAC register) to ensure the requisite delay
needed for the flash pump/bank to come out of low-power mode later: FBAC.VREADST = 0x14
8. Change the CPU1 Flash Bank Fall Back power mode to Sleep: FBFALLBACK.BNKPWR = 0.
9. Change the CPU1 Flash Charge Pump Fall Back power mode to Sleep: FPAC1.PMPPWR = 0.
10. Release the Pump Semaphore from the CPU1. CPU1 should notify CPU2 that it has completed the
power-down sequence so that both subsystems may continue.
The above listed procedure should be executed from RAM and not from Flash. Note that exclusive control
of the Flash pump should be gained by a CPU (using Flash pump semaphore PUMPREQUEST) before
configuring the PMPPWR bit field of the FPAC1 register as shown in the above sequence. As the charge
pump is shared between CPU1-FMC and CPU2-FMC, the effective PMPPWR value used when powering
down the pump will be of the FMC (out of CPU1-FMC and CPU2-FMC) which owns the pump. The
application software can check the current power mode of the flash bank by reading the FBPRDY register.
The PUMPRDY bit in the FBPRDY register in CPU1-FMC and CPU2-FMC together reflect the power
mode of the charge pump. A value of 0 in the PUMPRDY bit in both CPU1-FMC and CPU2-FMC indicates
that the charge pump is in sleep mode. A value of 1 in the PUMPRDY bit in either CPU1-FMC or CPU2-
FMC or in both CPU1-FMC and CPU2-FMC indicates that the charge pump is in active mode. Refer to the
register descriptions, Section 2.15, for detailed information.
While the pump is in sleep state, a charge pump sleep down counter holds a user configurable value
(PSLEEP bit field in the FPAC1 register) and when the charge pump exits sleep power mode, the down
counter delays from 0 to PSLEEP prescaled SYSCLK clock cycles (prescaled clock is SYSCLK/2) before
putting the charge pump into active power mode. Note that the configured PSLEEP value should yield at
least a delay of 20us for the pump to go to active mode. Refer to the register descriptions, Section 2.15,
for detailed information.
Below are the number of cycles it will take for the Bank and pump to wake up from low power modes.
1. Pump sleep to active = PSLEEP * (SYSCLK/2) cycles
2. Bank sleep to standby = 425 Flash clock cycles
3. Bank standby to active = 90 Flash clock cycles
RWAIT = ceiling[(SYSCLK/FCLK)-1]
Flash prefetch
Instruction buffer
128-bit 128-bit
buffer buffer
Instruction fetch
128-bit
M Data cache
CPU 32-bit U
X
This prefetch mechanism does a look-ahead prefetch on linear address increments starting from the
address of the last instruction fetch. The flash prefetch mechanism is disabled by default. Setting the
PREFETCH_EN bit in the FRD_INTF_CTRL register enables this prefetch mode.
An instruction fetch from the flash or OTP reads out 128 bits per access. The starting address of the
access from flash is automatically aligned to a 128-bit boundary, such that the instruction location is within
the 128 bits to be fetched. With the flash prefetch mode enabled, the 128 bits read from the instruction
fetch are stored in a 128-bit wide by 2-level deep instruction prefetch buffer. The contents of this prefetch
buffer are then sent to the CPU for processing as required.
Up to four 32-bit or eight 16-bit instructions can reside within a single 128-bit access. The majority of C28x
instructions are 16 bits, so for every 128-bit instruction fetch from the flash bank, it is likely that there are
up to eight instructions in the prefetch buffer ready to process through the CPU. During the time it takes to
process these instructions, the flash prefetch mechanism automatically initiates another access to the
flash bank to prefetch the next 128 bits. In this manner, the flash prefetch mechanism works in the
background to keep the instruction prefetch buffers as full as possible. Using this technique, the overall
efficiency of sequential code execution from flash or OTP is improved significantly. If the prefetch
mechanism is enabled, then the last row of 128 bits in the bank should not be used, because the prefetch
logic which does a look-ahead prefetch, will try to fetch from outside the bank and would result in an ECC
error.
The flash prefetch is aborted only on a PC discontinuity caused by executing an instruction such as a
branch, BANZ, call, or loop. When this occurs, the prefetch mechanism is aborted and the contents of the
prefetch buffer are flushed. There are two possible scenarios when this occurs:
1. If the destination address is within the flash or OTP, the prefetch aborts and then resumes at the
destination address.
2. If the destination address is outside of the flash and OTP, the prefetch is aborted and begins again
only when a branch is made back into the flash or OTP. The flash prefetch mechanism only applies to
instruction fetches from program space. Data reads from data memory and from program memory do
not utilize the prefetch buffer capability and thus bypass the prefetch buffer. For example, instructions
such as MAC, DMAC, and PREAD read a data value from program memory. When this read happens,
138 System Control SPRUHM8G – December 2013 – Revised September 2017
Submit Documentation Feedback
Copyright © 2013–2017, Texas Instruments Incorporated
www.ti.com Flash and OTP Memory
the prefetch buffer is bypassed but the buffer is not flushed. If an instruction prefetch is already in
progress when a data read operation is initiated, then the data read will be stalled until the prefetch
completes.
Note that the prefetch mechanism gets bypassed when RWAIT is configured as zero.
2.12.9.1 Erase
When the target flash is erased, it reads as all 1's. This state is called 'blank.' The erase function must be
executed before programming. The user should NOT skip erase on sectors that read as 'blank' because
these sectors may require additional erasing due to marginally erased bits columns. The FSM provides an
“Erase Sector” command to erase the target sector. The erase function erases the data and the ECC
together. This command is implemented by the following Flash API function:
Fapi_issueAsyncCommandWithAddress();
The Flash API provides the following function to determine if the flash bank is 'blank':
Fapi_doBlankCheck();
2.12.9.2 Program
The FSM provides a command to program the USER OTP and Flash. This command is also used to
program ECC check bits.
This command is implemented by the following Flash API function:
Fapi_issueProgrammingCommand();
The Program function provides the options to program data without ECC, data along with user-provided
ECC data, data along with ECC calculated by API software , and to program ECC only.
2.12.9.3 Verify
After programming, the user must perform verify using API function Fapi_doVerify(). This function verifies
the flash contents against supplied data.
Application software typically perform a CRC check of the Flash memory contents during power-up and at
regular intervals during runtime (as needed). Apart from this, ECC logic, when enabled (enabled by
default), catches single-bit errors, double-bit errors, and address errors whenever the CPU reads/fetches
from a Flash address.
Data[127:64]
ECC[7:0]
During an instruction fetch or a data read operation, the 19 most significant address bits (three least
significant bits of address are not considered), together with the 64-bit data/8-bit ECC read-out of flash
banks/ECC memory map area, pass through the SECDED logic and the eight checkbits are produced in
FMC. These eight calculated ECC check bits are then XORed with the stored check bits (user
programmed check bits) associated with the address and the read data. The 8-bit output is decoded inside
the SECDED module to determine one of three conditions:
• No error occurred
• A correctable error (single bit data error) occurred
• A non-correctable error (double bit data error or address error) occurred
If the SECDED logic finds a single-bit error in the address field, then it is considered to be a non-
correctable error.
NOTE: Since ECC is calculated for an entire 64-bit data, a non 64-bit read such as a byte read or a
half-word read will still force the entire 64-bit data to be read and calculated, but only the
byte or half-word will be actually used by the CPU.
This ECC (SECDED) feature is enabled at reset. The ECC_ENABLE register can be used to configure(
enable/disable) the ECC feature. The ECC for the application code must be programmed.. There are two
SECDED modules in each FMC. Out of the 128-bit data (aligned on a 128-bit memory boundary) read
from the bank/OTP address, the lower 64-bits of data and corresponding 8 ECC bits (read from user
programmable ECC memory area) are fed as inputs to one SECDED module along with 128-bit aligned
19-bit address from where data has been read. The upper 64- bits of data and corresponding 8 ECC bits
are fed as inputs to another SECDED module in parallel, along with 128-bit aligned 19-bit address. Each
of the SECDED modules evaluate their inputs and determine if there is any single-bit data error or double-
bit data error/address error.
ECC logic will be bypassed when the 64 data bits and the associated ECC bits fetched from the bank are
either all ones or zeros.
When an uncorrectable error occurs, the UNC_ERR_INTFLG bit is set and an uncorrectable error interrupt
is fired. This uncorrectable error interrupt generates an NMI, if enabled. If an uncorrectable error interrupt
flag is not cleared using the corresponding error interrupt clear bit in the ERR_INTCLR register, an error
interrupt will not come again, as this is an edge based interrupt.
Although ECC is calculated on 64-bit basis, a read of any address location within a 128-bit aligned Flash
memory will cause the uncorrectable error flag to get set when there is a uncorrectable error in both or in
either one of the lower 64 and upper 64 bits (or corresponding ECC check bits) of that 128-bit data. NMI
will occur on the CPU for a read of any address location within a 128-bit aligned Flash memory, when
there is an uncorrectable error in both or in either one of the lower 64 and upper 64 bits (or corresponding
ECC check bits) of that 128-bit data.
00 or 11 Either CPU may write to the semaphore. CPU1 has control of the resource by
default. 00 is the reset state.
01 CPU2 has exclusive control of the resource and exclusive write access to the
semaphore.
10 CPU1 has exclusive control of the resource and exclusive write access to the
semaphore.
Each CPU is only allowed to take control of the pump for itself. Direct transfer between the 01 and 10
states is not allowed. However, CPU1 may force both semaphores into the default state (00) at any time
by putting CPU2 into reset. Figure 2-19 shows the allowed states and state transitions.
Figure 2-19. Flash Pump Semaphore (PUMPREQUEST) States and State Transitions
CPU1 should write 10 to gain pump CPU2 should write 01 to gain pump
control before erasing or programming Semaphore state 00 or 11 control before erasing or programming
its flash bank. its flash bank.
Pump controlled by CPU1
00 or 11 Either CPU may write to the semaphore. CPU1 has control of the clock
configuration registers by default. 00 is the reset state.
01 CPU2 has exclusive control of the clock configuration registers and exclusive
write access to the semaphore.
10 CPU1 has exclusive control of the clock configuration registers and exclusive
write access to the semaphore.
Each CPU is only allowed to take control of the clock configuration registers for itself. However, CPU1
may force both semaphores into the default state (00) at any time by putting CPU2 into reset. Figure 2-20
shows the allowed states and state transitions.
CPU2 cannot take control of the pump in this CPU1 cannot take control of the pump in this
state state
The security of each zone is ensured by its own 128-bit (four 32-bit words) password (CSM password).
The password for each zone is stored in its dedicated OTP location based on a zone-specific link pointer.
A zone can be unsecured by executing the password match flow (PMF), described in Section 2.13.3.3.2.
There are three types of accesses: data/program reads, JTAG access, and instruction fetches (calls,
jumps, code executions, ISRs). Instruction fetches are never blocked. JTAG accesses are always blocked
when a memory is secure. Data reads to a secure memory are always blocked unless the program is
executing from a memory which belongs to the same zone. Data reads to unsecure memory are always
allowed. Table 2-15 shows the levels of security.
If the password locations of a zone have all 128 bits as ones, the zone is considered unsecure. Since new
Flash devices have erased Flash (all ones), only a read of the password locations is required to bring any
zone into unsecure mode. If the password locations of a zone have all 128 bits as zeros, the zone is
secure, regardless of the contents of the CSMKEY registers. This means the zone can’t be unlocked using
PMF, the password match flow described in Section 2.13.3.3.2. Therefore, the user should never use all
zeros as a password. A password of all zeros will prevent debug of secure code or reprogramming the
Flash.
CSMKEY registers are user-accessible registers that are used to unsecure the zones.
NOTE: Password unlock only makes password locations non-secure. All other secure memories and
other locations of Flash sectors, which contain a password, remains secure as per security
settings. But since passwords are non-secure, anyone can read the password and make the
zone non-secure by running through PMF.
all the three values (bit-wise voting logic). Since in OTP, a ‘1’ can be flipped by the user to ‘0’ but ‘0’ can’t
be flipped to ‘1’ (no erase operation for OTP), the most significant bit position in the resolved link pointer
which is ‘0’, defines the valid base address for the zone select region. While generating the final link
pointer value, if the bit patterns is not one of those listed in Figure 2-21, the final link pointer value
becomes All_1 (0xFFFF_FFFF) which selects the Zone-Select-Block1 (also known as the default zone
select block).
NOTE: Address locations for other security settings (PSWDLOCK/CRCLOCK) that are not part of
Zone Select blocks) can be programmed only once; therefore, the user should program them
towards end of the development cycle.
2.13.1.5.1 C Code Example to get Zone Select Block Addr for Zone1
unsigned long LinkPointer;
unsigned long *Zone1SelBlockPtr;
int Bitpos = 28;
int ZeroFound = 0;
NOTE: If there is a loss of power or a reset of any nature during the flash programming operation,
there is high probability of some (or possibly all) of the 128 bits in the corresponding 128-bit
aligned address getting corrupted. If this happens while programming the password locations
in USER OTP, the passwords may get corrupted.
2.13.1.8 SafeCRC
Since reads from EXEONLY memories are not allowed, the user cannot calculate the CRC for content in
EXEONLY memories using the VCU-II. But in some safety-critical applications, the user may have to
calculate the CRC on these memories as well. To enable this without compromising on security, TI
provides specific “SafeCRC” library functions for each zone. These functions do the CRC calculation in
highly secure environment and allow a CRC calculation to be performed only when the following
conditions are met:
• The source address should be modulo the number of words (based on length_id) for which the CRC
needs to be calculated.
• The destination address should belong to the same zone as the source address.
For further usage of these library functions, see the device-specific Boot ROM documentation.
NOTE: The user must disable all the interrupts before calling the safe copy code and the safeCRC
function. If there is a vector fetch during copy code operation, the CPU gets reset
immediately.
Disclaimer: Code Security Module Disclaimer The Code Security Module (CSM) included on this device
was designed to password protect the data stored in the associated memory and is warranted by Texas
Instruments (TI), in accordance with its standard terms and conditions, to conform to TI's published
specifications for the warranty period applicable for this device. TI DOES NOT, HOWEVER, WARRANT
OR REPRESENT THAT THE CSM CANNOT BE COMPROMISED OR BREACHED OR THAT THE
DATA STORED IN THE ASSOCIATED MEMORY CANNOT BE ACCESSED THROUGH OTHER
MEANS. MOREOVER, EXCEPT AS SET FORTH ABOVE, TI MAKES NO WARRANTIES OR
REPRESENTATIONS CONCERNING THE CSM OR OPERATION OF THIS DEVICE, INCLUDING ANY
IMPLIED WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. IN NO
EVENT SHALL TI BE LIABLE FOR ANY CONSEQUENTIAL, SPECIAL, INDIRECT, INCIDENTAL, OR
PUNITIVE DAMAGES, HOWEVER CAUSED, ARISING IN ANY WAY OUT OF YOUR USE OF THE CSM
OR THIS DEVICE, WHETHER OR NOT TI HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH
DAMAGES. EXCLUDED DAMAGES INCLUDE, BUT ARE NOT LIMITED TO LOSS OF DATA, LOSS OF
GOODWILL, LOSS OF USE OR INTERRUPTION OF BUSINESS OR OTHER ECONOMIC LOSS.
START
NO
NO Correct
Password?
YES
Zone Unsecure
2.13.3.3 Unsecuring Considerations for Zones With and Without Code Security
Case 1 and Case 2 provide unsecuring considerations for zones with and without code security.
• Case 1: Zone With Code Security
A zone with code security should have a predetermined password stored in the password locations of
that zone. The following are steps to unsecure any secure zone:
NOTE: Even if a zone is not protected with a password (all password locations all ones), the CSM
will lock at reset. Thus, a dummy read operation must still be performed on these zones prior
to reading, writing, or programming secure memory if the code performing the access is
executing from outside of the CSM protected memory region. The Boot ROM code does this
dummy read for convenience.
START
NO
NO Correct
Password?
YES
2.14 JTAG
Gel files perform certain initialization tasks. This helps the users in a debug environment. However, when
executed standalone (without the emulator connected) the application may not work as expected, since
there is no gel file to perform those initializations. For example, gel file disables watchdog. If user code
does not service the watchdog in the application (or fails to disable it), there will be a difference in how the
application behaves with the debugger and without.
Common tasks performed by the gel files (but not boot-ROM)
On Reset:
• Disable Flash ECC on some devices.
– Disabling ECC only when using Flash API functions, see the Flash API User Guide for details.
Otherwise, TI suggests to always program ECC and enable ECC-check.
• Disable Watchdog
• Enable CLA clock
• Select real-time mode or C28x mode
On Restart:
• Select real-time mode or C28x mode
• Clear IER and IFR
On Target Connect:
2.15 Registers
Complex bit access types are encoded to fit into small table cells. Table 2-18 shows the codes that are
used for access types in this section.
TIF indicates whether a timer overflow has happened since TIF was
last cleared. TIF is not cleared automatically and does not need to
be cleared to enable the next timer interrupt.
Reset type: SYSRSn
0h (R/W) = The CPU-Timer has not decremented to zero.
Writes of 0 are ignored.
1h (R/W) = This flag gets set when the CPU-timer decrements to
zero.
Writing a 1 to this bit clears the flag.
14 TIE R/W 0h CPU-Timer Interrupt Enable.
Reset type: SYSRSn
0h (R/W) = The CPU-Timer interrupt is disabled.
1h (R/W) = The CPU-Timer interrupt is enabled. If the timer
decrements to zero, and TIE is set, the timer asserts its interrupt
request.
13-12 RESERVED R 0h Reserved
11 FREE R/W 0h If the FREE bit is set to 1, then, upon a software breakpoint, the
timer continues to run. If FREE is 0, then the SOFT bit controls the
emulation behavior.
Reset type: SYSRSn
0h (R/W) = Stop after the next decrement of the TIMH:TIM (hard
stop)
1h (R/W) = Stop after the TIMH:TIM decrements to 0 (soft stop)
Complex bit access types are encoded to fit into small table cells. Table 2-25 shows the codes that are
used for access types in this section.
Note: When a NMI is serviced, the PIEVECT bit-field does not reflect
the vector as it does for other interrupts.
Reset type: SYSRSn
0 ENPIE R/W 0h Enable vector fetching from ePIE block. This bit must be set to 1 for
peripheral interrupts to work. All ePIE registers (PIEACK, PIEIFR,
PIEIER) can be accessed even when the ePIE block is disabled.
Reset type: SYSRSn
Complex bit access types are encoded to fit into small table cells. Table 2-53 shows the codes that are
used for access types in this section.
Notes:
[1] If MIN = 0, this bit is never set
[2] If MIN is changed back to 0x0 from a non-zero value, this bit is
auto-cleared
[3] This bit is added for debug purposes only
Reset type: IORSn
7-0 MIN R/W 0h These bits define the lower limt of the Windowed functionality
Reset type: IORSn
Complex bit access types are encoded to fit into small table cells. Table 2-60 shows the codes that are
used for access types in this section.
Note:
[1] This bits is reserved for CPU2.NMIFLG register
Reset type: XRSn
9 CPU2WDRSn R 0h CPU2 WDRSn Reset Indication Flag: This bits indicates if CPU2s
WDRSn was fired or not.
0 No CPU2.WDRsn was fired
1 CPU2.WDRSn was fired to CPU2
Note:
[1] This bits is reserved for CPU2.NMIFLG register
Reset type: XRSn
8 RESERVED R 0h Reserved
7 RESERVED R 0h Reserved
6 PIEVECTERR R 0h PIE Vector Fetch Error Flag: This bit indicates if an error occurred on
an Vector Fect by the other CPU in the device. For example,
CPU1.NMIWD gets an NMI on an Vector fetch Error on CPU2. This
bit can only be cleared by the user writing to the corresponding clear
bit in the NMIFLGCLR register or by an XRSn reset:
0,No Vector Fetch Error condition (on the other CPU) pending
1,Vector Fetch error condition (on the other CPU) generated
Reset type: XRSn
5 CPU2HWBISTERR R 0h HW BIST Error NMI Flag: This bit indicates if the time out error or a
signature mismatch error condition during hardware BIST of C28
CPU2 occurred. This bit can only be cleared by the user writing to
the corresponding clear bit in the NMIFLGCLR register or by an
XRSn reset:
0,No C28 HWBIST error condition pending
1,C28 BIST error condition generated
Reset type: XRSn
Notes:
[1] If hardware is trying to set a bit to 1 while software is trying to
clear a bit to 0 on the same cycle, hardware has priority.
[2] Users should clear the pending FAIL flag first and then clear the
NMIINT flag.
Reset type: SYSRSn
10 CPU2NMIWDRSn R=0/W=1 0h Writing a 1 to the respective bit clears the corresponding flag bit in
the NMIFLG and NMISHDFLG registers. Writes of 0 are ignored.
Always reads back 0.
Notes:
[1] If hardware is trying to set a bit to 1 while software is trying to
clear a bit to 0 on the same cycle, hardware has priority.
[2] Users should clear the pending FAIL flag first and then clear the
NMIINT flag.
Reset type: SYSRSn
9 CPU2WDRSn R=0/W=1 0h Writing a 1 to the respective bit clears the corresponding flag bit in
the NMIFLG and NMISHDFLG registers. Writes of 0 are ignored.
Always reads back 0.
Notes:
[1] If hardware is trying to set a bit to 1 while software is trying to
clear a bit to 0 on the same cycle, hardware has priority.
[2] Users should clear the pending FAIL flag first and then clear the
NMIINT flag.
[3] CPU2WDRSn and CPU2NMIWDRSn bits are reserved for
CPU2.NMIFLGCLR registers
Reset type: SYSRSn
8 RESERVED R 0h Reserved
7 RESERVED R 0h Reserved
Notes:
[1] If hardware is trying to set a bit to 1 while software is trying to
clear a bit to 0 on the same cycle, hardware has priority.
[2] Users should clear the pending FAIL flag first and then clear the
NMIINT flag.
Reset type: SYSRSn
5 CPU2HWBISTERR R=0/W=1 0h Writing a 1 to the respective bit clears the corresponding flag bit in
the NMIFLG and NMISHDFLG registers. Writes of 0 are ignored.
Always reads back 0.
Notes:
[1] If hardware is trying to set a bit to 1 while software is trying to
clear a bit to 0 on the same cycle, hardware has priority.
[2] Users should clear the pending FAIL flag first and then clear the
NMIINT flag.
Reset type: SYSRSn
4 CPU1HWBISTERR R=0/W=1 0h Writing a 1 to the respective bit clears the corresponding flag bit in
the NMIFLG and NMISHDFLG registers. Writes of 0 are ignored.
Always reads back 0.
Notes:
[1] If hardware is trying to set a bit to 1 while software is trying to
clear a bit to 0 on the same cycle, hardware has priority.
[2] Users should clear the pending FAIL flag first and then clear the
NMIINT flag.
Reset type: SYSRSn
3 FLUNCERR R=0/W=1 0h Writing a 1 to the respective bit clears the corresponding flag bit in
the NMIFLG and NMISHDFLG registers. Writes of 0 are ignored.
Always reads back 0.
Notes:
[1] If hardware is trying to set a bit to 1 while software is trying to
clear a bit to 0 on the same cycle, hardware has priority.
[2] Users should clear the pending FAIL flag first and then clear the
NMIINT flag.
Reset type: SYSRSn
2 RAMUNCERR R=0/W=1 0h Writing a 1 to the respective bit clears the corresponding flag bit in
the NMIFLG and NMISHDFLG registers. Writes of 0 are ignored.
Always reads back 0.
Notes:
[1] If hardware is trying to set a bit to 1 while software is trying to
clear a bit to 0 on the same cycle, hardware has priority.
[2] Users should clear the pending FAIL flag first and then clear the
NMIINT flag.
Reset type: SYSRSn
1 CLOCKFAIL R=0/W=1 0h Writing a 1 to the respective bit clears the corresponding flag bit in
the NMIFLG and NMISHDFLG registers. Writes of 0 are ignored.
Always reads back 0.
Notes:
[1] If hardware is trying to set a bit to 1 while software is trying to
clear a bit to 0 on the same cycle, hardware has priority.
[2] Users should clear the pending FAIL flag first and then clear the
NMIINT flag.
Reset type: SYSRSn
Notes:
[1] If hardware is trying to set a bit to 1 while software is trying to
clear a bit to 0 on the same cycle, hardware has priority.
[2] Users should clear the pending FAIL flag first and then clear the
NMIINT flag.
Reset type: SYSRSn
Note:
[1] CPU2WDRSn and CPU2NMIWDRSn bits are reserved for
CPU2.NMIFLGCLR registers
Reset type: SYSRSn
9 CPU2WDRSn R=0/W=1 0h Writing a 1 to these bits will set the respective FAIL flag in the
NMIFLG and NMISHDFLG registers. Writes of 0 are ignored. Always
reads back 0. This can be used as a means to test the NMI
mechanisms.
Note:
[1] CPU2WDRSn and CPU2NMIWDRSn bits are reserved for
CPU2.NMIFLGCLR registers
Reset type: SYSRSn
8 RESERVED R 0h Reserved
7 RESERVED R 0h Reserved
6 PIEVECTERR R=0/W=1 0h Writing a 1 to these bits will set the respective FAIL flag in the
NMIFLG and NMISHDFLG registers. Writes of 0 are ignored. Always
reads back 0. This can be used as a means to test the NMI
mechanisms.
Reset type: SYSRSn
5 CPU2HWBISTERR R=0/W=1 0h Writing a 1 to these bits will set the respective FAIL flag in the
NMIFLG and NMISHDFLG registers. Writes of 0 are ignored. Always
reads back 0. This can be used as a means to test the NMI
mechanisms.
Reset type: SYSRSn
If no enabled FAIL flag is set, then the counter will reset to zero and
remain at zero until an enabled FAIL flag is set.
Notes:
[1] This register is added to keep the definition of System Control
Reset Cause Register Clean.
Reset type: PORn
10 CPU2NMIWDRSn R 0h Shadow NMI Flags: When an NMIFLG bit is set due to any of the
possible NMI source in the device, the corresponding bit in this
register is also set. Note that NMIFLGFRC and NMIFLGCLR register
also affects the bits of this register in the same way as they do for
the NMIFLG register. This register is resetted only by PORn.
Notes:
[1] This register is added to keep the definition of System Control
Reset Cause Register Clean.
Reset type: PORn
9 CPU2WDRSn R 0h Shadow NMI Flags: When an NMIFLG bit is set due to any of the
possible NMI source in the device, the corresponding bit in this
register is also set. Note that NMIFLGFRC and NMIFLGCLR register
also affects the bits of this register in the same way as they do for
the NMIFLG register. This register is resetted only by PORn.
Notes:
[1] This register is added to keep the definition of System Control
Reset Cause Register Clean.
[2] CPU2WDRSn and CPU2NMIWDRSn bits are reserved for
CPU2.NMIFLGCLR registers
Reset type: PORn
8 RESERVED R 0h Reserved
7 RESERVED R 0h Reserved
Notes:
[1] This register is added to keep the definition of System Control
Reset Cause Register Clean.
Reset type: PORn
5 CPU2HWBISTERR R 0h Shadow NMI Flags: When an NMIFLG bit is set due to any of the
possible NMI source in the device, the corresponding bit in this
register is also set. Note that NMIFLGFRC and NMIFLGCLR register
also affects the bits of this register in the same way as they do for
the NMIFLG register. This register is resetted only by PORn.
Notes:
[1] This register is added to keep the definition of System Control
Reset Cause Register Clean.
Reset type: PORn
4 CPU1HWBISTERR R 0h Shadow NMI Flags: When an NMIFLG bit is set due to any of the
possible NMI source in the device, the corresponding bit in this
register is also set. Note that NMIFLGFRC and NMIFLGCLR register
also affects the bits of this register in the same way as they do for
the NMIFLG register. This register is resetted only by PORn.
Notes:
[1] This register is added to keep the definition of System Control
Reset Cause Register Clean.
Reset type: PORn
3 FLUNCERR R 0h Shadow NMI Flags: When an NMIFLG bit is set due to any of the
possible NMI source in the device, the corresponding bit in this
register is also set. Note that NMIFLGFRC and NMIFLGCLR register
also affects the bits of this register in the same way as they do for
the NMIFLG register. This register is resetted only by PORn.
Notes:
[1] This register is added to keep the definition of System Control
Reset Cause Register Clean.
Reset type: PORn
2 RAMUNCERR R 0h Shadow NMI Flags: When an NMIFLG bit is set due to any of the
possible NMI source in the device, the corresponding bit in this
register is also set. Note that NMIFLGFRC and NMIFLGCLR register
also affects the bits of this register in the same way as they do for
the NMIFLG register. This register is resetted only by PORn.
Notes:
[1] This register is added to keep the definition of System Control
Reset Cause Register Clean.
Reset type: PORn
1 CLOCKFAIL R 0h Shadow NMI Flags: When an NMIFLG bit is set due to any of the
possible NMI source in the device, the corresponding bit in this
register is also set. Note that NMIFLGFRC and NMIFLGCLR register
also affects the bits of this register in the same way as they do for
the NMIFLG register. This register is resetted only by PORn.
Notes:
[1] This register is added to keep the definition of System Control
Reset Cause Register Clean.
Reset type: PORn
0 RESERVED R=0 0h Reserved
Complex bit access types are encoded to fit into small table cells. Table 2-69 shows the codes that are
used for access types in this section.
Complex bit access types are encoded to fit into small table cells. Table 2-79 shows the codes that are
used for access types in this section.
Complex bit access types are encoded to fit into small table cells. Table 2-87 shows the codes that are
used for access types in this section.
00 or 11: Read-only state. CPU1 has control of the pump, but CPU2
may seize control at any time.
01: CPU2 has exclusive control of the pump and of these
semaphore bits. CPU2 can relinquish control by setting the bits back
to 00 or 11.
10: CPU1 has exclusive control of the pump and of these
semaphore bits. CPU1 can relinquish control by setting the bits back
to 00 or 11.
Complex bit access types are encoded to fit into small table cells. Table 2-90 shows the codes that are
used for access types in this section.
Note: This field shows flash size on CPU1 (see datasheet for flash
size available)
Reset type: XRSn
15 RESERVED R/WOnce X Reserved
14-13 INSTASPIN R/WOnce X 0 = Reserved for future
1 = Reserved for future
2 = Reserved for future
3 = NONE
Reset type: XRSn
12 RESERVED R 0h Reserved
11 RESERVED R 0h Reserved
10-8 PIN_COUNT R/WOnce X 0 = reserved for future
1 = reserved for future
2 = reserved for future
3 = reserved for future
4 = reserved for future
5 = 100 pin
6 = 176 pin
7 = 337 pin
Reset type: XRSn
Note:
[1] These CPUSEL bits affect the ownership of only ADC
Configuration registers by CPU1 or CPU2 (which are mapped on the
mapped to VBUS32). ADC result registers are readable from all
masters without any CPUSEL dependency.
Reset type: CPU1.SYSRSn
2 ADC_C R/W 0h 0: Connected to CPU1
1: Connected to CPU2
Note:
[1] These CPUSEL bits affect the ownership of only ADC
Configuration registers by CPU1 or CPU2 (which are mapped on the
mapped to VBUS32). ADC result registers are readable from all
masters without any CPUSEL dependency.
Reset type: CPU1.SYSRSn
Note:
[1] These CPUSEL bits affect the ownership of only ADC
Configuration registers by CPU1 or CPU2 (which are mapped on the
mapped to VBUS32). ADC result registers are readable from all
masters without any CPUSEL dependency.
Reset type: CPU1.SYSRSn
0 ADC_A R/W 0h 0: Connected to CPU1
1: Connected to CPU2
Note:
[1] These CPUSEL bits affect the ownership of only ADC
Configuration registers by CPU1 or CPU2 (which are mapped on the
mapped to VBUS32). ADC result registers are readable from all
masters without any CPUSEL dependency.
Reset type: CPU1.SYSRSn
Note:
[1] Due to this KEY, only 32-bit writes will succeed (provided the
KEY matches). 16-bit writes to the upper or lower half of this register
will be ignored
Reset type: N/A
15-1 RESERVED R=0 0h Reserved
0 RESET R/W 1h This bit controls the reset input of CPU2 core.
Note:
[1] If CPU2 is not used at-all by an application, it's advisable to put
CPU2 in STANDBY mode rather than in reset to save on active
power component on the CPU2 subsystem. This is because, all
clocks keep toggling when reset is active on the CPU2 sub-system.
[2] Note: If CPU2 is in Standby mode, writing to this bit will have no
effect. CPU2 may be reset by any Chip-level reset (POR, XRSn,
CPU1.WDRSn, or CPU1.NMIWDRSn) or HIBRESETn. Alternately
CPU2 may be woken up by any configured wake-up event.
Reset type: CPU1.SYSRSn
This status bit is a latched flag. This flag can be cleared by the
CPU1 by writing a 1
Reset type: CPU1.SYSRSn
2 CPU2HWBISTRST0 R/W=1 0h CPU2HWBISTRST0 and CPU2HWBISTRST1 together indicates
whether a HWBIST reset was issued to CPU2 or not
This status bit is a latched flag. This flag can be cleared by the
CPU1 by writing a 1
Reset type: CPU1.SYSRSn
1 CPU2NMIWDRST R/W=1 0h Indicates whether a CPU2.NMIWD reset was issued to CPU2 or not
This status bit is a latched flag.This flag can be cleared by the CPU1
by writing a 1
Reset type: CPU1.SYSRSn
0 CPU2RES R 0h Reset status of CPU2 to CPU1
Complex bit access types are encoded to fit into small table cells. Table 2-148 shows the codes that are
used for access types in this section.
Note:
[1] Due to this KEY, only 32-bit writes will succeed (provided the
KEY matches). 16-bit writes to the upper or lower half of this register
will be ignored
Reset type: N/A
15-2 RESERVED R=0 0h Reserved
1-0 SEM R/W 0h This register provides a mechanism to acquire all the CLKCFG
registers (except this register) by CPU1 or CPU2. A CPU can
perform read/writes to any of the CLKCFG registers (except this
register) only if it owns the semaphore. Otherwise, writes are ignored
and reads will return 0x0.
The following are the only state transitions allowed on these bits.
00,11 <-> 01 (allowed by CPU2)
00,11 <-> 10 (allowed by CPU1)
Notes:
[1] Clock to CPU2.WD clocks is always gated in the HALT mode.
Reset type: XRSn
4 XTALOFF R/W 0h Crystal (External) Oscillator Off Bit: This bit turns external oscillator
off:
0 = Crystal (External) Oscillator On (default on reset)
1 = Crystal (External) Oscillator Off
NOTE: Ensure no resources are using a clock source prior to
disabling it. For example OSCCLKSRCSEL (SYSPLL),
AUXOSCCLKSRCSEL (AUXPLL), CANxBCLKSEL (CAN Clock),
TMR2CLKSRCSEL (CPUTIMER2) and XCLKOUTSEL(XCLKOUT).
Reset type: XRSn
This bit could be used by the user to turn off the internal oscillator 2
if it is not used.
Notes:
[1] Reserved selection defaults to 00 configuration
[2] INTOSC1 is recommended to be used only after missing clock
detection. If user wants to re-lock the PLL with INTOSC1 (the back-
up clock source) after missing clock is detected, he can do a
MCLKCLR and lock the PLL.
Reset type: XRSn
Missing clock detect circuit doesnt have any impact on these bits.
Reset type: XRSn
3-2 CANABCLKSEL R/W 0h CANA Bit-Clock Source Select Bit:
00 = PERx.SYSCLK (default on reset)
01 = External Oscillator (XTAL)
10 = AUXCLKIN (from GPIO)
11 = Reserved
Missing clock detect circuit doesnt have any impact on these bits.
Reset type: XRSn
Whenever the user changes the clock source using these bits,
the AUXPLLMULT register will be forced to zero and the PLL will
be bypassed and powered down. This prevents potential PLL
overshoot. The user will then have to write to the AUXPLLMULT
register to configure the appropriate multiplier.
The missing clock detection circuit does not affect these bits.
Reset type: XRSn
1 = SYSPLL is enabled
0 = SYSPLL is powered off. Clock to system is direct feed from
OSCCLK
Reset type: XRSn
The SLIPS bit will only be set on a PLL slip condition after the PLL is
used as the SYSCLK source by seting the
SYSPLLCTL1[PLLCLKEN] bit. Disabling and re-enabling the PLL
with PLLEN is the only way to clear this bit.
Note:
[1] If SYSPLL out of lock condition is detected then interrupts are
fired to CPU1 and CPU2 through their respective ePIE modules.
Software can decide to relock the PLL or switch to PLL bypass mode
in the interrupt handler
Reset type: XRSn
0 LOCKS R 0h SYSPLL Lock Status Bit: This bit indicates whether the SYSPLL is
locked or not
1 = AUXPLL is enabled
0 = AUXPLL is powered off. Clock to system is direct feed from
AUXOSCCLK
Reset type: XRSn
The SLIPS bit will only be set on a PLL slip condition after the PLL is
used as the AUXPLLCLK source by seting the
AUXPLLCTL1[PLLCLKEN] bit. Disabling and re-enabling the PLL
with PLLEN is the only way to clear this bit.
Note:
[1] If AUXPLL out of lock condition is detected then interrupts are
fired to CPU1 and CPU2 through their respective ePIE modules.
Software can decide to relock the PLL or switch to PLL bypass mode
in the interrupt handler
Reset type: XRSn
0 LOCKS R 0h AUXPLL Lock Status Bit: This bit indicates whether the AUXPLL is
locked or not
000000 = /1
000001 = /2
000010 = /4 (default on reset)
000011 = /6
000100 = /8
......
111111 = /126
Reset type: XRSn
00 = /1
01 = /2 (default on reset)
10 = /4
11 = /8
Reset type: XRSn
0: /1 of CPU1.SYSCLK is selected
1: /2 of CPU1.SYSCLK is selected
Reset type: CPU1.SYSRSn
5 RESERVED R=0 0h Reserved
4 EMIF1CLKDIV R/W 1h EMIF1 Clock Divide Select: This bit selects whether the EMIF1
module run with a /1 or /2 clock.
x0 = /1 of PLLSYSCLK
x1 = /2 of PLLSYSLCK (default on reset)
00 = /1
01 = /2
10 = /4
11 = /8 (default on reset)
Reset type: CPU1.SYSRSn
Note:
[1] This clock is used as strobe for the SCI and SPI modules.
Reset type: CPU1.SYSRSn
Complex bit access types are encoded to fit into small table cells. Table 2-168 shows the codes that are
used for access types in this section.
Notes:
1. This bit on the CPU2.PCLKCR0 register has no effect.
2. Writing '1' to this bit overrides the effect of write '1' to the
TBCLKSYNC bit at the same time
Reset type: SYSRSn
18 TBCLKSYNC R/W 0h EPWM Time Base Clock sync: When set PWM time bases of all the
PWM modules belonging to the same CPU-Subsystem (as
partitioned using their CPUSEL bits) start counting
Notes:
1. This bit from CPU1.PCLKCR0 or CPU2.PCLKCR0 is selected and
fed to the individual EPWM modules based on their respective
CPUSEL bit.
Reset type: SYSRSn
17 RESERVED R=0 0h Reserved
16 HRPWM R/W 0h HRPWM Clock Enable Bit: When set, this enables the clock to the
HRPWM module
1: HRPWM clock is enabled
0: HRPWM clock is disabled
Note:
[1] This bit is present only in CPU1.PCLKCR0. This bit is not used
(R/W) in CPU2.PCLKCR0
Reset type: SYSRSn
15-6 RESERVED R=0 0h Reserved
Notes:
[1] These bits are not used (R/W) in CPU2.PCLKCR1 register.
EMIF1 & EMIF2 clock enabled are controlled only from
CPU1.PCLKCR1 register.
Reset type: SYSRSn
0 EMIF1 R/W 0h EMIF1 Clock Enable bit:
Notes:
[1] These bits are not used (R/W) in CPU2.PCLKCR1 register.
EMIF1 & EMIF2 clock enabled are controlled only from
CPU1.PCLKCR1 register.
Reset type: SYSRSn
Notes:
[1] This bit is not used (R/W) in CPU2.PCLKCR11 register. USB_A
clock enabled is controlled only from CPU1.PCLKCR11 register
Reset type: SYSRSn
15-2 RESERVED R=0 0h Reserved
1 McBSP_B R/W 0h McBSP_B Clock Enable bit:
Notes:
[1]] This bit also affects the uPP message RAM wrapper associated
with the respective uPP module
[2] This bit is not used (R/W) in CPU2.PCLKCR12 register. UPP_A
clock enabled is controlled only from CPU1.PCLKCR12 register
Reset type: SYSRSn
Notes:
[1] This bit is reserved in the register mapped to CPU2
Reset type: raw-XRSn
30-18 RESERVED R=0 0h Reserved
17-16 M0M1MODE R/W 0h These bit control the state of CPU1's and CPU2's M0 & M1
memories when Device goes into HIB mode.
[2] These bits take effect only when device goes into HIB mode. If
the device is not in HIB mode, the value in this bit doesn't control the
state of CPU1's and CPU2's M0 & M1 memories
Reset type: PORn
15 WDINTE R/W 0h When this bit is set to 1, it enables the watchdog interrupt signal to
wake the device from STANDBY mode.
Note:
[1] To use this signal, the user must also enable the WDINTn signal
using the WDENINT bit in the SCSR register. This signal will not
wake the device from HALT mode because the clock to watchdog
module is turned off
Reset type: SYSRSn
14-8 RESERVED R=0 0h Reserved
000000 = 2 OSCCLKs
000001 = 3 OSCCLKs
......
111111 = 65 OSCCLKs
Note:
[1] The CPU Timer2s Clock sync logic detects an input clock edge
when configured for any clock source other than SYSCLK and
generates an appropriate clock pulse to the CPU timer2. If SYSCLK
is approximately the same or less then the input clock source, then
the user would need to configure the pre-scale value such that
SYSCLK is at least twice as fast as the pre-scaled value.
[2] Pre-scaler is bypassed if SYSCLK is selected as the source of
CPU Timer 2 in TMR2CLKSRCSEL of TMR2CLKCTL.
Reset type: SYSRSn
To know the exact cause of NMI after the reset, software needs to
read CPU1/2.NMISHDFLG registers
Reset type: PORn
2 WDRSn R/W=1 0h If this bit is set, indicates that the device was reset by WDRSn.
Complex bit access types are encoded to fit into small table cells. Table 2-195 shows the codes that are
used for access types in this section.
Complex bit access types are encoded to fit into small table cells. Table 2-198 shows the codes that are
used for access types in this section.
Complex bit access types are encoded to fit into small table cells. Table 2-206 shows the codes that are
used for access types in this section.
Complex bit access types are encoded to fit into small table cells. Table 2-214 shows the codes that are
used for access types in this section.
1111 : CSM password locations in OTP are not protected and can
be read from debugger as well as code running from anywhere.
Other Value : CSM password locations in OTP are protected and
can't be read without unlocking CSM of that zone.
Reset type: SYSRSn
3-0 RESERVED R 0h Reserved
Complex bit access types are encoded to fit into small table cells. Table 2-229 shows the codes that are
used for access types in this section.
1111 : CSM password locations in OTP are not protected and can
be read from debugger as well as code running from anywhere.
Other Value : CSM password locations in OTP are protected and
can't be read without unlocking CSM of that zone.
Reset type: SYSRSn
3-0 RESERVED R 0h Reserved
Complex bit access types are encoded to fit into small table cells. Table 2-244 shows the codes that are
used for access types in this section.
00 : Sector is in-accessible
01 : Sector belongs to Zone1.
10 : Sector belongs to Zone2.
11: Sector is un-secure and code running in both zone have full
access to it.
Reset type: SYSRSn
25-24 STATUS_SECTM R 0h Reflects the status of flash sector M.
00 : Sector is in-accessible
01 : Sector belongs to Zone1.
10 : Sector belongs to Zone2.
11: Sector is un-secure and code running in both zone have full
access to it.
Reset type: SYSRSn
23-22 STATUS_SECTL R 0h Reflects the status of flash sector L.
00 : Sector is in-accessible
01 : Sector belongs to Zone1.
10 : Sector belongs to Zone2.
11: Sector is un-secure and code running in both zone have full
access to it.
Reset type: SYSRSn
00 : Sector is in-accessible
01 : Sector belongs to Zone1.
10 : Sector belongs to Zone2.
11: Sector is un-secure and code running in both zone have full
access to it.
Reset type: SYSRSn
19-18 STATUS_SECTJ R 0h Reflects the status of flash sector J.
00 : Sector is in-accessible
01 : Sector belongs to Zone1.
10 : Sector belongs to Zone2.
11: Sector is un-secure and code running in both zone have full
access to it.
Reset type: SYSRSn
17-16 STATUS_SECTI R 0h Reflects the status of flash sector I.
00 : Sector is in-accessible
01 : Sector belongs to Zone1.
10 : Sector belongs to Zone2.
11: Sector is un-secure and code running in both zone have full
access to it.
Reset type: SYSRSn
15-14 STATUS_SECTH R 0h Reflects the status of flash sector H.
00 : Sector is in-accessible
01 : Sector belongs to Zone1.
10 : Sector belongs to Zone2.
11: Sector is un-secure and code running in both zone have full
access to it.
Reset type: SYSRSn
13-12 STATUS_SECTG R 0h Reflects the status of flash sector G.
00 : Sector is in-accessible
01 : Sector belongs to Zone1.
10 : Sector belongs to Zone2.
11: Sector is un-secure and code running in both zone have full
access to it.
Reset type: SYSRSn
11-10 STATUS_SECTF R 0h Reflects the status of flash sector F.
00 : Sector is in-accessible
01 : Sector belongs to Zone1.
10 : Sector belongs to Zone2.
11: Sector is un-secure and code running in both zone have full
access to it.
Reset type: SYSRSn
9-8 STATUS_SECTE R 0h Reflects the status of flash sector E.
00 : Sector is in-accessible
01 : Sector belongs to Zone1.
10 : Sector belongs to Zone2.
11: Sector is un-secure and code running in both zone have full
access to it.
Reset type: SYSRSn
00 : Sector is in-accessible
01 : Sector belongs to Zone1.
10 : Sector belongs to Zone2.
11: Sector is un-secure and code running in both zone have full
access to it.
Reset type: SYSRSn
5-4 STATUS_SECTC R 0h Reflects the status of flash sector C.
00 : Sector is in-accessible
01 : Sector belongs to Zone1.
10 : Sector belongs to Zone2.
11: Sector is un-secure and code running in both zone have full
access to it.
Reset type: SYSRSn
3-2 STATUS_SECTB R 0h Reflects the status of flash sector B.
00 : Sector is in-accessible
01 : Sector belongs to Zone1.
10 : Sector belongs to Zone2.
11: Sector is un-secure and code running in both zone have full
access to it.
Reset type: SYSRSn
1-0 STATUS_SECTA R 0h Reflects the status of flash sector A.
00 : Sector is in-accessible
01 : Sector belongs to Zone1.
10 : Sector belongs to Zone2.
11: Sector is un-secure and code running in both zone have full
access to it.
Reset type: SYSRSn
00 : CLA is in-accessible
01 : CLA belongs to Zone1.
10 : CLA belongs to Zone2.
11: CLA is un-secure and code running in both zone have full access
to it.
Reset type: SYSRSn
27-16 RESERVED R 0h Reserved
15-14 STATUS_RAM7 R 0h Reflects the status of D1 RAM.
00 : RAM is in-accessible
01 : RAM belongs to Zone1.
10 : RAM belongs to Zone2.
11: RAM is un-secure and code running in both zone have full
access to it.
Reset type: SYSRSn
13-12 STATUS_RAM6 R 0h Reflects the status of D0 RAM.
00 : RAM is in-accessible
01 : RAM belongs to Zone1.
10 : RAM belongs to Zone2.
11: RAM is un-secure and code running in both zone have full
access to it.
Reset type: SYSRSn
00 : RAM is in-accessible
01 : RAM belongs to Zone1.
10 : RAM belongs to Zone2.
11: RAM is un-secure and code running in both zone have full
access to it.
Reset type: SYSRSn
9-8 STATUS_RAM4 R 0h Reflects the status of LS4 RAM.
00 : RAM is in-accessible
01 : RAM belongs to Zone1.
10 : RAM belongs to Zone2.
11: RAM is un-secure and code running in both zone have full
access to it.
Reset type: SYSRSn
7-6 STATUS_RAM3 R 0h Reflects the status of LS3 RAM.
00 : RAM is in-accessible
01 : RAM belongs to Zone1.
10 : RAM belongs to Zone2.
11: RAM is un-secure and code running in both zone have full
access to it.
Reset type: SYSRSn
5-4 STATUS_RAM2 R 0h Reflects the status of LS2 RAM.
00 : RAM is in-accessible
01 : RAM belongs to Zone1.
10 : RAM belongs to Zone2.
11: RAM is un-secure and code running in both zone have full
access to it.
Reset type: SYSRSn
3-2 STATUS_RAM1 R 0h Reflects the status of LS1 RAM.
00 : RAM is in-accessible
01 : RAM belongs to Zone1.
10 : RAM belongs to Zone2.
11: RAM is un-secure and code running in both zone have full
access to it.
Reset type: SYSRSn
1-0 STATUS_RAM0 R 0h Reflects the status of LS0 RAM.
00 : RAM is in-accessible
01 : RAM belongs to Zone1.
10 : RAM belongs to Zone2.
11: RAM is un-secure and code running in both zone have full
access to it.
Reset type: SYSRSn
Complex bit access types are encoded to fit into small table cells. Table 2-249 shows the codes that are
used for access types in this section.
Complex bit access types are encoded to fit into small table cells. Table 2-279 shows the codes that are
used for access types in this section.