SLOS838C July 2013 – August 2015 TAS5731M
PRODUCTION DATA.
The TAS5731M an efficient 30-W stereo I2S input Class-D audio power amplifier. The digital auto processor of the device uses noise shaping and customized correction algorithms to achieve a great power efficiency and high audio performance. Also, the device has up to eight Equalizers per channel and two -band configurable Dynamic Range Control (DRC).
The device needs only a single DVDD supply in addition to the higher-voltage PVDD power supply. An internal voltage regulator provides suitable voltage levels for the gate drive circuit. The wide PVDD power supply range of the device enables its use in a multitude of applications.
The TAS5731M is a slave-only device that is controlled by a bidirectional I2C interface that supports both 100-kHz and 400-kHz data transfer rates for single- and multiple-byte write and read operations. This control interface is used to program the registers of the device and read the device status.
The PWM of this device operates with a carrier frequency between 384 kHz and 354 kHz, depending the sampling rate. This device allows the use of the same clock signal for both MCLK and BCLK (64xFs) when using a sampling frequency of 44.1 kHz or 48 kHz.
This device can be used in three different modes of operation, Stereo BTL mode, Single filter PBTL mono mode, and 2.1 mode.
To facilitate system design, the TAS5731M needs only a 3.3-V supply in addition to the PVDD power-stage supply. An internal voltage regulator provides suitable voltage levels for the gate drive circuitry. Additionally, all circuitry requiring a floating voltage supply, for example, the high-side gate drive, is accommodated by built-in bootstrap circuitry requiring only a few external capacitors.
In order to provide good electrical and acoustical characteristics, the PWM signal path for the output stage is designed as identical half-bridges with separate bootstrap pins (BST_x). The gate-drive voltage (GVDD_OUT) is derived from the PVDD voltage. Special attention must be paid to placing all decoupling capacitors as close to their associated pins as possible. Inductance between the power-supply pins and decoupling capacitors must be avoided.
For a properly functioning bootstrap circuit, a small ceramic capacitor must be connected from each bootstrap pin (BST_x) to the power-stage output pin (OUT_x). When the power-stage output is low, the bootstrap capacitor is charged through an internal diode connected between the gate-drive regulator output pin (GVDD_OUT) and the bootstrap pin. When the power-stage output is high, the bootstrap capacitor potential is shifted above the output potential and thus provides a suitable voltage supply for the high-side gate driver. In an application with PWM switching frequencies in the range from 288 kHz to 384 kHz, it is recommended to use 10-nF, X7R ceramic capacitors, size 0603 or 0805, for the bootstrap supply. These 10-nF capacitors ensure sufficient energy storage, even during minimal PWM duty cycles, to keep the high-side power-stage FET (LDMOS) fully turned on during the remaining part of the PWM cycle.
Special attention must be paid to the power-stage power supply; this includes component selection, PCB placement, and routing. As indicated, each half-bridge has independent power-stage supply pins (PVDD_x). For optimal electrical performance, EMI compliance, and system reliability, it is important that each PVDD_x pin is decoupled with a 100-nF, X7R ceramic capacitor placed as close as possible to each supply pin.
The TAS5731M is fully protected against erroneous power-stage turnon due to parasitic gate charging.
ADR/FAULT is an input pin during power up. It can be pulled HIGH or LOW through a resistor as shown in the Typical Applications sections in order to set the I2C address. Pulling this pin HIGH through the resistor results in setting the I2C 7-bit address to 0011011 (0x36), and pulling it LOW through the resistor results in setting the address to 0011010 (0x34).
During power up, the address of the device is latched in, freeing up the ADR/FAULT pin to be used as a fault notification output. When configured as a fault output, the pin will go low when a fault occurs and will return to its default state when register 0x02 is cleared. The behavior of the pin in response to a fault condition is to be pulled low immediately upon an error. The device then waits for a period of time determined by BKND_ERR Register (0x1C) before attempting to resume playback. If the error has been cleared when the device attempts to resume playback, playback will resume, the ADR/FAULT pin will remain high, and normal operation will resume. If the error has not been removed, then the device will immediately re-enter the protected state and wait again for the predetermined period of time to pass. The device will pull the fault pin low for over-current, over-temperature, and under-voltage lock-out.
The TAS5731M supports parallel BTL (PBTL) mode with OUT_A/OUT_B (and OUT_C/OUT_D) connected before the LC filter. In addition to connecting OUT_A/OUT_B and OUT_C/OUT_D, BST_A/BST_B and BST_C/BST_D must also be connected before the LC filter, as shown in the Figure 71. In order to put the part in PBTL configuration, drive PBTL (pin 8) HIGH. This synchronizes the turnoff of half-bridges A and B (and similarly C/D) if an overcurrent condition is detected in either half-bridge. There is a pulldown resistor on the PBTL pin that configures the part in BTL mode if the pin is left floating.
PWM output multiplexers must be updated to set the device in PBTL mode. Output Mux Register (0x25) must be written with a value of 0x0110 3245.
The device has independent, fast-reacting current detectors on all high-side and low-side power-stage FETs. The detector outputs are closely monitored by a protection system. If the high-current condition situation persists, that is, the power stage is being overloaded, a protection system triggers a latching shutdown, resulting in the power stage being set in the high-impedance (Hi-Z) state. The device returns to normal operation once the fault condition (that is, a short circuit on the output) is removed. Current-limiting and overcurrent protection are not independent for half-bridges. That is, if the bridge-tied load between half-bridges A and B causes an overcurrent fault, half-bridges A, B, C, and D are shut down.
The TAS5731M has an overtemperature-protection system. If the device junction temperature exceeds 150°C (nominal), the device is put into thermal shutdown, resulting in all half-bridge outputs being set in the high-impedance (Hi-Z) state. The TAS5731M recovers automatically once the temperature drops approximately 30°C.
The UVP and POR circuits of the TAS5731M fully protect the device in any power-up/down and brownout situation. While powering up, the POR circuit resets the overload circuit (OLP) and ensures that all circuits are fully operational when the PVDD and AVDD supply voltages reach 7.6 V and 2.7 V, respectively. Although PVDD and AVDD are independently monitored, a supply-voltage drop below the UVP threshold on AVDD or either PVDD pin results in all half-bridge outputs immediately being set in the high-impedance (Hi-Z) state.
The SSTIMER pin uses a capacitor connected between this pin and ground to control the output duty cycle when exiting all-channel shutdown. The capacitor on the SSTIMER pin is slowly charged through an internal current source, and the charge time determines the rate at which the output transitions from a near-zero duty cycle to the desired duty cycle. This allows for a smooth transition that minimizes audible pops and clicks. When the part is shut down, the drivers are placed in the high-impedance state and transition slowly down through a 3-kΩ resistor, similarly minimizing pops and clicks. The shutdown transition time is independent of the SSTIMER pin capacitance. Larger capacitors increase the start-up time, while capacitors smaller than 2.2 nF decrease the start-up time. The SSTIMER pin can be left floating for BD modulation.
The TAS5731M is an I2S slave device. It accepts MCLK, SCLK, and LRCLK. The digital audio processor (DAP) supports all the sample rates and MCLK rates that are defined in the Clock Control Register (0x00).
The TAS5731M checks to verify that SCLK is a specific value of 32 fS, 48 fS, or 64 fS. The DAP only supports a 1 × fS LRCLK. The timing relationship of these clocks to SDIN is shown in subsequent sections. The clock section uses MCLK or the internal oscillator clock (when MCLK is unstable, out of range, or absent) to produce the internal clock (DCLK) running at 512 times the PWM switching frequency.
The DAP can autodetect and set the internal clock control logic to the appropriate settings for all supported clock rates as defined in the clock-control register.
The TAS5731M has robust clock error handling that uses the built-in trimmed oscillator clock to quickly detect changes/errors. Once the system detects a clock change/error, it mutes the audio (through a single-step mute) and then forces PLL to limp using the internal oscillator as a reference clock. Once the clocks are stable, the system autodetects the new rate and reverts to normal operation. During this process, the default volume is restored in a single step (also called hard unmute). The ramp process can be programmed to ramp back slowly (also called soft unmute) as defined in volume register (0x0E).
The TAS5731M DAP device uses noise-shaping and customized nonlinear correction algorithms to achieve high power efficiency and high-performance digital audio reproduction. The DAP uses a fourth-order noise shaper to increase dynamic range and SNR in the audio band. The PWM section accepts 24-bit PCM data from the DAP and outputs two BTL PWM audio output channels.
The PWM section has individual-channel dc-blocking filters that can be enabled and disabled. The filter cutoff frequency is less than 1 Hz. Individual-channel de-emphasis filters for 44.1 kHz and 48 kHz are included and can be enabled and disabled.
Finally, the PWM section has an adjustable maximum modulation limit of 93.8% to 99.2%.
For a detailed description of using audio processing features like DRC and EQ, see the TAS5731 EVM User's Guide (SLOU331) and TAS570X GDE Software Setup development tool documentation (SLOC124).
The TAS5731 uses a special mid-Z ramp sequence to reduce click and pop in SE-mode and 2.1-mode operation. To enable the mid-Z ramp, register 0x05 bit D7 must be set to 1. To enable 2.1 mode, register 0x05 bit D2 must be set to 1. The SSTIMER pin must be left floating in this mode.
The TAS5731M DAP has an I2C serial control slave interface to receive commands from a system controller. The serial control interface supports both normal-speed (100 kHz) and high-speed (400 kHz) operations without wait states. As an added feature, this interface operates even if MCLK is absent. The serial control interface supports both single-byte and multiple-byte read and write operations for status registers and the general control registers associated with the PWM.
Serial data is input on SDIN. The PWM outputs are derived from SDIN. The TAS5731M DAP accepts serial data in 16-, 20-, or 24-bit left-justified, right-justified, and I2S serial data formats.
I2S timing uses LRCLK to define when the data being transmitted is for the left channel and when it is for the right channel. LRCLK is low for the left channel and high for the right channel. A bit clock running at 32, 48, or 64 × fS is used to clock in the data. There is a delay of one bit clock from the time the LRCLK signal changes state to the first bit of data on the data lines. The data is written MSB-first and is valid on the rising edge of bit clock. The DAP masks unused trailing data bit positions.
NOTE:
All data presented in 2s-complement form with MSB first.NOTE:
All data presented in 2s-complement form with MSB first.NOTE:
All data presented in 2s-complement form with MSB first.Left-justified (LJ) timing uses LRCLK to define when the data being transmitted is for the left channel and when it is for the right channel. LRCLK is high for the left channel and low for the right channel. A bit clock running at 32, 48, or 64 × fS is used to clock in the data. The first bit of data appears on the data lines at the same time LRCLK toggles. The data is written MSB-first and is valid on the rising edge of the bit clock. The DAP masks unused trailing data bit positions.
NOTE:
All data presented in 2s-complement form with MSB first.NOTE:
All data presented in 2s-complement form with MSB first.NOTE:
All data presented in 2s-complement form with MSB first.Right-justified (RJ) timing uses LRCLK to define when the data being transmitted is for the left channel and when it is for the right channel. LRCLK is high for the left channel and low for the right channel. A bit clock running at 32, 48, or 64 × fS is used to clock in the data. The first bit of data appears on the data 8 bit-clock periods (for 24-bit data) after LRCLK toggles. In RJ mode, the LSB of data is always clocked by the last bit clock before LRCLK transitions. The data is written MSB-first and is valid on the rising edge of bit clock. The DAP masks unused leading data bit positions.
The DRC scheme has two DRC blocks. There is one ganged DRC for the high-band left/right channels and one DRC for the low-band left/right channels.
The DRC input/output diagram is shown in Figure 55.
The classic stereo mode of operation uses the TAS5731M device to amplify two independent signals, which represent the left and right portions of a stereo signal. These amplified left and right audio signals are presented on differential output pairs shown as OUT_A and OUT_B for a channel and OUT_C and OUT_D for the other one. The routing of the audio data which is presented on the OUT_x outputs can be changed according to the PWM Output Mux Register (0x25). By default, the TAS5731M device is configured to output channel 1 to the OUT_A and OUT_B outputs, and channel 2 to the OUT_C and OUT_D outputs. Stereo Mode operation outputs are shown in Figure 57.
When this mode of operation is used, the two stereo outputs of the device are placed in parallel one with another to increase the power sourcing capabilities of the device. The TAS5731M supports parallel BTL (PBTL) mode with OUT_A/OUT_B (and OUT_C/OUT_D) connected before the LC filter.
The merging of the two output channels in this device can be done before the inductor portion of the output filter. This is called Single-Filter PBTL, and this mono operation is shown in Figure 58. More information about this can be found in Single-Filter PBTL Mode section.
On the input side of the TAS5731M device, the input signal to the mono amplifier can be selected from a mix, left or right frame from an I2S, LJ, or RJ signal. The routing of the audio data which is presented on the SPK_OUTx outputs must be configured with the PWM Output Mux Register (0x25).
Refer to the Mono Parallel Bridge Tied Load Application section for more details of the correct PBTL output connection of the TAS5731M.
2.1 Mode is defined as the application of two Single ended channels and one BTL channel used in systems where a third sub channel is required. Generally, both single-ended inputs drive the Left and Right channels, while the BTL channel drives a low-frequency content channel called often Subwoofer. More information about this can be found in the 2.1-Mode Support section.
Refer to 2.1 Application section for more details of the correct 2.1 output connection of the TAS5731M.
The TAS5731M DAP has a bidirectional I2C interface that is compatible with the Inter IC (I2C) bus protocol and supports both 100-kHz and 400-kHz data transfer rates for single- and multiple-byte write and read operations. This is a slave-only device that does not support a multimaster bus environment or wait-state insertion. The control interface is used to program the registers of the device and to read device status.
The DAP supports the standard-mode I2C bus operation (100 kHz maximum) and the fast I2C bus operation (400 kHz maximum). The DAP performs all I2C operations without I2C wait cycles.
The I2C bus employs two signals, SDA (data) and SCL (clock), to communicate between integrated circuits in a system. Data is transferred on the bus serially, one bit at a time. The address and data can be transferred in byte (8-bit) format, with the most-significant bit (MSB) transferred first. In addition, each byte transferred on the bus is acknowledged by the receiving device with an acknowledge bit. Each transfer operation begins with the master device driving a start condition on the bus and ends with the master device driving a stop condition on the bus. The bus uses transitions on the data pin (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. These conditions are shown in Figure 60. The master generates the 7-bit slave address and the read/write (R/W) bit to open communication with another device and then waits for an acknowledge condition. The TAS5731M holds SDA low during the acknowledge clock period to indicate an acknowledgment. When this occurs, the master transmits the next byte of the sequence. Each device is addressed by a unique 7-bit slave address plus R/W bit (1 byte). All compatible devices share the same signals via a bidirectional bus using a wired-AND connection. An external pullup resistor must be used for the SDA and SCL signals to set the high level for the bus.
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. A generic data transfer sequence is shown in Figure 60.
The 7-bit address for TAS5731M is 0011 011 (0x36).
The serial control interface supports both single-byte and multiple-byte read/write operations for subaddresses 0x00 to 0x1F. However, for the subaddresses 0x20 to 0xFF, the serial control interface supports only multiple-byte read/write operations (in multiples of 4 bytes).
During multiple-byte read operations, the DAP responds with data, a byte at a time, starting at the subaddress assigned, as long as the master device continues to respond with acknowledges. If a particular subaddress does not contain 32 bits, the unused bits are read as logic 0.
During multiple-byte write operations, the DAP compares the number of bytes transmitted to the number of bytes that are required for each specific subaddress. For example, if a write command is received for a biquad subaddress, the DAP must receive five 32-bit words. If fewer than five 32-bit data words have been received when a stop command (or another start command) is received, the received data is discarded.
Supplying a subaddress for each subaddress transaction is referred to as random I2C addressing. The TAS5731M also supports sequential I2C addressing. For write transactions, if a subaddress is issued followed by data for that subaddress and the 15 subaddresses that follow, a sequential I2C write transaction has taken place, and the data for all 16 subaddresses is successfully received by the TAS5731M. For I2C sequential-write transactions, the subaddress then serves as the start address, and the amount of data subsequently transmitted, before a stop or start is transmitted, determines how many subaddresses are written. As was true for random addressing, sequential addressing requires that a complete set of data be transmitted. If only a partial set of data is written to the last subaddress, the data for the last subaddress is discarded. However, all other data written is accepted; only the incomplete data is discarded.
As shown in Figure 61, a single-byte data-write transfer begins with the master device transmitting a start condition followed by the I2C device address and the read/write bit. The read/write bit determines the direction of the data transfer. For a data-write transfer, the read/write bit is a 0. After receiving the correct I2C device address and the read/write bit, the DAP responds with an acknowledge bit. Next, the master transmits the address byte or bytes corresponding to the TAS5731M internal memory address being accessed. After receiving the address byte, the TAS5731M again responds with an acknowledge bit. Next, the master device transmits the data byte to be written to the memory address being accessed. After receiving the data byte, the TAS5731M again responds with an acknowledge bit. Finally, the master device transmits a stop condition to complete the single-byte data-write transfer.
A multiple-byte data-write transfer is identical to a single-byte data-write transfer except that multiple data bytes are transmitted by the master device to the DAP as shown in Figure 62. After receiving each data byte, the TAS5731M responds with an acknowledge bit.
As shown in Figure 63, a single-byte data-read transfer begins with the master device transmitting a start condition, followed by the I2C device address and the read/write bit. For the data read transfer, both a write followed by a read are actually done. Initially, a write is done to transfer the address byte or bytes of the internal memory address to be read. As a result, the read/write bit becomes a 0. After receiving the TAS5731M address and the read/write bit, TAS5731M responds with an acknowledge bit. In addition, after sending the internal memory address byte or bytes, the master device transmits another start condition followed by the TAS5731M address and the read/write bit again. This time, the read/write bit becomes a 1, indicating a read transfer. After receiving the address and the read/write bit, the TAS5731M again responds with an acknowledge bit. Next, the TAS5731M transmits the data byte from the memory address being read. After receiving the data byte, the master device transmits a not-acknowledge followed by a stop condition to complete the single-byte data-read transfer.
A multiple-byte data-read transfer is identical to a single-byte data-read transfer except that multiple data bytes are transmitted by the TAS5731M to the master device as shown in Figure 64. Except for the last data byte, the master device responds with an acknowledge bit after receiving each data byte.
All mixer gain coefficients are 26-bit coefficients using a 3.23 number format. Numbers formatted as 3.23 numbers means that there are 3 bits to the left of the binary point and 23 bits to the right of the binary point. This is shown in Figure 65.
The decimal value of a 3.23 format number can be found by following the weighting shown in Figure 65. If the most significant bit is logic 0, the number is a positive number, and the weighting shown yields the correct number. If the most significant bit is a logic 1, then the number is a negative number. In this case every bit must be inverted, a 1 added to the result, and then the weighting shown in Figure 66 applied to obtain the magnitude of the negative number.
Gain coefficients, entered via the I2C bus, must be entered as 32-bit binary numbers. The format of the 32-bit number (4-byte or 8-digit hexadecimal number) is shown in Figure 67.
db | LINEAR | DECIMAL | HEX (3.23 Format) |
---|---|---|---|
0 | 1 | 8,388,608 | 80 0000 |
5 | 1.77 | 14,917,288 | 00E3 9EA8 |
–5 | 0.56 | 4,717,260 | 0047 FACC |
X | L = 10(X/20) | D = 8,388,608 × L | H = dec2hex (D, 8) |
db | LINEAR | DECIMAL | HEX (9.17 Format) |
---|---|---|---|
0 | 1 | 131,072 | 2 0000 |
5 | 1.77 | 231,997 | 3 8A3D |
–5 | 0.56 | 73,400 | 1 1EB8 |
X | L = 10(X/20) | D = 131,072 × L | H = dec2hex (D, 8) |
SUBADDRESS | REGISTER NAME | NO. OF BYTES | CONTENTS(1) | INITIALIZATION VALUE |
---|---|---|---|---|
0x00 | Clock control register | 1 | Description shown in subsequent section | 0x6C |
0x01 | Device ID register | 1 | Description shown in subsequent section | 0x00 |
0x02 | Error status register | 1 | Description shown in subsequent section | 0x00 |
0x03 | System control register 1 | 1 | Description shown in subsequent section | 0xA0 |
0x04 | Serial data interface register | 1 | Description shown in subsequent section | 0x05 |
0x05 | System control register 2 | 1 | Description shown in subsequent section | 0x40 |
0x06 | Soft mute register | 1 | Description shown in subsequent section | 0x00 |
0x07 | Master volume | 1 | Description shown in subsequent section | 0xFF (mute) |
0x08 | Channel 1 vol | 1 | Description shown in subsequent section | 0x30 (0 dB) |
0x09 | Channel 2 vol | 1 | Description shown in subsequent section | 0x30 (0 dB) |
0x0A | Channel 3 vol | 1 | Description shown in subsequent section | 0x30 (0 dB) |
0x0B–0x0D | 1 | Reserved(2) | ||
0x0E | Volume configuration register | 1 | Description shown in subsequent section | 0x91 |
0x0F | 1 | Reserved(2) | ||
0x10 | Modulation limit register | 1 | Description shown in subsequent section | 0x02 |
0x11 | IC delay channel 1 | 1 | Description shown in subsequent section | 0xAC |
0x12 | IC delay channel 2 | 1 | Description shown in subsequent section | 0x54 |
0x13 | IC delay channel 3 | 1 | Description shown in subsequent section | 0xAC |
0x14 | IC delay channel 4 | 1 | Description shown in subsequent section | 0x54 |
0x15-0x18 | 1 | Reserved(2) | ||
0x19 | PWM channel shutdown group register | 1 | Description shown in subsequent section | 0x30 |
0x1A | Start/stop period register | 1 | 0x0F | |
0x1B | Oscillator trim register | 1 | 0x82 | |
0x1C | BKND_ERR register | 1 | 0x02 | |
0x1D–0x1F | 1 | Reserved(2) | ||
0x20 | Input MUX register | 4 | Description shown in subsequent section | 0x0001 7772 |
0x21 | Ch 4 source select register | 4 | Description shown in subsequent section | 0x0000 4303 |
0x22 -0x24 | 4 | Reserved(2) | ||
0x25 | PWM MUX register | 4 | Description shown in subsequent section | 0x0102 1345 |
0x26-0x28 | 4 | Reserved(2) | ||
0x29 | ch1_bq[0] | 20 | u[31:26], b0[25:0] | 0x0080 0000 |
u[31:26], b1[25:0] | 0x0000 0000 | |||
u[31:26], b2[25:0] | 0x0000 0000 | |||
u[31:26], a1[25:0] | 0x0000 0000 | |||
u[31:26], a2[25:0] | 0x0000 0000 | |||
0x2A | ch1_bq[1] | 20 | u[31:26], b0[25:0] | 0x0080 0000 |
u[31:26], b1[25:0] | 0x0000 0000 | |||
u[31:26], b2[25:0] | 0x0000 0000 | |||
u[31:26], a1[25:0] | 0x0000 0000 | |||
u[31:26], a2[25:0] | 0x0000 0000 | |||
0x2B | ch1_bq[2] | 20 | u[31:26], b0[25:0] | 0x0080 0000 |
u[31:26], b1[25:0] | 0x0000 0000 | |||
u[31:26], b2[25:0] | 0x0000 0000 | |||
u[31:26], a1[25:0] | 0x0000 0000 | |||
u[31:26], a2[25:0] | 0x0000 0000 | |||
0x2C | ch1_bq[3] | 20 | u[31:26], b0[25:0] | 0x0080 0000 |
u[31:26], b1[25:0] | 0x0000 0000 | |||
u[31:26], b2[25:0] | 0x0000 0000 | |||
u[31:26], a1[25:0] | 0x0000 0000 | |||
u[31:26], a2[25:0] | 0x0000 0000 | |||
0x2D | ch1_bq[4] | 20 | u[31:26], b0[25:0] | 0x0080 0000 |
u[31:26], b1[25:0] | 0x0000 0000 | |||
u[31:26], b2[25:0] | 0x0000 0000 | |||
u[31:26], a1[25:0] | 0x0000 0000 | |||
u[31:26], a2[25:0] | 0x0000 0000 | |||
0x2E | ch1_bq[5] | 20 | u[31:26], b0[25:0] | 0x0080 0000 |
u[31:26], b1[25:0] | 0x0000 0000 | |||
u[31:26], b2[25:0] | 0x0000 0000 | |||
u[31:26], a1[25:0] | 0x0000 0000 | |||
u[31:26], a2[25:0] | 0x0000 0000 | |||
0x2F | ch1_bq[6] | 20 | u[31:26], b0[25:0] | 0x0080 0000 |
u[31:26], b1[25:0] | 0x0000 0000 | |||
u[31:26], b2[25:0] | 0x0000 0000 | |||
u[31:26], a1[25:0] | 0x0000 0000 | |||
u[31:26], a2[25:0] | 0x0000 0000 | |||
0x30 | ch2_bq[0] | 20 | u[31:26], b0[25:0] | 0x0080 0000 |
u[31:26], b1[25:0] | 0x0000 0000 | |||
u[31:26], b2[25:0] | 0x0000 0000 | |||
u[31:26], a1[25:0] | 0x0000 0000 | |||
u[31:26], a2[25:0] | 0x0000 0000 | |||
0x31 | ch2_bq[1] | 20 | u[31:26], b0[25:0] | 0x0080 0000 |
u[31:26], b1[25:0] | 0x0000 0000 | |||
u[31:26], b2[25:0] | 0x0000 0000 | |||
u[31:26], a1[25:0] | 0x0000 0000 | |||
u[31:26], a2[25:0] | 0x0000 0000 | |||
0x32 | ch2_bq[2] | 20 | u[31:26], b0[25:0] | 0x0080 0000 |
u[31:26], b1[25:0] | 0x0000 0000 | |||
u[31:26], b2[25:0] | 0x0000 0000 | |||
u[31:26], a1[25:0] | 0x0000 0000 | |||
u[31:26], a2[25:0] | 0x0000 0000 | |||
0x33 | ch2_bq[3] | 20 | u[31:26], b0[25:0] | 0x0080 0000 |
u[31:26], b1[25:0] | 0x0000 0000 | |||
u[31:26], b2[25:0] | 0x0000 0000 | |||
u[31:26], a1[25:0] | 0x0000 0000 | |||
u[31:26], a2[25:0] | 0x0000 0000 | |||
0x34 | ch2_bq[4] | 20 | u[31:26], b0[25:0] | 0x0080 0000 |
u[31:26], b1[25:0] | 0x0000 0000 | |||
u[31:26], b2[25:0] | 0x0000 0000 | |||
u[31:26], a1[25:0] | 0x0000 0000 | |||
u[31:26], a2[25:0] | 0x0000 0000 | |||
0x35 | ch2_bq[5] | 20 | u[31:26], b0[25:0] | 0x0080 0000 |
u[31:26], b1[25:0] | 0x0000 0000 | |||
u[31:26], b2[25:0] | 0x0000 0000 | |||
u[31:26], a1[25:0] | 0x0000 0000 | |||
u[31:26], a2[25:0] | 0x0000 0000 | |||
0x36 | ch2_bq[6] | 20 | u[31:26], b0[25:0] | 0x0080 0000 |
u[31:26], b1[25:0] | 0x0000 0000 | |||
u[31:26], b2[25:0] | 0x0000 0000 | |||
u[31:26], a1[25:0] | 0x0000 0000 | |||
u[31:26], a2[25:0] | 0x0000 0000 | |||
0x37 - 0x39 | 4 | Reserved(2) | ||
0x3A | DRC1 ae(3) | 8 | u[31:26], ae[25:0] | 0x0080 0000 |
DRC1 (1 – ae) | u[31:26], (1 – ae)[25:0] | 0x0000 0000 | ||
0x3B | DRC1 aa | 8 | u[31:26], aa[25:0] | 0x0080 0000 |
DRC1 (1 – aa) | u[31:26], (1 – aa)[25:0] | 0x0000 0000 | ||
0x3C | DRC1 ad | 8 | u[31:26], ad[25:0] | 0x0080 0000 |
DRC1 (1 – ad) | u[31:26], (1 – ad)[25:0] | 0x0000 0000 | ||
0x3D | DRC2 ae | 8 | u[31:26], ae[25:0] | 0x0080 0000 |
DRC 2 (1 – ae) | u[31:26], (1 – ae)[25:0] | 0x0000 0000 | ||
0x3E | DRC2 aa | 8 | u[31:26], aa[25:0] | 0x0080 0000 |
DRC2 (1 – aa) | u[31:26], (1 – aa)[25:0] | 0x0000 0000 | ||
0x3F | DRC2 ad | 8 | u[31:26], ad[25:0] | 0x0080 0000 |
DRC2 (1 – ad) | u[31:26], (1 – ad)[25:0] | 0x0000 0000 | ||
0x40 | DRC1-T | 4 | T1[31:0] (9.23 format) | 0xFDA2 1490 |
0x41 | DRC1-K | 4 | u[31:26], K1[25:0] | 0x0384 2109 |
0x42 | DRC1-O | 4 | u[31:26], O1[25:0] | 0x0008 4210 |
0x43 | DRC2-T | 4 | T2[31:0] (9.23 format) | 0xFDA2 1490 |
0x44 | DRC2-K | 4 | u[31:26], K2[25:0] | 0x0384 2109 |
0x45 | DRC2-O | 4 | u[31:26], O2[25:0] | 0x0008 4210 |
0x46 | DRC control | 4 | Description shown in subsequent section | 0x0000 0000 |
0x47–0x4F | 4 | Reserved(2) | ||
0x50 | Bank switch control | 4 | Description shown in subsequent section | 0x0F70 8000 |
0x51 | Ch 1 output mixer | 12 | Ch 1 output mix1[2] | 0x0080 0000 |
Ch 1 output mix1[1] | 0x0000 0000 | |||
Ch 1 output mix1[0] | 0x0000 0000 | |||
0x52 | Ch 2 output mixer | 12 | Ch 2 output mix2[2] | 0x0080 0000 |
Ch 2 output mix2[1] | 0x0000 0000 | |||
Ch 2 output mix2[0] | 0x0000 0000 | |||
0x53 | Ch 1 input mixer | 16 | Ch 1 input mixer[3] | 0x0080 0000 |
Ch 1 input mixer[2] | 0x0000 0000 | |||
Ch 1 input mixer[1] | 0x0000 0000 | |||
Ch 1 input mixer[0] | 0x0080 0000 | |||
0x54 | Ch 2 input mixer | 16 | Ch 2 input mixer[3] | 0x0080 0000 |
Ch 2 input mixer[2] | 0x0000 0000 | |||
Ch 2 input mixer[1] | 0x0000 0000 | |||
Ch 2 input mixer[0] | 0x0080 0000 | |||
0x55 | Channel 3 input mixer | 12 | Channel 3 input mixer [2] | 0x0080 0000 |
Channel 3 input mixer [1] | 0x0000 0000 | |||
Channel 3 input mixer [0] | 0x0000 0000 | |||
0x56 | Output post-scale | 4 | u[31:26], post[25:0] | 0x0080 0000 |
0x57 | Output pre-scale | 4 | u[31:26], pre[25:0] (9.17 format) | 0x0002 0000 |
0x58 | ch1 BQ[7] | 20 | u[31:26], b0[25:0] | 0x0080 0000 |
u[31:26], b1[25:0] | 0x0000 0000 | |||
u[31:26], b2[25:0] | 0x0000 0000 | |||
u[31:26], a1[25:0] | 0x0000 0000 | |||
u[31:26], a2[25:0] | 0x0000 0000 | |||
0x59 | ch1 BQ[8] | 20 | u[31:26], b0[25:0] | 0x0080 0000 |
u[31:26], b1[25:0] | 0x0000 0000 | |||
u[31:26], b2[25:0] | 0x0000 0000 | |||
u[31:26], a1[25:0] | 0x0000 0000 | |||
u[31:26], a2[25:0] | 0x0000 0000 | |||
0x5A | Subchannel BQ[0] | 20 | u[31:26], b0[25:0] | 0x0080 0000 |
u[31:26], b1[25:0] | 0x0000 0000 | |||
u[31:26], b2[25:0] | 0x0000 0000 | |||
u[31:26], a1[25:0] | 0x0000 0000 | |||
u[31:26], a2[25:0] | 0x0000 0000 | |||
0x5B | Subchannel BQ[1] | 20 | u[31:26], b0[25:0] | 0x0080 0000 |
u[31:26], b1[25:0] | 0x0000 0000 | |||
u[31:26], b2[25:0] | 0x0000 0000 | |||
u[31:26], a1[25:0] | 0x0000 0000 | |||
u[31:26], a2[25:0] | 0x0000 0000 | |||
0x5C | ch2 BQ[7] | 20 | u[31:26], b0[25:0] | 0x0080 0000 |
u[31:26], b1[25:0] | 0x0000 0000 | |||
u[31:26], b2[25:0] | 0x0000 0000 | |||
u[31:26], a1[25:0] | 0x0000 0000 | |||
u[31:26], a2[25:0] | 0x0000 0000 | |||
0x5D | ch2 BQ[8] | 20 | u[31:26], b0[25:0] | 0x0080 0000 |
u[31:26], b1[25:0] | 0x0000 0000 | |||
u[31:26], b2[25:0] | 0x0000 0000 | |||
u[31:26], a1[25:0] | 0x0000 0000 | |||
u[31:26], a2[25:0] | 0x0000 0000 | |||
0x5E | pseudo_ch2 BQ[0] | 20 | u[31:26], b0[25:0] | 0x0080 0000 |
u[31:26], b1[25:0] | 0x0000 0000 | |||
u[31:26], b2[25:0] | 0x0000 0000 | |||
u[31:26], a1[25:0] | 0x0000 0000 | |||
u[31:26], a2[25:0] | 0x0000 0000 | |||
0x5F | 4 | Reserved(2) | ||
0x60 | Channel 4 (subchannel) output mixer | 8 | Ch 4 output mixer[1] | 0x0000 0000 |
Ch 4 output mixer[0] | 0x0080 0000 | |||
0x61 | Channel 4 (subchannel) input mixer | 8 | Ch 4 input mixer[1] | 0x0040 0000 |
Ch 4 input mixer[0] | 0x0040 0000 | |||
0x62 | IDF post scale | 4 | Post-IDF attenuation register | 0x0000 0080 |
0x63–0xF7 | Reserved(2) | 0x0000 0000 | ||
0xF8 | Device address enable register | 4 | Write F9 A5 A5 A5 in this register to enable write to device address update (0xF9) | 0x0000 0000 |
0xF9 | Device address Update Register | 4 | u[31:8], New Dev Id[7:1] , ZERO[0] (New Dev Id (7:1) defines the new device address | 0X0000 0036 |
0xFA–0xFF | 4 | Reserved(2) | 0x0000 0000 |
All DAP coefficients are 3.23 format unless specified otherwise.
The clocks and data rates are automatically determined by the TAS5731M. The clock control register contains the auto-detected clock status. Bits D7–D5 reflect the sample rate. Bits D4–D2 reflect the MCLK frequency. The device accepts a 64 fS or 32 fS SCLK rate for all MCLK ratios, but accepts a 48 fS SCLK rate for MCLK ratios of 192 fS and 384 fS only.
D7 | D6 | D5 | D4 | D3 | D2 | D1 | D0 | FUNCTION |
0 | 0 | 0 | – | – | – | – | – | fS = 32-kHz sample rate |
0 | 0 | 1 | – | – | – | – | – | Reserved(4) |
0 | 1 | 0 | – | – | – | – | – | Reserved(4) |
0 | 1 | 1 | – | – | – | – | – | fS = 44.1/48-kHz sample rate(1) |
1 | 0 | 0 | – | – | – | – | – | fS = 16-kHz sample rate |
1 | 0 | 1 | – | – | – | – | – | fS = 22.05/24-kHz sample rate |
1 | 1 | 0 | – | – | – | – | – | fS = 8-kHz sample rate |
1 | 1 | 1 | – | – | – | – | – | fS = 11.025/12-kHz sample rate |
– | – | – | 0 | 0 | 0 | – | – | MCLK frequency = 64 × fS(2) |
– | – | – | 0 | 0 | 1 | – | – | MCLK frequency = 128 × fS(2) |
– | – | – | 0 | 1 | 0 | – | – | MCLK frequency = 192 × fS(3) |
– | – | – | 0 | 1 | 1 | – | – | MCLK frequency = 256 × fS(1)(5) |
– | – | – | 1 | 0 | 0 | – | – | MCLK frequency = 384 × fS |
– | – | – | 1 | 0 | 1 | – | – | MCLK frequency = 512 × fS |
– | – | – | 1 | 1 | 0 | – | – | Reserved(4) |
– | – | – | 1 | 1 | 1 | – | – | Reserved(4) |
– | – | – | – | – | – | 0 | – | Reserved(4)(1) |
– | – | – | – | – | – | – | 0 | Reserved(4)(1) |
The device ID register contains the ID code for the firmware revision.
D7 | D6 | D5 | D4 | D3 | D2 | D1 | D0 | FUNCTION |
0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | Identification code |
The error bits are sticky and are not cleared by the hardware. This means that the software must clear the register (write zeroes) and then read them to determine if they are persistent errors.
Error Definitions:
D7 | D6 | D5 | D4 | D3 | D2 | D1 | D0 | FUNCTION |
1 | - | – | – | – | – | – | – | MCLK error |
– | 1 | – | – | – | – | – | – | PLL autolock error |
– | – | 1 | – | – | – | – | – | SCLK error |
– | – | – | 1 | – | – | – | – | LRCLK error |
– | – | – | – | 1 | – | – | – | Frame slip |
– | – | – | – | – | 1 | – | – | Clip indicator |
– | – | – | – | – | – | 1 | – | Overcurrent, overtemperature, or undervoltage errors |
– | – | – | – | – | – | – | 0 | Reserved |
0 | 0 | 0 | 0 | 0 | 0 | 0 | – | No errors(1) |
The system control register 1 has several functions:
Bit D7: | If 0, the dc-blocking filter for each channel is disabled. If 1, the dc-blocking filter (–3 dB cutoff <1 Hz) for each channel is enabled (default). |
Bit D5: | If 0, use soft unmute on recovery from clock error. This is a slow recovery. Unmute takes the same time as the volume ramp defined in register 0x0E. If 1, use hard unmute on recovery from clock error (default). This is a fast recovery, a single step volume ramp |
Bits D1–D0: | Select de-emphasis |
D7 | D6 | D5 | D4 | D3 | D2 | D1 | D0 | FUNCTION |
0 | – | – | – | – | – | – | – | PWM high-pass (dc blocking) disabled |
1 | – | – | – | – | – | – | – | PWM high-pass (dc blocking) enabled(1) |
– | 0 | – | – | – | – | – | – | Reserved(1) |
– | – | 0 | – | – | – | – | – | Soft unmute on recovery from clock error |
– | – | 1 | – | – | – | – | – | Hard unmute on recovery from clock error(1) |
– | – | – | 0 | – | – | – | – | Reserved(1) |
– | – | – | – | 0 | – | – | – | Reserved(1) |
– | – | – | – | – | 0 | – | – | Reserved(1) |
– | – | – | – | – | – | 0 | 0 | No de-emphasis(1) |
– | – | – | – | – | – | 0 | 1 | De-emphasis for fS = 32 kHz |
– | – | – | – | – | – | 1 | 0 | De-emphasis for fS = 44.1 kHz |
– | – | – | – | – | – | 1 | 1 | De-emphasis for fS = 48 kHz |
As shown in Table 8, the TAS5731M supports 9 serial data modes. The default is 24-bit, I2S mode,
RECEIVE SERIAL DATA
INTERFACE FORMAT |
WORD LENGTH | D7–D4 | D3 | D2 | D1 | D0 |
Right-justified | 16 | 0000 | 0 | 0 | 0 | 0 |
Right-justified | 20 | 0000 | 0 | 0 | 0 | 1 |
Right-justified | 24 | 0000 | 0 | 0 | 1 | 0 |
I2S | 16 | 000 | 0 | 0 | 1 | 1 |
I2S | 20 | 0000 | 0 | 1 | 0 | 0 |
I2S(1) | 24 | 0000 | 0 | 1 | 0 | 1 |
Left-justified | 16 | 0000 | 0 | 1 | 1 | 0 |
Left-justified | 20 | 0000 | 0 | 1 | 1 | 1 |
Left-justified | 24 | 0000 | 1 | 0 | 0 | 0 |
Reserved | 0000 | 1 | 0 | 0 | 1 | |
Reserved | 0000 | 1 | 0 | 1 | 0 | |
Reserved | 0000 | 1 | 0 | 1 | 1 | |
Reserved | 0000 | 1 | 1 | 0 | 0 | |
Reserved | 0000 | 1 | 1 | 0 | 1 | |
Reserved | 0000 | 1 | 1 | 1 | 0 | |
Reserved | 0000 | 1 | 1 | 1 | 1 |
When bit D6 is set low, the system exits all channel shutdown and starts playing audio; otherwise, the outputs are shut down (hard mute).
D7 | D6 | D5 | D4 | D3 | D2 | D1 | D0 | FUNCTION |
0 | – | – | – | – | – | – | – | Mid-Z ramp disabled(1) |
1 | – | – | – | – | – | – | – | Mid-Z ramp enabled |
– | 0 | – | – | – | – | – | – | Exit all-channel shutdown (normal operation) |
– | 1 | – | – | – | – | – | – | Enter all-channel shutdown (hard mute)(1) |
0 | Sub-channel in AD Mode | |||||||
1 | Sub-channel in BD Mode | |||||||
– | – | – | – | – | 0 | – | – | 2.0 mode [2.0 BTL](1) |
– | – | – | – | – | 1 | – | – | 2.1 mode [2 SE + 1 BTL] |
– | – | – | – | – | – | 0 | – | ADR/FAULT pin is configured as to serve as an address input only(1) |
– | – | – | – | – | – | 1 | – | ADR/FAULTpin is configured as fault output |
– | – | 0 | 0 | - | – | – | 0 | Reserved(1) |
Writing a 1 to any of the following bits sets the output of the respective channel to 50% duty cycle (soft mute).
D7 | D6 | D5 | D4 | D3 | D2 | D1 | D0 | FUNCTION |
0 | 0 | 0 | 0 | 0 | – | – | – | Reserved(1) |
– | – | – | – | – | 0 | – | – | Soft unmute channel 3(1) |
– | – | – | – | – | 1 | – | – | Soft mute channel 3 |
– | – | – | – | – | – | 0 | – | Soft unmute channel 2(1) |
– | – | – | – | – | – | 1 | – | Soft mute channel 2 |
– | – | – | – | – | – | – | 0 | Soft unmute channel 1(1) |
– | – | – | – | – | – | – | 1 | Soft mute channel 1 |
Step size is 0.5 dB.
Master volume | – 0x07 (default is mute) |
Channel-1 volume | – 0x08 (default is 0 dB) |
Channel-2 volume | – 0x09 (default is 0 dB) |
Channel-3 volume | – 0x0A (default is 0 dB) |
D7 | D6 | D5 | D4 | D3 | D2 | D1 | D0 | FUNCTION | |
0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 24 dB | |
0 | 0 | 1 | 1 | 0 | 0 | 0 | 0 | 0 dB (default for individual channel volume)(1) | |
1 | 1 | 1 | 1 | 1 | 1 | 1 | 0 | –103 dB | |
1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | Soft mute (default for master volume) (1) |
Bits D2–D0: | Volume slew rate (Used to control volume change and MUTE ramp rates). These bits control the number of steps in a volume ramp. Volume steps occur at a rate that depends on the sample rate of the I2S data as follows | |
Sample Rate (KHz) | Approximate Ramp Rate | |
8/16/32 | 125 µs/step | |
11.025/22.05/44.1 | 90.7 µs/step | |
12/24/48 | 83.3 µs/step |
D7 | D6 | D5 | D4 | D3 | D2 | D1 | D0 | FUNCTION |
1 | – | – | 1 | 0 | – | – | – | Reserved(1) |
– | 0 | – | – | – | – | – | – | Subchannel (ch4) volume = ch1 volume(1)(1) |
– | 1 | – | – | – | – | – | – | Subchannel volume = register 0x0A(1) |
– | – | 0 | – | – | – | – | – | Ch3 volume = ch2 volume(1) |
– | – | 1 | – | – | – | – | – | Ch3 volume = register 0x0A |
– | – | – | – | – | 0 | 0 | 0 | Volume slew 512 steps (43-ms volume ramp time at 48 kHz) |
– | – | – | – | – | 0 | 0 | 1 | Volume slew 1024 steps (85-ms volume ramp time at 48 kHz)(1) |
– | – | – | – | – | 0 | 1 | 0 | Volume slew 2048 steps (171- ms volume ramp time at 48 kHz) |
– | – | – | – | – | 0 | 1 | 1 | Volume slew 256 steps (21-ms volume ramp time at 48 kHz) |
– | – | – | – | – | 1 | X | X | Reserved |
The modulation limit is the maximum duty cycle of the PWM output waveform.
D7 | D6 | D5 | D4 | D3 | D2 | D1 | D0 | MODULATION LIMIT |
– | – | – | – | – | 0 | 0 | 0 | 99.2% |
– | – | – | – | – | 0 | 0 | 1 | 98.4% |
– | – | – | – | – | 0 | 1 | 0 | 97.7%(1) |
– | – | – | – | – | 0 | 1 | 1 | 96.9% |
– | – | – | – | – | 1 | 0 | 0 | 96.1% |
– | – | – | – | – | 1 | 0 | 1 | 95.3% |
– | – | – | – | – | 1 | 1 | 0 | 94.5% |
– | – | – | – | – | 1 | 1 | 1 | 93.8% |
0 | 0 | 0 | 0 | 0 | – | – | – | Reserved |
Internal PWM Channels 1, 2, 1, and 2 are mapped into registers 0x11, 0x12, 0x13, and 0x14.
BITS DEFINITION | D7 | D6 | D5 | D4 | D3 | D2 | D1 | D0 | FUNCTION | |
0 | 0 | 0 | 0 | 0 | 0 | – | – | Minimum absolute delay, 0 DCLK cycles | ||
0 | 1 | 1 | 1 | 1 | 1 | – | – | Maximum positive delay, 31 × 4 DCLK cycles | ||
1 | 0 | 0 | 0 | 0 | 0 | – | – | Maximum negative delay, –32 × 4 DCLK cycles | ||
0 | 0 | Reserved | ||||||||
SUBADDRESS | D7 | D6 | D5 | D4 | D3 | D2 | D1 | D0 | DELAY = (VALUE) × 4 DCLKs | |
0x11 | 1 | 0 | 1 | 0 | 1 | 1 | – | – | Default value for channel 1(1) | |
0x12 | 0 | 1 | 0 | 1 | 0 | 1 | – | – | Default value for channel 2(1) | |
0x13 | 1 | 0 | 1 | 0 | 1 | 1 | – | – | Default value for channel 1(1) | |
0x14 | 0 | 1 | 0 | 1 | 0 | 1 | – | – | Default value for channel 2(1) |
ICD settings have high impact on audio performance (e.g., dynamic range, THD, crosstalk etc.). Therefore, appropriate ICD settings must be used. By default, the device has ICD settings for AD mode. If used in BD mode, then update these registers before coming out of all-channel shutdown.
REGISTER | AD MODE | BD MODE |
---|---|---|
0x11 | AC | B8 |
0x12 | 54 | 60 |
0x13 | AC | A0 |
0x14 | 54 | 48 |
Settings of this register determine which PWM channels are active. The value must be 0x30 for BTL mode and 0x3A for PBTL mode. The default value of this register is 0x30. The functionality of this register is tied to the state of bit D5 in the system control register.
This register defines which channels belong to the shutdown group (SDG). If a 1 is set in the shutdown group register, that particular channel is not started following an exit out of all-channel shutdown command (if bit D5 is set to 0 in system control register 2, 0x05).
D7 | D6 | D5 | D4 | D3 | D2 | D1 | D0 | FUNCTION |
0 | – | – | – | – | – | – | – | Reserved(1) |
– | 0 | – | – | – | – | – | – | Reserved(1) |
– | – | 1 | – | – | – | – | – | Reserved(1) |
– | – | – | 1 | – | – | – | – | Reserved(1) |
– | – | – | – | 0 | – | – | – | PWM channel 4 does not belong to shutdown group.(1) |
– | – | – | – | 1 | – | – | – | PWM channel 4 belongs to shutdown group. |
– | – | – | – | – | 0 | – | – | PWM channel 3 does not belong to shutdown group.(1) |
– | – | – | – | – | 1 | – | – | PWM channel 3 belongs to shutdown group. |
– | – | – | – | – | – | 0 | – | PWM channel 2 does not belong to shutdown group.(1) |
– | – | – | – | – | – | 1 | – | PWM channel 2 belongs to shutdown group. |
– | – | – | – | – | – | – | 0 | PWM channel 1 does not belong to shutdown group.(1) |
– | – | – | – | – | – | – | 1 | PWM channel 1 belongs to shutdown group. |
This register is used to control the soft-start and soft-stop period following an enter/exit all channel shut down command or change in the PDN state. This helps reduce pops and clicks at start-up and shutdown. The times are only approximate and vary depending on device activity level and I2S clock stability.
D7 | D6 | D5 | D4 | D3 | D2 | D1 | D0 | FUNCTION |
0 | – | – | – | – | – | – | – | SSTIMER enabled(1) |
1 | – | – | – | – | – | – | – | SSTIMER disabled |
– | 0 | 0 | – | – | – | – | – | Reserved(1) |
– | – | – | 0 | 0 | – | – | – | No 50% duty cycle start/stop period |
– | – | – | 0 | 1 | 0 | 0 | 0 | 16.5-ms 50% duty cycle start/stop period |
– | – | – | 0 | 1 | 0 | 0 | 1 | 23.9-ms 50% duty cycle start/stop period |
– | – | – | 0 | 1 | 0 | 1 | 0 | 31.4-ms 50% duty cycle start/stop period |
– | – | – | 0 | 1 | 0 | 1 | 1 | 40.4-ms 50% duty cycle start/stop period |
– | – | – | 0 | 1 | 1 | 0 | 0 | 53.9-ms 50% duty cycle start/stop period |
– | – | – | 0 | 1 | 1 | 0 | 1 | 70.3-ms 50% duty cycle start/stop period |
– | – | – | 0 | 1 | 1 | 1 | 0 | 94.2-ms 50% duty cycle start/stop period |
– | – | – | 0 | 1 | 1 | 1 | 1 | 125.7-ms 50% duty cycle start/stop period(1) |
– | – | – | 1 | 0 | 0 | 0 | 0 | 164.6-ms 50% duty cycle start/stop period |
– | – | – | 1 | 0 | 0 | 0 | 1 | 239.4-ms 50% duty cycle start/stop period |
– | – | – | 1 | 0 | 0 | 1 | 0 | 314.2-ms 50% duty cycle start/stop period |
– | – | – | 1 | 0 | 0 | 1 | 1 | 403.9-ms 50% duty cycle start/stop period |
– | – | – | 1 | 0 | 1 | 0 | 0 | 538.6-ms 50% duty cycle start/stop period |
– | – | – | 1 | 0 | 1 | 0 | 1 | 703.1-ms 50% duty cycle start/stop period |
– | – | – | 1 | 0 | 1 | 1 | 0 | 942.5-ms 50% duty cycle start/stop period |
– | – | – | 1 | 0 | 1 | 1 | 1 | 1256.6-ms 50% duty cycle start/stop period |
– | – | – | 1 | 1 | 0 | 0 | 0 | 1728.1-ms 50% duty cycle start/stop period |
– | – | – | 1 | 1 | 0 | 0 | 1 | 2513.6-ms 50% duty cycle start/stop period |
– | – | – | 1 | 1 | 0 | 1 | 0 | 3299.1-ms 50% duty cycle start/stop period |
– | – | – | 1 | 1 | 0 | 1 | 1 | 4241.7-ms 50% duty cycle start/stop period |
– | – | – | 1 | 1 | 1 | 0 | 0 | 5655.6-ms 50% duty cycle start/stop period |
– | – | – | 1 | 1 | 1 | 0 | 1 | 7383.7-ms 50% duty cycle start/stop period |
– | – | – | 1 | 1 | 1 | 1 | 0 | 9897.3-ms 50% duty cycle start/stop period |
– | – | – | 1 | 1 | 1 | 1 | 1 | 13,196.4-ms 50% duty cycle start/stop period |
The TAS5731M PWM processor contains an internal oscillator to support autodetect of I2S clock rates. This reduces system cost because an external reference is not required. Currently, TI recommends a reference resistor value of 18.2 kΩ (1%). This must be connected between OSC_RES and DVSSO.
Writing 0x00 to register 0x1B enables the trim that was programmed at the factory.
NOTE
Trim must always be run following reset of the device.
D7 | D6 | D5 | D4 | D3 | D2 | D1 | D0 | FUNCTION |
0 | – | – | – | – | – | – | – | Reserved(1) |
– | 0 | – | – | – | – | – | – | Oscillator trim not done (read-only)(1) |
– | 1 | – | – | – | – | – | – | Oscillator trim done (read only) |
– | – | 0 | 0 | 0 | 0 | – | – | Reserved(1) |
– | – | – | – | – | – | 0 | – | Select factory trim (Write a 0 to select factory trim; default is 1.) |
– | – | – | – | – | – | 1 | – | Factory trim disabled(1) |
– | – | – | – | – | – | – | 0 | Reserved(1) |
When a back-end error signal is received from the internal power stage, the power stage is reset stopping all PWM activity. Subsequently, the modulator waits approximately for the time listed in Table 18 before attempting to re-start the power stage.
D7 | D6 | D5 | D4 | D3 | D2 | D1 | D0 | FUNCTION |
0 | 0 | 0 | 0 | 0 | 0 | 0 | X | Reserved |
– | – | – | – | 0 | 0 | 1 | 0 | Set back-end reset period to 299 ms(1) |
– | – | – | – | 0 | 0 | 1 | 1 | Set back-end reset period to 449 ms |
– | – | – | – | 0 | 1 | 0 | 0 | Set back-end reset period to 598 ms |
– | – | – | – | 0 | 1 | 0 | 1 | Set back-end reset period to 748 ms |
– | – | – | – | 0 | 1 | 1 | 0 | Set back-end reset period to 898 ms |
– | – | – | – | 0 | 1 | 1 | 1 | Set back-end reset period to 1047 ms |
– | – | – | – | 1 | 0 | 0 | 0 | Set back-end reset period to 1197 ms |
– | – | – | – | 1 | 0 | 0 | 1 | Set back-end reset period to 1346 ms |
– | – | – | – | 1 | 0 | 1 | X | Set back-end reset period to 1496 ms |
– | – | – | – | 1 | 1 | X | X | Set back-end reset period to 1496 ms |
This register controls the modulation scheme (AD or BD mode) as well as the routing of I2S audio to the internal channels.
D31 | D30 | D29 | D28 | D27 | D26 | D25 | D24 | FUNCTION |
0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | Reserved(1) |
D23 | D22 | D21 | D20 | D19 | D18 | D17 | D16 | FUNCTION |
0 | – | – | – | – | – | – | – | Channel-1 AD mode(1) |
1 | – | – | – | – | – | – | – | Channel-1 BD mode |
– | 0 | 0 | 0 | – | – | – | – | SDIN-L to channel 1(1) |
– | 0 | 0 | 1 | – | – | – | – | SDIN-R to channel 1 |
– | 0 | 1 | 0 | – | – | – | – | Reserved |
– | 0 | 1 | 1 | – | – | – | – | Reserved |
– | 1 | 0 | 0 | – | – | – | – | Reserved |
– | 1 | 0 | 1 | – | – | – | – | Reserved |
– | 1 | 1 | 0 | – | – | – | – | Ground (0) to channel 1 |
– | 1 | 1 | 1 | – | – | – | – | Reserved |
– | – | – | – | 0 | – | – | – | Channel 2 AD mode(1) |
– | – | – | – | 1 | – | – | – | Channel 2 BD mode |
– | – | – | – | – | 0 | 0 | 0 | SDIN-L to channel 2 |
– | – | – | – | – | 0 | 0 | 1 | SDIN-R to channel 2(1) |
– | – | – | – | – | 0 | 1 | 0 | Reserved |
– | – | – | – | – | 0 | 1 | 1 | Reserved |
– | – | – | – | – | 1 | 0 | 0 | Reserved |
– | – | – | – | – | 1 | 0 | 1 | Reserved |
– | – | – | – | – | 1 | 1 | 0 | Ground (0) to channel 2 |
– | – | – | – | – | 1 | 1 | 1 | Reserved |
D15 | D14 | D13 | D12 | D11 | D10 | D9 | D8 | FUNCTION |
0 | 1 | 1 | 1 | 0 | 1 | 1 | 1 | Reserved(1) |
D7 | D6 | D5 | D4 | D3 | D2 | D1 | D0 | FUNCTION |
0 | 1 | 1 | 1 | 0 | 0 | 1 | 0 | Reserved(1) |
This register selects the channel 4 source.
D31 | D30 | D29 | D28 | D27 | D26 | D25 | D24 | FUNCTION |
0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | Reserved(1) |
D23 | D22 | D21 | D20 | D19 | D18 | D17 | D16 | FUNCTION |
0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | Reserved(1) |
D15 | D14 | D13 | D12 | D11 | D10 | D9 | D8 | FUNCTION |
0 | 1 | 0 | 0 | 0 | 0 | 1 | 1 | Select SDIN path (third path), not available in TAS5731M(1) |
– | – | – | – | – | – | – | 0 | (L + R)/2 |
– | – | – | – | – | – | 0 | 1 | Left-channel post-BQ(1) |
D7 | D6 | D5 | D4 | D3 | D2 | D1 | D0 | FUNCTION |
0 | 0 | 0 | 0 | 0 | 0 | 1 | 1 | Reserved(1) |
This DAP output mux selects which internal PWM channel is output to the external pins. Any channel can be output to any external output pin.
Bits D21–D20: | Selects which PWM channel is output to OUT_A |
Bits D17–D16: | Selects which PWM channel is output to OUT_B |
Bits D13–D12: | Selects which PWM channel is output to OUT_C |
Bits D09–D08: | Selects which PWM channel is output to OUT_D |
NOTE
Channels are encoded so that channel 1 = 0x00, channel 2 = 0x01, …, channel 4 = 0x03.
D31 | D30 | D29 | D28 | D27 | D26 | D25 | D24 | FUNCTION |
0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | Reserved(1) |
D23 | D22 | D21 | D20 | D19 | D18 | D17 | D16 | FUNCTION |
0 | 0 | – | – | – | – | – | – | Reserved(1) |
– | – | 0 | 0 | – | – | – | – | Multiplex PWM 1 to OUT_A(1) |
– | – | 0 | 1 | – | – | – | – | Multiplex PWM 2 to OUT_A |
– | – | 1 | 0 | – | – | – | – | Multiplex PWM 3 to OUT_A |
– | – | 1 | 1 | – | – | – | – | Multiplex PWM 4 to OUT_A |
– | – | – | – | 0 | 0 | – | – | Reserved(1) |
– | – | – | – | – | – | 0 | 0 | Multiplex PWM 1 to OUT_B |
– | – | – | – | – | – | 0 | 1 | Multiplex PWM 2 to OUT_B |
– | – | – | – | – | – | 1 | 0 | Multiplex PWM 3 to OUT_B(1) |
– | – | – | – | – | – | 1 | 1 | Multiplex PWM 4 to OUT_B |
D15 | D14 | D13 | D12 | D11 | D10 | D9 | D8 | FUNCTION |
0 | 0 | – | – | – | – | – | – | Reserved(1) |
– | – | 0 | 0 | – | – | – | – | Multiplex PWM 1 to OUT_C |
– | – | 0 | 1 | – | – | – | – | Multiplex PWM 2 to OUT_C(1) |
– | – | 1 | 0 | – | – | – | – | Multiplex PWM 3 to OUT_C |
– | – | 1 | 1 | – | – | – | – | Multiplex PWM 4 to OUT_C |
– | – | – | – | 0 | 0 | – | – | Reserved(1) |
– | – | – | – | – | – | 0 | 0 | Multiplex PWM 1 to OUT_D |
– | – | – | – | – | – | 0 | 1 | Multiplex PWM 2 to OUT_D |
– | – | – | – | – | – | 1 | 0 | Multiplex PWM 3 to OUT_D |
– | – | – | – | – | – | 1 | 1 | Multiplex PWM 4 to OUT_D(1) |
D7 | D6 | D5 | D4 | D3 | D2 | D1 | D0 | FUNCTION |
0 | 1 | 0 | 0 | 0 | 1 | 0 | 1 | Reserved(1) |
Each DRC can be enabled independently using the DRC control register. The DRCs are disabled by default.
D31 | D30 | D29 | D28 | D27 | D26 | D25 | D24 | FUNCTION |
0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | Reserved(1) |
D23 | D22 | D21 | D20 | D19 | D18 | D17 | D16 | FUNCTION |
0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | Reserved (1) |
D15 | D14 | D13 | D12 | D11 | D10 | D9 | D8 | FUNCTION |
0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | Reserved(1) |
D7 | D6 | D5 | D4 | D3 | D2 | D1 | D0 | FUNCTION |
0 | 0 | – | – | – | – | – | – | Reserved(1) |
– | – | 0 | – | – | – | – | – | Disable complementary (1 - H) low-pass filter generation |
– | – | 1 | – | – | – | – | – | Enable complementary (1 - H) low-pass filter generation |
– | – | – | 0 | – | – | – | – | |
– | – | – | 1 | – | – | – | – | |
0 | 0 | Reserved(1) | ||||||
– | – | – | – | – | – | 0 | – | DRC2 turned OFF(1) |
– | – | – | – | – | – | 1 | – | DRC2 turned ON |
– | – | – | – | – | – | – | 0 | DRC1 turned OFF(1) |
– | – | – | – | – | – | – | 1 | DRC1 turned ON |
D31 | D30 | D29 | D28 | D27 | D26 | D25 | D24 | FUNCTION |
0 | – | – | – | – | – | – | – | 32 kHz, does not use bank 3(1) |
1 | – | – | – | – | – | – | – | 32 kHz, uses bank 3 |
– | 0 | – | – | – | – | – | – | Reserved(1) |
– | – | 0 | – | – | – | – | – | Reserved(1) |
– | – | – | 0 | – | – | – | – | 44.1/48 kHz, does not use bank 3(1) |
– | – | – | 1 | – | – | – | – | 44.1/48 kHz, uses bank 3 |
– | – | – | – | 0 | – | – | – | 16 kHz, does not use bank 3 |
– | – | – | – | 1 | – | – | – | 16 kHz, uses bank 3(1) |
– | – | – | – | – | 0 | – | – | 22.025/24 kHz, does not use bank 3 |
– | – | – | – | – | 1 | – | – | 22.025/24 kHz, uses bank 3(1) |
– | – | – | – | – | – | 0 | – | 8 kHz, does not use bank 3 |
– | – | – | – | – | – | 1 | – | 8 kHz, uses bank 3(1) |
– | – | – | – | – | – | – | 0 | 11.025 kHz/12, does not use bank 3 |
– | – | – | – | – | – | – | 1 | 11.025/12 kHz, uses bank 3(1) |
D23 | D22 | D21 | D20 | D19 | D18 | D17 | D16 | FUNCTION |
0 | – | – | – | – | – | – | – | 32 kHz, does not use bank 2(1) |
1 | – | – | – | – | – | – | – | 32 kHz, uses bank 2 |
– | 1 | – | – | – | – | – | – | Reserved(1) |
– | – | 1 | – | – | – | – | – | Reserved(1) |
– | – | – | 0 | – | – | – | – | 44.1/48 kHz, does not use bank 2 |
– | – | – | 1 | – | – | – | – | 44.1/48 kHz, uses bank 2(1) |
– | – | – | – | 0 | – | – | – | 16 kHz, does not use bank 2(1) |
– | – | – | – | 1 | – | – | – | 16 kHz, uses bank 2 |
– | – | – | – | – | 0 | – | – | 22.025/24 kHz, does not use bank 2(1) |
– | – | – | – | – | 1 | – | – | 22.025/24 kHz, uses bank 2 |
– | – | – | – | – | – | 0 | – | 8 kHz, does not use bank 2(1) |
– | – | – | – | – | – | 1 | – | 8 kHz, uses bank 2 |
– | – | – | – | – | – | – | 0 | 11.025/12 kHz, does not use bank 2(1) |
– | – | – | – | – | – | – | 1 | 11.025/12 kHz, uses bank 2 |
D15 | D14 | D13 | D12 | D11 | D10 | D9 | D8 | FUNCTION |
0 | – | – | – | – | – | – | – | 32 kHz, does not use bank 1 |
1 | – | – | – | – | – | – | – | 32 kHz, uses bank 1(1) |
– | 0 | – | – | – | – | – | – | Reserved(1) |
– | – | 0 | – | – | – | – | – | Reserved(1) |
– | – | – | 0 | – | – | – | – | 44.1/48 kHz, does not use bank 1(1) |
– | – | – | 1 | – | – | – | – | 44.1/48 kHz, uses bank 1 |
– | – | – | – | 0 | – | – | – | 16 kHz, does not use bank 1(1) |
– | – | – | – | 1 | – | – | – | 16 kHz, uses bank 1 |
– | – | – | – | – | 0 | – | – | 22.025/24 kHz, does not use bank 1(1) |
– | – | – | – | – | 1 | – | – | 22.025/24 kHz, uses bank 1 |
– | – | – | – | – | – | 0 | – | 8 kHz, does not use bank 1(1) |
– | – | – | – | – | – | 1 | – | 8 kHz, uses bank 1 |
– | – | – | – | – | – | – | 0 | 11.025/12 kHz, does not use bank 1(1) |
– | – | – | – | – | – | – | 1 | 11.025/12 kHz, uses bank 1 |
D7 | D6 | D5 | D4 | D3 | D2 | D1 | D0 | FUNCTION |
0 | EQ ON | |||||||
1 | – | – | – | – | – | – | – | EQ OFF (bypass BQ 0-7 of channels 1 and 2) |
– | 0 | – | – | – | – | – | – | Reserved(1) |
– | – | 0 | – | – | – | – | – | Ignore bank-mapping in bits D31–D8.Use default mapping.(1) |
1 | Use bank-mapping in bits D31–D8. | |||||||
– | – | – | 0 | – | – | – | – | L and R can be written independently.(1) |
– | – | – | 1 | – | – | – | – | L and R are ganged for EQ biquads; a write to left-channel BQ is also written to right-channel BQ. (0x29–0x2F is ganged to 0x30–0x36.Also 0x58–0x59 is ganged to 0x5C–0x5D) |
– | – | – | – | 0 | – | – | – | Reserved(1) |
– | – | – | – | – | 0 | 0 | 0 | No bank switching. All updates to DAP(1) |
– | – | – | – | – | 0 | 0 | 1 | Configure bank 1 (32 kHz by default) |
– | – | – | – | – | 0 | 1 | 0 | Configure bank 2 (44.1/48 kHz by default) |
– | – | – | – | – | 0 | 1 | 1 | Configure bank 3 (other sample rates by default) |
– | – | – | – | – | 1 | 0 | 0 | Automatic bank selection |
– | – | – | – | – | 1 | 0 | 1 | Reserved |
– | – | – | – | – | 1 | 1 | X | Reserved |