Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Los datos de salida de PISCES IIB serán procesados y visualizados de dos formas
distintas y complementarias: utilizando el programa POSTMINI para representar la
distribución de una característica eléctrica, y a través de hojas de cálculo (EXCEL) cuando
trabajemos con los valores de corriente-tensión de los terminales del dispositivo.
Estudiaremos la forma en que PISCES IIB lleva a cabo las simulaciones y analizaremos
los principales comandos con que cuenta así como los distintos archivos de salida que
genera. De igual modo dedicaremos algún tiempo a explicar la utilización de POSTMINI
para la correcta visualización de los datos de salida que PISCES IIB nos proporciona.
Con el fin de facilitar la tarea a todos aquellos que pretendan utilizar esta u otras
versiones similares de PISCES IIB, pondremos a su disposición numerosos consejos sobre
la utilización práctica de este programa aprendidos tras muchas horas de “pelea” con
PISCES.
1
PISCES IIB 2
n 1
= J n - U n = F n ( ,n,p) (Ec. 2.2)
t q
p 1
= - J p - U p = F p ( ,n,p) (Ec. 2.3)
t q
La función principal de PISCES IIB es resolver las tres ecuaciones diferenciales parciales
de forma autoconsistente para el potencial electrostático, , y las concentraciones de
electrones y huecos, n y p, respectivamente. N D y N A son las concentraciones de
impurezas ionizadas y F es una densidad de carga fija que puede estar presente en
materiales aislantes.
PISCES IIB 3
De la teoría de transporte de Boltzmann, J n y J p pueden ser expresadas como
funciones de las concentraciones de portadores y de los potenciales de Fermi para
electrones y huecos, n y p :
J n = - q n n n (Ec. 2.4a)
J p = - q p p p (Ec. 2.4b)
A su vez J n y J p pueden ser escritas como funciones de , n y p, de acuerdo con las
componentes de arrastre y difusión
J n = q n E n n + qD n n (Ec. 2.5a)
J p = q p E p p - qD p p (Ec. 2.5b)
donde n y p son las movilidades de electrones y huecos y D n y D p las difusividades de
electrones y huecos. Asumiendo las estadísticas de portadores de Boltzmann se puede
considerar:
En = E p = E = - (Ec. 2.6)
Por último cuando la intensidad del campo eléctrico es elevada es necesario emplear
otros modelos de movilidad que puedan simular los efectos de portadores calientes y de
saturación de la velocidad.
Para resolver estas ecuaciones en un ordenador deben ser discretizadas en una malla de
simulación. Es decir, las funciones continuas de las ecuaciones diferenciales parciales son
representadas por los valores de la función en los nodos, y los operadores diferenciales
son sustituidos por operadores aritméticos. En vez de trabajar con 3 funciones
desconocidas, PISCES IIB trabaja con 3N números reales desconocidos, donde N es el
número de nodos de la malla.
El error existente en cada iteración puede ser medido de dos formas. La primera,
conocida como la norma del lado derecho (RHS, right-hand-side), es la diferencia entre los
lados derecho e izquierdo de las ecuaciones (2.1)-(2.3). Puesto que es esta cantidad la que
pretendemos reducir a cero la norma RHS es la forma más natural de medir el error. De
forma alternativa el error puede ser medido como el tamaño de las modificaciones que se
hacen en las variables del dispositivo en cada iteración. Estas modificaciones son las
incógnitas “x ” en cada iteración con lo que a este método se le llama norma X.
Se considera que una solución converge y se terminan las iteraciones cuando o bien la
norma X o la norma RHS es inferior a una determinada tolerancia. Por defecto PISCES IIB
usa una combinación de ambas normas para determinar la convergencia. El programa
asume que una simulación converge si se satisface la tolerancia de cualquiera de las dos
normas en todos los nodos de la malla.
En el método de Newton todas las variables del problema pueden cambiar durante
cada iteración considerándose todo el acoplamiento existente entre ellas. Debido a esto el
algoritmo de Newton es muy estable y el tiempo de simulación es prácticamente
independiente de las condiciones de polarización. El algoritmo básico es una
generalización del método de Newton-Raphson para el cálculo de la raíz de una ecuación
simple. Se obtiene una matriz Jacobiana que tiene tres veces más columnas y filas (o dos
veces más si se resuelve para un solo portador) que la matriz para una sola variable. La
desventaja del método de Newton es que para grandes mallas, la memoria y el tiempo
necesario para procesar esta matriz puede ser excesivo. El coste por cada iteración es
elevado pero en cambio el número de iteraciones es pequeño, típicamente entre tres y
ocho. El método de Newton es muy recomendable para simulaciones de dos portadores.
Sin embargo puede resultar bastante costoso en tiempo y memoria si la estructura del
dispositivo es muy complicada.
Se emplee uno u otro método siempre es necesario contar con un punto inicial de
partida al realizar cualquier simulación. Existen varias formas de conseguir esto. La más
PISCES IIB 7
Por las razones mencionadas anteriormente PISCES IIB contempla una estructura
irregular de la malla, lo que permite el análisis de dispositivos con formas arbitrarias y
posibilita el refinamiento de regiones concretas con un impacto mínimo en las otras.
Regrid
PISCES IIB 8
A la hora de crear una malla PISCES IIB posee un mecanismo que automáticamente
refina la malla allí donde determinadas variables varíen rápidamente. Sin embargo en
algunas ocasiones puede no ser necesario utilizar este mecanismo. Se puede crear una
malla rectangular inicial con un conjunto de filas y columnas no uniformemente
espaciadas. La malla puede ser modificada para ajustarse a la geometría del dispositivo,
pueden eliminarse nodos de zonas donde no sean necesarios e incluso cambiar la posición
de algunas líneas de nodos. A pesar de estas facilidades al definir la malla, es altamente
aconsejable refinar la malla (comando REGRID) para poder representar correctamente las
características eléctricas del dispositivo.
Al realizar un regrid el usuario puede definir mallas finas solamente donde sea
necesario, creándose automáticamente una región de transición entre las regiones de alta y
baja densidad. El algoritmo de regrid busca en la malla inicial triángulos que satisfagan el
criterio de refinamiento. Cada triángulo encontrado es dividido en cuatro subtriángulos y
las distintas variables de la malla (potencial, dopado, concentración de portadores, etc.)
son interpoladas usando una interpolación lineal o logarítmica según sea más apropiado,
para asignar valores a los nuevos nodos. Loa nuevos triángulos pertenecen al nivel 1,
mientras que la malla inicial está en el nivel 0. Después de que todos los triángulos del
nivel 0 han sido examinados, se aplica el mismo procedimiento a los triángulos del nivel 1
correspondiendo los subtriángulos obtenidos al nivel 2. En cada nivel la malla es
chequeada y actualizada para evitar cambios bruscos en el tamaño de triángulos
contiguos. En la Figura 2.1 podemos apreciar como se modifica un triángulo sometido a
regrid, y la forma en que se produce la transición ente dos zonas de distinta densidad de
nodos.
Para evitar esto existen dos técnicas: “node smoothing” y “triangle smoothing”. En la
primera de ellas los nodos son movidos de sitio de forma que se mejoran los ángulos de
los triángulos que los contienen. Esto solo es aplicable a la malla inicial, pues si la malla ya
ha sido refinada se tiende a redistribuir los nodos alejándolos de las zonas de mayor
interés físico donde son más necesarios. En “triangle smoothing” cada pareja de triángulos
adyacentes es examinada y si es necesario se modifica la diagonal del cuadrilátero que
forman. Este proceso es aconsejable en casi todos los casos y debe aplicarse tanto a la malla
inicial como después de haber realizado cualquier regrid. En la Figura 2.3 podemos
apreciar el efecto de aplicar “triangle smoothing” a una malla en la que se ha realizado un
regrid.
PISCES IIB 10
Figura 2.3. Malla resultante tras realizar un regrid: (a) sin utilizar triangle smoothing;
(b) empleando triangle smoothing.
Es muy difícil triangular una región sin que aparezcan triángulos obtusos. Estos
triángulos tienen dos efectos indeseables en la simulación. El primero es que magnifican
cualquier pequeña irregularidad presente en la simulación, dificultando la interpretación
de las representaciones de los resultados. El segundo efecto es que en ocasiones pueden
hacer que una simulación se interrumpa, al producirse un cambio en el signo de algunos
coeficientes de la matriz de simulación. En ambos casos lo mejor que se puede hacer es
asegurarse de que la malla es suficientemente fina en aquellas regiones donde sea
necesario y que la malla inicial ha sido correctamente creada.
Esta segunda opción tiene una ventaja clara, y es que se puede modificar fácilmente el
archivo de entrada sin tener que volver a escribirlo enteramente cada vez que se quisiera
realizar una simulación o se tuviera un error de sintaxis. La ejecución del programa puede
detenerse momentáneamente (por ejemplo para observar la información que aparece en
pantalla) pulsando la tecla “Pausa”, e interrumpirse definitivamente mediante las teclas
“Control C”.
PISCES IIB 11
PISCES IIB genera principalmente tres tipos de archivos de salida. En un primer archivo
(archivo de malla) se recoge información sobre la malla creada (coordenadas de los nodos,
dopado y material de cada uno de los nodos, información sobre todos los triángulos que se
han creado, sobre los nodos que constituyen los electrodos, sobre las distintas regiones que
componen el dispositivo, etc.). También se genera un archivo de salida por cada
simulación realizada conteniendo toda la información obtenida tras la simulación:
distribución de potencial, de campo eléctrico, densidades de portadores, distintos tipos de
corrientes, etc. Estos dos archivos constituyen los archivos de entrada de POSTMINI, que
lee la información que contienen y permite su visualización gráfica.
Si se indica expresamente (comando LOG), PISCES IIB puede generar un tercer archivo
(archivo I-V) en el que vuelca toda la información relativa a los voltajes aplicados y las
corrientes de los terminales del dispositivo. Es esta la información que procesaremos
mediante una hoja de cálculo para poder obtener unas representaciones gráficas que
POSTMINI no nos proporciona. PISCES IIB puede visualizar el mismo esta información
pero como ya comentamos estas opciones no están disponibles en la versión para
Windows que hemos empleado.
Existe la posibilidad de que estos archivos (salvo el archivo I-V) sean creados en
formato binario o en formato ASCII. Los archivos de malla y simulación deben ser creados
en formato binario si queremos procesarlos posteriormente con POSTMINI y en formato
ASCII si lo que pretendemos es acceder directamente a los datos contenidos en ellos. El
archivo I-V es creado siempre en formato ASCII con lo que podemos acceder a la
información que contiene y procesarla con una hoja de cálculo. En el apartado 2.1.4
comentaremos con detalle el contenido de este archivo de salida.
Tabla 2.2. Comandos con que cuenta PISCES IIB. En negrita aparecen aquellos no
disponibles en la versión compilada para Windows.
comandos precedidos por un asterisco aún estando disponibles no han sido utilizados en
la realización de las distintas simulaciones al no ser necesarios.
El comando MESH debe preceder a todos los demás, salvo a TITLE, COMMENT y
OPTIONS.
Al definir la malla rectangular de nodos el orden de comandos es el siguiente:
MESH
X.MESH
Y.MESH
ELIMINATE
SPREAD
REGION
ELECTRODE
Algunos parámetros son de tipo lógico: escribiendo el nombre del parámetro activamos
la opción asociada a él. Otros requieren de la especificación de un valor numérico o de un
texto; para realizar esa asignación se utiliza un signo de igualdad ‘=’.
PISCES IIB 13
Gran parte de lo que aquí se comente será a su vez tratado en posteriores capítulos, al
explicar los archivos de entrada concretos utilizados para las simulaciones. En algunas
ocasiones nos referiremos a estos capítulos indicando que en ellos se puede ampliar lo que
aquí se comenta y ver ejemplos prácticos del uso de los comandos.
TITLE. Se usa para asignar un título (máximo 60 caracteres) al archivo que estamos
creando. Ese título aparece luego remarcado por el programa durante la simulación.
Una malla muy densa con muchos nodos puede alargar considerablemente el
tiempo de cálculo empleado por PISCES II en cada una de las simulaciones, al tener
que trabajar con un gran número de datos. Si el número de nodos es excesivo,
PISCES II interrumpirá la simulación y mostrará un mensaje de error advirtiendo
de esta circunstancia.
Los principales parámetros que se pueden indicar dentro de este comando son:
Para crear una malla rectangular hemos de considerar a su vez cuatro variables:
Rectangular NX NY Diag.fli
PISCES IIB 14
Con la variable lógica Rectangular establecemos que nuestra malla va a ser de este
tipo. NX es el número de columnas o nodos en la dirección X, mientras que NY es el
número de filas o nodos en la dirección Y. Con Diag.fli podemos hacer que la malla
sea simétrica respecto a un eje vertical que atraviese el dispositivo por su centro. Lo
que se hace es distribuir las diagonales simétricamente respecto a ese eje en vez de
que todas vayan en la misma dirección.
Uno de las opciones del comando MESH, smoothing key (el parámetro se escribe
smooth.key), es el encargado de suavizar o pulir la malla disminuyendo el número
de triángulos obtusos. Este parámetro también está presente en el comando
REGRID. Puede tomar tres valores: 1, suaviza los triángulos manteniendo fijos todos
los límites de las distintas regiones; 2, suaviza los triángulos pero solo mantiene
invariables los límites de los distintos materiales de que consta el dispositivo; 3,
hace un promedio de nodos. La opción más común y la que hemos empleado es la
uno: disminuimos el número de triángulos obtusos pero sin modificar la geometría
de las distintas regiones de que consta nuestro dispositivo.
PISCES IIB 15
$ Creación de la malla.
MESH RECTANGULAR NX=24 NY=15 SMOOTH.K=1 DIAG.FLI
El caso más notorio con el que nos hemos topado es al representar la densidad de
corriente que atraviesa a un transistor bipolar. Esta representación se ve muy
afectada por las irregularidades de la malla. En el capítulo 3, concretamente en el
apartado 3.3.3, se analiza este efecto con la ayuda de las Figuras 3.16, 3.17 y 3.18 y se
comentan las posibles soluciones.
Para terminar con el comando MESH sólo nos queda por ver la opción output files.
Dentro de este apartado podemos indicar con el parámetro OUTFILE que se
almacenen todos los datos relacionados con la malla que estamos generando en un
archivo de texto cuyo nombre especifica el usuario. Por defecto está en formato
binario, con lo que puede ser leído como archivo de entrada por POSTMINI. Si
utilizamos la variable lógica ASCII.OUT el archivo será creado en formato ASCII
con lo que tendremos acceso directo a la información contenida en él.
Siempre que se quiera utilizar POSTMINI para visualizar los resultados hay que
almacenar la información relativa a la malla en un archivo. Esto puede indicarse en
el comando MESH o cada vez que se utilice el comando REGRID. Si no se va a
realizar ningún regrid incluimos el parámetro OUTFILE en el comando MESH; pero
si vamos a someter a la malla a algún regrid es conveniente incluir el parámetro
OUTFILE solamente en las sentencias REGRIDs y no con el comando MESH.
En las líneas que aparecen sombreadas podemos ver la sentencia MESH empleada
para trabajar con un dispositivo que ha sido creado con SUPREM IV. Como en la
malla de este dispositivo no se va a realizar ningún regrid, indicamos en esta
sentencia que se almacene toda la información relativa a la malla en un archivo.
$ Creación de la malla.
MESH RECTANGULAR NX=25 NY=11 SMOOTH.K=1
Con los comandos MESH, X.MESH e Y.MESH la malla de nodos queda perfectamente
definida. Sin embargo hay ocasiones en que se somete a pequeñas modificaciones de dos
tipos: se eliminan líneas sobrantes y/o se modifica la separación entre algunas de las
líneas ya existentes. De esto se encargan los comandos ELIMINATE y SPREAD,
respectivamente. No son de uso muy común pero los mencionamos porque los hemos
utilizado al configurar la malla de los transistores nMOS. Estas modificaciones se
diferencian de las realizadas por el comando REGRID en que son mucho más localizadas y
en ningún momento se consideran las características eléctricas del dispositivo al
realizarlas.
Dentro de esa región así definida se eliminarán la mitad de las filas o columnas
que haya. Es decir, se eliminan la 2º, 4º, 6º, etc. líneas. A continuación podemos ver
la utilización de este comando al modificar la malla de un transistor nMOS. Se
indica que se eliminen la mitad de las columnas (Y.DIR) de todas las que se
encuentren entre las filas 11 y 15 (zona inferior del sustrato) y las columnas 1 a 24
(todo el ancho del dispositivo).
REGION. Con este comando definimos las distintas regiones con que cuenta el
dispositivo y el material de que se componen. Todo triángulo debe ser definido de
algún material.
Solamente hay que asociar un número a cada región (Number), indicar las filas y
columnas que definen esa región (IX.Low, IX.High, IY.Low, IY.High) y asignarle un
material (Silicon, Insulator, Gaas, etc.).
Los transistores bipolares solo poseen silicio pero un transistor MOS está
formado de silicio y óxido. En nuestro caso definimos una región de silicio que
abarca todo el dispositivo y posteriormente creamos la región de óxido como la
parte central (columnas 5 a 20) del área que abarcan las tres primeras filas de la
malla.
asociada a él. Todo nodo que se encuentre dentro de esa región será considerado
como nodo de electrodos.
DOPING. Es uno de los comandos más importantes: con el se definen los perfiles de
dopado del dispositivo. Posee un gran número de parámetros para poder realizar
prácticamente cualquier tipo de dopado. Vamos a mencionar los parámetros más
importantes y aquellos que hayamos empleado.
En primer lugar hay que especificar el tipo de dopado que vamos a realizar:
Gaussian, Uniform, etc. También se puede indicar que se van a utilizar perfiles de
dopado definidos con otros programas, como Suprem IV. En location definimos el
área o la línea donde la concentración es máxima y constante, mediante los
parámetros X.Left, X.Right, Y.Top e Y.Bottom. Fuera de esta área el perfil cae de una
u otra forma según el tipo de dopado que se esté realizando.
Analicemos el ejemplo de los transistores MOS de canal n con los que hemos
trabajado. En la primera línea se dopa uniformemente todo el dispositivo con un
dopado tipo p de 3E15. En ella también se indica el nombre del archivo donde se
almacenará toda la información sobre el dopado. En la siguiente línea se realiza otro
PISCES IIB 20
dopado tipo p, pero esta vez con una concentración mayor y con un perfil
gaussiano, para ajustar el potencial umbral. Se especifica una longitud característica
de 0,5 micras.
Las dos últimas sentencias DOPING realizan dopados gausianos tipo n con la
misma concentración, una profundidad de unión de 0,68 micras y un coeficiente de
difusión lateral de 0,75 (el dopado se extiende lateralmente un 75% de lo que lo hace
verticalmente). En la primera sentencia se define la región de fuente localizada en el
extremo izquierdo del transistor (de 0 a 1 micras). El área de dopado constante de la
región de drenador abarca también una micra pero en el extremo opuesto (de 5 a 6
micras). Ambos dopados tienen su valor máximo en la superficie del transistor
(PEAK=0).
Dentro de location con (X.Min, X.Max, Y.Min e Y.Max) podemos indicar la región
a considerar. A toda interfaz aislante-semiconductor que se encuentre en su interior
se le aplicarán las velocidades de recombinación y la densidad de carga definidas
anteriormente.
En los transistores MOS hemos trabajado con una densidad de carga fija de 1E10
átomos/cm 2 .
INTERFACE QF=1E10
REGRID. Este es el comando del que ya hemos hablado y que permite refinar la
malla. Cualquier triángulo en el que la variable escogida cambie más de lo indicado
o supere un determinado valor es refinado, es decir, dividido en cuatro
subtriángulos. La utilización de este comando lleva en la mayoría de los casos a la
aparición de triángulos obtusos e irregularidades en la malla.
Hay algunos regrids que solo pueden llevase a cabo después de que se haya
realizado alguna simulación (SOLVE), y se disponga ya de la información relativa a
esa variable. Es el caso, por ejemplo, del potencial electrostático.
Podemos definir las características de todos los electrodos a la vez (ALL) o las de
cada uno de ellos (Number). La función trabajo del material de que conste el
electrodo es lo que va a especificar sus características eléctricas. Si se quiere utilizar
contactos óhmicos normales se utiliza el parámetro Neutral, aunque se pueden usar
varios materiales como Aluminum, N.poysilicon, P.polysilicon, etc. Dentro de la
opción special conditions se incluyen las distintas velocidades de recombinación
superficial o la posibilidad de utilizar el electrodo para aplicarle una corriente en
vez de un voltaje (Current).
En los nMOS se definen todos los contactos como óhmicos salvo el de puerta
(NUM=1) que se especifica de polysilicio N+. En el transistor bipolar en algunas
ocasiones se emplea el electrodo de base (NUM=2) como electrodo de corriente.
Como se puede ver los parámetros son de dos tipos: los que especifican modelos
físicos y los que definen el valor numérico de alguna variable. Dentro de los
primeros hemos utilizado los siguientes modelos en los nMOS: movilidad
dependiente de la concentración de impurezas (CONMOB), movilidad dependiente
de la intensidad del campo eléctrico (FLDMOB) y movilidad superficial basada en
el campo efectivo (SRFMOB). Este último parámetro aparece en la documentación
como SURFMOB, pero la versión de PISCES IIB que hemos empleado no lo
reconocía con esa sintaxis.
IMPACT. Este comando especifica el uso del modelo de ionización por impacto, que
permite la simulación de la ruptura por avalancha del dispositivo. Se pueden
especificar varios modelos de ionización por impacto y algunos parámetros
asociados a ellos. En ambos tipos de transistores hemos empleado el modelo de
Crowell y Sze.
PISCES IIB 23
IMPACT <parameters>
Estos archivos de salida son procesados por POSTMINI (además del archivo de
la malla). Por lo tanto siempre que se quiera utilizar este programa hay que incluir
el parámetro currents en las simulaciones y almacenarlas en archivos de salida.
En primer lugar se suele hacer una simulación inicial. Al realizar esta simulación
podemos aplicar una polarización no nula en alguno de los electrodos si lo
consideramos conveniente, o hacer que el resultado de la misma se almacene en un
archivo para ser posteriormente utilizada (como ocurre cuando se quiere utilizar
una corriente de base en el transistor bipolar).
LOAD INFILE=sol_Init
SYMBOLIC NEWTON CARRIERS=2
SOLVE PREV V1=0 I2=5E-6 V3=0
Lo más común suele ser aplicar una polarización concreta a uno o dos electrodos
y variar la polarización del tercero en un rango especificado. A veces es conveniente
realizar una simulación en la que solo se polariza un electrodo, de forma que las
simulaciones siguientes utilicen esta simulación como punto de partida.
Dependiendo del dispositivo que se simule y de las particularidades del electrodo
concreto conviene realizar esa primera simulación con cero o un portador. En los
nMOS comprobamos que las simulaciones en que polarizábamos el terminal de
puerta requerían cero portadores, pero si polarizábamos el drenador era necesario
simular para un portador (electron).
$ Características Ids-Vds.
SYMBOLIC CARRIERS=0
SOLVE V1=2
SYMBOLIC NEWTON CARRIERS=1 ELECTRONS
SOLVE V4=0 VSTEP=0.1 NSTEPS=30 ELECT=4 OUTFILE=sol_1
+ currents
$ Características Ic-Vce.
SOLVE V1=0 I2=1E-5 V3=0 VSTEP=0.1 NSTEPS=50 ELECT=3
+ OUTFILE=sol_1 currents
END. Con este comando se indica el final del archivo de entrada. Todas las líneas que
se encuentren por debajo de este comando son ignoradas por el programa.
MATERIAL. Con este parámetro se pueden modificar las características físicas de los
distintos materiales empleados (silicio, óxido, etc.). Si no se modifica se utilizan los
parámetros que el programa asocia por defecto.
adquiere con la experiencia tras haber empleado muchas horas intentando resolver los
pequeños problemas que surgen de su utilización. Con este apartado pretendemos
compartir esa información en forma de consejos prácticos con el único propósito de
facilitar el manejo de PISCES IIB a todo aquel que se enfrente a él.
En aquellos dispositivos que sean simétricos respecto a un eje vertical que lo atraviese
por su centro (como los transistores MOS) conviene distribuir las diagonales de la
malla también simétricamente mediante la utilización del parámetro Diag.fli (ver
comando MESH).
Se ha de tener cuidado de que todos los nodos que forman los electrodos se encuentren
en regiones de silicio. Si existe un electrodo en una región de óxido no fluirá por el
ninguna corriente y por tanto es como si no existiera.
Para poder apreciar a simple vista la posición de los electrodos que hemos definido se
puede hacer lo siguiente: anular todas las simulaciones y los regrids, almacenar la
información de la malla en un archivo en la sentencia MESH y definir regiones de
óxido que abarquen los electrodos. Por ejemplo si un electrodo ocupa una línea de
cinco nodos se puede definir una región de óxido que abarque esta línea y otra
PISCES IIB 28
Cuando se definen los perfiles de dopado del dispositivo hay que salvar toda esa
información en un archivo, para que pueda ser posteriormente leído por las sentencias
REGRID.
El comando que más puede perjudicar a la malla es precisamente REGRID, con lo que
tampoco se debe abusar de él. Es indispensable incluir el parámetro Smooth en estas
sentencias pues tiene un efecto especialmente positivo en la reducción del número de
triángulos obtusos que pueden aparecer.
En cuanto a qué modelos físicos incluir en las simulaciones el consejo es obvio: incluir
aquellos que sean relevantes para el tipo de dispositivo que se quiera simular. Especial
atención merecen los modelos de movilidad: existen varios modelos y la elección de
unos u otros puede alterar en gran medida las características I-V del dispositivo.
Nos vamos a referir únicamente a simulaciones en las que se aplican voltajes a todos
los electrodos. El caso en el que se aplica una corriente en algún electrodo es tratado
ampliamente en el apartado 3.3.2 del capítulo 3.
Siempre que se modifique la malla o cambie el número de nodos (por ejemplo después
de una sentencia REGRID) es necesario hacer una factorización simbólica, para que se
discreticen las ecuaciones diferenciales atendiendo al nuevo número y distribución de
los nodos.
Como ya hemos comentado al trabajar con MOSFETs sólo es necesario simular para
electrones, mientras que con los transistores bipolares hay que incluir ambos
portadores: esto hace las simulaciones más lentas y complicadas.
Como punto de partida siempre es necesario realizar una simulación inicial en la que
se pueden incluir ambos portadores pues no suele dar problemas (excepción hecha del
caso en el que se aplican corrientes).
En otras ocasiones se puede realizar una simulación incluso con cero portadores con el
único fin de polarizar un electrodo. Es solo una simulación para aplicar un voltaje a un
electrodo, no necesitamos simular con uno o dos portadores. A continuación se
incluiría otra sentencia en la que ya se realizarían todas las simulaciones necesarias
para obtener unas características. Esto se ha utilizado por ejemplo para obtener las
características Ids-Vds en los nMOS, realizando una primera simulación con cero
portadores para fijar el voltaje de puerta.
Los archivos de malla y simulación se crean por defecto en formato binario. Por lo tanto
si queremos echar un vistazo a su contenido hemos de indicar expresamente que se
escriban en código ASCII (parámetro ASCII de los comandos MESH y SOLVE). Los datos
contenidos en ambos archivos no se distribuyen en forma de simples columnas, pues sería
ineficiente dado que el programa maneja una gran cantidad de datos distribuidos en
mallas triangulares. Aunque no sepamos la estructura interna de estos archivos vamos a
mencionar que tipo de información contienen.
cada uno, las movilidades de bajo campo, el área que ocupa cada nodo, etc. También se
especifica la estructura de triángulos presentes en la malla: los nodos que componen cada
uno de los triángulos, el material de cada triángulo, los triángulos adyacentes a uno dado,
etc.
El último archivo del que vamos a hablar lo denominamos archivo I-V y contiene toda
la información de los terminales del dispositivo, es decir, las características I-V y A.C. Este
archivo se genera al utilizar el comando LOG y siempre en formato ASCII, con lo que
puede ser procesado directamente por una hoja de cálculo. Únicamente hemos de utilizar
la opción Abrir del menú Archivo de la hoja de cálculo y el programa automáticamente lee
la información distribuida en columnas y nos permite coger unos u otros datos. El archivo
I-V sigue por supuesto la nomenclatura inglesa representando los decimales con un punto:
es un detalle a tener en cuenta pues existen versiones de Excel u otras hojas de cálculo que
no siguen la norma inglesa lo que puede dar lugar a una interpretación errónea de la
información que contiene.
El primer dato que nos encontramos en este archivo es el número de terminales con que
cuenta el dispositivo. Debajo de él aparece un conjunto de datos asociados a cada una de
las simulaciones. El primer valor se refiere al instante de tiempo en el que se está
simulando. Esto se utiliza lógicamente cuando se simulan transitorios o evoluciones
temporales. A continuación se muestra el potencial de contacto de todos los terminales
ordenados según el número que se le asignó. Posteriormente aparecen las polarizaciones
aplicadas a cada uno de los terminales y por último la corriente que fluye por cada uno de
los terminales. El potencial de contacto del electrodo y la polarización aplicada coinciden
en la mayoría de los casos.
3 Número de terminales.