描述

        某同步时序电路转换表如下,请使用D触发器和必要的逻辑门实现此同步时序电路,用Verilog语言描述。

根据状态转移表实现时序电路-LMLPHP

电路的接口如下图所示。

根据状态转移表实现时序电路-LMLPHP

输入描述

      input                A   ,
      input                clk ,
      input                rst_n

输出描述        

      output   wire        Y  

解题分析

本想着用状态机,不过题目要求使用D触发器,差点没想出来。

根据状态转移表实现时序电路-LMLPHP

根据状态转移表实现时序电路-LMLPHP

根据状态转移表实现时序电路-LMLPHP

 参考代码

`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


注:解题分析来源于网友,如有侵权,请告删之。

04-07 07:56