Программирование однокристальных микропроцессоров - Григорьев В.Л. Аппаратное и программное обеспечение простых микропроцессорных систем

ВВЕДЕНИЕ 3

1 Логическая структура микропроцессорной системы 4

1.1 Логическая структура развитой микропроцессорной системы 9

2.1 Информационные магистрали 12

2.2 Магистраль адресов 12

2.3 Магистраль данных 12

2.4 Магистраль управления 13

3 Классификация мп 15

Заключение 19

БИБЛИОГРАФИЧЕСКИЙ СПИСОК 21

ВВЕДЕНИЕ

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

Сфера применения МПБИС необычайно широка: от сложных высокопроизводительных вычислительных систем до простейших машин и механизмов.

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

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

1 Логическая структура микропроцессорной системы

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

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

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

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

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

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

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

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

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

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

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

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


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

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

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

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

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

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

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

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

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

^

1.1 Логическая структура развитой микропроцессорной системы

На рисунке 1.2 приведена обобщенная логическая структура микро-ЭВМ, в которой в качестве всех управляющих блоков устройств ЭВМ используются программируемые контроллеры, например контроллер системного пульта управления КСПУ. Он применяется для работы с системным пультом управления СПУ. Все аппараты ввода-вывода управляются контроллерами устройств ввода-вывода КУВВ или групповыми контроллерами устройств ввода-вывода ГрКУВВ.

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

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

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

Рисунок 1.2 - Обобщенная логическая структура микро-ЭВМ с микропроцессорными контроллерами

^

2 Интерфейс микропроцессоров

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

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

Рисунок 2.1 - Обобщенная логическая структура микро-ЭВМ с микропроцессорными контроллерами
На рисунке 2.1 представлена общая схема взаимодействия микропроцессора МП с устройствами ввода – вывода УВВ и ОЗУ в микропроцессорной системе. Связь МП с УВВ требует пяти групп связи, обеспечиваемых через выводы корпуса. По группе шин 1 передается код выбора (адреса) устройства, по шине 2 – сигнал управления считыванием – записью, по шине 3 – сигнал запроса на прерывания, шины 4 и 5 используются для передачи данных от процессора к УВВ и от УВВ к МП. Связь МП с ОЗУ также содержит пять групп связей, которые необходимо обеспечить через выводы корпуса МП. По группе шин 6 передается адрес в ОЗУ, шина 7 нужна для управления чтением/записью, по сигналам на шине 8 принимаются команды в процессор, а шины 9 и 10 обеспечивают передачу данных из ОЗУ в МП и обратно.
^

2.1 Информационные магистрали

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

2.2 Магистраль адресов

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

Количество шин магистрали адресов совпадает с разрядностью передаваемого кода адреса. Если используется 16-разрядный код, то в системе разрешается выработка
=65536 адресов. Они могут все относиться к адресам ячеек памяти или к адресам ячеек памяти и адресам регистров данных устройств ввода-вывода.
^

2.3 Магистраль данных

Микропроцессор, а также ОЗУ, ВЗУ, дисплеи могут воспринимать или передавать данные. Другие устройства могут либо только принимать данные, например устройство печати, либо только выдавать их, например ПЗУ.

Чтобы обеспечить все возможности системы, магистраль данных является двунаправленной. Ее разрядность определяется разрядностью микропроцессора и равна 2, 4, 8, 16 и 32 бит. Если в микропроцессоре обрабатываются данные по программам двойной разрядности, то двойное слово пересылается за два цикла, т.е. имеет место временное мультиплексирование (оно также применялось в нескольких первых микропроцессорах, когда использовалась общая магистраль адресов и данных).
^

2.4 Магистраль управления

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

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

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

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

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

^

3 Классификация мп

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

В общем случае МП могут быть классифицированы по различным характеристикам основными из которых являются:

1) тип микроэлектронной технологии, используемой при изготовлении МП БИС.

По технологической реализации различают:

Р-МПД–технологии (первые виды МП), n-МДП–технологии, КМДП–технологии, TTL–технологии, ЭСЛ–технологии, И 2 Л–технологии. За исключением р-МПД–технологии и ограниченного применения TTL–технологии, все остальные эффективно применяются в настоящее время при изготовлении БИС и СБИС.

2) число кристаллов, образующих МП (однокристальные и многокристальные).

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

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

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

3) тип корпуса (их порядка двух десятков);

4) разрядность. Разрядность МП показывает, сколько бит данных он может

Принять и обработать в своих регистрах за один раз (за один такт).

Разрядность МП во многом определяет уровень сложности задач, которые могут решаться с помощью конкретного комплекта МП.

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

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

Микропроцессоры высокой разрядности (32 и выше) позволяют создавать более компактные программы с минимумом команд, что резко снижает стоимость отладки программ, которая может достигать 50…70% стоимости всех технических средств микропроцессорного комплекса.

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

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

6) ёмкость адресуемой памяти. (объём).

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

7) тип управляющего устройства;

8) система команд (число команд, способы адресации).

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

Различают МП с расширенной и сокращенной системой команд. Чем шире набор системных команд МП, тем длиннее формальная запись команды (в байтах), тем выше средняя продолжительность исполнения одной команды, измеренная в тактах работы МП. Так, например, система команд процессоров Intel Pentium в настоящее время насчитывает более тысячи различных команд. Такие процессоры называют процессорами с раширенной системой команд – CISC-процессорами (CISC – Complex Instruction Set Computer).

В противоположность CISC-процессорам в середине 80-х годов появились процессоры архитектуры RISC (Reduced Instruction Set Computer) – процессоры с сокращенной системой команд .

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

CISC-процессоры используют в универсальных вычислительных системах.

RISC-процессоры используют в специализированных вычислительных системах или устройствах, ориентированных на выполнение единообразных операций.

Компания AMD выпускает МП семейства AMD–K6, в основе которых лежит внутренне ядро, выполненное по RISC-архитектуре, и внешняя структура выполненная по архитектуре CISC. Таким образом, появились МП совместимые с МП х86, но имеющие гибридную архитектуру.

Система команд МП, как правило, содержит следующие типы команд:


  1. команды вычислений (арифметических и логических);

  2. команды пересылки данных;

  3. команды управления (условных и безусловных переходов);

  4. команды ввода-вывода;

  5. команды обращения к подпрограммам;

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

Кстати, МП х86 имеют самую сложную в мире систему команд.

9) число уровней прерывания;

10) возможность прямого доступа к памяти;

11) число и уровни питающих напряжений;

По мере развития МП происходит постепенное понижение питающего напряжения. Ранние модели процессоров х86 имели питающее напряжение 5В. С переходом к процессорам Intel Pentium оно было понижено до 3,3В, а в настоящее время оно составляет менее 3В. Причём ядро МП питается пониженным напряжением 2,2В. Понижение рабочего напряжения позволяет уменьшить расстояние между структурными элементами в кристалле МП до десяти тысячных долей миллиметра не опасаясь электрического пробоя.

12) уровни сигналов;

13) потребляемая мощность;

В настоящее время она составляет от 10…20 мВт до 1…3 Вт у современных МП в зависимости от выполняемой работы.

14) температурный диапазон;

15) помехоустойчивость;

16) нагрузочная способность;

17) надёжность и т.д.;

На протяжении последних 20 лет технология, архитектура и схемотехника МП развивалась очень быстро. Это развитие ознаменовалось соревнованием МДП и биполярной технологий микроэлектроники.

Заключение

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

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

Более дорогие микропроцессоры успешно конкурируют с механическими и электромеханическими блоками управления “жесткой”, или “аппаратурной”, логики.

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

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

Микропроцессоры эффективно встраиваются в дисплеи, экранные пульты и терминалы, где на них возложены функции редактирования данных, управления,

Генерации символов и хранения и воспроизведения изображений.

Микропроцессоры берут на себя функции предварительной обработки информации внешних устройств, преобразования форматов данных, контроллеров электромеханических внешних устройств. Для этих целей применяют микропроцессоры серий К580, К536, К1803.

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

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

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

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

^

БИБЛИОГРАФИЧЕСКИЙ СПИСОК


  1. Новиков Ю.В. [Текст] Основы цифровой схемотехники. Базовые элементы и схемы. Методы проектирования.-М.: 2001.

  2. Новиков Ю.В., Скоробогатов П.К. [Текст] Основы микропроцессорной техники. Курс лекций. М.: ИНТУИТ.РУ, 2003.

  3. Пухальский Г.И., Новосельцева Т.Я. [Текст] Цифровые устройства: Учеб. пособие для ВТУЗов. - СПб.: 2006.

  4. Букреев И.Н., Горячев В.И., Мансуров Б.М. [Текст] Микроэлектронные схемы цифровых устройств. -М.: Радио и связь, 2000.

ФЕДЕРАЛЬНОЕ АГЕНТСТВО ПО ОБРАЗОВАНИЮ

ГОСУДАРСТВЕННОЕ ОБРАЗОВАТЕЛЬНОЕ УЧРЕЖДЕНИЕ ВЫСШЕГО ПРОФЕССИОНАЛЬНОГО ОБРАЗОВАНИЯ

ДОНСКОЙ ГОСУДАРСТВЕННЫЙ ТЕХНИЧЕСКИЙ УНИВЕРСИТЕТ

АППАРАТНОЕ И ПРОГРАММНОЕ ОБЕСПЕЧЕНИЕ ПРОСТЫХ МИКРОПРОЦЕССОРНЫХ СИСТЕМ

Методические указания

к курсовой работе по разделу

«Электроника и микропроцессорная техника»

Ростов-на-Дону 2006 г.

1. Цель работы

Приобретение практических навыков структурных блок-схем и листингов программ на языке «Ассемблер» для простых микропроцессорных систем (МП-систем) управления различными процессами.

2. Типовые структуры блок-схем алгоритмов обработки данных

Для успешного выполнения заданий курсовой работы студентам необходимо ознакомиться с набором команд процессора КР580 /1/, а также с требованиями, предъявляемыми к составлению программ на языке «Ассемблер» /2/, /3/, /4/, предназначенных для микропроцессорных систем автоматического управления различными измерительными и технологическими процессами.

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

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

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

Последовательная структура – самая распространенная (рис. 1, а); она означает, что действия должны быть выполнены друг за другом. Показанная на рис. 1, б структура ЕСЛИ–ТО–ИНАЧЕ применяется в тех случаях, когда необходимо реализовать программный переход к одной из двух вычислительных процедур в зависимости от выполнения некоторого проверяемого условия. Структура ЕСЛИ–ТО (рис. 1, в) является упрощение предыдущей и используется в случаях, когда необходимо реализовать одну вычислительную процедуру в зависимости от проверяемого условия. Структура ДЕЛАЙ–ПОКА используется для проверки условия окончания цикла (рис. 1, г). Структура ПОВТОРЯЙ–ДО–ТОГО–КАК (рис. 1, д) аналогична предыдущей, но порядок следования операторов здесь иной: процедура выполняется до проверки условия. Структура ПРОЦЕСС–ПОКА (рис. 1, е) представляет собой объединение двух предыдущих структур. И, наконец, на рис. 1, ж представлена структура ДЕЛАЙ–В–ЗАВИСИМОСТИ–ОТ, с помощью которой осуществляется выбор действия при многозначных решениях и которая используется для замены цепочек структур ЕСЛИ–ТО–ИНАЧЕ.

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

3. Программная реализация типовых функций управления

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

– опрос состояния двоичного датчика;

– ожидание события;

– сканирование группы позиционных датчиков;

– формирование временных задержек;

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

– операции сортировки и т.п.

Ниже приводятся некоторые способы программного обеспечения типовых функций управления процессами применительно к МП КР580ВМ80.

На рис. 2. показана схема подключения контакта двоичного датчика к входному порту МП-системы. Если контакт S разомкнут, то на входе D5 порта ввода присутствует сигнал логической единицы; если контакт S замкнут, то на D5 – логический нуль. Необходимо в некоторой части правляющей программы МП-системы оросить значение сигнала на вход D5 порта 04 и в зависимости от его значения (0 или 1) передать управление фрагменту программы с меткой, например, LABEL A (если D5=0) или по адресу, отмеченному меткой LABEL В (если D5=1).

Рис. 2. Схема опроса двоичного кода

На рис. 3, а приведена блок-схема, а на рис. 3, б программа «INPKEY» (ввод ключа), реализующая процедуру опроса двоичного датчика. Символическое имя программы «INPKEY» используется в качестве метки начальной команды этой программы. При программировании с использованием подпрограмм можно обращаться к этой подпрограмме опроса двоичного датчика по команде: CALL, адрес INPKEY.

Рис. 3. Блок-схема и листинг программы опроса двоичного датчика

Контроллеры технологических объектов работают в реальном масштабе времени, и, следовательно, их работа определяется событиями, происходящими в объекте управления. Чаще всего события в объекте управления фиксируются с использованием двоичных датчиков; например, путём замыкания или размыкания нулевого переключателя при перемещении исполнительного органа объекта управления.

Если требуется по ходу выполнения управляющей программы приостановить выполнение её команд до тех пор, пока в результате процессов, происходящих в объекте управления, не замкнётся контакт S датчика перемещения, то можно использовать подпрограмму с символическим именем «NUNT» (засада), блок-схема которой приведена на рис. 4, б.

Рис. 4. Схема подключения контакта двоичного датчика к порту ввода МП-системы (а) и блок-схема алгоритма ожидания события

Основная программа МП-системы многократно по команде CALL, адрес NUNT, может вызвать эту подпрограмму. Из блок-схемы алгоритма видно, что программа должна постоянно опрашивать значение сигнала на входе D2 порта 07 до тех пор, пока оно не станет равным нулю (контакт датчика разомкнут), и в этом случае продолжить выполнение основной программы МП-системы. Если переход к циклу ожидания события из основной программы осуществляется по команде CALL, адрес NUNT, то возврат в неё из процедуры NUNT выполняется по команде RET, стоящей в конце подпрограммы.

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

На рис. 5. показана схема подключения МП-системы к некоторому исполнительному механизму объекта управления через порт вывода информации.

Рис. 5. Схема формирования управляющего сигнала

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

Подпрограмма формирования такого управляющего воздействия проста и состоит всего из двух команд. Для включения исполнительного механизма используется подпрограмма «ON»:

ON: MVI A, 02; загрузить в аккумулятор код 000.0010

OUT, 03; выдать управляющий байт в порт 03.

Для выключения исполнительного механизма можно использовать подпрограмму «OFF»:

OFF: XRA A; обнулить аккумулятор

OUT, 03; выдать байт 0000 0000 в порт 03.

(вывести содержимое аккумулятора байт 0000 0000 в порт 03).

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

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

Рис. 6. Блок-схема временной задержки

Программа имеет символическое название «TIME» и, в случае вызова её основной программой по команде CALL, адрес TIME, должна завершаться командой возврата RET.

Предположим, что в МП-системе, использующей тактовую частоту 2 МГц (такт в этом случае составляет 0,5 мкс), необходимо реализовать временную задержку длительностью 250 мкс. Фрагмент программ, реализующей временную задержку, необходимо оформлять в виде подпрограммы, так как предполагается, что основная программа будет обращаться к ней многократно.

Текст программы, отображающей структуру алгоритма, показанного на рис. 6, следующий:

COUNT: DCR B; уменьшение на 1 содержимого

регистра В JNZ, адрес COUNT; повторить цикл, если В≠0

RET; возврат в основную программу, если В=0.

Для получения требуемой временной задержки необходимо определить значение числа Х, загружаемого в регистр В. Определение числа Х выполняется на основе времени выполнения команд, образующих данную подпрограмму. При этом необходимо учитывать, что команды MVI B, X и RET выполняются однократно, а число повторений команд DCR B и JNZ, адрес COUNT равно числу Х, загружаемому в регистр В. Кроме того, обращение к подпрограмме временной задержки осуществляется по команде CALL, адрес TIME, время исполнения которой также необходимо учитывать при подсчете временной задержки. В описании команд МП КР580ИК80 указывается, за сколько тактов основной частоты синхронизации исполняется каждая команда МП. На основе этих данных можно записать:

CALL, TIME – 17 тактов – 8,5 мкс;

MVI B, X – 7 тактов – 3,5 мкс;

DCR B – 5 тактов – 2,5 мкс;

JNZ, адрес COUNT – 10 тактов – 5,0 мкс;

RET – 10 тактов – 5,0 мкс.

Таким образом, однократно исполняемые команды (CALL, MVI, RET) в этой подпрограмме требуют 17 мкс (8,5+3,5+5,0). Следовательно, для получения требуемой задержки в 250 мкс необходимо команды DCR B и JNZ, COUNT столько раз, чтобы время их исполнения составило 233 мкс, т.е. (250–17). Однако время выполнения этой пары команд составляет (2,5+5,0). Поэтому, если принять Х=31, возможно получение временной задержки 232,5 мкс.

Если точность подпрограммной реализации временной задержки длительностью 250 мкс с погрешностью – 0,5 мкс удовлетворяет условиям задачи, то на этом разработка программы заканчивается.

Исходя из приведенного расчета, запишем текст подпрограммы TIME:

JNZ, адрес COUNT; цикл, если В≠0

RET; возврат в основную программу.

В том случае, если точность представления временного интервала 250 мкс с погрешностью – 0,5 мкс не удовлетворяет разработчика, можно поступить двояко:

– реализовать подпрограмму точной задержки на 50 мкс и пятикратно повторить ее вызов;

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

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

С целью получения задержки, равной 1 мин, основная управляющая программа может 60 раз осуществлять вызов подпрограммы ONESEC. Для этого число 60 загружается, например, в регистр В, который выполняет функции декрементного счетчика секунд, и после каждого прогона подпрограммы ONESEC его содержимое уменьшается на 1. Текст программы «ONESEC» приводится ниже.

ONESEC: MVI B, FF; счетчик внешних циклов

L1: MVI C, FB; счетчик внутренних циклов

L2: NOP; точная подгонка времени

внутреннего цикла

DCR C; декремент счетчика внутренних циклов

JNZ, адрес L2; возврат во внутренний цикл, если С≠0

DCR В; декремент счетчика внешних циклов

JNZ, адрес L1; возврат во внешний цикл, если В≠0

Рис. 7. Алгоритм задержки на 1 секунду

Блок-схема типовой процедуры сбора и формирования в ОЗУ МП-системы массива данных от одного источника показана на рис. 8. Источником вводимых данных является порт ввода с символическим адресом NN, 8100 – начальный адрес массива данных, регистр С используется в качестве счетчика данных и регистровая пара HL используется командами с косвенно-регистровой адресацией в качестве указателя данных; ETX – знак-терминатор «конец массива».

Рис. 8. Типовая процедура сбора данных

Программа имеет вид:

LXI H, 8100; запись начального адреса

MVI C, C, 00; счетчик = 0

SAVE: IN, NN; ввод данных из порта в А

MOV M, A; перенос данных А → ячейку ОЗУ,

адрес которой в (H+L)

INX H; (H+L) = (H+L+1)

INR C; счетчик = счетчик+1

SUI, ETX; проверка терминатора

Если число слов данных известно и хранится в ячейке с адресом 81N0, то программа сбора данных будет иметь вид:

LDA, 81N0; пересылка содержимого 81N0 → (A)

MOV C, A; счетчик = длина массива: А → (С)

DCR C; счетчик = счетчик-1

JNZ, адрес SAVE; продолжение сбора, если не 0

Рассмотрим несколько примеров обработки массива данных.

LXI H, 8100; запоминание в (H+L) адреса начала

массива данных

SUB A; сброс аккумулятора: (А) ← 0

ADDN: ADD M ; прибавление элемента М+(А) → (A)

INX H; переход к следующему адресу

(H+L) ← (H+L+1)

DCR B; декремент счетчика: (В) ← (В-1)

JNZ, адрес ADDN; организация цикла, если не 0

М (COUNT) → (A)

MOV B, A; организация счета в регистре В:

NEXTE: DCR B; декремент счетчика: (В) ← (В-1)

JNZ, адрес DONE; проверка окончания цикла: если 0,

то скачок на адрес метки DONE

INX H; (H+L) ← (H+L+1)

CMP M; сравнение с максимумом

JМР, адрес NEXTE;


Литература

1. Г.И. Пухальский. Программирование микропроцессорных систем. Учебное пособие для Вузов – М. Политехника, 2002.

2. В.С. Ямпольский. Основы автоматики и электронно-вычислительной техники. – М.: Просвещение, 1991.

3. Л.Н. Ананченко, И.Е. Рогов. Составление алгоритмов и программ на языке «Ассемблер» для управления технологическими процессами: Метод. указания – Ростов-на-Дону: ДГТУ, 1993 г.

4. Л.Н. Ананченко. Набор команд микропроцессора КР580ИК80: Метод. указания – Ростов-на-Дону, РИСХМ, 1991.

Тема 1.6 Программное обеспечение микропроцессорных систем
ЛАБОРАТОРНАЯ РАБОТА №3

Запись и выполнение простых программ
Учебные цели: исследование выполнения отдельных команд и простых программ микропроцессором; использование различных методов адресации в программах; запись программ.

Учебные задачи:

1. Исследование выполнения отдельных команд и простых программ микропроцессором; использование различных методов адресации в программах; запись программ.

2. Закрепление полученных теоретических знания по программированию микропроцессорных систем.

3. Практически рассмотреть состояние различных узлов и устройств микропроцессора, а также компонентов микропроцессорной системы, используя программное моделирование.
Образовательные результаты, заявленные во ФГОС третьего поколения:
Студент должен:

уметь:

Выполнять требования технического задания по программированию микропроцессорных систем;

Составлять программы на языке Ассемблера микропроцессорных систем;

Создавать и отлаживать программы реального времени средствами программной эмуляции и на аппаратных макетах;

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

Программное обеспечение микропроцессорных систем;

Базовую функциональную схему микропроцессорной системы;

Методы тестирования и способы отладки микропроцессорных систем;

Состояние производства и использования микропроцессорных систем;

Особенности программирования микропроцессорных систем реального времени;

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


  1. Используя программу эмулятора микропроцессорной системы исследовать систему команд микропроцессора КР580ВМ80 и программы типовых функций управления;

  2. Практическое использование нового программного продукта.

Обеспеченность занятия:
Учебно-методическая литература:

Костров Б.В., Ручкин В.Н. Микропроцессорные системы и контроллеры. Учебное пособие. М.,ДЕСС, 2007г,319 с.

Майоров В.Г., Гаврилов А.И. Практический курс программирования микропроцессорных систем. – М.: Машиностроение, 1999 г.

Максимов Н.В., Партыка Т.Л., Попов И.И. Архитектура ЭВМ и вычислительных систем: Учебник. – М.: ФОРУМ: ИНФРА-М, 2005

Палагута К.А. Микропроцессоры INTEL 8080, 8085 (КР580ВМ80А, КР1821ВМ85А) и их программирование/ К.А. Палагута. – М.:МГИУ, 2007. – 104 с.

Программирование микропроцессорных систем: Учеб. пособие для вузов /Под ред. В.Ф.Шаньгина. – М.: Академия., 2009. – 303 с.
Справочная литература

- Конспект лекций «Микропроцессорные системы». Составитель Кузнецов Е.Г. Изд, ГБОУ СПО ЖГК, 2013 г.;

- Система команд микропроцессора КР580ВМ80.
Технические средства обучения:

Персональный компьютер;

Принтер.


  1. Программное обеспечение:
- Операционная система Windows;

- Программа - эмулятор микропроцессорной системы SHELLКР580.


  1. Лабораторное оборудование:
- Персональный компьютер;

- Принтер.


  1. Рабочая тетрадь в клетку

  2. Ручка.

  3. Карандаш простой.

  4. Чертежные принадлежности: линейка
Краткие теоретические и учебно-методические материалы по теме лабораторной работы
При изучении специализированных микропроцессорных устройств рассматриваются приемы проектирования как аппаратных, так и программных средств МПС.

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

Важнейшим этапом создания любой технической системы является ее отладка. Особенностью отладки микропроцессорных систем является нерасторжимость программных и аппаратных средств. Поэтому проектировщик таких систем должен владеть средствами программирования и отладки программного обеспечения системы. Пособие знакомит студентов с такими средствами на примере учебно-отладочного устройства – программы - эмклятора“КР580” используемого при отладке программного обеспечения на персональном компьютере.

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

Интерфейс программы: 1 - поле исследуемых программ; 2 – цифровой дисплей; 3 – порт ввода; 4 – порт вывода; 5 – область стековой памяти; 6 - содержимое регистров общего назначения; 7 – флаги регистра признаков; 8 – оперативная память; 9 – программный счетчик (счетчик команд); 10 –указатель стека

Интерфейс выбора заданий:


Учебно-отладочное устройство (УОУ) предназначено для практического овладения студентами колледжа принципами построения микро-ЭВМ различного назначения на базе микропроцессора КР580ВМ80А, для обучения программированию указанного микропроцессора, а также для отладки программного обеспечения этих микро-ЭВМ. Эмулятор по структуре представляет собой универсальную микро-ЭВМ и может быть использован для моделирования процессов в простых системах управления технологическими процессами при условии оснащения соответствующим программами. Тактовая частота микропроцессора в эмуляторе– 2 МГц.

Учебная программа «SHELL» предназначена для знакомства с особенностями построения микро – ЭВМ на микропроцессоре с фиксированным набором команд и может быть использована для исследования методов программирования и работы БИС, входящих в микропроцессорный комплект серии К580. Микро – ЭВМ при создании и исследовании систем управления различными объектами. Она является легко осваиваемыми и удобным средством для отладки относительно небольших (до 1500 строк) программ пользователя.
Рабочие зоны эмулятора


Экран эмулятора состоит из 6 зон. Зона №1 представляет собой экран с исходным текстом программы на ассемблере. Курсор, представляющий собой символ «» указывает на команду, которая выполняется следующей. Счетчик команд РС указывает номер линии с выполняемой командой. Зона №2 – шесть семи сегментных индикаторов с точкой. Запись в них осуществляется посредством команды OUT 70…75, где адрес порта составляет номер индикатора. Таким образом команда OUT 70 запишет в первый индикатор значение регистра А. А команда OUT 73 запишет в четвертый индикатор регистра А. Соответствующие сегменты индикаторов к битам регистра А приведены на рис.3.2

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

Зона №3 представляет собой окно, в котором можно просматривать и изменять содержимое памяти.

Зона №4 – это два регистра ввода вывода. Верхний представляет собой регистр ввода. Значение его получить командой IN 80. При этом в регистре А скажется значение этого порта.

Регистр вывода выполнен в виде светодиодов. Вывод в него осуществляется командой OUT 90. При этом значения светодиодов устанавливаются соответственно битам регистра А.

Существует еще один регистр вывода – звуковой. Включение динамика осуществляется записью не нулевого значение регистра А командой OUT 60. Если в регистре А – 0, то динамик отключится.

Зона №5 содержит значения каждого из регистров микропроцессора КР580. Для записи данных в регистры необходимо нажать клавишу, соответствующую номеру регистра. Регистр А имеет №1 и т.д. После введения номера регистра появится окно, для записи данных. Данные – это числа в шестнадцатиричной системе от 01 до FF.

И наконец, зона №6 указывает на область памяти, на которую ссылается регистр SP.


    1. Описание клавиш эмулятора

Клавиши используемые для управления ходом выполнением программы.

Клавиша F2 используется для перезагрузки программы.

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

Программный счетчик РС достигнет той строки, на которой стоял курсор.


  • Пользователь не нажимает клавишу ESC.

  • Программа завершит свое выполнение с помощью команды HLT.

  • Возникнет какая либо ошибка (например, синтаксическая).

После того как возникли две предыдущие ситуации, появится окно, в котором будет написана ситуация, из-за которой программа прекратила свое выполнение, строка в которой произошло событие, и варианты действий. Если вы нажмете клавишу 0, то эмулятор реинициализируется и можно будет снова начать выполнение программы. Если вы нажмете клавишу 1, то вы выйдете из эмулятора. Нажав клавишу 2, вы сможете спрятать окно с сообщением до повторного нажатия этой клавиши. Это дает возможность просмотреть результаты работы вашей программы.

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

Для просмотра памяти используйте клавиши [и]. Клавиша [сдвигает содержимое в зоне №3 на одну ячейку назад, а клавиша] – на одну ячейку вперёд. Для того чтобы редактировать содержимое памяти, нажмите клавишу М. Появится окно, в котором вас спросят об адресе ячейки памяти. Введите адрес, в пределах от 0000h до 1000h и нажмите Enter. Затем в диалоговом окне введите содержимое ячейки – от 00h до FFh.

Для просмотра содержимого стека используются клавиши + и -.

Для изменения содержимого вводного порта используйте клавиши 1…8 – где клавиша 1 – соответствует 0 биту регистра, и т.д., вплоть до клавиши 8, которая соответствует седьмому биту входного регистра. Повторное нажатие клавиши инвертирует соответствующий бит регистра.

Для изменения выходного регистра пользуйтесь клавишами Alt-1…Alt-8.
3.2 Описание программы MENU
Программа MENU предназначена для запуска лабораторных программ. Эта программа, как и программа SHELL состоит из нескольких зон.

Зона №1 – главная зона этой программы. В ней вы можете выбрать, какую программу необходимо загрузить. В этом окне вы увидите название и номер лабораторной работы. Выберите нужную работу и нажмите клавишу Enter или клавишу R. Появится второе окно, в котором вам предложат загрузить нужную программу из лабораторной работы. Выберите нужную программу с помощью курсора и нажмите Enter – для выполнения эмулирования этой программы. Если вместо клавиши R (или Enter) вы нажмёте клавишу E – то вы сможете отредактировать исходный текст программы. После выхода из редактора загрузится эмулятор с текстом изменённой программы.

3.3 Описание программы EDITOR
Программа EDITOR нужна для редактирования уже существующих программ, или для создания новых. При запуске этой программы вы увидите главный (и единственный ) экран программы. Вверху будет строчка статуса, в которой показывается информация о тексте, который редактируется. В остальной части экрана будет сам редактируемый текст. По тексту можно будет передвигаться с помощью клавиш курсора (клавиш со стрелками). Текущая редактируемая программа выделена более ярким цветом, чем остальные. Клавишами «» и «» можно передвигать курсор по длине редактируемой строки, а клавишами «» и «» - по редактируемому тексту. Клавиши с буквами и цифрами – изменяется текст. Нажатием клавиши Backspace – удаляется символ слева от курсора. Клавишей Delete – справа от курсора. Если курсор находится в конце редактируемой строки и вы нажали клавишу Delete, то две строки (текущая и следующая) объединяются в одну. Нажав клавишу Enter вы разбиваете строку в месте положения курсора на две строки – первая часть (до курсора) остается на месте, а вторая часть переносится на следующую.

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


  1. Что такое мнемоническое имя команды микропроцессора?

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

Записать копию содержимого аккумулятора в область памяти, на которую указывает содержимое регистровой пары ВС;

Загрузить регистр В данными, содержащимися во втором байте команды;

Переслать данные из регистра С в регистр В;

Записать в область памяти ААСЕ копию содержимого аккумулятора;

Загрузить содержимое аккумулятора в регистр D.
Задания для лабораторного занятия:

Задание 1: Исследование программы 2.1

Задание 2: Исследование программы 2.2

Задание 3:

Задание 4: Исследование программы 2.4

Задание 5: Исследование программы 2.5

Задание 6:

Задание 7:
Листинги программ находятся в тексте описания лабораторной работы.

Внимание: Количество выполняемых заданий назначает преподаватель

Инструкции по выполнению работы

Микропроцессор КР580ВМ80А имеет фиксированный набор команд. Каждая команда имеет свой машинный код – слово длиной 8, 16 или 24 бит, занимающее соответственно 1, 2 или 3 ячейки памяти в запоминающем устройстве микроЭВМ. Микропроцессор работает по программе, интерпретируя содержимое ячейки памяти как код команды или как данные.
Задание №1

Исследовать работу программы 2.1

Рассмотрим программу 2.1, извлекающую число из ячейки памяти с адресом 0010h, осуществляющую инверсию этого числа и записывающую результат по адресу 0011h.

Программа 3.1 (в мнемокодах)

Мнемокод Комментарий

LXI H, 0010 загрузить адрес 0010h

MOV A,M передать данные из 0010h в аккумулятор

CMA инвертировать содержимое аккумулятора

INX HL сформировать адрес для результата

MOV M,A записать число из аккумулятора в память

HLT прервать выполнение программы
Для начала работы программы, необходимо в рабочую ячейку 0010 занести любое шестнадцатиричное число от 01 до FF.

При записи программ все числа представляются в шестнадцатеричной системе счисления. Для загрузки программы выберите в начальном меню лабораторную работу №2.1, выберете требуемую для исследования программу и нажмите клавишу Enter. Программа запустится и через некоторое время появится стартовое сообщение. Нажмите любую клавишу, появится главный интерфейс программы с выбранной программой для исследования в окне исследуемых программ. Теперь можно приступать к её исследованию.
Задание 1: Исследование программы 2.1

1.1 Ввести программу 2.1 в микро – ЭВМ

1.2 Записать исследуемое число по адресу 0010

1.3 Проверить результат выполнения программы по числу записанному в ячейке 0011

1.4 Составьте таблицу 1 содержимого регистров микропроцессора при выполнении программы 3.1 с командой CMA при выполнении программы по шагам.

Таблица 1


Содержимое регистров после выполнения каждой команды программы 3.1

Регистры

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

0 шаг

(начало)


1шаг

2 шаг

MOV A,M


3шаг

4 шаг

5 шаг

MOV M,A


6 шаг

A

FL

H

L

M1=0010

M2=0011

Задание 2: Исследование программы 2.2

2.1Вызвать окно выбора задания и в меню выбрать программу 2.2

2.2 Занести в ячейки 0010 и 0011 сравниваемые числа

2.3 Результат выполнения программы находится в регистре В

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

2.5 Графически отобразить выполнение команды lda 0010

Графическое представление команды загрузки аккумулятора


Задание 3: Исследовать работу программы 2.3

3.1 Загрузить программу 2.3 в память

3.2 Записать данные в ячейки памяти 0010 и 0011

3.3 Результирующее число находится в ячейке, адресуемой парой регистров ВС

3.4 Составьте таблицу 2 содержимого регистров микропроцессора при выполнении программы 3.3 с командой ADD M при выполнении программы по шагам.

Таблица 2




Команда

A

FL

HL

М1/данные

М2/данные

М3/данные

ВС

DE

1

lxi hl 0010

2

lxi bc, 0011

3

ldax bc

4

add m

5

inx bc

6

stax bc

7

hlt

Задание 4: Исследование программы 2.4

4.1 Записать программу 2.4 в микро – ЭВМ

4.2 Записать исследуемые числа по адресам 0010 и 0011

4.3 Проверить результат выполнения программы по числу, записанному в регистр В

Задание 5: Исследование программы 2.5

5.1 Занести шестнадцать любых однобайтных чисел в ячейки памяти, начиная с 0000

5.2 Убедится в выполнении последовательного сдвига этих чисел проверкой содержимого адресов 0010

Задание 6: Используя программы 2.2; 2.3; 2.5; составить программу пересылки двух операндов двойной длины, хранящихся в ячейках 0010, 0011, 0012, 0013 в регистрах пары BC и DE

Задание 7: Исследовать выполнение программы 2.6

7.1 Преобразуемое число записать по адресу 0010

7.2 Результат инверсии находится в регистре D
При выполнении заданий №№ 6 и 7 требуется воспользоваться программой EDITOR из пакета SHELLКР580,

Служащей для записи и редактирования программ пользователя. После ввода отредактированных программ в эмулятор предстоит её отладка согласно изученной методике, после чего программа станет доступна для исследования.
Приложение №1

Название: Программирование однокристальных микропроцессоров.

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

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

Глава 1. Микропроцессор К1810ВМ86- новый этап развития микросхемотехники
1.1. Общая характеристика микропроцессора
1.2. Конструктивное оформление МП и назначение выводов корпуса
1.3. Структурная схема микропроцессора
1.4. Модель МП для программиста
1.5. Организация памяти
1.6. Ввод-вывод
1.7. Мультипроцессорные средства
1.8. Прерывания
1.9. Управление микропроцессором
Глава 2. Режимы адресации и система команд микропроцессора
2.1. Введение в язык ассемблера
2 1.1. Основные конструкции языка ассемблера
2.1.2. Формат операторов
2.1.3. Элементы операторов
2.2. Режимы адресации
2.3. Система команд
2.3.1. Команды передачи данных
2.3.2. Команды арифметических операций
2.3.3. Команды логических операций и команды сдвигов
2.3.4. Команды передачи управления
2.3.5. Цепочечные команды
2.3.6. Команды управления микропроцессором
2.4. Программная совместимость микропроцессоров K580 и К1810
Глава 3. Программирование на языке ассемблера
3.1. Пример законченной программы
3.2. Переменные
3.3. Директивы управления сегментами
3.4. Директивы определения имен
3.5. Выражения
3.6. Директивы процедур
3.7. Директивы связи модулей и сегментов
3.8. Примеры ассемблерных программ
Глава 4. Особенности аппаратных конфигураций
4.1. Цикл шины
4.2. Шины адреса и данных
4.3. Системная шина данных
4.4. Режимы работы
4.5. Мультипроцессорные системы
4 6. Синхронизация
4 7, Сброс микропроцессора
4.8. Сигнал готовности
4.9. Интерфейс ввода-вывода Заключение
Список литературы

Бесплатно скачать электронную книгу в удобном формате, смотреть и читать:
Скачать книгу Программирование однокристальных микропроцессоров - Григорьев В.Л. - fileskachat.com, быстрое и бесплатное скачивание.

Скачать djvu
Ниже можно купить эту книгу по лучшей цене со скидкой с доставкой по всей России.

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

ЗАНЯТИЕ 3.1.1 Два способа организации микроЭВМ: с разными шинами данных и адреса и с мультиплексированной шиной данных и адреса.

ВОПРОСЫ ЗАНЯТИЯ:

1. Общие сведения о микроЭВМ. Функциональные блоки и организация управления в микроЭВМ.

2. Способ организации микроЭВМ с раздельными шинами адреса и данных.

3. Способ организации микроЭВМ с мультиплексированной шиной данных и адреса.

ПЕРВЫЙ ВОПРОС

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

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



Если рассмотреть схему микро-ЭВМ (рис. 1), то можно прийти к выводу, что в ней содержатся те же блоки, на которых строились вычис­лительные машины предыду­щих поколений.

Рис. 1. Схема микро-ЭВМ.

Однако микро-ЭВМ имеет некоторое архитектурное отличие от пред­шествующих ЦВМ, обусловленное стремлением объеди­нить в БИС, на которых строится микро-ЭВМ, узлы и бло­ки, способные проводить сложные преобразования инфор­мации при минимальном количестве внешних проводни­ков. Эта особенность обусловлена возможностью построе­ния в БИС сложных электронных схем при ограничении по числу внешних проводников, не превышающих, как правило, 50 или 100 контактов.

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

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

Для построения остальных блоков микро-ЭВМ исполь­зуются специализированные БИС или ИС средней степени интеграции. Основные типы ИС, применяемых в микро-ЭВМ, могут быть отнесены к одной из четырех групп: базо­вый микропроцессорный комплект (МПК) ИС; ИС запоми­нающих устройств; ИС устройств ввода - вывода инфор­мации в микропроцессор; ИС для связи микро-ЭВМ с объ­ектами управления.

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

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

Обрабатываемая инфор­мация и результаты вычислений передаются по магистрали данных (МД).

Магистраль управления (МУ) передает уп­равляющие сигналы на все блоки микро-ЭВМ, настраивая на нужный режим устройства, участвующие в выполняе­мой команде.

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

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

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

Многокристальные МП строятся на основе совокупности БИС, представляющих собой МПК. Каждая БИС, входящая в МПК, позволяет реализо­вать узел или функциональный блок узла МП. Наиболее характерными узлами МП являются арифме­тическо-логический блок (АЛБ), составляющий основу операционного устройства, и устройство управления (УУ).

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

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

К операциям сдвига отно­сятся операции арифметического, логического и циклического сдвигов вправо и влево содержимого регистров АЛБ.

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

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

Рассмотрим несколько подробней функционирование отдельных блоков микроЭВМ.

Операционное устройство МП, предназначенное для выполнения операций над операндами в соответствии с ко­дом выполняемой команды (арифметической, логической, сдвига или пересылочной), обычно включает в себя АЛБ, блоки регистров общего назначения (РОН), блок форми­рования состояния регистра условий, блок местного управ­ления.

Арифметическо-логический блок непосредственно вы­полняет микрооперацию над исходными операндами.

Блок РОН обеспечивает хранение операндов и проме­жуточных результатов вычислений, характеризуется ма­лым временем обращения и ограниченным количеством регистров.

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

Блок местного управления обеспечивает выполнение те­кущей микрокоманды и управляет в соответствии с кодом микрокоманды всеми блоками операционного устройства.

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

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

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

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

Представленная на рис. 2 обобщенная схема устрой­ства микропрограммного управления содержит: блок мик­ропрограммной памяти, в котором хранятся микрокоман­ды; блок генерации адреса микрокоманды, формирующий адрес очередной микрокоманды, который в общем случае зависит от кода выполняемой микрокоманды, кодов при­знаков выполняемых в АЛБ операций, информации блоков синхронизации и прерывания процессора; блок синхрони­зации, предназначенный для приема управляющих сигна­лов и формирования последовательности синхросигналов для основных блоков микро-ЭВМ для обеспечения опреде­ленной последовательности их работы; дешифратор микрокоманд, формирующий управляющие сигналы, посту­пающие в исполнительные блоки микро-ЭВМ.

Наиболее распространены варианты реализации уст­ройств управления с использованием в качестве микропро­граммной памяти постоянного ЗУ (ПЗУ) или перепрограм­мируемого ЗУ (ППЗУ) и устройства управления на базе программируемой логической матрицы (ПЛМ).

Рис 2. Обобщенная схема устройства управления.

В первом случае блок памяти микрокоманд выполняют на базе стандартных БИС памяти типа ПЗУ, ППЗУ. Ос­тальные блоки устройства управления объединяют в от­дельную БИС или исполняют в виде отдельных узлов на схемах средней интеграции. В устройстве управления на базе ПЛМ все блоки объединяют в одну БИС, представ­ляющую собой фактически законченный цифровой авто­мат, закон функционирования которого определяется ком­мутацией внутренних магистралей матрицы.

Устройства управления на ПЛМ . Вэтих устройствах в отличие от рассмотренных схем совмещены функции узла генерации адреса микрокоманды с памятью микро­программы. Рассмотрим схему такого устройства на примере МПК серии К587 (рис. 3, б).

Рис. 3. Схемы БИС серии К1804 (а) и серии К587 РП1 (б).

Структура устройства содержит память микропрограмм типа ПЛМ, регистр команд РгК, регистр кода условий РгКУ, регистр следующего адреса РгА и регистр призна­ков управления РгУ.

Регистр признаков управления содержит маски на сигнал записи в регистр команд, регистр следующего адреса и регистр кода условий. Часть сигналов с выхода ПЛМ выводится для управления операционной частью как микрокоманда, а другая часть выходных сигналов ПЛМ не выводится из корпуса БИС и используется для формирования следующего адреса и кода регистра управ­ления. Программируемая логическая матрица позволяет анализировать большое число разрядов, что исключает необходимость в управляемых мультиплексорах. Совокуп­ность всех разрядов РгК, РгКУ и РгА используется как полное адресное слово для ПЛМ.

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

Регистр адреса является главным задающим звеном при выборке последующей микрокоманды. Разрядность п регистра адреса позволяет устройству управления созда­вать 2" устойчивых состояний без смены кода команды и кода условий.

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

логические возможности ПЛМ как цифрового автомата. Рассмотренное устройство не содержит стековой памяти и, следовательно, не предусматривает модульного програм­мирования. Из рассмотренных устройств на структуру микро-ЭВМ в наибольшей степени влияет вариант реали­зации устройства управления. Можно выделить три наиболее характерных варианта: реализация в однокри­стальном процессоре, объединяющем в себе операцион­ную часть и устройство управления; реализация устрой­ства управления в виде микропрограммного автомата с использованием ПЗУ и ППЗУ для записи микрокоманд; реализация устройства управления на основе ПЛМ.

В микропроцессорных комплектах серий К587, К588, К1883 устройства управления реализованы на основе ПЛМ. Микропроцессорные комплекты серий К580, К.1801, К1810, К1816, К1820 содержат в своем составе БИС, в которой реализованы центральный процессор и устройство управления с фиксированной структурой и системой команд. В МПК серий К583, К589, КР1800, КР1802, КР1804 устройство управления строится в виде микро­программного автомата на базе входящих в эти комплекты БИС, что позволяет потребителю реализовать на их основе необходимую ему систему команд. Микропроцес­сорные комплекты серий К536, К581 предназначены для построения микро-ЭВМ семейства «Электроника С» и «Электроника-60».

Микропроцессорные комплекты серии К1801 включают в себя однокристальный МП К1801ВМ1, реализующий в себе процессор и устройство управления с системой команд микро-ЭВМ «Электроника-60», и ряда БИС для построения одноплатных микро-ЭВМ. По своим техниче­ским характеристикам МПК серий К580, К1816, К1810, К1820, содержащие однокристальные МП, целесообразно применять для получения устройств цифровой автоматики, простейших контроллеров, а также использовать для построения микро- и мини-ЭВМ различного назначения.

Микропроцессорные комплекты серий К583, К584, К587, К588 предназначены для построения микро-ЭВМ и слож­ных контроллеров. Благодаря секционной организации, развитой системе магистралей, микропрограммируемости управляющих функций они могут служить основой для построения различных управляющих систем. Малое энергопотребление и высокая помехоустойчивость МПК серий К587 и К588 позволяют проектировать на их основе системы числового программного управления технологическим оборудованием и устройства с ограничениями по потребляемой энергии.

Быстродействующие МП К серий К589, KР1802, КР1804 предназначены для построения микро-ЭВМ и систем быстродействующей автоматики, совместимы по уровням сигналов и могут дополнять друг друга. Микропроцессор­ные комплекты серий КР1802 и К1804 отличаются подхо­дом к формированию модулей. В МПК КР1804 4-разряд­ные микропроцессорные БИС содержат все элементы микропроцессора. В МПК серии КР1802 в БИС выпол­няются отдельные функциональные узлы МП (БИС 8-раз­рядного АЛ Б, БИС 16 4-разрядных РОН, БИС 16-разряд­ного арифметического расширителя и т.д.). Отличие по составу модулей рассмотренных МПК позволяет приме­нить для различных областей наиболее подходящий из них по функциональному разбиению. Микропроцессорный комплект серии КР1800 обладает сверхвысоким быстродействием (частота тактовых сигна­лов 36 МГц) и ориентирован на построение вычислитель­ных средств с высокой производительностью.

ВТОРОЙ ВОПРОС

На рис. 4 приведена в качестве примера структу­ра микроЭВМ, реализованной на базе микропроцес­сорного комплекта КР580. Шестнадцатиразрядная шина адреса (ША) и 8-разрядная шина данных (ШД) и управления образуют интерфейс между микропро­цессором (МП), с одной стороны, и ПЗУ, ОЗУ и интер­фейсными устройствами ввода - вывода (ИУВВ) - с другой. Выделение отдельных шин для всех управля­ющих сигналов, адресной информации и данных упрощает организацию обмена информацией между отдельными компонентами и уменьшает время вы­полнения команд в микроЭВМ. Генератор тактовых импульсов (ГТИ) формирует сигналы, необходимые для работы МП.

Рис. 4. Структура микроЭВМ с раздельными шинами данных и адреса.

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

ТРЕТИЙ ВОПРОС

Представленная на рис. 5 схема иллюстрирует на примере микропроцессорного комплекта К588 орга­низацию микроЭВМ с мультиплексированной шиной адреса и данных.

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

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

Рис. 5. Структура микроЭВМ с мультиплексирован­ной шиной данных и адреса.

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

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

Простейшие способы формирования сигнала на­чальной установки: а) использование генератора оди­ночных импульсов, запускаемого, например, от кноп­ки; б) формирование импульса начальной установки по включению питания с задержкой на время, необхо­димое для установки номинального значения напря­жения питания после включения источника.

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

Литература:

1. М.В. Напрасник «Микропроцессоры и микроЭВМ», стр.: 81-84.

2. Л.Н. Преснухин «Микропроцессоры», ч. 1, стр.: 140-162.

ЗАНЯТИЕ 3.1.2 Структурная схема, характеристики и основная элементная база

микроЭВМ «МС1201.01».

ВОПРОСЫ ЗАНЯТИЯ:

1. Назначение, характеристики микроЭВМ «МС1201.01».

2. Структурная схема, состав и элементная база микроЭВМ «МС1201.01».

3. Система команд, режимы адресации и особенности работы микроЭВМ «МС1201.01».

ПЕРВЫЙ ВОПРОС

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

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

МикроЭВМ может применятся в составе технологического оборудования (системы ЧПУ 2Р22 и Контур-1); в контрольно-измерительных и испытательных комплексах; в системах обработки цифровой информации общего назначения.

Во всех возможных применениях микроЭВМ решает одни и теже задачи: ввод, хранение, обработка и вывод информации.

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

Система счисления для чисел и команд – двоичная;

Основной формат представления чисел и команд – 16 двоичных разрядов;

Принцип работы основных устройств – параллельный;

Быстродействие при выполнении команд типа «СЛОЖЕНИЕ»

При регистровом методе адресации 400 ± 100 тыс. оп/с;

При косвенно-регистровом методе адресации 180 ± 40 тыс. оп/с;

Число РОН – 8;

Системный канал микроЭВМ позволяет прямо адресоваться в области памяти

64 КБайта;

Емкость ОЗУ 28 Кбайт 16-разрядных слов;

Емкость системного ПЗУ 4 КБайта слов;

Питание осуществляется от внешних источников постоянного тока с

номинальным значением напряжения +5 В (+5 В и +12 В для МС1201), ток не

более 2,4 А, потребляющая мощность не более 12,6 Вт;

Наработка микроЭВМ на отказ – не менее 10 000 часов, на сбой – не менее

Срок службы – не менее 10 лет;

Габаритные размеры 252×296×12 мм, масса не более 0,8 кг;

В качестве базового программного обеспечения микроЭВМ приняты: тест

мониторная операционная система (ТМОС); операционная система с

разделением времени (ОС ДВК).

ВТОРОЙ ВОПРОС

МикроЭВМ «МС1201.01» состоит из следующих основных и вспомогательных функциональных блоков и узлов.

Основные :

Процессор (ПРЦ);

Системное ПЗУ (СПЗУ);

Устройство байтового параллельного интерфейса (УБПИ);

Устройство последовательного ввода-вывода (УПВВ);

Устройство интерфейса накопителя на гибких магнитных дисках (УИ ГМД);

Контролирующее устройство для ПЗУ пользователя (КУ ПЗУ);

Регистр режима начального пуска (РНП);

Узел оптоэлектронной развязки сигналов (УОР).

Вспомогательные :

Корректор сигналов управления канала (КСК);

Генератор тактовых импульсов (ГТИ-1, ГТИ-2);

Преобразователь напряжения (ПН-5 В);

Приемо-передатчики сигналов (ПП1…ПП4);

Блок управления приемо-передатчиками сигналов канала (БУПП)

МикроЭВМ представляет собой систему функциональных блоков, связь между которыми осуществляется через единый системный канал (типа «Общая шина») обмена информацией с мультиплексированием шин адреса и данных.

Элементная база микроЭВМ построена на ИМС серий К1801 (8 штук), К531 (15 штук), К155 (23 штуки), К555, КР565 (32 штуки). Основу элементной базы составляют микросхемы серии К1801, выполненные по n -канальной МОП технологии.

На ИМС К1801 построен микропроцессор, К1801РЕ1 представляет собой системное ПЗУ, К1801ВП1-030 устройство управления ОЗУ, К1801ВП1-031 устройство управления байтового параллельного интерфейса, К1801ВП1-034 устройство передачи информации УБПИ, К1801ВП1-035 УПВВ, К1801ВП1-033 устройство управления интерфейса НГМД.

На микросхемах серии К531 в основном построены приемо-передатчики сигналов канала, а ИМС К555 – представляет собой усилитель сигналов.

Интегральные микросхемы серии КР565РУ3 (РУ6 – МС1201.01 и МС1201.02) образуют накопитель ОЗУ динамического типа, полная емкость накопителя 32 КБайта 16-разрядных слов или 8 банков памяти по 4 КБайта в каждом. Для пользователя доступны лишь 7 банков памяти, т.е. 28 Кбайт слов. ОЗУ состоит из накопителя информации (Н ОЗУ), устройства управления ОЗУ (У ОЗУ), буферного регистра данных(БРД), переключателя банков П3 на рисунке 2 (БВБ на схеме 1).

Системное ПЗУ предназначено для хранения программ пульта начального загрузчика с НГМД и резидентного проверяющего теста.

Имеется возможность установки дополнительной микросхемы ПЗУ объемом 4 КБайта 16-разрядных слов в контактирующее устройство (рис. 2), расположенное на плате.

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

Разъем Р1 служит для подключения внешнего устройства к последовательному каналу ввода-вывода, а разъем Р2 – для подключения устройств к байтовому параллельному каналу ввода-вывода, а также для подключения НГМД.

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

Рис. 1. Структурная схема микроЭВМ «МС1201.01»

Рис. 2. Схема расположения основных устройств

на плате микро-ЭВМ «Электро­ника МС1201.01 (02)»

ТРЕТИЙ ВОПРОС

В микроЭВМ «МС1201.01» применяются следующие режимы адресации: регистровый, косвенно-регистровый, автоинкрементный, косвенно-автоинкрементный, автодекрементный, косвенно-автодекрементный, индексный и косвенно-индексный.

МикроЭВМ использует следующие типы команд: безадресные, одноадресные и двухадресные.

Связь между устройствами, подключенными к каналу микроЭВМ осуществляется по принципу «активный – пассивный».

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

В микроЭВМ установлены следующие приоритеты обслуживания прерываний между интерфейсными устройствами ввода-вывода информации:

1 – от УПВВ.

2 – от УИ ГМД.

3 – от УБПИ.

Устройства прямого доступа к памяти в составе микроЭВМ нет. РОН процессора (R0 – R7) могут служить в качестве накопительных регистров, индексных регистров, регистров автоинкрементной и автодекрементной адресации и других целей. Кроме того R6 выполняет функцию регистра указателя стека (РУС), а R7 функции регистра счетчика команд (РСК). Формат регистров 16 двоичных разрядов, при байтовых операциях используются 8 младших разрядов регистров.

В связи с необходимостью более глубокого знания функционирования микроЭВМ МС1201, так как на ее базе построено две системы ЧПУ – 2Р22 и Контур – 1, рассмотрим более подробно некоторые вопросы ее функционирования.

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

Рис. 3. Структура микро-ЭВМ с общей магистралью.

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

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

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

Обмен данными между устройствами, подключенными к магистрали, может осуществляться в режимах:

1) прог­раммном;

2) по прерыванию;

3) прямого доступа к памяти (ПДП).

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

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

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

Рабочими циклами магистрали при взаимодействии с процессором являются: «Чтение» - перенос слова данных от внешнего устройства в процессор; «Запись» - перенос слова или байта данных из процессора во внешнее уст­ройство; «Чтение модификация - запись» - перенос слова данных от внешнего устройства в процессор, за которым следует запись слова (байта) данных из процес­сора во внешнее устройство.

Для каждой команды процессора требуется один или несколько рабочих циклов магистрали. В первую очередь выполняется цикл «Чтение», при котором команда выби­рается из ячейки памяти (адрес ячейки задан счетчиком команд). Если больше нет операндов, для которых необхо­димо обращение к памяти или регистрам устройств ввода - вывода, то для выполнения команды никаких дополнительных рабочих циклов не требуется. Однако если необходимо обращение к памяти или к внешнему устрой­ству, то требуется один (или больше) дополнительный рабочий цикл.

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