關 閉

新聞中心

EEPW首頁 > 工控自動化 > 設計應用 > 基于SATAII協(xié)議的CRC32并行算法的研究

基于SATAII協(xié)議的CRC32并行算法的研究

作者: 時間:2012-12-20 來源:網絡 收藏

協(xié)議中CRC生成校驗模塊采用有限狀態(tài)機來識別傳輸數(shù)據流中的原語,從而完成CRC值的生成與校驗。其狀態(tài)機結構圖如圖3所示。

本文引用地址:http://butianyuan.cn/article/159619.htm

k.JPG


其中狀態(tài)STATE0檢測幀頭并裝入STATE1狀態(tài);在STATE1中,當輸入數(shù)據為幀尾時,則轉入STATE3狀態(tài),否則轉入STATE2狀態(tài),在STATE1狀態(tài)下輸出幀頭,并設置CRC初始值為0x52325032h;在STATE2中,當輸入為幀尾時,則轉入STATE3狀態(tài),否則轉入STATE2狀態(tài),對非原語數(shù)據進行CRC值生成,并保存到寄存器中,輸出為數(shù)據或保持原語;在STATE3中輸出最終的CRC值,并轉入STATE4狀態(tài);在STATE4中輸出幀尾,并轉入STATTE0狀態(tài)等待下一次數(shù)據的輸入。
輸入一幀數(shù)據,并由式(14)進行計算,得出輸入數(shù)據對應的CRC計算值如表1所示。

a.JPG

其對應的系統(tǒng)仿真結果如圖4所示。
仿真結果顯示,CRC數(shù)據校驗與表1中的理論值一致,CRC生成模塊能夠自動識別數(shù)據流中的原語和數(shù)據,并能有數(shù)據生成正確的CRC校驗值。其中每雙字數(shù)據生成CRC值僅需一個時鐘周期,系統(tǒng)輸出延時僅為一個時鐘周期,相對于串行CRC生成算法,更能滿足協(xié)議對時鐘頻率的要求。

5 結束語
文中介紹了CRC校驗原理和常用實現(xiàn)算法,并根據比特型算法推導出一種的實現(xiàn)方案,該方案實現(xiàn)簡單,實現(xiàn)的相對于串行算法具有速度快,運算簡單,并且易于硬件實現(xiàn)等優(yōu)點。本文還將將CRC32并行算法與協(xié)議相結合,實現(xiàn)了滿足SATA協(xié)議規(guī)范的CRC生成和校驗模塊,并成功應用于SATAⅡ主控制器的設計中。


上一頁 1 2 3 下一頁

評論


相關推薦

技術專區(qū)

關閉