【技术实现步骤摘要】
循环冗余校验码的生成方法和装置
本专利技术涉及移动通信技术,特别是涉及一种循环冗余校验码(CyclicRedundancyCheck,CRC)的生成方法和装置。
技术介绍
循环冗余校验码是数据通信领域中最常用为一种差错校验码,其特征是信息字段和校验字段的长度可以任意选定。在发送时,发送方根据CRC生成多项式,计算得到发送数据的CRC校验码,并将该CRC校验码附在发送数据的后面发送出去。在接收时,接收方同样根据CRC生成多项式,计算得到接收数据的CRC校验码,并与接收到的CRC校验码进行比较,以检测数据传输的正确性。具体地,生成CRC校验码的二进制多项式定义如下:M(X)*XN=G(X)*Q(X)+R(X)。其中:M(X)为信息多项式,G(X)为生成多项式,N为G(X)的阶数,Q(X)为商,R(X)为余数。根据上面的公式,用M(X)*XN除以生成多项式G(X),得到余数R(X),那么R(X)即定义为CRC校验码。需要说明的是,这里进行除法操作过程中,在循环相减时位与位之间使用模2减法的运算规则:1-1=0,1-0=1,0-1=1,0-0=0,在相减时,不需要判断二者 ...
【技术保护点】
1.一种循环冗余校验码的生成方法,其特征在于,包括:将预设的生成多项式G(X)转换成二进制码G(n);将待生成循环冗余校验码的信息M(X)转换成二进制码M(k);其中,n=0,1,…..,N;k=0,1,…..,K‑1;N为G(X)的阶数,K为M(k)的位数;根据所述M(k)和所述G(n),利用预设的反馈移位寄存器组,采用逐次移位的方法,计算M(k)*XN模2除以G(n)的余数,将所述余数作为所述M(k)的循环冗余校验码;其中,所述反馈移位寄存器组按照Q(i‑1)=G(0)*Q(i‑1)*X‑N+G(1)*Q(i‑1)*X‑(N‑1)+...+G(N‑1)*Q(i‑1)*X ...
【技术特征摘要】
1.一种循环冗余校验码的生成方法,其特征在于,包括:将预设的生成多项式G(X)转换成二进制码G(n);将待生成循环冗余校验码的信息M(X)转换成二进制码M(k);其中,n=0,1,…..,N;k=0,1,…..,K-1;N为G(X)的阶数,K为M(k)的位数;根据所述M(k)和所述G(n),利用预设的反馈移位寄存器组,采用逐次移位的方法,计算M(k)*XN模2除以G(n)的余数,将所述余数作为所述M(k)的循环冗余校验码;其中,所述反馈移位寄存器组按照Q(i-1)=G(0)*Q(i-1)*X-N+G(1)*Q(i-1)*X-(N-1)+...+G(N-1)*Q(i-1)*X-1+M(i-1)+G(N)构建得到;所述Q(i-1)表示第i-1次移位相除的商,所述+表示模2加运算符号,所述*表示乘运算符号,X-n表示逻辑右移n次的符号,i=1,…..,K+1。2.根据权利要求1所述的方法,其特征在于,所述计算M(k)*XN模2除以G(n)的余数包括:x1、将所述反馈移位寄存器组的输入端初始化为M(0),并将其中的各移位寄存器初始化为零,i=1;x2、利用当前所述反馈移位寄存器组和所述G(n),按照Q(i-1)=G(0)*Q(i-1)*X-N+G(1)*Q(i-1)*X-(N-1)+...+G(N-1)*Q(i-1)*X-1+M(i-1)+G(N),计算第i-1次移位相除的商Q(i-1);x3、当i<K+1时,i=i+1,将M(i-1)输入至所述反馈移位寄存器组的输入端,将所述反馈移位寄存器组中的各移位寄存器移位一次,执行步骤x2;当i=K+1时,将当前移位寄存器组合DN,…,Dn,…,D1对应的数值作为所述M(k)的循环冗余校验码,其中,寄存器Dn为所述反馈移位寄存器组中与Q(i-1)=G(0)*Q(i-1)*X-N+G(1)*Q(i-1)*X-(N-1)+...+G(N-1)*Q(i-1)*X-1+M(i-1)+G(N)中的X-n对应的移位寄存器。3.一种循环冗余校验码的生成装置,其特征在于...
【专利技术属性】
技术研发人员:张永伟,
申请(专利权)人:成都鼎桥通信技术有限公司,
类型:发明
国别省市:四川,51
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。