发明名称 一种对复数信道矩阵的SVD分解方法
摘要 本发明公开了一种适合于硬件实现的复数信道信道矩阵SVD分解方法。在多输入多输出(MIMO)无线通信系统中,信道矩阵是复数矩阵,一种常见的预编码方法是对信道矩阵进行SVD分解。复数矩阵在求SVD分解时涉及到大量的角度运算,这在实际硬件中复杂度很高,会消耗大量的资源。本发明提出一种简化算法,使用各种三角恒等式的推导将三角函数变成了矩阵中元素实部与虚部值的函数。用少量的乘、除法和开平方的等基本运算代替了大量的求三角函数的工作。
申请公布号 CN103532890B 申请公布日期 2017.03.29
申请号 CN201310522665.4 申请日期 2013.10.29
申请人 东南大学 发明人 俞菲;林翰;缪小龙;巴特尔;黄永明;杨绿溪
分类号 H04L25/03(2006.01)I;H04B7/04(2017.01)I;G06F17/15(2006.01)I;G06F17/16(2006.01)I 主分类号 H04L25/03(2006.01)I
代理机构 江苏永衡昭辉律师事务所 32250 代理人 王斌
主权项 一种对复数信道矩阵的SVD分解方法,其中,所述复数信道矩阵为2×2复数矩阵H,所述方法包括以下步骤:(1)对2×2复数矩阵H进行一次双边酉变换,把矩阵的第二行变为实数,得到矩阵V<sub>1</sub>;<maths num="0001"><math><![CDATA[<mrow><mi>H</mi><mo>=</mo><mfenced open = "[" close = "]"><mtable><mtr><mtd><mrow><msup><mi>Ae</mi><mrow><msub><mi>i&theta;</mi><mi>a</mi></msub></mrow></msup></mrow></mtd><mtd><mrow><msup><mi>Be</mi><mrow><msub><mi>i&theta;</mi><mi>b</mi></msub></mrow></msup></mrow></mtd></mtr><mtr><mtd><mrow><msup><mi>Ce</mi><mrow><msub><mi>i&theta;</mi><mi>c</mi></msub></mrow></msup></mrow></mtd><mtd><mrow><msup><mi>De</mi><mrow><msub><mi>i&theta;</mi><mi>d</mi></msub></mrow></msup></mrow></mtd></mtr></mtable></mfenced></mrow>]]></math><img file="FDA0000982889720000011.GIF" wi="382" he="149" /></maths><img file="FDA0000982889720000012.GIF" wi="1150" he="230" />其中:<maths num="0002"><math><![CDATA[<mfenced open = "" close = ""><mtable><mtr><mtd><mrow><msub><mi>&theta;</mi><mi>&alpha;</mi></msub><mo>=</mo><mo>-</mo><mfrac><mrow><msub><mi>&theta;</mi><mi>d</mi></msub><mo>+</mo><msub><mi>&theta;</mi><mi>c</mi></msub></mrow><mn>2</mn></mfrac></mrow></mtd><mtd><mrow><msub><mi>&theta;</mi><mi>&beta;</mi></msub><mo>=</mo><mo>-</mo><mfrac><mrow><msub><mi>&theta;</mi><mi>d</mi></msub><mo>-</mo><msub><mi>&theta;</mi><mi>c</mi></msub></mrow><mn>2</mn></mfrac></mrow></mtd></mtr></mtable></mfenced>]]></math><img file="FDA0000982889720000013.GIF" wi="686" he="111" /></maths>θ<sub>a'</sub>=θ<sub>a</sub>‑θ<sub>c</sub>     θ<sub>b'</sub>=θ<sub>b</sub>‑θ<sub>d</sub>;(2)对步骤(1)的结果进行一次双边Jacobi旋转,将元素C消去,得到矩阵V<sub>2</sub>和R:<img file="FDA0000982889720000014.GIF" wi="1386" he="206" />其中θ<sub>φ</sub>=0 即<img file="FDA0000982889720000015.GIF" wi="248" he="135" /><maths num="0003"><math><![CDATA[<mrow><msub><mi>&theta;</mi><mi>&psi;</mi></msub><mo>=</mo><mi>arctan</mi><mrow><mo>(</mo><mfrac><mi>C</mi><mi>D</mi></mfrac><mo>)</mo></mrow><mo>,</mo><mrow><mo>(</mo><mfrac><mi>&pi;</mi><mn>2</mn></mfrac><mo>&le;</mo><msub><mi>&theta;</mi><mi>&psi;</mi></msub><mo>&le;</mo><mfrac><mi>&pi;</mi><mn>2</mn></mfrac><mo>)</mo></mrow><mo>;</mo></mrow>]]></math><img file="FDA0000982889720000016.GIF" wi="622" he="103" /></maths>(3)再次对步骤(2)的结果使用双边酉变换,把矩阵的第一行变为实数,得到两个幅角,.从而得到矩阵V<sub>3</sub>;<img file="FDA0000982889720000017.GIF" wi="1045" he="231" />其中<maths num="0004"><math><![CDATA[<mrow><mtable><mtr><mtd><mrow><msub><mi>&theta;</mi><mi>&xi;</mi></msub><mo>=</mo><mo>-</mo><mfrac><mrow><msub><mi>&theta;</mi><mi>w</mi></msub><mo>+</mo><msub><mi>&theta;</mi><mi>x</mi></msub></mrow><mn>2</mn></mfrac></mrow></mtd><mtd><mrow><msub><mi>&theta;</mi><mi>&eta;</mi></msub><mo>=</mo><mfrac><mrow><msub><mi>&theta;</mi><mi>w</mi></msub><mo>-</mo><msub><mi>&theta;</mi><mi>x</mi></msub></mrow><mn>2</mn></mfrac></mrow></mtd></mtr></mtable><mo>;</mo></mrow>]]></math><img file="FDA0000982889720000018.GIF" wi="630" he="126" /></maths>(4)再做一次双边Jacobi旋转,实现最终的对角化;<img file="FDA0000982889720000021.GIF" wi="1223" he="204" />其中<maths num="0005"><math><![CDATA[<mfenced open = "" close = ""><mtable><mtr><mtd><mrow><mi>t</mi><mi>a</mi><mi>n</mi><mrow><mo>(</mo><msub><mi>&theta;</mi><mi>&lambda;</mi></msub><mo>+</mo><msub><mi>&theta;</mi><mi>&rho;</mi></msub><mo>)</mo></mrow><mo>=</mo><mfrac><mi>X</mi><mrow><mi>Z</mi><mo>-</mo><mi>W</mi></mrow></mfrac></mrow></mtd><mtd><mrow><mi>t</mi><mi>a</mi><mi>n</mi><mrow><mo>(</mo><msub><mi>&theta;</mi><mi>&lambda;</mi></msub><mo>-</mo><msub><mi>&theta;</mi><mi>&rho;</mi></msub><mo>)</mo></mrow><mo>=</mo><mfrac><mi>X</mi><mrow><mi>Z</mi><mo>+</mo><mi>W</mi></mrow></mfrac></mrow></mtd></mtr></mtable></mfenced>]]></math><img file="FDA0000982889720000022.GIF" wi="949" he="104" /></maths>计算矩阵V<sub>4</sub>时,通过步骤(2)中的矩阵<img file="FDA0000982889720000023.GIF" wi="386" he="150" />直接通过三角恒等变换求出<img file="FDA0000982889720000024.GIF" wi="790" he="119" />和<img file="FDA0000982889720000025.GIF" wi="811" he="119" />具体过程如下:令<img file="FDA0000982889720000026.GIF" wi="870" he="111" />则<img file="FDA0000982889720000027.GIF" wi="227" he="103" /><img file="FDA0000982889720000028.GIF" wi="1326" he="87" />Z=R<sub>2,2</sub><maths num="0006"><math><![CDATA[<mrow><msub><mi>&lambda;</mi><mn>1</mn></msub><mo>=</mo><mfrac><mrow><mi>Z</mi><mo>-</mo><mi>W</mi></mrow><mi>X</mi></mfrac><mo>=</mo><mi>cot</mi><mi>&alpha;</mi><mo>,</mo><mrow><mo>(</mo><mo>-</mo><mfrac><mi>&pi;</mi><mn>2</mn></mfrac><mo>&le;</mo><mi>&alpha;</mi><mo>&le;</mo><mfrac><mi>&pi;</mi><mn>2</mn></mfrac><mo>)</mo></mrow></mrow>]]></math><img file="FDA0000982889720000029.GIF" wi="766" he="111" /></maths><maths num="0007"><math><![CDATA[<mrow><msub><mi>x</mi><mn>1</mn></msub><mo>=</mo><msqrt><mrow><mn>1</mn><mo>+</mo><msubsup><mi>&lambda;</mi><mn>1</mn><mn>2</mn></msubsup></mrow></msqrt><mo>=</mo><msqrt><mrow><mn>1</mn><mo>+</mo><msup><mi>cot</mi><mn>2</mn></msup><mi>&alpha;</mi></mrow></msqrt><mo>=</mo><mfrac><mn>1</mn><mrow><mo>|</mo><mi>s</mi><mi>i</mi><mi>n</mi><mi>&alpha;</mi><mo>|</mo></mrow></mfrac></mrow>]]></math><img file="FDA00009828897200000210.GIF" wi="684" he="130" /></maths><maths num="0008"><math><![CDATA[<mrow><msub><mi>y</mi><mn>1</mn></msub><mo>=</mo><mfrac><mn>1</mn><mrow><mo>|</mo><msub><mi>&tau;</mi><mn>1</mn></msub><mo>|</mo><mo>+</mo><msub><mi>x</mi><mn>1</mn></msub></mrow></mfrac><mo>=</mo><mfrac><mn>1</mn><mrow><mo>|</mo><mfrac><mrow><mi>c</mi><mi>o</mi><mi>s</mi><mi>&alpha;</mi></mrow><mrow><mi>s</mi><mi>i</mi><mi>n</mi><mi>&alpha;</mi></mrow></mfrac><mo>+</mo><mfrac><mn>1</mn><mrow><mi>s</mi><mi>i</mi><mi>n</mi><mi>&alpha;</mi></mrow></mfrac><mo>|</mo></mrow></mfrac><mo>=</mo><mfrac><mrow><mo>|</mo><mi>s</mi><mi>i</mi><mi>n</mi><mi>&alpha;</mi><mo>|</mo></mrow><mrow><mi>c</mi><mi>o</mi><mi>s</mi><mi>&alpha;</mi><mo>+</mo><mn>1</mn></mrow></mfrac></mrow>]]></math><img file="FDA00009828897200000211.GIF" wi="782" he="195" /></maths><maths num="0009"><math><![CDATA[<mfenced open = "" close = ""><mtable><mtr><mtd><mrow><msub><mi>c</mi><mn>1</mn></msub><mo>=</mo><mfrac><mn>1</mn><msqrt><mrow><mn>1</mn><mo>+</mo><msubsup><mi>y</mi><mn>1</mn><mn>2</mn></msubsup></mrow></msqrt></mfrac><mo>=</mo><mfrac><mn>1</mn><msqrt><mrow><mn>1</mn><mo>+</mo><mfrac><mrow><msup><mi>sin</mi><mn>2</mn></msup><mi>&alpha;</mi></mrow><msup><mrow><mo>(</mo><mi>cos</mi><mi>&alpha;</mi><mo>+</mo><mn>1</mn><mo>)</mo></mrow><mn>2</mn></msup></mfrac></mrow></msqrt></mfrac><mo>=</mo><mfrac><mn>1</mn><msqrt><mfrac><mrow><msup><mrow><mo>(</mo><mi>c</mi><mi>o</mi><mi>s</mi><mi>&alpha;</mi><mo>+</mo><mn>1</mn><mo>)</mo></mrow><mn>2</mn></msup><mo>+</mo><msup><mi>sin</mi><mn>2</mn></msup><mi>&alpha;</mi></mrow><msup><mrow><mo>(</mo><mi>c</mi><mi>o</mi><mi>s</mi><mi>&alpha;</mi><mo>+</mo><mn>1</mn><mo>)</mo></mrow><mn>2</mn></msup></mfrac></msqrt></mfrac><mo>=</mo><mfrac><mn>1</mn><msqrt><mfrac><mrow><mn>2</mn><mrow><mo>(</mo><mi>c</mi><mi>o</mi><mi>s</mi><mi>&alpha;</mi><mo>+</mo><mn>1</mn><mo>)</mo></mrow></mrow><msup><mrow><mo>(</mo><mi>cos</mi><mi>&alpha;</mi><mo>+</mo><mn>1</mn><mo>)</mo></mrow><mn>2</mn></msup></mfrac></msqrt></mfrac></mrow></mtd></mtr><mtr><mtd><mrow><mo>=</mo><msqrt><mfrac><mrow><mi>cos</mi><mi>&alpha;</mi><mo>+</mo><mn>1</mn></mrow><mn>2</mn></mfrac></msqrt><mo>=</mo><msqrt><mfrac><mrow><mrow><mo>(</mo><mrow><mn>2</mn><msup><mi>cos</mi><mn>2</mn></msup><mfrac><mi>&alpha;</mi><mn>2</mn></mfrac><mo>-</mo><mn>1</mn></mrow><mo>)</mo></mrow><mo>+</mo><mn>1</mn></mrow><mn>2</mn></mfrac></msqrt><mo>=</mo><mo>|</mo><mi>cos</mi><mfrac><mi>&alpha;</mi><mn>2</mn></mfrac><mo>|</mo><mo>=</mo><mi>cos</mi><mfrac><mi>&alpha;</mi><mn>2</mn></mfrac><mo>,</mo><mrow><mo>(</mo><mrow><mo>-</mo><mfrac><mi>&pi;</mi><mn>4</mn></mfrac><mo>&le;</mo><mfrac><mi>&alpha;</mi><mn>2</mn></mfrac><mo>&le;</mo><mfrac><mi>&pi;</mi><mn>4</mn></mfrac></mrow><mo>)</mo></mrow></mrow></mtd></mtr></mtable></mfenced>]]></math><img file="FDA00009828897200000212.GIF" wi="1430" he="430" /></maths><maths num="0010"><math><![CDATA[<mrow><msub><mi>s</mi><mn>1</mn></msub><mo>=</mo><msub><mi>y</mi><mn>1</mn></msub><mo>&CenterDot;</mo><msub><mi>c</mi><mn>1</mn></msub><mo>=</mo><mfrac><mrow><mo>|</mo><mi>s</mi><mi>i</mi><mi>n</mi><mi>&alpha;</mi><mo>|</mo></mrow><mrow><mi>c</mi><mi>o</mi><mi>s</mi><mi>&alpha;</mi><mo>+</mo><mn>1</mn></mrow></mfrac><mo>&CenterDot;</mo><mi>c</mi><mi>o</mi><mi>s</mi><mfrac><mi>&alpha;</mi><mn>2</mn></mfrac><mo>=</mo><mfrac><mrow><mn>2</mn><mo>|</mo><mi>s</mi><mi>i</mi><mi>n</mi><mfrac><mi>&alpha;</mi><mn>2</mn></mfrac><mo>|</mo><msup><mi>cos</mi><mn>2</mn></msup><mfrac><mi>&alpha;</mi><mn>2</mn></mfrac></mrow><mrow><mo>(</mo><mn>2</mn><msup><mi>cos</mi><mn>2</mn></msup><mfrac><mi>&alpha;</mi><mn>2</mn></mfrac><mo>-</mo><mn>1</mn><mo>)</mo><mo>+</mo><mn>1</mn></mrow></mfrac><mo>=</mo><mo>|</mo><mi>s</mi><mi>i</mi><mi>n</mi><mfrac><mi>&alpha;</mi><mn>2</mn></mfrac><mo>|</mo></mrow>]]></math><img file="FDA00009828897200000213.GIF" wi="1076" he="245" /></maths>若λ<sub>1</sub><0,s<sub>1</sub>=‑s<sub>1</sub>,即<img file="FDA0000982889720000031.GIF" wi="194" he="95" />同理也可以求得<img file="FDA0000982889720000032.GIF" wi="453" he="103" /><maths num="0011"><math><![CDATA[<mrow><msub><mi>cos&theta;</mi><mi>&rho;</mi></msub><mo>=</mo><mi>c</mi><mi>o</mi><mi>s</mi><mrow><mo>(</mo><mfrac><mi>&alpha;</mi><mn>2</mn></mfrac><mo>-</mo><mfrac><mi>&beta;</mi><mn>2</mn></mfrac><mo>)</mo></mrow><mo>=</mo><mi>c</mi><mi>o</mi><mi>s</mi><mfrac><mi>&alpha;</mi><mn>2</mn></mfrac><mi>c</mi><mi>o</mi><mi>s</mi><mfrac><mi>&beta;</mi><mn>2</mn></mfrac><mo>+</mo><mi>s</mi><mi>i</mi><mi>n</mi><mfrac><mi>&alpha;</mi><mn>2</mn></mfrac><mi>s</mi><mi>i</mi><mi>n</mi><mfrac><mi>&beta;</mi><mn>2</mn></mfrac><mo>=</mo><msub><mi>c</mi><mn>1</mn></msub><mo>&CenterDot;</mo><msub><mi>c</mi><mn>2</mn></msub><mo>+</mo><msub><mi>s</mi><mn>1</mn></msub><mo>&CenterDot;</mo><msub><mi>s</mi><mn>2</mn></msub></mrow>]]></math><img file="FDA0000982889720000033.GIF" wi="1230" he="103" /></maths><maths num="0012"><math><![CDATA[<mrow><msub><mi>sin&theta;</mi><mi>&rho;</mi></msub><mo>=</mo><mi>s</mi><mi>i</mi><mi>n</mi><mrow><mo>(</mo><mfrac><mi>&alpha;</mi><mn>2</mn></mfrac><mo>-</mo><mfrac><mi>&beta;</mi><mn>2</mn></mfrac><mo>)</mo></mrow><mo>=</mo><mi>s</mi><mi>i</mi><mi>n</mi><mfrac><mi>&alpha;</mi><mn>2</mn></mfrac><mi>c</mi><mi>o</mi><mi>s</mi><mfrac><mi>&beta;</mi><mn>2</mn></mfrac><mo>-</mo><mi>c</mi><mi>o</mi><mi>s</mi><mfrac><mi>&alpha;</mi><mn>2</mn></mfrac><mi>s</mi><mi>i</mi><mi>n</mi><mfrac><mi>&beta;</mi><mn>2</mn></mfrac><mo>=</mo><msub><mi>s</mi><mn>1</mn></msub><mo>&CenterDot;</mo><msub><mi>c</mi><mn>2</mn></msub><mo>-</mo><msub><mi>c</mi><mn>1</mn></msub><mo>&CenterDot;</mo><msub><mi>s</mi><mn>2</mn></msub></mrow>]]></math><img file="FDA0000982889720000034.GIF" wi="1221" he="103" /></maths>即<img file="FDA0000982889720000035.GIF" wi="686" he="142" />最终U<sup>H</sup>=U<sub>4</sub>·U<sub>3</sub>·U<sub>2</sub>·U<sub>1</sub>V=V<sub>1</sub>·V<sub>2</sub>·V<sub>3</sub>·V<sub>4</sub>即<maths num="0013"><math><![CDATA[<mrow><msup><mi>U</mi><mi>H</mi></msup><mi>H</mi><mi>V</mi><mo>=</mo><mi>&Sigma;</mi><mo>=</mo><mfenced open = "[" close = "]"><mtable><mtr><mtd><mi>P</mi></mtd><mtd><mn>0</mn></mtd></mtr><mtr><mtd><mn>0</mn></mtd><mtd><mi>Q</mi></mtd></mtr></mtable></mfenced><mo>.</mo></mrow>]]></math><img file="FDA0000982889720000036.GIF" wi="462" he="135" /></maths> 
地址 210096 江苏省南京市四牌楼2号