Интернет магазин китайских планшетных компьютеров



Компьютеры - Цифровой сигнальный процессор - Программирование ЦСП

22 января 2011


Оглавление:
1. Цифровой сигнальный процессор
2. Области применения
3. Основные параметры ЦСП
4. Устройство
5. Классификация ЦСП по архитектуре
6. ЦСП с архитектурой VLIW
7. Суперскалярные ЦСП
8. Гибридные ЦСП
9. Программирование ЦСП



Для программирования ЦСП обычно используют один из двух языков — ассемблер и C. Основные особенности ассемблеров ЦСП совпадают с аналогичными языками обычных микропроцессоров и, в целом, могут быть описаны как:

  • Язык ассемблера является машинно-ориентированным, то есть каждое семейство процессоров имеет язык, отличающийся от языка других семейств;
  • Одна команда на ассемблере обычно эквивалентна одной команде машинного языка;
  • При программировании на ассемблере программисту доступны все ресурсы процессора и системы, что позволяет использовать их максимально эффективно;
  • От программиста требуется хорошее знание архитектуры каждого конкретного процессора, с которым он работает, то есть требуемая квалификация персонала должна быть достаточно высокой;
  • Создание и отладка программ на ассемблере — длительный трудоёмкий процесс, также требующий высокой квалификации.

С другой стороны, при использовании языков высокого уровня, в частности, C, можно заметно упростить и ускорить создание программ, но при этом ресурсы системы будут использоваться менее эффективно, по сравнению с программой, целиком написанной на ассемблере.

В реальности обычно используются подход, совмещающий достоинства как языков высокого уровня, так и эффективности программ на ассемблере. Выражается это в том, что стандартные библиотеки обычно создаются на ассемблере, как и критичные ко времени исполнения и объёму памяти части кода. В то же время вспомогательные модули могут создаваться на языке высокого уровня, ускоряя и упрощая разработку программной системы в целом.

Особенности ассемблеров ЦСП

К интересным особенностям ассемблеров ЦСП можно отнести следующее:

  • Наличие двух форм записи многих команд — мнемонической и алгебраической. Мнемоническая форма аналогична записи команд для обычных микропроцессоров, например, ADD dst, src. Другая, алгебраическая, в ассемблерах стандартных микропроцессоров используется реже, в то время как на языке ЦСП упомянутая команда может быть записана в виде dst = dst + src. Обычно ассемблеры ЦСП понимают обе формы записи, но, например, ассемблеры ADI и Lucent используют только алгебраическую запись.
  • Средства организации стандартных структур, например, специальных аппаратных команд повторения одной команды или блока кода. При этом, в отличие от команд повторения обычных процессоров, ЦСП может пропускать цикл выборки кода повторяемой команды, что уменьшает время выполнения каждого повторения как минимум на 1 цикл шины, что при двухцикловой команде даёт двойной выигрыш по времени.

Совместимость внутри семейств ЦСП

Обычно ЦСП выпускаются семействами, и изделия внутри семейств имеют аналогичные языки ассемблера, или даже совместимы на уровне машинных кодов. Также внутри семейства обычно используются одинаковые наборы библиотек подпрограмм. Как и в обычных микропроцессорах, зачастую старшие модели ЦСП могут исполнять машинный код младших моделей, либо их ассемблер включает все команды младших моделей как подмножество собственного набора команд.

Отладка программ

Обычно, отладка программ, написанных для ЦСП, производится с помощью специальных средств, включающих программные имитаторы и эмуляторы. В их состав также часто входят средства профилирования.



Просмотров: 12013


<<< Мультикор
Эльбрус 2000 >>>