TDM (аудиоинтерфейс с временным разделением)
I²S передаёт по линии данных два канала — левый и правый. Если каналов больше, например четыре микрофона или восемь усилителей, используют TDM: тот же трёхпроводный интерфейс, но кадр разбит на много слотов.
Обновлено Редакция GAW
TDM (time division multiplexed) — формат цифрового звука, в котором несколько каналов передаются по одной линии данных с временным разделением: кадр делят на N слотов, и каждый канал занимает свой. Линии те же, что у I²S: такт бита, такт кадра и данные. По белой книге InvenSense TDM нужен, когда каналов больше двух, — их может быть до шестнадцати.
Устройство кадра
- Слоты. Каждый канал занимает 1/N кадра; N обычно округляют до степени двойки — 2, 4, 8 или 16, лишние слоты остаются пустыми.
- Такт кадра. В I²S это меандр со скважностью 50 %, в TDM часто короткий импульс шириной в один бит.
- Частоты. По InvenSense такты выше 25 МГц для TDM обычно не используют: на плате начинаются проблемы разводки. Например, 8 слотов по 32 бита при 48 кГц — это 12,288 МГц (наш расчёт).
Несколько устройств на одной линии
TDM удобен в двух случаях: много источников на один вход (несколько микрофонов или АЦП) или один источник на много приёмников (несколько усилителей). Когда источников несколько, каждый выдаёт данные только в своём слоте, а в остальное время переводит выход в третье состояние.
Стандарта у TDM нет, в отличие от I²S. Микросхемы разных производителей различаются полярностью тактов, местом первого слота и поведением в пустых слотах, поэтому временные диаграммы сверяют по даташитам обеих сторон.
В микроконтроллерах
В STM32 TDM формирует блок SAI: по RM0433 он поддерживает I²S, PCM/DSP, TDM и AC'97, а в режиме свободного протокола позволяет задать до 16 слотов, размер слота и данных и форму синхроимпульса. Цифровые микрофоны чаще подключают по I²S или PDM — об этом статья «Микрофоны для микроконтроллера».
Частые вопросы
Чем TDM отличается от I²S?
I²S передаёт два канала, а такт слова — меандр: половина кадра левый канал, половина правый. В TDM кадр делят на N слотов, обычно 4, 8 или 16, и синхроимпульс кадра часто короткий, шириной в один бит. Линии те же: такт бита, такт кадра, данные. InvenSense подчёркивает, что единого стандарта TDM нет.
Как несколько микросхем делят одну линию TDM?
Каждый источник выдаёт данные только в своём слоте, а в чужих переводит выход в третье состояние, чтобы не мешать другим. Номер слота задают выводами или регистрами микросхемы. Поэтому при подключении проверяют, что все устройства одинаково понимают начало кадра и полярность тактов.
Поддерживает ли STM32 формат TDM?
Да, через блок SAI, который есть, например, в STM32F7 и STM32H7. По RM0433 SAI поддерживает TDM и свободный протокол: можно задать до 16 слотов, размер слота и данных, форму синхроимпульса кадра. Обычный интерфейс SPI/I²S таких кадров не формирует.
Источники
- InvenSense. Lewis J. Inter-IC Digital Audio Interfaces (WP, Revision 1.0, 12/18/2013) — кроме I²S есть варианты той же трёхпроводной схемы — left-justified, right-justified, PCM; TDM используют, когда по одной линии данных нужно передать больше двух каналов: до шестнадцати каналов, конфигурация линий данных и тактов как у I²S; каждый канал занимает слот шириной 1/N кадра, N обычно округляют до степени двойки (2, 4, 8, 16), лишние слоты пустые; тактовый сигнал кадра часто — импульс шириной в один бит, а не меандр со скважностью 50 %, как у I²S; частоты выше 25 МГц для TDM обычно не используют; при нескольких источниках на одной шине каждый выдаёт данные только в своём слоте и в остальное время переводит выход в третье состояние; стандарта TDM нет — полярность тактов, размещение каналов и поведение в пустых слотах у микросхем разные
- STMicroelectronics. RM0433: STM32H742, STM32H743/753 and STM32H750 Value line advanced Arm-based 32-bit MCUs. Reference manual, Rev 9 — разд. 51.1–51.2: SAI поддерживает I²S, LSB- и MSB-выравнивание, PCM/DSP, TDM и AC'97; в режиме свободного протокола приложение задаёт форму кадра, число слотов, размер слота и данных; до 16 слотов настраиваемого размера, размер данных 8, 10, 16, 20, 24, 32 бит, активный уровень, смещение и длительность синхроимпульса кадра настраиваются
Нашли ошибку?
Смотрите также
- I²S (шина цифрового звука)Трёхпроводная шина для передачи звука: такт, выбор канала, данные
- SAI (serial audio interface)Гибкий аудиоинтерфейс STM32: I²S, TDM, PCM, AC'97, PDM и S/PDIF
- PDM-микрофонЦифровой MEMS-микрофон с 1-битным выходом: такт, выбор канала, децимация
- MEMS-микрофонКремниевый конденсаторный микрофон с предусилителем; выход аналоговый, PDM или I²S
- Микрофоны MEMS, PDM и I²SАналоговые и цифровые MEMS-микрофоны, чувствительность в дБВ и дБFS, ICS-43434 по I²S, уровень в дБ SPL
- Третье состояние выходаZ-состояние: выход отключён от линии