МАРСОХОД

Open Source Hardware Project

Добро пожаловать, Гость
Логин: Пароль: Запомнить меня
  • Страница:
  • 1

ТЕМА: Задержка сигнала

Задержка сигнала 1 год 8 мес. назад #6952

  • aus
  • aus аватар Автор темы
  • Не в сети
  • Новый участник
  • Новый участник
  • Сообщений: 9
  • Спасибо получено: 0
Здравствуйте, подскажите как реализовать задержку?
module Delay123 (
	input logic clk,
	input logic in,
	input logic set,
	output logic out
	
	
	
	);

logic [9:0] cnt;


always @(posedge clk) begin
	if (set) begin
		if (cnt == 640) out <= in;
		else begin
			out <= 0;
			cnt <= cnt + 1;
		end
	end
	else cnt <= 0;
end
endmodule

До прихода входного сигнала выход находится в "0", как пришел сигнал "set" отсчитывается 20 мкс и входной сигнал идет на выход. Как сделать так, чтобы счетчик считал 20 мкс по переднему фронту импульса "set" в независимости от его длительности? То есть сброс и начало отсчета только по переднему фронту. Писал "set" в чувствительность блока, но на выходе нули.


п.с. прошу прощения не там создал тему

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

Последнее редактирование: от aus.

Задержка сигнала 1 год 8 мес. назад #6953

  • Leka
  • Leka аватар
  • Не в сети
  • Живу я здесь
  • Живу я здесь
  • Сообщений: 631
  • Спасибо получено: 51

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

Задержка сигнала 1 год 8 мес. назад #6969

  • nckm
  • nckm аватар
  • Не в сети
  • Администрация форума
  • Администрация форума
  • Сообщений: 88
  • Спасибо получено: 23
строго говоря так как вы хотите и сделать то нельзя.
внутри плис можно иметь свой генератор, но он асинхронный к приходящему сигналу set.
поэтому от фронта сигнала можно отсчитать некоторый интервал с помощью счетчика, но начало счета будет плавать по фазе относительно асинхронно приходящего сигнала set.

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

  • Страница:
  • 1
Время создания страницы: 0.153 секунд

facebook  GitHub  YouTube  Twitter