SPRS867A February   2013  – August 2016 TMS320DM369

PRODUCTION DATA.  

  1. 1TMS320DM369 Digital Media System-on-Chip (DMSoC)
    1. 1.1 Features
    2. 1.2 Applications
    3. 1.3 Description
    4. 1.4 Functional Block Diagram
  2. 2Revision History
  3. 3Device Overview
    1. 3.1 Device Comparison
    2. 3.2 Device Characteristics
    3. 3.3 Device Compatibility
    4. 3.4 ARM Subsystem Overview
      1. 3.4.1  Components of the ARM Subsystem
      2. 3.4.2  ARM926EJ-S RISC CPU
      3. 3.4.3  CP15
      4. 3.4.4  MMU
      5. 3.4.5  Caches and Write Buffer
      6. 3.4.6  Tightly Coupled Memory (TCM)
      7. 3.4.7  Advanced High-performance Bus (AHB)
      8. 3.4.8  Embedded Trace Macrocell (ETM) and Embedded Trace Buffer (ETB)
      9. 3.4.9  ARM Memory Mapping
        1. 3.4.9.1 ARM Internal Memories
        2. 3.4.9.2 External Memories
      10. 3.4.10 Peripherals
      11. 3.4.11 ARM Interrupt Controller (AINTC)
    5. 3.5 System Control Module
    6. 3.6 Power Management
    7. 3.7 Memory Map Summary
    8. 3.8 Pin Assignments
      1. 3.8.1 Pin Map (Bottom View)
    9. 3.9 Terminal Functions
  4. 4Device Configurations
    1. 4.1 System Module Registers
    2. 4.2 Boot Modes
      1. 4.2.1 Boot Modes Overview
    3. 4.3 Device Clocking
      1. 4.3.1 Overview
      2. 4.3.2 PLL Controller Module
      3. 4.3.3 PLLC1
      4. 4.3.4 PLLC2
      5. 4.3.5 Processing, Video, EDMA and DDR EMIF Subsystems Maximum Operating Frequencies
      6. 4.3.6 PLL Controller Clocking Configurations Examples
      7. 4.3.7 Peripheral Clocking Considerations
    4. 4.4 Power and Sleep Controller (PSC)
    5. 4.5 Pin Multiplexing
    6. 4.6 Device Reset
    7. 4.7 Default Device Configurations
      1. 4.7.1 Device Configuration Pins
      2. 4.7.2 PLL Configuration
      3. 4.7.3 Power Domain and Module State Configuration
      4. 4.7.4 ARM Boot Mode Configuration
      5. 4.7.5 AEMIF Configuration
        1. 4.7.5.1 AEMIF Pin Configuration
        2. 4.7.5.2 AEMIF Timing Configuration
      6. 4.7.6 Oscillator Frequency Configuration
    8. 4.8 Debugging Considerations
      1. 4.8.1 Pullup/Pulldown Resistors
  5. 5System Interconnect
  6. 6Device Operating Conditions
    1. 6.1 Electrical Characteristics Over Recommended Ranges of Supply Voltage and Operating Case Temperature (Unless Otherwise Noted)
  7. 7Peripheral Information and Electrical Specifications
    1. 7.1  Parameter Information Device-Specific Information
      1. 7.1.1 Signal Transition Levels
      2. 7.1.2 Timing Parameters and Board Routing Analysis
    2. 7.2  Recommended Clock and Control Signal Transition Behavior
    3. 7.3  Power Supplies
    4. 7.4  Power-Supply Sequencing
      1. 7.4.1 Simple Power-On and Power-Off Method
      2. 7.4.2 Restricted Power-On and Power-Off Method
      3. 7.4.3 Power-Supply Design Considerations
      4. 7.4.4 Power-Supply Decoupling
    5. 7.5  Reset
      1. 7.5.1 Reset Electrical Data/Timing
    6. 7.6  Oscillators and Clocks
      1. 7.6.1 MXI1 Oscillator
      2. 7.6.2 Clock PLL Electrical Data/Timing (Input and Output Clocks)
      3. 7.6.3 PRTCSS Oscillator
      4. 7.6.4 PRTCSS Electrical Data/Timing
    7. 7.7  Power Management and Real Time Clock Subsystem (PRTCSS)
      1. 7.7.1 PRTCSS Peripheral Register Description
    8. 7.8  General-Purpose Input/Output (GPIO)
      1. 7.8.1 GPIO Peripheral Register Description
      2. 7.8.2 GPIO Peripheral Input/Output Electrical Data/Timing
      3. 7.8.3 GPIO Peripheral External Interrupts Electrical Data/Timing
    9. 7.9  EDMA Controller
      1. 7.9.1 EDMA Channel Synchronization Events
      2. 7.9.2 EDMA Peripheral Register Description
    10. 7.10 External Memory Interface (EMIF)
      1. 7.10.1 Asynchronous EMIF (AEMIF)
        1. 7.10.1.1 NAND (NAND, SmartMedia, xD)
        2. 7.10.1.2 OneNAND
        3. 7.10.1.3 EMIF Peripheral Register Descriptions
        4. 7.10.1.4 AEMIF Electrical Data/Timing
      2. 7.10.2 DDR2/mDDR Memory Controller
      3. 7.10.3 DDR2/mDDR Memory Controller Electrical Data/Timing
        1. 7.10.3.1 DDR2/mDDR Routing Specifications
          1. 7.10.3.1.1  DDR2/mDDR Interface
          2. 7.10.3.1.2  DDR2/mDDR Interface Schematic
          3. 7.10.3.1.3  Compatible JEDEC DDR2/mDDR Devices
          4. 7.10.3.1.4  PCB Stack Up
          5. 7.10.3.1.5  Placement
          6. 7.10.3.1.6  DDR2/mDDR Keep Out Region
          7. 7.10.3.1.7  Bulk Bypass Capacitors
          8. 7.10.3.1.8  High-Speed Bypass Capacitors
          9. 7.10.3.1.9  Net Classes
          10. 7.10.3.1.10 DDR2/mDDR Signal Termination
          11. 7.10.3.1.11 VREF Routing
          12. 7.10.3.1.12 DDR2/mDDR CK and ADDR_CTRL Routing
    11. 7.11 MMC/SD
      1. 7.11.1 MMC/SD Peripheral Register Description
      2. 7.11.2 MMC/SD Electrical Data/Timing
    12. 7.12 Video Processing Subsystem (VPSS) Overview
      1. 7.12.1 Video Processing Front-End (VPFE)
        1. 7.12.1.1 Image Sensor Interface (ISIF)
        2. 7.12.1.2 The Image Pipe Interface (IPIPEIF)
        3. 7.12.1.3 Image Pipe - Hardware Image Signal Processor (IPIPE)
        4. 7.12.1.4 Hardware 3A (H3A)
        5. 7.12.1.5 Face Detection Module
        6. 7.12.1.6 VPFE Electrical Data/Timing
      2. 7.12.2 Video Processing Back-End (VPBE)
        1. 7.12.2.1 On-Screen Display (OSD)
        2. 7.12.2.2 Video Encoder / Digital LCD Controller (VENC/DLCD)
        3. 7.12.2.3 VPBE Electrical Data/Timing
        4. 7.12.2.4 High-Definition (HD) DACs and Video Buffer Electrical Data/Timing
          1. 7.12.2.4.1 HD DACs-Only Option
          2. 7.12.2.4.2 DAC With Video Buffer Option
    13. 7.13 USB2.0
      1. 7.13.1 USB Peripheral Register Description
      2. 7.13.2 USB2.0 Electrical Data/Timing
    14. 7.14 Universal Asynchronous Receiver/Transmitter (UART)
      1. 7.14.1 UART Peripheral Register Description
      2. 7.14.2 UART Electrical Data/Timing
    15. 7.15 Serial Port Interface (SPI)
      1. 7.15.1 SPI Peripheral Register Description
      2. 7.15.2 SPI Electrical Data/Timing
        1. 7.15.2.1 Master Mode — General
        2. 7.15.2.2 Slave Mode — General
        3. 7.15.2.3 Master Mode — Additional
        4. 7.15.2.4 Slave Mode — Additional
    16. 7.16 Inter-Integrated Circuit (I2C)
      1. 7.16.1 I2C Peripheral Register Description
      2. 7.16.2 I2C Electrical Data/Timing
        1. 7.16.2.1 Inter-Integrated Circuits (I2C) Timing
    17. 7.17 Multichannel Buffered Serial Port (McBSP)
      1. 7.17.1 McBSP Peripheral Register Description
      2. 7.17.2 McBSP Electrical Data/Timing
        1. 7.17.2.1 multichannel Buffered Serial Port (McBSP) Timing
    18. 7.18 Timer
      1. 7.18.1 Timer Peripheral Register Description
      2. 7.18.2 Timer Electrical Data/Timing
    19. 7.19 Pulse Width Modulator (PWM)
      1. 7.19.1 PWM Peripheral Register Description
      2. 7.19.2 PWM0/1/2/3 Electrical/Timing Data
    20. 7.20 Real Time Out (RTO)
      1. 7.20.1 Real Time Out (RTO) Peripheral Register Description
      2. 7.20.2 RTO Electrical/Timing Data
    21. 7.21 Ethernet Media Access Controller (EMAC)
      1. 7.21.1 EMAC Peripheral Register Description
      2. 7.21.2 Ethernet Media Access Controller (EMAC) Electrical Data/Timing
    22. 7.22 Management Data Input/Output (MDIO)
      1. 7.22.1 MDIO Peripheral Register Description
      2. 7.22.2 Management Data Input/Output (MDIO) Electrical Data/Timing
    23. 7.23 Host-Port Interface (HPI) Peripheral
      1. 7.23.1 HPI Device-Specific Information
      2. 7.23.2 HPI Bus Master
      3. 7.23.3 HPI Peripheral Register Description
      4. 7.23.4 HPI Electrical Data/Timing
    24. 7.24 Key Scan
      1. 7.24.1 Key Scan Peripheral Register Description
        1. 7.24.1.1 Key Scan Registers
      2. 7.24.2 Key Scan Electrical Data/Timing
    25. 7.25 Analog-to-Digital Converter (ADC)
      1. 7.25.1 Analog-to-Digital Converter (ADC) Peripheral Register Description
        1. 7.25.1.1 Analog-to-Digital Converter (ADC) Interface Registers
    26. 7.26 Voice Codec
      1. 7.26.1 Voice Codec Register Description
        1. 7.26.1.1 Voice Codec Registers
    27. 7.27 IEEE 1149.1 JTAG
      1. 7.27.1 JTAG Register Description
      2. 7.27.2 JTAG Test-Port Electrical Data/Timing
  8. 8Device and Documentation Support
    1. 8.1 Development Tools
    2. 8.2 Device Nomenclature
    3. 8.3 Documentation Support
    4. 8.4 Community Resources
    5. 8.5 Trademarks
    6. 8.6 Electrostatic Discharge Caution
    7. 8.7 Glossary
  9. 9Mechanical Packaging and Orderable Information
    1. 9.1 Packaging Information
    2. 9.2 Thermal Data for ZCE

Package Options

Refer to the PDF data sheet for device specific package drawings

Mechanical Data (Package|Pins)
  • ZCE|338
Thermal pad, mechanical data (Package|Pins)
Orderable Information

4 Device Configurations

This section provides a detailed overview of the device.

4.1 System Module Registers

The system module includes status and control registers for configuration of the device. Brief descriptions of the various registers are shown in Table 4-1. For more information on the System Module registers, see the TMS320DM36x DMSoC ARM Subsystem User's Guide (SPRUFG5).

Table 4-1 System Module Register Memory Map

HEX ADDRESS REGISTER ACRONYM DESCRIPTION(1)
0x01C4 0000 PINMUX0 Pin Mux 0 (Video In) Pin Mux Register
0x01C4 0004 PINMUX1 Pin Mux 1 (Video Out) Pin Mux Register
0x01C4 0008 PINMUX2 Pin Mux 2 (AEMIF) Pin Mux Register
0x01C4 000C PINMUX3 Pin Mux 3 (GIO/Misc) Pin Mux Register
0x01C4 0010 PINMUX4 Pin Mux 4 (Misc) Pin Mux Register
0x01C4 0014 BOOTCFG Boot Configuration
0x01C4 0018 ARM_INTMUX Multiplexing Control for Interrupts
0x01C4 001C EDMA_EVTMUX Multiplexing Control for EDMA Events
0x01C4 0020 DDR_SLEW DDR Slew Rate
0x01C4 0024 UHPICTL UHPI Control
0x01C4 0028 DEVICE_ID Device ID
0x01C4 002C VDAC_CONFIG Video DAC Configuration
0x01C4 0030 TIMER64_CTL Timer64 Input Control
0x01C4 0034 USB_PHY_CTL USB PHY Control
0x01C4 0038 MISC Miscellaneous Control
0x01C4 003C MSTPRI0 Master Priorities Register 0
0x01C4 0040 MSTPRI1 Master Priorities Register 1
0x01C4 0044 VPSS_CLK_CTL VPSS Clock Mux Control
0x01C4 0048 PERI_CLKCTL Peripheral Clock Control
0x01C4 004C DEEPSLEEP DEEPSLEEP Control
0x01C4 0050 - Reserved
0x01C4 0054 DEBOUNCE0 Debounce for GIO0 Input
0x01C4 0058 DEBOUNCE1 Debounce for GIO1 Input
0x01C4 005C DEBOUNCE2 Debounce for GIO2 Input
0x01C4 0060 DEBOUNCE3 Debounce for GIO3 Input
0x01C4 0064 DEBOUNCE4 Debounce for GIO4 Input
0x01C4 0068 DEBOUNCE5 Debounce for GIO5 Input
0x01C4 006C DEBOUNCE6 Debounce for GIO6 Input
0x01C4 0070 DEBOUNCE7 Debounce for GIO7 Input
0x01C4 0074 VTPIOCR VTP IO Control
0x01C4 0078 PUPDCTL0 IO cell pullup/down on/off control #0
0x01C4 007C PUPDCTL1 IO cell pullup/down on/off control #1
0x01C4 0080 HDVICPBT HDVICP Boot Register
0x01C4 0084 PLL1_CONFIG PLL1 Configuration Register
0x01C4 0088 PLL2_CONFIG PLL2 Configuration Register
(1) For more details on the system module registers, see the TMS320DM36x DMSoC ARM Subsystem User's Guide (SPRUFG5).

4.2 Boot Modes

The ARM can boot from either Asynchronous EMIF (OneNand/NOR) or from ARM ROM, as determined by the setting of the device configuration pins BTSEL[2:0]. The boot selection pins (BTSEL[2:0]) determine the ARM boot process. After reset (POR, warm reset, or max reset), ARM program execution begins in ARM ROM at 0x0000: 8000, except when BTSEL[2:0] = 001, indicating AEMIF (OneNand/NOR) flash boot.

4.2.1 Boot Modes Overview

The ARM ROM boot loader (RBL) executes when the BTSEL[2:0] pins indicate a condition other than the normal ARM EMIF boot.

  • If BTSEL[2:0] = 001 - Asynchronous EMIF boot mode (NOR or OneNAND). This mode is handled by hardware control and does not involve the ROM. In the case of OneNAND, the user is responsible for putting any necessary boot code in the OneNAND's boot page. This code shall configure the AEMIF module for the OneNAND device. After the AEMIF module is configured, booting will continue immediately after the OneNAND’s boot page with the AEMIF module managing pages thereafter.
  • The RBL supports 7 distinct boot modes:
    • BTSEL[2:0] = 000 - NAND Boot mode
    • BTSEL[2:0] = 010 - MMC0/SD0 Boot mode
    • BTSEL[2:0] = 011 - UART0 Boot mode
    • BTSEL[2:0] = 100 - USB Boot mode
    • BTSEL[2:0] = 101 - SPI0 Boot mode
    • BTSEL[2:0] = 110 - EMAC Boot mode
    • BTSEL[2:0] = 111 - HPI Boot mode
  • If NAND boot fails, then MMC/SD mode is tried.
  • If MMC/SD boot fails, then MMC/SD boot is tried again.
  • If UART boot fails, then UART boot is tried again.
  • If USB boot fails, then USB boot is tried again.
  • If SPI boot fails, then SPI boot is tried again.
  • If EMAC boot fails, then EMAC boot is tried again.
  • If HPI boot fails, then HPI boot is tried again.
  • RBL shall update boot status (PASS/FAIL) in MISC register bits 8 and 9 in System control module.
  • ARM ROM Boot - NAND Mode
    • No support for a full firmware boot. Instead, copies a second stage user boot loader (UBL) from NAND flash to ARM internal RAM (AIM) and transfers control to the user-defined UBL.
    • Support for NAND with page sizes up to 4096 bytes.
    • Support for magic number error detection and retry (up to 24 times) when loading UBL
    • Support for up to 30KB UBL (32KB IRAM - ~2KB for RBL stack)
    • Optional, user-selectable, support for use of DMA and I-cache during RBL execution (i.e.,while loading UBL)
    • Supports booting from 8-bit NAND devices (16-bit NAND devices are not supported)
    • Uses/Requires 4-bit HW ECC (NAND devices with ECC requirements ≤ 4 bits per 512 bytes are supported)
    • Supports NAND flash that requires chip select to stay low during the tR read time
  • ARM ROM Boot - MMC/SD Mode
    • No support for a full firmware boot. Instead, copies a second stage User Boot Loader (UBL) from MMC/SD to ARM Internal RAM (AIM) and transfers control to the user software.
    • Support for MMC/SD Native protocol (MMC/SD SPI protocol is not supported)
    • Support for descriptor error detection and retry (up to 24 times) when loading UBL
    • Support for up to 30KB UBL (32KB - ~2KB for RBL stack)
    • SDHC boot supported by RBL
  • ARM ROM Boot - UART mode
    • If the state of BTSEL[2:0] pins at reset is 011, then the UART boot mode executes. This mode enables a small program, referred to here as a user boot loader (UBL), to be downloaded to the on-chip ARM internal RAM via the on-chip serial UART and executed. A host program, (referred to as serial host utility program), manages the interaction with RBL and provides a means for operator feedback and input. The UART boot mode execution assumes the following UART settings: 24 MHz reference clock, Time-Out 500 ms, one-shot Serial RS-232 port 115.2 Kbps, 8-bit, no parity, one stop bit Command, data, and checksum format Everything sent from the host to the device UART RBL must be in ASCII format
    • No support for a full firmware boot. Instead, loads a second stage user boot loader (UBL) via UART to ARM internal RAM (AIM) and transfers control to the user software.
    • Support for up to 30KB UBL (32KB - ~2KB for RBL stack)
  • ARM ROM Boot – USB Mode
    • No support for a full firmware boot. Instead, loads a second stage User Boot Loader (UBL) via USB to ARM Internal RAM (AIM) and transfers control to the users software.
  • ARM ROM Boot – SPI Mode
    • The device will copy UBL to ARM Internal RAM (AIM) via SPI interface from a SPI peripheral like SPI EEPROM. RBL will then transfer control to the UBL.
  • ARM ROM Boot – EMAC Mode
    • The device will send a boot request packet and the host/server will respond with the boot packets. RBL will wait for all boot packets to arrive and then transfer control to the UBL which is received via boot packets. In EMAC boot mode an I2C EEPROM or SPI EEPROM is necessary for programming EMAC descriptor (including EMAC address for the device)
    • Note: If a magic number is not found in the EEPROM, then the EMAC boot mode will use a default MAC address. In this case, there will be no magic number support.

  • ARM ROM Boot – HPI Mode
    • The Host will copy UBL to ARM Internal RAM (AIM) via HPI interface and notify the ROM bootloader after copy is finished. RBL will then transfer control to the UBL.

The general boot sequence is shown in Figure 4-1. For more information, see the TMS320DM36x DMSoC ARM Subsystem User's Guide (SPRUFG5).

TMS320DM369 bootmodes_prs457.gif Figure 4-1 Boot Mode Functional Block Diagram

4.3 Device Clocking

4.3.1 Overview

The device requires one primary reference clock. The reference clock frequency may be generated either by crystal input or by external oscillator. The reference clock is the clock at the pins named MXI1/MXO1, and which drives two separate PLL controllers (PLLC1 and PLLC2). PLLC1 generates the clocks required by the ARM, EDMA, VPSS and the rest of the peripherals. PLL2 generates the clock required by the DDR PHY interface and is also capable of providing clocks to the ARM, USB, Video, or Voice Codec modules and a flexible clocking option. Figure 4-2 represents the clocking architecture for the ARM subsystem. For more information on device clocking and the system PLL controller, see the TMS320DM36x DMSoC ARM Subsystem User's Guide (SPRUFG5).

TMS320DM369 cl_arch_prufg5.gif Figure 4-2 Clocking Architecture

4.3.2 PLL Controller Module

Two PLL controllers provide clocks to different components of the chip. The PLL controller 1 (PLLC1) provides clocks to most of the components of the chip. The PLL controller 2 (PLLC2) provides clocks to the DDR PHY and is also capable of providing clocks to the ARM, USB, VPSS or the Voice Codec modules instead as well.

As a module, the PLL controller provides the following:

  • Glitch-free transitions (on changing PLL settings)
  • Domain clocks alignment
  • Clock gating
  • PLL bypass
  • PLL power down

The various clock outputs given by the PLL controller are as follows:

  • Domain clocks: SYSCLKn
  • Bypass domain clock: SYSCLKBP
  • Auxiliary clock from reference clock: AUXCLK

Various dividers that can be used are as follows:

  • Pre-PLL divider: PREDIV
  • Post-PLL divider: POSTDIV
  • SYSCLK divider: PLLDIV1, …, PLLDIVn
  • SYSCLKBP divider: BPDIV

The Multiplier values supported are handled by:

  • PLL multiplier control: PLLM

Notes:

  • PLLCxSYSCLKy is used to denote post divide clock output SYSCLKy from PLL controller x
  • 'x', which denotes PLL Controller number, can assume values 1 and 2
  • 'y', which denotes post divide clock outputs, can assume values 1 to 9 in case of PLLC1 and 1 to 5 in case of PLLC2

The PLL Controllers for PLL1 and PLL2 are described in detail in the TMS320DM36x DMSoC ARM Subsystem User's Guide (SPRUFG5).

4.3.3 PLLC1

There are two PLLs on the device, and they are independently controlled. PLLC1 generates the frequencies needed for the ARM, Video Processing Sub System (VPSS), MJCP coprocessor block, EDMA, and peripherals.

The reference clock for both PLLs is the single crystal input. Both PLLs will be of the same type . It should be noted that the USB2.0 PHY contains a third PLL embedded within it. The following list, Table 4-2, and Figure 4-3 describe the customization of PLLC1.

  • Provides primary system clock
  • Software configurable
  • Accepts clock input or internal oscillator input
  • PLL pre-divider value is programmable
  • PLL multiplier value is programmable
  • PLL post-divider value is programmable. See the data manual for all supported configurations.
  • Only SYSCLK [9:1] are used

Table 4-2 PLLC1 Output Clocks

PLLC1SYSCLKy Used By PLLDIV Divider
PLLC1SYSCLK1 USB reference clock(1) Programmable
PLLC1SYSCLK2 ARM926EJ-S, HDVICP block clock (1) Programmable
PLLC1SYSCLK3 MJCP and HDVICP bus interface clock Programmable
PLLC1SYSCLK4 Configuration bus clock, peripheral system interfaces, EDMA Programmable
PLLC1SYSCLK5 VPSS clock Programmable
PLLC1SYSCLK6 VENC clock(1) Programmable
PLLC1SYSCLK7 DDR 2x clock(1) Programmable
PLLC1SYSCLK8 MMC/SD0 clock Programmable
PLLC1SYSCLK9 CLKOUT2 Programmable
PLLC1OBSCLK CLKOUT0 Programmable
PLLC1SYSCLKBP USB reference clock(1) Programmable
(1) These clock outputs are multiplexed with other clocks.
TMS320DM369 pll_topology_prufg5.gif Figure 4-3 PLLC1 Configuration

4.3.4 PLLC2

PLLC2 provides the USB reference clock, ARM926EJ-S, DDR 2x clock, Voice Codec clock and VENC 27MHz, 74.25MHz clock. The PLLC2 functionality can be programmed via the PLLC2 registers. The following list, Table 4-3, and Figure 4-4 describe the customization of PLLC2.

The PLLC2 customization includes the following features:

  • PLLC2 provides DDR PHY, USB reference clock , ARM926EJ-S clock, VENC 27MHz, 74.25Hz clock and Voice codec clock
  • Software configurable
  • Accepts clock input or internal oscillator input (the same input as PLLC1)
  • PLL pre-divider value is programmable
  • PLL multiplier value is programmable
  • PLL post-divider value is programmable
  • Only SYSCLK [5:1] are used

Table 4-3 PLLC2 Output Clocks

PLLC2SYSCLKy Used by PLLDIV Divider
PLLC2SYSCLK1 USB reference clock(1) Programmable
PLLC2SYSCLK2 ARM926EJ-S, HDVICP block clock (1) Programmable
PLLC2SYSCLK3 DDR 2x clock (1) Programmable
PLLC2SYSCLK4 Voice Codec clock Programmable
PLLC2SYSCLK5 VENC clock (1) Programmable
PLLC2OBSCLK CLKOUT1 Programmable
(1) These clock outputs are multiplexed with other clocks.
TMS320DM369 pll2_conf_prufg5.gif Figure 4-4 PLLC2 Configuration

4.3.5 Processing, Video, EDMA and DDR EMIF Subsystems Maximum Operating Frequencies

shows the maximum speeds supported for each of the major blocks supported on the different speed grade devices.

Table 4-4 Processing, Video, EDMA and DDR EMIF Subsystems Maximum Operating Frequencies

DM369
ARM926 RISC 432 MHz
coprocessor (HDVICP) 340 MHz
coprocessor (MJCP) 340 MHz
DDR2 340 MHz
mDDR 168 MHz
VPSS Logic Block 340 MHz
Peripheral System Bus and EDMA 170 MHz
VPBE-VENC 74.25 MHz
VPFE 120 MHz

4.3.6 PLL Controller Clocking Configurations Examples

Like the DM365, the DM369 uses two PLLs to generate the two fundamental clocks used on the device. These two clocks feed two divider blocks which generate all of the functional clocks used by the peripherals and cores in the DM369. The ARM926 and DDR peripheral in the DM369 are limited to a maximum clock frequency of 432 MHz and 340 MHz respectively. There are some peripheral clocks on the DM369 which are required to operate at a specific frequency by functional specification or convention. These frequencies are detailed in Table 4-5.

Table 4-5 Specific Peripheral Operating Frequencies

Clock Required Frequency (MHz) Reason
VENC (standard definition) 27 required to generate a valid NTSC signal
VENC (high definition) 74.25 required to generate a valid ATSC signal
USB 36, 24, or 19.2 required by the USB peripheral to generate a 48 MHz USB clock
Voice Codec 4.096 required to generate a precise 16 kHz audio sample rate

While it is possible to generate both a 432 MHz and 340 MHz clock with the two PLLs, these two frequencies cannot be divided down to generate all required frequencies from Table 4-5. Several different frequency solutions are required to cover all of these requirements. The different solutions for different input crystal frequencies are listed in the tables below.

The following tables show examples of the PLL combinations that can be supported with DM369. Please see the TMS320DM36x DMSoC ARM Subsystem User's Guide (SPRUFG5) for additional details on special peripherals clocking considerations and for additional PLL controller configuration details.

There are several important points to note from these tables.

  • A 432 MHz functional clock will result in DM369 voice codec sampling frequency of 16.07KHz. The difference of 0.4375% versus 16KHz specification should be acceptable for the majority of audio applications. If the DM369 voice codec is required to operate at precisely 16 kHz then the functional clock can be reduced to achieve precisely that sample frequency but the ARM926 and HDVICP will have to run at a reduced rate resulting in lower video performance.
  • If a 24 MHz input crystal is used it is not possible to generate a 74.25 MHz HD video output clock.
  • If a 19.2 MHz input crystal is used it is not possible to generate a valid 74.25 MHz HD output clock.

Table 4-6 24-MHz Input Crystal Example(2) (3) (5)

PLL1 PLL2 ARM DDR MJCP HDVICP Voice Codec (1) Video Encoder
PLL Output (4)(MHz) (2M/(N+1)) PLL Output (MHz) (2M/(N+1)) 27MHz 74.25MHz
680 170/6 432 18/1 432 340 340 340 1/105 (16.06 kHz) 1/16 -
680 170/6 430.08 448/25 430.08 340 340 340 1/105 - -
(1) The Voice Codec divider value is the combination of the PLL controller 2 SYSCLK4 and Peripheral Clock Control Register PLLDIV2 bit setting divider.
(2) M = PLL controller multiplier. N = PLL controller divider.
(3) All shaded frequencies derive from the PLL2 controller.
(4) PLL Output is calculated by = Oscillator Input * (2M/(N+1)).
(5) PLLC1SYSCLK4 (Configuration bus clock, peripheral system interfaces, EDMA) should be half of the PLLC1SYSCLK3 (MJCP and HDVICP bus interface clock).

Table 4-7 36-MHz Input Crystal Example(2) (3) (5)

PLL1 PLL2 ARM DDR MJCP HDVICP Voice Codec (1) Video Encoder
PLL Output(4) (MHz) (2M/(N+1)) PLL Output (MHz) (2M/(N+1)) 27MHz 74.25MHz
680 510/27 432 12/1 432 340 340 340 1/105 (16.07 kHz) 1/16 -
680 680/27 371.25 330/32 371.25 340 340 340 1/91 (15.936 kHz) - 1/5
(1) The Voice Codec divider value is the combination of the PLL controller 2 SYSCLK4 and Peripheral Clock Control Register PLLDIV2 bit setting divider.
(2) M = PLL controller multiplier. N = PLL controller divider.
(3) All shaded frequencies derive from the PLL2 controller.
(4) PLL Output is calculated by = Oscillator Input * (2M/(N+1)).
(5) PLLC1SYSCLK4 (Configuration bus clock, peripheral system interfaces, EDMA) should be half of the PLLC1SYSCLK3 (MJCP and HDVICP bus interface clock).

Table 4-8 19.2-MHz Input Crystal Example(2) (3)(5)

PLL1 PLL2 ARM DDR MJCP HDVICP Voice Codec (1) Video Encoder
PLL Output(4) (MHz) (2M/(N+1)) PLL Output (MHz) (2M/(N+1)) 27MHz 74.25MHz
679.82 956/27 432 90/4 432 339.91 339.91 339.91 1/105 (16.07 kHz) 1/16 -
679.82 956/27 430.08 112/5 430.08 339.91 339.91 339.91 1/105 - -
(1) The Voice Codec divider value is the combination of the PLL controller 2 SYSCLK4 and Peripheral Clock Control Register PLLDIV2 bit setting divider.
(2) M = PLL controller multiplier. N = PLL controller divider.
(3) All shaded frequencies derive from the PLL2 controller.
(4) PLL Output is calculated by = Oscillator Input * (2M/(N+1)).
(5) PLLC1SYSCLK4 (Configuration bus clock, peripheral system interfaces, EDMA) should be half of the PLLC1SYSCLK3 (MJCP and HDVICP bus interface clock).

Table 4-9 27-MHz Input Crystal Example(2) (3)(5)

PLL1 PLL2 ARM DDR MJCP HDVICP Voice Codec (1) USB Video
Encoder
PLL Output(4) (MHz) (2M/(N+1)) PLL Output (MHz) (2M/(N+1)) 27 MHz 74.25MHz
680 680/27 432 16/1 432 340 340 340 1/105 (16.07 kHz) 1/18 1/16 -
680 680/27 371.25 110/8 371.25 340 340 340 1/91 (15.936 kHz) - - 1/5
(1) The Voice Codec divider value is the combination of the PLL controller 2 SYSCLK4 and Peripheral Clock Control Register PLLDIV2 bit setting divider.
(2) M = PLL controller multiplier. N = PLL controller divider.
(3) All shaded frequencies derive from the PLL2 controller.
(4) PLL Output is calculated by = Oscillator Input * (2M/(N+1)).
(5) PLLC1SYSCLK4 (Configuration bus clock, peripheral system interfaces, EDMA) should be half of the PLLC1SYSCLK3 (MJCP and HDVICP bus interface clock).

For maximum H.264 encode performance the ARM must run at 432 MHz and the DDR at 340 MHz. Any speed decrease to either of these will reduce encode performance. This means that if the ARM speed must be reduced to enable another function it will impact the encode performance.

If USB is required then a 36 MHz, 24 MHz or 19.2 MHz input crystal is preferred as those can support USB at full ARM rate.

If a video output is needed then a 36 MHz, 27 MHz or 24 MHz input crystal should be used. For HD video output it may be preferred to use the EXTCLK input to inject an external 74.25 MHz clock and at the same time operate the ARM at 432 MHz.

4.3.7 Peripheral Clocking Considerations

The device supports several peripherals with special clocking considerations (VPBE, USB, Key Scan, ADC, Voice Codec, MJCP, HDVICP, AUXCLK, DDR2 EMIF). For more detail on these special considerations, see the Peripheral Clocking Considerations section of the TMS320DM36x DMSoC ARM Subsystem User's Guide (SPRUFG5).

4.4 Power and Sleep Controller (PSC)

In the device system, the Power and Sleep Controller (PSC) is responsible for managing transitions of system power on/off, clock on/off, and reset. A block diagram of the PSC is shown in Figure 4-5. Many of the operations of the PSC are transparent to software, such as power-on-reset operations. However, the PSC provides you with an interface to control several important clock and reset operations.

The PSC includes the following features:

  • Manages chip power-on/off, clock on/off, and resets
  • Provides a software interface to:
    • Control module clock ON/OFF
    • Control module resets
  • Supports IcePick emulation features: power, clock, and reset
TMS320DM369 ps_ctr_pruee8.gif Figure 4-5 Power and Sleep Controller (PSC)

For more information on the PSC, see the TMS320DM36x DMSoC ARM Subsystem User's Guide (SPRUFG5).

4.5 Pin Multiplexing

The device makes extensive use of pin multiplexing to accommodate the large number of peripheral functions in the smallest possible package. In order to accomplish this, pin multiplexing is controlled using a combination of hardware configuration (at device reset) and software control. No attempt is made by the hardware to ensure that the proper pin muxing has been selected for the peripherals or interface mode being used, thus proper pin muxing configuration is the responsibility of the board and software designers. An overview of the pin multiplexing is shown in Table 4-10.

All pin multiplexing options are configurable by software via pin mux registers that reside in the System Control Module. The PinMux0 Register controls the Video In muxing, PinMux1 register controls Video Out signals, PinMux2 register controls AEMIF signals, PinMux3 registers control the multiplexing of the GIO signals, the PinMux4 register controls the SPI and MMC/SD0 signals. See the TMS320DM36x DMSoC ARM Subsystem User's Guide (SPRUFG5) for complete descriptions of the pin mux registers.

The device configuration pins are multiplexed with AEMIF pins. Note that the AECFG[2:0] inputs only select the default AEMIF address pin muxing. The number of active address pins may be increased or reduced at any time by modifying the appropriate bits in the PinMux2 control register. After the device configuration pins are sampled at reset, they automatically change to function as AEMIF pins. For more details on the AEMIF default configuration, see Section 4.7.5, AEMIF Configuration.

Table 4-10 Peripheral Pin Mux Overview

Peripheral Muxed With Primary Function Secondary Function Tertiary Function
VPFE (video in) GPIO and SPI3 GPIO VPFE (video in) SPI3
VPBE (video out) GPIO, PWM, and RTO GPIO VPBE (video out) PWM & RTO
AEMIF GPIO AEMIF GPIO
McBSP GPIO GPIO McBSP
MMC/SD0 MMC/SD0
MMC/SD1 GPIO and EMIF GPIO MMC/SD1 EMIF
CLKOUT GPIO GPIO CLKOUT
I2C GPIO GPIO I2C
UART0/UART1 GPIO GPIO UART
SPI0,SPI1,SPI2,SPI4 GPIO GPIO SPI
EMAC GPIO GPIO EXTINT EMAC
HPI AEMIF AEMIF HPI

4.6 Device Reset

There are five types of reset. The types of reset differ by how they are initiated and/or by their effect on the chip. Each type is briefly described in Table 4-11 and further described in the TMS320DM36x DMSoC ARM Subsystem User's Guide (SPRUFG5).

Table 4-11 Reset Types

Type Initiator Effect
POR (Power-On-Reset) RESET pin low and TRST low Total reset of the chip (cold reset).
Activates the POR signal on chip, which is used to reset test/emulation logic.
Warm Reset RESET pin low Resets everything except for test/emulation logic.
ARM emulator stays alive during Warm reset.
Max Reset ARM emulator or Watchdog Timer (WDT) Same effect as warm reset.
System Reset ARM emulator A soft reset.
Soft reset maintains memory contents, and does not affect or reset clocks or power states.
Module Reset ARM software Can independently apply reset to each module, via an MMR.
Intended as a debug tool, and not necessarily for general use.

4.7 Default Device Configurations

After POR, warm reset, and max reset, the chip is in its default configuration. This section highlights the default configurations associated with PLLs, clocks, ARM boot mode, and AEMIF.

Note: Default configuration is the configuration immediately after POR, warm reset, and max reset and just before the boot process begins. The boot ROM updates the configuration. See Section 4.2 for more information on the boot process.

4.7.1 Device Configuration Pins

The device configuration pins are described in Table 4-12. The device configuration pins are latched at reset and allow you to configure all of the following options at reset:

  • ARM Boot Mode
  • Asynchronous EMIF pin configuration

These pins are described further in the following sections.

Note: The device configuration pins are multiplexed with AEMIF pins. After the device configuration pins are sampled at reset, they automatically change to function as AEMIF pins. Pin multiplexing is described in Section 4.5.

Table 4-12 Device Configuration

Device Configuration Input Function Sampled
Pin
Default Setting (by internal
pullup/
pulldown)
BTSEL[2:0] Selects ARM boot mode
000 = Boot from ROM (NAND)
001 = Boot from AEMIF
010 = Boot from ROM (MMC/SD)
011 = Boot from ROM (UART)
100 = Boot from ROM (USB)
101 = Boot from ROM (SPI)
110 = Boot from ROM (EMAC)
111 = Boot from ROM (HPI)
EM_A[13:11] 000
(Boot from ROM - NAND)
AECFG[2:0] AEMIF Configuration(1)
AECFG[2] = '0' for 8-bit AEMIF configuration
AECFG[2] = '1' for 16-bit AEMIF configuration
EM_A[10:8] 000
(8-bit NAND)
OSCCFG Oscillator Configuration
OSCCFG = '0' for mode #1
OSCCFG = '1' for mode #2
GIO81 0
(Mode #1)
(1) Other supported AECFG[2:0] combinations can be found in Table 4-14.

4.7.2 PLL Configuration

After POR, warm reset, and max reset, the PLLs and clocks are set to their default configurations. The PLLs are in bypass mode and disabled by default. This means that the input reference clock at MXI1 (typically 24 MHz) drives the chip after reset. For more information on device clocking, see Section 4.3 . The default state of the PLLs is reflected in the default state of the register bits in the PLLC registers. See the TMS320DM36x DMSoC ARM Subsystem User's Guide (SPRUFG5).

4.7.3 Power Domain and Module State Configuration

Only a subset of modules are enabled after reset by default. Table 4-13 shows which modules are enabled after reset. Table 4-13 shows that the following modules are enabled depending on the sampled state of the device configuration pins. For example, if UART boot mode is BTSEL[2:0] = 011, then the default state of the UART module is enabled. For more information on module configuration, see the TMS320DM36x DMSoC ARM Subsystem User's Guide (SPRUFG5).

Table 4-13 LPSC Assignments and Module Configuration(1)

LPSC/ MODULE NUMBER MODULE NAME BTSEL [2:0]
000 001 010 011 100 101 110 111
ROM (NAND) AEMIF ROM (MMC/SD0) ROM (UART0) ROM (USB) ROM (SPI0) ROM (EMAC) ROM (HPI)
0 EDMA CC On On On On
1 EDMA TC0 On On On On
2 EDMA TC1
3 EDMA TC2
4 EDMA TC3
5 TIMER3
6 SPI1
7 MMC_SD1
8 McBSP
9 USB On
10 PWM3
11 SPI2
12 RTO
13 DDR EMIF
14 AEMIF On On
15 MMC/SD0 On
16 Reserved
17 TIMER4
18 I2C
19 UART0 On
20 UART1
21 UHPI On
22 SPI0 On
23 PWM0
24 PWM1
25 PWM2
26 GPIO
27 TIMER0 On On On On On On On On
28 TIMER1
29 TIMER2 On On On On On On On On
30 SYSTEM On On On On On On On On
31 ARM On On On On On On On On
32 Reserved Reserved Reserved Reserved Reserved Reserved Reserved Reserved Reserved
33 Reserved Reserved Reserved Reserved Reserved Reserved Reserved Reserved Reserved
34 Reserved On On On On On On On On
35 EMULATION On On On On On On On On
36 Reserved Reserved Reserved Reserved Reserved Reserved Reserved Reserved Reserved
37 Reserved Reserved Reserved Reserved Reserved Reserved Reserved Reserved Reserved
38 SPI3
39 SPI4
40 EMAC On
41 RTC On On On On On On On On
42 KEYSCAN
43 ADC
44 Voice Codec
45 VDAC CLKREC
46 VDAC CLK
47 VPSS MASTER
48 Reserved Reserved Reserved Reserved Reserved Reserved Reserved Reserved Reserved
49 Reserved Reserved Reserved Reserved Reserved Reserved Reserved Reserved Reserved
50 MJCP
51 HDVICP
(1) "(Blank)" in the above table indicates module is disabled.

4.7.4 ARM Boot Mode Configuration

The ARM can boot from either Asynchronous EMIF (OneNand/NOR) or from ARM ROM, as determined by the setting of the device configuration pins BTSEL[2:0]. The boot selection pins (BTSEL[2:0]) determine the ARM boot process. After reset (POR, warm reset, or max reset), ARM program execution begins in ARM ROM at 0x0000: 8000, except when BTSEL[2:0] = 001, indicating AEMIF (OneNand/NOR) flash boot.

Boot modes are further described in Section 4.2.

4.7.5 AEMIF Configuration

4.7.5.1 AEMIF Pin Configuration

The input pins AECFG[2:0] determine the AEMIF configuration immediately after reset. Pins that are not assigned to another peripheral and not enabled as address signals become GPIOs. These may be used as ALE and CLE signals for NAND Flash control if booting from internal ROM. If booting from NOR Flash then the appropriate number of address output must be enabled by the AECFG[2:0] inputs at reset. The enabled address signals are always contiguous from EM_BA[1] upwards; bits cannot be skipped. EM_A[0] does not represent the lowest AEMIF address bit. The device has 23 address lines and 2 chip selects with an 8-bit or 16-bit option. The device supports only 8-bit and 16-bit data widths for the AEMIF.

  • 16-bit mode: EM_BA[1] represents the LS address bit (the half-word address) and EM_BA[0] represents address bit (A[14]). The maximum number of address lines pins in 16-bit mode are 23, which include EM_BA[1] + EM_A[0:13] +EM_BA[0] (as pin A[14] via PINMUX2 register) + EM_A[15:20] +EM_A[21] (via PINMUX4 register)
  • Note: Pins EM_A[15:21] are available by programming the PinMux4 register in software after boot, but must be pulled down externally so that valid voltage levels are provided on the full set of address pins during boot time. EM_A[15:21] come out of reset as GPIO pins per the PinMux4 register.

  • 8-bit mode: EM_BA[1:0] represent the 2 LS address bits. Additional selections are available by programming the PinMux2 register in software after boot. The maximum number of address lines in 8-bit mode are 23, which include EM_BA[0:1] + EM_A[0:13] + A[14] (via PINMUX4 register) + EM_A[15:20].
  • Note: Pins EM_A[15:20] are available by programming the PinMux4 register in software after boot, but must be pulled down externally so that valid voltage levels are provided on the full set of address pins during boot time. EM_A[15:20] come out of reset as GPIO pins per the PinMux4 register.

For additional details about the PinMux2 and PinMux4 registers, see the TMS320DM36x DMSoC ARM Subsystem User's Guide (SPRUFG5).

The device's pin-mux control logic allows all of the Asynchronous EMIF address pins to be used as GPIOs. If devices (such as NAND Flash) attached to the AEMIF require less than the 16 address pins provided, then the unused upper-order addresses may be configured as GPIOs. These pins must be configured at reset so that pins being driven by the AEMIF with addresses will not cause bus contention with pins being driven by the system as general purpose inputs.

The AECFG[2:0] value does not affect the operation of the AEMIF module itself, only which of its address bits are seen on the device pins (resulting in the natural ramifications if devices don’t receive all address signals or if contention with general purpose inputs occurs). As shown in Table 4-14, the number of address bits enabled on the AEMIF is selectable from 0 to 16 at boot time, see notes above for additional support of up-to 23 address lines.

Table 4-14 AECFG (Async EMIF Configuration) Coding at Boot Time

000 001 010 100 101 110
GPIO[65] EM_A[14] EM_BA[0] GPIO[65] EM_A[14] EM_BA[0]
GPIO[66] EM_BA[1] EM_BA[1] GPIO[66] EM_BA[1] EM_BA[1]
GPIO[67] EM_A[0] EM_A[0] GPIO[67] EM_A[0] EM_A[0]
EM_A[1] EM_A[1] EM_A[1] EM_A[1] EM_A[1] EM_A[1]
EM_A[2] EM_A[2] EM_A[2] EM_A[2] EM_A[2] EM_A[2]
GPIO[68] EM_A[3] EM_A[3] GPIO[68] EM_A[3] EM_A[3]
GPIO[69] EM_A[4] EM_A[4] GPIO[69] EM_A[4] EM_A[4]
GPIO[70] EM_A[5] EM_A[5] GPIO[70] EM_A[5] EM_A[5]
GPIO[71] EM_A[6] EM_A[6] GPIO[71] EM_A[6] EM_A[6]
GPIO[72] EM_A[7] EM_A[7] GPIO[72] EM_A[7] EM_A[7]
GPIO[73] EM_A[8] EM_A[8] GPIO[73] EM_A[8] EM_A[8]
GPIO[74] EM_A[9] EM_A[9] GPIO[74] EM_A[9] EM_A[9]
GPIO[75] EM_A[10] EM_A[10] GPIO[75] EM_A[10] EM_A[10]
GPIO[76] EM_A[11] EM_A[11] GPIO[76] EM_A[11] EM_A[11]
GPIO[77] EM_A[12] EM_A[12] GPIO[77] EM_A[12] EM_A[12]
GPIO[78] EM_A[13] EM_A[13] GPIO[78] EM_A[13] EM_A[13]
GPIO[57] GPIO[46] GPIO[46] EM_D[8] EM_D[8] EM_D[8]
GPIO[58] GPIO[47] GPIO[47] EM_D[9] EM_D[9] EM_D[9]
GPIO[59] GPIO[48] GPIO[48] EM_D[10] EM_D[10] EM_D[10]
GPIO[60] GPIO[49] GPIO[49] EM_D[11] EM_D[11] EM_D[11]
GPIO[61] GPIO[50] GPIO[50] EM_D[12] EM_D[12] EM_D[12]
GPIO[62] GPIO[51] GPIO[51] EM_D[13] EM_D[13] EM_D[13]
GPIO[63] GPIO[52] GPIO[52] EM_D[14] EM_D[14] EM_D[14]
GPIO[64] GPIO[53] GPIO[53] EM_D[15] EM_D[15] EM_D[15]

4.7.5.2 AEMIF Timing Configuration

When AEMIF is enabled, the wait state registers are reset to the slowest possible configuration, which is 88 cycles per access (16 cycles of setup, 64 cycles of strobe, and 8 cycles of hold). Thus, with a 24 MHz clock at MXI/MXO, the AEMIF is configured to run at (12 MHz/ 88) which equals approximately 136.36 kHz.

4.7.6 Oscillator Frequency Configuration

The oscillator input pins, MXI1, MXO, are designed to operate in two frequency ranges depending on the GIO81(OSCCFG) pin sampled at reset, which should be set according to the required input frequency of operation. See Table 4-15 for details.

Table 4-15 Operation Frequency

MODE GIO81 (OSCCFG) OSCILLATION
1 0 15 - 35MHz
2 1 30 - 40MHz

The frequency selection pin cannot be changed dynamically while the oscillator is running. They should only be set once before oscillator startup.

The GIO81(OSCCFG) state is latched during reset, and it specifies the oscillation frequency mode as shown in Table 4-15.

4.8 Debugging Considerations

4.8.1 Pullup/Pulldown Resistors

Proper board design should ensure that input pins to the DMSoC device always be at a valid logic level and not floating. This may be achieved via pullup/pulldown resistors. The DMSoC features internal pullup (IPU) and internal pulldown (IPD) resistors on most pins to eliminate the need, unless otherwise noted, for external pullup/pulldown resistors.

An external pullup/pulldown resistor needs to be used in the following situations:

  • Boot and Configuration Pins: If the pin is both routed out and 3-stated (not driven), an external pullup/pulldown resistor is strongly recommended, even if the IPU/IPD matches the desired value/state.
  • Other Input Pins: If the IPU/IPD does not match the desired value/state, use an external pullup/pulldown resistor to pull the signal to the opposite rail.

For the boot and configuration pins, if they are both routed out and 3-stated (not driven), it is strongly recommended that an external pullup/pulldown resistor be implemented. Although, internal pullup/pulldown resistors exist on these pins and they may match the desired configuration value, providing external connectivity can help ensure that valid logic levels are latched on these device boot and configuration pins. In addition, applying external pullup/pulldown resistors on the boot and configuration pins adds convenience to the user in debugging and flexibility in switching operating modes.

Tips for choosing an external pullup/pulldown resistor:

  • Consider the total amount of current that may pass through the pullup or pulldown resistor. Make sure to include the leakage currents of all the devices connected to the net, and any internal pullup or pulldown resistors.
  • Decide a target value for the net. For a pulldown resistor, this should be below the lowest VIL level of all inputs connected to the net. For a pullup resistor, this should be above the highest VIH level of all inputs on the net. A reasonable choice would be to target the VOL or VOH levels for the logic family of the limiting device; which, by definition, have margin to the VIL and VIH levels.
  • Select a pullup/pulldown resistor with the largest possible value; but, which can still ensure that the net will reach the target pulled value when maximum current from all devices on the net is flowing through the resistor. The current to be considered includes leakage current plus, any other internal and external pullup/pulldown resistors on the net.
  • For bidirectional nets, there is an additional consideration which sets a lower limit on the resistance value of the external resistor. Verify that the resistance is small enough that the weakest output buffer can drive the net to the opposite logic level (including margin).
  • Remember to include tolerances when selecting the resistor value.
  • For pullup resistors, also remember to include tolerances on the DVDD rail.

For most systems, a 1-kΩ resistor can be used to oppose the IPU/IPD while meeting the above criteria. Users should confirm this resistor value is correct for their specific application.

For most systems, a 20-kΩ resistor can be used to compliment the IPU/IPD on the boot and configuration pins while meeting the above criteria. Users should confirm this resistor value is correct for their specific application.

For more detailed information on input current (II), and the low- andhigh-level input voltages (VIL and VIH) for the device, see Table 6-2, Recommended Operating Conditions.

For the internal pullup/pulldown resistors for all device pins, see the peripheral/system-specific terminal functions table.