Problem mit NAVRE Softcore

#5437009
Lesenswert?

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
#5437146
Lesenswert?

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

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren