麻豆精品无码国产在线播放,国产亚洲精品成人AA片新蒲金,国模无码大尺度一区二区三区,神马免费午夜福利剧场

航空總線協(xié)議中命令處理系統(tǒng)及方法與流程

文檔序號(hào):12665744閱讀:304來源:國(guó)知局
航空總線協(xié)議中命令處理系統(tǒng)及方法與流程

本發(fā)明屬于ARINC航空總線接口領(lǐng)域,具體地,涉及一種航空總線協(xié)議中命令處理系統(tǒng)及方法。



背景技術(shù):

隨著航空電子系統(tǒng)的發(fā)展對(duì)機(jī)載數(shù)據(jù)總線不斷提出新的要求,基于通用計(jì)算機(jī)和工業(yè)測(cè)控領(lǐng)域的底板數(shù)據(jù)總線無法滿足軍用電子系統(tǒng)對(duì)高可靠性、高故障容忍度、高容錯(cuò)性等系統(tǒng)要求,提出了一種新型的底板總線—ARINC659總線。

ARINC659底板總線是一種具有總線傳輸時(shí)間確定性和半雙工傳輸特性的線性多點(diǎn)串行數(shù)據(jù)總線,它采用表驅(qū)動(dòng)協(xié)議(TDP),無總線沖突和訪問時(shí)延,支持四余度實(shí)時(shí)熱后備,具有高可靠性,采用四條雙-雙配置總線,且收發(fā)過程自校驗(yàn),具有很強(qiáng)的容錯(cuò)能力和故障隔離能力。

幀描述語言如表1所示,ARINC659協(xié)議算法的核心思想就是通過一張命令表來規(guī)定所有LRM(在線可更換模塊)的行為順序。該算法將總線時(shí)間劃分為一個(gè)一個(gè)大小不一的窗口(Window),定義每一個(gè)窗口的長(zhǎng)度,并且規(guī)定每個(gè)LRM在該窗口時(shí)間的行為——發(fā)送、接收、空閑等。每一個(gè)窗口由幀描述語言定義,形成命令表。

表1幀描述語言表

如圖2所示,存放在表命令存儲(chǔ)器中的調(diào)度表定義了每一個(gè)窗口的長(zhǎng)度,同時(shí)還定義了在這個(gè)窗口時(shí)間總線上的哪一個(gè)LRM發(fā)送、接收或者忽略總線。總線的發(fā)送調(diào)度表被組織成循環(huán)幀的形式,整個(gè)發(fā)送計(jì)劃表的長(zhǎng)度是一個(gè)固定長(zhǎng)度,這個(gè)長(zhǎng)度等于獨(dú)立的窗口長(zhǎng)度之和。

如何有效的設(shè)計(jì)與處理ARINC659命令以及提高總線處理速度為本發(fā)明最需要解決的問題。



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

針對(duì)現(xiàn)有技術(shù)中的缺陷,本發(fā)明的目的是提供一種航空總線協(xié)議中命令處理系統(tǒng)及方法,其結(jié)構(gòu)簡(jiǎn)單,成本低,滿足ARINC659總線的協(xié)議命令傳輸時(shí)間的確定性,同時(shí)滿足ARINC659總線的實(shí)時(shí)性功能。

根據(jù)本發(fā)明的一個(gè)方面,提供一種航空總線協(xié)議中命令處理系統(tǒng),其特征在于,其包括:

命令區(qū)主控模塊,用于產(chǎn)生命令表讀取信號(hào)以及讀取信號(hào)地址;

命令表讀取模塊,與所述命令區(qū)主控模塊相連,用于讀取命令數(shù)據(jù);

表存儲(chǔ)器,與所述命令表讀取模塊相連,用于存儲(chǔ)命令數(shù)據(jù);

譯碼模塊,與所述命令表讀取模塊相連,用于對(duì)命令數(shù)據(jù)進(jìn)行譯碼,產(chǎn)生相應(yīng)的命令標(biāo)志和使能信號(hào),同時(shí)在所述譯碼模塊中會(huì)對(duì)命令的接收和發(fā)送時(shí)序進(jìn)行控制,保證命令窗口的時(shí)間執(zhí)行結(jié)束;

命令寄存器,與所述譯碼模塊相連,用于載入命令標(biāo)志;

DMA控制器,與所述命令寄存器相連,用于取出數(shù)據(jù)信息和發(fā)送數(shù)據(jù)信息;

IMM模塊,與所述DMA控制器相連,用于寫入數(shù)據(jù)信息;

ARINC659協(xié)議控制器,與所述IMM模塊相連,用于接收和處理數(shù)據(jù)信息。

本發(fā)明還提供一種航空總線協(xié)議中命令處理方法,其特征在于,其包括以下步驟:

步驟一,取指步驟,命令區(qū)主控模塊產(chǎn)生命令表讀取信號(hào)以及讀取信號(hào)地址,并通過命令表讀取模塊從表存儲(chǔ)器中讀取出命令數(shù)據(jù);

步驟二,譯碼步驟,命令區(qū)主控模塊將讀取出的命令數(shù)據(jù)傳輸至譯碼模塊進(jìn)行譯碼,產(chǎn)生相應(yīng)的命令標(biāo)志和使能信號(hào),同時(shí)在所述譯碼模塊中會(huì)對(duì)命令的接收和發(fā)送時(shí)序進(jìn)行控制,保證命令窗口的時(shí)間執(zhí)行結(jié)束;

步驟三,載入步驟,命令寄存器載入命令標(biāo)志;

步驟四,執(zhí)行步驟,命令寄存器將數(shù)據(jù)和同步脈沖信號(hào)發(fā)送到ARINC659總線上,同時(shí)將命令標(biāo)志和使能信號(hào)傳遞給DMA控制器;

步驟五,命令寄存器通過DMA控制器從IMM模塊中取出發(fā)送數(shù)據(jù)傳遞給ARINC659協(xié)議控制器,并將從ARINC659總線上收到的數(shù)據(jù)通過DMA控制器寫入IMM模塊中。

優(yōu)選地,所述譯碼模塊完成譯碼后,如果當(dāng)前ARINC659總線不忙,所述譯碼模塊產(chǎn)生有效的載入信號(hào),將命令標(biāo)志載入命令寄存器;如果當(dāng)前ARINC659總線處在忙狀態(tài)時(shí),所述譯碼模塊等待ARINC659總線不忙后再產(chǎn)生有效的載入信號(hào),將譯碼命令載入命令寄存器。

優(yōu)選地,所述執(zhí)行步驟開始時(shí)如果需要占用ARINC659總線,則產(chǎn)生ARINC659總線忙信號(hào),當(dāng)處在命令執(zhí)行階段且當(dāng)前ARINC659總線忙時(shí),則產(chǎn)生下一條指令的讀取信號(hào),對(duì)下一條指令進(jìn)行處理,從而實(shí)現(xiàn)流水線的操作,提升命令的執(zhí)行速度。

與現(xiàn)有技術(shù)相比,本發(fā)明具有如下的有益效果:本發(fā)明結(jié)構(gòu)簡(jiǎn)單,成本低,滿足ARINC659總線的協(xié)議命令傳輸時(shí)間的確定性,同時(shí)滿足

ARINC659總線的實(shí)時(shí)性功能。

附圖說明

通過閱讀參照以下附圖對(duì)非限制性實(shí)施例所作的詳細(xì)描述,本發(fā)明的其它特征、目的和優(yōu)點(diǎn)將會(huì)變得更明顯:

圖1為本發(fā)明航空總線協(xié)議中命令處理系統(tǒng)的結(jié)構(gòu)示意圖。

圖2為現(xiàn)有技術(shù)中基于時(shí)間確定性原則命令的示意圖。

圖3為本發(fā)明的具體實(shí)施方式中命令區(qū)主控模塊的取指操作的狀態(tài)圖。

具體實(shí)施方式

下面結(jié)合具體實(shí)施例對(duì)本發(fā)明進(jìn)行詳細(xì)說明。以下實(shí)施例將有助于本領(lǐng)域的技術(shù)人員進(jìn)一步理解本發(fā)明,但不以任何形式限制本發(fā)明。應(yīng)當(dāng)指出的是,對(duì)本領(lǐng)域的普通技術(shù)人員來說,在不脫離本發(fā)明構(gòu)思的前提下,還可以做出若干變形和改進(jìn)。這些都屬于本發(fā)明的保護(hù)范圍。

如圖1所示,本發(fā)明航空總線協(xié)議中命令處理系統(tǒng)包括:

命令區(qū)主控模塊,用于產(chǎn)生命令表讀取信號(hào)以及讀取信號(hào)地址;

命令表讀取模塊,與所述命令區(qū)主控模塊相連,用于讀取命令數(shù)據(jù);

表存儲(chǔ)器,與所述命令表讀取模塊相連,用于存儲(chǔ)命令數(shù)據(jù);

譯碼模塊,與所述命令表讀取模塊相連,用于對(duì)命令數(shù)據(jù)進(jìn)行譯碼,產(chǎn)生相應(yīng)的命令標(biāo)志和使能信號(hào),同時(shí)在所述譯碼模塊中會(huì)對(duì)命令的接收和發(fā)送時(shí)序進(jìn)行控制,保證命令窗口的時(shí)間執(zhí)行結(jié)束;

命令寄存器,與所述譯碼模塊相連,用于載入命令標(biāo)志;

DMA(直接存儲(chǔ)器存取)控制器,與所述命令寄存器相連,用于取出數(shù)據(jù)信息和發(fā)送數(shù)據(jù)信息;

IMM(英特爾移動(dòng)模塊)模塊,與所述DMA控制器相連,用于寫入數(shù)據(jù)信息;

ARINC659協(xié)議控制器,與所述IMM模塊相連,用于接收和處理數(shù)據(jù)信息。

本發(fā)明航空總線協(xié)議中命令處理方法包括以下步驟:

步驟一,取指步驟,命令區(qū)主控模塊產(chǎn)生命令表讀取信號(hào)以及讀取信號(hào)地址,并通過命令表讀取模塊從表存儲(chǔ)器中讀取出命令數(shù)據(jù);

步驟二,譯碼步驟,命令區(qū)主控模塊將讀取出的命令數(shù)據(jù)傳輸至譯碼模塊進(jìn)行譯碼,產(chǎn)生相應(yīng)的命令標(biāo)志和使能信號(hào),同時(shí)在所述譯碼模塊中會(huì)對(duì)命令的接收和發(fā)送時(shí)序進(jìn)行控制,保證命令窗口的時(shí)間執(zhí)行結(jié)束;

步驟三,載入步驟,命令寄存器載入命令標(biāo)志;

步驟四,執(zhí)行步驟,命令寄存器將數(shù)據(jù)和同步脈沖信號(hào)發(fā)送到ARINC659總線上,同時(shí)將命令標(biāo)志和使能信號(hào)傳遞給DMA控制器;

步驟五,命令寄存器通過DMA控制器從IMM模塊中取出發(fā)送數(shù)據(jù)傳遞給ARINC659協(xié)議控制器,并將從ARINC659總線上收到的數(shù)據(jù)通過DMA控制器寫入IMM模塊中。

所述譯碼模塊完成譯碼后,如果當(dāng)前ARINC659總線不忙,所述譯碼模塊產(chǎn)生有效的載入信號(hào),將命令標(biāo)志載入命令寄存器;如果當(dāng)前ARINC659總線處在忙狀態(tài)時(shí),所述譯碼模塊等待ARINC659總線不忙后再產(chǎn)生有效的載入信號(hào),將譯碼命令載入命令寄存器,這樣減少ARINC659總線的負(fù)載。

所述執(zhí)行步驟開始時(shí)如果需要占用ARINC659總線,則產(chǎn)生ARINC659總線忙信號(hào),當(dāng)處在命令執(zhí)行階段且當(dāng)前ARINC659總線忙時(shí),則產(chǎn)生下一條指令的讀取信號(hào),對(duì)下一條指令進(jìn)行處理,從而實(shí)現(xiàn)流水線的操作,提升命令的執(zhí)行速度,這個(gè)執(zhí)行效率高。

命令表的處理算法的設(shè)計(jì)分為四個(gè)過程,下面對(duì)設(shè)計(jì)中的關(guān)鍵過程取指步驟的操作進(jìn)行詳細(xì)的設(shè)計(jì)說明。

如圖3所示,命令區(qū)主控模塊的取指操作主要通過狀態(tài)機(jī)控制下一個(gè)子窗口讀取命令。

reg_command_control(命令表取指初始狀態(tài)):當(dāng)前BIU(基本信息單元)處于同步狀態(tài)時(shí),或者失步狀態(tài)下接收到正確版本的長(zhǎng)同步消息,則進(jìn)入windows_next_read(讀取下一個(gè)子窗口命令狀態(tài))命令表窗口讀取狀態(tài)。

windows_next_read:產(chǎn)生有效的使能信號(hào)。如果當(dāng)前總線處在忙狀態(tài),進(jìn)入wait_load_command(等待總線空閑狀態(tài));如果不忙進(jìn)入command_excute(命令載入執(zhí)行狀態(tài))狀態(tài)。

command_excute:當(dāng)前指令載入結(jié)束后,進(jìn)入windows_next_read下一命令表窗口讀取狀態(tài)。當(dāng)命令譯碼為end(結(jié)束)指令時(shí),BIU直接進(jìn)入init(初始)狀態(tài)。

wait_load_command:當(dāng)總線空閑,進(jìn)入命令載入執(zhí)行狀態(tài)command_excute,或者其他無空閑跳轉(zhuǎn)指令時(shí),進(jìn)入下一個(gè)子窗口讀取狀態(tài)windows_next_read,并產(chǎn)生有效的load(載入)指令信號(hào)。如果當(dāng)前BIU狀態(tài)進(jìn)入失步狀態(tài),則進(jìn)入init初始狀態(tài)。

以上發(fā)明內(nèi)容,可采用FPGA(現(xiàn)場(chǎng)可編程門陣列)來實(shí)現(xiàn),也可以開發(fā)專用的ARINC659控制器芯片來實(shí)現(xiàn)。同時(shí)根據(jù)需要,也可以將FPGA或ARINC659控制器芯片放置在目標(biāo)系統(tǒng)應(yīng)用板上(如系統(tǒng)主板)。

采用FPGA或開發(fā)專用的ARINC659控制器芯片來實(shí)現(xiàn),其工作分為硬件設(shè)計(jì)和軟件設(shè)計(jì)。

利用本發(fā)明提供的方法,能準(zhǔn)確根據(jù)命令表的內(nèi)容進(jìn)行ARINC659命令的解析與傳輸,本發(fā)明主要針對(duì)ARINC659內(nèi)部的小型處理器進(jìn)行分析與設(shè)計(jì),主要目的為了滿足ARINC659總線協(xié)議命令傳輸?shù)臅r(shí)間確定性問題,什么時(shí)間執(zhí)行哪種命令,這種命令執(zhí)行多長(zhǎng)時(shí)間,命令執(zhí)行與執(zhí)行之間的時(shí)間間隔等問題進(jìn)行了邏輯設(shè)計(jì)。經(jīng)過測(cè)試,基于FPGA的ARINC659控制器能完全滿足ARINC659總線實(shí)時(shí)性的功能。

綜上所述,本發(fā)明結(jié)構(gòu)簡(jiǎn)單,成本低,滿足ARINC659總線的協(xié)議命令傳輸時(shí)間的確定性,同時(shí)滿足ARINC659總線的實(shí)時(shí)性功能。

以上對(duì)本發(fā)明的具體實(shí)施例進(jìn)行了描述。需要理解的是,本發(fā)明并不局限于上述特定實(shí)施方式,本領(lǐng)域技術(shù)人員可以在權(quán)利要求的范圍內(nèi)做出各種變形或修改,這并不影響本發(fā)明的實(shí)質(zhì)內(nèi)容。

當(dāng)前第1頁1 2 3 
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1
主站蜘蛛池模板: 南部县| 正镶白旗| 合肥市| 韩城市| 仪陇县| 苏尼特右旗| 赫章县| 福泉市| 长沙市| 五家渠市| 逊克县| 呼和浩特市| 禄丰县| 扶余县| 韶山市| 南乐县| 开平市| 临清市| 凤城市| 纳雍县| 额尔古纳市| 芜湖市| 收藏| 红河县| 凌源市| 永仁县| 松江区| 名山县| 阿拉善左旗| 东乡| 张家港市| 赤壁市| 治多县| 张家界市| 沽源县| 鹤壁市| 新田县| 鹤峰县| 寿宁县| 奉新县| 宁强县|