Студопедия — Параллельный обмен
Студопедия Главная Случайная страница Обратная связь

Разделы: Автомобили Астрономия Биология География Дом и сад Другие языки Другое Информатика История Культура Литература Логика Математика Медицина Металлургия Механика Образование Охрана труда Педагогика Политика Право Психология Религия Риторика Социология Спорт Строительство Технология Туризм Физика Философия Финансы Химия Черчение Экология Экономика Электроника

Параллельный обмен






Простейшая подсистема параллельного обмена должна обеспечить лишь дешифрацию адреса ВУ и электрическое подключение данных ВУ к системной шине данных DB по соответствующим управляющим сигналам. На рис. 6.7 показаны устройства параллельного ввода и вывода информации в составе МПС на базе буферных регистров К580ИР82.

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

(Страница161)

Рис 6.7. Параллельный обмен на базе буферных регистров

Аналогично идет обращение к устройству вывода. Совпадение адреса устройства на шине адреса с активным уровнем сигнала WRIO обеспечивает "защелкивание" состояния шины данных в регистре вывода.

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

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

Типичным примером такой БИС может служить программируемый контроллер параллельного обмена (далее "контроллер") 8255А (отечественный аналог — К580ВВ55).

Контроллер параллельного обмена К580ВВ55 [13] представляет собой трех-канальный байтовый интерфейс и позволяет организовать обмен байтами с периферийным оборудованием в различных режимах. Он включает в себя три 8-разрядные канала ввода/вывода A, B и C, буфер шины данных, 8-разрядный регистр управления Y и блок управления.

Подключение контроллера к системной шине показано на рис. 6.8. Каналы адресуются двумя линиями адреса А1, А0. В МПС контроллер размещают, как правило, в пространстве адресов ввода/вывода. Поэтому в качестве стробов чтения и записи используются сигналы RDI0, WRI0, для селекции контроллера по CS дешифрируются старшие разряды адреса, а для выбора адресуемого объекта внутри контроллера — два младших.

Рис. 6.8. Подключение контроллера 8255 к системной шине

Каналы контроллера программируются для работы в одном из трех режимов:

□режим "0" — синхронный однонаправленный ввод/вывод;

□режим "1" — асинхронный однонаправленный ввод/вывод;

□ режим "2" — асинхронный двунаправленный ввод/вывод.

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

В режиме "0" контроллер может работать как четыре порта ввода/вывода: А[7: 0]. В[7: 0], С[7: 4], С[3: 0], причем каждый порт может быть независимо запрограммирован на ввод или на вывод. При этом к порту, определенному как выходной, нельзя обращаться по чтению, а на входной порт нельзя выводить информацию.

В асинхронном однонаправленном режиме "1" могут работать только каналы A и B, причем соответствующие линии канала C придаются каналам A и B для передачи управляющих сигналов. Как и в режиме "0", каналы A и B программируются на ввод или вывод (независимо).

В режиме "2" может работать только канал A, к которому в этом случае можно обращаться как по записи, так и по чтению (двунаправленный асинхронный обмен). При этом канал B может быть запрограммирован как на работу в режиме "1", так и в режиме "0".

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

Линии канала C могут работать только в режиме "0", причем независимо можно запрограммировать направление передачи старшей и младшей тетрады канала С. Если для каналов A и/или B выбраны режимы "2" и/или "1", то соответствующие линии канала C перестают работать в режиме "0" и используются для передачи управляющих сигналов. Линии канала C, которые не используются при выбранной комбинации режимов каналов A и B, можно использовать как линии ввода или вывода канала C, работающего в "0"-режиме. Кроме того, всегда имеется возможность программного сброса/установки произвольного разряда канала С.

Режим "0" является синхронным и во многом напоминает рассмотренный выше механизм обмена с использованием регистров. Рассмотрим подробнее процесс асинхронного обмена в режиме "1".

Режим "1" обеспечивает однонаправленную асинхронную передачу информации между процессором и ВУ. При этом каналы A и B используются как регистры данных, а канал C — для приема и формирования управляющих сигналов, сопровождающих асинхронный обмен, причем каждый разряд канала C имеет строго определенное функциональное назначение [13].

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

Для обеспечения синхронизации ввода в режиме "1" каналу придаются три линии канала C для передачи управляющих сигналов:

□ STB (строб записи) — сигнал, формируемый ВУ для записи очередного байта данных в регистр канала:

□ IBF (подтверждение приема) — сигнал, формируемый контроллером для ВУ в тот момент, когда процессор прочитал содержимое регистра канала. Пока сигнал IBF неактивен, ВУ запрещается вырабатывать новый строб записи;

□ INT (запрос прерывания) — вырабатывается контроллером для процессора после того, как очередной байт данных запишется в регистр канала. Это же событие устанавливает флаг готовности канала в разряде регистра С.

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

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

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

Аналогично реализуется и асинхронный режим вывода. Каналу, запрограммированному на вывод в режиме "1", придаются три линии управления канала C:

□OBF (выходной буфер заполнен) — сигнал формируется контроллером для ВУ после того, как процессор записал в регистр канала новую порцию информации;

□ АСК (подтверждение записи) — сигнал от ВУ контроллеру, подтверждающий прием очередного байта;

□ INT (запрос прерывания) — запрос прерывания от контроллера процессору для выдачи процессором в канал следующего байта информации.

Процедуры ввода и вывода в режиме "2" осуществляются аналогично соответствующим процедурам в режиме "1".







Дата добавления: 2015-04-16; просмотров: 729. Нарушение авторских прав; Мы поможем в написании вашей работы!



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

Расчетные и графические задания Равновесный объем - это объем, определяемый равенством спроса и предложения...

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

Обзор компонентов Multisim Компоненты – это основа любой схемы, это все элементы, из которых она состоит. Multisim оперирует с двумя категориями...

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

Особенности массовой коммуникации Развитие средств связи и информации привело к возникновению явления массовой коммуникации...

Тема: Изучение приспособленности организмов к среде обитания Цель:выяснить механизм образования приспособлений к среде обитания и их относительный характер, сделать вывод о том, что приспособленность – результат действия естественного отбора...

Травматическая окклюзия и ее клинические признаки При пародонтите и парадонтозе резистентность тканей пародонта падает...

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

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

Studopedia.info - Студопедия - 2014-2024 год . (0.007 сек.) русская версия | украинская версия