ES8311 User Guide
ES8311 User Guide
(Rev 1.00)
OVERVIEW
The ES8311 is a low-power mono audio codec with fully differential output and headphone amplifier, as well as analog inputs
that are programmable in fully differential configurations.
The record path of the ES8311 contains one fully differential input, analog digitally controlled mono microphone preamplifier,
and automatic gain control (ALC). Programmable filters are available during record which can remove audible noise.
The playback path includes a mono DAC, through programmable volume controls, to the fully differential output. The fully
differential output of ES8311 has a capability to drive 16Ω or 32Ω headphone load.
ES8311 is optimized for voice playback/record, so that it is very suitable for surveillance and voice application, such as car DV, IP
CAMERNA, DVR, NVR, Baby monitor, intelligent toy, intelligent Robert, etc..
FEATURES
1. One I2S/PCM digital serial audio port with Master or Slave mode, it can support I2S, Left Justified and DSP-A/B formats.
2. 2C
ADC RECORD FUNCTIONS
3. 100dB SNR, -88dB THD+N
4. Differential analog input
5. Low noise PGA for analog line in or microphone in
6. Noise reduction filters
7. ALC with Noise gate
8. Supports analog and digital microphone interface
DAC PLAYBACK FUNCTIONS
9. 110dB SNR, -85dB THD+N
10. Dynamic Range Compression for analog output
11. Differential Line Out with 16 Ω/32 Ω headphone driver
12. Pop and click noise suppression
13. ADC data can be routed to DAC.
14. DAC data can be routed to Digital Serial Output Port
20
19
18
17
16
MIC1P/DMIC_SDA
CDATA
CE
VMID
MIC1N
PAD
C85 1uF/6.3V/X5R
AGND C86 C0603
20pF/6.3V/X5R
R21
C0603
1 15 AGND C90 SPK1
I2C_SCL 2 CCLK ADCVREF 14
R0603 33R 5% C89 1uF/6.3V/X5R
3 MCLK DACVREF 13 C0603 1uF/6.3V/X5R C0603 1
PVDD 1 2 4 PVDD OUTN 12 2 P
U5 AUDIO PA
DVDD 5 DVDD OUTP 11 1 2 N
FB1 ES8311-QFN20-3x3mm AVDD C95
180R-100M C93 DGND AVDD FB15 1uF/6.3V/X5R
SCLK/DMIC_SCL
C0603 1uF/6.3V/X5R
DSDIN
AGND
C0603
LRCK
MCLK
I2S_MCLK BCLK
I2S_SCLK ADCOUT
I2S_ADCOUT LRCK
I2S_LRCK DACIN FB7
I2S_DACIN 1 2
R22
DMIC_CLK AGND
R0603 33R 5%
AGND SY SGND
R460 PVDD
R460 = 10K, R462 = NC, I2C Address = 0x19 AGND U308
10K 5%
R460= NC, R462= 10K, I2C Address = 0x18 R462 R0603 DMIC_DATA 1 3 C520
10K 5% SDA VCC 5 100nF/6.3V/X5R
R0603 DMIC_CLK 2 LR 4 C0603
R463 SCL GND
I2C_SDA DMIC
R0603 33R 5% C510 1uF/6.3V/X5R AGND
C511 C0603
20pF/6.3V/X5R
C0603 AGND
AGND
21
20
19
18
17
16
CDATA
MIC1P/DMIC_SDA
CE
VMID
MIC1N
PAD
C512 1uF/6.3V/X5R
AGND C513 C0603
20pF/6.3V/X5R
R465
C0603
1 15 AGND C515 SPK9
I2C_SCL 2 CCLK ADCVREF 14
R0603 33R 5% C514 1uF/6.3V/X5R
3 MCLK DACVREF 13 C0603 1uF/6.3V/X5R C0603 1
PVDD 1 2 4 PVDD OUTN 12 2 P
U307 AUDIO PA
DVDD 5 DVDD OUTP 11 1 2 N
FB16 ES8311-QFN20-3x3mm AVDD C516
180R-100M C518 DGND AVDD FB17 1uF/6.3V/X5R
SCLK/DMIC_SCL
C0603 1uF/6.3V/X5R
DSDIN
AGND
C0603
LRCK
MCLK
I2S_MCLK BCLK
I2S_SCLK ADCOUT
I2S_ADCOUT LRCK
I2S_LRCK DACIN FB18
I2S_DACIN 1 2
R466
DMIC_CLK AGND
R0603 33R 5%
AGND SY SGND
As with any high-resolution converter, designing with the ES8311 requires careful attention to PCB layout if its potential
performance is to be realized.
Figure 4 shows the recommended power arrangements, with AVDD and DVDD connected to a clean supply. A ferrite bead on
DVDD and AVDD is used to minimize EMI especially in the case where FM radio is an option. Decoupling capacitors and ferrite
bead should be located as close to the ES8311 as possible, with the low value ceramic capacitor being the nearest.
All signals, especially clocks, should be kept away from the ADCVRE, DACVREF, and VMID pins in order to avoid unwanted
coupling into the modulators. The ADCVRE, DACVREF and VMID decoupling capacitors, particularly the 0.1μF, must be
positioned to minimize the electrical path from these reference pins to GND.
The following shows recommending value for the decoupling and filter capacitors
Pins At Minimum Recommended
AVDD, DVDD, PVDD 0.1uF, Ceramic Capacitor 0.1uF, Ceramic Capacitor.
DACVREF, ADCVREF, VMID 0.47uF, Ceramic Capacitor 1uF, Ceramic Capacitor
The ground pins of ES8311, AGND and DGND, must be connected to audio ground plane. The audio ground is
connected to system ground in single-point grounding topology.
The Ferrite Bead and Capacitor must be
located as clode to ES8312 device package as possible
DVDD AVDD
C521
0R 0R
100nF C522
100nF
AUDIO_GND AUDIO_GND
DVDD
AVDD
AUDIO_GND
I2C I2C C117 100nF 1
OUTP
CPU ES8311 C118 100nF
PA 2 P
N
SPEAKER
OUTN
I2S I2S
AUDIO_GND
ADCVREF
DACVREF
C115 22uF 2
AGND
DGND
VMID
Headphone
GND
PAD
C116 22uF 3
1
1uF
1uF
C123 1uF
J1
AUDIO_GND
C124
C125
SY SGND
AUDIO_GND AUDIO_GND
These capacitors should be located as close as
possible to the device package.
0R
SY SGND AUDIO_GND
The following picture shows an example for AVDD and DVDD decoupling capacitors and ferrite bead placement.
Figure 5. The AVDD and DVDD decoupling capacitors and ferrite bead placement
There is a thermal pad at the bottom of ES8311 package. This thermal pad must be connected to audio ground.
PVDD
R14
R14 = 10K, R16 = NC, I2C Address = 0x41 AGND 10K 5%
R14 = NC, R16= 10K, I2C Address = 0x40 R16 R0603
10K 5%
R0603
R19
I2C_SDA
R0603 33R 5%
C83
20pF/6.3V/X5R
C0603
AGND
21
20
19
18
17
16
MIC1P/DMIC_SDA
CDATA
CE
VMID
MIC1N
PAD
AGND C86
20pF/6.3V/X5R
R21
C0603
1 15
I2C_SCL 2 CCLK ADCVREF 14
R0603 33R 5%
3 MCLK DACVREF 13
4 PVDD U5 OUTN 12
5 DVDD ES8311-QFN20-3x3mm OUTP 11
DGND AVDD
SCLK/DMIC_SCL
ASDOUT
DSDIN
AGND
LRCK
6
7
8
9
10
R-C low pass filter is strongly suggested to be used onto I2C DAT and I2C CLK. The I2C route must be shielded by ground.
If the length of I2S clock is larger than 10cm, please use 30pF capacitors between I2S clock route and ground. For example,
Rev1.11 7 September 2018
Latest datasheet: www.everest-semi.com or [email protected]
ES8311
Below application circuit shows how to connect OUTP/N of ES8311 to the differential input of audio power amplifier.
SPKVDD
R11
2K2 5%
R0603
C10 1uF/6.3V/X5R
C0603
AGND
AGND Q3
SPK_EN LBSS138LT1G
21
20
19
18
17
16
L6
C72
22uHIND_404020
1000pF-0603-50V
1.05A 0.35ohm
MIC1P/DMIC_SDA
CDATA
CE
VMID
MIC1N
PAD
C4 180R-100M
D20 D21
1uF/6.3V/X5R 500mA 25% AGND
PESD5V0U1BB PESD5V0U1BB
C0603 L0603
ASDOUT
AGND
DSDIN
AGND
C6
LRCK
In this example, the microphone has been configured as fully differential output. ES8311 doesn’t have bias voltage for
microphone, so the power supply on AVDD pin of ES8311 can be used as microphone bias supply. It is suggested that one R-C
low pass filter, with 220Ωresister and 1uF capacitor, should be used in the path of microphone bias supply. This low pass filter
can attenuate the high frequency noise of microphone bias, and will be helpful for improving of recording performance.
The microphone signal is sensitive to noise so that a differential route with ground shielding is suggested for the path of
MIC1P&MIC1N. Here, C80, C81, C70, R15, R20 and R13 is suggested to located close to electrets microphone.
AGND AGND
21
20
19
18
17
16
CE
CDATA
MIC1P/DMIC_SDA
MIC1N
PAD
VMID
1 15
2 CCLK ADCVREF 14
3 MCLK DACVREF 13
4 PVDD U5 OUTN 12
5 DVDD ES8311-QFN20-3x3mm OUTP 11
DGND AVDD
SCLK/DMIC_SCL
ASDOUT
DSDIN
AGND
LRCK
6
7
8
9
10
ES8311 has a PDM digital microphone interface which can be used to connect only one PDM microphone. In ES8311, there is an
internal register for selecting the data from left or right digital microphone. The L/R pin of digital microphone can be high or
low level according to the internal register selecting for left or right PDM microphone.
ES8311 doesn’t have clock signal for PDM digital microphone, so the BCLK signal is used for clock of PDM microphone. Also,
ES8311 doesn’t provide Bias voltage for PDM microphone, please use the power supply on PVDD of ES8311 as digital
microphone power supply. MIC1P of ES8311 is multiplex pin for analog input and PDM digital microphone input.
ES8311 provides PDM interface, volume control and filters, and outputs the recording data on ASDOUT pin in I2S, Left Justified
or DSP format according to the internal register setting of digital serial port format.
Below application circuit shows how to connect PDM microphone to ES8311.
PVDD
U6
DMIC_DATA 1 3 C96
SDA VCC 5 100nF/6.3V/X5R
DMIC_CLK 2 LR 4 C0603
SCL GND
DMIC
AGND
21
20
19
18
17
16
MIC1P/DMIC_SDA
CDATA
CE
VMID
MIC1N
PAD
1 15
2 CCLK ADCVREF 14
3 MCLK DACVREF 13
4 PVDD U7 OUTN 12
5 DVDD ES8311-QFN20-3x3mm OUTP 11
DGND AVDD
SCLK/DMIC_SCL
ASDOUT
DSDIN
AGND
LRCK
6
7
8
9
10
MCLK
I2S_MCLK BCLK
I2S_SCLK ADCOUT
I2S_ADCOUT LRCK
I2S_LRCK DACIN
I2S_DACIN
R33
DMIC_CLK AGND
R0603 33R 5%
6 I2C INTERFACE
ES8311 supports I2C interface to write or read internal register. The CE pin of ES8311 is the chip address pin for I2C. Two pull up
resisters, with the range from 1KΩ to 4.7KΩ, is used for pull-up resister on I2C CCLK and I2C CDATA pin.
The transfer rate of I2C interface is lower than 400kbps.
Pulled down to ground with 10kΩ resister 001 1000 / 0x18(7 bits address)
Pulled up to PVDD with 10kΩ resister 001 1001 / 0x19 (7 bits address)
ES8311 provides four formats of serial digital audio interface to the input of DAC or output from ADC through LRCK, SCLK,
ADCDAT and DACDAT pins.
I2S
Left Justified
Rev1.11 10 September 2018
Latest datasheet: www.everest-semi.com or [email protected]
ES8311
DSP mode B
The below diagram shows the timing of I2S, Left Justified, DSP-A and DSP-B mode. All of these four formats are MSB first.
1 SCLK 1 SCLK
SDATA 1 2 3 n-2 n-1 n 1 2 3 n-2 n-1 n
MSB LSB MSB LSB
SCLK
LEFT CHANNEL
LRCK RIGHT CHANNEL
SCLK
Register 0x09 and register 0x0A are used to select DAC and ADC formats. The following is the definition of register 0x09 and
register 0x0A.
ES8311 can work in either master or slave mode. In master mode, LRCK and SCLK are output pins and they are derived
internally from internal master clock (IMCLK). In slave mode, LRCK and SCLK are input pins and they are supplied externally.
MCLK is always input pin in either master or slave mode.
The Bit6(MSC) of register 0x00 selects Master or Slave mode. MSC bit = “1” selects master mode, and “0” selects slave mode.
By default, ES8311 will be in slave mode after power up reset.
The Bit[5:4](TRI) of register 0x07 is used to set BCLK, LRCK, ADCDAT to tri-state mode.
Below diagram shows the direction of LRCK, SCLK and MCLK in master and slave mode.
The clock signal on MCLK pin or SCLK pin can be used as master clock of ES8311. An internal multiplexer controlled by
MCLK_SEL (Reg0x00.Bit[7]) is used for the clock source selection of internal master clock. MCLK_SEL bit = ‘1’ selects clock on SCLK
pin for internal master clock, and ‘0’ selects clock on MCLK pin for internal master clock.
MCLK_ON(Reg0x01.Bit[5]) is ON/OFF switch for the clock on MCLK pin. If it is set to ‘1’, the switch is on and the clock on
MCLK pin can be used as source of internal multiplexer. If it is set ‘0’, the switch is off, and the MCLK clock can’t be used. The state
An internal logic inverter controlled by MCLK_INV(Reg0x01.Bit[6]) is used for inversion of clock. If the clock on SCLK pin is
used as the source of internal master clock, MCLK_INV = ‘1’ can only invert the master clock, not invert SCLK.
A clock divider and a clock multiplier are used to generate internal master clock from the output of multiplexer. The clock
divider controlled by DIV_PRE (Reg0x02.Bit[7:5]) provides divider ratio from 1 to 8. The clock multiplier controlled by MULTI_PRE
There is a restriction about the output frequency of clock divider. If DVDD is 1.8V, the output frequency of clock divider must
be lower than 4.5MHZ. If DVDD is 3.3V, the output frequency of clock divider must be lower than 10MHZ.
The clock signal output from multiplier is referred as internal master clock.
There are two independent clock dividers to get internal clock for ADC and DAC. The DIV_CLKADC clock divider controlled
by BIT[7:4] of register 0x05 is the ADC divider. The clock from ADC clock divider is referred as internal ADC clock. The
DIV_CLKDAC clock divider controlled by BIT[3:0] of register 0x05 is the DAC divider. The clock from DAC clock divider is
The frequency of internal ADC clock and internal DAC clock shouldn’t be higher than 13MHZ if DVDD is 1.8V, and the
In normal mode, the ADC can work single speed mode or double speed mode. In single speed mode, the ratio between
internal ADC clock and LRCK must be equal or greater than 256 (EQ enabled) or 240 (EQ disabled), and this ratio must be
integral multiple of sixteen. In double speed, the ratio must be equal or greater than 128, and this ratio must be
The DAC only works in single speed mode. the ratio between internal DAC clock and LRCK must be equal or greater than
There also have two control bits in register 0x01 to switch on / off the internal ADC or DAC clock. CLKADC_ON
(Reg0x01.Bit[3]) is the on/off control bit for internal ADC clock. CLKDAC_ON (Reg0x01.Bit[2]) is the on/off control bit for
internal DAC clock. If the on / off control bit set to 1, the ADC or DAC clock is on, otherwise the ADC or DAC clock is off.
The following table shows the clock ratio for ADC and DAC.
Speed mode The ratio between internal ADC/DAC clock and LRCK
The following examples show how to set the configuration registers to get a proper clock ratio.
Example 1. MCLK = 12.288MHZ, LRCK = 48KHZ, here MCLK is the clock signal on MCLK pad, and LRCK is the clock signal
on LRCK pad.
1. Get MCLK / LRCK ratio, 12288000÷48000 = 256
2. Set DIV_PRE to 0, and set MULT_PRE to 1, so that the internal master clock is equal to 12288000Hz, where 12288000Hz = MCLK ÷1×1.
3. Set DIV_CLKADC to 0. Set DIV_CLKDAC to 0, too. Now the internal ADC clock and internal DAC clock are all equal to 12288000Hz, and the
clock ratio is 256.
Example 2. MCLK = 12.288MHZ, LRCK = 8KHZ, here MCLK is the clock signal on MCLK pad, and LRCK is the clock signal
on LRCK pad.
1. Get MCLK / LRCK ratio, 12288000÷8000 = 1536
2. Set DIV_PRE to 5, and set MULT_PRE to 1 so that the internal master clock is equal to 2048000Hz, where 2048000Hz = MCLK ÷6×1.
3. Set DIV_CLKADC to 0. Set DIV_CLKDAC to 0, too. Now the internal ADC clock and internal DAC clock are all equal to 2048000Hz, and the
clock ratio is 256.
Example 3. MCLK = 18.432MHZ, LRCK = 16KHZ, here MCLK is the clock signal on MCLK pad, and LRCK is the clock signal
on LRCK pad.
1. Get MCLK / LRCK ratio, 18432000÷16000 = 1152
2. Set DIV_PRE to 2, and set MULT_PRE to 0, so that the internal master clock is equal to 2048000Hz, where 6144000 = MCLK ÷3×1.
Below Table shows the register configurations about some frequently-used clock condition.
MCLK(MHz) LRCK(kHz) Reg 0x02(hex) Reg 0x05(hex) Reg 0x16(hex) Reg 0x03(hex) Reg 0x04(hex)
24.576 32 0x40 0x00 0x04 0x10 0x10
24.576 48 0x20 0x00 0x04 0x10 0x10
12.288 32 0x48 0x00 0x04 0x10 0x10
12.288 48 0x00 0x00 0x04 0x10 0x10
18.432 32 0x20 0x00 0x03 0x12 0x12
18.432 48 0x48 0x00 0x04 0x10 0x10
11.2896 44.1 0x00 0x00 0x04 0x10 0x10
12 32 0x00 0x00 0x02 0x17 0x17
12 44.1 0x00 0x00 0x03 0x11 0x11
12 48 0x98 0x00 0x01 0x19 0x19
26 32 0x40 0x00 0x04 0x10 0x10
12 32 0x58 0x43 0x01 0x59 0x0F
12 44.1 0x00 0x10 0x03 0x51 0x11
12 48 0x98 0x10 0x01 0x59 0x19
3 32 0x18 0x41 0x23 0x52 0x17
25 32 0x48 0x21 0x22 0x55 0x10
25 48 0x28 0x21 0x22 0x55 0x10
The clock signal on SCLK pin is bit clock of ES8311. SCLK pin is a bi-direction pin. It is input pin while MSC(Reg0x00.Bit[6]) is
BCLK_ON controlled by Reg0x01.Bit[4] is the on/off control bit for bit clock. If BCLK_ON is set to ‘1’, the bit clock is on.
If MSC is set to 1, ES8311 will work in master mode and SCLK pin will be an output pin. BCLK divider controlled by
DIV_BCLK(Reg0x06.Bit[4:0]), with divider ratio from 1 to 72, is used to generate SCLK clock signal in master mode. In master
mode, codec can decide to output bit clock continuously or transmit bit clock only when data transmission, according to the
setting of BCLK_CON (Reg0x06.Bit[6]). BCLK divider and BCLK_CON all are inactive in slave mode.
One internal logic invertor controlled by BCLK_INV(Reg0x06.Bit[5]) is used for bit clock inversion.
The clock signal on LRCK pin is frame clock of ES8311. LRCK pin is a bi-direction pin. It is input pin while MSC(Reg0x00.Bit[6])
If MSC is set to 1, ES8311 will work in master mode and LRCK pin will be an output pin. LRCK divider controlled by
DIV_LRCK(Reg0x07.Bit[3:0] and Reg0x08[7:0]) is used to generate LRCK clock signal in master mode. In master mode, the duty
In slave mode, LRCK divider is inactive and ES8311 will detect MCLK/LRCK ratio automatically.
ES8311 has an internal power-on reset (POR) circuit to monitor voltage on DVDD pin. It automatically releases an internal reset
signal when voltage on DVDD pin reaches the defined thresholds. No external clocks are required for the POR circuit.
ES8311 is a low power codec and it has some control registers to do digital circuit reset and power control.
Register 0x00 is used to reset the internal digital circuit. The power consumption in reset mode is much lower than that in
normal mode.
CSM_ON (Reg0x00.Bit[7]) is the control bit for internal state machine. The state machine is in power down state while codec
power up. CSM_ON must be set to ‘1’ to start up state machine in normal mode.
RST_DIG controlled by Reg0x00.Bit[4] is used to reset internal digital circuit except for I2C control port. Set RST_DIG to ‘1’
RST_CMG controlled by Reg0x00.Bit[3] is used to reset internal clock manager. Set RST_CMG to ‘1’ will assert reset signal.
Set RST_ADC_DIG (Reg0x00.Bit[1]) to ‘1’ will reset digital circuit of ADC, and Set RST_DAC_DIG(Reg0x00.Bit[0]) to ‘1’ will
Set RST_MST (Reg0x00.Bit[2]) to ‘1’ will reset the circuit which works in master mode. RST_MST must be ‘0’ when codec
works in master mode. If codec works in slave mode, it is suggested to be ‘1’ for the minimum power consumption.
It is suggested that releasing a software reset operation to clear the internal state while codec power up. The following is
proposal procedure of software reset operation: set the reset bits to ‘1’ to release reset signal and clear CSM_ON to ‘0’ to power
down state machine, then delay a short time, such as several milliseconds, clear reset bits to ‘0’ and set CMS_ON to ‘1’ at last.
Please set all reset bits to ‘1’ and clear CSM_ON to ‘0’ to minimize the power consumption when codec is ready for standby
or sleep.
When codec is ready for standby or sleep, the controls bits in register 0x0D should be set to ‘1’ to minimize the power
In normal mode, the power consumption will be decreased signally if low power control is set. The audio performance, for
example THD+N and SNR, will be slightly decreased.
The capture path of ES8311 includes differential input, PGA, mono ADC and digital serial port. ES8311 only has one fully
differential analog input as microphone input. The analog input signal will be boosted by internal PGA and then be fed into
mono ADC. The digital output from ADC is fed into a DATA multiplexer which can select input signal for DSP block between ADC
output and DMIC data. The feature of DSP block includes filter, volume controls, ALC and equalizer. Then, the output of DSP
block will be combined with the data from DSDIN pin, and the data bits will output serially on ASDOUT pin.
The input path of ES8311 includes one fully differential input and a PGA with 0dB to 30dB gain range. LINSESL controlled by
Reg0x14.Bit[5:4] selects this differential input. PDN_PGA controlled by Reg0x0E.Bit[6] enable or disable this PGA. PGAGAIN
The fully differential input is microphone interface, and it isn’t recommended for line input. Below circuit illustrates how to
connect microphone to differential input of ES8311. ES8311 doesn’t have MICBIAS pin for microphone, so the analog power
AGND
21
20
19
18
17
16
CE
CDATA
MIC1P/DMIC_SDA
PAD
VMID
MIC1N
1 15
2 CCLK ADCVREF 14
3 MCLK DACVREF 13
4 PVDD U5 OUTN 12
5 DVDD ES8311-QFN20-3x3mm OUTP 11
DGND AVDD
SCLK/DMIC_SCL
ASDOUT
DSDIN
AGND
LRCK
10
6
7
8
9
The PGA of ES8311 is a low noise PGA with excellent noise performance, and its noise only increases slightly even if gain of
PDN_MOD controlled by Reg0x0E.Bit[5] is the power control for mono ADC. PDN_MOD = ‘1’ will power down ADC modulator.
RST_MOD controlled by Reg0x0E.Bit[4] is the reset of mono ADC. RST_MOD = ‘1’ will reset ADC modulator.
Please set PDN_MOD and RST_MOD to ‘1’ to minimize power consumption when ADC or Codec is ready for standby or sleep.
The digital output of mono ADC is fed into a DSP block which has features including high pass filter, volume control, ALC and
equalizer.
ADC_HPF controlled by Reg0x1C.Bit[5] is used to freeze or active internal high pass filter. This high pass filter can cancel the
DC offset in digital domain. ADC_HPFS1 and ADC_HPFS2 is the coefficient of high pass filter. The frequency response of this
filter will be updated if the coefficient has been changed. This high pass filter can be used to attenuate low-frequency noise if
ADC_HPF = ‘1’ actives this high pass filter and set it into dynamic mode. In this mode, the DC offset will be canceled
ADC_HPF = ‘0’ freezes this high pass filter. In this mode, the DC offset is frozen and a constant DC offset exists in digital
domain. If there is a constant DC offset in application, ADC_HPF can be cleared to freeze DC offset.
Also, this high pass filter can be disabled with two methods as following.
1. Clear ADC_HPF to ‘0’ before the state machine startup. It will freeze DC offset to zero.
2. Set ADC_RAMCLR to ‘1’ when ADC_HPF has been cleared to ‘0’. It will clear all data in RAM, including DC offset.
ES8311 ADC has a digital volume register and ALC (automatic level control) registers. ADC_VOLUME controlled by register 0x17
If ALC is enabled, the ADC_VOLUME register is the max gain of ALC, and the recording volume depends on ALC.
If ALC is disabled, the recording volume is controlled by ADC_VOLUME register. The digital volume has a range from -95.5dB to
10.3.3 EQUALIZER
ES8311 ADC has an equalizer which is a 2nd filter. This equalizer can be programmed as low pass filter or high pass filter. A
band-pass filter can be realized if this equalizer has been combined with the high pass filter descripted in section 10.3.1.
If this equalizer is used for ADC recording, the clock ratio between internal ADC MCLK and LRCK must be equal or greater than
256.
This equalizer can be bypassed if ADC_EQBYPASS is set to ‘1’. In this mode, the clock ratio between internal ADC MCLK and
Register 0x1E to Register 0x30 are all the coefficient of equalizer. Everest can provide a tool to calculate the coefficient of
equalizer. You can get this tool from Everest Semiconductor co., Ltd.
The data from DSP block can be outputted serially on ASDOUT pin. ES8311 has a flexible digital feedback feature which
combines the data from DSP block and data from DSDIN pin, output this combined data serially on ASDOUT. This is an
interesting feature and it will be helpful in the application which need to do echo cancellation.
ADCDAT_SEL controlled by Reg0x44.Bit[6:4] is used for this digital feedback feature.
In the application which need digital feedback, ADCDAT_SEL can be set to 4 or 5. Below diagram shows the I2S/PCM data
alignment in both default mode and digital feedback mode.
ES8311 has a digital microphone interface to connect one PDM digital microphone. MIC1P of ES8311 is a multiplexing pin for
analog input and DMIC data input. ES8311 can’t provide clock for digital microphone so that digital microphone shares clock
DMIC_ON = ‘1’ enable digital microphone interface, and DMIC_ON = ‘0’ disable digital microphone interface.
The data of digital microphone will be latched at high level of clock while DMIC_SENSE is cleared to ‘0’. Otherwise, the data of
PVDD
U6
R25 DMIC_DATA 1 3 C96
R25 = 10K, R27 = NC, I2C Address = 0x41 AGND SDA VCC 5 100nF/6.3V/X5R
10K 5% LR
R25 = NC, R27 = 10K, I2C Address = 0x40 R27 R0603 DMIC_CLK 2 4 C0603
10K 5% SCL GND
R0603 DMIC
R30
AGND
I2C_SDA
R0603 33R 5% C100 1uF/6.3V/X5R
C0603
AGND
AGND
21
20
19
18
17
16
CDATA
MIC1P/DMIC_SDA
CE
VMID
MIC1N
PAD
C103 1uF/6.3V/X5R
C104 C0603
20pF/6.3V/X5R
R32
C0603
1 15 AGND
I2C_SCL 2 CCLK ADCVREF 14
R0603 33R 5% C107 1uF/6.3V/X5R
3 MCLK DACVREF 13 C0603 1uF/6.3V/X5R C113 C0603
PVDD 4 PVDD OUTN 12
DVDD U7
5 DVDD ES8311-QFN20-3x3mm OUTP 11 C114 C0603
DGND AVDD AVDD
C110 C111 1uF/6.3V/X5R
SCLK/DMIC_SCL
DSDIN
AGND
LRCK
AGND AGND
6
7
8
9
10
MCLK
I2S_MCLK BCLK
I2S_SCLK ADCOUT
I2S_ADCOUT LRCK
I2S_LRCK DACIN
I2S_DACIN
R33
DMIC_CLK AGND
R0603 33R 5%
10.6 ADC SPEED MODE, ADC OVER SAMPLE RATE AND ADC SCALE
The ADC in ES8311 can work in single speed or double speed mode. ADC_FSMODE = ‘0’ selects single speed mode and
ADC_FSMODE = ‘1’ selects double speed mode.
ADC_OSR is the definition of ADC over sample rate. OSR must be equal or greater than 15 in single speed mode, and must be
equal or greater than 16 in double speed mode. So please don’t set ADC_OSR to the value equal or lower than 14. Below is the
equation of ADC_OSR. The default of ADC OSR is 32.
1. Single speed, OSR = (internal adc mclk) ÷ LRCK ÷ 8
2. Double speed, OSR = (internal adc mclk) ÷ LRCK ÷ 4
Rev1.11 26 September 2018
Latest datasheet: www.everest-semi.com or [email protected]
ES8311
ADC OSR will affect amplitude of the digital signal out from ADC. The smaller ADC OSR, the lower signal amplitude.
ADC_SCALE can compensate the amplitude for the ADC digital signal if the ADC OSR is lower than default. If ADC_SCALE isn’t
used for compensation while small number for OSR, the SNR of ADC will be lower than default because of the small amplitude.
ES8311 ADC has a fade in and fade out feature. ADC_RAMPRATE can enable or disable fade in and fade out feature, and select
The playback path of ES8311 includes serial digital port, DAC and differential output. ES8311 only has a mono DAC and a fully
differential analog output. The bit stream on DSDIN pin is received by serial digital port, and be transferred to internal DSP block
which provides filter, volume control, dynamic range control and equalizer features. Mono DAC converts digital to analog, then
ADC2DAC_SEL selects data source for mono DAC. ADC2DAC_SEL = ‘0’ selects the output of digital serial port as source of mono
DAC, and ADC2DAC_SEL = ‘1’ selects the digital output of ADC as source of mono DAC.
If ADC2DAC_SEL is cleared to ‘0’ and data of digital serial port is select for DAC source, user can select left data or right data of
digital serial port for mono DAC. SDP_IN_SEL selects left or right data for DAC.
ES8311 DAC has a fade in and fade out feature. DAC_RAMPRATE can enable or disable fade in and fade out feature, and select
DAC_VOLUME is digital volume control for DAC with range from -95.5dB to +32dB in 0.5dB/step resolution.
There are several mute control bits for ES8311 DAC. Set these mute bits to ‘1’ will mute DAC.
ES8311 has a dynamic range control feature which will update the signal amplitude of DAC automatically. This feature will
improve the experience on speaker or headphone even if the music volume is very soft. If dynamic range control (DRC) is enabled,
the DAC_VOLUME is inactive and DAC_VOLUME is used for the maximum gain of DRC.
DRC_EN = ‘1’ enables DRC feature and DRC_EN = ‘0’ disables DRC feature. DRC_MAXLEVEL selects the target maximum level, and
DRC_MINLEVEL selects the target minimum level. DRC_WINSIZE selects the window size time for volume detection.
When DRC is enabled, it automatically detects the maximum volume of digital signal in window size time controlled by
DRC_WINSIZE. If the maximum volume is higher than the target maximum level, it will turn down the volume of digital signal in
0.25dB/step resolution with a ramp rate controlled by DAC_RAMPRATE. If the maximum volume is lower than the target
minimum level, it will turn up the volume of digital signal with the same ramp rate and resolution as volume up. The gain for
11.4 EQUALIZER
ES8311 DAC has an equalizer which is a 1st filter. This equalizer can be programmed as low pass filter or high pass filter.
This equalizer can be bypassed if DAC_EQBYPASS is set to ‘1’. Everest can provide a tool to calculate the coefficient of DAC
equalizer. You can get this tool from Everest Semiconductor Co., Ltd.