跳到主要內容
搶先遇見新產品的地方

fec

Rust 寫的前向錯誤更正函式庫,Viterbi 解碼器有 SIMD 加速

其他17天前
分類
其他
語言
英語
發布於
17天前
星標
48
複刻
2

brian-armstrong/fec ↗· Rust· BSD-3-Clause· 最近提交 15天前

fec 是一個 Rust crate,實作了軟體無線電與太空通訊裡反覆出現的兩類錯誤更正碼。其一是搭配 Viterbi 解碼器的迴旋碼,硬判決與軟判決都支援,涵蓋常見的 rate 1/2 k=7、rate 1/2 k=9、rate 1/3 k=9 與 rate 1/6 k=15,碼率可取 1/2 到 1/8,約束長度可取 4 到 16。在 nightly Rust 上啟用 simd 功能後,解碼器會改用 SSE、AVX2 或 AVX512 加速。其二是 GF(2^8) 上的 Reed-Solomon 碼,錯誤與抹除解碼都做,並以一般表示法和實際傳輸所用的對偶基底(Berlekamp)表示法兩種形式提供 CCSDS (255,223),參數取自公開的 CCSDS 標準。作者表示在 Ryzen 7840HS 上以 libfec 自帶的測試程式量測,所有碼型都比 libfec 更快。專案脫胎於同一位作者的 C 語言函式庫 libcorrect,採用 BSD-3-Clause 授權。

喜歡這個產品嗎?