Архитектура HD Audio от Intel
В спецификации Intel High Definition Audio (см. веб-сайт Intel HD Audio ) описывается архитектура звукового оборудования, которая разрабатывается в качестве преемника спецификации кодека и контроллера Intel AC'97. Компоненты драйвера UAA операционной системы могут обслуживать звуковое решение, которое предоставляет набор регистров HD Audio и подключается к внутренней шине системы, не требуя драйвера конкретного решения от поставщика оборудования.
Архитектура HD Audio предоставляет единый программный интерфейс для цифровых звуковых контроллеров. Как правило, современные аудиокодеки соответствуют отраслевому стандарту AC'97, а цифровые контроллеры подключаются к одному или нескольким кодекам AC'97 через другой отраслевой стандарт AC-Link. Хотя эти стандарты помогают обеспечить согласованную реализацию кодеков и ссылок, в настоящее время не существует стандарта, определяющего интерфейс цифрового звукового контроллера. Поставщики, как правило, имеют очень похожие решения для своих интегрированных в систему цифровых аудио контроллеров AC'97, но каждое решение AC'97, вероятно, будет достаточно разным, чтобы требовать отдельного драйвера. Архитектура HD Audio предназначена для устранения требований к драйверам для конкретного решения путем указания базового набора регистров, единообразного во всех реализациях.
Контроллер шины, соответствующий архитектуре HD Audio:
Предоставляет сведения о версии оборудования контроллера.
Предоставляет сведения о конфигурации оборудования, включая количество строк последовательного выхода данных (SDO) и обработчиков DMA.
Управляет пропускной способностью шины, доступной для hd Audio Link.
Принимает нежелательные ответы и события пробуждения от кодеков.
Помещает в очередь команды кодека и ответы кодека в отдельные кольцевые буферы.
Предоставляет коллекцию входных, выходных и двунаправленных подсистем DMA, которые выполняют передачу точечной и сборной данных и могут передавать данные между кодеками и циклическими буферами в памяти без вмешательства процессора узла.
На следующем рисунке показана схема архитектуры драйвера UAA для устройств HD Audio в Windows Vista. На рисунке программные компоненты с метками UAA HD Audio Class Driver и HD Audio Bus Driver предоставляются корпорацией Майкрософт. Компонент с меткой "Драйвер модема" предоставляется независимым поставщиком оборудования.
Драйвер класса UAA HD Audio предоставляет интерфейс потоковой передачи для звукового стека операционной системы над драйвером (не показано на предыдущем рисунке).
Драйвер шины HD Audio напрямую обращается к аппаратным регистрам в контроллере HD Audio и предоставляет DDI, который драйвер или модем UAA HD Audio использует для управления подсистемами DMA и отправки команд в кодеки. Драйвер шины HD Audio обрабатывает все прерывания, Plug and Play уведомления и события управления питанием от имени звуковых устройств в HD Audio Link.
Контроллер HD Audio предоставляет подсистемы DMA и буферы команд, которые используются для передачи команд и данных в кодеки на канале HD Audio Link. Коробки с меткой Кодек на предыдущем рисунке могут быть аудио- или модемными кодеками и подключаться к съемным периферийным устройствам через внешние разъемы или к фиксированным внутренним периферийным устройствам, таким как динамики мобильных ПК.