基于FPGA 的CRC校验码生成器
今天给大侠带来基于FPGA的CRC校验码生成器,话不多说,上货。
1、概述
CRC即Cyclic Redundancy Check,循环冗余校验,是一种数字通信中的常用信道编码技术。其特征是信息段和校验字段的长度可以任意选定。
2、CRC校验的基本原理
CRC码是由两部分组成的,前部分是信息码,就是需要校验的信息,后部分是校验码,如果CRC码长共n bit,信息码长k bit,就称为(n,k)码,剩余的r bit即为校验位。如:(7,3)码:110 1001,前三位110为信息码,1001为校验码。
3、校验码的生成规则
-
1)将原信息码左移r bit,右侧补零,如 110--> 110 0000;
-
2)用110 0000除以g(x) (注意,使用的是模2除法,见下文),得到的余数即为CRC校验码;
-
3)将校验码续接到信息码的尾部,形成CRC码。
4、关于生成多项式g(x)
在产生CRC校验码时,要用到除法运算,一般来说,这是比较麻烦的&#