一種基于星間鏈路收發(fā)設(shè)備的星載fpga重構(gòu)系統(tǒng)及重構(gòu)方法
【技術(shù)領(lǐng)域】
[0001] 本發(fā)明設(shè)及一種基于星間鏈路收發(fā)設(shè)備的星載FPGA重構(gòu)系統(tǒng)及重構(gòu)方法,屬于衛(wèi) 星在軌軟件重構(gòu)技術(shù)領(lǐng)域。
【背景技術(shù)】
[0002] 隨著我國北斗二號由區(qū)域向全球系統(tǒng)的擴展,系統(tǒng)在衛(wèi)星數(shù)量、服務(wù)區(qū)域等方面 較一期均有較大的提升或者變化,衛(wèi)星導(dǎo)航系統(tǒng)將向著性能更優(yōu)、功能更多、生存能力更強 的方向發(fā)展??傮w來說自主化、智能化程度提高、在軌壽命長、可靠性要求高,新技術(shù)多、研 制周期短,迫切需要衛(wèi)星提高在軌可維護能力。
[0003] 由于處理軟件的程序數(shù)據(jù)量較小,在軌重構(gòu)的時間短,因此在軌很多衛(wèi)星已經(jīng)具 備處理軟件的在軌重構(gòu)功能,而包含F(xiàn)PGA的全部程序數(shù)據(jù)的在軌重構(gòu)功能目前還不具備, 主要原因在于①程序存儲空間有限;②數(shù)據(jù)傳輸校驗方式未做??谠O(shè)計。
【發(fā)明內(nèi)容】
[0004] 本發(fā)明解決的技術(shù)問題為:克服現(xiàn)有技術(shù)的不足,提供了一種基于星間鏈路收發(fā) 設(shè)備的星載FPGA重構(gòu)系統(tǒng)及重構(gòu)方法,通過擴展程序存儲空間,優(yōu)化重構(gòu)數(shù)據(jù)上注流程,并 在數(shù)據(jù)傳輸及存儲過程中采用奇偶和抓AC等校驗方式,確保大容量程序數(shù)據(jù)在軌重構(gòu)的可 靠性,提升現(xiàn)有重構(gòu)技術(shù)水平。
[0005] 本發(fā)明采用的技術(shù)方案為:
[0006] -種基于星間鏈路收發(fā)設(shè)備的星載FPGA重構(gòu)系統(tǒng),包括:重構(gòu)數(shù)據(jù)接收模塊、帖號 標(biāo)記及回傳模塊、地址譯碼模塊、EDAC校驗碼生成模塊、重構(gòu)數(shù)據(jù)寫入模塊、EDAC循環(huán)校驗 模塊、下卸數(shù)據(jù)讀取模塊、下卸數(shù)據(jù)發(fā)送模塊、EEPROM和星載評GA;
[0007] 重構(gòu)數(shù)據(jù)接收模塊接收地面發(fā)送的重構(gòu)數(shù)據(jù)并進行奇偶校驗,再將重構(gòu)數(shù)據(jù)通過 帖號標(biāo)記及回傳模塊發(fā)送給地址譯碼模塊,同時,帖號標(biāo)記及回傳模塊對重構(gòu)數(shù)據(jù)塊內(nèi)帖 號進行標(biāo)識,當(dāng)前重構(gòu)數(shù)據(jù)塊上注完成后,帖號標(biāo)記及回傳模塊回傳當(dāng)前數(shù)據(jù)塊所有塊內(nèi) 帖號標(biāo)識;
[000引地址譯碼模塊將重構(gòu)數(shù)據(jù)塊的塊號和塊內(nèi)帖號譯碼成為邸PROM的起始存儲地址, 邸AC校驗碼生成模塊針對接收到的重構(gòu)數(shù)據(jù)生成抓AC校驗碼,重構(gòu)數(shù)據(jù)寫入模塊根據(jù)所述 邸PROM的起始存儲地址,將重構(gòu)數(shù)據(jù)和抓AC校驗碼按組寫入邸PROM之中;EDAC循環(huán)校驗?zāi)?塊將已經(jīng)存儲在EEPROM中的重構(gòu)數(shù)據(jù)和校驗碼分時循環(huán)讀取進行邸AC校驗,利用EEPROM中 存儲的重構(gòu)數(shù)據(jù)對星載FPGA進行重構(gòu)操作;
[0009] 地址譯碼模塊將地面站向衛(wèi)星發(fā)送的數(shù)據(jù)下卸指令譯碼成為EEPROM的起始讀取 地址,下卸數(shù)據(jù)讀取模塊根據(jù)所述邸PROM的起始讀取地址,從邸PROM中讀取重構(gòu)數(shù)據(jù)和校 驗碼,通過下卸數(shù)據(jù)發(fā)送模塊發(fā)送給地面測控站。
[0010] 所述帖號標(biāo)記及回傳模塊對重構(gòu)數(shù)據(jù)塊內(nèi)帖號進行標(biāo)識和回傳具體為:
[0011] 重構(gòu)數(shù)據(jù)塊內(nèi)帖號標(biāo)識共512bit,每bit對應(yīng)當(dāng)前數(shù)據(jù)塊的1個數(shù)據(jù)帖,當(dāng)收到重 構(gòu)數(shù)據(jù)帖后,如果發(fā)生奇偶校驗錯誤、漏帖或塊數(shù)據(jù)丟失,帖號標(biāo)記及回傳模塊將當(dāng)前重構(gòu) 數(shù)據(jù)帖對應(yīng)的塊內(nèi)帖號標(biāo)識標(biāo)記為O,否則標(biāo)記為1;當(dāng)前數(shù)據(jù)塊全部上注完成后,帖號標(biāo)記 及回傳模塊將當(dāng)前重構(gòu)數(shù)據(jù)塊51化it塊內(nèi)帖號標(biāo)識回傳地面。
[0012] 地址譯碼模塊將重構(gòu)數(shù)據(jù)塊的塊號和塊內(nèi)帖號譯碼成為邸PROM的起始存儲地址, 具體為:
[0013] 在重構(gòu)數(shù)據(jù)上注過程中,當(dāng)前數(shù)據(jù)帖如果通過奇偶校驗,地址譯碼模塊將該數(shù)據(jù) 帖的塊號和塊內(nèi)帖號譯碼成為邸PROM的起始存儲地址,EEPROM中1個地址對應(yīng)4B^e重構(gòu)數(shù) 據(jù),每寫入4B^e重構(gòu)數(shù)據(jù),EEPROM地址加1,當(dāng)?shù)刂防奂?1時,當(dāng)前數(shù)據(jù)帖地址譯碼結(jié)束。
[0014] EDAC校驗碼生成模塊針對接收到的重構(gòu)數(shù)據(jù)生成邸AC校驗碼具體為:
[0015] EDAC校驗碼生成模塊將接收到的重構(gòu)數(shù)據(jù)每48八6分為一組,并利用抓AC校驗碼 多項式生成18八6的604(:校驗碼,數(shù)據(jù)加校驗碼共計5B^e。
[0016] 所述趾PROM共有5片,每片8位數(shù)據(jù)線,共40位數(shù)據(jù)線,每次寫操作一次性寫入 SByte重構(gòu)數(shù)據(jù)和校驗碼。
[0017] EDAC循環(huán)校驗?zāi)K是將已經(jīng)存儲在邸PROM中的重構(gòu)數(shù)據(jù)和校驗碼分時循環(huán)讀取 進行邸AC校驗,具體為:
[0018] 每次讀取40bit數(shù)據(jù),其中包含4B^e數(shù)據(jù)和18八6校驗碼,并進行校驗,當(dāng)本地產(chǎn) 生的校驗碼與EEPROM存儲的校驗碼出現(xiàn)化it差異的條件下,糾正數(shù)據(jù)出錯的位置并重新寫 入邸PROM內(nèi)部,同時記錄單粒子打翻化it EEPROM的次數(shù),當(dāng)本地產(chǎn)生的校驗碼與邸PROM存 儲的校驗碼出現(xiàn)大于2bit及W上差異的條件下,記錄當(dāng)前數(shù)據(jù)出現(xiàn)的位置與數(shù)據(jù)類型,記 錄到抓AC出錯寄存器內(nèi)部,同時發(fā)送抓AC錯誤遙測信息,請求地面重新發(fā)送出錯數(shù)據(jù)所在 的整帖數(shù)據(jù)。
[0019] 下卸數(shù)據(jù)讀取模塊的每次讀操作,一次性讀取40bit,其中包含32bit數(shù)據(jù)和Sbit EDAC校驗碼,僅截取32bit數(shù)據(jù)組成一組4B^e下卸數(shù)據(jù)。
[0020] 下卸數(shù)據(jù)發(fā)送模塊累計32組下卸數(shù)據(jù),每組4B^e,共計128B^e,一帖下卸數(shù)據(jù)包 含128B^e有效數(shù)據(jù)。
[0021] 地址譯碼模塊將地面站向衛(wèi)星發(fā)送的數(shù)據(jù)下卸指令譯碼成為EEPROM的起始讀取 地址,具體為:在數(shù)據(jù)下卸過程中,地址譯碼模塊將下卸數(shù)據(jù)帖的塊號和塊內(nèi)帖號譯碼成為 邸PROM的起始讀取地址,EEPROM中1個地址存儲4Bne數(shù)據(jù),每讀取4Bne數(shù)據(jù),EEPROM地址 加1,當(dāng)?shù)刂防奂?1時,當(dāng)前下卸數(shù)據(jù)帖地址譯碼結(jié)束。
[0022] -種星載FPGA重構(gòu)方法,步驟如下:
[0023] (1)地面站上注1帖重構(gòu)數(shù)據(jù)至衛(wèi)星,重構(gòu)數(shù)據(jù)每帖1288八6,速率為每秒一帖,其 中有效數(shù)據(jù)為128B^e,包含2B^e奇偶校驗位;
[0024] (2)重構(gòu)數(shù)據(jù)塊內(nèi)帖號標(biāo)識共51化it,每bit對應(yīng)當(dāng)前數(shù)據(jù)塊的1個數(shù)據(jù)帖,當(dāng)衛(wèi)星 收到重構(gòu)數(shù)據(jù)帖后,進行重構(gòu)數(shù)據(jù)塊內(nèi)帖號標(biāo)記,如果發(fā)生奇偶校驗錯誤、漏帖或塊數(shù)據(jù)丟 失,將當(dāng)前重構(gòu)數(shù)據(jù)帖對應(yīng)的塊內(nèi)帖號標(biāo)識標(biāo)記為0,否則標(biāo)記為1;
[0025] (3)在重構(gòu)數(shù)據(jù)上注過程中,將該數(shù)據(jù)帖的塊號和塊內(nèi)帖號譯碼成為邸PROM的起 始存儲地址,EEPROM中1個地址對應(yīng)4B^e重構(gòu)數(shù)據(jù);
[00%] (4)將接收到的重構(gòu)數(shù)據(jù)每4B^e分為一組,并利用抓AC校驗碼多項式生成IB^e 的邸AC校驗碼,數(shù)據(jù)加校驗碼共計SByte;
[0027] (5)將4Byte重構(gòu)數(shù)據(jù)和IByte的邸AC校驗碼,共40bit,一次性寫入EEPROM地址中;
[002引 (6化EPROM地址加1,將下一組48八6重構(gòu)數(shù)據(jù)和18八6的抓AC校驗碼寫入邸PROM 中,當(dāng)?shù)刂防奂?1時,當(dāng)前數(shù)據(jù)帖寫入完成,EEPROM寫入操作采用字模式,兩次寫入操作的 時間間隔為20ms,如下表所示:
[0030] (7)依次上注當(dāng)前數(shù)據(jù)塊的全部重構(gòu)數(shù)據(jù)帖;
[0031] (8)將重構(gòu)數(shù)據(jù)塊內(nèi)帖號標(biāo)識回傳地面,地面依據(jù)回傳的遙測信息,將重構(gòu)數(shù)據(jù)塊 內(nèi)帖號標(biāo)識為0的數(shù)據(jù)帖重新進行上注;確保當(dāng)前重構(gòu)數(shù)據(jù)塊上注全部正確;
[0032] (9)重復(fù)步驟(1)~(7),依次上注全部重構(gòu)數(shù)據(jù)塊;
[0033] (10)當(dāng)衛(wèi)星上單機設(shè)備未進行重構(gòu)數(shù)據(jù)上注或下卸操作時,進行抓AC循環(huán)校驗, 當(dāng)重構(gòu)數(shù)據(jù)上注及下卸操作完成后,EDAC校驗從中斷位置繼續(xù)循環(huán)往下;
[0034] (11)星上單機設(shè)備將存儲在趾