本發(fā)明涉及一種電力系統(tǒng)自動化技術(shù)領(lǐng)域的仿真系統(tǒng)及其仿真方法,具體講涉及一種基于FPGA多速率光纖通訊的實(shí)時(shí)仿真系統(tǒng)及其仿真方法。
背景技術(shù):
隨著電力電子領(lǐng)域的發(fā)展,電力仿真系統(tǒng)的龐大,MMC技術(shù)的發(fā)展,拓?fù)浣Y(jié)構(gòu)越來越大,對電力電子設(shè)備方面的需求越來越高。電子仿真系統(tǒng)中包含成百上千的開關(guān)器件,其控制器的設(shè)計(jì)相對復(fù)雜,對控制器的性能和功能要求也比較嚴(yán)格,不僅管理不便,且成本較高。對控制器進(jìn)行全面精確地驗(yàn)證是必須要解決的問題,因此研究全面、高速、高精度的實(shí)時(shí)仿真和接口通訊方法具有重要的實(shí)用價(jià)值。
光纖通訊是光導(dǎo)纖維傳送信號的一種通訊手段。光纖通訊容量大,比電通訊容量大千萬倍,在兩根光纖上可以傳遞大量數(shù)據(jù);保密性能好,抗干擾性很強(qiáng)。將光纖通訊用于電力電子領(lǐng)域是極其有必要的,需要一種結(jié)合電力仿真系統(tǒng)中的多種控制板卡、多種不同信號通訊的需要而創(chuàng)作的仿真系統(tǒng)及其仿真方法。
技術(shù)實(shí)現(xiàn)要素:
為解決上述現(xiàn)有技術(shù)中的不足,本發(fā)明的目的是提供一種基于FPGA多速率光纖通訊的實(shí)時(shí)仿真系統(tǒng)及其仿真方法,解決在電力電子領(lǐng)域,實(shí)時(shí)仿真系統(tǒng)中多種、多個(gè)控制板卡與仿真機(jī)傳輸數(shù)據(jù)需求的問題。
本發(fā)明的目的是采用下述技術(shù)方案實(shí)現(xiàn)的:
本發(fā)明提供一種基于FPGA多速率光纖通訊的實(shí)時(shí)仿真系統(tǒng),其改進(jìn)之處在于,所述系統(tǒng)包括具有并行多速率低速接口端和串行高速接口端的光纖信號轉(zhuǎn)換器,所述并行多速率低速接口端通過光纖與通訊板卡或外部控制器雙向連接;所述串行高速接口端通過光纖與實(shí)時(shí)仿真機(jī)雙向連接;同時(shí),外部控制器與實(shí)時(shí)仿真機(jī)通過IO口連接,實(shí)時(shí)仿真機(jī)又與上位機(jī)相連
進(jìn)一步地,所述光纖信號轉(zhuǎn)換器由FPGA芯片與光電轉(zhuǎn)換板構(gòu)成,其中FPGA芯片端為串行高速接口端;所述光電轉(zhuǎn)換器端為并行多速率低速接口端。
進(jìn)一步地,所述光電轉(zhuǎn)換板用于接收和發(fā)送不同速率不同通道低速光纖的數(shù)據(jù),并行多 速率低速接口端與外部控制器通訊包括光信號接收器RX和光信號發(fā)射器TX(數(shù)值TX=1表示的是狀態(tài)量,表示光信號發(fā)射器可以執(zhí)行信號發(fā)送);所述光信號接收器RX包含判斷數(shù)據(jù)接收狀態(tài)和校驗(yàn),校驗(yàn)成功則接收有效數(shù)據(jù),不成功則丟棄數(shù)據(jù);光信號發(fā)射器TX包含判斷數(shù)據(jù)發(fā)送狀態(tài)和校驗(yàn)碼生成,校驗(yàn)碼通過計(jì)算CRC循環(huán)冗余校驗(yàn)碼生成;;
所述數(shù)據(jù)接收狀態(tài)包括開始、接收中、結(jié)束和空閑狀態(tài);所述數(shù)據(jù)發(fā)送狀態(tài)包括開始、發(fā)送中、結(jié)束和空閑狀態(tài)。
進(jìn)一步地,所述光纖信號轉(zhuǎn)換器的FPGA芯片用于轉(zhuǎn)換并行低速數(shù)據(jù)與串行高速數(shù)據(jù);低速數(shù)據(jù)轉(zhuǎn)換為高速數(shù)據(jù)時(shí):并行傳入低速數(shù)據(jù),在固定時(shí)刻將低速數(shù)據(jù)存入RAM中,另一端高速通道串行一次讀出,完成轉(zhuǎn)換,一次全部讀入RAM存儲區(qū)域中的數(shù)據(jù)組合在一起為一幀;高速數(shù)據(jù)轉(zhuǎn)換為低速數(shù)據(jù)時(shí):串行輸出的一幀數(shù)據(jù)進(jìn)行解幀操作,即在高速時(shí)鐘下,數(shù)據(jù)依次讀入RAM存儲區(qū)域中,按照順序分配低速數(shù)據(jù)給單個(gè)寄存器;所述低速數(shù)據(jù)為固定長度的數(shù)據(jù)。
進(jìn)一步地,所述光纖信號轉(zhuǎn)換器的串行高速接口端與實(shí)時(shí)仿真機(jī)之間的傳輸采用以底層吉比特或Aurora協(xié)議,完成雙方的組幀和解幀,傳輸速率為2Gps~5Gbps。
進(jìn)一步地,所述實(shí)時(shí)仿真機(jī)由CPU和FPGA板構(gòu)成;所述FPGA板與光纖信號轉(zhuǎn)換器通訊的數(shù)據(jù)通過PCIe協(xié)議與CPU進(jìn)行數(shù)據(jù)交互;所述實(shí)時(shí)仿真機(jī)由上位機(jī)控制及參數(shù)修改;所述上位機(jī)與實(shí)時(shí)仿真機(jī)之間采用TCP/IP協(xié)議;
所述實(shí)時(shí)仿真機(jī)的FPGA板處理的數(shù)據(jù)為定點(diǎn)數(shù)數(shù)據(jù);所述實(shí)時(shí)仿真機(jī)包括模擬量輸入輸出板卡和數(shù)字量輸入輸出板卡;所述實(shí)時(shí)仿真機(jī)通過IO板卡與外部控制器相連時(shí)作為通訊接口進(jìn)行擴(kuò)展。
本發(fā)明還提供一種基于FPGA多速率光纖通訊的實(shí)時(shí)仿真系統(tǒng)的仿真方法,其改進(jìn)之處在于,所述方法包括接收數(shù)據(jù)和發(fā)送數(shù)據(jù)兩個(gè)過程。
進(jìn)一步地,所述接收數(shù)據(jù)采用狀態(tài)機(jī)來實(shí)現(xiàn),包括空閑、開始、接收及結(jié)束四個(gè)狀態(tài);初始狀態(tài)為空閑狀態(tài),若監(jiān)測到RX=0,即起始位為零,轉(zhuǎn)為開始狀態(tài);接收數(shù)據(jù)的移位寄存器開始接收數(shù)據(jù),計(jì)數(shù)器開始計(jì)時(shí);下一時(shí)鐘為接收狀態(tài),計(jì)數(shù)器計(jì)數(shù),移位寄存器邊移位邊計(jì)算CRC循環(huán)冗余校驗(yàn)碼或自定義校驗(yàn)碼;接收有效數(shù)據(jù)的長度為固定長度,計(jì)數(shù)器等于數(shù)據(jù)長度時(shí)轉(zhuǎn)為結(jié)束狀態(tài);校驗(yàn)碼已生成,與接收校驗(yàn)碼比較,若正確則接收數(shù)據(jù),若不正確則丟棄數(shù)據(jù);結(jié)束狀態(tài)后下一時(shí)鐘轉(zhuǎn)為空閑狀態(tài),如此反復(fù)。
進(jìn)一步地,所述發(fā)送數(shù)據(jù)采用狀態(tài)機(jī)來實(shí)現(xiàn),包括空閑、開始、發(fā)送及結(jié)束四個(gè)狀態(tài);初始狀態(tài)為空閑狀態(tài),則一直發(fā)送TX=1,若發(fā)送周期到,則先進(jìn)入開始狀態(tài),發(fā)送一個(gè)時(shí)鐘 周期TX=1,低電平為起始位;然后進(jìn)入發(fā)送狀態(tài),發(fā)送數(shù)據(jù)存入移位寄存器中,邊發(fā)送邊計(jì)算校驗(yàn)碼,計(jì)數(shù)器開始計(jì)時(shí);計(jì)數(shù)器計(jì)時(shí)到固定的發(fā)送數(shù)據(jù)長度后,進(jìn)入結(jié)束狀態(tài),發(fā)送停止位TX=1;一個(gè)時(shí)鐘周期后,再次回到初始狀態(tài),即空閑狀態(tài),一直發(fā)送TX=1,如此循環(huán);所述發(fā)送數(shù)據(jù)包含有光纖通訊超時(shí)故障位;
與最接近的現(xiàn)有技術(shù)相比,本發(fā)明提供的技術(shù)方案具有的優(yōu)異效果是:
本發(fā)明提供的一種基于FPGA多速率光纖通訊的實(shí)時(shí)仿真系統(tǒng)及其仿真方法,實(shí)時(shí)仿真系統(tǒng)中的光纖信號轉(zhuǎn)換器將外部控制器的多通道多速率的低速光纖轉(zhuǎn)為單通道高速光纖傳輸,再以吉比特或Aurora協(xié)議傳輸給實(shí)時(shí)仿真機(jī),以此構(gòu)成雙端回路。FPGA高頻率采樣低速光纖數(shù)據(jù)消除抖動誤差,可實(shí)現(xiàn)多種校驗(yàn)功能,不同的傳輸速率,通過RAM實(shí)現(xiàn)高速轉(zhuǎn)換,傳送給OP5600實(shí)時(shí)仿真機(jī)。該方法可以節(jié)約仿真機(jī)資源并滿足多種控制板卡通訊需求,增加靈活性,光纖信號轉(zhuǎn)換器可擴(kuò)展性強(qiáng),該方法運(yùn)算速度快,減小數(shù)據(jù)延遲,保證數(shù)據(jù)傳輸正確性,傳輸數(shù)據(jù)不會丟失,實(shí)用性強(qiáng)。
附圖說明
圖1是本發(fā)明提供的基于FPGA多速率光纖通訊的實(shí)時(shí)仿真方法結(jié)構(gòu)示意圖;
圖2是本發(fā)明提供的基于FPGA多速率光纖通訊的實(shí)時(shí)仿真方法流程示意圖。
具體實(shí)施方式
下面結(jié)合附圖對本發(fā)明的具體實(shí)施方式作進(jìn)一步的詳細(xì)說明。
以下描述和附圖充分地示出本發(fā)明的具體實(shí)施方案,以使本領(lǐng)域的技術(shù)人員能夠?qū)嵺`它們。為了對披露的實(shí)施例的一些方面有一個(gè)基本的理解,下面給出了簡單的概括。該概括部分不是泛泛評述,也不是要確定關(guān)鍵/重要組成元素或描繪這些實(shí)施例的保護(hù)范圍。其唯一目的是用簡單的形式呈現(xiàn)一些概念,以此作為后面的詳細(xì)說明的序言。
其他實(shí)施方案可以包括結(jié)構(gòu)的、邏輯的、電氣的、過程的以及其他的改變。實(shí)施例僅代表可能的變化。除非明確要求,否則單獨(dú)的組件和功能是可選的,并且操作的順序可以變化。一些實(shí)施方案的部分和特征可以被包括在或替換其他實(shí)施方案的部分和特征。本發(fā)明的實(shí)施方案的范圍包括權(quán)利要求書的整個(gè)范圍,以及權(quán)利要求書的所有可獲得的等同物。在本文中,本發(fā)明的這些實(shí)施方案可以被單獨(dú)地或總地用術(shù)語“發(fā)明”來表示,這僅僅是為了方便,并且如果事實(shí)上公開了超過一個(gè)的發(fā)明,不是要自動地限制該應(yīng)用的范圍為任何單個(gè)發(fā)明或發(fā) 明構(gòu)思。
本發(fā)明提供一種基于FPGA多速率光纖通訊的實(shí)時(shí)仿真系統(tǒng),其結(jié)構(gòu)圖如圖1所示,包括外部控制器、光纖信號轉(zhuǎn)換器、實(shí)時(shí)仿真機(jī)上位機(jī)。光纖信號轉(zhuǎn)換器具有并行多速率低速接口端和串行高速接口端,所述并行多速率低速接口端通過光纖與通訊板卡或外部控制器連接;所述串行高速接口端通過光纖與實(shí)時(shí)仿真機(jī)連接。本發(fā)明提供的仿真系統(tǒng)實(shí)現(xiàn)一個(gè)實(shí)時(shí)仿真系統(tǒng),重要的是并行多速率低速光纖接口數(shù)據(jù)與串行高速光纖接口數(shù)據(jù)的相互轉(zhuǎn)換。光纖信號轉(zhuǎn)換器的高速數(shù)據(jù)再與實(shí)時(shí)仿真機(jī)互相傳輸。對于實(shí)時(shí)仿真機(jī)的操作和監(jiān)控,參數(shù)修改等由上位機(jī)來實(shí)現(xiàn),即PC機(jī)。
光纖信號轉(zhuǎn)換器由FPGA與光電轉(zhuǎn)換板構(gòu)成,光電轉(zhuǎn)換板完成的功能是接收和發(fā)送不同速率不同通道低速光纖的數(shù)據(jù),首先是ST接口與外部控制板卡的通訊。RX包含判斷數(shù)據(jù)接收狀態(tài)(開始、接收中、結(jié)束、空閑狀態(tài))和校驗(yàn),校驗(yàn)成功則接收有效數(shù)據(jù),不成功則丟棄這組數(shù)據(jù);TX包含判斷數(shù)據(jù)發(fā)送狀態(tài)(開始、發(fā)送中、結(jié)束、空閑狀態(tài))和校驗(yàn)碼生成。
光纖信號轉(zhuǎn)換器的FPGA完成并行低速數(shù)據(jù)與串行高速數(shù)據(jù)的轉(zhuǎn)換。多種低速通道的數(shù)據(jù)經(jīng)校驗(yàn)成功后并行存入RAM緩存器中,再在高速時(shí)鐘下串行讀出數(shù)據(jù),RAM雙端可實(shí)現(xiàn)不同頻率的獨(dú)立的讀寫數(shù)據(jù)操作;反之,串行高速數(shù)據(jù)轉(zhuǎn)為并行低速數(shù)據(jù)亦然。
多通道多速率低速光纖數(shù)據(jù)與高速光纖數(shù)據(jù)的相互轉(zhuǎn)換也是基于光纖信號轉(zhuǎn)換器中的FPGA的,首先開辟一個(gè)RAM存儲區(qū)域,低速轉(zhuǎn)高速過程為:并行傳入低速數(shù)據(jù)在某一固定時(shí)刻將所有數(shù)據(jù)存入RAM中,另一端高速通道串行一次讀出,如此達(dá)到轉(zhuǎn)換的目的,一次全部讀入RAM中的數(shù)據(jù)組合在一起為一幀;相反的,高速數(shù)據(jù)轉(zhuǎn)為低速數(shù)據(jù)的過程是:串行輸出的一幀數(shù)據(jù)要進(jìn)行解幀操作,即在高速時(shí)鐘下,數(shù)據(jù)依次讀入RAM存儲區(qū)域中,再按照順序分配給低速數(shù)據(jù)單個(gè)的寄存器。低速數(shù)據(jù)每一個(gè)都是固定長度的數(shù)據(jù)。
光纖信號轉(zhuǎn)換器與實(shí)時(shí)仿真機(jī)的傳輸是基于吉比特或Aurora協(xié)議的,Aurora協(xié)議是一種高速光口串行通信協(xié)議,這里采用調(diào)用IP核,在上層進(jìn)行編程,對數(shù)據(jù)進(jìn)行整合和解析操作;上述中描述了光纖信號轉(zhuǎn)換器的組幀和解幀操作,實(shí)時(shí)仿真機(jī)通過搭建RT-XSG模型,也實(shí)現(xiàn)了解幀和組幀操作,依次構(gòu)成雙向通路。
實(shí)時(shí)仿真機(jī)包含CPU和FPGA兩部分,F(xiàn)PGA與光纖信號轉(zhuǎn)換器進(jìn)行通訊,以RT-XSG為基礎(chǔ)搭建模型,實(shí)現(xiàn)可編程邏輯運(yùn)算,CPU主要搭建真實(shí)控制原型,CPU與FPGA通過PCIe協(xié)議來實(shí)現(xiàn)數(shù)據(jù)通訊。PCIe協(xié)議以固定的數(shù)據(jù)格式傳輸,并能實(shí)現(xiàn)異步分時(shí)復(fù)用的功能。根據(jù)控制系統(tǒng)的實(shí)際需要,實(shí)時(shí)仿真機(jī)有自帶的模擬量輸入輸出板卡和數(shù)字量輸入輸出板卡,實(shí)時(shí)仿真機(jī)的IO板卡可直接與外部控制器相連,作為通訊接口的擴(kuò)展。以此本發(fā)明提供的方 法使得整體系統(tǒng)的搭建和設(shè)計(jì)更加便捷。
上位機(jī)根據(jù)實(shí)際需求可以在CPU模型中修改實(shí)時(shí)參數(shù)并監(jiān)控模型運(yùn)行狀況,CPU運(yùn)算速度快,精度高可達(dá)到實(shí)時(shí)仿真的效果,可減少成本,縮短開發(fā)周期。
外部控制器主要是承載對于控制模型發(fā)出一些控制指令、AD開始采樣標(biāo)志命令、模擬輸出等等一些指令。與光電信號轉(zhuǎn)換器的通訊主要是通過ST光纖接口進(jìn)行的。光纖信號轉(zhuǎn)換器將多速率多通道低速數(shù)據(jù)轉(zhuǎn)為高速數(shù)據(jù)主要在FPGA上實(shí)現(xiàn)。
本發(fā)明提供一種基于FPGA多速率光纖通訊的實(shí)時(shí)仿真方法,包括接收數(shù)據(jù)和發(fā)送數(shù)據(jù)兩個(gè)過程。
接收過程流程圖如圖2所示,主要是采用狀態(tài)機(jī)來實(shí)現(xiàn),分為空閑、開始、接收及結(jié)束四個(gè)狀態(tài)。首先,初始狀態(tài)為空閑狀態(tài),若監(jiān)測到RX=0,即起始位為零,轉(zhuǎn)為開始狀態(tài),接收數(shù)據(jù)的移位寄存器開始接收數(shù)據(jù),計(jì)數(shù)器開始計(jì)時(shí);下一時(shí)鐘為接收狀態(tài),計(jì)數(shù)器計(jì)數(shù),移位寄存器邊移位邊計(jì)算CRC校驗(yàn)碼,或其他自定義校驗(yàn)碼;接收有效數(shù)據(jù)的長度都是固定的,計(jì)數(shù)器等于數(shù)據(jù)長度時(shí)轉(zhuǎn)為結(jié)束狀態(tài);這時(shí),校驗(yàn)碼已生成,與接收校驗(yàn)碼比較,若正確則接收這幀數(shù)據(jù),若不正確則丟棄這組數(shù)據(jù);結(jié)束狀態(tài)后下一時(shí)鐘轉(zhuǎn)為空閑狀態(tài),如此反復(fù)。
基于上述實(shí)施方式中的光纖信號轉(zhuǎn)換器的發(fā)送是由TX模塊來完成的,具體過程如下:同樣地,也是采用狀態(tài)機(jī)來實(shí)現(xiàn),分為空閑、開始、發(fā)送及結(jié)束四個(gè)狀態(tài)。首先,初始狀態(tài)為空閑狀態(tài),則一直發(fā)送TX=1,若發(fā)送周期到,則先進(jìn)入開始狀態(tài),發(fā)送一個(gè)時(shí)鐘周期TX=1,低電平為起始位;然后進(jìn)入發(fā)送狀態(tài),發(fā)送數(shù)據(jù)存入移位寄存器中,邊發(fā)送邊計(jì)算校驗(yàn)碼,計(jì)數(shù)器亦開始計(jì)時(shí);計(jì)數(shù)器計(jì)時(shí)到固定的發(fā)送數(shù)據(jù)長度后,進(jìn)入結(jié)束狀態(tài),發(fā)送停止位TX=1;一個(gè)時(shí)鐘周期后,再次回到初始狀態(tài),即空閑狀態(tài),一直發(fā)送TX=1,如此循環(huán)。另外,發(fā)送的數(shù)據(jù)包含有光纖通訊超時(shí)故障位。
最后應(yīng)當(dāng)說明的是:以上實(shí)施例僅用以說明本發(fā)明的技術(shù)方案而非對其限制,盡管參照上述實(shí)施例對本發(fā)明進(jìn)行了詳細(xì)的說明,所屬領(lǐng)域的普通技術(shù)人員依然可以對本發(fā)明的具體實(shí)施方式進(jìn)行修改或者等同替換,這些未脫離本發(fā)明精神和范圍的任何修改或者等同替換,均在申請待批的本發(fā)明的權(quán)利要求保護(hù)范圍之內(nèi)。