混合波束赋形新架构:动态PFC在性能与复杂度间的智能权衡
1. 项目概述在性能与成本间走钢丝的波束赋形新思路在毫米波和大规模MIMO系统里搞研发最让人头疼的往往不是算法本身而是算法背后那套硬件的“身价”。全数字波束赋形性能是好但给成百上千根天线每根都配一套完整的射频链路包括混频器、数模转换器、功率放大器等那功耗和成本直接上天在商业部署里基本是“空中楼阁”。所以混合波束赋形成了必然选择把一部分活儿主要是模拟波束赋形交给相对便宜的模拟器件比如移相器去干数字部分只做基带处理。但问题又来了模拟部分的网络怎么连业界早先有两大经典架构全连接和部分连接。全连接架构里每根天线都能收到所有射频链路的信号自由度最高性能逼近理论最优但需要海量的移相器和连接线路硬件复杂度爆表。部分连接架构则走了另一个极端每根天线只连一个射频链路硬件简单得像“直连水管”但性能损失太大尤其在用户多、信道复杂时干扰抑制能力捉襟见肘。后来有人提出了折中的组连接和重叠子阵列架构试图在两者之间找平衡点。但我在实际研究和工程评估中发现这些架构的灵活性还是不够它们提供的“性能-复杂度”档位是离散的、有限的就像手动变速箱只有几个固定的档位可选无法根据实时路况信道状态进行细腻的微调。这就引出了我们这次要深入探讨的核心如何设计一种更灵活、更高效的波束赋形架构能像无级变速一样在性能与硬件复杂度这个连续的谱系上精准地找到当前场景下的最优解本文要拆解的正是学术界针对此问题提出的一种创新方案——部分/全连接架构以及它的动态升级版。这个架构的精妙之处在于它不再把天线阵列视为一个整体去套用全连接或部分连接的模板而是将其“解构”成两种功能不同的天线组一部分天线保持“部分连接”的简洁性另一部分天线则升级为“全连接”以获取更高的自由度。通过调整这两类天线的比例我们就能在Nt1个不同的复杂度等级上平滑地调节系统性能。更绝的是他们还引入了开关网络和深度神经网络让这个架构能根据实时的信道状态信息动态调整天线分组策略相当于给系统装上了“自适应巡航”。接下来我们就一层层剥开这个架构的技术内核看看它到底是怎么玩的以及我们在复现和应用时需要注意哪些坑。2. 核心架构解析PFC如何重构天线连接范式2.1 传统架构的瓶颈与PFC的基本思想在深入PFC之前我们必须先理解传统架构的局限性这能帮我们看清PFC创新的出发点。全连接架构的预编码矩阵F是一个稠密矩阵几乎每个元素都非零对应着一个物理的射频路径和移相器。假设基站有Nt256根天线服务K10个用户即NRF10条射频链路那么全连接就需要2560个移相器这个数量在成本和功耗上是难以承受的。部分连接架构的预编码矩阵则是一个块对角矩阵只有Nt256个非零元素硬件复杂度骤降但代价是预编码矩阵的秩和自由度严重受限在多用户干扰抑制上能力不足。PFC架构的核心理念是差异化对待天线。它不再要求所有天线遵循同一套连接规则而是将天线阵列划分为两个逻辑组全连接天线这些天线享受“VIP待遇”每根都连接到所有的K条射频链路上。它们构成了系统获取高波束赋形增益和强干扰抑制能力的核心。单连接天线这些天线则保持“经济适用”模式每根只连接到一条指定的射频链路上。它们的主要作用是补充能量并协助其所属的射频链路服务特定用户硬件成本极低。假设总天线数Nt256我们设定Nc50根为FCA那么剩下的NU206根就是SCA。这样一来系统总的射频路径数即预编码矩阵F中的非零元素数就从全连接的2560个降低到了NU K*Nc 206 10*50 706个。这个数字远低于全连接但又显著高于部分连接的256个硬件复杂度恰好卡在一个中间位置。注意这里有一个关键的设计自由度即如何将NU根单连接天线分配给K个用户。论文中假设了按顺序分配例如前Nu1根给用户1接着Nu2根给用户2...但在实际系统中这可以作为一种资源分配策略。如果某个用户信道条件极差可以分配更多SCA给他相当于增加了指向他的“专属”天线数量从而实现了用户间的优先级调度这是PFC架构一个隐含的灵活性优势。2.2 PFC的数学模型与预编码矩阵结构理解了物理概念我们来看它的数学表达这是后续算法设计的基础。根据PFC的连接方式其模拟预编码矩阵F具有一个非常特殊的结构F [ [fu1, 0, ..., 0, fc1], [0, fu2, ..., 0, fc2], ..., [0, 0, ..., fuK, fcK] ]这是一个分块矩阵。其中fuk是一个Nuk x 1的列向量代表分配给第k个用户的Nuk根单连接天线上的模拟加权系数。fck是一个Nc x 1的列向量代表所有Nc根全连接天线上用于服务第k个用户的加权系数。这个矩阵结构是稀疏的包含了大量强制为零的元素对应不存在的物理连接。正是这种结构化的稀疏性在降低硬件复杂度的同时也给预编码优化问题带来了新的约束和挑战。传统的迫零预编码求解公式F H^H (H H^H)^{-1}无法直接使用因为求出的F大概率是稠密矩阵不符合我们硬件能实现的稀疏结构。因此必须开发新的算法来求解在这个特定稀疏约束下的最优F。2.3 针对PFC结构的迫零预编码高效算法论文的核心贡献之一就是为PFC结构推导出了一套高效的迫零预编码闭式解。目标函数是最小化发射功率||F||_F^2约束条件是消除多用户干扰H F I。算法的巧妙之处在于利用矩阵的稀疏结构进行降维和分块求解。它没有直接去求解庞大的Nt x K维矩阵F而是将F中所有非零元素抽取出来排列成一个长向量\hat{f}。同时将信道矩阵H也按照SCA和FCA的分组进行对应的分块。经过一系列推导具体过程涉及矩阵分块和拉格朗日乘子法这里不展开最终将原问题转化为了K个独立的、规模小得多的子问题对于第k个用户需要求解\hat{f}_k H_k^H (H_k H_k^H)^{-1} i_k其中H_k是由服务于用户k的SCA对应的信道子矩阵和所有FCA对应的信道子矩阵水平拼接而成i_k是单位矩阵的第k列。这个解的意义重大计算复杂度大幅降低原问题需要求解一个Nnz x Nnz矩阵的逆Nnz是非零元素总数可达几百而现在分解为K个(NukNc) x (NukNc)矩阵的逆。通常(NukNc)远小于Nnz且K个子问题可以并行计算。物理意义清晰解的形式H_k^H (H_k H_k^H)^{-1}可以理解为对于用户k预编码器只关心与它相关的信道部分它自己的SCA和所有用户共享的FCA并在这个子空间内做迫零。这非常直观。包含经典情况当Nc Nt即所有天线都是FCA时H_k退化为完整的H上述公式就退化成了标准的全连接迫零预编码器证明了该算法的通用性。实操心得在仿真或实际实现这个算法时要特别注意数值稳定性。H_k H_k^H这个矩阵求逆时如果信道条件数很差例如用户间信道高度相关可能接近奇异。在实际代码中一定要使用稳健的求逆方法例如在MATLAB中使用pinv伪逆而不是inv或者添加一个很小的正则化项(H_k H_k^H delta * I)^{-1}其中delta是一个很小的正数如1e-10。3. 从静态到动态引入开关网络与智能优化3.1 动态PFC架构的动机与实现静态PFC架构通过固定比例的FCA和SCA提供了一个不错的折衷。但我们可以更进一步思考最优的FCA集合应该是固定的吗显然不是。信道是时变的对于不同的信道状态某些天线可能对整体性能贡献更大它们更应该被选为FCA而某些天线在特定时刻可能作用不大作为SCA更经济。动态PFC架构的核心思想就是让FCA的成员身份动态可变。它在射频链路和天线阵列之间插入了一个开关网络。这个开关网络本质上实现了一个置换矩阵A。通过控制开关的状态我们可以动态地将任意Nc根天线指定为FCA并将其余天线指定为SCA并分配给特定用户。这样系统优化问题就变成了一个联合优化问题不仅要找最优的预编码矩阵F还要找最优的开关配置即天线分组方案A使得在满足迫零约束H A F I的前提下发射功率||F||_F^2最小。这显然是一个组合爆炸问题对于大规模天线穷举搜索所有可能的C(Nt, Nc)种FCA选择以及SCA的分配方式是完全不可行的。3.2 基于贪心策略的两步天线选择算法面对这个组合优化难题论文提出了一个高效的两步贪心算法。第一步选择全连接天线FCA目标是选出最重要的Nc根天线作为FCA。论文将其建模为一个列选择问题从信道矩阵H的Nt列中选出Nc列构成子矩阵H_C使得Tr((H_C H_C^H)^{-1})最小。这个指标可以理解为选出的天线子集构成的信道矩阵的“能量”或“信息量”最大从而使得后续预编码所需的功率最小。算法采用贪心剔除策略初始集合包含所有天线索引C {1, 2, ..., Nt}。在每一轮迭代中计算如果剔除当前集合中的第ℓ根天线即剔除H_C的第ℓ列新的Tr((H_C H_C^H - h_ℓ h_ℓ^H)^{-1})是多少。找到使这个迹增量最小的天线ℓ即剔除后对系统性能影响最小的那根天线将其从集合C中移除。重复步骤2-3直到集合C中只剩下Nc根天线。第二步分配单连接天线SCA在确定了FCA集合C后剩下的NU Nt - Nc根天线需要分配给K个用户。目标是使总发射功率最小。论文定义了一个关键度量Δ(k, i)它表示将第i根剩余天线分配给第k个用户后该用户所需发射功率的减少量。算法采用贪心添加策略初始化所有用户的SCA集合为空每个用户的等效信道矩阵H_k初始化为仅包含FCA信道H_C。计算每一根剩余天线分配给每一个用户所带来的功率减少量Δ(k, i)。选择(k*, i*)使得Δ(k, i)最大即将这根天线分配给能带来最大边际收益的用户。更新该用户k*的SCA集合和等效信道矩阵H_k*。重复步骤2-4直到所有剩余天线分配完毕。注意事项这个两步贪心算法是次优的因为它每一步都只做局部最优选择无法保证全局最优。但在大规模场景下它的复杂度O(N_t^3)级别远低于穷举法且仿真表明其性能非常接近最优解。在实际工程中这种复杂度-性能的权衡通常是可接受的。3.3 利用深度神经网络实现实时动态配置贪心算法虽然比穷举快但对于实时性要求高的通信系统如5G帧结构要求在毫秒级完成波束赋形计算其计算量仍然可能成为瓶颈。为此论文提出了一个更巧妙的思路用深度神经网络来学习从信道H到最优天线连接策略Y的映射关系。网络设计与训练输入信道矩阵H。为了更好学习将每个复信道系数h_{i,j}拆解为幅度、实部、虚部三个实数特征构成一个K x Nt x 3的三维张量。输出一个K x Nt的矩阵\hat{Y}其元素\hat{Y}(k, n)可以理解为第n根天线连接到第k条射频链路的“概率”或“得分”。标签生成使用上述贪心算法对大量例如10万组随机生成的信道矩阵H进行离线计算得到最优的天线连接矩阵Y二进制矩阵连接为1否则为0。用这些(H, Y)对来训练DNN。网络结构论文采用了全连接网络包含输入层、两个隐藏层和输出层。隐藏层使用ReLU激活函数输出层使用Sigmoid函数将输出值映射到[0,1]区间模拟概率。后处理 DNN的输出\hat{Y}是连续值需要转化为硬性的开关控制指令即确定哪些是FCA以及SCA如何分配。论文设计了一个简单的后处理算法选择FCA计算\hat{Y}每一列的和即每根天线对所有用户的连接得分总和选出总和最大的Nc列将其对应的天线设为FCA。分配SCA对于剩下的天线找出总分最低的天线即“最不重要”的天线将其分配给对该天线连接得分最高的那个用户。重复此过程直到所有天线分配完毕。优势极低时延一旦DNN训练完成前向传播的计算开销极低适用于实时处理。泛化能力DNN能够学习信道统计特性对于未在训练集中出现但具有相似统计特性的新信道也能给出较好的配置。工程友好DNN模型可以轻松部署在现有的硬件加速器如GPU、NPU上。踩坑记录训练DNN时数据集的构建至关重要。如果只用无噪的理想信道H训练DNN在真实的含噪信道估计下可能表现不佳。论文采用了一个聪明的方法对每个无噪信道样本人工添加不同信噪比的高斯噪声生成多个含噪版本但都使用原始无噪信道计算出的最优Y作为标签。这相当于做了数据增强让DNN学会抗噪声干扰提升了模型的鲁棒性。4. 性能评估与工程启示4.1 频谱效率与能量效率的权衡分析论文通过仿真清晰地展示了PFC架构在频谱效率和能量效率这条“跷跷板”上的行走艺术。频谱效率如图5所示随着FCA数量Nc的增加系统和速率频谱效率的体现单调提升。在Nc较小时硬件复杂度低每增加一点FCA都能带来显著的性能增益当Nc接近Nt时趋近全连接性能提升逐渐饱和。动态PFC带开关网络和智能选择的曲线始终在固定PFC之上这说明动态调整天线分组带来了额外的性能红利尤其是在低复杂度区域Nc较小性能提升尤为明显。能量效率这是一个更全面的指标等于频谱效率除以系统总功耗。总功耗包括发射功率、基带处理功耗、射频链路功耗以及所有移相器和开关的功耗。图6揭示了一个关键洞见最高能量效率点并不在频谱效率最高的地方也不在硬件最简单的地方而是出现在某个中间的Nc值。对于固定PFC需要少量FCA来提升性能以抵消硬件增加的功耗而对于动态PFC由于其智能选择能力在Nc0即纯部分连接时就能达到很高的能量效率因为它能用最少的硬件资源实现相对较好的性能。4.2 与现有架构的对比论文将动态PFC与经典的组连接架构进行了公平对比通过公式(35)确保两者硬件复杂度近似。图7和图8的结果很有说服力频谱效率在相同SNR下动态PFC能达到全连接架构92%以上的频谱效率而GC架构只能达到69%。动态PFC的性能优势非常明显。能量效率动态PFC的能量效率全面优于FC和GC架构。虽然FC的频谱效率略高但其海量的移相器导致功耗巨大拉低了能量效率。GC则在性能和功耗上都没占到便宜。4.3 硬件实现考量与复杂度讨论任何算法最终都要落地到硬件。PFC架构的硬件实现核心是模拟波束赋形网络。论文参考了之前的工作提出用固定移相器加开关网络的方式来近似实现所需的连续相位调整。具体来说每个射频路径上并联多个例如Np11个产生固定相位的移相器然后通过一个开关选择其中一个相位输出。这样只需要有限的几个固定相位就能通过开关组合近似出任意所需的相位值。这种方法相比使用昂贵、高功耗的数字可控移相器大大降低了硬件成本和功耗。复杂度分析计算复杂度固定PFC的迫零预编码算法可分解并行复杂度可控。动态PFC的贪心算法复杂度在O(N_t^3)量级对于大规模天线如256离线计算或慢速更新尚可实时运行有压力。而DNN方案的前向传播复杂度极低是实时实现的优选。硬件复杂度PFC的射频路径总数为NU K*Nc移相器总数约为(NU K*Nc) * Np。动态PFC还需额外增加一个Nt x Nt规模的开关网络实际中可通过多级开关简化。需要根据具体的功耗P_PS,P_sw、成本预算和性能要求来综合确定Nc和Np的最优值。5. 常见问题与部署思考在实际研究和工程化PFC架构时我遇到和思考过以下几个典型问题Q1如何确定最优的FCA数量NcA1这没有一刀切的答案它是一个典型的系统设计权衡。你需要明确系统的首要优化目标追求极致频谱效率在功耗和成本预算允许下尽可能增大Nc向全连接靠拢。追求最佳能量效率需要通过仿真绘制出类似图6的EE-Nc曲线找到峰值点。动态PFC的峰值点通常比固定PFC更靠左即需要更少的FCA。成本敏感型部署优先确定硬件预算能负担多少移相器和开关反推出最大的Nc。Q2动态PFC的开关网络会不会引入额外的损耗和延迟A2会的这是无法避免的代价。射频开关在导通时有插入损耗在切换时有切换时间通常在微秒甚至纳秒级。在系统设计中必须考虑损耗预算开关的插入损耗会降低发射功率需要在链路预算中预留余量。切换时机天线分组策略不能在每个符号周期都变而应该在信道相干时间即信道状态基本不变的时间段内保持稳定。DNN的预测和开关配置应在帧结构中的特定时段如导频信号之后完成。Q3DNN方案在实际中真的可行吗对训练数据有什么要求A3可行但挑战在于训练数据的获取和泛化能力。信道模型DNN需要在与真实环境匹配的信道模型下训练。如果实际部署环境与训练用的Saleh-Valenzuela模型差异很大性能会下降。解决方案是采用在线学习或迁移学习利用实际系统中测量到的少量信道数据对预训练模型进行微调。标签获取训练需要大量(H, Y)配对数据。贪心算法虽然慢但离线运行生成标签是可以接受的。也可以考虑用更复杂的优化算法如遗传算法来生成更优的标签提升DNN性能上限。泛化与鲁棒性DNN应对不同的用户数K、天线数Nt和SNR环境具有鲁棒性。可以在训练时使用多组系统参数或设计参数化的网络结构。Q4PFC架构如何扩展到宽带频率选择性信道A4原论文主要针对窄带平坦衰落信道。在宽带OFDM系统中不同子载波的信道不同。直接扩展有两种思路公共模拟波束赋形为整个带宽设计一个宽带的模拟波束赋形矩阵基于PFC架构然后在每个子载波上独立进行数字预编码。这需要优化模拟部分以覆盖所有子载波的主要方向。子带划分将宽带划分为若干子带每个子带内信道近似平坦。为每个子带独立配置PFC架构和预编码。这会增加开关网络和控制的复杂度但性能更优。动态PFC的DNN在这里可以学习为不同子带分配合适的FCA集合。Q5除了迫零其他预编码准则如MMSE、最大比传输能用于PFC吗A5完全可以。论文聚焦迫零是因为其闭式解和干扰消除的清晰性。对于MMSE等准则问题会转化为在PFC稀疏约束下的非凸优化通常需要使用迭代算法如梯度下降、交替优化来求解。动态PFC的DNN方法依然适用只需将训练标签的生成算法从迫零贪心算法替换为MMSE贪心算法即可。核心思想是通用的用DNN学习从信道到最优硬件配置的复杂映射关系。