Микропроцессор в персональной электронно-вычислительной машине

Микропроцессоры и микро ЭВМ

Министерство образования Республики Беларусь

Белорусский государственный университет

информатики и радиоэлектроники

Кафедра микро- и наноэлектроники

Реферат

по курсу «Учебная практика»

на тему:

«МИКРОПРОЦЕССОР В ПЕРСОНАЛЬНОЙЭЛЕКТРОННО-ВЫЧИСЛИТЕЛЬНОЙ МАШИНЕ»

Выполнил:

студент группы 742701

Карпович П. И.

Проверил:

Стемпицкий В. Р.

Минск 2008

СОДЕРЖАНИЕ

ВВЕДЕНИЕ

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

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

Развитие микропроцессоров в электронной индустрии проходит настолько быстрыми темпами, что каждая модель микропроцессора становилась маломощной с момента появления новой модели, а ещё через 2-3 года считалась устаревшей и снималась с производства.

УСТРОЙСТВО МИКРОПРОЦЕССОРА

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

Микропроцессор - центральное устройство (или комплекс устройств) ЭВМ (или вычислительной системы), которое выполняет арифметические и логические операции, заданные программой преобразования информации, управляет вычислительным процессом и координирует работу устройств системы (запоминающих, сортировальных, ввода — вывода, подготовки данных и др.). В вычислительной системе может быть несколько параллельно работающих процессоров; такие системы называют многопроцессорными. Наличие нескольких процессоров ускоряет выполнение одной большой или нескольких (в том числе взаимосвязанных) программ. Основными характеристиками микропроцессора являются быстродействие и разрядность. Быстродействие - это число выполняемых операций в секунду. Разрядность характеризует объём информации, который микропроцессор обрабатывает за одну операцию: 32-разрядный процессор за одну операцию обрабатывает 32 бит информации, 64-разрядный - 64 бита. Скорость работы микропроцессора во многом определяет быстродействие компьютера. Он выполняет всю обработку данных, поступающих в компьютер и хранящихся в его памяти, под управлением программы, также хранящейся в памяти. Персональные компьютеры оснащают центральными процессорами различных мощностей. Основные функции которых обработка данных по заданной программе путем выполнения арифметических и логических операций и программное управление работой устройств компьютера.

Устройства микропроцессора

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

Арифметико-логическое устройство (АЛУ). Так называется устройство для целочисленных операций. Арифметические операции, такие как сложение, умножение и деление, а также логические операции (OR, AND, ASL, ROL и др.) обрабатываются при помощи АЛУ. Эти операции составляют подавляющее большинство программного кода в большинстве программ. Все операции в АЛУ производятся в регистрах - специально отведенных ячейках АЛУ. В процессоре может быть несколько АЛУ. Каждое способно исполнять арифметические или логические операции независимо от других, что позволяет выполнять несколько операций одновременно. Арифметико-логическое устройство выполняет арифметические и логические действия. Логические операции делятся на две простые операции: "Да" и "Нет" ("1" и "0"). Обычно эти два устройства выделяются чисто условно, конструктивно они не разделены.

AGU (Address Generation Unit) - устройство генерации адресов. Это устройство не менее важное, чем АЛУ, т.к. оно отвечает за корректную адресацию при загрузке или сохранении данных. Абсолютная адресация в программах используется только в редких исключениях. Как только берутся массивы данных, в программном коде используется косвенная адресация, заставляющая работать AGU.

Математический сопроцессор (FPU). Процессор может содержать несколько математических сопроцессоров. Каждый из них способен выполнять, по меньшей мере, одну операцию с плавающей точкой независимо от того, что делают другие АЛУ. Метод конвейерной обработки данных позволяет одному математическому сопроцессору выполнять несколько операций одновременно. Сопроцессор поддерживает высокоточные вычисления как целочисленные, так и с плавающей точкой и, кроме того, содержит набор полезных констант, ускоряющих вычисления. Сопроцессор работает параллельно с центральным процессором, обеспечивая, таким образом, высокую производительность. Система выполняет команды сопроцессора в том порядке, в котором они появляются в потоке. Математический сопроцессор персонального компьютера IBM PC позволяет ему выполнять скоростные арифметические и логарифмические операции, а также тригонометрические функции с высокой точностью.

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

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

Кэш первого уровня (L1 cache). Кэш-память, находящаяся внутри процессора. Она быстрее всех остальных типов памяти, но меньше по объёму. Хранит совсем недавно использованную информацию, которая может быть использована при выполнении коротких программных циклов.

Кэш второго уровня (L2 cache). Также находится внутри процессора. Информация, хранящаяся в ней, используется реже, чем информация, хранящаяся в кэш-памяти первого уровня, но зато по объёму памяти он больше. Также в настоящее время в процессорах используется кэш третьего уровня.

Основная память. Намного больше по объёму, чем кэш-память, и значительно менее быстродействующая.

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

Шина - это канал пересылки данных, используемый совместно различными блоками системы. Шина может представлять собой набор проводящих линий в печатной плате, провода, припаянные к выводам разъемов, в которые вставляются печатные платы, либо плоский кабель. Информация передается по шине в виде групп битов. В состав шины для каждого бита слова может быть предусмотрена отдельная линия (параллельная шина), или все биты слова могут последовательно во времени использовать одну линию (последовательная шина). К шине может быть подключено много приемных устройств - получателей. Обычно данные на шине предназначаются только для одного из них. Сочетание управляющих и адресных сигналов, определяет для кого именно. Управляющая логика возбуждает специальные стробирующие сигналы, чтобы указать получателю, когда ему следует принимать данные. Получатели и отправители могут быть однонаправленными и двунаправленными. Различают несколько типов шин.

Шина данных. Служит для пересылки данных между процессором и памятью или процессором и устройствами ввода-вывода. Эти данные могут представлять собой как команды микропроцессора, так и информацию, которую он посылает в порты ввода-вывода или принимает оттуда.

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

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

BTB (Branch Target Buffer) - буфер целей ветвления. В этой таблице находятся все адреса, куда будет или может быть сделан переход. Процессоры Athlon еще используют таблицу истории ветвлений (BHT - Branch History Table), которая содержит адреса, по которым уже осуществлялись ветвления.

Регистры - это внутренняя память процессора. Представляют собой ряд специализированных дополнительных ячеек памяти, а также внутренние носители информации микропроцессора. Регистр является устройством временного хранения данных, числа или команды и используется с целью облегчения арифметических, логических и пересылочных операций. Над содержимым некоторых регистров специальные электронные схемы могут выполнять некоторые манипуляции. Например, "вырезать" отдельные части команды для последующего их использования или выполнять определенные арифметические операции над числами. Основным элементом регистра является электронная схема, называемая триггером, которая способна хранить одну двоичную цифру. Регистр представляет собой совокупность триггеров, связанных друг с другом определённым образом общей системой управления. Существует несколько типов регистров, отличающихся видом выполняемых операций.

Некоторые важные регистры имеют свои названия, например:

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

счетчик команд — регистр УУ, содержимое которого соответствует адресу очередной выполняемой команды; служит для автоматической выборки программы из последовательных ячеек памяти.

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

Архитектура микропроцессора

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

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

Макроархитектура микропроцессора - это система команд, типы обрабатываемых данных, режимы адресации и принципы работы микропроцессора.

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

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

Микропроцессоры с CISC архитектурой.

CISC (Complex Instruction Set Computer) - Компьютер со сложной системой команд. Исторически они первые и включают большое количество команд. Все микропроцессоры корпораций Intel (Integrated Electronics) и AMD (Advanced Micro Devices) относятся к категории CISC. Для ускорения работы CISC процессоров применяется набор дополнительных инструкций (Instruction Set). Естественно только при условии поддержки данных наборов со стороны приложения. Все традиционные современные процессоры поддерживают набор инструкций MMX, который был самым первым (разработан корпорацией Intel еще в 1997 году). MMX расшифровывается как MultiMedia eXtensions (мультимедийные расширения). Он представил дополнительные возможности, ориентированные на обработку цифрового изображения и звука. В основе технологии лежит концепция (микроархитектура) SIMD (Single Instruction Many Data - "одна команда, много данных"), когда при помощи одной инструкции одновременно обрабатывается несколько элементов данных. SSE, SSE2, 3DNow! - дальнейшее развитие этой идеи. Микропроцессоры Intel Pentium 3 поддерживают SSE, а Pentium 4 и AMD Athlon 64 еще и SSE2 (это относится и к соответствующим микропроцессорам Intel Celeron). Процессоры AMD Athlon и Duron поддерживают наборы инструкций 3DNow!Professional и MMX, в Athlon XP была добавлена поддержка SSE (на уровне микрокода ядра).

Микропроцессоры с RISC архитектурой.

RISC (Reduced Instruction Set Computer) - Компьютер с сокращенной системой команд. Упрощена система команд и сокращена до такой степени, что каждая инструкция выполняется за единственный такт. Вследствие этого упростилась структура микропроцессора, и увеличилось его быстродействие. Все команды работают с операндами и имеют одинаковый формат. Обращение к памяти выполняется с помощью специальных команд загрузки регистра и записи. Простота структуры и небольшой набор команд позволяет реализовать полностью их аппаратное выполнение и эффективный конвейер при небольшом объёме оборудования. Арифметику RISC - процессоров отличает высокая степень дробления конвейера. Этот прием позволяет увеличить тактовую частоту ( значит, и производительность ) компьютера; чем более элементарные действия выполняются в каждой фазе работы конвейера, тем выше частота его работы. RISC - процессоры с самого начала ориентированны на реализацию всех возможностей ускорения арифметических операций, поэтому их конвейеры обладают значительно более высоким быстродействием, чем в CISC - процессорах. В результате чего, RISC - процессоры в 2 - 4 раза быстрее имеющих ту же тактовую частоту CISC - процессоров с обычной системой команд и высоко производительней, несмотря на больший объем программ, на ( 30 % ). Дейв Паттерсон и Карло Секуин сформулировали 4 основных принципа RISC :

1.Любая операция должна выполняться за один такт, вне зависимости от ее типа.

2.Система команд должна содержать минимальное количество наиболее часто используемых простейших инструкций одинаковой длины.

3.Операции обработки данных реализуются только в формате “регистр - регистр“ (операнды выбираются из оперативных регистров процессора, и результат операции записывается также в регистр; а обмен между оперативными регистрами и памятью выполняется только с помощью команд загрузки\записи).

4.Состав системы команд должен быть “удобен “ для компиляции операторов языков высокого уровня.

Пример микропроцессора с RISC-аpхитектуpой - Power PC. Микропроцессор Power PC начал разрабатываться в 1981 году тремя фирмами: IBM, Motorola, Apple.

Микропроцессоры с MISC архитектурой.

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

Двумя основными архитектурами набора команд, используемыми компьютерной промышленностью на современном этапе развития вычислительной техники являются архитектуры CISC и RISC.

Система команд микропроцессора

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

Команды передачи данных (перепись), копирующие информацию из одного места в другое.

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

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

Сдвиги двоичного кода влево и вправо. В некоторых случаях сдвиги используются для реализации умножения и деления.

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

Команды управления, реализующие нелинейные алгоритмы. Сюда относят условный и безусловный переходы, а также команды обращения к подпрограмме (переход с возвратом). Часто к этой группе относят операции по управлению процессором типа останов или нет операции.

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

Код операции можно представить себе как некоторый условный номер в общем списке команд. В основном этот список построен в соответствии с определенными внутренними закономерностями.

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

Способы адресации данных

Способы (или методы) адресации не что иное, как способы указания на те или иные ячейки памяти, с которыми должен манипулировать оператор. Существует много различных методов адресации. Количество их зависит от типа процессора. Наличие большого количества способов адресации обеспечивает высокую гибкость в построении программ и является большим преимуществом системы команд данного типа ЭВМ. Способы адресации практически одинаковы для всех команд, в которых присутствуют операнды. Рассмотрим три основные способа адресации данных.

Регистровая адресация. При этом способе операндом является один из регистров общего назначения. Число хранится непосредственно в регистре. Записывается как Rn, где n - номер регистра.

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

Автоинкрементная адресация. Этот вид адресации несколько сложнее двух предыдущих. Помимо основного действия (косвенного обращения к ячейке памяти), при использовании этого метода, происходит еще изменение адреса этого обращения. В данном случае увеличивается указатель адреса ячейки памяти, к которой мы обращаемся, то есть содержимое регистра, служащего указателем адреса. Данное увеличение происходит автоматически, без какой-либо команды. Записывается эта адресация как (Rn)+. То, что знак + стоит после имени регистра, намекает на порядок выполнения команды: сначала происходит операция с ячейкой, на которую указывает адрес помещенный в регистр Rn, а потом уже содержимое регистра увеличивается на 2 (если оператор работает со словом, то переход к адресу следующего слова), или на 1 (если оператор работает с байтом, переход к адресу следующего байта). Данный способ адресации применяется для работы с массивами и при использовании стека (например, при использовании подпрограмм).

ПАРАМЕТРЫ МИКРОПРОЦЕССОРА

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

1. Тактовая частота (Частота ядра) (Internal clock) - это количество электрических импульсов в секунду. Каждый импульс несет в себе некую информацию - это могут быть команды процессору или данные памяти. Тактовая частота задается кварцевым генератором - одним из блоков, расположенных на материнской плате. Тактовая частота кварцевого генератора выдерживается с очень высокой точностью и лежит в мега или гигагерцовом диапазоне. Микропроцессор, работающий на тактовой частоте 800 МГц, выполняет 800 миллионов рабочих тактов в секунду. В зависимости от сложности обрабатываемой команды процессору для выполнения задачи иногда необходимо сотни и тысячи тактов. Чем выше тактовая частота ядра, тем выше скорость обработки данных. Современные микропроцессоры работают на частотах от 800 МГц до 4,7 ГГц.

2. Объем Кэш-памяти (Cache) - Кэш-память быстрая память, используемая процессором для ускорения операций, требующих обращения к памяти. На общую производительность влияет размер кэша L2. Чем больше L2, тем дороже процессор, т.к. память для кэша еще очень дорога. Поэтому эффективнее увеличивать частоту кэша, а для этого он должен находиться как можно ближе к ядру процессора. Кэш-память может работать на частоте 1/4, 1/3, 1/2, 1/1 от частоты ядра. Современные микропроцессоры имеют кэш объемом от 8 Кб до 5Мб.

3.Разрядность - максимальное количество разрядов двоичного кода, которые могут обрабатываться или передаваться одновременно. Большинство современных микропроцессоров построено на 32-х битной архитектуре IA-32 (Intel Architecture 32 bit) или на 64-х битной IA-64 (Intel Architecture 64 bit). Производительность 64-х битных микропроцессоров намного выше.

4. Быстродействие микpопpоцессоpа - это число элементаpных опеpаций, выполняемых микpопpоцессоpом в единицу вpемени (опеpации/секунда).

Эксплуатационные параметры микропроцессора

1. Напряжение питания микропроцессора - величина питающего напряжения микропроцессоров зависит от технологического процесса и от частоты ядра. Чем меньше кристалл и ниже частота, тем меньше напряжение питания. Напряжение питания современных микропроцессоров от 0,5 В до 3,5 В, чаще всего от 1,2 В до 1,75 В.

2. Ток ядра - у современных микропроцессоров ток, протекающий через ядро от 1 А до 90 А.

3. Потребляемая мощность - зависит от величины питающего напряжения и от частоты ядра. Чем меньше напряжение питания и частота, тем меньше потребляемая мощность. Мощность современных микропроцессоров от 1Вт до 120 Вт. Чаще всего в пределах 40-70 Вт.

4. Максимальная температура нагрева кристалла - максимальная температура кристалла, при которой возможна стабильная работа микропроцессора. У современных микропроцессоров она колеблется в пределах от 60