本發(fā)明涉及電子通信領(lǐng)域,尤其涉及一種數(shù)據(jù)傳輸方法及裝置。
背景技術(shù):
電子設(shè)備中,芯片間和設(shè)備間一般采用各種通信接口協(xié)議,滿足芯片或設(shè)備之間的通信需求,通訊接口協(xié)議報文包括UART(Universal Asynchronous Receiver/Transmitter,通用異步收發(fā)傳輸器)、IIC(Inter-Integrated Circuit,集成電路總線)、CPRI(Common Public Radio Interface,通用公共無線電接口)等點(diǎn)對點(diǎn)方式,及SRIO(Serial Rapid I/O,高速互聯(lián)技術(shù))、GE(Gigabit Ethernet,千兆以太網(wǎng))、SPI(Serial Peripheral Interface,串行外設(shè)接口)等點(diǎn)對多點(diǎn)方式。
隨著電子設(shè)備的廣泛應(yīng)用,發(fā)展出了大量適應(yīng)不同場景和需求的通信接口協(xié)議;同一種接口協(xié)議報文只能承載在自己定義的物理層接口上。多種接口協(xié)議報文,必須利用各自的物理接口器件、交換芯片,完成數(shù)據(jù)傳輸。隨著電子設(shè)備的復(fù)雜度、集成度的提高,電子設(shè)備中芯片之間,以及設(shè)備之間需要交換的數(shù)據(jù)類型和格式增加非常迅速。從而導(dǎo)致芯片間和設(shè)備間接口越來越多,布線復(fù)雜度也相應(yīng)的增加。
如圖1所示,以常見的UART和GE為例,描述點(diǎn)對點(diǎn)和點(diǎn)對多點(diǎn)方式的連接方式:實(shí)體A和實(shí)體B之間的UART接口屬于點(diǎn)對點(diǎn)的連接方式;實(shí)體A、B、C之間使用GE接口,三者之間需要加GE的SW(switch,交換實(shí)體),對于只有 3個實(shí)體、2種接口存在時,已經(jīng)有非常復(fù)雜的連接和數(shù)據(jù)交換方式;當(dāng)電子設(shè)備復(fù)雜度增加時,設(shè)備之間的外部接口、設(shè)備內(nèi)部的芯片間內(nèi)部接口,數(shù)量和連接方式也隨之增加,從而增加設(shè)備間的外部接口和裝配方式的復(fù)雜度,以及對外部交換設(shè)備的需求,提升裝配和依賴設(shè)備的成本上升;電子設(shè)備內(nèi)部,芯片間交換芯片的需求,PCB的層數(shù)及信號線需求,電源、時鐘等額外器件的需求,從而增加設(shè)備設(shè)計復(fù)雜度,增加設(shè)備成本。
針對上述問題,提出一種可以降低連線復(fù)雜度的數(shù)據(jù)傳輸方法,是本領(lǐng)域技術(shù)人員亟待解決的技術(shù)問題。
技術(shù)實(shí)現(xiàn)要素:
本發(fā)明提供了一種數(shù)據(jù)傳輸方法及裝置,以解決現(xiàn)有數(shù)據(jù)傳輸因為接口協(xié)議不同導(dǎo)致的連線復(fù)雜的問題。
本發(fā)明提供了一種數(shù)據(jù)傳輸方法,其包括:
通過不同協(xié)議接口獲取待傳輸數(shù)據(jù)包;
根據(jù)待傳輸數(shù)據(jù)包的數(shù)據(jù)報文類型及數(shù)據(jù)包地址,按照混合交互報文的報文格式組建混合交換數(shù)據(jù)包;
發(fā)送混合交換數(shù)據(jù)包。
進(jìn)一步的,在獲取待傳輸數(shù)據(jù)包之前,還包括:接收不同協(xié)議接口發(fā)送的數(shù)據(jù)包發(fā)送請求,判斷各數(shù)據(jù)包發(fā)送請求是否滿足調(diào)度條件,獲取滿足調(diào)度條件的數(shù)據(jù)包發(fā)送請求對應(yīng)的待傳輸數(shù)據(jù)包。
進(jìn)一步的,判斷各數(shù)據(jù)包發(fā)送請求是否滿足調(diào)度條件包括:根據(jù)各數(shù)據(jù)包發(fā)送請求對應(yīng)的協(xié)議接口的調(diào)度優(yōu)先級,確定滿足調(diào)度要求的數(shù)據(jù)包發(fā)送請求, 將其作為滿足調(diào)度條件的數(shù)據(jù)包發(fā)送請求;調(diào)度優(yōu)先級包括絕對優(yōu)先級、輪詢優(yōu)先級及混合優(yōu)先級。
進(jìn)一步的,在組建混合交換數(shù)據(jù)包之前,還包括:判斷總線是否空閑,若空閑,則組建混合交換數(shù)據(jù)包,若不空閑,則等待至總線空閑。
進(jìn)一步的,按照混合交互報文的報文格式組建混合交換數(shù)據(jù)包包括:將待傳輸數(shù)據(jù)包添加到混合交換數(shù)據(jù)包的數(shù)據(jù)段,將數(shù)據(jù)報文類型及數(shù)據(jù)包地址添加到混合交換數(shù)據(jù)包的索引段,形成混合交換數(shù)據(jù)包;獲取發(fā)送待傳輸數(shù)據(jù)包的物理層接口類型,根據(jù)物理層接口類型對應(yīng)的編碼方式對混合交換數(shù)據(jù)包進(jìn)行物理層編碼。
進(jìn)一步的,根據(jù)物理層接口類型對應(yīng)的編碼方式對混合交換數(shù)據(jù)包進(jìn)行物理層編碼包括:當(dāng)物理層接口類型為串行接口編碼時,設(shè)置停止符為S.S,按照8B10B編碼的K碼形式編碼,數(shù)據(jù)部分按照8B10B數(shù)據(jù)部分進(jìn)行編碼;當(dāng)物理層接口類型為并行接口編碼時,根據(jù)物理層接口位寬確定擴(kuò)展次數(shù)M,設(shè)置停止符為K.K擴(kuò)展,停止符K.K連續(xù)擴(kuò)展M次,M≥1。
本發(fā)明提供了一種數(shù)據(jù)傳輸方法,其包括:
接收混合交換數(shù)據(jù)包;
解析混合交換數(shù)據(jù)包,獲取待傳輸數(shù)據(jù)包、及其數(shù)據(jù)報文類型及數(shù)據(jù)包地址;
傳輸待傳輸數(shù)據(jù)包。
進(jìn)一步的,解析混合交換數(shù)據(jù)包包括:獲取發(fā)送混合交換數(shù)據(jù)包的物理層接口類型,根據(jù)物理層接口類型對應(yīng)的解碼方式對混合交換數(shù)據(jù)包進(jìn)行物理層解碼;根據(jù)混合交換數(shù)據(jù)包報文格式,將混合交換數(shù)據(jù)包的數(shù)據(jù)段作為待傳輸 數(shù)據(jù)包,從混合交換數(shù)據(jù)包的索引段提取數(shù)據(jù)報文類型及數(shù)據(jù)包地址。
進(jìn)一步的,根據(jù)物理層接口類型對應(yīng)的解碼方式對混合交換數(shù)據(jù)包進(jìn)行物理層解碼包括:當(dāng)物理層接口類型為串行接口解碼時,查找停止符S.S,按照8B10B編碼的K碼形式解碼,數(shù)據(jù)部分按照8B10B數(shù)據(jù)部分進(jìn)行解碼;當(dāng)物理層接口類型為并行接口解碼時,根據(jù)物理層接口位寬確定擴(kuò)展次數(shù)M,停止符K.K連續(xù)擴(kuò)展M次,M≥1,判決停止符。
進(jìn)一步的,傳輸待傳輸數(shù)據(jù)包包括:根據(jù)解析出的數(shù)據(jù)包地址,查詢對應(yīng)的協(xié)議接口,將待傳輸數(shù)據(jù)包、及其數(shù)據(jù)報文類型及數(shù)據(jù)包地址傳輸?shù)綄?yīng)的協(xié)議接口。
進(jìn)一步的,根據(jù)解析出的數(shù)據(jù)包地址,查詢對應(yīng)的協(xié)議接口包括:根據(jù)數(shù)據(jù)包地址在所有協(xié)議接口列表內(nèi)進(jìn)行判決;當(dāng)屬于所有協(xié)議接口列表身份內(nèi)時,將數(shù)據(jù)報文分發(fā)給對應(yīng)協(xié)議接口;當(dāng)屬于廣播標(biāo)識時,廣播形式將數(shù)據(jù)報文分發(fā)給所有協(xié)議接口戶,并發(fā)送給級聯(lián)協(xié)議接口,進(jìn)行級聯(lián)轉(zhuǎn)發(fā);當(dāng)不屬于所有協(xié)議接口列表身份內(nèi)時,按照級聯(lián)協(xié)議接口,申請級聯(lián)發(fā)送。
本發(fā)明提供了一種數(shù)據(jù)傳輸方法,其包括:
通過不同協(xié)議接口獲取待傳輸數(shù)據(jù)包;
根據(jù)待傳輸數(shù)據(jù)包的數(shù)據(jù)報文類型及數(shù)據(jù)包地址,按照混合交互報文的報文格式組建混合交換數(shù)據(jù)包;
發(fā)送混合交換數(shù)據(jù)包;
接收混合交換數(shù)據(jù)包;
解析混合交換數(shù)據(jù)包,獲取待傳輸數(shù)據(jù)包、及其數(shù)據(jù)報文類型及數(shù)據(jù)包地 址;
傳輸待傳輸數(shù)據(jù)包。
本發(fā)明提供了一種數(shù)據(jù)傳輸裝置,其包括:
獲取模塊,用于通過不同協(xié)議接口獲取待傳輸數(shù)據(jù)包;
組建模塊,用于根據(jù)待傳輸數(shù)據(jù)包的數(shù)據(jù)報文類型及數(shù)據(jù)包地址,按照混合交互報文的報文格式組建混合交換數(shù)據(jù)包;
發(fā)送模塊,用于發(fā)送混合交換數(shù)據(jù)包。
進(jìn)一步的,獲取模塊在獲取待傳輸數(shù)據(jù)包之前,還用于接收不同協(xié)議接口發(fā)送的數(shù)據(jù)包發(fā)送請求,判斷各數(shù)據(jù)包發(fā)送請求是否滿足調(diào)度條件,獲取滿足調(diào)度條件的數(shù)據(jù)包發(fā)送請求對應(yīng)的待傳輸數(shù)據(jù)包。
進(jìn)一步的,獲取模塊用于根據(jù)各數(shù)據(jù)包發(fā)送請求對應(yīng)的協(xié)議接口的調(diào)度優(yōu)先級,確定滿足調(diào)度要求的數(shù)據(jù)包發(fā)送請求,將其作為滿足調(diào)度條件的數(shù)據(jù)包發(fā)送請求;調(diào)度優(yōu)先級包括絕對優(yōu)先級、輪詢優(yōu)先級及混合優(yōu)先級。
進(jìn)一步的,組建模塊在組建混合交換數(shù)據(jù)包之前,還用于判斷總線是否空閑,若空閑,則組建混合交換數(shù)據(jù)包,若不空閑,則等待至總線空閑。
進(jìn)一步的,組建模塊用于將待傳輸數(shù)據(jù)包添加到混合交換數(shù)據(jù)包的數(shù)據(jù)段,將數(shù)據(jù)報文類型及數(shù)據(jù)包地址添加到混合交換數(shù)據(jù)包的索引段,形成混合交換數(shù)據(jù)包;獲取發(fā)送待傳輸數(shù)據(jù)包的物理層接口類型,根據(jù)物理層接口類型對應(yīng)的解碼方式對混合交換數(shù)據(jù)包進(jìn)行物理層編碼。
進(jìn)一步的,組建模塊用于當(dāng)物理層接口類型為串行接口編碼時,設(shè)置停止符為S.S,按照8B10B編碼的K碼形式編碼,數(shù)據(jù)部分按照8B10B數(shù)據(jù)部分進(jìn)行 編碼;當(dāng)物理層接口類型為并行接口編碼時,根據(jù)物理層接口位寬確定擴(kuò)展次數(shù)M,設(shè)置停止符為K.K擴(kuò)展,停止符K.K連續(xù)擴(kuò)展M次,M≥1。
本發(fā)明提供了一種數(shù)據(jù)傳輸裝置,其包括:
接收模塊,用于接收混合交換數(shù)據(jù)包;
解析模塊,用于解析混合交換數(shù)據(jù)包,獲取待傳輸數(shù)據(jù)包、及其數(shù)據(jù)報文類型及數(shù)據(jù)包地址;
傳輸模塊,用于傳輸待傳輸數(shù)據(jù)包。
進(jìn)一步的,解析模塊用于獲取發(fā)送混合交換數(shù)據(jù)包的物理層接口類型,根據(jù)物理層接口類型對應(yīng)的解碼方式對混合交換數(shù)據(jù)包進(jìn)行物理層解碼;根據(jù)混合交換數(shù)據(jù)包報文格式,將混合交換數(shù)據(jù)包的數(shù)據(jù)段作為待傳輸數(shù)據(jù)包,從混合交換數(shù)據(jù)包的索引段提取數(shù)據(jù)報文類型及數(shù)據(jù)包地址。
進(jìn)一步的,解析模塊用于當(dāng)物理層接口類型為串行接口解碼時,查找停止符S.S,按照8B10B編碼的K碼形式解碼,數(shù)據(jù)部分按照8B10B數(shù)據(jù)部分進(jìn)行解碼;當(dāng)物理層接口類型為并行接口解碼時,根據(jù)物理層接口位寬確定擴(kuò)展次數(shù)M,停止符K.K連續(xù)擴(kuò)展M次,M≥1,判決停止符。
進(jìn)一步的,傳輸模塊用于根據(jù)解析出的數(shù)據(jù)包地址,查詢對應(yīng)的協(xié)議接口,將待傳輸數(shù)據(jù)包、及其數(shù)據(jù)報文類型及數(shù)據(jù)包地址傳輸?shù)綄?yīng)的協(xié)議接口。
進(jìn)一步的,傳輸模塊用于根據(jù)數(shù)據(jù)包地址在所有協(xié)議接口列表內(nèi)進(jìn)行判決;當(dāng)屬于所有協(xié)議接口列表身份內(nèi)時,將數(shù)據(jù)報文分發(fā)給對應(yīng)協(xié)議接口;當(dāng)屬于廣播標(biāo)識時,廣播形式將數(shù)據(jù)報文分發(fā)給所有協(xié)議接口戶,并發(fā)送給級聯(lián)協(xié)議接口,進(jìn)行級聯(lián)轉(zhuǎn)發(fā);當(dāng)不屬于所有協(xié)議接口列表身份內(nèi)時,按照級聯(lián)協(xié)議接口,申請級聯(lián)發(fā)送。
本發(fā)明提供了一種數(shù)據(jù)傳輸裝置,其包括:
獲取模塊,用于通過不同協(xié)議接口獲取待傳輸數(shù)據(jù)包;
組建模塊,用于根據(jù)待傳輸數(shù)據(jù)包的數(shù)據(jù)報文類型及數(shù)據(jù)包地址,按照混合交互報文的報文格式組建混合交換數(shù)據(jù)包;
發(fā)送模塊,用于發(fā)送混合交換數(shù)據(jù)包;
接收模塊,用于接收混合交換數(shù)據(jù)包;
解析模塊,用于解析混合交換數(shù)據(jù)包,獲取待傳輸數(shù)據(jù)包、及其數(shù)據(jù)報文類型及數(shù)據(jù)包地址;
傳輸模塊,用于傳輸待傳輸數(shù)據(jù)包。
本發(fā)明的有益效果:
本發(fā)明提供了一種數(shù)據(jù)傳輸方法,基于現(xiàn)有物理電氣接口,實(shí)現(xiàn)多種接口協(xié)議承載在同一物理層接口上,利用單一實(shí)體完成混合交換;本發(fā)明提供了HSD(Hybrid Switch Device,混合交換設(shè)備)支持的混合交換HSD報文格式,HSD報文負(fù)荷可攜帶任意長度和接口類型的數(shù)據(jù)包,確保不同速率、連接方式、類型的通信接口協(xié)議可承載在HSD報文格式上;通過HSD報文,可以實(shí)現(xiàn)不同通信接口協(xié)議的混合交換,實(shí)現(xiàn)多種接口協(xié)議承載在同一物理層接口上,從而降低設(shè)備復(fù)雜度與成本。
附圖說明
圖1為現(xiàn)有點(diǎn)對點(diǎn)通信連接示意圖;
圖2為本發(fā)明第一實(shí)施例提供的數(shù)據(jù)傳輸裝置的結(jié)構(gòu)示意圖;
圖3為本發(fā)明第二實(shí)施例提供的數(shù)據(jù)傳輸方法的流程圖;
圖4為本發(fā)明第三實(shí)施例提供的數(shù)據(jù)傳輸方法的流程圖;
圖5為本發(fā)明第三實(shí)施例中混合交換報文的格式示意圖;
圖6為本發(fā)明第三實(shí)施例中點(diǎn)對點(diǎn)通信連接示意圖;
圖7為本發(fā)明第三實(shí)施例中點(diǎn)對多點(diǎn)網(wǎng)狀通信連接示意圖;
圖8為本發(fā)明第三實(shí)施例中點(diǎn)對多點(diǎn)級聯(lián)通信連接示意圖;
圖9為本發(fā)明第三實(shí)施例中混合交換通信系統(tǒng)的結(jié)構(gòu)示意圖。
具體實(shí)施方式
現(xiàn)通過具體實(shí)施方式結(jié)合附圖的方式對本發(fā)明做出進(jìn)一步的詮釋說明。
第一實(shí)施例:
圖2為本發(fā)明第一實(shí)施例提供的數(shù)據(jù)傳輸裝置的結(jié)構(gòu)示意圖,由圖2可知,在本實(shí)施例中,本發(fā)明提供的數(shù)據(jù)傳輸裝置2包括:
獲取模塊21,用于通過不同協(xié)議接口獲取待傳輸數(shù)據(jù)包;
組建模塊22,用于根據(jù)待傳輸數(shù)據(jù)包的數(shù)據(jù)報文類型及數(shù)據(jù)包地址,按照混合交互報文的報文格式組建混合交換數(shù)據(jù)包;
發(fā)送模塊23,用于發(fā)送混合交換數(shù)據(jù)包;
接收模塊24,用于接收混合交換數(shù)據(jù)包;
解析模塊25,用于解析混合交換數(shù)據(jù)包,獲取待傳輸數(shù)據(jù)包、及其數(shù)據(jù)報文類型及數(shù)據(jù)包地址;
傳輸模塊26,用于傳輸待傳輸數(shù)據(jù)包。
在實(shí)際應(yīng)用中,本發(fā)明提供的數(shù)據(jù)傳輸裝置2可以僅包括:
獲取模塊21,用于通過不同協(xié)議接口獲取待傳輸數(shù)據(jù)包;
組建模塊22,用于根據(jù)待傳輸數(shù)據(jù)包的數(shù)據(jù)報文類型及數(shù)據(jù)包地址,按照混合交互報文的報文格式組建混合交換數(shù)據(jù)包;
發(fā)送模塊23,用于發(fā)送混合交換數(shù)據(jù)包;可以完成數(shù)據(jù)包的發(fā)送。
在一些實(shí)施例中,上述實(shí)施例中的獲取模塊21在獲取待傳輸數(shù)據(jù)包之前,還用于接收不同協(xié)議接口發(fā)送的數(shù)據(jù)包發(fā)送請求,判斷各數(shù)據(jù)包發(fā)送請求是否滿足調(diào)度條件,獲取滿足調(diào)度條件的數(shù)據(jù)包發(fā)送請求對應(yīng)的待傳輸數(shù)據(jù)包。
在一些實(shí)施例中,上述實(shí)施例中的獲取模塊21用于根據(jù)各數(shù)據(jù)包發(fā)送請求對應(yīng)的協(xié)議接口的調(diào)度優(yōu)先級,確定滿足調(diào)度要求的數(shù)據(jù)包發(fā)送請求,將其作為滿足調(diào)度條件的數(shù)據(jù)包發(fā)送請求;所述調(diào)度優(yōu)先級包括絕對優(yōu)先級、輪詢優(yōu)先級及混合優(yōu)先級。
在一些實(shí)施例中,上述實(shí)施例中的組建模塊22在組建混合交換數(shù)據(jù)包之前,還用于判斷總線是否空閑,若空閑,則組建混合交換數(shù)據(jù)包,若不空閑,則等待至總線空閑。
在一些實(shí)施例中,上述實(shí)施例中的組建模塊22用于將待傳輸數(shù)據(jù)包添加到混合交換數(shù)據(jù)包的數(shù)據(jù)段,將數(shù)據(jù)報文類型及數(shù)據(jù)包地址添加到混合交換數(shù)據(jù)包的索引段,形成混合交換數(shù)據(jù)包;獲取發(fā)送待傳輸數(shù)據(jù)包的物理層接口類型,根據(jù)物理層接口類型對應(yīng)的編碼方式對混合交換數(shù)據(jù)包進(jìn)行物理層編碼。
在一些實(shí)施例中,上述實(shí)施例中的組建模塊22具體用于當(dāng)物理層接口類型為串行接口編碼時,設(shè)置停止符為S.S,按照8B10B編碼的K碼形式編碼,數(shù)據(jù)部分按照8B10B數(shù)據(jù)部分進(jìn)行編碼;當(dāng)物理層接口類型為并行接口編碼時,根 據(jù)物理層接口位寬確定擴(kuò)展次數(shù)M,設(shè)置停止符為K.K擴(kuò)展,停止符K.K連續(xù)擴(kuò)展M次,M≥1。
在實(shí)際應(yīng)用中,本發(fā)明提供的數(shù)據(jù)傳輸裝置2可以僅包括:
接收模塊24,用于接收混合交換數(shù)據(jù)包;
解析模塊25,用于解析混合交換數(shù)據(jù)包,獲取待傳輸數(shù)據(jù)包、及其數(shù)據(jù)報文類型及數(shù)據(jù)包地址;
傳輸模塊26,用于傳輸待傳輸數(shù)據(jù)包;完成數(shù)據(jù)包的傳輸即可。
在一些實(shí)施例中,上述實(shí)施例中的傳輸模塊26用于根據(jù)解析出的數(shù)據(jù)包地址,查詢對應(yīng)的協(xié)議接口,將待傳輸數(shù)據(jù)包、及其數(shù)據(jù)報文類型及數(shù)據(jù)包地址傳輸?shù)綄?yīng)的協(xié)議接口。
在一些實(shí)施例中,上述實(shí)施例中的傳輸模塊26用于根據(jù)所述數(shù)據(jù)包地址在所有協(xié)議接口列表內(nèi)進(jìn)行判決;當(dāng)屬于所述所有協(xié)議接口列表身份內(nèi)時,將數(shù)據(jù)報文分發(fā)給對應(yīng)協(xié)議接口;當(dāng)屬于廣播標(biāo)識時,廣播形式將數(shù)據(jù)報文分發(fā)給所有協(xié)議接口戶,并發(fā)送給級聯(lián)協(xié)議接口,進(jìn)行級聯(lián)轉(zhuǎn)發(fā);當(dāng)不屬于所述所有協(xié)議接口列表身份內(nèi)時,按照級聯(lián)協(xié)議接口,申請級聯(lián)發(fā)送。
在一些實(shí)施例中,上述實(shí)施例中的解析模塊25用于獲取發(fā)送混合交換數(shù)據(jù)包的物理層接口類型,根據(jù)物理層接口類型對應(yīng)的解碼方式對混合交換數(shù)據(jù)包進(jìn)行物理層解碼;根據(jù)混合交換數(shù)據(jù)包報文格式,將混合交換數(shù)據(jù)包的數(shù)據(jù)段作為待傳輸數(shù)據(jù)包,從混合交換數(shù)據(jù)包的索引段提取數(shù)據(jù)報文類型及數(shù)據(jù)包地址。
在一些實(shí)施例中,上述實(shí)施例中的解析模塊25用于當(dāng)物理層接口類型為串行接口解碼時,查找停止符S.S,按照8B10B編碼的K碼形式解碼,數(shù)據(jù)部分按 照8B10B數(shù)據(jù)部分進(jìn)行解碼;當(dāng)物理層接口類型為并行接口解碼時,根據(jù)物理層接口位寬確定擴(kuò)展次數(shù)M,停止符K.K連續(xù)擴(kuò)展M次,M≥1,判決停止符。
第二實(shí)施例:
圖3為本發(fā)明第二實(shí)施例提供的數(shù)據(jù)傳輸方法的流程圖,由圖3可知,在本實(shí)施例中,本發(fā)明提供的數(shù)據(jù)傳輸方法包括以下步驟:
S301:通過不同協(xié)議接口獲取待傳輸數(shù)據(jù)包;根據(jù)待傳輸數(shù)據(jù)包的數(shù)據(jù)報文類型及數(shù)據(jù)包地址,按照混合交互報文的報文格式組建混合交換數(shù)據(jù)包;發(fā)送混合交換數(shù)據(jù)包;
S302:接收混合交換數(shù)據(jù)包;解析混合交換數(shù)據(jù)包,獲取待傳輸數(shù)據(jù)包、及其數(shù)據(jù)報文類型及數(shù)據(jù)包地址;傳輸待傳輸數(shù)據(jù)包。
在一些實(shí)施例中,本發(fā)明提供的數(shù)據(jù)傳輸方法在發(fā)送端的體現(xiàn)包括:
通過不同協(xié)議接口獲取待傳輸數(shù)據(jù)包;
根據(jù)待傳輸數(shù)據(jù)包的數(shù)據(jù)報文類型及數(shù)據(jù)包地址,按照混合交互報文的報文格式組建混合交換數(shù)據(jù)包;
發(fā)送混合交換數(shù)據(jù)包。
在一些實(shí)施例中,上述實(shí)施例中的方法在獲取待傳輸數(shù)據(jù)包之前,還包括:接收不同協(xié)議接口發(fā)送的數(shù)據(jù)包發(fā)送請求,判斷各數(shù)據(jù)包發(fā)送請求是否滿足調(diào)度條件,獲取滿足調(diào)度條件的數(shù)據(jù)包發(fā)送請求對應(yīng)的待傳輸數(shù)據(jù)包。
在一些實(shí)施例中,上述實(shí)施例中的判斷各數(shù)據(jù)包發(fā)送請求是否滿足調(diào)度條件包括:根據(jù)各數(shù)據(jù)包發(fā)送請求對應(yīng)的協(xié)議接口的調(diào)度優(yōu)先級,確定滿足調(diào)度要求的數(shù)據(jù)包發(fā)送請求,將其作為滿足調(diào)度條件的數(shù)據(jù)包發(fā)送請求;所述調(diào)度 優(yōu)先級包括絕對優(yōu)先級、輪詢優(yōu)先級及混合優(yōu)先級。
在一些實(shí)施例中,上述實(shí)施例中的方法在組建混合交換數(shù)據(jù)包之前,還包括:判斷總線是否空閑,若空閑,則組建混合交換數(shù)據(jù)包,若不空閑,則等待至總線空閑。
在一些實(shí)施例中,上述實(shí)施例中的按照混合交互報文的報文格式組建混合交換數(shù)據(jù)包包括:將待傳輸數(shù)據(jù)包添加到混合交換數(shù)據(jù)包的數(shù)據(jù)段,將數(shù)據(jù)報文類型及數(shù)據(jù)包地址添加到混合交換數(shù)據(jù)包的索引段,形成混合交換數(shù)據(jù)包;獲取發(fā)送待傳輸數(shù)據(jù)包的物理層接口類型,根據(jù)物理層接口類型對應(yīng)的編碼方式對混合交換數(shù)據(jù)包進(jìn)行物理層編碼。
在一些實(shí)施例中,上述實(shí)施例中的根據(jù)物理層接口類型對應(yīng)的編碼方式對混合交換數(shù)據(jù)包進(jìn)行物理層編碼包括:當(dāng)物理層接口類型為串行接口編碼時,設(shè)置停止符為S.S,按照8B10B編碼的K碼形式編碼,數(shù)據(jù)部分按照8B10B數(shù)據(jù)部分進(jìn)行編碼;當(dāng)物理層接口類型為并行接口編碼時,根據(jù)物理層接口位寬確定擴(kuò)展次數(shù)M,設(shè)置停止符為K.K擴(kuò)展,停止符K.K連續(xù)擴(kuò)展M次,M≥1。
在一些實(shí)施例中,本發(fā)明提供的數(shù)據(jù)傳輸方法在接收端的體現(xiàn)包括:
接收混合交換數(shù)據(jù)包;
解析混合交換數(shù)據(jù)包,獲取待傳輸數(shù)據(jù)包、及其數(shù)據(jù)報文類型及數(shù)據(jù)包地址;
傳輸待傳輸數(shù)據(jù)包。
在一些實(shí)施例中,上述實(shí)施例中的傳輸待傳輸數(shù)據(jù)包包括:根據(jù)解析出的數(shù)據(jù)包地址,查詢對應(yīng)的協(xié)議接口,將待傳輸數(shù)據(jù)包、及其數(shù)據(jù)報文類型及數(shù)據(jù)包地址傳輸?shù)綄?yīng)的協(xié)議接口。
在一些實(shí)施例中,上述實(shí)施例中的所述根據(jù)解析出的數(shù)據(jù)包地址,查詢對應(yīng)的協(xié)議接口包括:根據(jù)所述數(shù)據(jù)包地址在所有協(xié)議接口列表內(nèi)進(jìn)行判決;當(dāng)屬于所述所有協(xié)議接口列表身份內(nèi)時,將數(shù)據(jù)報文分發(fā)給對應(yīng)協(xié)議接口;當(dāng)屬于廣播標(biāo)識時,廣播形式將數(shù)據(jù)報文分發(fā)給所有協(xié)議接口戶,并發(fā)送給級聯(lián)協(xié)議接口,進(jìn)行級聯(lián)轉(zhuǎn)發(fā);當(dāng)不屬于所述所有協(xié)議接口列表身份內(nèi)時,按照級聯(lián)協(xié)議接口,申請級聯(lián)發(fā)送。
在一些實(shí)施例中,上述實(shí)施例中的解析混合交換數(shù)據(jù)包包括:獲取發(fā)送混合交換數(shù)據(jù)包的物理層接口類型,根據(jù)物理層接口類型對應(yīng)的解碼方式對混合交換數(shù)據(jù)包進(jìn)行物理層解碼;根據(jù)混合交換數(shù)據(jù)包報文格式,將混合交換數(shù)據(jù)包的數(shù)據(jù)段作為待傳輸數(shù)據(jù)包,從混合交換數(shù)據(jù)包的索引段提取數(shù)據(jù)報文類型及數(shù)據(jù)包地址。
在一些實(shí)施例中,上述實(shí)施例中的根據(jù)物理層接口類型對應(yīng)的解碼方式對混合交換數(shù)據(jù)包進(jìn)行物理層解碼包括:當(dāng)物理層接口類型為串行接口解碼時,查找停止符S.S,按照8B10B編碼的K碼形式解碼,數(shù)據(jù)部分按照8B10B數(shù)據(jù)部分進(jìn)行解碼;當(dāng)物理層接口類型為并行接口解碼時,根據(jù)物理層接口位寬確定擴(kuò)展次數(shù)M,停止符K.K連續(xù)擴(kuò)展M次,M≥1,判決停止符。
本發(fā)明提供了一種數(shù)據(jù)傳輸方法,其包括:
通過不同協(xié)議接口獲取待傳輸數(shù)據(jù)包;
根據(jù)待傳輸數(shù)據(jù)包的數(shù)據(jù)報文類型及數(shù)據(jù)包地址,按照混合交互報文的報文格式組建混合交換數(shù)據(jù)包;
發(fā)送混合交換數(shù)據(jù)包;
接收混合交換數(shù)據(jù)包;
解析混合交換數(shù)據(jù)包,獲取待傳輸數(shù)據(jù)包、及其數(shù)據(jù)報文類型及數(shù)據(jù)包地址;
傳輸待傳輸數(shù)據(jù)包。
現(xiàn)結(jié)合具體應(yīng)用場景對本發(fā)明做進(jìn)一步的詮釋說明。
第三實(shí)施例:
本發(fā)明提供一種,基于現(xiàn)有物理電氣接口,實(shí)現(xiàn)多種接口協(xié)議承載在同一物理層接口上,利用單一實(shí)體完成不同協(xié)議接口發(fā)送數(shù)據(jù)包的混合交換,本上面提供了一種HSD報文格式,HSD報文負(fù)荷可攜帶任意長度和接口類型的數(shù)據(jù)包,確保不同速率、連接方式、類型的通信接口協(xié)議可承載在HSD報文格式上;支持不同協(xié)議的用戶(本申請所涉及的用戶是指不同接口協(xié)議的接口),申請發(fā)送數(shù)據(jù)請求,提出絕對優(yōu)先級、輪詢優(yōu)先級、混合優(yōu)先級三種仲裁調(diào)度方法,用于響應(yīng)用戶的發(fā)送請求;并基于現(xiàn)有物理電氣接口,提出兩種針對串行和并行的物理層編碼方法。通過HSD報文,可以實(shí)現(xiàn)不同通信接口協(xié)議的混合交換,實(shí)現(xiàn)多種接口協(xié)議承載在同一物理層接口上,從而降低設(shè)備復(fù)雜度與成本。
HSD報文結(jié)構(gòu)如圖5所示,并以16bit示意,具體數(shù)據(jù)寬度可變:
K.K:表示結(jié)束符,用特殊字段表示以降低誤判概率,如0x5A5A。并行連接方式時,可用特殊字符表示。串行連接方式時,可以對數(shù)據(jù)進(jìn)行8B10B編碼,結(jié)束符適應(yīng)某種K碼編碼,如K28.5、K28.7等。
S.S:表示起始符,用特殊字段標(biāo)記以降低誤判概率,如0xA5A5。
X:表示負(fù)載的通信接口協(xié)議數(shù)據(jù)包類型,如0x01:UART的數(shù)據(jù);0x02:GE的MAC報文;0x03:SRIO報文等。
Y:表示目的設(shè)備ID號,0x00:廣播;0x01:設(shè)備編號1,依次類推。
D.D:表示數(shù)據(jù)負(fù)載,長度任意可變。并行連接方式時,直接使用數(shù)據(jù)。串行連接方式時,可對數(shù)據(jù)進(jìn)行8B10B編碼。
如圖4所示,本發(fā)明的數(shù)據(jù)傳輸方法包括發(fā)送和接收兩部分。其中,發(fā)送部分主要根據(jù)使用不同協(xié)議的用戶發(fā)包請求,總線的忙閑狀態(tài)調(diào)度用戶發(fā)包。將不同的用戶數(shù)據(jù)包封裝到自定義的HSD報文負(fù)荷中,并增加身份信息、地址信息、報文類型等信息;再根據(jù)物理層接口的類型,進(jìn)行不同的物理層編碼后,將HSD報文發(fā)送出去。接收部分根據(jù)物理層接口類型,接收到物理層數(shù)據(jù)后,對應(yīng)具體的物理層編碼方法解碼;按照HSD報文結(jié)構(gòu),拆解出數(shù)據(jù)包類型、設(shè)備身份ID、用戶數(shù)據(jù)包,再按照用戶狀態(tài)分發(fā)給對應(yīng)用戶;如果是設(shè)備身份ID不在用戶列表內(nèi)則為級聯(lián)類型,將解析出的信息,發(fā)送給級聯(lián)用戶進(jìn)行發(fā)送處理。
具體的,包括以下步驟:
S401:用戶發(fā)送數(shù)據(jù)包發(fā)送請求。
用戶可以是支持UART、GE、SRIO等任何接口協(xié)議的模塊實(shí)體,存在發(fā)送數(shù)據(jù)需求時,發(fā)送數(shù)據(jù)包發(fā)送請求。
S402:進(jìn)行數(shù)據(jù)包發(fā)送請求仲裁。
根據(jù)不同用戶的發(fā)送請求,根據(jù)不同優(yōu)先級進(jìn)行仲裁;滿足調(diào)度條件的,響應(yīng)其需求,讀取用戶發(fā)送的完整數(shù)據(jù)包。仲裁可按照下述方法進(jìn)行:
仲裁方法a:絕對優(yōu)先級,賦予不同用戶不同等級的優(yōu)先級,按照最高到最低的優(yōu)先級進(jìn)行調(diào)度。
仲裁方法b:輪詢優(yōu)先級,賦予所有用戶相同的優(yōu)先級,按照順序依次循環(huán)調(diào)度所有的用戶發(fā)包請求。
仲裁方法c:混合優(yōu)先級,賦予部分用戶相同的輪詢優(yōu)先級,部分用戶絕對的優(yōu)先級,先按照絕對優(yōu)先級由高到低依次調(diào)度絕對優(yōu)先級用戶,再按照順序依次原則循環(huán)調(diào)度方式調(diào)度輪詢優(yōu)先級用戶。
S403:總線空閑時,HSD組建報文。
根據(jù)仲裁結(jié)果,讀取到用戶的數(shù)據(jù)包后,進(jìn)行總線空閑判決。如總線空閑則開始HSD組建報文,否則繼續(xù)等待。
獲取用戶的數(shù)據(jù)包后,根據(jù)數(shù)據(jù)報文類型和用戶地址,按照HSD報文格式進(jìn)行組件報文處理。如SRIO數(shù)據(jù)包,填充數(shù)據(jù)包類型X=0x05;填充設(shè)備身份ID號Y=0x05(自定義);起始符K.K;停止符S.S;
S404:接口類型查詢,進(jìn)行物理層編碼及發(fā)送。
查詢物理層接口類型。如光口、GMII、SPI等任何現(xiàn)有形式接口,按照獲取的物理層接口類型,進(jìn)行物理層編碼,用于滿足物理層發(fā)送需求。根據(jù)接口類型,可使用下述方法進(jìn)行編碼:
串行接口編碼:串行接口的停止符S.S,按照8B10B編碼的K碼行形式編碼,數(shù)據(jù)部分按照8B10B數(shù)據(jù)部分進(jìn)行編碼。確??梢詼?zhǔn)確的找到HSD報文。
并行接口編碼:根據(jù)物理層接口位寬,停止符K.K進(jìn)行擴(kuò)展,停止符擴(kuò)展為連續(xù)M次(M>=1),如8比特,M=4,即連續(xù)4次停止符0x5A表示停止符,用于與數(shù)據(jù)區(qū)分開,誤判概率為1/(2^32-1)。
將編號好的數(shù)據(jù)物理層報文,按照物理層接口的形式,發(fā)送出去。
S405:物理層接收HSD報文。
按照物理層接口的形式,接收物理層編碼數(shù)據(jù)。
S406:物理層接口類型查詢,HSD報文解碼。
查詢物理層接口類型,如光口、GMII、SPI等任何現(xiàn)有形式接口;根據(jù)查詢物理層接口類型,可使用對應(yīng)的方法進(jìn)行解碼:
串行接口解碼:按照S404對應(yīng)的串行接口方式解碼,停止符S.S,按照8B10B編碼的K碼形式解碼,數(shù)據(jù)部分按照8B10B數(shù)據(jù)部分進(jìn)行解碼。
并行接口解碼:按照S404對應(yīng)的并行接口方式解碼,停止符K.K進(jìn)行擴(kuò)展次數(shù)M,判決停止符。
按照HSD報文格式,對接收到的報文進(jìn)行解析。獲取出用戶數(shù)據(jù)報文類型、設(shè)備身份ID、用戶數(shù)據(jù)包。
S407:數(shù)據(jù)報文分發(fā)。
根據(jù)解析出的身份ID,查詢用戶狀態(tài),并將用戶數(shù)據(jù)報文類型、設(shè)備身份ID、用戶數(shù)據(jù)包分發(fā)給對應(yīng)用戶。在解析出的身份ID在所有用戶列表空間內(nèi),進(jìn)行判決。
屬于身份ID空間內(nèi):將數(shù)據(jù)報文分發(fā)給對應(yīng)用戶,用于點(diǎn)對點(diǎn)數(shù)據(jù)傳輸。
廣播ID:廣播形式將數(shù)據(jù)報文分發(fā)給所有用戶,并發(fā)送給級聯(lián)用戶,進(jìn)行級聯(lián)轉(zhuǎn)發(fā),用于網(wǎng)狀網(wǎng)絡(luò)傳輸。
不屬于身份ID空間內(nèi):按照級聯(lián)用戶,申請級聯(lián)發(fā)送,用于支持級聯(lián)模式,支持級聯(lián)數(shù)據(jù)傳輸。
用戶協(xié)議接口接收,用戶根據(jù)分發(fā)模塊分發(fā)的數(shù)據(jù)報文、數(shù)據(jù)類型和身份 ID,驗證并接收數(shù)據(jù),完成數(shù)據(jù)傳輸。
根據(jù)本發(fā)明的HSD報文結(jié)構(gòu)、混合交換方法流程,可支持點(diǎn)對點(diǎn)、點(diǎn)對多點(diǎn)、級聯(lián)等多種網(wǎng)絡(luò)的連接方式。具體的,點(diǎn)對點(diǎn)的直連方式,參考附圖6,點(diǎn)對多點(diǎn)的網(wǎng)狀連接方式,參考附圖7,點(diǎn)對多點(diǎn)的級聯(lián)連接方式,參考附圖8。
本發(fā)明的裝置和方法,可降低電子設(shè)備內(nèi)部交換芯片需求、簡化布線復(fù)雜度;簡化電子設(shè)備間外部接口數(shù)量、降低交換設(shè)備依賴;提升電子設(shè)備間外部接口開放性和連接的靈活性。從而降低設(shè)備復(fù)雜度和成本。結(jié)合的HSD報文結(jié)構(gòu)、混合交換流程,可支持點(diǎn)對點(diǎn)、點(diǎn)對多點(diǎn)、級聯(lián)等多種靈活的網(wǎng)絡(luò)連接方式。本發(fā)明的方法,可適用于電子設(shè)備內(nèi)部及設(shè)備間等多種場景,用于實(shí)現(xiàn)數(shù)據(jù)連接、數(shù)據(jù)交換等多種功能。
場景1:
對于電子設(shè)備內(nèi)部和電子設(shè)備之間,可適用低速和高速多種場景,簡化連接方式,降低各種交換設(shè)備的需求。
如圖9所示,描述了本發(fā)明將低速和高速接口混合交換,靈活的網(wǎng)絡(luò)連接方式,在實(shí)現(xiàn)不同電子設(shè)備或芯片實(shí)體之間復(fù)雜的數(shù)據(jù)交換同時,降低布線資源和交換芯片的需求,具體的如:
通路1:實(shí)體A與實(shí)體B之間,利用低速的并行或串行走線,實(shí)現(xiàn)低速的UART和SPI等多種數(shù)據(jù)接口,提供多種數(shù)據(jù)格式的數(shù)據(jù)交換。
通路2:實(shí)體C與實(shí)體D之間,通過帶高速串行SERDES交換功能的HSD交換,將低速的UART數(shù)據(jù)承載在高速數(shù)據(jù)走線上,實(shí)現(xiàn)低速的UART數(shù)據(jù)交換。
通路3:實(shí)體B與實(shí)體D之間的高速SRIO接口,實(shí)體C與實(shí)體D之間的高速GE接口,通過高速的HSD交換,將2種數(shù)據(jù)承載到1路數(shù)據(jù)交換上,實(shí)現(xiàn)多 種高速協(xié)議的靈活交換。
通路4:實(shí)體A與實(shí)體C之間,通過HSD串行級聯(lián)和網(wǎng)狀交換,實(shí)現(xiàn)無直接連接的UART數(shù)據(jù)交換。
通路5:實(shí)體B與實(shí)體E之間,通過HSD網(wǎng)狀交換和串行級聯(lián),實(shí)現(xiàn)無直接連接的高速SRIO數(shù)據(jù)交換。
場景2:
對于電子設(shè)備之間,基于靈活的混合交換方式,可靈活的級聯(lián)不同設(shè)備。在不改變設(shè)備外部結(jié)構(gòu),不新增交換設(shè)備,支持新的數(shù)據(jù)類型交換和設(shè)備連接。
參考附圖9,描述了電子設(shè)備實(shí)體外部接口固定,在不改變電子設(shè)備外部接口的情況下,支持任意設(shè)備的連接,且不改變內(nèi)部接口協(xié)議類型,具體的如:
通道1:實(shí)體A與實(shí)體D之間的虛線連接,不改變其外部接口,兩者之間的新增的SPI,且不用將SPI數(shù)據(jù)轉(zhuǎn)換為已有的GE協(xié)議進(jìn)行轉(zhuǎn)接。
通道2:實(shí)體C與實(shí)體D之間的虛線連接,不改變其外部接口,兩者之間的新增的高速接口GE,且不用將GE數(shù)據(jù)轉(zhuǎn)換為已有的SRIO協(xié)議進(jìn)行轉(zhuǎn)接。
通道3:實(shí)體B與實(shí)體D之間,不改變其網(wǎng)絡(luò)連接方式,兩者之間的新增的高速接口GE,可直接進(jìn)行數(shù)據(jù)交換。
場景3:
對于電子設(shè)備內(nèi)部和電子設(shè)備之間,可利用混合交換功能的交換裝置,支持多種通信接口協(xié)議的交換,從而降低不同交換實(shí)體的需求,且靈活擴(kuò)展靈活度,降低布線負(fù)責(zé)度。
參考附圖9,僅靠單一的HSD SW交換實(shí)體,即可同時支持SRIO、GE、SPI、 UART等多種接口協(xié)議的數(shù)據(jù)交換,降低了各種接口之間的交換布線資源;減少了GE和SRIO等多種交換設(shè)備的需求。
綜上可知,通過本發(fā)明的實(shí)施,至少存在以下有益效果:
本發(fā)明提供了一種數(shù)據(jù)傳輸方法,基于現(xiàn)有物理電氣接口,實(shí)現(xiàn)多種接口協(xié)議承載在同一物理層接口上,利用單一實(shí)體完成混合交換;本發(fā)明提供了HSD支持的混合交換HSD報文格式,HSD報文負(fù)荷可攜帶任意長度和接口類型的數(shù)據(jù)包,確保不同速率、連接方式、類型的通信接口協(xié)議可承載在HSD報文格式上;通過HSD報文,可以實(shí)現(xiàn)不同通信接口協(xié)議的混合交換,實(shí)現(xiàn)多種接口協(xié)議承載在同一物理層接口上,從而降低設(shè)備復(fù)雜度與成本。
以上僅是本發(fā)明的具體實(shí)施方式而已,并非對本發(fā)明做任何形式上的限制,凡是依據(jù)本發(fā)明的技術(shù)實(shí)質(zhì)對以上實(shí)施方式所做的任意簡單修改、等同變化、結(jié)合或修飾,均仍屬于本發(fā)明技術(shù)方案的保護(hù)范圍。