无线显示编码器架构的制作方法

文档序号:7739407阅读:123来源:国知局
专利名称:无线显示编码器架构的制作方法
无线显示编码器架构
背景技术
显示器可以用于呈现来自各种源(诸如DVD (数字多用途盘)播放器、PC (个人计算机)和视频播放器)的信息。在过去,这种显示器需要有线连接到视频信号源。这种布置可能添加安装复杂度,而且可能增加部件成本。然而近来,已经尝试开发无线显示器,其仍然存在相当大的改善空间。例如,传统技术或许包括在传输之前缓冲未被压缩的视频信号,并且可能导致处理等待时间、增加的功耗、更大的芯片和相对高的带宽需求。


通过阅读下面的说明书和所附权利要求书并参考附图,本发明的实施例的各种优点对于本领域技术人员而言将变得显而易见,其中
图I是根据实施例的系统的示例的框图;图2是根据实施例的编码器的示例的框图;以及图3是根据实施例的用于处理视频信号的方法的示例的流程图。
具体实施例方式实施例可以提供一种方法,在该方法中,可以包括显示图形、合成且自然的静态图像和/或运动图像的视频信号被接收,并逐片地压缩该视频信号,其中,片可以是帧的图片样本的子集。压缩后视频信号可以被传送给无线显示器或存储在系统存储器中供随后传输。实施例还可以提供一种系统,该系统包括用于接收视频信号的接口和用于逐片地压缩该视频信号的编码器。该系统还可以包括用于管理压缩后视频信号的无线传输的处理器。另外,实施例可以包括一种方法,在该方法中,接收来自数字视频接口(DVI,例如DVI规范,版本1.0,2009年4月2日,数字显示工作组)、高清多媒体接口(HDMI,例如HDMI规范,版本I. 3a, 2006年11月10日,HDMI许可有限公司)和系统帧缓冲器中的至少一者的视频信号,其中该视频信号包括当前帧的像素数据。该方法还可以基于当前帧的像素数据的片的色彩空间分量来提供计算该片的哈希值。该片的哈希值和坐标可以被放置在哈希队列中,而且该片可以被存储在片缓冲器中。在一个示例中,片缓冲器具有小于视频信号的最小帧大小的最大存储大小。该方法还可以基于哈希值、片的容许失真以及通道状态(例如,带宽)来提供选择量化参数。可以基于所选择的量化参数来编码所述片。现在转到图1,示出了系统10。可以以各种使用模式来部署所示的系统10。例如,在DVI-UWB (超宽带,例如IEEE 802. 15. 4a_2007)使用模式中,编码器12可以被集成到DVI-UWB软件狗中。可能存在着两种类型的软件狗TX (发射机)软件狗WPRX (接收机)软件狗。TX软件狗能够插到PC、膝上型计算机、视频播放器、DVD解码器或类似设备的DVI输出中。这种TX软件狗能够捕获DVI源视频信号,压缩该DVI源视频信号并通过UWB通道对其进行传送。RX软件狗可以插到高架卷轴机(overhead beamer)、电视面板或其他投影设备的输入DVI插座中。RX软件狗能够接收压缩后无线视频信号,对其进行解码并生成用于视频消费者设备的DVI输入数据。这两个软件狗(TX和RX)能够一起提供短距离的完整视频电缆替换。因此,如图I所示,编码器12能够集成到TX DVI-UffB软件狗13中。能够包含解码器的RX TX DVI-UWB软件狗位于本申请的范围之外。在HDMI-WLAN (无线局域网,例如ffiEE 802. lln-2009)使用模型中,WLAN网卡可以用于无线传输。另外,输入视频信号能够从视频源(PC卡、DVD播放器等)的HDMI插座中捕获。在再一示例中,可以部署帧缓存器至系统存储器使用模型。在该使用模型中,编码器12可以是计算平台(诸如台式PC (个人计算机)、服务器、膝上型计算机、PDA (个人数字助理)、无线智能电话、成像设备、媒体播放器、移动因特网设备(MID)等)的一部分。编码器12因此能够直接从系统帧缓存器或系统存储器接收视频信号,并将压缩后视频信号比特流存储到系统存储器中。压缩后比特流随后能够被路由到平台上的网络设备。由于所示的编码器12不具有大的内部存储器,而且其不需要外部存储器以压缩视频信号,所以编码器芯片能够位于平台的适当位置中而不丢失其性能特性。另外,该使用模型能够被用作硬件加速器,以根据诸如H. 264 (例如,H. 264, Series H:Audiovisual andMultimedia Systems, Infrastructure of Audiovisual Services - Coding of MovingVideo, Advanced Video Coding for Generic Audiovisual Services,2009年 3 月,ITU-T)进行压缩。在所示的DVI-UWB使用模型的示例中,系统10具有用于接收视频信号的接口 14,和用于逐片地压缩所述视频信号的编码器12。片可以被定义为整数数目的宏块,其中宏块可以被定义为在特定片群中的光栅扫描中被连续排序的16X16块的图片样本。片群可以是图片样本的特定子集。将图片(例如,像素数据)划分成片群有时被称为图片的划分。如将更详细讨论的,通过逐片地压缩视频信号,所示的编码器12能够提供对无线通道的快速自适应、高的重建图像质量、相对低的处理等待时间、更低的功耗、降低的带宽需求以及能够实现小的芯片大小的无存储器压缩。系统10还可以包括总线(诸如I2C (IC间,例如12(规范.10204,版本03,2007年6月19日,NXP半导体)总线16)、中央处理单元(CPU/处理器)18、系统存储器的传输缓冲器24和到UWB物理层(PHY)部件22的UWB传输接口 20 (例如,MBOA/多频带OFDM联盟接口)。这些部件可由OCP (开放核心协议,例如,OCP规范3. O, 2009年5月6日,OCP-IP)交换光纤26互连。在一个示例中,CPU 18执行系统10的初始配置并管理压缩后视频信号的无线传输,这可以包括经由交换光纤26在编码器12、传输缓冲器24与MBOA接口 20之间传递压缩后视频信号。特别地,编码器12能够将压缩后视频信号直接存储在传输缓冲器24中,并向CPU 18报告存储器分配表。在从编码器12接收到通知之后,CPU 18能够向网卡或UWB传输接口 20发送传输请求。图2更详细地示出编码器12的一个示例。通常,在编码器12的顶级实例化有6个唯一的子模块。另外,可以使用一个或若干个相同的编码器模块30 (30a-30m)。数据流可以从数据经由像素接口进入捕获模块32开始。在一些变换之后,像素数据可以被存储在内部片缓冲器28中,而且哈希函数度量可以被发送给速率控制模块34。速率控制模块34能够进一步决定关于数据分析和编码的必要动作。在所示示例中,速率控制模块34使用量、化参数搜索(“Qsearch”)模块36来选择适当的量化参数和派遣器模块38来进行编码任务调度。速率控制模块34还可以与外部主机控制器(诸如CPU18 (图I))进行通信,以进行共享缓冲器管理。所示的派遣器模块38管理单独编码器模块30的任务和数据流,而且能够在外部存储器(诸如传输缓冲器24 (图1,用于无线传输使用模型))中存储编码后数据。下面提供所示模块和部件的细节。内部片缓冲器嵌入式/内部片缓冲器28的主要目的可以是临时存储来自捕获模块32的RGB/YUV (红-绿-蓝/亮度-色度-色度)像素数据,并向Qsearch模块36和派遣器模块38提供对所述数据的广泛访问。对于任何被支持的分辨率,缓冲器28的大小足够用于同时存储若干个(两个或更多个)条(一条可以是帧的16个相继行)。缓冲器28可以具有最大存储大小,然而,相对于帧而言其仍然是小的(例如,小于视频信号的最小帧大小)。因此,没有以所示方法来存储整个帧,而且内部片缓冲器28可以不需要很大的实际面积。所示缓冲器28可以用静态随机存取存储器(SRAM)、动态RAM (DRAM)等来实施。捕获模块捕获模块32可以经由像素接口从视频接收机40中的DVI/HDMI接收机芯片或系统中的其他子模块接收位于RGB/YUV色彩空间中的像素数据,在内部片缓冲器28中存储该像素数据,计算每个片的哈希值,以及在哈希队列42中存储所计算的哈希值。因此,可以单独地为帧的每个片计算哈希值。在一个示例中,每个样本的所有R (Y)、G (U)、和B (V)分量都用于哈希值计算。将哈希函数应用于片的结果可以是与该片的坐标一起被存储在哈希队列42中的32比特值,其中哈希队列42能够被速率控制模块34访问。速率控制模块34可以使用哈希函数值来检测当前帧相比于之前帧的变化。特别地,速率控制模块34可以将当前帧的片的哈希值与之前帧的片的哈希值进行比较,以检测视频信号中的未被改变区域(例如,静态检测)。谏率控制樽块速率控制模块34可以根据各种算法来基于哈希值比较选择每个片的失真。通常,失真是质量度量更高容许的失真典型地导致更低的质量和压缩后片的更小的大小。因此,速率控制模块34能够将所选的片失真传递到Qsearch模块36中,其中Qsearch模块36可以搜索用于所述片的恰当的量化参数。简言之,所示的速率控制模块34使用片的每个哈希值和该片的容许失真来选择用于该片的量化参数。另外,给定帧中的不同片可以被分配具有不同压缩率的量化参数。结果,所示的方法将不向图像的轮廓部分(例如,存在文本的部分)中引入伪像(例如,模糊),从而对于显示图形、合成且自然的静态图像以及运动图像而H均能够工作得很好。因此,速率控制模块34能够包括下面的功能从捕获模块32接收哈希值;将Qsearch模块36用于量化参数估计;决定特定的片是否需要被压缩(例如,基于哈希比较和当前通道状态来决定是否跳过/不压缩该片)以及将使用哪个量化参数;指示派遣器模块38压缩一些片并向恰当的输出缓冲器中写入;标记有效的输出缓冲器;以及管理可用的缓冲器大小。
QSearch 樽块典型地,更大的量化参数会导致更低的质量和更高的压缩。因此,QSearch模块36的目标是找到提供小于或等于由速率控制模块34所选择的容许失真值的失真的最大量化参数值。Qsearch模块36因此可以包括以下功能从速率控制模块34获得搜索任务;通过给定片的给定失真执行快速搜索以获得恰当的量化参数;以及向速率控制模块34报告回所计算的量化参数值。派遣器模块派遣器模块38可以提供用于调度关于多个编码器模块30的多个编码过程的机制,派遣器模块38因此能够从速率控制模块34获得压缩任务,从编码器模块池中选择编码器模块30来运行片压缩,以及向速率控制模块34报告回压缩完成结果。如果所有的编码器模块30都被占用,则在分配压缩任务之前,派遣器模块38可以等待,直到其中一个编码器模块变得空闲。另外,派遣器模块38可以负责解决因多个编码器模块30同时向内部片缓冲器28和/或外部存储器(诸如传输缓冲器24 (图1,用于无线传输使用模型))提出存 储器读/写请求而导致的冲突。简言之,所示的派遣器38针对每个所选的量化参数来使用编码器模块30,其中编码器模块30基于所选的量化参数来编码片。编码器模块可以使用一个或多个编码器模块30来执行压缩任务,其中每个编码器模块30可以根据编码处理(诸如H. 264处理)来执行将原始像素数据压缩成压缩后视频信号比特流。编码器模块30的数量可以依赖于所需的计算强度,而所需的计算强度可以依赖于帧大小、帧率和平均输出比特率。映射樽块所示的映射模块44的主要目的是促进速率控制模块34与外部主机控制器(诸如CPU 18 (图I))之间的状态信息的交换。因此,映射模块44可以包括速率控制模块34和外部主机处理器可见的寄存器组。因此,所示的编码器12可以用于提供与各种协议和/或标准(诸如H. 264、RGB/YUV 4:4:4和CAVLC/CABAC (上下文自适应可变长度编码/上下文自适应二进制运算编码)熵编码)相兼容的输出流。另外,可以实现大约O. 5ms和低于每秒30/60帧的帧率的处理等待时间。无线传输可以向WLAN或WPAN (无线个域网)提供3000MBps (例如,每秒60帧的全高清一1920X1080的未压缩率)以及更高的有效吞吐量。编码器核心的面积可以是近似2mm2 (例如,使用65nm工艺)和更小,而且支持该示例的输入视频分辨率可以包括1600X 1200 和 1920X1080 和更高。现在转到图3,其示出了用于处理视频信号的方法46。方法46可以以可执行软件的形式被实施为存储在存储器(诸如随机存取存储器(RAM)、只读存储器(ROM)、可编程ROM(PR0M)、固件、闪存等)的机器或计算机可读介质中的逻辑指令集,以使用电路技术(诸如专用集成电路(ASIC)、互补金属氧化物半导体(CMOS)或晶体管-晶体管逻辑(TTL)技术)的固定功能的硬件形式被实施或以它们的任意组合被实施。处理框48提供接收具有当前帧的像素数据的视频信号。如已经指出的,视频信号可以从DVI、HDMI、系统帧缓冲器等中接收。在框50处可以计算当前帧的片的哈希值,而且框52可以提供将片的哈希值和坐标放置在哈希队列中。另外,在框54处,可以将片存储到片缓冲器中。框56提供基于哈希值、片的容许失真以及当前通道状态(例如,带宽)来选择量化参数。容许失真的确定可以包括将当前帧的片的哈希值与之前帧的片的哈希值进行比较,其中对于所考虑的片可能需要或者可能不需要压缩。特别地,在一个示例中,压缩可以限于帧的相对未被改变的区域。因此,如果哈希值比较指示在输入的像素数据片中没有改变(例如,帧的静态区域),则可以降低所考虑的片的容许失真,这能够导致选择用于所述片的更小的量化参数。相反地,如果哈希值比较指示在输入的像素数据片中有改变(例如,帧的动态区域),则所述片的容许失真可以更高。也可以使用其他的量化参数选择技术。框58提供基于所选的量化参数对所述片进行编码。如已经指出的,在需要时,可以针对特定帧的多个片来并行地重复方法46。因此,方法46能够提供选择与多个片相对应的多个量化参数。此外,同一帧的不同片可以用不同的量化参数和不同的压缩率进行编码。因此,相应的多个量化参数中的两个或更多个量化参数可以具有不同的压缩率。所示操作的执行顺序可以依据环境而改变。因此,所示的解决方案提供唯一的速率控制算法,该速率控制算法具有对无线通 道的快速自适应和高的重建图像质量。处理等待时间可以非常低,而且由于该解决方案不需要存储整个压缩后的帧,所以芯片大小可以显著更小。本发明的实施例适用于与所有类型的半导体集成电路(“1C”)芯片一起使用。这些IC芯片的示例包括但不限于处理器、控制器、芯片组部件、可编程逻辑阵列(PLA)、存储器芯片、网络芯片等。另外,在一些附图中,用线表示信号导体线。一些可以更粗以指示更多组分的信号路径,一些可以具有数字标号以指示多个组分信号路径,和/或一些可以在一端或更多端具有箭头以指示主信息流向。然而,这不应当以限制性的方式来解释。相反地,可以结合一个或多个示例性实施例来使用这些添加的细节,以便更容易地理解电路。任何所描绘的信号线(无论是否具有附加信息)都可以实际地包括可以在多个方向上传播的一个或多个信号,而且可以用任意适当类型的信号方案来实施,例如,使用差分对实施的数字或模拟线、光纤线和/或单端线。示例性的尺寸/模型/值/范围可以已经被给定,但是本发明的实施例并不局限于此。当加工技术(例如,光刻)随着时间而成熟时,期望能够制造更小尺寸的器件。此外,为了简化说明和讨论以及不模糊本发明实施例的某些方面,在附图中可以示出或不示出至IC芯片和其他部件的公知电源/地连接。另外,为了避免模糊本发明的实施例并鉴于与框图布置的实现方式相关的细节高度依赖于在其中实施该实施例的平台的事实,即这些细节应当很好地位于本领域技术人员的知识范围内,可以以框图形式示出所述布置。虽然阐述了具体细节(例如,电路)以描述本发明的示例性实施例,但是对本领域技术人员而言显而易见的是,可以在没有这些具体细节的变型或采用这些具体细节的变型的情况下实践本发明的实施例。因此,本说明书应当被认为是说明性而非限制性的。本文使用的术语“耦合”指代所讨论的部件之间的任意类型的关系,直接或间接关系,而且可以应用于电气、机械、流体、光、电磁、电机械或其它连接。另外,本文使用的术语“第一”、“第二”等仅用来便于讨论,但并不携带特定的时间或时间顺序的意义,除非以其他方式指出。本领域技术人员将从前面的描述中意识到,可以以各种形式来实施本发明的实施例的广泛技术。因此,虽然已经结合本发明的特定示例描述了本发明的实施例,但是本发明的实施例的真正范围应当不限于此,因为通过研究附图、说明书和所附权利要求书,其它修改对于本领域技术人员而言将变得显而易见。
权利要求
1.一种方法,包括 从数字视频接口(DVI)、高清多媒体接口(HDMI)和系统帧缓冲器中的至少一者接收视频信号,所述视频信号具有当前帧的像素数据; 基于所述当前帧的所述像素数据的片的色彩空间分量来计算所述片的哈希值; 将所述片的所述哈希值和坐标放置在哈希队列中; 将所述片存储在片缓冲器中,所述片缓冲器具有小于所述视频信号的最小帧大小的最大存储大小; 基于所述片的所述哈希值、容许失真和通道状态来选择量化参数,其中选择所述量化参数包括将所述当前帧的所述片的所述哈希值与之前帧的所述片的哈希值进行比较;以及基于所选择的量化参数来编码所述片。
2.根据权利要求I所述的方法,还包括 针对所述当前帧的多个片来并行地重复所述计算、放置、存储和选择,以获得相应的多个量化参数;以及 用所述相应的多个量化参数来编码所述多个片,其中所述相应的多个量化参数中的至少两个量化参数具有不同的压缩率,其中编码所述多个片包括针对所述相应的多个量化参数中的每个量化参数来使用编码器。
3.根据权利要求I所述的方法,还包括跳过所述片的压缩。
4.根据权利要求I所述的方法,还包括经由超宽带通道和无线局域网(WLAN)网卡中的至少一者向无线显示器传送压缩后视频信号。
5.根据权利要求I所述的方法,还包括将所述压缩后视频信号存储到系统存储器中。
6.一种方法,包括 接收视频信号;以及 逐片地压缩所述视频信号。
7.根据权利要求6所述的方法,其中,所述视频信号包括当前帧的像素数据,而且压缩所述视频信号包括 计算所述当前帧的所述像素数据的片的哈希值; 将所述片的所述哈希值和坐标放置在哈希队列中; 将所述片存储到片缓冲器中; 使用所述片的所述哈希值、容许失真和通道状态来选择所述片的量化参数;以及 基于所选择的量化参数来编码所述片。
8.根据权利要求7所述的方法,其中,基于所述片的所有色彩空间分量来计算所述哈希值。
9.根据权利要求7所述的方法,其中,所述片缓冲器具有小于所述视频信号的最小帧大小的最大存储大小。
10.根据权利要求7所述的方法,其中,使用所述哈希值来选择所述量化参数包括将所述当前帧的所述片的所述哈希值与之前帧的所述片的哈希值进行比较。
11.根据权利要求7所述的方法,还包括 针对所述当前帧的多个片来并行地重复所述计算、放置、存储和使用,以获得相应的多个量化参数;以及用所述相应的多个量化参数来编码所述多个片,其中所述相应的多个量化参数中的至少两个量化参数具有不同的压缩率。
12.根据权利要求11所述的方法,其中,编码所述多个片包括针对所述相应的多个量化参数中的每个量化参数来使用编码器。
13.根据权利要求6所述的方法,还包括经由超宽带通道和无线局域网(WLAN)网卡中的至少一者向无线显示器传送压缩后视频信号。
14.根据权利要求6所述的方法,还包括将所述压缩后视频信号存储到系统存储器中。
15.根据权利要求6所述的方法,其中,所述视频信号是从数字视频接口(DVI)、高清多媒体接口(HDMI)和系统帧缓冲器中的至少一者接收的。
16.—种系统,包括 用于接收视频信号的接口; 编码器,用于逐片地压缩所述视频信号;以及 处理器,用于管理压缩后视频信号的无线传输。
17.根据权利要求16所述的系统,其中,所述视频信号包括当前帧的像素数据,而且所述编码器包括 内部片缓冲器,所述内部片缓冲器具有小于所述视频信号的最小帧大小的最大存储大小; 具有哈希队列的捕获模块,所述捕获模块用于计算所述当前帧的所述像素数据的片的哈希值,将所述片的所述哈希值和坐标放置到所述哈希队列中,以及将所述片存储到所述内部片缓冲器中; 速率控制模块,用于使用所述片的所述哈希值、容许失真和通道状态来选择所述片的量化参数;以及 派遣器,用于针对所选的量化参数来使用编码器模块,所述编码器模块用于基于所选的量化参数来编码所述片。
18.根据权利要求17所述的系统,其中,所述编码器用于针对所述当前帧的多个片来并行地重复所述计算、放置、存储和使用以获得相应的多个量化参数,而且所述派遣器用于针对所述相应的多个量化参数中的每个量化参数来使用编码器模块,其中所述相应的多个量化参数中的至少两个量化参数具有不同的压缩率。
19.根据权利要求16所述的系统,其中,所述接口包括数字视频接口(DVI)、高清多媒体接口(HDMI)和系统帧缓冲器中的至少一者。
20.根据权利要求16所述的系统,其中,所述处理器用于经由超宽带通道和无线局域网(WLAN)网卡中的至少一者来管理压缩后视频信号的无线传输。
全文摘要
方法和系统可以包括用于接收视频信号的接口和用于逐片地压缩该视频信号的编码器。在一个示例中,视频信号的压缩包括使用(50)每个片的哈希值和容许失真来选择(56)该片的量化参数。所选的量化参数能够用于对该片进行编码(58)。另外,处理器能够管理压缩后视频信号的无线传输。
文档编号H04N7/36GK102668558SQ200980163065
公开日2012年9月12日 申请日期2009年12月24日 优先权日2009年12月24日
发明者A·叶菲莫夫, E·贝尔耶夫, M·茨韦特科夫, V·切尔内绍夫 申请人:英特尔公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1