999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

移動通信系統(tǒng)中交織編碼器的設(shè)計(jì)

2008-04-12 00:00:00范艷根劉嵩巖黃丹
現(xiàn)代電子技術(shù) 2008年8期

摘 要:以GSM移動通信系統(tǒng)為例,在分析GSM通信系統(tǒng)信道編碼結(jié)構(gòu)、交織方式的基礎(chǔ)上,提出基于FPGA用塊內(nèi)交織方法實(shí)現(xiàn)該系統(tǒng)中的交織器,利用VHDL語言完成該系統(tǒng)中交織器的具體設(shè)計(jì),并驗(yàn)證設(shè)計(jì)的正確性和可行性,為使用軟件無線電實(shí)現(xiàn)GSM基站系統(tǒng)奠定了基礎(chǔ)。

關(guān)鍵詞:信道編碼;交織器;仿真分析;軟件無線電

中圖分類號:TN91122文獻(xiàn)標(biāo)識碼:B

文章編號:1004-373X(2008)08-075-03

Design of Interleave Encoder in Mobile Communication System

FAN Yan′gen1,2,LIU Songyan2,HUANG Danling1,ZHAO Lin1

(1.Heilongjiang Institute of Science and Technology,Harbin,150027,China;

2.Microelectronics Center,Harbin Institute of Technology,Harbin,150001,China)

Abstract:On the basis of analyzing the channel coding structure and interleave style of the system,taking an example of GSM,this passage introduces a new method based on FPGA to realize the interleave of system,introduces the detailed design of the interleave with VHDL in the system,testifies the exactness and feasibility of this method and establishes the basis to realize GSM base station system using software radio.

Keywords:channel coding;interleave;simulation analysis;software radio

軟件無線電[1]是一種實(shí)現(xiàn)無線通信的新的體系結(jié)構(gòu),是無線通信產(chǎn)業(yè)從模擬到數(shù)字、從固定到移動這兩次革命后的第三次革命,是從硬件無線通信到軟件無線通信的革命。

在從事使用軟件無線實(shí)現(xiàn)GSM基站研究中,在深入研究GSM通信系統(tǒng)信道編碼結(jié)構(gòu)、交織方式的基礎(chǔ)上,利用VHDL硬件描述語言完成GSM基站信道編碼中使用的交織器的具體設(shè)計(jì),為進(jìn)一步研究軟件無線技術(shù)在GSM基站系統(tǒng)中應(yīng)用打下基礎(chǔ)。

1 GSM的話音編碼與信道編碼

在GSM通信系統(tǒng)中,全速率話音編碼算法為規(guī)則脈沖激勵及長期預(yù)測算法(RPELTP)。模擬話音首先通過一個ADC以8 kHz采樣頻率進(jìn)行采樣,每個采樣點(diǎn)用均勻13 b編碼。話音編碼器對每20 ms一段的話音進(jìn)行壓縮編碼,編碼結(jié)果為每20 ms產(chǎn)生260 b的數(shù)據(jù)塊。這260 b的數(shù)據(jù)根據(jù)他們的重要性分成為3類:Ia類、Ib類和Ⅱ類。Ia類共50 b,為非常重要的數(shù)據(jù)。如果這些數(shù)據(jù)被修改,恢復(fù)的話音將發(fā)生很大的錯誤,甚至無法恢復(fù)正常的話音,因此這些數(shù)據(jù)需要嚴(yán)格保護(hù)。Ib類數(shù)據(jù)共132 b,是比較重要的數(shù)據(jù),需要進(jìn)行較好的保護(hù)。Ⅱ類數(shù)據(jù)共78 b,為一般重要的數(shù)據(jù),發(fā)生一些差錯也不會對恢復(fù)的話音有太大的影響,通常不對其進(jìn)行保護(hù)。根據(jù)數(shù)據(jù)重要性的不同,決定信道編碼中采用不同的保護(hù)方法。

GSM通信系統(tǒng)的信道編碼首先對Ia類數(shù)據(jù)進(jìn)行差錯檢測編碼,產(chǎn)生3個循環(huán)冗余校驗(yàn)(CRC)比特,這些比特的產(chǎn)生使用多項(xiàng)式為G(x)=X3⊕X⊕1。3個CRC比特附在Ia類的50 b后面,再與Ib類數(shù)據(jù)組合在一起進(jìn)行K=5,r=1/2的卷積編碼,卷積編碼器使用的2個多項(xiàng)式為P1(x)=X4⊕X3⊕1和P2(x)=X4⊕X3⊕X⊕1,卷積編碼產(chǎn)生的結(jié)果是兩個189 b的序列,將他們與不需要保護(hù)的Ⅱ類數(shù)據(jù)復(fù)合在一起,產(chǎn)生一個完整的經(jīng)過信道編碼的話音幀,共456 b。

2 交織編碼器工作原理

信道編碼中采用交織技術(shù)[2],可打亂碼字比特之間的相關(guān)性,將信道中傳輸過程中的成群突發(fā)錯誤轉(zhuǎn)換為隨機(jī)錯誤,從而提高整個通信系統(tǒng)的可靠性。交織編碼根據(jù)交織方式的不同,可分為線性交織、卷積交織和偽隨機(jī)交織。其中線性交織編碼是一種比較常見的形式。所謂線性交織編碼器,是指把糾錯編碼器輸出信號均勻分成m個碼組,每個碼組由n段數(shù)據(jù)構(gòu)成,這樣就構(gòu)成一個n×m的矩陣。這里把這個矩陣稱為交織矩陣。如圖1所示,數(shù)據(jù)以a11,a12,…,a1n,a21,a22,…,a2n,…,aij,… ,am1,am2,…,amn(i=1,2,…,m;j=1,2,…,n)的順序進(jìn)入交織矩陣,交織處理后以a11,a21,…,am1,a12,a22,…,am2,…,a1n,a2n,…,amn的順序從交織矩陣中送出,這樣就完成對數(shù)據(jù)的交織編碼。還可以按照其他順序從交織矩陣中讀出數(shù)據(jù),不管采用哪種方式,其最終目的都是把輸入數(shù)據(jù)的次序打亂。 如果aij只包含1個數(shù)據(jù)比特,稱為按比特交織[3];如果aij包含多個數(shù)據(jù)比特,則稱為按字交織。接收端的交織譯碼同交織編碼過程相類似。



a11a12…a1n

a21a22…a2n



am1am2…amn交織處理后[TXX→*2] a11a21…am1

a12a22…am2



a1na2n…amn



圖1 n×m交織矩陣線性交織編碼

一般來說,如果有n個(m,k)碼,排成n×m矩陣,按列交織后存儲或傳送,讀出或接收時恢復(fù)原來的排列,若(m,k)碼能糾t個錯誤,那么交織后就可糾nt個錯誤。對糾正信道傳輸過程中出現(xiàn)的突發(fā)錯誤效果明顯。

GSM中使用這種比特交織器。其交織方式為將信道編碼后的每20 ms的數(shù)據(jù)塊m=456 b拆分到8組中,每組57 b,然后這每組57 b分配到不同的Burst中。

3 交織編碼器的軟件設(shè)計(jì)

GSM通信系統(tǒng)必須滿足實(shí)時性的要求,因此,交織編碼引入的延時應(yīng)盡可能小。為了同時滿足塊內(nèi)交織進(jìn)行(57,8)矩陣轉(zhuǎn)置變換和延時盡可能小的要求,該交織器利用2片雙口RAM實(shí)現(xiàn),記作RAM[CD#*2] 和RAM[CD#*2] B。交織處理時,按地址從0~455 將456 b輸入數(shù)據(jù)全部寫入RAM[CD#*2]A,待456 b數(shù)據(jù)全部送入RAM[CD#*2]A后,控制信號使RAM[CD#*2]A由寫狀態(tài)轉(zhuǎn)換到讀狀態(tài),同時,將輸入的待交織數(shù)據(jù)寫入RAM[CD#*2]B,RAM[CD#*2]B為寫狀態(tài),交織器由RAM[CD#*2]A輸出數(shù)據(jù)。經(jīng)過456個時鐘周期后,從RAM[CD#*2]A讀出456 b數(shù)據(jù)的同時,RAM[CD#*2]B寫入一個時隙的456 b數(shù)據(jù)。此時,改變RAM[CD#*2]A和RAM[CD#*2]B的讀寫狀態(tài),RAM[CD#*2]A開始寫,從RAM[CD#*2]B中讀取數(shù)據(jù)。如此反復(fù)完成數(shù)據(jù)的實(shí)時連續(xù)交織處理。

完成交織處理的核心問題是處理好讀/寫地址之間的關(guān)系,該交織器讀/寫地址的變換采用如下算法完成:

readaddress(j×8+i)=writeaddress(i×57+j)

(i=0,1,2,…,7;j=0,1,2,…,57)

為減少FPGA運(yùn)算量,可利用Matlab,C語言等實(shí)現(xiàn)讀/寫地址矩陣轉(zhuǎn)置運(yùn)算。這里采用Matlab完成讀/寫地址矩陣轉(zhuǎn)置運(yùn)算,具體程序?yàn)椋簒=0:1:455;reshape(x,57,8)。讀/寫地址的變換結(jié)果存儲在address[CD#*2]ROM.mif文件中[4]。利用VHDL語言描述該交織編碼器完整代碼如下:

[HT4][HT5”]

LIBRARY IEEE;

USE IEEE.STD[CD#*2]LOGIC[CD#*2]1164.ALL;

USE IEEE.STD[CD#*2]LOGIC[CD#*2]SIGNED.ALL;

USE IEEE.STD[CD#*2]LOGIC[CD#*2]UNSIGNED.ALL;

USE IEEE.STD[CD#*2]LOGIC[CD#*2]ARITH.ALL;

LIBRARY lpm;

USE lpm.lpm[CD#*2]components.ALL;

LIBRARY altera[CD#*2]mf;

USE altera[CD#*2]mf.altera[CD#*2]mf[CD#*2]components.all;

ENTITYGSM[CD#*2]VHDL IS

GENERIC (intlv[CD#*2]length: positive := 456); 

PORT(clk:INSTD[CD#*2]LOGIC; 

data[CD#*2]in: INSTD[CD#*2]LOGIC;

wr[CD#*2]addr[CD#*2]A,rd[CD#*2]addr[CD#*2]A: BUFFER STD[CD#*2]LOGIC[CD#*2]VECTOR(8 DOWNTO 0); 

intlv[CD#*2]data[CD#*2]A,intlv[CD#*2]data[CD#*2]B:BUFFER STD[CD#*2]LOGIC; 

RAM[CD#*2]select[CD#*2]cnt:BUFFER STD[CD#*2]LOGIC[CD#*2]VECTOR(9 DOWNTO 0); 

RAM[CD#*2]select,RAM[CD#*2]read[CD#*2]ena:BUFFER STD[CD#*2]LOGIC; 

intlv[CD#*2]out:BUFFER STD[CD#*2]LOGIC );

END ENTITY GSM[CD#*2]VHDL;

ARCHITECTURE address[CD#*2]control[CD#*2]fan OF GSM[CD#*2]VHDL is

SIGNAL RAM[CD#*2]read[CD#*2]delay1 :STD[CD#*2]LOGIC;

SIGNAL RAM[CD#*2]out[CD#*2]A,RAM[CD#*2]out[CD#*2]B :STD[CD#*2]LOGIC;

BEGIN

RAM[CD#*2]select[CD#*2]cnt[CD#*2]mine : COMPONENT lpm[CD#*2]counter

GENERIC MAP (LPM[CD#*2]WIDTH=>10,LPM[CD#*2]MODULUS=>912)

PORT MAP (clock=>clk,updown=>′1′,q=>RAM[CD#*2]select[CD#*2]cnt);

RAM[CD#*2]select[CD#*2]mine :COMPONENT lpm[CD#*2]compare 

GENERIC MAP(LPM[CD#*2]WIDTH=>10,LPM[CD#*2]REPRESENTATION=> \"UNSIGNED\")

PORT MAP(dataa=>RAM[CD#*2]select[CD#*2]cnt,datab=>\"0111001000\",ageb=>RAM[CD#*2]select);

data[CD#*2]input[CD#*2]select: PROCESS(RAM[CD#*2]select,data[CD#*2]in)

BEGIN

IF RAM[CD#*2]select =′0′ THEN

intlv[CD#*2]data[CD#*2]A <= data[CD#*2]in;

intlv[CD#*2]data[CD#*2]B <=′0′;

ELSE

intlv[CD#*2]data[CD#*2]A <=′0′;

intlv[CD#*2]data[CD#*2]B <= data[CD#*2]in;

END IF;

END PROCESS data[CD#*2]input[CD#*2]select;

wr[CD#*2]addr[CD#*2]A[CD#*2]mine : COMPONENT lpm[CD#*2]counter 

GENERIC MAP (LPM[CD#*2]WIDTH=>9,LPM[CD#*2]MODULUS=>intlv[CD#*2]length)

PORT MAP (clock=>clk,updown=>′1′,q=>

wr[CD#*2]addr[CD#*2]A);

rd[CD#*2]addr[CD#*2]mine[CD#*2]A:COMPONENT altsyncram

GENERIC MAP (OPERATION[CD#*2]MODE=>\"ROM\",WIDTH[CD#*2]A =>9,WIDTHAD[CD#*2]A =>9,OUTDATA[CD#*2]REG[CD#*2]A=>\"clock0\",INIT[CD#*2]FILE => \"address[CD#*2]ROM.mif\")

PORT MAP (clock0=>clk,address[CD#*2]a=>

wr[CD#*2]addr[CD#*2]A,q[CD#*2]a=>rd[CD#*2]addr[CD#*2]A);

RAM[CD#*2]read[CD#*2]delay[CD#*2]one: COMPONENT lpm[CD#*2]ff 

GENERIC MAP (LPM[CD#*2]WIDTH=>1)

PORT MAP(data(0)=>RAM[CD#*2]select,clock=>clk,q(0)=>RAM[CD#*2]read[CD#*2]delay1);

RAM[CD#*2]read[CD#*2]delay[CD#*2]two: COMPONENT lpm[CD#*2]ff

GENERIC MAP (LPM[CD#*2]WIDTH=>1)

PORT MAP(data(0)=>RAM[CD#*2]read[CD#*2]delay1,clock=>clk,q(0)=>RAM[CD#*2]read[CD#*2]ena);

RAM[CD#*2]A:COMPONENT lpm[CD#*2]ram[CD#*2]dp

GENERIC MAP (LPM[CD#*2]WIDTH=>1,LPM[CD#*2]WIDTHAD=>9)

PORT MAP(data(0)=> intlv[CD#*2]data[CD#*2]A,

rdaddress=>rd[CD#*2]addr[CD#*2]A,wraddress=>wr[CD#*2]addr[CD#*2]A,

rdclock=>clk,wrclock=>clk,

rden=>RAM[CD#*2]read[CD#*2]ena,wren=>NOT RAM[CD#*2]select,

q(0)=>RAM[CD#*2]out[CD#*2]A);

RAM[CD#*2]B:COMPONENT lpm[CD#*2]ram[CD#*2]dp 

GENERIC MAP (LPM[CD#*2]WIDTH=>1,LPM[CD#*2]WIDTHAD=>9)

PORT MAP(data(0)=> intlv[CD#*2]data[CD#*2]B,

rdaddress=>rd[CD#*2]addr[CD#*2]A,wraddress=>wr[CD#*2]addr[CD#*2]A,

rdclock=>clk,wrclock=>clk,

rden=>NOT RAM[CD#*2]read[CD#*2]ena,wren=>RAM[CD#*2]select,

q(0)=>RAM[CD#*2]out[CD#*2]B);

intlv[CD#*2]out<=RAM[CD#*2]out[CD#*2]A WHEN RAM[CD#*2]read[CD#*2]ena=′1′ ELSE 

RAM[CD#*2]out[CD#*2]B;

END ARCHITECTURE address[CD#*2]control[CD#*2]fan;

4 仿真分析

利用Altera公司的Quartus Ⅱ工具軟件, 對該交織器仿真分析,得到的時序仿真波形如圖2所示。從讀地址(rd[CD#*2]addr[CD#*2]A)和寫地址(wr[CD#*2]addr[CD#*2]A)以及(data[CD#*2]in)和(intlv[CD#*2]out)可以看出,該交織器完成既定的交織功能,延時相當(dāng)小,該設(shè)計(jì)方法正確可行。

圖2 交織器部分時序仿真波形

5 結(jié) 語

本文提出基于FPGA實(shí)現(xiàn)交織器的方法,給出利用VHDL語言描述該交織器的全部代碼。通過仿真分析驗(yàn)證該實(shí)現(xiàn)方案的正確性和可行性。為進(jìn)一步研究GSM通信系統(tǒng)基站軟件化打下了良好的基礎(chǔ)。

參 考 文 獻(xiàn)

[1]楊小牛,樓才義,徐建良.軟件無線電原理與應(yīng)用[M].北京:電子工業(yè)出版社,2004.

[2]徐元欣,王匡,仇佩亮.實(shí)現(xiàn)卷積交織的幾種實(shí)用方法[J].電路與系統(tǒng)學(xué)報(bào),2001,6(1):712.

[3]白寶明,馬嘯,王新梅.隨機(jī)交織器的設(shè)計(jì)與實(shí)現(xiàn)[J].通信學(xué)報(bào),2000,21(6):611.

[4]潘松,黃繼業(yè).EDA技術(shù)實(shí)用教程[M].北京:科學(xué)出版社,2002.

作者簡介

范艷根 男,1979年出生,安徽太湖人,講師,2002年畢業(yè)于黑龍江科技學(xué)院,現(xiàn)為哈爾濱工業(yè)大學(xué)微電子中心碩士研究生。主要從事信號與信息處理方面的教學(xué)與科研工作。

注:本文中所涉及到的圖表、注解、公式等內(nèi)容請以PDF格式閱讀原文

主站蜘蛛池模板: 97免费在线观看视频| 国产av色站网站| 精品人妻系列无码专区久久| 精品人妻无码中字系列| 色婷婷在线影院| 玖玖精品在线| 欧美高清日韩| 美女一级免费毛片| 欧美精品亚洲精品日韩专区va| 老司机精品久久| 5388国产亚洲欧美在线观看| 视频二区国产精品职场同事| 精品无码日韩国产不卡av | 亚洲人成在线精品| 97综合久久| 亚洲欧洲国产成人综合不卡| 99久久精品免费观看国产| 国产黑丝视频在线观看| 午夜综合网| 成人福利在线免费观看| 92午夜福利影院一区二区三区| 久热中文字幕在线| 91青草视频| 91在线国内在线播放老师| 国产91无毒不卡在线观看| 国模在线视频一区二区三区| 日韩视频精品在线| 午夜高清国产拍精品| 欧美性猛交一区二区三区 | 亚洲午夜久久久精品电影院| 国模极品一区二区三区| 中文字幕调教一区二区视频| 成人国产精品网站在线看| 亚洲精品第一页不卡| 99re精彩视频| 一本色道久久88| 9999在线视频| 日韩免费成人| 国产极品美女在线播放| 丰满人妻中出白浆| 亚洲国产综合第一精品小说| 国产成人亚洲毛片| 88av在线| 无码又爽又刺激的高潮视频| 性视频一区| 免费a在线观看播放| 91麻豆精品国产91久久久久| 亚洲欧洲天堂色AV| 色窝窝免费一区二区三区| 亚洲资源站av无码网址| 亚洲色图综合在线| 999国内精品久久免费视频| 无码中文字幕加勒比高清| 99精品福利视频| 在线视频一区二区三区不卡| 成人综合网址| 欧美精品啪啪| 日韩第一页在线| 久久永久视频| 欧美啪啪一区| 一级香蕉人体视频| 精品视频第一页| 午夜精品久久久久久久2023| 亚洲精品免费网站| 青青青国产精品国产精品美女| 亚洲天堂网视频| 无码日韩视频| 国产在线视频自拍| 69视频国产| 在线精品亚洲一区二区古装| 欧美亚洲综合免费精品高清在线观看| 国产成人精品综合| 亚洲第一视频免费在线| 亚洲高清国产拍精品26u| 国产经典免费播放视频| 欧美三级视频网站| 丰满少妇αⅴ无码区| 国产成人福利在线视老湿机| 无码精品福利一区二区三区| 日本三级欧美三级| 国产综合精品一区二区| 色妞永久免费视频|