基于排序的ofdm系统动态比特加载方法

文档序号:7926941阅读:144来源:国知局
专利名称:基于排序的ofdm系统动态比特加载方法
技术领域
本发明涉及无线通信领域,一种用于正交频分(OFDM)系统的动态比特加载方法。

背景技术
正交频分复用(OFDM)是一种移动通信环境下的多载波传输技术,其最大的特点就是将可用频带划分成若干个子载波,从而将频率选择性信道转化成一系列正交的平坦衰落信道,结合循环前缀,OFDM可以有效的对抗多径效应,极大地提高了数据传输速率;由于子载波在频谱上的重叠,OFDM极大地提高了频谱利用率;由于IFFT/FFT可以用来实现OFDM的调制/解调,极大地简化了多载波系统发射机和接收机的设计。OFDM在数字视频/音频广播(DVB-T/DAB)、无线局域网(IEEE802.11Serial、Hiper-LAN/2)、数字用户线(xDSL)等领域中都获得了广泛的应用。
OFDM易于同动态资源分配技术相结合,可以显著提高系统容量,从而受到广泛关注。理论上,注水法可以获得最优的比特加载性能。但是采用注水法获得的比特加载结果是连续的任意实数,与实际通信系统中的BPSK,QPSK,MQAM调制要求的离散整数比特加载相矛盾。目前,离散整数比特加载的算法可以分为两类一类是在注水算法的基础上进行舍入近似,如Chow算法、Fischer算法等;另一类是直接解决离散整数资源分配问题,如Greedy(贪婪)算法、Campello算法。可以证明贪婪算法是离散整数比特加载的最优算法,在比较OFDM系统资源分配算法性能时,常为人采用。但是贪婪算法在用户资源较多时,复杂度很高,不能满足实时通信的要求。有鉴于此,对性能优而复杂度低的比特加载算法进行研究具有很大的实际意义。


发明内容
贪婪算法的显著特点是每次只为一个子载波加载若干个比特,并且每次比特加载都需要进行必要的计算以确定目标子载波。其复杂度主要存在于每次目标子载波的选择计算上。当为用户分配的子载波较多或者要求的速率较高时,算法的实时性很难保证。现存的复杂度低的比特加载算法相对于贪婪算法往往存在性能损失。为了兼顾性能和复杂度两个方面,本发明首先确定具有相同贪婪算法比特加载共性的子载波的边界,随后将排序后的子载波分组,每次同时为多个子载波加载比特,极大地降低了目标子载波选择的复杂度。
本发明提供了OFDM系统中的基于Greedy算法的改进方法,其原理为首先对为用户分配的子载波按照其信道增益平方的大小进行降序排列,然后按照计算出的分组边界将子载波分组。将子载波分组的目的是当进行比特加载时,选定组内的所有子载波可同时加载比特,极大地简化了比特加载过程。按组加载比特时各组的加载顺序为第一次加载的组为A1;第二次加载的组为A1,A2;第三次加载的组为A1,A2,A3;第四次加载的组为A1,A2,A3,A4;......考虑到子载波信道增益的随机性及由此引起的每组内子载波个数的不确定性,为了满足要求的速率,本发明利用划分子组的方法或Greedy算法做进一步的细化比特加载,逐步逼近要求的速率。
本发明提供的比特加载方法包括如下步骤 考虑一个OFDM系统,对于某个用户,为其分配的子载波和相应子载波的信道增益全部已知,用户需要加载的总的比特数记为R。
首先基站对为用户分配的所有子载波按照信道增益平方的大小进行降序排列,并将该用户的子载波信道增益平方的最大值记为|αmax|2,计算分组界限的方法如下设速率-功率函数为f(c)(f(c)表示在信道增益等于1时,在某一个子载波上实现可靠接收c个信息比特所需的发射功率),第一次加载ΔB比特时,第一组所有子载波全部加载ΔB比特,其边界决定于该组内子载波是否有子载波要加载第二个ΔB比特,故第一组内的任意子载波j的信道增益平方|αj|2应该满足 考虑到实际情况中无线通信的调制方式多为MQAM(M=4,16,64),c为偶数,速率-功率函数的具体表达式可采用N0为噪声方差,Pe为误比特率,整理上式可得,若取ΔB=2,则有即对于第n组的边界,类似上述推导,可得根据算出的边界比例系数为确定各组子载波信道增益平方的界限。第一组A1(b1|αmax|2,b0|αmax|2),第二组A2(b2|αmax|2,b1|αmax|2)...,由于子载波已经按其信道增益平方降序排列,只需按序将子载波序号分入各组,即若|αn|2∈(b1|αmax|2,b0|αmax|2),则αn∈A1;若|αn|2∈(b2|αmax|2,b1|αmax|2),则αn∈A2L L。
比特加载时首先是整组加载,整组加载比特时,各组的顺序为第一次A1内所有子载波同时加载ΔB比特;第二次A1,A2内所有子载波同时加载ΔB比特;第三次为A1,A2,A3;依次类推,并在每次加载完毕后,将目前用户已加载的比特数与需要加载的总的比特数R比较,此时会出现三种结果一,两者相等,此种情况下比特加载过程结束;二,前者大于后者,此种情况下取消此次比特加载,用划分子组或贪婪算法完成剩余比特的加载;三,前者小于后者,此种情况下进入下一次比特加载过程。
当用户整组加载比特>R时,记录最近一次加载比特<R时的各组分配结果,用于后面的划分子组操作。对上述记录的分组划分子组A1=A11+A12,两个子组的公共边界取A1左右边界的中点,其中A11称为A1的左子组,A12称为A1的右子组。各子组的比特加载原则和顺序为首先假设对所有左子组(A11,A21,A31,A41L)内的所有子载波加载ΔB比特,将用户已加载的比特数与需要加载的总的比特数R比较,会出现四种结果一,两者相等,此种情况下比特加载过程结束;二,前者大于后者,将所有左子组作为原始分组再次划分新的子组,对新划分得到的子组进行操作;三,前者小于后者且大于后者的β倍,此时用贪婪算法完成剩余比特的加载;四,前者小于后者的β倍,此时将所有右子组作为原始分组再次划分新的子组,对新划分得到的子组进行操作。
本发明的特点是利用对子载波排序、分组的方法,一次为多个子载波加载比特,减少了Greedy算法每次选择子载波时的复杂度。



图1示出了对子载波加载比特的总流程图。
图2示出了采用划分子组或Greedy算法加载剩余比特的流程图。
图3给出了整组加载比特时各组加载顺序的一个实例。
表1给出了对复杂度数值仿真时涉及到的具体参数。
表1 图4给出了当子载波个数的范围为8~128时,两种算法计算复杂度的比例关系(改进算法的复杂度除以Greedy算法的复杂度)。
图5给出了当子载波个数的范围为128~512时,两种算法计算复杂度的比例关系(改进算法的复杂度除以Greedy算法的复杂度)。

具体实施例方式 下面通过附图对本发明进行详细阐述。
图1示出了对子载波加载比特的总流程图。
假定基站已知用户的信道增益,R表示用户需要加载的总的比特数。
该流程从步骤101开始,进入步骤102,找出用户的子载波信道增益平方的最大值|αmax|2,并根据|αmax|2确定各子载波分组的边界。
在步骤103,对子载波按信道增益排序,并根据102确定的边界对子载波进行分组。
在步骤104,开始进入循环流程,设定计数变量初始值n=1。
在步骤105,完成整组加载比特过程,第n次各组加载的顺序为A1,A2,…,An。
在步骤106,将已经加载的比特数与R相比较,若两者相等,则进入步骤110,比特加载过程结束;若两者不相等,则转步骤107。
在步骤107,将已经加载的比特数与R相比较,若是前者小于后者,则进入步骤108;若是前者大于后者,则进入步骤109。
在步骤108,计数变量增加一个计量单位,即n=n+1。
在步骤109,撤销第n次比特加载,采用划分子组或Greedy算法完成剩余比特加载。
图2示出了采用划分子组或Greedy算法加载剩余比特的流程图。
该流程从步骤201开始,进入步骤202,确定各个子组的边界,将子载波分组分为左右子组。
在步骤203,假设为所有左子组内的子载波同时加载ΔB比特。
在步骤204,将已经加载的比特数与R相比较,若两者相等,则进入步骤210,比特加载过程结束;若两者不相等,则转步骤205。
在步骤205,将已经加载的比特数与R相比较,若是前者小于后者,则进入步骤207;若是前者大于后者,则进入步骤206。
在步骤206,将左子组作为原始分组继续划分新的左右子组,并进入步骤203。
在步骤207,将已经加载的比特数与βR相比较,若是前者小于后者,则进入步骤208;若是前者大于等于后者,进入步骤209。
在步骤208,将所有左子组全部同时加载ΔB比特,并将右子组作为原始分组继续划分新的左右子组,进入步骤203。
在步骤209,用贪婪算法完成剩余的比特加载。
图3给出了整组加载比特时各组子载波加载顺序的一个实例。
其横坐标为子载波的组号,纵坐标为每组子载波加载的比特数。划分子组后子组的比特加载顺序与此类似。
性能分析 表1给出了对方案复杂度数值仿真时涉及到的具体参数,如为每个用户分配的子载波数,每个用户加载的比特数与其速率要求的比例关系,参与比特加载的组数、划分子组的次数等等。
图4,图5的横坐标表示用户分配的子载波数,纵坐标表示两种算法计算复杂度的比例(改进算法的复杂度除以Greedy算法的复杂度),其中图4中用户分配的子载波个数的范围为8~128,图5中用户分配的子载波个数的范围为128~512。从图中可以看出,本发明的复杂度在用户的速率要求较高时或者分配的子载波较多时明显低于Greedy算法,资源分配问题的规模越大,本专利提供的算法的相对性能越好。
复杂度分析 实际应用中,无线通信采用的调制方式多为QPSK,16QAM,64QAM,每次加载的比特数均为2个,由于本专利提出的改进算法在每次加载2个比特时与Greedy算法性能相同,这里将本专利与Greedy算法的复杂度进行比较。
复杂度分析如下 Greedy算法第一次加载ΔB比特,计算

i=1,2,L,N,一共需要计算N次,其中N表示为用户分配的子载波个数,从中挑出最小值需要的复杂度为

;第二次加载ΔB比特,计算

其中ii为上一次选中的子载波,共只需计算一次,从中挑出最小值需要做N次比较;后续复杂度分析与第二次类似。分配完毕后,共循环

次,R为该用户需要发送的比特数。所以总的复杂度为近似为

其中每次实数加法需要1次浮点操作,每次实数乘法需要1次浮点操作。
改进算法首先挑出具有最大信道增益平方的子载波,其需要比较的次数为N,对用户的所有子载波按照信道增益平方的大小进行降序排列,其需要的比较次数近似为1.386Nlog2N-2.846N。开始分组时,首先确定A1内的子载波,其方法为将A1的右边界b1|αmax|2插入排序后的子载波中间,其最坏情况下的比较次数为


表示取小于x的最小的整数,插入其它组(子组)边界地分析情况与此类似,只不过插值时问题的规模变小(更小)。考虑到N值的实际范围在几十至几百之间,插入引起的复杂度完全可以忽略。
设操作中,分组的总数为G,实际比特加载过程中,开始划分子组时,参与比特加载的子载波分组数为g,则未划分子组前需要的比较次数为g。划分子组过程中,每次确定子组的边界需要计算一次bg2=(bl+br)/2,其复杂度为2g,同时还需要一次与R的比较,所以复杂度为2g+1;假定分配过程中需要划分子组k次,则复杂度为kg(2g+1);考虑到实际应用和对于αmax的设定,g,k一般为个位数,且最后用Greedy算法完成剩余比特分配的复杂度可以忽略。所以总的复杂度为N+1.386N1gN-2.486N+k(2g+1)≈1.386N log2N-1.486N+k(2g+1)。实际分配过程中,N一般在几十至几百间取值。
权利要求
1、一种用于正交频分(OFDM)多载波系统的动态比特加载方法,该方法的特征在于基站根据用户的信道状态信息,将子载波按信道增益平方的大小进行降序排列;根据Greedy算法比特加载过程中的特点,将排序后的子载波按确定的界限分组,然后以分组为单位对各组子载波按序整组进行比特加载;根据比特加载的完成情况,以及系统的参数设定,采用划分子组或贪婪算法完成剩余比特加载。
2、根据权利要求1中所述的按照子载波的信道增益,将给用户分配的子载波按信道增益平方的大小进行降序排列,对排序后的子载波进行分组,其特征在于,首先基站对给用户分配的所有子载波按照信道增益平方进行降序排列,并选出用户所有子载波信道增益平方的最大值,记为|αmax|2,根据算出的各组的边界比例系数n=0,1,2,...,其中ΔB为每次为每个子载波加载的比特数。确定各子载波分组内子载波的信道增益平方的界限b0|αmax|2=|αmax|2,...,则各子载波分组按信道增益平方划分的区间分别为第一组A1(b1|αmax|2,b0|αmax|2),第二组A2(b2|αmax|2,b1|αmax|2)…,由于子载波已经按其信道增益的平方降序排列,只需按序将子载波序号分入各组,即若|αn|2∈(b1|αmax|2,b0|αmax|2),则αn∈A1;若|αn|2∈(b2|αmax|2,b1|αmax|2),则αn∈A2……。
3、根据权利要求1中所述的对各组进行整组比特加载,其特征在于整组加载比特的顺序为,第一次对A1内所有子载波加载ΔB比特;第二次对A1,A2内所有子载波加载ΔB比特;第三次对A1,A2,A3内所有子载波加载ΔB比特;第四次对A1,A2,A3,A4内所有子载波加载ΔB比特;......以此类推,并在每次加载完毕后,将目前用户已加载的比特数与需要加载的总的比特数比较,此时会出现三种结果一,两者相等,此种情况下比特加载过程结束;二,前者大于后者,此种情况下取消此次比特加载,用划分子组或贪婪算法完成剩余比特的加载;三,前者小于后者,此种情况下进入下一次整组比特加载过程。
4、根据权利要求1中所述的划分子组,其特征在于记第g分组的左右边界分别为bl,br,则重新划分的两个子组的边界分别为bg1=bl,bg2=(bl+br)/2,bg3=br,左边子组Ag1为信道增益平方在(bg1|αmax|2,bg2|αmax|2)内的子载波,右边子组Ag2为信道增益平方在(bg2|αmax|2,bg3|αmax|2)内的子载波;继续对子组划分时的情形与此类似;若计算的子组区间内没有子载波,则划分的子组为空集。
5、根据权利要求1中所述的系统的参数设定条件,其特征在于,0<β<1,参数β根据算法要求的实际情况选取,设定β的目的是降低分组过小引起的复杂度。
6、根据权利要求1中所述的采用划分子组或是贪婪算法加载比特,其特征在于,新划分的子组与原来的子载波分组的关系为,A11+A12=A1,A21+A22=A2,…;对子组加载比特的原则为假设对所有左边的子组(A11,A21,A31,A41…)的所有子载波加载ΔB比特,将用户已加载的比特数与需要加载的总的比特数比较,会出现四种结果一,两者相等,此种情况下比特加载过程结束;二,前者大于后者,将上次划分子组所得所有左子组作为原始分组按照权利要求4再次划分新的左右子组,对新划分得到的子组进行操作;三,前者小于后者且大于后者的β倍,此时用贪婪算法完成剩余比特的加载;四,前者小于后者的β倍,此时将所有右子组作为原始分组按照权利要求4再次划分新的子组,对新划分得到的子组进行操作。
全文摘要
本发明是对基于Greedy(贪婪)算法的传统比特加载方法的改进,用于动态分配子载波的加载比特,适用于采用正交频分(OFDM)技术的多用户和单用户系统。其对Greedy算法的最大改进是利用实时反馈的信道状态信息,对子载波进行排序分组,实现一次对多个子载波进行比特加载,从而加速比特加载过程。与传统的每次对一个子载波加载比特的Greedy算法相比,本发明提供的方法在保证性能的同时大幅度降低了算法的复杂度。
文档编号H04L27/26GK101478517SQ200810222668
公开日2009年7月8日 申请日期2008年9月22日 优先权日2008年9月22日
发明者刘元安, 胡玉佩, 毅 赵, 刚 谢, 唐碧华, 高锦春 申请人:北京邮电大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1