Реферат: Архитектура микропроцессора - структура и общая характеристика. Общая характеристика архитектуры процессора. Генератор тактовых импульсов

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.

Размещено на http://www.allbest.ru/

  • Введение

Введение

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

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

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

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

микропроцессор микроконтроллер архитектура вычислительный

1. Микропроцессоры, функциональные возможности и архитектурные решения

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

Архитектурой процессора называется комплекс его аппаратных и программных средств, предоставляемых пользователю. В это общее понятие входит набор программно-доступных регистров и исполнительных (операционных) устройств, система основных команд и способов адресации, объем и структура адресуемой памяти, виды и способы обработки прерываний. Например, все модификации процессоров Pentium, Celeron, i486 и i386 имеют архитектуру IA-32 (Intel Architecture - 32 bit), которая характеризуется стандартным набором регистров, предоставляемых пользователю, общей системой основных команд и способов организации и адресации памяти, одинаковой реализацией защиты памяти и обслуживания прерываний.

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

Регистры общего назначения образуют РЗУ - внутреннюю регистровую память процессора (см. раздел 1.3). Состав и количество служебных регистров определяется архитектурой микропроцессора. Обычно в их состав входят:

программный счетчик PC (или CS + IP в архитектуре микропроцессоров Intel),

регистр состояния SR (или EFLAGS),

регистры управления режимом работы процессора CR (Control Register),

регистры, реализующие сегментную и страничную организацию памяти,

регистры, обеспечивающие отладку программ и тестирование процессора.

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

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

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

Структура микропроцессора определяет состав и взаимодействие основных устройств и блоков, размещенных на его кристалле. В эту структуру входят:

центральный процессор (процессорное ядро), состоящее из устройства управления (УУ), одного или нескольких операционных устройств (ОУ),

внутренняя память (РЗУ, кэш-память, в микроконтроллерах - блоки оперативной и постоянной памяти),

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

периферийные устройства (таймерные модули, аналого-цифровые преобразователи, специализированные контроллеры),

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

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

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

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

CISC (Complex Instruction Set Computer) - архитектура реализована во многих типах микропроцессоров, выполняющих большой набор разноформатных команд с использованием многочисленных способов адресации. Эта классическая архитектура процессоров, которая начала свое развитие в 40-х годах прошлого века с появлением первых компьютеров. Типичным примером CISC-процессоров являются микропроцессоры семейства Pentium. Они выполняют более 300 команд разной степени сложности, которые имеют размер от 1 до 15 байт и обеспечивают более 10 различных способов адресации. Такое большое многообразие выполняемых команд и способов адресации позволяет программисту реализовать наиболее эффективные алгоритмы решения различных задач. Однако при этом существенно усложняется структура микропроцессора, особенно его устройства управления, что приводит к увеличению размеров и стоимости кристалла, снижению производительности. В то же время многие команды и способы адресации используются достаточно редко. Поэтому, начиная с 80-х годов прошлого века, интенсивное развитие получила архитектура процессоров с сокращенным набором команд (RISC-процессоры).

RISC (Reduced Instruction Set Computer) - архитектура отличается использованием ограниченного набора команд фиксированного формата. Современные RISC-процессоры обычно реализуют около 100 команд, имеющих фиксированный формат длиной 2 или 4 байта. Также значительно сокращается число используемых способов адресации. Обычно в RISC-процессорах все команды обработки данных выполняются только с регистровой или непосредственной адресацией. При этом для сокращения количества обращений к памяти RISC-процессоры имеют увеличенный объем внутреннего РЗУ - от 32 до нескольких сотен регистров, тогда как в CISC-процессорах число регистров общего назначения обычно составляет 8-16.

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

Указанные достоинства RISC-архитектуры привели к тому, что во многих современных CISC-процессорах используется RISC-ядро, выполняющее обработку данных. При этом поступающие сложные и разноформатные команды предварительно преобразуются в последовательность простых RISC-операций, быстро выполняемых этим процессорным ядром. Таким образом, работают, например, последние модели микропроцессоров Pentium и K7, которые по внешним показателям относятся к CISC-процессорам. Использование RISC-архитектуры является характерной чертой многих современных микропроцессоров.

VLIW (Very Large Instruction Word) - архитектура появилась относительно недавно - в 90-х годах. Ее особенностью является использование очень длинных команд (до 128 бит), отдельные поля которых содержат коды, обеспечивающие выполнение различных операций. Таким образом, одна команда вызывает выполнение сразу нескольких операций, которые могут производиться параллельно в различных операционных устройствах, входящих в структуру микропроцессора. При трансляции программ, написанных на языке высокого уровня, соответствующий компилятор производит формирование "длинных" VLIW-команд, каждая из которых обеспечивает реализацию процессором целой процедуры или группы операций. Данная архитектура реализована в некоторых типах современных микропроцессоров (PA8500 компании Hewlett-Packard, Itanium - совместная разработка Intel и Hewlett-Packard, некоторые типы DSP - цифровых процессоров сигналов) и является весьма перспективной для создания нового поколения сверхвысокопроизводительных процессоров.

Кроме набора выполняемых команд и способов адресации важной архитектурной особенностью микропроцессоров является используемый вариант реализации памяти и организация выборки команд и данных. По этим признакам различаются процессоры с Принстонской и Гарвардской архитектурой. Эти архитектурные варианты были предложены в конце 40-х годов специалистами, соответственно, Принстонского и Гарвардского университетов США для разрабатываемых ими моделей компьютеров.

Принстонская архитектура, которая часто называется архитектурой Фон-Неймана, характеризуется использованием общей оперативной памяти для хранения программ, данных, а также для организации стека. Для обращения к этой памяти используется общая системная шина, по которой в процессор поступают и команды, и данные. Структура и функционирование цифровой системы с Принстонской архитектурой описаны в разделе 1. Эта архитектура имеет ряд важных достоинств. Наличие общей памяти позволяет оперативно перераспределять ее объем для хранения отдельных массивов команд, данных и реализации стека в зависимости от решаемых задач. Таким образом, обеспечивается возможность более эффективного использования имеющегося объема оперативной памяти в каждом конкретном случае применения микропроцессора. Использование общей шины для передачи команд и данных значительно упрощает отладку, тестирование и текущий контроль функционирования системы, повышает ее надежность. Поэтому Принстонская архитектура в течение долгого времени доминировала в вычислительной технике.

Однако ей присущи и существенные недостатки. Основным из них является необходимость последовательной выборки команд и обрабатываемых данных по общей системной шине. При этом общая шина становится "узким местом" (bottle-neck - "бутылочное горло"), которое ограничивает производительность цифровой системы. Постоянно возрастающие требования к производительности микропроцессорных систем вызвали в последние годы все более широкое применение Гарвардской архитектуры при создании многих типов современных микропроцессоров.

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

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

Гарвардская архитектура получила также широкое применение в микроконтроллерах - специализированных микропроцессорах для управления различными объектами, рабочая программа которых обычно хранится в отдельном ПЗУ.

В современных микропроцессорах используются разнообразные способы предсказания ветвлений. Наиболее простой способ состоит в том, что процессор фиксирует результат выполнения предыдущих команд ветвления по данному адресу, и считает, что следующая команда с обращением по этому адресу даст аналогичный результат. Данный способ предсказания предполагает более высокую вероятность повторного обращения к определенной команде, задаваемой данным условием ветвления. Для реализации этого способа предсказания ветвления используется специальная память BTB (Branch Target Buffer), где хранятся адреса ранее выполненных условных переходов. При поступлении аналогичной команды ветвления предсказывается переход к ветви, которая была выбрана в предыдущем случае, и производится загрузка в конвейер команд из соответствующей ветви. При правильном предсказании не требуется перезагрузка конвейера, и эффективность его использования не снижается. Эффективность такого способа предсказания зависит от емкости BTB и оказывается достаточно высокой: вероятность правильного предсказания составляет 80% и более. Повышение точности предсказания достигается при использовании более сложных способов, когда хранится и анализируется предистория переходов - результаты нескольких предыдущих команд ветвления по данному адресу. В этом случае возможно определение чаще всего реализуемого направления ветвления, а также выявление чередующихся переходов. Реализация таких алгоритмов требует использования более сложных блоков предсказания, но при этом вероятность правильного предсказания повышается до 90-95 %.

Возможность повышения производительности процессора достигается также при введении в структуру процессора нескольких параллельно включенных операционных устройств, обеспечивающих одновременное выполнение нескольких операций. Такая структура процессора называется суперскалярной. В этих процессорах реализуется параллельная работа нескольких исполнительных конвейеров, в каждый из которых поступает для выполнения одна из выбранных и декодированных команд. В идеальном случае число одновременно выполняемых команд равно числу операционных устройств, включенных в исполнительные конвейеры. Однако при выполнении реальных программ трудно обеспечить полную загрузку всех исполнительных конвейеров, поэтому на практике эффективность использования суперскалярной структуры оказывается несколько ниже. Современные суперскалярные процессоры содержат до 4 до 10 различных операционных устройств, параллельная работа которых обеспечивает выполнение за один такт в среднем от 2 до 6 команд.

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

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

Рис. 1. Классификация современных микропроцессоров по функциональному признаку.

Хотя микропроцессор является универсальным средством для цифровой обработки информации, однако отдельные области применения требуют реализации определенных специфических вариантов их структуры и архитектуры. Поэтому по функциональному признаку выделяются два класса: микропроцессоры общего назначения и специализированные микропроцессоры (рисунок 1). Среди специализированных микропроцессоров наиболее широкое распространение получили микроконтроллеры, предназначенные для выполнения функций управления различными объектами, и цифровые процессоры сигналов (DSP - Digital Signal Processor), которые ориентированы на реализацию процедур, обеспечивающих необходимое преобразование аналоговых сигналов, представленных в цифровой форме.

Микропроцессоры общего назначения предназначены для решения широкого круга задач обработки разнообразной информации. Их основной областью использования являются персональные компьютеры, рабочие станции, серверы и другие цифровые системы массового применения. К этому классу относятся CISC-процессоры Pentium компании Intel, K7 компании Advanced MicroDevices (AMD), 680x0 компании Motorola, RISC-процессоры PowerPC, выпускаемые компаниями Motorola и IBM, SPARC компании Sun Microsystems и ряд других изделий различных производителей.

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

Ряд наиболее популярных микропроцессоров этого класса (Pentium, AMD K7 и некоторые другие) следует отнести к CISC-процессорам, так как они выполняют большой набор разноформатных команд с использованием многочисленных способов адресации. Однако в их внутренней структуре содержится RISC-процессор, который выполняет поступившие команды после их преобразования в последовательность простых RISC-операций. Ряд других микропроцессоров этого класса непосредственно реализует RISC-архитектуру. Поэтому можно считать, что использование RISC-архитектуры характерно для большинства этих микропроцессоров.

В ряде последних разработок (Itanium, PA8500) некоторых ведущих производителей успешно применяются принципы VLIW-архитектуры, которая может составить конкуренцию RISC-архитектуре в соревновании за достижение наивысшей производительности.

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

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

2. Микроконтроллеры, функциональные возможности и архитектурные решения

Микроконтроллеры являются наиболее массовым представителем микропроцессорной техники. Интегрируя на одном кристалле высокопроизводительный процессор, память и набор периферийных устройств, микроконтроллеры позволяют с минимальными затратами реализовать широкую номенклатуру систем управления различными объектами и процессами. Использование микроконтроллеров в системах управления и обработки информации обеспечивает исключительно высокие показатели эффективности при достаточно низкой стоимости. Микроконтроллерам практически нет альтернативы, когда нужно создать качественные и дешевые системы. Иногда система может состоять только из одного микроконтроллера. Исключение составляет применение программируемых логических интегральных схем (ПЛИС) в области обработки сигналов в том случае, когда требуется параллельная обработка большого потока входных данных. Основным классификационным признаком микроконтроллеров является разрядность микропроцессора. Имеются 4-, 8-, 16-, 32-разрядные микроконтроллеры. Разрядность микроконтроллера определяется точностью данных, необходимых для управления объектом. Наиболее массовыми и постоянно расширяющими свои области применения являются 8-разрядные микроконтроллеры, которые дешевле 16 - и 32-разрядных и имеют большую функциональность.

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

Схема начального запуска процессора (Reset);

Генератор тактовых импульсов;

Центральный процессор;

Память программ (E (E) PROM) и программный интерфейс;

Средства ввода/вывода данных;

Таймеры, фиксирующие число командных циклов.

Общая структура МК показана на рисунке 4. Эта структура дает представление о том, как МК связывается с внешним миром.

Рисунок 2 - структура микроконтроллера

Более сложные встраиваемые МК могут дополнительно реализовывать следующие возможности:

Встроенный монитор/отладчик программ;

Внутренние средства программирования памяти программ (ROM);

Обработка прерываний от различных источников;

Аналоговый ввод/вывод;

Последовательный ввод/вывод (синхронный и асинхронный);

Параллельный ввод/вывод (включая интерфейс с компьютером);

Подключение внешней памяти (микропроцессорный режим).

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

Некоторые МК (особенно 16 - и 32-разрядные) используют только внешнюю память, которая включает в себя как память программ (ROM), так и некоторый объем памяти данных (RAM), требуемый для данного применения. Они применяются в системах, где требуется большой объем памяти и относительное не большое количество устройств (портов) ввода/вывода. Типичным примером применения такого МК с внешней памятью является котроллер жесткого диска (HDD) с буферной кэш-памятью, который обеспечивает промежуточное хранение и распределение больших объемов данных (порядка нескольких мегабайт). Внешняя память дает возможность такому микроконтроллеру работать с более высокой скоростью, чем встраиваемый МК.

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

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

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

В связи с широким диапазоном решаемых задач управления требования, предъявляемые к производительности процессора, объему внутренней памяти команд и данных, набору необходимых периферийных устройств, оказываются весьма разнообразными. Для удовлетворения запросов потребителей выпускается большая номенклатура микроконтроллеров, которые принято подразделять на 8-, 16 - и 32-разрядные.

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

Для этих микроконтроллеров характерна реализация Гарвардской архитектуры, где используется отдельная память для хранения программ и данных. Для хранения программ в различных типах микроконтроллеров применяется либо масочно-программируемое ПЗУ (ROM), либо однократно-программируемое ПЗУ (PROM), либо электрически репрограммируемое ПЗУ (EPROM, EEPROM или Flash). Внутренняя память программ обычно имеет объем от нескольких единиц до десятков Кбайт. Для хранения данных используется регистровый блок, организованный в виде нескольких регистровых банков, или внутреннего ОЗУ. Объем внутренней памяти данных составляет от нескольких десятков байт до нескольких Кбайт. Ряд микроконтроллеров этой группы позволяет, в случае необходимости, дополнительно подключать внешнюю память команд и данных, объемом до 64 - 256 Кбайт.

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

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

32-разрядные микроконтроллеры содержат высокопроизводительный процессор, соответствующий по своим возможностям младшим моделям микропроцессоров общего назначения. В ряде случаев процессор, используемый в этих микроконтроллерах, аналогичен CISC - или RISC-процессорам, которые выпускаются или выпускались ранее в качестве микропроцессоров общего назначения. Например, в 32-разрядных микроконтроллерах компании Intel используется процессор i386, в микроконтроллерах компании Motorola широко применяется процессор 68020, в ряде других микроконтроллеров в качестве процессорного ядра служат RISC-процессоры типа PowerPC. На базе данных процессоров были реализованы различные модели персональных компьютеров. Введение этих процессоров в состав микроконтроллеров позволяет использовать в соответствующих системах управления огромный объем прикладного и системного программного обеспечения, созданный ранее для соответствующих персональных компьютеров.

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

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

3. Электронно-вычислительные машины. Классификация ЭВМ

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

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

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

Фон Нейман не только выдвинул основополагающие принципы логического устройства ЭВМ, но и предложил ее структуру, представленную на рисунке 3:

Рисунок 3 - Структура ЭВМ

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

· ОКОД (SISD) (single instruction stream / single data stream) - одиночный поток команд и одиночный поток данных. В таких машинах есть только один поток команд, все команды обрабатываются последовательно друг за другом и каждая команда инициирует одну операцию с одним потоком данных.

· ОКМД (SIMD) (single instruction stream / multiple data stream) - одиночный поток команд и множественный поток данных. В архитектурах подобного рода сохраняется один поток команд, включающий, в отличие от предыдущего класса, векторные команды. Это позволяет выполнять одну арифметическую операцию сразу над многими данными - элементами вектора.

· МКОД (MISD) (multiple instruction stream / single data stream) - множественный поток команд и одиночный поток данных. Определение подразумевает наличие в архитектуре многих процессоров, обрабатывающих один и тот же поток данных. Однако ни Флинн, ни другие специалисты в области архитектуры компьютеров до сих пор не смогли представить убедительный пример реально существующей вычислительной системы, построенной на данном принципе.

· МКМД (MIMD) (multiple instruction stream / multiple data stream) - множественный поток команд и множественный поток данных. Этот класс предполагает, что в вычислительной системе есть несколько устройств обработки команд, объединенных в единый комплекс и работающих каждое со своим потоком команд и данных.

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

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

По данной схеме строились системы: первая суперЭВМ - ILLIAC-IV, отечественные параллельные системы - ПС-2000, ПС-3000. Идея векторной обработки широко использовалась в таких известных суперЭВМ, как Cyber-205 и Gray-I, II, III. Узким местом подобных систем является необходимость изменения коммутации между процессорами, когда связь между ними отличается от матричной. Кроме того, задачи, допускающие широкий матричный параллелизм, составляют достаточно узкий класс задач. Структуры ВС этого типа, по существу, являются структурами специализированных суперЭВМ.

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

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

Архитектура МКМД предполагает, что все процессоры системы работают по своим программам с собственным потоком команд. В простейшем случае они могут быть автономны и независимы. Такая схема использования ВС часто применяется на многих крупных вычислительных центрах для увеличения пропускной способности центра. Большой интерес представляет возможность согласованной работы ЭВМ (процессоров), когда каждый элемент делает часть общей задачи. Общая теоретическая база такого вида работ практически отсутствует. Но можно привести примеры большой эффективности этой модели вычислений. Подобные системы могут быть многомашинными и многопроцессорными. Например, отечественный проект машины динамической архитектуры (МДА) - ЕС-2704, ЕС-2727 позволял одновременно использовать сотни процессоров.

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

Размещено на Allbest.ru

Подобные документы

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

    презентация , добавлен 05.02.2015

    Понятия и принцип работы процессора. Устройство центрального процессора. Типы архитектур микропроцессоров. Однокристальные микроконтроллеры. Секционные микропроцессоры. Процессоры цифровой обработки сигналов. Эволюция развития микропроцессоров Intel.

    реферат , добавлен 25.06.2015

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

    реферат , добавлен 18.04.2004

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

    контрольная работа , добавлен 28.05.2015

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

    контрольная работа , добавлен 11.11.2010

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

    курсовая работа , добавлен 03.03.2011

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

    контрольная работа , добавлен 01.05.2009

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

    курсовая работа , добавлен 05.11.2011

    Электронно-вычислительная машина (ЭВМ) как средство обработки информации. Аппаратные и программные средства ЭВМ. Системы счисления и представления информации. Элементы структурного программирования. Построение блок-схем алгоритмов решения задач.

    презентация , добавлен 26.07.2013

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

Эта глава посвящена архитектурным особенностям микропроцессоров. В ней приведены общие сведения о микропроцессорах, рассматриваются принципы структурно - функциональной организации) типы данных, регистровая память, спо-собы адресации и система команд микропроцессоров. Излагаемый материал ил-люстрируется на простейших 8- и 16-разрядных процессорах.

Основные понятия

Микропроцессор — это программно-управляемое устройство в виде интегральной микросхемы (БИС или СБИС), предназначенное для обработки цифровой информации. Поскольку все современные микро-процессоры имеют интегральное исполнение, синонимом микропроцессора стал термин процессор.

Микроконтроллер — это специализированный процессор, предназначен-ный для реализации функций управления (control— управление).

{xtypo_quote}Цифровой сигнальный процессор(Digital Signal Processor — DSP) — это специа-лизированный процессор, предназначенный для обработки цифровых сигналов. {/xtypo_quote}
Микропроцессорная система представляет собой функционально законченное изделие, состоящее из нескольких цифровых устройств, включая процессор. Это понятие объединяет широкий набор законченных изделий, начиная с микроконтроллеров, выполненных на интегральных микросхемах, и кон-чая компьютерными системами, представляющими собой набор отдельных конст-руктивно оформленных устройств (системный блок, клавиатура, монитор и др.). В дальнейшем рассматриваются простейшие (однокристальные) микропроцес-сорные системы, содержащие помимо процессора основную память и устройства ввода/вывода. Такие микропроцессорные системы можно отнести к классу микро-процессоров.

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

● физическую организацию в виде принципиальной схемы;

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

В дальнейшем рассматривается организация микропроцессоров на логиче-ском уровне, или структурно-функциональная организация процессоров.

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

{xtypo_quote}Например, современные 32-разрядные процессоры х86 с архитектурой IA-32 (Intel Architecture — 2 bit) имеют стандарт-ный набор регистров, общую систему основных команд, одинаковые способы организации и адресации памяти, защиты памяти и обслуживания прерываний. Отметим, что понятие архитектуры в большей степени характеризует свойства системы, чем устройства. {/xtypo_quote}

Основные виды архитектур

По форматам используемых команд (инструкций) можно выделить:

● CISC-архитектуру, которая относится к процессорам (компьютерам) с полным набором команд (Complete Instruction Set Computer— CISC). Она реализова-на во многих типах микропроцессоров (например Pentium), выполняющих большой набор разноформатных команд с использованием многочисленных способов адресации.

Система команд процессоров с CISC-архитектурой может содержать не-сколько сотен команд разного формата (от 1 до 15 байт), или степени слож-ности, и использовать более 10 различных способов адресации, что позволя-ет программисту реализовать наиболее эффективные алгоритмы решения различных задач.

Развитие традиционных CISC

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

● RISC-архитектуру, которая относится к процессорам (компьютерам) с сокра-щенным набором команд (Reduced instruction Set Computer — RISC). Появле-ние RISC -архитектуры продиктовано тем, что многие CISC -команды и спо-собы адресации используются достаточно редко. Основная особенность RISC-архитектуры проявляется в том, что система команд состоит из неболь-шого количества часто используемых команд одинакового формата, которые могут быть выполнены за один командный цикл (такт) центрального процес-сора. Более сложные, редко используемые команды реализуются на про-граммном уровне. Однако за счет значительного повышения скорости испол-нения команд средняя производительность RISC-процессоров может оказать-ся выше, чем у процессоров с CISC-архитектурой.

{xtypo_quote}Большинство команд RISC -процессоров связано с операцией регистр-регистр. Для обращения к памяти оставлены наиболее простые с точки зре-ния временных затрат операции загрузки в регистры и записи в память. {/xtypo_quote}

Современные RISC -процессоры реализуют около 100 команд, имеющих фиксированный формат длиной 4 байта, и используют небольшое число наи-более простых способов адресации (регистровую, индексную и некоторые другие).

Для сокращения количества обращений к внешней оперативной памяти RISC -процессоры содержат десятки-сотни регистров общего назначения (РОН), тогда как в CISC -процессорах всего 8-16 регистров. Обращение к внешней памяти в RISC-процессорах используется только в операциях за-грузки данных в РОН или пересылки результатов из РОН в память. За счет со-кращения аппаратных средств, необходимых для декодирования и выполне-ния сложных команд, достигается существенное упрощение интегральных схем RISC-процессоров и снижение их стоимости. Кроме того, значительно повышается производительность. Благодаря указанным достоинствам во многих современных
CI SC -процессорах (последние модели Pentium и К7) ис-пользуется RISC-ядро. При этом сложные CI SC-команды предварительно преобразуются в последовательность простых RISC-операций и быстро вы-полняются RISC-ядром;

● VLIW-архитектуру, которая относится к микропроцессорам с использованием очень длинных команд (Very Large Instruction Word— VLIW). Отдельные поля команды содержат коды, обеспечивающие выполнение различных операций. Одна VLIW -команда может выполнить сразу несколько операций одновремен-но в различных узлах микропроцессора. Формирование «длинных» VLIW - koманд производит соответствующий компилятор при трансляции программ, написанных на языке высокого уровня.

{xtypo_quote}VLIW -архитектура реализована в неко-торых типах современных микропроцессоров и является весьма перспектив-ной для создания нового поколения сверхвысокопроизводительных процес-соров. {/xtypo_quote}

По способу организации выборки команд и данных различа-ют два вида архитектур:

● принстонская архитектура, или архитектура фон-Неймана, особенностью которой является (рис. 2.1.1) использование:

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

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

Недостаток принстонской архитектуры

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

● гарвардская архитектура (создатель Говард Айкен), особенностью которой является физическое разделение памяти команд (программ) и памяти данных (рис. 2.1.2). Это обстоятельство вызвано постоянно возрастающими требова-ниями к производительности микропроцессорных систем. Память команд и память данных соединяются с процессором отдельными шинами. Благодаря разделению потоков команд и данных, а также совмещению операций их вы-борки (и записи результатов обработки) обеспечивается более высокая про-изводительность, чем при использовании принстонской архитектуры.

Недостатки гарвардской архитектуры

Усложнение конструкции из-за ис-пользования отдельных шин для команд и данных; фиксированный объем па-мяти для команд и данных; увеличение общего объема памяти из-за невоз-можности ее оптимального перераспределения между командами и данными. Гарвардская архитектура получила широкое применение в микроконтрол-лерах — специализированных микропроцессорах для управления различными объектами, а также во внутренней структуре современных высокопроизводи-тельных микропроцессоров в кэш-памяти с раздельным хранением команд и данных.

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

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

Литература

1. Д. Гивоне, Р. Россер. Микропроцессоры и микрокомпьютеры. Вводный курс. Перевод с английского. – М.: Мир, 1983.

2. Д. Корфрон. Технические средства микропроцессорных систем. Практический курс. Перевод с английского. – М.: Мир, 1983.

3. С.Т. Хвощ, Н.Н. Варлинский, Е.А. Попов. Микропроцессоры и микроЭВМ в системах автоматического управления. Справочник. – Л.: Машиностроение, 1987.

4. Р. Токхайм. Микропроцессоры: курс и упражнения. Перевод с английского, под ред. В.Н. Грасевича – М.: Энергоатомиздат, 1988.


1. ЭВМ и микроЭВМ. Общие сведенья.

Поколения ЭВМ.

В 1949г. создана первая ЭВМ на лампах. В 1951 году была создана первая промышленная ЭВМ (Univac I). В этом же году появилась и в СССР Киев у Глушкова первая ЭВМ. Это были машины первого поколения.

Второе поколение – на транзисторах и полупроводниках (Проминь, Днепр, Минск).

В 1959г. изобрели интегральные схемы.

В 1965г. был создан первый миникомпьютер. (В СССР – М6000, М40-30, БЭСМ, машины ряда ЕС). Миникомпьютеры уже не были всецело предназначены для обработки данных и решения задач; их начали включать как составные части в системы, требовавшие быстрого принятия решений, - системы реального времени .

С появлением в 1971г. микропроцессоров началась эра программируемой логики.

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



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


Типовая структура ЭВМ.

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

Рис. 1.1. Принцип организации ЭВМ

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

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

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

Память

Запоминание и хранение больших объемов информации происходит в памяти, точнее в запоминающем устройстве . ЗУ подразделяются на подблоки, называемые регистрами , каждый из которых способен хранить одно машинное слово. Группа двоичных цифр, обрабатываемых одновременно, называется машинным словом , а число двоичных цифр, составляющих слово, называется длиной слова . Типичные микроЭВМ имеют длину слова 4, 8, 12, 16 двоичных разрядов. В силу особой распространенности слово длиной 8 бит имеет специальное название – байт .

Каждый регистр в ЗУ, или ячейка памяти имеет свой адрес. Адрес – это просто целое число, однозначно идентифицирующее ячейку. Слово, хранящееся в ячейке, называют содержимым этой ячейки.

Арифметическое устройство (АУ)

Обработка данных осуществляется главным образом в АУ. Эта обработка включает в себя как арифметические, так и логические операции – они очень элементарны (сложить два числа, вычесть, сравнить, сдвинуть одно по отношению к другому, инвертировать, логический умножить, исключить ИЛИ).

Главный регистр в АУ – аккумулятор .

Имеется в АУ несколько рабочих регистров для кратковременного хранения результатов вычисления.

АУ содержит также признаковые биты – флажки . Флажки содержат информацию, характеризующую состояние процессора и результаты сравнения чисел. Состояние флажков вместе с другой важной информацией о состоянии ЭВМ хранится в специальном регистре – слове состоянии программы (PSW – program status word).

Устройство управления (УУ)

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

В УУ находится программный счетчик для указания адреса очередной команды. При получении в УУ команды содержимое счетчика автоматически увеличивается на 1.

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

Необходимо адрес ячейки различать с ее содержимым и не путать эти понятия.

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

Устройство ввода/вывода (УВВ)

Через устройство ввода/вывода осуществляется контакт ЭВМ с внешним миром. Они являются буферами для преобразования информации с тех языков, уровней и тех скоростей, на которых работает ЭВМ, к тем, которые воспринимает человек или другая связанная с ЭВМ система. УВВ представляет собой периферийные устройства ЭВМ. Точки контакта между УВВ и ЭВМ называются портами ввода/вывода.


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

МикроЭВМ

МикроЭВМ – это система с шинной организацией, состоящая из модулей или блоков, реализованных в виде БИС. Эти модули обрабатывают информацию, управляют потоком и интерпретацией команд, управляют работой шин, хранят информацию и осуществляют взаимодействие между микроЭВМ и ее окружением. Это взаимодействие осуществляют блоки, называемые портами ввода/вывода. Каждый такой порт является интерфейсом между микропроцессором и каким-либо внешним устройством (например, терминалом, внешней памятью, измерительным прибором и др.). Взаимодействие блоков осуществляется при помощи шин трех типов: адресных шин, шин данных и управляющих шин.


Рис. 2.1. Структура микроЭВМ с шинной организацией


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

Рис. 2.2. Гипотетический МП

В приведенном гипотетическом микропроцессоре:

· программный счетчик (счетчик команд), стек и регистр команд служат для обработки команд;

· АЛУ, триггер переноса, общие регистры, регистр адреса данных служат для обработки данных;

· остальные компоненты – дешифратор команд, БУС – управляют работой микропроцессора в целом.

Взаимодействие компонентов осуществляется по внутренним каналам передачи данных. Связь МП с другими блоками (ЗУ и устройства ввода/вывода) происходит по адресной шине, шине данных и шине управления.

Микропроцессор работает со словами, состоящими из 8 битов, называемых байтами.

Адресная шина МП однонаправленная, а шина данных двунаправленная. Управляющая шина состоит из 5 линий, ведущих к блоку управления и синхронизации и 8 выходящих из него линий. По этим линиям передаются управляющие и тактирующие сигналы между компонентами микропроцессора и между МП и другими блоками микроЭВМ.

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

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

Регистр адреса данных содержит адрес операнда для команд, обращающихся к памяти, адрес порта для команд ввода/вывода или адрес следующей команды для команд перехода.

Пятнадцать 8-битовых общих регистров содержат операнды для всех команд, работающих с данными. Для указания этих регистров используются 4-битовые коды от 0000 до 1110. Регистр 0000 называется аккумулятором (АК) и участвует во всех арифметических и логических операциях (в АК содержится один из операндов перед началом выполнения операции и в АК загружается результат после ее выполнения). Обычно обращение к общим регистрам осуществляется при помощи R-селектора или r-селектора . R-селектор позволяет обращаться к любому регистру, тогда как через r-селектор доступны только три первые регистры.

Важной возможностью МП является косвенная адресация. Задание несуществующего регистра общего назначения 1111используется как указание на то, что нужно обратиться к байту памяти по 16-разрядному адресу, который получается комбинированием содержимого двух фиксированных общих регистров. Старшие 8 разрядов адреса – из регистра 0001, а следующие 8 разрядов – из регистра 0010 (часто эти регистры называют H и L соответственно).

Все арифметические и логические операции выполняются в арифметико-логическом устройстве (АЛУ) . Входами АЛУ служат две 8-битовые шины. Одна из них идет от аккумулятора (регистр 0000), а другая – от R-селектора, который выбирает либо один из регистров общего назначения от 0000 до 1110, либо ячейку памяти, если задана косвенная адресация. Еще одна входная линия поступает в АЛУ от триггера переноса С, который участвует в некоторых арифметических и логических операциях. Результаты из АЛУ передаются в аккумулятор по выходной 8-битовой шине. Существуют еще две линии, идущие от АЛУ к блоку управления и синхронизации; они передают информацию о наличии или отсутствии двух особых условий: аккумулятор содержит нули (линия Z) и старший разряд аккумулятора равен 1 (линия N). Триггер переноса и обе линии состояния АЛУ Z и N называются флажками и используются в командах условного перехода.

Последний компонент МП – блок управления и синхронизации (БУС) . Он получает сигналы от дешифратора команд, который анализирует команду. В БУС из АЛУ и от триггера переноса поступают сигналы, по которым определяются условия для передач управления. Все остальные компоненты МП получают от БУС управляющие и синхронизирующие сигналы, необходимые для выполнения команды. С помощью 13 внешних линий реализуется интерфейс устройства управления с другими модулями микроЭВМ.

Раздел 1 Архитектура микропроцессорного вычисления

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

План:

1 Архитектура микропроцессора. Классификация

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

Микропроцессорная система (МПС) представляет собой функционально законченное изделие, состоящее из одного или нескольких устройств, главным образом микропроцессорных: микропроцессора и/или микроконтроллера.

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

Микропроцессором (МП) называется программно-управляемое устройство, осуществляющее процесс цифровой обработки информации и управления им и построенное, как правило, на одной БИС.

Разные МП или МК объединяют в семейства как технология «микроядра», в качестве которого выступает процессорное ядро, взаимодействующее с периферийными устройствами различной номенклатуры, так и принципы, свойственные открытым системам: совместимость ( compatibility ), масштабируемость ( scalability ), переносимость ( portability ) и взаимодействие приложений ( introperability ).

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

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

Рисунок 1 - Классификация современных микропроцессоров по функциональному признаку

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

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

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

Цифровые процессоры сигналов (ЦПС) представляют класс специализированных микропроцессоров, ориентированных на цифровую обработку поступающих аналоговых сигналов. Специфической особенностью алгоритмов обработки аналоговых сигналов является необходимость последовательного выполнения ряда команд умножения-сложения с накоплением промежуточного результата в регистре-аккумуляторе. Поэтому архитектура ЦПС ориентирована на реализацию быстрого выполнения операций такого рода. Набор команд этих процессоров содержит специальные команды MAC (Multiplication with Accumlation ), реализующие эти операции.

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

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

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

Программный счетчик PC (или CS + IP в архитектуре микропроцессоров Intel );

Регистр состояния SR (или EFLAGS );

Регистры управления режимом работы процессора CR (Control Register );

Регистры, реализующие сегментную и страничную организацию памяти;

Регистры, обеспечивающие отладку программ и тестирование процессора.

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

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

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

CISC ( Complex Instruction Set Computer ) - архитектура реализована во многих типах микропроцессоров, выполняющих большой набор разноформатных команд с использованием многочисленных способов адресации. Они выполняют более 200 команд разной степени сложности, которые имеют размер от 1 до 15 байт и обеспечивают более 10 различных способов адресации. Такое большое многообразие выполняемых команд и способов адресации позволяет программисту реализовать наиболее эффективные алгоритмы решения различных задач.

RISC ( Reduced Instruction Set Computer ) - архитектура отличается использованием ограниченного набора команд фиксированного формата. Современные RISC -процессоры обычно реализуют около 100 команд, имеющих фиксированный формат длиной 4 байта. Также значительно сокращается число используемых способов адресации. Обычно в RISC -процессорах все команды обработки данных выполняются только с регистровой или непосредственной адресацией.

VLIW ( Very Large Instruction Word ) - архитектура появилась относительно недавно - в 1990-х годах. Ее особенностью является использование очень длинных команд (до 128 бит и более), отдельные поля которых содержат коды, обеспечивающие выполнение различных операций. Таким образом, одна команда вызывает выполнение сразу нескольких операций параллельно в различных операционных устройствах, входящих в структуру микропроцессора.

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

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

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

Вывод:

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

­ Контрольные вопросы:

1 Что такое микропроцессор?

2 Как классифицируются современные микропроцессоры по функции-ональному признаку?

3 Перечислите варианты архитектур процессоров.

4 Поясните особенности CISC архитектуры процессоров.

5 Поясните особенности RISC архитектуры процессоров.

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

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

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

7.1. Архитектура персонального компьютера

Персональный компьютер типа IBM PC имеет довольно традиционную архитектуру микропроцессорной системы и содержит все обычные функциональные узлы: процессор, постоянную и оперативную память, устройства ввода/вывода, системную шину, источник питания (рис.7.1). Основные особенности архитектуры персональных компьютеров сводятся к принципам компоновки аппаратуры, а также к выбранному набору системных аппаратных средств.

Рис. 7.1. Архитектура персонального компьютера типа IBM PC.

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

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


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

Постоянная память (ROM BIOS - Base Input/Output System) имеет небольшой объем (до 64 Кбайт), содержит программу начального запуска, описание конфигурации системы, а также драйверы (программы нижнего уровня) для взаимодействия с системными устройствами.

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

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

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

Перестановщик байтов данных помогает производить обмен данными между 16-разрядным и 8-разрядным устройствами, пересылать целые слова или отдельные байты.

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

Системные устройства ввода/вывода - это те устройства, которые необходимы для работы компьютера и взаимодействия со стандартными внешними устройствами по параллельному и последовательному интерфейсам. Они могут быть выполнены на материнской плате, а могут располагаться на платах расширения.

Платы расширения устанавливаются в слоты (разъемы) системной магистрали и могут содержать оперативную память и устройства ввода/вывода. Они могут обмениваться данными с другими устройствами на шине в режиме программного обмена, в режиме прерываний и в режиме ПДП. Предусмотрена также возможность захвата шины, то есть полного отключения от шины всех системных устройств на некоторое время.

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

Первый компьютер семейства, получивший широкое распространение, IBM PC XT, был выполнен на базе оригинальной системной магистрали PC XT-Bus. В дальнейшем (начиная с IBM PC AT) она была доработана до магистрали, ставшей стандартной и получившей название ISA (Industry Standard Architecture). До недавнего времени ISA оставалась основой компьютера. Однако, начиная с появления процессоров i486 (в 1989 году), она перестала удовлетворять требованиям производительности, и ее стали дублировать более быстрыми шинами: VLB (VESA Local Bus) и PCI (Peripheral Component Interconnect bus) или заменять совместимой с ISA магистралью EISA (Enhanced ISA). Постепенно шина PCI вытеснила конкурентов и стала фактическим стандартом, а начиная с 1999 года в новых компьютерах рекомендуется полностью отказываться от магистрали ISA, оставляя только PCI. Правда, при этом приходится отказываться от применения плат расширения, разработанных за долгие годы для подключения к магистрали ISA.

Другое направление совершенствования архитектуры персонального компьютера связано с максимальным ускорением обмена информацией с системной памятью. Именно из системной памяти компьютер читает все исполняемые команды, и в системной же памяти он хранит данные. То есть больше всего обращений процессор совершает именно к памяти. Ускорение обмена с памятью приводит к существенному ускорению работы всей системы в целом. Но при использовании для обмена с памятью системной магистрали приходится учитывать скоростные ограничения магистрали. Системная магистраль должна обеспечивать сопряжение с большим числом устройств, поэтому она должна иметь довольно большую протяженность; она требует применения входных и выходных буферов для согласования с линиями магистрали. Циклы обмена по системной магистрали сложны, и ускорять их нельзя. В результате существенного ускорения обмена процессора с памятью по магистрали добиться невозможно.

Разработчиками был предложен следующий подход. Системная память подключается не к системной магистрали, а к специальной высокоскоростной шине, находящейся «ближе» к процессору, не требующей сложных буферов и больших расстояний. В таком случае обмен с памятью идет с максимально возможной для данного процессора скоростью, и системная магистраль не замедляет его. Особенно актуальным это становится с ростом быстродействия процессора (сейчас тактовые частоты процессоров персональных компьютеров достигают 1-3 ГГц).

Таким образом, структура персонального компьютера из одношинной, применявшейся только в первых компьютерах, становится трехшинной (рис. 7.2).

Рис. 7.2. Организация связей в случае трехшинной структуры.

Назначение шин следующее:

к локальной шине подключаются центральный процессор и кэш-память (быстрая буферная память);

к шине памяти подключается оперативная и постоянная память компьютера, а также контроллер системной шины;

к системной шине (магистрали) подключаются все остальные устройства компьютера.

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

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

Если в компьютере применяются две системные шины, например, ISA и PCI, то каждая из них имеет свой собственный контроллер шины, и работают они параллельно, не влияя друг на друга. Тогда получается уже четырехшинная, а иногда и пятишинная структура. Пример такой структуры компьютера приведен на рис. 7.3.

Рис. 7.3. Пример многошинной структуры.

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

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

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

Процессоры персональных компьютеров

Несмотря на то, что первый персональный компьютер был выпущен фирмой Apple, сейчас персональными компьютерами называют в основном IBM PC-совместимые компьютеры. Это связано, прежде всего, с тем, что фирма IBM выбрала правильную рыночную политику: она не скрывала принципов устройства своих компьютеров и не патентовала основных решений. В результате многие производители стали выпускать совместимые компьютеры, и они быстро стали фактическим стандартом. Из-за большого объема выпуска персональные компьютеры начали быстро дешеветь. К тому же для IBM-совместимых персональных компьютеров стали разрабатывать множество программных средств, что еще больше способствовало их распространению. Поэтому, несмотря на некоторые существенные архитектурные недостатки, IBM-совместимые персональные компьютеры сейчас уверенно занимают первое место на рынке.

С самого начала фирма IBM ориентировалась на процессоры Intel. У этих процессоров были очень мощные конкуренты, например, процессоры фирм Motorola или Zilog, превосходившие процессоры Intel по многим параметрам, но именно благодаря персональным компьютерам процессоры Intel смогли выйти победителями в конкурентной борьбе. К тому же еще некоторые фирмы (например, AMD, VIA, Cyrix) выпускают Intel-совместимые процессоры. Поэтому мы рассмотрим основные особенности процессоров фирмы Intel. Это позволит нам также проследить основные тенденции в развитии процессоров за последние десятилетия.

Свой первый 16-разрядный процессор i8086 фирма Intel выпустила в 1978 году. Он мог адресовать 1 Мбайт памяти (то есть имел 20-разрядную шину адреса), производительность его при тактовой частоте 5 МГц составляла 0,33 MIPS, но вскоре появились процессоры с тактовой частотой 8 и 10 МГц. Чуть позже (через год) была выпущена упрощенная версия процессора i8086 - i8088, который отличался только 8-разрядной внешней шиной данных. За счет этого он был медленнее, чем i8086, на 20-60% при той же тактовой частоте, но зато заметно дешевле. Именно на его основе был собран очень популярный персональный компьютер IBM PC XT.

16-разрядный процессор i80286, выпущенный в 1982 году, был использован в персональных компьютерах IBM PC AT. Принципиально новым было в нем то, что он мог адресовать до 16 Мбайт памяти и имел помимо реального режима, аналогичного i8086, еще и так называемый защищенный режим, позволяющий более гибко управлять памятью. Производительность этого процессора при тактовой частоте 8 МГц составляла 1,2 MIPS.

Важным шагом стало появление в 1985 году полностью 32-разрядного процессора i80386, способного адресовать до 4 Гбайт памяти (32-разрядная адресная шина). Он имел еще более развитую систему управления памятью MMU (Memory Management Unit). Производительность его при тактовой частоте 16 МГц составляла 6 MIPS. С появлением этого процессора стала бурно развиваться операционная система MS Windows, существенно изменившая процесс работы с компьютерами типа IBM PC.

Еще одним принципиальным шагом стало создание в 1989 году процессора Intel 486DX, в котором появились встроенный математический сопроцессор, существенно ускоривший выполнение арифметических операций, и внутренняя кэш-память, ускоряющая обмен с оперативной памятью. Максимальный объем адресуемой памяти этого процессора - 4 Гбайт. На тактовой частоте 25 МГц производительность была 16,5 MIPS. Начиная с процессора 486, получило распространение так называемое умножение тактовой частоты, то есть внутреннее удвоение и даже учетверение внешней тактовой частоты (обозначается 486DX2, 486DX4).

В 1995 году появились первые процессоры Pentium, открывшие новый этап в развитии семейства. Они были 32-разрядными внутри, но имели 64-разрядную внешнюю шину данных. Принципиальным отличием было использование в них так называемой суперскалярной архитектуры, следствием чего стало более высокое быстродействие при той же тактовой частоте, что и i486DX. При тактовой частоте 66 МГц производительность процессора достигала 112 MIPS. В 1996 году тактовая частота Pentium была доведена до 200 МГц, а стоимость снизилась настолько, что он стал рядовым процессором персональных компьютеров семейства IBM PC.

В 1997 году Pentium был дополнен технологией MMX, призванной ускорять выполнение мультимедийных приложений (обработку изображений и звука). И в этом же году появился процессор Pentium II, который включает в себя технологию ММХ и имеет более высокое быстродействие. Возможная тактовая частота достигла 400 МГц.

В последние годы появились процессоры Pentium III и Pentium IV, имеющие еще более развитую архитектуру и тактовую частоту, превышающую 1 ГГц у Pentium III и 3 ГГц у Pentium IV.

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

Особенности процессоров 8086/8088

Описание микропроцессоров фирмы Intel мы начнем с процессоров i8086/8088. Именно заложенные в них архитектурные решения во многом определили архитектуру последующих моделей семейства Intel, поддерживающих совместимость с более ранними моделями. В том числе и с недостатками и ограничениями предыдущих моделей.

Процессор i8086 имеет совмещенную (мультиплексированную) 20-разрядную внешнюю шину адреса/данных. Данные передаются по 16 разрядам, адрес - по 20 разрядам. Шина управления имеет 16 разрядов (в частности, в нее входят строб адреса и стробы обмена с памятью и устройствами ввода/вывода). Среднее время выполнения команды занимает 12 тактов синхронизации, один цикл обмена по внешней шине требует 4 тактов (без учета тактов ожидания, вводимых при асинхронном обмене). У процессора i8088 внешняя шина данных 8-разрядная.

Одна из характерных особенностей процессоров i8086/8088 - принцип сегментирования памяти. То есть вся память представляется не в виде непрерывного пространства, а в виде нескольких кусков - сегментов заданного размера (по 64 Кбайта), положение которых в пространстве памяти можно программно изменять. Об этом уже говорилось в разделе 3.1.2 (см. рис. 3.5 и 3.6).

Процессор 8086/8088 имеет 14 регистров разрядностью по 16 бит. Об их назначении также уже говорилось в разделе 3.2.

Для ускорения выборки команд из памяти в процессоре 8086 предусмотрен внутренний 6-байтный конвейер (в процессоре 8088 - 4-байтный). Конвейер заполняется читаемыми из памяти командами во время выполнения предыдущей команды и сбрасывается (считается пустым) при выполнении любой команды перехода (даже если это команда перехода на следующий адрес).

Система команд процессора включает в себя 133 команды, поддерживающие 24 метода адресации операндов. Такое большое число команд может рассматриваться как достоинство (можно гибко выбирать команду, оптимально подходящую для каждого конкретного случая), но оно же заметно усложняет структуру процессора.

Каждая команда содержит 1, 2 или 4 байта кода команды, за которыми могут следовать 1, 2 или 4 байта операнда.

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

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

Особое место занимает немаскируемое прерывание NMI (Non-Masked Interrupt), которое вырабатывается при поступлении внешнего сигнала NMI и не зависит от состояния флага разрешения аппаратных прерываний IF. В компьютере оно используется для контроля четности памяти, контроля корректности обмена с памятью и устройствами ввода/вывода, а также для обработки так называемых исключений, то есть особых условий, возникающих в процессе работы. Немаскируемым оно называется именно потому, что его нельзя запретить.

Важная отличительная особенность процессора - разделение операций обмена с устройствами ввода/вывода и с памятью. Для обмена с устройствами ввода/вывода используются как отдельные команды ввода и вывода, так и специальные управляющие сигналы на шине управления. Адреса и данные как при обмене с памятью, так и при обмене с устройствами ввода/вывода передаются по одним и тем же шинам Микропроцессоры i8086/8088 выполнены в виде интегральной микросхемы в 40-выводном корпусе. Отличие в назначении выводов микросхемы между ними только одно: адрес в процессоре 8088 не мультиплексирован с данными (передается по отдельным линиям), а в процессоре 8086 - мультиплексирован.

Процессор работает от одного источника питания напряжением +5В и требует внешнего тактирующего сигнала с частотой, определяемой номером модели (от 4,77 МГц до 10 МГц).

Специальный управляющий сигнал MN/MX определяет минимальный или максимальный режим работы процессора. В минимальном режиме процессор сам вырабатывает сигналы управления для внешней шины. Этот режим используется для построения простейших систем. Для работы в составе компьютера применяется максимальный режим, при котором сигналы управления внешней шиной вырабатываются специальной микросхемой контроллера шины i8288.

Особенности процессоров Pentium

Процессоры Pentium относятся к пятому поколению процессоров или к третьему поколению 32-разрядных процессоров. По своим основным архитектурным принципам они совместимы с процессорами 386 и 486. Но имеются существенные отличия, позволяющие говорить о новом поколении:

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

Внешняя 64-разрядная шина данных для повышения производительности. Это требует соответствующей организации памяти. Из-за такой особенности процессор иногда неправильно называют 64-разрядным (хотя внутри он все-таки остался 32-разрядным). Внешняя шина адреса процессора - 32-разрядная.

Применение технологии динамического предсказания ветвлений (переходов).

Раздельный кэш для команд и данных объемом 8 Кбайт каждый. Длина строки кэша - 32 байта. Оба кэша работают в режиме обратной записи.

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

Сокращено время (число тактов) выполнения команд.

Предусмотрена возможность построения двухпроцессорных систем.

Введены средства управления энергопотреблением и тестирования.

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

В дополнение к базовой архитектуре 32-разрядных процессоров Pentium имеет набор регистров MSR (Model Specific Registers). В него входит группа тестовых регистров (TR1 - TR12), средства слежения за производительностью, регистры-фиксаторы адреса и данных цикла, вызвавшего срабатывание контроля машинной ошибки. Название этой группы регистров указывает на их уникальность для каждой модели процессоров Pentium.

Средства для слежения за производительностью (мониторинга производительности) включают в себя таймер реального времени и счетчики событий. Таймер представляет собой 64-разрядный счетчик, инкрементируемый с каждым тактом процессора. Два счетчика событий имеют разрядность по 40 бит и программируются на подсчет событий различных классов, связанных с шинными операциями, исполнением команд, связанных с работой кэша, контролем точек останова и т.д. Сравнивая состояния таймера и счетчиков событий, можно сделать вывод о производительности процессора.

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

Средства для построения двухпроцессорных систем позволяют на одной локальной шине устанавливать два процессора с объединением почти всех одноименных выводов. Это дает возможность использовать симметричную мультипроцессорную обработку (SMP - Symmetric Multi-Processing) или строить функционально избыточные системы (FRC - Functional Redundancy Checking).

В режиме SMP каждый процессор выполняет свою задачу, порученную ему операционной системой, что поддерживается такими системами, как Novell NetWare, Windows NT, Unix. Оба процессора разделяют общие ресурсы компьютера, включая память и устройства ввода/вывода. В каждый момент шиной управляет один процессор, по определенным правилам они меняются ролями. В идеальном случае производительность системы увеличивается вдвое (без учета обращений к шине и времени на переключение процессоров).

В конфигурации FRC два процессора выступают как один логический процессор. Основной процессор (Master) работает в обычном однопроцессорном режиме. Проверочный процессор (Checker) выполняет все те же операции внутри себя, не управляя внешней шиной, и сравнивает сигналы основного процессора с теми, которые генерирует сам. В случае несовпадения формируется сигнал ошибки, обрабатываемый как прерывание. То есть в данном случае увеличивается надежность системы в целом (в идеале - вдвое).

Развитием Pentium стало добавление технологии MMX, рассчитанной на мультимедийное, графическое и коммуникационное применение. Основная идея ММХ заключается в одновременной обработке нескольких элементов данных за одну команду (SIMD, Single Instruction - Mutiple Data). Расширение ММХ использует новые типы упакованных 64-битных данных:

упакованные байты - восемь байт;

упакованные слова - четыре слова;

упакованные двойные слова (два двойных слова);

учетверенное слово (одно слово).

Эти типы данных могут обрабатываться в восьми дополнительных 64-разрядных регистрах ММХ0 - ММХ7. В систему команд для поддержки MMX введено 57 дополнительных команд для одновременной обработки нескольких единиц данных (команды пересылки, арифметические, логические команды и команды преобразования форматов данных). Команды ММХ доступны из любого режима процессора.

Кроме того, в процессорах Pentium ММХ увеличен объем кэша данных и программ (до 16 Кбайт каждый), увеличено число ступеней конвейеров и введено еще несколько усовершенствований, повышающих производительность обычных (не мультимедийных) операций.

От процессора Pentium Pro принято отсчитывать шестое поколение процессоров. Pentium Pro по сравнению с Pentium имеет следующие усовершенствования:

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

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

Возможно построение многопроцессорных систем (до четырех микропроцессоров).

Процессор Pentium II сочетает в себе архитектуру Pentium Pro с технологией ММХ.

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

Шина адреса имеет 36 разрядов (то есть максимально допустимый объем памяти - 64 Гбайта).

Процессоры Pentium III и Pentium 4 отличаются значительно возросшей предельной тактовой частотой (до 3 ГГц у Pentium 4, а в перспективе и до 5 ГГц), увеличенным объемом кэша (от 512 Кбайт до нескольких мегабайт) и дальнейшим совершенствованием архитектуры Pentium. Размер внутреннего конвейера у Pentium 4 доведен до 20 ступеней.

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

Надо отметить, что в составе персональных компьютеров практически никогда не используются все возможности процессоров семейства Pentium. Например, многопроцессорные системы встречаются достаточно редко, а объем системной памяти лишь иногда превышает 512 Мбайт.

Для портативных компьютеров были предложены упрощенные версии процессоров Pentium III и Pentium 4, продаваемые под маркой Celeron. Они отличаются уменьшенной тактовой частотой и сокращенным объемом кэша второго уровня. Их тактовая частота сейчас доходит до 2 ГГц. Надо учитывать, что рассеиваемая мощность процессора Celeron остается практически такой же, как у процессоров Pentium III и Pentium 4.