trust already work Поколения процессоров » Портал инженера

Поколения процессоров

В настоящее время семейство х86 насчитывает 6 поколений процессоров у Intel и 7 - у AMD.

Первое поколение ( процессоры 8086 и 8088 и математический сопроцессор 8087) задало архитектурную основу - набор неравноправных 16- разрядных регистров, сегментную систему адресации памяти в пределах 1 Мбайт с большим разнообразием режимов , систему команд, систему прерываний и некоторые другие черты . В процессорах применялась "малая" конвейеризация - пока одни узлы выполняли текущую инструкцию, блок предварительной выборки выбирал из памяти следующую. На выполнение каждой инструкции уходило в среднем по 12 тактов процессорного ядра.

Второе поколение (80286 с сопроцессором 80287) привнесло в семейство защищенный режим , позволяющий использовать виртуальную память размером до 1 Гбайт для каждой задачи , пользуясь адресуемой физической памятью в пределах 16 Мбайт. Защищенный режим является основой для построения многозадачных операционных систем ( ОС), в которых система привилегий жестко регламентирует взаимоотношения задач с памятью , ОС и друг с другом. Защищенный режим 80286 не нашел массового применения - эти процессоры, в основном, использовались как " очень" быстрые 8086. Их производительность повысилась не только за счет роста тактовой частоты, но и за счет значительного усовершенствования конвейера. Здесь на выполнение инструкции уходило в среднем по 4,5 такта. Во втором
поколении появились новые инструкции: системные (для обслуживания механизмов защищенного режима) и несколько прикладных ( в том числе для блочного ввода/ вывода). Наличие защищенного режима не отменяет возможности работы в реальном режиме 8086, и эта возможность сохраняется во всех последующих поколениях (дань совместимости с программным обеспечением , включая и MS DOS).

Третье поколение (386/387 с суффиксами DX и SX, определяющими разрядность внешней шины) ознаменовалось переходом к 32- разрядной архитектуре IA-32. Кроме расширения диапазона непосредственно представляемых величин (16 бит отображают целые числа в диапазоне 0-65535 или от -32767 до +32767, 32 бита - более чем 4 миллиарда) увеличился и объем адресуемой памяти ( до 4 Гбайт реальной , 64 Тбайт виртуальной). Для этого почти все программно- доступные регистры были расширены и получили в названии приставку " Е" (ЕАХ, ЕВХ ...). В систему команд ввели возможность переключения разрядности адресации и данных. Защищенный режим был несколько усовершенствован , но оставлена и обратная совместимость с 286. На таком процессоре стала " расцветать " система MS Windows - сначала оболочка , а потом и операционная система. В плане организации исполнения инструкций существенных изменений , повлекших за собой сокращение числа тактов на инструкцию, не произошло - те же средние 4,5 такта, но частота уже достигла 40 МГц.

Четвертое поколение (486, опять- таки DX и SX) в видимую архитектурную модель больших изменений не внесло , но зато принят ряд мер для повышения производительности . В этих процессорах значительно усложнен исполнительный конвейер - основные операции выполняет RISC- ядро , " задания" для которого готовят из входных CISC- инструкций х86. Этот конвейер стал способным выполнять инструкцию в среднем за два такта. Конечно , каждая инструкция проходит через весь конвейер процессора за гораздо большее количество тактов , но темп выполнения в потоке именно таков. Производительность конвейера процессора оторвалась от возможностей доставки инструкций и данных из оперативной памяти, и прямо в процессор ввели быстродействующий первичный кэш объемом 8-16 Кбайт. В этом же поколении отказались от внешнего сопроцессора : теперь он размещается либо на одном кристалле с центральным ( называется FPU), либо его нет вообще. По сравнению с предыдущим поколением и сопроцессор стал работать значительно эффективнее . А тактовая частота в этом поколении достигла 133 МГц ( у AMD, а у Intel - только 100).

Пятое поколение - процессор Pentium у Intel и К5 у AMD - привнесли суперскалярную архитектуру . Суперскалярность означает наличие более одного конвейера. У процессоров пятого поколения после блоков предварительной выборки и первой стадии декодирования инструкций имеется два конвейера, U- конвейер и V- конвейер . Каждый из этих конвейеров имеет ступени окончательного декодирования, исполнения инструкций и буфер записи результатов. U-конвейер "умеет" все, у V- конвейера возможности немного скромнее . Конвейеризирован и блок FPU. Процессор с такой архитектурой может одновременно " выпускать" до двух выполненных инструкций, но в среднем получается 1 такт на инструкцию. Не все инструкции могут выполняться парно, эффективность использования конвейеров ( коэффициент их загрузки или простоя) зависит от программного кода - есть широкие возможности оптимизации . В процессорах применяется блок предсказания ветвлений ( инструкций программы , выполняемых после очередного условного перехода или вызова ), в обязанности которого входит не оставлять конвейеры без работы " на поворотах" алгоритмов . Для быстрого снабжения конвейеров инструкциями и данными из памяти шина данных процессоров имеет разрядность 64 бит, из - за чего поначалу их даже ошибочно называли 64-разрядными процессорами. На закате этого поколения появилось расширение ММХ, новизна которого заключается в принципе SIMD: одна инструкция выполняет действия сразу над несколькими (2, 4 или 8) комплектами операндов. В ММХ появился и новый тип арифметики - с насыщением (saturated): если результат операции не умещается в разрядной сетке, то вместо переполнения (антипереполнения ) устанавливается максимально (минимально) возможное
значение числа.

Шестое поколение процессоров Intel началось с Pentium Pro и продолжается по сей день в процессорах Pentium II, Pentium III, Celeron и Хеоn. Его лейтмотивом является динамическое исполнение , под которым понимается исполнение инструкций не в том порядке (out of order), как это предполагается программным кодом , а в том , как " удобно" процессору . Инструкции, поступающие на конвейер , разбиваются на простейшие микрооперации , которые далее выполняются суперскалярным процессорным ядром в порядке, удобном процессору . Ядро процессора содержит несколько конвейеров , к которым подключаются исполнительные
устройства целочисленных вычислений, обращений к памяти, предсказания переходов и вычислений с плавающей точкой . Несколько различных исполнительных устройств могут объединяться на одном конвейере.

Результаты "беспорядочно " выполняемых микроопераций собираются в переупорядочивающем буфере и в корректном порядке записываются в память ( и порты ввода/ вывода). Чтобы можно было одновременно выполнять разные инструкции с одними и
теми же программно-адресуемыми регистрами , внутри процессора выполняется аппаратное переименование регистров ( их у процессора больше, чем доступных по программной модели). Конечно , при этом учитывается и связь по данным, которая сковывает "беспорядочные " параллельные исполнения, даже пользуясь дополнительными регистрами . В процессорах 6-го поколения реализовано исполнение по предположению : процессор пытается исполнить инструкцию, последующую ( по его мнению) за переходом еще до самого перехода . В итоге всех этих ухищрений среднее число тактов на инструкцию у Pentium Pro сократилось до 0,5 такта. В систему команд были введены новые инструкции, позволяющие писать более эффективные коды ( с точки зрения минимизации ветвлений).

Полтакта на инструкцию - звучит , конечно , странно. Но если вспомнить о 8-байтной шине данных, позволяющей за один такт загрузить " кусок" кода , содержащего несколько команд, и о нескольких исполнительных устройствах, одновременно приступающих к их выполнению , то вопросы рассеиваются . Правда, вопрос доставки инструкций и данных из памяти к ядру процессора становится острым, и один первичный кэш здесь не спасает. В то время как частоты ядра процессора (и первичного кэша) неуклонно растут по мере усовершенствования технологий изготовления микросхем ( чем тоньше, тем быстрее), частота системной шины, по которой процессор обменивается данными с памятью , так быстро расти не может . Здесь уже сильно сказываются паразитные параметры проводников и разъемов , которые остаются относительно большими по размерам . Кроме того , и сама оперативная память не такая уж и быстрая.

Проблему доставки " сырья " для работы процессоров 6-го поколения фирма Intel стала решать, используя так называемую двойную независимую шину (DIB). Одна из шин процессора , " фасадная " (FSB - Front Side Bus), связывает его с системной платой , на которой находится и оперативная память . Другая шина связывает процессор со вторичным кэшем , который находится в одной упаковке с процессором ( для пользователя вторичный кэш неотделим от процессора ). Частота FSB долгое время оставалась в пределах 66 МГц, что обеспечивало пиковую пропускную способность 528 Мбайт/ с . Лишь совсем недавно эта частота поднялась до
100 и даже 133 МГц. А вот тактовая частота второй шины пропорциональна частоте ядра - либо полная частота, либо ее половина. Пиковую пропускную способность этой шины можно оценить, умножив ее тактовую частоту на 8 - число байт данных на шине ( у новых процессоров Pentium III разрядность этой шины уже 32 байта). Наличие двойной независимой шины у Intel является одним из атрибутов шестого поколения. Системная шина при этом имеет протокол , принципиально отличающийся от протокола шины процессоров Pentium.

Фирма AMD в своих процессорах шестого поколения ( К6) реализовала " беспорядочное исполнение", но двойную независимую шину применять не стала. Вместо этого была увеличена тактовая частота той же шины, которой пользовался Pentium - весьма эффективной в однопроцессорных конфигурациях . Двойная шина появилась лишь в процессорах K6-III. Благодаря такому решению сокет-7 (Super7) пережил целых два поколения процессоров. По микроархитектуре ( способу реализации " беспорядочного исполнения") процессоры К6 заметно отличаются от своих Int е l' овских собратьев.

Как пятое поколение по ходу развития было "сдобрено " расширением ММХ ( целочисленное), так шестое поколение получило расширение 3DNow! (AMD) и SSE (Intel). Однако в отличие от единого ММХ, эти два расширения не эквивалентны . У них общая идея " потоковой" направленности и реализации SIMD для чисел с плавающей точкой . Поток в данном контексте подразумевает, что с его данными должны выполняться однотипные операции. Кроме того , данные, уже прошедшие обработку, в дальнейшем этим вычислительным процессом использоваться не будут и ими не следует засорять кэш . Теперь появились инструкции загрузки данных в кэш , а также записи в память , минуя кэш . Прежде такого явного управления кэшированием не было.

Седьмое поколение ( по AMD) началось с процессора Athlon. Причисление его к новому поколению мотивировано развитием суперскалярности и суперконвейерности , которая теперь охватила и блок FPU (в прежних поколениях FPU если и конвейеризировали, то не распараллеливали ).

Завершает линию процессоров IA-32 от фирмы Intel процессор Willamette ( в начале 2000 года демонстрировался опытный образец с частотой ядра 1,5 ГГц ). Его микроархитектура существенно отличается от привычной архитектуры Р6. Конвейер этого процессора имеет 20 ступеней , в то время как у Pentium III 12-ступенчатый целочисленный конвейер и 17-ступенчатый FPU. Длинный конвейер упрощает микрооперации каждой стадии , что позволяет повышать тактовую частоту. Однако при этом растет задержка прохождения инструкции, и, что особенно критично, растут потери времени при ошибках в предсказании ветвлений. Чтобы минимизировать вероятность этих ошибок, в процессоре существенно улучшены узлы, отвечающие за загрузку конвейеров , - блок предсказания переходов, буферы микроинструкций . Первичный кэш имеет объем 256 Кбайт, и в кэше применяется упорядочивание инструкций ( чтобы инструкция , следующая за ветвлением , всегда оказывалась в кэше). Существенно повышена производительность исполнительных блоков целочисленных инструкций, но у стандартного FPU (не SIMD) производительность практически та же, что и у Pentium III ( в пересчете на эквивалентную тактовую частоту). Для чисел с плавающей точкой основной упор сделан на инструкции SIMD. В процессоре появился набор инструкций SSE2: 76 новых инструкций обработки данных и управления кэшированием. Новые инструкции обработки работают с числами разных форматов, включая учетверенные слова (64 бит) и числа двойной точности с плавающей точкой (64 бит). Процессор имеет совершенно новую шину с тактовой частотой 100 МГц, но передающую до четырех 64- битных пакетов за такт (Quad Pumped) - производительность до 3,2 Гбайт/с . Эта шина является переходной к шине процессоров IA-64. Процессор устанавливается в Socket-462, естественно, не совместимый ни с каким из существующих сегодня сокетов или слотов . В 2001 году ожидается мобильный вариант Willamette - Northwood, а также серверный вариант - Foster.

Фирма Intel сейчас занимается 64- разрядной архитектурой - такая разрядность позволит считать целые числа с числом разрядов почти до 21019. Первый представитель 64-разрядных процессоров - Itanium, разрабатываемый под кодовым названием Merced. Его архитектура - IA-64 - обеспечивает совместимость с существующим программным обеспечением для используемой ныне архитектуры IA-32.

Микропроцессор Itanium использует 10- уровневый конвейер и может выполнить до шести инструкций за один такт . В новой архитектуре предусмотрено 128 регистров для вычислений с плавающей запятой и столько же для целых чисел, 64 регистра для предсказания переходов и 8 регистров ветвления. На кристалле расположены два блока вычислений с плавающей запятой, обеспечивающие производительность до 6 Гфлоп при операциях с одинарной точностью и до 3 Гфлоп - с повышенной точностью на частоте 1 ГГц . Они существенно ускоряют и обработку графической ЗD-информации. Вся сверхоперативная память разделена на три уровня , два из которых интегрированы на самом кристалле. Кэш - память третьего уровня , выполненная на дискретных микросхемах SRAM общим объемом до 4 Мб, располагается в картридже микропроцессора.

В начале 2000 года фирма Transmeta заявила процессор Crusoe, который является аппаратно-программным комплексом. Этот комплекс работает нетрадиционным способом: инструкции х86 транслируются в длинные слова VLIW (Very Long Instruction Word) регулярной структуры длиной 64 или 128 бит, которые исполняются процессорным ядром . При этом оттранслированные инструкции хранятся в кэш - памяти и при многократном исполнении транслируются лишь единожды. Ядро процессора исполняет элементы кода в строгом порядке. С этим процессором уже могут работать ОС Windows 9x/NT/2000, Linux. Плавающее энергопотребление составляет от 10-20 мВт до 1-3 Вт, в зависимости от выполняемой работы. Процессор имеет наилучшее отношение производительности к потреблению энергии и предназначается для мобильных систем.

Семейство х86 фирмы Intel началось с 16- разрядного процессора 8086. Все следующие модели процессоров, в том числе 32- разрядные (386, 486, Pentium, Pentium Pro, Pentium II, Celeron) и с 64-разрядным расширением ММХ, включают в себя систему команд и программную модель предыдущих, обеспечивая совместимость с ранее написанным программным обеспечением.



Обсудить на форуме

Комментарии

Добавить комментарий
    • bowtiesmilelaughingblushsmileyrelaxedsmirk
      heart_eyeskissing_heartkissing_closed_eyesflushedrelievedsatisfiedgrin
      winkstuck_out_tongue_winking_eyestuck_out_tongue_closed_eyesgrinningkissingstuck_out_tonguesleeping
      worriedfrowninganguishedopen_mouthgrimacingconfusedhushed
      expressionlessunamusedsweat_smilesweatdisappointed_relievedwearypensive
      disappointedconfoundedfearfulcold_sweatperseverecrysob
      joyastonishedscreamtired_faceangryragetriumph
      sleepyyummasksunglassesdizzy_faceimpsmiling_imp
      neutral_faceno_mouthinnocent

    История развития микропроцессоров

    Термин " микропроцессор" был впервые употреблен в 1972 г., хотя годом рождения этого прибора следует считать 1971 г., когда фирма Intel выпустила микропроцессор серии 4004 - " интегральное микропрограммируемое вычислительное устройство ",

    Общие сведения о процессорах

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

    Первый в мире обзор российского 4-ядерного процессора Эльбрус-4С.

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

    Маркировка микросхем Hynix

    HY -> Hynix Memory, говорит о том, что микросхема произведена компанией Hynix AA -> Указывает тип памяти, принимает одно из следующих значений...

    Маркировка микросхем Samsung

    A -> Указывает тип памяти, принимает буквенные значения от А до Z, каждому из которых соответствует определенный тип памяти. На памяти видеокарт вы можете встретить следующие буквы...