ADVANCE INFORMATION concerns new products in the sampling
or preproduction phase of development. Characteristic data and
other specifications are subject to change without notice.
› IEEE1588 Support
–64-Bit DDR3 Interface
–UART Interface
2
–I
C Interface
–16 GPIO pins
–SPI Interface
– Semaphore Module
–Eight 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
TMS320C6670
Multicore Fixed and Floating-Point System-on-Chip
SPRS689—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 TMS320C6670 Communications Infrastructure KeyStone SoC is a member of the C66xx SoC family based on
TI's new KeyStone Multicore SoC Architecture designed specifically for high performance wireless infrastructure
applications. The C6670 provides a very high performance macro basestation platform for developing all wireless
standards including WCDMA/HSPA/HSPA+, TD-SCDMA, GSM, TDD-LTE, FDD-LTE, and WiMAX. The C6670
also sets a new standard for clock speed with operating frequencies up to 1.2 GHz.
TI's SoC architecture provides a programmable platform integrating various subsystems (C66x cores, IP network,
radio layers 1 and 2, and transport processing) and uses a queue-based communication system that allows the SoC
resources to operate efficiently and seamlessly. This unique SoC architecture also includes a TeraNet Switch that
enables the wide mix of system elements, from programmable cores to dedicated coprocessors and high speed IO,
to each operate at maximum efficiency with no blocking or stalling.
TI's new C66x core launches a new era of DSP technology by combining fixed point and floating point
computational capability in the processor without sacrificing speed, size, or power consumption. The
raw computational performance is an industry-leading 32 GMACS/core and 16 Gflops/core (@ 1.2 GHz operating
frequency). The C66x is also 100% backward compatible with software for C64x+ devices. The C66x core
incorporates 90 new instructions targeted for floating point (FPi) and vector math oriented (VPi) processing. These
enhancements yield tremendous performance improvements in multi-antenna 4.8G signal processing for
algorithms like MIMO and beamforming.
The C6670 contains many wireless basestation coprocessors to offload the bulk of the processing demands of layer 1
and layer 2 base station processing. This keeps the cores free for receiver algorithms and other differentiating
functions. The SoC contains numerous copies of key coprocessors such as the FFTC and TCP3d. The architectural
elements of the SoC (Multicore Navigator) ensure that all the bits are processed without any CPU intervention or
overhead, allowing the system to make optimal use of its resources.
TI's scalable multicore SoC architecture solutions provide developers with a range of software- and
hardware-compatible devices to minimize development time and maximize reuse across all base station platforms
from Femto to Macro.
12Copyright 2010 Texas Instruments Incorporated
TMS320C6670
Multicore Fixed and Floating-Point System-on-Chip
www.ti.com
The C6670 device has a complete set of development tools that includes: a C compiler, an assembly optimizer to
simplify programming and scheduling, and a Windows® debugger interface for visibility into source code execution.
SPRS689—November 2010
1.3 Functional Block Diagram
Figure 1-1 shows the functional block diagram of the TMS320C6670 device.
Figure 1-1Functional Block Diagram
Memory Subsystem
64-Bit
DDR3 EMIF
Debug & Trace
Boot ROM
Semaphore
Power
Management
PLL
EDMA
HyperLink
´3
´3
2MB
MSM
SRAM
MSMC
RSA RSA
C66x™
CorePac
32KB L1
P-Cache
1024KB L2 Cache
4 Cores @ 1.0 GHz / 1.2 GHz
TeraNet
32KB L1
D-Cache
´2
C6670
Coprocessors
VCP2
TCP3d
TCP3e
FFTC
Multicore Navigator
´4
´2
´2
ADVANCE INFORMATION
Queue
Manager
6
´
2
IC
Others
Copyright 2010 Texas Instruments Incorporated13
PCIe2
UART
SPI
´
AIF2
´
Switch
SRIO4
Ethernet
2
´
SGMII
Network Coprocessor
Switch
Packet
DMA
Security
Accelerator
Packet
Accelerator
TMS320C6670
Multicore Fixed and Floating-Point System-on-Chip
SPRS689—November 2010
2 Device Overview
2.1 Device Characteristics
Table 2-1 provides an overview of the TMS320C6670 DSP. The table shows significant features of the C6670 device,
including the capacity of on-chip RAM, the peripherals, the CPU frequency, and the package type with pin count.
2.2 CPU (DSP Core) Description
Table 2-1Characteristics of the C6670 Processor (Part 1 of 2)
Table 2-1Characteristics of the C6670 Processor (Part 2 of 2)
HARDWARE FEATURES TMS320C6670
Process Technology μm 0.040 μm
Product Status
End of Table 2-1
1 The Security Accelerator function is subject to export control and will be enabled only for approved device shipments.
2 ADVA NCE INFOR MATION co ncerns ne w product s in the sa mpling or preproduction phase of development. Characteristic data and other specifications are sub ject to change
without notice.
(2)
Product Preview (PP), Advance Information (AI),
or Production Data (PD)
AI
The C66x Central Processing Unit (CPU) extends the performance of the C64x+ and C674x CPUs through
enhancements and new features. Many of the new features target increased performance for vector processing. The
C64x+ and C674x CPUs support 2-way SIMD operations for 16-bit data and 4-way SIMD operations for 8-bit data.
On the C66x CPU, the vector processing capability is improved by extending the width of the SIMD instructions.
C66x CPUs 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 CPU 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
programmers through the use of TI's optimized C/C++ compiler.
SPRS689—November 2010
The C66x CPU 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.
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.
ADVANCE INFORMATION
Each C66x .M unit also includes IEEE floating-point multiplication operations from the C674x CPU. This 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 CPU 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
ADVANCE INFORMATION
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 CPU stall
until the completion of all the CPU-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
www.ti.com
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 CPU and its enhancements over the C64x+ and C674x architectures, see the following
documents ( ‘‘Related Documentation from Texas Instruments’’ on page 59):
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. A Hard reset, Soft reset or 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
7.7 ‘‘Reset Controller’’ on page 153.
The C6670 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 in ‘‘Related
Documentation from Texas Instruments’’ on page 59.
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 is released from reset and begins executing from the L3 ROM base address.
After performing the boot process (e.g., from I
execution from the L2 RAM base address.
•Secure ROM Boot - On secure devices, the C66x CorePac 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
initiates the boot process. The C66x CorePac performs any authentication and decryption required on the
bootloaded image prior to beginning execution.
2
C ROM, Ethernet, or RapidIO), the C66x CorePac then begins
The boot process performed by the C66x CorePac in public ROM boot and secure ROM boot are determined by the
BOOTMODE[12:0] value in the DEVSTAT register. The C66x CorePac reads this value, and then executes the
associated boot process in software. Figure 2-2 shows the bits associated with BOOTMODE[12:0]. The PLL settings
is shown at the end of this section, and the PLL setup details can be found in Section 7.8 ‘‘Main PLL and the PLL
Controller’’ on page 160
Figure 2-2Boot Mode Pin Decoding
Boot Mode Pins
1211109876543210
PLL Mult I
2
C /SPI Ext Dev CfgDevice ConfigurationReservedBoot Device
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, both the message mode and DirectIO 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)
I
2
Boot from I
Boot from I
Master mode
Passive mode (see ‘‘I2C Passive Mode’’ on page 32)
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
TMS320C6670
SPRS689—November 2010
2.5.3 PLL Settings
The PLL default settings are determined by the BOOTMODE[12:10] bits. 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.
The Main PLL is controlled using a PLL controller and a chip level MMR. The DDR3 PLL and PASS PLL are
controlled by chip level MMRs. For details on how to setup the PLL see Section 7.8 ‘‘Main PLL and the PLL
Controller’’ on page 160. For details on the operation of the PLL controller module, see the Phase Locked Loop (PLL)
Controller for KeyStone Devices User Guide in ‘‘Related Documentation from Texas Instruments’’ on page 59.
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.
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 chapter 3 ‘‘Device Configuration’’ on page 60.
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 the Hardware Design Guide for KeyStone Devices in ‘‘Related Documentation from Texas Instruments’’ on page 59.
Definition
Table 2-15
Column Heading
IPD/IPU
ADVANCE INFORMATION
Table 2-15Terminal Functions — Signals and Control by Function (Part 1 of 12)
In case the customer would like to develop their own features and software on the C6670 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.
These documents describe the TMS320C6670 Multicore Fixed and Floating-Point System-on-Chip. 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
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
2
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
Rake Search Accelerator (RSA) for KeyStone Devices User GuideSPRUGY7
Serial Peripheral Interface (SPI) for KeyStone Devices User GuideSPRUGP2
Serial RapidIO (SRIO) for KeyStone Devices User GuideSPRUGW1
Turbo Decoder Coprocessor 3 (TCP3d) for KeyStone Devices User GuideSPRUGS0
Turbo Encoder Coprocessor 3 (TCP3e) for KeyStone Devices User GuideSPRUGS1
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
Using IBIS Models for Timing AnalysisSPRA839
Viterbi Coprocessor (VCP2) for KeyStone Devices User GuideSPRUGV6
On the TMS320C6670 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,
ADVANCE INFORMATION
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.
www.ti.com
Table 3-1TMS320C6670 Device Configuration Pins
Configuration Pin Pin No. IPD/IPU
LENDIAN
BOOTMODE[12:0]
PCIESSMODE[1:0]
PCIESSEN
CORECLKSEL
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)
(1)
pulldown/pullup resistors and situations in which external pulldown/pullup resistors are required, see Section 3.4 ‘‘Pullup/Pulldown Resistors’’ on page 76.
Several of the peripherals on the TMS320C6670 are controlled by the Power Sleep Controller (PSC). By default, the
PCIe, SRIO, HyperLink, FFTC, AIF2, TCP3d, TCP3e, and VCP 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.
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 in ‘‘Related
Documentation from Texas Instruments’’ on page 59.
3.3 Device State Control Registers
The TMS320C6670 device has a set of registers that are used to control the status of its peripherals. These registers
are shown in Table 3-2.
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
0x026200380x0262003B4BKICK0
0x0262003C0x0262003F4BKICK1
0x026200400x026200434BDSP_BOOT_ADDR0The boot address for C66x DSP CorePac 0
0x026200440x026200474BDSP_BOOT_ADDR1The boot address for C66x DSP CorePac 1
0x026200480x0262004B4BDSP_BOOT_ADDR2The boot address for C66x DSP CorePac 2
0x0262004C0x0262004F4BDSP_BOOT_ADDR3The boot address for C66x DSP CorePac 3
0x026200500x026200534BReserved
0x026200540x026200574BReserved
0x026200580x0262005B4BReserved
0x0262005C0x0262005F4BReserved
0x026200600x026200DF128BReserved
0x026200E00x0262010F48BReserved
0x026201100x026201178BMACIDSee section 7.19 ‘‘Ethernet MAC (EMAC)’’ on page 190
Table 3-3Device Status Register Field Descriptions
BitFieldDescription
31-18 ReservedReserved. Read only, writes have no effect.
17PACLKSELPA Clock select to select the reference clock for PA Sub-System PLL
0 = Selects PASSCLKP/N
1 = Selects output of Main PLL MUX (SYSCLK vs. ALTCORECLK - depending on CORECLKSEL pin)
16PCIESSENPCIe module enable
0 = PCIe module disabled
1 = PCIe module enabled
15-14 PCIESSMODE[1:0]PCIe Mode selection pins
ADVANCE INFORMATION
13-1BOOTMODE[12:0]Determines the bootmode configured for the device. For more information on bootmode, see Section 2.5 ‘‘Boot Modes
0LENDIANDevice Endian mode (LENDIAN) — Shows the status of whether the system is operating in Big Endian mode or Little
End of Table 3-3
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
Supported and PLL Settings’’ on page 27 and see the Bootloader for the C66x DSP User Guide in ‘‘Related Documentation
from Texas Instruments’’ on page 59.
Endian mode (default).
0 = System is operating in Big Endian mode
1 = System is operating in Little Endian mode (default)
www.ti.com
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.
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:1ReservedReserved. 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 0x02620018. 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 11010000 0010 111bR-1
Legend: RW = Read/Write; R = Read only; -n = value after reset
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 1101bPart Number for boundary scan
11-1MANUFACTURER0000 0010 111bManufacturer
0LSB1bThis bit is read as a 1 for TMS320C6670
End of Table 3-5
SPRS689—November 2010
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 61 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
and NMI based on
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)
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.
Table 3-8Reset Status Register (RESET_STAT) Field Descriptions
BitFieldDescription
31GRGlobal reset status
0 = Device has not received a global reset.
1 = Device received a global reset.
30-4ReservedReserved.
3LR3CorePac 3 reset status
0 = CorePac 3 has not received a local reset.
1 = CorePac 3 received a local reset.
2LR2CorePac 2 reset status
0 = CorePac 2 has not received a local reset.
1 = CorePac 2 received a local reset.
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
SPRS689—November 2010
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)
Table 3-9Reset Status Clear Register (RESET_STAT_CLR) Field Descriptions (Part 2 of 2)
BitFieldDescription
2LR2CorePac 2 reset Clear bit
0 = Writing a 0 has no effect.
1 = Writing a 1 to the LR2 bit clears the corresponding bit in the RESET_STAT register.
1LR1CorePac 1 reset Clear bit
0LR0CorePac 0 reset Clear bit
ADVANCE INFORMATION
End of Table 3-9
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)
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.
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.
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.
Figure 3-9Power State Control Register (PWRSTATECTL)
Table 3-11Power State Control Register (PWRSTATECTL) Field Descriptions
BitFieldDescription
31-3GENERAL_PURPOSEUsed to provide a start address for execution out of the hibernation modes. See the Bootloader for the C66x DSP User
Guide in ‘‘Related Documentation from Texas Instruments’’ on page 59.
2HIBERNATION_MODEIndicates whether the device is in hibernation mode 1 or mode 2.
0 = Hibernation mode 1
1 = Hibernation mode 2
1HIBERNATIONIndicates whether the device is in hibernation mode or not.
0 = Not in hibernation mode
1 = Hibernation mode
0STANDBYIndicates whether the device is in standby mode or not.
0 = Not in standby mode
1 = Standby mode
End of Table 3-11
SPRS689—November 2010
ADVANCE INFORMATION
3.3.11 NMI Even Generation to CorePac (NMIGRx) Register
NMIGRx registers are used for generating NMI events to the corresponding CorePac. The C6670 has
four NMIGRx registers (NMIGR0 through NMIGR3). 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.
Table 3-12NMI Generation Register (NMIGRx) Field Descriptions
BitFieldDescription
31-1ReservedReserved
0NMIGReads return 0
Writes:
0 = No effect
1 = Creates NMI pulse to the corresponding CorePac — CorePac0 for NMIGR0, etc.
End of Table 3-12
www.ti.com
ADVANCE INFORMATION
3.3.12 IPC Generation (IPCGRx) Registers
IPCGRx are the IPC interrupt generation registers to facilitate inter CorePac interrupts.
The C6670 has four IPCGRx registers (IPCGR0 through IPCGR3) 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 <= 3).
These registers also provide a Source ID facility by which up to 28 different sources of interrupts can be identified.
Al location 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 Generation Register is shown in Figure 3-11 and described in Table 3-13.
The C6670 has four IPCARx (IPCAR0 through IPCAR3) 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-4SRCCxReads 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
SPRS689—November 2010
3.3.14 IPC Generation Host (IPCGRH) Register
IPCGRH register is provided to facilitate host CPU 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).
The host interrupt output pulse should be stretched. It should be asserted for 4 bootcfg clock cycles (CPU/6)
followed by a deassertion of 4 bootcfg clock cycles. Generating the pulse will result in 8 CPU/6 cycle pulse blocking
window. Write to IPCGRH with IPCG bit (bit 0) set will only generate a pulse if they are beyond 8 CPU/6 cycle
period. The IPC Generation Host Register is shown in Figure 3-13 and described in Table 3-15.
Table 3-15IPC Generation Registers (IPCGRH) Field Descriptions
BitFieldDescription
31-4SRCSxReads 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
ADVANCE INFORMATION
End of Table 3-15
3.3.15 IPC Acknowledgement Host (IPCARH) Register
IPCARH registers are provided to facilitate host CPU 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
Table 3-16.
Figure 3-14IPC Acknowledgement Register (IPCARH)
1 = Creates an interrupt pulse on device pin (host interrupt/event output in HOUT pin)
Legend: R = Read only; RW = Read/Write; -n = value after reset
Table 3-16IPC Acknowledgement Register (IPCARH) Field Descriptions
BitFieldDescription
31-4SRCCxReads 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-16
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.
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
RSTMUX3 for each of the four CorePacs on the C6670. 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.
Figure 3-17Reset Mux Register (RSTMUX0 through RSTMUX3)
7-5DELAY000b = 256 CPU/6 cycles delay between NMI & Local reset, when OMODE = 100b
001b = 512 CPU/6 cycles delay between NMI & Local reset, when OMODE=100b
010b = 1024 CPU/6 cycles delay between NMI & Local reset, when OMODE=100b
011b = 2048 CPU/6 cycles delay between NMI & Local reset, when OMODE=100b
100b = 4096 CPU/6 cycles delay between NMI & Local reset, when OMODE=100b (Default)
101b = 8192 CPU/6 cycles delay between NMI & Local reset, when OMODE=100b
110b = 16384 CPU/6 cycles delay between NMI & Local reset, when OMODE=100b
111b = 32768 CPU/6 cycles delay between NMI & Local reset, when OMODE=100b
4EVTSTAT0 = No event received (Default)
1 = WD timer event received by Reset Mux block
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 C6670
110b = Reserved
111b = Reserved
0LOCK0 = Register fields are not locked (Default)
1 = Register fields are locked until the next timer reset
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Ω r esi sto r can b e used to op pos e the IPU/I PD wh ile 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 TMS320C6670 device, see Section 6.3 ‘‘Electrical Characteristics’’ on page 92.
To determine which pins on the device include internal pullup/pulldown resistors, seeTable 2-16 ‘‘Terminal
On the TMS320C6670 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. For example, data is transferred to the VCP2 via its configuration bus. 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 CPU/2 frequency. The other connects masters to slaves via 128-bit data buses running at a CPU/3
frequency. Peripherals that match the native bus width of the SCR it’s 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 CPU/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.
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.
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
ADVANCE INFORMATION
priority level for transaction from this master port is described by PKTDMA_PRI_ALLOC register in Figure 4-1 and
The C66x CorePac also provides support for memory protection and bandwidth management (for resources local
to the CorePac). Figure 5-1 shows a block diagram of the C66x CorePac.
For more detailed information on the C66x CorePac in the C6670 device, see the C66x CorePac User Guide
in ‘‘Related Documentation from Texas Instruments’’ on page 59.
5.1 Memory Architecture
Each core of the TMS320C6670 device contains a 1024KB level-2 memory (L2), a 32KB level-1 program memory
(L1P), and a 32KB level-1 data memory (L1D). The device also contain a 2048KB multicore shared memory (MSM).
All memory on the C6670 has a unique location in the memory map (see Table 2-2 ‘‘TMS320C6670 Memory Map
Summary’’ on page 18.
After device reset, L1P and L1D cache are configured as all cache, by default. The L1P and L1D cache can be
ADVANCE INFORMATION
reconfigured via software through the L1PMODE field of the L1P Configuration Register (L1PMODE) 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.
The on-chip bootloader changes the reset configuration for L1P and L1D. For more information, see the Bootloader for the C66x DSP User Guide in ‘‘Related Documentation from Texas Instruments’’ on page 59.
For more information on the operation L1 and L2 caches, see the C66x DSP Cache User Guide in ‘‘Related
Documentation from Texas Instruments’’ on page 59.
www.ti.com
5.1.1 L1P Memory
The L1P memory configuration for the C6670 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.
The L2 memory configuration for the C6670 device is as follows:
•Total memory size is 4096KB
•Each core contains 1024KB of memory
•Local starting address for each core is 0080 0000h
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
Global addresses that are accessible to all masters in the system are in all memory local to the processors. In addition,
local memory can be accessed directly by the associated processor through aliased addresses, where the eight MSBs
are masked to 0. The aliasing is handled within the CorePac and allows for common code to be run unmodified on
multiple cores. For example, address location 0x10800000 is the global base address for CorePac 0's L2 memory.
CorePac 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 four CorePacs as their own L2 base
addresses. For CorePac 0, as mentioned, this is equivalent to 0x10800000, for CorePac 1 this is equivalent to
0x11800000, and for CorePac 2 this is equivalent to 0x12800000. 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 CorePac should always use the global address only.
5.1.4 MSM SRAM
The MSM SRAM configuration for the C6670 device is as follows:
•Memory size is 2048KB
•The MSM can be configured as shared L2 or shared L3 memory
•Allows extension of external addresses from 2GB to up to 8GB
•Has built in memory protection features
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 in ‘‘Related Documentation from Texas Instruments’’ on page 59.
SPRS689—November 2010
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.
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 (32KB 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
ADVANCE INFORMATION
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 only 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
(1)
AIDx
Bit
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
1 x = 0, 1, 2, 3, 4, 5
Local Bit Description
www.ti.com
Faults are handled by software in an interrupt (or an exception, programmable within the CorePac interrupt
controller) service routine. A DSP or DMA access to a page without the proper permissions will:
•Block the access — reads return 0, writes areignored
•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 in ‘‘Related Documentation from Texas Instruments’’ on page 59.
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
The priority level for operations initiated within the C66x CorePac are declared through registers in the CorePac.
These operations are:
•DSP-initiated transfers
•User-programmed cache coherency operations
•IDMA-initiated transfers
The priority level for operations initiated outside the CorePac by system peripherals is declared through the Priority
Allocation Register (PRI_ALLOC), see Section 4.4 ‘‘Bus Priorities’’ on page 80. System peripherals with no fields
in PRI_ALLOC have their own registers to program their priorities.
More information on the bandwidth management features of the CorePac can be found in the C66x CorePac Reference Guide (literature number SPRUGW0.)
5.4 Power-Down Control
The C66x CorePac supports the ability to power-down various parts of the CorePac. The power-down controller
(PDC) of the CorePac can be used to power down L1P, the cache control hardware, the DSP, and the entire CorePac.
These power-down features can be used to design systems for lower overall system power requirements.
Note—The C6670 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 C66x CorePac Reference
Guide (literature number SPRUGW0).
5.5 CorePac Resets
Table 5-2 shows the reset types supported on the C6670 device and how they affect the resetting of the CorePac,
either both globally or just locally.
Table 5-2CorePac Reset (Global or Local)
Reset Type Global CorePac Reset Local CorePac Reset
Power-On Reset Y Y
Hard Reset Y Y
Soft Reset Y Y
Local Reset N Y
End of Table 5-2
ADVANCE INFORMATION
For more detailed information on the global and local CorePac resets, see the C66x CorePac User Guide in ‘‘Related
Documentation from Texas Instruments’’ on page 59. And for more detailed information on device resets, see
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)
ADVANCE INFORMATION
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
www.ti.com
VERSION
R-h
REVISION
R-n
5.7 C66x CorePac Register Descriptions
See the C66x CorePac User Guide in ‘‘Related Documentation from Texas Instruments’’ on page 59 for register
offsets and definitions.
Over Operating Case Temperature Range (Unless Otherwise Noted)
) range:
I
) range:
O
(2)
:
:
C
(3)
: -65°C to 150°C
stg
- 0.20 × DVDD18
SS
ADVANCE INFORMATION
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 con ditions is not implied. Exposure to absol ute-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
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.
Over Recommended Ranges of Supply Voltage and Operating Case Temperature (Unless Otherwise Noted)
ParameterTest Conditions
LVCMOS (1.8 V)I
High-level output voltage
V
OH
VOLLow-level output voltage
ADVANCE INFORMATION
(3)
I
Input current [DC]
I
I
High-level output current [DC]
OH
Low-level output current [DC]
I
OL
(4)
Off-state output current [DC]LVCMOS (1.8 V)-22
I
OZ
2C (2)
I
LVCMOS (1.8 V)I
2
CI
I
LVCMOS (1.8 V)
2
I
C
TBD TBD
TBD TBD
TBD TBD
TBD TBD
TBD TBD
TBD TBD
TBD TBD
TBD TBD
TBD TBD
www.ti.com
(1)
= IOH DVDD18 - 0.45
O
= IOL 0.45
O
= 3 mA, pulled up to 1.8 V0.4
O
MinTypMax Unit
No IPD/IPU-55μA
Internal pullup 50100170
Internal pulldown -170-100-50
0.1 × DVDD18 V < V
DVDD18 V
< 0.9 ×
I
-10 10μA
mA
mA
μA
VDDR3DVDD15 - 0.4
VDDR3 0.4
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.
2I2C 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
7 TMS320C6670 Peripheral Information and Electrical Specifications
This chapter covers the various peripherals on the TMS320C6670 device. 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 for characterization and measurement of AC timing signals only. This load
capacitance value does not indicate the maximum load the device is capable of driving.
ADVANCE INFORMATION
Copyright 2010 Texas Instruments IncorporatedTMS320C6670 Peripheral Information and Electrical Specifications93
TMS320C6670
Multicore Fixed and Floating-Point System-on-Chip
SPRS689—November 2010
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
All rise and fall transition timing parameters are reference to VIL MAX and VIH MIN for input clocks.
ADVANCE INFORMATION
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
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 in ‘‘Related Documentation
from Texas Instruments’’ on page 59. If needed, external logic hardware such as buffers may be used to compensate
any timing differences.
V= 0.9 V
ref
V= VMIN (or VMIN)
refIHOH
www.ti.com
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 (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
94TMS320C6670 Peripheral Information and Electrical SpecificationsCopyright 2010 Texas Instruments Incorporated
TMS320C6670
Multicore Fixed and Floating-Point System-on-Chip
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
SPRS689—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 IncorporatedTMS320C6670 Peripheral Information and Electrical Specifications95
TMS320C6670
Multicore Fixed and Floating-Point System-on-Chip
SPRS689—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
C6670. The various power supply rails and their primary function is listed in Table 7-2 below.
Table 7-2Power Supply Rails on TMS320C6670
ADVANCE INFORMATION
NamePrimary FunctionVoltageNotes
CVDDSmartReflex core supply voltage0.9 - 1.1 V Includes core voltage for DDR3 module
CVDD1Core supply voltage for memory
VDDT1HyperLink SerDes termination
VDDT3AIF SerDes termination supply1.0 VFiltered version of CVDD1. Special considerations for noise. Filter is not needed if AIF is
VDDT2SGMII/SRIO/PCIE SerDes
DVDD151.5-V DDR3 IO supply1.5 V
VDDR1HyperLink SerDes regulator supply1.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
VDDR5
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
array
supply
termination supply
AIF SerDes regulator supply
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
1.5 VFiltered version of DVDD15. Special considerations for noise. Filter is not needed if AIF
www.ti.com
HyperLink is not in use.
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.
is not in use.
7.3.1 Power-Up 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
96TMS320C6670 Peripheral Information and Electrical SpecificationsCopyright 2010 Texas Instruments Incorporated
TMS320C6670
Multicore Fixed and Floating-Point System-on-Chip
www.ti.com
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
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.
SPRS689—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
controlled initialization and RESETFULL initialization are described below. The following section has a
PORmention 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.
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 μsecs 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 IncorporatedTMS320C6670 Peripheral Information and Electrical Specifications97
TMS320C6670
Multicore Fixed and Floating-Point System-on-Chip
SPRS689—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 Initialization Phase
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.
98TMS320C6670 Peripheral Information and Electrical SpecificationsCopyright 2010 Texas Instruments Incorporated
TMS320C6670
Multicore Fixed and Floating-Point System-on-Chip
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
SPRS689—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 IncorporatedTMS320C6670 Peripheral Information and Electrical Specifications99
TMS320C6670
Multicore Fixed and Floating-Point System-on-Chip
SPRS689—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
100TMS320C6670 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.