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控制原理
數字通信相關文章:數字通信原理
通信相關文章:通信原理
評論