Как назывались конвейеры процессора pentium
Выпущен в 1993 г. Разрядность шины адреса – 32 бита, таким образом, максимальный размер адресуемой памяти равен 4 Гб. Разрядность шины данных – 64 бита.
Процессоры P54 включают в себя:
1. Суперскалярная архитектура – два параллельно работающих конвейера обработки позволяют одновременно обрабатывать до двух инструкций за такт. Конвейеры носят названия U и V. U-конвейер (U-pipeline) – это АЛУ с полным набором инструкций, он может исполнять все целочисленные инструкции и инструкции с плавающей точкой. V- конвейер (V-pipeline) – АЛУ с ограниченным набором инструкций, может исполнять только простые (выполняемые за один такт – MOV, INC, DEC и т.п.) инструкции – черты RISC-архитектуры.
2. На кристалле интегрирован ассоциативный кэш первого уровня – L1 размером 16К, который включает в себя раздельные кэши команд и данных (по 8К для команд и для данных). Кэш может быть сконфигурирован как WT (write-trough) – со сквозной записью либо с обратной записью –WB (write-back). Вкратце алгоритм работы WT и WB выглядят так: при сквозной записи (write-through) каждая операция записи одновременно выполняется и в строку кэша, и в ОЗУ. При этом, ЦП при каждой операции записи вынужден ждать окончания относительно долгой записи в ОЗУ. Алгоритм WB (обратная запись) позволяет уменьшить количество операций записи на шине основной памяти. Если блок памяти, в который должна производиться запись отображён и в кэше, то физическая запись сначала будет воспроизведена в эту действительную строку кэша, и она будет отмечена как грязная (dirty) или модифицированная, т.е. требующая выгрузки в ОЗУ. Только после этой выгрузки строка станет чистой (clean) и её можно будет использвать для кэширования других блоков без потери целостности данных. В ОЗУ данные переписываются только целой строкой.
Каждый из кэшей включает в себя строки длиной 32 байта и содержит буфер TLB – буфер преобразования линейных адресов в физические. Кэш поддерживает протокол MESI, названный по определяемым им состояниям: Modified, Exclusive, Shared и Invalid.
M-state – строка присутствует только в одном кэше и она модифицирована. Доступ
к этой строке возможен без регенерации внешнего цикла (по отношению к локальной шине).
E-state - строка присутствует только в одном кэше, но она не модифицирована. Доступ к этой строке возможен без регенерации внешнего цикла. При записи в неё она перейдёт в состояние “M”.
S-state – строка может присутствовать в нескольких кэшах. Её чтение возможно без регенерации внешнего цикла, а запись в неё должна сопровождаться сквозной записью в ОЗУ, что повлечёт за собой аннулирование соответствующих строк в других кэшах.
I-state – строка отсутствуует в кэше, её чтение может привести к генерации цикла заполнения строки. Запись в неё будет сквозной и выйдет на внешнюю шину.
3. Процессор имеет встроенный усовершенствованный блок вычисления с плавающей точкой. Быстрые алгоритмы полностью переработанного со времён 487-сопроцессоров FPU обеспечивают более чем десятикратное увеличение скорости при работе с основными операциями, включающими ADD, MUL, LOAD и т.п. по сравнению с 487.
Конвейерная организация позволяет обрабатывать две целочисленные операции и одну (а при определённых условиях и две) операцию с плавающей точкой за такт.
4. Применена технология динамического предсказания ветвлений, для этого введены два буфера предвыборки.
5. Введена возможность оперирования страницами размером 4 Мб в режиме страничной переадресации.
6. Введено расширение архитектуры (относительно базовой архитектуры 32-х разрядных МП) – добавлены новые регистры и команды. Сюда входит, например, инструкция CPUID, позволяющая в любой момент времени получить сведения о классе, модели и архитектурных особенностях данного ЦП. К расширению также относятся и регистры, специфические для модели, их можно разделить на 3 группы:
- тестовые регистры TR1. TR12. Они позволяют управлять большинством функциональных узлов ЦП, обеспечивая возможность тестирования их работоспособности: с помощью битов регистра TR12 можно запретить новые архитектурные свойства (предскизиние и трассировку ветвлений, параллельное выполнение инструкций), а также работу кэша L1.
- средства мониторинга произволительности . Сюда входят таймер реального времени (TSC) – 64 битный счётчик, работающий на инкремент с каждым тактом ядра ЦП, для его чтения предназначена команда RDTSC; счётчики событий CTR0 и CTR1 – оба разрядностью 40 бит, программируются на подсчёт событий различных классов, связанных с шинными операциями, исполнением инструкций, работой конвейеров, кэша и т.п.
- регистры-фиксаторы адреса и данных цикла, вызвавшего срабатывание контроля машинной ошибки.
7. Применено выявление ошибок внутренних устройств (внутренний контроль паритета) и внешнего интерфейса шины, контроль паритета шины адреса.
8. В состав чипа введён APIC (Advanced Programmable Interrupt Controller) – расширенный программируемый контроллер прерываний.
9. Реализована возможность построения многопроцессорных (максимальное количестно ЦП – 2 штуки) систем двух типов: SMP – синхронная многопроцессорная обработка, и FRC – функционально избыточная система.
В режиме FRC оба процессора (один – Master, второй – Checker) выступают как один логический. Основной процессор (Master) работает в обычном однопроцессорном
режиме. Проверяющий (Checker) выполняет все те же операции вхолостую, не управляя шиной, и сравнивает выходные сигналы основного с теми, которые генерирует он сам. В случае обнаружения расхождения вырабатывается сигналл ошибки IERR, который может обрабатываться как прерывание.
При построении многопроцессорной системы можно использовать поцессоры разного степпинга, но частоты ядра должны совпадать (шина синхронизируется общим сигналом).
Блок-диаграмма процессоров P54 расположена ниже:
Ниже приведена диаграмма мультипроцессорной системы:
Процессор Pentium MMX – P55C.
В 1996 году Intel разработала процессор с новым расширением, ориентированным на применение в мультимедиа, 2D и 3D графику. Итак, P55C это:
1. Увеличенные кэши команд и данных – по 16К каждый.
2. Расширенная CMOS (E-CMOS) технология позволила расположить на кристалле 4.5 миллионов транзисторов.
3. Увеличено количество ступеней конвейера.
4. Улучшен способ предсказания ветвлений (он был позаимствован у Pentium PRO).
5. Количество буферов записи увеличено вдвое, их теперь четыре.
6. Для мультипроцессорной системы реализован только режим SMP, FRC исключён.
7. И, наконец, самое интересное! На кристалле расположен новый блок – блок MMX (Multi Media Extention), который позволяет обрабатывать целочисленные данные
(определённого типа – нового) методом SIMD (Single Instruction Multiple Data) – одна инструкция параллельно обрабатывает несколько данных. Для реализации блока MMX были введены:
A. восемь дополнительных 64-битных регистра (ММ0. ММ7)
B. четыре новых целочисленных типа данных. Регистры MMX могут содержать упакованные 64-битные типы данных – упакованные байты, упакованные слова, упакованные даойные слова и квадро-слова (смотри рисунок).
C. 57 новых инструкций для одновременной обработки нескольких единиц данных одновременно.
На самом деле, регистры MMX физически расположены в стеке регистров FPU, так что новых регистров этот процессор не предоставляет, и чередование использования программой инструкций FPU и MMX приводит к снижению эффективности работы, связанному с необходимостью пересылок данных из стека в память и обратно. В принципе, эффективность MMX вызывает некоторые сомнения, так как те функции, для которых они целесообразны, с неоспоримо большим успехом выполняются графическими акселераторами, которые уже стали обыденными ☺ . К тому же для использования новых команд необходима перекомпиляция ПО. Можно предположить, что введение MMX является первой ступенью в маниакальном стремлении Intel перенести всю работу в ПК на плечи центрального процессора, получившем дальнейшее распространение в Katmai (Pentium III) в виде новых KNI (SSE)-команд (вспомним рекламу: Pentium III – новые возможности Internet, хе-хе).
Блок-диаграмму процессора P55C можно увидеть здесь:
Процессор P6 – Pentium PRO.
Революционная вещь в своём роде. Выпущен где-то в районе 1995 года. Первые экземпляры были выполнены по 0.6 мкм BiCMOS-технологии. Тройная суперскалярная архитектура (конвейер имеет 12 уровней и поддерживает динамическое выполнение инструкций) – возможно выполнение 3-х команд за такт.
1. Шина адреса расширена до 36 разрядов, соответственно максимальный размер адресуемой памяти составляет 64 Гб. Разрядность шины данных – 64 бита.
2. Кэши. Кэш L1 состоит, как и в предыдущих процессорах, из кэша команд + кэша данных, оба по 8К. На кристалле (!) интегрирован синхронный кэш второго уровня L2 объёмом 256К, 512К либо 1024К. В поздних версиях его размер достигает 2М. Кэш L2 подключен к внутренней шине и работает на частоте ядра.
3. В процессорах этой серии применяется технология динамического исполнения , т.е. внутри процессора инструкции могут выполняться не в том порядке, который предполагает программный код. При этом команды, не зависящие от результатов предыдущих операций, могут быть выполнены в изменённом порядке, но последовательность выгрузки результатов в память и порты будет соответствовать исходному программному коду. ( Почему это тем не менее машина фон-Неймана ? А потому, что подтверждения выставляются в том порядке, который предполагает программный код). Динамическое исполнение включает в себя:
• Глубокий прогноз ветвлений , который позволяет декодировать инструкции за пределами ветвлений, чтобы поддерживать конвейер в максимально полном состоянии (не давать ему простаивать). Этим занимается модуль Fetch/Decode (см. рисунок), использующий оптимизированные алгоритмы прогноза.
• Динамический анализ потока данных . Модуль Dispatch/Execute может одновременно проверить несколько инструкций и выполнить их в том порядке, который наиболее оптимален. Он выполняет все доступные инструкции, записывает их в пул инструкций, и сохраняет результаты во временных регистрах; после чего устройство Retire просматривает пул инструкций с целью выделить те из них, результат выполнения которых уже не зависит от выполнения других инструкций. Когда такие завершённые инструкции обнаруживаются, Retire Unit отправляет результаты выполнения этих инструкций в память и/или в регитры общего назначения и регистры данных FPU, в порядке следования, предписанным программой.
• Интеллектуальное выполнение . Это свойство выражается в возможности процессора выполнять команды опережая программный счётчик, но в то же время позволяет получать результаты, соответствующие выполнению команд в исходной последовательности.
4. В Pentium PRO применена архитектура двойной независимой шины (Dual Independent Bus). Одна шина – системная – служит для общения ядра с основной памятью и интерфейсными устройствами, другая – внутренняя – предназначена исключительно для обмена со вторичным кэшем. Применение динамического исполнения резко повышает частоту запросов процессорного ядра к шине за данными памяти и инструкциями, поскольку ядро одновременно обрабатывает нескольео инструкций. Для обхода узкого места – внешней шины – кристалл процессорного ядра и использует технологию двойной независимой шины. Значительный объём вторичного кэша позволяет удовлетворять большинство запросов к памяти сугубо локально, при этом коэффициент загрузки шины достигает 90% (необходимо заметить, что обмен данными по внутренней шине происходит значительно быстрее, чем по внешней, так как кэш L2 работает на частоте ядра, то есть порядка 200 МГц). Вторая шина процессорного кристалла выходит на внешние выводы микросхемы, она и является системной шиной процессора Pentium PRO. Эта шина работает на внешней частоте (66,6 МГц) независимо от внутренней шины. Загрузка процессором внешней шины для обычных рядовых применений составляет порядка 10% от её пропускной способности, а для серверных применений может достигать 60% при четырёхпроцессорной конфигурации. Таким образом, ограниченная пропускная
способность внешней шины (533 Мбайт/с в пике пакетной передачи) перестаёт сильно сдерживать производительность процессора. Снижение нагрузки на внешнюю шину позволяет эффективно использовать многопроцессорную архитектуру.
5. В систему команд введены инструкции условной пересылки данных, позволяющие сократить количество условных переходов. При этом повышается предсказуемость кода, отсюда и эффективность использования конвейера.
6. Интерфейс системной шины рассчитан на объединение до четырёх процессоров в симметричнцю мультипроцессорную систему (SMP).
7. Разъём для установки – ZIF Socket 8.
В заключении можно заметить, что Pentium PRO всегда был достаточно дорогим процессором из-за низкого процента полезного выхода кристаллов с пластины, так как чаще всего кристалл отбраковывался из-за плохого качества кэша L2, к качеству большого объёма которого предъявляются очень жёсткие требования.
Процессор Pentium II.
Фактически Pentium II является продолжением линейки Pentium PRO с новыми усовершенствованиями а также упрощениями, введёнными для удешевления себестоимости процессора. Эта модель появилась в 1997 году. Основные отличия (рассматриваем самые ранние PII на ядре Klamath/Deschutes) от PRO:
1. Разрядность шины адреса и шины данных как и у PRO – 36/64 бита.
2. Несколько усовершенствованный конвейер.
3. Увеличен размер L1-кэша. Теперь это 16К+16К под команды и данные соответственно. Кэш второго уровня убран с кристалла и расположен в виде двух микросхем на процессорной плате, размер – 512К . Работает на половинной частоте ядра.
4. Всё та же архитектура двойной независимой шины.
5. Имеется блок для выполнения MMX – инструкций (чего не было в PRO, так как он вышел ещё до P55C – Pentium MMX).
6. Возможно объединение двух процессоров в многопроцессорную систему, работающую в режиме SMP.
7. Конструктивно выполнен иначе. Сам процессор расположен на процессорной плате с печатным краевым разъёмом (картридж S.E.C.C.), на ней же располагаются две микросхемы кэша L2. Разъём для картриджа – Slot1 (Slot2 для Xeon, SlotM для
Привет, %username%. Те, кто подписан на наш блог, уже заметили, что мы регулярно выпускаем статьи про историю возникновения процессоров Intel Pentium. Изначально мы планировали написать только один текст, но вошли во вкус и создали целый цикл статей. Во многом благодаря Виталию (вот он, на фотке), руководителю отдела системного администрирования в Selectel днем и основателю коллекции раритетного «железа» «Digital Vintage» ночью. У него в запасе еще много историй, так что вас ожидает еще множество интересных очерков и обзоров олдскульной техники.
Под катом же мы собрали полную историю процессоров Pentium: от самого первого Pentium 66 МГц до последних Pentium D и Pentium M. Вспомним все успехи и провалы, помянем тех, кто ушел навсегда, и отметим тех, кто внезапно спасся от забытья.
Pentium — имя нарицательное. Часть 1: Intel уходит от погони
Герой этой статьи — знакомый, пожалуй, каждому процессор Intel Pentium, вышедший на рынок 22 марта 1993 года. Его история связана с периодом самого бурного развития компьютерных технологий. Процессор дал жизнь последней универсальной платформе для ПК — Socket 7.
Pentium — имя нарицательное. Часть 2: Повстанцы наносят ответный удар
К5 задерживается, разработка Cyrix 5x86 и 6x86(!) идет полным ходом, IDT занимается MIPS-процессорами, о Rise еще никто не слышал. А Intel выпускает новый чипсет 430FX (Triton). В статье — продолжение рассказа о процессорах Intel Pentium и дальнейшем развитии процессоров x86.
Король умер! Да здравствует король! История процессоров поколения Intel Pentium II
1997 год ознаменовался появлением кардинально нового процессора, с которым ты, %username%, наверняка сталкивался. Речь об Intel Pentium II. Именно этот процессор стал крайне популярным и породил множество разных систем — как серверных, так и десктопных. Так что наливайте кофе, включайте любимую музыку из тех времен и погружайтесь в события, произошедшие 24 года назад.
Смутное время. История процессоров с архитектурой Intel NetBurst. Часть 1
20 ноября 2000 года произошло событие, которого с нетерпением ждали многие: Intel официально представила новые процессоры Pentium — Pentium 4 на ядре «Willamette». Процессоры этого поколения стали, безусловно, коммерчески успешными, но отношение к ним крайне противоречиво. Споры среди исследователей истории техники и энтузиастов ретрокомпьютинга не утихают по сей день.
Преимущества и недостатки
Конвейер помогает не во всех случаях. Существует несколько возможных минусов. Конвейер инструкций можно назвать "полностью конвейерным", если он может принимать новую инструкцию каждый машинный цикл (англ. en:clock cycle ). Иначе в конвейер должны быть вынужденно вставлены задержки, которые выравняют конвейер, при этом ухудшат его производительность.
Преимущества конвейера:
- Время цикла процессора уменьшается, таким образом увеличивая скорость обработки инструкций в большинстве случаев.
- Некоторые комбинационные логические элементы, такие как сумматоры (англ.adders ) или умножители (англ.multipliers ) могут быть ускорены путем увеличения количества логических элементов. Использование конвейера может предотвратить ненужное наращивание количества элементов.
Недостатки конвейера:
- Беcконвейерный процессор исполняет только одну инструкцию за раз. Это предотвращает задержки веток инструкций (фактически, каждая ветка задерживается), и проблемы, связанные с последовательными инструкциями, которые исполняются параллельно. Следовательно, схема такого процессора проще и он дешевле для изготовления.
- Задержка инструкций в беcконвейерном процессоре слегка ниже, чем в конвейерном эквиваленте. Это происходит из-за того, что в конвейерный процессор должны быть добавлены дополнительные триггеры.
- У беcконвейерного процессора скорость обработки инструкций стабильна. Производительность конвейерного процессора предсказать намного сложнее, и она может значительно различаться в разных программах.
Конец «Золотого Века». История процессоров поколения Intel Pentium III. Часть 1
Наша точка отсчета — 26 февраля 1999 года. В этот день компания Intel представила свое новое семейство процессоров — Intel Pentium III. С маркетинговой точки зрения — очередной прорыв, покорение новых вершин производительности и эффективности. Но так ли это было в техническом плане? Ответы — в этой статье.
Пример 2
Чтобы лучше продемонстрировать идею, давайте посмотрим на теоретический трехуровневый конвейер:
Шаг | Описание |
---|---|
Загрузка | Прочитать инструкцию из памяти |
Исполнение | Исполнить инструкцию |
Запись | Записать результат в память и/или регистры |
и на псевдоассемблерный листинг, который нужно выполнить:
Теперь как это всё будет исполняться:
Загрузка | Исполнение | Запись |
---|---|---|
ЗАГРУЗИТЬ |
Инструкция ЗАГРУЗИТЬ читается из памяти.
Загрузка | Исполнение | Запись |
---|---|---|
КОПИРОВАТЬ | ЗАГРУЗИТЬ |
Инструкция ЗАГРУЗИТЬ выполняется, тогда как инструкция КОПИРОВАТЬ читается из памяти.
Загрузка | Исполнение | Запись |
---|---|---|
СЛОЖИТЬ | КОПИРОВАТЬ | ЗАГРУЗИТЬ |
Инструкция ЗАГРУЗИТЬ находится на шаге записи результата, где её результат (т.е. число 40) записывается в регистр А. В это же время, инструкция КОПИРОВАТЬ исполняется. Так как она должна скопировать содержимое регистра A в регистр B, она должна дождаться окончания инструкции ЗАГРУЗИТЬ.
Загрузка | Исполнение | Запись |
---|---|---|
ЗАПИСАТЬ | СЛОЖИТЬ | СКОПИРОВАТЬ |
Загружена инструкция ЗАПИСАТЬ, тогда как инструкция СКОПИРОВАТЬ прощается с нами, а по инструкции СЛОЖИТЬ в данный момент производятся вычисления.
И так далее. Следует учитывать, что иногда инструкции будут зависеть от результатов других инструкций (например, как наша инструкция СКОПИРОВАТЬ). Когда более, чем одна инструкция ссылается на определенное место, читая его (т.е. используя в качестве входного операнда) либо записывая в него (т.е. используя его в качестве выходного операнда), исполнение инструкций не в порядке, который был изначально запланирован в оригинальной программе может повлечь за собой «конфликт конвейера» (англ. en:Hazard (computer architecture) ) (о чем упоминалось выше). Существует несколько зарекомендовавших себя приемов для либо предотвращения конфликтов, либо их исправления, если они случились.
Tillamook
Процессоры, основанные на данном ядре, предназначались для портативных компьютеров. Ядро Tillamook (названо в честь города в штате Орегон, США), представляет собой ядро P55C с пониженным напряжением питания — модель с частотой 300 МГц работала с напряжением 2,0 В, потребляя при этом ток в 4,5 А, и обладала тепловыделением в 8,4 Вт. Старшие модели (с частотой 233, 266 и 300 МГц) выпускались с использованием 250 нм техпроцесса и имели кристалл площадью 90 мм², младшие (133 и 150 МГц) с использованием 280 нм техпроцесса и имели кристалл площадью 140 мм², остальные выпускались с использованием обоих техпроцессов. В зависимости от типа корпуса (TCP или CBGA) процессор соответственно либо припаивался к материнской плате, либо устанавливался в специальный модуль MMC1. Первые модели были выпущены в январе 1997 года.
Модели
Первоначально (22 марта 1993 года) было представлено только две модели, основанные на ядре P5 с частотами 60 и 66 МГц. Однако позже были выпущены и более производительные процессоры Pentium, но основанные на усовершенствованных ядрах. Кроме того, были представлены мобильные версии процессоров и процессоры Pentium OverDrive.
Кодовое имя ядра | P5 | P54C | P54CS | P55C | |||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Техпроцесс (нм) | 800 | 600 | 350 | ||||||||||
Тактовая частота ядра (МГц) | 60 | 66 | 75 | 90 | 100 | 120 | 133 | 150 | 166 | 200 | 166 | 200 | 233 |
Анонсирован | 23 марта 1993 | 10 окт. 1994 | 7 марта 1994 | 27 марта 1995 | 12 июня 1995 | 4 января 1996 | 10 июня 1996 | 8 января 1997 | 2 июня 1997 |
Процессоры Pentium первого поколения. Две (единственные) модели анонсированы 23 марта 1993 года и работали с тактовой частотой ядра 60 и 66 МГц, частота системной шины (FSB) была равна частоте ядра, то есть множитель ядра был равен «1,0». Кэш второго уровня размещался на материнской плате и мог иметь размер до 1 Мб. Процессор выпускался в 273-контактном корпусе CPGA и устанавливался в корпус Socket 4 и работал от напряжения 5 В. Все процессоры Pentium относятся к классу SL Enhanced, это значит, что в них предусмотрена система SMM, обеспечивающая снижение энергопотребления. Ранние варианты процессоров, с частотами 60—100 МГц (ядра P5 и P54C) имели ошибку в модуле FPU (математический сопроцессор), которая, в редких случаях, приводила к уменьшению точности операции деления. Этот дефект был обнаружен в Линчберге (США, штат Вирджиния) в 1994 году и стал известен как «Pentium FDIV баг». Процессоры на ядре P5 изготавливались с использованием 800 нанометрового техпроцесса, по биполярной F0 0f c7 c8) процессоров Pentium первого поколения, не советовали покупать данные модели. Производство на время пришлось остановить. Однако вскоре началось производство усовершенствованных процессоров, основанных на ядре P54C.
7 марта 1994 года были выпущены процессоры Pentium второго поколения. Изначально были выпущены модели с тактовыми частотами 90 и 100 МГц, однако потом была выпущена модель с частотой 75МГц. Процессоры производились по 600 нанометровой биполярной BiCMOS-технологии, что позволило уменьшить размер кристалла до 148 мм² (ядро содержало 3,2 млн транзисторов) и снизить потребляемую мощность до 10,1 Вт (для Pentium 100). Напряжение питания также было уменьшено до 3,3 В, ток, потребляемый процессором, составляет 3,25 А. Процессор выпускался в 296-контактном корпусе CPGA и устанавливался в Socket 5 или Socket 7 и был не совместим с Socket 4. В этих процессорах улучшена система SMM, добавлен усовершенствованный программируемый контроллер прерываний
Пример 1
Допустим, типичная инструкция для сложения двух чисел это СЛОЖИТЬ A, B, C , которая суммирует значения, которые находятся в ячейках памяти A и B, а затем кладет результат в ячейку памяти C. В конвейерном процессоре контроллер может разбить эту операцию на последовательные задачи вида
Ячейки R1 и R2 являются регистрами процессора. Значения, которые хранятся в ячейках памяти, которые мы называем A и B, загружаются (т.е. копируются) в эти регистры, затем суммируются, и результат записывается в ячейку памяти C.
В данном примере конвейер состоит из трех уровней - загрузки, исполнения и записи. Эти шаги называются, очевидно, уровнями или шагами конвейера.
В бесконвейерном процессоре, только один шаг может работать в один момент времени, поэтому инструкция должна полностью закончиться прежде, чем следующая инструкция в принципе начнется. В конвейерном процессоре, все эти шаги могут выполняться одновременно на разных инструкциях. Поэтому когда эта инструкция находится на шаге исполнения, вторая инструкция будет на стадии раскодирования, и третья инструкция будет на стадии прочтения.
Конвейер не уменьшает время, которое необходимо для того, чтобы выполнить инструкцию, но зато он увеличивает объем (число) инструкций, которые могут быть выполнены одновременно и таким образом уменьшает задержку между выполненными инструкциями — увеличивая т.н. пропускную способность. Чем больше уровней имеет конвейер, тем больше инструкций могут выполняться одновременно и тем меньше задержка между завершенными инструкциями. Каждый микропроцессор, произведенный в наши дни, использует как минимум двухуровневый конвейер. Процессоры Intel Pentium 4 имеют 20-тиуровневый конвейер.
P54CS
Первые процессоры, основанные на данном ядре, были выпущены 27 марта 1995 года. По большому счету, это ядро представляет собой ядро P54C изготовленной с использованием 350 нанометровой биполярной BiCMOS-технологии, что позволило ещё уменьшить размер кристалла ядра до 91 мм² (процессоры Pentium 120 и 133), однако вскоре в результате оптимизации ядра его размер удалось уменьшить до 83 мм² при том же количестве транзисторов. При этом Pentium 200 потреблял ток в 4,6 А, а его максимальная рассеиваемая энергия (тепловыделение) составляло 15,5 Вт.
Множитель | Процессор |
---|---|
1,5 | Pentium 75, Pentium 90, Pentium 100 |
2,0 | Pentium 120, Pentium 133 |
2,5 | Pentium 150, Pentium 166 |
3,0 | Pentium 200 |
8 января 1997 года были выпущены процессоры Pentium, основанные на ядре P5 третьего поколения(P55C). Центром Разработок и Исследований Intel в Хайфе (Израиль) в ядро P55C был добавлен новый набор инструкций, названный Pentium MMX). Новый процессор включает в себя устройство MMX с конвейерной обработкой команд, кэш L1 увеличен до 32 Кб (16 Кб для данных и 16 Кб для инструкций). Состоит новый процессор из 4,5 млн транзисторов и производится по усовершенствованной 350-нанометровой CMOS-технологии с использованием кремниевых полупроводников, работает на напряжении 2,8 В. Максимальный потребляемый ток равен 6,5 А, а тепловыделение равно 17 Вт (для Pentium 233 MMX). Площадь кристалла у процессоров Pentium MMX равна 141 мм². Процессоры выпускались в 296-контактном корпусе типа CPGA или PPGA для Socket 7.
Век революций. История процессоров с архитектурой Intel NetBurst. Часть 2
С момента выхода первых Pentium 4 «Willamette» прошло уже два с половиной года. Успело смениться два полноценных поколения платформы, два сокета, два ядра и три типа памяти. Несмотря на не самый удачный старт, к «четвертому пню» пришел не только коммерческий успех, но и народное признание. Новая микроархитектура проникла во все сегменты рынка — от бюджетных ПК до многопроцессорных серверов.
Другие процессоры, использующие марку Pentium
Процессоры Intel Pentium пользовались огромной популярностью, и Intel решила не отказываться от марки Pentium, называя так и последующие процессоры, хотя они сильно отличались от первых Pentium’ов и не относились к пятому поколению. Таковыми являются:
История
В июне 1989 года Винодом Дэмом (англ.) были сделаны первые наброски процессора под кодовым названием P5. Он и не подозревал, что именно этот продукт будет одним из главных достижений корпорации Intel. В конце 1991 года была завершена разработка макета процессора, и инженеры смогли запустить на нём программное обеспечение. Начался этап оптимизации топологии и повышения эффективности работы. В феврале 1992 года проектирование в основном было завершено, началось всеобъемлющее тестирование опытной партии процессоров. В апреле 1992 года принято решение о начале промышленного производства процессоров, в качестве основной промышленной базы была выбрана Орегонская фабрика № 5. Началось промышленное освоение производства и окончательная доводка технических характеристик. В октябре 1992 года Intel объявила, что процессоры пятого поколения, ранее носившие кодовое имя P5, будут называться Pentium, а не 586, как предполагали многие. Это вызвано тем, что многие фирмы, производящие процессоры, активно освоили производство «клонов» (и не только) процессоров 386 и 486. Intel собиралась зарегистрировать в качестве торговой марки название «586», чтобы больше никто не смог заниматься производством процессоров с таким названием, однако, оказалось, что зарегистрировать цифры в качестве торговой марки нельзя, поэтому было принято решение назвать новые процессоры «Pentium» (от «pent-» — пять), что также указывало на поколение данного процессора. 22 марта 1993 года состоялась презентация нового микропроцессора, через несколько месяцев появились и первые компьютеры на их основе.
Содержание
Общий конвейер
Справа изображен общий конвейер с четырьмя стадиями работы:
- Получение (англ.Fetch )
- Раскодирование (англ.Decode )
- Выполнение (англ.Execute )
- Запись результата (англ.Write-back )
Верхняя серая область — список инструкций, которые предстоит выполнить. Нижняя серая область — список инструкций, которые уже были выполнены. И средняя белая область является самим конвейером.
Выполнение происходит следующим образом:
Пузырек
Когда в выполнении по каким-либо причинам случается небольшой сбой или задержка, в конвейере получается "пузырек", в котором не происходит ничего полезного. Во втором такте обработка фиолетовой инструкции задерживается и вместо стадии расшифровки в третьем такте теперь находится пузырек. Всё, что находится «за» фиолетовой инструкцией, испытывает задержку в один такт, тогда как все, что находится «перед» фиолетовой инструкцией продолжает исполняться.
Очевидно, что наличие пузырька в конвейере дает суммарное время исполнения в 8 тактов вместо 7 на схеме исполнения, продемонстрированной выше.
Пузырьки - это как заглушки, в которых не случается ничего полезного при их прочтении, раскодировании, исполнении и записи результата. Они могут быть выражены при помощи NOP.
Intel Pentium Pro — 25 лет: ближайший общий предок
Intel Pentium Pro был первым процессором, оптимизированным для выполнения именно 32-битного кода, с ядром P6, послужившим в дальнейшем основой для большинства x86-процессоров Intel за исключением Netburst / Atom. В этой статье мы перенесемся в осень 1995 года и взглянем на появление этого прекрасного процессора.
Трудности
Множество схем включают в себя конвейеры в 7, 10 или даже 20 уровней (как, например, в Intel Pentium 4). Поздние ядра Pentium 4 с кодовыми именами «Prescott» и «Cedar Mill» (и их Pentium D-производные) имеют 31-уровневый конвейер, самый длинный среди популярных процессоров. Xelerator X10q имеет конвейер длиной более, чем в тысячу шагов [1] . Обратной стороной медали в данном случае является необходимость сбрасывать полностью весь конвейер в случае, если ход программы изменился (например, по условному оператору). Эту проблему пытаются решать предсказатели переходов (англ. en:Branch predictor ). Предсказание переходов само по себе может только усугубить ситуацию, если предсказание производится плохо. В некоторых областях применения, таких как вычисления на суперкомпьютерах, программы специально пишутся так, чтобы как можно реже использовать условные операторы, поэтому очень длинные конвейеры весьма позитивно скажутся на общей скорости вычислений, так как длинные конвейеры проектируются так, чтобы уменьшить CPI (количество тактов на инструкцию). Если ветвление происходит постоянно, переорганизация таким образом, чтобы те инструкции, которые, скорее всего, понадобятся, были размещены в конвейере, может значительно уменьшить потери скорости по сравнению с необходимостью каждый раз полностью сбрасывать конвейер. Программы типа gcov могут использоваться для того, чтобы определять, как часто отдельные ветки исполняются на самом деле, используя технологию, известную как анализ покрытия кода (англ. Code coverage analysis , хотя на практике подобный анализ является последней мерой при оптимизации.
Высокая пропускная способность конвейеров оборачивается тормозами в случае, если в исполняемом коде содержится много условных переходов: процессор не знает, откуда читать следующую инструкцию, и поэтому вынужден ждать, когда закончится инструкция условного перехода, оставляя за ней пустой конвейер. После того, как ветка будет пройдена и станет известно, куда процессору необходимо переходить в дальнейшем, следующая инструкция должна будет пройти весь путь через конвейер перед тем, как результат становится доступным и процессор снова «работает». В крайнем случае, производительность конвейерного процессора может теоретически упасть до производительности безконвейерного, или даже быть хуже за счет того, что будет занят только один уровень конвейера и между уровнями присутствует небольшая задержка.
Из-за конвейера процессора, код, который загружает процессор, не будет исполнен мгновенно. Из-за этого, обновления в коде, которые находятся очень близко к текущему месту исполнения программы, могут пройти незамеченными из-за того, что код уже предзагружен в en:Prefetch Input Queue. Кэши инструкций (англ. en:Instruction cache ) еще больше усугубляют эту проблему. Стоит учитывать, что данная проблема присутствует только в самомодифицирующихся программах.
Pentium (произносится: Пе́нтиум) — торговая марка нескольких поколений микропроцессоров семейства Intel с 22 марта 1993 года. Pentium является процессором Intel пятого поколения и пришёл на смену Intel 80486 (который часто называют просто 486).
Основные отличия от 486-го процессора
-
. Благодаря использованию суперскалярной архитектуры процессор может выполнять 2 команды за 1 такт. Такая возможность существует благодаря наличию двух конвейеров — u- и v-конвейер. u-конвейер — основной, выполняет все операции над целыми и вещественными числами; v-конвейер — вспомогательный, выполняет только простые операции над целыми и частично над вещественными. Чтобы старые программы (для 486) в полной мере использовали возможности такой архитектуры, необходимо было их перекомпилировать. Pentium является первым
- 64-битная шина данных. Позволяет процессору Pentium обмениваться вдвое большим объёмом данных с оперативной памятью, чем 486 за один шинный цикл (при одинаковой тактовой частоте).
- Механизм предсказания адресов ветвления. Применяется для сокращения времени простоя конвейеров, вызванного задержками выборки команд при изменении счетчика адреса во время выполнения команд ветвления. Для этого в процессоре используется буфер адреса ветвления BTB (Branch Target Buffer), использующий алгоритмы предсказания адресов ветвления.
- Раздельное кэширование программного кода и данных. В процессорах Pentium используется кэш-память первого уровня (кэш L1) объёмом 16Кб, разделенная на 2 сегмента: 8Кб для данных и 8Кб для инструкций. Это улучшает производительность и позволяет делать двойное кэширование доступным чаще, чем это было возможно раньше. Кроме того, изменён механизм кэширования.
- Улучшенный блок вычислений с плавающей запятой (FPU, сопроцессор).
- Симметричная многопроцессорная работа (SMP).
Конец Золотого Века. История процессоров поколения Intel Pentium III. Часть 2
Katmai, Coppermine, Tualatin — все эти странные названия не что иное, как наименование ревизий ядер самого актуального процессора конца XX века. В статье мы рассказываем как о пресловутой «гонке за гигагерц», так и о тех модификациях, которые способствовали бурному развитию компьютерной техники начала миллениума.
Pentium OverDrive
Было выпущено несколько поколений Pentium OverDrive.
- В 1995 году вышел первый Pentium OverDrive (использует ядро P24T). Он был предназначен для установки в гнезда типа Socket 2 или Socket 3 и работал с напряжением питания 5 В, то есть служил для модернизации систем использующих процессор 486 без замены материнской платы. При этом данный процессор обладал всеми функциями процессора Pentium первого поколения (на ядре P5). Было выпущено две модели, работающие на частотах 63МГц и 83МГц, старшая потребляла ток в 2,8 А и обладала рассеиваемой мощностью 14 Вт. Из-за высокой стоимости данный процессор ушёл, не успев появиться. И хотя через некоторое время (4 марта 1996) на смену этим процессорам пришли Pentium ODP5V с частотами 120 и 133МГц, основанные на ядре P5T (по сути, представляет собой ядро P54CS) они также не стали популярны.
- 4 марта 1996 выходит следующая версия Pentium OverDrive (Pentium ODP3V) на ядре P54CT. Данное ядро построено на основе ядра P54CS. Процессор выпускался в 320-контактном корпусе CPGA для Socket 5 или Socket 7. 1997 года выходят две модели Pentium ODPMT (с частотами 150 и 166 МГц), построенные на ядре P54CTB (аналог P55C), позже, 4 августа 1997 года выходят ещё две модели на том же ядре (с частотами 180 и 200 МГц). Они выпускались в 320-контактных корпусах CPGA и были предназначены для Socket 5 или Socket 7 (Pentium ODPMT-200 MMX только для Socket 7).
Примеры
Содержание
Иногда они возвращаются. История Intel Pentium M
Рассказываем о процессоре, который не должен был появиться вовсе, но вместо этого завоевал невероятную популярность и изменил ход истории. Вы, конечно, уже прочитали заголовок и понимаете, что речь пойдет о представителе микроархитектуры P6, наследнике Pentium III — мобильном процессоре Intel Pentium M.
Подписывайтесь на Виталия, чтобы не пропустить новые тексты, посвященные старому «железу». А также задавайте вопросы в комментариях — он обязательно на все ответит.
Конвейерная обработка (pipeline processing) в ЭВМ — вид обработки, при которой команда выполняется за несколько этапов, на каждом из которых используются определенные аппаратные средства процессора, работающие относительно независимо друг от друга так, что в течение одного и того же такта может выполняться несколько команд, находящихся на разных этапах.
При завершении первого этапа команда "переходит" на второй этап, на котором используются другие аппаратные средства. Средства, используемые на первом этапе, оказываются свободными для начала выполнения следующей команды. Таким образом, как только очередная команда переходит на следующий этап, начинает выполняться новая команда. Эта технология обеспечивает быструю обработку последовательных процессов, но требует дополнительного управляющего устройства, которое должно вести учет операций, выполняемых одновременно. Конвейерная архитектура присуща RISC-процессорам. Этапы конвейера выделяются в соответствии с действиями, необходимыми для выполнения команды. Конвейер может иметь два этапа (выборка — исполнение), три этапа (выборка — дешифрация — исполнение) и т. д. Наиболее характерное количество этапов — пять:
Вычисление адресов операндов.
Процессор с более, чем одним конвейером, называется суперскалярным.
Процессор с большим количеством этапов (стадий, ступеней) конвейера называется суперконвейерным. Например, в Pentium Pro два конвейера по двенадцать ступеней. Исполнительная часть содержит четыре блока: выборки и декодирования, выполнения, завершения и накопителя. Все команды в накопителе имеют определенный статус: "может быть выполнена", "ожидает данные", "выполнена" и т. д. Гиперконвейер (Pentium 4) имеет еще большее количество этапов.
Этапы конвейера процессоров Pentium и Pentium MMX
Целочисленные команды проходят при своем выполнении пять (для Pentium MMX шесть) этапов (стадий) конвейера (рис.):
PF — предвыборка (Prefetch);
F — выборка (Fetch) (только для Pentium MMX);
D1 — декодирование команды (Instruction Decode);
D2 — генерация адреса (Address Generate);
EX — исполнение — обращение к АЛУ и кэшу (Execute — ALU and Cache Access);
WB — обратная запись (сохранение результатов) (Writeback).
Рис. Конвейерная обработка в процессоре Pentium
На стадии предвыборки команды выбираются из кэша кода или из памяти. На этой стадии участвуют два буфера предвыборки вместе с буфером флагов переходов. Каждый буфер предвыборки имеет размер строки кэша (line-size) — 32 байта. Это позволяет одному буферу предвыборки выбирать команды последовательно, а другому — в соответствии с предсказаниями BTB. Причем эти роли закреплены не жестко, а могут чередоваться. Команды выбираются первым буфером последовательно до тех пор, пока не будет выбрана команда перехода. После этого BTB предсказывает, произойдет переход или нет. Если предсказывается отсутствие перехода, выборка продолжает осуществляться последовательно (линейно). Если предсказывается переход, активизируется второй буфер и предвыборка начинает осуществляться им, как будто переход произошел. Если переход предсказан неверно, то после обнаружения этого конвейеры сбрасываются (flush) и выборка начинается заново.
В Pentium MMX имеются четыре 16-байтных буфера предвыборки, которые могут генерировать как максимум четыре независимых потока команд, основанных на предсказаниях BTB.
Выборка и декодирование команды
На стадии выборки осуществляется декодирование длины команды. Это заменяет дешифратор длины команды, используемый на стадии D1, и устраняет необходимость конечных битов (end-bits) для определения длины команды. На этой стадии декодируются также все префиксы.
Pentium MMX имеет буфер команд типа FIFO между стадиями F и D1. Этот буфер является прозрачным и не вносит задержки в случае, если он пустой. В каждом такте в него могут быть помещены две команды. Когда средняя скорость выполнения меньше, чем две команды за такт, буфер команд обычно заполнен.
На стадии D1 два параллельных декодера декодируют две очередные команды. Pentium требует дополнительного такта для декодирования префиксов команды.
Вычисление адресов операндов, выполнение команды и сохранение результатов
На стадии D2 вычисляются (генерируются) адреса операндов, находящихся в памяти.
На стадии выполнения в работу вступает АЛУ. При необходимости осуществляется доступ к кэшу данных, что требует более одного такта для прохождения этой стадии. На этой стадии все команды u-конвейера и все команды v-конвейера, за исключением команд условного перехода, верифицируются для правильного предсказания переходов.
На заключительной стадии (WB) команда может изменить состояние процессора и завершить выполнение. На этой стадии команды условного перехода v-конвейера верифицируются для правильного предсказания переходов.
При своем прохождении через конвейер команда может останавливаться до выполнения некоторых условий. Оба конвейера начинают и заканчивают стадии D1 и D2 одновременно. Когда команда в одном конвейере останавливается, то команда в другом конвейере останавливается на той же стадии. Таким образом, в стадию выполнения оба конвейера также входят одновременно.
Синхронизация выполнения команд в суперскалярных процессорах
В суперскалярных процессорах, как во всех параллельных системах возникает проблема синхронизации (координации или баланса взаимодействий). В таких процессорах последующая команда может закончиться раньше предыдущей. В этом случае результаты могут заноситься в буфер, из которого должны выходить уже в порядке очередности. Но это все хорошо и просто, когда команды независимы. Если выполнение очередной команды зависит от результатов предыдущей, то, ее выполнение должно приостановиться до получения требуемого результата. Существует два типа зависимостей:
Запись после чтения. Первая команда читает данные из регистра или памяти, вторая пишет в этот же регистр или ячейку памяти.
Чтение после записи. Обратная ситуация.
Существуют следующие методы уменьшения этих зависимостей:
Переименование регистров (register renaming).
Одновременное использование одних данных в обоих конвейерах (data forwarding).
Запоминание промежуточных результатов для дальнейшего использования (data bypassing).
Для реализации первого метода необходимо, чтобы число физических регистров было больше, чем программно-доступных. Например, имеем:
Можно вместо одного регистра BX использовать два регистра Reg0 и Reg1.
Переименование регистров не снимает зависимость второго типа. Полностью ее снять в принципе невозможно. Можно только уменьшить время простаивания второго конвейера.
Data forwarding заключается в следующем. Если первая команда выполняет какую-либо операцию, читая данные из памяти или регистра, а вторая использует эти же данные, то процессор выполняет операцию чтения и посылает результат на оба конвейера.
Data bypassing заключается в следующем. Если первая команда сохраняет результат в памяти, а вторая использует эту же ячейку памяти, то результат передается сразу на второй конвейер, что позволяет избежать операции чтения из памяти.
При переходе до получения нового адреса конвейер простаивает. Поэтому все переходы, встречающиеся в программе, запоминаются в специальном буфере флагов переходов (Branch Target Buffer, BTB). Процессор с вероятностью правильного предсказания 80-97% решает, будет производиться переход или нет, и начинает выполнять команды с предсказанного адреса. Это называется опережающим выполнением (Speculative Execution).
Простой пятиуровневый конвейер в RISC-процессорах (IF (англ. Instruction Fetch ) — получение инструкции, ID (англ. Instruction Decode ) — раскодирование инструкции, EX (англ. Execute ) — выполнение, MEM (англ. Memory access ) — доступ к памяти, WB (англ. Register write back ) — запись в регистр. Вертикальная ось — это последовательные независимые инструкции, горизонтальная — время. Соответственно, в зеленой колонке, которая описывает состояние процессора в один момент времени, самая ранняя, верхняя инструкция уже находится в состоянии записи в регистр, а самая последняя, нижняя инструкция только в процессе чтения.
Конве́йер — это способ организации вычислений, используемый в современных процессорах и контроллерах с целью ускорения выполнения инструкций (увеличения числа инструкций, выполняемых в единицу времени). Применительно к процессорам, является приемом, используемым при разработке компьютеров и других цифровых электронных устройств для увеличения их инструкционной пропускной способности (количеству инструкций, которые могут быть выполнены за определенный временной промежуток).
Идея заключается в том, чтобы разделить обработку компьютерной инструкции на последовательности независимых шагов, с сохранением результатов в конце каждого шага. Это позволяет управляющим цепям компьютера получать инструкции со скоростью самого медленного шага обработки, но такое решение намного быстрее, чем выполнение всех этих шагов эксклюзивно для каждой инструкции.
Сам термин «конвейер» пришел из промышленности, где используется аналогичный принцип работы — материал автоматически подтягивается по ленте конвейера к рабочему, который осуществляет с ним необходимые действия, следующий за ним рабочий выполняет свои функции над получившейся заготовкой, следующий делает еще что-то, таким образом, к концу конвейера цепочка рабочих полностью выполняет все поставленные задачи, не срывая, однако, темпов производства.
Считается, что впервые конвейерные вычисления были использованы либо в проекте ILLIAC II (англ. en:ILLIAC II ), либо в проекте IBM Stretch (англ. en:IBM Stretch ). Проект IBM Stretch предложил термины «получение» (англ. «Fetch» ), «расшифровка» (англ. «Decode» ) и «выполнение» (англ. «Execute» ), которые затем стали общеупотребляемыми.
Многие современные процессоры управляются таймером. Процессор внутри состоит из логики и памяти (триггеров). Когда приходит сигнал от таймера, триггеры приобретают своё новое значение и логике требуется отрезок времени для декодирования новых значений. Затем приходит следующий сигнал от таймера, триггеры снова принимают новые значения, и так далее. Разбивая логику на более мелкие части и вставляя триггеры между частями логики, время, необходимое логике для правильного вывода, уменьшается. В этом случае, интервал сработки таймера процессора может быть соответственно уменьшен. Например, конвейер RISC-процессоров разбит на 5 шагов, с набором триггеров между шагами:
- получение инструкции (англ.Instruction Fetch );
- раскодирование инструкции (англ.Instruction Decode ) и чтение регистров (англ.Register fetch );
- выполнение(англ.Execute );
- доступ к памяти (англ.Memory access );
- запись в регистр (англ.Register write back );
Когда программист (либо компилятор) пишут ассемблерный код, они делают предположение, что каждая инструкция заканчивает выполняться до того, как начнет выполняться следующая за ней. Использование конвейера делает это предположение неверным. Ситуация, когда использование конвейера заставляет программу работать некорректно, известна как «конфликт конвейера» (англ. en:Hazard (computer architecture) ). Существуют различные техники устранения конфликтов, например, форвардинг (англ. «Forwarding» ) или пробуксовка (англ. «Stalling» ).
Неконвейерная архитектура неэффективна потому, что некоторые компоненты (модули) процессора простаивают, пока какой-то из модулей выполняет свою роль в цикле обработки инструкций. Конвейер не убирает полностью время простоя в процессорах как таковое, но заставляет модули процессора работать параллельно, за счет этого увеличивая общую производительность программ.
Процессоры с конвейером внутри устроены так, что они разделены на «этапы», которые могут полу-независимо работать над разными задачами. Каждый этап связан в «цепочку» с другими таким образом, что результаты работы каждого из этапов «скармливаются» следующему этапу в цепочке до тех пор, пока работа не будет выполнена. Подобная организация процессора позволяет значительно уменьшить время работы.
К сожалению, не все инструкции являются независимыми. В простом конвейере обработка инструкции может потребовать 5-ти этапов обработки. Для работы в полную мощность, этот конвейер должен выполнять 4 последовательные независимые инструкции, пока заканчивается обработка первой. Если же 4-х инструкций, которые не зависят от результата выполнения первой инструкции, нет, управляющая логика должна вставлять в конвейер ничего не делающую заглушку (англ. stall ) до тех пор, пока зависимость не будет разрешена. К счастью, такие техники, как форвардинг, значительно уменьшают количество случаев, где всё же необходимо вставлять заглушки (то есть заставлять процессор пробуксовывать). Хотя конвейеры в теории позволяют увеличить производительность по сравнению с бесконвейерным процессором в количество раз, равное количеству этапов (подразумевая, что частота таймера также масштабируется с количеством этапов), в реальности, большинство кода не позволяет идеального выполнения.
Альтернативная история
История про Винода Дэма является официальной версией Intel, однако есть и другая версия появления этого процессора. В 1980-х годах в России над процессором «Эльбрус» трудился Владимир Мстиславович Пентковский, который работал при РАН под руководством Бабаяна. Примерно в 1989 делегация от Intel посетила лаборатории Вычислительной техники РАН, где встретилась с Пентковским. Пентковский получил приглашение приехать по обмену опытом в США в исследовательский центр Intel. Из этой поездки в Россию Пентковский не вернулся, а через несколько месяцев Intel официально заявила о разработке принципиально нового процессора под названием Pentium (назван в честь разработчика).
Читайте также: