以文本方式查看主题 - 曙海教育集团论坛 (http://peixun0.cn/bbs/index.asp) -- DSP2000技术讨论 (http://peixun0.cn/bbs/list.asp?boardid=27) ---- CDMA系统多速率判决技术 (http://peixun0.cn/bbs/dispbbs.asp?boardid=27&id=2785) |
-- 作者:wangxinxin -- 发布时间:2010-12-22 10:32:32 -- CDMA系统多速率判决技术 摘 要:在CDMA移动通信系统中,由于采用了可变速率声码器,所以在接收端需要用多速率判定算法来获取速率信息,从而正确地接收数据。本文介绍了多速率判定算法,分析了信道误码计数度量(SER)、山本度量YQM(Yamamoto QualityMetric)和CRC校验度量3种判定度量的产生原理和软件无线电实现方法,同时使用DSP+FPGA的结构对多速率判定进行了优化实现。 mscbsc 移动通信论坛拥有30万通信专业人员,超过50万份GSM/3G等通信技术资料,是国内领先专注于通信技术和通信人生活的社区。:`7V"{"n/g;H/Q2T$s 关键词:CDMA;多速率判决;SER;山本度量 www.mscbsc.com*`4w1Z)X!`2H)p 在IS-95,IS-2000系统中,语音的数据传输速率主要有4种:9 600 b/s,4 800 b/s,2 400 b/s,1 200 b/s,分别称其为全速率、1/2速率、1/4速率和1/8速率。当数据以低于全速率的速率编码时,数据比特要重复发送以“填满”整个帧。为了节省带宽,系统并不发送每帧的速率信息,因此接收机无法知道发送数据速率,只能通过提取信道质量信息,判定发送端可能发送的速率。同时,变速率也为随路信令的传输提供了方便,有些信令信息可以插入到降速帧中。 | 国内领先的通信技术论坛4n$i2X/l3[*o2`)X-W;Z $n3|\'m#Y$w;p7w3J$] 接收机进行速率判定主要依据3种度量值,信道误码计数(SER)、可靠性信息——YQM(Yamamoto Quality Metric)[1]和CRC校验。其中SER度量对4种速率有效;YQM度量对较低两速率有效;而CRC度量对较高两速率有效。接收机根据8个度量值进行多速率判决算法,从而得到正确的速率信息,最终得到正确的语音数据输出。图1为整个多速率判定的示意框图。 本文将对多速率判决进行分析,分析了3种判决度量产生原理,同时引入了一种软件无线电(DSP+FPGA)结构来实现度量值产生和多速率判决算法,采用串行实现方法和存储器分裂法,使得占用资源和处理时延大大减少。mscbsc 移动通信论坛拥有30万通信专业人员,超过50万份GSM/3G等通信技术资料,是国内领先专注于通信技术和通信人生活的社区。2U#b;X m3A1o MSCBSC 移动通信论坛&M0O&[3J5E9Y0w.~ {8~ www.mscbsc.com"E9t2T5^7v9r&I!P8{ k www.mscbsc.com:i M;}*c4]7l T)Q;f#e&v/g 1 度量值计算 接收机在对4种假设速率数据进行信道Viterbi译码[2]后,将进行多速率判定。此时,需要得到假定速率的正确性度量。在CDMA系统中,他包括3种度量,分别是SER,YQM和CRC度量。 mscbsc 移动通信论坛拥有30万通信专业人员,超过50万份GSM/3G等通信技术资料,是国内领先专注于通信技术和通信人生活的社区。:@8W.z&a&T1[&l\'M1Q mscbsc 移动通信论坛拥有30万通信专业人员,超过50万份GSM/3G等通信技术资料,是国内领先专注于通信技术和通信人生活的社区。7s)d Y/e:S/N2n (1)SER是信道误码计数度量,反映的是Viterbi译码器的纠错能力和信道恶劣程度。他是指对译码后的数据再在本地进行卷积编码,然后以数据帧为单位和接收到的数据做硬判决后的结果比较。如果在信道不是很恶劣的条件下,当假设速率不正确时,SER度量将会很高,也反映了假设速率的真实程度。他对4种速率帧都有效。 *J\'T2W3n+B7{\'d1h MSCBSC 移动通信论坛*E"F$I3T8r7q(k (2)CRC是帧质量指示度量。CRC编码是一种使用非常广泛的循环分组码。在IS95和IS2000基带处理中,他只起检错和多速率判决作用,而没有纠错功能。在多速率判决中,CRC度量只对全速率和1/2速率数据帧起作用。在移动台调制过程中,全速率和1/2速率的帧质量指示比特的生成多项式如下:www.mscbsc.com\'U4{6L)O$y0M#w!Z&D 通过对循环分组编码的分析,很容易得到译码电路就是一个伴随式计算电路[3],也就是一个生成多项式除接收符号的除法电路,使用移位寄存器和反馈电路可以实现。www.mscbsc.com0D)_*U7O1S+k!f-o&n)\\ MSCBSC 移动通信论坛%?%f1S%R6E1W6o 0c,A6x)V-O7q6v6w (3)山本度量是低速率帧的帧质量指示度量。1/4,1/8两种低速帧没有CRC比特,这时的帧质量指示度量要使用山本度量。Viterbi卷积译码是一种最大似然译码算法,也就是要在Trellis图中找到一个序列C,使得在已知接收序列R情况下,发送C的概率最大。这等价于找一个与发送序列距离最小的序列。但是如果在Trellis图中的次优序列同最优序列之间的距离较小,那么判定译码输出序列为最优序列的可信度较小。山本量度就是用于度量这一可信度的。具体的算法如下: | 国内领先的通信技术论坛.h&c z6r-t 参照图2,设i-1时刻,所有状态均为“好”,以Ω表示,“坏”状态以X表示,路径度量(距离)以m[]()表示,A为阈值。 8g0Q5|)r.I2n7J 移动通信,通信工程师的家园,通信人才,求职招聘,网络优化,通信工程,出差住宿,通信企业黑名单/l$G7^%\\\'[:?!F9S)q 7a0^3V2t!G)P2h2H7C 则选择路径bfs,则S0仍标为Ω;若选择路径dhf,则S0标为X,因为其路径中已有不可靠状态。此过程持续到译码结束,若2m个状态均标为X,则山本度量为“差”,否则为“好”。 MSCBSC 移动通信论坛*o-V9B5L0k0f 移动通信,通信工程师的家园,通信人才,求职招聘,网络优化,通信工程,出差住宿,通信企业黑名单/c.s6Q%H-V2?"i:t)W 在设计中,设置了2个山本度量存储器,一个存放旧的山本度量值,一个存放新的。在译码的路径度量更新时,对每一状态同时更新山本度量值。对2个度量存储器的操作采用存储器分裂法,充分利用了FPGA的速度优势,提高了并发程度,减少了处理时延。 MSCBSC 移动通信论坛4~ \\9a)E&c0e,[7m %h.@*{\'i"w+Y7N!P 2 多速率判决 | 国内领先的通信技术论坛1i:] y(r7f-N3T K4H/? mscbsc 移动通信论坛拥有30万通信专业人员,超过50万份GSM/3G等通信技术资料,是国内领先专注于通信技术和通信人生活的社区。3v8f0h$~2g/i P1w/G4R7f 在获得了度量值后,系统将通过8个量度S1(全速率SER)、S2(半速率SER)、S4(1/4速率SER)、S8(1/8速率SER)、Q1(全速率CRC校验)、Q2(半速率CRC校验)、Q4(1/4速率山本量度)、Q8(1/8速率山本量度)来判决数据速率。由于较高的2个速率有更准确的CRC校验,所以没有必要再用山本量度。速率判定后,处理器发给FPGA中的缓冲器相应信号,输出相应速率的译码数据。 www.mscbsc.com*s!v8|!r+y"M | 国内领先的通信技术论坛3y-v"~;c;N1y i/{$k2` 图3是速率判决算法的流程图。其中符号含义如下:www.mscbsc.com0Q!n%t*g `4p4o,u5l!A | 国内领先的通信技术论坛;T2W4O!D*J 1X表示全速率;2X表示1/2速率;4X表示1/4速率;8X表示1/8速率;1XL表示可能是全速率,但有误比特;E表示删除坏帧。T1~T10为判决门限,他们是通过用实际的语音数据经过大量的仿真得到的经验门限值,必须保证这些门限值是完全适用于CDMA移动通信环境。 | 国内领先的通信技术论坛\'^(d3A:G7^7k !O3V/u5Y-]-^;b!J 速率判决算法包括以下几个准则: 2]&Q$L"S&p-I (1)SER是最重要的判决变量。 (2)Viterbi译码的山本量度和CRC校验可以作为辅助判决变量。 www.mscbsc.com3q!E7T8[!s-v,f(r N(W (^8n8m:Z,F7[8H0H.I:? (3)着重保证全速率的判决,因为全速率占所有帧的60%,而且全速率帧用于传输随路信令。 移动通信,通信工程师的家园,通信人才,求职招聘,网络优化,通信工程,出差住宿,通信企业黑名单,R-p9G7z B (4)根据变速率声码器编码选择速率的规则,数据速率每帧只允许下降一个级别。例如,如果前一帧的速率为全速率,而当前帧根据算法为1/4和1/8,编码器仍旧选择速率1/2。 MSCBSC 移动通信论坛8Q2m2^5]\'^ 3 优化实现MSCBSC 移动通信论坛$z1S.W#{6B 移动通信,通信工程师的家园,通信人才,求职招聘,网络优化,通信工程,出差住宿,通信企业黑名单#o$o6~+G1v)R2`;o"m9I 3.1 DSP+FPGA实现结构 MSCBSC 移动通信论坛&c6u*u5r8J0A;\\3k+Q 在我们的设计中,多速率判决模块采用DSP+FPGA软件无线电结构。其中速率判定属于控制部分,放在C54DSP中完成。由于多速率判定算法实现代码相对简单,而且对时延要求不是非常严格,所以在实现中采用C代码编写。而3种度量值的产生实时性要求较高,而且和多路Viterbi译码结合紧密,因此使用Altera公司的APEXFPGA实现。FPGA和DSP的数据通过FIFO交互,控制信息通过寄存器交互。 www.mscbsc.com+F.M(o5f*r6v.]7Z8n9{\'{7E 在度量值产生中,如果采用全并行处理,即同时并行处理四路假设速率帧,则占用FPGA逻辑资源太大,因此采用串行实现方式。在CDMA2000中,由于要求在一帧20 ms中完成4种速率帧的形成,所以模块基本时钟由原先的28.8 kb/s增加至57.6 kb/s。另外,为使共享的山本度量存储模块有充分的时间进行内部RAM复位,所以4种速率帧之间加入4个时钟周期的空闲段。 移动通信,通信工程师的家园,通信人才,求职招聘,网络优化,通信工程,出差住宿,通信企业黑名单&h!m$j-n3N8N*^9W www.mscbsc.com1a9@3S%C)T2m6]9f%_ 实验表明,此种结构实时性好,而且由于判决算法在DSP中完成以及串行度量处理,减少了对硬件逻辑单元的占用。mscbsc 移动通信论坛拥有30万通信专业人员,超过50万份GSM/3G等通信技术资料,是国内领先专注于通信技术和通信人生活的社区。4v+_.n-I/j)M4h%I 3.2 存储器分裂法 -_ B2i c3a+P\'N4g9K*B 为了提高并发程度,充分利用FPGA的速度优势,对于山本度量的读写控制采用存储分裂方法,即逻辑RAM和物理RAM分开。这样可以在4个基本时钟内完成一次山本度量的更新运算。基本思想就是在一个时钟能同时取出i和i+128的度量,进行运算后存入相应的存储单元,完成山本度量的更新。在物理上,存在2个独立的存储器RAM1和RAM2,各自有数据线和地址线,但在逻辑上将其均匀地分为2个子存储块,分别作为I时刻和I+1时刻的存储单元。依据这个思想,地址产生器产生正确的地址逻辑,处理时延也将大大减少。 移动通信,通信工程师的家园,通信人才,求职招聘,网络优化,通信工程,出差住宿,通信企业黑名单 `\'Z5i7b&i$C#i 4 结语 | 国内领先的通信技术论坛.a.l$G1p-\\ 变速率声码器技术在移动通信中的应用非常普遍,具有降低功率、增加信道利用率等优点。在信道接收机中需要对数据速率进行检测判决。本文引入了一种多速率判决技术,他由度量值计算和判决算法两部分组成。在具体实现中,采用了DSP+FPGA结构,在时延和资源配置上达到较好的性能。同时,采用了串行实现和存储器分裂等优化手段,减少了处理时延和资源占用。 |