Intel High Definition Audio
Intel High Definition Audio (IHDA) (also called HD Audio or development codename Azalia) is a specification for the audio sub-system of personal computers. It was released by Intel in 2004 as successor to its AC'97 PC audio standard.
The Intel High Definition Audio specification includes the following features:
- Up to 15 input and 15 output streams
- Up to 16 PCM audio channels per stream
- Sample resolutions of 8–32 bits
- Sample rates of 6–192 kHz
- Support for audio codecs (e.g., ADC, DAC), modem codecs, and vendor-defined codecs
- Discoverable codec architecture
- Fine-grained codec power-control
- Audio jack detection, sensing, and retasking
However, as of 2008[update], most audio hardware manufacturers did not implement the full specification, especially 32-bit sampling resolution. Motherboards typically do not have any more than eight onboard output channels (7.1 surround sound) and four input channels (back and front panel microphone inputs, and a back-panel stereo line-in). Users requiring more audio I/Os will typically opt for a sound card or an external audio interface, as these devices also provide additional features that are more oriented towards professional audio applications.
Operating system supportEdit
Microsoft Windows XP SP3 and later Windows versions include a Universal Audio Architecture (UAA) class driver which supports audio devices built to the HD Audio specification. There are UAA drivers for Windows 2000 and Windows XP SP2 as well. macOS has full support with its AppleHDA driver. Linux also supports HD Audio controllers, as do the OpenSolaris, FreeBSD, NetBSD and OpenBSD operating systems. However, it was first introduced in Windows XP x64 Edition and Windows Server 2003 x64 Edition with Service Pack 1. It had problems in some computers that have HD Audio in the motherboard chipset. This was fixed with Service Pack 2 for Windows Server 2003 x64 and Windows XP Professional x64 Edition.
Like AC'97, HD Audio is a specification that defines the architecture, link frame format, and programming interfaces used by the controller on the PCI bus and by the codec on the other side of the link. Implementations of the host controller are available from at least Intel, Nvidia, and AMD. Codecs which can be used with such controllers are available from many companies, including Realtek, Conexant (including products of acquired Analog Devices' SoundMAX division), Tempo Semiconductor, VIA, Wolfson Microelectronics, and formerly C-Media. Realtek currently supplies most of HD Audio codec chips used on motherboards and standalone cards.
Nearly all chipsets for x86 processors and x86 SoCs, designed for consumer and embedded PC markets, introduced since 2005, implements integrated HD Audio controller. The most recent exemption in consumer chipset market is AMD TRX40 (launched 2019), which, for first time since the early 2000s, does not itself integrate any kind of audio controller. Instead, motherboard manufacturers places USB audio controller chip, in pair with usual HD Audio codec chip, to provide onboard audio functionality. The Realtek ALC4050H controller and ALC1220 codec is the most common pair used in sTRX4 motherboards.
Front panel connectorEdit
Computer motherboards often provide a connector to bring microphone and headphone signals to the computer's front panel. Intel provides a specification for that header, but the signal assignments are different for AC'97 and HD Audio headers.
The pin assignments for the AC'97 and HD Audio connectors are:
|Pin||AC'97||HD Audio (HDA)|
||PORT 1L||Audio, left, port 1|
||PORT 1R||Audio, right, port 1|
|4||AUD_GND||Ground||PRESENCE#||HDA dongle/connector detection, active low|
|5||FP_OUT_R||Audio out, right, out (headphone-level capable), front panel||PORT 2R||Audio, right, port 2|
|6||FP_RETURN_R||Audio, right, return (when jack is unconnected), front panel||SENSE1_RETURN||Port 1 jack detection|
|7||AUD_5V||Power, +5 V||SENSE_SEND||Jack detection sense, resistance multiplexed|
|8||KEY||Not present, physical key||KEY||Not present, physical key|
|9||FP_OUT_L||Audio, left, out (headphone-level capable), front panel||PORT 2L||Audio, left, port 2|
|10||FP_RETURN_L||Audio, left, return (when jack is unconnected), front panel||SENSE2_RETURN||Port 2 jack detection|
The HDA 3.5 mm subminiature audio connectors differ from connectors used in the AC'97 specification and general audio equipment. A regular 3.5 mm audio jack (which is used in AC'97) typically has 5 pins: one pin for ground, two pins for stereo signal and two pins for return signal. When there is no plug in the jack, the two stereo signals are connected to their return pins. When a plug is inserted, the stereo signals contact the respective channels on the plug and are disconnected from the jack's return pins. The HDA 3.5 mm jack does not have the two return audio signals; instead it has an isolated switch that senses the presence of a plug in the jack.
In the AC'97 design, the audio output is always sent to the jack. If the headphones are not plugged in, the jack directs the audio to the return pins that are connected to the speakers. When a headphone is plugged into the front panel jack, the audio signal goes to the headphones; the return pins are disconnected, so no audio signal goes to the speakers. For the microphone jack, the return signal pins ground the microphone input when the microphone is not plugged in. Many motherboards with AC'97 audio need two jumpers to short the pins in case no front panel audio module is connected, so audio passes to the speakers.
In the HDA design, when the plug is not inserted, the codec sends the audio directly to the speakers (the audio does not go out to the front panel and then loop back to the speakers). When the plug is inserted, the isolated switch inside the jack informs the motherboard, and the codec sends audio to the headphones. A similar isolated switch is used to detect when a microphone has been plugged in.
HD Audio can sense the presence of an audio dongle. A 10 kΩ pull-up resistor is attached to pin 4 (PRESENCE#). When the HDA dongle is plugged in, it pulls pin 4 to ground with a 1 kΩ resistor. The motherboard can determine if the dongle is plugged in by examining the logic level on pin 4. If the motherboard does not detect the presence of an HDA dongle, then it should ignore SENSE1_RETURN (pin 6) and SENSE2_RETURN (pin 10) signals. In AC'97, pins 2 and 4 are audio ground, but pin 4 is often disconnected. Consequently, an HDA motherboard would not detect the presence of an AC'97 dongle with a disconnected pin 4.
Intel warns that HDA dongles should be used with HDA motherboards:
It is strongly recommended that motherboard designers only use Intel HD Audio analog front panel dongles with the Intel HD Audio analog front panel header to insure that the jack detection and dynamic re-tasking capability is preserved. Passive AC’97 analog front panel dongles (ones which leave the 5V Analog pin-7 line unconnected on the dongle) may be used with the Intel HD Audio analog front panel header. But note that the front panel jack detection and re-tasking functionality will be lost as the AC’97 jacks cannot support connection to the SENSE line. In addition, software must be aware that an AC’97 dongle is being used with an Intel HD Audio analog header since the software might need to dedicate codec ports that are connected to the header to meet the product’s intended functionality.
The different signal assignments can cause trouble when AC'97 front-panel dongles are used with HDA motherboards and vice versa. An AC'97 dongle returns audio on pins 6 and 10 rather than a digital plug sensing signals. Consequently, a loud audio passage may make the HDA motherboard with AC'97 dongle believe that headphones and microphones are being plugged and unplugged hundreds of times per second. An AC'97 motherboard with an HDA dongle will route the AC'97 5 V audio supply (pin 7; silence) to the speakers instead of the desired left and right audio signals.
To avoid this, some motherboards allow choosing between HDA and AC'97 front panels in the BIOS. Even though the actual audio hardware is HD Audio, it will allow using the AC'97 front panel that way. Likewise, some modern enclosures have both an "AC'97" and an "HDA" plug at the end of the front-panel audio cable.
- Smith, Tony (16 April 2004). "Intel completes hi-def audio spec". The Register. Situation Publishing Limited. Retrieved 14 January 2014.
- "High Definition Audio Specification 1.0a" (PDF). Intel Corporation. 2010. p. 17.
- Microsoft Knowledge Base Article 888111
- OpenSolaris Boomer Project Page, 2009
- snd_hda. Man.freebsd.org (2012-01-25). Retrieved on 2013-07-28.
- Manual Pages: azalia. OpenBSD.org (2012-03-15). Retrieved on 2018-02-03.
- AMD SB600 Product Information Page, 2009
- ALC888 Product Page, 2009
- Conexant - PC HD-Audio Archived 2013-08-19 at the Wayback Machine
- Intel Corporation (February 2005), Front Panel I/O Connectivity Design Guide (PDF), Version 1.3, pp. 19–25, archived from the original (PDF) on 2011-05-11, retrieved 2011-11-04
- Intel Corporation 2005, p. 20
- Intel Corporation 2005, p. 25
- Intel Corporation 2005, p. 21
- Intel Corporation 2005, p. 24
- Intel Corporation 2005, p. 19
- High Definition Audio Specification 1.0a (June 17, 2010)
- Motherboard/Sound-cards connectors pinout specifications
- Developer Education Resource: High Definition Audio for the Digital Home