jak provádět DFF v Verilog?

N

newcpu

Guest
Ahoj,
Chci zavést DFF v Verilog.A vím, že metoda v následujících případech:
Vždy @ (posedge CLK)
začít
if (EN)
q <= D;
jiný
q <= q;
konec
Mohli bychom se vyhnout "else q <= q, q <= q," s jiným způsobem?
S pozdravem,
newcpu

 
Ano, můžeme.Není nutné používat tento řetězec v kódu.Synthesizer chápat tento kód D flip flop:

Modul D_flipflop (d, q, hodiny, umožnit);

vstup d;
vstup hodiny;
vstup umožnit;

výstup q;

reg q;

Vždy @ (posedge hodiny), začíná-li (enable) q = d; konec

endmodule

 
Ne, není Povolit nevyžaduje.Můžete psát

Vždy @ (posedge ČLK) q <= D;

 
Kámo, zkuste toto:

Vždy @ (posedge CLK)
začít
if (reset)
q <= 1'b0;
jiný
q <= D;
konecPřidáno po 1 minuta:Kámo, zkuste toto:

Vždy @ (posedge CLK)
začít
if (reset)
q <= 1'b0;
jiný
q <= D;
konec

 
http://www.asic-world.com/examples/verilog/d_ff.html
Link je dobrá

 

Welcome to EDABoard.com

Sponsor

Back
Top