一種基于fpga的soe系統(tǒng)及其實現(xiàn)soe的方法
【專利摘要】本發(fā)明屬于工業(yè)控制領(lǐng)域集散控制系統(tǒng)領(lǐng)域,公開了一種基于FPGA的SOE系統(tǒng)及其實現(xiàn)SOE的方法,其特征在于:FPGA位于CPU和PHY芯片之間,通過MII接口分別與CPU和PHY芯片連接;FPGA內(nèi)建IEEE1588數(shù)據(jù)包解析模塊,SOE事件監(jiān)測模塊和自由計時時鐘模塊。本發(fā)明以FPGA+CPU的架構(gòu),極其靈活地實現(xiàn)了高精度的IEEE1588時間同步系統(tǒng),在此基礎(chǔ)上簡潔地實現(xiàn)了高分辨率的SOE系統(tǒng)?;贔PGA技術(shù),以硬件代替軟件,提高了系統(tǒng)的可靠性,抗干擾性能和靈活性靈活性。系統(tǒng)可以根據(jù)實際選擇資源滿足需要的FPGA芯片,還可以根據(jù)實際應(yīng)用靈活地開辟合適大小的片內(nèi)存儲器。
【專利說明】—種基于FPGA的SOE系統(tǒng)及其實現(xiàn)SOE的方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明屬于工業(yè)控制領(lǐng)域集散控制系統(tǒng)領(lǐng)域,具體涉及一種應(yīng)用于輸入輸出信號的基于FPGA的SOE系統(tǒng)及其實現(xiàn)SOE的方法。
【背景技術(shù)】
[0002]隨著計算機、網(wǎng)絡(luò)技術(shù)的迅猛發(fā)展,工業(yè)控制系統(tǒng)的智能化程度越來越高,系統(tǒng)規(guī)模越來越大,處理的信息量越來越大,這就給系統(tǒng)事件分析、故障分析帶了挑戰(zhàn),如何記錄系統(tǒng)事件成為了一個重要課題。作為應(yīng)對,控制系統(tǒng)提出了 SOE要求。SOE全稱是SequenceOf Event,一般翻譯為事件順序。SOE系統(tǒng)可以記錄系統(tǒng)中信號變化的時刻,記錄系統(tǒng)事件發(fā)生時間,可用于系統(tǒng)事件分析、故障分析等,如何提高SOE系統(tǒng)精確度及分辨率,成為SOE系統(tǒng)的重要研究方向。
[0003]提高SOE系統(tǒng)時間精度,需要系統(tǒng)時間能夠精確同步,因此首先需要解決系統(tǒng)同步問題。隨著控制系統(tǒng)規(guī)模的擴大,系統(tǒng)結(jié)構(gòu)復(fù)雜程度的增加,系統(tǒng)數(shù)據(jù)量的增長,對時間同步系統(tǒng)的要求越來越高。采用GPS為時間源,基于IEEE1588的網(wǎng)絡(luò)時間同步系統(tǒng)可以簡化時間同步系統(tǒng)的結(jié)構(gòu),降低投資建設(shè)成本,降低維護(hù)難度,減少日常維護(hù)的工作量,是工業(yè)控制領(lǐng)域時間同步的一個重要發(fā)展方向。要建立高精度的IEEE1588的網(wǎng)絡(luò)時間同步系統(tǒng)必須要實現(xiàn)高精度的時間標(biāo)簽的捕獲,目前時間標(biāo)簽的捕獲方法存在使用不靈活,成本較高的問題,迫切需要一種經(jīng)濟靈活、實用高效的時間標(biāo)簽捕獲方法。
[0004]對于一個處理龐大數(shù)據(jù)量的控制網(wǎng)絡(luò),準(zhǔn)確、及時記錄大量事件非常困難。隨著技術(shù)的發(fā)展,對SOE系統(tǒng)分辨率的要求也越來越高。將FPGA引入SOE系統(tǒng),簡化了 SOE設(shè)計,降低了設(shè)計難度,提高了性能。隨著研究的深入,用FPGA實現(xiàn)SOE系統(tǒng)必將成為一種趨勢。
【發(fā)明內(nèi)容】
[0005]本發(fā)明要解決的技術(shù)問題是提供一種基于FPGA的SOE系統(tǒng)及其實現(xiàn)SOE的方法,其可實現(xiàn)IEEE1588高精度時間同步系統(tǒng),并在系統(tǒng)時鐘精確同步的基礎(chǔ)上實現(xiàn)高分辨率的SOE系統(tǒng)。
[0006]為解決上述技術(shù)問題,采用的技術(shù)方案是:一種基于FPGA的SOE系統(tǒng),包括CPU、PHY芯片和FPGA,其特征在于:FPGA位于CPU和PHY芯片之間,通過MII接口分別與CPU和PHY芯片連接;FPGA內(nèi)建IEEE1588數(shù)據(jù)包解析模塊,SOE事件監(jiān)測模塊和自由計時時鐘模塊。
[0007]利用上述SOE系統(tǒng)實現(xiàn)SOE的方法,其特征在于:
(I)系統(tǒng)時間同步,包括以下步驟:
a.1EEE1588數(shù)據(jù)包解析模塊監(jiān)測CPU和PHY芯片之間的收發(fā)數(shù)據(jù)包,當(dāng)IEEE1588數(shù)據(jù)包解析模塊獲取數(shù)據(jù)包的同時,記錄下由自由計時時鐘模塊產(chǎn)生的當(dāng)前相對時間信息;
b.1EEE1588數(shù)據(jù)包解析模塊解析獲取的數(shù)據(jù)包,當(dāng)數(shù)據(jù)包被判定為IEEE1588對時數(shù)據(jù)包時,將該IEEE1588對時數(shù)據(jù)包信息和對應(yīng)的相對時間信息存入FPGA片內(nèi)存儲器; (PU讀取FPGA中存儲的IEEE1588對時數(shù)據(jù)包信息及其對應(yīng)的相對時間信息,獲取收發(fā)數(shù)據(jù)包的絕對時間和相對時間,通過兩次對時數(shù)據(jù)包絕對時間相減求得一個網(wǎng)絡(luò)系統(tǒng)中時間偏差T,相對時間加上偏差時間T得到系統(tǒng)的基準(zhǔn)時間,從而保證整個網(wǎng)絡(luò)系統(tǒng)中設(shè)備時間的一致性;
(2)SOE記錄,包括以下步驟:
a.SOE事件監(jiān)測模塊監(jiān)測發(fā)生的事件,監(jiān)測到事件時,即記錄下該事件發(fā)生時刻由自由計時時鐘模塊產(chǎn)生的當(dāng)前相對時間信息;
b.SOE事件監(jiān)測模塊判斷事件是否真實有效,當(dāng)確認(rèn)事件真實有效時,把事件及其對應(yīng)的相對時間信息存入FPGA片內(nèi)存儲器;
c.CPU讀取FPGA中存儲的SOE記錄,SOE記錄中的時間是自由計時時鐘的時間值,CPU中自由計時時鐘的時間值減去SOE記錄中自由計時時鐘的時間值得到時間偏差T’,CPU絕對時間加上T’得到SOE事件的絕對時間,然后上報SOE事件。
[0008]本發(fā)明的積極效果是:以FPGA+CPU的架構(gòu),極其靈活地實現(xiàn)了高精度的IEEE1588時間同步系統(tǒng),在此基礎(chǔ)上簡潔地實現(xiàn)了高分辨率的SOE系統(tǒng)?;贔PGA技術(shù),以硬件代替軟件,提高了系統(tǒng)的可靠性,抗干擾性能和靈活性靈活性。系統(tǒng)可以根據(jù)實際選擇資源滿足需要的FPGA芯片,還可以根據(jù)實際應(yīng)用靈活地開辟合適大小的片內(nèi)存儲器。
【專利附圖】
【附圖說明】
[0009]下面結(jié)合附圖和【具體實施方式】對本發(fā)明作進(jìn)一步說明。
[0010]圖1是本發(fā)明的SOE系統(tǒng)功能框圖。
【具體實施方式】
[0011]圖1是本發(fā)明的SOE系統(tǒng)功能框圖。如圖1所示,一種基于FPGA的SOE系統(tǒng),包括CPU、PHY芯片和FPGA,其特征在于:FPGA位于CPU和PHY芯片之間,通過MII接口分別與CPU和PHY芯片連接;FPGA內(nèi)建IEEE1588數(shù)據(jù)包解析模塊,SOE事件監(jiān)測模塊和自由計時時鐘模塊。
[0012]利用上述SOE系統(tǒng)實現(xiàn)SOE的方法,其特征在于:
(1)系統(tǒng)時間同步,包括以下步驟:
a.1EEE1588數(shù)據(jù)包解析模塊監(jiān)測CPU和PHY芯片之間的收發(fā)數(shù)據(jù)包,當(dāng)IEEE1588數(shù)據(jù)包解析模塊獲取數(shù)據(jù)包的同時,記錄下由自由計時時鐘模塊產(chǎn)生的當(dāng)前相對時間信息;
b.1EEE1588數(shù)據(jù)包解析模塊解析獲取的數(shù)據(jù)包,當(dāng)數(shù)據(jù)包被判定為IEEE1588對時數(shù)據(jù)包時,將該IEEE1588對時數(shù)據(jù)包信息和對應(yīng)的相對時間信息存入FPGA片內(nèi)存儲器;
c.CPU讀取FPGA中存儲的IEEE1588對時數(shù)據(jù)包信息及其對應(yīng)的相對時間信息,獲取收發(fā)數(shù)據(jù)包的絕對時間和相對時間,通過兩次對時數(shù)據(jù)包絕對時間相減求得一個網(wǎng)絡(luò)系統(tǒng)中時間偏差T,相對時間加上偏差時間T得到系統(tǒng)的基準(zhǔn)時間,從而保證整個網(wǎng)絡(luò)系統(tǒng)中設(shè)備時間的一致性;
(2)SOE記錄,包括以下步驟:
a.SOE事件監(jiān)測模塊監(jiān)測發(fā)生的事件,監(jiān)測到事件時,即記錄下該事件發(fā)生時刻由自由計時時鐘模塊產(chǎn)生的當(dāng)前相對時間信息; b.SOE事件監(jiān)測模塊判斷事件是否真實有效,當(dāng)確認(rèn)事件真實有效時,把事件及其對應(yīng)的相對時間信息存入FPGA片內(nèi)存儲器;
c.CPU讀取FPGA中存儲的SOE記錄,SOE記錄中的時間是自由計時時鐘的時間值,CPU中自由計時時鐘的時間值減去SOE記錄中自由計時時鐘的時間值得到時間偏差T’,CPU絕對時間加上T’得到SOE事件的絕對時間,然后上報SOE事件。
[0013]在上述SOE系統(tǒng)及其實現(xiàn)SOE的方法中,CPU與PHY芯片之間傳遞的IEEE1588對時數(shù)據(jù)包可以包括有A網(wǎng)和B網(wǎng)的數(shù)據(jù)包,A網(wǎng)和B網(wǎng)的數(shù)據(jù)包采用同一時鐘源,其中某一網(wǎng)絡(luò)故障時,則另一網(wǎng)絡(luò)用于對時。
[0014]FPGA內(nèi)建的IEEE1588數(shù)據(jù)包解析模塊用于監(jiān)測解析以太網(wǎng)數(shù)據(jù)包。該模塊僅監(jiān)測解析CPU與PHY芯片之間傳遞的數(shù)據(jù)包,而不干擾數(shù)據(jù)包的正常傳輸。IEEE1588數(shù)據(jù)包解析模塊判定是否為IEEE1588對時數(shù)據(jù)包主要是判定數(shù)據(jù)包是否為IEEE1588的Sync報文或Delay_Req報文。當(dāng)IEEE1588數(shù)據(jù)包解析模塊判定獲取的數(shù)據(jù)包為Sync報文或Delay_Req報文時,將報文中的IP地址、端口地址等信息及之前鎖存的相對時間信息存入FPGA片內(nèi)存儲器。
[0015]FPGA內(nèi)建的SOE事件監(jiān)測模塊用于監(jiān)測發(fā)生的事件,SOE事件監(jiān)測模塊僅對監(jiān)測到事件進(jìn)行分析,而不干擾信號正常的輸入輸出。
[0016]本發(fā)明簡化了時間同步系統(tǒng)與SOE系統(tǒng)的設(shè)計,提高了系統(tǒng)的對時精度,提高了SOE系統(tǒng)的分辨率。本發(fā)明可以通過提高FPGA內(nèi)建SOE事件監(jiān)測模塊的采樣頻率,很容易地提高SOE系統(tǒng)的分辨率,在采樣頻率IOKHz的條件下,可實現(xiàn)0.2ms的分辨率。
【權(quán)利要求】
1.一種基于FPGA的SOE系統(tǒng),包括CPU、PHY芯片和FPGA,其特征在于:FPGA位于CPU和PHY芯片之間,通過MII接口分別與CPU和PHY芯片連接;FPGA內(nèi)建IEEE1588數(shù)據(jù)包解析模塊,SOE事件監(jiān)測模塊和自由計時時鐘模塊。
2.權(quán)利要求1所述的SOE系統(tǒng)實現(xiàn)SOE的方法,其特征在于: (1)系統(tǒng)時間同步,包括以下步驟: a.1EEE1588數(shù)據(jù)包解析模塊監(jiān)測CPU和PHY芯片之間的收發(fā)數(shù)據(jù)包,當(dāng)IEEE1588數(shù)據(jù)包解析模塊獲取數(shù)據(jù)包的同時,記錄下由自由計時時鐘模塊產(chǎn)生的當(dāng)前相對時間信息; b.1EEE1588數(shù)據(jù)包解析模塊解析獲取的數(shù)據(jù)包,當(dāng)數(shù)據(jù)包被判定為IEEE1588對時數(shù)據(jù)包時,將該IEEE1588對時數(shù)據(jù)包信息和對應(yīng)的相對時間信息存入FPGA片內(nèi)存儲器; c.CPU讀取FPGA中存儲的IEEE1588對時數(shù)據(jù)包信息及其對應(yīng)的相對時間信息,獲取收發(fā)數(shù)據(jù)包的絕對時間和相對時間,通過兩次對時數(shù)據(jù)包絕對時間相減求得一個網(wǎng)絡(luò)系統(tǒng)中時間偏差T,相對時間加上偏差時間T得到系統(tǒng)的基準(zhǔn)時間,從而保證整個網(wǎng)絡(luò)系統(tǒng)中設(shè)備時間的一致性; (2)SOE記錄,包括以下步驟: a.SOE事件監(jiān)測模塊監(jiān)測發(fā)生的事件,監(jiān)測到事件時,即記錄下該事件發(fā)生時刻由自由計時時鐘模塊產(chǎn)生的當(dāng)前相對時間信息; b.SOE事件監(jiān)測模塊判斷事件是否真實有效,當(dāng)確認(rèn)事件真實有效時,把事件及其對應(yīng)的相對時間信息存入FPGA片內(nèi)存儲器; c.CPU讀取FPGA中存儲的SOE記錄,SOE記錄中的時間是自由計時時鐘的時間值,CPU中自由計時時鐘的時間值減去SOE記錄中自由計時時鐘的時間值得到時間偏差T’,CPU絕對時間加上T’得到SOE事件的絕對時間,然后上報SOE事件。
【文檔編號】G05B19/042GK103713544SQ201310694213
【公開日】2014年4月9日 申請日期:2013年12月18日 優(yōu)先權(quán)日:2013年12月18日
【發(fā)明者】王楠, 胡中澤, 趙寶平, 張曉印 申請人:國核自儀系統(tǒng)工程有限公司