Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Сигнал LOCKED DCM сихнронный или асинхронный сброс ?
Форум разработчиков электроники ELECTRONIX.ru > Программируемая логика ПЛИС (FPGA,CPLD, PLD) > Работаем с ПЛИС, области применения, выбор
Костян
Сигнал LOCKED с DCM(PLL) модуля в качестве какого сброса его оптимальнее использовать - синхронного или асинхронного?
И почему (ответ развернутый , пожалуйста)?
Кристалл Virtex (4..6).
Костян
как то не активно....
Нашел статейку от хилых на этот счет (см.. аттач) . Предлагаю пофлудить на эту тему. Всегда ли синхронный сброс позволит сэкономить LUT , либо данная экономия мизерная?
rv3dll(lex)
вообще не использовать сброс
andrew_b
У синхронного сброса есть один большой минус: ему нужен клок. Нет клока -- нет сброса.
DmitryR
Не такой уж это большой минус - обычно сброс снимают после того, как появляется клок. Однако для ресета источника клока например синхронный сброс да, не подходит.
atlantic
Цитата(andrew_b @ Feb 4 2010, 13:02) *
У синхронного сброса есть один большой минус: ему нужен клок. Нет клока -- нет сброса.

Интересно, что можно делать в FPGA когда нет клока?
Висеть в ресете?


Цитата(Костян @ Feb 3 2010, 12:06) *
Сигнал LOCKED с DCM(PLL) модуля в качестве какого сброса его оптимальнее использовать - синхронного или асинхронного?
И почему (ответ развернутый , пожалуйста)?
Кристалл Virtex (4..6).


Код
always @(posedge clk_WR)
  if(DCMs_are_LOCKED == 0) //indicate that all DCM's are locked, used for reg's init state
   begin //init
    addr_BANK_WR <= 0;
   end
  else
   begin
    EDGE_OF_buf_DE_WR <= {EDGE_OF_buf_DE_WR[0], buf_DE_WR};

    if(EDGE_OF_buf_DE_WR == FALL_EDGE)
     addr_BANK_WR <= ~addr_BANK_WR;

   end
andrew_b
Цитата(atlantic @ Feb 4 2010, 15:12) *
Интересно, что можно делать в FPGA когда нет клока?
Висеть в ресете?
Дизайны разные бывают.
Например, в FPGA-дизайне может быть более одного клок-домена. И один (или несколько) из клок-доменов могут питаться клоками, которые вырабатывает некий дивайс, которым управляет эта FPGA. И ещё всем этим делом рулит проц. И получается, что одна часть FPGA работает сразу, потому что тактируется от кварца, а сброс для неё формируется после подачи питания аппаратно, а другие части сначала надо затактировать от внешнего дивайса, и только потом подать сброс программно.
dspx
Цитата(Костян @ Feb 3 2010, 11:06) *
Сигнал LOCKED с DCM(PLL) модуля в качестве какого сброса его оптимальнее использовать - синхронного или асинхронного?
И почему (ответ развернутый , пожалуйста)?
Кристалл Virtex (4..6).


Имхо если вы хотите держать в сбросе целый блок, работающий , допустим на 1 клоке, который является выходом вашего DCM, тогда хорошим тоном считается использовать синхронный сброс для всех регистров этого блока, которым и будет ваш инвертированный Locked.
Bad0512
Цитата(Костян @ Feb 3 2010, 19:31) *
как то не активно....
Нашел статейку от хилых на этот счет (см.. аттач) . Предлагаю пофлудить на эту тему. Всегда ли синхронный сброс позволит сэкономить LUT , либо данная экономия мизерная?

Думаю, экономия тут действительно мизерная. Тут есть другая проблема. Сигнал LOCKED вообще для сброса DCM использовать неправильно, ибо поведение этого сигнала весьма странное - после того как он встал в 1 при пропадении входного клока он так и останется стоять в 1. Гораздо правильнее для сброса DCM пользовать один из битов статуса с выхода DCM (какой - уже точно не помню, посмотрите сами). Он по крайней мере отражает реальное состояние DCM.
dspx
Цитата(Бэд @ Feb 6 2010, 21:32) *
Думаю, экономия тут действительно мизерная. Тут есть другая проблема. Сигнал LOCKED вообще для сброса DCM использовать неправильно, ибо поведение этого сигнала весьма странное - после того как он встал в 1 при пропадении входного клока он так и останется стоять в 1. Гораздо правильнее для сброса DCM пользовать один из битов статуса с выхода DCM (какой - уже точно не помню, посмотрите сами). Он по крайней мере отражает реальное состояние DCM.


Топикстартер не собирался сбрасывать сам DCM своим же локом. Это в принципе не имеет смысла. Речь шла о том чтоб вывести из состояния сброса схему, после того как DCM выставил locked.
Bad0512
Цитата(dspx @ Feb 7 2010, 04:11) *
Топикстартер не собирался сбрасывать сам DCM своим же локом. Это в принципе не имеет смысла. Речь шла о том чтоб вывести из состояния сброса схему, после того как DCM выставил locked.

Это почему же не имеет смысла? А если клок входной пропал, или (не дай бог) изменил свою частоту? Очень полезно в таких случаях сбросить DCM и по возможности всю логику, работающую от выходных клоков DCM.
А использовать LOCKED в качестве сброса на всю остальную схему не сбрасывая при этом саму DCM как-то странновато... Не проще ли сделать генератор импульса RESET на счётчике, который каждый раз по перезагрузке bitstream будет сбрасывать всё что нужно. И зачем тогда вообще DCM нужна?
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.