|
Синхронизер, как сделать? |
|
|
|
Feb 11 2011, 23:21
|
Профессионал
    
Группа: Свой
Сообщений: 1 284
Регистрация: 9-04-06
Пользователь №: 15 968

|
Добрый день. Мельком как то упоминал, но решил отдельную тему создать, чтоб была ясность.Такая задача: есть источник данных (АЦП, 16 бит), есть автомат, который их обрабатывает. Частоты АЦП и автомата отличаются на 0,06 Гц (примерно) при частоте 5 МГц. Надо как то данные синхронизировать. Что-то типа фифо на 1 слово, без сигналов "пусто" и "полно". В теме "фифо на 1 слово" посоветовали взять готовое фифо альтеры, но там на 4 слова минимум (в визарде). Может как то просто можно его изобразить, синхронизер этот. Логика такая: если новый отсчет не пришел, то автоматом читается старый. Если новый отсчет пришел, а старый не прочитан - старый пропадает. Т.е. если отсчет пропал или два раза прочитался (все равно такая ситуация случится) - не страшно, лишь бы ошибок в самом отсчете не было, типа половина бит - со старого отсчета, половина - с нового. Пока не представляю даже как это синхронизировать, хоть бы образчик какой...
Сообщение отредактировал alexPec - Feb 11 2011, 23:24
|
|
|
|
|
 |
Ответов
|
Feb 12 2011, 09:20
|

Универсальный солдатик
     
Группа: Модераторы
Сообщений: 8 634
Регистрация: 1-11-05
Из: Минск
Пользователь №: 10 362

|
Вот не понимаю я подобных задач, уже не впервые поднимавшихся здесь. Частоты АЦП и автомата разные. Если АЦП быстрее работает, значит, время от времени, код с АЦП будет теряться. Если автомат быстрее работает, значит, иногда один и тот же код будет обрабатываться дважды. И никакие ФИФО не спасут, так будет всегда. Если это не важно, и задача только избавиться от неправильно прочитанного кода из-за перекосов в момент метастабильного состояния, не нужно читать в это время. Создать сигнал, гарантирующий, что код с АЦП установился (всё, кроме времени в окрестности тактов АЦП), и читать, когда этот сигнал разрешает.
|
|
|
|
Сообщений в этой теме
alexPec Синхронизер Feb 11 2011, 23:21 Shtirlits Я бы сделал как в некоторых синхронных АЦП, переко... Feb 12 2011, 00:54 Krys Цитата(Shtirlits @ Feb 12 2011, 06:54) Я ... Mar 10 2011, 11:33 Александр77 Цитата(alexPec @ Feb 12 2011, 02:21) Надо... Feb 12 2011, 06:20 des00 при таком соотношении тактовых и символьных частот... Feb 12 2011, 07:28 alexPec Спасибо ВСЕМ за ответы
Цитата(des00 @ Feb 12... Feb 12 2011, 09:39  des00 Цитата(alexPec @ Feb 12 2011, 03:39) Я ту... Feb 12 2011, 09:53   alexPec Цитата(des00 @ Feb 12 2011, 12:53) а если... Feb 12 2011, 10:17    des00 Цитата(alexPec @ Feb 12 2011, 04:17) Нель... Feb 12 2011, 10:35     alexPec Цитатада на частоте на 0.06 Гц больше Вам само... Feb 12 2011, 10:56      _Anatoliy Цитата(alexPec @ Feb 12 2011, 12:56)
А ч... Feb 12 2011, 11:45       alexPec Цитата(_Anatoliy @ Feb 12 2011, 14:45) А ... Feb 12 2011, 19:42  ViKo Цитата(alexPec @ Feb 12 2011, 11:39) Так ... Feb 12 2011, 10:06  ViKo Цитата(alexPec @ Feb 12 2011, 11:39) Так ... Feb 12 2011, 10:26 dvladim Цитата(alexPec @ Feb 12 2011, 02:21) Т.е.... Feb 12 2011, 07:40 des00 Цитата(dvladim @ Feb 12 2011, 01:40) Не м... Feb 12 2011, 08:16 Shtirlits Если дальше Фурье, то делать как я насоветовал нел... Feb 12 2011, 11:17 slawikg Поставте 2 фифо, после заполнения одного, начинае... Feb 13 2011, 12:41
2 чел. читают эту тему (гостей: 2, скрытых пользователей: 0)
Пользователей: 0
|
|
|