实验七、谐波平衡法仿真
概 述
本练习将继续进行1.9G放大器(amp_1900)的设计和给出谐波平衡仿真器的基本知识,谐波平衡仿真能分析频谱、压缩输出功率,计算TOI和其它一些非线性测量。
任 务
建立并运行一个基频谐波平衡仿真。
建立并运行一个双频谐波平衡仿真。
应用仿真和源控制的变量。
测试增益,压缩功率输出,资用功率,噪声系数,三阶交调(IP3 )和其它一些特性。
在谐波平衡(HB)数据中运用ts(时间序列)变换。
方程式、平面曲线和MIX表格的操作。
目 录
1. 建立一个具有P_1基频源的电路………………………………………116
2. 建立一个单音(one-tone)谐波平衡仿真…………………………………116
115
3. 对Vout以dBm为单位写一个测量方程式并仿真………………………116
4. 对频谱、方程和节点电压的ts(时间序列)作图………………………117
5. 运用函数和索引对Vout和Mix进行操作………………………………118
6. 对传递功率和Zin进行仿真…………………………………………… 120
7. 运用XDB仿真器对增益压缩进行测试…………………………………121
8. 对扫描的功率的压缩状况进行仿真…………………………………… 122
9. 对不同的增益、功率和线性方程作图……………………………………124
10. 带变量的双音(two-tone)谐波平衡仿真………………………………125
11. 运用方程获取和控制谐波平衡数据…………………………………… 126
12. 对IP3或TOI (3阶交截点)仿真…………………………………………127
13. 选作一针对TOI测量作RF功率扫描……………………………………128
116
步 骤
1.建立一个具有P-I基频源的电路
a.如果文件system_prj仍然打开,就关掉它。然后,打开任务amp_1900和原理图s_final。
b.用一个新名称:hb_basic保存原理图s_final。删除所有仿真测量组件及输入端口(Term)。如下图一样开始建立设置。
c.为RF输入端插入一个P_1 Tone(从source_Freq Domain面板调入)。
d.如图示输入4个pin labels(node names节点名):Vin,Vout,VC和 VB,这样电压在数据组(dataset)中是可用的。
e.如图设置RF源:Freq(频率)=1 900MHz,同时,去掉极性(Polar)函数,只剩dbm_to_watts函数:P=dbmtow(- 40)。同时将源的名称转换为RF_source。端口数被定义为Num=1。
117
2.建立一个单音谐波平衡仿真
a.进入Simulation-HB面板并如下图在原理图上放入谐波平衡仿真控制器。
b.在屏幕上进行频率设置:改变频率为Freq[l]=1900MHz,使其与P_lTone源的频率相匹配。
3.对Vout以dBm of Vout)写一个测量方程式并仿真
a.从仿真面板中,在原理图上插入一个测量方程(measurement equation)。
b.写一个方程式,计算在Vout点的输出功率 用dBm表示:dbm_out=dBm(Vout[1]),方括号[1]中的数字指的是在分析中计算频率的索引值。当Order=3时,索引值表示为:index[0]是直流,index[l]是1900MHz,index[2]是二次谐波即3800MHz。index[3]是指三次谐波。因此,方程式应只表示以dBm表示的1900MHz的输出功率。
118
c.仿真—现在应该没有任何警告和错误信息。
d.改变谐波平衡控制器的频率为:Freq[1]=1800MHz。现在,再次仿真,并阅读错误信息—源的频率与谐波平衡器频率1800MHz相差100MHz。当源频率与控制器频率不同时,就会出现这种常见的错误。
e.重新设置谐波平衡控制器频率,改为:Freq[1]=1900MHz并再次仿真。
4.对频谱、方程和节点电压的ts(时间序列)作图
a.在数据显示中,对Vout(dBm)作图。同时,插入一个dbm_out列表。无论你何时写入一个测量方程,该列表都将出现在数据组中。这两个值应该与下图所示相同。
b.把一个Marker(标记)放在基频上,并验证你的放大器在1.9GHz频率点上当输出功率dBm=-4.876时,是否有大约35dB的增益。
119
结果的备注:若在仿真控制器中将Order设为3,你将得到3个频率:一个基波和两个谐波。DC成分也总是出现在图中,因为谐波平衡法总是要计算DC的收敛。
c.插入一个stacked矩形图并插入两个数据轨迹作为时域信号:Vin和Vout。 ts(时间序列)函数作用于谐波平衡法并将结果转换到时域。在这个例子中,你将发现放大器并不是如你希望的那样转换信号。在下图中这两个信号被分离成两个图。如图示把Maker放在同一时间点。
120
d.在轨迹图中(如图)直接把Vout改为VC,Vin改为VB来编辑y轴标识。现在就能看到反相了。这就说明匹配网络对相位有着很大的影响。
5.运用函数和索引对vout和mix进行操作
a.如图所示插入一Mix和Vout的列表。不管谐波仿真何时运行,在数据组中就会产生一个Mix表格(索引值)。注意到除非你是用的是dB, dBm,等单位,否则Vout是一个复数(幅度和角度)。在下面的步骤中,你将学会在Mix表格里怎样列方程以显示或对一个特定的频率进行操作与方程式。不管是在多音还是混频发生的情况下,这都特别有用。
121
b.编辑列表并加入Vin。通过双击列表,进入“Plot Traces & Attributes”对话框。点击“Advanced”按钮。过输入dBm函数,编辑Vin:dBm(Vin),然后点OK。.请注意不论你何时变量信息或函数帮助按钮都会出现。
c.现在你的列表中应包含原理图的方程dBm_out和表达式dBm(Vin)(对所有的频率)。现在,通过键入在Vin自变量中的索引值[1]来编辑dBm(Vin)数据(如图所示)。现在就得到在索引频率或1900MHz下的Vin的值。
122
d.在dBm_out方程式中输入[1]——它会变为无效,因为在原理图中它是以{1}的格式被索引的。
e.从无效的dBm_out方程中去掉[1],这使得dBm_out方程再次有效。
f.如下图所示,将光标插入dBm(Vin[1])表达式并键入逗号”,”和50,如图所示。dBm函数中第二个自变量是Zin。如果自变量没有给出,默认值就是50Ω,因此不需要任何改变。去掉“,”和“50”,即“,50”,再读一次dBm(Vin[1])的值。
关于设计中dBm函数和Zin的备注:dBm函数是将电压值转化为dBm表示。(在假定50Ω阻抗的前提下)。但是,如果Zin并不是50Ω,则Vin的功率可能不正确。因此,想正确使用的Zin值,参看下面的步骤。
6.对传输功率和Zin进行仿真。
123
a.在hb_basic设计中,从Probe Compenents面板中调出一个电流指示器(current probe),改变实例名为I_in,你将会在一个方程中用到它。
b.仿真完后,运用I_in为平均传输功率写一个数据显示方程。注意:0.5表示峰值的平均值。conj函数将复数电流转换为它的共扼形式。因为V&I一定在相位中有耗散功率,将电压转换为dBm后再加30(相当于除以0.001)。
c.如图,运用在1900MHz处的Vin和I_in另写一个方程式计算Zin。然后,插入一个Z-in方程列表。注意到复数阻抗并不是50。
d.编辑你前面的dBm(vin[1])的列表并删除dbm_out,加入方程式P_del_dBm.同时加入另一条Vin轨迹,并编辑轨迹表达式为:dBm(Vin[1],Z_in)现在,你有三种方式计算和比较输入功率了。请注意其中有两个值是相同的。
124
7.运用XDB仿真器对增益压缩进行测试
XDB仿真控制器是一个谐波平衡仿真中专门用于增益压缩的仿真器。
a.保存你目前所有工作:原理图和数据显示器,以一个新名称hb_compression保存原理图。然后,关闭hb basic数据显示。
b.在新的原理图中,禁用(deactivate)HB1控制器。
c.进入simulation_XDB面板并在原理图中插入XDB控制器。在屏幕上编辑控制器,使得Freq[1]和GC输入/输出频率都是1.9GHz,如右图。参数GC_xdB=1表示测试的是1dB压缩。如果你想考察3或6dB压缩,改变值就可以了。
125
d.在Simulation Setup中,改变数据组名为hb_xdb,然后仿真。
e.当数据显示打开后,调入inpwr和outpwr的列表。通过直接在数据后加入一个[1]来编辑列表(如图所示)。如果希望有标题,也可以如图加入标题。你刚才运行1dB增益压缩测试只用了几秒钟,这是因为放大器偏置非常高。1dB压缩点大约在输入功率为一29dBm处。后面步骤中,你将改变原理图和设置一个谐波平衡功率扫描—这是测试压缩的另一个方法。
8.用功率扫描对压缩状况进行仿真。
a.禁用XDB,激活HB控制器。
126
b.插入一个VAR的变量方程,RF_pwr= -40。
c.设置RIF源的功率变量为:P=dbmtow(Rf_pwr)。
d.编辑谐波平衡(HB)控制器,在扫描(sweep)这一栏,设置RF_pwr扫描从-50到-20,步长为1,如图所示。
127
e.进入Display这一栏并设置SweepVar,它的值将在HB控制器元件上显示(如上图所示)。
f.改变数据组名为:hb_comp并仿真。当数据显示打开时,选择NO来改变数据组——这将使得XDB数据作为默认数据组有效。现在,你应能准确地画出hb_comp数据——这是一个普通的练习。
g.插入一平面图并选择hb_comp数据组,然后画出原理图测量方程式dbm_ out.在轨迹上插入一个Marker。插入点是 RF_pwr的值靠近XDB inpwr值:-31的地方。正如你看到的,两个值很接近但不同,这是因为扫描方法不同——XDB仿真通常用更紧密间隔的数值扫描。
128
9.对不同的增益、功率和线性方程作图
a.用dbm_out测量方程式写一个dB_gain方程。从dBm_out减去线性化的输入RF_pwr, 得到的结果是在所有RF输入功率值的增益的值。
b.编辑dBm_out图并加入dB_gain方程——Y轴刻度将自动调整。你可以加入Markers比较(在同一RF功率下)两者的值(如图所示)。
c.为画出dB_gain与输出功率之间的关系曲线,插入一新的平面图,加入dB_gain方程并点击AddVs.然后,选择hb_comp数据组和X轴的独立变量:dBm_out并点击OK,如图增益有明显下落。用Marker读出其数值。
129
d.再写一个方程式,用line生成一条线性直线(extrapolated data推断数据),这代表没有压 缩的理想输出功率。对每个点的RF功率,在第一个数据点[0]加入没有压缩的增益,你将得到理想增益或直线。
c.插入一个dBm_out的新图(用hb_comp的数据)同时加入Line直线。明显可以看出放大器与线性输出功率直线偏离。
130
f.保存所有的作业。
10.带变量的双音谐波平衡仿真
在下面几个步骤中,我们将看到在仿真控制中更多地用到变量。这对于在以后几个实验中,复杂电路的化简和计算是很重要的,同时,对于使用了该仿真控制的ADS范例也是很重要的。
a.用一新名称hb_2Tone保存上一个设计。
b.编辑VAR,并对RF_f req和spacing加入变量,如下图所示。这里没有要求Vbias(电压偏置)—如果你前面做了选作练习,则Vbias可以加也可以不加。
在VAR单元里的备注—这里设置的单元不要在其它地方设置它们,否则在其它仿真中它们也可能同时起作用。
131
c.改变源为P_nTone,并对其编辑使具有双音:Freq[1]和[2]都具有RF_pwr,如图所示。
d.编辑谐波平衡控制器:加入另一个频率Freq[2]及数值,如图示,使用Spacing变量1/2。同时,对两者设置Order=4,MaxOrder=8。这个例子中,RF双音间隔5MHz。
e.从控制中去掉RF_pwr扫描:可以通过从屏幕或在对话和显示中去掉它。同时,去掉其它控制器或不想要的元件并再次保存设计图。
f.仿真并作出以dBm表示的Vout的频谱图。在1. 9GHz附近放置一个Marker,你可以发现不能看清其附近的谱。为了看到这些互调成分,你可以将图放大,也可以改变X轴刻度。尽快地尝试使用这两种方式,因为下面我们将介绍有关使用方程的技巧。
132
11.运用方程获取并控制谐波平衡数据
a.为所希望的频谱(tones)创建一个矢量矩阵(索引值)。为此,写出一个频率方程,如图所示。这个方程用方括号建立一个矩阵。方括号里面的大括号给出mix表格的索引值。在这个例子中,数字1代表具有调节间隔的RF频率,零代表没有频率成分(如同直流),“2”代表对RF仿真频率的两倍。
b.插入一个以dBm表示Vout频谱的矩形图。如图,使用Trace Options(轨迹选择)编辑the Trace Expression(轨迹表达式),如图所示。使用圆括号—输入:
dBm (mix(Vont,tones)),同时,设置频谱的Trace Type(曲线类型)。
c.图中应该显示的是你设定的四个频率点的频谱(10MHz间隔)。证明方法如下:插入一个Mix的列表,表格Mix中的索引值是你在tones方程中指定的频率。这就是通过方程获得并控制谐波平衡数据的方法。
133
12.对IP3或TOI(third order intercect三阶交截点)仿真。
a.在hb_2Tone原理图上,插入两个谐波平衡IP3out测量方程。一个为上边频,另一个为下边频。许多测量方程都要求双音(即双频)。因此,如右图所示用upper和lower命名实例名。
b.请注意默认的节点标记(Vout),矢量{1,0}和阻抗50。为了使电路与这些值匹配,将vout改为Vout(上面例子为v)。然后,根据最近一次仿真得到的mix表格设置索引值,如图所示(只有lower_toi需要改变)。
134
c.检查方程的正确性,然后仿真。
d.在数据显示中,列出两个测量方程的值,如右图所示。使用Plot选项去掉独立变量。这时,放大器TOI值比较合理而且几乎对称。
e.作为一个使用ADS函数控制数据的练习,在数据显示器为同一测量写一方程,如下图所示。然后如图一样对其列表(my_toi)。因为运用了同一函数ip3_out,所以你得到的值是一样的。唯一不同的是它是仿真后得到的。同时,在这个实验末尾的选作步骤中你将用到这个方程式。
f.作出以dBm表示的vout的频谱图,并在图上放大(zoom in)观察你刚才仿真的双频。 把Marker放在上边基频和3阶频率上—这些应该与在Mix表格中的频率值匹配。
135
备注—你可以容易地返回到原理图上,调节间隔VAR值并再次仿真。所有的方程、图和表格都会刷新为新的数据。这就是为仿真和数据显示使用变量的价值。
g.保存原理图和数据显示。
关于混频器测量的备注—如果你要设计混频器,在仿真控制器中,本振(LO)应为Freq[1」,因为它有最大功率。同时,在测量方程中,你应该把双音数据当作三音处理:本振LO,上边频RF1和下边频RF2。例如,作为一个下变频器的上边频IP3方程,将引用下面的索引值:{-1 ,1,0},{-1,2,I},这里“-1”代表的是本振信号音。
13.选作——针对TOI测量作RF功率扫描
本步骤说明当输入功率使的器件工作点趋向于压缩点时,对TOI的影响。总的来说,许多测量在指定的要求下被精炼而得到更好的测量结果。为达到这个目的,你必须有一个像ADS这样具有强大功能的非线性仿真器和数据显示的工具。
a.用hb_toi为名字另存设计hp_2Tone,设置谐波平衡仿真控制作RF功率扫描,如右图范围从-45dBm到-30dBm。你已经测到1dB压缩点(RF输入功率约为-3ldBm),同时你也完成了TOI的测量(大约15dBm)。
136
b.仿真并观察在数据显示中的变化。
c.编辑My_toi列表,使其包括独立数据(RF_pwr)。增加列表的宽度使其所有数据中都能展现出来。正如你看到的,随着RF_pwr的增大,TOI变化逐渐变大。但是,变化并不是线性的。下面的操作将更细致地表现这种变化。
d.把my_toi列表转变为一个Rectangular Plot(矩形图)(Plot Options一点击图形类型图标)。然后就在这个图上,插入以dBm表示的Vout,同时编辑轨迹表达式。再回到RF上边频,如下图所示,现在你能看到在这个频率下TOI测量结果是怎样表现出来的。
关于Vout数据的各注:你必须运用Mix函数,因为Vout包含了41个频率点。包括:
137
2个基波,每个基波4个谐波(一共就有8个频率成分)。有8个max_order(这就意味着有32个相互调制的频率)。加上直流(DC)成份,这41个音代表了16个RF功率中的每一个值。
e.再增加一条Vout轨迹在图上,再次编辑轨迹(轨迹表达式)使其变为上边带3阶产物。
f.你的图形现在应像下图一样,它包括了RF_freq上边频,上边频3阶产物和方程my_toi。
现在,编辑my_toi轨迹并选择Plot Axes(如下图),对这条轨迹选择Right Y轴,观察其变化。
138
g.在Right Y轴,你的图己经有了从你的方程得到的TOI的值。同时,用来计算ToI的双频在左边。现在,使用Plot Options,选择Y Axis.同时去掉Auto scale(不选)。然后增加Max到10并点击OK。最后,放置一个Maker在一个点上,这个点对于双音的斜率不再是3: 1。正如你看到的,IP3是在正确区域计算。但是,Marker以后的曲线,3阶产物开始一个急速的上升。这是一个运用ADS的很好的例子,从中可以了解到你的设计的性能,更多的指标。
139
附加练习:
1.扫描RF频率—复制原理图并把扫描变量从RF功率(power)变为RF频率(f req)。为此,在控制器和源中为RF_f req建立变量(VAR)。从100MHz到3GHz以l00MHz为步长扫描 RF_freq。请确认己经改变数据组名称,然后仿真和对扫描频率作出输出功率方程的曲线,如右下图所示。同时注意数据组将包含谐波索引列表(如图)。
2.试着写一个方程,使所有5阶产物能出现在频谱图。
3.用pspec函数计算对负载的功率增益。做这一步时,首先请参阅pspec帮助文件,然后在Vout节点插入一个电流指示器(current probe)。
140
因篇幅问题不能全部显示,请点此查看更多更全内容