发明名称 一种正交频分复用多天线系统中的跨层调度方法
摘要 本发明正交频分复用多天线系统中的跨层调度方法,特征是每个用户都被赋予一个其值随用户的服务状态和信道状态动态变化的优先级参数;基站根据优先级参数选择使系统总的优先级参数最大的用户集传输;调度被划分为用户选择和功率分配两个步骤;用户选择设在各天线和各子载波间均分发送功率,选择使优先级最大的用户进行服务;功率分配根据用户选择的结果,首先为分配功率以满足实时语音用户传输速率要求,然对其余用户的功率分配采用基于优先级的灌水方法。本发明能有效地在各类业务之间动态地分配系统资源,以满足不同业务之间的服务质量要求,并且可以通过选择信道质量较好的用户服务以实现对系统资源的有效利用。
申请公布号 CN100589474C 申请公布日期 2010.02.10
申请号 CN200710021791.6 申请日期 2007.04.29
申请人 中国科学技术大学 发明人 王君;邱玲
分类号 H04L27/26(2006.01)I;H04B7/04(2006.01)I 主分类号 H04L27/26(2006.01)I
代理机构 安徽省合肥新安专利代理有限责任公司 代理人 何梅生
主权项 1、一种正交频分复用多天线系统中的跨层调度方法,基站装配有多根天线,用户装配单天线;系统带宽划分为多个子载波;基站与用户的通信采用正交频分复用-空分多址方式;用户数据到达基站后按照其业务类型被缓存到与之对应的队列中;每个用户通过反馈链路反馈其检测出的信道状态信息到基站;基站结合信道状态信息、服务状态需求信息进行用户调度和功率分配;用户数据经过迫零波束成型和正交频分复用调制后通过天线发送到用户;用户接收机根据基站在训练阶段发射的导频信号和本接收机在训练阶段的接收信号进行反向求解获得信道状态信息;其特征在于:所述调度划分为用户选择和功率分配两个步骤;调度器在每个时隙运行一次,决定当前时隙要传输的用户集;调度器根据每个用户k的服务状态信息和和在子载波n传输速率赋予一个与之对应优先级参数(Pr<sub>k,n</sub>);基站根据优先级参数Pr<sub>k,n</sub>选择使系统总的优先级参数<img file="C2007100217910002C1.GIF" wi="232" he="108" />最大的用户集传输;完成用户选择后,基站对用户数据经过迫零波束成型确定各用户在各子载波上的空间子信道实际信道增益;基站按照各用户在各子载波上的空间信道增益和用户传输速率的要求,按基于优先级的功率灌水准则将功率分配到各用户;将用户k在子载波n上的优先级参数Pr<sub>k,n</sub>定义为Pr<sub>k,n</sub>=Serv_S<sub>k</sub>×r<sub>k,n</sub>    (F1)其中,用户k在子载波n上获得的传输速率r<sub>k,n</sub>=log<sub>2</sub>(1+P<sub>k,n</sub>γ<sub>k,n</sub>),γ<sub>k,n</sub>为用户k在子载波n上的等效信道增益,P<sub>k,n</sub>为分配给用户k在子载波n上的功率;Serv_S<sub>k</sub>为用户k的服务状态函数;设系统中存在四种业务类型,实时语音业务、实时视频业务、非实时业务和尽力型业务;各类业务的服务状态函数Serv_S<sub>k</sub>由如下公式确定:对于实时语音业务(Voice)用户k:<maths num="0001"><![CDATA[<math><mrow><mi>Serv</mi><mo>_</mo><msub><mi>S</mi><mi>k</mi></msub><mo>=</mo><mi>e</mi><mo>^</mo><mo>[</mo><mi>T</mi><mn>1</mn><mo>/</mo><mrow><mo>(</mo><mi>T</mi><mn>1</mn><mo>-</mo><msubsup><mi>W</mi><mi>Voice</mi><mi>k</mi></msubsup><mo>)</mo></mrow><mo>]</mo><mo>-</mo><mo>-</mo><mo>-</mo><mrow><mo>(</mo><mi>F</mi><mn>2</mn><mo>)</mo></mrow></mrow></math>]]></maths>对于实时视频业务(Video)用户k:<maths num="0002"><![CDATA[<math><mrow><mi>Serv</mi><mo>_</mo><msub><mi>S</mi><mi>k</mi></msub><mo>=</mo><mi>e</mi><mo>^</mo><mo>[</mo><mi>T</mi><mn>2</mn><mo>/</mo><mrow><mo>(</mo><mi>T</mi><mn>2</mn><mo>-</mo><msubsup><mi>W</mi><mi>Video</mi><mi>k</mi></msubsup><mo>)</mo></mrow><mo>]</mo><mo>-</mo><mo>-</mo><mo>-</mo><mrow><mo>(</mo><mi>F</mi><mn>3</mn><mo>)</mo></mrow></mrow></math>]]></maths>对于非实时业务(NRT)用户k:<maths num="0003"><![CDATA[<math><mrow><mi>Serv</mi><mo>_</mo><msub><mi>S</mi><mi>k</mi></msub><mo>=</mo><mi>e</mi><mo>^</mo><mrow><mo>(</mo><msub><mrow><mi>R</mi><mn>3</mn></mrow><mi>NRT</mi></msub><mo>/</mo><msubsup><mi>C</mi><mi>NRT</mi><mi>k</mi></msubsup><mo>)</mo></mrow><mo>-</mo><mo>-</mo><mo>-</mo><mrow><mo>(</mo><mi>F</mi><mn>4</mn><mo>)</mo></mrow></mrow></math>]]></maths>对于尽力型业务(BE)用户k:Serv_S<sub>k</sub>=1        (F5)式(F2)中的T1为语音业务用户k的数据包最大时延门限,W<sub>Voice</sub><sup>k</sup>为其包等待时间;(F3)中的T2为视频业务用户k的数据包最大时延门限,W<sub>Video</sub><sup>k</sup>为其最大包等待时间;(F4)中的R3<sub>NRT</sub>为非实时业务用户k的最小传输速率要求,C<sub>NRT</sub><sup>k</sup>为其到当前时刻t为止获得的平均速率,其值通过一个加窗的低通方法计算:<maths num="0004"><![CDATA[<math><mrow><msubsup><mi>C</mi><mi>NRT</mi><mi>k</mi></msubsup><mrow><mo>(</mo><mi>t</mi><mo>)</mo></mrow><mo>=</mo><msubsup><mi>C</mi><mi>NRT</mi><mi>k</mi></msubsup><mrow><mo>(</mo><mi>t</mi><mo>-</mo><mn>1</mn><mo>)</mo></mrow><mrow><mo>(</mo><mn>1</mn><mo>-</mo><mn>1</mn><mo>/</mo><msub><mi>t</mi><mi>c</mi></msub><mo>)</mo></mrow><mo>+</mo><msubsup><mi>r</mi><mi>NRT</mi><mi>k</mi></msubsup><mrow><mo>(</mo><mi>t</mi><mo>-</mo><mn>1</mn><mo>)</mo></mrow><mo>/</mo><msub><mi>t</mi><mi>c</mi></msub><mo>-</mo><mo>-</mo><mo>-</mo><mrow><mo>(</mo><mi>F</mi><mn>6</mn><mo>)</mo></mrow></mrow></math>]]></maths>其中r<sub>NRT</sub><sup>k</sup>(t-1)为非实时业务用户k在上个时刻的传输速率,t<sub>c</sub>为时间窗的长度;设系统中有K个用户,N个子载波,所述用户选择的具体操作步骤如下:步骤1,初始化,设备选用户集Γ<sub>1</sub>={1,2,...,K},每个子载波n上选出的用户数user(n)为0,user(n)=0,迭代次数i=1;步骤2,计算中间变量<maths num="0005"><![CDATA[<math><mrow><msub><mi>g</mi><mrow><msup><mi>k</mi><mo>&prime;</mo></msup><mo>,</mo><mi>n</mi></mrow></msub><mo>=</mo><msub><mi>h</mi><mrow><msup><mi>k</mi><mo>&prime;</mo></msup><mo>,</mo><mi>n</mi></mrow></msub><mo>-</mo><munderover><mi>&Sigma;</mi><mrow><mi>j</mi><mo>=</mo><mn>1</mn></mrow><mrow><mi>user</mi><mrow><mo>(</mo><mi>n</mi><mo>)</mo></mrow></mrow></munderover><mfrac><mrow><msub><mi>h</mi><mrow><msup><mi>k</mi><mo>&prime;</mo></msup><mo>,</mo><mi>n</mi></mrow></msub><msubsup><mi>g</mi><mrow><mi>j</mi><mo>,</mo><mi>n</mi></mrow><mo>*</mo></msubsup></mrow><msup><mrow><mo>|</mo><mo>|</mo><msub><mi>g</mi><mrow><mi>j</mi><mo>,</mo><mi>n</mi></mrow></msub><mo>|</mo><mo>|</mo></mrow><mn>2</mn></msup></mfrac><msub><mi>g</mi><mrow><mo>(</mo><mi>j</mi><mo>)</mo></mrow></msub><mo>=</mo><msub><mi>h</mi><mrow><msup><mi>k</mi><mo>&prime;</mo></msup><mo>,</mo><mi>n</mi></mrow></msub><mrow><mo>(</mo><mi>I</mi><mo>-</mo><munderover><mi>&Sigma;</mi><mrow><mi>j</mi><mo>=</mo><mn>1</mn></mrow><mrow><mi>user</mi><mrow><mo>(</mo><mi>n</mi><mo>)</mo></mrow></mrow></munderover><mfrac><mrow><msubsup><mi>g</mi><mrow><mi>j</mi><mo>,</mo><mi>n</mi></mrow><mo>*</mo></msubsup><msub><mi>g</mi><mrow><mi>j</mi><mo>,</mo><mi>n</mi></mrow></msub></mrow><msup><mrow><mo>|</mo><mo>|</mo><msub><mi>g</mi><mrow><mi>j</mi><mo>,</mo><mi>n</mi></mrow></msub><mo>|</mo><mo>|</mo></mrow><mn>2</mn></msup></mfrac><mo>)</mo></mrow><mo>;</mo></mrow></math>]]></maths>当user(n)=1时,g<sub>k,n</sub>=h<sub>k,n</sub>;h<sub>k,n</sub>为用户k与基站之间在子载波n上的信道矢量,该变量g<sub>k,n</sub>为h<sub>k,n</sub>在由{g<sub>1,n</sub>,...,g<sub>(user(n)-1),n</sub>}展成的子空间上的投影;步骤3,优先级参数更新,设置<maths num="0006"><![CDATA[<math><mrow><msub><mi>P</mi><mrow><mi>k</mi><mo>,</mo><mi>n</mi></mrow></msub><mo>=</mo><mfrac><msub><mi>P</mi><mi>T</mi></msub><mi>MN</mi></mfrac><mo>,</mo></mrow></math>]]></maths>γ<sub>k</sub>=||g<sub>k</sub>||<sup>2</sup>,计算Γ<sub>i</sub>中所有用户的Pr<sub>k</sub>;P<sub>T</sub>为系统总的发送功率限制,M为装配在基站的发送天线数;步骤4,找出当前最大的Pr<sub>k</sub>,和与它对应的用户k<sup>*</sup>以及所在的子载波n<sup>*</sup>,<maths num="0007"><![CDATA[<math><mrow><msup><mi>k</mi><mo>*</mo></msup><mo>,</mo><msup><mi>n</mi><mo>*</mo></msup><mo>=</mo><munder><munder><mrow><mi>arg</mi><mi>max</mi></mrow><mrow><mi>n</mi><mo>&Element;</mo><mo>{</mo><mn>1</mn><mo>,</mo><mo>.</mo><mo>.</mo><mo>.</mo><mo>,</mo><mi>N</mi><mo>}</mo></mrow></munder><mrow><mi>k</mi><mo>&Element;</mo><mo>{</mo><mn>1</mn><mo>,</mo><mo>.</mo><mo>.</mo><mo>.</mo><mo>,</mo><mi>K</mi><mo>}</mo></mrow></munder><msub><mi>Pr</mi><mrow><mi>k</mi><mo>,</mo><mi>n</mi></mrow></msub><mo>,</mo></mrow></math>]]></maths>若user(n<sup>*</sup>)<M,将用户k<sup>*</sup>分配到子载波n<sup>*</sup>,user(n<sup>*</sup>)=user(n<sup>*</sup>)+1,S(i)=k<sup>*</sup>,i=i+1;S(i)记录了用户选择的顺序;若user(n<sup>*</sup>)≥M,则设<maths num="0008"><![CDATA[<math><mrow><msub><mi>Pr</mi><mrow><msup><mi>k</mi><mo>*</mo></msup><mo>,</mo><msup><mi>n</mi><mo>*</mo></msup></mrow></msub><mo>=</mo><mn>0</mn><mo>,</mo></mrow></math>]]></maths>重复步骤4;如果Γ<sub>i</sub>非空,并且U中用户数|U|满足|U|≤M,则重复步骤2;否则,算法终止;完成调度后,被选择在子载波n上的用户的信道矩阵可以表示为H<sub>n</sub>,用户k在子载波n上的实际信道增益<maths num="0009"><![CDATA[<math><mrow><msub><mi>&gamma;</mi><mrow><mi>k</mi><mo>,</mo><mi>n</mi></mrow></msub><mo>=</mo><mn>1</mn><mo>/</mo><msubsup><mrow><mo>(</mo><msub><mi>H</mi><mi>n</mi></msub><msup><msub><mi>H</mi><mi>n</mi></msub><mi>H</mi></msup><mo>)</mo></mrow><mrow><mi>k</mi><mo>,</mo><mi>k</mi></mrow><mrow><mo>-</mo><mn>1</mn></mrow></msubsup><mo>,</mo></mrow></math>]]></maths>首先分配功率P<sub>k,n</sub>给实时语音业务用户k:<maths num="0010"><![CDATA[<math><mrow><msub><mi>P</mi><mrow><mi>k</mi><mo>,</mo><mi>n</mi></mrow></msub><mo>=</mo><mrow><mo>(</mo><msup><mn>2</mn><msub><mi>Rl</mi><mi>Voice</mi></msub></msup><mo>-</mo><mn>1</mn><mo>)</mo></mrow><mo>/</mo><msub><mi>&gamma;</mi><mrow><mi>k</mi><mo>,</mo><mi>n</mi></mrow></msub><mo>;</mo></mrow></math>]]></maths>其中R1<sub>Voice</sub>为实时语音业务要求的恒定传输比特率;如果分配给所有实时语音用户的功率超出了总的传输功率的限制,则最后被调度的用户将不被传输,即其获得的功率为0;重新计算剩下的用户的实际信道增益,并为实时语音用户分配功率,直到所有的实时语音用户的传输信噪比达到要求或者本次所有实时语音用户传输功率都为零为止;分配给除实时语音业务用户外的其他用户的功率为:<maths num="0011"><![CDATA[<math><mrow><msub><mi>P</mi><mrow><mi>k</mi><mo>,</mo><mi>n</mi></mrow></msub><mo>=</mo><msup><mrow><mo>[</mo><mi>Serv</mi><mo>_</mo><msub><mi>S</mi><mi>k</mi></msub><mo>&CenterDot;</mo><mi>&mu;</mi><mfrac><mn>1</mn><msub><mi>&gamma;</mi><mrow><mi>k</mi><mo>,</mo><mi>n</mi></mrow></msub></mfrac><mo>]</mo></mrow><mo>+</mo></msup><mo>-</mo><mo>-</mo><mo>-</mo><mrow><mo>(</mo><mi>F</mi><mn>7</mn><mo>)</mo></mrow></mrow></math>]]></maths>式(F7)中,如果x≥0,算符[x]<sup>+</sup>=x,否则算符[x]<sup>+</sup>=0;而μ的选择须满足:<maths num="0012"><![CDATA[<math><mrow><munder><mi>&Sigma;</mi><mi>n</mi></munder><munder><mi>&Sigma;</mi><mi>k</mi></munder><msub><mi>P</mi><mrow><mi>k</mi><mo>,</mo><mi>n</mi></mrow></msub><mo>&le;</mo><msub><mi>P</mi><mi>T</mi></msub><mo>-</mo><mo>-</mo><mo>-</mo><mrow><mo>(</mo><mi>F</mi><mn>8</mn><mo>)</mo></mrow><mo>.</mo></mrow></math>]]></maths>
地址 230026安徽省合肥市金寨路96号