2009-08-05 92 views
5

我正在尋找PRBS模式生成C/C++ API,以便我可以將它插入到有效負載的UDP中。需要PRBS模式生成C/C++ API

如果有人知道生成PRBS模式的過程,它將是偉大的。

回答

2

我不確定是否有符合您目的的圖書館。我可以給你一些關於執行的指導,但是:

你實現的基礎是LFSR。可以實現以下兩種方式之一:

  • 斐波那契實現由其中二進制加權抽頭的模2之和被反饋到輸入端的簡單移位寄存器的(記住,模2之和爲相當於沒有進位的加法,這反過來等同於XOR)。
  • 伽羅瓦的實現由一個移位寄存器組成,其內容在每個步驟都由輸出級的二進制加權值修改,同樣使用模2數學。伽羅瓦權重的順序與斐波那契權重的順序相反。由於反饋環路中邏輯量的減少,伽羅瓦形式通常更快。

有關如何指定水龍頭和您可以獲得什麼序列的更多信息,您可以開始here。請注意,上面的實現選擇可以具有相同的週期長度和輸出位序列,以便適當選擇初始狀態(種子)。

這是您的基本要求。 LFSR具有非常均勻分佈且足夠長的輸出流。我建議不要將它用於加密目的,因爲它非常弱 - 是一個線性系統。有解決方法,但除了shrinking generator(我覺得非常酷)沒有任何實質性的東西。

實現鏈接已經給出,所以祝你好運!