序列检测器(Moore型)

目录

描述

输入描述:

输出描述:

参考代码


描述

请用Moore型状态机实现序列"1101"从左至右的不重叠检测。

电路的接口如下图所示。当检测到"1101",Y输出一个时钟周期的高电平脉冲。

接口电路图如下:

输入描述:

input clk ,

input rst_n ,

input din ,

输出描述:

output reg Y

参考代码

cpp 复制代码
`timescale 1ns/1ns

module det_moore(
   input                clk   ,
   input                rst_n ,
   input                din   ,
 
   output	reg         Y   
);
    reg [4:0] state, next_state;
    parameter S0 = 5'b00001,
              S1 = 5'b00010,
              S2 = 5'b00100,
              S3 = 5'b01000,
              S4 = 5'b10000;
    
    always@(posedge clk or negedge rst_n)
        if(!rst_n)
            state <= S0;
        else
            state <= next_state;
    
    always@(*)
        case(state)
            S0: next_state <=  din ? S1 : S0;
            S1: next_state <=  din ? S2 : S0;
            S2: next_state <= ~din ? S3 : S2;
            S3: next_state <=  din ? S4 : S0;
            S4: next_state <=  din ? S1 : S0;
            default: next_state <= S0;
        endcase
    
    always@(posedge clk or negedge rst_n)
        if(!rst_n)
            Y <= 1'b0;
        else if(state == S4)
            Y <= 1'b1;
        else
            Y <= 1'b0;

endmodule     
相关推荐
qq_392399902 小时前
FPGA的理解,个人的见解,不一定对
fpga开发
king888866662 小时前
FPGA学习路线
fpga开发
神仙约架2 小时前
【总线】AXI4第六课时:寻址选项深入解析
fpga开发·axi·axi4·总线
零度随想2 小时前
使用fifo IP核,给fifo写数据,当检测到ALMOST_EMPTY时,为什么不能立即赋值
fpga开发
深圳信迈科技DSP+ARM+FPGA17 小时前
基于x86/ARM+FPGA+AI工业相机的智能工艺缺陷检测,可以检测点状,线状,面状的缺陷
arm开发·fpga开发
攸志20 小时前
Chirp信号生成(FPGA、基于cordic IP核)
fpga开发
数据线1 天前
DDR3(一)
fpga开发·ddr·ddr3·sdram·ddr2
heater4042 天前
【STM32】USART串口通讯
stm32·单片机·fpga开发
风中月隐2 天前
基于xilinx FPGA的GTX/GTH/GTY位置信息查看方式(如X0Y0在bank几)
fpga开发·gtx/gty/gth·bank 位置信息·x0y0
icysmile1312 天前
Zynq7000系列FPGA中的DMA控制器简介(三)
fpga开发