1、使用D触发器来实现二分频
2、序列检测器,检测101,输出1,其余情况输出0
module Detect_101(
input clk,
input rst_n,
input data, //输入的序列
output reg flag_101 //检测到101序列的输出标志
);
parameter S0 = 2'd0;
S1 = 2'd1;
S2 = 2'd2;
S4 = 2'd3;
reg [1:0] state, n_state;
//序列检测器,输出只与当前状态有关,而与当前输入无直接关系,所以是Moore型状态机
//第一段状态机,时序逻辑,描述状态转移和复位
always@(posedge clk or negedge rst_n) begin
if(!rst_n)
state <= S0;