Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Altera / Lab_AT / Metod / Приложение 7

.doc
Скачиваний:
26
Добавлен:
10.12.2013
Размер:
21.5 Кб
Скачать

Приложение 7. Описание на AHDL устройства для защиты от "дребезга"

TITLE "Protection from failure of contacts";

CONSTANT

time_hold = 80000-1;

SUBDESIGN defense

(

key, clk : INPUT;

out : OUTPUT;

)

VARIABLE

ss : MACHINE WITH STATES (idle0, start, fixed);

hold[16..0] : DFF;

latch_in : DFF;

BEGIN

DEFAULTS

hold[].d = 0;

latch_in.d = GND;

END DEFAULTS;

hold[].prn = VCC;

hold[].clk = clk;

hold[].d = hold[].q + 1;

latch_in.prn = VCC;

latch_in.clk = !key;

latch_in.d = VCC;

ss.(clk, reset) = (clk, GND);

CASE ss IS

WHEN idle0 =>

hold[].clrn = !key and latch_in.q;

latch_in.clrn = VCC;

out = GND;

IF (latch_in.q) THEN

ss = start;

END IF;

WHEN start =>

hold[].clrn = !key;

latch_in.clrn = VCC;

out = GND;

IF (hold[] == time_hold) THEN

ss = fixed;

END IF;

WHEN fixed =>

hold[].clrn = GND;

latch_in.clrn = GND;

out = VCC;

ss = idle0;

END CASE;

END;

Соседние файлы в папке Metod