© Ваврук Є.Я.
Курс лекцій
"Проектування комп’ютерних засобів обробки сигналів та зображень"
Лекція 5
Тема: Інтерфейси DSP-процесорів
Питання.
1. Аналіз паралельного інтерфейсу з DSP-процесорами: читання даних з АЦП, підключеного з відображенням в адресний простір пам'яті
2. Аналіз паралельного інтерфейсу з DSP-процесорами: запис даних з АЦП, підключеного з відображенням в адресний простір пам'яті
3.  Аналіз послідовного інтерфейсу з DSP-процесорами
4. Аналіз послідовного інтерфейсу між DSP-процесором і АЦП
5. Аналіз послідовного інтерфейсу між DSP-процесором і АЦП і ЦАП
6. Аналіз інтерфейсу між пристроями аналогового вводу-виводу, кодексами і DSP-процесорами
7. Аналіз високошвидкісного інтерфейсу
ВСТУП
У зв'язку з швидким розвитком технології змішаної аналогово-цифрової обробки сигналів пристрої на базі DSP з високим ступенем інтеграції, що з'явилися на ринку в даний час (наприклад ADSP-21ESP202), мають крім DSP-ядра інтегровані АЦП/ЦАП, що знімає проблему організації інтерфейсу між окремими компонентами. Дискретні АЦП і ЦАП тепер оснащуються інтерфейсами, спеціально призначеними для зв'язку з DSP, і тим самим мінімізують або усувають необхідність зовнішньої підтримки інтерфейсу або застосування інтерфейсної логіки. Високопродуктивні сігма-дельта-АЦП і ЦАП в даний час випускаються в одному корпусі (таке комбіноване вирішення називається КОДЕК або КОдер/ДЕКодер), наприклад, AD73311 і AD73322. Дані пристрої також розроблені з урахуванням мінімальних вимог до інтерфейсної логіки при роботі з найпоширенішими DSP-процесорами. В лекції розглядаються проблеми, пов'язані з передачею і синхронізацією даних при організації різних інтерфейсів.
1. АНАЛІЗ ПАРАЛЕЛЬНОГО ІНТЕРФЕЙСУ З DSP-ПРОЦЕСОРАМИ: ЧИТАННЯ ДАНИХ З АЦП, ПІДКЛЮЧЕНОГО З ВІДОБРАЖЕННЯМ В АДРЕСНИЙ ПРОСТІР ПАМ'ЯТІ
Підключення АЦП або ЦАП через швидкий паралельний інтерфейс до DSP-процесору вимагає розуміння специфіки процесів читання даних DSP-процесором з периферійних пристроїв (АЦП), а також запису даних процесором в периферійні пристрої (ЦАП) при підключенні даних пристроїв в адресний простір пам'яті. Спочатку ми розглянемо деякі основні вимоги до тимчасових параметрів сигналів, використовуваних для читання і запису даних. Необхідно відзначити, що принципи, представлені тут на прикладі доступу до АЦП і ЦАП, застосовуються також при читанні і записі в/з зовнішньої пам'яті.
Блок-схема типового паралельного інтерфейсу DSP-процесора із зовнішнім АЦП показана на рис 1. Діаграма спрощена і показує тільки сигнали, використовувані для читання даних із зовнішнього пристрою, підключеного в адресний простір пам'яті. Часова діаграма циклу читання для процесорів сімейства ADSP-21XX показана на рис. 2.
В даному прикладі мається на увазі, що АЦП проводить вибірку з постійною частотою, яка задається зовнішнім тактовим генератором, асинхронно по відношенню до внутрішньої тактової синхронізації DSP-процесора. Використання окремого задаючого генератора для АЦП є перевагою, оскільки сигнал внутрішнього генератора DSP-процесора може мати високий рівень перешкод і фазовий шум (jitter), який в процесі аналого-цифрового перетворення веде до збільшення рівня шумів АЦП.
Тактовий імпульс задаючого генератора на вході "старт перетворення” (convert start) АЦП ініціює процес перетворення вхідних даних (крок N 1). По передньому фронту цього імпульсу внутрішня схема вибірки-зберігання АЦП перемикається з режиму вибірки в режим зберігання і таким чином починається процес перетворення. Після виконання перетворення на виході АЦП виставляється строб перетворення виконано (крок N 2). Коли цей сигнал поступає на вхід запиту переривання DSP-процесора (IRQ), починається процес читання даних з АЦП. Далі процесор виставляє на шині адресу периферійного пристрою, що ініціював запит на переривання (крок N 3). В той самий час процесор переводить в активний стан сигнал доступу до пам'яті (DMS) (крок N 4). Дві внутрішні шини адреси в процесорі ADSP-21XX (шина адреси пам'яті програм і шина адреси пам'яті даних) спільно використовують зовнішню шину адреси, а дві внутрішні шини даних (шина даних пам'яті програм і шина даних пам'яті даних) спільно використовують одну зовнішню шину даних. Сигнали вибору пам'яті початкового завантаження (BMS), вибору пам'яті даних (DMS), вибору пам'яті програм (PMS) і вибору пам'яті пристроїв вводу-виводу (IOMS) вказують, для якої пам'яті в даний момент використовуються зовнішні шини. Ці сигнали звичайно використовуються для зовнішньої дешифрації адреси, як показано на рис. 1. Вихідний сигнал дешифратора адреси подається на вхід chip select вибору периферійного пристрою (крок N 5).
Сигнал читання пам'яті (memory read, RD) виставляється через проміжок часу tASR після активації сигналу DMS (крок N 6). Щоб повністю використовувати перевагу високої швидкості DSP-процесора, сума часу затримки дешифрації адреси і часу включення периферійного пристрою після подачі сигналу вибору (chip select) не повинна перевищувати час tASR. Сигнал читання пам'яті (memory read, RD) залишається активним (низький логічний рівень) протягом часу tRP. Цей сигнал використовується для переведення в активний стан паралельного виходу даних периферійного пристрою (крок N 7). Сигнал RD звичайно підключається до відповідного виводу периферійного пристрою, що зветься сигналом дозволу виходу або читання (output enable або read). Висхідний (задній) фронт сигналу RD використовується для введення даних з шини в DSP-процесор (крок N 8). Після появи висхідного (заднього) фронту сигналу RD дані на шині повинні утримуватися периферійним пристроєм протягом часу tRDH, званого часом утримання даних. Для більшості процесорів сімейства ADSP-21XX цей час рівний нулю.
Основні вимоги до часових параметрів периферійного пристрою показані нижче. Всі значення дані для процесора ADSP-2189M, працюючого на тактовій частоті 75 МГц.
ПІДКЛЮЧЕННЯ АЦП ДО ПРОЦЕСОРІВ СІМЕЙСТВА ADSP-21xx ЧЕРЕЗ ПАРАЛЕЛЬНИЙ ІНТЕРФЕЙС

Рис. 1
ЧАСОВА ДІАГРАМА ЧИТАННЯ З ПАМ'ЯТІ
В ПРОЦЕСОРАХ СІМЕЙСТВА ADSP-21xx

Рис. 2
ОСНОВНІ ВИМОГИ ПРИ ЧИТАННІ З ПЕРИФЕРІЙНОГО ПРИСТРОЮ (ПП) ЧЕРЕЗ ПАРАЛЕЛЬНИЙ ІНТЕРФЕЙС
Шина даних периферійного пристрою повинна підтримувати високоімпедансний Z-стан
Час декодування адреси і час включення периферійного пристрою не повинен перевищувати час tASR установки процесором адреси і сигналу вибору пам'яті (0.325 нс мінімум для процесора ADSP-2189M)
Для того, щоб здійснити доступ без режиму очікування, час від спадаючого (переднього) фронту сигналу читання RD до моменту достовірного встановлення даних не повинен перевищувати tRDD (складає 1.65 нс для процесора ADSP-2189M при роботі на частоті 75 МГц), інакше необхідно програмно забезпечити режим очікування або понизити частоту роботи процесора
На виході АЦП повинні підтримуватися достовірні дані протягом часу tRDH після висхідного (заднього) фронту сигналу читання RD (час tRDH рівний нулю для процесора ADSP-2189M)
Периферійний пристрій повинен працювати при якомога меншій тривалості строба tRP (3.65 нс для процесора ADSP-2189M при роботі на частоті 75 МГц), інакше необхідно програмно забезпечити режим очікування або понизити частоту роботи процесора
Параметр tRDD визначає час, необхідний для доступу до даних периферійного пристрою. У випадку процесора ADSP-2189M мінімальна тривалість tRDD складає мінімум 1.65 нс на частоті 75 МГц. Якщо необхідний час доступу до периферійного пристрою більший, необхідно використовувати цикли очікування або зменшити тактову частоту процесора. Це досить звичайна ситуація при підключенні зовнішньої пам'яті або АЦП до швидких DSP-процесорів. Співвідношення між цими часовими параметрами для ADSP-2189M показані у вигляді рівнянь . Зверніть увагу, що дані характеристики залежать від тактової частоти процесора DSP.
ЧАСОВІ ХАРАКТЕРИСТИКИ ПРОЦЕСУ ПАРАЛЕЛЬНОГО ЧИТАННЯ ДЛЯ ПРОЦЕСОРА DSP-2189M ПРИ РОБОТІ НА ЧАСТОТІ 75 МГЦ
tCK = період тактового сигналу процесора (13.3 нс)
tASR = час установки процесором адреси і сигналу вибору пам'яті до спадаючого (переднього) фронту сигналу читання = 0.25·tCK – 3 нс (мінімум)
tRDD = час від спадаючого (переднього) фронту сигналу читання до моменту достовірної установки даних = 0.5·tCK – 5 нс + (число циклів очікування) × tCK (максимум)
tRDH = час утримання даних після висхідного (заднього) фронту сигналу читання = 0 нс (мінімум)
tRP = тривалість імпульсу сигналу читання = 0.5·tCK – 3 нс + (число циклів очікування) × tCK (мінімум)
Процесор ADSP-2189M здатний ефективно взаємодіяти з повільними периферійними пристроями за допомогою наявних засобів програмування тривалості стану очікування. Є три спеціальні регістри для управління процесом очікування: для пам'яті початкового завантаження, для пам'яті програм і для пам'яті даних і простору вводу-виводу. Програміст може задати від 0 до 15 тактів очікування для кожного паралельного інтерфейсу пам'яті. Кожний такт очікування збільшує час доступу до зовнішньої пам'яті на величину, рівну по тривалості одному такту генератора тактових імпульсів процесора (13.3 нс для процесора ADSP-2189M