Wir schreiben einen Miniprozessor, der Informationen gemäß Anweisungen analysiert, die in seinen Speicher geschrieben wurden.FSM des Miniprozessors steckt in Zweig-Gleichschleife
Die erste Anweisung (Adresse 0 im Speicher) in unserer Testbench ist eine While-Schleife geschrieben als ein Zweig gleich: if (delimeter == 0) jump 0
.
Um zwischen dem Fall des Wartens auf Delimeter und einem allgemeinen Fall von Verzweigung gleich (oder Verzweigung ungleich) zu unterscheiden, fügten wir ein spezifisches Warte_für_Delimeter-Signal hinzu, aber das Befehlsholen dauert einen Taktzyklus und weil die Pipeline ein NOP einfügt (keine Operationsanweisung) für eine genommene Verzweigung, in der nächsten Uhr kann waiting_for_delimeter nicht 1 sein, weil sie eine NOP "sieht" und nicht die Verzweigungsgleichheitsanweisung.
Kann uns bitte jemand helfen, dies zu lösen?
Danke!
über welche sprache sprichst du? Können Sie mehr Code bereitstellen? – Serge
Ich bin in Verilog – efalk
[siehe entsprechenden Code hier] [1] [1] schreibt: https://i.stack.imgur.com/cRDUn.png – efalk