Руководство пользователя Allwinner H616


  Описание    Система    Графика    Память    Ethernet    Видео      Аудио      Интерфейсы    Безопасность  

8. Аудио (Audio)

  8.1. Аудио-концентратор  

8.2. Контроллер микрофона

8.3. Контроллер последовательной аудио-шины

8.4. Аудиокодек



Глава 8. Аудио - Audio
Раздел 8.1. Аудио-концентратор - Audio Hub

8.1. Аудио концентратор


8.1.1. Обзор

Audio HUB (AHUB) определяет аудиоподсистему для поддержки различных типов аудиопротоколов и функциональных модулей. Чтобы обеспечить гибкую среду потокового аудио, важно реализовать универсальную аудиосистему для независимого и одновременного подключения аудиомодулей.

Audio HUB - это матрица с перекрестным переключателем, соединяющая различные аудиомодули, такие как I2S / PCM, Digital Audio MIXER (DAM) и т.д.

Особенности:
  • Одновременное переключение между аудиоклиентами
    - Аудиоклиенты: I2S / PCM, DAM и APBIF
    - Клиент TX может одновременно разговаривать с несколькими клиентами RX
    - Клиент RX может разговаривать только с одним клиентом TX
  • Масштабируемый поперечный переключатель MxN, где
    - M - количество клиентов TX
    - N - количество клиентов RX
  • Поддерживает три потока FIFO 64x32bit TX и три FIFO потока RX 128x32bit для операций APB DMA
  • Поддерживает 2 DAM и 1 I2S / PCM для HDMI


    8.1.2. Блок-схема

    Рисунок 8-1. Блок-схема Audio HUB


    Рисунок 8-2. Поперечный переключатель Audio HUB и клиенты


    Рисунок 8-3. Обмен сигналами между TX и RX клиентами.


    Сеанс AHUB имеет четыре сигнала для передачи аудиоданных от клиента TX к клиенту RX. Сигнал fsync утверждается, когда начинается новый кадр. Кадр состоит из выборок из нескольких каналов, сигнал канала утверждается при запуске нового канала. Когда клиент RX выдает сигнал готовности, он должен быть готов к приему данных.


    8.1.3. Операции и функциональное описание


    8.1.3.1

    Внешние сигналы

    В следующей таблице описаны внешние сигналы Audio HUB.

    В контроллере Audio HUB I2S / PCM связывается с внешними сигналами. BCLK и LRCK - это двунаправленный ввод-вывод. Когда I2S / PCM настроен как ведущее устройство, BCLK и LRCK являются выходным контактом; Когда I2S / PCM настроен как ведомое устройство, BCLK и LRCK являются входными контактами. MCLK - выходной контакт для внешнего устройства. SDO всегда является выводом последовательного вывода данных, а SDI - последовательным вводом данных. Для получения информации о порте ввода-вывода общего назначения см. Контроллер порта.

    Таблица 8-1. Внешние сигналы Audio HUB

    Сигнал Описание Тип

  • H_I2S0_MCLK Audio HUB I2S / PCM 0 Master Clock O
  • H_I2S0_BCLK Audio HUB I2S / PCM 0 Частота дискретизации Последовательный тактовый ввод / вывод
  • H_I2S0_LRCK Audio HUB I2S / PCM 0 Частота дискретизации Левый и правый канал Выбор часов / ввода / вывода синхронизации
  • H_I2S0_DIN0 Audio HUB I2S / PCM 0 Вход последовательных данных 0 I
  • H_I2S0_DIN1 Audio HUB I2S / PCM 0 Вход последовательных данных 1 I
  • H_I2S0_DOUT0 Audio HUB I2S / PCM 0 Выход последовательных данных 0 O
  • H_I2S0_DOUT1 Audio HUB I2S / PCM 0 Выход последовательных данных 1 O
  • H_I2S2_MCLK Audio HUB I2S / PCM 2 Master Clock O
  • H_I2S2_BCLK Audio HUB I2S / PCM 2 Частота дискретизации Последовательный тактовый ввод / вывод
  • H_I2S2_LRCK Audio HUB I2S / PCM 2 Частота дискретизации левого и правого каналов Выбор тактового сигнала / ввода / вывода синхронизации
  • H_I2S2_DIN0 Audio HUB I2S / PCM 2 Последовательный ввод данных 0 I
  • H_I2S2_DIN1 Аудио-концентратор I2S / PCM 2 Последовательный вход данных1 I
  • H_I2S2_DOUT0 Audio HUB I2S / PCM 2 Выход последовательных данных 0 O
  • H_I2S2_DOUT1 Аудио-концентратор I2S / PCM 2 Последовательный выход данных1 O
  • H_I2S3_MCLK Audio HUB I2S / PCM 3 Master Clock O
  • H_I2S3_BCLK Audio HUB I2S / PCM 3 Частота дискретизации Последовательный тактовый ввод / вывод
  • H_I2S3_LRCK Audio HUB I2S / PCM 3 Частота дискретизации левого и правого каналов Выбор часов / ввода / вывода синхронизации
  • H_I2S3_DIN0 Аудио HUB I2S / PCM 3 Последовательный ввод данных 0 I
  • H_I2S3_DIN1 Аудио-концентратор I2S / PCM 3 Последовательный ввод данных 1 I
  • H_I2S3_DOUT0 Аудио HUB I2S / PCM 3 Выход последовательных данных 0 O
  • H_I2S3_DOUT1 Аудио-концентратор I2S / PCM 3 Последовательный выход данных1 O


    8.1.3.2

    Источники синхронизации

    Системный контроллер Audio HUB использует APB CLK и AUDIO_PLL. APB CLK - это системные часы, а Audio PLL - это часы протокола.

    В таблице 8-2 описаны источники синхронизации для системы Audio HUB. Пользователи могут видеть Блок контроллера часов (CCU) для настройки часов, конфигурации и информации о стробировании.


    Таблица 8-2. Источники Audio HUB

    Источники часов Описание

  • APB CLK из Системы CLK
  • AUDIO_PLL 24,576 МГц или 22,5792 МГц, генерируемый AUDIO_PLL для получения последовательного канала 48 кГц или 44,1 кГц .


    8.1.3.3

    Формат передачи I2S / PCM

    Audio HUB состоит из трех I2S / PCM, одного I2S / PCM для HDMI и двух DAM (Digital Audio MIXER). I2S / PCM поддерживает стандартный режим I2S, режим I2S с выравниванием по левому краю, режим I2S с выравниванием по правому краю, режим PCM и режим TDM. Программное обеспечение может выбрать один из них, в котором работает I2S / PCM, установив регистр управления I2S / PCM. На рисунках 8-4–8-8 описаны формы сигналов для LRCK, BCLK и DOUT, DIN.

    Рисунок 8-4. Временная диаграмма для стандартного режима I2S / TDM-I2S.


    Рисунок 8-5. Временная диаграмма для режима с выравниванием по левому краю / TDM-левым режимом


    Рисунок 8-6. Временная диаграмма для режима с выравниванием по правому краю / TDM-правым режимом


    Рисунок 8-7. Временная диаграмма для режима PCM (длинный кадр)


    Рисунок 8-8. Временная диаграмма для режима PCM (короткий кадр)



    8.1.4. Режимы работы

    Программная операция AHUB состоит из восьми шагов: настройка системы, инициализация и включение TXDIF, начальное и включение RXDIF, I2SnInitial и включение, начальное и включение DAM, настройка DMA, отключение AHUB и проверка Record_buffer. Восемь шагов подробно описаны в следующих разделах.

    Рисунок 8-9. Последовательность операций со звуковым концентратором.


    8.1.4.1

    Настройка системы

  • Первым шагом в настройке системы является правильное программирование GPIO.
  • Следуйте источнику часов для Audio HUB. Выберите 24,576 МГц или 22,5792 МГц.
  • Сначала установите частоту PLL_AUDIO в PLL_AUDIO_CTRL_REG и отключите бит PLL_ENABLE в PLL_AUDIO_CTRL_REG.
  • Затем включите бит PLL_ENABLE в PLL_AUDIO_CTRL_REG, очистите регистр синхронизации AUDIO_HUB и регистр сброса стробирования шины AUDI0_HUB. Затем откройте Audio HUB SCLK_GATING, записав 1 в регистр синхронизации AUDIO_HUB [31], и откройте сброс шины и стробирование, записав 1 в регистр сброса шлюза AUDI0_HUB [0] / [16].


    8.1.4.2

    Инициализация TXDIF / RXDIF

    Во-первых, сбросьте и откройте стробирующие часы TXDIFn (n = 0 ~ 2), записав 1 в AHUB Reset [31:29] и AHUB Gating [31:29]. Когда используется TXDIF, будет установлен соответствующий бит. Во-вторых, настройте формат TXDIF, включая TX_width, chan_num, txim и txtl. Вы можете настроить формат, записав значение в TXn_Control и TXn FIFO Control.

    Инициализация RXDIF аналогична TXDIF. Во-первых, сбросьте и откройте стробирующие часы RXDIFn (n = 0 ~ 2), записав 1 в AHUB Reset [27:25] и AHUB Gating [27:25]. Когда используется TXDIF, будет установлен соответствующий бит. Во-вторых, настройте формат RXDIF, включая RX_width, chan_num, rxom, rxtl и rx_src. Вы можете настроить формат, записав значение в RXn_Control и RXn FIFO Control. И настройте rx_src, записав значение в регистр выбора контакта RXn. когда TXDIF контактирует с этим RXDIF, устанавливается соответствующий бит.


    8.1.4.3

    Инициализация I2S и инициализация DAM

    Во-первых, сбросьте и откройте стробирующие часы I2Sn (n = 0 ~ 3), записав 1 в AHUB Reset [23:20] и AHUB Gating [23:20]. Когда используется I2S, будет установлен соответствующий бит. Во-вторых, вы должны закрыть бит включения глобуса (I2Sn_CTRL [0]), отключить биты TX и RX (I2Sn_CTRL [2: 1]). В-третьих, вы можете настроить I2S / PCM матери и ведомого устройства. И выберите объект контакта для настройки I2Sn_RXDIF_CONT. Конфигурацию можно отнести к протоколу I2S / PCM. В-третьих, вы можете настроить режим трансляции, разрешение выборки, ширину слота, номер слота канала и так далее. Затем настройте включение глобуса, включение передачи и включение приема.

    Инициализация DAM аналогична I2S. Во-первых, сбросьте и откройте стробирующие часы DAMn (n = 0 ~ 1), записав 1 в AHUB Reset [15:14] и AHUB Gating [15:14]. Когда используется DAM, будет установлен соответствующий бит. Во-вторых, вы можете настроить DAM для RXn_chan_num (n = 0 ~ 2) и TX_chan_num. И выберите объект контакта для настройки DAM_RXDIFn_SRC (n = 0 ~ 2). В-третьих, вы можете настроить RXn (n = 0 ~ 2) и канал TX в DAM, а также громкость канала. Пожалуйста, обратитесь к спецификации для получения более подробной информации.


    8.1.4.4

    Настройка DMA

    Audio HUB поддерживает два метода передачи данных. Наиболее распространенный способ - DMA, настройку DMA можно найти в спецификации DMA. В этом модуле вы просто включаете DRQ и открываете начало потоковой передачи.


    8.1.4.5

    AHUB Отключить

    Наконец, вы должны отключить Audio HUB, записав 0x0 в регистр AHUB_RST.


    8.1.5. Типичное применение

    Рисунок 8-10. Потоковое свидание в караоке с USB-микрофоном


    Рисунок 8-11. Аналоговый микрофон для потоковой передачи свиданий в караоке.





  •    8.1.6. Список регистров