專(zhuān)利名稱(chēng):算術(shù)設(shè)備的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及一種設(shè)置在移動(dòng)通信設(shè)備中的算術(shù)設(shè)備以及其中設(shè)置有該算術(shù)設(shè)備的數(shù)字處理器和諸如移動(dòng)無(wú)線臺(tái)和基地?zé)o線臺(tái)的無(wú)線臺(tái)設(shè)備,特別是涉及一種能夠有效執(zhí)行維特比(Viterbi)譯碼處理的結(jié)構(gòu)。
近年來(lái),數(shù)字信號(hào)處理器(此后稱(chēng)之為“DSP”)已經(jīng)在移動(dòng)通信領(lǐng)域中的數(shù)字化移動(dòng)中被廣泛地用做處理器而置在諸如便攜式電話等設(shè)備中。由于經(jīng)過(guò)移動(dòng)無(wú)線通信線路進(jìn)行的數(shù)據(jù)通信中頻繁地產(chǎn)生誤碼,所以,必須執(zhí)行糾錯(cuò)處理??梢允褂眠@樣一種校正方法來(lái)作為糾錯(cuò)的方法,在該方法中,在接收機(jī)側(cè)利用維特比譯碼對(duì)由一個(gè)輸入位產(chǎn)生的卷積碼譯碼。糾錯(cuò)處理是采用DSP進(jìn)行的。
通過(guò)重復(fù)諸如加法、比較和選擇等簡(jiǎn)單處理和執(zhí)行用于最終譯碼數(shù)據(jù)的回溯操作(trace back)執(zhí)行維特比譯碼,從而實(shí)現(xiàn)一個(gè)卷積碼的最大似然譯碼。下面將簡(jiǎn)要地?cái)⑹鲈摼S特比譯碼。
通過(guò)使一個(gè)輸入位和在該輸入位之前的預(yù)定數(shù)量的位彼此模2相加以產(chǎn)生卷積碼,從而產(chǎn)生與一個(gè)輸入位對(duì)應(yīng)的多個(gè)編碼數(shù)據(jù)項(xiàng)。影響該編碼數(shù)據(jù)的輸入信息位的數(shù)量被稱(chēng)做“約束長(zhǎng)度k”,這個(gè)數(shù)與用于執(zhí)行該模2相加的移位寄存器的長(zhǎng)度相同。
利用該輸入位和在前的(k-1)個(gè)輸入位的狀態(tài)來(lái)確定編碼數(shù)據(jù)。當(dāng)提供一個(gè)新的信息位時(shí),在前的狀態(tài)被變換(執(zhí)行一個(gè)變換)到一個(gè)新的狀態(tài)。其中被執(zhí)行了一個(gè)變換的狀態(tài)確定這個(gè)新的輸入位是1還是0。由于(k-1)位中的每一位都可以是1或0,所以,狀態(tài)的數(shù)量是2k-1。
維特比譯碼被安排得可以觀察到一個(gè)接收到的編碼數(shù)據(jù)串和能夠根據(jù)可能發(fā)生的所有狀態(tài)變換來(lái)預(yù)測(cè)最可能的狀態(tài)。每當(dāng)獲得與一個(gè)信息位對(duì)應(yīng)的編碼數(shù)據(jù)(所接收到的數(shù)據(jù)串)時(shí),計(jì)算此時(shí)每個(gè)狀態(tài)下來(lái)自路徑的信號(hào)距離(量度)。在其中具有較小路徑量度的一個(gè)路徑被保留作為幸存路徑的每一個(gè)路徑中連續(xù)重復(fù)該操作。
圖17示出了在具有約束長(zhǎng)度k的傳統(tǒng)編碼器中的一個(gè)狀態(tài),在該約束長(zhǎng)度k中,兩個(gè)路徑中的每一個(gè)都指示對(duì)某個(gè)瞬間處某個(gè)狀態(tài)S[2n]從超前于狀態(tài)S[2n]一個(gè)狀態(tài)的狀態(tài)S[n]和S[n+2k-2]的狀態(tài)變換程度(n為正整數(shù))。下面將敘述其中k=3的一個(gè)例子。當(dāng)n=1時(shí),能夠執(zhí)行從S[1]即狀態(tài)S01,和S3即狀態(tài)S11,到S[2]即狀態(tài)S10(在前兩個(gè)位以“1”和“0”的順序輸入的狀態(tài))的變換。在n=2的情況下,能夠執(zhí)行從S[2]即狀態(tài)S10,和S[4]即狀態(tài)S00,到S[4]即狀態(tài)S00(利用兩個(gè)較低位表示的狀態(tài))的變換。
路徑量度a是輸入給狀態(tài)S[2n]的一個(gè)路徑輸出符號(hào)和所接收數(shù)據(jù)串的信號(hào)間距離(支路量度x)以及路徑量度A的和,路徑量度A是到超前于狀態(tài)S[2n]的狀態(tài)S[n]的幸存路徑的支路量度的總和。
同樣,路徑量度b是輸入給狀態(tài)S[2n]的一個(gè)路徑輸出符號(hào)和所接收數(shù)據(jù)串的信號(hào)間距離(支路量度y)以及路徑量度B的和,路徑量度B是到超前于狀態(tài)S[2n]的狀態(tài)S[n+2k-2]的幸存路徑的支路量度的總和。
輸入給狀態(tài)S[2n]并被如此獲得的路徑量度a和b被進(jìn)行比較以選擇一個(gè)較小的路徑量度作為幸存路徑。
維特比譯碼被構(gòu)造成每次對(duì)2k-1個(gè)狀態(tài)均進(jìn)行用于獲得該路徑量度的加法、路徑量度的比較和路徑量度的選擇。
此外,路徑選擇結(jié)果的履歷必須被作為路徑選擇信號(hào)PS[i][i=0到2k-1-1]存儲(chǔ)。如果超前于所選擇路徑的該狀態(tài)的后綴(例如,n)小于超前于未被選擇路徑的該狀態(tài)的后綴(n+2k-2),則PS[i]=0。如果前面的后綴較大,則PS[i]=1。由于在圖17所示的情況下n<(n+2k-2),所以,如果a≥b,則選擇狀態(tài)S[n+2k-2],從而使PS[S2n]=1。如果a<b,則選擇狀態(tài)S[n],從而使PS[S2n]=0。
當(dāng)利用回溯最終執(zhí)行譯碼時(shí),根據(jù)路徑選擇信號(hào)在回溯幸存路徑的同時(shí)對(duì)數(shù)據(jù)譯碼。
將參考圖18簡(jiǎn)述該回溯處理。圖18示出了根據(jù)路徑選擇信號(hào)PS[2n]回溯從狀態(tài)S[2n](n是正整數(shù))到在前時(shí)間處的狀態(tài)S[n]或狀態(tài)S[n+2k-2]的路徑的狀態(tài)。
通常,在使用狀態(tài)S[i]和路徑選擇信號(hào)PS[i]的情況下,在前狀態(tài)被表示為S[i/2+PS[i]×2k-2]。如果使用在尾端位處結(jié)束的卷積碼,當(dāng)在前時(shí)間處的編碼數(shù)據(jù)是0時(shí),路徑選擇信號(hào)是0。當(dāng)在前時(shí)間處的編碼數(shù)據(jù)是1時(shí),路徑選擇信號(hào)是1。因此,在前路徑選擇信號(hào)可以被用做編碼數(shù)據(jù)。
如圖15所示,在DSP中用于執(zhí)行維特比譯碼的卷積算術(shù)單元包括用于存儲(chǔ)路徑量度、路徑選擇信號(hào)和編碼數(shù)據(jù)的數(shù)據(jù)存儲(chǔ)器1;用于移位從數(shù)據(jù)存儲(chǔ)器1中讀出的數(shù)據(jù)的桶形移位器3;連接到數(shù)據(jù)存儲(chǔ)器1以提供數(shù)據(jù)和傳輸卷積結(jié)果的第一總線2;用于存儲(chǔ)被桶形移位器3移位的位數(shù)的第一寄存器23;用于執(zhí)行算術(shù)邏輯運(yùn)算的算術(shù)邏輯電路(此后稱(chēng)之為“ALU”)26;用于暫存ALU 26左手輸入值的第一鎖存器24;用于暫存ALU 26右邊輸入值的第二鎖存器25;用于暫存該計(jì)算結(jié)果的第二寄存器27和28;和用于從寄存器27或寄存器28提供數(shù)據(jù)的第二總線12。
被桶形移位器3移位的位數(shù)以二進(jìn)制補(bǔ)碼制表示。當(dāng)該值是一個(gè)正數(shù)時(shí),執(zhí)行右移。當(dāng)該值是一個(gè)負(fù)數(shù)時(shí),執(zhí)行左移。
下面將敘述由上述算術(shù)單元執(zhí)行的回溯操作,該回溯操作是當(dāng)對(duì)通過(guò)卷積編碼獲得的編碼數(shù)據(jù)進(jìn)行維特比譯碼時(shí)執(zhí)行并在尾端位結(jié)束的。
假設(shè)此時(shí)的狀態(tài)為卷積碼的約束長(zhǎng)度是k,編碼信息位的數(shù)量是n,在數(shù)據(jù)存儲(chǔ)器1、第一總線2、第二總線12、第一鎖存器24、第二鎖存器25、ALU 26以及第二寄存器27和28的每一個(gè)中的位寬是2k-1位。
在時(shí)間t處的路徑選擇信號(hào)PSt[i](t=0到{(n-1)+(k-1)},i=0到{2k1-1})被作為路徑存儲(chǔ)器PM[t]={PSt[2k-1-1],PSt[2k-1-2],...,PSt[1],PSt
}裝入到一個(gè)字中,從而形成PM[t](t=0到{(n-1)+(k-1)})并被存儲(chǔ)到數(shù)據(jù)存儲(chǔ)器1中。
譯碼數(shù)據(jù)Y[i](i=0到{n-1})以一位作為一個(gè)字的形式存儲(chǔ)在數(shù)據(jù)存儲(chǔ)器1中。
回溯操作以下述方式執(zhí)行,即從數(shù)據(jù)存儲(chǔ)器1中讀出PM[t];桶形移位器3將被選擇的路徑選擇信號(hào)移位到最低有效位(LSB);和然后提取LSB并將其變成譯碼數(shù)據(jù)。利用所選擇狀態(tài)馮二進(jìn)制補(bǔ)碼獲得移位量。由于在前卷積碼被構(gòu)造成在尾端位處結(jié)束,所以,操作從狀態(tài)0開(kāi)始。通過(guò)計(jì)算[i/2+PS[i]×2k-2]獲得在前狀態(tài)。根據(jù)所獲得到的狀態(tài)獲得當(dāng)下一個(gè)路徑選擇信號(hào)被移位到LSB時(shí)所需要的移位量。重復(fù)前述過(guò)程以獲得譯碼的代碼串。
下面描述回溯操作的步驟。
步驟1為了從狀態(tài)0開(kāi)始操作,在第二鎖存器25中存儲(chǔ)一個(gè)固定值“0”。如所示,ALU 26將在第二鎖存器25中的值存儲(chǔ)到第二寄存器27中。
從下一個(gè)步驟2到步驟10,在將i值從{(n-1)+(k-1)}減小到(k-1)的同時(shí)重復(fù)該操作n次。
步驟2第二寄存器27中的值經(jīng)過(guò)第二總線12被存儲(chǔ)到第一鎖存器24中。ALU 26在第一鎖存器24中獲得該值的二進(jìn)制補(bǔ)碼以將所獲得的值存儲(chǔ)到第二寄存器28中。
步驟3第二寄存器28中的值經(jīng)過(guò)第一總線2被存儲(chǔ)到第一寄存器23中。如此,該值是用于選擇下一個(gè)路徑選擇信號(hào)的位移數(shù)量。
步驟4從數(shù)據(jù)存儲(chǔ)器1中讀出路徑存儲(chǔ)器PM[i],然后,利用桶形移位器3將其移位由第一寄存器23指示的量。然后,該值被存儲(chǔ)在第二鎖存器25中。ALU 26將第二鎖存器25中的值存儲(chǔ)到第二寄存器28中。如此,被選擇的路徑選擇信號(hào)接近最低有效位[LSB]。
步驟5將第二寄存器28中的值經(jīng)過(guò)第二總線12存儲(chǔ)到第一鎖存器24中,然后,固定值“1”被存儲(chǔ)到第二鎖存器25中。ALU 26獲得第一鎖存器24和第二鎖存器25的邏輯積以將結(jié)果存儲(chǔ)到第二寄存器28中(只提取LSB)。
步驟6將第二寄存器28中的值作為譯碼數(shù)據(jù)存儲(chǔ)在數(shù)據(jù)存儲(chǔ)器1中(該LSB被作為譯碼數(shù)據(jù))。
步驟7將固定值“k”存儲(chǔ)在第一寄存器23中。
步驟8將第二寄存器27中的值經(jīng)過(guò)第二總線12存儲(chǔ)到第一鎖存器24中。然后,第二寄存器28中的值經(jīng)過(guò)第一總線2被輸出給桶形移位器3。桶形移位器3將所提供的值移位由第一寄存器23指示的移位量,以便將其輸出存儲(chǔ)到第二鎖存器25中。ALU 26獲得第一鎖存器24和第二鎖存器25的邏輯和以便將結(jié)果存儲(chǔ)到第二寄存器28中。
步驟9將固定值“-1”存儲(chǔ)到第一寄存器23中。
步驟10桶形移位器3將第二寄存器28中的值移位由第一寄存器23指示的移位量,從而獲得一個(gè)輸出并將其存儲(chǔ)在第二鎖存器25中。ALU 26將第二鎖存器25中的值存儲(chǔ)到第二寄存器27中(步驟7到步驟10允許計(jì)算一個(gè)在前狀態(tài))。
如上所述,傳統(tǒng)算術(shù)單元被構(gòu)成為通過(guò)桶形移位器3和ALU 26的相組合來(lái)執(zhí)行計(jì)算,從而在(9n+1)個(gè)步驟中完成用于對(duì)n位信息位進(jìn)行維特比譯碼的回溯操作。
但是,上述傳統(tǒng)算術(shù)單元存在一個(gè)問(wèn)題,即必須執(zhí)行大量的執(zhí)行步驟才能完成回溯操作。在例如未審查的日本專(zhuān)利文本6-112848中公開(kāi)了一種能夠克服上述問(wèn)題的算術(shù)單元。
如圖16所示的上述算術(shù)單元包括用于存儲(chǔ)路徑量度、路徑選擇信號(hào)等的數(shù)據(jù)存儲(chǔ)器1;被連接到數(shù)據(jù)存儲(chǔ)器1并用于提供數(shù)據(jù)和傳輸計(jì)算結(jié)果的總線2;用于將從數(shù)據(jù)存儲(chǔ)器1讀出的路徑存儲(chǔ)器數(shù)據(jù)的被選擇路徑選擇信號(hào)移位到最高有效位(MSB)的桶形移位器3;用于經(jīng)過(guò)總線2移位接收由桶形移位器3輸出的MSB和來(lái)自數(shù)據(jù)存儲(chǔ)器1的加載數(shù)據(jù)或?qū)?shù)據(jù)存儲(chǔ)到數(shù)據(jù)存儲(chǔ)器1中的移位寄存器4;和用于將移位寄存器4中預(yù)定多個(gè)位位置的值反相以將該值作為移位量提供給桶形移位器3的反相器29。
由桶形移位器3移位的位數(shù)量由二進(jìn)制補(bǔ)碼表示。當(dāng)該值是正數(shù)時(shí),執(zhí)行右移。當(dāng)該值是負(fù)數(shù)時(shí),執(zhí)行左移。移位寄存器4被構(gòu)造成它的移位輸入側(cè)是MSB。
下面描述由上述算術(shù)單元執(zhí)行的回溯操作,該回溯操作當(dāng)對(duì)通過(guò)卷積編碼獲得的編碼數(shù)據(jù)進(jìn)行維特比譯碼時(shí)執(zhí)行并在一個(gè)尾端位結(jié)束。
假設(shè)此時(shí)的條件為卷積碼的約束長(zhǎng)度是k,編碼信息位的數(shù)量是n和在數(shù)據(jù)存儲(chǔ)器1、總線2和移位寄存器4中每一個(gè)內(nèi)的位寬是2k-1位。從桶形移位器3輸出的MSB被提供給移位寄存器4的移位輸入端。第二寄存器28將移位寄存器4中的(k-1)個(gè)較高位反相,和然后輸出作為移位數(shù)量的k個(gè)位,該k個(gè)位是通過(guò)將“0”加到從移位寄存器4輸出的(k-1)位的MSB上所獲得的和。
與上述單元類(lèi)似,路徑選擇信號(hào)PSt[i](t=0到{(n-1)+(k-1)},i=0到{2k-1-1})被作為路徑存儲(chǔ)器PM[t]={PSt[2k-1-1],PSt[2k-1-2],...,PSt[1],PSt
}裝入到一個(gè)字,從而形成PM[t](t=0到{(n-1)+(k-1)})和存儲(chǔ)到數(shù)據(jù)存儲(chǔ)器1中。譯碼數(shù)據(jù)Y[i](i=0到{n-1})被以一位作為一個(gè)字的形式存儲(chǔ)在數(shù)據(jù)存儲(chǔ)器1中。
回溯操作是以如下方式執(zhí)行的從數(shù)據(jù)存儲(chǔ)器1中讀出的路徑存儲(chǔ)器被桶形移位器3移位,以使必須被選擇的路徑選擇信號(hào)被移位到MSB。然后,被移位的路徑選擇信號(hào)被提供給移位寄存器4。此時(shí),移位寄存器4中的(k1)個(gè)較高位指示一個(gè)在前狀態(tài)。因此,通過(guò)將(k-1)個(gè)較高位反相可以獲得下一個(gè)移位數(shù)。利用反相器29產(chǎn)生在前移位數(shù)。然后,在下一個(gè)路徑存儲(chǔ)器中必須被選擇的路徑選擇信號(hào)被移位到從桶形移位器3輸出的MSB,以向移位寄存器4提供被移位的路徑選擇信號(hào)。
重復(fù)上述操作以使用做譯碼數(shù)據(jù)的被選擇路徑選擇信號(hào)被連續(xù)存儲(chǔ)在移位寄存器4中。每當(dāng)存儲(chǔ)預(yù)定量的位時(shí),它們被存儲(chǔ)在數(shù)據(jù)存儲(chǔ)器1中。
下面描述回溯操作的步驟步驟1為了從狀態(tài)0開(kāi)始操作,一個(gè)固定值為“0”的數(shù)據(jù)被存儲(chǔ)到移位寄存器4中。
從下一個(gè)步驟2和3,在將1值從{(n-1)+(k-1)}減小到(k-1)的同時(shí)重復(fù)的上述操作n次。
步驟2從數(shù)據(jù)存儲(chǔ)器1中讀出路徑存儲(chǔ)器PM[i],然后,利用桶形移位器3使其移位由從反相器29輸出的k位指示的移位量。然后,從桶形移位器3輸出的MSB被移位輸入移位寄存器4。然后,前述操作使得必須被選擇的路徑選擇信號(hào)接近最高有效位[MSB]。在這種情況下,已經(jīng)進(jìn)行移位輸入端的移位寄存器4的[k-1]個(gè)較高位指示該在前狀態(tài)。[k-1]個(gè)較高位的反相信號(hào)是用于選擇下一個(gè)路徑選擇信號(hào)的移位量的基礎(chǔ)。
步驟3每當(dāng)2k-1位被譯碼一次時(shí),移位寄存器4的內(nèi)容被存儲(chǔ)到數(shù)據(jù)存儲(chǔ)器1中,由此,所選擇并存儲(chǔ)在移位寄存器4中的路徑選擇信號(hào)被變換成譯碼數(shù)據(jù)。
如上所述,上述單元被構(gòu)成為在步驟2執(zhí)行路徑選擇信號(hào)的選擇和在前狀態(tài)的計(jì)算。因此,可以在{n+(n/2k-1)+1 }個(gè)步驟中完成在n位信息位維特比譯碼中的回溯處理。
但是,上述傳統(tǒng)算術(shù)單元是構(gòu)成為處于數(shù)據(jù)存儲(chǔ)器和總線的位寬是2k- 1(k是譯碼所需卷積碼的約束長(zhǎng)度)或更大的條件下。因此就出現(xiàn)了一個(gè)問(wèn)題,即k值的放大需要放大數(shù)據(jù)路徑中的位寬。
本發(fā)明能夠克服上述問(wèn)題,本發(fā)明的一個(gè)目的是提供一種算術(shù)設(shè)備,該設(shè)備即使是在2k-1的值大于數(shù)據(jù)路徑中的位寬的情況下也能夠迅速和有效地執(zhí)行維特比譯碼中的回溯處理。本發(fā)明的另一個(gè)目的是提供一種具有上述算術(shù)設(shè)備的數(shù)字信號(hào)處理器和無(wú)線臺(tái)設(shè)備。
因此,根據(jù)本發(fā)明的算術(shù)設(shè)備以如下方式構(gòu)成在同一時(shí)間處的路徑選擇信號(hào)被分成多個(gè)組,然后存儲(chǔ)在一個(gè)數(shù)據(jù)存儲(chǔ)器中。此外,利用由地址產(chǎn)生裝置輸出的地址和在被順序提供被選擇路徑選擇信號(hào)的移位寄存器中的規(guī)定位位置的值相結(jié)合來(lái)產(chǎn)生用于讀出該組的地址。
因此,即使是在該位寬小于2k-1位的情況下也能夠執(zhí)行在維特比譯碼中的回溯處理。由此,可以執(zhí)行高速和有效的計(jì)算。
根據(jù)本發(fā)明,所提供的一種算術(shù)單元包括用于存儲(chǔ)路徑選擇信號(hào)的數(shù)據(jù)存儲(chǔ)器;用于移位從數(shù)據(jù)存儲(chǔ)器讀出的數(shù)據(jù)的桶形移位器;用于接收由桶形移位器移位到MAB的一個(gè)位的移位寄存器;和用于通過(guò)對(duì)在該移位寄存器中規(guī)定位位置處置位的數(shù)據(jù)進(jìn)行轉(zhuǎn)換以執(zhí)行用于產(chǎn)生由該移位寄存器執(zhí)行的移位量的維特比譯碼處理來(lái)產(chǎn)生由該桶形移位器執(zhí)行的移位量的數(shù)據(jù)轉(zhuǎn)換裝置;其中,同一時(shí)間的路徑選擇信號(hào)被分成多個(gè)組,然后被存儲(chǔ)在數(shù)據(jù)存儲(chǔ)器中,并且該算術(shù)設(shè)備包括用于輸出數(shù)據(jù)存儲(chǔ)器中的地址的地址產(chǎn)生裝置;和用于根據(jù)從該地址產(chǎn)生裝置輸出的地址和在該移位寄存器中規(guī)定位位置的值產(chǎn)生必須被從數(shù)據(jù)存儲(chǔ)器中讀出的組地址的地址轉(zhuǎn)換裝置。因此,可以利用小于2k-1位的位寬來(lái)執(zhí)行維特比譯碼中的回溯處理。
另外,在該算術(shù)設(shè)備中,路徑選擇信號(hào)被分成多個(gè)組,以便使分別被提供給路徑選擇信號(hào)的多個(gè)后綴在該組中持續(xù),并且地址轉(zhuǎn)換裝置使用從地址產(chǎn)生裝置輸出的地址和包括位于移位寄存器輸入端處一個(gè)位在內(nèi)的預(yù)定數(shù)量位的位置值來(lái)產(chǎn)生該組地址。在k=6的示例情況下,在時(shí)間t處總量為32位的路徑選擇信號(hào)被以?xún)蓚€(gè)字的形式存儲(chǔ),其中的每一個(gè)字均包括PSt
到PSt[15]和PSt[16]到PSt[31],并且兩個(gè)字中的每一個(gè)都具有16位寬度。
另外,在該算術(shù)設(shè)備中,數(shù)據(jù)轉(zhuǎn)換裝置對(duì)除移位寄存器一個(gè)輸入端處的一個(gè)位外的預(yù)定數(shù)量位的位置值進(jìn)行反相,以便產(chǎn)生由該桶形移位器執(zhí)行的移位量。假設(shè)存儲(chǔ)在數(shù)據(jù)存儲(chǔ)器中的路徑選擇信號(hào)的每個(gè)字的位寬是n,移位寄存器中除MSB外的log2n個(gè)較高位被反相,從而產(chǎn)生由該桶形移位器執(zhí)行的移位量。
此外,在該算術(shù)設(shè)備中,路徑選擇信號(hào)被分成多個(gè)組,以便使分別被提供給該路徑選擇信號(hào)的多個(gè)后綴保持該組中的預(yù)定差,并且地址轉(zhuǎn)換裝置使用從地址產(chǎn)生裝置輸出的地址和除該移位寄存器一個(gè)輸入端處的一個(gè)位外的預(yù)定數(shù)量位位置的值來(lái)產(chǎn)生該組的地址。在k=6的情況下,路徑選擇信號(hào)被分成包括路徑選擇信號(hào)PSt
、PSt[2]、...、PSt[30]并具有偶數(shù)后綴的一個(gè)組以及包括路徑選擇信號(hào)PSt[1]、PSt[3]、...、PSt[31]并具有奇數(shù)后綴的一個(gè)組。
此外,在該算術(shù)設(shè)備中,數(shù)據(jù)轉(zhuǎn)換裝置將包括位于該移位寄存器一個(gè)輸入端處的一個(gè)位在內(nèi)的預(yù)定數(shù)量位的位置值反相,以產(chǎn)生由該桶形移位器執(zhí)行的移位量。由此,移位寄存器中包括該MSB的log2n個(gè)較高位被反相,以產(chǎn)生由該桶形移位器執(zhí)行的移位量。
此外,在該算術(shù)設(shè)備中,地址轉(zhuǎn)換裝置從移位寄存器中一個(gè)位的預(yù)定位置處和在從數(shù)據(jù)存儲(chǔ)器中讀出超前于該組的一個(gè)組的時(shí)間處獲得用于產(chǎn)生該組地址所需的并從該移位寄存器提供的值。由此,可以執(zhí)行具有流水線結(jié)構(gòu)的回溯處理。
再有,該算術(shù)設(shè)備還包括一個(gè)用于在維特比譯碼處理中執(zhí)行加法、比較和選擇操作的ACS(加,比較和選擇)處理裝置,其中,從該ACS處理裝置輸出的路徑選擇信號(hào)被順序地存儲(chǔ)在該移位寄存器中,在該組的選擇信號(hào)被存儲(chǔ)在該移位寄存器中之后,該路徑選擇信號(hào)位于每個(gè)組中,并被移位以存儲(chǔ)在該數(shù)據(jù)存儲(chǔ)器中。因此,使用回溯處理機(jī)構(gòu)能夠有效地存儲(chǔ)路徑選擇信號(hào)組。
另外,該算術(shù)設(shè)備還包括用于在維特比譯碼中執(zhí)行加法、比較和選擇操作的ASC處理裝置,其中,從ASC處理裝置輸出的路徑選擇信號(hào)被順序存儲(chǔ)在包括該移位寄存器的多個(gè)移位寄存器中,并且在該組的路徑選擇信號(hào)被存儲(chǔ)在該移位寄存器中之后,該路徑選擇信號(hào)位于每個(gè)組中,并被移位以存儲(chǔ)在數(shù)據(jù)存儲(chǔ)器中。因此,使用該回溯處理機(jī)構(gòu)能夠有效地存儲(chǔ)路徑選擇信號(hào)組。
再有,在該算術(shù)設(shè)備中,ACS處理裝置具有一個(gè)包括多個(gè)全加器的加法裝置,并允許執(zhí)行向下一個(gè)全加器傳送從部分全加器輸出的進(jìn)位信號(hào),從而允許將該加法裝置用做一個(gè)或多個(gè)累加器。
此外,根據(jù)本發(fā)明,提供了一種數(shù)字信號(hào)處理器(DSP),該DSP中包括上述算術(shù)設(shè)備,從而使該DSP能夠迅速和有效地執(zhí)行維特比譯碼中的回溯處理。此外,根據(jù)本發(fā)明,提供了一種其中設(shè)置了上述算術(shù)設(shè)備的無(wú)線臺(tái)設(shè)備。
參照附圖對(duì)本發(fā)明的詳細(xì)描述,本發(fā)明的特點(diǎn)和目的將變得更加清楚,附圖中圖1的框圖示出了根據(jù)本發(fā)明第一實(shí)施例的算術(shù)設(shè)備的結(jié)構(gòu);圖2示出了根據(jù)本發(fā)明第一實(shí)施例的算術(shù)設(shè)備數(shù)據(jù)轉(zhuǎn)換部分的結(jié)構(gòu);圖3A和3B示出了存儲(chǔ)在根據(jù)本發(fā)明的算術(shù)設(shè)備數(shù)據(jù)存儲(chǔ)器中的數(shù)據(jù)結(jié)構(gòu);圖4示出了根據(jù)本發(fā)明實(shí)施例的算術(shù)設(shè)備桶形移位器的操作;
圖5示出了根據(jù)第一實(shí)施例的算術(shù)設(shè)備地址轉(zhuǎn)換部分的結(jié)構(gòu);圖6的框圖示出了根據(jù)本發(fā)明第二實(shí)施例的算術(shù)設(shè)備的結(jié)構(gòu);圖7A和7B示出了存儲(chǔ)在根據(jù)本發(fā)明第二實(shí)施例的算術(shù)設(shè)備數(shù)據(jù)存儲(chǔ)器中的數(shù)據(jù)結(jié)構(gòu);圖8的時(shí)序圖示出了由根據(jù)第二實(shí)施例的算術(shù)設(shè)備執(zhí)行的流水線操作;圖9示出了根據(jù)第二實(shí)施例的算術(shù)設(shè)備地址轉(zhuǎn)換部分的結(jié)構(gòu);圖10的框圖示出了根據(jù)本發(fā)明第三實(shí)施例的算術(shù)設(shè)備的結(jié)構(gòu);圖11的框圖示出了根據(jù)本發(fā)明第三和第四實(shí)施例的算術(shù)設(shè)備ACS計(jì)算部分的結(jié)構(gòu);圖12的框圖示出了根據(jù)本發(fā)明第四實(shí)施例的算術(shù)設(shè)備的結(jié)構(gòu);圖13的框圖示出了根據(jù)本發(fā)明第五實(shí)施例的算術(shù)設(shè)備ACS計(jì)算部分的結(jié)構(gòu);圖14的框圖示出了根據(jù)本發(fā)明第五實(shí)施例的算術(shù)設(shè)備加法器的結(jié)構(gòu);圖15的框圖示出了一個(gè)傳統(tǒng)算術(shù)設(shè)備的結(jié)構(gòu);圖16的框圖示出了另一個(gè)傳統(tǒng)算術(shù)設(shè)備的結(jié)構(gòu);圖17示出了一個(gè)在維特比譯碼中使用的卷積編碼器狀態(tài)轉(zhuǎn)換路徑的狀態(tài)轉(zhuǎn)換圖(格構(gòu)圖);圖18示出了一個(gè)當(dāng)執(zhí)行用于維特比譯碼的回溯操作時(shí)回溯路徑操作的狀態(tài)轉(zhuǎn)換圖(格構(gòu)圖);圖19的框圖示出了使用根據(jù)本發(fā)明的算術(shù)設(shè)備的一個(gè)數(shù)字信號(hào)處理器;圖20的框圖示出了根據(jù)本發(fā)明的一個(gè)無(wú)線移動(dòng)臺(tái)設(shè)備;圖21的框圖示出了根據(jù)本發(fā)明的另一個(gè)無(wú)線移動(dòng)臺(tái)設(shè)備;圖22的框圖示出了根據(jù)本發(fā)明的一個(gè)無(wú)線基地臺(tái)設(shè)備;和圖23的框圖示出了根據(jù)本發(fā)明的另一個(gè)無(wú)線基地臺(tái)設(shè)備。
下面,結(jié)合附圖描述本發(fā)明的實(shí)施例。
如圖1所示,根據(jù)本發(fā)明第一實(shí)施例的算術(shù)設(shè)備包括用于存儲(chǔ)路徑量度和路徑選擇信號(hào)等的數(shù)據(jù)存儲(chǔ)器1;連接到數(shù)據(jù)存儲(chǔ)器1并用于提供數(shù)據(jù)和傳送計(jì)算結(jié)果的總線2;用于使從數(shù)據(jù)存儲(chǔ)器1經(jīng)過(guò)總線2讀出的數(shù)據(jù)移位的桶形移位器3;用于向地址轉(zhuǎn)換部分7輸出MSB并將從數(shù)據(jù)存儲(chǔ)器1經(jīng)過(guò)總線2提供的數(shù)據(jù)加載到數(shù)據(jù)存儲(chǔ)器1的移位寄存器4;用于使移位寄存器4中的預(yù)定多個(gè)位位置的值反相以向桶形移位器3提供作為移位量的反相值的數(shù)據(jù)轉(zhuǎn)換部分5;用于產(chǎn)生提供給數(shù)據(jù)存儲(chǔ)器1的地址的地址產(chǎn)生部分10;以及用于對(duì)由地址產(chǎn)生裝置10和移位寄存器4提供的值進(jìn)行轉(zhuǎn)換并將其作為數(shù)據(jù)存儲(chǔ)器1的地址而輸出的地址轉(zhuǎn)換裝置7。地址產(chǎn)生部分10具有用于存儲(chǔ)提供給數(shù)據(jù)存儲(chǔ)器1的地址的地址寄存器6、用于存儲(chǔ)必須被加到地址寄存器6上的增量值的增量寄存器9、和用于將增量寄存器9中的值加到地址寄存器6中的值上以便將加法結(jié)果存儲(chǔ)到地址寄存器6中的加法器8。
桶形移位器3中的移位量由二進(jìn)制補(bǔ)碼制表示。當(dāng)該值是一個(gè)正數(shù)時(shí),執(zhí)行左邊移位。當(dāng)該值是一個(gè)負(fù)數(shù)時(shí),執(zhí)行右邊移位。移位寄存器4被以移位輸入側(cè)是最高有效位(MSB)的方式設(shè)置。
下面結(jié)合圖1、2、3、4和5描述當(dāng)執(zhí)行具有以其尾端位結(jié)束的約束長(zhǎng)度k=6的卷積碼的維特比譯碼時(shí)所執(zhí)行的回溯處理。這里假設(shè)編碼信息位的數(shù)量是n。另一個(gè)假設(shè)是用于數(shù)據(jù)存儲(chǔ)器1、總線2、桶形移位器3、移位寄存器4、地址寄存器6等的數(shù)據(jù)路徑的位寬m是16位(m=16)。因此,與傳統(tǒng)結(jié)構(gòu)不同,2k-1(=32)大于數(shù)據(jù)路徑的位寬。
如圖2所示的數(shù)據(jù)轉(zhuǎn)換部分5包括一個(gè)反相器21。數(shù)據(jù)轉(zhuǎn)換部分5接收通過(guò)從移位寄存器45中的5個(gè)較高位中減去MSB而獲得的4個(gè)位。然后,反相器21將所提供的該4個(gè)位(log2m)的值反相。通過(guò)將值“0”加到由反相器21輸出的4個(gè)位的MSB上所獲得的5個(gè)位的值被輸出給桶形移位器3以作為指示移位量的控制信號(hào)。
圖4示出了桶形移位器3的操作情況,桶形移位器3被設(shè)置如下在從數(shù)據(jù)轉(zhuǎn)換部分5輸出的5位控制信號(hào)之后執(zhí)行用于使一個(gè)輸入信號(hào)移位的移位操作,如圖4所示。
地址轉(zhuǎn)換部分7具有圖5所示的結(jié)構(gòu),以便接收從地址寄存器6輸出的16位和移位寄存器4中的MSB。地址轉(zhuǎn)換部分7輸出從地址寄存器6輸出的15個(gè)較高位并選擇由地址寄存器6輸出的LSB以及移位寄存器4中的MSB,以便將所選擇值作為被提供給數(shù)據(jù)存儲(chǔ)器1的地址的LSB輸出。
圖3A和3B示出了一種狀態(tài),在該狀態(tài)下,路徑選擇信號(hào)已經(jīng)被存儲(chǔ)在具有16位寬的數(shù)據(jù)存儲(chǔ)器1中。如圖3A所示,在時(shí)間t數(shù)量為32位的路徑選擇信號(hào)PSt[i](i=0到31)被填入到兩個(gè)字中并存儲(chǔ)在具有16位寬的數(shù)據(jù)存儲(chǔ)器1中。即PSt[150]被存儲(chǔ)在地址“2t+0”處,而PSt[3116]被存儲(chǔ)在地址“2t+1”處。
必須要注意的一個(gè)事實(shí)是當(dāng)指示一個(gè)狀態(tài)的數(shù)字i的值由5位二進(jìn)制數(shù)表示且它的MSB是0(當(dāng)i=0到15時(shí))時(shí),相應(yīng)的PSt[i]被存儲(chǔ)在數(shù)據(jù)存儲(chǔ)器1中的地址“2t+0”處。當(dāng)它的MSB=1(當(dāng)i=16到31時(shí))時(shí),相應(yīng)的PSt[i]被存儲(chǔ)在數(shù)據(jù)寄存器1中的地址“2t+1”處。為何根據(jù)這個(gè)實(shí)施例移位寄存器4中的MSB被提供給地址轉(zhuǎn)換部分7的原因在于前述事實(shí)。如在下面將要描述的,指示一個(gè)狀態(tài)的數(shù)字i在回溯處理期間被存儲(chǔ)在移位寄存器4中的5個(gè)較高位內(nèi)。移位寄存器4中的MSB提供用于指示地址“2t”的“+0”或“+1”的地址信息。
對(duì)譯碼數(shù)據(jù)Y[j](j=0到{n-1})是這樣處理的,即,使16位被填入到一個(gè)字中,然后被存儲(chǔ)到數(shù)據(jù)存儲(chǔ)器1中。
以地址產(chǎn)生部分10輸出被存儲(chǔ)在地址寄存器6中的值的方式執(zhí)行該回溯處理。這樣,由增量寄存器9實(shí)現(xiàn)的增量被加到該輸出值上,以便再次存儲(chǔ)到地址寄存器6中。由于重復(fù)上述操作,所以順序輸出與“2t+0”對(duì)應(yīng)的地址。當(dāng)移位寄存器4中的MSB是0時(shí),地址轉(zhuǎn)換部分7向數(shù)據(jù)存儲(chǔ)器1提供“2t+0”以用做該地址,并當(dāng)移位寄存器4中的MSB是1時(shí)提供“2t+1”。
根據(jù)從地址轉(zhuǎn)換部分7輸出的地址,數(shù)據(jù)存儲(chǔ)器1讀該路徑存儲(chǔ)器。在前路徑存儲(chǔ)器被提供給桶形移位器3。然后,桶形移位器3根據(jù)由數(shù)據(jù)轉(zhuǎn)換部分5提供的控制信號(hào)將路徑存儲(chǔ)器中的被選擇路徑選擇信號(hào)移位到MSB。該MSB被提供給移位寄存器4。
此時(shí)存儲(chǔ)在移位寄存器4中的5個(gè)較高位指示一個(gè)在前被選擇狀態(tài)。5個(gè)較高位的MSB被輸出給地址轉(zhuǎn)換部分7,以指示下一個(gè)地址的“+0”或“+1”。4個(gè)剩余位被輸出給數(shù)據(jù)轉(zhuǎn)換部分5以被反相。在路徑存儲(chǔ)器被分成兩個(gè)字并被如上所存儲(chǔ)的一個(gè)字中,反相的4個(gè)位的值指示用于使路徑選擇信號(hào)移位到與在前被選擇狀態(tài)對(duì)應(yīng)的MSB所需的移位量。
重復(fù)上述過(guò)程,從而使將被變換成譯碼數(shù)據(jù)的被選擇路徑選擇信號(hào)順序地存儲(chǔ)在移位寄存器4中。當(dāng)已經(jīng)存儲(chǔ)路徑選擇信號(hào)的預(yù)定數(shù)量位時(shí),它們被傳輸給數(shù)據(jù)存儲(chǔ)器1。
下面將描述回溯操作的步驟。
步驟1“0”作為初始值被存儲(chǔ)在地址寄存器6中。
步驟2固定值“2”被存儲(chǔ)在增量寄存器9中。
步驟3為了從狀態(tài)0開(kāi)始,固定值“0”被加載并被存儲(chǔ)到移位寄存器4中。
步驟4和步驟5以j的值從{(n-1)+5}減少到5的方式被重復(fù)n次。
步驟4地址產(chǎn)生裝置10將地址寄存器6中的值輸出給地址轉(zhuǎn)換部分7,和使加法器8將地址寄存器6中的值加到增量寄存器9中的值上,以再次將該值存儲(chǔ)到地址寄存器6中從而執(zhí)行修正。地址轉(zhuǎn)換部分7將由地址寄存器6提供的值的15個(gè)較高位輸出給數(shù)據(jù)存儲(chǔ)器1。此外,地址轉(zhuǎn)換部分7選擇移位寄存器4中MSB的值,以將其作為被提供給數(shù)據(jù)存儲(chǔ)器1的該地址的LSB輸出。數(shù)據(jù)存儲(chǔ)器1從由地址轉(zhuǎn)換部分7輸出的地址讀出路徑存儲(chǔ)器PM[i],并經(jīng)過(guò)總線2將它輸出給桶形移位器3。桶形移位器3執(zhí)行由數(shù)據(jù)轉(zhuǎn)換部分7輸出的5位指示的移位量的移位,以便將從桶形移位器3輸出的MSB移位輸入給移位寄存器4(所選擇的路徑選擇信號(hào)接近該最高有效位[MSB]。此時(shí),在已經(jīng)執(zhí)行移位輸入的移位寄存器4中的(k-1)個(gè)較高位(=5位)指示一個(gè)在前狀態(tài)。此外,[k-1]個(gè)較高位的反相是用于選擇下一個(gè)路徑選擇信號(hào)的移位量的基礎(chǔ))。
步驟5每當(dāng)對(duì)16位進(jìn)行譯碼時(shí),移位寄存器4中的內(nèi)容被一次存儲(chǔ)到數(shù)據(jù)存儲(chǔ)器1中(被選擇和存儲(chǔ)在移位寄存器4中的路徑選擇信號(hào)被變換成譯碼數(shù)據(jù))。
如上所述,根據(jù)這個(gè)實(shí)施例的算術(shù)設(shè)備能夠在{n+(n/2k-1)+3}個(gè)步驟中完成在n位信息位的維特比譯碼中的回溯處理。由于地址寄存器6和地址轉(zhuǎn)換部分7在步驟4向數(shù)據(jù)存儲(chǔ)器1提供與移位寄存器4中的值對(duì)應(yīng)的地址,所以,即使是在時(shí)間t處的路徑選擇信號(hào)PSt[i]在數(shù)據(jù)存儲(chǔ)器1中被分成多個(gè)字,也能夠有效執(zhí)行回溯處理,如圖3所示。
雖然已經(jīng)描述了其中移位寄存器4中5個(gè)較高位的MSB被輸出給地址轉(zhuǎn)換部分7和4個(gè)剩余位被輸出給數(shù)據(jù)轉(zhuǎn)換部分5的結(jié)構(gòu),還可以使用另一種結(jié)構(gòu),在該結(jié)構(gòu)中,移位寄存器4中的5個(gè)較高位被輸出給地址轉(zhuǎn)換部分7;地址轉(zhuǎn)換部分7向地址轉(zhuǎn)換部分7輸出5個(gè)位的MSB,然后,將4個(gè)剩余位反相,并將0加到該MSB上。
雖然所描述的實(shí)施例具有其約束長(zhǎng)度是6的結(jié)構(gòu),但是,通過(guò)執(zhí)行所需的變化,本發(fā)明可以被應(yīng)用到其它具有另外約束長(zhǎng)度的結(jié)構(gòu)。例如在約束長(zhǎng)度k=7的情況下,在時(shí)間t處的路徑選擇信號(hào)PSt[i]被分成如圖3B所示的4個(gè)字并被存儲(chǔ)在數(shù)據(jù)存儲(chǔ)器1中。在這種情況下,移位寄存器4中6個(gè)較高位內(nèi)的兩個(gè)較高位被用于規(guī)定該地址,而4個(gè)剩余位被作為用于選擇下一個(gè)路徑選擇信號(hào)的移位量的基礎(chǔ)。
根據(jù)第二實(shí)施例的算術(shù)設(shè)備具有適用于執(zhí)行流水線結(jié)構(gòu)計(jì)算處理的結(jié)構(gòu)。
根據(jù)這個(gè)實(shí)施例的單元具有如圖6所示的結(jié)構(gòu)。根據(jù)這個(gè)實(shí)施例的結(jié)構(gòu)在下述三個(gè)結(jié)構(gòu)方面不同于根據(jù)第一實(shí)施例的結(jié)構(gòu)(見(jiàn)圖1)。
第一個(gè)差別在于數(shù)據(jù)轉(zhuǎn)換部分5和移位寄存器4之間的連接關(guān)系。該結(jié)構(gòu)是這樣構(gòu)成的,包括移位寄存器4中該MSB的4個(gè)較高位(log2m)被以不同于第一實(shí)施例的方式提供給數(shù)據(jù)數(shù)據(jù)轉(zhuǎn)換部分5。
第二個(gè)差別是地址轉(zhuǎn)換部分7和移位寄存器4之間的連接關(guān)系。這個(gè)實(shí)施例被構(gòu)造成使從MSB計(jì)數(shù)的第四位即位12的值被提供給地址轉(zhuǎn)換部分7以代替移位寄存器4的MSB供應(yīng)。
第三個(gè)差別是存儲(chǔ)在數(shù)據(jù)存儲(chǔ)器1中的路徑選擇信號(hào)的位位置。在數(shù)據(jù)存儲(chǔ)器1中,在時(shí)間t處的32位路徑選擇信號(hào)PSt[i](i=0到31)的PSt[i](i=偶數(shù))被存儲(chǔ)在地址“2t+0”處,而PSt[i=奇數(shù)]被存儲(chǔ)在地址“2t+1”處,如圖7A所示。
必須注意的一個(gè)事實(shí)是當(dāng)指示一個(gè)狀態(tài)的數(shù)字i的值由5位二進(jìn)制數(shù)表示和它的LSB是0(i=一個(gè)偶數(shù))以代替MSB時(shí),相應(yīng)的PSt[i]被存儲(chǔ)在數(shù)據(jù)存儲(chǔ)器1的地址“2t+0”處。當(dāng)它的LSB是1(i=一個(gè)奇數(shù))時(shí),相應(yīng)的PSt[i]被存儲(chǔ)在數(shù)據(jù)存儲(chǔ)器1的地址“2t+1”處。為何根據(jù)這個(gè)實(shí)施例移位寄存器4中的MSB不被提供給地址轉(zhuǎn)換部分7的原因在于上述事實(shí)。
為何以從移位寄存器4的MSB開(kāi)始計(jì)數(shù)的第四位數(shù)據(jù)被提供給地址轉(zhuǎn)換部分7以取代第五位數(shù)據(jù)的供應(yīng)的方式來(lái)建立該連接關(guān)系的原因在于下述事實(shí)。
如圖8所示,根據(jù)本實(shí)施例的算術(shù)設(shè)備執(zhí)行流水線結(jié)構(gòu)操作。例如,為了在周期n+1處執(zhí)行移位以遵循命令#1,在周期n的前沿處必須預(yù)先將一個(gè)地址提供給數(shù)據(jù)存儲(chǔ)器1以訪問(wèn)該存儲(chǔ)器。由于在加載有必須在周期n+1處被移位的數(shù)據(jù)的數(shù)據(jù)存儲(chǔ)器1中的地址的LSB是在已經(jīng)執(zhí)行周期n的時(shí)間處從移位寄存器4中的MSB開(kāi)始計(jì)數(shù)的第五位的移入值,所以它被置位于在周期n的前沿端從MSB開(kāi)始計(jì)數(shù)的第四位處。所以,代替第五位的從移位寄存器4中的MSB開(kāi)始計(jì)數(shù)的第四位被連接到地址轉(zhuǎn)換部分7。
存儲(chǔ)在移位寄存器4中的5個(gè)較高位指示一個(gè)在前選擇狀態(tài)。通過(guò)將5個(gè)較高位的4個(gè)較高位反相而得到的值位于路徑選擇信號(hào)被分成一個(gè)偶數(shù)組和一個(gè)奇數(shù)組并被存儲(chǔ)的路徑存儲(chǔ)器中的一個(gè)字中,它指示使對(duì)應(yīng)于在前被選擇路徑信號(hào)的路徑選擇信號(hào)移位到MSB所需的移位量。
處理譯碼數(shù)據(jù)Y[j](j=0到{m-1}),從而使16位被填入到一個(gè)字,然后存儲(chǔ)在數(shù)據(jù)存儲(chǔ)器1中。
當(dāng)執(zhí)行圖8所示的流水線結(jié)構(gòu)計(jì)算操作時(shí),根據(jù)這個(gè)實(shí)施例的具有上述結(jié)構(gòu)的單元能夠利用類(lèi)似于根據(jù)第一實(shí)施例的處理步驟來(lái)執(zhí)行回溯處理。
下面描述回溯處理的步驟。
步驟1“0”被作為初始值存儲(chǔ)在地址寄存器6中。
步驟2固定值“2”被存儲(chǔ)在增量寄存器9中。
步驟3為了開(kāi)始狀態(tài)0,固定值“0”被存儲(chǔ)在移位寄存器4中。
當(dāng)將相鄰值從{(n-1)+5}減小到5時(shí),下一個(gè)步驟4和步驟5被重復(fù)n次。
步驟4地址產(chǎn)生部分10將地址寄存器6中的值輸出給地址轉(zhuǎn)換部分7,并使加法器8將地址寄存器6中的值加到增量寄存器9中的值上,以再次將結(jié)果存儲(chǔ)到地址寄存器6中從而更新該值。地址轉(zhuǎn)換部分7將由地址寄存器6提供的15個(gè)高位值輸出給數(shù)據(jù)存儲(chǔ)器1。此外,地址轉(zhuǎn)換部分7選擇從移位寄存器4中的MSB開(kāi)始計(jì)數(shù)的第4位值以將其作為提供給數(shù)據(jù)存儲(chǔ)器1的地址的LSB輸出。數(shù)據(jù)存儲(chǔ)器1從由地址轉(zhuǎn)換部分7輸出的地址中讀出路徑存儲(chǔ)器PM[i],并將其存儲(chǔ)在內(nèi)部鎖存器(未示出)中。
步驟4′數(shù)據(jù)存儲(chǔ)器1經(jīng)過(guò)總線2向桶形移位器3輸出內(nèi)部鎖存器(未示出)中的值。桶形移位器3執(zhí)行由數(shù)據(jù)轉(zhuǎn)換部分5輸出的5個(gè)位指示的移位量的移位,以向移位寄存器4移位輸入由桶形移位器3輸出的MSB(必須被選擇的路徑選擇信號(hào)接近最高有效位[MSB]。被執(zhí)行移位輸入的移位寄存器4中的[k-1]個(gè)較高位(=5位)指示一個(gè)在前狀態(tài)。此外,[k-1]個(gè)較高位的反相是用于選擇下一個(gè)路徑選擇信號(hào)的移位量的基礎(chǔ)。)。
步驟5每當(dāng)執(zhí)行16位譯碼時(shí),移位寄存器4中的內(nèi)容被一次存儲(chǔ)到數(shù)據(jù)存儲(chǔ)器1中(被選擇和存儲(chǔ)在移位寄存器4中的路徑選擇信號(hào)被變換成譯碼數(shù)據(jù))。
由于步驟4和步驟4′分別對(duì)應(yīng)于圖8所示流水線結(jié)構(gòu)的存儲(chǔ)器訪問(wèn)周期和移位執(zhí)行周期,前述處理被認(rèn)為好象是在一個(gè)步驟中執(zhí)行的。
由于根據(jù)這個(gè)實(shí)施例的算術(shù)設(shè)備被如上所述地構(gòu)成為32位路徑選擇信號(hào)PSt[i](i=0到31)被分成一個(gè)偶數(shù)組和一個(gè)奇數(shù)組并被存儲(chǔ)在數(shù)據(jù)存儲(chǔ)器1中,所以,即使是以流水線方式執(zhí)行該計(jì)算處理,必須被讀出的路徑存儲(chǔ)器的字可以在在前周期時(shí)間處被指示。因此,通過(guò)與第一實(shí)施例類(lèi)似的處理步驟,能夠有效地執(zhí)行回溯處理的流水線處理。
地址轉(zhuǎn)換部分7和移位寄存器4之間連接關(guān)系的設(shè)計(jì)可以被改變以適應(yīng)流水線結(jié)構(gòu)。此外,存儲(chǔ)在數(shù)據(jù)存儲(chǔ)器1中的路徑選擇信號(hào)的位位置可以根據(jù)卷積碼約束長(zhǎng)度k的值改變。例如,如果約束長(zhǎng)度k=7,該位置必須使指示該狀態(tài)的數(shù)字i值的兩個(gè)較低位確定存儲(chǔ)地址,如圖7B所示,地址轉(zhuǎn)換部分7可以以這樣一種方式設(shè)計(jì),即提供移位寄存器4中對(duì)應(yīng)的兩個(gè)位值以對(duì)地址進(jìn)行轉(zhuǎn)換,如圖9所示。
如上所述,根據(jù)這個(gè)實(shí)施例的結(jié)構(gòu)可以被不同地設(shè)計(jì)以適應(yīng)必須被譯碼的卷積碼的約束長(zhǎng)度k和算術(shù)設(shè)備的流水線操作。
根據(jù)第三實(shí)施例的算術(shù)設(shè)備能夠有效地執(zhí)行ACS(加法、比較和選擇)計(jì)算,即加法、比較和選擇操作以及維特比譯碼中的回溯處理。
如圖10所示,根據(jù)這個(gè)實(shí)施例的單元包括與第一實(shí)施例(見(jiàn)圖1)相同的元件1到10,還包括與數(shù)據(jù)存儲(chǔ)器1一起在維特比譯碼處理中使用的用于存儲(chǔ)路徑量度值的數(shù)據(jù)存儲(chǔ)器11;用于存儲(chǔ)支路量度值的寄存器堆20;用于使用存儲(chǔ)在數(shù)據(jù)存儲(chǔ)器1和11中的路徑量度值以及存儲(chǔ)在寄存器堆20中的支路量度值來(lái)執(zhí)行在維特比譯碼處理中的ACS處理的ACS計(jì)算部分13;和連接到數(shù)據(jù)存儲(chǔ)器1用于傳輸數(shù)據(jù)的總線12。
如圖11所示,ACS的計(jì)算部分13具有用于使輸出給總線2和12的路徑量度值與從寄存器堆20輸出給另一個(gè)的支路量度值相加的加法器14和15;用于將分別從加法器14和15輸出的加法結(jié)果進(jìn)行比較以向移位寄存器4和后面將要描述的選擇器19輸出表示比較結(jié)果的一位控制信號(hào)的比較器16;用于暫存分別從加法器14和15的輸出的加法結(jié)果的寄存器17和18;以及根據(jù)從比較器16輸出的控制信號(hào)來(lái)選擇存儲(chǔ)在寄存器17和18中的加法結(jié)果中的一個(gè)較小加法結(jié)果以將該較小加法結(jié)果輸出給總線2或12的選擇器19。
下面描述根據(jù)這個(gè)實(shí)施例的用于執(zhí)行ACS處理的單元的操作。
數(shù)據(jù)存儲(chǔ)器1存儲(chǔ)包括圖17所示路徑量度A的值在內(nèi)的路徑量度值。數(shù)據(jù)存儲(chǔ)器11存儲(chǔ)包括圖17所示的路徑量度B的值在內(nèi)的路徑量度值,寄存器堆20存儲(chǔ)包括支路量度x和y在內(nèi)的轉(zhuǎn)換量度值。
ACS計(jì)算部分13的加法器14使從數(shù)據(jù)存儲(chǔ)器1經(jīng)過(guò)總線2讀出的路徑量度A的值和從寄存器堆20讀出的支路量度x的值彼此相加,以向比較器16輸出加法結(jié)果,并將該結(jié)果存儲(chǔ)在寄存器18中。加法器15使從數(shù)據(jù)存儲(chǔ)器11經(jīng)過(guò)總線12輸出的路徑量度B的值和支路量度y的值彼此相加,以向比較器16輸出加法結(jié)果,并將該結(jié)果存儲(chǔ)在寄存器17中。
比較器16向移位寄存器4和選擇器19輸出一個(gè)一位控制信號(hào),當(dāng)從加法器14輸出的加法結(jié)果小于從另一個(gè)加法器15輸出的值時(shí),這個(gè)一位控制信號(hào)是“0”,而當(dāng)從加法器15輸出的加法結(jié)果小于從另一個(gè)加法器14輸出的值時(shí),這個(gè)一位控制信號(hào)是“1”當(dāng)該控制信號(hào)的值是“0”時(shí),選擇器19選擇寄存器18,當(dāng)該控制信號(hào)的值是“1”時(shí),選擇器19選擇寄存器17,以將存儲(chǔ)在每個(gè)寄存器中的值經(jīng)過(guò)總線2或12存儲(chǔ)到數(shù)據(jù)存儲(chǔ)器1或11中。
移位寄存器4移動(dòng)一位存儲(chǔ)從比較器16輸出的控制信號(hào),即路徑選擇信號(hào)。
上述操作用于一次ACS計(jì)算。
在必須被譯碼的卷積碼約束長(zhǎng)度k=6的示例情況下,上述處理被重復(fù)32次,從而能夠執(zhí)行對(duì)被接收串一個(gè)字符的ACS計(jì)算。此時(shí),選擇器19在存儲(chǔ)器1中存儲(chǔ)它的輸出,直到在第一階段內(nèi)的16次操作完成為止。存儲(chǔ)在移位寄存器4中的路徑選擇信號(hào)經(jīng)過(guò)總線2被存儲(chǔ)到數(shù)據(jù)存儲(chǔ)器1。下一個(gè)16次ACS計(jì)算被執(zhí)行,從而使選擇器19將它的輸出經(jīng)過(guò)總線12存儲(chǔ)到數(shù)據(jù)存儲(chǔ)器11。存儲(chǔ)在比較器16中的較后部分中的路徑選擇信號(hào)的16位被經(jīng)過(guò)總線2存儲(chǔ)在數(shù)據(jù)存儲(chǔ)器1中。
其結(jié)果如圖3A所示,路徑選擇信號(hào)被存儲(chǔ)在數(shù)據(jù)存儲(chǔ)器1中。對(duì)被接收串的n個(gè)字符重復(fù)上述對(duì)被接收串一個(gè)字符的ACS計(jì)算。
然后,根據(jù)在第一實(shí)施例中所描述的過(guò)程執(zhí)行回溯處理,以便執(zhí)行維特比譯碼處理。
如上所述,根據(jù)這個(gè)實(shí)施例的算術(shù)設(shè)備具有當(dāng)執(zhí)行ACS計(jì)算時(shí)移位寄存器4每次一位地順序存儲(chǔ)從ACS計(jì)算部分13輸出的路徑選擇信號(hào)的結(jié)構(gòu)。因此能夠有效地執(zhí)行ACS計(jì)算和回溯處理。由于移位寄存器4能夠在ACS計(jì)算和回溯處理中被共用,因此可減小LSI的面積,如果采用LSI來(lái)實(shí)現(xiàn)該算術(shù)設(shè)備的話,單元成本即可降低。由于減少了執(zhí)行步驟,可以降低運(yùn)行頻率。因此,可以減少整個(gè)算術(shù)設(shè)備的耗電。
根據(jù)第四實(shí)施例的算術(shù)設(shè)備被構(gòu)造成在維特比譯碼中執(zhí)行一個(gè)ACS計(jì)算以使圖7A所示路徑選擇信號(hào)能夠被存儲(chǔ)。
如圖12所示,根據(jù)這個(gè)實(shí)施例的單元具有用于存儲(chǔ)從ACS計(jì)算部分13輸出的路徑選擇信號(hào)的第二移位寄存器21。其它的結(jié)構(gòu)與第三實(shí)施例(見(jiàn)圖10)相同。
除了用于存儲(chǔ)路徑選擇信號(hào)的處理以外,根據(jù)這個(gè)實(shí)施例的單元執(zhí)行與根據(jù)第三實(shí)施例的單元相同的操作。用于存儲(chǔ)路徑選擇信號(hào)的處理如下執(zhí)行。
在必須被譯碼的卷積碼的約束長(zhǎng)度k=6的情況下,在第三實(shí)施例中描述的ACS計(jì)算操作被重復(fù)32次。此時(shí),從ACS計(jì)算部分13輸出的路徑選擇信號(hào)被交替地并每次一位地存儲(chǔ)在移位寄存器4和移位寄存器21中。即,當(dāng)執(zhí)行偶數(shù)操作時(shí),路徑選擇信號(hào)被存儲(chǔ)在移位寄存器4中。當(dāng)執(zhí)行奇數(shù)操作時(shí),路徑選擇信號(hào)被存儲(chǔ)在移位寄存器21中。在ACS計(jì)算被執(zhí)行32次之后,最終存儲(chǔ)在移位寄存器4和21中的路徑選擇信號(hào)被經(jīng)過(guò)總線2順序存儲(chǔ)在數(shù)據(jù)存儲(chǔ)器1中。
此時(shí),路徑選擇信號(hào)被如圖7A所示地存儲(chǔ)。因此,對(duì)被接收串的n個(gè)字符重復(fù)對(duì)被接收串一個(gè)字符的ACS計(jì)算,然后根據(jù)在第二實(shí)施例中所描述的過(guò)程來(lái)執(zhí)行回溯處理,從而執(zhí)行維特比譯碼處理。
如上所述,根據(jù)這個(gè)實(shí)施例的算術(shù)設(shè)備是這樣構(gòu)成的,即當(dāng)執(zhí)行ACS計(jì)算時(shí),移位寄存器4和移位寄存器21交替地和每次一位地存儲(chǔ)從ACS計(jì)算部分13輸出的路徑選擇信號(hào)。因此,在第二實(shí)施例中描述并具有流水線結(jié)構(gòu)的處理器能夠有效執(zhí)行ACS計(jì)算以及回溯處理。
由于移位寄存器4能夠在ACS計(jì)算和回溯處理中共用,所以,當(dāng)該單元由一個(gè)LSI形成時(shí),該LSI芯片的面積可以被減少,從而降低了成本。由于可減少執(zhí)行步驟,所以,運(yùn)行頻率能夠被降低。因此,整個(gè)算術(shù)設(shè)備的功耗可以被降低。
雖然在這個(gè)實(shí)施例中提供了移位寄存器4和21,但可以增加移位寄存器的數(shù)量。如果提供例如4個(gè)移位寄存器,執(zhí)行當(dāng)必須被譯碼的卷積碼約束長(zhǎng)度k=7時(shí)執(zhí)行的ACS計(jì)算,從而將路徑選擇信號(hào)的每一位順序地存儲(chǔ)到移位寄存器中;并最終將相同的內(nèi)容順序地存儲(chǔ)到數(shù)據(jù)存儲(chǔ)器1中。在這種情況下,路徑選擇信號(hào)被如圖7B所示地存儲(chǔ)。
根據(jù)第五實(shí)施例的算術(shù)設(shè)備是通過(guò)對(duì)根據(jù)第三和第四實(shí)施例的ACS計(jì)算部分的加法器作出改進(jìn)而構(gòu)成的。
根據(jù)這個(gè)實(shí)施例的單元是這樣構(gòu)成的,即ACS使計(jì)算部分13具有兩個(gè)寬度為32位的加法器22,從而執(zhí)行4個(gè)數(shù)據(jù)項(xiàng)的加法,以同時(shí)和并行地執(zhí)行較高部分的相加和較低部分的相加。因此,可以實(shí)現(xiàn)與由圖11所示結(jié)構(gòu)執(zhí)行的操作類(lèi)似的操作。即根據(jù)本發(fā)明的加法器能夠用做兩個(gè)16位的加法器。
如圖14所示,加法器22包括32個(gè)全加器。其中的每個(gè)全加器執(zhí)行0到31的相應(yīng)位的加法。用于位0的全加器使輸入X
和輸入Y
彼此相加以輸出沒(méi)有進(jìn)位的和O
以及進(jìn)位信號(hào)Ci
,用于位31的全加器使輸入X[31]、Y[31]和在前進(jìn)位信號(hào)Ci[30]彼此相加以輸出沒(méi)有進(jìn)位的和O[31],用于位1到位30的每個(gè)全加器使輸入X、輸入Y以及在前進(jìn)位信號(hào)Ci彼此相加以輸出沒(méi)有進(jìn)位的和0以及進(jìn)位信號(hào)Ci。
只有從用于位1 5的全加器輸出的進(jìn)位信號(hào)Co[15]被提供給一個(gè)與電路,以便被作為進(jìn)位信號(hào)Ci[15]經(jīng)過(guò)該與電路輸出給用于位16的下一個(gè)全加器。該與電路還接收由一個(gè)控制部分(未示出)提供的控制信號(hào)。因此,控制信號(hào)禁止該進(jìn)位信號(hào)向下一個(gè)加法器的傳送。
從功能的角度來(lái)看,用于位0到15的全加器對(duì)應(yīng)于圖11所示的加法器14。用于位16到位31的全加器對(duì)應(yīng)于圖11所示的加法器15。
當(dāng)執(zhí)行ACS計(jì)算時(shí),提供給該與電路的控制信號(hào)的值是0,從而使由用于位15的全加器輸出的進(jìn)位信號(hào)的傳送被禁止。在這個(gè)狀態(tài)下,可以通過(guò)與第三或第四實(shí)施例相同的操作來(lái)執(zhí)行維特比譯碼。
當(dāng)該控制信號(hào)是1時(shí),加法器22被用做普通32位加法器。通常,DSP上設(shè)有一個(gè)作為累加器使用的位寬大于32位的加法器。加法器22可以被用做該累加器。
如上所述,根據(jù)這個(gè)實(shí)施例的算術(shù)設(shè)備能夠有效執(zhí)行ACS計(jì)算處理以及回溯處理。此外,所安裝的加法器22能夠被共用于執(zhí)行維特比譯碼和累加。
因此,當(dāng)利用一個(gè)LSI形成一個(gè)算術(shù)設(shè)備時(shí),該LSI芯片的面積被減小,因此單元成本也被降低。
圖19的框圖示出了使用根據(jù)上述第一到第五實(shí)施例中一個(gè)的算術(shù)設(shè)備的數(shù)字信號(hào)處理器(DSP)。根據(jù)第六實(shí)施例,DSP 60包括根據(jù)如前所述第一到第五實(shí)施例中一個(gè)的算術(shù)設(shè)備61;連接到算術(shù)設(shè)備61上的乘法-累加計(jì)算部分62;連接到算術(shù)設(shè)備61上用于從/向外部輸入和輸出數(shù)據(jù)的輸入-輸出部分63;和用于控制算術(shù)設(shè)備61、乘法-累加計(jì)算部分62和輸入-輸出部分63的控制部分64。
根據(jù)第六實(shí)施例,該DSP能夠在不需要放大數(shù)據(jù)存儲(chǔ)器和總線的位寬的情況下迅速和有效地執(zhí)行用于維特比譯碼的回溯處理。
圖20的框圖示出了使用其中包括上述第一到第五實(shí)施例中一個(gè)的算術(shù)設(shè)備的數(shù)字信號(hào)處理器的無(wú)線移動(dòng)臺(tái)設(shè)備。
在圖20中,無(wú)線移動(dòng)臺(tái)設(shè)備包括天線部分710;無(wú)線電部分720;具有用于對(duì)信號(hào)編碼和譯碼的DSP 740的基帶信號(hào)處理部分730;控制部分760;揚(yáng)聲器751;麥克風(fēng)752,數(shù)據(jù)輸入-輸出部分753;顯示部分754;和操作部分755。無(wú)線電部分720包括用于從天線部分710接收一個(gè)接收信號(hào)并將該接收信號(hào)傳輸給基帶信號(hào)處理部分730的接收部分721;和用于接收來(lái)自該基帶信號(hào)處理部分的發(fā)射信號(hào)并將該發(fā)射信號(hào)傳輸給天線部分710的發(fā)射部分722?;鶐盘?hào)處理部分730包括用于對(duì)來(lái)自接收部分721的接收信號(hào)解調(diào)的解調(diào)部分731;用于對(duì)發(fā)射信號(hào)進(jìn)行調(diào)制的調(diào)制部分735;和用于執(zhí)行編碼和譯碼的DSP 740。DSP 740包括時(shí)序控制部分741;維特比譯碼部分742;卷積譯碼部分743;和聲音編譯碼器部分744。
控制部分760控制電線部分710、無(wú)線電部分720、基帶信號(hào)處理部分730、顯示部分754和操作部分755等,從而使控制部分760控制該無(wú)線移動(dòng)臺(tái)設(shè)備的總體操作。例如,控制部分760進(jìn)行控制以使從自操作部分755輸入的信號(hào)顯示在顯示部分754上,并響應(yīng)從告操作部分輸入的信號(hào),用于執(zhí)行呼叫發(fā)射和接收操作的控制信號(hào)被根據(jù)通信順序輸出給天線部分710、無(wú)線電部分720、基帶信號(hào)處理部分730等。
在上述無(wú)線移動(dòng)臺(tái)設(shè)備700中,利用根據(jù)第一到第五實(shí)施例的處理單元或根據(jù)第六實(shí)施例的DSP可以實(shí)現(xiàn)該基帶信號(hào)處理部分的至少一部分。
下面將描述上述無(wú)線移動(dòng)臺(tái)設(shè)備的發(fā)射部分的操作。
當(dāng)執(zhí)行聲音通信時(shí),從麥克風(fēng)輸入的聲音信號(hào)被進(jìn)行模擬-數(shù)字轉(zhuǎn)換(未示出),然后由DSP 740的編譯碼器部分744譯碼。譯碼數(shù)據(jù)被輸入給卷積譯碼部分743。當(dāng)執(zhí)行數(shù)據(jù)通信時(shí),從外部輸入的數(shù)據(jù)經(jīng)過(guò)數(shù)據(jù)輸入-輸出部分753輸入給卷積編碼部分743。
卷積編碼部分743對(duì)輸入數(shù)據(jù)進(jìn)行卷積編碼并輸出編碼數(shù)據(jù)。
時(shí)序控制部分741重新排列輸入數(shù)據(jù)并調(diào)節(jié)發(fā)射輸出時(shí)序以向調(diào)制部分735輸出結(jié)果。
在調(diào)制部分735被進(jìn)行了數(shù)字調(diào)制的數(shù)據(jù)被進(jìn)行數(shù)字-模擬轉(zhuǎn)換。然后,輸出給無(wú)線電部分720的發(fā)射部分722。
發(fā)射部分722將該信號(hào)轉(zhuǎn)換成無(wú)線電信號(hào),以將該信號(hào)發(fā)射給該天線部分,從而使該信號(hào)被作為無(wú)線電波發(fā)射。
下面描述接收部分。由天線部分710接收的電波被無(wú)線電部分720的接收部分721接收,并進(jìn)行模擬-數(shù)字轉(zhuǎn)換以向該基帶信號(hào)處理部分的解調(diào)部分731輸出。由解調(diào)部分731解調(diào)的數(shù)據(jù)被重新排列并被輸入給維特比譯碼部分742。
當(dāng)執(zhí)行聲音通信時(shí),由維特比譯碼部分742譯碼的數(shù)據(jù)在聲音編譯碼器744中被聲音譯碼,然后被進(jìn)行數(shù)字-模擬轉(zhuǎn)換以經(jīng)過(guò)揚(yáng)聲器751作為聲音輸出。另一方面,當(dāng)執(zhí)行數(shù)據(jù)通信時(shí),數(shù)據(jù)經(jīng)過(guò)數(shù)據(jù)輸入-輸出部分753被輸出給外部。
圖21示出了根據(jù)本發(fā)明無(wú)線移動(dòng)臺(tái)設(shè)備的變型。在這個(gè)無(wú)線移動(dòng)臺(tái)設(shè)備中,在調(diào)制部分735中提供了一個(gè)擴(kuò)展(spreading)部分737,和在解調(diào)部分73 1中提供了一個(gè)解擴(kuò)(despreading)部分733。由于擴(kuò)展部分735和解擴(kuò)部分733的提供,CDMA(code division multiple acess碼分多址)通信變得可能。
圖22的框圖示出了使用其中包括根據(jù)上述第一到第五實(shí)施例中一個(gè)的算術(shù)設(shè)備的數(shù)字信號(hào)處理器(DSP)的無(wú)線基地臺(tái)設(shè)備。
圖22所示的無(wú)線基地臺(tái)設(shè)備具有基本相同的結(jié)構(gòu)。其包括天線部分810;無(wú)線電部分820;具有用于對(duì)信號(hào)進(jìn)行編碼和譯碼的DSP 840的基帶信號(hào)處理部分830;控制部分860;和數(shù)據(jù)輸入-輸出部分853。
無(wú)線基地臺(tái)設(shè)備的天線部分810包括只用于接收的接收天線811和只用于發(fā)射的發(fā)射天線812。
圖23示出了根據(jù)本發(fā)明無(wú)線基地臺(tái)設(shè)備的改進(jìn)。在這個(gè)無(wú)線基地臺(tái)設(shè)備中,在調(diào)制部分835中提供了一個(gè)擴(kuò)展部分837,和在解調(diào)部分831中提供了一個(gè)解擴(kuò)部分833。由于提供了擴(kuò)展部分837和解擴(kuò)部分833,所以,CDMA(碼分多址)通信變得可能。
從上面的敘述可以看出,根據(jù)本發(fā)明的算術(shù)設(shè)備能夠迅速和有效地執(zhí)行用于維特比譯碼的回溯處理而不必放大數(shù)據(jù)存儲(chǔ)器和總線的位寬。
此外,一種用于向它的移位寄存器輸入通過(guò)ACS計(jì)算獲得的路徑選擇信號(hào)的單元在避免電路尺寸放大的同時(shí)能夠有效地和以互聯(lián)方式執(zhí)行ACS計(jì)算和用于維特比譯碼的回溯處理。
能夠使用于累加中的ACS計(jì)算中的加法器共用的單元有效地使用該電路。
當(dāng)使用LSI形成該單元時(shí),上述單元能夠減少芯片的面積。因此,能夠?qū)崿F(xiàn)降低成本和減少耗電。
此外,上述算術(shù)設(shè)備能夠被用于形成一個(gè)DSP。此外,如果這個(gè)DSP處理器被用做糾錯(cuò)電路以形成無(wú)線移動(dòng)臺(tái)設(shè)備或無(wú)線基地臺(tái)設(shè)備,它能夠迅速和有效地執(zhí)行用于信號(hào)處理和通信中維特比譯碼的回溯處理。
權(quán)利要求
1.一種算術(shù)設(shè)備,包括數(shù)據(jù)存儲(chǔ)器,用于以同一時(shí)間處的路徑選擇信號(hào)被分成多個(gè)組的方式存儲(chǔ)路徑選擇信號(hào);桶形移位器,用于移位從所述數(shù)據(jù)存儲(chǔ)器中讀出的數(shù)據(jù);移位寄存器,用于接收由所述桶形移位器移位到MSB的一個(gè)位;數(shù)據(jù)轉(zhuǎn)換裝置,用于通過(guò)對(duì)在所述移位寄存器中規(guī)定位位置處置位的數(shù)據(jù)進(jìn)行轉(zhuǎn)換以執(zhí)行用于產(chǎn)生由所述桶形移位器執(zhí)行的移位量的維特比譯碼處理來(lái)產(chǎn)生由所述桶形移位器執(zhí)行的移位量;地址產(chǎn)生裝置,用于輸出所述數(shù)據(jù)存儲(chǔ)器中的地址;和地址轉(zhuǎn)換裝置,用于根據(jù)從所述地址產(chǎn)生裝置輸出的地址和所述移位寄存器中規(guī)定位位置的值來(lái)產(chǎn)生從所述數(shù)據(jù)存儲(chǔ)器中讀出的所述組的地址。
2.根據(jù)權(quán)利要求1所述的算術(shù)設(shè)備,其中所述路徑選擇信號(hào)被分成多個(gè)組,以便使分別被提供給所述路徑選擇信號(hào)的多個(gè)后綴在所述組中持續(xù),和所述地址轉(zhuǎn)換裝置使用從所述地址產(chǎn)生裝置輸出的地址和包括位于所述移位寄存器一個(gè)輸入端處的一個(gè)位在內(nèi)的預(yù)定數(shù)量位的位置值來(lái)產(chǎn)生所述組的地址。
3.根據(jù)權(quán)利要求2所述的算術(shù)設(shè)備,其中所述數(shù)據(jù)轉(zhuǎn)換裝置將除了位于所述移位寄存器一個(gè)輸入端處的一個(gè)位以外的預(yù)定數(shù)量位的位置值反相。
4根據(jù)權(quán)利要求1所述的算術(shù)設(shè)備,其中所述路徑選擇信號(hào)被分成多個(gè)組,以便使分別被提供給所述路徑選擇信號(hào)的多個(gè)后綴保持所述組的預(yù)定差,和所述地址轉(zhuǎn)換裝置使用從所述地址產(chǎn)生裝置輸出的地址和除了位于所述移位寄存器一個(gè)輸入端處的一個(gè)位以外的預(yù)定數(shù)量位的位置值來(lái)產(chǎn)生所述組的地址。
5.根據(jù)權(quán)利要求4所述的算術(shù)設(shè)備,其中所述數(shù)據(jù)轉(zhuǎn)換裝置將包括位于所述移位寄存器一個(gè)輸入端處的一個(gè)位在內(nèi)的預(yù)定數(shù)量位的位置值反相以產(chǎn)生由所述桶形移位器執(zhí)行的移位量。
6.根據(jù)權(quán)利要求4所述的算術(shù)設(shè)備,其中所述地址轉(zhuǎn)換裝置從所述移位寄存器中一個(gè)位的預(yù)定位置和在超前于所述組的一個(gè)組被從所述數(shù)據(jù)存儲(chǔ)器中讀出的時(shí)候獲得產(chǎn)生所述組地址所需的并由所述移位寄存器提供的值。
7.根據(jù)權(quán)利要求2所述的算術(shù)設(shè)備,還包括用于執(zhí)行維特比譯碼中的加法、比較和選擇操作的ACS處理裝置,其中從所述ACS處理裝置輸出的路徑選擇信號(hào)被順序地存儲(chǔ)在所述移位寄存器中,并在所述組的路徑選擇信號(hào)已經(jīng)被存儲(chǔ)在所述移位寄存器中之后,所述路徑選擇信號(hào)位于每個(gè)組中,并被移位和存儲(chǔ)到所述數(shù)據(jù)存儲(chǔ)器中。
8.根據(jù)權(quán)利要求4所述的算術(shù)設(shè)備,還包括用于執(zhí)行維特比譯碼中的加法、比較和選擇操作的ACS處理裝置,其中從所述ACS處理裝置輸出的路徑選擇信號(hào)被順序地存儲(chǔ)在包括所述移位寄存器的多個(gè)移位寄存器中,并在所述組的路徑選擇信號(hào)已經(jīng)被存儲(chǔ)在所述移位寄存器中之后,所述路徑選擇信號(hào)位于每個(gè)組中,并被移位和存儲(chǔ)在所述數(shù)據(jù)存儲(chǔ)器中。
9.根據(jù)權(quán)利要求7所述的算術(shù)設(shè)備,其中所述ACS處理裝置具有由多個(gè)全加器組成的加法裝置,并允許從所述全加器的一部分輸出的進(jìn)位信號(hào)傳送給下一個(gè)全加器,從而允許所述加法裝置被用做一個(gè)或多個(gè)累加器。
10.根據(jù)權(quán)利要求8所述的算術(shù)設(shè)備,其中所述ACS處理裝置具有由多個(gè)全加器組成的加法裝置,并允許從所述全加器的一部分輸出的進(jìn)位信號(hào)傳送給下一個(gè)全加器,從而允許所述加法裝置被用做一個(gè)或多個(gè)累加器。
11.一種數(shù)字信號(hào)處理器,包括算術(shù)設(shè)備;乘法-累加計(jì)算部分,其連接到所述算術(shù)設(shè)備上;輸入輸出部分,其連接到所述算術(shù)設(shè)備上,用于從和向外部輸入和輸出數(shù)據(jù);和控制部分,用于控制所述算術(shù)設(shè)備、所述乘法-累加計(jì)算部分和所述輸入輸出部分;其中所述算術(shù)設(shè)備包括數(shù)據(jù)存儲(chǔ)器,用于以同一時(shí)間處的路徑選擇信號(hào)被分成多個(gè)組的方式存儲(chǔ)路徑選擇信號(hào);桶形移位器,用于移位從所述數(shù)據(jù)存儲(chǔ)器讀出的數(shù)據(jù);移位寄存器,用于接收由所述桶形移位器移位到MSB的一個(gè)位;數(shù)據(jù)轉(zhuǎn)換裝置,用于通過(guò)對(duì)在所述移位寄存器中規(guī)定位位置處置位的數(shù)據(jù)進(jìn)行轉(zhuǎn)換以執(zhí)行用于產(chǎn)生由所述桶形移位器執(zhí)行的移位量的維特比譯碼處理來(lái)產(chǎn)生由所述桶形移位器執(zhí)行的移位量;地址產(chǎn)生裝置,用于輸出所述數(shù)據(jù)存儲(chǔ)器中的地址;和地址轉(zhuǎn)換裝置,用于根據(jù)從所述地址產(chǎn)生裝置輸出的地址和所述移位寄存器中規(guī)定位位置的值來(lái)產(chǎn)生從所述數(shù)據(jù)存儲(chǔ)器讀出的所述組的地址。
12.一種無(wú)線臺(tái)設(shè)備,包括天線部分,用于接收和發(fā)射信號(hào);無(wú)線電部分,包括用于接收來(lái)自所述天線部分的接收信號(hào)的接收部分,和用于向所述天線部分傳送發(fā)射信號(hào)的發(fā)射部分;基帶信號(hào)處理部分,包括用于對(duì)來(lái)自所述接收部分的接收信號(hào)進(jìn)行解調(diào)的解調(diào)部分、用于對(duì)發(fā)射信號(hào)進(jìn)行調(diào)制的調(diào)制部分、和用于執(zhí)行編碼和譯碼的數(shù)字信號(hào)處理器;控制部分,用于控制所述天線部分,所述無(wú)線電部分和所述基帶信號(hào)處理部分;和輸入-輸出部分,用于從和向外部輸入和輸出所述信號(hào);其中所述基帶信號(hào)處理部分包括一個(gè)算術(shù)設(shè)備,所述算術(shù)設(shè)備包括數(shù)據(jù)存儲(chǔ)器,用于以在相同時(shí)間處的路徑選擇信號(hào)被分成多個(gè)組的方式存儲(chǔ)路徑選擇信號(hào);桶形移位器,用于移位從所述數(shù)據(jù)存儲(chǔ)器讀出的數(shù)據(jù);移位寄存器,用于接收由所述桶形移位器移位到MSB的一個(gè)位;數(shù)據(jù)轉(zhuǎn)換裝置,用于通過(guò)對(duì)在所述移位寄存器中規(guī)定位位置處置位的數(shù)據(jù)進(jìn)行轉(zhuǎn)換以執(zhí)行用于產(chǎn)生由所述桶形移位器執(zhí)行的移位量的維特比譯碼處理來(lái)產(chǎn)生由所述桶形移位器執(zhí)行的移位量;地址產(chǎn)生裝置,用于輸出所述數(shù)據(jù)存儲(chǔ)器中的地址;和地址轉(zhuǎn)換裝置,用于根據(jù)從所述地址產(chǎn)生裝置輸出的地址和所述移位寄存器中規(guī)定位位置的值來(lái)產(chǎn)生從所述數(shù)據(jù)存儲(chǔ)器讀出的所述組的地址。
13.根據(jù)權(quán)利要求12所述的無(wú)線臺(tái)設(shè)備,其中所述調(diào)制部分具有一個(gè)擴(kuò)展部分,和所述解調(diào)部分具有一個(gè)解擴(kuò)部分;和其中所述無(wú)線臺(tái)執(zhí)行CDMA(碼分多址)通信。
14.根據(jù)權(quán)利要求12所述的無(wú)線臺(tái)設(shè)備,其中經(jīng)過(guò)所述輸入-輸出部分輸入或輸出的所述信號(hào)是聲音信號(hào),和所述輸入輸出部分包括用于將聲音信號(hào)轉(zhuǎn)換成電信號(hào)和將所述電信號(hào)轉(zhuǎn)換成聲音信號(hào)的轉(zhuǎn)換裝置,和所述無(wú)線臺(tái)設(shè)備是無(wú)線移動(dòng)臺(tái)設(shè)備。
15.根據(jù)權(quán)利要求12所述的無(wú)線臺(tái)設(shè)備,其中所述無(wú)線臺(tái)設(shè)備是無(wú)線基地臺(tái)設(shè)備。
全文摘要
一種算術(shù)設(shè)備,包括用于存儲(chǔ)路徑選擇信號(hào)的存儲(chǔ)器、用于移位從該存儲(chǔ)器讀出的數(shù)據(jù)的桶形移位器、用于接收由桶形移位器移位到MSB的一個(gè)位的移位寄存器、用于通過(guò)對(duì)在移位寄存器中規(guī)定位位置處置位的數(shù)據(jù)進(jìn)行轉(zhuǎn)換來(lái)產(chǎn)生由桶形移位器執(zhí)行的移位量的裝置、用于輸出地址的地址產(chǎn)生裝置、用于通過(guò)該地址和在移位寄存器中規(guī)定位位置的值相結(jié)合而產(chǎn)生必須被讀出的組的地址。因此,在維特比譯碼中的回溯處理可以用小位寬執(zhí)行。
文檔編號(hào)H03M13/41GK1182909SQ9712257
公開(kāi)日1998年5月27日 申請(qǐng)日期1997年10月15日 優(yōu)先權(quán)日1996年10月15日
發(fā)明者石川利広, 鈴木秀俊 申請(qǐng)人:松下電器產(chǎn)業(yè)株式會(huì)社