Книга предназначена для самостоятельного изучения и применения на практике цифровых сигнальных процессоров DSР (Digital Signal Processor). На примере популярной микросхемы АDSP2181 фирмы Аnalog Devices рассмотрены устройство, архитектура и технические характеристики цифрового сигнального процессора. Приведено описание вычислительных блоков процессора, средств разработки программного обеспечения, языка программирования и системы команд процессора.
При подаче питания на тестовую плату, описанную в гл. Сигнальный процессор анализирует состояние данного сигнала и сигнала на входе вывода ММАР после сброса и распознает, что загрузка программы в программную память процессора будет производиться из ПЗУ через интерфейс . При этом процессор автоматически заносит в регистры порта . Порт ВРМА Как было сказано выше, программа. После автоматической загрузки из ПЗУ в память программ процессора . После чего вновь происходит перезапуск процессора, и начинает выполняться основная загруженная программа. При загрузке основной программы загрузчик полностью замещается в программной памяти процессора самой программой. Такой непростой механизм загрузки реализован разработчиками процессора с целью обеспечения гибкости при загрузке процессора, и для обеспечения возможности разработчикам программного обеспечения создавать собственные загрузчики программ. Машинные коды загрузчика можно увидеть в первых байтах файла . Первым располагается в ПЗУ старший байт команды, затем следует средний байт и последним записывается младший байт команды. Формат хранения слов программы в ПЗУ приведен в табл. Программирование Способ загрузки процессора из ПЗУ хорошо применим для автономных процессорных устройств, работающих под управлением одной программы. Однако на практике довольно часто встречаются задачи, когда необходимо оперативно менять управляющую программу для процессора какого. Это также необходимо при отладке программ с многочисленными итерациями трансляции и загрузки отлаживаемой программы в процессор. Удачным решением для такого рода задач является загрузка программ в сигнальный процессор через интерфейсный порт процессора ЮМА. Но прежде чем начать освоение данной процедуры, необходимо подробнее познакомиться с этим интерфейсом. С этого мы продолжим изучение сигнального процессора в следующей главе. Помимо порта прямого доступа к байтовой памяти . К сигналам управления относятся. При чтении и записи памяти через . В памяти данных процессора по адресу . Формат этого регистра представлен в табл. Кроме того, порт ЮМА позволяет выполнять загрузку памяти программ процессора с ав . Программирование томатическим запуском программы после заполнения нулевой ячейки памяти. Протокол обращения к памяти процессора через порт ЮМА достаточно прост и показан на рис. Вначале все сигналы управления портом переводятся в пассивное состояние и проверятся готовность ЮМА, путем ожидания установки сигнала . Затем осуществляется вывод на шину . После чего формируется строб сигнала записи адреса . Временная диаграмма данной операции показана на рис. Проверка готовности ЮМА по сигналу . Алгоритм обращения к памяти процессора . Временная диаграмма операции защелкивания адреса ЮМА Таблица . Как видно из таблицы, минимальные временные значения сигналов не превышают . Далее производится операция чтения или записи памяти. При операции чтения данные считываются с шины . При операции записи данные выставляются на шину . Порт ЮМА поддерживает короткий . Во время короткого цикла данные читаются и записываются без ожидания готовности порта по сигналу . Временные диаграммы короткого цикла чтения через порт ЮМА . Временные диаграммы для данных циклов обращения показаны на рис. Временные диаграммы короткого цикла записи через порт ЮМА Таблица . Во время длинного цикла данные читаются и записываются с ожиданием готовности порта по сигналу . Программирование Временные диаграммы для данных циклов обращения показаны на рис. Временные диаграммы длинного цикла чтения через порт ЮМА Таблица . Порт ЮМА Параметр Минимум Максимум . Временные диаграммы длинного цикла записи через порт ЮМА Таблица . Программирование Параметр Минимум Максимум Ъкэи Установка данных перед . Сигнал подтверждения данных . При обращении через порт ЮМА к памяти данных операции чтения и записи выполняются за один цикл, поскольку разрядность порта составляет . Однако при обращении к . В первом цикле происходит чтение или запись старших . Во втором цикле по линиям . Автоинкремента адреса между этими циклами не происходит. Через порт ЮМА возможен доступ ко всей памяти процессора, за исключением регистров управления и состояния, отображенных на область памяти данных. При обращении через ЮМА к области памяти данных, отведенной для регистров управления и состояния с адреса . Но эта область памяти фактически будет дополнительной для пользователя, поскольку она дублирует системную область памяти данных, отведенную для регистров управления и состояния процессора. Данную область допускается использовать для хранения произвольной служебной информации, но только при обращении к этой памяти через порт ЮМА, поскольку другой возможности обращения к данной памяти у процессора не существует. Для обеспечения доступа через порт ЮМА к регистрам управления и состояния процессора необходимо обеспечить пересылку содержимого этих регистров в другую область памяти из самой программы процессора. Такая аппаратная конфигурация процессора обеспечивает защиту . Порт ЮМА информации в регистрах управления и состояния от случайной записи и от программных ошибок. Для этого необходимо установить сигналы на выводах процессора ВМСЮЕ. Затем необходимо произвести сброс процессора и загрузить программу в память программ процессора, начиная с адреса . Кроме того, можно записать произвольные данные в память данных процессора. После этого следует записать слово программы по адресу . Для этих целей был разработан небольшой адаптер . Схема этого адаптера приведена на рис. Адаптер выполнен на базе одной программируемой логической микросхемы . Схема внутреннего содержимого этой микросхемы представлена на рис. Данная схема обеспечивает формирование . Прошивка для программирования данной ПЛИС в виде файла . Программирование ПЛИС осуществляется через соединитель Л с помощью программатора, описываемого в приложении. Все элементы адаптера можно распаять на небольшой макетной плате или изготовить для этих целей специальную печатную плату.