Солонина А., Улахович Д. Алгоритмы и процессоры цифровой обработки сигналов (2002) (1095891), страница 10
Текст из файла (страница 10)
Ответственным за послеловательиостью выполнения всех операций является логическое устройство. Обычно умножитель, сумматор и логическое устройство объединяются в олин Глава 1. Методы и алгоритмы цифровой обработки сигналов блок, называемый арифметико-логическим устройспюм (АЛУ). Связи между всел<и блоками осу<цествляются с помощью шин. Разрядность которых с<ют- ветствует разрядности ячеек Х-памяти и 1'-памяти. Рмс. 1.22. Яппаратная реализация цифрового устройства Вше раз отметим, что лля обеспечения работы полной системы в реальном времени все вычисления должны происходить за время тэ « Т. Достоинство аппаратной реа<изации состоит в очень высоком быстродействии, что позволяет обрабатывать сигналы при частоте дискретизации в десятки мегагерц.
Это достигается применением функциональных блоков на базе ТТ-логики, распараллеливанием операций и узкой направленностью (специализацией) создаваемых устройств (например, лля Реализации алгоРитма БПФ в ралиолокационных системах). С другой стороны, аппаратная реализация, ориентированнал на решение узкоспециальных задач, полразул<свает создание систем с жесткой логикой, когда любое изменение алгоритма требует изменения структуры устройства, т. е. введения лополнительных ф> нкциональных блоков, что, конечно, является недостатком. Кроме того, аппаратная реализация приволит к большому потреблению энергии и к необходимости организовывать тенлоотвол. Все это вместе опрелеляст высокую стоимость аппаратной реализаци»<, причем "Роектирование. изготовление и отладка оказываются весьма трудоемкими при больших временных затратах.
1 6.З. Программная реализация рогрпииппх реадизацця подразул<евает представление алгоритл»а в виде про»)х<л<л<ь», которую послеловательно от команды к команле выполняет олин или одновременно несколько независимых блоков. Программа должна быть папи- Глава Ь Методы и алгоритмы цифровой обработки сигналов 47 Алгоритмы и процессоры цифровой обработки сигналов сана на языке программирования, соответствуюшем конкретному операционному блоку. Так, лля персонального компьютера это будет любой из языков высоко уровня (Рззса1, С++, )ака и лр.), а лля микропроцессорного комплекта или цифрового процессора — соответствуюши й язык ассемблера.
Конечно, все команды, составляющие программу, должны быть представлены в виде, понятном процессору и непосредственно им воспринимаемом. Команды предъявляются процессору как комбинация нулей и единиц; такие комбинации сосгавляют машинный язык. Например, в процессорах семейства ТМБ320Сххх команде сложения соответствует комбинация ОООО, команде умножения — комбинация 0011. Написание программы на машинном языке, что требоватось в 60-е годы ХХ века лля лгикроЭВМ типа "Электроникан — лело крайне трулоемкое.
Поэтому созлаются специальные средства, облегчаюшие подготовку и отлалку программ для процессора, когда каждой машинной команде или группе команл ставится в соответствие понятный человеку символ на основе мнелюники (правил и приемов, облегчаюших запоминание) так, чтобы символ отражал смысловое содержание команлы. Например: О ив — сложить (от англ, адой; П зов — вычесть (от англ. зибггасб; П иль — умножить (от англ. ти!йр!у). Определеиие. Язык программирования, в котором кзжлой машинной команде или совокупности машинных команд соответств)ет сокрашенная символическая запись, называется языком ассемблера. Перевол программы на машинный язык называется трапсллцией и выполняется автоматически с помощью специальной программы — ассемблера (от англ. азггтЫег — сборшик). Разработаны и все большее значение приобретают специальные весьма эффективные програлгмы-трансляторы с языков высокого уровня на языки ассемблеров.
Эти программы называются козеплылторагяи. Ассемблеры и компиляторы более подробно рассматриваются в сказе 9. К лостоинствам програмленой реализации относятся: П неизменная структура системы при различных алгоритмах и областях применения; П хорошая гибкость, позволяюгцая достаточно легко изменять алгоритмы работы системы за счет коррекшш или изменения программы; П существенное ускорение, облегчение и удешевление проектирования, изготовления и отлалки системы, поскольку вместо прибора разрабатывается программа.
Нслостатком программной реализации является относительно низкое быстродействие по причине послеловательного выполнения операций программы в одном процессоре: как бы ни уведпчивзлл скорость выполнения команд, она булст оставаться ниже произволительности соответствуюшего устройства, реализованного аппаратно. Отсюда вытекает задача обеспечения реального времени, которая подразумевает два обстоятельства: П во-первых, время обработки олного отсчета или группы отсчетов сигнала г,в должно быть меньше лопустимого времени залержки г,„: г,в < г „„; контроль за выполнением зтого условия осуществляется как при написании программы, так и при ее отлалке; П во-вторых, цикл работы программы и моменты поступления отсчетов входного сигнала х(п) должны быть строго согласованы по времени, т. е. начало обработки очередного отсчета х(п) должно совпалать или следовать за поступлением этого отсчета; с другой стороны, результат обработки у(п) должен быть выведен согласно темпу работы внешнего устройства, который не обязан совпалать с темпом поступления отсчетов х(л), что видно на примере воколеров.
1.6.4. Аппаратно-программная реализация Аппаратно-прозразгякал реализация подразумевает, что часть функций системы ЦОС выполняется аппаратно (анадого-цифровое и цифро-аналогозое преобразования, умножение, умножение с накоплением, прием/передача данных и др.), а другая часть функций выполняется программно. Пример аппаратно-програмлгной реализации показан на рис. 1.23, где к процессору, работающему по заданной программе, подключены: П аналого-цифровой (АНП) и цифра-аналоговый (ЦАП) преобразователи; П модули внешней памяти, храняшие программы, разнообразные консганты и таблицы функций (например, Яп и сов), что позволяет заменять длительное их вычисление быстрым обрашением к памяти (таквя реализация является прекрасным примером обмена скорости вычисления на лополнитехьное оборудование, т. е.
действует закон, согласно которому невозможно получить абсолютный выигрыш: любой выигрыш требует платы за себя); нгя и» Контроллер лросрамме уореененнн Рмс. 1.23. Аппаратно-программная реализация системы ЦОС 20 — 40 ЗΠ— 532 до 2000 75 — 150 20 — 80 30 — 133 187-250 40 — 100 ТМ8320С2ххх ТМ832ОС5ххх ТМ832ОС5ххх Д()8Р-21хх Таблица 1.3.
Параметры кадров РПУ 2400 22,5 ЗО 1О 4800 144 8000 80 Из табл. 1.5 следует, что: Алгоритмы и процессоры цифровой обработки сигналов (3 интерфейс — специальные вспомогательные схемы, обеспечивающие согласование сигналов на стыках с модулями внешней памяти, АЦП, ЦАП, каналом связи (регистры стыковки также могут быль отнесены к интерфейсу); П система синхронизации, обеспечиваюшая временное согласование всех элементов системы. Аппаратно-програхглпгая реализация сочетает положительные свойства аппарат ог атной и программной реализаций.
Разумное сочетание аппаратных и программных средств позволяет снизить требования к вычислительным возможноспгм элементной базы и упростить реализацию систем ЦОС в целом, лля отладки которой требуются специальные средства отладки. С наших позиций обязательность отладочных средств не является нелостатком: средства отладки создаются под конкретную элементную базу и по сути являются инструиентахг разратгткгг многочисленных систем НОС на этой элслгентной базе.
1.7. Особенности ЦОС, влияющие на элементную базу Все сказанное в этой главе позволяет вылепить ряд особенностей цифровой об аботки сигналов, которые, с одной стороны, ггрсдъявляют достаточно жер о сткне требования к элементной базе, а с лругой — облегчают разработку самой элементной базы, ориентированной на реазггзацию цифровых систем. Ниже лается краткая характеристика особенностей и основных свойств ЦОС. 1.7.1. Характеристика особенностей ЦОС Итак, особенности таковы. 1. Высокая скорость нсгтулленнл данных.
Например, пусть отсчеты аудиосигнала поступают в устройство обработки со скоростью от 8000 ло 20 000 отсчетов в секунду, каждый из нях может содержать от 8 до 16 битов (в зависимости от разрялности АЦП). Отсчеты согласно выбранному азгоритму преобразуются в кадры, параметры которых и скорость в канале связи показаны в табл.