Автор Анна Евкова
Преподаватель который помогает студентам и школьникам в учёбе.

Классификация, структура и основные характеристики современных микропроцессоров для ПК

Содержание:

Введение

Если еще недавно компьютеры были только у тех людей, чья работа была непосредственно связана с ними, то сегодня сложно представить себе жизнь без персональных компьютеров. ПК есть почти в каждой семье, зачастую, даже не в единичном экземпляре. Их сфера применения весьма обширна организация рабочего места в офисе, или домашний ПК для выхода в интернет, или мощная игровая система. Сердцем же персонального компьютера можно назвать его центральный процессор (Central Processor Unit – CPU), который управляет его работой и в котором выполняется большая часть вычислений. Во многом от микропроцессора зависит производительность ПК в целом.

Микропроцессоры выполняют роль не только центрального процессора ПК, свой микропроцессор имеет звуковая и графическая плата, свой процессор может иметь даже клавиатура или компьютерная мышь. Компьютерная техника не единственная сфера применения микропроцессоров. Микропроцессоры установлены в телефоны, телевизоры, микроволновые печи, холодильники, автомобили и т.д. управляют станками на заводах. Возможности современных процессоров не идут ни в какое сравнение с процессорами недавнего прошлого. А с ростом их возможностей ширится и их сфера применения.

Развитие микропроцессоров напрямую оказывает влияние на нашу жизнь в самых разных ее областях.

Цель данной курсовой работы мы изучить классификацию, структуру и характеристики микропроцессоров ПК, историю их создания и принципы работы.

1.1 Определение микропроцессора

Микропроцессором называется программно-управляемое устройство, осуществляющее прием, обработку и выдачу цифровой информации, реализованное в виде одной микросхемы или комплекта из нескольких специализированных микросхем.

В процессе длительного развития произошла дифференциация микропроцессоров по функционально-структурным особенностям и областям применения. В настоящее время имеются следующие основные классы микропроцессоров: универсальные микропроцессоры; микроконтроллеры; сигнальные процессоры. [5, с. 5]

Универсальные микропроцессоры предназначаются для применения во всех типах вычислительных устройств: персональных ЭВМ, рабочих станциях, а в последнее время и в массово-параллельных суперЭВМ. Кроме того, универсальные микропроцессоры используются в телекоммуникационном оборудовании, системах автоматического управления и встроенной промышленной автоматике. Основной характеристикой этих микропроцессоров является наличие развитых устройств для эффективной реализации операций с плавающей точкой над 32 и 64-разрядными и более длинными операндами. В последнее время в состав этих микропроцессоров включаются функциональные блоки для обработки мультимедийной информации. [3, с. 45] Доминирующее положение на рынке универсальных процессоров занимают микропроцессоры с системой команд х86, основными производителями которых являются компании Intel, AMD и VIA. [3, с. 137]

Микроконтроллер — это микропроцессорное устройство, специализированное на выполнение определенных функций управления, регулирования, идентификации. От обычного микропроцессора он отличается наличием встречных таймеров, счетчиков, ПЗУ, ОЗУ, схем сравнения, аналого-цифрового преобразования, последовательной связи и т. д. Общее число типов кристаллов микроконтроллеров с различными системами команд превышает 500, и все они, в силу существования изделий с их использованием, занимают свою устойчивую долю рынка. Лидером в производстве микроконтроллеров является фирма Motorola, в числе ведущих производителей этих изделий находятся также фирмы NEC, Mitsubishi, Hitachi, Intel, Texas Instruments, Philips, Atmel, ST-Microelektronics, Microchip. [5, с. 6]

Сигнальные процессоры — относятся к классу специализированных микропроцессоров, ориентированных на выполнение алгоритмов цифровой обработки сигналов в реальном времени. Это обусловливает их сравнительно малую разрядность и преимущественно целочисленную обработку. Однако современные сигнальные процессоры способны проводить вычисления с плавающей точкой над 40-разрядными операндами. Основными производителями сигнальных процессоров являются фирмы Texas Instruments, Analog Devices, Motorola, Nec. [3, с. 45]

Однако говоря о микропроцессоре персонального компьютера, мы в первую очередь имеем ввиду его центральный процессор (являющийся универсальным микропроцессором). Далее в данной работе речь пойдет именно о CPU.

1.2 История создания и эволюции микропроцессоров

В 1969 году Intel (фирма основана в 1968) объявила о создании микросхемы, содержащей 1 Кбит памяти типа RAM. Тогда еще не существовало других микрокомпьютерных чипов, к которым можно было бы подключить эту микросхему памяти.

Создание микропроцессора началось с того, что японская компания Busicom заказала у Intel 12 микросхем, которые должны были использоваться в новом программируемом калькуляторе, но Тед Хофф из Intel предложил более интересное решение: одну универсальную микросхему, выбирающую команды из полупроводниковой памяти. Таким образом, полученное ядро могло справиться не только с требованиями Busicom, но и с множеством других задач.

Эта разработка оказалась настолько интересной, что Хоффу удалось убедить руководство компании выкупить права на нее у Busicom за $ 60 тыс. и развить идею. В результате в конце 1971 года была представлена микросхема i4004 стоимостью $ 200, содержащая 2250 транзисторов и работающая на частоте 92,6 кГц. [5, с. 17] 1 апреля 1972 года фирма Intel выпускает первый 8-битный процессор Intel 8008, а в апреле 1974 года его усовершенствованную версию — Intel 8080. Новый процессор выпускался по новейшей тогда 6-микронной NMOS технологии, что позволило разместить на кристалле 4500 транзисторов Процессор, хотя и был построен на архитектуре Intel 8008, но имел множество отличий от своего предшественника, благодаря которым и получил большую популярность. В новом процессоре была очень развита система команд — 16 команд передачи данных, 31 команда для их обработки, 28 команд для перехода (с прямой адресацией), 5 команд управления. В микропроцессоре Intel 8080 не было команд умножения, для их использования приходилось применять сопроцессор. Процессор, благодаря наличию 16-разрядной адресной шины, мог адресовать 64 Кбайт памяти, которая теперь не разделялась на память команд и данных. Хотя процессор и был 8-разрядным и содержал 7 8-битных регистров (A, B, C, D, E, H, L), он мог обрабатывать и 16-разрядные числа, для этого объединялись некоторые пары регистров (BC, DE, HL). В новом процессоре использовался стек внешней памяти (в i8008 стек был внутренним).

На базе микропроцессора Intel 8080 фирмой MITS был выпущен «первый в мире миникомпьютерный комплект, который может соперничать с промышленными образцами» (персональный компьютер) Altair-8800, который пользовался невероятно большой по тем временам популярностью. Множество фирм, видя, как развивается микропроцессорная индустрия, также пытались выпускать аналогичные продукты, практически все из которых являлись копиями процессора i8080 с небольшими изменениями. В числе таких фирм были Zilog (со своим процессором Zilog Z80), MOS Technology (со своими процессорами MOS Technology 6502), AMD (со своим процессором 8080A), также копии i8080 производили Mitsubishi, National Semiconductor, NEC, Siemens и другие. Отечественным аналогом был микропроцессорный комплект серии КР580, в частности, микропроцессор КР580ВМ80А. 8 июня 1978 года Intel выпускает свой первый шестнадцатиразрядный процессор Intel 8086, а 1 июня 1979 года его упрощенную версию Intel 8088. На основе Intel 8088 компания IBM выпускает в 1981 году персональный компьютер IBM PC. Первоначальный успех 8088 воодушевил компанию Intel на его дальнейшие усовершенствования. Особо примечательна версия 80386, выпущенная в 1985 году,- этот процессор был уже 32-разрядным. За ней последовал улучшенный вариант, который, естественно назывался 80486. Последующие версии назывались Pentium и Core. Эти микросхемы используются практически во всех современных персональных компьютерах. Архитектура процессоров этого семейства часто обозначается общим термином x86. [2, с. 44] Совместимые процессоры, производимые фирмами AMD и VIA, тоже называются x86.

В середине 80-х годов на смену CISC пришли компьютеры RISC. RISC-команды были проще и выполнялись гораздо быстрее. В 90-х появились суперскалярные процессоры, которые могли исполнять много команд одновременно, часто не в том порядке, в котором они располагаются в программе.

Вплоть до 1992 года персональные компьютеры были 8-, 16- и 32-разрядными. Затем появилась революционная 64-разрядная модель Alpha производства DEC – RISC-компьютер, намного превзошедший по производительности все прочие ПК.

В 1990-е годы компьютерные системы ускорялись посредством различных микроархитектурных оптимизаций. Однако к концу 1990-х годов тенденция к повышению скорости стала снижаться из-за двух важных препятствий в области проектирования: был исчерпан запас возможностей для ускорения программ, а охлаждение процессоров стало обходиться слишком дорого. Многие компьютерные компании, стремившиеся к построению более быстрых процессоров, обратились к параллельным архитектурам как к средству выжать больше быстродействия из своей электроники. В 2001 году компания IBM представила двухъядерную архитектуру POWER4 – первый образец крупносерийного центрального процессора, включавшего два процессора на одной подложке. В наши дни большинство процессоров для настольных систем и серверов состоят из нескольких процессоров. [2, с. 45]

1.3 Классификация микропроцессоров

Некоторые авторы относят к микропроцессорам только устройства, реализованные строго на одной микросхеме. Такое определение расходится как с академическими источниками, так и с коммерческой практикой (например, варианты микропроцессоров Intel и AMD в корпусах типа SECC и подобных, такие, как Pentium II, были реализованы на нескольких микросхемах).

В настоящее время, в связи с очень незначительным распространением процессоров, не являющихся микропроцессорами, в бытовой лексике термины «микропроцессор» и «процессор» практически равнозначны.

С момента создания первого однокристального процессора темпы развития технологий в этой отрасли промышленности постоянно увеличиваются. Поиски решений, нацеленных на достижение как можно большей продуктивности и эффективности, ведутся множеством фирм и исследовательских коллективов практически во всех возможных направлениях. Интенсивная работа на таком широком фронте привела к созданию тысяч разновидностей процессоров. На схеме, приведенной на рис.1, показаны только наиболее важные критерии, по которым можно классифицировать современные процессоры. [9, c. 301-302]

Рис. 1 Классификация микропроцессоров (Источник: Макаров Н. В., Волков В. Б. Информатика: Учебник для вузов. – СПб.: Питер, 2011. – 576 с.)

При классификации процессоров по системе команд можно выделить две глобальные категории:

-CISC (Complex Instruction Set Computer) – процессор с полным набором инструкций, к которым относится и семейство х86. Состав и назначение их регистров существенно неоднородны, широкий набор команд усложняет декодирование инструкций, на что расходуются аппаратные ресурсы. Возрастает число тактов, необходимое для выполнения инструкций. [6, с. 35]

-RISC (Reduced Instruction Set Computer) – процессоры с сокращенной системой команд. Эти процессоры обычно имеют набор однородных регистров универсального назначения, причем их число может быть большим. Система команд отличается относительной простотой, коды инструкций имеют четкую структуру, как правило, с фиксированной длиной. В результате аппаратная реализация такой архитектуры позволяет с небольшими затратами декодировать и выполнять эти инструкции за минимальное (в пределе 1) число тактов синхронизации. Определенные преимущества дает и унификация регистров. [6, с. 35]

RISC-процессоры имеют команды обработки типа «регистр ← регистр, регистр» и команды сохранения «store» и загрузки «load» типа «память ← регистр» и «регистр ← память» соответственно. Функциональные преобразования могут выполняться только над содержимым регистров, а результат помещается также в регистр.

Как правило, в CISC-процессорах команды имеют много разных форматов и требуют для своего представления различного числа ячеек памяти. Это обусловливает определение типа команды в ходе ее дешифрации при исполнении, что усложняет устройство управления процессора и препятствует повышению тактовой частоты до уровня, достижимого в RISC-процессорах на той же элементной базе.

Очевидно, что RISC-процессоры эффективны в тех областях применения, в которых можно продуктивно использовать структурные способы уменьшения времени доступа к оперативной памяти. Если программа генерирует произвольные последовательности адресов обращения к памяти и каждая единица данных используется только для выполнения одной команды, то фактически производительность процессора определяется временем обращения к основной памяти. В этом случае использование сокращенного набора команд только ухудшает эффективность, т.к. требует пересылки операндов между памятью и регистром.

Развитие микропроцессоров происходит при постоянном стремлении сохранения преемственности программного обеспечения и повышения производительности за счет совершенствования архитектуры и увеличения тактовой частоты. Сохранение преемственности программного обеспечения и повышение производительности, вообще говоря, противоречат друг другу. Так, например, процессоры с системой команд x86, относящиеся к классу CISC-процессоров вплоть до Pentium Pro, имели более низкие тактовые частоты по сравнению с микропроцессорами ведущих компаний-производителей RISC-процессоров, изготавливаемых по одним и тем же технологическим нормам. Для этих процессоров существовали приложения, на которых производительность x86 микропроцессоров была значительно ниже, чем у RISC-процессоров, реализованных на той же элементной базе. Однако возможность использования совместимого программного обеспечения для различных поколений x86 процессоров обеспечивала им устойчивое доминирующее положение на рынке.

Затем на основе «пионерских» разработок компаний NexGen и AMD, позднее подхваченных Intel, была реализована успешная попытка решения проблемы повышения производительности в рамках архитектуры x86. Эти компании, сохраняя преемственность по системе команд с CISC-микропроцессорами семейства x86, создали новые устройства с использованием элементов RISC-архитектуры. Первыми примерами такого подхода могут служить микропроцессоры Nx586 (NexGen), К5, К6 (AMD), использующие концепцию RISC-ядра. В микропроцессор встраивается аппаратный транслятор, превращающий команды х86 в команды внутреннего RISC-процессора. При этом одна команда х86 может порождать до четырех команд RISC-процессора. Исполнение команд происходит, как в развитом суперскалярном процессоре. Компания Intel впервые использовала этот подход в своем микропроцессоре Pentium Pro, что весьма укрепило ее позиции на фоне достижений RISC-архитектур. [3, с. 61-63] Хотя при таком «гибридном» подходе производительность ниже, чем в архитектуре RISC, новая архитектура CISC имеет ряд преимуществ, поскольку позволяет использовать старое программное обеспечение. [2, с. 84]

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

2.1 Структура и принцип работы процессора

Начиная с первого поколения ЭВМ, и до настоящего времени, все процессоры разрабатываются на основе двоичной системы счисления – это означает, что для реализации процессора необходимо любое физическое устройство, поддерживающее два устойчивых состояния. Основой современной элементной базы является твердотельный планарный транзистор на кремниевой подложке, изготавливаемый по диффузионной технологии.

Технологический процесс представляет собой поэтапную (по областям транзистора) диффузию примесей в кристаллическую структуру кремниевой подложки при температурах порядка 800° с очень жесткими ограничениями на градиент температуры. Для получения приемлемых характеристик градиент должен иметь порядок ±0,1 °/час. [7, с. 7]

Принцип работы любого процессора заключается в следующем. На вход CPU по системной шине поступают сигналы в виде логических 0 или 1 (т.е. двоичные сигналы), эти сигналы декодируются и на основании набора инструкций, интегрированных в CPU, управляют работой процессора, затем на выход процессора поступают «результаты работы CPU» в виде логических 0 и 1. Логические 0 и 1 определяются напряжением на линиях шины. Так в 1,5-вольтовой системе напряжению 1,5 В соответствует 1, а 0 В – 0.

Процессор «принимает решение» в результате функционирования так называемых логических вентилей, каждый из которых состоит по крайней мере из одного транзистора. Логические вентили процессора используют принципы, заложенные Лейбницем и Дж. Булем и развитые в работах Шеннона и Винера. Главными булевыми операторами являются И, ИЛИ, НЕ, и НЕ-И, а также всевозможные комбинации этих операторов.

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

Функционирование всех элементов процессора синхронизировано с помощью таймера. Во время каждого такта происходит обращение к специальному модулю памяти процессора – счетчику программ (Program Counter – PrC), который содержит адрес следующей выполняемой инструкции. Блок управления предает инструкцию из памяти в регистры инструкций.

В то время ка процессор выполняет инструкцию из регистра инструкций, в счетчик программ поступает ссылка на следующую инструкцию. Некоторые инструкции обрабатываются непосредственно в блоке управления. Однако большинство инструкций поступает в арифметико-логическое устройство (Arithmetic and Logic Unit – ALU), в котором выполняются арифметические и логические операции над числами. (В современных процессорах реализуется значительно более сложная схема обработки команд и данных, но главный принцип работы классической схемы Неймана остался) [6, с. 91-92]

Главными функциональными компонентами процессора являются:

1) Арифметико-логическое устройство выполняет сложение, вычитание и другие простые операции над входными данными и помещает результат в выходной регистр. Содержимое этого выходного регистра может записываться обратно в один из регистров или сохраняться в памяти, если это необходимо. [2, с. 77]

2) Устройство управления (УУ): формирует и подает во все блоки машины в нужные моменты времени определенные сигналы управления (управляющие импульсы), обусловленные спецификой выполняемой операции и результатами предыдущих операций; формирует адреса ячеек памяти, используемых выполняемой операцией, и передает эти адреса в соответствующие блоки компьютера; опорную последовательность импульсов устройство управления получает от генератора тактовых импульсов. [8, с. 117]

3) Микропроцессорная память предназначена для кратковременного хранения, записи и выдачи информации, используемой в вычислениях непосредственно в ближайшие такты работы машины. Микропроцессорная память строится на регистрах (быстродействующие ячейки памяти разной длины) и используется для обеспечения высокого быстродействия компьютера, так как основная память не всегда обеспечивает скорость записи, поиска и считывания информации, необходимую для эффективной работы быстродействующего микропроцессора. [8, с. 117]

4) Кэш-память – дополнительное быстродействующее хранилище копий блоков информации из основной памяти, вероятность обращения к которым в ближайшее время велика. Кэш не может хранить копия всей основной памяти, поскольку его объем во много раз меньше основной памяти. Он хранит лишь ограниченное количество блоков данных и каталог (cache directory) – список их текущего соответствия областям основной памяти. Кроме того, кэшироваться может не вся память, доступная процессору. [6, с. 146]

5) Интерфейсная система микропроцессора предназначена для сопряжения и связи с другими устройствами компьютера; включает в себя внутренний интерфейс микропроцессора, буферные запоминающие регистры и схемы управления портами ввода-вывода и системной шиной. [8, с. 117]

6) Генератор тактовых импульсов генерирует последовательность электрических импульсов, частота которых определяет тактовую частоту микропроцессора. Промежуток времени между соседними импульсами определяет время одного такта, или просто такт работы машины. Частота генератора тактовых импульсов является одной из основных характеристик персонального компьютера и во многом определяет скорость его работы, поскольку каждая операция в вычислительной машине выполняется за определенное количество тактов. [8, с. 117]

Физическая структура процессора достаточно сложна. Ядро процессора содержит главный управляющий и исполняющий модули –блоки выполнения операций над целочисленными данными. К локальным управляющим схемам относятся: блок с плавающей запятой, модуль предсказания ветвлений, модуль преобразования CISC-инструкций во внутренний RISC-микрокод, регистры микропроцессорной памяти, регистры кэш-памяти первого уровня (отдельно для данных и инструкций), шинный интерфейс и многое другое.

В состав микропроцессора обычно входят следующие физические компоненты:

-Core – ядро микропроцессора;

-Execution Unit – исполняющий модуль;

-Integer ALU – АЛУ для операций с целыми числами (с фиксированной запятой);

-Registers –регистры;

-Floating Point Unit – блок для работы с числами с плавающей запятой;

-Primary Cache – кэш первого уровня, в том числе кэш данных и кэш команд;

-Instruction Decode and Prefetch Unit и Branch Predictor – блоки декодирования инструкций, опережающего их исполнения и предсказания ветвлений;

-Bus Interface – интерфейсные шины, в том числе 64- и 32-битные, и выход на системную шину к оперативной памяти.

Функционально микропроцессор можно разделить на две части:

-операционную часть, содержащую устройство управления, арифметико-логическое устройство (АЛУ) и микропроцессорную память (за исключением нескольких адресных регистров);

-Интерфейсную часть, содержащую адресные регистры микропроцессорной памяти, блок регистров команд – регистры памяти для хранения кодов команд, выполняемых в ближайшие такты; схемы управления шиной и портами.

Обе части микропроцессора работают параллельно, причем интерфейсная часть опережает операционную, так что выборка очередной команды из памяти (ее запись в блок регистров команд и предварительный анализ) выполняется во время выполнения операционной частью предыдущей команды. Современные микропроцессоры имеют несколько групп регистров в интерфейсной части, работающих с различной степенью опережения, что позволяет выполнять операции в конвейерном режиме. Такая организация микропроцессора позволяет существенно повысить его эффективное быстродействие. [8, с. 143-144]

Устройство управления является функционально наиболее сложным устройство ПК – оно вырабатывает управляющие сигналы, поступающие по кодовым шинам инструкций во все блоки машины.

Рис. 2 Упрощенная функциональная схема УУ. (Источник: Бройдо В. Л., Ильина О. П. Архитектура ЭВМ и систем: учебник для вузов. – СПб.: Питер, 2006. – 718 с.)

На рисунке 2 представлены:

-регистр команд – запоминающий регистр, в котором хранится код команды: код выполняемой операции (КОП) и адреса операндов, участвующих в операции. Регистр команд расположен в интерфейсной части микропроцессора, в блоке регистров команд;

-дешифратор операций – логический блок, выбирающий в соответствии с поступающим из регистра команд кодом операции один из множества имеющихся у него выходов;

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

Узел формирования адреса (находится в интерфейсной части микропроцессора) – устройство, вычисляющее полный адрес ячейки памяти (регистра) по реквизитам, поступающим из регистра команд и регистров микропроцессорной памяти;

Кодовые шины данных, адресов и инструкций – часть внутренней интерфейсной шины микропроцессора.

Арифметико-логическое устройство предназначено для выполнения арифметических и логических операций преобразования информации. Функционально в простейшем варианте АЛУ (рис.3) состоит из двух регистров, сумматора и схем управления (местного устройства управления).

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

Регистры – быстродействующие ячейки памяти различной длины: регистр 1 имеет разрядность двойного слова, а регистр 2 – разрядность слова. При выполнении операций в регистр 1 помещается первое число, участвующее в операции, а по завершении операции – результат; в регистр 2 – второе число, участвующее в операции (по завершении операции информация в нем не изменяется). Регистр 1 может и принимать информацию с кодовых шин данных, и выдавать информацию на них; регистр 2 только получает информацию с этих шин.

Рис.3 Функциональная схема АЛУ (Источник: Бройдо В. Л., Ильина О. П. Архитектура ЭВМ и систем: учебник для вузов. – СПб.: Питер, 2006. – 718 с.)

Схемы управления принимают по кодовым шинам инструкций управляющие сигналы от устройства управления и преобразуют их сигналы для управления работы регистров и сумматора АЛУ.

АЛУ выполняет арифметические операции сложения, вычитания, умножения и деления только над двоичной информацией с запятой, фиксированной после последнего разряда, то есть только над целыми двоичными числами. Выполнение операций над двоичными числами с плавающей запятой и над двоично-кодированными десятичными числами осуществляется с привлечением математического сопроцессора или по специально составленным программам.

Микропроцессорная память (МПП) базового микропроцессора 8088 включает в себя 14 двухбайтовых запоминающих регистров. У микропроцессора 80286 и выше имеются дополнительные регистры, например, у микропроцессора типа VLIW есть 256 регистров, из которых 128 – регистры общего назначения. У микропроцессора 80386 и выше некоторые регистры, в том числе и регистры общего назначения, - четырехбайтовые (у микропроцессора Pentium есть и восьмибайтовые регистры). Но в качестве базовой модели, в частности для языка программирования Assembler и отладчика программ Debug, используются 14-регистровая система микропроцессора.

Все регистры можно разделить на четыре группы (рис. 4):

-универсальные регистры: AX, BX, CX, DX;

-сегментные регистры: CS, DS, SS, ES;

-регистры смещения: IP, SP, BP, SI, DI;

-регистр флагов: FL.

Рис. 4 Регистры микропроцессора (Источник: Бройдо В. Л., Ильина О. П. Архитектура ЭВМ и систем: учебник для вузов. – СПб.: Питер, 2006. – 718 с.)

Если регистры 4-байтовые или 8-байтовые, их имена несколько изменяются: например, 4-байтовые универсальные регистры AX, BX, CX, DX именуются EAX, EBX, ECX, EDX соответственно. [8, c. 144-148]

Интерфейсная часть микропроцессора предназначена для связи и согласования микропроцессора с системной шиной ПК, а также для приема, предварительного анализа команд выполняемой программы и формирования полных адресов операндов и команд. Интерфейсная часть включает в свой состав:

-адресные регистры микропроцессорной памяти;

-узел формирования адреса;

-блок регистров команд, являющийся буфером команд в микропроцессоре;

-внутреннюю интерфейсную шину микропроцессора;

-схемы управления шиной и портами ввода-вывода.

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

Порты ввода вывода – это пункты системного интерфейса ПК, через которые микропроцессор обменивается информацией с другими устройствами. Всего портов у микропроцессора может быть 65536 (равно количеству разных адресов, которые можно представить числом формата «слово». Каждый порт имеет адрес – номер порта; по существу, это адрес ячейки памяти, являющейся частью устройства ввода-вывода, использующего этот порт, а не частью основной памяти компьютера.

Порту устройства соответствуют аппаратура сопряжения и два регистра памяти – для обмена данными и управляющей информацией. Некоторые внешние устройства используют и основную память для хранения больших объемов информации, подлежащей обмену. Многие стандартные устройства (НЖМД, НГМД, клавиатура, принтер, сопроцессор и т.д.) имеют постоянно закрепленные за ними порты вводы-вывода.

Схема управления шиной и портами выполняет следующие функции:

-формирование адреса порта и управляющей информации для него (переключение порта на прием или передачу и т.д.);

-прием управляющей информации от порта, информации о готовности порта и его состоянии;

-организация сквозного канала в системном интерфейсе для передачи данных между портом устройства ввода-вывода и микропроцессором.

Схема управления шиной и портами использует для связи с портами кодовые шины инструкций, адреса и данных системной шины: при доступе к порту микропроцессор посылает сигнал по кодовой шине инструкций, который оповещает все устройства ввода-вывода, что адрес на кодовую шину адреса является адресом порта, а затем посылает и сам адрес порта. Устройство с совпадающим адресом порта дает ответ о готовности. После этого по кодовой шине данных осуществляется обмен данными.

Существует несколько состояний (режимов) процессора определяющих его поведение при выполнении различных команд и возможность доступа к различным данным:

-Реальный режим (Real Mode) соответствует возможностям процессоров 8086/8088 позволяя адресовать не более 1 Мбайт памяти. [1, с. 113]

-Защищенный режим (Protected Mode или Protected Virtual Address Mode) появился впервые в процессоре 80286, но имел не все возможности доступные в 32-разрядных процессорах. Является основным (наиболее естественным) режимом работы 32-разрядных процессоров. В этом режиме процессор позволяет адресовать до 4 Гбайт физической памяти, посредством которой при использовании механизма страничной адресации могут отображаться до 64 Тбайт виртуальной памяти каждой задачи. [6, с. 111] Если физическая память полностью загружена, то данные, не поместившиеся в память, располагаются на жестком диске. Таким образом, процессор работает не с реальными, а с виртуальными адресами, которые управляются с помощью специальных таблиц, чтобы информацию можно было найти (или снова записать). Эту память называют еще виртуальной памятью, потому что фактически она не существует. Кроме того, в защищенном режиме возможна поддержка мультизадачного режима (Multitasking). При этом процессор может выполнять различные программы в выделенные кванты времени, отведенные каждой из программ (пользователю же кажется, что программы выполняются одновременно) [1, с. 113] Режим виртуального процессора 8086 – Virtual 8086 Mode или V86 – является особым состоянием задачи защищенного режима, в котором процессор функционирует как 8086 с возможностью использования 32-разрядных адресов и операндов. [6, с. 111]

-Виртуальный режим. Впервые, начиная с 80386, процессоры могут эмулировать работу нескольких процессоров 8086 (максимум 256) и, тем самым, обеспечить многопользовательский режим так, чтобы на одном ПК можно было запустить одновременно даже различные операционные системы. Естественно увеличивается и возможное количество выполняемых приложений.

-64-разрядный режим. Впервые с процессоров AMD64, в современных высокопроизводительных процессорах x86 поддерживается 64-разрядная обработка данных, т.е. основные регистры процессора имеют размер 64 бита. Правда, в процессорах линейки x86 64-разрядный режим реализован как дополнительный, а основным остается 32-разрядный. Процессор может по командам в программе переключаться между этими режимами работы. [1, с. 113-114]

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

-современные процессоры используют конвейерную обработку. Под конвейером в данном случае понимается такой метод внутренней обработки команд, когда исполнение команды разбивается на несколько ступеней (stages) и каждой ступени соответствует свой модуль в структуре процессора. Процессоры, имеющие несколько конвейеров, называются суперскалярными. Таким образом, несколько команд могут выполняться параллельно. Так, например, Pentium Pro, предок всех современных процессоров, способен выполнить до пяти команд за один такт. [1, с. 96]

-математический сопроцессор (Numeric Processing Unit – NPU, или Floating Point Processing Unit, FPU) – специальный арифметический процессор, разработанный для выполнения операций с плавающей точкой (запятой). В отличие от центрального процессора он не управляет системой, а ждет команду CPU на выполнение арифметических вычислений и формирование результатов. Начиная с процессора 80486DX, сопроцессор интегрирован прямо в CPU. [1, с. 95-96]

-технология MMX ориентирована на решение задач мультимедиа, требующих интенсивных операций с целыми числами. Сущность технологии MMX состоит в появлении в CPU Pentium виртуального эквивалента 8 новых 64-разрядных регистров и 57 новых команд для решения задач мультимедиа. Восемь новых регистров можно назвать виртуальными потому, что физически эти регистры являются регистрами сопроцессора. Таким образом, сохраняется совместимость с предыдущими поколениями программ.

-в январе 1999г. В технологию MMX было добавлено 70 новых команд групповой обработки данных с плавающей точкой (50) и дополнительные команды групповой обработки целочисленных данных (20). Благодаря этому набору команд, называемому SSE (Streaming SIMD Extension) были расширены возможности обработки изображений, потоков аудио- и видеоданных, а также распознавания речи. В дальнейшем были разработаны наборы инструкций SSE2, SSE3, SSE4.1, SSE4.2, AVX и т.д.

-для решения задач мультимедиа корпорация AMD разработала и установила на свои CPU новый модуль с конвейерной структурой для обработки 24 новых 3D-инструкций для ускорения обработки трехмерной графики, аудио- и видеоданных. Этот модуль получил название 3DNow! В отличие от технологии MMX, основанной на работе с целыми числами, в набор инструкций 3DNow! Включены команды, работающие с вещественными числами, что важно при расчете трехмерных сцен. Модуль может выполнять до четырех SIMD-инструкций, что заметно увеличивает производительность процессора. [1, с. 97-98]

-технология Hyper-Threading реализует многопотоковое исполнение программ: на одном физическом процессоре можно одновременно исполнять два задания или два потока команд одной программы (операционные системы «видят» два логических процессора вместо одного). Иначе говоря, эта технология на базе одного микропроцессора формирует два или более логических процессора, работающих параллельно и, в известной степени, независимо. Hyper-Threading обеспечивает повышение производительности в многозадачных средах и при исполнении программ, которые допускают многопотоковое исполнение. [8, с. 138-139]

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

Каждое технологическое новшество, вносимое в структуру процессоров находило свое применение на практике и поднимало возможности процессоров на новую ступень.

2.2 Характеристики микропроцессоров

Производительность CPU характеризуется следующими основными параметрами:

-степень интеграции;

-внутренняя и внешняя разрядность обрабатываемых данных;

-тактовая частота;

-количество инструкций, выполняемых за один такт;

-память, к которой может адресоваться процессор;

-объем встроенной кэш-памяти;

-количество уровней кэш-памяти;

-состав инструкций

-количество ядер

Кроме того, CPU различаются по технологии производства, напряжению питания, форм-фактору и др.

Современные CPU, начиная с CPU Pentium, различаются наличием кэш-

памяти второго (третьего) уровня и тактовой частотой ее функционирования, применением различных технологий, призванных повысить производительность CPU, поддержкой различной тактовой частоты системной шины и др.

Степень интеграции микросхемы (чипа) показывает, сколько транзисторов может в ней уместиться. Для процессора Pentium (80586) Intel - это приблизительно 3 млн транзисторов, расположенных на площади 3,5 см2, а для CPU Pentium 4 - уже 55 млн. Современный CPU Intel Core i7 содержит уже 731 млн транзисторов, причем площадь кристалла значительно меньше, чем у его предшественников. [1, c. 106-108]

Одной из основных характеристик процессора является количество бит, которое он может обрабатывать одновременно: 16, 32 или 64 бита. Все современные процессоры Intel Pentium и Core и AMD64 32-разрядные, но с возможностью работы и в 64-разрядном режиме и с поддержкой старого 16-разрядного режима. Первые процессоры линейки х86 для компьютеров РС были 16-разрядными.В 1985 г. в процессоре Intel 386 был реализован 32 режим работы. В 2002 г. В процессорах AMD 64 Opteron был внедрен 64-разрядный режим. Но, говоря о разрядности, следует помнить, что выше были приведены данные, которые касаются процессоров для персональных компьютеров. Для примера, можно отметить, что первый 64-разрядный процессор (на одном кристалле) появился в мае 2001 г. - это Intel Itanium, но он не может использоваться в архитектуре персональных компьютеров. [1, с. 108 ]

Процессор управляет системой, обмениваясь данными с кэш-памятью, RAM и другими устройствами по специальным магистралям, называемым шинами. Важнейшими характеристиками шины являются ее разрядность и тактовая частота, потому что они определяют количество бит информации в секунду, которые теоретически можно передавать по шине, - пропускную способность шины. [1, с. 108-109]

Любой современный PC имеет тактовый генератор (System Clock), который синхронизирует работу различных его компонентов. Минимальный промежуток времени, определяемый тактовым генератором, еще называют циклом. Частота работы тактового генератора системной шины FSB (Front Side Bus) - внешней шины процессора - измеряется в мегагерцах (миллион циклов в секунду). Первые PC имели один тактовый генератор, который с частотой 8 МГц синхронизировал работу процессора, памяти и шины ввода/вывода. С развитием PC возникла необходимость в использовании нескольких тактовых генераторов. Как правило, современные PC оборудованы 4-5 - тактовыми генераторами, работающими синхронно на различных частотах. Когда говорят о тактовой частоте системы, то всегда имеют в виду тактовую частоту системной шины. Тактовые частоты всех остальных компонентов PC являются кратными частоте системной шины. Для компьютеров с современными процессорами ситуация для внешних устройств точно такая же, но внутри процессора различные операционные блоки могут работать с самыми различными тактовыми частотами, которые не всегда кратны тактовой частоте шины FSB. [1, с. 110-111]

CPU находится в прямом контакте с оперативной памятью PC. Данные, которые обрабатывает CPU, должны временно располагаться в RAM и для дальнейшей обработки снова могут быть востребованы из памяти. Адресная шина представляет собой набор проводников, по которым передается информация о местоположении данных в той или иной области памяти. Ширина адресной шины определяет количество ячеек, к которым может обратиться CPU для чтения или записи. Ширина адресной шины и ширина шины данных не связаны, хотя эти шины работают с одинаковой тактовой частотой. Как правило, процессоры могут адресовать гораздо больше памяти, чем фактически установлено (и может быть установлено) на материнской плате, что связано с конструктивными и технологическими особенностями производства материнских плат. Например, если CPU теоретически может адресовать 4 Гбайт оперативной памяти, но реальные возможности по адресации памяти зависят от используемого чипсета материнской платы, возможностей BIOS и операционной системы. Например, для большинства 32- битных версий операционной системы Windows XP было доступно всего 2 Гбайт оперативной памяти. [1, с. 111-112]

Состав инструкций – перечень, вид и тип команд, автоматически выполняемых микропроцессором. От типа команд зависит классификационная группа микропроцессора (CISC, RISC, VLIW и т.д.). Перечень и вид команд определяют непосредственно те процедуры, которые могут выполняться над данными в микропроцессоре, и те категории данных, над которыми могут применяться эти процедуры. [8, с. 129]

Современные процессоры являются многоядерными и могу содержать от двух (Celeron, Pentium, Core i3, AMD A4, A6, Athlon X2) до четырех (Core i5, Core i7, AMD FX, A8, A10, Athlon X4) и более ( Core i7, AMD FX) ядер. Так же, многие современные процессоры объединены с графическим процессором на одном кристалле. В некоторых случаях наличие подобной опции может оказаться важной характеристикой при выборе процессора для ПК.

Рассмотрим производительность нескольких процессоров с разными характеристиками, приведенными в таблице 1. Из результатов тестирования, представленных в приложении на рис. 5 и в более подробном варианте в таблице 2 хороша видна разница в производительности процессоров. Также хорошо заметна зависимость производительности от количества потоков выполняемого кода в таких группах тестов как видео конвертирование, видеообработка, распознавание текста и архивирование, в которых 8-ядерный FX-8350 способен опередить Core i5, ядра которого хоть и мощнее, но их лишь четыре. Лидирующее положение же положение во всех тестах занимает Core i7, что не удивительно, так как среди представленных процессоров он самый быстрый и дорогой. В игровых тестах, представленных в приложении на рис. 6 картина несколько отличается. Некоторая разница в производительности хоть и наблюдается, но выражена она не столь ярко, так как игровые приложения в большей степени зависят от видеокарты, чем от процессора. Однако стоит заметить, что все процессоры, указанные на рис. 6 является достаточно мощными, чтобы использоваться для построения игрового ПК, если бы в тесте участвовали более дешевые процессоры (Celeron, AMD A4, Athlon) то их отставание было бы куда более заметно.

Глядя на подобные тесты, можно заключить, что использование мощных процессоров вроде Core i7 или Core i5 даст несомненное преимущество при решении любых задач, но это не совсем верно. Конечно, ничто не мешает использовать процессоры Core i7, например, офисном ПК, однако учитывая высокую стоимость как самого процессора, так и всей такой системы в целом, вряд ли подобное решение можно назвать разумным, при учете что с задачами офисного характера легко справиться и Celeron. Поэтому при выборе процессора крайне важно точно представлять для решения каких задач он будет использоваться.

Заключение

В данной курсовой мы рассмотрели историю создания процессоров ПК, их структуру, принцип работы и характеристики. Конечно на самом деле данные информация приведена в сильно сжатом и упрощенном виде, так как тема процессоров крайне глубока и обширна, а процессоры можно рассматривать как с точки зрения их внутреннего устройства, так и с точки зрения программирования. Фирмы-производители процессоров постоянно совершенствуют свои устройства: уменьшается техпроцесс, совершенствуется архитектура, добавляются новые наборы инструкций. К тому же, хоть на платформе ПК и доминируют процессоры архитектуры х86, на рынке ПК представлены одновременно модельные ряды процессоров нескольких семейств, причем от разных производителей (Intel и AMD). Так, например, на прилавках магазинов одновременно лежат процессоры Intel на архитектурах Haswell и Skylake. Потому крайне важно понимать, чем процессоры отличаются друг от друга, процессоры какой линейки подходят для тех или иных задач.

Библиография

1) Колесниченко О.В. Аппаратные средства PC / О. В. Колесниченко, И. В. Шишигин, В. Г. Соломенчук. – 6-е изд., перераб. и доп. – СПб.: БХВ-Петербург, 2010. – 800 с.

2) Таненбаум Э., Остин Т. Архитектура крмпьютера. 6-е изд. – Спб.: Питер, 2013. – 816 с.

3) Корнеев В.В., Киселев А. В. Современные микропроцессоры. – 3-е изд., перераб. и доп. – СПб.: БХВ-Петербург, 2003. – 448 с.

4) http://www.ixbt.com

5) Шалатонин И. А. Микропроцессоры и ПЭВМ: Курс лекций / И. А. Шалатонин. – Мн.: БГУ, 2004. – 141 с.

6) Гук М., Юров В. Процессоры Pentium III, Athlon и другие – СПб: издательство «Питер», 2000. – 480 с.

7) М. В. Ульянов Архитектуры процессоров. – М.: МГАПИ, 2002. – 68 с.

8) Бройдо В. Л., Ильина О. П. Архитектура ЭВМ и систем: учебник для вузов. – СПб.: Питер, 2006. – 718 с.

9) Макаров Н. В., Волков В. Б. Информатика: Учебник для вузов. – СПб.: Питер, 2011. – 576 с.

10) www.overclockers.ru

Приложение

Таблица 1 Характеристики процессоров

Intel Core i7-6700K

Intel Core i5-6600K

Intel Core i3-6100

AMD FX-8350

AMD FX-6350

AMD A10-7850K

Intel Pentium G4400

Сокет

LGA 1151

LGA 1151

LGA 1151

AM3+

AM3+

FM2+

LGA 1151

Архитектура

Skylake

Skylake

Skylake

Piledriver

Piledriver

Steamroller

Skylake

Техпроцесс нм

14

14

14

32

32

28

14

Кол-во ядер.

4

4

2

8

6

4

2

Число потоков

8

4

4

8

6

4

2

Базовая частота МГц

4000

3500

3700

4000

3900

3700

3300

тип памяти

DDR3L, DDR4

DDR3L, DDR4

DDR3L, DDR4

DDR3

DDR3

DDR3

DDR3L, DDR4

макс. частота памяти МГц

2133

2133

2133

1866

1866

2133

2133

интегрированное гравфическое ядро

Intel HD Graphics 530

Intel HD Graphics 530

Intel HD Graphics 530

-

-

Radeon R7 240

Intel HD Graphics 510

пропускная способность шины GT/s

8

8

8

4

5,2

5

8

Кэш L1 инструкции/данные Кб

128/128

128/128

64/64

256/128

192/96

192/64

64/64

Кэш L2

1 Мб

1 Мб

512 Кб

8 Мб

6 Мб

4 Мб

512 Кб

Кэш L3

8 Мб

6 Мб

3 Мб

8 Мб

8 Мб

-

3Мб

Источник www.ixbt.comРис. 5 Производительность процессоров в пользовательских приложениях (Источник: www.ixbt.com)

Таблица 2 Тестирование производительности процессоров

Логическая группа тестов

Core i5-6600K

Core i7-6700K

FX-6350

FX-8350

A10-7850K

Pentium G4400

Core i3-6100

Видеоконвертирование и видеообработка, баллы

296,2

459,4

241,0

322,7

178,6

133,3

203,0

MediaCoder x64 0.8.33.5680, секунды

153

95

200

142

273

383,892

236,25

SVPmark 3.0, баллы

2703

4037

2338

2977

1754

1373

1960

Создание видеоконтента, баллы

279,8

302,8

186,3

180,7

149,8

142,0

194,7

Adobe Premiere Pro CC 2014.1, секунды

594,668

405,252

862,821

655,669

1236,079

1259,227

895,22

Adobe After Effects CC 2014.1.1 (Test #1), секунды

732,814

546

1139

907

1603

1515,98

1135,024

Adobe After Effects CC 2014.1.1 (Test #2), секунды

352

541

539

1149

627

594

469

Photodex ProShow Producer 6.0.3410, секунды

430,506

402,34

634,75

554,831

646,227

876,92

590,62

Обработка цифровых фотографий, баллы

264,0

328,7

162,6

177,7

143,1

116,5

221,8

Adobe Photoshop CC 2014.2.1, секунды

783,62

655,33

1416,11

1299,864

1462,398

2523,768

883,494

ACDSee Pro 8, секунды

312,672

241,053

456,194

416,048

569,84

498,085

392,858

Векторная графика, баллы

161,2

185,7

122,9

123,6

111,4

135,7

150,9

Adobe Illustrator CC 2014.1.1, секунды

319,456

277,264

418,876

416,766

462,366

379,483

341,354

Аудиообработка, баллы

222,3

287,3

147,5

155,8

111,8

158,1

187,8

Adobe Audition CC 2014.2, секунды

470,836

364,439

709,893

671,777

936,078

662,021

557,315

Распознавание текста, баллы

211,6

380,7

186,7

245,8

135,2

131,7

170,6

Abbyy FineReader 12, секунды

259,211

144,093

293,771

223,223

405,807

416,619

321,477

Архивирование и разархивирование данных, баллы

167,4

237,8

155,4

171,4

111,5

101,1

136,5

WinRAR 5.11 архивирование, секунды

168,506

102,651

157,537

134,583

270,273

373,125

218,854

WinRAR 5.11 разархивирование, секунды

8,576

6,971

10,64

10,243

12,041

10,612

9,92

Скорость инсталляции и деинсталляции приложений, баллы

134,3

154,5

99,4

106,6

105,1

118,8

131,6

Скорость инсталляции и деинсталляции приложений, секунды

252,679

219,719

341,327

318,463

322,976

285,782

257,912

Файловые операции, баллы

144,1

148,5

120,3

126,5

132,8

127,2

134,4

Копирование данных, секунды

55,042

53,207

64,551

59,206

61,442

58,917

57,685

UltraISO Premium Edition 9.6.2.3059, секунды

25,737

25,061

31,48

31,039

27,135

30,873

28,234

Интегральный результат производительности, баллы

201,1

258,0

153,0

169,1

129,2

128,5

167,2

Источник: www.ixbt.com

Рис. 6 Производительность процессора в играх (Источник: www.overclockers.ru)