CN101252561B - 补偿数据信号的第一分量和第二分量间失衡的方法及系统 - Google Patents

补偿数据信号的第一分量和第二分量间失衡的方法及系统 Download PDF

Info

Publication number
CN101252561B
CN101252561B CN2007101939089A CN200710193908A CN101252561B CN 101252561 B CN101252561 B CN 101252561B CN 2007101939089 A CN2007101939089 A CN 2007101939089A CN 200710193908 A CN200710193908 A CN 200710193908A CN 101252561 B CN101252561 B CN 101252561B
Authority
CN
China
Prior art keywords
overbar
cfo
frequency
signal
equality
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
CN2007101939089A
Other languages
English (en)
Other versions
CN101252561A (zh
Inventor
扎克·利瓦
伊利亚·舒斯特曼
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Broadcom Corp
Zyray Wireless Inc
Original Assignee
Zyray Wireless Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Priority claimed from US11/938,848 external-priority patent/US8090043B2/en
Application filed by Zyray Wireless Inc filed Critical Zyray Wireless Inc
Publication of CN101252561A publication Critical patent/CN101252561A/zh
Application granted granted Critical
Publication of CN101252561B publication Critical patent/CN101252561B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Small-Scale Networks (AREA)
  • Digital Transmission Methods That Use Modulated Carrier Waves (AREA)

Abstract

本发明涉及用于补偿I/Q失衡的装置、方法和系统,可包括补偿数据信号的第一分量和该数据信号的第二分量之间的失衡。通过具有频率误差的载波信号可调制该数据信号。可使用至少一参数表征所述第一分量。该方法可包括接收数据和载波信号;选择参数值,以便降低负频率形式的频率能量;和基于所述值,修改至少一所述分量。

Description

补偿数据信号的第一分量和第二分量间失衡的方法及系统
技术领域
本发明涉及信息网络,更具体地说,涉及通过通信线路例如同轴电缆,发送信息例如多媒体信息,以形成通信网络。 
背景技术
许多建筑物,包括家庭,都有基于同轴电缆的网络。 
同轴电缆多媒体联盟(“MoCATM”)在其网站(www.mocalliance.org)上提供了通过同轴电缆联播数字视频和娱乐信息的规范(即,其在MoCA内所使用,并在此全文引用)的一例子。该规范分发给公开注册的用户。 
基于MoCA和其它规范的技术、以及相关的技术(“现有的技术”)常常使用同轴电缆上可使用的并且未使用的带宽。例如,在美国,已超过70%的家庭安装了同轴电缆。一些家庭在一个或多个娱乐消耗区域已有现成的同轴电缆,例如家庭活动室、视听室、和主卧室。现有的技术使得屋主可使用已安装的同轴电缆,作为网络系统,并发送具有高服务质量(QoS)的娱乐和信息程序。 
现有的技术可提供高速度(270mbps)、高QoS、以及最高级别的封包级加密和屏蔽的有线连接两者所固有的安全性。同轴电缆是设计用于发送高带宽视频。目前,同轴电缆通常用于安全传送数百万美元的按次计费及优质视频内容。基于现有技术的网络可用作多个无线接入点的骨干网,从而扩展无线服务在建筑物内的覆盖范围。 
现有的技术通过现有的同轴电缆提供了到达目前安装在家庭中的视频设备所在地的吞吐量,而不影响线缆中的其它服务信号。现有的技术为数字娱乐提供链路,并与别的有线或无线网络保持一致,从而将娱乐流量扩展到整个建筑物。 
现有技术与接入技术协同工作,如非对称数字用户线路(“ADSL”)、甚高速率数字用户线(“VDSL”)和光纤到户(“FTTH”),进而提供一般通过双绞线或光纤进入该建筑物的信号,对于ADSL而言,其操作频带从几十万赫兹到8.5M赫兹,而对于VDSL是到12M赫兹。当服务通过任何数字用户线(“xDSL”)或FTTH到达该建筑物时,这些服务可通过现有技术和同轴电缆转发到视频设备。有线电视运营商可通过线缆为该建筑物提供诸如视频、音频和因特网接入等有线功能,并利用在该建筑物中运行的同轴电缆到达该建筑物中的各个有线服务使用设备。一般地,现有技术的功能与有线功能并行,不过是在不同频率上。 
建筑物中的同轴电缆设施一般包括同轴电缆、分配器和出口。分配器一般有一个输入和两个或多个输出,用于前向(输入到输出)或后向(输出到输入)传送信号,并将来自不同分配器的输出相隔离,从而防止信号从一个同轴电缆出口流向另一个。进行隔离是非常有用的,因为它可以a)减少来自其它设备的干扰和b)最大化从入口点(“POE”)到出口的功率传输以获得最佳TV接收。 
现有技术的部件(elements)被专门用于通过隔离器进行后向传播(“插入”)以及从输出到输出的后向传播(“隔离”)。通过特定“隔离跳”和多个“插入跳”可从建筑物中的一个出口到达另一个。一般隔离跳的衰减为5到40dB,而每个插入跳大约将衰减3dB。MoCATM技术具有55dB盈余的动态范围,同时支持200Mbps的吞吐量。因此,MoCATM技术可通过大量隔离器高效运行。 
管理网络策略,诸如MoCATM技术,专门设计用于支持没有数据包丢失的流视频,进而提供出口间的优质视频。 
当网络连接设备从网络接收到数据信号时,该信号在下变频为设备基带频率时,常常分解为同相(“I”)和正交(“Q”)分量;当该I和Q分量再组合,以进行数据解密时,它们常常是振幅、相位或两者失衡的。再平衡I和Q分量将涉及计算基于载波频率的频域签名以及I和Q分量的补偿因子。在载波频率不确定的情况下,通过使用数字计算方法,很难分析接收到的信号的频域签名。因此,期望提供在载波频率不确定的情况下使用数字计算方法的补偿信号的系统和方法。 
发明内容
一种用于通信网络中在节点补偿I/Q失衡的系统和/或方法,在至少一张附图中进行了描述,并在权利要求中进行了完整的说明。 
根据本发明的一个方面,提供一种用于补偿数据信号的第一分量和第二分量之间失衡的方法,所述数据信号具有正值的频率,并通过具有频率误差的载波信号对其进行调制,包括以下步骤: 
接收数据和载波信号; 
选择时域参数值,以使与负值频率相应的频域能量最小化;和 
基于所述值,在时域中修改至少一个所述分量。 
优选的,所述的方法进一步包括: 
估计与所述载波信号相应的载波信号频率; 
估计残余载波频率误差;和 
基于所述残余载波频率误差,修改所述载波频率的估计。 
优选的,所述修改包括: 
为所述分量确定与信号振幅乘法器相应的第一值;和 
为所述分量确定与相位偏移相应的第二值。 
优选的,所述选择包括: 
为第一信号音、第二信号音、以及所述载波信号中的每一个记录第一频域参数和第二频域参数。 
优选的,对于所述第一信号音、所述第二信号音、以及所述载波信号,其中至少有一个其所述第一和第二频域参数分别对应于离散值频谱中的第一和第二窗口; 
所述第一窗口顺次地邻近所述第二窗口。 
优选的,所述的方法进一步包括:发送取决于所述第一和第二频域参数的输出信号。 
优选的,所述接收包括:接收正交频分复用(OFDM)符号;和 
在所述选择中,所述值对应于所述OFDM符号;和 
对于所述OFDM符号,执行所述修改。 
优选的,所述接收包括:接收多个正交频分复用(OFDM)符号; 
对每一个所述OFDM符号,执行所述选择;和 
对每一个所述OFDM符号,执行所述修改。 
优选的,所述第一和第二分量,其中一个是同相分量;另一个是正交分量;所述失衡是同相/正交失衡。 
根据本发明的一个方面,提供一种可记录与接收到的信号的频率分量相应的复数参数的系统,所述信号携带有至少一个正交频分复用(OFDM)符号,所述参数符合: 
具有频率误差的载波频率; 
第一信号音;和 
第二信号音。 
优选的,所述系统还用于估计与所述载波频率、所述第一信号音、以及所述第二信号音中的每一个相应的频率窗口。 
优选的,当具有与所述载波频率、所述第一信号音、以及所述第二信号音中的每一个相应的第一和第二复数参数时,所述系统进一步用于: 
估计与所述载波频率、所述第一信号音、以及所述第二信号音中的每一个相应的第二频率窗口; 
为所述载波频率、第一信号音、以及第二信号音记录所述第一和第二复数参数。 
优选的,所述系统进一步用于根据所述载波频率、所述第一信号音、以及所述第二信号音中的每一个的估计值,为所述载波频率、所述第一信号音、以及所述第二信号音,记录所述复数参数;所有的所述估计值相应于单一OFDM符号。 
优选的,当所述接收到的信号携带多个OFDM符号时,所述系统进一步可对于每一个所述OFDM符号,估计所述载波频率、所述第一信号音、和所述第二信号音中的每一个的值。 
根据本发明的一个方面,提供一种用于补偿第一信号和第二信号之间失衡的系统,该系统包括: 
第一模块,用于根据所述第一和第二信号记录第一频域参数、第二频域参数;所述第一频域参数和第二频域参数相应于所述第一信号音、第二信号音、以及载波频率中的每一个;和 
第二模块,用于根据所述第一和第二频域参数,计算至少一个时域补偿参数。 
优选的,所述系统进一步包括: 
第三模块,用于根据所述时域补偿参数,输出经补偿的信号。 
优选的,所述至少一个时域补偿参数包括三个时域补偿参数。 
优选的,所述载波频率是接收器载波频率; 
所述第一和第二信号接收自发送器,所述发送器可使用发送器载波频率发送所述信号;和 
由于载波频率偏移,所述接收器和发送器载波频率不同。 
优选的,当所述第一和第二频域参数相应于所述第一和第二信号音的其中之一时, 
所述第一频域参数对应于离散值频谱中的第一窗口; 
所述第二频域参数对应于离散值频谱中的第二窗口; 
所述第一窗口邻近所述第二窗口。 
优选的,所述第一模块根据所述第一点在频谱中的位置选择所述第二窗口。 
优选的,所述第二窗口在频谱中的位置是基于所述偏移的。 
优选的,所述第二窗口在频谱中的位置是基于所述偏移,以弧度表示,到Pi弧度。 
优选的,当具有残余载波频率偏移,所述第二模块可: 
计算残余频率偏移的估计; 
基于所述估计,计算所述时域补偿参数。 
优选的,当所述第一模块为按时间顺序接收到的多个符号中的每一个记录所述第一和第二频域估计参数时,所述第二模块为第一频率参数计算第一平均值;并为所述第二频域参数计算第二平均值;所述平均值分别基于与所述符号 相应的所述第一和第二频域参数。 
优选的,所述第一模块是硬件模块;所述第二模块是软件模块。 
优选的,所述第三模块是硬件模块。 
优选的,所述第一模块是硬件模块;所述第二模块是硬件模块。 
附图说明
通过以下的描述和附图,可以更深入地理解本发明的各种优点、各个方面、创新特征、及其实施例的细节,附图中: 
图1是依据本发明原则的所使用的例证性的单或多芯片设备的结构框图; 
图2是依据本发明原则的接收器的一部分的例证性的结构框图; 
图3是依据本发明原则的接收器的一部分的另一例证性的结构框图; 
图4是依据本发明原则的电路的例证性的结构框图; 
图5是依据本发明原则的电路的另一例证性的结构框图; 
图6是依据本发明原则的例证性的流程图; 
图7是依据本发明原则的所处理的例证性的数据包的简图; 
图8是依据本发明原则的与信号处理相关的例证性的一部分离散值频谱的示意图; 
图9是依据本发明原则的另一电路的例证性结构框图; 
图10是依据本发明原则的存储结构的示意图; 
具体实施方式
图11是总结作为所使用的窗口的数量的函数的损耗的示意图; 
图12是将第一项作为g和θ的函数进行描述的示意图; 
图13是将第二项作为 
Figure 464977DEST_PATH_RE-RE-G200710193908901D00011
和k的函数进行描述的示意图; 
图14是在k=249时,对第二项描述的示意图; 
图15是累加相位起始位置示意图; 
图16是3[dB]振幅失衡、10°相位失衡、200ppm频率偏移、理想信道和没有AWGN的仿真结果示意图; 
图17是图16参数下第一次迭代之后的仿真结果示意图; 
图18是图16参数下两次迭代之后的仿真结果示意图; 
图19是图16参数下三次迭代之后的仿真结果示意图; 
图20是图16参数下四次迭代之后的仿真结果示意图; 
图21是I/Q平衡的限幅SNR的示意图; 
图22是3[dB]振幅失衡、10°相位失衡、200ppm频率偏移、MoCA10408信道和15[dB]AWGN的仿真结果示意图; 
图23是图22参数下第一次迭代之后的频率示意图; 
图24是图22参数下第一次迭代之后的限幅器输入示意图; 
图25是图22参数下第二次迭代之后的频率示意图; 
图26是图22参数下第二次迭代之后的限幅器输入示意图; 
图27是图22参数下第三次迭代之后的频率示意图; 
图28是图22参数下第三次迭代之后的限幅器输入示意图; 
图29是限幅器输入示意图; 
图30是在TX和RX I/Q失衡下,限幅器输入示意图; 
图31是在TX和RX I/Q失衡下,第三次迭代后的频率示意图; 
图32是在TX和RX I/Q失衡下,第三次迭代后的限幅器输入示意图; 
图33是在TX I/Q失衡下,限幅器输入示意图。 
依据本发明原则,提供用于补偿I/Q失衡的装置和方法。该方法包括补偿数据信号的第一分量和该数据信号的第二分量之间的失衡。通过具有频率误差的载波信号调制该数据信号。可通过至少一个参数表征该第一分量。该方法可包括接收数据和载波信号;选择参数值以便降低频域能量;该频域能量相应于负的频率;基于所选择的值,修改至少一分量。 
该装置包括一电路,其可记录与接收到的信号的频率分量相应的信号值。该信号携带至少一个正交频分复用(“OFDM”)符号。该信号的值可对应于具有频率误差的载波频率、第一信号音(tone)和第二信号音。 
该装置包括一系统,其用于补偿数据信号的第一分量和该数据信号的第二分量。可通过具有频率误差的载波信号调制该数据信号。可通过至少一参数表 征该第一分量。该系统包括用于量化信号值的硬件模块,和用于从该硬件模块接收该信号值的软件模块,其中该信号值相应于数据和载波信号的其中之一。 
可通过前述的MoCA规范中所列的MoCA协议探测2(probe2)传输,发送第一和第二信号音。 
下面将结合附图1~8及附录A~E对本发明作进一步说明。 
图1示出了依据本发明的单或多芯片模块102,其可以是一个或多个集成电路,且位于依据本发明的例证性的数据处理系统100中。数据处理系统100可包括一个或多个如下的部件:I/O电路104、外围设备102、处理器108和存储器110。这些部件可通过系统总线或别的互连112连接在一起,并设置在终端用户系统中的电路板上。模块102的组件可执行涉及I/Q失衡补偿的任务。 
在一些实施例中,可在MoCA探测2猝发接收(burst reception)过程中,执行I/Q失衡补偿。探测2是一2-信号音信号,其用于接收器中的I/Q失衡计算或别的RF校准。PHY层执行窗口(bin)选择和记录,所得的结果将上载到CPU,用于I/Q补偿参数的计算。 
图2示出例证性的接收器200的一部分的结构框图。接收器200可包括射频(“RF”)处理模块202、时域处理模块204和频域处理模块206。在增益210,接收RF信号208,并进行增益调节。在212,将信号208下变频为基带(“BB”)频率。在212,将人为频率误差(intentional frequency error)213添加到信号208。模数转换器214将信号208转换为以模数采样率采样的数字信号,并将其发送到失衡补偿模块218。I/Q失衡补偿模块218可执行与I/Q补偿相关的步骤。I/Q失衡补偿模块218输出信号209,其对应于等式1(如下)。 
信号209发送到可变速率内插器224,该可变速率内插器224以一合适的采样率,对信号209进行再采样。 
可变速率内插器224可接收数控振荡器(“NCO”)定时发生器236输出的定时信号237。定时信号237是基于前同步码处理器240输出的载波频率偏移估计(“CFOE”)241。CFOE 241可基于前同步码处理器240估计。内插器224输出信号225,然后其可通过高通滤波器(“HPF”)228,去除直流(“DC”)信号分量。 
载波恢复环229可执行对人为频率误差213的频率补偿。载波恢复环可接收NCO频率发生器234的输入,其中NCO频率发生器234由接收器控制器232进行控制。NCO频率发生器234可接收前同步码处理器240输出的载波频率偏移估计241。在CP移除器246,可将循环前缀从信号225去除。 
在频域处理模块206中,使用快速傅立叶变换模块298将信号225转换成频域信息(“FFT输出”),其可存储在存储器299中,并发送到探测2软件处理程序250,其可输出修正参数252,以返回给I/Q失衡补偿模块218。 
图3示出例证性的接收器300的一部分的结构框图。接收器300可包括射频(“RF”)处理模块302、时域处理模块304和频域处理模块306。在增益310,接收RF信号308,并调节其增益。在312,信号308下变频为基带频率。在312,将人为频率误差313添加到信号308。模数转换器314将信号308为转换数字信号,并将其发送到100MHz FIFO(“先进先出”)缓冲器316。缓冲器316发送信号308到I/Q失衡补偿模块318。I/Q失衡补偿模块318可执行与在此的I/Q补偿相关的步骤。I/Q失衡补偿模块318输出信号309,其对应于等式1(如下)。 
信号309可发送到基带模式分层器320。接收器300可包括自动增益控制器322,其可基于信号309给增益310提供反馈。通过分层器320,信号309可发送到Farrow内插器324,其以较低的采样率,对100MHz信号309进行再采样。 
Farrow内插器324可接收数控振荡器(“NCO”)定时发生器336输出的定时信号337。定时信号337是基于前同步码控制处理器340输出的载波频率偏移估计341的。载波频率偏移估计341是基于经过前同步码处理器340所发送的TD相位旋转器(下面讨论)的输出。在一些实施例中,内插器324以100MHz输出信号325。经过定时恢复环(未示出),信号325可与发送器时钟(未示出)同步。经过半带滤波器抽取器(“HB DEC2→1”)236,使用因子2,将信号325向下采样为50MHz。然后通过高通滤波器(“HPF”)328,去除信号325的直流(“DC”)信号分量。 
时域(“TD”)相位旋转器330可执行对人为频率误差313的频率补偿。 TD相位旋转器可接收NCO频率发生器334的输入,该NCO频率发生器334可由接收器控制器332控制。NCO频率发生器334可接收前同步码处理器340输出的载波频率偏移估计341。信号325然后发送到延迟缓冲器342。在子电路346,可去除循环前缀。在一些实施例中,子电路346可执行接收器开窗操作,以降低窄带干扰噪音的损害,该窄带干扰噪音否则可渗透到相邻的信号音。 
在频域处理模块306中,可使用快速傅立叶变换模块398将信号325转换成频域信息,其可发送到探测2计算器350,该探测2计算器350可输出探测2结果352,并发送到I/Q补偿模块318。 
一些实施例包括旁路模式,在其中将信号输入路由到I/Q失衡补偿模块318周边的输出。 
在一些实施例中,通过数字信号分析和处理可实现I/Q补偿。在这些实施例中,在探测2期间,ζ,ρ和Scale_Q为估计的I/Q补偿参数。 
等式1示出补偿信号的补偿实部和虚部,该补偿信号是I/Q补偿模块的输出(见图2)。 
等式1
Y ~ real = Bypass = = 1 Y real Bypass = = 0 Scale _ Q = = 0 ζY real Scale _ Q = = 1 Y real Y ~ imag = Bypass = = 1 Y imag Bypass = = 0 Scale _ Q = 0 Y ~ imag = Y imag + ρ Y real Scale _ Q = 1 ζ Y imag + ρ Y real
图4示出例证性的电路400,其包括在执行等式1所列的补偿的设备中。 
图5示出例证性的电路500,其包括在执行等式1所列的补偿的设备中。附录A列出了等式1所列的补偿的理论基础。附录B示出与在此所描述的装置和方法相联系的示范性的失衡和补偿度量。 
[0127] 图6示出用于补偿I/Q失衡的例证性的过程600。过程600涉及硬件(“HW”)和软件(“SW”)操作。初始的硬件操作602的输出是数据组Z(k,m),其是快速傅立叶变换(“FFT”)在对应于探测2的OFDM符号m的窗口k的输出。 
[0128] 初始的硬件操作602可包括数控振荡器(“NCO”)相位复位604。确定 FFT窗口的第一样本的相位,该FFT窗口是时域单元(“TDU”)频域补偿的结果。为此,在计算出精确的频率补偿后的任意时间,将接收器TDU中的相位旋转器的NCO相位复位为零。计算NCO复位和FFT窗口的第一样本之间的样本数量(相位累加数量),且定义为Δn,并发送到SW程序。最好是零相位累加(即Δn=0),因为其可降低SW程序的复杂度。对于设置Δn=0,一旦356点FFT窗口的第一样本传输通过TD相位旋转器330(见图3)(因此第一样本将乘以一整数),应复位NCO相位累加器335(位于NCO频率发生器334中一见图3)。 
图7示出数据包700、NCO复位、Δn和FFT窗口的开始。 
在一些实施例中,窗口选择606(见图6)的执行作为浮点计算,其中i1和i2是频率窗口系数,如等式2进行计算 
等式2
i 1 = - round ( N · CFO π )
i 2 = i 1 + sign ( CFO ) · sign ( | i 1 | - | N · CFO π | )
其中,CFO/(2π)是发射器和接收器之间的经估计的载波频率偏移,N是FFT窗口的数量(例如256)。 
在一些实施例中,窗口选择606(见图6)的执行可作为定点计算。在这些实施例中,CFO是17比特带符号整数,其中‘1’=214。通过与固定阈值比较,计算i1和i2。等式3给出了在定点表示中,FFT栅格(grid)的值: 
等式3
F k = round ( 2 πk N · 2 Freq _ bits - 1 ) 其中,k=[-3,3] 
其中,Freq_bits可设置为14或任意合适的数字。通过找到最接近2CFO的两个FFT窗口,选择系数i1和i2。 
图8示出对应于等式3的决策区域(由于对称仅给出绝对值)。 
图9示出用于决策区域边界选择的例证性的硬件(“HW”)的实施。表1 示出例证性的边界值。 
表1 
Figure 569254DEST_PATH_G200710193908901D00071
等式4定义为标记(sign)操作。 
等式4
sign ( x ) = 1 x &GreaterEqual; 0 - 1 x < 0
在一些实施例中,窗口记录(步骤408,见图4)涉及在窗口k1、-k1+i1、-k1+i2、k2、-k2+i1、-k2+i2的16比特FFT输出,然后为每一个LOFDM符号记录该输出。可以理解的是FFT的输出可为任意合适的数量的比特。MoCAFFT中的地址对应于表2所列的窗口。 
表2 
ADDR:k1           Z[k1,m]          k1∈[146,186] 
ADDR:k2           Z[k2,m]          k2∈[217,249] 
[0150] ADDR:256-k1+i1    Z[-k1+i1,m],    -k1+i1=256-k1+i1∈[67,113] 
ADDR:256-k1+i2    Z[-k1+i2,m],    -k1+i2=256-k1+i2∈[66,112] 
[0152] ADDR:256-k2+i1    Z[-k2+i1,m],    -k2+i1=256-k2+i1∈[4,36] 
ADDR:256-k2+i2    Z[-k2+i2,m]      -k2+i2=256-k2+i2∈[3,37] 
[0154] 图10示出在探测2猝发末端处的例证性的存储图。 
在步骤608记录CFO估计(如图6所示)。该估计可为17-比特估计。 
在一些实施例中,可通过软件模块执行残留频率误差 
Figure 374716DEST_PATH_G200710193908901D00073
估计610(见图6)。在一些实施例中,可通过硬件模块执行残留频率误差估计。在一些实施例中,可如等式5所示计算残留频率误差估计。 
等式5
&epsiv; ^ = angle ( &Sigma; m = 0 L - 2 Z [ k i , m ] Z * [ k i , m + 1 ] ) 2 &pi; ( N + N CP )
其中, 
k i = k 1 SNR k 1 > SNR k 2 k 2 SNR k 2 > SNR k 1
在一些实施例,可依据等式6,计算残余频率误差补偿和时间平均,其取决于 ,并且附录A列出其导数。 
等式6
Z &OverBar; k 1 = &Sigma; m = 0 L - 1 Z [ k 1 , m ] e - j 2 &pi; &epsiv; ^ ( N + N CP ) m Z &OverBar; k 2 = &Sigma; m = 0 L - 1 Z [ k 2 , m ] e - j 2 &pi; &epsiv; ^ ( N + N CP ) m
Z &OverBar; - k 1 + i 1 = &Sigma; m = 0 L - 1 Z [ - k 1 + i 1 , m ] e - j ( 2 CFO + 2 &pi; &epsiv; ^ ) ( N + N CP ) m Z &OverBar; - k 2 + i 1 = &Sigma; m = 0 L - 1 Z [ - k 2 + i 1 , m ] e - j ( 2 CFO + 2 &pi; &epsiv; ^ ) ( N + N CP ) m
Z &OverBar; - k 1 + i 2 = &Sigma; m = 0 L - 1 Z [ - k 1 + i 2 , m ] e - j ( 2 CFO + 2 &pi; &epsiv; ^ ) ( N + N CP ) m Z &OverBar; - k 2 + i 2 = &Sigma; m = 0 L - 1 Z [ - k 2 + i 2 , m ] e - j ( 2 CFO + 2 &pi; &epsiv; ^ ) ( N + N CP ) m
等式7用于估计I/Q失衡相位估计的值,其使用等式8计算。 
等式7
B n = CFO &NotEqual; 0 1 2 ( sin ( 2 &CenterDot; CFO &CenterDot; N ) CFO + &pi; &CenterDot; i n N ) + j 2 ( cos ( 2 &CenterDot; CFO &CenterDot; N ) - 1 CFO + &pi; &CenterDot; i n N ) CFO = 0 , i n = 0 N CFO = 0 , i n &NotEqual; 0 0
C 1 = e j 2 CFO ( &Delta;n ) N ( | B 1 | 2 + | B 2 | 2 ) &CenterDot; Z &OverBar; k 1 B 1 ( Z &OverBar; - k 1 + i 1 ) * + B 2 ( Z &OverBar; - k 1 + i 2 ) *
C 2 = e j 2 CFO ( &Delta;n ) N ( | B 1 | 2 + | B 2 | 2 ) &CenterDot; Z &OverBar; k 2 B 1 ( Z &OverBar; - k 2 + i 1 ) * + B 2 ( Z &OverBar; - k 2 + i 2 ) *
C = 1 2 ( C 1 + C 2 )
等式8
ge - j&theta; &OverBar; = C - 1 C - 1
然后依据等式9计算I/Q失衡补偿参数ξ、ρ和Scale_Q(见例如等式1)。 
等式9
real { ge - j&theta; &OverBar; } &GreaterEqual; 1 ScaleQ = 1 &xi; ^ = 1 real { ge - j&theta; &OverBar; } , &rho; ^ = - imag { ge - j&theta; &OverBar; } real { ge - j&theta; &OverBar; } otherwise ScaleQ = 0 &xi; ^ = real { ge - j&theta; &OverBar; } , &rho; ^ = - imag { ge - j&theta; &OverBar; }
[0177] 等式9避免接收器处的饱和,因为ξ总是小于或等于一整数,因此削弱较强的I/Q信号,而不是放大较弱的I/Q信号。在一些实施例中,上述的计算可在几个探测2传输上以迭代方式执行。等式10示出新的相位估计如何用于更新前一估计。 
等式10
( ge - j&theta; &OverBar; ) i ACC = ( 1 - &mu; i ) ( ge - j&theta; &OverBar; ) i - 1 ACC + &mu; i ( ge - j&theta; &OverBar; ) i - 1 ACC &CenterDot; ( ge - j&theta; &OverBar; ) i
( ge - j&theta; &OverBar; ) 0 ACC = 1
在等式10中,(ge-jθ)i是在第i探测2传输中所计算的相位估计。一些实施例可包括更新程序,其可使用具有μi∈[0,1]环增益的第一级环。环增益可提供收敛速度和环带宽(“BW”)控制的噪音滤波之间的折衷。在收敛的过程中,环BW动态地改变中可使用变速(gear-shifting)方法。对于快速收敛,在第一2/3迭代过程中,可使用高环BW。对于连续的探测2传输,可使用小环BW。等式11所列的值可用于μii定义为探测2猝发系数。 
等式11
&mu; i = 1 i = 1 0.75 i = 2 0.5 i = 3 0.25 i = 4
[0184] 等式12所列的I/Q补偿参数可在第i探测2接收的过程中使用。 
等式12
real { ( ge - j&theta; &OverBar; ) i - 1 ACC } &GreaterEqual; 1 &xi; ^ i = 1 real { ( ge - j&theta; &OverBar; ) i - 1 ACC } , &rho; ^ i = - imag { ( ge - j&theta; &OverBar; ) i - 1 ACC } real { ( ge - j&theta; &OverBar; ) i - 1 ACC } otherwise &xi; ^ i = real { ( ge - j&theta; &OverBar; ) i - 1 ACC } , &rho; ^ i = - imag { ( ge - j&theta; &OverBar; ) i - 1 ACC }
对于I/Q失衡,3到4个迭代(相当于3到4个探测2传输)常常是足够补偿的。 
附录C所列的伪码用于补偿的定点实施。 
附录D所列的参数用于I/Q失衡补偿的系统中的硬件-软件接口。 
当网络节点处理一个或多个网络协调器(“NC”)输出的探测1猝发时,根据每一信号音和载波频率偏移(相对于一相关的网络协调器),网络节点可获得信噪比(“SNR”)估计。该节点可使用SNR估计告知NC,哪两个窗口中一个用于将探测2发送到该节点。该节点可使用CFO估计计算OFDM符号的数量,及探测2传输过程中循环前缀(“CP”)的长度,并发送到NC。 
附录E所列的伪码,用于计算频率偏移引入、CP以及OFDM符号数量的选择。在一些实施例中,附录E所列的探测2、CP以及L算法可在发送MoCATM探测2报告之前和接收器RF发生器引入任意需要的、必要的或人为的载波偏移之后执行。 
为了清楚的缘故,前面的描述,包括参数或参数值的特定例子,有时是针对一特定的协议,例如那些标识名称为MoCATM和/或以太网协议。然而,不限于此,本发明可普遍到别的协议和/或数据包协议。所使用的术语是针对一特定的协议,例如其标识为MoCATM或以太网,以描述一特定特点或实施例,但不是特别地用于限制该特点或实施例的范围于该协议;取代通常所使用的术语,并包括每一个在别的协议下所定义的平行和类似的术语。 
可以理解的,本发明的软件组件包括程序和数据,如果期望的话,可以ROM(只读存储器)形式,包括CD-ROM、EPROM和EEPROM,进行实施,或可存储在任意合适的计算机可读媒介,例如但不限于各种不同的光盘、各种不同的磁带和RAM。在此描述为软件的组件可选择地、全部或部分地实施在 硬件中,如果期望的话,可使用传统技术。 
因此,已对用于补偿I/Q失衡的系统和方法进行了描述。本发明是通过一些实施例进行描述的,本领域技术人员知悉,在不脱离本发明的精神和范围的情况下,可以对这些特征和实施例进行各种改变或等效替换。本发明不仅仅限于如下的权利要求。 
附录A 
探测2理论 
I/Q失衡可模拟为倍增的增益因子,用于I/Q分量的其中之一,也可模拟为相对的相位差。在探测2接收的过程中,MoCA规定:在RF下变频过程中,接收器必须引入频率误差,我们定义该偏移为 
Figure 218596DEST_PATH_G200710193908901D00121
。经转换的信号为: 
Figure 269729DEST_PATH_G200710193908901D00122
Figure 194960DEST_PATH_G200710193908901D00123
一些代数式可将上述表达为: 
Figure 419268DEST_PATH_G200710193908901D00124
K 1 = 1 2 ( 1 + ge - j&theta; )
K 2 = 1 2 ( 1 - ge j&theta; )
在接收器,执行I/Q补偿,I/Q补偿后的信号为: 
Figure 177642DEST_PATH_G200710193908901D00127
Figure 205641DEST_PATH_G200710193908901D00128
假设以频率窗口k,发送单一频率,经几个代数过程后的补偿信号为: 
Figure 514580DEST_PATH_G200710193908901D001210
Figure 414403DEST_PATH_G200710193908901D001211
Figure 980513DEST_PATH_G200710193908901D001212
信号经过频率补偿,然后经过FFT操作转换到频域。经过几个代数过程后在窗口k和-k的频域信号为: 
Figure 282181DEST_PATH_G200710193908901D00131
在没有I/Q失衡的系统中,在负窗口的能量为零。由于I/Q失衡,在负窗口的能量为: 
Figure 642756DEST_PATH_G200710193908901D00132
Figure 29875DEST_PATH_G200710193908901D00133
因此,我们的目标是使用ρ,ξ,最小化窗口-k的能量。使用拉格朗日乘数法进行最小化,给出如下等式 
&PartialD; | Z ^ [ - k ] | 2 &PartialD; &xi; = &PartialD; ( 1 + &xi; 2 g 2 + &rho; 2 - 2 &xi; g cos &theta; - 2 &xi;g&rho; sin ( &theta; ) ) &PartialD; &xi; = 0 &PartialD; | Z ^ [ - k ] | 2 &PartialD; &rho; = &PartialD; ( 1 + &xi; 2 g 2 + &rho; 2 - 2 &xi; g cos &theta; - 2 &xi;g&rho; sin ( &theta; ) ) &PartialD; &rho; = 0 2 &xi; g 2 - 2 g cos &theta; - 2 &rho; g sin ( &theta; ) = 0 2 &rho; - 2 &xi; g sin ( &theta; ) = 0
解出上面的量 
g 2 - g sin ( &theta; ) - g sin ( &theta; ) 1 &xi; &rho; = g cos &theta; 0 &xi; &rho; = 1 ( g cos &theta; ) 2 g cos &theta; g 2 sin &theta; cos &theta; = 1 g cos &theta; tan &theta;
容易得出,这样的选择实际上使得窗口-k的能量等于0,因此完全消除了I/Q失衡的影响。现在,我们的目的是从探测2传输估计出I/Q失衡参数。 
I/Q参数估计
因为I/Q失衡破坏了输入的信号,所以其导致了受到破坏的载波频率估计,及受到破坏的信道估计。在I/Q失衡下的信道估计为: 
h k ^ = A k * N | A k | 2 Z ^ [ k ] = | h | e j < h K 1 + e k |
在窗口k和-k,FFT的输出不具有I/Q失衡补偿,但是在频率补偿后,假设ε的频率估计误差为: 
Figure 633845DEST_PATH_G200710193908901D00142
Figure 807338DEST_PATH_G200710193908901D00143
载波频率偏移大于50Khz的影响
在载波频率误差出现的情况下,由I/Q失衡所导致的镜像分量(imagecomponent)正好在所发送的信号音的镜像数字频率(-k/N)出现。在载波频率误差(在探测II过程中是强制的)下,I/Q镜像在( 
Figure 818019DEST_PATH_G200710193908901D00144
)数字频率出现,其中 
Figure 785975DEST_PATH_G200710193908901D00145
是标准化的载波频率误差, 在1.5e9Hz=300kkHz下,载波频率误差的范围可在±200ppm之间,而OFDM信号音间隔为50e6/256=195.3kHz。因此,在频域中,镜像分量可落在[-k-3,k+3]的时间间隔之间。对于窗口-k+i,FFT输出为: 
Figure 859290DEST_PATH_G200710193908901D00147
并且由于补偿频率误差 
Figure 724478DEST_PATH_G200710193908901D00148
导致在镜像位置有 
Figure 863335DEST_PATH_G200710193908901D00149
的偏移,我们需要从时间间隔[-k-3,...,k+3]收集镜像能量。实际地,因为我们知道频率误差 
Figure 446764DEST_PATH_G200710193908901D001410
(等于ε),所以我们知道镜像将以以下的数字频率出现: 
Figure 696479DEST_PATH_G200710193908901D001411
以[dB]表示的镜像能量的损耗是用于收集能量的窗口的数量的函数,其为: 
Loss = 10 lo g 10 N 2 - 10 log 10 ( &Sigma; i = - M - L - M + L ( sin ( &pi; [ M + Nr ] ) sin ( &pi; [ M + i N + r ] ) ) 2 ) |
最坏的损耗情况是当镜像落在窗口(r=1/(2N))之间。使用最接近镜像的窗口将导致3.9223[dB]的最坏损耗;使用两个窗口导致0.9120[dB]的损耗。图11总结了作为所使用的窗口的数量的函数的损耗。 
我们使用2个窗口,似乎是负责度和执行之间合理的折衷。 
探测2的FFT处理(单OFDM符号)
为了简单起见,考虑单一OFDM符号,稍后将给出扩展到多OFDM符号。我们已经示出在点k和-k的FFT输出为: 
容易看出,每一表达式中包括期望信号项和来自镜像频率的ICI项。现在,我们将示出ICI                         项远小于信号项,并可忽略。 
[0240] 在窗口k所 
Figure 99834DEST_PATH_G200710193908901D00152
引发的ICI,是由于I/Q失衡所导致的镜像信号以 
Figure 170558DEST_PATH_G200710193908901D00153
数字频率所产生,其中 
Figure 223964DEST_PATH_G200710193908901D00154
且该数字频率不位于FFT删格上。该频率离FFT删格越远 
Figure 63744DEST_PATH_G200710193908901D00155
ICI就越大。因为k限制在时间间隔{[146,186],[217,249]},因此,所生成的镜像与期望的信号差别很大,并且以频率 
Figure 544404DEST_PATH_G200710193908901D00156
生成的ICI噪音就非常小。为了了解这个,要考虑在窗口k的信号和ICI项之间的比率。我们定义该比率为期望和ICI项之间的SNR,为: 
Figure 836845DEST_PATH_G200710193908901D00161
关于{g,θ,k, 
Figure 631626DEST_PATH_G200710193908901D00162
},通过最小化上面的表达式,将得到最坏的SNR。容易得知,最小化如上表达式是可分离的,因此可通过如下实现最小化: 
·在约束条件 
Figure 325913DEST_PATH_G200710193908901D00163
(最多3[dB]振幅失衡),以及 
Figure 977474DEST_PATH_G200710193908901D00164
下,最小化关于g和θ的第一项 
·在约束条件 以及 
Figure 418000DEST_PATH_G200710193908901D00166
下,最大化第二项 
可使用Matlab仿真数字化地执行以上的最小化操作。如图12所示,其将第一项作为g和θ的函数进行描述 
容易看出(也可分析出),最小值在自变量时间间隔的边沿,即g=0.5,2和Teta=±10°,因此 
如图13所示,其将第二项作为 
Figure 966793DEST_PATH_G200710193908901D00167
和k的函数进行描述 从上图,容易看出,在k=249时,第二项取得最大值,如                                        图14所示,其对此时的第二项进行了描述。 
当Df=±245Khz时取得最大值,因此 
所以,由ICI项所导致的SNR最坏的情况为40.3816[dB] 
Figure 321868DEST_PATH_G200710193908901D00171
Figure 458451DEST_PATH_G200710193908901D00172
因此,ICI项最坏为40[dB],小于信号项,所以可以忽略。对负窗口可以进行类似的分析。在忽略ICI项后,在窗口k和-k+i,FFT的输出为: 
[0253] Z[k]=hAK1+Wk
Z[-k+i]=h*BiK2+W-k+i
[0255]  A = e j&pi;&epsiv; ( N - 1 ) sin ( &pi;&epsiv;N ) sin ( &pi;&epsiv; )
Figure 120693DEST_PATH_G200710193908901D00174
因为我们不能估计信道响应h,我们不能解决ge-jθ的线性LS问题,所以我们先从两个负窗口-k+i1和-k+i2,解决hK2 *估计的LS问题 
Z ^ * [ - k + i 1 ] Z ^ * [ - k + i 2 ] = B 1 * B 2 * ( h K 2 * ) + W k + i 1 * W k + i 2 *
( hK 2 * ) LS = B 1 Z ^ * [ - k + i 1 ] + B 2 Z ^ * [ - k + i 2 ] | B 1 | 2 + | B 2 | 2
在不知道信道h的情况下,我们能估计 
Figure 135420DEST_PATH_G200710193908901D00177
C &equiv; K 1 &OverBar; K 2 * = ( hK 1 ) ( hK 2 * ) LS = Z [ k ] / A B 1 Z ^ * [ - k + i 1 ] + B 2 Z ^ * [ - k + i 2 ] / | B 1 | 2 + | B 2 | 2 = ( | B 1 | 2 + | B 2 | 2 ) &CenterDot; Z [ k ] A &CenterDot; ( B 1 Z ^ * [ - k + i 1 ] + B 2 Z ^ * [ - k + i 2 ] )
因为探测2是由两个信号音组成,其中一个在k1,另一个在k2,因此根据这两个信号音,平均该结果,得 
C &OverBar; &equiv; 1 2 ( | B 1 | 2 + | B 2 | 2 ) &CenterDot; Z [ k 1 ] A &CenterDot; ( B 1 Z ^ * [ - k 1 + i 1 ] + B 2 Z ^ * [ - k 1 + i 2 ] ) + 1 2 ( | B 1 | 2 + | B 2 | 2 ) &CenterDot; Z [ k 2 ] A &CenterDot; ( B 1 Z ^ * [ - k 2 + i 1 ] + B 2 Z ^ * [ - k 2 + i 2 ] )
容易看出 
ge - j&theta; = K 1 / K 2 * - 1 K 1 / K 2 * + 1
因此其估计为 
ge - j&theta; &OverBar; = C &OverBar; - 1 C &OverBar; + 1
接着可以计算出I/Q估计 
&xi; ^ = 1 real { ge - j&theta; &OverBar; }
&rho; ^ = - imag { ge - j&theta; &OverBar; } real { ge - j&theta; &OverBar; }
探测2的FFT处理(多OFDM符号)
当我们注意多OFDM符号时,我们需要考虑由残余频率误差ε所导致的相位误差。容易示出第m个OFDM符号相对于第一个的相位为 
Figure 304605DEST_PATH_G200710193908901D00186
注意到上式没有考虑采样频率误差,假设其影响很小,所以在整个分析过程中忽略。 
如图15所示,从载波频率补偿开始到第一FFT窗口开始,所累加的相位应该考虑到。因为我们的算法是计算Zk和conj(Z-k)之间的比率,所以任意的常数相位项不仅不能删除,而且要将其加倍。 
因此,对于第mOFDM符号,在窗口+k、-k+i,FFT输出设为 
残余载波频率估计
为了使用从所有L OFDM符号中得出的信息,我们需要补偿残余频率偏移ε,接着为每一个窗口,计算补偿信号的平均数,以降低AWGN方差。因为ε可以足够大,以便在L OFDM符号期间,可发生多次相位缠绕(phasewrapping)。我们提出的如下估计器,其不受相位缠绕的影响(只要在两个连续的样本之间发生一次缠绕,就运用该估计器) 
残余频率估计
可通过计算得到残余频率误差估计 
&epsiv; ^ = angle ( &Sigma; m = o L - 2 Z [ k i , m ] Z * [ k i , m + 1 ] ) 2 &pi; ( N + N CP )
其中 k i = k 1 SNR k 1 > SNR k 2 k 2 SNR k 2 > SNR k 1
残余频率误差和时间平均设为 
残余频率补偿和时间平均 
Z &OverBar; k 1 = &Sigma; m = 0 L - 1 Z [ k 1 , m ] e - j 2 &pi; &epsiv; ^ ( N + N CP ) m Z &OverBar; k 2 = &Sigma; m = 0 L - 1 Z [ k 2 , m ] e - j 2 &pi; &epsiv; ^ ( N + N CP ) m
Figure 640088DEST_PATH_G200710193908901D00196
Figure 78023DEST_PATH_G200710193908901D00197
Figure 436323DEST_PATH_G200710193908901D00198
Figure 908893DEST_PATH_G200710193908901D00199
使用如上相同的估计器设备,接着可估计矢量ge-jθ,即 
Figure 756763DEST_PATH_G200710193908901D001910
其中,相位项 
Figure 681994DEST_PATH_G200710193908901D00201
用于补偿从频率补偿开始时间直到第一FFT窗口开始所累加的初始相位误差。 
简化系数Bi和A 
对于实际执行,我们需要简化Bi和A的表达式;通过引入一些近似值,可以实现简化。让我们看 
A = e j&pi;&epsiv; ( N - 1 ) sin ( &pi;&epsiv;N ) sin ( &pi;&epsiv; )
残余频率误差通常小于10khz(7ppm),对这样的一个误差 
e j&pi;&epsiv; ( N - 1 ) = 0.9872 + 0.1595 i &cong; 1
sin ( &pi;&epsiv;N ) sin ( &pi;&epsiv; ) = 254.8975 &cong; 256 = N
因此我们可以作如下的近似 
A = e j&pi;&epsiv; ( N - 1 ) sin ( &pi;&epsiv;N ) sin ( &pi;&epsiv; ) &cong; N
对于Bi 
Figure 630358DEST_PATH_G200710193908901D00206
Figure 811941DEST_PATH_G200710193908901D00207
Figure 267193DEST_PATH_G200710193908901D00208
Figure 167016DEST_PATH_G200710193908901D00209
其中 
Figure 733126DEST_PATH_G200710193908901D002010
Figure 660948DEST_PATH_G200710193908901D00212
因为伴随残余频率误差的频率偏移小于(200+7)ppm,并且在-3≤i≤3,分母中的sin()的自变量是较小的。 
对于这样小的角度,简单的线性近似只有很小的误差 
Figure 48067DEST_PATH_G200710193908901D00213
因此接着 
Figure 152289DEST_PATH_G200710193908901D00214
&cong; 1 2 sin ( 2 &CenterDot; N &CenterDot; CFO ) + j [ cos ( 2 &CenterDot; N &CenterDot; CFO ) - 1 ] CFO + i&pi; N
应此简化的系数为 
A=N 
B 1 = 1 2 ( sin ( 2 &CenterDot; CFO &CenterDot; N ) CFO + &pi; &CenterDot; i 1 N ) + j 2 ( cos ( 2 &CenterDot; CFO &CenterDot; N ) - 1 CFO + &pi; &CenterDot; i 1 N )
B 2 = 1 2 ( sin ( 2 &CenterDot; CFO &CenterDot; N ) CFO + &pi; &CenterDot; i 2 N ) + j 2 ( cos ( 2 &CenterDot; CFO &CenterDot; N ) - 1 CFO + &pi; &CenterDot; i 2 N )
附录B 
示范性度量
具有200ppm载波和采样频率偏移的理想信道,无AWGN。 
图16总结了3[dB]振幅失衡、10°相位失衡、200ppm频率偏移、理想信道和没有AWGN的仿真结果。在调用RX I/Q补偿程序之前,接收器SNR大约为10.1[dB],从图16可以看出。 
图16:在取消之前,限幅器(slicer)输入理想信道、无AWGN 
在处理第一探测2后,SNR大约为33[dB]。在如下的图17中,可在第一次迭代之前和之后,比较镜像信号(image signal)的大小。 
图17:在第一次迭代之后,频率输入理想信道无AWGN 
在处理第二探测II之后,SNR大约为39.6[dB]。在如图18中,可在第二次迭代之前和之后,比较镜像信号的大小。在第二次迭代后,该镜像信号不再可见。 
图18:在两次迭代之后,频率图理想信道、没有AWGN 
在处理第三探测II后,SNR大约为40.6[dB]。 
图19:在三次迭代之后,限幅器输入理想信道、没有AWGN 
如图20,描述了限幅器SNR,在处理了第四探测II之后,传输SNR显示大约为40.9[dB] 
图20:在四次迭代之后,限幅器输入理想信道、没有AWGN 
如图21,描述了I/Q平衡的限幅SNR,该SNR大约为41.3[dB]。因此,将该SNR与四次探测II传输后得到的SNR相比,我们推断出,相对于41.3[dB]的本底噪音(noise floor),残余I/Q失衡的表现降低到大约为0.4[dB]。 
图21:限幅器输入理想信道、没有AWGN,没有I/Q失衡 
下表总结了,在四次迭代中每一次结束之后,I/Q失衡参数估计 
  迭代次数   增益   Theta[°]   限幅器SNR[dB]
  True Value   0.70795   10   41.3
  #0   1   0   10.1
  #1   0.71345   11.4402   33
  #2   0.71103   10.3227   39.6
  #3   0.70989   10.1742   40.6
  #4   0.70944   10.1358   40.9
信道MoCA10408、SNR AWGN15[dB] 
图22总结了3[dB]振幅失衡、10°相位失衡、200ppm频率偏移、MoCA10408信道和15[dB]AWGN的仿真结果。在调用RX I/Q补偿程序之前,接收器SNR大约为5.1[dB],从下图22可以看出。 
图22:在取消之前,限幅器输入MoCA10408信道、15[dB]AWGN SNR 
在处理第一探测II之后,SNR大约为9.5[dB]。在图23中,可在第一次迭代之前和之后,比较镜像信号的大小。 
图23:在第一次迭代之后,频率图MoCA10408信道、15[dB]AWGN SNR 
图24:在第一次迭代之后,限幅器输入、MoCA10408信道、15[dB]AWGNSNR 
在处理第二探测II之后,SNR大约为11[dB]。 
图25:在第二次迭代之后,频率图、MoCA10408信道、15[dB]AWGN SNR 
图26:在第二次迭代之后,限幅器输入、MoCA10408信道、15[dB]AWGNSNR 
在第三探测II处理之后,SNR大约为10.6[dB] 
图27:在第三次迭代之后,频率图、MoCA10408信道、15[dB]AWGN SNR 
图28:在第三次迭代之后,限幅器输入、MoCA10408信道、15[dB]AWGNSNR 
当在接收器,I/Q平衡时,SNR大约为11.3[dB],因此,残余I/Q失衡远小于解调器的本底噪音,并且即使在哈希(harsh)信道条件下,估计和补偿算法都是很有用的。 
图29:限幅器输入、MoCA10408信道、15[dB]AWGN SNR、没有I/Q失衡 
TX和RX I/Q失衡的消除 
MoCA所规定的认为频率偏移产生TX和RX I/Q失衡参数的消除,为了显示我们的算法可以在X失衡出现的情况下,估计RX参数,我们仿真结果作如下说明 
·TX振幅失衡1[dB] 
·TX相位失衡2° 
·RX振幅失衡3[dB] 
·RX相位失衡10° 
·频率偏移20ppm 
·信道=理想、没有AWGN 
图30:在TX和RX I/Q失衡下,限幅器输入、理想信道、没有AWGN 
在三个探测2传输后,SNR大约为21.2[dB] 
图31:在TX和RX I/Q失衡下,第三次迭代后,频率图、理想信道、没有AWGN 
图32:在TX和RX I/Q失衡下,第三次迭代后,限幅器输入、理想信道、没有AWGN 
在3次迭代后,经估计的RX I/Q失衡参数是 
  参数   实值   估计
  G   0.7071   0.70785
  Θ   10.0   10.2014
因此,对参数作了正确的估计,与说明中的SNR相比,其中仅TX失衡出现,大约为21.2[dB]。 
图33:在仅仅TX I/Q失衡下,限幅器输入、理想信道、没有AWGN 
因此,在TX I/Q失衡出现的情况下,所提出的算法是有用的。 
附录C 
定点伪码
如下的伪码给出了上述算法的定点实施。注意复变数由字母“c”表示。 
Function 1:Probe2Processing 
因此,对参数作了正确的估计,与说明中的SNR相比,其中仅TX失衡出现,大约为21.2[dB]。 
function[rho,theta,Scale_Q]=Probe2Processing(CFO,cIQparameters_log,i1,i2,N_delta) 
if(CFO==0) 
    CFO=-1; 
 end 
%Residual Frequency Estimation 
[cphasor_p,cphasor_m]=Residual_Frequency_Estimation(cIQparameters_log,CFO); 
%Residual Frequency Correction 
cZ=Residual_frequency_Correction(cIQparameters_log,cphasor_p,cphasor_m); 
%Coefficient Computation 
[cfB1,cfB2,Scale_ratio]=Coeff_Computation(CFO,i1,i2); 
%Phasor Estimation 
[cg_exp_mTeta_M_16,Scale_g,scale_inv]=Phasor_Estimation(cZ,cfB1,cfB2,CFO,N_delta,Scale_ratio); 
% IQ Coefr Computation 
[theta,rho,Scale_Q]=Compensation_Params_Estimation(cg_exp_mTeta_M_16,scale_inv,Scale_g); 
表C-1:探测2处理变量定义表 
Figure 996169DEST_PATH_G200710193908901D00271
Function 2:Residual_Frequency_Estimation 
function[cphasor_p,cphasor_m]=Residual_Frequency_Estimation(cIQParameters_log,CFO) 
%TBD Select 1 or 2 according to SNR 
cfphasor_64=0; 
for i=0:Nsym-2 
    cfphasor_64=Cmplx_Add_64_32(cfphasor_64,Cmplx_Mult_16_16(cIQparameters_log(i,1),... 
    conj(cIQparameters_log(i+1,1)); 
end 
%Level control to 16 bit signed 
Nphasor_bits=Nfft_out-1; 
csphasor=Scale_Complex_64(cfphasor_64,Nphasor_bits); 
%Get phasor angle and magnitude 
[angle_EfrPhasor]=cordic_SW(csphasor,1); 
%Generate′Exp_Vec_p′ 
fScale=26981;    %const 16 bit-round(gcordic)*2^(Nfft_out-1)) 
csphasor_div=Cmplx_real_div_32_16(csphasor<<(Nfft_out-2)),rPhasor);%32bit complex/16bit real 
   division 
%csphasor_div<+-2^15 
cphasor_p_32=(Cmplx_real_mulr_16_16(fScale,csphasor_div))>>(Nfft_out-2);%Scale back to 16bit, 
   known 
cphasor_p=Cmplx_Saturate(cphasor_p_32,Nphasor_bits); 
%Compute angle for IQ image rotation(Coridic Preparations) 
angle_m=2*CFO*(Nfft+LCP)-angle_Ef;    %lrad=2^(Fr_bits-1) 
%Generate′Exp_Vec_m′ 
[cphasor_m tmp]=cordic_SW(angle_m,0);%gives-phasor(angle) 
Function 3:Scale_Complex_64 
function[csphasor]=Scale_Complex_64(cfphasor_64,Nphasor_bits) 
Ceil_Log2_Abs_Real_Cfphasor_64=ceil_log2(abs(real(cfphasor_64))); 
Ceil_Log2_Abs_Imag_Cfphasor_64=ceil_log2(abs(imag(cfphasor_64))); 
Scale=Nphasor_bits-max(Ceil_Log2_Abs_Real_Cfphasor_64,Ceil_Log2_Abs_Imag_Cfphasor_64); 
if(Scale>=0) 
csphasor_32=(cfphasor_64<<Scale); 
else 
csphasor_32=(cfphasor_64>>(-Scale)); 
end 
csphasor=Cmplx_Saturate(csphasor_32,Nphasor_bits); 
Function 4:ceil_log2 
function[i]=ceil_log2(X) 
i=0; 
while(X!=0) 
      X=X>>1; 
      i=i+1; 
end 
Function:5:Sign 
function[Y]=Sign(X) 
y=1; 
if(X<0) 
  y=-1; 
end 
Function 6:Cmplx_Saturate 
function[X_16]=Cmplx_Saturate(X_32,Nbits) 
Sign_Real_X_32=sign(real(X_32)); 
Sign_Imag_X_32=sign(imag(X_32)); 
Abs_Real_X_32=abs(real(X_32)); 
Abs_Imag_X_32=abs(imag(X_32)); 
if(Abs_Real_X_32>=(1<<Nbits)) 
    if(Sign_Real_X_32==1) 
    X_32.r=(1<<Nbits)-1; 
    else 
X_32.r=-((1<<Nbits)-1); 
  end 
end 
if(Abs_Imag_X_32>=(1<<Nbits)) 
  if(Sign_Image_X_32==1) 
  X_32.i=(1<<Nbits)-1; 
  else 
X_32.i=-((1<<Nbits)-1); 
  end 
end 
X_16=X_32;  %casting to 16bit 
表C-2:Residual_Frequency_Estimation,Scale_Complex_64变量定义表 
Figure 6850DEST_PATH_G200710193908901D00301
表C-3:SW CORDIC变量定义 
Figure 974806DEST_PATH_G200710193908901D00302
Function 7:Cordic_Pre_Process 
function[data_in,X]=Cordic_Pre_Process(data_in,mode) 
%******************************************************************************** 
%Pre Cordic Processing Bring angle to[-pi/2,pi/2]and find Quadrate 
%******************************************************************************** 
if(mode==0) 
    Npi=0; 
    Sgn=0; 
    while(data_in<-QUARTER) 
         data_in=data_in+(QUARTER<<1); 
        Npi=1-Npi; 
    end 
    while(data_in>QUARTER) 
        data_in=data_in-(QUARTER<<1); 
        Npi=1-Npi; 
    end 
    X(0)=19898;                             % 
  (1/GainCordic)*2^(Ntan-1) 
    X(1)=0; 
    if(Npi) 
        X=-X; 
    end 
else 
    X=0; 
    Sgn_real=sign(real(data_in)); 
    Sgn_imag=sign(imag(data_in)); 
    if(Sgn_real==-1) 
[0488]         data_in=-data_in; 
[0489]         if(Sgn_imag==1) 
            X=QUARTER<<1; 
        else 
[0492]             X=-(QUARTER<<1); 
[0493]         end 
  end 
end 
表C-4:Cordic_SW,Cordic_Pre_Process变量定义 
Figure 70938DEST_PATH_G200710193908901D00311
Function 8:Residual_frequency_Compensation 
function[cZ_16]=Residual_frequency_Correction(cIQparameters_log,cphasor_p,cphasor_m) 
cdphasor_p=cphasor_p; 
cdphasor_m=cphasor_m; 
cZ_ACC_64=zeros(1,6);%64bit Acc array(16bit phasor * 16bit FFT output+log2(40)bit for acc>32!!!!) 
for i=l:Nsym-1 
    cZ_ACC_64(1)=Cmplx_Add_64_32(cZ_ACC_64(1),Cmplx_Mult_16_16(cIQparameters_log(i+1,1) 
    ,cphasor_p); 
    cZ_ACC_64(2)=Cmplx_Add_64_32(cZ_ACC_64(2),Cmplx_Mult_16_16(cIQparameters_log(i+1,2) 
    ,cphasor_p); 
    cZ_ACC_64(3)=Cmplx_Add_64_32(cZ_ACC_64(3),Cmplx_Mult_16_16(cIQparameters_log(i+1,3) 
    ,cphasor_m); 
    cZ_ACC_64(4)=Cmplx_Add_64_32(cZ_ACC_64(4),Cmplx_Mult_16_16(cIQparameters_log(i+1,4) 
    ,cphasor_m); 
    cZ_ACC_64(5)=Cmplx_Add_64_32(cZ_ACC_64(5),Cmplx_Mult_16_16(cIQparameters_log(i+1,5) 
    ,cphasor_m); 
    cZ_ACC_64(6)=Cmplx_Add_64_32(cZ_ACC_64(6),Cmplx_Mult_16_16(cIQparameters_log(i+1,6) 
    ,cphasor_m); 
  cphasor_p=Cmplx_Saturate((Cmplx_Mult_16_16(cphasor_p,cdphasor_p))>>(Ntan-1),Ntan-1); 
  cphasor_m=Cmplx_Saturate((Cmplx_Mult_16_16(cphasor_m.cdphasor_m))>>(Ntan-1),Ntan-1); 
end 
%Scale Back to fit 32bit 
for i=1:6 
cZ_ACC_32(i)=cZ_ACC_64(i)>>(Nfft_out); 
end 
%Level control vector so that max fits in 16bit 
Max_Z=0; 
for i=1:6 
    if(abs(real(cZ_ACC_32(i)))>Max_Z) 
        Max_Z=abs(real(Z_ACC_32(i))); 
    end 
    if(abs(imag(cZ_ACC_32(i)))>Max_Z) 
        Max_Z=abs(imag(Z_ACC_32(i))); 
    end 
end 
%Scale Back to 16 bits 
Scale_Z=(Nfft_out-1)-ceil_log2(Max_Z); 
for i=1:6 
cZ_16(i)=Cmplx_Saturate(cZ_ACC_32(i)>>(Scale_Z),Nfft_out-1); 
end 
表C-5:Residual_frequency_Compensation变量 
Figure 516963DEST_PATH_G200710193908901D00331
Function:9:Coeff Computation 
function[cfB1,cfB2,Scale_ratio]=Coeff_Computation(CFO,i1,i2) 
Log2Nfft=8;         %log2(Nfft)=log2(256)=8; 
PI_over_FFT=804;    %round(pi/Nfft*2^(Fr_bits-1)) 
Nfft=256; 
N1=2; 
[cphasor11 tmp]=cordic_SW((CFO<<(1+Log2Nfft)),0); 
cphasor11=Switch_real_imag(cphasor11); 
cfs11=Cmplx_Add_16_16(phasor11,-sqrt(-1)*(1<<(Ntan-1))); 
fs21=CFO+PI_over_FFT*i1; 
fs22=CFO+PI_over_FFT*i2; 
if(fs21==0) 
    cfB1_32=1<<(Nfft_out+Log2Nfft); 
else 
    cfB1_32=Cmplx_real_div_32_16((cfs11<<(Nfft_out-N1)),fs21); 
end 
if(fs22==0) 
    cfB2_32=1<<(Nfft_out+Log2Nfft); 
else 
    cfB2_32=Cmplx_real_div_32_16((cfs11<<(Nfft_out-N1)),fs22); 
end 
%Scale to fB1,fB2 to 15bit signed 
Max=0; 
Max_abs_real_cfB1=abs(real(cfB1_32)); 
Max_abs_imag_cfB1=abs(imag(cfB1_32)); 
Max_abs_real_cfB2=abs(real(cfB2_32)); 
Max_abs_imag_cfB2=abs(imag(cfB2_32)); 
if(Max_abs_real_cfB1>Max) 
    Max=Max_abs_real_cfB1; 
end 
if(abs Max_abs_imag_cfB1>Max) 
    Max=Max_abs_imag_cfB1; 
end 
if(Max_abs_real_cfB2>Max) 
    Max=Max_abs_real_cfB2 
end 
if(Max_abs_imag_cfB2>Max) 
    Max Max_abs_imag_cfB2; 
  end 
  Scale_ratio=15-(ceil_log2(Max)+1); 
If(Scale>=0) 
    cfB1=Cmplx_Saturate((cfB1_32<<Scale_ratio),Nfft_out-2); 
    cfB2=Cmplx_Saturate((cfB2_32<<Scale_ratio),Nfft_out-2); 
else 
    cfB1=Cmplx_Saturate((cfB1_32>>-Scale_ratio),Nfff_out-2); 
    cfB2=Cmplx_Saturate((cfiB2_32>>-Scale_ratio),Nfft_out-2); 
end 
表C-6:系数计算变量定义 
Figure 647730DEST_PATH_G200710193908901D00341
Function 10:Phasor Estimation variable definition 
function[cg_exp_mTeta_M_16,Scale_g,scale_inv]= 
Phasor_Estimation(cZ,cfB1,cfB2,CFO,N_delta,Scale_ratio) 
N2=2; 
%**************************************************************************** 
%  Fix Point Computation of 
% 
[0596] %  Z1*(|fB1|^2+|fB2|^2)    Z1*(|fB1|^2+|fB2|^2)*(B1′*Z3+B2*Z4′)′ 
%-----------------------=------------------------------------------ 
%    B1′*Z3+B2*Z4′                          |B1′*Z3|^2+|B2*Z4′|^2 
%***************************************************************************** 
sumfB1SfB2S=(Real_Add_30_30_T(MAG_2_16(cfB1),MAG_2_16(cfB2)))>>15 
[0601] cNUMERATOR_32(0)=Cmplx_Real_Mul_16_16(cZ(0),sumfB1SfB2S); 
cNUMERATOR_32(1)=Cmplx_Real_Mul_16_16(cZ(1),sumfB1SfB2S); 
cDENOM_32(0)=Cmplx_Add_32_32(Cmplx_Mul_16_16(conj(cZ(2)),(cfB1)), 
    Cmplx_Mul_16_16(conj(cZ(3)),(cfB2))); 
cDENOM_32(1)=Cmplx_Add_32_32(Cmplx_Mul_16_16(conj(cZ(4)),(cfB1)), 
    Cmplx_Mul_16_16(conj(cZ(5)),(cfB2))); 
cMul_NUM_cDENOM_64(0)=Cmplx_Mul_32_32(cNUMERATOR_32(0),conj(cDENOM_32(0))); 
cMul_NUM_cDENOM_64(1)=Cmplx_Mul_32_32(cNUMERATOR_32(1),conj(cDENOM_32(1))); 
DENOM_2_64(0)=MAG_2_32(cDENOM_32(0)); 
DENOM_2_64(1)=MAG_2_32(cDENOM_32(1)); 
%Level Control for division scale denominator down to 32bit 
if(DENOM_2_64(0)>DENOM_2_64(1)) 
    Scale=ceil_log2(DENOM_2_64(0))); 
else 
    Scale=ceil_log2(DENOM_2_64(1))); 
end 
Scale=31-Scale; 
If(Scale>=0) 
DENOM_2_32(0)=Cmplx_Saturate(DENOM_2_64(0)<<(Scale),31); 
DENOM_2_32(1)=Cmplx_Saturate(DENOM_2_64(1)<<(Scale),31); 
else 
DENOM_2_32(0)=Cmplx_Saturate(DENOM_2_64(0)>>(-Scale),31); 
DENOM_2_32(1)=Cmplx_Saturate(DENOM_2_64(1)>>(-Scale),31); 
end 
%complex/real division 64bit/32bit gives 32bit result 
cfCM(0)=Cmplx_real_div_64_32(cMul_NUM_cDENOM_64(0)>>N2,DENOM_2_32(0)); 
cfCM(1)=Cmplx_real_div_64_32(cMul_NUM_cDENOM_64(1)>>N2,DENOM_2_32(1)); 
cfCM_avg=Cmplx_Add_32_32(cfCM(0),cfCM(1)); 
%Rotation of FCM_avg needed only if HW can not Insure Delatn=0 
[cphasor_dn tmp]=cordic_SW((CFO<<1)*N_delta,0); 
cfCM_avg_rot_64=Cmplx_Mul_32_16(cfCM_avg,cphasor_dn); 
cfCM_avg_rot_32=fCM_avg_rot_64>>(Ntan); 
[0633] Scale_fCM=Ntan-l-N1+Scale_ratio-Scale-6-N2; 
[0634] fCM_one_level_32=1<<(Scale_fCM); 
cfp_m_32=Cmplx_Real_Add_32_32(cfCM_avg_rot_32,-fCM_one_level_32); 
cfp_p_32=Cmplx_Real_Add_32_32(cfCM_avg_rot_32,fCM_one_level_32); 
cNUMERATORf_64=Cmplx_Mul_32_32(cfp_m_32,conj(cfp_p_32)); 
DENOMf_64           =MAG_2_32(cfp_p_32); 
%Level Control for division scale denominator down to 32bit signed 
Abs_real_Numerator64=abs(real(cNUMERATORf_64); 
Abs_imag_Numerator64=abs(imag(cNUMERATORf_64); 
if(Abs_real_Numerator64)>Abs_imag_Numerator64) 
    Scale_fn=30-ceil_log2(Abs_real_Numerator64); 
else 
    Scale_fn=30-ceil_log2(Abs_imag_Numerator64); 
end 
if(Scale_fn>=0) 
cNUMERATORf_32=cNUMERATORf_64<<(Scale_fn); 
else 
cNUMERATORf_32=cNUMERATORf_64>>(-Scale_fn); 
end 
%Level Control for division scale denominator down to 16bit unsigned 
Scale_fd=16-ceil_log2(DENOMf_64); 
if(Scale_fd>=0) 
DENOMf_scaled_16=Cmplx_Saturate(DENOMf_64<<(Scale_fd),16); 
else 
DENOMf_scaled_16=Cmplx_Saturate(DENOMf_64>>(-Scale_fd),16); 
end 
%  Division 32bit complex by 16bit real 
cg_exp_mTeta_M_16=Cmplx_real_div_32_16(cNUMERATORf_32,DENOMf_scaled_16); 
Scale_g=Scale_fd-Scale_fn; 
scale_inv=14-Scale_fd+Scale_fn; 
表C-7:矢量估计变量定义 
Figure 786588DEST_PATH_G200710193908901D00381
Function 11:Compensation_Params_Estimation 
function[theta,rho,Scale_Q]=Compensation_Params_Estimation(cg_exp_mTeta_M_16, 
   scale_inv,Scale_g) 
Mue_bits=4; 
if(ProbeII_Num==1) 
Mue=12; 
elseif(ProbeII_Num=2) 
Mue=8; 
else 
Mue=4; 
End 
if(ProbeII_Num>=1) 
  %First Order Loop 
  Mue_1m=(16-Mue); 
  cg_ACC_32=cg_exp_mteta<<(-Scale_g-Mue_bits); 
  cg_Delta_32=(Cmplx_Mul_16_16(cg_exp_mteta *cg_exp_mTeta_M_16))>>4; 
  cg_ACC_32=Cmplx_Add_32_32(Cmplx_Mul_32_16(cg_ACC_32,Mue_Fix_1m), 
  Cmplx_Mul_32_16(cg_Delta_32,Mue_Fix))>>(-Scale_g); 
  cg_exp_mteta=g_ACC_32; 
  %I/Q Correction Params Calculation 
  [theta,rho,Scale_Q]=Compute_Fix_Point_IQ_Coeffs(cg_exp_mteta,scale_inv,Scale_g,0); 
else 
    g_exp_mteta=cg_exp_mTeta_M_16; 
    %I/Q Correction Params Calculation 
  [theta,rho,Scale_Q]=Compute_Fix_Point_IQ_Coeffs(g_exp_mTeta_M_16,scale_inv,Scale_g,1); 
end 
ProbeII_Num=ProbeII_Num+1; 
表C-8:Compensation_Params_Estimation变量定义 
Figure 307699DEST_PATH_G200710193908901D00391
Function 13:Compute_Fix_Point_IQ_Coeffs 
function [theta,rho,Scale_Q]=Compute)_Fix_Point_IQ_Coeffs(cg_exp_mTeta_M_16,scale_inv, 
    scale_g,FirstTime) 
if(FirstTime) 
    scale_delta=0; 
    if(scale_inv>31) 
        scale_delta=scale_inv-31; 
        scale_inv=31; 
    end 
    scale_inv_log=scale_inv; 
[0704]     scale_delta_log=scale_delta; 
[0705]     scale_g_log=scale_g 
else 
    scale_inv=scale_inv_log; 
[0708]     scale_delta=scale_delta_log; 
[0709]     scale_g=scale_g_log; 
end 
real_g_exp_mTeta_M_16=real(cg_exp_mTeta_M_16); 
imag_g_exp_mTeta_M_16=imag(cg_exp_mTeta_M_16); 
if(real_g_exp_mTeta_M_16>1<<(-scale_g_log)) 
    Inv_real_g_exp_mTeta_M_16=Cmplx_real_div_32_16(1<<(scale_inv),real_g_exp_mTeta_M_16)); 
    Scale_theta=-14+Teta_bits-1+scale_delta; 
    If(Scale_theta>=0) 
  theta=Inv_real_g_exp_mTeta_M_16<<(Scale_theta); 
    else 
  theta=Inv_real_g_exp_mTeta_M_16>>(-Scale_theta); 
    end 
  Rho_32=Cmplx_Mul_16_16(-imag_g_exp_mTeta_M_16,Inv_real_g_exp_mTeta_M_16); 
  Scale_rho=-Rho_bits+1+scale_inv; 
  If(Scale_rho>=0) 
rho=Rho_32<<(Scale_rho); 
    else 
rho=Rho_32>>(-Scale_rho); 
    end 
    Scale_Q=1; 
else 
    Scale_theta=scale_g_log+Teta_bits-1; 
    Scale_rho=scale_g_log+Rho_bits-1; 
    If(Scale_theta>=0) 
theta=real_g_exp_mTeta_M_16<<(Scale_theta); 
    else 
theta=real_g_exp_mTeta_M_6>>(-Scale_theta); 
    end 
    If(Scale_rho>=0) 
rho=(-imag_g_exp_mTeta_M_16)<<(Scale_rho); 
    else 
rho=(-imag_g_exp_mTeta_M_16)>>(-Scale_rho); 
    end 
    Scale_Q=0; 
end 
表C-9:Compute_Fix_Point_IQ_Coeffs变量定义 
复变数数学运算操作定义 
[C_32_r,C_32_i]=Cmplx_Add_16_16(A_16_r,A_16_i,B_16_r,B_16_i); 
C_32_r=A_16_r+B_16_r 
 C_32_i=A_16_i+B_16_i 
[C_32_r,C_32_i]=Cmplx_Add_32_32(A_32_r,A_32_i,B_32_r,B_32_i); 
[0751] C_32_r=A_32_r+B_32_r 
C_32_i=A_32_i+B_32_i 
[R_32]=Real_Add_30_30_30_T(A_30,B_30); 
[0754] R_32=A_30+B_30 
[C_64_r,C_64_i]=Cmplx_Add_64_32(A_64_r,A_64_i,B_32_r,B_32_i); 
C_64_r=A_64_r+B_32_r 
C_64_i=A_64_i+B_32_i 
[C_32_r,C_32_i=Cmplx_Real_Add_32_16(A_32_r,A_32_i,B_16); 
C_32_r=A_32_r+B_16 
C_32_i=A_32_i 
[C_32_r,C_32_i]=Cmplx_imag_Add_32_16(A_32_r,A_32_i,B_16); 
C_32_r=A_32_r 
C_32_i=A_32_i+B_16 
[C_32_r]=MAG_2_16(A_16_r,A_16_i) 
[0765] C_32_r=A_16_r* A_16_r+A_16_i* A_16_i 
[C_64_r]=MAG_2_32(A_32_r,A_32_i) 
C_64_r=A_32_r* A_32_r+A_32_i* A_32_i 
[0768] [C_32_r,C_32_i]=Cmplx_Mut_16_16(A_16_r,A_16_i,B_16_r,B_16_i) 
[0769] C_32_r=A_16_r*B_16_r-A_16_i*B_16_i 
C_32_i=A_16_r*B_16_i+A_16_i*B_16_r 
[0771] [C_64_r,C_64_i]=Cmplx_Mult_32_32(A_32_r,A_32_i,B_32_r,B_32_i) 
C_64_r=A_32_r*B_32_r-A_32_i*B_32_i 
C_64_i=A_32_r*B_32_i+A_32_i*B_32_r 
[C_32_r,C_32_i]=Cmplx_real_Mult_16_16(A_16_r,A_16_i,B_16_r) 
C_32_r=A_16_r*B_16_r 
C_32_i=A_16_i*B_16_r 
[C_64_r,C_64_i]=Cmplx_Mul_32_16(A_32_r,A_32_i,B_16_r) 
[0778] C_64_r=A_32_r*B_16_r 
C_64_i=A_32_i*B_16_r 
[C_16_r,C_16_i]=Cmplx_real_div_32_16(A_32_r,A_32_i,B_16_r) 
[0781] C_32_r=A_32_r/B_16_r 
C_32_i=A_32_i/B_16_r 
[C_32_r,C_32_i]=Cmplx_real_div_64_32(A_64_r,A_64_i,B_32_r) 
C_32_r=A_64_r/B_32_r 
C_32_i=A_64_i/B_32_r 
[C_16_r,C_16_i]=Switch_real_imag(A_16_r,A_16_i); 
C_32_r=A_16_i 
C_32_i=A_16_r 
附录D 
示范性的HW-SW接口参数
下表总结了在探测2接收的过程中,HW和SW之间的信息交换。输出指HW的输出,输入指输入到HW。 
Figure 542688DEST_PATH_G200710193908901D00441
附录E 
频率偏移引入、CP长度、符号数量
function[dF]=Frequency_Offset_Introduction(CFO) 
Freq_Th=41;    %round((5e3/50e6)*2*pi*2^16) 
if(abs(CFO)<Freq_Th) 
    dF=sign(CFO)*(TBD RF Interface introduce); 
附录E 
else 
    dF=0; 
end 
信号音选择
function[SC]=ProbeII_Tone_Selection(Sigma_2_32) 
SC_MIN(0)=146; 
SC_MAX(0)=186; 
SC_MIN(2)=217; 
SC_MAX(2)=249; 
SC_DEFAULT(0)=176; 
SC_DEFAULT(1)=249; 
NLog_In_Bits=6; 
NLog_Out_Bits=14; 
SC=SC_DEFAULT; 
a=-7871;%round(-1.921625277102556*2^(NLog_Out_Bits-2)); 
b=8071;%round(1.970377382221271*2^(NLog_Out_Bits-2)); 
C=32656;%round(0.0375*log2(10)*2^(NLog_Out_Bits-2+NLog_In_Bits)); 
%Find Default NSR log2(Sigma_2) 
for i=0:1 
    Scale_16(i)=ceil_log2(Sigma_2_32(SC_DEFAULT(i))); 
    Frac_16(i)=Sigma_2_32(SC_DEFAULT(i))>>(Scale_16(i)-NLog_In_Bits); 
    NSR_Default_32(i)=Scale_16(i)<<(NLog_Out_Bits-2+NLog_In_Bits)+... 
                (Real_Mult_16_16(b,Frac_16(i))+a<<(NLog_In_Bits)); 
    NSR_Best_32(i)=NSR_Default_32(i); 
    for k=[SC_MIN(i):SC_MAX(i)] 
        Scale_k_16=ceil_log2(Sigma_2_32(k)); 
        Frac_k_16=Sigma_2_32(k)>>(Scale_k_16-NLog_In_Bits); 
        NSR_32=Scale_k_16<<(NLog_Out_Bits-2+NLog_In_Bits)+... 
                            (Real_Mult_16_16(b,Frac_k_16)+a<<(NLog_In_Bits)); 
        if(NSR_32<Add_Real_32_32(NSR_Default_32(i),... 
                          -Real_Mult_16_16(C,Abs_16(Add_Real_16_16(k,-SC_DEFAULT(i))) 
            if(NSR_32<NSR_Best_32(i)) 
                SC(i)=k; 
                NSR_Best_32(i)=NSR_32; 
            end 
        end 
    end 
end 
Where Sigma_32 is a vector of the estimated noise variance of the various FFT tones. 
CP和OFDM符号数量选择
function[NUM_OF_SYMS,CP_LENGTH]=Probe2_CP_L_Select(CFO) 
CP_Max=126; 
CP_Min=64; 
L_Max=40; 
L_Min=28; 
PI=205887;             %round(pi*2^Freq_bits-1) 
2P=411775;             %round(2pi*2^Freq_bits-1) 
Phase_Th=41177;        %round(2pi/10*2^Freq_bits-1) 
dPhase_64=0; 
error=0; 
Min_Err=Inf; 
NUM_OF_SYMS=L_Min; 
CP_LENGTH=CP_Min; 
for CP=CP_Min:CP_Max 
     for L=L_Min:L_Max 
         dPhase_32=L*(CP+Nfft)*(CFO); 
         while(abs(dPhase_32)>2P) 
             dPhase_32=dPhase_32-sign(dPhase_32)*2P; 
        end 
        if(abs(dPhase_32)>PI) 
            error_32=abs(2PI-abs(dPhase_32)); 
        else 
            error_32=abs(dPhase_32); 
        end 
        if(error_32<Phase_Th) 
            Indicator=1; 
            if(error_32<Min_Err) 
                Min_Err=error; 
                NUM_OF_SYMS=L; 
                CP_LENGTH=CP; 
            end 
        end 
    end 
end 

Claims (4)

1.一种补偿数据信号的第一分量和第二分量间失衡的方法,所述数据信号具有正值的频率,通过具有频率误差的载波信号对其进行调制,其特征在于,包括以下步骤:
接收数据和载波信号;
选择时域参数值,以使与负值频率相应的频域能量最小化;和
基于所述值在时域中修改至少一个所述分量;
估计与所述载波信号相应的载波信号频率;
估计残余载波频率误差;和
基于所述残余载波频率误差,修改所述载波频率的估计;其中,
根据等式5计算所述残留载波频率误差估计;
等式5:
&epsiv; ^ = angle ( &Sigma; m = o L - 2 Z [ k i , m ] Z * [ k i , m + 1 ] ) 2 &pi; ( N + N CP )
其中,
k i = k 1 SNR k 1 > SNR k 2 k 2 SNR k 2 > SNR k 1
根据等式6计算残余频率误差补偿和时间平均;
等式6:
Z &OverBar; k 1 = &Sigma; m = 0 L - 1 Z [ k 1 , m ] e - j 2 &pi; &epsiv; ^ ( N + N CP ) m Z &OverBar; k 2 = &Sigma; m = 0 L - 1 Z [ k 2 , m ] e - j 2 &pi; &epsiv; ^ ( N + N CP ) m
Z &OverBar; - k 1 + i 1 = &Sigma; m = 0 L - 1 Z [ - k 1 + i 1 , m ] e - j ( 2 CFO + 2 &pi; &epsiv; ^ ) ( N + N CP ) m Z &OverBar; - k 2 + i 1 = &Sigma; m = 0 L - 1 Z [ - k 2 + i 1 , m ] e - j ( 2 CFO + 2 &pi; &epsiv; ^ ) ( N + N CP ) m
Z &OverBar; - k 1 + i 2 = &Sigma; m = 0 L - 1 Z [ - k 1 + i 2 , m ] e - j ( 2 CFO + 2 &pi; &epsiv; ^ ) ( N + N CP ) m Z &OverBar; - k 2 + i 2 = &Sigma; m = 0 L - 1 Z [ - k 2 + i 2 , m ] e - j ( 2 CFO + 2 &pi; &epsiv; ^ ) ( N + N CP ) m
根据等式7、等式8估计至少一个分量失衡相位估计的值;
等式7:
B n = CFO &NotEqual; 0 1 2 ( sin ( 2 &CenterDot; CFO &CenterDot; N ) CFO + &pi; &CenterDot; i n N ) + j 2 ( cos ( 2 &CenterDot; CFO &CenterDot; N ) - 1 CFO + &pi; &CenterDot; i n N ) CFO = 0 , i n = 0 N CFO = 0 , i n &NotEqual; 0 0
C 1 = e j 2 CFO ( &Delta;n ) N ( | B 1 | 2 + | B 2 | 2 ) &CenterDot; Z &OverBar; k 1 B 1 ( Z &OverBar; - k 1 + i 1 ) * + B 2 ( Z &OverBar; - k 1 + i 2 ) *
C 2 = e j 2 CFO ( &Delta;n ) N ( | B 1 | 2 + | B 2 | 2 ) &CenterDot; Z &OverBar; k 2 B 1 ( Z &OverBar; - k 2 + i 1 ) * + B 2 ( Z &OverBar; - k 2 + i 2 ) *
C &OverBar; = 1 2 ( C 1 + C 2 )
等式8:
ge - j&theta; &OverBar; = C &OverBar; - 1 C &OverBar; + 1
依据等式9计算至少一个分量失衡补偿参数ξ、ρ和Scale_Q;
等式9:
real { ge - j&theta; &OverBar; } &GreaterEqual; 1 ScaleQ = 1 &xi; ^ = 1 real { ge - j&theta; &OverBar; } , &rho; ^ = - imag { ge - j&theta; &OverBar; } real { ge - j&theta; } &OverBar; otherwise ScaleQ = 0 &xi; ^ = real { ge - j&theta; &OverBar; } , &rho; ^ = - imag { ge - j&theta; &OverBar; }
其中,参数k1、k2代表窗口k1、k2,数据组Z(k,m)是正交频分复用符号m的窗口k的输出,L为正交频分复用符号的总数,i1、i2和in是频率窗口系数,N为窗口的数量,CFO是估计的载波频率偏移,Angle表示矢量角,Δn为计算数控振荡器复位和窗口的第一样本之间的样本数量,SNR为网络节点的信噪比,NCP为循环前缀的长度,Bn、C1、C2
Figure FDA00002128823500027
分别为中间变量,
Figure FDA00002128823500028
是所计算的失衡相位估计的值,real()是实部,imag()为虚部,otherwise表示其它,
Figure FDA00002128823500029
为失衡补偿参数的估计值。
2.根据权利要求1所述的方法,其特征在于,所述基于所述时域参数值在时域中修改至少一个所述分量中的修改包括:
为所述分量确定与信号振幅乘法器相应的第一值;和
为所述分量确定与相位偏移相应的第二值。
3.一种用于补偿第一信号和第二信号之间失衡的系统,其特征在于,包括:
第一模块,用于根据所述第一和第二信号,记录第一频域参数、第二频域参数、第一信号音、第二信号音、以及载波频率;所述第一频域参数和第二频域参数相应于所述第一信号音、第二信号音、以及载波频率中的每一个;和
第二模块,用于根据所述第一和第二频域参数,计算至少一个时域补偿参数;
当具有残余载波频率偏移,所述第二模块可:计算残余频率偏移的估计;基于所述估计,计算所述时域补偿参数;其中,
根据等式5计算所述残留载波频率误差估计;
等式5:
&epsiv; ^ = angle ( &Sigma; m = 0 L - 2 Z [ k i , m ] Z * [ k i , m + 1 ] ) 2 &pi; ( N + N CP )
其中,
k i = k 1 SNR k 1 > SNR k 2 k 2 SNR k 2 > SNR k 1
根据等式6计算残余频率误差补偿和时间平均;
等式6:
Z &OverBar; k 1 = &Sigma; m = 0 L - 1 Z [ k 1 , m ] e - j 2 &pi; &epsiv; ^ ( N + N CP ) m Z &OverBar; k 2 = &Sigma; m = 0 L - 1 Z [ k 2 , m ] e - j 2 &pi; &epsiv; ^ ( N + N CP ) m
Z &OverBar; - k 1 + i 1 = &Sigma; m = 0 L - 1 Z [ - k 1 + i 1 , m ] e - j ( 2 CFO + 2 &pi; &epsiv; ^ ) ( N + N CP ) m Z &OverBar; - k 2 + i 1 = &Sigma; m = 0 L - 1 Z [ - k 2 + i 1 , m ] e - j ( 2 CFO + 2 &pi; &epsiv; ^ ) ( N + N CP ) m
Z &OverBar; - k 1 + i 2 = &Sigma; m = 0 L - 1 Z [ - k 1 + i 2 , m ] e - j ( 2 CFO + 2 &pi; &epsiv; ^ ) ( N + N CP ) m Z &OverBar; - k 2 + i 2 = &Sigma; m = 0 L - 1 Z [ - k 2 + i 2 , m ] e - j ( 2 CFO + 2 &pi; &epsiv; ^ ) ( N + N CP ) m
根据等式7、等式8估计至少一个分量失衡相位估计的值;
等式7:
B n = CFO &NotEqual; 0 1 2 ( sin ( 2 &CenterDot; CFO &CenterDot; N ) CFO + &pi; &CenterDot; i n N ) + j 2 ( cos ( 2 &CenterDot; CFO &CenterDot; N ) - 1 CFO + &pi; &CenterDot; i n N ) CFO = 0 , i n = 0 N CFO = 0 , i n &NotEqual; 0 0
C 1 = e j 2 CFO ( &Delta;n ) N ( | B 1 | 2 + | B 2 | 2 ) &CenterDot; Z &OverBar; k 1 B 1 ( Z &OverBar; - k 1 + i 1 ) * + B 2 ( Z &OverBar; - k 1 + i 2 ) *
C 2 = e j 2 CFO ( &Delta;n ) N ( | B 1 | 2 + | B 2 | 2 ) &CenterDot; Z &OverBar; k 2 B 1 ( Z &OverBar; - k 2 + i 1 ) * + B 2 ( Z &OverBar; - k 2 + i 2 ) *
C &OverBar; = 1 2 ( C 1 + C 2 )
等式8:
ge - j&theta; &OverBar; = C &OverBar; - 1 C &OverBar; + 1
依据等式9计算至少一个分量失衡补偿参数ξ、ρ和Scale_Q;
等式9:
real { ge - j&theta; &OverBar; } &GreaterEqual; 1 ScaleQ = 1 &xi; ^ = 1 real { ge - j&theta; &OverBar; } , &rho; ^ = - imag { ge - j&theta; &OverBar; } real { ge - j&theta; } &OverBar; otherwise ScaleQ = 0 &xi; ^ = real { ge - j&theta; &OverBar; } , &rho; ^ = - imag { ge - j&theta; &OverBar; }
其中,参数k1、k2代表窗口k1、k2,数据组Z(k,m)是正交频分复用符号m的窗口k的输出,L为正交频分复用符号的总数,i1、i2和in是频率窗口系数,N为窗口的数量,CFO是估计的载波频率偏移,Angle表示矢量角,Δn为计算数控振荡器复位和窗口的第一样本之间的样本数量,SNR为网络节点的信噪比,NCP为循环前缀的长度,Bn、C1、C2
Figure FDA00002128823500047
分别为中间变量,
Figure FDA00002128823500048
是所计算的失衡相位估计的值,real()是实部,imag()为虚部,otherwise表示其它,
Figure FDA00002128823500049
为失衡补偿参数的估计值。
4.根据权利要求3所述的系统,其特征在于,进一步包括:
第三模块,用于根据所述时域补偿参数,输出经补偿的信号。
CN2007101939089A 2006-11-20 2007-11-20 补偿数据信号的第一分量和第二分量间失衡的方法及系统 Expired - Fee Related CN101252561B (zh)

Applications Claiming Priority (16)

Application Number Priority Date Filing Date Title
US86652706P 2006-11-20 2006-11-20
US86653206P 2006-11-20 2006-11-20
US86651906P 2006-11-20 2006-11-20
US60/866,532 2006-11-20
US60/866,527 2006-11-20
US60/866,519 2006-11-20
US90711107P 2007-03-21 2007-03-21
US60/907,111 2007-03-21
US90712607P 2007-03-22 2007-03-22
US60/907,126 2007-03-22
US90781907P 2007-04-18 2007-04-18
US60/907,819 2007-04-18
US94099807P 2007-05-31 2007-05-31
US60/940,998 2007-05-31
US11/938,848 2007-11-13
US11/938,848 US8090043B2 (en) 2006-11-20 2007-11-13 Apparatus and methods for compensating for signal imbalance in a receiver

Publications (2)

Publication Number Publication Date
CN101252561A CN101252561A (zh) 2008-08-27
CN101252561B true CN101252561B (zh) 2012-12-12

Family

ID=39632063

Family Applications (2)

Application Number Title Priority Date Filing Date
CN2007101939125A Active CN101222491B (zh) 2006-11-20 2007-11-20 为具有mac层和phy层的共享通信网络节点服务的系统及方法
CN2007101939089A Expired - Fee Related CN101252561B (zh) 2006-11-20 2007-11-20 补偿数据信号的第一分量和第二分量间失衡的方法及系统

Family Applications Before (1)

Application Number Title Priority Date Filing Date
CN2007101939125A Active CN101222491B (zh) 2006-11-20 2007-11-20 为具有mac层和phy层的共享通信网络节点服务的系统及方法

Country Status (1)

Country Link
CN (2) CN101222491B (zh)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101521524B (zh) * 2008-12-28 2013-01-09 中国电子科技集团公司第四十一研究所 一种td-scdma信号的频率误差测试方法
US8380145B2 (en) * 2011-06-08 2013-02-19 Mediatek Singapore Pte. Ltd. Integrated circuit, wireless communication unit and method for quadrature power detection
US10412698B2 (en) * 2017-02-22 2019-09-10 Samsung Electronics Co., Ltd. System and method for IQ mismatch calibration and compensation
CN108830217B (zh) * 2018-06-15 2021-10-26 辽宁工程技术大学 一种基于模糊均值哈希学习的签名自动判别方法
US20210392642A1 (en) * 2018-10-31 2021-12-16 Zhicong Kong Ventilated, stackable, pressing molds

Also Published As

Publication number Publication date
CN101222491B (zh) 2011-11-09
CN101222491A (zh) 2008-07-16
CN101252561A (zh) 2008-08-27

Similar Documents

Publication Publication Date Title
TWI429246B (zh) 補償資料信號的第一分量和第二分量間失衡的方法及系統
US8532239B2 (en) Method for error compensation in an OFDM system with diversity
US7466768B2 (en) IQ imbalance compensation
US7020226B1 (en) I/Q distortion compensation for the reception of OFDM signals
CN101438553B (zh) 用于在mimo ofdm中进行时钟校正的方法和装置
AU7216298A (en) Frame structure and frame synchronization for multicarrier systems
CN112422473B (zh) 联合频偏估计策略的系统及方法
CN101252561B (zh) 补偿数据信号的第一分量和第二分量间失衡的方法及系统
CN112803992B (zh) 一种低轨宽带卫星系统整数倍子载波间隔频偏估算方法
US8174958B2 (en) Method and system for a reference signal (RS) timing loop for OFDM symbol synchronization and tracking
EP2130345A1 (en) Method and apparatus for digital signal reception
CN101257470A (zh) 正交频分复用系统中利用插入导频抑制相位噪声的方法
CN101534287A (zh) 移动通信系统中进行载波频率偏移校正的方法和装置
Hwang et al. Performance analysis of OFDM on the shadowed multipath channels
US7606331B2 (en) Frequency offset compensation in radio receiver
CN100550998C (zh) 多阶结构的载波恢复装置
Kumar et al. Blind symbol timing offset estimation for offset‐QPSK modulated signals
Abhayawardhana et al. Residual frequency offset correction for coherently modulated OFDM systems in wireless communication
Assaf et al. Sample Clock Offset Compensation in the fifth-generation new radio Downlink
JP4520825B2 (ja) ガードインターバル検出装置およびガードインターバル検出方法、並びに、周波数オフセット検出装置
Webber et al. Performance of frequency recovery algorithms for a poly-polarization multiplexing satellite system
Matheus et al. Parameter optimization for decision directed frequency tracking for coherent OFDM
Gorbunov et al. Experimental Testing Platform for Optimal Signals Based on Eigenfunctions of Band-Limited Kernels
Yachil et al. Low complexity multi‐channel synchronization for satellite systems with adjacent channel interference
Abari Low-complexity and filter-tap memory optimized channel estimation in multi-mode and multi-standard OFDM systems

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
REG Reference to a national code

Ref country code: HK

Ref legal event code: DE

Ref document number: 1122920

Country of ref document: HK

C14 Grant of patent or utility model
GR01 Patent grant
REG Reference to a national code

Ref country code: HK

Ref legal event code: GR

Ref document number: 1122920

Country of ref document: HK

CF01 Termination of patent right due to non-payment of annual fee
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20121212

Termination date: 20171120