论文部分内容阅读
随着现代社会的快速发展和进步,电路整体的规模和复杂度都在不断增加,造成对电路设计的挑战越来越大,尤其是对应用广泛的数模混合电路,这个状况更加突出,主要原因在于数模混合仿真工具还不够完善,无法对数模混合电路设计和仿真提供足够的技术支持。这也导致了数模混合仿真工具的设计在EDA领域一直备受行业人士的关注。为提供一个精度满足要求、应用界面友好、能够进行数模混合电路行为级仿真设计的仿真软件,本文调研了相关EDA软件和数模混合仿真算法,通过对目前主流数模混合仿真工具常用的本机模式和粘合模式的优势与不足的分析,针对本机模式采用统一模拟方式对混合电路进行仿真,但缺乏最新数字芯片和数模电路模型的支持,考虑到软件性价比和对最新芯片及电路模型的支持等问题,本文提出了一种采用粘合模式设计数模混合仿真软件的方案。粘合模式是将混合电路拆分为若干个相对独立的模拟电路和数字电路模块分别用专业引擎进行仿真的工作模式,主要需要解决的问题是不同模块仿真的时序协同设计和相互间的数据交互,其优势在于使用数模电路各自领域的主流引擎,仿真精度高,性价比高,支持模型全而新。本文设计并实现了一种使用具有良好开放性的系统级仿真工具Matlab Simulink作为上层仿真平台,选择精确程度高、支持最新芯片和元器件模型的PSpice作为模拟仿真引擎,选择业界首选的性能优越的Model Sim作为数字仿真引擎的粘合模式数模混合电路仿真软件。本文设计的软件实现过程遇到的问题和解决方法:一是对于混合电路内不同模拟模块和数字模块间的仿真时序同步问题,本文提出了一种改进的拓扑排序算法控制数据流的流向保证电路仿真的准确与稳定运行;二是对于模拟模块和数字模块之间的数据交互,本文提出了使用Simulink的接口模块实现模拟仿真引擎、数字仿真引擎和Simulink引擎三者的协同运行的方法;三是故障仿真的实现,在实现功能仿真的基础上,构建电路故障模型,设计故障注入方法,实现对数模混合电路的自动批量故障注入和故障仿真,并能够合理地存储和处理功能仿真与故障仿真的数据和工程。除此之外,为了软件编写更加规范、优化更加方便,本文采用分层架构的软件设计思路对软件进行划分。基于该软件仿真的实验结果证明了该混合仿真软件的实用性与准确性,同时体现出了该设计方法可快速收集大量混合电路故障数据的优势。不足之处有两点:一是电路拆分的自动化程度不高,二是元器件故障模型不足,需要后续添加。