Powerlink通訊協議主從站內核的硬體實現方法
2023-06-06 05:46:01 1
專利名稱:Powerlink通訊協議主從站內核的硬體實現方法
技術領域:
本發明涉及一種工業乙太網通訊協議的實現方法,特別是涉及一種POWERLINK通訊協議主從站內核的硬體實現方法。
背景技術:
POWERLINK是一種實時工業乙太網的通訊協議標準,具有實際意義上的高實時性。POWERLINK定義了一個精簡的、實時性極高的數據鏈路層協議,同時定義了 CANopen為應用層協議。POWERLINK協議包括通信描述IEC61784-2 ;服務和協議IEC61158-300、IEC61158-400、IEC61158-500 和 IEC61158-600 ;設備描述 IS015745-1。OSI是一個用於開放信息處理系統標準化的通信模型,它是當今許多通用無數據優先級傳輸協議的參考模型。這個模型將數據傳輸的任務分為7層,每層(除了最底層) 建立在另一層的基礎之上。POWERLINK是一個三層的通信網絡,根據OSI模型,它規定了物理層、數據鏈路層和應用層。POWERLINK 當前的解決方案是目前EPSG (Ethernet POWERLINK StandardizationGroup :P0WERLINK標準化組織)提供的解決方案有兩種(HW Design Guidelines B&R公司,December 7,2010)I、系統CPU中用C代碼實現軟體協議棧(數據鏈路層和應用層)加MAC晶片和PHY晶片實現的物理層。2、基於可編程器件,如FPGA的可綜合CPU軟核實現C代碼軟體協議棧(數據鏈路層和應用層)加上0PENMAC IP核的部分硬體加速MAC和PHY晶片實現的物理層。前一種方法完全依賴於應用系統CPU的運行速度,後一種方法有一定的硬體加速能力,但是由於依然依賴FPGA中內嵌的CPU軟核的運算處理能力,並且,由於受晶片資源的約束,目前主流的應用還只能實現從站功能。理論上可以在任何硬體平臺上搭建POWERLINK通訊系統,因為其物理層是標準的MAC/PHY控制器(IEEE802. 3標準),而數據鏈路層和應用層是開放原始碼的C語言程序。但是,正是由於數據鏈路層和應用層是由通用CPU(或軟核)+軟體實現的,必然在實際實現中受限於CPU的性能。而且,開放的原始碼為了兼容各種CPU平臺,不得不放棄很多代碼效率,例如數據鏈路層中的校驗部分牽扯到數學運算,但不考慮硬體具體實現的代碼和結合硬體的高效率代碼(如基於VFP的彙編)在實現速度上可能相差幾倍甚至十幾倍。在當今的高速、高精度工業現場控制領域,對同步數據傳輸及處理提出了越來越高的要求。例如,當數控系統的同步周期達到512US/10軸甚至更短,就很難滿足在此高速的情況下的實時性。本發明旨在提出一種不依賴於通用CPU(或軟核)+軟體方式,實現從物理層到數據鏈路層再到應用層的完全硬體實現的主從站內核方案,以提高數據傳輸的響應能力,減輕系統主CPU的實時數據處理的負擔
發明內容
本發明的目的在於提供一種POWERLINK通訊協議主從站內核的硬體實現方法,能夠克服現有技術中POWERLINK通訊協議的實現由於依賴CPU而導致不得不放棄很多效率,從而降低了數據實時性,而使用更高速度的器件又會提高成本並增加硬體設計的複雜度等缺點;基於可編程邏輯器件以及定製/半定製硬體晶片,本發明通過完全硬體方式實現POWERLINK協議的主從站內核,從而在實時工業乙太網上實現POWERLINK通訊協議。為實現本發明目的,採用如下技術方案一種POWERLINK通訊協議主從站內核的硬體實現方法,其特徵在於,基於可編程邏輯器件以及定製/半定製硬體晶片實現POWERLINK通訊協議主/從站的數據鏈路層、應用層以及連接數據鏈路層和應用層的同步總線,所述的數據鏈路層包括主站數據鏈路層控制器和從站數據鏈路層控制器,主站數據鏈路層控制器、從站數據鏈路層控制器均包括上電/外部復位初始化控制器、時間基準控制器、同步信號控制器、NMT狀態機、DLL狀態機、發 送/接受DMA控制器;所述的應用層包括應用層DPR和應用層REG ;所述的同步總線上掛載上述數據鏈路層各個子模塊和應用層DPR、應用層REG,同步總線形成聯接數據鏈路層和應用層的數據通道;由綜合軟體綜合以上各模塊,再由實現軟體中將上述所有綜合後代碼生成位流文件,下載到目標硬體中實現POWERLINK通訊協議主從站內核。利用上述方法實現的主從站內核通過MII接口連接物理層,物理層接收到的乙太網傳輸的數據經數據鏈路層無差錯傳輸後到達數據緩衝區,按照POWERLINK協議解釋出應用層數據並將此數據緩存在應用層DPR中以備讀取;來自應用層DPR的待發送的數據在物理層發送前按照POWERLINK協議封裝成應用層數據幀。所述的可編程邏輯器件以及定製/半定製硬體晶片包括但不限於FPGA、CPLD或ASIC0 FPGA (Field-Programmable Gate Array),即現場可編程門陣列,它是在 PAL、GAL、CPLD等可編程器件的基礎上進一步發展的產物。它是作為專用集成電路(ASIC)領域中的一種半定製電路而出現的。CPLD(Complex Programmable Logic Device)複雜可編程邏輯器件,是從PAL和GAL器件發展出來的器件,相對而言規模大,結構複雜,屬於大規模集成電路範圍,是一種用戶根據各自需要而自行構造邏輯功能的數字集成電路。ASIC是一種為專門目的而設計的集成電路,是指應特定用戶要求和特定電子系統的需要而設計、製造的集成電路。所述的同步總線的帶寬彡50M,優選彡100M。所述的主站數據鏈路層控制器包括上電/外部復位初始化控制器、循環周期同步控制器、狀態周期同步控制器、NMT狀態機、DLL狀態機、發送DMA及發送數據封裝控制器,接收DMA控制器及解包進程控制器,控制流程包括I)上電復位信號和外部復位控制器,在邏輯電路上電時產生復位信號以重置其它各個模塊的初始狀態,並且在數據發生意外的情況下產生終止其它各個模塊運行的信號,並使之復位到確定的初始狀態;2)循環周期同步控制器,在通訊過程中提供網絡同步信號,並產生嚴格的同步時鐘用以同步以下各個模塊;3)狀態周期同步控制器,在通訊過程中提供控制數據幀的收發順序的驅動信號;4)接收DMA控制器及解包進程控制器,對接收數據幀定界並解析來自物理層的原始數據;5)發送DMA及發送數據封裝控制器,對應用層的待發送數據進行構建並將數據封裝成標準POWERLINK幀格式同時啟動發送進程;6)DLL狀態機管理已建立的POWERLINK通訊循環周期,該狀態機產生每個通訊周期的幀收發順序,並監控沒個從站節點,當有任何通訊鏈路層錯誤發生時DLL狀態機進行錯誤處理;7) NMT狀態機管理整個通訊過程,從初始化到直到通訊建立,在此過程中該狀態機根據不同的網絡配置文件將數據鏈路層配置成此種拓撲下的有效網絡並初始化各個從站,識別各個從站,最後通知各個從站進入並維持可操作通訊狀態。
所述的從站數據鏈路層控制器包括上電/外部復位初始化控制器、監聽時間基準控制器、狀態時間基準控制器、NMT狀態機、DLL狀態機、發送DMA及發送數據封裝控制器,接收DMA控制器及解包進程控制器,控制流程包括I)上電復位信號和外部復位控制器,在邏輯電路上電時產生復位信號以重置其它各個模塊的初始狀態,並且在數據發生意外的情況下產生終止其它各個模塊運行的信號,並使之復位到確定的初始狀態;2)狀態時間基準控制器通過定時器產生一個嚴格的定時時基,該時基參與監聽進程用以對每個POWERLINK循環周期進行數據幀定界並控制數據收發的順序;3)監聽時間基準控制器對主站的同步信號進行監測並確定網絡同步過程;4)接收DMA控制器及解包進程控制器將對接收數據幀定界並解析來自物理層的原始數據;5)發送DMA控制器及發送數據封裝控制器對應用層的待發送數據進行構建並將數據封裝成標準POWERLINK幀格式同時啟動發送進程;6) NMT狀態機管理整個通訊過程,從初始化到直到通訊建立。在此過程中該狀態機應答主站識別請求,使從站進入相應的通訊狀態建立並盡力維持這個狀態;7)DLL狀態機在每一個已建立的POWERLINK循環周期中監控網絡的狀態並應答主站的數據請求。所述的應用層中,應用層DPR包括PDO數據DPR和SDO數據DPR,應用層REG包括SDO狀態機控制寄存器陣列、XDD/XDC/CDC寄存器陣列、控制及狀態寄存器以及報警及錯誤隊列。本發明方法基於可編程邏輯器件以及定製/半定製硬體晶片,通過完全硬體方式實現POWERLINK協議的主從站內核,其響應速度可由CPU的毫秒級提高到數字邏輯電路的微秒級,極大地減輕主CPU的實時數據處理的負擔。本發明的有益效果具體包括I、提高數據傳輸實時性和應用者數據提取的速度。2、不依賴於高性能通用CPU從而降低成本。3、簡單易用為使用者減少硬體複雜度,節省應用項目開發周期。4、不依賴於具體可編程邏輯器件晶片及定製/半定製硬體晶片的型號從而使該方案具備良好的通用性和可移植性。下面結合具體實施例對本發明進行詳細描述。本發明的保護範圍並不以具體實施方式
為限,而是由權利要求加以限定。
圖1P0WERLINK通訊協議主從站內核的結構方框圖。圖2主站數據鏈路層控制器(WXEPLH0ST)結構方框圖。圖3從站數據鏈路層控制器(WXEPLSLAVE)結構方框圖。圖4網絡管理狀態機(NMT狀態機)遷躍信號仿真圖。圖5主站NMT狀態機(NMT_MS)狀態轉移圖。 圖6從站NMT狀態機(NMT_CS)狀態轉移圖。圖7主站DLL狀態機(DLL_MS)狀態轉移圖(I)。圖8主站DLL狀態機(DLL_MS)狀態轉移圖⑵。圖9從站DLL狀態機(DLL_CS)狀態轉移圖(I)。圖10從站DLL狀態機(DLL_CS)狀態轉移圖⑵。圖11應用層結構方框圖。圖12SD0數據傳輸過程示意圖。圖13SD0數據傳輸行為仿真圖。圖14報警隊列數據傳輸過程示意圖。圖15P0WERLINK協議主從站內核Modelsim仿真結果示意圖。
具體實施例方式以下通過一種具體實現手段詳細描述本發明方法,並進行驗證。本領域技術人員易於理解,本方法並不局限於該具體實現方式。下文所採用的具體實現方式具有以下特點I.所有代碼使用VHDL2000標準語言的通用VHDL編譯器,不依賴於具體的硬體IC型號。2.在FPGA上實現綜合和仿真,所有的邏輯在ModelS頂平臺上仿真通過,確定數據完整性,並消除邏輯衝突、驗證數字邏輯的正確性。3.所有實現,包括主站和從站都進行了實驗室環境下連續300億次傳輸無故障檢驗。POWERLINK通訊協議主從站內核的硬體的構成及實現主從站內核包括數據鏈路層、應用層連接數據鏈路層和應用層的同步總線,數據鏈路層包括主站數據鏈路層控制器(以下簡稱WXEPLH0ST)和從站數據鏈路層控制器(以下簡稱WXEPLSLAVE),用以分別實現主站/從站數據鏈路層,包括各個子模塊及具互連,子模塊包括上電/外部復位初始化進程,各種時間基準進程,同步信號互連,時鐘信號互連,NMT狀態機進程,DLL狀態機進程,DMA控制器進程,無論WXEPLH0ST或WXEPLSLAVE其中都以一個16位的高速同步總線(理論設計為100M)用以完成模塊間的數據交換,在此內部總線上掛載上述各個模塊,以及控制寄存器陣列和調試控制器等。並且,此總線也是聯接數據鏈路層和應用層的數據通道,物理層接收到的乙太網傳輸的數據經數據鏈路層無差錯傳輸後到達數據緩衝區,之後需按照POWERLINK協議解釋出應用層數據並將此數據緩存在應用層DPR中,以備應用者通過一條16BIT的數據總線讀取,同樣的來自應用層DPR的待發送的數據也需在物理層發送前按照POWERLINK協議封裝成應用層數據幀。同時,應用層數據通訊的過程及時序嚴格的受到應用層各個狀態機的管理,實現中包括TOO,SDO,報警及錯誤狀態機等。為了實現應用者和該IP核控制器的命令及數據交互,在應用層上必須實現一個外部控制寄存器陣列,此陣列是數據鏈路層、應用層和應用者之間的數據交換平臺,包括設備描述字典在內的配置數據也是通過這一平臺設置及修改的。最後由軟體綜合以上各層模塊,利用CORE GENERATOR工具生成基於BL0CKRAM的應用層DPR作為數據交互空間,最後在XST實現工具中將上述所有模塊綜合,生成應用版本。上述實現方法中,POWERLINK通訊協議主從站內核的原理框圖如圖I所示。主從站內核實現方法的具體描述如下 一、數據鏈路層POWERLINK的數據鏈路層,也就是POWERLINK的核心,主要包括如下功能a)傳輸過程中的流量控制、差錯檢測、對物理層的原始數據進行數據封裝等。b)實時通信的傳輸控制。c)網絡狀態機。d)構建/解析數據幀、對數據幀定界、網絡同步、數據幀收發順序的控制。在POWERLINK網絡中,至少有一個設備作為主站(MN),其他的設備作為從站(CN)。每個從站設備都有唯一的節點號(NodeId),該節點號是用來區分網絡中的設備,取值範圍為1-239。主站設備(MN)的節點號為240,主站的作用是為了為協調各個從站,合理分配總線使用權,避免衝突,實現實時通信。主站數據鏈路層控制器(WXEPLH0ST)框圖參見圖2。主站數據鏈路層控制器主要模塊包括上電/外部復位初始化控制器、循環周期同步控制器、狀態周期同步控制器、NMT狀態機、DLL狀態機、發送DMA及發送數據封裝控制器,接收DMA控制器及解包進程控制器,具體實現方法包括I)上電復位信號和外部復位控制器,在整個邏輯電路上電時產生必要的復位信號以重置以下各個模塊的初始狀態,並且在數據發生意外的情況下產生終止以下各個模塊繼續運行的信號並隨後使之復位到確定的初始狀態。2)循環周期同步控制器,在整個通訊過程中提供網絡同步信號,並產生嚴格的同步時鐘用以同步以下各個模塊。3)狀態周期同步控制器,在整個通訊過程中控制數據幀的收發順序的驅動信號。4)接收DMA控制器及解包進程控制器,將對接收數據幀定界並解析來自物理層的原始數據。5)發送DMA及發送數據封裝控制器對應用層的待發送數據進行構建並將數據封裝成標準POWERLINK幀格式同時啟動發送進程。6)DLL狀態機管理已建立的POWERLINK通訊循環周期,該狀態機產生每個通訊周期的幀收發順序,並監控沒個從站節點,當有任何通訊鏈路層錯誤發生時DLL狀態機執行相應的動作。7) NMT狀態機管理整個通訊過程,從初始化到直到通訊建立。在此過程中該狀態機根據不同的網絡配置文件將數據鏈路層配置成此種拓撲下的有效網絡並初始化各個從站,識別各個從站,最後通知各個從站進入相應的通訊狀態建立並盡力維持這個狀態。根據POWERLINK協議,上述主站數據鏈路層上電復位信號和外部復位控制器產生NMT_GT,NMT_MTI,NodeID信號,循環周期同步控制器產生SOC,SOA信號,狀態周期同步控制器產生NMT_MT2,DLL_MT0 DLL_MT13信號,接收DMA控制器及解包進程控制器產生NMT_MT3, NMT_MT4, NMT_MT5 信號。另外 NMT 狀態機產生信號NMT_GT1 NMT_GT12,NMT_MT1 NMT_MT7,DLL狀態機產生信號DLL_MT0 DLL_MT13,發送DMA及發送數據封裝控制器產生PREQ信號。其中NMT_GT,NMT_MT, DLL_MT, PREQ, SOC, SOA 信號在 POWERLINK 協議標準 EPSGDRAFTSTANDARD 301 Ethernet POWERLINK Communication Profile Specification 2008中詳述,這裡不再重述。
從站數據鏈路層控制器(WXEPLSLAVE)框圖參見圖3。從站數據鏈路層控制器主要模塊包括上電/外部復位初始化控制器、監聽時間基準控制器、狀態時間基準控制器、NMT狀態機、DLL狀態機、發送DMA及發送數據封裝控制器,接收DMA控制器及解包進程控制器,具體實現方法包括I)上電復位信號和外部復位控制器,在整個邏輯電路上電時產生必要的復位信號以重置以下各個模塊的初始狀態,並且在數據發生意外的情況下產生終止以下各個模塊繼續運行的信號並隨後使之復位到確定的初始狀態。2)狀態時間基準控制器通過一個16BIT的定時器產生一個嚴格的定時時基,該時基參與監聽進程用以對每個POWERLINK循環周期進行數據幀定界並控制數據收發的順序。3)監聽時間基準控制器對主站的同步信號進行監測並確定網絡同步過程。4)接收DMA控制器及解包進程控制器將對接收數據幀定界並解析來自物理層的原始數據。5)發送DMA控制器及發送數據封裝控制器對應用層的待發送數據進行構建並將數據封裝成標準POWERLINK幀格式同時啟動發送進程。6) NMT狀態機管理整個通訊過程,從初始化到直到通訊建立。在此過程中該狀態機應答主站識別請求,使從站進入相應的通訊狀態建立並盡力維持這個狀態。7)DLL狀態機在每一個已建立的POWERLINK循環周期中監控網絡的狀態並應答主站的數據請求。上電復位信號和外部復位控制器產生NMT_GT,NMT_CT1, NodeID信號,監聽時間基準控制器產生S0C,S0A, PREQ信號,狀態時間基準控制器產生DLL_MT0 DLL_MT13,PRES信號,接收DMA控制器及解包進程控制器產生NMT_CT2,NMT_CT4 NMT_CT12信號。另外NMT狀態機產生NMT_GT1 NMT_GT12,NMT_CT1 NMT_CT7信號,DLL_MS狀態機產生DLL_CT0 DLL_CT13,發送DMA控制器及發送數據封裝控制器產生PRES信號。其中NMT_GT,NMT_CT, DLL_CT, PRES, PREQ, SOC, SOA 信號在 POWERLINK 協議標準EPSG DRAFTSTANDARD 301 Ethernet POWERLINK Communication Profile Specification2008中詳述,這裡不再重述。I. INMT狀態機(網絡管理狀態機)的實現使用摩爾型狀態機,構建兩個進程,其中一個同步時序邏輯完成狀態轉移,另一個組合邏輯完成狀態輸出。NMT狀態遷躍信號的發生與提取,由發送信號的模快直接產生與主時鐘同步的邊沿有效信號。其仿真信號如圖4所示。對應主站和從站,由於網絡功能不同,NMT狀態機也不同,分別是NMT_MS,NMT_CS。其中NMT_MS描述及狀態轉移如圖5。NMT_CS描述及狀態轉移如圖6。I. 2DLL狀態機(數據鏈路狀態機)的實現使用摩耳型狀態機,構建兩個進程,其中一個同步時序邏輯完成狀態轉移,另一個組合邏輯完成狀態輸出。對應主站和從站,由於網絡功能不同,NMT狀態機也不同,分別是DLL_MS, DLL_CS。DLL_MS描述及狀態轉移圖如圖7和圖8。其中DLL_MS_NON_CYCLIC狀態此狀態表明周期性的通訊未建立,DLL狀態機在此等待NMT狀態機達到預處理態2,此間所有的事件將被忽略。DLL_MS_WAIT_SOC_TRIG狀態周期性的通訊結束,DLL狀態機在此等待下一個循環周期的開始。DLL_MS_WAIT_PRES狀態發送完一個PREQ幀,DLL狀態機在此等待PRES應答幀。DLL_MS_WAIT_ASND狀態當異步傳輸信號有效後,DLL狀態機在此等待異步傳輸周期的結束直到同步循環周期開始。DLL_MS_WAIT_S0A狀態在當前異步傳輸周期結束後等待下一個異步傳輸周期的到來。DLL_CS描述及狀態轉移圖如圖9和圖10。其中DLL_CS_NON_CYCLIC狀態此狀態表明周期性的通訊未建立,DLL狀態機在此等待NMT狀態機達到預處理態2,此間所有的事件將被忽略。DLL_CS_WAIT_S0C狀態此狀態表明異步傳輸有效信號已經收到,在同步傳輸未 開始之前可以接收任何乙太網數據。DLL_CS_WAIT_PREQ狀態此狀態表明,在循環周期開始後,DLL狀態機在此等待同步請求數據。DLL_CS_WAIT_S0A狀態此狀態表明同步請求已收到,DLL狀態機等待異步傳輸。二、應用層應用層包括應用層DPR和應用層REG。物理層接收到的乙太網傳輸的數據經數據鏈路層無差錯傳輸後到達數據緩衝區,按照POWERLINK協議解釋出應用層數據並將此數據緩存在應用層DPR中以備讀取;來自應用層DPR的待發送的數據在物理層發送前按照POWERLINK協議封裝成應用層數據幀;同時,應用層數據通訊的過程及時序嚴格的受到應用層各個模塊的管理,實現中包括roo、SD0、報警及錯誤隊列等。為了實現應用者和該IP核控制器的命令及數據交互,在應用層上必須實現一個外部控制寄存器陣列,即應用層REG,此陣列是數據鏈路層、應用層和應用者之間的數據交換平臺,包括設備描述字典在內的配置數據也是通過這一平臺設置及修改的。2. I 控制寄存器(WXEPLREG)分開的主站及從站控制寄存器空間經過仔細的優化可以最大限度的配合各個模快同步工作並佔用最少的資源。為實現發明目的,至少需要的控制寄存器描述如下表
權利要求
1.ー種POWERLINK通訊協議主從站內核的硬體實現方法,其特徵在於,基於可編程邏輯器件以及定製/半定製硬體晶片實現POWERLINK通訊協議主/從站的數據鏈路層、應用層以及連接數據鏈路層和應用層的同步總線,所述的數據鏈路層包括主站數據鏈路層控制器和從站數據鏈路層控制器,主站數據鏈路層控制器、從站數據鏈路層控制器均包括上電/外部復位初始化控制器、時間基準控制器、同步信號控制器、NMT狀態機、DLL狀態機、發送/接受DMA控制器;所述的應用層包括應用層DPR和應用層REG ;所述的同步總線上掛載上述數據鏈路層各個子模塊和應用層DPR、應用層REG,同步總線形成聯接數據鏈路層和應用層的數據通道; 由綜合軟體綜合以上各模塊,再由實現軟體中將上述所有綜合後代碼生成位流文件,下載到目標硬體中實現POWERLINK通訊協議主從站內核。
2.根據權利要求I所述的POWERLINK通訊協議主從站內核的硬體實現方法,其特徵在幹,所述的主站數據鏈路層控制器包括上電/外部復位初始化控制器、循環周期同步控制器、狀態周期同步控制器、NMT狀態機、DLL狀態機、發送DMA及發送數據封裝控制器,接收DMA控制器及解包進程控制器; 控制流程包括 .1)上電復位信號和外部復位控制器,在邏輯電路上電時產生復位信號以重置其它各個模塊的初始狀態,並且在數據發生意外的情況下產生終止其它各個模塊運行的信號,並使之復位到確定的初始狀態; . 2)循環周期同步控制器,在通訊過程中提供網絡同步信號,並產生嚴格的同步時鐘用以同步以下各個模塊; .3)狀態周期同步控制器,在通訊過程中提供控制數據幀的收發順序的驅動信號; .4)接收DMA控制器及解包進程控制器,對接收數據幀定界並解析來自物理層的原始數據; .5)發送DMA及發送數據封裝控制器,對應用層的待發送數據進行構建並將數據封裝成標準POWERLINK幀格式同時啟動發送進程; . 6)DLL狀態機管理已建立的POWERLINK通訊循環周期,該狀態機產生每個通訊周期的幀收發順序,並監控沒個從站節點,當有任何通訊鏈路層錯誤發生時DLL狀態機進行錯誤處理; .7)NMT狀態機管理整個通訊過程,從初始化到直到通訊建立,在此過程中該狀態機根據不同的網絡配置文件將數據鏈路層配置成此種拓撲下的有效網絡並初始化各個從站,識別各個從站,最後通知各個從站進入並維持可操作通訊狀態。
3.根據權利要求I所述的POWERLINK通訊協議主從站內核的硬體實現方法,其特徵在幹,所述的從站數據鏈路層控制器包括上電/外部復位初始化控制器、監聽時間基準控制器、狀態時間基準控制器、NMT狀態機、DLL狀態機、發送DMA及發送數據封裝控制器,接收DMA控制器及解包進程控制器; 控制流程包括 .1)上電復位信號和外部復位控制器,在邏輯電路上電時產生復位信號以重置其它各個模塊的初始狀態,並且在數據發生意外的情況下產生終止其它各個模塊運行的信號,並使之復位到確定的初始狀態;2)狀態時間基準控制器通過定時器產生ー個嚴格的定時時基,該時基參與監聽進程用以對每個POWERLINK循環周期進行數據幀定界並控制數據收發的順序; 3)監聽時間基準控制器對主站的同步信號進行監測並確定網絡同步過程; 4)接收DMA控制器及解包進程控制器將對接收數據幀定界並解析來自物理層的原始數據; 5)發送DMA控制器及發送數據封裝控制器對應用層的待發送數據進行構建並將數據封裝成標準POWERLINK幀格式同時啟動發送進程; 6)NMT狀態機管理整個通訊過程,從初始化到直到通訊建立。在此過程中該狀態機應答主站識別請求,使從站進入並維持可操作通訊狀態; 7)DLL狀態機在每ー個已建立的POWERLINK循環周期中監控網絡的狀態並應答主站的數據請求。
4.根據權利要求I所述的POWERLINK通訊協議主從站內核的硬體實現方法,其特徵在於,所述的應用層中,應用層DPR包括PDO數據DPR和SDO數據DPR,應用層REG包括SDO狀態機控制寄存器陣列、XDD/XDC/CDC寄存器陣列、控制及狀態寄存器以及報警及錯誤隊列。
5.根據權利要求I至4任一所述的POWERLINK通訊協議主從站內核的硬體實現方法,其特徵在於,所述的可編程邏輯器件以及定製/半定製硬體晶片包括FPGA、CPLD或ASIC。
6.根據權利要求I至4任一所述的POWERLINK通訊協議主從站內核的硬體實現方法,其特徵在於,所述的同步總線的帶寬> 50M。
全文摘要
一種POWERLINK通訊協議主從站內核的硬體實現方法,基於可編程邏輯器件以及定製/半定製硬體晶片實現POWERLINK通訊協議主/從站的數據鏈路層、應用層和同步總線,所述的數據鏈路層包括主站、從站數據鏈路層控制器,應用層包括應用層DPR和應用層REG;所述的同步總線上掛載數據鏈路層各個子模塊和應用層DPR、REG;由綜合軟體綜合以上各模塊,再由實現軟體中將代碼生成位流文件,下載到目標硬體中實現所述的主從站內核。本發明通過完全硬體方式實現POWERLINK協議的主從站內核,其響應速度由CPU的毫秒級提高到數字邏輯電路的微秒級,極大地減輕主CPU的實時數據處理的負擔。
文檔編號H04L29/08GK102664902SQ20121015045
公開日2012年9月12日 申請日期2012年5月15日 優先權日2012年5月15日
發明者李浙魯 申請人:南京華興數控技術有限公司