Микропроцессор. Ядром любой ПЭВМ является центральный микропроцессор, который выполняет функции обработки информации и управления работой всех блоков ПЭВМ.
Конструктивно МП, как правило, выполнен на одном кристалле (на одной СБИС). В состав МП входят:
-
центральное устройство управления,
-
арифметико-логическое устройство,
-
внутренняя регистровая память,
-
КЭШ-память,
-
схема формирования действительных адресов операндов для обращения к оперативной памяти,
-
схемы управления системной шиной и др.
Рассмотрим структуру и функционирование микропроцессора на примере разработанной фирмой Intel модели i486.
АЛУ выполняет логические операции, а также арифметические операции в двоичной системе счисления и в двоично-десятичном коде, причем арифметические операции над числами, представленными в форме с плавающей точкой, реализуются в специальном блоке. В некоторых конфигурациях с этой целью используется арифметический сопроцессор (например, 180387). Он имеет собственные регистры данных и управления, работает параллельно с центральным МП, обрабатывает данные с плавающей точкой.
Устройство управления микропроцессорного типа обеспечивает конвейерную обработку данных с помощью блока предварительной выборки (очереди команд).
Блок предварительной выборки команд и данных осуществляет заполнение очереди команд длиной 32 байта, причем выборка байтов из памяти выполняется в промежутках между магистральными циклами команд.
Производительность микропроцессора значительно повышается за счет буферизации часто используемых команд и данных во внутренней КЭШ-памяти размером (в данном случае) 8 Кбайт. При этом сокращается число обращений к внешней памяти. Внутренняя КЭШ-память имеет несколько режимов работы, что обеспечивает гибкость отладки и выполнения рабочих программ.
Сегментация памяти является средством управления пространством логических адресов. Сегментированная память представляет собой набор блоков, характеризуемых определенными атрибутами,’ такими, как расположение, размер, тип (стек, программа, данные), класс защиты памяти. В МП i486 каждой задаче доступно до 16384* сегментов размером до 4 Гбайт каждый. Таким образом, каждая куча может использовать до 64 Гбайт виртуальной памяти.
В состав внутренней памяти МП входят доступные программисту функциональные регистры: регистры общего назначения, указатель команд, регистр флагов и регистры сегментов.
Восемь 32-разрядных регистров общего назначения используются для хранения данных и адресов. Они обеспечивают работу с данными разрядностью 1, 8,16,32 и 64 бита и адресами размером 16 и 32 бита. Каждый из таких регистров имеет свое имя, например ЕАХ или ESP.
32-разрядный указатель команд содержит смещение при опрелении адреса следующей команды. 32-разрядный регистр флагов указывает признаки результата выполнения команды.
Регистры сегментов содержат значения селекторов сегментов, определяющих текущие адресуемые сегменты памяти.
Кроме вышеуказанных регистровая память МП содержит регистры процессора обработки чисел с плавающей точкой, системные некоторые другие регистры.
Устройство управления микропроцессора обеспечивает многозадачность. Многозадачность — способ организации работы ПЭВМ, при котором в ее памяти одновременно содержатся программы и данные для выполнения нескольких задач. В составе МП i486 имеются аппаратно-программные средства, позволяющие эффективно организовать многозадачный режим, в том числе системы прерывания и защиты памяти.
Система прерывании обрабатывает запросы на прерывание как от внешних устройств, так и от внутренних блоков МП. Поступление запроса на прерывание от внутреннего блока МП свидетельствует о возникновении исключительной ситуации, например, о переполнении разрядной сетки. Внешнее прерывание может быть связано с обслуживанием запросов от периферийных устройств. Требуя своевременного обслуживания, внешнее устройство посылает запрос прерывания микропроцессору. Микропроцессор в ответ приостанавливает нормальное выполнение текущей программы и переходит на обработку этого запроса, чтобы в дальнейшем выполнить определенные действия по вводу-выводу данных. После совершения таких действий происходит возврат к прерванной программе. МП i486 способен обрабатывать до 256 различных типов прерываний, причем первые 32 типа отведены для внутрисистемных целей и недоступны пользователю.
Защита памяти от несанкционированного доступа в многозадачном режиме осуществляется с помощью системы привилегий, регулирующих доступ к тому или иному сегменту памяти в зависимости от уровня его защищенности и степени важности.
Защищенность определяется уровнем привилегии, требуемым для доступа к соответствующему сегменту. Уровни привилегии задаются номерами от 0 до 3. Наиболее защищенная область памяти — отведенная под ядро операционной системы — имеет уровень 0. При обращении программы к сегментам программ или данных в защищенном режиме происходит проверка уровня привилегии и в случае, если этот уровень недостаточен, происходит прерывание.
Обмен информацией между блоками МП происходит через магистраль микропроцессора, включающую 32-разрядную шину адреса, 32-разрядную двунаправленную шину данных и шину управления.
Шина адреса используется для передачи адресов ячеек памяти и регистров для обмена информацией с внешними устройствами.
Шина данных обеспечивает передачу информации между МП, памятью и периферийными устройствами. По этой шине возможна пересылка 32-, 16- и 8-разрядных данных. Шина двунаправленная, т.е. позволяет осуществлять пересылку данных как в прямом, так и в обратном направлении.
Шина управления предназначена для передачи управляющих сигналов — управления памятью, управления обменом данных, запросов на прерывание и т.д.
Внутренняя память ПЭВМ состоит из оперативной памяти и постоянной памяти (ПП).
Оперативная память (ОП) ПЭВМ. Она построена на БИС или СБИС и является энергозависимой: при отключении питания информация в ОП теряется. В оперативной памяти хранятся исполняемые машинные программы, исходные и промежуточные данные и результаты. Емкость ОП в ПЭВМ измеряется в Кбайтах и Мбайтах. Иногда адресное пространство увеличивается до Гбайта. В наиболее распространенных конфигурациях ПЭВМ емкость ОП составляет 1 Мбайт и более.
В ОП обычно выделяется область, называемая стеком. Обращение, к стековой памяти возможно только в той ячейке, которая адресуется, указателем стека. Стек удобен при организации прерываний и обращении к подпрограммам.
Постоянная память (ПП). Она является энергозависимой, f используется для хранения системных программ, в частности так называемой базовой системы ввода-вывода (BIOS — Basic Input and Output System), вспомогательных программ и т.п. Программы, хранящиеся в ПП, предназначены для постоянного использования микропроцессором.