Читаем Журнал «Компьютерра» №37 полностью

Что дальше? Претендентов на декодированные инструкции два - блок целочисленных вычислений (ALU) и блок вычислений с плавающей точкой (FPU). Когда блоки готовы принять очередную инструкцию, они сообщают об этом человеку в картотеке; человек копается в своих конвертах и выбирает из них в произвольном порядке, как ему удобнее, до трех бумажек-инструкций, которые и раздает ALU и FPU. Единственное ограничение, которое при этом накладывается, - человек никогда не передает ALU и FPU те инструкции, выполнение которых зависит от еще не переданных. Блоки ALU/FPU каким-то хитрым образом выполняют полученные инструкции, но результаты отсылают не во «внешний мир», а в нашу картотеку-ICU, где их кладут в тот же самый конверт, в котором лежали инструкции. Даже если происходит ошибка выполнения, процессор не сообщает о ней сразу, а сперва записывает информацию об ошибке на конверте; когда настанет пора вскрыть конверт - вот тогда он про нее и сообщит. Чтобы потом эти данные использовать - применяется довольно хитрая техника (та самая, из сноски 4), позволяющая вновь выполняемым инструкциям обращаться к еще «официально несуществующим» данным. Когда для конверта все инструкции оказываются выполненными, а конверт стоит первым в очереди и больше не содержит инструкций, но лишь результаты их исполнения - то полученные результаты «объявляются официальными», а конверт выбрасывается (отставка линий). Иногда, если при вскрытии очередного конверта выясняется, что ранее была допущена ошибка при предсказании условного перехода или при выполнении содержащейся в конверте инструкции, дело до этого и не доходит - конвейер приходится «сбрасывать», то есть смотреть на последнем конверте адрес того самого неудачного перехода, выкидывать всю накопленную к текущему моменту картотеку со всеми ее результатами и начинать выполнение с того самого места, где произошло неверное предсказание перехода. Благодаря тому, что результаты выброшенных конвертов еще не были «объявлены официальными», а «рвем» мы конверты строго в той же очередности, в которой они к нам в очередь поступали - допущенная ошибка «никому не станет известна» - результаты выполнившихся «вперед батьки» инструкций автоматически будут аннулированы.

Если теперь вернуться к технологическому описанию конвейера, то изложенный выше процесс с конвертами происходит следующим образом. Из очереди в 24 линии по три mOP’а в каждой ICU выбирает в наиболее удобной для исполнения последовательности один-три mOP’а и пересылает их либо на ALU, либо на FPU - в зависимости от типа микрооперации. В случае ALU микрооперации сразу же попадают в очередь планировщика (шесть элементов по три mOP’а), который подготавливает необходимые для исполнения микрооперации ресурсы, дожидается их готовности и только потом отправляет mOP вместе со всеми необходимыми данными на исполнение. Причем при исполнении одного mOP’а на самом деле может происходить исполнение сразу двух действий - несложных арифметических вычислений, которые часто возникают при обращении к оперативной памяти (ими занимается блок Address Generation Unit, AGU), и «сложных», требующих вмешательства «полновесного» ALU, - соответствующая «двойка» микроинструкций (ROP) закладывается в mOP еще на стадии декодирования. Подготовка данных в планировщике занимает (в идеальном случае) один такт, исполнение - от одного (подавляющее большинство инструкций) до трех (при обращении к оперативной памяти) и даже пяти (64-битное умножение) тактов.

С блоком FPU все чуточку сложнее. Для начала вышедшие из ICU mOP’ы проходят две стадии по подготовке их операндов. Затем - накапливаются в планировщике FPU (двенадцать элементов по три mOP’а), который, по аналогии со своим целочисленным собратом, дожидается, пока данные для этих mOP’ов будут готовы, а исполнительные устройства освободятся, и разбрасывает накопленные mOP’ы по трем исполнительным устройствам. Но в отличие от целочисленной части конвейера (где содержатся по три одинаковых блока ALU и AGU), исполнительные устройства FPU «специализированы» - каждое производит только свой специфический набор действий над числами с плавающей запятой. Время выполнения: два такта на переименование и отображение регистров, один такт (в идеале) на планирование и ожидание операндов, четыре такта на собственно исполнение.

Финал же у всех закончившихся микроопераций один - они «возвращаются» в ICU с полученными результатами, и ICU, по мере готовности линий, потихоньку производит их отставку. На все про все в идеальных условиях у нас ушло 10-17 тактов, причем за каждый такт мы исполняли по три mOP’а (это обычно 1,5-3 инструкции x86).

Устройство процессоров Intel архитектуры NetBurst

Перейти на страницу:

Похожие книги

«Если», 1998 № 01
«Если», 1998 № 01

ФАНТАСТИКАЕжемесячный журналСодержание:Сьюзи МакКи Чарнас. СЛУШАЯ БРАМСА, рассказАлександр Громов. СЧАСТЛИВАЯ ЗВЕЗДА, рассказБилл Джонсон. ВЫПЬЕМ, ГОСПОДИН ПОСОЛ! рассказАлексей Васильев. БЛИЖЕ К ТЕЛУ!ФактыДжеймс Типтри-младший. МИМОЛЕТНЫЙ ПРИВКУС БЫТИЯ, повестьЛитературный портрет*Вл. Гаков. В ТЕНИ ЧУЖОЙ СУДЬБЫФактыДжеффри Лэндис. БЕСКОНЕЧНЫЕ СОБЛАЗНЫ ЭНИГМЫ, повестьВиктор Комаров. Наш главный собеседникФантариум ЗВЁЗДНЫЙ ПОРТПРЯМОЙ РАЗГОВОР*Кир Булычёв. Будем уважать друг другаЕвгений Харитонов. За великой стенойКУРСОРРЕЦЕНЗИИPERSONALIAВИДЕОДРОМ*Адепты жанра— Дмитрий Караваев. Светлые идеи рыцаря «черного юмора»*Рецензии*Герой экрана— Станислав Ростоцкий. Черный ворон Голливуда*Рейтинг— Сергей Кудрявцев. Лидеры 1997. Самые кассовые фантастические фильмы*Сериал— Александр Алексеев. «Вавилон-5». Подготовка к пятому запуску*Внимание, мотор!— Евгений Зуенко. Компьютерные игры на экранеПремия читательских симпатий (лист для голосования)Обложка Мура К. (Chris Moore).Иллюстрации О. Васильева, О. Дунаевой, А. Жабинского, А. Филиппова.

Виктор Ноевич Комаров , Журнал «Если» , Александр Николаевич Громов , Владимир Гаков , Станислав Иосифович Ростоцкий

Журналы, газеты / Фантастика / Научная Фантастика
«Если», 2012 № 02
«Если», 2012 № 02

Раджнар ВАДЖРА. ПЯТЬ КОРОБОК ДЛЯ ДОКТОРАУже знакомый нашим читателям доктор для чужаков должен решить, казалось бы. неразрешимую задачу.Адам-Трой КАСТРО. УБЕЖИЩЕА вот не менее запутанная проблема. И хотя на этот раз юридическая, но столь же драматичная для всех героев.Леонид КУДРЯВЦЕВ, Дмитрий ФЕДОТОВ. МУСОРЩИКИ ВРЕМЕНИА может быть, дворники? Все зависит от точки зрения.Павел АМНУЭЛЬ. ЧАЙКАЭтих мужчину и женщину не связывает более ничего. Электрон с Земли и атом железа из звезды Барнарда и те ближе.Пол КОРНЕЛЛ. АРГУМЕНТ ПО-ДАТСКИСуществование подобного альтернативного мира вызывает вопросы. Но детектив развивается в полном соответствии с его законами.Джо ХОЛДЕМАН. НЕ БУДИ ЛИХО…Бывший солдат прибывает на планету, где тридцать лет назад участвовал в боевых действиях.Крейг ДЕЛЭНСИ. ТРИ ДЖУЛИИТак сколько же их, в конце концов?!Александр ТИМОФЕЕНКО. КУДА УЖ РЕАЛЬНЕЕ…«Лукоморья больше нет, все, о чем писал поэт, — это бред».Аркадий ШУШПАНОВ. ЛЮДИ ТЕЛА…Или актеры без лиц.Сергей КУДРЯВЦЕВ. ЛИДЕРЫ-2011Неожиданностей мало: кто больше всех хотел прорваться в лидеры, тот и стал им.ВИДЕОРЕЦЕНЗИИА ведь кому-то такой юмор нравится…Глеб ЕЛИСЕЕВ. «Я — СЕМЬЯ…»«…во мне как в спектре живут семь "я" — этот отрывок из поэтической миниатюры Андрея Вознесенского отлично описывает тему статьи.Мария ГАЛИНА. КАК ЭТО ДЕЛАЛОСЬ В АНК-МОРПОРКЕВ Одессе это делалось по-другому, но все революции в чем-то похожи.РЕЦЕНЗИИИ фэнтези, и НФ, и альтернативная история, и фантастиковедение, и новеллизация, и даже феминистская НФ.КУРСОРКак Байконур вдруг очутился в Астане…Валерий ОКУЛОВ. ЗНАМЕНИТЫЙ НЕУДАЧНИКБывают такие странные книги, которые наперебой ругают и одновременно взахлеб читают.Вл. ГАКОВ. ЗАПОВЕДНИК ПРИМАТОВЭтот писатель серьезно пошатнул авторитет Дарвина, доказав возможность обратной эволюции.Сергей СЛЮСАЙЕНКО. ТЕОРИЯ УПУЩЕННЫХ ВОЗМОЖНОСТЕЙНастоящий научный вопрос задал читателям журнала самый настоящий ученый.ПЕРСОНАЛИИМногие критики полагают, что житейская биография писателя неизбежно отражается в его творчестве. В таком случае авторы нашего журнала, как минимум, гости из будущего, а возможно, и вовсе маскирующиеся под людей пришельцы.

Сергей Кудрявцев , Валерий Окулов , Дмитрий Федотов , Наталья Щерба , Крэйг Делэнси

Проза / Журналы, газеты / Фантастика / Фэнтези / Современная проза / Эссе
«Если», 2001 № 06
«Если», 2001 № 06

ФАНТАСТИКАЕжемесячный журналСодержание:Александр Шалганов. ЗДРАВСТВУЙТЕ, УВАЖАЕМЫЕ ЧИТАТЕЛИ!Вл. Гаков. СОЗДАТЕЛИ ЖАНРАМарина и Сергей Дяченко. КОН, повестьАндрей Столяров. КАК ЭТО ДЕЛАЕТСЯ, рассказЭдуард Геворкян. ВОЗВРАЩЕНИЕ МЫТАРЯ, повестьВладимир Михайлов. ТРИАДА КУРАНТА, повестьЕвгений Лукин. ТРУЖЕНИКИ ЗАЗЕРКАЛЬЯ, повестьСергей Лукьяненко. ОТ СУДЬБЫ…, рассказМАСТЕР*Кир Булычев. ВЫ МЕНЯ ЕЩЁ НЕ ЗНАЕТЕ!ВИДЕОДРОМ*Адепты жанра-- Наталья Милосердова. КУ, РОДНЫЕ!..*Хит сезона-- Дмитрий Караваев. ГДЕ ДРАКОН?*Рецензии*Фестиваль-- Дмитрий Байкалов. ПОБЕДНОЕ ФИАСКОЕвгений Харитонов. «РУССКОЕ ПОЛЕ» УТОПИЙКРУПНЫЙ ПЛАН*Наталия Мазова. ПОИСКИ ХАОСА, рецензия на несуществующий роман Алины Лещининой «Путь, уводящий в облака»РЕЦЕНЗИИКУРСОРАНКЕТА «ЕСЛИ»ПЕРСОНАЛИИОформление обложки: Игорь Тарачков (с. 1, 4); Алексей Филиппов (с. 2, 3)Иллюстрации: О. Васильев, С. Голосов, А. Филиппов, А. Балдин, С. Шехов

Дмитрий Львович Караваев , Евгений Викторович Харитонов , Журнал «Если» , Наталия Михайловна Мазова , Владимир Гаков

Журналы, газеты / Фантастика / Научная Фантастика / Фэнтези