题解 | #根据状态转移图实现时序电路#

根据状态转移图实现时序电路

https://www.nowcoder.com/practice/e405fe8975e844c3ab843d72f168f9f4

`timescale 1ns/1ns

module seq_circuit(
   input                C   ,
   input                clk ,
   input                rst_n,
 
   output   wire        Y   
);

parameter s1 = 4'b0001;
parameter s2 = 4'b0010;
parameter s3 = 4'b0100;
parameter s4 = 4'b1000;

reg  [3:0]statue;
reg       y_reg;

always@(posedge clk or negedge rst_n)
    if (rst_n == 1'b0)
        statue <= s1;
    else 
        case(statue)
            s1 : if (C == 1'b1)
                        statue <= s2;
                else if(C == 1'b0)
                        statue <= s1;
            s2 : if(C == 1'b1)
                        statue <= s2;
                else if(C == 1'b0)
                        statue <= s3;
            s3 : if (C == 1'b1)
                        statue <= s4;
                else if(C == 1'b0)
                        statue <= s3;
            s4 : if (C == 1'b1)
                        statue <= s4;
                else if(C == 1'b0)
                        statue <= s1;
            default : statue <= s1;
        endcase

always@(*)
    if (rst_n == 1'b0)
        y_reg <= 1'b0;
    else if (statue == s3)
        y_reg <= 1'b1;
    else if (statue == s4 && C == 1'b1)
        y_reg <= 1'b1;
    else 
        y_reg <= 1'b0;

assign Y = y_reg;

endmodule

这里采用二段式状态机进行解题,第一段为状态赋值块,第二段是输出赋值块。

(个人认为二段式比三段式好理解一点)

全部评论

相关推荐

点赞 评论 收藏
分享
评论
1
收藏
分享

创作者周榜

更多
正在热议
更多
# 长得好看会提高面试通过率吗? #
3136次浏览 43人参与
# HR最不可信的一句话是__ #
1014次浏览 32人参与
# 巨人网络春招 #
11484次浏览 224人参与
# 春招至今,你的战绩如何? #
14676次浏览 136人参与
# AI面会问哪些问题? #
890次浏览 22人参与
# 你的实习产出是真实的还是包装的? #
2704次浏览 52人参与
# MiniMax求职进展汇总 #
24880次浏览 321人参与
# 沪漂/北漂你觉得哪个更苦? #
1209次浏览 38人参与
# 你做过最难的笔试是哪家公司 #
1123次浏览 20人参与
# AI时代,哪个岗位还有“活路” #
2675次浏览 49人参与
# XX请雇我工作 #
51147次浏览 171人参与
# 军工所铁饭碗 vs 互联网高薪资,你会选谁 #
7965次浏览 43人参与
# 简历第一个项目做什么 #
32067次浏览 357人参与
# 简历中的项目经历要怎么写? #
310896次浏览 4257人参与
# 不考虑薪资和职业,你最想做什么工作呢? #
152823次浏览 888人参与
# 当下环境,你会继续卷互联网,还是看其他行业机会 #
187553次浏览 1123人参与
# AI时代,哪些岗位最容易被淘汰 #
64520次浏览 864人参与
# 如果重来一次你还会读研吗 #
229971次浏览 2011人参与
# 投格力的你,拿到offer了吗? #
178239次浏览 891人参与
# 你怎么看待AI面试 #
180643次浏览 1295人参与
# 正在春招的你,也参与了去年秋招吗? #
364158次浏览 2641人参与
# 腾讯音乐求职进展汇总 #
160820次浏览 1114人参与
牛客网
牛客网在线编程
牛客网题解
牛客企业服务