Главная » Просмотр файлов » Проектирование устройств сопряжения

Проектирование устройств сопряжения (1083567), страница 9

Файл №1083567 Проектирование устройств сопряжения (Книга Разработка устройств сопряжения по микропроцессорной технике) 9 страницаПроектирование устройств сопряжения (1083567) страница 92018-01-12СтудИзба
Просмтор этого файла доступен только зарегистрированным пользователям. Но у нас супер быстрая регистрация: достаточно только электронной почты!

Текст из файла (страница 9)

Рис. 2.15. Выработка внутренних стробов с помощью логических элементов.

Рис. 2.16. Использование микросхемы дешифратора для выработки внутренних стробов

Пусть, например, наше УС должно работать только в циклах записи по его адресам (или только в циклах чтения). При этом оба рассмотренных узла могут быть выполнены на одной микросхеме ППЗУ (рис. 2.17). Здесь к моменту прихода магистрального строба обмена ППЗУ уже успеет сформировать выходные сигналы (закончится время выборки адреса). Поэтому внутренние стробы обмена будут задержаны относительно магистральных стробов только на время выбора ППЗУ. Такой недостаток всех микросхем ППЗУ, как неопределенность выходных сигналов в течение некоторого времени после любого изменения адреса, здесь не сказывается на работе схемы. Однако не следует надеяться, что схема будет работать также нормально при подаче одного или обоих магистральных стробов обмена (-IOR и -IOW) на адресные входы ППЗУ.

Особо следует остановиться на организации 16-разрядного обмена и разделении пересылок старшего и младшего байтов. Здесь участвуют два сигнала магистрали, которые не используются при 8-битном обмене: -SBHE и -I/O CS 16 (или -MEM CS 16). При этом сигнал -SBHE должен обрабатываться УС только в случае необходимости как 16, так и 8-разрядного обмена (вспомним, что он определяет тип цикла обмена совместно с сигналом SAO в соответствии с таблицей 1.3). На рис 2.18 в качестве примера приведена схема формирователя внутренних стробов для 16-разрядного УС, работающего только в цикле записи 16-разрядного слова, старшего байта или младшего байта. Выходной строб формирователя STRO соответствует записи старшего байта или слова, а выходной строб STR1 — записи младшего байта или слова. Сигнал -I/O CS 16 вырабатывается при любом обращении к нашему УС, детектируемым селектором адреса. Отметим, что этот сигнал может формироваться и элементом с тремя состояниями, но в этом случае надо обеспечить активный нулевой уровень при селектировании адреса и высокоимпедансное состояние в противном случае (рис. 2.19). Это предотвратит конфликт на линии -I/O CS 16 сигналов от разных плат расширения.

Рис. 2.17. Объединение селектора адреса и формирователя внутренних стробов.

Рис. 2.18. Реализация 8 и 16-разрядной записи я 16-разрядное УС.

Рис. 2.19. Использование элемента с тремя состояниями для формирования сигнала - I/O CS 16.

2.1.4. Асинхронный обмен по ISA

Основным типом обмена по ISA является синхронный обмен, то есть обмен в темпе задатчика без учета быстродействия исполнителя. Однако возможен и асинхронный обмен, при котором "медленный" исполнитель приостанавливает работу задатчика на время выполнения им требуемой команды. В этом случае надо использовать сигнал I/O CH RDY, снятие которого (установка в состояние логического нуля) говорит о неготовности исполнителя к окончанию цикла обмена. Как уже отмечалось, приостановка производится на целое число периодов SYSCLK и не может быть дольше системного времени ожидания 15,6 мкс (для некоторых компьютеров — 2,5 мкс).

Рассмотрим некоторые аппаратурные решения для асинхронного обмена. Прежде всего здесь можно выделить две ситуации: когда существует внутренний сигнал УС, говорящий об окончании выполнения функции записи или чтения, и когда такого сигнала нет. В качестве этого сигнала (обозначим его DK) может выступать, например, сигнал окончания преобразования (готовности данных) АЦП, входящего в состав УС. На рис. 2.20 приведена структура УС с сигналом DK. DK может быть потенциальным (то есть сниматься после окончания стробов обмена) или импульсным (то есть окончанию выполнения функции соответствует фронт сигнала DK). Временные диаграммы и схемы для этих двух случаев показаны на рис. 2.21 и 2.22 (для упрощения считаем, что строб обмена — единственный).

Рис. 2.20. Структура УС, использующая асинхронный обмен.

Рис. 2.21. Реализация асинхронного обмена при потенциальном DK (уровень логического нуля).

Если сигнал DK отсутствует в явном виде, но известно время выполнения функции или его верхний предел, то необходимо сформировать задержку в самой интерфейсной части. В схеме на рис. 2.23 слева эта задержка определяется временем выдержки одновибратора. Надо отметить, что при проектировании УС одним из показателей мастерства разработчика является количество использованных им одновибраторов или RC-цепочек (естественно, эти величины обратно пропорциональны друг другу). Это связано с тем, что любые аналоговые цепи подвержены действию помех и требуют настройки. Поэтому, если есть возможность, то надо формировать задержки, временные сдвиги, интервалы с помощью магистральных тактовых сигналов SYSCLK и OSC или внутренних тактов УС. На рис. 2.23 справа приведена схема с использованием линии задержки на сдвиговом регистре, задержка которой определяется номером замкнутого переключателя и задается с точностью до периода сигнала SYSCLK Но, в принципе, в данном случае требования к точности времени задержки невысоки, и использование одновибратора и даже простой RC-цепочки вполне допустимо.

Рис. 2.22. Реализация асинхронного обмена при импульсном DK (положительный фронт).

Рис. 2.23. Формирование задержки с помощью одновибратора и линии задержки.

И в завершение рассматриваемой темы отметим, что асинхронный режим обмена по ISA можно реализовать и на более высоком уровне: путем опроса задатчиком флага готовности исполнителя и путем использования прерываний. Эти решения удобны в случае очень медленных УС, то есть тех, время исполнения функции которыми превышает предельное системное время задержки.

А теперь попробуем изобразить обобщенную структурную схему интерфейсной части УС, включающей в себя все рассмотренные узлы (рис. 2.24). Здесь использованы входные буфера (не обязательны), двунаправленный буфер данных (в общем случае должен быть разделен на два для каждого байта), выходной буфер, селектор адреса, формирователь внутренних стробов и формирователь сигнала асинхронного обмена I/O СН RDY (DK).

Какими могут быть предельные значения времен задержек всех узлов интерфейсной части? Здесь надо рассмотреть две ситуации. Если наше УС работает только в режиме записи в него информации, то желательно, чтобы задержка сигнала STR относительно сигнала -IOW и задержки сигналов данных были примерно одинаковыми. Ни в коем случае задержка сигнала STR не должна превышать задержку данных более чем на 30 нс, иначе УС примет неверные данные (см. рис. 1.З.). Разность задержки буферирования и селектирования адреса и задержки буферирования сигнала -IOW не должна превышать 91 нс, иначе УС не будет реагировать на свой адрес. Если наше УС работает только в режиме чтения из него информации, то сумма задержки сигнала STR относительно сигнала -IOR и задержки буфера данных не должна превышать 110 нс, иначе процессор примет неправильные данные от УС. Требования к буферу адреса и селектору адреса те же. Если же наше УС должно работать как в режиме чтения, так и в режиме записи, то оно должно удовлетворять всем перечисленным требованиям.

Рис. 2.24. Обобщенная структурная схема интерфейсной части УС.

2.1.5. Особенности использования прерываний

Аппаратные прерывания, как известно, применяются для информирования исполнителем задатчика о готовности к обмену в случае, когда нежелательно организовывать программный опрос флага готовности. Часто можно услышать мнение, что использование прерываний увеличивает быстродействие компьютера. Здесь надо четко понимать, о чем идет речь. Да, в случае применения прерываний процессор освобождается от опроса УС и может заниматься вместо этого другими задачами. Если необходимость в обмене возникает достаточно редко, то выигрыш в быстродействии всей системы в целом может быть довольно значительным. Однако использование прерываний ни в коем случае не увеличивает скорости обмена с УС, наоборот, уменьшает ее. Это связано с тем, что реакция на прерывание гораздо медленнее, чем на выставление флага готовности, ведь, чтобы обслужить прерывание, процессор должен завершить текущий цикл, сохранить в стеке текущие значения своих регистров и только потом перейти на программу обработки прерывания. Поэтому в том случае, когда надо обеспечить максимальную скорость реакции на внешнее событие, гораздо лучше использовать опрос флага готовности. Точно так же надо поступать и при достаточно частом возникновении необходимости в обмене, ведь помимо временных затрат на переход к обработке прерывания требуется также время на инициализацию контроллера прерываний, входящего в состав компьютера.

Так что перед тем, как заложить в схему проектируемого УС использование прерываний, стоит хорошенько подумать. Часто имеет смысл продублировать прерывание флагом готовности, что позволит при написании программы, обслуживающей УС, более гибко учитывать особенности обмена с данным УС.

Как уже отмечалось, все прерывания в IBM PC AT — радиальные, то есть для перевода процессора в режим обработки прерывания достаточно послать запрос, в качестве которого выступает положительный фронт сигнала на одной из линий IRQ. Однако из этого совсем не следует, что на эту линию можно подать сколь угодно короткий импульс положительной полярности, так как никакой гарантии, что этот импульс дойдет до контроллера прерываний, будет им обработан и вызовет нужную реакцию, при этом не существует.

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

Пусть, например, наше УС принимает данные от внешнего устройства и после их приема нам надо сформировать прерывание, обработка которого сводится только к чтению данных из УС. Схема для этого случая показана на рис. 2.25. Здесь READY — сигнал поступления данных и готовности к выдаче их процессору. По этому сигналу триггер устанавливается в единицу, и его выход используется как сигнал запроса прерывания. Номер используемой линии IRQ выбирается одним из четырех переключателей (такой выбор в том или ином виде необходим, так как свободных линий IRQ в стандартной конфигурации не так уж много). В исходное состояние триггер сбрасывается стробом чтения данных, вырабатываемым при выполнении программы обработки прерывания. Инверсный выход триггера используется как флаг готовности, который программно опрашивается процессором с помощью сигнала -STR2.

Рис. 2.25. Реализация прерывания.

Иногда имеет смысл предусмотреть в схеме УС возможность запрещения прерывания от него, хотя это можно сделать и путем маскирования данного прерывания в контроллере прерываний (программным путем).

Характеристики

Тип файла
Документ
Размер
1,13 Mb
Тип материала
Высшее учебное заведение

Список файлов книги

Книга Разработка устройств сопряжения по микропроцессорной технике
Свежие статьи
Популярно сейчас
А знаете ли Вы, что из года в год задания практически не меняются? Математика, преподаваемая в учебных заведениях, никак не менялась минимум 30 лет. Найдите нужный учебный материал на СтудИзбе!
Ответы на популярные вопросы
Да! Наши авторы собирают и выкладывают те работы, которые сдаются в Вашем учебном заведении ежегодно и уже проверены преподавателями.
Да! У нас любой человек может выложить любую учебную работу и зарабатывать на её продажах! Но каждый учебный материал публикуется только после тщательной проверки администрацией.
Вернём деньги! А если быть более точными, то автору даётся немного времени на исправление, а если не исправит или выйдет время, то вернём деньги в полном объёме!
Да! На равне с готовыми студенческими работами у нас продаются услуги. Цены на услуги видны сразу, то есть Вам нужно только указать параметры и сразу можно оплачивать.
Отзывы студентов
Ставлю 10/10
Все нравится, очень удобный сайт, помогает в учебе. Кроме этого, можно заработать самому, выставляя готовые учебные материалы на продажу здесь. Рейтинги и отзывы на преподавателей очень помогают сориентироваться в начале нового семестра. Спасибо за такую функцию. Ставлю максимальную оценку.
Лучшая платформа для успешной сдачи сессии
Познакомился со СтудИзбой благодаря своему другу, очень нравится интерфейс, количество доступных файлов, цена, в общем, все прекрасно. Даже сам продаю какие-то свои работы.
Студизба ван лав ❤
Очень офигенный сайт для студентов. Много полезных учебных материалов. Пользуюсь студизбой с октября 2021 года. Серьёзных нареканий нет. Хотелось бы, что бы ввели подписочную модель и сделали материалы дешевле 300 рублей в рамках подписки бесплатными.
Отличный сайт
Лично меня всё устраивает - и покупка, и продажа; и цены, и возможность предпросмотра куска файла, и обилие бесплатных файлов (в подборках по авторам, читай, ВУЗам и факультетам). Есть определённые баги, но всё решаемо, да и администраторы реагируют в течение суток.
Маленький отзыв о большом помощнике!
Студизба спасает в те моменты, когда сроки горят, а работ накопилось достаточно. Довольно удобный сайт с простой навигацией и огромным количеством материалов.
Студ. Изба как крупнейший сборник работ для студентов
Тут дофига бывает всего полезного. Печально, что бывают предметы по которым даже одного бесплатного решения нет, но это скорее вопрос к студентам. В остальном всё здорово.
Спасательный островок
Если уже не успеваешь разобраться или застрял на каком-то задание поможет тебе быстро и недорого решить твою проблему.
Всё и так отлично
Всё очень удобно. Особенно круто, что есть система бонусов и можно выводить остатки денег. Очень много качественных бесплатных файлов.
Отзыв о системе "Студизба"
Отличная платформа для распространения работ, востребованных студентами. Хорошо налаженная и качественная работа сайта, огромная база заданий и аудитория.
Отличный помощник
Отличный сайт с кучей полезных файлов, позволяющий найти много методичек / учебников / отзывов о вузах и преподователях.
Отлично помогает студентам в любой момент для решения трудных и незамедлительных задач
Хотелось бы больше конкретной информации о преподавателях. А так в принципе хороший сайт, всегда им пользуюсь и ни разу не было желания прекратить. Хороший сайт для помощи студентам, удобный и приятный интерфейс. Из недостатков можно выделить только отсутствия небольшого количества файлов.
Спасибо за шикарный сайт
Великолепный сайт на котором студент за не большие деньги может найти помощь с дз, проектами курсовыми, лабораторными, а также узнать отзывы на преподавателей и бесплатно скачать пособия.
Популярные преподаватели
Добавляйте материалы
и зарабатывайте!
Продажи идут автоматически
6447
Авторов
на СтудИзбе
305
Средний доход
с одного платного файла
Обучение Подробнее