「Verilog学习笔记」序列检测器(Moore型)

专栏前言

本专栏的内容主要是记录本人学习Verilog过程中的一些知识点,刷题网站用的是牛客网

复制代码
`timescale 1ns/1ns

module det_moore(
   input                clk   ,
   input                rst_n ,
   input                din   ,
 
   output	reg         Y   
); 
    parameter S0 = 0, S1 = 1 , S2 = 2, S3 = 3, S4 = 4 ;
    reg [2:0] nstate, state ; 

    always @ (posedge clk or negedge rst_n) 
        if (!rst_n) state <= S0 ; 
        else state <= nstate ; 

    always @ (*) 
        case (state) 
            S0 : nstate = din ? S1 : S0 ; 
            S1 : nstate = din ? S2 : S0 ; 
            S2 : nstate = din ? S2 : S3 ;
            S3 : nstate = din ? S4 : S0 ; 
            S4 : nstate = din ? S1 : S0 ; 
            default : nstate = S0 ;
        endcase

    always @ (posedge clk or negedge rst_n) 
        if (!rst_n) Y <= 0 ; 
        else if (state == S4) Y <= 1 ; 
        else Y <= 0 ; 

endmodule
相关推荐
我命由我1234525 分钟前
Photoshop - Ps还原和历史记录
学习·ui·职场和发展·求职招聘·职场发展·学习方法·photoshop
我命由我1234542 分钟前
Photoshop - Ps工作界面
学习·ui·职场和发展·求职招聘·职场发展·学习方法·photoshop
梅羽落1 小时前
XPath笔记
笔记
桂花很香,旭很美1 小时前
Anthropic Agent 工程实战笔记(六)安全与生产
笔记·架构·agent
ps酷教程1 小时前
spring-retry学习 (2) -图解源码
学习
2501_943695331 小时前
大专市场调查与统计分析专业,怎么学习市场调研问卷的设计?
人工智能·学习
sponge'1 小时前
opencv学习笔记14:transformer
笔记·学习·transformer
xhyu612 小时前
【学习笔记】推荐系统 (4.召回:Deep Retrieval、其他召回通道、曝光过滤)
笔记·学习
小帅学编程3 小时前
Python学习
开发语言·python·学习
CappuccinoRose3 小时前
HTML语法学习文档 - 汇总篇
前端·学习·html5