Errores en la asignación de pines para un archivo SPICE en Altium

2

Estoy intentando simular el siguiente circuito en Altium antes de ir a la ruta de PCB:

Peroobtengolossiguienteserroresdepin:

EncontréelmodeloSPICEytratédeasignarlosaestahuella:

Aquíescómovinculoelarchivo.ckt:

Aquíestálaformaenquehicelasasignacionesdepin:

elrestodetareas:

Y finalmente, aquí está el código del archivo SPICE ckt:

*
*
* (DUAL) RETRIGGERABLE MONOSTABLE MULTIVIBRATOR
* Pulse Width Tw = 0.5 * R * C
* tpd R,A,B->Q     30n
* Tpulse 75n, C=0, Rext=5k
.SUBCKT 74HC123  A B CLR  CGND RC  Q QN  VCC VGND  vcc1={vcc} speed1={speed} tripdt1={tripdt}
.param egain=1/{vcc1}
.param td5=1e-9*(5)*4.0/({vcc1}-0.5)*{speed1}
.param td2=1e-9*(2)*4.0/({vcc1}-0.5)*{speed1}
*
XINA    A Ai  VCC VGND  74HC_IN_1  vcc2={vcc1}  speed2={speed1}  tripdt2={tripdt1} 
XINB    B Bi  VCC VGND  74HC_IN_1  vcc2={vcc1}  speed2={speed1}  tripdt2={tripdt1} 
XINCLR  CLR CLRi  VCC VGND  74HC_IN_1  vcc2={vcc1}  speed2={speed1}  tripdt2={tripdt1} 
XINRC1  RC RCi  VCC VGND  74HC_IN_0  vcc2={vcc1}  speed2={speed1}  tripdt2={tripdt1} 
*
* Model of a 74HC123 derived  from SGS-Thomson data sheet.
* Helmut Sennewald, 13.9.2002
A4 DHIGH 0 N014 0 N004 N006 N005 0 DFLOP   tripdt={tripdt1}  td={td5}
A3 0 N015 N016 N023 0  N014 0 0 OR  tripdt={tripdt1}  td={td5}
A1 Ai 0 0 0 0          0 N015 0  SCHMITT  Vt=0.46 Vh=0.02  tripdt={tripdt1}  td={td5}
A2 Bi 0 0 0 0          N016 0 0  SCHMITT  Vt=0.46 Vh=0.02  tripdt={tripdt1}  td={td5}
A6 0 N008 0 N006 0     N007 0 0  AND  tripdt={tripdt1}  td={td5}
A5 0 N009 0 N007 0     N008 0 0  AND  tripdt={tripdt1}  td={td5}
A14 0 N003 0 N021 0    N004 0 0  AND  tripdt={tripdt1}  td={td2}
A13 0 N003 0 N005 0    0 N030 0  AND  tripdt={tripdt1}  td={td5}
A12 N005 0 0 0 0       N012 0 0  BUF  tripdt={tripdt1}  td={td5}
A21 0 N010 0 N011 0    0 N009 0  OR  tripdt={tripdt1}  td={td5}
A22 0 N005 0 N007 0    N010 0 0  OR  tripdt={tripdt1}  td={td5}
A11 0 N013 0 N012 0    0 N003 0  OR  tripdt={tripdt1}  td={td5}
A7 0 N007 0 N018 0     QNi Qi 0  AND  tripdt={tripdt1}  td={td5}
A20 RCi 0 0 0 0        N011 0 0  SCHMITT  tripdt={tripdt1}  td={td5}  Vt=0.44 Vh=0.2m 
A10 RCi 0 0 0 0        0 N013 0  SCHMITT  tripdt={tripdt1}  td={td5}  Vt=0.1 Vh=0.2m 
A32 0 N006 0 N021 0    N022 0 0  OR  tripdt={tripdt1}  td={td5}
A31 0 N022 0 N023 0    N021 0 0  OR  tripdt={tripdt1}  td={td2}
A33 N021 0 0 0 0       N019 0 0  BUF  tripdt={tripdt1}  td={td5}
A30 CLRi 0 0 0 0       N023 0 0  BUF  tripdt={tripdt1}  td={td5}
A34 0 N007 0 N006 0    N020 0 0  AND  tripdt={tripdt1}  td={td5}
A35 0 N020 0 N018 0    N017 0 0  OR  tripdt={tripdt1}  td={td5}
A36 0 N017 0 N019 0    N018 0 0  OR  tripdt={tripdt1}  td={td5}
M10 RC N001 VGND VGND NMOS1
M30 RC N024 VCC VCC PMOS1
D1 RC VCC DIO1
D2 VGND RC DIO1
R10 N001 N002 100
R30 N024 N029 100
R3 CGND VGND 1
E4 RCi 0 RC VGND {egain}
E7 N029 VCC N018 0 {vcc1}
E8 N002 VGND N030 0 {vcc1}
V1 DHIGH 0 DC 1
.MODEL NMOS1 NMOS ( LEVEL=3  W=500e-6  L=1E-6  VTO=1
+ VMAX=1E6  RS=10  RD=10  CJ=0.002  MJ=0.4 
+THETA=1E-6 ETA=0.01  KAPPA=2.2)
.MODEL PMOS1 PMOS ( LEVEL=3  W=500e-6  L=1E-6  VTO=-1 
+ VMAX=1E6  RS=10  RD=10  CJ=0.002  MJ=0.4 
+THETA=1E-6 ETA=0.01  KAPPA=2.2)
.MODEL DIO1 D (IS=10p RS=10 N=1.75 M=0.4 Cjo=6p TT=20n)
*
XOUT0  Qi  Q   VCC VGND  74HC_OUT_1X  vcc2={vcc1} speed2={speed1}  tripdt2={tripdt1}
XOUT1  QNi QN  VCC VGND  74HC_OUT_1X  vcc2={vcc1} speed2={speed1}  tripdt2={tripdt1}
.ends
*
*
*

No pude averiguar dónde estoy haciendo mal. ¿Qué puedo hacer para resolver este problema?

    
pregunta cm64

2 respuestas

0

El modelo solo tiene estas entradas, que es solo una sección de las entradas para el T-flip flop. Su modelo tiene dos, su subcircuito solo tiene uno.

  

.SUBCKT 74HC123 A B CLR CGND RC Q QN VCC VGND

Normalmente, los archivos de especias no tienen partes dobles dentro de ellos, ya que pueden duplicarse fuera de la parte. El código deberá duplicarse para ambas mitades de la parte.

Hay algunas opciones para corregir esto: 1) duplique el archivo de biblioteca y escriba uno nuevo que tenga dos de los subcircuitos 74HC123.
2) Cambia la parte gráfica para tener solo un flop no dos. (lo que probablemente no quieras hacer para mecanizar el esquema del mundo real)
3) Esto podría resolverse en la lista de redes haciendo algo como esto (pero no lo he intentado)

    
respondido por el laptop2d
-1

El SN74123 parece ser un monostable dual. Sin embargo, el modelo de simulación parece ser solo para una sola instancia.

El esquema indica que también está interesado en la operación de una sola instancia.

Para que esto funcione, no intente asignar los pines de la instancia no utilizada (2da) (siempre he tenido problemas con Altium y componentes de varias partes con sim). Simplemente mapee los pines para la parte A.

Su declaración de tipo de modelo debe terminar con solo 9 parámetros (como se indica en el archivo sim del circuito:

@DESIGNATOR %1 %2 %3 %4 %5 %6 %7 %8 %9 @MODEL

con% 1 corrsesponding con "A",% 2 a "B", y así sucesivamente:

.SUBCKT 74HC123  A B CLR  CGND RC  Q QN  VCC VGND

Por ejemplo, aquí hay una declaración para la Parte A de un amplificador dual:

No estoy familiarizado con el significado del resto de la declaración del modelo en el archivo sim:
vcc1={vcc} speed1={speed} tripdt1={tripdt}

¿quizás necesitará definir estos valores como parámetros globales en su configuración de sim? ¿O tal vez puedes definirlas como constantes en la línea del modelo? No lo sé. Prueba y averigua ...

    
respondido por el Chris Knudsen

Lea otras preguntas en las etiquetas