题解 | #状态机-非重叠的序列检测#

状态机-非重叠的序列检测

http://www.nowcoder.com/practice/2e35c5c0798249aaa2e1044dbaf218f2

简析

本状态机的状态转移图如下:

上面六种状态分别代表已接收到0个......5个有效数据。本题和不重叠序列检测不同,后者要求以每六个输入为一组,所以需要配合计数器,而本题不用。

代码

`timescale 1ns/1ns

module sequence_test1(
	input wire clk  ,
	input wire rst  ,
	input wire data ,
	output reg flag
);
//*************code***********//
    parameter S0=0, S1=1, S2=2, S3=3, S4=4, S5=5;
    reg [2:0] state, nstate;

    always@(posedge clk or posedge rst) begin
        if(~rst)
            state <= S0;
        else
            state <= nstate;
    end
    
    always@(*) begin
        if(~rst)
            nstate <= S0;
        else
            case(state)
                S0     : nstate <= data? S1: S0;
                S1     : nstate <= data? S1: S2;
                S2     : nstate <= data? S3: S0;
                S3     : nstate <= data? S4: S2;
                S4     : nstate <= data? S5: S2;
                S5     : nstate <= data? S1: S0;
                default: nstate <= S0;
            endcase
    end
    
    always@(*) begin
        if(~rst)
            flag <= 0;
        else
            flag <= state==S5;
    end
//*************code***********//
endmodule
Verilog篇题解 文章被收录于专栏

本人对牛客网verilog篇题目一些理解

全部评论
捉虫:s3和s4状态时,data输入为0时可以转到s2状态,因为对未成功检测序列可以进行重复检测
3 回复 分享
发布于 2022-07-12 10:45
为什么这题和下一题的题目要求不一样,程序还是一样的??比如这题要求寄存器输出且同步输出结果;下题要求寄存器输出,在序列检测完成下一拍输出检测有效;也就是下一题要多延时一个时钟周期。flag <= state==S5;应该是是检测完成下一拍输出检测有效,为什么这一题还能通过,想不通?
1 回复 分享
发布于 2023-05-05 11:46 安徽
状态图是mealy的,数量是moore的,这能对也是无敌了
点赞 回复 分享
发布于 2024-10-18 16:39 江苏
总觉得有问题,我把S3和S4为0时跳转为S0也通过了,非重叠时的检测不是应该不考虑某个节点之前的状态么?而是只从当前状态开始考虑
点赞 回复 分享
发布于 2023-03-20 10:41 四川
rst 是上升沿触发??
点赞 回复 分享
发布于 2023-03-04 22:40 上海
请问状态转换图是啥软件画的?
点赞 回复 分享
发布于 2022-09-24 17:28 四川
S1 : nstate <= data? S0: S2; S1的状态跳转有问题,应该是下面的 S1 : nstate <= data? S1: S2; S1表示收到一个1,所以当状态S1又收到一个1时,应该跳转到S1。 不然110111这样的序列就检测不到。
点赞 回复 分享
发布于 2022-08-09 09:27
请问为什么我输出的always块改成边沿触发,就通不过
点赞 回复 分享
发布于 2022-07-26 20:58
这个会不会同题目中给的图示延迟一个时钟
点赞 回复 分享
发布于 2022-07-15 15:09

相关推荐

05-14 20:34
门头沟学院 Java
窝补药贝八股:管他们,乱说,反正又不去,直接说680
点赞 评论 收藏
分享
05-20 13:59
门头沟学院 Java
米黑子米黑子:你这个成绩不争取下保研?
点赞 评论 收藏
分享
评论
13
3
分享

创作者周榜

更多
牛客网
牛客企业服务