亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        基于FPGA的工業(yè)實(shí)時(shí)通信模塊分析

        2016-05-30 07:21:20黃昊
        關(guān)鍵詞:設(shè)計(jì)

        黃昊

        摘 要:在傳統(tǒng)工業(yè)實(shí)時(shí)通信模塊的設(shè)計(jì)中,采用的多是PLC編程的方式,以CAN總線作為擴(kuò)展總線,其通信速率無(wú)法滿足工業(yè)現(xiàn)場(chǎng)大型應(yīng)用場(chǎng)合的需求,影響了信息的有效穿在。對(duì)于這種情況,本文提出了一種基于FPGA的工業(yè)實(shí)時(shí)以太網(wǎng)通信模塊,立足標(biāo)準(zhǔn)以太網(wǎng),通過(guò)定時(shí)器實(shí)現(xiàn)PLC主從站之間通信的周期性,可以顯著提升通信速率。

        關(guān)鍵詞:FPGA;工業(yè)實(shí)時(shí)通信模塊;設(shè)計(jì)

        中圖分類號(hào):TP202 文獻(xiàn)標(biāo)識(shí)碼:A 文章編號(hào):1006-8937(2016)32-0066-02

        1 概 述

        在當(dāng)前的技術(shù)條件下,PLC內(nèi)部通信采用的多是分層結(jié)構(gòu),將通信分為不同插箱之間的通信以及插箱內(nèi)部各個(gè)模塊之間的通信,而傳統(tǒng)PLC采用的是單層通信模式,在不同插箱之間利用CAN總線實(shí)現(xiàn)串聯(lián)通信,不僅通信距離短,而且通信的速率不高,通常僅能達(dá)到500 Kbps,在這種情況下,系統(tǒng)掃描一個(gè)模件所需的時(shí)間約為1.6 ms,信息傳輸存在著很大的滯后性。如果利用通訊速率100 Mbps的工業(yè)實(shí)時(shí)以太網(wǎng),在同等條件下,完成所有模件掃描的時(shí)間也僅需0.8 ms,通信速率得到了極大的提升。因此,針對(duì)當(dāng)前CAN總線通信效率低下的問(wèn)題,可以結(jié)合FPGA技術(shù),將其升級(jí)為工業(yè)實(shí)時(shí)以太網(wǎng),在提升通信速率的同時(shí),滿足工業(yè)現(xiàn)場(chǎng)的各種復(fù)雜需求。

        2 基于FPGA的工業(yè)實(shí)時(shí)通信模塊設(shè)計(jì)

        FPGA,全稱Field Programmable Gate Array,即現(xiàn)場(chǎng)可編程邏輯門陣列,屬于一種比較特殊的半導(dǎo)體,在其中含有可以根據(jù)用戶需求進(jìn)行編輯的元件,其在程序編輯方面具有設(shè)計(jì)周期短,便捷方便,修改簡(jiǎn)單等特點(diǎn)。在實(shí)際應(yīng)用中,F(xiàn)PGA相比較ASIC(專用集成短路)的響應(yīng)速度要慢,實(shí)現(xiàn)同樣的功能也需要更大的面積,不過(guò)其同樣具有非常顯著的優(yōu)勢(shì),如能夠?qū)崿F(xiàn)快速成品,成本更加低廉,可以對(duì)程序中存在的錯(cuò)誤進(jìn)行改正等??紤]到通信接口模塊本身的連接的受控模塊較多,其各自的接口形式和通信協(xié)議存在著一定的區(qū)別,加上部分?jǐn)?shù)據(jù)對(duì)于通信延時(shí)有著較高的要求,可以采用具備較強(qiáng)靈活性的FPGA技術(shù),進(jìn)行工業(yè)實(shí)時(shí)以太網(wǎng)通信模塊的設(shè)計(jì),需要從硬件和軟件兩個(gè)方面進(jìn)行考慮[1]。

        2.1 硬件結(jié)構(gòu)

        主控芯片選擇Xilinx公司的Spartan-6XC6SLX45 FPGA,外部存儲(chǔ)器選擇DDR3 SRAM芯片MT41J64M16LA-187EIT以及Flash芯片25P64V6P。在網(wǎng)路芯片的選擇種,采用了100M單物理層芯片的方案,選擇PHY芯片DP8363SQ,以IP core在FPGA內(nèi)部實(shí)現(xiàn)Ethernet MAC,與PHY芯片通過(guò)RMII接口連接在一起。

        這里的Microblaze是基于Xilinx公司FPGA的微處理器IP核,采用RISC架構(gòu)以及哈佛結(jié)構(gòu)的32位指令及數(shù)據(jù)總線,能夠?qū)Υ鎯?chǔ)在片上存儲(chǔ)器和外部存儲(chǔ)器中的程序進(jìn)行全速執(zhí)行,同時(shí)對(duì)其中的數(shù)據(jù)進(jìn)行訪問(wèn)。系統(tǒng)CPU設(shè)置有大量的外部設(shè)備,如SRAM、Flash、MAC等,系統(tǒng)為每一個(gè)設(shè)備分配了獨(dú)有的地質(zhì),CPU對(duì)于各個(gè)設(shè)備的訪問(wèn)可以看做是相應(yīng)地址的操作過(guò)程。

        以太網(wǎng)IP core AXI Ethernet Lite MAC支持IEEE802.3標(biāo)準(zhǔn),可以結(jié)合簡(jiǎn)化媒體獨(dú)立結(jié)構(gòu),與工業(yè)標(biāo)準(zhǔn)PHY芯片連接,通過(guò)AXI4-Lite以及Microblaze實(shí)現(xiàn)相互之間的信息傳遞,支持10M乃至100 M的以太網(wǎng)通訊速率。IP核采用同步設(shè)計(jì),為了確保以太網(wǎng)的通信速率能夠達(dá)到最大的100 Mbps,系統(tǒng)時(shí)鐘頻率設(shè)置為50 Mbps。本系統(tǒng)硬件平臺(tái)的搭設(shè)以及軟件應(yīng)用程序的開發(fā)都是在嵌入式軟件開發(fā)工具EDK中實(shí)現(xiàn)的,硬件平臺(tái)的搭設(shè)環(huán)境為XPS,軟件程度的開發(fā)環(huán)境為SDK。

        2.2 軟件設(shè)計(jì)

        2.2.1 數(shù)據(jù)接收與發(fā)送

        在通信模塊中,軟件設(shè)計(jì)主要是實(shí)現(xiàn)PHY芯片的初始化,確保其能夠?qū)σ蕴W(wǎng)接收中斷處理函數(shù)進(jìn)行定義,同時(shí)以實(shí)現(xiàn)以太網(wǎng)接收中斷的初始化。初始化主要是針對(duì)以太網(wǎng)MAC數(shù)據(jù)幀而言,在IEEE802.3標(biāo)準(zhǔn)中,數(shù)據(jù)包的格式類型,如圖1所示。

        在系統(tǒng)中,以太網(wǎng)接收數(shù)據(jù)端為PHY_dv,在程序運(yùn)行時(shí),會(huì)首先判斷PHY_dv是否置1,如果置1則可以進(jìn)行數(shù)據(jù)幀的接收,接收完成后,MAC會(huì)自動(dòng)進(jìn)行自身目的地地址與數(shù)據(jù)幀目的地地址的對(duì)比,如果無(wú)法匹配,則地址無(wú)效,會(huì)將接收到的數(shù)據(jù)全部丟失,重新接收;如果匹配,MAC會(huì)針對(duì)數(shù)據(jù)幀進(jìn)行CRC計(jì)算,并且繼續(xù)與接收到的數(shù)據(jù)幀的幀校驗(yàn)序列FCS中的CRC進(jìn)行比對(duì),若匹配,完成數(shù)據(jù)接收,若不匹配,表明FCS錯(cuò)誤,重新接收數(shù)據(jù)[2]。

        MAC對(duì)于數(shù)據(jù)幀的發(fā)送主要是依照以太網(wǎng)CSMA/CD技術(shù)。

        2.2.2 周期同步處理

        在標(biāo)準(zhǔn)以太網(wǎng)中,數(shù)據(jù)發(fā)送采用的是CSMA/CD技術(shù),當(dāng)網(wǎng)絡(luò)負(fù)荷不高時(shí),很少發(fā)生沖突,基本上能夠滿足對(duì)于通信實(shí)時(shí)性的要求。但是,在工業(yè)現(xiàn)場(chǎng),具有容量巨大、傳輸速率快、IO點(diǎn)眾多的特點(diǎn),網(wǎng)絡(luò)的負(fù)荷通常都比較重,容易發(fā)生沖突問(wèn)題,從而造成網(wǎng)絡(luò)性能的下降。考慮到?jīng)_突和處理的隨機(jī)性以及網(wǎng)絡(luò)通信延時(shí)的不確定性,想要保證通信的實(shí)時(shí)性非常困難。

        因此,在通信模塊的設(shè)計(jì)中,將定時(shí)器定義在頂層應(yīng)用程序,從主站定期向從站發(fā)送數(shù)據(jù),從站在接收到數(shù)據(jù)后,立即向主站回發(fā)數(shù)據(jù)。如果主站在向從站發(fā)送數(shù)據(jù)局后,在設(shè)定好的時(shí)間內(nèi)沒有接收到從站回發(fā)的數(shù)據(jù),則此次數(shù)據(jù)發(fā)送失敗,產(chǎn)生錯(cuò)誤,主站會(huì)在將錯(cuò)誤的計(jì)數(shù)器加8后,繼續(xù)進(jìn)行下一個(gè)節(jié)點(diǎn)的數(shù)據(jù)傳輸、如果其中一個(gè)從站出現(xiàn)連續(xù)數(shù)據(jù)發(fā)送錯(cuò)誤,在不斷的累計(jì)錯(cuò)誤會(huì)移出,主站就可以判定從站斷線,發(fā)送相應(yīng)的警報(bào)信息,通知工作人員進(jìn)行處理。

        2.2.3 以太網(wǎng)收發(fā)測(cè)試

        以太網(wǎng)數(shù)據(jù)幀是以一種字節(jié)增序的方式存儲(chǔ)在TX buffer中,AXI Ethernet Lite MAC接受到的以太網(wǎng)數(shù)據(jù)幀同樣會(huì)以增序的方式存儲(chǔ)其中。數(shù)據(jù)發(fā)送的主要程序如下:

        int main()

        {

        Initialize();

        u32 i;

        while(1)

        {

        for(i=0;i<1000;i++)

        {

        EmacRegisterWrite(0x07fc,0x01);

        while(EmacRegisterRead(0x07fc)﹠(0x01)){}

        }

        }

        return 0;

        }

        寄存器0x07FC是發(fā)送控制寄存器,上述程序中的EmacRegisterWrite(0x07fc,0x01)所表述的韓式是對(duì)0x07FC的第0位置1進(jìn)行數(shù)據(jù)的發(fā)送,數(shù)據(jù)幀發(fā)送完成后,該位會(huì)自動(dòng)置1。0x07FC在不同位的功能,見表1。

        在程序中,對(duì)于MAC寄存器寫入數(shù)據(jù)0a0a0a……即需要通過(guò)以太網(wǎng)發(fā)送的數(shù)據(jù),可以對(duì)其進(jìn)行任意賦值。這里將其賦值為1 038,包含了數(shù)據(jù)幀的頭尾,實(shí)際數(shù)據(jù)長(zhǎng)度為1 024.在程序中,對(duì)于目標(biāo)地址的賦值為ff-ff-ff-ff-ff-ff-ff,源地址賦值00-00-5E-00-00-00。在FPGA中下載程序,結(jié)合wireshark抓包工具,就可以對(duì)發(fā)出的數(shù)據(jù)幀進(jìn)行查看。

        當(dāng)PHY接收到一個(gè)數(shù)據(jù)幀后,會(huì)立即回發(fā)五幀數(shù)據(jù),這里的寄存器0x17FC即為接收控制寄存器,其在不同位的功能如下:

        0位即狀態(tài)位,0-接收寄存器就緒,1-數(shù)據(jù)正在接收,接收完成自動(dòng)清零;1-2位屬于保留位,對(duì)接收的信息進(jìn)行保留;3位為中斷使能,0-禁止接收中斷,1-允許接收中斷;4-31位同樣為保留位。

        對(duì)程序進(jìn)行編輯制定,同樣結(jié)合wireshark抓包工具,可以看到接收一幀數(shù)據(jù)同時(shí)回發(fā)五幀數(shù)據(jù)的過(guò)程[3]。

        3 結(jié) 語(yǔ)

        綜上所述,本文基于FPGA,針對(duì)工業(yè)實(shí)時(shí)以太網(wǎng)通信模塊進(jìn)行了設(shè)計(jì)和開發(fā),利用以太網(wǎng)通信來(lái)取代傳統(tǒng)PLC中的擴(kuò)展總線CAN網(wǎng),能夠極大的提升PLC的通信速率,滿足工業(yè)現(xiàn)場(chǎng)對(duì)于通信實(shí)時(shí)性的需求。經(jīng)過(guò)測(cè)試,本文提出的方案具有良好的實(shí)踐效果。

        參考文獻(xiàn):

        [1] 張偉.基于FPGA的通信接口模塊設(shè)計(jì)與實(shí)現(xiàn)[J].電子科技,2012,25(7):

        95-98.

        [2] 王琦,徐潔,彭文才,等.基于FPGA的工業(yè)實(shí)時(shí)以太網(wǎng)通信模塊設(shè)計(jì)[J].

        水電自動(dòng)化與大壩監(jiān)測(cè),2014,38(5):62-66.

        [3] 賀永鵬,張向前,張凱,等.一種基于FPGA的嵌入式實(shí)時(shí)以太網(wǎng)[J].電氣 傳動(dòng),2015,45(7):70-73.

        猜你喜歡
        設(shè)計(jì)
        何為設(shè)計(jì)的守護(hù)之道?
        《豐收的喜悅展示設(shè)計(jì)》
        流行色(2020年1期)2020-04-28 11:16:38
        瞞天過(guò)?!律O(shè)計(jì)萌到家
        設(shè)計(jì)秀
        海峽姐妹(2017年7期)2017-07-31 19:08:17
        有種設(shè)計(jì)叫而專
        Coco薇(2017年5期)2017-06-05 08:53:16
        設(shè)計(jì)之味
        舒適廣告(2008年9期)2008-09-22 10:02:48
        精品少妇一区二区三区四区| 乱人伦人妻中文字幕无码| 成人日韩熟女高清视频一区| 日本一区二区在线播放| 毛片大全真人在线| 亚洲啪啪综合av一区| 老熟妇Av| 在线看亚洲十八禁网站| 国产av大片在线观看| 日本岛国一区二区三区| 亚洲av免费看一区二区三区| 成人av一区二区三区四区| 国产精品黄色片在线看| 国产成人精品亚洲日本在线观看| 成 人免费va视频| 亚洲男女免费视频| 日本色偷偷| 五十路一区二区中文字幕| 插入日本少妇一区二区三区 | 东京热久久综合久久88| 午夜亚洲av永久无码精品| 精品久久久久久电影院| 亚洲无av码一区二区三区| 午夜视频在线观看视频在线播放 | 亚洲乱码中文字幕综合| 久久精品国产亚洲一区二区| 精品自拍偷拍一区二区三区| 少妇被猛烈进入中文字幕| 久久精品免费一区二区喷潮| 国产不卡视频一区二区三区| 国产在线不卡一区二区三区| 午夜国产精品久久久久| 中文字幕亚洲中文第一| 扒开美女内裤舔出白水| 人人人妻人人澡人人爽欧美一区| 国产精品久久久久国产a级| 国产V亚洲V天堂A无码| 色婷婷久久综合中文蜜桃| 一本丁香综合久久久久不卡网站| 天堂资源中文最新版在线一区| 一本一道波多野结衣av中文|