Hi, ich habe das Forum hoch und runter durchsucht und finde nichts was mir weiterhilft. Ich will das Tutorial hello_world mit Hilfe von NIOS II Eclipse 11.1 auf der Console anzeigen lassen. Im Grunde muss man selber nichts machen außer built und run. Jedoch wird bei mir in der NIOS-Console nichts angezeigt. In der anderen Console von NIOS II Eclipse steht folgendes: Processor is already paused Reading System ID at address 0x00081018: ID value was not verified: value was not specified Timestamp value was not verified: value was not specified Initializing CPU cache (if present) OK Downloading 00040000 ( 0%) Downloading 00046F4C (76%) Downloaded 28KB in 0.4s (70.0KB/s) Verifying 00040000 ( 0%) Verifying 00046F4C (76%) Verified OK Starting processor at address 0x000401B4 Ich habe System ID und Timestamp check ausgemacht. Zudem habe ich die richtie .sopc eingebunden und diese auch correct erstellt, da ich mit Hilfe dieser Datei via Quartus II eine LED habe blinken lassen. Warum verifiziert er nicht bis 100%? Und warum zeigt er nichts in der NIOS II Console nichts an?! MfG Himenek
Himenek schrieb: > Ich habe System ID und Timestamp check ausgemacht. Warum? Wenn es hier einen Fehler gibt, solltest du den erst mal beheben. > Zudem habe ich die richtie .sopc eingebunden und diese auch correct > erstellt, Das heist doch jetzt .sopcinfo und nicht mehr .sopc Bevor du irgend etwas ausführst, prüf erst mal, ob im Bildschirm "Debug Configurations" keine Fehler angezeigt werden und dass die System ID und Timestamp korrekt sind.
Hallo Himenek, 1. Warum verifiziert er nicht bis 100%? 2. Und warum zeigt er nichts in der NIOS II Console nichts an?! 1. "Er" verifiziert bis zu 100%, denn "er" sagt ja Verified OK 2. Ich kann dir nicht sagen, warum keine Ausgabe in der Konsole erfolgt. Du hast offensichtlich "run as hardware" angewählt. Nimm mal "debug as hardware" und steppe durch den Code. Da sieht man dann etwas besser, woran es liegen könnte. Timestamp und System ID sollten keine Auswirkung haben, die Checks schalte ich auch oft aus. Man muss sich aber schon sicher sein, dass das richtge sof-File in das FPGA geladen ist. Grüße, Harald
@Johannes stimmt es heißt .sopcinfo @Harald & Johannes Habe Debug as hardware gemacht und es kam keine Fehlermeldung. Im debug werden lediglich die drei schritte angezeigt, welche er ausführt zusammengefasst start() alt_main() main() hello_world es steht aber auch, terminated exit value: 0 was mich ein wenig wundert, denn es sollte ja ("Hello from Nios II!\n") herauskommen
Hallo, in einem ähnlichen Fall war bei mir mal der Clock zu hoch. Schau mal nach der Synthese welche max. Clock dein FPGA schafft, und geh mit dem Clock für den CPU-Core um 25% drunter. Ciao, Günter
Himenek schrieb: > @Johannes > > stimmt es heißt .sopcinfo > > @Harald & Johannes > > Habe Debug as hardware gemacht und es kam keine Fehlermeldung. > Im debug werden lediglich die drei schritte angezeigt, welche er > ausführt > > zusammengefasst > start() > alt_main() > main() hello_world > > es steht aber auch, terminated exit value: 0 > > was mich ein wenig wundert, denn es sollte ja ("Hello from Nios II!\n") > herauskommen Man kann irgendwo einstellen, ob die Standard-Ausgabe per JTAG-Uart oder auf einem normalen Uart ausgegeben werden soll. Vielleicht gibt es hier ein Problem? Hast du überhaupt einen JTAG-Uart im System. Kannst du das Programm im Einzelschritt-Modus debuggen?
Also im Debug stoppt er bei mir beim printf(...) Befehl, da dort automatisch ein Brakpoint gesetzt ist (Warum auch immer). Lasse ich ihn dann weiter laufen, stoppt er beim jtag_uart und zwar in der WHILE-Schleife: int altera_avalon_jtag_uart_close(altera_avalon_jtag_uart_state* sp, int flags) { /* * Wait for all transmit data to be emptied by the JTAG UART ISR, or * for a host-inactivity timeout, in which case transmit data will be lost */ while ( (sp->tx_out != sp->tx_in) && (sp->host_inactive < sp->timeout) ) { if (flags & O_NONBLOCK) { return -EWOULDBLOCK; } } return 0; } will ich von diesen Punkt aus weiterlaufen lassen, verweilt er endlos in dieser Schleife vermute ich. @Günter: Habe den Takt auf 37MHz runtergeschraubt und alles neu kompiliert @Johannes: Habbe das DE2-115 mit Cyclone IV E Chip. Also ist JTAG Uart vorhanden.
Himenek schrieb: > @Johannes: Habbe das DE2-115 mit Cyclone IV E Chip. Also ist JTAG Uart > vorhanden. Mit meine Frage habe ich eigentlich gemeint, ob du im SOPC-Builder einen JTAG-Uart eingefügt hast und ob die Standard-Ausgabe auch darauf eingestellt ist.
also den Jtag-Uart habe ich im SOPC eingebunden, jedoch weiß ich nicht, wo ich die Standardausgabe verändere. Bewusst habe ich nichts verändert.
@ Jochen: In NIOS II fpr Eclipse in hello_world_BSP unter Properties-> BSP Editor. Ist in STDIN und STDOUT JTAG_UART angegeben. Ist es das was du meintest mit Standardausgang? Wenn nein, wo finde ich den Standardausgang? Lg
Himenek schrieb: > Ist es das was du meintest mit Standardausgang? Ja, das ist dann so richtig. Aufgrund deiner Fehlerbeschreibung vermute ich, dass der Nios mit printf Zeichen in den JTAG-Uart schreibt, die Daten aus dem JTAG-Uart aber nicht abgeholt werden. Dadurch bleibt der Nios dann in der Endlosschleife hängen. Hast du evtl. im Tab "Target Connection" die Checkbox "Disable Nios II Console View" eingeschaltet? Bist du dir wirklich sicher, dass die richtige Konfiguration auf dem Altera läuft? Hast du System ID und Timestamp Check wieder eingeschaltet?
@Johannes: Habe unter "Target Connection" bei "Disable NIOS II Console" kein Häkchen, da ich es ja nicht disabled haben möchte. System ID und Timestamp habe ich immer noch als ignore, da unter "System ID Properties" überall "not found" steht. Muss ich, um System ID und Timestamp zu erhalten, in SOPC "sys id" hinzufügen oder wie kann ich diesen Fehler umgehen?
Himenek schrieb: > Muss ich, um System ID und Timestamp zu erhalten, in SOPC "sys id" > hinzufügen oder wie kann ich diesen Fehler umgehen? Ja, genau.
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.