сигнальні процесори

You might also like

Download as ppt, pdf, or txt
Download as ppt, pdf, or txt
You are on page 1of 28

Цифрові сигнальні процесори

1. Вступ до цифрової обробки сигналів

 Сигнали можна обробляти за допомогою:


 аналогові методи (аналогова обробка сигналів, або ASP),
 Основна відмінність ЦОС від традиційного комп'ютерного аналізу даних полягає у високій
швидкості й ефективності виконання складних функцій цифрової обробки, таких як
фільтрація, аналіз із швидким використанням перетворення Фурье (БПФ) і зведення
даних у реальному масштабі часу.
 цифрові методи (цифрова обробка сигналів, або DSP);
 комбінації аналогових і цифрових методів (комбінована
обробка сигналів, або MSP).
 У разі цифрової обробки сигналів (ЦОС) аналоговий
сигнал перетворюється в двійкову форму за
допомогою АЦП. На виході АЦП виходить бінарне
представлення аналогового сигналу, яке потім
обробляється арифметичним DSP (DSP). Після
обробки інформацію, що міститься в сигналі, можна
перевести назад в аналогову форму за допомогою
ЦАП..

2
Аналогова, цифрова та комбінована обробка сигналів (1)

 Термін «комбінована обробка сигналів» передбачає, що система


виконується і аналоговою, і цифровою обробкою. Така система
може бути реалізована у вигляді друкованої плати, гібридної
інтегральної схеми (ІС) або окремого кристала з інтегрованими
елементами. АЦП і ЦАП розглядаються як пристрої комбінованої
обробки сигналів, так як у кожному з них реалізовані аналогові та
цифрові функції.
 Успіхи технології створення мікросхеми з дуже високим ступенем
інтеграції (VLSI) дозволяють реалізувати комплексну (цифрову та
аналогову) обробку на одному кристалі. Сама природа ЦОС
розуміє, що ці функції можуть бути виконані в режимі реального
масштабу часу.
 Виповнити обробку фізичних аналогових сигналів, використовуючи
тільки цифрові методи, неможливо, так як всі датчики (мікрофони,
термопари, тензорезистори, п'єзоелектричні кристали, головки
накопичувача на магнітних дисках і т.д.) є аналоговими
пристроями. Тому деякі види сигналів вимагають наличия цепей
нормалізації для подальшої обробки сигналів аналоговим або
цифровим методом.
3
Аналогова, цифрова та комбінована обробка сигналів (2)

 Ланцюги нормалізації сигналу – це аналогові процесори, що


виконують такі функції як усилення, накопичення (в
вимірювальних і попередніх (буферних) підсилювачах),
виявлення сигналу на фоні шуму (високочастотними
підсилювачами синфазного сигналу, урівняльниками і лінійними
приймачами), динамічне зрізання діапазону (логарифмічні
підсилювачі, логарифмічними ЦАП і підсилювачами з
програмованим коефіцієнтом посилення) і фільтрація (пасивна
й активна).
 На наступному слайді показано методи реалізації процесу
обробки сигналів.
 У верхній області малюнка зображено чисто аналоговий підхід.
 В інших зображеннях реалізація DSP. Як тільки обрана
технологія DSP, таким рішенням має бути визначено місце
розташування АЦП в тракті обробки сигналу.

4
Аналогова і цифрова обробка сигналів

Фізичні сигнали Обробка сигналів

5
Аналогова, цифрова та комбінована обробка сигналів (3)

 Розширення можливостей АЦП може виражатися в збільшенні частоти дискретизації, збільшенні


динамічного діапазону, збільшенні дозволу, відсікання вхідних шумів, використанні вхідних
фільтруючих і програмованих підсилювачів (ПГА), наявності джерел опорної напруги на кристалі і т.д.
Всі ці доповнення підвищують функціональний рівень і спрощують систему.
 В області вимірювання, наприклад, є 24-розрядні АЦП з вбудованими програмованими підсилювачами (ПГА), що
дозволяють оцифровувати повномасштабні сигнали моста 10 мВ безпосередньо, без подальшої нормалізації
(наприклад, серія AD773x).

 Складні пристрої кодування-декодування (Analog Front End,


AFE) поширені на голосових і звукових частотах і мають
вбудовану в мікросхему аналогову схему, що відповідає
мінімальним вимогам до зовнішніх компонентів нормалізації
(AD1819B і AD73322).
 Існують також відеокодеки (AFE) для таких завдань, як
обробка зображень за допомогою пристроїв із зарядним
зв'язком (CCD).
 Завдяки впровадженню сучасних технологій для виробництва
ЦАП та БТР з високими частотами дискретизації та
роздільною здатністю, було досягнуто значного прогресу в
інтеграції все більшої кількості ланцюгів безпосередньо в
АЦП/ЦАП..
6
Цілі обробки сигналів

 Вилучення сигнальної інформації (амплітуда, фаза, частота, спектральні

компоненти, часові співвідношення)

 Перетворення формату сигналу (поділ каналів


телефонії FDMA, TDMA, CDMA)
 Стиснення даних (модеми, мобільні телефони,
HDTV, стиснення MPEG)
 Генерація зворотного зв'язку (управління
промисловим процесом)
 Вибір сигналу від шуму (фільтрація, автокореляція,
згортка)
 Цифровий вибір і зберігання для постобробки (FFT)

7
Практичний приклад цифрового фільтра (1)

 В якості практичного прикладу використання ДСП порівняйте аналогові


і цифрові низькочастотні фільтри (ЛЛФ), кожен з частотою відсікання 1
кГц.
 Передбачається, що шлях АЦП/ЦАП має достатні значення частоти
дискретизації, роздільної здатності та динамічного діапазону.
 Для того щоб закінчити всі свої розрахунки в
межах інтервалу відбору проб (1/fs), пристрій
DSP повинен мати достатню продуктивність.
 По-третє, все ще існує потреба в аналогових
фільтрах (згладжувальний фільтр і фільтр
захисту від візуалізації) на вході АЦП і виході
ЦАП, хоча вимоги до продуктивності невеликі.
 Зробивши ці припущення, можна порівняти
цифрові та аналогові фільтри.
 Цифровий фільтр реалізований у вигляді типової
дискретної системи.
8
Практичний приклад цифрового фільтра (2)

9
Практичний приклад цифрового фільтра (3)

 Представлений цифровий має невелику нерівномірність характеристик в пропускній здатності, лінійну фазову характеристику і
набагато більш різкий спад. На практиці такі характеристики не можуть бути реалізовані одними лише аналоговими методами.

 Ще одна очевидна перевага схеми полягає в тому, що цифровий фільтр


не вимагає підбору компонентів і не чутливий до дрейфу частоти, так як
він (частота) стабілізується на кристалі.
 Фільтр з коефіцієнтами N вимагає операцій множення N з накопиченням
(USN) для розрахунку вихідної вибірки. Ця обробка повинна бути
завершена протягом інтервалу відбору проб 1/fs, щоб забезпечити
роботу в режимі реального часу. У цьому прикладі частота дискретизації
становить 10 кГц, тому для обробки досить 100 мкс, якщо тільки не
потрібні значні додаткові розрахунки. Сімейство ADSP-21xx DSP може
завершити весь процес множення накопиченням (і іншими функціями,
необхідними для реалізації фільтра) за один командний цикл.
 Фільтр зі співвідношеннями N вимагає швидкості більше N/100 мкс,
наприклад, при N = 129, швидкість d.b. > 1, 3 млн операцій в секунду
(MIPS). Існуючі DSP є набагато швидшими і, отже, не є обмежуючим
фактором для цих застосувань.

Цифровые вычислительные устройства и микропроцессоры приборных комплексов - Лекция 11 10


Практичний приклад цифрового фільтра (4)

Цифровий фільтр
Аналоговий фільтр
FIR-фільтр на 129 коефіцієнтів,
Фільтр Чебишева 6 порядку нерівномірність 0,002дБ, лінійна
Нерівномірність порядку 0,5 фазочастотна характеристика
Частота відліку f=10kSPS

11
Цифрова та аналогова обробка сигналів: підсумок

 Цифрова обробка сигналів:


 При високочастотній/радіочастотній фільтрації, модуляції, демодуляції
 Аналогові фільтри згладжування та відновлення (зазвичай
LFC) для АЦП та ЦАП
 Де диктує здоровий глузд і економічні розрахунки

 Ширина спектра оброблюваного сигналу обмежена частотою


дискретизації АЦП/ЦАП (критерій Найквіста і теорема
Котельникова!)
 Динамічний діапазон сигналу обмежений розрядністю
АЦП/ЦАП
 Продуктивність DSP обмежує обсяг обробки сигналів – для
роботи в реальному часі всі розрахунки DSP повинні бути
завершені в інтервалі дискретизації 1/fs
 Аналогова обробка сигналів:
12
2. Архітектура DSP

 Особливості програм, що реалізують алгоритми DSP:


 програми, як правило, виконуються в режимі реального
часу – у міру надходження вхідного сигналу, що надає
критичне значення питанням підвищення продуктивності;
 програми містять безліч логічних і особливо
арифметичних операцій і майже не містять програм
переходу;
 відбувається постійне і швидке введення/виведення
даних, часто в аналоговому вигляді;
 програми відносно короткі і рідко змінюються, часто
залишаючись незмінними протягом усього життя
процесора.

13
Особливості архітектури ДСП

 З цього випливають такі особливості архітектури:


 часто використовується архітектура Гарвардська з роздільними
блоками пам'яті для зберігання програм і даних. Вони можуть мати
різну розрядність, до них відбувається звернення до різних команд;
 велика (іноді нестандартна) розрядність оброблюваних даних - 16,
24, 32, 48, 64, 128, що дозволяє збільшити діапазон чисел, що
обробляються без застосування формату з плаваючою комою або
обробляти по кілька чисел одночасно;
 блоки, призначені для прискорення виконання команди множення –
зсувні регістри, матричні помножувачі;
 пам'ять команд та даних на самому кристалі процесора;
 можливість паралельного виконання кількох операцій одночасно,
наприклад, введення виводу та арифметичних команд;
 всі команди мають однакову довжину та виконуються за однаковий
час, що дозволяє використовувати лічильник команд для відліку
часових інтервалів.
14
Класифікація ДСП

 За архітектурою виділяють наступні типи (умовно) ДСП:


 Стандарт;
 вдосконалений стандарт;
 Процесори VLIW
 суперскалярний;
 Гібридні.
 За призначенням ДСП поділяються на:
 ДСП загального призначення;
 спеціалізований ДСП.

15
Стандарт ДСП. варіанти виконання УСН

Вариант №1 Вариант №2

16
Стандартні DSP

 На малюнку показано два варіанти виконання команди USN на стандартному DSP.


 У першому варіанті обидва операнда зберігаються в пам'яті даних, тому їх вибір
вимагає двох циклів, тобто час виконання n доповнень дорівнює 2n.

 У другому випадку один з операндів зберігається в


пам'яті програм, тому інструкція виконується в один
цикл, а загальний час виконання циклу буде дорівнює n
циклам (слід уточнити, що в реальності для виконання в
одному циклі ССО повинна бути виконана всередині
спеціальної циклу інструкції, щоб виключити повторну
вибірку самого коду інструкції, що вимагає додаткового
годинника).
 Тут можна помітити, що ефективна реалізація
алгоритму вимагає використання пам'яті програм для
зберігання даних, а максимальна швидкість досягається
тільки в однокомандному циклі.
 17
Стандартні DSP

 Одним з варіантів, що дозволяє відмовитися від використання


пам'яті програм для зберігання даних, є використання так званої
«двопортової пам'яті», тобто пам'яті, яка має два набори шин
введення - дві адресні і шини даних. Така архітектура дозволяє
одночасно отримати доступ до двох адрес (втім, вони повинні
знаходитися в різних адресних блоках). Цей розчин
використовується в motorola (DSP56000) і Lucent (DSP1600).

 За допомогою такої архітектури можна


тільки поліпшити продуктивність,
збільшивши тактову частоту.

18
Покращені стандартні DSP

 У порівнянні зі стандартними DSP, ці DSP використовують наступні


методи підвищення паралельності:

 Збільшення кількості операційних і


обчислювальних пристроїв;
 Впровадження спеціалізованих
співпроцесорів;
 Розширення автобусів для збільшення
кількості переданих даних;
 Використання багаторазової пам'яті (кілька
звернень за тактовий цикл);
 Ускладнення командної системи;
 19
Покращені стандартні DSP

 Праворуч показаний приклад реалізації


розрахунку двох паралельних команд
ССО. Для цього в DSP є два MAC-модуля
і дві батареї. Блоки ССО отримують дані
по трьом автобусам одночасно, і одне зі
значень є загальним для них. Таким
чином, відбувається одночасне виконання
двох команд.

 Особливість показаного
рішення полягає в тому,
що багато алгоритми ЦОС
можуть бути зведені до
виконання двох
паралельних команд з
одним загальним
множником.
 20
DSP з архітектурою VLIW

 Основна відмінність VLIW-процесорів полягає в тому, що коди інструкцій збираються у великі


«суперкоманди» на етапі компіляції і виконуються паралельно. Зазвичай такі процесори
використовують архітектуру RISC з фіксованою довжиною інструкції, де кожен з них виконується в
окремому операційному модулі.
 Великий набір операційних модулів, які працюють незалежно один від одного.

 Необхідність оптимізації компілятора під кожну модель


процесора, так як склад і функції обчислювальних блоків
можуть змінюватися між моделями, що тягне за собою зміну
списку інструкцій, які можуть виконуватися одночасно;
 Необхідність в надшироких шинах даних (близько 128 біт),
щоб код операції, що складається з окремих інструкцій (до 8),
можна було витягти з пам'яті за один дзвінок.
 Високі вимоги до обсягу пам'яті програм, що також
обумовлено великою тривалістю роботи.

 До характерних особливостей таких процесорів можна віднести:

21
Суперскалярные ЦСП

 Суперскалярні DSP характеризуються великим набором паралельних операційних модулів і можливістю


одночасного виконання декількох інструкцій. Однак, порівняно з VLIW, вони мають дві характерні риси.:
 Інструкції процесора не групуються в блоки, кожен з них надходить в процесор самостійно;
 Надскалярні ЗОС планують виконання команд не тільки на основі інформації про навантаження
операційних вузлів, а й на основі аналізу залежностей між даними.

 Наприклад, команда на збереження результату арифметичної


операції не може бути виконана до самої операції обчислення,
навіть якщо модуль доступу до пам'яті в даний момент вільний.
Ця особливість призводить, крім усього іншого, до того, що
один і той же набір інструкцій може виконуватися по-різному в
різних місцях програми, що унеможливлює точну оцінку
працездатності.

 Інструкції по паралельному виконанню групуються
всередині процесора виходячи зі складу і поточного
навантаження операційних блоків, а також залежностей
між даними.

22
Гібридний ДСП

 Під гібридними ЦОС зазвичай розуміють


спеціалізовані пристрої, що поєднують в собі функції
МС і ДСП.

 Зазвичай такі вироби призначені


для виконання єдиної функції –
наприклад, для управління
електродвигунами в режимі
реального часу.
 Ще одна широка область їх -
мобільна телефонія, де раніше
використовувалися два процесора
- один звичайний для управління
функціями пристрою (дисплей,
клавіатура), а інший для обробки
голосових сигналів (кодування і
т.д.).
 23
Програмування DSP

 Для DSP-програмування зазвичай використовується один з двох мов - асемблер і C.


 Мова асемблера машинно-орієнтована

 Одна команда збірки зазвичай еквівалентна одній інструкції


машинної мови
 При програмуванні в асемблері програміст має доступ до всіх
ресурсів процесора і системи, що дозволяє використовувати їх
максимально ефективно
 До цікавих особливостей складальників ДСП можна віднести
наступні:
 Наявність двох форм написання багатьох команд - мнемонічної
та алгебраїчної.
 Засоби організації стандартних структур, наприклад, спеціальні
апаратні команди для повторення однієї команди або блоку коду.

 Основні особливості асемблерів DSP збігаються з аналогічними


мовами звичайних мікропроцесорів:

24
Програмування DSP

 З іншого боку, при використанні ЯВУ, зокрема C, можна


помітно спростити і прискорити створення програм, але при
цьому ресурси системи будуть використовуватися менш
ефективно, порівняно з програмою, повністю написаною на
асемблері.
 Насправді зазвичай використовується підхід, що поєднує
переваги як ЯВУ, і ефективності програм на асемблері.

25
Мікроконтролери, мікропроцесори і DSP

 Мікроконтролери:
 ПРОЦЕСОР, ОПЕРАТИВНА ПАМ'ЯТЬ, ПЗУ, послідовний/паралельний інтерфейс, таймер, схеми
переривань
 На одному чіпі розташований тільки центральний процесор - потрібні додаткові зовнішні пристрої

 Цифрові сигнальні процесори (DSP):


 Оперативна пам'ять, ПЗУ, послідовні/паралельні інтерфейси, схема обробки переривань

 Центральний процесор, оптимізований для повторюваних


математичних операцій у реальному часі
 Примеры: АДСП-21хх, АДСП-21К, ТМС320хх

 Спрощений набір інструкцій процесорів (RISC)
 Процесори зі складним набором інструкцій (КМДШ)
 Приклади: Pentium, PowerPC, МIPS
 Добре підходить як для тостерів, так і для управління
промисловим процесом
 Швидкість - не головна вимога
 Компактна система команд
 Примеры: APR, 8051, 68HC11, PIC
 Мікропроцесорів:

26
НАЙВАЖЛИВІША МАТЕМАТИЧНА ОПЕРАЦІЯ В ДСП:
МНОЖЕННЯ З НАКОПИЧЕННЯМ

 y(n) = h(0) · x(n) + h(1) · x(n-1) + … + h(N-1) · x(n-N)


 Приклад: цифрова фільтрація
 Висока точність результату (в акумуляторі)
 Одночасна вибірка двох операндів
 Наявність циклічних буферів
 Реалізуйте цикли з автоматичною перевіркою стану
 Приклад: при використанні ядра ADSP-21xx можлива реалізація:
 Вибірка еталонного значення з пам'яті даних
 Отримання значення коефіцієнта з пам'яті програми
 Виконання множення з накопиченням

 Багаторазове множення вхідних зразків на коефіцієнти фільтра (або
на роторні множники при ПЧМ)
 Накопичення множення призводить до появи акумуляторного
регістру
 Повторіть ці кроки N разів
 Вимоги до ЦОС:
 Швидке виконання ССО

27
Мікропроцесорні архітектури

28

You might also like