Организация шин. Принципы построения мпс. Архитектура мп. Организация внешней памяти мк

Вид материалаКонспект

Содержание


2.Принципы построения микропроцессорных систем
3.Обобщенная структурная схема МПС
4.Архитектура микропроцессора
5.Анализ подключения внешней памяти
Подключения внешней памяти программ к микрокронтроллеру семейства x51
Контрольные вопросы
Подобный материал:

ФСПО. «МК и МП» Конспект лекции №1.2

Организация шин. Принципы построения МПС. Архитектура МП.
Организация внешней памяти МК



План лекции:
  1. Организация шин
  2. Принципы построения микропроцессорных систем
  3. Обобщенная структурная схема МПС
  4. Архитектура МП
  5. Анализ подключения внешней памяти


1.Организация шин


Шина — это информационный канал, который объединяет все функцио­нальные блоки МПС и обеспечивает обмен данными.

Конструктивно шина представляет собой n проводников и один общий проводник (земля). Данные по шине передаются в виде слов, которые явля­ются группами бит.

В параллельной шине п бит информации передаются по отдельным линиям одновременно, в последовательной шипе — по одной линии последовательно во времени.

Все основные блоки МПС соединены с единой параллельной шиной, кото­рая называется системной шиной SB (System Bus). Системная шина содержит три шины: адреса, данных и управления.

Шина адреса АВ (Address Bus) является однонаправленной. Она предназна­чена для передачи адреса ячейки памяти или устройства ввода/вывода. На­правление передачи по шине адреса — от МП к внешним устройствам. Ва­рианты условных обозначений однонаправленной параллельной шины показаны на рисунке 1, где стрелка указывает направление передачи.



Рисунок 1 – Варианты условных обозначений однонаправленной параллельной 16-разрядной шины

Шина данных DB (Data Bus) является двунаправленной. Она предназначена для передачи данных между блоками МПС. Информация по одним и тем же линиям DB может передаваться в двух направлениях — как к МП, так и от него. Варианты условных обозначений двунаправленной шины показаны на рисунке 2.



Рисунок 2 – Варианты условных обозначений двунаправленной параллельной 8-разрядной шины.


Шина управления СВ (Control Bus) предназначена для передачи управляю­щих сигналов. Хотя направление управляющих сигналов может быть раз­ным, однако шина управления не является двунаправленной, поскольку для сигналов разного направления используются отдельные линии.


2.Принципы построения микропроцессорных систем


В основу построения МПС-систем положено три принципа:
  • магистральности;
  • модульности;
  • микропрограммного управления.

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

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

Каждый модуль МПС имеет вход управления третьим (высокоимпедансным) состоянием. Этот вход называется CS (Chip Select) — выбор кристалла, или ОЕ (Output Enable) — разрешение выхода. Действие сигнала CS для триггера показано на рисунок 3. Выходной сигнал триггера Q появится на выходе лишь при активном (в данном случае — ну­левом) уровне сигнала CS . Если CS = 1, триггер переводится в высокоимпедансное состояние. Выход триггера является трехстабильным, т. е. может находиться в одном из трех состояний: логической единицы, логического нуля или высокоимпедансном.



Рисунок 3   Действие сигнала CS для триггера


В каждый момент времени к системной шине МПС подсоединено лишь два модуля — передающий и принимающий ин­формацию. Остальные модули находятся в высокоимпедансном состоянии (рисунок 4).



Рисунок 4 – Подключение модулей к системной шине


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

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

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


3.Обобщенная структурная схема МПС


Обобщенная структурная схема МПС показана на рисунке 5.

В состав МПС входят: центральный процессор (ЦП), ПЗУ, ОЗУ, система прерываний, таймер, устройства ввода/вывода (УВВ).




Рисунок 5 – Обобщенная структурная схема МПС


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

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

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

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

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


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


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

Существуют два основных типа архитектуры — фон-неймановская и гар­вардская.

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

Гарвардская архитектура впервые была реализована в 1944 году в релейной вычислительной машине Гарвардского университета (США). Особенностью этой архитектуры является то, что память данных и память программ раз­делены и имеют отдельные шину данных и шину команд (рисунок 6, б), что позволяет повысить быстродействие МП системы. На базе гарвардской архитектуры построено большинство микроконтроллеров.

Структурные схемы обоих типов архитектур содержат: процессорный эле­мент, память, интерфейсы ввода/вывода (ИВВ) и УВВ.

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




Рисунок 6 – Основные типы архитектур: а -- фон-неймановская; б -- гарвардская


5.Анализ подключения внешней памяти


Внешняя память данных представляет собой одну или несколько самостоятельных микросхем памяти. Чаще всего используют статическую память с байтовой организацией объемом 2К*8 или 8К*8 бит (1К = 1024). Такие микросхемы; имеют 8 выводов данных (D0-D7), по которым осуществляется одно-временная запись в микросхему всех 8 бит в выбранную ячейку памяти или чтение 8 бит из этой ячейки. Далее, в таких микросхемах есть 11 или. 13 адресных входов (А0-А10 или А0-А12), комбинация сигналов на которых задает адрес ячейки, к которой мы обращаемся. Вход (Write Enable – Разрешение Записи) определяет характер обращения: если на нем установлена 1, то осуществляется чтение из выбранной ячейки; при WE = 0 в ячейку будет записана информация. Вход (Chip Enable - Разрешение Кристала) активизирует микросхему памяти — когда на ее входе СЕ установлена 1, она выключена, при СЕ = 0 она допускает запись в нее информации и чтение из нее записанных данных. Нулевой сигнал на входе (Output Enable – Разрешение Вывода) включает выходные буферы микросхемы памяти на пропускание информации по линиям данных D0-D7, единичный сигнал переводит эти линии в третье состояние, т. е. отключает находящиеся внутри микросхемы ячейки памяти от ее ножек. Описываемые микросхемы изображены на рисунке 7.



Рисунок 7 – Обозначение микросхем памяти


Работа с подобными микросхемами должна осуществляться следующим образом. Положим, мы хотим записать число 145D = 10010001В в ячейку с адресом 84D = 54Н = 1010100В. Для этого МК должен установить записываемое число на линиях данных D0-D7 микросхемы (D0=D4=D7=1, D1=D2-D3=D5=D6=0), а адрес ячейки — на адресных линиях (А2=А4=А6=1, А0=А1=АЗ=А5=0; А7, А8 и последующие старшие адреса вплоть до А10 для микросхем объемом 2К* 8 или до А12 для микросхем 8К*8 также должны быть установлены в 0). Установив адресную информацию и данные, МК одновременно с этим или чуть позже должен установить 0 на входе WE микросхемы (будет запись) и 0 на СЕ (знак того, что мы обращаемся именно к этой мик­росхеме). Как только после этого на входе ОЕ микросхемы памяти МК установит 0, осуществится запись числа 145 в ее 84-ю ячейку.

Соответственно, если мы хотим прочитать данные из все той же, к примеру, 84-й ячейки, мы должны, как и в предыдущем случае, ус­тановить адрес ячейки на адресных линиях, и одновременно с этим или чуть позже установить 1 на входе WE микросхемы (будет чте­ние) и 0 на СЕ (знак того, что мы обращаемся именно к этой микро­схеме). Как только после этого на входе ОЕ микросхемы памяти МК установит 0, осуществится чтение числа из выбранной ячейки, и оно появится на линиях данных D0-D7 микросхемы памяти. Сказанное поясняется временными диаграммами, приведенными на рисунке 8.



Рисунок 8 – Диаграммы чтения и замиси микросхем памяти


Пример подключения внешней памяти данных к микропроцессору Z80

У Z80 есть выводы трех так называемых шин — адреса, данных и управления.

Шестнадцать выводов Z80 (А0, Al, А2,..., А14 и А15) называются адресными выходами, их соединяют с адресными входами микросхем памяти. Совокупность линий, осуществляющих эти соединения, и есть шина адреса. Соответственно, шина данных, состоящая из 8 проводников, соединяет выводы данных микросхем памяти и микропроцессора (у него, как и у микросхем памяти, их тоже 8, и обозначаются они также— D0, D1,..., D7).

Из сигналов управления у Z80 нас интересуют только два – (Read - Чтение) и (Write - Запись). С их помощью, как показано на рисунке 9, осуществляется уп­равление памятью.



Рисунок 9   Подключение микросхем памяти к микропроцессору Z80


При обращении к памяти Z80 формирует на своих выводах А0-А15 адрес ячейки, к которой будет происходить обращение (за­пись или чтение). Как будет показано чуть ниже, соответствующая комбинация сигналов на А13-А15 сформирует при помощи дешифратора DD3 нулевой сигнал на входе СЕ той или иной мик­росхемы.

При записи на выводах данных D0-D7 процессора по­явится байт, который предстоит записать в память, и чуть-чуть позже его появления — нулевой сигнал на выходе WR (RD при этом останется в 1). Как нетрудно догадаться, микросхема DD2 в любом цикле обращения (как чтения, когда RD=0, так и записи, когда WR =0) сформирует нуль на входах ОЕ микросхем ОЗУ.

Соответственно при чтении выводы данных превращаются во входы, и на них процессор ничего не выводит, а после установки ад­реса он переводит в 0 сигнал RD (WR при этом остается в 1).

В каждой из микросхем памяти есть своя нулевая, первая, вторая и т. д. ячейки, вплоть до 2048-й. Обратите внимание, что входы СЕ микросхем со­единены с выходами дешифратора DD3, в частности СЕ DD4 — с DD3.15, а СЕ DD5 —- с DD3.14. На выходе DD3.15 нулевой сигнал возникнет в том случае, когда на своих трех старших адресных вы­ходах микропроцессор установит следующую комбинацию сигна­лов: А15=0, А14=0, А13=0. Соответственно, нуль на DD3.14 появит­ся, если А15=0, А14=0, А13=1. Следовательно, чтобы вести обмен с 84-й ячейкой микросхемы DD4, микропроцессор должен уста­новить на адресных выходах комбинацию А0=А1=0; А2=1; А3=0; А4=1; А5=0; А6=1; А7=А8=А9=А10=А13=А14=А15=0. Поскольку у DD4 отсутствуют входы А11 и А12, и эти адресные линии к ней не подводятся, то их состояние (нули или единицы) никак не ска­зывается на адресе выбираемой ячейки в этой микросхеме. Для оп­ределенности положим, что и они должны быть при обращении к DD4 нулевыми. Таким образом, в изображенной на рисунке 9 систе­ме к 84-й ячейке микросхемы DD4 микропроцессор обратится, установив на адресной шине 0000000001010100В=0054Н=84. Дру­гими словами, 84-я ячейка памяти нашей системы находится имен­но в DD4.

Для обращения к 84-ой ячейки DD5 процессор дол­жен установить на адресной шине 0010000001010100В=2054Н=8276. Иначе говоря, 84-я ячейка памяти микросхемы DD5 является 8276-й ячей­кой системы памяти.


Пример подключения внешней памяти данных к микрокронтроллеру семейства x51

Линии порта Р2 микроконтроллера при об­ращении к внешней памяти выводят адресные биты А8-А15. Далее, сигнал формируется на Р3.7, a — на Р3.6.

Линии порта Р0 представляют мультиплексированную во времени шину адреса/данных. Т.е. линии P0 исполь­зуются для ввода/вывода информации с шины данных. Но, кроме того, в первый момент обращения к памяти по этим же линиям выводятся адреса А0...А7, и одновременно с этим устанавливается в 1 сигнал на выходе ALE (адреса стробируются сигналом ALE). Спустя 2 периода тактового генератора ALE сбрасывается в 0, и через несколько наносекунд после этого адресная информация пропадает с линий порта Р0, давая возможность вести по ним обмен данными. А для того, чтобы использовать адреса А0-А7, применяют 8-разрядный регистр-защелку типа 555ИР22, информация в котором фиксируется по спаду сигнала на его входе STB. В качестве этого сиг­нала, как нетрудно догадаться, используется сигнал ALE (это основное его назначение). Сказанное иллюстрируется на рисунке 10.



Рисунок 10   Подключение микросхем памяти к микроконтроллеру семейства х51


Таким образом, работа МК с внешней памятью данных осуще­ствляется следующим образом. Прочитав команду обращения к внешней памяти, микроконтроллер вы­водит по линиям порта Р2 старшие 8 бит адреса, а по линиям Р0 — младшие. Одновременно с этим он устанавливает в 1 сигнал на вы­ходе ALE. Когда эта 1 поступает на вход STB регистра-защелки DD3, информация с его входов D0-D7 напрямую поступает на выходы Q0- Q7, соединенные с младшими 8 линиями шины адреса. Спустя неко­торое время ALE устанавливается в 0. Перепад из 1 в 0 на входе STB DD3 приводит к защелкиванию в регистрах выходов Q0-Q7 посту­пающей на них информации, и защелкнутые младшие 8 бит адреса остаются неизменными на выходах Q0-Q7 до следующего цикла об­мена с внешней памятью. Старшие 8 бит, выводимые через Р2, также не меняются до завершения текущего цикла работы с внешним ОЗУ.

Поскольку А0-А7 запомнены в регистре-защелке, они снимаются с выводов порта Р0, и последние превращаются в выводы шины дан­ных. Если МК записывает данные во внешнее ОЗУ, записываемый байт выводится им на Р0.0-Р0.7, и устанавливается в 0 сигнал на его выходе WR (РЗ.6). Появление же нулевых сигналов на входах WE и ОЕ, соответствующей микросхемы памяти приводит к записи в нее байта, поданного на ее входы D0-D7. Нулевой сигнал на ОЕ, формирует микро­схема DD2. Сказанное иллюстрируется временными диаграммами на рисунке 11.



Рисунок 11   Временные диаграммы циклов обмена МК с внешней памятью данных


В отличие от схе­мы на рисунке 9 в схеме на рисунке 10 отсутствует дешифратор, управляв­шийся адресами А13-А15. Вместо этого на входы СЕ микросхем па­мяти поданы сигналы с А13 и А14. Такое решение возможно, если вы точно знаете, что в вашей системе не будет использоваться более трех микросхем внешней памяти (дешифратор DD3 на рисунке 9 позволял работать с 8-ю микросхемами). При обращении к DD4 МК должен установить следующую комбинацию старших адресов: А13=0, А14=А15=1. Соответственно для DD5 А13= 1, А14=0, А15= 1. А какая комбинация потребовалась бы для 3-й микросхемы, если ее вход СЕ соединить с А15?

Процесс чтения информации микроконтроллером аналогичен только что рассмотренному процессу записи с той лишь разницей, что МК устанавливает в 0 не WR , a RD, и данные на шину данных поступают не с него, а с соответствующей микросхемы памяти.

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


Подключения внешней памяти программ к микрокронтроллеру семейства x51

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


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

  1. Назовите принципы построения МПС и охарактеризуйте их.
  2. Приведите типовую структуру МПС и объясните назначения функцио­нальных модулей.
  3. Объясните назначение входа управления третьим состоянием.
  4. Дайте определение архитектуры МП.
  5. Укажите различия между гарвардской и фон-неймановской архитектурами.



Темы для сообщений

  1. Типы корпусов микросхем.
  2. Арифметико-логическое устройство.
  3. Регистры общего назначения.
  4. Стек.