Эффективность сигнального процессора

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

Переход по нулю – повторяющиеся алгоритмы наиболее логично выражать через циклы.

Программа Sequenser ADSP-2100 поддерживает работу с циклическим кодом с нулем на верху, в объединении со структурой clearest это повышает эффективность системы.

Также нет препятствий для работы с условными переходами. Вычислительные модули структурная схема процессора семейства ADSP-2100 Как уже говорилось выше каждый процессор содержит три независимых вычислительных модуля: - арифметико-логический (ALU); - умножение с накоплением (MAC); - расширитель (shiffter). Эти устройства работают с 16-разрядными данными и обеспечивают аппаратную поддержку мультиточности.

ALU выполняет ряд стандартных арифметических и логических команд в дополнение к примитивам деления. MAC выполняет одно-цикловые операции умножения, умножения/сложения, умножения/вычитания. Shiffter осуществляет логические и арифметические сдвиги, нормализацию, де нормализацию и операцию получения порядка, атак же управление форматом данных, разрешая работу с плавающей точкой.

Вычислительные модули размещаются последовательно друг за другом, таким образом чтобы выход одного мог стать входом другого в следующем цикле. Результаты работы модулей собираются на 16-разрядную R-шину. Все три модуля содержат входные и выходные регистры, которые доступны через 16-разрядную DMD-шину. Команда, выполняемые в модулях, берут в качестве операндов данные находящиеся в регистрах ввода и после выполнения записывают результат в регистры вывода.

Регистры являются как бы промежуточным хранилищем между памятью и вычислительной схемой. R-шина позволяет результату одного вычисления стать операндом к другой операции. Это позволяет сэкономить время обходясь без лишних пересылок модуль-память.