Simple FSM 3(asynchronous reset)

See also: State transition logic for this FSM

The following is the state transition table for a Moore state machine with one input, one output, and four states. Implement this state machine. Include an asynchronous reset that resets the FSM to state A.

题目网站
a

module top_module(
    input clk,
    input in,
    input areset,
    output out); //

    parameter A=2'b00,B=2'b01,C=2'b10,D=2'b11;
    reg [1:0]state,next_state;
    // State transition logic
    always@(*)begin
        case(state)
            A:begin
                next_state=(in)?B:A;
            end
            B:begin
                next_state=(in)?B:C;
            end
            C:begin
                next_state=(in)?D:A;
            end
            D:begin
                next_state=(in)?B:C;
            end
        endcase
    end
    // State flip-flops with asynchronous reset
    always@(posedge clk or posedge areset)begin
        if(areset)begin
            state<=A;
        end
        else begin
            state<=next_state;
        end
    end
    // Output logic
    assign out=(state==D)?1:0;
    
endmodule
posted @   江左子固  阅读(28)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· winform 绘制太阳,地球,月球 运作规律
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· AI与.NET技术实操系列(五):向量存储与相似性搜索在 .NET 中的实现
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
点击右上角即可分享
微信分享提示