Учебник - Процессоры цифровой обработки сигналов (Круг П.Г.) (1086865), страница 11
Текст из файла (страница 11)
Обменданными между хост-процессором и ПЦОС осуществляется черезвнутрикристальную HPI-память объемом 2К 16-разрядных слов, котораяможет также использоваться как память команд или данных общегоназначения. Скорость обмена по HPI составляет до 160 Мбайт/с.ПЦОС данной подсерии содержат высокоскоростные дуплексныепоследовательные порты, позволяющие связываться с другимипроцессорами, кодеками и т.д. В ПЦОС реализованы следующиеразновидности последовательных портов:универсальный;мультиплексный с временным уплотнением;с автобуферизацией.Универсальныйпоследовательныйпортиспользуетдваотображаемых в память регистра: передачи данных и приема данных.Передача и прием данных сопровождается генерацией маскируемогопрерывания,котороеможетбытьобработалопрограммно.Буферизированный последовательный порт позволяет осуществлятьнепосредственный обмен между устройством и памятью, не используя приэтом ресурсов процессора.
Максимальная скорость обмена попоследовательному порту может составлять до 40 Мбайт/с.Как и в сериях TMS320C5x, TMS320C2xx, в ПЦОС TMS320C54xреализованаэффективнаятрехуровневаясистемауправленияэнергопотреблением. Низкое, управляемое энергопотребление, высокаяпроизводительность (до 66 MIPS) и широкие функциональныевозможности при невысокой цене предопределили востребованностьПЦОС TMS320C54x в следующих областях: сотовые и радиотелефоны,персональныесистемырадиовызова,«персональныецифровыеассистенты» (PDA), техника беспроводной передачи данных (радиосети) ит.д.63PDF created with pdfFactory trial version www.pdffactory.com6. ВЫСОКОПРОИЗВОДИТЕЛЬНЫЕ ПЦОС СЕРИИTMS320С6000Серию TMS320C6000 компании Texas Instruments Inc.
отрассмотренных ранее отличает большая производительность и стоимость(рис. 6.1).Высокая производительность достигается за счет внедренияпараллельной архитектуры VelociTI, реализованной на основе технологииVLIW (“Very Long Instruction Word” или «очень длинного командногослова»), а также за счет применения ряда других аппаратных решений исредств разработки.производительностьпрограммно-совместимых ПЦОСсерии TMS320C6000многопроцессорные64х с1 ГГцдоступные изделияна начало 2002 г.разрабатываемыемодели64x6414намечаемыемодели6416641562x6203620162026701с плавающей точкой62046211671167x6205времявыпуска6712Рис. 6.1. Высокопроизводительные ПЦОС серии TMS320C6000По оценкам специалистов, применение данной архитектуры вбудущем позволит, при сохранении совместимости по командам, достичьрубежей 8000 MIPS для ПЦОС с фиксированной точкой и 3 GFLOPS дляПЦОС с плавающей.Ожидается, также существенное удешевление ПЦОС данной сериикак за счет общего снижения стоимости устройств при совершенствованиитехнологии, так и за счет выпуска новых моделей ПЦОС.64PDF created with pdfFactory trial version www.pdffactory.comИзготовляютсяиширокоприменяютсяследующиетриразновидности ПЦОС серии TMS320C6000 (табл.
6.1):· подсерия ПЦОС TMS320C62x – устройства с фиксированной точкойи производительностью от 1200 до 2400 MIPS;· подсерия ПЦОС TMS320C64x – устройства с фиксированной точкойи производительностью от 3200 до 4800 MIPS. Данные ПЦОСявляются наиболее скоростными (табл. 6.2.) и предназначены как дляширокого применения (TMS320C6414), так и для использования вмультимедийных(TMS320C6415)ителекоммуникационных(TMS320C6416) приложениях [14];· подсерия ПЦОС TMS320C67x – устройства с плавающей точкой ипроизводительностью от 600 до 1350 MFLOPS.Таблица 6.1.
Производительность подсерий ПЦОС TMS320C6000ПроизводительностьПодсерииTMS320C6000MIPS/MFLOPSТактоваячастота,МГцMMAC(16-разрядныеслова)MMAC(8-разрядныеслова)TMS320C62x150-3001200-2400 MIPS300-600300-600TMS320C64x400-6003200-4800 MIPS1600-24003200-4800TMS320C67x100-225600-1350 MFLOPS200-550200-550Таблица 6.2. Оценка продолжительности выполнения популярных алгоритмовПодсерииTMS320C6000Быстрое преобразованиеФурье (FFT)Фильтрация сигналов(Digital Filtering)комплексный спектр,длительность N = 1024, Radix 4фильтр c КИХ, число выходныхточек M = 100 (64 – для TMS320C67x)тактов процессорамкстактов процессорамксTMS320C62x1322866,0641023,0TMS320C64x600212,010192,0TMS320C67x18055108,3221613,3При проектировании ПЦОС серии TMS320C6000 особое вниманиеизготовителя уделялось снижению времени, которое понадобитсяпользователю для разработки и выпуска конечных систем.65PDF created with pdfFactory trial version www.pdffactory.comСокращению этих сроков способствует свойство совместимостиустройства с фиксированной точкой с соответствующим устройством сплавающей.ПЦОС TMS320C67х имеют совместимость по командам и повыводам микросхем с соответствующими ПЦОС TMS320С62х, чтопозволяет разработчику быстро выполнять прототипы, используяплавающую точку, и легко переходить к ПЦОС с фиксированной точкойдля снижения стоимости изделия при производстве.
То есть вначалеразработчик может взять за основу ПЦОС с плавающей точкой, отработатьвсе элементы устройства, определить оптимальные алгоритмы обработкиданных. При этом большие запасы по производительности и по точностивычислений позволяют заниматься именно алгоритмами, а не экономиейресурсов. После, когда все параметры определены, наступает этапоптимизации системы с учетом наработанных решений и перевод ее наболее дешевый ПЦОС с фиксированной точкой [2].Данныйподход,предопределилпереходотаппаратноориентированной среды разработки к программным моделям, что делаетпроцесс разработки более быстрым, дешевым и простым.Изготовитель также производит широкий ассортимент аналоговых ианалого-цифровых устройств, ориентированных на применение совместнос ПЦОС серии TMS320С6000.6.1. Архитектура VelociTIВсе ПЦОС серии TMS320С6000 основаны на одном и том же 32разрядном ядре центрального процессора с высоко параллельной идетерминированной архитектурой VelociTI (рис.
6.2).Архитектура ядра ПЦОС серии TMS320С6000 включает 8 модулей два умножителя и шесть АЛУ. Все модули максимально независимы, чтодает компилятору и оптимизатору множество комбинаций ихиспользования. На каждом такте ПЦОС выбирается восемь 32-битныхRISC-подобных инструкций. Предусмотренная в архитектуре VelociTIупаковка команд позволяет исполнять эти восемь инструкций параллельно,последовательноилипараллельно/последовательно.Этаоптимизированная схема существенно снижает размер кода, количествовыборок команд и потребление питания.
При добавлении функцииплавающей запятой к шести из восьми функциональных модулей из ПЦОСс фиксированной точкой 'С62х получается ПЦОС с плавающей точкой –'С67х. При этом система команд 'С62х - расширение системы команд 'С67хи весь код написанный для 'С62х будет выполняться на 'С67х безмодификаций самого кода.66PDF created with pdfFactory trial version www.pdffactory.comРассмотримподробнееархитектуруядраПЦОСсерииTMS320C6000. На рис.
6.2 изображена упрощенная схема именно ядра, безпериферии и внешних шин, иллюстрирующая архитектуру VelociTI [2].Рис. 6.2. Архитектура VelociTI67PDF created with pdfFactory trial version www.pdffactory.comКак видно из рисунка, ПЦОС использует очень длинные инструкции(256 бит) для выдачи до 8 команд по 32 бита для каждого из восьмифункциональных модулей в каждом такте. Выбираются инструкции всегдапо 256 бит, однако длина исполняемого пакета может быть разной, какпоказано на рисунке.
Переменная длина выполняемой команды позволяетсущественно сэкономить память – это отличительная черта TMS320С6000от остальных ПЦОС с очень длинным командным словом.Ядро ПЦОС TMS320С6000 имеет два набора функциональныхмодулей. Каждый набор включает в четыре модуля и регистровый файл.Каждый файл состоит из 16 32-разрядных регистров, таким образом, всегов ядре 32 32-разрядных регистра.Два набора функциональных модулей, связанных с двумя наборамирегистров, создают разделение ядра на стороны А и В. Четыре модуля скаждой стороны ПЦОС имеют произвольный доступ к регистровомуфайлу данной стороны.
Кроме того, каждая сторона имеет шину,соединенную с регистровым файлом другой стороны. При доступе крегистрам своей стороны возможен доступ к регистрам всех модулейодновременно в одном такте.Другой особенностью архитектуры ПЦОС TMS320С6000 являетсяиспользование стратегии сохранения/загрузки, при которой все командыработают с регистрами. При этом два адресных модуля D1 и D2выделяются только под передачу данных между регистровым файлом ипамятью.
Шины адреса, управляемые D-модулями, позволяютиспользовать адрес, сгенерированный в одном регистровом файле, дляопераций с данными в другом регистровом файле.Ядро ПЦОС TMS320С6000 поддерживает широкий набор режимовкосвенной адресации, включая линейный или кольцевой с 5- или 15битным смещением.Все команды могут быть условными, и большинство команд могутиспользовать любой из 32 регистров. Некоторые регистры могут бытьвыделены для поддержки специфических режимов адресации или дляхранения условий для условных команд. Два М-модуля выделены подумножители 16х16. Два S- и два L-модуля выполняют арифметические,логические операции и операции перехода, и при этом результаты ихвыполнения доступны в каждом такте (возможна задержка до 5 тактовконвейера, но большинство команд выполняются за 1 такт).Процесс обработки команды в ядре начинается после выборки 256битовой инструкции из внутренней памяти команд, которая также можетбыть сконфигурирована как кэш-память команд.
Далее каждая из 32битных команд распределяется на свой модуль для исполнения. При этом укоманд, выполняемых на разных модулях, проверяется младший бит. Онустанавливается в 1 для всех команд, которые должны выполнятьсяодновременно. Команды, которые собраны для одновременного68PDF created with pdfFactory trial version www.pdffactory.comвыполнения (до 8 команд), образуют пакет выполнения. Ноль ставится вмладшем бите команды, которая нарушает последовательностьвыполнения и откладывает команду на следующий пакет выполнения.Всего в выборке может быть до 8 пакетов выполнения. Очередной пакетразмещается для выполнения в модулях в каждом такте. До окончаниявыполнения пакета следующий пакет выборки из памяти не выбирается.Эта «стратегия» позволяет существенно экономить память команд именять режим работы программы от одновременного параллельноговыполнения 8 команд на 8 модулях до практически последовательноговыполнения команд, в зависимости от требований алгоритма.Обратим внимание на организацию памяти данных.