朱志慧,陳 曈
(浙江音樂(lè)學(xué)院 公共基礎(chǔ)部,浙江 杭州 310024)
?
TERRA集群DSP Core平衡算法
朱志慧,陳 曈
(浙江音樂(lè)學(xué)院 公共基礎(chǔ)部,浙江 杭州 310024)
摘 要:TETRA系統(tǒng)基于DSP的硬件平臺(tái)中,信道編碼需要大量的運(yùn)算,而且需要在1ms以?xún)?nèi)完成。為了改進(jìn)DSP core的利用率,文章提出一種改進(jìn)的算法,該算法基于MPR,對(duì)于已分配好的編碼字在做新的分配之前,進(jìn)行簡(jiǎn)單的core調(diào)整。論文描述了算法的實(shí)現(xiàn)以及如何分配PDSCH資源,與固定的資源分配的方法相比,對(duì)一些多用戶(hù)多流模擬結(jié)果顯示DSP core利用率得到了改進(jìn)。
關(guān)鍵字:DSP Core;傳輸塊大?。焕寐?/p>
陸地集群無(wú)線(xiàn)電系統(tǒng)(TETRA),包括雙向無(wú)線(xiàn)電對(duì)講機(jī)、移動(dòng)電話(huà)、字符報(bào)文傳送等方面,是面向下一代數(shù)字式移動(dòng)通信的開(kāi)放式標(biāo)準(zhǔn)之一。在TETRA系統(tǒng)中,信道編碼是由兩個(gè)DSP core完成的。而DSP不可能在每一個(gè)core上用一個(gè)編碼字來(lái)編碼全速率的數(shù)據(jù)[1],PDSCH分配過(guò)程中,調(diào)度者選擇調(diào)制編碼機(jī)制MCS為每個(gè)用戶(hù)選擇一定數(shù)量資源塊。要在每個(gè)邏輯信道上完成這個(gè)分配,同時(shí)邏輯信道最大數(shù)量為80,因此需要找到一種簡(jiǎn)單有效的方法來(lái)實(shí)現(xiàn)core上負(fù)載的平衡,以使得兩個(gè)DSP core得到充分利用又不會(huì)出現(xiàn)過(guò)載的問(wèn)題。
在TETRA系統(tǒng)中每個(gè)DSP core的編碼能力假定為MAX_ CORE_TBS。一個(gè)用戶(hù)僅使用一個(gè)編碼字,在DSP傳輸塊大小的能力范圍內(nèi),編碼字可以被分配到任何core上,而且兩個(gè)傳輸塊可以一起被分配到一個(gè)core上或者兩個(gè)不同的core,而且每個(gè)core上分配的傳輸塊不能大于MAX_CORE_ TBS。
目前現(xiàn)有兩種的簡(jiǎn)單實(shí)現(xiàn)方法,一種為在選好MCS和一個(gè)編碼字的傳輸塊大小得到確定以后,在DSP達(dá)到MAX_ CORE_TBS之前,放編碼字到一個(gè)DSP core中,然后再試著放剩下的編碼字到另外一個(gè)core中。這個(gè)方法的缺點(diǎn)是一個(gè)編碼字的傳輸塊大小或許會(huì)超過(guò)DSP core的能力范圍,這樣就得重新選擇MCS。一個(gè)改進(jìn)的方法是在MCS選擇之前,記錄下比較大剩余的傳輸塊大小以及把它作為MCS重新選擇的限制條件。然而受限制的用戶(hù)有兩個(gè)編碼字,卻僅能把他們分配到一個(gè)core上,而不能同時(shí)使用兩個(gè)DSP core。
另外一個(gè)方法是,固定分配編碼字1給DSP core1和固定分配編碼字2給DSP core2。這樣就會(huì)造成:用戶(hù)僅有一個(gè)編碼字,core1總將給它編碼,卻不能充分利用core2[2]。對(duì)有著兩個(gè)編碼字的用戶(hù)來(lái)說(shuō),假如其中一個(gè)DSP core僅有少量的傳輸塊大小,另一個(gè)core有非常大的傳輸塊大小,卻都僅僅只能允許分配非常小的MCS以及得到非常少的傳輸塊大小。
2.1 改進(jìn)的算法
為了充分利用兩個(gè)DSP core,提出一種改進(jìn)的算法來(lái)解決現(xiàn)有方法中遇到的難題。假如提前分配好這些需要分配的編碼字以及使它適合下次分配的話(huà),下次分配將變得相對(duì)容易。
圖1 core1少剩余以及core2多空余
對(duì)于僅有一個(gè)編碼字的用戶(hù)來(lái)說(shuō),僅需要兩個(gè)core擁有比較大傳輸塊大小的那個(gè)core。如圖1所示,Core1上大部分都已經(jīng)分配完了編碼字,而core2上有大量的空閑傳輸塊可以用于下次傳輸。
圖2 約等于MPR1/MPR2的core狀態(tài)
對(duì)于有兩個(gè)編碼字的用戶(hù)來(lái)說(shuō),需要兩個(gè)core剩余的傳輸塊大小TBScore1/TBScore2。它大約等于MPR1/MPR2。這是因?yàn)閮蓚€(gè)編碼字有它們各自的信道質(zhì)量。根據(jù)信道質(zhì)量的不同,調(diào)度者將會(huì)為每個(gè)編碼字選擇不同編碼率。MPR是評(píng)估編碼率的參數(shù)。兩個(gè)編碼字將會(huì)使用相同的資源塊編號(hào)來(lái)進(jìn)行分配,因此它們分配的傳輸塊大小TBScw1/TBScw2基本上和MPR1/MPR2相同。例如,假如編碼字節(jié)1分配到X*MPR1字節(jié),編碼字2將分配到大約X*MPR2。圖2展示了預(yù)分配的結(jié)果:core1上空閑的傳輸塊大小和core2上空閑的傳輸塊大小比例大約為5/4,同時(shí)MPR1/MPR2 = 5/3。Core2將有少量的傳輸塊大小不能使用在下次分配上。假如core1上空閑的傳輸塊大小和core2上空閑的傳輸塊大小比例大約為5/3,它看似可能充分利用兩個(gè)core。
然而,事實(shí)上它也沒(méi)有充分利用core。因此,進(jìn)一步的優(yōu)化方案是必要的,同時(shí)提前分配算法不應(yīng)該太復(fù)雜,應(yīng)該容易實(shí)現(xiàn)才行。
2.2 實(shí)現(xiàn)方法
使用兩個(gè)list來(lái)記錄已經(jīng)分配給兩個(gè)core的編碼字。List按照它們分配的傳輸塊大小升序排列。假如下一個(gè)分配的用戶(hù)僅有一個(gè)編碼字,首先在list1上放所有的編碼字,直到core1超過(guò)了限制。然后再移動(dòng)第一個(gè)編碼字(用最小的傳輸塊大?。┑絣ist2。提前分配可以使得core2擁有最大化的空閑傳輸塊大小,這樣方便下次傳輸。
假設(shè)下一個(gè)分配的用戶(hù)有兩個(gè)編碼字,首先運(yùn)算空閑TBS1/空閑TBS2,同時(shí)比較MPR1/MPR2。如果開(kāi)始時(shí)空閑TBS1/空閑TBS2 得到一個(gè)最小化的abs(FreeTBS1/FreeTBS2-MPR1/ MPR2) 雖然不是最完美的方法,但是它非常接近于完美。然而它也將花費(fèi)一定運(yùn)算時(shí)間。因?yàn)槿空{(diào)度時(shí)間不應(yīng)該超過(guò)0.5ms,DSP還需要花費(fèi)時(shí)間去做其他事情,所以必須做到時(shí)間和結(jié)果之間的平衡。 圖3 提前分配算法流程 TERRA系統(tǒng)有非常寶貴的傳輸塊大小資源。所以DSP完成編碼操作時(shí)充分利用資源就顯得非常重要。文章分析了現(xiàn)有的兩種DSP core上傳輸塊分配方法的缺點(diǎn),提出了一種改進(jìn)的算法來(lái)解決未充分利用兩個(gè)DSP core的難題,同時(shí)在兩個(gè)DSP core利用率和確保未超過(guò)DSP core自身限制之間找到了很好的平衡。 [參考文獻(xiàn)] [1]朱延釗.一種語(yǔ)音混沌保密通信方案的DSP實(shí)現(xiàn)[J].計(jì)算機(jī)工程,2010(15):151-152. [2]趙繼勇.基于DSP的甚低速率語(yǔ)音編碼算法及其實(shí)現(xiàn)[J].計(jì)算機(jī)工程,2011(21):261-263. New TETRA Trunked Algorithm for DSP Core Balance Zhu Zhihui,Chen Tong Abstract:In TETRA system hardware platform based on DSP,the channel coding needs a great amount of calculation and should be finished within 1ms. It gives an algorithm to improve the DSP cores’ usage. The algorithm which is based on MPR attempts to do a simple core adjustment for already allocated codewords before doing the new allocation. It describes the procedure in detail,including the implementation and how it works with PDSCH resource allocation together. It also provides some simulation result under multi-Ue with multi flow situation compared with fix allocation to show how it improves the usage. Key words:DSP Core;transmit block size;usage 作者簡(jiǎn)介:朱志慧(1982-),女,河南安陽(yáng)。3 結(jié)語(yǔ)
(Zhejiang Conservatory of Music,Department of Public Infrastructure,Hangzhou 310024,China)