FUTURE COMPUTIG : The Thid Intenational Confeence on Futue Computational Technologie and Application A Real-Time PC Baed oftwae Radio DVB-T Receive hu-ming Teng Depatment of Electonic Engineeing ational Taipei Univeity of Technology Taipei, Taiwan huming@ntut.edu.tw Jian-Cheng Yu Depatment of Electonic Engineeing ational Taipei Univeity of Technology Taipei, Taiwan g9333@hotmail.com Yueh-Teng Hu LiteOn Technology Coopeation, Taipei, Taiwan Matthew.Hu@liteon.com Abtact The total data ate of DVB (Digital Video Boadcating i 9.953Mbp much geate than DAB (Digital Audio Boadcating. It i neceay to ue bette ignal poceing algoithm to impove the pefomance of DVB eceive. Hence, we popoe ome method: ( To optimize Reed-olomon and Vitebi decode; ( To ue paallel poce intuction; (3 To Reduce FOR Loop and IF Banch, etc. Afte thee modification, the oftwae adio in eal-time eception baed on PC can be implemented. In ummay, we demontate a oftwae eceive which opeate at an acceptable eal-time decoding peed. Keywod-oftwae adio; mobility; Digital Video Boadcating; othogonal fequency-diviion multiplexing. I. ITRODUCTIO The R (oftwae Radio baed on PC platfom ha become popula and impotant in oftwae GP (Global Poition ytem [] and oftwae DAB (Digital Audio Boadcating []. Beide, the paallel poce i one of the impotant and ueful method to enhance the decoding peed in R. It i poible to ue the oftwae to implement the demodulation and decoding at eal time baed on PC. The total data ate of DAB i.4 Mbp (DQPK; DVB-T (Digital Video Boadcating-Teetial i 9.953 Mbp (6QAM, guad inteval /4, ate /3 convolutional code, non-hieachical ytem fo 6 MHz channel. Thu, the data ate of DVB-T i much geate than DAB. We hope to implement the R which i ued fo DVB-T ignal in Taiwan [3]. The advantage and benefit of R ae multimode and low cot. Beide, it i eay to maintain and modify. A we now, it i almot impoible to manufactue a new AIC (Application-pecific Integated Cicuit chip, which i elatively vey expenive and time-conuming. On the contay, the R eceive doe not need any additional hadwae. The mot impotant benefit of R eeach, when compaed with hadwae adio, i that people can modify the ignal poceing pocedue, algoithm and tet the eult eaily. People can ue the bette detecting o etimation algoithm with oftwae language to impove the pefomance of adio eceive athe than poducing a new AIC chip. Fo eal-time DVB-T eception, we need to impove the lowet pat fit. Theefoe, we have to implement the oftwae of the R (Reed-olomon and Vitebi decode [4], which i fat enough to decode in eal time. In ode to enhance the R decoding pefomance, we ue the following way: Looing up table to educe opeation of pogam and IMD (ingle Intuction Multiple Data intuction to deceae the CPU opeation time [5], etc. Meanwhile, the pefomance of Vitebi decode alo need to be impoved by eveal method: ( To ue IMD intuction; ( To educe the banch of the pogam; (3 The othe efficient method [4]. Thi pape i oganized a follow: We decibe the peviou R in ection I. The popoed ytem achitectue i decibed in detail in ection II. Implementation and eult ae decibed in ection III. ection IV peent the concluion. II. YTEM ARCHITECTURE The baic component fo a oftwae eeach platfom include a PC and a adio font-end. The achitectue i hown in Figue. It ha hadwae and oftwae pat. The oftwae tuctue i compied of baeband poceing, MPEG audio decode and tet application. The ytem memoy acquie the digitized IF (Intemediate Fequency ignal fom the tune device by the dive; thi i o called aw data. When enough aw data i collected, we can calculate the R and do baeband poceing o dump that into the had di fo futue analyi. Thu, we can get the tanpot team afte baeband poceing. Figue. The achitectue of the intoduced eeach platfom. Copyight (c IARIA,. IB: 978--68-54- 86
FUTURE COMPUTIG : The Thid Intenational Confeence on Futue Computational Technologie and Application Figue. PCB (Pinted Cicuit Boad, hadwae pat. A. Hadwae The hadwae pat i hown in Figue. The eceive can decode the adio ignal and ecod the baeband ignal into had di imultaneouly. It ha eveal pat in ou AD boad. Thi device i compied of A/D chip and LVD (low voltage diffeential ignaling to educe the tanmiion intefeence. The achitectue i hown in Figue 3. The tune module ha elation with the eceive enitivity. Low IF ignal output amplify gain i uitable fo the equiement of analog to digital convete and o on. In ou deign, the ilicon tune (Xceive xc38 i choen to fit the equiement. The TLI 554 i a high-fequency ignal poceing IC and convet the eceived fequency to IF fequency (4.57MHz. The fequency command i fed though the I C (I-quaed-C inteface on thi tune. Accoding to the DVB-T pec: the ampling ate of 8 MHz i 64 MHz /7= 9.4858 (MHz. Thu, we ue the (64/7 x3 = 7.4857 (MHz fo 8bit eolution ampling ate to be digitalized by an AD convete and i fed into PCI-Expe (bidge chip (Tanfe ate > gigabyte pe econd and can be ent to PC fo futue poceing. B. oftwae The oftwae ha two pat. One i baeband eceive, and the othe i baeband data ecode. The ignal poceing of oftwae tuctue i hown in Figue 4 and 5, which i decibed a below: The pupoe of time ynchonization i ued to ynchonize the ymbol in the FFT (Fat Fouie Tanfom window coectly. We ue the CP (Continual Pilot to etimate integal fequency offet and ue the TP (Tanmiion Paamete ignaling pilot to etimate the offet of OFDM (Othogonal Fequency- Diviion Multiplexing ymbol. The Factional fequency ynchonization can modify the ignal afte digital down convete in coect baeband fequency. We will ue catte pilot to etimate the channel coefficient. Afte doing factional fequency ynchonization and intege fequency ynchonization, the eidual fequency offet till exit. Howeve, we can utilize a mathematic model fo an offet with ampling fequency offet and eidual fequency. We have to do channel etimation to compenate the phae eo. The DVB-T ytem ue TP to do fame ynchonization. Figue 4. oftwae Demodulato opeation diagam Figue 3. The achitectue of the hadwae pat. TABLE I. Paamete Fequency Input ange Bandwidth Method of down conveion TUER COFIGURATIO. Value 74~854 MHz 6/7/8 MHz Up down conveto Figue 5. tuctue of BDA(Boadcat Dive Achitectue filte ampling Fequency Offet: It will geneate FO (ampling Fequency Offet when the baeband ampling Copyight (c IARIA,. IB: 978--68-54- 87
FUTURE COMPUTIG : The Thid Intenational Confeence on Futue Computational Technologie and Application ate of eceive cannot match the tanmitte. Thu, we have to ue ome algoithm to modify FO [6]-[7]. δ a δ = T T ' T ( + δ = ( The u a i total time hift of ymbol, u i the quantization afte peiodic ampling time T. The baeband ymbol ampling ignal i decibed a below: [ n] n T ' + ua n T ( + δ + ua = X '[ ] exp{ jπ ( + δ n} X '[ ] = X [ ] exp{ jπ u } ( The mean total numbe of caie; g i the length of epeat ignal. Afte demodulation (G imp i the ICI caued by FO. It can be ignoed, we will have R (the afte FFT calculation: R [ ] = fft{ [ n]} = X '[ ] I + X '[ g I, ] g, g g, X '[ ] = X[ ] exp( jπ u (3 Futhemoe, u i the total time hift with th ymbol becaue of the peiodic ampling fequency offet (caued byδ. The function i given by: u = u + δ ( + g (4 Aume the a continual pilot. The R [] and R - [] only ha one phae eo. The Δθepeent the phae eo between the adjacent ymbol. The FO can be modified by uing thi elation between thee two ubcaie. It can be expeed a follow: Δθ = angle( R [ ] angle( R [ ] = π ( u u = π δ ( + g Afte thee calculation, it till ha the eidual ubcaie fequency offet. We have to conide the aveage phae hift. Finally, we can get the etimation of FO a below: ˆ Δθ ϕ δ mean{ π δ ( + g } Continual pilot (5 ϕ mean Δθ } M 5 { (6 Reed-olomon decode optimization: A we now, the R decode i the mot time-conuming pat of oftwae DVB-T eceive. Hence, we want to impove the pefomance of R decode [5] which ha fou pat, and each pat ue diffeent algoithm that ae decibed a below: Fit, thee ae 464 addition and 48 multiplication in GF (56 fo getting yndome: = = = 5 = 54 54 4 54 5 3 t vecto nd vecto table table 54 54 53 4 55 th vecto table The looup vecto table will be ued to eplace thee opeation. Thu, we ceate 55 vecto table; each table epeent the all poible anwe of 6 multiplication in GF (56. You can get 6 multiplication in GF (56 to loo up vecto table once. The multiplication of GF (56 i unneceay. econd, we ue the GF (56 with looup vecto table and ewite the whole Chien each pogam [8] within the aembly language to eplace the multiplication. The pefomance of the Chien each pogam will be impoved geatly by mean of thee modification. It mean that the decoding peed i much fate than the oiginal Chien each pogam. TABLE Ⅱ. D VECTOR TABLE 38 55 55 74 5 Thid, to Reduce FOR Loop and IF Banch: The banch command lie IF, FOR, WHILE, etc., the banch pediction eo will caue the peed of execution down. We need to educe all the loop in ou pogam by mean of uing a lage numbe of C o aembly code. Thu, we ewite ome pogam to geneate thoe C o aembly code. We wite a pogam to poduce a lage C code to expand it. Copyight (c IARIA,. IB: 978--68-54- 88
FUTURE COMPUTIG : The Thid Intenational Confeence on Futue Computational Technologie and Application Figue 7. The ytematic appoach of oftwae optimization. Figue 6. The modified pocedue of BM(Beleamp-Maey [6] in ou pogam Beide, the 64-bit CPU povide ixteen XMM egite. It i enough and ueful to place all opeational value of Foney algoithm pocedue by uing thee egite. It can educe the low opeation of tanfeing data between egite and memoie a much a poible. The data ae only moved among egite. 3 Vitebi decode and ytematic appoach of oftwae optimization: Reed-olomon decode optimization: In ode to peed-up the Vitebi decode pogam fo oftwae DVB- T eceive. We ue the Exploe in Micooft Viual tudio 8 (Team uite edition to find out and analyze the lowet pat of ou pogam. Hence, we popoe vaiou way to impove the pefomance which ae decibed a below [4]: The Vitebi decode conit of eveal unit: BMU (Banch Metic Unit, ACU (Add-Compae-elect Unit, PMMU (Path Metic Memoy Unit, and MU (uvivo Memoy Unit. The eult of the channel etimation alo ae ued to help the decode to impove the BER (Bit Eo Rate. Meanwhile, in ode to impove ou decode pefomance we need ome ueful optimization method. The pocedue of the optimization ae hown in Figue 7. Figue 8. The flowchat of the modified pogam. A loop i expanded to 64 identical egment A*. C. E4 Intuction The newet Intel CPU ha the E4 (teaming IMD Extenion 4 intuction [4]. We ue the new Intel CPU IMD intuction to be ou tool in ode to ave the CPU opeation time. We can combine it by maing ome opeation of thee intuction, and it will be much moe efficiency than befoe. The execution efficiency of the pocedue will dop geatly when containing the judgment opeation in the pocedue (lie IF, FOR, WHILE, etc.. The efficiency of the pocedue would be impoved geatly by educing thee opeation in the pogam. Geneal peaing, the FOR loop in C pogam i ued to deal with the continued and imila pocedue. In ou oiginal Vitebi decode, the pogam ha many FOR loop. Hence, we ceate Copyight (c IARIA,. IB: 978--68-54- 89
FUTURE COMPUTIG : The Thid Intenational Confeence on Futue Computational Technologie and Application a lot numbe of C o aembly code in ode to educe all the loop in ou pogam. (The new pocedue i hown in Figue 8. D. The Othe Efficient Method The ame eult can often be got though diffeent way when witing the pogam. Theefoe, we have to find out o deign the new algoithm to peed up the opeation of pocedue. In fact, thee ae ome othe tuctue that can be ued to eplace the conventional tuctue. Fo example, the C code can be impoved by changing the tuctue. The evey coded bit contain only 4 type of bit metic and type of channel etimation eult. Theefoe, the tuctue can be modified by combining thee computation (hown in Figue 9. The aembly and E intuction can implement it. be ued to hold the metic data in ode to educe the movement between memoie and egite. III. IMPLEMETATIO AD REULT The envionment of pupoed eceive i a detop PC the pecification of which i lited in Table Ⅲ. The O i window 7. The oftwae language ae C, C++, C#, o Aembly. The pogamming tool ae mainly fom Micooft and Intel including compile and mathematical libay. TABLE Ⅲ. Component O CPU RAM Motheboad PC PLATFORM PECIFICATIO ICLUDIG O. pec. Window 7 (64bit Intel(R Coe(TM i7-6k CPU @ 3.4GHz (8 CPU, ~3.4GHz 4. GB AU P8H67-M PRO(REV3. In thi eeach, the name, uage and vende fo all tool ae lited in Table Ⅳ. The CPU loading of each individual bloc i lited in Table Ⅴ. Futhemoe, The DVB-T ignal i alo ued to input ou popoed ytem. We can get the final eult hown in Figue. Accoding to the eult, it ha no intefeence in thi figue. TABLE Ⅳ. DEVELOPMET TOOL. Tool Vende Uing fo Viual tudio. et Micooft Compile, Application Window Platfom Micooft Dive DK Diecthow Micooft API TABLE Ⅴ. THE CPU LOADIG OF EACH BLOCK Figue 9. The flowchat of the implified pogam. The bit metic calculation and channel etimate multiplication ae not epeated 64 time a in Figue 8. E. Rewite The Whole Vitebi Code Pogam With Aenbly Language The 64-bit CPU povide moe egite to educe the opeation of moving data. The x3 compile i only allowed to ue 8 of 6 XMM egite in the 64 bit CPU. Hence, we have to ue all XMM egite by uing x64 compile. Futhemoe, we can ue the ixteen to educe the opeation time of moving data fom egite to memoie o moving data fom memoie to egite. But it i not allowed to ue inline aembly by uing x64 compile. The whole pogam need to be ewitten within aembly language to adapt to the x64 compile. The additional eight XMM egite will Bloc Elaped Incluive Time (m Time & Fequency 63.66 ynchonize Remove CP & FFT 67.8 Channel etimation 45.87 Deinne & Depunche 54.49 Deoutte inteleave 7.93 Demodulato 8.93 Vitebi decode 96.79 R Decode 3.67 Decamble.9 Fame ynchonize 8.58 Pogam Initialization 7.5 Phae Compenation 8.44 C++ tandad libay.7 total 54 Copyight (c IARIA,. IB: 978--68-54- 9
FUTURE COMPUTIG : The Thid Intenational Confeence on Futue Computational Technologie and Application DVB-T eceive i poible to be accomplihed afte thee popoed modification. Figue. oftwae Demodulato Reult IV. COCLUIO A we now, the eal-time bit ate of DVB-T i 9.953 Mbp (6 QAM, guad inteval /4, ate /3 convolutional code, non-hieachical ytem fo 6 MHz channel in Taiwan. In thi eeach, we utilize looup table, IMD intuction, loop expanion and the othe efficient method to geatly impove the decoding peed of ou Reed-olomon and Vitebi decode. The decoding ate of the popoed ytem i moe than the equied bit ate of the eal-time DVB-T. o, ou ytem i fat enough to poce the DVB-T ignal ued in Taiwan in eal-time. The popoed ytem i eay to opeate with the cuent commecial PC and it help u to develop new baeband algoithm. Theefoe, we can veify it in eal-wold envionment. It only tae 54m to decode the 76m video data in ou eeach. Thu, the eal-time oftwae REFERECE []. Kubo,. Kondo, and A. Yauda, Evaluation of code multipath mitigation uing a oftwae GP eceive, IEICE Tan. Commun., vol. E88-B, no., pp. 44-4, ov. 5. [] hu-ming Teng, Yueh-Teng Hu, Meng-Chou Chang, and Hiao-Lung CHA, A oteboo PC Baed Real-Time oftwae Radio DAB Receive, IEICE Tan. Commun., vol. E89-B, no., pp. 38-34, Dec. 6. [3] ETI E 3 744 :Digital Video Boadcating (DVB; Faming tuctue, channel coding and modulation fo digital teetial televiion ETI, 4. [4] hu-ming Teng,Yu-Chin Kuo,Yen-Chih Ku, and Yueh-Teng Hu, oftwae Vitebi Decode with E4 Paallel Poceing Intuction fo oftwae DVB-T Receive, in Poc. The 7th IEEE Intenational ympoium on Paallel and Ditibuted Poceing with Application (IPA-9, Aug. 9, pp. -5. [5] hu-ming Teng, Jian-Cheng Yu, Jheng-Zong hih, and Yueh-Teng Hu, Reed-olomon Decode Optimization fo PC-Baed DVB-T oftwae Radio Receive, in Poc. The Intenational Confeence on Conume electonic, Jan., pp. 393-394. [6] Michael peth, tefan Fechtel, Gunna Foc, and Heinich Mey, Optimum Receive Deign fo OFDM-Baed Boadband Tanmiion Pat II: A Cae tudy, IEEE Tan. Commun., vol. 49, no. 4, pp. 57-578, Ap.. [7] Michael peth, tefan Fechtel, Gunna Foc, and Heinich Mey, Optimum Receive Deign fo Wiele Boad-Band ytem Uing OFDM Pat I: A Cae tudy, IEEE Tan. Commun., vol. 47, no., pp. 668-677, ov. 999. [8]. B. Wice, Eo Contol ytem fo Digital Communication and toage, Pentice Hall, 995. Copyight (c IARIA,. IB: 978--68-54- 9