2. ОБЩИЕ СВЕДЕНИЯ О МП СИСТЕМАХ 2.1 Структурная схема МП-системы (МикроЭВМ) Микропроцессорная система, осуществляющая обработку информации в соответствии с программой, находящейся в памяти, должна иметь процессор, устройства Взаимодействие памяти и функциональных устройства устройств ввода/вывода определяется (Рис.1.1). системным интерфейсом, который включает в себя шину адреса (ША), шину данных (ШД) и шину управления (ШУ). Шина адреса используется для передачи адресов памяти и адресов регистров устройств, подключенных к системному интерфейсу. Шина данных используется для обмена информацией между устройствами микропроцессорной системы, шина управления для передачи управляющих сигналов. Каждое функциональное устройство, подключенное к системному интерфейсу, рассматривается процессором как совокупность адресуемых регистров, разделяемых на регистры управления и состояния и регистры данных. В регистры управления и состояния записываются управляющие слова, которые определяют алгоритм работы функционального устройства при дешифрации их устройством управления. Регистры данных используются в качестве буферных регистров. Синхронизация работы функциональных устройств осуществляется центральным процессором. 2.1.1 Центральный процессор Основным устройством всех микропроцессорных систем является центральный процессор (ЦП), который в настоящее время выполняется в виде одной микросхемы и поэтому носит название - микропроцессор. Несмотря на широкий набор микропроцессоров, можно выделить узлы, которые имеют большинство микропроцессоров. К ним относятся регистры, арифметико-логическое устройство (АЛУ), дешифратор команд, устройство управления и синхронизации, счетчик команд. Арифметико-логическое устройство. Выполняет такие операции, как сложение, сдвиг/перестановка, сравнение, инкремент, декремент, отрицание, И, ИЛИ, ИСКЛЮЧАЮЩЕЕ ИЛИ, дополнение, сброс, инициализация. Устройство управления и синхронизации. Является наиболее сложным в центральном процессоре. Оно влияет на все события и управляет их протеканием . Каждая команда программы может быть разделена на этапы извлечения и выполнения. Каждый из них в свою очередь может быть разбит на микропрограммы, которые выполняются устройством управления и синхронизации. ЦЕНТРАЛЬНЫЙ ПРОЦЕССОР Б У Ф Е Р В Н У Т Р Е Н Н Я Я Ш И Н А РЕГИСТР ВРЕМЕННОГО ХРАНЕНИЯ АЛУ АККУМУЛЯТОР СЧЕТЧИК КОМАНД РЕГИСТР КОМАНД ДЕШИФРАТОР КОМАНД УСТРОЙСТВО УПРАВЛЕНИЯ И СИНХРОНИЗАЦИИ В Н У Т Р Е Н Н Я Я Ш И Н А Б У Ф Е Р / З А Щ Е Л К А ШД ША ШУ К внешним устройствам Адрес Ввод/Вывод данных Управление вводом/выводом Порт 1 Порт 2 Порт 3 Регистр адреса Регистр данных Управление памяти памяти чтением/записью Ячейка 1 Ячейка 2 Ячейка 3 Устройство ввода/вывода Порт n ПАМЯТЬ Ячейка n Рис.1.1. Структурная схема МП-системы (микроЭВМ). Счетчик команд(PC - Program Counter). Шестнадцатиразрядный регистр, называемый счетчиком команд, служит для хранения адреса следующей команды, чтобы извлечь ее из памяти. Так как команды выполняются последовательно, счетчик команд считает прямым счетом. Нормальная последовательность выполнения команд программы может быть изменена специальными командами ветвления, вызова подпрограмм, возврата из подпрограмм или прерывания. Эти команды повлекут переход содержимого счетчика команд на другую величину, отличную от следующего старшего адреса. При включении питания и при нажатии кн. Сброс PC устанавливается в 0 и происходит обращение к нулевой ячейке памяти. Основой функционирования вычислительной машины является последовательность извлечение-декодирование-выполнение. Первая команда, извлеченная из памяти, определяет код операции первой команды и помещается в регистр команд устройством управления. Код операции расшифровывается процессору дешифратором процедуру функционирование применительно к МП команд, управления системы микропроцессору и на который указывает синхронизации. примере затем Рассмотрим операции сложения МК51?. Пусть требуется выполнить операцию сложения чисел, например 510 + 1010 , а результат поместить в ячейку памяти с адресом 30H. Фрагмент программы выполнения этой операции может быть записан так: Последовательность операций: 1.Загрузить первое число (5) в центральный процессор (в рег. А) 2.Сложить первое число со вторым (10). 3.Поместить результат в яч. памяти с адресом 30H Программа в памяти процессора (применительно к микроконтроллеру МК51) будет выглядеть следующим образом: Адрес Содержимое памяти памяти 0000h 11100100b Пояснения Код команды: загрузить число в рег. А 0001h 00000101b Само число – 5 0002h 00100100b Код команды: сложить содержимое рег.А с числом (результат в рег.А) 0003h 00001010b Само число – 10 0004h 11110101b Переслать результат из рег.А по адресу, указ. ниже 0005h 00110000b Сам адрес –30h Для компактности записи двоичных кодов используется шестнадцатеричная система счисления. В шестнадцатеричной системе этот фрагмент будет выглядеть так: Адрес Содержимое 0000h E4h 0001h 05h 0002h 24h 0003h 0Ah 0004h F5h 0005h 30h Запись программы в виде шестнадцатеричных кодов значительно компактней, но по-прежнему неудобна. Человеку трудно запомнить более сотни команд в виде цифр, сложно проводить анализ работы программы. Следующим шагом было введение языка Ассемблера. В этом языке каждая команда заменяется словесной мнемоникой. Слова, даже в сокращенном виде, легче запоминать. Такую программу легче писать и анализировать. Приведенная выше программа на языке Ассемблера будет выглядеть следующим образом: mov A, #5; Переслать число 5 в регистр А add a, #10; Сложить содержимое регистра А и число 10. Результат окажется в ; регистре А mov 30H,A; Переслать содержимое регистра А по адресу 30H 2.1.2 Память Для хранения 1 бита информации требуется запоминающий элемент(ЗЭ), например триггер. Для хранения многоразрядного числа, содержащего несколько бит, требуется ячейка памяти (ЯП) из нескольких запоминающих элементов. Такая ячейка еще называется слово. Бывают 8-ми разрядные, 16-ти разрядные и 32-х разрядные слова. 8-ми разрядное слово называется байт. Одна из характеристик памяти - объем. Объем памяти измеряется количеством слов или, если слово 8-ми разрядное, количеством байт. Объем памяти равный 210=1024 называют килобайт, а 220=1048576 мегабайт. Память подразделяют на два основных вида: оперативную (ОЗУ оперативное запоминающее устройство) и постоянную (ПЗУ). ОЗУ допускает запись и считывание информации в процессе функционирования ЭВМ. ПЗУ допускает только считывание информации. (как-то отразить факт, что важные данные можно записать в энгергонезав. память) Запись в ПЗУ осуществляется отдельно, при помощи специальных технических средствпрограмматоров. В ОЗУ информация разрушается при отключении источника питания, а в ПЗУ сохраняется. В связи с этим ПЗУ еще называют память программ, поскольку в ней хранится программа функционирования микропроцессорного устройства и стоит подать питание, как устройство начнет функционировать под действием этой программы. В отличие от него ОЗУ называют память данных, так как в него записываются данные, считанные с внешних устройств, а также результаты промежуточных вычислений. По способу хранения информации в ЗЭ различают статические и динамические ОЗУ. В статических используются бистабильные ЗЭ, в динамических хранение информации осуществляется за счет заряда специально сформированных в структуре полупроводника конденсаторов. Такие ЗЭ имеют более простую структуру по сравнению с бистабильными и занимают меньшую площадь на полупроводниковом кристалле. Однако в процессе хранения информации они нуждаются в периодическом восстановлении состояния (регенерации), что снижает быстродействие ЭВМ. Постоянные ЗУ, в свою очередь, можно разделить на несколько групп: 1) масочные запоминающие устройства; 2) постоянные запоминающие устройства; 3) перепрограммируемые постоянные запоминающие устройства. В запоминающие устройства первой группы информация записывается однократно в процессе их изготовления. Для этого могут использоваться индивидуальные маски, задающие порядок соединений между элементами на полупроводниковом кристалле, поэтому такие ЗУ называют масочными. Сокращенно их называют ПЗУ или ROM (Read Only Memory – память только для чтения). Ко второй группе относят постоянные запоминающие устройства, допускающие однократную запись информации потребителем. Для этого в каждый ЗЭ вводят плавкие перемычки, которые при программировании могут быть разрушены в необходимых местах. Сокращенно их называют ППЗУ (программируемые постоянные запоминающие устройства) или PROM (Programable Read Only Memory – программируемая память, доступная только для чтения). К третьей группе относятся ЗУ, допускающие возможность многократного программирования (репрограммирования) после стирания предыдущей хранившейся в них информации. В части из них стирание информации обеспечивается ультрафиолетовым облучением, сокращенно их обозначают РПЗУУФ или EPROM (Erasable Programmable Read Only Memory – стираемая программируемая память, доступная только для чтения). В другой части предусматривается возможность электрического стирания информации, сокращенно их называют РПЗУ (репрограммируемые постоянные запоминающие устройства) или EEPROM (Electrically Erasable Programmable Read Only Memory – Электрически стираемая программируемая память, доступная только для чтения). Последний вид памяти в настоящее время получил наибольшее распространение, и наметилось два направления развития микросхем РПЗУ: 1. ЭСРПЗУ – электрически стираемые ПЗУ (EEPROM). 2. Флэш – ПЗУ (Flash). EEPROM имеют более сложную внутреннюю схему управления и поэтому дороже и меньше по объему. Важным их преимуществом является возможность перезаписи каждой ячейки памяти в отдельности. В отличие от них в микросхемах Flash – ПЗУ стирание производится не каждой ячейки отдельно, а всей запоминающей матрицы или ее части (блока). Использование блочного стирания позволяет уменьшить сложность внутреннего устройства управления, поэтому Flash – ПЗУ имеют больший объем памяти и меньшую стоимость. В настоящее время Flash – ПЗУ вытесняют все остальные виды постоянных запоминающих устройств, за исключением электрически стираемых ПЗУ. 2.1.3 Устройство ввода/вывода Для связи с периферийными устройствами имеется устройство ввода/вывода. В состав периферийных устройств входят как устройства общего назначения - клавиатура, дисплеи, печатающие устройства, дисководы, так и специализированные устройства - АЦП для ввода аналоговой информации, схемы релейных входов для ввода состояния ключей, кнопок, и контактов реле, ЦАП для вывода аналоговой информации, схемы релейных выходов для управления реле и сигнальными лампами, схемы управления цифровыми табло и индикаторами. Каждое периферийное устройство подключается к микропроцессорной системе или к ЭВМ через соответствующий порт ввода/вывода. Для обмена информацией процессор выставляет на ША адрес соответствующего порта ввода/вывода, на ШУ выставляется сигнал ввода данных или вывода и затем через шину данных осуществляется вывод данных в периферийное устройство или ввод из него.