張春熹 楊玉生 文懷濤
(北京航空航天大學 儀器科學與光電工程學院,北京 100191)
IEEE-1394b總線等時傳輸性能分析
張春熹 楊玉生 文懷濤
(北京航空航天大學 儀器科學與光電工程學院,北京 100191)
IEEE-1394b是一種高速數據總線,已成功應用于航空電子中.其等時傳輸保證數據傳輸具有確定的延時,廣泛應用于多媒體數據的傳輸.為解決等時傳輸中的性能評價問題,基于確定與隨機 Petri網(DSPN,Deterministic and Stochastic Petri Net),建立了 IEEE-1394b總線等時傳輸的模型.模型考慮了對等時傳輸性能影響較大的帶寬預留和仲裁機制的影響,精確描述了總線行為.通過對模型的仿真分析,得到了等時傳輸的吞吐量和平均等待時間等性能指標與節點數量、數據包大小以及數據包到達速率的關系,并得到了 IEEE-1394b等時傳輸總線吞吐量的極限.
航空電子;總線;IEEE-1394b;性能;Petri網;等時傳輸
IEEE 1394b[1](以下簡稱 1394b)是一種新型高速數據總線,傳輸速率達到 800Mbps并支持光纖傳輸和 COTS(Commercial-Off-The-Shelf)技術,已經成功地應用于航空航天領域,是一種很有應用潛力的總線.
國外從 20世紀 90年代就展開了對 1394總線的研究,針對其性能分析也做了一些研究[2],但是對 1394b總線研究的報道還不多.
國內對 1394的研究起步較晚,雖然也有一些研究報道[3],但是對1394b的研究,尤其是對其進行性能分析的研究并不成熟,本文的研究對1394b總線的應用具有參考意義.
1394b的等時傳輸機制強調數據傳輸的實時性,而對數據中的某些位出現錯誤并不十分關心,主要用于多媒體信息的傳輸.1394b的帶寬預留機制保證等時傳輸具有可預測的延時.希望發起等時事務的節點首先從等時資源管理器分配所需要的帶寬和傳輸的通道號碼.在分配資源時,不但要考慮數據的大小,還要考慮總線仲裁等相關時間,在獲得了相應的資源后,節點才可以開始仲裁總線,傳輸數據.
1394b協議引進了新的仲裁機制,稱為總線擁有者 /監管者 /選擇者(BOSS,Bus Owner/Supervisor/Selector)仲裁,該仲裁方式主要包括以下幾個方面:
1)采用全雙工方式,在數據傳輸的同時,仲裁請求信號在與數據傳輸相反的方向上傳輸.
2)仲裁的決定者是 BOSS節點而不是總線管理器節點.在子事務中最后傳輸數據的節點將成為 BOSS節點.
3)總線上采用令牌(token)代替傳統 1394總線上的空閑(gap)來界定各種總線事務,令牌中包含了當前總線的相位信息.
4)采用了具有優先級的仲裁隊列方式,保證節點可以公平地訪問總線.總線上的仲裁信號有兩個相位(phase),奇相位和偶相位,這兩個相位依次順序切換.所有的仲裁信號都是與相位相關的,在不同的相位中其優先級不同,具體情況如表1所示.所有的節點都將根據數據請求的優先級來確定仲裁總線的順序.

表 1 等時仲裁優先級
1394b等時傳輸的節點確定與隨機 Petri網(DSPN,Determ inistic and Stochastic Petri Net)模型如圖 1所示.
模型中將弧的弧權函數標注在弧上,用“#”加“位置名稱”表示位置中所有的標記數量,如#P1表示位置 P1中所有的標記數量.默認位置容量為無限大.模型中包含了 24個位置,22個變遷,其中 15個瞬時變遷,1個隨機時間變遷,6個確定時間變遷.主要的位置、變遷以及他們的含義見表 2、表 3.

圖1 1394b等時傳輸的節點 DSPN模型
模型由 4個部分組成,虛線右側的部分代表總線上所有節點共享的公共資源,包括等時循環計時器 P15,T13,可用帶寬資源寄存器 P12,可用通道寄存器 P13,總線控制權 P21,總線忙狀態P23和總線空閑狀態 P22.虛線左側的部分代表節點的私有資源,分為 3個部分.
1)位置 P4及其以上的部分,這部分模擬1394b的帶寬預留機制.當有數據到達時,T1實施,數據進入 P2位置準備請求分配資源.如果節點已經獲得了資源,即#P11>0,則變遷 T8實施,數據進入P4位置等待仲裁總線.如果節點還沒有獲得所需要的資源,則節點通過 P3向等時資源管理器申請資源.如果#P12>ReqBW(ReqBW表示節點需要分配的帶寬資源),同時#P13>0,說明總線上有足夠的帶寬和通道資源,節點成功獲得所需要的資源,T3實施,從 P12中移走 ReqBW個標記,從 P13中移走一個標記.如果 #P12<ReqBW,或者#P13<0,說明總線沒有足夠的資源,節點分配資源失敗,T9實施.節點將等待一段時間 T10(約為 1 s)后再次申請資源.若帶寬預留成功,即 T3實施,節點將結束帶寬預留過程進入P4位置等待仲裁總線,這就是帶寬預留過程.

表 2 模型中主要的位置及其含義

表 3 模型中主要的變遷及其含義
2)位置 P4到 P7之間的部分,這部分模擬了1394b總線的 BOSS仲裁過程.變遷實施序列T4T5T6,T4T5T12T11模擬了 current(當前相位)隊列的仲裁過程.而 T15T18T20,T15T18T19T16則模擬了 next相位仲裁隊列的仲裁過程.當有請求到達 P4位置后,如果#P17>0,說明節點在本周期中還沒有發送數據,則 T4可實施,數據進入current隊列 P5;否則,T15實施,數據進入 next相位隊列 P16.由于 current隊列中的請求具有比next隊列中請求更高的優先級,所以當 P5中有標記時,說明總線有當前相位請求,next請求將被禁止實施,禁止弧(P5,T18)模擬了上述優先級差異.此外,通過將 T6的優先級設置為 5,大于 T20的優先級 4,可以保證當有多個節點同時仲裁總線時,current請求首先得到響應,這也是與協議相符的.由于 current隊列和 next隊列中的仲裁過程完全一致,所以以 current為例來說明節點的仲裁過程.在請求隊列中有請求時,如果此時總線已經可以仲裁,即#P17>0,則 T5實施,節點仲裁總線.如果#P21>0,說明總線上還沒有其他節點成功仲裁總線,所以本節點仲裁成功,T6實施.否則,T12實施,節點仲裁失敗.仲裁失敗之后,節點會等待總線發送完數據之后重新開始仲裁總線.模型中體現為 T11的實施需要條件#P21>0,說明節點仲裁失敗后,只有等待仲裁成功的節點發送完數據釋放總線控制權時,節點才可以重新開始申請仲裁總線.
3)剩余的部分模擬了總線仲裁成功后發送數據的過程.P22和 P23通過兩個變遷 T7和 T21相互轉換,代表的總線發送數據時總線由空閑狀態轉為忙狀態,發送完成后由忙轉化為空閑狀態.
節點模型描述了總線上只有一個節點的情況,但是應用中總線上往往不止一個節點,所以需要系統模型來描述總線上有多個節點時總線的行為.通過設置多個節點共用節點模型中的公共資源,即可得到總線的系統模型.
TimeNet[4]是一種 DSPN仿真分析工具,在DSPN仿真分析中得到了廣泛的應用.本文采用該軟件對模型進行仿真分析.分析中仿真參數設置如下:置信區間為 99%,最大相對誤差為 5%,總線傳輸速率 S=800Mbps,總共的可用帶寬BW=4915.
根據 little定理,節點的吞吐量:

current隊列中數據包的平均等待時間:

next隊列中數據包的平均等待時間:
其中,E{#P4}表示 P4中標記的數量;Tgen表示數據到達延時,對應模型中 T1的延時參數.
吞吐量 P和平均等待時間 T是衡量總線性能的兩個重要性能指標,數據包大小 D和數據包到達速率 V是影響總線負載的參數,本文針對這兩項性能指標與總線負載參數之間的關系進行仿真分析.


由上式可得,N為 1,2,3,4時,總線帶寬預留中能夠允許的最大數據包大小分別為8K字節(等時傳輸中,Dp最大為 8K字節),4 902字節,3264字節和 2444字節.所以 D小于 2 444字節時,總線上有 4個節點進行數據傳輸,從圖 2a中可以看出:此時總線吞吐量是單節點時的 4倍.D介于2444字節和 3264字節之間時,總線上有3個節點傳輸數據,總線吞吐量是單節點時的 3倍.同理,D介于 3264字節和 4902字節之間時,總線吞吐量是單節點時的 2倍.D大于 4902字節后,多節點的吞吐量與單節點相同.以上分析說明,在成功進行帶寬預留的情況下,總線的吞吐量與節點數量成正比,與數據包大小成正比.
從圖 2b中可以看出:在 P小于 8 000包/s時,P與 V成正比,當 V大于 8000包 /s之后,P不再變化.這是因為等時傳輸周期為 125μs,在每個等時周期中,節點在一個通道中最多只可以發送一次數據.即等時數據包發送能夠達到的最高頻率就是 8 000包/s.所以當數據包速率大于8000包 /s后,吞吐量不再增加.

圖2 P與 D和 V的關系
T與 D和 V的關系如圖 3所示.圖中 CQ表示當前相位隊列,NQ表示 next隊列.從圖 3a中可以看出:T基本沒有隨著 D的變化而變化.雖然在多節點的 NQ隊列中 T稍微有些波動,但是整體上 D對 T沒有影響.而且,NQ中的平均等待時間要大于 CQ中的.這是因為帶寬預留機制保證無論數據包多大,節點在每個等時循環周期中都可以發送一個數據包.所以數據包大小變化對等待時間沒有影響.而 BOSS仲裁中,current隊列具有比 next隊列更高的優先級,所以 CQ中的平均等待時間小于 NQ中的.在應用中,用戶無法區分CQ和 NQ,只要其中一個比較大,就會對用戶產生影響.所以應用中應該以 CQ和NQ中T較大的一個作為性能分析的依據,即以 NQ中的平均等待時間作為性能分析的依據.從圖 3a中可以看出:單節點和多節點 NQ中的平均等待時間基本相等,而且不隨著數據包大小變化而變化,說明數據包大小和節點數量對平均等待時間沒有影響.
T與 V的關系如圖 3b所示.可以看出:單節點和多節點 NQ中的平均等待時間相等,說明節點數量對 NQ中的平均等待時間沒有影響.此外,NQ中的平均等待時間比 CQ中的大,這些與上面分析的結果一致.如上所述,應用中應該以 CQ和NQ兩個隊列中平均等待時間較大的一個作為標準來衡量總線性能,即以 NQ中的平均等待時間作為性能分析的依據.這樣可以得到應用中,T隨著 V的增加而增大.當 V小于 6000包 /s時,T緩慢增加.V大于 6000包/s之后,T開始迅速增大,當 V達到 7800包/s時,平均等待時間已經接近無窮大.如果以 200μs作為 T的閾值,V不應該超過6000包/s.

圖3 T與 D和V的關系
T和 P的關系如圖 4所示.因為 D越大,P可以達到的極限值越大,所以為了能夠得到節點和總線吞吐量的極限值,在單節點模型仿真中本文取 D=8K字節,這是等時傳輸中數據包允許的最大值.在4節點模型仿真中取 D=2444字節,總線上恰好可以允許 4個節點同時傳輸數據,此時得到的性能指標可以作為多節點總線性能的極限值.
從圖4中可以看出:單節點時P最大可以達到 511 Mbps,而多節點時,P最大可以達到587Mbps,此時數據的平均等待時間已經接近無窮大.應用中如果以 200μs作為平均等待時間的閾值,從圖 4中可以得到,此時單節點總線吞吐量可以達到 365Mbps,而多節點總線吞吐量可以達到430Mbps.

圖4 T和 P的關系
本文針對 IEEE-1394b總線等時傳輸的性能評價問題展開研究,通過對等時傳輸中的帶寬預留和仲裁機制的抽象,最終建立了等時傳輸的DSPN模型并對模型進行了仿真分析.通過仿真分析,給出了吞吐量與數據包大小和數據包速率的關系,得到了平均等待時間與數據包大小無關的結論.此外,得到了總線吞吐量的理論極限值和應用中的極限值.
References)
[1]IEEE Std 1394b-2002 IEEE standard for a high performance serial bus-amendment 2[S]
[2]Huang Chihyuan,Kuo Teiwei,Pang Aichun.Qos for storage subsystems using IEEE-1394[J].ACM Transactions on Storage,2009,4(4):12:1-12:17
[3]段靖遠,張春熹,史潔琴.IEEE-1394b光纖總線系統的 Qos分析[J].北京航空航天大學學報,2008,34(4):396-399 Duan Jingyuan,Zhang Chunxi,Shi Jieqin.Qosanalysison IEEE-1394b fiber optical bus system[J].Journal of Beijing University of Aeronautics and Astronautics,2008,34(4):396-399(in Chinese)
[4]Zimmermann A rm in,Knoke Michael.TimeNet user manual 4.0[EB/OL].Berlin:Real-Time Systems and Robotics Group,2007[2009-07-10].http://iv.tu-berlin.de/TechnBerichte/2007/2007-13.pdf
(編 輯:趙海容)
Performance analysis of IEEE-1394b bus isochronous transmission
Zhang Chunxi Yang Yusheng Wen Huaitao
(School of Instrument Science and Opto-electronics Engineering,Beijing University of Aeronautics and Astronautics,Beijing 100191,China)
IEEE-1394b is a high speed data bus,which has been successfully utilized in avionics.Its isochronous transmission assures definite transmission delay of data,and is widely adopted in multimedia data transmission.To solve the performance evaluation problem of isochronous transmission,deterministic and stochastic Petrinet(DSPN)model of IEEE-1394b isochronous transmission was developed.The proposed model considers the effect of bandwidth reservation and arbitration mechanism,which have remarkable effect on isochronous transmission performance,and the bus activity was described precisely.Through simulation,the relations among system's throughput,average waiting time,packet size,packet arrival rate and node count were numerical studied.The limitation of IEEE-1394b isochronous transmission throughput was also obtained.
avionics;bus;IEEE-1394b;performance;Petri net;isochronous transmission
V 243
A
1001-5965(2010)11-1281-05
2009-10-16
張春熹(1965-),男,湖南岳陽人,教授,zhang-chunxi@163.com.