⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 bch_divd.v

📁 这是我做的一个BCH译码模块硬件语言模块
💻 V
字号:
module bch_divd(clk,rst,gate,d16,d31,start,in,data_out);
    input [0:0] clk;
    input [0:0] rst;
	 input gate;
    input [0:0] in;
	 input start;
	 input  d16;
	 input d31;
	 wire gate_in;
    output [3:0] data_out;

	 reg [3:0] data_out;
    reg [3:0] shift_reg;

	 assign gate_in= gate & in;

  always @(posedge clk or negedge rst)
       begin
		   if(!rst) 
			  begin
			  shift_reg<=0;
			  data_out<=0;
			  end
		    else if(d16 || d31)									//d16,d13时刻取出数据
			 
			  begin
			   
				data_out<=shift_reg;
				shift_reg<={3'b000,gate_in};
			
				end

			 else if(start)											//start有效时,移位
			     begin
					shift_reg[3]<=shift_reg[2];
					shift_reg[2]<=shift_reg[1];
					shift_reg[1]<=shift_reg[0]^shift_reg[3];
					shift_reg[0]<=shift_reg[3]^gate_in;
			 	 end

				else
				   shift_reg<=0;
		  end
			
endmodule

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -