lab4_zif
.docxМИНОБРНАУКИ РОССИИ
Санкт-Петербургский государственный
электротехнический университет
«ЛЭТИ» им. В.И. Ульянова (Ленина)
Кафедра РС
отчет
по лабораторной работе №4
по дисциплине «Цифровая электроника»
Тема: Исследование работы синхронных D- и J-K-триггеров
Вариант 13
Студент гр. 4493 |
|
Шевцов А.И. |
Преподаватель |
|
Овчинников М.А. |
Санкт-Петербург
2026
Задание:
1. Собрать схему синхронного D-триггера в текстовом редакторе. Для этого воспользоваться кодом 1 из задания.
Изучить схему, реализованную в RTL-Viewer.
Построить временные диаграммы, иллюстрирующие работу устройства. Период тактового сигнала задать 20 нс, время моделирования – 700 нс.
1а. Ввести в D-триггер сигнал установки. Для этого воспользоваться кодом 2 из задания. Проделать всё то же самое, что и для простого D-триггера.
Синхронным или асинхронным является сигнал установки? Объяснить, почему. Ответ не должен быть основан на построенных временных диаграммах, они являются следствием, а не причиной.
2. Собрать схему синхронного J-K-триггера в текстовом редакторе. Для этого воспользоваться кодом 3 из задания, вариант реализации №1.
Изучить схему, реализованную в RTL-Viewer.
Построить временные диаграммы, иллюстрирующие работу устройства. Период тактового сигнала задать 40 нс, время моделирования – 800 нс.
П.1 . Собрать схему синхронного D-триггера в текстовом редакторе
Описание схемы на языке Verilog HDL
module d_trigger(clock,Data,q);
input clock, Data;
output q;
reg q;
always @(negedge clock)
q<=Data;
endmodule
Рис. 1 Результат работы RTL для синхронного D-триггера
Рис. 2 Временная диаграмма синхронного D-триггера
П. 1а. Ввести в D-триггер сигнал установки
Описание схемы на языке Verilog HDL
module d_load(clock, Data, set, q);
input clock, Data, set;
output q;
reg q;
always @(negedge clock or posedge set)
begin
if (set)
q <= 1'b1;
else
q <= Data;
end
endmodule
Рис. 3 Результат работы RTL для D-триггера с сигналом установки
Рис.4 Временная диаграмма D-триггера с сигналом установки
Сигнал установки является асинхронным так как В списке чувствительности процесса always указаны negedge clock и posedge set. Это значит, что блок активируется не только по тактовому сигналу, но и при любом нарастающем фронте set, независимо от значения clock. Сначала проверяется сигнал set, вне зависимости от значения clock, то есть сигнал set не синхронизируется с тактовым сигналом.
П.2 . Собрать схему синхронного J-K-триггера в текстовом редакторе
Описание схемы на языке Verilog HDL
module jk_trigger(clock,J,K,q);
input clock, J,K;
output q;
reg q;
always @(posedge clock)
if (J==1 && K==0)
q<=1;
else if (J==0 && K==1)
q<=0;
else if (J==1 && K==1)
q<=~q;
endmodule
Рис. 5 Результат работы RTL для синхронного J-K-триггера
Рис.6 Временная диаграмма синхронного J-K-триггера
Вывод:
В ходе лабораторной работы были исследованы синхронные D- и J-K-триггеры, реализованные на языке Verilog. Изучение схем в RTL-Viewer подтвердило, что синтезатор интерпретирует поведенческое описание в соответствующие триггерные элементы с синхронными информационными входами и, при необходимости, асинхронным управлением.
Анализ временных диаграмм D-триггера без дополнительных входов показал, что выход q изменяется строго по спаду тактового сигнала, копируя состояние входа Data только в момент активного фронта. Тем самым подтверждено свойство синхронной передачи данных.
При исследовании D-триггера с сигналом установки set установлено, что этот сигнал является асинхронным. Основанием для такого вывода служит Verilog-описание: в списке чувствительности присутствует событие posedge set, а внутри блока первым проверяется условие if (set), что обеспечивает немедленную установку выхода в единицу вне зависимости от тактового сигнала. Временные диаграммы это подтвердили наглядно, однако сам вывод сделан исключительно из анализа HDL-кода, определяющего аппаратное поведение схемы.
При моделировании J-K-триггера были продемонстрированы все четыре режима работы: хранение (J=0, K=0), сброс (J=0, K=1), установка (J=1, K=0) и переключение (J=1, K=1). Временные диаграммы показали, что выход q корректно реагирует на комбинации входов только по нарастающему фронту тактового сигнала. Подтверждено, что изменение входных сигналов J и K не должно происходить вблизи активного фронта, чтобы избежать нарушения времён предустановки и удержания (setup/hold), что является общим требованием для надёжной работы синхронных схем.
