jk触发器的verilog程序
时间: 2023-12-05 20:05:48 浏览: 99
触发器-verilog代码
4星 · 用户满意度95%
以下是一个JK触发器的Verilog程序:
```verilog
module JK(q, qn, j, k, clk, rst);
output q, qn;
input j, k, clk, rst;
reg q, qn;
always @(posedge clk or negedge rst) begin
if (rst == 0) begin
q <= 0;
qn <= 1;
end else begin
case ({j, k})
2'b00: begin // 保持
q <= q;
qn <= ~q;
end
2'b01: begin // 置0
q <= 0;
qn <= 1;
end
2'b10: begin // 置1
q <= 1;
qn <= 0;
end
2'b11: begin // 取反
q <= ~q;
qn <= ~q;
end
endcase
end
end
endmodule
```
该程序定义了一个JK触发器模块,包含了输入j、k、时钟clk、异步复位信号rst和输出q、qn。在时钟上升沿或复位信号下降沿时,根据输入的j、k信号和当前状态,通过case语句更新输出q和qn的值。其中,2'b00表示保持状态,2'b01表示置0状态,2'b10表示置1状态,2'b11表示取反状态。
阅读全文