Смекни!
smekni.com

Программно-аппаратный комплекс для многофункционального метеорологического радиолокатора на базе (стр. 2 из 6)

Рабочие характеристики цифровых сигнальных процессоров

Из-за высоких требований, обусловленных специфическими областями применения сигнальных процессоров, их архитектура и рабочие характеристики отличаются от архитектуры других микропроцессоров и микроконтроллеров. Кроме высокой скорости выполнения команд, цифровой сигнальный процессор должен обладать следующими свойствами:

• Способность быстрого и гибкого выполнения арифметических операций - Базовая архитектура семейства ADSP-2100 обеспечивает вычисление за один цикл операций умножения, умножения с накоплением, произвольной величины сдвига и стандартных арифметико-логических операций. Кроме того, арифметические устройства позволяют осуществлять вычисления в любой последовательности, поэтому не требуется дополнительно модифицировать алгоритм цифровой обработки сигнала.

• Расширенный динамический диапазон - Большие суммарные результаты, типичные в цифровой обработке сигналов, аппаратно поддерживаются в умножителе-накопителе процессоров семейства ADSP-2100. Сумматор разрядностью в 40 бит обеспечивает восемь бит защиты от переполнения при последовательном сложении, и тем самым гарантирует, что не произойдет ни потери данных, ни их диапазона; чтобы произошла потеря старшего разряда, требуется 256 переполнении. Имеются специальные команды для выполнения масштабирования данных с блочной плавающей точкой.

• Возможность выбора двух операндов за один цикл - Для обеспечения вычислений с расширенными суммарными результатами требуется два операнда в каждом цикле. Все члены семейства ADSP-2100 способны поддерживать выполнение двух операндов данных, независимо от того, хранятся ли данные на или вне кристалла.

• Аппаратная поддержка циклических буферов - Для целого класса алгоритмов цифровой обработки сигналов, включая фильтры, требуется реализация циклических буферов. Базовая архитектура процессоров семейства ADSP-2100 включает аппаратное обеспечение циклического возврата указателя адреса, упрощая использование циклических буферов в памяти как на, так и вне кристалла и сокращая потери на их организацию (и, следовательно, увеличивая производительность).

• Организация циклов и условных переходов с нулевыми потерями времени -Алгоритмы цифровой обработки сигналов содержат повторы и в большинстве своем выражаются логически как циклы. Программный автомат в процессорах семейства ADSP-2100 поддерживает код цикла с нулевыми потерями, обеспечивая одновременно отличные рабочие характеристики и ясную структуру программы. Подобным же образом, без потерь ресурсов, организуются условные переходы.

2.1 БАЗОВАЯ АРХИТЕКТУРА

Рис.2 базовая архитектура

Каждый процессор семейства ADSP-2100 содержит три независимых вычислительных устройства с полным набором функциональных возможностей:

арифметико-логическое устройство (АЛУ), умножитель-накопитель (умножитель) и устройство циклического сдвига. Вычислительные устройства обрабатывают данные разрядностью в 16 бит и поддерживают вычисления с повышенной точностью.

В АЛУ выполняются стандартные арифметические и логические операции и примитивы деления. В умножителе за один машинный цикл выполняются операции умножения, умножения/сложения и умножения/вычитания. Устройство сдвига выполняет операции арифметического и логического сдвига, нормализации, денормализации и нахождения порядка числа. Устройство сдвига осуществляет управление числовыми форматами, включая представления чисел, состоящих из нескольких слов, числами с плавающей точкой. Вычислительные устройства соединяются таким образом, что выход любого из этих устройств может быть входом в любое из этих устройств в следующем цикле. Для этого служит внутренняя шина результатов (Р шина) напрямую соединяющая вычислительные устройства.

Все три вычислительных устройства содержат регистры ввода и вывода, доступные по шине данных памяти данных (ДПД). Вычислительные устройства, как правило, берут операнды из регистров ввода и загружают результат в регистры вывода. Эти регистры являются буферами между памятью и вычислительными устройствами. Благодаря этому вводится один уровень конвейерной обработки при вводе и один уровень - при выводе. Р шина позволяет использовать результат одного вычисления напрямую в качестве входного значения для другого вычисления. Это позволяет избежать задержки конвейерной обработки при выполнении серии различных вычислений.

Генераторы адреса и программный автомат

Два специальных генератора адреса данных и программный автомат обеспечивают работу вычислительных регистров с максимальной производительностью. Генераторы адреса данных генерируют адреса памяти, когда данные памяти пересылаются в или из регистров ввода или вывода. Каждый генератор адреса сохраняет до четырех указателей адреса. Когда указатель используется для косвенной адресации, он модифицируется на величину, содержащуюся в заданном регистре. Имея два генератора адреса данных, процессор может одновременно генерировать два адреса для выборок двух операндов.

Каждому указателю может соответствовать значение длины буфера для реализации адресации по модулю при организации циклических буферов. (Свойство циклического буфера также используется в последовательных портах и аналоговом интерфейсе для автоматических передач данных. За дополнительной информацией обратитесь к главе о последовательных портах).

Генератор адреса данных 1 может генерировать адреса только для памяти данных. Генератор адреса данных 2 может генерировать адреса либо для памяти данных, либо для памяти программы. При установке бита соответствующего режима в регистре состояния режима (MSTAT) биты выходного адреса генератора адреса данных 1 переставляются в обратном порядке перед их выводом на шину адреса. Это свойство облегчает организацию бит-реверсной адресации при выполнении быстрого преобразования Фурье (БПФ).

Программный автомат посылает адреса команд в память программы. Программный автомат управляется регистром команд, в котором содержится текущая выполняемая команда. Регистр команд позволяет ввести один уровень конвейерной обработки в поток программы. Команды выбираются и загружаются в регистр команд за один цикл процессора и выполняются в течении следующего цикла, в то время как подготавливается выбор следующей команды. Для сокращения количества холостых циклов программный автомат осуществляет поддержку условных переходов, вызовов подпрограмм и возврата в основную программу за один цикл. Благодаря счетчику циклов и стеку цикла процессор выполняет программу цикла с нулевыми потерями. Никаких дополнительных команд перехода для организации циклов не требуется.

Шины

Внутренние элементы процессора связаны пятью внутренними шинами. Шины адреса памяти программы (АПП) и данных (АПД) используются для адресов, связанных с памятью программы и памятью данных. Шины данных памяти программы (ДПП) и памяти данных (ДПД) используются для передачи данных и кода команд из памят/ данных и памяти программы. Все шины мультиплексированы в одну внешнюю шину адреса и в одну внешнюю шипу данных; сигналы BMS , DMS и PMS выбирают различные адресные пространства. По Р-шине промежуточные результаты напрямую передаются между вычислительными устройствами.

Шина АПП разрядностью 14 бит обеспечивает прямую адресацию до 16К слов смешанного кода программы и данных. Шина ДПП разрядностью 24 бита позволяет передавать 24-битовые команды.

Шина АПД разрядностью 14 бит обеспечивает прямую адресацию до 16К слов данных. Шина ДПД имеет разрядность 16 бит. Шина ДПД обеспечивает передачу содержимого любого регистра в процессор для дальнейшей его передачи в любой другой регистр или любую ячейку памяти за один цикл. Адрес памяти программы может иметь два источника: абсолютное значение, заданное в коде команды (прямая адресация) и значение на выходе генератора адреса данных (косвенная адресация). Только косвенная адресация поддерживается для выборок данных из памяти программы.

Шина ДПП может также использоваться для передачи данных в и из вычислительных устройств напрямую или через устройство обмена данными между шинами ДПП и ДПД. Устройство обмена данными между шинами ДПП и ДПД позволяет согласовывать прохождение данных из одной шины в другую. Оно содержит аппаратные средства для преодоления разницы в 8 бит между разрядностью этих двух шин.

1.3. ДРУГИЕ УСТРОЙСТВА НА КРИСТАЛЛЕ

В этом разделе описываются дополнительные функциональные устройства, которые могут входить в состав процессоров семейства ADSP-2100.

Последовательные порты

Большинство процессоров семейства имеют один или два двунаправленных последовательных порта с двойной буферизацией для последовательной связи. Последовательные порты синхронны и используют синхронизирующие сигналы для управления потоком данных. Каждый последовательный порт может генерировать внутренние тактовые импульсы или использовать внешние. Синхронизирующие сигналы могут генерироваться внутренним или внешним устройством. Длины слов могут варьироваться от 3 до 16 бит. Один последовательный порт (SPORTO) обладает многоканальностью, что позволяет осуществлять прием и передачу дополнительных слов данных из потока данных с 24- или 32-разрядными словами. Второй последовательный порт, SPORT1, может быть по желанию сконфигурирован как два дополнительных вывода внешних прерываний (IRQ1, IRQO) и выход флага "Flag Out" (FO) и вход флага "Flag In" (FI).

Таймер