DSP процессор
Группа компаний A&T Trade, основанная в 1990 году, реализует профессиональное световое и звуковое оборудование, для производства которого используются цифровые сигнальные процессоры – ЦСП (Digital signal processor, DSP).
ЦСП – это микропроцессор, применяемый для цифровой обработки сигналов. Используется в, синтезаторах (речевых и музыкальных), анализаторах спектра, системах распознавания изображений и речи, радио- и гидролокации. Также ЦСП применяется в каналах передачи информации, при кодировании видео- и аудиопотоков (DSP акустика), а также в системах управления технологическими процессами.
Виды
В зависимости от архитектуры процессоры делятся на две группы.
Стандартные. Существует два варианта выполнения команды MAC на DSP процессоре стандартного типа. В первом случае, когда оба операнда находятся в памяти данных, их выборка занимает два такта, поэтому время осуществления количества сложений n равно 2n. Существует и второй вариант: если один операнд уже будет находиться в памяти программы, операция выполняется за один такт, соответственно, время исполнения команды процессором составит n тактов. Для достижения максимального быстродействия необходимо задействовать программную память для хранения промежуточных данных и выполнения однокомандного цикла. Оптимизировать использование памяти программ можно за счет использования «двухпортовой памяти» - с двумя комплектами входных шин. При таком построении возможно одновременное обращение по двум адресам, расположенным в отдельных блоках. Повышение производительности достигается за счет увеличения тактовой частоты.
Улучшенные стандартные. Для выполнения двух параллельных команд MAC процессор использует два модуля и два аккумулятора. Информация поступает по трем шинам, при этом одно значение является общим для них. Данный способ выполнения двух параллельных команд с одним сомножителем может заменять собой более сложные алгоритмы ЦОС (цифровой обработки сигналов). К примеру, это может быть реализовано при двухканальной обработке, когда общая шина принимает отсчеты сигнала, а две раздельные – наборы коэффициентов. Увеличение производительности достигается с помощью методов повышения параллелизма (за счет введения узкоспециализированных сопроцессоров, усложнения системы команд и т.п.).
Параметры
Тип арифметики. В зависимости от типа арифметики DSP делятся на процессоры, обрабатывающие информацию с плавающей и фиксированной точкой (формой представления дробных чисел, которая используется в работе математического сопроцессора).
Разрядность данных. Разрядность процессора с фиксированной точкой составляет 16 бит, с плавающей – 32 бита. Отдельные модели позволяют производить обработку данных с двойной точностью.
Виды и объём внутренней памяти. Данная характеристика определяет объем информации, которую процессор способен обработать без обращения к внешней памяти, что определяет возможность функционирования системы в режиме реального времени. От типа ПЗУ (постоянно запоминающего устройства) зависят возможности программирования устройства: для крупносерийного производства используются модели с обычным ПЗУ, для небольших тиражей – однократно программируемые устройства (ППЗУ), а применение Flash-памяти позволяет несколько раз изменять программу устройства во время его эксплуатации.
Адресуемый объём памяти. Основной характеристикой объема адресуемой внешней памяти DSP является ширина внешней шины адреса.
Потребляемая мощность и напряжение питания. Устанавливаются низковольтные устройства (1,8-3,3В), которые позволяют экономить потребляемую энергию.
Состав внутренних дополнительных устройств. В качестве дополнительных технических средств для процессоров могут использоваться устройства двух видов: общего применения (контролеры прямого доступа к памяти, таймеры) и проблемно-ориентированные (компрессоры данных, кодеки, аналого-цифровые преобразователи).
Средства разработки и поддержки
- Языки программирования, имеющих компиляторы под данный DSP процессор.
- Использование средств отладки готовых программ и их возможности.
- Наличие и доступность совместимых устройств (аналого-цифровой и цифро-аналоговый преобразователь), а также их возможности
- Обеспечение технической поддержки и доступность документации.
- Наличие библиотек математических функций и стандартных подпрограмм.
Устройство
Гарвардская архитектура. Представляет собой архитектуру, отличительной особенностью которой является раздельная обработка и хранение команд и информации в двух устройствах (в памяти программ и памяти данных). Выборка команды и двух операндов осуществляется за один или два цикла шины, что обеспечивается возможностью обращения одновременно к памяти программ и памяти данных. Обе структуры находятся на кристалле ЦСП, что обусловливает необходимость использования внешних дополнительных запоминающих устройств. Процессор взаимодействует с ними через один набор шин без разделения на данные и команды.
Умножители. Процессор оснащен аппаратными умножителями с целью сокращения времени, требующегося на выполнение умножения (одной из основных операций цифровой обработки сигналов). Данный компонент позволяет осуществлять операцию в течение одного командного цикла. В зависимости от назначения умножители делятся на два вида.
- Простой умножитель. Позволяет выполнять операции умножения данных шириной в слово. Результат имеет ширину двойного слова и сохраняется в двух ячейках памяти (в двух обычных регистрах) или в регистре двойной ширины.
- Умножитель-сумматор. Используется для операции умножения с накоплением.
Сдвигатели. Данный компонент процессора представляет собой устройство, применяемое для выполнения операций сдвига данных. В зависимости от выполняемых функций сдвигатели делятся на две группы.
- Предсдвигатели. Выполняют предварительное масштабирование, арифметические, логические и циклические сдвиги в процессе выполнения операции процессорами или до ее начала.
- Постсдвигатели. Выполняют сдвиг после исполнения операции, а также нормализацию и масштабирование для сохранения в память. Постдвигатели осуществляют выделение одинакового порядка и удаление битов расширения знака.
Аккумулятор. Данный элемент процессоров представляет собой регистр, используемый для сохранения результатов операций. Отдельные аккумуляторы могут состоять из нескольких регистров: EXT (регистр расширения), LSP (регистр младшего слова), MSP (регистр старшего слова).
Языки программирования
Для программирования ЦСП используются языки ассемблер или С. Первый применяется для создания стандартных библиотек. Части кода процессоров, требующие большого объема памяти и определенного времени исполнения, пишутся на С.
Язык программирования Ассемблер. Ассемблер представляет собой язык программирования низкого уровня, в котором большинство мнемонических команд соответствуют инструкциям процессора вычислительной системы (в отдельных случаях одна команда ассемблера соответствует нескольким вариантам команд процессоров). Возможно использование символических меток вместо адресов ячеек памяти, заменяемых на абсолютные или относительные адреса или директивы (команды, выполняемые ассемблером), которые рассчитываются в автоматическом режиме.
Особенности ассемблеров ЦПС
- Наличие двух форм записи команд. Ассемблеры ЦСП позволяют осуществлять запись команд в мнемонической и алгебраической формах. Большинство способны воспринимать обе формы записи.
- Наличие средств организации стандартных структур. Ассемблеры оснащены средствами для организации аппаратных команд повторения отдельной команды или целого блока кода.
Язык программирования С. Представляет собой процедурный стандартизированный язык программирования. Компиляция программ осуществляется с помощью однопроходного компилятора, возврат к уже обработанному тексту не осуществляется. Уровень языка является низким, что обеспечивает простоту разработки компиляторов и возможность использования на большом количестве платформ. Также С позволяет создавать переносимые программы.
Особенности
- Простая языковая база. Отдельные функции (математические и функции управления файлами) вынесены в библиотеки.
- Наличие ориентации на процедурное программирование. Данная ориентация позволяет сделать более удобным структурный стиль программирования.
- Наличие системы типов. Сорт (тип) – независимая, относительно устойчивая система элементов, выделяемая в рассматриваемом множестве. Наличие совокупности типов предотвращает выполнение излишних операций.
- Передача параметров по значению. Передача параметров в функцию осуществляется по значению (передача по ссылке осуществляется с использованием указателей).
- Применение предпроцессоров. Предназначено для включения файлов с исходным кодом и определением макросов.
- Наличие трех способов выделении памяти. Существует статический, автоматический и динамический способ.
Получить дополнительную информацию и заказать профессиональное оборудование, произведенное с использованием DSP (акустика, процессоры, сенсорные панели и др.) можно, обратившись к нашим менеджерам по телефону +7 (495) 933-37-17.