реклама на сайте
подробности

 
 
> Как сбросить синхронный триггер без клока?, Как принято решать подобный вопросы?
MegaVolt
сообщение Nov 9 2015, 08:03
Сообщение #1


Знающий
****

Группа: Свой
Сообщений: 779
Регистрация: 3-01-05
Из: Минск
Пользователь №: 1 783



Откуда растут ноги у столь странного вопроса:

Есть синхронный счётчик на тактовый вход которого заведена некая внешняя частота. На CE заведён импульс 1с. В результате имеем простейший частотомер. Сброс и вычитывание результата идут от опорной частоты.

Собственно в чём проблема. Сброс срабатывает только при наличии внешней частоты и не срабатывает при её отсутствии.

Как решают подобные вопросы?

Само собой можно поставить триггеры с асинхронным сбросом и не париться. Только вот очень мне понравилось делать большие счётчики на DSPэщных блочках. А они только синхронные.

Решение в лоб - подмешать во входную тактовую внутренний клок на время сброса тоже вариант. Но какой то он не очень красивый.

Собственно вопрос: как принято решать подобные проблемы?

Пока писал придумал ещё вариант: счётчик никогда не сбрасывать. А от выходного сигнала отнимать предыдущее измерение.
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
gerbity
сообщение Nov 9 2015, 08:13
Сообщение #2


Участник
*

Группа: Участник
Сообщений: 17
Регистрация: 2-11-15
Из: Москва, Зеленоград
Пользователь №: 89 137



Вообще говоря клоки и ресеты - это как говорится святая корова, и без серьезной необходимости (ну очень серьезной) лучше их лишний раз не модифицировать и не подмешивать. Так что в этом случае поставите уж один асинхронный триггер и не мучайте клок, а то проблем не оберетесь.

Сообщение отредактировал gerbity - Nov 9 2015, 08:14
Go to the top of the page
 
+Quote Post
MegaVolt
сообщение Nov 9 2015, 09:09
Сообщение #3


Знающий
****

Группа: Свой
Сообщений: 779
Регистрация: 3-01-05
Из: Минск
Пользователь №: 1 783



Цитата(gerbity @ Nov 9 2015, 11:13) *
Так что в этом случае поставите уж один асинхронный триггер и не мучайте клок, а то проблем не оберетесь.
Если не секрет куда его поставить?


Цитата(iosifk @ Nov 9 2015, 11:18) *
Если " некая внешняя частота" ниже чем может быть частота в кристалле, то сделайте CDC и системный клок и от него работайте...
Внешняя частота выше рабочей. Плюс может отсутствовать.


Цитата(Shivers @ Nov 9 2015, 11:35) *
Нормальный вариант. Но сначала надо обязательно пересинхронизировать измеряемый сигнал двумя триггерами.
В этом нет необходимости так как циклограмма позволяет считывать данные через некоорое (большое время) после перевода CE в ноль.


Цитата(RobFPGA @ Nov 9 2015, 11:49) *
Наверное частотомер ваяете.
Простенький - простенький. Для целей индикации.
Цитата
Костыль BUGCTRL - выгляди не очень - но работать будет (но опять же есть ограничения - не потанцуешь sm.gif ).
Хватит и обычной логики. DSP блочёк имеет один клоковый пин и его можно вести как угодно. Хуже не станет sm.gif
Цитата
Если клок произвольный и может отсутствовать то только асинхронный сброс.
sm.gif)) Вот и пример того где отказаться от асинхронности нельзя.
Цитата
Если еще и частота выше системной то есть несколько вариантов счета - включая полностью асинхронный счетчик wacko.gif
В этом случае лимит только физические ограничения на макс. частоту на пин и тригер.
Классику я знаю. Хотелось обсудить альтернативные варианты.

Цитата(iosifk @ Nov 9 2015, 11:52) *
Сдвиговый регистр и дешифратор к нему. Это не требует переносов и может быть быстрее.
А можно поподробнее что это за фокус? Счётчик Джонсона? Так он же триггеры жрёт что не в себя.

Сообщение отредактировал MegaVolt - Nov 9 2015, 09:06
Go to the top of the page
 
+Quote Post
gerbity
сообщение Nov 10 2015, 07:52
Сообщение #4


Участник
*

Группа: Участник
Сообщений: 17
Регистрация: 2-11-15
Из: Москва, Зеленоград
Пользователь №: 89 137



Цитата(MegaVolt @ Nov 9 2015, 12:09) *
Если не секрет куда его поставить?
Простите, два конечно же. При передачи любых сигналов (в том числе и ресетов) из одного частотного домена в другой необходимо их дважды пересинхронизировать. Это обязательно. Вот выкладываю картинку, как это сделать.

На выходе у вас получится сигнал сброса, который будет синхронизован с вашим внешним клоком. Платой за подобное использование будет задержка в два такта внешнего клока, которая может влиять на логику работы, но если это критично, то ее можно скомпенсировать. Например сбрасывать ваш счетчик не в ноль а в +2, например.

Выложу ка я пару интересных книжечек, как правильно делать всякого такого рода вещи.
Прикрепленный файл  CummingsSNUG2001SJ_AsyncClk.pdf ( 183.16 килобайт ) Кол-во скачиваний: 124

Прикрепленный файл  CummingsSNUG2002SJ_Resets.pdf ( 271.44 килобайт ) Кол-во скачиваний: 107


Сообщение отредактировал gerbity - Nov 10 2015, 08:10
Go to the top of the page
 
+Quote Post



Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 24th July 2025 - 16:33
Рейтинг@Mail.ru


Страница сгенерированна за 0.01419 секунд с 7
ELECTRONIX ©2004-2016