|
How the Intel HD Audio system works Pt 2
Designing an A/V system employing Windows Vista can be easy. As part of your system design, you should create complete audio flowcharts of the audio paths for the primary usability models in your system. Here's the general flow for the Intel HD Audio system.
|
|
By
David Roach, President OptimalSound.net, Wayne Jones Operations Manager, Intel Press
|

Page 1 of 2

|
Audio DesignLine
(09/17/2006 11:58 AM EDT)
|

|
|
Editor's note: This article and Part 1 provide an overview of the Intel HD Audio system. It is excerpted from the book Intel HD Audio for the Digital Home published by Intel Press. This excerpt is from pages 329-340 of the book. All material is copyright Intel.
The Intel HD Audio Codec Layer
The intersection between codec and the motherboard occurs at the physical pins of the codec, which are soldered to the motherboard, and at the pin wid-gets in the codec. The intersection between the codec and the software layer occurs where the converter elements, such as DACs and ADCs, are connected to the Intel HD Audio bus.
Figure 9.3 The Intel HD Audio Codec Layer
The signal flow between pin widgets and converters is determined by the au-dio function driver. The Microsoft UAA class driver for Intel HD Audio in-cludes a codec topology parser module that uses the data contained in the pin widget configuration default registers to determine which internal signal paths should be used in the codec.
If a system is configured for independent multi-streaming and you wish to show both streams in the overall system signal flow, you would need to create separate layers, one on top of the other, with each one containing a software layer inside of it.
One or more codec layers are fully contained within the motherboard layer. Each codec layer contains a software layer at its center. The audio signal routing in a codec is primarily analog at Ports A through G, but digital signal such as S/PDIF, ADAT, I2S, and PWM may also be supported.
The fidelity of the audio codec is largely a function of its design and im-plementation. Assuming clean, stable power supplies, the fidelity of the ana-log signals inside the codec normally is higher than the fidelity in the motherboard layer.
The Intel HD Audio Bus, Controller, and Bus Driver
From a signal-flow perspective, the Intel HD Audio bus, as well its controller and bus driver, are transparent to the audio stream. No audio processing oc-curs while on the bus. In signal flow terms, you can think of the Intel HD Au-dio signal path as a straight wire with no loss. In terms of the flow chart layers, you can think of the Intel HD Audio bus as the boundary between the hardware and software layers. The signals on the Intel HD Audio bus are digi-tal; no analog audio passes through this bus.
The Kernel-Mode Software Layer in Windows XP
The intersection between the kernel-mode software layer and the codec occurs at the Intel HD Audio bus. The intersection between the kernel-mode software layer and the user-mode software layer occurs at the boundary between user-mode and kernel-mode. Buffers of audio data are copied across this boundary, with the possibility of processing the audio data while they are being copied.
The kernel-mode software layer is fully contained within each codec layer. Each kernel-mode software layer contains a user-mode software layer in its center. All of the audio signals in the software layer are digital. The fi-delity of the signals in the software layers is a function of the bit depth and sample rate of the signal. Another potential source of fidelity degradation in the software layers is improperly implemented DSP blocks.
Figure 9.4 shows the signal flow for 7.1 surround sound playback using Windows Media Player (WMP) under Windows XP. You can see that the 8-channel signal passes through EQ and SRS processing which are extra proc-essing modules built into WMP. The signal is then passed into the Direct-Sound interface which provides the transition to user mode. DirectSound is also capable of processing the signal, though it usually does no processing on streams coming from Windows Media Player. The signal passes through both the System Audio Device and the PortCls driver, but neither of these blocks performs any processing on the signal; they are the equivalent of a straight wire.
Figure 9.4 Windows XP playback of 7.1 Surround KMixer performs processing on the signal.
The volume scaling of the front two channels is controlled by the Wave slider. KMixer also performs process-ing to convert any given input stream into a format which can be mixed into the KMixer's output format. KMixer may also perform a downmix when the number of input channels exceeds the number of channels supported by the driver.
The final stage of processing in the kernel output may optionally take place in the driver. While the Microsoft UAA class driver for Intel HD Audio performs no processing, most drivers supplied by codec vendors for Windows XP contain an option for various types of signal processing, such as those de-scribed in the last half of Chapter 3.
Figure 9.5 shows a similar diagram using Net Meeting for speech com-munications. A mono microphone signal is used as a speech input. The proc-essing node in the miniport driver performs a noise reduction processing step, and then passes the signal through PortCls to the splitter module. This flow is the opposite of KMixer: where KMixer takes multiple input streams and com-bines them into a single output stream, the splitter takes a single input stream and provides it to multiple applications. If you were to open a wave recording application, this application could also receive the same signal from the split-ter output. Functionally, the splitter is equivalent to a distribution amp used in a professional audio system. KMixer also provides different sample rates and formats to each calling application in much the same way that it does for out-put signals.
Figure 9.5 The Windows XP Kernel Software Layer for RTC
|
|
|
|
CAREER CENTER
|
Ready to take that job and shove it?
|
|
SPONSOR
|
|
|
|
RECENT JOB POSTINGS
|
|
|
For more great jobs, career related news, features and services, please visit EETimes' Career Center.
|
|