Глинченко А.С. Принципы организации и программирования сигнальных процессоров ADSP-21xx (2000)
Описание файла
PDF-файл из архива "Глинченко А.С. Принципы организации и программирования сигнальных процессоров ADSP-21xx (2000)", который расположен в категории "". Всё это находится в предмете "компьютерные методы и технологии автоматизации и управления" из 9 семестр (1 семестр магистратуры), которые можно найти в файловом архиве МГТУ им. Н.Э.Баумана. Не смотря на прямую связь этого архива с МГТУ им. Н.Э.Баумана, его также можно найти и в других разделах. .
Просмотр PDF-файла онлайн
Текст из PDF
А.С. ГлинченкоА.И. ГоленокПРИНЦИПЫОРГАНИЗАЦИИ ИПРОГРАММИРОВАНИЯСИГНАЛЬНЫХПРОЦЕССОРОВADSP-21XXКрасноярск2000УДК 681.325.5-181.4Глинченко А.С., Голенок А.И. Принципы организации ипрограммирования сигнальных процессоров ADSP-21xx.Красноярск: Изд-во КГТУ. 2000. 86 с.Рассмотрены принципы построения и основныекомпоненты сигнальных процессоров ADSP-21xx, элементыих программирования и примеры реализации алгоритмовцифровой обработки сигналов.Для студентов радиотехнических специальностей вузов.2ВВЕДЕНИЕСигнальные процессоры являются в настоящее время основнымсредством реализации цифровой обработки сигналов и высокоскоростнойобработки цифровых данных.
В связи с этим важное значение имеетподготовка специалистов, владеющих данной элементной базой на уровне,достаточномкакдлятехническойэксплуатациисовременнойрадиоаппаратуры, использующей сигнальные процессоры, так и дляразработки новых радиоэлектронных устройств и систем на их основе. Дляпрактического решения этих задач существует техническая документация(руководства пользователя) и программные средства разработчика, которыепредставляются фирмами-производителями конкретных типов сигнальныхпроцессоров. Однако их применение невозможно без предварительнойбазовой подготовки по общим принципам организации, основнымкомпонентам архитектуры, системе команд и элементам программированиясигнальных процессоров.
Рассмотрение этих вопросов наиболеецелесообразно на примере конкретного базового сигнального процессора,отражающего в себе основные свойства и тенденции, присущиеприменяемым на практике различным семействам сигнальных процессоров.В данном учебно-методическом пособии для этой цели выбрано семейство16-разрядных сигнальных процессоров с фиксированной точкой ADSP-21xxфирмы Analog Devices. Процессоры этого семейства отличаютсяфункциональной полнотой и наилучшим соотношением стоимость/качество.Пособие содержит краткое описание состава семейства, базовуюархитектуру процессоров, организацию и работу вычислительных устройств,программного автомата, контроллера прерываний, генератора адреса данных,устройства обмена данными между шинами, таймера, последовательныхпортов, системного интерфейса и интерфейса памяти, параллельных портовпрямого доступа к внешней и внутренней памяти процессора.Рассматриваемые вопросы программирования включают программнуюрегистровую модель процессора, систему команд, структуры данных и типыпеременных, директивы ассемблера.
В качестве примеров приводятсяпрограммы нерекурсивного и рекурсивного цифровых фильтров, вычислениясинусоидальной функции и др. Кратко отражены также технологии исредства разработки и отладки программного и аппаратного обеспечениясистем на базе сигнальных процессоров.В то же время в учебно-методическом пособии отсутствует описаниепорта интерфейса хост-машины процессоров ADSP-2111/71/msp5x,аналогового интерфейса процессоров ADSP-21msp5x и некоторые другиевопросы. С ними при необходимости можно ознакомиться в приведеннойлитературе и руководствах пользователя или с помощью электронныхисточников информации.31.
ОБЩАЯ ХАРАКТЕРИСТИКА СИГНАЛЬНЫХ ПРОЦЕССОРОВЦифровые сигнальные процессоры (ЦСП) представляют собойспециализированные процессоры с RISC-архитектурой, аппаратно ипрограммно оптимизированные на решение задач цифровой обработкисигналов (ЦОС). Они отличаются от обычных микропроцессоров своейвысокойпроизводительностью,обусловленнойособенностямиихархитектуры и системы команд. В основу построения ЦСП положеныследующие принципы [1, 2]:использование гарвардской архитектуры;сокращение длительности командного цикла;применение конвейеризации;применение аппаратного умножителя;оптимизация системы команд на задачи ЦОС;аппаратная поддержка операций с двойной точностью.Гарвардская архитектура подразумевает хранение программ и данныхв двух раздельных запоминающих устройствах и наличие как минимум двухраздельных шин адреса и данных.
Такая организация памяти позволяетсовместить во времени выполнение команд и выборку команд и данных.Конвейерный режим в сочетании с коротким командным циклом (до30 нс и менее) обеспечивает повышение быстродействия путем одновременной обработки двух и более инструкций на разных стадиях их выполнения.Аппаратный умножитель применяется для уменьшения времени навыполнение одной из основных операций ЦОС – операции умножения.
Впроцессорах общего назначения эта операция реализуется за несколькотактов сдвига и сложения и занимает много времени. ЦСП выполняют этуоперацию за один командный цикл.Система специальных команд оптимизирована на базовые задачи ЦОС,такие, как умножение с накоплением (цифровые фильтры), битовыеоперации (для графических приложений), инверсия бит адреса (быстроепреобразование Фурье), кольцевые буферы (корреляторы, фильтры) и др.Сигнальные процессоры появились в начале 80-х годов (однокристальнаямикро-ЭВМ µPD 7720 японской корпорации NEC).
Однако уже в 1982 годулидерство в этой области захватила американская фирма Texas Instruments,выпустившая сигнальный процессор TMS32010. По своей архитектуре исистеме команд он существенно превзошел изделие NEC и до настоящеговремени находит практическое применение [3, 4].Второе поколение ЦСП появилось в середине 80-х годов. Повышениестепени интеграции позволило расширить функции ЦСП.
Увеличиласьскорость выполнения команд и уровень распараллеливания обработкиданных. Введена аппаратная поддержка кольцевых буферов и цикловDO – UNTIL, исключающая непроизводительные затраты времени наусловные переходы. Были освоены отечественные аналоги ЦСП второго4поколения.Конец 80-х годов ознаменовался переходом к третьему поколению ЦСП.Процессоры третьего поколения выполнены по субмикронной технологии иподдерживают операции с плавающей запятой (точкой) без потери вскорости обработки. Как правило, все ЦСП третьего поколенияудовлетворяют стандарту ANSI/IEEE754 на 32-х разрядную двоичнуюарифметику с плавающей точкой.В настоящее время основными производителями ЦСП являются фирмы:Texas Instruments – семейства ЦСП TMS320Cxx с фиксированной иплавающей точкой, Motorola – семейства DSP56xxx с фиксированной точкойи DSP960xx – с плавающей, AT&T Microelectronics – семейства DSP16 сфиксированной точкой и DSP32 – с плавающей, Analog Devices – семействаADSP-21xx с фиксированной точкой и ADSP-21xxx – с плавающей точкой.Наиболее мощный сигнальный процессор TMS320C80 (Multimedia VideoProcessor) объединяет на одном кристалле 5 полнофункциональныхпроцессоров, поддерживает операции с фиксированной и плавающей точкой,имеет суммарную производительность на регистровых операциях до 2 ⋅109операций/сек.
Новое семейство процессоров ADSP-2116x содержит два 32битовых процессорных элемента с фиксированной и плавающей точкой,которые работают параллельно (режим SIMD). Их тактовая частотасоставляет 100 MГц, пиковая производительность 600 Мфлопс, напряжениепитания 2,5 В, разрядности шин адреса 32 бита, инструкций 48/64 и данных32/40/64 бита.Рассматриваемое далее базовое семейство ADSP-21xx представляетсобой ряд программируемых однокристалльных микропроцессоров имикрокомпьютеров, которые объединяет общая базовая архитектура,оптимизированная для цифровой обработки сигналов и высокоскоростнойобработки цифровых данных. В состав семейства входят процессоры 2101,2103, 2105, 2111, 2115, 2171, 2181, 2183, 2186, 21msp58/59 и некоторыедругие.
Основными их функциональными элементами, размещенными накристалле, являются вычислительные устройства, генераторы адреса данных,генератор адресов инструкций (программный автомат), память данных ипрограмм, таймер, последовательные порты. Данные элементы имеютпрактически все процессоры семейства, отличаясь лишь их качественнымихарактеристиками и объемом внутренней памяти.
Кроме того, процессорыADSP-21msp58/59 имеют встроенный аналоговый интерфейс, у отдельныхпроцессоров реализован также порт интерфейса хост-машины и/или портыпрямого доступа к памяти, предусмотрен режим низкого энергопотребления.Типичная длительность командного цикла процессоров составляет от 30 до60 нс.Так, сигнальный процессор ADSP-2181, относящийся к одной изпоследних разработок семейства, кроме базовых элементов − трехвычислительных модулей, генераторов адресов данных и устройства5управления программой, содержит два последовательных порта, 16разрядный порт прямого доступа к внутренней памяти, внешний портпрямого доступа к байтовой (загрузочной) памяти, программируемыйтаймер, 80 Кбайт памяти на кристалле, сконфигурированной как 16К 24разрядных слов ОЗУ программ и 16К 16-разрядных слов ОЗУ данных.Наличие схемы пониженного энергопотребления позволяет применятьпроцессор в переносном оборудовании.
Командный цикл процессорасоставляет 30 нс. Каждая команда выполняется за один цикл процессора.Гибкая архитектура ADSP-2181 и эффективная система команд определяютвысокую степень распараллеливания выполняемых процессором операций.Это происходит в то время, какЗа один цикл процессорADSP-2181 может:процессор продолжает:генерировать следующий адресполучать и передавать данные черезпрограммы;два последовательных порта;выбиратьследующуюполучать и/или передавать данныекоманду;через внутренний порт прямогодоступа в память;выполнить одноили дваполучать и/или передавать данныеперемещения данных;через порт прямого доступа в байтовуюмодифицировать один или двапамять;указателя адреса данных;декрементировать таймер.выполнить вычислительнуюоперацию.2. БАЗОВАЯ АРХИТЕКТУРА ПРОЦЕССОРОВ ADSP-21XXБазовая архитектура процессоров семейства представлена на рис.
1. Ееосновные компоненты имеют следующее функциональное назначение.Три независимых вычислительных устройства арифметико-логическое(АЛУ), умножитель/аккумулятор (MAC) и устройство циклическогосдвига(SHIFTER)реализуютфункциональнополныйнаборвычислительных операций с 16-битовыми данными и аппаратную поддержкуопераций с числами повышенной точности. Они организованы так, чторезультаты работы любого устройства могут быть операндами другогоустройства в следующем цикле процессора.Два специальных устройства генерации адресов данных DAG (DataAddress Generator) генерируют адреса памяти данных, пересылаемых извходных или выходных регистров вычислительных устройств.