Суперскалярные процессоры



Один из наиболее эффективных подходов повышения производительности – введение в вычислительный процесс различных уровней параллелизма. Основной объем вычислительной нагрузки обычно приходится на скалярное вычисление и дополнительный параллелизм, реализуемый в суперскалярных процессорах. Повышение производительности за счет включения в состав процессора как нескольких самостоятельных ФБ, каждый из которых выполняет свою операцию.

1) Блок выборки команд извлекает команду из основной памяти через кэш команд. Этот блок хранит несколько значений СчК и обработку команды УП.

2) Блок декодирования выполняет дешифрацию КОП команды, извлеченной из кэша. В процессорах Intel эти блоки совмещены.

3) Блок диспетчеризации и распределения взаимодействия между собой и выполняют функции контроллера. Оба блока хранят очереди декодированных команд. Очередь блока распределения передается по самостоятельным буферам, наз. накопителями команд. Эти команды уже дешифрированы, определено место нахождения операндов, но еще не выполнены. Каждый накопитель связан со своим ФБ. Поэтому число накопителей = числу ФБ. Блок диспетчеризации хранит список свободных ФБ, наз. табло. Табло используют для отслеживания состояния очереди распределения. Один раз за цикл блок диспетчеризации извлекает команды из своей очереди, считывает из памяти или из регистров операнды команд в зависимости от состояния табло помещает команды в очередь распределения. Эта операция наз. выдачей команд. Блок распределения проверяет команду на наличие всех необходимых для ее выполнения операндов и лишь затем начинает выполнение команды.

4) ФБ. Блок с фиксированной и плавающей точкой.

5) Блок обновления анализирует полученный результат и распределяет его в те команды, где он используется в качестве операнда.

Результат исполнения команд записывается либо в регистровый файл, либо в кэш данных в зависимости от кэша команд, используемым в данном процессоре.

Суперскалярность предполагает параллельную работу max числа исполнительных блоков, что возможно только при выполнении нескольких сперскалярных команд.


 


Дата добавления: 2015-12-17; просмотров: 21; Мы поможем в написании вашей работы!

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






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