Интернет-журнал "Домашняя лаборатория", 2007 №8
Шрифт:
Средства ввода-вывода, периферийные устройства и корпус
Скорость передачи данных через внешнюю шину 600 Мбайт/с
Суммарная скорость передачи данных через 4 порта связи 600 Мбайт/с
Поддержка многопроцессорной кластерной системы до
8 процессоров ADSP-TS001 без дополнительных микросхем
4 порта ввода/вывода общего применения
Контроллер динамической памяти SDRAM
Рис. 7.41
Чтобы обеспечить все функциональные блоки командами, необходимо эффективно использовать доступную ширину слова команды. Иначе говоря, многофункциональные команды должны подаваться на вычислительные блоки одновременно и параллелизм выполнения операций
Объединяя наилучший опыт, накопленный в мире, процессор TigerSHARC представляет собой уникальную платформу для наиболее сложных приложений по цифровой обработке сигналов.
Архитектура ядра процессора Tiger SHARC показана на рис. 7.42.
Ядро включает несколько функциональных блоков: вычислительные блоки, память, АЛУ для операций с целыми числами и устройство для управления выполнением команд. В архитектуре процессора Tiger SHARC предусмотрены вычислительные блоки X и Y, каждый из которых содержит умножитель, АЛУ и 64-разрядное устройство сдвига. Благодаря ресурсам этих блоков, процессор может выполнять восемь 40-разрядных операций умножения с последующим суммированием 16-разрядных данных, две 40-разрядных операции умножения с последующим суммированием 16-разрядных комплексных чисел или две 80-разрядные операции умножения с последующим суммированием 32-разрядных даннымх. Все перечисленные операции выполняются в одном цикле. Процессор TigerSHARC реализует архитектуру, использующую полностью ортогональный регистровый файл длиной в 32 слова, допускающий чтение и запись в одном машинном цикле.
В архитектуре процессора TigerSHARC векторная организация памяти представлена в виде трех 128 разрядных блоков. При обращении к памяти из нее могут читаться учетверенные, длинные и нормальные слова, которые заносятся затем в регистровый файл для обработки. В каждом цикле может выполняться выборка четырех 32-разрядных команд. Одновременно могут быть загружены в регистровые файлы или записаны в память 256 битов данных. Данные с длиной слова 8, 16 или 32 разряда могут записываться в память последовательно в упакованном виде. Внутренняя и внешняя память организованы в виде единого адресного пространства, которое оставляет полную свободу программисту для распределения памяти. При работе на тактовой частоте 150 МГц скорость обмена с внутренней памятью для данных и команд составляет 7,2 Гбит/с.
Два АЛУ, выполняющие операции с целыми числами, используются для адресации данных и вычисления значений указателей. Они поддерживают циклические буферы и бит-реверсивную адресацию, причем каждое имеет свой регистровый файл длиной 32 слова. Рассматриваемые АЛУ не просто являются блоками, генерирующими адреса данных, но и могут совместно осуществлять вычисления с целыми числами. Наличие АЛУ такого вида позволяет существенно улучшить эффективность компилятора, разрабатываемого для данного процессора, а также повысить гибкость программирования.
Архитектура процессоров TigerSHARC называется статической суперскалярной архитектурой, т. к. она предполагает выполнение до четырех 32-разрядных команд за один цикл, и программист имеет возможность независимо задавать команды для всех вычислительных блоков. Устройство управления выполнением команд (program sequencer) поддерживает последовательное исполнение команд, при котором каждая очередная инструкция выполняется в соответствии с результатом предварительно заданного условия. Кроме того, одна и та же команда может быть выполнена двумя вычислительными блоками одновременно с использованием различных значений данных (это называется SIMD — одна инструкция — двойной набор данных).
Архитектура процессоров TigerSHARC позволяет выполнять операции над 8-, 16- и 32-разрядными данными. Производительность процессора повышается по мере уменьшения разрядности обрабатываемых
данных.Добавление буфера адресов перехода (Branch Target Buffer, ВТВ) и логики статического предсказания перехода делает ненужным заполнение конвейера команд после перехода. Как отмечалось раньше, переход осуществляется за один цикл.
Три внутренних 128-разрядных шины образуют быстродействующий канал обмена данными между внутренними функциональными блоками и внешними периферийными устройствами. Трехшинная структура отвечает типовым математическим командам, требующим наличия двух исходных данных и на выходе выдают один результат. Процессор имеет ортогональную программную модель и обеспечивает детерминированную реакцию на прерывания.
Архитектура процессора TigerSHARC основана на различных режимах работы аппаратуры. Это позволяет избежать потери циклов и упрощает работу компилятора. Система команд непосредственно поддерживает все числовые форматы, применяемые в ЦОС и в обработке изображений и видеосигналов, включая знаковый и беззнаковый, дробный и целочисленный. Во всех случаях существует возможность ограничения или усечения результатов вычислений.
Работая на тактовой частоте 150 МГц, процессор ADSP-TS001 обеспечивает наилучшую производительность среди процессоров семейства SHARC как при обработке данных с фиксированной точкой, так и при работе с данными в формате с плавающей точкой.
Кроме того, разместив на кристалле 6 Мбит статической памяти, компания Analog Devices увеличила степень интеграции памяти на 50 % по сравнению с предыдущими членами семейства SHARC. При переходе к меньшим проектным нормам при производстве кристаллов, компания Analog Devices планирует увеличить тактовую частоту работы процессора и объем памяти на кристалле для новых представителей семейства TigerSHARC.
ОСНОВНЫЕ СВОЙСТВА ПРОЦЕССОРОВ TigerSHARC
• Выполнение от 1 до 4 32-разрядных операций за цикл
• Принцип "Одна инструкция, много данных" (SIMD) поддерживается двумя вычислительными блоками
• Поддержка разных форматов данных вычислительными блоками
? В каждом имеется регистровый файл, MAC, АПУ, устройство сдвига
? Работа с 32/40-разрядными данными с плавающей точкой и с 32-разрядными данными с фиксированной точкой (6 операций за один такт)
? 16-битные операции (24 за цикл) или 8-битные операции (32 за цикл)
• Логика статического предсказания переходов, с целевым буфером перехода (ВТВ), поддерживающим до 128 входов
• Внутренняя пропускная способность 7.2 Гбайт/с
• Простая программная модель с гибкой системой прерываний
Рис. 7.43
Применение процессоров ADSP-TS001 уменьшает общую стоимость материалов при проектировании системы, благодаря наличию интегрированных функций ввода-вывода набора периферийных устройств, которые уменьшают или вообще ликвидируют потребность в применении вспомогательных и дополнительных аппаратных средств. Работая на тактовой частоте 150 МГц, процессор ADSP-TS001 объединяет четыре порта связи со скоростью передачи 600 Мбит/с, средства поддержки мультипроцессорного кластера с возможностью подключения до восьми процессоров ADSP-TS001, контроллер динамической памяти и интерфейс JTAG. Данная, не имеющая аналогов комбинация возможностей реализована в 35x35 мм корпусе SBGA с 360 выводами.
Вычислительные возможности и пример кодирования процессора TigerSHARC показаны на рис. 7.44. Четыре 32-разрядные команды выполняются параллельно, образуя одну 128-разрядную командную строку. Данная командная строка выполняется за один цикл. Ниже приведен пример кодирования на языке ассемблера одной строки с расшифровкой выполняемых функций:
xR3:0=Q[j0+=4];// загрузить из памяти четыре регистра (xR0,xR1,xR2,xR3) из регистрового файла X
yR3:0=Q[k0+=4];// загрузить из памяти четыре регистра из регистрового файла Y