《電子技術(shù)應(yīng)用》
您所在的位置:首頁(yè) > 模擬設(shè)計(jì) > 業(yè)界動(dòng)態(tài) > 1553B總線應(yīng)用競(jìng)爭(zhēng)訪問(wèn)時(shí)序分析

1553B總線應(yīng)用競(jìng)爭(zhēng)訪問(wèn)時(shí)序分析

2015-12-13
作者: 劉士全,,黃 正,蔡潔明,,魏敬和

  摘  要: 軍工系統(tǒng)單位在應(yīng)用1553B總線控制器電路過(guò)程中,采用其零等待工作模式,,偶爾會(huì)遇到競(jìng)爭(zhēng)訪問(wèn)數(shù)據(jù)丟失的問(wèn)題,。文章詳細(xì)介紹了1553B總線控制器電路在應(yīng)用過(guò)程中競(jìng)爭(zhēng)訪問(wèn)產(chǎn)生的原因,并對(duì)競(jìng)爭(zhēng)訪問(wèn)和非競(jìng)爭(zhēng)訪問(wèn)之間的時(shí)序差異進(jìn)行了測(cè)試分析,,闡明了競(jìng)爭(zhēng)訪問(wèn)數(shù)據(jù)丟失的原因,給出了有效避免競(jìng)爭(zhēng)訪問(wèn)發(fā)生時(shí)數(shù)據(jù)丟失的時(shí)序配置方法,。

  關(guān)鍵詞: 1553B總線,;競(jìng)爭(zhēng)訪問(wèn);非競(jìng)爭(zhēng)訪問(wèn),;時(shí)序

0 引言

  1553B總線是美國(guó)軍用標(biāo)準(zhǔn)MIL-STD-1553B總線的簡(jiǎn)稱,,它采用帶屏蔽的雙絞線作為串行數(shù)據(jù)總線,使用時(shí)分制指令/響應(yīng)型傳輸協(xié)議,,其傳輸速率為1 Mb/s,,傳輸方式為半雙工,其形式類似一個(gè)局域網(wǎng)[1],。由于1553B總線的高可靠性和實(shí)時(shí)性[2],,使其在航空、航天等眾多型號(hào)單機(jī)系統(tǒng)中得到廣泛的應(yīng)用,。1553B總線通常由一個(gè)總線控制器(BC),、最多31個(gè)遠(yuǎn)程終端(RT)和一個(gè)總線監(jiān)控器(MT)組成[3]。目前航空,、航天系統(tǒng)使用最廣泛的1553B總線控制器有61580,、65170、61585,、64843等,。1553B總線控制器在應(yīng)用過(guò)程中,,通過(guò)主控制器(如MCU,、DSP、FPGA等)對(duì)其內(nèi)部寄存器及存儲(chǔ)器進(jìn)行配置及數(shù)據(jù)寫(xiě)入與讀出,。本文重點(diǎn)分析1553B總線控制器在應(yīng)用過(guò)程中產(chǎn)生競(jìng)爭(zhēng)訪問(wèn)的原因,、競(jìng)爭(zhēng)訪問(wèn)與非競(jìng)爭(zhēng)訪問(wèn)的時(shí)序差異、競(jìng)爭(zhēng)訪問(wèn)時(shí)數(shù)據(jù)丟失的原因及有效避免的方法,。

1 競(jìng)爭(zhēng)訪問(wèn)與非競(jìng)爭(zhēng)訪問(wèn)介紹

  1553B總線控制器為配合不同的主處理器(如16位的VC33,、3803、8位的80C51等)的使用,,提供了多種配置工作模式,,主要有8位/16位緩沖非零等待模式,、8位/16位緩沖零等待模式、16位透明模式,、16位直接存儲(chǔ)器存取模式[4]六種,。其中16位透明模式與16位直接存儲(chǔ)器存取模式需要使用外掛RAM,因此在航空,、航天單機(jī)系統(tǒng)中使用較少,;8位/16位緩沖非零等待模式和8位/16位緩沖零等待模式使用1553B總線控制器電路內(nèi)部RAM,在航空,、航天系統(tǒng)中被廣泛應(yīng)用,。但8位/16位緩沖零等待模式使用內(nèi)部共享的4K×16位RAM時(shí),通過(guò)軟件程序固定的讀寫(xiě)周期對(duì)內(nèi)部寄存器及共享RAM進(jìn)行讀寫(xiě)操作,。由于該模式讀寫(xiě)周期固定,,當(dāng)競(jìng)爭(zhēng)訪問(wèn)發(fā)生時(shí),偶爾會(huì)出現(xiàn)數(shù)據(jù)丟失的現(xiàn)象,。下面重點(diǎn)介紹該問(wèn)題產(chǎn)生的原因,。

001.jpg

  從圖1 1553B總線控制器內(nèi)部邏輯功能框圖[5]可以看出,1553B總線控制器內(nèi)部集成了一塊4K×16位的共享RAM,。首先1553B總線控制器內(nèi)部協(xié)議處理器可以通過(guò)數(shù)據(jù)總線和地址總線對(duì)4K×16位的共享RAM進(jìn)行讀寫(xiě)訪問(wèn),;其次外部主處理器CPU也可通過(guò)數(shù)據(jù)總線和地址總線對(duì)4K×16位的共享RAM進(jìn)行讀寫(xiě)訪問(wèn)(但通過(guò)了一級(jí)數(shù)據(jù)、地址緩沖器),。當(dāng)1553B總線控制器內(nèi)部協(xié)議處理器和外部主處理器CPU同時(shí)對(duì)4K×16位的共享RAM進(jìn)行讀寫(xiě)訪問(wèn)時(shí),,這時(shí)就產(chǎn)生了競(jìng)爭(zhēng)訪問(wèn)[6]。當(dāng)競(jìng)爭(zhēng)訪問(wèn)產(chǎn)生時(shí),,如前一個(gè)數(shù)據(jù)還沒(méi)有被寫(xiě)入內(nèi)部的共享RAM,,就會(huì)在數(shù)據(jù)緩沖區(qū)里等待內(nèi)部協(xié)議處理器結(jié)束,以完成當(dāng)前共享RAM的訪問(wèn),;下一個(gè)數(shù)據(jù)再次到來(lái)時(shí),,將無(wú)法寫(xiě)入數(shù)據(jù)緩沖區(qū),導(dǎo)致當(dāng)前寫(xiě)入的數(shù)據(jù)丟失,。當(dāng)1553B總線控制器內(nèi)部的協(xié)議處理器和外部主處理器CPU對(duì)4K×16位的共享RAM輪流進(jìn)行讀寫(xiě)訪問(wèn)時(shí),,則為非競(jìng)爭(zhēng)訪問(wèn)。非競(jìng)爭(zhēng)訪問(wèn)不會(huì)發(fā)生數(shù)據(jù)丟失的現(xiàn)象,。

2 競(jìng)爭(zhēng)訪問(wèn)與非競(jìng)爭(zhēng)訪問(wèn)時(shí)序分析

002.jpg

  以16位緩沖零等待模式外部主處理器寫(xiě)內(nèi)部共享RAM為例,,重點(diǎn)介紹競(jìng)爭(zhēng)訪問(wèn)與非競(jìng)爭(zhēng)訪問(wèn)之間的時(shí)序差異。從圖2的16位緩沖零等待寫(xiě)內(nèi)部RAM時(shí)序圖可以看出,,STRBD信號(hào)控制了內(nèi)部RAM的寫(xiě)入周期,,READYD信號(hào)反映了數(shù)據(jù)寫(xiě)入的時(shí)間過(guò)程,READYD高電平表示數(shù)據(jù)正在寫(xiě)入內(nèi)部共享RAM,,IOEN信號(hào)低電平表示數(shù)據(jù)寫(xiě)入成功,,本次測(cè)試分析了t14的時(shí)間長(zhǎng)度(READYD信號(hào)高電平持續(xù)時(shí)間),,該時(shí)間可有效反應(yīng)競(jìng)爭(zhēng)訪問(wèn)與非競(jìng)爭(zhēng)訪問(wèn)之間的時(shí)序差異。

  試驗(yàn)測(cè)試板通過(guò)主處理器CPU對(duì)1553B總線控制器電路(DDC公司生產(chǎn)的BU-65170S6-110K)內(nèi)部寄存器和RAM進(jìn)行配置,,配置1553B總線控制器電路工作在遠(yuǎn)程終端RT模式下,。配置成功后再對(duì)某一固定地址區(qū)域循環(huán)寫(xiě)入遞增的數(shù)據(jù),寫(xiě)入數(shù)據(jù)的周期通過(guò)軟件編程進(jìn)行改變,;同時(shí)通過(guò)另外一塊測(cè)試板卡總線控制器BC對(duì)本RT進(jìn)行循環(huán)訪問(wèn)該取數(shù)據(jù)[7],。利用示波器對(duì)STRBD、READYD,、IOEN信號(hào)進(jìn)行監(jiān)測(cè),,并對(duì)總線通信數(shù)據(jù)進(jìn)行實(shí)時(shí)記錄,判斷數(shù)據(jù)是否為連續(xù)數(shù)據(jù)[8],。

2.1 非競(jìng)爭(zhēng)訪問(wèn)時(shí)序測(cè)試

  寫(xiě)入數(shù)據(jù)的周期通過(guò)軟件編程控制在每2 s寫(xiě)入一次,并通過(guò)中斷信號(hào)控制主處理器CPU寫(xiě)入數(shù)據(jù),,與總線控制器BC對(duì)RT進(jìn)行取數(shù)據(jù)輪流進(jìn)行,,避免主處理器CPU與1553B總線控制器內(nèi)部協(xié)議處理器同時(shí)對(duì)內(nèi)部共享RAM進(jìn)行訪問(wèn)的發(fā)生,即非競(jìng)爭(zhēng)訪問(wèn),。測(cè)試波形如圖3所示,。

003.jpg

  通過(guò)圖3的波形可測(cè)得在非競(jìng)爭(zhēng)訪問(wèn)的情況下,當(dāng)STRBD低電平寬度為500 ns時(shí),,READYD信號(hào)的高電平寬度為720 ns,,并對(duì)實(shí)時(shí)記錄的總線通信數(shù)據(jù)進(jìn)行分析,在非競(jìng)爭(zhēng)訪問(wèn)的情況下,,寫(xiě)入數(shù)據(jù)與總線讀出數(shù)據(jù)一致,,均為連續(xù)數(shù)據(jù),未出現(xiàn)數(shù)據(jù)丟失的現(xiàn)象,。

  2.2 競(jìng)爭(zhēng)訪問(wèn)數(shù)據(jù)丟失時(shí)序測(cè)試

  寫(xiě)入數(shù)據(jù)的周期通過(guò)軟件編程控制在2 s一次,,并在主處理器CPU寫(xiě)入數(shù)據(jù)的同時(shí),通過(guò)總線控制器BC對(duì)RT進(jìn)行取數(shù)據(jù),,以造成主處理器CPU和1553B總線控制器內(nèi)部協(xié)議處理器同時(shí)對(duì)內(nèi)部4K×16位共享RAM進(jìn)行訪問(wèn),,即競(jìng)爭(zhēng)訪問(wèn)。測(cè)試波形如圖4所示,。

004.jpg

  通過(guò)圖4的波形可測(cè)得在競(jìng)爭(zhēng)訪問(wèn)的情況下,,當(dāng)STRBD低電平寬度為500 ns時(shí),READYD信號(hào)的高電平寬度為3.12 s,,并對(duì)實(shí)時(shí)記錄的總線通信數(shù)據(jù)進(jìn)行分析,,在競(jìng)爭(zhēng)訪問(wèn)的情況下,寫(xiě)入數(shù)據(jù)與總線讀出數(shù)據(jù)有不一致的現(xiàn)象,,總線讀出的數(shù)據(jù)為不連續(xù)數(shù)據(jù),,在寫(xiě)入周期為2 s的情況下,,當(dāng)競(jìng)爭(zhēng)訪問(wèn)發(fā)生時(shí)出現(xiàn)了數(shù)據(jù)丟失的現(xiàn)象。

  從測(cè)試波形可以看出,,競(jìng)爭(zhēng)訪問(wèn)發(fā)生時(shí),,即外部通信總線通過(guò)1553B總線控制器內(nèi)部協(xié)議處理器從共享RAM取數(shù)據(jù),與主控制器CPU向內(nèi)部共享RAM寫(xiě)數(shù)據(jù)同時(shí)進(jìn)行,,數(shù)據(jù)寫(xiě)入內(nèi)部共享RAM的時(shí)間變長(zhǎng)[9],,即數(shù)據(jù)在排隊(duì)等待寫(xiě)入內(nèi)部共享RAM,如果此時(shí)下一個(gè)寫(xiě)周期到來(lái),,這個(gè)數(shù)據(jù)將無(wú)法寫(xiě)入內(nèi)部共享RAM,,出現(xiàn)數(shù)據(jù)丟失。

  2.3 競(jìng)爭(zhēng)訪問(wèn)數(shù)據(jù)未丟失時(shí)序測(cè)試

  寫(xiě)入數(shù)據(jù)的周期通過(guò)軟件編程控制在每5 s寫(xiě)入一次,,并在主處理器CPU寫(xiě)入數(shù)據(jù)的同時(shí),,通過(guò)總線控制器BC對(duì)RT進(jìn)行取數(shù)據(jù),以造成主處理器CPU和1553B總線控制器內(nèi)部協(xié)議處理器同時(shí)對(duì)內(nèi)部4K×16位共享RAM進(jìn)行訪問(wèn)[10],,即競(jìng)爭(zhēng)訪問(wèn),。測(cè)試波形如圖5所示。

005.jpg

  通過(guò)圖5的波形可測(cè)得在競(jìng)爭(zhēng)訪問(wèn)的情況下,,當(dāng)STRBD低電平寬度為250 ns時(shí),,READYD信號(hào)的高電平寬度為3.12 s,并對(duì)實(shí)時(shí)記錄的總線通信數(shù)據(jù)進(jìn)行分析,,在競(jìng)爭(zhēng)訪問(wèn)的情況下,,寫(xiě)入數(shù)據(jù)與總線讀出數(shù)據(jù)一致,均為連續(xù)數(shù)據(jù),,在寫(xiě)入周期為5 s的情況下,,當(dāng)競(jìng)爭(zhēng)訪問(wèn)發(fā)生時(shí)未出現(xiàn)數(shù)據(jù)丟失的現(xiàn)象。

3 結(jié)論

  在1553B總線控制器電路應(yīng)用過(guò)程中,,如果外部主處理器CPU與1553B總線控制器內(nèi)部協(xié)議處理器(即1553B總線收發(fā)數(shù)據(jù))同時(shí)對(duì)內(nèi)部4K×16位RAM進(jìn)行讀寫(xiě)操作,,就會(huì)造成競(jìng)爭(zhēng)訪問(wèn),在競(jìng)爭(zhēng)訪問(wèn)發(fā)生時(shí)如果外部主處理器CPU寫(xiě)入與讀出周期控制不當(dāng),,就會(huì)造成數(shù)據(jù)的丟失,。為有效保證競(jìng)爭(zhēng)訪問(wèn)發(fā)生時(shí)數(shù)據(jù)可正確地寫(xiě)入與讀出,可通過(guò)合理控制外部主處理器CPU寫(xiě)入與讀出周期實(shí)現(xiàn),。在競(jìng)爭(zhēng)訪問(wèn)發(fā)生時(shí)(即READYD高電平期間)避開(kāi)數(shù)據(jù)的寫(xiě)入與讀出,,即可有效避免數(shù)據(jù)的寫(xiě)入與讀出失敗。本文對(duì)16位緩沖零等待模式下競(jìng)爭(zhēng)訪問(wèn)時(shí)間進(jìn)行了實(shí)測(cè),,當(dāng)STRBD低電平寬度為500 ns時(shí),,實(shí)測(cè)READYD高電平寬度最大值為3.12 s,則讀寫(xiě)周期控制在3.12 s+0.125 s(2個(gè)CLK周期)=3.245 s以上即可保證數(shù)據(jù)可靠寫(xiě)入與讀出,可有效避免數(shù)據(jù)丟失,。

參考文獻(xiàn)

  [1] Condor Engineering Inc. MIL—STD—1553 Protocol Tutorial[S]. 2004.

  [2] DDC. ACE/Mini-ACE Series BC/RT/MT Advanced Communication Engine Integrated 1553 Terminal User′s Guide[S].2008.

  [3] Condor Engineering Inc. BusTools—1553—API Software Reference Manual[S]. 2004.

  [4] DDC. MIL—STD—1553B Designer′s Guide[S].USA.1998.

  [5] DDC. BU-65170/61580 and BU-61585 datasheet[S].1999.

  [6] Data Device Corporation. Rebirth of the 1553 data bus[C]. 2006:3-4.

  [7] GLASS M. Enhanced mini-ACE architecture offloads host processor for BC applications[Z]. Application Note AN/B-32,,2006:1-6.

  [8] LOS G. Asynchronous asynchronous message insertion for DDC′s enhanced mini-ACE series[Z]. Application Note AN/B-42,2006:1-7.

  [9] Wu Kan,, Jiang Jingfei. Research and design of 1553B fault-tolerant communication protocol[J]. Energy Procedia,,2011,16(1):2-3.

  [10] 黃長(zhǎng)春,,徐抒巖.基于DSP的1553B總線系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)[J].電子設(shè)計(jì)工程,,2010(8):4-7.


本站內(nèi)容除特別聲明的原創(chuàng)文章之外,轉(zhuǎn)載內(nèi)容只為傳遞更多信息,,并不代表本網(wǎng)站贊同其觀點(diǎn),。轉(zhuǎn)載的所有的文章、圖片,、音/視頻文件等資料的版權(quán)歸版權(quán)所有權(quán)人所有,。本站采用的非本站原創(chuàng)文章及圖片等內(nèi)容無(wú)法一一聯(lián)系確認(rèn)版權(quán)者。如涉及作品內(nèi)容,、版權(quán)和其它問(wèn)題,,請(qǐng)及時(shí)通過(guò)電子郵件或電話通知我們,以便迅速采取適當(dāng)措施,,避免給雙方造成不必要的經(jīng)濟(jì)損失。聯(lián)系電話:010-82306118,;郵箱:[email protected],。