close

Вход

Забыли?

вход по аккаунту

?

Петя3

код для вставкиСкачать
Министерство образования и науки Украины
Донецкий Национальный Технический университет
Кафедра АСУ
Отчёт о выполнении лабораторной работы №3
по дисциплине "Языки программирования СКС: VHDL"
на тему: "Проектирование триггерных и регистровых узлов ЦС на базе ЯОА VHDL"
выполнил:
Ст. гр. КСД-08
Бубнов П.В.
Принял: Скобцов В.Ю.
Донецк 2011
Цель: спроектировать триггерную и регистровую ЦС на базе ЯОА VHDL.
Задание:
Разработать на языке описания аппаратуры VHDL программу, которая реализует согласно варианту.
1. Триггерную схему в базисе И, ИЛИ, НЕ на основе поведенческого и структурного описания.
2. Регистровую схему на основе структурного описания.
Номер варианта - 4
Тип триггера - D
Время выполнения - 9 ns
Тип схемы - с цикличесим сдвигом вправо
Разрядность - 4 бит
Структурное описание 2-х входового элемента
entity ent_Dgate is
generic (del:time := 9 ns);
port (
in1, in2: in bit;
out1: out bit);
end ent_Dgate; architecture arch_Dgate of ent_Dgate is
begin
out1 <= not (in1 and in2) after del;
end arch_Dgate;
Результаты:
Таблица истинности для 2-хвходового элемента И-НЕ
Х1Х2Y001011101110
Структурное описание триггерной схемы:
entity ent_Dstruct is
port (
C, D: in bit;
Q, nQ: inout bit);
end ent_Dstruct;
architecture arch_Dstruct of ent_Dstruct is
component ent_Dgate
port (
in1, in2: in bit;
out1: out bit);
end component;
signal inout1, inout2: bit;
begin Gate1: ent_Dgate
port map (D, C, inout1);
Gate2: ent_Dgate
port map (inout1, C, inout2);
Gate3: ent_Dgate
port map (inout1, nQ, Q);
Gate4: ent_Dgate
port map (Q, inout2, nQ);
end; Результаты:
Таблица истинности для D-триггера
СDQ00Q(t-1)01Q(t-1)100111 В результате проэктирования с помощью структурного описания, получили данные, соответствующие таблице истинности D-триггера. Произведем расчет некоторых значений. Выберем один такт, t=800:1000 ns. В данный момент времени C=1, D=1, а Q=1, что соответствует 4-ой строке таблицы истинности. Выберем другой такт,где t=1000:1200 ns. В данный момент времени C=0, D=0, что соответствует 1-ой строке таблицы истинности, и т.к. Q(t-1)=1, то и Q=1.
Поведенческое описание триггерной схемы:
entity ent_D_trig is
generic (delay:time := 9 ns);
port (
RST, CLK, D: in bit;
Q: out bit);
end ent_D_trig;
architecture arch_D_trig of ent_D_trig is
begin
process (RST, CLK) begin
if (RST'event and RST = '1') Then
Q <= '0' after delay;
elsif (CLK'event and CLK = '1') Then
Q <= D;
end if;
end process;
end arch_D_trig;
Результаты:
Таблица истинности для D-триггера (c RST-входом)
DRSTCLKQ000Q(t-1)001001000110100Q(t-1)101111001111 В результате проэктирования с помощью поведенческого описания, получили данные, соответствующие таблице истинности D-триггера. По сравнению со схемой, полученной с помощью структурного описания, в данной схеме добaвлен вход RST (ReSeT). RST обеспечивает сброс значения триггера. Он срабатывает независимо от входа синхронизации. Данный вход необходим для создания регистровой схемы, т.к. появляется необходимость сброса данных находящихся в регистре.
Проанализируем полученные результаты. Для такта: t=2400:2500, D=0, RST=0, CLK=0, что соответствует первой строке таблицы истинности, Q=1, т.е. Q=Q(t-1). Для такта: t=2500:2600, D=0, RST=0, CLK=1, что соответствует второй строке таблицы истинности, из временной диаграммы следует, что Q=0.
Структурное описание регистровой схемы:
value0 value1 value2 value3
entity ent_REG is
port (
RST1, CLK1: in bit;
Q1: inout bit_vector(3 downto 0));
end ent_REG;
architecture arch_REG of ent_REG is
component ent_D_trig
port (
RST, CLK, D: in bit;
Q: inout bit);
end component;
begin
VALUE3: ent_D_trig
port map (RST1, CLK1, Q1(2), Q1(3));
VALUE2: ent_D_trig
port map (RST1, CLK1, Q1(1), Q1(2));
VALUE1: ent_D_trig
port map (RST1, CLK1, Q1(0), Q1(1));
VALUE0: ent_D_trig
port map (RST1, CLK1, Q1(3), Q1(0));
end arch_REG;
Описание регистровой схемы: Данная регистровая схема состоит из 4-х D-триггеров, образующих 4 бита регистра. Для начала работы необходимо используя входы D занести значения в биты, далее каждое изменение синхроимпульса с "0" на "1" будет вызывать циклический сдвиг вправо. При поступлении на вход сигнала сброса (RST), вне зависимости от сигнала синхронизации (CLK), все значения битов регистра устанавливаются в "0" - сбрасываются. Далее необходимо снова заносить данные в регистр с помощью входов D.
Для проверки работоспособности регистра проанализируем векторную диаграмму. Для такта: t=900:1000, CLK=1, Q(3)=0Q(2)=1Q(1)=1Q(0)=0
Во время следующего поступления сигнала CLK t=1100:1200,
Q(3)=1Q(2)=1Q(1)=0Q(0)=0
Как видно из этих данных после однократного поступления сигнала синхронизации (CLK) данные в регистре циклически сдвинулись вправо.
При поступлении на вход сигнала RST, при t=1500, значения всех битов установились в "0".
Результаты:
Вывод: в результате выполнения работы научились строить на основе структурного и поведенческого описания регистровые и триггерные схемы. Проанализировав результаты, убедилась, что полученные данные совпадают с таблицами истинности.
Документ
Категория
Рефераты
Просмотров
20
Размер файла
421 Кб
Теги
петя
1/--страниц
Пожаловаться на содержимое документа