Hardware - разное

       

Устройство плавающей точки (FPU)


Конвейерное устройство плавающей точки построено в соответствии со спецификациями архитектуры SPARC-V9 и стандарта IEEE 754. Оно состоит из пяти отдельных функциональных устройств и обеспечивает выполнение операций с плавающей точкой и графических операций. Реализация раздельных исполнительных устройств позволяет UltraSPARC-1 выдавать и выполнять две вещественных операции в каждом такте. Операнды-источники и результаты операций хранятся в регистровом файле емкостью 32 регистра. Большинство команд полностью конвейеризованы имеют пропускную способность 1 такт, задержку в 3 такта и не зависят от точности операндов, имея одну и ту же задержку для одинарной и двойной точности. Команды деления и вычисления квадратного корня не конвейеризованы и без остановки процессора выполняются за 12/22 такта (одинарная/двойная точность). Команды, следующие за командами деления/вычисления квадратного корня, могут выдаваться, выполняться и изыматься из обработки для фиксации результата в регистровом файле до момента завершения команд деления/вычисления квадратного корня. Процессор поддерживает модель точных прерываний путем синхронизации конвейера плавающей точки с целочисленным конвейером, а также с помощью средств прогнозирования исключительных ситуаций для операций с большим временем выполнения. FPU может работать с нормализованными и ненормализованными числами с одинарной (32 бит) и двойной точностью (64бит), а также поддерживает операции над числами с учетверенной точностью(128 бит).

Устройство FPU тесно взаимодействует с целочисленным конвейером и способно без каких-либо дополнительных задержек выполнять чтение вещественного операнда из памяти и следующую за ней операцию. IEU и FPU имеют выделенный интерфейс управления, который обеспечивает диспетчеризацию операций, выбранных PDU в FPU. Устройство предварительной выборки и диспетчеризации команд выполняет распределение находящихся в очереди команд в FPU. IEU управляет частью операций, связанных с D-кэшем, а FPU выполняет собственно операции обработки данных. При выполнении команд вещественной арифметики целочисленное устройство и FPU совместно определяют наличие зависимостей по данным. Существующий между ними интерфейс включает также взаимную синхронизацию при появлении исключительных ситуаций FPU. Для снижения взаимного влияния и увеличения общей производительности в FPU обеспечивается дополнительная буферизация команд, реализованная с помощью очереди размером в три команды.



Содержание раздела