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

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

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

Генератор адреса данных 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).

Таймер

Таймер с программируемыми интервалами обеспечивает генерацию периодических прерываний. 8-разрядный регистр предварительного деления позволяет осуществлять декрементирование регистра счетчика разрядностью 16 бит через число циклов от 1 до 256. Прерывание генерируется, когда регистр счетчика достигает 0. Регистр счетчика перезагружается из 16-битового регистра периода, и таймер возобновляет свою работу.


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: