Verilog刷题笔记49——Fsm1同步复位

题目:

解题:

bash 复制代码
module top_module(clk,reset,in,out);
    input clk;
    input reset;
    input in;
    output out;
    
    parameter A=0,B=1;
    reg [1:0]current_state,next_state;
    
    always@(posedge clk)begin
        if(reset)
            current_state=B;
        else
            current_state=next_state;
    end
    
    always@(*)begin
        case(current_state)
            A:next_state=(in==0)?B:A;
            B:next_state=(in==0)?A:B;
        endcase
    end
    
    assign out=(current_state==A)?0:1;
endmodule

结果正确:

相关推荐
ST.J3 分钟前
webpack笔记
前端·笔记·webpack
姚瑞南1 小时前
【AI产品思路】AI 原型设计工具横评:产品经理视角下的 v0、Bolt 与 Lovable
人工智能·经验分享·笔记·aigc·产品经理
Source.Liu1 小时前
【Python基础】 19 Rust 与 Python if 语句对比笔记
笔记·python·rust
程序员Xu2 小时前
【LeetCode热题100道笔记】二叉树的中序遍历
笔记·算法·leetcode
Source.Liu2 小时前
【Python基础】 18 Rust 与 Python print 函数完整对比笔记
笔记·python·rust
闻道且行之3 小时前
嵌入式|Linux中打开视频流的两种方式V4l2和opencv
linux·笔记·opencv·嵌入式
于顾而言3 小时前
【笔记】Software Engineering at Google
笔记·log4j·软件工程
DKPT4 小时前
JVM新生代和老生代比例如何设置?
java·开发语言·jvm·笔记·学习
ST.J4 小时前
设计模式笔记
笔记·设计模式
程序员Xu5 小时前
【LeetCode热题100道笔记】前 K 个高频元素
笔记·算法·leetcode