Texas Instruments and its subsidiaries (TI) reserve the right to make changes to their products or to discontinue
any product or service without notice, and advise customers to obtain the latest version of relevant information
to verify, before placing orders, that information being relied on is current and complete. All products are sold
subject to the terms and conditions of sale supplied at the time of order acknowledgment, including those
pertaining to warranty, patent infringement, and limitation of liability.
TI warrants performance of its products to the specifications applicable at the time of sale in accordance with
TI’s standard warranty. Testing and other quality control techniques are utilized to the extent TI deems necessary
to support this warranty . Specific testing of all parameters of each device is not necessarily performed, except
those mandated by government requirements.
Customers are responsible for their applications using TI components.
In order to minimize risks associated with the customer’s applications, adequate design and operating
safeguards must be provided by the customer to minimize inherent or procedural hazards.
TI assumes no liability for applications assistance or customer product design. TI does not warrant or represent
that any license, either express or implied, is granted under any patent right, copyright, mask work right, or other
intellectual property right of TI covering or relating to any combination, machine, or process in which such
products or services might be or are used. TI’s publication of information regarding any third party’s products
or services does not constitute TI’s approval, license, warranty or endorsement thereof.
Reproduction of information in TI data books or data sheets is permissible only if reproduction is without
alteration and is accompanied by all associated warranties, conditions, limitations and notices. Representation
or reproduction of this information with alteration voids all warranties provided for an associated TI product or
service, is an unfair and deceptive business practice, and TI is not responsible nor liable for any such use.
Resale of TI’s products or services with statements different from or beyond the parameters
that product or service voids all express and any implied warranties for the associated TI product or service,
is an unfair and deceptive business practice, and TI is not responsible nor liable for any such use.
Also see: Standard Terms and Conditions of S ale f or S emiconductor P roducts.
Mailing Address:
Texas Instruments
Post Office Box 655303
Dallas, Texas 75265
C Instruction With DRCE OnA–9. . . . . . . . . . . . . . . .
2
C Instruction With DRCE OffA–9. . . . . . . . . . . . . . . .
viii
1 Introduction
1.1Description
The TAS3004 device is a system-on-a-chip that replaces conventional analog equalization to perform digital
parametric equalization, dynamic range compression, and loudness contour. Additionally, this device provides
high-quality, soft digital volume, bass, and treble control. All control parameters are uploaded through the I
from an outside MCU through the I
The TAS3004 device also has an integrated 24-bit stereo codec with two I
2
C slave port or from an external EPROM through the I2C master port.
2
C-selectable, single-ended inputs per
channel.
The digital parametric equalization consists of seven cascaded, independent biquad filters per channel. Each biquad
filter has five 24-bit coefficients that can be configured into many different filter functions (such as bandpass, high
pass, and low pass).
The internal loudness contour algorithm can be controlled and programmed with an I
Dynamic range compression/expansion (DRCE) is programmable through the I
2
2
C command.
C port. The system designer can set
the threshold, energy estimation time constant, compression ratio, and attack and decay time constants.
The TAS3004 device supports 13 serial interface formats (I
16, 18, 20, or 24 bits. The sampling frequency (f
) may be set to 32 kHz, 44.1 kHz, or 48 kHz.
S
2
S, left justified, right justified) with data word lengths of
The TAS3004 device uses a system clock generated by the internal phase-locked loop (PLL). The reference clock
for the PLL is provided by an external master clock (MCLK) of 256f
or 512fS, or a 256fS crystal.
S
The TAS3004 device has six internally configurable general-purpose input (GPI) terminals that control volume, bass,
treble, and equalization. Each GPI terminal has a debounce algorithm that is programmed into the TAS3004 internal
microcontroller.
2
C port
1.2Features
•Programmable seven-band parametric equalization
•Programmable digital volume control
•Programmable digital bass and treble control
•Programmable dynamic range compression/expansion (DRCE)
•Programmable loudness contour/dynamic bass control
•Configurable serial port for audio data
•Two input data channels that can be mixed with digital data from the analog-to-digital converter (ADC) of
the codec (analog input). These channels are controlled by I
•Three output data channels: Left and right data go through equalization; bass, treble, DRCE, and volume
to SDOUT1; SDOUT2 mixes left and right data. SDOUT2 operates as a center channel or subwoofer
channel. The output of the ADC is available for additional processing.
•Capability to configure ADC output to one of two monaural data streams or one stereo data stream
•Capability to di g i t a l l y m i x l e f t and right input channels for a monaural output to facilitate subwoofer operation
•Serial I
2
C master/slave port that allows:
–Downloading of control data to the device externally from the EPROM or an I
2
C commands.
2
C master
1–1
–Controlling other I2C devices
2
•Two I
C-selectable, single-ended analog input stereo channels
•Equalization bypass mode
•Single 3.3-V power supply
•Powerdown without reloading the coefficients
•Sampling rates: 32 kHz, 44.1 kHz, or 48 kHz
•Master clock frequency, 256f
or 512f
S
S
•Can have crystal input to replace MCLK. Crystal input frequency is 256fS.
•Six GPI terminals for volume, bass, treble up/down control, mute, and selection of equalization filters
1–2
1.3Functional Block Diagram
AINRP
AINRM
RINA
RINB
AINLP
AINLM
LINA
LINB
ALLPASS
INPA
GPI5
GPI4
GPI3
GPI2
GPI1
GPI0
Controller
L+R
SS(REF)
REFM
REFP
V
V
AV
Voltage
Reference
AINRP
AINRM
24-Bit
Stereo
ADC
AINLP
AINLM
RFILT
V
Stereo DAC
DD
AV
Analog
Supplies
24-Bit
SS
AV
Analog
Control
Register
Output
Format
Control
Logic
DD
DV
Digital
Supplies
SS
DV
SDOUT0
VCOM
AOUTL
AOUTR
L+R
SDOUT2
CS1
SDA
SCL
PWR_DN
RESET
TEST
C
2
I
Control
Control
32-Bit Audio Signal
L
R
SDIN2
SDIN1
SDATA
Control
SCLK/O
LRCLK/O
32-Bit Audio Signal
IFM/S
CLKSEL
Figure 1–1. TAS3004 Block Diagram
Processor
Processor
OSC/CLK
Select
MCLK
XTALI/
XTALO
MCLKO
SDOUT1
PLL
CAP_PLL
1–3
1.4Terminal Assignments
LINB
AINLP
REFMVREFP
AINLM
V
PACKAGE
(TOP VIEW)
AINRM
AINRP
RINA
RINB
VCOM
AOUTL
AOUTR
V
RFILT
AV
SS(REF)
AV
RESET
PWR_DN
TEST
CAP_PLL
CLKSEL
MCLKO
1.5Terminal Functions
LINA
SS
INPA
CS1
47 46 45 44 434842
1
2
3
4
5
6
7
8
9
10
11
12
14 15
13
XTALO
17 18 19 20
16
SCL
SDA
DD
DV
SS
DV
LRCLK/O
40 39 3841
22 23 24
21
IFM/S
SCLK/O
37
SDIN1
SDIN2
XTALI/MCLK
Figure 1–2. TAS3004 Terminal Assignments
NC
36
AV
35
NC
34
33
GPI5
32
GPI4
GPI3
31
GPI2
30
GPI1
29
GPI0
28
ALLPASS
27
SDOUT1
26
SDOUT0
25
SDOUT2
DD
Table 1–1. TAS3004 Terminal Functions
TERMINAL
NAMENO.
AINLM46IADC left channel analog input (anti-alias capacitor)
AINLP47IADC left channel analog input (anti-alias capacitor)
AINRM43IADC right channel analog input (anti-alias capacitor)
AINRP42IADC right channel analog input (anti-alias capacitor)
ALLPASS27ILogic high bypasses equalization filters
AOUTL39OLeft channel analog output
AOUTR37ORight channel analog output
AV
DD
AV
SS
AV
SS(REF)
CAP_PLL10ILoop filter for internal phase-locked loop (PLL)
CLKSEL11ILogic low selects 256fS; logic high selects 512fS MCLK
CS17II2C address bit A0; low = 68h, high = 6Ah
1–4
I/O
35IAnalog power supply (3.3 V)
4IAnalog voltage ground
3IAnalog ground voltage reference
DESCRIPTION
Table 1–1. TAS3004 Terminal Functions (Continued)
TERMINAL
NAMENO.
DV
DD
DV
SS
GPI0
GPI1
GPI2
GPI3
GPI4
GPI5
IFM/S21IDigital audio I/O control (low = input; high = output)
INPA5OLow when analog input A is selected (will sink 4 mA)
LINA1ILeft channel analog input 1
LINB48ILeft channel analog input 2
LRCLK/O19I/OLeft/right clock input/output (output when IFM/S is high)
MCLKO12OMCLK output for slave devices
NC34No connection; Can be used as a printed circuit board routing channel
NC36No connection; Can be used as a printed circuit board routing channel
PWR_DN8ILogic high places the TAS3004 device in power-down mode
RESET6ILogic low resets the TAS3004 device to the initial state
RINA40IRight channel analog input 1
RINB41IRight channel analog input 2
SCL15I/OI2C clock connection
SCLK/O20I/OShift (bit) clock input (output when IFM/S is high)
SDA16I/OI2C data connection
SDIN122ISerial data input 1
SDIN223ISerial data input 2
SDOUT126OSerial data output (from internal audio processing)
SDOUT224OSerial data output (a monaural mix of left and right, before processing)
SDOUT025OSerial data output from ADC
TEST9IReserved manufacturing test terminal; connect to DV
VCOM38ODigital-to-analog converter mid-rail supply (decouple with parallel combination of 10-µF and 0.1-µF
V
REFM
V
REFP
V
RFILT
XTALI/MCLK13ICrystal or external MCLK input
XTALO14ICrystal input (crystal is connected between terminals 13 and 14)
I/O
17IDigital power supply (3.3 V)
18IDigital ground
28
29
30
31
32
33
45IADC minus voltage reference
44IADC plus voltage reference
ISwitch input terminals
capacitors)
2OVoltage reference low pass filter
DESCRIPTION
SS
1–5
1–6
2 Audio Data Formats
2.1Serial Interface Formats
The TAS3004 device works in master or slave mode.
In the master mode, terminal 21 (IFM/S
) is tied high. This activates the master clock (MCLK) circuitry. A crystal can
be connected across terminals 13 (XTALI/MCLK) and 14 (XTALO), or an external, TTL-compatible MCLK can be
connected to X TALI/MCLK. In that case, MCLK outputs from terminal 12 (MCLKO) with terminals 19 (LRCLK/O) and
20 (SCLK/O) becoming outputs to drive slave devices.
In the slave mode, IFM/S
is tied low. LRCLK/O and SCLK/O are inputs and the interface operates as a slave device
requiring externally supplied MCLK, LRCLK (left/right clock), and SCLK (shift clock) inputs. There are two options
for selecting the clock rates. If the 512f
of 512f
must be supplied. If the 256fS MCLK is selected, CLKSEL is tied low and an MCLK of 256fS must be supplied.
S
MCLK rate is selected, terminal 1 1 (CLKSEL) is tied high and an MCLK rate
S
In both cases, an LRCLK of 64SCLK must be supplied.
•MCLK and SCLK must be synchronous and their edges must be at least 3 ns apart.
•If the LRCLK phase changes more than 10MCLK, the codec automatically resets.
2
The TAS3004 device is compatible with 13 different serial interfaces. Available interface options are I
and left justified. Table 2–1 indicates how the 13 options are selected using the I
(MCR, I
Additionally, the 16-bit mode operates at 32f
2
C address x01h). All serial interface options at either 16, 18, 20, or 24 bits operate with SCLK at 64fS.
.
S
2
C bus and the main control register
S, right justified,
Table 2–1. Serial Interface Options
MODEMCR BIT (6)MCR BIT (5–4)MCR BIT (1–0)
00000016-bit, left justified, 32f
11000016-bit, left justified, 64f
21010016-bit, right justified, 64f
31100016-bit, I2S, 64f
41000118-bit, left justified, 64f
51010118-bit, right justified, 64f
61100118-bit, I2S, 64f
71001020-bit, left justified, 64f
81011020-bit, right justified, 64f
91101020-bit, I2S, 64f
101001124-bit, left justified, 64f
111011124-bit, right justified, 64f
121101124-bit, I2S, 64f
SDIN1, SDIN2, SDOUT1, SDOUT2, AND SDOUT0
S
S
S
S
SERIAL INTERFACE
S
S
S
S
S
S
S
S
S
Figure 2–1 through Figure 2–9 illustrate the relationship between the SCLK, LRCLK, and the serial data I/O for the
different interface protocols.
2–1
2.2ADC Digital Output Modes
ADC digital output mode (SDOUT0) has two operational modes, normal and monaural. In the normal mode, the
output of the ADC conforms to the output modes described in Sections 2.2.1 through 2.2.3. To enter the normal output
mode, bit 7 (ADM) in the analog control register must be cleared to 0. In the monaural output mode, the digital output
of the ADC conforms to the output modes described in Sections 2.3.1 through 2.3.6. To enter the monaural mode,
bit 7 (ADM) in the analog control register must be set to 1.
2.2.1MSB First, Right-Justified Serial Interface Format—Normal Mode
The normal output mode for the MSB first, right-justified serial interface format is for 16, 18, 20, and 24 bits with bit 7
(ADM) in the analog control register cleared to 0. Figure 2–1 shows the following characteristics of this protocol:
•Left channel is transmitted when LRCLK is high.
•The SDIN(s) (recorded) data is justified to the trailing edge of the LRCLK.
•The SDOUT(s) MSB (playback) data is transmitted at the same time as LRCLK edge and captured at the
next rising edge of SCLK.
•If LRCLK phase changes by more than 10MCLK, the codec automatically resets.
SCLK
LRCLK = f
S
SDIN
SDOUT
Figure 2–1. MSB First, Right-Justified Serial Interface Format—Normal Mode
……
MSBLSB
MSBLSB
………………
…………
Left ChannelRight Channel
MSBLSB
MSBLSB
……
……
2–2
2.2.2I2S Serial Interface Format—Normal Mode
The normal output mode for the I2S serial interface format is for 16, 18, 20, and 24 bits with bit 7 (ADM) in the analog
control register cleared to 0.
Figure 2–2 shows the following characteristics of this protocol:
•Left channel is transmitted when LRCLK is low.
•SDIN is sampled with the rising edge of SCLK.
•SDOUT is transmitted on the falling edge of SCLK.
•If LRCLK phase changes by more than 10MCLK, the codec automatically resets.
SCLK
LRCLK = f
SDIN
SDOUT
S
XLSB
MSB
XLSB
MSB
Figure 2–2. I2S Serial Interface Format—Normal Mode
……
……
Left ChannelRight Channel
…
…
XLSB
MSB
XLSB
MSB
……
……
…
…
2–3
2.2.3MSB Left-Justified Serial Interface Format—Normal Mode
The normal output mode for the MSB left-justified serial interface format is for 16, 18, 20, and 24 bits with bit 7 (ADM)
in the analog control register cleared to 0.
Figure 2–3 shows the following characteristics of this protocol:
•Left channel is transmitted when LRCLK is high.
•The SDIN data is justified to the leading edge of the LRCLK.
•The MSBs are transmitted at the same time as LRCLK edge and captured at the next rising edge of SCLK.
SCLK
LRCLK = f
SDIN
SDOUT
S
MSBLSB
MSBLSB
Figure 2–3. MSB Left-Justified Serial Interface Format—Normal Mode
……
……
Left ChannelRight Channel
……
……
MSBLSB
MSBLSB
……
……
……
……
2.3ADC Digital Output Mode—Monaural
For the monaural ADC digital output mode, bit 7 (ADM) is set to 1, and bit 6 (LRB) and bit 1 (INP) in the analog control
register (see Section 4.8, Analog Control Register Operation) control the operation of the monaural output mode. All
interface formats are for 16, 18, 20, and 24 bits.
2–4
2.3.1MSB First, Right-Justified Serial Interface Format—Monaural ADC Mode, B Left Input
Selected
The monaural output mode for the MSB first, right-justified serial interface format is for 16, 18, 20, and 24 bits with
the following bits in the analog control register set as shown:
•Bit 7 (ADM) is set to 1.
•Bit 6 (LRB) is cleared to 0.
•Bit 1 (INP) is set to 1.
Figure 2–4 shows the following characteristics of this protocol:
•Left channel is transmitted when LRCLK is either high or low.
•The SDIN(s) (recorded) data is justified to the trailing edge of the LRCLK.
•The SDOUT(s) MSB (playback) data is transmitted at the same time as LRCLK edge and captured at the
next rising edge of SCLK.
•If LRCLK phase changes by more than 10MCLK, the codec automatically resets.
SCLK
LRCLK = f
Figure 2–4. MSB First, Right-Justified Serial Interface Format—Monaural ADC Mode, B Left Input
SDIN
SDOUT0
S
……
MSBLSB
MSBLSB
………………
…………
Left ChannelLeft Channel
Selected
MSBLSB
MSBLSB
……
……
2–5
2.3.2I2S Serial Interface Format—Monaural ADC Mode, B Left Input Selected
The monaural output mode for the I2S serial interface format is for 16, 18, 20, and 24 bits with the following bits in
the analog control register set as shown:
•Bit 7 (ADM) is set to 1.
•Bit 6 (LRB) is cleared to 0.
•Bit 1 (INP) is set to 1.
Figure 2–5 shows the following characteristics of this protocol:
•Left channel is transmitted when LRCLK is either high or low.
•SDIN is sampled with the rising edge of SCLK.
•SDOUT is transmitted on the falling edge of SCLK.
•If LRCLK phase changes by more than 10MCLK, the codec automatically resets.
SCLK
LRCLK = f
S
XLSB
SDIN
SDOUT0
Figure 2–5. I2S Serial Interface Format—Monaural ADC Mode, B Left Input Selected
MSB
MSB
XLSB
……
……
Left ChannelLeft Channel
…
…
XLSB
MSB
XLSB
MSB
……
……
…
…
2–6
2.3.3MSB Left-Justified Serial Interface Format—Monaural ADC Mode, B Left Input Selected
The monaural output mode for the MSB left-justified serial interface format is for 16, 18, 20, and 24 bits with the
following bits in the analog control register set as shown:
•Bit 7 (ADM) is set to 1.
•Bit 6 (LRB) is cleared to 0.
•Bit 1 (INP) is set to 1.
Figure 2–6 shows the following characteristics of this protocol:
•Left channel is transmitted when LRCLK is either high or low.
•The SDIN data is justified to the leading edge of the LRCLK.
•The MSBs are transmitted at the same time as LRCLK edge and captured at the next rising edge of SCLK.
SCLK
LRCLK = f
Figure 2–6. MSB Left-Justified Serial Interface Format—Monaural ADC Mode, B Left Input Selected
SDIN
SDOUT0
S
MSBLSB
MSBLSB
……
……
Left ChannelLeft Channel
……
……
MSBLSB
MSBLSB
……
……
……
……
2–7
2.3.4MSB First, Right-Justified Serial Interface Format—Monaural ADC Mode, B Right Input
Selected
The monaural output mode for the MSB first, right-justified serial interface format is for 16, 18, 20, and 24 bits with
the following bits in the analog control register set as shown:
•Bit 7 (ADM) is set to 1.
•Bit 6 (LRB) is set to 1.
•Bit 1 (INP) is set to 1.
Figure 2–7 shows the following characteristics of this protocol:
•Right channel is transmitted when LRCLK is either high or low.
•The SDIN(s) (recorded) data is justified to the trailing edge of the LRCLK.
•The SDOUT(s) MSB (playback) data is transmitted at the same time as LRCLK edge and captured at the
next rising edge of SCLK.
•If LRCLK phase changes by more than 10MCLK, the codec automatically resets.
SCLK
LRCLK = f
Figure 2–7. MSB First, Right-Justified Serial Interface Format—Monaural ADC Mode, B Right Input
SDIN
SDOUT0
S
……
MSBLSB
MSBLSB
………………
…………
Right Channel
Selected
MSBLSB
MSBLSB
Right Channel
……
……
2–8
2.3.5I2S Serial Interface Format—Monaural ADC Mode, B Right Input Selected
The monaural output mode for the I2S serial interface format is for 16, 18, 20, and 24 bits with the following bits in
the analog control register set as shown:
•Bit 7 (ADM) is set to 1.
•Bit 6 (LRB) is set to 1.
•Bit 1 (INP) is set to 1.
Figure 2–8 shows the following characteristics of this protocol:
•Right channel is transmitted when LRCLK is either high or low.
•SDIN is sampled with the rising edge of SCLK.
•SDOUT is transmitted on the falling edge of SCLK.
•If LRCLK phase changes by more than 10MCLK, the codec automatically resets.
SCLK
LRCLK = f
Figure 2–8. I2S Serial Interface Format—Monaural ADC Mode, B Right Input Selected
SDIN
SDOUT0
S
XLSB
MSB
XLSB
MSB
……
……
XLSB
…
…
Right ChannelRight Channel
MSB
XLSB
MSB
……
……
…
…
2–9
2.3.6MSB Left-Justified Serial Interface Format—Monaural ADC Mode, B Right Input Selected
The monaural output mode for the MSB left-justified serial interface format is for 16, 18, 20, and 24 bits with the
following bits in the analog control register set as shown:
•Bit 7 (ADM) is set to 1.
•Bit 6 (LRB) is set to 1.
•Bit 1 (INP) is set to 1.
Figure 2–9 shows the following characteristics of this protocol:
•Right channel is transmitted when LRCLK is either high or low.
•The SDIN data is justified to the leading edge of the LRCLK.
•The MSBs are transmitted at the same time as LRCLK edge and captured at the next rising edge of SCLK.
SCLK
LRCLK = f
Figure 2–9. MSB Left-Justified Serial Interface Format—Monaural ADC Mode, B Right Input Selected
SDIN
SDOUT0
S
MSBLSB
MSBLSB
……
……
Right ChannelRight Channel
……
……
MSBLSB
MSBLSB
……
……
……
……
2–10
2.4Switching Characteristics
PARAMETERMINTYPMAXUNIT
t
c(SCLK)
t
d(SLR)
t
d(SDOUT)
t
su(SDIN)
t
h(SDIN)
LRCLK3244.148kHz
NOTE 1: Maximum of 50-pF external load on SDOUT.
SCLK frequency3.072MHz
SCLK rising to LRCLK edge20ns
SDOUT valid from SCLK falling (see Note 1)(1/256fS) + 10ns
SDIN setup before SCLK rising edge20ns
SDIN hold after SCLK rising edge100ns
Duty cycle50%
t
SCLK
LRCLK
c(SCLK)
t
d(SLR)
t
f(SCLK)
t
r(SCLK)
t
h(SDIN)
t
d(SLR)
SDOUT1
SDOUT2
SDOUT0
SDIN1
SDIN2
t
su(SDIN)
t
d(SDOUT)
Figure 2–10. For Right-/Left-Justified, I2S, and Left-/Left-Justified Serial Protocols
2–11
2–12
3 Analog Input/Output
The TAS3004 device contains a stereo 24-bit ADC with two single-ended inputs per channel. Selection of the A or
B analog input is accomplished by setting a bit in the analog control register (ACR) by an I
2
C command. Additionally,
the TAS3004 device has a stereo 24-bit digital-to-analog converter (DAC).
3.1Analog Input
Figure 3–1 shows the technique and components required for analog input to the TAS3004 device. The maximum
input signal must not exceed 0.7 V
20 Hz to 20 kHz at a sampling frequency of 48 kHz without alias frequency problems.
0.47 µF
1
1
0.47 µF
0.47 µF
1
1
0.47 µF
. Selection of the above component values gives a frequency response from
rms
2
1200 pF
2
1200 pF
AINRP
AINRM
RINA
RINB
AINLP
AINLM
LINA
LINB
Voltage
Reference
AINRP
AINRM
24-Bit
Stereo
ADC
AINLP
1Analog Inputs – Use 0.47 µF for 20-Hz Cutoff
2
Anti-Alias Capacitors for fS = 48 kHz
3Tie unused analog inputs to analog ground through 0.1-µF capacitors.
Figure 3–1. Analog Input to the TAS3004 Device
3.2Analog Output
3.2.1Analog Output
The full scale analog output from the TAS3004 device is 0.7 V
1.5 Vdc. VCOM must be decoupled with the network as shown in Figure 3–2.
. It is referenced to VCOM which is approximately
rms
AINLM
Input Select Command
From Internal Controller
3–1
AOUTR
(Adjust Capacitors for Desired
Analog Output
Low Frequency Response)
24-Bit
DAC
VCOM
10 µF
AOUTL
+
0.1 µF
AGND
Figure 3–2. VCOM Decoupling Network
3.2.2Analog Output With Gain
Since the analog output from the TAS3004 device is 0.7 V
amplifier. The circuit shown in Figure 3–3 boosts the output level to 1 V
improved signal-to-noise ratio (SNR). Since this circuit lowers the noise floor, THD + N is improved also.
AOUTR
C1
24-Bit
DAC
VCOM
+
10 µF
C3
0.1 µF
, the output level can be increased by using an external
rms
–
+
(when it has a gain of 1.414) and provides
rms
C4
Analog Output
(Adjust Capacitors for Desired
Low Frequency Response)
TLV2362
or Equilvalent
3–2
C1 = C2 = C
C4 = C
5
3
AOUTL
C2
AGND
+5 Op Amp/2
+5 Op Amp/2
C5C5
–
+
TLV2362
or Equilvalent
Figure 3–3. Analog Output With External Amplifier
3.2.3Reference Voltage Filter
Figure 3–4 shows the TAS3004 reference voltage filter.
0.1 µF
15 µF
+
0.1 µF
42345
SS
AV
SS(REF)
AV
RFILT
V
REFM
V
1 µF
0.1 µF
REFP
+
44V
TAS3004
Figure 3–4. TAS3004 Reference Voltage Filter
3–3
3–4
4 Audio Control/Enhancement Functions
4.1Soft Volume Update
The TAS3004 device implements a TI proprietary soft volume update. This feature allows a smooth and
pleasant-sounding change from one volume level to another over the entire range of volume control (18 dB to mute).
2
The volume is adjustable by downloading a 4.16 gain coefficient through the I
coefficients converted into dB for the range of –70 dB to 18 dB with 0.5-dB step resolution.
Right and left channel volumes can be unganged and set to different values. This feature implements a balance
control.
Volume is changed by writing the desired value into the volume control registers. This is done by asserting the GPI
terminals for volume-up or volume-down for a limited range of volume control. Alternately, volume control settings
can be sent to the TAS3004 device over the I
2
C bus.
4.2Software Soft Mute
Mute is implemented by loading all zeros in the volume control register. This causes the volume to ramp down over
a duration of 2048f
Soft mute can be enabled by either asserting the mute GPI terminal or sending a mute command over the I
samples to a final output of 0 (– infinity dB).
S
4.3Input Mixer Control
C interface. Table A –5 lists the 4.16
2
C bus.
The TAS3004 device is capable of mixing and multiplexing three channels of serial audio data. The mixing is
controlled through three mixer control registers. This is accomplished by loading values into the corresponding bytes
of the mixer left gain (07h) and mixer right gain (08h) control registers.
The values loaded into these registers are in 4.20 format—4 bits for the integer and 20 bits for the fractional part.
T able A–8 lists the 4.20 numbers converted into dB for the range of –70 dB to 18 dB, although any positive 4.20
number may be used.
To mute any of the channels, 0s are loaded into the respective mixer control register.
Mixer controls are updated instantly and can cause audible artifacts for large changes in setting when updated
dynamically outside of the fast load mode; therefore, it is desirable to use fast load in conjunction with the soft-volume
mode.
SDIN1, SDIN2, and the ADC output can be mixed with a user-selectable gain for each channel. The gain control
registers are represented in 4.20 format.
4–1
SDIN1_L
Left Channel Mix Coefficients
I2C Register Address 08h
SDIN1 ^ SDIN2 ^ ADC
= (3) 24-Bit Left Mix Coefficient
SDIN2_L
ADC_L
SDIN1_R
SDIN2_R
ADC_R
L_SUM
R_SUM
Right Channel Mix Coefficients
I2C Register Address 07h
7 Biquad
Filters
7 Biquad
Filters
1/2
1/2
Tone
Tone
Soft
Volume
DRCE
Soft
Volume
DRCE
L + R_SUM
SDIN1 ^ SDIN2 ^ ADC
= (3) 24-Bit Right Mix Coefficient
SDOUT1
SDOUT2
Figure 4–1. TAS3004 Mix Function
4.4Mono Mixer Control
The TAS3004 device contains a second mixer that performs the function of mixing left and right channel digital audio
data from the input mixer in order to derive a monaural channel. This mixer has a fixed gain of –6 dB so that full scale
inputs on L_sum and R_sum do not produce clipping on the resulting L+R_sum.
The output of this mixer is present on terminal 24 (SDOUT2) and is generally used for a digitally-mixed subwoofer
or center channel application.
4.5Treble Control
The treble gain level may be adjusted within the range of 15 dB to –15 dB with 0.5-dB step resolution. The level
changes are accomplished by downloading treble codes (shown in Appendix A) into the treble gain register.
Alternately, a limited range of treble control is available by asserting the GPI terminals.
The treble control has a corner frequency of 6 kHz at a 48-kHz sample rate.
The gain values for treble control can be found in Section A.3.
4–2
4.6Bass Control
The bass gain level can be adjusted within the range of 15 dB to –15 dB with 0.5-dB step resolution. The level changes
are accomplished by downloading bass codes (shown in Appendix A) into the bass frequency control register.
Alternately, a limited range of bass control is available by asserting the GPI terminals.
Bass control is a shelf filter with a corner frequency of 250 Hz at a 48-kHz sample rate.
The gain values for bass control can be found in Section A.4.
4.7De-Emphasis (DM)
De-emphasis is implemented in the DAC and is software controlled. De-emphasis is valid at 44.1 kHz and 48 kHz.
2
To enable de-emphasis, values are written into the analog control register via the I
analog control register operation.
Figure 4–2 illustrates the frequency response of the de-emphasis mode.
C command. See Section 4.8 for
Response (dB)
De-Emphasis
3.18
(50 µs)
Frequency (kHz)
10.6
(15 µs)
Figure 4–2. De-Emphasis Mode Frequency Response
4–3
4.8Analog Control Register Operation
The analog control register (ACR) allows control of de-emphasis, selection of the analog input channel to the ADC,
and analog power down.
2
C master is required to write the appropriate command into the ACR. The ACR subaddress is 0x40.
0 = Normal operation
1 = A inputs are normal; B inputs are monaural.
6LRBR/WSelects left or right B input for monaural output.
0 = B left input selected for monaural ADC output when bit 7 (ADM) is set to 1
1 = B right input selected for monaural ADC output when bit 7 (ADM) is set to 1.
5–4RSVDR/WReserved. Bits 5 and 4 return 0s when read.
3–2DM(1–0)R/WDe-emphasis control.
00 = De-emphasis off (initial condition after reset)
01 = 48 kHz sample rate de-emphasis selected
10 = 44.1 kHz sample rate de-emphasis selected
11 = Reserved
1INPR/WAnalog input select.
0 = LINA and RINA selected (initial condition after reset)
1 = LINB and RINB selected
0APDR/WAnalog powerdown.
0 = Normal operation (initial condition after reset)
1 = Powerdown
.
4–4
4.9Dynamic Loudness Contour
The necessity for applying loudness compensation to playback systems to compensate for the fact that the ear
perceives bass and treble less audibly at low levels than at high ones has been established with the first data
published by Fletcher and Munson in 1933.
There are ma n y equal-loudness contours in publication, like Steven’s contours, Robinson and Dadson contours even
reached the acceptance level of ISO recommendation.
The TAS3004 device has a simplified loudness contour algorithm that diminishes the effect of weak bass at low
listening levels. Since contour has volume level dependency, the user must define the relation between the gain of
the contour circuit and the volume level.
Figure 4–3 is a block diagram of this circuit.
Volume
BiquadGain
Figure 4–3. Block Diagram
2
The loudness contour is activated by sending an activation command via I
contour gain command can be sent by an external device to provide tracking with the system’s volume control.
C from an external device. Optionally, a
4.9.1Loudness Biquads
Loudness biquad filters for the left and right channels are independently programmable via I2C. Their subaddresses
are 0x21 and 0x22, respectively . The digital filters are written as five 24-bit (4.20) hex coefficients for each channel.
4.9.2Loudness Gain
Loudness gain values for the left and right channels are independently programmable via I2C. Their subaddresses
are 0x23 and 0x24, respectively. The gain values are written as one 4.20 hex coefficient for each channel.
4.9.3Loudness Contour Operation
When the frequency of the loudness contour is determined, a digital filter must be developed. Then, the gain of the
filter is determined. These values are placed in the storage area of the system controller (microcontroller) and sent
to the TAS3004 device when it is desired to activate the loudness contour.
If it is necessary to change the frequency or gain of the contour, new gain and filter coefficients are sent by the system
controller. This function is performed normally when the volume control is changed (that is, more volume, less
contour). The gain of the loudness contour filter then tracks the volume control.
The loudness contour biquad filters are provided in addition to the seven equalization biquad filters.
See Section A.6 for programming instructions.
4–5
4.10 Dynamic Range Compression/Expansion
The TAS3004 device provides the user with the ability to manage the dynamic range of the audio system. The DRCE
receives data, and affects scaling after the volume/loudness block. As shown in Figure 4–4, the DRCE is applied after
the volume/loudness control block as a DRCE scale factor. The DRCE must be adjusted such that the signal does
not reach the hard limit value. However, if the signal does reach the maximum digital value, the saturation logic serves
as a hard limiter that does not allow the signal to extend beyond the available range.
Loudness
(Left Channel Mixer)
SDIN1_L
LEFT_SUM
SDIN2_L
ANALOGIN_L
(Parametric
Equalization)
(7)
2nd Order
IIR Filters
(Tone)
Bass/
Treble
Soft
Volume/
(DRCE Scaling)
Saturation
Logic
LEFT_OUT
(Analog in From ADC)
ANALOGIN_R
SDIN1_R
SDIN2_R
(Right Channel Mixer)
RIGHT_SUM
(7)
2nd Order
IIR Filters
(Parametric
Equalization)
Bass/
Treble
(Tone)
Dynamic
Range
Control
Soft
Volume/
Loudness
(DRCE Scaling)
Saturation
Logic
RIGHT_OUT
Figure 4–4. TAS3004 Digital Signal Processing Block Diagram
The DRCE instruction consists of eight bytes that must be sent each time in the order shown in the example code
of Table A–9. Each instruction downloaded must be eight bytes. If only one byte is changed, all eight bytes must be
transmitted. The first two bytes remain the same for every instruction, however the last six bytes can be programmed
using hexadecimal values from the corresponding tables referred to in Section A.7.
With high compression ratios and fast attack times available, this function is suited for a commercial killer in a
television set application.
4.11 AllPass Function
This function is enabled by setting terminal 27 (ALLP ASS) on the TAS3004 device to 1. When asserted, the internal
equalization filters are set into AllPass (flat) mode. When this terminal is reset to 0, the equalization filters are returned
to the equalization that was in use before the terminal was asserted.
In AllPass mode, the bass and treble controls are still functional.
This function is frequently used for headphones. When the headphone plug is inserted into its jack, a switched contact
in the jack enables the AllPass function.
The AllPass function also can be activated by writing a 1 to bit 2 of the analog control register.
4–6
4.12 Main Control Register 2 (43h)
The TAS3004 device contains two main control registers: main control register 1 (MCR1) and main control register 2
(MCR2). The MCR2 contains the bits associated with the AllPass function and the download of bass and treble control
information, and it is accessed via I
b7R/W0 = Normal operation (initial condition after reset)
1 = Download bass and treble
b6–b5RReserved. Bits b6 and b5 return 0s when read.
b4–b2RUndefined.
b1R/W0 = Normal operation (initial condition after reset)
1 = AllPass mode (bass and treble are still functional)
b0RReserved. Bit b0 returns 0 when read.
2
C with the address 43h.
Table 4–2. Main Control Register 2 Description
4–7
4–8
5 Filter Processor
5.1Biquad Block
The biquad block consists of seven digital biquad filters per channel organized in a cascade structure, as shown in
Figure 5–1. Each of these biquad filters has five downloadable 24-bit (4.20) coefficients. Each stereo channel has
independent coefficients.
Biquad 2 ...Biquad 1Biquad N
Figure 5–1. Biquad Cascade Configuration
5.1.1Filter Coefficients
The filter coefficients for the TAS3004 device are downloaded through the I2C port and loaded into the biquad memory
space. Each biquad filter memory space has an independent address. Digital audio data coming into the device is
processed by the biquad block and then converted into analog waveforms by the DAC. Alternately, filters can be
loaded by asserting terminals on the GPI port.
5.1.2Biquad Structure
The biquad structure that is used for the parametric equalization filters is as follows:
H(z) +
b0) b1z*1) b2z
a0) a1z*1) a2z
NOTE: a0 is fixed at value 1 and is not downloadable.
The coefficients for these filters are represented in 4.20 format—4 bits for the integer part and 20 bits for the fractional
part. In order to transmit them over I
of byte 2 is the integer part, and the second nibble of byte 2, byte 1, and byte 0 are the fractional parts.
The filters can be designed using the automatic loudspeaker equalization program (ALE) or a script running under
MatLab named Filtermaker. Both of these tools are available from Texas Instruments.
*2
*2
2
C, it is necessary to separate each coefficient into three bytes. The upper 4 bits
(1)
5–1
5–2
6I2C Serial Control Interface
6.1Introduction
Control parameters for the TAS3004 device can be loaded from an I2C serial EPROM by using the T AS3004 master
interface mode. If no EPROM is found, the TAS3004 device becomes a slave device and loads from another I
2
master interface. Information loaded into the TAS3004 registers is defined in Appendix A.
2
C bus uses terminals 16 (SDA for data) and 15 (SCL for clock) to communicate between integrated circuits in
The I
a system. These devices can be addressed by sending a unique 7-bit slave address plus R/W
bit (1 byte). All
compatible devices share the same terminals via a bidirectional bus using a wired-AND connection. An external
pullup resistor must be used to set the high level on the bus. The TAS3004 device operates in standard mode up to
100 kbps with as many devices on the bus as desired up to the capacitance load limit of 400 pF.
Furthermore, the TAS3004 device supports a subset of the SMBus protocol. When it is attached to the SMBUS, then
byte, word, and block transfers are supported. The SMBus NAK function is not supported and care must be taken
with the sequence of the instructions sent to the TAS3004 device.
Additionally, the TAS3004 device operates in either master or slave mode; therefore, at least one device connected
to the I
2
C bus must operate in master mode.
6.2I2C Protocol
The bus standard uses transitions on SDA while the clock is high to indicate start and stop conditions. A high-to-low
transition on SDA indicates a start and a low-to-high transition indicates a stop. Normal data bit transitions must occur
within the low time of the clock period. Figure 6–1 shows these conditions. These start and stop conditions for the
2
I
C bus are required by standard protocol to be generated by the master. The master must also generate the 7-bit
slave address and the read/write (R/W
acknowledge condition. The slave holds SDA low during acknowledge clock period to indicate an acknowledgment.
When this occurs, the master transmits the next byte of the sequence.
) bit to open communication with another device and then wait for an
C
After each 8-bit word, an acknowledgment must be transmitted by the receiving device. There is no limit on the
number of bytes that can be transmitted between start and stop conditions. When the last word transfers, the master
generates a stop condition to release the bus. Figure 6–1 shows a generic data transfer sequence.
SDA
SCL
Start
7-Bit
Slave Address
R/
W
0
167
8-Bit Register Data
A
for Address (N)
0
167
8-Bit Register Data
A
for Address (N)
0
167
8-Bit Register Data
A
for Address (N+1)
A
0
167
Stop
Figure 6–1. Typical I2C Data Transfer Sequence
6–1
Table 6–1 lists the definitions used by the I2C protocol.
2
Table 6–1. I
DEFINITIONDESCRIPTION
TransmitterThe device that sends data
ReceiverThe device that receives data
MasterThe device that initiates a transfer, generates clock signals, and terminates the transfer
SlaveThe device addressed by the master
MultimasterMore than one master can attempt to control the bus at the same time without corrupting the message.
ArbitrationProcedure to ensure the message is not corrupted when two masters attempt to control the bus.
SynchronizationProcedure to synchronize the clock signals of two or more devices
C Protocol Definitions
6.3Operation
The 7-bit address for the TAS3004 device is 0 11010X R/W where X is a programmable address bit, set by terminal 7
(CS1). Combining CS1 and the R/W
and two write). These two addresses are licensed I
devices. In addition to the 7-bit device address, subaddresses direct communication to the proper memory location
within the device. A complete table of subaddresses and control registers is provided in Appendix A. For example,
to change bass to 10-dB gain, Section 6.3.1 shows the data that is written to the I
I2C ADDRESS BYTEA6–A1CS1 (A0)R/W
0x6801101000
0x6901101001
0x6A01101010
0x6B01101011
bit, the TAS3004 device can respond to four different I2C addresses (two read
2
C addresses that do not conflict with other licensed I2C audio
2
C port:
2
Table 6–2. I
C Address Byte Table
6.3.1Write Cycle Example
StartSlave AddressR/WASubaddressADataAStop
FUNCTIONDESCRIPTION
StartStart condition as defined in I2C
Slave address0110100 (CS1 = 0)
R/W0 (write)
AAcknowledgement as defined in I2C (slave)
Subaddress00000110 (see Appendix A)
Data00011100 (see Appendix A)
StopStop condition as defined in I2C
NOTE: Table is for serial data (SDA); serial clock (SCL) is not shown but conditions apply as well.
Whenever writing to a subaddress, the correct number of data bytes must follow in order to complete the write cycle.
For example, if the volume control register with subaddress 04 (hex) is written to, six bytes of data must follow;
otherwise, the cycle is incomplete and errors occur.
6–2
6.3.2TAS3004 I2C Readback Example
The T AS3004 will save in a Stack or First-In First-Out (FIFO) buf fer the last 7 bytes that were sent to it. When an I2C
read command is sent to the device (LSB=high), it answers by popping the first byte off the stack. The TAS3004 will
then expect either a SendAck command or an I
the host then the TAS3004 will pop another byte off the stack. If an I
transaction. The proper sequence for reading is described as follows:
I2C Start
Send I2C address byte with read Bit Set to 1 (LSB set equal to 1)
receive Byte 0
Send Ack
receive Byte 1
Send Ack
receive Byte 2
Send Ack
receive Byte 3
Send Ack
receive Byte 4
Send Ack
receive Byte 5
Send Ack
receive Byte 6 (if you send an ACK after Byte 6 it will lock up the TAS3004)
I2C Stop
2
C Stop command from the host. If a SendAck command is sent from
2
C Stop is sent then the TAS3004 will end this
Where:
2
C Start is a valid I2C Start Command
•I
•Receive Byte is a valid I
•SendAck is a avalid I
2
C Stop is a valid I2C Stop Command
•I
NOTES: 1. The TAS3004 will appear to be locked up, if a SendACK is issued after the last byte read. It is required to send an I2C Stop Condition
after the last byte and not a SendACK.
2. The I2Cstart and I2Cstop commands are the same for both I2C read and I2C write.
2
C Command which reads a byte from the TAS3004.
2
C Command that informs the TAS3004 that a byte has been read.
6.3.3I2C Wait States
The TAS3004 device performs interpolation algorithms for its volume and tone controls. If a volume or tone change
is sent to the part via I
state to occur. This wait state lasts from 41 ms to 231 ms, depending on the system clock rate, the command sent,
and, in the case of bass or treble, the amount of the change.
Secondly, if a long series of commands are sent to the TAS3004 device, it may occasionally create a short wait state
on the order of 150 µs to 300 µs while it loads and processes the commands.
When a sample rate of 32 kHz is used, longer wait states can occur, occasionally up to 15 ms.
The preferred way to take care of wait states is to use an I
state period, it stops sending data over I
be implemented in the system software to ensure that the controller is not trying to send more data while the TAS3004
device is busy . Sending I
then be reset.
2
C, the command sent after the volume or tone (bass and treble) change causes an I2C wait
2
2
C. If this function is not available on the system controller, fixed delays can
2
C data while the TAS3004 device is busy causes errors and locks up the device, which must
C controller that recognizes wait states. During the wait
6–3
Table 6–3 gives typical values of the wait states that can be expected with the various functions of the part:
2
Table 6–3. I
SYSTEM SAMPLING FREQUENCY
32 kHz44.1 kHz48 kHz
Volume62 ms49 ms41 msNot dependent on size of change
Bass231 ms167 ms153 ms0 to –18 dB, –1 dB = 0.055 T @ f
Treble231 ms167 ms153 ms0 to –18 dB, –1 dB = 0.055 T @ f
DRC On300 µs300 µs300 µs
MixerNoneNoneNone
LoudnessNoneNoneNone
Equalization15 ms190 µs300 µsCan occur with each filter
C Wait States
Comment
S
S
6.4SMBus Operation
The TAS3004 device supports a subset of the SMBus protocol. With proper programming techniques, it is possible
to use the SMBus to set up the TAS3004 device.
6.4.1Block Write Protocol
The TAS3004 device supports the block write protocol that allows up to 32 bytes to be sent as a block. To send a
command using this format, the most significant bit (MSB) of the TAS3004 subaddress must be set high and the
subaddress (also with MSB set high) must be programmed into the SMBus command byte. This operation signals
the TAS3004 device to realize that the next byte is the SMBus byte count byte. The next byte after the byte count is
then entered into the device as the first byte of data.
SMBus
Command Byte
68h8rhxxdddddd
TAS3004
Address
Subaddress
(r = subaddress)
Byte Count
(Don’t Care)
DataDataData
6.4.2Write Byte Protocol
The TAS3004 device also supports the SMBus write byte protocol. Writing to the main control register (MCR), bass,
and treble registers require using the byte write protocol. To send a command using this format, the most significant
bit (MSB) of the TAS3004 subaddress must be set high and the subaddress (also with MSB set high) must be
programmed into the SMBus command byte. The next byte after the command byte is then entered into the device
as the first byte of data.
SMBus
Command Byte
68h
TAS3004
Address
8rhdd
Subaddress
(r = subaddress)
Data
6–4
6.4.3Wait States
If separate I2C/SMBus commands are sent too frequently, the TAS3004 device can generate a bus wait state. This
happens when the device is busy while performing smoothing operations and changing volume, bass, and treble.
The wait occurs after the bus acknowledge on the first data byte and can exceed the maximum allowable time allowed
according to the SMBus specification (worst case 200 ms).
The following is a possible bus wait state scenario:
CODEStart688406010000010000Stop
ACTUALStart68840601Wait
†
If the master does not recognize bus waiting or if the master times out on a long wait, the master must not send consecutive I2C/SMBus commands
without a time interval of 200 ms between transactions.
†
0000010000Stop
6.4.4TAS3004 SMBus Readback
The TAS3004 device supports a subset of SMBus readback. When an SMBus read command is sent to the device
(LSB = high), it answers with the subaddress and the last six bytes written.
SMBus
Command
Byte
SENT
RECEIVEDStart07haahddhddhddhddhddhddhStop
Start69hxxh07hStop
Byte
Count
Byte
Count
Where:
xxh= Command byte, it is a don’t care because the response contains only the subaddress and the
last six bytes of data written to the TAS3004 device
aah= The last subaddress accessed in the device
ddh= Data bytes from the TAS3004 device
NOTE: Use read sequence defined in 6.3.2
6–5
6–6
7 Microcontroller Operation
The TAS3004 device contains an internal microcontroller programmed by Texas Instruments to perform
housekeeping and interface functions. Additionally, it handles I
2
C communication and general purpose input
functions.
7.1General Description
The microcontroller uses a 256fS system clock and can access up to 8K bytes of memory . It interfaces with the digital
audio interface I
transferring coefficients and other information.
The TAS3004 coefficients are loaded through I
(volume, bass, and treble) can be controlled/activated through external switches connected to the six GPI terminals.
Upon reset, the internal microcontroller sets all coefficients and audio parameters to the default values. See
Section 7.2.2 for default values.
If the TAS3004 address is 68h (ADDR_SEL=0), it becomes the bus master device and attempts to load parameters
and coefficients from the external EPROM. If no EPROM is present, the TAS3004 device remains in its default
condition. If addresses other than 68h/69h are set, the TAS3004 device only operates as an I
If the microcontroller determines the TAS3004 device has an I
microcontroller downloads coefficients from the EPROM. Once the download is complete, it enables the serial audio
in the mode defined by an I
the serial audio port defaults to I
The TAS3004 device allows the user to update volume, bass, and treble dynamically by an I
by a simple GPI switch input. The GPI can select volume up and down, bass/treble up and down, or digital
equalizations. Up to five different equalizations (that is, flat, jazz, rock, voice, etc.) can be stored in the external
EPROM. Also, DRCE, MCR1, MCR2, and loudness contour are enabled and disabled by I
When the TAS3004 device operates in the I
addresses that are defined in its external EPROM. If no addresses are defined, it does not echo.
2
C master/slave for downloading data and coefficients. It also interfaces with two internal DSPs for
2
C in the master or slave mode. Standard audio processing functions
2
C slave device.
2
C address of 68h/69h and the EPROM is present, the
2
C write to the MCR to transfer data into and out of the device. Before reading the EPROM,
2
S mode.
2
C slave command or
2
C.
2
C master mode, it echoes changes to all of its functions to other I2C
7.2Power-Up/Power-Down Reset
7.2.1Power-Up Sequence
An active low on terminal 6 (RESET) while MCLK is running, resets the internal microcontroller and DSP(s). RESET
synchronizes internally and can be asserted asynchronously or with the simple RC circuit in Figure 7–1. On reset,
SCL and SDA go to a high-impedance state. If the I
returns to a 1, the device sends a one-byte query via I2C to look for an EPROM. If an EPROM is found, it becomes
2
an I
C master; otherwise, it becomes an I2C slave. When using address 68h in the slave mode, an external master
must wait until after the EPROM query or else bus contention and improper operation occurs.
2
I
C address x6Ah does not query the bus for an EPROM. The address for the EPROM is xA0h.
7.2.2Reset
The TAS3004 device has an asynchronous reset terminal (RESET). This reset is synchronized with various clocks
used in this device to generate a synchronous internal reset. Upon reset, the TAS3004 device goes through the
following process:
•Clears all the RAM memory content
2
C address is set to 68h, approximately 400 µs after RESET
7–1
•Clears all the registers in the circuits
•Purges the codec
•Selects analog input A (RINA and LINA) and sets the input A active indicator (INPA
) low.
•Initializes the equalization parameters to AllPass filters
•Sets the digital audio interface to I
2
S—18-bit mode
•Sets the bass/treble to 0 dB
•Sets the mixer gain to 0 dB SDIN1 and mutes both SDIN2 and analog-in
•Sets the volume to –40 dB
•Turns off all enhancement features (DRCE, etc.).
•Reads the I
2
C address. If the address is 68h, the device reads its EPROM. It is possible to load the
user-defined bass/treble data and break points (optional). If there is no data, the device loads default
bass/treble delta and break points from ROM.
•If the address is 6Ah, the device puts the I
2
C interface in slave mode and waits for input.
7.2.3Reset Circuit
Since the TAS3004 device has an internal power-on reset (POR), in many cases, additional components are not
needed to reset the device. It resets internally at approximately 80% of V
In the case where the system’s power supplies are slow in reaching their final voltage or where there is a difference
in the time the system power supplies take to become stable, the TAS3004 reset can be delayed by a simple RC
circuit.
DD
.
DV
DD
10 kΩ
TAS3004
6
RESET
0.1 µF
DV
SS
Figure 7–1. TAS3004 Reset Circuit
The values for the above circuit can be calculated by the simple equation:
t
= 0.8RC + 400 µs
rd
Where:t
= The delay before the TAS3004 device comes out of reset
rd
C = Value of the capacitance from RESET
R = Value of the resistance from RESET (pin 6) to DV
(pin 6) to DV
DD
SS
The circuit described in Figure 7–1 delays the start-up of the TAS3004 device approximately 1.2 ms.
When it is necessary to control the reset of the TAS3004 device with an external device, such as a microcontroller,
RESET
(pin 6) can be treated as a logic signal. It then brings the device out of reset when the voltage on RESET
reaches VDD/2.
7.2.4Fast Load Mode
While in fast load mode, it is possible to update the parametric equalization without any audio processing delay. The
audio processor pauses while the RAM is updated in this mode. Bass and treble cannot download in this mode. Mixer1
and Mixer2 registers can download in this mode or normal mode (FL bit = 0).
7–2
Once the download is complete, the fast load bit must be cleared by writing a 0 into bit 7 of the main control register
(MCR). This puts the TAS3004 device into normal mode.
7.2.5Codec Reset
During initialization, the output of the CODEC is disabled. Throughout reset and initialization, the output of the DAC
is muted to prevent extraneous noise being sent to the system output.
Data from the ADC and other internal processing is purged so that when reset/initialization is complete, only valid
inputs are sent to the system output.
7.3Power-Down Mode
The TAS3004 device has an asynchronous power-down mode. In the power-down mode, the internal control
registers and equalization programming of the device are stored in the device.
To enter power-down mode:
•Assert the power-down control signal (1)
•Set the serial audio input clocks to 0
The TAS3004 device goes into power-down mode.
To exit the power-down mode:
•Assert RESET
•Restart the serial audio clocks
•Wait for a delay of 1.0 ms (to allow the PLL to lock)
•Negate the power-down control signal (logic 0)
•Negate RESET
The device then returns to the state it was in before power down (resumes normal operation).
(logic 0)
(logic 1)
7.3.1Power-Down Timing Sequence
PWR_DN
RESET
MCLK
SCLK
LRCLK
SDATA
Power-Down Mode
Figure 7–2. Power-Down Timing Sequence
In power-down mode, the TAS3004 device consumes typically less than 1 mA.
Normal Operation
1 ms
7–3
7.4Test Mode
Terminal 9 (TEST) is tied low in normal operation. This function is reserved for factory test and must not be asserted.
7.5Internal Interface
Figure 7–3 shows the block diagram of the interface between the microcontroller and its peripheral blocks.
7.6GPI Terminal Programming
During initialization, the microcontroller fetches a control byte from its EPROM or receives a command from I2C.
7.6.1Switch Interface
The six GPI terminals are programmed to operate in the following manner:
Initially (after reset), the TAS3004 GPI is set to control volume, bass, and treble. Simultaneously setting GPI bits 1
and 5 low for 1 second changes the function of the GPI terminals to control mute and equalization.
To return to volume, bass, and treble control, simultaneously set GPI terminals 2 and 3 low for 1 second.
2
When a GPI switch is activated, the TAS3004 device echoes its function over I
C to a TAS3001 device mapped to
address x6Ah. Therefore, a system with two audio equalization chips can be implemented without the need for a
microcontroller.
7.6.2GPI Architecture
The GPI provides simple but flexible input port to activate the input parameters. Each terminal input is an active logic
low.
7–4
Start
Power Up
Restore Volume
and MCR
Initialize Default
EPROM
Slave Write
GPI
Power Down
Initialize TAS3004
TAS3001
Load Parameters
and Coefficients
to DSP
Volume/Bass/Treble Up/Down
Echo to TAS3001
Switch BQ Set
Save Volume, Mute
Save PWR_DN
Stop PLL
DRC_OFF
Stop
DRC
Figure 7–3. Internal Interface Block Diagram
7–5
7.7External EPROM Memory Maps
Left channel
Right channel
Table 7–2 through Table 7–5 show the 512-byte and 2048-byte EPROM memory maps.
Stresses beyond those listed under absolute maximum ratings may cause permanent damage to the device. These are stress ratings only, and
functional operation of the device at these or any other conditions beyond those indicated under recommended operating conditions is not implied.
Exposure to absolute-maximum-rated conditions for extended periods may affect device reliability.
NOTE 1: Human body model per Method 3015.2 of MIL-STD-833B.
8.2Recommended Operating Conditions
TA = 25°C, AVDD = 3.3 V, DVDD = 3.3 V
Voltages at analog inputs and outputs and at AV
Supply voltage, AV
Supply voltage, DV
Supply current, analog
Supply current, digital
Power dissipation
NOTE 2: If the clocks are turned off.
DD
DD
p
are with respect to ground.
DD
MINNOMMAXUNIT
3.03.33.6V
3.03.33.6V
Operating34mA
Power down (see Note 2)88µA
Operating47mA
Power down (see Note 2)942µA
Operating267mW
Power down (see Note 2)0.35W
TA = 25°C, AVDD = 3.3 V, DVDD = 3.3 V, fS = 48 kHz, 20-bit I2S mode
All terms characterized by frequency are scaled with the chosen sampling frequency, f
Figure 8–4 for performance curves of the ADC digital filter.
PARAMETERTEST CONDITIONSMINTYPMAXUNIT
ADC decimation filter (LPF)
Pass band0.020.0kHz
Pass band ripple±0.01dB
Stop band24.1kHz
Stop band attenuation80dB
Group delay720µs
ADC high-pass filter (HPF)
Pass band (–3 dB)0.87Hz
Deviation from linear phase20 Hz to 20 kHz1.23degrees
50
0
–50
–100
Amplitude – dB
–150
. See Figure 8–1 through
S
–200
02 fs4 f
Figure 8–1. ADC Digital Filter Characteristics
0
–20
–40
–60
Amplitude – dB
–80
–100
0
Figure 8–2. ADC Digital Filter Stopband Characteristics
0.2 f
s
f – Frequency – Hz
s
6 f
s
0.4 f
s
f – Frequency – Hz
0.6 f
8 f
s
s
10 f
0.8 f
s
s
12 f
s
1 f
s
8–2
0.008
0.006
0.004
0.002
Amplitude – dB
–0.002
–0.2
–0.4
–0.6
Amplitude – dB
–0.8
0
0
0.1 f
s
0.2 f
s
f – Frequency – Hz
0.3 f
s
Figure 8–3. ADC Digital Filter Passband Characteristics
0.2
0
0.4 f
s
0.5 f
s
–1
0
1 f
s
2 f
f – Frequency – Hz
s
3 f
s
4 f
s
Figure 8–4. ADC High Pass Filter Characteristics
8.5Analog-to-Digital Converter
TA = 25°C, AVDD = 3.3 V, DVDD = 3.3 V, fS = 48 kHz, 20-bit I2S mode
All terms characterized by frequency are scaled with the chosen sampling frequency, f
PARAMETERTEST CONDITIONSMINTYPMAXUNIT
SNR (EIAJ)A weighted93dB
Dynamic range–60 dB, 1 kHz88dB
Signal to (noise + distortion) ratio–1 dB, 1 kHz, 20 Hz to 20 kHz82dB
Power supply rejection ratio1 kHz (see Note 3)50dB
Idle channel tone rejection+110dB
Intermodulation distortion–80dB
ADC crosstalk93dB
Overall ADC frequency response20 Hz to 20 kHz±0.1dB
Gain error5%
Gain matching±0.02dB
NOTE 3: Measured with a 50-mV peak sine curve.
.
S
8–3
8.6Input Multiplexer
TA = 25°C, AVDD = 3.3 V, DVDD = 3.3 V, fS = 48 kHz, 20-bit I2S mode
All terms characterized by frequency are scaled with the chosen sampling frequency, f
PARAMETERTEST CONDITIONSMINTYPMAXUNIT
Input impedance20kΩ
Crosstalk85dB
Full scale input voltage range1.7V
.
S
8.7DAC Interpolation Filter
TA = 25°C, AVDD = 3.3 V, DVDD = 3.3 V, fS = 48 kHz, 20-bit I2S mode
All terms characterized by frequency are scaled with the normal mode sampling frequency, f
Figure 8–6 for performance curves of the DAC digital filter.
PARAMETERTEST CONDITIONSMINTYPMAXUNIT
Pass band0.020.0kHz
Pass band ripple±0.005dB
Stop band24.1kHz
Stop band attenuation28.8 kHz to 3 MHz75dB
Group delay700µs
0
R
–20
. See Figure 8–5 and
S
PP
Amplitude – dB
Amplitude – dB
–40
–60
–80
–100
0f
0.1
0.05
0
–0.05
–0.1
0
s/2
1 f
s
2 f
s
f – Frequency – Hz
3 f
s
4 f
s
Figure 8–5. DAC Filter Overall Frequency Characteristics
0.1 f
s
0.2 f
s
f – Frequency – Hz
0.3 f
s
0.4 f
s
5 f
0.5 f
s
s
8–4
Figure 8–6. DAC Digital Filter Passband Ripple Characteristics
8.8Digital-to-Analog Converter
TA = 25°C, AVDD = 3.3 V, DVDD = 3.3 V, fS = 48 kHz, input = 0 dB-fS sine wave at 1 kHz
All terms characterized by frequency are scaled with the chosen sampling frequency, f
PARAMETERTEST CONDITIONSMINTYPMAXUNIT
SNR (EIAJ)A weighted9499dB
Dynamic range–60 dB, 1 kHz9296dB
Signal to (noise + distortion) ratio0 dB, 1 kHz, 20 Hz to 20 kHz83dB
Power supply rejection ratio1 kHz50dB
Idle channel tone rejection+118dB
Intermodulation distortion–75dB
Frequency response–0.5+0.5dB
Deviation from linear phase±1.4degree
DAC crosstalk–96dB
Jitter tolerance150ps
Full scale, single-ended, output voltage range1.9V
DC offset–7.07.0mV
.
S
8.9DAC Output Performance Data
TA = 25°C, AVDD = 3.3 V, DVDD = 3.3 V
The output load resistance is connected through a dc blocking capacitor.
5. VRFILT must never be used as a voltage reference.
PP
8–5
8.10 I2C Serial Port Timing Characteristics
MINMAXUNIT
f
scl
t
buf
t
low
t
high
t
hdsta
t
susta
t
hddat
t
sudat
t
r
t
f
t
susto
C
NOTE 6: A device must internally provide a hold time of at least 300 ns for the SDA signal to bridge the undefined region of the falling edge of
SCL clock frequency0100kHz
Bus free time between start and stop4.7µs
Low period of SCL clock4.7µs
High period of SCL clock4.0µs
Hold time repeated start4.0µs
Setup time repeated start4.720µs
Data hold time (See Note 6)0µs
Data setup time250ns
Rise time for SDA and SCL1000ns
Fall time for SDA and SCL300ns
Setup time for stop condition4.0µs
Capacitive load for each bus line400pF
b
SCL.
PS
P
NOTE: t
SDA
t
BUF
SCL
is measured from the end of tf to the beginning of tr.
low
t
is measured from the end of tr to the beginning of tf.
high
Valid
Data
Line
Stable
t
HD(STA)
t
r
Figure 8–7. I2C Bus Timing
t
Change
of Data
Allowed
HD(DAT)
t
su(DAT)
t
f
t
su(STA)
t
HD(STA)
t
su(STO)
8–6
9 System Diagrams
Figure 9–1 and Figure 9–2 show the TAS3004 stereo and 2.1-channel applications, respectively.
+3.3 V
DD
RESET
Analog Out
Analog In
SPDIF
or
USB
EPROM
NOTE: Items such as the PLL network and power supplies are omitted for clarity.
I2S
I2C
Master
TAS3004
Clock Select Logic
B-T-V-EQ Switches
Figure 9–1. Stereo Application
9–1
Analog In
+3.3 V
DD
RESET
Analog Out(To Satellite Amplifiers)
SPDIF
or
USB
EPROM
Echos
Switches
on GPIO
NOTE: Items such as the PLL network and power supplies are omitted for clarity.
I2S
I2C
Master
TAS3004
Clock Select Logic
B-T-V-EQ-Sub Vol
SDOUT2
L+R Mix
I2C
Figure 9–2. TAS3004 Device, 2.1 Channels
I2S_OUT
Slave
TAS3001
Address = 6Ah
I2S
PCM1744
Analog Out
9–2
10 Mechanical Information
The TAS3004 device is packaged in a 48-terminal PFB package. The following illustration shows the mechanical
dimensions for the PFB package.
PFB (S-PQFP-G48)PLASTIC QUAD FLATPACK
37
48
1,05
0,95
0,50
36
0,27
0,17
25
24
13
1
5,50 TYP
7,20
SQ
6,80
9,20
SQ
8,80
12
M
0,08
0,05 MIN
Seating Plane
0,13 NOM
Gage Plane
0,25
0°–ā7°
0,75
0,45
1,20 MAX
NOTES: A. All linear dimensions are in millimeters.
B. This drawing is subject to change without notice.
C. Falls within JEDEC MS-026
The gain error is less than 0.12 dB (excluding mute).
2
T able A–9. Example of a DRCE I
BYTE
NUMBER
168TAS3004 device identification
202DRC subaddress
368Above-threshold ratio of 5.33:1 with DRCE onSee Table A–11 and Table A–12
422Below-threshold ratio of 1.33:1See Table A–13 and Table A–14
59FThreshold of –30 dBSee Table A–15
6B0Integration interval for energy level detection of 212 msSee Table A–16
760Attack time constant 6.7 ms
8A0Decay time constant 106 ms
INSTRUCTION
(HEX)
INSTRUCTION DEFINITIONTABLE
C Instruction With DRCE On
A.7.1DRCE On/Off
The DRCE default mode in the TAS3004 device is off.
The DRCE turns on if all eight bytes in Table A–9 are transmitted and the LSB of the above threshold ratio byte is
0.
The DRCE turns off if all eight bytes in Table A–10 are transmitted and the LSB of the above threshold ratio byte is
1. Table A–10 is identical to Table A–9 except for this third byte.
2
T able A–10. Example of a DRCE I
BYTE
NUMBER
168TAS3004 device identification
202DRC subaddress
369Above threshold ratio of 5.33:1 with DRCE offSee Table A–11 and Table A–12
422Below threshold ratio of 1.33:1See Table A–13 and Table A–14
59FThreshold of –30 dBSee Table A–15
6B0Integration interval for energy level detection of 212 msSee Table A–16
760Attack time constant 6.7 ms
8A0Decay time constant 106 ms
INSTRUCTION
(HEX)
INSTRUCTION DEFINITIONTABLE
C Instruction With DRCE Off
A–9
A.7.2Above Threshold Ratios
The above threshold ratios are applied when the energy level of the incoming signal is detected anywhere between
the threshold (from Table A–15) and 0 dB. See Figure A–1.
Output (dB)
0 dB
Ratio = 1:1
Compression
Input (dB)
–89.625 dB
–89.625 dB
Expansion
Below Threshold
Threshold0 dB
Above Threshold
Figure A–1. TAS3004 DRCE Characteristics in the dB Domain
T able A–11. Above Threshold Ratios for Compression
The below threshold ratios are applied when the energy level of the incoming signal is detected as being anywhere
between the threshold (from Table A–15) and –89.625 dB. See Figure A–1.
T able A–15 lists a range of threshold values from 0 dB to –89.625 dB in 0.75-dB decrements.
NOTE: The TAS3004 device is capable of 0.375-dB increments. The associated hexidecimal
value can be determined by interpolating between the existing hexidecimal values in
T able A–15.
Use Table A–16 to program the attack time, the decay time, and the integration interval for energy level detection.
Level detection is performed by using an alpha filter at the input of the DRCE, which functions as an energy-level
detection block for the DRCE. The time constant for level detection can be thought of as an integration interval. Use
a time constant from Table A–16 as an integration interval for energy level detection.
T able A–16 lists the time constants used for
decay time constant. All values represent the time required to reach 63% of maximum value from zero.
A–12
integration interval for energy level detection, attack time constant, an d
T able A–16. Time Constants
HEXADECIMAL VALUETIME DELAY
401.7 ms
503.5 ms
606.7 ms
7013 ms
8026 ms
9053 ms
A0106 ms
B0212 ms
C0425 ms
D0850 ms
E01.7 s
F02.4 s
A.7.6DRCE Example With Threshold at –12 dB
From the DRCE example shown in Figure A–2, the threshold is set at –12 dB. The input energy E, has a value of
–6 dB.