CN1251176C - 包括至少一个编码器的传输*** - Google Patents
包括至少一个编码器的传输*** Download PDFInfo
- Publication number
- CN1251176C CN1251176C CNB031487696A CN03148769A CN1251176C CN 1251176 C CN1251176 C CN 1251176C CN B031487696 A CNB031487696 A CN B031487696A CN 03148769 A CN03148769 A CN 03148769A CN 1251176 C CN1251176 C CN 1251176C
- Authority
- CN
- China
- Prior art keywords
- coefficient
- predictive coefficient
- predictive
- reflection
- reflection coefficient
- 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.)
- Expired - Fee Related
Links
- 230000005540 biological transmission Effects 0.000 title abstract description 18
- 230000003044 adaptive effect Effects 0.000 claims abstract description 17
- 238000004422 calculation algorithm Methods 0.000 claims description 10
- 238000006243 chemical reaction Methods 0.000 claims description 5
- 239000003607 modifier Substances 0.000 claims description 3
- 230000005236 sound signal Effects 0.000 abstract description 6
- 230000004087 circulation Effects 0.000 description 6
- 239000011159 matrix material Substances 0.000 description 5
- 239000013598 vector Substances 0.000 description 5
- 230000004048 modification Effects 0.000 description 4
- 238000012986 modification Methods 0.000 description 4
- 241001673391 Entandrophragma candollei Species 0.000 description 3
- 238000010586 diagram Methods 0.000 description 3
- 238000000034 method Methods 0.000 description 3
- 238000010606 normalization Methods 0.000 description 3
- 230000008901 benefit Effects 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 2
- 238000012545 processing Methods 0.000 description 2
- 230000009467 reduction Effects 0.000 description 2
- 238000004088 simulation Methods 0.000 description 2
- 230000001755 vocal effect Effects 0.000 description 2
- 230000009471 action Effects 0.000 description 1
- 238000007792 addition Methods 0.000 description 1
- 238000005311 autocorrelation function Methods 0.000 description 1
- 229910002056 binary alloy Inorganic materials 0.000 description 1
- 230000015572 biosynthetic process Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 239000007795 chemical reaction product Substances 0.000 description 1
- 230000000052 comparative effect Effects 0.000 description 1
- 239000002131 composite material Substances 0.000 description 1
- 238000012937 correction Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 239000004744 fabric Substances 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 230000008569 process Effects 0.000 description 1
- 239000000047 product Substances 0.000 description 1
- 238000005070 sampling Methods 0.000 description 1
- 238000001228 spectrum Methods 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 238000003786 synthesis reaction Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L19/00—Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
- G10L19/04—Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis using predictive techniques
- G10L19/26—Pre-filtering or post-filtering
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03H—IMPEDANCE NETWORKS, e.g. RESONANT CIRCUITS; RESONATORS
- H03H21/00—Adaptive networks
- H03H21/0012—Digital adaptive filters
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L19/00—Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
- G10L19/04—Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis using predictive techniques
- G10L19/06—Determination or coding of the spectral characteristics, e.g. of the short-term prediction coefficients
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L25/00—Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00
- G10L25/03—Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00 characterised by the type of extracted parameters
- G10L25/06—Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00 characterised by the type of extracted parameters the extracted parameters being correlation coefficients
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L25/00—Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00
- G10L25/90—Pitch determination of speech signals
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03H—IMPEDANCE NETWORKS, e.g. RESONANT CIRCUITS; RESONATORS
- H03H21/00—Adaptive networks
- H03H21/0012—Digital adaptive filters
- H03H21/0043—Adaptive algorithms
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Computational Linguistics (AREA)
- Signal Processing (AREA)
- Health & Medical Sciences (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Human Computer Interaction (AREA)
- Acoustics & Sound (AREA)
- Multimedia (AREA)
- Spectroscopy & Molecular Physics (AREA)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
- Transmission Systems Not Characterized By The Medium Used For Transmission (AREA)
Abstract
本发明的传输***包括至少一个对信号(10a)进行编码的编码器(101)。该***还包括至少一个发射机(102)、至少一个接收机(103)和至少一个译码器(104)。至少为编码器(101)提供了至少一个自适应预测滤波器(10A,1B),利用该自适应预测滤波器编码语音或音频信号,同时减小了它们的位速率。根据“列文森-德宾递推”以定点算法递推地确定自适应预测滤波器(10A,10B)的滤波系数。
Description
本发明涉及包括至少一个对信号进行编码的编码器、至少一个用于将编码信号传输给至少一个接收机的发射机、至少一个对被编码信号进行译码的译码器和至少一个自适应预测滤波器的传输***。
本发明也涉及终端单元、编码器、译码器和自适应预测滤波器。
这样的传输***可以毫无困难地从例如1993年3月29-30日,伦敦,CCITT(国际电话和电报咨询委员会)第15调查小组的文件入口(Doc.AH.)为93-D.3的文件“G.728定点规程草案”和从CCITT建议G.728“利用低延迟编码激励的线性预测以每秒16千位编码语音信号”中找到。这两个文件今后将以[I]和[II]来表示。当要进行给定传输能力的多重使用时,总是可以应用这样的传输***。在编码期间信号位速率的减小使得可以例如通过一个每秒64千位的传输信道同时进行四个电话通话。
给定传输能力的多重使用在无线电信道中非常重要,如果考虑到移动无线电***用户的不断增加,就很容易理解这一点。当使用了位速率减小的编码器和合适的译码器时,还可以更加有利地使用具有任意的存储媒介的存储器的存储容量,这是因为为了存储信息信号所需要的存储空间较小。
线性预测用于位速率降低是公知的。在[I]和[II]中,用自适应预测滤波器计算预测系数。利用辅助信号的样值逐段地进行这一计算。辅助信号可以是例如来自人的(电)音频信号或语音信号。或者,辅助信号也可以是在按照“通过综合进行分析”原理工作的编码器中产生的合成音频或语音信号。利用预测系数获得了辅助信号的预测样值(预测值)和该信号的以前样值之间的线性相关。这样地来确定预测系数,以使得对一部分样值所计算出的全部误差的平方和为最小值。误差在此被理解为样值和其预测值之差。对此,在下面将给出更准确的说明。
在[I]和[II]中,被激励的信号被综合滤波器转换为合成音频信号。这一合成音频信号与要被编码的音频信号相减,其差值被用来使被激励信号的选择最佳化。
预测系数的计算需要有从合成音频信号的样值获得的相关系数。根据相关系数计算预测系数需要许多电路和大量的费用。为了减少这些电路和费用,以递推方式计算预测系数。首先,根据两个第一相关系数计算第一反射系数。从第一反射系数获得第一预测系数。此外,还计算预测误差,该预测误差表示预测的质量。其次,利用下一个相关系数、以前计算的预测系数以及当前的预测误差来确定第二反射系数。利用第二反射系数和以前计算的预测系数(此时只考虑第一预测系数)重新计算以前计算的预测系数。然后计算第二预测系数和新的预测误差。多次地重复对以前计算的预测系数的重新计算和对下一个预测系数的计算,以便使得所有必需的预测系数都已知。
在[II]中,用浮点算法来获得足够的精度。浮点算法的缺点是要求的电路很庞大。为此,在[I]中提出使用16位定点算法,在该算法中,计算的结果和中间结果保持所谓的成组浮点格式(block floatingpoint format)。这被理解为一组数的浮点格式的表示,但是,由于这一约束,该组中的所有数具有相同的阶码(以2为基数)。这样选择该公共阶码,使得所有的尾数在预定范围之内。在[I]中建议所有的尾数在-1和+1之间。例如在成组浮点格式中,根据以往经验,所示的预测系数呈现其数量级可以为10的值。如果在重新计算预测系数时出现了例如溢出,即如果重新计算的预测系数将为1或大于1,则所有以前计算的预测系数的尾数将被除以2,并且公共阶码(以2为基数)将增值1。然后再开始重新计算。由于溢出所导致的成组浮点格式的改变在此将称作成组浮点格式的修改。对于重复的重新计算,只需要以前计算的预测系数的尾数,并且只有16位的分辨率。将分辨率从至少17位降低到16位(对于计算来说这往往是有必要的),可以以不同的方式实现。将通过举例来说明根据[I]的降低方式。例如,如果以17位的分辨率刚刚计算了第三反射系数(在第三反射系数和将要从第三反射系数获得的第三预测系数之间只有数值表示方面的差别),就通过舍入将其缩短为16位,这样就能够以16位的定点算法来重新计算两个第一预测系数。如果在该重新计算期间有溢出,则在重新计算结束时被舍入的第三反射系数例如也被除以2,具有16位分辨率的结果被作为第三预测系数的尾数进行存储。除法运算在16位(包括符号位)之后停止。由于二进制的缘故,这一操作相应于小数点移动一位而最低有效位被删去。这一过程使不准确性(特别是对于大量的预测系数)大到不能被接受。
本发明的目的是提高在开头一段所述类型的传输***中进行编码时的计算准确性而不增大计算工作量。具有这一特性的传输***包括:
至少一个对信号进行编码的编码器;
至少一个将已编码信号发送给至少一个接收机的发射机;
至少一个对已编码信号进行译码的译码器;以及
至少为编码器提供的至少一个自适应预测滤波器,该自适应预测滤波器包括:
根据辅助信号的部分样值计算相关系数的装置,该辅助信号依赖于该信号或译码信号;以及
根据相关系数以N位定点算法确定反射和预测系数的装置;
该传输***还包括以下装置,以便递推地确定将以成组浮点格式表示的预测系数:
a)用于计算具有N+1位的最小分辨率的第K个反射系数的装置;
b)用于缓冲具有N+1位的最小分辨率的第K个反射系数的装置;
c)用于确定具有N位分辨率的第K个反射系数的装置;
d)一种重算装置,用于在利用在c)中获得的第K个反射系数的同时重新计算K-1个以前计算的预测系数;
e)一种修改装置,用于如果在K-1个以前计算的预测系数的重新计算期间出现了溢出、从而使N位不再足以表示重新计算的预测系数时,就修改该K-1个预测系数的成组浮点格式;
f)一种转换装置,用于将在b)中被缓冲的第K个反射系数转换为浮点格式的数,该数的阶码用在e)中确定的成组浮点格式的阶码来表示,该数的尾数具有至少N+1位的分辨率;
g)用于将在f)中获得的第K个反射系数的尾数舍入为N位的装置;以及
h)用于将在g)中获得的第K个反射系数作为第K个预测系数进行存储的装置。
本发明的传输***与[I]描述的传输***的不同之处在于:在第K个反射系数的第一次计算之后以N+1位的最小精度对其进行缓冲。对于K-1个以前计算的预测系数的重新计算,所使用的是这样的值,该值被限为N位,从而不同于被缓冲的值。如果在重新计算K-1个以前计算的预测系数期间出现了溢出,在重新计算结束之后就用例如2来除该被缓冲的值,然后将其舍入为N位。这种在(修改的)成组浮点格式中体现第K个预测系数的方法产生了最多与在[I]中的相应误差一样大的误差。但是,同等重要的是:发现了本发明中的误差的正负符号出现的次数是相等的,这一点与[I]不同。
利用两个简单的例子来证实这些断言。
假定可用3(N=3)位来表示结果、可用至少4位来表示中间结果。还假定由于溢出,修改需要除以4。以定点表示的具有4位分辨率的第K个反射系数的数值实例如下:
在第一个实例中,第K个反射系数具有的值为+5/8。在二进制***中,该反射系数被表示为0.101,第一个零表示符号。根据[I],有以下步骤:
a)0.101(第K个反射系数:+5/8,具有4位分辨率);
b)0.11(a)的值舍入为3位,以便重新计算K-1个以前计算的预测系数);
c)0.00(b)的值被除以4,也具有3位分辨率。该值是以2为阶码和以2为基数的成组浮点格式的第K个反射系数的尾数)
为了作出用近似c)来代替a)时关于误差的断言,c)将首先再被乘以4。如此获得的值和输出值的差就是误差F。在当前的情形中(表示为分数),F=(-5/8)=-5/8。
与此相反,根据本发明有:
a)0.101(第K个反射系数:+5/8,具有4位分辨率),
b)0.001(a)的值被除以4,也具有4位分辨率),
c)0.01(b)的值舍入为3位)。
与上述断言类似,现在得到误差:F=(1-5/8)=3/8。如果0.011(+3/8)被选作输出值,根据[I]的同一方案,对于误差有值F=(0-3/8)=-3/8。根据本发明,现在有:F=(0-3/8)=-3/8。不应以这样的方式来理解以上指出的、以及还将在下面指出的装置的次序,即它们在时间上也以这样的次序被启动。
本发明的另一实施例包括:
用于对已被重新计算和尚未被重新计算的K-1个预测系数的成组浮点格式进行修改的装置;以及
用于对于已出现溢出的预测系数继续进行K-1个预测系数的重新计算的装置。
如果在预测系数的重新计算期间出现溢出,根据[I],只修改以前计算的预测系数的浮点格式,然后再从头开始重新计算。与此相反,本发明的实施例免除了计算电路的不少部分,特别在有大量系数的场合。
根据本发明的一种终端设备,其特征在于包括:至少一个编码器和/或至少一个译码器,至少一个发射机和/或至少一个接收机,和至少一个自适应预测滤波器,该自适应预测滤波器包括:根据一个信号的部分样值计算相关系数的装置,以及根据相关系数以N位定点算法确定反射和预测系数的装置,其中N是大于1的整数;该终端设备还包括以下装置,以便递推地确定将以成组浮点格式表示的预测系数:a)用于计算具有N+1位的最小分辨率的第K个反射系数的装置,其中K是大于零的整数;b)用于缓冲具有N+1位的最小分辨率的第K个反射系数的装置(a2);c)用于确定具有N位分辨率的第K个反射系数的装置;d)装置,用于在利用在确定装置中获得的第K个反射系数的同时,重新计算K-1个以前计算的预测系数;e)装置,如果在K-1个以前计算的预测系数的重新计算期间出现了溢出,从而使N位不再足以表示重新计算的预测系数时,用于修改该K-1个预测系数的成组浮点格式;f)装置,用于将在缓冲装置中被缓冲的第K个反射系数转换为成组浮点格式的数,该数的阶码用在修改装置中确定的成组浮点格式的阶码来表示,该数的尾数具有至少N+1位的分辨率;g)用于将在转换装置中获得的第K个反射系数的尾数舍入为N位的装置;以及h)用于将在舍入装置中获得的第K个反射系数作为第K个预测系数进行存储的装置。
现在参看附图描述本发明及其实施例,在附图中:
图1表示可在其中应用本发明的特定的传输***。
图2表示自适应预测滤波器的基本电路图,
图3表示语音编码器的基本电路图,
图4表示阐明本发明和已有技术之间的差别的图示。
图1表示一个在发射侧包括编码器101和发射机102且在接收侧包括接收机103和译码器104的传输***。编码器101与发射机102的组合和/或接收机103与译码器104的组合构成终端单元LE。
编码器101利用自适应预测滤波器10A来编码语言信号10a。根据本发明,该滤波器具有在下面将会清楚的特性。语言信号10a具有每秒64千位的位速率。编码器101将该位速率减小到已编码信号10b的位速率。已编码信号10b的位速率为每秒16千位。信号10b由语音信号10a的参数组成,这些参数被逐部分地确定。
发射机102利用图示的传输信道将已编码信号10b(如果需要,可被转换为传输码)发送给接收机103,接收机103将该发送信号转换为信号10c,除了编码和传输误差外,该信号10c对应于信号10b。
译码器104也利用自适应预测滤波器10B来译码信号10c。译码结果是信号10d。除了编码、译码和传输误差外,信号10d对应于语音信号10a。自适应预测滤波器10A和10B按照“列文森-德宾(Levinson-Durbin)递推”来确定与信号相关的滤波系数(预测系数)。“列文森-德宾递推”是以逐步的方式确定一组线性方程的解的算法,该组方程的系数矩阵是Tplitz矩阵,即沿着给定的对角线具有相同元素的对称矩阵。
自适应预测滤波器的NCOF个预测系数(NCOF代表这些系数的个数)不容置疑地是这一要求的结果,即预测误差平方之和作为给定长度的信号部分的平均数应为最小。
例如,如果样值S(K)施加到滤波器的输入端,则以下线性组合就将是在时刻n的滤波器的输出值:
该值y(n)被认为是预测样值s(n)。在用包括LSEG样值的部分来形成误差平方之和时:
如果将(1)代入(2)、同时在(2)中使系数a(i)最小,则如果将在这一部分之外的样值设定为零就产生了Tplitz矩阵。在这种情况下,Tplitz矩阵的元素就是在输入信号的取样时刻该输入信号自相关函数的值,此后该函数将被称为自相关系数r(minc)。在Prentice-Hall出版社1978年出版的、作者为L.R.Rabiner/R.W.Schafer的《Digital Processing of Speech Signals(语音信号的数字处理)》中可以找到对“列文森-德宾递推”的详细描述。
被Rabiner/Schafer以公式(8.67)至(8.72)表示的“列文森-德宾递推”的算法在下面被表示为伪代码,这是因为该代码容许对算术单元将执行的、用于计算预测系数的程序步进行更好的检测的缘故。
“列文森-德宾递推”(伪代码):
输入值:NCOF=预测系数
r(0)…r(NCOF)=自相关系数
输出值:a(0)…a(NCOF)=预测系数
a(0)=1.0 O1 a(1)=-r(1)/r(0) O2 alpha=r(0)+r(1)*a(1) O3 For minc=2,3,4,...,NCOF O4 { sum=0 O5 for ip=0,1,2,3,...,minc-1 O6 sum=sum+r(minc-ip)*a(ip) O7 O8 rc=-sum/alpha O9 alpha=alpha+sum*rc O10 O11 if(alpha<=0.0)break O12 O13 For ip=1,2,3,...,minc/2 O14 {R1=a(ip)+rc *a(minc-ip))O15 R2=a(minc-ip)+rc*a(ip)) O16 a(ip)=R1 O17 a(minc-ip)=R2 O18 } O19 a(minc)=rc O20 } O21
为了使在伪代码中给出的程序步更加清楚,将进一步说明上述的几行算法。
需要将带有NCOF和NCOF+1自相关系数名的预测系数作为输入数据。预测系数NCOF与公式(1)中的滤波系数a(i)的个数相等。通过在此没有描述、但本领域技术人员公知的其它功能部件来确定自相关系数r(0)、r(1)等、直至r(NCOF)。
预测系数a(0)、a(1)等、直至a(NCOF)是输出数据。
行01和02包括对两个第一预测系数的赋值。在行03中对辅助变量alpha(NCOF=1的预测误差)赋值,其被加数是第零个自相关系数,其加数是第一相关系数和第一预测系数的乘积。
如果预测系数NCOF等于1,计算就结束了,否则,就进行具有运行变量minc的循环,该变量取从2至NCOF的所有整数。在对于运行变量minc的循环中,如行017和108所示,所有以前计算的预测系数a(1)、a(2)等、直至a(minc-1)都被改变(重新计算)。在对于运行变量minc的当前值要被执行的全部指令结束时,如行020所示,就对具有记号minc的预测系数赋值。这一预测系数将被记作第K个预测系数;对于运行变量minc的当前值被第一次计算的变量sum和rc(反射系数)将得到相同的增加。
在具有运行变量minc的循环中还进行了两个另外的循环,这两个循环不交错并具有运行变量ip,如行06和014所示,该变量的上限值依赖于运行变量minc的当前值。
辅助变量是名为alpha、sum、rc、R1和R2的那些变量。辅助变量alpha是根据公式(2)的误差平方之和,并且还具有说明意义:alpha是误差信号(预测误差)的能量值。该值总是正的。因此,如行012所示,如果alpha的值小于或等于零,就停止计算。变量rc也具有说明意义:它是在所谓声道(vocal tract)的管状模型中起作用的所谓反射系数。如行09所示,作为辅助变量sum和alpha的商出现的反射系数属于每个预测系数。
根据自适应滤波器的哪一个系数要被计算,语音编码方法的大多数实时实现都基于16位定点算术单元,同时中间结果可以以增强的精度(例如32位)而局部地获得。“列文森递推”的结果的精度决定性地取决于递推中的计算精度。就计算精度而言,在伪代码中的最敏感的位置,就是可以以较高的分辨率得到乘法和除法的中间结果后再将这些中间结果降低为简单的分辨率的位置。它们特别是行02、03、07、09、010、015、016和020。
参看以下伪代码描述以16位定点算法实现“列文森-德宾递推”的模块。首先介绍几个定义:
>>右移操作
<<左移操作
round(reg)用32位宽的寄存器“reg”进行的舍入操作。假定在“reg”中的位被编号为0、1、2、…、31,符号位是位31,以及每个位的权从位30向位0减小。具有16位精度的舍入就意味着位15与位16相加、此后位16至31就被作为结果。
*2*定点乘法;
/定点除法;
由于执行除法的代价是非常高昂的,所以只对于绝对必要的位置才准确地计算除法的结果。除法的结果在存储结果的寄存器中右齐平。
xh指32位字x的16个最高有效位。
x1指32位字x的16个最低有效位。
16位定点“列文森递推”(伪代码):
EXPa=0; X1 den=r[0]; X2 num=r[1]; X3 if(num<0)num=-num; X4 a2=num/den; X5 a2=a2<<15; X6 a1=round(a2); X7 if(r[1]>0)a1=-a1; X8 rc1=a1h; X9 a[1]=a1h; X10 a01=0; X11 a0h=r[0]; X12 a0=a0+rc1*2*r[1]; X13 a0=round(a0); X14 alpha=a0h; X15 for(minc=2;minc<=NCOF;minc++) X16 {a0=0; X17 for(ip=1;ip<minc;ip++) X18 a0=a0+r[minc-ip]*2*a[ip] X19 X20 a0=a0<<EXPa; X21 a11=0; X22 a1=r[minc]; X23 a0=a0+a1; X24 a0=round(a0); X25 sign=a0h; X26 num=a0h; X27 if(num<0)num=-num; X28 <dp n="d13"/> if(num>=alpha) X29 goto LEDUMO_failed; X30 a2=num/alpha; X31 a2=a2<<15; X32 a1=round(a2); X33 if(a0>0)a1=-a1; X34 rc=a1h; X35 X36 a11=0; X37 a1h=alpha; X38 a1=a1+rc*2*a0h; X39 a1=round(a1); X40 if(alpha<=0) X41 goto LEDUMO_failed; X42 alpha=a1h; X43 X44 a0=0; X45 a1=0; X46 for(ip=1;ip<=(minc>>1);ip++) X47 {a0h=a[ip]; X48 a0=a0+rc*2*a[minc-ip]; X49 a0=round(a0); X50 If(overflow in a0) X51 {EXPa=EXPa+1; X52 for(lp=1;lp<minc;lp++) X53 a[lp]=a[lp]>>1; X54 a0h=a[ip]; X55 a0=a0+rc*2*a[minc-ip]; X56 <dp n="d14"/> a0=round(a0); X57 } X58 a1h=a[minc-ip]; X59 a1=a1+rc*2*a[ip]; X60 a1=round(a1); X61 If(overflow in a1) X62 { EXPa=EXPa+1; X63 for(lp=1;lp<minc;lp++) X64 a[lp]=a[lp]>>1; X65 a0h=a[ip]; X66 a0=a0+rc*2*a[minc-ip]; X67 a0=round(a0); X68 a1h=a[minc-ip]; X69 a1=a1+rc*2*a[ip]; X70 a1=round(a1); X71 } X72 a[ip]=a0h; X73 a[minc-ip]=a1h; X74 } X75 a2=a2>>EXPa; X76 a2=round(a2); X77 if(sign>0)a2=-a2; X78 a[minc]=a2h; X79 } X80 a[0]=EXpa; X81 return; X82 X83 LEDUMO_failed: X84 a[0]=-1; X85 <dp n="d15"/> return; X86
伪代码说明:
在定点表示中,预测系数a[i]只能取-1、0和+1、0之间的值。但是,由于在递归期间系数a[i]会超过1、0(行X47…X75),所以以成组浮点格式来表示所有的系数a[i]。这就是说,所有预测系数被归一化为公共基数2EXPa,因此所有归一化的预测系数的尾数又处在-1、0和+1、0之间。在“列文森递推”的开始时还未计算系数,因此阶码EXPa被设为0(行X1)。
因为不需要再计算a(0)=1.0,所以在此不执行01。
在具有运行变量minc的循环中类似地变换行02和03。因此下面说明定点分辨率。
首先描述行05至07的定点实现:
在行X17和X19,a0表示32位宽的累加寄存器。乘输入寄存器装入自相关系数r[minc-ip]。另一乘输入寄存器装入以前计算的、归一化的预测系数a[ip]的尾数;对于所有这些系数,相关的阶码EXPa是一样的。应当特别指出,因为不必再乘以a[0]=1,所以系数a[0]没有被包括在归一化中。
在行X21,通过左移位装置将累加的最后结果(先不包括a[0]*2*r[minc]部分)从浮点表示缩短为定点表示,以便对在累加器a0中的32位结果进行归一化。
在行X22至X24中,在使用另一个32位宽的寄存器a1时将a[0]*2*r[minc]部分加起来。应当指出,由于寄存器a1的使用,辅助寄存器a1仍然能够在其它位置保持以前的值,所以寄存器a1的下部将被删除。
在行X25至X28,预备用于除法的计数器项(counter term),以便计算当前(第K个)反射系数rc。除法需要具有16位数据宽度的正的输入数据,在行X25通过对在a0中的32位宽的结果进行舍入操作可获得这一输入数据。
直接对在除法器单元的输入端的寄存器进行装入,以便进行用于当前(第K个)反射系数rc的计算的除法计算。在此应当指出,在[I]中执行除以从行X24的a0恢复的alpha和num的浮点值的除法。这就对应着所需计算速度的显著增大。
以17位的精度来计算行X31中的除法的结果,第17位对舍入操作是必需的。在行X33和行X77进行这一舍入,以便分别计算当前(第K个)反射系数和当前(第K个)预测系数。在行X32,在舍入操作之前,使该除法的结果(它的17位被右侧对齐地存储在32位宽的寄存器92中)适应于固定设置的小数点。在行X34已使用了正确的符号之后,通过读出上部的16位宽的字a1h,从而最后就从32位宽的寄存器a1的上部获得了当前反射系数rc。
在行X37至X40,以已知的方式计算alpha的新值,但是所有的输入和输出变量都以16位定点格式来表示。在此也要特别指出这一事实:在[I]中的这一位置,以alpha和a0h(a0h相应于行09中的sum)的浮点表示来进行计算,这相应于所需计算速度的显著增大。
在行X45至X47,修改以前计算的预测系数(重新计算和成组浮点格式的修改)。这相应于从行015至018的操作。要注意的是,如果在分别重新计算预测系数a[ip]和a[minc-ip]时出现了溢出,所有系数(即已经被重新计算和尚未被重新计算的系数,就是以前计算的系数)a[1]、a[2]、…a[minc-1]就被减小1/2(=分别在行X54和X65右移1位)。当分别在行X55、X56、X57和X66至X71进行重新计算时,就再也不会出现溢出。
在已经结束了对旧的(以前计算的)系数的调整之后,就根据rc计算新的(第K个)预测系数a[minc](见行020)。应当指出,在定点格式中,新的(第K个)系数也以成组浮点格式被存储。因此,以上计算的、可以以非规一化的定点格式得到的反射系数rc在右移EXPa位之后被存储在a[minc]中。对于在此给出的解法,仍被存储在寄存器a2中并且具有17位分辨率的反射系数首先被右移EXPa位,然后以16位的精度被舍入。这是与在[I]中发表的解法完全不同的,在[I]中,在除法运算之后已被直接舍入的反射系数被右移EXPa位并且通过被限制成16位而得到新的预测系数。在这一位置处的明显不同导致了在此描述的“列文森递推”的16位定点实施方案,这一定点实施方案产生了更好的结果,即计算所花费的代价显著地比[I]中所示的解法少。
图2表示自适应预测滤波器。这样的预测滤波器包括狭义上的滤波器2和控制单元1。狭义上的滤波器2按照公式(1)产生输出值y(n)并通过导线a2将它们输出。通过导线b1给狭义上的滤波器2和控制单元提供输入值S(n)。
控制单元1可再被粗略地细分为两个功能部件1A和1B。功能部件1A根据一部分输入信号计算相关系数并将这些值传送给功能部件1B,功能部件1B根据这些值、通过利用以上描述的装置来归纳公式(2)从而确定新的预测系数。控制单元1然后通过导线b1由部件1B计算的整组系数来代替到目前为止使用的预测系数。所述包括功能部件1B的滤波器可以在现代的语音编译码器中被多次使用。
图3表示预测语音编码器,利用该语音编码器,已编码的语音信号也被译码,以便改善编码。因此,省略了对译码器的专门描述。
要被编码的语音信号通过导线6a以样值的形式提供给编码器。减法器6从该要被编码的语音信号中减去又被该编码器译码的语音信号的恰当的值,该语音信号通过导线4a提供给减法器6。通过导线6b将差值传送给部件9,该部件9求该差值信号的频谱加权(为了进行广泛的表示,请比较例如1990年IEEE S9.1第453至456页上CHEN,J.H.的HIGH-QUALITY 16KB/S SPEECH CODINGWITH A ONE-WAY DELAY LESS THAN 2MS(单向延迟小于2微秒的高质量每秒16千位的语音编码)),此后,对于部分语音信号形成和存储误差平方之和。对于在导线6a上的部分语音信号,检测128个不同的编码任选项,最后,将产生最小误差的任选项作为代码信号传送给接收机。
这128个任选项来自于这一事实标号为1的代码簿存储了128个所谓的矢量。每一矢量是样值的一个序列,该序列包括对信号的模拟,利用该对信号的模拟可以例如激励人的声道谐振。从代码簿1中顺序地读出矢量并利用可控定标器2对它们进行定标(这相应于在人的声音产生时对音量的控制)。定标器2由部件3进行控制。然后,被定标的矢量传送给具有后向预测作用的预测器4、5和8。预测器形成了对人的声道动作的仿照。它包括如图2所示的滤波器5、8。此外,这样的滤波器被包括在部件3和9中。通过导线1a传送例如已在当前语音信号部分中导致最小误差的矢量的编号。
图4以图示形式说明以上关于两个例子的描述内容,就是说,说明了由于以成组浮点格式将具有尾数的预测系数转换为3位,本发明总的来说产生了比已有技术(I)好的结果。输出数据都是具有4位分辨率的正二进制数。在图4中,上面的图表示了以二进制表示的输出数据的赋值(省略了符号位)相对于它们的分数表示,这样使得对下面的两幅图的核实更为容易。
中间的图表示在输出数据首先按照[I]被舍入、然后尾数以3位的分辨率被计算时产生的误差F。
下面的图表示在尾数首先以4位的分辨率被计算、然后被舍入为3位时产生的误差F。误差F的比例在两种情形中都是相同的,并且对应于上面的图的比例。
Claims (2)
1.一种终端设备(LE),其特征在于包括:
至少一个编码器(101)和/或至少一个译码器(104),
至少一个发射机(102)和/或至少一个接收机(103),和
至少一个自适应预测滤波器(10A,10B),该自适应预测滤波器包括:
根据一个信号的部分样值计算相关系数的装置,以及
根据相关系数以N位定点算法确定反射和预测系数的装置,其中N是大于1的整数;
该终端设备还包括以下装置,以便递推地确定将以成组浮点格式表示的预测系数:
a)用于计算具有N+1位的最小分辨率的第K个反射系数的装置,其中K是大于零的整数;
b)用于缓冲具有N+1位的最小分辨率的第K个反射系数的装置(a2);
c)用于确定具有N位分辨率的第K个反射系数的装置;
d)装置,用于在利用在确定装置中获得的第K个反射系数的同时,重新计算K-1个以前计算的预测系数;
e)装置,如果在K-1个以前计算的预测系数的重新计算期间出现了溢出,从而使N位不再足以表示重新计算的预测系数时,用于修改该K-1个预测系数的成组浮点格式;
f)装置,用于将在缓冲装置中被缓冲的第K个反射系数转换为成组浮点格式的数,该数的阶码用在修改装置中确定的成组浮点格式的阶码来表示,该数的尾数具有至少N+1位的分辨率;
g)用于将在转换装置中获得的第K个反射系数的尾数舍入为N位的装置;以及
h)用于将在舍入装置中获得的第K个反射系数作为第K个预测系数进行存储的装置。
2.如权利要求1的终端设备,其特征在于还包括:
对已被重新计算和尚未被重新计算的K-1个预测系数的成组浮点格式进行修改的装置;以及
对于已出现溢出的预测系数继续进行K-1个预测系数的重新计算的装置。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DEP4314921.9 | 1993-05-05 | ||
DE4314921 | 1993-05-05 |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN94190264A Division CN1131508C (zh) | 1993-05-05 | 1994-05-02 | 包括至少一个编码器的传输*** |
Publications (2)
Publication Number | Publication Date |
---|---|
CN1516496A CN1516496A (zh) | 2004-07-28 |
CN1251176C true CN1251176C (zh) | 2006-04-12 |
Family
ID=6487280
Family Applications (3)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN94190264A Expired - Fee Related CN1131508C (zh) | 1993-05-05 | 1994-05-02 | 包括至少一个编码器的传输*** |
CN94190265A Expired - Lifetime CN1113332C (zh) | 1993-05-05 | 1994-05-02 | 包括至少一个编码器的传输*** |
CNB031487696A Expired - Fee Related CN1251176C (zh) | 1993-05-05 | 1994-05-02 | 包括至少一个编码器的传输*** |
Family Applications Before (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN94190264A Expired - Fee Related CN1131508C (zh) | 1993-05-05 | 1994-05-02 | 包括至少一个编码器的传输*** |
CN94190265A Expired - Lifetime CN1113332C (zh) | 1993-05-05 | 1994-05-02 | 包括至少一个编码器的传输*** |
Country Status (13)
Country | Link |
---|---|
US (2) | US5751902A (zh) |
EP (2) | EP0649557B1 (zh) |
JP (2) | JP3509862B2 (zh) |
KR (2) | KR100346963B1 (zh) |
CN (3) | CN1131508C (zh) |
CA (2) | CA2137925C (zh) |
DE (2) | DE69420221T2 (zh) |
ES (2) | ES2138077T3 (zh) |
HK (2) | HK1012750A1 (zh) |
RU (2) | RU2123728C1 (zh) |
SG (1) | SG55188A1 (zh) |
UA (2) | UA41893C2 (zh) |
WO (2) | WO1994025961A1 (zh) |
Families Citing this family (25)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3522012B2 (ja) * | 1995-08-23 | 2004-04-26 | 沖電気工業株式会社 | コード励振線形予測符号化装置 |
US6088445A (en) * | 1997-08-01 | 2000-07-11 | Crystal Semiconductor Corp. | Adaptive filter system having mixed fixed point or floating point and block scale floating point operators |
US5974434A (en) * | 1997-10-07 | 1999-10-26 | Ralph E. Rose | Method and apparatus for automatically tuning the parameters of a feedback control system |
US5905659A (en) * | 1997-10-07 | 1999-05-18 | Rose; Ralph E. | Training a recursive filter by use of derivative function |
US6012025A (en) * | 1998-01-28 | 2000-01-04 | Nokia Mobile Phones Limited | Audio coding method and apparatus using backward adaptive prediction |
US6014093A (en) * | 1998-02-27 | 2000-01-11 | Hayes; Adam T. | Pulse coding system |
DE19824104B4 (de) * | 1998-04-27 | 2009-12-24 | Abb Research Ltd. | Nichtlinearer Widerstand mit Varistorverhalten |
DE19845888A1 (de) * | 1998-10-06 | 2000-05-11 | Bosch Gmbh Robert | Verfahren zur Codierung oder Decodierung von Sprachsignalabtastwerten sowie Coder bzw. Decoder |
WO2001052411A2 (en) * | 2000-01-07 | 2001-07-19 | Koninklijke Philips Electronics N.V. | Generating coefficients for a prediction filter in an encoder |
JP3748261B2 (ja) * | 2003-06-17 | 2006-02-22 | 沖電気工業株式会社 | Adpcm方式復号器 |
JP4049793B2 (ja) * | 2003-09-02 | 2008-02-20 | 日本電信電話株式会社 | 浮動小数点信号可逆符号化方法、復号化方法、及びそれらの装置、プログラム及びその記録媒体 |
DE102004007185B3 (de) * | 2004-02-13 | 2005-06-30 | Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. | Prädiktives Codierungsschema |
US7272567B2 (en) * | 2004-03-25 | 2007-09-18 | Zoran Fejzo | Scalable lossless audio codec and authoring tool |
US7961890B2 (en) * | 2005-04-15 | 2011-06-14 | Fraunhofer-Gesellschaft Zur Foerderung Der Angewandten Forschung, E.V. | Multi-channel hierarchical audio coding with compact side information |
US7734466B2 (en) * | 2005-06-20 | 2010-06-08 | Motorola, Inc. | Reduced complexity recursive least square lattice structure adaptive filter by means of limited recursion of the backward and forward error prediction squares |
DE102005039621A1 (de) * | 2005-08-19 | 2007-03-01 | Micronas Gmbh | Verfahren und Vorrichtung zur adaptiven Reduktion von Rausch- und Hintergrundsignalen in einem sprachverarbeitenden System |
US8195462B2 (en) * | 2006-02-16 | 2012-06-05 | At&T Intellectual Property Ii, L.P. | System and method for providing large vocabulary speech processing based on fixed-point arithmetic |
ATE532350T1 (de) * | 2006-03-24 | 2011-11-15 | Dolby Sweden Ab | Erzeugung räumlicher heruntermischungen aus parametrischen darstellungen mehrkanaliger signale |
US9048784B2 (en) * | 2007-04-03 | 2015-06-02 | General Motors Llc | Method for data communication via a voice channel of a wireless communication network using continuous signal modulation |
US8391513B2 (en) | 2007-10-16 | 2013-03-05 | Panasonic Corporation | Stream synthesizing device, decoding unit and method |
US8704186B2 (en) * | 2009-11-17 | 2014-04-22 | Lawrence Livermore National Security, Llc | Active noise canceling system for mechanically cooled germanium radiation detectors |
US20110188571A1 (en) * | 2010-02-04 | 2011-08-04 | Sony Corporation | Recursive adaptive interpolation filters (raif) |
KR101956284B1 (ko) * | 2011-06-30 | 2019-03-08 | 엘지전자 주식회사 | 보간 방법 및 이를 이용한 예측 방법 |
CA3134652A1 (en) | 2014-04-17 | 2015-10-22 | Voiceage Evs Llc | Methods, encoder and decoder for linear predictive encoding and decoding of sound signals upon transition between frames having different sampling rates |
EP3040852A1 (en) * | 2014-12-31 | 2016-07-06 | Nxp B.V. | Scaling for block floating-point data |
Family Cites Families (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US3619586A (en) * | 1968-11-25 | 1971-11-09 | Research Corp | Universal digital filter for linear discrete systems |
US3842250A (en) * | 1973-08-29 | 1974-10-15 | Sperry Rand Corp | Circuit for implementing rounding in add/subtract logic networks |
US4509150A (en) * | 1980-12-31 | 1985-04-02 | Mobil Oil Corporation | Linear prediction coding for compressing of seismic data |
FR2515901A1 (fr) * | 1981-11-04 | 1983-05-06 | Trt Telecom Radio Electr | Systeme de transmission mic-differentiel avec prediction adaptative |
NL8304214A (nl) * | 1983-12-07 | 1985-07-01 | Philips Nv | Werkwijze voor het korrigeren van foute waarden van monsters van een equidistant bemonsterd signaal en inrichting voor het uitvoeren van de werkwijze. |
US4831636A (en) * | 1985-06-28 | 1989-05-16 | Fujitsu Limited | Coding transmission equipment for carrying out coding with adaptive quantization |
US4872132A (en) * | 1987-03-13 | 1989-10-03 | Zoran Corporation | Method and means for block floating point arithmetic |
US5142656A (en) * | 1989-01-27 | 1992-08-25 | Dolby Laboratories Licensing Corporation | Low bit rate transform coder, decoder, and encoder/decoder for high-quality audio |
US5218621A (en) * | 1991-04-04 | 1993-06-08 | Motorola, Inc. | Adaptive digital equalization filter |
-
1994
- 1994-05-02 DE DE69420221T patent/DE69420221T2/de not_active Expired - Lifetime
- 1994-05-02 JP JP52407994A patent/JP3509862B2/ja not_active Expired - Fee Related
- 1994-05-02 ES ES94912662T patent/ES2138077T3/es not_active Expired - Lifetime
- 1994-05-02 CN CN94190264A patent/CN1131508C/zh not_active Expired - Fee Related
- 1994-05-02 WO PCT/IB1994/000087 patent/WO1994025961A1/en active IP Right Grant
- 1994-05-02 JP JP52407894A patent/JP3509861B2/ja not_active Expired - Lifetime
- 1994-05-02 US US08/362,514 patent/US5751902A/en not_active Expired - Lifetime
- 1994-05-02 CA CA002137925A patent/CA2137925C/en not_active Expired - Fee Related
- 1994-05-02 UA UA95018013A patent/UA41893C2/uk unknown
- 1994-05-02 ES ES94912661T patent/ES2138076T3/es not_active Expired - Lifetime
- 1994-05-02 RU RU95105531A patent/RU2123728C1/ru active
- 1994-05-02 RU RU95105532A patent/RU2138030C1/ru not_active IP Right Cessation
- 1994-05-02 WO PCT/IB1994/000086 patent/WO1994025960A1/en active IP Right Grant
- 1994-05-02 CN CN94190265A patent/CN1113332C/zh not_active Expired - Lifetime
- 1994-05-02 EP EP94912661A patent/EP0649557B1/en not_active Expired - Lifetime
- 1994-05-02 DE DE69420220T patent/DE69420220T2/de not_active Expired - Lifetime
- 1994-05-02 EP EP94912662A patent/EP0649558B1/en not_active Expired - Lifetime
- 1994-05-02 CA CA002137926A patent/CA2137926C/en not_active Expired - Fee Related
- 1994-05-02 KR KR1019950700051A patent/KR100346963B1/ko not_active IP Right Cessation
- 1994-05-02 KR KR1019950700050A patent/KR100332850B1/ko not_active IP Right Cessation
- 1994-05-02 UA UA95018012A patent/UA41892C2/uk unknown
- 1994-05-02 US US08/362,513 patent/US5657350A/en not_active Expired - Lifetime
- 1994-05-02 CN CNB031487696A patent/CN1251176C/zh not_active Expired - Fee Related
- 1994-05-02 SG SG1996009273A patent/SG55188A1/en unknown
-
1998
- 1998-12-17 HK HK98113802A patent/HK1012750A1/xx not_active IP Right Cessation
- 1998-12-21 HK HK98114110A patent/HK1019284A1/xx not_active IP Right Cessation
Also Published As
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN1251176C (zh) | 包括至少一个编码器的传输*** | |
KR101353216B1 (ko) | 팩토리얼 펄스 코더를 위한 산술 인코딩 | |
US9171550B2 (en) | Context-based arithmetic encoding apparatus and method and context-based arithmetic decoding apparatus and method | |
KR101353170B1 (ko) | 완전히 활용되지 않는 코드 공간을 압축하는데 산술 스테이지를 이용하는 인코더 및 디코더 | |
CN106409310A (zh) | 一种音频信号分类方法和装置 | |
KR20090074070A (ko) | 오디오 신호들을 인코딩 및 디코딩하는 방법 및 장치 | |
US20170301359A1 (en) | Pyramid vector quantizer shape search | |
KR20070007851A (ko) | 계층 부호화 장치 및 계층 부호화 방법 | |
CN1050633A (zh) | 具有改进的子样求解长期预测器的数字化语言编码器 | |
EP2127088B1 (en) | Audio quantization | |
JP5057334B2 (ja) | 線形予測係数算出装置、線形予測係数算出方法、線形予測係数算出プログラム、および記憶媒体 | |
JP2015528129A (ja) | ベクトル量子化 | |
CN101630242B (zh) | G.723.1编码器快速计算自适应码书的贡献模块 | |
JP6475273B2 (ja) | ベクトル量子化 | |
JPH0844398A (ja) | 音声符号化装置 | |
TW202329089A (zh) | 編碼裝置、解碼裝置、編碼方法及解碼方法 | |
JP3290704B2 (ja) | ベクトル量子化方式 | |
JP3212123B2 (ja) | 音声符号化装置 | |
Chen | Efficient implementation of low bit rate 1.6 kbps speech coder using field programmable gate arrays | |
JPH07281699A (ja) | 音声信号のディジタルフィルタ演算装置 | |
JP2004347954A (ja) | 符号化音声評価方法、装置及びプログラム |
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 | ||
C17 | Cessation of patent right | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20060412 Termination date: 20130502 |