В HTML      В PDF
микроэлектроника, микросхема, транзистор, диод, микроконтроллер, память, msp430, Atmel, Maxim, LCD, hd44780, t6963, sed1335, avr, mega128
Предприятия Компоненты Документация Применения Статьи Новости

 
Пересюхтюмя


13-я Международная выставка электронных компонентов и комплектующих для электронной промышленности





Выставка Передовые Технологии Автоматизации





Главная > Обзоры по типам > Микроконтроллеры > ARM > Система команд
Пересюхтюмя


13-я Международная выставка электронных компонентов и комплектующих для электронной промышленности





Выставка Передовые Технологии Автоматизации


Команда обработки данных сопроцессором (CDP)

Эта команда будет выполнена, если условие истинно. Все различные условия ее выполнения перечислены в таблице 6. Машинный код команды приведен на рис.34.

Команда обработки данных сопроцессором
Рис. 34. Команда обработки данных сопроцессором

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

Поля сопроцессора

Для ядра ARM7TDMI значащими являются только четыре старших биты машинного кода команды: [31:24]. Оставшиеся биты используются только сопроцессором. Поля, содержащие эти биты, используются в соответствии с некоторой условной договоренностью, однако сопроцессор может использовать эти поля как угодно, кроме поля "CP#". Это поле используется для указания идентификационного номера (0…15) сопроцессора, которому нужно будет выполнять эту команду. Команда будет проигнорирована сопроцессором, если его идентификационный номер не совпадает с номером, указанным в этом поле. При стандартной интерпретации команды сопроцессор должен использовать поле "CP Opc" (и, возможно, поле "CP") в качестве типа выполняемой команды, содержимое полей "CRn" и "CRm" - в качестве операндов, а результат выполнения размещать в поле "CRd".

Число машинных тактов

Команда CDP выполняется за 1S + bl, где b - число машинных тактов, необходимых для выполнения пустых тактов сопроцессора, S и I зависят от типа машинных тактов.

Синтаксис в ассемблере

CDP{cond} p#,<выражение1>,cd,cn,cm{,<выражение2>}

где:

{cond}: двухсимвольная мнемоника условия выполнения команды (см. табл. 6);
p#: номер сопроцессора, которому адресована команда;
{выражение1}: результат вычисления этого выражения размещается в поле "CP opc";
cd, cn, cm: выражения, которые определяют номера регистров сопроцессора для полей CRd, CRn, CRm соответственно;
{выражение2}: результат вычисления этого выражения размещается в поле "CP".

Примеры

CDP     p1,10,c1,c2,c3       ; Запрос на выполнение сопроцессором #1 
                             ; для  выполнения команды с кодом 10
                             ; CR2 и CR3 - операнды, CR1 - результат.
CDPEQ   p2,5,c1,c2,c3,2      ; Если флаг Z установлен, то выполнить
                             ; сопроцессором #2 команду с кодом 5,
                             ; CR2 и CR3 - операнды, CR1 - результат.


<---- Вернуться к Системе команд --->