AnyMath 文档

rfbudget

创建RF预算对象并对2个端口元素链执行RF预算分析。

库::`工程师`

语法

函数调用

  • [参数:rfobj]=rfbudget() -创建RF预算对象,其属性默认设置。

  • rfobj=rfbudget(Name=Value) -设置由类型的一个或多个参数指定的属性 «名称-值».

争论

输入参数 «名称-值»

将参数对指定为 名称=值,在哪里 姓名 -参数的名称,以及 价值 -适当的值。

# 元素 — RF预算要素

+ 恩格尔夫。AbstractRF。AbstractObjectRF[] (默认情况下)| 射频对象 | RF对象阵列

Details

定义为RF对象或RF对象阵列的RF预算元素。 在对rf元件链执行RF预算分析时使用对象数组。

下表列出了可用于设计RF链的受支持RF对象。

元素类型 射频对象

线性元件

衰减器

恩格尔夫。[医]rfantenna

[医]过滤器

nport

[医]系列

顺特洛克

相移,相移

[医]x线轴

[医]txlineCPW

txlineMicrostrip

txlineParallelPlate

[医]线

txlineStripline

[医]网状线

基于txlinequation

txlineDelayLossless

txlineDelayLossy

非线性元件

放大器;放大器

调制器

n.混频器,混频器

示例:放大器和调制器电路的RF预算分析:

using EngeeRF

a = amplifier()
m = modulator()
b = rfbudget(Elements=[a m])

# *输入频率*是 输入信号的频率,Hz

+ 浮标64[] (默认情况下)| 非负标量 | 非负列向量

Details

以Hz为单位的输入信号的频率,设置为大小的非负标量或列向量 上 ,在哪里 表示频率的数目。 如果输入频率是矢量,则函数 rfbudget 分别分析每个输入频率。

数据类型

漂浮64</无翻译>

# 可用的输出功率 — 电源提供给级联输入,dBm

+ 南 (默认情况下)| 标量,标量

Details

以dBm为单位的级联输入处的功率,设置为标量。

数据类型

漂浮64</无翻译>

# 信号宽度 — 级联输入端的信号带宽,Hz

+ 南 (默认情况下)| 标量,标量

Details

级联输入端的信号带宽以Hz为单位,设置为标量。

数据类型

漂浮64</无翻译>

# 自动更新 — 自动重新计算RF预算的选项

+ 真的 (默认情况下)| 错误

Details

根据对现有方案所做的更改自动重新计算RF预算分析的选项,设置为 真的 或 错误.

设置参数 自动更新 在值 错误 更改参数时禁用自动重新计算预算。

# 求解器 — 计算方法

+ "弗里斯" (默认情况下)

Details

的计算方法。

# WaitBar — 显示进度的选项 酒吧+ 真的 (默认情况下)| 错误

Details

在谐波平衡分析期间显示带有取消按钮的进度条的选项,设置为布尔值。

输出参数

# rfobj — RF预算对象

+ 对象

Details

的射频预算对象。 对象包含以下属性:

  • 侍者,侍者 -函数根据参数设置此属性 [参数:WaitBar].

  • 输出频率 -以Hz为单位的输出频率,返回为:

当标量 和 ; 向量时 或 ; **矩阵时 和 ;

+ 表示输入处的频率数,并且 -级联中的步数。

  • 输出功率 -以dBm为单位的输出功率,返回为:

当标量 和 ; 向量时 或 ; **矩阵时 和 ;

+ 表示输入处的频率数,并且 -级联中的步数。

  • 转导,转导 是转换器的功率增益,单位为dB,返回为:

当标量 和 ; 向量时 或 ; **矩阵时 和 ;

+ 表示输入处的频率数,并且 -级联中的步数。

  • NF -以dB为单位的噪声系数,返回为:

当标量 和 ; 向量时 或 ; **矩阵时 和 ;

+ 表示输入处的频率数,以及 -级联中的步数。

  • IIP3 是以dBm为单位的三阶互调失真的输入交点,返回为:

当标量 和 ; 向量时 或 ; **矩阵时 和 ;

+ 表示输入处的频率数,以及 -级联中的步数。

  • OIP3 是三阶互调失真的输出交点,单位为dBm,返回为:

当标量 和 ; 向量时 或 ; **矩阵时 和 ;

+ 表示输入处的频率数,以及 -级联中的步数。

  • 信噪比 -以dB为单位的信噪比,返回为:

当标量 和 ; 向量时 或 ; **矩阵时 和 ;

+ 表示输入处的频率数,以及 -级联中的步数。

方法

rfplot:绘制S参数数据,以及计算RF预算的总结果对级联输入频率的依赖性

例子:

创建RF预算对象

Details

使用函数创建具有默认属性的数据对象 rfbudget 我们将推断出它的属性。

import EngeeRF: rfbudget

b=rfbudget()
rfbudget object:

           Elements:     Any[]
     InputFrequency: Float64[] Hz
AvailableInputPower:       NaN dBm
    SignalBandwidth:       NaN Hz
             Solver:     Friis
         AutoUpdate:      true

让我们创建一个双端口串行RLC电路对象,并将其作为元素添加到具有指定属性的RF预算对象中。

import EngeeRF: seriesRLC

rlc = seriesRLC()

InputFrequency = 1.0e9
AvailableInputPower = -30.0
SignalBandwidth = 1.0e8

b = rfbudget([rlc], InputFrequency, AvailableInputPower, SignalBandwidth)
rfbudget object:

           Elements: DataType[seriesRLC]
     InputFrequency:             [1.0e9] Hz
AvailableInputPower:               -30.0 dBm
    SignalBandwidth:               1.0e8 Hz
             Solver:               Friis
         AutoUpdate:                true

Analysis result:
    OutputFrequency:               [1.0e9;;] dBm
        OutputPower:               [-30.0;;] dBm
     TransducerGain:                 [0.0;;] dB
                 NF:                 [0.0;;] dB
               IIP2:                 nothing dBm
               OIP2:                 nothing dBm
               IIP3:                 [Inf;;] dBm
               OIP3:                 [Inf;;] dBm
                SNR:  [63.975187194228106;;] dB

建议

对象中的试金石文件 nport 在所有指定频率下必须是无源的。

算法

ABCD参数用于计算Friis求解器级联的S参数。 何时 ,转换为ABCD结果的值 南. 对于这种情况,S参数修改如下:

  • , 和 .

    rfbudget1

连接大电阻( 欧姆)平行的网络。 连接低电阻( 欧姆)顺序到网络的开始。

  • , 和 .

    rfbudget2

连接大电阻( 欧姆)平行的网络。 连接低电阻( 欧姆)依次在网络的末端。

  • , 和 .

    rfbudget3

连接大电阻( 欧姆)平行的网络。 连接低电阻( 欧姆)顺序到网络的开始。 **连接低电阻( 欧姆)依次在网络的末端。

  • .

    rfbudget4

    连接一个大电阻( 欧姆)平行的网络。

文学作品

  1. Roychowdhury,J.,D.Long和P.Feldmann。 具有多音激励的大型射频电路的同步噪声分析。__IEEE Journal Of Solid-State Circuits_33,no.3(March1998):324-36. https://doi.org/10.1109/4.661198.