Sythesis der Finite State Machine (FSM)

T

tariq786

Guest
Ich habe synthetisiert FSM und Daten Weg für eine "Design".Wenn ich die Post-Gate-Level-Synthese Verilog Simulation, ich xxxxxxxxx.

Ich verfolgt der Grund, und der Grund ist, dass in einem der FSM Staaten, ich bin mit "wenn die Bedingung" über einen externen Eingang (aus einem anderen Modul), ändert sich nicht in einem Taktzyklus.Zum BeispielState_Si:
beginnen
if (DONE) / / Done (ein externes Signal) dauert 10 Taktzyklen zu wahren
next_state = State_Sj;
sonst
next_state = State_Si;
EndeSo wird erreicht, wenn State_Si das erste Mal, Geschehen ist weder wahr noch falsch.Es ist nicht bekannt.Nach 10 Taktzyklen, wird es 1 und damit in diesen 10 Taktzyklen, bleibt es in dem Zustand, State_Si.

Das Ding läuft absolut Geldbuße vor Synthese Behavioral (goldene) Simulation, aber nicht nach Synthese.

Alle Ideen, wie dieses Problem zu lösen?

Jeder Link oder Tutorial wird sehr geschätzt.

Ich hoffe, dass ich deutlich gemacht,.Lassen Sie es mich wissen, wenn Sie weitere Erklärung.

Thanks a lot.

 
Na Targach Automaticon, Mitsubishi Electric zaprezentuje w tym roku aż 5 robotów przemysłowych MELFA, w różnorodnych aplikacjach.

Read more...
 
Ich würde empfehlen, einen Reset-Zustand, in dem Sie zunächst alle Ihre Ausgänge auf 0 und starten Sie dann den Prozess.diese Weise vermeiden können und die x-und keine Problem-Synthese

haneet

 
Ich habe es in den anderen immer blockieren.Das ist

immer @ (posedge clk)
if (reset)
current_state <= 0;
sonst
current_state <= next_state;

Ist es das, was du meinst?
Was meinen Sie alle Ihre Ergebnisse?Sind Sie sprechen über den Zustand Flip-Flops wie im obigen Beispiel, oder was?

Denken Sie daran, spreche ich über die Kontrolle von einem externen Eingang, deren Wert bestimmt, in die nächste staatliche oder nicht.

 

Welcome to EDABoard.com

Sponsor

Back
Top