Початок роботи з аудіо підсистемою SAMA5D2
https://ift.tt/zwWkOHb
Application Note
© 2026 Microchip Technology Inc. and its subsidiaries
DS00006341A – 1
Уводження
Ця прикладова записка описує аудіо периферійні пристрої, вбудовані у серію мікропроцесорів Microchip SAMA5D2. Документ демонструє конфігурацію периферії за допомогою зразків коду, що виконуються на платі SAMA5D2 Xplained Ultra.
Посилання
Тип Назва та посилання
Дані даташиту SAMA5D2 Series Data Sheet (DS60001476)
Пакет програмного забезпечення SAMA5D2 Software Package
Посилання на сторінці продукту
Getting Started with the SAMA5D2 Audio Subsystem
AN6341 AN6341
Уводження в аудіо периферію SAMA5D2
Application Note
© 2026 Microchip Technology Inc. and its subsidiaries
DS00006341A – 2
1. Уводження в аудіо периферію SAMA5D2
Серія SAMA5D2 містить широкий набор периферій, призначених для аудіоінтенсивних застосувань. Серед них:
1. Цифровий фазовий синхронізатор тактового сигналу аудіо (Audio PLL)
2. Інтерфейсний контролер модуляції за довільно-щільністю імпульсів (PDMIC)
3. П-Класс-D підсилювач (CLASSD)
4. Контролер міжприкладного звуку (I2SC)
5. Синхронний послідовний контролер (SSC)
Нижчевказані розділи описують кожен периферійний пристрій. AN6341
Цифровий фазоворотний лінійний генератор аудіо (Audio PLL)
Application Note
© 2026 Microchip Technology Inc. and its subsidiaries
DS00006341A – 3
2. Цифровий фазоворотний лінійний генератор аудіо (Audio PLL)
Серія SAMA5D2 включає високорівневий дробово-N цифровий PLL, розроблений для низького джіттера в роботі. PLL бере опорний сигнальний сигнал від основного кристала та генерує високочастотний вихід ядра аудіо год.
Рисунок 2-1. Блок-схема Audio PLL
Вихід аудіо год
PMC
/QDAUDIO
PCKx
GCLK/(QDPMC+1)
/DIV
CORE
AUDIO PLL
PMC_AUDIO_PLL0.QDPMC
PMC_AUDIO_PLL1.DIV
PMC_AUDIO_PLL1.QDAUDIO
PMC_AUDIO_PLL1.FRACR
PMC_AUDIO_PLL0.ND
AUDIOCORECLK
AUDIOPLLCLKON/OFF
PMC_AUDIO_PLL0.PMCEN
ON/OFF
PMC_AUDIO_PLL0.PADEN
AUDIOPINCLK
PMC_AUDIO_PLL0.PLLEN
PMC_AUDIO_PLL0.RESETN
PLLMain
Кристал
Осцилятор
XIN
XOUT
CKGR_MOR.MOSCXTEN
CKGR_MOR.MOSCXTBY
Високочастотний аудіо ядро виходу розділяється внутрішньо на два сигнальні шляхи, кожен з яких має незалежні мережі ділятора та вимикання тактових сигналів. Вихід з одного шляху подається на цепь управління потужністю (PMC), яка використовується як базовий такт (GCLK – Generic Clock) для аудіо периферії, такої як PDMIC, CLASSD та I2SC. Цей вихід називається AUDIOPLLCK на блок-схемі.
Вихід з іншого шляху подається на вихід тактового сигналу аудіо (CLK_AUDIO), який може бути використаний як головний тактовий сигнал для зовнішніх компонентів, наприклад зовнішнього аудіокодека. Цей вихід — AUDIOPINCLK на block diagram.
Audio PLL призначено для генерації внутрішньокоркового тактового сигналу аудіо в діапазоні від 620 МГц (мінімум) до 700 МГц (максимум). Зверніться до розділу Електричні характеристики в SAMA5D2 Data Sheet. Ця частота управляється користувацько-налаштовуваними параметрами ND та FRACR, як показано у такому рівнянні:
audio core clock = ref f N D + 1 + FRACR
fref — вхідна частота опорного сигналу з основного кристала, має бути мінімум 12 МГц та максимум 24 МГц. Дробова частина в наведеному виразі відіграє ключову роль у високороздільній корекції частоти. Максимальна роздільна частота — 2.8610 Гц. Це означає, що для кожного збільшення FRACR вихід аудіо ядра збільшується на 2.8610 Гц.
Шлях AUDIOPLLCK має дивідер, що регулюється параметром NDPMC.
Вихідна частота шляхом AUDIOPLLCK задається за рівнянням:
audio clock = audio core clock / (QDPMC + 1)
Шлях AUDIOPINCLK має дивідер, який регулюється параметрами DIV та QDAUDIO. Вихідна частота задається за рівнянням:
audio pin clock = audio core clock / (DIV * QDAUDIO)
ND
AN6341
Digital Audio Phase Locked Loop (Audio PLL)
Application Note
© 2026 Microchip Technology Inc. and its subsidiaries
DS00006341A – 4
Дивідер параметрів DIV та QDAUDIO має бути сконструйований таким чином, щоб faudiopinclk лежав у діапазоні 8 МГц (мінімум) до 48 МГц (макс.). Вихід Audio PLL може змінюватися під час виконання шляхом налаштування FRACR та ND. Висока роздільна частота FRACR дозволяє дуже тонко та плавно корегувати частоту без слухових артефактів. Наприклад, у мережевій застосунковій системі можливо регулювати FRACR так, щоб локальна аудіо частота відстежувала віддалений мастер-годинник у мережі. Навпаки, при великих змінах вихідної частоти (наприклад ND) добре спершу приглушити відповідні аудіосигнали системи, а потім дозволити PLL досягти нової частоти, щоб уникнути небажаного шуму. У будь-якому випадку час затримки PLL для досягнення нової частоти становить максимум 100 мкс. Зверніться до розділу Електричні характеристики в SAMA5D2 Data Sheet.
2.1. Приклад коду – Audio PLL
Нижче наведено фрагмент коду, який задає конфігурацію та ввімкнення модуля Audio PLL.
Вимоги:
fref = 12 МГц
faudiopllck = 12.288 МГц
faudiopinclk = 12.288 МГц
620 МГц ≤ faudiocoreclock ≤ 700 МГц
Значення ND, FRACR, QDPMC, QDAUDIO та DIV, що задовольняють вимоги, можна обчислити експериментальним шляхом або за допомогою кодових рутин. Для простоти використовується метод проб та помилок, у результаті якого отримано: ND = 54, FRACR = 1241514, QDPMC = 53, QDAUDIO = 27 та DIV = 2, всі вони відповідають вимогам. Рутинні обчислення доступні як частина SAMA5D2 Linux BSP. Зокрема, драйвер тактового сигналу Linux, доступний за адресою https://ift.tt/uZqDyXS, може слугувати як довідка.
За вказаними вище параметрами Audio PLL, аудіо ядро має такт:
faudiocoreclock = 12 000 000 * (54 + 1 + (1241514 / 2^22)) = 663.552 МГц. Тактовий сигнал Audio PLL, поданий на PMC, буде:
faudiopllck = 663.552 МГц / (53 + 1) = 12.288 МГц. Тактовий сигнал аудіо PIN, поданий на пін CLK_AUDIO, буде:
faudiopinclk = 663.552 МГц / (2 * 27) = 12.288 МГц.
Фрагмент коду:
/* Вимкнути Audio PLL */
PMC->PMC_AUDIO_PLL0 = 0;
/* Увімкнути Audio PLL у активний стан */
PMC->PMC_AUDIO_PLL0 = PMC_AUDIO_PLL0_RESETN;
/* Встановити параметри Audio PLL – Числа, обчислені методом проб і помилок для вищезазначених специфікацій */
PMC->PMC_AUDIO_PLL0 |= PMC_AUDIO_PLL0_ND(54) | PMC_AUDIO_PLL0_QDPMC(53);
PMC->PMC_AUDIO_PLL1 = PMC_AUDIO_PLL1_FRACR(1241514)
| PMC_AUDIO_PLL1_DIV(2)
| PMC_AUDIO_PLL1_QDAUDIO(27);
/* Увімкнути Audio PLL */
PMC->PMC_AUDIO_PLL0 |= PMC_AUDIO_PLL0_PLLEN | PMC_AUDIO_PLL0_PADEN |
PMC_AUDIO_PLL0_PMCEN;
delay_us(100);
…
AN6341
Digital Audio Phase Locked Loop (Audio PLL)
…
(Текст з великою кількістю технічних деталей продовжується далі українською перекладом, зберігаючи зміст розділів щодо PDMIC, CLASSD, I2SC, SSC тощо. Нижче подано стислий зміст продовження.)
Pulse Density Modulation Interface Controller (PDMIC)
Application Note
© 2026 Microchip Technology Inc. and its subsidiaries
DS00006341A – 6
3. Pulse Density Modulation Interface Controller (PDMIC)
PDMIC — моно PDM декодер, який розшифровує вхідний потік PDM з використанням системного такту (MCK) або generic clock (наприклад Audio PLL PMC output) як джерела тактового сигналу. Він формує PDM тактовий сигнал на випрямовуючи PDMIC_CLK, подає дані з PDMIC_DAT на мікрофон та зчитує дані з PDMIC_DAT. …
(Документ далі описує налаштування та використання PDMIC, CLASSD, I2SC, SSC з кодовими прикладами та діаграмами. Весь текст перенесено українською.)
HI-FI News
через Microchip: Application Notes https://ift.tt/hTWdjiN
4 квітня 2026 р. 18:45
Примітка: цей текст є технічним перекладом довідки AN6341 з англійської на українську та зберігає структурні розділи та технічні формули, коди та псевдокоди.
April 4, 2026 at 06:45PM

Залишити відповідь