亚洲成年人黄色一级片,日本香港三级亚洲三级,黄色成人小视频,国产青草视频,国产一区二区久久精品,91在线免费公开视频,成年轻人网站色直接看

一種基于MSA協(xié)議的雙向通信系統(tǒng)及其實現(xiàn)方法與流程

文檔序號:12829293閱讀:272來源:國知局
一種基于MSA協(xié)議的雙向通信系統(tǒng)及其實現(xiàn)方法與流程

本發(fā)明涉及光通信技術(shù)領(lǐng)域,具體涉及一種基于msa協(xié)議的雙向通信系統(tǒng)及其實現(xiàn)方法。



背景技術(shù):

隨著通信技術(shù)的蓬勃發(fā)展,光通信所占比重越來越大,msa協(xié)議作為光通信領(lǐng)域的一種標準協(xié)議構(gòu)架得到越來越廣泛的使用。鑒于msa協(xié)議所定義的實際使用場景,一般多用硬件雙口ram來實現(xiàn)各模塊間的數(shù)據(jù)交互、告警上報等功能,傳統(tǒng)的通用通信接口,如i2c、spi、uart、ethernet、pcie等難以直接用于實現(xiàn)模塊間的數(shù)據(jù)交互,或是與msa協(xié)議規(guī)范不符,或是對硬件有特殊需求。目前傳統(tǒng)的方式是通過msa協(xié)議的自定義位定義狀態(tài)寄存器,模塊間自定通信協(xié)議,通過自定通信協(xié)議查詢狀態(tài)寄存器的方式來實現(xiàn)通信,完成數(shù)據(jù)的交互。但此種方式經(jīng)常是不同模塊定義不同的交互協(xié)議,難以通用,大大增加了調(diào)試、維護難度與開發(fā)周期;且通過自定通信協(xié)議來實現(xiàn)通信,數(shù)據(jù)交互效率低下。



技術(shù)實現(xiàn)要素:

針對現(xiàn)有技術(shù)中存在的缺陷,本發(fā)明的目的在于提供一種基于msa協(xié)議的雙向通信系統(tǒng)及其實現(xiàn)方法,通用于不同設(shè)備,且數(shù)據(jù)交互效率高。

為達到以上目的,本發(fā)明采取的技術(shù)方案是:一種基于msa協(xié)議的雙向通信系統(tǒng),其用于連接上層設(shè)備和下層設(shè)備,所述雙向通信系統(tǒng)包括雙口ram、上層端環(huán)形緩存區(qū)管理部件和下層端環(huán)形緩存區(qū)管理部件,其中:

所述雙口ram包括上行環(huán)形緩存區(qū)和下行環(huán)形緩存區(qū);上行環(huán)形緩存區(qū)用于緩存下層設(shè)備通過下層端環(huán)形緩存區(qū)管理部件寫入的數(shù)據(jù)包并供上層端環(huán)形緩存區(qū)管理設(shè)備讀取數(shù)據(jù);下行環(huán)形緩存區(qū)用于緩存上層設(shè)備通過上層端環(huán)形緩存區(qū)管理部件寫入的數(shù)據(jù)包并供下層端環(huán)形緩存區(qū)管理設(shè)備讀取數(shù)據(jù);

所述上層端環(huán)形緩存區(qū)管理部件連接所述上行環(huán)形緩存區(qū)和下行環(huán)形緩存區(qū),并提供供所述上層設(shè)備讀、寫數(shù)據(jù)的通用接口;所述上層端環(huán)形緩存區(qū)管理部件包括第一寫入模塊和第一讀取模塊,所述第一寫入模塊用于接收上層設(shè)備寫入的數(shù)據(jù)包并將數(shù)據(jù)包寫入下行環(huán)形緩存區(qū),所述第一讀取模塊用于讀取上行環(huán)形緩存區(qū)的可讀數(shù)據(jù);

所述下層端環(huán)形緩存區(qū)管理部件連接所述上行環(huán)形緩存區(qū)和下行環(huán)形緩存區(qū),并提供供所述下層設(shè)備讀、寫數(shù)據(jù)的通用接口;所述下層端環(huán)形緩存區(qū)管理部件包括第二寫入模塊和第二讀取模塊,所述第二寫入模塊用于接收下層設(shè)備寫入的數(shù)據(jù)包并將數(shù)據(jù)包寫入上行環(huán)形緩存區(qū),所述第二讀取模塊用于讀取下行環(huán)形緩存區(qū)的可讀數(shù)據(jù)。

在上述技術(shù)方案的基礎(chǔ)上,所述上層端環(huán)形緩存區(qū)管理部件還包括第一初始化模塊,所述第一初始化模塊用于初始化下行環(huán)形緩存區(qū)可供所述第一寫入模塊寫入數(shù)據(jù)的物理地址空間和所述上行環(huán)形緩存區(qū)可供第一讀取模塊讀取數(shù)據(jù)的物理地址空間;所述下層端環(huán)形緩存區(qū)管理部件還包括第二初始化模塊,第二初始化模塊用于初始化上行環(huán)形緩存區(qū)可供所述第二寫入模塊寫入數(shù)據(jù)的物理地址空間和所述下行環(huán)形緩存區(qū)可供第二讀取模塊讀取數(shù)據(jù)的物理地址空間。

在上述技術(shù)方案的基礎(chǔ)上,所述雙口ram包括midio接口,所述上層端環(huán)形緩存區(qū)管理部件通過midio接口連接所述上行環(huán)形緩存區(qū)。

在上述技術(shù)方案的基礎(chǔ)上,所述雙口ram包括ahb總線接口,所述上層端環(huán)形緩存區(qū)管理部件通過ahb總線接口連接所述下行環(huán)形緩存區(qū)。

在上述技術(shù)方案的基礎(chǔ)上,所述第一寫入模塊和所述第二寫入模塊均包括一級寫指針和二級寫指針,二級寫指針的值與所述第一寫入模塊寫入下行環(huán)形緩存區(qū)的數(shù)據(jù)或所述第二寫入模塊寫入上行環(huán)形緩存區(qū)的數(shù)據(jù)同步,一級寫指針的值在二級寫指針的值全部同步完畢后再更新至與二級寫指針一致;僅一級寫指針的值可被第一或第二讀取部件同步讀取。

在上述技術(shù)方案的基礎(chǔ)上,所述第一讀取模塊和所述第二讀取模塊均包括一級讀指針和二級讀指針,二級讀指針的值與所述第一讀取模塊讀取上行環(huán)形緩存區(qū)的數(shù)據(jù)或所述第二讀取模塊讀取下行環(huán)形緩存區(qū)的數(shù)據(jù)同步,一級讀指針的值在二級讀指針的值全部同步完畢后再更新至與二級讀指針一致;僅一級讀指針的值可被第一、第二寫入部件同步寫入。

本發(fā)明還公開了一種基于msa協(xié)議的雙向通信系統(tǒng)的實現(xiàn)方法,包括以下步驟:

s101,下層端環(huán)形緩存區(qū)管理部件接收下層設(shè)備發(fā)送來的數(shù)據(jù)包;

s102,下層端環(huán)形緩存區(qū)管理部件的第二寫入模塊將接收的數(shù)據(jù)包寫入上行環(huán)形緩存區(qū);

s103,上層端環(huán)形緩存區(qū)管理部件的第一讀取模塊將可讀數(shù)據(jù)從上行環(huán)形緩存區(qū)中讀出。

在上述技術(shù)方案的基礎(chǔ)上,步驟s102包括:

步驟s1021,下層端環(huán)形緩存區(qū)管理部件的第二寫入模塊調(diào)用二級寫指針檢測上行環(huán)形緩存區(qū)狀態(tài),判斷是否可以寫入,若是,進入步驟s1022,若否,進入步驟s1025;

步驟s1022,第二寫入模塊調(diào)用二級寫指針判斷實際可寫入的數(shù)據(jù)長度;

步驟s1023,第二寫入模塊調(diào)用ahb總線接口將數(shù)據(jù)寫入上行環(huán)形緩存區(qū),并同步更新二級寫指針的值;

步驟s1024,第二寫入模塊更新一級寫指針的值,使之與二級寫指針的值相等,結(jié)束;

步驟s1025,進入等待狀態(tài),等待超時時,返回實際寫入數(shù)據(jù)的長度為0。

在上述技術(shù)方案的基礎(chǔ)上,步驟s103包括:

步驟s1031,上層端環(huán)形緩存區(qū)管理部件的第一讀取模塊調(diào)用二級讀指針檢測上行環(huán)形緩存區(qū)狀態(tài),判斷是否可以讀取,若是,進入步驟s1032,若否,進入步驟s1035;

步驟s1032,第一讀取模塊調(diào)用二級讀指針判斷實際可寫入的數(shù)據(jù)長度;

步驟s1033,第一讀取模塊調(diào)用midio接口將數(shù)據(jù)從上行環(huán)形緩存區(qū)中讀出,并同步更新二級讀指針的值;

步驟s1034,第一讀取模塊更新一級讀指針的值,使之與二級讀指針的值相等,結(jié)束;

步驟s1035,進入等待狀態(tài),等待超時時,返回實際讀取數(shù)據(jù)的長度為0。

在上述技術(shù)方案的基礎(chǔ)上,還包括以下步驟:s201,上層端環(huán)形緩存區(qū)管理部件接收上層設(shè)備發(fā)送來的數(shù)據(jù)包;

s202,上層端環(huán)形緩存區(qū)管理部件的第一寫入模塊將接收的數(shù)據(jù)包寫入下行環(huán)形緩存區(qū);

s203,下層端環(huán)形緩存區(qū)管理部件的第二讀取模塊將可讀數(shù)據(jù)從下行環(huán)形緩存區(qū)中讀出。

與現(xiàn)有技術(shù)相比,本發(fā)明的優(yōu)點在于:

本發(fā)明在雙口ram中采用上行環(huán)形緩存區(qū)和下行環(huán)形緩存區(qū),并分別在上層設(shè)備端設(shè)置上層端環(huán)形緩存區(qū)管理部件和在下層設(shè)備端設(shè)置下層端環(huán)形緩存區(qū)管理部件,通過上層端環(huán)形緩存區(qū)管理部件或下層端環(huán)形緩存區(qū)管理部件向上行環(huán)形緩存區(qū)或下行環(huán)形緩存區(qū)讀寫數(shù)據(jù),從而實現(xiàn)通過上行環(huán)形緩存區(qū)和下行環(huán)形緩存區(qū)實現(xiàn)上層設(shè)備和下層設(shè)備之間的數(shù)據(jù)交互,上層端環(huán)形緩存區(qū)管理部件或下層端環(huán)形緩存區(qū)管理部件均設(shè)有供外部設(shè)備讀、寫的通用接口,從而通用于各種設(shè)備,且便于開發(fā)人員維護;同時,數(shù)據(jù)交互時無須通過自定通信協(xié)議查詢狀態(tài)寄存器,簡化數(shù)據(jù)交互流程,數(shù)據(jù)交互效率高。

附圖說明

圖1為本發(fā)明實施例中基于msa協(xié)議的雙向通信系統(tǒng)的結(jié)構(gòu)示意圖;

圖2為本發(fā)明實施例中基于msa協(xié)議的雙向通信系統(tǒng)的實現(xiàn)方法的步驟s101-s103的流程示意圖;

圖3為本發(fā)明實施例中基于msa協(xié)議的雙向通信系統(tǒng)的實現(xiàn)方法的步驟s201-s203的流程示意圖。

具體實施方式

以下結(jié)合附圖及實施例對本發(fā)明作進一步詳細說明。

參見圖1所示,本發(fā)明實施例提供一種基于msa協(xié)議的雙向通信系統(tǒng),其用于連接上層設(shè)備和下層設(shè)備,雙向通信系統(tǒng)包括雙口ram、上層端環(huán)形緩存區(qū)管理部件和下層端環(huán)形緩存區(qū)管理部件,其中:

雙口ram包括上行環(huán)形緩存區(qū)和下行環(huán)形緩存區(qū);上行環(huán)形緩存區(qū)用于緩存下層設(shè)備通過下層端環(huán)形緩存區(qū)管理部件寫入的數(shù)據(jù)包并供上層端環(huán)形緩存區(qū)管理設(shè)備讀取數(shù)據(jù);下行環(huán)形緩存區(qū)用于緩存上層設(shè)備通過上層端環(huán)形緩存區(qū)管理部件寫入的數(shù)據(jù)包并供下層端環(huán)形緩存區(qū)管理設(shè)備讀取數(shù)據(jù);

上層端環(huán)形緩存區(qū)管理部件連接上行環(huán)形緩存區(qū)和下行環(huán)形緩存區(qū),并提供供上層設(shè)備讀、寫數(shù)據(jù)的通用接口;此處通用接口即指上層設(shè)備在上層端環(huán)形緩存區(qū)管理部件中讀、寫數(shù)據(jù)時的調(diào)用的通用接口函數(shù)。上層端環(huán)形緩存區(qū)管理部件包括第一寫入模塊和第一讀取模塊,第一寫入模塊用于接收上層設(shè)備寫入的數(shù)據(jù)包并將數(shù)據(jù)包寫入下行環(huán)形緩存區(qū),第一讀取模塊用于讀取上行環(huán)形緩存區(qū)的可讀數(shù)據(jù);

下層端環(huán)形緩存區(qū)管理部件連接上行環(huán)形緩存區(qū)和下行環(huán)形緩存區(qū),并提供供下層設(shè)備讀、寫數(shù)據(jù)的通用接口;此處通用接口即指下層設(shè)備在下層端環(huán)形緩存區(qū)管理部件中讀、寫數(shù)據(jù)時的調(diào)用的通用接口函數(shù)。下層端環(huán)形緩存區(qū)管理部件包括第二寫入模塊和第二讀取模塊,第二寫入模塊用于接收下層設(shè)備寫入的數(shù)據(jù)包并將數(shù)據(jù)包寫入上行環(huán)形緩存區(qū),第二讀取模塊用于讀取下行環(huán)形緩存區(qū)的可讀數(shù)據(jù)。

上層端環(huán)形緩存區(qū)管理部件還包括第一初始化模塊,第一初始化模塊用于初始化下行環(huán)形緩存區(qū)可供第一寫入模塊寫入數(shù)據(jù)的物理地址空間和上行環(huán)形緩存區(qū)可供第一讀取模塊讀取數(shù)據(jù)的物理地址空間;下層端環(huán)形緩存區(qū)管理部件還包括第二初始化模塊,第二初始化模塊用于初始化上行環(huán)形緩存區(qū)可供第二寫入模塊寫入數(shù)據(jù)的物理地址空間和下行環(huán)形緩存區(qū)可供第二讀取模塊讀取數(shù)據(jù)的物理地址空間。

雙口ram包括midio接口,上層端環(huán)形緩存區(qū)管理部件通過midio接口連接上行環(huán)形緩存區(qū)。雙口ram包括ahb總線接口,上層端環(huán)形緩存區(qū)管理部件通過ahb總線接口連接下行環(huán)形緩存區(qū)。

第一寫入模塊和第二寫入模塊均包括一級寫指針和二級寫指針,二級寫指針的值與第一寫入模塊寫入下行環(huán)形緩存區(qū)的數(shù)據(jù)或第二寫入模塊寫入上行環(huán)形緩存區(qū)的數(shù)據(jù)同步,一級寫指針的值在二級寫指針的值全部同步完畢后再更新至與二級寫指針一致;僅一級寫指針的值可被第一或第二讀取部件同步讀取。

第一讀取模塊和第二讀取模塊均包括一級讀指針和二級讀指針,二級讀指針的值與第一讀取模塊讀取上行環(huán)形緩存區(qū)的數(shù)據(jù)或第二讀取模塊讀取下行環(huán)形緩存區(qū)的數(shù)據(jù)同步,一級讀指針的值在二級讀指針的值全部同步完畢后再更新至與二級讀指針一致;僅一級讀指針的值可被第一、第二寫入部件同步寫入。

本發(fā)明在上層端環(huán)形緩存區(qū)管理部件和在下層設(shè)備端設(shè)置下層端環(huán)形緩存區(qū)管理部件中均采用兩級指針,一級讀指針的值在二級讀指針的值全部同步完畢后再更新至與二級讀指針一致;一級寫指針的值在二級寫指針的值全部同步完畢后再更新至與二級寫指針一致,僅一級寫指針的值可被第一或第二讀取部件同步讀取,僅一級讀指針的值可被第一、第二寫入部件同步寫入;從而實現(xiàn)第一、第二寫入部件寫入數(shù)據(jù)的同時,第一、第二讀取部件可同步讀取數(shù)據(jù),即讀寫可同步進行,提升數(shù)據(jù)交互效率。

參見圖2所示,本發(fā)明還公開了一種基于msa協(xié)議的雙向通信系統(tǒng)的實現(xiàn)方法,包括以下步驟:

s101,下層端環(huán)形緩存區(qū)管理部件接收下層設(shè)備發(fā)送來的數(shù)據(jù)包;

s102,下層端環(huán)形緩存區(qū)管理部件的第二寫入模塊將接收的數(shù)據(jù)包寫入上行環(huán)形緩存區(qū);

s103,上層端環(huán)形緩存區(qū)管理部件的第一讀取模塊將可讀數(shù)據(jù)從上行環(huán)形緩存區(qū)中讀出。

步驟s102包括:

步驟s1021,下層端環(huán)形緩存區(qū)管理部件的第二寫入模塊調(diào)用二級寫指針檢測上行環(huán)形緩存區(qū)狀態(tài),判斷是否可以寫入,若是,進入步驟s1022,若否,進入步驟s1025;

步驟s1022,第二寫入模塊調(diào)用二級寫指針判斷實際可寫入的數(shù)據(jù)長度;

步驟s1023,第二寫入模塊調(diào)用ahb總線接口將數(shù)據(jù)寫入上行環(huán)形緩存區(qū),并同步更新二級寫指針的值;

步驟s1024,第二寫入模塊更新一級寫指針的值,使之與二級寫指針的值相等,結(jié)束;

步驟s1025,進入等待狀態(tài),等待超時時,返回實際寫入數(shù)據(jù)的長度為0。

步驟s103包括:

步驟s1031,上層端環(huán)形緩存區(qū)管理部件的第一讀取模塊調(diào)用二級讀指針檢測上行環(huán)形緩存區(qū)狀態(tài),判斷是否可以讀取,若是,進入步驟s1032,若否,進入步驟s1035;

步驟s1032,第一讀取模塊調(diào)用二級讀指針判斷實際可寫入的數(shù)據(jù)長度;

步驟s1033,第一讀取模塊調(diào)用midio接口將數(shù)據(jù)從上行環(huán)形緩存區(qū)中讀出,并同步更新二級讀指針的值;

步驟s1034,第一讀取模塊更新一級讀指針的值,使之與二級讀指針的值相等,結(jié)束;

步驟s1035,進入等待狀態(tài),等待超時時,返回實際讀取數(shù)據(jù)的長度為0。

參見圖3所示,基于msa協(xié)議的雙向通信系統(tǒng)的實現(xiàn)方法還包括以下步驟:

s201,上層端環(huán)形緩存區(qū)管理部件接收上層設(shè)備發(fā)送來的數(shù)據(jù)包;

s202,上層端環(huán)形緩存區(qū)管理部件的第一寫入模塊將接收的數(shù)據(jù)包寫入下行環(huán)形緩存區(qū);

s203,下層端環(huán)形緩存區(qū)管理部件的第二讀取模塊將可讀數(shù)據(jù)從下行環(huán)形緩存區(qū)中讀出。

本發(fā)明不局限于上述實施方式,對于本技術(shù)領(lǐng)域的普通技術(shù)人員來說,在不脫離本發(fā)明原理的前提下,還可以做出若干改進和潤飾,這些改進和潤飾也視為本發(fā)明的保護范圍之內(nèi)。本說明書中未作詳細描述的內(nèi)容屬于本領(lǐng)域?qū)I(yè)技術(shù)人員公知的現(xiàn)有技術(shù)。

當前第1頁1 2 
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1