Как говорится - бьюсь с этой проблемой с прошлого года)
На входе имеем цифровой сигнал 3,3 В уровня. По фронту либо по срезу входного сигнала необходимо организовать задержку длительностью 1000 мкс (допуск на длительность +/- 100 мкс) с точностью <1 нс, после чего сообщить на выход так же фронт либо срез.
Пояснения: Простыми словами необходим ждущий (моностабильный) мультивибратор или аналогичное цифровое устройство, которое от запуска к запуску воспроизводило бы длительность с наносекундной точностью. Т.е. главным требованием является эквивалентность длительностей задержек выработанных при новых запусках. При этом сама величина задержки, как было сказано, может быть любой в указанных пределах. Момент прихода запускающего фронта/среза является случайным, ни к чему в системе не привязанным и ни с чем не синхронизированным.
Поделюсь не хитрыми соображениями, которые я успел обдумать. Во первых ждущий мультивибратор - на 555 или аналоге. Не встретил нигде конкретных данных по точности установки задержки в этом таймере, но понимание того что времязадающей является RC цепь наводит на мысль, что наносекундной точности не получить. Во вторых был вариант с счетчиком HC4040 с RS триггером, но даже при 100 МГц тактовой частоты мы будем иметь неопределенность (случайность) задержки величиной равной периоду тактовой частоты, т.е. 10 нс. В третьих была мысль про линии задержки, но таковых на 1мс я не встречал.
Я всецело понимаю что задержка в логических элементах и того больше 1 нс, но дело в том что эта задержка сравнительно постоянна во времени и при неизменной тепрературе, а как я уже сказал важна не сама величина длительности задержки, а ее постоянство.
Какие еще могут быть варианты?)
Добавлено after 11 minutes 37 seconds:
Вспомнил! Был еще вариант запускать кварцевый генератор по сигналу со входа. Но уперся в то, что кварцевый генератор долго стартует да и время старта тоже не постоянное. Если я конечно прав в суждениях.



