Цитата(AVR @ Mar 3 2013, 02:12)

Необходимо решить задачу синхронизации двух ПЛИС Spartan 6. Мне надо чтобы были синхронными импульсы 100 Гц, а уже расхождение в течение 10 мс в рамках допустимой погрешности будет при любом раскладе. Необходимо чтобы синхронность в пределах 1-2 мкс сохранялась в течение 5 минут. Казалось бы, требования простые, придумывая и тестируя различные методы на Verilog в симуляторе (имитируя расхождение частот в плюс и минус) мне удавалось решить задачу. А вот реальные испытания с осциллографом и двумя каналами (по триггеру смотрел расхождение) показали что решение никуда не годится...
У каждой ПЛИС свой внешний генератор на 50 МГц (KXO-V97, но не суть, там 50 ppm). Между собой они соединены по диф.-паре LVDS_33, помех нет.
Важный момент: после синхронизации ПЛИС должны быть разъединены, поэтому надо чтобы 5 минут потом сохранялось равенство тактовых частот, только вот установить еще надо их равными.
Я так понимаю что встроенный DCM решает такую задачу. Им я пользовался лишь для преобразования одной частоты в другую.
Вопрос: как пользоваться DCM для синхронизации двух тактовых частот? Как называется процесс или режим работы DCM? Есть ли статьи или туториалы?
Чтобы если одна базовая ПЛИС ушла по частота от 50 МГц на 752 Гц например, то чтобы вторая тоже имела такое же смещение (50000752 Гц).
Боюсь, что сделать "часы реалього времени" на дешевой комерческой базе, но с точностью атомных ччастов не получиться. Все зависит от точности опорного тактового генератора. Никакие синтезаторы не могут скомпенсировать неточность тактового генератора. Это не их задача. Они для этого не предназначены. Они лишь делят и умножают опорную частоту, чтобы получить требуемую. Сами посчитайте. При 50 ppm за 5 минут в худшем случае разбегутся на 30 мс. Чтобы обеспечить ваши требования нужно чтобы точность тактовых генераторов была 0,00х ppm. Лично я таких генераторов не встричал.
Можно попробовать подобрать. Но нужно обязательно генератор с компенсацией температурного дрейфа. Иначе все усилия пойдут "коту под хвост"
Цитата(AVR @ Mar 3 2013, 19:22)

Задача:
Есть две ПЛИС. У каждой свой генератор. Частоты различаются. На несколько секунд их можно соединить кабелем, затем 5 минут работы автономно.
Необходимо сделать так, чтобы импульсы (пусть будет 1 КГц, не 100 Гц) в течение 5 минут на одной плате были как можно более синхронны к 1 КГц импульсам на второй плате.
Цель: необходимо замерять время хода звука с высокой точностью (есть датчики к ПЛИС с соответствующей аналоговой схемой), поэтому хотя бы 5 минут должно быть более менее стабильно.
Для этого не надо высокоточных генераторов.
Задача решается калибровкой системы по эталонному звуковому сигналу. Грубо говоря, подбираете сколько тактов 50 МГ-цовой частоты укладывается в периоде эталонного 100 Г-цового сигнала