- •«Устройство для преобразования кода»
- •Содержание
- •Введение
- •Задание на курсовой проект
- •Структурная схема устройства для помехоустойчивого кодирования
- •Проектирование crc-кодера
- •Проектирование устройства формирования пускового импульса
- •Проектирование устройства деления частоты
- •Проектирование устройства управления
- •Проектирование сдвигового регистра
- •Проектирование дешифратора для управления 7-сегментным индикатором
- •Размещение проекта на кристалле
- •Назначение контактов микросхемы epf10k70rc240-4 для портов проекта
- •Определение временных задержек и быстродействия устройства
- •Заключение
- •Библиографический список
Проектирование устройства формирования пускового импульса
Устройство формирования пускового импульса обеспечивает формирование импульса на выходе «out» при поступлении на вход «pb1» пускового сигнала от кнопки «Пуск» на демонстрационной плате UP-2. Оно также обеспечивает «привязку» выходного импульса к переднему фронту тактовых импульсов, поступающих на вход «clock», а также выполняет защиту от «дребезга» (многократного изменения напряжения на входе «pb1», что не исключено при нажатии кнопки «Пуск»), т.е. реагирует только на первый перепад от единицы к нулю сигнала на входе «pb1». Для повторного формирования импульса на выходе «out» необходимо подать сигнал «Стоп» на вход «pb2», аналогичный сигналу «Пуск» на входе «pb1» (см. рис. 6).
В графическом редакторе САПР MAX+PLUS II схема устройства формирователя пускового импульса имеет следующий вид (рис. 5):
Рис. 5.Схема формирователя пускового импульса
Рис. 6. Временные диаграммы устройства формирования пускового импульса
Первый триггер переходит в единичное состояние, когда на его вход prn со входа «pb1» поступает логический «0». Второй триггер устанавливается в единичное состояние вслед за первым триггером по сигналу с выхода q первого триггера, т.к. на его информационный вход постоянно действует логическая «1» (сигнал VCC). Сигнал с выхода q второго триггера подготавливает третий триггер к записи в него единицы, которая записывается в него по переднему фронту тактового импульса, поступающего по входу clock. Сигнал выхода третьего триггера инвертируется и практически мгновенно устанавливает второй триггер в нулевое состояние, подготавливая запись логического нуля в третий триггер, что осуществляется передним фронтом очередного тактового импульса поступающего по входу clock.
Повторение сигнала на входе «pb1» не меняет состояние первого и второго триггеров, а, следовательно, не приводит к повторному формированию импульса на выходе устройства.
Однако, если первый триггер обнулить по асинхронному входу clrn, то при повторном поступлении сигнала на вход «pb1» работа устройства повторится и на выходе out появиться импульс [1].
Для дальнейшей работы с проектом сохраним устройство в виде графического символа, представленного на рис. 7.
Рис. 7. Символ устройства формирования пускового импульса
Проектирование устройства деления частоты
Согласно заданию устройство деления частоты спроектировано в виде текстового описания на языке AHDL:
-------------------------------------------
-- Устройство деления частоты
-------------------------------------------
PARAMETERS
(
modul = 25
);
CONSTANT width = LOG2(modul);
CONSTANT end_state = modul-1;
SUBDESIGN div_freg
(
in_freq : INPUT;
ce : INPUT = VCC;
out_freq : OUTPUT;
)
VARIABLE
tr[width-1..0] : dffe;
BEGIN
tr[].(clk, ena) = (in_freq, ce);
IF tr[].q < end_state THEN
tr[].d = tr[].q + 1;
ELSE
tr[].d = 0;
END IF;
out_freq = dff((tr[].q == 0), in_freq, ,); -- DFF(d, clk, clrn, prn);
END;
Как следует из описания, устройство деления частоты построено на основе счетчика разрядностью width c заданным коэффициентом счета modul. Вход и выход устройства описываются переменными in_freq и out_freq. Разрядность width и конечное состояние счетчика end_state определяются через коэффициент счета modul. При описании счетчика используются примитивы D-триггеров dff. Сигнал появляется на выходе, когда все триггеры счетчика, состояние которого меняется под действием импульсов на входе in_freq, оказываются в нулевом состоянии tr[].q = = 0.
Результаты моделирования с коэффициентом деления частоты modul=25 представлены на рис. 8:
Рис. 8. Временные диаграммы устройства деления частоты
Как следует из временных диаграмм (рис. 8) на выходе устройства out_freq формируется синфазная с входной последовательностью in_freq периодическая последовательность импульсов, длительность которых равна периоду следования входных импульсов in_freq, а частота уменьшается в 25 раз [1].
Для дальнейшей работы с проектом сохраним устройство в виде графического символа, представленного на рис. 9.
Рис. 9. Символ устройства деления частоты
