电子说
如果你想发布自己的模型并且不希望用户看到模型的任何参数,那么你可以对整个模型进行加密。
灵敏度分析用来确定特定的性能指标对设计参数变化的敏感程度。SaberRD需要对每一个特定的设计参数进行少量更改,并计算对性能测量的影响。在需要使用模型加密功能的情况下,用变量的形式展示设计参数,就可以进行加密电路模型的灵敏度分析,达到你的目的。
下面的示例介绍了如何使用加密后Saber模型进行灵敏度分析的过程。
下载随附的模数转换器电路压缩文件A2D_encrypt.zip,按照以下步骤操作:
1、启动SaberRD,打开设计文件 a2d_encrypt.ai_dsn,并进行仿真以生成网表文件a2d_encrypt.sin。
假设要加密分层模型 d2a ,并将电阻器的rnom值公开为灵敏度分析的关键参数。
注意:如果要加密非分层MAST模型,可以跳过第 2 步和第 3 步,继续第 4 步。
2、为分层电路创建网表文件。实际上分层电路的网表信息已经包含在顶层设计的网表文件a2d_encrypt.sin中。如果用文本编辑器打开a2d_encrypt.sin,可以在顶层网表中看到如下一行:
template d2a d7:d7 d6:d6 d5:d5 d4:d4d0:d0 d1:d1 d2:d2 d3:d3 out:out
其中:d0 到 d7 和 out 是子电路的连接引脚。大括号 { } 中的文本是子电路网表信息,将模板行和大括号内的文本复制到一个新的文本文件中,并将其保存为 d2a.sin,文件内容见下。
3、将新的sin网表文件与现有的符号连接起来。
(1) 打开符号 d2a.ai_sym。
(2) 在右边的Properties窗口,点击 + 图标,添加一个属性为“primitive”。
(3) 删除属性“schematic”。
(4) 存盘。
4、使用变量为参数赋值。选择需要公开的参数并为其分配变量,而不是直接设置值。然后在顶层使用这些变量并在那里分配参数值,这会将参数传递给模型的顶层或公开它们。这样,第2步中生成的d2a.sin 文件将被修改成下面的样子:
5、加密模型,下面给出了带有起点和终点的加密工具窗口。
6、返回原理图,这时原理图d2a1属性显示为“primitive:d2a”,这时右键单击符号 d2a 并选择“View Interface”,显示子电路的加密模型。
7、执行灵敏度分析:
(1) 转到Simulate标签栏,再选择Sensitivity进行灵敏度分析。
(2) 可以看到,在下面的灵敏度报告中,仅使用分配的变量显示参数名称,其它字段被屏蔽。
全部0条评论
快来发表一下你的评论吧 !