原文链接:http://www.sharetechnote.com/html/5G/5G_OTA.html
1 什么是OTA (Over The Air)
OTA代表Over The Air。为了使用任何测试设备对设备进行测试,您需要一种将设备连接到测试设备的方法。OTA是一种将设备连接到测试设备的方法。大致有两种连接方法,如下所示。一个是Conductive,另一个是Radiative(或OTA)。简而言之,OTA是通过一对天线(发射天线和接收天线)的连接方法。
导电
辐射/ OTA
实际上OTA是一个非常复杂的话题。有许多不同的方面可以想到。在我学习和体验更多时,我会尝试尽可能多地涵盖不同的视角。
2 OTA设置的类型
当我们说辐射测试时,它通常指的是各种不同类型的配置,如下所示。这些只是您最常见到的一些典型示例,但这些并非全部。辐射测试设置有很多不同的变化。尽管术语OTA测试和辐射测试可以互换使用,但当我们说没有任何具体细节的OTA测试时,我们通常会想到如下所示的(C)或(D)这样的配置。如下图所示,它是在一个内衬有吸收器的腔室中进行测试(这种腔室称为消声室。消音意味着'无回声'。'无回声'在这种情况下意味着'没有来自盒子中任何物体的反射)。
(A)
(B)
这可能是最简单的方法之一。我们使用宽平面贴片天线并将DUT放在天线焊盘的顶部。非常方便的测试,如协议或功能测试,不需要精确的RF测量。但是,除非您在屏蔽室内不使用此设置,否则它可能会受到周围环境的干扰(例如,来自实时网络或其他设备)
在天线设置方面,这几乎与(A)相同。但在这种情况下,天线焊盘和UE位于小型RF室内。与(A)相比,此类型的好处是它可以阻止干扰信号(例如,来自实时网络或相邻设备的干扰)
(C)
(D)
这是一个由导电金属(通常是铜)制成的腔室。如在(B)中那样,这可以阻止来自周围环境的干扰,同时它可以减少来自盒子侧面的反射的干扰。当来自DUT或设备的电磁波撞击导电壁时,导体可以阻挡大部分波。
这将是OTA测试的理想解决方案,需要一定程度的测量精度。它内衬有特殊的吸收器,通常有定位器,可以通过外部控制器改变DUT的方向。
3 为何选择OTA?
即使在传统技术(例如,UMTS,LTE)中,有时我们也进行OTA测量,尤其是用于TRP或TIS测量。然而,在5G / NR中,我们几乎每次测试都在谈论OTA,即使是协议测试也是如此。为什么OTA在5G / NR中成为如此大的问题?在NR中,大约有两个在3GPP规范中指定的分离频谱。一个是FR1(sub 6 Ghz),另一个是FR2(mmWave)。在FR1中,我们可以继续进行导电测试,就像使用2G / 3G / 4G技术一样。但是,在FR2中,很可能我们被迫与OTA合作。为什么?
我们可以想到几个原因以及一些不同的方面。
复杂性 :在FR2中,几乎可以肯定我们将使用某种类型的阵列天线(称为Massive MIMO)。这意味着您将在设备上安装大量天线。如果你想进行导电测试,连接将如下所示(B),而如果你选择OTA,则可以像(A)中那样进行测试。然后,很明显我们为什么要选择(A)。注意:如果您想问我们为什么需要使用天线阵列,那么Massive MIMO页面的动机将为您提供一些见解。
没有足够的空间 :让我们假设你有足够的理由去OTA,尽管有线连接的复杂性,你仍然会面临另一个严重的问题。即使您的天线阵列中有许多天线元件(例如,16,32,64等),天线模块的整体尺寸在mmWave频率下也不够大,无法容纳所有电缆连接器。
成本 :现在让我们假设你有非常非常认真的理由去做导电(比如B),尽管有复杂性和空间问题。即使在这种情况下,导电测试也存在其他问题。在大多数常规测试中,您可能使用过低成本的SMA连接器和电缆。但是,使用mmWave中的SMA类型的连接器/电缆无法获得准确的测量结果。您需要K连接器或更特殊的连接器和电缆(例如,V连接器)如果频率变得更高。这些类型的特殊连接器和电缆的成本远高于那些SMA类型。如果我们将来需要使用非常高的频率(例如超过60 Ghz),您可能需要花费几乎与连接器和电缆一样多的钱,而不是低成本的设备价格。
测量的物理性质 :即使您克服了上述所有问题,由于测量本身的性质,某些类型的测量需要OTA。例如,如果要检测天线阵列形成的波束方向,则必须依赖OTA测量。你可以说你仍然可以通过导电测试来做到这一点。从理论上讲,您可以将来自每个天线单元路径的所有信号下行到基带,并通过基带处理计算出波束方向(以及波束的其他性质)。当然,理论上这是可能的。但是,如果有像OTA测试这样的相对简单的方法,我100%确定你想避免这样做。
(A)
(B)
4 测试设置中的UE放置(UE和测试设备之间的天线距离)
为了获得可重复,可靠和稳定的测量结果,将AUT(天线测试中)和测量天线放置在适当的位置非常重要。在本节中,我将解释如何确定适当的天线位置和理论背景,说明为什么应该使用特定的位置。
传统远场消声室的最小远场距离R由下面的公式a确定(基于R5-180013)。
< 图1:天线场区域>
不同天线尺寸和频率的近/远场边界如下表所示。该表基于R5-180013(参考文献[1]) - 表2.2.1:传统远场电波暗室的不同频率和天线尺寸的近场/远场边界
< 表1 - D和频率的近/远边界距离>
D(cm)
频率(千兆赫)
远/近边界(cm)
路径损失
5
28
47
48
55
10
28
187
188
66.9
15
28
420
420
73.8
20
28
747
748
78.9
25
28
1167
1168
82.7
30
28
1680
1680
85.9
5
100
167
168
76.9
10
100
667
668
88.9
15
100
1500
1500
96
20
100
2667
2668
101
25
100
4167
4168
104.8
30
100
6000
6000
108
注意 :从这是可选读数。出于好奇,我已经深入研究了这个等式。如果您不感兴趣,可以跳过此部分。我试图调查近/远边界随频率变化的变化。
如下所示,辐射近场的跨度(无功近场和远场开始之间的间隙)随着频率的增加而急剧增加,其中反应近场距离相对缓慢地增加)。此外,比较以下两个图表,您会注意到随着D增加,远场距离变得非常大。
< 图2 - 在D = 5cm处具有频率的场边界变化>
< 图3 - 在D = 10cm处具有频率的场边界变化>
现在你可能有一个有趣的问题。根据上图所示,DUT天线与设备天线之间的距离应随着频率的增加而增加。也就是说,随着频率的增加,电波暗室的大小会增加?对你来说,这不是直觉吗?我们的常识(我们的射频直觉)说频率依赖对象的大小往往随着频率的增加而减小。
我们如何通过直觉和上面的情节来处理这种冲突?
解决方案在于D不是常数。在上图所示的情况下,无论频率如何,D都具有固定值。但是当我们设计天线时,我们通常用波长决定D值(天线孔径大小),如下所示。这里,k只是一个常数,如0.5,1,2等。
如果您绘制波长(lamda)随频率增加而变化的情况,您将得到如下所示的图。你会注意到波长在很大程度上降低了。
< 图4 - 波长与频率>
如果重写远场距离方程,则如下所示。在这个等式中,您会注意到远场距离随着频率的增加而减小。 (注意:如果你想尝试以实际值计算,则将f视为'以Hz为单位的频率',将c视为'以m为单位的光速',k只是一个没有任何单位的常数)。
5 为何在远场进行测试?
可能到现在为止,你可能会有一个问题'为什么我们需要在远场进行测试?'。要直接回答这个问题并不容易。所以让我稍微改变一下这个问题。为什么我们不在近场测试?
这个问题的简单答案是,该区域的测量结果往往是不可预测的,并且随着天线周围环境的微小变化(例如,馈送天线的电路)和位置变化而变化。相反,远场中的场模式更稳定且可预测,并且对周围的小部件不太敏感。
对于那些对进一步细节感兴趣的人,让我们再看看每个地区的特征。您可以自己进一步调查。尝试用谷歌搜索“近场和远场”,“天线周围的场区域”等关键词。
Reactive Near Filed :这是非常接近天线的区域。该区域中E和H场之间的关系是非常不可预测的(这是不可预测的,不是因为这个属性违背物理理论,而是因为物理性质如此复杂)。例如,在某一点你会看到E场占主导地位,而在另一点上,除了前一点H场占优势之外。辐射能量也会像天线控制电路一样来回影响周围的电气元件。例如,辐射能量的某些部分在某个时间点被吸收并存储在周围的部件中,并且所存储的能量在其他时间点被辐射回到空间中并影响辐射图案。
辐射近场(菲涅耳区域) :在该区域中,与天线的距离不太接近如上所述的反电子部件的影响,并且与反应近场相比,E和H场关系更加可预测。然而,E和H场关系仍然相当复杂,并且存在可能影响该区域中的辐射图案的一些物理对象的高可能性。例如,一些金属物体如钢梁支撑天线模块可以作为一种天线或反射器。因此,这种物体会影响AUT(天线测试)的辐射模式。
FAR 场( Fraunhofer 区域) :在该区域中,角场分布基本上与距天线的距离无关,并且辐射图可以用球面波阵面近似。由于该区域中的任何接收点都离天线很远,因此发射机的尺寸和形状不再重要,它可以近似为点源。电场和磁场同相,彼此垂直并且也垂直于传播方向。在这个区域,您可以放心地假设通过接收天线的波前是规划器(即,所有入射光线彼此平行)。 简单来说,这是一个可以轻松可靠地完成大部分测量的理念区域。
6 为什么天线尺寸如此重要?
如上所述,为了获得稳定的测量结果,重要的是使DUT天线和设备天线之间的距离大于远场边界。如[图1]所示,远场边界从以下距离开始。
从这个表达式中可以看出,距离与D平方成正比(D代表天线尺寸)。也就是说,即使D中的微小变化,距离也会发生巨大变化。为了让您更直观地理解,我将此等式绘制在左图所示的图形中。边界处的路径损耗也随着D的增加而增加,如右图所示。
< 图5 - D>的远场距离和路径损耗
如果您想获得准确的定量数据,我会将表格如下所示。从该表中绘制了上面显示的两个图。
< 表2 -D对远场距离和路径损耗的影响>
D(cm)
频率(千兆赫)
路径损失
1
28
2
27.42
2
28
7
38.30
3
28
17
46.01
4
28
30
50.94
5
28
47
54.84
6
28
67
57.92
7
28
91
60.58
8
28
119
62.91
9
28
151
64.98
10
28
187
66.83
11
28
226
68.48
12
28
269
69.99
13
28
315
71.36
14
28
366
72.67
15
28
420
73.86
16
28
478
74.99
17
28
539
76.03
18
28
605
77.03
19
28
674
77.97
20
28
747
78.86
21
28
823
79.70
22
28
903
80.51
23
28
987
81.28
24
28
1075
82.02
25
28
1167
82.74
26
28
1262
83.42
27
28
1361
84.07
28
28
1463
84.70
29
28
1570
85.31
30
28
1680
85.90
这意味着您需要知道确切的天线尺寸才能获得准确的测量结果。但是,正确定义天线尺寸并不总是容易的。天线尺寸D定义为整个天线模块的最大距离。[图6]中的红色箭头表示D.如您所见,在(A),(B),(C)和(E)的情况下定义D将是直截了当的。但是,在(D)的情况下,定义尺寸并不容易。在(D)中,物理尺寸与(A)相同,但是您会看到天线模块周围的一些导电材料会影响天线模块的辐射方向图。这可能影响天线的有效尺寸,并且很难准确地估计有效尺寸。此外,如(F),(G)和(H)所示,UE制造商将在UE内部的若干不同位置分配天线模块。当然,UE内的天线模块的形状和位置将比这里示出的更加多样和复杂。
< 图6 - 各种配置的天线尺寸>
定义D变得困难还有另一个原因。UE案件会变得更加困难。为了正确定义D,您需要获得UE中天线结构和位置的所有详细信息。但在许多情况下,这些信息被大多数UE制造商视为高度机密的信息。因此,当您获得UE(尤其是商业化的UE)时,几乎不可能获得D(维度)的精确估计。
现在我们面临着一个非常棘手的局面。当我们没有获得有关天线尺寸的详细信息时,我们如何保证准确的测量?
这就是我将在下一节讨论的内容。
7 处理已知D情况和未知D情况(Whitebox与Blackbox方法)
在讨论具体案例之前,让我们先想想几个基本词的含义 - Whitebox 和Blackbox。白盒指的是我们可以直接看到盒子的盒子,清楚地知道盒子里面是什么。这意味着ux知道关于盒子的所有信息。黑盒子是指我们无法直接看到盒子内部的盒子。我们能够找出盒子内容的唯一方法是通过间接观察,如摇动盒子,听声音或举起并估计重量等。当然,这不是OTA中Whitebox和Blackbox的正式定义。 ,但基本思想适用于R4-1708553(参考文献[4])中描述的形式定义。
对于“ 黑匣子 ”方法,不需要知道确切的天线位置/辐射中心参考点(CORRP)。
UE定位有与现有SISO OTA测试用例类似的公共参考点
测试用例的执行具有相对较低的复杂度(不需要重新定位到CORRP)
需要为MU预算的DUT阶段添加“从QZ(安静区域)中心偏移DUT相位中心”的MU元素,这取决于QZ的大小和范围长度
对于“ 白盒子 ”方法,可能需要知道确切的天线位置/辐射中心参考点(CORRP),可能是通过制造商声明。
有源天线阵列的CORRP需要与静区的中心对齐,这可能会导致测试用例的复杂执行
不需要为DUT级添加用于“从QZ中心偏移DUT相位中心(安静区域)”的MU元素,但需要添加用于UE重新定位的MU元素
现在你可能会问'为什么我们在这里谈论whitebox / blackbox概念?' 并且'他们如何处理D(天线尺寸)?'。让我们想一想我们有关于D的详细信息以及我们没有关于D的确切信息的情况。
我们假设我们拥有关于D的所有详细信息。这意味着被测天线模块是一种白盒。在这种情况下,我们可以计算近/远边界的确切位置。然后我们可以得到相对准确的测量,DUT和测量天线(探头)之间的距离最小,并且仍然符合[图6](A)中的远场标准。这意味着我们可以满足远场条件,最小的消声室尺寸。反过来,这意味着我们可以在消声室上以最小的成本获得准确的测量结果。
现在让我们考虑一下我们没有关于D的准确信息的情况。我们如何估计近/远边界的确切位置(即远场的起点)?答案是'没有办法去做'。那么我们如何才能保证天线在远场呢?最简单的方法是将接收天线放置在离DUT很远的位置,这样你可以假设它在远场,而不管天线的大小如图6(B)所示。当然应该是你假设的天线尺寸的一定限制。当你的手机尺寸为10厘米时,你不会认为天线尺寸是20厘米。
<图6:白盒和黑盒条件中可能的天线位置>
总结,
如果我们能够获得关于天线尺寸和DUT上精确天线位置的详细信息(例如,移动电话),那么使用Whitebox方法会更好,因为我们可以用更小的腔室以相对低的成本进行测量。在开发阶段,这可能是一个很好的选择,在这些阶段,这些信息往往是开放的。
如果有关天线尺寸和手机位置的详细信息,Blackbox方法将是更好的选择。由于大多数移动电话制造商非常不愿意在其商业化设备上打开天线的详细信息,因此黑盒方法可能是商业化设备的唯一选择。然而,如上所述,我们需要非常大的腔室来应用黑盒方法,这会导致成本和空间问题。为了缓解这个问题,提出了另一种概念,下一节将对此替代方案进行解释。
注意:关于采用Whitebox方法或Blackbox方法,Ref [3]规定如下:
对于一致性测试, 3GPP 已经决定只能使用黑盒方法。这是由于不希望声明天线结构的 UE 供应商不接受白盒测试的要求。
8 模拟一个不太大的黑匣子 - CATR
如上所述,由于UE制造商不喜欢公开详细的天线信息,因此只有黑盒方法可能被接受作为商业化设备的测试方法,但是黑盒方法往往需要巨大的腔室(即,发射器之间的距离很大)和接收天线)。为了减少腔室尺寸的问题,发出了另一种称为CATR(紧凑区域测试范围)的概念。总体概念在TR 37.842中描述,如下所示。
如上图所示,您将看到来自发射器天线的信号从专门设计的反射器反射(反射),然后到达接收器天线。这将产生将长的线性距离折叠到小空间中的效果,这导致减小腔室的尺寸。此外,通过以特定形式设计反射器,可以使来自DUT的所有平行光线到达馈电天线(测量天线)。并且,您也可以使来自馈电天线的光线作为平行光线到达DUT。实际上,基本原理类似于你在高中物理中学到的抛物面镜雷图。尝试googleing'抛物面镜子光线图'或'抛物面镜子光线追踪'等。
9 SS-MPAC(简化扇形多探头电波暗室)
SS MPAC的概念是使用围绕UE的多个探测器,如下所示,以模拟更真实的无线电信道条件。
SS MPAC的主要动机在R4-1706669中有详细描述如下:
1.实时系统性能评估,即通信时
2.能够模拟真实的无线电信道,意味着波的真实角度分布,无论是照射欧盟还是由它辐射
3.上行链路和下行链路性能,或多节点配置中的接收和响应
10 安静区域
根据参考文献[9],静音区是任何腔室中的体积,其中DUT以几乎均匀的幅度和相位被照射。典型的静区规格是10度的相位变化,±0.5 dB的幅度纹波和1 dB的幅度锥度,这是向静音区边缘的滚降
Reference
[1] 3GPP TSG-RAN WG5 Adhoc Meeting#1 - R5-180013 : Signalling NR Testcases - OTA chamber requirements
[2] Near and far field (Wikipedia)
[3] Keysight Technologies - OTA Test for Millimeter-Wave 5G NR Devices and Systems (White Paper)
[4] 3GPP TSG-RAN WG4 Meeting #84 - R4-1708553 : Far field definition and proposal for alternate RF baseline with deterministic antenna array positioning
[5] 3GPP TSG RAN WG4 Meeting NR#2 - R4-1706617 : Center of Radiation Reference Point – Reference Definition for OTA Measurements of Phased Array Beamforming Patterns
[6] 3GPP TR 37.842 V13.2.0 (2017-03) - Radio Frequency (RF) requirement background for Active Antenna System (AAS) Base Station (BS)(Release 13)
[7] 3GPP TSG-RAN WG4 Meeting NR AH#2 - R4-1706669 : SS MPAC for RRM/Demod
[8] TR 37.977 - Verification of radiated multi-antenna reception performance of User Equipment (UE)
[9] OTA Test for Millimeter-Wave 5G NR Devices and Systems (Keysight Whitepaper)
转载于:https://www.cnblogs.com/myourdream/p/10420592.html
你可能感兴趣的:(5G/NR OTA (Over The Air) 测试详解)
现在发挥你的优势
爱生活的佑嘉
来和我做咨询的一些朋友,涉及到定位的,都会说,我不知道我的优势是什么,你能不能帮我看看?还有一些朋友,喜欢做各种测试来了解自己,测试过后,然并卵。今天,我想来聊聊优势,如何能了解自己的优势是什么。首先,我们要知道,如果要成为“不一般”的人,我们所做的事情,就要基于自身的优势。我做管理者十多年,看到每个员工都有不同的特长,有的擅长数字,有的擅长人际,有的擅长写作。这些知道自己优势并且在这方面刻意练习
深入解析JVM工作原理:从字节码到机器指令的全过程
一、JVM概述Java虚拟机(JVM)是Java平台的核心组件,它实现了Java"一次编写,到处运行"的理念。JVM是一个抽象的计算机器,它有自己的指令集和运行时内存管理机制。JVM的主要职责:加载:读取.class文件并验证其正确性存储:管理内存分配和垃圾回收执行:解释或编译字节码为机器指令安全:提供沙箱环境限制恶意代码二、JVM架构详解JVM由三个主要子系统组成:1.类加载子系统类加载过程分为
【C++算法】76.优先级队列_前 K 个高频单词
流星白龙
优选算法C++ c++ 算法 开发语言
文章目录题目链接:题目描述:解法C++算法代码:题目链接:692.前K个高频单词题目描述:解法利用堆来解决TopK问题预处理一下原始的字符串数组,用一个哈希表统计一下每一个单词出现的频次。创建一个大小为k的堆频次:小根堆字典序(频次相同的时候):大根堆循环让元素依次进堆判断提取结果C++算法代码:classSolution{//定义类型别名,PSI表示对typedefpairPSI;//自定义比较
JVM 内存模型深度解析:原子性、可见性与有序性的实现
练习时长两年半的程序员小胡
JVM 深度剖析:从面试考点到生产实践 jvm java 内存模型
在了解了JVM的基础架构和类加载机制后,我们需要进一步探索Java程序在多线程环境下的内存交互规则。JVM内存模型(JavaMemoryModel,JMM)定义了线程和主内存之间的抽象关系,它通过规范共享变量的访问方式,解决了多线程并发时的数据一致性问题。本文将从内存模型的核心目标出发,详解原子性、可见性、有序性的实现机制,以及volatile、synchronized等关键字在其中的作用。一、J
Flowable 高级扩展:自定义元素与性能优化实战
练习时长两年半的程序员小胡
Flowable 流程引擎实战指南 流程图 flowable BPMN 流程引擎 java
在前五篇文章中,我们从基础概念、流程设计、API实战、SpringBoot集成,到外部系统协同,逐步构建了Flowable的应用体系。但企业级复杂场景中,原生功能往往难以满足定制化需求——比如需要特殊的审批规则网关、与决策引擎联动实现动态路由,或是在高并发场景下优化流程引擎性能。本文将聚焦Flowable的高级扩展能力,详解如何自定义流程元素、集成规则引擎,并掌握大型系统中的性能调优策略。一、自定
最新阿里四面面试真题46道:面试技巧+核心问题+面试心得
风平浪静如码
前言做技术的有一种资历,叫做通过了阿里的面试。这些阿里Java相关问题,都是之前通过不断优秀人才的铺垫总结的,先自己弄懂了再去阿里面试,不然就是去丢脸,被虐。希望对大家帮助,祝面试成功,有个更好的职业规划。一,阿里常见技术面1、微信红包怎么实现。2、海量数据分析。3、测试职位问的线程安全和非线程安全。4、HTTP2.0、thrift。5、面试电话沟通可能先让自我介绍。6、分布式事务一致性。7、ni
5G基站信号加速器!AD8021ARZ-REEL7亚德诺 超低噪声高速电压放大器 专利失真消除技术!
深圳市尚想信息技术有限公司
5G通信 高速运放 ADI黑科技 8K视频 医疗超声
AD8021ARZ-REEL7ADI:重新定义高速放大器的性能极限!一、产品简介AD8021ARZ-REEL7是ADI(亚德诺半导体)推出的超低噪声高速电压反馈放大器,采用XFCB工艺和专利失真消除技术,专为4K/8K视频处理、医疗成像、5G通信等超高频应用设计。以1.8GHz带宽和0.1nV/√Hz超低噪声,成为高速信号调理的终极解决方案!二、五大颠覆性优势军工级信号保真度1.8GHz-3dB带
5G-RAN与语义通信RAN
一去不复返的通信er
智简网络&语义通信 5G 人工智能 语义通信
1️⃣RAN协议栈与TCP/IP五层协议栈的对应关系a.物理层(TCP/IP)↔PHY(RAN)对应关系:5GNRRAN的物理层直接对应TCP/IP的物理层。功能对比:TCP/IP物理层:负责比特流的物理传输,如通过电缆、光纤或无线介质传输信号。RAN物理层:处理无线信号的调制、编码、信道估计和传输(如OFDM、LDPC编码)。在5GNR中,物理层负责将数据映射到无线信道(如PDSCH、PUSCH
Matrix-Breakout 2 Morpheus靶场解题过程
信息收集目标探测靶机目标很明显就是61.139.2.141了扫描开放端口发现22、80、81访问端口主机访问80翻译一下,并没有发现什么审查源代码发现里面有一张图片,下载下来看看是否有图片的隐写wgethttp://61.139.2.141/trinity.jpegstegoveritas-itrinity.jpeg-o/home/kali/Desktop/11分解后发现什么都没有,里面的keep
北斗短报文兜底、5G-A增强:AORO P1100三防平板构建应急通信网络
公网中断的灾区现场,泥石流阻断了最后一条光缆。一支救援队却在废墟间有序穿行,队长手中的三防平板正闪烁着北斗卫星信号,定位坐标与伤亡信息化作一行行短报文,穿透通信孤岛直达指挥中心。这是AOROP1100三防平板搭载的北斗短报文功能在应急救援中的真实场景,更代表了工业移动终端在极端环境下的能力跃迁。AOROP1100三防平板作为遨游通讯2025年推出的旗舰三防设备,AOROP1100三防平板的技术基底
猎板 PCB 控深槽工艺:5G 基站散热模块的关键支撑
猎板PCB黄浩
5G 运维 数据库
PCB控深槽工艺在5G基站散热模块中的关键作用:猎板PCB的技术突破在5G基站的密集高频信号与高功率运行环境下,散热性能直接决定了设备的稳定性和寿命。猎板PCB通过创新性的控深槽工艺(控深锣/控深铣),结合材料科学与结构优化,为5G基站散热模块提供了高精度、高可靠性的解决方案,有效攻克了高热负荷下的技术瓶颈。一、5G基站散热的核心挑战热负荷激增:5G基站的射频功放(PA)、电源管理模块等器件功耗显
漫步,跳出藩篱
张巧金沙
最近的教学,倍感不爽。一为这国庆之假,把这课上得支离破碎的。放假前,上了四天课,但我却只上了三天,9月30日,我工作室在搞活动,全天的活动,课当然未能上。10月8日学生回校,上了两天课,学生又放回家了。就觉得学生刚有点状态,又回去逍遥去了。感觉吧,教学内容也不敢大胆甩开膀子去教学,所以呀,这教学内容还真上不走,而且学生学下来效果特差。这不,国庆放假前的一个周,测试了两次,均为第一单元,是自考试以来
Android 应用权限管理详解
文章目录1.权限类型2.权限请求机制3.权限组和分级4.权限管理的演进5.权限监控和SELinux强制访问控制6.应用权限审核和GooglePlayProtect7.开发者最佳实践8.用户权限管理9.Android应用沙箱模型10.ScopedStorage(分区存储)11.背景位置权限(BackgroundLocationAccess)12.权限回收和自动清理13.权限请求的用户体验设计14.G
AI模型训练中过拟合和欠拟合的区别是什么?
workflower
人工智能 算法 人工智能 数据分析
在AI模型训练中,过拟合和欠拟合是两种常见的模型性能问题,核心区别在于模型对数据的学习程度和泛化能力:欠拟合(Underfitting)-定义:模型未能充分学习到数据中的规律,对训练数据的拟合程度较差,在训练集和测试集上的表现都不好(如准确率低、损失值高)。-原因:-模型结构过于简单(如用线性模型解决非线性问题);-训练数据量不足或特征信息不充分;-训练时间太短,模型尚未学到有效模式。-表现:训练
uniapp微信小程序 - 详解微信小程序平台用户授权登录全流程,uniapp v3版本中小程序端开发下用户点击登录后获取手机号/昵称/性别/头像等信息完成登录(提供完整示例代码,一键复制开箱即用)
十一猫咪爱养鱼
前端组件与功能(开箱即用) uniapp常见问题解决 uniapp vue3 uniapp3小程序授权登录 微信小程序登录获取用户信息教程 获取用户昵称手机号头像信息登录 vue3版本小程序平台授权登录 uniap小程序端用户登录流程 uni完整的小程序平台登录源码
效果图在uniapp微信小程序端开发中,超详细实现用户授权登录完整功能源码,用户授权后获取手机号/昵称/头像/性别等,提供完整思路流程及逻辑讲解。uniappVue3和Vue2都能用,你也可以直接复制粘贴,然后改下参数放到你的项目中去就行。整体思路做功能之前,先来看一下整体流程是
Selenium 特殊控件操作与 ActionChains 实践详解
小馋喵知识杂货铺
selenium 测试工具
1.下拉框单选操作(a)使用SeleniumSelect类(标准HTML标签)Selenium提供了内置的Select类用于操作标准下拉框,这种方式简单且直观。fromselenium.webdriver.support.uiimportSelect#定位下拉框dropdown=Select(driver.find_element("id","dropdown_id"))#通过以下三种方式选择单个
DPDK 技术详解:榨干网络性能的“瑞士军刀”
你是否曾感觉,即使拥有顶级的服务器和万兆网卡,你的网络应用也总是“喂不饱”硬件,性能总差那么一口气?传统的网络处理方式,就像在高速公路上设置了太多的收费站和检查点,限制了数据包的“奔跑”速度。今天,我们要深入探讨一个能够打破这些瓶颈,让你的网络应用快到飞起的“黑科技”——DPDK(DataPlaneDevelopmentKit,数据平面开发套件)。这不仅仅是一个工具包,更是一种全新的网络处理哲学。
Pktgen-DPDK:开源网络测试工具的深度解析与应用
艾古力斯
本文还有配套的精品资源,点击获取简介:Pktgen-DPDK是基于DPDK的高性能流量生成工具,适用于网络性能测试、硬件验证及协议栈开发。它支持多种网络协议,能够模拟高吞吐量的数据包发送。本项目通过利用DPDK的高速数据包处理能力,允许用户自定义数据包内容,并实现高效的数据包管理与传输。文章将指导如何安装DPDK、编译Pktgen、配置工具以及使用方法,最终帮助开发者和网络管理员深入理解并优化网络
语文教学反思 ——一单元测试
一抹_绿茶香
我喜欢上语文课,现在最开心的时刻也就是课上那45分钟了。它可以让我和孩子们骑上骏马驰骋在知识的草原上,可以让我们乘着巨轮在书籍的海洋里任意航行……周三举行了一单元测试,今晚一单元的所有内容暂时告一段落。对于这单元我有如下思考:本单元的主题词是“读书”,几篇课文都是围绕着读书来编排的。里面有讲读书乐趣的,讲读书方法的,还有孩子们第一次接触的访谈录等。微笑班级从一年级下学期就开始阅读“闲书”,所以教学
selenium特殊场景处理
Monica_ll
Selenium selenium chrome python
文章目录前言一、多窗口处理二、浏览器弹窗处理包含alert、confirm、prompt三、鼠标和键盘事件处理前言在使用selenium操作浏览器的过程中可能需要借助键盘和鼠标功能完成一些操作,或者操作弹窗处理,本文主要是整理自己工作过程中使用过的一些方法一、多窗口处理在实际测试过程中经常会有通过点击或者连接打开新的窗口,这种情况下就需要切换webDriver到对应浏览器对象才能操作新窗口的元素。
Anaconda 和 Miniconda:功能详解与选择建议
古月฿
python入门 python conda
Anaconda和Miniconda详细介绍一、Anaconda的详细介绍1.什么是Anaconda?Anaconda是一个开源的包管理和环境管理工具,在数据科学、机器学习以及科学计算领域发挥着关键作用。它以Python和R语言为基础,为用户精心准备了大量预装库和工具,极大地缩短了搭建数据科学环境的时间。对于那些想要快速开展数据分析、模型训练等工作的人员来说,Anaconda就像是一个一站式的“数
Android 基础知识:Android 应用权限详解
流水mpc
android
这篇文章为大家系统的梳理一下Android权限相关的知识,在日常开发中,我们都用过权限,但是对于权限的一些细节我们可能掌握的还不够全面,这篇文章会全面的为大家介绍权限相关的知识。当然,本篇文章依然是参考了Google的官方文档:应用权限。本文目录一、认识Android权限(一)Android系统为什么需要权限?Android系统设置权限的目的是保护Android用户的隐私。对于用户的敏感数据And
面试必考题:Android Binder 机制详解
大模型大数据攻城狮
android binder 面试 react native kotlin dalvik retrofit
目录第一章:Binder的基本概念什么是Binder?多角度解读Binder第二章:Binder的工作机制Binder的整体流程服务注册:从零到有的第一步服务查询:找到目标的“地图”服务调用:请求与响应的旅程Binder驱动的幕后功劳为什么Binder这么快?第三章:Binder在系统架构中的角色Activity:界面背后的通信枢纽Binder的角色实例分析Service:后台任务的跨进程支柱Bi
机器学习必备数学与编程指南:从入门到精通
a小胡哦
机器学习基础 机器学习 人工智能
一、机器学习核心数学基础1.线性代数(神经网络的基础)必须掌握:矩阵运算(乘法、转置、逆)向量空间与线性变换特征值分解与奇异值分解(SVD)为什么重要:神经网络本质就是矩阵运算学习技巧:用NumPy实际操作矩阵运算2.概率与统计(模型评估的关键)核心概念:条件概率与贝叶斯定理概率分布(正态、泊松、伯努利)假设检验与p值应用场景:朴素贝叶斯、A/B测试3.微积分(优化算法的基础)重点掌握:导数与偏导
程序员必备:10 个提升代码质量的工具
大力出奇迹985
宠物
在软件开发过程中,代码质量对项目的成功起着决定性作用。高质量的代码不仅易于维护和扩展,还能有效降低成本并提升可靠性。本文精心挑选了10个程序员必备工具,助力提升代码质量。这些工具涵盖代码格式化、静态分析、代码审查、测试、性能优化、安全扫描、版本控制、依赖管理、代码生成以及文档生成等多个关键领域。通过使用它们,开发者能够高效地发现并解决代码中的潜在问题,遵循最佳实践,提升代码的可读性、可维护性与安全
java实习生40多天有感
别拿爱情当饭吃
从5月15日开始,我开始第一步步入社会,我今年大三,在一家上市互联网公司做一名实习生,主要做java后端开发。开始的时候,觉得公司的环境挺不错的,不过因为公司在CBD,所以隔壁的午饭和晚饭都要20+RMB,而且还吃不饱,这让我感觉挺郁闷的。一到下午,我就会犯困(因为饿)。因此,我又不得不买一些干粮在公司屯着。关于技术,有一个比较大的项目在需求调研当中,我们做实习生,就是辅助项目经理,测试功能,并且
Flutter权限插件详解:permission_handler使用指南
AI移动开发前沿
AI移动端开发宝典 flutter ai
Flutter权限插件详解:permission_handler使用指南关键词:Flutter、权限插件、permission_handler、权限管理、移动开发摘要:本文围绕Flutter开发中常用的权限插件permission_handler展开详细介绍。首先阐述了在Flutter应用开发中处理权限的背景和重要性,接着深入解析permission_handler的核心概念、架构以及工作原理,通
《天才在左,疯子在右——心理疾病漫谈》|你焦虑了嘛?
霞姝儿
《天才在左,疯子在右——心理疾病漫谈》这本书的作者是宁安宁,2015年12月在哈尔冰出版社出版。ISBN:9787548423676.我花了5个小时40分钟看完的。这本书中很多关于行为和心理活动情况的分析与案例解析都很透彻。书中针对每个心理障碍都会有是非题供你来测试,有解析心理障碍出现的原因,有问题的症状表现形式的阐述,有类似问题的案例解析,还有解决方案的描写。看完之后,你可以对自己心理上及行为上
C++中std::variant的使用详解和实战代码示例
点云SLAM
C++ c++ 开发语言 variant C++泛型编程 联合体 C++ 类型擦除机制 C++17
std::variant是C++17引入的一个类型安全的联合体(type-safeunion),它可以在多个类型之间存储一个值,并在编译时进行类型检查。它是现代C++类型擦除与泛型编程的核心工具之一,适用于构建可变类型结构、消息传递系统、状态机等。一、基本概念#includestd::variantv;类似于联合体union,但类型安全。std::variant只能存储其中一个类型的值。默认构造时
【MySQL】MySQL数据库如何改名
武昌库里写JAVA
面试题汇总与解析 spring boot vue.js sql java 学习
MySQL建库授权语句https://www.jianshu.com/p/2237a9649ceeMySQL数据库改名的三种方法https://www.cnblogs.com/gomysql/p/3584881.htmlMySQL安全修改数据库名几种方法https://blog.csdn.net/haiross/article/details/51282417MySQL重命名数据库https://
用MiddleGenIDE工具生成hibernate的POJO(根据数据表生成POJO类)
AdyZhang
POJO eclipse Hibernate MiddleGenIDE
推荐:MiddlegenIDE插件, 是一个Eclipse 插件. 用它可以直接连接到数据库, 根据表按照一定的HIBERNATE规则作出BEAN和对应的XML ,用完后你可以手动删除它加载的JAR包和XML文件! 今天开始试着使用
.9.png
Cb123456
android
“点九”是andriod平台的应用软件开发里的一种特殊的图片形式,文件扩展名为:.9.png
智能手机中有自动横屏的功能,同一幅界面会在随着手机(或平板电脑)中的方向传感器的参数不同而改变显示的方向,在界面改变方向后,界面上的图形会因为长宽的变化而产生拉伸,造成图形的失真变形。
我们都知道android平台有多种不同的分辨率,很多控件的切图文件在被放大拉伸后,边
算法的效率
天子之骄
算法效率 复杂度 最坏情况运行时间 大O阶 平均情况运行时间
算法的效率
效率是速度和空间消耗的度量。集中考虑程序的速度,也称运行时间或执行时间,用复杂度的阶(O)这一标准来衡量。空间的消耗或需求也可以用大O表示,而且它总是小于或等于时间需求。
以下是我的学习笔记:
1.求值与霍纳法则,即为秦九韶公式。
2.测定运行时间的最可靠方法是计数对运行时间有贡献的基本操作的执行次数。运行时间与这个计数成正比。
java数据结构
何必如此
java 数据结构
Java 数据结构
Java工具包提供了强大的数据结构。在Java中的数据结构主要包括以下几种接口和类:
枚举(Enumeration)
位集合(BitSet)
向量(Vector)
栈(Stack)
字典(Dictionary)
哈希表(Hashtable)
属性(Properties)
以上这些类是传统遗留的,在Java2中引入了一种新的框架-集合框架(Collect
MybatisHelloWorld
3213213333332132
//测试入口TestMyBatis
package com.base.helloworld.test;
import java.io.IOException;
import org.apache.ibatis.io.Resources;
import org.apache.ibatis.session.SqlSession;
import org.apache.ibat
Java|urlrewrite|URL重写|多个参数
7454103
java xml Web 工作
个人工作经验! 如有不当之处,敬请指点
1.0 web -info 目录下建立 urlrewrite.xml 文件 类似如下:
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE u
达梦数据库+ibatis
darkranger
sql mysql ibatis SQL Server
--插入数据方面
如果您需要数据库自增...
那么在插入的时候不需要指定自增列.
如果想自己指定ID列的值, 那么要设置
set identity_insert 数据库名.模式名.表名;
----然后插入数据;
example:
create table zhabei.test(
id bigint identity(1,1) primary key,
nam
XML 解析 四种方式
aijuans
android
XML现在已经成为一种通用的数据交换格式,平台的无关性使得很多场合都需要用到XML。本文将详细介绍用Java解析XML的四种方法。
XML现在已经成为一种通用的数据交换格式,它的平台无关性,语言无关性,系统无关性,给数据集成与交互带来了极大的方便。对于XML本身的语法知识与技术细节,需要阅读相关的技术文献,这里面包括的内容有DOM(Document Object
spring中配置文件占位符的使用
avords
1.类
<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE beans PUBLIC "-//SPRING//DTD BEAN//EN" "http://www.springframework.o
前端工程化-公共模块的依赖和常用的工作流
bee1314
webpack
题记: 一个人的项目,还有工程化的问题嘛? 我们在推进模块化和组件化的过程中,肯定会不断的沉淀出我们项目的模块和组件。对于这些沉淀出的模块和组件怎么管理?另外怎么依赖也是个问题? 你真的想这样嘛? var BreadCrumb = require(‘../../../../uikit/breadcrumb’); //真心ugly。
上司说「看你每天准时下班就知道你工作量不饱和」,该如何回应?
bijian1013
项目管理 沟通 IT职业规划
问题:上司说「看你每天准时下班就知道你工作量不饱和」,如何回应
正常下班时间6点,只要是6点半前下班的,上司都认为没有加班。
Eno-Bea回答,注重感受,不一定是别人的
虽然我不知道你具体从事什么工作与职业,但是我大概猜测,你是从事一项不太容易出现阶段性成果的工作
TortoiseSVN,过滤文件
征客丶
SVN
环境:
TortoiseSVN 1.8
配置:
在文件夹空白处右键
选择 TortoiseSVN -> Settings
在 Global ignote pattern 中添加要过滤的文件:
多类型用英文空格分开
*name : 过滤所有名称为 name 的文件或文件夹
*.name : 过滤所有后缀为 name 的文件或文件夹
--------
【Flume二】HDFS sink细说
bit1129
Flume
1. Flume配置
a1.sources=r1
a1.channels=c1
a1.sinks=k1
###Flume负责启动44444端口
a1.sources.r1.type=avro
a1.sources.r1.bind=0.0.0.0
a1.sources.r1.port=44444
a1.sources.r1.chan
The Eight Myths of Erlang Performance
bookjovi
erlang
erlang有一篇guide很有意思: http://www.erlang.org/doc/efficiency_guide
里面有个The Eight Myths of Erlang Performance: http://www.erlang.org/doc/efficiency_guide/myths.html
Myth: Funs are sl
java多线程网络传输文件(非同步)-2008-08-17
ljy325
java 多线程 socket
利用 Socket 套接字进行面向连接通信的编程。客户端读取本地文件并发送;服务器接收文件并保存到本地文件系统中。
使用说明:请将TransferClient, TransferServer, TempFile三个类编译,他们的类包是FileServer.
客户端:
修改TransferClient: serPort, serIP, filePath, blockNum,的值来符合您机器的系
读《研磨设计模式》-代码笔记-模板方法模式
bylijinnan
java 设计模式
声明: 本文只为方便我个人查阅和理解,详细的分析以及源代码请移步 原作者的博客http://chjavach.iteye.com/
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
配置心得
chenyu19891124
配置
时间就这样不知不觉的走过了一个春夏秋冬,转眼间来公司已经一年了,感觉时间过的很快,时间老人总是这样不停走,从来没停歇过。
作为一名新手的配置管理员,刚开始真的是对配置管理是一点不懂,就只听说咱们公司配置主要是负责升级,而具体该怎么做却一点都不了解。经过老员工的一点点讲解,慢慢的对配置有了初步了解,对自己所在的岗位也慢慢的了解。
做了一年的配置管理给自总结下:
1.改变
从一个以前对配置毫无
对“带条件选择的并行汇聚路由问题”的再思考
comsci
算法 工作 软件测试 嵌入式 领域模型
2008年上半年,我在设计并开发基于”JWFD流程系统“的商业化改进型引擎的时候,由于采用了新的嵌入式公式模块而导致出现“带条件选择的并行汇聚路由问题”(请参考2009-02-27博文),当时对这个问题的解决办法是采用基于拓扑结构的处理思想,对汇聚点的实际前驱分支节点通过算法预测出来,然后进行处理,简单的说就是找到造成这个汇聚模型的分支起点,对这个起始分支节点实际走的路径数进行计算,然后把这个实际
Oracle 10g 的clusterware 32位 下载地址
daizj
oracle
Oracle 10g 的clusterware 32位 下载地址
http://pan.baidu.com/share/link?shareid=531580&uk=421021908
http://pan.baidu.com/share/link?shareid=137223&uk=321552738
http://pan.baidu.com/share/l
非常好的介绍:Linux定时执行工具cron
dongwei_6688
linux
Linux经过十多年的发展,很多用户都很了解Linux了,这里介绍一下Linux下cron的理解,和大家讨论讨论。cron是一个Linux 定时执行工具,可以在无需人工干预的情况下运行作业,本文档不讲cron实现原理,主要讲一下Linux定时执行工具cron的具体使用及简单介绍。
新增调度任务推荐使用crontab -e命令添加自定义的任务(编辑的是/var/spool/cron下对应用户的cr
Yii assets目录生成及修改
dcj3sjt126com
yii
assets的作用是方便模块化,插件化的,一般来说出于安全原因不允许通过url访问protected下面的文件,但是我们又希望将module单独出来,所以需要使用发布,即将一个目录下的文件复制一份到assets下面方便通过url访问。
assets设置对应的方法位置 \framework\web\CAssetManager.php
assets配置方法 在m
mac工作软件推荐
dcj3sjt126com
mac
mac上的Terminal + bash + screen组合现在已经非常好用了,但是还是经不起iterm+zsh+tmux的冲击。在同事的强烈推荐下,趁着升级mac系统的机会,顺便也切换到iterm+zsh+tmux的环境下了。
我为什么要要iterm2
切换过来也是脑袋一热的冲动,我也调查过一些资料,看了下iterm的一些优点:
* 兼容性好,远程服务器 vi 什么的低版本能很好兼
Memcached(三)、封装Memcached和Ehcache
frank1234
memcached ehcache spring ioc
本文对Ehcache和Memcached进行了简单的封装,这样对于客户端程序无需了解ehcache和memcached的差异,仅需要配置缓存的Provider类就可以在二者之间进行切换,Provider实现类通过Spring IoC注入。
cache.xml
<?xml version="1.0" encoding="UTF-8"?>
Remove Duplicates from Sorted List II
hcx2013
remove
Given a sorted linked list, delete all nodes that have duplicate numbers, leaving only distinct numbers from the original list.
For example,Given 1->2->3->3->4->4->5,
Spring4新特性——注解、脚本、任务、MVC等其他特性改进
jinnianshilongnian
spring4
Spring4新特性——泛型限定式依赖注入
Spring4新特性——核心容器的其他改进
Spring4新特性——Web开发的增强
Spring4新特性——集成Bean Validation 1.1(JSR-349)到SpringMVC
Spring4新特性——Groovy Bean定义DSL
Spring4新特性——更好的Java泛型操作API
Spring4新
MySQL安装文档
liyong0802
mysql
工作中用到的MySQL可能安装在两种操作系统中,即Windows系统和Linux系统。以Linux系统中情况居多。
安装在Windows系统时与其它Windows应用程序相同按照安装向导一直下一步就即,这里就不具体介绍,本文档只介绍Linux系统下MySQL的安装步骤。
Linux系统下安装MySQL分为三种:RPM包安装、二进制包安装和源码包安装。二
使用VS2010构建HotSpot工程
p2p2500
HotSpot OpenJDK VS2010
1. 下载OpenJDK7的源码:
http://download.java.net/openjdk/jdk7
http://download.java.net/openjdk/
2. 环境配置
▶
Oracle实用功能之分组后列合并
seandeng888
oracle 分组 实用功能 合并
1 实例解析
由于业务需求需要对表中的数据进行分组后进行合并的处理,鉴于Oracle10g没有现成的函数实现该功能,且该功能如若用JAVA代码实现会比较复杂,因此,特将SQL语言的实现方式分享出来,希望对大家有所帮助。如下:
表test 数据如下:
ID,SUBJECTCODE,DIMCODE,VALUE
1&nbs
Java定时任务注解方式实现
tuoni
java spring jvm xml jni
Spring 注解的定时任务,有如下两种方式:
第一种:
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http
11大Java开源中文分词器的使用方法和分词效果对比
yangshangchuan
word分词器 ansj分词器 Stanford分词器 FudanNLP分词器 HanLP分词器
本文的目标有两个:
1、学会使用11大Java开源中文分词器
2、对比分析11大Java开源中文分词器的分词效果
本文给出了11大Java开源中文分词的使用方法以及分词结果对比代码,至于效果哪个好,那要用的人结合自己的应用场景自己来判断。
11大Java开源中文分词器,不同的分词器有不同的用法,定义的接口也不一样,我们先定义一个统一的接口:
/**
* 获取文本的所有分词结果, 对比