本發(fā)明涉及一種解碼模塊,尤指一種利用多條曲線實施對數(shù)方程式計算的解碼模塊。
背景技術:
在一無線通信系統(tǒng)的無線通道傳送無線信號時,無線信號可能會在通過無線通道的過程中遭受頻率及時間選擇性衰落衰退,從而導致信號失真。為了降低無線通道所造成的影響,無線通信系統(tǒng)中一傳送器會預先對傳輸數(shù)據(jù)進行編碼(encoding)、調(diào)制(modulating)、交錯(interleaving)等程序,再透過無線方式進行傳輸。如此一來,于無線通信系統(tǒng)中一接收器接收無線信號時,接收器即可利用接收到的無線信號進行通道估測(channelestimation)、解調(diào)(demodulating)、錯誤更正解碼(errorcorrectiondecoding,eccdecoding)等程序,以回復受損的接收信號。
典型接收器包含一通道估測器及一錯誤更正解碼器。通道估測器用來估測通道響應(channelresponse)以回復接收信號相位及振幅的失真,而錯誤更正解碼器則根據(jù)一錯誤更正碼,校正接收信號中決策錯誤的位元。常用的錯誤更正碼有回旋碼(convolutionalcode)、低密度奇偶校驗碼(lowdensityparitycheckcode,ldpc)及渦輪碼(turbocode)等等。由于渦輪碼已被證實可接近傳輸理論的謝農(nóng)極限(shannonlimit),因此近年來渦輪碼被廣泛地使用在衛(wèi)星通信、數(shù)位影像傳輸以及第三代合作伙伴計畫(3gpp)長程演進計畫(longtermevolution,lte)中。
然而,在進行渦輪碼的解碼程序時,錯誤更正解碼器可能需要實施對數(shù)(logarithm)方程式的計算。計算對數(shù)方程式造成渦輪碼的解碼程序復雜度大幅上升,從而影響接收器的解碼效能。因此,如何以簡潔的方式來計算對數(shù)方程式便成為業(yè)界亟欲探討的議題。
技術實現(xiàn)要素:
為了解決上述的問題,本發(fā)明提供一種利用多條曲線實施對數(shù)方程式計算的解碼模塊。
在一方面,本發(fā)明揭示一種解碼模塊,用于一通信裝置。該通信裝置接收一輸入信號并根據(jù)該輸入信號中一數(shù)據(jù)位元、對應于該數(shù)據(jù)位元的一第一檢查位元及一第二檢查位元產(chǎn)生一第一參數(shù)及一第二參數(shù)。該解碼模塊包含有一第一計算單元,用來輸出該第一參數(shù)與該第二參數(shù)中具有最大數(shù)值者作為一第一輸出參數(shù);一第一算術單元,用來計算一第三參數(shù)與一第一斜率相乘的一第一乘積,及計算一第一常數(shù)與該第一乘積間的一第一差值;一第二算術單元,用來計算該第三參數(shù)與一第二斜率相乘的一第二乘積,及一第二常數(shù)與該第二乘積間的一第二差值;一第二計算單元,從一第三常數(shù)、該第一差值及該第二差值中取具有最大數(shù)值者,并產(chǎn)生一第二輸出參數(shù),其中該第三常數(shù)為零;以及一加法單元,用來累加該第一輸出參數(shù)及一第二輸出參數(shù),以產(chǎn)生一輸出資訊;其中該通信裝置根據(jù)該輸出資訊,決定該數(shù)據(jù)位元。
在另一方面,本發(fā)明揭示露一種解碼模塊,用于一通信裝置。該通信裝置接收一輸入信號并根據(jù)該輸入信號中一數(shù)據(jù)位元、對應于該數(shù)據(jù)位元的一第一檢查位元及一第二檢查位元產(chǎn)生一第一參數(shù)及一第二參數(shù)。該解碼模塊包含有一第一計算單元,用來輸出該第一參數(shù)與該第二參數(shù)中具有最大數(shù)值者作為一第一輸出參數(shù);一第一算術單元,用來計算一第三參數(shù)代入一第一曲線函數(shù)所取得的一第一數(shù)值;一第二算術單元,用來計算該第三參數(shù)代入一第二曲線函數(shù)所取得的一第二數(shù)值;一第二計算單元,從一常數(shù)、該第一數(shù)值及該第二數(shù)值中取具有最大數(shù)值者,并產(chǎn)生一第二輸出參數(shù),其中該常數(shù)為零;以及一加法單元,用來累加該第一輸出參數(shù)及一第二輸出參數(shù),以產(chǎn)生一輸出資訊;其中該通信裝置根據(jù)該輸出資訊,決定該數(shù)據(jù)位元;其中該第一曲線函數(shù)及該第二曲線函數(shù)為n次函數(shù)且n大于等于1。
附圖說明
圖1為本發(fā)明實施例一解碼裝置的示意圖。
圖2為本發(fā)明實施例中對數(shù)曲線與直線間關系的示意圖。
圖3為本發(fā)明實施例一解碼模塊的示意圖。
圖4為本發(fā)明實施例一計算單元的示意圖。
圖5為本發(fā)明實施例一解碼模塊的示意圖。
圖6為本發(fā)明實施例一解碼模塊的示意圖。
符號說明
10解碼裝置
30、50、60解碼模塊
300、306、40、500、506計算單元
302、304、502、504、600算術單元
308乘法單元
310、508加法單元
312、316、510、514、602乘法器
314、318、512、516、604加法器
400比較器
402多工器
ari1、ari2算術模塊
a、b、d、d參數(shù)
c1、c2、o1~o3常數(shù)項
dei1、dei2解交織器
int1、int2交織器
llr(ui)、llr(p)、llr(q)輸入資訊
llr1(ui)、llr2(ui)、llr1e(ui)、ll外部資訊
llr_p1(ui)、llr_p2(ui)事前資訊
m1~m3斜率
out輸出資訊
p、q檢查位元
siso1、siso2軟式輸入輸出解碼模塊
ui數(shù)據(jù)位元
具體實施方式
請參考圖1,圖1為本發(fā)明實施例中一解碼裝置10的示意圖。解碼裝置10用于一通信系統(tǒng)的渦輪碼(turbocode)解碼器,用來產(chǎn)生用于判斷數(shù)據(jù)位元ui的輸出資訊out。如第1圖所示,解碼裝置10包含有軟式輸入輸出(soft-insoft-out,siso)解碼模塊siso1、siso2、算術模塊ari1、ari2、交織器(interleaver)int1、int2及解交織器(de-interleaver)dei1、dei2。解碼裝置10具有3個輸入資訊llr(ui)、llr(p)及l(fā)lr(q),其中p、q為數(shù)據(jù)位元ui的檢查位元且llr(ui)、llr(p)及l(fā)lr(q)分別為數(shù)據(jù)位元ui、檢查位元p、q的對數(shù)概似比(log-likelihoodratio,llr)。軟式輸入輸出解碼模塊siso1用來根據(jù)輸入資訊llr(ui)、llr(p)及事前資訊llr_p1(ui),產(chǎn)生外部資訊llr1(ui)。算術單元ari1將外部資訊llr1(ui)減去輸入資訊llr(ui)及事前資訊llr_p1(ui)后,產(chǎn)生外部資訊llr1e(ui)至交織器int1,以使交織器int1重新排列外部資訊llr1e(ui)來產(chǎn)生輸出至軟式輸入輸出解碼模塊siso2的事前資訊llr_p2(ui)。相似地,軟式輸入輸出解碼模塊siso2根據(jù)交織后的輸入資訊llr(ui)及輸入資訊llr(q)及事前資訊llr_p2(ui),產(chǎn)生外部資訊llr2(ui)。算術單元ari2將外部資訊llr2(ui)減去交織后的輸入資訊llr(ui)及事前資訊llr_p2(ui)后,產(chǎn)生外部資訊llr2e(ui)至解交織器dei1,以使解交織器dei1重新排列外部資訊llr2e(ui)來產(chǎn)生輸出至軟式輸入輸出解碼模塊siso1的事前資訊llr_p1(ui)。透過重復上述遞回式解碼程序,解碼裝置10可產(chǎn)生可靠的軟式輸出資訊out。如此一來,通信系統(tǒng)即可根據(jù)輸出資訊out,決定數(shù)據(jù)位元ui的值。
為了進行遞回式解碼程序,解碼裝置10必須具有計算對數(shù)的功能。舉例來說,于計算對數(shù)概似比時,軟式輸入輸出解碼模塊siso1、siso2需要計算下列方程式:
ln(ea+eb)(1)
其中,于軟式輸入輸出解碼模塊siso1中,參數(shù)a、b可為依據(jù)輸入資訊llr(ui)、llr(p)與外部資訊llr1(ui)所產(chǎn)生的的數(shù)值,而于軟式輸入輸出解碼模塊siso2中,參數(shù)a、b可為依據(jù)輸入資訊llr(p)、llr(q)與外部資訊llr2(ui)所產(chǎn)生的數(shù)值。方程式(1)可被化簡為:
ln(ea+eb)=max(a,b)+llrscale*ln(1+e-d)(2)
其中,
l1:y=0(3)
l2:y=o1-m1*d(4)
l3:y=o2-m2*d(5)
其中,(-m1)、(-m2)分別為直線l2、l3的斜率,o1、o2則分別為直線l2、l3的常數(shù)項。在一實施例中,常數(shù)項o1、o2及斜率(-m1)、(-m2)可利用最小平方法取得。如圖2所示,此實施例是以直線l1~l3中的最大值來近似ln(1+e-d)的數(shù)值(即
ln(ea+eb)=max(a,b)+llrscale*max(0,o1-m1*d,o2-m2*d)(6)
由方程式(6)可知,藉由利用直線l1~l3來近似ln(1+e-d)的數(shù)值,本發(fā)明實施例可使用簡單的計算程序來完成自然對數(shù)的計算。如此一來,實現(xiàn)計算對數(shù)功能的硬件成本可獲得大幅的下降。
根據(jù)不同應用及設計理念,實現(xiàn)計算對數(shù)功能的硬件可以各式各樣的方式來實現(xiàn)。請參考圖3,圖3為本發(fā)明一解碼模塊30的示意圖。解碼模塊30可用于圖1所示的軟式輸入輸出模塊siso1、siso2中,用來實現(xiàn)對數(shù)計算功能。如圖3所示,解碼模塊30包含有計算單元300、306、算術單元302、304、乘法單元308及加法單元310。計算單元300用來接收參數(shù)a、b,并輸出參數(shù)a、b中具有最大數(shù)值者至加法單元310。算術單元302包含有乘法器312及加法器314,用來計算常數(shù)項o1減去參數(shù)d與斜率m1乘積的值,并將計算結果輸出至計算單元306。其中,參數(shù)
請參考圖4,圖4為本發(fā)明實施例中一計算單元40的示意圖,其中計算單元40可用來實現(xiàn)圖3所示的計算單元300。在圖4中,計算單元40包含有一比較器400及一多工器402。比較器400用來比較輸入?yún)?shù)a、b之數(shù)值大小,并據(jù)以輸出控制信號con至多工器402。根據(jù)控制信號con,多工器402輸出輸入?yún)?shù)a、b中具有最大數(shù)值者。本領域具通常知識者應可依據(jù)圖4所示計算單元40的架構,實現(xiàn)圖3所示的計算單元306,為求簡潔,在此不贅述。
進一步地,方程式(6)可被改寫為:
ln(ea+eb)=max(a,b)+llrscale*max(0,o1-m1*d,o2-m2*d)
=max(a,b)+max(0,llrscale*o1-llrscale*m1*d,llrscale*o2-llrscale*m2*d)
=max(a,b)+max(0,c1-m1*d,c2-m2*d)(7)
其中,c1=llrscale*o1,c2=llrscale*o2,
在方程式(7)中,比例參數(shù)llrscale被整合入max(0,o1-m1*d,o2-m2*d)的計算過程中。由方程式(7)可知,透過改變用來近似ln(1+e-d)參數(shù)的直線函數(shù)的常數(shù)項及變數(shù),計算對數(shù)的過程可被進一步簡化。
請參考圖5,圖5為本發(fā)明實施例中一解碼模塊50的示意圖。解碼模塊50可用于圖1所示的軟式輸入輸出解碼模塊siso1、siso2中,用來實現(xiàn)對數(shù)計算功能。如圖5所示,解碼模塊50包含有計算單元500、506、算術單元502、504及加法單元508。計算單元500用來接收參數(shù)a、b,并輸出參數(shù)a、b中具有最大數(shù)值者至加法單元508。算術單元502包含有乘法器510及加法器512,用來計算常數(shù)項c1減去參數(shù)d與斜率m1乘積的值,并將計算結果輸出至計算單元506。相似地,算術單元504包含有乘法器514及加法器516,用來計算常數(shù)項c2減去參數(shù)d與斜率m2乘積的值,并將計算結果輸出至計算單元506。在此實施例中,由于比例參數(shù)llrscale已并入常數(shù)項c1、c2及參數(shù)d,因此計算單元510可直接輸出所接收到的參數(shù)中具有最大數(shù)值者至加法單元508。加法單元510將所接收到的信號相加后,即可產(chǎn)生方程式(7)的計算結果來實現(xiàn)對數(shù)計算功能。相較于圖3所示的計算單元300,計算單元500節(jié)省了一個乘法器,從而進一步降低實現(xiàn)對數(shù)計算功能的硬件成本。
根據(jù)不同應用及設計理念,本領域具通常知識者針對上述實施例應可據(jù)以實施合適的更動及修改。舉例來說,具有對數(shù)計算功能的解碼模塊30、50不限于應用在渦輪碼解碼器,而可應用于任何需要實現(xiàn)對數(shù)計算功能(如計算事后機率)的運算裝置內(nèi),且不限于此。
在一實施例中,用來近似ln(1+e-d)的直線l1~l3可改為多次方函數(shù)(如n次函數(shù),n大于等于1)所形成的曲線。值得注意的是,直線l1~l3為多次方函數(shù)的次數(shù)為1時的實施例。多次方函數(shù)的系數(shù)可使用多項式擬合法(polynomialfitting)計算取得,且不限于此。在此實施例中,第3圖所示的算術單元302將參數(shù)d代入一曲線函數(shù)cur1,并將所得的一第一數(shù)值輸出至計算單元306。相似地,算術單元304將參數(shù)d代入另一曲線函數(shù)cur2,并將所得的一第二數(shù)值輸出至計算單元306。如此一來,解碼模塊30即可以多條曲線來近似對數(shù)曲線,從而實現(xiàn)對數(shù)計算。
此外,用來近似ln(1+e-d)的直線數(shù)目亦可被合適地調(diào)整。在一實施例中,用來近似ln(1+e-d)的直線數(shù)目由3條更動為4條(如圖2所示的直線l1~l3與新增的直線l4)。在此實施例中,方程式(2)可改寫為:
ln(ea+eb)=max(a,b)+llrscale*max(0,o1-m1*d,o2-m2*d,o3-m3*d)(8)
其中,(-m1)、(-m2)、(-m3)分別為直線l2~l4的斜率,o1~o3則分別為直線l2~l4的常數(shù)項,且l1為y=0的直線。
請參考圖6,第6圖為本發(fā)明一解碼模塊60的示意圖。解碼模塊60可用于圖1所示的軟式輸入輸出解碼模塊siso1、siso2中,用來實現(xiàn)對數(shù)計算功能。解碼模塊60相似于圖3所示的解碼模塊30,因此具有相似功能的信號及元件沿用相同的符號。相較于第3圖所示的解碼模塊30,解碼模塊60新增一算術單元600。算術單元600包含有乘法器602及加法器604,用來計算計算常數(shù)項o3減去參數(shù)d與斜率m3乘積的值,并將計算結果輸出至計算單元306。計算單元306改為輸出算術單元302、304、600的計算結果及0中具有最大數(shù)值者至乘法單元308。如此一來,加法單元310將所接收到的信號相加后,即可產(chǎn)生方程式(8)的計算結果來實現(xiàn)對數(shù)計算功能。
綜上所述,透過利用多條直線來近似對數(shù)曲線,上述實施例的解碼裝置可利用簡潔的硬件架構來實現(xiàn)對數(shù)計算功能,從而大幅降低硬體成本及運算成本。
以上所述僅為本發(fā)明的較佳實施例,凡依本發(fā)明申請專利范圍所做的均等變化與修飾,皆應屬本發(fā)明的涵蓋范圍。