專利名稱:航電asm協(xié)議控制器的制作方法
技術(shù)領(lǐng)域:
本發(fā)明屬于計(jì)算機(jī)硬件技術(shù),涉及航電ASM協(xié)議控制器的硬件電路實(shí)現(xiàn)方法。
背景技術(shù):
新一代軍用飛機(jī)航電系統(tǒng)選用以光纖通道FC作為機(jī)載統(tǒng)一網(wǎng)絡(luò),單節(jié)點(diǎn)傳輸速 率為2Gb/s,用于傳輸消息、數(shù)據(jù)、圖像等信息。 ASM是基于FC網(wǎng)絡(luò)高層通信協(xié)議,具有確定性、安全性、低延時(shí)性的特點(diǎn),主要用 于航電系統(tǒng)主干通信網(wǎng)絡(luò)。 ASM通信協(xié)議一般采用主機(jī)軟件處理,占用大量的CPU處理資源、協(xié)議處理開銷
大。通信協(xié)議處理時(shí)間遠(yuǎn)遠(yuǎn)超過(guò)數(shù)據(jù)幀的傳輸時(shí)間,通信接口效率低、傳輸延遲大,難以發(fā)
揮光纖通道高速傳輸優(yōu)勢(shì),也無(wú)法滿足航電系統(tǒng)通信確定性傳輸要求。 本專利采用純硬件實(shí)現(xiàn)ASM協(xié)議處理和通信調(diào)度可滿足實(shí)時(shí)控制應(yīng)用領(lǐng)域的需要。
發(fā)明內(nèi)容
本發(fā)明的目的是提供一種航電ASM協(xié)議控制器,其具體是提供一種高效的航電 ASM處理和確定性調(diào)度的航電ASM協(xié)議控制器電路。
本發(fā)明的技術(shù)解決方案是 —種航電ASM協(xié)議控制器,其特殊之處是,在光纖通道鏈路層上增加專用電路用 于實(shí)現(xiàn)航電ASM協(xié)議處理和確定性消息調(diào)度管理;所述專用電路為ASM協(xié)議控制器電路,它 包括 (1)消息隊(duì)列控制寄存器組,包括消息隊(duì)列基地址QueueBase、隊(duì)列深度
QueueLen,頭指針Head和尾指針Tail,消息最大長(zhǎng)度MsgMaxLen ; (2)消息調(diào)度控制寄存器組,包括消息類型MsgType,消息調(diào)度周期Period ; (3)協(xié)議分片控制寄存器組,包括發(fā)送數(shù)據(jù)幀計(jì)數(shù)寄存器SendCnt和接收數(shù)據(jù)幀
計(jì)數(shù)寄存器RecvCnt ; (4)發(fā)送調(diào)度控制; (5)協(xié)議封裝的控制單元,包括發(fā)送消息ID、目標(biāo)地址、發(fā)送分片控制寄存器、協(xié) 議封裝控制邏輯; (6)協(xié)議解析的控制單元,包括接收消息ID與消息隊(duì)列映射表,接收分片信息,協(xié)
議解析控制邏輯;(7)發(fā)送DMA控制器; (8)接收DMA控制器; 上述航電ASM協(xié)議控制器,其特殊之處是包括在主機(jī)空間上開辟一片用于存放 消息的存儲(chǔ)區(qū)域,每個(gè)消息對(duì)應(yīng)多個(gè)緩沖區(qū),每個(gè)緩沖區(qū)的大小為消息的最大長(zhǎng)度,同一個(gè) 消息的多個(gè)緩沖區(qū)在邏輯上構(gòu)成環(huán)形隊(duì)列,消息隊(duì)列控制組分別記錄每個(gè)消息隊(duì)列基地址、隊(duì)列深度、隊(duì)列的頭指針、隊(duì)列尾指針以及消息的最大長(zhǎng)度。 上述每個(gè)消息環(huán)形緩沖區(qū)都有對(duì)應(yīng)的隊(duì)列頭指針和尾指針,用于實(shí)現(xiàn)消息的存儲(chǔ) 管理; 消息發(fā)送時(shí),主機(jī)向發(fā)送消息對(duì)應(yīng)環(huán)形緩沖區(qū)寫入消息,ASM協(xié)議控制器負(fù)責(zé)從發(fā) 送消息對(duì)應(yīng)環(huán)形緩沖區(qū)讀取消息; 消息接收時(shí),ASM協(xié)議控制器向接收消息對(duì)應(yīng)的緩沖區(qū)寫入消息,主機(jī)從接收消息
對(duì)應(yīng)的緩沖區(qū)讀取消息; 所述具體隊(duì)列管理如下 消息寫入時(shí),寫入者讀取消息隊(duì)列頭指針Head、尾指針Tai 1以及隊(duì)列深度 QueueLen,當(dāng)(Tail+1) % QueueLen = Head,表示隊(duì)列滿,則丟棄消息,否則將消息寫入到隊(duì) 尾,并將調(diào)整隊(duì)尾指針,Tail = (Tail+1) % QueueLen ; 消息讀取時(shí),讀取者讀取消息隊(duì)列頭指針Head、尾指針Tai 1以及隊(duì)列深度 QueueLen,當(dāng)Tail = Head,表示隊(duì)列滿,則退出,否則從隊(duì)頭讀取消息,并調(diào)整隊(duì)頭指針, Head = (Head+1) % QueueLen 。 上述每個(gè)發(fā)送消息對(duì)應(yīng)一個(gè)消息類型和計(jì)數(shù)器,消息類型分別為緊急消息、周期 消息和事件消息,當(dāng)為周期消息時(shí),按照計(jì)數(shù)器定義的周期發(fā)送消息,計(jì)數(shù)器精度為lus,32
位寬。典型設(shè)置范圍為0. 5ms、lms、2ms......128ms, 256ms, 512ms, 1024ms ;計(jì)數(shù)器支持設(shè)置、
復(fù)位和使能,當(dāng)計(jì)數(shù)到0時(shí),通知發(fā)送調(diào)度控制控制邏輯處理。 上述發(fā)送消息和接收消息數(shù)目的范圍為1到512 ;典型設(shè)置范圍8到256。 上述的ASM協(xié)議控制器,其特殊之處是,消息的調(diào)度按照緊急消息、周期消息和事
件消息的優(yōu)先級(jí)順序調(diào)度,對(duì)于緊急消息和事件消息,消息放入到隊(duì)列后,即提交消息調(diào)
度,而對(duì)于周期消息還必須等待消息對(duì)應(yīng)的計(jì)數(shù)器計(jì)數(shù)到零,才能提交消息調(diào)度。 上述航電ASM協(xié)議控制器,其特殊之處是,協(xié)議封裝的控制單元,根據(jù)消息控制信
息讀取消息內(nèi)容,構(gòu)建數(shù)據(jù)幀頭和幀尾,形成數(shù)據(jù)幀,提交物理鏈路發(fā)送。當(dāng)發(fā)送完成一個(gè)
完整的消息更新隊(duì)列頭指針通知主機(jī)已完成消息的發(fā)送。 上述航電ASM協(xié)議控制器,其特殊之處是,協(xié)議解析的控制單元完成數(shù)據(jù)幀頭的 協(xié)議解析,將數(shù)據(jù)幀內(nèi)容寫入到對(duì)應(yīng)的消息緩沖區(qū),當(dāng)完成一個(gè)完整消息的數(shù)據(jù)組織,更改 隊(duì)列尾指針,通知主機(jī)接收到了新的消息。 在光纖通道鏈路層之上,采用硬件電路實(shí)現(xiàn)ASM協(xié)議處理和消息確定性調(diào)度。 ASM協(xié)議控制硬件電路實(shí)現(xiàn)消息的存儲(chǔ)管理、通信調(diào)度、協(xié)議封裝與解析。 系統(tǒng)初始化時(shí),主機(jī)按照系統(tǒng)通信配置要求,在主機(jī)系統(tǒng)存儲(chǔ)器空間為每條消息
分配空間,建立環(huán)形緩沖隊(duì)列,ASM協(xié)議控制器負(fù)責(zé)維護(hù)每個(gè)消息隊(duì)列控制信息。 發(fā)送數(shù)據(jù)時(shí),主機(jī)將消息內(nèi)容以及長(zhǎng)度寫入消息ID對(duì)應(yīng)的消息隊(duì)列,更新隊(duì)列指
針通知協(xié)議控制器處理。協(xié)議控制按照消息的調(diào)度策略,從多個(gè)發(fā)送隊(duì)列選取具備條件的
消息,并按照ASM協(xié)議幀格式完成光纖通道數(shù)據(jù)幀的封裝,提交光纖通道鏈路層進(jìn)行發(fā)送。 消息接收時(shí),協(xié)議控制器解析ASM數(shù)據(jù)幀,確定接收消息隊(duì)列,將相關(guān)一組數(shù)據(jù)幀
構(gòu)成消息寫入到對(duì)應(yīng)的消息隊(duì)列,通知主機(jī)處理。 本發(fā)明具有的優(yōu)點(diǎn)效果是,采用硬件電路完成ASM協(xié)議處理和確定性調(diào)度。航電 ASM協(xié)議控制器具有以下優(yōu)點(diǎn)
傳輸效率高采用硬件電路實(shí)現(xiàn)ASM協(xié)議幀封裝與解析,協(xié)議處理小于消息的傳 輸時(shí)間,數(shù)據(jù)通信能夠達(dá)到線速處理要求。 通信開銷小通信過(guò)程,主機(jī)在本地存儲(chǔ)器讀取和寫入消息內(nèi)容,不必進(jìn)行額外協(xié) 議處理,主機(jī)通信開銷小。 調(diào)度確定性每個(gè)消息分配獨(dú)立隊(duì)列消息隊(duì)列,采用硬件邏輯按照消息類型進(jìn)行 調(diào)度,調(diào)度具有很好的確定性。 延遲確定性周期性消息隊(duì)列采用獨(dú)立的計(jì)數(shù)器進(jìn)行周期控制,保證周期性任務(wù) 傳輸確定性。
圖1是航電ASM協(xié)議控制器功能框圖;
圖2為發(fā)送消息控制列表;圖3為接收消息控制列表。
具體實(shí)施例方式
航電ASM協(xié)議控制器的功能框圖如圖1所示,航電協(xié)議控制器包括發(fā)送隊(duì)列控制, 接收隊(duì)列控制、發(fā)送調(diào)度控制、ASM協(xié)議封裝、ASM協(xié)議解析等幾部分組成。具體實(shí)現(xiàn)方式如 下 (1)發(fā)送隊(duì)列控制 在通信之前,主機(jī)根據(jù)發(fā)送通信表分配消息隊(duì)列存儲(chǔ)區(qū)域,每個(gè)消息隊(duì)列存儲(chǔ)區(qū)
域由多個(gè)緩沖區(qū)構(gòu)成,邏輯上構(gòu)成一個(gè)環(huán)形隊(duì)列,每個(gè)緩沖區(qū)可存放一個(gè)最大長(zhǎng)度的消息。 主機(jī)與協(xié)議控制器之間的信息交互采用環(huán)形隊(duì)列管理方式,每個(gè)發(fā)送消息隊(duì)
列對(duì)應(yīng)一組控制信息包括消息隊(duì)列基地址QueueBase、隊(duì)頭指針Head,消息最大長(zhǎng)度
MsgMaxLen等信息。主機(jī)負(fù)責(zé)維護(hù)隊(duì)尾指針,協(xié)議控制器負(fù)責(zé)維護(hù)隊(duì)頭指針。 主機(jī)寫入消息的過(guò)程如下 a.讀取發(fā)送消息隊(duì)列指針Tail和Head; b.判斷隊(duì)列是否滿?如果隊(duì)列滿,則退出,隊(duì)列滿的條件為(Tail+1) % QueueLen = Head ; c.根據(jù)Tail和消息隊(duì)列基地址,計(jì)算消息內(nèi)容的地址;
d.將消息內(nèi)容寫入到消息隊(duì)列中; e.將隊(duì)尾指針Tail值更改為(Tail+1) % QueueLen,寫回隊(duì)尾指針寄存器;
f.返回。 ASM協(xié)議控制器讀取消息的過(guò)程如下
a.讀取發(fā)送消息隊(duì)列指針Tail和Head; b.判斷隊(duì)列是否空?如果隊(duì)列空,則退出,隊(duì)列為空的條件為Tail = Head ;
c.根據(jù)Head和消息隊(duì)列基地址,計(jì)算消息內(nèi)容的地址;
d.從消息隊(duì)列讀取消息內(nèi)容; e.將隊(duì)頭指針Head值更改為(Head+1) % QueueLen,寫回隊(duì)頭指針寄存器; f.返回。
(2)接收隊(duì)列控制 在通信之前,主機(jī)根據(jù)接收通信表分配消息隊(duì)列存儲(chǔ)區(qū)域,每個(gè)消息隊(duì)列存儲(chǔ)區(qū)域由多個(gè)緩沖區(qū)構(gòu)成,邏輯上構(gòu)成一個(gè)環(huán)形隊(duì)列,每個(gè)緩沖區(qū)可存放一個(gè)最大長(zhǎng)度的消息。
主機(jī)與協(xié)議控制器之間的信息交互采用環(huán)形隊(duì)列管理方式,每個(gè)接收消息隊(duì) 列對(duì)應(yīng)一組控制信息包括消息隊(duì)列基地址QueueBase、隊(duì)頭指針Head,消息最大長(zhǎng)度 MsgMaxLen等信息。協(xié)議控制器負(fù)責(zé)維護(hù)隊(duì)尾指針,主機(jī)負(fù)責(zé)維護(hù)隊(duì)頭指針。
協(xié)議控制器寫入消息的過(guò)程如下
a.讀取發(fā)送消息隊(duì)列指針Tail和Head; b.判斷隊(duì)列是否滿?如果隊(duì)列滿,則退出,隊(duì)列滿的條件為(Tail+1) % QueueLen = Head ; c.根據(jù)Tail和消息隊(duì)列基地址,計(jì)算消息內(nèi)容的地址;
d.將消息內(nèi)容寫入到消息隊(duì)列中; e.將隊(duì)尾指針Tail值更改為(Tail+1) % QueueLen,寫回隊(duì)尾指針寄存器;
f.返回。
主機(jī)讀取消息的過(guò)程如下 a.讀取發(fā)送消息隊(duì)列指針Tail和Head; b.判斷隊(duì)列是否空?如果隊(duì)列空,則退出,隊(duì)列為空的條件為Tail = Head ;
c.根據(jù)Head和消息隊(duì)列基地址,計(jì)算消息內(nèi)容的地址;
d.從消息隊(duì)列讀取消息內(nèi)容; e.將隊(duì)頭指針Head值更改為(Head+1) % QueueLen,寫回隊(duì)頭指針寄存器; f.返回。
(3)發(fā)送調(diào)度控制 ASM協(xié)議控制發(fā)送調(diào)度要求滿足航電應(yīng)用中緊急消息、周期消息、事件消息等通信 要求。 每個(gè)發(fā)送消息隊(duì)列對(duì)應(yīng)一組通信調(diào)度相關(guān)的控制信息,包括消息類型MsgType,發(fā) 送周期計(jì)數(shù)器Period ;發(fā)送周期計(jì)數(shù)器的精度為lus,32位寬。典型設(shè)置范圍為0. 5ms、
lms、2ms......128ms, 256ms, 512ms, 1024ms。計(jì)數(shù)器支持設(shè)置、復(fù)位和使能。 發(fā)送調(diào)度控制按照緊急消息、周期消息和事件消息的先后順序進(jìn)行調(diào)度,消息隊(duì) 列具備調(diào)度條件的要求如下 a.消息隊(duì)列類型為緊急消息和事件消息,消息隊(duì)列有消息; b.消息隊(duì)列類型為周期消息,消息隊(duì)列有消息,并且周期計(jì)數(shù)器計(jì)數(shù)到0。 通信調(diào)度器分為兩級(jí)調(diào)度組內(nèi)調(diào)度和組間調(diào)度,將消息隊(duì)列中的緊急消息、周期
消息和事件消息分別分一組,組內(nèi)調(diào)度采用公平輪轉(zhuǎn)調(diào)度策略,從同一類型的消息隊(duì)列選
取具備條件的發(fā)送消息隊(duì)列,組間調(diào)度按照緊急消息、周期消息和事件消息優(yōu)先級(jí)順序進(jìn)
行調(diào)度。 (4)ASM協(xié)議封裝 每個(gè)發(fā)送消息隊(duì)列對(duì)應(yīng)一組協(xié)議封裝相關(guān)的控制信息,包括消息ID、目標(biāo)地址 DID、發(fā)送分片計(jì)數(shù)SencLCnt, ASM協(xié)議控制器按照這些控制信息,將消息封裝成光纖通道 ASM數(shù)據(jù)幀,ASM數(shù)據(jù)幀格式定義如圖所示。
ASM協(xié)議封裝過(guò)程如下
a.獲取消息地址
7
協(xié)議控制器獲取消息隊(duì)列基地址QueueBase、隊(duì)頭指針Head,消息最大長(zhǎng)度 MsgMaxLen,計(jì)算消息的基地址,計(jì)算方法為MsgAddr = QueueBase+Head*MsgMaxLen ;
b.讀取消息長(zhǎng)度 消息前4字節(jié)為消息長(zhǎng)度,從消息地址讀取消息長(zhǎng)度信息CurMsgLen ;
c.判斷是否為最后分片 獲取分片計(jì)數(shù)Send_Cnt ,當(dāng)CurMsgLen- (Send_Cnt+l) *2112 > 0,表示分片為中間 分片,否則為最后一個(gè)分片。當(dāng)分片為中間分片則分片長(zhǎng)度為2112,當(dāng)為最后分片則分片長(zhǎng) 度為CurMsgLen_Send_Cnt*2112。
d.數(shù)據(jù)幀的組織 根據(jù)消息ID、分片計(jì)數(shù)SencLCnt、分片長(zhǎng)度等信息構(gòu)成ASM消息數(shù)據(jù)幀頭和幀尾 信息,根據(jù)分片計(jì)數(shù)SencLCnt,計(jì)算分片地址,從主機(jī)空間讀取消息內(nèi)容,填充ASM消息數(shù) 據(jù)域中。最終形成完整的數(shù)據(jù)幀提交光纖通道鏈路層發(fā)送。 當(dāng)該分片為中間分片時(shí),幀尾結(jié)束符為EOFn,數(shù)據(jù)幀提交物理鏈路層后,分片計(jì)數(shù) Send_Cnt力口 1 。 當(dāng)該分片為最后分片時(shí),幀尾結(jié)束符為E0Ft(表明消息最后一個(gè)數(shù)據(jù)幀),數(shù)據(jù)幀 提交物理鏈路層后,分片計(jì)數(shù)SencLCnt置0,并且需要調(diào)整消息隊(duì)頭指針Head。
(5)ASM協(xié)議解析 每個(gè)接收消息隊(duì)列對(duì)應(yīng)一組協(xié)議解析相關(guān)的控制信息,包括消息ID、接收分片計(jì) 數(shù)ReCV_Cnt, ASM協(xié)議控制器按照這些控制信息,將一組消息相關(guān)ASM數(shù)據(jù)幀,組裝成一個(gè) 消息。 ASM協(xié)議解析過(guò)程如下
a.數(shù)據(jù)幀解析 接收數(shù)據(jù)幀,解析消息幀頭、幀尾信息,獲取該分片的消息ID、分片信息,是否為消
息的最后分片等信息。 b.獲取消息隊(duì)列 通過(guò)分片的消息ID,查找消息ID與接收消息的映射表,找到對(duì)應(yīng)的接收消息隊(duì)
列,獲取相應(yīng)的控制信息。 c.判斷分片順序正確性 比較分片數(shù)據(jù)幀中的Frame—Cnt與消息隊(duì)列接收分片計(jì)數(shù)ReCV_Cnt,判斷分片順 序是否正確,如果Frame—Cnt ! = 0,并且Frame_Cnt ! = RecvCnt,則表示消息順序錯(cuò),丟
棄分片數(shù)據(jù)幀。 d.獲取消息地址 協(xié)議控制器獲取消息隊(duì)列基地址QueueBase、隊(duì)頭指針Head,消息最大長(zhǎng)度 MsgMaxLen,計(jì)算消息的基地址,計(jì)算方法為MsgAddr = QueueBase+tail*MsgMaxLen。
e.消息寫入 根據(jù)接收分片計(jì)數(shù)Frame—Cnt計(jì)算偏移地址,將分片數(shù)據(jù)幀內(nèi)容寫入到消息隊(duì) 列,當(dāng)寫入的分片數(shù)據(jù)幀為消息的最后一個(gè)分片,計(jì)算消息長(zhǎng)度,寫到消息頭4個(gè)字節(jié)處, 并將RecvCnt置為0,更新消息隊(duì)列指針,通知主機(jī)接收。
權(quán)利要求
一種航電ASM協(xié)議控制器,其特征是,在光纖通道鏈路層上增加專用電路用于實(shí)現(xiàn)航電ASM協(xié)議處理和確定性消息調(diào)度管理;所述專用電路為ASM協(xié)議控制器電路,它包括(1)消息隊(duì)列控制寄存器組,包括消息隊(duì)列基地址QueueBase、隊(duì)列深度QueueLen,頭指針Head和尾指針Tail,消息最大長(zhǎng)度MsgMaxLen;(2)消息調(diào)度控制寄存器組,包括消息類型MsgType,消息調(diào)度周期Period;(3)協(xié)議分片控制寄存器組,包括發(fā)送數(shù)據(jù)幀計(jì)數(shù)寄存器SendCnt和接收數(shù)據(jù)幀計(jì)數(shù)寄存器RecvCnt;(4)發(fā)送調(diào)度控制;(5)協(xié)議封裝的控制單元,包括發(fā)送消息ID、目標(biāo)地址、發(fā)送分片控制寄存器、協(xié)議封裝控制邏輯;(6)協(xié)議解析的控制單元,包括接收消息ID與消息隊(duì)列映射表,接收分片信息,協(xié)議解析控制邏輯;(7)發(fā)送DMA控制器;(8)接收DMA控制器;
2. 根據(jù)權(quán)利要求1所述航電ASM協(xié)議控制器,其特征是包括在主機(jī)空間上開辟一片 用于存放消息的存儲(chǔ)區(qū)域,每個(gè)消息對(duì)應(yīng)多個(gè)緩沖區(qū),每個(gè)緩沖區(qū)的大小為消息的最大長(zhǎng) 度,同一個(gè)消息的多個(gè)緩沖區(qū)在邏輯上構(gòu)成環(huán)形隊(duì)列,消息隊(duì)列控制組分別記錄每個(gè)消息 隊(duì)列基地址、隊(duì)列深度、隊(duì)列的頭指針、隊(duì)列尾指針以及消息的最大長(zhǎng)度。
3. 根據(jù)權(quán)利要求1或2所述航電ASM協(xié)議控制器,其特征是所述每個(gè)消息環(huán)形緩沖 區(qū)都有對(duì)應(yīng)的隊(duì)列頭指針和尾指針,用于實(shí)現(xiàn)消息的存儲(chǔ)管理;消息發(fā)送時(shí),主機(jī)向發(fā)送消息對(duì)應(yīng)環(huán)形緩沖區(qū)寫入消息,ASM協(xié)議控制器負(fù)責(zé)從發(fā)送消 息對(duì)應(yīng)環(huán)形緩沖區(qū)讀取消息;消息接收時(shí),ASM協(xié)議控制器向接收消息對(duì)應(yīng)的緩沖區(qū)寫入消息,主機(jī)從接收消息對(duì)應(yīng) 的緩沖區(qū)讀取消息;所述具體隊(duì)列管理如下消息寫入時(shí),寫入者讀取消息隊(duì)列頭指針Head、尾指針Tail以及隊(duì)列深度QueueLen, 當(dāng)(Tail+1) % QueueLen = Head,表示隊(duì)列滿,則丟棄消息,否則將消息寫入到隊(duì)尾,并將調(diào) 整隊(duì)尾指針,Tail = (Tail+1) % QueueLen ;消息讀取時(shí),讀取者讀取消息隊(duì)列頭指針Head、尾指針Tail以及隊(duì)列深度QueueLen, 當(dāng)Tail = Head,表示隊(duì)列滿,則退出,否則從隊(duì)頭讀取消息,并調(diào)整隊(duì)頭指針,Head = (Head+1) % QueueLen 。
4. 根據(jù)權(quán)利要求3所述航電ASM協(xié)議控制器,其特征是所述每個(gè)發(fā)送消息對(duì)應(yīng)一個(gè) 消息類型和計(jì)數(shù)器,消息類型分別為緊急消息、周期消息和事件消息,當(dāng)為周期消息時(shí),按 照計(jì)數(shù)器定義的周期發(fā)送消息,計(jì)數(shù)器精度為lus,32位寬。典型設(shè)置范圍為0.5ms、lms、 2ms……128ms,256ms,512ms, 1024ms ;計(jì)數(shù)器支持設(shè)置、復(fù)位和使能,當(dāng)計(jì)數(shù)到0時(shí),通知發(fā) 送調(diào)度控制控制邏輯處理。
5. 根據(jù)權(quán)利要求4所述航電ASM協(xié)議控制器,其特征是所述發(fā)送消息和接收消息數(shù) 目的范圍為1到512 ;典型設(shè)置范圍8到256。
6. 根據(jù)權(quán)利要求5所述的ASM協(xié)議控制器,其特征是,消息的調(diào)度按照緊急消息、周期消息和事件消息的優(yōu)先級(jí)順序調(diào)度,對(duì)于緊急消息和事件消息,消息放入到隊(duì)列后,即提交 消息調(diào)度,而對(duì)于周期消息還必須等待消息對(duì)應(yīng)的計(jì)數(shù)器計(jì)數(shù)到零,才能提交消息調(diào)度。
7. 根據(jù)權(quán)利要求6所述航電ASM協(xié)議控制器,其特征是,協(xié)議封裝的控制單元,根據(jù)消 息控制信息讀取消息內(nèi)容,構(gòu)建數(shù)據(jù)幀頭和幀尾,形成數(shù)據(jù)幀,提交物理鏈路發(fā)送。當(dāng)發(fā)送 完成一個(gè)完整的消息更新隊(duì)列頭指針通知主機(jī)已完成消息的發(fā)送。
8. 根據(jù)權(quán)利要求7所述航電ASM協(xié)議控制器,其特征是,協(xié)議解析的控制單元完成數(shù)據(jù) 幀頭的協(xié)議解析,將數(shù)據(jù)幀內(nèi)容寫入到對(duì)應(yīng)的消息緩沖區(qū),當(dāng)完成一個(gè)完整消息的數(shù)據(jù)組 織,更改隊(duì)列尾指針,通知主機(jī)接收到了新的消息。
全文摘要
一種航電ASM協(xié)議控制器在光纖通道基礎(chǔ)上,采用純硬件電路實(shí)現(xiàn)了ASM通信協(xié)議處理功能,研制專用的ASM協(xié)議控制器,實(shí)現(xiàn)了消息存儲(chǔ)管理、發(fā)送調(diào)度、協(xié)議封裝、接收解封裝等功能。本發(fā)明通信開銷小ASM協(xié)議控制器采用硬件實(shí)現(xiàn)了ASM協(xié)議封裝,解封裝,避免了主機(jī)系統(tǒng)協(xié)議開銷;優(yōu)先級(jí)調(diào)度策略協(xié)議處理器按照緊急、周期、事件消息的調(diào)度策略實(shí)現(xiàn)通信調(diào)度,滿足航電不同消息傳輸?shù)姆?wù)質(zhì)量要求;通信帶寬高ASM控制器能夠在消息間間隔空隙中完成數(shù)據(jù)的協(xié)議處理,保證通信能夠達(dá)到線速率的傳輸要求。
文檔編號(hào)H04B10/12GK101795266SQ20091025463
公開日2010年8月4日 申請(qǐng)日期2009年12月31日 優(yōu)先權(quán)日2009年12月31日
發(fā)明者王紅春 申請(qǐng)人:中國(guó)航空工業(yè)集團(tuán)公司第六三一研究所