描述
某同步时序电路转换表如下,请使用D触发器和必要的逻辑门实现此同步时序电路,用Verilog语言描述。
电路的接口如下图所示。
输入描述
input A ,
input clk ,
input rst_n
输出描述
output wire Y
解题分析
本想着用状态机,不过题目要求使用D触发器,差点没想出来。
参考代码
`timescale 1ns/1ns
module seq_circuit(
input A ,
input clk ,
input rst_n,
output wire Y
);
reg q0, q1;
always@(posedge clk or negedge rst_n) begin
if(~rst_n) begin
q1 <= 0;
end
else begin
q1 <= A ^ q0 ^ q1;
end
end
always@(posedge clk or negedge rst_n) begin
if(~rst_n) begin
q0 <= 0;
end
else begin
q0 <= ~q0;
end
end
assign Y = q0 & q1;
endmodule
注:解题分析来源于网友,如有侵权,请告删之。