Принципы действия микрокомпьютеров
- -
Принципы действия микрокомпьютеров
АРХИТЕКТУРА МИКРОКОМПЬЮТЕРОВ
Обычно выделяют три класса компьютеров:
а) большие компьютеры, которые обслуживают значительное число терминалов пользователей и периферийных устройств. Они применяются в больших системах обработки данных, например при бухгалтерских расчетах;
б) миникомпьютеры, которые обслуживают меньшее число терминалов пользователей (обычно до 40) и применяются, в небольших фирмах, а также в промышленных системах управления;
в) микрокомпьютеры, рассчитанные на одного пользователя (хотя новейшие системы вторгаются на рынок миникомпьютеров) и широко применяются в бытовой, коммерческой и промышленной сферах.
Особенность микрокомпьютера заключается в том, что его центральный процессор (ЦП) выполнен в виде одной микросхемы, называемой микропроцессором. Для образования законченного микрокомпьютера к микропроцессору подключаются микросхемы памяти и ввода-вывода.
На рис. 1.1 показана общая архитектура всех типов компьютеров. Центральный процессор, т. е. микропроцессор (МП) в случае микрокомпьютера, имеет, три шины, связывающие все его компоненты. Выполняемая ЦП программа находится в памяти, которая в микрокомпьютерах состоит гигабитных ячеек. Процессор поочередно считывает каждую, команду из памяти, затем ее анализирует и исполняет. Последовательность выполнения каждой команды можно представить следующими тремя действиями: 1) ЦП выдает адрес следующей команды на шину адреса; 2) содержимое ячейки по указанному адресу появляется на шине данных; 3) ЦП считывает команду и исполняет ее.
Сигналы, требующиеся для реализации указанных действий, передаются по шине управления.
Помимо команд программы в памяти компьютера хранятся значения переменных. Они могут быть числами (представленными в двоичной системе счисления) или символами, которые легко вывести на экран дисплея или печатающее устройство (символы представляются в так называемом коде ASCII, означающем Американский Стандартный Код для обмена информацией).
В модуле ввода-вывода содержатся схемы, через которые происходит обмен программами и данными с периферийными устройствами, например внешней памятью (обычно дискетный накопитель), - принтером и дисплеем (терминалом пользователя).
В простейших микрокомпьютерах, например карманном калькуляторе или контроллере стиральной машины, все три модуля. (ЦП, память и ввод-вывод) помешаются в одной микросхеме.
ЦЕНТРАЛЬНЫЙ ПРОЦЕССОР
Типичная внутренняя организация ЦП приведена на рис. 1.2. Все действия в ЦП инициируются импульсами синхронизации, а внутренние элементы выполняют следующие функции:
содержимое программного счетчика помещается на шину адреса, и следующую команду программы можно передать из памяти в ЦП;
регистр команды воспринимает команду;
устройство управления дешифрует команду и инициирует в ЦП те действия, которые необходимы для ее выполнения;
рабочие-регистры содержат элементы данных, обрабатываемые командой (специализированный рабочий регистр, который может воспринимать результаты операций арифметико-логического устройства, называется аккумулятором);
все операции ЦП реализуются в арифметико-логическом устройстве (АЛУ). Оно может изменять значения данных за счет привлечения арифметических (сложение, вычитание и др.) и логических (логическое И, логических ИЛИ и др.) функций;
регистр состояния содержит флажки, регистрирующие особенности результатов операций АЛУ, например нулевой результат.
Длина слова ЦП определяется числом бит, которое обрабатывается в одной операции АЛУ, например 8-битный ЦП может выполнить операцию арифметического сложения двух 8-битных чисел, Корпуса микропроцессоров объединяются в следующие группы:
8-битные микропроцессоры
16-битные микропроцессоры обычно имеют 64-контактный корпус типа DIP;
82-битные микропроцессоры имеют от 60 до 120 контактов на корпусах типа «держатель кристалла» (контакты по всем четырем сторонам корпуса) или PGA (сетка контактов).
Выполнение каждой команды удобно разделить на две операции (фазы)-выборка и исполнением Если фаза выборки цикла Выборка-исполнение одинакова для всех команд, то фаза исполнения может потребовать или не потребовать дополнительных обращений к памяти. Фаза исполнения некоторых команд требует только операций АЛУ, а не более медленных обращений к памяти. Поэтому время выполнения команды оказывается переменным и «зависит от характера команды, что и проиллюстрировано в следующих примерах.
Пример команды
1-прибавить регистр В к регист
Этап 1-выборка команды.
Этап 2-выполнение ее (прибавить содержимое регистра В к содержимому аккумулятора А). Пример команды 2-загрузить регистр А из памяти. Этап 1 выборка команды. Этап 2 - выполнение действия 1 (считать в ЦП первую половину адреса памяти).
Этап 3 - выполнение действия 2 (считать в ЦП вторую половину адреса памяти).
Этап 4-выполнение действия 3 (считать в регистр А байт данных по адресу памяти).
Вторая команда выполняется примерно в 2 раза дольше, чем первая. Отметим, что в 8-битном микропроцессоре длина первой команды составляет 1 байт, т. е. команда занимает одну ячейку памяти. Длина же второй команды составляет 3 байта, так как второй и третий байты содержат 16-битный адрес памяти, по которому хранится нужное значение данных. В этом случае второй и третий байты называются операндом команды, а первый байт, определяющий действие команды, называется кодом операции.
Система команд конкретного ЦП может содержать от 50 до нескольких сот различных команд. Последнее удобно разделить на следующие четыре класса:
1) команды обработки данных, т. е. когда АЛУ изменяет значение данных;
2) команды переходов, т. е.
передачи управления другой
3) команды пересылки данных, например, между регистром ЦП, и другим регистром ЦП, ячейкой памяти или каналом ввода-вывода;
4) дополнительные команды, например прекращение выполнения программы.
В командах обработки и пересылки данных применяются различные способы обращения к данным, называемые режимами адресации. Наиболее широко распространены следующие режимы адресации:
прямая регистровая, адресация, когда значение данных находится в регистре ЦП;
прямая (абсолютная) адресация памяти, когда значение данных находится в ячейке памяти;
косвенная регистровая адресация, когда значение данных находится в ячейке памяти, определяемой внутренним регистром ЦП (регистровой парой а 8-битном ЦП ); непосредственная адресация, когда значение данных находится в самой команде (во втором байте в случае 8-битного ЦП);
индексная адресация, аналогичная
косвенной регистровой
ПАМЯТЬ
Микросхемы памяти выпускаются в виде постоянных запоминающих устройств (ПЗУ или ROM), из которых можно только считывать информацию, и запоминающих устройств с произвольной выборкой (ЗУПВ или RAM), которые позволяют осуществлять операции считывания и записи информации. Разводка контактов типичной микросхемы ПЗУ показана на рис. 1.3. Десять линий адреса обеспечивают адресацию 210=1024=1К ячеек памяти, а 8 линий данных показывают, что в каждой ячейке памяти хранятся 8 бит. Следовательно, организацию памяти для этой микросхемы можно описать как 1024Х8.
Байт считывается из микросхемы, когда сигнал CS (выбор кристалла) имеет двоичное значение О. (Черта над буквами CS обозначает инверсную логику, т. е. сигнал действует, когда он имеет значение двоичного О.)
Промышленностью выпускаются
следующие совместимые по
Разводка контактов микросхем ЗУПВ аналогична ПЭУ, но в них требуется дополнительный сигнал RIW считывания/записи в шине управления ЦП, который управляет направлением передачи байта. Микросхемы ЗУПВ подразделяются на статические с сохранением двоичных наборов данных до выключения питания (такая память называется энергозависимой) и динамические с сохранением двоичных наборов только в течение 2 мс, а затем требующие регенерации.
Полная схема памяти микрокомпьютера показана на рис. 1.4. Микросхемы ПЗУ и ЗУПВ подключаются к шине данных и необходимому числу младших линий адреса. Сигналы выборки кристалла формирует дешифратор 2:4, что обеспечивает в системе одновременный выбор только одной микросхемы. Таблица истинности дешифратора приведена в табл. 1.1. В любой момент времени только на одном из его четырех выводов действует сигнал логического 0, а на входе сигнал G (разрешение) должен быть при этом равен 0, иначе ни на одном из выходов не будет сигнала 0. В этой конкретной схеме памяти формируются следующие адреса:
A15 |
A14 |
A13 |
A12 |
A11 |
A10 |
A0 |
|||
Начало ПЗУ |
0 |
X |
X |
0 |
0 |
0 |
…… |
0 |
0000H |
Конец ПЗУ |
0 |
X |
X |
0 |
0 |
1 |
…… |
1 |
07FFH |
Начало ЗУПВ |
0 |
X |
X |
0 |
1 |
0 |
…… |
0 |
0800H |
Конец ЗУПВ |
0 |
X |
X |
0 |
1 |
1 |
…… |
1 |
0FFFH |
Сигнал на линии A15 разрешает дешифратор, а сигналы на линиях A12 и А11 дешифрируются и определяют выбор микросхем. Символ X означает, что сигнал не используется и предполагается равным нулю. Заключительная буква Н (Hex-шестнадцатеричный) в записи числа означает представление его в шестнадцатеричном формате.
Таблица 1.1. Таблица истинности дешифратора 2:4
Входы |
Выходы | ||||||
0 0 1 1 |
A11 0 1 0 1 |
CS4 1 1 1 0 |
CS3 1 1 0 1 |
CS2 1 0 1 1 |
CS1 0 1 1 1 | ||
Группирование 16 бит в четыре шестнадцатеричные цифры дает адреса, показанные в таблице справа. Их можно представить на карте памяти для компьютера (рис. 1.5). Карта показывает программисту, где размещать программы и данные.
Если в схеме памяти имеется больше четырех микросхем, то вместо дешифратора 2: 4 потребуется дешифратор 3:8, а на его входы подключаются неиспользуемые старшие линии шины адреса.
В некоторых микропроцессорах отсутствуют команды ввода-вывода, поэтому микросхемы ввода-вывода приходится подключать так, как будто они являются микросхемами памяти, и адресовать в командах передач с памятью. Такой способ называется вводом-выводом, отображенным на память. Если ЦП не имеет команд ввода-вывода, то для микросхем памяти и ввода-вывода применяются отдельные дешифраторы, как показано на рис. 1.6. В этой конфигурации микросхемы памяти и ввода-вывода могут иметь одни и те же адреса, т.е. карта памяти может перекрываться с картой ввода-вывода. Однако конфликта на шине не возникает, так как ЦП выдает сигнал при выполнении передач с памятью (для выбора первого дешифратора) и сигнал при осуществлении передач ввода-вывода (для выбора второго дешифратора).
ВВОД-ВЫВОД
Микросхемы ввода-вывода применяются
для подключения
Параллельный ввод-вывод (PIO). Микросхема PIO предназначается для передачи данных через 8-битные порты во внешние устройства. Функции контактов типичной микросхемы PIO приведены нарте. 1.7. Сигналы подключаются к шинам ЦП аналогично подключению микросхемы ЗУПВ. Байт данных передается по шине данных, а две подключенные линии шины адреса обеспечивают следующие четыре адреса в микросхеме PIO:
A1 |
A2 |
|
0 |
0 |
Порт А |
0 |
1 |
Порт В |
1 |
0 |
Порт С |
1 |
1 |
Регистр управления |
регистр управления применяется для выбора направлений портов, т. е. программист должен поместить управляющий байт в регистр управления до инициирования передач байтов через порты.
Отметим, что микропроцессоры, микросхемы памяти и программируемые микросхемы ввода-вывода производятся по МОП- или КМОП-технологлям, которые называются технологиями интегральных схем со сверхбольшой степенью интеграции (СБИС). Однако существует и непрограммируемая альтернатива микросхем PIO в виде 8-битного регистра ТТЛ-семейства, в которой содержатся дополнительные схемы для клапанирования и некоторые управляющие схемы. Например, в качестве входного порта можно использовать микросхему SN74244 с восемью входными (подключаются к внешнему устройству, например восьми кнопкам) и выходными линиями соединяются с шиной данных) и двумя управляющими линиями (одна из них, применяется для выбора микросхемы и подключается к дешифратору адреса).
В качестве примеров типичных применений параллельных выходных портов можно привести:
8-битное подключение к 7-
вывод от 1 до 8 бит для управления индикаторами на светодиодах (лампочках) или управления электрическим двигателем (соленоидом);
вывод в цифро-аналоговый преобразователь для получения аналогового сигнала, подаваемого в сервопривод, графопостроитель или клапан;
8-битное подключение к
В параллельных входных портах допускается ввод из аналого-цифрового преобразователя для считывания в компьютер аналогового сигнала из прибора и ввод от 1 до 8 бит от кнопок или переключателей (сигналы о замыкании контактов).
Последовательный ввод-вывод. Универсальный асинхронный приемопередатчик (УАПП или UART) применяется вместо микросхемы PIO, когда требуется передать 8 бит данных по одной последовательной, а не по восьми параллельным линиям. Хотя при этом достигается определенная экономия кабельных соединений, недостаток такой организации ввода-вывода заключается в уменьшении скорости передачи. Последовательная передача применяется для подключения к компьютерам дисплеев, в линиях связи между компьютерами, а также для некоторых принтеров.
Типичные функции контактов UART показаны на рис. 1.8. Способы подключения микросхемы UART к ЦП аналогичны ранее рассмотренным для микросхемы PIO плюс дополнительно подается сигнал синхронизации, чтобы произвести передачу восьми последовательных бит байта данных. Подключения внешнего периферийного устройства, например дисплея, осуществляются по линиям Tx (выход) и Rx (вход). Имеются также четыре квитирующих сигнала, показывающих, что внешнее устройство закончило обработку предыдущего байта данных (CTS) и готово к передаче (DSR). Интерфейс с последовательными устройствами обычно соответствует стандарту RS-232C. Подключения для 25-контактного разъема в этом стандарте приведены справа на рис. 1.8. В микросхеме UART обычно имеются следующие четыре адреса:
A1 |
А0 |
|
0 |
0 |
Тх (последовательный выход) |
0 |
1 |
ах (последовательный вход) |
1 |
0 |
Регистр управления |
1 |
1 |
Регистр состояния (например, символ передан, символ принят) |
8-битный символ данных
Отметим, что микросхема UART работает с напряжением ТТЛ-уровней (логическая 1 соответствует +5 В, а логический 0 - 0 В), но спецификация интерфейса RS-232C требует других сигналов (алогическая 1 соответствует -12 В, а логический 0 - +12 В). Поэтому для соединения микросхемы UART с разъемом RS-232C необходима схема преобразования уровней.
Таймер/счетчик. Микросхема таймера/счетчика (СТС) представляет собой программируемый счетчик, в который ЦП может загружать и считывать информацию. Обычно в микросхеме СТС имеется от 1 до 4 таких счетчиков. Иногда один счетчик включается в микросхему PIO.
На рис.1.9.а доказан счетчик, который автоматически перезагружается при достижении нуля. В этом случае генерируется равномерный поток импульсов. В счетчике на рис. 1.9.б формируется сигнал прерывания, заставляющий ЦП выполнять специальную программу прерывания. Последняя может модифицировать счетчики в памяти, содержащие время дня, а другие программы либо пользуются такими часами, либо вызываются в конкретное время. В счетчике на рис. 1.9.в программа может считать содержимое счетчика, а также сбросить счетчик на нуль. Такой способ счета событий, например за определенный промежуток, эффективнее программной реакции на каждое событие (реакция обычно вызывается прерыванием).
Некоторые микросхемы СТС допускают программирование (инициализацию) на инкремент или декремент. Кроме того, входной сигнал синхронизации можно разделить на программируемое двоичное число до инкремента/декремента счетчика.
Микропроцессорные устройства на основе МПК серии КР580
СОСТАВ МИКРОПРОЦЕССОРНОГО КОМПЛЕКТА
Микропроцессорный комплект серии КР580 содержит набор БИС для построения микропроцессорных устройств относительно невысокого быстродействия, работающих с тактовой частотой до 2,5 МГц. В основном на МПК данной серии строятся микропроцессорные устройства, решающие задачи, связанные с управлением разнообразными технологическими процессами.
Комплект имеет следующие
Все микросхемы, входящие в состав МПК, выполнены по nМоп-технологии, однако входные и выходные сигналы соответствуют уровням логических схем ТТЛ - технологии. Это упрощает переходы между микросхемами серии КР580 и микросхемами ТТЛ - технологии любых серий. Следовательно, не возникает трудностей, если при построении микропроцессорного устройства используются также некоторые микросхемы ТТЛ - технологии, имеющие широкое применение.
Микросхемы МПК КР580 и их функции представлены в табл. 2.1.
Микросхемы характеризуются следующими параметрами: температурный диапазон: КР580 -10... -1-70 °С; 580 -60... ... + 85 °С;
потребляемая мощность: КР580ИК80 1,25 Вт; 580ВМ80 1,7 Вт: остальные БИС 0,7 Вт:
напряжение питания: КР580ИК80, 580ВМ80 +5, +12, -5В, остальные БИС + 5В;
допустимое отклонение напряжения: КР580 ±5 %; 580 ±10%; нагрузочная способность каждого выхода БИС - один вход элемента ТТЛ;
время спада и нарастания входных напряжений на выводах БИС 30 нс.
Таблица 2.1
Тип микросхемы |
Назначение микросхемы |
Выполняемая функция |
КР580ИК80А 580ВМ80 |
Восьмиразрядный параллельный процессор |
Центральный процессор с фиксированной системой команд для обработки параллельной 8-разрядной информации |
КР580ИК51 580ИИ51 |
Программируемый последовательный интерфейс |
Универсальное синхронно-асинхронное
программируемое приёмо- |
КР580ВИ53 580ВИ53 |
Программируемый таймер |
Формирует программно-управляемые временные задержки для синхронизации управляемых объектов в реальном масштабе времени |
КР580ИК55 580ВВ55 |
Программируемый параллельный интерфейс |
Программируемый ввод-вывод параллельной информации различного формата |
КР580ИК57 580ВТ57 |
Программируемый контроллер прямого доступа к памяти |
Высокоскоростной обмен |
КР580ВН59 580ВН59 |
Программируемый контроллер прерываний |
Обслуживает до 8 запросов на прерывание от внешних устройств |
КР580ГФ24 580ГФ24 |
Генератор тактовых импульсов |
Формирует две последовательности тактовых импульсов, необходимые для работы центрального процессора |
КР580ВК28 580ВК28 КР580ВК38 580ВК38 |
Системный контроллер |
Формирует сигналы, предназначенные для управления различными устройствами, входящими в состав МПУ |
КР580ВА86 |
Шинный формирователь |
Двунаправленный 8-разрядный шинный формирователь с не инвертирующим выходом с высокой нагрузочной способностью и тремя состояниями |
КР580ВА87 |
Шинный формирователь |
То же с инвертирующим выходом |
КР580ИР82 |
Буферный регистр |
8-разрядный буферный регистр с не инвертирующим выходом с тремя состояниями |
КР580ИР83 |
Буферный регистр |
То же с инвертирующим выходом |
КР580ВГ75 |
Программируемый интерфейс ЭЛТ |
Контроллер вывода информации из памяти МПУ на экран ЭЛТ |
КР580ВГ79 |
Программируемый интерфейс клавиатуры и дисплея |
Контроллер ввода-вывода для клавиатуры и дисплея |
МИКРОПРОЦЕССОР КР580ИК80
БИС КР580ИК80 представляет собой 8-разрядный процессор, в котором совмещены операционное и управляющее устройства. Управляющая память недоступна пользователю, в ней уже в процессе изготовления БИС записываются микропрограммы операций (микропрограммы, по которым выполняются команды). Таким образом, предусматривается использование некоторой фиксированной системы команд. в которую пользователь не может внести изменений. В связи с этим данный микропроцессор относится к числу немикропрограммируемых. т. е. программируемых не на уровне микрокоманд, а на уровне команд.
СТРУКТУРНАЯ СХЕМА
На рис. 2.1 приведена структурная схема БИС КР580ИК80. Опишем кратко ее узлы.
Регистры данных. Для хранения участвующих в операциях данных предусмотрено семь 8-разрядных регистров. Регистр А, называемый аккумулятором, предназначен для обмена информацией с внешними устройствами (т. е. либо содержимое этого регистра может быть выдано на выход, либо со схода в него может быть принято число), при выполнении арифметических, логических операций и операций сдвига он служит источником операнда (числа, участвующего в операции), в него помещается результат выполненной операции. Шесть других регистров, обозначенных В, С, D, Е, Н, L, образуют так называемый блок регистров общего назначения РОИ (название связано с тем, что эти регистры могут использоваться для хранения как данных, так и адресов). Эти регистры могут использоваться как одиночные 8-разрядные регистры. В случаях, когда возникает необходимость хранить 16-разрядные двоичные числа, они объединяются в пары BC, DE, HL.
Регистры БР1, БР2, W, Z используются как буферные, программно-недоступные регистры (т. е. регистры, к которым программист при составлении программы не может обращаться).
Указатель стека SP (16-разрядный) служит для адресации особого Лида памяти, называемого стеком (организация стека будет рассмотрена ниже).
Счетчик команд PC (16-разрядный) предназначен для хранения адреса команды; после выбора из оперативной памяти текущей команды содержимое счетчика увеличивается на единицу и таким образом формируется адрес очередной команды (при отсутствии безусловных и условных переходов).
При обращении к памяти в качестве адреса может использоваться и содержимое любой пары регистров блока РОИ.
При выдаче адреса содержимое соответствующих регистров передается в 16-разрядный регистр адреса РА, из которого далее через буферы БА адрес поступает на 16-разрядную шину адреса. С этой шины адрес может быть принят в оперативную память. Число кодовых комбинаций 16-разрядного адреса равно 2", каждая из этих кодовых комбинаций может определять адрес (номер) одной из ячеек оперативной памяти. Таким образом, обеспечивается возможность обращения к памяти, содержащей до 8-разрядных слов (байт).

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