Forum: FPGA, VHDL & Co. FATAL ERROR in Xilinx ISE


von The Scientist (Gast)


Angehängte Dateien:

Lesenswert?

Hi,

ich schreibe gerade an dem Code für einen XC9572 als Speichercontroller. 
Der Code besteht aus drei VHDL-Modulen die bestimmte Bausteine 
enthalten. Der Syntaxcheck verläuft positiv, aber wenn ich den Code 
implementieren will, schreibt er folgendes:

FATAL_ERROR:Xst:Portability/export/Port_Main.h:127:1.17 - This 
application has discovered an exceptional condition from which it cannot 
recover.  Process will terminate. For more information on this error, 
please consult the Answers Database or open a WebCase with this project 
attached at http://www.xilinx.com/support.

Laut Xilinx sollte dieser Fehler in meiner Version(9.2) bereits gefixed 
sein und auch die möglichen Fehlerursachen, die dort aufgelistet sind 
treffen nicht auf mein projekt zu soweit ich sie verstehe. Ich arbeite 
erst seit kurzem mit programmierbaren Logikbausteinen und habe deshalb 
auch wenig Hintergrundwissen.

Der Code ist zwar noch nicht ganz fertig, aber zumindest kompilieren 
lassen sollte er sich. Falls jemand eine Ursache des Fehlers kennt, wäre 
ich sehr daran interressiert. Als rar hab ich mal die drei vhd's im 
anhang falls der Fehler dort liegt.

mfg The Scientist

von Mike (Gast)


Lesenswert?

Der Code funktioniert nicht. binary6Counter sollte vermutlich 
binary16Counter heißen und die Ports stimmen auch nicht.

von The Scientist (Gast)


Lesenswert?

aha,
ich kann die stelle mit dem binary6Counter grad nich finden, sag mal 
bitte datei und zeile.
Und welche Ports meinst du stimmen nicht?

mfg The Scientist

von Mike (Gast)


Lesenswert?

In logicAnalysator wird überall binary16Counter verwendet. Die Datei und 
die Entity drin hat aber den Namen binary6Counter. Wenn man das ändert 
kommt als nächstes die Beschwerde das ein Port ctrActive fehlt.

von The Scientist (Gast)


Angehängte Dateien:

Lesenswert?

oh verdammt ich hab ausversehen die falsche datei verschickt. tut mir 
leid. hier die richtige.

von Mike (Gast)


Lesenswert?

Bei mir beschwert sich ISE (9.2.03) über eine Zeile in binary16Counter.
1
ERROR:Xst:827 - "D:/Prog/vhdl/logikanalysator/binary16Counter.vhd" line 56: Signal addressBuff cannot be synthesized, bad synchronous description.

Wenn du den flankengetriggerten Reset ausbaust, dann lässt sich das 
Design auch übersetzen.

Sollte etwa so aussehen:
1
  if (extReset='1') then
2
    addressBuff <= "0000000000000000";
3
  elsif (counterClk'event and counterClk='1') then

von The Scientist (Gast)


Lesenswert?

hab das geändert aber der Fehler tritt weiterhin auf. Allerdings ist es 
merkwürdig das dein ISE sich darüberbeschwehrt aber meins net. Für 
welchen XC9572 haste das denn gemacht?

von Mike (Gast)


Lesenswert?

Ich habe einen XC9572-7-PC44 eingestellt. Vielleicht liegt es ja auch 
irgendwie an deinen restlichen Projektdateien? Versuche mal ein neues 
Projekt zu machen oder die generierten Files zu löschen (Menupunkt 
"Cleanup Project Files").

von Mike (Gast)


Angehängte Dateien:

Lesenswert?

Ich habe hier mal noch den Report angehängt.

von The Scientist (Gast)


Lesenswert?

so habe jetzt die projekt files aufgeräumt und jetzt ist dieser FATAL 
ERROR weg. Allerdings meckert er jetzt an meinen resetvorgang im Zähler 
rum. Es ist der gleiche Fehler den du oben beschrieben hast. Könnte es 
sein, das auf diesen addressBuff entweder nur lesend oder nur schreibend 
in einer Funktion zurückgreifen darf? Wenn ja, wie lässt sich denn dann 
ein Reset realisieren?

von na (Gast)


Lesenswert?

Du willst aus addressBuff ein Register bauen nehme ich an. Schreiben und 
lesen geht schon, du liest den Ausgang des Registers und beschreibst es 
neu.

Ein flankensensitives reset lässt sich nicht in dieser Form beschreiben. 
Ein normales FF hat genau einen Takteingang und einen Reseteingang (der 
aber nicht auf eine Flanke reagiert sondern auf ein Level).

Also, entweder das Level des reset abfragen oder mit dem Takt abtasten 
wenn es unbedingt flankensensitiv sein muss.
Außerdem das addressCount mit in den Taktzweig rein.

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.