Forum: Mikrocontroller und Digitale Elektronik pipelined prozessor in verilog


von thumbcontroller (Gast)


Lesenswert?

Hallo,
ich möchte gerne in Verilog einen pipelined Prozessor modellieren, der 
den Thumb Befehlssatz versteht.
Wieviele Stufen wähle ich am besten für die Pipeline? Reichen 3 Stufen?
FETCH,EXECUTE,WRITEBACK?
Die Befehle des Thumb-Befehlssatz dauern unterschiedlich lang. Eine 
Push-Instruktion kann zB alle Register einer Liste in den Stack 
schreiben  und dauert abhängig von der Anzahl der zu schreibenden 
Register viel länger als eine Add Operation. Wie lang wähle ich da die 
Pipelinestufen? Kann ich hier einfach sagen, jede Stufe benötigt einfach 
fest 10 Takte oder ist es besser die Stufen variabel zu halten, dh wenn 
ich eine push-OP mit 7 Registern in der Fetchstufe entdecke, dann 
verlängere ich die Execute und Writebackphase? Als Speicher steht mir 
nur SRAM mit 4096 16-Bitwörtern zur verfügung. Der Prozessor arbeitet 
aber mit 32bit Registern. Der Speicher beinhaltet sowohl die Daten als 
auch die Befehle und kann nicht gleichzeitig gelesen und beschrieben 
werden.

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
Noch kein Account? Hier anmelden.