Multicore Fixed and Floating-Point Digital Signal Processor
Data Manual
ADVANCE INFORMATION concerns new products in the sampling
or preproduction phase of development. Characteristic data and
other specifications are subject to change without notice.
› Supports 1024 DS0s Per TSIP
› Supports 2/4/8 Lanes at 32.768/16.384/8.192
Mbps Per Lane
–UART Interface
2
–I
C Interface
–16 GPIO Pins
–SPI Interface
– Semaphore Module
– Four 64-Bit Timers
– Three On-Chip PLLs
• Commercial Temperature:
– 0°C to 100°C
• Extended Temperature:
– - 40°C to 105°C
ADVANCE INFORMATION
Copyright 2010 Texas Instruments Incorporated
TMS320C6672
Multicore Fixed and Floating-Point Digital Signal Processor
SPRS708—November 2010
1.1 KeyStone Architecture
TI’s KeyStone Multicore Architecture provides a high performance structure for integrating RISC and DSP cores
with application specific coprocessors and I/O. KeyStone is the first of its kind that provides adequate internal
bandwidth for nonblocking access to all processing cores, peripherals, coprocessors, and I/O. This is achieved with
four main hardware elements: Multicore Navigator, TeraNet, Multicore Shared Memory Controller, and
HyperLink.
Multicore Navigator is an innovative packet-based manager that controls 8192 queues. When tasks are allocated to
the queues, Multicore Navigator provides hardware-accelerated dispatch that directs tasks to the appropriate
available hardware. The packet-based system on a chip (SoC) uses the two Tbps capacity of the TeraNet switched
ADVANCE INFORMATION
central resource to move packets. The Multicore Shared Memory Controller enables processing cores to access
shared memory directly without drawing from TeraNet’s capacity, so packet movement cannot be blocked by
memory access.
HyperLink provides a 50-Gbps chip-level interconnect that allows SoCs to work in tandem. Its low-protocol
overhead and high throughput make Hyperlink an ideal interface for chip-to-chip interconnections. Working with
Multicore Navigator, HyperLink dispatches tasks to tandem devices transparently and executes tasks as if they are
running on local resources.
1.2 Device Description
www.ti.com
The TMS320C6672 DSP is a highest-performance fixed/floating-point DSP that is based on TI's KeyStone multicore
architecture. Integrated with the new and innovative C66x DSP core, this device can run at a core speed of up to 1.25
GHz. For developers of a broad range of applications, such as mission critical, medical imaging, test and automation
and other applications requiring high performance, TI's TMS320C6672 DSP offers 2.5 GHz cumulative DSP and
enables a platform that is power efficient and easy to use. In addition, it is fully backward compatible with all existing
C6000 family of fixed and floating point DSPs.
TI's Keystone architecture provides a programmable platform integrating various subsystems (C66x cores, Memory
subsystem, Peripherals and accelerators) and uses several innovative components and techniques to maximize intra
device and inter device communication that allows the various DSP resources to operate efficiently and seamlessly.
Central to this architecture are key components such as Multicore navigator that allow for efficient data
management between the various chip components, Teranet switch fabric that is a 2 TB non-blocking switch fabric
enabling fast and contention free internal data movement, as well as the Multicore shared memory controller that
allows access to shared and external memory directly without drawing from switch fabric capacity.
For fixed point use, the C66x core has 4X the multiply accumulate (MAC) capability of current generation C64x+
cores. In addition, the C66x core integrates floating point capability and the per core raw computational
performance is an industry-leading 32 MACS/cycle and 16 flops/cycle. It can execute 8 single precision floating
point MAC operations per cycle and can perform double and mixed precision operations and is IEEE754 compliant.
The C66x core incorporates 90 new instructions targeted for floating point and vector math oriented processing,
compared to the C64x+ core. These enhancements yield sizeable performance improvements in popular DSP
kernels used in signal processing, mathematical, and image acquisition functions. The C66x core is backwards code
compatible with TI's previous generation C6000 fixed and floating point DSP cores, ensuring software portability
and shortened software development cycles for applications migrating to faster hardware.
The C6672 DSP integrates a large amount of on-chip memory. In addition to 32KB of L1 program and data cache,
there is 512KB of dedicated memory per core that can be configured as mapped RAM or cache. The device also
integrates 4096KB of Multicore Shared Memory that can be used as a shared L2 SRAM and/or shared L3 SRAM. All
L2 memories incorporate error detection and error correction. For fast access to external memory this device
includes 64 bit DDR-3 running at 1600MHz and has ECC DRAM support.
12Copyright 2010 Texas Instruments Incorporated
TMS320C6672
Multicore Fixed and Floating-Point Digital Signal Processor
www.ti.com
This family supports a plethora of high speed standard interfaces including RapidIO ver 2, PCI Express Gen2 and
Gigabit Ethernet, as well as an integrated Ethernet switch. It also includes I
and a 16 bit EMIF interface, along with general purpose CMOS IO. For high throughput, low latency
communication between devices or with an FPGA, this device also sports a 50Gbps FD interface called Hyperlink.
Adding to the network awareness of this device is a network co-processor which includes both packet and optional
security acceleration. The packet accelerator can process up to 1.5 M packets/s and enables a single IP address to be
used for the entire multicore C6672 device. It also provides L2 to L4 classification, along with checksum and QoS
capabilities.
The C6672 device has a complete set of development tools, which includes: an enhanced C compiler, an assembly
optimizer to simplify programming and scheduling, and a Windows® debugger interface for visibility into source
code execution.
2
C, UART, Telecom Serial Port (TSIP)
SPRS708—November 2010
ADVANCE INFORMATION
Copyright 2010 Texas Instruments Incorporated13
TMS320C6672
Multicore Fixed and Floating-Point Digital Signal Processor
SPRS708—November 2010
1.3 Functional Block Diagram
Figure 1-1 shows the functional block diagram of the TMS320C6672 device.
Figure 1-1Functional Block Diagram
www.ti.com
Memory Subsystem
64-Bit
DDR3 EMIF
SRAM
MSMC
ADVANCE INFORMATION
Debug & Trace
Boot ROM
Semaphore
Power
Management
PLL
´3
EDMA
´3
HyperLink
32KB L1
P-Cache
512KB L2 Cache
4MB
MSM
C66x™
CorePac
32KB L1
D-Cache
2 Cores @ up to 1.25 GHz
TeraNet
TeraNet
C66x™
CorePac
32KB L1
P-Cache
512KB L2 Cache
C6672
32KB L1
D-Cache
Multicore Navigator
EMIF 16
GPIO
2
IC
Queue
Manager
2
´
SPI
UART
PCIe2
´
TSIP
´
Switch
SRIO4
Ethernet
2
´
SGMII
Network Coprocessor
Switch
Packet
DMA
Security
Accelerator
Packet
Accelerator
14Copyright 2010 Texas Instruments Incorporated
TMS320C6672
Multicore Fixed and Floating-Point Digital Signal Processor
www.ti.com
SPRS708—November 2010
2 Device Overview
2.1 Device Characteristics
Table 2-1 provides an overview of the TMS320C6672 DSP. The table shows significant features of the device,
including the capacity of on-chip RAM, the peripherals, the DSP frequency, and the package and pin count.
Table 2-1Characteristics of the TMS320C6672 Processor
HARDWARE FEATURES TMS320C6672
DDR3 Memory Controller (64-bit bus width) [1.5 V I/O]
(clock source = DDRREFCLKN|P)
1 The Crypto Accelerator function is subject to export control and will be enabled only for approved device shipments.
2 PRODUCT PREVIEW information concerns experimental products (designated as TMX) that are in the formative or design phase of
development. Characteristic data and other specifications are design goals. Texas Instruments reserves the right to change or
discontinue these products without notice.
Multicore Fixed and Floating-Point Digital Signal Processor
SPRS708—November 2010
2.2 DSP Core Description
The C66x Digital Signal Processor (DSP) extends the performance of the C64x+ and C674x DSPs through
enhancements and new features. Many of the new features target increased performance for vector processing. The
C64x+ and C674x DSPs support 2-way SIMD operations for 16-bit data and 4-way SIMD operations for 8-bit data.
On the C66x DSP, the vector processing capability is improved by extending the width of the SIMD instructions.
C66x DSPs can execute instructions that operate on 128-bit vectors. For example the QMPY32 instruction is able to
perform the element-to-element multiplication between two vectors of four 32-bit data each. The C66x DSP also
supports SIMD for floating-point operations. Improved vector processing capability (each instruction can process
multiple data in parallel) combined with the natural instruction level parallelism of C6000 architecture (e.g
execution of up to 8 instructions per cycle) results in a very high level of parallelism that can be exploited by DSP
ADVANCE INFORMATION
programmers through the use of TI's optimized C/C++ compiler.
The C66x DSP consists of eight functional units, two register files, and two data paths as shown in Figure 2-1. The
two general-purpose register files (A and B) each contain 32 32-bit registers for a total of 64 registers. The
general-purpose registers can be used for data or can be data address pointers. The data types supported include
packed 8-bit data, packed 16-bit data, 32-bit data, 40-bit data, and 64-bit data. Multiplies also support 128-bit data.
40-bit-long or 64-bit-long values are stored in register pairs, with the 32 LSBs of data placed in an even register and
the remaining 8 or 32 MSBs in the next upper register (which is always an odd-numbered register). 128-bit data
values are stored in register quadruplets, with the 32 LSBs of data placed in a register that is a multiple of 4 and the
remaining 96 MSBs in the next 3 upper registers.
www.ti.com
The eight functional units (.M1, .L1, .D1, .S1, .M2, .L2, .D2, and .S2) are each capable of executing one instruction
every clock cycle. The .M functional units perform all multiply operations. The .S and .L units perform a general set
of arithmetic, logical, and branch functions. The .D units primarily load data from memory to the register file and
store results from the register file into memory.
Each C66x .M unit can perform one of the following fixed-point operations each clock cycle: four 32 × 32 bit
multiplies, sixteen 16 × 16 bit multiplies, four 16 × 32 bit multiplies, four 8 × 8 bit multiplies, four 8 × 8 bit multiplies
with add operations, and four 16 × 16 multiplies with add/subtract capabilities. There is also support for Galois field
multiplication for 8-bit and 32-bit data. Many communications algorithms such as FFTs and modems require
complex multiplication. Each C66x .M unit can perform one 16 × 16 bit complex multiply with or without rounding
capabilities, two 16 × 16 bit complex multiplies with rounding capability, and a 32 × 32 bit complex multiply with
rounding capability. The C66x can also perform two 16 × 16 bit and one 32 × 32 bit complex multiply instructions
that multiply a complex number with a complex conjugate of another number with rounding capability.
Communication signal processing also requires an extensive use of matrix operations. Each C66x .M unit is capable
of multiplying a [1 × 2] complex vector by a [2 × 2] complex matrix per cycle with or without rounding capability.
A version also exists allowing multiplication of the conjugate of a [1 × 2] vector with a [2 × 2] complex matrix.
Each C66x .M unit also includes IEEE floating-point multiplication operations from the C674x DSP, which includes
one single-precision multiply each cycle and one double-precision multiply every 4 cycles. There is also a
mixed-precision multiply that allows multiplication of a single-precision value by a double-precision value and an
operation allowing multiplication of two single-precision numbers resulting in a double-precision number. The
C66x DSP improves the performance over the C674x double-precision multiplies by adding a instruction allowing
one double-precision multiply per cycle and also reduces the number of delay slots from 10 down to 4. Each C66x
.M unit can also perform one the following floating-point operations each clock cycle: one, two, or four
single-precision multiplies or a complex single-precision multiply.
The .L and .S units can now support up to 64-bit operands. This allows for new versions of many of the arithmetic,
logical, and data packing instructions to allow for more parallel operations per cycle. Additional instructions were
added yielding performance enhancements of the floating point addition and subtraction instructions, including the
ability to perform one double precision addition or subtraction per cycle. Conversion to/from integer and
single-precision values can now be done on both .L and .S units on the C66x. Also, by taking advantage of the larger
Multicore Fixed and Floating-Point Digital Signal Processor
www.ti.com
operands, instructions were also added to double the number of these conversions that can be done. The .L unit also
has additional instructions for logical AND and OR instructions, as well as, 90 degree or 270 degree rotation of
complex numbers (up to two per cycle). Instructions have also been added that allow for the computing the
conjugate of a complex number.
The MFENCE instruction is a new instruction introduced on the C66x DSP. This instruction will create a DSP stall
until the completion of all the DSP-triggered memory transactions, including:
•Cache line fills
•Writes from L1D to L2 or from the CorePac to MSMC and/or other system endpoints
•Victim write backs
•Block or global coherence operations
•Cache mode changes
•Outstanding XMC prefetch requests
This is useful as a simple mechanism for programs to wait for these requests to reach their endpoint. It also provides
ordering guarantees for writes arriving at a single endpoint via multiple paths, multiprocessor algorithms that
depend on ordering, and manual coherence operations.
For more details on the C66x DSP and its enhancements over the C64x+ and C674x architectures, see the following
documents:
•C66x CPU and Instruction Set Reference Guide (literature number SPRUGH7)
•C66x DSP Cache User Guide (literature number SPRUGY8)
•C66x CorePac User Guide (literature number SPRUGW0)
Multicore Fixed and Floating-Point Digital Signal Processor
www.ti.com
Table 2-2Memory Map Summary for TMS320C6672 (Part 7 of 7)
Address
BytesDescriptionStartEnd
21000100213FFFFF4M-256Reserved
21400000 214003FF 1KHyperLink Config
21400400217FFFFF 4M-1K Reserved
21800000 21807FFF 32KPCIe Config
2180800033FFFFFF296M-32KReserved
34000000341FFFFF2MQueue Manager Subsystem Data
342000003FFFFFFF190MReserved
400000004FFFFFFF256MHyperLink data
500000005FFFFFFF256MReserved
600000006FFFFFFF256MPCIe Data
7000000073FFFFFF64MEMIF16 CS2 Data NAND Memory
7400000077FFFFFF64MEMIF16 CS3 Data NAND Memory
780000007BFFFFFF64MEMIF16 CS4 Data NOR Memory
7C0000007FFFFFFF64MEMIF16 CS5 Data SRAM Memory
800000008FFFFFFF256MDDR3_ Data
900000009FFFFFFF256MDDR3_ Data
A0000000AFFFFFFF256MDDR3_ Data
B0000000BFFFFFFF256MDDR3_ Data
C0000000CFFFFFFF256MDDR3_ Data
D0000000DFFFFFFF256MDDR3_ Data
E0000000EFFFFFFF256MDDR3_ Data
F0000000FFFFFFFF256MDDR3_ Data
End of Table 2-2
TMS320C6672
SPRS708—November 2010
ADVANCE INFORMATION
2.4 Boot Sequence
The boot sequence is a process by which the DSP's internal memory is loaded with program and data sections. The
DSP's internal registers are programmed with predetermined values. The boot sequence is started automatically
after each power-on reset, warm reset, and system reset. A local reset to an individual C66x CorePac should not affect
the state of the hardware boot controller on the device. For more details on the initiators of the resets, see section
‘‘Reset Controller’’.
The C6672 supports several boot processes that begins execution at the ROM base address, which contains the
bootloader code necessary to support various device boot modes. The boot processes are software-driven and use
the BOOTMODE[12:0] device configuration inputs to determine the software configuration that must be
completed. For more details on Boot Sequence see the Bootloader for the C66x DSP User Guide (literature number
Multicore Fixed and Floating-Point Digital Signal Processor
SPRS708—November 2010
2.5 Boot Modes Supported and PLL Settings
The device supports several boot processes, which leverage the internal boot ROM. Most boot processes are software
driven, using the BOOTMODE[3:0] device configuration inputs to determine the software configuration that must
be completed. From a hardware perspective, there are two possible boot modes:
•Public ROM Boot - C66x CorePac 0 is released from reset and begins executing from the L3 ROM base
address. After performing the boot process (e.g., from I
then begins execution from the provided boot entry point, other C66x CorePac’s are released from reset based
on interrupts generated by C66x CorePac 0, see the Bootloader for the C66x DSP User Guide (literature number
SPRUGY5) for more details.
ADVANCE INFORMATION
•Secure ROM Boot - On secure devices, the C66x CorePac 0 is released from reset and begin executing from
secure ROM. Software in the secure ROM will free up internal RAM pages, after which the C66x CorePac 0
initiates the boot process. The C66x CorePac 0 performs any authentication and decryption required on the
bootloaded image prior to beginning execution.
The boot process performed by the C66x CorePac 0 in public ROM boot and secure ROM boot are determined by
the BOOTMODE[12:0] value in the DEVSTAT register. The C66x CorePac 0 reads this value, and then executes the
associated boot process in software. Figure 2-2 shows the bits associated with BOOTMODE[12:0].
Figure 2-2Boot Mode Pin Decoding
1211109876543210
PLL Mult
2
I
C /SPI Ext Dev Cfg
2
C ROM, Ethernet, or RapidIO), the C66x CorePac 0
Boot Mode Pins
Device Configuration
www.ti.com
Boot Device
2.5.1 Boot Device Field
The Boot Device field BOOTMODE[2:0] defines the boot device that is chosen. Table 2-3 shows the supported boot
modes.
Multicore Fixed and Floating-Point Digital Signal Processor
SPRS708—November 2010
2.5.2.3 Serial Rapid I/O Boot Device Configuration
The device ID is always set to 0xff (8-bit node IDs) or 0xffff (16 bit node IDs) at power-on reset.
Figure 2-5Serial Rapid I/O Device Configuration Bit Fields
9876543
Lane SetupData RateRef ClockReserved
Table 2-6Serial Rapid I/O Configuration Bit Field Descriptions
BitFieldValueDescription
ADVANCE INFORMATION
9Lane Setup01Port Configured as 4 ports each 1 lane wide (4 -1× ports)
Port Configured as 2 ports 2 lanes wide (2 – 2× ports)
8-7Data Rate0
1
2
3
6-5Ref Clock0
1
2
4-3Reserved0-3Reserved
Data Rate = 1.25 GBs
Data Rate = 2.5 GBs
Data Rate = 3.125 GBs
Data Rate = 5.0 GBs
Reference Clock = 156.25 MHz
Reference Clock = 250 MHz
Reference Clock = 312.5 MHz
www.ti.com
In SRIO boot mode, the message mode will be enabled by default. If use of the memory reserved for received
messages is required and reception of messages cannot be prevented, the master can disable the message mode by
writing to the boot table and generating a boot restart.
2.5.2.4 PCI Boot Device Configuration
Extra device configuration is provided in the PCI bits in the DEVSTAT register.
Figure 2-6PCI Device Configuration Bit Fields
9876543
ReservedBAR ConfigReserved
Table 2-7PCI Device Configuration Bit Field Descriptions
In master mode, the I2C device configuration uses ten bits of device configuration instead of seven as used in other
boot modes. In this mode, the device will make the initial read of the I
2
C EEPROM while the PLL is in bypass mode.
The initial read will contain the desired clock multiplier, which will be set up prior to any subsequent reads.
Figure 2-7I2C Master Mode Device Configuration Bit Fields
1211109876543
ReservedSpeedAddressMode
(0)
Table 2-9I2C Master Mode Device Configuration Field Descriptions
BitFieldValueDescription
12ReservedReserved
2
11Speed0
1
10Address0
1
9Mode0
1
8-3Parameter Index0-63Identifies the index of the configuration table initially read from the I
4-3Reserved0-3Reserved
C data rate set to approximately 20 kHz
I
2
C fast mode. Data rate set to approximately 400 kHz (will not exceed)
Table 2-11SPI Device Configuration Field Descriptions
Bit FieldValueDescription
12-11Mode
104, 5 Pin014-pin mode used
9Addr Width0116-bit address values are used
8-7Chip Select0-3The chip select field value
6-5Parameter Table Index0-3Specifies which parameter table is loaded
4-3Reserved0-3Reserved
Clk Pol / Phase
0
Data is output on the rising edge of SPICLK. Input data is latched on the falling edge.
1
Data is output one half-cycle before the first rising edge of SPICLK and on subsequent falling edges.
Input data is latched on the rising edge of SPICLK.
2
Data is output on the falling edge of SPICLK. Input data is latched on the rising edge.
3
Data is output one half-cycle before the first falling edge of SPICLK and on subsequent rising edges.
Input data is latched on the falling edge of SPICLK.
Table 2-12HyperLink Boot Device Configuration Field Descriptions
Bit FieldValueDescription
9ReservedReserved
8-7Data Rate0
6-5Ref Clocks0
4-3Reserved0-3Reserved
1
2
3
1
2
1.25 GBs
3.125 GBs
6.25 GBs
12.5 GBs
156.25 MHz
250 MHz
312.5 MHz
TMS320C6672
SPRS708—November 2010
2.5.3 PLL Boot Configuration Settings
The PLL default settings are determined by the BOOTMODE[12:10] bits. The Table 2-13 shows settings for various
input clock frequencies. This will set the PLL to the maximum clock setting for the device.
CLK = CLKIN × (PLLM+1) ÷ (2 × (PLLD+1))
The PA configuration is also shown. The PA is configured with these values only if the Ethernet boot mode is
selected with the input clock set to match the main PLL clock (not the PA SerDes clock). See Table 2-3 for details on
configuring Ethernet boot mode. See section 7.8 ‘‘Main PLL and PLL Controller’’ on page 207 for further details
Any of the boot modes can be used to download a second-level bootloader. A second-level bootloader allows for any
level of customization to current boot methods as well as the definition of a completely customized boot.
Multicore Fixed and Floating-Point Digital Signal Processor
SPRS708—November 2010
2.7 Terminals
Figure 2-11 Shows the TMS320C6672CYP ball grid area (BGA) package (bottom view)
Figure 2-11CYP 841-Pin BGA Package Bottom View
AJ
AH
AG
AF
AE
AD
AC
AB
AA
Y
ADVANCE INFORMATION
W
V
U
T
R
P
N
M
L
K
J
H
G
F
E
D
C
B
A
3
5
1
2 4
6 810
www.ti.com
13
11
12 14
151719
16 18 20
9
7
21
22 24
23
252729
26 28
2.8 Terminal Functions
The terminal functions table (Table 2-15) identifies the external signal names, the associated pin (ball) numbers, the
pin type (I, O/Z, or I/O/Z), whether the pin has any internal pullup/pulldown resistors, and gives functional pin
descriptions. This table is arranged by function. The power terminal functions table (Table 2-16) lists the various
power supply pins and ground pins and gives functional pin descriptions. Table 2-17 shows all pins arranged by
signal name. Table 2-18 shows all pins arranged by ball number.
There are 17 pins that have a secondary function as well as a primary function. The secondary function is indicated
with a dagger (†).
For more detailed information on device configuration, peripheral selection, multiplexed/shared pins, and
pullup/pulldown resistors, see section 3.4 ‘‘Pullup/Pulldown Resistors’’ on page 76.
Use the symbol definitions in Table 2-14 when reading Table 2-15.
Table 2-14I/O Functional Symbol Definitions
Functional
Symbol
Internal 100-μA pulldown or pullup is provided for this terminal. In most systems, a 1-kΩ resistor can
IPD or IPU
AAnalog signalType
GNDGroundType
IInput terminalType
OOutput terminalType
SSupply voltageType
ZThree-state terminal or high impedanceType
End of Table 2-14
be used to oppose the IPD/IPU. For more detailed information on pulldown/pullup resistors and
situations in which external pulldown/pullup resistors are required, see Hardware Design Guide for KeyStone Devices (literature number SPRABI2).
Multicore Fixed and Floating-Point Digital Signal Processor
SPRS708—November 2010
2.9 Development
2.9.1 Development Support
In case the customer would like to develop their own features and software on the C6672 device, TI offers an
extensive line of development tools for the TMS320C6000™ DSP platform, including tools to evaluate the
performance of the processors, generate code, develop algorithm implementations, and fully integrate and debug
software and hardware modules. The tool's support documentation is electronically available within the Code
Composer Studio™ Integrated Development Environment (IDE).
The following products support development of C6000™ DSP-based applications:
ADVANCE INFORMATION
•Software Development Tools:
–Code Composer Studio™ Integrated Development Environment (IDE), including Editor C/C++/Assembly
Code Generation, and Debug plus additional development tools
–Scalable, Real-Time Foundation Software (DSP/BIOS™), which provides the basic run-time target software
needed to support any DSP application.
•Hardware Development Tools:
–Extended Development System (XDS™) Emulator (supports C6000™ DSP multiprocessor system debug)
–EVM (Evaluation Module)
www.ti.com
2.9.2 Device Support
2.9.2.1 Device and Development-Support Tool Nomenclature
To designate the stages in the product development cycle, TI assigns prefixes to the part numbers of all DSP devices
and support tools. Each DSP commercial family member has one of three prefixes: TMX, TMP, or TMS (e.g.,
TMX320CMH). Texas Instruments recommends two of three possible prefix designators for its support tools:
TMDX and TMDS. These prefixes represent evolutionary stages of product development from engineering
prototypes (TMX/TMDX) through fully qualified production devices/tools (TMS/TMDS).
Device development evolutionary flow:
•TMX: Experimental device that is not necessarily representative of the final device's electrical specifications
•TMP: Final silicon die that conforms to the device's electrical specifications but has not completed quality and
reliability verification
•TMS: Fully qualified production device
Support tool development evolutionary flow:
•TMDX: Development-support product that has not yet completed Texas Instruments internal qualification
testing.
TMX and TMP devices and TMDX development-support tools are shipped with the following disclaimer:
"Developmental product is intended for internal evaluation purposes."
TMS devices and TMDS development-support tools have been characterized fully, and the quality and reliability of
the device have been demonstrated fully. TI's standard warranty applies.
Predictions show that prototype devices (TMX or TMP) have a greater failure rate than the standard production
devices. Texas Instruments recommends that these devices not be used in any production system because their
expected end-use failure rate still is undefined. Only qualified production devices are to be used.
Multicore Fixed and Floating-Point Digital Signal Processor
www.ti.com
SPRS708—November 2010
Related Documentation from Texas Instruments
These documents describe the TMS320C6672 Multicore Fixed and Floating-Point Digital Signal Processor. Copies
of these documents are available on the Internet at www.ti.com
64-bit Timer (Timer 64) for KeyStone Devices User GuideSPRUGV5
Antenna Interface 2 (AIF2) for KeyStone Devices User GuideSPRUGV7
Bootloader for the C66x DSP User GuideSPRUGY5
C66x CorePac User GuideSPRUGW0
C66x CPU and Instruction Set Reference GuideSPRUGH7
C66x DSP Cache User GuideSPRUGY8
DDR3 Design Guide for KeyStone DevicesSPRABI1
Emulation and Trace Headers Technical ReferenceSPRU655
Enhanced Direct Memory Access 3 (EDMA3) for KeyStone Devices User GuideSPRUGS5
Ethernet Media Access Control (EMAC) for KeyStone Devices User GuideSPRUGV9
External Memory Interface (EMIF16) for KeyStone Devices User GuideSPRUGZ3
Fast Fourier Transform Coprocessor (FFTC) for KeyStone Devices User GuideSPRUGS2
General Purpose Input/Output (GPIO) for KeyStone Devices User GuideSPRUGV1
Hardware Design Guide for KeyStone DevicesSPRABI2
HyperLink for KeyStone Devices User GuideSPRUGW8
Inter Integrated Circuit (I
Interrupt Controller (INTC) for KeyStone Devices User GuideSPRUGW4
Memory Protection Unit (MPU) for KeyStone Devices User GuideSPRUGW5
Multicore Navigator for KeyStone Devices User GuideSPRUGR9
Multicore Shared Memory Controller (MSMC) for KeyStone Devices User GuideSPRUGW7
Packet Accelerator (PA) for KeyStone Devices User GuideSPRUGS4
Peripheral Component Interconnect Express (PCIe) for KeyStone Devices User GuideSPRUGS6
Phase Locked Loop (PLL) Controller for KeyStone Devices User GuideSPRUGV2
Power Management for KeyStone DevicesSPRABH0
Power Sleep Controller (PSC) for KeyStone Devices User GuideSPRUGV4
Serial Peripheral Interface (SPI) for KeyStone Devices User GuideSPRUGP2
Serial RapidIO (SRIO) for KeyStone Devices User GuideSPRUGW1
Telecom Serial Interface Port (TSIP) for the C66x DSP User GuideSPRUGY4
Universal Asynchronous Receiver/Transmitter (UART) for KeyStone Devices User GuideSPRUGP1
Using Advanced Event Triggering to Debug Real-Time Problems in High Speed Embedded Microprocessor SystemsSPRA387
Using Advanced Event Triggering to Find and Fix Intermittent Real-Time BugsSPRA753
Multicore Fixed and Floating-Point Digital Signal Processor
www.ti.com
SPRS708—November 2010
3 Device Configuration
On the TMS320C6672 device, certain device configurations like boot mode and endianess, are selected at device
power-on reset. The status of the peripherals (enabled/disabled) is determined after device power-on reset. By
default, the peripherals on the device are disabled and need to be enabled by software before being used.
3.1 Device Configuration at Device Reset
Table 3-1 describes the device configuration pins. The logic level is latched at power-on reset to determine the device
configuration. The logic level on the device configuration pins can be set by using external pullup/pulldown resistors
or by using some control device (e.g., FPGA/CPLD) to intelligently drive these pins. When using a control device,
care should be taken to ensure there is no contention on the lines when the device is out of reset. The device
configuration pins are sampled during power-on reset and are driven after the reset is removed. To avoid
contention, the control device must stop driving the device configuration pins of the DSP.
Note—If a configuration pin must be routed out from the device and it is not driven (Hi-Z state), the internal
pullup/pulldown (IPU/IPD) resistor should not be relied upon. TI recommends the use of an external
pullup/pulldown resistor. For more detailed information on pullup/pulldown resistors and situations in
which external pullup/pulldown resistors are required, see Section 3.4 ‘‘Pullup/Pulldown Resistors’’ on
page 76.
Table 3-1TMS320C6672 Device Configuration Pins
Configuration Pin Pin No. IPD/IPU
LENDIAN
BOOTMODE[12:0]
PCIESSMODE[1:0]
PCIESSEN
PACLKSEL
End of Table 3-1
1 Internal 100-μA pulldown or pullup is provided for this terminal. In most systems, a 1-kΩ resistor can be used to oppose the IPD/IPU. For more detailed information on
2 These signal names are the secondary functions of these pins.
(1) (2)
(1) (2)
(1) (2)
(1) (2)
(1)
pulldown/pullup resistors and situations in which external pulldown/pullup resistors are required, see Section 3.4 ‘‘Pullup/Pulldown Resistors’’ on page 76.
0 = Device operates in big endian mode
1 = Device operates in little endian mode
IPD Method of boot.
Some pins may not be used by bootloader and can be used as general purpose config
pins. Refer to the Bootloader for the C66x DSP User Guide (literature number SPRUGY5) for
how to determine the device enumeration ID value.
00 = PCIe in end point mode
01 = PCIe legacy end point (no support for MSI)
10 = PCIe in root complex mode
11 = Reserved
0 = PCIE Subsystem is disabled
1 = PCIE Subsystem is enabled
0 = SYSCLK / ALTCORECLK (controlled by CORECLKSEL pin) is used as the input to PA_SS
PLL
1 = PASSCLK is used as the input to PASS PLL
ADVANCE INFORMATION
3.2 Peripheral Selection After Device Reset
Several of the peripherals on the TMS320C6672 are controlled by the Power Sleep Controller (PSC). By default, the
PCIe, SRIO, and HyperLink are held in reset and clock-gated. The memories in these modules are also in a
low-leakage sleep mode. Software is required to turn these memories on. Then, the software enables the modules
(turns on clocks and de-asserts reset) before these modules can be used.
Multicore Fixed and Floating-Point Digital Signal Processor
SPRS708—November 2010
If one of the above modules is used in the selected ROM boot mode, the ROM code will automatically enable the
module.
All other modules come up enabled by default and there is no special software sequence to enable. For more detailed
information on the PSC usage, see the Power Sleep Controller (PSC) for KeyStone Devices User Guide (literature
number SPRUGV4).
3.3 Device State Control Registers
The TMS320C6672 device has a set of registers that are used to control the status of its peripherals. These registers
are shown in Table 3-2.
ADVANCE INFORMATION
Table 3-2Device State Control Registers (Part 1 of 3)
Address StartAddress EndSizeAcronymDescription
0x026200000x026200078BReserved
0x026200080x0262001716BReserved
0x026200180x0262001B4BJTAGIDSee section 3.3.3
0x0262001C0x0262001F4BReserved
0x026200200x026200234BDEVSTATSee section 3.3.1
0x026200240x0262003720BReserved
0x026200380x0262003B4BKICK0See section 3.3.4
0x0262003C0x0262003F4BKICK1
0x026200400x026200434BDSP_BOOT_ADDR0The boot address for C66x DSP CorePac 0
0x026200440x026200474BDSP_BOOT_ADDR1The boot address for C66x DSP CorePac 1
0x026200480x0262004B4BReserved
0x0262004C0x0262004F4BReserved
0x026200500x026200534BReserved
0x026200540x026200574BReserved
0x026200580x0262005B4BReserved
0x0262005C0x0262005F4BReserved
0x026200600x026200DF128BReserved
0x026200E00x0262010F48BReserved
0x026201100x026201178BMACIDSee section 7.19 ‘‘Ethernet MAC (EMAC)’’ on page 190
Multicore Fixed and Floating-Point Digital Signal Processor
www.ti.com
Table 3-3Device Status Register Field Descriptions (Part 2 of 2)
BitFieldDescription
15-14 PCIESSMODE[1:0]PCIe Mode selection pins
00b = PCIe in End-point mode
01b = PCIe in Legacy End-point mode (no support for MSI)
10b = PCIe in Root complex mode
11b = Reserved
13-1BOOTMODE[12:0] Determines the bootmode configured for the device. For more information on bootmode, refer to Section 2.5 ‘‘Boot
Modes Supported and PLL Settings’’ on page 27 and see the Bootloader for the C66x DSP User Guide (literature number
SPRUGY5).
0LENDIANDevice Endian mode (LENDIAN) — Shows the status of whether the system is operating in Big Endian mode or Little
Endian mode (default).
0 = System is operating in Big Endian mode
1 = System is operating in Little Endian mode (default)
End of Table 3-3
3.3.2 Device Configuration Register
The Device Configuration Register is one-time writeable through software. The register is reset on all hard resets
and is locked after the first write. The Device Configuration Register is shown in Figure 3-2 and described in
Table 3-4.
SPRS708—November 2010
Figure 3-2Device Configuration Register (DEVCFG)
3110
ReservedSYSCLKOUTEN
R-0R/W-1
Legend: R = Read only; RW = Read/Write; -n = value after reset
Table 3-4Device Configuration Register Field Descriptions
Bit FieldDescription
31:1 ReservedReserved. Read only, writes have no effect.
The JTAG ID register is a read-only register that identifies to the customer the JTAG/Device ID. For the device, the
JTAG ID register resides at address location 0x0262 0018. The JTAG ID Register is shown in Figure 3-3 and
described in Table 3-5.
Figure 3-3JTAG ID (JTAGID) Register
312827121110
VARIANTPART NUMBERMANUFACTURERLSB
R-0000R-0000 0000 1001 1110b0000 0010 111bR-1
Legend: RW = Read/Write; R = Read only; -n = value after reset
Multicore Fixed and Floating-Point Digital Signal Processor
SPRS708—November 2010
Table 3-5JTAG ID Register Field Descriptions
BitAcronymValueDescription
31-28 VARIANT0000bVariant (4-Bit) value. The value of this field depends on the silicon revision being used.
27-12 PART NUMBER0000 0000 1001 1110bPart Number for boundary scan
11-1 MANUFACTURER0000 0010 111bManufacturer
0LSB1bThis bit is read as a 1 for TMS320C6672
End of Table 3-5
www.ti.com
ADVANCE INFORMATION
3.3.4 Kicker Mechanism (KICK0 and KICK1) Register
The Bootcfg module contains a kicker mechanism to prevent any spurious writes from changing any of the Bootcfg
MMR values. When the kicker is locked (which it is initially after power on reset) none of the Bootcfg MMRs are
writable (they are only readable). This mechanism requires two MMR writes to the KICK0 and KICK1 registers with
exact data values before the kicker lock mechanism is un-locked. See Table 3-2 ‘‘Device State Control Registers’’ on
page 62 for the address location. Once released then all the Bootcfg MMRs having “write” permissions are writable
(the read only MMRs are still read only). The first KICK0 data is 0x83e70b13. The second KICK1 data is 0x95a4f1e0.
Writing any other data value to either of these kick MMRs will lock the kicker mechanism and block any writes to
Bootcfg MMRs. In order to ensure protection to all Bootcfg MMRs, software must always re-lock the kicker
mechanism after completing the MMR writes.
3.3.5 LRESETNMI PIN Status (LRSTNMIPINSTAT) Register
The LRSTNMIPINSTAT Register is created in Boot Configuration to latch the status of LRESET
CORESEL. The LRESETNMI PIN Status Register is shown in Figure 3-4 and described in Table 3-6.
Figure 3-4LRESETNMI PIN Status Register (LRSTNMIPINSTAT)
3118171615210
ReservedNMI1NMI0ReservedLR1LR0
R, +0000 0000R-0R-0R, +0000 0000R-0R-0
Legend: R = Read only; -n = value after reset;
Table 3-6LRESETNMI PIN Status Register (LRSTNMIPINSTAT) Field Descriptions
Multicore Fixed and Floating-Point Digital Signal Processor
www.ti.com
3.3.6 LRESETNMI PIN Status Clear (LRSTNMIPINSTAT_CLR) Register
TMS320C6672
SPRS708—November 2010
The LRSTNMIPINSTAT_CLR Register is used to clear the status of LRESET
and NMI based on CORESEL. The
LRESETNMI PIN Status Clear Register is shown in Figure 3-5 and described in Table 3-7.
Figure 3-5LRESETNMI PIN Status Clear Register (LRSTNMIPINSTAT_CLR)
3118171615210
ReservedNMI1NMI0ReservedLR1LR0
R, +0000 0000WC,+0WC,+0R, +0000 0000WC,+0WC,+0
Legend: R = Read only; -n = value after reset; WC = Write 1 to Clear
Table 3-7LRESETNMI PIN Status Clear Register (LRSTNMIPINSTAT_CLR) Field Descriptions
BitFieldDescription
31-18 ReservedReserved
17NMI1CorePac 1 in NMI Clear
16NMI0CorePac 0 in NMI Clear
15-2 ReservedReserved
1LR1CorePac 1 in Local Reset Clear
0LR0CorePac 0 in Local Reset Clear
End of Table 3-7
3.3.7 Reset Status (RESET_STAT) Register
The reset status register (RESET_STAT) captures the status of Local reset (LRx) for each of the cores and also the
global device reset (GR). Software can use this information to take different device initialization steps, if desired.
•In case of Local reset: The LRx bits are written as 1 and GR bit is written as 0 only when the CorePac receives
an local reset without receiving a global reset.
•In case of Global reset: The LRx bits are written as 0 and GR bit is written as 1 only when a global reset is
asserted.
ADVANCE INFORMATION
The Reset Status Register is shown in Figure 3-6 and described in Table 3-8.
Figure 3-6Reset Status Register (RESET_STAT)
3130210
GRReservedLR1LR0
R, +1R, + 000 0000 0000 0000 0000 0000R,+0R,+0
Legend: R = Read only; -n = value after reset
Table 3-8Reset Status Register (RESET_STAT) Field Descriptions (Part 1 of 2)
BitFieldDescription
31GRGlobal reset status
0 = Device has not received a global reset.
1 = Device received a global reset.
Multicore Fixed and Floating-Point Digital Signal Processor
SPRS708—November 2010
Table 3-8Reset Status Register (RESET_STAT) Field Descriptions (Part 2 of 2)
BitFieldDescription
1LR1CorePac 1 reset status
0 = CorePac 1 has not received a local reset.
1 = CorePac 1 received a local reset.
0LR0CorePac 0 reset status
0 = CorePac 0 has not received a local reset.
1 = CorePac 0 received a local reset.
End of Table 3-8
www.ti.com
ADVANCE INFORMATION
3.3.8 Reset Status Clear (RESET_STAT_CLR) Register
The RESET_STAT bits can be cleared by writing 1 to the corresponding bit in the RESET_STAT_CLR register. The
Reset Status Clear Register is shown in Figure 3-7 and described in Table 3-9.
Figure 3-7Reset Status Clear Register (RESET_STAT_CLR)
3130210
GRReservedLR1LR0
RW, +0R, + 000 0000 0000 0000 0000 0000RW,+0RW,+0
Legend: R = Read only; RW = Read/Write; -n = value after reset
Table 3-9Reset Status Clear Register (RESET_STAT_CLR) Field Descriptions
BitFieldDescription
31GRGlobal Reset Clear bit
30-2 ReservedReserved.
1LR1CorePac 1 reset Clear bit
0LR0CorePac 0 reset Clear bit
End of Table 3-9
0 = Writing a 0 has no effect.
1 = Writing a 1 to the GR bit clears the corresponding bit in the RESET_STAT register.
0 = Writing a 0 has no effect.
1 = Writing a 1 to the LR1 bit clears the corresponding bit in the RESET_STAT register.
0 = Writing a 0 has no effect.
1 = Writing a 1 to the LR0 bit clears the corresponding bit in the RESET_STAT register.
3.3.9 Boot Complete (BOOTCOMPLETE) Register
The BOOTCOMPLETE register controls the BOOTCOMPLETE pin status. The purpose is to indicate the
completion of the ROM booting process. The Boot Complete Register is shown in Figure 3-8 and described in
Table 3-10.
Figure 3-8Boot Complete Register (BOOTCOMPLETE)
31210
ReservedBC1BC0
R, + 0000 0000 0000 0000 0000 0000RW,+0RW,+0
Legend: R = Read only; RW = Read/Write; -n = value after reset
The BCx bit indicates the boot complete status of the corresponding core. All BCx bits will be sticky bits — that is
they can be set only once by the software after device reset and they will be cleared to 0 on all device resets.
Boot ROM code will be implemented such that each core will set its corresponding BCx bit immediately before
branching to the predefined location in memory.
3.3.10 Power State Control (PWRSTATECTL) Register
The PWRSTATECTL register is controlled by the software to indicate the power-saving mode. ROM code reads this
register to differentiate between the various power saving modes. This register is cleared only by POR and will
survive all other device resets. See the Hardware Design Guide for KeyStone Devices in ‘‘Related Documentation from
Texas Instruments’’ on page 59 for more information. The Power State Control Register is shown in Figure 3-9 and
described in Table 3-11.
SPRS708—November 2010
Figure 3-9Power State Control Register (PWRSTATECTL)
Multicore Fixed and Floating-Point Digital Signal Processor
SPRS708—November 2010
3.3.11 NMI Even Generation to CorePac (NMIGRx) Register
NMIGRx registers are used for generating NMI events to the corresponding CorePac. The C6672 has
two NMIGRx registers (NMIGR0 through NMIGR1). The NMIGR0 register generates an NMI event to CorePac0,
the NMIGR1 register generates an NMI event to CorePac1, and so on. Writing a 1 to the NMIG field generates a
NMI pulse. Writing a 0 has no effect and Reads return 0 and have no other effect. The NMI Even Generation to
CorePac Register is shown in Figure 3-10 and described in Table 3-12.
Figure 3-10NMI Generation Register (NMIGRx)
3110
GENERAL_PURPOSENMIG
ADVANCE INFORMATION
Legend: RW = Read/Write; -n = value after reset
Table 3-12NMI Generation Register (NMIGRx) Field Descriptions
BitFieldDescription
31-1 ReservedReserved
0NMIGReads return 0
Writes:
0 = No effect
1 = Creates NMI pulse to the corresponding CorePac — CorePac0 for NMIGR0, etc.
End of Table 3-12
R, +0000 0000 0000 0000 0000 0000 0000 000RW,+0
www.ti.com
3.3.12 IPC Generation (IPCGRx) Registers
IPCGRx are the IPC interrupt generation registers to facilitate inter CorePac interrupts.
The C6672 has two IPCGRx registers (IPCGR0 through IPCGR1) registers. This can be used by external hosts or
CorePacs to generate interrupts to other CorePacs. A write of 1 to IPCG field of IPCGRx register will generate an
interrupt pulse to CorePacx (0 <= x <= 1).
These registers also provide a Source ID facility by which up to 28 different sources of interrupts can be identified.
Al location of sou rce bits to source processor and meaning is entirely based on software convention. The register field
descriptions are given in the following tables. Virtually anything can be a source for these registers as this is
completely controlled by software. Any master that has access to BOOTCFG module space can write to these
registers. The IPC Generation Register is shown in Figure 3-11 and described in Table 3-13.
Multicore Fixed and Floating-Point Digital Signal Processor
www.ti.com
Table 3-13IPC Generation Registers (IPCGRx) Field Descriptions
BitFieldDescription
31-4 SRCSxReads return current value of internal register bit.
Writes:
0 = No effect
1 = Sets both SRCSx and the corresponding SRCCx.
3-1ReservedReserved
0IPCGReads return 0.
Writes:
0 = No effect
1 = Creates an Inter-DSP interrupt.
End of Table 3-13
3.3.13 IPC Acknowledgement (IPCARx) Registers
IPCARx are the IPC interrupt-acknowledgement registers to facilitate inter-CorePac core interrupts.
The C6672 has two IPCARx (IPCAR0 through IPCAR1) registers. These registers also provide a Source ID facility
by which up to 28 different sources of interrupts can be identified. Allocation of source bits to source processor and
meaning is entirely based on software convention. The register field descriptions are given in the following tables.
Virtually anything can be a source for these registers as this is completely controlled by software. Any master that
has access to BOOTCFG module space can write to these registers. The IPC Acknowledgement Register is shown in
Legend: R = Read only; RW = Read/Write; -n = value after reset
Table 3-14IPC Acknowledgement Registers (IPCARx) Field Descriptions
BitFieldDescription
31-4 SRCCxReads return current value of internal register bit.
Writes:
0 = No effect
1 = Clears both SRCCx and the corresponding SRCSx
3-0ReservedReserved
End of Table 3-14
3.3.14 IPC Generation Host (IPCGRH) Register
IPCGRH register is provided to facilitate host DSP interrupt. Operation and use of IPCGRH is the same as other
IPCGR registers. Interrupt output pulse created by IPCGRH is driven on a device pin, host interrupt/event output
(HOUT).
Multicore Fixed and Floating-Point Digital Signal Processor
SPRS708—November 2010
The host interrupt output pulse should be stretched. It should be asserted for 4 bootcfg clock cycles (DSP/6) followed
by a deassertion of 4 bootcfg clock cycles. Generating the pulse will result in 8 DSP/6 cycle pulse blocking window.
Write to IPCGRH with IPCG bit (bit 0) set will only generate a pulse if they are beyond 8 DSP/6 cycle period. The
IPC Generation Host Register is shown in Figure 3-13 and described in Table 3-15.
Legend: R = Read only; RW = Read/Write; -n = value after reset
ADVANCE INFORMATION
Table 3-15IPC Generation Registers (IPCGRH) Field Descriptions
BitFieldDescription
31-4 SRCSxReads return current value of internal register bit.
Writes:
0 = No effect
1 = Sets both SRCSx and the corresponding SRCCx.
3-1ReservedReserved
0IPCGReads return 0.
Writes:
0 = No effect
1 = Creates an interrupt pulse on device pin (host interrupt/event output in HOUT pin)
End of Table 3-15
www.ti.com
3.3.15 IPC Acknowledgement Host (IPCARH) Register
IPCARH registers are provided to facilitate host DSP interrupt. Operation and use of IPCARH is the same as
other IPCAR registers. The IPC Acknowledgement Host Register is shown in Figure 3-14 and described in
Multicore Fixed and Floating-Point Digital Signal Processor
www.ti.com
3.3.16 Timer Input Selection Register (TINPSEL)
Timer input selection is handled within the control register TINPSEL. The Timer Input Selection Register is shown
in Figure 3-15 and described in Table 3-17.
R = Read only; RW = Read/Write; -n = value after reset
Table 3-17Timer Input Selection Field Description (TINPSEL)
BitFieldDescription
31-8 ReservedReserved
7TINPHSEL3Input select for TIMER3 high.
0 = TIMI0
1 = TIMI1
6TINPLSEL3Input select for TIMER3 low.
0 = TIMI0
1 = TIMI1
5TINPHSEL2Input select for TIMER2 high.
0 = TIMI0
1 = TIMI1
4TINPLSEL2Input select for TIMER2 low.
0 = TIMI0
1 = TIMI1
3TINPHSEL1Input select for TIMER1 high.
0 = TIMI0
1 = TIMI1
2TINPLSEL1Input select for TIMER1 low.
0 = TIMI0
1 = TIMI1
1TINPHSEL0Input select for TIMER0 high.
0 = TIMI0
1 = TIMI1
0TINPLSEL0Input select for TIMER0 low.
0 = TIMI0
1 = TIMI1
End of Table 3-17
SPRS708—November 2010
ADVANCE INFORMATION
3.3.17 Timer Output Selection Register (TOUTPSEL)
The timer output selection is handled within the control register TOUTSEL. The Timer Output Selection Register
is shown in Figure 3-16 and described in Table 3-18.
The software controls the Reset Mux block through the reset multiplex registers using RSTMUX0 through
RSTMUX1 for each of the two CorePacs on the C6672. These registers are located in Bootcfg memory space. The
Timer Output Selection Register is shown in Figure 3-17 and described in Table 3-19.
Legend: R = Read only; RW = Read/Write; -n = value after reset; RC
Table 3-19Reset Mux Register Field Descriptions (Part 1 of 2)
BitFieldDescription
31-10 ReservedReserved
9EVTSTATCLR0 = Writing O had no effect
1 = Writing 1 to this bit clears the EVTSTAT bit
8ReservedReserved
7-5DELAY000b = 256 DSP/6 cycles delay between NMI & Local reset, when OMODE = 100b
001b = 512 DSP/6 cycles delay between NMI & Local reset, when OMODE=100b
010b = 1024 DSP/6 cycles delay between NMI & Local reset, when OMODE=100b
011b = 2048 DSP/6 cycles delay between NMI & Local reset, when OMODE=100b
100b = 4096 DSP/6 cycles delay between NMI & Local reset, when OMODE=100b (Default)
101b = 8192 DSP/6 cycles delay between NMI & Local reset, when OMODE=100b
110b = 16384 DSP/6 cycles delay between NMI & Local reset, when OMODE=100b
111b = 32768 DSP/6 cycles delay between NMI & Local reset, when OMODE=100b
Multicore Fixed and Floating-Point Digital Signal Processor
www.ti.com
Table 3-19Reset Mux Register Field Descriptions (Part 2 of 2)
BitFieldDescription
3-1OMODE000b = WD Timer Event input to the Reset Mux block does not cause any output event (Default)
001b = Reserved
010b = WD Timer Event input to the Reset Mux block causes local reset input to CorePac
011b = WD Timer Event input to the Reset Mux block causes NMI input to CorePac
100b = WD Timer Event input to the Reset Mux block causes NMI input followed by Local reset input to CorePac. Delay
between NMI and local reset is set in DELAY bit field.
101b = WD Timer Event input to the Reset Mux block causes Device Reset to C6672
110b = Reserved
111b = Reserved
0LOCK0 = Register fields are not locked (Default)
1 = Register fields are locked until the next timer reset
Multicore Fixed and Floating-Point Digital Signal Processor
SPRS708—November 2010
3.4 Pullup/Pulldown Resistors
Proper board design should ensure that input pins to the device always be at a valid logic level and not floating. This
may be achieved via pullup/pulldown resistors. The device 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:
•Device Configuration Pins: If the pin is both routed out and are not driven (in Hi-Z state), an external
pullup/pulldown resistor must be used, 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.
ADVANCE INFORMATION
For the device configuration pins (listed in Table 3-1), if they are both routed out and are not driven (in Hi-Z state),
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 configuration pins. In
addition, applying external pullup/pulldown resistors on the device 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, as well as any internal pullup or pulldown
resistors.
•Decide a target value for the net. For a pulldown resistor, this should be below the lowest V
connected to the net. For a pullup resistor, this should be above the highest V
A reasonable choice would be to target the V
by definition, have margin to the V
•Select a pullup/pulldown resistor with the largest possible value that 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 that 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 DV
and VIH levels.
IL
www.ti.com
level of all inputs
level of all inputs on the net.
or VOH levels for the logic family of the limiting device; which,
OL
DD
IH
rail.
IL
For most systems:
•A 1-kΩ resistor can be used to op pose th e IPU /IPD while meeting the above criteria. Users should confirm this
resistor value is correct for their specific application.
•A 20-kΩ resistor can be used to compliment the IPU/IPD on the device 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 (I
), and the low-level/high-level input voltages (VIL and VIH) for
I
the TMS320C6672 device, see Section 6.3 ‘‘Electrical Characteristics’’ on page 91.
To determine which pins on the device include internal pullup/pulldown resistors, seeTable 2-15 ‘‘Terminal
Functions — Signals and Control by Function’’ on page 33.
Multicore Fixed and Floating-Point Digital Signal Processor
www.ti.com
SPRS708—November 2010
4 System Interconnect
On the TMS320C6672 device, the C66x CorePac, the EDMA3 transfer controllers, and the system peripherals are
interconnected through two switch fabrics. The switch fabrics allow for low-latency, concurrent data transfers
between master peripherals and slave peripherals. The switch fabrics also allow for seamless arbitration between the
system masters when accessing system slaves.
4.1 Internal Buses, Bridges, and Switch Fabrics
Two types of buses exist in the device: data buses and configuration buses. Some peripherals have both a data bus
and a configuration bus interface, while others only have one type of interface. Furthermore, the bus interface width
and speed varies from peripheral to peripheral. Configuration buses are mainly used to access the register space of
a peripheral and the data buses are used mainly for data transfers. However, in some cases, the configuration bus is
also used to transfer data. Similarly, the data bus can also be used to access the register space of a peripheral. For
example, the DDR3 memory controller registers are accessed through their data bus interface.
The C66x CorePac, the EDMA3 traffic controllers, and the various system peripherals can be classified into two
categories: masters and slaves.
Masters are capable of initiating read and write transfers in the system and do not rely on the EDMA3 for their data
transfers. Slaves on the other hand rely on the EDMA3 to perform transfers to and from them. Examples of masters
include the EDMA3 traffic controllers, SRIO, and EMAC. Examples of slaves include the SPI, UART, and I
2
C.
The device contains two switch fabrics (the TeraNet) through which masters and slaves communicate. The data
switch fabric, known as the data switched central resource (SCR), is a high-throughput interconnect mainly used to
move data across the system (for more information, see Section 4.2 ‘‘Data Switch Fabric Connections’’). The data
SCR is further divided into two smaller SCRs. One connects very high speed masters to slaves via 256-bit data buses
running at a DSP/2 frequency. The other connects masters to slaves via 128-bit data buses running at a DSP/3
frequency. Peripherals that match the native bus width of the SCR it is connected to can connect directly to the data
SCR; other peripherals require a bridge.
The configuration switch fabric, also known as the configuration switch central resource (SCR), is mainly used to
access peripheral registers (for more information, see Section 4.3 ‘‘Configuration Switch Fabric’’). The
configuration SCR connects the C66x CorePac and masters on the data switch fabric to slaves via
32-bit configuration buses running at a DSP/3 frequency. As with the data SCR, some peripherals require the use of
a bridge to interface to the configuration SCR.
Bridges perform a variety of functions:
•Conversion between configuration bus and data bus.
•Width conversion between peripheral bus width and SCR bus width.
•Frequency conversion between peripheral bus frequency and SCR bus frequency.
Multicore Fixed and Floating-Point Digital Signal Processor
SPRS708—November 2010
www.ti.com
4.3 Configuration Switch Fabric
A detailed figure will be added here for a future release. All masters can talk to all slaves on the configuration switch
fabric.
4.4 Bus Priorities
The priority level of all master peripheral traffic is defined at the TeraNet boundary. User programmable priority
registers will be present to allow software configuration of the data traffic through the TeraNet. Note that a lower
number means higher priority - PRI = 000b = urgent, PRI = 111b = low.
ADVANCE INFORMATION
All other masters provide their priority directly and do not need a default priority setting. Examples include the
CorePacs, whose priorities are set through software in the UMC control registers. All the Packet DMA based
peripherals also have internal registers to define the priority level of their initiated transactions.
The Packet DMA secondary port is one master port that does not have priority allocation register inside the IP. The
priority level for transaction from this master port is described by PKTDMA_PRI_ALLOC register in Figure 4-1 and
Multicore Fixed and Floating-Point Digital Signal Processor
www.ti.com
SPRS708—November 2010
5 C66x CorePac
The C66x CorePac consists of several components:
•The C66x DSP and associated C66x CorePac core
•Level-one and level-two memories (L1P, L1D, L2)
•Data Trace Formatter (DTF)
•Embedded Trace Buffer (ETB)
•Interrupt controller
•Power-down controller
•External memory controller
•Extended memory controller
•A dedicated power/sleep controller (LPSC)
The C66x CorePac also provides support for memory protection, bandwidth management (for resources local to the
C66x CorePac) and address extension. Figure 5-1 shows a block diagram of the C66x CorePac.
Figure 5-1C66x CorePac Block Diagram
32KB L1P
Boot
Controller
LPSCPLLC
GPSC
Program Memory Controller (PMC)With
Memory Protect/Bandwidth Mgmt
C66x DSP Core
Instruction Fetch
16-/32-bit Instruction Dispatch
Control
In-Circuit Emulation
Instruction Decode
Data Path A
A Register File
A31-A16
A15-A0
.M1
.L1.S1
xxxx.D1.D2
Data Memory Controller (DMC)With
Memory Protect/Bandwidth Mgmt
Registers
Data Path B
B Register File
B31-B16
B15-B0
.M2
xxxx.S2.L2
ller
ion Contro
d Except
Interrupt an
ller (UMC)
UnifiedMemory
Contro
ller (XMC)
ExtendedMemory
Contro
lMemory
ller (EMC)
Contro
Externa
L2 Cache/
SRAM
512KB
ADVANCE INFORMATION
MSM
SRAM
4096KB
DDR3
SRAM
DMASwitch
Fabric
CFG Switch
Fabric
32KB L1D
For more detailed information on the TMS320C66x CorePac on the C6672 device, see the C66x CorePac User Guide
(literature number SPRUGW0).
Multicore Fixed and Floating-Point Digital Signal Processor
SPRS708—November 2010
www.ti.com
5.1 Memory Architecture
Each C66x CorePac of the TMS320C6672 device contains a 512KB level-2 memory (L2), a 32KB level-1 program
memory (L1P), and a 32KB level-1 data memory (L1D). The device also contain a 4096KB multicore shared memory
(MSM). All memory on the C6672 has a unique location in the memory map (see Table 2-2 ‘‘Memory Map
Summary for TMS320C6672’’ on page 19.
The L1P and L1D cache can be reconfigured via software through the L1PMODE field of the L1P Configuration
Register (L1PCFG) and the L1DMODE field of the L1D Configuration Register (L1DCFG) of the C66x CorePac.
L1D is a two-way set-associative cache, while L1P is a direct-mapped cache.
ADVANCE INFORMATION
The on-chip bootloader changes the reset configuration for L1P and L1D. For more information, see the Bootloader
for the C66x DSP User Guide (literature number SPRUGY5).
For more information on the operation L1 and L2 caches, see the C66x DSP Cache User Guide (literature number
SPRUGY8).
5.1.1 L1P Memory
The L1P memory configuration for the C6672 device is as follows:
•Region 0 size is 0K bytes (disabled)
•Region 1 size is 32K bytes with no wait states
Figure 5-2 shows the available SRAM/cache configurations for L1P.
Multicore Fixed and Floating-Point Digital Signal Processor
SPRS708—November 2010
L2 memory can be configured as all SRAM, all 4-way set-associative cache, or a mix of the two. The amount of L2
memory that is configured as cache is controlled through the L2MODE field of the L2 Configuration Register
(L2CFG) of the C66x CorePac. Figure 5-4 shows the available SRAM/cache configurations for L2. By default, L2 is
configured as all SRAM after device reset.
Figure 5-4TMS320C6672 L2 Memory Configurations
L2 Mode Bits
000001010011100
ADVANCE INFORMATION
101
L2 Memory
www.ti.com
Block Base
Address
0080 0000h
ALL
SRAM
15/16
SRAM
4-Way
Cache
7/8
SRAM
4-Way
Cache
3/4
SRAM
4-Way
Cache
1/2
SRAM
4-Way
Cache
ALL
Cache
4-Way
Cache
256Kbytes
128Kbytes
64Kbytes
32Kbytes
32Kbytes
0084 0000h
0086 0000h
0087 0000h
0087 8000h
0087 FFFFh
Global addresses are accessible to all masters in the system. In addition, local memory can be accessed directly by
the associated processor through aliased addresses, where the eight MSBs are masked to zero. The aliasing is handled
within the C66x CorePac and allows for common code to be run unmodified on multiple cores. For example, address
location 0x10800000 is the global base address for C66x CorePac Core 0's L2 memory. C66x CorePac Core 0 can
access this location by either using 0x10800000 or 0x00800000. Any other master on the device must use 0x10800000
only. Conversely, 0x00800000 can by used by any of the cores as their own L2 base addresses.
For C66x CorePac Core 0, as mentioned, this is equivalent to 0x10800000 and for C66x CorePac Core 1 this is
equivalent to 0x11800000. Local addresses should be used only for shared code or data, allowing a single image to
be included in memory. Any code/data targeted to a specific core, or a memory region allocated during run-time by
a particular core should always use the global address only.
5.1.4 MSMC SRAM
The MSMC SRAM configuration for the C6672 device is as follows:
•Memory size is 4096KB
•The MSMC SRAM can be configured as shared L2 and/or shared L3 memory
•Allows extension of external addresses from 2GB to up to 8GB
Multicore Fixed and Floating-Point Digital Signal Processor
www.ti.com
The MSM SRAM is always configured as all SRAM. When configured as a shared L2, its contents can be cached in
L1P and L1D. When configured in shared L3 mode, it’s contents can be cached in L2 also. For more details on
external memory address extension and memory protection features, see the Multicore Shared Memory Controller (MSMC) for KeyStone Devices User Guide (literature number SPRUGW7).
5.1.5 L3 Memory
The L3 ROM on the device is 128KB. The ROM contains software used to boot the device. There is no requirement
to block accesses from this portion to the ROM.
SPRS708—November 2010
5.2 Memory Protection
Memory protection allows an operating system to define who or what is authorized to access L1D, L1P, and L2
memory. To accomplish this, the L1D, L1P, and L2 memories are divided into pages. There are 16 pages of L1P (2KB
each), 16 pages of L1D (2KB each), and 32 pages of L2 (16KB each). The L1D, L1P, and L2 memory controllers in
the C66x CorePac are equipped with a set of registers that specify the permissions for each memory page.
Each page may be assigned with fully orthogonal user and supervisor read, write, and execute permissions. In
addition, a page may be marked as either (or both) locally accessible or globally accessible. A local access is a direct
DSP access to L1D, L1P, and L2, while a global access is initiated by a DMA (either IDMA or the EDMA3) or by
other system masters. Note that EDMA or IDMA transfers programmed by the DSP count as global accesses. On a
secure device, pages can be restricted to secure access only (default) or opened up for public, non-secure access.
The DSP and each of the system masters on the device are all assigned a privilege ID. It is possible to specify whether
memory pages are locally or globally accessible.
The AIDx and LOCAL bits of the memory protection page attribute registers specify the memory page protection
scheme, see Table 5-1.
Table 5-1Available Memory Page Protection Schemes
AIDx Bit Local Bit Description
0 0 No access to memory page is permitted.
0 1 Only direct access by DSP is permitted.
1 0 Only accesses by system masters and IDMA are permitted (includes EDMA and IDMA accesses initiated by the DSP).
1 1 All accesses permitted.
End of Table 5-1
Faults are handled by software in an interrupt (or an exception, programmable within the C66x CorePac interrupt
controller) service routine. A DSP or DMA access to a page without the proper permissions will:
•Block the access — reads return zero, writes are ignored
•Capture the initiator in a status register — ID, address, and access type are stored
•Signal event to DSP interrupt controller
The software is responsible for taking corrective action to respond to the event and resetting the error status in the
memory controller. For more information on memory protection for L1D, L1P, and L2, see the C66x CorePac User Guide (literature number SPRUGW0).
Multicore Fixed and Floating-Point Digital Signal Processor
SPRS708—November 2010
www.ti.com
5.3 Bandwidth Management
When multiple requestors contend for a single C66x CorePac resource, the conflict is resolved by granting access to
the highest priority requestor. The following four resources are managed by the Bandwidth Management control
hardware:
•Level 1 Program (L1P) SRAM/Cache
•Level 1 Data (L1D) SRAM/Cache
•Level 2 (L2) SRAM/Cache
•Memory-mapped registers configuration bus
ADVANCE INFORMATION
The priority level for operations initiated within the C66x CorePac are declared through registers in the C66x
CorePac. These operations are:
•DSP-initiated transfers
•User-programmed cache coherency operations
•IDMA-initiated transfers
The priority level for operations initiated outside the C66x CorePac by system peripherals is declared through the
Priority Allocation Register (PRI_ALLOC) System peripherals with no fields in PRI_ALLOC have their own
registers to program their priorities, see section 4.4 ‘‘Bus Priorities’’ on page 80 for more details.
More information on the bandwidth management features of the C66x CorePac can be found in the C66x CorePac User Guide (literature number SPRUGW0.)
5.4 Power-Down Control
The C66x CorePac supports the ability to power-down various parts of the C66x CorePac. The power-down
controller (PDC) of the C66x CorePac can be used to power down L1P, the cache control hardware, the DSP, and
the entire C66x CorePac. These power-down features can be used to design systems for lower overall system power
requirements.
Note—The C6672 does not support power-down modes for the L2 memory at this time.
More information on the power-down features of the C66x CorePac can be found in the TMS320C66x CorePac
Reference Guide (literature number SPRUGW0).
5.5 C66x CorePac Resets
Table 5-2 shows the reset types supported on the C6672 device and how they affect the resetting of the CorePac,
either both globally or just locally.
Table 5-2C66x CorePac Reset (Global or Local)
Reset Type Global C66x CorePac Reset Local C66x CorePac Reset
Power-On Reset Y Y
Warm Reset Y Y
System Reset Y Y
DSP Reset N Y
End of Table 5-2
For more detailed information on the global and local C66x CorePac resets, see the C66x CorePac Reference Guide
(literature number SPRUGW0). And for more detailed information on device resets, see section 7.7 ‘‘Reset
Multicore Fixed and Floating-Point Digital Signal Processor
www.ti.com
SPRS708—November 2010
5.6 C66x CorePac Revision
The version and revision of the C66x CorePac can be read from the CorePac Revision ID Register (MM_REVID)
located at address 0181 2000h. The MM_REVID register is shown in Table 5-3 and described in Table 5-4. The C66x
CorePac revision is dependant on the silicon revision being used.
Table 5-3CorePac Revision ID Register (MM_REVID)
Address - 0181 2000h
Bit31302928272625242322212019181716
Acronym
(1)
Reset
Bit1514131211109876543210
Acronym
(1)
Reset
1 R/W = Read/Write; R = Read only; -n = value after reset
Table 5-4CorePac Revision ID Register (MM_REVID) Field Descriptions
BitAcronymValueDescription
31:16VERSION-Version of the C66x CorePac implemented on the device.
15:0REVISION-Revision of the C66x CorePac version implemented on the device.
End of Table 5-4
VERSION
R-h
REVISION
R-n
5.7 C66x CorePac Register Descriptions
See the C66x CorePac Reference Guide (literature number SPRUGW0) for register offsets and definitions.
Multicore Fixed and Floating-Point Digital Signal Processor
SPRS708—November 2010
Table 6-1Absolute Maximum Ratings
Over Operating Case Temperature Range (Unless Otherwise Noted)
) range:
I
) range:
O
(2)
:
:
C
(3)
: -65°C to 150°C
stg
Supply voltage range
Input voltage (V
Output voltage (V
Operating case temperature range, T
Overshoot/undershoot
Storage temperature range, T
End of Table 6-1
1 Stresses beyond those listed under "absolute maximum ratings" may cause permanent damage to the device. These are stress ratings only, and functional operation of the
device at these or any other conditions beyond those indicated under "recommended operating conditions" is not implied. Exposure to absolute-maximum-rated
conditions for extended periods may affect device reliability.
2 All voltage values are with respect to VSS.
3 Overshoot/Undershoot percentage relative to I/O operating values - for example the maximum overshoot value for 1.8-V LVCMOS signals is DVDD18 + 0.20 × DVDD18 and
maximum undershoot value would be VSS - 0.20 × DVDD18
1 All differential clock inputs comply with the LVDS Electrical Specification, IEEE 1596.3-1996 and all SERDES I/Os comply with the XAUI Electrical Specification, IEEE
802.3ae-2002.
2 All SERDES I/Os comply with the XAUI Electrical Specification, IEEE 802.3ae-2002.
3 Where x = 1, 2, 3, 4... to indicate all supplies of the same kind.
Multicore Fixed and Floating-Point Digital Signal Processor
www.ti.com
SPRS708—November 2010
6.3 Electrical Characteristics
Table 6-3Electrical Characteristics
Over Recommended Ranges of Supply Voltage and Operating Case Temperature (Unless Otherwise Noted)
ParameterTest Conditions
High-level output voltage
V
OH
LVCMOS (1.8 V)I
2C (2)
I
LVCMOS (1.8 V)I
= IOH DV
O
= IOL 0.45
O
VOLLow-level output voltage
2
CI
I
= 3 mA, pulled up to 1.8 V0.4
O
No IPD/IPU-55μA
(3)
I
Input current [DC]
I
LVCMOS (1.8 V)
2
I
C
Internal pullup 50100170
Internal pulldown -170-100-50
0.1 × DVDD18 V < V
DVDD18 V
TBD TBD
I
High-level output current [DC]
OH
TBD TBD
TBD TBD
TBD TBD
TBD TBD
TBD TBD
Low-level output current [DC]
I
OL
TBD TBD
TBD TBD
TBD TBD
(4)
Off-state output current [DC]LVCMOS (1.8 V)-22μA
I
OZ
(1)
< 0.9 ×
I
MinTypMax Unit
- 0.45
DD18
- 0.4
DD15
-10 10μA
VDDR3DV
VDDR3 0.4
mA
mA
ADVANCE INFORMATION
End of Table 6-3
1 For test conditions shown as MIN, MAX, or TYP, use the appropriate value specified in the recommended operating conditions table.
2
2 I
C uses open collector IOs and does not have a V
3II applies to input-only pins and bi-directional pins. For input-only pins, II indicates the input leakage current. For bi-directional pins, II includes input leakage current and
Multicore Fixed and Floating-Point Digital Signal Processor
www.ti.com
SPRS708—November 2010
7 TMS320C6672 Peripheral Information and Electrical Specifications
This chapter covers the various peripherals on the TMS320C6672 DSP. Peripheral-specific information, timing
diagrams, electrical specifications, and register memory maps are described in this chapter.
7.1 Parameter Information
This section describes the conditions used to capture the electrical data seen in this chapter.
The data manual provides timing at the device pin. For output analysis, the transmission line and associated
parasitics (vias, multiple nodes, etc.) must also be taken into account. The transmission line delay varies depending
on the trace length. An approximate range for output delays can vary from 176 ps to 2 ns depending on the end
product design. For recommended transmission line lengths, see the appropriate application notes, user guides, and
design guides. A transmission line delay of 2 ns was used for all output measurements, except the DDR3, which was
evaluated using a 528-ps delay.
2
Figure 7-1 represents all device outputs, except differential or I
Figure 7-1Test Load Circuit for AC Timing Measurements
C.
Device
DDR3 Output Test Load
Transmission Line
Zo=50W
4pF
Data Manual Timing
Reference Point
(Device Terminal)
Device
Output Test Load Excluding DDR3
Transmission Line
Zo=50W
5pF
The load capacitance value stated is only for characterization and measurement of AC timing signals. This load
capacitance value does not indicate the maximum load the device is capable of driving.
7.1.1 1.8-V Signal Transition Levels
All input and output timing parameters are referenced to 0.9 V for both 0 and 1 logic levels.
Figure 7-2Input and Output Voltage Reference Levels for AC Timing Measurements
ADVANCE INFORMATION
V= 0.9 V
ref
Copyright 2010 Texas Instruments IncorporatedTMS320C6672 Peripheral Information and Electrical Specifications93
TMS320C6672
)
Multicore Fixed and Floating-Point Digital Signal Processor
SPRS708—November 2010
All rise and fall transition timing parameters are reference to VIL MAX and VIH MIN for input clocks.
Figure 7-3Rise and Fall Transition Time Voltage Reference Levels
7.1.2 Timing Parameters and Board Routing Analysis
The timing parameter values specified in this data sheet do not include delays by board routings. As a good board
ADVANCE INFORMATION
design practice, such delays must always be taken into account. Timing values may be adjusted by
increasing/decreasing such delays. TI recommends using the available I/O buffer information specification (IBIS)
models to analyze the timing characteristics correctly. To properly use IBIS models to attain accurate timing analysis
for a given system, see the Using IBIS Models for Timing Analysis application report (literature number TBD). If
needed, external logic hardware such as buffers may be used to compensate any timing differences.
For inputs, timing is most impacted by the round-trip propagation delay from the DSP to the external device and
from the external device to the DSP. This round-trip delay tends to negatively impact the input setup time margin,
but also tends to improve the input hold time margins (see Table 7-1andFigure 7-4).
Table 7-1Board-Level Timing Example
(see Figure 7-4)
No. Description
1 Clock route delay
2 Minimum DSP hold time
3 Minimum DSP setup time
4 External device hold time requirement
5 External device setup time requirement
6 Control signal route delay
7 External device hold time
8 External device access time
9 DSP hold time requirement
10 DSP setup time requirement
11 Data route delay
End of Table 7-1
V= V MIN (or VMIN
refIHOH
www.ti.com
94TMS320C6672 Peripheral Information and Electrical SpecificationsCopyright 2010 Texas Instruments Incorporated
TMS320C6672
Multicore Fixed and Floating-Point Digital Signal Processor
www.ti.com
Figure 7-4 shows a general transfer between the DSP and an external device. The figure also shows board route
delays and how they are perceived by the DSP and the external device
Figure 7-4Board-Level Input/Output Timings
AECLKOUT
(Output from DSP)
AECLKOUT
(Input to External Device)
Control Signals
(Output from DSP)
Control Signals
(Input to External Device)
Data Signals
(Output from External Device)
Data Signals
(Input to DSP)
(A)
(B)
(B)
3
6
1
2
4
5
10
7
9
8
11
SPRS708—November 2010
(A) Control signals include data for writes.
(B) Data signals are generated during reads from an external device.
ADVANCE INFORMATION
Copyright 2010 Texas Instruments IncorporatedTMS320C6672 Peripheral Information and Electrical Specifications95
TMS320C6672
Multicore Fixed and Floating-Point Digital Signal Processor
SPRS708—November 2010
7.2 Recommended Clock and Control Signal Transition Behavior
All clocks and control signals must transition between VIH and VIL (or between VIL and VIH) in a monotonic
manner.
7.3 Power Supplies
The following sections describe the proper power-supply sequencing and timing needed to properly power on the
C6672. The various power supply rails and their primary function is listed in Table 7-2 below.
Table 7-2Power Supply Rails on TMS320C6672
ADVANCE INFORMATION
NamePrimary FunctionVoltage Notes
CVDDSmartReflex core supply voltage0.9 - 1.1 V Includes core voltage for DDR3 module
CVDD1Core supply voltage for memory
array
VDDT1HyperLink SerDes termination
supply
VDDT2SGMII/SRIO/PCIE SerDes
termination supply
DVDD151.5-V DDR3 IO supply1.5 V
VDDR1HyperLink SerDes regulator supply 1.5 VFiltered version of DVDD15. Special considerations for noise. Filter is not needed if
VDDR2PCIE SerDes regulator supply1.5 VFiltered version of DVDD15. Special considerations for noise. Filter is not needed if PCIE
VDDR3SGMII SerDes regulator supply1.5 VFiltered version of DVDD15. Special considerations for noise. Filter is not needed if
VDDR4SRIO SerDes regulator supply1.5 VFiltered version of DVDD15. Special considerations for noise. Filter is not needed if SRIO
VDDR6
DVDD181.8-V IO supply1.8V
AVDDA1Main PLL supply 1.8 VFiltered version of DVDD18. Special considerations for noise.
AVDDA2DDR3 PLL supply1.8 VFiltered version of DVDD18. Special considerations for noise.
AVDDA3PASS PLL supply 1.8 VFiltered version of DVDD18. Special considerations for noise.
VREFSSTL0.75-V DDR3 reference voltage0.75 VShould track the 1.5-V supply. Use 1.5 V as source.
VSSGroundGND
End of Table 7-2
1.0 VFixed supply at 1.0 V
1.0 VFiltered version of CVDD1. Special considerations for noise. Filter is not needed if
1.0 VFiltered version of CVDD1. Special considerations for noise. Filter is not needed if
www.ti.com
HyperLink is not in use.
SGMII/SRIO/PCIE is not in use.
HyperLink is not in use.
is not in use.
SGMII is not in use.
is not in use.
7.3.1 Power-Supply Sequencing
This section defines the requirements for a power up sequencing from a Power-on reset condition. There are two
acceptable power sequences for the device. The first sequence stipulates the core voltages starting before the IO
voltages as shown below.
1.CVDD
2.CVDD1, VDDT1-3
3.DVDD18, AVDD1, AVDD2 (HHV)
4.DVDD15, VDDR1-6
The second sequence provides compatibility with other TI processors with the IO voltage starting before the core
voltages as shown below.
1.DVDD18, AVDD1, AVDD2 (HHV)
2.CVDD
96TMS320C6672 Peripheral Information and Electrical SpecificationsCopyright 2010 Texas Instruments Incorporated
TMS320C6672
Multicore Fixed and Floating-Point Digital Signal Processor
www.ti.com
3.CVDD1, VDDT1-3
4.DVDD15, VDDR1-6
The device initialization is broken into two phases. The first phase consists of the time period from the activation of
the first power supply until the point in which all supplies are active and at a valid voltage level. Either of the
sequencing scenarios described above can be implemented during this phase. The figures below show both the
core-before-IO voltage sequence and the IO-before-core voltage sequence. POR
must be held low for the entire
power stabilization phase.
SPRS708—November 2010
This is followed by the device initialization phase. Either POR
or RESETFULL may be used to trigger the end of the
initialization phase, but both must be inactive for the initialization to complete. The differences between
POR
-controlled initialization and RESETFULL initialization are described below. The following section has a
mention of REFCLK in many places. REFCLK here refers to the clock input that has been selected as the source for
the Main PLL. See Figure 7-23 for more details.
For more information on Power Supply sequencing see the Hardware Design Guide for KeyStone Devices (literature
number SPRABI2).
7.3.1.1 POR-Controlled Device Initialization
The timing diagrams in the figures below show the power sequencing and reset control of the device when
RESETFULL
is held high and POR is used to control the device initialization. In this mode, POR must be held low
until the power has been stable for the required 100 μsec and the device initialization requirements have been met.
On the rising edge of POR
and pulls. The POR
, the HHV signal will go inactive allowing the core to control the state of the output buffers
must be held for the 100 μsec after the power has stabilized plus the time period between that100
μsec and when the clock is active in addition to the 16 μsec following the active clock. If the clock becomes active
before the 100 μsec stabilization period has expired, only the additional 16 μsecs of POR
is required to complete
initialization.
Note—REFCLK must always be active before POR can be removed.
7.3.1.1.1 Core-Before-IO Power Sequencing
ADVANCE INFORMATION
Copyright 2010 Texas Instruments IncorporatedTMS320C6672 Peripheral Information and Electrical Specifications97
TMS320C6672
Multicore Fixed and Floating-Point Digital Signal Processor
SPRS708—November 2010
The timing diagram for core-before-IO power sequencing is shown in Figure 7-5 and defined in Table 7-3.
Figure 7-5POR-Controlled Power Sequencing — Core Before IO
Power Stabilization PhaseC hip Initializ ation Phas e
PORz
RESETFULLz
ADVANCE INFORMATION
RESET z
t1
C VDD(core AVS)
CVDD1 (core constant)
DVDD18 (1.8V)
DVDD15 (1 .5V)
t2b
t4b
t2a
t5
t3
t4a
t2c
www.ti.com
t6
t7
REFC LKP&N
DDRCLKP&N
RES ETSTA Tz
PORz Controlled Reset Sequencing – Core before IO
Table 7-3POR-Controlled Power Sequencing — Core Before IO (Part 1 of 2)
TimeSystem State
t1Begin Power Stabilization Phase
• CVDD (core AVS) ramps up.
•POR
must be held low through the power stabilization phase. Because POR is low, all the core logic that has async reset (created from
POR
) is put into the reset state.
t2a• CVDD1 (core constant) ramps at the same time or shortly following CVDD. Although ramping CVDD1 and CVDD simultaneously is
t2b• Once CVDD is valid, the clock drivers should be enabled. Although the clock inputs are not necessary at this time, they should either be
t2c• The DDRCLK and REFCLK may begin to toggle anytime between when CVDD is at a valid level and the setup time before POR
t3• DVDD18 (1.8 V) supply is ramped up followed coincidentally by HHV (1.8 V).
t4a• DVDD15 (1.5 V) supply is ramped up following DVDD18. Although ramping DVDD18 and DVDD15 simultaneously is permitted, the
permitted, the voltage for CVDD1 must never exceed CVDD until after CVDD has reached a valid voltage.
• The purpose of ramping up the core supplies close to each other is to reduce crowbar current. CVDD1 (core constant) should trail CVDD
(core AVS) as this will ensure that the WLs in the memories are turned off and there is no current through the memory bit cells. If,
however, CVDD1 (core constant) ramps up before CVDD (core AVS), then the worst-case current could be on the order of twice the
specified draw of CVDD1.
driven with a valid clock or be held in a static state with one leg high and one leg low.
goes high
specified by t7.
• Filtered versions of 1.8 V can ramp simultaneously with DVDD18.
• RESETSTAT is driven low once the DVDD18 supply is available.
• All LVCMOS input and bidirectional pins must not be driven or pulled high until DVDD18 is present. Driving an input or bidirectional pin
before DVDD18 is valid could cause damage to the device.
voltage for DVDD15 must never exceed DVDD18.
98TMS320C6672 Peripheral Information and Electrical SpecificationsCopyright 2010 Texas Instruments Incorporated
TMS320C6672
Multicore Fixed and Floating-Point Digital Signal Processor
www.ti.com
Table 7-3POR-Controlled Power Sequencing — Core Before IO (Part 2 of 2)
TimeSystem State
t4b• RESETFULL and RESET may be driven high anytime after DVDD18 is at a valid level. In a POR controlled boot both RESETFULL and RESET
t5• POR
must be high before POR
must continue to remain low for at least 100 μs after power has stabilized.
is driven high.
End Power Stabilization Phase
t6• Device initialization requires 500 REFCLK periods after the Power Stabilization Phase. The maximum clock period is 33.33 nsec, so a delay
of an additional 16 μs is required before a rising edge of POR
t7• The rising edge of POR
• Once device initialization and the efuse farm scan are complete, the RESETSTAT
will remove the reset to the efuse farm, allowing the scan to begin.
. The clock must be active during the entire 16 μs.
signal is driven high. This delay will be 10000 to 50000
clock cycles.
End Device Initialization Phase
End of Table 7-3
7.3.1.1.2 IO-Before-Core Power Sequencing
The timing diagram for IO-before-core power sequencing is shown in Figure 7-6 and defined in Table 7-4.
Figure 7-6POR-Controlled Power Sequencing — IO Before Core
SPRS708—November 2010
PORz
RESETF ULLz
RESETz
CVDD(core AVS)
CVDD1 ( core constant)
DVDD18 (1.8V)
DVDD15 (1.5V)
REFCLKP&N
DDRCLKP&N
RESETSTATz
Power Stabilization PhaseC hip Initialization Phase
t2a
t3a
t2b
t1
t4
t3b
t5
t3c
t6
t7
ADVANCE INFORMATION
PORz Controlled Reset Sequencing – IO before Core
Copyright 2010 Texas Instruments IncorporatedTMS320C6672 Peripheral Information and Electrical Specifications99
TMS320C6672
Multicore Fixed and Floating-Point Digital Signal Processor
SPRS708—November 2010
www.ti.com
Table 7-4POR
TimeSystem State
t1Begin Power Stabilization Phase
• DVDD18 (1.8 V) supply is ramped up followed coincidentally by HHV (1.8 V).
•Since POR
• Filtered versions of 1.8V can ramp simultaneously with DVDD18.
• RESETSTAT is driven low once the DVDD18 supply is available.
• All input and bidirectional pins must not be driven or pulled high until DVDD18 is present. Driving an input or bidirectional pin before
t2a• RESETFULL
ADVANCE INFORMATION
t2b• CVDD (core AVS) ramps up.
t3a• CVDD1 (core constant) ramps at the same time or following CVDD. Although ramping CVDD1 and CVDD simultaneously is permitted the
• The purpose of ramping up the core supplies close to each other is to reduce crowbar current. CVDD1 (core constant) should trail CVDD
t3b• Once CVDD is valid the clock drivers should be enabled. Although the clock inputs are not necessary at this time they should either be
t3c• The DDRCLK and REFCLK may begin to toggle anytime between when CVDD is at a valid level and the setup time before POR
t4• DVDD15 (1.5 V) supply is ramped up following CVDD1.
t5• POR must continue to remain low for at least 100 μs after power has stabilized.
End Power Stabilization Phase
t6Begin Device Initialization
• Device initialization requires 500 REFCLK periods after the Power Stabilization Phase. The maximum clock period is 33.33 nsec so a delay
•POR
t7• The rising edge of the POR
• Once device initialization and the efuse farm scan are complete, the RESETSTAT
End Device Initialization Phase
End of Table 7-4
-Controlled Power Sequencing — IO Before Core
is low all the core logic having async reset (created from POR) are put into reset state once the core supply ramps. POR must
remain low through Power Stabilization Phase.
DVDD18 could cause damage to the device.
and RESET may be driven high anytime after DVDD18 is at a valid level. In a POR-controlled boot both RESETFULL and RESET
must be high before POR
voltage for CVDD1 must never exceed CVDD until after CVDD has reached a valid voltage.
(core AVS) as this will ensure that the WLs in the memories are turned off and there is no current through the memory bit cells. If,
however, CVDD1 (core constant) ramps up before CVDD (core AVS) then the worst case current could be on the order of twice the
specified draw of CVDD1.
driven with a valid clock or held is a static state with one leg high and one leg low.
specified by t7.
of an additional 16 μs is required before a rising edge of POR
must remain low.
clock cycles.
is driven high.
will remove the reset to the efuse farm allowing the scan to begin.
goes high
. The clock must be active during the entire 16 μs.
signal is driven high. This delay will be 10000 to 50000
The timing diagrams in the figures below show the power sequencing and reset control of the device when
RESETFULL
stable for the required 100 μsec, but RESETFULL
been met. On the rising edge of POR
Note—REFCLK must always be active before POR can be removed.
7.3.1.2.1 Core-Before-IO Power Sequencing
100TMS320C6672 Peripheral Information and Electrical SpecificationsCopyright 2010 Texas Instruments Incorporated
is used to extend device initialization. In this mode, POR may be removed after the power has been
may be held low until the device initialization requirements have
, the HHV signal will go inactive.
Loading...
+ hidden pages
You need points to download manuals.
1 point = 1 manual.
You can buy points or you can get point for every manual you upload.