USB通信协议——循环冗佘检验位
表 封包类型与字段
CRC的计算方式是将要传输的数据块当作一堆连续位所构成的整个数值,并将此数值除以一个特定的除数。这个除数是以二进制来加以表示的,通常又称为衍生多项式(generatton polynomoal)。针对USB CRC错误检验,采用了5与12位。通常数值越大,则传输的数据越不容易受到噪声的干扰,相对地,处理的时间也就越长。其中,针对令牌封包的5位CRC字段由以下多项式产生:
G(x)=x5+x2+1
这个位模型所表示的多项式是00101b(取5位)。而在接收端的5位的循环冗余检验将是01100b,这也表示所有的位都接收正确。
针对令牌封包的16位CRC字段由以下多项式产生:
G(x)=x16+x15+x2+1
这个位模型所表示的多项式是1000000000000101b。而在接收端的16位的循环冗余检验将是1000000000001101b,这也表示所有的位都接收正确。
但须注意到,若CRC包含了连续6个1,该CRC位串流将会涵盖位填塞部分。
pid控制相关文章:pid控制原理
数字通信相关文章:数字通信原理
通信相关文章:通信原理
评论