Home
  Software
    HowTo
      gEDA+SPICE
        Circuito2

Partes
  Introducción
  Flujo de diseño
  Preliminares
  Circuito
  Redes SPICE
  Simulación SPICE
  Comp. nativos
  Tipos válidos

En esta página:
  Crear el circuito
    Gschem
    Atributos
    Refdes
    Pasivos
    Transistores
    Fuentes
      Independientes
      Dependientes
    Componentes
    Modelos jerárq.

Simulación de circuitos con gEDA y SPICE, parte 4

4.9. Fuentes independientes

Hay dos fuentes independientes: fuentes de tensión y fuentes de corriente. Para incorporarlos en una red para SPICE, ambios actuan de la misma manera. Para incluir una fuente independiente en una red, haga lo siguiente:

  1. Ponga el símbolo para la fuente en su esquemático. (Hacer Add -> Component -> spice -> .sym
  2. Haga doble click en el bloque y agregue/edite los siguiente atributos:
    refdes V? or I?
    value Una sola línea en formato SPICE describiendo la fuente.

4.10. Dependent sources

Hay tres fuentes dependientes:

(Esta sección no está escrita)

4.11. SPICE components

Bloque de modelo Spice

En algunos casos, podrá optar de incluir el modelo SPICE directamente en su esquemático. Esto se hace cuando cuando hay varios dispositivos que, con su atributo value llaman al mismo modelo. Depende de si se trata de modelos de una sola línea o multi-línea, puede entrar el códiigo de la siguiente manera:

Modelo de una sola línea

  1. Poner un bloque 'modelo SPICE' en el circuito. (Hacelo con Add -> Component -> spice -> spice-model-1.sym)
  2. Hacer doble click sobre el bloque y agregar/editar los siguientes atributos:
    refdes A?
    model model name (i.e. the model name used in the components being modeled.)
    type One of the valid spice component types defined in the spice spec.
    value The corresponding one-line spice model

Modelo SPICE multi-línea:

  1. Poner un bloque 'modelo SPICE' en el circuito. (Hacelo con Add -> Component -> spice -> spice-model-1.sym)
  2. Hacer doble click sobre el bloque y agregar/editar los siguientes atributos:
    refdes A?
    model-name Nombre del modelo (i.e. el nombre del modelo utilizado para los componentes a simular.)
    file El nombre del archivo que contiene el código SPICE (i.e. el .MODEL é el .SUBCKT)

Bloque de inclusión

  1. Poner un bloque 'modelo SPICE' en el circuito. (Hacelo con Add -> Component -> spice -> spice-include-1.sym)
  2. Hacer doble click sobre el bloque y agregar/editar los siguientes atributos:
    refdes A?
    file The name of the file to include.

Bloque de directivos SPICE

Mediante un 'bloque de directivos SPICE' en su circuito, puede crear un bloque de código de SPICE en la lista de red. La directiva puede consistir de sentencias en un archivo, o una sola línea incluida directamente en el atributo del modelo. El generador de redes simplemente incuirá literalmente el contenido de esta línea o del archivo en la lista de red final. Algunos ejemplos:

Para poner una directiva en su equemático:

  1. Poner un bloque directivo SPICE en el circuito (hacer Add -> Component -> spice -> spice-directive-1.sym)
  2. Doble click en el bloque y agregar/editar los siguientes atributos:
    refdes A?
    file The name of the file to include.

4.12. Handling hierarchical models

En la modelación en SPICE, regularmente aparecen situaciones en las cuales es deseable de crear una representación esquemática de algún componente como un .SUBCKT, y luego incluir el modelo en un circuito de mayor jerarquía. Un ejemplo común es el siguiente: Está por hacer una simulación de micro-ondas, y desea de incluir un modelo de capacitor que incluye inductancias y resistencias parásitas, además de su propia capacidad.

Fabricantes de capacitores generalmente proveen una representación impresa mostrando la topología de parásitos, y sus valores. En este caso sería deseable de poder dibujar este circuito en gschem, generar la lista de red en forma de .SUBCKT, y luego utilizar este .SUBCKT para modelar los capacitores en el circuito de mayor jerarquía.

Ya que es un escenario común en simulación SPICE, está soportado en gnet-spice-sdb ahora (desde la revisión de 20030331). Para crear un .SUBCKT de menor jerarquía, y luego incluirlo, haga lo siguiente:

  1. Dibujar el circuito de menor jerarquía (ej. el capacitor + parásitos) utilizando gschem.
  2. En este circuito, poner un bloque 'spice-subcircuit-LL' (spice-subcircuit-LL-1.sym). Esto alerta al generador de redes que se trata de un .SUBCKT de menor jerarquía. Edite/qgregue los siguientes atributos al símbolo:
    model-name cap_con_parasitos
    (Por supuesto, cap_con_parasitos es el ejemplo de arriba. Utilice su propio nombre en el circuito!) En la generación de la lista, este símbolo causará la inclusión de .SUBCKT cap_con_parasitos en la primera línea del archivo de la red.
  3. En el circuito de menor jerarquía, adjunte un símbolo spice-subcircuit-IO (spice-subcircuit-IO-1.sym) a cada conexión de E/S (i.e. cada conexión con el nivel superior). Numera los refdes de cada símbolo de E/S en el mismo orden que desea que las conexiones aparezcan en la línea .SUBCKT en el archivo de salida (i.e. P1 = primero, P2 = segundo, etc.)
  4. Cuando termina con el esquemático de menor nivel, genere la lista de red de la forma habitual. Por ejemplo, si el esquemático se llama cap_con_parasitos.sch, genere la lista de red con: gnetlist -g spice-sdb -o cap_con_parasitos.cir cap_con_parasitos.sch. Esto generará una lista de red en un archivo llamado cap_con_parasitos.cir. Controlarlo visualmente para asegurar que la generación de red terminó correctamente.
  5. Paso siguiente, crear un símbolo para utilizar en el circuito de mayor jerarquía, y que estará conectado al .SUBCKT. Note que el símbolo deberá tener un refdes que empieza con la letra 'X'. Para asegurarse de que sea así:
    1. Utilice gschem para dibujar el símbolo. Normalmente dibujo un rectángulo alrededor del símbolo para distinguirlo de un componente común. Haga las anotaciones deseadas.
    2. En el símbolo, asegúrese que los pines son enúmerados de la forma exacta como fueron listados en el .SUBCKT. Esto se hace editando el símbolo con un editor de texto, y seteando el atributo pinseq. El generador de redes listará los pines en este orden.
    3. Utilizando un editor de texto, asigne un atributo de dispositivo (device attribute) como 'modelo-capacitor'. NO asigne al símbolo ninguno de los tipos de dispositivos nativos. La finalidad es de crear un símbolo cuyo refdes inicia con 'X', lo que no sucederá si es reconocido como tipo nativo.
    4. Con un editor de texto, dar un atributo refdes 'X?' al símbolo.
  6. Crear el equemático de mayor jerarquía. Ubique su símbolo reciéntemente creado tantas veces como lo desea, y conéctelo en la forma usual.
  7. Para que su símbolo apunte al .SUBCKT de menor jerarquía, haga doble-click en el símbolo y edite:
    file cap_con_parasitos.cir
    model-name cap_con parasitos
    además de otros atributos como necesario (ej. refdes).
  8. Ahora, genere la lista de red de su esquemá;tico de mayor jerarquía de la forma usual. El contenido del .SUBCKT estará incluido en la lista de red principal. Controle la lista de red visualmente con un editor de texto para asegurarse de que esta correcta. Puntos a prestarle atención:
    • Verificar que el orden de los puntos de conexión entre ambos niveles esté correcto.
    • Controlar si el nombre del modelo de mayor jerarquía (model-name) corresponde al nombre de model (en la línea de declaración .SUBCKT).

Una vez creado la lista de red, puede simular su creación en cualquier simulador de SPICE. Algunos que corren bajo Linux están descritos abajo. 6905


(c) John Coppens ON6JC/LW3HAZ correo