【Multisim】关于导入TI的SPICE模型发生的报错

2024-03-09 13:52

本文主要是介绍【Multisim】关于导入TI的SPICE模型发生的报错,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

        关于如何在Multisim导入TI提供的SPICE模型,该篇博客描述的很清楚:在Multisim导入TI提供的SPICE模型_multisim如何导入元器件的仿真模型-CSDN博客

        但是使用13或14版本的Multisim在操作过程中可能会遇到如下问题:

The model contains multiple top-level . subckt statements. 
Place any dependent . subckt or .model definitions within the main (top-level) . subckt.

翻译:模型包含多个顶层 .subckt 语句。将任何从属 .subckt 或 .model 定义放在主(顶层).subckt 中。

        关于这个问题,跟着视频multisim自定义元件_哔哩哔哩_bilibili的06:10开始操作可解决。具体操作如下:

        找到第一个“.ENDS”,而后将其前面加上“*”,以下面INA240A1代码为例:

* INA240A1
*****************************************************************************
* (C) Copyright 2012 Texas Instruments Incorporated. All rights reserved.                                            
*****************************************************************************
** This model is designed as an aid for customers of Texas Instruments.
** TI and its licensors and suppliers make no warranties, either expressed
** or implied, with respect to this model, including the warranties of 
** merchantability or fitness for a particular purpose.  The model is
** provided solely on an "as is" basis.  The entire risk as to its quality
** and performance is with the customer.
*****************************************************************************
*
** Released by: WEBENCH(R) Design Center, Texas Instruments Inc.
* Part: INA240A1
* Date: 03/09/17
* Model Type: All In One
* Simulator: Pspice
* Simulator Version: Pspice 16.2
* EVM Order Number: N/A 
* EVM Users Guide: N/A
* Datasheet: SBOS662A - July 2016 - Revised October 2016
*
* Model Version: 2.0
*
*****************************************************************************
*
* Updates:
*
* Version 1.0 : Release to Web
* Version 2.0 : Update Vout swing to lower rail
*               Add overdrive recovery circuit
*
*****************************************************************************
* Notes: 
* The model reflects the following parameters:
* Common-mode input range, CMRR, VOS, IIB, Gain, BW, Vout versus Iout, 
* slew rate, noise, power supply range, IQ.
* The model does not track device behavior over temperature
*  
*****************************************************************************
*$
.SUBCKT INA240A1 OUT INP INN REF1 REF2 VCC GND
E_E2         N61051 0 GND 0 -1
E_E11         INP_BUF_OUT GND INP GND 1
X_U12         INPUT_TF INPUT_VCLAMP VCC GND EN GNDF TF_INA240A1
E_E12         INN_BUF_OUT GND N409527 GND 1
X_U31         INPUT_VIMON OUT VIMON GNDF AMETER_INA240A1 
R_R19         INPUT_OUTP N348841  475k TC=0,0 
X_U35         EN VICM VCC GND GNDF CONTROL_INA240A1 
X_U18         INP GNDF VCC GND VICM GNDF IIBP_INA240A1
R_R11         INPUT_ZOUT INPUT_VIMON  10 TC=0,0 
X_U5         VICM INP INN GNDF VICM_INA240A1
E_E13         INP_BUF_OUT INP_CMRR VICM GNDF 1
R_R16         GND INP  500k TC=0,0 
X_U13         INPUTP_GBW INPUTN_GBW INPUT_TF EN VCC GND GNDF GBW_SLEW_INA240A1
E_E14         INN_BUF_OUT INN_CMRR VICM GNDF 1
V_V8         INN N409527 -7.625uVdc
X_U20         VCC GND EN VIMON GNDF IQ_INA240A1
X_U33         VCC GND INP_PSRR_IN INP_PSRR_OUT GNDF PSRR_INA240A1 
X_U17         INN GNDF VCC GND VICM GNDF IIBN_INA240A1
R_R4         INN_CMRR INPUTN_GBW  25k TC=0,0 
G_G1         GNDF N504417 VICM GNDF 0.25u
X_U34         VCC GND INPUT_VCLAMP INPUT_ZOUT VIMON NDUMMY GNDF VOUTvsIOUT_NROS_SHDN_INA240A1 
VDUMMY        NDUMMY GNDF 1V
E_E16         INP_CMRR INP_PSRR_IN N504417 GNDF 1
R_R18         OUT INPUTN_GBW  500k TC=0,0 
R_R12         REF2 N348841  50k TC=0,0 
R_R8         REF1 N348841  50k TC=0,0 
R_R3         INP_PSRR_OUT INPUT_OUTP  25k TC=0,0 
R_R20         N506257 GNDF  1 TC=0,0 
X_U32         INPUT_OUTP INPUTP_GBW vnse_INA240A1
E_E3         GNDF 0 N61045 N61051 0.5
L_L1         N504417 N506257  400uH  
R_R17         INN GND  500k TC=0,0 
E_E1         N61045 0 VCC 0 1
.ENDS

        将最后一行的“.ENDS”改为“*.ENDS”:

* INA240A1
*****************************************************************************
* (C) Copyright 2012 Texas Instruments Incorporated. All rights reserved.                                            
*****************************************************************************
** This model is designed as an aid for customers of Texas Instruments.
** TI and its licensors and suppliers make no warranties, either expressed
** or implied, with respect to this model, including the warranties of 
** merchantability or fitness for a particular purpose.  The model is
** provided solely on an "as is" basis.  The entire risk as to its quality
** and performance is with the customer.
*****************************************************************************
*
** Released by: WEBENCH(R) Design Center, Texas Instruments Inc.
* Part: INA240A1
* Date: 03/09/17
* Model Type: All In One
* Simulator: Pspice
* Simulator Version: Pspice 16.2
* EVM Order Number: N/A 
* EVM Users Guide: N/A
* Datasheet: SBOS662A - July 2016 - Revised October 2016
*
* Model Version: 2.0
*
*****************************************************************************
*
* Updates:
*
* Version 1.0 : Release to Web
* Version 2.0 : Update Vout swing to lower rail
*               Add overdrive recovery circuit
*
*****************************************************************************
* Notes: 
* The model reflects the following parameters:
* Common-mode input range, CMRR, VOS, IIB, Gain, BW, Vout versus Iout, 
* slew rate, noise, power supply range, IQ.
* The model does not track device behavior over temperature
*  
*****************************************************************************
*$
.SUBCKT INA240A1 OUT INP INN REF1 REF2 VCC GND
E_E2         N61051 0 GND 0 -1
E_E11         INP_BUF_OUT GND INP GND 1
X_U12         INPUT_TF INPUT_VCLAMP VCC GND EN GNDF TF_INA240A1
E_E12         INN_BUF_OUT GND N409527 GND 1
X_U31         INPUT_VIMON OUT VIMON GNDF AMETER_INA240A1 
R_R19         INPUT_OUTP N348841  475k TC=0,0 
X_U35         EN VICM VCC GND GNDF CONTROL_INA240A1 
X_U18         INP GNDF VCC GND VICM GNDF IIBP_INA240A1
R_R11         INPUT_ZOUT INPUT_VIMON  10 TC=0,0 
X_U5         VICM INP INN GNDF VICM_INA240A1
E_E13         INP_BUF_OUT INP_CMRR VICM GNDF 1
R_R16         GND INP  500k TC=0,0 
X_U13         INPUTP_GBW INPUTN_GBW INPUT_TF EN VCC GND GNDF GBW_SLEW_INA240A1
E_E14         INN_BUF_OUT INN_CMRR VICM GNDF 1
V_V8         INN N409527 -7.625uVdc
X_U20         VCC GND EN VIMON GNDF IQ_INA240A1
X_U33         VCC GND INP_PSRR_IN INP_PSRR_OUT GNDF PSRR_INA240A1 
X_U17         INN GNDF VCC GND VICM GNDF IIBN_INA240A1
R_R4         INN_CMRR INPUTN_GBW  25k TC=0,0 
G_G1         GNDF N504417 VICM GNDF 0.25u
X_U34         VCC GND INPUT_VCLAMP INPUT_ZOUT VIMON NDUMMY GNDF VOUTvsIOUT_NROS_SHDN_INA240A1 
VDUMMY        NDUMMY GNDF 1V
E_E16         INP_CMRR INP_PSRR_IN N504417 GNDF 1
R_R18         OUT INPUTN_GBW  500k TC=0,0 
R_R12         REF2 N348841  50k TC=0,0 
R_R8         REF1 N348841  50k TC=0,0 
R_R3         INP_PSRR_OUT INPUT_OUTP  25k TC=0,0 
R_R20         N506257 GNDF  1 TC=0,0 
X_U32         INPUT_OUTP INPUTP_GBW vnse_INA240A1
E_E3         GNDF 0 N61045 N61051 0.5
L_L1         N504417 N506257  400uH  
R_R17         INN GND  500k TC=0,0 
E_E1         N61045 0 VCC 0 1
*.ENDS

        而后找到文件代码最后一个“.ENDS”和“*$”:

*$
*
.SUBCKT VOUTvsIOUT_NROS_SHDN_INA240A1  VCC  VEE  VI  VO VIMON SHDN GNDF
.PARAM ISC_POS = 0.003
.PARAM ISC_NEG = -0.0055
.PARAM IMAXLIN_POS = 0.0024
.PARAM IMAXLIN_NEG = -0.0045
.PARAM VOUTMAXLIN = 4.8
.PARAM VOUTMINLIN = 0.4
.PARAM VHR_VCC = -0.05
.PARAM VHR_VEE = 0.001
.PARAM VCC_DATASHEET = 5
.PARAM VEE_DATASHEET = 0
.PARAM VMID_DATASHEET = {(VCC_DATASHEET + VEE_DATASHEET)/2}
.PARAM VHR_MAX_LINEAR = {VOUTMAXLIN - VCC_DATASHEET}
.PARAM VHR_MIN_LINEAR = {VOUTMINLIN  - VEE_DATASHEET}
ER1 NR1 GNDF VALUE = {(VOUTMAXLIN - (VCC_DATASHEET + VHR_VCC))/IMAXLIN_POS}
ER2 NR2 GNDF VALUE = {(VOUTMINLIN - (VEE_DATASHEET + VHR_VEE))/IMAXLIN_NEG}
EVOUT1pos NVOUT1_MAX GNDF VALUE = {(V(VCC,GNDF) + VHR_VCC) + V(NR1,GNDF)*V(VIMON,GNDF)}
EVOUT1neg NVOUT1_MIN GNDF VALUE = {(V(VEE,GNDF) + VHR_VEE) + V(NR2,GNDF)*V(VIMON,GNDF)}
EM1 NM1 GNDF VALUE = {(VOUTMAXLIN - VMID_DATASHEET)/(IMAXLIN_POS - ISC_POS)}
EM2 NM2 GNDF VALUE = {(VOUTMINLIN - VMID_DATASHEET)/(IMAXLIN_NEG - ISC_NEG)}
EVMID NVMID GNDF VALUE = {(V(VCC,GNDF) + V(VEE,GNDF))/2}
E1 N1 GNDF VALUE = {V(VCC,GNDF) + VHR_MAX_LINEAR}
E2 N2 GNDF VALUE = {V(VEE,GNDF) + VHR_MIN_LINEAR} 
EV1 NV1 GNDF VALUE = {V(NVMID,GNDF) + (V(N1,GNDF) - V(NVMID,GNDF))/(1 - IMAXLIN_POS/ISC_POS)}
EV2 NV2 GNDF VALUE = {V(NVMID,GNDF) + (V(N2,GNDF) - V(NVMID,GNDF))/(1 - IMAXLIN_NEG/ISC_NEG)}
EVOUT2pos NVOUT2_MAX GNDF VALUE = {V(NV1,GNDF) + V(VIMON,GNDF)*V(NM1,GNDF)}
EVOUT2neg NVOUT2_MIN GNDF VALUE = {V(NV2,GNDF) + V(VIMON,GNDF)*V(NM2,GNDF)}
EHRPOS HRPOS GNDF VALUE = {MIN(V(NVOUT1_MAX,GNDF),V(NVOUT2_MAX,GNDF))}
EHRNEG HRNEG GNDF VALUE = {MAX(V(NVOUT1_MIN,GNDF),V(NVOUT2_MIN,GNDF))}
ECLAMP  VO GNDF VALUE = {V(SHDN,GNDF)*MAX(MIN(V(VI,GNDF), V(HRPOS,GNDF)), V(HRNEG,GNDF))}
.ENDS
*$
*

        在.ENDS”和“*$之间再加上一个“.ENDS”:

*$
*
.SUBCKT VOUTvsIOUT_NROS_SHDN_INA240A1  VCC  VEE  VI  VO VIMON SHDN GNDF
.PARAM ISC_POS = 0.003
.PARAM ISC_NEG = -0.0055
.PARAM IMAXLIN_POS = 0.0024
.PARAM IMAXLIN_NEG = -0.0045
.PARAM VOUTMAXLIN = 4.8
.PARAM VOUTMINLIN = 0.4
.PARAM VHR_VCC = -0.05
.PARAM VHR_VEE = 0.001
.PARAM VCC_DATASHEET = 5
.PARAM VEE_DATASHEET = 0
.PARAM VMID_DATASHEET = {(VCC_DATASHEET + VEE_DATASHEET)/2}
.PARAM VHR_MAX_LINEAR = {VOUTMAXLIN - VCC_DATASHEET}
.PARAM VHR_MIN_LINEAR = {VOUTMINLIN  - VEE_DATASHEET}
ER1 NR1 GNDF VALUE = {(VOUTMAXLIN - (VCC_DATASHEET + VHR_VCC))/IMAXLIN_POS}
ER2 NR2 GNDF VALUE = {(VOUTMINLIN - (VEE_DATASHEET + VHR_VEE))/IMAXLIN_NEG}
EVOUT1pos NVOUT1_MAX GNDF VALUE = {(V(VCC,GNDF) + VHR_VCC) + V(NR1,GNDF)*V(VIMON,GNDF)}
EVOUT1neg NVOUT1_MIN GNDF VALUE = {(V(VEE,GNDF) + VHR_VEE) + V(NR2,GNDF)*V(VIMON,GNDF)}
EM1 NM1 GNDF VALUE = {(VOUTMAXLIN - VMID_DATASHEET)/(IMAXLIN_POS - ISC_POS)}
EM2 NM2 GNDF VALUE = {(VOUTMINLIN - VMID_DATASHEET)/(IMAXLIN_NEG - ISC_NEG)}
EVMID NVMID GNDF VALUE = {(V(VCC,GNDF) + V(VEE,GNDF))/2}
E1 N1 GNDF VALUE = {V(VCC,GNDF) + VHR_MAX_LINEAR}
E2 N2 GNDF VALUE = {V(VEE,GNDF) + VHR_MIN_LINEAR} 
EV1 NV1 GNDF VALUE = {V(NVMID,GNDF) + (V(N1,GNDF) - V(NVMID,GNDF))/(1 - IMAXLIN_POS/ISC_POS)}
EV2 NV2 GNDF VALUE = {V(NVMID,GNDF) + (V(N2,GNDF) - V(NVMID,GNDF))/(1 - IMAXLIN_NEG/ISC_NEG)}
EVOUT2pos NVOUT2_MAX GNDF VALUE = {V(NV1,GNDF) + V(VIMON,GNDF)*V(NM1,GNDF)}
EVOUT2neg NVOUT2_MIN GNDF VALUE = {V(NV2,GNDF) + V(VIMON,GNDF)*V(NM2,GNDF)}
EHRPOS HRPOS GNDF VALUE = {MIN(V(NVOUT1_MAX,GNDF),V(NVOUT2_MAX,GNDF))}
EHRNEG HRNEG GNDF VALUE = {MAX(V(NVOUT1_MIN,GNDF),V(NVOUT2_MIN,GNDF))}
ECLAMP  VO GNDF VALUE = {V(SHDN,GNDF)*MAX(MIN(V(VI,GNDF), V(HRPOS,GNDF)), V(HRNEG,GNDF))}
.ENDS
.ENDS
*$
*

        而后保存即可。导入.cir文件时不会再报错。

        以上操作通俗地来说就是:注释掉第一个“括号”后,把“括号”后移至全文末端,让全文都能包含在顶层 .subckt 语句中,从而避免多个.subckt 语句并行而导致读取出错。

这篇关于【Multisim】关于导入TI的SPICE模型发生的报错的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/790871

相关文章

一份LLM资源清单围观技术大佬的日常;手把手教你在美国搭建「百万卡」AI数据中心;为啥大模型做不好简单的数学计算? | ShowMeAI日报

👀日报&周刊合集 | 🎡ShowMeAI官网 | 🧡 点赞关注评论拜托啦! 1. 为啥大模型做不好简单的数学计算?从大模型高考数学成绩不及格说起 司南评测体系 OpenCompass 选取 7 个大模型 (6 个开源模型+ GPT-4o),组织参与了 2024 年高考「新课标I卷」的语文、数学、英语考试,然后由经验丰富的判卷老师评判得分。 结果如上图所

大语言模型(LLMs)能够进行推理和规划吗?

大语言模型(LLMs),基本上是经过强化训练的 n-gram 模型,它们在网络规模的语言语料库(实际上,可以说是我们文明的知识库)上进行了训练,展现出了一种超乎预期的语言行为,引发了我们的广泛关注。从训练和操作的角度来看,LLMs 可以被认为是一种巨大的、非真实的记忆库,相当于为我们所有人提供了一个外部的系统 1(见图 1)。然而,它们表面上的多功能性让许多研究者好奇,这些模型是否也能在通常需要系

人工和AI大语言模型成本对比 ai语音模型

这里既有AI,又有生活大道理,无数渺小的思考填满了一生。 上一专题搭建了一套GMM-HMM系统,来识别连续0123456789的英文语音。 但若不是仅针对数字,而是所有普通词汇,可能达到十几万个词,解码过程将非常复杂,识别结果组合太多,识别结果不会理想。因此只有声学模型是完全不够的,需要引入语言模型来约束识别结果。让“今天天气很好”的概率高于“今天天汽很好”的概率,得到声学模型概率高,又符合表达

智能客服到个人助理,国内AI大模型如何改变我们的生活?

引言 随着人工智能(AI)技术的高速发展,AI大模型越来越多地出现在我们的日常生活和工作中。国内的AI大模型在过去几年里取得了显著的进展,不少独创的技术点和实际应用令人瞩目。 那么,国内的AI大模型有哪些独创的技术点?它们在实际应用中又有哪些出色表现呢?此外,普通人又该如何利用这些大模型提升工作和生活的质量和效率呢?本文将为你一一解析。 一、国内AI大模型的独创技术点 多模态学习 多

OpenCompass:大模型测评工具

大模型相关目录 大模型,包括部署微调prompt/Agent应用开发、知识库增强、数据库增强、知识图谱增强、自然语言处理、多模态等大模型应用开发内容 从0起步,扬帆起航。 大模型应用向开发路径:AI代理工作流大模型应用开发实用开源项目汇总大模型问答项目问答性能评估方法大模型数据侧总结大模型token等基本概念及参数和内存的关系大模型应用开发-华为大模型生态规划从零开始的LLaMA-Factor

yum install 失败报错`XZ_5.1.2alpha' not found (required by /lib64/librpmio.so.3)

/export/env/py3.6/lib/liblzma.so.5: version `XZ_5.1.2alpha' not found (required by /lib64/librpmio.so.3)   到/export/env/py3.6/lib cp /lib64/liblzma.so.5.2.2 . sudo ln -s -f liblzma.so.5.2.2 liblzm

模型压缩综述

https://www.cnblogs.com/shixiangwan/p/9015010.html

python 在pycharm下能导入外面的模块,到terminal下就不能导入

项目结构如下,在ic2ctw.py 中导入util,在pycharm下不报错,但是到terminal下运行报错  File "deal_data/ic2ctw.py", line 3, in <module>     import util 解决方案: 暂时方案:在终端下:export PYTHONPATH=/Users/fujingling/PycharmProjects/PSENe

AI赋能天气:微软研究院发布首个大规模大气基础模型Aurora

编者按:气候变化日益加剧,高温、洪水、干旱,频率和强度不断增加的全球极端天气给整个人类社会都带来了难以估计的影响。这给现有的天气预测模型提出了更高的要求——这些模型要更准确地预测极端天气变化,为政府、企业和公众提供更可靠的信息,以便做出及时的准备和响应。为了应对这一挑战,微软研究院开发了首个大规模大气基础模型 Aurora,其超高的预测准确率、效率及计算速度,实现了目前最先进天气预测系统性能的显著

PyTorch模型_trace实战:深入理解与应用

pytorch使用trace模型 1、使用trace生成torchscript模型2、使用trace的模型预测 1、使用trace生成torchscript模型 def save_trace(model, input, save_path):traced_script_model = torch.jit.trace(model, input)<