首先面临的挑战是该如何设计可靠的多媒体家庭网路平台,能够以足够的QoS传送网际网路通讯协定(IP)封包,并且没有明显的失真。另一个挑战是设计人员怎样以较高的性能价格比来实现这一切,使消费者能够使用得起。
目前专业广播行业已经采用了多项技术来解决第一个挑战。在消费性低成本FPGA中采用这些技术后,设计人员也能够解决第二个挑战。
即时传送通讯协定
即时传送通讯协定(RTP)主要用于在网际网路上传输和分配音讯以及视讯,例如视讯会议和视讯串流等应用。然而,该通讯协定具有时间戳记和资料封包丢失或者重排探测等功能,因此,也可以用于在条件有限的环境中透过乙太网路进行视讯分配,例如家庭多媒体网路等。
网际网路工程工作特别小组(IETF)的音讯/视讯传送(AVT)工作小组定义了IP音讯和视讯即时传输的RTP。它最初由RFC文件RFC3350进行定义,被IETF网际网路工程领导小组(IESG)在2004年3月批准为完全标准。 AVT工作小组也在负载格式、误码纠正以及安全方面开发了大量的支援标准。
MPG/MPEG-2视讯的RTP负载格式
RTP是一种适合多种传送应用的通用通讯协定。经过其他规范的扩展,它还可以用于更专业的应用。 RFC2250定义了MPEG和MPEG-2视讯的RTP负载格式,详细规定了MPEG-2传送串流(TS)资料的封装,并成为Practice #3(CoP3)Pro-MPEG码和数字视讯广播(DVB)- IP手册的参考。
UDP/IP
RTP便是传送通讯协定。它一般在主机至主机层采用用户资料报通讯协定(UDP),在网际网路层采用IP。与传输控制通讯协定(TCP)不同,UDP不是连接导向,不采取措施对资料进行排序,不保证提供可靠的资料封包。这一特性使其比TCP更快更简单,效率更高,因此,同RTP结合后,更适合宽频视讯分配。
Practice #3 FEC的Pro-MPEG码
资料不论是透过有线还是无线网路进行传送,在杂讯、时钟抖动以及网路链路饱和的影响下,都会出现劣化,表现为资料封包丢失或者视讯像素丢失。在这方面,压缩视讯串流要比未经压缩的视讯串流表现更明显。
Pro-MPEG论坛是广播公司、节目制作方、设备生产商以及元件供应商组成的协会,旨在根据广播公司和最终用户的要求来实现专业电视设备的互用性。 Pro-MPEG广域网路(WAN)工作小组重点研究怎样在WAN上利用IP交换高品质节目内容的系统之间建立互用性。该工作小组制定了在IP网路上传输专业MPEG-2 TS资料的实用代码,建议了传输通讯协定(例如RTP、UDP、IP映射等)和前向纠错(FEC)方案,还讨论了时序恢复、抖动宽容值和延时等问题。尽管可以选择使用RTP来支援采用UDP/IP架构的既有标准,IP承载视讯参考设计需遵从传输通讯协定建议。
在IP网路环境中保证最低资料完整性的一个方法是采用负载预知处理技术。负载预知处理技术涉及到IP封装、时序纠正以及应用层FEC。现场视讯传输不能使用资料封包重发机制。因此,利用FEC,接收器迅速重新建构丢失或者错误的资料,而不需要申请重新传输。缆线、卫星和地面数位视讯传输采用了各种类型的FEC方案。对于IP视讯网路,Pro-MPEG论坛建议了FEC演算法,它使用互斥或(XOR)方法来产生冗余数据,进行误码纠正。该标准被称为Pro-MPEG COP3第2版(CoP3r2)。 FEC主要用于MPEG-2和H.264等压缩视讯串流。
Pro-MPEG FEC是二维XOR演算法,有几种可能性来确定资料矩阵的大小。 FEC要求矩阵列数应至少有一列,但不超过20列,行数至少有四行,但不超过20行。而且,一个矩阵中的资料封包总数不能超过100个。为理解这一简单的FEC概念,假设A和B是RTP资料封包,那么,F=A⊕B是﹛A,B﹜保护集相关的FEC资料封包。 F是RTP资料封包运算位元组XOR运算的结果。 XOR运算符号的特点是如果F=A⊕B,那么A=B⊕F,B=A⊕F。如果A或者B丢失,那么可以利用F FEC资料封包来恢复A或者B。(图一)所示为Pro-MPEG矩阵排列,得到的FEC承载资料以绿色表示。
解决方案
Altera IP承载视讯参考设计从几个输入中接收MPEG TS资料,对其进行封装,在采用乙太网路架构的IP网路上进行传输。设计使用业界标准UDP/IP网路封装,也可以选用RTP封装和Pro-MPEG CoP3 FEC。设计支援100Mbps(全双工)和1Gbps乙太网路连接,能够处理256个独立资料流程。透过硬体封装,设计可以达到Gigabit乙太网路(GbE)线路速率,并且传输延迟很小。
设计还可以从乙太网路中接收256个独立资料流程,恢复为TS资料。对于RTP封装的资料,设计含有接收器缓冲区,来消除网路抖动,对资料封包重新排序和重复进行纠正。也可以使用可选的CoP3 FEC丢失资料封包恢复功能。
此外,还可以提供大部分关键建构模组,下载至FPGA系统设计中使用,也可以使用FPGA设计工具中的现有建构模组来进行设计。大部分设计工具含有FIFO、内部记忆体、外部记忆体控制器、计数器、锁相回路(PLL)以及其他简单逻辑等模组。 (图二)是一个典型的多媒体家庭网路设计,它使用FPGA做为介面桥接,例如USB 2.0和FireWire,还支持今后的视频介面通讯协定。利用Altera的IP承载视讯参考设计能够将输入视讯映射至IP网路。Cyclone系列等低成本FPGA可用于实现完整的设计,系统非常灵活,具有更新能力,可满足今后的需求。
如(图三)所示,以SOPC Builder系统为基础,提供以下关键建构模组:
- ●RTP发射器;
- ●RTP接收器;
- ●UDP/IP功能;
- ●PHY介面;
- ●Nios II嵌入式处理器,用于设计控制;
- ●FEC产生器和接收器缓冲外部RAM的仲裁逻辑以及记忆体控制器。
结语
利用广播业的现有技术,简化了多媒体家庭网路的服务品质问题。采用Altera的低成本Cyclone系列FPGA,透过IP承载视讯参考设计,可以轻松实现这些技术。在新兴的家庭多媒体网路市场上,存在着各种不同的标准,因此,可编程逻辑将扮演越来越重要的角色。
致谢
--作者为Altera广播/汽车/消费性电子业务部资深技术行销经理。
详细资讯
[1]IP承载视讯参考设计:
www.altera.com/support/refdesigns/sys-sol/broadcast/ref-video.html
[2]AN 374:IP承载视讯参考设计:
www.altera.com/literature/an/an374.pdf.
[3]专业MPEG论坛的讨论版:
www.pro-mpeg.org/forum