Солонина А., Улахович Д. Алгоритмы и процессоры цифровой обработки сигналов (2002) (1095891), страница 46
Текст из файла (страница 46)
Синтаксис параллельных пересылок в конкретных командах различных процессоров определяется типом разрешенных пересылок (см. табл. 6.3) и адресацией операндов. В табл. 6.4 приведены примеры параллельных пере- сылок с использованием мнелюнического и гцчгсбранчсского синтаксисов. Прн описании типов пересылок в табл.
6.4 использованы слсдуюшне услов ныс обозначения: Е) Р— префикс константы; Е) % — префикс шестнадцатеричного зквивалента константы в процессорах фирмы Мо!Ого]а; ЕЗ (-) — содержимое; Е) (3:(регистр адреса), Х:(регистр адреса), т':(регистр), Р;(репютр адреса)— указанный косвенно адрес ячейки памяти данных, Х-памяти данных, )'- памяти данных илн паня'ги программ соответственно. Особенности адресации операндов слг. в *!аее 5. Таблица 6.4. Лрнмеры синтаксиса параллельных пересьиюк 345 — ВО (В) Х1 (Х;(йбй -» А (й6)+1 » Н6 (Х;(НЗ)) А (Х;(НО)) -» Х1 (НО)-1 НО В дальнейшем булем рассматривать команды без олераг<иб лауаыетьныт ггере- СЫЛОКСинтаксис команд операций с данпымн в различных процессорах показан па примерах одной и той жс команлы сложения АОО (табл.
65), которая отличается количеством и адресацией операндов, наличием сдвига, условия и т. л. ,((ля краткости описания операций в табл. 6.5 ввслены следующие условные обозначения: П Б]1]йг — сдвиг при мнемоническом синтаксисе ( — Яп(! — соответвгвусг сдвигу вправо); П К„ — и-разрядный регистр К; )) Д,  — аккум)шяторы Д и В; Д <( — символ сдвига вправо прн алгебранчсском синтаксисе. Особенности адресации операндов сц. в главе 5. Таблица 6.5. Лрнмеры синтаксиса команд без параллельных пересылок 251 лало 6. Система команд команды цикла: О колтанд повторения КОП Количество повторений О команды цикла Примеры синтаксиса Операция команд управления Процессор Безусловный переход к РМ:([11) змР [в11 дэьт З125 Мотаю]а []ЗРББххх Мне- монический син- таксис О команл повторения КОП Количество повторений Если результат предыдущей операции < О, переход к РМ:125 Следующая команда повторяется (ХО) раз О повторения блока команл КЕР [ХО] ОО $5 ЕАВЕ1 5 циклов, ЕАВЕŠ— метка послеДНей команды цикла ХС Х, Услсвле [,Условие(,условие11 Безусловный переход к РМ МЕТ1 Если (А) > О, переход к РМ:1240й Техвв [пмшгпеп1в ТМ832ОС2ххх ТМ8320С5ххх Мнемонический синтаксис В НЕТ1 СС 12[Оп, АОТ ЕРТ $1103 Следующая команда повторяет~я 1103п рзз Если (А) я О, выполняется следующая однословная команда ХС 1, А150 Алгебраический синтаксис (ТМБ320С5ххх) Сото МЕТ1 ,Г [Апт]се11 1210И аереас[$1103Л) 1Г [Атко]ехесцсе Алгоритмы и процессоры цифровой обработки сигнелоз Слово команды управления (перехода, вызова полпрограмм, цикла и т.
д.) л общем случае содержит потя: условия, операции и операндов; при этом в поле операндов может размещаться: адрес перехода, адрес послелней коман ды цикла и др. Параллельные пересылки в командах управления кедолуслщхгы. Этой структуре соответствует слелуюший синтаксис команл в различных процессорах: С] Мнетгок[гческггг] синтаксис команд управления: ° в процессорах !)БР5бххх/9бООХ фирлгы Мо[ого!а: О команд перехолов КОП [Условие1 [Ад[сес перехода] ПО Количество циклов Адрес последней команды цикла ° в процессорах ТМБ32ОС2ххх/5ххх фирмы Техаа [пяпзшепцс О команд переходов КОП [АДРЕС ПЕРЕХОДа] [УСЛОВИЕ][,УСЛОВИЕ[,УСЛОВКЕ) КОП Адрес последней команды повторяемого блока О команд условного выполнения следующих (одного итгт двух) слов команды тле х = !, 2.
что соответствует выполнению одного или двух слов КОМаНдЫ„В ЗаВИСИМОСтн От Условия. П Алгебраический синтаксис команл управления: ° в процессорах ТМБ320С5ххх фирмы Техаз ]пмплпепце 1Г [условие[, условие [,условие]]1 Операция Агзтес переходе команды условного выполнения следующих (одного или двух) слов комаплы: 1г [условие] [, условие [,условие1]] бпервция Гй] ° кол[ант управления в процессорах фирмы Апа]ой Т]еч[сез; [1Г условие! Операция [Адрес перекопе]: го Адрес последней команды [Условие]; Адреса в командах л1о~ут указываться прямо (меткой илн абсолютным значением) илн косвенно.
Прилтеры использования мнемонического и алгебраического синтаксиса конкретных команл управления в различных процессорах приведены в табл. б.б. Для краткости описания операций в табл. б.б введены следуюцше условные обозначения: г) РМ:А(3 — адрес перехода в памяти программ, указанный прялю; Е) РМ;(Регистр адреса) — адрес перехода в памяти программ, указанный косвенно: Е) А,  — аккумуляторы А и В; Е] )] — суффикс шестнадцатеричного адреса ячейки памяти програлтм в процессорах фирмы Телах!Пз]гцшегтцл Особенности алресации переходов см. е главе 5.
Таблица 6.6. Примеры сингаксиса команд управления Безусловный переход к РМ.МЕТ1 Если (А) > О, переход к РМ:124ОП Следующая команда повторяется 11036 раз Если (А] я О, выполняется следующая [11 однословная команда Алгоритмы н процессоры цифровой обработки сигналов гбг 253 лава 6. Сисгвыа каЫВНД твб ца б.б й ) 6.3.3.
Операции над упакованными данными Працваеар Примеры синтаксисе Операция камвндуправпания Апа)ай (лен)свз ДОЯР-2) хх Алгебраический синтаксис 11 ЕО заиг (14)1 Если результат операции АЛУ = О, вы- полняется переход к Р)я):04), иначе — к следующей команде 1Г ЬТ йтз) Если результат операции АЛУ < О, воз- врат из подпрограммы 00 ьйзт цит1Б е01 ьдэт — последняя команда цикла; цикл продолжается пока результат операции АЛУ = О 6.3.2. Синтаксис команд в процессорах с одновременным выполнением группы команд Слова команд опс]таций с данными и команд управления в працессорат ТМВ320Сбххх фирмы Тсхаз 1пзнцшеп(3 (с одновременным выполнением группы команл) имеют одинаковую структуру и содержат поля: условия, операции, операндов, устройства и признака группировки (см.
рис. 6.2). Согласно этой структуре мнемонический синтаксис команд имеет вид: ИЮ4 .1.1 АО, Ал, А2 тле ) ) — признак обьеднненця команд в группу для одновременного выпол- нения различными устройствами працсссора; условие, если оно есть, лала- но указываться в квадратных скобках. Мнелюническпй синтаксис команд в процессорах МБС810х фирмы Мо)ого)а представляет собой строку команл. Кснв Лв АОО4Я4),А(,А2 пса7в вьюсяьвния Пелед ЕЫгюнненНЕЫ Рвгистрь~ Регистры Кап 1 (1-й Список апврвкпов) ... [КСП 8] (8-й Спксак апервнпов] Прнведем пример мнемонического синтаксиса группы из 4-х одновременно выполняемых кол(анд (исполняемого пакета) в процессорах ТМВ320Сбххх: [ВО] АОО .
1 2 ВО, 1, ВО ; ннкрвмвит (ВО), вопи (ВО)-О )) (ВО)] АОО .32 ВО,В7,В7 1 (ВВ]+[В7) В7, ЕСЛИ (ВО) Ы О )] (А1) АОО .1,1 А5,А4,А5 ; (А5)+(А4) -ь А5, если (ВО) = О )) в .31 Есор 1 авз)славный пере ал к Ригьсар Аа й! Я) Я2 А2 Каждая из этих команд выполняется независимо в санам нз четь)рсх АЛУ с символическими имепамп 1 ), Е2, 3! и В2, Рыа. В.4. Сложение упакованных данных )) ) (Условие) Кац .Устройство (Список операндов] В процессорах ТМВ320С62хх/64хх фирмы Техаз !пгагцгпепга (с олноврсмсциым выполнением группы команд) имеются команды, предназначенные л,)я обработки упакованных данных (си.
главу 3). Напомним, что упакояаннь)е данные представляют собой группу данных формата "полуслова" или "байт" (все ланиые в группе имеют одинаковый формат), сохраняемых в формате слово. В процессорах ТМБ320С62хх/64хх слово имеет длину 32 бита, что позволяег послсдователы<о расположить в этом формате (упаковать) пару данных формата "полуслова" (2х16) или 2 пары данных формата "байт" (4хб, только в ТМ3320С64хх). В процессорах ТМВ320С62хх возможно с помощью одной комацлы выполнить одновременно одинакову)о операцию с данными формата "полуслова", упакованными в формате "слово" длиной 32 бита, а в процессорах ТМЬ320С64хх — дополнительно операцию с ланными формата "байт, упакованными в формате "слово". При выполнении соответствующих оцсраций упакованные данные рассматриваются как локально зал)кп)тые, поэтому переносы и заемы битов между ними нелопустимы.
Рассмотрим прцлюр выполнения операции сложения упакованных таиных. По команде процессора ТМВ320С64хх в одном цз АЛУ (с символическим именем 1.1) выполняется одновременно 4 операции сложения над данными формата "байт", упакованныли) в формате "слово" длиной 32 бита (рис. 6.4). 31 2423 1515 57 О 31 2423 1В15 87 О Алгоритмы и гроцессоры цифровой обработки сигналов Слагаемые (данные, упакованные по 4 байта) размещаются в регнстрах АО и А1.
Байты данных представлены в дополнительном коде: операцня сложення выполняется побайтно как с беззнаковымн целыми, результат операцнн — ланные, упакованные пабайтно в дополннтельном коде — сохраняется в регистре А2. Прн побайтном выполненнн сложения ланные считаются локально замкнутымн, переносы битов между ними запрещены. Например, прн сложеннн байтов данных 4Е н Г! (см. рнс. 6.4), результат без переноса в старший разрял равен ЗГ, в то время как в действптельностн он равен 13Г. Для упаковки н распаковкн данных в процессорах ТМ5320Сбххх нспользук>тся спецнальныс команды. Формирование снстемы команд в процессорах с одновременным выполнсннем групп команд нс имеет прнпцнпнальных отлнчнй по срав~енню с остальными процессорамн, поэтому прн лальнейшем обсуждении команды подобных процессоров особо не выделяются.
6.4. Формирование системы команд Сисглеме конрад включает комплект команд, обеспечнваюшнх: П выполнение операций нал чяннымн; П управление последовательностью этих операцнй; П общее управление работой процессора н позволяющих в целом реалнзовать системы ЦОС различного назначении. С этой целью система команд любого ЦПОС формнруется нз однотипных групп команд, которые обсуждаются в разд. б.5.