<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>

新聞中心

EEPW首頁(yè) > 嵌入式系統 > 設計應用 > 基于FPGA的空間存儲器的糾錯系統的設計

基于FPGA的空間存儲器的糾錯系統的設計

作者: 時(shí)間:2010-12-26 來(lái)源:網(wǎng)絡(luò ) 收藏

1、引言

阿爾法磁譜儀(Alpha Magnetic Spectrometer,)實(shí)驗室是丁肇中博士領(lǐng)導的由美、俄、德、法、中等16個(gè)國家和地區共300多名科學(xué)家參加的大型國際合作項目。它是國際空間站上唯一大型物理實(shí)驗,是人類(lèi)第一次在太空中精密地測量高能量帶電原子核粒子的實(shí)驗。其目的是為尋找反物質(zhì)所組成的宇宙和暗物質(zhì)的來(lái)源以及測量宇宙線(xiàn)的來(lái)源。

但是對于實(shí)驗的空間電子系統,同樣會(huì )受到高能粒子的襲擊,導致存儲器的內容發(fā)生變化,改寫(xiě)半導體存儲器件的邏輯狀態(tài),導致存儲單元在邏輯‘0’與‘1’之間發(fā)生翻轉,使存儲的關(guān)鍵數據出錯,控制程序跑飛等。這對于實(shí)驗系統來(lái)說(shuō),是一個(gè)不容忽視的問(wèn)題。因此,我們采用二元BCH(31,16)碼,能糾正三位隨機錯誤,這種糾錯碼信息不需要儲存,不需要反饋,實(shí)時(shí)性好。

2、編譯碼原理

對于空間電子系統可能出現的問(wèn)題,我們進(jìn)行檢錯與糾錯,其基本思想是在信息碼組中以一定規則加入不同方式的冗余碼,以便在信息讀出的時(shí)候依靠多余的監督碼或校驗碼來(lái)發(fā)現或自動(dòng)糾正錯誤。

2.1 編碼

編碼比較簡(jiǎn)單,二元BCH(31,16)是GF(25)域上的線(xiàn)性分組碼,其中二進(jìn)制最高位m=5,總信息長(cháng)n=2m-1=31,校驗位數k=15,可糾錯位數t=3,生成多項式g(x)為:

2.2 譯碼

譯碼過(guò)程比較復雜,包括1)求伴隨多項式,2)系數計算電路,3)錯誤位置計算電路,其中最關(guān)鍵的是第三步,如圖1。這里假設接收到的數據錯了三位,第28、20、17位發(fā)生了0/1偏轉,即

(1)求伴隨多項式

根據生成多項式與ai的最小多項式之間的關(guān)系,用φi(x)去除接收多項式R(x)而得到伴隨式分量,即,

(2)系數計算電路

令錯誤位置多項式

(3)錯誤位置計算

由上一步我們得出錯誤圖樣為:

因此原碼多項式為:

3、仿真與下載

對于上述編譯碼算法,采用Verilog HDL可綜合語(yǔ)言來(lái)描述,整個(gè)程序分為頂層模塊和底層模塊,頂層模塊很簡(jiǎn)單,主要完成底層模塊的調用和數據的復位,編碼算法主要由底層模塊完成。其中包括編譯碼算法主程序,撥碼開(kāi)關(guān)控制程序,液晶顯示程序,系統函數PLL(鎖相環(huán))程序。系統利用兩個(gè)撥碼開(kāi)關(guān)sw1,sw2來(lái)控制編碼結果或譯碼結果的下載與顯示。

圖2和圖3是編碼和譯碼的仿真圖,仿真工具用的是modelsim 6.0,編碼結果CX=0x69d8ba0e,譯碼過(guò)程中,根據接收多項式RX=0x79caba0e以及最小多項式f1=0x25,f3=0x3d,f5=0x37,譯碼后得出錯誤多項式EX=0x10120000,最后RX與EX相與得出CX_dec=0x69d8ba0e,與原碼一致。下載后顯示到液晶屏的結果CX=0x69d8ba0e,EX=0x10120000,所用編譯工具是quartusⅡ5.0,芯片采用的是Altera Cyclone EP1C6,用到1個(gè)PLL,引腳數15個(gè),芯片資源耗用不超過(guò)5萬(wàn)門(mén)。

4、結束語(yǔ)

BcH(31,16)編譯碼算法,可以糾正3位錯誤,用可綜合語(yǔ)言描述以上的編碼糾錯過(guò)程,軟件仿真和硬件下載都證明了算法的正確性和可行性。整套試驗系統是模擬空間存儲器受到高能粒子的干擾而發(fā)生錯誤,這對于我們AMS實(shí)驗也是很關(guān)鍵的一步,現階段我們用到的防護措施是三倍冗余編碼糾錯,但它占用的硬件資源比較多,而本文中所研究的循環(huán)能夠節省資源,糾錯效果也很明顯,所以它將會(huì )在A(yíng)MS項目中得到實(shí)際的應用。



關(guān)鍵詞: BCH碼 FPGA VerilogHDL AMS

評論


相關(guān)推薦

技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>