新四季網

用於dsp解碼的相位計算方法

2023-06-28 04:54:46


專利名稱::用於dsp解碼的相位計算方法
技術領域:
:本發明涉及一種相位計算方法,特別是一種用於DSP解碼的相位計算方法。
背景技術:
:CORDIC(CoordinateRotationsDigitalComputer)算法被廣泛應用於數位訊號處理(DigitalSignalProcessor,DSP)算法的硬體實現中。在收音機的立體聲處理流程中,當經頻率調製(FM,FrequencyModulation)的立體聲中頻信號被採樣後,即輸入至DSP晶片進行解碼。在DSP解碼過程中,相位計算將佔用較多的時鐘周期。相位計算即是由兩路信號(I和Q)進行反三角函數計算,計算得出其相應相位。目前,所述相位計算皆採用CORDIC算法,CORDIC算法由J.Voider於1959年提出,首先用於導航系統,使得矢量的旋轉和定向運算不需要做查三角函數表、乘法、開方及反三角函數等複雜運算。CORDIC算法的核心思想是通過將一個複數與一常數序列相乘,以達到旋轉該複數相位的目的。而為了用移位代替乘法,CORDIC算法一般選擇的常數序列為2的整數冪序列。CORDIC算法常用旋轉模式,而正餘弦計算則採用旋轉模式。所述旋轉模式是將某向量旋轉一個角度,具體公式(公式(l))與結果(公式(2))分別是formulaseeoriginaldocumentpage4formulaseeoriginaldocumentpage4當Zi〈0時,di二-l,否則d^formulaseeoriginaldocumentpage4l,以及公式(2)上述CORDIC算法的缺點是當提高相位計算精度時,相位的計算速度即會極大地下降。而相位計算的速度將極大地影響DSP的解碼效率。
發明內容有鑑於此,本發明的目的在於提供兩種用於DSP解碼的相位計算方法,使相位的計算速度和計算精度都得到極大的提升。本發明是通過以下技術方案實現的—種用於DSP解碼的相位計算方法,包括以下步驟A)設置查表分段數L的值,製作區域的反正切表,並生成待查表的表格table[L+l];。進一步地,所述步驟B)後進一步包括步驟C)、將坐標區域[_,]分為其他七個區域的相位映射到區域,計算相應區域的相位。進一步地,所述步驟A)的生成待查表的表格table[L+l]的公式是區=(int){0.5+}其中,L為查表分段數,i為0,1,2,3...L。進一步地,所述八個區域是、(Ji/4,Ji/2)、(Ji/2,Ji3/4)、[Ji3/4,ji]、ji3/4)、(-Ji3/4,-Ji/2)、[-Ji/2,-Ji/4]、[-Ji/4,0]。進一步地,計算b/4,ji/2)的相位的公式是6>=^—";2計算(ji/2,ji3/4)的相位的公式是+計算[n3/4,]的相位的公式是eji_a;=_ji+a計算(-,-3/4)的相位的公式是e=計算(13/4,1/2)的相位的公式是^=—計算[1/2,1/4]的相位的公式是6>=—計算[_^/4,0]的相位的公式是e=-a,其中,a為的相位。進一步地,所述步驟B)的計算索引的公式是"'WfiferP丄,其中,X為待計算相的點的右位區域的反正切表,並生成待查表的表格+1];B)、計算索引index,查表得到相位值table[index];BC)、查表得到第一相位值table[index]和第二相位值table[index+1],計算第位值。進一步地,所述步驟BC)後進一步包括步驟C)、將坐標區域,Ji]分為八個區其他七個區域的相位映射到區域,計算相應區域的相位。進一步地,所述步驟A)的生成待查表的表格table[L+l]的公式是其中,L為查表分段數,i為0,1,2,3...L。進一步地,所述八個區域是、(ji/4,ji/2)、(ji/2,ji3/4)、[ji3/4,ji]、^6/e|>]二(int){0.5+},(i,-ji3/4)、(-Ji3/4,-Ji/2)、[-Ji/2,-Ji/4]、[-Ji/4,0]。進一步地,計算U/4,ji/2)的相位的公式是計算(ji/2,ji3/4)的相位的公式是+計算[n3/4,]的相位的公式是e=ji-a;計算(-Ji,-Ji3/4)的相位的公式是9=-Ji+a計算(-Ji3/4,-/2)的相位的公式是計算[1/2,i/4]的相位的公式是計算[_^/4,0]的相位的公式是e=-a,其中,a為的相位。進一步地,所述步驟B)的計算索引的公式是/W6/eX=,其中,X為待計算相位的點的橫坐標,Y為待計算相位的點的縱坐標,L為查表分段數。進一步地,所述步驟BC)的計算第三相位值的公式是surplus=Y*L-index*X,[o酬=++,其中,X為待計算相位的點的橫坐標,Y為待計算相位的點的縱坐標,L為查表分段數,index是索引,table是待查表的表格。進一步地,所述查表分段數是自然數。進一步地,所述查表分段數是2的n次冪,其中,n是整數。本發明的相位計算方法是不帶插值查表法和帶插值查表法,使相位的計算速度和計算精度都得到極大的提升。一次相位計算,不帶插值查表法和帶插值查表法佔用的時鐘周期約為CORDIC算法的一半。本發明的帶插值查表法的計算誤差呈規則分布並且足夠小。不帶插值查表法在查表分段數較大的情況下,計算誤差也能達到足夠小。圖1是點(X,Y)的相位示意圖。圖2是Atan9/A9-A9的曲線圖。圖3是tan9的坐標分區域圖。具體實施例方式請參閱圖l,本發明的相位計算方法即是已知任一點的坐標(X,Y),計算該點的相位e的方法。相位的計算可以使用查表法。查表法分為不帶插值查表法和帶插值查表法。以下對上述兩種方法的原理、步驟和計算結果進行描述和對比。請參閱圖2,圖2的橫坐標是A9,縱坐標是Atane/Ae。在範圍內,Atan9/A9為單調增加。當A9"0時,A9"Atan9;當A9"ji/4時,Atan9/A9"2。對於不帶插值查表法,由於介於兩個關鍵點之間的任意點的函數值需用兩個關鍵點中的某個點的函數值近似,因此,參閱圖2可知,當A9"Ji/4時,函數的斜率最大,點誤差也最大。如果將0Ji/4分為L段,L可為任意自然數。但為利於DSP處理,兼顧計算精度和佔用存儲器容量,一般將L取值為2的n次冪,即查表分段數L=1,2,4,8,16,32,64,128,256,512,1024,...。表長為L+l,表中值分別為f(0),f(1),f(2),...f(L-l),f(L),則不帶插值查表法的誤差的計算公式見公式(3):,]f(L");f(L-2)公式(3)error=z因此,不帶插值查表法的最大誤差的計算公式見公式(4):^TOrmax=4承^l公式(4)由此可見,不帶插值查表法的最大誤差和查表分段數L成反比,查表分段數L越小,最大誤差越大。不帶插值查表法的計算步驟如下A)設置查表分段數L的值,製作區域的atan(反正切)表,並生成待查表的表格(table表);根據公式(5),製作待查表的表格/"6/e[)Xint)(0.5+;索引index的計算公式(6)如下z7(iex二"^公式(6)其中,X為待計算相位的點的橫坐標,Y為待計算相位的點的縱坐標,L為查表分段上述步驟A)、B)是在區域計算相位。因此,查表所得相位值phase是/4]上的相位。C)、將坐標區域,Ji]分為八個區域,將其他七個區域的相位映射到區域、(ji/4,ji/2)、(ji/2,Ji3/4)、[Ji3/4,ji]、(-ji,-ji3/4)、(-ji3/4,-ji/2)、[-ji/2,-ji/4]、[-ji/4,0]。由於查表區域在區域l[O,Ji/4],其他七個區域的角度需映射到區域1後,再進行查表。上述分法的優點在於(1)查表分段數可設置為較小值;(2)由tan值的單調性可知,在範圍內誤差比較小。如區域1的相位(角度)為a=phase,可通過以下的公式計算其他七個區域相應的相位(角度)e:區域2(ji/4,/2),角度(9=7—a;計算最終的相位值:surplus=ji_aji+a區域3(ji/2,^13/4),角度區域7[-ji/2,-ji/4],角度<9=+區域8[-ji/4,0],角度e=-a。當然,如果待計算相位的坐標點本身即位於區域1,則不需執行步驟C)。帶插值查表法的計算方法在上述步驟B)、C)之間,添加如下步驟BC)、查表得到相位值table[index]和table[index+1],根據公式(7)和公式(8)Y承L一index承X公式(7)//zose=勵/e卩"flfexJ+^-^-^--^-^——公式(8)由上可知,帶插值查表法與不帶插值查表法相比,添加步驟BC)。以下列舉一具體實施例,對本發明作進一步闡述。本具體實施例以coolFlux的DSP為硬體基礎,作計算仿真。由於DSP計算仿真是定點處理,為減小誤差,將n/2設置為2097152作為基準。當然,Ji/2也可以設置為其它任意值,本具體實施例並不限於此值。現假設某一點的坐標值X=1000,Y=368,求其相位,具體的計算方法如下Al)、設置查表分段數L=16,根據力、表1A、式(5)製作待查表的表格,見表1;i=0i=1i=2i=3i=4i=5083335166025247456327068404378i=6i=7i=8i=9i=10i=11478991550604619011684085745779804107i=12i=13i=14i=15i=1685913191095395970210055241048576如表1所示,0、83335、166025、247456、327068、404378、478991、550604、619011、684085、745779、804107、859131、910953、959702、1005524、1048576分別為i=0、1、2、3、4、85、6、7、8、9、10、11、12、13、14、15、16時的待查表的值。Bi)、計算索引/w/ex二^^=(368x16)/1000=5,查表得到相位值phase=table[index]=table[5]=404378;404378即為不帶插值查表法所得的相位值。對於帶插值查表法,繼續執行步驟BC1)、surplus=Y*L_index*X=368*16-5女1000=888;一置=+(勵地"^X+1]-^地"fe])^"/M=table[5]+[(table問畫table問)*surplus]/1000=404378+[(478991-404378)*888]/1000=470634。由於X二1000,Y=368,點(X,Y)位於區域l[O,/4],因此,不需再執行步驟C)。相位的實際精確值為470778,帶插值查表法與不帶插值查表法相比,精度要高得多。在本具體實施例中,查表分段數L二16,不帶插值查表法可以將查表分段數L的值設置得足夠大,以減小誤差。但L值越大,佔用的存儲容量越大,相位的計算速度也會隨之下降。由此可見,帶插值查表法在L較小的情況下,仍能保持較高的精度。另外,再列舉一些測試值,對比CORDIC算法、不帶插值查表法和帶插值查表法的優劣性。表2為CORDIC算法的仿真結果;表3為不帶插值查表法的仿真結果;表4為帶插值查表法的仿真結果。其中,X,Y分別表示所求相位的輸入橫坐標X、縱坐標Y;期望值為相位的實際精確值;MIPS為仿真計算所需的機器語言指令數;仿真值為仿真結果;A為仿真誤差。表2C0RDIC算法的仿真結果XY期望值CORDICMIPS仿真值A100010001048576208104844812810242030147341421314726407741004310316793672121681280191320301024623737216623744310310044177852154158721913-20301024357056621935697927749表3不帶插值查表法的仿真結果tableseeoriginaldocumentpage10表4帶插值查表法的仿真結果tableseeoriginaldocumentpage10由表2、表3和表4可知,查表法與CORDIC算法相比,仿真計算所需的機器語言指令數MIPS要少得多。帶插值查表法與不帶插值查表法相比,仿真計算所需的MIPS稍多(增加步驟E)),但計算精度可以達到足夠高。綜合比較,帶插值查表法使相位的計算速度和計算精度都得到極大的提升。另夕卜,由於查表分段數L可以設置為任意值,當然,可以減小至256,128,...16,8,4,2,1。對於不帶插值查表法,當L=16時,誤差A為208,當表L=8時,A為1317,誤差太大。因此,當L值較小時,不建議使用該方法。本發明的查表法可應用於FM立體聲處理中。在軟體解碼器中,相位計算即是由兩路信號(I和Q)進行反三角函數計算,計算得出其相應相位。相位計算的速度將極大地影響DSP的解碼效率。FM立體聲處理中的I和Q對應於公式和表中的X和Y,也即是橫坐標X和縱坐標Y。當然,本發明並不限於FM立體聲處理,還可以用於其它需進行相位計算的應用中。以上介紹的僅僅是基於本發明的較佳實施例,並不能以此來限定本發明的範圍。任何對本發明實施步驟作本
技術領域:
內熟知的等同改變或替換均不超出本發明的揭露以及保護範圍。權利要求一種用於DSP解碼的相位計算方法,其特徵在於,包括以下步驟A)設置查表分段數L的值,製作區域的反正切表,並生成待查表的表格table[L+1];B)、計算索引index,查表得到相位值table[index]。2.如權利要求1所述的用於DSP解碼的相位計算方法,其特徵在於,所述步驟B)後進一步包括步驟C)、將坐標區域,Ji]分為八個區域,將其他七個區域的相位映射到區域,計算相應區域的相位。3.如權利要求1所述的用於DSP解碼的相位計算方法,其特徵在於,所述步驟A)的生成待查表的表格table[L+l]的公式是=(int){0.5+},其中,L為查表分段數,i為0,1,2,3...L。4.如權利要求2所述的用於DSP解碼的相位計算方法,其特徵在於,所述八個區域是、(Ji/4,Ji/2)、(Ji/2,Ji3/4)、[Ji3/4,ji]、(_ji,_ji3/4)、(_ji3/4,_ji/2)、[_ji/2,_ji/4]、[_ji/4,0]。5.如權利要求4所述的用於DSP解碼的相位計算方法,其特徵在於,計算(ji/4,的相位的公式是計算(ji/2,ji3/4)的相位的公式是^^f+計算^3/4,ji]的相位的公式是e=ji-a;計算(-ji,-ji3/4)的相位的公式是9=-ji+a;十算(i3/4,i/2)的相位的公式是6>=-3—":十算[1/2,1/4]的相位的公式是夕=一|+";計算[-^/4,0]的相位的公式是9=-a,其中,a為的相位。6.如權利要求1所述的用於DSP解碼的相位計算方法,其特徵在於,所述步驟B)的計算索引的公式是/m/ex二^^,其中,X為待計算相位的點的橫坐標,Y為待計算相位的點的縱坐標,L為查表分段數。7.如權利要求1-6中的任一權利要求所述的用於DSP解碼的相位計算方法,其特徵在於,所述查表分段數是自然數。8.如權利要求7所述的用於DSP解碼的相位計算方法,其特徵在於,所述查表分段數是2的n次冪,其中,n是整數。9.一種用於DSP解碼的相位計算方法,其特徵在於,包括以下步驟A)設置查表分段數L的值,製作區域的反正切表,並生成待查表的表格table[L+l];B)、計算索引index,查表得到相位值table[index];BC)、查表得到第一相位值table[index]和第二相位值table[index+1],計算第三相位值。10.如權利要求9所述的用於DSP解碼的相位計算方法,其特徵在於,所述步驟BC)後進一步包括步驟C)、將坐標區域,Ji]分為八個區域,將其他七個區域的相位映射到區域,計算相應區域的相位。11.如權利要求9所述的用於DSP解碼的相位計算方法,其特徵在於,所述步驟A)的生成待查表的表格table[L+l]的公式是=(int){0.5+[OjcI00000*atan(;)*1]},其中,L為查表分段數,i為0,1,2,3...L。12.如權利要求IO所述的用於DSP解碼的相位計算方法,其特徵在於,所述八個區域是、(Ji/4,Ji/2)、(Ji/2,Ji3/4)、[Ji3/4,ji]、(_ji,_ji3/4)、(_ji3/4,_ji/2)、[_ji/2,_ji/4]、[_ji/4,0]。13.如權利要求12所述的用於DSP解碼的相位計算方法,其特徵在於,計算(ji/4,的相位的公式是6i=*-a;計算(ji/2,ji3/4)的相位的公式是+計算^3/4,ji]的相位的公式是e=ji-a;計算(-ji,-ji3/4)的相位的公式是9=-ji+a;計算(i3/4,i/2)的相位的公式是計算[i/2,i/4]的相位的公式是計算[-^/4,0]的相位的公式是e=-a,其中,a為的相位。14.如權利要求9所述的用於DSP解碼的相位計算方法,其特徵在於,所述步驟B)的計算索引的公式是/mfex=^^,其中,X為待計算相位的點的橫坐標,Y為待計算相位的點的縱坐標,L為查表分段數。15.如權利要求9所述的用於DSP解碼的相位計算方法,其特徵在於,所述步驟BC)的計算第三相位值的公式是surplus=Y*L-index*X,^聽=^衝"^]+(勵地"^+1]—"啡"^])承,一其中,x為待計算相位的點的橫坐標,Y為待計算相位的點的縱坐標,L為查表分段數,index是索引,table是待查表的表格。16.如權利要求8-15中的任一權利要求所述的用於DSP解碼的相位計算方法,其特徵在於,所述查表分段數是自然數。17.如權利要求16所述的用於DSP解碼的相位計算方法,其特徵在於,所述查表分段數是2的n次冪,其中,n是整數。全文摘要本發明公開了兩種用於DSP解碼的相位計算方法,其特徵在於,包括以下步驟A)設置查表分段數L的值,製作區域的反正切表,並生成待查表的表格table[L+1];B)計算索引index,查表得到相位值table[index]等。本發明的相位計算方法佔用的時鐘周期約為CORDIC算法的一半,計算誤差呈規則分布並且足夠小。文檔編號G06F1/03GK101751065SQ200810203840公開日2010年6月23日申請日期2008年12月2日優先權日2008年12月2日發明者丁柯,姚峰,徐芳菲,蕭紹侯,顧麗娟申請人:無錫華潤矽科微電子有限公司

同类文章

一種新型多功能組合攝影箱的製作方法

一種新型多功能組合攝影箱的製作方法【專利摘要】本實用新型公開了一種新型多功能組合攝影箱,包括敞開式箱體和前攝影蓋,在箱體頂部設有移動式光源盒,在箱體底部設有LED脫影板,LED脫影板放置在底板上;移動式光源盒包括上蓋,上蓋內設有光源,上蓋部設有磨沙透光片,磨沙透光片將光源封閉在上蓋內;所述LED脫影

壓縮模式圖樣重疊檢測方法與裝置與流程

本發明涉及通信領域,特別涉及一種壓縮模式圖樣重疊檢測方法與裝置。背景技術:在寬帶碼分多址(WCDMA,WidebandCodeDivisionMultipleAccess)系統頻分復用(FDD,FrequencyDivisionDuplex)模式下,為了進行異頻硬切換、FDD到時分復用(TDD,Ti

個性化檯曆的製作方法

專利名稱::個性化檯曆的製作方法技術領域::本實用新型涉及一種檯曆,尤其涉及一種既顯示月曆、又能插入照片的個性化檯曆,屬於生活文化藝術用品領域。背景技術::公知的立式檯曆每頁皆由月曆和畫面兩部分構成,這兩部分都是事先印刷好,固定而不能更換的。畫面或為風景,或為模特、明星。功能單一局限性較大。特別是畫

一種實現縮放的視頻解碼方法

專利名稱:一種實現縮放的視頻解碼方法技術領域:本發明涉及視頻信號處理領域,特別是一種實現縮放的視頻解碼方法。背景技術: Mpeg標準是由運動圖像專家組(Moving Picture Expert Group,MPEG)開發的用於視頻和音頻壓縮的一系列演進的標準。按照Mpeg標準,視頻圖像壓縮編碼後包

基於加熱模壓的纖維增強PBT複合材料成型工藝的製作方法

本發明涉及一種基於加熱模壓的纖維增強pbt複合材料成型工藝。背景技術:熱塑性複合材料與傳統熱固性複合材料相比其具有較好的韌性和抗衝擊性能,此外其還具有可回收利用等優點。熱塑性塑料在液態時流動能力差,使得其與纖維結合浸潤困難。環狀對苯二甲酸丁二醇酯(cbt)是一種環狀預聚物,該材料力學性能差不適合做纖

一種pe滾塑儲槽的製作方法

專利名稱:一種pe滾塑儲槽的製作方法技術領域:一種PE滾塑儲槽一、 技術領域 本實用新型涉及一種PE滾塑儲槽,主要用於化工、染料、醫藥、農藥、冶金、稀土、機械、電子、電力、環保、紡織、釀造、釀造、食品、給水、排水等行業儲存液體使用。二、 背景技術 目前,化工液體耐腐蝕貯運設備,普遍使用傳統的玻璃鋼容

釘的製作方法

專利名稱:釘的製作方法技術領域:本實用新型涉及一種釘,尤其涉及一種可提供方便拔除的鐵(鋼)釘。背景技術:考慮到廢木材回收後再加工利用作業的方便性與安全性,根據環保規定,廢木材的回收是必須將釘於廢木材上的鐵(鋼)釘拔除。如圖1、圖2所示,目前用以釘入木材的鐵(鋼)釘10主要是在一釘體11的一端形成一尖

直流氧噴裝置的製作方法

專利名稱:直流氧噴裝置的製作方法技術領域:本實用新型涉及ー種醫療器械,具體地說是ー種直流氧噴裝置。背景技術:臨床上的放療過程極易造成患者的局部皮膚損傷和炎症,被稱為「放射性皮炎」。目前對於放射性皮炎的主要治療措施是塗抹藥膏,而放射性皮炎患者多伴有局部疼痛,對於止痛,多是通過ロ服或靜脈注射進行止痛治療

新型熱網閥門操作手輪的製作方法

專利名稱:新型熱網閥門操作手輪的製作方法技術領域:新型熱網閥門操作手輪技術領域:本實用新型涉及一種新型熱網閥門操作手輪,屬於機械領域。背景技術::閥門作為流體控制裝置應用廣泛,手輪傳動的閥門使用比例佔90%以上。國家標準中提及手輪所起作用為傳動功能,不作為閥門的運輸、起吊裝置,不承受軸向力。現有閥門

用來自動讀取管狀容器所載識別碼的裝置的製作方法

專利名稱:用來自動讀取管狀容器所載識別碼的裝置的製作方法背景技術:1-本發明所屬領域本發明涉及一種用來自動讀取管狀容器所載識別碼的裝置,其中的管狀容器被放在循環於配送鏈上的文檔匣或託架裝置中。本發明特別適用於,然而並非僅僅專用於,對引入自動分析系統的血液樣本試管之類的自動識別。本發明還涉及專為實現讀