Appearance
App H(5/6):rfx 命名空间变量
rfx 命名空间变量
射频提取库的许多过程使用表 37 中总结的变量。这些变量由 rfx::Load 过程创建。
NOTE
如果在 Sentaurus Device 命令文件中有命名噪声规范,则此名称被前缀到 PSD Tcl 数组的名称,例如 <name>_rfx::SV。
表 37:rfx 命名空间变量
| 变量名 | 描述 |
|---|---|
rfx::AC | 交流数组(参见 A 矩阵、C 矩阵和 Y 矩阵) |
rfx::Y | Y 矩阵(参见 A 矩阵、C 矩阵和 Y 矩阵) |
rfx::nfreq | 频率数量 |
rfx::freq | 频率列表 |
rfx::i_freqstart | 频率列表中第一个元素的索引 |
rfx::i_freqend | 频率列表中最后一个元素的索引 |
rfx::nbias | 偏置点数量 |
rfx::bias | 偏置点列表 |
rfx::i_biasstart | 偏置列表中第一个元素的索引 |
rfx::i_biasend | 偏置列表中最后一个元素的索引 |
rfx::z0 | 特性阻抗,单位 Ω。默认值:50 Ω |
rfx::Zs | 两端口网络看到的源阻抗 [Ω]。默认值:[$rfx::z0 0] |
rfx::T0 | 标准噪声温度 |
功率谱密度数组
| 变量名 | 描述 |
|---|---|
rfx::SV | NVSD 矩阵 |
rfx::SI | NISD 矩阵 |
rfx::SVee | 电子 NVSD 矩阵 |
rfx::SVhh | 空穴 NVSD 矩阵 |
rfx::SIee | 电子 NISD 矩阵 |
rfx::SIhh | 空穴 NISD 矩阵 |
rfx::SVeeDiff | 扩散 LNS 引起的电子 NVSD 矩阵 |
rfx::SVhhDiff | 扩散 LNS 引起的空穴 NVSD 矩阵 |
rfx::SVeeMonoGR | 单极产生-复合(GR)LNS 引起的电子 NVSD 矩阵 |
rfx::SVhhMonoGR | 单极 GR LNS 引起的空穴 NVSD 矩阵 |
rfx::SVeeFlickerGR | 闪烁 GR LNS 引起的电子 NV |
rfx::PowerGain
在固定偏置和频率点计算以下参数:
- 使用方程 51 计算 Rollett 稳定因子,使用方程 52 计算稳定性条件 delta
- 使用方程 54 计算 MSG(线性标度)
- 使用方程 55 和方程 56 计算 MAG(线性标度)
- 使用方程 57 计算 MUG(线性标度)
- 使用方程 58 计算单向品质因数
语法
rfx::PowerGain S11 S12 S21 S22返回值
以列表形式返回固定频率和偏置点下的 Rollett 稳定因子、稳定性条件 delta、MSG、MAG、MUG 和 。
示例
tcl
set S11 [list 0.999999877967 -8.36457327936e-05]
set S12 [list -1.20947562066e-07 1.09859319808e-05]
set S21 [list -0.0536108305232 4.08872504539e-05]
set S22 [list 0.997240784695 -2.17611978854e-05]
set Pgain [rfx::PowerGain $S11 $S12 $S21 $S22]
puts "K: [lindex $Pgain 0]"
puts "delta: [lindex $Pgain 1]"
puts "MSG: [lindex $Pgain 2]"
puts "MAG: [lindex $Pgain 3]"
puts "MUG: [lindex $Pgain 4]"
puts "U: [lindex $Pgain 5]"
#-> K: -0.009
#-> delta: 0.997
#-> MSG: 4879.658
#-> MAG: 4879.658
#-> MUG: -116265.652
#-> U: 449.598参数
| 参数 | 描述 |
|---|---|
S11 S12 S21 S22 | 固定频率和偏置点下 S 矩阵的四个列表形式的复数。每个列表包含 S 矩阵一个元素的实部和虚部。(实数列表,无默认值) |
rfx::RFCList
访问 Y-、h-、Z-、S-矩阵或 PSD 矩阵的切片,通常用于生成射频参数或 PSD 作为偏置或频率函数的曲线。
语法
tcl
rfx::RFCList -out <array_name> -rfparameter <string> -index <i>
[-noisename <string>]
[-noisesource "ee" | "hh" | "eeDiff" | "hhDiff" | "eeMonoGR" |
"hhMonoGR" | "eeFlickerGR" | "hhFlickerGR"]
[-xaxis "frequency" | "bias"] [-info 0 | 1 | 2 | 3] [-help 0 | 1]参数
| 参数 | 描述 |
|---|---|
-out <array_name> | 存储结果的数组名称。数组有一个字符串索引。索引包含元素 Re 和 Im。(数组名,无默认值) |
-rfparameter <string> | 参数标识符。例如,使用 h21 表示 h 矩阵元素 。对于 PSD,使用 sv<ij> 或 si<ij>。(字符串,无默认值) |
-index <i> | 选择切片的索引。(整数,无默认值) |
-noisename <string> | 噪声规范的名称。(字符串,默认值:"") |
-noisesource | 噪声源的名称。仅用于访问部分 PSD 的矩阵。(字符串,无默认值) |
-xaxis | 指定频率或偏置作为轴。(字符串,默认值:"frequency") |
-info | 设置本地信息级别。(整数,默认值:0) |
-help | 设置为 1 时打印帮助屏幕。(整数,默认值:0) |
返回值
无
示例
tcl
# 对于 v=0.5,返回 z11 作为频率函数的实部和虚部
rfx::Load -dataset "ACPLT_nMOS" -file "DATA/nMOS_ac_des.plt" \
-port1 1 -port2 2 -biasport "v(1)" -devicewidth 0.9
rfx::GetNearestIndex -out i_bias -target 0.5 -list $rfx::bias
puts "Nearest bias point index: $i_bias"
set BiasPoint [lindex $rfx::bias $i_bias]
puts "Corresponding bias point: $BiasPoint"
rfx::RFCList -out ReImz11 -rfparameter "z11" -xaxis "frequency" \
-index $i_bias
puts "Re(ReImz11): $ReImz11(Re)"
puts "Im(ReImz11): $ReImz11(Im)"
#-> Nearest bias point index: 10
#-> Corresponding bias point: 0.5
#-> Re(ReImz11): 10748.32 10746.14 10741.47 ...
#-> Re(ReImz11): -138.16 -202.74 -297.45 ...rfx::SmithBackdrop
创建史密斯圆图背景,用于绘制射频参数。创建两组曲线:归一化电阻圆和归一化电抗(容性或感性)弧。
语法
tcl
rfx::SmithBackdrop -plot <plotName> -r <list_of_r> -x <list_of_r>
[-dataset <dataName>] [-color <stringValue>]
[-linestyle <stringValue>] [-linewidth <r>]
[-info 0 | 1 | 2 | 3] [-help 0 | 1]参数
| 参数 | 描述 |
|---|---|
-plot <plotName> | 史密斯圆图的名称。(字符串,无默认值) |
-r <list_of_r> | 归一化电阻值列表。列表必须包含正数值,这些值单调增加。(实数列表,无默认值) |
-x <list_of_r> | 归一化电抗值列表。列表必须包含非零正值,这些值单调增加。(实数列表,无默认值) |
-dataset | 用于创建史密斯圆图背景的数据集名称。(字符串,默认值:"SmithBackdrop") |
-color | 设置史密斯圆图背景曲线的颜色。(字符串,默认值:"black") |
-linestyle | 设置史密斯圆图背景曲线的线型。(字符串,默认值:"dash") |
-linewidth | 设置史密斯圆图背景曲线的线宽。(实数,默认值:2.0) |
返回值
无
示例
tcl
set Rs [list 0 0.3333 1.0 3.0]
set Xs [list 0.268 0.575 1 1.73 3.75]
rfx::SmithBackdrop -plot Plot_Smith -r $Rs -x $Xsrfx::Y2H
使用方程 46 在固定频率和偏置点将 Y 参数转换为 h 参数。
语法
rfx::Y2H Y11 Y12 Y21 Y22返回值
以四个列表形式返回固定频率和偏置点下的复数 h 矩阵。每个列表包含 h 矩阵一个元素的实部和虚部。
示例
tcl
set Y11 [list 1.21582e-09 8.33508513295e-07]
set Y12 [list 1.21693e-09 -1.10011034906e-07]
set Y21 [list 0.000536849 -3.81214675594e-07]
set Y22 [list 2.76303e-05 2.15260671987e-07]
set H [rfx::Y2H $Y11 $Y12 $Y21 $Y22]
puts "h11= [lindex $H 0]"
puts "h12= [lindex $H 1]"
puts "h21= [lindex $H 2]"
puts "h22= [lindex $H 3]"
#-> h11= 1750.04 -1199745.24
#-> h12= 0.13 0.0017
#-> h21= 0.48 -644.08
#-> h22= 9.85e-05 1.05e-06rfx::Y2S
使用方程 47 在固定频率和偏置点将 Y 参数转换为 S 参数。S 参数使用默认为 50 Ω 的特性阻抗计算。
NOTE
此过程使用变量 rfx::z0(参见第 545 页的特性阻抗和源阻抗)。
语法
rfx::Y2S Y11 Y12 Y21 Y22返回值
以四个列表形式返回固定频率和偏置点下的复数 S 矩阵。每个列表包含 S 矩阵一个元素的实部和虚部。
示例
tcl
set rfx::z0 100.0
set Y11 [list 1.21582e-09 8.33508513295e-07]
set Y12 [list 1.21693e-09 -1.10011034906e-07]
set Y21 [list 0.000536849 -3.81214675594e-07]
set Y22 [list 2.76303e-05 2.15260671987e-07]
set S [rfx::Y2S $Y11 $Y12 $Y21 $Y22]
puts "S11= [lindex $S 0]"
puts "S12= [lindex $S 1]"
puts "S21= [lindex $S 2]"
puts "S22= [lindex $S 3]"
#-> S11= 0.9999997 -0.00017
#-> S12= -2.40e-07 2.19e-05
#-> S21= -0.11 8.73e-05
#-> S22= 0.99 -4.40e-05rfx::Y2Z
使用方程 49 在固定频率和偏置点将 Y 参数转换为 Z 参数。
语法
rfx::Y2Z Y11 Y12 Y21 Y22返回值
以四个列表形式返回固定频率和偏置点下的复数 Z 矩阵。每个列表包含 Z 矩阵一个元素的实部和虚部。
示例
tcl
set Y11 [list 1.21582e-09 8.33508513295e-07]
set Y12 [list 1.21693e-09 -1.10011034906e-07]
set Y21 [list 0.000536849 -3.81214675594e-07]
set Y22 [list 2.76303e-05 2.15260671987e-07]
set Z [rfx::Y2Z $Y11 $Y12 $Y21 $Y22]]
puts "Z11= [lindex $Z 0]"
puts "Z12= [lindex $Z 1]"
puts "Z21= [lindex $Z 2]"
puts "Z22= [lindex $Z 3]"
#-> Z11= -482.36 -336580.47
#-> Z12= 1340.15 2.46
#-> Z21= 64960.88 6539151.68
#-> Z22= 10152.58 -108.46