Солонина А., Улахович Д. Алгоритмы и процессоры цифровой обработки сигналов (2002) (1095891), страница 20
Текст из файла (страница 20)
Однако возможно использование данных регистров В модулями )руппы ! и наоборот. Передача данных между )руппамн отражена на рис. 2.20 пунктирными линиями. Все модули ориентированы на выполнение опрелеленных операций, ниже перечислены некоторые из них. Рис. 2.20. Функциональная схема операционных модулей пРоцессоров ТМ8320Сбххх Модули (. ((.!. 12): П 32/40-разрязиые арифметические операции и операции сравиенигк П 32-разрядные логические операции; П операшш нормализации. Модули 5 (б). В2): П 32-разрядиыс арифметические операции; П 32/40-разрялные операции сдвига и операции с отдельными битами; П 32-Разрядные логические операции; П генерация констант. Модули М (М), М2): П операции умножения 32х32 с фиксированной точкой; П операции умножения с плаваюшей точкой.
(лввв 2 Архитеи урв цифровых процессоров обработки сигналов Модули 0 (01. (32): 32-разрядные опсрашш по вычислению алресов, в тол) „иоле адресов ш)клических и линейных буферов. Модули (31, Р2, предна- значенные лля вычисления адресов, имеют выхол на шины адресов. цПУ процессора имеет две 32-разрядные шины лля записи данных из реги- стров в память и лве 32-Разрядные ишны для чтения из памяти, которые позволяют осушествлять по две операции чтения и записи да) шых за такт. для вычисления 16-разрячных отсчетов на выходе КИХ-фильтра процессор в цикле люжет параллельно выполнять 8 колынл вида: Данными команлалш за очии такт в процессоре булут выполняться следуюшие цепс) вия: П вычисл)пься лва произведения !6-разрядных чисел, результаты в репштрал АЗ.
В2; П сомножителя для произведений формиру)отса из старш)гх А2(Н). В2(Н) и младших В2(1), А2(1) слов содержимого реп)строя А2, В2; П результаты перемножения будут накапливаться в регистрах АО. В1; П пересылки из памяти (3а)аЫе)поту новыл сомножителей в регистры В2(Ц, А2(Е), пересылки выиочняются 32-разрядными словами. Как яично яз приведенного примера. структура команд на языке ассемблера достаточ) ю сложна В кажлой команде необходимо. П Указать оиершшонный модуль, в котором будет выполняться опсрация ((-!.
(.2 и т. д,); а,, задать необязательное условие выпочиения команды (содержимое ре)истра ! ВО! в последнеи команле); П п Релусмотреть правильную последовательность операшш по перемешешио данных и т.д. Все ие е процес )еречисленное требует хорошего знания системы команд н а хителтчры 'Р' цсссора для позучеиия эффективной программы. зсгчения процыммирования ассемблер позволяет опредешть только чфунк ционадьный тии (например, М), при этом конкретный) модуль (напри- Алгоритмы и процессоры цифровой обработки сигналов Глаза 2.
Архитектура цифроеык процессорое обработки сигналов 9т мер, М2) назначается на этапе трансляции. Если ие будет вообше опредечец фуцкшюнальный модуль, ассемблер назначит его иа основании содержимого поля личелюиики команаы ц поля операнда. Можно писать программу чля процессоров ТМ5320Сбхлх, используя так называслпайт линейный ассемблер; при этом нет необходимости указывать слелуюшую информацию: П кома~ ~ чы, выполняемые параллельно; П используемые регистры; П используемые функциональные модули. Для получения испочняемой программы 1с определенными параллельнычц колтанлалпп регцстралцк люлулями и т. д.) применяется оптимизатор.
Семейство ТМ5320Сблхх состоит из трех ироцессо!зов: ТЧ5320С62хх, ТМ5320С64»х с фиксированной точкой и ТМ5320С67хх с илаваюшей точкои. Процессоры совместимы на уровнс колов и используют обшую систему кочанл. Все команлы, допустимые для С62хх. также лоиустимы лля С64хх и С67хх. Олнако. поскольку СЬ7хх является устройствол~ с цлаваюшсй точкой, сушествуют некоторые команды, которые являются уникальными лля него и ие выполняются в устройстве с фиксированной точкой.
ЦПОС С64хх имеет некоторые расширениыс функциональные возможности по сравнению с С62»ч и некоторые дополнительные команлы. Дополнитечьиые возможности процессора С64»л включают: П 64 регистра обшего назначения; П поддержке упакованныл типов данных по 8 битов и ланиыл 64 бита; П доиочнительиые шины. обеспечила!ощие загрузку из цамтпи ц запись а память до 4-х 32-разрядных счов за такт. Процессор МЗС810х (ядро с)С140) Ядро ЦПОС 5С!40 является совместной разработкой фирм Евсея! Тес!ичо!08!ее и Моюю!а и используется в разных процсссорал. Ядро может рабочать с операндами длиной !6 и 32 разряла.
Оио включает несколько функциональных модулей. в которых могут выполняться одновременно ра' чичные операции. В состав этих молучей входят 4 блока АЛу данных (ОАЕ1)). 2 устройства генерации алреса уГА 1АОИ с устройствами вычис ленив адреса и рабаты с отдельными разрялалш. Модули содержат также большие регист!ювые фатция, явлюошиеся источниками и приемникал мц оцеран юв при выполнении камыш.
Модули могут одновременно выпачня аль до шести различных простых команд чипа к)5С. Для выполнения несколько команд группируются вместе. образуя обцпм кочанду !набор выполнения), которая содержит ло шести элементарных ко лтанл с обц!ей ллииой до восьми слов по 1б разрядов. разработчики иазвачр текуча молсль команд У Е5 1ЧапаЫе Еепйй Ехссццоц 5ец команды псрече!цюй ллнны).
Команды цаоора выполняются за один такт. тртикциональная схелш блока обработки лю |ныл 5С140 приведена на р~!с, 2.2!. Блок состоит из чсгырсл илентичных АЛУ. сочержилюе одного из которых раскрыто иа указанной схеме. Все АЛУ используют в качестве источников и приемников операнлов !б регистров 130 — 015 обшего регистрового файла.
Этн регистры связаны с памятью ланиых двумя 64-разрялнымц дюнами ШДПД А и ШДПД В. ио которым могут исрелаваться операнды длиной 8, 16, 32 разряда. Перелача данных по шинам способна производиться через 8 сдвигателей, причем одновременно ло 4-х 32-разрядных опера!шов за такт. АЯУ состоит из умножителя. способного выполнять операшш типа 116х16) + + 40-л 40-бцт, сумматора н блока операций с отдельными разрядами операпча. Связи последнего на рис. 2.21 не показаны.
В блоке АЛУ может обрабатываться одновременно слелуюший набор комаил: ИХС 00, 01, 0Ч НХС 03, 04, об НХСЯ 00, 02, 05 а 0З, 04 ЛЮСВ . Ь !ас)тНЗ, 02 НОЧК .Ь 00, я В соответствии с этими команчами булут произведены действия: !. Содержимое регистров 00 и 01 перемножено ц произведение добавлено к содержилюл>у регистра 07, результат будет сохранен в регистре 0 и 2. Содержимое регистров пз и 04 псремножено и произвеление лобавлено к солержимому регистра пб, результат бучег сохранен в регистре ов. 3.
Солержимое регистров 00 и 0Э перемножено и произведение Лобаалеио к сочержичому репютра 05, результат с округлением будет сохранен в регистре цэ. 4. Содержание регистров цз и 04 прибавлено друг к лругу. результат с округлением сохранен в рсптстрс 04. з. Содержание ячейки памяти данных, указанной регистром яо, перемешсио В регцст!) 02. б п . -чя изменения адреса операнла содержимое регистра из лобавлеио к солар» имому регистр~ цо„результат сохранен в регистре яв.
7. Со . Содержимое регистра 00 персмешсно в реп!стр я1. П лут вы . е'лице три операции, соответствующие двум послслипм командам, бувыполиены в непоказациом на рцс. 2.21 устройстве генерации адреса. "Рупии 'цровка отдельных комаил в набор производится ассечблером па опрсдеаеци н"е сло илы!ч правилам при трансляции программы. При этом в обшее кочанч"ово включается информация о способе груцпцровация и обшей длине.
озмож жны лва способа группировация Например, при одном к колу кажлой колюц ' 'лы лобавлястся префикс, несушцй информацию о том, являешься лц (01 Глана 2. Архитектура цифровых процессоров обработки сигналов Алгоритмы и процессоры цифровой обработки сигналов Модуль команд Память ярятрамм пп Модуль улрввланкн работой конвейера Модуль данных Рис.
2.22. Функциональнаа схема основных модулей процессора Л3140к2 Вычислительныи людуль содержит 4 функшюиальныл узла: лва узла АЛ3 лля выполнения арттфл|етических и чогическил операций, два узла ЧАС умножения и накопления и набор регистров. Два АЛУ рабогают независимо или л!о~ут быть объел!тиены в одни узел лля выполнения операций над 32-разрядными операндами. Узлы (Л(АС способны выполнять две операшш умножения 16х16 с накоплением иаи одну операшио >л!ножеиия 32х32 разрнча с накоплением 40-разрядного результата. При этом они используют обший накопитель и, соотвстствешю. нозлюжна только очна операция накопления за такт. Источником операнлон и получателем результатов работы фуикциональныч уз юв являются регистры людуля.