Контроллер передачи асинхронного последовательного интерфейса
Назначение и состав
Аппаратная реализация регистров: D- и RS-триггеры
Буферный регистр
A1и Сдвиговый регистр построены на базе D-триггеров. Они вдвигают и сохраняют биты строго в моменты поступления синхроимпульсов (тактов ТГ) на входC. Регистр состоянияA2— это RS-триггер, меняющий состояние по сигналамSetиReset. Подробнее: RS- и D-Триггеры.
Контроллер предназначен для передачи данных процессора по одной линии связи без использования синхроимпульсов. Данные оборачиваются в асинхронный кадр (добавляются стартовый и стоповые биты).
В состав контроллера входят:
- Буферный регистр А1 и триггер состояния А2 — стандартный интерфейс связи с процессором.
- Сдвиговый регистр — увеличенной длины (вмещает 8 бит данных + 1 стартовый
0+ 2 стоповых1). - Тактовый генератор (ТГ) и Делитель на 16 — обеспечивают нужную частоту сдвига.
- Счётчик по модулю 10 — отсчитывает количество переданных бит кадра.
Алгоритм работы (передача)
- Инициализация: Когда контроллер свободен, регистр
А2 = 0. На линии «Данные» удерживается логическая1(режим простоя). Делитель на 16 и счётчик по модулю 10 сброшены. - Загрузка данных: Процессор записывает передаваемый байт в регистр
A1и подает команду “Вывод”. Логика управления устанавливаетA2 = 1(контроллер занят). - Формирование кадра: Байт из
A1параллельно переписывается в Сдвиговый регистр. Аппаратно к нему приклеиваются стартовый бит (0в нулевой разряд) и стоповые биты (1в старшие разряды). - Передача битов: Снимается блокировка с делителя частоты. ТГ начинает работу. Каждые 16 тактов ТГ делитель выдаёт импульс сдвига. Сдвиговый регистр выталкивает биты в линию «Данные», начиная со стартового.
- Завершение: С каждым сдвигом Счётчик по модулю 10 увеличивается. Как только он отсчитает 10 битов (весь кадр отправлен), он выдаёт сигнал, который сбрасывает регистр
А2обратно в0. Процессор понимает, что передача завершена, и может писать следующий байт.
Рис. 1: Контроллер передачи асинхронного последовательного интерфейса