`timescale 1ns/1ns
module sequence_detect(
	input clk,
	input rst_n,
	input data,
	input data_valid,
	output reg match
	);
  reg data_valid_d;
  always@(posedge clk or negedge rst_n)
 begin if(!rst_n)
 data_valid_d<=0;
 else data_valid_d<=data_valid;
 end
  reg[3:0]buff;
 always@(posedge clk or negedge rst_n)
 begin if(!rst_n)
  buff<=0;
  else if(data_valid)
  buff<={buff[2:0],data};
  else buff<=buff;
 end
always@(*)
 begin if(!rst_n)
 match=0;
 else if((buff==4'b0110)&data_valid_d)
 match=1;
 else match=0;
 end 

endmodule