Debugausgaben per UART/RS232

Gast #888426
Hallo allerseits,

auf 'nem µC hab ich es immer sehr genossen, Debugausgaben per UART zu 
haben und somit Fehler oder Zustände im Programm ausgeben zu lassen. 
Diese Möglichkeit hätte ich auch gern auf meinem FPGA Board. Doch nun 
ist die Frage, wie man da am Besten vorgeht.

Ich fang mal mit den Anforderungen an:
- das Timing soll durch die Ausgaben möglichst nicht verändert werden, 
die Ausgabe soll also parallel zum Programmfluss laufen, ohne dass der 
Programmzyklus um einige Takte verlängert wird
- Es reicht, die Ausgabe eine Konstante Anzahl von Zeichen (4 oder 8 
Byte) zu beschränken
- Debugausgaben sollen von verschiedenen Komponenten ausgegeben werden 
können.
- es sollen nur Daten vom FPGA zum PC gesendet werden.

Was ich mir dazu überlegt habe:

Es gibt ein UART_TX_Modul mit einem 32-64 bit breiten Datenbus und einem 
Write_enable als Eingang. Der Datenbus speist einen FIFO, aus dem FIFO 
werden dann die Daten über die Serielle Schnittstelle rausgesendet.

Vor dem TX Modul gibt es noch einen UART_DATENBUS_ARBITER, der von jeder 
komponennte einen Datenbus und ein Write_enable erhält und diese 
Eingangsbusse dann zyklisch oder bei Bedarf auf den Ausgangsdatenbus zum 
UART_TX_MODUL sendet.

Das ist eine Möglichkeit, das ganze zu implementieren, aber irgendwie 
kommt es mir doch komplizierter als notwendig vor. Ist es wirklich 
notwendig, von jeder Komponente einen 64 bit breiten Datenbus 
wegzuführen? Im Moment geh ich davon aus, dass ich wohl so ca 10 
Komponenten haben werde, die Debugausgaben machen können sollen.

Wenn jemand Verbesserungsvorschläge hat, immer her damit.

Ach ja, hier noch einmal ein paar infos zur Entwicklungsumgebung: es 
wird ein Altera Stratix II unter Qartus in VHDL programmiert

Vielen Dank und viele Grüße,
Start-ING

Antwort schreiben

Eine eigene Frage? Dieser Thread ist über 18 Jahre alt. Stell sie in einem eigenen Thread – dort lesen mehr Leute mit, und sie wird öfter und schneller beantwortet.

Neuen Thread starten

Eine Lösung, Ergänzung oder Rückmeldung zu diesem Thread? Dann antworte hier.

Formatierung
  • [c]C-Code[/c]
  • [vhdl]VHDL-Code[/vhdl]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.