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

 
 
> Пересечение сигналом разных клоковых доменов, нужны ли синхронизаторы?
ig_f
сообщение Dec 10 2014, 13:46
Сообщение #1


Участник
*

Группа: Участник
Сообщений: 47
Регистрация: 18-11-11
Пользователь №: 68 381



Доброго времени суток!
Есть управляющий автомат работающий на частоте 400 кГц и есть логика обработки данных работающая на частоте 120 МГц. Соответственно автомат управления посылает различные сигналы в остальную логику. Частота 400 кГц формируется из основной частоты 120 МГц (без использования PLL, с помощью обыкновенного счетчика), т.е. клоки в общем-то связанные.
Вопросы:
1) Правильно ли я мыслю, что в моем случае можно обойтись без синхронизаторов(тех самых, что используются для борьбы с метастабильностью)?
2) Если так, то что для этого нужно сделать?

Заранее спасибо!

ps
Cyclone III

Сообщение отредактировал ig_f - Dec 10 2014, 13:47
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
Torpeda
сообщение Dec 12 2014, 10:05
Сообщение #2


Местный
***

Группа: Свой
Сообщений: 426
Регистрация: 23-02-12
Пользователь №: 70 424



Цитата(ig_f @ Dec 10 2014, 17:46) *
1) Правильно ли я мыслю, что в моем случае можно обойтись без синхронизаторов(тех самых, что используются для борьбы с метастабильностью)?
2) Если так, то что для этого нужно сделать?

1) правильно
2) ничего ненадо если.....
Если дизайн сделан синхронным - т.е. к каждому тригеру (и в той и другой части) подведён один и тот-же провод CLK


Цитата(SM @ Dec 10 2014, 20:55) *
2) Ничего для этого не надо делать. Только корректно описать клок 400 кгц как generated из 120 MHz - остальное сделает PAR.

..тоже можна...но зачем так сложно?

Цитата(ig_f @ Dec 11 2014, 01:37) *
В альтеровских руководствах сказано, что если клоки завязанные, то их можно считать синхронными и, соответственно, можно обойтись без синхронизатора. Поэтому вариант, который предложил уважаемый SM мне кажется более естественным для решения данной задачи.

для FPGA такой вариант противоестественный но можно запихнуть


Цитата(Bad0512 @ Dec 11 2014, 09:32) *
Правильно делать (как вам тут уже не один раз советовали) так : на счётчике формируем импульс в один такт 120МГц с периодом 400КГц. Этот импульс подаем на CE вход всех триггеров автомата (но ни в коем случае
не на клоковый вход!!!). Тактируем всё от одного 120МГц клока. В результате избегаем все CDC(clock dmain crossing) проблемы, а автомат у нас работает на 400кГц клоке.

да - это и называется синхронный дизайн!!!


Цитата(SM @ Dec 11 2014, 12:50) *
...А грамотное описание связанных клоков, без разницы, как сгенерированных, хоть с помощью PLL, хоть с помощью триггеров, гарантирует полное отсутствие метастабильных состояний. Поэтому предпочтительнее правильно описать клоки и не ставить синхронизаторы, нежели объявить клоки независимыми и поставить синхронизаторы.


какими клоками не описывай физически асинхронную схему - такой она и останется.
Другое дело - это написать правильные констрейны, чтобы они гарантировали правильную физическую реализацию изначально синхронной схемы.
Go to the top of the page
 
+Quote Post
SM
сообщение Dec 12 2014, 10:10
Сообщение #3


Гуру
******

Группа: Свой
Сообщений: 7 946
Регистрация: 25-02-05
Из: Moscow, Russia
Пользователь №: 2 881



Цитата(Torpeda @ Dec 12 2014, 13:05) *
какими клоками не описывай физически асинхронную схему - такой она и останется.

Где Вы тут нашли асинхронную систему? Сами придумали?
Go to the top of the page
 
+Quote Post
Torpeda
сообщение Dec 12 2014, 10:16
Сообщение #4


Местный
***

Группа: Свой
Сообщений: 426
Регистрация: 23-02-12
Пользователь №: 70 424



Цитата(SM @ Dec 12 2014, 14:10) *
Где Вы тут нашли асинхронную систему? Сами придумали?


хмм.....
1) этот случай абсолютно тривиальный и синхронный по сути но...
2) автор его сделал на generated_clock и при этом тулзе не описал SDC констрейнами, как результат - получил асинхронную
Go to the top of the page
 
+Quote Post
SM
сообщение Dec 12 2014, 10:54
Сообщение #5


Гуру
******

Группа: Свой
Сообщений: 7 946
Регистрация: 25-02-05
Из: Moscow, Russia
Пользователь №: 2 881



Цитата(Torpeda @ Dec 12 2014, 13:16) *
хмм.....
1) этот случай абсолютно тривиальный и синхронный по сути но...
2) автор его сделал на generated_clock и при этом тулзе не описал SDC констрейнами, как результат - получил асинхронную

2) в корне неверно, так как и синтез, и PAR сам видит все сгенерированные клоки, и без доп. SDC-описаний считает их клоками тех же частот, что и генерирующая сторона, но сдвинутых по времени на какое-то значение, определяемое физическими задержками генерации и разводки. И, соответственно, корректирует длины путей между этими клоками, и по сетапам, и по холдам. Дополнительные констрейны нужны только в том случае, если необходимо указать, что сгенерированный клок имеет другую частоту, нежели сторона, его сгенерировавшая.
Go to the top of the page
 
+Quote Post

Сообщений в этой теме
- ig_f   Пересечение сигналом разных клоковых доменов   Dec 10 2014, 13:46
- - Kuzmi4   2 ig_f вообще то всегда надо ставить переходники, ...   Dec 10 2014, 14:09
- - TRILLER   Цитата(ig_f @ Dec 10 2014, 16:46) 1) Прав...   Dec 10 2014, 16:08
|- - des00   Цитата(TRILLER @ Dec 11 2014, 00:08) Нет,...   Dec 10 2014, 16:30
|- - TRILLER   Цитата(des00 @ Dec 10 2014, 19:30) ..Но в...   Dec 10 2014, 19:28
- - SM   Цитата(ig_f @ Dec 10 2014, 16:46) т.е. кл...   Dec 10 2014, 16:55
- - Maverick   Цитата(ig_f @ Dec 10 2014, 15:46) Доброго...   Dec 10 2014, 18:21
- - ig_f   ЦитатаПрошу прощения, если ненароком оскорбил ТС. ...   Dec 10 2014, 21:37
|- - Bad0512   Делать клоки низкой частоты без использования PLL ...   Dec 11 2014, 05:32
|- - SM   Цитата(ig_f @ Dec 11 2014, 00:37) Нет ник...   Dec 11 2014, 08:50
- - ig_f   ЦитатаДелать клоки низкой частоты без использовани...   Dec 11 2014, 08:36
|- - Bad0512   Цитата(ig_f @ Dec 11 2014, 14:36) А вообщ...   Dec 11 2014, 11:53
|- - SM   Цитата(Bad0512 @ Dec 11 2014, 14:53) это ...   Dec 11 2014, 12:01
||- - Bad0512   Цитата(SM @ Dec 11 2014, 18:01) Может, но...   Dec 11 2014, 12:09
||- - SM   Цитата(Bad0512 @ Dec 11 2014, 15:09) поэт...   Dec 11 2014, 12:37
|- - ig_f   Цитата(Bad0512 @ Dec 11 2014, 14:53) Про ...   Dec 11 2014, 14:41
|- - blackfin   Цитата(ig_f @ Dec 11 2014, 17:41) Что-то ...   Dec 11 2014, 14:49
- - dxp   В каком-то альтеровском документе видел описание п...   Dec 11 2014, 13:19
|- - SM   Цитата(dxp @ Dec 11 2014, 16:19) ну, чтоб...   Dec 11 2014, 13:26
||- - des00   Цитата(SM @ Dec 11 2014, 20:26) А вот кст...   Dec 11 2014, 13:40
||- - SM   Цитата(des00 @ Dec 11 2014, 16:40) CLKCTR...   Dec 11 2014, 13:46
||- - des00   Цитата(SM @ Dec 11 2014, 21:46) Хм. А где...   Dec 12 2014, 05:53
|- - blackfin   Цитата(dxp @ Dec 11 2014, 16:19) В каком-...   Dec 11 2014, 13:44
|- - Torpeda   Цитата(SM @ Dec 12 2014, 14:54) 2) в корн...   Dec 12 2014, 14:44
|- - SM   Цитата(Torpeda @ Dec 12 2014, 17:44) PS. ...   Dec 12 2014, 15:34
|- - Torpeda   Цитата(SM @ Dec 12 2014, 18:34) Вот именн...   Dec 12 2014, 16:13
- - SM   Он должен был туда и derive_clocks записать. Видим...   Dec 12 2014, 16:23
- - Torpeda   Цитата(SM @ Dec 12 2014, 19:23) Он должен...   Dec 12 2014, 16:27
- - SM   Цитата(Torpeda @ Dec 12 2014, 19:27) Имен...   Dec 12 2014, 16:48
- - Torpeda   Цитата(SM @ Dec 12 2014, 19:48) PADI_DEL ...   Dec 12 2014, 17:25
- - SM   Цитата(Torpeda @ Dec 12 2014, 20:25) Похо...   Dec 12 2014, 17:45


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

 


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


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