ALC887
ALC887
ALC887
(PN: ALC887-GR)
DATASHEET
Rev. 1.0
24 July 2008
DISCLAIMER
Realtek provides this document “as is”, without warranty of any kind, neither expressed nor implied,
including, but not limited to, the particular purpose. Realtek may make improvements and/or changes in
this document or in the product described in this document at any time. This document could include
technical inaccuracies or typographical errors.
TRADEMARKS
Realtek is a trademark of Realtek Semiconductor Corporation. Other names mentioned in this document
are trademarks/registered trademarks of their respective owners.
Though every effort has been made to ensure that this document is current and accurate, more information
may have become available subsequent to the production of this guide. In that event, please contact your
Realtek representative for additional information that may help in the development process.
REVISION HISTORY
Revision Release Date Summary
1.0 2008/07/24 First release
Table of Contents
1. GENERAL DESCRIPTION ..............................................................................................................................................1
2. FEATURES .........................................................................................................................................................................2
2.1. HARDWARE FEATURES .................................................................................................................................................2
2.2. SOFTWARE FEATURES ..................................................................................................................................................3
3. SYSTEM APPLICATIONS ...............................................................................................................................................4
List of Tables
TABLE 1. DIGITAL I/O PINS ........................................................................................................................................................8
TABLE 2. ANALOG I/O PINS .......................................................................................................................................................8
TABLE 3. FILTER/REFERENCE .....................................................................................................................................................9
TABLE 4. POWER/GROUND .......................................................................................................................................................10
TABLE 5. LINK SIGNAL DEFINITIONS........................................................................................................................................12
TABLE 6. HDA SIGNAL DEFINITIONS .......................................................................................................................................12
TABLE 7. DEFINED SAMPLE RATE AND TRANSMISSION RATE ...................................................................................................18
TABLE 8. 48KHZ VARIABLE RATE OF DELIVERY TIMING ..........................................................................................................18
TABLE 9. 44.1KHZ VARIABLE RATE OF DELIVERY TIMING .........................................................................................................19
TABLE 10. 40-BIT COMMANDS IN 4-BIT VERB FORMAT .............................................................................................................22
TABLE 11. 40-BIT COMMANDS IN 12-BIT VERB FORMAT ...........................................................................................................22
TABLE 12. SUPPORTED COMMANDS ...........................................................................................................................................23
TABLE 13. SUPPORTED PARAMETERS .........................................................................................................................................24
TABLE 14. SOLICITED RESPONSE FORMAT .................................................................................................................................25
TABLE 15. UNSOLICITED RESPONSE FORMAT .............................................................................................................................25
TABLE 16. SYSTEM POWER STATE DEFINITIONS.........................................................................................................................26
TABLE 17. POWER CONTROLS IN NID 01H.................................................................................................................................26
TABLE 18. POWERED DOWN CONDITIONS ..................................................................................................................................27
TABLE 19. VERB – GET PARAMETERS (VERB ID=F00H) ............................................................................................................28
TABLE 20. PARAMETER – VENDOR ID (VERB ID=F00H, PARAMETER ID=00H).........................................................................28
TABLE 21. PARAMETER – REVISION ID (VERB ID=F00H, PARAMETER ID=02H) .......................................................................28
TABLE 22. PARAMETER – SUBORDINATE NODE COUNT (VERB ID=F00H, PARAMETER ID=04H)...............................................29
TABLE 23. PARAMETER – FUNCTION GROUP TYPE (VERB ID=F00H, PARAMETER ID=05H)......................................................29
TABLE 24. PARAMETER – AUDIO FUNCTION CAPABILITIES (VERB ID=F00H, PARAMETER ID=08H) .........................................29
TABLE 25. PARAMETER – AUDIO WIDGET CAPABILITIES (VERB ID=F00H, PARAMETER ID=09H).............................................30
TABLE 26. PARAMETER – SUPPORTED PCM SIZE, RATES (VERB ID=F00H, PARAMETER ID=0AH)...........................................31
TABLE 27. PARAMETER – SUPPORTED STREAM FORMATS (VERB ID=F00H, PARAMETER ID=0BH) ..........................................32
TABLE 28. PARAMETER – PIN CAPABILITIES (VERB ID=F00H, PARAMETER ID=0CH)...............................................................32
TABLE 29. PARAMETER – AMPLIFIER CAPABILITIES (VERB ID=F00H, INPUT AMPLIFIER PARAMETER ID=0DH).......................33
TABLE 30. PARAMETER – AMPLIFIER CAPABILITIES (VERB ID=F00H, OUTPUT AMPLIFIER PARAMETER ID=12H) ....................33
TABLE 31. PARAMETER – CONNECT LIST LENGTH (VERB ID=F00H, PARAMETER ID=0EH)......................................................34
TABLE 32. PARAMETER – SUPPORTED POWER STATES (VERB ID=F00H, PARAMETER ID=0FH) ................................................34
TABLE 33. PARAMETER – PROCESSING CAPABILITIES (VERB ID=F00H, PARAMETER ID=10H) .................................................34
TABLE 34. PARAMETER – GPIO CAPABILITIES (VERB ID=F00H, PARAMETER ID=11H)............................................................35
TABLE 35. PARAMETER – VOLUME KNOB CAPABILITIES (VERB ID=F00H, PARAMETER ID=13H).............................................35
TABLE 36. VERB – GET CONNECTION SELECT CONTROL (VERB ID=F01H) ...............................................................................36
TABLE 37. VERB – SET CONNECTION SELECT (VERB ID=701H) ................................................................................................36
TABLE 38. VERB – GET CONNECTION LIST ENTRY (VERB ID=F02H) ........................................................................................37
TABLE 39. VERB – GET PROCESSING STATE (VERB ID=F03H)...................................................................................................40
TABLE 40. VERB – SET PROCESSING STATE (VERB ID=703H)....................................................................................................40
TABLE 41. VERB – GET COEFFICIENT INDEX (VERB ID=DH).....................................................................................................41
TABLE 42. VERB – SET COEFFICIENT INDEX (VERB ID=5H) ......................................................................................................41
TABLE 43. VERB – GET PROCESSING COEFFICIENT (VERB ID=CH) ...........................................................................................42
TABLE 44. VERB – SET PROCESSING COEFFICIENT (VERB ID=4H).............................................................................................42
TABLE 45. VERB – GET AMPLIFIER GAIN (VERB ID=BH) ..........................................................................................................43
TABLE 46. VERB – SET AMPLIFIER GAIN (VERB ID=3H) ...........................................................................................................44
TABLE 47. VERB – GET CONVERTER FORMAT (VERB ID=AH) ...................................................................................................45
TABLE 48. VERB – SET CONVERTER FORMAT (VERB ID=2H) ....................................................................................................46
TABLE 49. VERB – GET POWER STATE (VERB ID=F05H)............................................................................................................46
TABLE 50. VERB – SET POWER STATE (VERB ID=705H)............................................................................................................47
TABLE 51. VERB –GET CONVERTER STREAM, CHANNEL (VERB ID=F06H) ...............................................................................47
7.1 Channel High Definition Audio Codec w/Two vii Rev. 1.0
Independent SPDIF-OUT
ALC887
Datasheet
List of Figures
FIGURE 1. BLOCK DIAGRAM ......................................................................................................................................................5
FIGURE 2. ANALOG INPUT/OUTPUT UNIT...................................................................................................................................6
FIGURE 3. ALC887 PIN ASSIGNMENTS ......................................................................................................................................7
FIGURE 4. HDA LINK PROTOCOL .............................................................................................................................................11
FIGURE 5. BIT TIMING ..............................................................................................................................................................12
FIGURE 6. SIGNALING TOPOLOGY ............................................................................................................................................13
FIGURE 7. SDO OUTBOUND FRAME.........................................................................................................................................14
FIGURE 8. SDO STREAM TAG IS INDICATED IN SYNC ...............................................................................................................14
FIGURE 9. STRIPED STREAM ON MULTIPLE SDOS ......................................................................................................................15
FIGURE 10. SDI INBOUND STREAM............................................................................................................................................16
FIGURE 11. SDI STREAM TAG AND DATA ...................................................................................................................................16
FIGURE 12. CODEC TRANSMITS DATA OVER MULTIPLE SDIS ....................................................................................................17
FIGURE 13. LINK RESET TIMING ................................................................................................................................................21
FIGURE 14. CODEC INITIALIZATION SEQUENCE ..........................................................................................................................22
FIGURE 15. LINK RESET AND INITIALIZATION TIMING................................................................................................................65
FIGURE 16. LINK SIGNALS TIMING .............................................................................................................................................66
FIGURE 17. OUTPUT AND INPUT TIMING ....................................................................................................................................67
FIGURE 18. FILTER CONNECTION ...............................................................................................................................................69
FIGURE 19. FRONT PANEL HEADER CONNECTION ......................................................................................................................70
FIGURE 20. JACK CONNECTION ON REAR PANEL........................................................................................................................71
FIGURE 21. SPDIF INPUT/OUTPUT CONNECTION .......................................................................................................................71
FIGURE 22. SECONDARY SPDIF-OUT CONNECTED TO HDMI TX CONNECTOR ........................................................................72
FIGURE 23. DIFFERENTIAL ANALOG CD USED AS LINE LEVEL INPUT........................................................................................72
7.1 Channel High Definition Audio Codec w/Two viii Rev. 1.0
Independent SPDIF-OUT
ALC887
Datasheet
1. General Description
The ALC887 is a 7.1 Channel High Definition Audio Codec with two independent SPDIF outputs.
Featuring eight channels of DAC support 7.1 sound playback, and integrates two stereo ADC that can
support a stereo microphone, and feature Acoustic Echo Cancellation (AEC), Beam Forming (BF), and
Noise Suppression (NS) for voice applications.
ALC887 is designed not only to meet the premium audio performance requirements in current WLP3.10
(Windows Logo Program), but provides better characteristics for future WLP. That brings user real high
fidelity of sound quality.
The ALC887 supports 16/20/24-bit SPDIF input and output functions with sampling rate of up to 192kHz,
offering easy connection of PCs to high quality consumer electronic products such as digital speakers.. In
addition to the standard (primary) SPDIF output function, the ALC887 features another independent
(secondary) SPDIF-OUT output and converters that transport digital audio to a High Definition Media
Interface (HDMI) transmitter output to HDTV system or A/V receiver, this feature is becoming more
common in high-end PCs.
As ALC series HD audio codec, all analog IO are input and output capable, and headphone amplifiers are
also integrated at each analog output. That provides flexible design for various system configuration.
Addition to audio functions, ALC887 also conforms to Intel’s Audio Codec low power state white paper
and is ECR compliant. This low power design consumes various and less power in different operation
mode, and save more power when system is in suspend mode.
The ALC887 supports host audio controller from the Intel ICH series chipset, and also from any other
HDA compatible audio controller. With EAX/Direct Sound 3Dcompatibility, and software utilities like
environment sound emulation, multiple-band software equalizer and dynamic range control, optional
Dolby® PCEE program, DTS® CONNECT™ program, the ALC887 provides an excellent home
entertainment package and game experience for PC users.
2. Features
2.1. Hardware Features
Meets premium audio requirements for Microsoft WLP 3.10
Meets stricter performance requirements for future WLP
High-performance DACs with 97dB Signal-to-Noise Ratio (SNR), ADCs with 90dB SNR
Four stereo DACs (8 channels) support 16/20/24-bit PCM format for 7.1 sound playback.
Two stereo ADCs (4 channels) support 16/20/24-bit PCM format recording simultaneously
All DACs supports 16/20/24-bit, 44.1k/48k/96k/192kHz sample rate
All ADCs supports 16/20/24-btt, 44.1k/48k/96k/192kHz sample rate
Two independent SPDIF-OUT converters support 16/20/24-bit, 44.1k/48k/88.2k/96k/192kHz sample
rate. One converter for normal SPDIF output, the other outputs an independent digital stream to the
HDMI transmitter
One SPDIF-IN converter supports 44.1k/48k/96k/192k Hz sample rate
High-quality analog differential CD input
Supports external PCBEEP input, built-in digital BEEP generator, and pass-through function in D3
mode
Software selectable 2.5V/3.75V VREFOUT to be analog microphone bias
Two jack detection pins each designed to detect up to 4 jacks
Supports legacy analog mixer architecture
Wide range (–80dB ~ +42dB) volume control with 1.5dB resolution of analog to analog mixer gain
Software selectable boost gain (+10/+20/+30dB) for analog microphone input
All analog jacks are stereo input and output re-tasking for analog plug & play
Built-in headphone amplifiers for each re-tasking jack
Two GPIOs for customized applications
Supports Anti-pop mode when analog power AVDD is on and digital power is off
Supports stereo digital microphone interface to improve voice quality
48-pin LQFP ‘Green’ package, and pin compatible with ALC888 series
7.1 Channel High Definition Audio Codec w/Two 2 Rev. 1.0
Independent SPDIF-OUT
ALC887
Datasheet
Supports low voltage IO for HDA Link (1.5V~3.3V)
Intel low power ECR compliant, supports power status control for each analog converter and pin
widgets, supports jack detection and wake up event in D3 mode
EAX™ 1.0 & 2.0 compatible, especially the EAX effect is supported in Windows Vista
Dynamic range control (expander, compressor and limiter) with adjustable parameters
Realtek proprietary Acoustic Echo Cancellation (AEC), Noise Suppression (NS), and Beam Forming
(BF) technology for voice application
Fortemedia® SAM™ technology for voice processing (Beam Forming and Acoustic Echo
Cancellation) (optional software feature)
3. System Applications
Desktop multimedia PCs
Notebook PCs
Front
Surr
SideSurr CLfe 17h
05h 0Fh M I/O
PCM-4 SRC M VOL Boost SIDESURR(Port-H)
DAC SideSurr DAC SideSurr
M
Independent SPDIF-OUT
Front
Surr
04h 0Eh SideSurr CLfe 16h
PCM-3 SRC DAC M VOL CLfe M
CLfe DAC I/O CEN/LFE(Port-G)
M Boo st
03h 0Dh Front
PCM-2 SRC DAC Surr DAC M VOL Surr Surr
M SideSurr CLfe 15h
M I/OA
02h 0Ch Boost SURR(Port-A)
PCM-1 SRC DAC Front DAC M VOL Front
M Front
Surr
Block Diagram
Figure 1.
VOL M
Front
VOL M Surr
SideSurr CLfe 1Bh
5
VOL M M I/OA
1 Boost LINE2(Port-E)
M
M
M Front
09h M Surr
M
SRC ADC VOL M M 22h SideSurr CLfe 1Ah
M
Parameters M
M
M I/OA
M Boost LINE1(Port-C)
M
M
M Front
M Surr
M SideSurr CLfe 19h
08h M
M M
Block Diagram
SRC ADC VOL M M I/OA MIC2(Port-F)
M Boost
M 23h
M
M
M Front
Surr
SideSurr CLfe 18h
M I/OA
Boost MIC1(Port-B)
DMIC_LR 12h
Rev. 1.0
Datasheet
ALC887
ALC887
Datasheet
A Left
R
R
EN_OBUF EN_AMP Right
Output_Signal_Left
Output_Signal_Right EN_OBUF
Input_Signal_Left
Input_Signal_Right EN_IBUF
5. Pin Assignments
5.1. ALC887 Pin Assignment
FRO N T- R (Port- D)
FRO N T- L (Port- D)
M I C1- V REFO- R
M I C1- V REFO- L
L I N E1- V REFO
L I N E2- V REFO
M I C2- V REFO
A V D D1
Sense C
Sense B
A VSS1
V REF
36 35 34 33 32 31 30 29 28 27 26 25
NC 37 24 LINE 1- R ( Port- C- R)
AVDD2 38 23 LINE 1- L ( Port- C- L)
SURR- L ( Port- A - L) 39 22 MIC 1- R ( Port- B- R)
JDREF 40 21 MIC 1- L ( Port- B- L)
SURR- R ( Port- A-R) 41 20 ALC887 CD-R
AVSS2 42 19 CD- GND
CENTER (Port-G-L) 43 18 CD- L
LFE ( Port- G- R) 44 17 MIC 2- R ( Port-F- R)
SIDE-L (Port-H-L) 45 LLLLLLL GXXXVV 16 MIC 2- L ( Port-F- L)
SIDE-R (Port-H-R) 46 15 LINE 2- R ( Port-E- R)
SPDIFI/EAPD 47 14 LINE 2- L ( Port-E- L)
SPDIFO 48 13 Sense A
1 2 3 4 5 6 7 8 9 10 11 12
PC B EEP
D V D D- I O
DVDD
SPDI FO2
SD A T A - O U T
GPOI 0/ D M I C- C L K
GPIO1/ D M I C- D A T A
D VSS
BITCLK
SY NC
SD A T A-I N
RESET#
6. Pin Descriptions
6.1. Digital I/O Pins
Table 1. Digital I/O Pins
Name Type Pin Description Characteristic Definition
RESET# I 11 H/W Reset Vt=0.5*DVDD
SYNC I 10 Sample Sync (48kHz) Vt=0.5*DVDD
BITCLK I 6 24MHz Bit Clock Input Vt=0.5*DVDD
SDATA-OUT I 5 Serial TDM Data Input Vt=0.5*DVDDIO
SDATA-IN O 8 Serial TDM Data Output Vt=0.5*DVDDIO, VOH=DVDDIO,
VOL=DVSS
SPDIFI / I/O 47 SPDIF Input / VIL=1.45V, VIH=1.85V /
EAPD Signal to Power Down External Amplifier VOH=DVDD, VOL=DVSS
SPDIFO O 48 First SPDIF Output Output has 12mA@75Ω driving capability
VOH=DVDD, VOL=DVSS
SPDIFO2 O 2 Secondary SPDIF Output for Digital Output has 12mA@75Ω driving capability
Audio Output to HDMI VOH=DVDD, VOL=DVSS
GPIO0 / IO 3 General Purpose Input/Output 0 Input: Vt=(2/3)*DVDD
DMIC-CLK Clock Output to Digital MIC Output: VOH=DVDD, VOL=DVSS
GPIO1 / IO 4 General Purpose Input/Output 1 Input: Vt=(2/3)*DVDD
DMIC-DATA Serial Data from Digital MIC Output: VOH=DVDD, VOL=DVSS
Total: 10 Pins
6.3. Filter/Reference
Table 3. Filter/Reference
Name Type Pin Description Characteristic Definition
VREF - 27 2.5V Reference Voltage 10µf capacitor to analog ground
MIC1-VREFO-L O 28 Bias Voltage for MIC1 Jack 2.5V/3.75V reference voltage
LINE1-VREFO O 29 Bias Voltage for LINE1 Jack 2.5V/3.75V reference voltage
MIC2-VREFO O 30 Bias Voltage for MIC2 Jack 2.5V/3.75V reference voltage
LINE2-VREFO O 31 Bias Voltage for LINE2 Jack 2.5V/3.75V reference voltage
MIC1-VREFO-R O 32 Bias Voltage for MIC1 Jack 2.5V/3.75V reference voltage
NC - 37 Not Connection
JDREF - 40 Reference Resistor for Jack Detection 20K, 1% external resistor to analog ground
Total: 8 Pins
6.4. Power/Ground
Table 4. Power/Ground
Name Type Pin Description Characteristic Definition
AVDD1 I 25 Analog VDD Analog power for mixer and amplifier
AVSS1 I 26 Analog GND Analog ground for mixer and amplifier
AVDD2 I 38 Analog VDD Analog power for DACs and ADCs
AVSS2 I 42 Analog GND Analog ground for DACs and ADCs
DVDD I 1 Digital VDD Digital power for core
DVDD-IO I 9 Digital VDD Digital IO power for HDA bus
DVSS I 7 Digital GND Digital ground for HDA bus
Total: 7 Pins
BCLK
(40-bit data)
SDI Stream
Response Stream 'C' Tag Stream 'C' Data
(36-bit data) (n bytes + 10-bit data)
RST#
BCLK
SDO 7 6 5 4 3 2 1 0 999 998 997 996 995 994 993 992 991 990
Figure 6 shows the possible connections between the HDA controller and codecs:
• Codec 0 is a basic connection. There is one single SDO and one single SDI for normal transmission
• Codec 1 has two SDOs for doubled outbound rate, a single SDI for normal inbound rate
• Codec 3 supports a single SDO for normal outbound rate, and two SDIs for doubled inbound rate
• Codec N has two SDOs and multiple SDIs
The multiple SDOs and multiple SDIs are used to expand the transmission rate between controller and
codecs. Section 7.2 Frame Composition, page 14 describes the detailed outbound and inbound stream
compositions for single and multiple SDOs/SDIs.
The connections shown in Figure 7 can be implemented concurrently in an HDA system. The ALC887 is
designed to receive a single SDO stream.
SDI14
.
.
.
.
.
.
SDI13
SDI2
HDA SDI1
Controller SDI0
SDO1
SDO0
SYNC
BCLK
RST#
SYNC
SYNC
SYNC
SYNC
SDO0
SDO0
SDO1
SDO0
BCLK
SDO0
SDO1
RST#
BCLK
BCLK
BCLK
S DI0
SDI0
RST#
SDI0
SDI0
SDI1
SDI1
SDI2
RST#
RST#
...
Codec 0 Codec 1 Codec 2 Codec N
For outbound frames, the stream tag is not in SDO, but in the SYNC signal. A new data stream is started
at the end of the stream tag. The stream tag includes a 4-bit preamble and 4-bit stream ID (Figure 8).
To keep the cadence of converters bound to the same stream, samples for these converters must be placed
in the same block.
Previous Frame
A 48kHz Frame is composed of Command stream and multiple Data streams Next Frame
BCLK
Stream Tag
msb lsb
SYNC 1010
SDO 7 6 5 4 3 2 1 0
Previous Stream
SDO1 is for transmitting a striped stream. The codec does not support multiple SDOs connected to
SDO0.
To ensure that all codecs can determine their corresponding stream, the command stream is not striped. It
is always transmitted on SDO0, and copied on SDO1.
S tre a m 'A ' T a g S tre a m 'X ' T a g S tre a m 'Y ' T a g
SYNC
F ra m e S Y N C
S tre a m 'A ' to C o d e c A
S D O0 ..
C o m m a n d S tre a m S tre a m 'X ' to C o d e c X S tre a m 'Y ' to C o d e c Y
.
Dn Dn -2
..
S D O1 C o m m a n d S tre a m . 0s 0s
..
D Dn -3 .
n -1
S tre a m A is "b it-s trip e d " o n S D O 0 a n d S D O 1
C o m m a n d s tre a m is u n c h a n g e d , n o t s trip e d
The SDI stream tag is not carried by SYNC, but included in the SDI. A complete SDI data stream
includes one 4-bit stream tag, one 6-bit data length, and n-bit sample blocks. Zeros will be padded if the
total length of the contiguous sample blocks within a given stream is not of integral byte length (Figure
11).
Previous Frame A 48kHz Frame is Composed of a Response Stream and Multiple Data streams Next Frame
Frame SYNC
SYNC
BCLK
Stream Tag Data Length in Bytes n-Bit Sample Block Null Pad Next Stream
SYNC
Frame SYNC
Stream 'A'
SDI 0 Response Stream Tag A Data A Stream 'X' Stream 'Y'
Stream 'B'
SDI 1 Response Stream Tag B Data B 0s 0s
Codec drives SDI0 and SDI1 Stream A, B, X, and Y are independent and have separate IDs
The HDA controller supports 48kHz and 44.1kHz base rates. Table7, page 18, shows the recommended
sample rates based on multiples or sub-multiples of one of the two base rates.
Rates in sub-multiples (1/n) of 48kHz are interleaving n frames containing no sample blocks. Rates in
multiples (n) of 48kHz contain n sample blocks in a frame. Table 8, shows the delivery cadence of
variable rates based on 48kHz.
The HDA link is defined to operate at a fixed 48kHz frame rate. To deliver samples in (sub) multiple
rates of 44.1kHz, an appropriate ratio between 44.1kHz and 48kHz must be maintained to avoid
frequency drift. The appropriate ratio between 44.1kHz and 48kHz is 147/160. Meaning 147 sample
blocks are transmitted every 160 frames.
11.025kHz: {12}=YNNNYNNNYNNNYNNNYNNNYNNNYNNNYNNNYNNNYNNNYNNNYNNN
{11}=YNNNYNNNYNNNYNNNYNNNYNNNYNNNYNNNYNNNYNNNYNNN
{ - } =NNNN
22.050kHz: {12}=YNYNYNYNYNYNYNYNYNYNYNYN
{11}=YNYNYNYNYNYNYNYNYNYNYN
{ - }=NN
44.1kHz 12- =Contiguous 12 frames containing 1 sample blocks each, followed by one frame with no
sample block.
88.2kHz 122- =Contiguous 12 frames containing 2 sample blocks each, followed by one frame with no
sample block.
174.4kHz 124- =Contiguous 12 frames containing 4 sample blocks each, followed by one frame with no
sample block.
1. Link Reset
2. Codec Reset
3. Codec changes its power state (for example, hot docking a codec to an HDA system)
1. The HDA controller asserts RST# for any reason (power up, or PCI reset)
2. Software initiates a link reset via the ‘CRST’ bit in the Global Control Register (GCR) of the HDA
controller
3. Software initiates power management sequences. Figure 13, page 21, shows the ‘Link Reset’ timing
including the ‘Enter’ sequence ( ~ ) and ‘Exit’ sequence ( ~ )
Software writes a 0 to the ‘CRST’ bit in the Global Control Register of the HDA controller to initiate a
link reset
When the controller completes the current frame, it does not signal the normal 8-bit frame SYNC at
the end of the frame
The controller drives SYNC and all SDOs to low. Codecs also drive SDIs to low
The controller asserts the RST# signal to low, and enters the ‘Link Reset’ state
All link signals driven by controller and codecs should be tri-state by internal pull low resistors
If BCLK is re-started for any reason (codec wake-up event, power management, etc.)
Software is responsible for de-asserting RST# after a minimum of 100µs BCLK running time (the
100µsec provides time for the codec PLL to stabilize)
Minimum of 4 BCLK after RST# is de-asserted, the controller starts to signal normal frame SYNC
When the codec drives its SDI to request an initialization sequence (when the SDI is driven high at the
last bit of frame SYNC, it means the codec requests an initialization sequence)
Previous Frame 4 BCLK 4 BCLK Link in Reset >=100 usec >= 4 BCLK Initialization Sequence
BCLK
Wake Event
SDIs Driven Low Pulled Low
9
1 3 4 5 6 7
The codec will stop driving the SDI during this turnaround period
The controller releases the SDI after the CAD has been assigned
BCLK
4 5 6 Response
SDIx
SD0 SD1 SD14
1 2 3 7 8
RST#
Codec Codec Controller Drives SDIx Controller Codec Drives SDIx
Drives SDIx Turnaround Turnaround
( 477 BCLK ( 477 BCLK
Max.) Max.)
Audio In Converter
Beep Generator
Selector Widget
Power Widget*1
Volume Knob
Sum Widget
Pin Widget
Root Node
Get Verb
Set Verb
Supported Verb
Audio In Converter
Beep Generator
Selector Widget
Power Widget*1
Parameter ID
Volume Knob
Sum Widget
Pin Widget
Root Node
Supported Parameter
Vendor ID 00 Y - - - - - - - - - - - - -
Revision ID 02 Y - - - - - - - - - - - - -
Subordinate Node Count 04 Y Y - - - - - - - - - - - -
Function Group Type 05 - Y - - - - - - - - - - - -
Audio Function Group Capabilities 08 - Y - - - - - - - - - - - -
Audio Widget Capabilities 09 - - - - - Y Y Y Y Y Y Y Y Y
Sample Size, Rate 0A - Y - - - Y Y - - - - - - -
Stream Formats 0B - Y - - - Y Y - - - - - - -
Pin Capabilities 0C - - - - - - - Y - - - - - -
Input Amp Capabilities 0D - - - - - - Y - Y Y - - - -
Output Amp Capabilities 12 - - - - - - - Y Y - - - - -
Connection List Length 0E - - - - - - Y Y Y Y - - - -
Supported Power States 0F - Y - - - Y Y Y Y Y - - - Y
Processing Capabilities 10 - - - - - - - - - - - - - Y
GPI/O Count 11 - - - - - - - - - - - - - -
Volume Knob Capabilities 13 - - - - - - - - - - - - - -
*1: The ALC887 does not support Modem/HDMI/Vendor groups and Power State widgets.
Unsolicited Responses are sent by the codec independently of software requests. Jack Detection or GPI
status information can be actively delivered to the controller and interpreted by software. The ‘Tag’ in
Bit[31:28] is used to identify unsolicited events. This tag is undefined in the HDA specifications.
Note: The response stream in the link protocol is 36-bits wide. The response is placed in the lower 32-bit
field. Bit-35 is a ‘Valid’ bit to indicate the response is ‘Ready’. Bit-34 is set to indicate that an unsolicited
response was sent.
In the ALC887, all the widgets, including output/input converters, support power control. Software may
have various power states depending on system configuration. Table 17 indicates those nodes that support
power management. To simplify power control, software can configure whole codec power states through
the audio function (NID=01h). Output converters (DACs) and input converters (ADCs) have no
individual power control to supply fine-grained power control.
The ALC887 minimizes D3 state idle mode power consumption and increases overall battery life in
mobile systems.
In D3 mode, only a power on reset or a ‘double function reset’ resets all ALC887 settings, cutting
software configuration time spent entering/leaving D3 state, and reducing latency time for D3 to D0
transitions.
The ALC887 supports Wake-Up events in D3 mode, including jack detection and GPIO status changes. If
the HDA-Link was alive (with BCLK), the ALC887 Wake-Up response is as normal. If no BITCLK is
present, the ALC887 drives the SDI high in order to wake up the system
Table 22. Parameter – Subordinate Node Count (Verb ID=F00h, Parameter ID=04h)
Codec Response Format
Bit Description
31:24 Reserved. Read as 0’s.
23:16 Starting Node Number.
The starting node number in the sequential widgets
15:8 Reserved. Read as 0’s.
7:0 Total Number of Nodes. For a root node, the total number of function groups in the root node.
For a function group, the total number of widget nodes in the function group
Table 26. Parameter – Supported PCM Size, Rates (Verb ID=F00h, Parameter ID=0Ah)
Codec Response Format
Bit Description
31:21 Reserved. Read as 0’s
20 B32. 32-bit audio format support
0: Not supported 1: Supported
19 B24. 24-bit audio format support
0: Not supported 1: Supported
18 B20. 20-bit audio format support
0: Not supported 1: Supported
17 B16. 16-bit audio format support
0: Not supported 1: Supported
16 B8. 24-bit audio format support
0: Not supported 1: Supported
15:12 Reserved. Read as 0’s
11 R12. 384kHz (=8*48kHz) rate support
0: Not supported 1: Supported
10 R11. 192kHz (=4*48kHz) rate support
0: Not supported 1: Supported
9 R10. 176.4kHz (=4*44.1kHz) rate support
0: Not supported 1: Supported
8 R9. 96kHz (=2*48kHz) rate support
0: Not supported 1: Supported
7 R8. 88.2kHz (=2*44.1kHz) rate support
0: Not supported 1: Supported
6 R7. 48kHz rate support
0: Not supported 1: Supported
5 R6. 44.1kHz rate support
0: Not supported 1: Supported
4 R5. 32kHz (=2/3*48kHz) rate support
0: Not supported 1: Supported
3 R4. 22.05kHz (=1/2*44.1kHz) rate support
0: Not supported 1: Supported
2 R3. 16kHz (=1/3*48kHz) rate support
0: Not supported 1: Supported
1 R2. 11.025kHz (=1/4*44.1kHz) rate support
0: Not supported 1: Supported
0 R1. 8kHz (=1/6*48kHz) rate support
0: Not supported 1: Supported
Table 27. Parameter – Supported Stream Formats (Verb ID=F00h, Parameter ID=0Bh)
Codec Response Format
Bit Description
31:3 Reserved. Read as 0’s
2 AC3
0: Not supported 1: Supported
1 Float32
0: Not supported 1: Supported
0 PCM
0: Not supported 1: Supported
Note: Input converters and output converters support this parameter.
7 L-R Swap. Indicates the capability of swapping the left and rights
6 Balanced I/O Pin. ‘1’ indicates this pin complex has balanced pins.
5 Input Capable. ‘1’ indicates this pin complex supports input.
4 Output Capable. ‘1’ indicates this pin complex supports output.
3 Headphone Drive Capable. ‘1’ indicates this pin complex has an amplifier to drive a headphone.
2 Presence Detect Capable. ‘1’ indicates this pin complex can detect whether there is anything plugged in.
1 Trigger Required. ‘1’ indicates whether a software trigger is required for an impedance measurement.
0 Impedance Sense Capable.
‘1’ indicates this pin complex can perform analog sense on the attached device to determine its type
Note: Only Pin Complex widgets support this parameter.
Table 29. Parameter – Amplifier Capabilities (Verb ID=F00h, Input Amplifier Parameter ID=0Dh)
Codec Response Format
Bit Description
31 (Input) Mute Capable
30:23 Reserved. Read as 0
22:16 Step Size
Indicates the size of each step in the gain range. Each step may be 0~32dB, specified in 0.25dB steps.
‘0’ indicates a step of 0.25dB. ‘127’ indicates a step of 32dB
15 Reserved. Read as 0
14:8 Number of Steps
Indicates the number of steps in the gain range. ‘0’ means the gain is fixed
7 Reserved. Read as 0
6:0 Offset
Indicates which step is 0dB
Table 30. Parameter – Amplifier Capabilities (Verb ID=F00h, Output Amplifier Parameter ID=12h)
Codec Response Format
Bit Description
31 (Output) Mute Capable
30:23 Reserved. Read as 0
22:16 Step Size
Indicates the size of each step in the gain range. Each step may be 0~32dB, specified in 0.25dB steps.
‘0’ indicates a step of 0.25dB. ‘127’ indicates a step of 32dB
15 Reserved. Read as 0
14:8 Number of Steps
Indicates the number of steps in the gain range. ‘0’ means the gain is fixed
7 Reserved. Read as 0
6:0 Offset. Indicates which step is 0dB
Table 31. Parameter – Connect List Length (Verb ID=F00h, Parameter ID=0Eh)
Codec Response Format
Bit Description
31:8 Reserved. Read as 0
7 Short Form
0: Short Form 1: Long Form
6:0 Connect List Length
Indicates the number of inputs connected to a widget. If the Connect List Length is 1, there is only one input,
and there is no Connection Select Control (Not a MUX widget)
Codec Response for NID= 22h/23h/ (Sum Widget before MIX/LINE ADCs)
Bit Description
31:24 Connection List Entry (N+3)
Returns 1Bh (Pin Complex – LINE2) for N=0~3
Returns 15h (Pin Complex-SURR) for N=4~7
Returns 00h for N>7
23:16 Connection List Entry (N+2)
Returns 1Ah (Pin Complex – LINE1) for N=0~3
Returns 14h (Pin Complex – FRONT) for N=4~7
Returns 0Bh (Sum Widget) for N=8~11
Returns 00h for N>11
15:8 Connection List Entry (N+1)
Returns 19h (Pin Complex – MIC2) for N=0~3
Returns 1Dh (Pin Complex – PCBEEP) for N=4~7
Returns 17h (Pin Complex – SIDESURR) for N=8~11
Returns 00h for N>11
Codec Response for 08h (LINE ADC) and 09h (MIX ADC)
Bit Description
31:8 0’s
7 Bit-15 is 0 in ‘Get Amplifier Gain’: Input Amplifier Mute.
0: Unmute 1: Mute
Bit-15 is 1 in ‘Get Amplifier Gain’: Read as 0. (No Output Amplifier Mute)
6:0 Bit-15 is 0 in ‘Get Amplifier Gain’: Input Amplifier Gain [6:0].
7-bit step value (0~31) specifying the volume from –16.5B~+30dB in 1.5dB steps.
Bit-15 is 1 in ‘Get Amplifier Gain’: Read as 0’s (No Output Amplifier Mute)
Codec Response for NID=14h~1Bh (Pin Complex: Front, Surr, CenLfe, SideSurr, MIC1, MIC2, LINE1, LINE2)
Bit Description
31:8 0’s
7 Bit-15 is 0 in ‘Get Amplifier Gain’: Read as 0
Bit-15 is 1 in ‘Get Amplifier Gain’: Output Amplifier Mute.
0:Unmute 1:Mute (NID=14h~1Bh,Default=1)
6:0 Bit-15 is 0 in ‘Get Amplifier Gain’: Read as 0’s
Bit-15 is 1 in ‘Get Amplifier Gain’: Read as 0 (No Output Amplifier Gain)
Codec Response for NID=02h~06h, 10h (Output Converters: Front, Surr, Cen/Lfe, SideSurr, 1st SPDIF-OUT, 2nd
SPDIF-OUT).
Codec Response for NID=08h~0Ah (Input Converters: LINE, MIX DAC, and SPDIF-IN)
Bit Description
31:16 Reserved. Read as 0
15 Stream Type (TYPE)
0: PCM 1: Non-PCM
14 Sample Base Rate (BASE)
0: 48kHz 1: 44.1kHz
13:11 Sample Base Rate Multiple (MULT)
000b: *1 001b: *2 010b: *3 011b: *4 100b~111b: Reserved
10:8 Sample Base Rate Divisor (DIV)
000b: /1 001b: /2 010b: /3 011b: /4 100b: /5
101b: /6 110b: /7 111b: /8
The ALC887 does not support Divisor. Always read as 000b
7 Reserved. Read as 0.
6:4 Bits per Sample (BITS)
000b: 8 bits 001b: 16 bits 010b: 20 bits 011b: 24 bits 100b: 32 bits
101b~111b: reserved
3:0 Number of Channels
0: 1 channel 1: 2 channels 2: 3 channels ……… 15: 16 channels
Codec Response for NID=02h~06h, 10h (Output Converters: Front, Surr, Cen/Lfe, SideSurr, 1st SPDIF-OUT, 2nd
SPDIF-OUT)
Codec Response for NID=08h~0Ah (Input Converters: LINE ADC, MIX DAC, and SPDIF-IN)
Bit Description
31:8 Reserved. Read as 0’s
7:4 Stream[3:0]
The link stream used by the converter. 0000b is stream 0, 0001b is stream 1, etc.
3:0 Channel[3:0]
The lowest channel used by the converter. A stereo converter will use the set channel n as well as n+1 for its
left and right channel.
‘Pin Control’ in command [7:0] for NID=14h~1Bh, 1Ch, 1Dh, 1Eh, 11h, 1Fh: (Pin Complex: Front, Surr, CenLfe,
SideSurr, MIC1, MIC2, LINE1, LINE2, CD-IN, PCBEEP, 1st SPDIF-OUT, 2nd SPDIF-OUT and SPDIF-IN)
Bit Description
31:1 Reserved. Read as 0’s
7 H-Phn Enable
0: Disabled 1: Enabled
6 Out Enable
0: Disabled 1: Enabled
5 In Enable (Input Buffer Enable, EN_IBUF for a I/O unit)
0: Disabled 1: Enabled
4: Reserved
2:0 VrefEn (Vrefout Enable Control)
000b: Hi-Z (Disabled) 001b: 50% of AVDD 010b: Ground 0V
011b: Reserved 100b: 80% of AVDD) 101b: 100% of AVDD
110b~111b: Reserved
Codec Response for NID=14h, 15h, 16h, 17h, 18h, 19h, 1Ah, 1Bh, 1Eh, 11h and 1Fh
Bit Description
31:0 32-bit configuration information for each pin widget
Note: The 32-bit registers for each Pin Widget are sticky and will not be reset by a LINK Reset or Codec Reset (Function
Reset Verb).
Codec Response
Bit Description
31:0 Reserved. Read as 0’s
Note: The Function Reset command causes all widgets in the ALC887 to return to their power on default state.
NID=06h and 10h (1st and 2nd SPDIF-OUT) Response to ‘Get verb’ – F0Dh (Control 1 for SIC bit[15:0])
NID=06h and 10h (1st and 2nd SPDIF-OUT) Response to ‘Get verb’ – F0Eh (Control 2 for SIC bit[15:0])
Bit Description – SIC (SPDIF IEC Control) Bit[7:0]
31:16 Read as 0’s
15 Reserved. Read as 0’s
14:8 CC[6:0] (Category Code)
7 LEVEL (Generation Level)
6 PRO (Professional or Consumer Format)
0: Consumer format
1: Professional format
5 /AUDIO (Non-Audio Data Type)
0: PCM data
1: AC3 or other digital non-audio data
4 COPY (Copyright)
0: Asserted
1: Not asserted
3 PRE (Pre-Emphasis)
0: None
1: Filter pre-emphasis is 50/15 microseconds
2 VCFG for Validity Control (control V bit and data in Sub-Frame)
1 V for Validity Control (control V bit and data in Sub-Frame)
0 Digital Enable. DigEn
0: OFF
1: ON
Set Command Format (Verb ID=70Yh, Set Control 2) Codec Response Format
Bit [31:28] Bit [27:20] Bit [19:8] Payload Bit [7:0] Response [31:0]
CAd=X Node ID=Xh Verb ID=70Eh SIC [15:8] 0’s
‘Payload’ in Set Control 1 for NID=06h and 10h (1st and 2nd SPDIF-OUT)
Bit Description – SIC (SPDIF IEC Control) Bit[7:0]
7 LEVEL (Generation Level)
6 PRO (Professional or Consumer Format)
0: Consumer format 1: Professional format
5 /AUDIO (Non-Audio Data Type)
0: PCM data 1: AC3 or other digital non-audio data
4 COPY (Copyright)
0: Asserted 1: Not asserted
3 PRE (Pre-Emphasis)
0: None 1: Filter pre-emphasis is 50/15 microseconds
2 VCFG for Validity Control (control V bit and data in Sub-Frame)
1 V for Validity Control (control V bit and data in Sub-Frame)
0 Digital Enable. DigEn
0: OFF 1: ON
‘Payload’ in Set Control 2 for NID=06h and 10h (1st and 2nd SPDIF-OUT)
Bit Description – SIC (SPDIF IEC Control) Bit[7:0]
7 Reserved. Read as 0’s
6:0 CC[6:0] (Category Code)
CODEC response in Get Command for NID=14h (LINE-OUT Pin Widget), 15h (HP-OUT Pin Widget)
Bit Description
31:3 Reserved
2 L-R Swap
The ALC887 does not support swapping left and right channel, it is read as 0.
1 EAPD Enable
0: EAPD pin state is not controlled by power state of corresponding pin widget.
1: EAPD pin state is controlled by power state of corresponding pin widget.
0 BTL Enable
The ALC887 does not support BTL output, it is read as 0.
9. Electrical Characteristics
9.1. DC Characteristics
9.1.1. Absolute Maximum Ratings
Table 77. Absolute Maximum Ratings
Parameter Symbol Minimum Typical Maximum Units
Power Supply
Digital Power for Core DVDD 3.0 3.3 3.6 V
Digital Power for HDA Link DVDD-IO* 1.5 3.3 3.6 V
Analog AVDD** 4.5 5.0 5.5 V
o
Ambient Operating Temperature Ta 0 - +70 C
o
Storage Temperature Ts - - +125 C
ESD (Electrostatic Discharge)
Susceptibility Voltage
All Pins Pass 3500V
*: The digital link power DVDD-IO must be lower than the digital core power DVDD.
**: The standard testing condition before shipping is AVDD = 5.0V, the lowest operating AVDD is 4.5V.
9.2. AC Characteristic
9.2.1. Link Reset and Initialization Timing
Table 81. Link Reset and Initialization Timing
Parameter Symbol Minimum Typical Maximum Units
RESET# Active Low Pulse Width TRST 1.0 - - µs
RESET# Inactive to BCLK TPLL 20 - - µs
Startup Delay for PLL Ready Time
SDI Initialization Request TFRAME - - 1 Frame Time
Initialization
4 BCLK 4 BCLK >= 4 BCLK Sequence
BCLK
Normal Frame
SYNC SYNC
SDO
Initialization
SDI Request
RESET#
TRST
TPLL T FRAME
T_cycle
T_high
V IH
BCLK VT
V IL
T_low
T_setup T_hold
SDO
T_tco
VOH
SDI
VOL
T_flight
Tcycle
Thigh Tlow
VOH
VIH
Vt
VIL
V OL
Trise T fall
Figure 17. Output and Input Timing
MIC2-VREFO
LINE1-VREFO
+5VA
CEN-JD R238 10K,1%
FRONT-L
FRONT-IO-SENSE R239 0 C229 10u C230
FRONT-R +
+
10u
If analog CD is connected as
U22
36
35
34
33
32
31
30
29
28
27
26
25
AVDD1
VREF
Sense B
LINE2-VREFO
LINE1-VREFO
Sense C
FRONT-L
MIC1-VREFO-L
MIC2-VREFO
FRONT-R
MIC1-VREFO-R
47 14 LINE2-L
GPIO0/DMIC-CLK
SPDIFI/EAPD LINE2-L
48 13 Sense A R241 5.1K,1% FRONT-JD
SDATA-OUT
SPDIFO Sense A
SDATA-IN
S/PDIF-IN
SPDIFO2
DVDD-IO
PCBEEP
LINE1-JD
RESET#
R242 10K,1%
BIT-CLK
DVSS2
DVDD
SYNC
10
11
12
S/PDIF-OUT
+3.3VD
R248 47K
C252 + C253 1u
Ext. PCBEEP
If secondary S/PDIF-OUT is 10u
connected to HDMI Tx connector R249
RESET#
R250 4.7k
22
R274 0
S/PDIF-OUT2 SYNC
SDIN
R254 22
JP9 BCLK
DMIC-CLK Tied at one point only under
4 DMIC-DATA C260
3 22P the codec or near the codec
2 +3.3VD
1
Pin 3 and pin 4 are
DMIC Interface compatible with with SDOUT
DGND AGND
ALC888S version B
If digital MIC interface
is adapted
For the best compatibility with long front panel cable may not follow Intel’s Front Panel I/O Connectivity
standard, the option 2 header design has good ground loop is strongly recommended. The main drawback
of option 2 is not suitable for AC’97 front cable
MIC2-VREFO
9 10
CON10A R18 JACK 7
Onboard front R19
PORT2-SENSE-RETURN 4
panel header 20K,1% 3
39.2K,1% FIO-PORT2-R L14 FERB
5
FIO-PORT2-L L15 FERB
2
1
C41 C42
Option 2: A more flexible front panel header FIO-PORT2 (Jack-E)
100P 100P
(Each port can be in different jack detect group)
MIC2-VREFO
D5 D6
5 6 Key Sense B
100P 100P
LINE2-L C51 100u 7 8 LINE2-JD
+
9 10 Sense B
CON10A R26 39.2K,1%
Onboard front
panel header
MIC1-VREFO-R
R234 JACK 30
R235
4.7K JACK 31 SURR-JD
4.7K MIC1-JD 4
4 SURR-R C218 1u L69 FERB 3
MIC1-R C219 1u L70 FERB 3 5
5 SURR-L C220 1u L72 FERB
MIC1-L C221 1u L73 FERB 2
2 1
1 C222 C223
C224 C225 MIC-IN (Port-B) 2.2~4.7uF for DA (LF) SURROUND (Port-A)
100P 100P
100P 100P frequence response
JACK 32
JACK 33 CEN-JD
FRONT-JD 4
4 LFE C228 1u L74 FERB 3
FRONT-R C231 100u L75 FERB 3 5
+
2 1
1 C234 C235
C236 C237 2.2~4.7uF for DA (LF) CENTER/LFE (Port-G)
FRONT-OUT (Port-D) 100P 100P
100P 100P frequence response
JACK 35
JACK 34
LINE1-JD SIDESURR-JD
4 4
LINE1-R C239 1u L78 FERB 3 SIDE-R C240 1u L79 FERB 3
5 5
LINE1-L C241 1u L80 FERB SIDE-L C242 1u L81 FERB
2 2
1 1
C245 C246 LINE-IN (Port-C) C247 C248
2.2~4.7uF for DA (LF) SIDESURR (Port-H)
100P 100P 100P 100P
frequence response
U2 3 TOTX178
Transmitter U2 4 TOTX178 U2 5 TORX178S
S/PDIF-OUT
C2 61 Transmitter Receiver
1 R2 58 100 S/PDIF-OUT
4 5 4 5 4 5
J26 0.01u
3
1
GND
GND
GND
VCC
VCC
VCC
OUT
C2 62 R2 59
IN
IN
RCA
100P 220 R2 60 10
2
S/PDIF-OUT
C2 63 C2 64 L86 47uH C2 65
0.1u 0.1u +5VD 0.1u
+5VD +5VD
+3.3VD
+3.3VD
U2 6 TORX178S
Receiver R2 61
S/PDIF-OUT R2 62
S/PDIF-IN 12K@ALC882;NC@ALC888/8 83 C2 66 S/PDIF-IN
1 R2 63 100 S/PDIF-OUT R 12K@ALC882;NC@ALC888/8 83
4 5 1 C2 67 0.01u R2 64 10 S/PDIF-IN
0.01u S C2 68 0.01u R2 65 10 S/PDIF-IN
3
1
GND
VCC
OUT
C2 69 R2 71 R2 66 C2 70 R2 67 J5A3
J28 75 J27 RCA C2 71 R2 70
R2 69 10 S/PDIF-IN RCA RCA 100P 220 R2 68
75
100P
10K@ALC882,NC@ALC883 100P
G
2
10K@ALC882,NC@ALC888/8 833
2
L87 47uH C2 72
0.1u
+5VD J5A is RCA jack with switch
L1