2014-12-07 99 views
1

我需要計算EPC無源RFID協議標準(UHF Class 1 Gen 2 Standard)中指定的CRC-5校驗和。我打算從加速的計算使用optimized crc computer,但我有困難的時候,從EPC規範中的信息映射到CRC計算機模板參數:使用boost計算CRC-5

template < std::size_t Bits, impl_def TruncPoly, 
      impl_def InitRem, impl_def FinalXor, 
      bool ReflectIn, bool ReflectRem > 

從EPC標準的CRC 5定義可以 enter image description here

附錄F包含此附加信息:在表6.12中找到 enter image description here

第一個模板參數(位)顯然是5,和我想這TruncPoly應0x09(從wikipedia),但我真的可以爲其餘的一些建議。

回答

2

更多的搜索後,我發現這一點:http://reveng.sourceforge.net/crc-catalogue/1-15.htm#crc.cat-bits.5

它提供了以下信息(複製,以確保它不會消失): enter image description here

如果它不清晰可見時,相關的信息是:

寬度= 5聚= 0×09的init = 0×09 = REFIN假REFOUT =假xorout = 0×00 校驗= 0×00名= 「CRC-5/EPC」

正如您所看到的,他們不僅僅提供所需的信息,他們也徹底參考了他們的來源,所以如果您正在處理這個問題,我可以推薦使用鏈接。

要回答我的問題,升壓CRC-5-EPC的定義就變成了:

boost::crc_optimal<5, 0x09, 0x09, 0x00, false, false> crc_5_epc;