所需输出样本与对应输入样本之间的相对时序的整数表示的制作方法

文档序号:7512522阅读:283来源:国知局
专利名称:所需输出样本与对应输入样本之间的相对时序的整数表示的制作方法
技术领域
本揭示案涉及取样速率转换器,且更明确地说,涉及数字域取样速率转换器。

背景技术
取样速率转换器用于改变数字信号的取样频率,且也可称为再取样器。取样速率转换器可采取硬件装置和/或软件的形式,且可为或上取样器或下取样器。上取样器增加数字信号的取样速率。下取样器减小数字信号的取样速率。取样频率转换速率被定义为所需输出取样频率与给定输入取样频率的比率。上取样转换速率始终大于1.0,而下取样转换速率始终小于1.0。
混叠是在将模拟信号转换为数字信号(或反之亦然)时通常发生的现象。混叠还可在转换数字信号的取样频率时发生。当发生混叠时,一个频率下的信号能量映射到其它频率。举例来说,假定信号具有分别处于1kHz和7.5kHz的两个正弦分量。如果在16kHz处对信号进行取样,那么可完美地重建所述信号。如果通过以4抽取将信号从16kHz下取样到4kHz,那么1kHz处的能量将不改变,但7.5kHz处的能量将映射到0.5kHz。0.5kHz处的能量被视为混叠。作为另一实例,如果在4kHz下对处于1kHz的模拟正弦信号进行取样,那么能量将看上去处于1kHz,其是合乎需要的。然而,如果通过在邻近样本之间插入三个零而将信号上取样到16kHz,那么能量将看上去处于1kHz、3kHz、5kHz和7kHz。处于3kHz、5kHz和7kHz的能量是处于1kHz的能量的图像,且被视为混叠。为了减小由于混叠引起的失真,取样速率转换器通常包含抗混叠滤波器,其通常是低通滤波器。
上取样器和下取样器两者中通常都需要抗混叠滤波器。举例来说,常规的上取样器通常包含在邻近样本之间插入特定数目的零的内插器,和抗混叠滤波器。通常,抗混叠滤波器是具有带宽π/I的低通滤波器,其中I是上取样因数。作为另一实例,常规的下取样器通常包含抗混叠滤波器,和周期性地从每特定数目的样本中拾取一个样本的抽取器。通常,抗混叠滤波器是具有带宽π/D的低通滤波器,其中D是下取样速率。


发明内容
一般来说,本揭示案描述用于改变数字信号的取样频率的技术。明确地说,所述技术提供一种确定所需输出样本与对应输入样本之间的相对时序的准确方式。在整个本揭示案中,术语“相位”用于指所需输出样本与对应输入样本之间的此相对时序。本揭示案描述用于使用整数较准确地确定上取样器中的相位的技术。
举例来说,取样速率转换器使用三个分量表示相位并使用整数跟踪每一分量。第一分量(本文中称为输入样本指数)跟踪用于产生中间样本的最近输入样本。第二分量(本文中称为整数相位)跟踪用于产生输出样本的中间样本。第三分量(本文中称为分数相位)跟踪输出样本与其相邻中间样本之间的时序差。以此方式,上取样器可提供所需输出样本与对应输入样本之间的相对时序的整数表示。使用整数确定输出信号的相位允许上取样器通过减少由不准确的相位表示引起的再取样误差而较准确地对输入信号进行上取样。
在一个实施例中,一种方法包括使用识别数字信号的用于产生相关中间样本的最近输入样本的第一分量、识别中间样本的第二分量,和识别所需输出样本与中间样本之间的时序差的第三分量,来表示数字信号的所需输出样本与对应输入样本之间的相对时序,其中所述分量的每一者表示为非近似的整数。
在另一实施例中,一种设备包括相位跟踪模块,其使用识别数字信号的用于产生相关中间样本的最近输入样本的第一分量、识别中间样本的第二分量,和识别所需输出样本与中间样本之间的时序差的第三分量,来表示数字信号的所需输出样本与对应输入样本之间的相对时序,其中所述分量的每一者表示为非近似的整数。
在又一实施例中,一种计算机可读媒体包括指令,所述指令在执行时促使处理器使用识别数字信号的用于产生相关中间样本的最近输入样本的第一分量、识别中间样本的第二分量,和识别所需输出样本与中间样本之间的时序差的第三分量,来表示数字信号的所需输出样本与对应输入样本之间的相对时序,其中所述分量的每一者表示为非近似的整数。
附图和以下描述内容中陈述一个或一个以上实施例的细节。从描述内容和附图,以及从权利要求书中将了解其它特征、目的和优点。



图1是说明使用所需输出样本与对应输入样本之间的相对时序的整数表示对输入的数字信号进行上取样的无线通信装置的框图。
图2是说明根据本揭示案中描述的技术确定经速率转换信号的相位的整数表示的示范性上取样器的框图。
图3是说明将输入取样频率上取样到所需输出取样频率的上取样器的示范性操作的流程图。
图4是说明使用整数确定所需输出样本与对应输入样本之间的相对时序的上取样器的示范性操作的流程图。
图5是说明根据本揭示案的技术输入样本从11kHz到48kHz的示范性转换的曲线图。
图6是说明输入样本从11kHz到48kHz的示范性转换的另一曲线图。

具体实施例方式 本揭示案描述用于改变数字信号的取样频率的技术。明确地说,所述技术提供一种确定所需输出样本与对应输入样本之间的相对时序的准确方式。在整个本揭示案中,术语“相位”用于指所需输出样本与对应输入样本之间的此相对时序。在数字上取样器中,相位确定对于上取样器的性能可很关键。不准确的相位确定可导致经上取样信号中的额外重建失真和/或频率歪斜。本揭示案描述用于使用非近似的整数准确地确定上取样器中的相位的技术。
常规上,上取样器依据转换速率而跟踪输出信号的相位。转换速率是可表示为所需输出取样频率与输入取样频率之间的比率(fo/fi)的分数。如果(例如)信号从12kHz上转换到48kHz,那么转换速率将为4。常规上取样器通常依据转换速率而确定相位,即所需输出样本与对应输入样本之间的相对时序。如果上取样器在转换速率4下操作,那么上取样器针对每一个输入样本输出四个输出样本。如果上取样器从第一输入样本的时间开始产生输出样本,那么其在第一与第二输入样本之间的路程的

处、在第一与第二输入样本之间的路程的

处,以及在第一与第二输入样本之间的路程的

处,在第一输入样本的时间产生输出样本。输出样本的每一者的对应相位等于n·τ(n),其中n是递归指数,且τ(n)是转换速率。换句话说,通过将先前输出样本的相位递增转换速率的倒数来获得每一后续输出样本的相位。以此方式,相位对应于输出样本相对于输入样本的时序。
因为转换速率(且因此相位)是分数,所以其可以是有限或无限值。数字上取样器使用有限数目的二进制数位来表示相位。上取样器可用有限数目的二进制数位来精确地表示有限分数,例如1/2、3/4和127/128。然而,为了表示无限分数(例如,1/3、4/7、441/480),上取样器必须量化分数以能够在有限数目的二进制数位内表示所述分数。通过量化来近似无限分数在上取样过程中引入了某一相位误差。明确地说,每次使后续输出样本的相位递增近似的无限分数时,输出样本相对于输入样本的位置由于量化而稍许偏离。随着使相位持续递增量化的逆转换速率值,相位误差增加且可随着时间累积到不可接受的水平。
为了减少上取样过程中的相位误差量,本揭示案的技术提供一种确定经上取样输出信号的相位的较准确方式。明确地说,所述技术提供一种使用非近似的整数表示输出信号的相位的方式。如本文所使用,短语“非近似的整数”是指并非通过舍入、量化或以另外的方式近似无限数字而获得的整数。使用非近似的整数跟踪输出信号的相位允许上取样器通过减少由于无限分数的近似引起的相位误差而较准确地对输入信号进行上取样。
图1是说明根据本揭示案中描述的技术使用非近似的整数确定数字信号的所需输出样本与对应输入样本之间的相对时序的无线通信装置(WCD)10的框图。WCD 10可采取移动电话、卫星电话、并入在便携式计算机内的无线通信卡、配备有无线通信能力的个人数字助理(PDA),或能够进行无线通信的多种装置的任一者的形式。仅出于示范性目的在无线通信装置的情境中描述本揭示案的技术。所述技术还可用于其它装置中,包含有线通信装置、基于包的通信装置,以及不主要针对通信的例如音频重放装置、记录装置和显示装置等装置。
WCD 10可与多个基站(未图示)通信。基站通常是固定设备,其以无线方式与WCD 10通信以便提供对WCD 10的网络接入。举例来说,基站可在WCD 10与公共交换电话网络(PSTN)之间提供接口,使得电话呼叫可被路由到WCD 10以及从WCD 10路由。作为替代或另外,基站可耦合到用于传输基于包的语音信息或基于包的数据的基于包的网络。
在图1的实例中,WCD 10包含天线11、收发器12、编解码器(编码器/解码器)13、存储器16和控制器18。在一些实施例中,控制器18可包括能够控制WCD 10的操作的移动台调制解调器(MSM)。WCD 10可经由天线11以收发器12从基站接收无线信号。编解码器13接着对所接收的无线信号进行解码。控制器18以输入取样速率从编解码器13接收数字信号,处理所述数字信号,并将经处理的信号提供到WCD 10的用户和/或将经处理的信号存储在存储器16中。
控制器18包含信号处理器14、取样器15和取样速率转换器20。信号处理器14以输入取样频率处理从编解码器13接收的数字信号。取样速率转换器20依据数字信号的应用将输入取样频率转换为所需输出取样频率。信号处理器14可以所需输出取样频率再次处理数字信号。为了将信号提供到WCD 10的用户,取样器15包括数字到模拟转换器(DAC),且以所需输出取样频率将数字信号转换为模拟信号。
WCD 10还可从WCD 10的用户接收信号。控制器18接收模拟信号,将模拟信号转换为数字信号,并处理数字信号以供传输。在此情况下,取样器15包括模拟到数字转换器(ADC),且以输入取样频率将模拟信号转换为数字信号。信号处理器14以输入取样频率处理数字信号。取样速率转换器20依据数字信号的应用将输入取样频率转换为所需输出取样频率。信号处理器14可以所需输出取样频率再次处理数字信号。编解码器13以所需输出取样频率对数字信号进行编码。收发器12接着将经编码无线信号经由天线11传输到基站。
在一些实施例中,控制器18可包含专门组的信号处理器、取样速率转换器和取样器以用于由收发器12接收的信号和待由收发器12传输的信号。在任何情况下,控制器18可实施为一个或一个以上处理器、数字信号处理器、专用集成电路(ASIC)、场可编程门阵列(FPGA)、复杂可编程逻辑装置(CPLD)、离散逻辑、软件、硬件、固件或其任何组合。
在处理数字信号之前,控制器18基于数字信号的潜在应用确定数字信号的所需输出取样频率fo。所接收的数字信号的潜在应用使用多种取样频率。举例来说,在语音通信应用中使用8kHz和16kHz取样频率。音频压缩光盘(CD)应用使用44.1kHz取样频率。数字音频磁带(DAT)应用使用48kHz取样频率。其它数字信号应用中可使用其它典型取样频率,包含11.025kHz、12kHz、12.8kHz、22.05kHz、24kHz、32kHz和44kHz。将数字信号转换为不同输出取样频率对于在WCD 10内同时执行一个以上数字信号应用可尤其有用。举例来说,控制器18可能希望将具有8kHz的取样频率的语音通信应用和具有48kHz的取样频率的音频应用转换为共同取样频率,以准许同时执行语音通信和音频应用。因此,WCD 10的用户可在接听电话呼叫的同时收听音乐。
控制器18内的取样速率转换器20可包含上取样器22和下取样器23,以将数字信号的取样速率从输入取样频率转换为所需输出取样频率。明确地说,上取样器22将输入信号转换为大于输入频率的所需输出频率,且下取样器23将输入信号转换为小于输入频率的所需输出频率。以此方式,上取样器22增加输入信号的取样频率以产生带宽宽于原始输入数字信号的带宽的输出数字信号。上取样器22可将失真控制到输入数字信号频谱并将扩展频带中的能量控制到预定水平以保留信号的保真度。上取样器22支持任意合理的上取样速率,以通过执行上取样和内插而将输入取样频率转换为所需输出取样频率。
作为一实例,上取样器22可通过首先将输入数字信号以因数N上取样到处于Nfi的取样频率的中间信号,来转换输入数字信号的取样频率fi。中间取样频率Nfi大于或等于所需输出频率fo。上取样器22可接着基于相位的整数表示将中间数字信号转换为所需输出取样频率fo。
上取样器22根据本揭示案中描述的技术使用非近似的整数确定输出信号(即,经速率转换信号)的相位。使用非近似的整数确定输出信号的相位允许上取样器通过减少由于无限分数的近似引起的相位误差而较准确地对输入信号进行上取样。如下文详细描述,上取样器22使用三个分量表示相位并使用非近似的整数跟踪每一分量。第一分量(本文中称为输入样本指数)跟踪用于产生一组中间样本的最近输入样本。第二分量(本文中称为整数相位)跟踪中间样本的一者。第三分量(本文中称为分数相位)跟踪对应于整数相位的输出样本与中间样本之间的时序差。以此方式,上取样器22提供所需输出样本与对应输入样本之间的相对时序的非近似的整数表示。
图2是说明根据本揭示案中描述的技术产生经速率转换信号的相位的非近似的整数表示的示范性上取样器(例如,图1的上取样器22)的框图。上取样器22包含上取样模块23、下取样模块27和相位跟踪模块30。
上取样模块23将输入数字信号从输入取样频率fi上取样到中间取样频率fm。明确地说,上取样模块23通过将数字信号扩展上取样因数N而对数字信号进行上取样。上取样模块23可包含内插器24以通过在数字信号的邻近输入样本之间插入N-1个零来实现此上取样过程。以此方式,内插器24将数字信号上取样到中间取样频率Nfi。上取样器22可用抗混叠滤波器26对数字信号进行滤波以去除数字信号中存在的由于插入零而引起的任何混叠图像或失真。抗混叠滤波器26可(例如)包括具有带宽π/N的低通滤波器。
下取样模块27基于相位的整数表示将经上取样信号下取样到所需输出取样频率fo。下取样模块27可包含内插模块28,其使用例如零阶内插、线性内插、较高阶内插和多种样条内插等若干内插方法的任一者将中间信号下取样到所需输出取样频率。作为一实例,内插模块28可根据以下等式使用线性内插对经上取样信号进行下取样 其中so(n)是第n输出样本,smprev(n)是对应的先前中间样本,smnext(n)是对应的下一中间样本,且λ(n)是内插系数,其基于下文详细描述的相位的整数表示来计算。
可使用以下等式计算线性内插系数 其中t(n)是第n输出样本的取样时间,tprev(n)和tnext(n)分别是先前中间样本和下一中间样本的取样时间。为了使内插误差最小化,应尽可能准确地计算λ(n)。
根据以上等式(1),当输出样本的时序对应于先前中间样本的时序时,即当λ(n)等于零时,内插模块28输出先前中间样本。换句话说,上取样器22不必执行线性内插。如果λ(n)不等于零,那么内插模块28基于先前中间样本和下一中间样本执行内插以产生输出样本。尽管本揭示案关注于使用线性内插从中间取样频率下取样到所需输出取样频率,但本文描述的技术可应用于任何阶的内插,例如零阶内插、线性内插、较高阶内插和多种样条内插。
使用输入样本和中间样本的取样时间来表示第n输出样本的取样时间t(n)。第n输出样本的绝对取样时间可表达为其中相对于输入样本的相对输出取样时间(本文中称为相位τ(n))可通过将t(n)除以

来获得,其中当fi/fo是无限分数时,上取样器22量化分数以能够在有限数目的二进制数位内表示所述分数。相位n(fi/fo)趋向于具有较大误差,因为量化误差倍增n倍。随着n变大,相位误差增加且可随着时间累积到不可接受的水平。
根据本揭示案的技术,上取样器22通过使用相位的整数表示较准确地确定相位τ(n)来减少相位误差。更明确地说,相位跟踪模块30使用三个分量表示相位τ(n)并使用整数跟踪分量的每一者。相位跟踪模块30可(例如)将输出样本的相位τ(n)表示为 α(n),β(n),θ(n)∈Z 0≤β(n)<N 0≤θ(n)<fo(3) 此处,α(n)表示第一分量且称为输入样本指数,β(n)表示第二分量且称为整数相位,且θ(n)表示第三分量并称为分数相位。输入样本指数指示用于产生一组中间样本的最近输入样本。整数相位指示中间样本的一者。分数相位表示由整数相位指示的所需输出信号与中间样本之间的时序差。
为了产生后续所需输出样本(即,当前输出样本)的相位,相位跟踪模块30以递归方式更新这些相位分量的每一者,即在时间n的相位分量基于其在时间n-1的值来更新。换句话说,先前所需输出样本的相位分量用于产生下一所需输出样本的相位分量。在初始化期间,上取样器22计算整数相位增量(dint)和分数相位增量(dfrac),其用于以递归方式更新相位分量值。因此,整数相位增量和分数相位增量分别表示对整数相位和分数相位的递增增加的值。在一个实施例中,相位跟踪模块30可根据以下等式计算dint和dfrac
dfrac=mod(Nfi,fo)=Nfi-dintfo (5) 其中N是上取样因数,且fo和fi分别是输入频率和输出频率。在以上等式中,函数

表示与小于或等于任何变数x的最大整数相等的地板函数,且mod(A,B)表示在将A除以B的过程中的正余数。换句话说,dint是Nfi除以fo的商,且dfrac是对应余数。
相位跟踪模块30根据以下等式更新先前输出样本的分数相位以获得当前输出样本的分数相位(θ(n)) θ(n)=mod(θ(n-1)+dfrac,fo) (6) 根据等式(6),当θ(n-1)+dfrac小于fo时,分数相位θ(n)等于θ(n-1)+dfrac,且当θ(n-1)+dfrac大于或等于fo时,分数相位θ(n)等于θ(n-1)+dfrac-fo。另外,当θ(n-1)+dfrac大于或等于fo时,相位跟踪模块30将与分数相位相关联的进位ξfrac(n)设定为1。
相位跟踪模块30接着使用先前输出样本的整数相位、整数相位增量dint和与分数相位相关联的进位ξfrac(n)来计算当前输出样本的整数相位。如上所述,整数相位识别从其中参考输出样本的时序的中间样本的一者。所述中间样本可以是多个中间样本的任一者。作为一实例,整数相位可识别直接在所需输出样本之前的中间样本。相位跟踪模块可(例如)使用以下等式计算当前输出样本的整数相位 βm(n)=mod(βm(n-1)+dint+ξfrac(n),N) (7) 根据等式(7),当βm(n-1)+ξfrac(n)小于上取样速率N时,当前输出样本的整数相位等于β(n-1)+dint+ξ(n),且当βm(n-1)+dint+ξfrac(n)大于或等于上取样速率N时,当前输出样本的整数相位等于βm(n-1)+dint+ξ(n)-N。当βm(n-1)+dint+ξfrac(n)大于或等于上取样速率N时,相位跟踪模块30将与当前输出样本的整数相位相关联的进位

设定为1。在以上等式中,上标m表示中间样本的一者的指数。
相位跟踪模块30跟踪与由整数相位识别的中间样本相关联的输入样本指数(αm(n))。相位跟踪模块30使用与当前输出样本的整数相位相关联的进位

跟踪输入样本指数αm(n)。明确地说,如果整数相位进位为1,那么相位跟踪模块30递增当前输出样本的输入样本指数αm(n)。否则,输入样本指数αm(n)保持不变。以此方式,上取样器22通过使用非近似的整数以递归方式跟踪三个相位分量来表示所需输出样本与对应输入样本之间的相对时序。
为了帮助内插模块28经由内插进行下取样,相位跟踪模块30计算与其它中间样本相关联的额外相位分量。作为一实例,内插模块28使用线性内插使用五个相位分量来产生一输出样本。五个相位分量包含与直接在所需输出样本之前的中间样本(“先前中间样本”)相关联的输入样本指数和整数相位、与直接在所需输出样本之后的中间样本(“下一中间样本”)相关联的输入样本指数和整数相位,以及用于实施内插的分数相位。所述五个相位分量中,仅三个是独立的。明确地说,用于表示输出样本的相位的输入样本指数、整数相位和分数相位是独立的。其它输入样本指数和整数相位依据用于表示输出样本的相位的输入样本指数和整数相位来计算。作为一实例,与先前中间样本相关联的输入样本指数和整数相位以及分数相位可用于表示输出样本的相位。在所述情况下,与下一中间样本相关联的输入样本指数和整数相位取决于与先前中间样本相关联的输入样本指数和整数相位。或者,与下一中间样本相关联的输入样本指数和整数相位以及分数相位可用于表示输出样本的相位。在所述情况下,与先前中间样本相关联的输入样本指数和整数相位取决于与下一中间样本相关联的输入样本指数和整数相位。
如果与先前中间样本相关联的输入样本指数和整数相位用于表示输出样本的相位,那么可如上所述跟踪与先前中间样本相关联的样本指数(αprev(n))、与先前中间样本相关联的整数相位(βprev(n)),以及分数相位(θprev(n))。明确地说,相位跟踪模块根据以下等式计算并更新分量的每一者 θ(n)=mod(θ(n-1)+dfrac,fo) βprev(n)=mod(βprev(n-1)+dint+ξfrac(n),N) 为了辅助内插,相位跟踪模块30接着计算与一个或一个以上其它中间样本相关联的整数相位和输入样本指数。举例来说,对于线性内插,相位跟踪模块30计算与下一中间样本相关联的整数相位和输入样本指数。在一个实施例中,相位跟踪模块30可以与上文相对于先前中间样本描述的方式相同的方式计算与下一中间样本相关联的整数相位和输入样本指数。举例来说,相位跟踪模块30可根据以下等式更新与下一中间样本相关联的整数相位和输入样本指数 βnext(n)=mod(βnext(n-1)+dint+ξfrac(n),N) 或者,相位跟踪模块30可基于与先前中间样本相关联的整数相位和输入样本指数来计算与下一中间样本相关联的整数相位和输入样本指数。举例来说,相位跟踪模块可使用以下等式更新与下一中间样本相关联的整数相位βnext(n)和输入样本指数αnext(n) βnext(n)=mod(βprev(n)+1,N) 其中ξnext(n)是和与下一中间样本相关联的整数相位(即,βnext(n)))的计算相关联的进位。如果βprev(n)+1大于或等于N,那么将βnext(n)设定为1,否则,将其设定为0。
内插模块28在内插期间使用这些分量的每一者来根据以上等式(1)产生输出样本。明确地说,内插模块28选择先前中间样本和下一中间样本,并使用先前和下一中间样本以及依据θ(n)计算的内插系数产生输出信号。明确地说,内插模块28使用对应输入样本指数和整数相位(即,αprev(n)和βprev(n))来选择先前中间样本。内插模块28使用对应输入样本指数和整数相位(即,αnext(n)和βnext(n))来选择下一中间样本。内插模块28使用分数相位θ(n)计算内插系数λ(n)。内插模块28可使用以下等式计算内插系数 λ(n)=θ(n)/f.(9) 内插模块28使用所计算的内插系数来根据以上等式(1)产生输出样本。如果λ(n)小于0.5,那么内插模块28产生的输出样本较接近先前中间样本。如果λ(n)大于0.5,那么内插模块28产生的输出样本较接近下一中间样本。
由于除法的计算量大于乘法,所以内插模块28可预先计算1/fo(称为内插系数评估常数)以节省计算成本。举例来说,内插模块28可在初始化时计算内插系数评估常数并将值存储在存储器16内。当常数使用固定点数字表示时,上取样器22可提供特殊Q因数布置以维持内插系数评估常数的令人满意的精确度。更明确地说,为了使此常数的精确度最大化,可依据fo来确定Q因数。上取样器可将Q因数设定为等于d+k,其中k是使得2k<fo的最大正数,且d是用于将1/fo表示为固定点数字的位的数目。举例来说,如果分数相位评估常数表示为16位字,那么将Q因数设定为15+k以完全利用16位字中的所有位。内插模块28在θ(n)与1/fo相乘之后调节Q因数。
在另一实施例中,仅当需要中间样本时才计算中间样本。在此情况下,输入样本指数和整数相位可用于控制抗混叠滤波器模块26。如果使用多相滤波来实施所述滤波器,那么整数相位还可用于选择对应的多相滤波器。
替代于使用输入取样速率和输出取样速率,相同技术可用于使用转换比率跟踪相位。举例来说,相位跟踪模块可在转换比率U/D下操作,其中U和D是正整数且U严格小于D。在以上等式中用U和D取代fi和fo,可使用转换比率得到类似的相位跟踪结果。
尽管依据经由线性内插对输出样本进行内插来描述,但本揭示案的技术可用于使用例如零阶内插、较高阶内插和多种样条内插等其它类型的内插产生输出样本。依据将执行的内插的类型,相位跟踪模块30可跟踪或计算更多相位分量。举例来说,如果使用二阶内插,那么相位跟踪模块30可跟踪或计算三个输入样本指数和三个整数相位以识别用于内插中的三个中间样本。
下文出于示范性目的说明将数字信号从输入取样频率转换为所需输出取样频率的若干实例。作为第一实例,上取样器22可接收处于44.1kHz的输入取样速率的数字信号,并确定数字信号的所需输出取样频率为48kHz。在此实例中,上取样器22选择上取样因数10并将输入样本上取样到441kHz。如下文所说明计算整数相位和分数相位增量
dfrac=Nfi-dintfo=10×44100-9×48000=9000 相位评估常数为1/48,000。k设定为15。如果常数存储在带正负号的16位固定点数字中,那么Q因数应设定为30以使其精确度最大化。
作为第二实例,上取样器22接收处于44.1kHz的输入取样速率的数字信号,并确定数字信号的所需输出取样频率为48kHz。在此实例中,上取样器22选择147/160的转换比率来代替于使用输入和输出取样频率。上取样器22以因数10将输入样本上取样到441kHz。整数相位和分数相位增量为
dfrac=Nfi-dintfo=10×147-9×160=30 相位评估常数为1/160。此处,k为7。如果以带正负号的16位固定点格式存储常数,那么Q因数应设定为22。与实例1相比,整数更新处理保持相同。分数相位增量和相位评估常数不同。此处,后一情况稍许更准确,这归因于其相位评估常数的量化误差与其相位评估常数的比率较小。
作为第三实例,上取样器22接收处于22.05kHz的输入取样速率的数字信号,并确定数字信号的所需输出取样频率为32kHz。在此实例中,上取样器22选择上取样因数12并将输入样本上取样到264.6kHz。如下文所说明计算整数相位和分数相位增量
dfrac=Nfi-dintfo=12×22050-8×32000=8600 相位评估常数为1/32,000。k设定为14。如果以带正负号的32位固定点格式存储常数,那么Q因数应设定为45以使其精确度最大化。
图3是说明将输入取样频率上取样到所需输出取样频率的上取样器(例如,图2的上取样器22)的示范性操作的流程图。上取样器22接收处于输入取样频率fi的输入数字信号(40)。
上取样器22将输入数字信号从输入取样频率fi上取样到中间取样频率fm(42)。上取样器22可通过在数字信号的邻近输入样本之间插入N-1个零并用抗混叠滤波器对所得信号进行滤波来以因数N对输入数字信号进行上取样。以此方式,上取样器22将数字信号上取样到等于Nfi的中间取样频率。
上取样器22对经上取样数字信号进行滤波(44)。上取样器22可应用抗混叠滤波器26来去除数字信号中存在的任何混叠图像或失真。抗混叠滤波器26可包括具有带宽π/N的低通滤波器。
内插模块28使用跟踪到的分数相位计算线性内插系数(46)。内插模块28可使用以下等式计算线性内插系数 λ(n)=θ(n)/fo (10) 内插模块28确定内插系数是否等于零(50)。如果内插系数等于零,那么先前中间样本的时序对应于所需输出样本的时序,且内插模块28不需要执行线性内插。作为替代,内插模块28输出对应于与先前中间样本相关联的整数相位βprev(n)的先前中间样本。内插模块28可使用与先前中间样本相关联的输入样本指数和整数相位来选择先前中间样本,并输出所产生的中间样本。
如果内插系数不等于零,那么内插模块执行内插以产生输出样本(52)。内插模块28可使用线性内插来根据以下等式产生输出信号so(n) 其中λ(n)是所计算的内插系数,smprev(n)是使用αprev(n)和βprev(n)产生的先前中间样本,且smnext(n)是使用αnext(n)和βnext(n)产生的下一中间样本。
上取样器22使用整数值跟踪输出样本的相位(54)。明确地说,上取样器22如本揭示案中所详细描述的那样使用三个分量(即,输入样本指数α(n)、整数相位β(n)和分数相位θ(n))表示输出样本的相位,并使用非近似的整数跟踪每一分量。作为一实例,与先前中间样本相关联的输入样本指数和整数相位以及分数相位可用于表示输出样本的相位。在所述情况下,与下一中间样本相关联的输入样本指数和整数相位取决于与先前中间样本相关联的输入样本指数和整数相位。或者,与下一中间样本相关联的输入样本指数和整数相位以及分数相位可用于表示输出样本的相位。在所述情况下,与先前中间样本相关联的输入样本指数和整数相位取决于与下一中间样本相关联的输入样本指数和整数相位。上取样器22使用相位分量来执行内插以产生输出样本。
图4是说明使用非近似的整数确定所需输出样本与对应输入样本之间的相对时序的上取样器(例如,上取样器22)的示范性操作的流程图。使用非近似的整数确定相对时序允许上取样器22通过减少由于无限分数的近似引起的相位误差而较准确地对输入信号进行上取样。在图4中描述的实例中,与先前中间样本相关联的输入样本指数和整数相位以及分数相位可用于表示输出样本的相位。然而,如上所述,与任何中间样本相关联的输入样本指数和整数相位可用于表示输出样本的相位。
首先,将上取样器22初始化(60)。在初始化期间,上取样器22计算整数相位增量(dint)和分数相位增量(dfrac)。在一个实施例中,上取样器22可根据以下等式计算dint和dfrac
dfrac=mod(Nfi,fo)=Nfi-dintfo (13) 其中N是上取样速率,fo和fi分别是输入频率和输出频率。在以上等式中,

是与小于或等于x的最大整数相等的地板函数,且mod(A,B)表示在将A除以B的过程中的正余数。换句话说,dint是Nfi除以fo的商,且dfrac是对应余数。由于fi小于fo,所以以下关系成立 0≤dint<N, 0≤dfrac<fo. 上取样器22还可将与中间样本(例如,先前中间样本)有关的整数相位βprev(n)、分数相位(θ(n))初始化。由于基于βprev(n)使用等式(8)计算βnext(n),所以不需要将其初始化。当n(递归指数)等于0时,βprev(n)可设定为0与N-1之间的任何数字。θ(n)可设定为0与fo-1之间的任何数字。
上取样器22更新分数相位(62)。上取样器22可使用以下等式计算θ(n) θ(n)=mod(θ(n-1)+dfrac,fo) (14) 其中模运算符

因此,θ(n)可重写为
上取样器22确定递增的分数相位(θ(n-1)+dfrac)是否大于或等于fo(64)。如果θ(n-1)+dfrac大于或等于fo,那么根据等式(14),由上取样器22计算的新的分数相位θ(n)为θ(n-1)+dfrac-fo。上取样器22将分数相位进位(ξfrac(n))设定为1(68)。以此方式,上取样器22用整数跟踪分数相位的分子,同时仍考虑到分数相位进位。
如果θ(n-1)+dfrac不大于或等于fo,那么根据等式(14),由上取样器22计算的新的分数相位θ(n)为θ(n-1)+dfrac。因为不存在进位,所以上取样器22将分数相位进位(ξfrac(n))设定为0(66)。因此,分数相位进位ξfrac(n)定义为
上取样器22使用整数相位增量dint和来自分数相位更新的进位ξfrac(n)来更新与先前中间样本相关联的整数相位(βprev(n))(70)。上取样器22可(例如)根据以下等式计算βprev(n) βprev(n)=mod(βprev(n-1)+dint+ξfrac(n),N) (17) 上取样器22确定βprev(n-1)+dint+ξfrac(n)是否大于或等于N(72)。如果βprev(n-1)+dint+ξfrac(n)大于N,那么根据等式(17),与先前中间样本相关联的新的整数相位βprev(n)等于βprev(n-1)+dint+ξfrac(n)-N。另外,上取样器22将与先前中间样本相关联的整数相位进位(ξintprev(n))设定为1(76)。以此方式,上取样器22用整数跟踪与先前中间样本相关联的整数相位,同时仍考虑到进位。
如果βprev(n-1)+dint+ξfrac(n)小于N,那么与先前中间样本相关联的新的整数相位βprev(n)等于βprev(n-1)+dint+ξfrac(n)。在此情况下,因为不存在进位,所以上取样器22将进位ξintprev(n)设定为0(74)。因此,整数相位进位ξintprev(n)可定义为
上取样器22使用来自整数相位更新的进位ξintprev(n)来更新与先前中间样本相关联的样本指数(αprev(n))(78)。明确地说,如果进位为1,那么上取样器22递增样本指数,且如果进位为零,那么上取样器22不递增样本指数。上取样器22可(例如)使用以下等式更新样本指数αprev(n) 以此方式,上取样器22使用先前中间样本的样本指数、与先前中间样本相关联的整数相位以及分数相位来跟踪输出样本的相位。
为了辅助内插,取样速率转换器20计算下一中间样本的整数相位βnext(n)(80)。上取样器22可(例如)使用以下等式计算βnext(n) βnext(n)=mod(βprev(n)+1,N) (20) 上取样器22确定βprev(n)+1是否大于或等于N(82)。如果βprev(n)+1大于N,那么根据等式(20),与下一中间样本相关联的新的整数相位βnext(n)等于βprev(n)+1-N。另外,上取样器22将与下一中间样本相关联的整数相位进位(ξintnext(n))设定为1(86)。以此方式,上取样器22用整数跟踪与下一中间样本相关联的整数相位,同时仍考虑到进位。
如果βprev(n)+1小于N,那么与先前中间样本相关联的新的整数相位βprev(n)等于βprev(n)+1。在此情况下,因为不存在进位,所以上取样器22将进位ξintnext(n)设定为0(84)。因此,整数相位进位ξintnext(n)定义为
上取样器22使用来自整数相位更新的进位ξintnext(n)和与先前中间样本相关联的样本指数αprev(n)来更新与下一中间样本相关联的样本指数(88)。明确地说,如果进位为1,那么上取样器22递增样本指数,且如果进位为零,那么上取样器22不递增样本指数。可使用以下等式计算整数相位更新 尽管在图4中说明的实例中,上取样器22使用与先前中间样本相关联的输入样本指数和整数相位以及分数相位来表示输出样本的相位,但上取样器22可使用与下一中间样本相关联的整数相位和输入样本指数来表示输出样本的相位。上取样器22接着基于结果计算与先前中间样本相关联的整数相位和输入样本指数。此外,上取样器20可以与计算与先前中间样本相关联的整数相位和输入样本指数相同的方式更新与下一中间样本相关联的整数相位和输入样本指数。
图5是说明根据本揭示案的技术输入样本从11kHz到48kHz的转换的曲线图。在图5中说明的实例中,上取样器(例如,上取样器22)以上取样因数12(即,N=12)对输入数字信号进行上取样,以获得处于取样速率132kHz的中间样本。上取样器22可(例如)在输入样本的每一者之间产生11个中间样本。
图5中说明的实例展示位于输入样本指数1处的一个输入样本90。另外,图5中的曲线图展示在输入样本指数1处的输入样本90与输入样本指数2处的输入样本(未图示)之间插入的十一个中间输入样本中的三个。上取样器22需要在三角形指示的位置处产生输出样本92。因为所需输出样本的位置/时序不对应于任何中间样本,所以上取样器22必须基于先前中间样本和下一中间样本执行线性内插以获得输出样本。
上取样器22使用根据本文描述的技术跟踪到的输入样本指数和整数相位来产生先前中间样本94和下一中间样本96。在此情况下,两个中间样本的输入样本指数均等于1,即输入样本90连同其先前输入样本一起用于产生两个中间样本。先前中间样本94的整数相位等于1,因为直接在所需输出样本92之前的中间样本是使用在输入样本指数1处的输入样本90产生的第一中间样本。同样,下一中间样本96的整数相位等于2,因为直接在所需输出样本92之后的中间样本是使用在输入样本指数1处的输入样本90产生的第三中间样本。
如图5中进一步说明,分数相位分量98是先前中间样本94与所需输出92之间的时序差的量度。上取样器22使用分数相位分量98产生内插系数,并使用基于对应输入样本指数和整数相位产生的先前和下一中间样本以及所计算的线性内插系数对输出样本进行内插。
图6是说明根据本揭示案的技术输入样本从11kHz到48kHz的转换的曲线图。图6中说明的曲线图说明与图5中的曲线图相同的转换,但处于信号中的不同位置,即在输入样本五与六之间。
图6中说明的实例展示分别处于输入样本指数五和六的两个输入样本100A和100B。另外,图6中的曲线图展示由上取样器在处于输入样本指数五的输入样本100A与处于输入样本指数六的输入样本100B之间产生的所有十一个中间输入样本。上取样器22希望产生识别为三角形的若干输出样本。我们将关注于输出样本102的产生。因为所需输出样本102的位置/时序不对应于任何中间样本,所以上取样器22必须基于先前中间样本和下一中间样本执行线性内插以获得输出样本。
上取样器22使用根据本文所描述的技术跟踪到的输入样本指数和整数相位来产生先前中间样本104和下一中间样本106。在此情况下,先前中间样本104的输入样本指数不同于下一中间样本106的输入样本指数。明确地说,先前中间样本104的输入样本指数等于五,而与下一中间样本106相关联的输入样本指数等于六。换句话说,使用输入样本100B及其先前输入样本而不是输入样本100A及其先前输入样本来产生下一中间样本。
先前中间样本104的整数相位等于十一,因为紧接在所需输出样本102之前的中间样本是使用处于输入样本指数五的输入样本100A产生的第十一个中间样本。下一中间样本的整数相位等于零,因为紧接在所需输出样本102之后的中间样本等于位于处于指数六的输入样本100B的输入样本。
如图6中进一步说明,分数相位分量108测量先前中间样本104与所需输出102之间的时序差。上取样器22使用分数相位分量108产生内插系数,并使用基于对应输入样本指数和整数相位产生的先前和下一中间样本以及所计算的线性内插系数对输出样本进行内插。
已描述若干实施例。然而,这些实施例可能有各种修改,且本文提出的原理也可应用于其它实施例。本文描述的方法可实施在硬件、软件和/或固件中。此类方法的各种任务可实施为可由例如微处理器、嵌入式控制器或IP核心等逻辑元件的一个或一个以上阵列执行的指令组。在一个实例中,一个或一个以上此类任务经布置以在移动台调制解调器芯片或芯片组内执行,所述芯片或芯片组经配置以控制例如蜂窝式电话等个人通信装置的各种装置的操作。
本揭示案中描述的技术可实施在通用微处理器、数字信号处理器(DSP)、专用集成电路(ASIC)、现场可编程门阵列(FPGA)、复杂可编程逻辑装置(CPLD)或其它等效逻辑装置内。如果实施在软件中,那么所述技术可实施为例如随机存取存储器(RAM)、只读存储器(ROM)、非易失性随机存取存储器(NVRAM)、电可擦除可编程只读存储器(EEPROM)、快闪存储器等计算机可读媒体上的指令。所述指令促使一个或一个以上处理器执行本揭示案中描述的功能性的某些方面。
作为其它实例,实施例可部分或整体地实施为硬连线电路,实施为制造成专用集成电路的电路配置,或者实施为作为机器可读代码加载到非易失性存储装置中的固件程序,或从数据存储媒体加载或加载到数据存储媒体中的软件程序,所述代码为可由例如微处理器或其它数字信号处理单元等逻辑元件的阵列执行的指令。数据存储媒体可为存储元件阵列,例如半导体存储器(其可包含(不限于)动态或静态RAM、ROM和/或快闪RAM),或铁电、双向开关半导体、聚合物或相变存储器;或者例如磁盘或光盘的圆盘式媒体。
权利要求
1.一种方法包括使用识别数字信号的用于产生相关中间样本的最近输入样本的第一分量、识别中间样本的第二分量和识别所需输出样本与所述中间样本之间的时序差的第三分量来表示所述数字信号的所述所需输出样本与对应输入样本之间的相对时序,其中所述分量的每一者表示为非近似的整数。
2.根据权利要求1所述的方法,其进一步包括根据以下等式更新所述第三分量
其中θ(n-1)是所述第三分量的先前值,dfrac是增量值,fo是所需输出取样频率,且
是返回小于或等于(θ(n-1)+dfrac)/fo的最大整数的地板函数。
3.根据权利要求2所述的方法,其进一步包括根据以下等式计算所述增量值dfrac
其中N是上取样因数,fi是输入取样频率,且
是返回小于或等于
的最大整数的地板函数。
4.根据权利要求2所述的方法,其进一步包括当θ(n-1)+dfrac大于或等于fo时,将与所述第三分量相关联的第一进位值ξfrac(n)设定为1。
5.根据权利要求4所述的方法,其进一步包括根据以下等式更新所述第二分量βm(n)
其中,βm(n-1)是所述第二分量的先前值,且
是返回小于或等于
的最大整数的地板函数。
6.根据权利要求5所述的方法,其进一步包括当所述第二分量大于或等于所述上取样因数N时,将第二进位值设定为1。
7.根据权利要求6所述的方法,其进一步包括当所述第二进位值等于1时,递增所述第一分量。
8.根据权利要求7所述的方法,其中所述第一分量和所述第二分量与第一中间样本相关联,所述方法进一步包括依据所述第一中间样本的所述第一分量和所述第二分量来计算与第二中间样本相关联的第一分量和第二分量。
9.根据权利要求8所述的方法,其进一步包括根据以下等式计算与所述第二中间样本相关联的所述第二分量βk(n)
其中,
是返回小于或等于(βm(n)+1)/N的最大整数的地板函数。
10.根据权利要求9所述的方法,其进一步包括当与所述第二中间样本相关联的所述第二分量大于或等于所述上取样因数N时,将第三进位值设定为1。
11.根据权利要求10所述的方法,其进一步包括当所述第三进位值等于1时,递增与所述第二中间样本相关联的所述第一分量。
12.根据权利要求8所述的方法,其中所述第一中间样本包括先前中间样本,且所述第二中间样本包括下一中间样本。
13.根据权利要求8所述的方法,其中所述第一中间样本包括下一中间样本,且所述第二中间样本包括先前中间样本。
14.根据权利要求2所述的方法,其进一步包括
使用等式θ(n)/fo计算内插系数;以及
依据所述内插系数执行内插以获得所述所需输出样本。
15.根据权利要求13所述的方法,其进一步包括
预先计算1/fo;以及
将质量因数设定为等于d+k,其中k是使得2k<fo的最大正数,且d是用于将1/fo表示为固定点数字的位的数目。
16.一种设备,其包括相位跟踪模块,所述相位跟踪模块使用识别数字信号的用于产生相关中间样本的最近输入样本的第一分量、识别中间样本的第二分量和识别所需输出样本与所述中间样本之间的时序差的第三分量来表示所述数字信号的所述所需输出样本与对应输入样本之间的相对时序,其中所述分量的每一者表示为非近似的整数。
17.根据权利要求16所述的设备,其中所述相位跟踪模块根据以下等式更新所述第三分量
其中θ(n-1)是所述第三分量的先前值,dfrac是增量值,fo是所需输出取样频率,且
是返回小于或等于(θ(n-1)+dfrac)/fo的最大整数的地板函数。
18.根据权利要求17所述的设备,其中所述相位跟踪模块根据以下等式计算所述增量值dfrac
其中N是上取样因数,fi是输入取样频率,且
是返回小于或等于
的最大整数的地板函数。
19.根据权利要求17所述的设备,其中当θ(n-1)+dfrac大于或等于fo时,所述相位跟踪模块将与所述第三分量相关联的第一进位值ξfrac(n)设定为1。
20.根据权利要求19所述的设备,其中所述相位跟踪模块根据以下等式更新所述第二分量βm(n)
其中,βm(n-1)是所述第二分量的先前值,且
是返回小于或等于
的最大整数的地板函数。
21.根据权利要求20所述的设备,其中当所述第二分量大于或等于所述上取样因数N时,所述相位跟踪模块将第二进位值设定为1。
22.根据权利要求21所述的设备,其中当所述第二进位值等于1时,所述相位跟踪模块递增所述第一分量。
23.根据权利要求22所述的设备,其中所述第一分量和所述第二分量与第一中间样本相关联,所述方法进一步包括依据所述第一中间样本的所述第一分量和所述第二分量来计算与第二中间样本相关联的第一分量和第二分量。
24.根据权利要求23所述的设备,其中所述相位跟踪模块根据以下等式计算与所述第二中间样本相关联的所述第二分量βk(n)
其中
是返回小于或等于(βm(n)+1)/N的最大整数的地板函数。
25.根据权利要求24所述的设备,其中当与所述第二中间样本相关联的所述第二分量大于或等于所述上取样因数N时,所述相位跟踪模块将第三进位值设定为1。
26.根据权利要求25所述的设备,其中当所述第三进位值等于1时,所述相位跟踪模块递增与所述第二中间样本相关联的第一分量。
27.根据权利要求23所述的设备,其中所述第一中间样本包括先前中间样本,且所述第二中间样本包括下一中间样本。
28.根据权利要求23所述的设备,其中所述第一中间样本包括下一中间样本,且所述第二中间样本包括先前中间样本。
29.根据权利要求19所述的设备,其进一步包括内插模块,所述内插模块使用等式θ(n)/fo计算内插系数并依据所述内插系数执行内插以获得所述所需输出样本。
30.根据权利要求29所述的设备,其中下取样模块预先计算1/fo,并将质量因数设定为等于d+k,其中k是使得2k<fo的最大正数,且d是用于将1/fo表示为固定点数字的位的数目。
31.一种计算机可读媒体,其包括指令,所述指令在执行时促使处理器使用识别数字信号的用于产生相关中间样本的最近输入样本的第一分量、识别中间样本的第二分量,和识别所需输出样本与所述中间样本之间的时序差的第三分量,来表示所述数字信号的所述所需输出样本与对应输入样本之间的相对时序,其中所述分量的每一者表示为非近似的整数。
32.根据权利要求31所述的计算机可读媒体,其进一步包括指令,所述指令在执行时促使所述处理器
根据以下等式更新所述第三分量
其中θ(n-1)是所述第三分量的先前值,dfrac是增量值,fo是所需输出取样频率,且
是返回小于或等于(θ(n-1)+dfrac)/fo的最大整数的地板函数;以及
当θ(n-1)+dfrac大于或等于fo时,将与所述第三分量相关联的第一进位值ξfrac(n)设定为1。
33.根据权利要求32所述的计算机可读媒体,其进一步包括指令,所述指令在执行时促使所述处理器根据以下等式计算所述增量值dfrac
其中N是上取样因数,fi是输入取样频率,且
是返回小于或等于
的最大整数的地板函数。
34.根据权利要求32所述的计算机可读媒体,其进一步包括指令,所述指令在执行时促使所述处理器
根据以下等式更新所述第二分量βm(n)
其中βm(n-1)是所述第二分量的先前值,且
是返回小于或等于
的最大整数的地板函数;
当所述第二分量大于或等于所述上取样因数N时,将第二进位值设定为1;以及
当所述第二进位值等于1时,递增所述第一分量。
35.根据权利要求34所述的计算机可读媒体,其中所述第一分量和所述第二分量与第一中间样本相关联,所述计算机可读媒体进一步包括指令,所述指令在执行时促使所述处理器
根据以下等式更新与第二中间样本相关联的第二分量βk(n)
其中
是返回小于或等于(βm(n)+1)/N的最大整数的地板函数;
当与所述第二中间样本相关联的所述第二分量大于或等于所述上取样因数N时,将第三进位值设定为1;以及
当与所述第二分量相关联的所述第三进位值等于1时,递增与所述第二中间样本相关联的所述第一分量。
36.根据权利要求35所述的计算机可读媒体,其中所述第一中间样本包括先前中间样本,且所述第二中间样本包括下一中间样本。
37.根据权利要求35所述的计算机可读媒体,其中所述第一中间样本包括下一中间样本,且所述第二中间样本包括先前中间样本。
全文摘要
一般来说,本揭示案描述用于改变数字信号的取样频率的技术。明确地说,所述技术提供一种使用所需输出样本与对应输入样本之间的相对时序的非近似的整数表示来确定所述相对时序的较准确方式。可使用识别所述数字信号的用于产生中间样本的最近输入样本的第一分量、识别中间样本的第二分量和识别所述所需输出样本与所述中间样本之间的时序差的第三分量来表示所述所需输出样本与对应输入样本之间的所述相对时序。可使用非近似的整数值以递归方式更新所述分量的每一者。
文档编号H03H17/06GK101467350SQ200780021774
公开日2009年6月24日 申请日期2007年5月31日 优先权日2006年6月14日
发明者松 王, 埃迪·L·T·乔伊, 萨米尔·库马尔·古普塔 申请人:高通股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1