Файл: Конспект лекций (дополительный обновленный).doc

ВУЗ: Не указан

Категория: Не указан

Дисциплина: Не указана

Добавлен: 22.01.2025

Просмотров: 947

Скачиваний: 1

ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.

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

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

Рис.12.2. Пример структурной схемы микропроцессорной системы с распределенными шинами.

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


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


12.2.3. Организация ввода-вывода в микропроцессорной системе.

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

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

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


Переход к обработке запроса прерывания осуществляется по сигналу запроса прерывания INTот внешнего устройства (рис.12.1) по мере готовности на его выходе данных к передаче или по мере потребности получения им данных от микропроцессора. В микропроцессорной системе может быть подключено несколько внешних устройств по прерываниям (по линиямIRQ0…IRQn). Поэтому внешнее устройство должно сообщить не только о факте прерывания, но и свой номер, чтобы микропроцессор знал, какую именно обрабатывающую подпрограмму запускать. Для этих целей в микропроцессорных комплектах микросхем имеются обычно специальные микросхемы, называемыеконтроллерами прерываний. Контроллер прерывания воспринимает хотя бы одно прерывание с линийIRQ0…IRQnи формирует сигнал запроса прерыванияINTна шину управления микропроцессора. Далее он должен в виде двоичного кода сформировать на шину данных микропроцессора команду запроса прерывания, где определенные биты этого кода будут указывать на номер устройства, запросившего прерывание. Поскольку сигнал запроса прерывания может поступить в любое время, даже когда микропроцессор выполняет очередную команду программы и его шина данных занята, то анализ этого сигнала микропроцессором должен выполниться только после завершения текущей выполняемой команды. Поэтому контроллер прерывания должен дождаться от микропроцессора подтверждения прерывания в виде сигналаINTA, и только после этого выставить на шину данных код команды прерывания.

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

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


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

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