Forum: FPGA, VHDL & Co. Xilinx Webpack: ERROR:Simulator:607


von Sssssss (Gast)


Lesenswert?

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

von Sssssss (Gast)


Lesenswert?

ups sorry ganz vergessen: Xilinx Webpack 9.2i / Linux (debian)

von Jan M. (mueschel)


Lesenswert?

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...

von Sssssss (Gast)


Lesenswert?

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).

von Falk B. (falk)


Lesenswert?

@ 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

von Sssssss (Gast)


Lesenswert?

doch, komischerweise geht das in 8.2...

bei 9.2 und
signal a : std_logic := '0';
kommt derselbe fehler ;)

von Morin (Gast)


Lesenswert?

> 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 ;)

von Rick Dangerus (Gast)


Angehängte Dateien:

Lesenswert?

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.

von Sssssss (Gast)


Lesenswert?

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
Noch kein Account? Hier anmelden.