Читайте также:
|
|
Команды операции с битами системного регистра могут использоваться для установки, обнуления, изменения состояния или проверки определенных битов в системных регистрах. Непосредственное поле в команде операции с битом определяет обрабатываемый бит.
Примеры:
BIT SET MODE2 0x00000070;
BIT TST ASTAT 0x00002000;
Хотя устройство сдвига и ALU способны обрабатывать биты, эти устройства работают только с регистрами регистрового файла. Команды операции с битами системного регистра устраняют потери времени на передачу содержимого системных регистров в регистровый файл и из него:
Команда операции с битом | Операция устройства сдвига |
(системный регистр) | (регистровый файл данных) |
BIT SET регистр данные | Rn = BSET Rx BY Ry | данные – установка битов |
BIT CLR регистр данные | Rn = BCLR Rx BY Ry | данные – сброс битов |
BIT TGL регистр данные | Rn = BTGL Rx BY Ry | данные – инверсия битов |
BIT TST регистр данные | BTST Rx BY Ry | данные – тестирование битов |
(приводит к изменению | (приводит к изменению флага состояния SZ) |
флага BTF) |
Работа с регистрами IOP-процессора
Работа с регистрами IOP-процессора выполняется как с ячейками памяти. Невозможны прямые операции с битами регистров IOP-процессора. Способ модификации регистра IOP-процессора:
Rx = dm(SYSCON);
Rx =...; // обработка, модификация
dm(SYSCON) = Rx;
PX-регистры
Регистр РХ обеспечивает обмен данными между внутренними шинами: между 48разрядной шиной РМD и 40разрядной шиной данных DMD. 48разрядный регистр PX состоит из двух регистров: 16разрядного PX1 и 32разрядного PX2. PX1 и PX2 могут независимо использоваться в командах, а также рассматриваться как объединенный регистр PX. Размещение PX1 и PX2 внутри регистра PX показано ниже на рисунке.
Любой из двух регистров PX1 и PX2 или объединенный регистр PX могут использоваться при передаче данных между универсальными регистрами или между памятью и регистром. Эта передача данных может выполняться по шине РМD или по шине DMD. Регистры PX могут считываться в регистровый файл данных или записываться из него по шине РМD или по шине DMD.
Когда данные передаются между PX2 и шиной РМD, то используются 32 старших разряда шины. При передаче данных из PX2 16 младших разрядов шины РМD заполняются нулями. Когда данные передаются между PX1 и шиной РМD, то используются 16 средних разрядов шины РМ. При передаче данных из PX1 биты 15-0 и биты 47-32 заполняются нулями. Когда объединенный регистр PX используется для передачи данных по шине РМD, то все 48 разрядов могут считываться из памяти программы или записываться в нее.
На рисунке ниже приведена схема, описывающая передачу данных с использованием регистра PX.
14. Общие принципы работы вычислительных блоков ADSP-21ххх. Особенности организации вычислений с ПЗ- и ФЗ-данными. Регистровый файл. Поддерживаемые типы данных и их идентификация в программе.
Процессор ADSP2106x содержит три независимых вычислительных устройства:
1. Арифметико-логическое устройство (ALU).
2. Умножитель с аккумулятором с фиксированной точкой.
3. Устройство сдвига.
Вычислительные устройства обрабатывают данные в трех форматах: 32разрядном с фиксированной точкой, 32разрядном и 40разрядном с плавающей точкой. Операции с плавающей точкой – одиночной точности стандарта IEEE. 32разрядный формат с плавающей точкой соответствует стандарту IEEE, а 40разрядный формат стандарта IEEE повышенной точности имеет восемь дополнительных младших разрядов мантиссы.
- ALU выполняет стандартный набор арифметических и логических операций в форматах и с плавающей, и с фиксированной точкой.
- Умножитель выполняет умножение с фиксированной и с плавающей точкой, а также операции умножение/сложение и умножение/вычитание с фиксированной точкой.
- Устройство сдвига выполняет логические и арифметические сдвиги, операции с битами, внесение поля битов и его извлечение, а также операцию нахождения порядка 32разрядных операндов.
Вычислительные устройства выполняют операции за один цикл; нет вычислительного конвейера. Они соединяются между собой параллельно. Выход любого устройства может быть входом любого другого в следующем цикле. При многофункциональных вычислениях ALU и умножитель выполняют операции независимо и одновременно.
Дата добавления: 2015-11-16; просмотров: 63 | Нарушение авторских прав
<== предыдущая страница | | | следующая страница ==> |
Оптимизация по результатам профилирования. | | | Регистры флагов |