πώς να εφαρμόσει μια DFF σε Verilog;

N

newcpu

Guest
Γεια σου,
Θέλω να εφαρμόσει DFF στην Verilog.Και ξέρω τη μέθοδο στα ακόλουθα:
πάντα @ (posedge CLK)
αρχίζω
αν (EN)
q <= d?
άλλος
q <= q?
τέλος
Μπορούσαμε να αποφευχθεί η "αλλιώς q <= q? Q <= q?" Με άλλη μέθοδο;
Με τις καλύτερες ευχές,
newcpu

 
Ναι, θα μπορούσαμε.Δεν είναι απαραίτητο να χρησιμοποιήσει αυτό το string στον κώδικά σας.Synthesizer κατανοήσουν αυτόν τον κώδικα ως ένα D flip flop:

ενότητα D_flipflop (δ, q, ρολόι, επιτρέπουν)?

εισροών d?
ρολόι εισόδου?
εισόδου επιτρέψει?

q εξόδου?

reg q?

πάντα @ (posedge ρολόι) αρχίζει εφόσον (επιτρέπουν) q = d? τέλος

endmodule

 
Είναι δυνατή πραγματικά απαιτείται;

 
Οχι, Ενεργοποίηση δεν απαιτείται.μπορείτε να γράψετε

πάντα @ (posedge clk) q <= d?

 
dude, δοκιμάστε το εξής:

πάντα @ (posedge CLK)
αρχίζω
if (reset)
q <= 1'b0?
άλλος
q <= d?
τέλοςΠροστίθεται μετά το 1 λεπτό:dude, δοκιμάστε το εξής:

πάντα @ (posedge CLK)
αρχίζω
if (reset)
q <= 1'b0?
άλλος
q <= d?
τέλος

 
http://www.asic-world.com/examples/verilog/d_ff.html
Link είναι καλό

 

Welcome to EDABoard.com

Sponsor

Back
Top