Рстория процессоров началась РІ 1979 РіРѕРґСѓ, РєРѕРіРґР° фирма Intel выпустила первый микропроцессор i4004. РћРЅ имел разрядность данных 4 бита, способность адресовать 640 байт памяти, тактовую частоту 108 кГц Рё производительность 0.06 MIPS. Такой процессор СѓР¶Рµ РјРѕРі работать РІ качестве вычислительного СЏРґСЂР° калькулятора. РћРЅ содержал 2300 транзисторов Рё выполнялся РїРѕ технологии СЃ разрешением 10 РјРєРј. Через РіРѕРґ появился его 8-битный “родственник” – i8008, адресующий СѓР¶Рµ 16 РљР± памяти.
Р’ 1974 РіРѕРґСѓ появился 8-разрядный процессор i8080, ставший весьма популярным устройством. РћРЅ СѓР¶Рµ имел частоту 2 РњРіС† Рё адресовал 64 РљР± памяти. 6000 транзисторов позволила разместить 6-РјРєРј технология изготовления. Процессор требовал трех источников питания (+5Р’, +12 Р’ Рё –5Р’) Рё сложной РґРІСѓС… контактной синхронизации. РќР° этом процессоре строились разнообразные терминалы, контроллеры Рё даже первый РџРљ Altair. Р’ нашей стране запоздалым СЌС…РѕРј 8086 стали процессоры 580РРљ80 Рё РљР 580Р’Рњ80, РЅР° базе которых РІ начале Рё середине 80-ых РіРѕРґРѕРІ строилось РјРЅРѕРіРѕ “самодельный ” РџРљ.
Следующим этапом стал процессор i8085 (5 РњРіС†, 0.37 MIPS, 6500 транзисторов, 3-РјРєРј технология). РћРЅ сохранил популярную регистровую архитектуру 8080 Рё программную совместимость, РЅРѕ РІ него добавился РїРѕСЂС‚ последовательного интерфейса, упразднили специальные РРЎ поддержки (тактового генератора Рё системного контроллера) Рё несколько изменили внешний интерфейс. Главным подарком разработчикам аппаратуры стало РѕРґРЅРѕ питающее напряжение +5Р’.
Вариацию на тему 8080 и 8085 представляет процессор Z80 фирмы Zilog. Сохранив программную совместимость с 8080, в него ввели дополнительные регистры, что позволило существенно повысить производительность. Результат оказался впечатляющим – еще недавно популярные компьютеры Sinclair, построенные на Z80, демонстрировали на играх графику, не уступающему PC на 16 –разрядном процессоре 286.
Первый 16–разрядный процессор 8086 фирма Intel выпустила в 1978 году. Частота 5 МГц, производительность 0.33 MIPS, но инструкции уже с 16-битными операндами (позже появились процессоры 8 и 10 МГц). Технология 3 мкм, 29 тыс. транзисторов. Адресуемая память 1 Мб. Регистровая архитектура и система команд существенно отличалась от 8080, но естественно прослеживаются общие идеи. Через год появился 8088 – тот же процессор, но с 8-битной шиной данных. С него началась история IBM PC, наложившая свой отпечаток на дальнейшее развитие этой линии процессоров Intel. Массовое распространение и открытость архитектуры PC привили к лавинообразному появлению программного обеспечения, разрабатываемого крупными, средними и мелкими фирмами и энтузиастами-одиночками. Технический требовал (и сейчас требует) развития процессоров, но груз программного обеспечения PC , которое должно работать и на более новых процессорах, в свою очередь требовал обратной программной совместимости. Таким образом, все нововведения в архитектуре последующих процессоров должны были пристраиваться к существующему ядру. А тут еще сама архитектура PC “подбросила”, например, сложности с использованием вектора прерываний. Фирма Intel зарезервировала первые 32 вектора “для служебного пользования”, однако на них “наехали” прерывания BIOS PC. Один из результатов – дополнительный способ обработки исключений сопроцессора, применяемы в старших моделях PC.
Процессор 80286, заменяющий следующий этап архитектуры, появился только в 1982 году. Он уже имел 134 тыс. транзисторов (технология 1.5 мкм) и адресовал до 16 Мб физической памяти. Его принципиальное новшество – защищенный режим и виртуальная память размером до 1 Гб – не нашли массового применения, процессор большей частью использовался как очень быстрый 8088.
Класс 32-разрядных процессоров был открыт РІ 1985 РіРѕРґСѓ моделью 80386 (275 тыс. транзисторов, 1,5 РјРєРј). Разрядность шины данных (как Рё внутренних регистров) достигла 23 Р±РёС‚, адресуемая физическая память - 4 Гб. Появились новые регистры, новые 32-битные операции, существенно доработан защищенный режим, появился режим V86, страничное управление памятью. Процессор нашел широкое применение РІ PC, Рё РЅР° благодатной почве его свойств стал разрастаться “самый большой вирус” – MS Windows СЃ приложениями. РЎ этого времени стала заметна тенденция “положительной обратной связи”: РЅР° появление РЅРѕРІРѕРіРѕ процессора производители РџРћ реагируют выпуском новых привлекательных продуктов, последующим версиям которых становится СЏРІРЅРѕ тесно РІ рамках этого процессора. Появляется более производительный процессор, РЅРѕ после непродолжительного восторга Рё его ресурсы быстро “съедают” Рё С‚. Рґ. Рто “вечное” движение, конечно, естественно, РЅРѕ есть обоснованное подозрение, что большие ресурсы развращают (или, РїРѕ крайней мере, расслабляют) разработчика РџРћ, РЅРµ принуждая его напрягаться РІ поисках более эффективных СЃРїРѕСЃРѕР±РѕРІ решения задачи. Примером эффективного программирования РјРѕР¶РЅРѕ считать игрушки РЅР° Sinclair ZX-Spectrum, которые реализуются РЅР° игрушечных ресурсах – 8-битном процессоре Рё 64 (128) Кбайт РћР—РЈ. РЎ противоположными примерами большинство пользователей PC сталкиваются регулярно, РЅРѕ СЃ процессором Pentium 200 Рё 32 РњР± РћР—РЈ РЅР° РЅРёС… РЅРµ всегда обращают внимание.
Рстория процессора 386 напоминает историю 8086: первую модель СЃ 32 битной шиной данных (РІ последствии названной 386DX) сменил 386 SX СЃ 16 битной шиной. РћРЅ довольно легко вписывался РІ архитектуру PC AT, ранее базировавшуюся РЅР° процессоре 286.
Процессор Intel486DX появился в 1989 году. Транзисторы –1,2 млн., технология 1мкм. От 386-го существенно отличается размещением на кристалле первичного кэша и встроенного математического сопроцессора (предыдущие процессоры имели возможность использования внешних x87 сопроцессоров). Кроме того, для повышения производительности в этом CISC-процессоре (как и в последующих) применено RISC-ядро. Далее появились его разновидности, отличающиеся наличием или отсутствием сопроцессор, применением внутреннего умножения частоты, политикой записи кэша и другими. Занялись энергосбережением (появился режим SMM), что отразилось и в продолжении линии процессоров 386 (появился процессор Intel386SL).
Р’ 19993 РіРѕРґСѓ появились первые процессоры Pentium частотой 60 Рё 66 МГц – 32 разрядные процессоры СЃ 64-битной шиной данных. Транзисторов 3,1 млн, технология 0,8 РјРєРј, питание 5 Р’. РћС‚ 486-РіРѕ его принципиально отличается суперскалярной архитектурой – способностью Р·Р° РѕРґРёРЅ такт выпускать СЃ конвейеров РґРѕ РґРІСѓС… инструкций (что, конечно РЅРµ означает возможность прохождение инструкций через процессор Р·Р° полтакта, или РѕРґРёРЅ такт). Рнтерес Рє процессору СЃРѕ стороны производителей Рё покупателей PC сдерживался его очень высокой ценой. РљСЂРѕРјРµ того, РІРѕР·РЅРёРє скандал СЃ обнаружением ошибки сопроцессора. Хотя фирма Intel математически обосновала РЅРµ высокую вероятность ее проявления (раз РІ несколько лет), РѕРЅР° РІСЃРµ-таки пошла РЅР° бесплатную замену СѓР¶Рµ проданных процессоров РЅР° исправленные.
Процессоры Pentium с частотой 75, 90 и 100МГц, появившиеся в 1994 году, представили уже второе поколение процессоров Pentium. При почти том же числе транзисторов они выполнялись по технологии 0,6 мкм, что позволило снизить потребляемую мощность. От первого поколения они отличались внутреннем умножением частоты, поддержкой мультипроцессорных конфигураций и имели другой тип корпуса. Появились версии (75 МГц в миниатюрном корпусе) для мобильных применений (блокнотные ПК). Процессоры Pentium второго поколения стали весьма популярны в PC. В 1995 году появились процессоры на 120 и 133 МГЦ, выполненные уже по технологии 0,35 мкм (первые процессоры на 120 МГЦ делались еще по технологии 0,6 мкм). 1996-й называют годом Pentium –появились процессоры на 150, 166 и 200 МГЦ, и Pentium стал рядовым процессором для PC широкого применения.
Параллельно с Pentium развился и процессор Pentium Pro, который отличался новшествами “динамического исполнения инструкций”. Кроме того, в его корпусе разместили и вторичный кэш, для начала объемом 256 Кб. Однако на 16-битных приложениях, а также в среде Windows 95 его применение на дает преимуществ. Процессор содержит 5,5 млн транзисторов ядра, и 15,5 млн транзисторов для вторичного кэша объемом 256 Кб. Первый процессор с частотой 150 МГц появился в начале 1995 года (технология 0,6 мкм), а уже в конце года появились процессоры с частотой 166, 180, 200 МГц (технология 0,35 мкм), у которых кэш достигал 512 Кб.
После долгих обещаний в начале 1997 года появились процессоры Pentium MMX. Расширение ММХ предполагает параллельную обработку группы операндов одной инструкцией. Технология ММХ призвана ускорять выполнение мультимедийных приложений, в частности операции с изображениями и обработку сигналов. Ее эффективность вызывает споры в среде разработчиков, поскольку выигрыш в самих операциях обработки компенсируется проигрышем на дополнительных операциях упаковки-распаковки. Кроме того ограниченная разрядность ставит под сомнение применение ММХ в декодерах MPEG-2, в которых требуется обработка 80-битных операндов. Кроме расширения ММХ эти процессоры, по сравнению с обычным Pentium, имеют удвоенный объем первичного кэша, и некоторые элементы архитектуры, позаимствованные у Pentium Pr, что повышает производительность процессора Pentium ММХ и на обычных приложениях. Процессоры Pentium ММХ имеют 4,5 млн транзисторов и выполнены по технологии -,35 мкм. По состоянию на июнь 1997 г. имеются процессоры с тактовыми частотами 166, 200 и 233 МГц.
Технология ММХ была соединена с архитектурой Pentium Pro – и в мае 1997 года появился процессор Pentium II. Он представляет собой слегка урезанный вариант ядра Pentium Pro с более высокой внутренней тактовой частотой, в которое внесли поддержку ММХ. Трудности размещения вторичного кэша в одном корпусе с процессором преодолели нехитрым способом – кристалл с ядром процессора и набор кристаллов статической памяти и дополнительных схем, реализующих вторичный кэш, разместили на небольшой печатной плате-картридже. Все кристаллы закрыты общей специальной крышкой и охлаждаются специальным вентилятором. Тактовые частоты ядра – 233, 266 и 300 МГц.
Конечно Р¶Рµ, перечисленным моделями РЅРµ исчерпывается весь РјРёСЂРѕРІРѕР№ ассортимент микропроцессоров. Рто только представители семейства процессоров, имеющих обобщенное название С…86. Р СЏРґ фирм (DEC? Motorola, Texas Instruments Рё РґСЂСѓРіРёРµ) имею разработки, существенно отличающиеся РѕС‚ данного семейства; есть РґСЂСѓРіРёРµ классы процессоров Рё Сѓ Intel. Среди РЅРёС… есть гораздо более мощные процессоры относящиеся, Рє таким классам как RISC, так Рё CISC архитектуру. Однако процессоры Pentium особенно СЃ поддержкой РњРњРҐ, имеют самую сложную РІ РјРёСЂРµ систему команд.
Процессоры, совместимые с семейством х86, выпускаются не только фирмой Intel. Традиционный конкурент – AMD – выпускает совместимые процессоры обычного несколько позже, но заметно дешевле, иногда по ряду технических свойств они даже опережают аналогичные процессоры Intel. Фирма Cyrix славится своими быстрыми сопроцессорами.
Система команд процессора
Как уже упоминалось выше, по системе команд и архитектуре различаются процессоры RISC и CISC.
RISC – Reduced (Restricted) Instruction Set Computer – процессоры (компьютеры) СЃ сокращенной системой команд. Рти процессоры обычно имеют набор однородных регистров универсального назначения, Рё РёС… система команд отличается относительной простотой. Р’ результате аппаратная реализация такой архитектуры позволяет СЃ небольшими затратами выполнить Р·Р° минимальное (РІ пределе 1) число тактов синхронизации.
CISC – Complete Instruction Set Computer – процессоры (компьютеры) с полным набором инструкций, к которым и относится семейство х86. Состав и назначения их регистров существенно не однородны, широкий набор усложняет декодирование инструкций, на что расходуются аппаратные ресурсы. Возрастает и число тактов необходимое для выполнения инструкций.
В процессорах рассматриваемого семейства, начиная с 486-го, применяется комбинированная архитектура – CISC-процессор имеет RISC-ядро.
Семейство 80х86 фирмы Intel началось с 16-разрядного процессора 8086. Все старшие модели процессоров, в том числе 32-разрядные (386-й, 486-й, Pentium, Pentium Pro) и с 64-разрядным расширением ММХ, включают в себя подмножество системы команд и архитектуры нижестоящих моделей, обеспечивая совместимость с ранее написанным ПО.
Математический сопроцессор 8087
Сопроцессор 8087, официально (фирмой Intel) называемый NPX (Numeric Processor eXtension), предназначен для расширения вычислительных возможностей центрального процессора (CPU) 8086/8088, 80186/80188. Его применение к системе команд 8086 добавляется 68 мнемоник, включающих арифметические, тригонометрические, экспоненциальные и логарифмические.
Процессор 80286
Процессор 80286, выпущенный в 1982 году, представляет второе поколение 16-разрядных процессоров. Он имеет специальные средства для работы в многопользовательских и многозадачных системах. Самым существенным отличием от 8086/88 является механизм управления адресации памяти, который обеспечивает четырехуровневую систему защиты и поддержки виртуальной памяти. Специальные средства предназначены для поддержки механизма переключения задач (Task switching). Процессор имеет расширенную систему команд, которая кроме команд управления защитой включает все команды 8086 н и несколько новых команд общего назначения. Процессор может работать в двух режимах:
8086 Real Address Mode – режим реальной адресации (или просто реальный режим - Real Mode), полностью совместимый с 8086. В этом режиме возможна адресация до 1 Мбайт физической памяти (на самом деле, за счет “удачной” ошибки, почти на 64 Кб больше).
Protect Virtual Address Mode – защищенный режим виртуальной адресации (или просто защищенный режим - Protect Mode). В этом режиме процессор позволяет адресовать до 16 Мбайт физической памяти, через которые при использовании страничной адресации могут отображаться до 1 Гб виртуальной памяти каждой задачи. Система команд в этом режиме также включает набор команд 8086, расширенный для обеспечения аппаратной реализации функций супервизора многозадачной ОС и виртуальной памяти. Переключение в защищенный режим осуществляется одной командой (с предварительно подготовленными таблицами дескрипторов) достаточно быстро. Обратное переключение в реальный режим возможно только через аппаратный сброс процессора.
Процессор 80386
Рстория 32-разрядных процессоров началась СЃ процессора Intel386. Рти процессора вобрали РІ себя РІСЃРµ свойства СЃРІРѕРёС… 16-разрядных предшественников 8086/88 Рё 80286 для обеспечения программной совместимости СЃ громадным объемом ранее написанного РџРћ. Однако РІ РЅРёС… РїРѕ современным меркам преодолено очень жесткое ограничение РЅР° длину непрерывного сегмента памяти – 64 РљР±. Р’ защищенном режиме 32-битных процессоров РѕРЅРѕ отодвинулось РґРѕ 4 Гб – предела физически адресуемой памяти, что како-то время РјРѕР¶РЅРѕ считать “почти бесконечностью“. Р’СЃРµ эти процессоры имеют поддержку виртуальной памяти объемом РґРѕ 64 РўР±, встроенный блок управления памятью поддерживает механизмы сегментации Рё страничной трансляции адресов (Paging). Процессоры обеспечивают четырехуровневую системы защиты памяти Рё РІРІРѕРґР°-вывода, переключения задач. РћРЅРё имеют расширенную систему команд, включающую РІСЃРµ команды 8086, 80286
Процессор 80486
В 1989 г. фирма Intel выпустила микропроцессор Intel-80486. Все процессоры семейства 486 имеют 32-разрядную архитектуру, внутреннюю кэш-память 8 КВ со сквозной записью (у DX4 -16 КВ). Модели SX не имеют встроенного сопроцессора. Модели DX2 реализуют механизм внутреннего удвоения частоты (например, процессор 486DX2-66 устанавливается на 33-мегагерцовую системную плату), что позволяет поднять быстродействие практически в два раза, так как эффективность кэширования внутренней кэш-памяти составляет почти 90 процентов. Процессоры семейства DX4 - 486DX4-75 и 486DX4-100 предназначены для установки на 25-ти и 33-мегагерцовые платы. По производительности они занимают нишу между DX2-66 и Pentium-60/66, причем быстродействие компьютеров на 486DX4-100 вплотную приближается к показателям Pentium 60. Напряжение питания составляет 3,3 вольта, то есть их нельзя устанавливать на обычные системные платы. Процессор 486DX4-75 предназначен, прежде всего, для использования к компьютерам типа Notebook, а 486DX4-100 - в настольных системах.
Процессор Pentium
Р’ 1993 Рі. Intel анонсировала Рѕ РЅРѕРІРѕРј детище – процессоре Pentium. Процессор Pentium является РѕРґРЅРёРј РёР· самых мощных РІ настоящее время. РћРЅ относится Рє процессорам СЃ полным набором команд, хотя его СЏРґСЂРѕ имеет СЂРёСЃРє-архитектуру. Рто 64-разрядный суперскалярный процессор (то есть выполняет более РѕРґРЅРѕР№ команды Р·Р° цикл), имеет 16 РљР’ внутренней РєСЌС€-памяти - РїРѕ 8 РљР’ отдельно для данных Рё команд, встроенный сопроцессор. Несколько слов Рѕ процессорах семейства OverDrive.Р’ РѕСЃРЅРѕРІРЅРѕРј это процессоры СЃ внутренним удвоением частоты, предназначенные для замены процессоров SX. Что касается широко разрекламированного РІ СЃРІРѕРµ время процессора OverDrive РЅР° РѕСЃРЅРѕРІРµ Pentium (так называемый P24T или Pentium SX), то СЃСЂРѕРєРё его выпуска неоднократно срывались. Поскольку РїСЂРё работе СЃ существующим программным обеспечением процессоры Pentium РЅРµ достигают максимального быстродействия, фирма Intel для оценки производительности СЃРІРѕРёС… процессоров предложила специальный индекс - iCOMP (Intel COmparative Microprocessor Performance), который, РїРѕ ее мнению, более точно отражает возрастание производительности РїСЂРё переходе Рє РЅРѕРІРѕРјСѓ поколению процессоров (некоторые РёР· выпущенных СѓР¶Рµ моделей компьютеров РЅР° РѕСЃРЅРѕРІРµ Pentium РїСЂРё выполнении определенных программ демонстрируют даже меньшее быстродействие, чем компьютеры РЅР° РѕСЃРЅРѕРІРµ 486DX2-66, это связано как СЃ недостатками конкретных системных плат, так Рё СЃ РЅРµ оптимизированностью программных РєРѕРґРѕРІ).
Расширение ММХ
Расширение ММХ ориентированно на мультимедийное, 2D и 3D-графическое и коммуникационное применение. Основная идея расширения MMX заключается в одновременной обработки нескольких элементов данных за одну инструкцию – так называемая технология SIMD (single Instruction – Multiple Data).
Расширение ММХ использует новые типы упакованных 64-битных данных:
упакованные байты (Packed byte) – восемь байт;
упакованные слова (Packed word) – четыре слова;
упакованные двойные слова (Packed doubleword) – два двойных слова;
учетверенное слово (Quadword) – одно слово.
Рти типы данных РјРѕРіСѓС‚ специальным образом обрабатываться РІ регистрах РњРњРҐ0-РњРњРҐ7, представляющих СЃРѕР±РѕР№ младшие биты стека 80-битных регистров FPU. Как Рё регистры FPU, эти регистры РЅРµ РјРѕРіСѓС‚ использоваться для адресации памяти, совпадение регистров FPU Рё РњРњРҐ накладывает ограничения РЅР° чередование РєРѕРґРѕРІ FPU Рё РњРњРҐ – забота РѕР± РёС… независимости лежит РЅР° программисте приложений РњРњРҐ.
Еще одна особенность технологии ММХ – поддержка арифметики с насыщением (saturating arithmetic). Ее отличие от обычной арифметики с циклическим переполнением (wraparound mode) заключается в том, что при возникновении переполнения в результате фиксируется максимальное возможное значение для используемого типа данных, а перенос игнорируется. В случае антипереполнения в результате фиксируется минимальное возможно значение. Граничные значения определяются типом (знаковые или беззнаковые) и разрядностью переменных. Такой режим вычислений актуален, например, для вычисления цветов в графике.
В систему команд введено 57 дополнительных инструкций для одновременной обработки нескольких единиц данных. Одновременно обрабатываемое 64-битное слово может содержать как одну единицу обработки, так и 8 однобайтных, 4 двухбайтных или 2 четырехбайтных операнда. Новые инструкции включают следующие группы:
арифметические (Arithmetic Instructions), включающие сложение и вычитание в разных режимах, умножение и комбинацию умножения и сложения;
сравнение (Comparison Instructions) элементов данных на равенство или по величине;
преобразование форматов (Conversion Instructions);
логические (Logical Instructions) – Р, Р-РќР•, РЛРи Рсключающее РР›Р, выполняемые над 64-битными операндами;
сдвиги (Shift Instructions) – логические и арифметические;
пересылки данных (Data Transfer Instructions) между регистрами ММХ и целочисленными регистрами или памятью;
очистка ММХ (Empty MMX State) – установка признаков пустых регистров в слове тегов.
Список литературы
РЈРёРЅРЅ Р›. Р РѕС€. РРІРј Рё микропроцессорная техника, -Рњ., 1998
Пятибаров В.В. Устройство процессора //Компьютер пресс, 1997., №5
Мешанов К.А. Процессор изнутри // Компьютер пресс, 1998., №2,3
Для подготовки данной работы были использованы материалы с сайта http://referat2000.bizforum.ru/