欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

工業(yè)以太網(wǎng)的通信網(wǎng)絡(luò)的動(dòng)態(tài)重構(gòu)方法及系統(tǒng)的制作方法

文檔序號(hào):10660849閱讀:275來源:國知局
工業(yè)以太網(wǎng)的通信網(wǎng)絡(luò)的動(dòng)態(tài)重構(gòu)方法及系統(tǒng)的制作方法
【專利摘要】本發(fā)明提供的工業(yè)以太網(wǎng)的通信網(wǎng)絡(luò)的動(dòng)態(tài)重構(gòu)方法,包括區(qū)域劃分,將FPGA劃分為靜態(tài)區(qū)域和重構(gòu)區(qū)域,其中,靜態(tài)區(qū)域至少包括重構(gòu)主機(jī)以及重構(gòu)控制模塊;重構(gòu)辨識(shí),辨識(shí)當(dāng)前網(wǎng)絡(luò)中的通信協(xié)議;重構(gòu)規(guī)劃,將辨識(shí)結(jié)果與協(xié)議類型進(jìn)行映射,產(chǎn)生協(xié)議標(biāo)志,若與設(shè)備當(dāng)前協(xié)議不一致,啟動(dòng)重構(gòu),獲取重構(gòu)配置文件;重構(gòu)配置,配置FPGA的模式,建立外部動(dòng)態(tài)配置文件庫;重構(gòu)評(píng)估,主站設(shè)備以重構(gòu)設(shè)備是否能建立與主站的通信,來對(duì)本次重構(gòu)結(jié)果進(jìn)行評(píng)估,判斷重構(gòu)結(jié)果是否滿足系統(tǒng)需求;本發(fā)明根據(jù)當(dāng)前網(wǎng)絡(luò)中的通信的以太網(wǎng)幀能正確的區(qū)分出網(wǎng)絡(luò)中的協(xié)議,從而觸發(fā)對(duì)重構(gòu)區(qū)域的重配置,縮短了單次重構(gòu)時(shí)間,并且減少了在線資源的開銷。
【專利說明】
工業(yè)以太網(wǎng)的通信網(wǎng)絡(luò)的動(dòng)態(tài)重構(gòu)方法及系統(tǒng)
技術(shù)領(lǐng)域
[0001]本發(fā)明涉及通信領(lǐng)域,尤其涉及一種工業(yè)以太網(wǎng)的通信網(wǎng)絡(luò)的動(dòng)態(tài)重構(gòu)方法及系統(tǒng)。
【背景技術(shù)】
[0002]現(xiàn)場總線技術(shù)一直都是工業(yè)控制技術(shù)的重要組成部分,隨著現(xiàn)場通信的數(shù)據(jù)量急速增長,以及現(xiàn)場總線互聯(lián)、互通與互操作性等問題難以解決,所以現(xiàn)場總線需要尋求新的決方案。以太網(wǎng)有著開放性好、應(yīng)用廣泛、價(jià)格低廉以及通信速率高等特點(diǎn),但是其采用的CDMA/CD (Carrier Sense Multiple Access/Collis1n Detect1n,載波監(jiān)聽多路訪問及沖突檢測)機(jī)制帶來了傳輸延遲的不確定性,不能滿足工業(yè)網(wǎng)絡(luò)的實(shí)時(shí)性要求,為了將其應(yīng)用到工業(yè)領(lǐng)域,必須進(jìn)行改造,各大商家紛紛提出了自己的工業(yè)以太網(wǎng),給出了實(shí)時(shí)性的技術(shù)解決方案。
[0003]目前,基于實(shí)時(shí)以太網(wǎng)的高速現(xiàn)場總線標(biāo)準(zhǔn)主要有Powerlink、EtherCAT、SERCOS、EtherNet/IP、ModBusTCP、Prof inetSRT、MECHATROLINK 等,其中 Powerlink 以及 EtherCAT 就是主流工業(yè)以太網(wǎng)的代表,它們都對(duì)以太網(wǎng)協(xié)議層次進(jìn)行簡化,并且修改了以太網(wǎng)的數(shù)據(jù)鏈路層,避免了報(bào)文沖突,簡化通信數(shù)據(jù)處理,達(dá)到了實(shí)時(shí)性的要求。Power I ink和EtherCAT具有相似性,也有不同的地方,對(duì)于物理層,它們可采用與普通以太網(wǎng)相同的收發(fā)器及其他的物理層器件,對(duì)于應(yīng)用層,兩者也沒有什么差別,同樣使用CANOPEN等應(yīng)用層協(xié)議,兩者主要的差別在于對(duì)數(shù)據(jù)鏈路層通信機(jī)制的修改。在實(shí)際的工業(yè)以太網(wǎng)系統(tǒng)中,可能存在不同的通信協(xié)議。利用Power I ink和EtherCAT的特點(diǎn),可使單一設(shè)備同時(shí)支持這兩種通信協(xié)議,增強(qiáng)其可復(fù)用性和互換能力,提升其使用便捷性。
[0004]為了達(dá)到上述目的,目前有兩種解決方法:一種是通過硬件實(shí)現(xiàn)靜態(tài)全局重構(gòu),另一種是通過軟件冗余實(shí)現(xiàn)協(xié)議切換。靜態(tài)全局重構(gòu)將整體的工程文件燒寫到外部存儲(chǔ)器當(dāng)中,每次需要重構(gòu)時(shí),都需要對(duì)器件的整體進(jìn)行重構(gòu),造成了器件資源的浪費(fèi)以及重構(gòu)時(shí)間的增加,并且還需要一個(gè)外部的重構(gòu)控制器,增加了電路設(shè)計(jì)復(fù)雜度。軟件冗余的方式是將所有通信協(xié)議都放到一起,通過鏈路檢測協(xié)議類型,實(shí)現(xiàn)協(xié)議切換。但隨著協(xié)議數(shù)量的增多,硬件資源和軟件資源也會(huì)成倍增加,所以這種方式造成了極大的資源浪費(fèi),因此,亟需一種新的工業(yè)以太網(wǎng)的通信網(wǎng)絡(luò)的重構(gòu)方法,在能夠正確的識(shí)別當(dāng)前網(wǎng)絡(luò)中的協(xié)議并實(shí)現(xiàn)穩(wěn)定的配置的基礎(chǔ)上,提高重配置的速度,同時(shí)減少在線資源的浪費(fèi)。

【發(fā)明內(nèi)容】

[0005]有鑒于此,本發(fā)明提供一種工業(yè)以太網(wǎng)的通信網(wǎng)絡(luò)的動(dòng)態(tài)重構(gòu)方法及系統(tǒng),以解決上述問題。
[0006]本發(fā)明提供的工業(yè)以太網(wǎng)的通信網(wǎng)絡(luò)的動(dòng)態(tài)重構(gòu)方法,包括
[0007]a.區(qū)域劃分,將FPGA劃分為靜態(tài)區(qū)域和重構(gòu)區(qū)域;
[0008]b.重構(gòu)辨識(shí),通過所述靜態(tài)區(qū)域?qū)Ξ?dāng)前網(wǎng)絡(luò)中的通信協(xié)議進(jìn)行檢測識(shí)別;
[0009]c.重構(gòu)配置,配置FPGA的模式,選擇擴(kuò)展的外部存儲(chǔ)器,存放動(dòng)態(tài)配置文件,建立動(dòng)態(tài)配置文件資源庫;進(jìn)行重構(gòu)時(shí),靜態(tài)區(qū)域通過存儲(chǔ)器控制模塊與擴(kuò)展外部存儲(chǔ)器進(jìn)行數(shù)據(jù)交互,獲得重構(gòu)的動(dòng)態(tài)配置文件;
[0010]d.重構(gòu)規(guī)劃,根據(jù)重構(gòu)辨識(shí)結(jié)果,進(jìn)行協(xié)議映射,產(chǎn)生協(xié)議標(biāo)志,若該協(xié)議標(biāo)志與設(shè)備中的協(xié)議不一致,則發(fā)起重構(gòu)請(qǐng)求,同時(shí)發(fā)送重構(gòu)時(shí)鐘信號(hào),重構(gòu)主機(jī)確認(rèn)重構(gòu)控制模塊準(zhǔn)備完成后,開始從外部存儲(chǔ)器中讀取第一個(gè)數(shù)據(jù),并在之后每個(gè)重構(gòu)時(shí)鐘周期下降沿到來之前,依次讀取數(shù)據(jù),重復(fù)上述步驟直至重構(gòu)完成;
[0011 ] e.重構(gòu)評(píng)估,根據(jù)主站設(shè)備是否能與重構(gòu)設(shè)備建立通信,對(duì)本次重構(gòu)結(jié)果進(jìn)行評(píng)估,判斷重構(gòu)結(jié)果是否滿足系統(tǒng)需求。
[0012]進(jìn)一步,所述靜態(tài)區(qū)域包括
[0013]檢測模塊,用于檢測并識(shí)別當(dāng)前網(wǎng)絡(luò)中的通信協(xié)議;
[0014]重構(gòu)控制模塊,用于重構(gòu)控制和CRC校檢;
[0015]重構(gòu)主機(jī)模塊,用于與外部存儲(chǔ)器通信、發(fā)起重構(gòu)請(qǐng)求以及對(duì)重構(gòu)區(qū)域的重新配置;
[0016]協(xié)議物理層驅(qū)動(dòng)模塊,對(duì)物理層接口的接口信號(hào)進(jìn)行連接及處理;
[0017]協(xié)議應(yīng)用層實(shí)現(xiàn)模塊,用于實(shí)現(xiàn)CANOPEN通信協(xié)定。
[0018]進(jìn)一步,步驟b具體包括
[0019]S1.從站設(shè)備通過物理層接口的接收數(shù)據(jù)有效信號(hào)上升沿,判斷通信幀的開始,接收數(shù)據(jù)有效信號(hào)由低電平變?yōu)楦唠娖綍r(shí),激活計(jì)數(shù)器;
[0020]s2.建立數(shù)據(jù)緩存區(qū),將物理層接口的連續(xù)兩個(gè)四位接收數(shù)據(jù)拼接成一個(gè)字節(jié)數(shù)據(jù),所述數(shù)據(jù)緩存區(qū)在每個(gè)系統(tǒng)時(shí)鐘周期輸出一個(gè)字節(jié)數(shù)據(jù)。
[0021]s3.通過激活的計(jì)數(shù)器對(duì)每個(gè)系統(tǒng)時(shí)鐘周期進(jìn)行累加計(jì)數(shù),對(duì)輸出端的字節(jié)值按規(guī)約的對(duì)應(yīng)協(xié)議類型進(jìn)行標(biāo)識(shí),然后對(duì)UDP端口號(hào)字段進(jìn)行標(biāo)識(shí)。
[0022]進(jìn)一步,步驟c中,所述靜態(tài)區(qū)域通過存儲(chǔ)器控制模塊與外部存儲(chǔ)器之間進(jìn)行數(shù)據(jù)通信,所述外部存儲(chǔ)器存儲(chǔ)有重構(gòu)區(qū)域的配置文件,重構(gòu)主機(jī)模塊向外部存儲(chǔ)器發(fā)送讀取命令,同時(shí)將讀取起始地址發(fā)送至存儲(chǔ)器,所述外部存儲(chǔ)器將數(shù)據(jù)按照重構(gòu)時(shí)鐘周期節(jié)拍傳送至存儲(chǔ)器控制塊,然后通過重構(gòu)主機(jī)模塊存放至重構(gòu)控制模塊的數(shù)據(jù)總線。
[0023]進(jìn)一步,步驟d中,通過重構(gòu)完成信號(hào)判斷重構(gòu)過程是否完成,當(dāng)重構(gòu)完成信號(hào)由高電平變成低電平時(shí),表示重構(gòu)過程完成。
[0024]進(jìn)一步,所述重構(gòu)規(guī)劃中,當(dāng)通過重構(gòu)控制模塊發(fā)起重構(gòu)請(qǐng)求時(shí),凍結(jié)重構(gòu)區(qū)域的局部輸入信號(hào),使重構(gòu)區(qū)域的所有局部輸入信號(hào)相同。
[0025]進(jìn)一步,步驟d中,當(dāng)重構(gòu)過程發(fā)生錯(cuò)誤時(shí),所述重構(gòu)控制模塊向重構(gòu)主機(jī)模塊發(fā)送重構(gòu)錯(cuò)誤信號(hào),重構(gòu)主機(jī)模塊解除重構(gòu)請(qǐng)求信號(hào),錯(cuò)誤信號(hào)保持二十個(gè)重構(gòu)時(shí)鐘周期,當(dāng)錯(cuò)誤信號(hào)由高電平變成低電平,重新發(fā)起重構(gòu)請(qǐng)求信號(hào);
[0026]當(dāng)重構(gòu)請(qǐng)求信號(hào)解除后,所述重構(gòu)控制模塊向重構(gòu)主機(jī)輸出局部復(fù)位信號(hào),將重構(gòu)區(qū)域復(fù)位。
[0027]本發(fā)明還提供一種工業(yè)以太網(wǎng)的通信網(wǎng)絡(luò)的動(dòng)態(tài)重構(gòu)系統(tǒng),包括將FPGA劃分為靜態(tài)區(qū)域和重構(gòu)區(qū)域,所述靜態(tài)區(qū)域包括
[0028]檢測模塊,用于檢測并識(shí)別當(dāng)前網(wǎng)絡(luò)中的通信協(xié)議;
[0029]重構(gòu)控制模塊,用于重構(gòu)控制和CRC校檢;
[0030]重構(gòu)主機(jī)模塊,用于與外部存儲(chǔ)器通信、發(fā)起重構(gòu)請(qǐng)求以及對(duì)重構(gòu)區(qū)域的重新配置;
[0031]協(xié)議物理層驅(qū)動(dòng)模塊,用于對(duì)物理層接口的接口信號(hào)進(jìn)行連接及處理;
[0032]協(xié)議應(yīng)用層實(shí)現(xiàn)模塊,用于實(shí)現(xiàn)CANOPEN通信協(xié)定;
[0033]所述重構(gòu)區(qū)域包括重構(gòu)模塊,所述重構(gòu)模塊用于以EtherCAT和Powerl ink從站IP核構(gòu)建數(shù)據(jù)鏈路層;
[0034]將FPGA劃分為靜態(tài)區(qū)域和重構(gòu)區(qū)域;通過所述靜態(tài)區(qū)域?qū)Ξ?dāng)前網(wǎng)絡(luò)中的通信協(xié)議進(jìn)行檢測識(shí)別;配置FPGA的模式,選擇擴(kuò)展的外部存儲(chǔ)器,存放動(dòng)態(tài)配置文件,建立動(dòng)態(tài)配置文件資源庫;進(jìn)行重構(gòu)時(shí),靜態(tài)區(qū)域通過存儲(chǔ)器控制模塊與擴(kuò)展外部存儲(chǔ)器進(jìn)行數(shù)據(jù)交互,獲得重構(gòu)的動(dòng)態(tài)配置文件;根據(jù)重構(gòu)辨識(shí)結(jié)果,進(jìn)行協(xié)議映射,產(chǎn)生協(xié)議標(biāo)志,若該協(xié)議標(biāo)志與設(shè)備中的協(xié)議不一致,則發(fā)起重構(gòu)請(qǐng)求,同時(shí)發(fā)送重構(gòu)時(shí)鐘信號(hào),重構(gòu)主機(jī)確認(rèn)重構(gòu)控制模塊準(zhǔn)備完成后,開始從外部存儲(chǔ)器中讀取第一個(gè)數(shù)據(jù),并在之后每個(gè)重構(gòu)時(shí)鐘周期下降沿到來之前,依次讀取數(shù)據(jù),重復(fù)上述步驟直至重構(gòu)完成;根據(jù)主站設(shè)備是否能與重構(gòu)設(shè)備建立通信,對(duì)本次重構(gòu)結(jié)果進(jìn)行評(píng)估,判斷重構(gòu)結(jié)果是否滿足系統(tǒng)需求。
[0035]本發(fā)明的有益效果:本發(fā)明中的工業(yè)以太網(wǎng)的通信網(wǎng)絡(luò)的動(dòng)態(tài)重構(gòu)方法,可以根據(jù)當(dāng)前網(wǎng)絡(luò)中的通信的以太網(wǎng)幀正確的區(qū)分出網(wǎng)絡(luò)中的協(xié)議,從而觸發(fā)對(duì)重構(gòu)區(qū)域的重配置,并且將FPGA劃分成靜態(tài)區(qū)域與重構(gòu)區(qū)域,進(jìn)行重配置時(shí),只需要配置重構(gòu)區(qū)域的硬件邏輯,從而縮短了單次重構(gòu)時(shí)間,提高重配置的速度,并且減少了在線資源的開銷,避免了資源的浪費(fèi)。
【附圖說明】
[0036]下面結(jié)合附圖和實(shí)施例對(duì)本發(fā)明作進(jìn)一步描述:
[0037]圖1是本發(fā)明的系統(tǒng)框架示意圖。
[0038]圖2是本發(fā)明的流程不意圖。
[0039]圖3是本發(fā)明的具體實(shí)施流程示意圖。
[0040]圖4是本發(fā)明的檢測模塊的工作流程示意圖。
[0041 ]圖5是本發(fā)明的EtherCAT和Powerlink協(xié)議結(jié)構(gòu)示意圖
【具體實(shí)施方式】
[0042]下面結(jié)合附圖和實(shí)施例對(duì)本發(fā)明作進(jìn)一步描述:圖2是本發(fā)明的流程示意圖。
[0043]如圖1和2所示,在本實(shí)施例中,包括以下步驟:
[0044]步驟S1.對(duì)靜態(tài)區(qū)域以及重構(gòu)區(qū)域進(jìn)行明確劃分,將FPGA劃分成靜態(tài)區(qū)域和重構(gòu)區(qū)域,靜態(tài)區(qū)域包括檢測模塊、重構(gòu)控制模塊、重構(gòu)主機(jī)模塊、協(xié)議物理層驅(qū)動(dòng)模塊、協(xié)議應(yīng)用層實(shí)現(xiàn)及應(yīng)用模塊,重構(gòu)區(qū)域是EtherCAT和Powerl ink協(xié)議的數(shù)據(jù)鏈路層實(shí)現(xiàn),本實(shí)施例中根據(jù)EtherCAT和Powerlink的協(xié)議特點(diǎn),保證物理層和應(yīng)用層的一致性,只對(duì)數(shù)據(jù)鏈路層進(jìn)行重構(gòu);
[0045]步驟S2.重構(gòu)辨識(shí),通過靜態(tài)區(qū)域中的檢測模塊對(duì)當(dāng)前網(wǎng)絡(luò)中的通信協(xié)議進(jìn)行檢測識(shí)別;
[0046]步驟S3.重構(gòu)配置,配置FPGA的模式,本設(shè)計(jì)中FPGA的配置模式為FPPxl6,選擇合適的外部存儲(chǔ)器,靜態(tài)區(qū)域通過通信模塊與外部存儲(chǔ)器通信,建立動(dòng)態(tài)配置文件資源庫。
[0047]步驟S4.重構(gòu)規(guī)劃,根據(jù)辨識(shí)結(jié)果,進(jìn)行協(xié)議映射,產(chǎn)生協(xié)議標(biāo)志,若該協(xié)議標(biāo)志與設(shè)備中的協(xié)議不一致,則發(fā)起重構(gòu)請(qǐng)求,同時(shí)發(fā)送重構(gòu)時(shí)鐘信號(hào),重構(gòu)主機(jī)確認(rèn)重構(gòu)控制模塊準(zhǔn)備完成后,從外部存儲(chǔ)器中讀取第一個(gè)數(shù)據(jù),數(shù)據(jù)寬度由FPGA的配置模式?jīng)Q定,本設(shè)計(jì)中FPGA的配置模式為FPPxl6,所以數(shù)據(jù)寬度為16位,并在之后每個(gè)重構(gòu)時(shí)鐘周期下降沿到來之前,依次讀取十六位數(shù)據(jù),重復(fù)上述步驟直至重構(gòu)完成。
[0048]步驟S5.重構(gòu)評(píng)估,主站設(shè)備以重構(gòu)設(shè)備是否能建立與主站的通信,來對(duì)本次重構(gòu)結(jié)果進(jìn)行評(píng)估,判斷重構(gòu)結(jié)果是否滿足系統(tǒng)需求。
[0049]在本實(shí)施例中,通過檢測模塊檢測網(wǎng)絡(luò)中通信的以太網(wǎng)幀的幀類型以及UDP端口號(hào),判斷當(dāng)前網(wǎng)絡(luò)中的通信協(xié)議,如與當(dāng)前重構(gòu)模塊中的通信協(xié)議不相同,檢測模塊就激活重構(gòu)控制模塊,重構(gòu)控制模塊包括Cy c I one V系列的FPGA自帶的重構(gòu)控制以及CRC校檢,重構(gòu)主機(jī)模塊包括與外部存儲(chǔ)器之間的通信、根據(jù)檢測模塊的結(jié)果與當(dāng)前重構(gòu)區(qū)域中的協(xié)議決定是否發(fā)起重構(gòu)請(qǐng)求以及重構(gòu)控制模塊預(yù)留的交互接口,實(shí)現(xiàn)對(duì)重構(gòu)區(qū)域的重新配置,協(xié)議物理層驅(qū)動(dòng)模塊就是對(duì)物理層的接口信號(hào)進(jìn)行連接以及處理,協(xié)議應(yīng)用層模塊是一個(gè)基于niοs 11的片上系統(tǒng)實(shí)現(xiàn)的CANOPEN協(xié)議;重構(gòu)模塊是重構(gòu)區(qū)域中的EtherCAT和Power I ink協(xié)議的數(shù)據(jù)鏈路層實(shí)現(xiàn),以EtherCAT和Power I ink從站IP核構(gòu)建數(shù)據(jù)鏈路層。[°°50] 在本實(shí)施例中,根據(jù)EtherCAT和Power I ink協(xié)議標(biāo)準(zhǔn)的規(guī)定:通訊由主站向從站發(fā)起,主站向從站發(fā)送特定類型的數(shù)據(jù)幀,可以直接將數(shù)據(jù)報(bào)文嵌入Ethernet幀,定義成EtherCAT幀,以及Power I ink幀,幀類型不同,普通Ethernet幀的幀類型是0x8000 ,EtherCAT幀的幀類型是0x88A4,Power I ink幀的幀類型是0x88AB;也可以利用UDP端口,如果將數(shù)據(jù)幀嵌入U(xiǎn)DP報(bào)文,幀類型還是0x8000,但是對(duì)于EtherCAT規(guī)定了該UDP端口號(hào)為0x88A4,而Powerlink協(xié)議并未對(duì)此有明確規(guī)定,可以自己定義,所以這種情況不對(duì)Power I ink協(xié)議進(jìn)行判別。本實(shí)施例中檢測過程包括:
[0051]S1.從站設(shè)備通過物理層接口的接收數(shù)據(jù)有效信號(hào)的上升沿判斷通信幀的開始,當(dāng)接收數(shù)據(jù)有效信號(hào)由低電平變?yōu)楦唠娖綍r(shí),激活計(jì)數(shù)器;
[0052]82.將物理層接口的連續(xù)兩個(gè)四位接收數(shù)據(jù)拼接成一個(gè)字節(jié)數(shù)據(jù);
[0053]s3.計(jì)數(shù)器激活后,通過計(jì)數(shù)器對(duì)每個(gè)時(shí)鐘周期進(jìn)行累加計(jì)數(shù),對(duì)輸出端的字節(jié)值按預(yù)置的對(duì)應(yīng)協(xié)議類型進(jìn)行標(biāo)識(shí),然后對(duì)UDP端口號(hào)字段進(jìn)行標(biāo)識(shí)。
[0054]EtherCAT和Powerlink均包括物理層、數(shù)據(jù)鏈路層和應(yīng)用層,但是其數(shù)據(jù)鏈路層有很大差異,其通信幀類型不相同,具體檢測過程如圖4所示:
[0055]步驟S201.從站設(shè)備通過物理層MII接口的接收數(shù)據(jù)有效信號(hào)的上升沿判斷通信幀的開始,當(dāng)接收數(shù)據(jù)有效信號(hào)由低電平變成高電平的時(shí)候,激活計(jì)數(shù)器功能。
[0056]步驟S202.為了消除跨物理層與鏈路層的時(shí)鐘域的數(shù)據(jù)傳輸,建立一個(gè)異步FIFO模塊,將物理層MII接口的連續(xù)2個(gè)四位接收數(shù)據(jù)拼接成一個(gè)字節(jié)數(shù)據(jù)。
[0057]步驟S203.計(jì)數(shù)器功能激活以后,每一個(gè)檢測端時(shí)鐘周期,計(jì)數(shù)器加一,當(dāng)計(jì)數(shù)器值累加達(dá)到21的時(shí)候,對(duì)FIFO輸出端的字節(jié)值進(jìn)行判斷,實(shí)際上也就是判斷通信幀中第21個(gè)字節(jié)的數(shù)值。
[0058]步驟S204.因?yàn)閹愋蛯儆谔厥鈭?bào)文,所以不受高低字節(jié)傳輸順序限制,所以0x88在前,也就是第22個(gè)字節(jié)的值,0xA4在后,也就是第23個(gè)字節(jié)的值,所以先是判斷第22個(gè)字節(jié)的值是否為0x88,如果為0x88,則置標(biāo)志I的值為I,如果為0x08,則置標(biāo)志2的值為I。
[0059]步驟S205.當(dāng)計(jì)數(shù)器值累加達(dá)到23的時(shí)候,并且標(biāo)志I的值為I的時(shí)候,判斷FIFO的輸出端的字節(jié)值,如果為0xA4,則到步驟S206,如果為OxAB,則到步驟S207。
[0060]步驟S206.置EtherCAT協(xié)議標(biāo)志為I,
[0061 ] 步驟S207.置Powerlink協(xié)議標(biāo)志為I ;
[0062]步驟S208.如果計(jì)數(shù)器值累加達(dá)到23的時(shí)候,并且標(biāo)志2的值為I的時(shí)候,判斷FIFO的輸出端字節(jié)值,如果為0x00,則置Ethernet協(xié)議標(biāo)志為I。
[0063]步驟S209.接下來就是判斷EtherCAT數(shù)據(jù)幀是否嵌入了UDP報(bào)文,當(dāng)計(jì)數(shù)器累加達(dá)到45的時(shí)候,并且Ethernet協(xié)議標(biāo)志為I的時(shí)候,判斷FIFO的輸出端字節(jié)值,如果為0x88,則置標(biāo)志3的值為I。
[0064]步驟S210.當(dāng)計(jì)數(shù)器值累加達(dá)到46,并且標(biāo)志3的值為I時(shí),判斷FIFO的輸出端字節(jié)值,如果為0xA4,則到步驟S206。
[0065]步驟S211.當(dāng)物理層MII接口的接收數(shù)據(jù)有效信號(hào)從高電平到低電平的時(shí)候,清零并鎖定計(jì)數(shù)器,等待下一次高電平到來。
[0066]通過上述步驟,可以完成對(duì)EtherCAT和Power I ink協(xié)議的識(shí)別,并且給出檢測結(jié)果
[0067]在本實(shí)施例中,重構(gòu)主機(jī)判斷檢測結(jié)果標(biāo)志以及當(dāng)前重構(gòu)區(qū)域中協(xié)議標(biāo)志是否一致,如果不一致,則對(duì)重構(gòu)控制模塊發(fā)起重構(gòu)請(qǐng)求,即置重構(gòu)請(qǐng)求信號(hào)為高電平,激活重構(gòu)控制模塊,同時(shí)向重構(gòu)控制模塊發(fā)送重構(gòu)時(shí)鐘,該時(shí)鐘信號(hào)是重構(gòu)主控模塊工作的基準(zhǔn)時(shí)鐘,而且重構(gòu)控制塊在整個(gè)重構(gòu)過程中都為重構(gòu)主控模塊提供該時(shí)鐘信號(hào),激活重構(gòu)控制模塊以后,重構(gòu)區(qū)域的輸入輸出端口電平會(huì)發(fā)生非預(yù)期的變化,這可能會(huì)引起邏輯電路時(shí)序上的晶振和設(shè)備不可預(yù)料的誤動(dòng)作,為了防止這種情況發(fā)生,需要凍結(jié)重構(gòu)區(qū)域的局部輸入信號(hào),使重構(gòu)區(qū)域的所有局部輸入信號(hào)置I。
[0068]在本實(shí)施例中,在重構(gòu)配置中,檢測識(shí)別之前對(duì)設(shè)備進(jìn)行了完全重新配置,確定默認(rèn)的協(xié)議類型,重構(gòu)區(qū)域內(nèi)只需要存儲(chǔ)一種協(xié)議配置即可,本實(shí)施例中的靜態(tài)區(qū)域中還包括與外部存儲(chǔ)器之間的存儲(chǔ)器控制模塊,需要建立與外部存儲(chǔ)器穩(wěn)定的數(shù)據(jù)連接,存儲(chǔ)器中存有重構(gòu)區(qū)域的配置文件,配置文件的位置以及重構(gòu)主機(jī)與外部存儲(chǔ)器的通信方式由外部存儲(chǔ)器的芯片類型決定,重構(gòu)主機(jī)中的與存儲(chǔ)器通信的模塊向該存儲(chǔ)器發(fā)送讀取命令,同時(shí)將讀取起始地址發(fā)送至存儲(chǔ)器,然后該存儲(chǔ)器將數(shù)據(jù)按照重構(gòu)時(shí)鐘周期節(jié)拍傳送至存儲(chǔ)器控制塊,然后通過重構(gòu)控制模塊存放至重構(gòu)主控模塊的數(shù)據(jù)總線。當(dāng)重構(gòu)主機(jī)接收到重構(gòu)控制模塊的準(zhǔn)備完成信號(hào)后,等待四個(gè)重構(gòu)時(shí)鐘周期,在第四個(gè)重構(gòu)時(shí)鐘周期結(jié)束前從外部存儲(chǔ)器中讀取第一個(gè)十六位數(shù)據(jù),十六位數(shù)據(jù)中,然后在之后每個(gè)重構(gòu)時(shí)鐘周期下降沿到來之前,依次讀取十六位數(shù)據(jù)。重構(gòu)主機(jī)等待重構(gòu)控制模塊的重構(gòu)完成信號(hào)置高電平,在重構(gòu)完成信號(hào)置高電平之前,一直重復(fù)上述步驟,當(dāng)重構(gòu)完成信號(hào)置高電平,在八個(gè)重構(gòu)時(shí)鐘周期內(nèi),重構(gòu)主機(jī)解除重構(gòu)請(qǐng)求信號(hào),即置重構(gòu)請(qǐng)求信號(hào)為低電平,重構(gòu)完成信號(hào)保持二十個(gè)重構(gòu)時(shí)鐘周期,當(dāng)重構(gòu)完成信號(hào)由高電平變成低電平的時(shí)候,表示重構(gòu)過程已經(jīng)完成。
[0069]在本實(shí)施例中,如果重構(gòu)發(fā)生錯(cuò)誤,重構(gòu)控制模塊向重構(gòu)主機(jī)發(fā)送重構(gòu)錯(cuò)誤信號(hào),錯(cuò)誤信號(hào)置高電平,重構(gòu)主機(jī)解除重構(gòu)請(qǐng)求信號(hào),錯(cuò)誤信號(hào)至少保持并在二十個(gè)重構(gòu)時(shí)鐘周期,然后錯(cuò)誤信號(hào)由高電平變成低電平,重構(gòu)主機(jī)重新發(fā)起重構(gòu)請(qǐng)求信號(hào),執(zhí)行重構(gòu)步驟。當(dāng)重構(gòu)請(qǐng)求信號(hào)解除后,重構(gòu)控制模塊向重構(gòu)主控模塊輸出局部復(fù)位信號(hào),將重構(gòu)區(qū)域復(fù)位,以保證所有的通信狀態(tài)保持為初始值。
[0070]相應(yīng)地,本實(shí)施例中還提供一種利用上述方法的系統(tǒng),包括:
[0071]檢測模塊,用于檢測并識(shí)別當(dāng)前網(wǎng)絡(luò)中的通信協(xié)議;
[0072]重構(gòu)控制模塊,用于重構(gòu)控制和CRC校檢;
[0073]重構(gòu)主機(jī)模塊,用于與外部存儲(chǔ)器通信、發(fā)起重構(gòu)請(qǐng)求以及對(duì)重構(gòu)區(qū)域的重新配置;
[0074]協(xié)議物理層驅(qū)動(dòng)模塊,用于對(duì)物理層接口的接口信號(hào)進(jìn)行連接及處理;
[0075]協(xié)議應(yīng)用層實(shí)現(xiàn)模塊,用于實(shí)現(xiàn)CANOPEN通信協(xié)定;
[0076]重構(gòu)模塊,用于EtherCAT和Power I ink協(xié)議的數(shù)據(jù)鏈路層實(shí)現(xiàn)。
[0077]在本實(shí)施例中,所使用的FPGA器件為具有局部重構(gòu)功能CycloneV系列的器件,其他具有局部重構(gòu)功能的器件還有Arria V或Stratix V等系列的FPGA,重構(gòu)主機(jī)模塊判斷檢測模塊的檢測結(jié)果標(biāo)志與當(dāng)前重構(gòu)區(qū)域中協(xié)議標(biāo)志是否一致,如果不一致,則對(duì)重構(gòu)控制模塊發(fā)起重構(gòu)請(qǐng)求,將重構(gòu)請(qǐng)求信號(hào)置為高電平,激活重構(gòu)控制模塊,同時(shí)向重構(gòu)控制模塊發(fā)送重構(gòu)時(shí)鐘信號(hào)。
[0078]最后說明的是,以上實(shí)施例僅用以說明本發(fā)明的技術(shù)方案而非限制,盡管參照較佳實(shí)施例對(duì)本發(fā)明進(jìn)行了詳細(xì)說明,本領(lǐng)域的普通技術(shù)人員應(yīng)當(dāng)理解,可以對(duì)本發(fā)明的技術(shù)方案進(jìn)行修改或者等同替換,而不脫離本發(fā)明技術(shù)方案的宗旨和范圍,其均應(yīng)涵蓋在本發(fā)明的權(quán)利要求范圍當(dāng)中。
【主權(quán)項(xiàng)】
1.一種工業(yè)以太網(wǎng)的通信網(wǎng)絡(luò)的動(dòng)態(tài)重構(gòu)方法,其特征在于:包括 a.區(qū)域劃分,將FPGA劃分為靜態(tài)區(qū)域和重構(gòu)區(qū)域; b.重構(gòu)辨識(shí),通過所述靜態(tài)區(qū)域?qū)Ξ?dāng)前網(wǎng)絡(luò)中的通信協(xié)議進(jìn)行檢測識(shí)別; c.重構(gòu)配置,配置FPGA的模式,選擇擴(kuò)展的外部存儲(chǔ)器,存放動(dòng)態(tài)配置文件,建立動(dòng)態(tài)配置文件資源庫;進(jìn)行重構(gòu)時(shí),靜態(tài)區(qū)域通過存儲(chǔ)器控制模塊與擴(kuò)展外部存儲(chǔ)器進(jìn)行數(shù)據(jù)交互,獲得重構(gòu)的動(dòng)態(tài)配置文件; d.重構(gòu)規(guī)劃,根據(jù)重構(gòu)辨識(shí)結(jié)果,進(jìn)行協(xié)議映射,產(chǎn)生協(xié)議標(biāo)志,若該協(xié)議標(biāo)志與設(shè)備中的協(xié)議不一致,則發(fā)起重構(gòu)請(qǐng)求,同時(shí)發(fā)送重構(gòu)時(shí)鐘信號(hào),重構(gòu)主機(jī)確認(rèn)重構(gòu)控制模塊準(zhǔn)備完成后,開始從外部存儲(chǔ)器中讀取第一個(gè)數(shù)據(jù),并在之后每個(gè)重構(gòu)時(shí)鐘周期下降沿到來之前,依次讀取數(shù)據(jù),重復(fù)上述步驟直至重構(gòu)完成; e.重構(gòu)評(píng)估,根據(jù)主站設(shè)備是否能與重構(gòu)設(shè)備建立通信,對(duì)本次重構(gòu)結(jié)果進(jìn)行評(píng)估,判斷重構(gòu)結(jié)果是否滿足系統(tǒng)需求。2.根據(jù)權(quán)利要求1所述的工業(yè)以太網(wǎng)的通信網(wǎng)絡(luò)的動(dòng)態(tài)重構(gòu)方法,其特征在于:所述靜態(tài)區(qū)域包括 檢測模塊,用于檢測并識(shí)別當(dāng)前網(wǎng)絡(luò)中的通信協(xié)議; 重構(gòu)控制模塊,用于重構(gòu)控制和CRC校檢; 重構(gòu)主機(jī)模塊,用于與外部存儲(chǔ)器通信、發(fā)起重構(gòu)請(qǐng)求以及對(duì)重構(gòu)區(qū)域的重新配置; 協(xié)議物理層驅(qū)動(dòng)模塊,對(duì)物理層接口的接口信號(hào)進(jìn)行連接及處理; 協(xié)議應(yīng)用層實(shí)現(xiàn)模塊,用于實(shí)現(xiàn)CANOPEN通信協(xié)定。3.根據(jù)權(quán)利要求2所述的工業(yè)以太網(wǎng)的通信網(wǎng)絡(luò)的動(dòng)態(tài)重構(gòu)方法,其特征在于:步驟b具體包括 S1.從站設(shè)備通過物理層接口的接收數(shù)據(jù)有效信號(hào)上升沿,判斷通信幀的開始,接收數(shù)據(jù)有效信號(hào)由低電平變?yōu)楦唠娖綍r(shí),激活計(jì)數(shù)器; s2.建立數(shù)據(jù)緩存區(qū),將物理層接口的連續(xù)兩個(gè)四位接收數(shù)據(jù)拼接成一個(gè)字節(jié)數(shù)據(jù),所述數(shù)據(jù)緩存區(qū)在每個(gè)系統(tǒng)時(shí)鐘周期輸出一個(gè)字節(jié)數(shù)據(jù)。 s3.通過激活的計(jì)數(shù)器對(duì)每個(gè)系統(tǒng)時(shí)鐘周期進(jìn)行累加計(jì)數(shù),對(duì)輸出端的字節(jié)值按規(guī)約的對(duì)應(yīng)協(xié)議類型進(jìn)行標(biāo)識(shí),然后對(duì)UDP端口號(hào)字段進(jìn)行標(biāo)識(shí)。4.根據(jù)權(quán)利要求2所述的工業(yè)以太網(wǎng)的通信網(wǎng)絡(luò)的動(dòng)態(tài)重構(gòu)方法,其特征在于:步驟c中,所述靜態(tài)區(qū)域通過存儲(chǔ)器控制模塊與外部存儲(chǔ)器之間進(jìn)行數(shù)據(jù)通信,所述外部存儲(chǔ)器存儲(chǔ)有重構(gòu)區(qū)域的配置文件,重構(gòu)主機(jī)模塊向外部存儲(chǔ)器發(fā)送讀取命令,同時(shí)將讀取起始地址發(fā)送至存儲(chǔ)器,所述外部存儲(chǔ)器將數(shù)據(jù)按照重構(gòu)時(shí)鐘周期節(jié)拍傳送至存儲(chǔ)器控制塊,然后通過重構(gòu)主機(jī)模塊存放至重構(gòu)控制模塊的數(shù)據(jù)總線。5.根據(jù)權(quán)利要求2所述的工業(yè)以太網(wǎng)的通信網(wǎng)絡(luò)的動(dòng)態(tài)重構(gòu)方法,其特征在于:步驟d中,通過重構(gòu)完成信號(hào)判斷重構(gòu)過程是否完成,當(dāng)重構(gòu)完成信號(hào)由高電平變成低電平時(shí),表示重構(gòu)過程完成。6.根據(jù)權(quán)利要求4所述的工業(yè)以太網(wǎng)的通信網(wǎng)絡(luò)的動(dòng)態(tài)重構(gòu)方法,其特征在于:所述重構(gòu)規(guī)劃中,當(dāng)通過重構(gòu)控制模塊發(fā)起重構(gòu)請(qǐng)求時(shí),凍結(jié)重構(gòu)區(qū)域的局部輸入信號(hào),使重構(gòu)區(qū)域的所有局部輸入信號(hào)相同。7.根據(jù)權(quán)利要求5所述的工業(yè)以太網(wǎng)的通信網(wǎng)絡(luò)的動(dòng)態(tài)重構(gòu)方法,其特征在于:步驟d中,當(dāng)重構(gòu)過程發(fā)生錯(cuò)誤時(shí),所述重構(gòu)控制模塊向重構(gòu)主機(jī)模塊發(fā)送重構(gòu)錯(cuò)誤信號(hào),重構(gòu)主機(jī)模塊解除重構(gòu)請(qǐng)求信號(hào),錯(cuò)誤信號(hào)保持二十個(gè)重構(gòu)時(shí)鐘周期,當(dāng)錯(cuò)誤信號(hào)由高電平變成低電平,重新發(fā)起重構(gòu)請(qǐng)求信號(hào); 當(dāng)重構(gòu)請(qǐng)求信號(hào)解除后,所述重構(gòu)控制模塊向重構(gòu)主機(jī)輸出局部復(fù)位信號(hào),將重構(gòu)區(qū)域復(fù)位。8.一種工業(yè)以太網(wǎng)的通信網(wǎng)絡(luò)的動(dòng)態(tài)重構(gòu)系統(tǒng),其特征在于:包括將FPGA劃分為靜態(tài)區(qū)域和重構(gòu)區(qū)域,所述靜態(tài)區(qū)域包括 檢測模塊,用于檢測并識(shí)別當(dāng)前網(wǎng)絡(luò)中的通信協(xié)議; 重構(gòu)控制模塊,用于重構(gòu)控制和CRC校檢; 重構(gòu)主機(jī)模塊,用于與外部存儲(chǔ)器通信、發(fā)起重構(gòu)請(qǐng)求以及對(duì)重構(gòu)區(qū)域的重新配置; 協(xié)議物理層驅(qū)動(dòng)模塊,用于對(duì)物理層接口的接口信號(hào)進(jìn)行連接及處理; 協(xié)議應(yīng)用層實(shí)現(xiàn)模塊,用于實(shí)現(xiàn)CANOPEN通信協(xié)定; 所述重構(gòu)區(qū)域包括重構(gòu)模塊,所述重構(gòu)模塊用于以EtherCAT和Power I ink從站IP核構(gòu)建數(shù)據(jù)鏈路層; 將FPGA劃分為靜態(tài)區(qū)域和重構(gòu)區(qū)域;通過所述靜態(tài)區(qū)域?qū)Ξ?dāng)前網(wǎng)絡(luò)中的通信協(xié)議進(jìn)行檢測識(shí)別;配置FPGA的模式,選擇擴(kuò)展的外部存儲(chǔ)器,存放動(dòng)態(tài)配置文件,建立動(dòng)態(tài)配置文件資源庫;進(jìn)行重構(gòu)時(shí),靜態(tài)區(qū)域通過存儲(chǔ)器控制模塊與擴(kuò)展外部存儲(chǔ)器進(jìn)行數(shù)據(jù)交互,獲得重構(gòu)的動(dòng)態(tài)配置文件;根據(jù)重構(gòu)辨識(shí)結(jié)果,進(jìn)行協(xié)議映射,產(chǎn)生協(xié)議標(biāo)志,若該協(xié)議標(biāo)志與設(shè)備中的協(xié)議不一致,則發(fā)起重構(gòu)請(qǐng)求,同時(shí)發(fā)送重構(gòu)時(shí)鐘信號(hào),重構(gòu)主機(jī)模塊確認(rèn)重構(gòu)控制模塊準(zhǔn)備完成后,開始從外部存儲(chǔ)器中讀取第一個(gè)數(shù)據(jù),并在之后每個(gè)重構(gòu)時(shí)鐘周期下降沿到來之前,依次讀取數(shù)據(jù),重復(fù)上述步驟直至重構(gòu)完成;根據(jù)主站設(shè)備是否能與重構(gòu)設(shè)備建立通信,對(duì)本次重構(gòu)結(jié)果進(jìn)行評(píng)估,判斷重構(gòu)結(jié)果是否滿足系統(tǒng)需求。
【文檔編號(hào)】H04L29/06GK106027510SQ201610318548
【公開日】2016年10月12日
【申請(qǐng)日】2016年5月13日
【發(fā)明人】黃偉, 趙亦欣, 何飛, 夏吳斌
【申請(qǐng)人】西南大學(xué)
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1
沁水县| 奉化市| 龙口市| 阿尔山市| 枣强县| 盐源县| 台州市| 五常市| 千阳县| 若尔盖县| 泰顺县| 福清市| 湖州市| 浦县| 南康市| 芦山县| 凤翔县| 灵川县| 自贡市| 靖边县| 仙游县| 翁源县| 德令哈市| 读书| 泽州县| 湟中县| 玉溪市| 靖边县| 滨海县| 鄂托克前旗| 凤山市| 镇巴县| 萍乡市| 额济纳旗| 三明市| 安丘市| 保康县| 梁河县| 砚山县| 扶绥县| 临安市|