航空電子系統(tǒng)經(jīng)過幾十年的發(fā)展,正在經(jīng)歷從模擬化向數(shù)字化系統(tǒng)的轉(zhuǎn)變,逐步跨入第4代航空電子系統(tǒng),其主要特點(diǎn)就是在第3代基礎(chǔ)上,以高速大容量的信息交換為基礎(chǔ),從綜合化向高度綜合化發(fā)展,實(shí)現(xiàn)資源共享與數(shù)據(jù)融合,其任務(wù)劃分、模塊分配和作業(yè)調(diào)度,都依賴于數(shù)據(jù)網(wǎng)絡(luò)系統(tǒng)的性能,這些性能包括網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)、傳輸帶寬、可靠性及數(shù)據(jù)延遲性能等。因此,未來先進(jìn)航空電子系統(tǒng)中各站點(diǎn)之間的數(shù)據(jù)流將更為復(fù)雜,包括射頻、視頻等大流量數(shù)據(jù),有的節(jié)點(diǎn)速率需求將超過1Gb/s,而現(xiàn)有的低速數(shù)據(jù)總線很難滿足如此高速的數(shù)據(jù)傳輸要求。
美國國家標(biāo)準(zhǔn)委員會于1988年開始制定的光纖通道(Fiber Channel,F(xiàn)C)是一種高速串行總線協(xié)議,不僅具有高帶寬、高可靠性、低延時、傳輸距離遠(yuǎn)、拓?fù)潇`活的優(yōu)點(diǎn),而且支持多種上層傳輸協(xié)議。光纖通道的這一優(yōu)點(diǎn)使得在同一物理接口上運(yùn)行多種上層通道標(biāo)準(zhǔn)和網(wǎng)絡(luò)協(xié)議成為可能。目前已經(jīng)實(shí)現(xiàn)的ML-STD-1553到光纖通道協(xié)議的映射,以及ML-STD-1553遠(yuǎn)程終端器件與光纖通道互聯(lián)方案的系統(tǒng)綜合,為未來航空電子系統(tǒng)中不同總線的互連提供了一條新的途徑,使得系統(tǒng)在保留傳統(tǒng)網(wǎng)絡(luò)拓?fù)浜蛥f(xié)議的同時,獲得光纖通道所提供的高帶寬服務(wù)。
基于此設(shè)計(jì)思想,本文提出了一種IEEE1394到光纖通道傳輸協(xié)議的映射方案,在此工作基礎(chǔ)上,利用現(xiàn)場可編程邏輯陣列(FPGA),對所提出的協(xié)議映射方案進(jìn)行了硬件設(shè)計(jì)與實(shí)現(xiàn),設(shè)計(jì)了一個基于FC的IEEE1394光信號傳輸系統(tǒng)。
1 IEEE1394到光纖通道的協(xié)議映射
首先簡要介紹本文提出的一種IEEE1394到光纖通道傳輸協(xié)議的映射方案,更詳細(xì)的說明可參考文獻(xiàn)。所提協(xié)議映射方案的基本思想是:在IEEE1394到FC數(shù)據(jù)包的映射過程中,保留FC原來的幀格式形式,將FC幀頭部分中源節(jié)點(diǎn)和目的節(jié)點(diǎn)的地址分別映射為IEEE1394源節(jié)點(diǎn)和目的節(jié)點(diǎn)的地址,并將IEEE1394數(shù)據(jù)包中除了數(shù)據(jù)域外的其他信息映射到FC的64Byte可選幀頭上,數(shù)據(jù)域的信息映射到FC的有效數(shù)據(jù)區(qū)。此外,由于FC一個數(shù)據(jù)幀的有效數(shù)據(jù)區(qū)長度只有2048Byte,而在通道傳輸速率大于200Mb/s,IEEE1394的等時數(shù)據(jù)包或傳輸速率大于400Mb/s時,異步數(shù)據(jù)包的最大有效長度將超出FC有效數(shù)據(jù)區(qū)的大小。因此,當(dāng)IEEE1394數(shù)據(jù)包的長度超出了FC有效數(shù)據(jù)區(qū)長度時,應(yīng)該將該數(shù)據(jù)包映射成一個連續(xù)的FC數(shù)據(jù)幀序列。下面以IEEE1394異步數(shù)據(jù)包到FC數(shù)據(jù)幀的映射為例,說明兩種協(xié)議的映射過程。
IEEE1394異步數(shù)據(jù)包及FC數(shù)據(jù)幀格式如圖1,圖2所示。圖3為IEEE1394數(shù)據(jù)幀到光纖通道幀格式映射關(guān)系。
對映射過程的說明:
1)目的節(jié)點(diǎn)和源節(jié)點(diǎn)地址由IEEE1394的16位擴(kuò)充到24位,使網(wǎng)絡(luò)規(guī)模變得比單一的IEEE1394網(wǎng)絡(luò)要大。
2)T-TYPE用來指明交換消息的傳輸特性,包括交換的傳輸方向和終端-終端(NT-NT)交換的性能定義。在NT-NT類型交換中,將為接收NT提供發(fā)送NT的地址,或者為發(fā)送NT提供接收NT的地址。
3)T—CTL用于實(shí)現(xiàn)FC網(wǎng)絡(luò)和IEEE1394網(wǎng)絡(luò)之間的消息傳輸,實(shí)現(xiàn)兩者之間的橋路連接,完成FC網(wǎng)絡(luò)終端或網(wǎng)絡(luò)控制器與IEEE1394節(jié)點(diǎn)之間的消息傳輸。
4)將IEEE1394中的幀頭CRC校驗(yàn)和數(shù)據(jù)CRC校驗(yàn)分開。在IEEE1394數(shù)據(jù)傳輸中,首先進(jìn)行的是幀頭CRC校驗(yàn),如果發(fā)現(xiàn)錯誤,則立即拋棄該幀。所以這里設(shè)想將IEEE1394數(shù)據(jù)CRC放在光纖通道數(shù)據(jù)幀的可選幀頭,將幀頭CRC放在光纖通道數(shù)據(jù)幀CRC校驗(yàn)中,這樣可以先檢測幀頭CRC,節(jié)省系統(tǒng)開銷。
2 IEEE1394光信號傳輸系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)
2.1 系統(tǒng)的構(gòu)架
為在光纖通道傳輸IEEE1394信號,構(gòu)建兩種總線互連的硬件平臺,所設(shè)計(jì)的傳輸系統(tǒng)不僅要實(shí)現(xiàn)兩種數(shù)據(jù)幀格式的轉(zhuǎn)換,還要實(shí)現(xiàn)FC-0、FC-1、FC-2協(xié)議層中的部分功能。本文所設(shè)計(jì)的基于FC的IEEE1394光信號傳輸系統(tǒng)結(jié)構(gòu)如圖4所示,包括IEEE1394信號源,基于FPGA的1394-FC協(xié)議轉(zhuǎn)換器,必要的外圍接口器件以及光纖收發(fā)模塊,系統(tǒng)傳輸速率1.0625Gb/s。其中,光纖通道FC-0層的功能由光電轉(zhuǎn)換模塊和串并與并串轉(zhuǎn)換芯片實(shí)現(xiàn),而IEEE1394到FC數(shù)據(jù)幀映射及FC-1、FC-2層功能主要基于FPGA進(jìn)行硬件編程來實(shí)現(xiàn)。
2.2 基于FPGA的功能模塊設(shè)計(jì)與實(shí)現(xiàn)
在所設(shè)計(jì)的系統(tǒng)中,F(xiàn)PGA主要實(shí)現(xiàn)IEEE1394到FC的數(shù)據(jù)幀映射以及FC-1、FC-2層功能?;贔PGA的功能模塊結(jié)構(gòu)如圖5所示。
1)FC-1層功能單元包括8b/10b編碼/解碼模塊和D/K類型指示模塊。
2)FC-2層功能單元包括數(shù)據(jù)接收模塊,發(fā)送模塊及系統(tǒng)配置模塊。
3)IEEE1394到FC的數(shù)據(jù)幀映射模塊(協(xié)議轉(zhuǎn)換)是FPGA設(shè)計(jì)的核心部分。該部分能夠完成對信號源發(fā)出的IEEE1394數(shù)據(jù)幀到FC協(xié)議的數(shù)據(jù)幀的映射工作,即將IEEE1394數(shù)據(jù)幀轉(zhuǎn)換為FC幀格式。同時能從接收到的FC數(shù)據(jù)幀還原出IEEE1394數(shù)據(jù)幀。
4)FPGA片內(nèi)的發(fā)送(TX)部分和接收(RX)部分均加入了數(shù)字時鐘管理(DCM)和分頻器模塊,DCM可以使時鐘信號通過時鐘樹達(dá)到各個片內(nèi)寄存器,以減小片內(nèi)時鐘信號的抖動和延時,提高系統(tǒng)運(yùn)行速率。
此外,為了方便在沒有外接IEEE1394信號源的情況下對FPGA內(nèi)部的功能模塊進(jìn)行調(diào)試,在FPGA的TX前通過采用線性反饋移位寄存器IP核構(gòu)建了一個偽隨機(jī)序列發(fā)生器,可以用來模擬IEEE1394數(shù)據(jù)源,并通過1個二選一選擇器實(shí)現(xiàn)外部輸入信號與內(nèi)部偽隨機(jī)序列的選擇功能。
FPGA內(nèi)部的工作過程說明如下:IEEE1394數(shù)據(jù)從16:32解復(fù)用器輸出之后,進(jìn)入IEEE1394數(shù)據(jù)拆分模塊,產(chǎn)生對應(yīng)于FC數(shù)據(jù)幀的SOF、DATA、CRC、EOF的數(shù)據(jù)段,生成符合FC幀格式的數(shù)據(jù)。在這之后,32:8復(fù)用模塊將32bit并行輸入的數(shù)據(jù)復(fù)用成8bit并行輸出的數(shù)據(jù)。隨后進(jìn)入8b/10b編碼模塊,完成8b/10b的編碼工作并以10bit位寬,106.25MHz的速率送入VSC7145串并/并串芯片,最后以1.0625Gbs的速率輸出到SFP光收發(fā)模塊,由光收發(fā)模塊將電信號調(diào)制成光信號輸出。
在RX接收部分,由光收發(fā)模塊還原成的電信號通過VSC7145串并/并串芯片后以10bit的并行數(shù)據(jù)形式輸入到FPGA中,由8b/10b解碼器解碼,輸出8bit并行數(shù)據(jù)(在解碼過程中,解碼器可以通過判斷碼流的極性來判別是否在傳輸過程中出現(xiàn)誤碼)。8b/10b解碼輸出后的數(shù)據(jù)通過1個8:32解復(fù)用模塊解復(fù)用成32bit的并行數(shù)據(jù),并行支路速率為26.5625MHz,隨后32位并行數(shù)據(jù)通過FC幀檢測提取模塊,生成標(biāo)識信號隨路輸出。在CRC校驗(yàn)/判決模塊中,數(shù)據(jù)通過CRC位運(yùn)算反映是否出現(xiàn)誤碼,并給出指示。在這之后,F(xiàn)C數(shù)據(jù)幀重組為IEEE1394數(shù)據(jù)幀,最后經(jīng)由32:16復(fù)用模塊將32bit并行IEEE1394幀數(shù)據(jù)重新復(fù)用成16bit并行數(shù)據(jù),與53.12MHz的隨路信號一同送出FPGA芯片。
3 FPGA功能驗(yàn)證
本設(shè)計(jì)已在Xilinx Spartan3系列的Xc3s200中實(shí)現(xiàn),并在Xilinx ISE 7.1仿真環(huán)境下進(jìn)行了功能和時序仿真驗(yàn)證。采用偽隨機(jī)序列發(fā)生器生成的偽隨機(jī)代碼模擬IEEE1394數(shù)據(jù)源,設(shè)定每1000Byte為一個數(shù)據(jù)包包長。
3.1 功能仿真結(jié)果
1)在發(fā)送端,IEEE1394數(shù)據(jù)包被拆封,重組成FC數(shù)據(jù)幀,并由8b/10b編碼器編碼后輸出,如圖6中仿真波形tx_dtout,和TX_encode_ dtout所示。
2)在接收端,F(xiàn)C幀結(jié)構(gòu)被正確檢測并提取,在CRC校驗(yàn)正確后重組成IEEE1394數(shù)據(jù)幀格式輸出,如圖7中仿真波形tx_dtout,crc32及rx_dtout所示。
經(jīng)仿真測試,F(xiàn)PGA實(shí)現(xiàn)IEEE1394到FC數(shù)據(jù)幀格式的映射功能,各模塊均正常工作,數(shù)據(jù)通信良好,無丟包現(xiàn)象。
3.2 時序仿真結(jié)果
該設(shè)計(jì)在Xc3s200上實(shí)現(xiàn)后,F(xiàn)PGA所使用的資源如表1所示,整個系統(tǒng)資源占用率較低,最高運(yùn)行速率能達(dá)到135.245MHz,滿足106.25MHz的片上最高運(yùn)行速率要求,設(shè)計(jì)達(dá)到了預(yù)期結(jié)果。
4 結(jié)束語
光纖通道具有支持多種上層傳輸協(xié)議的優(yōu)點(diǎn),本文在已有工作的基礎(chǔ)上,利用FPAG,對所提出的IEEE1394到光纖通道的協(xié)議映射方案進(jìn)行了硬件設(shè)計(jì),通過FPGA功能仿真及時序仿真驗(yàn)證了所提方案的可行性。利用此FPGA協(xié)議轉(zhuǎn)換模塊,本文還設(shè)計(jì)了基于FC的IEEE1394光信號傳輸系統(tǒng),給出了具體的硬件設(shè)計(jì)方案。目前,此系統(tǒng)的主要調(diào)試工作已完成,后續(xù)的工作將通過系統(tǒng)傳輸實(shí)驗(yàn),對系統(tǒng)性能進(jìn)行分析研究。