Асинхронные последовательные интерфейсы.



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

Простейший контроллер для асинхронной передачи данных и ВУ по по-следовательной линии связи представлен на рис. 8.10. Он предназначен для передачи данных в формате с двумя стоповыми битами.

После передачи очередного байта данных в регистр состояния А2 за-писывается 1. Единичный выходной сигнал регистра Л2информирует процес сор о готовности контроллера к приему следующего байта данных и пере-даче его по линии связи в ВУ. Этот же сигнал запрещает формировани импульсов со схемы выработки импульсов сдвига — делителя частоты сиг-налов тактового генератора на 16. Счетчик импульсов сдвига (счетчик nmod 10) находится в нулевом состоянии, и его единичный выходной сигнал поступает на вентильИ, подготавливая цепь выработки сигнала загрузи сдвигового регистра.

Процесс передачи байта данных начинается с того, что процессор, выпол-няя команду «Вывод» (см. пример 8.1), выставляет этот байт на шине дан-ных. Одновременно процессор формирует управляющий сигнал системного интерфейса «Вывод», по которому производятся запись передаваемого байта в буферный регистр Л1, сброс регистра состояния А2 и формирование на вентилеИсигнала «Загрузка». Передаваемый байт переписывается разряды 1, ... , 8 сдвигового регистра, в нулевой разряд сдвигового регистр записывается 0 (стартовый бит), а в разряды 9 и 10 — 1 (стоповые биты) Кроме того, снимается сигнал «Сброс» с делителя частоты, он начинает на-капливать импульсы генератора тактовой частоты и в момент приема шест-надцатого тактового импульса вырабатывает импульс сдвига.

На выходной линии контроллера «Данные» поддерживается состоя-ние 0 (значение стартового бита) до тех пор, пока не будет выработан первый импульс сдвига. Импульс сдвига изменит состояние счетчика импульсов сдвига и перепишет в нулевой разряд сдвигового регистра первый инфор-мационный бит передаваемого байта данных. Состояние, соответствующее значению этого бита, будет поддерживаться на линии «Данные» до следую­щего импульса сдвига.

Аналогично будут переданы остальные информационные биты, первый стоповый бит и, наконец, второй столовый бит, при передаче которого счет­чик импульсов сдвига снова установится в нулевое состояние. Это приведет к записи 1 в регистр состояния А2. Единичный сигнал с выхода регистра А2запретит формирование импульсов сдвига, а также информирует процессор о готовности к приему нового байта данных. После завершения передачи очередного кадра (стартового бита, информационного байта и двух стопо-вых битов) контроллер поддерживает в линии связи уровень логической единины (значение второго стопового бита).

Уровень логической единицы поступает по линии «Данные» в контрол­лер тля асинхронного приема данных (рис. 8.11). Этот уровень создает ус­ловия для выработки сигнала, запрещающего работу делителя частоты ге­нератора тактовых импульсов. Действительно, после приема предыдущего байта данных счетчик импульсов сдвига (счетчик по тог] 9) находится в ну­левом состоянии и на вентильИпоступают два единичных сигнала: со счет­чика сдвшов и из линии «Данные». На выходе вентиляИвырабатывается сигнал сброса делителя частоты сигналов тактового генератора, запрещаю­щий формирование импульсов сдвига.

 


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

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

содержимое сдвигового регистра перепишется в буферный регистр;

в регистр состояния А2запишется 1 и он будет информировать процессор об окончании приема очередного байта;

вентильИподготовится к выработке сигнала «Сброс» (этот сигнал сформируется после прихода первого стопового бита).

Получив сигнал готовности (1 в регистре А2), процессор выполнит ко­манду «Ввод» (см. пример 8.2). При этом вырабатывается управляющий сигнал системного интерфейса «Ввод», по которому производятся пересылка принятого байта данных из буферного регистра в процессор (сигнал «Чте­ние») и сброс регистра состояния А2.

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

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

В современных микроЭВМ применяют, как правило, универсальные контроллеры для последовательного обмена, т. е. обеспечивающие как синхронный, так и асинхронный режим обмена данными с ВУ. Примером такого контроллера может служить «Устройство последовательного обмена из состава модулей микроЭВМ типа «Электроника-60». Большое распростра-нение получили и БИС универсальные приемопередатчики для последова-тельного обмена данными. Типичным примером такой БИС появляется БИС КР580ВВ51

 


Дата добавления: 2022-01-22; просмотров: 20; Мы поможем в написании вашей работы!

Поделиться с друзьями:






Мы поможем в написании ваших работ!