题解 | 含有无关项的序列检测
含有无关项的序列检测
https://www.nowcoder.com/practice/cba67d06d6834a5d9b93e1087b56c8d8
`timescale 1ns/1ns
module sequence_detect(
input clk,
input rst_n,
input a,
output reg match
);
reg [8:0] reg_a;
always @(posedge clk or negedge rst_n) begin
if (!rst_n) begin
reg_a <= 8'b0; // Reset the register
end else begin
reg_a <= {reg_a[7:0], a}; // Shift in the new bit 'a'
end
end
always @(posedge clk or negedge rst_n) begin
if (!rst_n) begin
match <= 1'b0;
end else if(reg_a[8:6] == 3'b011 && reg_a[2:0] == 3'b110)begin //左边高位,右边低位
match <= 1'b1; // Match found for the sequence "01110001"
end else begin
match <= 1'b0; // No match
end
end
endmodule
