Сигнальний процесор. СПК
Матеріал з Вікі ЦДУ
Версія від 01:20, 12 листопада 2014; Сергій Кондратьєв (обговорення • внесок)
Процесор цифрової обробки сигналів — це спеціалізований програмований мікропроцесор, призначений для маніпулювання в реальному масштабі часу потоком цифрових даних.
Архітектура сигнальних процесорів має помітні особливості:
- Швидке виконання операцій, характерних для цифрової обробки сигналів, наприклад, операція «множення з накопиченням» (MAC) (Y:=A*B+X) зазвичай виконується за один такт.
- «Безплатні» за часом цикли із заздалегідь відомою довжиною.
- Більшість сигнальних процесорів мають вбудовану оперативну пам'ять, з якої може здійснюватися вибірка декількох машинних слів одночасно.
- Детермінована робота з відомими часом виконання команд, що дозволяє виконувати планування роботи в реальному часі.
- Досить велика довжина конвейєра, так що незаплановані умовні переходи можуть займати відносно багато часу.
- Екзотичний набір регістрів і інструкцій, часто складний для компіляторів. Деякі архітектури використовують VLIW.
- В порівнянні з мікроконтролерами, обмежений набір периферійних пристроїв — втім, існують «перехідні» чіпи, що поєднують в собі властивості DSP і широку периферію мікроконтролерів.
Історія
До 1980 року декілька компаній виготовили мікросхеми, які можно вважати першими ЦСП. Так, в 1978 Intel випускає «процесор аналогових сигналів» 2120. В його склад входили АЦП, ЦАП і процесор обробки цифрових даних, однак апаратна функція множення була відсутня. В 1979 AMI випускає S2811 — периферійний пристрій, керований основним процесором комп'ютера. Обидві мікросхеми не досягли успіху на ринку.