解码系统和方法

文档序号:7736149阅读:236来源:国知局
专利名称:解码系统和方法
技术领域
本发明大体来说涉及解码系统和方法。
背景技术
技术的进步已产生更小且功能更强大的计算装置。举例来说,当前存在各种便携 式个人计算装置,包括无线计算装置,例如便携式无线电话、个人数字助理(PDA)和寻呼装 置,其为小型、重量轻且容易由用户携带的。更具体来说,例如蜂窝式电话和因特网协议 (IP)电话等便携式无线电话可经由无线网络传送语音和数据包。此外,许多此类无线电话 包括并入于其中的其它类型的装置。举例来说,无线电话还可包括数字静态相机、数字视频 相机、数字记录器、视频播放器和音频文件播放器。并且,此类无线计算装置可处理包括可 用以接入因特网的软件应用程序(例如,网络浏览器应用程序)的可执行指令。如此,这些 无线计算装置可包括显著的计算能力。可使用用以转译信号数据的码字的查找表在此类无线计算装置处解码经编码视 频数据。码字的整个集合可存储于查找表处,所述查找表在每一码字查找操作期间经激活 以传回快速结果,但以大量电力消耗为代价。因为解码视频数据的延迟可容易被经解码视 频数据的检视者注意到,所以常执行全码字集合表查找而不管对便携式装置处的有限电力 资源的大量消耗。

发明内容
在一特定实施例中,揭示一种方法,所述方法包括在视频解码器系统处接收经编 码视频信号。所述方法包括发送所述经编码视频信号的第一部分,以在所述视频解码器系 统的第一解码路径或第二解码路径处进行解码。所述第二解码路径经配置以使用比所述第 一解码路径小的平均功率。所述方法包括确定与解码所述经编码视频信号的所述第一部分 相关联的解码量度。所述方法还包括响应于所述解码量度而选择性地发送所述经编码视频 信号的后续部分,以在所述第一解码路径或所述第二解码路径处进行解码。所述方法进一 步包括基于所述第一部分和所述后续部分的所述解码而产生经解码视频信号。在另一特定实施例中,揭示一种视频解码器系统,其经配置以接收经编码视频信 号,且经配置以输出经解码视频信号。所述视频解码器系统包括第一解码路径和第二解码 路径。所述第二解码路径经配置以在比所述第一解码路径慢的平均速率下进行解码。所述 视频解码器系统还包括动态开关,其经配置以将所述经编码视频信号的第一部分提供给所 述第一解码路径或提供给所述第二解码路径。所述动态开关进一步经配置以响应于与所述 第一部分的解码处理相关联的解码量度的值,将所述经编码视频信号的后续部分提供给所 述第一解码路径或提供给所述第二解码路径。在另一特定实施例中,揭示一种系统,其包括多个查找表。所述多个查找表包括第 一查找表,其存储对应于可变长度译码方案的码字的完整集合的第一数据。所述多个查找 表还包括第二查找表,其存储对应于所述码字的第一不完整集合的第二数据。所述系统进一步包括开关,其经配置以接收包括第一码字的可变长度译码位流的一部分。所述开关经 配置以将所述第一码字发送到所述多个查找表中的第一选定查找表,并响应于与解码所述 第一码字相关联的解码量度的值而将后续码字发送到所述多个查找表中的第二选定查找表。在另一特定实施例中,一种便携式电子装置包括无线控制器,其经配置以经由天 线无线地接收经编码高清晰度视频信号。所述便携式电子装置还包括用于解码所述经编码 高清晰度视频信号的第一装置,和用于以比所述第一装置慢的平均速度且使用比所述第一 装置小的平均功率解码所述经编码高清晰度视频信号的第二装置。所述便携式电子装置进 一步包括选择电路,其用以响应于所述高清晰度视频信号的宏块的未经解码系数的数目且 进一步响应于可用于解码所述宏块的所述未经解码系数的剩余处理循环的数目而动态地 选择所述第一装置或所述第二装置。所述选择电路经配置以基于所述宏块的至少一个先前 部分的解码处理而选择所述第一装置或所述第二装置以解码所述宏块的特定部分。由所揭示实施例提供的一个特定优点为通过基于经编码信号的先前部分的解码 处理动态选择解码路径而启用的有效解码。有效解码可产生电力节省。在审阅包括以下部分的整个申请案之后,本发明的其它方面、优点和特征将变得 显而易见


具体实施方式
和权利要求书。

图1为解码系统的第一说明性实施例的数据流程图;图2为解码系统的第二说明性实施例的数据流程图;图3为解码系统的第三说明性实施例的数据流程图;图4为解码管线的特定说明性实施例的数据流程图;图5为解码方法的特定说明性实施例的流程图;以及图6为便携式电子装置的特定说明性实施例的框图,所述便携式电子装置包括具 有用以基于解码量度而选择解码路径的动态开关的视频解码器系统。
具体实施例方式参看图1,描绘解码系统的第一说明性实施例并大体将其表示为100。存储器102 经耦合以将来自经编码视频文件110的经编码视频信号提供给视频片段解码器104。视频 片段解码器104耦合到多媒体显示处理器106,多媒体显示处理器106将输出提供给显示装 置 108。视频片段解码器104经配置以接收所述经编码视频信号的一个或一个以上经编 码视频片段112并输出经解码视频信号的经解码视频片段140。视频片段解码器104包括 第一解码路径122和第二解码路径124。第二解码路径IM经配置以在比第一解码路径122 慢的平均速率下进行解码。第二解码路径1 还可经配置以使用比第一解码路径122小的 平均功率。动态开关120经配置以基于所述经编码视频信号的部分的先前解码性能而选择 并指导所述经编码视频信号的部分在第一解码路径122或第二解码路径IM处进行解码。 因此,当正解码所述经编码视频信号时,视频片段解码器104可在解码的不同阶段动态地 选择较快且较高功率的解码或较慢且较低功率的解码。
经由第一解码路径122、第二解码路径IM或其任何组合解码的经解码视频数据 126被提供给解码量度逻辑电路1 且还用于产生输出视频信号。解码量度逻辑电路1 响应于经解码视频数据1 且响应于时钟信号118以产生解码量度130。解码量度130被 提供给动态开关120以使开关120能够确定将选择第一解码路径122还是第二解码路径 124。举例来说,解码量度130可指示用以解码所述视频信号的剩余部分的剩余时间量或时 钟循环的数目。作为另一实例,解码量度130可指示超过完成所述视频信号的解码所需的 时钟循环的最坏情况数目的可用时钟循环数目。举例来说,当已知量的数据仍待解码时,可 确定用以完成所述已知量的数据的解码的时钟循环的最坏情况数目并将其与可用时钟循 环的实际数目进行比较。解码量度130可指示超过最坏情况要求的可用时钟循环的数目。在操作期间,可将经编码视频文件110作为一系列经编码视频片段(包括所述代 表性经编码视频片段11 提供给视频片段解码器104。举例来说,经编码视频片段112可 为高清晰度视频信号的宏块。视频片段解码器104可满足支持显示装置108处的视频信号 的高清晰度显示的数据输出速率。举例来说,用于所述视频信号的每一宏块的时钟信号118 的指定数目的循环可足以支持高清晰度显示。动态开关120可经配置以在足够时间或处理循环可用于在第二解码路径IM的较 慢平均速率下进行解码同时维持用以支持经解码视频信号的高清晰度显示的总视频数据 输出速率时在对特定宏块进行解码的同时从第一解码路径122动态地切换到第二解码路 径124。举例来说,动态开关120可经配置以将所述经编码视频片段112的第一部分114提 供给第一解码路径122或提供给第二解码路径124,且接着响应于与第一部分114的解码处 理相关联的解码量度130的值而将经编码视频片段112的后续部分116提供给第一解码路 径122或提供给第二解码路径124。作为特定实例,经编码视频片段112可对应于所述经编码视频信号的宏块,第一 部分114可对应于所述宏块的第一半且后续部分116可对应于所述宏块的第二半。在解码 所述宏块的所述第一半之后,动态开关120可基于所述解码量度130的评估而确定是否足 够时间可用于在第二解码路径1 处以较慢速率解码所述宏块的所述第二半以节省电力。 举例来说,如果解码量度130指示超过用以完成解码的时钟循环的最坏情况数目的足够的 时钟循环可用,那么动态开关120可选择在第二解码路径IM处解码所述宏块的所述第二 半。作为另一特定实例,第一部分114和后续部分可对应于所述宏块内的经编码数据的个 别块。作为又一特定实例,第一部分114和后续部分116可对应于用于编码视频信号的个 别码字,且动态开关104可逐码字地选择解码路径122或124。如将关于图4而论述,经解码视频数据126可经处理以产生经解码视频片段140, 经解码视频片段140被提供给多媒体显示处理器106。举例来说,在经编码视频片段112表 示经编码高清晰度视频信号的宏块的情形下,经解码视频片段140可表示所述高清晰度视 频信号的经解码宏块。视频片段解码器104可作为逐宏块地操作的解码管线的一个或一个 以上级操作且可经由动态开关120而在较低功率解码与较大速度解码之间动态地选择,以 高效地解码信号,同时维持指定总输出速率。参看图2,描绘通过解码系统的数据流的第二说明性实施例并大体将其表示为 200。在动态开关210处接收经编码视频信号202。动态开关210耦合到包括第一查找表 222的第一解码路径220。动态开关210还耦合到包括第二查找表M2、路径逻辑246和第一查找表222的第二解码路径M0。在特定实施例中,系统200实施为经配置以解码经编码 视频信号的视频解码器系统(例如,在图1的视频片段解码器104中)。经编码视频信号202包括可变长度译码(VLC)方案的一串码字C1W2......Cn204。
动态开关210经配置以将所述串码字CpC2......Cn204的每一码字动态地指派给第一解码
路径220或指派给第二解码路径MO以产生经解码码字250。动态开关210可基于解码量 度212而将每一码字指派给第一路径220或指派给第二路径M0,解码量度212可指示可用 于解码经编码视频信号202的剩余部分的处理或时钟循环的当前数目。举例来说,解码量 度212可指示用以在不超过每一宏块的预算时间量或时钟循环的阈值数目的情形下完成 解码高清晰度视频信号的宏块以便支持高清晰度显示的所要数据输出速率的剩余时钟循 环的数目。第一查找表222存储对应于VLC码字的第一集合224的第一数据。VLC码字的第 一集合2M可包括用于编码经编码视频信号202的VLC方案的码字的完整集合。第二查找 表242存储对应于VLC码字的第二集合244的第二数据且包括比所述第一查找表222少的 码字。VLC码字的第二集合244可包括用于编码经编码视频信号202的VLC方案的码字的 不完整集合。VLC码字的第二集合244可包括统计上可能频繁遭遇的短码字。通过在解码 视频信号的同时存储可能遭遇的码字的较小集合,第二查找表242可在每一查找操作期间 使用远比第一查找表222小的功率,但可导致码字在查找操作期间未被发现。第二解码路径240经配置以在接入第一查找表222之前接入第二查找表M2。在 第二查找表242处的查找操作导致码字被发现(即,“命中”)的情形下,路径逻辑246传回 经解码码字250。然而,在路径逻辑246确定在第二查找表242处发生未中的情形下,将码 字提供给第一查找表222以执行第二查找操作。在特定实施例中,当解码每一码字204时,更新解码量度212。动态开关210可经 配置以响应于在解码前一码字之后解码量度212的值而选择第一解码路径220或第二解 码路径240来解码特定码字。举例来说,码字C1可经由第一解码路径220或第二解码路径 240而解码,解码量度212可经更新以反映码字C1的解码,且动态开关210可使用经更新解 码量度212来选择经由第一解码路径220还是第二解码路径240解码下一码字C2。作为另一实例,如将关于图3解释,经编码视频信号202可包括表示经频率变换 像素的系数,且解码量度212可基于可用于解码经编码视频信号202的剩余系数的时间量 而得以确定。可经由串码字Cp C2. . . Cn204编码所述系数,以使得每一码字编码包括行程 (run)信息(例如,零系数的数目)和等级信息(例如,非零系数值)的信息。零系数值的 数目可通过影响待解码的码字204的总数目而影响用以解码经编码视频信号202的时间 量。在操作期间,动态开关210可经配置以响应于解码量度212而动态地选择第一解 码路径220或第二解码路径M0。第二解码路径240可经选择以使用比第一解码路径220 小的平均功率并以比第一解码路径220慢的平均速度解码经编码视频信号202。第一解码 路径220可经选择以在比第二解码路径240快的平均速度下进行解码并消耗比第二解码路 径240多的平均功率。在特定实施例中,在第一查找表222处的VLC码字的第一集合224为VLC码字的 完整集合,以使得保证经由第一查找表222处的单一查找操作而定位被提供给第一查找表222的每一有效码字204。为了在单一查找操作中定位任何码字204,第一查找表222的每 一条目可大体上同时与码字204进行比较。在使用100码字VLC方案的说明性实例中,可 在第一查找表222处针对每一查找操作执行100次同时比较,从而产生快速且可靠的结果, 但使用相对大量的电力。相比之下,在第二查找表242处的VLC码字的第二集合244可包括较小数目的VLC 码字,以使得在第二查找表242处执行的每一查找操作使用比所述第一查找表222处小的 功率量。路径逻辑246确定第二查找表242处的查找操作成功(即,“命中”)(导致经解码 码字250)还是不成功(即,“未中”)。如果不成功,那么路径逻辑246将导致未中的码字 204投送到可保证命中的第一查找表222。在用于编码经编码视频信号202的VLC方案的某些码字204统计上比其它码字更 可能被包括于所述经编码视频信号202中的情形下,VLC码字的第二集合244可经选择以 包括所述统计上最可能的码字204以改进总效率。举例来说,可确定VLC方案的约10到15 个码字可在统计上可能对应于约70%到80%的查找操作。在其中VLC码字的第一集合2M包括100个码字且VLC码字的第二集合244包 括10个码字(对应于百分之七十的码字查找)的说明性实施例中,可针对所述第二查找表 242处的查找操作消耗功率量P。百分之七十的这些查找是成功的,而被发送到所述第一查 找表222的百分之三十的这些查找为未中。存储多达10倍码字的第一查找表222每一查找 操作可消耗为所述第二查找表M2的10倍的功率量,即,10P。因此,可将针对经由所述第 二路径240而解码的每一码字所消耗的平均功率给定为Pavg = 0. 7P+0. 3(P+10P) = 4P,同 时可将用于经由第二路径240而解码的每一码字的查找操作的平均次数给定为Nlookups =0. 7+0. 3*2 = 1. 3。这些结果指示,在说明性实施例中,平均来说,所述第二解码路径MO 解码码字比所述第一解码路径220慢30%,同时使用比所述第一解码路径220小60%的功 率。将理解,此类结果产生于对系统200的非常简化且一般化的分析,以仅出于说明性目的 而产生解码路径的大致比较,且在其它特定实施方案中可获得其它结果。参看图3,其描绘通过解码系统的数据流的第三说明性实施例并大体将其表示为 300。在特定实施例中,系统300可为图1的系统100或图2的系统200的特定实施方案。 系统300包括动态开关310,动态开关310接收包括一串码字ci、c2. . . cn304的经可变长度 编码位流302。动态开关310经配置以基于从解码量度逻辑电路360接收到的解码量度366 的值而将码字304提供给第一查找表322或提供给第二查找表342。解码量度逻辑电路360 响应于循环累加电路370且还响应于位置累加电路380。第一查找表322存储对应于可变长度译码(VLC)方案的码字的第一集合3M的第 一数据。第二查找表342存储对应于VLC码字的第二集合344的第二数据。在特定实施例 中,第二查找表342处的查找操作消耗比所述第一查找表322处小的功率。第一查找表322 经配置以在未在所述第二查找表342处找到特定码字346之后执行所述特定码字346的查 找操作。在特定实施例中,VLC码字的第一集合3M为特定VLC方案的码字的完整集合,且 码字的第二集合344为码字的不完整集合。第一查找表322和第二查找表342中的每一者适于支持查找操作以传回经解码码 字(例如,代表性经解码码字C7350)。通常,经可变长度编码位流302可将视频信号编码为 多个宏块,此被说明为视频图像390分割成12个代表性宏块Ml到M12。特定代表性宏块M7392被说明为包括用于6个代表性块BO到B5的数据。在其它实施例中,所述宏块M7392 可包括用于6个以上块的数据。每一块可包括对应于所述视频图像390的数据的系数数据。 举例来说,可使用离散余弦变换、整数变换或另一方法来编码视频图像,以将像素数据变换 成频域中的频率数据,且块BO到B5可包括指示经量化频率变换值的系数数据。在特定实 施例中,代表性块BO到B3、B4和B5可分别包括亮度数据Y以及色度数据Cb和Cr。特定码字可编码指示零系数的数目和非零系数值的数据。举例来说,经部分解码 代表性块B1394指示遵循Z字形图案396的经解码系数,Z字形图案396被说明为虚线序 列,每一虚线表示可包括任何数目的零系数(即,行程值)和一非零系数(即,等级值)的 码字。第一码字C1表示4个零系数和一具有值V1的非零系数。第二码字C2表示单一零系 数和一具有值V2的非零系数。第三码字C3表示无零系数和1个具有值V3的非零系数。第 四码字C4表示无零系数和1个具有值V4的非零系数。第五码字C5表示5个零系数和1个 具有值V5的非零系数。第六码字C6表示5个零系数和1个具有值V6的非零系数。当前经 解码码字(代表性码字C7350)表示2个零系数352和1个具有值V的非零系数354。位置累加电路380可经配置以指示在可变长度译码位流302中编码的信号的解码 位置。举例来说,位置累加电路380可适于跟踪当前宏块内的当前解码位置的Z字形位置 并更新指示当前宏块的经解码系数的数目的计数器382或指示当前宏块的剩余系数的数 目的计数器384或两者。位置累加电路380可响应于每一经解码码字而更新解码位置并将 经更新值提供给所述解码量度逻辑电路360。循环累加电路370可经配置以指示已用于解码所述可变长度译码位流302的处理 循环的数目。举例来说,循环累加电路370可适于更新指示自从解码过程的特定部分开始 所使用的时钟循环的数目的计数器372、指示用以完成所述解码过程的特定部分的剩余时 钟循环的数目的计数器374或两者。循环累加电路370可响应于每一所逝去时钟循环、每 一经解码码字或两者而更新循环值并将经更新值提供给所述解码量度逻辑电路360。在特定实施例中,解码量度逻辑电路360通常经配置以基于解码经可变长度编码 位流302的第一部分通过将可用时间量减少用于解码所述第一部分的时钟循环的数目并 通过将剩余系数计数减少所述第一部分中所解码的系数的数目而产生解码量度366。特定 来说,解码量度逻辑电路360可将从位置累加电路380接收的经更新解码位置数据存储于 位置存储电路362处,位置存储电路362包括一个或一个以上锁存器、触发器、其它存储装 置,或其任何组合。解码量度逻辑电路360还可将从循环累加电路370接收的经更新循环 数据存储于循环存储电路364处,循环存储电路364包括一个或一个以上锁存器、触发器、 其它存储装置,或其任何组合。解码量度逻辑电路360可对所存储的位置数据和循环数据 执行一个或一个以上算术或逻辑运算以产生所述解码量度366。在操作期间,动态开关310经配置以接收包括第一码字(例如,C1)的可变长度 译码位流302的一部分并将所述第一码字提供给第一选定查找表322或342。接着,动态 开关310响应于与解码所述第一码字相关联的解码量度366的值而将后续码字(例如, C2, C3. . . Cn)提供给第二选定查找表322或342。在说明性实施例中,码字304接收于桶式 移位器(未图示)处,且动态开关310经配置以通过选择性地将所述桶式移位器耦合到 第一查找表322或第二查找表342(例如,经由一个或一个以上多路复用器、交叉式开关 (crossbar)或其它开关电路)而将每一码字304发送或提供给查找表322或324中的一者。可变长度译码位流302可包括具有多个宏块(例如,代表性宏块Ml到MU)的经 编码高清晰度视频信号。(例如)在完成一个宏块的解码且正开始下一宏块的解码的情形 下,解码量度逻辑电路360可经配置以在每一宏块处初始化位置累加电路380和循环累加 电路370。如所说明,每一宏块可含有6个块,其中每一块包括8X8 = 64个系数值。在所述 块的系数值中的每一者均不为零值的情形下,所述块可编码为64个单独码字。相比之下, 在所述块中的除最后系数(即,在位置(行,列)=(7,7)处)之外的全部系数具有零值的 情形下,所述块可编码为单一码字。系统300可经配置以通过保证在预定时间周期或预定数目个时钟循环(其可作为 时间预算或循环预算操作)内执行每一宏块的解码而支持高清晰度显示速率。举例来说, 每一宏块可包括6个块,每一块包括64个系数,其可编码为多达64个码字。因此,解码任 何特定宏块可涉及在用于所述宏块的时间预算内解码多达约384个码字。当开始宏块的解码时(例如,当完成宏块M6的解码且开始宏块M7的解码时),位 置累加电路380可经初始化以指示在指示经解码系数的数目的计数器382处解码的零系 数,或指示在指示剩余系数的数目的计数器384处待解码的剩余384个系数或两者。类似 地,循环累加电路370可经初始化以指示在指示所使用的时钟循环的数目的计数器372处 使用的零循环、在指示剩余时钟循环的数目的计数器374处的循环预算或两者。作为说明性实例,对于在以USMHz操作的移动装置处理器处解码的每秒30个帧 的具有1920x1080分辨率的高清晰度视频信号来说,每一宏块可具有约522个时钟循环的 处理预算。因为除系数解码外可能需要额外处理(例如,处理标头信息),所以用以解码每 一宏块的循环预算可低至384个循环。因为在所说明实施例中,使用不足384个码字来编 码每一宏块,且因为可在所述第一查找表322处经由单一查找操作定位任一码字,所以可 在至少384个循环的预算内可靠地解码每一宏块。解码量度逻辑电路360更新存储于位置存储电路362和循环存储电路364处的 值、产生解码量度366的值,并将解码量度366的值提供给动态开关310。解码量度366的 所述值可指示待解码的经编码信号的剩余量与可用于执行解码的时间量之间的关系。举例 来说,所述解码量度可指示在用于特定宏块的预算中的剩余循环的数目减去所述特定宏块 中待解码的剩余系数的数目。在此实施例中,所述解码量度的零值可向所述动态开关指示 待选择第一查找表322以保证在最慢状况(即,每一剩余系数一个码字)下在循环预算内 完成宏块的解码。然而,解码量度366的任何正值可指示至少一个额外循环可用,使得动态 开关310可选择第二查找表342以降低总平均功率消耗,且如果在第二查找表342处发生 未中,那么可在第一查找表322处执行第二查找操作,同时保持在循环预算内。当解码每一码字时,可基于由所述码字编码的系数数目而更新所述解码位置,且 可更新所使用或剩余时钟循环的计数以反映用于对所述码字解码的循环数目,且可更新解 码量度366的值以用于下一码字。以此方式,系统300可在较低功率、较低速度解码与较高 功率、较高速度解码之间动态地切换,以大体上降低电力消耗,同时保证用以支持高清晰度 显示的数据输出速率。虽然解码量度366的所提供实例说明解码位置与时钟循环之间的特定关系,但可使用其它关系。举例来说,解码量度366可指示所使用循环与经解码系数(或解码位置)之 间的差、剩余循环与剩余系数之间的差、经解码系数与所使用循环的比率、剩余系数与剩余 循环的比率,或例如移动平均值、总体统计结果或其任何组合等其它关系。此外,虽然所提 供的实例说明以宏块粒度进行的解码(即,使用于每一宏块的循环计数和解码计数复位), 但可使用可静态地或动态地确定的其它粒度(例如,逐块地、或经可变长度编码位流302的 块群组、宏块群组,或任何其它部分)。参看图4,其描绘解码管线的特定说明性实施例并大体将其表示为400。解码管线 400包括位流剖析级401、内部存储器403和像素处理级405。在特定实施例中,解码管线 400为宏块解码管线,其中位流剖析级401适于在第一管线循环期间接收经编码宏块402并 将宏块系数数据456输出到内部存储器403,且像素处理级405适于在下一管线循环期间从 内部存储器403读取宏块系数数据456并使用宏块系数数据456产生经重建宏块492。在 特定实施例中,经编码宏块402包括经编码视频信号的码字,且解码管线400被实施为视频 解码器系统的一部分。位流剖析级401包括动态开关410,动态开关410经配置以接收经编码宏块402且 响应于由解码量度逻辑电路460提供的解码量度466的值。动态开关410选择性地提供经 编码宏块402的部分以在多个查找表(包括第一查找表422、第二查找表442和第三查找表 462)中的一选定者处进行解码。第一查找表422经配置以当在第二查找表442处发生未中 时执行查找操作。类似地,第二查找表442经配置以当在第三查找表462处发生未中时执 行查找操作。查找表422、442和462产生系数数据450,系数数据450将被存储于内部存储 器403处且由解码量度逻辑电路460在解码反馈过程中使用。通常,除第三查找表462外, 位流剖析级401可大体上如关于图1到图3中的任一者所描述而起作用。第一查找表422可包括可变长度译码(VLC)方案的码字的完整集合以经由单一查 找操作而提供对VLC方案的任何码字的解码。第二查找表442可包括统计上最可能遭遇的 码字的较小集合以提供(平均来说)比第一查找表422低的功率的解码,但归因于从第二 查找表处的查找操作发生的未中(其经由第一查找表422处的另一查找操作来解决)而具 有可能较长的平均解码时间。第三查找表462可包括统计上最可能遭遇的比第二查找表442更小的码字的集合 以提供(平均来说)比第二查找表442更低的功率的解码。在第三查找表462处发生的未 中导致第二查找表442处的后续查找操作且可能导致第一查找表422处的第三查找操作。 在另一实施例中,当在第三查找表462处未找到特定码字时,将特定码字发送到第一查找 表422或发送到第二查找表442。虽然被描绘为具有三个查找表422、442和462,但在其它 实施例中,位流剖析级401可仅包括两个查找表或者四个或四个以上查找表。参看图5,描绘解码方法的特定说明性实施例并大体将其表示为500。在特定实施 例中,方法500可在图1到图4中所描绘的系统中的任一者处执行。在502处,在视频解码器系统处接收经编码视频信号。举例来说,作为说明性非限 制性实例,所述经编码视频信号可包括可变长度译码(VLC)方案(例如,移动图片专家组 (MPEG)编码标准MPEG-I、MPEG-2和MPEG-4或动画与电视工程师协会(SMPTE) 521M视频编 解码器标准(“VC-1”))的一串码字。进行到504,发送所述经编码视频信号的第一部分以在所述视频解码器系统的第
12一解码路径或第二解码路径处进行解码。所述第二解码路径经配置以使用比所述第一解码 路径少的平均功率。在特定实施例中,所述第二解码路径进一步经配置以在比所述第一解 码路径慢的平均速率下进行解码。前进到506,确定与所述经编码视频信号的所述第一部分的解码相关联的解码量 度。举例来说,所述解码量度可指示待解码的剩余数据量与可用于解码待解码的剩余数据 的时间量或时钟循环的数目之间的关系。继续到508,选择性地发送所述经编码视频信号的后续部分以在所述第一解码路 径或所述第二解码路径处进行解码,其中所述选择响应于所述解码量度。举例来说,在特定 实施例中,当所述解码量度指示足够时间可用于在较慢平均速率下解码所述后续部分时, 可将所述后续部分发送到所述第二解码路径,且否则可将其发送到所述第一解码路径。在 特定实施例中,所述经编码视频信号的第一部分包括可变长度译码方案的至少第一码字且 所述后续部分包括可变长度译码方案的至少第二码字。移动到510,作出选择所述第一解码路径还是所述第二解码路径的确定。当在510 处选择所述第一解码路径来解码所述后续部分时,在512处,将所述第二码字发送到含有 所述可变长度编码方案的码字的第一集合的第一查找表。举例来说,码字的第一集合可包 括VLC方案的码字的完整集合,以保证在单一查找操作中定位每一码字而无表查找未中。当在510处选择所述第二解码路径来解码所述后续部分时,在514处,将所述第二 码字发送到含有可变长度编码方案的码字的第二集合的第二查找表。所述第二查找表包括 比所述第一查找表少的码字。举例来说,所述第二查找表可包括VLC方案的统计上最可能 发生于使用所述VLC方案编码的任何经编码位流中的码字集合。因为所述第二查找表包括 较少表条目,所以在所述第二查找表处的查找操作可消耗比在第一查找表处少的功率,但 也可能导致表查找未中。在516处,作出是否在所述第二查找表处解码所述第二码字的确 定。当在所述第二查找表处未解码第二码字(即,发生表查找未中)时,在512处将所述第 二码字发送到第一查找表。在特定实施例中,所述经编码视频信号的第一部分和后续部分对应于所述经编码 视频信号的特定宏块,且所述解码量度指示可用于解码所述特定宏块的剩余像素以维持用 以支持经解码视频信号的高清晰度显示的数据输出速率的时间量。在特定实施例中,所述 方法在518处继续,其中将对应于在宏块解码管线的第一级处产生的特定宏块的经解码数 据存储到所述宏块解码管线的内部存储器。在520处,可从所述内部存储器读取所述经解 码数据且可在所述宏块解码管线的第二级处重建所述特定宏块。所述第一级可在预定量的 时间内产生对应于所述特定宏块的经解码数据,而所述第二级同时在所述预定量的时间内 重建先前宏块。移动到522,产生经解码视频信号。所述经解码视频信号基于解码所述经编码视频 信号的第一部分和第二部分(包括任何后续部分)且可包括VLC编码方案的一个或一个以 上宏块。如所说明,解码所述经编码视频信号可包括动态地选择第一解码路径以增加解码 速度或在处理资源足以启用以较慢速度进行的解码时选择第二解码路径以节省电力。当使 解码过程管线化时,使用解码量度的此动态选择(其中所述解码量度基于先前解码性能) 实现降低的电力消耗,同时保证每一管线级不超过所分配资源预算。举例来说,每一管线级可具有所分配预算的处理循环以处理高清晰度视频信号的宏块,且可执行降低的功率的解 码,同时保证与所分配预算的处理循环相符。参看图6,描绘便携式电子装置的特定说明性实施例并大体将其表示为600。所 述便携式电子装置包括具有用以基于解码量度选择解码路径的动态开关的视频解码器系 统664。便携式电子装置600包括耦合到存储器632的处理器610 (例如,数字信号处理器 (DSP))。处理器610还耦合到所述具有用以基于解码量度选择解码路径的动态开关的视频 解码器系统664。在说明性实例中,所述具有用以基于解码量度选择解码路径的动态开关的 视频解码器系统664包括图1到图4中所描绘的系统中的任一者,或可根据图5的方法而 操作,或其任何组合。便携式电子装置600可为电话、个人数字助理(PDA)、便携式游戏装 置、笔记本或平板计算机或任何其它类型的便携式电子装置。图6展示耦合到所述处理器610并耦合到显示装置628的显示控制器626。音频 编码器/解码器(CODEC) 634还可耦合到所述处理器610。扬声器636和麦克风638可耦合 到所述CODEC 634ο图6还指示无线控制器640可耦合到处理器610并耦合到无线天线642。无线控 制器640可经配置以经由天线642接收经编码高清晰度视频信号668,且存储器632可经配 置以存储经编码高清晰度视频信号668。具有用以基于解码量度选择解码路径的动态开关 的视频解码器系统664可适于解码经编码高清晰度视频信号668并将输出视频信号提供给 显示控制器626以在显示装置6 处显示。所述具有用以基于解码量度选择解码路径的动态开关的视频解码器系统664可 以动态地选择满足显示速率要求的低功率操作的方式解码经编码高清晰度视频信号668。 举例来说,在使用具有最小数据速率显示要求的可变长度码字编码方案来编码经编码高清 晰度视频信号668的情形下,视频解码器系统664可选择具有较高平均功率消耗的较快解 码操作直到确信与最小数据速率显示要求相符为止,且接着选择具有较低平均功率消耗的 较慢解码操作。在特定实施例中,具有用以基于解码量度选择解码路径的动态开关的视频解码器 系统664包括用于解码经编码高清晰度视频信号668的第一装置,和用于以比所述第一装 置慢的平均速度并使用比所述第一装置小的平均功率解码经编码高清晰度视频信号668 的第二装置。具有用以基于解码量度选择解码路径的动态开关的视频解码器系统664还可 包括选择电路,其用以响应于高清晰度视频信号668的宏块的未经解码系数的数目且进一 步响应于可用于解码所述宏块的所述未经解码系数的剩余处理循环的数目而动态地选择 所述第一装置或所述第二装置。作为一实例,所述第一装置可包括具有存储码字的第一集 合2M的第一查找表222的第一解码路径220,且所述第二装置可包括具有存储码字的第二 集合M4的第二查找表M2的第二解码路径M0,如图2中所说明。作为另一实例,所述第 一装置可包括存储码字的第一集合324的第一查找表322,且所述第二装置可包括存储码 字的第二集合344的第二查找表342,如图3中所说明。作为又一实例,所述第一装置和所述第二装置可并入到解码管线(例如,图4的解 码管线400)中,所述解码管线包括第一管线级,其用以确定高清晰度信号的特定宏块的 系数;以及第二管线级,其用以接收在所述第一管线级处确定的特定宏块的系数并使用所 述特定宏块的系数重建高清晰度视频信号。所述第一装置可对应于第一查找表422、第二查找表442或两者,且所述第二装置可对应于第三查找表462、第二查找表442或两者。或 者,用于解码的所述第一装置和所述第二装置可包括启用数据存储和检索的其它结构(例 如,一个或一个以上存储器装置、寄存器、高速缓冲存储器、锁存器、触发器、状态机、可编程 阵列或其它电路或电路装置、硬件、固件,或其任何组合)。在特定实施例中,处理器610、显示控制器626、存储器632、CODEC 634、无线控制 器640和具有用以基于解码量度选择解码路径的动态开关的视频解码器系统664包括于系 统级封装(system-in-package)或芯片上系统装置622中。在一特定实施例中,输入装置 630和电源644耦合到芯片上系统装置622。此外,在特定实施例中,如图6中所说明,显示 装置628、输入装置630、扬声器636、麦克风638、无线天线642和电源644处于芯片上系统 装置622外部。然而,显示装置628、输入装置630、扬声器636、麦克风638、无线天线642 和电源644中的每一者可耦合到芯片上系统装置622的一组件,例如接口或控制器。技术人员将进一步了解,可将结合本文中所揭示的实施例而描述的各种说明性逻 辑块、配置、模块、电路和算法步骤实施为电子硬件、计算机软件或两者的组合。为清晰地说 明硬件与软件的此可互换性,各种说明性组件、块、配置、模块、电路和步骤已在上文大体按 其功能性加以描述。将此功能性实施为硬件还是软件取决于特定应用和强加于整个系统上 的设计约束。熟练的技术人员可以变化的方式针对每一特定应用实施所描述的功能性,但 此类实施决策不应被解释为导致脱离本发明的范围。结合本文中所揭示的实施例而描述的方法或算法的步骤可直接以硬件、以由处理 器执行的软件模块或以两者的组合来体现。软件模块可驻存于随机存取存储器(RAM)、快闪 存储器、只读存储器(ROM)、可编程只读存储器(PR0M)、可擦除可编程只读存储器(EPROM)、 电可擦除可编程只读存储器(EEPROM)、寄存器、硬盘、可装卸盘、紧密光盘只读存储器 (CD-ROM),或此项技术中已知的任何其它形式的存储媒体中。示范性存储媒体耦合到所述 处理器,以使得所述处理器可从所述存储媒体读取信息和将信息写入到所述存储媒体。在 替代方案中,所述存储媒体可与所述处理器成一体式。所述处理器和所述存储媒体可驻存 于专用集成电路(ASIC)中。所述ASIC可驻存于计算装置或用户终端中。在替代方案中, 所述处理器和所述存储媒体可作为离散组件驻存于计算装置或用户终端中。提供所揭示的实施例的先前描述以使得所属领域的任何技术人员能够制造或使 用所揭示的实施例。所属领域的技术人员将容易了解对这些实施例的各种修改,且可在不 脱离本发明的范围的情况下将本文中所定义的原理应用于其它实施例。因此,本发明不希 望限于本文中所展示的实施例,而是应被赋予与由所附权利要求书界定的原理和新颖特征 一致的可能的最广范围。
权利要求
1.一种系统,其包含视频解码器系统,其经配置以接收经编码视频信号并输出经解 码视频信号,所述视频解码器系统包括第一解码路径;第二解码路径,其经配置以在比所 述第一解码路径慢的平均速率下进行解码;以及动态开关,其经配置以将所述经编码视频 信号的第一部分提供给所述第一解码路径或提供给所述第二解码路径,所述动态开关进一 步经配置以响应于与所述经编码视频信号的所述第一部分的解码处理相关联的解码量度 的值而将所述经编码视频信号的后续部分提供给所述第一解码路径或提供给所述第二解 码路径。
2.根据权利要求1所述的系统,其中所述第二解码路径经配置以使用比所述第一解码 路径少的平均功率。
3.根据权利要求1所述的系统,其中所述经编码视频信号包括表示经频率变换像素的 系数,且其中所述解码量度是基于可用于解码所述经编码视频信号的剩余系数的时间量而 确定。
4.根据权利要求3所述的系统,其进一步包含解码量度逻辑,所述解码量度逻辑经配 置以基于解码所述第一部分通过将所述可用时间量减少用于解码所述第一部分的时钟循 环的数目并通过将剩余系数计数减少所述第一部分的系数的数目而产生所述解码量度。
5.根据权利要求1所述的系统,其进一步包含无线控制器,其经配置以经由天线而接 收所述经编码视频信号;存储器,其用以存储所述经编码视频信号;以及显示控制器,其经 配置以将由所述视频解码器系统输出的所述经解码视频信号提供给显示装置。
6.根据权利要求1所述的系统,其中所述第一部分和所述第二部分对应于可变长度译 码方案的码字,其中所述解码量度在每一码字被解码时得以更新,且其中所述动态开关经 配置以响应于在解码前一码字之后所述解码量度的值而选择所述第一解码路径或所述第 二解码路径来解码特定码字。
7.根据权利要求6所述的系统,其中所述经编码视频信号包括高清晰度视频信号的宏 块,且其中所述动态开关经配置以在足够处理循环可用于在所述较慢平均速率下进行解码 同时维持用以支持经解码视频信号的高清晰度显示的数据输出速率时,在对特定宏块进行 解码的同时从所述第一解码路径动态地切换到所述第二解码路径。
8.根据权利要求7所述的系统,其中所述第一解码路径包括第一查找表,所述第一查 找表存储对应于所述可变长度译码方案的所述码字的完整集合的第一数据,其中所述第二 解码路径包括所述第一查找表且还包括第二查找表,所述第二查找表存储对应于码字的不 完整集合的第二数据,码字的所述不完整集合包括统计上可能接收的码字,且其中所述第 二解码路径经配置以在存取所述第一查找表之前存取所述第二查找表。
9.根据权利要求1所述的系统,其中所述视频解码器系统进一步包含位流剖析器,其经配置以输出对应于所述经编码视频信号的可变长度译码方案的码字 的系数数据,其中所述位流剖析器包括所述动态开关;内部存储器,其经配置以存储对应于 高清晰度视频信号的特定宏块的所述系数数据;以及像素处理器,其经配置以存取所述内 部存储器以使用所述系数数据重建所述经解码视频信号的所述特定宏块,其中所述位流剖析器和所述像素处理器被实施为宏块解码器管线的单独级。
10.一种方法,其包含在视频解码器系统处接收经编码视频信号;将所述经编码视频 信号的第一部分发送到所述视频解码器系统的第一解码路径或第二解码路径,其中所述第二解码路径经配置以使用比所述第一解码路径少的平均功率;确定与解码所述经编码视频 信号的所述第一部分相关联的解码量度;响应于所述解码量度而选择性地将所述经编码视 频信号的后续部分发送到所述第一解码路径或所述第二解码路径;以及基于解码所述第一 部分和所述后续部分而产生经解码视频信号。
11.根据权利要求10所述的方法,其中所述第二解码路径进一步经配置以在比所述第 一解码路径慢的平均速率下进行解码。
12.根据权利要求10所述的方法,其中所述后续部分当所述解码量度指示足够时间可 用于在所述较慢平均速率下解码所述后续部分时被发送到所述第二解码路径。
13.根据权利要求10所述的方法,其中所述第一部分包括可变长度编码方案的至少第 一码字,且其中所述后续部分包括可变长度译码方案的至少第二码字。
14.根据权利要求13所述的方法,其进一步包含当所述第一解码路径经选择以解码 所述后续部分时,将所述第二码字发送到含有所述可变长度编码方案的码字的第一集合的 第一查找表;且当所述第二解码路径经选择以解码所述后续部分时,将所述第二码字发送 到含有所述可变长度编码方案的码字的第二集合的第二查找表,所述第二查找表包括比所 述第一查找表少的码字。
15.根据权利要求10所述的方法,其中所述第一部分和所述后续部分对应于所述经编 码视频信号的特定宏块,且其中所述解码量度指示可用于解码所述特定宏块的剩余像素以 维持用以支持所述经解码视频信号的高清晰度显示的数据输出速率的时间量。
16.根据权利要求15所述的方法,其进一步包含;将对应于在宏块解码管线的第一级 处产生的特定宏块的经解码数据存储到所述宏块解码管线的内部存储器;以及从所述内部 存储器读取所述经解码数据,且在所述宏块解码管线的第二级处重建所述特定宏块,其中所述第一级在预定量的时间内产生对应于所述特定宏块的所述经解码数据,而所 述第二级同时在所述预定量的时间内重建先前宏块。
17.—种系统,其包含多个查找表,其包括第一查找表,其存储对应于可变长度译码 方案的码字的完整集合的第一数据;以及第二查找表,其存储对应于所述码字的第一不完 整集合的第二数据;以及开关,其经配置以接收包括第一码字的可变长度译码位流的一部 分且将所述第一码字发送到所述多个查找表中的第一选定查找表,并响应于与解码所述第 一码字相关联的解码量度的值而将后续码字发送到所述多个查找表中的第二选定查找表。
18.根据权利要求17所述的系统,其中所述第二查找表处的查找操作消耗比所述第一 查找表处的查找操作小的功率,且其中所述第一查找表经配置以在未在所述第二查找表处 找到特定码字之后执行所述特定码字的查找操作。
19.根据权利要求18所述的系统,其进一步包含位置累加器,其经配置以指示信号的 解码位置,其中所述信号被编码于所述可变长度译码位流中;以及循环累加器,其经配置以 指示已用于解码所述可变长度译码位流的处理循环的数目。
20.根据权利要求19所述的系统,其进一步包含解码量度逻辑,所述解码量度逻辑经 配置以使用所述解码位置和所述处理循环数目来确定所述解码量度的所述值。
21.根据权利要求20所述的系统,其中所述可变长度译码位流包括具有多个宏块的经 编码高清晰度视频信号,且其中所述解码量度逻辑经配置以在每一宏块处初始化所述位置 累加器和所述循环累加器。
22.根据权利要求21所述的系统,其中所述多个查找表进一步包括存储对应于所述码 字的第二不完整集合的第三数据的第三查找表,且其中当所述选定查找表为所述第三查找 表且所述特定码字不存储于所述第三查找表处时,所述特定码字被发送到所述第一查找表 或发送到所述第二查找表。
23.一种便携式电子装置,其包含无线控制器,其经配置以经由天线接收经编码高清 晰度视频信号;第一装置,其用于解码所述经编码高清晰度视频信号;第二装置,其用于以 比所述用于解码的第一装置慢的平均速度并使用比所述用于解码的第一装置小的平均功 率来解码所述经编码高清晰度视频信号;以及选择电路,其用以响应于所述经编码高清晰 度视频信号的宏块的未经解码系数的数目且进一步响应于可用于解码所述宏块的所述未 经解码系数的剩余处理循环的数目而动态地选择所述用于解码的第一装置或所述用于解 码的第二装置,其中所述选择电路经配置以基于所述宏块的至少一个先前部分的解码处理 而选择所述用于解码的第一装置或所述用于解码的第二装置来解码所述宏块的特定部分。
24.根据权利要求23所述的便携式电子装置,其中所述用于解码的第一装置包含存储 码字的第一集合的第一查找表,且其中所述用于解码的第二装置包含存储码字的第二集合 的第二查找表,所述第二集合含有比所述第一集合少的码字。
25.根据权利要求M所述的便携式电子装置,其中所述用于解码的第一装置和所述用 于解码的第二装置实施于解码管线中,所述解码管线包含第一管线级,其用以确定所述经 编码高清晰度视频信号的特定宏块的系数;以及第二管线级,其用以接收在所述第一管线级处确定的所述特定宏块的所述系数,并使 用所述特定宏块的所述系数重建所述高清晰度视频信号。
全文摘要
本发明揭示解码系统和方法。在特定实施例中,视频解码器系统包括第一解码路径;以及第二解码路径,其经配置以在比所述第一解码路径慢的平均速率下进行解码。所述视频解码器系统包括动态开关,所述动态开关经配置以将所述经编码视频信号的第一部分提供给所述第一解码路径或提供给所述第二解码路径。所述动态开关进一步经配置以响应于与所述第一部分的解码处理相关联的解码量度的值而将所述经编码视频信号的后续部分提供给所述第一解码路径或提供给所述第二解码路径。
文档编号H04N7/26GK102132565SQ200980133149
公开日2011年7月20日 申请日期2009年8月25日 优先权日2008年8月25日
发明者肖舒, 西塔拉曼·加纳帕蒂·苏布拉马尼安, 鲍易亮 申请人:高通股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1