outputs
– 3 preset volume curves
– 2 preset anti-clipping modes
– Preset movie nighttime listening mode
– Preset TV channel/commercial AGC mode
– 5.1, 2.1 bass management configurations
– AM frequency automatic output PWM
frequency shifting
– 8 preset crossover filters
■ Individual channel and master soft/hard mute
®
®
Preliminary data
VFQFPN-56
■ Automatic zero-detect and invalid input mute
■ Automatic amplifier power-down on clock loss
■ Advanced AM interference frequency
switching and noise suppression modes
2
■ I
S output channel mapping function
■ Independent channel volume and DSP bypass
■ Channel mapping of any input to any
processing/FFX channel
■ Selectable per-channel FFX damped ternary or
binary PWM output
■ Max power correction for lower full-power THD
■ Variable per-channel FFX o
■ 192 kHz internal processing sampling rate,
utput delay control
24-bit to 36-bit precision
Description
The STA309B is a single-chip solution for digital
audio processing and control in multichannel
applications and provides output capabilities for
FFX (full flexible amplification). In conjunction with
an FFX power device, it provides high-quality,
high-efficiency, all-digital amplification. The device
is extremely versatile, allowing for input of most
digital formats including 6.1/7.1-channel and
192 kHz, 24-bit DVD-audio, DSD/SACD and PDM
for MEMS microphone inputs. In the 5.1
application, the additional 2 channels can be used
for audio line-out or headphone drive. In speaker
mode, with 8 channel outputs in parallel, the
STA309B can deliver 1 W (maximum).
This pin enables the user to bypass the volume control on all channels. When MVO is pulled
high, the master volume register is set to 0x00, which corresponds to its full-scale setting.
The master volume register setting offsets the individual channel volume settings, which
default to 0 dB.
Serial data in (SDI_12, SDI_34, SDI_56, SDI_78)
Audio information enters the device here. Six format choices are available including I2S,
left- or right-justified, LSB or MSB first, with word widths of 16, 18, 20 and 24 bits.
RESET
Driving this pin low turns off the outputs and returns all settings to their defaults.
I2C bus
The SA, SDA and SCL pins operate per the Phillips I2C specification. See Section 5: I2C
bus operation.
Phase locked loop (PLL)
The phase locked loop section provides the system timing signals and CKOUT.
Clock output (CKOUT)
System synchronization and master clocks are provided by CKOUT.
PWM outputs (OUT1 through OUT8)
The PWM outputs provide the input signal for the power devices.
External amplifier power-down (EAPD)
This signal can be used to control the power-down of FFX power devices.
Serial data out (SDO_12, SDO_34, SDO_56, SDO_78)
These are the outputs for audio information. Six different formats are available including I2S,
left- or right-justified, LSB or MSB first, with word widths of 16, 18, 20 and 24 bits.
Device power-down (PWDN)
Pulling PWDN low begins the power-down sequence which puts the STA309B into a
low-power state. EAPD (pin 51) goes low approximately 30 ms later.
14/66 Doc ID 022570 Rev 2
Page 15
STA309BI2C bus operation
5 I2C bus operation
The STA309B supports the I2C protocol via the input ports SCL and SDA_IN (master to
slave) and the output port SDA_OUT (slave to master).
This protocol defines any device that sends data on to the bus as a transmitter and any
device that reads the data as a receiver.
The device that controls the data transfer is known as the master and the other as the slave.
The master always starts the transfer and provides the serial clock for synchronization. The
STA309B is always a slave device in all of its communications.
5.1 Communication protocol
5.1.1 Data transition or change
Data changes on the SDA line must only occur when the SCL clock is low. An SDA transition
while the clock is high is used to identify a START or STOP condition.
5.1.2 Start condition
START is identified by a high to low transition of the data bus SDA signal while the clock
signal SCL is stable in the high state. A START condition must precede any command for
data transfer.
5.1.3 Stop condition
STOP is identified by low to high transition of the data bus SDA signal while the clock signal
SCL is stable in the high state. A STOP condition terminates communication between the
STA309B and the bus master.
5.1.4 Data input
During the data input the STA309B samples the SDA signal on the rising edge of clock SCL.
For correct device operation the SDA signal must be stable during the rising edge of the
clock and the data can change only when the SCL line is low.
5.2 Device addressing
To start communication between the master and the Omega FFX core, the master must
initiate with a start condition. Following this, the master sends 8 bits to the SDA line (MSB
first) corresponding to the device select address and read or write mode.
The 7 most significant bits are the device address identifiers, corresponding to the I
definition. In the STA309B the I
port configuration, 0x40 or 0100000x when SA = 0, and 0x42 or 0100001x when SA = 1.
th
The 8
for write mode. After a START condition, the STA309B identifies on the bus the device
address and if a match is found, it acknowledges the identification on the SDA bus during
bit (LSB) identifies read or write operation RW, this bit is set to 1 in read mode and 0
2
C interface has two device addresses depending on the SA
2
C bus
Doc ID 022570 Rev 215/66
Page 16
I2C bus operationSTA309B
the 9th-bit time. The byte following the device identification byte is the internal space
address.
5.3 Write operation
Following the START condition the master sends a device select code with the RW bit set
to 0. The STA309B acknowledges this and then waits for the byte of internal address.
After receiving the internal byte address the STA309B again responds with an
acknowledgement.
5.3.1 Byte write
In the byte write mode the master sends one data byte, this is acknowledged by the FFX
core. The master then terminates the transfer by generating a STOP condition.
5.3.2 Multi-byte write
The multi-byte write modes can start from any internal address. The master generating a
STOP condition terminates the transfer.
Figure 4.Write mode sequence
BYTE
WRITE
DEV-ADDR
STARTRW
ACK
ACK
MULTIBYTE
WRITE
DEV-ADDR
STARTRW
Figure 5.Read mode sequence
ACK
CURRENT
ADDRESS
READ
RANDOM
ADDRESS
READ
SEQUENTIAL
CURRENT
READ
SEQUENTIAL
RANDOM
READ
START
START
START
START
DEV-ADDR
DEV-ADDR
DEV-ADDR
DEV-ADDR
RW=
HIGH
DATA
RW
ACK
SUB-ADDR
RW
ACK
DATA
ACK
SUB-ADDR
RW
SUB-ADDR
SUB-ADDR
NO ACK
ACK
ACK
ACK
STOP
DATA
DEV-ADDR
DEV-ADDR
ACK
ACK
CK
A
DATA IN
STOP
DATA IN
CK
DATA IN
ACK
A
STOP
CK
A
WRTRATS
ACK
CK
A
WRTRATS
DATA
DATA
DATA
NO ACK
NO A
CK
A
STOP
CK
STOP
DATA
CKNO ACK
A
DATA
STOP
16/66 Doc ID 022570 Rev 2
Page 17
STA309BApplication reference schematic
6 Application reference schematic
Figure 6.Reference schematic for STA309B-based application
The STA309B supports sampling rates of 32 kHz, 44.1 kHz, 48 kHz, 88.2 kHz, 96 kHz,
176.4 kHz, 192 kHz, and 2.8224 MHz DSD. Therefore the internal clocks are:
●65.536 MHz for 32 kHz
●90.3168 MHz for 44.1 kHz, 88.2 kHz, 176.4 kHz, and DSD
●98.304 MHz for 48 kHz, 96 kHz, and 192 kHz
Master clock select: selects the ratio between the
input I2S sampling frequency and the input clock
The external clock frequency provided to the XTI pin must be a multiple of the input
sampling frequency (fs). The relationship between the input clock and the input sampling
rate is determined by both the MCSn and the IRn (input rate) register bits. The MCSn bits
determine the PLL factor generating the internal clock and the IRn bits determine the
oversampling ratio used internally.
3RW0IR0Interpolation ratio select: selects internal
interpolation ratio based on input I
4RW 0 IR1
frequency
The STA309B has variable interpolation (oversampling) settings such that internal
processing and FFX output rates remain consistent. The first processing block interpolates
by either 4 times, 2 times, or 1 time (pass-through).
2
S sampling
The oversampling ratio of this interpolation is determined by the IR bits.
22/66 Doc ID 022570 Rev 2
Page 23
STA309BRegisters
I
IR[1,0]
Input sampling rate
Fs (kHz)
1st stage interpolation ratio
00324-times oversampling
0044.14-times oversampling
00484-times oversampling
0188.22-times oversampling
01962-times oversampling
10176.4Pass-through
10192Pass-through
11DSDDSD to 176.4 kHz conversion
BitRWRSTNameDescription
DSP bypass bit:
0RW0DSPB
0: normal operation
1: bypass of biquad and bass/treble functions
Setting the DSPB bit bypasses the biquad function of the FFX core.
COS[1,0]CKOUT frequency
00PLL output
01PLL output / 4
10PLL output / 8
11PLL output / 16
Doc ID 022570 Rev 223/66
Page 24
RegistersSTA309B
7.2.2 Configuration register B (0x01) - serial input formats
D7D6D5D4D3D2D1D0
SAIFBSAI3SAI2SAI1SAI0
00000
BitRWRSTNameDescription
0RW0SAI0
1RW0SAI1
2RW0SAI2
3RW0SAI3
Serial data interface
The STA309B audio serial input interfaces with standard digital audio components and
accepts a number of serial data formats. The STA309B always acts a slave when receiving
audio input from standard digital audio components. Serial data for eight channels is
provided using 6 input pins: left/right clock LRCKI (pin 10), serial clock BICKI (pin 11), serial
data 1 and 2 SDI12 (pin 9), serial data 3 and 4 SDI34 (pin 8), serial data 5 and 6 SDI56 (pin
7), and serial data 7 and 8 SDI78 (pin 6). The SAI/SAIFB register (configuration register B,
address 0x01) is used to specify the serial data format. The default serial data format is I
MSB-first. Available formats are shown in the tables that follow.
BitRWRSTNameDescription
Serial audio input interface format: determines the
interface format of the input serial digital audio
interface.
2
S,
Determines MSB or LSB first for all SAO formats:
4RW0SAIFB
0: MSB first
1: LSB first
Note:Serial input and output formats are specified separately
For example, SAI = 1110 and SAIFB = 1 specifies right-justified 16-bit data, LSB-first.
24/66 Doc ID 022570 Rev 2
Page 25
STA309BRegisters
The table below lists the serial audio input formats supported by the STA309B as related to
BICKI = 32
7.2.3 Configuration register C (0x02) - serial output formats
D7D6D5D4D3D2D1D0
SAOFBSAO3SAO2SAIOSAO0
00000
BitRWRSTNameDescription
0RW 0 SAO0
1RW 0 SAO1
2RW 0 SAO2
3RW 0 SAO3
The STA309B features a serial audio output interface that consists of 8 channels. The serial
audio output always acts as a slave to the serial audio input interface and, therefore, all
output clocks are synchronous with the input clocks. The output sampling frequency (fs) is
also equivalent to the input sampling frequency. In the case of SACD/DSD and PDM input,
the serial audio output acts as a master with an output sampling frequency of 176.4 kHz.
The output serial format can be selected independently from the input format and is done
via the SAO and SAOFB bits.
BitRWRSTNameDescription
Serial audio output interface format: determines the
interface format of the output serial digital audio
interface.
Determines MSB or LSB first for all SAO formats:
4RW 0 SAOFB
0: MSB first
1: LSB first
BICKI = BICKOSAO[3:0]Interface data format
2
0111I
S data
32 * fs
1111Left/right-justified 16-bit data
1110I
2
S data
0001Left-justified data
1010Right-justified 24-bit data
48 * fs
1011Right-justified 20-bit data
1100Right-justified 18-bit data
1101Right-justified 16-bit data
0000I
2
S data
0001Left-justified data
0010Right-justified 24-bit data
64 * fs
0011Right-justified 20-bit data
0100Right-justified 18-bit data
0101Right-justified 16-bit data
26/66 Doc ID 022570 Rev 2
Page 27
STA309BRegisters
7.2.4 Configuration register D (0x03)
D7D6D5D4D3D2D1D0
MPCCSZ4CSZ3CSZ2CSZ1CSZ0OM1OM0
11000010
BitRWRSTNameDescription
0RW 0 OM0
1RW 1 OM1
FFX power output mode: selects configuration of
FFX output
The FFX power output mode selects how the FFX output timing is configured. Different
power devices use different output modes. The STA50x recommended use is
OM = 10.
OM[1,0]Output stage - mode
00STA50x/STA51xB - drop compensation
01Discrete output stage - tapered compensation
10STA50x/STA51xB - full power mode
11Variable drop compensation (CSZn bits)
BitRWRSTNameDescription
2RW 0 CSZ0
3RW 0 CSZ1
4RW 0 CSZ2
5RW 0 CSZ3
6RW 1 CSZ4
CSZ[4:0]Compensating pulse size
Contra size register: when OM[1,0] = 11, this register
determines the size of the FFX compensating pulse
from 0 clock ticks to 31 clock periods.
000000 clock period compensating pulse size
000011 clock period compensating pulse size
……
1111131 clock period compensating pulse size
BitRWRSTNameDescription
Max power correction: setting to 1 enables STA50x
7RW 1 MPC
correction for THD reduction near maximum power
output
Setting the MPC bit turns on special processing that corrects the STA50x power device at
high power. This mode should lower the THD+N of a full STA50x FFX system at maximum
power output and slightly below. This mode will only be operational at OM[1,0] = 01.
Doc ID 022570 Rev 227/66
Page 28
RegistersSTA309B
7.2.5 Configuration register E (0x04)
D7D6D5D4D3D2D1D0
C8BOC7BOC6BOC5BOC4BOC3BOC2BOC1BO
00000000
BitRWRSTNameDescription
0RW 0 C1BO
1RW 0 C2BO
2RW 0 C3BO
3RW 0 C4BO
4RW 0 C5BO
5RW 0 C6BO
6RW 0 C7BO
7RW 0 C8BO
Each individual channel output can be set to output a binary PWM stream. In this mode
output A of a channel will be considered the positive output and output B is the negative
inverse.
Channels 1, 2, 3, 4, 5, 6, 7, and 8 binary output
mode enable bits. A setting of 0 indicates ordinary
FFX tristate output. A setting of 1 indicates binary
output mode
7.2.6 Configuration register F (0x05)
D7D6D5D4D3D2D1D0
PWMS2PWMS1PWMS0BQLPSLDEMPDRCHPB
00000000
BitRWRSTNameDescription
0RW 0 HPB
The STA309B features an internal digital high-pass filter for the purpose of AC coupling. The
purpose of this filter is to prevent DC signals from passing through an FFX amplifier. DC
signals can cause speaker damage.
If HPB = 1, then the filter that the high-pass filter utilizes is made available as userprogrammable biquad #1.
BitRWRSTNameDescription
1RW0DRC
Both limiters can be used in one of two ways, anti-clipping or dynamic range compression.
When used in anti-clipping mode the limiter threshold values are constant and dependent on
the limiter settings.
High-pass filter bypass bit: setting to one bypasses
the internal AC coupling digital high-pass filter
Dynamic range compression/anti-clipping
0: limiters act in anti-clipping mode
1: limiters act in dynamic range compression mode
28/66 Doc ID 022570 Rev 2
Page 29
STA309BRegisters
In dynamic range compression mode the limiter threshold values vary with the volume
settings allowing a nighttime listening mode that provides a reduction in the dynamic range
regardless of the volume level.
BitRWRSTNameDescription
De-emphasis:
2RW 0 DEMP
0: no de-emphasis
1: de-emphasis
By setting this bit to one, de-emphasis will be implemented on all channels. When this is
used, it takes the place of biquad #7 in each channel and any coefficients using biquad #1
will be ignored. The DSPB (DSP bypass) bit must be set to 0 for de-emphasis to function.
BitRWRSTNameDescription
Post-scale link:
3RW0PSL
0: each channel uses individual post-scale value
1: each channel uses channel 1 post-scale value
Post-Scale functionality can be used for power-supply error correction. For multichannel
applications running off the same power supply, the post-scale values can be linked to the
value of channel 1 for ease of use and in order to update the values faster.
BitRWRSTNameDescription
Biquad link:
4RW 0 BQL
0: each channel uses coefficient values
1: each channel uses channel 1 coefficient values
For ease of use, all channels can use the biquad coefficients loaded into the channel 1
coefficient RAM space by setting the BQL bit to 1. Therefore, any EQ updates only have to
be performed once.
0: normal FFX operation.
1: AM reduction mode FFX operation
The STA309B features an FFX processing mode that minimizes the amount of noise
generated in the frequency range of AM radio. This mode is intended for use when FFX is
operating in a device with an active AM tuner. The SNR of the FFX processing is reduced to
~83 dB in this mode, which is still greater than the SNR of AM radio.
BitRWRSTNameDescription
AM2 mode enable:
4RW 0 AM2E
0: normal FFX operation
1: AM2 reduction mode FFX operation
The STA309B features 2 FFX processing modes that minimize the amount of noise
generated in the frequency range of AM radio. This second mode is intended for use when
FFX is operating in a device with an active AM tuner. This mode eliminates the noiseshaper.
BitRWRSTNameDescription
FFX headphone enable:
5RW 0 HPE
0: channels 7 and 8 normal FFX operation
1: channels 7 and 8 headphone operation
Channels 7 and 8 can be configured to be processed and output in such a manner that
headphones can be driven using an appropriate output device. This signal is a differential
3-wire drive called FFX headphone.
30/66 Doc ID 022570 Rev 2
Page 31
STA309BRegisters
BitRWRSTNameDescription
Distortion compensation variable enable:
6RW0DCCV
0: uses preset DC coefficient
1: uses DCC coefficient
BitRWRSTNameDescription
Max power correction variable:
7RW 0 MPCV
0: uses standard MPC coefficient
1: uses MPCC bits for MPC coefficient
7.2.8 Configuration register H (0x07)
D7D6D5D4D3D2D1D0
ECLELDTEBCLEIDEZDESVEZCENSBW
01111110
BitRWRSTNameDescription
Noise-shaper bandwidth selection:
0RW0NSBW
1: 3
rd
order NS
0: 4th order NS
BitRWRSTNameDescription
Zero-crossing volume enable:
1RW1 ZCE
1: volume adjustments will only occur at digital zerocrossings
0: volume adjustments will occur immediately
The ZCE bit enables zero-crossing volume adjustments. When the volume is adjusted on
digital zero-crossings, no clicks will be audible.
Zero-detect mute enable: setting to 1 enables the
automatic zero-detect mute
Setting the ZDE bit enables the zero-detect automatic mute. The zero-detect circuit looks at
the input data of each processing channel after the channel-mapping block. If any channel
receives 2048 consecutive zero-value samples (regardless of fs), then that individual
channel is muted if this function is enabled.
Setting the IDE bit enables this function, which looks at the input I2S data and will
automatically mute if the signals are perceived as invalid.
BitRWRSTNameDescription
5RW1BCLEBinary output mode clock loss detection enable
This function detects loss of input MCLK in binary mode and will output 50% duty cycle.
BitRWRSTNameDescription
6RW1LDTELRCLK double triggering protection enable
This function actively prevents double triggering of LRCLK.
BitRWRSTNameDescription
7RW1ECLEAuto EAPD on clock loss
Device power-down signal (EAPD) on clock loss detection. This function is enabled by
default. It is strongly recommended to avoid spurious noise during the on-off sequence. The
STA309B has the ECLE bit set to 0.
7.2.9 Configuration register I (0x08)
D7D6D5D4D3D2D1D0
EAPDPSCE
00
This feature utilizes an ADC on SDI78 that provides power supply ripple information for
correction. Registers PSC1, PSC2, PSC3 are utilized in this mode.
BitRWRSTNameDescription
0RW0PSCE
BitRWRSTNameDescription
7RW0EAPD
Power supply ripple correction enable:
0: normal operation
1: PSCorrect operation
External amplifier power-down:
0: external power-stage power-down active
1: normal operation
32/66 Doc ID 022570 Rev 2
Page 33
STA309BRegisters
7.2.10 Master mute register (0x09)
D7D6D5D4D3D2D1D0
MMUTE
0
7.2.11 Master volume register (0x0A)
D7D6D5D4D3D2D1D0
MV7MV6MV5MV4MV3MV2MV1MV0
11111111
Note:The value of the volume derived from MVOL is dependent on the AMV AutoMode volume
settings.
7.2.12 Channel 1 volume (0x0B)
D7D6D5D4D3D2D1D0
C1V7C1V6C1V5C1V4C1V3C1V2C1V1C1V0
01100000
7.2.13 Channel 2 volume (0x0C)
D7D6D5D4D3D2D1D0
C2V7C2V6C2V5C2V4C2V3C2V2C2V1C2V0
01100000
7.2.14 Channel 3 volume (0x0D)
D7D6D5D4D3D2D1D0
C3V7C3V6C3V5C3V4C3V3C3V2C3V1C3V0
01100000
7.2.15 Channel 4 volume (0x0E)
D7D6D5D4D3D2D1D0
C4V7C4V6C4V5C4V4C4V3C4V2C4V1C4V0
01100000
Doc ID 022570 Rev 233/66
Page 34
RegistersSTA309B
7.2.16 Channel 5 volume (0x0F)
D7D6D5D4D3D2D1D0
C5V7C5V6C5V5C5V4C5V3C5V2C5V1C5V0
01100000
7.2.17 Channel 6 volume (0x10)
D7D6D5D4D3D2D1D0
C6V7C6V6C6V5C6V4C6V3C6V2C6V1C6V0
01100000
7.2.18 Channel 7 volume (0x11)
D7D6D5D4D3D2D1D0
C7V7C7V6C7V5C7V4C7V3C7V2C7V1C7V0
01100000
7.2.19 Channel 8 volume (0x12)
D7D6D5D4D3D2D1D0
C8V7C8V6C8V5C8V4C8V3C8V2C8V1C8V0
01100000
7.2.20 Channel 1 volume trim, mute, bypass (0x13)
D7D6D5D4D3D2D1D0
C1MC1VBPC1VT4C1VT3C1VT2C1VT1C1VT0
00010000
7.2.21 Channel 2 volume trim, mute, bypass (0x14)
D7D6D5D4D3D2D1D0
C2MC2VBPC2VT4C2VT3C2VT2C2VT1C2VT0
00010000
7.2.22 Channel 3 volume trim, mute, bypass (0x15)
D7D6D5D4D3D2D1D0
C3MC3VBPC3VT4C3VT3C3VT2C3VT1C3VT0
00010000
34/66 Doc ID 022570 Rev 2
Page 35
STA309BRegisters
7.2.23 Channel 4 volume trim, mute, bypass (0x16)
D7D6D5D4D3D2D1D0
C4MC4VBPC4VT4C4VT3C4VT2C4VT1C4VT0
00010000
7.2.24 Channel 5 volume trim, mute, bypass (0x17)
D7D6D5D4D3D2D1D0
C5MC5VBPC5VT4C5VT3C5VT2C5VT1C5VT0
00010000
7.2.25 Channel 6 volume trim, mute, bypass (0x18)
D7D6D5D4D3D2D1D0
C6MC6VBPC6VT4C6VT3C6VT2C6VT1C6VT0
00010000
7.2.26 Channel 7 volume trim, mute, bypass (0x19)
D7D6D5D4D3D2D1D0
C7MC7VBPC7VT4C7VT3C7VT2C7VT1C7VT0
00010000
7.2.27 Channel 8 volume trim, mute, bypass (0x1A)
D7D6D5D4D3D2D1D0
C8MC8VBPC8VT4C8VT3C8VT2C8VT1C8VT0
00010000
The volume structure of the STA309B consists of individual volume registers for each
channel and a master volume register that provides an offset to each channel’s volume
setting. There is also an additional offset for each channel called the channel volume trim.
The individual channel volumes are adjustable in 0.5 dB steps from +48 dB to -78 dB. As an
example if C5V = 0xXX or +XXX dB and MV = 0xXX or -XX dB, then the total gain for
channel 5 = XX dB. The channel volume trim is adjustable independently on each channel
from -10 dB to +10 dB in 1 dB steps. The master mute when set to 1 will mute all channels
at once, whereas the individual channel mutes (CnM) will mute only that channel. Both the
master mute and the channel mutes provide a "soft mute" with the volume ramping down to
mute in 8192 samples from the maximum volume setting at the internal processing rate
(~192 kHz). A "hard mute" can be obtained by commanding a value of 0xFF (255) to any
channel volume register or the master volume register. When volume offsets are provided
via the master volume register, any channel whose total volume is less than -91 dB will be
muted. All changes in volume take place at zero-crossings when ZCE = 1 (configuration
register H) on a per-channel basis as this creates the smoothest possible volume
Doc ID 022570 Rev 235/66
Page 36
RegistersSTA309B
transitions. When ZCE = 0, volume updates occur immediately. Each channel also contains
an individual channel volume bypass. If a particular channel has volume bypassed via the
CnVBP = 1 register, then only the channel volume setting for that particular channel affects
the volume setting, the master volume setting will not affect that channel. Each channel also
contains a channel mute. If CnM = 1, a soft mute is performed on that channel.
MV[7:0]Volume offset from channel value
0x000 dB
0x01-0.5 dB
0x02-1 dB
……
0x4C-38 dB
……
0xFE-127 dB
0xFFHardware channel mute
CnV[7:0]Volume
0x00+48 dB
0x01+47.5 dB
0x02+47 dB
……
0x5F+0.5 dB
0x600 dB
0x61-0.5 dB
……
0xFE-79.5 dB
0xFFHardware channel mute
CnVT[4:0]Volume
0x00 to 0x06+10 dB
0x07+9 dB
……
0x0F+1 dB
0x100 dB
0x11-1 dB
……
0x19-9 dB
0x1A to 0x1F-10 dB
36/66 Doc ID 022570 Rev 2
Page 37
STA309BRegisters
7.2.28 Channel input mapping channels 1 and 2 (0x1B)
D7D6D5D4D3D2D1D0
C2IM2C2IM1C2IM0C1IM2C1IM1C1IM0
001000
7.2.29 Channel input mapping channels 3 and 4 (0x1C)
D7D6D5D4D3D2D1D0
C4IM2C4IM1C4IM0C3IM2C3IM1C3IM0
011010
7.2.30 Channel input mapping channels 5 and 6 (0x1D)
D7D6D5D4D3D2D1D0
C6IM2C6IM1C6IM0C5IM2C5IM1C5IM0
101100
7.2.31 Channel input mapping channels 7 and 8 (0x1E)
D7D6D5D4D3D2D1D0
C8IM2C8M1C8IM0C7IM2C7IM1C7IM0
111110
Each channel received via I2S can be mapped to any internal processing channel via the
channel input mapping registers. This allows for flexibility in processing, simplifies output
stage designs, and enables the ability to perform crossovers. The default settings of these
registers map each I
000Channel 1
001Channel 2
010Channel 3
011Channel 4
100Channel 5
101Channel 6
110Channel 7
111Channel 8
2
S input channel to its corresponding processing channel.
CnIM[2:0]Serial input from
Doc ID 022570 Rev 237/66
Page 38
RegistersSTA309B
7.2.32 AUTO1 - AutoModes EQ, volume, GC (0x1F)
D7D6D5D4D3D2D1D0
AMDMAMGC2AMGC1AMGC0AMV1AMV0AMEQ1AMEQ0
00000000
BitRWRSTNameDescription
Biquad 2-6 mode is:
00: user-programmable
1:0RW0AMEQ[1:0]
By setting AMEQ to any setting other than 00 enables AutoMode EQ, biquads 1-5 are not
user programmable. Any coefficient settings for these biquads will be ignored. Also when
AutoMode EQ is used, the pre-scale value for channels 1-6 becomes hard-set to -18 dB.
AutoMode volume mode (MVOL) is:
00: MVOL 0.5 dB 256 steps (standard)
01: MVOL auto curve 30 steps
10: MVOL auto curve 40 steps
11: MVOL auto curve 50 steps
AutoMode gain compression/limiters mode is:
000: user programmable GC
001: AC no clipping
010: AC limited clipping (10%)
011: DRC nighttime listening mode
100: DRC TV commercial/channel AGC
101: AC 5.1 no clipping
110: AC 5.1 limited clipping (10%)
AutoMode 5.1 downmix:
7RW 0 AMDM
0: normal operation
1: channels 7-8 are 2-channel downmix of channels
1-6
The AutoMode downmix setting uses channels 7-8 of Mix#1 engine and therefore these
channels of this function are fixed and not allowed to be set by the user when in this mode.
Channels 1-6 must be arranged via channel mapping (registers CnIM), if necessary, in the
following manner for this operation:
Channel 1: left
Channel 2: right
Channel 3: left surround
Channel 4: right surround
Channel 5: center
Channel 6: LFE
Setting the AMBMME bit enables the proper mixing to take place for various preset bass
management configurations. Setting the AMBMXE bit enables the proper crossover filtering
in biquad #7 to take place. The crossover for bass management is always 2
nd
order
(24 dB/oct) and the crossover frequency is determined by register bits PREEQ.XO[2:0].
All configurations of Dolby Bass Management can be performed in the IC. These different
configurations are selected as they would be by the end-user.
The AutoMode bass management settings utilize channels 1-6 in the Mix #1 engine,
Channels 1-6 biquad #6, and channels 1-2 in the mix #2 engine in configuration #2. These
functions cannot be user-programmed while the bass management automode is active.
Not all settings are valid as some configurations are unlikely and do not have to be
supported by Dolby specifications.
Automatic crossover settings are provided or custom crossovers can be implemented using
the available programmable biquads.
Input channels must be mapped using the channel-mapping feature in the following manner
for bass management to be performed properly.
1: left front
2: right front
3: left rear
4: right rear
5: center
6: LFE
Bitfield100100
CSS - center speaker sizeOffLargeSmall
RSS - rear speaker sizeOffLargeSmall
Doc ID 022570 Rev 239/66
Page 40
RegistersSTA309B
Bitfield10
FSS - front speaker sizeLargeSmall
SUB - subwooferOnOff
When AMBMXE = 1, biquad #7 on channels 1-6 are utilized for the bass-management
crossover filter, this biquad is not user-programmable in this mode. The XO settings
determine the crossover frequency used, the crossover is 2
nd
order for both high-pass and
low-pass with a -3 dB cross point. Higher order filters can be obtained be programming
coefficients in other biquads if desired.
It is recommended to use settings of 120-160 Hz when using small, single driver satellite
speakers as the frequency response of these speakers normally is limited to this region.
Each internal processing channel can receive two possible inputs at the input to the biquad
block. The input can come either from the output of that channel’s MIX#1 engine or from the
output of the bass/treble (biquad #10) of the previous channel. In this scenario, channel 1
receives channel 8. This enables the use of more than 10 biquads on any given channel at
the expense of losing the number of separate internal processing channels.
BitRWRSTNameDescription
For n = 1 to 8:
0: input from channel n MIX#1 engine output - normal
Each internal processing channel can receive two possible sets of inputs at the inputs to the
Mix#1 block. The inputs can come from the outputs of the interpolation block as normally
occurs (CnMXLP = 0) or they can come from the outputs of the Mix#2 block. This enables
the use of additional filtering after the second mix block at the expense of losing this
processing capability on the channel.
BitRWRSTNameDescription
For n = 1 to 8:
0: inputs to channel n MIX#1 engine from interpolation
7:0RW0CnMXLP
outputs - normal operation
1: inputs to channel n MIX#1 engine from MIX#2 engine
outputs - loop operation
EQ control can be bypassed on a per-channel basis. If EQ control is bypassed on a given
channel, the prescale and all 10 filters (high-pass, biquads, de-emphasis, bass
management crossover, bass, treble in any combination) are bypassed for that channel.
BitRWRSTNameDescription
7:0RW0CnEQBP
7.2.44 Tone control bypass (0x2B)
D7D6D5D4D3D2D1D0
C8TCBC7TCBC6TCBC5TCBC4TCBC3TCBC2TCBC1TCB
00000000
Tone control (bass/treble) can be bypassed on a per-channel basis. If tone control is
bypassed on a given channel, the two filters that tone control utilizes are made available as
user-programmable biquads #9 and #10.
For n = 1 to 8:
0: perform EQ on channel n - normal operation
1: bypass EQ on channel n
44/66 Doc ID 022570 Rev 2
Page 45
STA309BRegisters
7.2.45 Tone control (0x2C)
D7D6D5D4D3D2D1D0
TTC3TTC2TTC1TTC0BTC3BTC2BTC1BTC0
01110111
This is the tone control boost / cut as a function of the BTC and TTC bits.
The STA309B includes two independent limiter blocks. The purpose of the limiters is to
automatically reduce the dynamic range of a recording to prevent the outputs from clipping
in anti-clipping mode or to actively reduce the dynamic range for a better listening
environment such as a nighttime listening mode which is often needed for DVDs. The two
modes are selected via the DRC bit in configuration register B, bit 7 address 0x02. Each
channel can be mapped to either limiter or not mapped, meaning that the channel will clip
when 0 dBFS is exceeded. Each limiter will look at the present value of each channel that is
mapped to it, select the maximum absolute value of all these channels, perform the limiting
algorithm on that value, and then, if needed, adjust the gain of the mapped channels in
unison.
The limiter attack thresholds are determined by the LnAT registers. It is recommended in
anti-clipping mode to set this to 0 dBFS, which corresponds to the maximum unclipped
output power of an FFX amplifier. Since gain can be added digitally within the STA309B it is
possible to exceed 0 dBFS or any other LnAT setting. When this occurs, the limiter, when
active, will automatically start reducing the gain. The rate at which the gain is reduced when
the attack threshold is exceeded is dependent upon the attack rate register setting for that
limiter. The gain reduction occurs on a peak-detect algorithm.
The release of the limiter, when the gain is again increased, is dependent on an RMS-detect
algorithm. The output of the volume/limiter block is passed through a RMS filter. The output
of this filter is compared to the release threshold, determined by the release threshold
register. When the RMS filter output falls below the release threshold, the gain is again
increased at a rate dependent upon the release rate register. The gain can never be
increased past it's set value and therefore the release will only occur if the limiter has
already reduced the gain. The release threshold value can be used to set what is effectively
a minimum dynamic range which is helpful as overlimiting can reduce the dynamic range to
virtually zero and cause program material to sound lifeless.
46/66 Doc ID 022570 Rev 2
Page 47
STA309BRegisters
In AC mode the attack and release thresholds are set relative to full-scale. In DRC mode the
attack threshold is set relative to the maximum volume setting of the channels mapped to
that limiter and the release threshold is set relative to the maximum volume setting, plus the
attack threshold.
Figure 7.Basic limiter and volume flow diagram
RMSLimiter
Gain/Volume
tuptuOtupnI
Gain
CnLS[1,0]Channel limiter mapping
00Channel has limiting disabled
01Channel is mapped to limiter #1
10Channel is mapped to limiter #2
LnA[3:0]Attack rate (dB/ms)
Attenuation
Saturation
00003.1584 (fast)
00012.7072
00102.2560
00111.8048
01001.3536
01010.9024
01100.4512
01110.2256
10000.1504
10010.1123
10100.0902
10110.0752
11000.0645
11010.0564
11100.0501
11110.0451 (slow)
Doc ID 022570 Rev 247/66
Page 48
RegistersSTA309B
LnR[3:0]Release rate (dB/ms)
00000.5116 (fast)
00010.1370
00100.0744
00110.0499
01000.0360
01010.0299
01100.0264
01110.0208
10000.0198
10010.0172
10100.0147
10110.0137
11000.0134
11010.0117
11100.0110
11110.0104 (slow)
LnAT[3:0]
0000-12
0001-10
0010-8
0011-6
0100-4
0101-2
01100
0111+2
1000+3
1001+4
1010+5
1011+6
1100+7
1101+8
Anti-clipping (AC)
(dB relative to F
)
S
1110+9
1111+10
48/66 Doc ID 022570 Rev 2
Page 49
STA309BRegisters
LnRT[3:0]
0000-∞
0001-29 dB
0010-20 dB
0011-16 dB
0100-14 dB
0101-12 dB
0110-10 dB
0111-8 dB
1000-7 dB
1001-6 dB
1010-5 dB
1011-4 dB
1100-3 dB
1101-2 dB
Anti-clipping (AC)
(dB relative to F
)
S
1110-1 dB
1111-0 dB
LnAT[3:0]
0000-31
0001-29
0010-27
0011-25
0100-23
0101-21
0110-19
0111-17
1000-16
1001-15
1010-14
1011-13
1100-12
Dynamic range compression (DRC)
(dB relative to volume)
1101-10
1110-7
1111-4
Doc ID 022570 Rev 249/66
Page 50
RegistersSTA309B
LnRT[3:0]
0000-∞
0001-38 dB
0010-36 dB
0011-33 dB
0100-31 dB
0101-30 dB
0110-28 dB
0111-26 dB
1000-24 dB
1001-22 dB
1010-20 dB
1011-18 dB
1100-15 dB
1101-12 dB
Dynamic range compression (DRC)
(db relative to volume + LnAT)
1110-9 dB
1111-6 dB
7.2.53 Channel 1 and 2 output timing (0x33)
D7D6D5D4D3D2D1D0
C2OT2C2OT1C2OT0C1OT2C1OT1C1OT0
100000
7.2.54 Channel 3 and 4 output timing (0x34)
D7D6D5D4D3D2D1D0
C4OT2C4OT1C4OT0C3OT2C3OT1C3OT0
110010
7.2.55 Channel 5 and 6 output timing (0x35)
D7D6D5D4D3D2D1D0
C6OT2C6OT1C6OT0C5OT2C5OT1C5OT0
101001
50/66 Doc ID 022570 Rev 2
Page 51
STA309BRegisters
7.2.56 Channel 7 and 8 output timing (0x36)
D7D6D5D4D3D2D1D0
C8OT2C8OT1C8OT0C7OT2C7OT1C7OT0
111011
The centering of the individual channel PWM output periods can be adjusted by the output
timing registers. The PWM slot settings can be chosen to ensure that pulse transitions do
not occur at the same time on different channels using the same power device. There are 8
possible settings, the appropriate setting is based on the application and connections to the
FFX power devices.
CnOT[2:0]PWM slot
0001
0012
0103
0114
1005
1016
1107
1118
7.2.57 Channel I2S output mapping channels 1 and 2 (0x37)
D7D6D5D4D3D2D1D0
C2OM2C2OM1C2OM0C1OM2C1OM1C1OM0
001000
7.2.58 Channel I2S output mapping channels 3 and 4 (0x38)
D7D6D5D4D3D2D1D0
C4OM2C4OM1C4OM0C3OM2C3OM1C3OM0
011010
7.2.59 Channel I2S output mapping channels 5 and 6 (0x39)
D7D6D5D4D3D2D1D0
C6OM2C6OM1C6OM0C5OM2C5OM1C5OM0
101100
Doc ID 022570 Rev 251/66
Page 52
RegistersSTA309B
7.2.60 Channel I2S output mapping channels 7 and 8 (0x3A)
D7D6D5D4D3D2D1D0
C8OM2C8M1C8OM0C7OM2C7OM1C7OM0
111110
Each I2S output channel can receive data from any channel output of the volume block.
Which channel a particular I
2
S output receives is dependent upon that channel’s CnOM
register bits.
CnOM[2:0]Serial output from
000Channel 1
001Channel 2
010Channel 3
011Channel 4
100Channel 5
101Channel 6
110Channel 7
111Channel 8
7.2.61 Coefficient address register 1 (0x3B)
D7D6D5D4D3D2D1D0
CFA9CFA8
00
7.2.62 Coefficient address register 2 (0x3C)
D7D6D5D4D3D2D1D0
CFA7CFA6CFA5CFA4CFA3CFA2CFA1CFA0
00000000
7.2.63 Coefficient b1 data register, bits 23:16 (0x3D)
D7D6D5D4D3D2D1D0
C1B23C1B22C1B21C1B20C1B19C1B18C1B17C1B16
00000000
52/66 Doc ID 022570 Rev 2
Page 53
STA309BRegisters
7.2.64 Coefficient b1 data register, bits 15:8 (0x3E)
D7D6D5D4D3D2D1D0
C1B15C1B14C1B13C1B12C1B11C1B10C1B9C1B8
00000000
7.2.65 Coefficient b1 data register, bits 7:0 (0x3F)
D7D6D5D4D3D2D1D0
C1B7C1B6C1B5C1B4C1B3C1B2C1B1C1B0
00000000
7.2.66 Coefficient b2 data register, bits 23:16 (0x40)
D7D6D5D4D3D2D1D0
C2B23C2B22C2B21C2B20C2B19C2B18C2B17C2B16
00000000
7.2.67 Coefficient b2 data register, bits 15:8 (0x41)
D7D6D5D4D3D2D1D0
C2B15C2B14C2B13C2B12C2B11C2B10C2B9C2B8
00000000
7.2.68 Coefficient b2 data register, bits 7:0 (0x42)
D7D6D5D4D3D2D1D0
C2B7C2B6C2B5C2B4C2B3C2B2C2B1C2B0
00000000
7.2.69 Coefficient a1 data register, bits 23:16 (0x43)
D7D6D5D4D3D2D1D0
C1B23C1B22C1B21C1B20C1B19C1B18C1B17C1B16
00000000
7.2.70 Coefficient a1 data register, bits 15:8 (0x44)
D7D6D5D4D3D2D1D0
C3B15C3B14C3B13C3B12C3B11C3B10C3B9C3B8
00000000
Doc ID 022570 Rev 253/66
Page 54
RegistersSTA309B
7.2.71 Coefficient a1 data register, bits 7:0 (0x45)
D7D6D5D4D3D2D1D0
C3B7C3B6C3B5C3B4C3B3C3B2C3B1C3B0
00000000
7.2.72 Coefficient a2 data register, bits 23:16 (0x46)
D7D6D5D4D3D2D1D0
C4B23C4B22C4B21C4B20C4B19C4B18C4B17C4B16
00000000
7.2.73 Coefficient a2 data register, bits 15:8 (0x47)
D7D6D5D4D3D2D1D0
C4B15C4B14C4B13C4B12C4B11C4B10C4B9C4B8
00000000
7.2.74 Coefficient a2 data register, bits 7:0 (0x48)
D7D6D5D4D3D2D1D0
C4B7C4B6C4B5C4B4C4B3C4B2C4B1C4B0
00000000
7.2.75 Coefficient b0 data register, bits 23:16 (0x49)
D7D6D5D4D3D2D1D0
C5B23C5B22C5B21C5B20C5B19C5B18C5B17C5B16
00000000
7.2.76 Coefficient b0 data register, bits 15:8 (0x4A)
D7D6D5D4D3D2D1D0
C5B15C5B14C5B13C5B12C5B11C5B10C5B9C5B8
00000000
7.2.77 Coefficient b0 data register, bits 7:0 (0x4B)
D7D6D5D4D3D2D1D0
C5B7C5B6C5B5C5B4C5B3C5B2C5B1C5B0
00000000
54/66 Doc ID 022570 Rev 2
Page 55
STA309BRegisters
7.2.78 Coefficient write control register (0x4C)
D7D6D5D4D3D2D1D0
WAW1
00
Coefficients for EQ and bass management are handled internally in the STA309B via RAM.
Access to this RAM is available to the user via an I
A collection of I
2
C registers are dedicated to this function. One contains a coefficient base
2
C register interface.
address, five sets of three store the values of the 24-bit coefficients to be written or that were
read, and one contains bits used to control the write of the coefficient(s) to RAM. The
following are instructions for reading and writing coefficients.
7.3 Reading a coefficient from RAM
1.write top 2 bits of address to I2C register 0x3B
2. write bottom 8 bits of address to I
3. read top 8 bits of coefficient in I
4. read middle 8 bits of coefficient in I
5. read bottom 8 bits of coefficient in I
2
C register 0x3C
2
C address 0x3D
2
C address 0x3E
2
C address 0x3F
7.4 Reading a set of coefficients from RAM
1.write top 2 bits of address to I2C register 0x3B
2. write bottom 8 bits of address to I
3. read top 8 bits of coefficient in I
4. read middle 8 bits of coefficient in I
5. read bottom 8 bits of coefficient in I
6. read top 8 bits of coefficient b2 in I
7. read middle 8 bits of coefficient b2 in I
8. read bottom 8 bits of coefficient b2 in I
9. read top 8 bits of coefficient a1 in I
10. read middle 8 bits of coefficient a1 in I
11. read bottom 8 bits of coefficient a1 in I
12. read top 8 bits of coefficient a2 in I
13. read middle 8 bits of coefficient a2 in I
14. read bottom 8 bits of coefficient a2 in I
15. read top 8 bits of coefficient b0 in I
16. read middle 8 bits of coefficient b0 in I
17. read bottom 8 bits of coefficient b0 in I
2
C register 0x3C
2
C address 0x3D
2
C address 0x3E
2
C address 0x3F
2
C address 0x40
2
C address 0x41
2
C address 0x42
2
C address 0x43
2
C address 0x44
2
C address 0x45
2
C address 0x46
2
C address 0x47
2
C address 0x48
2
C address 0x49
2
C address 0x4A
2
C address 0x4B
Doc ID 022570 Rev 255/66
Page 56
RegistersSTA309B
7.5 Writing a single coefficient to RAM
1.write top 2 bits of address to I2C register 0x3B
2. write bottom 8 bits of address to I
3. write top 8 bits of coefficient in I
4. write middle 8 bits of coefficient in I
5. write bottom 8 bits of coefficient in I
6. write 1 to W1 bit in I
2
C address 0x4C
2
C register 0x3C
2
C address 0x3D
2
C address 0x3E
2
C address 0x3F
7.6 Writing a set of coefficients to RAM
1.write top 2 bits of starting address to I2C register 0x3B
2. write bottom 8 bits of starting address to I
3. write top 8 bits of coefficient b1 in I
4. write middle 8 bits of coefficient b1 in I
5. write bottom 8 bits of coefficient b1 in I
6. write top 8 bits of coefficient b2 in I
7. write middle 8 bits of coefficient b2 in I
8. write bottom 8 bits of coefficient b2 in I
9. write top 8 bits of coefficient a1 in I
10. write middle 8 bits of coefficient a1 in I
11. write bottom 8 bits of coefficient a1 in I
12. write top 8 bits of coefficient a2 in I
13. write middle 8 bits of coefficient a2 in I
14. write bottom 8 bits of coefficient a2 in I
15. write top 8 bits of coefficient b0 in I
16. write middle 8 bits of coefficient b0 in I
17. write bottom 8 bits of coefficient b0 in I
18. write 1 to WA bit in I
2
C address 0x4C
2
C register 0x3C
2
C address 0x3D
2
C address 0x3E
2
C address 0x3F
2
C address 0x40
2
C address 0x41
2
C address 0x42
2
C address 0x43
2
C address 0x44
2
C address 0x45
2
C address 0x46
2
C address 0x47
2
C address 0x48
2
C address 0x49
2
C address 0x4A
2
C address 0x4B
The mechanism for writing a set of coefficients to RAM provides a method of updating the
five coefficients corresponding to a given biquad (filter) simultaneously to avoid possible
unpleasant acoustic side-effects.
When using this technique, the 10-bit address specifies the address of the biquad b1
coefficient (for example, decimals 0, 5, 10, 15, …, 100, … 395), and the STA309B generates
the RAM addresses as offsets from this base value to write the complete set of coefficient
data.
56/66 Doc ID 022570 Rev 2
Page 57
STA309BEqualization and mixing
8 Equalization and mixing
Figure 8.Channel mixer
CxMIX1
Channel 1
CxMIX2
Channel 2
CxMIX3
Channel 3
8.1 Post-scale
The STA309B provides one additional multiplication after the last interpolation stage and
before the distortion compensation on each channel. This is a 24-bit signed fractional
multiplier.
The scale factor for this multiplier is loaded into RAM using the same I
biquad coefficients and the bass-management.
This post-scale factor can be used in conjunction with an ADC-equipped microcontroller to
perform power-supply error correction. All channels can use channel 1 by setting the postscale link bit.
Table 9.RAM block for biquads, mixing, and bass management
Channel 4
Channel 5
Channel 6
Channel 7
Channel 8
CxMIX4
CxMIX5
CxMIX6
CxMIX7
CxMIX8
Channel x
2
C registers as the
Index
(decimal)
Index
(hex)
CoefficientDefault
00x00Channel 1 - Biquad 1C1H10 (b1/2)0x000000
10x01C1H11 (b2)0x000000
20x02C1H12 (a1/2)0x000000
30x03C1H13 (a2)0x000000
40x04C1H14 (b0/2)0x400000
50x05Channel 1 - Biquad 2C1H200x000000
Doc ID 022570 Rev 257/66
Page 58
Equalization and mixingSTA309B
Table 9.RAM block for biquads, mixing, and bass management (continued)
Index
(decimal)
……………
490x31Channel 1 - Biquad 10C1HA40x400000
500x32Channel 2 - Biquad 1C2H100x000000
510x33C2H110x000000
……………
990x63Channel 2 - Biquad 10C2HA40x4000000
1000x64Channel 3 - Biquad 1C3H100x000000
……………
3990x18FChannel 8 - Biquad 10C8HA40x400000
4000x190Channel 1 - Pre-ScaleC1PreS0x7FFFFF
4010x191Channel 2 - Pre-ScaleC2PreS0x7FFFFF
402 0x192Channel 3 - Pre-ScaleC3PreS0x7FFFFF
……………
407 0x197Channel 8 - Pre-ScaleC8PreS0x7FFFFF
4080x198Channel 1 - Post-ScaleC1PstS0x7FFFFF
4090x199Channel 2 - Post-ScaleC2PstS0x7FFFFF
……………
Index
(hex)
CoefficientDefault
4150x19FChannel 8 - Post-ScaleC8PstS0x7FFFFF
4160x1A0Channel 1 - Mix#1 1C1MX110x7FFFFF
4170x1A1Channel 1 - Mix#1 2C1MX120x000000
……………
4230x1A7Channel 1 - Mix#1 8C1MX180x000000
4240x1A8Channel 2 - Mix#1 1C2MX110x000000
4250x1A9Channel 2 - Mix#1 2C2MX120x7FFFFF
……………
4630x1CFChannel 8 - Mix#1 8C8MX180x7FFFFF
4640x1D0Channel 1 - Mix#2 1C1MX210x7FFFFF
4650x1D1Channel 1 - Mix#2 2C1MX220x000000
……………
4710x1D7Channel 1 - Mix#2 8C1MX280x000000
4720x1D8Channel 2 - Mix#2 1C2MX210x000000
4730x1D9Channel 2 - Mix#2 2C2MX220x7FFFFF
……………
5270x20FChannel 8 - Mix#2 8C8MX280x7FFFFF
58/66 Doc ID 022570 Rev 2
Page 59
STA309BEqualization and mixing
8.2 Variable maximum power correction
8.2.1 MPCC1-2 (0x4D, 0x4E)
The MPCC bits determine the 16 MSBs of the MPC compensation coefficient. This
coefficient is used in place of the default coefficient when MPCV = 1.
D7D6D5D4D3D2D1D0
MPCC15MPCC14MPCC13MPCC12MPCC11MPCC10MPCC9MPCC8
00101101
D7D6D5D4D3D2D1D0
MPCC7MPCC6MPCC5MPCC4MPCC3MPCC2MPCC1MPCC0
11000000
8.3 Variable distortion compensation
8.3.1 DCC1-2 (0x4F, 0x50)
The DCC bits determine the 16 MSBs of the distortion compensation coefficient. This
coefficient is used in place of the default coefficient when DCCV = 1.
D7D6D5D4D3D2D1D0
DCC15DCC14DCC13DCC12DCC11DCC10DCC9DCC8
11110011
D7D6D5D4D3D2D1D0
DCC7DCC6DCC5DCC4DCC3DCC2DCC1DCC0
00110011
Doc ID 022570 Rev 259/66
Page 60
Equalization and mixingSTA309B
8.4 PSCorrect registers
ADC is used to input ripple data to SDI78. The left channel (7) is used internally. No audio
data can therefore be used on these channels, although all channel mapping and mixing
from other inputs to channels 7 and 8 internally are still valid.
8.4.1 PSC1-2: ripple correction value (RCV) (0x51, 0x52)
This function is equivalent to the negative maximum ripple peak as a percentage of Vcc
(MPR), scaled by the inverse of the maximum ripple p-p as a percentage of full-scale analog
input to ADC. It is represented as a 1.11 signed fractional number.
D7D6D5D4D3D2D1D0
RCV11RCV10RCV9RCV8RCV7RCV6RCV5RCV4
00000000
D7D6D5D4D3D2D1D0
RCV3RCV2RCV1RCV0CNV11CNV10CNV9CNV8
00001111
8.4.2 PSC3: correction normalization value (CNV) (0x53)
This function is equivalent to 1 / (1+MPR) expressed as a 0.12 unsigned fractional number.
D7D6D5D4D3D2D1D0
CNV7CNV6CNV5CNV4CNV3CNV2CNV1CNV0
11111111
8.5 Digital pop-free operation in single-ended mode
The STA309B pop-free feature allows digitally pre-loading the bypass capacitor between the
filtered amplifier output and the load in single-ended applications. Normally, a bypass
capacitor needs to be preloaded to half of the power supply in order to avoid having popnoise at PWM startup.
By enabling the STA309B pop-free feature, it is possible to preload the capacitor using the
amplifier, without needing the resistive partition. By forcing a ramp, it is possible to gradually
load the capacitor from zero to half the supply with the PWM signal starting from near 0%
duty cycle to 50% duty cycle. This “active load” is also faster than the resistive partition
method.
60/66 Doc ID 022570 Rev 2
Page 61
STA309BEqualization and mixing
Figure 9.Typical single-ended driver - power stage configuration
Cbyp
Cbyp
Cbyp
yxTUOyxTUO
yxTUOyxTUO
INxy
INxy
INxy
STA5xx
STA5xx
STA309B
STA309B
STA309B
EAPD
EAPD
EAPD
The R pull-down resistor (typical value: 3.3 kOhm) is placed to ensure that there is zero
voltage across the load and the bypass capacitor is discharged when the amplifier is in
tristate mode.
STA5xx
PWRDN
PWRDN
PWRDN
TRI-STATE
TRI-STATE
TRI-STATE
yxTUOyxTUO
8.5.1 PFCXON: digital pop-free register (0x5F)
D7D6D5D4D3D2D1D0
CH8CH7CH6CH5CH4CH3CH2CH1
11111111
PFCXON[I]:
when ‘1’, digital pop free is active on channel i+1 when in binary mode (see
Section 7.2.5: Configuration register E (0x04) on page 28)
when ‘0’, digital pop free is not active on channel i+1
8.5.2 Timing settings
Figure 10. Pop-free timing diagram
EAPD
EAPD
OUT
OUT
GND
GND
VCC/2
VCC/2
…
…
TSPUPT
TSPUPT
RAMPTIM
RAMPTIM
RAMPTIM
Doc ID 022570 Rev 261/66
RAMPTIM
LSPDWT
LSPDWT
Page 62
Equalization and mixingSTA309B
8.5.3 RAMPTIM: ramp duration register (0x66)
D7D6D5D4D3D2D1D0
TR7TR6TR5TR4TR3TR2TR1TR0
00000100
This function is the total pop-free ramp duration (same value for ramp-up and ramp-down
and for all channels); default is 400 ms (range is 0-25 sec.).
8.5.4 TSPUPT: waiting time after EAPD (0x67 - 0x68)
D7D6D5D4D3D2D1D0
TP15TP14TP13TP12TP11TP10TP9TP8
00010000
D7D6D5D4D3D2D1D0
TP7TP6TP5TP4TP3TP2TP1TP0
00000000
This function is the waiting time after EAPD=1 to start ramp-up (same value for all
channels); default is 680 ms (range is 0-11 sec.). In a typical application the EAPD line is
connected to the TRI-STATE input pin of the STA5xx power stage through the RC filter (see
Figure 9 on page 61). TSPUPT shall be greater than the RC time constant.
8.5.5 LSPDWT: waiting time before EAPD (0x71 - 0x72)
D7D6D5D4D3D2D1D0
TL15TL14TLP13TL12TL11TL10TL9TL8
00100000
D7D6D5D4D3D2D1D0
TL7TL6TL5TL4TL3TL2TL1TL0
00000000
This function is the waiting time after end of ramp-down to assert EAPD=0 (same value for
all channels); default is 1.4 sec. (range is 0-11 sec.). If a resistor is placed in parallel to the
output filter capacitor (see Figure 9 on page 61), the LSPDWT value is 0x00.
62/66 Doc ID 022570 Rev 2
Page 63
STA309BPackage information
9 Package information
In order to meet environmental requirements, ST offers these devices in different grades of
ECOPACK
specifications, grade definitions and product status are available at: www.st.com.
ECOPACK
®
packages, depending on their level of environmental compliance. ECOPACK®
®
is an ST trademark.
Table 10.VFQFPN-56 (8 x 8 mm) package dimensions
mm
Reference
Min. Typ.Max.
A0.800.901.00
A100.05
D8.00
D2See exposed pad variations
E8.00
E2See exposed pad variations
b0.250.300.35
b10.200.250.30
e (pad pitch)
(1)
L10.050.15
aaa0.15
bbb0.10
ddd0.05
eee0.08
fff0.10
ccc0.10
1. Refer to Figure 11.
Table 11.Exposed pad variations
D2E2
Variati on
Min. Typ. MaxMin. Typ. Max.
A5.855.905.955.855.905.95
B4.254.304.354.254.304.35
Doc ID 022570 Rev 263/66
Page 64
Package informationSTA309B
Figure 11. VFQFPN-56 (8 x 8 mm) package outline
The axis of each pad must lie simultaneously in both tolerance zones.
(4) - The terminal A1 corner must be identified on the top surface through inked or lasered mark dot.
A distinguishing feature is allowable on the bottom surface of the package, chamfer at die paddle corner to
identify the terminal A1. Exact shape of each corner is optional.
(5) – All dimensions are in mm.
64/66 Doc ID 022570 Rev 2
826820
Page 65
STA309BRevision history
10 Revision history
Table 12.Document revision history
DateRevisionChanges
09-Dec-20111Initial release
24-Jan-20122Updated title and Description on page 1
Doc ID 022570 Rev 265/66
Page 66
STA309B
Please Read Carefully:
Information in this document is provided solely in connection with ST products. STMicroelectronics NV and its subsidiaries (“ST”) reserve the
right to make changes, corrections, modifications or improvements, to this document, and the products and services described herein at any
time, without notice.
All ST products are sold pursuant to ST’s terms and conditions of sale.
Purchasers are solely responsible for the choice, selection and use of the ST products and services described herein, and ST assumes no
liability whatsoever relating to the choice, selection or use of the ST products and services described herein.
No license, express or implied, by estoppel or otherwise, to any intellectual property rights is granted under this document. If any part of this
document refers to any third party products or services it shall not be deemed a license grant by ST for the use of such third party products
or services, or any intellectual property contained therein or considered as a warranty covering the use in any manner whatsoever of such
third party products or services or any intellectual property contained therein.
UNLESS OTHERWISE SET FORTH IN ST’S TERMS AND CONDITIONS OF SALE ST DISCLAIMS ANY EXPRESS OR IMPLIED
WARRANTY WITH RESPECT TO THE USE AND/OR SALE OF ST PRODUCTS INCLUDING WITHOUT LIMITATION IMPLIED
WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE (AND THEIR EQUIVALENTS UNDER THE LAWS
OF ANY JURISDICTION), OR INFRINGEMENT OF ANY PATENT, COPYRIGHT OR OTHER INTELLECTUAL PROPERTY RIGHT.
UNLESS EXPRESSLY APPROVED IN WRITING BY TWO AUTHORIZED ST REPRESENTATIVES, ST PRODUCTS ARE NOT
RECOMMENDED, AUTHORIZED OR WARRANTED FOR USE IN MILITARY, AIR CRAFT, SPACE, LIFE SAVING, OR LIFE SUSTAINING
APPLICATIONS, NOR IN PRODUCTS OR SYSTEMS WHERE FAILURE OR MALFUNCTION MAY RESULT IN PERSONAL INJURY,
DEATH, OR SEVERE PROPERTY OR ENVIRONMENTAL DAMAGE. ST PRODUCTS WHICH ARE NOT SPECIFIED AS "AUTOMOTIVE
GRADE" MAY ONLY BE USED IN AUTOMOTIVE APPLICATIONS AT USER’S OWN RISK.
Resale of ST products with provisions different from the statements and/or technical features set forth in this document shall immediately void
any warranty granted by ST for the ST product or service described herein and shall not create or extend in any manner whatsoever, any
liability of ST.
ST and the ST logo are trademarks or registered trademarks of ST in various countries.
Information in this document supersedes and replaces all information previously supplied.
The ST logo is a registered trademark of STMicroelectronics. All other names are the property of their respective owners.