Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Контроллер HD Audio содержит 32-разрядный стенной счетчик, который увеличивается на частоте бит-клока HD Audio Link и переполняется примерно каждые 89 секунд. Программное обеспечение использует этот счетчик для синхронизации между двумя или более устройствами контроллера путем измерения относительного смещения между аппаратными часами устройств.
Кроме того, контроллер HD Audio содержит набор регистров позиций связи. Каждый обработчик DMA имеет регистр положения ссылки, указывающий текущую позицию чтения или записи данных, передаваемых подсистемой по каналу аудиосвязи HD. Регистр позиции выражает текущую позицию как байтовое смещение от начала циклического буфера.
В потоке отрисовки регистр положения ссылки указывает на циклическое смещение буфера следующего байта, которое подсистема DMA отправляет по ссылке в кодек.
В потоке записи регистр положения ссылки указывает на циклическое смещение буфера следующего байта, которое модуль DMA получит от кодека по ссылке.
Циклическое смещение буфера — это просто смещение в байтах текущей позиции чтения или записи с начала циклического буфера. После достижения конца буфера позиция перемещается к началу буфера, а циклическое смещение буфера сбрасывается до нуля. Циклический буфер находится в системной памяти. Дополнительные сведения см. в спецификации Intel High Definition Audio на веб-сайте Intel HD Audio.
Драйвер функции в режиме ядра может считывать стенные часы и регистры позиций связи напрямую. Чтобы включить прямой доступ, драйвер HD Audio Bus сопоставляет физическую память, содержащую регистры, с системной виртуальной памятью. Драйвер функции вызывает подпрограмму GetWallClockRegister или GetLinkPositionRegister для получения системного указателя виртуального адреса на регистр стенных часов или регистр положения ссылки. Эти две подпрограммы доступны в обеих версиях HD Audio DDI.
Оборудование контроллера HD Audio отображает регистры системных часов и позиции канала на страницы памяти, которые не содержат других регистров в контроллере. Таким образом, если драйвер функции отображает зеркальные настенные часы или регистры позиций в пользовательском режиме, программы в пользовательском режиме не могут получить доступ к другим регистрам контроллера. Драйвер никогда не позволяет программе пользовательского режима касаться этих других регистров и программировать оборудование.
Отражение регистров должно соответствовать размеру страницы ведущего процессора. В зависимости от архитектуры процессора узла типичный размер страницы может составлять 4096 или 8 192 байта.