產品分類

      當前位置: 首頁 > 工業控制產品 > 自動化控制 > PLC可編程控制器

      類型分類:
      科普知識
      數據分類:
      PLC可編程控制器

      基于CPLD的PLC背板總線協議接口芯片設計

      發布日期:2022-04-22 點擊率:77 品牌:小金井_Koganei

      摘要:設計了一組基于CPLDPLC背板總線協議接口芯片,協議芯片可以區分PLC的背板總線的周期性數據和非周期性數據。詳細介紹了通過Verilog HDL語言設計狀態機、協議幀控制器、FIFO控制器的過程,25MHz下背板總線工作穩定的試驗結果驗證了協議芯片設計的可行性。

        

        

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

        1背板總線工作原理

        如圖所示,基于背板總線的數據通信流程如下:

        (1)PLC 主機的命令通過主機協議芯片發送到背板總線;

        (2)從機協議芯片把接收到的命令給擴展模塊的單片機, 某一個擴展模塊的單片機做出應答,通過從機協議芯片把應答數據送往背板總線;

        (3)主機協議芯片收到應答數據,并送往PLC主機的單片機。

        PLC 主機發往背板總線的數據可以分成兩類:一類是I/O 刷新數據,具有周期性,數據交換非常頻繁;另一類是診斷性數據,具有非周期性,出現機會較少。

        協議芯片設計

        本設計定義背板總線采用類似SPI 串行通信的規格,用于通信的引線共根,包括時鐘信號SCLK、片選信號SSEL、寫數據引線MISO 和讀數據引線MOSI;支持主機和從機同時收發數據,數據位格式如圖所示,數據幀在SSEL 信號為低電平時傳輸。

        信號包括數據/地址信號、復位信號Reset、中斷信號INT。主機和從機協議芯片的內部結構框圖相同,如圖所示。

        協議芯片內部有狀態機控制器、幀控制器、移位寄存器、接收/發送FIFO 和讀寫緩存。單片機發送的周期性、非周期性數據幀,首先都寫到寫緩存,在發送FIFO 中進行排隊發送,在SPI 時鐘SCLK 的驅動下數據幀被轉換為串行數據發送到背板總線;SPI 時鐘的作用下, 接收來自背板總線上的串行數據;在狀態機和幀控制器的協調下,接收FIFO 中的有效數據幀被提取并放進讀緩存區,等待單片機來讀取,如果是非周期性數據則發中斷信號通知單片機來取數據。讀緩存中的周期性數據是可以覆蓋的,新接收到的周期性數據直接覆蓋舊的周期性數據,而非周期性數據是單獨存放的,不能覆蓋,由單片機讀取并清除。

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

        基于CPLD 的協議芯片實現

        3.1 CPLD 芯片選型

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

        3.2 基于Verilog HDL 語言的硬件程序設計

        本設計采用Verilog HDL 語言進行協議芯片的程序設計,Verilog HDL 語言是一種硬件描述語言,設計數字芯片時可以按照層次描述,并可以進行時序建模。本設計采用混合設計模式,主要設計的模塊有狀態機、協議幀檢測、FIFO 控制器設計等。

        1)狀態機設計

        協議芯片的頂層模塊是狀態控制器部分,協議芯片共有四個狀態, 分別處理基于Verilog HDL 程序語言的狀態機描述偽代碼如下:

        always @(posedge CLK)

        begin

        if (Reset)

        //復位初始化沒有地址

        else case(state)

        zero//初始狀態0, 等待直到外部單片機有數據收發請求

        one//待命狀態1,命令分析,分析是周期性數據還是非周期數據命令

        two//周期性數據讀寫狀態2,該狀態支持

        three//非周期性數據讀寫狀態3,要發中斷信號通知主機

        endcase

        end

        2)協議幀檢測

        本協議芯片的幀校驗和采用簡單的加和形式進行,在接收一方,如果數據幀中有用數據的加和同后續的校驗和字節相同,則協議是正確的,否則丟棄該幀。協議幀校驗和計算的代碼如下:

      always@(posedge CLK)

        begin

        if (Reset)

        checkSum <= 0;

        else if (SSEL ==0 && SCLK_UPEDGE==1)//片選為低,時鐘的上升沿進行加和計算

        checkSum <= checkSum + RxReg;

        end

        3)FIFO 設計

        FIFO 利用了MachXO 系列CPLD 的嵌入式SRAM 塊的資源,Lattice 公司的ispLEVER 7.0 軟件提供了可配置的IP 軟核,該軟核可以采用基于嵌入式SRAM 塊實現, 也可以使用查找表實現,FIFO IP 核框圖如圖所示,FIFO 的可配置參數包括FIFO字節深度、EmptyFullAlmostEmpty AlmostFull觸發字節深度、數據寬度、大小端模式等。

        用Verilog HDL 語言實現的發送和接收FIFO控制器的實例代碼如下:

        TxFifo//發送FIFO

        __a (.clk (CLK).WRclk (WrClock).RDclk

        (Spi8bit_R).rst (Reset).din (DatafromCPU).we

        (WrEnTx).dout (TxRegWire).re (Valve).full (Tx-

        Full).empty(TxEmpty));

        RxFifo//接收FIFO

        __b(.clk(CLK).WRclk(Spi8bit_S).RDclk(Rd-

        Clock).rst (! (Reset |SpiReset |RxStateRst)).din

        (RxReg).we (RxWrEn).dout (Data2CPU).re

        (RDEnRx).full(RxFull).empty(RxEmpty));

        3.3 協議芯片綜合

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

        結語

        本文設計的背板總線協議芯片在背板串行總線時鐘頻率為25MHz、信號電平為LVTTL,底板引線長度為40cm臺主機連接臺擴展模塊的情況下工作穩定并通過了群脈沖試驗,驗證了這一組協議芯片的設計是成功的。由于該組協議芯片是針對PLC 的周期性和非周期性數據傳送專門設計的,硬件實現的協議幀控制器支持高速率通信、支持數據幀檢驗功能,避免了數據傳送的錯誤,大大降低了外圍單片機的軟件開銷,增強了可靠性,是一組非常適合用于PLC 背板總線或者需要多模塊協同工作的背板總線系統協議芯片。

      下一篇: PLC、DCS、FCS三大控

      上一篇: 索爾維全系列Solef?PV

      推薦產品

      更多
      主站蜘蛛池模板: 午夜影视日本亚洲欧洲精品一区 | 亚洲AV无码一区二区二三区软件 | 久久精品无码一区二区三区| 国产一区二区三区樱花动漫| 人妻在线无码一区二区三区| 极品少妇伦理一区二区| 一区二区视频传媒有限公司| 在线观看中文字幕一区| 亚洲午夜一区二区电影院| 久久婷婷久久一区二区三区| 狠狠色成人一区二区三区| 亚洲一区二区视频在线观看| 免费无码一区二区三区蜜桃大| 久久精品亚洲一区二区三区浴池| 中文字幕日韩一区| 久久久久人妻精品一区| 性色AV一区二区三区| 亚洲AV噜噜一区二区三区| 一区二区三区四区免费视频| 日韩精品无码一区二区中文字幕 | 亚洲欧洲一区二区三区| 成人在线视频一区| 日韩电影在线观看第一区| 亚洲国产精品成人一区| 国产色情一区二区三区在线播放 | 国产精品无码一区二区在线观一| 一区二区三区视频网站| 色妞AV永久一区二区国产AV | 国产激情视频一区二区三区| 国语对白一区二区三区| 精品一区二区三区高清免费观看 | 日韩精品人妻一区二区中文八零| 91在线精品亚洲一区二区| 一区国严二区亚洲三区| 中文字幕乱码一区久久麻豆樱花| 日韩精品电影一区亚洲| 亚洲天堂一区二区三区| 香蕉视频一区二区| 美女视频黄a视频全免费网站一区| 色偷偷av一区二区三区| 国精产品一区一区三区免费视频|