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

        ?

        基于FPGA的PROFIBUS-DP從站實現(xiàn)

        2016-09-13 07:25:34宋連慶梁鵬飛王紀臣
        電子設(shè)計工程 2016年3期
        關(guān)鍵詞:功能設(shè)計

        宋連慶,梁鵬飛,王紀臣

        (西安工程大學 陜西 西安 710048)

        基于FPGA的PROFIBUS-DP從站實現(xiàn)

        宋連慶,梁鵬飛,王紀臣

        (西安工程大學 陜西 西安710048)

        以FPGA為主控芯片,采用Verilog硬件描述語言實現(xiàn)協(xié)議內(nèi)容,從而代替SPC3協(xié)議芯片,實現(xiàn)從站各個通信模塊控制器的邏輯功能,構(gòu)成一個完整的PROFIBUS-DP從站,并且給出了物理層(PHY)的詳細設(shè)計過程。該技術(shù)的使用將不再受外國供貨商的限制,并且降低PROFIBUS-DP總線系統(tǒng)的成本,具有一定的實際應(yīng)用價值。

        PROFIBUS-DP;FPGA;從站;物理層

        PROFIBUS是面向工廠自動化、流程自動化的一種國際性現(xiàn)場總線標準。在2000年成為IEC61158中的現(xiàn)場總線國際標準之一,于2001年正式成為我國機械行業(yè)工業(yè)控制系統(tǒng)的現(xiàn)場總線國家標準。由于PROFIBUS協(xié)議比較復(fù)雜,而國內(nèi)的專用芯片基本上都是由國外廠商提供,致使我國自動化行業(yè)難以掌握該科技核心技術(shù)[1]。目前實現(xiàn)PROFIBUS-DP從站的方法有基本有3種,分別為使用單片機、使用專用的ASIC通信芯片和使用接口模板實現(xiàn)3種,但主流設(shè)計方案還是依靠專用的ASIC專用通信芯片。與此同時,由于電子行業(yè)的飛速發(fā)展,各種微處理器的廣泛使用,使得現(xiàn)場可編程門陣列(FPGA)得到有力的發(fā)展,其TOP_DOWN的設(shè)計理念,可以將系統(tǒng)功能逐層分割,通過各個模塊的實現(xiàn)設(shè)計思想,最終組合成一個完整的系統(tǒng),成功避開對具體器件結(jié)構(gòu)的考慮,這也是本此設(shè)計用FPGA的重要原因之一[2-4]。

        圖1 PROFIBUS-DP協(xié)議結(jié)構(gòu)Fig.1 Agreement structure of PROFIBUS-DP

        1 PROFIBUS-DP協(xié)議分析

        PROFIBUS的協(xié)議參考了ISO/OSI模型,并對其進行了簡化。PROFIBUS-DP只采用第一層(物理層)、第二層(數(shù)據(jù)鏈路層)和用戶接口層,第3到7層未使用,這種精簡的結(jié)構(gòu)確保了高速數(shù)據(jù)傳輸。其協(xié)議的機構(gòu)如圖1所示。

        PROFIBUS的FDL層報文幀傳輸結(jié)構(gòu)僅有4種,分別為:

        SD1:無數(shù)據(jù),只用作查詢總線上的激活站點;

        SD2:數(shù)據(jù)域長度可變,參數(shù)域的配置多且功能強大,常

        用于SRD服務(wù);

        SD3:帶有固定長度(8字節(jié))的數(shù)據(jù)域;

        SD4:Token令牌幀;

        SC:短應(yīng)答幀。

        以上的幀字符均采用UART傳輸格式,每個字符由一位起始位,八位數(shù)據(jù)位,一位奇偶校驗位和一位停止位組成。

        總線協(xié)議規(guī)定PROFIBUS FDL層負責向上層用戶提供數(shù)據(jù)傳輸服務(wù),這種傳輸服務(wù)構(gòu)成FDL層的基本功能,分別為:發(fā)送數(shù)據(jù)不需要確認(SDN),發(fā)送數(shù)據(jù)需要確認(SDA),發(fā)送數(shù)據(jù)且要求回復(fù)數(shù)據(jù)(SRD),周期性發(fā)送且要求回復(fù)數(shù)據(jù) (周期性交換數(shù)據(jù))(CSRD)。在PROFIBUS-DP總線設(shè)計中,只使用了SDN和SRD為基本的兩種數(shù)據(jù)傳輸模式。同時,F(xiàn)MA1/2還要負責對參數(shù)的管理和設(shè)定,提供一系列的功能,如事件、設(shè)定值、復(fù)位、讀值等。為了保證幀的正確傳輸,F(xiàn)DL對幀的相應(yīng)時序做了嚴格地規(guī)定[5]。

        2 從站通信控制芯片的設(shè)計

        基于FPGA的PROFIBUS-DP從站通信控制器,是為了在加入總線后,能夠作為一個從站節(jié)點進行正常的總線通信。通過整體分析,確定如下功能:完成物理層的數(shù)據(jù)傳輸,將接收或發(fā)送的數(shù)據(jù)通過緩沖區(qū)打包,與FDL協(xié)議進行報文格式檢查,然后像上層傳輸服務(wù)。采用FPGA自上而下(TOPDOWN)的設(shè)計思路,先確定總體設(shè)計框架,然后分別實現(xiàn)各個模塊,其芯片結(jié)構(gòu)圖2所示。

        圖2 從站通信芯片模塊圖Fig.2 Communication chip of slave

        2.1物理層模塊

        物理層模塊包括波特率自適應(yīng)模塊,波特率產(chǎn)生模塊,UART收發(fā)模塊。主要功能是能正確接收來自PROFIBUS-DP總線的發(fā)來的比特數(shù)流,完成與FDL數(shù)據(jù)幀之間的轉(zhuǎn)換,然后將生成的報文以串行方式發(fā)送到總線上去。此外,在接收總線上的串行數(shù)據(jù)時通過波特率自適應(yīng)模塊來確定波特率,使得與總線波特率一致,進行正確的數(shù)據(jù)交換[6]。

        2.1.1波特率自適應(yīng)模塊

        PROFIBUS-DP支持9.6 Kpbs~1.2 Mbps之間的10種通信波特率[7]。由于在同一網(wǎng)絡(luò)上所選的傳輸波特率必須一致,為了避免認為設(shè)置波特率錯誤而導致通信故障,接口設(shè)置波特率自動搜索模塊,將芯片的波特率自動調(diào)整到與總線數(shù)據(jù)通信的波特率一致[8]。在具體設(shè)計過程中,將波特率發(fā)生模塊和波特率自適應(yīng)模塊設(shè)計在一起。波特率自適應(yīng)流程圖如3所示。

        圖3 波特率自適應(yīng)流程圖Fig.3 Auto-turn of baud

        根據(jù)UART數(shù)據(jù)傳輸格式,當檢測到有大于33bit的空閑位由高電平變?yōu)榈碗娖綍r[9],接收模塊產(chǎn)生波特率發(fā)生使能信號(bps-start),同時波特率發(fā)生模塊將波特率置為最高12M。如果接收到的數(shù)據(jù)幀最后一位字符為0x16,則認為接收到合法的數(shù)據(jù)幀,產(chǎn)生done-sig信號,波特率保持 (clkbps),UART接收模塊則以此波特率接收主站信號;若不是,則波特率降一級,直至接收到合法的數(shù)據(jù)幀。如果主站波特率發(fā)生改變,則復(fù)位從站,從站重新搜索波特率。在實際設(shè)計過程中將最高波特率 12 Mbps設(shè)置成4’d0,最低波特率9600bps設(shè)置成4’d9,總共十級,符合總線要求。仿真時序圖給出了第5級,第0級以及第2級的波特率自適應(yīng)過程,其仿真圖如4所示。

        圖4 波特率自適應(yīng)仿真圖Fig.4 Simulation of auto-turn baud

        2.1.2UART接收模塊

        UART收發(fā)模塊包括UART接收模塊和UART發(fā)送模塊兩部分。

        本次設(shè)計數(shù)據(jù)傳輸采用RS-232串口通信,主要功能是時刻監(jiān)測總線上的電平情況,當有數(shù)據(jù)發(fā)送來時,按照波特率產(chǎn)生模塊發(fā)送的波特率時鐘接收總線上的串行數(shù)據(jù),通過接收緩沖區(qū),實現(xiàn)數(shù)據(jù)的串并轉(zhuǎn)換[10],其接收模塊接口圖如圖5所示。

        圖5 RS-232接收模塊接口圖Fig.5 RS-232 receive

        根據(jù)PROFIBUS總線要求,為確保數(shù)據(jù)接收的正確性,采用波特率時鐘的 16倍進行數(shù)據(jù)采集(clk_bps_16),即9600*16bps。rs232_rx為數(shù)據(jù)輸入接口,用來接收總線上的串行數(shù)據(jù),rx-inT為數(shù)據(jù)中斷信號,接收到數(shù)據(jù)期間始終為高電平,wren為ram寫信號,當wren置高,進入寫狀態(tài)。在數(shù)據(jù)采集過程,為得到精確的采集信號,采集點選為每個采集時鐘的第8位為接收數(shù)據(jù)。接收模塊部分程序為:

        2.1.3UART發(fā)送模塊

        UART發(fā)送過程與接收過程基本相似:從站接收到的數(shù)據(jù)根據(jù)數(shù)據(jù)鏈路層的分析,產(chǎn)生相應(yīng)的報文,以當前的波特率發(fā)送給主站,完成一個報文發(fā)送。在發(fā)送時,不需要像接收時大于33 bit的空閑位

        2.2現(xiàn)場數(shù)據(jù)鏈路層模塊

        現(xiàn)場數(shù)據(jù)鏈路層的主要功能是將FDL層的數(shù)據(jù)映射到DDLM服務(wù),并將用戶設(shè)置或輸入數(shù)據(jù)進行打包發(fā)送到FDL層準備發(fā)送。協(xié)議處理是從站通信芯片的核心,流程圖如6所示。

        圖6 FDL協(xié)議處理流程圖Fig.6 Flow chart of FDL

        FDL協(xié)議處理模塊是對物理層接收到的報文進行幀格式檢查。首先,實時監(jiān)測UART收發(fā)器狀態(tài),當接收到幀數(shù)據(jù)字節(jié),對接收到的數(shù)據(jù)進行幀起始符判斷,滿足起始符要求,則報文幀接收完畢;若不符合報文幀起始符,丟棄錯誤的報文幀,復(fù)位狀態(tài)機。將接收到的幀數(shù)據(jù)單元存入緩沖區(qū);其他幀字符,則提取相關(guān)的FDL信息,是否存在地址擴展、使用的SAP(Service Access Point,服務(wù)節(jié)點)等,把不同功能的數(shù)據(jù)分配到對應(yīng)的緩沖區(qū)進行處理。同時,該模塊還實現(xiàn)控制校驗和計算功能,將最終校驗與接收到的FCS進行比較,不一致,則認為接收到的幀數(shù)據(jù)錯誤,丟棄該錯誤的報文幀,狀態(tài)機復(fù)位。隨后解析FC(功能碼),以確定SDN或SRD數(shù)據(jù)傳輸服務(wù)和對FDL狀態(tài)的查詢。

        3 系統(tǒng)仿真與驗證

        本設(shè)計采用Verilog硬件描述語言(HDL)進行編程,使用Modelsim SE 10.0C軟件進行時序仿真和功能仿真,系統(tǒng)能夠?qū)崿F(xiàn)協(xié)議功能。為了進一步驗證設(shè)計的正確性,在以下環(huán)境進行了驗證: 以 Altera公司設(shè)計研發(fā)的 CycloneⅣEP4CE617C8的開發(fā)板為平臺,將設(shè)計的程序固化到FPGA芯片中,外搭RS-232串行通信接口,實現(xiàn)了最簡PROFIBUS-DP從站。測試過程中,以筆記本的USB端口和PROFIBUS-DP之間接入通信管理機(ProfiCore),在筆記本上運行ProfiScript,按照協(xié)議設(shè)置相應(yīng)的參數(shù)。測試結(jié)果表明,從站基本完成了協(xié)議功能。

        4 結(jié) 論

        本文提出了一種以FPGA器件為核心,利用其自頂向下的設(shè)計理念,采用Verilog硬件描述語言來實現(xiàn)PROFIBUSDP從站協(xié)議內(nèi)容的新型設(shè)計方法。在設(shè)計工程中,沒有拘泥于繁瑣的通用協(xié)議,只是對最為廣泛的兩種請求幀進行設(shè)計,節(jié)省了FPGA資源。對功能模塊進行了仿真,并給出部分功能的仿真波形,進行了邏輯功能的驗證。該設(shè)計需要進一步的升級和完善,促進工業(yè)總線發(fā)展,在工程中有廣泛的應(yīng)用價值。

        [1]侯維巖,費敏銳.PROFIBUS協(xié)議分析和系統(tǒng)應(yīng)用[M].北京:清華大學出版社,2006.

        [2]夏宇聞.Verilog數(shù)字系統(tǒng)設(shè)計教程[M].北京:北京航空航天大學出版社,2008.

        [3]吳厚航.深入淺出玩轉(zhuǎn)FPGA[M].北京:北京航空航天大學出版社,2008.

        [4]王誠,吳繼華.Altera FPGA/CPLD設(shè)計[M].北京:人民郵電出版社,2005.

        [5]俞躍.基于FPGA的PROFIBUS-DP從站通信控制芯片的設(shè)計[D].遼寧:東北大學,2009.

        [6]田紅霞,戴彥,鹿紅玉.基于FPGA的RS232串行接口設(shè)計[J].煤炭技術(shù),2010,29(9):194-196.

        [7]朱博,夏繼強.基于FPGA的PROFIBUS-DP從站鏈路層控制器IP核的設(shè)計[J].微電子學與計算機,2007,24(1):102-105.

        [8]蔡遠斌.基于FPGA的PROFIBUS-DP從站研究與實現(xiàn)[D].吉林:吉林大學,2012.

        [9]石曉亮.基于FPGA的PROFIBUS-DP從站設(shè)計[D].浙江:浙江大學,2008.

        [10]徐祥,蔣哲,王威廉.基于FPGA的高速數(shù)據(jù)采集、緩存與處理系統(tǒng)[J].電子測量技術(shù),2013,36(4):68-71.

        The design of PROFIBUS-DP slave station based on FPGA

        SONG Lian-qing,LIANG Peng-fei,WANG Ji-chen
        (Xi’an Polytechnic University,Xi’an 710048,China)

        This design is based on FPGA,using Verilog HDL to achieve the agreement,replacing the SPC3 protocol chip,realized the each communication module controller logical function of slave station,making up a PROFIBUS-DP slave station,and gived the Physical Layer(PHY)for the detailed design process.Using this technology will no logger be limited by foreign suppliers and reduce the cost of PROFIBUS-DP,has some practical significance.

        PROFIBUS-DP;FPGA;slave;PHY

        TN871

        A

        1674-6236(2016)03-0069-03

        2015-03-31稿件編號:201503466

        宋連慶(1963—),男,河南新鄉(xiāng)人,副教授。研究方向:現(xiàn)代電力電子變換與傳動,工業(yè)設(shè)備自動化控制。

        猜你喜歡
        功能設(shè)計
        也談詩的“功能”
        中華詩詞(2022年6期)2022-12-31 06:41:24
        何為設(shè)計的守護之道?
        《豐收的喜悅展示設(shè)計》
        流行色(2020年1期)2020-04-28 11:16:38
        瞞天過?!律O(shè)計萌到家
        設(shè)計秀
        海峽姐妹(2017年7期)2017-07-31 19:08:17
        關(guān)于非首都功能疏解的幾點思考
        有種設(shè)計叫而專
        Coco薇(2017年5期)2017-06-05 08:53:16
        懷孕了,凝血功能怎么變?
        媽媽寶寶(2017年2期)2017-02-21 01:21:24
        “簡直”和“幾乎”的表達功能
        中西醫(yī)結(jié)合治療甲狀腺功能亢進癥31例
        精品国产麻豆免费人成网站| 丝袜美腿久久亚洲一区| 暴露的熟女好爽好爽好爽| 欧美高清视频手机在在线| 粗壮挺进人妻水蜜桃成熟漫画| 91视频88av| 国内自拍视频在线观看| 亚洲网站一区在线播放| 麻豆tv入口在线看| 久久精品国产亚洲av成人| 97无码人妻一区二区三区蜜臀| 蜜桃国产精品视频网站| 国产精品办公室沙发| 日本高清乱码中文字幕| 国产女人的高潮国语对白| 久久久久99精品成人片试看| 中文字幕在线观看乱码一区| 亚洲一区二区三区激情在线观看| 天堂а在线中文在线新版| 国产精品 高清 尿 小便 嘘嘘| 无码伊人久久大蕉中文无码| 开心五月骚婷婷综合网| 国产精品美女久久久久av福利 | 日本视频精品一区二区| 国产av在线观看一区二区三区| 999国内精品永久免费观看| 香蕉色香蕉在线视频| 亚洲精品国产精品系列| 亚洲精品宾馆在线精品酒店| 真人与拘做受免费视频| 国产在线欧美日韩精品一区二区 | 亚洲AV一二三四区四色婷婷| 日本视频一区二区这里只有精品 | 亚洲一区二区三区成人| 丁香婷婷激情俺也去俺来也| 新婚少妇无套内谢国语播放| 丰满少妇被猛男猛烈进入久久| 久久精品无码一区二区三区不卡| 青青草视频在线观看绿色| 国产精品无码无在线观看| 色综合88|