《電子技術(shù)應(yīng)用》
您所在的位置:首頁 > 可編程邏輯 > 設(shè)計(jì)應(yīng)用 > 基于CPLD的PLC背板總線協(xié)議接口芯片的設(shè)計(jì)
基于CPLD的PLC背板總線協(xié)議接口芯片的設(shè)計(jì)
摘要: 設(shè)計(jì)了一組基于CPLD的PLC背板總線協(xié)議接口芯片,協(xié)議芯片可以區(qū)分PLC的背板總線的周期性數(shù)據(jù)和非周期性數(shù)據(jù)。詳細(xì)介紹了通過VerilogHDL語言設(shè)計(jì)狀態(tài)機(jī)、協(xié)議幀控制器、FIFO控制器的過程,25MHz下背板總線工作穩(wěn)定的試驗(yàn)結(jié)果驗(yàn)證了協(xié)議芯片設(shè)計(jì)的可行性。
關(guān)鍵詞: CPLD PLC背板 FIFO Verilog HDL
Abstract:
Key words :

    設(shè)計(jì)了一組基于CPLDPLC背板總線協(xié)議接口芯片,協(xié)議芯片可以區(qū)分PLC的背板總線的周期性數(shù)據(jù)和非周期性數(shù)據(jù)。詳細(xì)介紹了通過Verilog HDL語言設(shè)計(jì)狀態(tài)機(jī)、協(xié)議幀控制器、FIFO控制器的過程,25MHz下背板總線工作穩(wěn)定的試驗(yàn)結(jié)果驗(yàn)證了協(xié)議芯片設(shè)計(jì)的可行性。

     可編程邏輯控制器(PLC)主機(jī)是通過背板總線支持?jǐn)U展模塊的連接, 背板總線是PLC 主機(jī)同I/O擴(kuò)展模塊之間的高速數(shù)據(jù)通路,支持主機(jī)和擴(kuò)展模塊之間的I/O 數(shù)據(jù)刷新。背板總線的技術(shù)水平?jīng)Q定了PLC 產(chǎn)品的I/O 擴(kuò)展能力,是PLC 設(shè)計(jì)制造的核心技術(shù)。目前,PLC 大多采用串行通信技術(shù)實(shí)現(xiàn)背板總線,串行總線引線少、硬件成本低,跟并行總線相比不容易受干擾,串行總線可以提高在惡劣的工廠和工業(yè)環(huán)境下自動(dòng)化設(shè)備的可靠性。用于串行通信技術(shù)的可選類型包括I2C、UART、SPI、USB 和以太網(wǎng)等,一般來說,很多作為PLC 主芯片的單片機(jī)自身都集成了這些外設(shè)部件。但是單片機(jī)內(nèi)部集成的I2C、UART、SPI 外設(shè)通信速率太慢,根本不能滿足底板總線的通信速度要求。USB 和以太網(wǎng)的通信速度雖然很快但由于它們都是通用的接口,在通信協(xié)議處理時(shí)需要單片機(jī)的干預(yù), 單片機(jī)處理數(shù)據(jù)速度較慢,因此整體通信速度仍然很慢。一臺(tái)大型的PLC 采集上千點(diǎn)I/O 數(shù)據(jù)的時(shí)間一般不到1ms,要滿足如此高速的通信要求必須設(shè)計(jì)專門的背板總線。

1 背板總線工作原理

如圖1 所示,基于背板總線的數(shù)據(jù)通信流程如下:

(1)PLC 主機(jī)的命令通過主機(jī)協(xié)議芯片發(fā)送到背板總線;(2)從機(jī)協(xié)議芯片把接收到的命令給擴(kuò)展模塊的單片機(jī), 某一個(gè)擴(kuò)展模塊的單片機(jī)做出應(yīng)答,通過從機(jī)協(xié)議芯片把應(yīng)答數(shù)據(jù)送往背板總線;(3)主機(jī)協(xié)議芯片收到應(yīng)答數(shù)據(jù),并送往PLC主機(jī)的單片機(jī)。

圖1 背板總線通信框圖
圖1 背板總線通信框圖

 

PLC 主機(jī)發(fā)往背板總線的數(shù)據(jù)可以分成兩類:一類是I/O 刷新數(shù)據(jù),具有周期性,數(shù)據(jù)交換非常頻繁;另一類是診斷性數(shù)據(jù),具有非周期性,出現(xiàn)機(jī)會(huì)較少。

 

2 協(xié)議芯片設(shè)計(jì)

本設(shè)計(jì)定義背板總線采用類似SPI 串行通信的規(guī)格,用于通信的引線共4 根,包括時(shí)鐘信號(hào)SCLK、片選信號(hào)SSEL、寫數(shù)據(jù)引線MISO 和讀數(shù)據(jù)引線MOSI;支持主機(jī)和從機(jī)同時(shí)收發(fā)數(shù)據(jù),數(shù)據(jù)位格式如圖2 所示,數(shù)據(jù)幀在SSEL 信號(hào)為低電平時(shí)傳輸。

圖2 背板總線數(shù)據(jù)規(guī)格
圖2 背板總線數(shù)據(jù)規(guī)格

 

主機(jī)和從機(jī)協(xié)議芯片的內(nèi)部結(jié)構(gòu)框圖相同,如圖3 所示。

協(xié)議芯片內(nèi)部有狀態(tài)機(jī)控制器、幀控制器、移位寄存器、接收/發(fā)送FIFO 和讀寫緩存。單片機(jī)發(fā)送的周期性、非周期性數(shù)據(jù)幀,首先都寫到寫緩存,在發(fā)送FIFO 中進(jìn)行排隊(duì)發(fā)送,在SPI 時(shí)鐘SCLK 的驅(qū)動(dòng)下數(shù)據(jù)幀被轉(zhuǎn)換為串行數(shù)據(jù)發(fā)送到背板總線;在SPI 時(shí)鐘的作用下, 接收來自背板總線上的串行數(shù)據(jù);在狀態(tài)機(jī)和幀控制器的協(xié)調(diào)下,接收FIFO 中的有效數(shù)據(jù)幀被提取并放進(jìn)讀緩存區(qū),等待單片機(jī)來讀取,如果是非周期性數(shù)據(jù)則發(fā)中斷信號(hào)通知單片機(jī)來取數(shù)據(jù)。讀緩存中的周期性數(shù)據(jù)是可以覆蓋的,新接收到的周期性數(shù)據(jù)直接覆蓋舊的周期性數(shù)據(jù),而非周期性數(shù)據(jù)是單獨(dú)存放的,不能覆蓋,由單片機(jī)讀取并清除。

圖3 協(xié)議芯片內(nèi)部結(jié)構(gòu)框圖
圖3 協(xié)議芯片內(nèi)部結(jié)構(gòu)框圖

 

協(xié)議芯片使得外接的單片機(jī)可以在空閑的情況下訪問讀緩存和寫緩存,單片機(jī)不必頻繁地通過中斷技術(shù)處理周期性數(shù)據(jù),也使得PLC 主機(jī)可以無等待地訪問從機(jī)的周期性數(shù)據(jù)。

3 基于CPLD 的協(xié)議芯片實(shí)現(xiàn)

3.1 CPLD 芯片選型。

本設(shè)計(jì)選用lattice 公司的MachXO 系列芯片,該系列CPLD 集成了部分FPGA 的功能, 除了內(nèi)置豐富的LUT 資源以外,還有大量分布式的SRAM 位和嵌入式的專用于FIFO 設(shè)計(jì)的SRAM 塊, 并有模擬鎖相環(huán)(PLL)支持時(shí)鐘信號(hào)的倍頻、分頻等,I/O引腳可配置成1.2/1.5/1.8/3.3V 電平兼容。

3.2 基于Verilog HDL 語言的硬件程序設(shè)計(jì)

本設(shè)計(jì)采用Verilog HDL 語言進(jìn)行協(xié)議芯片的程序設(shè)計(jì),Verilog HDL 語言是一種硬件描述語言,設(shè)計(jì)數(shù)字芯片時(shí)可以按照層次描述,并可以進(jìn)行時(shí)序建模。本設(shè)計(jì)采用混合設(shè)計(jì)模式,主要設(shè)計(jì)的模塊有狀態(tài)機(jī)、協(xié)議幀檢測(cè)、FIFO 控制器設(shè)計(jì)等。

 

1)狀態(tài)機(jī)設(shè)計(jì)。

協(xié)議芯片的頂層模塊是狀態(tài)控制器部分,協(xié)議芯片共有四個(gè)狀態(tài), 分別處理基于Verilog HDL 程序語言的狀態(tài)機(jī)描述偽代碼如下:

基于CPLD的PLC背板<a class=

2)協(xié)議幀檢測(cè)。

本協(xié)議芯片的幀校驗(yàn)和采用簡(jiǎn)單的加和形式進(jìn)行,在接收一方,如果數(shù)據(jù)幀中有用數(shù)據(jù)的加和同后續(xù)的校驗(yàn)和字節(jié)相同,則協(xié)議是正確的,否則丟棄該幀。協(xié)議幀校驗(yàn)和計(jì)算的代碼如下:

基于CPLD的PLC背板總線協(xié)議接口芯片的設(shè)計(jì)方案

3)FIFO 設(shè)計(jì)。

FIFO 利用了MachXO 系列CPLD 的嵌入式SRAM 塊的資源,Lattice 公司的ispLEVER 7.0 軟件提供了可配置的IP 軟核,該軟核可以采用基于嵌入式SRAM 塊實(shí)現(xiàn), 也可以使用查找表實(shí)現(xiàn),F(xiàn)IFO 的IP 核框圖如圖4 所示,F(xiàn)IFO 的可配置參數(shù)包括FIFO字節(jié)深度、EmptyFull、Almostempty 和AlmostFull觸發(fā)字節(jié)深度、數(shù)據(jù)寬度、大小端模式等。

圖4 可配置FIFO 控制器IP 軟核框圖
圖4 可配置FIFO 控制器IP 軟核框圖

 

用Verilog HDL 語言實(shí)現(xiàn)的發(fā)送和接收FIFO控制器的實(shí)例代碼如下:

基于CPLD的PLC背板總線協(xié)議接口芯片的設(shè)計(jì)方案

3.3 協(xié)議芯片綜合

Verilog HDL 程序通過Lattice 公司的CPLD 開發(fā)軟件ispLEVER 7.0 進(jìn)行編譯、綜合,多次嘗試后最終選擇了Lattice 公司MachXO 系列CPLD 中的MachXO2280 芯片, 綜合后的主機(jī)協(xié)議芯片占用CPLD 資源的60%左右, 從機(jī)協(xié)議芯片占用CPLD資源的45%左右,F(xiàn)IFO 控制器充分利用了MachXO2280芯片內(nèi)部的嵌入式RAM 塊, 同時(shí)利用了鎖相環(huán)實(shí)現(xiàn)高頻率的時(shí)鐘工作。最后通過LSC ispVM(R)System 燒寫軟件經(jīng)JTAG 口下載到CPLD 芯片中進(jìn)行協(xié)議芯片功能驗(yàn)證測(cè)試。

 

4 結(jié)語

本文設(shè)計(jì)的背板總線協(xié)議芯片在背板串行總線時(shí)鐘頻率為25MHz、信號(hào)電平為L(zhǎng)VTTL,底板引線長(zhǎng)度為40cm,1 臺(tái)主機(jī)連接3 臺(tái)擴(kuò)展模塊的情況下工作穩(wěn)定并通過了群脈沖試驗(yàn),驗(yàn)證了這一組協(xié)議芯片的設(shè)計(jì)是成功的。由于該組協(xié)議芯片是針對(duì)PLC 的周期性和非周期性數(shù)據(jù)傳送專門設(shè)計(jì)的,硬件實(shí)現(xiàn)的協(xié)議幀控制器支持高速率通信、支持?jǐn)?shù)據(jù)幀檢驗(yàn)功能,避免了數(shù)據(jù)傳送的錯(cuò)誤,大大降低了外圍單片機(jī)的軟件開銷,增強(qiáng)了可靠性,是一組非常適合用于PLC 背板總線或者需要多模塊協(xié)同工作的背板總線系統(tǒng)協(xié)議芯片。

 

 

 

此內(nèi)容為AET網(wǎng)站原創(chuàng),未經(jīng)授權(quán)禁止轉(zhuǎn)載。
亚洲一区二区欧美_亚洲丝袜一区_99re亚洲国产精品_日韩亚洲一区二区
黑人一区二区| 亚洲免费视频一区二区| 国产精品久久久久婷婷| 欧美激情视频在线播放| 久久综合国产精品| 久久久久久亚洲综合影院红桃| 午夜亚洲性色视频| 亚洲综合视频1区| 亚洲午夜精品一区二区| 一本色道久久88综合日韩精品| 亚洲国内在线| 久久激情综合| 欧美综合国产| 亚洲二区免费| 亚洲激情视频| 亚洲精品三级| 亚洲人成网站999久久久综合| 亚洲黄色免费| 亚洲品质自拍| 99国产成+人+综合+亚洲欧美| 亚洲美女91| 在线视频欧美一区| 亚洲一级在线观看| 亚洲欧美日韩国产综合| 欧美一区二区三区啪啪| 久久成人免费电影| 久久精品久久99精品久久| 久久精品九九| 免费在线观看成人av| 欧美激情久久久久久| 欧美日韩亚洲激情| 国产精品免费看| 国产午夜精品在线| 激情综合中文娱乐网| 在线国产精品播放| 日韩一级大片| 午夜精品久久久久久久久久久久 | 亚洲无亚洲人成网站77777| 亚洲视频在线看| 欧美一区网站| 亚洲精品欧美极品| 亚洲一区在线直播| 久久精品人人做人人爽电影蜜月| 玖玖综合伊人| 欧美三级电影一区| 国产日韩综合一区二区性色av| 狠狠色丁香婷婷综合影院| 亚洲人成亚洲人成在线观看| 一区二区欧美视频| 欧美一区二区三区男人的天堂| 亚洲精品久久在线| 亚洲尤物在线视频观看| 久久欧美中文字幕| 欧美日韩精品是欧美日韩精品| 国产日韩欧美| 亚洲欧洲一区二区三区在线观看| 亚洲一二三区视频在线观看| 久久成人免费网| 一区二区三区久久网| 亚洲制服av| 欧美精品激情blacked18| 日韩一区二区免费看| 亚洲免费成人av电影| 亚洲伊人观看| 亚洲精品视频一区二区三区| 午夜久久久久久| 欧美不卡视频一区发布| 欧美午夜片在线免费观看| 国产一区二区三区免费在线观看| 亚洲欧洲精品一区二区| 亚洲一区二区av电影| 91久久久一线二线三线品牌| 午夜精品视频| 欧美国产在线观看| 国产欧美欧洲在线观看| 亚洲精品免费网站| 欧美一区成人| 亚洲视频一二| 欧美99久久| 国产欧美日韩精品a在线观看| 亚洲人成网站777色婷婷| 性感少妇一区| 中文av字幕一区| 免费观看欧美在线视频的网站| 国产精品一级| 日韩午夜视频在线观看| 亚洲国产精品久久久久婷婷884 | 好吊妞**欧美| 亚洲一区二区三区中文字幕在线| 亚洲精品一区二区三区蜜桃久| 欧美在线视频一区二区| 欧美亚韩一区| 亚洲精品一区二区三| 久久精品九九| 久久精品成人一区二区三区蜜臀| 国产精品户外野外| 日韩午夜三级在线| 亚洲免费不卡| 噜噜噜91成人网| 国内久久婷婷综合| 性久久久久久久| 欧美亚洲日本国产| 国产精品久久久久久妇女6080 | 91久久国产自产拍夜夜嗨 | 老司机一区二区三区| 国产亚洲欧美日韩一区二区| 亚洲一区二区三区高清不卡| 一本高清dvd不卡在线观看| 欧美成年人视频网站| 在线电影国产精品| 亚洲国产精品成人一区二区| 国产精品自在欧美一区| 亚洲欧美另类在线| 亚洲一级片在线看| 亚洲激情综合| 娇妻被交换粗又大又硬视频欧美| 欧美电影在线观看| 一区二区在线不卡| 欧美中文字幕在线| 久久精品人人做人人爽| 国产日韩欧美高清| 亚洲欧美一区二区三区久久| 欧美日韩在线免费视频| 欧美日韩国产免费| 亚洲精品视频中文字幕| 99精品久久久| 欧美日韩国产天堂| 亚洲精品免费观看| 一本色道久久综合一区| 欧美日韩成人在线视频| 亚洲激情视频网站| 亚洲精品免费在线播放| 欧美成人免费网站| 亚洲久久一区| 亚洲无线一线二线三线区别av| 国产精品九色蝌蚪自拍| 亚洲小说区图片区| 久久精品国产久精国产一老狼| 国产一区二区三区不卡在线观看 | 欧美中文在线视频| 久久综合给合| 亚洲国产日韩在线| 中文在线一区| 国产精品日日做人人爱| 亚洲欧美日韩网| 久久久一区二区| 136国产福利精品导航网址| 亚洲人成网站精品片在线观看| 欧美日韩高清在线播放| 一区二区三区黄色| 久久www成人_看片免费不卡| 狠狠久久五月精品中文字幕| 91久久夜色精品国产九色| 欧美精品一区在线发布| 亚洲视频在线观看视频| 久久精品视频免费| 136国产福利精品导航| 在线亚洲+欧美+日本专区| 国产精品麻豆va在线播放| 亚洲免费婷婷| 老色批av在线精品| 亚洲免费观看| 久久er精品视频| 亚洲国产精品免费| 亚洲嫩草精品久久| 国内久久视频| 在线亚洲+欧美+日本专区| 久久精品国产77777蜜臀| 久久一区二区三区国产精品| 欧美特黄一级大片| 亚洲精品三级| 亚洲尤物在线视频观看| 欧美精品一区二区三区在线播放 | 久久夜色精品国产噜噜av| 亚洲国产精品一区二区第四页av| 亚洲线精品一区二区三区八戒| 国产精品一国产精品k频道56| 亚洲国产成人一区| 欧美视频在线播放| 久久精品国产亚洲高清剧情介绍| 欧美日韩国产限制| 西瓜成人精品人成网站| 欧美国产日韩一二三区| 亚洲专区在线视频| 欧美激情精品久久久久久免费印度| 亚洲在线一区二区三区| 欧美激情久久久久| 欧美与欧洲交xxxx免费观看| 欧美日韩精品三区| 亚洲电影天堂av| 国产精品久久看| 99精品国产高清一区二区| 国产欧美一区二区精品性| av成人国产| 在线观看亚洲视频| 久久国产精品99久久久久久老狼| 亚洲精品中文字幕在线| 开元免费观看欧美电视剧网站| 亚洲尤物视频在线| 欧美日韩一级黄|