vea 0 12 января, 2015 Опубликовано 12 января, 2015 · Жалоба Есть каскад из двух регистров для внешнего сброса (обычная схема, как в справке квартуса здесь). Этот каскад тактируется clk1 и (соответственно со схемой) сбрасывать им можно регистры, которые тактируеются также clk1. Как правильно сбрасывать регистры, которые используют clk2, clk3 и т.д.? Для каждого clkX делать отдельный каскад? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
des00 25 12 января, 2015 Опубликовано 12 января, 2015 · Жалоба Для каждого clkX делать отдельный каскад? да, при этом, если логика на разных тактовых связанная, желателен быть перенос сигнала сброса с каскада на каскад. В порядке возрастания частоты Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
FakeDevice 0 12 января, 2015 Опубликовано 12 января, 2015 · Жалоба Еще есть зависимость от частоты. для пущей стабильности лично я такое только на частотах меньше 100 ставлю. на частотах повыше леплю от 3 регистров. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
vea 0 12 января, 2015 Опубликовано 12 января, 2015 · Жалоба да, при этом, если логика на разных тактовых связанная, желателен быть перенос сигнала сброса с каскада на каскад. В порядке возрастания частоты Спасибо. Вот так? Получается, снятие сброса не будет "одновременным" для разных тактовых? Будет нарастающая задержка, которую надо компенсировать? на частотах повыше от 3 регистров. Это обязательно? Хотелось бы единообразия. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
des00 25 12 января, 2015 Опубликовано 12 января, 2015 · Жалоба Получается, снятие сброса не будет "одновременным" для разных тактовых? Будет нарастающая задержка, которую надо компенсировать? В сбросе опасен не момент сброса, а момент его снятия. Сброс всех доменов должен идти одновременно, а вот снятие по цепочке. И не надо там ничего компенсировать. Цепочка на рисунке у вас сделана правильно. Это обязательно? Хотелось бы единообразия. я обычно ставлю 4 ре регистра. в приложении неплохая статья. изучайте. CummingsSNUG2002SJ_Resets.pdf Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
FakeDevice 0 12 января, 2015 Опубликовано 12 января, 2015 · Жалоба Это обязательно? Хотелось бы единообразия. вообще эти все регистры для защиты от метастабильности. и чем выше частота, тем меньше каждому регистру в каскаде дается времени на выход из метастабильного состояния. обязательно ли? зависит от того, на сколько критичен для вас вариант получения метастабильного состояния. если в случае, когда схема сбойнула, есть возможность распознать это и подать дополнительный сброс -- можно и вообще не ставить никаких регистров по входу. но если нужна стабильность, то лучше везде ставить с запасом. Хотите сделать единобразно? -- сделайте запас везде. я обычно ставлю 4 ре регистра. я обычно ставлю при f<100=2, 100..150=3, 150..200=4, 200..250=5. но всё это как-то на глазок, что в корне неправильно. Интересно было бы знать, а сколько в действительности-то требуется? т.к. лишняя задержка -- она не всегда приятна. Где бы посмотреть кривые вероятности метастабильного состояния на выходе в зависимости от частоты и количества регистров при условии, скажем, подачи "самого неудачно сдвинутого" относительно тактов сигнала на входе? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
des00 25 12 января, 2015 Опубликовано 12 января, 2015 · Жалоба Где бы посмотреть кривые вероятности метастабильного состояния на выходе в зависимости от частоты и количества регистров при условии, скажем, подачи "самого неудачно сдвинутого" относительно тактов сигнала на входе? формула MTBF есть в доках о метастабильности от вендоров плис. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Krys 2 12 января, 2015 Опубликовано 12 января, 2015 · Жалоба формула MTBF есть в доках о метастабильности от вендоров плис.При том там считается вполне достаточным использование 2 триггеров, независимо от частоты. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
des00 25 12 января, 2015 Опубликовано 12 января, 2015 · Жалоба При том там считается вполне достаточным использование 2 триггеров, независимо от частоты. значит мы разные доки читаем, либо делаем разные выводы. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Bad0512 2 12 января, 2015 Опубликовано 12 января, 2015 · Жалоба Вот ещё полезная статья от Кена Чапмана до кучи. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
toshas 0 12 января, 2015 Опубликовано 12 января, 2015 · Жалоба формула MTBF есть в доках о метастабильности от вендоров плис. Причем не все вендоры хотят их афишировать http://forums.xilinx.com/t5/Virtex-Family-...ery/td-p/476482 Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
vea 0 12 января, 2015 Опубликовано 12 января, 2015 (изменено) · Жалоба Вот ещё полезная статья от Кена Чапмана до кучи. Интересно. И здесь как раз 4 регистра - с указанием, что их число определяет минимальную длину сброса (и только?). Но основная идея - нет особой необходимости в глобальном сбросе. Насколько это правильно? В pdf есть ссылка на "Get your Priorities Right – Make your Design Up to 50% Smaller" - там в том числе и про сброс, но с привязкой к конкретной реализацией в кристаллах Xilinx. Насколько это соответсnвует Альтеровским кристаллам? Изменено 12 января, 2015 пользователем vea Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
andrew_b 14 12 января, 2015 Опубликовано 12 января, 2015 · Жалоба Но основная идея - нет особой необходимости в глобальном сбросе. Насколько это правильно?Основная идея в том, что сбрасывать надо то, что действительно надо сбрасывать. Например, если у вас есть некие данные, сопровождаемые флагом valid, то сброс нужен только для valid, а для данных не нужен, ведь если valid не активен, то какая разница, какие данные. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
FakeDevice 0 12 января, 2015 Опубликовано 12 января, 2015 · Жалоба Причем не все вендоры хотят их афишировать http://forums.xilinx.com/t5/Virtex-Family-...ery/td-p/476482 Видимо, причина в том, что со временем ситуация становится потихоньку хуже и хуже. Улучшаются технологии, транзисторы становятся всё менее шумными и за счёт собственных шумов становится сложнее и сложнее выйти из метастабильного состояния. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
SM 0 12 января, 2015 Опубликовано 12 января, 2015 · Жалоба В сбросе опасен не момент сброса, а момент его снятия. Сброс всех доменов должен идти одновременно, а вот снятие по цепочке. Только цепочка должна быть не тупо с повышением тактовой, а такой, как распространяется сигнал сброса, не привязываясь к частотам, то есть, оттуда, где он генерируется (например в домене "А"), он идет в домены "Б", и "В", а потом, обратно из доменов "Б" и "В", сигнал, говорящий домену "А", что все сбросилось, и можно начинать работать, то есть, снимать сигнал сброса с себя. Вот как-то примерно так. Направление, по большому счету, зависит от того, кто инициирует операцию, и кто на нее откликается - инициатор должен разрешаться только после того, как все остальные домены сбросились, независимо от того, у кого какая тактовая. А в подавляющем большинстве случаев, если в других доменах нет ничего, чтобы происходило без ведома домена-инициатора (каких-нибудь самостоятельных таймеров, и т.п.), достаточно резетнуть все эти домены асинхронным сигналом, и в домене-инициаторе выдержать задержку, гарантирующую, что в других доменах пройдет по два-три клока, и только потом начинать работать. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться