Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Генерация сигнала длины N ns
Форум разработчиков электроники ELECTRONIX.ru > Аналоговая и цифровая техника, прикладная электроника > Цифровые схемы, высокоскоростные ЦС
Anton2
Добрый день!

Появился следующий вопрос, интересны ваши идеи. Есть 2 тактовых сигнала, полученных из одного источника - clk_250MHz и clk_5Mhz - они синхронизированы. Как получить сигнал Y следующего вида: по фронту clk_5MHz сигнал Y переходит в 1, затем находится в этом состоянии, скажем, 5 периодов сигнала clk_250MHz, потом сбрасывается в 0 и т. д.

iosifk
Цитата(Anton2 @ May 27 2014, 14:38) *
Добрый день!

Появился следующий вопрос, интересны ваши идеи. Есть 2 тактовых сигнала, полученных из одного источника - clk_250MHz и clk_5Mhz - они синхронизированы. Как получить сигнал Y следующего вида: по фронту clk_5MHz сигнал Y переходит в 1, затем находится в этом состоянии, скажем, 5 периодов сигнала clk_250MHz, потом сбрасывается в 0 и т. д.

Ставите на clk_250MHz автомат, который "по фронту clk_5MHz сигнал Y переходит в 1, затем находится в этом состоянии, скажем, 5 периодов сигнала clk_250MHz, потом сбрасывается в 0"...
Или ставите программируемый таймер, в который автомат запишет число "5" или сдвиговый регистр (если надо только немного тактов) и будет ждать готовность таймера...
Все как обычно, ничего нового....
Anton2
Цитата(iosifk @ May 27 2014, 14:42) *
Ставите на clk_250MHz автомат, который "по фронту clk_5MHz сигнал Y переходит в 1, затем находится в этом состоянии, скажем, 5 периодов сигнала clk_250MHz, потом сбрасывается в 0"...
Или ставите программируемый таймер, в который автомат запишет число "5" или сдвиговый регистр (если надо только немного тактов) и будет ждать готовность таймера...
Все как обычно, ничего нового....


Спасибо, на самом деле первая мысль была примерно такая же - автомат плюс счетчик. Первоначально было сделано так: автомат синхронный и меняет свое состояние по фронту clk_250Mhz, после обнаружения того, что clk_5MHz = 1, он переходит в следующее состояние и начинает считать счетчик до N, после этого логика ловит число N и сбрасывает счетчик и сигнал Y.

Просто мне кажется что метод немного "костыльный" и можно сделать намного проще. Или нет?
VCO
Цитата(Anton2 @ May 27 2014, 14:58) *
Просто мне кажется что метод немного "костыльный" и можно сделать намного проще. Или нет?

Можно сделать по-другому, но это не значит, что лучше и намного проще.
Можно импульсы считать интегратором и отрицательный фронт формировать компаратором.
Можно просто импульс одновибратора продлевать логическим элементом ИЛИ до сброса.
Anton2
Цитата(VCO @ May 27 2014, 16:18) *
Можно сделать по-другому, но это не значит, что лучше и намного проще.
Можно импульсы считать интегратором и отрицательный фронт формировать компаратором.
Можно просто импульс одновибратора продлевать логическим элементом ИЛИ до сброса.


Теперь ясно, спасибо за подкинутые варианты.
iosifk
Цитата(Anton2 @ May 27 2014, 15:58) *
Просто мне кажется что метод немного "костыльный" и можно сделать намного проще. Или нет?

На самом деле дело не в способе.
Каждая разработка - это риск того, что в проекте что-то будет не так и он не заработает. А потому к цели ведет не самый короткий путь, а тот, по которому легче идти...
Посмотрите у меня в "Кратком курсе" статью про "дополнение" к автоматам... Будет желание обсудить - в скайп...
Kaligooola
Если это внутри ПЛИС, то можно сделать на PLL выход 5 МГц со скважностью, к примеру 90/10 (нужно посчтитать).
Если конечно ресурсы позволяют.
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.