AD1940/AD1941
Rev. B | Page 13 of 36
I
2
C_FILT_ENB (AD1941)
I
2
C Spike Filter Enable/Disable. This enables (active low) the I
2
C
spike filter, which is used to prevent noise or glitches on the I
2
C
bus from improperly affecting the AD1941.
ADR_SEL
Address Select. This pin selects the address for the AD1940/
AD1941’s communication with the control port. This allows
two AD1940s to be used with a single CLATCH signal or two
AD1941s to be used on the same I
2
C bus.
RESETB
Active-Low Reset Signal. After RESETB goes high, the
AD1940/AD1941 goes through an initialization sequence where
the program and parameter RAMs are initialized with the
contents of the on-board boot ROMs. All registers are set to 0,
and the data RAMs are also set to 0. The initialization is com-
plete after 8,192 internal MCLK cycles (referenced to the rising
edge of RESETB), which corresponds to 1,366 external MCLK
cycles if the part is in 256 × f
S
mode. New values should not be
written to the control port until the initialization is complete.
VREF
Voltage Reference for Regulator. This pin is driven by an
internal 1.15 V reference voltage.
VDRIVE
Drive for External Transistor. The base of the voltage regulator’s
external PNP transistor is driven from this pin.
VSENSE
Digital Power Level. The voltage level on the VDD pins is
sensed on VSENSE. VSENSE should be tied to VDD.
VSUPPLY
Main Supply Voltage Level. This pin is tied to the boards main
voltage supply. This is usually 3.3 V or 5 V.
VDD (4)
Digital VDD for Core. 2.5 V nominal.
GND (4)
Digital Ground.
PLL_VDD
Supply for AD1940/AD1941 PLL. 2.5 V nominal.
PLL_GND
PLL Ground.
ODVDD (3)
VDD for All Digital Outputs. The high levels of the digital
output signals are set on this pin. The voltage can range from
2.5 V to 5.0 V.
INVDD
Peak Input Voltage Level. The highest voltage level that the
input pin sees should be connected to INVDD. This is to
protect the chip inputs from voltage overstress. The voltage on
this pin must always be at or above the level of ODVDD.
AD1940/AD1941
Rev. B | Page 14 of 36
SIGNAL PROCESSING
OVERVIEW
The AD1940/AD1941 are designed to provide all signal
processing functions commonly used in stereo or multichannel
playback systems. The signal processing flow is set by using the
ADI-supplied software, which allows graphical entry and real-
time control of all signal processing functions.
Many of the signal processing functions are coded using full,
56-bit double-precision arithmetic. The input and output word
lengths are 24 bits. Four extra headroom bits are used in the
processor to allow internal gains up to 24 dB without clipping.
Additional gains can be achieved by initially scaling down the
input signal in the signal flow.
The signal processing blocks can be arranged in a custom pro-
gram that can be loaded to the AD1940/AD1941’s RAM. The
available signal processing blocks are explained in the following
sections.
NUMERIC FORMATS
It is common in DSP systems to use a standardized method of
specifying numeric formats. Fractional number systems are
specified by an A.B format, where A is the number of bits to the
left of the decimal point and B is the number of bits to the right
of the decimal point.
The AD1940/AD1941 use the same numeric format for both
the coefficient values (stored in the parameter RAM) and the
signal data values. The format is as follows:
Numerical Format: 5.23
Range: –16.0 to (+16.0 − 1 LSB)
Examples:
1000 0000 0000 0000 0000 0000 0000 = –16.0
1110 0000 0000 0000 0000 0000 0000 = –4.0
1111 1000 0000 0000 0000 0000 0000 = –1.0
1111 1110 0000 0000 0000 0000 0000 = –0.25
1111 1111 1111 1111 1111 1111 1111 = (1 LSB below 0.0)
0000 0000 0000 0000 0000 0000 0000 = 0.0
0000 0010 0000 0000 0000 0000 0000 = 0.25
0000 1000 0000 0000 0000 0000 0000 = 1.0
0010 0000 0000 0000 0000 0000 0000 = 4.0
0111 1111 1111 1111 1111 1111 1111 = (16.0 – 1 LSB).
The serial port accepts up to 24 bits on the input and is sign-
extended to the full 28 bits of the core. This allows internal
gains of up to 24 dB without encountering internal clipping.
A digital clipper circuit is used between the output of the DSP
core and the serial output ports (see Figure 10). This clips the
top four bits of the signal to produce a 24-bit output with a
range of 1.0 (minus 1 LSB) to –1.0.
4-BIT SIGN EXTENSION
DATA IN SERIAL PORT
1.23 5.23
SIGNAL PROCESSING
(5.23 FORMAT)
DIGITAL
CLIPPER
5.23 1.23
04607-0-005
Figure 10. Numeric Precision and Clipping Structure
PROGRAMMING
On power-up, the AD1940/AD1941’s default program passes
the unprocessed input signals to the outputs (Figure 28) but the
outputs are muted by default (see Power-Up Sequence section).
There are 1,536 instruction cycles per audio sample, resulting in
an internal clock rate of 73.728 MHz (for f
S
= 48 kHz). This DSP
runs in a stream-oriented manner, meaning all 1,536 instruc-
tions are executed each sample period. The AD1940/AD1941
may also be set up to accept double- or quad-speed inputs by
reducing the number of instructions/sample, which can be set
in the core control register.
The part can be programmed easily using graphical tools pro-
vided by Analog Devices. No knowledge of writing DSP code is
needed to program this part. The user simply can connect
graphical blocks such as biquad filters, dynamics processors,
mixers, and delays in a signal flow schematic, compile the
design, and load the program and parameter files into the
AD1940/AD1941’s program RAM through the control port.
Signal processing blocks available in the provided libraries
include
Single- and double-precision biquad filters
Mono and multichannel dynamics processors
Mixers and splitters
Tone and noise generators
First-order filters
Fixed and variable gain
RMS look-up tables
Loudness
Delay
Stereo enhancement (Phat Stereo
)
Dynamic bass boost
Interpolators and dececimators
More blocks are always in development. Analog Devices also
provides proprietary and third-party algorithms for applications
such as matrix decoding, bass enhancement, and surround
virtualizers. Contact an ADI sales representative for infor-
mation about licensing these algorithms.
AD1940/AD1941
Rev. B | Page 15 of 36
CONTROL PORT
OVERVIEW
The AD1940/AD1941 have many different control options that
can be set through an SPI or I
2
C interface. The AD1940 uses a
4-wire SPI control port and the AD1941 uses a 2-wire I
2
C bus
control port. Most signal processing parameters are controlled
by writing new values to the parameter RAM using the control
port. Other functions, such as mute and input/output mode
control, are programmed by writing to the control registers.
The control port is capable of full read/write operation for all of
the memories and registers. All addresses may be accessed in
both a single-address mode or a burst mode. A control word
consists of the chip address, the register/RAM subaddress, and
the data to be written. The number of bytes per word depends
on the type of data that is written.
The first byte of a control word (Byte 0) contains the 7-bit chip
address plus the R/W bit. The next two bytes (Bytes 1 and 2)
form the subaddress of the memory or register location within
the AD1940/AD1941. This subaddress needs to be two bytes
because the memories within the AD1940/AD1941 are directly
addressable, and their sizes exceed the range of single-byte
addressing. All subsequent bytes (Bytes 3, 4, etc.) contain the
data, such as control port, program, or parameter data.
The exact formats for specific types of writes are shown in Table
26 to Table 35.
The AD1940/AD1941 have several mechanisms for updating
signal processing parameters in real time without causing pops
or clicks. In cases where large blocks of data need to be down-
loaded, the output of the DSP core can be halted (using Bit 9 of
the core control register), new data loaded, and then restarted.
This is typically done during the booting sequence at start-up or
when loading a new program into RAM. In cases where only a
few parameters need to be changed, they can be loaded without
halting the program. To avoid unwanted side effects while
loading parameters on the fly, the SigmaDSP provides the
safeload registers. The safeload registers can be used to buffer a
full set of parameters (for example, the five coefficients of a
biquad) and then transfer these parameters into the active
program within one audio frame. The safeload mode uses
internal logic to prevent contention between the DSP core and
the control port.
AD1940 SPI PORT
The SPI port uses a 4-wire interface, consisting of CLATCH,
CCLK, CDATA, and COUT signals. The CLATCH signal goes
low at the beginning of a transaction and high at the end of a
transaction. The CCLK signal latches CDATA on a low-to-high
transition. COUT data is shifted out of the AD1940/AD1941 on
the falling edge of CCLK and should be clocked into the
receiving device, such as a microcontroller, on CCLK’s rising
edge. The CDATA signal carries the serial input data and the
COUT signal is the serial output data. The COUT signal
remains three-stated until a read operation is requested. This
allows other SPI-compatible peripherals to share the same
readback line. All SPI transactions follow the same basic format,
shown in Tabl e 11. A timing diagram is shown in Figure 4. All
data written should be MSB first.
Table 11. Generic SPI Word Format
Byte 0 Byte 1 Byte 2 Byte 3
Byte 4,
etc.
chip_adr [6:0],
R/
W
0000,
subadr
[11:8]
subadr [7:0] Data Data
Chip Address R/
W
The first byte of an SPI transaction includes the 7-bit chip
address and a R/
W
bit. The chip address is set by the ADR_SEL
pin. This allows two AD1940s to share a CLATCH signal, yet
operate independently. When ADR_SEL is low, the chip address
is 0000000; when it is high, the address is 0000001. The LSB of
this first byte determines whether the SPI transaction is a read
(Logic Level 1) or a write (Logic Level 0).
Subaddress
The 12-bit subaddress word is decoded into a location in one of
the memories or registers. This subaddress is the location of the
appropriate RAM location or register.
Data Bytes
The number of data bytes varies according to the register or
memory being accessed. In burst write mode, an initial
subaddress is given followed by a continuous sequence of data
for consecutive memory/register locations. The detailed data
format diagram for continuous mode operation is given in the
Control Port Read/Write Data Formats section.
A sample timing diagram for a single SPI write operation to the
parameter RAM is shown in Figure 11. A sample timing
diagram of a single SPI read operation is shown in Figure 12.
The COUT pin goes from three-state to driven at the beginning
of Byte 3. In this example, Bytes 0 to 2 contain the addresses and
R/W bit, and subsequent bytes carry the data.
AD1941 I
2
C PORT
The AD1941 supports a 2-wire serial (I
2
C-compatible) micro-
processor bus driving multiple peripherals. Two pins, serial data
(SDA) and serial clock (SCL), carry information between the
AD1941 and the system I
2
C master controller. The AD1941 is
always a slave on the I
2
C bus, which means that it never initiates
a data transfer. Each slave device is recognized by a unique
address. The AD1941 has four possible slave addresses, two for
writing operations and two for reading. These are unique
addresses for the device and are illustrated in Table 12. The LSB

AD1940YSTZ

Mfr. #:
Manufacturer:
Analog Devices Inc.
Description:
Audio DSPs IC 28-Bit Audio Processor
Lifecycle:
New from this manufacturer.
Delivery:
DHL FedEx Ups TNT EMS
Payment:
T/T Paypal Visa MoneyGram Western Union