Hi! Hat jmd eine Lösung für: ERROR:Simulator:607 - ISE Simulator is unable to elaborate this design due to specific coding constructs used in the design. Xilinx is actively working on reducing the number of conditions where this error occurs. For more information on this error, please consult Answer Record 24067 in Answers Database at http://www.xilinx.com/support. ? Ich hatte es heute nachmittag durch wildes herum place'n'routen ans laufen bekommen. Oder irgendwelche optionen umgestellt etc. Ich bekomms aber nicht wieder hin... Coding constructs sind nicht das problem, die test testbench besteht nur aus einem signal und sig <= not sig after 5ns; Ich verzweifel langsam grrrr... thnx
ups sorry ganz vergessen: Xilinx Webpack 9.2i / Linux (debian)
Das kann viele Gründe haben. Bei mir wars z.B. auch mal ein Funktionsaufruf in einer port-Deklaration: data : out std_logic_vector(get_width(xy) downto 0); -> get_width einer extra Konstanten zugewiesen und diese dann benutzt = funktioniert. Ansonsten zeig einfach mal den Code...
Beispiel, ok hier:
1 | -- TestBench Template |
2 | |
3 | LIBRARY ieee; |
4 | USE ieee.std_logic_1164.ALL; |
5 | --USE ieee.numeric_std.ALL; |
6 | |
7 | ENTITY testbench IS |
8 | END testbench; |
9 | |
10 | ARCHITECTURE behavior OF testbench IS |
11 | signal a : std_logic; |
12 | |
13 | BEGIN
|
14 | |
15 | |
16 | |
17 | -- Test Bench Statements |
18 | tb : PROCESS |
19 | BEGIN
|
20 | |
21 | wait for 100 ns; -- wait until global set/reset completes |
22 | |
23 | -- Add user defined stimulus here |
24 | |
25 | wait; -- will wait forever |
26 | END PROCESS tb; |
27 | |
28 | a <= not a after 5 ns; |
29 | |
30 | END; |
Das war nur zum testen. Aber auch diese datei bricht mit der fehlermeldung ab. Hab jetzt wieder zurück zu 8.2 gewechselt, da funktioniert nun komischerweise alles. War zu 9.2 gewechselt weil 8.2 die ausgabedaten aus einem ROM nicht richtig simuliert hat (immer 0000 als output).
@ Sssssss (Gast) > signal a : std_logic; > a <= not a after 5 ns; Dein a ist nicht initalisiert, somit U (undefined). Das kann der Simulator nicht invertieren. MfG Falk
doch, komischerweise geht das in 8.2... bei 9.2 und signal a : std_logic := '0'; kommt derselbe fehler ;)
> Dein a ist nicht initalisiert, somit U (undefined). Das kann der > Simulator nicht invertieren. Das müsste gehen, meines Wissens kommt dann X als Ergebniswert raus. In sowas unterscheidet sich die Simulation ja gerade von der Wirklichkeit (und ist dafür gedacht solche Fehler zu erkennen). Außerdem wäre das ein Fehler zur "Laufzeit" und "cannot elaborate" weist auf "Compilezeit" hin. @ Sssssss: Mach mal versuchsweise den Prozess weg, der ja eh nichts tut. Könnte sein, dass der Simulator mit den wait-Statements nicht klarkommt, oder damit dass nichts dazwischensteht. Das sollte zwar auch nicht sein, aber bei den Xilinx-tools sollte vieles nicht so sein wie es ist. Alternativ versuch an einen vernünftigen Simulator ranzukommen ;)
Ich verwende dann gern ghdl. Das meckert zwar andere Syntaxsachen an, aber so kommt man meist der Ursache auf die Schliche. Rick P.S.: Im Anhang mal ein Makefile für ghdl.
danke! wer ich mir bald mal ansehen. erstmal hab ich es jetzt mit der 8.2er simuliert (und teilweise gebugfixt) bekommen g
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.