Hallo zusammen, ich wollte mal fragen, ob hier schonmal jemand den NAVRE Softcore AVR verwendet hat? Ich habe versucht den Core auf einem Cyclone II zu synthetisieren, was soweit funktioniert. Leider habe ich das Problem, daß RCALL nicht funktioniert, wie es soll. Wenn der AVR ein RCALL ausführt, dann wird der PC auf den Stack gepusht und dann der Offset für den Sprung aus dem ROM geholt. Allerdings wird der Offset aus der Speicherstelle NACH dem RCALL geholt, wesswegen der Sprung ins Nirvana führt. Ich hab mir das Verilogmodul angeschaut, kann mir das Problem aber noch nicht erklären. Hat jemand den Core erfolgreich am laufen? Gruß, SIGINT
Zumindest auf Opencores steht bei der Beschreibung: "Even though simple C programs can be run, the Navré softcore still contains several bugs and testers are most welcome." und im Verilog-Code des Cores bei der Implementierung von RCALL:
1 | 16'b1101_xxxx_xxxx_xxxx: begin |
2 | /* RCALL */ |
3 | /* TODO: in which order should we push the bytes? */ |
4 | dmem_sel = DMEM_SEL_SP_PCL; |
5 | dmem_we = 1'b1; |
6 | push = 1'b1; |
7 | next_state = RCALL; |
8 | end |
Da scheint noch einiges im Argen zu liegen... Evtl. ist der AX8 (https://opencores.org/project/ax8) eine Alternative? -- Michael
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.