[FPGA] cnt_priority 설계
2021. 11. 10. 00:01ㆍ코딩/FPGA
cnt_priority.v
module cnt_priority(
input rst, clk,
input cen, clr,
input ld,up_dn,
input [7:0] ldv,
output reg [7:0] qout
);
always @(negedge rst or posedge clk)
begin
if (rst == 0)
qout <= 0;
else
if (cen == 0)
qout <= qout;
else if (clr == 1)
qout <= 0;
else if (ld == 1)
qout <= ldv;
else if (up_dn == 1)
if (qout >= 199)
qout <= 0;
else
qout <= qout + 1;
else
if ((qout == 0 ) | (qout > 199))
qout <= 199;
else
qout <= qout - 1;
end
endmodule
cnt_priority_tb
module cnt_priority_tb();
reg rst, clk, cen, clr, ld, up_dn;
reg [7:0] ldv;
wire [7:0] qout;
cnt_priority u_cnt_priority(
.rst (rst), .clk (clk), .cen (cen), .clr (clr), .ld (ld), .up_dn (up_dn), .ldv (ldv), .qout (qout)
);
initial begin
rst = 0;
clk = 0;
cen = 0;
clr = 0;
ld = 0;
up_dn = 1;
ldv = 10;
#50 rst = 1;
#50 cen = 1;
#50 cen = 0;
#50 cen = 1;
#200 clr = 1;
#50 clr = 0;
#200 ld = 1;
#50 ld = 0;
#500 up_dn = 0;
end
always clk = #50 ~clk;
endmodule
시뮬레이션 파형

'코딩 > FPGA' 카테고리의 다른 글
[FPGA] Stopwatch + Clock + LED bar (0) | 2021.11.10 |
---|---|
[FPGA] Watch + Fan + FND 구현 (0) | 2021.11.10 |
[FPGA] FND_Counter 리셋 추가 구현 (0) | 2021.11.10 |
[FPGA] cnt4 출력값 7-segment LED에 표시하기 (0) | 2021.11.10 |
[FPGA] mux4b 설계 (0) | 2021.11.10 |