И связь между ее данными и результатами выполнения предыдущей



Команды отсутствует, то результат этой операции окажется в регистре

Раньше, чем результат операции предыдущей команды. В машине

Эльбрус-2 новая команда поступает в каждом машинном цикле, тогда как быстродействие операционных блоков позволяет произвести

Суммирование с фиксированной точкой за три машинных цикла,

Умножение с плавающей точкой - за 10 машинных циклов, а деление с

Плавающей точкой - за 29 машинных циклов. Другими словами,

Выполнение обработки операционным блоком отстает от темпа

Поступления команд, поэтому введением определенного числа

Дополнительных операционных блоков устанавливается баланс между

Темпом поступления команд и скоростью выполнения операций.

Подобный же принцип управления вычислительным процессом применён в процессорах Pentium, причём в зависимости от семейства число операционных блоков может достигать пяти. Так в процессорах семейства P6 в операционной части конвейера используются два целочисленных блока, один блок для операций с плавающей точкой, один блок MMX для обработки потока целочисленных данных(Pentium, Pentium II) и один блок SSE для обработки потока чисел с плавающей точкой ( Pentium III).

По крайней мере два обстоятельства ограничивают эффективность

Использования суперскалярных архитектур. Во-первых , есть ограничения на степень параллелизма на уровне команд , что характерно вообще для конвейеров операций . Другое следует из того, что размер окна исполнения (число активных команд, могущих исполняться параллельно) ограничивает возможный присущий программе параллелизм, так как не рассматривается параллельное исполнение команд , находящихся на расстоянии, превышающем размер окна .

                                                                                                

Процессоры с длинным командным словом. Процессоры с длинным командным словом (VLIW) используют параллелизм на

Стр.26

Уровне команд. В соответствии с этой концепцией , как показано на рис.1.20, сравнительно длинная команда делится на множество полей и каждый операционный блок управляется отдельным полем. В отличие от суперскалярных процессоров , где возможность распараллеливания операций выясняется в процессе их выполнения, в процессорах данного типа это выяснение происходит в ходе компиляции программы. Компилятор извлекает из программы команды , которые могут быть выполнены параллельно , и из них формируется одна команда .

      

Достоинства VLIW заключаются в следующем . Во-первых ,

Компилятор может более эффектно выявлять зависимости между

Командами и выбирать параллельно исполняемые команды, чем это делает аппаратура суперскалярного процессора, ограниченная размером окна исполнения. При этом за счет обеспечения степени параллельности, близкой к числу операционных блоков , можно достичь высокой скорости обработки. Во-вторых , VLIW- процессор имеет более простое устройство управления и потенциально может иметь более высокую тактовую частоту .

Однако у VLIW процессоров есть серьезный фактор , снижающий их производительность. Это команды ветвления, зависящие от данных,

Значения которых становятся известны только в динамике вычислений. Число одновременно выполняющихся команд VLIW-процессора не может быть очень большим в виду отсутствия у компилятора информации о зависимостях, формируемых динамически, в процессе выполнения.

Процессоры с SIMD- архитектурой.  Как показано на рис. 1.22, в

Архитектуре SIMD (Single Instruction Multiple Data Stream — один поток

Команд и много потоков данных) команда, выделяемая управляющим


Дата добавления: 2018-04-15; просмотров: 321; Мы поможем в написании вашей работы!

Поделиться с друзьями:






Мы поможем в написании ваших работ!