《電子技術應用》
您所在的位置:首頁 > 可編程邏輯 > 設計應用 > BCH編譯碼器的FPGA設計及SoPC驗證
BCH編譯碼器的FPGA設計及SoPC驗證
來源:電子技術應用2012年第6期
蔡 恒,崔雪楠,孟虹兆,黃啟俊,常 勝
武漢大學 物理科學與技術學院 微電子學與固體電子學,湖北 武漢430072
摘要: 針對NAND Flash應用,完成了并行化BCH編譯碼器硬件設計。采用寄存器傳輸級硬件描述語言,利用LFSR電路、計算伴隨式、求解關鍵方程、Chien搜索算法等技術方法完成了BCH編譯碼算法在FPGA上的硬件實現。相比于傳統串行實現方案,采用并行化實現提高了編譯碼器的速度。搭建了基于SoPC技術的嵌入式驗證平臺,在Nios處理器的控制下能快速高效地完成對BCH編譯碼算法的驗證,具有測試環境可配置、測試向量覆蓋率高、測試流程智能化的特點。
關鍵詞: 并行化 BCH FPGA 優化 SoPC
中圖分類號: TP391
文獻標識碼: A
文章編號: 0258-7998(2012)06-0015-03
FPGA design and SoPC verification of BCH encoder/decoder
Cai Heng,Cui Xuenan,Meng Hongzhao,Huang Qijun,Chang Sheng
Department of Electronics Science and Technology, School of Physics and Technology, Wuhan University, Wuhan 430072,China
Abstract: Parallel structures of BCH encoder/decoder are implemented, for application of NAND Flash. The design is composed of LFSR circuit module, syndrome solving module, key equation solving module and Chien search module. They are described in register-transfer level and realized on FPGA platform. The design is verified on an embedded SoPC platform. Under the control of Nios CPU, BCH algorithm can be efficiently tested. This embedded test system has the virtue of configurable test environment, high test-vector coverage and intelligent test process.
Key words : parallelization;BCH;FPGA;optimization;SoPC

    隨著科技進步和信息化的快速發展,如何在海量數據存儲中確保數據不出錯成為眾人關心的問題。作為廣泛應用于U盤、固態硬盤等電子產品的一種非易失性存儲介,NAND Flash 由于其結構的特殊性,在進行擦寫操作時易產生錯誤,故需要引入錯誤校驗機制。早期使用SLC工藝的NAND Flash通常采用漢明碼(ECC)校驗,但是無法糾正1 bit以上的錯誤。現今的MLC工藝多采用BCH糾錯,但每頁產生的錯誤往往超過2 bit,甚至達到4 bit。國內外對BCH糾錯的研究已展開,參考文獻[1-2]采用串行結構完成譯碼器設計,實現簡單,但最大時鐘頻率小、速度慢,無法滿足高速的需要。參考文獻[3-4]中提出并行化結構,提高了設計速度和數據吞吐量,但電路實現討論不充分。參考文獻[5]中通過ASIC制備芯片并進行測試驗證,但此方法周期長、費用高。

    針對以上問題,本文基于Altera公司的CycloneII EP2C35系列FPGA完成了并行化BCH(8184,7976,16)碼編譯器設計,并利用SoPC Builder搭建了驗證平臺,在Nios II處理器的控制下能高效地完成BCH編譯碼算法的驗證,具有測試環境可配置、測試向量覆蓋率高、測試流程智能化的特點。
1 BCH編譯碼FPGA設計
    結合實際使用NAND Flash的情況, 16 bit糾錯是NAND Flash使用的趨勢。本設計采用并行化結構實現16 bit BCH碼算法。
1.1 并行BCH編碼器的設計
    BCH編碼器通過除法電路得到余數作為系統碼的校驗位,實現公式為:
    



2 基于SoPC技術的驗證系統
    搭建了基于SoPC技術的嵌入式驗證平臺, NiosⅡProcessor通過AVALON總線以AVALON—SLERVER協議與RAM_CONTROLLER以及BCH_IP外設進行通信,控制編譯碼模塊工作,如圖4所示。其中data_cnt為傳輸碼元數,eob信號為傳輸碼元結束信號,sob為開始傳輸原碼信號,data信號為傳輸原碼數據。

 

 

    在此基礎上,利用NIOS向RAM中寫入多種類別錯誤進行糾錯。大量數據的測試證明了BCH編譯碼設計的正確性。部分測試結果如表1所示。

    使用硬件描述語言,基于Altera公司的Quartus8.0開發工具完成了應用于NAND Flash的并行化BCH編譯碼器的設計。采用并行結構縮短了編解碼周期,最大時鐘頻率可達101.84 MHz。搭建了基于SoPC技術的嵌入式驗證平臺,在Nios II處理器的控制下高效地完成了BCH編譯碼算法的驗證。驗證結果表明該算法具有測試環境可配置、測試向量覆蓋率高及測試流程智能化的特點。
參考文獻
[1] 孫怡,田上力,林建英.BCH碼譯碼器的FPGA實現[J].電路與系統學報,2000(12):98-100.
[2] 江建國.BCH編譯碼器的設計及驗證[D].上海:上海交通大學.2010.
[3] 張彥,李署堅,崔金.一種BCH碼編譯碼器的設計與實現[J].通信技術,2010,43(12):24-26.
[4] 劉冀,孫玲.可變碼率BCH碼編譯碼的FPGA實現[J].信號與信息處理,2010,40(7):11-13.
[5] 許錦.NAND Flash快速BCH編解碼算法及硬件實現[D].上海:上海復旦大學,2008.
[6] 趙景琰,金鷹翰,趙培,等.并行化的BCH編解碼器設計[J].微處理機,2010(4):42-45.

此內容為AET網站原創,未經授權禁止轉載。
主站蜘蛛池模板: 老司机午夜精品视频在线观看免费 | 成人a免费α片在线视频网站| 亚洲成人免费在线观看| 色偷偷成人网免费视频男人的天堂 | 日韩不卡手机视频在线观看| 亚洲精品国产品国语在线| 自拍偷自拍亚洲精品被多人伦好爽| 国产精品久久久久免费a∨| jizzjizz日本护士| 抽搐一进一出gif日本| 亚洲AV无码一区二区二三区软件| 波多野结衣AV一区二区全免费观看| 同学的嫩苞13p| 骚虎视频在线免费观看| 国产精品无码专区AV在线播放 | 日本亚洲中午字幕乱码| 亚洲国产午夜电影在线入口| 粉色视频下载观看视频| 国产亚洲美女精品久久久| 三级网站在线免费观看| 大奉打更人最新章节| 中国体育生gary飞机| 日韩精品一区二区三区毛片| 亚洲成av人片在线看片| 男人添女人下部全视频| 啦啦啦在线观看视频直播免费| 黄瓜视频网站在线观看| 国产精品大尺度尺度视频| a级毛片在线免费| 成人免费视频69| 久久午夜无码鲁丝片直播午夜精品| 欧美一区视频在线| 亚洲男女内射在线播放| 真实国产乱子伦高清| 国产99视频精品免视看7| 黑人巨大sv张丽在线播放| 国产精品揄拍一区二区久久| ass日本大乳pics| 婷婷被公交车猛烈进出视频| 久久中文字幕一区二区| 日韩理论电影在线|