Простые циклы обмена по магистрали. схема соединения портов ввода/вывода с магистралью. временные диаграммы процесса ввода/вывода данных с помощью простых циклов

простые циклы обмена по магистрали. схема соединения портов ввода/вывода с магистралью. временные диаграммы процесса ввода/вывода данных с помощью простых циклов - student2.ru Устройства ввода/вывода обмениваются информацией с магистралью по тем же принципам, что и память. Наиболее существенное отличие с точки зрения организации обмена состоит в том, что модуль памяти имеет в адресном пространстве системы много адресов (до нескольких десятков миллионов), а устройство ввода/вывода обычно имеет немного адресов (обычно до десяти), а иногда и всего один адрес.

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

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

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

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

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

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

В составе микропроцессорных систем, как правило, выделяются три специальные группы устройств ввода/вывода:

• устройства интерфейса пользователя (ввода информации пользователем и вывода информации для пользователя);

• устройства ввода/вывода для длительного хранения информации;

• таймерные устройства.

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

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

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

Иногда устройства ввода/вывода обеспечивают сопряжение с внешними устройствами с помощью аналоговых сигналов. Это бывает очень удобно, поэтому в состав некоторых микроконтроллеров даже вводят внутренние ЦАП и АЦП.

Рис. 8.2.Временные диаграммы циклов программного обмена с устройствами ввода/вывода (все интервалы в наносекундах).

СОВМЕЩЕНИЕ АДРЕСНОЙ ШИНЫ И ШИНЫ ДАННЫХ. ВРЕМЕННЫЕ ДИАГРАММЫ РАБОТЫ МПС С СОВМЕЩЕННОЙ ШИНОЙ АДРЕСА И ДАННЫХ. МЕХАНИЗМ КОНВЕЙЕРНОГО ФОРМИРОВАНИЯ АДРЕСА (МКФА). СТРУКТУРНАЯ СХЕМА РЕАЛИЗАЦИИ МКФА И ЕЁ ВРЕМЕННАЯ ДИАГРАММА РАБОТЫ.

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

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

Рис. 2 - Интерфейс с общей шиной

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

Временные диаграммы работы МПС с совмещенной шиной адреса и данных.простые циклы обмена по магистрали. схема соединения портов ввода/вывода с магистралью. временные диаграммы процесса ввода/вывода данных с помощью простых циклов - student2.ru

Конвейерная обработка операций, Асинхронная организация конвееров

Конвейерная обработка операций

Цикл выполнения команд разделяют на 2 этапа:

1) Выборка команды и ее операндов.

2) Ввыполнение операции в АЛУ (реализация команд).

ВК – выборка команды

РК – реализация команды

простые циклы обмена по магистрали. схема соединения портов ввода/вывода с магистралью. временные диаграммы процесса ввода/вывода данных с помощью простых циклов - student2.ru Сам процесс выполнения команды можно разделить на следующие этапы:

1) Выборка команды и дешифрация по группам операций.

2) Формирование исполнительных адресов операндов.

3) Выборка операндов.

4) Реализация операции.

5) Посылка результата.

При простейшем способе организации ЦП время выполнения команды = t1 + t2 + t3 + t4 + t5 – сумма выполнения времени каждой команды.

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

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

tк = max(t1,t2,t3,t4,t5)

Если все этапы равны по времени, то время выполнения команды сокращается в n раз, где n – это количество блоков конвейера.

Асинхронная организация конвейеров

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

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

Запуск блока осуществляется при совпадении 2х условий:

1) Блок свободен от выполнения предыдущей работы.

2) На входе блока есть данные для обработки.

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


Наши рекомендации