Цитата(MIX@ @ Jan 10 2013, 17:31)

Генератор внутреннего сброса синхронизируется от одного из сигналов, вырабатываемого PLL. И уже дальше этот внутренний резет идёт на входы асинхронного сброса всех остальных модулей.
Основной вопрос - корректно ли делать такую схему сброса в принципе?
Q-II Handbook (v12.1,p.501):
Цитата
Synchronized Asynchronous Reset
To avoid potential problems associated with purely synchronous resets and purely
asynchronous resets, you can use synchronized asynchronous resets. Synchronized
asynchronous resets combine the advantages of synchronous and asynchronous
resets. These resets are asynchronously asserted and synchronously deasserted. This
takes effect almost instantaneously, and ensures that no data path for speed is
involved, and that the circuit is synchronous for timing analysis and is resistant to
noise.
Figure 12–20 shows a method for implementing the synchronized asynchronous reset.
You should use synchronizer registers in a similar manner as synchronous resets.
However, the asynchronous reset input is gated directly to the CLRN pin of the
synchronizer registers and immediately asserts the resulting reset. When the reset is
deasserted, logic “1” is clocked through the synchronizers to synchronously deassert
the resulting reset.
[attachment=73941:Reset.jpg]
Цитата(MIX@ @ Jan 10 2013, 17:31)

Проблема - TimeQuest выдаёт дофигище нарушений ограничения типа Recovery/Removal практически во всех блоков всех тактовых доменов.
Нужно добавить в SDC:
Цитата
# Cut the asynchronous reset input
set_false_path -from [get_ports {reset_n}] -to [all_registers]