一種嵌入式系統(tǒng)中高可靠多機(jī)通信架構(gòu)方法
【專(zhuān)利摘要】本發(fā)明公開(kāi)了一種嵌入式系統(tǒng)中高可靠多機(jī)通信架構(gòu)方法,a.將通信分層設(shè)計(jì),從下層到上層依次為硬件層、通信層和協(xié)議層,每一層向上一層提供服務(wù),并利用下一層的服務(wù);b.緩沖機(jī)制設(shè)計(jì),在通信層的各通信口都應(yīng)當(dāng)設(shè)置緩沖區(qū);c.錯(cuò)誤檢測(cè)機(jī)制設(shè)計(jì),錯(cuò)誤檢測(cè)分硬件和軟件兩級(jí)進(jìn)行;d.虛擬通道與狀態(tài)設(shè)計(jì),在多接口嵌入式處理器設(shè)置虛擬通道進(jìn)行工作模式轉(zhuǎn)換,工作狀態(tài)的轉(zhuǎn)換由相應(yīng)通信口的輸入數(shù)據(jù)來(lái)完成。與現(xiàn)有技術(shù)相比,本發(fā)明給出了在通信復(fù)雜的嵌入式系統(tǒng)中多機(jī)通信的架構(gòu)和設(shè)計(jì)方法,根據(jù)該架構(gòu)可大大降低系統(tǒng)通信設(shè)計(jì)的復(fù)雜度同時(shí)提高系統(tǒng)的可靠性,此外還具有較高的可擴(kuò)展性。
【專(zhuān)利說(shuō)明】一種嵌入式系統(tǒng)中高可靠多機(jī)通信架構(gòu)方法
【技術(shù)領(lǐng)域】
[0001] 本發(fā)明涉及通信領(lǐng)域,尤其涉及一種嵌入式系統(tǒng)中高可靠多機(jī)通信架構(gòu)方法。
【背景技術(shù)】
[0002] 目前在復(fù)雜嵌入式系統(tǒng)中系統(tǒng)通信無(wú)統(tǒng)一架構(gòu),在系統(tǒng)設(shè)計(jì)時(shí)大多將單機(jī)與單機(jī) 直接相連來(lái)實(shí)現(xiàn)數(shù)據(jù)交互,隨著單機(jī)的增多和通信數(shù)據(jù)格式的多樣化,這種架構(gòu)已不能滿 足嵌入式應(yīng)用高可靠和高實(shí)時(shí)性的需求。本文提出一種嵌入式系統(tǒng)中高可靠的多機(jī)通信架 構(gòu),該架構(gòu)能夠很好地處理多個(gè)單機(jī)間的復(fù)雜協(xié)議通信問(wèn)題。在傳統(tǒng)多機(jī)通信在系統(tǒng)通信 復(fù)雜時(shí)存在以下問(wèn)題:(a)通信物理線路復(fù)雜,在通信的單機(jī)間都需要一條物理線路;(b) 單機(jī)間接口較多導(dǎo)致通信協(xié)議復(fù)雜;(c)新增單機(jī)時(shí)需要修改較多硬件和通信協(xié)議,可擴(kuò) 展性不好;(d)數(shù)據(jù)處理復(fù)雜實(shí)時(shí)性不高;(e)錯(cuò)誤檢測(cè)機(jī)制不健全可靠性不高。
【發(fā)明內(nèi)容】
[0003] 本發(fā)明的目的就在于提供一種解決了上述問(wèn)題的嵌入式系統(tǒng)中高可靠多機(jī)通信 架構(gòu)方法。
[0004] 為了實(shí)現(xiàn)上述目的,本發(fā)明采用的技術(shù)方案是:一種嵌入式系統(tǒng)中高可靠多機(jī)通 信架構(gòu)方法,
[0005] a.將通信分層設(shè)計(jì),所述通信層分為三層,從下層到上層依次為硬件層、通信層和 協(xié)議層,每一層向上一層提供服務(wù),并利用下一層的服務(wù);
[0006] 硬件層進(jìn)行底層硬件處理工作,負(fù)責(zé)處理相應(yīng)電信號(hào)轉(zhuǎn)換,硬件信號(hào)錯(cuò)誤檢測(cè);
[0007] 通信層采用多接口嵌入式處理器計(jì)算通信數(shù)據(jù)和轉(zhuǎn)發(fā)多個(gè)通信口的數(shù)據(jù),負(fù)責(zé)將 底層物理接口進(jìn)行封裝成統(tǒng)一軟件接口,處理數(shù)據(jù)的發(fā)送和接收,并為協(xié)議層提供數(shù)據(jù);
[0008] 協(xié)議層負(fù)責(zé)將通信數(shù)據(jù)按照相應(yīng)的格式進(jìn)行封裝和解析;
[0009] b.緩沖機(jī)制設(shè)計(jì),在通信層的各通信口都應(yīng)當(dāng)設(shè)置緩沖區(qū),在數(shù)據(jù)未被處理之前 都存儲(chǔ)在緩沖區(qū)中,待處理器有時(shí)間時(shí)再來(lái)處理該數(shù)據(jù);
[0010] C.錯(cuò)誤檢測(cè)機(jī)制設(shè)計(jì),錯(cuò)誤檢測(cè)分硬件和軟件兩級(jí)進(jìn)行;
[0011] d.虛擬通道與狀態(tài)設(shè)計(jì),在多接口嵌入式處理器設(shè)置虛擬通道進(jìn)行工作模式轉(zhuǎn) 換,工作狀態(tài)的轉(zhuǎn)換由相應(yīng)通信口的輸入數(shù)據(jù)來(lái)完成,只有在收到相應(yīng)輸入時(shí)才從某個(gè)狀 態(tài)轉(zhuǎn)換到另一個(gè)狀態(tài),否則一直保持當(dāng)前工作狀態(tài);
[0012] 作為優(yōu)選,步驟b中,所述緩沖區(qū)的實(shí)現(xiàn)方式可采用由硬件或者軟件實(shí)現(xiàn),或者硬 件與軟件緩沖相結(jié)合的方式來(lái)實(shí)現(xiàn)。
[0013] 作為優(yōu)選,步驟c中,硬件對(duì)錯(cuò)誤檢測(cè),采用信號(hào)校驗(yàn)位的方式來(lái)消除字節(jié)級(jí)的傳 輸錯(cuò)誤,系統(tǒng)中的通信口還應(yīng)當(dāng)進(jìn)行物理隔離;軟件對(duì)錯(cuò)誤的檢測(cè),主要進(jìn)行數(shù)據(jù)幀長(zhǎng)度和 軟件校驗(yàn)判斷。
[0014] 作為優(yōu)選,步驟c中,還包含對(duì)通信的超時(shí)判斷檢測(cè),防止系統(tǒng)進(jìn)入無(wú)限等待狀 態(tài)。
[0015] 與現(xiàn)有技術(shù)相比,本發(fā)明的優(yōu)點(diǎn)在于:本發(fā)明給出了在通信復(fù)雜的嵌入式系統(tǒng)中 多機(jī)通信的架構(gòu)和設(shè)計(jì)方法,根據(jù)該架構(gòu)可大大降低系統(tǒng)通信設(shè)計(jì)的復(fù)雜度同時(shí)提高系統(tǒng) 的可靠性,此外還具有較高的可擴(kuò)展性。
【專(zhuān)利附圖】
【附圖說(shuō)明】
[0016] 圖1為本發(fā)明多機(jī)通信協(xié)議分層;
[0017] 圖2為本發(fā)明物理構(gòu)架;
[0018] 圖3為工作狀態(tài)轉(zhuǎn)換方式。
【具體實(shí)施方式】
[0019] 下面將對(duì)本發(fā)明作進(jìn)一步說(shuō)明。
[0020] 實(shí)施例:一種嵌入式系統(tǒng)中高可靠多機(jī)通信架構(gòu)方法,
[0021] a.通信分層設(shè)計(jì),通信分層結(jié)構(gòu)是采取層次化的組織方法,每一層向上一層提供 服務(wù),并利用下一層的服務(wù)。本發(fā)明中將通信分為三層:硬件層、通信層和協(xié)議層,其通信協(xié) 議分層如圖1所示,上層利用下層接口提供的服務(wù)來(lái)完成本層的工作,硬件層與底層硬件 相關(guān),負(fù)責(zé)處理相應(yīng)電信號(hào)轉(zhuǎn)換,硬件信號(hào)錯(cuò)誤檢測(cè)等。通信層負(fù)責(zé)將底層物理接口進(jìn)行封 裝成統(tǒng)一軟件接口,處理數(shù)據(jù)的發(fā)送和接收,并為協(xié)議層提供數(shù)據(jù)。協(xié)議層負(fù)責(zé)將通信數(shù)據(jù) 按照相應(yīng)的格式進(jìn)行封裝和解析。在設(shè)計(jì)新通信系統(tǒng)時(shí)只需在已有系統(tǒng)上對(duì)硬件層進(jìn)行抽 象并擴(kuò)展到相應(yīng)的通信層即可,如果有新的通信協(xié)議時(shí)只需要擴(kuò)展新的協(xié)議層實(shí)現(xiàn)即可完 成,分層設(shè)計(jì)的思想可大大簡(jiǎn)化系統(tǒng)設(shè)計(jì)的復(fù)雜性,還能夠利用已有的設(shè)計(jì),提高系統(tǒng)的可 靠性。
[0022] b.緩沖機(jī)制設(shè)計(jì)。為了能夠同時(shí)處理多個(gè)單機(jī)的通信口數(shù)據(jù),各個(gè)通信口都應(yīng)當(dāng) 設(shè)置緩沖區(qū),在數(shù)據(jù)未被處理之前都存儲(chǔ)在緩沖區(qū)中,待處理器有時(shí)間時(shí)再來(lái)處理該數(shù)據(jù), 緩沖區(qū)可以由硬件或者軟件來(lái)實(shí)現(xiàn)。實(shí)際使用中可以使用硬件與軟件緩沖結(jié)合的方式使 用,及時(shí)將硬件緩沖區(qū)數(shù)據(jù)轉(zhuǎn)移到軟件緩沖區(qū)中,然后在軟件緩沖區(qū)中對(duì)數(shù)據(jù)進(jìn)行處理。
[0023] c.錯(cuò)誤檢測(cè)機(jī)制設(shè)計(jì)。錯(cuò)誤檢測(cè)分硬件和軟件兩級(jí)進(jìn)行,常用的硬件錯(cuò)誤檢測(cè)中 一般使用信號(hào)校驗(yàn)位的方式來(lái)消除字節(jié)級(jí)的傳輸錯(cuò)誤,系統(tǒng)中的通信口還應(yīng)當(dāng)進(jìn)行物理隔 離,防止某個(gè)通信口的故障引起整個(gè)系統(tǒng)失效。軟件對(duì)錯(cuò)誤的檢測(cè)主要包括數(shù)據(jù)幀長(zhǎng)度和 軟件校驗(yàn)判斷。經(jīng)過(guò)兩級(jí)錯(cuò)誤檢測(cè)后通信中數(shù)據(jù)出現(xiàn)錯(cuò)誤的概率大大降低,在數(shù)據(jù)可靠性 要求更為敏感的應(yīng)用場(chǎng)景中還應(yīng)對(duì)數(shù)據(jù)的合法性進(jìn)行檢查,例如數(shù)值是否合法等。在實(shí)時(shí) 控制中還應(yīng)當(dāng)包含對(duì)通信的超時(shí)判斷檢測(cè),引入超時(shí)機(jī)制防止系統(tǒng)進(jìn)入無(wú)限等待狀態(tài)而降 低系統(tǒng)的實(shí)時(shí)性。
[0024] d.虛擬通道與狀態(tài)設(shè)計(jì)。本文采用虛擬通道技術(shù)來(lái)解決多接口嵌入式處理器的工 作模式轉(zhuǎn)換問(wèn)題,虛擬通道技術(shù)類(lèi)似于網(wǎng)絡(luò)通信中的VPN,但在實(shí)現(xiàn)上較VPN更為簡(jiǎn)單,多 接口嵌入式處理器只需要識(shí)別某些特定數(shù)據(jù)幀格式即可完成單機(jī)間的數(shù)據(jù)轉(zhuǎn)發(fā),在特定數(shù) 據(jù)幀不變的情況下,其他數(shù)據(jù)幀的修改不影響多接口嵌入式處理器的工作模式,系統(tǒng)的可 擴(kuò)展性好。本文中將多接口嵌入式處理器計(jì)算通信數(shù)據(jù)和轉(zhuǎn)發(fā)多個(gè)通信口的數(shù)據(jù)分為不同 的工作模式,也可稱(chēng)為不同的狀態(tài)。工作狀態(tài)的轉(zhuǎn)換可由相應(yīng)通信口的輸入數(shù)據(jù)來(lái)完成,只 有在收到相應(yīng)輸入時(shí)才從某個(gè)狀態(tài)轉(zhuǎn)換到另一個(gè)狀態(tài),否則一直保持當(dāng)前工作狀態(tài)。
[0025] 本發(fā)明的物理構(gòu)架如圖2所示,
[0026] 上位機(jī):普通計(jì)算機(jī)。
[0027] 多接口嵌入式處理器:具有多個(gè)物理通信接口的嵌入式處理器,跟多個(gè)單機(jī)通信, 用于處理各個(gè)通信口數(shù)據(jù)。
[0028] 單機(jī):普通嵌入式設(shè)備,只跟某個(gè)固定嵌入式處理器進(jìn)行數(shù)據(jù)交互。
[0029] 本發(fā)明嵌入式處理器工作狀態(tài)轉(zhuǎn)換方式如圖3所示,
[0030] 數(shù)據(jù)轉(zhuǎn)發(fā)A/B :嵌入式處理器工作在模式A/B下,只進(jìn)行指定數(shù)據(jù)轉(zhuǎn)發(fā)。
[0031] 數(shù)據(jù)計(jì)算:嵌入式處理器工作的數(shù)據(jù)計(jì)算。
[0032] S1/S2/S3/S4為狀態(tài)轉(zhuǎn)換條件,指當(dāng)該條件出現(xiàn)時(shí)嵌入式處理器從一種工作模式 轉(zhuǎn)換到另一種工作模式。
[0033] 本發(fā)明解決了以下幾個(gè)問(wèn)題:(a)單機(jī)間不直接相連采取單機(jī)與多接口嵌入式處 理器相連,并由其對(duì)數(shù)據(jù)進(jìn)行轉(zhuǎn)發(fā),精簡(jiǎn)物理線路,減少系統(tǒng)復(fù)雜性;(b)通信協(xié)議簡(jiǎn)單,只 需針對(duì)多接口嵌入式處理器定義少量統(tǒng)一通信格式即可;(c)可擴(kuò)展性好,新增單機(jī)時(shí)只 需要擴(kuò)展相應(yīng)的多接口嵌入式處理器即可,各個(gè)部分可單獨(dú)設(shè)計(jì);(d)數(shù)據(jù)流只需解析特 定協(xié)議,簡(jiǎn)化處理流程,實(shí)時(shí)性好;(e)加入分層和緩沖設(shè)計(jì),提高系統(tǒng)可靠性。
[〇〇34] 以上對(duì)本發(fā)明所提供的一種嵌入式系統(tǒng)中高可靠多機(jī)通信架構(gòu)方法進(jìn)行了詳盡 介紹,本文中應(yīng)用了具體個(gè)例對(duì)本發(fā)明的原理及實(shí)施方式進(jìn)行了闡述,以上實(shí)施例的說(shuō)明 只是用于幫助理解本發(fā)明的方法及其核心思想;同時(shí),對(duì)于本領(lǐng)域的一般技術(shù)人員,依據(jù)本 發(fā)明的思想,在【具體實(shí)施方式】及應(yīng)用范圍上均會(huì)有改變之處,對(duì)本發(fā)明的變更和改進(jìn)將是 可能的,而不會(huì)超出附加權(quán)利要求所規(guī)定的構(gòu)思和范圍,綜上所述,本說(shuō)明書(shū)內(nèi)容不應(yīng)理解 為對(duì)本發(fā)明的限制。
【權(quán)利要求】
1. 一種嵌入式系統(tǒng)中高可靠多機(jī)通信架構(gòu)方法,其特征在于: a. 將通信分層設(shè)計(jì),所述通信層分為三層,從下層到上層依次為硬件層、通信層和協(xié)議 層,每一層向上一層提供服務(wù),并利用下一層的服務(wù); 硬件層進(jìn)行底層硬件處理工作,負(fù)責(zé)處理相應(yīng)電信號(hào)轉(zhuǎn)換,硬件信號(hào)錯(cuò)誤檢測(cè); 通信層采用多接口嵌入式處理器計(jì)算通信數(shù)據(jù)和轉(zhuǎn)發(fā)多個(gè)通信口的數(shù)據(jù),負(fù)責(zé)將底層 物理接口進(jìn)行封裝成統(tǒng)一軟件接口,處理數(shù)據(jù)的發(fā)送和接收,并為協(xié)議層提供數(shù)據(jù); 協(xié)議層負(fù)責(zé)將通信數(shù)據(jù)按照相應(yīng)的格式進(jìn)行封裝和解析; b. 緩沖機(jī)制設(shè)計(jì),在通信層的各通信口都應(yīng)當(dāng)設(shè)置緩沖區(qū),在數(shù)據(jù)未被處理之前都存 儲(chǔ)在緩沖區(qū)中,待處理器有時(shí)間時(shí)再來(lái)處理該數(shù)據(jù); c. 錯(cuò)誤檢測(cè)機(jī)制設(shè)計(jì),錯(cuò)誤檢測(cè)分硬件和軟件兩級(jí)進(jìn)行; d. 虛擬通道與狀態(tài)設(shè)計(jì),在多接口嵌入式處理器設(shè)置虛擬通道進(jìn)行工作模式轉(zhuǎn)換,工 作狀態(tài)的轉(zhuǎn)換由相應(yīng)通信口的輸入數(shù)據(jù)來(lái)完成,只有在收到相應(yīng)輸入時(shí)才從某個(gè)狀態(tài)轉(zhuǎn)換 到另一個(gè)狀態(tài),否則一直保持當(dāng)前工作狀態(tài)。
2. 根據(jù)權(quán)利要求1所述的一種嵌入式系統(tǒng)中高可靠多機(jī)通信架構(gòu)方法,其特征在于: 步驟b中,所述緩沖區(qū)的實(shí)現(xiàn)方式可采用由硬件或者軟件實(shí)現(xiàn),或者硬件與軟件緩沖相結(jié) 合的方式來(lái)實(shí)現(xiàn)。
3. 根據(jù)權(quán)利要求1所述的一種嵌入式系統(tǒng)中高可靠多機(jī)通信架構(gòu)方法,其特征在于: 步驟c中,硬件對(duì)錯(cuò)誤檢測(cè),采用信號(hào)校驗(yàn)位的方式來(lái)消除字節(jié)級(jí)的傳輸錯(cuò)誤,系統(tǒng)中的通 信口還應(yīng)當(dāng)進(jìn)行物理隔離;軟件對(duì)錯(cuò)誤的檢測(cè),主要進(jìn)行數(shù)據(jù)幀長(zhǎng)度和軟件校驗(yàn)判斷。
4. 根據(jù)權(quán)利要求1所述的一種嵌入式系統(tǒng)中高可靠多機(jī)通信架構(gòu)方法,其特征在于: 步驟c中,還包含對(duì)通信的超時(shí)判斷檢測(cè),防止系統(tǒng)進(jìn)入無(wú)限等待狀態(tài)。
【文檔編號(hào)】H04L29/06GK104092689SQ201410334336
【公開(kāi)日】2014年10月8日 申請(qǐng)日期:2014年7月15日 優(yōu)先權(quán)日:2014年7月15日
【發(fā)明者】沈浪, 唐經(jīng)天, 魏源遠(yuǎn), 王詩(shī)利, 張波, 姚天問(wèn) 申請(qǐng)人:四川航天系統(tǒng)工程研究所