IEEE-1394b总线等时传输性能分析

2010-03-16 09:22张春熹杨玉生文怀涛
北京航空航天大学学报 2010年11期
关键词:等待时间字节队列

张春熹 杨玉生 文怀涛

(北京航空航天大学 仪器科学与光电工程学院,北京 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总线的应用具有参考意义.

1 1394b等时传输及 BOSS仲裁

1394b的等时传输机制强调数据传输的实时性,而对数据中的某些位出现错误并不十分关心,主要用于多媒体信息的传输.1394b的带宽预留机制保证等时传输具有可预测的延时.希望发起等时事务的节点首先从等时资源管理器分配所需要的带宽和传输的通道号码.在分配资源时,不但要考虑数据的大小,还要考虑总线仲裁等相关时间,在获得了相应的资源后,节点才可以开始仲裁总线,传输数据.

1394b协议引进了新的仲裁机制,称为总线拥有者 /监管者 /选择者(BOSS,Bus Owner/Supervisor/Selector)仲裁,该仲裁方式主要包括以下几个方面:

1)采用全双工方式,在数据传输的同时,仲裁请求信号在与数据传输相反的方向上传输.

2)仲裁的决定者是 BOSS节点而不是总线管理器节点.在子事务中最后传输数据的节点将成为 BOSS节点.

3)总线上采用令牌(token)代替传统 1394总线上的空闲(gap)来界定各种总线事务,令牌中包含了当前总线的相位信息.

4)采用了具有优先级的仲裁队列方式,保证节点可以公平地访问总线.总线上的仲裁信号有两个相位(phase),奇相位和偶相位,这两个相位依次顺序切换.所有的仲裁信号都是与相位相关的,在不同的相位中其优先级不同,具体情况如表1所示.所有的节点都将根据数据请求的优先级来确定仲裁总线的顺序.

表 1 等时仲裁优先级

2 1394b等时传输的 DSPN模型

2.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相互转换,代表的总线发送数据时总线由空闲状态转为忙状态,发送完成后由忙转化为空闲状态.

2.2 系统模型

节点模型描述了总线上只有一个节点的情况,但是应用中总线上往往不止一个节点,所以需要系统模型来描述总线上有多个节点时总线的行为.通过设置多个节点共用节点模型中的公共资源,即可得到总线的系统模型.

3 模型仿真及性能分析

3.1 仿真环境

TimeNet[4]是一种 DSPN仿真分析工具,在DSPN仿真分析中得到了广泛的应用.本文采用该软件对模型进行仿真分析.分析中仿真参数设置如下:置信区间为 99%,最大相对误差为 5%,总线传输速率 S=800Mbps,总共的可用带宽BW=4915.

根据 little定理,节点的吞吐量:

current队列中数据包的平均等待时间:

next队列中数据包的平均等待时间:

其中,E{#P4}表示 P4中标记的数量;Tgen表示数据到达延时,对应模型中 T1的延时参数.

3.2 性能分析

吞吐量 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的关系

4 结 论

本文针对 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.

猜你喜欢
等待时间字节队列
给学生适宜的等待时间
——国外课堂互动等待时间研究的现状与启示
No.8 字节跳动将推出独立出口电商APP
队列队形体育教案
队列里的小秘密
基于多队列切换的SDN拥塞控制*
No.10 “字节跳动手机”要来了?
在队列里
轻量级分组密码Midori64的积分攻击
顾客等待心理的十条原则
顾客等待心理的十条原则