tecture—two 32-bit IEEE floating-point/32-bit fixedpoint/40-bit extended precision floating-point computational units, each with a multiplier, ALU, shifter, and
register file
CORE PROCESSOR
INSTRUCTION
32 ⴛ 48 -BIT
PROGR AM
SEQUENCER
CA CH E
DAG1
8 ⴛ 4 ⴛ 32
DAG 2
8 ⴛ 4 ⴛ 32
TIMER
ADSP-21261
High bandwidth I/O— A parallel port, SPI port, four serial
ports, digital audio interface (DAI), and JTAG
DAI incorporates two precision clock generators (PCGs), an
input data port (IDP) which includes the parallel data
acquisition port (PDAP), and three programmable timers,
all under software control through the signal routing unit
(SRU)
On-chip memory—1M bit of on-chip SRAM and a dedicated
3M bit of on-chip mask-programmable ROM
Six independent synchronous serial ports provide a variety
of serial communication protocols including TDM and I
modes
For complete ordering information, see Ordering Guide on
Page 44.
DUALP ORTED MEMORY
SRAM
0.5MBITROM
ADDRDATA
BLOCK 0
1. 5M B IT
DUA L PORTED MEM ORY
BLO CK 1
SRA M
0.5 M BITR OM
1. 5M B IT
ADDR
DATA
2
S
32
PROC ESSIN G
EL EMENT
(PEX)
PM ADDRESS BUS
DM ADDRESS BUS
PROC ESSIN G
ELEMENT
(P EY)
JTAG TEST & EMULATION
PX REGI STER
6
32
4
20
SI GNAL
RO UTI NG
UNIT
S
DIGITAL AUDIO INTERFACE
Figure 1. FUNCTIONAL BLOCK DIAGRAM
SHARC and the SHARC logo are registered trademarks of Analog Devices, Inc.
Rev. PrB
Information furnished by Analog Devices is believed to be accurate and reliable.
However, no responsibility is assumed by Analog Devices for its use, nor for any
infringements of patents or other rights of third parties that may result from its use.
Specifications subject to change without notice. No license is granted by implication
or otherwise under any patent or patent rights of Analog Devices. Trademarks and
registered trademarks are the property of their respective owners.
At 150 MHz (6.67 ns) core instruction rate, the ADSP-21261
operates at 900 MFLOPS peak performance
300 MMACS sustained performance at 150 MHz
Super Harvard Architecture—three independent buses for
dual data fetch, instruction fetch, and nonintrusive, zero-
overhead I/O
1M bit on-chip dual-ported SRAM for simultaneous access by
core processor and DMA
3M bit on-chip dual-ported mask-programmable ROM
Dual data address generators (DAGs) with modulo and bit-
reverse addressing
Zero-overhead looping with single-cycle loop setup, provid-
ing efficient program sequencing
Single instruction multiple data (SIMD) architecture
provides:
Two computational processing elements
Concurrent execution— Each processing element executes
the same instruction, but operates on different data
Parallelism in buses and computational units allows: Sin-
gle cycle executions (with or without SIMD) of: a multiply
operation, an ALU operation, a dual memory read or
write, and an instruction fetch
Transfers between memory and core at up to four 32-bit
floating- or fixed-point words per cycle, sustained
2.4G byte/s bandwidth at 150 MHz core instruction rate. In
addition, 600M byte/sec is available via DMA
Accelerated FFT butterfly computation through a multiply
with add and subtract instruction
DMA controller supports:
18 zero-overhead DMA channels for transfers between
ADSP-21261 internal memory and serial ports (12), the
input data port (IDP) (4), SPI-compatible port (1), and the
parallel port (1)
32-bit background DMA transfers at core clock speed, in par-
allel with full-speed processor execution
Asynchronous parallel/external port provides:
Access to asynchronous external memory
16 multiplexed address/data lines support 24-bit address
external address range with 8-bit data or 16-bit address
external address range with 16-bit data
50M Byte per sec transfer rate for 150 MHz core rate
External memory access in a dedicated DMA channel
8- to 32-bit and 16- to 32-bit word packing options
Programmable wait state options: 2 to 31 CCLK
Digital audio interface (DAI) includes four serial ports, two
precision clock generators, an input data port, three pro-
grammable timers and a signal routing unit
Serial ports provide:
Four dual data line serial ports that operate at up to
37.5M bit/s for a 150 MHz core on each data line — each
has a clock, frame sync, and two data lines that can be configured as either a receiver or transmitter pair
Left-justified sample pair and I
direction for up to 24 simultaneous receive or transmit
channels using two I
2
2
S support, programmable
S compatible stereo devices per serial
port
TDM support for telecommunications interfaces including
128 TDM channel support for telephony interfaces such as
H.100/H.110
Up to four TDM streams, each with 128 channels per frame
Companding selection on a per channel basis in TDM mode
Input data port provides an additional input path to the DSP
core configurable as either eight channels of I
2
S or serial
data or as seven channels plus a single 20-bit wide synchronous parallel data acquisition port
Supports receive audio channel data in I2S, left-justified
sample pair, or right-justified mode
Signal routing unit provides configurable and flexible
connections between all DAI components, four serial
ports, an input data port, two precision clock generators,
three timers, 10 interrupts, six flag inputs, six flag outputs,
and 20 SRU I/O pins (DAI_Px)
Serial peripheral interface (SPI)provides:
Master or slave serial boot through
Full-duplex operation
Master-slave mode multi-master support
Open drain outputs
Programmable baud rates, clock polarities, and phases
3 Muxed Flag/IRQ lines
1 Muxed Flag/Timer expired line
ROM based security features:
JTAG access to memory permitted with a 64-bit key
Protected memory regions that can be assigned to limit
access under program control to sensitive code
PLL has a wide variety of software multiplier ratios
JTAG background telemetry for enhanced emulation
features
IEEE 1149.1 JTAG standard test access port and on-chip
emulation
Dual voltage: 3.3 V I/O, 1.2 V core
Available pakages: 136-ball BGA, 136-ball lead-free BGA,
144-lead lead-free LQFP
Code-compatible with all previous SHARC processors
Pin-compatible with ADSP-2126x and ADSP-2136x
processors
Rev. PrB | Page 2 of 44 | June 2004
TABLE OF CONTENTS
ADSP-21261Preliminary Technical Data
General Description ................................................. 4
ADSP-21261 Family Core Architecture . . .................... 4
The ADSP-21261 SHARC DSP is a member of the SIMD
SHARC family of DSPs featuring Analog Devices Super Harvard Architecture. The ADSP-21261 is source code compatible
with the ADSP-21160 and ADSP-21161 DSPs as well as with
first generation ADSP-2106x SHARC processors in SISD (Single-Instruction, Single-Data) mode. Like other SHARC DSPs,
the ADSP-21261 is a 32-bit/40-bit floating-point processor optimized for high precision signal processing applications with its
dual-ported on-chip SRAM, mask-programmable ROM, multiple internal buses to eliminate I/O bottlenecks, and an
innovative Digital Audio Interface (DAI).
As shown in the functional block diagram on Page 1, the ADSP21261 uses two computational units to deliver a 5 to 10 times
performance increase over the ADSP-2106x on a range of DSP
algorithms. Fabricated in a state-of-the-art, high speed, CMOS
process, the ADSP-21261 DSP achieves an instruction cycle
time of 6.67 ns at 150 MHz. With its SIMD computational hardware, the ADSP-21261 can perform 900 MFLOPS running at
150 MHz.
Table 1 shows performance benchmarks for the ADSP-21261.
The ADSP-21261 continues SHARC’s industry leading standards of integration for DSPs, combining a high performance
32-bit DSP core with integrated, on-chip system features. These
features include 1M bit dual-ported SRAM memory, 3M bit
dual-ported ROM, an I/O processor that supports 22 DMA
channels, six serial ports, an SPI interface, external parallel bus,
and Digital Audio Interface (DAI).
The block diagram of the ADSP-21261 on Page 1 illustrates the
following architectural features:
• Two processing elements, each containing an ALU, Multiplier, Shifter, and Data Register File
• Data Address Generators (DAG1, DAG2)
• Program sequencer with instruction cache
• PM and DM buses capable of supporting four 32-bit data
transfers between memory and the core at every core
processor cycle
• Three Programmable Interval Timers with PWM Generation, PWM Capture/Pulse Width Measurement, and
External Event Counter Capabilities
• On-Chip dual-ported SRAM (1M bit)
• On-Chip dual-ported mask-programmable ROM (3M bit)
• JTAG test access port
The block diagram of the ADSP-21261 on Page 1, illustrates the
following architectural features:
• 8- or 16-bit Parallel port that supports interfaces to off-chip
memory peripherals
• DMA controller
• Six full duplex serial ports
• SPI compatible interface
• Digital Audio Interface that includes two precision clock
generators (PCG), an input data port (IDP), four serial
ports, eight serial interfaces, a 20-bit synchronous parallel
input port, 10 interrupts, six flag outputs, six flag inputs,
three timers, and a flexible signal routing unit (SRU)
Figure 2 on Page 5 shows one sample configuration of a SPORT
using the precision clock generator to interface with an I
and an I
2
S DAC with a much lower jitter clock than the serial
2
S ADC
port would generate itself. Many other SRU configurations are
possible.
ADSP-21261 FAMILY CORE ARCHITECTURE
The ADSP-21261 is code compatible at the assembly level with
the ADSP-21266, ADSP-21160 and ADSP-21161, and with the
first generation ADSP-2106x SHARC DSPs. The ADSP-21261
shares architectural features with the ADSP-2126x and
ADSP-2116x SIMD SHARC family of DSPs, as detailed in the
following sections.
SIMD Computational Engine
The ADSP-21261 contains two computational processing elements that operate as a Single-Instruction Multiple-Data
(SIMD) engine. The processing elements are referred to as PEX
and PEY and each contains an ALU, multiplier, shifter, and register file. PEX is always active, and PEY may be enabled by
setting the PEYEN mode bit in the MODE1 register. When this
mode is enabled, the same instruction is executed in both processing elements, but each processing element operates on
different data. This architecture is efficient at executing math
intensive DSP algorithms.
Entering SIMD mode also has an effect on the way data is transferred between memory and the processing elements. When in
SIMD mode, twice the data bandwidth is required to sustain
computational operation in the processing elements. Because of
this requirement, entering SIMD mode also doubles the bandwidth between memory and the processing elements. When
using the DAGs to transfer data in SIMD mode, two data values
are transferred with each access of memory or the register file.
Rev. PrB | Page 4 of 44 | June 2004
ADSP-21261Preliminary Technical Data
CLOCK
ADC
(OPTIONAL)
CLK
SDAT
DAC
(OPTIONAL)
CLK
SDAT
ADSP -2 1261
SPORT0
SPO RT1
SPORT2
SPORT3
SPORT4
SPORT5
CLKO UT
AD15-0
6
ALE
RD
WR
FLAG0
CONTROL
LATCH
ADDR
PARALLEL
DATA
OE
WE
CS
DATA
ADDRESS
PORT
RAM, ROM
BOOT R OM
I/O DE VICE
CLK IN
XTAL
2
CLK_CFG1-0
2
BOO T CFG 1- 0
3
FL AG 3 -1
FS
FS
DAI_P 1
DAI_P2
DAI_P3
SRU
DA I_P 1 8
DA I_P 1 9
DAI_P20
CLK
FS
DAI
RESE TJTAG
PCG A
PCGB
SCL K0
SFS0
SD0A
SD0B
Figure 2. ADSP-21261 System Sample Configuration
Independent, Parallel Computation Units
Within each processing element is a set of computational units.
The computational units consist of an arithmetic/logic unit
(ALU), multiplier and shifter. These units perform all operations in a single cycle. The three units within each processing
element are arranged in parallel, maximizing computational
throughput. Single multifunction instructions execute parallel
ALU and multiplier operations. In SIMD mode, the parallel
ALU and multiplier operations occur in both processing elements. These computation units support IEEE 32-bit singleprecision floating-point, 40-bit extended precision floatingpoint, and 32-bit fixed-point data formats.
Data Register File
A general-purpose data register file is contained in each processing element. The register files transfer data between the
computation units and the data buses, and store intermediate
results. These 10-port, 32-register (16 primary, 16 secondary)
register files, combined with the ADSP-2126x enhanced Harvard architecture, allow unconstrained data flow between
computation units and internal memory. The registers in PEX
are referred to as R0-R15 and in PEY as S0-S15.
Single-Cycle Fetch of Instruction and Four Operands
The ADSP-21261 features an enhanced Harvard architecture in
which the data memory (DM) bus transfers data and the program memory (PM) bus transfers both instructions and data
(see the Figure 1 on Page 1). With the ADSP-21261’s separate
program and data memory buses and on-chip instruction cache,
the processor can simultaneously fetch four operands (two over
each data bus) and one instruction (from the cache), all in a single cycle.
Instruction Cache
The ADSP-21261 includes an on-chip instruction cache that
enables three-bus operation for fetching an instruction and four
data values. The cache is selective—only the instructions whose
fetches conflict with PM bus data accesses are cached. This
cache allows full-speed execution of core, looped operations
such as digital filter multiply-accumulates, and FFT butterfly
processing.
Data Address Generators With Zero-Overhead Hardware
Circular Buffer Support
The ADSP-21261’s two data address generators (DAGs) are
used for indirect addressing and implementing circular data
buffers in hardware. Circular buffers allow efficient programming of delay lines and other data structures required in digital
signal processing, and are commonly used in digital filters and
Rev. PrB | Page 5 of 44 | June 2004
ADSP-21261Preliminary Technical Data
Fourier transforms. The two DAGs of the ADSP-21261 contain
sufficient registers to allow the creation of up to 32 circular buffers (16 primary register sets, 16 secondary). The DAGs
automatically handle address pointer wrap-around, reduce
overhead, increase performance, and simplify implementation.
Circular buffers can start and end at any memory location.
Flexible Instruction Set
The 48-bit instruction word accommodates a variety of parallel
operations, for concise programming. For example, the
ADSP-21261 can conditionally execute a multiply, an add, and a
subtract in both processing elements while branching, and
fetching up to four 32-bit values from memory—all in a single
instruction.
ADSP-21261 MEMORY AND I/O INTERFACE
FEATURES
The ADSP-21261 adds the following architectural features to
the SIMD SHARC family core.
Dual-Ported On-Chip Memory
The ADSP-21261 contains one megabit of internal SRAM and
three megabits of internal mask-programmable ROM. Each
block can be configured for different combinations of code and
data storage (see Figure 3 on Page 7). Each memory block is
dual-ported for single-cycle, independent accesses by the core
processor and I/O processor. The dual-ported memory, in combination with three separate on-chip buses, allow two data
transfers from the core and one from the I/O processor, in a single cycle.
The ADSP-21261’s SRAM can be configured as a maximum of
32K words of 32-bit data, 64K words of 16-bit data, 21.3K words
of 48-bit instructions (or 40-bit data), or combinations of different word sizes up to one megabit. All of the memory can be
accessed as 16-bit, 32-bit, 48-bit, or 64-bit words. A 16-bit floating-point storage format is supported that effectively doubles
the amount of data that may be stored on-chip. Conversion
between the 32-bit floating-point and 16-bit floating-point formats is performed in a single instruction. While each memory
block can store combinations of code and data, accesses are
most efficient when one block stores data using the DM bus for
transfers, and the other block stores instructions and data using
the PM bus for transfers.
Using the DM bus and PM buses, with one dedicated to each
memory block assures single-cycle execution with two data
transfers. In this case, the instruction must be available in the
cache.
DMA Controller
The ADSP-21261’s on-chip DMA controller allows zero-overhead data transfers without processor intervention. The DMA
controller operates independently and invisibly to the processor
core, allowing DMA operations to occur while the core is simultaneously executing its program instructions. DMA transfers
can occur between the ADSP-21261’s internal memory and its
serial ports, the SPI-compatible (Serial Peripheral Interface)
port, the IDP (Input Data Port), Parallel Data Acquisition Port
(PDAP) or the parallel port. 18 channels of DMA are available
on the ADSP-21261—one for the SPI interface, twelve via the
serial ports, four via the Input Data Port and one via the processor’s parallel port. Programs can be downloaded to the ADSP21261 using DMA transfers. Other DMA features include interrupt generation upon completion of DMA transfers, and DMA
chaining for automatic linked DMA transfers.
Digital Audio Interface (DAI)
The Digital Audio Interface (DAI) provides the ability to connect various peripherals to any of the DSPs 20 DAI pins
(DAI_P[20:1]).
Programs make these connections using the Signal Routing
Unit (SRU, shown in Figure 1).
The SRU is a matrix routing unit (or group of multiplexers) that
enables the peripherals provided by the DAI to be interconnected under software control. This provides easy use of the
DAI associated peripherals for a much wider variety of applications by using a larger set of algorithms than is possible with
nonconfigurable signal paths.
The DAI also includes four serial ports, two precision clock generators (PCGs), an input data port (IDP), six flag outputs and
six flag inputs, and three timers. The IDP provides an additional
input path to the DSP core configurable as either eight channels
2
S or serial data, or as seven channels plus a single 20-bit
of I
wide synchronous parallel data acquisition port. Each data
channel has its own DMA channel that is independent from the
ADSP-21261's serial ports.
For complete information on using the DAI, see the ADSP-2126x SHARC DSP Peripherals Manual.
Serial Ports
The ADSP-21261 features six synchronous serial ports that provide an inexpensive interface to a wide variety of digital and
mixed-signal peripheral devices such as Analog Devices
AD183x family of audio codecs, DACs, or ADCs. The serial
ports are made up of two data lines, a clock, and frame sync. The
data lines can be programmed to either transmit or receive and
each data line has its own dedicated DMA channel.
Serial ports are enabled via 12 programmable and simultaneous
receive or transmit pins that support up to 24 transmit or 24
receive channels of serial data when all four SPORTS are
enabled, or four full duplex TDM streams of 128 channels per
frame.
The serial ports operate at up to one-quarter of the DSP core
clock rate, providing each with a maximum data rate of
37.5M bit/s for a 150 MHz core. Serial port data can be automatically transferred to and from on-chip memory via dedicated
DMA channels. Each of the serial ports can work in conjunction
with another serial port to provide TDM support. One SPORT
provides two transmit signals while the other SPORT provides
the two receive signals. The frame sync and clock are shared.
Rev. PrB | Page 6 of 44 | June 2004
E
INTERNAL MEMORY
SPACE
ADSP-21261Preliminary Technical Data
LONG WORD
ADDRESSI NG
IOP REGISTERS
0x0000 0000 - 0x0003 FFFF
BLOCK 0 SRAM (0 .5 M BI T)
0x0004 0000 - 0x0004 1FFF
RESERVED
0x0004 2000 - 0x0005 7FFF
BLOCK 0 ROM (1.5M BIT)
0x00 05 800 0 - 0x 0002 FFFF
RESERVED
0x00 05 300 0 - 0x 0005 FFFF
BLOCK 1 SRAM (0 .5 M BI T)
0x0006 0000 - 0x0006 1FFF
RESERVED
0x0006 2000 - 0x0007 7FFF
BLOCK 1 ROM (1. 5M BI T)
0x0007 8000 - 0x0007 DFFF
NORMAL WORD
ADDRESSI NG
IOPREGISTERS
0x0000 0000 - 0x0003 FFFF
BLOCK 0 SRAM(0.5MBIT)
0x0008 0000 - 0x0008 3FFF
RESERVED
0x0008 4000 - 0x000A FFFF
BLOCK 0 ROM ( 1. 5M BIT )
0x000B 0000 - 0x000B BFFF
RESERVED
0x000B C000 - 0x000B FFFF
BLOCK 1 SRAM ( 0.5 M BI T)
0x000C 0000 - 0x000C 3FFF
RESERV ED
0x000C 4000 - 0x000E FFFF
BLOCK 1 ROM (1.5M BIT)
0x000F 0000 - 0x000F BFFF
SHORT WORD
ADDRESSI NG
IOP REGISTERS
0x00 00 000 0 - 0x 0003 FFFF
BLOCK 0 SRAM (0 .5 M BI T)
0x0010 0000 - 0x0010 7FFF
EXTE RNAL ME MORY IS NO T DI RECTLY AC CESSI BLE
BY THE CORE. DMA MUST BE USED TO READ OR WRIT
TO THI S MEMORY US ING THE SPI OR PARALL EL PORT .
2
BLOCK 0 ROM HAS A 4 8-BI T ADDRESS RANGE
(0xA0000–0xA7 FFF).
3
BLOCK 1 ROM HAS A 4 8-BI T ADDRESS RANGE
(0xE0000–0xE7 FFF).
Rev. PrB | Page 7 of 44 | June 2004
ADSP-21261Preliminary Technical Data
Serial ports operate in four modes:
• Standard DSP serial mode
• Multichannel (TDM) mode
2
S mode
•I
• Left-justified sample pair mode
Left-justified sample pair mode is a mode where in each frame
sync cycle two samples of data are transmitted/received—one
sample on the high segment of the frame sync, the other on the
low segment of the frame sync. Programs have control over various attributes of this mode.
Each of the serial ports supports the left-justified sample pair
2
S protocols (I2S is an industry standard interface com-
and I
monly used by audio codecs, ADCs and DACs), with two data
pins, allowing four left-justified Sample Pair or I
2
S channels
(using two stereo devices) per serial port, with a maximum of up
to 24 audio channels. The serial ports permit little-endian or
big-endian transmission formats and word lengths selectable
from 3 bits to 32 bits. For the left-justified sample pair and I
2
S
modes, data-word lengths are selectable between 8 bits and 32
bits. Serial ports offer selectable synchronization and transmit
modes as well as optional µ-law or A-law companding selection
on a per channel basis. Serial port clocks and frame syncs can be
internally or externally generated.
Serial Peripheral (Compatible) Interface
Serial Peripheral Interface (SPI) is an industry standard synchronous serial link, enabling the ADSP-21261 SPI compatible
port to communicate with other SPI compatible devices. SPI is
an interface consisting of two data pins, one device select pin,
and one clock pin. It is a full-duplex synchronous serial interface, supporting both master and slave modes. The SPI port can
operate in a multimaster environment by interfacing with up to
four other SPI compatible devices, either acting as a master or
slave device. The ADSP-21261 SPI compatible peripheral implementation also features programmable baud rates up to
37.5 MHz, clock phases, and polarities. The ADSP-21261 SPI
compatible port uses open drain drivers to support a multimaster configuration and to avoid data contention.
Parallel Port
The Parallel Port provides interfaces to SRAM and peripheral
devices. The multiplexed address and data pins (AD15-0) can
access 8-bit devices with up to 24 bits of address, or 16-bit
devices with up to 16 bits of address. In either mode, 8- or 16bit, the maximum data transfer rate is one-third the core clock
speed. As an example, for a clock rate of 150 MHz, this is equivalent to 50M byte/sec.
DMA transfers are used to move data to and from internal
memory. Access to the core is also facilitated through the parallel port register read/write functions. The RD, WR, and ALE
(Address Latch Enable) pins are the control pins for the
parallel port.
Timers
The ADSP-21261 has a total of four timers: a core timer able to
generate periodic software interrupts and three general-purpose
timers that can that can generate periodic interrupts and be
independently set to operate in one of three modes:
• Pulse Waveform Generation mode
• Pulse Width Count/Capture mode
• External Event Watchdog mode
The core timer can be configured to use FLAG3 as a Timer
Expired output signal, and each general-purpose timer has one
bidirectional pin and four registers that implement its mode of
operation: a 6-bit configuration register, a 32-bit count register,
a 32-bit period register, and a 32-bit pulse width register. A single control and status register enables or disables all three
general-purpose timers independently.
ROM Based Security
The ADSP-21261 has a ROM security feature that provides
hardware support for securing user software code by preventing
unauthorized reading from the internal code when enabled.
When using this feature, the DSP does not boot-load any external code, executing exclusively from internal SRAM/ROM.
Additionally, the DSP is not freely accessible via the JTAG port.
Instead, a unique 64-bit key, which must be scanned in through
the JTAG or Test Access Port will be assigned to each customer.
The device will ignore a wrong key. Emulation features and
external boot modes are only available after the correct key is
scanned.
Program Booting
The internal memory of the ADSP-21261 boots at system
power-up from an 8-bit EPROM via the parallel port, an SPI
master, an SPI slave or an internal boot. Booting is determined
by the Boot Configuration (BOOTCFG1-0) pins. Selection of
the boot source is controlled via the SPI as either a master or
slave device, or it can immediately begin executing from ROM.
Phase-Locked Loop
The ADSP-21261 uses an on-chip Phase-Locked Loop (PLL) to
generate the internal clock for the core. On power up, the
CLKCFG1-0 pins are used to select ratios of 16:1, 8:1, and 3:1.
After booting, numerous other ratios can be selected via software control. The ratios are made up of software configurable
numerator values from 1 to 32 and software configurable divisor values of 1, 2, 4, 8, and 16.
Power Supplies
The ADSP-21261 has separate power supply connections for the
internal (V
), external (V
DDINT
), and analog (A
DDEXT
VDD/AVSS
)
power supplies. The internal and analog supplies must meet the
1.2 V requirement. The external supply must meet the 3.3 V
requirement. All external supply pins must be connected to the
same power supply.
Note that the analog supply (A
) powers the ADSP-21261’s
VDD
clock generator PLL. To produce a stable clock, programs
should provide an external circuit to filter the power input to
Rev. PrB | Page 8 of 44 | June 2004
ADSP-21261Preliminary Technical Data
the A
pin. Place the filter as close as possible to the pin. For
VDD
an example circuit, see Figure 4. To prevent noise coupling, use
a wide trace for the analog ground (A
) signal and install a
VSS
decoupling capacitor as close as possible to the pin. Note that
the A
VSS
and A
pins specified in Figure 4 are inputs to the
VDD
SHARC and not the analog ground plane on the board.
10⍀
V
DDINT
Figure 4. Analog Power (A
A
VDD
0.01F0.1F
VSS
) Filter Circuit
A
VDD
TARGET BOARD JTAG EMULATOR CONNECTOR
Analog Devices DSP Tools product line of JTAG emulators uses
the IEEE 1149.1 JTAG test access port of the ADSP-21261
processor to monitor and control the target board processor
during emulation. Analog Devices DSP Tools product line of
JTAG emulators provides emulation at full processor speed,
allowing inspection and modification of memory, registers, and
processor stacks. The processor’s JTAG interface ensures that
the emulator will not affect target system loading or timing.
For complete information on Analog Devices’ SHARC DSP
Tools product line of JTAG emulator operation, see the appropriate emulator hardware user’s guide.
DEVELOPMENT TOOLS
The ADSP-21261 is supported with a complete set of
CROSSCORE
including Analog Devices emulators and VisualDSP++
opment environment. The same emulator hardware that
supports other SHARC processors also fully emulates the
ADSP-21261.
The VisualDSP++ project management environment lets programmers develop and debug an application. This environment
includes an easy to use assembler (which is based on an algebraic syntax), an archiver (librarian/library builder), a linker, a
loader, a cycle-accurate instruction-level simulator, a C/C++
compiler, and a C/C++ runtime library that includes DSP and
mathematical functions. A key point for these tools is C/C++
code efficiency. The compiler has been developed for efficient
translation of C/C++ code to DSP assembly. The SHARC has
architectural features that improve the efficiency of compiled
C/C++ code.
The VisualDSP++ debugger has a number of important features. Data visualization is enhanced by a plotting package that
offers a significant level of flexibility. This graphical representation of user data enables the programmer to quickly determine
the performance of an algorithm. As algorithms grow in complexity, this capability can have increasing significance on the
designer’s development schedule, increasing productivity. Statistical profiling enables the programmer to nonintrusively poll
the processor as it is running the program. This feature, unique
TM
software and hardware development tools,
TM
devel-
to VisualDSP++, enables the software developer to passively
gather important code execution metrics without interrupting
the real-time characteristics of the program. Essentially, the
developer can identify bottlenecks in software quickly and efficiently. By using the profiler, the programmer can focus on
those areas in the program that impact performance and take
corrective action.
Debugging both C/C++ and assembly programs with the
VisualDSP++ debugger, programmers can:
• View mixed C/C++ and assembly code (interleaved source
and object information)
• Insert breakpoints
• Set conditional breakpoints on registers, memory,
and stacks
• Trace instruction execution
• Perform linear or statistical profiling of program execution
• Fill, dump, and graphically plot the contents of memory
• Perform source level debugging
• Create custom debugger windows
The VisualDSP++ IDDE lets programmers define and manage
DSP software development. Its dialog boxes and property pages
let programmers configure and manage all of the SHARC development tools, including the color syntax highlighting in the
VisualDSP++ editor. This capability permits programmers to:
• Control how the development tools process inputs and
generate outputs
• Maintain a one-to-one correspondence with the tool’s
command line switches
The VisualDSP++ Kernel (VDK) incorporates scheduling and
resource management tailored specifically to address the memory and timing constraints of DSP programming. These
capabilities enable engineers to develop code more effectively,
eliminating the need to start from the very beginning, when
developing new application code. The VDK features include
Threads, Critical and Unscheduled regions, Semaphores,
Events, and Device flags. The VDK also supports Priority-based,
Preemptive, Cooperative, and Time-Sliced scheduling
approaches. In addition, the VDK was designed to be scalable. If
the application does not use a specific feature, the support code
for that feature is excluded from the target system.
Because the VDK is a library, a developer can decide whether to
use it or not. The VDK is integrated into the VisualDSP++
development environment, but can also be used via standard
command line tools. When the VDK is used, the development
environment assists the developer with many error-prone tasks
and assists in managing system resources, automating the generation of various VDK based objects, and visualizing the
system state, when debugging an application that uses the VDK.
VisualDSP++ Component Software Engineering (VCSE) is
Analog Devices technology for creating, using, and reusing software components (independent modules of substantial
functionality) to quickly and reliably assemble software applications. Download components from the Web and drop them into
Rev. PrB | Page 9 of 44 | June 2004
ADSP-21261Preliminary Technical Data
the application. Publish component archives from within
VisualDSP++. VCSE supports component implementation in
C/C++ or assembly language.
Use the Expert Linker to visually manipulate the placement of
code and data on the embedded system. View memory utilization in a color-coded graphical form, easily move code and data
to different areas of the DSP or external memory with the drag
of the mouse, examine run time stack and heap usage. The
Expert Linker is fully compatible with existing Linker Definition
File (LDF), allowing the developer to move between the graphical and textual environments.
In addition to the software and hardware development tools
available from Analog Devices, third parties provide a wide
range of tools supporting the SHARC processor family. Hardware tools include SHARC processor PC plug-in cards. Third
party software tools include DSP libraries, real-time operating
systems, and block diagram design tools.
DESIGNING AN EMULATOR-COMPATIBLE DSP
BOARD (TARGET)
The Analog Devices family of emulators are tools that every
DSP developer needs to test and debug hardware and software
systems. Analog Devices has supplied an IEEE 1149.1 JTAG
Test Access Port (TAP) on each JTAG DSP. Nonintrusive incircuit emulation is assured by the use of the processor’s JTAG
interface—the emulator does not affect target system loading or
timing. The emulator uses the TAP to access the internal features of the DSP, allowing the developer to load code, set
breakpoints, observe variables, observe memory, and examine
registers. The DSP must be halted to send data and commands,
but once an operation has been completed by the emulator, the
DSP system is set running at full speed with no impact on system timing.
To use these emulators, the target board must include a header
that connects the DSP’s JTAG port to the emulator.
For details on target board design issues including mechanical
layout, single processor connections, multiprocessor scan
chains, signal buffering, signal termination, and emulator pod
logic, see the EE-68: Analog Devices JTAG Emulation Technical Reference on the Analog Devices website (www.analog.com)—
use site search on “EE-68.” This document is updated regularly
to keep pace with improvements to emulator support.
ADDITIONAL INFORMATION
This data sheet provides a general overview of the ADSP-21261
architecture and functionality. For detailed information on the
ADSP-2126x Family core architecture and instruction set, refer
to the ADSP-2126x DSP Core Manual and the ADSP-21160
SHARC DSP Instruction Set Reference.
Rev. PrB | Page 10 of 44 | June 2004
PIN FUNCTION DESCRIPTIONS
ADSP-21261Preliminary Technical Data
ADSP-21261 pin definitions are listed below. Inputs identified
as synchronous (S) must meet timing requirements with respect
to CLKIN (or with respect to TCK for TMS, TDI). Inputs identified as asynchronous (A) can be asserted asynchronously to
CLKIN (or to TCK for TRST
). Tie or pull unused inputs to
V
or GND, except for the following:
DDEXT
• DAI_Px, SPICLK, MISO, MOSI, EMU
, TMS,TRST, TDI,
and AD15-0 (NOTE: These pins have pull-up resistors.)
The following symbols appear in the Type column of Table 2:
A = Asynchronous, G = Ground, I = Input, O = Output, P =
Power Supply, S = Synchronous, (A/D) = Active Drive, (O/D) =
Open Drain, and T = Three-State.
Table 2. Pin Descriptions
PinTypeState During and
After Reset
AD15-0I/O/TThree-state with
pull-up enabled
RD
WR
ALEOOutput only, driven
FLAG3-0I/O/AThree-stateFlag Pi ns. Each flag pin is configured via control bits as either an input or output. As
OOutput only, driven
OOutput only, driven
high
high
low
1
1
1
Function
Parallel Port Address/Data. The ADSP-21261 parallel port and its corresponding
DMA unit output addresses and data for peripherals on these multiplexed pins. The
multiplex state is determined by the ALE pin. The parallel port can operate in either
8-bit or 16-bit mode. Each AD pin has a 22.5 kΩ internal pull-up resistor. See Address
Data Modes on Page 14 for details of the AD pin operation:
For 8-bit mode: ALE is automatically a sserted whenever a change occurs in the upper
16 external address bits, A23-8; ALE is used in conjunction with an external latch to
retain the values of the A23-8.
For 16-bit mode: ALE is automatically asserted whenever a change occurs in the
address bits, A15-0; ALE is used in conjunction with an external latch to retain the
values of the A15-0. To use these pins as flags (FLAGS15-0) set (=1) Bit 20 of the
SYSCTL register and disable the parallel port. When used as an input, the IDP Channel
0 can use these pins for parallel input data.
Parallel Port Read Enable. RD is asserted low whenever the DSP reads 8-bit or
16-bit data from an external memory device. When AD15-0 are flags, this pin remains
deasserted.
Parallel Port Write Enable. WR is asserted low whenever the DSP writes 8-bit or
16-bit data to an external memory device. When AD15-0 are flags, this pin remains
deasserted.
Parallel Port Address Latch Enable. ALE is asserted whenever the DSP drives a new
address on the parallel port address pins. On reset, ALE is active high. However, it can
be reconfigured using software to be active low. When AD15-0 are flags, this pin
remains deasserted.
a n i np u t, i t c an b e t e st ed a s a co n di t io n. A s a n ou tp u t, i t c an b e u s ed to s ig na l ex t er n al
peripherals. These pins can be used as an SPI interface slave select output during SPI
mastering. These pins are also multiplexed with the IRQx
In SPI master boot mode, FLAG0 is the slave select pin that must be connected to an
SPI EPROM. FLAG0 is configured as a slave select during SPI master boot. When Bit
16 is set (=1) in the SYSCTL register, FLAG0 is configured as IRQ0
When Bit 17 is set (=1) in the SYSCTL register, FLAG1 is configured as IRQ1
When Bit 18 is set (=1) in the SYSCTL register, FLAG2 is configured as IRQ2
When Bit 19 is set (=1) in the SYSCTL register, FLAG3 is configured as TIMEXP, which
indicates that the system timer has expired.
and the TIMEXP signals.
.
.
.
Rev. PrB | Page 11 of 44 | June 2004
ADSP-21261Preliminary Technical Data
Table 2. Pin Descriptions (Continued)
PinTypeState During and
After Reset
DAI_P20-1I/O/TThree-state with
programmable pullup
SPICLKI/OThree-state with
pull-up enabled
SPIDS
MOSII/O (O/D)Three-state with
MISOI/O (O/D)Three-state with
BOOTCFG1-0IInput onlyBoot Configuration Select. Selects the boot mode for the DSP. The BOOTCFG pins
IInput onlySerial Peripheral Interface Slave Device Select. An active low signal used to select
pull-up enabled
pull-up enabled
Function
Digital Audio Interface Pins. These pins provide the physical interface to the SRU.
The SRU configuration registers define the combination of on-chip peripheral inputs
or outputs connected to the pin and to the pin’s output enable. The configuration
registers of these peripherals then determines the exact behavior of the pin. Any
input or output signal present in the SRU may be routed to any of these pins. The
SRU provides the connection from the serial ports, input data port, precision clock
generators, and timer to the DAI_P20-1 pins. These pins have internal 22.5 kΩ pullup resistors which are enabled on reset. These pull-ups can be disabled in the
DAI_PIN_PULLUP register.
Serial Peripheral Interface Clock Signal. Driven by the master, this signal controls
the rate at which data is transferred. The master may transmit data at a variety of
baud rates. SPICLK cycles once for each bit transmitted. SPICLK is a gated clock that
is active during data transfers, only for the length of the transferred word. Slave
devices ignore the serial clock if the slave select input is driven inactive (HIGH). SPICLK
is used to shift out and shift in the data driven on the MISO and MOSI lines. The data
is always shifted out on one clock edge and sampled on the opposite edge of the
clock. Clock polarity and clock phase relative to data are programmable into the
SPICTL control register and define the transfer format. SPICLK has a 22.5 kΩ internal
pull-up resistor.
the DSP as an SPI slave device. This input signal behaves like a chip select, and is
provided by the master device for the slave devices. In multimaster mode the DSPs
signal can be driven by a slave device to signal to the DSP (as SPI master) that
SPIDS
an error has occurred, as some other device is also trying to be the master device. If
asserted low when the device is in master mode, it is considered a multimaster error.
For a single-master, multiple-slave configuration where flag pins are used, this pin
must be tied or pulled high to V
21261 SPI interaction, any of the master ADSP-21261's flag pins can be used to drive
the SPIDS signal on the ADSP-21261 SPI slave device.
SPI Master Out Slave In. If the ADSP-21261 is configured as a master, the MOSI pin
becomes a data transmit (output) pin, transmitting output data. If the ADSP-21261
is configured as a slave, the MOSI pin becomes a data receive (input) pin, receiving
input data. In an ADSP-21261 SPI interconnection, the data is shifted out from the
MOSI output pin of the master and shifted into the MOSI input(s) of the slave(s). MOSI
has a 22.5 kΩ internal pull-up resistor.
SPI Master In Slave Out. If the ADSP-21261 is configured as a master, the MISO pin
becomes a data receive (input) pin, receiving input data. If the ADSP-21261 is
configured as a slave, the MISO pin becomes a data transmit (output) pin, transmitting output data. In an ADSP-21261 SPI interconnection, the data is shifted out
from the MISO output pin of the slave and shifted into the MISO input pin of the
master. MISO has a 22.5 kΩ internal pull-up resistor. MISO can be configured as O/D
by setting the OPD bit in the SPICTL register.
Note:Only one slave is allowed to transmit data at any given time. To enable broadcast
transmission to multiple SPI-slaves, the DSP's MISO pin may be disabled by setting
(=1) Bit 5 (DMISO) of the SPICTL register.
must be valid before reset is asserted. See Table 4 on Page 14 for a description of the
boot modes.
on the master device. For ADSP-21261 to ADSP-
DDEXT
Rev. PrB | Page 12 of 44 | June 2004
Table 2. Pin Descriptions (Continued)
ADSP-21261Preliminary Technical Data
PinTypeState During and
Function
After Reset
CLKINIInput onlyLocal Clock In. Used in conjunction with XTAL. CLKIN is the ADSP-21261 clock input.
It configures the ADSP-21261 to use either its internal clock generator or an external
clock source. Connecting the necessary components to CLKIN and XTAL enables the
internal clock generator. Connecting the external clock to CLKIN while leaving XTAL
unconnected configures the ADSP-21261 to use the external clock source such as an
external clock oscillator. The core is clocked either by the PLL output or this clock
input depending on the CLKCFG1-0 pin settings. CLKIN may not be halted, changed,
or operated below the specified frequency.
XTALOOutput only
2
Crystal Oscillator Terminal. Used in conjunction with CLKIN to drive an external
crystal.
CLKCFG1-0IInput onlyCore/CLKIN Ratio Control. These pins set the start up clock frequency. See Table 5
on Page 14 for a description of the clock configuration modes.
Note that the operating frequency can be changed by programming the PLL multiplier and divider in the PMCTL register at any time after the core comes out of reset.
RSTOUT
/CLKOUTOOutput onlyReset Out/Local Clock Out. Drives out the core reset signal to an external device.
CLKOUT can also be configured as a reset out pin (RSTOUT)
. The functionality can be
switched between the PLL output clock and reset out by setting Bit 12 of the PMCTL
register. The default is reset out.
RESETI/AInput onlyProcessor Reset. Resets the ADSP-21261 to a known state. Upon deassertion, there
is a 4096 CLKIN cycle latency for the PLL to lock. After this time, the core begins
program execution from the hardware reset vector address. The RESET input must
be asserted (low) at power-up.
TCKIInput only
3
Test Clock (JTAG). Provides a clock for JTAG boundary scan. TCK must be asserted
(pulsed low) after power-up or held low for proper operation of the ADSP-21261.
TMSI/SThree-state with
pull-up enabled
TDII/SThree-state with
pull-up enabled
TDOOThree-state
TRST
I/AThree-state with
4
pull-up enabled
Test Mode Select (JTAG). Used to control the test state machine. TMS has a 22.5 kΩ
internal pull-up resistor.
Test Data Input (JTAG). Provides serial data for the boundary scan logic. TDI has a
22.5 kΩ internal pull-up resistor.
Test Data Output (JTAG). Serial scan output of the boundary scan path.
Test Reset (JTAG). Resets the test state machine. TRST must be asserted (pulsed low)
after power-up or held low for proper operation of the ADSP-21261. TRST has a
22.5 kΩ internal pull-up resistor.
EMU
O (O/D)Three-state with
pull-up enabled
Emulation Status. Must be connected to the ADSP-21261 Analog Devices DSP Tools
product line of JTAG emulators target board connector only. EMU
has a 22.5 kΩ
internal pullup resistor.
V
DDINT
PCore Power Supply. Nominally +1.2 V dc and supplies the DSP’s core processor
(13 pins on the BGA package, 32 pins on the LQFP package).
V
DDEXT
PI/O Power Supply. Nominally +3.3 V dc. (6 pins on the BGA package, 10 pins on the
LQFP package).
A
VDD
PAnalog Power Supply. Nominally +1.2 V dc and supplies the DSP’s internal PLL
(clock generator). This pin has the same specifications as V
, except that added
DDINT
filtering circuitry is required. For more information, see Power Supplies on Page 8.
A
VSS
GAnalog Power Supply Return.
GNDGPower Supply Return. (54 pins on the BGA package, 39 pins on the LQFP package).
1
RD, WR, and ALE are continuously driven by the DSP and will not be three-stated.
2
Output only is a three-state driver with its output path always enabled.
3
Input only is a three-state driver with both output paths and pull-up disabled.
4
Three-state is a three-state driver, with pull-up disabled
Rev. PrB | Page 13 of 44 | June 2004
ADSP-21261Preliminary Technical Data
ADDRESS DATA PINS AS FLAGS
To use these pins as flags (FLAGS15-0) set (=1) bit 20 of the
SYSCTL register and disable the parallel port.
00SPI Slave Boot
01SPI Master Boot
10Parallel Port boot via EPROM
11Internal Boot Mode (ROM code only)
CORE INSTRUCTION RATE TO CLKIN RATIO MODES
Table 5. Core Instruction Rate/ CLKIN Ratio Selection
CLKCFG1-0Core to CLKIN Ratio
003:1
0116:1
108:1
11Reserved
ADDRESS DATA MODES
The following table shows the functionality of the AD pins for
8-bit and 16-bit transfers to the parallel port. For 8-bit data
transfers, ALE latches address bits A23-A8 when asserted, followed by address bits A7-A0 and data bits D7-D0 when
Rev. PrB | Page 14 of 44 | June 2004
Loading...
+ 30 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.