Hallo an alle :) Ich hab, mal wieder, ein paar Fragen bzgl. Xilinx. In diesem Fall geht es vor allem um das Debuggen von Software, die auf dem PowerPC läuft bzw. laufen sollte :) Ich arbeite vor allem mit dem SDK von Xilinx, also auch dem grafischen Debugger, der dabei ist. Ich hab ein Board mit einem Xilinx FX-100 FPGA und eben einem PowerPC drauf. Ich schreibe Software für diesen PowerPC. Ansonsten ist noch BRAM, OCM, MDM, INTC, TIMER auf dem Board vorhanden. Es ist kein Evaluation Board von Xilinx, sondern ein Custom Board. Ich habe auch schon erfolgreich Software geschrieben, nur leider ist das mit dem Testen/Debuggen immer so eine Sache ... es ist wie eine Lotterie, ob es funktioniert oder nicht ... manchmal gibts Heap/Stack Fehlermeldungen, manchmal lässt sich der PowerPC nicht merh stoppen, manchmal tritt ein "Program Interrupt" auf. Ich wollte mal wissen, ob es vll so eine gute Vorgehensweise gibt, wie man Software debuggen kann, momentan läuft das bei mir immer so ab: - Bitstream wird im EDK generiert - Software im SDK schreiben - "Program FPGA" im SDK wählen, um den Bitstream zu laden - "connect mdm -uart" und "read_uart start" in der XMD Console ausführen, dass ich auch eine Ausgabe kriege - Im SDK dann die Software mit "Debug" starten - Jetzt kommen die ganzen Fehlermeldungen, wenn ich Glück habe, dann springt er auch mal direkt an meinen Breakpoint, manchmal ^^ Kennt ihr auch solche Probleme? :) Oder vll hat ja jemand eine geschickte Lösung dafür :) Das Debuggen im EDK geht sowieso nicht, er verbindet sich zwar, lädt das Programm und wenn ich run machen, dann wird die Verbindung getrennt und ich krieg wieder das Fenster mit den Verbindungseinstellungen ^^ Vielen Dank!!! PS: Da wäre ja noch was ^^ Wenn ich anstatt "read_uart start" die Ausgabe an einen Terminalserver weiterleiten will mit "terminal -jtag_uart_server", dann geht das auch, mehr oder weniger, die Ausgabe kommt halt in die XMD Console. Verbinde ich z.B. mit HypterTerminal und will dann mein Programm debuggen, dann bleibt das SDK bei "Connecting to Target ..." hängen.
Hm, das ist schon mal gut. Hast du mal mit Eclipse probiert? Mein Diplomand hat auch anfangs viel über das Xilinx Zeugs geflucht, mit dem Eclipse ging´s dann besser.
Das SDK, was auf eclipse basiert, ist ja genau mein Problem: Es funktioniert nicht (immer). Manchmal, mit Glück geht es. Gruß!
Mittlerweile hab ich es zwar hinbekommen, dass ich Software laufen lassen kann und auch eine Ausgabe bekomme, aber das Debuggen selber nicht ^^ Ich arbeite nur im EDK, schreib da meinen C-Code. Mache "Download Bitstream", öffne XMD, verbinde mit MDM und starte Terminal und lade dann per XMD meine elf hoch (dow xx.elf). Das geht dann meistens so :) Jedoch ist da noch was anderes ... in unregelmäßigen Abständen startet mein Programm neu, ich seh das ja an meiner Ausgabe, wenn er auf einmal wieder vom Anfang etwas ausgibt. Woran liegt das? Ich hab eigentlich keine Interrupts aktiviert und Watchdog kann es auch nicht sein. Gibt es irgendwas beim PowerPC, das dafür sorgen könnte? Gruß!
@Christian R. (supachris), ist eure Eclipse-Umgebung inkl. PPC-Compiler/Debuger frei erhältlich? 400-500Euro für Software auszugeben ist mir für Hobbies doch zu viel. Gruss und Danke, Jörg
Öhm, hab ich nicht privat, wir haben auf Arbeit natürlich eine Lizenz für das ISE Foundation incl. Modelsim XE und EDK. Und dazu diesen Wartungsvertrag. kostenlos ist glaub das EDK nicht zu haben.... Mit der 9.2 und dem USB Debugger und allen Service Packs gings dann recht zuverlässig bei uns, jedenfalls hat mein Diplomand dann gut arbeiten können.
Hi Spiele mich auch grad ein bisschen mit dem PowerPC rum. Habe auch ein Custom Board mit einem Virtex II Pro Board. Gibt es bei dem PowerPC auch eine Moeglichkeit ueber das JTAG Interface zu debuggen? Ehrlich gesagt weiss ich auch nicht 100% wie ich die UART hier einbinde. Der Target FPGA hat ein RX Pin und einen TX Pin der dann auf einen Control FPGA geht. Von diesem Control FPGA geht dann der RX und TX Pin auf eine UART. Weisst du hier vielleicht wie ich den PowerPC mit der UART verbinden kann?
Naja, nachdem du das UART Modul im EDK in das System gebaut und an den PLB angeschlossen hast, musst du die beiden Anschlüsse für RX und TX noch mit "Make External" nach außen führen. Und dann in der UCF-Datei die passenden Hardware-Pins des FPGA eintragen. JTAG geht natürlich auch, dazu muss das JTAGPPC Modul in das System eingebaut werden. Alles auch über´s EDK. So gehts zumindest beim V4.
Hi Hat jemand von euch vielleicht das UART Interface auch in einem C Program selber erfolgreich verwendet? Ich moechte folgendes tun: In einer Schleife den Input von der UART einlesen und falls ein bestimmtes Kommando eingeben wurde moechte ich eine Berechnung starten? Gibt es hier sowas wie ein Tutorial wie ich die RS232 Schnittstelle verwenden kann fuer diese Zwecke? Danke!
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.