Escolar Documentos
Profissional Documentos
Cultura Documentos
20130308J
Este programa nos permite utilizar la tecnología CMOS, donde podemos diseñar transistores
MOS, NMOS, PMOS, condensadores, resistencias, bobinas y contactos. A todos estos
componentes les podemos especificar tanto sus dimensiones como su longitud de canal,
además con la herramienta de simulación nos permite comparar el comportamiento estático y
dinámico del componente diseñado.
En esta Wiki de Microwind explicaremos como instalar el programa, el interfaz de trabajo, como
diseñar transistores NMOS, PMOS, puerta de transmisión e inversores CMOS y sus simulaciones.
Algunos de los conceptos a los que se hará referencia con frecuencia en el uso del microwind2
son los siguientes.
Reglas de diseño: Para Microwind, son una compilación de reglas geométricas, de propiedades
eléctricas, químicas, y de parámetros de modelo, que juntas conforman una tecnología de
proceso de construcción de IC’s.
Archivos RUL: Bajo esta extensión se guardan los archivos que contienen las reglas de diseño
para Microwind.
Layer: Cada una de las capas o máscaras que forman un layout. Layers diferentes representan
diferentes tipos de material, los cuales tienen usos específicos dentro de un layout.
Archivo MSK: Con esta extensión de archivo, se guardan los layout hechos en Microwind.
Workspace o “fondo negro”: Como su nombre indica, es el fondo negro sobre el cual se
construyen los layouts de Microwind. Este fondo en realidad representa una gran oblea lineal,
isotrópica y homogénea de silicio dopado tipo P, de dimensiones infinitas.
Lambda (λ): Es una escala de longitud que utiliza Microwind, para ajustar distancias a la
tecnología empleada. No debe confundirse éste lambda, con el lambda (λ) del modelo de
segundo orden del transistor MOSFET operando en región de saturación. Para la tecnología, el
valor de lambda es ajustado a la mitad del largo del canal de un transistor MOS, por defecto.
1) “Open file”: Como su nombre lo indica, este botón se utiliza para abrir cualquier archivo de
layout de Microwind (*.MSK).
2) “Save this file”: Presionando este botón se guarda el layout actual en un archivo (*.MSK),
con la ubicación en disco y nombre que se elija.
3) “Draw box”: Cuando se activa este botón, se puede dibujar sobre el “fondo negro” o espacio
de trabajo de Microwind, rectángulos del material seleccionado en la paleta de fondos (botón
19), del área que usted desee, con escala de magnitud dada en lambda (λ). Sobre la paleta de
fondos se hablará más adelante.
4) “Delete some layout”: Con este botón activo se pueden borrar toda clase de layers con sólo
hacer un clic sobre el que se desee eliminar; o bien se pueden borrar todos los layers de un área
determinada con sólo un arrastre de Mouse.
5) “Copy elements”: Si se activa este botón se puede copiar o clonar todos los layers de un área
específica a otra parte del espacio de trabajo. El área a copiar se selecciona con un arrastre de
Mouse.
6) “Stretch, move”: Con este botón activo se pueden cambiar las dimensiones de cualquier
layer, con sólo hacer clic sobre cualquier parte del perímetro del layer a modificar, y mediante
un arrastre de Mouse, asignar la nueva posición. Si en vez de hacer esto se quiere mover uno o
varios layers a un área determinada del workspace de Microwind, se debe seleccionar mediante
un arrastre de Mouse los elementos a ser movidos, y mediante otro arrastre ser llevados al área
deseada.
7) “Zoom in”: Este botón típico se utiliza para acercar la distancia de representación del layout
en uso. Al activar este botón y luego hacer un arrastre de Mouse sobre un área determinada del
workspace, ésta se magnifica.
8) “Zoom out”: Este botón es el complementario del botón de acercamiento. Haciendo clic sobre
éste botón la distancia de representación del layout se alejará. Tantas veces como se haga clic
en este botón, se harán "alejamientos" de la vista al layout.
9) “View all”: Cuando se hace clic sobre éste botón, se ajusta la distancia de representación al
tamaño del layout actual, haciendo que éste ocupe toda la pantalla.
10) “View electrical node”: Presionando este botón y luego haciendo clic sobre cualquier punto
del workspace, se obtiene una visualización del nodo eléctrico (el nodo seleccionado se ve en
colores, el resto del layout se muestra en color gris), además se despliega la ventana de
navegación, de información sobre las características eléctricas de ese nodo, como son: la
resistencia, inductancia y capacitancia del nodo, si es visible o no en las simulaciones de circuito,
la polarización del nodo (si está conectada alguna fuente), más una lista de propiedades y
opciones ajustables para el material o dispositivo al cual pertenece el nodo seleccionado. Sobre
este botón se hablará más adelante.
11) “Run simulation”: Si se hace clic sobre este botón, se despliega una ventana dinámica de
simulación para el layout actual, donde se muestran comportamientos de tensión contra
tiempo, tensión contra tensión, tensiones y corrientes, respuesta en frecuencia y curvas de
transferencia para el circuito plasmado en el layout. También se hablará en detalle más adelante
sobre la herramienta de simulación de Microwind.
13) “2D vertical cross-section”: Al activar éste botón y después hacer clic sobre un punto del
workspace, se despliega una ventana mostrando una disposición vertical de la sección
transversal que contiene al punto seleccionado. En esta ventana se muestra además una lista
con los layers vistos en la sección transversal, con su altura y espesor.
2) “Add text to layout”: Cuando se necesite añadir un texto importante en alguna parte del
layout, se activa este botón mediante un clic, y después se escoge un punto en el
workspace donde se desea que se muestre el texto. Seguido de esto aparecerá una
ventana donde se podrán ingresar el texto requerido y así poder asignarlo.
3) “Connect layers”: Al hacer clic en este botón y después en un punto del workspace, se
creara en ese punto una unión metal-contacto, que conecta todos los layers que se
encuentren en ese punto.
4) “Simulate MOS characteristics”: Esta función despliega una ventana donde se muestran
las características de corriente contra tensiones y el comportamiento de las capacitancias
internas conforme varían las tensiones de los posibles dispositivos MOS que se encuentren
en el layout. Sobre esta importante función se hablará más adelante.
5) “Show palette of layers”: Cuando se hace clic sobre este botón, se muestra la paleta de
layers o fondos con la cual es posible hacer la construcción de cualquier layout en
Microwind. Se profundizará más sobre las funciones contenidas en la paleta en las
secciones siguientes.
Ésta barra contiene otros comandos útiles que no se muestran en la barra de botones y
funciones de Microwind. Se muestran a continuación los más importantes:
FILE
“Insert layout”: Esta función permite importar un layout guardado anteriormente al layout
actual. Cuando se hace clic aquí, se despliega una ventana donde se puede buscar el archivo
(*.MSK) que se quiere importar. Al ser seleccionado, el layout de ése archivo aparecerá a la
derecha del layout actual, si se tiene alguno.
“Convert into”: Al situar el Mouse aquí, se desprenderá otro submenú que mostrará dos
opciones para conversión: CIF layout file y SPICE netlist. Si se convierte a archivo .CIF, este
archivo puede ser exportado a un software de VLSI CAD. Si por el contrario se convierte a
netlist de SPICE, el archivo .CIR generado podrá ser exportado al software SPICE. Este archivo
contendrá información de todos los nodos eléctricos del circuito, los dispositivos MOS de canal
n y p contenidos en el layout, las redes pasivas (R, L y C), y de la polarización dada al circuito.
Se podrá escoger el modelo de representación del transistor, la duración de la simulación en
el tiempo y la adición o no de ruido en las entradas, así como otras opciones de simulación.
VIEW
Ésta barra contiene todas las instrucciones de visualización de layout ya tratadas
anteriormente (Zoom in, Zoom out, View all). Además se muestran otras opciones de
visualización, como mostrar o no la cuadrícula escalada en lambda, la lista de dispositivos MOS
del layout, la ventana de navegación y la paleta de fondos.
EDIT
“Move step by step”: Utilizando ésta función se puede mover cualquier conjunto de layers
paso a paso. Cuando se hace clic sobre ésta función, y después se selecciona el área a mover,
se visualiza un cuadro que permite el movimiento del área en las cuatro direcciones y en la
cantidad de lambdas que se especifique.
“Flip and rotate”: Con ésta herramienta se refleja y se rota cualquier conjunto de layers en el
workspace. Situando el Mouse aquí se despliega otro submenú que indica las reflexiones y
dotaciones disponibles.
“Protect all”: Esta función permite que se bloqueen todos los layers del layout en uso. Cuando
un layout está bloqueado no puede borrarse, ni moverse ni copiarse. La función
complementaria se lista a continuación, “Unprotect all”.
“Generate”: Mediante ésta función, es posible generar cualquier tipo de dispositivo que se
pueda hacer con Microwind, esto incluye desde una simple caja de material, hasta dispositivos
MOS, resistencias, capacitancias, inductancias, contactos complejos, buses de metal y diodos.
Sobre cómo generar dispositivos en Microwind, se hablará con profundidad más adelante.
“Virtual R, L or C”: Con ésta función se generan, como su nombre en inglés lo indica,
resistencias, inductancias, y capacitancias virtuales entre un nodo y tierra. Estos dispositivos
no están mostrados físicamente en el layout, pero en el momento de las simulaciones, el
programa asume real sus efectos. Con situar el Mouse aquí, se despliega otro submenú para
escoger la R, L o C a incluirse en el layout. Seguido de esto se hace clic en el punto donde se va
a ubicar el dispositivo, y por último se escoge el valor del dispositivo en sus respectivas
unidades.
“Duplicate XY”: Mediante esta función se multiplica un área seleccionada del layout (selección
mediante arrastre), tantas veces como se desee, horizontal (X) y verticalmente (Y). Esta
función es bastante útil cuando se necesita repetir celdas un número determinado de veces,
como es el caso de celdas lógicas RAM
SIMULATE
Polysilicon: En español: Polisilicona, más exactamente dióxido de silicio (SiO2). Este material es
utilizado para construir las compuertas de los dispositivos MOS. También se utiliza para
construir resistencias y capacitancias. La polisilicona2 no es utilizada en las puertas de
dispositivos MOSFET, sin embargo es uno de los materiales más utilizados para construir
resistencias y capacitores en Microwind.
N Well: Como su nombre en inglés lo indica, es un pozo tipo N sobre cual se construye el
MOSFET tipo P.
Contact: simboliza un contacto entre layers. Dos diferentes layers que se conecten mediante
un contacto, se transformarán en un solo nodo eléctrico. La corriente máxima que puede pasar
un contacto es de 1mA, por tanto, si se sabe que se va a trabajar con circuitos donde circule
una corriente más alta, es necesario hacer las uniones con más contactos.
Metal (1 - 6): son diferentes tipos de metal (con diferente resistividad, inductancia por unidad
de longitud, etc.) que se utilizan para unir nodos eléctricos, y para hacer capacitores.
Option layer: Cualquier cosa que esté dentro de un área demarcada por éste layer, podrá ser
sometida a cambios especiales, por ejemplo, la remoción de silicatos para aumentar
resistencia. Estas opciones se revisan en la ventana de navegación, en la pestaña
“Options”.
Los “contactos varios” son plantillas predeterminadas que contienen uniones de metales-
siliconas mediante contactos (ejemplo: entre metal1 y metal2, o entre poly2 y metal5).
Ahorran tiempo cuando se está trabajando con muchos tipos de material.
El botón de visibilidad en simulación, alterna la aparición o no del nodo seleccionado en las
pruebas de simulación del programa. Esta operación también se puede hacer desde la ventana
de navegación.
VENTANA DE NAVEGACIÓN DE MICROWIND
La gran importancia de ésta ventana radica en que brinda información detallada sobre las
propiedades eléctricas y la polarización de un nodo seleccionado del layout actual. Además
muestra listas de todos los dispositivos MOS del layout con los cuales esté relacionado el nodo,
realiza los cálculos de diafonía (crosstalk) y permite hacer los ajustes que puedan ser
habilitados por el Option layer. Se accede a esta ventana utilizando la función “View electrical
node” o simplemente haciendo doble clic sobre cualquier nodo del layout. A continuación se
mostrará la visualización de la ventana de navegación y sus características más importantes:
PESTAÑA PROPIEDADES (PROPS)
pestaña se muestran las propiedades eléctricas del nodo seleccionado.
Son dispuestos en orden descendente: el nombre del nodo, sus
propiedades de polarización (Vdd, Vss, sinus, variable, etc), su
visualización o no en la simulación (desde aquí también se puede
cambiar ésta condición), y las propiedades pasivas del nodo
(capacitancia entre nodo y tierra, resistencia, ancho e inductancia). En
el cuadro inferior de texto se muestran con más detalle estas
propiedades.
PESTAÑA DISPOSITIVOS (DEVICE): Esta ventana muestra todos los dispositivos MOS a los
cuales está conectado el nodo seleccionado, con su tipo, ancho y largo de canal. También
puede escogerse si se muestran o no todos los transistores MOS del layout actual, y se puede
generar desde aquí el netlist de SPICE.
PESTAÑA OPCIONES (OPTIONS): Esta ventana permite escoger opciones de Option layer, como
la clase de dispositivo MOS (Baja carga (Low leakage), Alta velocidad (High speed) y alta tensión
(High voltaje)). Además permite quitar el material Salicide para aumentar la resistencia, lo cual
es muy útil en la construcción de resistores.
TRANSISTORES MOS
RESISTORES
Para generación de un resistor es necesario
escoger el tipo de material, la división en
partes horizontales, el ancho de resistor, el
poner o no contactos al final del elemento,
insertar o no el símbolo de resistencia, y
obviamente el valor de resistencia en
Ohmios.
Importante:
Existe un problema con ésta clase de resistencias hechas en Microwind. Si se crea una
resistencia en un layout, y después se convierte en netlist de SPICE, puede darse uno cuenta
de que la resistencia creada pertenece toda a un mismo nodo eléctrico. Esto quiere decir que
se está creando una resistencia entre un mismo nodo, y obviamente, una resistencia que no
existe. Éste problema será ilustrado a profundidad con un ejemplo práctico más adelante.
CAPACITORES
(Esta opción es exclusiva de Microwind 3)
Para la generación de un capacitor se
debe ingresar al programa el tipo de
material del capacitor y el valor en pico-
Faradios de la capacitancia de este.
INDUCTORES
Al generar un inductor es necesario
ingresar las vueltas, ancho, espaciamiento
y radio menor del inductor, así como el
material del cual estará hecho el inductor.
También puede escogerse si se insertan o
no los símbolos de resistencia y
capacitancia serie del dispositivo.
Los inductores también presentan el
problema del gran espacio que utilizan en
el chip de silicio, lo cual limita su
utilización.
CONTACTOS
Al generar contactos, debe ingresarse el
tipo de contacto, más la repetición del
mismo horizontal
(rows) y verticalmente (columns)
DIODOS
Debe realizarse antes una observación sobre el dibujo en el layout, el fondo (negro por defecto)
representa un sustrato de un MOS canal n, es decir una difusión p.
2. Cambie la capa actual a difusión n, haciendo clic sobre el botón de difusión n en la paleta,
asegúrese que el material escogido (esto se refiere a que se encuentre resaltado en color
rojo sobre la paleta) sea ahora la difusión n+ (Alto dopaje, “N+ diffusion”). Dibuje un
cuadro de difusión n+, este cuadro queda representado por un color verde. La intersección
entre el polysilicon y la difusión n+ crea el canal del dispositivo MOS. Para este ejemplo, si
queremos un transistor con un canal de W=19λ (medido verticalmente) y L=3λ, dibujamos
un cuadro que cumpla con la condición de ancho, y preferiblemente simétrico a lado y
lado del canal:
Debe observarse en este
momento el orden en el que se
van dibujando las capas
actuales (primero el
polysilicon, que representa la
compuerta del dispositivo,
luego la difusión de alto dopaje
que posiblemente son la fuente
y el dren del dispositivo, ya que
el dispositivo es simétrico,
entonces se debe tener una
vaga idea de cómo es el
proceso de construcción en
estos momentos)
3) Para asignar los contactos, debe tenerse en cuenta que deben tener dimensiones mínimas,
y que deben distribuirse de modo que quede el máximo número de contactos distribuidos en
sus distancias mínimas en la difusión N que se tenga.
Recordando lo anterior procedemos a escoger en la paleta el layer “contact”, distribuirlos en
su tamaño y separación mínima, y cubrirlos con el layer “metal1”. El resultado es el siguiente:
Figura A
Aquí (Figura A) sólo basta con alargar la longitud del polisilicio sobrante de la difusión N en 2λ.
Al hacerlo mediante la función Stretch para ambos lados del canal y verificar de nuevo nos
encontramos con otro error (Figura B):
Mediante la función move, alejamos los
contactos a la distancia adecuada, en éste
caso, 4λ. Volviendo a verificar el diseño nos
encontramos con lo siguiente (Figura C):
Figura B
Mediante la función Stretch, corregimos la
distancia circundante de la difusión N a los
contactos, que para este archivo de reglas es
de 4λ. Al volver a verificar el diseño, nos
damos cuenta que ya no hay más errores, por
tanto nuestro dispositivo MOS de canal N es
el siguiente. (Ver figura D)
Figura C
Figura D