一種基于異步通信模式的光纖數(shù)據(jù)傳輸方法
【專利摘要】本發(fā)明涉及一種基于異步通信模式的光纖數(shù)據(jù)傳輸方法,所采用的高速數(shù)據(jù)傳輸電路采用FPGA芯片內(nèi)部功能設(shè)計(jì)方式實(shí)現(xiàn),所實(shí)現(xiàn)的邏輯功能包括數(shù)據(jù)產(chǎn)生、數(shù)字時(shí)鐘管理模塊、時(shí)鐘補(bǔ)償、數(shù)據(jù)檢測、格雷碼計(jì)數(shù)的異步FIFO緩存和Aurora協(xié)議邏輯控制,其中,數(shù)據(jù)產(chǎn)生、數(shù)字時(shí)鐘管理、時(shí)鐘補(bǔ)償、數(shù)據(jù)檢測和Aurora協(xié)議邏輯控制功能采用FPGA標(biāo)準(zhǔn)設(shè)置方式實(shí)現(xiàn),改進(jìn)之處在于基于格雷碼計(jì)數(shù)的異步FIFO緩存、時(shí)鐘網(wǎng)絡(luò)的產(chǎn)生和傳輸電路功能的實(shí)現(xiàn)。本發(fā)明采用基于格雷碼計(jì)數(shù)方式的異步FIFO緩存與Aurora協(xié)議相結(jié)合的光纖數(shù)據(jù)傳輸方法,從而提高數(shù)據(jù)傳輸?shù)臏?zhǔn)確性。
【專利說明】一種基于異步通信模式的光纖數(shù)據(jù)傳輸方法【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及生產(chǎn)過程監(jiān)控系統(tǒng)數(shù)據(jù)傳輸技術(shù)和光纖通信【技術(shù)領(lǐng)域】,尤其涉及一種針對基于Aurora協(xié)議的光纖通信數(shù)據(jù)傳輸系統(tǒng)中數(shù)據(jù)傳輸方法。
【背景技術(shù)】
[0002]隨著現(xiàn)代生產(chǎn)過程監(jiān)控系統(tǒng)的規(guī)模不斷擴(kuò)大、實(shí)時(shí)性的提高,系統(tǒng)的監(jiān)控?cái)?shù)據(jù)量也在不斷地增加。針對大數(shù)據(jù)量的實(shí)時(shí)、長距離的傳輸問題,對傳輸數(shù)據(jù)的準(zhǔn)確性提出了更高的要求。近年來,隨著數(shù)字電子技術(shù)、測試技術(shù)、以及通信技術(shù)的快速發(fā)展,尤其是差分串行信號(hào)傳輸、時(shí)鐘數(shù)據(jù)恢復(fù)(Clock Data Recovery, CDR)以及信道均衡化等新興技術(shù)的出現(xiàn),為高速數(shù)據(jù)采集與通信帶來了很大的便利。在高速數(shù)據(jù)傳輸系統(tǒng)中,采用基于光纖通信的高速數(shù)據(jù)傳輸方案,可解決大部分高速數(shù)據(jù)傳輸問題。隨著光纖傳輸系統(tǒng)性能的提高以及功能的不斷增強(qiáng),對光纖傳輸?shù)膸捄蛯?shí)時(shí)性等要求越來越嚴(yán)格。數(shù)據(jù)信號(hào)在不同芯片、板卡、模塊和系統(tǒng)之間傳輸過程中傳輸速率的匹配性、信號(hào)編碼的準(zhǔn)確性等,成為數(shù)據(jù)高速傳輸中的重要問題。
[0003]為了解決上述由于遠(yuǎn)距離通信帶來的傳輸實(shí)時(shí)性和數(shù)據(jù)準(zhǔn)確性等問題,在光纖通信系統(tǒng)的設(shè)計(jì)方面已有相應(yīng)的典型光纖通信電路,如圖1所示。其中在線調(diào)試接口電路采用JTAG(Joint Test Action Group,聯(lián)合測試行為組織接口)國際標(biāo)準(zhǔn)協(xié)議,支持測試電路的在線下載和調(diào)試功能;程序配置電路采用串行外圍接口(Serial Peripheral Interface,SPI) Flash PROM 與現(xiàn)場可編程門陣列(Field Programmable Gata Array, FPGA)以 SPI 配置模式連接,并存儲(chǔ)配置程序;針對高性能差分信號(hào)的傳輸,F(xiàn)PGA作為數(shù)據(jù)處理核心控制芯片,內(nèi)嵌了高速串行吉比特(Gigabit Transceiver with Low Power, GTP)收發(fā)模塊,為高速數(shù)據(jù)的串行傳輸提供了保障;光電轉(zhuǎn)換電路采用了小型可插拔(Small Form-factorPluggables, SFP)的千兆位光纖收發(fā)模塊,是一種將差分電信號(hào)轉(zhuǎn)化成單模光纖信號(hào)的轉(zhuǎn)換模塊,能夠在遠(yuǎn)距離的通信中可靠運(yùn)行和高速傳輸,這樣既解決了傳統(tǒng)印刷電路板(Printed Circuit Board, PCB)電路布局布線復(fù)雜的問題,又提供了遠(yuǎn)距離通信的解決方案;單端時(shí)鐘電路的驅(qū)動(dòng)時(shí)鐘信號(hào),為FPGA內(nèi)部各部分的邏輯提供異步復(fù)位信號(hào);高精度差分時(shí)鐘電路采用差分時(shí)鐘晶振提供時(shí)鐘信號(hào),為內(nèi)嵌在FPGA中的GTP收發(fā)模塊和電路的時(shí)鐘網(wǎng)絡(luò)提供差分時(shí)鐘信號(hào);電源管理電路為各個(gè)模塊提供穩(wěn)定可靠的電源輸入,對于光纖轉(zhuǎn)換電路,設(shè)計(jì)濾波網(wǎng)絡(luò),為轉(zhuǎn)換模塊中的接收器和發(fā)送器提供獨(dú)立穩(wěn)定的電源電壓。
[0004] 在光纖通信傳輸技術(shù)實(shí)現(xiàn)的邏輯設(shè)計(jì)中,新型點(diǎn)對點(diǎn)的串行傳輸Aurora協(xié)議的提出,保證了光纖通信中高速數(shù)據(jù)傳輸?shù)男诺婪€(wěn)定性和時(shí)鐘的同步性,能夠有效地解決光纖傳輸中對帶寬和實(shí)時(shí)性的要求?;贏urora協(xié)議的典型設(shè)計(jì)方案如圖2所示,通過修改數(shù)據(jù)產(chǎn)生和檢測模塊的邏輯,可實(shí)現(xiàn)基本的光纖通信。一些光纖通信技術(shù)的研究者在傳輸方法上也做了大量的研究,其中申請?zhí)枮?01210128968.3的《一種基于Aurora協(xié)議進(jìn)行FPGA板間高速互連的方法》提出了一種基于四通道小型可插拔(Quad Small Form-factorPlug-gable,QSFP)的超高速傳輸?shù)慕鉀Q方案。但在此類解決方案中,尚未明確給出如何實(shí)現(xiàn)異步通信,而且沒有明確提出數(shù)據(jù)傳輸過程中提高數(shù)據(jù)準(zhǔn)確性的方法和準(zhǔn)確性指標(biāo)。因此,為了解決光纖數(shù)據(jù)傳輸?shù)恼`碼率問題,需要設(shè)計(jì)一種方法提高傳輸數(shù)據(jù)的準(zhǔn)確性以及提供相應(yīng)的驗(yàn)證方法。
【發(fā)明內(nèi)容】
[0005]本發(fā)明旨在克服現(xiàn)有光纖高速數(shù)據(jù)傳輸準(zhǔn)確性問題存在的不足,提出一種能夠提高傳輸數(shù)據(jù)準(zhǔn)確性的基于異步通信模式的光纖數(shù)據(jù)傳輸方法。本發(fā)明采用基于格雷碼計(jì)數(shù)方式的異步FIFO緩存與Aurora協(xié)議相結(jié)合的光纖數(shù)據(jù)傳輸方法,從而提高數(shù)據(jù)傳輸?shù)臏?zhǔn)確性。本發(fā)明的技術(shù)方案如下:
[0006]一種基于異步通信模式的光纖數(shù)據(jù)傳輸方法,所采用的高速數(shù)據(jù)傳輸電路采用FPGA芯片內(nèi)部功能設(shè)計(jì)方式實(shí)現(xiàn),所實(shí)現(xiàn)的邏輯功能包括數(shù)據(jù)產(chǎn)生、數(shù)字時(shí)鐘管理模塊、時(shí)鐘補(bǔ)償、數(shù)據(jù)檢測、格雷碼計(jì)數(shù)的異步FIFO緩存和Aurora協(xié)議邏輯控制,其中,數(shù)據(jù)產(chǎn)生、數(shù)字時(shí)鐘管理、時(shí)鐘補(bǔ)償、數(shù)據(jù)檢測和Aurora協(xié)議邏輯控制功能采用FPGA標(biāo)準(zhǔn)設(shè)置方式實(shí)現(xiàn),其特征在于,基于格雷碼計(jì)數(shù)的異步FIFO緩存、時(shí)鐘網(wǎng)絡(luò)的產(chǎn)生和傳輸電路功能的實(shí)現(xiàn)為:
[0007](I)異步FIFO緩存功能:針對電路中不同時(shí)鐘域異步的問題,在FPGA內(nèi)部邏輯中采用基于格雷碼計(jì)數(shù)的異步FIFO ;在發(fā)送端,寫時(shí)鐘控制下、非滿信號(hào)與由數(shù)據(jù)產(chǎn)生提供的發(fā)送數(shù)據(jù)使能信號(hào)有效時(shí),先將RAM數(shù)據(jù)地址通過二進(jìn)制轉(zhuǎn)換為格雷碼數(shù)值,再利用格雷碼數(shù)值將發(fā)送數(shù)據(jù)地址分配到雙端口 RAM中,同時(shí)將發(fā)送數(shù)據(jù)寫入RAM ;讀時(shí)鐘控制下、非空信號(hào)與Aurora協(xié)議邏輯接收使能信號(hào)有效時(shí),從RAM中讀取數(shù)據(jù)地址,并將數(shù)據(jù)發(fā)送到Aurora協(xié)議邏輯;讀寫時(shí)鐘同步器將時(shí)鐘信號(hào)進(jìn)行同步;在接收端,寫時(shí)鐘控制下非滿信號(hào)與接收使能信 號(hào)有效時(shí),通過格雷碼計(jì)數(shù)方式將數(shù)據(jù)地址分配到雙端口 RAM中,同時(shí)將接收到的數(shù)據(jù)寫入RAM ;讀時(shí)鐘控制下、非空信號(hào)與數(shù)據(jù)檢測邏輯使能信號(hào)有效時(shí),從RAM中讀取數(shù)據(jù)地址,并將數(shù)據(jù)發(fā)送到數(shù)據(jù)檢測邏輯,執(zhí)行相應(yīng)處理邏輯;
[0008](2)時(shí)鐘網(wǎng)絡(luò)產(chǎn)生功能:有源晶振通過電平轉(zhuǎn)換產(chǎn)生的差分時(shí)鐘,由GTP串行收發(fā)模塊專用時(shí)鐘引腳輸入,在時(shí)鐘產(chǎn)生器(ClockGenerator)內(nèi)部增加數(shù)字鎖相環(huán)(Phase-locked loops, PLL),使得輸入的差分時(shí)鐘信號(hào)經(jīng)過差分輸入時(shí)鐘緩沖器(IBUFDS),對時(shí)鐘偏移和時(shí)鐘漂移進(jìn)行補(bǔ)償,得到穩(wěn)定的單端時(shí)鐘信號(hào),送入Aimm1協(xié)議邏輯控制單元;經(jīng)過Aimm1協(xié)議邏輯控制得到的輸出時(shí)鐘信號(hào)(GTPCLKOUT),經(jīng)過一級(jí)時(shí)鐘緩沖器(BUF102)送入時(shí)鐘網(wǎng)絡(luò);在數(shù)字時(shí)鐘管理模塊驅(qū)動(dòng)下,產(chǎn)生Aimm1內(nèi)部邏輯所需的系統(tǒng)時(shí)鐘信號(hào)(SYS_CLK)和用戶邏輯所需的用戶時(shí)鐘信號(hào)(USER_CLK),所述的用戶邏輯所需的用戶時(shí)鐘信號(hào)(USER_CLK)即是所述的邏輯功能使用的時(shí)鐘信號(hào);時(shí)鐘補(bǔ)償用于控制發(fā)送數(shù)據(jù)端時(shí)鐘補(bǔ)償序列;
[0009](3)傳輸電路功能的實(shí)現(xiàn):采用異步FIFO連接數(shù)據(jù)產(chǎn)生和數(shù)據(jù)檢測與Aurora協(xié)議邏輯控制功能,將數(shù)據(jù)進(jìn)行緩沖,匹配數(shù)據(jù)發(fā)送速率與Aurora協(xié)議邏輯控制速率;當(dāng)數(shù)據(jù)發(fā)送時(shí),由數(shù)據(jù)產(chǎn)生功能生成的數(shù)據(jù),經(jīng)由異步FIFO傳輸?shù)紸urora協(xié)議邏輯控制,由Aurora協(xié)議轉(zhuǎn)換為串行差分信號(hào),傳輸?shù)絊FP光電轉(zhuǎn)換模塊轉(zhuǎn)換成光信號(hào)經(jīng)由光纖發(fā)送;當(dāng)數(shù)據(jù)接收時(shí),由SFP光電轉(zhuǎn)換模塊將接收的光信號(hào)轉(zhuǎn)換成差分信號(hào),經(jīng)由Aurora協(xié)議轉(zhuǎn)換為接收數(shù)據(jù)信號(hào),通過異步FIFO將數(shù)據(jù)緩存,發(fā)送到數(shù)據(jù)檢測功能,實(shí)現(xiàn)數(shù)據(jù)傳輸。[0010]本發(fā)明在異步FIFO中利用格雷碼計(jì)數(shù)方式能夠減少數(shù)據(jù)地址跳變中出錯(cuò)的概率,采用兩級(jí)觸發(fā)器串聯(lián)方式同步時(shí)鐘信號(hào),能夠降低亞穩(wěn)態(tài)的影響;基于格雷碼計(jì)數(shù)方式的異步FIFO緩存與Aurora協(xié)議相結(jié)合的光纖傳輸方法能夠在光纖數(shù)據(jù)傳輸過程中減少誤碼的產(chǎn)生,提高數(shù)據(jù)傳輸?shù)臏?zhǔn)確性。
【專利附圖】
【附圖說明】
[0011]圖1典型的光纖高速數(shù)據(jù)傳輸電路結(jié)構(gòu)圖。
[0012]圖2典型Aurora協(xié)議傳輸方案邏輯功能圖。
[0013]圖3基于改進(jìn)的光纖高速數(shù)據(jù)傳輸電路的邏輯功能圖。
[0014]圖4異步FIFO邏輯功能圖。
[0015]圖5時(shí)鐘網(wǎng)絡(luò)分配圖。 [0016]圖6Aurora協(xié)議接收時(shí)序圖。
[0017]圖7Aurora協(xié)議發(fā)送時(shí)序圖。
[0018]圖8數(shù)據(jù)傳輸方案仿真圖。
[0019]圖9自收發(fā)測試數(shù)據(jù)采樣圖。
[0020]圖10全雙工互收發(fā)測試數(shù)據(jù)采樣圖。
【具體實(shí)施方式】
[0021]首先對本發(fā)明的傳輸方法的技術(shù)方案進(jìn)行描述:
[0022]本發(fā)明的基于異步通信模式的光纖數(shù)據(jù)傳輸方法,所采用的高速數(shù)據(jù)傳輸電路的基本框架如圖3所述,采用FPGA芯片內(nèi)部功能設(shè)計(jì)方式實(shí)現(xiàn),所實(shí)現(xiàn)的邏輯功能包括數(shù)據(jù)產(chǎn)生、數(shù)字時(shí)鐘管理模塊、時(shí)鐘補(bǔ)償、數(shù)據(jù)檢測、格雷碼計(jì)數(shù)的異步FIFO緩存和Aurora協(xié)議邏輯控制,其中,數(shù)據(jù)產(chǎn)生、數(shù)字時(shí)鐘管理、時(shí)鐘補(bǔ)償、數(shù)據(jù)檢測和Aurora協(xié)議邏輯控制功能采用FPGA標(biāo)準(zhǔn)設(shè)置方式實(shí)現(xiàn)。本發(fā)明的傳輸方法,改進(jìn)之處在于基于格雷碼計(jì)數(shù)的異步FIFO緩存、時(shí)鐘網(wǎng)絡(luò)的產(chǎn)生和傳輸電路功能的實(shí)現(xiàn)幾個(gè)部分:
[0023](I)異步FIFO緩存功能:針對電路中不同時(shí)鐘域異步的問題,在FPGA內(nèi)部邏輯中采用基于格雷碼計(jì)數(shù)的異步FIF0,結(jié)構(gòu)框圖如圖4所示;在發(fā)送端,寫時(shí)鐘控制下、非滿信號(hào)與由數(shù)據(jù)產(chǎn)生提供的發(fā)送數(shù)據(jù)使能信號(hào)有效時(shí),先將RAM數(shù)據(jù)地址通過二進(jìn)制轉(zhuǎn)換為格雷碼數(shù)值,再利用格雷碼數(shù)值將發(fā)送數(shù)據(jù)地址分配到雙端口 RAM中,同時(shí)將發(fā)送數(shù)據(jù)寫入RAM ;讀時(shí)鐘控制下、非空信號(hào)與Aurora協(xié)議邏輯接收使能信號(hào)有效時(shí),從RAM中讀取數(shù)據(jù)地址,并將數(shù)據(jù)發(fā)送到Aurora協(xié)議邏輯;讀寫時(shí)鐘同步器將時(shí)鐘信號(hào)進(jìn)行同步;在接收端,寫時(shí)鐘控制下非滿信號(hào)與接收使能信號(hào)有效時(shí),通過格雷碼計(jì)數(shù)方式將數(shù)據(jù)地址分配到雙端口 RAM中,同時(shí)將數(shù)據(jù)寫入RAM ;讀時(shí)鐘控制下、非空信號(hào)與數(shù)據(jù)檢測邏輯使能信號(hào)有效時(shí),從RAM中讀取數(shù)據(jù)地址,并將數(shù)據(jù)發(fā)送到數(shù)據(jù)檢測邏輯,執(zhí)行相應(yīng)處理邏輯。
[0024]在不同時(shí)鐘域讀寫地址每次變化需要加1,當(dāng)寫地址在讀時(shí)鐘域采樣,以及讀地址在寫時(shí)鐘域采樣時(shí),由于異步操作,二進(jìn)制計(jì)數(shù)在相鄰編碼狀態(tài)跳變時(shí)采樣數(shù)據(jù)的誤碼率變大,出現(xiàn)亞穩(wěn)態(tài)位數(shù)變多,本發(fā)明通過在異步FIFO內(nèi)將數(shù)據(jù)地址通過二進(jìn)制轉(zhuǎn)換為格雷碼數(shù)值,由于在相鄰編碼狀態(tài)跳變時(shí),僅有一個(gè)bit發(fā)生變化,這樣在跨時(shí)鐘域讀寫地址采樣時(shí),降低了數(shù)據(jù)跳變引起的誤碼率。[0025](2)時(shí)鐘網(wǎng)絡(luò)產(chǎn)生功能:時(shí)鐘網(wǎng)絡(luò)分配邏輯如圖5所示;有源晶振通過電平轉(zhuǎn)換產(chǎn)生的差分時(shí)鐘,由GTP串行收發(fā)模塊專用時(shí)鐘引腳輸入,在時(shí)鐘產(chǎn)生器(Clock Generator)內(nèi)部增加數(shù)字鎖相環(huán)(Phase-locked loops, PLL),使得輸入的差分時(shí)鐘信號(hào)經(jīng)過差分輸入時(shí)鐘緩沖器(IBUFDS),對時(shí)鐘偏移和時(shí)鐘漂移進(jìn)行補(bǔ)償,得到穩(wěn)定的單端時(shí)鐘信號(hào),送入Aurora協(xié)議邏輯控制單元;經(jīng)過Aurora協(xié)議邏輯控制得到的輸出時(shí)鐘信號(hào)(GTPCLKOUT),經(jīng)過一級(jí)時(shí)鐘緩沖器(BUF102)送入時(shí)鐘網(wǎng)絡(luò);在數(shù)字時(shí)鐘管理模塊驅(qū)動(dòng)下,產(chǎn)生Aurora內(nèi)部邏輯所需的系統(tǒng)時(shí)鐘信號(hào)(SYS_CLK)和用戶邏輯所需的用戶時(shí)鐘信號(hào)(USER_CLK),所述的用戶邏輯所需的用戶時(shí)鐘信號(hào)(USER_CLK)即是所述的邏輯功能使用的時(shí)鐘信號(hào);時(shí)鐘補(bǔ)償用于控制發(fā)送數(shù)據(jù)端時(shí)鐘補(bǔ)償序列;
[0026](3)傳輸電路功能的實(shí)現(xiàn):采用異步FIFO連接數(shù)據(jù)產(chǎn)生和數(shù)據(jù)檢測與Aurora協(xié)議邏輯控制功能,將數(shù)據(jù)進(jìn)行緩沖,匹配數(shù)據(jù)發(fā)送速率與Aurora協(xié)議邏輯控制速率;當(dāng)數(shù)據(jù)發(fā)送時(shí),由數(shù)據(jù)產(chǎn)生功能生成的數(shù)據(jù),經(jīng)由異步FIFO傳輸?shù)紸urora協(xié)議邏輯控制,由Aurora協(xié)議轉(zhuǎn)換為串行差分信號(hào),傳輸?shù)絊FP光電轉(zhuǎn)換模塊轉(zhuǎn)換成光信號(hào)經(jīng)由光纖發(fā)送;當(dāng)數(shù)據(jù)接收時(shí),由SFP光電轉(zhuǎn)換模塊將接收的光信號(hào)轉(zhuǎn)換成差分信號(hào),經(jīng)由Aurora協(xié)議轉(zhuǎn)換為接收數(shù)據(jù)信號(hào),通過異 步FIFO將數(shù)據(jù)緩存,發(fā)送到數(shù)據(jù)檢測功能,實(shí)現(xiàn)數(shù)據(jù)傳輸。
[0027]下面針對實(shí)施例進(jìn)一步說明:在本實(shí)施例中,除了給出基于異步通信模式的光纖數(shù)據(jù)傳輸方法外,還給出了誤碼率的測試方法。本實(shí)施例既能夠?qū)崿F(xiàn)低誤碼率、高可靠性的全雙工數(shù)據(jù)通信,又可同時(shí)實(shí)現(xiàn)誤碼率測試。包括:(I)傳輸功能仿真。將控制邏輯在集成軟件仿真環(huán)境中進(jìn)行仿真驗(yàn)證,保證系統(tǒng)能夠在仿真環(huán)境中正常可靠的運(yùn)行;(2)誤碼率測試。將控制邏輯加載到設(shè)計(jì)的硬件控制電路板中,測試方案的傳輸性能,以及傳輸數(shù)據(jù)的準(zhǔn)確性。
[0028]根據(jù)Aurora協(xié)議標(biāo)準(zhǔn),采用流數(shù)據(jù)傳輸方式,發(fā)送時(shí)序圖如圖6所示,其中TX_SRC_RDY_N為低代表數(shù)據(jù)有效,TX_DST_RDY_N為低代表準(zhǔn)備好接受數(shù)據(jù),D0_CC為高時(shí)進(jìn)行時(shí)鐘補(bǔ)償,TX_D[0: (wn-1)]為發(fā)送的流數(shù)據(jù)信息。相應(yīng)的接收時(shí)序圖如圖7所示,RX_SRC_RDY_NS低時(shí)代表數(shù)據(jù)有效,RX_D[0: (wn-1)]為接收到的流數(shù)據(jù)信息。在Aurora協(xié)議的基礎(chǔ)上,再生成的設(shè)計(jì)中修改數(shù)據(jù)產(chǎn)生和數(shù)據(jù)檢測模塊,并加入基于格雷碼計(jì)數(shù)的異步FIFO模塊,完成流數(shù)據(jù)信息的緩存,實(shí)現(xiàn)數(shù)據(jù)的發(fā)送和接收。
[0029]采用Xilinx公司Spartan6系列的XC6SLX45T,封裝是FGG484,速度等級(jí)是-2,功能仿真軟件是ISE Simulator (VHDL/Verilog),硬件描述語言是Verilog,并在ISESimulator中編寫Testbench文件。將系統(tǒng)中光纖接口的串行差分信號(hào)RXP、RXN和TXP、TXN連接,形成仿真回路,設(shè)定差分時(shí)鐘輸入為125MHZ,例化系統(tǒng)設(shè)計(jì)模塊,并在頂層設(shè)置對應(yīng)接口,進(jìn)行仿真,等待初始化配置完成,進(jìn)行全局邏輯復(fù)位,可以得到系統(tǒng)傳輸功能仿真圖如圖8所示。通過數(shù)據(jù)產(chǎn)生模塊發(fā)送16位數(shù)據(jù)TX_DATA_R,并在中間狀態(tài)插入?yún)⒖紨?shù)值H003C數(shù)據(jù)幀,在數(shù)據(jù)檢測模塊接收到16位數(shù)據(jù)RX_DATA_R的同時(shí),進(jìn)行誤碼統(tǒng)計(jì)得出當(dāng)前時(shí)刻誤碼計(jì)數(shù)值err_C0Unt,由功能仿真圖中可以看出發(fā)送和接收的高速串行差分?jǐn)?shù)據(jù)傳輸可靠,誤碼計(jì)數(shù)值始終為0,發(fā)送和接收到的數(shù)據(jù)一致,符合設(shè)計(jì)要求。
[0030]連接測試電路和計(jì)算機(jī),將光纖尾纖插入SFP光模塊內(nèi),外部時(shí)鐘晶振采用單端有源晶振,通過電平轉(zhuǎn)換器為GTP模塊提供專用的125MHz差分時(shí)鐘信號(hào),采用異步通信模式測試傳輸線路的誤碼產(chǎn)生。利用Flash存儲(chǔ)配置信息,完成對FPGA邏輯控制電路的程序下載功能。內(nèi)部邏輯的實(shí)現(xiàn)過程是:通過MPACT下載工具,將配置信息通過數(shù)據(jù)總線串行加載到Flash中,重新上電之后,實(shí)現(xiàn)FPGA自動(dòng)配置。在發(fā)送端將數(shù)據(jù)產(chǎn)生模塊生成的測試數(shù)據(jù),緩存在16位異步FIFO中,當(dāng)數(shù)據(jù)達(dá)到飽和,通過FIFO的緩沖模塊將16位數(shù)據(jù)信號(hào)傳輸給Aurora協(xié)議邏輯單元,在內(nèi)部協(xié)議的封裝下轉(zhuǎn)換成高速串行差分信號(hào)TXP和TXN,通過Aurora協(xié)議邏輯單元驅(qū)動(dòng)SFP光模塊將電信號(hào)轉(zhuǎn)換成光信號(hào),經(jīng)由光纖尾纖發(fā)送給差分?jǐn)?shù)據(jù)接收端;在接收端,通過Aurora協(xié)議邏輯單元驅(qū)動(dòng)的SFP光模塊接收到光信號(hào)并轉(zhuǎn)換成高速串行差分信號(hào)RXP和RXN,再把轉(zhuǎn)換后的數(shù)據(jù)通過異步FIFO將接收到的數(shù)據(jù)信號(hào)傳輸給數(shù)據(jù)檢測模塊進(jìn)行校驗(yàn),最終將發(fā)送和接收到的數(shù)據(jù)通過邏輯分析,對誤碼進(jìn)行統(tǒng)計(jì)。得出誤碼率測試結(jié)果。
[0031]單板的自收發(fā)測試時(shí),在系統(tǒng)項(xiàng)目中加入集成控制(Integrated Contorller,ICON)核與集成邏輯分析(Integrate Logic Analyzer, I LA)核,再次調(diào)用ChipScope邏輯分析儀,將插入的IBERT核換成新生成的核信息,觀察內(nèi)部信號(hào)的實(shí)時(shí)性,觀察當(dāng)前時(shí)刻的采樣數(shù)據(jù),得到誤碼率測試圖9所示,發(fā)現(xiàn)err_Count的錯(cuò)誤計(jì)數(shù)值始終為0,觀察到的發(fā)送信號(hào)和接收信號(hào)以及內(nèi)部轉(zhuǎn)換的數(shù)據(jù)信號(hào),在圖中得到的傳輸結(jié)果一致,驗(yàn)證了該方案設(shè)計(jì)的正確性和可行性,由于數(shù)據(jù)傳輸采集信號(hào)有104個(gè)數(shù)據(jù)延時(shí),根據(jù)時(shí)鐘頻率計(jì)算出數(shù)據(jù)延時(shí)時(shí)間為832ns,滿足功能測試的要求,能夠達(dá)到實(shí)際傳輸?shù)闹笜?biāo)。
[0032] 兩板間互收發(fā)測試時(shí),在系統(tǒng)項(xiàng)目中加入ICON核與LIA核,重新觀察內(nèi)部信號(hào)當(dāng)前時(shí)刻的采樣數(shù)據(jù)信息,得到圖10所示結(jié)果,可以看出數(shù)據(jù)傳輸過程中,系統(tǒng)傳輸穩(wěn)定可靠,err_count錯(cuò)誤計(jì)數(shù)值始終為0,實(shí)現(xiàn)了板間通信的測試驗(yàn)證,滿足傳輸數(shù)據(jù)的準(zhǔn)確性。
【權(quán)利要求】
1.一種基于異步通信模式的光纖數(shù)據(jù)傳輸方法,所采用的高速數(shù)據(jù)傳輸電路采用FPGA芯片內(nèi)部功能設(shè)計(jì)方式實(shí)現(xiàn),所實(shí)現(xiàn)的邏輯功能包括數(shù)據(jù)產(chǎn)生、數(shù)字時(shí)鐘管理模塊、時(shí)鐘補(bǔ)償、數(shù)據(jù)檢測、格雷碼計(jì)數(shù)的異步FIFO緩存和Aurora協(xié)議邏輯控制,其中,數(shù)據(jù)產(chǎn)生、數(shù)字時(shí)鐘管理、時(shí)鐘補(bǔ)償、數(shù)據(jù)檢測和Aurora協(xié)議邏輯控制功能采用FPGA標(biāo)準(zhǔn)設(shè)置方式實(shí)現(xiàn),其特征在于,基于格雷碼計(jì)數(shù)的異步FIFO緩存、時(shí)鐘網(wǎng)絡(luò)的產(chǎn)生和傳輸電路功能的實(shí)現(xiàn)為: (1)異步FIFO緩存功能:針對電路中不同時(shí)鐘域異步的問題,在FPGA內(nèi)部邏輯中采用基于格雷碼計(jì)數(shù)的異步FIFO;在發(fā)送端,寫時(shí)鐘控制下、非滿信號(hào)與由數(shù)據(jù)產(chǎn)生提供的發(fā)送數(shù)據(jù)使能信號(hào)有效時(shí),先將RAM數(shù)據(jù)地址通過二進(jìn)制轉(zhuǎn)換為格雷碼數(shù)值,再利用格雷碼數(shù)值將發(fā)送數(shù)據(jù)地址分配到雙端口 RAM中,同時(shí)將發(fā)送數(shù)據(jù)寫入RAM ;讀時(shí)鐘控制下、非空信號(hào)與Aurora協(xié)議邏輯接收使能信號(hào)有效時(shí),從RAM中讀取數(shù)據(jù)地址,并將數(shù)據(jù)發(fā)送到Aurora協(xié)議邏輯;讀寫時(shí)鐘同步器將時(shí)鐘信號(hào)進(jìn)行同步;在接收端,寫時(shí)鐘控制下非滿信號(hào)與接收使能信號(hào)有效時(shí),通過格雷碼計(jì)數(shù)方式將數(shù)據(jù)地址分配到雙端口 RAM中,同時(shí)將接收到的數(shù)據(jù)寫入RAM;讀時(shí)鐘控制下、非空信號(hào)與數(shù)據(jù)檢測邏輯使能信號(hào)有效時(shí),從RAM中讀取數(shù)據(jù)地址,并將數(shù)據(jù)發(fā)送到數(shù)據(jù)檢測邏輯,執(zhí)行相應(yīng)處理邏輯; (2)時(shí)鐘網(wǎng)絡(luò)產(chǎn)生功能:有源晶振通過電平轉(zhuǎn)換產(chǎn)生的差分時(shí)鐘,由GTP串行收發(fā)模塊專用時(shí)鐘引腳輸入,在時(shí)鐘產(chǎn)生器(ClockGenerator)內(nèi)部增加數(shù)字鎖相環(huán)(Phase-lockedloops, PLL),使得輸入的差分時(shí)鐘信號(hào)經(jīng)過差分輸入時(shí)鐘緩沖器(IBUFDS),對時(shí)鐘偏移和時(shí)鐘漂移進(jìn)行補(bǔ)償,得到穩(wěn)定的單端時(shí)鐘信號(hào),送入Aurora協(xié)議邏輯控制單元;經(jīng)過Aurora協(xié)議邏輯控制得到的輸出時(shí)鐘信號(hào)(GTPCLKOUT),經(jīng)過一級(jí)時(shí)鐘緩沖器(BUF102)送入時(shí)鐘網(wǎng)絡(luò);在數(shù)字時(shí)鐘管理模塊驅(qū)動(dòng)下,產(chǎn)生Aimm1內(nèi)部邏輯所需的系統(tǒng)時(shí)鐘信號(hào)(SYS_CLK)和用戶邏輯所需的用戶時(shí)鐘信號(hào)(USER_CLK),所述的用戶邏輯所需的用戶時(shí)鐘信號(hào)(USER_CLK)即是 所述的邏輯功能使用的時(shí)鐘信號(hào);時(shí)鐘補(bǔ)償用于控制發(fā)送數(shù)據(jù)端時(shí)鐘補(bǔ)償序列; (3)傳輸電路功能的實(shí)現(xiàn):采用異步FIFO連接數(shù)據(jù)產(chǎn)生和數(shù)據(jù)檢測與Aurora協(xié)議邏輯控制功能,將數(shù)據(jù)進(jìn)行緩沖,匹配數(shù)據(jù)發(fā)送速率與Aurora協(xié)議邏輯控制速率;當(dāng)數(shù)據(jù)發(fā)送時(shí),由數(shù)據(jù)產(chǎn)生功能生成的數(shù)據(jù),經(jīng)由異步FIFO傳輸?shù)紸urora協(xié)議邏輯控制,由Aurora協(xié)議轉(zhuǎn)換為串行差分信號(hào),傳輸?shù)絊FP光電轉(zhuǎn)換模塊轉(zhuǎn)換成光信號(hào)經(jīng)由光纖發(fā)送;當(dāng)數(shù)據(jù)接收時(shí),由SFP光電轉(zhuǎn)換模塊將接收的光信號(hào)轉(zhuǎn)換成差分信號(hào),經(jīng)由Aurora協(xié)議轉(zhuǎn)換為接收數(shù)據(jù)信號(hào),通過異步FIFO將數(shù)據(jù)緩存,發(fā)送到數(shù)據(jù)檢測功能,實(shí)現(xiàn)數(shù)據(jù)傳輸。
【文檔編號(hào)】H04B10/25GK104022828SQ201410209577
【公開日】2014年9月3日 申請日期:2014年5月16日 優(yōu)先權(quán)日:2014年5月16日
【發(fā)明者】董峰, 馬云峰, 許聰, 譚超 申請人:天津大學(xué)