-
摘要:
为满足未来航电系统音视频信息传输的需求,考虑车载嵌入式系统的候选实时多媒体网络AVB在航电环境中的应用,并对AVB与AFDX的传输进行了对比研究。首先构建AVB与AFDX标准对比;其次提出基于网络演算的AVB和AFDX端到端延迟计算方法;然后通过定义不同的消息传输场景,采用理论方法分析消息传输实时性的干扰要素;最后利用仿真方法予以验证。在典型1 000条虚拟链路的组网规模下,结果显示:AFDX高优先级流量的端到端延迟优于AVB,对于低优先级流量端到端延迟,则AVB和AFDX各有优劣;但受突发的流量影响,在增加50条各0.22 Mbit/s带宽的低优先级流量干扰情况下,高优先级流量平均端到端延迟的变化率在AVB中为0.25%,在AFDX中为0.38%;在增加50条各0.22 Mbit/s带宽的高优先级流量干扰情况下,低优先级流量平均端到端延迟的变化率在AVB中为5.17%,在AFDX中为10.25%。结果表明:时间敏感消息在AVB网络中传输实时性的抗干扰能力优于AFDX。
-
关键词:
- 航空电子网络 /
- 音视频桥接(AVB)网络 /
- 航空电子全双工交换以太网(AFDX) /
- 实时性 /
- 抗干扰
Abstract:AVB is considered to meet the demands of audio video transmission in future avionics system, which is a real-time multimedia network and has become a candidate for in-vehicle embedded systems. Comparative study on AFDX and AVB is implemented. First, standards of AVB and AFDX are compared. Second, the method for end-to-end delay in AVB and AFDX is discussed by network calculus. Then the elements interfering real-time transmission are analyzed depending on different transmission scenarios. Conclusions are verified by simulation. In typical networking with 1 000 virtual links, the results show that the end-to-end delay of high priority traffic in AFDX is smaller than that in AVB; the advantage and disadvantage of end-to-end delay for low priority traffic exist in both AVB and AFDX. But influenced by the burst 50 low priority streams (each with 0.22 Mbit/s bandwidth), the variation rate of average end-to-end delay for high priority traffic is 0.25% in AVB and 0.38% in AFDX; influenced by the burst 50 high priority streams (each with 0.22 Mbit/s bandwidth), the variation rate of low priority traffic is 5.17% in AVB and 10.25% in AFDX. Real-time anti-jamming transmission of time-sensitive information in AVB is superior to AFDX.
-
图像翘曲变换是一种常见的图像处理方法,其将几何变换关系应用于图像中的每个像素,使原始平面图像经扭曲形变后变换为目的曲面图像。图像翘曲变换应用广泛,如镜头失真校正[1-2]、立体视觉图像校正[3-4]、生成全景图像的翘曲拼接[5]等。本文主要研究用于车载平视显示(Head-Up Display, HUD)系统的图像翘曲变换,它是将仪表、路况等平面信息显示在汽车的前挡风玻璃曲面上,减少驾驶员因低头查看信息而造成的安全隐患问题。
在已有的实现图像翘曲变换的方案中,使用图形处理器(Graphic Processing Unit,GPU)内置的数千个内核并行处理数据[6-7]时速度快、实时性好,但数据传输过程复杂,开销大。行缓冲器及其改进方案[8-10]不需使用外存储器时,对于高分辨率的图像,片上压力过大;使用外存储器加行缓冲器时,存储资源较为紧张。考虑到实现复杂程度及高分辨率图像可拓展性,本文将原始图像像素存储在双倍速率同步动态随机存储器(Double Data Rate Synchronous Dynamic Random Access Memory,DDR SDRAM)中。
在图像翘曲变换过程中,通过逐点计算已知目的像素坐标获得原始像素坐标,读取原始像素,但读取顺序是非线性的,即读取不是从左到右逐点、从上到下逐行按顺序进行。由于DDR最高效的访问方式是对连续地址的突发式(burst)读写,非线性读取原始像素会极大增加访问次数、降低访问效率。通常使用高速缓冲存储器(Cache)解决以上问题,通用图像Cache[11]功能结构复杂,实现难度大。专门用于图像翘曲变换的Cache[12]效果较好,但更适用于预先确定像素访问顺序而不是逐点计算目的像素坐标,且Cache存储资源使用量较大。
为实现HUD系统中的图像翘曲变换,并解决非线性读取原始像素造成的存储器访问效率下降问题,本文设计实现了一种高效率Cache,研究创新性体现在以下3个方面。①考虑到在小规模应用场景下的灵活配置优势,将原始图像像素存储在分布式随机存储器(Random Access Memory,RAM)中[13]。在Cache存储结构确定的情况下,存储不同图像位深度的像素数据会造成存储资源的浪费,本文提出存储空间分离管理技术来节省存储资源。②Cache地址命中判断过程中进行多位地址比较时,逻辑资源使用量大,本文提出地址分级比较技术来节省逻辑资源。③Cache容量不足会影响命中率,容量过大会增加面积和功耗[14-15],本文提出一种Cache容量动态调整的方法,在保证命中率的前提下减小Cache容量,降低动态功耗及静态功耗。
1. 图像翘曲变换模型分析
图像翘曲变换过程包括坐标映射和插值运算2个步骤。贝塞尔曲面具有良好的自由特性,仅通过改变控制点的位置及权重就可以改变曲面的形状。HUD系统采用贝塞尔曲面模拟汽车的前挡风玻璃。原始图像与目的图像像素坐标映射关系为
(1) 式中:P(x, y)为原始图像像素点;Q(u, v)为目的图像像素点;H为两者之间映射关系。在实际应用中,由已知的目的像素坐标求得原始像素坐标:
(2) (x, y)整数部分为像素坐标,小数部分为像素权重。用于双线性插值的4个像素点坐标为
表示对数据向下取整。图像翘曲变换中像素坐标映射关系如图 1所示。输入一个目的像素坐标,得到4个原始像素坐标,插值运算模块依次读取位于原始图像两行内的4个像素点。DDR的实际访问效率与突发式读、写数据的个数N有关,每次从DDR中读取一个像素数据时,实际访问效率变为突发式读取访问效率与突发式读取数据个数N的比值。此外,不同的目的像素可能对应相同的原始像素,对于同一原始像素的反复读取会增加DDR访问次数。
2. 存储空间分离管理技术
图像位深度代表色彩等级,即一个像素包含的位数信息M(单位:bit),常见的图像位深度有16、20、24、32 bit等。Cache内的Cache块数为L,给每个Cache块编号0~(L-1)。Cache块深度为一次突发式读取的像素个数N,宽度为图像位深度M,则每个Cache块存储N个M bit的原始像素数据。
分布式RAM基于查找表(Look Up Table,LUT)进行配置,在逻辑密集型应用及小规模应用场景中具有灵活配置优势。而RAM块更适合于大规模应用场景且存储配置较为固定,难以满足Cache块深度配置要求。因此本文采用分布式RAM存储原始像素数据,每个Cache块由M个深度为N的分布式RAM块构成,结构如图 2所示。
在图 2所示的存储结构下,存储图像位深度小于M的图像时,每个Cache块内会有一部分存储单元被浪费。针对常见的图像位深度,本文提出存储空间分离管理技术:
1) Cache块宽度设置为可存储图像的最大位深度M。
2) Cache块深度设置为一次突发式读取的像素个数N。
3) 当图像位深度小于M/2时,一个Cache块内存储两次突发式读取的像素。
4) 当图像位深度处于M/2~3M/4之间时,将每个Cache块内的存储单元按照图像位深度分为两组:被使用存储单元3M/4和空闲存储单元M/4。图 2所示地址线直接连接每个分布式RAM块内部的N个存储单元,地址不需要重新分配,每个Cache块连接一个地址比较器对其余像素地址进行比较。Cache块内每个分布式RAM块上带有一个使能信号,被使用存储单元连接原有的地址比较器,空闲存储单元内分布式RAM块上的使能信号置位后,每3个Cache块的空闲存储单元额外连接一个地址比较器,等同于增加一个Cache块。实际上增加的是比较器以及Cache块编号,数据存取方式不变。对于整个Cache,多连接了
个比较器,等同于增加 个Cache块。如图 3所示。5) 当图像位深度处于3M/4~M之间时,像素数据正常存储。
3. 地址分级比较技术
访问Cache内存储的数据需进行地址命中判断,通常数据的低若干位地址会直接连到Cache内部,用于确定被访问数据处于Cache中的具体位置,其余地址用于命中比较。访问像素时比较的像素地址位数越多,逻辑资源使用量越大。为节省逻辑资源,对像素地址细化分级。
3.1 地址分级
图像分辨率为A(列数)×B(行数),则像素地址位数为
表示对数据向上取整,共将像素地址分为3级。1) 高位地址
像素地址的高
位为高位地址,用于确定被访问像素位于原始图像中的哪一行,高位地址存储在行表中,每行带一个地址比较器对其进行比较。2) 中位地址
除去高位地址和低位地址,剩余的
位为中位地址,用于确定被访问数据位于哪一Cache块,每个Cache块带一个地址比较器对其进行比较。3) 低位地址
像素地址的低
位为低位地址,直接与Cache块内的分布式RAM块连接,用于确定被访问像素处于Cache块内的具体位置。3.2 地址命中比较过程
1) 比较行表中的高位地址与图像翘曲变换模块生成的高位地址,生成是否命中的信息。
2) 将命中行信息转换为命中行编码,简化行表到Cache块之间的命中信息传递关系。
3) 比较命中行编码与Cache块原本所属行编码,相等则选通相应Cache块上的中位地址比较器。
4) 比较Cache块对应的中位地址与图像翘曲变换模块生成的中位地址,命中后选通相应的Cache块,根据图像翘曲变换模块生成的低位地址读取像素数据。
5) 任一级未命中都会生成未命中(miss)信息,DDR更新Cache内数据,并将更新信息传回行表,及时更新行表内高位地址。
地址命中判断过程如图 4所示。
3.3 替换算法
为保证Cache命中率,需采用替换算法[16-17]更新Cache内数据。最近最少使用(Least Recently Used,LRU)替换算法根据数据的历史访问记录进行数据替换,Cache中每个Cache块带有一个计数器记录最近被访问的情况,实现方案如下。
对Cache块进行命中排队,每次命中的Cache块直接放到队头,命中Cache块之前的Cache块全部后移一个位置,Cache块都未命中时替换队尾的Cache块。实际设计中不能移动Cache块,所以对Cache块的计数值进行加减操作来等同于排队。Cache块的编号为0~(L-1),初始计数值与编号相同。对于当前Cache块,计数值变化情况如下:
1) 若当前Cache块之前有Cache块命中,则其计数值保持不变,如图 5(a)所示。
2) 若当前Cache块命中,则其计数值取最大值为L-1,如图 5(b)所示。
3) 若当前Cache块之后有Cache块命中,则其计数值减1,如图 5(c)所示。
每次访问之后,同步调整每个Cache块的计数值,有未命中情况时将队尾计数值为0的Cache块替换掉。通过比较当前Cache块与命中Cache块的计数值确定两者的前后位置关系。
4. 动态调整技术
4.1 Cache容量
Cache容量不足会导致部分像素点的误替换现象,Cache容量过大会增加面积和功耗。像素访问过程中,对命中Cache块未改变之前的计数值进行统计,记录最小命中计数值Lmin。每个Cache块带一个控制自身是否关断的使能信号,将所有计数值小于Lmin的Cache块上的使能信号置位,对时钟信号进行关断。具体做法为:将相应Cache块上的使能信号与Xilinx Virtex 7环境内部BUFGCE上的使能端CE进行连接,控制相应Cache块进行关断,进而动态调整使用Cache的容量。
4.2 行表行数
一定时间内像素访问具有集中性,不会出现相邻访问的像素跨多行的现象。在确定的图像尺寸A(列数)×B(行数)下,存储高位地址的行表行数与Cache块数L及Cache块深度N相对应,最多
行。命中情况下对行表内高位地址差值进行统计,确定合理行数,以保证命中率并减少资源使用。5. 结果与分析
本文设计的应用于图像翘曲变换的Cache及其改进方案为在专用集成电路(Application Specific Integrated Circuit,ASIC)环境中实现车载HUD系统的预研工作,当前研究内容均基于现场可编程逻辑门阵列(Field Programmable Gata Array,FPGA)开发环境实现,并对像素访问过程进行软件模拟。测试图像的分辨率为1 920×1 080,Cache可存储最大图像位深度为32 bit。未经改进的Cache包含64个Cache块,每块最多存储64个32 bit的像素数据,Cache容量为128 Kbit。此情况下系统使用5 182个可配置逻辑查找表(Configurable Logic Block LUTs, CLB LUTs),3 743个可配置逻辑寄存器(CLB Registers)和2 048个存储资源(LUTRAM),Cache的命中率为98.786%。
5.1 Cache的使用对实验结果的影响
不使用Cache时从DDR中读取像素数据。使用Cache后,命中时从Cache中读取,未命中时从DDR中读取。Cache的命中率即为DDR访问次数减少的比例,则使用Cache时DDR访问次数减少了98%以上,数据访问效率得到保证。
5.2 Cache容量动态调整技术对实验结果的影响
本实验测试加入Cache容量动态调整技术确定可对部分Cache块进行关断后,Cache块数为64、32、16,Cache块宽度为32 bit,深度为64时,命中率及功耗对比情况,如表 1所示。Cache块数由64块减少至16块后,Cache容量减少75%,命中率不会明显降低,且动态功耗减少67.578%,静态功耗减少14.060%。
表 1 Cache容量动态调整技术对实验结果的影响Table 1. Effect of Cache capacity dynamic adjustment technology on experimental resultsCache块数 命中率/% 动态功耗/W 静态功耗/W 64 98.786 20.076 3.293 32 98.736 11.610 2.988 16 98.716 6.509 2.830 变化量/% -0.071 -67.578 -14.060 5.3 存储空间分离管理技术对实验结果的影响
本实验测试Cache块数分别为64、32、16,Cache块宽度为32 bit,深度为64,存储图像位深度为16~24 bit的像素数据时,使用存储空间分离管理技术前后资源变化情况,如表 2所示。当Cache块数为32和16时,逻辑资源(CLB LUTs和CLB Registers)增减基本持平,Cache块数为64时,逻辑资源增加较为严重。在不同Cache块数下,存储资源(LUTRAM)可节省25%,此技术在节省存储资源方面更有优势。
表 2 存储空间分离管理技术对资源使用情况的影响Table 2. Effect of storage separation management technology on resource usage资源 Cache块数 改进前 改进后 变化量/% CLB LUTs 64 5182 6594 27.248 32 2628 2951 12.291 16 1209 1387 14.723 LUTRAM 64 2048 1536 -25.000 32 1024 768 -25.000 16 512 384 -25.000 CLB Registers 64 3743 3242 -13.385 32 1855 1604 -13.531 16 927 807 -12.945 5.4 地址分级比较技术对实验结果的影响
本实验测试Cache块数分别为64、32、16,Cache块宽度为32 bit,深度为64时,使用地址分级比较技术前后资源变化情况,如表 3所示。在不同的Cache块数情况下,可有效节省近10%的逻辑资源(CLB LUTs和CLB Registers)。
表 3 地址分级比较技术对资源使用情况的影响Table 3. Effect of address multi-level comparison technology on resource usage资源 Cache块数 改进前 改进后 变化量/% CLB LUTs 64 5182 5252 1.351 32 2628 2559 -2.626 16 1209 1217 0.662 CLB Registers 64 3743 3374 -9.858 32 1855 1710 -7.817 16 927 842 -9.169 6. 结论
在HUD系统中图像翘曲变换部分加入Cache可以有效解决像素数据访问连续性问题,极大地降低DDR访问次数,节省图像访问时间。
1) 通过Cache容量动态调整的手段,在保证Cache命中率的前提下,确定合理且尽可能小的Cache容量,降低功耗。
2) 针对常见的图像位深度,存储空间分离管理技术可有效节省25%存储资源,Cache块数较少的情况下效果更好。
3) 地址分级比较技术可有效节省近10%逻辑资源。
本文提出的应用于图像翘曲变换的Cache及其改进方案同样适用于图像旋转、缩放等图像处理应用。
-
表 1 SR_A类和SR_B类参数
Table 1. Parameters of SR_A and SR_B
类型 优先级 最大帧长/Byte 发送频率/μs 7跳最大延迟/ms 最大抖动/μs SR_A 高 1 171 125 2 125 SR_B 低 1 500 250 50 1 000 表 2 端到端延迟对比
Table 2. Comparison of end-to-end delay
表 3 配置信息
Table 3. Configuration information
VLi 源节点 目的节点 帧长/Byte AFDX AVB BAG/ms 流量类型 ServiceRate/ms MIF 流量类型 1~50 ① ② 72 2 低优先级 40 20 SR_B 51~150 ① ④ 172 16 高优先级 160 10 SR_A 151~350 ② ⑥ 800 128 低优先级 1 280 10 SR_B 351~450 ③ ⑦ 100 8 高优先级 40 5 SR_A 451~650 ④ ⑧ 200 32 高优先级 320 10 SR_A 651~850 ⑤ ⑦ 372 64 低优先级 320 5 SR_B 851~950 ⑧ ⑥ 72 4 高优先级 40 10 SR_A 951~1 000 ⑨ ⑥ 872 32 高优先级 160 5 SR_A 951~1 000 ⑨ ⑥ 872 32 低优先级 160 5 SR_B 表 4 VL151~350平均端到端延迟对比
Table 4. Comparison of average end-to-end delay for VL151~350
场景 平均端到端延迟/ms AFDX AVB 场景1 19.292 15.053 场景2 21.270 15.831 表 5 VL851~950平均端到端延迟对比
Table 5. Comparison of average end-to-enddelay for VL851~950
场景 平均端到端延迟/ms AFDX AVB 场景1 2.901 3.561 场景2 2.912 3.570 -
[1] ARINC 664.Aircraft data network, Part 7:Avionics full duplex switched Ethernet(AFDX)network[S].Annapolis:Aeronautical Radio, 2005:9-18. [2] 蒲小勃.现代航空电子系统与综合[M].北京:航空工业出版社, 2013:55-89.PU X B.Modern avionics system and integration[M].Beijing:Aviation Industry Press, 2013:55-89(in Chinese). [3] IEEE 802.1 AVB Task Group.IEEE 802.1 audio/video bridging (AVB)[EB/OL].(2013-03-20)[2016-04-10]. [4] STEINBACH T, LIM H T, KORF F, et al.Tomorrow's in-car interconnect A competitive evaluation of IEEE 802.1 AVB and time-triggered ethernet(AS6802)[C]//2012 IEEE Vehicular Technology Conference.Piscataway, NJ:IEEE Press, 2012:1-5. [5] ALDERISI G, IANNIZZOTTO G, BELLO L L.Towards 802.1 Ethernet AVB for advanced driver assistance systems:A preliminary assessment[C]//2012 IEEE 17th International Conference on Emerging Technologies and Factory Automation. Piscataway, NJ:IEEE Press, 2012:1-4. [6] ZINNER H, NOEBAUER J, SEITZ J, et al.A comparison of time synchronization in AVB and FlexRay in-vehicle networks[C]//2011 Proceedings of the 9th Workshop on Intelligent Solutions in Embedded Systems. Piscataway, NJ:IEEE Press, 2011:67-72. [7] 熊华钢, 王中华.先进航空电子综合技术[M].北京:国防工业出版社, 2009:85-90.XIONG H G, WANG Z H.Advanced avionics integration techniques[M].Beijing:National Defense Industry Press, 2009:85-90(in Chinese). [8] GEYER F, HEIDINGER E, SCHNEELE S, et al.Evaluation of audio/video bridging forwarding method in avionics switched Ethernet context[C]//2013 IEEE Symposium on Computers and Communications.Piscataway, NJ:IEEE Press, 2013:000711-000716. [9] HEIDINGER E, GEYER F, SCHNEELE S, et al.A performance study of audio video bridging in aeronautic Ethernet networks[C]//7th IEEE International Symposium on Industrial Embedded Systems.Piscataway, NJ:IEEE Press, 2012:67-75. [10] JEON S, LEE J, PARK S.Dual-path method for enhancing the performance of IEEE 802.1 AVB with time-triggered scheme[C]//201521st Asia-Pacific Conference on Communications.Piscataway, NJ:IEEE Press, 2015:519-523. [11] MEYER P, STEINBACH T, KORF F, et al.Extending IEEE 802.1 AVB with time-triggered scheduling:A simulation study of the coexistence of synchronous and asynchronous traffic[C]//IEEE Vehicular Networking Conference.Piscataway, NJ:IEEE Press, 2011:47-54. [12] ALDERISI G, IANNIZZOTTO G, BELLO L L.Simulative assessments of IEEE 802.1 Ethernet AVB and time-triggered Ethernet for advanced driver assistance systems and in-car infotainment[C]//2012 IEEE Vehicular Networking Conference.Piscataway, NJ:IEEE Press, 2012:187-194. [13] 王彤, 赵琳, 何锋.航空电子音视频传输AVB以太网络[J].电光与控制, 2016, 23(1):1-6.WANG T, ZHAO L, HE F.Research on audio video bridging(AVB) for avionics network[J].Electronics Optics & Control, 2016, 23(1):1-6(in Chinese). [14] IEEE.IEEE standard for local and metropolitan area networks, virtual bridged local area networks, Amendment 14:Stream reservation protocol (SRP)[S].New York:IEEE, 2010:1-5. [15] IEEE.IEEE standard for local and metropolitan area networks, virtual bridged local area networks, Amendment 12:Forwarding and queuing enhancements for time-sensitive streams[S].New York:IEEE, 2009:1-17. [16] BOUDEC J Y L.Network calculus:A theory of deterministic queuing systems for the Internet[M].Berlin:Springer, 2001:7-24. [17] CRUZ R L.A calculus for network delay.Part Ⅰ. Network elements in isolation[J].IEEE Transaction on Information Theory, 1991, 37(1):114-131. doi: 10.1109/18.61109 [18] CRUZ R L. A calculus for network delay. Part Ⅱ. Network analysis[J].IEEE Transaction on Information Theory, 1991, 37(1):132-141. doi: 10.1109/18.61110 [19] CHANG C S.Performance guarantees in communication networks[M].London:Springer, 2000:4-22. [20] SCHARBARG J L, RIDOUARD F, FRABOUL C.A probabilistic analysis of end-to-end delays on an AFDX avionic network[J]. IEEE Transaction on Industrial Informatics, 2009, 5(1):28-41. [21] BAUER H, SCHARBARG J L, FRABOUL C.Improving the worst-case delay analysis of an AFDX network using an optimized trajectory approach[J].IEEE Transaction on Industrial Information, 2010, 6(4):521-533. doi: 10.1109/TII.2010.2055877 [22] MANDERSCHEID M, LANGER F.Network calculus for the validation of automotive Ethernet in-vehicle network configuration[C]//2011 International Conference on Cyber-Enable Distributed Computing and Knowledge Discovery.Piscataway, NJ:IEEE Press, 2011:206-211. [23] BAUER H, SCHARBARG J L, FRABOUL C. Applying trajectory approach to AFDX avionics network[C]//14th Emerging Technologies & Factory Automation.Piscataway, NJ:IEEE Press, 2009:1-8. [24] 代真, 何锋, 张宇静, 等.AFDX虚拟链路路径实时寻优算法[J].航空学报, 2015, 36(6):1924-1932.DAI Z, HE F, ZHANG Y J, et al.Real-time path optimization algorithm of AFDX virtual link[J].Acta Aeronautica et Astronautica Sinica, 2015, 36(6):1924-1932(in Chinese). 期刊类型引用(5)
1. 冯友林,何锋,李铮,周璇,于思凡,熊华钢. 民机机内5G无线混合组网架构性能评估. 航空学报. 2023(12): 239-249 . 百度学术
2. 朱志强,王世奎,李成文,孙东旭. 综合化航电系统中统一网络技术分析. 航空计算技术. 2022(03): 125-129 . 百度学术
3. 何向栋,陈长胜,白杨. 一种基于SoPC型FPGA的千兆AFDX交换机设计与实现. 电光与控制. 2021(07): 112-116 . 百度学术
4. 丛培壮,田野,龚向阳,阙喜戎,王文东. 时间敏感网络的关键协议及应用场景综述. 电信科学. 2019(10): 31-42 . 百度学术
5. 王智宇,何锋,谷晓燕. 基于度中心性的AFDX网络拓扑生成. 北京航空航天大学学报. 2019(11): 2327-2334 . 本站查看
其他类型引用(3)
-