[發(fā)明專利]一種基于FPGA的POWERLINK從站幀緩存管理系統有效
| 申請?zhí)枺?/td> | 201510577314.2 | 申請日: | 2015-09-11 |
| 公開(公告)號: | CN105162786B | 公開(公告)日: | 2018-05-22 |
| 發(fā)明(設計)人: | 宋寶;唐小琦;張航天;王源;顏外平;謝遠龍;徐健;周向東;陳天航 | 申請(專利權)人: | 華中科技大學 |
| 主分類號: | H04L29/06 | 分類號: | H04L29/06;H04L12/863 |
| 代理公司: | 華中科技大學專利中心 42201 | 代理人: | 曹葆青 |
| 地址: | 430074 湖北*** | 國省代碼: | 湖北;42 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 基于 fpga powerlink 緩存 管理 系統 | ||
1.一種基于FPGA的POWERLINK從站幀緩存管理系統,其特征在于,在FPGA內部實現數據幀類型檢測模塊、數據幀緩存管理模塊,使用FPGA內部塊RAM作為幀緩存區(qū),在數據幀接收過程中由數據幀類型檢測模塊對當前幀的幀類型進行識別,并將幀類型識別結果傳遞給數據幀緩存管理模塊,數據幀緩存管理模塊根據幀類型識別結果決定存儲下一個幀的緩存區(qū)序列號,并且緩存區(qū)序列號將當前數據幀存入相應的緩存區(qū)中,其中:數據幀類型檢測模塊和數據幀緩存管理模塊使用VHDL語言編寫,在FPGA內部以硬件邏輯門的形式實現,幀緩存區(qū)域使用FPGA內部提供的RAM存儲塊,模塊之間通過FPGA內部的導線資源進行信息的傳遞,數據幀類型檢測模塊向數據幀緩存管理模塊提供幀類型信息;
每個緩存區(qū)有兩種狀態(tài),鎖定和解鎖,處于鎖定狀態(tài)的緩存區(qū)無法接收數據幀,只能被讀取;處于解鎖狀態(tài)的緩存區(qū)可以被任意讀寫,緩存區(qū)的狀態(tài)由數據幀緩存管理模塊確定,系統復位之后,所有緩存區(qū)的狀態(tài)均為解鎖狀態(tài)。
2.如權利要求1所述的系統,其特征在于,所述數據幀類型檢測模塊具體用于:
首先對目的地址進行檢測,C_DLL_MULTICAST_ASND和C_DLL_MULTICAST_PRES分別為POWERLINK通信行規(guī)規(guī)定的SDO幀和Pres幀應具有的目的地址,如果數據幀的目的地址與這兩者中的某一個相同,則進繼續(xù)判斷這個數據幀的具體類型;如果幀的目的地址與從站的本地MAC地址相同,則進行接下來的檢測判斷該幀是否為Preq幀;
對于通過目的地址檢測的數據幀,進行以太網類型的檢測,POWERLINK通信行規(guī)規(guī)定的以太網類型的數值為C_DLL_ETHERTYPE_EPL,符合要求的數據幀繼續(xù)對其目的進行檢測;
目的等于本地NODE ID的數據幀,認為是SDO幀或者Preq幀;接下來對這兩種幀的源進行檢測,如果源的數值等于C_ADR_MN_DEF_NODE_ID,則目的地址為C_DLL_MULTICAST_ASND的為SDO幀,目的地址為本地MAC地址的為Preq幀;
目的等于C_ADR_BROADCAST的數據幀,對其源進行檢測,如果源的數值為交叉通信從站ID,即與該從站進行交叉通信的從站的ID,則認為該幀的類型為Pres。
3.如權利要求1或2所述的系統,其特征在于,所述數據幀緩存管理模塊具體包括5個寄存器,其中,寄存器CurRxBufReg用于保存當前幀所在緩存區(qū)的區(qū)號,寄存器NextRxBufReg保存下一個數據幀應當處于的緩存區(qū)的區(qū)號,寄存器PreqBufReg、寄存器PresBufReg、寄存器SdoBufReg分別用于保存當前Preq幀、Pres幀、SDO幀所在的緩存區(qū)區(qū)號。
4.如權利要求3所述的系統,其特征在于,所述數據幀緩存管理模塊具體用于:
當系統復位或者最近數據幀接收完畢之后,首先將NextRxBufReg的值賦給CurRxBufReg;
根據數據幀類型檢測模塊提供的結果,更新PreqBufReg,PresBufReg,SdoBufReg中的數值:如果幀類型為Preq,則將CurRxBufReg的值賦給CurRxBufReg;如果幀類型為Pres,則將CurRxBufReg的值賦給PresBufReg;如果幀類型為Sdo,則將CurRxBufReg的值賦給SdoBufReg;如果幀類型不屬于上述三種類型的任意一種,則不進行PreqBufReg,PresBufReg,SdoBufReg的更新;
在上述三種寄存器的值更新完成之后,更新NextRxBufReg中的數值,NextRxBufReg的取值為所有的幀緩存區(qū)區(qū)號當中,不存在于PreqBufReg,PresBufReg,SdoBufReg三個緩存區(qū)中的所有區(qū)號中,數值最小的區(qū)號。
5.如權利要求1或2所述的系統,其特征在于,PreqBufReg、PresBufReg、SdoBufReg中保存的是當前被鎖定的緩存區(qū)的序號,如果為0,表示當前沒有緩存區(qū)被鎖定,如果某一緩存區(qū)的序號不在這三個寄存器當中,表明該緩存區(qū)沒有被鎖定,系統復位后,CurRxBufReg中的值為1,NextRxBufReg中的值為1,PreqBufReg、PresBufReg、SdoBufReg中的值為0。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于華中科技大學,未經華中科技大學許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業(yè)授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201510577314.2/1.html,轉載請聲明來源鉆瓜專利網。
- 上一篇:濃溶液稀釋裝置
- 下一篇:厚漿型砂壁狀涂料的攪拌裝置





