CN102982007A - 并向量分数与符号对称舍入误差的乘积的快速计算 - Google Patents

并向量分数与符号对称舍入误差的乘积的快速计算 Download PDF

Info

Publication number
CN102982007A
CN102982007A CN2012104908859A CN201210490885A CN102982007A CN 102982007 A CN102982007 A CN 102982007A CN 2012104908859 A CN2012104908859 A CN 2012104908859A CN 201210490885 A CN201210490885 A CN 201210490885A CN 102982007 A CN102982007 A CN 102982007A
Authority
CN
China
Prior art keywords
conversion
coefficient
dct
error
value
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN2012104908859A
Other languages
English (en)
Other versions
CN102982007B (zh
Inventor
尤里娅·列兹尼克
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Qualcomm Inc
Original Assignee
Qualcomm Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Family has litigation
First worldwide family litigation filed litigation Critical https://patents.darts-ip.com/?family=40409178&utm_source=google_patent&utm_medium=platform_link&utm_campaign=public_patent_search&patent=CN102982007(A) "Global patent litigation dataset” by Darts-ip is licensed under a Creative Commons Attribution 4.0 International License.
Application filed by Qualcomm Inc filed Critical Qualcomm Inc
Publication of CN102982007A publication Critical patent/CN102982007A/zh
Application granted granted Critical
Publication of CN102982007B publication Critical patent/CN102982007B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F7/00Methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F7/38Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation
    • G06F7/48Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation using non-contact-making devices, e.g. tube, solid state device; using unspecified devices
    • G06F7/483Computations with numbers represented by a non-linear combination of denominational numbers, e.g. rational numbers, logarithmic number system or floating-point numbers
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • G06F17/10Complex mathematical operations
    • G06F17/14Fourier, Walsh or analogous domain transformations, e.g. Laplace, Hilbert, Karhunen-Loeve, transforms
    • G06F17/147Discrete orthonormal transforms, e.g. discrete cosine transform, discrete sine transform, and variations therefrom, e.g. modified discrete cosine transform, integer transforms approximating the discrete cosine transform
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F7/00Methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F7/38Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation
    • G06F7/48Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation using non-contact-making devices, e.g. tube, solid state device; using unspecified devices
    • G06F7/52Multiplying; Dividing
    • G06F7/523Multiplying only
    • G06F7/533Reduction of the number of iteration steps or stages, e.g. using the Booth algorithm, log-sum, odd-even
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/42Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/60Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F7/00Methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F7/38Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation
    • G06F7/48Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation using non-contact-making devices, e.g. tube, solid state device; using unspecified devices
    • G06F7/499Denomination or exception handling, e.g. rounding or overflow
    • G06F7/49942Significance control

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Pure & Applied Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Mathematical Optimization (AREA)
  • Computational Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Physics (AREA)
  • General Engineering & Computer Science (AREA)
  • Computing Systems (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Data Mining & Analysis (AREA)
  • Algebra (AREA)
  • Software Systems (AREA)
  • Discrete Mathematics (AREA)
  • Databases & Information Systems (AREA)
  • Nonlinear Science (AREA)
  • Complex Calculations (AREA)
  • Error Detection And Correction (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)

Abstract

本申请涉及并向量分数与符号对称舍入误差的乘积的快速计算。整数值与无理值的乘积可通过符号对称算法来确定。过程可确定使例如平均不对称、平均误差、误差方差及误差量值等度量最小化的可能算法。给定整数变量x及近似于无理分数的有理并向量常数,可产生符号对称的一系列中间值。所述中间值可包括加法、减法及右移运算的序列,当共同求和时,求所述整数值与所述无理值的所述乘积的近似值。可移除例如0的加法或减法或0个位的移位等其它运算。

Description

并向量分数与符号对称舍入误差的乘积的快速计算
分案申请的相关信息
本申请是分案申请。该分案的母案是申请日为2008年8月28日、申请号为200880104677.2、发明名称为“并向量分数与符号对称舍入误差的乘积的快速计算”的发明专利申请案。
技术领域
本文中的标的物大体上涉及处理,且明确地说,涉及用于硬件及软件处理中的近似技术。
背景技术
算术移位可用以执行带符号整数与2的幂的乘法或除法。对带符号或无符号的二进制数向左移位n个位具有使其与2n相乘的效果。对2补数带符号的二进制数向右移位n个位具有用2n除其的效果,但其通常舍去(即,向负无穷大)。由于右移非线性运算,所以算术右移可增加舍入误差且产生可不等于右移之后的乘法结果的结果。
在一些实施方案中,符号对称算法可用于IDCT变换架构或其它数字滤波器中。
算术移位的使用的一个实例是在一些信号处理算法的定点实施方案中,例如,FFT、DCT、MLT、MDCT等。此类信号处理算法通常使用并向量有理分数来近似于这些算法的数学定义中的无理(代数或超越)因子。此方式允许使用整数加法及移位而非较复杂运算来执行这些无理分数的乘法。
发明内容
整数值及无理值的乘积可由符号对称算法确定。过程可确定最小化例如平均不对称、平均误差、误差方差及误差量值的度量(metric)的可能算法。给定整数变量x及近似于无理分数的有理并向量常数,可产生符号对称的一系列中间值。给定加法、减法及右移运算的序列,符号对称算法可对整数值及无理值的乘积求近似值。可移除例如0的加法或减法或0个位的移位的其它运算以简化处理。
提供此发明内容以便以简化形式引入以下在详细描述中进一步描述的概念的选择。此发明内容并不打算识别所主张标的物的关键特征或基本特征,其也并不打算用以限制所主张标的物的范围。
附图说明
图1为各种计算算法的结果的曲线。
图2为确定用以确定乘积的符号对称算法的实例过程的流程图。
图3为实施定点IDCT算法的示范性架构。
图4为示范性编码系统的框图。
图5为示范性解码系统的框图。
具体实施方式
离散余弦变换(DCT)及反离散余弦变换(IDCT)执行关于无理常数的乘法运算(即,余弦)。在DCT/IDCT的实施方案的设计中,这些无理常数的计算乘积的近似可使用定点算术执行。一种用于将浮点值转换为定点值的技术是基于通过并向量分数求无理因子αi近似值:
αi≈ai/2k    (1)
其中ai与k两者都为整数。x与因子αi的乘法提供整数算术中的近似的实施方案,如下:
i≈(x*ai)>>k    (2)
其中>>指示逐位右移运算。
精确位的数目k可影响并向量有理近似的复杂性。在软件实施方案中,精确参数k可由寄存器的宽度(例如,16或32)约束且不满足此设计约束的后果可导致延长变换的执行时间。在硬件设计中,精确参数k影响实施加法器及乘法器所需的门数目。因此,定点设计中的目标为最小化位k的总数目,同时维持近似的充分准确性。
在无对值αi任何特定约束的情况下且假定对于任何给定k,分母ai的对应值可经选择使得:
| α i - a i / 2 k | = 2 - k | 2 k α i - a i | = 2 - k mim z ∈ Z | 2 k α i - z |
且(1)中的近似的绝对误差应与2k成反比:
|αi-ai/2k|≤2-k-1
即,每一额外精确位(即,增加k)应将误差减小一半。
在一些实施方案中,如果待求近似值的值α1、αn可由一些额外参数ξ缩放,则可改进误差率。如果α1、…、αn为n个无理数的集合(n≥2),则存在无限多个n+2元组a1、…、an、k、ξ,其中a1、…、an∈Z,k∈N且ξ∈Q,使得:
max { | &xi; &alpha; 1 - a 1 / 2 k | , . . . , | &xi; &alpha; n - a n / 2 k | } < n n + 1 &xi; - 1 / n 2 - k ( 1 + 1 - n )
换句话说,如果可改变算法使得所有其无理因子α1、…、αn可由一些参数ξ预先缩放,则应存在具有如2-k(1+1/n)一样快速减小的绝对误差的近似。举例来说,当n=2时,在位的使用中可存在大致50%或更高的有效性。然而,对于因子α1、…、αn的大集合,此增益可较小。
以上关系(1、2)中所示的并向量近似将计算与无理常数的乘积的问题减小为与整数的乘法。通过使用5位并向量近似23/32,整数与无理因子
Figure BDA00002475722800032
的乘法说明求无理常数的近似值的过程。通过查看23=10111的二进制位模式且用加法运算代入每一“1”,整数乘以23的乘积可如下确定:
x*23=(x<<4)+(x<<2)+(x<<1)+x
此近似要求3个加法及3个移位运算。通过进一步注意最后3数字形成一系列“1”,可使用以下:
x*23=(x<<4)+(x<<3)-x,
其将复杂性减小为仅2个移位运算及2个加法运算。
与隔离数字“1”相关联的运算“+”或与运行“1…1”的开始及结束相关联的“+”及“-”的序列通常被称为“正规符号数字”(CSD)分解。CSD在无乘法器电路的设计中为众所周知的实施方案。然而,CSD分解不总是用最小数目的运算产生结果。举例来说,考虑相同因子
Figure BDA00002475722800033
的8位近似及其CSD分解:
x*181=(x<<7)+(x<<5)+(x<<4)+(x<<2)+x
其使用4个加法运算及4个移位运算。通过重新布置计算且再使用中间结果,可构造更有效的算法:
x2=x+(x<<2);//101
x3=x2+(x<<4);//10100
x4=x3+(x2<<5);//10110101=x*181
根据实施方案,与并向量分数的乘积的计算可通过允许将右移用作初等运算导出。举例来说,考虑因子
Figure BDA00002475722800034
且根据其CSD分解使用右移及加法运算,获得以下:
x*23/32~(x>>1)+(x>>2)-(x>>5)。(3)
或通过进一步注意1/2+1/4=1-1/4:
x*23/32~x-(x>>2)-(x>>5)。(4)
计算与相同因子的乘积的又一方式为:
x*23/32~x-((x+(x>>4))>>2)+((-x)>>6)。(5)
图1说明由算法(3、4及5)对整数及无理分数23/32的乘法所产生的值的曲线。每一算法(3、4及5)计算对乘以无理分数23/32的乘积求近似的值;然而,这些近似中的每一者中的误差不同。举例来说,算法(4)产生所有正误差,具有55/32的最大量值。算法(3)具有更平衡误差,具有在±65/64内振荡的量值。最终,算法(5)优选地产生具有在±7/8中振荡的符号对称误差。因此,符号对称算法将产生最小化误差的平衡结果。
算法的符号对称性质意味着对于任何(x∈Z):
A a i , b ( - x ) = - A a i , b ( x )
且其还暗示对于任何N,且假定
Figure BDA00002475722800043
&Sigma; x = - N N [ A a i , b ( x ) - x a i b ] = 0
即,在任何对称间隔的零平均误差。
此性质可用于信号处理算法的设计中,由于其最小化由定点近似引入的舍入误差将累积的机率。下文所述的为用于计算与并向量分数的乘积的基于右移符号对称算法的基础,以及其复杂性的上限。
给定并向量分数a1/2b、…、am/2b的集合,可界定算法:
Figure BDA00002475722800045
作为以下步骤序列:
x1、x2、…、xt
其中x1:=x且其中随后值xk(k=2、…、t)是通过使用以下初等运算中的一者产生:
x k : x i > > s k ; 1 &le; i > k , s k &GreaterEqual; 1 ; - x i ; 1 &le; i < k ; x i + x j ; 1 &le; i , j < k ; x i - x j ; 1 &le; i , j < k , i &NotEqual; j .
算法在存在下标j1、…、jm≤t时终止,使得:
xj1~x*a1/2b、…、xjm~x*am/2b
因此,一些实施方案检查最小化以下度量中的一者或一者以上的算法:
平均不对称:
&chi; A a i , b = 1 2 b &Sigma; x = 1 2 b | A a i , b ( x ) + A a i , b ( - x ) |
平均误差:
&mu; A a i , b = 1 2 b + 1 &Sigma; x = - 2 b 2 b [ A a i , b ( x ) - x a i 2 b ]
误差方差:
&sigma; A a i , b 2 = 1 2 b + 1 - 1 &Sigma; x = - 2 b 2 b [ A a i , b ( x ) - &mu; A a i , b ] 2
误差量值:
&delta; A a i , b max = max x = - 2 b . . . 2 b | A a i , b ( x ) - &mu; A a i , b |
当计算与多个常数
Figure BDA00002475722800055
的乘积时,以上度量(针对常数
Figure BDA00002475722800056
中的每一者计算)的最坏状况值可用于评估算法的效率。
图2展示用于计算乘积的过程100中的阶段。在102处,接收整数值,且在104处,断定表示待乘以整数的无理值的有理并向量常数。在106处,可确定中间值。举例来说,给定整数变量x及有理并向量常数
Figure BDA00002475722800057
的集合,可如下确定一系列中间值:
w0,w1,w2,...,wt
其中:w0=0,w1=x,且对于所有k≥2值,wk经如下获得:
w k=±wi±(wj>>sk)(i,j<k),
其中±符号暗示需要以两项执行的加法运算或减法运算,且>>指示变量zj右移sk位。
在108处,确定对应于乘积的此系列中的点。即,此步骤的结果为下标l1,...,lm≤t,使得:
w l 1 &ap; x a 1 2 b , . . . , w l 1 &ap; x a m 2 b
在110处,对照某些精确度量来分析所得到的输出值
Figure BDA00002475722800059
举例来说,可分析这些值以确定其是否使平均值、不对称、方差、量值中的一者最小化。
在一些实施方案中,过程100可移除0的加法或减法,或0个位的移位。在一些实施方案中,中间值的序列可经选择使得此完整运算的总计算(或实施方案)成本最小。
因此,给定度量的集合,可存在具有可由加法的总数目、移位的总数目等特征化的复杂性的算法。照此,在达到最小数目的加法及移位等的算法之中存在具有最小数目的加法、最小数目的移位、最小数目的加法及移位及最小数目的加法的算法。
图3说明示范性定点8×8IDCT架构120。所述架构可实施是x的符号对称值的算法。在许多实施方案中,此类算法对于因子的给定集合而言可为最不复杂的。如上所述,IDCT的设计可为对称的或产生良好平衡的舍入误差。在一些实施方案中,可分析对例如由算法所产生误差的平均值、方差及量值(最大值)等度量的估计。在评定算法的复杂性中,可考虑运算的数目,以及最长执行路径及计算所需的中间寄存器的最大数目。
在一些实施方案中,在所提议定点IDCT架构120的设计中使用的架构可特征化具有可分及缩放特征。缩放级122可包括单一8×8矩阵,其通过因子分解用于行变换的1D比例因子及用于列变换的1D比例因子而经预先计算。缩放级122还可用于将P个精确位预先分配到输入DCT系数中的每一者,从而提供定点“尾数(mantissa)”供贯穿剩余的变换使用。
在实施方案中,经缩放1D变换设计的基础可为C·洛夫勒(C.Loeffler)、A·莱特恩博格(A.Ligtenberg)及G·S·莫斯奇茨(G.S.Moschytz)利用3个平面旋转及2个独立因子γ=√2的众所周知的因子分解的变体。为了提供LLM因子分解内的常数α、β、δ、ε、η及θ的有效有理近似,可使用两个浮动因子ξ及ζ且将其应用于这些常数的两个子群组,如下:
ξ:a’=ξa,β’=ξβ;
ζ:δ’=ζδ,ε=ζε,η’=ξη,θ’=ζθ;
这些乘法可通过使每一输入DCT系数与ξ及ζ的相应倒数相乘而在缩放级122中由ξ及ζ倒置。即,比例因子的向量可在1D变换级联(例如,级126及128)中的第一者之前经计算以供在缩放级122中使用。
σ=(1,1/ζ,1/ζ,γ/ζ,1,γ/ζ,1/ζ,1/ζ)T
这些因子随后可合并到缩放矩阵中,其如下经预先计算:
&Sigma; = &sigma;&sigma; T 2 S = A B C D A D C B B E F G B G F E C F H I C I H F D G I J D J I D A B C D A D C B D G I J D J I G C F H I C I H F B E F G B G F E
其中A-J指示此乘积中的唯一值:
A=2S C = 2 S &xi; ,
Figure BDA00002475722800074
Figure BDA00002475722800076
Figure BDA00002475722800077
H = 2 S &xi; 2 ,
Figure BDA00002475722800079
且S指示经分配用于缩放的定点精确位的数目。
此参数S可经选择使得其大于或等于每一输入系数的尾数的位的数目P。此允许系数Fvu的缩放如下实施:
F′vu=(Fvu*Svu)>>(S-P)
其中Svu≈∑vu指示比例因子的矩阵中的值的整数近似。
在1D变换的系列(级126及128)中的最后变换级的未尾,P个定点尾数位(加上在执行1D级中的每一者期间所累积的3个额外位
Figure BDA000024757228000711
)简单地通过右移运算130从变换输出移位,如下:
fyx=f′yx>>(P+3)
为了确保所计算值的适当舍入,2P+2的偏置可使用DC偏置级124在移位之前添加到值f′yx。此舍入偏置通过在执行第一1D变换之前扰动DC系数来实施:
F″00=F′00+2P+2
在一些实施方案中,如上所论述的平衡(即,符号对称)算法可用于ISO/IEC 23002-2IDCT标准中。此标准界定用于计算与以下常数的乘积的过程:
y~y*113/128,
z~y*719/4096
且如下完成:
x2=(x>>3)-(x>>7);
x3=x2-(x>>11);
y=x2+(x3>>1);
z=x-x2;
图4展示编码系统400的框图,其可包括具有符号对称舍入误差的实施并向量分数的变换,如上所述。捕获装置/存储器410可接收源信号,执行到数字格式的转换且提供输入/原始数据。捕获装置410可为视频摄像机、数字化器或某一其它装置。处理器420处理原始数据且产生经压缩数据。在处理器420内,原始数据可由DCT单元422变换,由Z字形扫描单元424扫描,由量化器426量化,由熵编码器428编码且由包化器430包化。DCT单元422可根据本文中所述的技术对原始数据执行2D DCT且可支持全界面与缩放界面两者。单元422到430中的每一者可实施硬件、固件及/或软件。举例来说,DCT单元422可以专用硬件、用于算术逻辑单元(ALU)的指令的集合等实施。
存储单元440可存储来自处理器420的经压缩数据。发射器442可发射经压缩数据。控制器/处理器450控制编码系统400中的各种单元的操作。存储器452存储用于编码系统400的数据及程序码。一个或一个以上总线460使编码系统400中的各种单元互连。
图5展示解码系统500的框图,其可包括具有符号对称舍入误差的实施并向量分数的变换,如上所述。接收器510可从编码系统接收经压缩数据,且存储单元512可存储所接收的经压缩数据。处理器520处理经压缩数据且产生输出数据。在处理器520内,经压缩数据可由解包化器522解包化,由熵解码器524解码,由反量化器526反量化,由反Z字形扫描单元528以适当次序放置且由IDCT单元530变换。IDCT单元530可根据本文中所述的技术对全变换系数或缩放变换系数执行2D IDCT且可支持全界面与缩放界面两者。单元522到530中的每一者可以硬件、固件及/或软件实施。举例来说,IDCT单元530可以专用硬件、用于ALU的指令的集合等实施。
显示器单元540显示来自处理器520的重构图像及视频。控制器/处理器550控制解码系统500中的各种单元的操作。存储器552存储用于解码系统500的数据及程序码。一个或一个以上总线560使解码系统500中的各种单元互连。
处理器420及520可各自以一个或一个以上专用集成电路(ASIC)、数字信号处理器(DSP)及/或一些其它类型的处理器实施。或者,处理器420及520可各自以一个或一个以上随机存取存储器(RAM)、只读存储器(ROM)、电可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)、磁盘、光盘及/或此项技术中已知的其它类型的易失性及非易失性存储器替代。
本文中所述的实施例可由硬件、软件、固件、中间件、微码或其任何组合实施。当系统及/或方法以软件、固件、中间件或微码、程序码或码段实施时,其可存储于例如存储组件等机器可读媒体中。码段可表示过程、函数、子程序、程序、例程、子例程、模块、软件包、类别,或指令、数据结构或程序语句的任何组合。可通过传递及/或接收信息、数据、自变量、参数或存储器内容而将码段耦合到另一码段或硬件电路。可使用包括存储器共享、消息传递、权标传递、网络传输等任何适当方式来传递、转发或传输信息、自变量、参数、数据等。
对于软件实施方案来说,可通过执行本文中所描述的功能的模块(例如,过程、函数等)来实施本文中所描述的技术。软件码可存储于存储器单元中且由处理器来执行。存储器单元可在处理器内或在处理器外实施,在后种状况下存储器单元可经由在此项技术中已知的各种装置以通信方式耦合到处理器。
结合本文中所揭示的实施例而描述的方法或算法的阶段可直接以硬件、由处理器执行的软件模块或两者的组合体现。软件模块可驻留于随机存取存储器(“RAM”)、快闪存储器、只读存储器(“ROM”)、可擦除可编程只读存储器(“EPROM”)、电可擦除可编程只读存储器(“EEPROM”)、寄存器、硬盘、可装卸盘、CD-ROM或此项技术中已知的任何其它形式的存储媒体中。实例存储媒体耦合到处理器,使得处理器可从存储媒体读取信息且将信息写入到存储媒体。在替代方案中,存储媒体可与处理器成一体。处理器及存储媒体可驻留于专用集成电路(“ASIC”)中。ASIC可驻留于用户终端中。在替代方案中,处理器及存储媒体可作为离散组件驻留于用户终端中。
应注意,本文中所述的方法可在由所属领域的技术人员已知的多种硬件、处理器及系统上实施。举例来说,用于实施方案中的机器可具有用以显示内容及信息的显示器、用以控制客户端的操作的处理器及用于存储与机器操作有关的数据及程序的存储器。在一些实施方案中,机器为蜂窝式电话。在一些实施方案中,机器为便携式计算机或具有通信能力的手持机。在另一实施方案中,机器为具有通信能力的个人计算机。
可以通用处理器、DSP、ASIC、现场可编程门阵列(FPGA)或其它可编程逻辑装置、离散门或晶体管逻辑、离散硬件组件或其经设计以执行本文中所述功能的任何组合来实施或执行结合本文中所揭示的实施方案描述的各种说明性逻辑、逻辑块、模块及电路。通用处理器可为微处理器,但在替代方案中,处理器可为任何常规处理器、控制器、微控制器或状态机。处理器还可实施为计算装置的组合,例如,DSP与微处理器的组合、多个微处理器的组合、一个或一个以上微处理器与DSP核心的联合,或任何其它此种配置。
尽管已用专用于结构特征及/或方法动作的语言来描述标的物,但应理解在所附权利要求书中所界定的标的物未必限于以上所述的特定特征或动作。而是,以上所述的特定特征及动作是作为实施权利要求书的实例形式来揭示。

Claims (4)

1.一种数字信号变换设备,其包含:
缩放级,其根据行变换及列变换而缩放DCT系数,且将预定数目的精确位预先分配到输入的DCT系数;
变换级,其利用变换常数的符号对称并向量有理近似而变换所述DCT系数且输出经变换的DCT系数;以及
右移级,其移位所述经变换的DCT系数以确定所输出的经变换DCT系数。
2.根据权利要求1所述的设备,其进一步包含DC偏置级,所述DC偏置级在变换引擎变换所述DCT系数之前改变DC偏置系数以校正舍入误差。
3.根据权利要求1所述的设备,其进一步包含:
其中所述所输出的经变换DCT系数为IDCT系数。
4.根据权利要求1所述的设备,其中变换常数的所述符号对称并向量有理近似使用中间值x1、…、xt,所述中间值通过(a)设定x1等于所输入整数值及(b)根据x1、…、xt-1中的一者及加法运算、减法运算或右移运算中的一者来确定。
CN201210490885.9A 2007-08-28 2008-08-28 并向量分数与符号对称舍入误差的乘积的快速计算 Active CN102982007B (zh)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US96838107P 2007-08-28 2007-08-28
US60/968,381 2007-08-28
US12/139,957 2008-06-16
US12/139,957 US8819095B2 (en) 2007-08-28 2008-06-16 Fast computation of products by dyadic fractions with sign-symmetric rounding errors
CN200880104677.2A CN102067108B (zh) 2007-08-28 2008-08-28 并向量分数与符号对称舍入误差的乘积的快速计算

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
CN200880104677.2A Division CN102067108B (zh) 2007-08-28 2008-08-28 并向量分数与符号对称舍入误差的乘积的快速计算

Publications (2)

Publication Number Publication Date
CN102982007A true CN102982007A (zh) 2013-03-20
CN102982007B CN102982007B (zh) 2016-04-06

Family

ID=40409178

Family Applications (2)

Application Number Title Priority Date Filing Date
CN200880104677.2A Active CN102067108B (zh) 2007-08-28 2008-08-28 并向量分数与符号对称舍入误差的乘积的快速计算
CN201210490885.9A Active CN102982007B (zh) 2007-08-28 2008-08-28 并向量分数与符号对称舍入误差的乘积的快速计算

Family Applications Before (1)

Application Number Title Priority Date Filing Date
CN200880104677.2A Active CN102067108B (zh) 2007-08-28 2008-08-28 并向量分数与符号对称舍入误差的乘积的快速计算

Country Status (12)

Country Link
US (2) US8819095B2 (zh)
EP (1) EP2195750B1 (zh)
JP (1) JP4965711B2 (zh)
KR (1) KR101107923B1 (zh)
CN (2) CN102067108B (zh)
BR (1) BRPI0815791B1 (zh)
CA (1) CA2698269C (zh)
ES (1) ES2791420T3 (zh)
HU (1) HUE048765T2 (zh)
RU (1) RU2468422C2 (zh)
TW (1) TWI474194B (zh)
WO (1) WO2009032740A2 (zh)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI343021B (en) * 2006-10-24 2011-06-01 Princeton Technology Corp Data transformation method and data transformation circuit capable of saving numeral operations
US8819095B2 (en) 2007-08-28 2014-08-26 Qualcomm Incorporated Fast computation of products by dyadic fractions with sign-symmetric rounding errors
EP2916549B1 (en) 2011-06-24 2018-07-18 NTT DoCoMo, Inc. Method and apparatus for motion compensation
US9111059B2 (en) 2012-11-01 2015-08-18 Stc.Unm System and methods for dynamic management of hardware resources

Family Cites Families (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5285402A (en) 1991-11-22 1994-02-08 Intel Corporation Multiplyless discrete cosine transform
US5561424A (en) * 1993-04-30 1996-10-01 Lucent Technologies Inc. Data converter with minimum phase fir filter and method for calculating filter coefficients
US6195674B1 (en) 1997-04-30 2001-02-27 Canon Kabushiki Kaisha Fast DCT apparatus
JP3975629B2 (ja) * 1999-12-16 2007-09-12 ソニー株式会社 画像復号装置及び画像復号方法
KR100422443B1 (ko) * 2001-02-13 2004-03-11 삼성전자주식회사 버츄얼 공통패턴을 사용한 저전력 csd 선형위상 fir필터 구조 및 그에 따른 필터구현방법
US6882685B2 (en) 2001-09-18 2005-04-19 Microsoft Corporation Block transform and quantization for image and video coding
KR100422449B1 (ko) * 2001-11-12 2004-03-11 삼성전자주식회사 수직 공통패턴을 사용한 저전력 csd 선형위상 디지털필터 구조 및 그에 따른 필터구현방법
US6963613B2 (en) * 2002-04-01 2005-11-08 Broadcom Corporation Method of communicating between modules in a decoding system
JP2004334212A (ja) 2003-05-09 2004-11-25 Samsung Electronics Co Ltd モンゴメリ掛け算器及び掛け算方法
US7689641B2 (en) * 2003-06-30 2010-03-30 Intel Corporation SIMD integer multiply high with round and shift
US8335811B2 (en) 2004-03-04 2012-12-18 Broadcom Corporation Method and system for high fidelity IDCT and DCT algorithms
US7587093B2 (en) 2004-07-07 2009-09-08 Mediatek Inc. Method and apparatus for implementing DCT/IDCT based video/image processing
US7933337B2 (en) 2005-08-12 2011-04-26 Microsoft Corporation Prediction of transform coefficients for image compression
US20070200738A1 (en) 2005-10-12 2007-08-30 Yuriy Reznik Efficient multiplication-free computation for signal and data processing
KR100667595B1 (ko) * 2005-12-29 2007-01-11 삼성전자주식회사 가변 길이 디코더
US20070180010A1 (en) * 2006-01-13 2007-08-02 Fujitsu Limited System and method for iteratively eliminating common subexpressions in an arithmetic system
US8849884B2 (en) * 2006-03-29 2014-09-30 Qualcom Incorporate Transform design with scaled and non-scaled interfaces
US8385424B2 (en) 2006-06-26 2013-02-26 Qualcomm Incorporated Reduction of errors during computation of inverse discrete cosine transform
DE102006038629A1 (de) 2006-08-17 2008-02-21 Dr. Suwelack Skin & Health Care Ag Stabilisierte Wirkstoffzusammensetzung
TWI343021B (en) 2006-10-24 2011-06-01 Princeton Technology Corp Data transformation method and data transformation circuit capable of saving numeral operations
US8819095B2 (en) * 2007-08-28 2014-08-26 Qualcomm Incorporated Fast computation of products by dyadic fractions with sign-symmetric rounding errors

Also Published As

Publication number Publication date
JP2011507313A (ja) 2011-03-03
US20090063599A1 (en) 2009-03-05
CN102982007B (zh) 2016-04-06
KR20100066521A (ko) 2010-06-17
JP4965711B2 (ja) 2012-07-04
TW200925897A (en) 2009-06-16
BRPI0815791A2 (pt) 2015-02-24
TWI474194B (zh) 2015-02-21
EP2195750A2 (en) 2010-06-16
ES2791420T3 (es) 2020-11-04
CA2698269A1 (en) 2009-03-12
EP2195750B1 (en) 2020-03-11
WO2009032740A3 (en) 2011-02-10
US8819095B2 (en) 2014-08-26
US20140330878A1 (en) 2014-11-06
RU2468422C2 (ru) 2012-11-27
RU2010111763A (ru) 2011-10-10
CN102067108B (zh) 2016-03-09
CN102067108A (zh) 2011-05-18
US9459831B2 (en) 2016-10-04
KR101107923B1 (ko) 2012-01-25
WO2009032740A2 (en) 2009-03-12
CA2698269C (en) 2016-05-17
HUE048765T2 (hu) 2020-08-28
BRPI0815791B1 (pt) 2020-02-11

Similar Documents

Publication Publication Date Title
Johnson Rethinking floating point for deep learning
CN101796506B (zh) 具有比例缩放式和非比例缩放式接口的变换设计
Tambe et al. Algorithm-hardware co-design of adaptive floating-point encodings for resilient deep learning inference
CN101375274B (zh) 用于执行数据变换的设备和方法
CN103064649A (zh) 控制移位分组数据的位校正的装置
CN113132723B (zh) 一种图像压缩方法及装置
US11853897B2 (en) Neural network training with decreased memory consumption and processor utilization
CN113853601A (zh) 用于矩阵运算的装置和方法
CN102982007B (zh) 并向量分数与符号对称舍入误差的乘积的快速计算
US20200409661A1 (en) Floating point dot-product operator with correct rounding
Klöwer et al. Compressing atmospheric data into its real information content
CN114615507B (zh) 一种图像编码方法、解码方法及相关装置
US11550544B2 (en) Fused Multiply-Add operator for mixed precision floating-point numbers with correct rounding
US11604973B1 (en) Replication of neural network layers
Reddy et al. Quantization aware approximate multiplier and hardware accelerator for edge computing of deep learning applications
US8639738B2 (en) Method for carry estimation of reduced-width multipliers
Madadum et al. A resource-efficient convolutional neural network accelerator using fine-grained logarithmic quantization
US11521047B1 (en) Deep neural network
Chikin et al. Explicit model size control and relaxation via smooth regularization for mixed-precision quantization
CN100388316C (zh) 高精度的无乘法器的数字余弦变换电路及其变换方法
Zhou et al. FPGA Implementation of N-BEATS for Time Series Forecasting Using Block Minifloat Arithmetic
US11847567B1 (en) Loss-aware replication of neural network layers
US20220405055A1 (en) Arithmetic device
Pedram et al. Algorithm/architecture solutions to improve beyond uniform quantization in embedded DNN accelerators
He et al. Post-training quantization is all you need to perform cross-platform learned image compression

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant