er
The TMS320C6x Family: Hardware and SoftwareIntroduction
In this chapter the DSPS of primary focus for the course, theTMS320C6x, will be introduced and explained in terms of hard-ware, software, and development environments found in the lab-oratory. The specific C6x family member of most interest is theC6748.
‘C64
The Family of TI DSP Processors (ordered by price/performance)
32-bit real-time
MCUs
C2000™
Delfino™
Piccolo™
40MHz to 300 MHz
Flash, RAM16 KB to 512 KB
PWM, ADC, CAN, SPI, I2CMotor Control, Digital Power,
Lighting, Ren. Enrgy$1.50 to $20.00
DSPDSP+ARM
DaVinci™video processors
Integra™
300MHz to >1Ghz +Accelerator
CacheRAM, ROM
USB, ENET, PCIe, SATA, SPI
Floating/Fixed PointVideo, Audio, Voice,
Security, Conferencing $5.00 to $200.00
Ultra Low power
DSP
C5000™
Up to 300 MHz+Accelerator
Up to 320KB RAMUp to 128KB ROM
USB, ADC McBSP, SPI, I2C
Audio, VoiceMedical, Biometrics
$3.00 to $10.00
Multi-coreDSP
C6000™
24.000 MMACS
CacheRAM, ROM
SRIO, EMACDMA, PCIe
Telecom test & meas, media gateways,
base stations$40 to $200.00
Chapt
2
ECE 5655/4655 Real-Time DSP 2–1
Chapter 2 • The TMS320C6x Family: Hardware and Software
DSP Devices Overview
• TI has four classes of DSP processors
– C2000 Defino and Piccolo: Devices are 32-bit microcon-trollers with high performance integrated peripheralsdesigned for real-time control applications. Its math-opti-mized core gives designers the means to improve systemefficiency, reliability, and flexibility. Powerful integratedperipherals make C2000 devices the perfect single-chipcontrol solution. C2000’s development tools strategy andsoftware (controlSUITE) create an open platform with thegoal of maximizing usability and minimizing developmenttime.
Product Portfolio
2–2 ECE 5655/4655 Real-Time DSP
Introduction
Features
Featured Application – Digital Power Conversion
ECE 5655/4655 Real-Time DSP 2–3
Chapter 2 • The TMS320C6x Family: Hardware and Software
– TMS320C5000™ Power Efficient DSPs: Very low standbypower and advanced power management, for personal andportable products; GPS receivers and medical (a short introto the VC5505 eZDSP at the end of the chapter)
– TMS320C6000™ DSPs: (see below)
The C6x Families
• C64x High Performance DSPs: Very fast fixed-point process-ing, with up to 1.2 GHz clock speed (9600 MMACs onC6455-1200, 24000 MMACs on CC6474-1000 with 3 cores)
• C62x Performance Value DSPs: High performance and highcost efficiency; optimized for wireless infrastructure, telecominfrastructure, and imaging applications (5760 MMACs onC6412-720)
2–4 ECE 5655/4655 Real-Time DSP
Introduction
• C67x Floating Point DSPs: The most advanced DSP C com-piler and assembly optimizer for efficiency and performance;high performance audio applications (e.g., C6748 375/456-MHz Fixed/Floating point, up to 3648/2746 MIPS/MFLOPS)
C6000 DSP Platform Roadmap
C67xC62x
C64x+
C66x
C674
C67x+
C64x
C671x
C621x
Floating Point
Fixed and Floating PointLower powerEDMA3PRU
L1 RAM/CacheCompact Instr’sEDMA3Video/Imaging
EnhancedEDMA2
Fixed Point
Available on the most recent releases
ECE 5655/4655 Real-Time DSP 2–5
Chapter 2 • The TMS320C6x Family: Hardware and Software
Binary Compatability
•Na
tive i
nstru
ction
s for
IEEE
754,
SP &
DP
•Ad
vanc
ed V
LIW
arch
itectu
re
•2X
regis
ters
•En
hanc
ed flo
ating
po
int ad
d ca
pabil
ities
•Au
dio-sp
ecific
an
d mixe
d pr
ecisi
on
instru
ction
s
•Ad
vanc
ed fix
ed
point
instr
uctio
ns•
Four
16-b
it or e
ight
8-bit
MAC
s•
Two-
level
cach
e
•SP
LOOP
and 1
6bit
Instru
ction
s for
sm
aller
code
size
•Fle
xible
level
one
memo
ry ar
chite
cture
•ID
MA fo
r rap
id da
ta tra
nsfer
s b/w
loca
l me
morie
s
•10
0% up
ward
ob
ject c
ode
comp
atible
with
C6
4x, C
64x+
, C6
7x an
d C67
x+
•Be
st of
fixed
point
an
d floa
ting p
oint
arch
itectu
re fo
r be
tter s
ystem
pe
rform
ance
and
faster
time-
to-ma
rket
C67x
C6
7x+
C64x
C64x
+C
67
4x
FLOA
TING
POI
NT V
ALUE
FIXE
D PO
INT
VALU
E
2–6 ECE 5655/4655 Real-Time DSP
Introduction
Peripheral Options
21
C674
6C6
748
OMAP
-L13
8
C674
x DSP
200 M
HzC6
74x D
SP30
0 MHz
C674
x DSP
300 M
HzC6
74x D
SP30
0 MHz
ARM9
300 M
Hz
C674
2
488 K
B32
0 KB
128 K
B44
8 KB
EMAC
EMAC
MMC/
SD
USB
2.0
uPP
uPP
USB
1.1
LCD
Ctr
SATA
EMAC
EMAC
MMC/
SD
USB
2.0
uPP
uPP
USB
1.1
SATA
SATA
LCD
Ctr
EMAC
EMAC
MMC/
SD
USB
2.0
DSP
DSP
ARM
Mem
ory
Mem
ory
Key
perip
hera
lsKey
perip
hera
lsuP
PuP
PVi
deo
I/OVi
deo
I/OVi
deo
I/O
PWM
PWM
SPI
SPI
McAS
P
UART
UART
I2CI2C
Targ
et
appl
icatio
ns
Targ
et
appl
icatio
ns
•SDR
•Aud
io co
nf sy
stem
s•P
orta
ble d
ata t
erm
•Int
ellig
ent
occu
panc
y sen
sors
•Bar
code
scan
ner
•Pow
er p
rote
ctio
n sy
stem
s•I
ndus
trial
auto
mat
ion
•Bar
code
scan
ner
w/GU
I•T
est &
mea
sure
men
t
•Aud
io ef
fect
s•A
udio
mixe
rs
Softw
are &
Pin
-for-
Pin
Com
patib
le Ac
ross
Fam
ilySo
ftwar
e & P
in-fo
r-Pi
n Co
mpa
tible
Acro
ss F
amily
$6.70
@1K
u / $
5.95@
10Ku
PRU
2 x 15
0 MHz
CPU
2 x 15
0 MHz
CPU
2 x 15
0 MHz
CPU
ECE 5655/4655 Real-Time DSP 2–7
Chapter 2 • The TMS320C6x Family: Hardware and Software
C6x Family Feature Overview
• To appreciate the C6x family consider a little history first
• The first of TI’s high performance floating point processorswas the C3x
• In 1988 the first of the TMS320C3x’s began shipping at acost of $1,300 each
• At the present time development of the C3x family hasslowed, but a core of users still exists in the market place
• In 2000 TI introduced the C33 which is capable of 150MFLOPS
– This new processor featured two 1k and two 16k dualaccess RAM blocks
– Consumes 0.2 W and costs $5-8 in 100KU
– The pilot offering of this course, in 1998, used the C31which comes in low cost 60 ns, lowers cost 74 ns, highestspeed 40 ns (used in the C31 DSK), and other single-cycleexecution time versions
• Today the C6x family, first announced in 1Q97, continues thehigh performance traditions of the C3x family, but offersmuch more in terms of both hardware and software
• Features of the C6x family include:
– Code compatible fixed- and floating-point
– Widely adopted by broad-band infrastructure vendors
2–8 ECE 5655/4655 Real-Time DSP
C6x Family Feature Overview
– Highly parallel VelociTITM advanced very long instructionword (VLIW) architecture
– RISC-like instructions
– Claim industry’s most efficient C compiler to ease highlevel language (HLL) development
– Low price points ~ C6738-300 (300 MHz) is $15.75 in 1ku
ECE 5655/4655 Real-Time DSP 2–9
Chapter 2 • The TMS320C6x Family: Hardware and Software
Comparison Matrix
2–10 ECE 5655/4655 Real-Time DSP
C6x Architecture Overview
C6x Architecture Overview
ARM9 Subsystem
DSP Subsystem
ARM926EJ-S
CPU 300
MHz+
C674x DSPCore 300
MHz+
Switched Central Resource (SCR) / EDMA
Peripherals
mDDR/ DDR216-bit
Program/Data Storage
I2C(2)
Serial Interfaces
Connectivity
Timer(4)
System
PWM(2)
SATAUHPI USB 2.0
UART (3)
McASP(1)
SPI(2)
MMC/SD (2)
L1P 16K L1D 16K
L1P 32K L1D 32KL2 256K
Video I/O
USB 1.1 EMAC
AsyncEMIF16-bit
LCD Controller
OMAP-L138 ARM + DSP
uPP
McBSP(2)
128KB RAM
High Speed ADCor FPGA
or DSP interface
High Capacity Storage
RTC
eCAP(3)
High Speed
Bluetooth Connectivity
Internet
Rich User Interface
LargeOn-chipMemory
PRU Subsystem
PRU Core 0
150 MHz 4KB P512B
D
PRU Core 1
150 MHz 4KB P512B
D
VGA LCD
Knobs and controls
CPU Cores– ARM926EJ-S™ (MPU) 300MHz+– C674x DSP Core 300MHz+– 2 PRU Cores upto 150 MHz each
Peripherals (1.8/ 3.3V IOs)– 10/100 Ethernet MAC– EMIFA - SDRAM/NAND Flash– EMIFB – DDR (mDDR/DDR2)– Video Port I/F, SATA, uPP, LCDC
Power (1.0-1.2V Core, 1.8/3.3V IOs)
– Total Power < 440 mW @ 300Mhz, 1.2V, 25CFor DSP at 70% loading, ARM at 50% loading; mDDR 50% active at 135MHz
– Standby Power < 9mW @ 1.2V/ 25C
P k
@ /Package– 13 x13mm nFBGA (0.65mm),
16x16mm BGA (0.8mm) – Pin to pin compatible with C6748/6/2,
AM1808/6
Applications– Power Protection Systems, Test &
Measurement, SDR, Bar Code Scanners, Portable Communications, Portable Medical, Portable Audio
ECE 5655/4655 Real-Time DSP 2–11
Chapter 2 • The TMS320C6x Family: Hardware and Software
Connectivity
Clo
ckou
tTi
mer
s /
Wat
chdo
g
HWI
uPP
uHPI
SATA
MMC/
SD
USB
2.0(&
1.1)
McBS
PMc
ASP
EMAC
C674
xCP
U
EDMA
3
DDR2
EMIFA
Clo
ckin
Clo
ckou
t xPL
L
Stor
age
Note
:No
t all ‘
C64x
+ de
vices
hav
e all
the
vario
us p
eriph
erals
sh
own a
bove
. Pl
ease
refe
r to
the
spec
ific d
evice
’s da
tash
eet.
Seria
l Cod
ec
(TCP
/IP st
ack a
vail)
DDR2
133M
HzNO
RNA
ND
/ 16
Ethe
rnet
Host
μP
/ 16
NM
IR
eset
Ext I
nter
rupt
s/ 4
eCAP
Kno
bs&
Con
trol
s/
32
8-16
bit
16-b
itSD
RAM
I2C, S
PIUA
RTLC
D,
PWM
Hig
h Sp
eed
ADC,
FPG
A
2–12 ECE 5655/4655 Real-Time DSP
C6x Architecture Overview
High Level Architecture
128K L3
16-bit EMIF
DDR2mDDR
McASP
MMC/SDEMAC
HPI
SATA
I2C, SPI, UART
Switched Central Resource (SCR)
256KL2
EDMA3
C674x+ DSP Core
Floating-Pt CPU
32KB L1P Cache/SRAM
32KB L1D Cache/SRAM
4-32xPLL
TMS320C674x
128
128
256
256128
128
USB
Timers
LCD, PWM, eCAP
uPP
Fixed-Pt CPU
Performance & Memory• Up to 300MHz• 256K L2 (up to 64K cache)• 32K L1P & L1D Cache/SRAM• 32-bit DDR2-266• 16-bit EMIF (NAND Flash)
Communications• 64-Channel EDMA 3.0 • 10/100 EMAC• USB 1.1 & 2.0• SATA
ECE 5655/4655 Real-Time DSP 2–13
Chapter 2 • The TMS320C6x Family: Hardware and Software
C6000 Core Architecture
• While the dual-MAC speeds math intensive algorithms, theflexibility of 8 independent functional units allows the com-piler to quickly perform other types of processing
• Can dispatch up to 8 32-bit instructions every cycle
• All instructions are conditional – allowing efficient hardwarepipelining
• The core contains 64 32-bit general purpose registers withfew restrictions (aids compiler in generating more efficientcode)
• Can perform up to EIGHT 16x16 multiplies/ACC per clkcycle
Memory
A0
A31
...S1
.D1
.L1
.S2
.M1 .M2
.D2
.L2
B0
B31
..
Controller/Decoder
Dual MACs
32 bits 32 bits
2–14 ECE 5655/4655 Real-Time DSP
C6x Architecture Overview
• MAU is 8 bits for program/data
• Compiler excels at natural C
• Data types: char = 8 bits, short = 16 bits, int = 32 bits, long =40 bits, long long = 64 bits
Older C6713 Versus the Newer C674 & C64 (not C64+):
Instruction fetch
Instruction dispatch
Instruction decode
Controlregisters
Emulation
Interruptcontrol
+L1
+S1
+
M1
X
Register file AA15–A0
+D1
Data path 1 Data path 2
M2+
D2
X
S2+L2
B15–B0
C62x/C67x CPU
+L1
+
++
S1
++++
M1
X
X
D1
++
Data path 1
Register file AA15–A0A31–A16
++
D2
x
X xx
M2 S2
++++
+
L2
Register file BB15–B0
Data path 2
Instruction fetchInstruction dispatch
Instruction decode
Inte
rrup
tco
ntro
lControl registers
C64x CPU
Dual 32–bit load/store path(dual 64–bit load path – C67x only) Dual 64–bit load/store paths
++
Advanced instructionpacking
xx
xx
B31–B16
Advancedemulation
+
x ++
Register file B
X
ECE 5655/4655 Real-Time DSP 2–15
Chapter 2 • The TMS320C6x Family: Hardware and Software
Functional Unit Operations
Functional Unit Floating–Point OperationsFixed–Point Operations.M unit (.M1, .M2) 16 x 16 multiply operations
16 x 32 multiply operationsQuad 8 x 8 multiply operationsDual 16 x 16 multiply operationsDual 16 x 16 multiply with add/subtract operations
Quad 8 x 8 multiply with add operationBit expansionBit interleaving/de-interleavingVariable shift operationsRotationGalois Field Multiply
32 X 32–bit fixed–point multiply operations
Floating–point multiply operations
.D unit (.D1, .D2) 32-bit add, subtract, linear and circular address calculationLoads and stores with 5-bit constant offsetLoads and stores with 15-bit constant offset (.D2 only)Load and store double words with 5-bit constant
Load and store non-aligned words and double words
5-bit constant generation32-bit logical operations
Load doubleword with 5–bit constant offset
Note: Fixed-point operations are available on all three devices. Floating-point operations and 32 x 32-bit fixed-point multiply areavailable only on the ’C67x. Additonal ’C64x functions are shown in bold.
Functional Unit Fixed–Point Operations Floating–Point Operations.L unit (.L1, .L2) 32/40-bit arithmetic and compare
operations32-bit logical operationsLeftmost 1 or 0 counting for 32 bitsNormalization count for 32 and 40 bitsByte shiftsData packing/unpacking5-bit constant generationDual 16-bit arithmetic operationsQuad 8-bit arithmetic operationsDual 16-bit min/max operationsQuad 8-bit min/max operations
Arithmetic operations
DP → SP, INT → DP, INT → SP conversion operations
.S unit (.S1, .S2) 32-bit arithmetic operations32/40-bit shifts and 32-bit bit-field operations32-bit logical operationsBranchesConstant generationRegister transfers to/from control register file (.S2 only)Byte shiftsData packing/unpackingDual 16-bit compare operationsQuad 8-bit compare operationsDual 16-bit shift operationsDual 16-bit saturated arithmetic operations
Quad 8-bit saturated arithmetic operations
Compare
Reciprocal and reciprocal square–root operations
Absolute value operations
SP → DP conversion operations
2–16 ECE 5655/4655 Real-Time DSP
C6x Architecture Overview
C6748 Data Paths
src2
src2
Á
ÁÁ
.D1
.M1
ÁÁ
ÁÁ
Á
.S1
ÁÁÁ
Á
.L1
long src
odd dst
src2
src1
ÁÁÁÁÁ
Á
Á
src1
src1
src1
even dst
even dstodd dst
dst1
dst
src2
src2
src2
long src
DA1
ST1b
LD1b
LD1a
ST1a
Data path A
Oddregister
file A(A1, A3,
A5...A31)
Á
Oddregister
file B(B1, B3,
B5...B31)
Á.D2
ÁÁ
src1dst
src2DA2
LD2aLD2b
src2
.M2 src1Á
dst1Á
.S2src1
ÁÁeven dst
long src
odd dst
ST2a
ST2b
long src
.L2
ÁÁ
even dst
odd dst Á
src1
Data path B
Control Register
32 MSB
32 LSB
dst2 (A)
32 MSB32 LSB
2x
1x
32 LSB32 MSB
32 LSB
32 MSB
dst2
(B)
(B)(A)
8
8
8
8
3232
3232
(C)
(C)
Evenregister
file A(A0, A2,
A4...A30)
Evenregister
file B(B0, B2,
B4...B30)
(D)
(D)
(D)
(D)
A. On .M unit, dst2 is 32 MSB.B. On .M unit, dst1 is 32 LSB.C. On C64x CPU .M unit, src2 is 32 bits; on C64x+ CPU .M unit, src2 is 64 bits.D. On .L and .S units, odd dst connects to odd register files and even dst connects to even register files.
ECE 5655/4655 Real-Time DSP 2–17
Chapter 2 • The TMS320C6x Family: Hardware and Software
• Each C64x+ .M unit can perform one of the following eachclock cycle:
– one 32 x 32 bit multiply, one 16 x 32 bit multiply, two 16 x16 bit multiplies, two 16 x 32 bit multiplies, two 16 x 16bit multiplies with add/subtract capabilities, four 8 x 8 bitmultiplies, four 8 x 8 bit multiplies with add operations,and four 16 x 16 multiplies with add/subtract capabilities(including a complex multiply)
– There is also support for Galois field multiplication for 8-bit and 32-bit data
– The complex multiply (CMPY) instruction takes for 16-bitinputs and produces a 32-bit real and a 32-bit imaginaryoutput
– There are also complex multiplies with rounding capabilitythat produces one 32-bit packed output that contain 16-bitreal and 16-bit imaginary values
– The 32 x 32 bit multiply instructions provide the extendedprecision necessary for audio and other high-precisionalgorithms on a variety of signed and unsigned 32-bit datatypes
• The .L or (Arithmetic Logic Unit) now incorporates the abil-ity to do parallel add/subtract operations on a pair of commoninputs
– Versions of this instruction exist to work on 32-bit data oron pairs of 16-bit data performing dual 16-bit add and sub-
2–18 ECE 5655/4655 Real-Time DSP
C6x Architecture Overview
tracts in parallel
– There are also saturated forms of these instructions
• The C64x+ core enhances the .S unit in several ways
– In the C64x core, dual 16-bit MIN2 and MAX2 compari-sons were only available on the .L units
– On the C64x+ core they are also available on the .S unitwhich increases the performance of algorithms that dosearching and sorting
– Finally, to increase data packing and unpacking through-put, the .S unit allows sustained high performance for thequad 8-bit/16-bit and dual 16-bit instructions
– Unpack instructions prepare 8-bit data for parallel 16-bitoperations
– Pack instructions return parallel results to output precisionincluding saturation support
ECE 5655/4655 Real-Time DSP 2–19
Chapter 2 • The TMS320C6x Family: Hardware and Software
The Internal Bus Structure: SCR & Megamodule
C55x Low Power DSP Quick Compare
EDMA3
TC0TC1TC2
EMACHPIPCI
McBSPPCI
Utopia
DDR2
L2MemCtrlL2
L1P
L1D
DSML
DSML
CPU
C64x+ MegaModule
M
S
S
M M
S
IDMA
L1PMemCtrl
L1DMemCtrl
AET
DATASCR
CFGSCR
EMIF
128
128
Cfg
PERIPH
M S
M SMaster Slave
32
PERIPH =All peripheral’sCfg registers
SCR = Switched Central Resource32
ExternalMemCntl
CC
Memoryinterface unit
External databuses
Externalprogram buses
CPU
Data-write data buses EB, FB (each 16 bits)
Data-write address buses EAB, FAB (each 23 bits)
Program-read data bus PB (32 bits)
Program-read address bus PAB (24 bits)
Data-read address buses BAB, CAB, DAB (each 23 bits)
Instructionbuffer unit
(I unit)
Programflow unit(P unit)
Address-dataflow unit(A unit)
Datacomputation
unit(D unit)
Data-read data buses BB (32 bits), CB, DB (each 16 bits)
2–20 ECE 5655/4655 Real-Time DSP
C6748 Internal Memory
• Although not immediately obvious from the above figures, adistinctive feature of the C6x and C55 over conventionalmicroprocessors, is the Harvard architecture, that is separatebuses for program and data
– Instructions can be fetched while data is being accessed
C6748 Internal MemoryLevel 1 Memory (32KB each)
Cache or RAML1P (prog), L1D (data)
Level 2 Memory (256KB)RAM (prog or data)Up to 256KB can be cache
Level 3 Memory (128KB)Shared RAM
L2 RAMProg/DataCPU
EMIFA
DDR2
L1P
L1D
Level 1 MemorySingle-cycle accessL2 accessed on missL1P: direct mappedL1D: 2-way set associative
Level 2 MemoryUnified: Prog or Data4-way cache support
L1/L2 Shared FeaturesConfigure each memory as cache or addressable RAM (or combination)Cache Freeze
ECE 5655/4655 Real-Time DSP 2–21
Chapter 2 • The TMS320C6x Family: Hardware and Software
C6748 External Memory
1170_0000 L2 ROM
EMIFA (CS4)EMIFA (CS5)
6400_0000
6600_0000
FFFF_FFFF
EMIFA (CS2)EMIFA (CS3)
6000_0000
6200_0000
1180_0000
L1P RAML1D RAM
11E0_0000
11F0_0000
DDR2 (DDR_CS)C000_0000
L2 RAM
L3 RAM8000_0000
• EMIFA has four ranges(8MB each):
• Program or Data
• Named: ACE2, ACE3,ACE4, ACE5
• DDR2 is 512MBRemaining memory isunused
L2 RAMProg/DataCPU
EMIFA
DDR2
ProgramCache
DataCache
2–22 ECE 5655/4655 Real-Time DSP
'C6000 Peripherals Summary
'C6000 Peripherals Summary
Host Port
• A dedicated bus for connection to a micro or external host
• Bootloading can occur via HPI
.D1
.M1
.L1
.S1
.D2
.M2
.L2
.S2
Register Set B
Register Set A
CPU
Internal Buses
InternalMemory
ExternalMemory
GPIO
EMIF
Parallel Comm
Serial
Timers
VCP / TCP
Timers
PLL
EthernetVideo Ports
DMA, EDMA(Boot)
ECE 5655/4655 Real-Time DSP 2–23
Chapter 2 • The TMS320C6x Family: Hardware and Software
System Architecture – SCR/EDMA
• SCR – Switched Central Resource
• Masters initiate accesses to/fromslaves via the SCR
• Most Masters (requestors) and Slaves(resources) have theirown port to the SCR
• Lower bandwidth masters (HPI,PCI66, etc) share a port
• There is a default priority (0 to 7) toSCR resources that canbe modified.
ARM
DSP
TC0
TC1
TC2
CC
PCI
HPI
EMAC SCR
SwitchedCentral
ResourceC64 Mem
DDR2
EMIF64
TCP
VCP
PCI
McBSP
Utopia
“Masters” “Slaves”
EDMA3
Note: this picture is the “general idea”.Every device has a different schemefor SCRs and peripheral muxing. Inother words “check your data sheet”.
2–24 ECE 5655/4655 Real-Time DSP
What is Pin Multiplexing?
What is Pin Multiplexing?
• How many pins is on your device?
• How many pins would all your peripheral require?
• Pin Multiplexing is the answer – only so many peripheralscan be used at the same time … in other words, to reducecosts, peripherals must share available pins
• Which ones can you use simultaneously?
– Designers examine app use cases when deciding best mux-ing layout
– Read datasheet for final authority on how pins are muxed
– Graphical utility can assist with figuring out pin-muxing…
Laboratory Hardware Targets
• There are many C6x development systems or hardware tar-gets available from third parties
• TI itself supplies:
HPIuPP
Pin Mux Example
ECE 5655/4655 Real-Time DSP 2–25
Chapter 2 • The TMS320C6x Family: Hardware and Software
– The OMAL-L138 eXperimenters Board $495
– The C6713-225 based DSK $395, with bundled DSK spe-cific software, and USB host interface; 2M x 32 on boardSDRAM, 512K bytes on board flash
– The C6416-600 based DSK $395, with bundled DSK spe-cific software, and USB host interface
– The VC5505-100 based eZDSP USB Stick $49, with bun-dled CCS4 for XDS100 class JTAG emulators
• Full versions of the software tools are running in the lab
– Full Code Composer Studio Platinum version 4.2
– Full Code Composer Studio Platinum version 5.1
2–26 ECE 5655/4655 Real-Time DSP
The OMAP-L138 (C6748) eXperimenters Board
The OMAP-L138 (C6748) eXperimenters Board
The System on Module (SOM) Board
• Product-ready System on Module with a TI OMAP-L138processor or TMS320C6748 DSP running at 375 MHz
ECE 5655/4655 Real-Time DSP 2–27
Chapter 2 • The TMS320C6x Family: Hardware and Software
• The Card (Top View)
• OMAP-L138 SOM-M1 Block Diagram
LCD ConnectorRS-232
PMDC EMIF VPIF
JTAG 20 pin
JTAG 14 pin
Audio Exp.
Boot/Mux
DIP Sw.
User
DIP Sw.
SATA
Ethernet
USB0
USB1
Power
Switch
+5 V
SOM
SD (Bottom)
JTAG MUX
XDS100
Emu.USB
Line IN
Line Out
CODEC (TLVAIC3106)
2–28 ECE 5655/4655 Real-Time DSP
The OMAP-L138 (C6748) eXperimenters Board
• Audio Interface
• Communication Interfaces
OMAP L138 eXperimenters Board
Audio Exp.
SOM
Line Out
CODEC (TLVAIC3106)
Line IN
I2C0 Bus
User
DIP Sw.
McBSP1
SPI1
I2C0
McASP0Selector
)
AUDIO_EXP_SEL
LCD Connector
GPIO
OscilloscopeSignal Generator
GPIO Pin for Sampling Frequency Monitoring
Audio Output
Audio Input
LCD ConnectorRS-232
PMDC EMIF VPIF
JTAG 20 pin
JTAG 14 pin
Audio Exp.
Boot/Mux
DIP Sw.
User
DIP Sw.
SATA
Ethernet
USB0
USB1
Power
Switch
+5 V
SOM
LCD/VPIF_DOUT
JTAG MUX
XDS100
USB FS Host
USB HS OTG
ETHERNET
SD
Line IN
Line OutEmu.
USB
CODEC (TLVAIC3106)
ECE 5655/4655 Real-Time DSP 2–29
Chapter 2 • The TMS320C6x Family: Hardware and Software
• Emulation Interfaces
• Video and LCD Interfaces
JTAG 20 pin
JTAG 14 pin
SOMJTAG MUX
ARM
DSP
XDS100
Emu.USB
JTAG
LCD Connector
VPIF
SOMLCD/VPIF_DOUT
Camera /VPIF_DIN
Boot/Mux
DIP Sw.
Buffer(LCD)LCD_EXP_EN
2–30 ECE 5655/4655 Real-Time DSP
The OMAP-L138 (C6748) eXperimenters Board
• Memory Interfaces
• Boot and Power Management
EMIF
SATA
SOM
SD (Bottom)
MMC_SD
EMIFA
SATA
Boot/Mux
DIP Sw.
Power
Switch
+5 V
SOM
ECE 5655/4655 Real-Time DSP 2–31
Chapter 2 • The TMS320C6x Family: Hardware and Software
The C6748 Memory MapTable 2-4. C6748 Top Level Memory Map
Start Address End Address Size DSP Mem Map EDMA Mem Map PRUSS Mem Map Master LCDCPeripheral Mem Mem Map
Map0x0000 0000 0x0000 0FFF 4K PRUSS Local
Address Space0x0000 1000 0x006F FFFF0x0070 0000 0x007F FFFF 1024K DSP L2 ROM (1)
0x0080 0000 0x0083 FFFF 256K DSP L2 RAM0x0084 0000 0x00DF FFFF0x00E0 0000 0x00E0 7FFF 32K DSP L1P RAM0x00E0 8000 0x00EF FFFF0x00F0 0000 0x00F0 7FFF 32K DSP L1D RAM0x00F0 8000 0x017F FFFF0x0180 0000 0x0180 FFFF 64K DSP Interrupt
Controller0x0181 0000 0x0181 0FFF 4K DSP Powerdown
Controller0x0181 1000 0x0181 1FFF 4K DSP Security ID0x0181 2000 0x0181 2FFF 4K DSP Revision ID0x0181 3000 0x0181 FFFF 52K0x0182 0000 0x0182 FFFF 64K DSP EMC0x0183 0000 0x0183 FFFF 64K DSP Internal
Reserved0x0184 0000 0x0184 FFFF 64K DSP Memory
System0x0185 0000 0x01BF FFFF0x01C0 0000 0x01C0 7FFF 32K EDMA3 CC0x01C0 8000 0x01C0 83FF 1K EDMA3 TC00x01C0 8400 0x01C0 87FF 1K EDMA3 TC10x01C0 8800 0x01C0 FFFF0x01C1 0000 0x01C1 0FFF 4K PSC 00x01C1 1000 0x01C1 1FFF 4K PLL Controller 00x01C1 2000 0x01C1 3FFF0x01C1 4000 0x01C1 4FFF 4K SYSCFG00x01C1 5000 0x01C1 FFFF0x01C2 0000 0x01C2 0FFF 4K Timer00x01C2 1000 0x01C2 1FFF 4K Timer10x01C2 2000 0x01C2 2FFF 4K I2C 00x01C2 3000 0x01C2 3FFF 4K RTC0x01C2 4000 0x01C3 FFFF0x01C4 0000 0x01C4 0FFF 4K MMC/SD 00x01C4 1000 0x01C4 1FFF 4K SPI 00x01C4 2000 0x01C4 2FFF 4K UART 00x01C4 3000 0x01CF FFFF0x01D0 0000 0x01D0 0FFF 4K McASP 0 Control0x01D0 1000 0x01D0 1FFF 4K McASP 0 AFIFO Ctrl0x01D0 2000 0x01D0 2FFF 4K McASP 0 Data0x01D0 3000 0x01D0 BFFF
(1) The DSP L2 ROM is used for boot purposes and cannot be programmed with application code
2–32 ECE 5655/4655 Real-Time DSP
The OMAP-L138 (C6748) eXperimenters Board
Table 2-4. C6748 Top Level Memory Map (continued)Start Address End Address Size DSP Mem Map EDMA Mem Map PRUSS Mem Map Master LCDC
Peripheral Mem Mem MapMap
0x01D0 C000 0x01D0 CFFF 4K UART 10x01D0 D000 0x01D0 DFFF 4K UART 20x01D0 E000 0x01D0 FFFF0x01D1 0000 0x01D1 07FF 2K McBSP00x01D1 0800 0x01D1 0FFF 2K McBSP0 FIFO Ctrl0x01D1 1000 0x01D1 17FF 2K McBSP10x01D1 1800 0x01D1 1FFF 2K McBSP1 FIFO Ctrl0x01D1 2000 0x01DF FFFF0x01E0 0000 0x01E0 FFFF 64K USB00x01E1 0000 0x01E1 0FFF 4K UHPI0x01E1 1000 0x01E1 2FFF0x01E1 3000 0x01E1 3FFF 4K LCD Controller0x01E1 4000 0x01E1 4FFF 4K Memory Protection Unit 1 (MPU 1)0x01E1 5000 0x01E1 5FFF 4K Memory Protection Unit 2 (MPU 2)0x01E1 6000 0x01E1 6FFF 4K UPP0x01E1 7000 0x01E1 7FFF 4K VPIF0x01E1 8000 0x01E1 9FFF 8K SATA0x01E1 A000 0x01E1 AFFF 4K PLL Controller 10x01E1 B000 0x01E1 BFFF 4K MMCSD10x01E1 C000 0x01E1 FFFF0x01E2 0000 0x01E2 1FFF 8K EMAC Control Module RAM0x01E2 2000 0x01E2 2FFF 4K EMAC Control Module Registers0x01E2 3000 0x01E2 3FFF 4K EMAC Control Registers0x01E2 4000 0x01E2 4FFF 4K EMAC MDIO port0x01E2 5000 0x01E2 5FFF 4K USB10x01E2 6000 0x01E2 6FFF 4K GPIO0x01E2 7000 0x01E2 7FFF 4K PSC 10x01E2 8000 0x01E2 8FFF 4K I2C 10x01E2 9000 0x01E2 BFFF0x01E2 C000 0x01E2 CFFF 4K SYSCFG10x01E2 D000 0x01E2 FFFF0x01E3 0000 0x01E3 7FFF 32K EDMA3 CC10x01E3 8000 0x01E3 83FF 1K EDMA3 TC20x01E3 8400 0x01EF FFFF0x01F0 0000 0x01F0 0FFF 4K eHRPWM 00x01F0 1000 0x01F0 1FFF 4K HRPWM 00x01F0 2000 0x01F0 2FFF 4K eHRPWM 10x01F0 3000 0x01F0 3FFF 4K HRPWM 10x01F0 4000 0x01F0 5FFF0x01F0 6000 0x01F0 6FFF 4K ECAP 00x01F0 7000 0x01F0 7FFF 4K ECAP 10x01F0 8000 0x01F0 8FFF 4K ECAP 20x01F0 9000 0x01F0 BFFF0x01F0 C000 0x01F0 CFFF 4K Timer20x01F0 D000 0x01F0 DFFF 4K Timer30x01F0 E000 0x01F0 EFFF 4K SPI1
ECE 5655/4655 Real-Time DSP 2–33
Chapter 2 • The TMS320C6x Family: Hardware and Software
Table 2-4. C6748 Top Level Memory Map (continued)Start Address End Address Size DSP Mem Map EDMA Mem Map PRUSS Mem Map Master LCDC
Peripheral Mem Mem MapMap
0x01F0 F000 0x01F0 FFFF0x01F1 0000 0x01F1 0FFF 4K McBSP0 FIFO Data0x01F1 1000 0x01F1 1FFF 4K McBSP1 FIFO Data0x01F1 2000 0x116F FFFF0x1170 0000 0x117F FFFF 1024K DSP L2 ROM (2)
0x1180 0000 0x1183 FFFF 256K DSP L2 RAM0x1184 0000 0x11DF FFFF0x11E0 0000 0x11E0 7FFF 32K DSP L1P RAM0x11E0 8000 0x11EF FFFF0x11F0 0000 0x11F0 7FFF 32K DSP L1D RAM0x11F0 8000 0x3FFF FFFF0x4000 0000 0x5FFF FFFF 512M EMIFA SDRAM data (CS0)0x6000 0000 0x61FF FFFF 32M EMIFA async data (CS2)0x6200 0000 0x63FF FFFF 32M EMIFA async data (CS3)0x6400 0000 0x65FF FFFF 32M EMIFA async data (CS4)0x6600 0000 0x67FF FFFF 32M EMIFA async data (CS5)0x6800 0000 0x6800 7FFF 32K EMIFA Control Regs0x6800 8000 0x7FFF FFFF0x8000 0000 0x8001 FFFF 128K On-chip RAM0x8002 0000 0xAFFF FFFF0xB000 0000 0xB000 7FFF 32K DDR2 Control Regs0xB000 8000 0xBFFF FFFF0xC000 0000 0xDFFF FFFF 512M DDR2 Data0xE000 0000 0xFFFF FFFF
(2) The DSP L2 ROM is used for boot purposes and cannot be programmed with application code
2–34 ECE 5655/4655 Real-Time DSP
The OMAP-L138 (C6748) eXperimenters Board
The C6713 DSK
• The C6713 DSK was introduced summer 2003
• The 6713 is an enhanced version of the 6711, including
• McBSP1 is used as a bi-directional data channel
• McBSP0 is used as a unidirectional codec control channel inSPI format (operative normally only when first configuringthe codec)
• The AIC codec uses a 12 MHz clock (popular USB clockrate)
• Through division common audio sample rate frequenciesavailable are: 48 KHz, 44.1 KHz, and 8 KHz
educe t e to a et
Figure 1-1, Block Diagram C6713 DSK
Ext.JTAG
AIC23Codec
Ho
st
Po
rt In
t
MUX
MUXM
IC I
N
LIN
E O
UT
HP
OU
T
LIN
E I
N
Peripheral Exp
LED DIP
EMIF
HPI
McBSPs
JTAG
0 1 2 30 1 2 3
CP
LD
Memory ExpP
WR
US
B
EmbeddedJTAG
JP1 1.26V
JP2 3.3V
EN
DIA
N
BO
OT
M 1
BO
OT
M 0
6713DSP
SD
RA
M
328
Fla
sh
8
1 32
Config
SW3
32
HP
I_E
N4
VoltageReg
JP
4
5V
ECE 5655/4655 Real-Time DSP 2–35
Chapter 2 • The TMS320C6x Family: Hardware and Software
C6713 DSK Board Layout
Figure 3-1, TMS320C6713 DSK
J4
J5J6 JP3
J302
J8SW1 SW2J201 D7-10
J304J303J301 J3 J1
Connector # Pins Function
J4 80 Memory
J3 80 Peripheral
J1 80 HPI
J301 3 Microphone
J303 3 Line In
J304 3 Line Out
J303 3 Headphone
J5 2 +5 Volt
J6 * 4 Optional Power Connector
J8 14 External JTAG
J201 5 USB Port
JP3 10 CPLD Programming
SW3 8 DSP Configuration Jumper
2–36 ECE 5655/4655 Real-Time DSP
The OMAP-L138 (C6748) eXperimenters Board
The C6416 DSK Block Diagram
• The 6416 DSK is very similar to the 6713 DSK, except the6416 is a high performance fixed point device having:
– 600 MHz CPU clock (1.67 ns cycle time yielding 4800MIPS)
– Only fixed-point hardware
– Viterbi decoder co-processor for comm applications
– Turbo decoder co-processor for comm applications(3GPP)
• The external memory and codec configurations are identical
•
Figure 1-1, Block Diagram C6416 DSK
Ext.JTAG
AIC23Codec
Ho
st
Po
rt In
t
MUX
MUXM
IC I
N
LIN
E O
UT
HP
OU
T
LIN
E I
N
Peripheral Exp
LED DIP
EMIFA
HPI
McBSPs
JTAG
0 1 2 30 1 2 3
CP
LD
Memory Exp
VoltageReg
PW
R
US
B
EmbeddedJTAG
JP1 1.4V
JP2 3.3V
EN
DIA
N
BO
OT
M 1
BO
OT
M 0
6416DSP
SD
RA
M
648
Fla
sh
8
EMIFB
1 32
Config
SW3
32
JP45V
ECE 5655/4655 Real-Time DSP 2–37
Chapter 2 • The TMS320C6x Family: Hardware and Software
Memory Mapping for the DSK’s
• Memory map details can be found in the TI documentation
• We are most interested in the memory addresses locations forstoring programs and data on DSK
• The linker command file, *.cmd is used to handle the differ-ences in memory mapping between the two platform, and ingeneral across all TI DSP processors
2–38 ECE 5655/4655 Real-Time DSP
Software Development Overview
Software Development Overview
Code Composer Studio (CCS) is the primary development envi-ronment on all of TI’s DSP platforms
• At a high level CCS consists of the following:
• The phases of code development in CCS can be viewed asfollows:
TargetHost
Target hardware
DSP application program
DSP
Code Composer Studio
JTAGRTDX
Code Composer debugger
DSP/BIOSplug-ins
RTDXplug-in
3rd partyplug-ins
cfg.cmdcfg.s6xcfg.h6x
.cdb(Config
database)
Compiler,assembler,
lnker...
Codegeneration
toolsCode Composer project
.asm.h.c
Code Composer editor
source files
DSP/BIOS API
OLEapplication
using RTDX
ConfigurationTool
executable
DSP/BIOS
Host emulation support
Design Debug AnalyzeCode & buildconceptual
p lanning
create project,wr i te source code,configuration f i le
syntax checking,probe points,logging, etc.
real- t imedebugging,
statistics, tracing
ECE 5655/4655 Real-Time DSP 2–39
Chapter 2 • The TMS320C6x Family: Hardware and Software
• Irrespective of the development environment employed, com-mand-line or IDE, the generation of machine code in theform of an executable common object file format (coff) filefollows a common flow
C6x Code Generation Overview
Assembler
Linker
Macrolibrary
Library ofobjectfiles
EPROMprogrammer
Assemblersource
COFFobjectfiles
Archiver
Macrosource
files
Archiver
C/C++ compiler
Library-buildutility
Cross-referencelister
Debuggingtools
Run-Time-supportlibrary
TMS320C6000
C/C++source
files
ExecutableCOFF
fileHex conversion
utility
Assembly-optimized
file
Assemblyoptimizer
Linearassembly
2–40 ECE 5655/4655 Real-Time DSP
Software Development Overview
Code Development Flow Chart
Yes
No
Complete
Yes
No
Efficient?
Write C codePhase 1
Phase 2
Phase 3
More C optimizations?
No
Yes
No
Yes
Complete
Compile
Profile
Refine C code
Compile
Profile
Complete
Write linear assembly
Profile
Assembly optimize
Efficient?
Efficient?
ECE 5655/4655 Real-Time DSP 2–41
Chapter 2 • The TMS320C6x Family: Hardware and Software
DSP/BIOS
• Built-in instrumentation capability
– printf stops the DSP to send a string back to the debug-ger
• BIOS can automatically log events back to CCS usingLOG_printf()
• The DSP/BIOS API contains user specified functions to sendevent information back to CCS
• View real-time statistics that are passed back during non-crit-ical times
• This capability comes about via Real-Time Data Exchange(RTDX)
Traditional Start/Stop Data Transfer
Continuous Run Data Transfer with RTDX
DSPHaltedHost
JTAG
DSPRunningHost
JTAGRTDX
2–42 ECE 5655/4655 Real-Time DSP
Software Development Overview
• DSP/BIOS can also be used to view system events
• All of this is controlled/defined via the CCS configurationtool, and the associated configuration file, which replaces the.cmd file
• How do we manage/synchronize real-world events?
• Hardware events are driven by hardware interrupts
• With BIOS hardware interrupts are transformed to softwareinterrupts (SWI)
• Each SWI can be managed via prioritization in a schedulerthat is part of the DSP/BIOS configuration tool
DSP/BIOS Summary for Now
A real-time kernel that consists of:
• real-time scheduling
• real-time capture
• real-time I/O
ECE 5655/4655 Real-Time DSP 2–43
Chapter 2 • The TMS320C6x Family: Hardware and Software
VC5505 eZDSP USB Stick
• Exposure to the new low-cost DSP platform from the fixed-point c55x family is also planned
• The board
• Test points
AIC3204
Headphone OutStereo InTest Points
SPI EEPROM
USB Connector
VC5505 DSP LEDTest Points
ExpansionConnector
TP1
TP6
TP4
TP3
TP2 TP5 TP7TP8
TP11 TP12 TP13 TP16TP15TP14
TP9
TP10
2–44 ECE 5655/4655 Real-Time DSP
VC5505 eZDSP USB Stick
• Block diagram
TP #Schematic
PageSignal Name
TP1 3 CLKOUT, Pin A7, VC5505
TP2 3 RTC_CLKOUT, Pin D8, VC5505
TP3 2 GPAIN3, Pin C11, VC5505
TP4 2 GPAIN2, Pin B11, VC5505
TP5 2 GPAIN1, Pin A11, VC5505
TP6 2 GPAIN0, Pin D10, VC5505
TP7 3 GND
TP8 7 GND
TP9 5 GND
TP10 6 Vcore, VCC_1V3, Pin 7,8 U8
TP11 6 3V3, VCC_3V3, Pin 7,8 U7
TP12 4 GPIO22, Pin E2, VC5505
TP13 4 GPIO23, Pin F2, VC5505
TP14 4 GPIO24, Pin G2, VC5505
TP15 4 GPIO25, Pin G4, VC5505
TP16 4 GPIO21, Pin N1, VC5505
PLL/ClockGenerator
PowerManagement
PinMultiplexing
JTAG Interface
64 KB DARAM
256 KB SARAM
128 KB ROM
Switched Central Resource (SCR)
InputClock(s)
FFT HardwareAccelerator
C55x™ DSP CPU
DSP System
LCDBridge
Display
I S(x4)
2
I C2
SPI UART
Serial Interfaces
GP Timer(x2)
System
10-BitSARADC
App-Spec
USB 2.0PHY (HS)[DEVICE]
RTC
Connectivity
NAND, NOR,SRAM
Program/Data Storage
MMC/SD(x2)
Peripherals
DMA(x4)
Interconnect
GP Timerand/or WD
ECE 5655/4655 Real-Time DSP 2–45
Chapter 2 • The TMS320C6x Family: Hardware and Software
• Features
1.1 TMS320VC5505 Features• High-Performance, Low-Power, TMS320C55x™ • Four Inter-IC Sound (I2S Bus™) for Data
Fixed-Point Digital Signal Processor Transport– 16.67-, 10-ns Instruction Cycle Time • Device USB Port With Integrated 2.0– 60-, 100-MHz Clock Rate High-Speed PHY that Supports:– One/Two Instruction(s) Executed per Cycle – USB 2.0 Full- and High-Speed Device– Dual Multipliers [Up to 200 Million • LCD Bridge With Asynchronous Interface
Multiply-Accumulates per Second• Tightly-Coupled FFT Hardware Accelerator(MMACS)]• 10-Bit 4-Input Successive Approximation– Two Arithmetic/Logic Units (ALUs)
(SAR) ADC– Three Internal Data/Operand Read Buses• Real-Time Clock (RTC) With Crystal Input, Withand Two Internal Data/Operand Write Buses
Separate Clock Domain, Separate Power– Fully Software-Compatible With C55xSupplyDevices
– Industrial Temperature Devices Available • Four Core Isolated Power Supply Domains:Analog, RTC, CPU and Peripherals, and USB• 320K Bytes Zero-Wait State On-Chip RAM,
Composed of: • Four I/O Isolated Power Supply Domains: RTC– 64K Bytes of Dual-Access RAM (DARAM), I/O, EMIF I/O, USB PHY, and DVDDIO
8 Blocks of 4K x 16-Bit • Low-Power S/W Programmable Phase-Locked– 256K Bytes of Single-Access RAM Loop (PLL) Clock Generator
(SARAM), 32 Blocks of 4K x 16-Bit• On-Chip ROM Bootloader (RBL) to Boot From
• 128K Bytes of Zero Wait-State On-Chip ROM NAND Flash, NOR Flash, SPI EEPROM, or I2C(4 Blocks of 16K x 16-Bit) EEPROM
• 16-/8-Bit External Memory Interface (EMIF) with • IEEE-1149.1 (JTAG™)Glueless Interface to: Boundary-Scan-Compatible– 8-/16-Bit NAND Flash, 1- and 4-Bit ECC • Up to 26 General-Purpose I/O (GPIO) Pins– 8-/16-Bit NOR Flash (Multiplexed With Other Device Functions)– Asynchronous Static RAM (SRAM)
• 196-Terminal Pb-Free Plastic BGA (Ball Grid• Direct Memory Access (DMA) Controller Array) (ZCH Suffix)
– Four DMA With 4 Channels Each • 1.05-V Core (60 MHz), 1.8-V, 2.5-V, 2.8-V, or(16-Channels Total) 3.3-V I/Os• Three 32-Bit General-Purpose Timers
• 1.3-V Core (100 MHz), 1.8-V, 2.5-V, 2.8-V, or– One Selectable as a Watchdog and/or GP 3.3-V I/Os• Two MultiMedia Card/Secure Digital (MMC/SD) • Applications:Interfaces – Wireless Audio Devices (e.g., Headsets,• Universal Asynchronous Receiver/Transmitter Microphones, Speakerphones, etc.)
(UART) – Echo Cancellation Headphones• Serial-Port Interface (SPI) With Four – Portable Medical Devices
Chip-Selects – Voice Applications• Master/Slave Inter-Integrated Circuit (I2C – Industrial Controls
Bus™) – Fingerprint Biometrics– Software Defined Radio
2–46 ECE 5655/4655 Real-Time DSP
• Memory Map
• For more details on the C55 architecture in general see Sec-tion 4.4 of the Kuo text
• Since the C55 follows in the line of the C54, Section 4.3 ofthe Kuo text covers this family of processors
0001 0000h
64K Minus 192 BytesDARAM(D)
0009 0000h
SARAM 256K Bytes
External-CS2 Space(C)
0200 0000h
0300 0000h
0400 0000h
0500 0000h
050E 0000h
128K Bytes Asynchronous (if MPNMC=1)128K Bytes ROM (if MPNMC=0)
External-CS3 Space(C)
External-CS4 Space(C)
External-CS5 Space(C)
BLOCK SIZE
DMA/USB/LCD
BYTE ADDRESS(A)
ROM(if MPNMC=0)
External-CS5f MPNMC=1)
(C)Space
(i
1M Minus 128K Bytes Asynchronous
1M Bytes Asynchronous
2M Bytes Asynchronous
4M Bytes Asynchronous
MEMORY BLOCKS
0001 00C0h
MMR (Reserved)(B)
0100 0000h
Reserved 8M Minus 320K Bytes
050F FFFFh
000000h
010000h
800000h
C00000h
E00000h
F00000h
FE0000h
CPU BYTE
ADDRESS(A)
0000C0h
050000h
FFFFFFh
A. Address shown represents the first byte address in each block.B. The first 192 bytes are reserved for memory-mapped registers (MMRs).C. Out of the four DMA controllers, only DMA controller 3 has access to the external memory space.D. The USB and LCD controllers do not have access to DARAM.
ECE 5655/4655 Real-Time DSP 2–47
Chapter 2 • The TMS320C6x Family: Hardware and Software
2–48 ECE 5655/4655 Real-Time DSP