AD1940/AD1941
Rev. B | Page 16 of 36
of the byte sets either a read or write operation; Logic Level 1
corresponds to a read operation and Logic Level 0 corresponds
to a write operation. The seventh bit of the address is set by
tying the ADR_SEL pin of the AD1941 to Logic Level 0 or Logic
Level 1.
The AD1941 I
2
C port uses a spike filter that can be enabled or
disabled by the I2C_FILT_ENB pin. Enabling this filter guar-
antees that all isolated spikes, both positive and negative, less
than 50 ns wide are removed from the I
2
C signal. The filter is
active when the I2C_FILT_ENB pin is low and is disabled when
the pin is high. Typically, the largest spike that is filtered is
67 ns wide.
Table 12. AD1941 I
2
C Addresses
ADR_SEL R/W Slave Address
0 0 0x28
0 1 0x29
1 0 0x2A
1 1 0x2B
Addressing
Initially, all devices on the I
2
C bus are in an idle state, which is
where the devices monitor the SDA and SCL lines for a start
condition and the proper address. The I
2
C master initiates a
data transfer by establishing a start condition, defined by a
high-to-low transition on SDA while SCL remains high. This
indicates that an address/data stream will follow. All devices on
the bus respond to the start condition and read the next byte
(7-bit address + R/W bit) MSB first. The device that recognizes
the transmitted address responds by pulling the data line low
during the ninth clock pulse. This ninth bit is known as an
acknowledge bit. All other devices withdraw from the bus at
this point and return to the idle condition. The R/W bit
determines the direction of the data. A Logic 0 on the LSB of
the first byte means the master writes information to the
peripheral. A Logic 1 on the LSB of the first byte means the
master reads information from the peripheral. A data transfer
takes place until a stop condition is encountered. A stop
condition occurs when SDA transitions from low to high while
SCL is held high. Figure 13 shows the timing of an I
2
C write.
Burst mode addressing, where the subaddresses are automati-
cally incremented at word boundaries, can be used for writing
large amounts of data to contiguous memory locations. This
increment happens automatically if a stop condition is not
encountered after a single-word write. The registers and
memories in the AD1941 range in width from one to five bytes,
so the autoincrement feature knows the mapping between sub-
addresses and the word length of the destination register (or
memory location). A data transfer is always terminated by a
stop condition.
Stop and start conditions can be detected at any stage during
the data transfer. If these conditions are asserted out of
sequence with normal read and write operations, these cause an
immediate jump to the idle condition. During a given SCL high
period, the user should only issue one start condition, one stop
condition, or a single stop condition followed by a single start
condition. If an invalid subaddress is issued by the user, the
AD1941 does not issue an acknowledge and returns to the idle
condition. If the user exceeds the highest subaddress while in
autoincrement mode, one of two actions are taken. In read
mode, the AD1941 outputs the highest subaddress register
contents until the master device issues a no-acknowledge,
indicating the end of a read. A no-acknowledge condition is
where the SDA line is not pulled low on the ninth clock pulse
on SCL. If the highest subaddress location is reached while in
write mode, the data for the invalid byte is not loaded into any
subaddress register, a no-acknowledge is issued by the AD1941
and the part returns to the idle condition.
I
2
C Read and Write Operations
Table 1 3 shows the timing of a single-word write operation.
Every ninth clock, the AD1941 issues an acknowledge by
pulling SDA low.
Table 1 4 shows the timing of a burst mode write sequence.
This figure shows an example where the target destination
registers are two bytes. The AD1941 knows to increment its
subaddress register every two bytes because the requested
subaddress corresponds to a register or memory area with a
2-byte word length.
The timing of a single word read operation is shown in Table
15. Note that the first R/
W
bit is still a 0, indicating a write
opera-tion. This is because the subaddress still needs to be
written in order to set up the internal address. After the
AD1941 acknow-ledges the receipt of the subaddress, the
master must issue a repeated start command followed by the
chip address byte with the R/
W
set to 1 (read). This causes the
AD1941’s SDA to turn around and begin driving data back to
the master. The master then responds every ninth pulse with an
acknowledge pulse to the AD1941.
Table 1 6 shows the timing of a burst mode read sequence. This
figure shows an example where the target read registers are two
bytes. The AD1941 knows to increment its subaddress register
every two bytes because the requested subaddress corresponds
to a register or memory area with word lengths of two bytes.
Other address ranges may have a variety of word lengths
ranging from one to five bytes; the AD1941 always decodes the
subaddress and sets the autoincrement circuit so that the
address increments after the appropriate number of bytes.
AD1940/AD1941
Rev. B | Page 17 of 36
CLATCH
CCLK
CDATA
BYTE 0MSB LSB BYTE 1 BYTE 2 BYTE 3
04607-0-006
Figure 11. SPI Write Format (Single Write Mode)
04607-0-007
CLATCH
CCLK
CDATA
COUT
BYTE 0
BYTE 1
HI-Z
DATA DATA
BYTE 2
DATA
HI-Z
Figure 12. SPI Read Format (Single Read Mode)
R/W
0000
ADR
SEL
00
04607-027
ACK. BY
AD1941
SCK
SDA
SCK
(CONTINUED)
SDA
(CONTINUED)
FRAME 2
SUBADDRESS BYTE 1
ACK. BY
AD1941
FRAME 1
CHIP ADDRESS BYTE 1
START BY
MASTER
ACK. BY
AD1941
ACK. BY
AD1941
STOP BY
MASTER
FRAME 4
DATA BYTE 1
FRAME 3
SUBADDRESS BYTE 2
Figure 13. AD1941 I
2
C Write Format
AD1940/AD1941
Rev. B | Page 18 of 36
R/W
SCK
ADR
SEL
R/W
ADR
SEL
04607-028
SDA
START BY
MASTER
ACK. BY
AD1941
ACK. BY
AD1941
FRAME 2
SUBADDRESS BYTE 1
FRAME 1
CHIP ADDRESS BYTE 1
FRAME 3
SUBADDRESS BYTE 2
FRAME 4
CHIP ADDRESS BYTE
ACK. BY
AD1941
REPEATED
START BY
MASTER
SCK
(CONTINUED)
SDA
(CONTINUED)
SCK
STOP BY
MASTER
ACK. BY
MASTER
FRAME 6
READ DATA BYTE 2
ACK. BY
MASTER
(CONTINUED)
SDA
(CONTINUED)
ACK. BY
AD1941
FRAME 5
READ DATA BYTE 1
Figure 14. AD1941 I
2
C Read Format
Table 13. Single Word I
2
C Write
S
Chip Address,
R/W = 0
AS Subaddress High AS Subaddress Low AS Data Byte 1 AS Data Byte 2 AS Data Byte N P
Table 14. Burst Mode I
2
C Write
S Chip
Address,
R/
W
= 0
AS Subaddress
High
AS Subaddress
Low
AS Data
Word 1,
Byte 1
AS Data
Word 1,
Byte 2
AS Data
Word 2,
Byte 1
AS Data
Word 2,
Byte 2
AS … P
Table 15. Single Word I
2
C Read
S
Chip
Address,
R/W
= 0
AS
Subaddress
High
AS
Subaddress
Low
AS S
Chip
Address,
R/W = 1
AS
Data
Byte 1
AM
Data
Byte 2
… AM
Data
Byte N
P
Table 16. Burst Mode I
2
C Read
S
Chip
Address,
R/W
= 0
AS
Subaddress
High
AS
Subaddress
Low
AS S
Chip
Address,
R/W
= 1
AS
Data
Word 1,
Byte 1
AM
Data
Word 1,
Byte 2
AM … P
S - Start Bit
P - Stop Bit
AM - Acknowledge by Master
AS - Acknowledge by Slave

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