Pemodelan tepi positif memicu T flip flop dengan asynchronous clear
Aug 19 2020
Saya memodelkan tepi positif yang dipicu T flip flop dengan asynchronous clear. Ini kodenya:
module t_flip_flop_exam (q,clk,clear,t);
input t ;
input clk;
input clear;
output reg q ;
reg internal_t;
always @ (clear)begin
if (clear==1)
q=0;
else
q=q;
end
always @ (posedge clk)begin
if (t==1)
q=~q;
else
q=q;
end
endmodule
Apakah ini kode yang efisien? Apakah boleh memisahkan always
blok, atau adakah cara untuk menyertakan kode perilaku sinyal clear
dan clk
sinyal dalam satu always
blok?
Jawaban
1 toolic Aug 19 2020 at 17:33
Ini adalah cara umum untuk menggabungkan always
blok:
module t_flip_flop_exam (q,clk,clear,t);
input t;
input clk;
input clear;
output reg q;
always @(posedge clk or posedge clear) begin
if (clear)
q <= 0;
else if (t)
q <= ~q;
end
endmodule
Lebih baik membuat tugas ke sinyal dari satu always
blok.
Picu always
blok pada posedge
dari clear
sehingga sintesis dapat menyimpulkan logika yang diinginkan (asynchronous clear, synchronous toggle).
Gunakan tugas nonblocking ( <=
) untuk logika sekuensial.
Tidak perlu dilakukan secara eksplisit q=q
karena sudah tersirat.
Kiat Pemilik Anjing yang Bermanfaat: Mengapa Penting untuk Membiarkan Anjing Anda Mengendus di Jalan
Jana Duggar: Semua yang Dia Katakan Tentang Cinta dan Jendela 5 Tahunnya untuk Menemukan 'Yang Satu'