Jump to content
    

Измерение временных интервалов

Добрый день!

Не придумал как назвать тему, назвал как назвал. Вопрос (тема нониусных измерений) в следующем.

Пусть, на одном периоде основного клока где-то появляется асинхронный имульс. Вопрос - можно ли как-то средствами плис запустить какой-нибудь периодический сигнал, скажем меандр или строб, СИНХРОННЫЙ с передним(или задним) фронтом этого асинхронного импульса? 

Что-то ничего не придумывается, хотелось бы закрыть этот вопрос для себя, чтобы зря не ломать голову.

Спасибо.

 

Share this post


Link to post
Share on other sites

Рисунок того, что вы хотите, думаю смог бы сделать ваше ТЗ более понятным.

Share this post


Link to post
Share on other sites

5 hours ago, tems-ya said:

Пусть, на одном периоде основного клока где-то появляется асинхронный имульс. Вопрос - можно ли как-то средствами плис запустить какой-нибудь периодический сигнал, скажем меандр или строб, СИНХРОННЫЙ с передним(или задним) фронтом этого асинхронного импульса? 

Какой-нибудь запустит  можно ... 
Например генератор на цепочке инверторов. 
Вопрос в том устроит ли вас этот "какой-нибудь"? ... 

Share this post


Link to post
Share on other sites

Прошу прощения, что сразу не прикрепил рисунок, думал что постановка вопроса очевидная, исправляюсь. Надеюсь суть идеи понятна, в отличие от реализации...

Plain, к сожалению не понял, при чем здесь TDC. Если вы предлагаете отказаться от типа "нониусного" метода в пользу использования TDC, то здесь это offtop, т.к. тема эта была создана специально, чтобы попытаться проработать какие-либо варианты реализации именно "нониусного" метода измерения внутренними методами плис (не факт что такие варианты вообще существуют или могут быть реализованы на конкретном железе). З.Ы. с TDC с переменным успехом пытаюсь воевать уже достаточно долго, некоторые успехи есть, но особо похвастаться пока нечем. Если вы дока в этом (ну или хотя бы дока/4  🙂 ) применительно к реализации TDC именно на Altere и можете в какой-то мере поделиться опытом, обозначьте, имеется ряд вопросов.

RobFPGA,  о реализации генератора на цепочке инверторов только слышал, хотя говорят его применяли на cpld некоторые товарищи и типа даже успешно.  Но все сообщество в своей массе его всегда жутко ругало. Такое можно работающее замутить на fpga? может примерчик? если есть и не жалко...   Как вариант, нельзя-ли как-нибудь, например, pll настроить, чтобы по внешнему асинхронному импульсу запускалась генерация?

Нониусный метод.png

Share this post


Link to post
Share on other sites

Если вы думаете, что "сейчас" всем уже всё понятно - то ошибаетесь.

Если нужны "дурацкие советы" - то можете не пояснять свой вопрос.

Share this post


Link to post
Share on other sites

фактически это тоже, что синхронизация uart, но до сих не попадалась асинхронная, обычно по x16 частоте

В 22.04.2025 в 10:10, makc сказал:

Попробуйте погуглить по ключевым словам FPGA TDC и почитать статьи типа https://habr.com/ru/articles/352276/ (для начала).

конечно же авторы предлагают бороться с температурой путём регуляроной перекалибровки...

Share this post


Link to post
Share on other sites

6 минут назад, gridinp сказал:

конечно же авторы предлагают бороться с температурой путём регуляроной перекалибровки...

Можно было бы пойти и другим путём: откалибровать задержки в зависимости от температуры и далее вводить коррекцию по этой зависимости. Но так, как делают они, наверное проще и дешевле всего. 🤔

Share this post


Link to post
Share on other sites

В 22.04.2025 в 10:17, makc сказал:

Можно было бы пойти и другим путём: откалибровать задержки в зависимости от температуры и далее вводить коррекцию по этой зависимости. Но так, как делают они, наверное проще и дешевле всего. 🤔

а оно наверное будет уходить со временем, деградация кремния подозреваю должна сказываться

Share this post


Link to post
Share on other sites

1 минуту назад, gridinp сказал:

а оно наверное будет уходить со временем, деградация кремния подозреваю должна сказываться

Это уже тема отдельного исследования. И многое будет зависеть от времени наработки, о чём ТС не сказал нам ничего.

Share this post


Link to post
Share on other sites

54 минуты назад, tems-ya сказал:

так будет понятнее

Нет, стало ещё хуже. Где и когда там нониус?

Share this post


Link to post
Share on other sites

@tems-ya time-to-digital конвертеры не работают асинхронно. Это цифровые приборы. Точность измерения будет прямо зависеть от периода задающего клока. Существуют коммерческие специализированные чипы TDC, например https://www.ti.com/lit/ds/symlink/tdc7200.pdf?ts=1745284174721 Почитайте, как они устроены. Повышенную точность они обеспечивают потому, что внутри них цифровая схема тактируется на частотах более гигагерца.

Есть и другие способы сделать TDC, аналоговые. Например, накапливать заряд в конденсаторе от стабильного источника тока, а затем считывать значение с помощью АЦП. Этот способ тоже актуален. Пользовался прибором, у которого точность измерения в несколько десятков пикосекунд.

По вашей схеме. Подайте входы старт и стоп на RS триггер. Будет гораздо удобнее считать сколько тактов между ними.

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...