logo
Микропрограммный автомат на постоянном запоминающем устройстве для кодирования манчестерского кода

2 СТРУКТУРНАЯ СХЕМА УСТРОЙСТВА

Структурная схема разрабатываемого устройства представлена на рисунке 2.1.

Рисунок 2.1 - Структура кодировщика манчестерского кода

Генератор тактового сигнала представляет собой устройство, генерирующее управляющий сигнал (CLK), который определяет момент выполнения элементом или узлом его функции. Пример реализации тактового генератора с использованием двух инверторов (в нестандартном включении) представлен на рисунке 2.2.

Рисунок 2.2 - Пример реализации тактового генератора на инверторах

Период тактового сигнала на выходе генератора определяется постоянной времени RC-цепочки, равной произведению сопротивления одного из резисторов () на емкость конденсатора . Так как необходимо, чтобы устройство работало на частоте 1 Гц, то емкость конденсатора , например, может быть равна 2мФ, а значения сопротивлений резисторов R1 и R2 по 500 Ом. В данном устройстве тактовый генератор в основном используется для синхронизации работы микропрограммного автомата, который собственно и выполняет кодирование входного кода.

Устройства ввода представляют собой набор DIP-переключателей ВДМ1-8, при помощи которых формируется передающийся восьмиразрядный код и тактильную кнопку ТС-0403, которая запускает цикл передачи устройством одного байта информации. После завершения передачи данных устройство переходит в состояние ожидания инициализации следующего цикла передачи данных (следующего нажатия тактильной кнопки).

Блок стробирования передающегося кода представляет собой параллельный регистр К555ИР27, срабатывающий по фронту. По нажатию тактильной кнопки код с DIP-переключателей защелкивается в регистр. Таким образом, есть возможность формировать следующий байт информации на входе устройства, еще до завершения передачи текущего байта информации.

Манчестерское кодирование (Подраздел 1.5) подразумевает представление входного (передающегося) кода в последовательном виде. Для выполнения этой функции предназначен блок преобразования параллельного кода в последовательный, который реализован в виде восьмиканального мультиплексора К155КП7. Управление работой мультиплексора (выбор номера канала) осуществляется с помощью входного кода адреса. Входной код адреса формирует микропрограммный автомат (последний выполняет перебор адресов мультиплексора от 0 до 7).

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

Рисунок 2.3 - Микропрограммный автомат для кодирования Манчестер-II

Как видно из рисунка 2.3 регистр, входящий в состав микропрограммного автомата стробирует данные по положительному фронту сигнала CLK. Таким образом, сигнал CLK управляет работой микропрограммного автомата (если CLK не изменяется во времени, то автомат находится в ждущем состоянии). Когда цикл передачи данных завершен, автомат взводит флаг STOP (активный уровень "0").

Для управления работой автомата (Рисунок 2.3) разработан блок управления микропрограммным автоматом (Рисунок 2.4), который управляет прохождением сигнала CLK с его входа на выход (при подаче на вход сигнала START сигнал CLK проходит на выход; при подаче STOP - на выходе "0").

Рисунок 2.4 - Блок управления микропрограммным автоматом

Микропрограмма, выполняющая кодирование входного сигнала в манчестерский код и управление мультиплексором представлена в таблице 2.2. Микропрограмма, представленная в таблице 2.2 достаточно проста, потому подробно рассматриваться не будет.

Таблица 2.2 - Микропрограмма кодировщика манчестерского кода

Адрес ПЗУ

Данные ПЗУ

Комментарий

4

3

2

1

0

7

6

5

4

3

2

1

0

Вх.

Адрес

MS

Вых.

Сл. адрес

0

0

0

0

0

0

0

0

0

0

0

0

1

Кодирование SYNC бита

0

0

0

0

1

0

0

1

1

0

0

1

0

0

0

0

1

0

0

0

1

0

0

0

1

1

Кодирование 1-ого ("0") разряда входного кода

0

0

0

1

1

0

1

0

1

0

1

0

0

0

0

1

0

0

0

1

0

0

0

1

0

1

Кодирование 2-ого ("0") разряда входного кода

0

0

1

0

1

0

1

1

1

0

1

1

0

0

0

1

1

0

0

1

1

0

0

1

1

1

Кодирование 3-его ("0") разряда входного кода

0

0

1

1

1

1

0

0

1

1

0

0

0

0

1

0

0

0

1

0

0

0

1

0

0

1

Кодирование 4-ого ("0") разряда входного кода

0

1

0

0

1

1

0

1

1

1

0

1

0

0

1

0

1

0

1

0

1

0

1

0

1

1

Кодирование 5-ого ("0") разряда входного кода

0

1

0

1

1

1

1

0

1

1

1

0

0

0

1

1

0

0

1

1

0

0

1

1

0

1

Кодирование 6-ого ("0") разряда входного кода

0

1

1

0

1

1

1

1

1

1

1

1

0

0

1

1

1

0

1

1

1

0

1

1

1

1

Кодирование 7-ого ("0") разряда входного кода

0

1

1

1

1

0

0

0

1

0

0

0

0

1

0

0

0

0

0

0

0

1

0

0

0

1

Кодирование SYNC бита (исключено протоколом)

1

0

0

0

1

0

0

1

0

0

0

1

0

1

0

0

1

0

0

0

1

1

0

0

1

1

Кодирование 1-ого ("1") разряда входного кода

1

0

0

1

1

0

1

0

0

0

1

0

0

1

0

1

0

0

0

1

0

1

0

1

0

1

Кодирование 2-ого ("1") разряда входного кода

1

0

1

0

1

0

1

1

0

0

1

1

0

1

0

1

1

0

0

1

1

1

0

1

1

1

Кодирование 3-его ("1") разряда входного кода

1

0

1

1

1

1

0

0

0

1

0

0

0

1

1

0

0

0

1

0

0

1

1

0

0

1

Кодирование 4-ого ("1") разряда входного кода

1

1

0

0

1

1

0

1

0

1

0

1

0

1

1

0

1

0

1

0

1

1

1

0

1

1

Кодирование 5-ого ("1") разряда входного кода

1

1

0

1

1

1

1

0

0

1

1

0

0

1

1

1

0

0

1

1

0

1

1

1

0

1

Кодирование 6-ого ("1") разряда входного кода

1

1

1

0

1

1

1

1

0

1

1

1

0

1

1

1

1

0

1

1

1

1

1

1

1

1

Кодирование 7-ого ("1") разряда входного кода

1

1

1

1

1

0

0

0

0

0

0

0

0

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

В качестве устройства вывода используется светоизлучающий диод АЛ307Г-М.

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