Hallo, ich muss in einem Projekt eine 8-bit Binärzahl auf 4 7-Segmentanzeigen als Ziffern anzeigen lassen. Ich habe einen Code geschrieben, der das (meiner Meinung nach...)eigendlich tun sollte, ich bekomme aber vom ISE WEB-PACK 12.2 folgende Fehlermeldung: INTERNAL_ERROR:Xst:cmain.c:3483:1.56.16.1 - Process will terminate. For technical support on this issue, please open a WebCase with this project attached at http://www.xilinx.com/support. Zur Funktion:ich frage acht Schalter ab und speichere deren Wert in DATA. Danach wird DATA in ein Integer umgewandelt und entsprechend bearbeitet, so dass sich daraus die vier Ziffern ergeben. Meine Ideen gehen mir langsam aus, aber vielleicht könnt Ihr mal über den Quelltext schauen, vielleicht habe ich ja irgendwas übersehen bzw. der Fehlerteufel hat sich bei mir eingeschlichen... Vielen Dank schon mal im vorraus. Philip Achso, programmiert werden soll ein Spartan 3E-100 FPGA
PSD schrieb: > eine 8-bit Binärzahl auf 4 7-Segmentanzeigen als Ziffern anzeigen lassen. Mir würden da 3 7-Segmentanzeigen reichen...
Es müssen leider vier sein(sind drei Ziffern plus ein Minuszeichen). Das ist für einen Temperatursensor, der von ca. -100 bis +120°C die Temperatur anzeigen soll. Ich denke aber nicht, dass die Anzahl der verwendeten Ziffern der Grund für die Fehlermeldung ist...
TEMP_10 <= TEMP / 10; Du hast einen FPGA, der teilen kann? Ich muss die Division mühsam nachstellen, z.B. mit dem Algorithmus von Lothar Miller: http://www.lothar-miller.de/s9y/archives/29-Division-in-VHDL.html
Keine Ahnung was xst damit macht, quartus synthetisiert Divisionen problemlos, auch mit nicht konstanten Werten (integer x / y) Gibt eventuell schlechte Timings (falls ich mich richtig erinnere warens ~16MHz für einen 16 Bit durch 8 Bit Dividierer auf einem Cyclone 2), geht aber für den Anfang. Klar macht was sequentielles hier mehr Sinn, aber ein Prozessabsturz deswegen....
abc schrieb: > Gibt eventuell schlechte Timings Und zudem braucht eine kombinatorische Division eine Unmenge Ressourcen... Alexander Schmidt schrieb: > Mir würden da 3 7-Segmentanzeigen reichen... Und ich würde das mit einer Tabelle ganz ohne Division machen: http://www.lothar-miller.de/s9y/archives/33-Byte-nach-BCD.html
Problem gelöst. Ich hab es mit der Tabelle gemacht und es funktioniert. Vielen Dank nochmal für die Tip. Gruß Philip
>> Und zudem braucht eine kombinatorische Division eine Unmenge >> Ressourcen... Unmenge... bei 8 Bit durch eine Konstante dürfte die Zahl der benötigten LUTs sehr begrenzt sein. Vielleicht 200-300 ... fürs experimentieren jedenfalls in Ordnung und einen Absturz rechtfertigt das in meinen Augen keinesfalls.
abc schrieb: > und einen Absturz rechtfertigt das in meinen Augen keinesfalls. Ob der Absturz von irgendeiner Division kommt, ist m.E. nicht geklärt...
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.