题解 | #含有无关项的序列检测#
含有无关项的序列检测
https://www.nowcoder.com/practice/cba67d06d6834a5d9b93e1087b56c8d8
`timescale 1ns/1ns module sequence_detect( input clk, input rst_n, input a, output reg match ); // 011xxx110&111000111=011000110 // reg [7:0] a_ray; always @(posedge clk or negedge rst_n) begin if (!rst_n) begin a_ray <= 0; match <= 0; end else begin a_ray <= {a_ray[6:0],a}; if ((a_ray&8'b111000111)==8'b011000110) begin match <= 1; end else match <= 0; end end endmodule
使用按位与来将需要的位继承下来,不需要的位转为0.