关键词
EDA 器件建模工具 框架
器件建模工具框架
上一篇写的是一个最简单的器件建模流程,实际的模型比较复杂但是总体流程是一致的。这一篇介绍器件建模工具的一个简单框架。
一些概念
首先介绍一些概念:
测量数据(Measurement Data),用专业测量仪器测量出的器件数据
初始模型(Model),最主要的包括用哪一种模型,例如bsim3,bsim4这种,还有参数的初值。模型由许多个参数(Parameter)组成。
电路连接(Circuit),就是测量器件数据时用的什么样的连接的文本表述,比如在哪里加电压源,哪里有电压表电流表。
网表(Netlist),测试数据、模型以及电路连接的信息合在一起就是网表
仿真器(Simulator),用于计算仿真数据的模块,里面包含了模型的方程。输入网表,就可以得到仿真数据。
仿真数据(Simulation Data),从仿真器得到的数据,对应测量数据,用于计算RMS
RMS(Root Mean Square),测量数据和仿真数据的均方根,用于衡量模型是否合格的指标。
框架
输入数据部分:
- 测量数据(Measurement Data)
- 初始模型(Model)
- 电路连接(Circuit)
功能模块:
1.数据处理模块
将测量数据文件加载进内存供后续使用。不同测量工具平台到处的测量数据格式不一样,需要分别处理。
2.模型处理模块
将初始模型文件加载进内存供后续使用。同一种模型文件,不同的公司也有不同的格式,例如Hspice和Spectre格式,需要分别处理。
3.网表生成模块
将内存中的测量数据,模型和电路连接按照一定的规则组合在一起生成用于仿真的网表信息,不同的公司也有不同的网表格式,例如Hspice和Spectre格式,需要分别处理。
4.仿真
调用仿真器仿真网表,并得到仿真结果。仿真器可以是自己实现的,也可能是市场上存在的第三方仿真器,例如Hspice和Spectre等。
5.RMS计算
根据测量数据和仿真器得到的仿真结果计算RMS
6.优化
属于高级一些的应用,用一些智能计算的方法,比如遗传算法等,快速得到模型的解。
界面
1.参数调整
让用户可以更方便的选择参数,调整参数的值
2.图形显示
让用户可以更直观的对比测量数据和仿真数据,并显示RMS
3.自动建模
用户可以根据自己调整参数的步骤,定义一些模型提取流程,配合优化模块使用,自动且高效的提取模型。
流程
配合框架的流程图。
总结
这两篇主要是自己在程序员视角总结的对器件建模工具的一些理解。器件建模工具架构和流程其实不算复杂,更多的是在易用性上的工作。例如自动建模的实现,优化器是否好用,界面显示如何让客户得到更多的信息等等,这些涉及到具体应用的东西就不在这里展开讲。有时间可以再写一写器件模型验证工具的内容。