Forum: FPGA, VHDL & Co. double floating-point IEEE 754 nach ASCII für LCD


von Oliver H. (olliho)


Lesenswert?

Hallo,


ich habe jetzt schon eine weile gegoogelt und finde einfach keine 
Lösung.
Ich habe einen FPGA (Xilinx Virtex4lx60) auf dem sich einpaar Ergebnisse 
als 64 Bit Floating-Point Zahl (nach IEEE 754) befinden.
Nun will ich diese Ergebnisse an ein Display schicken um sie 
darzustellen. Dafür müssen sie aber in einen ASCII-String konvertiert 
werden.

Wer kann mir da helfen? Würde mich sehr glücklich machen.


MfG

OlliHo

von Morin (Gast)


Lesenswert?

Für ein Display muss es nicht allzu schnell sein - mehr als 2x pro 
Sekunde wirst du das Display eh nicht updaten wollen, damit der Wert 
auch bei Änderungen lesbar bleibt.

Für die Umwandlung brauchst du eine State Machine. Allerdings wird die 
bei der Aufgabe schon etwas komplexer. Wenn du nicht sowieso eine CPU 
parat hast, könntest du für den Anfang einen Picoblaze nehmen, und eine 
entsprechende Software-Umwandlung dafür schreiben. Manual und Quellcode 
für den Pico gibt es bei Xilinx, programmiert wird in Assembler.

von Oliver H. (olliho)


Lesenswert?

Hi,

Danke für die Antwort das mit der Statemachine is schon klar aber wie 
ich das Zahlenformat konvertieren soll.... da muss es doch diverse Cores 
geben?

Würde ganz gerne auf einen Picblaze verzichten und die Umwandlung direkt 
mit synthetisierbarem! VHDL-Code machen.


freue mich sehr falls jemand noch einen Tip hat.


MfG

OlliHo

von Chris (Gast)


Lesenswert?

Wenn sie nur dem Debug dienen, als Hex ausgeben.
Andernfalls das Ergebnis mit 1000 Multiplizieren (als Beispiel),
und dann von Float nach Int wandeln. Dafür gibt es genug fertige Cores.
Dann nach der dritten Stelle ein Komma einfügen, bei 1000.

von Oliver H. (olliho)


Lesenswert?

Danke für den Tip!

Also gibt es Cores die Integers in einen Ascii-String wandeln, das aber 
nicht mit Doubles können. Ich werd mich mal auf die suche nach nem 
passenden Core machen.

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.