Микропроцессорные системы

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

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

Всё это обязывает электрика знать хотя бы основы работы микропроцессорной техники.

Микропроцессорные системы предназначены для автоматизации обработки информации и управления различными процессами.

Понятие «Микропроцессорная система» очень широко и объединяет такие понятия как «Электронно-вычислительная машина (ЭВМ)», «управляющая ЭВМ», «Компьютер» и т.п.

Микропроцессорная система включает в себя аппаратное обеспечение или по-английски – hardware и программное обеспечение (ПО) — software.

Цифровая информация

Микропроцессорная система работает с цифровой информацией, которая представляет собой последовательность цифровых кодов.

В основе любой микропроцессорной системы лежит микропроцессор, который способен воспринимать только двоичные числа (составленные из 0 и 1). Двоичные числа записываются посредством двоичной системы счисления. Например, в повседневной жизни мы пользуемся десятичной системой счисления, в которой для записи чисел используются десять символов или цифр 0,1,2,3,4,5,6,7,8,9. Соответственно в двоичной системе таких символов (или цифр) всего два – 0 и 1.

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

Рассмотрим единицы измерения цифровой информации:

Бит (от английского «BInary digiT» — двоичная цифра) принимает только два значения: 0 или 1. Можно закодировать логическое значение «да»» или «нет», состояние «включено» или «выключено», состояние «открыто» или «закрыто» и т.п.

Группа из восьми бит называется байтом, например 10010111. Один байт позволяет кодировать 256 значений: 00000000 – 0, 11111111 — 255.

Бит – наименьшая единица представления информации.

Байт — наименьшая единица обработки информации.

Два взаимосвязанных байта называется словом, 4 байта – двойное слово, 8 байт – учетверённое слово.

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

Например, для кодирования текстовой информации используется таблица кодов ASCII (от англ. American Standard Code for Information Interchange — Американский стандартный код для обмена информацией). Запись одного символа осуществляется одним байтом, который может принимать 256 значений. Графическая информация разбивается на точки (пиксели) и производится кодирование цвета и положение каждой точки по горизонтали и вертикали.

Кроме двоичной и десятичной системы в МС используют шестнадцатеричную систему, в которой для записи чисел используются символы 0…9 и A…F. Её применение обуславливается тем, что один байт описывается двухразрядным шестнадцатеричным числом, что значительно сокращает запись цифрового кода и делает его более читаемым (11111111 – FF).

Таблица 1 – Запись чисел в различных системах счисления

Запись чисел в различных системах счисления

Для определения значения числа (например, значения числа 100 для разных систем счисления может составлять 42, 10010, 25616), в конце числа добавляют латинскую букву, обозначающую систему счисления: для двоичных чисел букву b, для шестнадцатеричных — h, для десятичных – d. Число без дополнительного обозначения считается десятичным.

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

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

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

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

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

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

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

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

Рисунок 1 – Структура микропроцессорной системы

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

  • шину данных DB (Data Bus), по которой производится обмен данными между ЦП, памятью и портами;

  • шину адреса AB (Address Bus), используемой для адресации процессором ячеек памяти и портов;

  • шину управления CB (Control Bus), набор линий, передающих различные управляющие сигналы от процессора на внешние устройства и обратно.

Микропроцессоры

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

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

Приставка «микро» в названии процессора означает, что выполняется он по микронной технологии.

Внешний вид микропроцессора Intel Pentium 4

Рисунок 2 – Внешний вид микропроцессора Intel Pentium 4

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

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

Основные характеристики микропроцессоров:

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

2) Разрядность процессора (8, 16, 32, 64 бит и т.д.) – определяет число байтов данных, обрабатываемых за один такт. Разрядность процессора определяется разрядностью его внутренних регистров. Процессор может быть 8-разрядным, 16-разрядным, 32-разрядным, 64-разрядным и т.д., т.е. данные обрабатываются порциями по 1, 2, 4, 8 байт. Понятно, что чем больше разрядность, тем выше производительность работы.

Внутренняя архитектура микропроцессора

Упрощенная внутренняя архитектура типового 8-разрядного микропроцессора показана на рисунке 3. В структуре микропроцессора можно выделить три основных части:

1) Регистры для временного хранения команд, данных и адресов;

2) Арифметико-логическое устройство (АЛУ), которое реализует арифметические и ло-гические операции;

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

Рисунок 3 — Упрощенная внутренняя архитектура 8-разрядного микропроцессора

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

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

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

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

Указатель стека (SP) — следит за положением стека, т. е. содержит адрес последней его использованной ячейки. Стек – способ организации хранения данных.

Регистр команды содержит текущий командный байт, который декодируется дешифратором команды.

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

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

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

Лидирующими компаниями по разработке и изготовлению процессоров являются Intel и AMD.

Алгоритм работы микропроцессорной системы

Главным управляющим элементом всей микропроцессорной системы является процессор. Именно он, за исключением нескольких особых случаев, управляет всеми остальными устройствами. Остальные же устройства, такие, как ОЗУ, ПЗУ и порты ввода/вывода являются ведомыми.

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

Рассмотрим последовательность действий микропроцессор во время выполнения команд программы:

1) Перед выполнением очередной команды микропроцессор содержит ее адрес в программном счетчике РС.

2) МП обращается к памяти по адресу, содержащемуся в РС, и считывает из памяти первый байт очередной команды в регистр команд.

3) Дешифратор команд декодирует (расшифровывает) код команды.

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

— извлекает операнды из регистров и памяти;

— выполняет над ними предписанные кодом команды арифметические, логические или другие операции;

— в зависимости от длины команды модифицирует содержимое РС;

— передает управление очередной команде, адрес которой снова находится в программном счетчике РС.

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

1) Команды перемещения данных

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

2) Команды преобразования данных

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

3) Команда передачи управления

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

Внешние устройства

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

1) устройства для связи человек-ЭВМ (клавиатура, монитор, принтер и т.д.);

2) устройства для связи с объектами управления (датчики, исполнительные механизмы, АЦП и ЦАП);

3) внешние запоминающие устройтсва большой ёмкости (жёсткий диск, дисководы).

Внешние устройства подключаются к микропроцессорной системе физически — с помощью разъёмов, и логически — с помощью портов (контроллеров).

Для взаимодействия процессора и внешних устройств применяется система (механизм) прерываний.

Система прерываний

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

У любого микропроцессора имеется хотя бы один вход запроса на прерывание INT (от слова Interrupt — прерывание).

Рассмотрим пример взаимодействия процессора персонального компьютера с клавиатурой (рисунок 4).

Клавиатура — устройство для ввода символьной информации и команд управления. Для подключения клавиатуры в компьютере имеется специальный порт клавиатуры (микросхема).

Работа процессора с клавиатурой

Рисунок 4 – Работа процессора с клавиатурой

Алгоритм работы:

1) При нажатии клавиши контроллер клавиатуры формирует цифровой код. Этот сигнал поступает в микросхему порта клавиатуры.

2) Порт клавиатуры посылает процессору сигнал прерывания. Каждое внешнее устройство имеет свой номер прерывания, по которому процессор его и распознаёт.

3) Получив прерывание от клавиатуры, процессор прерывает выполнение программы (например, редактор Microsoft Office Word) и загружает из памяти программу обработки кодов с клавиатуры. Такая программа называет драйвер.

4) Эта программа направляет процессор к порту клавиатуры, и цифровой код загружается в регистр процессора.

5) Цифровой код сохраняется в памяти, и процессор переходит к выполнению другой задачи.

Благодаря высокой скорости работы, процессор выполняет одновременно большое количество процессов.