Nein sorry, ich kann nichts konkretes finden. Was du mal probieren
kannst:
könnte wenn das Tool sauschlecht ist, nicht erkannt werden. Versuchs
mal mit
Ich kann mir aber kaum vorstellen, dass sich jemand traut ein Tool mit
einem solchen Fehler rauszugeben.
Ansonsten ist evtl. gemeint, dass die Set/Reset Signale asynchron
arbeiten, was wenn möglich vermieden werden sollte und evtl. vom
gewählen Device gar nicht unterstützt wird. Der Grund ist, dass ein
beliebiges Timing des Reset-Signals im Vergleich zur Clock dazu führen
kann, dass nach dem Loslassen des Reset sofort eine Taktflanke kommt und
die Timing-Bedingungen der Register verletzt, und das System deshalb
nach einem Reset in einen unerwarteten oder sogar Metastabilien Zustant
kommen kann. Besser ist es deshalb, das Reset-Signal durch ein, zwei
getaktete Register laufen zu lassen (Synchronizer) und danach als
synchronen Reset zu verwenden, also statt
1 | process (clk, reset) begin
|
2 | if reset='1' then
|
3 | ...
|
4 | else if clk'event and clk='1' then
|
5 | ...
|
6 | end if;
|
7 | end process;
|
lieber
1 | process (clk) begin
|
2 | if clk'event and clk='1' then
|
3 | if reset='1' then
|
4 | ...
|
5 | else
|
6 | ...
|
7 | end if;
|
8 | end if;
|
9 | end process;
|
Ob das der Grund für die Fehlermeldung ist kann ich dir aber leider auch
nicht sagen.