如何使用加密后Saber模型进行灵敏度分析?

电子说

1.3w人已加入

描述

如果你想发布自己的模型并且不希望用户看到模型的任何参数,那么你可以对整个模型进行加密。

灵敏度分析用来确定特定的性能指标对设计参数变化的敏感程度。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) 可以看到,在下面的灵敏度报告中,仅使用分配的变量显示参数名称,其它字段被屏蔽。

电阻器

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分