这么久真是囧的几周,
=..
呵呵,
CRC
嗯,
实现步骤
1)
设选择的生成多项式为g(x),
2)
将发送的数据序列左移k
3)
设r(x)
4)
用r(x)
如果对模2
参考
http://zhidao.baidu.com/question/90071684.html?si=1
因为没有调之前没有调成功用线形移位寄存器实现模2
=||
方法如此一目了然,
=|||(
生成CRC
module CRC_G(clk,
res_n,
da
bit parallel da
in
da
bit parallel da
out(origin +crc co
input clk,res_n;
input [6:0]da
output [10:0]da
reg [10:0]da
reg [10:0]temp;//regist da
when division begin
parameter polynomial=5'b10011;//g(x)=x^4+x+1
always@(posedge clk or negedge res_n)
begin
if(!res_n)
begin
da
temp<=0;
end
else
temp<={da
end
always@(temp)//generate crc_output
begin
if(temp[10])temp[10:6]=temp[10:6]^polynomial;
if(temp[9])temp[9:5]=temp[9:5]^polynomial;
if(temp[8])temp[8:4]=temp[8:4]^polynomial;
if(temp[7])temp[7:3]=temp[7:3]^polynomial;
if(temp[6])temp[6:2]=temp[6:2]^polynomial;
if(temp[5])temp[5:1]=temp[5:1]^polynomial;
if(temp[4])temp[4:0]=temp[4:0]^polynomial;