Download Libro de Técnicas de Integración Ing. Iván Jaramillo Jaramillo.

Document related concepts
no text concepts found
Transcript
Tendencias en diseño digital
CMOS - VLSI
Tendencias en diseño digital
CMOS - VLSI
Ivan Jaramillo Jaramillo
Tendencias en diseño digital CMOS - VLSI
Todos los derechos reservados
Ivan Jaramillo Jaramillo
Universidad Nacional de Colombia
Diseño, diagramación y edición: Carolina Jaramillo
www.littha.com
Ilustraciónes y gráficas: Edna Lizarazo
www.pleasure.com.co
Primera edición: Agosto de 2012
Impreso en Bogotá, Colombia
Indice
Prólogo
Cápitulo 1
La era del estado sólido Reseña Historica
Cápitulo 2
El Chip VLSI
Cápitulo 3
Juntura PN
Cápitulo 4
El MOSFET
Cápitulo 5
Reglas de diseño para transistores Cápitulo 6
El inversor CMOS
Cápitulo 7
Lógica Combinatoria en CMOS
Cápitulo 8
Lógica Secuencial en CMOS
Cápitulo 9
Lógica Dinámica en CMOS
Cápitulo 10
Celdas Estándar Cápitulo 11
Diseño de Alto Nivel Cápitulo 12
Test de circuitos integrados Apendice
L-edit Referencias y bibliografía
11
15
25
41
85
137
167
221
277
323
373
413
443
469
549
A Ana María, Carolina y Juan Camilo
por todo su amor.
Prólogo
D
urante mas de una década se ha venido trabajando en los procesos de diseño
digital de alto nivel en los cursos del área de sistema digitales en el programa de
pregrado de Ingeniería Electrónica de la Universidad Nacional. Específicamente
el curso de Técnicas de Integración se ha centrado en el estudio del diseño digital con tecnologías CMOS. Dado el desarrollo que la tecnología CMOS ha tenido en los
últimos 15 años, hemos centrado nuestro estudio en profundizar sobre su alcance, funcionalidad, ventajas y técnicas de diseño. No obstante nos encontrabamos con la ausencia
de textos guía que permitieran cubrir toda la temática de nuestros cursos y en especial del
curso de Técnicas de Integración.
Durante los últimos cinco años como profesor de esta asignatura, me dediqué a
realizar una recopilación de los temas e incluir algunas ayudas para el estudiante con
el ánimo de conseguir una comprensión de los procesos tecnológicos del CMOS en el
ambiente industrial de nuestro país. Esta es la razón por la que hacemos énfasis en
este texto en diseño digital de alto nivel con implementación de Celdas Estándar, ya
que esta es la tecnología que las grandes compañías del mundo de la electrónica de
consumo están empleando en sus diseños e implementaciones.
La organización del libro inicia con dos capítulos en donde se realiza una breve
reseña sobre el desarrollo de transistor y a continuación se muestra la importancia y el
impacto de la tecnología CMOS, como eje central de los desarrollo de aplicaciones del
mundo de la electrónica comercial.
El capítulo 3 muestra una breve referencia sobre el comportamiento de la juntura
pn y su forma de caracterizar el comportamiento estático y dinámico de los dispositivos semiconductores.
El capítulo 4 presenta la estructura y comportamiento del transistor Mosfet en donde se incluyen los modelos básicos y sus circuitos equivalentes.
El capítulo 5 explica la importancia del conocimiento y manejo de las reglas de
diseño, las cuales constituyen la interfaz entre el diseñador y el responsable del proceso de fabricación.
El capítulo 6 presenta la arquitectura básica de la estructura CMOS, la cual corresponde al inversor. Se presenta su arquitectura, operación, modelamiento y se establecen las bases para el diseño de cualquier compuerta lógica
11
El capítulo 7 corresponde al diseño de lógica combinatoria y las posibles variantes que se
pueden obtener con transistores Mosfet para la implementación de funciones lógicas.
El capítulo 8 presenta las diferentes configuraciones para conseguir sistemas digitales con realimentación positiva y así lograr circuitos básicos de lógica secuencial.
El capítulo 9 corresponde a las configuraciones de lógica dinámica y su importancia
en los procesos de diseño en donde prevalece la reducción del numero de transistores.
El capítulo 10 presenta el proceso tecnológico de diseño con celdas estándar.
El capítulo 11 muestra las consideraciones básicas del diseño digital de alto nivel y finalmente el capítulo 12 incluye algunas recomendaciones para la realización del test en Asics.
Por ultimo, se incluyo un anexo sobre el manejo de la herramienta L-edit, la cual espero
sea de mucha ayuda para los estudiantes que desarrollan circuitos integrados con la tecnología de celdas estándar.
Quiero expresar mi profundo agradecimiento a mi hija Carolina, quien con mucha
dedicación realizó la diagramación de este texto.
IVAN JARAMILLO JARAMILLO
Chia . Junio de 2012
12
CAPÍTULO
1
La era del estado sólido
Reseña Historica
L
as observaciones de Faraday en 1833, sobre la peculiaridad del sulfuro de plata,
dieron partida a la electrónica del estado sólido en 1947 y al circuito integrado, a
finales de los 50. La teoría de la mecánica cuántica de Schrödinger fue necesaria
para explicar la conducta de los semiconductores; la alquimia fue necesaria para
hacerlos, aparentemente. No obstante, la tecnología del semiconductor dio comienzo a
una nueva industria aventurera que transformó la segunda mitad del siglo XX y penetró
como elemento fundamental en todos los campos de la tecnología1
Cuando los laboratorios Bell, anunciaron la invención del transistor, la prensa general trató el desarrollo casi indiferentemente. El New-York-Times publicó la noticia al
siguiente día, julio 1 de 1948, en la ultima página del periódico, como el último artículo
en la columna de noticias de la Radio: “Un dispositivo llamado transistor que tiene varias aplicaciones en la radio, donde es empleado ordinariamente el tubo de vacío, se
desarrolló por primera vez ayer en los laboratorios telefónicos Bell, 463 calle Oriental,
donde fue inventado. El dispositivo sé demostró en un receptor de radio que no contenía ninguno de los tubos convencionales”.
El dispositivo desarrollado funcionaba como un amplificador, aunque también se
podía usar como un oscilador que emitía ondas de radio. Tenía la forma de un cilindro
de metal pequeño de una y media pulgada de largo, el transistor no contiene ni vacío, ni
rejilla, ni placa, ni funda de vidrio para mantener fuera el aire. Su acción es instantánea
y no se disipa calor como en un tubo de vacío.
La idea de usar algún tipo de interruptor electrónico, en vez del tubo de vacío, para
reemplazar el sistema de interruptores mecánicos del sistema de comunicación telefónica cobra interés en 1936.
Durante 1945, los laboratorios Bell realizan un amplio curso de investigación en la
física de los semiconductores apuntando al desarrollo del transistor. En 1948 el tubo
de vacío estaba en una alta sofisticación como producto comercial. Era frágil es cierto;
pero aun así, fue el primer amplificador. El transistor requirió totalmente, nuevos métodos de producción para el sistema diseñado; y al principio era muy costoso. A causa
del reducido tamaño, al poco peso del transistor y al bajo consumo de potencia, hace
que el ejército lo adquiera inmediatamente; también trabajan con el los fabricantes
de artículos para el cuidado del oído. Lo que inclino las balanzas totalmente hacia el
transistor, era la influencia de las computadoras y su necesidad de enormes cantidades
de pequeños interruptores de bajo poder, así como la digitalización de muchos de sus
sistemas. Pero si algún factor puede darse crédito por el nacimiento del transistor, es la
curiosidad intelectual, el transistor tenía sus orígenes en una teoría científica en lugar
de tenerlo en desarrollos tecnológicos.2
Es irónico que aunque el concepto de un transistor de efecto de campo, sea muy
simple, su desarrollo estaba destinado a llegar, después de un amplificador más complicado: el transistor bipolar. El principio de operación del transistor de efecto de campo
se basaba en una modulación de la corriente que fluía a través de un pedazo corto y
grueso de material semiconductor por inyección de portadores de carga a través de
1
2
The Foundation of Silicon Age – Ian M.Ross – Bell Labs Technical Journal – Autumn 1.997
A history of the invention of the transistor and where it will lead us William F. Brinkman, Douglas E. Haggan, William W.
Trotman – IEEE Journal of solid state circuits. Vol 32, No- 12, December 1.997.
17
una compuerta totalmente aislada del material. Pero la clave para su desarrollo estaba en
la formación de estados en la superficie: Los portadores de carga inyectados no podían
afectar el flujo de la corriente a través del material semiconductor por que ellos quedaban
atrapados en la superficie del material. La ignorancia sobre esta superficie retarda la aparición del transistor de efecto de campo y también la del bipolar.
Los Precursores
L
aboratorios Bell ya era en 1948, y aun lo es, una de las más grandes industrias
de investigación y desarrollo en el mundo. Es quien explora todos los aspectos
en sus negocios de telecomunicaciones, la disciplina de la metalurgia, la química, la ciencia de materiales, la física del estado sólido y la ingeniería, utilizo
organizadamente estas disciplinas para conseguir el logro del primer amplificador de
estado sólido. Las investigaciones de Bell en la física de los transistores fueron un
producto de las investigaciones en el tubo de vacío, el cual estaba a la par con las
emisiones termoiónicas y otras propiedades de las superficies de los materiales. Walter
H. Brattain, uno de los tres hombres que jugo un papel principal en la invención del
transistor fue asignado a la investigación del tubo de vacío cuando se unió a los laboratorios Bell en 1929. Los conocimientos de Brattain en física del estado sólido le dieron
una inclinación hacia los semiconductores y en 1931, el fue reasignado al centro Bell
para estudiar el rectificador de óxido de cobre junto con J.A. Becker.
Brattain y Becker estaban convencidos de que la acción rectificadora tomaba lugar
en la unión del metal y del oxido de cobre, y que el flujo de corriente a través de los materiales era óhmico (Ohm). Estos descubrimientos fueron confirmados por experimentos
en fotoelectricidad, en los cuales un flujo de corriente era producido solamente por la
iluminación de la unión y por el volumen de los materiales. Como pasó con muchos otros
científicos de su tiempo, las investigaciones de Laboratorios Bell también se concentraron con la noción de cómo añadir un tercer electrodo (una malla de control) al rectificador
para hacer un amplificador. En 1931, el Físico ingles Alan H, Wilson, publicó el modelo
teórico de un semiconductor sólido, el cual se relacionaba con el trabajo inicial sobre el
movimiento de los electrones de los metales a los aislantes y semiconductores. Dentro
de los pocos años siguientes, se generaron contribuciones a la teoría de los semiconductores por parte de Mott en Inglaterra, Yakob Ilich Frenkel y Davydov en la República
Soviética y Schottky en Alemania.
Un estudiante William Shockey, el más joven de tres diseñadores claves en el desarrollo del transistor, se unió a los laboratorios Bell inmediatamente después de recibir su
doctorado en física del Instituto Tecnológico de Massachusetts en 1936.
18
El Invento
P
robablemente el hombre responsable de plantar la idea del transistor de Shockley fue Mervin Kelly, director de las investigaciones y más tarde, presidente
de los laboratorios Bell. Inevitablemente Brattain y Shockley cruzaron sus caminos a finales de los 30. Shockley se había envuelto en las investigaciones
de Brattain y Becker sobre los rectificadores de óxido de cobre y en diciembre 29 de
1939, hizo su primer cuaderno de entrada con una propuesta de un semiconductor amplificador construido de óxido de cobre. Él había estudiado la teoría de Shockley sobre
la región espacial de carga, la capa superficial del semiconductor cerca de su unión
con el metal, y notó que esa capa se vaciaba de cargas en presencia de un campo de
potencial inverso. Esto llevó a Shockley a pensar ¿por qué no podría él extendiendo, de
algún modo, la capa de vaciamiento bajo un campo eléctrico aumentado, usarlo como
una válvula para regular el flujo de corriente? Él escribió en su cuaderno: “Se me ha
ocurrido que un amplificador usando semiconductores en vez de vacío, es en principio
posible, suponiendo que una fina malla con una capa de cobre sea oxidada, permitiendo que los contactos óhmicos sean hechos hacia las superficies externas”.
Brattain y Shockley continuaron experimentado con el óxido. Russel S. Ohl, un químico de las directivas investigativas de los laboratorios Bell, trabajaba mientras tanto con
silicio, un material muy poco conocido en ese tiempo. Ohl observó el comportamiento de
unos detectores de silicio tipo Bigote de Gato, en los cuales Bell había buscado mejorar
los detectores de microondas, así que comenzó a trabajar con los metalúrgicos, J.H.
Scaff y H.C. Theurer, quienes habían descubierto que derritiendo silicio al vacío se podían obtener lingotes relativamente puros; aunque algunos podrían rectificar en alguna
forma, algunos de otra, y algunos no. Al material que conducía mejor cuando se inclinaba
negativamente, lo llamaron tipo n; al que conducía mejor de la otra forma lo llamaron tipo
p. Scanff y Theurer eventualmente descubrieron que lo que distinguía el silicio tipo p era
la cantidad de impureza que contenía. Además los dos metalúrgicos encontraron que los
elementos en ambos lados de la cuarta columna de la tabla periódica, eran el silicio y el
germanio, y éstos podían más fácilmente producir el efecto deseado. Los elementos de la
quinta columna como el fósforo y el arsénico, proveían de un exceso de electrones y así,
hacían un material de tipo n. Los elementos de la tercera columna incluyendo el boro y el
indio creaban un exceso de hoyos haciendo un material de tipo p. Brattain se maravilló
de la elegante simplicidad de este descubrimiento.
Las investigaciones de los laboratorios Bell se concentraron exclusivamente en el
germanio, ya que sus propiedades eran mas claramente entendidas que las del silicio.
A mediados de diciembre de 1947, Pearson y Bardeen, probaron que bajando la temperatura del semiconductor los electrones atrapados en la superficie podían ser congelados y su efecto de campo, detectado. Un intento consecuente para medir ese cambio de
potencial en la superficie del germanio, con esa temperatura, resultó ser una prueba inconclusa: la condensación interfería. Una posible solución fue sugerir que todo el aparato,
un pedazo de semiconductor, con los electrodos de contacto respectivos, y cables para
19
medir los potenciales de contacto y voltajes fotoeléctricos, fuera sumergido en un líquido
aislante o en un electrolito. Variando entre la superficie del semiconductor y el respectivo
electrodo, intentaron cambiar significativamente el voltaje generado fotoeléctricamente.
El grupo que había hecho esto, había descubierto el efecto de campo de Shockley.
La semana antes de navidad una adaptación del experimento anterior produjo un tríodo amplificador: un potencial aplicado, entre una gota de agua, alrededor de un contacto
de metal con silicio y la placa de silicio, que podía regular por su cuenta un flujo de corriente al contacto con el semiconductor. Otros líquidos, electrolíticos, dieron aún mejores
resultados. Sin embargo, el grupo sabía que el amplificador que ellos estaban buscando
no podía utilizar líquidos; se hicieron intentos de usar un filme evaporado de oro alrededor
del punto pero debido a sus pequeñas dimensiones, un bajo voltaje destruiría aun el punto de contacto. Cuatro días después en diciembre 23 de 1947, el grupo obtuvo su mayor
triunfo. Bardeen y Brattain habían decidido que lo que había que hacer era conseguir dos
contactos extremadamente cercanos entre sí en la superficie del semiconductor. Por sus
cálculos la distancia no debía ser mayor de o milésimas. Esto los puso en problemas ya
que el alambre más fino que tenían para trabajar tenía 5 milésimas de diámetro. Bardeen
y Brattain descubrieron pronto que un pequeño potencial en el emisor, positivo con respecto a la base, podría inyectar “hoyos” en la superficie del semiconductor y prontamente
incrementar su capacidad de carga de corriente. Usando la acción de válvula, su amplificador logró una ganancia de voltaje de aproximadamente 100 eso operando en el rango
del audio.
El circuito original fue dado a conocer aun en ese día, y usando inmediatamente siguiente en la construcción de un oscilador, despejando cualquier duda de que era verdaderamente un amplificador. El único problema urgente era como llamar al invento.
Figura 1.1 El primer Transistor1
1 http://francisthemulenews.wordpress.com/2008/08/16/¿como-se-hace-un-genio-o-la-historia-debardeen-y-el-primer-transistor/
20
El Transistor
E
l nombre llegó un día cuanto John R.Pierce estaba en la oficina de Brattain.
Pierce, que era mejor conocido por su trabajo en comunicaciones satelitales,
propuso un nombre que encajó en la dualidad del invento y los tubos de vacío:
el parámetro importante en un tubo. El razonó: esto es transconducción de
radio de corriente externa a voltaje interno; el amplificador de estado sólido brindó gran
resistencia. Pierce sugirió la palabra “transistor”. Fue sólo después de siete meses que
los laboratorios Bell anunciaron públicamente su “transistor”. El grupo de trabajo en el
semiconductor, necesitó todo ese tiempo para entender completamente el efecto que
envolvía el funcionamiento del transistor, de manera que pudieran escribir un documento sobre esto y así poder patentarlo. También los militares, tuvieron que ser invitados
a mirar si, a su parecer, este invento tenía que ser guardado como clasificado. Pero
un informe convenció a los militares de que no era necesario hacerlo y una semana
después fue llevado a cabo su primera demostración pública en Nueva York en junio
30 de 1948. La cálida acogida del público, sin embargo, dejó entre ver que el invento
iba a quedar como una rareza de laboratorio hasta que más versiones prácticas fueran
hechas y diseñadas a los equipos. Ya que Shockley no había participado en el descubrimiento del punto de contacto del transistor, la patente fue adjudicada a Bardeen y
a Brattain, aunque él fuera el líder del grupo del semiconductor, y fue ciertamente un
contribuyente clave en el conocimiento que permitió este descubrimiento. Shockley
decidió abandonar su idea de un transistor de campo-efecto, temporalmente, y se concentró en otra idea que tenía, para un mejor dispositivo bipolar y sugirió que el efecto
del transistor podía tomar lugar en una estructura que empaquetara una región de semiconductor n entre dos regiones de semiconductor p. Shockley llamó a la estructura
un transistor de unión, pero no pudo verificar la teoría de su operación simplemente
porque no había manera de construirlo en ese tiempo.
Los laboratorios de TI producían transistores de punta de contacto, como también
su respectiva ensambladura en ese mismo año, pero su mayor contribución fue en 1954
cuando anunciaron el primer transistor hecho con silicio.
El primer dispositivo construido por difusión fue el transistor mesa. Este podía operar
con frecuencias más altas que dispositivos anteriores (algunos de estros primero transistores mesa llegaron al nivel del gigahertz) y era mejor para disipar el calor por su estructura rugosa.
El aparato hizo su primera aparición en 1958, y en 1959 era lo ultimo en el campo de
transistores. Fue entonces cuando Fairchild Semiconductor marco huella en la industria
del transistor con el proceso planar.
A fines de los años 50´s, ingenieros en Fairchild Semiconductor Co. Y en Texas Instrument desarrollaron el primer transistor plano, y más adelante el primer circuito integrado
plano. La invención del circuito integrado reveló el potencial para extender el costo y los
beneficios de operación de los transistores a todos los circuitos producidos en masa.
21
La invención del circuito integrado permitió que docenas de transistores se pusieran
en el mismo chip. Este empaquetamiento permitió construir computadoras más pequeñas, rápidas y baratas que sus predecesores con transistores. Las primeras versiones de
la IBM 360 eran transistorizadas, pero las versiones posteriores no solo eran más rápidas
y poderosas, sino que fueron construidas en base a circuitos integrados. En 1965, Gordon E. Moore (fundador de Fairchild, y patentador del primer circuito integrado) cuantificó
el crecimiento sorprendente de las nuevas tecnologías de semiconductores. Dijo que los
fabricantes habían duplicado la densidad de los componentes por circuito integrado a
intervalos regulares (un año), y que seguirían haciéndolo mientras el ojo pudiera ver. En
1967, Fairchild introduce un chip que contenía una ALU de 8 bits: el 3800. En 1968, Gordon Moore, Robert Noyce y Andy Grove establecen la compañía Intel, que en un principio
se dedica a fabricar chips de memoria. En este mismo año, la computadora CDC 7600
logra la velocidad de 40 Mflops.
En el año 1969, el departamento de defensa de los EE.UU. encarga la red Arpanet
con el fin de hacer investigación en redes amplias, y se instalan los primeros cuatro nodos
(en la UCLA, UCSB, SRI y Universidad de Utah). También se introduce el estándar RS232C para facilitar el intercambio entre computadoras y periféricos. En 1970 aparecen
los discos flexibles y las impresoras margarita. También comienza a usarse la tecnología
MOS (Metal Oxide Semiconductor) para circuitos integrados más pequeños baratos. En
1971, Intel fabrica el microprocesador de 4 bits 4004, la primera computadora en un solo
chip. Su objetivo era ser usado para una calculadora. Ya en 1972, Intel fabrica el 8008,
primer microprocesador de 8 bits(que es reemplazado por el 8080, debido al límite de
memoria de 16K impuesto por los pins en el chip).
En 1973, las técnicas de integración a gran escala (LSI – Large Scale Integration) permiten poner 10.000 componentes en un chip de 1 cm2. En el mismo año, John Metcalfe
propone el protocolo Ethernet para comunicación en redes locales. En 1975, la primera
computadora personal, la Altair 8800, aparece en la revista Popular Electronics, explicando como construirla. También en ese año, IBM introduce la primera impresora láser.
En el año 1976, Steve Jobs y Steve Wosniak diseñan y construyen la Apple I, que
consiste principalmente de un tablero de circuitos. IBM introduce las impresoras a chorro
de tinta en ese mismo año, y Cray Research introduce la Cray I, una supercomputadora
con una arquitectura vectorial. También Intel produce el 8085, un 8080 modificado con
algunas características extra de entradas/salida. Poco más tarde, Motorola introduce el
procesador 6800, que era una computadora de 8 bits comparable al 8080. Fue utilizada
como controlador en equipos industriales. Fue seguido por el 6809 que tenía algunas
facilidades extra, por ejemplo, aritmética de 16 bits.
En 1977, Steve Jobs y Steve Wosniak fundan Apple Computer, y la Apple II es
anunciada públicamente. En 1978, Intel produce el 8086, una CPU de 16 bits en un
chip. Este procesador es completamente compatible con el 8080, y también lo fue el
8088, que tenía la misma arquitectura y corría los mismos programas, pero con un bus
de 8 bits en lugar de uno de 16, haciéndolo más lento y barato. En ese año DEC introduce la VAX 11/780, una computadora de 32 bits que se hizo popular para aplicaciones
técnicas y científicas. En 1979, Motorola introduce el procesador 68000 que seria más
adelante el soporte para las computadoras Macintosh, Atari, Amiga y otras computadoras populares. Este procesador no era compatible con el 6800 o el 6809. Es un híbrido
22
entre arquitecturas de 16 y 32 bits, y puede direccionar 16 Mb de memoria. De aquí en
más los procesadores 680 x 0 siguen siendo muy similares desde el punto de vista del
programador, con pocas instrucciones agregadas en cada versión nueva. También en
este año aparecen los videodiscos digitales.
En 1980 se produce la primer computadora portable: la Osborne 1. David Patterson, en
la UC: Berkeley, introduce el concepto de RISC, y junto con Jhon Hennessy, de Stanford,
desarrollan el concepto.
En 1981 se lanza la computadora de arquitectura abierta IBM-PC, y un año mas
tarde se produce el primer “clon” de esta computadora. En la década del 80, fue posible
la Integración a muy alta escala (VLSI – Very Large Sacel Integration) poniendo cientos
de miles (y posteriormente millones) de transistores en un chip.
En 1982, el gobierno de Japón inicia el proyecto de 5ª generación de computadoras,
enfocado en desarrollo de hardware para soporte de inteligencia artificial. La computadora Cray X-MP (dos Cray-1 conectadas en paralelo) muestra ser tres veces más veloz
que una Cray 1. En este año Intel pone a la venta los procesadores 80186 y 80188 que
tenían funcionalidad similar al 8086/88, pero mayores facilidades de entrada y salida.
También sale el procesador 68008 de Motorola idéntico al 68000, pero que usaba un bus
de 8 bits a menor costo. En 1983, el procesador 68010 soluciona algunos problemas del
procesador anterior, introduciendo facilidades para memoria virtual, y podía direccionar 2
Gb de memoria. En 1984, Phillips y Sony introducen el CD-ROM, que provee gran capacidad de almacenamiento para datos digitales. En el mismo año, Motorola introduce el
procesador 68020, que tenía 250.000 transistores. Este era un procesador de 32 bits, con
un bus de 32 bits e instrucciones de multiplicación y división de 32 bits. Este procesador
fue el corazón de las principales estaciones de trabajo científicas y de ingeniería (tales
como las de Sun Microsystems, Apollo y Hewlett-Packard) . La NEC fabrica un chip de
256 Kbits, e IBM un chip de RAM de 1 Mbit. Intel introduce su procesador 80286, que fue
usado principalmente en la IBM PC/AT y en los modelos PS/2, que permitía direccionar
más de 1 Mb de memoria.
En 1985, la computadora Cray alcanza una velocidad de 713 Mflops. Intel introduce
el procesador 80386, con procesamiento de 32 bits y administración de memoria en el
chip. La versión SX era una versión especial del 80286, que fue usado priciplamente en
la IBM PC/AT y en los modelos PS/2, que permitía direccionar más de 1 Mb de memoria.
En 1985, la computadora Cray alcanza una velocidad de 713 Mflops. Intel introduce
el procesador 80386, con procesamiento de 32 bits y administración de memoria en el
chip. La versión SX era una versión especial del 80386 que se podía insertar en un slot
de un 80286 para proveer una mejora parcial de las 80286 existentes. En 1988, Motorola
presenta una serie de microprocesadores RICS de 32 bits 88000. Estos pueden llegar a
velocidades de hasta 17 millones de instrucciones por segundo. En 1989, se introduce el
chip Intel 80486 que tenía 1200.000 transistores. El procesador incluye el coprocesador
de punto flotante, un controlador de memoria y una caché de 8 Kb en el chip. El procesador es de 2 a 4 veces más rápido que el 386, y esta mejor preparado para construir
multiprocesadores. También Cray funda Cray Computer Corporation, y construye la Cray
3 usando chips de Arseniuro de Galio. En 1991, la velocidad de 16 Gigaflops. IBM, Motorola y Apple se unen para construir el procesador Power PC.
23
En 1992,DEC introduce el primer chip que implementa su arquitectura de 64 bits
Alpha. En 1993, Intel introduce el Pentium. El procesador Power PC de Motorola contiene
7 millones de transistores, el Pentium II de Intel contiene aproximadamente 7.5 millones,
y el microprocesador Alpha de Digital contiene casi 10 millones. NEC anunció en 1997
que había desarrollado un chip DRAM de 4 Gigabits. En el 2010 habrá disponibles Terachips (capaces de manejar un trillón de bits o instrucciones). Para lograr tales densidades
hará falta desarrollar elementos que son de 1/10000 de milímetro (aproximadamente el
ancho de una cadena de ADN).
24
CAPÍULO
2
El Chip VLSI
Resumen
L
as aplicaciones de la electrónica hoy en día se caracterizan básicamente por
contar con alto nivel de procesamiento de información y un muy reducido tamaño. Estas dos características han potenciado el desarrollo de nuevas metodologías de diseño y nuevos procesos de fabricación, que han ido de la mano con
políticas de mercadeo y consumo masivo. Este artículo mostrará las tendencias que
se están generando en el campo de la Microelectrónica y su importancia como sector
productivo que deberá ser en países del Tercer Mundo.
CAMPOS DE ACCIÓN DE LA MIRCROELECTRÓNICA
INDUSTRIA MILITAR
APLICACIONES
AUTOMOTRICES
ENTRETENIMIENTO
MICROELECTRÓNICA
TELECOMUNICACIONES
ELECTRÓNICA
INDUSTRIAL
ELECTROMEDICINA
COMPUTADORES
ROBÓTICA
INSTRUMENTACIÓN
Figura 2.1
27
El soporte fundamental del avance tecnológico ha recaido sobre la Microelectrónica, ya que esta ha asumido el manejo de la información cada vez en mayor volumen,
rapidez y eficiencia.
“Ese gran logro, lo concretamente novedoso, llegó solo con la Microelectrónica, pues
gracias a ella fue posible crear por primera vez componentes que reúnen los requisitos
para su adecuada utilización a gran escala:
MANEJO DE INFORMACIÓN
LOGROS
PRODUCCIÓN MASIVA
CONSUMO BAJO DE ENERGÍA
TAMAÑO MUY PEQUEÑO
COMPLEJIDAD
Figura 2.2
• Cuentan con complejidad suficiente para la autonomía en el manejo de la información.
• Es posible producirlos en grandes series a precios convenientes, de modo que
su posesión y utilización no es privilegio de pocos y, en cambio, llega a ser posible para
muchas personas.
• Son tan pequeños y livianos y requieren tan poco energía, que para usarlos ya no
hace falta crear condiciones operativas extraordinarias.” 1
“Hasta la década pasada. Los años 80’s, los llamados países del Tercer Mundo fueron, fundamentalmente, partícipes de esa revolución tecnológica como consumidores de
diversas aplicaciones. Algunas de estas naciones han ido despertando, de forma muy
lenta, de ese aletargamiento en que han permanecido desde tiempo atrás. Han comprendido que deben enfrentar los nuevos retos tecnológicos como componentes activos en el
desarrollo de la Microelectrónica”2
1 ”Los Chips y sus Perspectivas”, Siemens Aktiengesellschaft, Berlín, 1985.
2 “Presente y Futuro de la Microelectrónica”, L.A. Cortés, Ingeniería e Investigación, UN, No. 46,
1999.
28
La tecnología del CI
L
os dispositivos electrónicos de hoy se caracterizan por una alta versatilidad,
baja disipación de potencia, tamaños y volúmenes extremadamente pequeños
y bajo costo en yuxtaposición con el alto grado de sofisticación y complejidad
del componente.
Los niveles de complejidad se han conseguido en la medida en que se han integrado
cada vez un mayor número de transistores dentro de un Circuito Integrado. El comportamiento histórico de los niveles de integración fue predecido por Gordon Moore presidente
de Intel en 1960.3
Número de transistores 1971-2011 - Ley de Moore
16-Core SPARC T3
Six-Core Core i7
Six-Core Xeon 7400
2,600,000,000
Dual Core Itanium 2
AMD K 10
1,000,000,000
POWER6
Itanium 2 with 9MB caché
AMD K10
AMD K8
Pentium 4
Total transistores
8-Core POWER7
Quad-Core z196
Quad-Core Itanium Tukwila
8 Core Xeon Nehalem-EX
Six-Core Opteron 2400
Core i7 (Quad)
Core 2 Duo
Cel
Itanium 2
100,000,000
10-Core Xeon Westmere-Ex
Curva que muestra el
total de transistores
doblandose cada
dos años
10,000,000
Barton
Atom
AMD K7
AMD K6- lll
AMD K6
Pentium lll
Pentium ll
AMD K5
Pentium
80485
1,000,000
80386
80285
100,000
68000
80186
8086
8085
10,000
6800
6809
8080
4004
Z80
MOS 6502
8008
2,300
8088
RCA 1802
1971
1980
1990
2000
2011
Año
Figura 2.3 Ley Moore4
3 “Basic VLSI Design”, D. A. Pucknell, K. Eshraghian, Prentice Hall 1995.
4 www.xataka.com
29
Los niveles de integración han ido creciendo vertiginosamente mientras que el costo
por transistor se ha reducido. Así pues el costo por transistor de un circuito SSI5 en 1965
era del orden de US$10, mientras que el costo por transistor en un procesador Pentium-II
hoy en día es del orden de US$1.0e-5.
El proceso de miniaturización está enmarcado con la tecnología para conseguir transistores más pequeños. El tamaño de los transistores se mide de acuerdo con la longitud
de las líneas que definen su geometría. Hoy en día los mayores niveles de integración se
consiguen con memorias DRAM de 64 Mbytes trabajadas en tecnología de 0.35µm, y se
están anunciando tecnologías de 0.25µm y 0.18µm. No obstante el costo de implementar
un nuevo proceso tecnológico es muy elevado, así por ejemplo el costo de una línea de
fabricación de 1.0µm estaba alrededor de US$100M, mientras que el costo de una línea
de 0.35µm podría estar cerca de US$100000M.6
El proceso tecnológico CMOS en los últimos años, ha sido dominante por su alta
funcionalidad y su relativa efectividad en costos de circuitos VLSI. Este progreso puede
enmarcarse por la aparición de chips en arquitectura RISC con capacidades de hasta 40
MIPS . Las ventajas relativas de esta tecnología estriban en su bajo nivel de disipación
de potencia, tiempos de propagación medios y costo por transistor bajo.
En la próxima década, la tendencia tecnológica primaria en la estructura física continuará hacia la miniaturización de CI’s fabricados en silicio, ya que ello implica circuitos
con mejor desempeño y menores costos. No obstante se está llegando al punto de saturación en la disminución de tamaños, ya que por restricciones físicas de los materiales,
será muy complicado reducir más las geometrías en el proceso de fabricación.
Propagation
delay/gate
10 ns
nMOS
CMOS
1 ns
BiCMOS
ECL
100 ps
GaAs
10 ps
10 µW
100 µW
1 mW
10 mW
100 mW
Power dissipation/gate
Figura 2.4 Evolución de los procesos tecnológicos de fabricación CI
5 SSI : Small Scale Integration. Circuito Integrado de integración a pequeña escala
6 “Trends in CMOS Tecnologies”, C. L. Claeys, Memorias I Workshop IBERCHIP, Cartagena de Indias, 1995.
30
Se están tomando otros caminos que permitan mejorar el desempeño de una tecnología. Esto se está consiguiendo con la tecnología BiCMOS, especialmente en aplicaciones
análogas. En dispositivos de muy alta velocidad (por encima de 100 MIPS), se está explorando la tecnología de Arsenurio de Galio (GaAs). Tambíen se están efectuando trabajos de
investigación en tecnologóias optoelectrónicas y en estructuras de efecto cuántico.
TENDENCIAS DE LOS SERVICIOS DE
INFORMACIÓN EN LA INDUSTRIA
HDTV por
Demanda
Video por
Demanda
Procesamiento
de voz/ Reconocimiento
Inalambricos/ Datos celulares
Comunicaciones
Comunicación
de Datos
Aplicaciones de
Multimedia
Computadores
Principales
1970
Aplicaciones de
Multimedia
Computadores
Portatiles
Computadores
Personales
1980
Redes de
Computadores
1990
2000
2010
2020
Figura 2.5 Tendencias de la información
Clasificación de los CI
E
n términos generales los CI se clasifican en dos grandes bloques: Circuitos Integrados
de Función Fija y Circuitos Integrados de Aplicación Específica (ASIC’s). Hoy en día el
diseño requiere ser personalizado para garantizar la integralidad de la aplicación y evitar
su copia, esta es la razón por la cual los ASIC adquieren cada vez mayor importancia.
ASIC
Sobre medidas
Celdas Estándar
Arreglo de
compuertas
PIC
PLD
FPGA
Figura 2.6 Clasificación de los ASIC´S
31
Los circuitos de función fija – en ocasiones llamados componentes discretos – incluyen Memorias, Microprocesadores y elementos de propósito general, los cuales han sido
desarrollados por empresas de gran capacidad tecnológica y económica.7
Un ASIC es un circuito integrado cuya función será definida de acuerdo a unas necesidades particulares y surge como solución de diseño a un problema específico. Se
caracteriza por: reducción de costos, protección contra copia, funcionalidad adecuada y
peculiaridad propia.
Circuitos sobre-medidas
S
e realiza el diseño en la etapa de más bajo nivel, permitiendo manejar estructuras a nivel de transistores, consiguiéndose un alto nivel de flexibilidad pero
con elevados tiempos de desarrollo. Una variedad de esta clase de circuitos la
constituyen los circuitos Semi-Custom, en donde el fabricante le suministra al
diseñador algunas librerías con celdas o estructuras básicas, facilitando el trabajo del
diseñador.
El diseño de este tipo de circuitos requiere de herramientas CAD, las cuales permiten al
diseñador implementar la aplicación a partir de los dibujos geométricos de la configuración
deseada. Normalmente estas herramientas conocidas como “Compiladores de Silicio” se configuran de acuerdo con el proceso tecnológico de fabricación, es decir que tengan en cuenta las
restricciones de tamaños y las características y parámetros de los transistores básicos.
Celdas Estándar
E
n esta tipología el diseñador dispone de una librería de celdas o módulos que
realizan funciones básicas y que ya han sido probadas y caracterizadas por el
fabricante de la tecnología. Los módulos básicos o celdas lo constituyen algunas
compuertas lógicas, flip-flops y registros entre otros, diseñados de manera que
puedan ser ubicados en forma regular dentro del Chip. El diseñador realiza su trabajo
en mucho menor tiempo, no obstante requerir de herramientas tipo CAD para generar las
geometrías y realizar la comprobación funcional del diseño.
7 “Circuitos Integrados de Aplicación Específica”, L.A. Cortés, Ingeniería e Investigación, UN, No. 47, 1999
32
Arreglos de Compuertas
En esta tecnología se encuentran pre-fundidas estructuras básicas y el usuario lo que
realiza es definir las máscaras de interconexión de dichas estructuras. De esta manera un
solo chip cuenta con cientos de celdas idénticas, siendo cada una de ellas capaz de realizar una función lógica simple. Las celdas están dispuestas según un esquema regular,
por ejemplo en forma de filas. Entre las filas están previstos canales de conexión dentro
de los cuales podrán ser colocadas líneas de metal.
Circuitos Programables (PIC)
Esta variedad de ASIC’s se basa en la característica de su reconfiguración en sitio
para conseguir una aplicación determinada. Dentro de los principales dispositivos con
esta característica se destacan:
PLD
El Dispositivo de Lógica Programable contiene una gran cantidad de compuertas que
se encuentran interconectadas en el chip. Muchas de las conexiones se han dejado libres
para que sean programadas por el usuario con el fin de definir una función lógica. Están
orientados hacia la síntesis de máquinas de estado, contando en general con reducido
número de módulos programables complejos y conexiones programables centralizadas.
Las arquitecturas de los PLD’s pueden variar desde las memorias PROM (Programmable Read Only Memory) hasta los FPC’s (Fuse Programmable Controllers), pasando
por PLA’s (Programmable Logic Arrays) o FPLA’s (Field Programmable Logic Arrays),
PAL’s (Programmable Array Logic) combiancionales y secuenciales, GAL (Generic Array
Logic) y PLS (Programmable Logic Secuencers), entre otros.
FPGA
La versión más compleja de los dispositivos programables la constituyen los FPGA
(Field Programmable Gate Array), los cuales están constituidos por bloques lógicos configurables, cuya función es programable y el conjunto de conexiones también. De esta
forma se puede realizar la interconexión de los distintos bloques e interfaces de entrada/
salida para el intercambio de señales con el medio externo. Se destacan tres características importantes: número elevado de módulos programables simples, conexiones configurables distribuidas y orientación hacia el diseño jerárquico.
33
EL CHIP VLSI EN EL AÑO 2005
Tamaño mínimo del proceso tecnológico
0.1µm
Número total de transistores
200 Millones
Número de compuertas lógicas
40 Millones
Tamaño del chip
520mm²
Frecuencia de reloj
2.0 - 3.5 GHz
Número de conexiones l/O
4000
Número de capas de alambrado
7-8
Tensión de alimentación
0.9 - 1.2V
Corriente de alimentación
~160 A
Potencia disipada
160W
Figura 2.7 Características de los CI en el año 2005
1947
1950
1961
1966
Invención del
transistor
Componentes
discretos
SSI
MSI
Aproximación
del número de
transistores por
chip utilizados
en productos
comerciales
1
1
10
10-1000
Productos típicos
-
Junturas Transistores y
diodos
Fuentes estables
Puertas lógicas
FLIP-FLOPS
Contadores
Múltiplex
Sumadores
AÑO
1971
1980
1990
2000
Tecnología
LSI
VLSI
ULSI*
GSI
Aproximación
del número de
transistores por
chip utilizados
en productos
comerciales
1000-20000
20000-1000000
100000010000000
>10000000
Productos típicos
Microprocesador
de 8 bits
Rom
Ram
Microprocesador
es de 16 y 32 bits.
Sofisticados
PERIPHEARLS
GHM DRAM
Procesadores especiales, maquinas de
realidad virtual, sensores smart.
AÑO
Tecnología
34
AÑO
Transistores
por cm²
Tamaño del Chip
1999
2001
2003
2006
2009
2012
0.14 µm
0.12 µm
0.10 µm
0.07 µm
0.05 µm
0.035 µm
14
Millones
16
Millones
24
Millones
40
Millones
64
Millones
100
Millones
800mm²
850mm²
900mm²
1000mm² 1100mm²
1300mm²
Figura 2.8 Tendencias de integración
Procesadores Modernos
La ley de Moore.
E
n abril de 1965 la revista Electronics produjo un suplemento especial para
celebrar sus 35 años y en uno de sus artículos Gordon Moore describió las expectativas de la naciente tecnología de los circuitos integrados. Para ese entonces los circuitos integrados estaban limitados a 30 transistores, pero Moore
y su equipo de trabajo estaban desarrollando un nuevo producto con 60. Balanceando
innovación y factores económicos, Moore concluyó que el número de dispositivos en un
IC pudiera doblarse cada año durante la década siguiente. En 1975 esta cifra se cambió
a 24 meses para compensar por la creciente complejidad de los circuitos integrados y
hacia finales de los 80 se cambió de nuevo a 18 meses. La ley Moore representa el
crecimiento exponencial de la capacidad de procesamiento digital con un mejoramiento
continuo de la relación entre precio y desempeño de los circuitos integrados (Figura 1).
Es importante adicionar que en la medida que los procesadores son más complejos,
su frecuencia de operación también se incrementa. Como un corolario a la ley de Moore
se puede adicionar el que la frecuencia de los procesadores de punta se duplica cada dos
años . Esta curva ha sido un poco más accidentada pues inicialmente se incremento muy
rápidamente, luego se saturó temporalmente pero con la transición de NMOS a CMOS ha
llegado al nivel mencionado (Figura 2.9).
35
10000
FRECUENCIA (MHz)
1000
Duplica cada 2 años
P6
100
486
10
8085
8086
286
Pentium ® proc
386
8080
1
8008
4004
0.1
1970
1980
1990
2000
2010
AÑO
Figura 2.9 Incrementos en frecuencia de operación - Referencia: www.intel.com
Ahora desde el punto de vista del consumo de potencia de los procesadores es claro
que nos aproximamos a un callejón sin salida. La potencia consumida por un transistor
en un circuito integrado es de la forma:
P A .V
1 . . 2.
CV f
2
Donde A es una constante, V es el voltaje aplicado al transistor, C es su capacidad y f
su frecuencia de operación. Intel ha reconocido éste tópico como uno de los obstáculos
más críticos para el desarrollo de los procesadores digitales del futuro (Figura 2.10).
Potencia para 1cm² de chip (Watts)
Extrapolación de Potencia
Superficie solar
10,000
Chorro de cohete
1,000
Reactor nuclear
100
10
4004
8008
1
‘70
8008
8086 Plato caliente
8085
286
‘80
386
486
‘90
Procesadores
Pentium
‘00
Figura 2.10 Extrapolación del consumo de procesadores.
36
‘10
Es claro que el consumo de potencia de los procesadores se incrementa de manera
exponencial debido no sólo al voltaje de operación de sus transistores sino también al
incremento de las corrientes de fugas a través del dieléctrico de la compuerta y a la corriente de fuga entre drenaje y fuente aún cuando el transistor está apagado. Como lo
definen los científicos de Intel:
“Si no se hace nada, el consumo de potencia estará fuera de control y la ley de Moore
no será posible. CPU´s futuras no serán posibles”.
Cómo continuar la ley de Moore
H
ay dos métodos bien conocidos para reducir el consumo de potencia de un
procesador dado:
• Reducción de la actividad del procesador, por medio de ‘clock gating’ en
que ciertas secciones del procesador tienen su reloj de control habilitada por
una señal de control únicamente cuando esta sección está operando. Esta técnica se
implementa cuando un cierto bloque es inactivo por un cierto número de ciclos de reloj.
3.100
1.40
3.000
1.20
2.900
1.00
2.800
0.80
2.700
0.60
2.600
0.40
2.500
0.20
2.400
0.96
0.98
1
1.02
1.04
1.06
Pot. Estática (W)
Pot. Dinámica (W)
• Cómo el consumo de potencia es función del cuadrado del voltaje (Figura 2.11) hay
dos maneras de implementar reducciones de consumo llamadas estáticas y dinámicas.
1.08
Vdsp
Medio
Correlación V²
Estática
Figura 2.11 Consumo de potencia
37
El método estático utiliza diferentes fuentes de alimentación en que las cargas críticas
(rápidas) se alimentan con voltajes altos mientras que las cargas no críticas se alimentan con
un voltaje más bajo. Esta solución tiene un número de inconvenientes y no es muy práctica.
Con el método dinámico los procesadores son diseñados para lograr su máximo desempeño con el máximo voltaje de operación. Si los requerimientos no son los máximos,
el control del procesador puede reducir el voltaje de operación y su frecuencia con su
consecuente reducción de consumo.
Si se reduce el voltaje de operación de los procesadores es necesario reducir su
voltaje de umbral para garantizar que su desempeño siga siendo bueno o mejore con
respecto a tecnologías previas (overdrive). Sin embargo, al hacer esto se incrementa
exponencialmente la corriente de fuga por debajo del voltaje de umbral de los transistores. Esto afecta el margen de ruido de los dispostivos, su consumo de potencia y puede
generar problemas de estabilidad.
Para solucionar este tipo de problemas existe una actividad de desarrollo marcada a
nivel de diseñadores de semiconductores para reducir el consumo de los futuros procesadores8. Es claro que en el futuro la longitud de la compuerta de un transistor CMOS que
indica que tan pequeño es pasará de 50 a 10 nm. Un canal más corto implica un transistor
más rápido porque los portadores tienen una distancia más corta para recorrer. Sin embargo al mismo tiempo es más difícil para la compuerta controlar el canal, porque el voltaje
en el drenaje reduce la barrera de energía en el canal, reduciendo el voltaje de umbral y
liberando portadores aún con la compuerta apagada.
Para lograr este tamaño su diseño tendrá varios cambios:
• Para mejorar su desempeño el silicio se mezclará con otro semiconductor como
germanio para producir una estructura cristalina más espaciosa que permita a los portadores moverse más rápido.
• Para reducir la fuga de corriente que incrementa el consumo los óxidos utilizados
en la compuerta de los transistores será reemplazada con un material que tenga más de
ocho veces la constante dieléctrica del dióxido de silicio.
• Para mejorar el control de los estados de encendido y apagado las compuertas
serán de metal, en lugar de polisilicio.
• Para mejorar el control del transistor y reducir su consumo se utilizarán dos compuertas.
Una vez se implementen estos nuevos desarrollos se presentará una reducción adicional en los voltajes de operación de los procesadores (Fig. 2.12).
8
38
Las memorias incluyen una presentación de Intel a este respecto.
Figura 2.12 Variación de la tensión de alimentación
Expectativas para el futuro
L
as expectativas futuras en el desarrollo de semiconductores se han resumido
en el International Technology Roadmap for Semiconductors, publicada por la
Semiconductor Industry Association donde se espera que para el año 2016 los
circuitos integrados contengan más de 8.8 billones de transistores en un área
de 280mm². Se espera adicionalmente una reducción masiva de la longitud del canal
de los transistores utilizados (Figura 2.13), así como en los voltajes de operación de
los procesadores (Tablas 2.14 y 2.15)
ITRS Roadmap Acceleration Continues... Gate Length
Technology Node - DRAM Half - Pitch (nm)
1000
2001 MPU Printed Gate Length
2001 MPU Physical Gate Length
1999 ITRS MPU Gate
Length
100
2-year Cycle
3-year Cycle
10
1995
1998
2001
2004
2007
2010
2013
2016
Year of Production
Figura 2.13 Longitud del canal del MOSFET
39
Fuentes de alimentación y disipación de potencia - mediano plazo
Año de producción
2001
DRAM �
130
espaciamiento (nm)
MPU/ASIC �
150
espaciamiento (nm)
MPU longitud física de
65
la cpmpuerta (µm)
Tensión de Alimentación (V)
Vdd (Alto rendimiento)
1.1
Máxima potencia permitida
Alto rendimiento con
disipador
Costo- rendimiento
(W)
Batería (W)
2002
2003
2004
2005
2006
2007
115
100
90
80
70
65
130
107
90
80
70
65
53
45
37
32
28
25
1.0
1.0
1
0.9
0.9
0.7
130
140
150
160
170
180
190
61
75
81
85
92
98
104
2.4
2.6
2.8
3.2
3.2
3.5
3.5
Figura 2.14
Fuentes de alimentación y disipación de potencia - mediano plazo
Año de producción
DRAM � espaciamiento (nm)
MPU/ASIC � espaciamiento (nm)
MPU longitud física de la cpmpuerta
(µm)
Tensión de Alimentación (V)
Vdd (Alto rendimiento)
Máxima potencia permitida
Alto rendimiento con disipador
Costo- rendimiento (W)
Batería (W)
2010
45
45
2013
32
32
2016
22
22
18
13
9
0.6
0.5
0.4
218
120
3.0
251
138
3.0
288
158
3.0
Figura 2.15
Implicaciones de los futuros voltajes en
las fuentes de alimentación
E
n general los conversores estudiados hasta el momento no presentan las características de desempeño adecuadas para soportar los bajos voltajes de
operación requeridos por los procesadores futuros. Hoy en día se discute algunos de los puntos más críticos (que afectarán la especificación de las fuentes de alimentación) así como algunas de las variaciones topológicas que se requieren
para lograr un desempeño adecuado a bajos voltajes.
40
CAPÍULO
3
Juntura PN
Introducción
L
a mayor parte de los dispositivos electrónicos modernos están fabricados a
partir de semiconductores. Para comprender el funcionamiento de estos dispositivos cuando se insertan en un circuito eléctrico, es necesario conocer el
comportamiento de los componentes desde un punto de vista físico. Por ello, en
este tema se presentan las propiedades y características fundamentales de este tipo
de materiales.
Si los conductores son materiales que disponen de electrones libres y los aislantes
carecen de ellos, los semiconductores se encuentran en una situación intermedia: a la
temperatura de 0°K se comportan como aislantes, pero mediante una aportación de energía puede modificarse esta situación, adquiriendo un comportamiento más cercano al de
los conductores.
Los materiales semiconductores de uso común en la tecnología microelectrónica son
el silicio, el germanio y el arseniuro de galio. Se trata de elementos del grupo IV de la
tabla periódica, o bien combinaciones de elementos de los grupos III y V. De todos ellos
el más empleado actualmente es el silicio, por lo que la discusión en este tema va a estar
centrada en dicho elemento.
Junturas tipo P-N
L
as junturas son uniones entre materiales. Las mismas pueden realizarse entre
semiconductores de diferentes características (juntura PN), entre semiconductores y metales (juntura metal-semiconductor) o entre semiconductores, metales y aislantes (juntura metal-aislante-semiconductor). Las junturas constituyen
las estructuras básicas de cualquier dispositivo electrónico discreto, formado por un
dispositivo único, o de un circuito integrado formado por miles de dispositivos interconectados sobre un mismo chip. La figura 1 muestra los diferentes tipos de junturas que
se utilizan en el desarrollo de los dispositivos electrónicos de uso corriente.
Los semiconductores son sustancias que se encuentran entre los buenos conductores de la electricidad y los aisladores, estos pertenecen al grupo IV de la tabla periódica,
como el Germanio (Ge) y el Silicio (Si) que tienen cuatro electrones en su último nivel
los cuales se comparten con los electrones de cuatro átomos vecinos para formar la red
cristalina mediante un enlace covalente. Si a esa muestra de semiconductor, descrita
43
anteriormente, le añadimos impurezas de elementos del grupo V como por ejemplo el
Arsénico (As) que tiene cinco electrones en su último nivel, aparecen solamente cuatro
electrones compartidos con los electrones del semiconductor, quedando un electrón sin
compartir que incrementa por los electrones de conducción, que hacen posible la conducción de la corriente a través de él, formándose así el semiconductor de tipo N (figura
3.2), en el cual los portadores mayoritarios son los electrones (cargas negativas) y los
minoritarios los huecos (cargas positivas).
Tipos de junturas
Semiconductor- Semiconductor
Homojunturas
Metal- Semiconductor
Metal- Aislante- Semiconductor
Heterojuntura
Uniones de diferentes
Uniones del mismo material
Diodo Schottky
Capacitor MIS
Transistor de efecto de campo de
puerta aislada MOSFET
Diodo Schottky
Una sola
Más de una juntura
Diodo rectificador
Diodos
Diodo túnel
Diodo Zener
Estructura CMOS
Transistores
Diodo varicap
Fotodiodo
Diodo emisor de luz
Diodos de microondas
Transistor bipolar de unión BJT
Transistor de efecto de campo de juntura JFET
Rectificador Controlador de Silicio SCR
Transistor bipolar de puerta aislada IGBT
Otros
Figura 3.1 Tipos de junturas
Electrones de
valencia
+4
+4
+4
Electrón donado por
impureza atómica
Átomo Pentavalente
+4
+5
+4
Átomos de
Silicio
Bandas de
Conducción
+4
+4
+4
Figura 3.2 Estructura de Si dopado
44
Por otro lado si a la muestra de semiconductor le añadimos impurezas de elementos
que por ejemplo se encuentran en el grupo III de la tabla periódica como el aluminio que
tiene en su último nivel tres electrones, estos pueden compartirse solamente con tres
del semiconductor quedando un espacio vacío o hueco (carga positiva), haciendo esta
impureza que los huecos sean los portadores mayoritarios y los electrones portadores
minoritarios, para finalmente formar así el semiconductor del tipo P (figura 3.3).
Electrones de
valencia
+4
+4
+4
Átomo del grupo lll
(Aceptor)
Hueco
generado
+4
+3
Átomos de
Silicio
+4
Bandas de
Conducción
+4
+4
+4
Figura 3.3 Estructura de Si dopado
Cuando unimos un semiconductor del tipo P con uno N se forma una juntura P-N que
es la base de construcción de un diodo semiconductor (figura 3.4).
Contacto
Metálico
Contacto
Metálico
Ánodo
SILICIO
TIPO N
SILICIO
TIPO P
Cátodo
Figura 3.4 Juntura PN
Este componente es importantísimo en la electrónica ya que permite el paso de la corriente en un solo sentido, funcionando como interruptor en el cual no hay movimientos mecánicos
ni desgaste por fricción, dado todo el funcionamiento se realiza de manera electrónica.
45
Silicio Monocristalino
El silicio es un elemento con una gran cantidad de aplicaciones. Es el segundo elemento más abundante en la corteza terrestre (después del oxígeno) con un porcentaje en
peso del 25,7%. Está presente en multitud de materiales, tan diversos como la arena, la
arcilla, el vidrio o el hueso. El silicio puro no se encuentra en la naturaleza, pero bajo las
condiciones adecuadas pueden obtenerse en forma de estructuras monocristalinas. En
éstas los átomos se disponen según una red tipo diamante con simetría cúbica, en donde
cada átomo forma enlaces covalentes con otros cuatro adyacentes. Así todos los átomos
tienen la última órbita completa con ocho electrones (Figura 3.5).
En la figura 3.5 se aprecia que todos los electrones de valencia están asociados a un
enlace covalente. Por tanto, al no existir portadores libres, el silicio puro y monocristalino
a 0°K se comporta como un material aislante.
Electrones de
valencia
+4
+4
+4
Hueco
generado
+4
+4
+4
Átomos de
Silicio
Bandas de
Conducción
+4
+4
+4
Figura 3.5 Estructura Si mono cristalino
Semiconductores Tipo N
Cuando las impurezas añadidas son predominantemente del grupo V-A de la tabla
periódica (fósforo (P), arsénico (As), antimonio (Sb)), el semiconductor se denomina tipo
N (los átomos de este grupo poseen en su última capa 5 electrones) y las impurezas se
denominan donantes. Así por ejemplo, si un átomo de Si, por ejemplo, es sustituido por
un átomo de As, tras formar los 4 enlaces covalentes con los 4 átomos de Si vecinos, queda un electrón del átomo de As sin emparejar y por lo tanto tan débilmente ligado al átomo
de As, que a temperatura poco por encima de 0°K quedará libre, es decir, ocupando un
nivel de la banda de conducción (BC). Como esto ocurrirá con cada átomo de impureza
de As, en la BC tendremos, además de los electrones debidos a la generación de pares,
un electrón por cada átomo de impureza donante, o sea, que tendremos más electrones
en la BC que huecos: n>p. Así pues, los portadores mayoritarios son los electrones y los
minoritarios son los huecos. En la práctica, en los semiconductores tipo N los electrones
46
de la BC son en su mayoría donados por los átomos de impureza donante, hasta el punto
que se puede suponer que n≈N_d, siendo N_d la densidad de impurezas donantes (número de átomos de impureza en 1cm3).
Semiconductores Tipo P
Cuando las impurezas añadidas son predominantemente del grupo III-A de la tabla periódica (aluminio (Al), galio (Ga), indio (In)), el semiconductor se denomina tipo P (los átomos de
este grupo poseen en su última capa 3 electrones) y las impurezas se denominan aceptantes.
Así por ejemplo, si un átomo de Si es sustituido por un átomo de Ga, tras formar los 4 enlaces
covalentes con los 4 átomos de Si vecinos, queda un enlace sin completar. A temperatura
poco por encima de 0°K lo ocupará un electrón de la banda de valencia (BV), que dejará un
hueco en la BV. Como esto ocurrirá con cada átomo de impureza de Ga, en la BV tendremos,
además de los huecos debidos a la generación de pares, un hueco por cada átomo de impureza aceptante, o sea, que tendremos más huecos en la BV que electrones en la BC: p>n. Así
pues, los portadores mayoritarios son los huecos y los minoritarios son los electrones. En la
práctica, en los semiconductores tipo P, los huecos son en su mayoría debidos a los átomos
de impureza aceptante, hasta el punto que se puede suponer que p≈N_a, siendo N_a la
densidad de impurezas aceptantes (número de átomos de impureza por cm3).
Como hemos dicho la tasa de generación de pares, ∝(T), (número de pares electrónhueco generados por unidad de tiempo) es únicamente dependiente de la temperatura. El
proceso antagonista, la recombinación o aniquilación de pares, es probabilística y por lo
tanto la tasa de pares electrón-hueco aniquilados por unidad de tiempo, será proporcional
al producto n*p. Cuando ambos mecanismos estén equilibrados n*p=∝(T), con independencia del grado de impurificación. Por lo tanto, para un semiconductor intrínseco o puro,
2
se verificará que ni =∝ (T ) ; y finalmente de las dos relaciones anteriores se deduce la
llamada ley de acción de masas:
(1.1)
n * p = ni2
Así pues, para un semiconductor tipo N real, se puede considerar que n ≈ N d y por la
2
ecuación 1.1, p ≈ ni / N d y naturalmente n  p ; igualmente, para un semiconductor tipo
2
P, p ≈ N a y n ≈ ni / N a y n  p .
Formación de una juntura PN - Diodo
Una juntura PN o diodo semiconductor, se forma cuando se ponen en contacto regiones de tipo P y de tipo N de un mismo material semiconductor (homojuntura) o de materiales semiconductores diferentes (heterojunturas), Figura 3.6.
Región tipo P
Región tipo N
p
n
Contacto y
electrodo
Unión metalúrgica
Figura 3.6 Juntura típica
47
La interface que separa las regiones P y N se denomina unión metalúrgica. En realidad, este contacto no puede ser realizado colocando en forma adyacente un material
con otro debido a la discontinuidad que se produciría. Según la forma en que se realiza la
transición desde la región P a la región N, las junturas pueden clasificarse en: abruptas y
graduales. La juntura abrupta es aquella en la cual la transición se realiza en una distancia muy corta. Para la juntura gradual la distancia es mayor.
Generalmente, la juntura PN se obtiene cambiando el dopaje del material de tipo N a
tipo P (o viceversa) por diferentes procesos: el proceso de difusión durante el crecimiento
de la muestra cristalina o el proceso de implantación iónica.
En el proceso de difusión (Figura 3.7) se calienta el silicio a una temperatura muy
alta en una atmósfera que contiene el compuesto del elemento que ha de agregarse, por
ejemplo Boro, para crear un dopaje tipo P. A temperaturas altas el Boro se descompone
y se deposita sobre el silicio. Algunos átomos se difunden sobre la superficie sustituyendo
átomos de silicio, moviéndose hacia el interior del cristal. Cuando se enfría se forma una
delgada capa de silicio de tipo P cuya profundidad puede controlarse variando el tiempo,
la temperatura (900ºC - 1100ºC) y la atmósfera para la difusión.
En la implantación de iones (Figura 3.8) se utiliza un haz de iones de energía muy alta
(30k - 100keV) que bombardea directamente el cristal. El potencial de aceleración controla la profundidad de implantación. Este método proporciona un mejor control de la distribución del contaminante y en general, se emplea para producir uniones poco profundas.
La distribución del contaminante en función de la profundidad recibe el nombre de
perfil de contaminación.
T ~ 900˚C -
Flujo de gas con compuesto
de Boro
Oblea de Silicio
Figura 3.7 Proceso de difusión
Haz de iones B+
de alta energía
Cámara de vacío
Oblea de Silicio
Figura 3.8 Implantación iónica
48
Principio básico de operación
La Figura 3.9 muestra un esquema de la juntura PN y de la concentración de impurezas
en las regiones P y N, para el caso de una juntura abrupta uniformemente dopada. Inicialmente, al ponerse en contacto los materiales y sin polarización externa aplicada, en la zona
de unión metalúrgica hay un gradiente de concentración de electrones y huecos.
Los electrones, portadores mayoritarios en la región N tenderán a difundirse hacia la
región P, y los huecos, portadores mayoritarios en la región P se difundirán hacia la región
N. Sin embargo, este proceso no puede continuar en forma indefinida. Cuando los electrones se difunden hacia la región P dejan átomos donadores cargados positivamente.
Del mismo modo, los huecos que se difunden hacia la región N dejan átomos aceptores
cargados negativamente.
P
N
NA
ND
Difusión de huecos
Difusión de electrones
x
x=0
Figura 3.9 Esquema de juntura PN, uniformemente dopado
La diferencia de carga neta positiva y negativa induce un campo eléctrico en la región
cercana de la unión y dirigido desde la carga positiva hacia la negativa, es decir, desde la
región N a la región P, figura 3.10.
Impurezas ionizadas (NA)
Impurezas ionizadas (ND)
Región P neutra
Región N neutra
P
N
Región de carga
Fuerza de difusión
sobre los huecos
Fuerza de difusión sobre los
electrones
Campo eléctrico
Componente de
deriva sobre los
huecos
Componente de
deriva sobre los
electrones
Figura 3.10 Distribución de portadores
La región en la cual se produce el campo eléctrico se denomina región de carga espacial. Los electrones y los huecos son barridos por el campo eléctrico hacia afuera de la
región de carga espacial, dejando esta zona desprovista de portadores móviles, y por ello
se le denomina zona o región de agotamiento.
49
Puede considerarse que el gradiente de concentración en los bordes de la región de
carga espacial produce una fuerza de difusión sobre los portadores. El campo eléctrico E
en esta región produce una fuerza de deriva sobre los portadores opuesta a la fuerza de
difusión, de modo que en el equilibrio las dos fuerzas tenderán a equilibrarse provocando
que, sin polarización externa, la corriente neta que circula sea nula, y el nivel de Fermi
sea continuo en todo el sistema. Lo anterior puede expresarse a través de las siguientes
relaciones para huecos y electrones respectivamente, y del diagrama de bandas de energía resultante de la unión en equilibrio, Figura 3.11.
dp 
dn 


J p = q  µ p pE − D p  = 0 J n = q  µn nE + Dn  = 0
dx 
dx 


P
Ec
N
e
EFi
(1.2)
q Vbi
Ec
(EF - EFi)P
EF
EF
EV
(EF - EFi)N
h
EFi
q Vbi
EV
Figura 3.11 Diagrama de bandas de energía
Las bandas de conducción y de valencia se curvan en la región de carga espacial porque
hay un cambio en la posición del nivel de Fermi intrínseco entre las regiones P y N.
Los electrones en la banda de conducción de la región N ven una barrera de potencial
de altura (q Vbi) cuando tratan de moverse hacia la banda de conducción de la región P.
Lo mismo ocurre con los huecos en la banda de valencia. La altura de esta barrera de
energía potencial es igual a la suma de las diferencias entre el nivel de Fermi respecto al
nivel intrínseco en cada región (P y N). El potencial de la barrera se denomina potencial
de contacto Vbi (built-in potential barrier) y está dado por:
Vbi =
kT  N A N D 
ln 

q  ni2 
(1.3)
N_D y N_A son las concentraciones de impurezas en las zonas N y P respectivamente.
Análisis de la región de carga espacial: aproximación de vaciamiento
El principio físico que gobierna el comportamiento eléctrico en la región de carga espacial es el teorema de Gauss que relaciona el campo eléctrico con la concentración de
carga espacial. Para un tratamiento unidimensional queda expresado por:
50
dE ρ
=
dx ε
(1.4)
Donde E es el campo eléctrico, ρ la concentración de carga espacial y ε es la permisividad dieléctrica del material semiconductor. El teorema de Gauss en la región de carga
espacial puede expresarse como:
dE q ( N D − N A )
≅
dx
ε
(1.5)
porque en esta zona la carga de las impurezas inmóviles ( N A , N D ) domina la concentración de carga. Como el campo eléctrico se relaciona con el potencial en la forma:
E ( x) = −
dV
dx
(1.6)
resulta la forma conocida como ecuación de Poisson:
q ( ND − N A )
ρ
d 2V
=− =−
2
ε
ε
dx
(1.7)
Para poder calcular las distribuciones de carga, campo eléctrico y potencial en la región de carga espacial suele utilizarse la aproximación de vaciamiento. Esta aproximación
se basa en la hipótesis de que toda la capa de carga espacial está desprovista de portadores de carga móvil, es decir, huecos y electrones, de modo que la carga en esta zona
está determinada solamente por la distribución de impurezas. La Figura 3.12 compara la
distribución real en la zona de carga espacial y la resultante de aplicar la aproximación
de vaciamiento, para un caso general. Con esta aproximación hay una región de carga
negativa debida a aceptores ionizados que se extiende desde la zona de unión hasta el
punto xp en el lado P, y una región de carga positiva debida a donadores ionizados que
se extiende desde el punto de unión hasta el punto xn sobre el lado N. El ancho total de
la región de carga espacial w estará dado por w=xp+xn. Además la carga total, negativa
y positiva, tienen la misma magnitud de modo que se cumple:
xp N A = xn N D
Distribución real
q ND
Aproximación de vaciamiento
0
-xp
xn
x
w
-q NA
Figura 3.12 Distribución de cargas
51
Cálculo de campo eléctrico máximo y ancho de la región de
agotamiento
Se aplicará la aproximación de vaciamiento al caso mostrado en la Figura 3.13. Se
debe tener en cuenta que siempre se cumple xp N A = xn N D . La carga negativa en la mitad izquierda de la región de agotamiento es igual a la carga positiva de la mitad derecha
(neutralidad de carga).
Como puede verse de la Figura 3.13, se tiene:
ρ (x)=0
ρ (x)=-qN_A
ρ (x)=qN_D
ρ (x)=0
para - ∝ <x<-xp
para -xp<x<0
para
0<x<xn
para
xn<x< ∝
+q ND xn
x
-xp
xn
x
-q NA xp
0
x
E
x
Emáx
V
Vbi
x
Figura 3.13 Campo eléctrico
Se quiere encontrar una expresión para la altura de la barrera de potencial Vbi, el campo
eléctrico máximo Emáx y el ancho de la región de carga espacial o de agotamiento w. El campo
eléctrico se puede hallar aplicando el teorema de Gauss a la distribución de carga espacial.
Se quiere encontrar una expresión para la altura de la barrera de potencial Vbi, el campo
eléctrico máximo Emáx y el ancho de la región de carga espacial o de agotamiento w. El campo
eléctrico se puede hallar aplicando el teorema de Gauss a la distribución de carga espacial.
dE ρ
=
dx ε
52
(1.8)
Integrando esta ecuación se obtiene una expresión para el campo eléctrico sujeta a
las condiciones de contorno. El campo eléctrico debe anularse en x=-xp y x=xn, porque
en estos puntos se definen los límites de la región de agotamiento.
Si nos basamos en la definición de integral de una función, como el área debajo de la
curva definida por ésta, obtenemos directamente que el campo eléctrico resulta dado por
el área de un rectángulo. Aplicando lo anterior para x<0 y considerando un x cualquiera:
E (x ) = −
Donde:
qN A
∆x
ε
(1.9)
(1.10)
∆x = x − ( −xp )
El campo aumentará linealmente con ∆x llegando al valor máximo (Emáx) en el punto
x=0 (∆x=xp), resultando:
Emáx = −
qN A
xp
ε
(1.11)
Cumpliendo con la condición de neutralidad de carga:
qN
qN
Emáx = − A xp = − D xn
ε
ε
(1.12)
Para x>0 el campo eléctrico disminuye pues debe anularse en x=xn. Para calcular
la altura de la barrera de potencial se considera la relación entre el campo eléctrico y el
potencial dado por:
E =−
dV
dx
(1.13)
Aplicando un criterio similar al anterior para calcular la integral, resulta que la altura
de la barrera de potencial Vbi es aproximadamente igual al valor, cambiado de signo, del
área del triángulo que corresponde al campo eléctrico:
1
2
1
2
(1.14)
1 

N D 
(1.15)
Vbi = − Emáx ( xn + xp ) = − Emáx *w
Operando con las ecuaciones anteriores:
w=
2ε
q
Emáx = −
 1
Vbi 
2q
ε
NA
Vbi
+
1
 1
1 
+


 NA ND 
(1.16)
53
Unión en equilibrio
Naturalmente suponemos que cada uno de los bloques está inicialmente descargado
(carga neta cero). Por lo tanto entre ambos bloques no hay inicialmente diferencia de potencial. En el bloque N tenemos abundancia relativa de electrones libres (-), con niveles
de energía de la BC (portadores mayoritarios en N) y escasez de huecos (+), (portadores
minoritarios en N). Análogamente en el bloque P abundan los huecos (+) (mayoritarios en
P), y escasean los electrones libres (-) (minoritarios en P). Por lo dicho, tiende a producirse un fenómeno de tipo no eléctrico sino termodinámico, consistente en la difusión de
electrones desde donde abundan (bloque N) hacia donde escasean (bloque P), y análogamente se difundirían los huecos desde el bloque P al bloque N. Por sí sola la difusión
daría lugar a una intensidad de corriente (corriente de difusión) I D , en el sentido de P
hacia N (Figura 3.14).
En cuanto hayan transcurrido unos instantes y se haya difundido una cierta cantidad
de portadores, según lo explicado antes, el bloque N, que ha perdido electrones y ha
ganado huecos, va cargándose positivamente y, de la misma forma, el bloque P, que ha
perdido huecos y ganado electrones, va cargándose negativamente. Por consiguiente,
aparece una diferencia de potencial entre N y P de manera que N queda con mayor poCorriente de difusión ID
P
Corriente de arrastre IA
N
+
-
P
-
+
N
+
Figura 3.14 Corriente de difusión y arrastre
tencial respecto a P. Adicionalmente, esta diferencia de potencial producirá un arrastre
de cargas negativas (electrones libres) de P hacia N y positivas (huecos) de N hacia P. Es
decir, tiende a producirse una intensidad de corriente de arrastre, I A , que irá en el sentido
de N a P, o sea, sentido contrario a la de la corriente de difusión (Figura 3.14).
Los procesos mencionados, difusión y arrastre, son contrapuestos y llegará un momento en que ambos alcancen un equilibrio dinámico de tal manera que la intensidad de
corriente a través de la unión será: I D + I A = 0
Si suponemos que la unión entre los bloques es abrupta, una vez alcanzado el equilibrio, la difusión de portadores de cada bloque hacia el otro habrá dejado en cada uno
de ellos una región prácticamente vacía de portadores. Esas dos regiones, de anchuras
WN y WP (Figura 3.15), forman conjuntamente la llamada zona de deplexión de anchura
W Z =WN +WP En la semizona WN hay una densidad de carga espacial (no móvil) positiva
(+), mientras que en la semizona WP habrá una densidad de carga espacial (no móvil) negativa (-) (Figura 3.15). En la zona más impurificada la anchura será menor. Así, en el ejemplo de la Figura 3.15, como N D > N A , vemos que WN <WP Igualmente, al estar cargado
54
positivamente el bloque N y negativamente el P, aparece una diferencia de potencial entre
los bloques, distribuida en la zona de deplexión, que se denomina potencial de contacto,
V0 , estando a mayor potencial el bloque N que el bloque P, como se ve en la Figura 3.16.
La suposición de que la unión es abrupta no es muy realista, ya que los métodos de
fabricación hacen que las impurificaciones varíen de forma gradual. Así pues, los resultados que vayamos deduciendo sólo tienen un valor cualitativo, suficiente por ahora.
El potencial de contacto en las uniones de N-P resulta ser:
V0 =
kT  N AN D
ln 
e  ni2
Densidad de carga
espacial



(1.17)
Unión abrupta
N
0
X
P
Nd > Na
WN
WP
Figura 3.15 Zona de vaciamiento
Potencial en la unión
Unión abrupta
N
E
V0
0
X
P
WN
WP
Figura 3.16 Potencial de la juntura
55
Para las uniones de Si y para una temperatura de 300°K (unos 27°C), V0 es del orden
de 0.7V y la mitad para uniones de Ge. Con las mismas premisas simplificadoras, se llega
a la expresión de la anchura de la zona de deplexión:
W Z =WN +WP =
2εV 0  1
1 
+


e  N A N D 
(1.18)
Siendo ε la constante dieléctrica del semiconductor. La zona de deplexión tiene una
cierta analogía con un condensador, como se define en electrostática, ya que hay dos
cargas enfrentadas iguales y de signos opuestos y un dieléctrico entre ambas. Por ello la
unión presenta un efecto capacitivo, que tiene una gran importancia en el funcionamiento
dinámico de los diodos.
Polarización del Diodo
C
uando en la juntura P-N o diodo, se establece el movimiento de los portadores
mayoritarios, en la zona de la unión se origina una polarización debido a la
concentración de las cargas de signos contrarios a la de los portadores mayoritarios de cada tipo de semiconductor (P o N), formándose así la barrera
de conducción con un campo eléctrico complementario dirigido de la parte positiva a
la negativa de la barrera. Si en estas condiciones la parte N se polariza mediante una
fuente de energía positivamente, se observa un aumento de la anchura de la barrera
de conducción debido a que se añade una intensidad de campo eléctrico externo en
el mismo sentido que el campo complementario de la barrera, lo que imposibilita el
movimiento de los portadores mayoritarios y por ende no puede circular corriente a
través de la juntura, cuando esto ocurre se dice que el diodo está conectado en sentido
inverso. Ahora si la parte P del semiconductor se polariza positivamente aparece inmediatamente un campo eléctrico externo en la barrera de conducción en sentido contrario
al campo eléctrico complementario y por tanto se reduce la anchura de la barrera de
conducción, permitiendo así el paso de los portadores mayoritarios y estableciéndose
por lo tanto una circulación de corriente en el diodo, cuando esto ocurre el diodo se dice
que está conectado en directo.
Esta propiedad que tienen los diodos de permitir el paso de la corriente en un solo
sentido se utiliza para construir los circuitos rectificadores para convertir la corriente alterna en directa por citar un ejemplo.
Electrones libres
Si se aplica una diferencia de potencial entre la juntura PN provocará el movimiento
de electrones, en sentido opuesto al del campo eléctrico. De este modo se originará una
56
corriente eléctrica. La densidad de la corriente eléctrica (número de cargas que atraviesan la
unidad de superficie en la unidad de tiempo) dependerá de la fuerza que actúa (qE), del número de portadores existentes y de la “facilidad” con que estos se mueven por la red, es decir:
J e = en(qE )
Donde:
(1.19)
J e = Densidad de corriente de electrones.
e = Movilidad de los electrones en el material.
n = Concentración de electrones.
q = Carga eléctrica.
E = Campo eléctrico aplicado.
La movilidad de electrones es característica del material y está relacionada con la
capacidad de movimiento del electrón a través de la red cristalina.
Huecos
El campo eléctrico aplicado ejerce también una fuerza sobre los electrones asociados
a los enlaces covalentes. Esa fuerza puede provocar que un electrón perteneciente a un
enlace cercano a la posición del hueco salte a ese espacio. Así, el hueco se desplaza
una posición en el sentido del campo eléctrico. Si este fenómeno se repite, el hueco continuará desplazándose. Aunque este movimiento se produce por los saltos de electrones,
podemos suponer que es el hueco el que se está moviendo por los enlaces.
La carga neta del hueco vacante es positiva y por lo tanto, se puede pensar en el hueco como una carga positiva moviéndose en la dirección del campo eléctrico. Obsérvese
que los electrones individuales de enlace que se involucran en el llenado de los espacios
vacantes por la propagación del hueco, no muestran movimiento continuo a gran escala.
Cada uno de estos electrones se mueve únicamente una vez durante el proceso migratorio. En contraste, un electrón libre se mueve de forma continua en la dirección opuesta
al campo eléctrico.
Análogamente al caso de los electrones libres, la densidad de corriente de huecos
viene dada por:
Donde:
J h = hp (qE )
(1.20)
J h = Densidad de corriente de huecos.
h = Movilidad de los huecos en el material.
p = Concentración de huecos.
q = Carga eléctrica del hueco: igual y de signo opuesto a la del electrón.
E = Campo eléctrico aplicado.
La movilidad de los huecos es característica del material, y está relacionada con la capacidad de movimiento del hueco a través de los enlaces de la red cristalina. La “facilidad”
de desplazamiento de los huecos es inferior a la de los electrones.
57
Consideremos ahora el caso de un semiconductor que disponga de huecos y electrones,
al que sometemos a la acción de un campo eléctrico. Hemos visto cómo los electrones se
moverán en el sentido opuesto al del campo eléctrico, mientras que los huecos lo harán según el campo. El resultado es un flujo neto de cargas positivas en el sentido indicado por el
campo, o bien un flujo neto de cargas negativas en sentido contrario. En definitiva, la densidad de corriente global es la suma de las densidades de corriente de electrones y de huecos:
J = J h + J e = hp (qE ) + en(qE )
(1.21)
Conducción por difusión de portadores
Antes de entrar en el fenómeno de conducción por difusión vamos a explicar el concepto de difusión. Se tiene una caja con dos compartimentos separados por una pared
común. En un compartimento introducimos un gas A, y en el otro un gas B. Si en un
momento determinado se abre una comunicación entre las dos estancias parte del gas A
atravesará la pared para ocupar el espacio contiguo, al igual que el B. El resultado final
es que en ambas estancias tendremos la misma mezcla de gases A+B.
La difusión de partículas es un mecanismo de transporte puramente estadístico, que
lleva partículas “de donde hay más, a donde hay menos”, siempre que no haya ninguna
fuerza externa que sea capaz de frenar dicho proceso. Matemáticamente puede expresarse esta idea mediante la primera ley de Fick, que establece que el flujo de partículas
que atraviesa una superficie es proporcional al gradiente de concentración de partículas.
J = −D
dc
dx
(1.22)
Donde, D es la constante de proporcionalidad, denominada difusividad y tiene dimensiones de m2/s.
Ahora si se tiene un semiconductor tipo P cuya concentración de huecos no es constante, sino variable según la dirección x, los huecos emigraran de la región de alta concentración a la de baja concentración. Esta migración de portadores, que se muestra en
la Figura 3.17, es un proceso puramente estadístico, originado por el movimiento térmico
aleatorio de los portadores y no está relacionado con la carga de los mismos, o con la
presencia de ningún campo eléctrico.
La difusión no depende del valor absoluto de la concentración de portadores, sino
solamente de su derivada espacial, es decir, de su gradiente.
p (h/m³)
x (m)
P
J (h/s/m²)
Figura 3.17 Difusión de portadores
58
Electrones de
valencia
+4
Electrón Libre
+4
+4
Banda Covalente rota
Huecos
generado
+4
+3
+4
Átomos de
Silicio
Banda Covalente
+4
+4
+4
Figura 3.18 Efecto de difusión en estructura cristalina
En los metales, la difusión no es un proceso de importancia, porque no existe un mecanismo mediante el cual se pueda generar un gradiente de densidad, dado que en un
metal únicamente hay portadores negativos de carga, cualquier gradiente de portadores
que se pudiera formar desequilibraría la neutralidad de la carga. El campo eléctrico resultante crearía una corriente de arrastre, que de manera instantánea anularía el gradiente
antes de que pudiera darse la difusión. Por el contrario en un semiconductor hay portadores positivos y negativos de carga, por lo que es posible la existencia de un gradiente
de densidad de huecos y de electrones, mientras se mantiene la neutralidad de la carga.
En un semiconductor, los componentes de la densidad de corriente de difusión pueden expresarse de forma unidimensional mediante la ecuación:
Donde:
J difusión = qDe
dn
dp
− qDh
dx
dx
(1.23)
J difusión = Densidad de corriente de difusión.
q = Carga del electrón.
De , Dh = Difusividad de los electrones y de los huecos.
n = Concentración de electrones.
p = Concentración de huecos.
El segundo término de la expresión tiene signo negativo porque la pendiente negativa
de los huecos da lugar a una corriente debida a ellos.
59
Relación de Einstein
Existe una relación entre la difusividad y movilidad de portadores:
Dn Dp
=
=V
µn µ p T
(1.24)
2
Donde VT es el voltaje térmico, a temperatura ambiente VT = 25mV , Dn = 34cm / s
Dp = 12cm 2 / s
La unión PN del circuito abierto
E
n la unión PN sin polarización, la corriente de difusión debida a los huecos
es alta en la región de la zona P y baja en la zona N. estos dos componentes
de corriente se suman para formar parte de la corriente de difusión I D . En la
región de agotamiento los huecos se difunde a través de la unión hacia la región
n y se recombinan rápidamente con algunos de los electrones mayoritarios presentes. En
condiciones de circuito abierto no existe corriente externa, por tanto, las dos corrientes
opuestas a través de la unión deben tener la misma magnitud.
El voltaje de barrera es el que mantiene esta condición de equilibrio. Por tanto si por
alguna razón I D excede a I S entonces será mayor la carga de enlace que queda descubierta a ambos lados de la unión, se ensanchara la capa de agotamiento y aumentara
el voltaje de barrera en esta. Si ocurre lo contrario en que I S sobrepasa a I D disminuirá
la cantidad de carga que no queda descubierta y se estrechara la capa de agotamiento
reduciendo el voltaje de barrera.
 N AN D
 n2
i

V 0 =VT lnln 



(1.25)
Este voltaje depende de las concentraciones y de la temperatura del material. En el
silicio este voltaje se encuentre entre 0.6V y 0.8V.
Cuando las terminales se miden, la tensión que aparece es de 0V. El voltaje de barrera no aparece entre las terminales del diodo. Esto se debe a que el voltaje se contrarresta
con los voltajes entre las uniones del silicio y los contactos metálicos.
El ancho de la zona de agotamiento no siempre es igual en cada tipo de material, ya
que varía de acuerdo a la cantidad de impurezas. El ancho esta dado por:
Wagotamiento = x n + x p =
60
2ε Si  1
1 
+

V
q  N A N D  0
(1.26)
Por lo general el ancho se encuentra en el intervalo de 0.1 a 1µm.
ID
Is
HUECOS
+
+
+
+
+
+ + +
+ + +
p + +
+ + +
+ + +
_
_
_
_
+
+
+
+
ELECTRO-
_
_
_
_
_
_
_
_
_
_
_ _
_ _
n _
_ _
_ _
(a)
POTENCIAL
BARRERA DE
VOLTAJE
x
(b)
Figura 3.19 Unión PN sin polarización
La unión PN en polarización inversa
E
l comportamiento de la unión se explica si se conecta una fuente de corriente
I en la dirección inversa a la corriente de difusión I D y con magnitud de esta
corriente menor a I S (Figura 3.20).
La corriente I será constituida por los electrones que fluyen en el circuito
externo del material n al p. Esto hará que los electrones dejen el material n y los huecos
dejen el material p por tanto, la corriente inversa I provocara un aumento en el ancho de
la capa de agotamiento y la carga almacenada en ella. También se provoca un aumento
del voltaje de barrera V0 . Finalmente se alcanza un equilibrio en estado estable cuando
IS − ID = I
Este voltaje puede medirse en los extremos de la juntura con n más positiva en relación a p.
61
ID
IS
+ + +
+ + +
+ p +
+ + +
_
_
_
_
_
+
+
+
+
+
_ _ _
_ _ _
_ n _
_ _ _
Figura 3.20 Polarización inversa de la juntura PN
- VR +
Capacitancia de unión
A
I
medida que el voltaje cambia a través de la unión, también lo hace la carga
almacenada en la zona de agotamiento. En la figura 21 se muestra la curva
característica típica de la carga contra el voltaje externo inverso de la unión.
CARGA
Pendiente = Cj
Q
Punto de
polarización
0
VQ
VOLTAJE INVERSO
Figura 3.21
62
VR
La expresión de la carga almacenada es:
q j = qN = qN D x n A
(1.27)
Donde A es el área transversal. En función de la zona de agotamiento, se tiene:
qj = q
N AN D
AWagotamiento
NA +ND
(1.28)
Donde la zona de agotamiento se encuentra en relación a los voltajes en la siguiente
expresión:
Wagotamiento =
2ε Si  1
1 
+

 (V +V )
q  N A N D  0 R
(1.29)
Dada que la relación de capacitancia no es lineal respecto al voltaje se puede evaluar
en un punto de polarización Q:
Cj =
dq j
dV R
(1.30)
V R =VQ
Resolviendo la derivada en el punto de polarización se obtiene:
Cj =
C j0 = A
C j0
 VR 
1 + 
 V0 
(1.31)
m
q ε Si  N AN D

2  N A + N D
 1 
 
V 0 
(1.32)
Donde m tiene valores de 1/3 a 1/2 y se le denomina coeficiente de graduación.
Capacitancia de unión
A
hora se excita la unión con una fuente de corriente como lo muestra la Figura
3.22. Esta fuente moverá los huecos del material P por el circuito externo hacia
el material n y los electrones hacia el material P, por lo cual la capa de agotamiento se ensancha disminuyendo la corriente de difusión y aumentando la
corriente I sin variar ampliamente el voltaje V Z
63
Ocurren entonces dos efectos llamados el efecto Zener y el efecto avalancha.
p
n
- VZ +
I
Figura 3.22 Efecto Zener
Efecto Zener
E
l efecto Zener se basa en la aplicación de tensiones inversas que originan
fuertes campos eléctricos que causan la ruptura de los enlaces covalentes
entre los átomos, dejando así, electrones libres capaces de establecer la conducción. Su característica es tal, que una vez alcanzado el valor de su tensión
inversa nominal y superando la corriente a su través por un determinado valor mínimo,
la tensión en bornes del diodo se mantiene constante e independiente de la corriente
que circula por él.
Efecto Avalancha
E
xiste un valor máximo de voltaje que puede ser aplicado a un diodo, esto implica
que existe también un voltaje de polarización inversa máximo, si este voltaje se
sobrepasa el diodo podría ser destruido. Como se sabe cuando un diodo se polariza inversamente existe una corriente de polarización inversa muy pequeña. A la
tensión de polarización inversa en la cual esta corriente aumenta en forma dramática se le
llama tensión de ruptura, y cuando la corriente de polarización inversa aumenta significativamente se dice que en el diodo ha ocurrido un efecto avalancha.
64
En el límite antes de llegar a la tensión de ruptura hay electrones con energía cinética muy alta, que al chocar con la red cristalina son capaces de desprender electrones
que participan en el enlace covalente, los electrones desprendidos también adquieren
energías altas y al chocar desprenden más electrones, estos electrones libres producen
el efecto avalancha, hacen que la corriente de polarización inversa aumente y que eventualmente el diodo se estropee.
Unión PN en polarización directa
S
i ahora aplicamos a dicha unión una tensión exterior de signo contrario a la barrera de potencial interna, ésta irá disminuyendo en anchura. A mayor tensión
aplicada externamente corresponderá una barrera interna menor y podremos
llegar a conseguir que dicha barrera desaparezca totalmente (Figura 3.23).
En este momento los electrones (portadores mayoritarios) de la zona N están en disposición de pasar a la zona P. Exactamente igual están los huecos de la zona P que quieren “pasar” a la zona N redistribuyendo los portadores como lo muestra la Figura 3.24.
A la tensión externa que anula la barrera de potencial de la unión y la deja preparada
para el paso de los respectivos portadores mayoritarios, se le denomina tensión umbral.
Se la representa por Vu y sus valores prácticos son:
•
•
Para el Silicio Vu = 0,4 - 0,5 voltios
Para el Germanio Vu = 0,05 - 0,06 voltios
En esta situación, al aplicar un aumento en la tensión exterior, los electrones se sentirán
ID
Is
++
++
++
++
+ + +
+ + +
+ p +
+ + +
_
_
_
+
+
+
_
_
_
_
_ _ __
_ _ __
_ n __
_ _ __
-V+
I
Figura 3.23 Polarización directa
65
P n nP
Región p
ZONA DE
AGOTAMIENTO
Región n
Pn(xn
)
EXCESO DE
CONCENTRACIÓN
Pn(x)
nP (-xP)
nP(x)
P n0
VALOR DE EQUILIBRIO TÉRMICO
n P0
-xP
0
xn
x
Figura 3.24 Distribución de portadores
atraídos por el polo positivo de la fuente y los huecos por el negativo de la misma. No hay
dificultad para atravesar la unión y por tanto aparecerá una corriente de mayoritarios a través
del circuito. A partir de aquí, cualquier aumento de tensión provoca un aumento de la corriente.
Al conjunto de tensiones que crean corriente proporcional en el diodo se les llama
tensiones de polarización directa o de funcionamiento. Sus valores típicos son:
• Para el Silicio = 0,5 - 0,8 voltios
• Para el Germanio = 0,06 - 0,15 voltios
Parece lógico pensar que llegará un momento en que el proceso, aumento de tensión
exterior y aumento de corriente en la unión, tendrá que parar. Y esto es así, porque a partir
de un determinado valor de la tensión exterior aplicada, los electrones se neutralizan en
mayor número con los huecos en el interior del diodo y son pocos los que pueden salir al
circuito exterior. Es decir que el aumento es absorbido por el mismo diodo. A esta tensión
a partir de la cual la corriente a través del diodo se mantiene constante, (en la práctica aumenta ligeramente) se le denomina tensión de saturación. Sus valores típicos son:
• Para el Silicio V sat = 0,8 - 0,9 voltios
• Para el Germanio V sat = 0,15 - 0,2 voltios
Cualquier intento de provocar un aumento de corriente puede originar a partir de este
momento la destrucción del diodo.
El comportamiento de la corriente I por la juntura PN en función de la polarización
directa V AK (tensión entre ánodo y cátodo) está dada por la siguiente ecuación:
 V AK

I = I S  e ηVT − 1 




66
(1.33)
Esta expresión es llamada Ecuación del diodo en donde:
I S : corriente inversa de saturación.
VT : voltaje térmico.
η : constante empírica que permite distinguir el comportamiento entre un diodo
wde Germanio y uno de Silicio. A veces es llamada factor de idealidad. Vale aproximadamente 1 para diodos de Germanio y 2 para diodos de Silicio.
Voltaje térmico
El voltaje térmico es una constante y está dada por:
VT =
Donde:
KT
q
(1.34)
• K = Constante de Botzmann = 1.38 X 10-23 J/K.
• T = Temperatura en Kelvin.
• q = Magnitud de la carga electrónica 1.6 X 10-19 C.
Corriente Inversa
IS
Está constituida por portadores minoritarios (electrones o huecos), circula en dirección
opuesta a la corriente de polarización, se comporta exponencialmente con la polarización
inversa en el estrecho rango de 0 a 0.1V, aproximadamente. A partir de este voltaje todos
los portadores minoritarios estarán participando de la corriente inversa, en consecuencia,
mayores valores de polarización no aumentarán significativamente la corriente inversa, se
mantendrá en un valor constante llamado corriente inversa de saturación.
Un aumento de la temperatura del diodo generará nuevos portadores minoritarios.
Por otra parte, una disminución de la temperatura hará desaparecer algunos portadores
minoritarios por el fenómeno de recombinación. En consecuencia, I rs es función de la
temperatura más bien que de la magnitud de la polarización inversa.
Con una aproximación, en los diodos de silicio, I rs se duplica cada 10ºC de aumento
de temperatura, es decir:
T2 −T1
I rs (T ) = I rs (T ) 2
2
1
(1.35)
10
El valor de I rs para cada temperatura dada depende también del material semiconductor básico. Por ejemplo, para un diodo de silicio, si T=300ºK, I rs =1nA. Para un diodo
de Germanio, si T=300ºK, I rs =1µA.
El aumento excesivo de tensión de polarización inversa −V AK puede derivar en el fenómeno de ruptura inversa, que ocurre para cada diodo en particular a un valor de −V AK
llamado “tensión inversa de ruptura” (V BD : Breakdown Voltage).
67
Capacitancia de Difusión
A
partir de la descripción de la operación de la unión PN en la región directa, se
observa que en el estado estable cierta cantidad de exceso de carga de portadores minoritarios se almacena en cada una de las regiones p y n. Si cambia el
voltaje de la terminal, esta carga tendrá que cambiar antes de que se alcance
un nuevo estado estable. Este fenómeno da lugar a otro efecto capacitivo distinto al
almacenamiento de carga en la zona de agotamiento.
En el caso de cambios pequeños alrededor de un punto de polarización, se puede
definir la capacitancia de difusión a pequeña señal como:
Cd =
dQ
dV
(1.36)
Tomando la corriente que atraviesa el diodo como directamente proporcional a la capacitancia, esta se puede calcular como:
τ 
(1.37)
C d =  T  I
V
 T 
Donde τT es el tiempo medio de transito del diodo.
Curvas características de la unión PN
L
a unión PN se presenta en todos los dispositivos semiconductores desde los
diodos, el más sencillo, hasta los tiristores los cuales combinan varias capas
de materiales P y N. Se toma el diodo para analizar su comportamiento ya que
es el más sencillo, empleando un material de cada tipo. La figura 25 muestra la
respuesta de la corriente cuando el voltaje de la juntura o diodo se varía de acuerdo a
los tipos de polarización vistos anteriormente.
En la Figura 3.26 se muestra el comportamiento del diodo en zona inversa más detallado, este es importante porque los diodos Zener usan este principio para su operación,
en los cuales es importante destacar el voltaje Zener, la razón de cambio en la zona de
ruptura que es prácticamente lineal y las corrientes limites para no entrar en la zona
donde el diodo trabaja en zona de avalancha.
68
į
Directa
-VZK
0
Avalancha
Inversa
ʋ
0,7 V
0,5 V
ʋ
+
_
į
Figura 3.25 Curva característica del diodo
į
-VZ
-VZ0
-VZK
0
-Izk
ʋ
Pendiente = 1
rz
Q
-Izr
Corriente de prueba
I
v
v=
I rz
Figura 3.26 Curva característica del diodo en zona inversa
Modelo de la unión PN
Como ya se había comentado, la característica de la corriente y voltaje estática es
descrita por la siguiente ecuación:
 qVq

(1.38)
I = I S  e kT − 1 




El hecho es que esta no es lineal y posee serios problemas numéricos dejando su uso
en los simuladores de circuitos. Como resultado, han sido desarrollados algunos modelos
lineales que pueden ser utilizados para el diodo.
69
Modelo de señal amplia, cuasi estático
El modelo de amplia señal cuasi estático para la juntura del diodo da una aproximación
lineal de la anterior ecuación. Este modelo es válido para un amplio rango de polarizaciones
aplicadas y no tiene en cuenta transientes o efectos capacitivos de cualquier tipo.
Como se presenta en la Figura 3.27, las características de un diodo actual (Figura
3.27.A) pueden ser aproximadas por:
Figura 3.27.B: un diodo ideal que tiene I = 0 cuando y V < 0 V = 0 cuando I > 0 .
Figura 3.27.C: un diodo ideal en serie con una fuente de voltaje teniendo las siguientes propiedades: I = 0 cuando V <V j y V =V j cuando I > 0 . V j es aproximadamente 0.7V
en un diodo de Silicio y 0.35V en uno de Germanio.
Figura 3.27.D: un diodo ideal con una fuente de voltaje y una resistencia en serie, teniendo una conductancia G = I . La característica de corriente y voltaje de este modelo
V
son: I = 0 cuando V <V j y V =V + I cuando I > 0 .
I
I
A
0
j
G
B
0
Va
I
0 Vj
Va
+
I
+
I
C
0
Va
Vj
+
I
Va
Va
D
Va
I
Va
Vj
G
Vj
-
-
-
Figura 3.27 Aproximaciones al diodo
R
+
iD= ID + id
vs
+
-
iD= ID + id
vD= VD + vd
VDD
vs
+
-
VDD
_
R
Ideal
+
VD0
rd
vD
_
+
id
vs
+
-
VDD
Figura 3.28 Modelo de pequeña señal.
70
vD= VD + vd
rd
R
ID
VD0
VDD
_
+
Ideal
rd
vd
_
Modelo de pequeña señal y baja frecuencia
El modelo cuasi estático y de pequeña señal para el diodo viene de una aproximación
lineal a la ecuación general del diodo. Este modelo es válido para pequeñas variaciones
de la señal y no tiene en cuenta transientes o efectos capacitivos.
Considere el caso donde la polarización aplicada, v (t ) , está compuesta de la superposición de una mayor polarización continua DC, V 0 , y una pequeña señal AC de baja
frecuencia, v 1 (t ) :
(1.39)
v (t ) =V 0 +v 1 (t )
La corriente correspondiente, i (t ) , estará junto a la componente DC, I 0 , y una pequeña señal de componente AC, i 1 (t ) :
i (t ) = I 0 + i 1 (t )
(1.40)
En esta baja frecuencia se presenta una conductancia dinámica definida por:
g0 =
q
I
kT 0
(1.41)
La resistencia dinámica vendrá dada por:
1 kT
r0 =
=
g0
iD (mA)
(1.42)
qI 0
2,0
Tangente en Q
1,8
Pendiente = 1
r4
id (t)
1,6
1,4
1,2
1,0
Q
ID
t
0,8
0,6
0,4
0,2
0
vD
0,55
0,60
0,65
VD0
0,70
0,75
0,80
vD (V)
vd (t)
Figura 3.29 Respuesta del diodo a una pequeña señal AC
71
Modelo de pequeña señal a alta frecuencia
El circuito equivalente del modelo de pequeña señal a alta frecuencia se presenta en
la figura 30. Consiste en una resistencia dinámica, una capacitancia de transición y una
de difusión, todas en paralelo entre sí.
i
v
CT
CD
r0
Figura 3.30 Modelo de pequeña señal y alta frecuencia de la juntura PN
Sabemos que el voltaje en el diodo es V D en ausencia de v (t ) , de este modo la corriente DC del diodo será:
ID = ISe
VD
ηVT
Cuando se aplica la señal AC v (t ) , la señal queda:
v D (t ) =V D +v (t )
(1.43)
(1.44)
La señal de corriente será del siguiente modo,
De aquí se puede apreciar que,
I D (t ) = I S e
V D +v
ηVT
(1.45)
vD
ηVT
(1.46)
I D (t ) = I S e
Si la amplitud de la señal v D (t ) se conserva lo suficientemente pequeña de modo que:
vd
1
nVt
(1.47)
Entonces podemos expandir el exponencial de la ecuación en una serie y truncar la
serie de los dos primeros términos para obtener la expresión aproximada,

i D (t ) = I D 1 +

vD 

ηVT 
(1.48)
Esta aproximación se conoce como aproximación de pequeña señal. Es válida para
señales con amplitudes menores a 10mV.
72
Después de una manipulación algebraica tenemos un parámetro muy importante del
diodo que es la resistencia del diodo a pequeña señal, que viene dada por,
rd =
Celda solar
nVt
ID
(1.49)
Una celda solar es una juntura PN en la cual la excitación de los portadores es hecha
por una fuente externa de energía, usualmente la luz solar, utilizada para generar potencia eléctrica. En otras palabras una celda solar convierte energía solar en potencia eléctrica. El diseño de la mayoría de celdas solares es elaborado en función de la eficiencia y
en maximizar la producción de energía. En este caso se aprecia la operación de la celda
solar utilizando una simple juntura PN. La operación de la celda solar está basada en la
generación de pares de “huecos” de electrones en la región de transición, y la separación de ambos tipos de portadores por el campo eléctrico de la juntura. Si por ejemplo,
observamos la figura 31, asumiremos que la iluminación uniforme del sol genera G pares
de huecos de electrones por centímetro cúbico y por segundo, en cualquier lugar del
material semiconductor. Usando las notaciones Lp y Ln, vemos que la región se extiende
desde –Lp a Ln y la polarización aplicada es Va.
En donde después de un complejo desarrollo matemático obtenemos la expresión
para la corriente en nuestra juntura o nuestra celda para este caso.
(1.50)
I = (J p + J n )
En donde J n y J p son las densidades de corriente de electrones y huecos, respectivamente. Destacando cada uno de los elementos de la ecuación, tenemos la siguiente forma.
 D
I = p
 Lp
p-type
a

 qVa


Dn   qV

kT
 pn 0  e − 1   − τ pG +
n p 0  e kT − 1   − τ nG 



Ln  





(1.51)
W0
- -- - - + +
+
- - - -- - - +
+
- - -x p0
0
n-type
x n0
x
Figura 3.31 Geometría de una celda solar simple
73
Diodos PiN
Este tipo de diodo consiste en una región intrínseca en medio de una región P y otra
región N, tal como lo muestra la figura 32. En la práctica la región i es bastante delgada,
tanto hacia el lado P como hacia el N.
p
n
i
Figura 3.32 Estructura del diodo PiN.
La densidad de corriente viene dada por:
J=
qn 'W
τ0
(1.52)
En donde q es la carga, n’ es la concentración promedio de electrones inyectados, W
el ancho de la zona intrínseca, y τ 0 es la duración de los portadores.
Modelo PSPICE del Diodo
T
odos los dispositivos de PSpice utilizan modelos matemáticos y parámetros del
modelo para determinar sus características.En el caso de los dispositivos pasivos
(R, C y L), los parámetros del modelo son sencillos y no muy numerosos.
En contraste, los dispositivos activos, como los diodos, disponen de modelos
más sofisticados y complejos con un mayor número de parámetros, que pueden modificarse según sea necesario.
El diodo se puede modelar de distintas formas según el modelo matemático escogido
y los límites del modelo. En la Figura 3.33 se muestra la configuración usada para un modelo de gran señal y en la Figura 3.34 se muestra un modelo para pequeña señal.
Estos diodos tienen aplicaciones de fotodetectores (polarizados inversamente), incluyendo la detección de rayos X.
74
A
RS
A
+
ID
D1
VD
CD
ID
_
K
K
Figura 3.33 Modelo PSpice de gran señal
En el modelo de gran señal el diodo es modelado con una fuente de corriente, un condensador que simula la capacitancia de juntura y su resistencia en serie exhibida en el modelo.
En el modelo de pequeña señal los modelos se hacen más complicados de acuerdo con
la simulación, en caso de que no se especifique parámetros PSpice los coloca por defecto.
A
RS
+
VD
CD
RD
_
K
Figura 3.34 Modelo PSpice de pequeña señal.
75
Simulación de semiconductores
L
os programas de simulación basan sus cálculos en modelos físicos de los semiconductores. Por lo general las entradas de simulación que se consideran son
el tipo de material, dispositivo, dimensiones, dopaje y condiciones de operación.
Basado en esta información, el simulador calcula el campo eléctrico dentro del
dispositivo y predice la concentración de portadores en las diferentes regiones del dispositivo.
Los simuladores también pueden predecir comportamientos transitorios que incluyen
características corriente- voltaje y ancho de banda. Existen tres formas de aproximación
de los simuladores, la clásica, la semiclásica y la cuántica.
Simuladores basados en aproximación clásica
La aproximación clásica está basada en la solución de las ecuaciones de Poisson y de
conservación de carga. Para desarrollar este modelo se hacen ciertas suposiciones para
resolver la ecuación de transporte de Boltzmann:
1. La temperatura de los portadores es la misma a través del dispositivo y es igual a
la temperatura Lattice.
2. Existen condiciones de cuasi-estabilidad.
3. El camino libre promedio de los portadores debe ser menor que la distancia sobre
la cual el cuasi nivel de Fermi está cambiando por kT/q.
4. La concentración de impurezas es constante o varía muy lentamente a lo largo del
camino libre promedio de los portadores.
5. Las bandas de energía son parabólicas.
6. La influencia de las condiciones de frontera son insignificantes.
Para propósitos generales, aún bajo estas suposiciones y limitaciones del modelo, los
simuladores basados en la aproximación clásica generan resultados muy precisos.
Las ecuaciones que deben resolverse se reducen bastante, bajo la consideración de que
se está en condiciones de cuasiestabilidad, dado que la longitud de onda de operación es
mucho mas larga que las dimensiones del dispositivo. Entonces, las ecuaciones de Maxwell
se pueden reducir a la forma de Poisson que es más familiar, para medios no homogéneos:
∇ε ( ∇Ψ ) = − ρ
(1.53)
En donde Ψ denota el potencial de la región a simular, ε la permitividad del medio y
ρ la carga encerrada por este medio.
De la ecuación de Maxwell, se deriva la ecuación de continuidad de corriente para
medios homogéneos:
 ∂n 
∇. J n − q 
 = +qu
 ∂t 
76
(1.54)
En donde,
También sucede que:
En donde,
J n = q µn E + qDn ∇.n
(1.55)
J p = q µ p pE + qD p ∇. p
(1.57)
 ∂p 
∇. J p + q 
 = −qU
 ∂t 
(1.56)
Para medios no homogéneos, el término correspondiente al campo eléctrico en las
expresiones de corriente, es modificado en términos de la densidad de estados no uniforme y la variación de las bandas de valencia.
En la aproximación clásica el objetivo es calcular el potencial y la distribución de portadores dentro del dispositivo, por tanto, la ecuación de Poisson se resuelve para encontrar el potencial dentro del dispositivo. Posteriormente la distribución de campo eléctrico
se usa para la resolución de la ecuación de continuidad de corriente, para obtener la distribución de portadores y las densidades de corrientes. Por lo general las movilidades de
portadores y los coeficientes de difusión dependen del campo y la geometría de trabajo.
Las condiciones de frontera para resolver estas ecuaciones son las que determinan la
solución del problema. Para contactos de tipo ohmico, se asume que las velocidades de
recombinación son infinitas y que el espacio de carga es neutral. De esto se deriva que
para un material tipo p, las condiciones de frontera ohmica se convierten en:
Ψ =V apl +
n
kT
lnln ie
q
p
  N + − N − 2

A
p =  D
+ nie2 




2



n=
nie2
p
1
2
(1.58)
 N + − N A− 
− D


2


(1.59)
(1.60)
+
V
En donde apl es el voltaje aplicado, k es la constante de Boltzmann, N D es la con−
centración de impurezas de donadores y N A la de aceptores.
Para contactos de tipo Schottky, las condiciones de frontera toman la siguiente forma:
Ψ =V apl +
EG
2
−ÖB
  EG 
  2  −ÖB

n = nie exp  

kT

q

(1.61)






(1.62)
77
En donde E G es la banda de Valencia y Ö B es la barrera de potencial. Para otras fronteras sin flujo de corriente las condiciones de frontera se expresan de la siguiente manera:
∂Ψ ∂ϕn ∂ϕ p
=
=
=0
∂n ∂n
∂p
(1.63)
En donde ϕn y ϕ p son los cuasi niveles de Fermi de electrones y huecos respectivamente.
Los métodos de solución de estas ecuaciones son métodos numéricos. El primero
que se utiliza es el método de diferencias finitas (FDM), y el segundo es el método de
elementos finitos (FEM).
Con FDM la región a simular se divide en áreas rectangulares o triangulares para
casos bidimensionales, o en cubos y tetraedros para casos tridimensionales. Las esquinas o vértices se consideran nodos. Las ecuaciones diferenciales son modificadas
usando aproximaciones de diferencias finitas, y se construye una matriz de ecuaciones.
Estas ecuaciones se resuelven iterando solo en esos nodos. Las técnicas de solución
más usadas son las de Gauss-Seidel /Jacobi o los métodos de Newton. El FDM tiene la
desventaja de requerir más nodos que el FEM en la misma estructura. La ventaja es que
requiere de menos memoria computacional para la solución que el FEM.
En el FEM la región a simular se divide en cuadrados o triángulos para el caso bidimensional o en tetraedros para casos tridimensionales. Las ecuaciones en el FEM son
modificadas multiplicándolas por una función de forma e integrándolas sobre la región
simulada. El resultado de un nodo es la adición de todas las soluciones posibles.
Simuladores basados en aproximación semiclásica
La aproximación semiclásica está basada en la ecuación de trasporte de Boltzmann
(BTE) que se puede escribir como:
df ∂f
q
=
+v .∇r ±
dt ∂t
h
( 2π )
 ∂f 

 ∂t coll
E .∇k f = 
(1.64)
En donde f representa la distribución de portadores en el volumen para cualquier
tiempo t, v es la velocidad de grupo, E es el campo eléctrico y q y h son la carga del
electrón y la constante de Planck, respectivamente.
La BTE es una simplificación de la ecuación de Liouville – Von Neumann para la matriz de densidad.
Las suposiciones que se deben hacer para resolver este tipo de problemas son las siguientes:
1. Las interacciones entre portadores se consideran muy débiles.
2. Las partículas no ganan energía del campo eléctrico durante las colisiones.
3. La probabilidad de dispersión es independiente del campo eléctrico.
4. Se desprecian los efectos del campo magnético.
5. No existe interacción entre electrones en el término de las colisiones.
6. El campo eléctrico varia muy lentamente, por ejemplo el campo eléctrico se considera constante para un paquete de ondas que describen el movimiento de una partícula.
78
7. La nube de electrones y huecos no se degenera.
8. Se aplican teoría de bandas y teoremas de masa efectiva a los semiconductores.
El proceso de solución del problema empieza por resolver la ecuación de Poisson
para obtener el campo eléctrico dentro del dispositivo, posteriormente usando la tecnica
de Monte Carlo (MCT), se resuelve la BTE para obtener la función de distribución de
portadores f .
Con esta función se pueden calcular las corrientes de electrones y portadores, a partir
de las siguientes integrales:
k
J n = −q ∫vf (r , k ,t )d 3k
(1.65)

k
J p = +q ∫vf (r , k ,t )d 3k
(1.66)

Simuladores basados en aproximación cuántica
La simulación con esta aproximación se basa en la solución de la ecuación de onda
de Schrodinger (SWE), que en su versión independiente del tiempo se escribe de la siguiente manera:
( 2π ) ∇ ϕ + (E
h
2m
2
2
n
n
+ qV )ϕn = 0
(1.67)
ϕn corresponde a la función de onda de la banda n cuyo mínimo valor de
energía es E n , V es el potencial de la región, m es la masa de la partícula, h y q son la
Donde
carga del electrón y la constante de Planck, respectivamente.
Con esta aproximación la distribución de potencial dentro del dispositivo se calcula
con la ecuación de Poisson. Este potencial se usa después en la SWE para encontrar el
vector de onda de los electrones, para luego encontrar la distribución de portadores con
la siguiente expresión:
n = ∑N n ϕn
n
2
(1.68)
Siendo N n la distribución en la banda n .
Esta concentración se usa de nuevo en la ecuación de Poisson y nuevos valores de
función de onda, energía mínima y n son calculados. Este proceso se repite hasta encontrar una solución auto consistente. El último vector de onda se usa para encontrar la
matriz de dispersión, y después con el MCT se encuentra la distribución de portadores y
las densidades de corriente.
Paquetes de simulación disponibles
La aproximación clásica es la más utilizada dado que es la más fácil de implementar
y es la que más rápido se resuelve. Los paquetes basados en este tipo de aproximación
más populares, en dos dimensiones son: FEDAS, HESPER, PISCES-II, PISCES-2B, MI-
79
NIMOS y BAMBI; y en tres dimensiones están: TRANAL, SIERRA, FIELDAY, DAVINCI, y
CADDETH. Los dispositivos de gran tamaño, en los que los portadores viajan lejos de las
fronteras, se pueden simular en aproximaciones de una sola dimensión.
Simulación de semiconductores
E
l diodo posee distintos parámetros según el modelo. PSpice ofrece los siguientes para un diodo tipo “DbreaK”:
Nombre
Parámetro
Unidad
Valor
configurado
IS
Corriente de saturación
A
1,00E-14
1,00E-14
RS
Resistencia parasita
W
0
10
N
Coeficiente de emisión
1
1
TT
Tiempo de transito
seg
0
0,1NS
CJO
Capacitancia de agotamiento
F
2PF
VJ
Potencial de juntura
V
0
1
M
Coeficiente de graduación
0.5
0.5
EG
Energía de activación
1.11
1.11
3
3
XTI
eV
Exponente de temperatura
BV
Voltaje de ruptura
V
IBV
Corriente de ruptura
A
Valor
típico
0.6
50
1E-10
Figura 3.35 Modelo PSpice de pequeña señal.
En el editor de modelo se cambia los parámetros al valor deseado y el ajuste se observa en
la grafica en la parte superior del editor (Figura 3.36); son varias las graficas de acuerdo con
las variables a representar o las que se deseen examinar.
80
Figura 3.36 Editor de modelo del diodo en Orcad PSpice
Simulación de la juntura PN tomando
como base el diodo 1N4148
M
ediante el simulador Orcad se examinarán las curvas características del
diodo. Se escoge un diodo comercial como el 1N4148 el cual se polariza
con una fuente DC y resistencia, implementando el circuito de la figura
3.37.
R1
Vanodo
1k
0Vdc
+
V1
D1
D1N4148
_
0
Figura 3.37 Circuito de prueba del diodo
81
En la Figura 3.38 se hace un barrido DC del voltaje en el diodo versus la corriente que
lo atraviesa y en la Figura 3.39 se ve aumentada la zona de polarización directa.
(A) juntura (active)
40mA
30mA
20mA
10mA
0A
-10mA
-20mA
-120V
I(DI)
-100V
-80V
-60V
-40V
V(Vanodo)
-20V
-0V
20V
Figura 3.38 Curva característica del diodo 1N4148
(A) juntura (active)
500uA
400uA
300uA
200uA
100uA
0A
0V I(DI) 100mV
200mV
300mV
400mV
V(Vanodo)
Figura 3.39 Polarización directa del diodo
82
500mV
Simulación efecto Zener en el diodo
E
n esta simulación se muestra el efecto Zener del diodo 1N750, que es un diodo
de 4.7V y que se usa generalmente para la regulación de voltajes entre los
nodos del diodo; además se hace variar la temperatura de operación del diodo
para ver los efectos que tienen en la respuesta del diodo.
R1
Vz
500
0Vdc
+
V1
D2
D1N750
_
0
0
Figura 3.40 Curva característica del diodo 1N4148
83
(A) juntura (active)
0A
-10A
-20A
-30A
-40A
-6.0V
I(D2)
-5.0V
-4.0V
-3.0V
-2.0V
-1.0V
0V
-V(Vz)
Figura 3.41 Curva característica del diodo 1N4148
(A) juntura (active)
0A
-5.00mA
-10.00mA
-15.00mA
-19.92mA
-4.779V
-4.700V
I(D2)
-4.600V
-4.500V
-V(Vz)
-4.400V
-4.279V
Figura 3.41 Variación de la curva Voltaje Vs. Corriente, ante variaciones de temperatura del diodo de -50°C
a 50°C en incrementos de 25°C
84
CAPÍULO
4
El MOSFET
Introducción
E
l transistor BJT es un dispositivo de tres terminales, en el que una terminal
controla el flujo de corriente entre las otras dos. El transistor MOSFET (Transistor de efecto de campo metal-oxidó semiconductor) (por sus siglas en ingles Metal-Oxide-Semiconductor Field Effect Transistor), tiene su mecanismo
de control de corriente basado en un campo eléctrico establecido por la tensión aplicado a la terminal de control.
Estos dos tipos de transistores tienen un rango de aplicaciones similares y principalmente presentan en común la impedancia de entrada elevada (aunque es mayor en los
MOSFET) y el empleo como amplificadores de señal AC.
TRANSISTOR BJT
MOSFET
METAL - ÓXIDO
EFECTO DE
TRANSISTOR
SEMICONDUCTOR
CAMPO
Figura 4.1 Esquema de las principales aplicaciones de los transistores y MOSFETs
TRANSFER
RESISITOR
Los principales apartes de la historia de los MOSFETs son:
•
-
•
-
•
-
•
•
Están basados en el principio de efecto de campo presentado en 1925 por JuliusLillienfeld.
Uso de un campo eléctrico para controlar corriente entre dos terminales.
Fue patentado en 1928 por Lillienfeld.
Implementación posible en los 60s.
Teoría de escalamiento = miniaturización. Ver Figura 2.2
60s, Robert Dennard.
Transistor más utilizado (más de 80% del mercado).
Base de la industria microelectrónica.
Figura 4.2 Miniaturización del transistor a través de los años1
1 www.itrs.net
87
Definición
E
l MOSFET es un dispositivo de cuatro terminales: compuerta, fuente, drenaje y
substrato. Es un dispositivo UNIPOLAR, dado que la corriente de conducción involucra sólo un tipo de portador de carga (electrones – canal n, o huecos – canal p).
Físicamente consiste en dos regiones semiconductoras fuertemente dopadas (SFuente y D-Drenador) separadas por una región semiconductora de tipo complementario (BSubstrato), un aislante y un electrodo sobre dicha región (G-Compuerta). Ver Figuras 4.3 y 4.4
El aislante eléctrico empleado es normalmente dióxido de silicio ( SiO 2 ) con un espesor de 0.02 a 0.1μm. El ancho del canal W se encuentra en el rango de 2 a 500 μm,
mientras que el largo del canal L varía entre 0.1 a 10 μm. Dispositivos con menor largo del
canal son empleados en el diseño de circuitos integrados de alta velocidad2
Drenador (D)
Compuerta (G)
Fuente (S)
Polisilicio
Dioxido de Silicio - SiO2
SiO2
Polisilicio +
Substrato (Si dopado)
Difusión (Si de dopado
complementario al substrato)
Substrato (B)
Figura 4.3 Sección de un MOSFET
Drenador (D)
Compuerta (G)
Fuente (S)
(W)
Ancho de canal
(L)
Largo de canal
Substrato (B)
Dioxido de Silicio - SiO2
Polisilicio +
X (Profundidad
de canal)
Substrato (Si dopado)
Difusión (Si de dopado
complementario al substrato)
Y (Largo de canal)
Z (Ancho de canal)
Figura 4.4 Vista espacial del MOSFET
2
88
Sedra, Adel. Smith, Kenneth. Circuitos Microelectrónicos. McGraw Hill. Capitulo 5.
Principio de Funcionamiento del MOSFET
La corriente de arrastre que fluye entre fuente y drenador se controla variando la tensión en el electrodo de compuerta.La corriente fluye en dirección longitudinal entre drenador y fuente porel canal, el cual la limita por las características físicas de largo y ancho.
Transistores NMOS y PMOS
E al semiconductor
aplicando voltaje de
compuerta
Controla la resistencia entre
fuerte y drenador
Compuerta aislada de la
superficie del silicio por
SiO2
Compuerta (G)
Fuente (S)
Drenador (D)
Polisilicio
SiO2
Substrato (B)
Figura 4.5 Funcionamiento del MOSFET
Figura 4.6 Sección transversal del MOSFET
89
NMOS
Compuerta (G)
Drenador (D)
+
Fuente (S)
_
Compuerta (G)
Drenador
(D)
_
Polisilicio P+
Polisilicio N+
n+
P
I
n+
p+
N
Substrato (B)
I
Fuente (S)
+
p+
Substrato (B)
Figura 4.7 Sección de Transistores NMOS (izquierda) y PMOS (derecha)
•
•
•
•
Flujo de corriente: de drenador a fuente.
Drenador es región n+ conectada al potencial más alto.
Se forma canal tipo N entre drenador y fuente.
Flujo de corriente debido a electrones
PMOS
•
•
•
•
Flujo de corriente: de fuente a drenador.
Drenador es región p+ conectada al potencial más bajo.
Se forma canal tipo P entre drenador y fuente.
Flujo de corriente debido a huecos.
Polarización y Regiones de Operación
Existen varias regiones de operación para los MOSFETs que dependen de los potenciales que se apliquen a las terminales de compuerta y drenador respecto a la terminal de fuente.
• Desde el punto de vista del potencial de superficie VGS :
• Banda plana
Transistor “apagado”:Corriente≈0
• Acumulación
• Agotamiento
• Inversión
• Inversión débil
Transistor “encendido”: Corriente≠0
• Inversión fuerte
• Desde el punto de vista de VDS en comparación con VGS
• Región de Corte
Transistor “apagado” : Corriente≈0
• Determinado por VGS
• Región lineal
• Región de saturación
Transistor “encendido” : Corriente≠0
90
MOSFET de enriquecimiento
Estructura
E
n las Figuras 4.8 y 4.9 se muestra la estructura física del MOSFET de canal
n. El transistor está fabricado por un sustrato tipo p, dos regiones de tipo n
fuertemente contaminadas, una delgada capa de dióxido de silicio, el cual es
un excelente aislante eléctrico y por un deposito de metal en la capa superior
del óxido para formar el electrodo de compuerta del dispositivo. También se hacen contactos metálicos para la región de fuente, la región de drenador y el substrato. De esta
forma aparecen cuatro terminales: el terminal de compuerta (G), el terminal de fuente
(S), el terminal de drenador (D) y el terminal del substrato (B).
Óxido de
compuerta
Contacto
de fuente
Metalización de
compuerta
Campo de
óxido
Fuente n+
Contacto de
drenador
Drenador n+
ͭ OX
Substrato
tipo b
ɭ
Canal
Figura 4.8 Estructura del MOSFET de enriquecimiento
Drenador Compuerta Fuente
w
n
L
Conductor
Aislante
n
Substrato semiconductor dopado tipo - p
Figura 4.9 Estructura espacial del MOSFET de enriquecimiento
91
Operación sin tensión aplicada a la Compuerta
Sin tensión aplicada a la compuerta se forman dos diodos conectados en oposición
(espalda con espalda) entre drenador y fuente, uno de estos diodos está formado por la
unión pn entre la región de drenadory el substrato tipo p y el otro diodo se forma por la
unión pn entre el substrato tipo p y la región n de fuente. Estos diodos impiden la conducción de corriente de drenador a fuente cuando se aplica unatensión VDS
Creación de un canal de circulación de corriente
VSB = 0
S
VGS > Vth
G
VDS = 0
D
ID = 0
n+
n+
Substrato tipo p
B
Figura 4.10 Canal de circulación de corriente
Considerando el caso descrito en la Figura 4.10, se conectan el drenador y fuente a tierra
y se aplica unatensión positiva a la compuerta. La tensión positivaen la compuerta, ocasiona
en primera instancia, que los huecos libres sean repelidos de la región del sustrato bajo la
compuerta, por tanto este empuje hacia debajo genera una región agotada de portadores.
Por la misma razón, la tensión positiva de compuerta atrae electrones de las regiones
n+ de compuerta y drenador hacia la región del canal. Cuando un número suficiente de
electrones se acumula cerca de la superficie del sustrato bajo la compuerta, se crea en
efecto una región n que conecta las regiones de fuente y drenador como se indica en la
Figura4.11. Ahora si se aplica unatensión entre drenador y fuente, circula corriente por
esta región n inducida, llevada por los electrones móviles. Esta región n inducida se denomina canal. Consecuentemente, el MOSFET de la Figura 4.10 se denomina MOSFET
canal n o transistor NMOS.
El valor de VGS en el cual un número suficiente de electrones móviles se acumula
en la región del canal para formar un canal conductor se denomina tensión de umbral o
tensiónThresholdy se denomina Vth , este valor es controlado durante la fabricación del
dispositivo y por lo general es de1 a 3V.
92
Aplicación de un pequeño V DS
VGS > Vth
G
VSB = 0
S
VDS = 0
D
ID = 0
n+
n+
Canal n Inducido
Substrato tipo p
B
Figura 4.11 Transistor NMOS con
VGS > Vth y con una pequeñatensión aplicada VDS 3
Al inducirse un canal aplicamos unatensión positiva VGS Sentre fuente y drenador
como se muestra en la Figura 4.11. Primero se considera el caso donde VDS es pequeño
(0.1 a 0.2V). La tensión VDS hace que circule una corriente I D por el canal n inducido. La
corriente es llevada por electrones que se desplazan de fuente a drenador.La magnitud
de I D depende de la densidad de electrones del canal que a su vez depende de la magnitud de VGS .
En la Figura 4.12 observamos que el MOSFET opera como resistencia lineal cuyo
valor está controlado por VGS , su resistencia es infinita para VGS ≤Vth y su valor decrece a
medida que VGS excede a Vth .
ID(mA)
0,5
VGS = Vth+4v
0,4
VGS = Vth+3v
0,3
VGS = Vth+2v
0,2
VGS = Vth+1v
0,1
VGS ≤ Vth
0
0
50
50
100
Figura 4.12 Curvas características
150
200
VDS (mV)
ID - VDS del MOSFET
3 Caratteristiche dei Mosfet. Fuente: http://vlsi.die.uniroma1.it/centurelli/lez15.pdf
93
Operación a medida que
VSB = 0
S
VGS > Vth
G
VDS
aumenta
VDS = 0
D
ID = 0
n+
VGS > Vth
G
VSB = 0
S
ID = 0
n+
n+
VDS = 0
D
ξ
n+
Substrato tipo p
Substrato tipo p
B
B
Figura 4.13 Operación del MOSFET con
VDS en aumento
Como vemos en la Figura 4.13, VDS Saparece como caída de tensión a lo largo del
canal desde fuente a drenador y la tensión aumenta de 0 a VDS .Entonces la tensión entre
la compuerta y puntos situados a lo largo del canal disminuye de VGS en fuente a VGS −V DS
en el extremo del drenador.
S
D
Canal
VDS ≥ VGS - Vth
VDS
VDS = 0
Figura 4.14 Incremento de VDS causa disminución en la profundidad del canal, hasta llegar
al punto de estrangulamiento cuando V = V − V
DS
GS
th
A medida que V DS aumenta el canal se hace más estrecho y su resistencia aumenta
(Figura 4.14). Entonces la curva I D −V DS no continúa recta si no que se dobla. Cuando
la profundidad del canal disminuye casi a cero se dice que el canal está estrangulado.
Aumentar V DS a más de este valor tiene poco efecto en la forma del canal, y la corriente
que pasa por el canal permanece constante al valor alcanzado para V DS =VGS −Vth . La
corriente de drenador entonces se satura a este valor, y el MOSFET se dice que entra en
estado de saturación:V DSsat =VGS −Vth
Caracterización del MOSFET de Enriquecimiento
El MOSFET de enriquecimiento requiere de una tensión positiva entre la compuerta
y la fuente para establecer un canal. Este canal se forma por la acción de una tensión
positiva compuerta a fuente VGS , que atrae electrones de la región del sustrato ubicada
entre el drenaje y la compuerta contaminados de tipo n. Una tensión VGS positiva provoca
que los electrones se acumulen en la superficie inferior de la capa de óxido. Cuando la
tensión alcanza el valor de umbral Vth , han sido atraídos a esta región los electrones sufi-
94
cientes para que se comporte como canal n conductor. No habrá una corriente apreciable
I D hasta que VGS exceda a Vth
No existe un valor I D para el MOSFET de enriquecimiento, ya que la corriente de
drenaje es cero hasta que el canal se ha formado. I D es cero para VGS = 0 . Para valores
de VGS >Vth , la corriente de drenaje se puede calcular de la ecuación:
I D = k (VGS −Vth )
2
(1.1)
El valor de k depende de la construcción del MOSFET y, en principio, es función del
largo y ancho del canal. Un valor típico para k es 0.3mA/V 2 ; la tensión de umbral Vth , es
especificada por el fabricante.
Fuente
S
Drenaje
D
Compuerta
G
n
Fuente
S
D
p
n
D
p
Substrato
Substrato
G
G
Substrato tipo n
Substrato tipo p
S
SiO2
a) Esquema de la estructura física
S
SiO2
a) Esquema de la estructura física
b) Símbolo
b) Símbolo
ID (mA)
ID (mA)
VGS
Drenaje
D
Compuerta
G
VGS = 5V
VGS = -5V
VGS1 < VGS
VGS1 < VGS
VGS2 < VGS1
VGS2 < VGS1
VGS3 < VGS2
VGS3 < VGS2
-VGS
VT
VDS (V)
c) Características de trasferencia e ID - VGS
-VT
c) Características de trasferencia e ID - VGS
-VDS (V)
Figura 4.15 MOSFET de enriquecimiento de canal n (izq.) y MOSFET de
enriquecimiento de canal p (der.).
Modos de Operación
1.
2.
FF: VGS <Vth donde Vth es la tensión de umbral. No hay conducción entre drenaje
O
y fuente. Pequeña corriente de fuga no considerable.
RIODO o REGIÓN LINEAL: VGS >Vth y V DS <VGS −Vth . Flujo de corriente entre deT
naje y fuente. El MOSFET opera como resistencia controlada por tensión en compuerta. La corriente de drenaje a fuente es:
I ÐÐÐÐ
=
µnC ox W
2(V −V )V
2 L
(
−V 2
)
(1.2)
Donde µn es la movilidad, W el ancho del canal, L el largo del canal y C ox la capacitancia en la compuerta.
95
3.
ATURACIÓN: VGS >Vth y V DS >VGS −Vth . La corriente en drenaje es relativamente
S
independiente de la tensión en drenaje, siendo controlada por la tensión en la
compuerta. Una aproximación de 1er orden se muestra a continuación:
ID =
2
µnC ox W
VGS −Vth )
(
2 L
(1.3)
Características Tensión-Corriente
El MOSFET de enriquecimiento puede ser modelado simplemente como un interruptor o switchen el cual la corriente puede fluir en cualquier dirección. El modelo que se describe a continuación es útil para la lógica y tiempos en la simulación del comportamiento
de un circuito integrado MOS.
Existen muchos modelos que permiten la simulación de circuitos integrados MOS que
consideran o no cierta clase de diferentes parámetros. El siguiente análisis del comportamiento del transistor se hace con referencia al primer y más simple modelo utilizado en
Pspice. Uno de los parámetros más importantes para un transistor corresponde al tiempo
de tránsito τ , de un portador (un electrón si es un MOSFET canal n o un hueco si es un
MOSFET canal p) para pasar de la fuente al drenaje.
Fuente
Compuerta
Drenador
L
Canal
Figura 4.16 Modelo de un transistor MOSFET
Considerando la Figura 4.16 del MOSFET tendríamos que simplemente τ = L donv
de v es la velocidad promedio del portador de carga.
Bajo condiciones normales, podemos calcular la velocidad promedio v de un portador
de carga. Si no hay tensión aplicada entre fuente y drenaje por el canal, entonces la velocidad es 0. Si existe un campo eléctrico en la región del canal, los portadores de carga
tendrían una aceleración que corresponde a a = eE , donde e es la carga del portador, E
m
es la magnitud del campo eléctrico aplicado y m es la masa del portador. Para portadores
de carga libres. Es importante considerar las colisiones (inelásticas) que tienden a frenar
al portador de carga. Asumiremos τ c el valor como el tiempo entre colisiones. Según esto
tenemos que:
1
2
v = aτ c =
96
eE
τ = µE
2m c
(1.4)
El parámetro μes denominado movilidad. Se han determinado estos valores tanto para elec2
trones como para huecos, los cuales son: µ ≈ 750cm 2 s y µ ≈ 250cm s para el silicio.
e
p
V
V
De lo anterior tenemos que el tiempo característico τ corresponde a:
τ=
Si
L L
L2
=
=
v µE µV DS
E = −∇V =
(1.5)
V DS
L
(1.6)
El modelo para determinar la corriente que fluye por el canal y la impedancia del mismo se muestra en la Figura 4.17.
VGS
Metal
G
Oxido
+ +++++
-------
S
L
D
Figura 4.17 Modelo del MOSFET para determinar la corriente que fluye por el canal
Tenemos que: Q = −C (VGS −Vth ) donde C es la capacitancia formada entre la compuerta y el sustrato. Esta capacitancia puede modelarse como la de placas paralelas. Por lo
tanto nos queda que:
ε LW
(VGS −Vth )
D
Q =−
(1.7)
Donde L y W son el largo y ancho del canal, D es la distancia entre la compuerta y el
sustrato, y ε es la permitividad del material (4.2co para el silicio).
La corriente que fluye por el canal es:
I DS =
Q µεW
=
(V −V )V
τC
LD GS th DS
(1.8)
Si asumimos que el campo eléctrico es uniforme en todo el canal. Un análisis más
complejo determina que:
En la región lineal y
I DS =
µεW 
2(VGS −Vth )V DS −V DS2 

2LD
I DS =
2
µεW
VGS −Vth )
(
2LD
(1.9)
(1.10)
97
En la región de saturación la impedancia del canal se puede determinar así:
Z=
V DS
2LD
2L2
=
=
I DS µεW (VGS −Vth ) −V DS  µC G (VGS −Vth ) −V DS 




(1.11)
Si el transistor está en la región activa y
Z=
En la de saturación.
2
2LV
DS
(1.12)
µC G (VGS −Vth )
2
τ
Podemos calcular también la constante de tiempo CG para un transistor que carga la
compuerta de otro transistor idéntico. Este tiempo es muy importante para un dispositivo
lógico ya que corresponde al “gatedelay” o retraso de tiempo en compuerta:
τCG = RC G =
2
2LV
DS
µ (VGS −Vth )
2
=
(V
2τV DS2
GS
(1.13)
−Vth )
2
Para VGS =V DS y Vth = 0.2Vds tenemos que: τCG = 3.1τ , asumiendo que el transistor que
provee la carga está en saturación.
I
V DS
A continuación se muestra la gráfica de corriente DS contra tensión
valores de corriente de compuerta aplicada (Figura 4.18).
ID (mA)
VDS ≤ VGS - Vth
Región
Triodo
18
16
VDS ≥ VGS - Vth
Región de
saturación
VGS = Vth + 8V
14
12
VDS = VGS - Vth
10
8
VGS = Vth + 6V
6
4
VGS = Vth + 4V
2
VGS = Vth + 2V
2
4
6
8 10 12 14 16 18
VDS (V)
VGS ≤ Vth (Zona de corte)
Figura 4.18 Curva característica
98
IDS - VDS del MOSFET de enriquecimiento
para varios
Entonces tenemos tres estados para la corriente, que son:
I DS
VGS <Vth
0
2
µεW 
V DS 
0 <V DS <VGS −Vth
=−
(VGS −Vth )V DS −
2 
LD 
2
µεW
VGS −Vth ) 0 <VGS −Vth <V DS
(
2LD
Realmente en la región de saturación, la corriente I DS no es completamente inde-
pendiente de la tensión V DS , parcialmente porque V DS “vacía” los portadores de carga del
pozo. Este efecto disminuye el largo efectivo del canal y además agrega portadores de
carga al canal como se ve en la Figura 4.19.
Estos efectos son modelados por el parámetro λ , “factor de modulación del largo del
canal”. Incluyendo esto tenemos la expresión de la corriente de la siguiente forma:
I DS =
2
µεW
VGS −Vth ) (1 + λV DS )
(
2LD
(1.14)
+VDS
++++++
N
Figura 4.19 Efecto de
P
+ + +
_
_ ++
_ +
N
_ +
_ +
VDS sobre el canal, disminuye el largo efectivo y agrega portadores de carga
Inicialmente, si no hay carga aplicada a la compuerta, la fuente y el drenaje son separados por uniones PN no polarizadas y no hay corriente que pueda fluir entre las regiones.
(La impedancia en estado OFF o apagado del transistor está del orden de Mega-ohms).
Cuando una carga es aplicada a la compuerta, los portadores son atraídos desde el
sustrato hacia el canal como se muestra en la Figura 4.20.
VGS
+VDS
++++ ++++
-----++++
+++
+
Región de Agotamiento
Figura 4.20 Región de vaciamiento
99
El grueso de la región de agotamiento o vaciamiento X d puede ser calculado como
función del potencial electrostático φS . Para los transistores tipo P, la capa de agotamiento se hace al desplazar hacia abajo los huecos móviles.
El número de huecos dQ corresponde a:
(1.15)
dQ = q ( −N P )dX d
El cambio del potencial en la superficie φS es:
d φS = −X d dE = −
Integrando y despejando X d obtenemos:
X d dQ qN P X d
dX d
=
ε Si
ε Si
 2ε φ − φ
X D =  Si S F
qN P

1
2


(1.16)
(1.17)
Donde ε Si es la permitividad del silicio, q es la carga de un portador, N P es la densidad de iones tipo P en el sustrato y φF corresponde a la constante de integración. La
carga por unidad de área en el canal es:
1
Q = −qN P X d = − 2qN P ε Si φS − φF  2
(1.18)
φ = −φF
. Para calcular esta tensión debemos
La tensión Threshold se define como S
saber la concentración de portadores N en el sustrato mediante la siguiente expresión:
φF =
φF =
KT lnln ni
q NP
(1.19)
KT lnln N N
q
ni
(1.20)
Si el sustrato no está polarizado entonces (φS = −φF ) y
1
Cuando está polarizado
Y
Q BO = − 2qN P ε Si −2φF  2
(1.21)
φS = −2φF +V SB
(1.22)
Q B = − 2qN P ε Si −2φF +V SB 
100
1
2
(1.23)
Entonces la tensión Vth corresponde a:
Vth = φGC − 2φF −
Donde
QB Qox
−
C ox C ox
(1.24)
φGC = φF (substrato ) − φF (compuerta )
(1.25)
Tensión que representa la diferencia de materiales del substrato y la compuerta; Qb / C ox
corresponde a la capa de agotamiento y Qox / C ox es la pérdida debida a impurezas.
Despejando con la intención de dejar este Vth en términos de V SB (tensión de polarización del sustrato) podemos llegar a la siguiente expresión:

1
1

Vth =VthO + Υ  −2φF +V SB 2 − 2φF 2 

Donde
(1.26)

1
(1.27)
2q ε Si N P  2
Υ=
C ox
El parámetro VthO es la tensión inicial de umbral y Υ es llamado “factor coeficiente de
efecto de cuerpo”.
La Figura 4.21 muestra la zona segura de operación, entendida como la región en la
que se evitan prolongados tiempos de respuesta y “switcheo”.
ID
Potencia Límite
Limitado
por RDS
10uS
1mS
100mS
DC
VDS
VDS máx
Figura 4.21 Zona segura de operación del MOSFET
101
Simulaciones
Tensión Threshold y Corriente de Saturación para un MOSFET tipo n de enriquecimiento. El esquemático implementado en Pspice se muestra a continuación:
0
0V
- V1
+ 15Vdc
R2
1
R1 M6
V1 = 15V
V2
+ 1K IRF150
V2 = -15V
TD = 0.0001 TR = 3ms
TF = 3ms
PW = 3ms
0
PER = 3ms
0
Figura 4.22 Simulación MOSFET
El VGS está simulado mediante una fuente rampa de -15V a 15V en 3ms. El transistor
está polarizado mediante una fuente de 15V en drenador y una resistencia limitadora de
corriente de 1ohm. El transistor es un irf150, MOSFET de potencia. Para lograr encontrar
el Vth debemos graficar la corriente I DS en términos de VGS . Las simulaciones respectivas
se muestran enseguida.
La tensiónthreshold corresponde alatensión con la que se alimenta la compuerta en la
cual empieza a circular corriente como podemos ver en la gráfica de Pspice.
Figura 4.23 Resultado de la simulación
102
Para observar más detalladamente estatensión ampliamos la imagen y encontramos
fácilmente que estatensión está alrededor de los 2.8 a 3V. Este parámetro está especificado para este tipo de transistor pero sabemos que podemos modificar esto y trabajar
con la información exacta de nuestro transistor.
Figura 4.24 Resultado de la simulación
La corriente de saturación se puede ver en la parte de arriba de la primera gráfica y
según nuestro esquemático corresponde a 15mA aproximadamente. En la siguiente gráfica se aprecia mejor este hecho.
Figura 4.25 Resultado de la simulación
103
MOSFET de vaciamiento o agotamiento
E
n este punto se va a realizar el estudio de los transistores MOSFET de vaciamiento. El estudio, dada la gran similitud de funcionamiento con los MOSFET de
acumulación, se limitará a la descripción de estos transistores y su funcionamiento
desde el punto de vista cualitativo y las diferentes regiones de funcionamiento.
Empezaremos por mostrar en la Figura 4.26 los símbolos más ampliamente utilizados
para representar a estos transistores.
D
ig
G
_
VGD
D
iD
+
+
+
ig
VDS
VGS
G
_
_
VGD
ig
VGS
VDS
(c)
G
VGS
D
iD
+
+
+
ig
B VDS
_
_
ig
S
(b
ig
S
D
ig
_
_
(a)
_
+
+
+
S
VGD
iD
_
G
VGD
+
iD
_
+
B VDS
+
VGS
_
_
ig
S
(d)
Figura 4.26 Símbolos y definición de corrientes y tensiones para transistores MOSFET de vaciamiento
(a) y (b) Canal n, (c) y (d) Canal P
104
Definidas todas las corrientes entrantes se cumple:
I D + IG + I S = 0
(1.28)
V DS −VGS +VGD = 0
(1.29)
Al igual que en los transistores MOSFET de acumulación, la corriente de compuerta
en continua siempre es cero (I G = 0) . En la Fgura 4.27 se muestran las secciones trasversales de las configuraciones básicas de los transistores MOSFET de vaciamiento. La
diferencia entre estos transistores y los MOSFET de acumulación, es que en los MOSFET de vaciamiento en el proceso de fabricación se depositan, bajo la puerta de óxido,
impurezas del mismo tipo que el de las “islas” del drenador y fuente. Esto es, en un transistor MOSFET de vaciamiento canal n entre las islas de drenador y fuente (que son tipo
n+) se crea, durante el proceso de fabricación, un canal de impurezas de tipo n. Para el
caso de un MOSFET de vaciamiento canal p, el canal que se crea durante el proceso de
fabricación es de impurezas de tipo p. Esto hace que exista canal sin necesidad de tener
que aplicar tensión en el terminal de compuerta (VGS = 0) . Esta es la razón por la que a
este tipo de transistores se le suele conocer como transistores MOSFET “normalmente
ON” (sin necesidad de aplicar tensión en compuerta, si V DS = 0 existirá corriente entre
drenador y fuente). Por el contrario, en los transistores MOSFET de acumulación, como
ya se ha visto, para que exista corriente entre drenador y fuente es necesario aplicar una
tensión en el terminal de compuerta (VGS >Vth para canal n y VGS <Vth para canal p), por
ello, los transistores MOSFET de acumulación también se conocen por “normalmente
OFF”. En algunas aplicaciones, como por ejemplo electrónica de potencia, interesa utilizar transistores MOSFET “normalmente OFF” ya que se debe garantizar que la condición de conducción sea expresamente forzada (el transistor debe permanecer cortado en
ausencia de tensión en compuerta). Ésta es la razón fundamental por la que en aquellas
aplicaciones donde se manejen grandes corrientes (electrónica de potencia, por ejemplo), interesa, para evitar posibles daños, que los dispositivos permanezcan cortados en
ausencia de tensión de compuerta, y por ello no se suelen utilizar ni transistores MOSFET
de vaciamiento ni JFET (recuérdese que estos últimos también conducen para VGS = 0 ).
Compuerta G
Compuerta G
Drenador D
Fuente S
SiO2
SiO2
n+
Substrato
n
SiO2
n+
P
B Substrato
(a)
Drenador D
Fuente S
SiO2
SiO2
P+
Substrato
Zona de canal
P
SiO2
P+
n
B Substrato
Zona de canal
(b)
Figura 4.27 Sección transversal de las estructuras MOSFETs de vaciamiento básicas. (a) MOSFET
canal n, (b) MOSFET canal p.
105
Al igual que en los MOSFET de acumulación, una de las islas constituye el terminal de
drenador (D) y la otra el de fuente (S). La corriente, como se pondrá de manifiesto, fluye
entre estos dos terminales y está controlada por el terminal de compuerta (G). El terminal de drenador será aquel que “drene” portadores mayoritarios. Siendo los portadores
mayoritarios los electrones para el transistor canal n y los huecos para el canal p. Obsérvese que aquí también existen uniones pnentre drenador (D) y el sustrato (B) al igual que
entre fuente (S) y sustrato (B). Para garantizar el correcto funcionamiento del transistor
MOSFET se debe garantizar que estas uniones estén polarizadas en inverso. De nuevo,
al igual que en el caso de transistores MOSFET de acumulación, todas las tensiones se
referirán al terminal de fuente (S): V BS ,V DS y VGS .En principio, también se va a suponer
que V BS = 0 (situación muy frecuente).
Estudio cualitativo
Para ver el funcionamiento de los transistores MOSFET de vaciamiento vamos a utilizar los montajes de la Figura 4.28.
Fuente S
VGS
Fuente S
VDS
VDS
VGS
Compuerta
G
Compuerta
G
Drenador D
Drenador D
SiO2
SiO2
n+
Substrato
n
SiO2
n+
P
B Substrato
(a)
SiO2
SiO2
P+
Substrato
Zona de canal
P
SiO2
P+
n
B Substrato
Zona de canal
(b)
Figura 4.28 Estructuras y tensiones para el estudio cualitativo de MOSFETs
de vaciamiento (a) canal n, (b) canal p
Si nos referimos al transistor canal n se observa, por una parte, que la tensión entre
drenador y fuente tiene que ser positiva (V DS > 0 ) y por otra que con VGS = 0 al existir canal
la resistencia entre drenador y fuente será pequeña y, por tanto, existirá corriente entre
drenador y fuente; esta corriente, definida entrante en el drenador es positiva ( I D > 0 ). Si la
tensión VGS es positiva (VGS > 0 ) esto hace que se incremente aún más la conductividad del
canal ya que esta tensión positiva induce cargas negativas en la zona de canal (se extraen
electrones de los pozos). Para tensiones de compuerta negativas (VGS < 0 ) lo que ocurre es
que en la zona de canal se inducen cargas positivas (los electrones del canal se empiezan
a quedar en los pozos); de esta forma, se provoca el vaciamiento en la concentración de
electrones en el canal, lo que supone un incremento de la resistencia del canal.
106
Existe una tensión umbral Vth de VGS , que será negativa, para la cual deja de existir
canal (se inducen en la zona de canal suficientes cargas positivas, o lo que es lo mismo
todos los electrones del canal se quedan en los pozos) y por tanto deja de existir corriente entre drenador y fuente. La corriente de drenador en función de VGS se muestra en la
Figura 4.29. Para ver la dependencia de I D con V DS , supongamos una tensión VGS 1 >Vth
(es decir, existe canal). En estas condiciones para V DS pequeñas el canal presentará una
resistencia también muy pequeña y la variación de I D con V DS es casi lineal (el valor de
la resistencia del canal permanece constante), a medida que se va incrementando V DS se
va produciendo el estrangulamiento del canal, que será más pronunciado por las zonas
más próximas a drenador (téngase en cuenta que el estrangulamiento del canal se ve
favorecido por tensiones entre compuerta y canal negativas, por tanto al ser V DS > 0 esto
favorece el estrangulamiento en las proximidades de drenador). Existe un valor de V DS al
que llamaremos V DSat para el cual se estrangula el canal. Tensiones V DS superiores a V DSat
ya no producen incrementos en I D , por tanto I D se mantiene constante. El valor de V DS
para el cual se alcanza el estrangulamiento del canal viene dado para V DS =VGS −Vth . En la
Figura 4.29.b se muestra la variación de I D con V DS (características de salida).
VDS =VGS- Vth
ID>0
ID>0
HM
IC
A
IDsat (VGS2)
CORTE
0
VGS
0
VGS1
VGS ≤ Vth
}
(a)
VGS ≥ Vth
IÓ
AC
SA
TU
R
IDsat (VGS1)
Región
de corte
Vth<0
VGS2
N
Ó
Región
de saturación
(activa)
(A
Región
óhmica
CT
IV
A)
VGS3
VDS >0
Región de variación ID - VDS casi lineal
(b)
Figura 4.29 Curvas características de (a) entrada y (b) salida de un transistor
MOSFET de vaciamiento canal n
107
Transistor canal p
Para el caso de transistores canal p se puede hacer un razonamiento similar al del
canal n. La única diferencia es que en el caso de transistores canal p los portadores del
canal son huecos y la tensión de compuerta para controlar el ancho del canal debe ser
positiva. Esto es para VGS >Vth (donde Vth es un valor positivo) el canal estará estrangulado y la corriente entre drenador y fuente será nula. También se puede comprobar que
en este caso la tensión V DS es negativa (obsérvese que con V DS < 0 la corriente circula de
fuente a drenador, por tanto por D se “drenan”- huecos, que son los portadores mayoritarios en este tipo de canal), al igual que la I D , si se define entrante.
En la Figura 4.30 se muestran las curvas de entrada y salida para el caso de transistores MOSFET de vaciamiento canal p. En lo que se refiere a las ecuaciones que relacionan la corriente de drenador con las tensiones en los terminales, en las tablas 1 y 2
se resumen dichas ecuaciones así como los modos de funcionamiento. Como se puede
comprobar, las ecuaciones I D = f (V DS ,VGS ) son idénticas a las de los transistores MOSFET de acumulación.
VDS =VGS- Vth
ID>0
ID>0
VGS3
VGS2
SATURACIÓN
VGS ≤ Vth
VGS1
CORTE
0
Vth>0
(a)
VGS
VGS ≥Vth
0
VDS <0
(b)
Figura 4.30 Curvas características de (a) entrada y (b) salida de un transistor MOSFET de vaciamiento
canal p con resistencia constante en la región óhmica para cada VGS
108
Resumen sobre MOSFET de vaciamiento canal n:
regiones de trabajo, ecuaciones...
Símbolo
Transistor Canal n
Parámetros
Tensiones
Vth < 0, k > 0
Región de
Signo de Corrientes y
V DS ≥ 0, I D ≥ 0
Condiciones
Corrientes y
funcionamiento
circuitos en continua
--
CORTE
VGS ≤Vth
SATURACIÓN
VGS >Vth
V DS ≥VGS −Vth
VGS >Vth
V DS ≤VGS −Vth
I GS = 0, I S = −I D
ID = 0
ID =
k
(V
2
−Vth )
2
GS
(ACTIVA)
ÓHMICA

I D = k (VGS −Vth )V DS −

ID =
V DS
R DSON
R DSON =
k
2
V DS2 

2 
1
, donde:
(V
GS
−Vth )
Tabla 4.1 Resumen sobre MOSFET de vaciamiento canal n4
4 Mazo, Manuel. García, Juan. Palazuelos, Sira. Dispositivos electrónicos II. Universidad de Alcalá
de Henares, Servicio de Publicaciones, 2006. Capitulo 2.
109
Resumen sobre MOSFET de vaciamiento canal p:
regiones de trabajo, ecuaciones...
Símbolo
Transistor Canal p
Parámetros
y tensiones
Vth > 0, k < 0
Región de
Signo de Corrientes
V DS ≤ 0, I D ≤ 0
Condiciones
Corrientes y
funcionamiento
circuitos en continua
--
CORTE
VGS ≥Vth
SATURACIÓN
VGS <Vth
V DS ≤VGS −Vth
VGS <Vth
V DS ≥VGS −Vth
ID = 0
ID =
(ACTIVA)
ÓHMICA
k
(V
2
GS
−Vth )
2

I D = k (VGS −Vth )V DS −

ID =
V DS
R DSON
R DSON =
k
2
V DS2 

2 
1
, donde:
(V
GS
−Vth )
Tabla 4.2 Resumen sobre MOSFET de vaciamiento canal n5
5 Mazo, Manuel. García, Juan. Palazuelos, Sira. Dispositivos electrónicos II. Universidad de Alcalá
de Henares, Servicio de Publicaciones, 2006. Capitulo 2.
110
ID
-ID
ID
-IDm
-ID
Sat
Ohm
Conducción
Sat
Conducción
VGS1
Corte
-VP
VGS
VGS1
Corte
Corte
VGS1
VP
Ohm
VGS1
VDS
VP
Corte
-VP
VGS
VDM=VGS1-VP
Curvas I-Vde JFET canal N
Curvas I-Vde JFET canal P
ID
-ID
-ID
Sat
Sat
Ohm
Conducción
Ohm
Conducción
VGS1
Corte
VGS1
VDS
VDM=VGS1-VP
VGS
Vr
VGS1
Curvas I-Vde NMOS de Acumulación
Corte
-VDS
VDM=VGS1-VP
VGS
Curvas I-Vde PMOS de Acumulación
ID
ID
VGS1
Corte
Corte
VP
-ID
-ID
Sat
Sat
Ohm
Conducción
VGS
VDS
VDM=-VR
ID
Vr
VGS
D
S
VDS
G
D
S
VDS
VGS
G
VGS
VDS
S
G
VGS
ID D
ID D
VDS
S
MOS Acumulación canal N y P
Transistores MOSFET
Acumulación
Vaciamiento
Saturación
Ecuación: ID = k (VGS - Vr)²
Condición de funcionamiento en sat:
Canal N: Vr < VGS
VDS > VDSat
Canal P: VGS < Vr
VDS< VDSat
-VDS
VDM=VGS1-VP
VGS
ID D
JFET canal N y P
Corte
Ecuación: ID = 0
Condición de funcionamiento en corte:
Canal N: VGS < Vr
Canal P: Vr < VGS
Corte
Curvas I-Vde PMOS de Vaciamiento
ID D
ID
VGS1
Corte
Corte
Curvas I-Vde NMOS de Vaciamiento
G
Ohm
Conducción
Corte
Vr
-VDS
VDM=VGS1-VP
Corte
Ecuación: ID = 0
Condición de funcionamiento en corte:
Canal N: VGS < Vr
Canal P: Vr < VGS
Saturación
Ecuación: ID = k (VGS - Vr)²
Condición de funcionamiento en sat:
Canal N: Vr < VGS
VDS > VDSat
Canal P: VGS < Vr
VDS< VDSat
Ohmica
Ohmica
Ecuación: RDS= 1/ (k (VGS - Vr))
Ecuación: RDS= 1/ (k (VGS - Vr))
Condición de funcionamiento en Ohm:
Condición de funcionamiento en Ohm:
Canal N: Vr < VGS
Canal N: Vr < VGS
VDS < VDSat
VDS < VDSat
Canal P: VGS < Vr
Canal P: VGS < Vr
VDS > VDSat
VDS > VDSat
Nota: VDSat - VGS - Vr Canal N: con Vr > 0 Nota: VDSat - VGS - Vr Canal N: con Vr < 0
Canal P: con Vr < 0
Canal P: con Vr > 0
G
VGS
VDS
S
G
VGS
VDS
S
MOS Vaciamiento canal N y P
Transistores JET
Corte
Ecuación: ID = 0
Condición de funcionamiento en corte:
Canal N: VGS < Vr
Canal P: Vr < VGS
Saturación
Ecuación: ID = k (VGS - Vr)²
Condición de funcionamiento en sat:
Canal N: VP < VGS < 0
VDS > VDSat
Canal P: 0 < VGS < Vr
VDS< VDSat
Ohmica
Ecuación: RDS= 1/ (k (VGS - Vr))
Condición de funcionamiento en Ohm:
Canal N: VP < VGS < 0
VDS < VDSat
Canal P: 0 <VGS < VP
VDS > VDSat
Nota: K=VDSS/VP²
Canal N: con Vr < 0
VDSat =VGS - VP Canal P: con Vr > 0
Figura 4.31 Resumen sobre MOSFET de vaciamiento canal n6
6 Mazo, Manuel. García, Juan. Palazuelos, Sira. Dispositivos electrónicos II. Universidad de Alcalá
de Henares, Servicio de Publicaciones, 2006. Capitulo 2.
111
Capacitancias Internas del MOSFET
E
l uso de modelos en donde no tomamos en cuenta el tiempo finito requerido
para cargar y descargar las diversas capacitancias internas del transistor nos
lleva a pronosticar ganancias constantes de amplificador independientes de la
frecuencia. Desafortunadamente en la realidad no ocurre esto, la ganancia de
todo amplificador MOSFET cae a alguna frecuencia alta. Del mismo modo, el inversor
MOSFET muestra un tiempo de propagación finito, diferente de cero. Para estar en
posibilidad de pronosticar estos resultados, el modelo MOSFET debe ser acrecentado
incluyéndole capacitancias internas (Figura 4.32).
CGD
CGS
D
S
CGB
CSB
CDB
B
Figura 4.32 Capacitancias del MOSFET
Hay básicamente dos tipos de capacitancias internas en el MOSFET:
1. El efecto capacitivo de compuerta: el electrodo de compuerta (polisilicio) forma un
condensador de placas paralelas con el canal, sirviendo la capa de óxido como
el dieléctrico del condensador. La capacitancia de compuerta u óxido es llamada
C ox .
2. Las capacitancias de capa de agotamiento de fuente de cuerpo y de drenadora
cuerpo: Éstas son las capacitancias de las uniones pn polarizadas inversamente
formadas por la región de la fuente n+ (también llamada difusión de fuente) y el sustrato tipo p, y por la región del drenador n+ (la difusión del drenador) y el sustrato.
Estos dos efectos capacitivos se pueden modelar si se incluyen capacitancias en el
modelo de MOSFET entre sus cuatro terminales, G, D, S y B. Habrá cinco capacitancias
en total: C gs , C gd , C gb ,C sb y C db , donde los subíndices indican la ubicación de las capacitancias en el modelo, ver Figura 4.32.
112
G
D
S
CGS
CGD
CGB
CDS
Capacitancias del MOSFET
limitan su respuesta de frecuencia
CSB
Capacitancias del MOSFET
B
Intrínsecas
Extrínsecas
-Independencia de voltaje
-Dependientes de voltaje
-Debidas a fabricación:
influenciadas por presencia del canal
ej: traslapes (Cox)
Figura 4.33 Clases de capacitancias del MOSFET
El Efecto Capacitivo de Compuerta
Este efecto puede modelarse por las tres capacitancias: C gs , C gd yC gb .
1. Cuando el MOSFET opera en la región del triodo a un pequeño V DS , el canal será de
profundidad uniforme. La capacitancia entre compuerta y canal será WLC ox y se puede
modelar al dividirla igualmente entre los extremos de fuente y compuerta; entonces:
(1.30)
C gs = C gd = 1 WLC ox
2
2. Cuando el MOSFET opera en saturación, el canal tiene una forma cónica y se
estrangula en el extremo del drenador, o cerca de éste. Entonces tenemos:
C gs = C gd = 1 WLC ox y C gd = 0
(1.31)
2
3. Cuando el MOSFET se corta el canal desaparece y tenemos:
C gs = C gd = 0
y
C gb =WLC ox
(1.32)
4. Hay una componente capacitiva pequeña adicional que debe sumarse a C gs y C gd
en todas las fórmulas precedentes. Ésta es la capacitancia que resulta del hecho
de que las difusiones de fuente y drenador se extienden ligeramente bajo el óxido
de la compuerta. Si la longitud de traslape está denotada como Lov , vemos que la
componente de capacitancia de traslapees:
C ov =WLov C ox
(1.33)
Típicamente, Lov = 0.1 – 0.2 μm, que puede ser una fracción importante de la longitud
del canal en modernas tecnologías CMOS de submicrones.
En la figura 4.34 se observan las capacitancias en las diferentes regiones de operación del MOSFET y el comportamiento del canal.
113
CGB
CGD
CGS
C´OX WL
COV
COV
1/2 C´OX WL
1/2 C´OX WL
Región de operación
Corte
Lineal
COVB
Saturación
G
D
COVB
+
_____________
n+
2/3 C´OX WL
COV
_ S
G
D
n+
n+
_
+
_ S
__________
n+
P
P
B
B
Compuerta y substratos aislados por canal
Canal conecta compuerta con drenador y fuente
Compuerta y substratos aislados por canal
Canal conecta compuerta con uente
Figura 4.34 Capacitancias en las diferentes regiones de operación del MOSFET
Las Capacitancias de Unión
Las capacitancias de agotamiento de las dos uniones pn inversamente polarizadas,
formadas entre cada una de las difusiones de fuente y drenador con el cuerpo se pueden
determinar. Para la difusión de fuente, tenemos la capacitancia de fuente y cuerpo:
C sb =
C sbo
V
1 + SB
Vo
(1.34)
Donde C sbo es el valor de C sb a cero polarización de cuerpo y fuente, V SB es la magnitud
de la tensión de polarización inversa, y Vo es la tensión integrada de unión (0.6 a 0.8 V). Del
mismo modo, para la difusión de drenador, tenemos la capacitancia de drenador y cuerpo C db :
C db =
C
C dbo
1+
V DB
Vo
(1.35)
Donde dbo es el valor de la capacitancia a tensión cero de polarización inversa, y V DB
es la magnitud de la tensión de polarización inversa. Nótese que hemos supuesto que,
para ambas uniones, el coeficiente de clasificación es m = ½.
114
Modelos del MOSFET
Modelo de un MOSFET canal n, a gran señal, saturado
Modelo de un MOSFET canal n, a gran señal, saturado
IG = 0
ID
D
G
+
+
VGS
_
S
1/2 Kn W/L (VGS - Vth)² VDS
_
Figura 4.35 Modelo de un MOSFET canal n, a gran señal, saturado
VGS ≥Vth y V DS ≥VGS −Vth son las condiciones de tensiones iniciales. k n' es la transconductancia del proceso cuya dimensión es A/V2 y es igual �nC ox , donde �n es la movilidad
del electrón en el canal y C ox la capacitancia por unidad de área del condensador de plaεox
cas paralelas formado por el electrodo de la compuerta y el canal: C ox = t con εox
ox
permitividad del óxido de silicio y t ox el grueso de la capa de óxido. W es el ancho de la
región del canal y L es su longitud.
Modelo de un MOSFET canal n, a gran señal, saturado, con r0 de salida
G
IG = 0
ID
+
VGS
_
+
1/2 K´n W/L (VGS - Vth)²
S
ro
D
VDS
_
Figura 4.36 Modelo de un MOSFET canal n, a gran señal, saturado, con r0 de salida
La resistencia de salida, ro ,modela la dependencia lineal de I D sobre V DS y está dada
por r ≈V A
o
ID
,donde V A es la tensión de Early cuyo valor está entre 20 y 30V.
115
Modelo de un MOSFET canal n, a pequeña señal
G
ID
IG = 0
D
+
+
gmVGS
VGS
_
VDS
_
S
Figura 4.37 Modelo de un MOSFET canal n, a pequeña señal
( )
' W
V −V
g m es la transconductancia la cual es igual a k n
L ( GS th ) ó
2k n' W
L
ID
Modelo de un MOSFET canal n, a pequeña señal, con r0 de salida
IG = 0
G
ID
+
+
gmVGS
VGS
_
ro
D
VDS
_
S
Figura 4.38 Modelo de un MOSFET canal n, a pequeña señal, con r0 de salida
La resistencia de salida r0 modela el efecto de modulación de longitud de canal y vale
ro =
VA
ID
Modelo T de MOSFET con r0 de drenaje a fuente
D
gmVGS
G
VGS
ro
+
_
S
Figura 4.39 Modelo de un MOSFET canal n, a pequeña señal, con r0 de salida
116
Modelo a pequeña señal de un MOSFET con el cuerpo no
conectado a la fuente
IG = 0
ID
G
D
+
VGS
_
gmVGS
gmVBS
ro
_
S
B
+
VBS
Figura 4.40 Modelo a pequeña señal de un MOSFET con el cuerpo no conectado a la fuente
Con VBS la tensión del cuerpo a la fuente, el cual sólo aparece cuando el cuerpo no
está conectado a la fuente.
Modelo de alta frecuencia para el MOSFET
G
Cgd
D
+
VGS
Cgs
_
gmVGS
gmVBS
ro
Cdb
_
S
VBS
+
Csb
B
Figura 4.41 Modelo de alta frecuencia para el MOSFET
A alta frecuencia, aparecen unas capacitancias entre las terminales del transistor7, las
cuales son:
C gd : Capacitancia entre compuerta y drenaje.
C gs : Capacitancia entre compuerta y fuente.
Csb : Capacitancia entre fuente y cuerpo.
Cdb : Capacitancia entre drenaje y cuerpo.
7 Whites, EE. Lecture 28: MOSFET as anamplifier. http://whites.sdsmt.edu/classes/ee320/
notes/320Lecture28.pdf
117
Modelo de alta frecuencia para el MOSFET con la fuente
conectada al sustrato
G
Cgd
+
VGS_
Cgs
D
gmVGS
ro
Cdb
S
Figura 4.42 Modelo de alta frecuencia para el MOSFET con la fuente conectada al sustrato
Modelo de alta frecuencia para el MOSFET más común
G
Cgd
+
VGS_
Cgs
gmVGS
D
ro
S
Figura 4.43 Modelo de alta frecuencia para el MOSFET más común
Modelo de MOSFET pequeña señal
P
ara realizar el análisis de un transistor MOSFET en pequeña señal, vamos a
usar la polarización que se muestra en la Figura 4.44.
Dados los requerimientos de funcionamiento en región de saturación del transistor, se sabe que se debe cumplir la condición de tensión VDS ≥ VGS − Vth . Además se puede deducir que la tensión en el drenador es:
VDS = VDD − I D RD
118
(1.36)
RD
iD
VDS
+
Vgs
_
_
+
VGS
Figura 4.44 Polarización MOSFET8
Y la corriente en el drenador cuando la señal de entrada VGS es cero, por las ecuaciones características del transistor MOSFET es,
ID =
1 'W
2
kn (VGS − Vth )
2 L
(1.37)
Ahora si tomamos en cuenta la tensión VGS , sabemos que la tensión instantánea estará dada por
vGS = VGS + v gs
(1.38)
Y por ende, podemos calcular de nuevo la corriente de drenador como:
ID =
=
2
2
1 'W
1 W
(VGS − Vth ) + v gs 
kn (VGS + vgs − Vth ) = kn'
2 L
2 L
1 'W
2 W
1 W
2
kn (VGS − Vth ) + kn' (VGS − Vth ) v gs + kn' v gs2
2 L
2 L
2 L
= I D ( DC )
(1.39)
( varianteeneltiempo)
Como vemos, la ecuación anterior tiene tres términos, de los cuales dos dependen del elemento de tensión AC, y uno de ellos, el tercero de la ecuación, es indeseado, pues representa
un agregado de distorsión no lineal en la corriente, lo que es perjudicial para un amplificador
lineal. Para que esta componente no afecte el resultado del comportamiento del transistor amplificador de una forma significativa, se debe garantizar que la señal v_gs sea muy pequeña9.
Esto es, que el tercer término de la ecuación anterior sea mucho más pequeño que el primer
término. Al desarrollar esta desigualdad se concluye que se debe garantizar que
vgs  2 (Vgs − Vth ) = 2Vov
(1.40)
Donde Vov es la tensión de sobrecarga sobre la cual opera el transistor.
8 Whites, EE. Lecture 28: MOSFET as anamplifier. http://whites.sdsmt.edu/classes/ee320/
notes/320Lecture28.pdf
9 Caratteristiche dei Mosfet. Fuente: http://vlsi.die.uniroma1.it/centurelli/lez15.pdf
119
Transconductancia
Si se cumple esta condición de pequeña señal para la entrada v gs , el último término
de la ecuación (1.39) se puede eliminar y la ecuación quedaría:
i D ≅ I D + id
'
, donde i d = k n
W
(V −V )v
L GS th gs
(1.41)
Como vemos en la ecuación anterior, el parámetro que relaciona v gs con id es la
transconductancia del MOSFET, que está definida como
gm ≡
id
W
= k n' (V gs −Vth )
v gs
L
(1.42)
Desde un punto de vista analítico, la transconductancia es la pendiente de la curva característica v gs - id en el punto de polarización donde esté trabajando el transistor (Figura 4.45).
ID (mA)
ID (mA)
gm
1
Q-point
ID
ID
0
VGS (V)
0
t
VGG
0
VGS (V)
VGG
Vgs
VGS (t)
t
Figura 4.45 Transconductancia10
10 Whites, EE. Lecture 28: MOSFET as anamplifier. http://whites.sdsmt.edu/classes/ee320/
notes/320Lecture28.pdf
120
Ganancia de Tensión
Es bastante fácil deducir que, dado que la salida de nuestro amplificador es la tensión
de drenador, la ganancia de tensión del circuito es
Av =
v ds
v gs
(1.43)
Donde ambas tensiones son las tensiones AC que encontramos en la salida del amplificador, y en la entrada del mismo, respectivamente. Teniendo en cuenta que la tensión
total (con componentes DC y AC) de salida del amplificador es
(1.44)
V DS =V DD − R D i d
Podemos deducir que la componente de señal de la tensión de drenador será
v ds = −R D i d = − g m R Dv gs
Y por lo tanto,
Av =
(1.45)
v ds
= −g mRD
v gs
(1.46)
Modelo de circuito equivalente
El modelo en señal AC, el transistor en su salida funciona como una fuente de corriente ( id ) controlada por tensión ( v gs ). Esto nos permite definir un modelo de pequeña señal
para el transistor, denominado modelo híbrido (Figura 4.46).
G
IG=0
ID
+
Vgs
gm Vgs
D
1
lV
Al ___
___
ro ~
~
=
ID
λID
_
Figura 4.46 Modelo MOSFET pequeña señal, modelo híbrido
En este modelo, cabe anotar
S que:
• i g = 0 y v gs ≠ 0 garantizan que la impedancia de entrada sea infinita.
• ro modela la resistencia de salida finita. En la práctica, esta resistencia varía entre 10
kohms y 1 M ohm.
• Para este modelo se puede usar otra ecuación de transconductancia igualmente válida que la anterior, que se obtiene al reemplazar k ' W  de la ecuación (1.42) por

n
2I D
L 
2I D
, para obtener g m =
(V gs −Vth )
(V gs −Vth )2
121
Otro modelo que describe el funcionamiento del transistor en pequeña señal es el
modelo T, mostrado a continuación. Este modelo se deriva del modelo híbrido mostrado
inicialmente, como lo muestra la Figura 4.47.
G
ig=0
id
D
+
G
ig=0
gm Vgs
id
+
gm Vgs
Vgs
X
D
gm Vgs
Vgs
_
_
S
iS
S
a)
iS
b)
id
gm Vgs
G
G
ig=0
ig=0
X
gm Vgs
+
gm Vgs
Vgs
_
S
iS
iS
S
Figura 4.47 Modelo T
Incluyendo a ro , el modelo T finalmente queda como la figura 4.48.
D
gm Vgs
G
ig=0
ro
+
Vgs
1/gm
_
S
Figura 4.48 Modelo T incluyendo
122
ro
id
D
Este modelo sigue los mismos parámetros del anterior, aunque se puede notar que
tiene como diferencia principal que en este diagrama (Figura 4.48), la compuerta está
conectada tanto al drenador, como a la fuente. Esto es estrictamente incorrecto, dado que
la corriente de compuerta es cero. Sin embargo si se establece esto en el diagrama, se
puede evitar cometer errores de cálculo con este modelo.
Para funcionamiento en alta frecuencia, se deben introducir elementos capacitivos en
estos modelos.
Parámetros para modelos a distintos niveles
E
xisten cuatro niveles de modelado para un transistor MOS, niveles que se denominan del 1 al 4 y que van aumentando en complejidad. El nivel 1 es muy
sencillo y da solamente una aproximación burda; el nivel 2 introduce aspectos
como la saturación de la movilidad de los portadores del canal, conducción en
la región de débil inversión etc. A partir del nivel 3 se usan para dispositivos de canal
corto y son modelos realmente complejos. Frecuentemente se utilizan niveles 3 pero
con pocos parámetros.
En cualquiera de los niveles existen dos posibilidades de descripción: la descripción
tecnológica, en la que se dan parámetros como espesor del óxido, dopados, etc. ó bien
la descripción eléctrica en la que los parámetros son tensión umbral, transconductancia
etc. Si se le dan los parámetros tecnológicos, PSPICE calcula los parámetros eléctricos.
En caso de redundancia prevalecen los parámetros introducidos por el usuario antes que
los calculados por el programa. El modelo tiene 4 electrodos: drenaje, fuente, compuerta
y sustrato. Este último electrodo puede o no polarizarse o bien unirse a la fuente. En dispositivos discretos lo normal es que esté unido a la fuente.
El transistor MOS se modela con los siguientes parámetros geométricos, comunes a
todos los niveles.
L = longitud del canal
W = anchura del canal
TOX = espesor del óxido
LD = Xjl = longitud de la difusión lateral
Como parámetros eléctricos tenemos:
RS = resistencia parásita de la fuente
RD = resistencia parásita del drenaje
123
A partir del nivel 2:
XJ = Xj= profundidad de la unión de fuente y drenaje.
En cualquiera de los cuatro niveles se permite hacer una definición tecnológica del
dispositivo después del nombre, de forma que pueden especificarse los siguientes parámetros (manteniendo el orden):
L = longitud del canal
W = anchura del canal
AD = área de la difusión del drenaje
AS = área de difusión de la fuente
PD = perímetro del drenaje
PS = perímetro de la fuente
NRD = resistividad relativa del drenaje en ohms por cuadrado
NRS = resistividad relativa de la fuente en ohms por cuadrado
NRG = resistividad relativa de la puerta en ohms por cuadrado
NRB = resistividad relativa del sustrato en ohms por cuadrado
M = multiplicador que se usará si existen varios dispositivos en paralelo
De los anteriores parámetros, solamente L y W pueden especificarse en el modelo, los
demás han de especificarse a continuación del nombre. Si no se especifican, toman valor 0,
excepto M que toma valor 1 y por lo tanto no afectan a los parámetros del modelo habitual.
Esta forma de descripción es muy útil si se conocen los parámetros tecnológicos del
dispositivo, sin embargo tienen poca utilidad cuando se quiere caracterizar un dispositivo
a través de medidas eléctricas desde sus terminales.
Nivel 1
Supondremos en todo el análisis que:
• El transistor es de canal n.
• Corriente de compuerta I g = 0 , es decir se supondrá un óxido con conductividad nula.
• Corriente por el terminal del sustrato: I b = I bs + I bd , donde I bs es la corriente entre
el sustrato y la fuente e I bd entre el sustrato y el drenaje. Evidentemente estas
corrientes están modeladas por los dos diodos de la Figura 4.49.
I bs = I ss = Iss (exp(Vbs/N.Vt) -1)
Ibd = Ids (exp(Vbd/N.Vt)-1)
Dónde : si JS = 0 o AS = 0 o AD = 0 =>Iss = Ids = IS
En otro caso
=>Iss = AS.JS + PS.JSSW
Ids = AD.JS + PD.JSSW
124
El significado de los parámetros no explicados anteriormente es:
JS= densidad de corriente de saturación de la unión p-n entre el sustrato y el drenaje o fuente
IS= corriente de saturación de la misma unión
N = factor de idealidad de la anteriormente referida unión p-n
• Corriente por el terminal de drenaje: Id = Ibd - Idrain
• Corriente por el terminal de la fuente: Is = Ids + Idrain
• Corriente de drenaje: la corriente de la fuente Idrain se modela por tramos, de
acuerdo con las siguientes ecuaciones:
•Para V DS ≥ 0 (modo normal)
•si VGS - VTH < 0 (región de corte) Ids = 0
•si V DS < VGS - VTH (región lineal)
•si 0 ≤
VGS
I DS = K P
- VTH ≤
W
Leff
V DS
I DS =

V DS 
VGS −VTH −
V DS (1 + LAMBDA *V DS )
2


(1.47)
(región de saturación)
2
KP W
VGS −VTH ) (1 + LAMBDA *V DS )
(
2 Leff
(1.48)
• - Para V DS < 0 (modo invertido)
•- se cambia la fuente y el drenaje en las ecuaciones anteriores
El significado de los parámetros y variables de las ecuaciones anteriores es el siguiente:
VGS : tensión puerta fuente (variable)
V DS : tensión drenaje fuente (variable)
VTH : tensión umbral. Si VGS > VTH existe corriente de drenador. En caso contrario la
corriente de drenaje es 0. La expresión de VTH es:
(
VTH =VT 0 + GAMMA PHI −V BS − PHI
VT 0 =V FB + PHI
kT NSUB
PHI = 2ϕF = 2
ln
q
ni
'
Q0
V FB = ϕMS − '
C ox
)
(1.49)
Dónde VT0 es la tensión umbral sin polarización de sustrato, PHI es el potencial superficial de fuerte inversión, V BS es el potencial aplicado al sustrato (opcional), V FB es el
potencial de bandas planas, NSUB es el dopado del sustrato, ϕMS es la diferencia de funciones de trabajo entre el metal y el semiconductor, es la carga interfacial y la capacidad
del óxido. Las dos últimas magnitudes son por unidad de área.
125
El parámetro GAMMA, conocido como “efecto de cuerpo” solo tiene significado cuando existe polarización del sustrato (adicional a las polarizaciones de compuerta, drenaje
y fuente) y su valor es:
GAMMA =
2ε S qNSUB
(1.50)
C ox
'
El parámetro KP está relacionado con la transconductancia. En saturación, el modelo
de nivel 1 supone que la corriente de drenaje se puede expresar de forma aproximada por:
I DS =
β
(V
2
GS
−VTH )
2
(1.51)
Dónde β es la transconductancia y se relaciona con KP a través de las ecuaciones siguientes:
W 
W
 = K P 
 Leff 
 Leff
β = U 0 *C ox' 
Leff = L − 2LD



(1.52)
(1.53)
En la anterior ecuación U0 es la movilidad de los portadores en el canal y Leff es la
longitud efectiva del canal, entendida como la longitud teórica entre drenaje y fuente menos
las zonas difundidas que desde estos dos electrodos penetran debajo de la compuerta. No
tiene que ver con la longitud efectiva del canal cuando se sobrepasa la saturación.
El parámetro LAMBDA que aparece en las ecuaciones (1.47) y (1.48) determina la
conductancia del canal en saturación, de una forma similar al efecto Early para los transistores bipolares. La corrección de este efecto se hace empíricamente. Se deduce de
las anteriores ecuaciones que tiene como dimensiones V −1 y correspondería aproximadamente como la inversa del valor absoluto de la tensión drenaje fuente donde convergen
las prolongaciones de la corriente de drenaje en saturación. El valor de LAMBDA suele
ser muy pequeño.
Un transistor MOSFET, según PSPICE, no tiene características de entrada, puesto que
se ha supuesto que Ig = 0. Las características de salida del transistor MOS de potencia
IRF150 se presentan en la Figura 4.51. La Figura 4.52 representa la raíz cuadrada de la corriente de drenaje en función del potencial de compuerta. De acuerdo con el modelo anteriormente expuesto, esta característica ha de ser lineal, y su pendiente es la transconductancia.
Nivel 2
En el nivel 2 se introduce, aparte de unas ecuaciones descriptivas del dispositivo más
precisas, una serie de parámetros, alguno de los cuales (los más importantes) se explican a continuación:
126
NSS = densidad interfacial de cargas fijas entre el semiconductor y el óxido
TPG = descripción del material de la compuerta; solamente puede tener tres valores: 0
si la compuerta es de metal (se supone Al); -1 si es de polisilicio dopado del mismo tipo
que el sustrato y +1 si el polisilicio está dopado del tipo contrario al sustrato.
Con estos dos parámetros (y el dopado del sustrato NSUB) puede calcularse la
tensión umbral.
UCRIT, UEXP y UTRA = dependencia de la movilidad de los portadores del canal con el
campo eléctrico. Son necesarios para campos altos (potenciales altos en canales cortos).
VMAX = velocidad de transporte balístico (máxima que puede alcanzar un portador en el canal).
NFS = conducción en zonas de débil inversión (potenciales de puerta cercanos al potencial umbral)
NEFF = coeficiente de ajuste que modifica multiplicativamente al dopado del sustrato
para el cálculo de la longitud de canal libre más allá de la saturación y que se utiliza para
determinar desde parámetros físicos el valor de LAMBDA.
Los parámetros explicados anteriormente, junto con las capacitancias internas, más
los efectos del ruido y la temperatura, completan la totalidad de los parámetros que se
tienen en cuenta para modelar los MOSFET.
Nivel 3
El modelo de nivel 3 se define mediante un ajuste semiempírico de coeficientes a través
de aproximaciones de las características del transistor obtenidas a través de la medida de
las mismas. Este modelo fue desarrollado principalmente para aproximar los resultados de
la simulación a los valores experimentales en los transistores de canal ultracorto.
Además de los anteriores, existen otros modelos SPICE de los transistores MOS: versiones avanzadas de SPICE suelen incluir una docena de tales modelos. Sin embargo, en muchas ocasiones, en particular en la simulación de circuitos digitales con transistores no muy
pequeños (L ≥ 1μm), basta el modelo de nivel 1 para conseguir resultados muy aceptables.
Los modelos anteriores presentan limitaciones que se acentúan cuando se simula
el comportamiento de transistores de canal corto (longitud de canal inferior a 1 micra). Son utilizados para obtener una estimación inicial del comportamiento del circuito. Para que una simulación aporte resultados fiables, es necesario disponer de los
parámetros tecnológicos de los dispositivos. Los parámetros tecnológicos son aportados por el fabricante, y deben ser el resultado de numerosas medidas, así como del
análisis estadístico de valores tomados en el proceso de fabricación industrial. En los
procesos CMOS modernos, es el modelo BSIM (Berkeley Submicron IGFET Model) el
que proporciona simulaciones más precisas. Es un modelo obtenido partiendo de una
extracción automatizada de parámetros.
127
Parámetros comunes a todos los modelos
AF
Exponente de ruido parpadeante
1
CBD
Capacitancia entre cuerpo y drenaje p-n sin sesgo. [F]
0
CBS
Capacitancia entre fuente y cuerpo p-n sin sesgo. [F]
0
CGBO
Capacit. de superposición puerta-cuerpo /long. de canal. [F/m]
0
CGDO
Capacit. de superposición puerta-drenaje /ancho de canal. [F/m] 0
CGSO
Capacit. de superposición puerta-fuente/ancho de canal. [F/m]
0
CJ
Capacitancia de fondo/área en el cuerpo p-n sin sesgo. [F/m2]
0
CJSW
Capacitancia lateral/longitud en el cuerpo p-n sin sesgo. [F/m2]
0
FC
Coeficiente de capacitancia en el cuerpo p-n con sesgo hacia adelante
0.5
IS
Corriente de saturación del cuerpo p-n. [A]
1E-14
JS
Corriente de saturación/área en el cuerpo p-n. [A/m2]
0
JSSW
Corriente lateral de saturación/longitud en el cuerpo p-n. [A/m2]
0
KF
Coeficiente de ruido parpadeante
0
L
Longitud del canal. [m]
DEFL
LEVEL
Índice de modelo
1
MJ
Coeficiente de graduación del fondo del cuerpo p-n
0.5
MJSW
Coeficiente de graduación lateral del cuerpo p-n
0.33
N
Coeficiente de emisión del cuerpo p-n
1
PB
Potencial de fondo en el cuerpo p-n. [V]
0.8
PBSW
Potencial lateral en el cuerpo p-n. [V]
PB
RB
Resistencia óhmica del cuerpo. [Ω]
0
RD
Resistencia óhmica del drenaje. [Ω]
0
RDS
Resistencia en derivación de la unión drenaje-fuente. [Ω]
infinita
RG
Resistencia óhmica de la puerta. [Ω]
0
RS
Resistencia óhmica de la fuente. [Ω]
0
RSH
Resistencia laminar de difusión drenaje-fuente. [Ω2]
0
TT
Tiempo de tránsito en el cuerpo p-n. [s]
0
T_ABS
Temperaturaabsoluta. [°C]
T_MEASURED Temperaturamedida. [°C]
T_REL_GLOBAL Temperatura relativa a la corriente. [°C]
T_REL_LOCAL Temperatura relativa al modelo AKO. [°C]
W
128
Ancho de canal. [m]
DEFW
Parámetros específicos de los niveles 1, 2 y 3
DELTA
Efecto del ancho en el umbral
0
ETA
Realimentación estática. (Nivel=3)
0
GAMMA
Parámetro umbral de cuerpo. [V]
1/2
calcular d
KP
Coeficiente de transconductancia. [A/V2]
2E-5
KAPPA
Factor de saturación de campo. (Nivel=3)
0.2
LAMBDA
Modulación de la longitud del canal. (Nivel=1 o 2) [V-1]
0
LD
Difusión lateral (longitud). [m]
0
NEFF
Coeficiente de carga en el canal. (Nivel=2)
1.0
NFS
Densidad de estado de superficie rápida. [cm-2]
0
NSS
Densidad de estado de superficie. [cm-2]
Ninguno
NSUB
Densidad de dopaje del sustrato. [cm-3]
Ninguno
PHI
Potencial de superficie. [V]
0.6
THETA
Modulación de movilidad. (Nivel=3) [V-1]
0
TOX
Espesor del óxido. [m]
TPG
Tipo de material de la puerta:
+1 = opuesto al del sustrato.
-1 = la misma del sustrato.
0 = aluminio
+1
UCRIT
Campo crítico de degradación de movilidad. (Nivel=2) [V/cm]
1E4
UEXP
Exponente de degradación de movilidad. (Nivel=2)
0
UTRA(no se usa) Coeficiente de campo transverso de degradación de movilidad 0
UO
Movilidad de superficie. [cm2/(V•s)]
600
VMAX
Velocidad de deriva máxima. [m/s]
0
VT0
Tensión de umbral sin sesgo. [V]
0
WD
Difusión lateral (ancho). [m]
0
XJ
0
Profundidad de la juntura metálica fuente-drenaje. (Nivel=2 o 3) [m]
XQC
Fracción de carga en el canal atribuida al drenaje
1.0
129
Simulaciones
C
on el fin de comprobar prácticamente la información anteriormente suministrada, se realizaron una serie de simulaciones para un transistor MOSFET
genérico que se encuentra en el software PSpice y el modelo del mismo para
pequeña señal, en baja frecuencia y alta frecuencia. De esta forma se podrán
validar las ecuaciones suministradas en los apartados anteriores.
La Figura 4.49 muestra un amplificador MOSFET utilizando una realimentación entre drenador y compuerta. Se debe analizar el circuito del amplificador para conocer la
ganancia, tanto en el circuito del amplificador como en su modelo de pequeña señal. El
2
transistor tiene unatensión de threshold de 1.5V, k ’n (W / L ) = 0.25mA /V y VA = 50V .
Con el fin de analizar el modelo de pequeña señal sin considerar los efectos de los
condensadores de acople sobre la frecuencia de corte para bajas frecuencias, el valor de
estos condensadores se escogieron lo suficientemente grandes para que actúen como
cortos circuitos para una frecuencia de aproximadamente 10Hz que es una muy baja
frecuencia teniendo en cuenta que las altas frecuencias se consideran alrededor de los
100kHz y superiores.
R7
10k
15Vdc
V2
+
_
C2
1000u
R6
C1
V3
VOFF = 0
VAMPL = 1m
FREQ = 10
V
+
_
1000u
V
R8
10k
10000k
M1
Mbreakn
0
0
0
Figura 4.49 Amplificador MOSFET con realimentación entre drenador y compuerta.
Modelo de baja frecuencia.
130
Con el objetivo de modificar el modelo del MOSFET genérico en Pspice de acuerdo
a las características mencionadas anteriormente, se cambió el código del modelo Pspice
de la siguiente forma:
Código Modificado:
+ LEVEL=3
+ L=2.0000E-6
+ W=.5
+ KP=250.00E-6
+ RS=10.000E-3
+ RD=10.000E-3
+ VTO=1.5000
+ RDS=1.0000E6
+ TOX=2.0000E-6
+ CGSO=40.000E-12
+ CGDO=10.000E-12
+ CBD=1.0000E-9
+ RG=5
+ RB=1.0000E-3
+ GAMMA=0
+ KAPPA=0
Para conocer el valor de la transconductancia, primero se debe encontrar el punto de operación en DC del circuito, en este caso la corriente de drenador puede estar definida como sigue:
1
2
1
2
I D = k n (VGS −Vt )2 = (0.25)(VGS − 1.5)2
V DS
Debido a que la resistencia de realimentación es tan grande se puede afirmar que
=VGS por ende:
1
1
(0.25)(V D − 1.5)2 = (0.25)(15 − 10I D − 1.5)2
2
2
Resolviendo la ecuación se encuentra que:
I D = 1.06mA
y
V D = 4.4V
Ahora el valor de gm se puede conocer con la ecuación (1.42) al inicio de este documento
g m = k n (VGS −Vt ) = 0.25(4.4 − 1.5) = 0.725mA /V 2
131
La resistencia r0 también se puede conocer:
r0 =
VA
50V
=
= 47k Ω
I D 1.06mA
Ahora se puede construir el modelo de pequeña señal para bajas frecuencias. (Figura 4.20)
R11
V
+
_
VOFF = 0
VAMPL = 1m
FREQ = 10
10000k
V4
V
G1
+
R9
47k
_
G
R10
10k
R12
10k
0
Figura 4.50 Modelo de pequeña señal para bajas frecuencias
Claramente, para el circuito anterior, la fuente de corriente dependiente de la tensión
VGS tuvo que ser modificada pues esta corriente tiene una dependencia de tensión con
una ganancia g m que es igual a 0.725mA /V 2 . Por ello, esta característica fue modificada
cambiando sus propiedades como se ve en la Figura 4.51.
Figura 4.51 Modificación de característica de
gm
Ahora, para comparar las respuestas de los dos circuitos se hallóla tensión de salida
con respecto alatensión de entrada y se encontraron los siguientes resultados:
(A) segparcialsimula (active)
4.0mV
2.0mV
0V
-2.0mV
-4.0mV
0s
100ms
V(C1:1)
V(R8:2)
300ms
200ms
400ms
Time
Figura 4.52 Vout-Vin para el circuito de la Figura 4.49
132
500ms
(A) segparcialsimula (active)
4.0mV
2.0mV
0V
-2.0mV
-4.0mV
0s
100ms
V(G1:1)
300ms
200ms
V(G1:3)
400ms
500ms
Time
Figura 4.53 Vout-Vin para el circuito de la Figura 4.50
Al comparar las simulaciones se puede observar que los resultados el modelo coinciden perfectamente con los resultados del circuito de la Figura 4.49. Claro está que esto
aplica para modelos de baja frecuencia, ya que para alta frecuencia se deben considerar
los condensadores internos. En ambos casos la ganancia de tensión está dada por:
v out = − g mv gs (Rdrenador / /Rc arg a / /r0 )
Debido a que v gs = v i , como se puede ver en la Figura 4.50.
Av =
v gs
vi
= −0.725(47 / /10 / /10) = −3.3V /V
Como se puede ver en ambos casos, efectivamente la ganancia de tensión es de
aproximadamente 3.3V, además se puede observar un desfase de 180° entre la onda de
entrada y la onda de salida para ambos casos, tanto para el modelo como para el circuito
inicial que se muestra en la Figura 4.49.
Alta Frecuencia
Para el ejemplo anterior, es posible hallar la respuesta en alta frecuencia del amplificador, teniendo en cuenta que se encuentra operando en su región lineal, es decir como
tríodo, entonces para hallar las capacitancias parasitas usamos la siguiente ecuación:
Donde
1
2
C gs = C gd = W ⋅ L ⋅C ox
C ox =
(1.54)
εox
Tox
133
Con
εox = 3.45 × 10−11 F / m
Según los parámetros del modelo del transistor utilizado en el ejemplo tenemos que:
Tox = 2 × 10−6
Entonces
De modo que:
Con
Entonces
C ox
εox 3.45 × 10−11
=
=
= 17.25 × 10−6 F
−6
Tox
2 × 10
1
2
C gs = C gd = W ⋅ L ⋅C ox
W = 0.5
L = 2 × 10−6
C ox = 17.25 × 10−6 F
C gs = C gd = 8.625pF
Entonces para las simulaciones se realizó un barrido de frecuencias con el esquemático del transistor y con el circuito del modelo equivalente para observar cual es el ancho
de banda del amplificador y observar el efecto de las capacitancias del mismo sobre el
modelo de pequeña señal para altas frecuencias.
En la Figura 4.54 se observa nuevamente el esquemático del amplificador del ejemplo anterior, a diferencia de que la señal de entrada se cambio de la fuente Vsin a una
fuente Vac para poder realizar el barrido de frecuencias (AC Sweep) en el simulador.
En la Figura 4.55 se observa el esquemático del modelo de pequeña señal para
altas frecuencias del amplificador. En la figura se observa que se han añadido las
capacitancias parásitas.
Los resultados de la simulación se observan en la figura 43, como es evidente las respuestas son muy similares, muestra del efecto tan pronunciado que producen estas capacitancias en la respuesta de un amplificador como el analizado en el ejemplo. También
se puede observar que las respuestas difieren (la frecuencia de corte difiere en un 19%
aproximadamente) un poco debido a la aproximación de valores, por ejemplo el valor de
la constante de la permisividad del oxido de silicio, entre otros.
134
R7
10k
15Vdc
+
V2
_
C2
0
1000u
R6
10000k
M1
C1
1000u
V7
1mVac
0Vdc
V
R8
10k
Mbreakn
+
_
0
0
0
Figura 4.54 Amplificador MOSFET con realimentación entre drenador y compuerta.
Modelo de alta frecuencia.
R11
C6
8.625p
G1
10000k
1mVac
0Vdc
+
_
V8
V
+
C7
8.625p
R9
47k
_
G
R10
10k
R12
10k
0
Figura 4.55 Modelo de pequeña señal para altas frecuencias
(A) segparcialsimula (active)
4.0mV
(10.184M, 2.3133m)
3.0mV
(8.1790M, 2.3133m)
2.0MV
1.0mV
0V
1.0Hz
V(R8:2)
100Hz
V(G1:3)
10KHz
1.0MHz
100MHz
10GHz
Frequency
Figura 4.56 Resultado de la simulación del modelo de pequeña señal para altas frecuencias
135
CAPÍULO
5
Reglas de diseño
para transistores
Introducción
L
a elaboración de un layout por parte del diseñador de circuitos integrados está
sujeta a un conjunto de reglas cuyo objeto es optimizar la cantidad de circuitos
fabricados en una misma serie que funcionan correctamente.
Un proceso de fabricación tiene siempre limitaciones de orden tecnológico
que hacen que existan diferencias entre la estructura que se espera obtener a partir de
un determinado layout y la que realmente resulta tras el proceso de fabricación. Estas
limitaciones son debidas básicamente a dos causas: a) no idealidad de las etapas de fabricación, b) posibles desajustes en el uso de las máscaras durante el proceso.
Un objetivo habitual de los diseñadores de circuitos es que el tamaño de éstos sea
el menor posible (con ello se ocupa una menor superficie de silicio, lo cual repercute de
forma importante en el precio y en muchas de las prestaciones eléctricas del circuito), objetivo que choca frontalmente con las limitaciones tecnológicas del proceso. La solución
a este problema es considerar la existencia de tolerancias en el proceso de diseño del
layout. Estas tolerancias se traducen en una serie de reglas de diseño que fijan distancias
y grosores mínimos, de forma que si éstas se respetan, la probabilidad de que el circuito
resultante sea correcto es alta.
Las reglas de diseño están ligadas a la calidad del proceso tecnológico y por tanto dependen del fabricante. Al mismo tiempo la evolución constante de la tecnología conduce a
una progresiva reducción de las distancias que constituyen las reglas de diseño. Cuanto
más conservadoras sean las reglas, más probable es que el circuito funcione correctamente. Sin embargo, cuanto más agresivas sean las reglas, mayor es la probabilidad de mejoras en el funcionamiento del circuito, esta mejora puede estar a expensas de la producción.
Cabe advertir que es posible encontrar que una disposición que viola las reglas de diseño
funcione correctamente, sin embargo siempre es recomendado hacer uso de estas.
Existen dos maneras distintas de especificar las reglas: a) como distancias absolutas
(en μm), b) como múltiplos enteros de un parámetro único, denominado λ , relacionado
con la calidad del proceso.
La Figura 5.1 muestra algunas de las reglas de diseño basadas en λ aplicables a
un proceso de pozo N.
139
Normas de diseño SCMOS (CMOS escalable)
E
n las normas SCMOS, las geometrías del circuito se especifican en el Mead
and Conway’s lambda de la metodología basada en1 . La unidad de medida,
lambda, puede ser fácilmente escalada a los distintos procesos de fabricación
de avances tecnológicos en semiconductores.
Cada diseño tiene un código de la tecnología asociada con el diseño del archivo.
Cada código de la tecnología puede tener una o más opciones asociadas que son añadidas para precisar los efectos de, ya sea (a) las características especiales del objetivo del
proceso (b) la presencia de nuevos dispositivos en el diseño.
5λ
3λ
10λ
5λ
Reglas relativas a pozo y área activa
(Excepto contactos de pozo i sustrato)
2λ
Implantación a zona activa
3λ
2λ
2λ
2λ
2λ
Líneas de polisilicio
Area activa
Definición de canal
en un transistor
Separación
Polisilicio - difusión
2λ
1λ
Lineas de metal
segundo nivel
(si existe)
Lineas de metal
primer nivel
3λ
3λ 3λ
3λ
2λ
4λ
Agujeros de
contacto- metal
4λ
3λ
2λ
Separación entre
contactos
Figura 5.1 Juego elemental de reglas de diseño para proceso CMOS de pozo N
1 C. Mead and L. Conway, Introduction to VLSI Systems , Addison-Wesley, 1980
140
Estándar SCMOS
E
l estándar de tecnología CMOS es un solo polisilicio y dos metales, la mayor parte de los procesos CMOS presenta mejora en modo N-MOSFET y P-MOSFET.
Tipo del pozo
El CMOS escalable (SC) tiene las normas que soportan los procesos del tipo pozo-N
y pozo-P. Se reconocen tres códigos de tecnología que permiten al diseñador especificar
bien el tipo de proceso seleccionado.
Tres códigos de tecnología son usados para indicar el tipo del pozo (sustrato) utilizado en la fabricación, estos códigos son mostrados en la Tabla 5.1.
CODIGO DE TECNOLOGIA
SCN
DESCRIPCIÓN
CMOS escalable Pozo-N
SCP
SCE
CMOS escalable Pozo-P
CMOS escalable Pozo-Cualquiera
Tabla 5.1 Tipos de pozo SCMOS
Los códigos de tecnología SCN y SCP son usados cuando el diseño que se va a fabricar tiene un tipo de pozo específico. Los diseños que especifican el código de tecnología
SCE pueden ser fabricados tanto con pozo-N como con pozo-P.
Opciones SCMOS
Las opciones SCMOS se utilizan para diseñar los proyectos que utilizan capas adicionales más allá de la norma de un sólo polisilicio y de dos metales CMOS. Cada opción
es nombrada con una designación que se adjunta a la base del código de tecnología.
Dichas opciones se encuentran resumidas en la Tabla 5.2.
141
DESIGNACION
E
NOMBRE
Electrodo
DESCRIPCIÓN
Agrega una segunda capa de
polisilicio (poly2), que puede
servir bien como la parte superior del electrodo de un condensador (1,5 micrones solamente)
o como una compuerta de los
A
Analógico
transistores
Añade electrodo (como en la
opción E), además de capas
verticales de transistor NPN
3M
Tres Metales
pbase
Añade una segunda vía (via2)
y una capa para el tercer metal
4M
Cuatro Metales
(metal3).
Añade 3M además una tercera vía (via3) y una capa para el
5M
Cinco Metales
cuarto metal (metal4).
Añade 4M además una cuarta
vía (via4) y una capa para el
6M
Seis Metales
quinto metal (metal5).
Añade 5M además una quinta
vía (via5) y una capa para el
LC
PC
DEEP
SUBM
Capacitor Lineal
sexto metal (metal6).
Añade una capa de condensa-
Poli Cap
dores lineales.
Añade poly_cap, una capa de
Profundo
condensadores lineales.
Mejora el ajuste a los procesos
Sub Micrón
de sub-micrón profundos.
Mejora el ajuste a los procesos
de sub-micrón.
Tabla 5.2. Opciones de la tecnología SCMOS
142
FUNDICIÓN
Orbit
PROCESO
2.0µm Pozo-N
LAMBDA [µm]
1
OPCIONES
SCNA, SCNE, SCN,
SCNA_MEMS
Ami
ABN (1.2µm Pozo-N)
HP
CMOS34 / AMOSI
HP
(1.2µm Pozo-N)
CMOS26G
0.6
SCNA(1), SCNE,
0.6
SCN, Alto Voltage
SCNLC, SCN, Metal
0.5
ajustado
SCN3M, SCN, Metal
ajustado
(0.8µm Pozo-N)
AMI
HP
CWL (0.8µm Pozo-N)
GMOS14TB/
0.5
SCNPC, Metal ajus-
0.35
tado
SCN3M, SCN, SCN3MLC,
AMOS14TB (0.5µm
Pozo-N)
SCNLC, Metal ajustado
HP
GMOS14TB/
0.25
SCN4N, Metal ajustado
AMOS14TB (0.5µm
TSMC
Pozo-N)
0.35 µm 1P4M
0,25
SCN4M, SCN4M
(4 Metales, 3.3 V/5 V)
Tabla 5.3. MOSIS SCMOS-Asignaciones Compatibles
143
FUNDICIÓN
AMI
PROCESO
C3O
LAMBDA [um]
0.20
OPCIONES
SCN4M_SUBM, SCN4ME_SUBM
(0,35 micras y pozoN)
AMI
C5F / N
0.30
SCN3M_SUBM, SCN3ME_SUBM
(0,5 micras-y pozo-N)
TSMC
0,35 micras 2P4M
0.20
SCN4ME_SUBM
0.20
SCN4M_SUBM
0.15
SCN5M_SUBM
0,10
SCN6M_SUBM
(4 metales, 3,3 V / 5
V)
TSMC
0,35 micras 1P4M
(4 metales, 3,3 V / 5
V)
TSMC
0,25 micras 5 de
metales 1 de poli (2,5
TSMC
V/3.3 V)
0,18 micras 6 metales
1 de poli (1,8 V/3.3 V)
Tabla 5.4. MOSIS SCMOS_SUBM-Asignaciones Compatibles
FUNDICIÓN
TSMC
PROCESO
0,25 micras 5 metales
LAMBDA [um]
0,12
OPCIONES
SCN5M_DEEP
TSMC
1 de poli (2,5 V/3.3 V)
0,18 micras 6 metales
0,09
SCN6M_DEEP
1 de poli (1,8 V/3.3 V)
Tabla 5.5. MOSIS SCMOS_DEEP-Asignaciones Compatibles
Procesos compatibles con SCMOS
MOSIS ofrece actualmente los procesos de fabricación que se han mostrado anteriormente en las Tablas 5.3 a 5.5. Para cada proceso de la lista de SCMOS los códigos de
tecnología son mostrados.
144
Normas SCMOS_SUBM y SCMOS_DEEP
El diseño de normas SCMOS fueron procesos desarrollados de 1,0 a 3,0 micrones.
Para sacar el máximo provecho de los procesos de sub-micrones, las normas SCMOS se
revisaron para crear SCMOS_SUBM. Al aumentar el tamaño de lambda en algunas normas
se desarrollaron otro tipo de normas para sub-micron, a fin de permitir el uso de un menor
valor de lambda, y mejorar el ajuste de estos procesos con tamaños muy pequeños. Las normas SCMOS_SUBM fueron revisadas de nuevo en el régimen de 0,25 micras
para ajustar los procesos a sub-micrón de una manera más profunda de lo habitual y así
se dio paso a la creación de la variante SCMOS_DEEP. En la Tabla 5.6 se enumeran las diferencias entre SCMOS y SCMOS sub-micrón. En la
Tabla 5.7 se enlistan las diferencias entre los sub-SCMOS y SCMOS micras de profundidad.
REGLA
1.1, 17.1
1.2, 17.2
2,3
3,2
5.3, 6.3
5.5b
7,2
7,4
8,5
11.1
11.3
11.5
13.2
15.1
15.2
15.4
17.3
17.4
DESCRIPCIÓN
Ancho del pozo
Espacio del pozo
(diferentes potenciales)
Superposición del pozo
(espacio) a transistor
Poli espacio
Espacio de contacto
Espacio para Poli
Espacio Metal 1
Espacio mínimo (cuando el
metal es más amplio que
10 lambda)
Vías planas
Ancho Poly2
Superposición Poly2
Espacio de contacto Poly2
Poly2 en contacto con el
espacio
SCMOS
10
9
SCMOS sub-micrón
12
18
5
6
2
2
4
2
4
3
3
5
3
6
2
3
2
3
2
Sin restricciones
7
5
6
3
Ancho Metal3
Espacio Metal3 (proceso de
3 metales solamente)
Espacio mínimo (cuando el
metal es más amplio que el
10 lambda)
Espaciamiento mínimo de
activos externos
Sobre posición mínima de
activos
6
4
5
3
8
6
5
6
5
6
Tabla 5.6. Diferencias entre SCMOS y SCMOS Sub-micrones
145
REGLA
DESCRIPCIÓN
SCMOS
3.2
3.2.a
Espacio del Polisilicio
Espacio del polisilicio
sobre el área activa
Mínima extensión del
Gate
Extensión activa más allá
de Poli
Seleccione la
superposición de contacto
Seleccione el ancho y el
espacio
3
3.3
3.4
4.3
4.4
5.3, 6.3
8.1
9.2
9.4
14.1
15.2
15.4
21.1
22.2
(p + a + p o n a n + +)
Contacto espaciamiento
Ancho de la vía
Espacio Metal2
Espacio mínimo (cuando
el metal es más amplio
que 10 lambda)
Ancho de la Via2
Espacio Metal3
Espacio mínimo (cuando
el metal es más amplio
que 10 lambda)
Ancho de la Via3
Espacio Metal4 (5 + para
los procesos de metal)
SCMOS
PROFUNDA
3
4
2
2.5
3
4
1
1.5
2
4
3
2
3
6
4
3
4
8
2
3
6
3
4
8
2
3
3
4
Tabla 5.7. Diferencias entre SCMOS profundas y SCMOS Sub-micrones (Cont.)
Reglas de diseño SCMOS – Pozo
REGLA
1.1
1.2
1.3
1.4
DESCRIPCIÓN
Ancho mínimo
Espacio mínimo entre pozos
de diferentes potenciales
Espacio mínimo entre pozos
de iguales potenciales
Espacio mínimo entre pozos
de diferentes tipos
Tabla 5.8 Reglas de diseño SCMOS – Pozo
146
LAMBDA
10 [SUBM 12]
9 [SUBM 18]
0o6
6
1.2
Pozo - N
1.3
Pozo - N
Pozo - N
1.4
1.1
Pozo - P
Figura 5.2 Diagrama de las reglas de diseño SCMOS – Pozo
Reglas de diseño SCMOS – Área activa
REGLA
2.1
2.2
2.3
2.4
DESCRIPCIÓN
Ancho mínimo
Espacio mínimo
Source/Drain activa al borde del pozo
Sustrato/Pozo contacto activo al borde
del pozo
Espacio mínimo entre áreas activas
de diferentes implantes
2.4
LAMBDA
3
3
5
3
0o4
Tabla 5.9 Reglas de diseño SCMOS – Área activa 1.3.7.
2.1
ACTIVA
2.2
ACTIVA
2.5
ACTIVA
N- plus - select
P Region
N Region
2.1
ACTIVA
P- plus - select
P- plus - select
2.4
2.3
2.4
2.3
2.2
ACTIVA
2.5
ACTIVA
N- plus - select
Figura 5.3 Diagrama de las reglas de diseño SCMOS – Área activa.
147
Reglas de diseño SCMOS – Poli
REGLA
3.1
3.2
3.3
3.4
DESCRIPCIÓN
Ancho mínimo
Espacio mínimo
Mínima extensión del gate
Mínima extensión activa del
polisilicio
Mínimo campo del polisilicio
activo
3.5
LAMBDA
2
2
2
3
1
Tabla 5.10 Reglas de diseño SCMOS – Poli
3.5
ACTIVA
POLY
3.1
3.2
POLY
3.3
ACTIVA
3.4
Figura 5.4 Diagrama de las reglas de diseño SCMOS – Poli
Reglas de diseño SCMOS – Implante (Select)
REGLA
4.1
4.2
4.3
4.4
DESCRIPCIÓN
Espacio mínimo del implante del canal del transistor
para asegurar el ancho adecuado del souce/drain
Mínimo implante sobrepuesto con el área activa
Mínimo implante sobrepuesto con el contacto
Mínimo ancho y espaciamiento del implante
LAMBDA
3
Tabla 5.11 Reglas de diseño SCMOS – Implante (Select)
148
2
1
2
Implante N+
4.3 4.3
ct
nta
Co
4.1
POLY
4.2
Active
Implante N+
Figura 5.5 Diagrama de las reglas de diseño SCMOS – Implante (Select)
Reglas de diseño SCMOS – Contacto simple para polisilicio
REGLA
5.1
5.2
5.3
5.4
DESCRIPCIÓN
Tamaño exacto del contacto
Mínimo solapamiento del
polisilicio
Mínimo espaciamiento del
contacto
Espacio mínimo del gate del
transistor
LAMBDA
2x2
1.5
2
2
Tabla 5.12 Reglas de diseño SCMOS – Contacto simple para polisilicio
Activa
5.4
5.2
5.3
ct
ta
on
C
Poly
5.1
Figura 5.6 Diagrama de las reglas de diseño SCMOS – Contacto simple para polisilicio
149
REGLAS
6.1
6.2
6.3
6.4
DESCRIPCIÓN
Tamaño exacto del contacto
Mínimo solapamiento del área activa
Espacio mínimo del contacto
Espacio mínimo del gate del transistor
LAMBDA
2x2
1.5
2
2
Tabla 5.13 Reglas de diseño SCMOS – Contacto simple para área activa 1.3.11.
Reglas de diseño SCMOS – Contacto alternativo para el polisilicio
6.2
6.4
ct
nta
Co
6.3
ACTIVA
6.1
Poly
Figura 5.7 Diagrama de las reglas de diseño SCMOS – Contacto simple para área activa
REGLA
5.2 B
5.5 B
5.6 B
5.7 B
DESCRIPCIÓN
Mínimo solapamiento del polisilicio
Espacio mínimo para otro polisilicio
Espacio mínimo del área activa (un contacto)
Espacio mínimo del área activa (un contacto)
LAMBDA
1
4
2
3
Tabla 5.14 Reglas de diseño SCMOS – Contacto alternativo para el polisilicio
= Contact
5.1
5.2.b
5.5.b
Poly
Active
5.4
5.7.b
5.6.6
(one)
(many)
5.3
Figura 5.8 Diagrama de las reglas de diseño SCMOS – Contacto alternativo para el polisilicio
150
Reglas de diseño SCMOS – Contacto alternativo para el área activa
REGLA
6.2 B
6.5 B
6.6 B
6.7 B
6.8 B
DESCRIPCIÓN
Mínimo solapamiento del área activa
Espacio mínimo de la región de
difusión
Espacio mínimo del campo de
polisilicio (un contacto)
Espacio mínimo del campo de
polisilicio (muchos contactos)
Espacio mínimo del contacto polisilicio
LAMBDA
1
5
2
3
4
Tabla 5.15 Reglas de diseño SCMOS – Contacto alternativo para el área activa
Poly
t
c
nta
Co
Active
6.8.b
6.1
6.5.b
6.4
6.3
6.7.b
6.6.b
6.2.b
Figura 5.9 Diagrama de las reglas de diseño SCMOS – Contacto alternativo para el área activa
Reglas de diseño SCMOS – Metal 1
REGLA
7.1
7.2 A
7.2 B
7.3
DESCRIPCIÓN
Ancho mínimo
Espacio mínimo
Espacio mínimo para el metal
ajustado
Mínimo solapamiento con
cualquier contacto
LAMBDA
3
3
2
1
Tabla 5.16 Reglas de diseño SCMOS – Metal 1
151
Active
7.3
7.1
Metal 1
7.2
Poly
ct
ta
on
C
Metal 1
Figura 5.10 Diagrama de las reglas de diseño SCMOS – Metal 1
Reglas de diseño SCMOS – Vía 1
REGLA
8.1
8.2
8.3
DESCRIPCIÓN
Tamaño exacto
Espacio mínimo para la vía 1
Solapamiento mínimo sobre el
metal 1
Espacio mínimo con el
contacto
Espacio mínimo del polisilicio
al borde del área activa
8.4
8.5
LAMBDA
2x2
3
1
2
2
Tabla 5.17 Reglas de diseño SCMOS – Vía 1
Poly
8.5
Metal1
Via
Active
8.1
8.2
8.5
Via
Via
8.5
8.4
t
tac
n
Co
8.3
Active
Figura 5.11 Diagrama de las reglas de diseño SCMOS – Vía 1
152
REGLA
9.1
9.2 A
9.2 B
DESCRIPCIÓN
Ancho mínimo
Espacio mínimo
Espacio mínimo para el metal
ajustado o SUBM
Mínimo solapamiento con la
vía 1
9.3
LAMBDA
3
4
3
1
Tabla 5.18 Reglas de diseño SCMOS – Metal 2
Metal 2
9.1
9.2.a
9.2.b
Metal 2
Via
9.3
Metal 1
Figura 5.12 Diagrama de las reglas de diseño SCMOS – Metal 2
REGLA
11.1
11.2
11.3
DESCRIPCIÓN
Ancho mínimo
Espacio mínimo
Solapamiento mínimo del
polisilicio
Espacio mínimo al área activa
o al borde del pozo
Espacio mínimo del contacto
polisilicio
11.4
11.5
LAMBDA
3
3
2
2
3
Tabla 5.19 Reglas de diseño SCMOS – Capacitor (Opción análoga)
11.3
Electrode
11.1
11.2
Electrode
11.5
Metal 1
Poly
Figura 5.13 Diagrama de las reglas de diseño SCMOS – Capacitor (Opción análoga)
153
Reglas de diseño SCMOS – Electrodo para Transistor
(Opción análoga)
REGLA
12.1
12.2
12.3
DESCRIPCIÓN
Ancho mínimo
Espacio mínimo
Mínimo electrodo del gate
sobrepuesto al área activa
Espacio mínimo al área activa
Espacio mínimo o
solapamiento con el polisilicio
Espacio mínimo del contacto
del polisilico o el área activa
12.4
12.5
12.6
LAMBDA
2
3
2
1
2
3
Tabla 5.20 Reglas de diseño SCMOS – Electrodo para Transistor (Opción análoga)
12.1
E
L
E
C
T
R
O
D
E
t
tac
12.3
n
Co
12.6
Poly
12.5
Electrode
12.2
Active
ct
nta
Co
12.6
12.4
Figura 5.14 Diagrama de las reglas de diseño SCMOS – Electrodo para Transistor (Opción análoga)
Reglas de diseño SCMOS – Contacto del Electrodo
(Opción análoga)
REGLA
13.1
13.2
13.3
13.4
13.5
DESCRIPCIÓN
Tamaño exacto del contacto
Espacio mínimo del contacto
Solapamiento mínimo del
electrodo (sobre el capacitor)
Espacio mínimo del eléctrodo
(sin el capacitor)
Espacio mínimo del polisilicio
o el área activa
LAMBDA
2x2
2
3
2
3
Tabla 5.21 Reglas de diseño SCMOS – Contacto del Electrodo (Opción análoga)
154
Metal 1
Poly
13.3
13.1
Electrode
13.4
13.2
Active
13.5
13.5
Electrode
Poly
Figura 5.15 Diagrama de las reglas de diseño SCMOS – Contacto del Electrodo (Opción análoga)
Reglas de diseño SCMOS – Vía 2 (Opción de tres metales)
REGLA
14.1
14.2
14.3
DESCRIPCIÓN
Tamaño exacto
Espacio mínimo
Solapamiento mínimo de la
VIA 2
Espacio mínimo de la VIA 1
VIA 2 puede ser colocada
sobre el contacto
14.4
14.5
LAMBDA
2x2
3
1
2
Tabla 5.22 Reglas de diseño SCMOS – Vía 2 (Opción de tres metales)
14.1
14.1
14.2 Via2
14.4
14.3
Via
Metal 3
Via
Metal 2
Figura 5.16 Diagrama de las reglas de diseño SCMOS – Vía 2 (Opción de tres metales)
155
Reglas de diseño SCMOS – Metal 3 (Opción de tres metales)
REGLA
15.1
15.2
15.3
DESCRIPCIÓN
Ancho mínimo
Espacio mínimo para el metal
3
Solapamiento mínimo de la
VIA 2
LAMBDA
6
4
2
Tabla 5.23 Reglas de diseño SCMOS – Metal 3 (Opción de tres metales)
15.1
Metal 3
15.2
Via2
Metal 3
15.3
Figura 5.17 Diagrama de las reglas de diseño SCMOS – Vía 2 (Opción de tres metales)
REGLA
16.1
16.2
16.3
16.4
16.5
16.6
16.7
16.8
16.9
16.10
16.11
DESCRIPCIÓN
Todo el contacto activo
Espacio mínimo
Implante mínimo del emisor sobrepuesto al
contacto
Mínimo espacio entre el implante del emisor y el
de la base
Mínima pbase sobrepuesta sobre el implante de la
base
Implante de base mínimo sobrepuesto al contacto
Pozo N mínimo sobrepuesto a pbase
Espacio mínimo entre la base y el área del
colector
Área mínima del colector sobrepuesta al contacto
LAMBDA
2x2
3
2
Mínimo Pozo N sobrepuesto al área activa del
colector
Implante mínimo sobrepuesto al área activa del
colector
3
Tabla 5.24 Reglas de diseño SCMOS – Transistor Bipolar NPN (Opción análoga)
156
4
2
2
6
4
2
2
16.11
16.10
N _ Well
Collector Active
ct
nta
16.9
16.8
Co
Active
N+ _ Select
16.3
Emitter
16.2
ct
nta
Co
16.1
N+ _ Select
16.4
Base Contact
ct
nta
Co
16.6
P+ _ Select
PBase
16.5
16.7
N _ Well
Figura 5.18 Diagrama de las reglas de diseño SCMOS – Transistor Bipolar NPN (Opción análoga)
Reglas de diseño SCMOS – Pozo del Capacitor
(Opción de capacitor lineal)
REGLA
17.1
17.2
17.3
DESCRIPCIÓN
Ancho mínimo
Espacio mínimo para el metal 3
Espacio mínimo para área activa externa
Solapamiento mínimo con el
área activa
17.4
LAMBDA
10
9
5
5
Tabla 5.25 Reglas de diseño SCMOS – Pozo del Capacitor (Opción de capacitor lineal)
17.1
Active
17.3
Active
17.4
Cap _ Well
17.2
N _ Well
P _ Well
Cap _ Well
Figura 5.19 Diagrama de las reglas de diseño SCMOS – Pozo del Capacitor (Opción de capacitor lineal)
157
Reglas de diseño SCMOS – Capacitor lineal
(Opción de capacitor lineal)
REGLA
18.1
18.2
18.3
18.4
18.5
DESCRIPCIÓN
Ancho mínimo
Extensión mínima del
polisilicio sobre el área activa
Área activa mínima
sobrepuesta con el polisilicio
Contacto mínimo del polisilicio
al área activa
Contacto mínimo del área
activa al polisilicio
LAMBDA
3
½
3
2
4/6
Tabla 5.26 Reglas de diseño SCMOS – Capacitor lineal (Opción de capacitor lineal)
Cap _ Well
Active
ct
nta
Co
18.2
18.5
Linear
Capacitor
18.4
18.3
18.1
Poly
Figura 5.20 Diagrama de las reglas de diseño SCMOS – Capacitor lineal (Opción de capacitor lineal)
Reglas de diseño SCMOS – Vía 3 (Opción para el cuarto metal)
REGLA
15.1
15.3
21.1
21.2
21.3
DESCRIPCIÓN
Ancho mínimo del Metal 3
Solapamiento mínimo del
Metal 3 sobre la vía 2
Tamaño exacto
Espacio mínimo
Solapamiento mínimo del
metal 3
LAMBDA
3
1
2X2
4
1
Tabla 5.27 Reglas de diseño SCMOS – Vía 3 (Opción para el cuarto metal)
158
21.1
21.1
Metal 3
21.3
21.2
Via3
Metal 2
Figura 5.21 Diagrama de las reglas de diseño SCMOS – Vía 3 (Opción para el cuarto metal)
Reglas de diseño SCMOS – Metal 4
(Opción para el cuarto metal, sólo SUBM)
REGLA
22.1
22.2
22.3
DESCRIPCIÓN
Ancho mínimo
Separación mínima del metal 4
Solapamiento mínimo con la vía 3
LAMBDA
6
6
2
Tabla 5.28 Reglas de diseño SCMOS – Metal 4 (Opción para el cuarto metal, sólo SUBM)
22.1
Metal 4
22.2
Via3
Metal 4
22.3
Figura 5.22 Diagrama de las reglas de diseño SCMOS – Metal 4 (Opción para el cuarto metal, sólo SUBM)
159
Ejemplos diseño de un inversor
VDD
_
a
a
Gnd
Figura 5.23 Diagrama eléctrico del inversor
VDD
p-type diffusion
transistor
Metal 1
a
Poly
n-type
diffusion
Vss
Figura 5.24 Diagrama de líneas con los diferentes elementos a utilizar en el layout
160
Well
4λ
VDD
40λ
Contacto
Metal 1
Difusion p
A
Y
Difusion n
Polisilicio
GND
32λ
Figura 5.25 Layout de geometrías típicas para el inversor
Herramientas de Diseño
En el mercado existen varias herramientas que nos facilitan el diseño de circuitos
lógicos con sus correspondientes reglas de diseño, esto nos permite ahorrar tiempo y
optimizar nuestros proyectos. Algunos de los programas que nos permiten utilizar las
reglas de diseño son:
• DSCH2
• MICROWIND
• L-EDIT
• LASI
Descripción del software
DSCH2: Esta aplicación consta de un editor lógico, basado en captura de esquemas, y
un simulador. Está orientado a la validación del circuito lógico antes de pasar a la fase de
síntesis microelectrónica. Proporciona un entorno sencillo para el diseño lógico jerárquico
y simulación con análisis de retardos, todo lo cual permite el diseño y validación de estructuras lógicas complejas. Una característica muy interesante es la posibilidad de estimar el
consumo de potencia del circuito. Además, es capaz de generar un fichero Verilog del circuito lógico que puede tomar como entrada la aplicación Microwind 2 para crear el layout.
MICROWIND2: Permite que el estudiante diseñe y simule un circuito integrado en el
nivel físico de la descripción. El paquete contiene una biblioteca de la lógica común y de
los circuitos integrados análogos, para ver y para simular. MICROWIND2 incluye todos
los comandos para un redactor de la máscara, así como las herramientas originales que
nunca se recolectaron antes en un solo módulo (2.0 y la opción de proceso 3D, recopila-
161
dor de VERILOG). La extracción eléctrica de su circuito se realiza automáticamente y el
simulador análogo produce voltaje y curvas actuales inmediatamente.
LASI: Layout System for Individuals. LASI es un programa de diseño automatizado usado para el esquema de la disposición física de circuitos integrados. Se utiliza además, para
crear y arreglar los polígonos que corresponden a las regiones (es decir, drenador, interconexión del metal, etc.) que componen cada dispositivo en un IC. LASI es básicamente un
programa de dibujo de dos dimensiones. El dibujo creado recibe el nombre de disposición.
L-EDIT: Es una herramienta para el layout que utiliza los elementos dibujados en capas
para representar las máscaras que se emplean en la fabricación de un circuito integrado.
Las capas son representadas por diversos colores y patrones. L-Edit describe un diseño
del layout en términos de archivos, celdas, casos, y objetos dibujados. Un archivo se puede
componer de cualquier número de celdas, las cuales pueden ser relacionadas por jerarquía,
como en un diseño típico, o pueden ser independientes, como en un archivo de la “biblioteca”.
Ejemplos
Diseño de una compuerta NAND con la ayuda de DSCH y Microwind
El esquema de la Figura 5.26 representa una compuerta NAND con tecnología CMOS
W=1.0u
L=0.12u
W=1.0u
L=0.12u
W=1.0u
L=0.12u
OUT
A
W=1.0u
L=0.12u
B
Figura 5.26 Esquema Eléctrico de una Compuerta NAND (CMOS)
Según lo calculado para obtener resistencias iguales en la red de tipo P y en la
red de tipo N, todos los transistores deben tener las mismas dimensiones. En nuestro
caso hemos elegido
W
162
L
= 3 , W = 1µ y L = 0.12µ
Vdd+
Clock3
Clock2
0.01 pF
VssFigura 5.27 Layout del diseño
Como se puede apreciar, se ha colocado un condensador de 0.01pF a la salida de la
compuerta para caracterizar la misma.
Figura 5.28 Tiempos de Subida y Bajada de la compuerta NAND
163
Diseño de un Inversor
W=2.0u
L=0.12u
OUT
A
W=1.0u
L=0.12u
Figura 5.29 Diagrama eléctrico del Inversor
Vdd+
S1
Clock1
Vss-
Figura 5.30 Layout del Inversor
164
0.01 pF
Figura 5.31 Tiempos de bajada y subida del inversor
165
CAPÍULO
6
El inversor CMOS
Introducción
L
os circuitos lógicos MOS o CMOS se han fabricado como paquetes estándar
para su uso en sistemas digitales desde los años 70’s. Estos paquetes contienen compuertas lógicas y otros elementos digitales que forman sistemas con
un número de compuertas por paquete que va desde unos pocos (circuitos
SSI – small-scale integrate) hasta algunas decenas (circuitos MSI – medium-scale integrated). A finales de los 70’s surgió la integración a muy gran escala lo que permitió
la incorporación de cientos y miles de compuertas por chip (circuitos VLSI – very largescale integrated) y el NMOS se convirtió en la más selecta tecnología de fabricación1.
Los primeros circuitos VLSI, que utilizaron esta tecnología, empleaban el transistor de
enriquecimiento, y después el transistor de agotamiento, como configuración básica de
un inversor. En esa época, aunque el CMOS ofrecía mayor flexibilidad de diseño y otras
ventajas, el NMOS se impuso por su costo y simplicidad. Sin embargo en la actualidad,
la tecnología CMOS ha sustituido a la NMOS en todos los niveles de integración, tanto
en aplicaciones análogas como digitales2. Hoy en día la gran mayoría de los circuitos integrados de aplicación específica, utilizan tecnología CMOS, la cual se nutre a su vez de
los transistores MOS (Metal Óxido Semiconductor).
El circuito del inversor CMOS puede considerarse como el origen de toda la tecnología CMOS y muchas de sus propiedades como bajo consumo de potencia y eficiencia en
cuanto a bajos tiempos de retardo son a su vez propiedades generales de toda la circuitería CMOS, de ahí su importancia y su interés.
Para cualquier tecnología de circuitos integrados, el elemento básico es el inversor
lógico. De ahí que se hace necesario entender su funcionamiento y sus curvas características para ampliar el conocimiento al diseño de otros circuitos lógicos más complejos.
En este documento se realiza una exhaustiva descripción y caracterización del inversor CMOS. Las características entrada- salida de un inversor CMOS son la expresión
de una tecnología digital robusta, en el sentido de que maneja con mucha fiabilidad la
información digital que recibe (unos y ceros) de forma que no exista ambigüedad en la
interpretación de un valor de tensión respecto a su valor lógico.
1 A.S. Sedra, K.C. Smith. Circuitos Microelectrónicos. Oxford University Press, Mc Graw Hill, 1998.
2 A.S. Sedra, K.C. Smith. Circuitos Microelectrónicos. Oxford University Press, Mc Graw Hill, 1998.
169
El Inversor
E
l inversor es el elemento más importante dentro de la microelectrónica actual,
está compuesto de transistores MOSFET tipo P y tipo N conectados en serie
entre la alimentación positiva y masa.
La Figura 6.1 muestra un inversor básico, el cual utiliza dos MOSFET de enriquecimiento, uno de tipo N y otro de tipo P. El cuerpo de cada dispositivo está conectado
a su fuente, por lo tanto no surge el efecto del cuerpo.
QP
QP
iDP
Vt
iDN
iDP
Vo
Vt
QN
(a)
iDN
Vo
QN
(b)
Figura 6.1 (a) Modelo del inversor CMOS y (b) Circuito esquemático simplificado para el inversor3
Revisión acerca de los transistores MOSFET
El transistor de efecto campo es en realidad una familia de transistores que se basan
en el campo eléctrico para controlar la conductividad de un “canal” en un material semiconductor. Según la construcción del electrodo de la compuerta, se conocen principalmente dos clases de FET:
Los de juntura (JFET), bastante sensibles a los cambios de temperatura, pero muy
buenos para el manejo de altas frecuencias y señales muy débiles.
Los de compuerta aislada (MOSFET) tienen un electrodo de control metálico, aislado
del canal mediante una delgada capa de dióxido de silicio, de la que se deriva la raíz MOS
(Metal-Oxido-semiconductor). Dependiendo del canal del transistor se pueden encontrar
dos clases de MOSFET: Canal N y Canal P.
3 A.S. Sedra, K.C. Smith. Circuitos Microelectrónicos. Oxford University Press, Mc Graw Hill, 1998.
170
Tipo P
El transistor tipo P se compone de las siguientes capas características: Se tiene un
pozo tipo N; una difusión tipo P y en su canal un metal y oxido de silicio. Además su
funcionamiento se basa en la movilidad de huecos.
D
S
N
N
D
P
G
S
G
CANAL P
Figura 6.2 Transistor P
Tipo N
El transistor tipo N se compone de las siguientes capas características: Se tiene un pozo
tipo P; una difusión tipo N y en su canal un metal y oxido de silicio. Además su funcionamiento se basa en la movilidad de electrones; por eso es tres veces más rápido que el tipo P.
S
P
P
G
N
D
Drenaje
Fuentes
D
Puerta
G
S
CANAL N
Figura 6.3 Transistor N
Esta tecnología es robusta porque:
• El valor de la tensión de salida es siempre uno de los dos valores extremos del
rango dinámico: VDD ó 0 (se suele denominar a este comportamiento: rail to rail logic).
• La transición del nivel de salida alto a bajo (o viceversa) puede hacerse en un valor centrado en el medio del rango dinámico, es decir, equidistantemente de los valores
correspondientes a los dos raíles de la alimentación.
• Los niveles se regeneran automáticamente en caso de deterioro, sin más que hacer pasar la señal por una cadena corta de inversores.
171
Operación del Circuito
La topología básica de un inversor con transistores MOS es la mostrada en la Figura 1.
El transistor Q P se podría comportar como una carga activa. En el circuito de la figura 1 tenemos una entrada v i y una salida v 0 , la cual dependerá de manera directa de v i . Es decir:
si en v i hay un nivel lógico alto (1) > V dd − 10mV , en la salida se presentará un nivel lógico
bajo (0) < 10mV, esto ocurre porque los transistores utilizados se comportan como interruptores y en este caso específicamente, el transistor PMOS ubicado en la parte de arriba se
comporta como un interruptor abierto, gráficamente se tiene el circuito de la Figura 6.4.
VDD
VDSN
Vo=0
Figura 6.4 Circuito equivalente cuando v_i=V_DD, por tanto la salida es v_0=V_OL=0V4
Lo que nos permite observar que efectivamente el voltaje de salida es cero. La curva
característica de i D vs v DS para Q N y la curva de carga de Q P cuando v SGP = 0V , se
ilustran en la Figura 6.5, donde también se observa que para v SGP < Vt la curva de carga
es horizontal con i D cercana a cero. El punto de operación del circuito está en la intersección de las dos curvas, donde la salida de voltaje y la corriente son cercanas a cero.
Esto implica que la disipación de corriente en el circuito es muy baja. Es interesante notar
que a pesar de que el transistor tipo NMOS está operando con una corriente y voltaje de
drenador a fuente casi cero, ésta se encuentra ubicada en un punto muy pendiente de la
recta i D vs v DS , por lo tanto este transistor proporciona una trayectoria de baja resistencia
entre la salida y tierra. Esta resistencia se puede calcular como:
rDSN =
1
W 
k n'   (V DD −Vtn )
 L n
(1.1)
4 A.S. Sedra, K.C. Smith. Circuitos Microelectrónicos. Oxford University Press, Mc Graw Hill, 1998.
172
i
VGSN =VOH =VDD
Curva de Carga
Punto de
Operación
0
VGSP = 0
VDD
VOL˜ 0
Figura 6.5 Curva característica de
vs v DS para Q N con v GSN = VDD ( iD
de Q P para el caso de v
= 0V 5
iD
SGP
V0
= i y v DSN = v 0 ) curva de carga
Por otro lado, si en v i hay un nivel lógico bajo (0) < 10 mV, en la salida se presentará un
nivel lógico alto (1) > V dd − 10mV , en este caso, el transistor NMOS ubicado en la parte de
abajo se comporta como un interruptor abierto, como se muestra en el circuito de la Figura 6.6.
VDD
VDSP
Vo=VDD
Figura 6.6 Circuito equivalente cuando
v i = 0V , por tanto la salida es v 0 = VDD
6
El voltaje de salida es diferente de cero. Como se observa en la Figura 6.7, la curva
de carga (correspondiente al dispositivo tipo p) en este caso tiene un valor lejano al cero,
más exactamente un voltaje v SGP =V DD . Si se ve el punto de operación en este caso, el
voltaje de salida es cercano a V DD y la corriente de salida es cercana a cero. Por tanto se
tiene también una disipación de potencia baja, lo cual sugiere una resistencia baja entre
la salida y la fuente V DD que se calcula de la siguiente manera:
rDSP =
1
(
W 
k p'   V DD − Vtp
 L p
)
(1.2)
5 A.S. Sedra, K.C. Smith. Circuitos Microelectrónicos. Oxford University Press, Mc Graw Hill, 1998.
6 A.S. Sedra, K.C. Smith. Circuitos Microelectrónicos. Oxford University Press, Mc Graw Hill, 1998.
173
Sin embargo, la capacidad de excitación de carga del inversor es alta. Cuando la
entrada está a nivel alto (1), el transistor Q_N puede disipar una corriente de carga relativamente alta, corriente que puede descargar con rapidez la capacitancia de carga. Por
su acción de disipar la corriente de carga y reducir el voltaje de salida, el transistor Q N se
conoce como dispositivo reductor.
i
Curva de Carga
(VGSP = VDD)
Punto de Operación
VOH˜ VDD
VGSN =VOL = 0
0
VDD
Figura 6.7 Curva característica de i D vs v DS para Q N con
carga de Q P para el caso de
Vo
v GSN = 0V ( i = i y v = v ) y curva de
D
DSN
0
v SGP = VDD 7
Por otro lado, como el transistor Q P puede generar una corriente de carga relativamente grande, esta puede cargar con rapidez una capacitancia de carga, llevando el voltaje de
salida hacia V DD , razón por la cual el transistor Q P es llamado dispositivo elevador.
En la Figura 6.8 se observa el esquema eléctrico empleado en la simulación del inversor en PSpice para verificar su funcionamiento, siendo la entrada al inversor una señal
cuadrada de 0 a 5V. En la Figura 6.9.a se observa la señal de entrada y en la Figura 6.9.b
la señal obtenida a la salida del inversor.
Tipo P
+
5
M3
V1 = 0.001
V2 = 5
TD = 10n
TR = 1p
TF = 1p
PW = 0.5u
PER = 1u
V2
+
_
V
M4
V
V1
_
0
50p
0
0
Tipo N
0
Figura 6.8 Esquema eléctrico del inversor CMOS en PSpice
7 A.S. Sedra, K.C. Smith. Circuitos Microelectrónicos. Oxford University Press, Mc Graw Hill, 1998.
174
(a)
(b)
Figura 6.9 (a) Señal de entrada y (b) señal de salida del inversor CMOS simulado en PSpice
Curva Característica de Transferencia de Voltaje (VTC)
En la caracterización de la entrada – salida; se pueden diferenciar las tres zonas de
trabajo que dependen de las regiones de cada transistor (Figura 6.10).
ZONA 1: NMOS apagado y PMOS activo
El voltaje en la compuerta de los dos transistores tiende a cero, el transistor NMOS se encuentra en corte y el transistor PMOS está activo, por tanto a la salida se deja pasar V DD .
ZONA 2: NMOS en saturación y PMOS en saturación
El voltaje en la compuerta de los dos transistores se encuentra en la zona de decisión,
por tanto el estado de la salida es transitorio.
ZONA 3: NMOS activo y PMOS apagado
El voltaje en la compuerta de los dos transistores tiende a V DD , el transistor NMOS se
encuentra encendido y el transistor PMOS está en corte. La salida está en cero.
v
5.0
4.5
4.0
v(2)
NMOS
OFF
NMOS SAT
3.5
PMOS OHM
3.0
NMOS SAT
2.5
PMOS SAT
2.0
1.5
lVTPl = 1.1V
1.0
NMOS OHM
0.5
0.0
PMOS SAT
0.0
0.5
1.0
1.5
2.0
VTN = 0.7V
sveep
2.5
3.0
v
3.5
PMOS OFF
4.0
4.5
5.0
VDD = lVTPl = 3.9V
Figura 6.10 Curva entrada- salida del inversor y regiones de cada transistor
175
Para obtener la curva característica de transferencia de voltaje (VTC, por sus siglas
en ingles), se procede a calcular los puntos críticos de la curva, para lo cual se necesita-
rán las relaciones i vs v de Q N y Q P .
Para el transistor
QN :
W  
1 
i DN = k n'   (Vt −Vtn )v 0 − v 02  parav 0 ≤ v i −Vtn
2 
 L n 
2
1 W 
i DN = k n'   (V i −Vtn ) parav 0 ≥ v i −Vtn
2  L n
Y para el transistor Q P :
(
)
2
W  
1
i DP = k p'    V DD −v i − Vtp (V DD −v 0 ) − (V DD −v 0 )  parav 0 ≥ v i + Vtp
2
 L p 

(
1 W 
i DP = k p'   V DD −v i − Vtp
2  L p
) parav
2
0
El inversor CMOS comúnmente se diseña para tener:
≤ v i + Vtp
(1.3)
(1.4)
(1.5)
(1.6)
W 
W 
Vtn = Vtp yk n'   = k p'  
 L n
 L p
Como µ p es 0.3 a 0.5 veces el valor de µn , el ancho del canal p debe hacerse dos o
tres veces el del dispositivo del canal n así:
Wp
Wn
=
µn
µp
(1.7)
Entonces el inversor tendrá una curva característica simétrica de transferencia e igual
capacidad de excitación de corriente en ambas direcciones (elevación y reducción).
Con Q N y Q P acoplados, el inversor tiene una curva característica de transferencia
de voltaje como la mostrada en la Figura 6.11. Esta curva tiene 5 segmentos diferentes
correspondientes a diferentes combinaciones de modos de operación de Q N y Q P . El
segmento vertical BC corresponde a cuando Q N y Q P están en saturación, sin tener en
cuenta la resistencia finita de cada transistor. Este segmento vertical ocurre en V =
i
está limitado por v 0 ( B ) =
V DD
V DD
V DD
2
y
+Vt y v 0 (C ) =
−Vt .
2
2
Los puntos VOL y VOH son el máximo permitido de nivel bajo (0) y mínimo de nivel alto
(1) respectivamente, sin que se presenten problemas de ruido en el inversor. Son definidos formalmente como los puntos en la curva de transferencia en que la ganancia incremental es unitaria ( pendiente = −1V /V ).
176
QN en saturación
Qp en región triodo
V0
QN off
VOH = VDD
A
Pendiente = -1
VDD/2 + Vt
B
QN y Qp
En saturación
C
VDD/2 - Vt
Pendiente = -1 QN en saturación
Qp en región triodo
Qp off
VOL = 0
D
0
Vt
VIL
VIH
VDD - Vt
VDD
Vt
Vth = VDD/2
Figura 6.11 Curva de entrada – salida (VTC) de un inversor CMOS8
Para determinar V IH , Q N está en la región triodo y por lo tanto su corriente está dada
por la ecuación (1.3), en cambio Q P está en saturación y su corriente está dada por (1.6).
Igualando i DN con i DP y suponiendo que están acoplados, tenemos:
(v
i
2
1
1
−Vt )v 0 − v 02 = (V DD −v i −Vt )
2
2
Derivando a ambos lados respecto a v i , se obtiene
(v
Sustituimos v i =V IH y
i
dv 0
−Vt )
dv 0
dv
−v 0 − 0 v 0 = − (V DD −v i −Vt )
dv i
dv i
dv i =-1 para obtener:
V
v 0 =V IH − DD
2
Al sustituir en (1.8) v i =V IH y v 0 por la ecuación anterior (1.9), tenemos:
V IH =
1
(5V − 2Vt )
8 DD
(1.8)
(1.9)
(1.10)
(1.11)
8 A.S. Sedra, K.C. Smith. Circuitos Microelectrónicos. Oxford University Press, Mc Graw Hill, 1998.
177
V IL se puede calcular de manera semejante a la empleada para hallar V IH . Utilizando
la siguiente simetría:
V IH −
V DD
2
=
V DD
2
(1.12)
−V IL
Reemplazando V IH en la ecuación (1.11) tenemos:
V IL =
1
(3V + 2Vt )
8 DD
(1.13)
Se puede obtener la función de transferencia mediante simulación PSpice: las Figuras 6.12.a y 6.12.b muestran, respectivamente, la función de transferencia v 0 −v i y el
consumo de intensidad de un inversor CMOS de la tecnología Ψ.
Especificaciones: L = 1�m ,W = 1,5�m , VTO = 1V, Κp , NMOS = 40�A / V2
y Κp , PMOS = 15�A /V 2.
(a)
(b)
Figura 6.12 (a) Curva de transferencia v 0 −v i simulada de un inversor CMOS y
(b) Consumo de potencia del inversor.
Márgenes de Ruido
Los márgenes de ruido alto NM H y bajo NM L están dados respectivamente por:
NM H =V (1) −V IH =VOH −V IH
NM H =V DD −
1
1
5V DD − 2Vt ) = (3V DD + 2Vt )
(
8
8
NM L =V IL −V ( 0) =V IL −VOL
NM L =V DD −
178
1
1
3V DD + 2Vt ) − 0 = (3V DD + 2Vt )
(
8
8
(1.14)
(1.15)
Como se esperaba, la simetría de la curva característica de transferencia de voltaje
resulta en iguales márgenes de ruido. Pero si Q N y Q P no están acoplados la curva de
transferencia de voltaje ya no será simétrica y sus márgenes de ruido no serán iguales.
Estos márgenes de ruido representan “márgenes de seguridad” para el funcionamiento correcto de puertas lógicas en presencia de fuentes de ruido (ej. acoplamiento de
señales, variación de parámetros físicos entre distintas puertas). Tal y como se ilustra en
la Figura 6.13, el nivel lógico alto V(1) proporcionado a la salida por el inversor #1 podrá
descender dentro del margen de seguridad proporcionado por NM H y seguirá siendo interpretado como un nivel lógico alto a la entrada del inversor #2, sin que ello suponga una
decisión lógica errónea en el último. Análogamente ocurre para V(0) y NM L .
VDD
Vl
Vo
1
V(1)
V(1)
1
NMH
VIH
VIH
VIL
VIL
NML
V(0)
(a)
#2
#1
VSS
0
0
(b)
V(0)
Figura 6.13 Márgenes de ruido; (a) Definiciones sobre los niveles de entrada y
salida (b) Aplicación a inversores en cadena.
Operación Dinámica
La velocidad de propagación de un sistema digital está determinada por el tiempo
de propagación de las compuertas lógicas usadas en dicho sistema. Como el inversor
es la compuerta lógica básica de cualquier tecnología digital, el tiempo de propagación
de esta es muy importante en la caracterización de la tecnología. El circuito de la Figura
6.14 muestra un inversor con un condensador entre su salida y tierra; este condensador
representa la suma de las capacitancias internas de los transistores y las capacitancias
de los alambres de conexión hacia otros dispositivos.
El inversor CMOS tiene tiempos de subida y bajada diferentes de cero. El tiempo de subida del inversor es el tiempo que tarda la señal de salida del circuito en pasar del 10% al 90%
de su valor en estado alto; y el tiempo de bajada es el que tarda en pasar del 90% al 10%.
179
VDD
Vt
Qp
VDD
IDP
Vt
0
Vo
t
V0
IDN
tPHL
VDD
QN
tPLH
VDD/2
0
t
b)
a)
Figura 6.14 Medición de tiempo de propagación 9
Suponiendo que en la entrada v i tenemos un pulso como el de la Figura 6.14.b (señal
superior) y que los MOSFET están acoplados, lo que implica que tiempos de subida y
bajada son iguales.
En la Figura 6.15 se presenta la trayectoria del punto de operación cuando pasa de
un nivel lógico bajo (0) a un nivel lógico alto (1).
IDN
Punto de
operación a
t=0+
M
F
VGSN =VDD
E
Descarga del
condensador
a través de QN
Punto de operación
después de terminado
el switcheo
D
A
VDD
VDD/2
Punto de
operación a
t=0V0
VDD - Vt
Figura 6.15 Característica de carga 10
9 A.S. Sedra, K.C. Smith. Circuitos Microelectrónicos. Oxford University Press, Mc Graw Hill, 1998.
10 A.S. Sedra, K.C. Smith. Circuitos Microelectrónicos. Oxford University Press, Mc Graw Hill, 1998.
180
Inmediatamente antes del borde delantero del pulso de entrada (t=0-) el voltaje de
salida es igual a V DD y el condensador se carga a ese voltaje. En t=0, Q P no conduce. En
este momento nos encontramos en el punto E de la gráfica, donde Q N está conduciendo y de esta manera descargando el condensador. A medida que este se descarga, la
corriente permanece constante hasta el punto F donde v 0 =V DD −Vt , si denotamos este
intervalo de descarga como t PHL 1 tenemos:
t PHL 1 =
(
C V DD − (V DD −Vt )
)
1 ' W 
k
(V −V )
2 n  L  n DD t
2
=
CVt
(1.16)
1 ' W 
k
(V −V )
2 n  L  n DD t
2
Luego del punto F el transistor Q N pasa a la región triodo, y su corriente está dada por
(1.3). Esta porción del intervalo de descarga puede ser descrita por:
i DN dt = −Cdv 0
(1.17)
Al sustituir esta i DN en la ecuación (1.3) y reacomodarla tenemos:
W 
k n'  
L
1
−   n dt =
2C
2(V DD −Vt )
1
dv 0
2(V DD −Vt )
v 02 − v 0
(1.18)
Para hallar la componente del tiempo t PHL 2 en que v 0 decrece de (V DD −Vt ) a V DD ,
2
integramos a ambos lados y tenemos:
t PHL 2 =
C
W 
k n'   (V DD
 L n
 3V − 4Vt
lnln  DD
 V DD
−Vt )



(1.19)
Estas dos ecuaciones (1.16) y (1.19) se pueden sumar para obtener:
t PHL =
2C
W 
k n   (V DD
 L n
'
 Vt
1  3V − 4Vt
+ ln  DD

V −V 2  V DD
−Vt )  DD t

 

(1.20)
Para el caso usual en el que Vt ≅ 0.2V DD , la ecuación se reduce a:
t PHL =
1.6C
W 
k n'   V DD
 L n
(1.21)
Haciendo un análisis semejante para el caso contrario en el que Q N no conduce tenemos
un tiempo t PLH idéntico al anterior (1.21) excepto por los subíndices que cambian de n a p.
181
El tiempo de propagación t P es el promedio de t PLH y t PHL , observando las ecuaciones vemos que para tener una operación mas rápida el valor del condensador debe disminuir, o aumentar k, el ancho y/o el largo del canal o el voltaje de alimentación.
A medida que se aumenta la frecuencia en la señal de entrada, la señal de salida se
va degradando; esto se debe a que a frecuencias muy altas los tiempos de respuesta de la
señal de salida del inversor se van haciendo muy lentos para la entrada, el circuito no responde de manera ideal y los estados se pierden. En las Figuras 6.16 a la 6.18 se muestra
como se pierden los estados a medida que se aumenta la frecuencia (f1 < f2 < f3).
(a)
(b)
Figura 6.16 Señales de entrada (a) y de salida (b) del inversor a una frecuencia f1.
(a)
(b)
Figura 6.17 Señales de entrada (a) y de salida (b) del inversor a una frecuencia f2.
182
(a)
(b)
Figura 6.18 Señales de entrada (a) y de salida (b) del inversor a una frecuencia f3
Mejora de los tiempos de propagación
En ocasiones las capacitancias de carga son altas; por ejemplo, en los adaptadores de
las salidas de los circuitos integrados (que han de ser capaces de soportar su conexión a
cargas equivalentes de decenas de picofaradios) o, también en compuertas que deban soportar a su salida una alta divergencia (también conocida como fan-out, es el número máximo
de compuertas similares que una compuerta puede excitar mientras permanezca dentro de
especificaciones garantizadas), (por ejemplo, las que transmiten a los diversos biestables la
señal de reloj) o largas longitudes de polisilicio. En tales casos, los tiempos de conmutación
se elevan en demasía y es preciso reducirlos mediante adaptadores de intensidad.
Para disminuir los tiempos de propagación causados por altas capacitancias de carga o, lo que es lo mismo, por la necesidad de intensidades de salida altas, se utilizan
esquemas de amplificación en cascada con inversores cuya anchura de transistor es
progresivamente creciente.
EJEMPLO
Supóngase una carga de 2pF que resulta ser unas 1.000 veces mayor que C i (capacidad de carga que corresponde a fan-out 1):
t↑ = 5C / I(P) ≈ 10 pF / 0,2 mA ≈ 50 ns
t↓ = 5C / I(N) ≈ 10 pF / 0,5 mA ≈ 20 ns
Añadiendo un par de inversores cuya anchura de transistores sea, en cada uno de
ellos, 10 veces la del anterior:
Inversor
“minimo”
Isat = I
Ci = 2fF
Inversor
con transistores
10 veces
más anchos
Isat = 10I
Ci = 20fF
Inversor
con transistores
100 veces
más anchos
Isat = 100I
Ci = 200fF
2pF
CL = 2000fF
Figura 6.19 Ejemplo
183
Como puede apreciarse en la Figura 6.19, en cada inversor se produce un “salto” entre su capacidad de carga y su capacidad de entrada de 10; en total, un salto de 1000 que
es la relación existente entre los 2pF y C i (capacidad de entrada del inversor mínima).
t1↑ = 5 x 20 / 0,2 ≈ 0,5 ns t2↑ = 5 x 200 / 2 ≈ 0,5 ns t3↑ = 5 x 2000 / 200 ≈ 0,5 ns
t1↓ ≈ 5 x 20 / 0,5 ≈ 0,2 ns t2↓ ≈ 5 x 200 / 5 ≈ 0,2 ns t3↓ ≈ 5 x 2000 / 500 ≈ 0,2 ns
t↑ - t1↑ + t2↓ + t3↑ ≈ 1,2 ns
t↓ - t1↓ + t2↑ + t3↓ ≈ 0,9 ns
Ambos tiempos son muy inferiores a los que presenta el primer inversor en solitario:
50ns y 20ns, respectivamente.
Resistencia de salida
La resistencia de salida es un parámetro indicativo del comportamiento de las compuertas lógicas (una referencia de calidad de las mismas), en cuanto a intensidad disponible en la salida, inmunidad frente al ruido y tiempos de propagación, pues afecta
fuertemente a estos tres aspectos: en principio, cuanto menor sea la resistencia de salida
mayores serán la intensidad suministrable por la misma, el margen frente al ruido y la
velocidad de trabajo. También interesa una resistencia de salida baja en relación con el
acoplamiento en tensión, pero dicho acoplamiento ya viene garantizado por el altísimo
valor de la resistencia de entrada (que es cuasi-infinita).
Las situaciones booleanas corresponden a un transistor en zona lineal: para salida 0
el transistor NMOS se encontrará conduciendo en su zona lineal, mientras que para salida 1 será el transistor PMOS el que se encuentre en zona óhmica; de forma que R 0 (0) y
R 0 (1) corresponden, respectivamente, a las resistencias que presentan los transistores
NMOS y PMOS en zona lineal.
Circulación de corriente y disipación de potencia
En la Figura 6.20 se observa la gráfica de la circulación de corriente en función del voltaje de entrada, para un inversor CMOS. El pico de corriente está en el umbral de conmutación, esta corriente da lugar a disipación de potencia dinámica en el inversor, sin embargo
una componente más importante de disipación de potencia dinámica resulta de la corriente
que circula por Q N y Q P cuando el inversor es cargado por un condensador C .
La disipación de potencia dinámica, si el inversor conmuta a una razón de f ciclos por
segundo, será:
2
PD = fCV DD
(1.22)
na cifra del mérito o medida de calidad en la tecnología del circuito en particular es el
producto de potencia y tiempo denotado como DP y es igual a:
DP = PDt P
Obviamente un bajo valor de DP indica una mejor calidad en la tecnología.
184
(1.23)
i
Ipico
0
Vtn
VDD/2
VDD
Vt
VDD - lVtpl
Figura 6.20 Circulación de corriente en el inversor CMOS vs la entrada de voltaje11
Hay dos clases de potencia disipada en un inversor CMOS: la potencia estática debida a las corrientes de fuga y otras salidas de corriente permanentes de la fuente (ver
Figura 6.21), y la dinámica debida a la conmutación y las cargas y descargas en los
condensadores parásitos (ver Figura 6.22). El cálculo de estas potencias se realiza de
manera similar a los cálculos en transistores sencillos.
(1.24)
n
D
PS = ∑Corrientes de fuga *Voltaje alimentación
1
G
S
I de Fuga
Figura 6.21 Diagrama de corrientes de fuga en un transistor MOSFET12
B
En la Figura 6.23 se muestran algunos circuitos de PSpice y los resultados en el consumo
de corrientes dinámicas para diferentes cargas capacitivas. Puede verse que el consumo de
corriente aumenta con la capacitancia, así como disminuye la corriente de corto circuito.
11 A.S. Sedra, K.C. Smith. Circuitos Microelectrónicos. Oxford University Press, Mc Graw Hill, 1998.
12 R.C. Jaeger: “Microelectronic Circuit Design”. McGraw-Hill, 1997.
185
G
D
S
CGS
CGD
CGB
CDS
CSB
B
Figura 6.22 Diagrama de las capacitancias parásitas de un transistor MOSFET13
C
B
A
Vin
_
+
8/1
_
+
Vidsp 00
_
+
Vin
Vidsn 00
5V
A
4/1
Idsn 00
Idsp 00
Corriente de corto circuito
_
+
8/1
5V
Corriente de capacitor
_
+
Vidsp 05
B
_
+
Vidsn 05
0.05pf
Corriente de corto circuito
Idsp 05
4/1
_
+
8/1
Idsn 05
5V
Corriente de capacitor
Idsn 20
Corriente de capacitor
_
+
Vidsp20
_
+
Vidsn 20
4/1
Corriente de corto circuito
C
0.2pf
Idsp 20
Corriente de corto circuito
Corriente de capacitor
Figura 6.23 Consumo de corrientes dinámicas para diferentes cargas capacitivas, simuladas con PSpice.
13 R.C. Jaeger: “Microelectronic Circuit Design”. McGraw-Hill, 1997.
186
La potencia disipada por un inversor CMOS en situación estática es prácticamente
nula, pues no existe ninguna línea de conducción directa entre alimentaciones (siempre
uno de los dos transistores correspondientes a cada entrada se encuentra en corte).
Ahora bien, en cada transistor existen uniones PN polarizadas inversamente (uniones
difusión-substrato) que conducen una minúscula intensidad inversa, cuyo orden de magnitud es de picoamperios.
Al conmutar el inversor se cargan o descargan las capacitancias propias de los transistores, en particular, la capacitancia de compuerta, lo cual determina un consumo dinámico proporcional a la frecuencia de conmutación:
2
• Energía necesaria para cargar o descargar un condensador: 1 2 CV DD
• Potencia disipada al cargarlo y descargarlo con una onda de frecuencia f (en
cada período hay dos conmutaciones, habrá que contabilizar una carga y una
2
2
descarga): 1 CV DD
2f = fCV DD
2
Esta potencia (energía por unidad de tiempo) representa un consumo de intensidad
desde la alimentación y una disipación de calor en el propio circuito. Son dos aspectos
complementarios, relativos al consumo de intensidad, que requieren la correspondiente
atención en el diseño y utilización del circuito integrado: una fuente de alimentación con
suficiente capacidad de suministro de corriente y una disipación de calor adecuada.
(
)
Teniendo en cuenta, además, que los tiempos de propagación aumentan con la temperatura y, en consecuencia, disminuye la velocidad de trabajo, la potencia consumida y
disipada depende de:
•
•
•
La tecnología, cuyas dimensiones determinan la capacitancia C ; dicha capacitancia equivalente de una compuerta a efectos de consumo de intensidad tiene
varios componentes, entre los cuales predomina la capacitancia de entrada (las
otras capacitancia internas de los transistores son de valores muy inferiores) que
es proporcional a la superficie de las zonas de compuerta, es decir, al producto
LW y disminuye cuadráticamente al disminuir L (W = 1,5L ) .
La tensión de alimentación, que también afecta cuadráticamente V DD ; existe, por
ello, una evolución continuada de la microelectrónica hacia tensiones de alimentación más bajas (el paso de 5V a 3V reduce el consumo a la tercera parte), siendo
cada vez más frecuentes dispositivos de 2,5V y de 1,8V.
2
La frecuencia de trabajo f, aumentando linealmente con ella (lo cual aconseja no
trabajar a frecuencia más alta de la estrictamente necesaria para el sistema digital). Al evaluar el consumo de un circuito integrado, debe tenerse en cuenta que no
todas las compuertas del mismo conmutan cada vez, sino que solamente lo hace
una pequeña parte de ellas; por ejemplo, la escritura de un dato sobre una memoria de 1 Mega solamente afecta a uno de sus 1048576 registros (y al decodificador
de direcciones y control de escritura).
187
Analisis de Diseño y operación
del inversor CMOS
Operación Estática
Con v i = 0 , v 0 =VOH =V DD y el nodo de salida conectado a V DD mediante la resistencia
rDSP del transistor de conexión Q P . Asimismo, con v = 0 , v =V = 0 y el nodo de salida
0
OL
i
r
conectado a tierra mediante la resistencia DSN del transistor de conexión Q N . Por lo
tanto, en estado estable no existe una trayectoria directa entre V DD y tierra, asimismo la
corriente y la disipación de potencia son cero (los efectos de fuga general son mínimos
en dispositivos grandes).
En la Figura 6.24 se muestra la curva característica de transferencia de voltaje del
inversor, que confirma los niveles lógicos de voltaje a la salida que son 0 y V DD , dando
la oscilación máxima de voltaje posible en este nodo. El hecho de que el VOH y VOL sean
independientes de las dimensiones del dispositivo hace que el CMOS sea muy diferente
a otras formas de lógica MOS.
Se puede hacer que el inversor CMOS conmute en el punto medio de la oscilación
V
lógica, 0 a V DD , es decir en DD 2 , puesto que este valor depende de las dimensiones de
los transistores, entonces el voltaje de umbral de conmutación Vumbral (V M ) está dado por:
Vumbral =
V DD − Vtp +Vtn
1+
kn
kn
kp
kp
(1.25)
' W
' W
Donde k n = k n ( L )n y k p = k p ( L )p , a partir de lo cual se ve que para el caso
V
para k n = k p , es decir:
típico en el que Vtn = Vtp , Vumbral = DD
2
(1.26)
k n' (W )n = k p' (W )p
L
L
A través del anterior argumento se obtiene una característica de transferencia simétrica cuando los dispositivos se diseñan para que tengan parámetros de transconductancia
µ
iguales, esta condición es llamada igualación. Como n es dos a cuatro veces mas granµ
de que µ p , la igualación se logra haciendo (W )p dos a cuatro veces (es decir n
L
µp
veces) el valor de (W )n .
L
188
µn W 
W 
  =
 
 L  p µ p  L n
(1.27)
V0
Pendiente = -1
VOH = VDD
Pendiente = +1
Pendiente = -1
NML
VOL = 0
0
Vt
NMH
VIL
VIH
VDD
Vt
Vth = VDD / 2
Figura 6.24 Curva característica de transferencia de voltaje del inversor CMOS,
cuando Q N y Q P están igualados 14
Asimismo normalmente los dispositivos tiene la misma longitud de canal, L , y se
le da el valor mínimo para la tecnología de proceso efectuada. El ancho mínimo del
transistor NMOS es de ½ a dos veces L y el ancho de transistor PMOS de dos a tres
µn
veces L . Por ejemplo, para un proceso de 0.25μm para el cual
µ p = 3 , L=0.25μm,
(W )n = 0.375µ m / 0.25µ m y (W )p = 1.275µ m / 0.25µ m . También se debe tener en
L
L
cuenta que si el transistor va a ser utilizado para impulsar una carga capacitiva relativamente grande, los transistores se hacen más anchos. Sin embargo, el tamaño del
transistor depende de un mínimo dado por el tamaño del chip. Para propósitos futuros
el cociente (W/L) del transistor NMOS de este inversor mínimo se denotará n y el cociente (W/L) del transistor PMOS p. como el área del inversor puede representarse por
ÐÐÐ
+ p p = n + p , el área del inversor de mínimo tamaño es (n + p )L2 y se puen n
de utilizar el factor (n + p ) para representar el área. Para el ejemplo antes citado, n = 1.5
, p = 4.5 y el factor de área n + p = 6 .
(
) (
)
Además de colocar el umbral en el centro de la oscilación lógica, la igualación de los
parámetros de transconductancia de Q n y Q p proporcionan al inversor una capacidad
de excitación de corriente igual en ambas direcciones (polarización a nivel lógico alto y
polarización a nivel bajo). También, y obviamente relacionado, hace rDSN = rDSP . Por tanto,
t PHL
un inversor con transistores igualados tendrá retardos de propagación iguales, t PLH y(1.28)
. Lo mismo sucede con respecto a los márgenes de ruido NM H y NM L que se igualan y
sus valores se incrementan a los valores máximos, de modo que:
14 A.S. Sedra, K.C. Smith. Circuitos Microelectrónicos. Oxford University Press, Mc Graw Hill, 1998.
189
3
8
2
3

NM H = NM L = V DD + Vt 

Con un Vt entre el 10 y 20% de V DD , que son valores típicos, los márgenes de ruido son
de aproximadamente el 40% de V DD . Este valor por su proximidad a la mitad del voltaje de
suministro de potencia, hace que el inversor CMOS sea casi ideal desde el punto de vista
de inmunidad al ruido. Además como la corriente DC de entrada al inversor es prácticamente cero, los márgenes de ruido no dependen de la divergencia (fan-out) de la compuerta.
Aunque se ha hecho hincapié en las ventajas de igualar Q n y Q p , existen ocasiones
en las que no se opta por esto. Se podría por ejemplo renunciar a las ventajas de la coW
W
incidencia a cambio de reducir el área del chip y simplemente hacer ( L )p = ( L )n .
También existen casos en los que se utiliza una desigualdad deliberada para situar V en
un valor específico diferente de V DD . Observe que haciendo k n > k p , el Vumbral se aproxima
a cero, mientras que k p > k n hace que Vumbral se aproxime a V DD .
Como comentario final sobre la curva característica de transferencia de voltaje del
inversor, se observa que la pendiente en la región de transición, aun cuando es grande,
es finita y está dada por –( g mN + g mP )(roN || roP ) .
Operación Dinámica
El retardo de propagación del inversor se determina por lo general bajo la condición
de que se está excitando un inversor idéntico. Esta situación se ilustra en la Figura 6.25.
Se desea analizar este circuito para determinar el retardo de propagación que comprende
Q1 y Q 2 , el cual es excitado por una fuente de baja impedancia y la carga es el inversor
comprendido por Q3 y Q 4 . En la Figura 6.25 se indican las diversas capacitancias internas
del transistor que están conectadas al nodo de salida del inversor (Q1 , Q 2 ). Específicamente se desea remplazar todas estas capacitancias por una común C conectada entre
el nodo de salida y tierra. Con esta finalidad se observa que durante t PLH o t PHL , la salida
V DD
V DD
del primer inversor cambia de 0 a
2 o de V DD a
2 respectivamente, se deduce que
el segundo inversor permanece en el mismo estado durante cada uno de los intervalos
de análisis. Esta observación influirá de manera importante en la estimación de la capacitancia de entrada equivalente del segundo inversor.
Contribución de las capacitancias de la Figura 6.25 a C :
1. La capacitancia de traslape compuerta-drenaje de Q1 , C gd 1 , puede remplazarse
por una capacitancia equivalente entre el nodo de salida y tierra de 2C gd 1 . La
proporción de 2 surge a causa del efecto Miller. Específicamente, observe que
v i pasa a un nivel lógico alto y v 0 a uno bajo en la misma cantidad, el cambio
de voltaje a través de C gd 1 es dos veces esa cantidad. Lo mismo se aplica para el
transistor Q 2 que será de 2C gd 2 ubicada entre el nodo de salida y tierra.
2. Cada una de las capacitancias drenaje-cuerpo C db 1 y C db 2 tienen una terminal a
un voltaje constante. Entonces para el propósito del análisis en este caso C db 1 y
C db 2 pueden sustituirse con capacitancias iguales entre el nodo de salida y tierra.
190
VDD
VDD
Cg 4
Q2
Q4
Cgd 2
Cdb 2
V0
VDD
0
Cgd 1
Vi
t
+
_
Cdb 1
CW
Q3
Q1
Cg 3
Figura 6.25 Circuito para analizar el tiempo de propagación del inversor. Medición de
rando otro inversor como carga15
tP
conside-
3. Como el segundo inversor no cambia de estados, se supondrá que las capacitancias de entrada de Q3 y Q 4 permanecen aproximadamente constantes e iguales a
la capacitancia de compuerta total WLC ox + C gsov + C gdov . Es decir, la capacitancia
de entrada del inversor de carga será:
(
)
C g 3 + C g 4 = (WL ) C ox + (WL ) C ox + C gsov 3 + C gdov 3 + C gsov 4 + C gdov 4
3
(1.29)
4
4. El último componente de C es la capacitancia de alambrado C w , que simplemen
te se suma al valor de C . El valor de C esta dado por:
C = 2C gd 1 + 2C gd 2 + C db 1 + C db 2 + C g 3 + C g 4 + C w
(1.30)
Una vez que se determina un valor aproximado de la capacitancia equivalente entre
el nodo de salida y tierra se pueden utilizar los circuitos de la Figura 6.26 para determinar
el t PHL y t PLH . Como los dos circuitos son similares solo hay que considerar uno y aplicar
el resultado en el otro.
Un método aproximado de analizar el circuito de la Figura 6.26.a, se basa en calcular
un valor promedio para la corriente de descarga i DN durante el intervalo t = 0 a t = t PHL .
Específicamente, en el instante t = 0 , Q N se satura e i DN ( 0) está dada por:
1 W 
i DN ( 0) = k n'   (V DD −Vt )2
2  L n
(1.31)
15 A.S. Sedra, K.C. Smith. Circuitos Microelectrónicos. Oxford University Press, Mc Graw Hill, 1998.
191
Cuando t = t PHL , Q N estará en la región de tríodo e i DN (t PHL ) será:
i DN
V
W  
t
k
=
( PHL ) n  L  (V DD −Vt )  2DD
 n 

'
2
 1 V DD  
− 
 
 2  2  
(1.32)
La corriente de descarga promedio se puede encontrar entonces como
_____
1
i DN = i DN ( 0) + i DN (t PHL )
2
VDD
Vo
iDN
Vi
0
(1.33)
VDD
C
Q1
VDD
2
0
t
t
tPHL
a)
VDD
VDD
Vi
0
VDD
Q2
Vo
t
0
C
VDD
2
t
0 tPHL
b)
Figura 6.26 Circuitos equivalentes para determinar los tiempos de propagación
(a) t PHL y (b) t PLH del inversor16
Y el intervalo de descarga t PLH se calcula con:
t PHL =
C ∆V
______
i DN
=
C
V DD
2
______
i DN
Si se utilizan las ecuaciones (1.31) a (1.33) y se sustituye
t PHL ≅
1.7C
W 
k n'   V DD
 L n
(1.34)
Vt ≅ 0.2V DD
, se obtiene
16 A.S. Sedra, K.C. Smith. Circuitos Microelectrónicos. Oxford University Press, Mc Graw Hill, 1998.
192
Esta fórmula aproximada nos dice el efecto de tener en cuenta la inclusión de los diversos elementos al determinar el retardo del transistor, puesto que tal conocimiento es
el que el diseñador del circuito espera obtener con un análisis manual. La expresión por
analogía para t PLH es:
t PLH ≅
1.7C
W 
k p'   V DD
 L p
(1.35)
Finalmente el retardo de propagación t P se encuentra como el promedio de t PHL y t PLH ,
t ÐÐÐ=
1
(t
2
+t
)
(1.36)
Observaciones útiles de las ecuaciones anteriores:
1. Como se esperaba, los dos componentes de t P se pueden igualar al seleccionar
Qp .
las relaciones (W/L) para igualar k n y k p , es decir, haciendo coincidentes Q n y(1.37)
2. Como t P es proporcional a C , el diseñador deberá esforzarse por reducir C . Esto
se logra utilizando la longitud de canal más pequeña posible y reduciendo al mínimo
la capacitancia de alambrado y otras capacitancias parasitas. Una cuidadosa disposición del chip puede reducir significativamente tales capacitancias y el valor de C db .
3. Si se utiliza una tecnología de proceso con parámetro de transconductancia k '
más grande se producen retardos de propagación mas cortos. Sin embargo, se
debe tener en cuenta que para tales procesos C ox se incrementa, y por tanto el
valor de C se incrementa al mismo tiempo.
4. Si se utilizan relaciones (W/L) más grandes se puede producir una reducción en t P
. Sin embargo, en este caso también se deberá tener cuidado, puesto que al incrementarse el tamaño de los dispositivos se incrementa el valor de C y por tanto la
reducción esperada de t P podría no materializarse. Sin embargo reducir t P y aumentar (W/L) es una estrategia efectiva cuando C está dominado por componentes
que no están directamente relacionadas con el tamaño del dispositivo de excitación.
5. Un voltaje de suministro V DD más grande produce un t P más bajo. Sin embargo,
V DD está determinado por la tecnología de proceso y por tanto con frecuencia el
diseñador no puede controlarlo. Además, las tecnologías de proceso modernas en
las que los tamaños de dispositivos se reducen requieren un V DD más bajo. Un factor que motiva la reducción de V DD es la necesidad de mantener la disipación de potencia dinámica en niveles aceptables, en especial en chips de muy alta densidad.
En las anteriores observaciones se ilustran los requerimientos conflictivos y las soluciones disponibles en el diseño de un circuito integrado digital CMOS (y de hecho de
cualquier problema de diseño de ingeniería).
193
Disipación De Potencia Dinámica
La baja disipación de potencia de los circuitos CMOS lo da como dominador a la hora
de seleccionar una tecnología para implementar circuitos VLSI. Sin embargo conforme
aumenta el número de compuertas del chip se incrementa de manera constante la disipación de potencia dinámica. La disipación de potencia en el inversor CMOS está dada por:
PD = fC (V DD )
2
(1.38)
Donde f es la frecuencia a la cual la compuerta conmuta. Se deduce que la reducción de C al mínimo es un medio efectivo de disminuir la disipación de potencia dinámica.
Una estrategia aun más efectiva es el uso de voltaje de suministro más bajo. Como ya se
mencionó, las nuevas tecnologías de proceso CMOS utilizan valores V DD tan bajos como
1V. Estos nuevos chips, sin embargo empacan mas circuitos (hasta 100 millones de transistores) y operan a frecuencias más altas (en la actualidad están disponibles frecuencias
de reloj de procesador de más de 1GHz). La disipación de potencia de semejantes chips
de alta densidad puede ser de 100W.
Resumen diseño inversor CMOS
El diseño de las compuertas CMOS se basa en la siguiente metodología:
• El número de transistores N debe ser igual al número de transistores P.
• Los transistores N se referencian a tierra y los transistores P a la fuente.
• Se implementa con NMOS la función negada y las variables sin negar.
• Se implementa con PMOS la función sin negar y las variables negadas.
En la Figura 6.27 se hace el diseño del inversor CMOS y se muestra el diagrama, donde se puede observar que el inversor CMOS se compone de dos transistores MOSFET,
uno Tipo P a V_DD y otro Tipo N a tierra; los cuales tienen las compuertas conectadas y
la salida se encuentra entre la conexión de la fuente del P al drenador del N.
VDD
VT
Vo
Figura 6.27 Inversor CMOS
194
Ventajas e inconvenientes del inversor
CMOS y su tecnología
Ventajas
En general las ventajas del inversor vienen dadas por la tecnología de la familia MOS,
su bajo consumo y alta densidad de integración, es por esto que un inversor que consta
de dos transistores de esta familia posee estas características. Una ventaja muy importante es la alta divergencia (fan-out).
• Consumo = 0mW
• Retardo de propagación = 0
Características de la familia
lógica ideal
• Tiempo de subida y bajada controlable
• Inmunidad al ruido del 50%
•
Inconvenientes
V alta −Vbaja
2
= 0.5
La tecnología CMOS se aproxima a algunos de los aspectos ideales citados, ya que
ofrece un bajo consumo y una alta inmunidad al ruido, aunque el retardo y los tiempos no
son muy óptimos. Además del hecho de que no admiten cableados lógicos. Baja velocidad PMOS y alta impedancia de salida.
Circuito inversor pseudo-NMOS
Características Estáticas
Debido a las desventajas de los CMOS los diseñadores de circuitos lógicos integrados
han estado buscando nuevas formas de circuitos lógicos CMOS que permitan sumarse en
la utilización de circuitos de tipo complementario. Estas formas no sustituyen a las forma
CMOS complementario, sirven para usarse en casos especiales para fines especiales.
En la Figura 6.28.a se ilustra una forma modificada del inversor CMOS. Aquí, solo Q N
esta excitado por el voltaje de entrada mientras que la compuerta de Q P está conectada
a tierra y Q P actúa como carga activa para Q N . Los circuitos de lógica NMOS se componen de un transistor excitador (Q N ) y un transistor de carga (en este caso Q P ); de ahí
195
el nombre pseudo-NMOS.Como propósito de comparación se mencionaran dos caos, el
primitivo o popular de a mediados de los años setenta, utilizaba un MOSFET de mejoramiento o enriquecimiento como elemento de carga, en una topología cuyo inversor básico
se muestra en la Figura 6.28.b. Estos tipos de dispositivos sufren de una oscilación lógica
relativamente pequeña, pequeños márgenes de ruido y alta disipación de potencia estática. Esta tecnología fue remplazada en 1980 por circuitos NMOS de agotamiento-carga,
en los cuales se utiliza un transistor NMOS de agotamiento con su compuerta conectada
a su fuente como elemento de carga. Topología el inversor de agotamiento-carga básico
se muestra en Figura 6.28.c.
VDD
QP
iDP
Q2
Q2
+
V_I
iD2 = iD1
Vo
iDN
VI
VDD
VDD
QN
Q1
+
V_I
(a)
iD
+
V_o
+
V_I
Q1
(b)
+
V_o
(c)
Figura 6.28 Modelos de inversor pseudo-NMOS
Al principio se esperaba que el NMOS de agotamiento con VGS = 0 operara como
fuente de corriente y que por tanto proporcionara un excelente elemento de carga. Sin
embargo rápidamente quedo demostrado que el efecto de cuerpo en el transistor de
agotamiento hace que su característica i −v se desvié considerablemente de la de una
fuente de corriente constante.
Obtención de la Característica De Transferencia De Voltaje (VTC)
Las características del inversor NMOS se obtienen de la misma forma que se utiliza para
CMOS complementarios. Entonces la corriente de drenaje de Q N y Q P están dadas por:
1
2
i DN = k n (v i −Vt )2 , parav 0 ≥ v i −Vt (saturación )


1
i DN = k n (v i −Vt )v 0 − v 02  , parav 0 ≤ v i −Vt (tríodo )
2


1
2
196
(1.40)

i DP = k p (V DD −Vt )2 , parav 0 ≤Vt (saturación )
1

i DP = k p (V DD −Vt )(V DD −v 0 ) − (V DD −v 0 )  , parav 0 ≥Vt (tríodo )
2

(1.39)
2

(1.41)
(1.42)
( ) yk
En las que se supuso que Vtn =Vtp =Vt y se utilizo k n = k n' W
L
simplificar el análisis.
n
p
( L ) para
= k p' W
p
Para obtener la VTC del inversor, se superpone la curva de carga representada por
las ecuaciones (1.41) y (1.42) sobre las características i D −V DS de Q N , las cuales pueden ser reetiquetadas como i DN −v 0 y trazadas para varios valores de VGS = v i Semejante
construcción grafica se muestra en la Figura 6.29 en la que, para mantener simple el
diagrama, se muestran solo las curvas Q N de los dos extremos dev i , o sea 0 yV DD . Enseguida se presentan dos observaciones:
1. La curva de carga representa una corriente de saturación mucho más baja (1.41)
que está representada por la curva correspondiente de Q N , es decir con v i =V DD .
Este es el resultado del hecho de que el inversor pseudo-NMOS suele diseñarse
de modo que k n sea mayor que k p por un factor de 4 a 10. Este inversor es del
kn
tipo proporcionado y el cociente r = k determina todos los puntos de inflexión
p
de la VTC, es decir, VOL , V IL , V IH y asi sucesivamente, por tanto determina los
márgenes de ruido. La selección de un valor relativamente alto para r reduce a VOL
y amplia los márgenes de ruido.
2. Aunque se tiende a pensar que Q p actúa como una fuente de corriente constante,
en realidad éste opera en saturación durante solo un pequeño intervalo de v 0 o sea
v 0 ≤Vt . Durante el resto del intervalo de v 0 , Q p opera en la región de tríodo.
iDN
iDP
Vi = VDD
Curva de carga
I estática
Vi = 0
E
A
VOL Vt
VDD - Vt
VDD
V0
Figura 6.29 Curva Característica De Transferencia De Voltaje (VTC) para el inversor de la Figura 6.28.a17
Consideramos primero los dos casos extremos de v i : cuando v i = 0 , Q N se desactiva
y Q P opera en la región tríodo, incluso con corriente cero y fuente de voltaje de drenajefuente cero. Por tanto el punto de operación es el designado como A en la Figura 6.29,
donde v 0 =VOH =V DD , la corriente estática y la disipación de potencia estática son cero.
Cuando v i =V DD , el inversor opera en el punto E de la Figura 6.29 y se observa que a
diferencia de los circuitos CMOS complementarios, en este caso VOL no es cero, una
desventaja obvia. Otra desventaja es que la compuerta conduce corriente estática en el
estado de baja salida y por tanto habrá disipación de potencia estática (PD = I estáticaV DD ) .
17 A.S. Sedra, K.C. Smith. Circuitos Microelectrónicos. Oxford University Press, Mc Graw Hill, 1998.
197
Deducción de la VTC
La Figura 6.30 muestra la VTC del inversor pseudo-NMOS y sus cuatro regiones distintas de operación, correspondientes a las combinaciones posibles de operación de Q N
y Q p . Las regiones se observan en la Tabla 6.1.
Región
QN
Corte
QP
Condición
I
Segmento de
VTC
AB
Triodo
II
BC
Saturación
Triodo
III
CD
Triodo
Triodo
v 0 ≥ v i −Vt
IV
DE
Triodo
Saturación
v i <Vt
Vt ≤ v 0 ≤ v i −Vt
v i ≤Vt
Tabla 6.1 Regiones de operación del inversor pseudo-NMOS.
V0
Región l
VOH
Región ll
Pendiente = -1
A
B
Pendiente = +1
(Vo = Vi)
Región lll
Región lV
C
VOL
D
Pendiente = -1
E
Vi
VOL
Vt
VIL
VM
VIH
VOH = VDD
Figura 6.30 VTC del inversor pseudo-NMOS18
• Región I (segmento AB):
v 0 =V 0H =V DD
(1.43)
18 A.S. Sedra, K.C. Smith. Circuitos Microelectrónicos. Oxford University Press, Mc Graw Hill, 1998.
198
• Región II (segmento BC):
Se iguala i DN de la ecuación (1.39) con i DP de la ecuación (1.42), junto con la sustitución de k n = rk p y algunas manipulaciones matemáticas se obtiene:
v 0 =Vt + (V DD −Vt ) − r (v i −Vt )
2
2
(1.44)
El valor de V IL se obtiene al diferenciar esta ecuación y sustituir
V DD −Vt
V IL =Vt +
r ( r + 1)
∂V 0
∂V i
= −1 y V =V
t
IL
(1.45)
El voltaje de umbral V M (o Vumbral ) es por definición el valor de v i con el cual
V M =Vt +
V DD −Vt
v 0 =v i
(1.46)
( r + 1)
Por último, el extremo de segmento de la región II (punto C) se encuentra sustituyen-
do v 0 = v i −Vt en la ecuación (1.44), la condición para que Q N abandone la saturación y
pase a región tríodo.
• Región III (segmento CD):
Este es un segmento corto que no es de gran interés. El punto D está caracterizado
por v 0 =Vt
• Región IV (segmento DE):
Si se iguala i DN de la ecuación (1.40) con i DP de la ecuación (1.41) y se sustituye
k n = rk p se obtiene
v 0 = (v i −Vt ) − (V i −Vt ) −
2
1
(V
r
DD
−Vt )
2
El valor de V IH se puede determinar al diferenciar esta ecuación y establecer
V IH =Vt +
2
3r
(V
DD
−Vt )
El valor de VOL se halla sustituyendo v i =V DD en la ecuación (1.47),

1
VOL = (V DD −Vt ) 1 − 1 − 
r 

(1.47)
∂V 0
∂V i
= −1
(1.48)
(1.49)
La corriente estática que conduce el inversor en el estado de salida baja se encuentra
con la ecuación (1.41)
1
2
I estática = k n (V DD −Vt )
2
(1.50)
199
(1.51)
Por último, se utilizan las ecuaciones (1.45) y (1.49) para determinar N ML y las ecua-
ciones (1.43) y (1.48) para determinar N MH ,
N ML =Vt − (V DD


1
1


−Vt ) 1 − 1 − −

r
r ( r + 1) 



N MH = (V DD −Vt )  1 −

(1.52)
2 

3r 
Finalmente se observa que puesto que la tecnología de proceso determina V DD y Vt , el
único parámetro para controlar los valores de VOL y los márgenes de ruido es la relación r.
Operación Dinámica
El análisis de la respuesta transitoria del inversor para determinar t PLH con el inversor
cargado por una capacitancia C es idéntico al del inversor CMOS complementario. La
capacitancia será cargada por la corriente i DP ; se puede estimar t PLH utilizando el valor
(1.53)
V
v 0 = DD
v
=
0
i
2 . El resultado es la expresión aproxipromedio de DP en el intervalo de 0
a
mada siguiente donde se tuvo en cuenta Vt ≅ 0.2V DD :
t PLH =
1.7C
k pV DD
(1.54)
Y en la descarga del capacitor el caso es diferente porque la corriente i DP tiene que restarse de i DN para determinar la corriente de descarga. El resultado es la expresión aproximada,
t PHL =
1.7C

0.46 
kn 1 −
V
r  DD

La cual, para un valor grande de r se reduce a
t PHL =
1.7C
k nV DD
Aunque las formulas son idénticas a las del inversor CMOS complementario, el inversor pseudo-NMOS tiene un problema especial: como k p es r veces más pequeño que
k n , t PLH será r veces más grande que t PHL . En consecuencia el circuito exhibe un desempeño con retraso asimétrico. Sin embargo, se debe recordar que, para compuertas con
convergencia de entrada grande, el pseudo-NMOS necesita pocos transistores y por tanto
C puede ser mas pequeña que en la compuerta CMOS complementaria correspondiente.
200
Diseño Del Inversor Pseudo-NMOS
El diseño implica la escogencia de las relaciones r y (W/L) para uno de los transistores.
El valor de (W/L) para otro dispositivo se obtiene entonces mediante r. los parámetros de
diseño de interés son VOL , NM L , NM H , I estática , PD , t PLH , t PHL . Algunas consideraciones importantes del diseño son las siguientes:
1. L
a relación r determina todos los puntos de inflexión de la curva VTC; cuanto mas
grande sea el valor de r , menor es VOL , (ecuación (1.49), y más amplios son los
márgenes de ruido (ecuaciones (1.51) y (1.52)), pero una r más grande aumenta
la asimetría de la respuesta dinámica y, para una (W/L)n dada, hace más grande
la compuerta. Entonces, seleccionar un valor para r representa un término medio
entre márgenes de ruido por un lado y area de silicio y t P por el otro. Por lo general, r se selecciona entre 4 y 10.
2. Una vez determinada r , se puede seleccionar un valor para (W/L)n o (W/L)p
y determinar la otra. Aquí, seleccionaríamos una pequeña(W/L) n para conservar pequeña el área de compuerta y así obtener un valor pequeño para C . Del
mismo modo, una (W/L)p pequeña conserva bajas I estática y PD . Por otra parte, se
desea seleccionar (W/L) más grandes para obtener baja t P y por lo tanto rápida
respuesta. Para aplicaciones usuales (de alta velocidad), (W/L) p se selecciona de
modo que Iestatica se encuentre entre 50 y 100μA, que para V DD = 5V resulta en
PD entre 0.25 y 0.5mW.
Realización de un inversor CMOS en
Microwind y L-edit
O
bjetivo: Este ejercicio tiene como objetivo enseñar el proceso de diseño que
se sigue en la fabricación de circuitos integrados en herramientas CAD para
diseño MicroWind y L-Edit y de simulación ORCAD.
Proceso de Diseño
La metodología a seguir para la elaboración de esta compuerta es la TOP BOTTON,
es decir se comienza con una descripción a alto nivel y se llega hasta una descripción a
nivel de layout (diagrama que indica la construcción física del dispositivo).
En esta sección se realizará la implementación a nivel de layout del circuito inversor. Las
herramientas a utilizar serán, en primer lugar Microwind de Ensa Tolouse y L-Edit de Tanner
Tools. Lo primero que hay que hacer es correr el programa, pero lo haremos cargando inicialmente un archivo dado por los fabricantes en el cual se definen todos las características del
proceso de fabricación, en nuestro caso trabajaremos con la tecnología CNM25 de 2.5µm.
201
Al ejecutar el programa nos aparecerá la siguiente ventana:
Para cargar la tecnología, vamos a File – Select Foundry (Ctrl + F). Aquí buscamos el
archivo CNM25.rul y lo seleccionamos.
Ya seleccionada la tecnología, se podrá dar cuenta que la barra de capas (derecha de
la ventana) habrá cambiado ostensiblemente, al igual que el indicador de lambda.
202
Ahora se proseguirá a empezar a diseñar el inversor, primero hacemos el transistor P,
y para eso se hará lo siguiente:
1. Sabiendo que el fondo negro es pozo P, vamos a realizar una zona de pozo N para
poder crear el transistor P. Por lo tanto seleccionamos en la barra de capas el icono de
pozo N
, y procedemos a dibujar la zona.
2. Ahora sobre la zona de pozo N, se dibujará una zona de Difusión P. Por lo tanto ahora
seleccionamos Difusión P en la barra de capas
y ahora la ventana se verá así.
203
3. Para completar el transistor es necesario introducir una capa de polisilicio y los
contactos para fuente y drenaje. Por lo tanto de la barra de herramientas damos clic en
polisilicio
y luego dibujamos para obtener
4. Luego seleccionamos la opción de metal 1
rramientas y obtenemos dibujando
204
en la barra de he-
5. Por último sobre las zonas de metal hacemos la zona de contacto. Seleccionamos
contacto
en la barra y obtenemos
Luego vamos a dibujar el transistor N. A diferencia del anterior, la zona de difusión es de
tipo N
y no hay necesidad de hacer zona de pozo, ya que el fondo es
pozo P como habíamos mencionado anteriormente. Por lo tanto al hacer el transistor tenemos:
205
Para finalizar el inversor seleccionamos metal uno y unimos los contactos pertinentes
e introducimos los estímulos
y la alimentación
.
Debemos tener en cuenta que al ser un inversor CMOS, el nivel de alimentación no
puede ser menor a 3.3V. Para determinar esto se le da doble clic sobre el estimulo y se modifican sus características. Para revisar errores en el diseño se presiona en el botón
Para la simulación tenemos que en el icono
dominio del tiempo. Para este circuito obtenemos:
206
podemos ver una simulación en el
Ahora para mirar cómo funciona una determinada zona del elemento (cruce entre polisili, seleccionamos la zona y obtenemos: I d vs V d
cio y alguna difusión), tomamos la opción
Id
vs
Vd
207
A continuación vamos a explicar el procedimiento en L-Edit. Luego de correr el programa obtenemos una ventana de este estilo
En esta ventana podemos identificar: el menú principal (parte superior), la barra de
herramientas (izquierda y parte superior), el área de edición (parte central) y el área de
comandos (parte inferior).
El primer paso es introducir la tecnología que al igual que en el caso anterior es la
CNM25. Para esta herramienta el archivo es de extensión .ext.
Para esto en la barra de herramientas tenemos el siguiente icono
que es design
rules setup a donde buscaremos el archivo. Luego de introducir las reglas nos aparecerá
la ventana principal de la siguiente forma:
208
El segundo paso para la realización del transistor es crear los cortes de contacto, en
todas las tecnologías las dimensiones mínimas de los cortes de contacto son las que
identifican a la tecnología, en nuestro caso 1.25µm. Para dibujar estos cortes de contacto
se debe seleccionar el icono
de la barra de herramientas y seleccionar el cuadro
negro del cuadro de capas disponibles, y con el mouse dibujar un cuadro de 2.5µm x
2.5µm. Para saber de las dimensiones de los objetos que se están dibujando, en la parte inferior de la ventana se observa un mensaje que nos indica la capa sobre la que se
está trabajando y las dimensiones (en micras) del objeto seleccionado. Obsérvese que
cuando se selecciono el icono de la barra de herramientas los mensajes en la ventana
Mouse Buttons (parte izquierda) cambiaron, estos mensajes nos indican las acciones del
mouse, al hacer clic con el botón derecho y con el botón izquierdo, el caso mostrado en la
figura indica que con el botón izquierdo se dibuja, con el de la mitad se mueven y con el
derecho se seleccionan objetos. A diferencia de MicroWind este programa trabaja sobre
zonas activas por lo tanto se debe construir el inversor de la siguiente forma:
209
Hasta este momento lo único que hemos dibujado es la estructura básica de un transistor, pero nos falta definir el tipo de transistor ya sea de canal N o canal P. Debido a que
esta es una tecnología con Sustrato P, se pueden crear transistores de canal N directamente sobre el sustrato, pero las regiones de drenaje y fuente deben estar dopadas N,
para lo cual se debe agregar una capa adicional a la estructura del transistor, esta capa
y es la que diferencia el tipo de transistor. A
tiene como nombre Implantación n+
continuación dibujamos el transistor de canal P, tal y como se muestra en la siguiente
figura. Como puede observarse no se dibuja ningún implante sobre el área activa, Esto
porque se ha dibujado el pozo
transistor de canal P.
210
, al dibujar el pozo, el programa ya sabe que hay un
Una herramienta muy útil de L-Edit es el extractor, esta herramienta permite generar
un archivo tipo PSpice de nuestro diagrama. Para utilizar esta herramienta seleccionamos Extract del menú Tools, entonces aparecerá la siguiente pantalla: En la casilla Ex-
tract Definition File se debe colocar el PATH completo de la ubicación del archivo CNM25.
ext (suministrado por el fabricante), y en la casilla SPICE Extract Output File el nombre
del archivo de salida.
El archivo CNM25.ext contiene información necesaria para realizar la extracción, es
un archivo de texto plano y contiene lo siguiente:
#
File: CNM25.ext
#
For: Extractor definition file
#
CNM (IMB-CSIC) June 1996
#
connect(Polisilicio 1,Metal,Contacto)
connect(Polisilicio 0,Metal,Contacto)
connect(EXT-Difusion n+,Metal,Contacto)
connect(EXT-Difusion p+,Metal,Contacto)
# Contacto de substrato
connect(EXT-Substrato,Metal,EXT-Contacto de subs.)
# Contacto de pozo
connect(Pozo n,Metal,EXT-Contacto de pozo)
# Transistor NMOS
device = MOSFET(
RLAYER = EXT-Transistor n;
Drain = EXT-Difusion n+,WIDTH;
Gate = Polisilicio 1;
211
Source = EXT-Difusion n+,WIDTH;
Bulk = EXT-Substrato;
MODEL = NMOS;
)
# Transistor PMOS
device = MOSFET(
RLAYER = EXT-Transistor p;
Drain = EXT-Difusion p+, WIDTH;
Gate = Polisilicio 1;
Source = EXT-Difusion p+, WIDTH;
BULK = Pozo n;
MODEL = PMOS;
)
# Capacidad
device = CAP(
RLAYER = EXT-Capacidad poly;
Positive = Polisilicio 1;
Negative = Polisilicio 0;
MODEL =;
)
Como se puede observar en este archivo se definen las capas que deben estar presentes para formar los diferentes dispositivos.
El archivo Inversor.spc se encuentra localizado en el sitio desde donde se invoco ledit.exe por primera vez y contiene la siguiente información (el formato es texto plano, por
lo que se puede observar con cualquier notepad.exe o con write):
* Circuit Extracted by Tanner Research’s L-Edit V5.13 / Extract V2.06 ;
* TDB File cnm25\cnm25, Cell Cell0, Extract Definition File D:\cain\CNM25.ext ;
M1 10 3 11 4 PMOS L=2.5U W=5U
* M1 Drain Gate Source BULK (34 77 44 97) A = 12.5, W = 5
.MODEL NMOS
.MODEL PMOS
M2 8 3 9 7 NMOS L=2.5U W=5U
* M2 Drain Gate Source Bulk (34 21 44 41) A = 12.5, W = 5
* Total Nodes: 7 ;
* Total Elements: 2 ;
* Extract Elapsed Time: 1 seconds ;
.END
212
En este archivo podemos identificar varias secciones, la primera es el encabezado, Spice
siempre tomará la primera línea del archivo como comentario y lo utiliza para desplegar el
nombre del archivo que está simulando, por esta razón la primera línea de un archivo tipo Spice debe ser un comentario. La siguiente sección contiene la información del circuito. La línea:
M1 10 3 11 4 PMOS L=2.5U W=5U
Nos indica que existe un transistor PMOS (nn Spice los nombres de los transistores
MOS deben empezar por M) conectado entre los nodos 10, 3, 11 y 4 que corresponden al
drenaje (10), compuerta (3), fuente (11) y sustrato o cuerpo (4). La siguiente línea donde
aparece un transistor es:
M2 8 3 9 7 NMOS L=2.5U W=5U
Lo cual nos indica que es un transistor NMOS, observe que la compuerta está conectada al nodo 3 al igual que el transistor PMOS. Las líneas que comienzan con un asterisco (*) son comentarios y pueden eliminarse. Hasta el momento el circuito que hemos
extraído no es un inversor ya que faltan las conexiones de drenaje y fuente de los transistores, por tanto, procedemos a terminar nuestro circuito de la siguiente forma:
A continuación debemos colocar nombres a los nodos para poder ubicarlos fácilmente a la hora de realizar la simulación del circuito. Para lograr esto hacemos clic en
,
seleccionar la capa en la que queremos poner el nombre, en nuestro caso metal y dibujamos un cuadrado (pequeño) sobre el nodo que queremos nombrar, enseguida aparecerá
la siguiente ventana:
213
En la casilla Name colocamos el nombre, la casilla Text Size nos indica el tamaño de la
letra. Al hacer click en OK en la parte inferior de la pantalla debe aparecer un mensaje como:
Indicando que existe en nodo llamado VCC sobre la capa de Metal. Debemos realizar esta
operación hasta tener nuestro circuito tal y como aparece en la siguiente figura:
214
En este punto debemos realizar nuevamente la extracción de nuestro circuito, pero
esta vez debemos seleccionar la casilla Write Node Names para permitir la escritura de
los nombres de los nodos. El archivo Inversor.spc debe contener la siguiente información:
* Circuit Extracted by Tanner Research’s L-Edit V5.13 / Extract V2.06 ;
* TDB File cnm25\cnm25, Cell Cell0, Extract Definition File D:\cain\CNM25.ext ;
M1 11 3 9 11 PMOS L=2.5U W=5U
* M1 Drain Gate Source BULK (34 77 44 97) A = 12.5, W = 5
* Node 11 = Cell0\VCC VCC
* Node 12 = Cell0\GND GND
* Node 9 = Cell0\OUT OUT
* Node 3 = Cell0\IN IN
.MODEL NMOS
.MODEL PMOS
M2 12 3 9 12 NMOS L=2.5U W=5U
* M2 Drain Gate Source Bulk (34 21 44 41) A = 12.5, W = 5
* Total Nodes: 4 ;
* Total Elements: 2 ;
* Extract Elapsed Time: 2 seconds ;
.END
Como podemos observar en este archivo aparecen los nombres de los nodos. Este
archivo contiene dos líneas que nos indican el tipo de modelo que vamos a utilizar, Spice
utiliza modelos eléctricos para realizar la simulación, si no se indica un modelo, Spice
asignará uno, pero los fabricantes siempre incluyen modelos de simulación tipo Spice los
cuales contienen los parámetros para la tecnología. CNM provee tres modelos de simulación llamados slow, typ y fast la diferencia entre los tres está en la velocidad del transistor,
en nuestro caso utilizaremos los que presentan tiempos de respuesta promedio (typ.md).
Adicionalmente, CNM provee dos archivos de modelos tipicos: typ2.md y tip3.md, la diferencia entre los dos es el nivel de simulación, Spice permite tres modelos de simulación
y se diferencian en el método utilizado para obtener la respuesta, el nivel 3 es el más
preciso de los tres y es el que utilizaremos en nuestros ejercicios.
Para incluir los modelos del fabricante en nuestro archivo inversor.spc debemos abrir
el archivo typ3.md:
.model PMOS PMOS LEVEL = 2
+ TOX = 380E-10
VTO = -1.139
+ UCRIT = 1E4
UEXP = .1159
+ DELTA = 1.824
RS = 134.9
NSUB = 1.355E16 UO = 212.7
NFS = 662.4E9 WD = .4268E-6
LD = .8101E-6 XJ = 2.783E-9
+ VMAX = 120.3E3 NEFF = .06665 CJ = 3.816E-4 MJ = .3499
+ CJSW = 7.384E-10 MJSW = .3916
PB = .56
215
.model NMOS NMOS LEVEL = 2
+ TOX = 380E-10 VTO = .9418 NSUB = 2.639E16 UO = 648.2
+ UCRIT = 1E4
UEXP = .06857 NFS = 710.8E9 WD = .4086E-6
+ DELTA = 2.2
RS = 93.77
LD = .9132E-6 XJ = .0824E-6
+ VMAX = 59.62E3 NEFF = 1.479 CJ = 3.495E-4 MJ = .3950
+ CJSW = 5.952E-10 MJSW = .2941 PB = .65
y copiar los modelos correspondientes a los transistores NMOS y PMOS, que deben
incluirse en el archivo inversor.spc antes de cualquier declaración de transistores, es decir antes de cualquier línea que comience con M. El archivo inversor.spc debe quedar de
la siguiente forma:
* Circuit Extracted by Tanner Research’s L-Edit V5.13 / Extract V2.06 ;
* TDB File cnm25\cnm25, Cell Cell0, Extract Definition File D:\cain\CNM25.ext ;
.model PMOS PMOS LEVEL = 2
+ TOX = 380E-10 VTO = -1.139 NSUB = 1.355E16 UO = 212.7
+ UCRIT = 1E4
UEXP = .1159 NFS = 662.4E9 WD = .4268E-6
+ DELTA = 1.824 RS = 134.9
LD = .8101E-6 XJ = 2.783E-9
+ VMAX = 120.3E3 NEFF = .06665 CJ = 3.816E-4 MJ = .3499
+ CJSW = 7.384E-10 MJSW = .3916 PB = .56
.model NMOS NMOS LEVEL = 2
+ TOX = 380E-10 VTO = .9418 NSUB = 2.639E16 UO = 648.2
+ UCRIT = 1E4
UEXP = .06857 NFS = 710.8E9 WD = .4086E-6
+ DELTA = 2.2
RS = 93.77
LD = .9132E-6 XJ = .0824E-6
+ VMAX = 59.62E3 NEFF = 1.479 CJ = 3.495E-4 MJ = .3950
+ CJSW = 5.952E-10 MJSW = .2941 PB = .65
M1 11 3 9 11 PMOS L=2.5U W=5U
* M1 Drain Gate Source BULK (34 77 44 97) A = 12.5, W = 5
* Node 11 = Cell0\VCC VCC
* Node 12 = Cell0\GND GND
* Node 9 = Cell0\OUT OUT
* Node 3 = Cell0\IN IN
M2 12 3 9 12 NMOS L=2.5U W=5U
* M2 Drain Gate Source Bulk (34 21 44 41) A = 12.5, W = 5
* Total Nodes: 4 ;
* Total Elements: 2 ;
* Extract Elapsed Time: 2 seconds ;
.END
Note que fueron eliminadas las líneas:
.MODEL NMOS
.MODEL PMOS
216
Hasta el momento solo hemos incluido en nuestro archivo tipo Spice los elementos
pasivos del circuito, falta incluir las fuentes de alimentación. Spice permite la declaración
de fuentes independientes y dependientes de voltaje y de corriente, en VLSI sólo utilizaremos dos tipos de fuentes independientes de voltaje:
Vnombren+
n-
Valor DC
Esta fuente produce un valor DC constante, especial para utilizar como fuente de
alimentación.
Vnombren+
n-
PULSE(V1 V2 td tr tf PW T)
PW
V2
V1
td
tf
tr
T
Esta fuente genera pulsos de voltaje, ideal para utilizarse en la generación de las
señales de entrada. Por lo tanto debemos incluir las siguientes líneas a nuestro archivo
inversor.spc
*Fuente de Alimentación de 10 V entre el nodo VCC y el nodo 0
VCC
11
0
10
*Fuente de Alimentación de 0V entre el nodo GND y el nodo 0
VGND 12
0
0
*Fuente que genera una señal cuadrada de periodo 200ns.
VIN
3
0
PULSE(0 5 0 10ns 10ns 80ns 200ns)
Debido a que Spice siempre realiza las simulaciones con respecto al nodo de referencia 0, se debe conectar la tierra de nuestro circuito (nodo 12) al nodo de referencia, esto
se logra colocando una fuente de 0V entre los nodos 12 y 0.
En este punto el circuito está completo, solo falta incluir el tipo de análisis y el tiempo
de simulación. Para lograr esto debemos abrir el programa Pspice AD Demo.
217
A continuación debemos abrir nuestro archivo Inversor.spc
A continuación debemos crear un perfil de simulación para nuestro circuito, seleccionamos New Simulation Profile del Menú File:
A continuación nos aparecerá la siguiente ventana:
218
En la casilla Profile name debemos colocar el nombre con el que identificamos nuestra simulación y en la casilla Inherit from an existing profile: debemos seleccionar el archivo de simulación del circuito a nivel de transistores y hacemos click en Create.
219
CAPÍULO
7
Lógica Combinatoria en
CMOS
Introducción
L
a tecnología que actualmente domina el mundo de los sistemas digitales es la
CMOS, debido a sus características de bajo consumo de potencia, alta impedancia de entrada y por los niveles de integración a los que se ha llegado con esta.
Dentro de la familia CMOS se pueden encontrar cuatro configuraciones diferentes para implementar una función lógica, a saber: complementaria CMOS, pseudo-NMOS,
lógica de transistor de paso, y lógica dinámica. La configuración complementaria CMOS
presenta un mejor desempeño en casi cualquier aplicación ya que tiene alta inmunidad al
ruido, no tiene consumo de potencia estática, y puede diseñarse para que tenga retardos
de propagación iguales de subida y de bajada. Su desventaja principal es la cantidad de
transistores requeridos, dos por cada entrada, que en el caso de compuertas de alto fan-in
consume mucha área en la oblea de silicio y aumenta la capacitancia total, y por ende, el
retardo de propagación y la disipación de potencia dinámica. Los pseudo-NMOS reducen la
cantidad de transistores necesarios a cambio de un mayor consumo de potencia estática.
La lógica de transistor de paso genera circuitos simples que ocupan una pequeña área,
pero sólo son útiles en aplicaciones especiales y requieren de un inversor complementario
para restablecer los niveles lógicos, en especial cuando se usan transistores NMOS simples. Finalmente, la lógica dinámica requiere de un transistor adicional en comparación con
las pseudo-NMOS, si embargo, reduce la disipación de potencia estática a cero, y permite
un funcionamiento de la compuerta lógica en alta impedancia.
Cuando se conectan compuertas lógicas entre sí con el fin de generar una determinada
salida específica para determinadas combinaciones de las variables de entrada, sin que haya
implicado almacenamiento de información, el circuito resultante se califica como lógica combinatoria. En la lógica combinatoriael nivel de salida depende siempre de la combinación de
niveles de entrada instantáneos. En el presente documento se exponen cuatro tipos de configuraciones mediante las cuales se pueden implementar circuitos combinatoriosde toda clase.
223
Lógica combinatoria en CMOS
Historia
La lógica CMOS fue creada en 1963 por Frank Wanlass, quién trabajaba para la
empresa Fairchild Semiconductor; posteriormente se fabricaron los primeros circuitos
CMOS en el año de 1968, en un grupo de la empresa RCA dirigido por Albert Medwin.
Originalmente apareció como una alternativa lenta y de bajo consumo de potencia para
la tecnología TTL, pero encontró aplicaciones en la industria de los relojes y en otro tipo
de utilizaciones donde la duración de las baterías era más importante que la velocidad.
Más de treinta años después, CMOS se ha convertido en la tecnología predominante para
la fabricación de circuitos integrados dado que factores tales como el área que ocupa el chip,
la velocidad de operación, la eficiencia en el consumo de energía y los costos de manufactura
mejoran cada día más debido a la disminución de las dimensiones de los transistores que
viene asociada con cada nueva generación de procesos de fabricación de semiconductores.
Adicionalmente, la simplicidad de los circuitos CMOS ha permitido densidades de
integración imposibles de alcanzar con las tecnologías basadas en los transistores bipolares; inicialmente, los circuitos CMOS eran muy susceptibles al daño por descarga
electrostática (ESD), por tanto, las siguientes generaciones de circuitos fueron equipadas
con circuitos sofisticados de protección que ayudan a absorber las cargas eléctricas y
evitan daños en los frágiles óxidos de compuerta y en las junturas PN. Sin embargo, se
siguen teniendo precauciones en el manejo de estos circuitos para prevenir la aparición
de excesivas cantidades de energía.
Lógica combinatoria
La mayoría de compuertas lógicas en circuitos integrados digitales usan la lógica
complementaria CMOS o la lógica estática CMOS, ya que estos dos estilos tienen buenos márgenes de diseño, son rápidos, de baja potencia, insensibles a variaciones en los
transistores, fáciles de diseñar, ampliamente soportados por herramientas CAD comerciales y están disponibles en librerías de celdas estándar. En realidad muchas metodologías ASIC permiten solo circuitos complementarios CMOS e incluso los diseños “custom”
usan lógica CMOS estática para implementar el 95% de su parte lógica.
Otra ventaja de la lógica estática CMOS es su robustez frente a los cambios de las
dimensiones de los transistores, lo que asegura una operación confiable a bajos voltajes y garantiza el uso de transistores con dimensiones arbitrarias; adicionalmente, las
señales de entrada solo se conectan a las compuertas de los transistores, con lo que se
facilita la caracterización de las celdas lógicas. El layout de los circuitos CMOS es sencillo
y eficiente debido a los pares de transistores complementarios, y cuando las entradas son
correctas el circuito combinatorio producirá la salida correcta, mientras no hallan errores
en el diseño lógico o en el proceso de manufactura.
Uno de los aspectos más importantes de la tecnología CMOS es la capacidad que
provee al diseñador para crear circuitos lógicos que puedan implementar funciones for-
224
madas por varias operaciones lógicas básicas; esto hace que el diseño CMOS sea bastante diferente a las técnicas clásicas de diseño digital, ya que las expresiones lógicas y
sus correspondientes circuitos están estrechamente relacionados.
Compuertas lógicas estáticas
U
na compuerta lógica estática es aquella que tiene salidas bien definidas una
vez las entradas se han estabilizado y los estados transitorios producidos por
la conmutación han desaparecido; en este tipo de circuitos lógicos cada nodo
tiene un camino de baja resistencia hacia la fuente de voltaje o hacia tierra en
cualquier instante de tiempo, del mismo modo, el voltaje de cada nodo está bien definido para todo instante de tiempo y ningún nodo se deja flotando. Los circuitos lógicos
estáticos no necesitan señales de reloj para su operación, aunque se pueden presentar
este tipo de señales para otros propósitos.
Crear estructuras AND y OR usando transistores MOSFET es un proceso sencillo que
se puede llevar a cabo ubicando transistores nmos y pmos en serie (Figura 7.1, AND) o
en paralelo (Figura 7.2, OR).
a
b
Figura 7.1 Estructura AND implementada con: a. nmos y b. pmos.
a
b
Figura 7.2 Estructura OR implementada con: a. nmos b. pmos.
225
En la Figura 7.3 se observa una estructura AND implementada con transistores nmos,
en la cual la fuente de uno de los transistores está conectada tierra; teniendo en cuenta
que un transistor nmos se enciende cuando un
uno lógico se aplica a su terminal de com___
puerta, la expresión lógica implementada es F = AB , lo que implica que la salida será un
cero lógico cuando las dos entradas están en uno lógico. Esto se conoce comúnmente
como la estructura análoga; si las entradas a las compuertas son un uno lógico, entonces
el nodo de salida de la estructura AND quedará conectado a tierra, pero si cualquiera de
las dos entradas está en cero lógico entonces no habrá un camino entre la salida y tierra,
dado que los dos transistores no estarán encendidos al mismo tiempo. En la tecnología
CMOS, se necesita una estructura de transistores complementaria para conectar el nodo
de salida con la fuente de voltaje. La expresión y la configuración de los transistores de
esta red complementaria se obtienen por medio del teorema de DeMorgan.
F
A
B
Figura 7.3 Estructura de transistores nmos que implementa la expresión
___
F = AB
Crear un inversor CMOS sólo requiere un transistor nmos y un pmos; el transistor
nmos provee el interruptor que conecta la salida a tierra cuando la entrada es un uno lógico, mientras que el transistor pmos provee la conexión a la fuente de voltaje cuando la
entrada al circuito del inversor es un cero lógico.
Los circuitos lógicos combinatorios se construyen tomando como base el inversor de
la Figura 7.4, en el cual los transistores pmos y nmos actúan como simples interruptores;
en este caso, el voltaje de entrada controla los modos de conducción de los dos transistores: cuando el voltaje de entrada tiene un nivel lógico bajo, el transistor pmos conduce
y la salida queda conectada al voltaje de fuente VDD, mientras que un nivel lógico alto en
la entrada hace que el transistor nmos conduzca, conectando la salida a tierra.
Vdd
IN
OUT
Figura 7.4 Inversor CMOS
226
El comportamiento del inversor provee la base para la construcción de circuitos lógicos usando arreglos de MOSFETs, los cuales van conectados de tal manera que las
entradas controlen la conexión de la salida a tierra o al voltaje de la fuente V DD ; al igual
que en el inversor, solo puede existir una trayectoria de conducción en un tiempo dado,
con lo que se elimina la posibilidad de que el voltaje de la fuente y tierra sean conectados
a la salida de manera simultánea. El caso opuesto se genera cuando la salida queda
desconectada, lo cual no es deseable en un circuito lógico pero es útil cuando se necesita
aislar el circuito, dando como resultado la lógica tri-estado.
Para construir un circuito lógico se reemplaza el transistor n del inversor por una red
de transistores nmos conectados de tal forma que operen simulando un gran interruptor,
de igual forma, una red de transistores pmos reemplaza al transistor p del inversor, generando otro gran interruptor para conectar la salida al voltaje de fuente. Sin embargo,
es necesario tener cuidado a la hora de conectar los transistores para poder asegurar un
correcto funcionamiento eléctrico, dado que la forma en que opera la red p debe complementar el funcionamiento de la red n, consiguiendo que cuando una red se comporte
como un interruptor cerrado, la otra red este abierta.
La estructura general de un circuito lógico puede ser generada con los siguientes pasos:
1. Se asigna un par complementario (un transistor nmos y un transistor pmos con las
compuertas conectadas entre sí) para cada entrada.
2. Se genera una red de transistores nmos que conecte la salida a tierra de acuerdo
a la función lógica a implementar.
3. Se genera una red de transistores pmos que conecte la salida a V DD de acuerdo a
la función lógica a implementar.
4. Se diseñan las redes nmos y pmos, también conocidas como PDN y PUN, respectivamente, de tal forma que solo una se comporte como un interruptor cerrado
para todas las posibles combinaciones de las entradas.
De esta manera obtenemos un esquema general como el que se muestra en la figura
5 para un circuito combinatorio de tres entradas. CMOS nos brinda un poderoso método
para la construcción de complicadas redes digitales de una manera muy eficiente, permitiendo la existencia de una gran variedad de estilos en el diseño de circuitos lógicos, lo
que a su vez proporciona una considerable cantidad de opciones al diseñador.
VDD
In1
In2
In3
PUN
In1
In2
In3
PDN
PMOS Only
NMOS Only
VSS
Figura 7.5 Estructura general de un circuito lógico combinatorio CMOS con tres entradas
227
Diseño
Para el proceso de diseño iniciamos con una compuerta NOR de dos entradas, cuya
función lógica es:
F = A +B
De la expresión anterior podemos ver que la salida estará en cero lógico cuando A
está en uno lógico o cuando B está en uno lógico, por tanto, la PDN estará formada por
dos transistores nmos en paralelo con entradas A y B. Para la red PUN, usamos el teorema de DeMorgan y expresamos la función lógica de esta manera:
___ ___
F = AB
Concluimos que la salida estará en uno lógico cuando tanto A como B estén en cero
lógico; esto indica que la PUN estará formada por dos transistores pmos conectados en
serie con A y B como entradas.
A
B
F
Figura 7.6 Esquemático de la compuerta NOR
Figura 7.7 Layout de capas de la compuerta NOR
228
4.0V
2.0V
0V
V(6)
4.0V
2.0V
0V
V(7)
4.0V
0V
SEL»
-4.0V
0s
0.5Ds
1.0Ds
1.5Ds
V(3)
2.0Ds
2.5Ds
3.0Ds
3.5Ds
4.0Ds
Tiempo
Figura 7.8 Simulación de la compuerta NOR usando tecnología de 0.25 μm. Las señales aparecen de arriba
hacia abajo en el siguiente orden : A, B, F.
Tiempos obtenidos en la simulación de la compuerta:
T ph = 74.12ps
T pl = 84.12ps
Tr = 68.20 ps
Tf = 56.79 ps
nmos_S
1.20
1.10
1.00
0.90
0.80
0.70
0.60
0.50
0.40
0.30
0.20
0.10
0.00
B
0.20
0.40
0.60
0.80
1.00
Figura 7.9 Característica de transferencia de voltaje de la compuerta NOR
229
Ahora consideramos una compuerta NAND de dos entradas, cuya función lógica es
F = A +B
Para construir un circuito CMOS que genera esta función empleamos dos pares complementarios, uno por cada una de las entradas A y B, y creamos las redes PUN y PDN
de acuerdo a las salidas que requiere la compuerta; primero es necesario notar que hay
un solo caso en el que la salida del circuito estará en cero lógico, esto sucede cuando las
dos entradas están en uno lógico. Como la red PDN es la que conecta el nodo de salida
con tierra, esta red estará formada por dos transistores nmos conectados en serie, por
otra parte, si cualquiera de las dos entradas está en cero lógico, el voltaje de salida será
un uno lógico, indicando en este caso que el nodo de salida debe estar conectado a la
fuente de voltaje, lo que corresponde a la siguiente expresión:
__
F =A B
A
F
B
Figura 7.10 Esquemático de la compuerta NAND
Figura 7.11 Layout de capas de la compuerta NAND
230
4.0V
2.0V
0V
V(6)
4.0V
2.0V
0V
4.0V
V(7)
0V
SEL»
-4.0V
0s
0.5Ds
1.0Ds
2.0Ds
1.5Ds
V(3)
2.5Ds
3.5Ds
3.0Ds
4.0Ds
Tiempo
Figura 7.12 Simulación de la compuerta NAND usando tecnología de 0.25 μm. Las señales aparecen de
arriba hacia abajo en el siguiente orden : A, B, F
Tiempos obtenidos en la simulación de la compuerta:
T ph = 63.42ps
T pl = 45.69 ps
Tr = 39.80 ps
Tf = 62.50 ps
pmos_F
5.00
4.00
3.00
2.00
1.00
0.00
0.50
1.00
1.50
2.00
2.50
3.00
3.50
A
4.00
4.50
Figura 7.13 Característica de transferencia de voltaje de la compuerta NAND.
231
En el siguiente ejemplo, considerando funciones lógicas más complejas, vamos a
diseñar una red que implemente la expresión:
F = A B +C
En este caso, si AB=1 o C=1, el nodo de salida estará conectado a tierra a través de
un camino de conducción formado por transistores nmos, por otra parte, si C=0 y A=0 ó
B=0, entonces los transistores pmos generarán un camino de conducción entre la fuente
de voltaje y el nodo de salida, proporcionando un nivel lógico alto a la salida del circuito
combinatorio. La red PDN estará dada por la expresión:
__
F = A B +C
La red PUN estará dada por la expresión:
F = A B +C
F = A BC
F = ( A +B )C
En este ejemplo podemos observar que los transistores nmos con variables de entrada A y B están en serie, por lo que los transistores pmos con entradas A y B deben estar
en paralelo. Siguiendo con el mismo análisis, vemos que el transistor nmos con entrada
C está en paralelo con el grupo de transistores nmos con entradas A y B, por lo que el
transistor pmos con entrada C debe estar en serie con el grupo de transistores pmos que
tienen como entradas A y B (Figura 7.14).
Por tanto, podemos observar que la forma en que conectamos los transistores es
muy útil durante el proceso de diseño ya que una compuerta lógica puede ser diseñada
construyendo primero la red PDN de tal forma que cumpla con la función lógica y, una
vez hemos conectado los transistores nmos de esta red, los transistores pmos de la red
PUN pueden ser conectados aplicando las conexiones equivalentes serie-paralelo de la
red PDN. En general, el proceso de diseño serie-paralelo debe iniciarse en el bloque más
pequeño de transistores, y luego extenderse hasta que cubramos la red completa.
A
B
C
F
Figura 7.14 Esquemático del circuito que implementa la función
232
F = A B +C
Figura 7.15 Layout de capas del circuito que implementa la función
F = A B +C
Los tiempos obtenidos en la simulación de la compuerta (Figura 7.16) son:
Tr = 159.1 ps
Tf = 145.5ps
4.0V
2.0V
0V
V(9)
4.0V
2.0V
0V
V(8)
4.0V
2.0V
0V
V(7)
4.0V
0V
SEL»
-4.0V
0s
2 Ds
V(5)
4 Ds
6 Ds
8Ds
10Ds
12Ds
14Ds
16Ds
18Ds
20Ds
Tiempo
Figura 7.16 Simulación de la función F = A B + C usando tecnología de 0.25 μm. Las señales aparecen
de arriba hacia abajo en el siguiente orden : A; B; C; D, F.
233
Continuando con el mismo proceso podemos construir una compuerta EXOR partiendo de su función lógica:
__
__
F = AB + AB
Con esta expresión debemos obtener directamente la red PUN ya que la función no
se puede simplificar más usando la ley de DeMorgan, pero como esta expresión no está
dada solo en términos de las variables complementadas, necesitamos inversores para
las variables no complementadas; de manera equivalente, necesitamos usar inversores
para las variables complementadas que aparezcan en la expresión de la red PDN. Para
la red PDN podemos usar la siguiente expresión:
__
__ _ _
F = A B + AB
Esta ecuación se obtiene aplicando la ley de DeMorgan, pero si usamos la metodología de obtener la red PDN de manera dual, cambiando las conexiones serie paralelo de
la red PUN obtenemos conexiones distintas, sin embargo, cualquiera de los dos circuitos
implementará correctamente la función lógica. En el esquemático de esta compuerta vemos que necesitamos 12 transistores (Figura 7.17), 8 de los cuales se emplean para las
redes PDN y PUN, mientras que los restantes 4 se utilizan en la implementación de los
inversores que se necesitan para satisfacer los requerimientos de la red de transistores
formada por la unión de las redes PDN y PUN.
A
F
B
Figura 7.17 Esquemático de la compuerta EXOR.
234
Figura 7.18 Layout de capas de la compuerta XOR
Los tiempos obtenidos en la simulación de la compuerta (Figura 7.19) son:
T ph = 150.67 ps
T pl = 178.43ps
Tr = 145.4 ps
Tf = 104.6 ps
4.0V
2.0V
0V
4.0V
V(11)
2.0V
0V
4.0V
V(12)
0V
SEL»
-4.0V
0s
0.5Ds
V(5)
1.0Ds
1.5Ds
2.0Ds
Tiempo
2.5Ds
3.0Ds
3.5Ds
4.0Ds
Figura 7.19 Simulación de la compuerta EXOR usando tecnología de 0.25 μm. Las señales aparecen de
arriba hacia abajo en el siguiente orden : A, B, F
235
nmos_S
1.20
1.10
1.00
0.90
0.80
0.70
0.60
0.50
0.40
0.30
0.20
0.10
0.00
B
0.20
0.40
0.60
0.80
1.00
Figura 7.20 Característica de transferencia de voltaje de la compuerta EXOR
Por último consideremos una compuerta lógica con cinco entradas, cuya función lógica es:
F = A(B + C ) + DE
De esta expresión lógica podemos ver que F tendrá un nivel lógico bajo si simultáneamente D y E están en uno lógico, o si A está en uno lógico y B o C tienen un nivel lógico
alto, por tanto podemos extraer la red PDN de la siguiente expresión:
__
F = A (B + C ) + D E
Para obtener la PUN necesitamos expresar F en términos de las variables complementadas mediante la aplicación de la ley de DeMorgan las veces que sean necesarias:
F = A (B + C ) + D E
F = A ( B + C ) (D E )
F = ( A + B + C )(D + E )
F = ( A + BC )(D + E )
De la última expresión concluimos que F es un uno lógico si A o B y C están en cero
lógico y D o E están en cero lógico. De esta manera la función lógica aparece implementada con transistores MOSFET en la Figura 7.21.
236
A
B
C
D
E
Figura 7.21Esquemático del circuito que implementa la función
F = A(B + C ) + DE
Figura 7.22 Layout de capas del circuito que implementa la función
F = A(B + C ) + DE
237
4.0V
2.0V
0V
V(10)
4.0V
2.0V
SEL»
0V
V(11)
4.0V
2.0V
0V
0s
4Ds
8 Ds
12Ds
16Ds
20Ds
24Ds
28Ds
32Ds
Tiempo
V(9)
Figura 7.23 imulación de la función F = A(B + C ) + DE usando tecnología de 0.25 μm. Las señales aparecen de arriba hacia abajo en el siguiente orden: A; B; C.
4.0V
2.0V
0V
V(13)
4.0V
2.0V
SEL»
0V
V(12)
4.0V
0V
-4.0V
0s
4Ds
V(6)
8 Ds
12Ds
16Ds
20Ds
24Ds
28Ds
32Ds
Tiempo
Figura 7.24 imulación de la función F = A(B + C ) + DE usando tecnología de 0.25 μm. Las señales aparecen de arriba hacia abajo en el siguiente orden: D, E, F.
Los tiempos obtenidos en la simulación de la compuerta son:
Tr = 135.2ps
Tf = 116.1 ps
238
Dimensiones de los transistores
Los circuitos lógicos combinatorios tienen la característica de que la función de salida
está determinada únicamente por la topología del circuito. Interconectar los transistores
de una manera correcta es una condición suficiente para fijar las características DC de
VOL = 0V y VOH =V DD .
Las dimensiones de los transistores lo que determinan es el valor de los voltajes de
conmutación para varias combinaciones de entrada, sin embargo, la mayor parte de los
problemas de diseño y de dimensiones se centran en los tiempos de conmutación, dado
que el uso de transistores MOSFET conectados en serie introduce retardos que son
intrínsecos al estilo de diseño empleado. Cuando se analizan los transitorios de salida,
podemos notar que:
La red PUN de transistores pmos fija el valor de t LH .
La red PDN de transistores nmos fija el valor de t HL .
En general, solo estamos interesados en estimar los valores que se producirían en el
peor caso, lo que implica que debemos concentrarnos en la cadena más larga de transistores MOSFET conectados en serie para cado caso, pues estas cadenas producirán las
constantes de tiempo más largas.
Una vez hemos generado un circuito combinatorio CMOS, el único paso importante
de diseño que queda por hacer es decidir la relación W/L de todos los transistores; estas
relaciones usualmente se seleccionan de tal forma que proporcionen a la compuerta la
capacidad de manejo de corriente en ambas direcciones, siendo esta capacidad igual a
la del circuito inversor básico. Para el diseño básico del inversor, se tiene en cuenta que
la relación del transistor nmos es:
W
=n
L
(1.1)
Donde 1.5 ≤ n ≤ 2 , mientras que la relación del transistor pmos, para tener un diseño
equilibrado (matcheddesign), se escoge como:
µ
W
= p =n n
µ
L
 p




(1.2)
De esta manera se tiene que p>n así,deseamos seleccionar relaciones W/L individuales para todos los transistores de una compuerta lógica de tal forma que la red PDN sea
capaz de proveer una corriente de descarga del capacitor, que sea al menos igual a la del
transistor nmos con W/L= n, y que la red PUN sea capaz de proveer una corriente de carga al menos igual a la del transistor pmos con W/L=p.Lo anterior garantizará un retardo
de compuerta igual al del inversor básico en el peor caso, asumiendo que la capacitancia
total efectiva C de la compuerta lógica es la misma que la del inversor. En la práctica,
el valor de C será más grande para una compuerta que para el inversor, especialmente
cuando el fan-in aumenta.
La idea del peor caso significa que cuando decidimos las dimensiones del transistor,
debemos encontrar las combinaciones de las entradas que generen la corriente de salida
239
más baja y luego debemos escoger las dimensiones que harán que esta corriente sea
igual a la del inversor básico. Para determinar la capacidad de manejo de corriente de
un circuito combinatorio compuesto por varios transistores MOSFET, necesitamos encontrar la relación equivalente W/Lde esta red de transistores y para ello consideramos
las conexiones serie y paralelo de los transistores; luego nos basamos en el hecho de
que la resistencia de encendido de un MOSFET ( rds , resistencia de drenador a fuente) es
inversamente proporcional a la relación W/L. Por tanto, si se conectan en serie n transistores, la resistencia serie equivalente se obtiene sumando las resistencias de encendido
de cada transistor, lo que genera el siguiente resultado:

RS = rds 1 + rds 2 +  + rdsn
k
k
k
 1
=
+
+ +
=k 
W W
W
W

L
L1 L2
Ln
RS =
k
W 
 
 L EQ
+
1
( ) (W L )
1
2


+ +

W
L n 
1
( )
(1.3)
(1.4)
De manera similar, podemos generar la expresión de la resistencia de los transistores
conectados en paralelo; en base a estas expresiones obtenemos las siguientes relaciones:
Transistores en serie:
Transistores en paralelo:
W 
1
  =
L
L
L
 L EQ
+
+ +
W1 W 2
(1.5)
Wn
W 
W W
W
= + + +
 
Ln
 L EQparalelo L1 L2
(1.6)
Como ejemplo, dos transistores MOS idénticos, con relaciones W/L=4 resultan en una
W/L equivalente de 2 cuando se conectan en serie o de 8 cuando se conectan en paralelo.
Por ejemplo, para la NOR de 4 entradas (Figura 7.25) el peor de los casos (la corriente más baja) para la PDN se obtiene sólo cuando uno de los transistores N está conduciendo, así la relación W/L para cada NMOS debe ser igual a la del transistor NMOS del
inversor básico, es decir n. Para la PUN, sin embargo, la situación del peor caso (y de
hecho el único caso) es cuando todas las entradas son bajas y los cuatro transistores
PMOS en serie están conduciendo. Como la W/L equivalente será un cuarto de la de
cada dispositivo PMOS, debemos seleccionar la relación W/L de cada transistor PMOS
para que sea cuatro veces la del transistor PMOS del inversor básico, es decir 4p.
240
A
4p
B
4p
4p
C
D
4p
F
A
n
B
n
C
n
D
n
Figura 7.25 Compuerta NOR de cuatro entradas.
Disipación de potencia de los circuitos
Los circuitos digitales CMOS en general disipan energía solo cuando hay una transición en un nodo del circuito; el problema de determinar que tan frecuentes son las
transiciones en un nodo de un circuito digital no es sencillo, dado que las transiciones
dependen de los vectores de entrada aplicados y de los instantes de tiempo en los que
se aplican estos vectores, los cuales varían mucho durante el tiempo en el que el circuito
opera normalmente. Existen dos tipos de técnicas empleadas para la estimación de las
conmutaciones en un circuito CMOS, un grupo emplea técnicas estadísticas, también
llamadas técnicas dinámicas, mientras que el otro grupo usa técnicas probabilísticas,
también conocidas como técnicas estáticas.
Las técnicas estadísticas simulan el circuito repetidamente hasta que los valores de
potencia convergen a un valor promedio, todo basado en mediciones estadísticas; por
otra parte, las técnicas probabilísticas propagan las entradas a través del circuito para
obtener la probabilidad de conmutación para cada compuerta en el circuito. Aunque se
emplean los dos tipos de técnicas, las técnicas estáticas permiten estimar de manera
rápida el consumo de potencia de un circuito digital integrado a nivel lógico, sin la necesidad de un extensivo uso de simuladores.
En general, la disipación de potencia promedio en un circuito combinatorio CMOS
puede ser expresada como la suma de tres componentes principales:
1. Potencia de corto circuito (short circuit): potencia disipada por transistores pmos y
nmos conectados en serie, que están encendidos simultáneamente en una compuerta lógica. La disipación ocurre en un breve lapso de tiempo durante la conmutación y puede ser controlada al minimizar los tiempos de transición en las
redes. Usualmente este tipo de potencia aporta del 15% al 20% de la disipación
de potencia total.
2. Potencia de fuga (leakage): es la disipación de energía producto de las corrientes
espurias que se presentan cuando el transistor se encuentra en su estado de apa-
241
gado. Esta potencia se vuelve un problema considerable a medida que las geometrías de los transistores reducen su tamaño y las tensiones de umbral disminuyen.
Las corrientes de fuga dependen de la tensión de la fuente, la tensión de umbral,
la relación W/L de los transistores y la temperatura. Este tipo de potencia aumenta
considerablemente a medida que las tecnologías de fabricación disminuyenla tensión
de alimentación y el área del chip crece.
3. Potencia dinámica: también se conoce como potencia de conmutación. Es la fuente dominante de consumo de potencia en los circuitos CMOS, aportando casi el
75% del total. Esta potencia es proporcional a la frecuencia, al cuadrado de la tensión de la fuente y a la capacitancia total de salida que debe ser cargada y descargada; las nuevas tecnologías de fabricación han logrado la construcción de transistores más pequeños, cuyas capacitancias son menores, pero las capacitancias
de interconexión no han disminuido mucho y se han convertido en el componente
dominante de la capacitancia total de carga. Aunque la disminución del voltaje de
la fuente tiene el impacto más importante en la disipación de potencia, esto generalmente viene acompañado de un aumento en los tiempos de propagación. La
Frecuencia en el caso de los circuitos lógicos combinatorios está relacionada con
la velocidad a la que llegan los datos de entrada.
Efectos del FAN-IN y FAN-OUT en el retardo de propagación
1
2
3
.
.
.
n
1
2
.
.
.
FAN - IN = n
m
FAN - OUT = m
Figura 7.26 Diagrama del fan-in y fan-out de una compuerta lógica.
242
Cada entrada que se le agregue a una compuerta CMOS requiere dos transistores
MOSFET de más, un transistor pmos y un transistor nmos, lo cual marca una notable
diferencia con otras formas de lógica MOS, en las cuales una entrada adicional solo implicará un transistor de más. El transistor adicional que debe ser agregado en CMOS no
solo aumenta el área del chip sino que también aumenta la capacitancia efectiva total por
compuerta y a su vez, incrementa el retardo de propagación.
Al variar el tamaño de los transistores se puede compensar parte del aumento del
tiempo de propagación, específicamente, si incrementamos el tamaño del transistor podemos preservar la capacidad de manejo de corriente, sin embargo, la capacitancia C
crece debido al aumento del número de entradas y al incremento de las dimensiones del
transistor. Por lo tanto, el tiempo de propagación aumenta a medida que el fan-in crece, lo
que impone un límite de entradas para los circuitos lógicos CMOS; si un diseño requiere
un número de entradas mayor a este límite, es necesario emplear una metodología de
diseño lógico que nos permita implementar la función booleana con compuertas cuyo
número de entradas no supere el límite especificado.
Esto finalmente generará un aumento en el número de etapas conectadas en serie,
lo que a su vez ocasionará un aumento en el retardo de propagación; sin embargo, este
aumento en el retardo de propagación puede ser menor al aumento que causa un fan-in
grande. Por otra parte, un aumento del fan-out de las compuertas lógicas aumenta su
capacitancia de carga, lo que a su vez genera un aumento en el tiempo de propagación.
Aunque CMOS presenta muchas ventajas, también se ve afectado por el aumento
de la complejidad de los circuitos cuando el fan-in y el fan-out aumentan, al igual que
por los correspondientes efectos que origina está complejidad en el área del chip y en
el retardo de propagación.
Circuitos lógicos PSEUDO-NMOS
(ó PSEUDO-CMOS)
A
pesar de las muchas ventajas de la lógica CMOS, esta es afectada por una
mayor área y por capacitancias y tiempos de propagación que aumentan según
se incremente la complejidad de las compuertas lógicas a diseñar.
Por esta razón los diseñadores de circuitos lógicos integrados, han estado
en la búsqueda de formas de circuitos CMOS que se puedan usar para sumarse a los
circuitos de tipo complementario.
Con estas formas no se pretende desplazar las técnicas utilizadas hasta el momento
sino más bien, usarlas para fines especiales. Una de estas técnicas es la de lógica Pseudo Nmosque estudiaremos a continuación.
243
Inversor PSEUDO NMOS
Vdd
Vo
Vi
Figura 7.27 Inversor Pseudo Nmos
A diferencia de CMOS complementaria, en este caso la compuerta del transistor de
canal P esta directamente conectada a V DD , con esta topología se tienen características
mejores, también tiene la ventaja de ser directamente compatible con circuitos CMOS
complementarios.
Otra característica importante es que a la hora de diseñarlo suele hacerse k n mayor
a k P en un factor de 4 a 10, dicha razón se denomina r.
Características de tensión Vout VS V IN
Vout
Vout
ll
l
lll
lV
Vin - VT0p
VDD
LIN
SAT
SAT
VDD / 2
Vin - VT0n
LIN
- VT0p
VT0n
VDD / 2
Figura 7.28 Características de tensión
244
VDD + VT0p VDD
Vin
Vout Vs VIN , para el inversor Pseudo Nmos
En la Figura 7.28 se observa la curva característica del inversor Pseudos Nmos, la cual
v
tiene cuatro regiones distintas y una tensión de salida 0 diferente para cada una de estas.
• Región I:Q N en corte, Q P lineal y v i =Vt .
v 0 =V 0H =V DD
• Región II:Q N en saturación, Q P lineal.
(1.7)
v 0 =Vt + (V DD −Vt ) − r (v i −Vt )
2
2
(1.8)
• Región III:Q N lineal, Q P lineal.
Es un segmento corto que no tiene mayor importancia.
• Región IV: Q N lineal, Q P en saturación.
v 0 = (v i −Vt ) −
(v
i
−Vt ) −
2
1
(V
r
DD
−Vt )
(1.9)
2
Como observación, el único parámetro de diseño para controlar los valores de VOL y
los márgenes de ruido es la razón r .
Síntesis de compuertas
La característica de esta técnica es que reemplaza el árbol de Pull-up por un transistor pmos que siempre está en conducción (Figura 7.29).
Vdd
f=ā
a
Vdd
Vdd
f = (a b)
f = (a+b)
a
b
a
b
Figura 7.29 Ejemplos de funciones lógicas implementadas con la técnica de síntesis de compuertas.
245
En Pseudo Nmos solo Q N esta excitado por la tensión de entrada mientras que la compuerta de Q P esta en tierra, haciendo que esté, quede como carga activa para los transistores
N. Se ve claramente que una de las ventajas de esta técnica es que se reduce considerablemente el número de transistores a implementar, ya que solo se necesitan los transistores N
para implementar la función y un transistor P que siempre estará en conducción.
Así las desventajas en área y tiempo de propagación que aparecen en CMOS complementaria se reducirán.
Para el diseño de una función lógica, procedemos de la misma manera de cómo lo hacíamos con CMOS complementaria, pero en este caso solo procedemos a colocar la lógica
solo con los transistores canal N, dependiendo de si están en una OR los transistores van
en paralelo, o si por el contrario están en una AND estos van en serie (Figura 7.29).
Aplicaciones de la lógica PSEUDO-NMOS
El pseudos Nmos es particularmente apropiado para las aplicaciones en donde la salida permanece alta la mayor parte del tiempo, puesto que para estas aplicaciones la potencia estática puede ser razonablemente baja. Una aplicación de este tipo en particular
son los decodificadores de dirección para chips de memoria y en memorias solo de lectura.
Circuitos lógicos de transistor de paso (PTL)
L
a lógica de transistor de paso (PTL) consiste en un método sencillo para implementar funciones lógicas utilizando combinaciones en serie y paralelo de interruptores controlados por variables lógicas. El principio de funcionamiento de la
lógica PTL se ilustra en la Figura 7.30.
B
A
B
A
C
Y = ABC
C
Figura 7.30 Principio de funcionamiento de la lógica PTL.
246
Y = A(B+C)
Como se observa en la figura 30, los interruptores en serie representan el AND
lógico de las variables que los controlan, mientras que en paralelo representan el OR
lógico de dichas variables.
Los interruptores utilizados en PTL se pueden poner en práctica ya sea con un transistor
NMOS o con una compuerta de transmisión (por esta razón la lógica PTL también es conocida como lógica de transmisión de compuerta). Ambos casos se analizarán más adelante.
Requisitos de Diseño
Para el diseño de circuitos PTL debe tenerse en cuenta un requisito fundamental:
todo nodo susceptible de quedar en alta impedancia debe tener en todo momento una
trayectoria de baja resistencia a V DD o a tierra.
Este requisito debe tenerse presente porque al desconectar un interruptor de un determinado nodo de salida Y, dicho nodo queda en alta impedancia. Si antes de la desconexión
v y era cero, así se mantendrá, pero si v y estaba a un nivel alto (V DD ), este valor será mantenido por el nodo en la capacitancia parásita conectada entre él y tierra, pero sólo durante
un tiempo porque las corrientes de fuga descargarán la capacitancia lentamente y v y irá
reduciéndose de forma correspondiente. Por lo tanto, el circuito ya no podría ser considerado un circuito lógico estático. La solución a este efecto no deseado se logra estableciendo
para el nodo Y una trayectoria de baja resistencia ya sea a V DD o a tierra.
Operación con transistores NMOS como interruptores
Las ventajas de implementar los interruptores con transistores NMOS radican en la
obtención de circuitos sencillos con pequeña área y pequeñas capacitancias de nodo.
Sin embargo, también surgen desventajas en las curvas características estáticas y en la
operación dinámica de dichos circuitos.
En la Figura 7.31 se observa la operación de un transistor nmos como interruptor. El
transistor se utiliza para conectar (cuando v G =V DD ) o desconectar (cuando v G = 0 ) un
nodo de entrada con voltaje v i y un nodo de salida (v 0 ). La capacitancia total entre el
nodo de salida y tierra está representada por el condensador C.
VG
Vį
D
S
V0
C
Figura 7.31 Operación de un transistor NMOS como interruptor
247
Transmisión de un ‘1’ lógico (v i =V DD yv G =V DD )
Vamos a analizar la operación del circuito cuando v_i presenta una transición de 0V
(‘0’ lógico) a V DD (‘1’ lógico) en el instante t = 0 . Las condiciones de operación del circuito
se muestran en la Figura 7.32.
VG = VDD
D
S
Vį = VDD
V0
iD
C
Figura 7.32 Transmisión de un ‘1’ lógico, con transistor nmos como interruptor
Durante la transición de v i ,el transistor opera en la región de saturación (porque v 0 = 0V
inicialmente) y por lo tanto entrega una corriente para cargar el condensador i D dada por:
Es decir:
Donde:
1
2
i D = k n (VGS −Vt )
2
1
2
(1.10)
(1.11)
i D = k n (V DD −v 0 −Vt )
2
k n = µnC ox
W
L
(1.12)
Vt =Vt 0 + γ  V SB + 2φf − 2φf 
(1.13)
Vt =Vt 0 + γ  v 0 + 2φf − 2φf 
(1.14)


Teniendo en cuenta que el “bulk” se encuentra a 0V, se tiene:


• En t=0+, Vt =Vt 0 y por ende, la corriente i D es relativamente grande.
• Sin embargo, a medida que C se carga y v 0 aumenta,Vt también aumenta e i D
disminuye, como se puede ver en sus dos ecuaciones respectivas. Por lo tanto, el
proceso de carga del condensador será relativamente lento.
• El proceso de carga de C se detiene cuando la corriente i D se hace cero, lo cual
ocurre cuando v 0 =V DD −Vt . Esto hace que el ‘1’ transmitido sea un ‘1’ degradado,
en vista de que no se cumple v 0 =V DD sino v 0 =V DD −Vt , y Vt puede ser de hasta
1.5Vt 0 ó 2Vt 0 .
248
Transmisión de un ‘0’ lógico(v i = 0 y v G =V DD )
Vamos a analizar la operación del circuito cuando v i presenta una transición de V DD a 0V
en el instante t = 0 . Las condiciones de operación del circuito se muestran en la Figura 7.33.
VG = VDD
S
D
Vį = 0
V0
įD
C
Figura 7.33 Transmisión de un ‘0’ lógico, con transistor nmos como interruptor. Notese el intercambio de las
terminales D y S con respecto al circuito de la Figura 7.32
Al comienzo de la transición de v i (en t=0+), el voltaje de salida es v 0 =V DD y como
el voltaje del drenador es siempre más alto que el de fuente en un transistor NMOS, las
terminales D y S del circuito anterior se intercambian con respecto al circuito correspondiente a la transmisión de un ‘1’ lógico.
Al comienzo de la transición de v i , el transistor opera en la región de saturación. Por
lo tanto, la corriente i D está dada por la ecuación (1.10), que se puede reescribir como:
1
2
i D = k n (V DD −Vt )
2
(1.15)
Además, como ahora “source” (fuente) se encuentra a 0V, al igual que el “bulk”, tenemos V SB = 0V y por lo tanto:
Vt =Vt 0 + γ  V SB + 2φf − 2φf 


Vt =Vt 0 + γ  0 + 2φf − 2φf 

Vt =Vt 0

(1.16)
(1.17)
(1.18)
Esta última igualdad se da para todo momento.
A medida que C se descarga, v 0 se reduce y el transistor entra en la región de triodo,
cuando v 0 =V DS llega a v 0 =VGS −Vt , es decir: v 0 =V DD −Vt . Sin embargo, ésto no impide que
el condensador se siga descargando. De hecho, la descarga continúa hasta completarse,
es decir, hasta que v 0 = 0V . Ésto nos indica que el transistor NMOS transmite un ‘0’ bueno.
249
Operación con compuertas de transmisión como interruptores
Con el fin de solucionar el problema de la degradación del ‘1’ lógico por parte de un transistor NMOS operando como interruptor y la degradación del ‘0’ lógico por parte de un transistor PMOS, se plantea la utilización de compuertas de transmisión como interruptores.
Además de evitar la degradación de los niveles lógicos, la utilización de una compuerta
de transmisión trae ventajas tanto en la operación estática como dinámica de un interruptor implementado a través de ella. Una compuerta de transmisión es un excelente interruptor analógico que produce circulación bidireccional de corriente y exhibe una resistencia
de operación que es casi constante para una amplia escala de voltajes de entrada v i .
Las desventajas que presentan las compuertas de transmisión dentro de la lógica
PTL son: mayor complejidad del circuito, mayor área y mayor capacitancia.
La operación de una compuerta de transmisión como interruptor se ilustra en la Figura 7.34.
VC
VC
D
Vį
V0
Vį
QN
S
V0
S
VC
QP
D
C
VC
Figura 7.34 Operación de una compuerta de transmisión como interruptor.
Al igual que el transistor NMOS, la compuerta de transmisión se usa para conectar
v =V DD
v =0
) o desconectar (cuando c
) un nodo de entrada con voltaje v i y un
(cuando c
v
nodo de salida ( 0 ). La capacitancia total entre el nodo de salida y tierra está representada por el condensador C.
Transmisión de un ‘1’ lógico(v i =V DD y v c =V DD ):
Suponemos nuevamente una transición de v i entre 0V (‘0’ lógico) y V DD (‘1’ lógico) en
el instante t = 0 .Las condiciones de operación del circuito se muestran en la Figura 7.35.
VC = VDD
D
Vį = VDD
QN
S
V0
S
QP
VC
D
C
Figura 7.35 Transmisión de un ‘1’ lógico con compuerta de transmisión como interruptor
250
En t=0+, v 0 = 0V y por lo tanto, el transistor N se encuentra en región de saturación,
suministrando una corriente i DN para cargar el condensador C.
Es decir:
Donde Vtn es:
Es decir:
1
2
i ÐÐÐ = k (V −V
1
2
i ÐÐÐ = k (V
(1.19)
)
2
)
2
−v 0 −V
(1.20)
Vtn =Vt 0 + γ  V SB + 2φf − 2φf 
(1.21)
Vtn =Vt 0 + γ  v 0 + 2φf − 2φf 
(1.22)




Debido a que el “bulk” del transistor N se encuentra a 0V.
Por su parte, el transistor PMOS conduce una vez que v i =V DD (en t=0+) ya que de
este momento en adelante se va a cumplir VGS =V DD > Vtp . Inicialmente, este transistor se
encuentra en región de saturación, suministrando una corriente i DP para cargar el condensador C (la cual se va a sumar con i DN ):
Es decir:
1
2
(
1
2
(
i ÐÐÐ= k V − V
i ÐÐÐ= k V
−V
)
(1.23)
2
)
2
(1.24)
Donde Vtp =Vt 0 en todo momento, debido a que el “bulk” del transistor P está conectado a V DD , lo cual significa que V SB = 0V y por lo tanto:
Vtp =Vt 0 + γ  V SB + 2φf − 2φf 


Vtp =Vt 0 + γ  0 + 2φf − 2φf 

Vtp =Vt 0

(1.25)
(1.26)
(1.27)
251
Se supone que Vt 0 es el mismo para el transistor N y P.
2
1
La corriente i ÐÐÐ = 2 k (V −v 0 −V ) , deducida anteriormente, irá decreciendo hasta que finalmente se hace igual a cero cuando v 0 =V DD −Vtn . Sin embargo, cuando esto
ocurra, suponiendo que Vt 0 es el mismo para el transistor N y P, Q P ya habrá entrado en
región de triodo, desde el momento en que se haya cumplido:
(1.28)
V SD −P =VGS −P − Vtp
V DD −v 0 = (V DD − 0) − Vtp
(1.29)
v 0 = Vtp
(1.30)
Transmisión de un ‘0’ lógico(v i = 0 y v c =V DD )
Ocurre una transición de v i entre V DD y 0V en el instante t = 0 .Las condiciones de
operación del circuito se muestran en la Figura 7.36.
VC = VDD
S
Vį = 0
QN
D
V0
D
QP
S
C
VC
Figura 7.36 Transmisión de un ‘1’ lógico con compuerta de transmisión como interruptor. Nótese el intercambio de las terminales D y S (en ambos transistores) respecto al circuito de la Figura 7.35
El comportamiento del circuito en este caso es completamente análogo al que ya se
describió para la transmisión de un ‘1’ lógico, sólo que ahora los transistores intercambian
los turnos de conducción, así:
El transistor PMOS deja de conducir cuando v 0 = Vtp , con Vtp dado por:
Vtp =Vt 0 + γ  V SB + 2φf − 2φf 


Dado que el “bulk” del transistor P se encuentra polarizado a V DD , se tiene:
Vtp =Vt 0 + γ  v 0 −V DD + 2φf − 2φf 


Cuando el transistor PMOS deja de conducir, el NMOS continúa conduciendo hasta que el condensador C se descargue por completo, es decir, hasta que v 0 = 0V , lo cual
representa una transmisión de un ‘0’ bueno por parte de la compuerta de transmisión.
252
Ejemplos de circuitos lógicos PTL
Multiplexor 2 a 1
Con base en el valor lógico de C, ya sea A o B se conectan a la salida Y. Se requieren 6 transistores para la implementación
(4 para las 2 compuertas de transmisión y 2
__
para el inversor
necesario para obtener C ). La función lógica realizada por el circuito es
__
Y = CA + C B , y la implementación del circuito PTL se observa en la Figura 7.37.
C
a.
b.
A
C
A
C
B
Y = CA + CB
Y = CA + CB
C
B
Figura 7.37 Función lógica Y
Función XOR
C
__
= CA + C B . a. Circuito conceptual y b. Circuito PTL
La realización de la función XOR en un circuito PTL es eficiente, ya que sólo requiere
de 8 transistores (4 para las 2 compuertas de transmisión y otros 4 para los 2 inversores
necesarios), a comparación de los 12 transistores que se requieren para implementar
esta___función
en CMOS complementario. La función lógica realizada por el circuito es
___
Y = A B + AB = A ⊕ B , y la implementación del circuito PTL se observa en la Figura 7.38.
B
a.
b.
A
A
A
B
B
Y = AB+ AB
Y = AB+ AB
B
A
B
Figura 7.38 Función lógica Y
___
___
= A B + AB = A ⊕ B a. Circuito conceptual y b. Circuito PTL
253
Funciones AND y NAND mediante PTL complementaria (CPL)
La lógica PTL complementaria consiste en 2 redes PTL idénticas, con las mismas
variables de control de los interruptores, pero con sus entradas complementadas. Así
mismo, el circuito genera una determinada función lógica y su respectivo complemento.
En este caso se utilizan transistores NMOS como interruptores, para lo cual deben
escogerse con bajo___Vt _____
. La función lógica realizada por el circuito es Y = AB y su respectivo complemento Y = AB , y la implementación del circuito se observa en la Figura 7.39.
b.
a.
A
B
A
B
B
B
A
Y = AB
B
B
Y = AB
B
B
Y = AB
B
A
Y = AB
B
Figura 7.39 Función lógica Y
= AB a. Circuito conceptual y b. Circuito CPL.
Las funciones lógicas a la salida de este circuito pueden obtenerse luego de aplicar
un poco de álgebra de Bool, así:
__
Y = AB + B B ;Y = AB + 0;Y = AB
__
Ahora demostraremos que:
__ __
__
__
Y = AB + B B ;Y = AB + B
__
__
__
__
AB + B = A + B
Después de multiplicar a ambos lados por B:
__
__
__
__
ABB + B B = AB + B B
__
Como BB = B y B B = 0 , se tiene:
__
__
AB = AB
__
__
__
__
Esta última igualdad nos indica que, en efecto, se cumple: AB + B = A + B
__
__
__
Pero, aplicando Leyes de DeMorgan obtenemos: A + B = AB
__
__
__
__
__
_____
Por lo tanto, tenemos Y = AB + B = A + B = AB , con
lo cual queda demostrado que la
__
_____
salida de la red con entradas complementadas es Y = AB .
254
Simulación
En las Figuras 7.40 a 7.43 se presenta la simulación de una compuerta de transmisión con CNM25 y los resultados obtenidos.
Los resultados fueron unos tiempos de propagación de TPHL = 106ns y TPLH = 104ns
con niveles de voltaje VOH = 5V y VOL = 0.09V . Con unos tiempos de subida y bajada:
Tr = 292ns y Tf = 334ns .
A
VCC
A
VCC
5
+
_
V4
0
V1 = 0
V2 = 5
TD = 0
TR = 10n
TF = 10n
PW = 2m
PER = 4m
+
_
M16
Mbreakp
B
V6
0
V1 = 0
V2 = 5
TD = 0
TR = 10n
TF = 10n
PW = 0.5m
PER = 1m
+
_
V5
B
Neg_A
A
Mbreakp
M14
Out
VCC
M15
V
C2
V
0
10p
0
M17
Mbreakn
0
Mbreakn
Neg_A
0
Figura 7.40 Circuito de simulación
(A) TG (active)
1
20V
2
10V
COMPUERTA DE TRANSMISION O T-GATE
15V
5V
10V
0V
5V
-5V
0V
»
-10V
0s
1
1.0ms
(V)(Out)
2
V(B)
2.0ms
3.0ms
4.0ms
5.0ms
6.0ms
V(A)
Figura 7.41 Resultados de simulación. Salida en azul, entrada en verde y control de la compuerta en rojo.
255
(A) TG (active)
20V
1
10V
2
5V
15V
(2.0000m , 2.7778)
0V
10V
TPLH = 104ns
Tr = 292ns
-5V
5V
(2.0001m , 2.5789)
»
0V
-10V
1.9999ms
2.0010ms
2.0000ms
V(Out)
1
2
V(B)
Tiempo
Figura 7.42 Resultados de simulación. Salida en azul, entrada en verde y control de la compuerta en rojo.
1
20V
15V
2
(A) TG (active)
10V
5V
(2.5000m , 2.5247)
10V
0V
VOH=5
VOL=0.09
TPHL= 106ns
Tf=334ns
5V
-5V
(2.5001m , 2.4968)
0V
»
-10V
2.49999ms
1
2.50100ms
V(Out)
2
V(B)
Tiempo
Figura 7.43 Resultados de simulación. Salida en azul, entrada en verde
256
Implementación de circuitos digitales con
compuertas de transmisión
L
as compuertas de transmisión (T-gate) son muy usadas para realizar compuertas complejas, como la XOR; ya que en muchos casos disminuye la cantidad de
transistores usados en la implementación.En el caso de la compuerta XOR se
logra disminuir el número de transistores de 12 en CMOS a 8 con esta metodología de diseño. Por otro lado en otros casos, las compuertas de transmisión proveen
mejores parámetros de diseño.
Diseño de circuitos lógicos con compuertas de transmisión
El diseño de circuitos lógicos mediante compuertas de transmisión se hace mediante
la implementación de la expansión de Shannon, que es un método por el cual una función
booleana puede ser representada por la suma de dos funciones de la original.
Para la implementación de la siguiente función: f = xyz + xy 'z + x ' y 'z + x ' yz + x ' y 'z '
, es necesario escribir la función en términos de dos variables complementarias de la forma:
f = x ' g x ' + xg x . Por último, se reemplaza en la función original con x = 0 y con x = 1 , para
hallar las funciones g x ' , g x . La expresión final es: f = x '( y 'z + yz + y 'z ') + x ( yz + y ' z ) .
Este proceso para dos variables se puede resumir con la expresión:
___
F ( A ÐÐÐ
B ) = AF ( B ) + A F
B
Los resultados de la implementación de algunas funciones lógicas con compuertas de
transmisión se presentan en la Figura 7.44.
F (A,B)
AB
A+B
A+B
AB
AB +AB
AB + AB
NAME
AND
OR
NOR
NAND
EXOR
NEXOR
F (0,B)
0
B
B
1
B
B
F (1,B)
B
1
0
B
B
B
Figura 7.44 Resultados de la implementación de funciones lógicas con compuertas de transmisión
Para la implementación del diseño se conecta una compuerta de transmisión a la
salida del circuito que controla, es decir el de la función F(0,B) o F(1,B). En los siguientes
literales se mostrara la construcción de las anteriores compuertas.
257
Compuerta de transmisión como buffer Tri-Estado
La compuerta de transmisión se puede analizar como un buffer tri-estado, ya que en su
funcionamiento está contemplado el estado de alta impedancia de las compuertas tri-estado.
En la Figura 7.45, se muestra el símbolo y la tabla lógica de la compuerta de transmisión.
a.
b.
X
A
B
X
A
B
1
1
0
1
0
1
0
0
0
1
?
?
X
Figura 7.45 a. Compuerta de transmisión. b. tabla lógica
Ahora bien, si lo que se desea es un buffer tri-estado inversor, se agrega un inversor
en el punto de entrada de la compuerta de transmisión como se observa en la Figura 7.46.
a.
Vcc
b.
Vcc
C
TA
TA
TB
X
C
OUT
OUT
TC
IN
TB
C
TC
TD
C
IN
TD
Figura 7.46 Buffer tri-estado inversor: a.con compuerta de transmisión y b. CMOS
El buffer inversor tri-estado de la tecnología CMOS y el buffer con T-Gate en apariencia
son iguales, ya que tienen los mismos 6 transistores. Aun así, en el buffer T-Gate es mucho
más sencillo detectar una falla en el circuito que en el CMOS y por otro lado si llega a fallar
el T-Gate se ve afectada la salida en el tiempo de propagación y la degeneración de los
niveles, mientras que la de CMOS no funciona en el caso que no funcione algún transistor.
258
Simulación
En las Figuras 7.47 y 7.48 se presenta la simulación de un buffer tri-estadoy los resultados obtenidos.
X
VCC
5
+
_
V1 = 0
V2 = 5
TD = 0
TR = 10p
TF = 10p
PW = 2m
PER = 4m
V1
0
V1 = 0
V2 = 5
TD = 0
TR = 10p
TF = 10p
PW = 1m
PER = 2m
+
_
V3
VCC
MbreakpD
0
A
+
_
Neg_X
Mbreakp
M14
M2
V2
M15
M1
0
VCC
Out
C1
0
V
10p
0
MbreaknD
Mbreakn
0
X
MbreakPD
M3
X
Neg_X
M5
V
V
MbreakND
Figura 7.47 Circuito de Simulación
(E) Simul (active)
1
20V
2
10V
Buffer Tres estados Inversor
15V
5V
10V
0V
5V
-5V
ALTA IMPEDANCIA
ALTA IMPEDANCIA
0V
»
-10V
1.0ms
0s
1
(V)(Out)
2
V(X)
2.0ms
3.0ms
4.0ms
5.0ms
V(A)
Figura 7.48 Resultados de simulación. Variable de control X en verde, variable de entrada A en
rojo, salida en azul.
259
Compuerta NOR
La función de la compuerta NOR es implementada como se muestra en la Figura
7.49, mediante compuertas de transmisión.
A
3
Neg B
1
2
TG
4
Out
Neg A
TG
0
A
Figura 7.49 Compuerta NOR con T-Gate
__
__
La función implementada es F ( A , B ) = A⋅ B + A ⋅ 0 . La variable de entrada A y su complemento es usada para el control de las compuertas de transmisión, la función con valor
de cero es implementada con la T-Gate que se controla con la variable A y la función B
negada se implementa con la T-Gate que se controla por A negada. Con este circuito se
logra la Función: F ( A , B ) = A + B
A diferencia del circuito CMOS que usa 4 transistores, la compuerta NOR con T-Gate
usa 8 transistores incluyendo los dos inversores. Por lo cual en esta clase de compuerta
se eleva ampliamente el área de silicio utilizada en el diseño y la complejidad de éste.
Una posible mejora del anterior circuito se hace mediante la implementación de un transistor de paso de tipo N, lo que reduce el número de transistores a 7, el circuito es mostrado en la Figura 7.50.
3
Neg B
1
2
TG
4
Out
Neg A
M7
A
Figura 7.50 Compuerta NOR con T-Gate mejorado.
260
Existe otra clase de implementación de estas compuertas, mediante dos compuertas de transmisión, esta será tratada en el apartado de las AND y NAND. Esta topología
tiene 8 transistores para su implementación por lo que la anterior resulta ser más eficaz,
en tamaño del integrado.
A
A
A
F=A+B
B
A
Figura 7.51 Compuerta NOR con dos compuertas de transmisión
Simulación
En las Figuras 7.52 y 7.53 se presenta la simulación de una compuerta NOR hecha
con compuertas de transmisión y los resultados obtenidos.
A
VCC
Out
Mbreakp
Neg_B
A
B
V6
V1 = 0
+
V2 = 5
_
TD = 0
TR = 10p
TF = 10p
0
PW = 2m
B
PER = 4m
V1 = 0
V2 = 5
TD = 0
TR = 10p
TF = 10p
PW = 1m
PER = 2m
+
_
MbreakpD
V5
M14
M15
Neg_B
M12
VCC
C2
10p
V
0
0
VCC
5
+
_
V
V4
MbreaknD
Mbreakn
M17
VCC
0
0
M16
Neg_A
0
Mbreakn
A
0
A
MbreakpD
Neg_A
M11
V
MbreaknD
0
Figura 7.52 Circuito de Simulación
261
1
20V
2
(B) simuNOR (active)
10V
Compuerta NOR
15V
5V
10V
0V
5V
-5V
»
0V
-10V
1.0ms
0s
1
(V)(Out)
2
V(A)
3.0ms
2.0ms
4.0ms
Tiempo
V(B)
Figura 7.53 Resultados de simulación. Variable de entrada A en verde, variable de entrada B en rojo y
salida en azul.
Compuerta OR
La función de la compuerta OR es implementada como se muestra en la Figura 7.54,
mediante compuertas de transmisión.
A
A.A
A
B
f=A+B
A.B
A
Figura 7.54 Compuerta OR con T-Gate
La variable de entrada A es usada junto con su complemento para controlar el transistor de paso PMOS y la compuerta de transmisión. Cuando A = 1 el transistor de paso
conduce y la salida es igual a 1, mientras que la T-Gate se encuentra en alta impedancia.
Cuando A = 0 el transistor de paso se encuentra abierto y la compuerta de transmisión
conduce, dando como salida el valor de B. En conclusión, el funcionamiento del anterior
262
___
circuito esta dado por la expresión booleana F ( A , B ) = A B + A = A + B . El anterior circuito
tiene 5 transistores, a diferencia de su implementación en CMOS de 6 transistores.
La implementación de esta compuerta con dos T-Gate deja como resultado el uso de
6 transistores al igual que los CMOS. Este diseño se muestra en la Figura 7.55.
A
A
A
F=A+B
B
A
Figura 7.55 Compuerta OR con dos compuertas de transmisión
Simulación
En las Figuras 7.56 y 7.57 se presenta la simulación de una compuerta OR hecha con
compuertas de transmisión y los resultados obtenidos.
A
V3
V1 = 0
+
V2 = 5
_
TD = 0
TR = 10p
TF = 10p
0
PW = 2m
PER = 4m B
V1 = 0
V2 = 5
TD = 0
TR = 10p
TF = 10p
PW = 1m
PER = 2m
+
_
V2
VCC
5
+
_
V1
Neg_A
VCC
0
A
MbreakP
Out
M16
0
A
MbreakpD
Neg_A
M10
V
MbreaknD
M13
VCC
B
Mbreakn
0
Mbreakp
M14
VCC
M15 V
0
C1
10p
V
0
Neg_A
Figura 7.56 Circuito de simulación
263
1
20V
2
(A) OR (active)
10V
Compuerta OR
15V
5V
10V
0V
5V
»
0V
-5V
-10V
1
0s
1.0ms
(V)(Out)
2
V(A)
2.0ms
3.0ms
4.0ms
Tiempo
V(B)
Figura 7.57 Resultados de simulación. Variable de entrada A en verde, variable de entrada B en rojo
y salida en azul.
Compuerta AND
La función de la compuerta AND es implementada como se muestra en la Figura 7.58,
mediante compuertas de transmisión.
A
A
B
F=AB
A
A
Figura 7.58 Compuerta AND con T-Gate
Se tienen como entradas las variables A y B, cada una en su respectiva compuerta
___
de transmisión, que están siendo controladas por la variable A y su complemento A . Asumiendo que la compuerta de transmisión con variable de entrada A va a ser la número 1
y la compuerta con entrada B va a ser la número 2, se tiene que cuando sea la variable
A = 0 , se activa la primera compuerta de transmisión, dejando pasar a la salida el valor
0. Cuando sea la variable A = 1 , se activa la segunda compuerta de transmisión, dejando
264
pasar a la salida el valor de B ya sea 0 ó 1. De esta manera, la única forma de que la salida sea F = 1 es que las dos variables A y B sean iguales a 1, para el resto de los casos
F = 0 . En conclusión,
el funcionamiento del anterior circuito esta dado por la expresión
___
booleana F ( A , B ) = A ⋅ 0 + A ⋅ B = AB . Este circuito tiene 6 transistores, al igual que su implementación en CMOS.
Simulación
En las Figuras 7.59 y 7.60 se presenta la simulación de una compuerta AND hecha
con compuertas de transmisión y los resultados obtenidos.
A
VCC
Mbreakp
M16
A
A
A
V1 = 0
V2 = 5
TD = 0
TR = 10p
TF = 10p
PW = 2m
PER = 4m
V1 = 0
V2 = 5
TD = 0
TR = 10p
TF = 10p
PW = 1m
PER = 2m
+
_
MbreakpD
V3
MbreaknD
V
0
B
0
+
_
0
C1
10p
V
0
Mbreakp
M14
VCC
5
Out
Neg_A
0
V2
VCC
Mbreakn
M18
B
+
_
M17
Neg_A
M11
V
M15
V1
VCC
0
Mbreakn
0
Figura 7.59 Circuito de simulación
1
20V
2
(A) ANDsim (active)
10V
Compuerta AND
15V
5V
10V
0V
5V
»
0V
-5V
-10V
1
0s
1.0ms
(V)(Out)
2
V(A)
2.0ms
V(B)
3.0ms
4.0ms
Tiempo
Figura 7.60 Resultados de simulación. Variable de entrada B en verde, variable de entrada A (control)
en rojo y salida en azul
265
Compuerta NAND
La función de la compuerta NAND es implementada como se muestra en la Figura
7.61, mediante compuertas de transmisión.
A
A
B
F=AB
A
A
Figura 7.61 Compuerta NAND con T-Gate
Este circuito funciona de manera similar al circuito de implementación de la AND, pues
A = 0 , se
se controla por medio de la variable A, pero en este caso, cuando la
__ variable
activa la compuerta de transmisión que tiene por entrada la variable A , de manera que la
salida va a ser F = 1 . Por otro lado, cuando la__ variable A = 1 , se activa la compuerta de
transmisión que tiene por entrada la variable B , teniendo así en la salida el valor de esta
variable, independientemente de
__ que sea 0 ó 1. Por lo tanto la salida va a ser igual a 0
únicamente cuando la variable B = 0 y para el resto de posibilidades
lo que la exF__ = 1 ,por
__
__
presión booleana del anterior circuito está dada por F ( A , B ) = A + A ⋅ B = AB diferencia del
circuito CMOS que usa 4 transistores, la compuerta NOR con T-Gate usa 8 transistores incluyendo los dos inversores,por lo que en esta clase de compuerta, al igual que en la NOR,
se eleva ampliamente el área de silicio utilizada en el diseño y la complejidad de éste.
Simulación
En las Figuras 7.62 y 7.63 se presenta la simulación de una compuerta NAND hecha
con compuertas de transmisión y los resultados obtenidos.
266
VCC
A
Mbreakp
MbreakpD
A
Neg_A
M11
A
A
V
V3
V1 = 0
+
V2 = 5
_
TD = 0
TR = 10p
TF = 10p
0
PW = 2m
B
PER = 4m
V1 = 0
V2 = 5
TD = 0
TR = 10p
TF = 10p
PW = 1m
PER = 2m
+
_
+
_
V1
C1
10p
V
Mbreakn
0
Out
0
M18
Neg_A
0
Mbreakp
VCC
0
B
V2
B
VCC
M17
MbreaknD
VCC
5
M16
M14
VCC
M15
MbreakpD
0
Neg_B
M10
0
Mbreakn
V
MbreaknD
A
M13
0
Figura 7.62 Circuito de simulación
1
20V
2
(A) ANDsim (active)
10V
Compuerta NAND
15V
5V
10V
0V
5V
»
0V
-5V
-10V
1
0s
1.0ms
(V)(Out)
2
V(A)
2.0ms
V(B)
3.0ms
4.0ms
Tiempo
Figura 7.63 Resultados de simulación. Variable de entrada B en verde, variable de entrada A
(control) en rojo y salida en azul
267
Compuerta XOR
Para la implementación mediante compuertas de transmisión de la compuerta Exclusiva-OR son necesarios seis transistores en total, como se muestra en la Figura 7.64.
B
B
M2
A
A
F
M1
B
M3/M4
B
Figura 7.64 Compuerta XOR con T-Gate
Para comprender el funcionamiento de este circuito solo es necesario analizar el
comportamiento de la compuerta respecto a B. B = 1 , los transistores M 1 y M 2 conforman un inversor y la
compuerta de transmisión se encuentra apagada, así que en la
__
salida se obtiene F = AB .
Cuando B = 0 sucede lo contrario, los transistores M 1 y M 2 se encuentran deshabilitados, por lo__tanto la compuerta de transmisión entra en operación y en la salida se
presenta F = AB .
__
__
La combinación de ambos casos lleva a la función de una XOR F = AB + AB .
Por otro lado la compuerta XOR se puede construir a partir de un multiplexor simple
de dos entradas y una __salida, como se puede
observar en la Figura 7.65.Las entradas de
__
la compuerta son A y A , mientras que B y B son usadas como las señales de control en
las compuertas de transmisión. B
TG1
A
B
A
f=A
B
TG2
B
Figura 7.65 Compuerta XOR construida a partir de un MUX 2:1.
268
Simulación
En las Figuras 7.66 y 7.67 se presenta la simulación de una compuerta XOR hecha
con compuertas de transmisión y los resultados obtenidos.
A
V1 = 0
V2 = 5
TD = 0
TR = 10p
TF = 10p
PW = 1m
PER = 2m
+
_
V2
V1 = 0
V2 = 5
TD = 0
TR = 10p
TF = 10p
PW = 2m
PER = 4m
0
+
_
B
MbreakP
+
_
V3
MbreakP
M9
MbreakP
A
Out
0
M1
VCC
5
VCC
VCC
B
B
V1
V
VCC
A
B
M8
Neg_B
V
C1
V
0
MbreakN
Neg_B
M6
10p
0
M3
MbreakN
M5
MbreakN
Neg_B
0
0
Figura 7.66 Esquema de la compuerta XOR
1
20V
2
(C) 4m (active)
10V
COMPUERTA XOR
15V
5V
10V
0V
5V
-5V
»
0V
-10V
0s
1
1.0ms
(V)(Out)
2
V(X)
2.0ms
V(A)
3.0ms
4.0ms
Tiempo
Figura 7.67 Resultado de la simulación. Variable de control (B) en verde, variable de entrada A en
rojo, salida en azul.
MULTIPLEXOR2:1
La implementación mediante compuertas de transmisión de un multiplexor 2:1 puede
ser realizada, como se muestra en la Figura 7.68.
269
S
P0
TG1
S
P1
f
S
f
0
1
P0
P1
TG2
S
Figura 7.68 Multiplexor 2:1 implementado a partir de compuertas de transmisión y su respectiva
tabla de operación.
Las entradas en este caso P0 y P1 , son controladas a partir de la señal S, dependiendo de la señal que se presente en S se selecciona cual de las dos entradas estará
presente en la salida; esto se refleja en la función
booleana que define a un multiplexor
__
(en este caso 2:1, dos entradas: 1 salida) f = P0 S + P1S . Cuando S = 0 , la salida es f = P0
mientras que cuando se presenta S = 1 , la salida es f = P1 .
Se encuentran multiplexores de cuatro entradas: una salida (4:1), ocho entradas: una
salida (8:1) y así sucesivamente, todos estos cumplen con el mismo principio; la estructura tendrá n número de entradas controladas por m número de señales de control, de tal
manera que n = 2m ,por lo tanto se pueden emplear cadenas de TG para crear multiplexores de diferentes tamaños. En la figura 69 se muestra como se construye un multiplexor
4:1 a partir de compuertas de transmisión.La función booleana que describe a un multi__ __
__
__
plexor 4:1 es: f = P  S S  + P  S S  + P  S S  + P (S S )
0


1
0
S1


1


1
0


2


S1
1
0


3
1
S0
0
S0
P0
P1
f
P2
P3
Figura 7.69 Multiplexor 4:1
270
Simulación
En las Figuras 7.70 y 7.71 se muestra la simulación del multiplexor 4:1 hecho con
compuertas de transmisión y sus resultados.
VCC
VCC
S0
V6
V1 = 0
+
V2 = 5
_
TD = 0
TR = 10p
TF = 10p
0
PW = 2m
PER = 4m
S1
V1 = 0
V2 = 5
TD = 0
TR = 10p
TF = 10p
PW = 1m
PER = 2m
+
_
MbreakP
MbreakP
V5
S1
0
S0
M27
M31
M30
M26
V
V
MbreakN
MbreakN
0
0
VCC
5
+
_
V4
VCC
VCC
VCC
MbreakP
MbreakP
P0
M29
M28
M13
M12
MbreakN
MbreakN
0
0
0
VCC
VCC
MbreakP
P1
MbreakP
M15
M14
0
M25
M24
MbreakN
V C2
MbreakN
10p
0
0
VCC
VCC
MbreakP
P2
VCC
MbreakP
M17
M16
M23
M22
MbreakN
MbreakN
0
0
VCC
P3
0
0
MbreakP
VCC
MbreakP
M19
M18
M21
M20
MbreakN
MbreakN
0
Figura 7.70 Esquema de un Multiplexor 4:1
0
271
1
20V
2
(A) DF (active)
10V
Multiplexor 4:1
15V
5V
10V
0V
-5V
5V
P1
P0
»
0V
-10V
1
0s
P2
1.0ms
(V)(M29:s)
2
V(S1)
2.0ms
P3
3.0ms
4.0ms
Tiempo
V(S0)
Figura 7.71 Resultado de la simulación. Variables de control (S0 y S1) en rojo y verde respectivamente,
salida en azul.
Sumador (FULL ADDER)
A partir de compuertas de transmisión es posible construir un sumador, para esto es
necesario emplear cuatro compuertas de transmisión, dos inversores y dos compuertas
XOR (también implementadas con compuertas de transmisión); en total se emplean 24
transistores (Figura 7.72).
SUM
C
B
CARRY
A
Figura 7.72 Esquema de un sumador
272
Considerando dos bits y un carry de entrada el modulo delsumador producirá una
salida de suma de 1 bit y un carry de salida:
S n = A ⊕ B ⊕C
C n +1 = AB + C ( A ⊕ B )
Para crear la salida S n del sumador se implementa la función usando 2 operaciones
XOR expresadas como:
S n = an ⊕ bn ⊕ c n
 _____________ 
S n = (an ⊕ bn ) ⋅ c n +  an ⊕ bn  ⋅ c n


Mientras que el carry de salida es implementado mediante la función:
 _____________ 
c n +1 = (an ⊕ bn ) ⋅ c n +  an ⊕ bn  ⋅ an


Las funciones A ⊕ B y su complemento son generadas en el circuito de la izquierda
de la Figura 7.73.
Un aspecto importante de este sumador es la capacidad para entregar las dos salidas
aproximadamente al mismo tiempo. Esto se debe al hecho de que los tiempos de propagación de entrada a salida son simétricos en los dos caminos.
bn
an
bn
Mp1
an
sn
Mn1
cn
bn
Mp2
an
an
an
bn
cn + J
Mn2
bn
Figura 7.73 Sumador
273
Simulación
En las Figuras 7.74 y 7.75 se muestra la simulación de un sumador hecho con compuertas XOR y compuertas de transmisión y sus resultados.
2M
1
D V2
1
V
B
4M
1
D V6
1
V8 V
+
_
VCC
2
V1
Mbreakp
3
2
5M
3
V5
4M
3
V7
VCC
2
C
0
C
VCC
5
VCC
3
Mbreakn
M35
0
1
1
V
M14
VCC
M29
Mbreakp
M15
Mbreakp
2
A
6M
V4
B
M31
Mbreakp
Neg_C
C
VCC
6M V9
3
M23
VCC
M24
0
2
3
Mbreakp
0
Neg_C
M16
Mbreakn
2
0
V12
0
Mbreakn
M18
0
V
0
C2
10p
VCC
0
Mbreakn
Mbreakn
M33
Mbreakp
Neg_B
0
A
VCC
C1
M19
VCC
M29
Mbreakp
M20
Mbreakp
A
0
Mbreakn
M25
V
VCC
M26
M21
Mbreakn
M24
0
VCC
0
Mbreakn
Mbreakn
B
C3
10p
Mbreakp
0
Figura 7.74 Esquema del sumador
20V
1
2
(A) simandder (active)
10V
Full Adder
15V
5V
0+0+0
10V
0V
5V
-5V
Suma= 0 Carry=0
0V
-10V
0s
1
0+1+0
1+1+0
1+1+1
Suma= 1 Carry=0
Suma= 0 Carry=1
Suma= 1 Carry=1
2.0ms
V(out)
V(C1)
2
V(A)
4.0ms
V(B)
V(C)
6.0ms
8.0ms
Tiempo
Figura 7.75 Resultado de la simulación. Variable de entrada An en Verde, variable de entrada Bn en rojo,
variable de carry de entrada en azul claro, salida en azul y carry de salida en amarillo
274
CAPÍULO
8
Lógica Secuencial en
CMOS
Introducción
P
ara saber que es lógica secuencial hay que tener claro el concepto de lógica
combinatoria. En esta lógica La lógica la salida depende exclusivamente de
la(s) entrada(s) actual(es) que tenga el sistema, mientras que en la lógica secuencial depende además de la secuencia pasada de entradas.
El uso de tablas de verdad es un buen mecanismo para la lógica combinatoria, pero
para la lógica secuencial seria demasiado engorroso saber el estado actual, ya que como
se comentó antes, la salida queda en función de la secuencia de entradas que le hallan
entrado al sistema hasta el momento.
Por esta razón se maneja el concepto de estado actual, estado siguiente y variables
de estado. Ya que conociendo las variables de estado se sabe el estado actual y se puede predecir el estado siguiente.
La esencia de los circuitos secuenciales se basa en los procesos de realimentación
positiva. La retroalimentación puede venir dada por el tiempo de propagación de las compuertas que forman la parte combinatoria o de las celdas secuenciales básicas con una
sola variable de salida.
En la lógica secuencial a diferencia de la lógica combinatoria se hace uso de un
elemento básico llamado flip-flop. El flip-flop es un elemento de memoria que almacena
un bit de información.
Los circuitos lógicos secuenciales se dividen básicamente en dos grupos: Los circuitos asincrónicos y los circuitos sincrónicos. Los primeros pueden cambiar los estados
de sus salidas como resultado del cambio de los estados de las entradas, mientras que
los circuitos sincrónicos pueden cambiar el estado de sus salidas en instantes de tiempo
discretos bajo el control de una señal de reloj.
El término secuencial se debe a esta dependencia con la secuencia de valores de
entrada en lugar de depender de solo del valor de entrada actual.
279
Principio de funcionamiento
Circuito de Lógica Secuencial
Entrada
Lógica
Combinatoria
Compuesta por
compuertas AND, OR y
NOT convencionales
Memoria
Mantiene el estado anterior de la
variable de salida y lo usa para generar el siguiente estado.
Figura 8.1 Circuito secuencial
La Figura 8.1 da una idea de lo que es el circuito secuencial: agregar memoria a un
circuito meramente combinacional. La salida de la lógica combinacional es guardada en un
circuito de memoria, y es conocida como el estado interno del circuito. El circuito en un siguiente estado, combina la entrada actual con la salida del estado anterior para producir una
nueva salida. Para definir que es un estado, el circuito posee una señal de reloj que sincroniza el paso de un estado a otro. Un contador es un buen ejemplo de una máquina secuencial,
dado que debe guardar el estado actual para ser actualizado en el siguiente conteo.
La característica esencial de la lógica secuencial es la memoria y en un sistema binario, la unidad mínima de información debe ser el BIT, que es el almacenamiento de la
información que presenta dos estados únicamente.
Para guardar ese tipo de información, los biestables son los elementos idóneos ya
que presentan dos estados en los cuales el sistema permanecerá en equilibrio indefinidamente, mientras no haya perturbación externa.
Un sistema mecánico biestable es el mostrado en la Figura 8.2. En éste se pueden almacenar dos estados de información simplemente colocando la pelota en uno de los dos
niveles de estabilidad. Adicionalmente, existe un punto en medio desde el cual el sistema
retornará al equilibrio con la ayuda de una mínima cantidad de energía.
280
E
2
1
3
Figura 8.2 Ejemplo de sistema mecánico Biestable.
X
Elementos de Memoria (Candados) y Flip-Flops
H
ay dos formas de dar memoria a un circuito digital, una se basa en la aplicación
de realimentación positiva (circuitos secuenciales estáticos) y la otra en el almacenamiento de carga en un condensador (circuitos secuenciales dinámicos).
El candado (latch)
Dos inversores acoplados en cruz como en la Figura 8.3(a) constituyen el elemento básico de memoria conocido como candado. El acoplamiento en cruz de los inversores forma
un lazo de realimentación positiva. Si se rompe la realimentación y se aplica un voltaje v w
(Figura 8.3(b)) se obliga al circuito a funcionar en el punto C de la grafica de la Figura 8.3(c),
donde v w es alto, v x es bajo, v y es bajo y v z es alto. Lo inverso se cumple para el punto A.
Vz
C
VOH
W
G1
G1
X
Vw
Punto
inestable
Vx
+
_
Punto
estable
Vw = Vz
B
Vz
y
G2
Z
Vy
(a)
G2
Vz
VOL
0
(b)
A
Vw
Punto
-estable
(c)
Vw
Figura 8.3 a) Candado básico, b) El candado con lazo de realimentación abierto, y c) Determinación del
punto de operación del candado1
1 Circuitos Microelectrónicos, Sedra – Smith
281
Latch tipo D con compuertas de transmisión
Las compuertas de transmisión pueden ser usadas como simples interruptores
para crear circuitos que tienen al menos dos estados de operación, como el caso de
los latch y los flip-flops.
Por ejemplo para el caso de un registro tipo D: en el estado Load, el valor de un bit
D es usado como entrada del circuito y en el estado Hold la entrada se desconecta del
circuito y el valor del estado anterior se conserva.
Con excepción de las celdas de memoria, los latch tipo D son el circuito más común presente en cualquier chip. Estos latch son esenciales para la sincronización y la
respuesta con sistemas de reloj. En la Figura 8.68 se muestra un latch tipo D a base de
compuertas de transmisión, cuya operación es controlada por las señales LD.
C
LD
D
TG1
Q
Q
D
LD
LD
C
TG2
Q
LD
C
Figura 8.4 Latch D a base de compuertas de Transmisión
Para un valor de LD = 1 se activa TG1, el cual permite que
la señal de en__ se cargue
__
trada D y por el contrario TG2 se abre dejando en la salida Q el valor D y en Q el valor
D. Por otro lado, cuando LD = 0 se activa TG2 y se desactiva TG1 aislando el circuito de
la entrada D, con TG2 activo se permite una retroalimentación de
la salida y por lo tanto
__
el valor de Q será la entrada del inversor que tiene como salida Q , por lo tanto cualquier
cambio en la entrada no afectara la salida hasta el momento en que LD = 1 . Los circuitos
equivalentes se observan en la Figura 8.69.
0
TG1
D
1
TG2
OFF
Q
D
Q
0
ON
TG2
Q
1
Figura 8.5 Circuito equivalente del latch D. A la derecha con LD=1 y a la izquierda con LD=0
282
D

0
TG1
0

OFF
A

1
Q

D
1
ON
D
Simulación
En las Figuras 8.70 y 8.71 se presenta la simulación de un registro LATCH tipo D hecho con compuertas de transmisión y los resultados obtenidos.
VCC
Neg _LD
Mbreakp
LD
D
V3
V1 = 0
+
V2 = 5
_
TD = 0
TR = 10p
TF = 10p
0
PW = 2m
D
PER = 4m
V1 = 0
V2 = 5
TD = 0
TR = 10p
TF = 10p
PW = 1m
PER = 2m
+
_
MbreakpD
M14
VCC
5
+
_
V1
M15
V
M2
M1
0
0
VCC
0
MbreakpD
0
LD
M6
LD
VCC
0
C1
10p
V
MbreaknD
Mbreakn
V2
Neg _Q
VCC
M4
Mbreakp
MbreakPD
M16
M3
LD
V
Neg_LD
M17
0
M5
Q
0
C2
10p
V
Mbreakn
MbreakND
MbreaknD
VCC
0
Neg _LD
0
Figura 8.6 Circuito de Simulación
1
20V
2
(G) Latch_sim (active)
10V
LATCH D
15V
5V
10V
0V
5V
-5V
»
0V
-10V
2.0ms
0s
1
(V)(NEg_O)
V(O)
2
4.0ms
V(D)
V(LD)
6.0ms
8.0ms
Tiempo
Figura 8.7 Resultados de Simulación. Variable de entrada D en verde, variable de entrada LD en rojo,
salida Q ̅ en azul y salida Q en amarillo.
283
Configuraciones de latch tipo D
Latch tipo D con realimentación triestado y compuerta de transmisión. Es estático,
entre los contras está el riesgo de colisión de señales por causa de glitches.
Q
X
D
Latch tipo D con realimentación triestado y compuerta de transmisión con buffer
a la entrada.
D
X
Q
El latch tipo D con realimentación triestado y compuerta de trasmisión con buffer
a la salida. Sin riesgo de colisión.
X
D
Q
El latch tipo D tipo Datapath con realimentación triestado y compuerta de trasmisión
con buffer a la salida. Veloz.
Q
X
D
284
El flip-flop SR (Establecer/Restablecer)
Se forma al acoplar en cruz dos compuertas NOR dejando la segunda entrada de
cada una para realizar el disparo del flip-flop como se ve en la Figura 8.8. Las salidas son
complementarias y guardan la información de un bit siempre que las entradas estén en
cero. Además, Q responde con un estado lógico de uno cuando la entrada S (set) está en
uno, y con un cero si R (reset) se pone en uno. Por principio nunca se deben presentar
estados lógicos de uno a la vez en ambas entradas.
R
G1
S
Q
Q
G2
R
S
Q
0
0
1
1
0
1
0
1
Qn
1
0
No Usada
(a) 8.8 Flip-flop SR y su tabla de verdad
(b) 2
Figura
VDD
Q2
Q4
Q
Q
Q6
S
Q3
Q5
Q8
Q7
R
Figura 8.9 Flip-flop SR con CMOS3
Su funcionamiento es igual
con excepción de la adición de pulsos de sincronía ∅ . Si
__
en estado de reset (Q = 0 , Q = 1 , v Q = 0 ) queremos establecer un 1 lógico en Q , debemos arreglar para que un voltaje V DD aparezca en S mientras R esta en bajo. Cuando el
pulso de reloj pase a alto tanto Q5 como Q 6 conducen, haciendo subir el voltaje v Q por la
conducción del transistor Q 4 . La señal en S debe permanecer el tiempo suficiente para
que se presente la conmutación. Este análisis aplica también en el caso del reset.
2 Circuitos Microelectrónicos, Sedra – Smith
3 Circuitos Microelectrónicos, Sedra – Smith
285
Circuitos flip-flop D
Muchos circuitos CMOS usan una señal de reloj para su funcionamiento. El reloj
provee una forma simple de sincronización en redes digitales. Las compuertas de transmisión pueden ser encendidas o apagadas mediante un par complementario los cuales
se pueden acomodar de una manera tal que la señal de reloj provea la sincronización del
flujo de datos. Por ende, las compuertas de transmisión son un elemento importante en
la implementación de flip-flops. En la Figura 8.10 se tiene un flip-flop tipo D (DFF) que se
dispara con un flanco positivo de reloj, el diseño se implementa mediante dos latch de
activación opuesta en cascada.
D
TG1
TG3
Q
DFF
D
Q
TG2
TG4
Master
Slave
Figura 8.10 Flip-Flop tipo D implementado con compuertas de transmisión.
El DFF es un arreglo maestro-esclavo, los cuales son dos latch idénticos con activaciones complementarias y a base de la señal de reloj ( φ ). Cuando el reloj está en estado
bajo, la compuerta de transmisión
TG1 conduce y TG2 se encuentra abierto lo que pone
__
a la salida del latch maestro en D , en este mismo estado el TG3 se encuentra abierto y
TG4 está en conducción, conservando el valor de la salida Q. El circuito equivalente se
muestra en la Figura 8.11.
=1
=0
D
TG1
TG3
=1
=1
=0
TG2
Master
Q
=0
TG4
=0
Slave
=1
Figura 8.11 DFF con el reloj en estado bajo. Carga del latch maestro
Cuando el reloj pasa al estado alto, la compuerta de transmisión TG1 desconecta la
entrada D del circuito, mientras que TG2 conduce para conservar el estado anterior; por
parte del latch esclavo TG3 conduce y TG4 se abre para cargar el nuevo valor de Q con
D. El circuito equivalente se muestra en la Figura 8.12.
286
=0
=1
D
TG1
TG3
Q
Available
=0
=0
=1
=1
Hold
TG2
Master
TG4
Slave
=1
=0
Figura 8.12 DFF con el reloj en estado alto. Carga del latch esclavo
Cuando vuelve el reloj al estado bajo, ya que el latch esclavo queda desconectado del
maestro, no hay posibilidad de cambio en la salida Q. Nótese entonces, que en el único
momento que puede haber un cambio en la salida Q es cuando el reloj pasa del estado
bajo al alto, ya que en ambos estados existe una desconexión de la salida o de la entrada.
Esto se observa mejor en el diagrama de tiempo (Figura 8.13).
(t)
1
load
0
0
load
2T
T
t
Figura 8.13 Diagrama de tiempo para DFF
Para un flip-flop de flanco negativo es necesario intercalar el latch esclavo por el
maestro, del circuito anterior. El DFF puede ser mejorado con la implementación de un
Enable mediante el esquema de la Figura 8.14.
ϕ.LD
ϕ
Q
ϕ.LD
ϕ
ϕ
ϕ
Slave
Master
ϕ
ϕ
Figura 8.14 DFF con Enable
287
Simulación
En las Figuras 8.77 y 8.78 se presenta la simulación de un Flip-Flop tipo D hecho con
compuertas de transmisión y los resultados obtenidos.
VCC
CLK
V3
V1 = 0
+
V2 = 5
_
TD = 0
TR = 10p
TF = 10p
0
PW = 2m
CLK
PER = 4m
V1 = 0
V2 = 5
TD = 0
TR = 10p
TF = 10p
PW = 1m
PER = 2m
+
_
D
M14
VCC
V1
5+
M15
V
MbreakpD
Mbreakp
Mbreakp
D
VCC
Neg _CLK
MbreakpD
M2
M18
VCC
M19
M1
0
_
M7
0
MbreakpD
Neg_CLK
VCC
MbreakPD
M16
M3
CLK
V
M17
Neg_CLK
M5
0
M11
Mbreakp
MbreaknD
VCC
M12
CLK
M4
Mbreakp
0
MbreakpD
0
CLK
M6
Neg_CLK
C4
10p
V
VCC
MbreaknD
Mbreakn
0
V2
Q
VCC
MbreaknD
Mbreakn
0
M8
VCC
M20
0
M21
Mbreakn
MbreaknD
VCC
0
0
Mbreakn
CLK
MbreakND
Neg _CLK
0
Figura 8.15 Circuito de simulación
1
20V
2
(G) Latch_sim (active)
10V
LATCH D
15V
5V
10V
0V
5V
-5V
»
0V
-10V
2ms
0s
1
(V)(O)
2
V(D)
4ms
V(CLK)
6ms
8ms
10ms
Tiempo
Figura 8.16 Resultados de simulación. Variable de entrada D en verde, Reloj en rojo y salida Q en azul.
Se recomienda al lector mirar el siguiente link:
http://tams-www.informatik.uni-hamburg.de/applets/hades/webdemos/05-switched/40-cmos/dff.html
288
Latch con nFETS
Los mismos circuitos en los que se emplean compuertas de transmisión, pueden ser
construidos usando solamente nFETs en vez de las compuertas de transmisión. Un latch
básico es mostrado en la Figura 8.17, donde el transistor ____
de entrada M1 es controlado
LD
por la señal de carga
mientras M2 es controlado por LD y es usado por el ciclo de
realimentación en el latch inversor. La operación del circuito es idéntica a la basada en
compuertas de transmisión equivalente y se sumariza en la Figura 8.18. Cuando LD = 1 ,
se permite cargar el bit de entrada en el circuito. Un valor de LD igual a cero bloquea el
camino de la entrada y simultáneamente cierra el ciclo de realimentación.
LD
D
Q
M1
M2
LD
Figura 8.17 Latch basado en nFETs.
LD=1
D
Q
M1
M2
LD =0
(a) Load
LD =0
D
Q
M1
M2
LD=1
(b) Hold
Figura 8.18 Operación del latch compuesto por nFETs.
289
Aunque este circuito es más simple que el de TG equivalente, ya que usa dos transistores menos, al igual que elimina el cableado adicional, se debe ser cuidadoso con el
diseño del circuito, pues los nFETs solamente pasan un rango limitado de voltajes. En
particular, se recalca que si se aplica V DD al gate del nFET, se permite que pasen los voltajes en el rango [0,V máx ] donde V máx =V DD −VTn . Este recorte puede afectar la operación
del circuito. Considere el caso expuesto en la Figura 8.19 donde se trata de transmitir un
voltaje V D a través de M 1 . Si V D es igual a 0 no se presentan problemas. Sin embargo,
si se tiene un voltaje alto V D =V DD , solamente se transmite V máx , el cual debe ser interpretado como un 1 lógico por el inversor. En estos términos, se tiene que
V máx >V IH
(1.1)
Donde, V IH es el voltaje alto de entrada. Por tanto, para garantizar que el circuito opere apropiadamente, se debe diseñar un inversor con el rango apropiado de βn / β p > 1
. Una forma sencilla de lograr esto es usando transistores de tamaño idéntico con
(W / L )n = (W / L )p . Otro problema a tener en cuenta, es que los transistores nFET son
intrínsicamente lentos para transmitir voltajes altos.
VX
VDD
VDD
VX = Vin
+
VD
_
M1
1
+
+
Vin
_
VX
_
2
+
VQ
_
VI
VI<1/2<VDD
0
a) Circuito básico
VI
1/2 VDD
Vmáx
Vin
VDD
b) Curva de trasnferencia de tensión para el primer inversor.
Figura 8.19 Consideraciones para el diseño de circuitos
Circuitos Multivibradores
Un dispositivo que tiene dos estados estables, como es el caso del flip-flop recibe el
nombre de multivibrador biestable. Existen otros dos tipos, el monoestable y el astable.
290
Circuito Monoestable
El monoestable, tiene un estado en el que puede permanecer indefinidamente y otro
casi estable al cual se puede disparar; puede permanecer en un estado casi estable durante un intervalo de tiempo T predeterminado, después del cual regresa al estado estable y
así genera un pulso de salida de duración T . De acuerdo con la Figura 8.20, la duración no
está relacionada con el pulso de disparo y por lo tanto, puede usarse como estandarizador
de pulso. Este multivibrador monoestable también se conoce como de un tiro.
Entrada
Entrada
Salida
Monoestable
Salida
T
Figura 8.20 Multivibrador monoestable como bloque funcional
En la Figura 8.21 se ilustra un multivibrador monoestable compuesto por dos compuertas CMOS NOR de dos entradas, un condensador C y un resistor R . La fuente de
entrada V 1 proporciona los disparos para el multivibrador.
+Vdd
+Vdd
R
C
V02
G1
V1
V01
+Vdd
V12
G2
Figura 8.21 Monoestable con compuertas CMOS NOR
Comercialmente, las compuestas CMOS tienen a la entrada, un arreglo de diodos,
como el de la Figura 8.22(a), que evitan que la señal de entrada se eleve más arriba de V dd
o caiga más abajo de tierra. Estos diodos tienen un efecto importante en el funcionamiento
del circuito, en especial en el caso de la compuesta G 2 , donde los diodos aparecen conectados en paralelo como aparece en la Figura 8.22(b). Mientras que los diodos proporcionan
una baja resistencia a la fuente de alimentación para tensiones que exceden los límites de
alimentación, la corriente de entrada para tenciones intermedias es esencialmente cero.
291
+Vdd
+Vdd
D1'
D1''
D1
D2'
D2''
D2
(a)
(b)
Figura 8.22 (a) Diodos de entrada de compuerta CMOS de dos entradas; (b) Circuito equivalente cuando
las dos entradas se unen
El circuito de la Figura 8.23 simplifica un poco más las cosas. Cuando la salida de la
compuerta es baja, sus características se pueden representar como una resistencia Ron
a tierra, que es normalmente de cientos de Ohms (Figura 8.23(a)). En este estado se dice
que la compuerta disipa corriente porque circula corriente del circuito externo hacia el
terminal de la salida de la compuerta. Del mismo modo, el circuito equivalente de salida
(Figura 8.23(b)) aplica cuando la salida de la compuerta es alta; puede circular corriente
de V dd por el terminal de salida de la compuerta hacia el circuito externo; se dice que la
compuerta genera corriente.
Salida
+Vdd
Ron
Ron
Salida
(a)
(b)
Figura 8.23 Circuito equivalente de salida de una compuerta CMOS: (a) cuando la salida es baja y (b)
cuando la salida es alta
¿Cómo opera este circuito monoestable? Los diagramas de sincronía de la Figura
8.24 lo explican mejor. La Figura 8.24(a) muestra un pulso corto de disparo. Si pasamos
por alto los tiempos de propagación de G1 a G2 , se puede establecer un límite inferior en
el ancho del pulso ô , ô > t p1 + t p2
(
292
)
Si consideramos el estado estable, es decir, antes de aplicar el disparo, la salida G1
es alta en Vdd , el condensador está descargado y la tensión de entrada a G2 es alto en
Vdd . La salida de G2 es baja y se realimenta a G1 ; como V1 es bajo, la salida de G2 es
alta como se supuso.
Lo que sucede cuando se aplica el pulso de disparo es que la tensión de salida de
G1 será baja, pero, debido a que G1 estará disparando un poco de corriente y a su resis ∆V1 ; la caída
tencia de salida R on , su salida no llegará hasta 0V sino que cae a un valor
 ∆V1 se acopla por medio de C (transitorio) a la entrada de G2 . Durante el transitorio habrá
una corriente que circula de Vdd , pasa por R y C y entra en la terminal de salida de G1
 ∆V1 :
a tierra, con lo que se forma un divisor de voltaje con y R on , del cual se determina
 ∆V 1 =V dd
R
R + Ron
(1.2)
La caída de tensión en la entrada de G2 hace que su salida sea alta. Esta señal mantiene baja la salida de G1 incluso después que el pulso de disparo haya desaparecido. El
circuito está ahora en estado casi estable.
En este estado, la corriente que pasa por C , R y R on hace que C se cargue, y la tensión V12 se eleva exponencialmente hacia Vdd con una constante de tiempo C(R + R on ) ,
como se indica en la Figura 8.24(c). Esta tensión continuará subiendo hasta que alcance
el valor Vth del inversor G2. En ese momento G2 conmuta y su salida V02 pasa a 0V, lo
que a su vez hace que G1 conmute. La salida de G1 tratará de elevarse hasta Vdd , pero
su elevación estará limitada a una cantidad ∆V2 . Esta elevación en V01 se igualará finalmente por medio de C a la entrada de G2 , que se elevará una cantidad igual ∆V2 . Debido
al diodo D1 , la tensión V12 se puede elevar sólo a Vdd + VD1 . Entonces de la Figura 8.24(c)
se tiene:
∆V 2 =V dd +V D 1 −Vth
(1.3)
D1 es el que elimina el tamaño del incremento ∆V 2 . Como ahora V12 es más alto
que Vdd , circulará corriente de la salida de G1 , pasa por C y después por el paralelo de
R y D1 , que descarga a C hasta que V12 caiga a Vdd y V01 se eleve a Vdd . Este circuito
está descrito en la Figura 8.25, donde observamos que la caída es un proceso no lineal.
El circuito monoestable no debe ser disparado hasta que se descargue el condensador,
porque de otra forma la salida no será el pulso estándar. El intervalo de descarga del condensador se conoce como tiempo de recuperación. Con lo anterior, el intervalo T estará
dado por la expresión:

Vdd 
R

 R + Ron V dd −Vth 
T = C ( R + Ron ) lnln 
(1.4)
293
ʋ1
(a)
0
t
ʋ01
Constante de tiempo= C(R+Ron)
VDD
V1
(b)
V2
0
t
ʋ/2
(c)
(VDD+VD1)
V2
VDD
To VDD
Vth
Constante de tiempo= C(R+Ron)
V1
0
t
ʋo2
(d)
T
VDD
0
t
Figura 8.24 Diagrama de sincronización para el circuito monoestable de la Figura 8.214
+Vdd
+Vdd
Ron
R
D1
C
V01
VI1
Figura 8.25 Circuito que aplica durante la descarga de C.
4 Circuitos Microelectrónicos, Sedra – Smith
294
Circuito Astable
No tiene estados estables, sino dos estados casi estables y permanece en cada uno
durante intervalos predeterminados T1 y T2 . Entonces, después de T1 en uno de los
estados casi estables, conmuta al otro y permanece ahí T2 , después de lo cual regresa
al estado inicial y así sucesivamente. Por esto, este multivibrador oscila con un período
T = T1 + T2 y se puede usar para generar pulsos de sincronía.
En la Figura 8.26 aparece un circuito popular astable compuesto de dos compuertas
NOR CMOS, conectadas a un inversor, un resistor y un condensador. Para simplificar las
cosas, la resistencia de la salida de la compuerta CMOS se pasará por alto y los diodos fijadores de nivel se asumirán como ideales. Con estas suposiciones se obtienen las formas de
onda de la Figura 8.27. Es frecuente que los circuitos prácticos utilicen una gran resistencia
en serie con la entrada de G1. Esto limita el efecto de la conducción del diodo y permite que
Vl1 se eleve a una tensión mayor que Vdd , y del mismo modo, se caiga por debajo de cero.
+Vdd
+Vdd
V01
V02
G1
G2
R
C
VI1
Figura 8.26 Circuito multivibrador astable.
295
ʋ02
VDD
(a)
0
t
ʋ01
T
VDD
(b)
0
t
ʋ1I
Constante de tiempo= CR
VDD
(c)
A VDD
Vth
A0
0
t
Figura 8.27 Formas de onda del multivibrador astable5
Para este caso, T estará dado por:
V
V dd 
T = CR lnln  dd

Vth V dd −Vth 
(1.5)
Circuito Oscilador en Anillo
Este oscilador se forma con un número impar de negadores en un lazo. Por lo general
se usan cinco inversores, pero en este caso sólo trabajamos con tres. En la Figura 8.28
se muestra el circuito, y en la Figura 8.29 las formas de onda idealizadas en el sentido de
que tienen tiempos de elevación y caídas iguales a cero.
5 Circuitos Microelectrónicos, Sedra – Smith
296
2
1
G1
V1
3
G2
V2
4
G3
V3
V1
Figura 8.28 Oscilador en anillo
ʋ1
ʋ2
ʋ3
Tiempo
Todos los tiempos
tp
Figura 8.29 Forma de onda resultante
Un borde de la elevación del nodo 1 se prolonga por las compuertas 1, 2 y 3 para
regresar invertido después de un tiempo de propagación de 3t p . Este borde de la caída
se propaga entonces y regresa con la polaridad original (de elevación) después de otro
intervalo 3t p . Se deduce que el circuito oscila con un período de 6t p . En general, el anillo
de N inversores ( N impar) oscilará con un período 2Nt p . Este oscilador nos provee
de un medio relativamente sencillo para medir el tiempo de propagación de un inversor.
Disparador Schmitt CMOS
El disparador Schmitt funciona como un circuito que define flancos como por ejemplo
cuando en la entrada se presenta una señal lenta, el circuito da una salida de flanco, sin
importar lo lenta que sea la señal.
Las características de transferencia de voltaje presentan histéresis es decir que el valor
de disparo para el flanco de subida es diferente al de bajada. Como se ve en la Figura 8.30(a).
297
VOH
Vout
In
VOL
Out
(b) Schematic symbol
VMVM+
(a) Voltage- transfer characteristic
Vin
Figura 8.30 Disparador Schmitt, (a) Características de transferencia de voltaje y (b) simbolo.
Uno de los principales usos de este circuito es para filtrar señales ruidosas en señales
digitales limpias como señales de rebote, el funcionamiento de este circuito también se
basa en la realimentación positiva de la salida.
La implementación de un disparado Schmitt en la tecnología CMOS se basa en las
características de los transistores NMOS y CMOS como por ejemplo sobre todo la relación entre las constantes K N / K P . Incrementar esa relación resulta en una reducción
en el voltaje de Threshold, lo que resulta en un incremento del voltaje M de la gráfica.
Adaptar esa relación dependiendo de la dirección de la transición, resulta en una diferenciación de los voltajes de VM y por consiguiente en la creación de un efecto de histéresis.
Esa adaptación se logra con ayuda de la realimentación.
Suponga que el voltaje de entrada es 0 entonces a su vez el voltaje de salida también será 0. El lazo de realimentación enciende el transistor M 4 y apaga el transistor
M 3 . La señal de entrada efectivamente conecta un inversor de dos consistente en los
dos PMOS como una red de Pull-down y el transistor M 1 es el único que funciona
como red de Pull-down. Esto modifica la relación efectiva entre las constantes K del
inversor: KM 1 /(KM 4 + KM 2) , lo cual mueve el valor de Vth hacia arriba.
VDD
M2
M4
X
Vin
M1
Vout
M3
Figura 8.31 Disparador Schmitt con CMOS
298
Una vez el inversor cambia, el lazo de realimentación apaga M 4 y el transistor NMOS
M 3 se activa. Este voltaje ayuda a la transición y produce una señal limpia con flancos
definidos. Un comportamiento similar se puede ver en la transición de bajo a alto.
2.5
2.5
2.0
2.0
VM+
1.5
Vx(V)
Vx(V)
En la Figura 8.32 se observa claramente el efecto de cambiar la relación del PMOS
M 4 , el ancho W = K * 0.5µ m
VM-
1.0
1.5
1.0
k=3
k=1
0.5
0.0
0.5
0.0
0.5
1.0
1.5
2.0
2.5
0.0
k=4
k=2
0.0
0.5
Vin(V)
1.0
1.5
2.0
2.5
Vin(V)
Figura 8.32 Características de transferencia de voltaje al cambiar K
Registros de un solo pulso
Hasta ahora solo se ha usado la topología maestro esclavo para construir Flip-Flop.
Otro tipo de FF funciona a base de la creación de pulsos que activan las señales de reloj
en los latches. Por supuesto esto se puede hacer con el uso de los monoestables descritos anteriormente. En ese caso la señal muestreada en cada elemento de memoria es el
resultado de la medición durante un corto tiempo y es menos susceptible al ruido.
VDD
VDD
M3
M6
Q
D
CLKG
M2
CLKG
VDD
CLK
CLKG
MP X
M5
MN
M1
M4
(b) glitch generation
(a) register
CLK
CLKG
(c) glitch clock
Figura 8.33 Registro de pulso - Monoestable.
299
En la Figura 8.33 se ve un monoestable algo distinto en el cual se produce un glitch
en cada flanco de subida. Cuando CLK = 0 el nodo X es cargado al valor de V DD y el
transistor Mn permanecerá apagado. En el flanco de subida existe un corto periodo en
el cual ambas entradas de la compuerta AND están activas causando que la salida CLKG
vaya a un valor lógico alto, lo que a su vez activa MN y pone el nodo X en un valor de
0 lógico. Esto hace que de nuevo la señal a la entrada de la compuerta AND sea diferente
de 1 1, lo que hace que la salida se apague de nuevo.
En esta configuración existe un retardo entre el flanco de subida que dispara el circuito y su salida. El retardo es igual a la suma de los retardos de la compuerta AND y
de las dos compuertas negadoras. Si todos los registros en el circuito poseen el mismo
mecanismo monoestable, ese retardo no tiene importancia.
Si el tiempo de set-up y el tiempo de muestreo se toman referidos al momento en que
se produce el glitch, entonces el primero es igual a 0 y el segundo es igual al largo del
pulso y al tiempo de retardo que es igual a un retardo de dos compuertas. La ventaja de
este tipo de circuito es la reducción en la carga al reloj y la reducción en el número de
transistores. La desventaja es un aumento en la complejidad de los circuitos de verificación. Estas desventajas hacen que sean poco usados en circuitos, aunque últimamente
se usaron en integrados de alta velocidad.
Otra topología usada de registro de pulso se emplea en el procesador K6 de AMD.
En esta topología cuando el reloj esta en un valor bajo M 3 y M 6 están apagados y el
transistor P1 estará encendido. El nodo X estará precargado al valor de V DD y el nodo
de salida Q estará desacoplado de ese nodo X y mantiene el valor de un estado anterior.
CLKDN es una versión negada y con retraso de la señal CLK . En el flanco de subida
del reloj M 3 y M 6 se encienden mientras que los transistores M 4 y M 1 permanecen
encendidos por un corto periodo de tiempo, determinado por el retraso de los tres inversores. Durante este corto intervalo el circuito es transparente y la señal de D es muestreada por el latch.
Una vez la señal de CLKDN cae a cero el nodo X es desacoplado de la entrada D y es
cargado a un valor de V DD por el transistor P 2 . En el ciclo de bajada del reloj el nodo X es
mantenido a V DD y la salida es mantenida estable por los negadores realimentados de la salida.
VDD
VDD
CLK
P1
P3
x
M6
M3
D
M2
P2
VDD
M1
Q
CLKD
M5
M4
Figura 8.34 Registro de pulso empleado en el procesador K6 de AMD
300
3.0
2.5
D
2.0
Q
Volts
1.5
1.0
CLK
0.5
CLKD
0.0
-0.5
0.0
0.2
0.4
06
time (nsec)
0.8
1.0
Figura 8.35 Diagrama de tiempos del registro de pulso de la Figura 8.34.
En el diagrama de tiempos de la Figura 8.35 se observa que el registro es transparente cuando las señales de CLK y CLKDN se traslapan. Esto resulta en que la entrada
puede cambiar después del flanco de subida del reloj, resultando en un tiempo negativo
de set-up. La entrada D cambia a bajo, después del flanco de subida del reloj y sube a 1
después de un flanco de bajado de CLKDN (esto es debido al periodo de transferencia).
Observe que la salida sigue la entrada.
El valor de Q va a un valor correcto de V DD mientras la entrada D permanece correctamente en el valor un tiempo después del flanco de bajada de CLKDN . Cuando el tiempo
de set-up negativo es explotado no hay garantía que exista un comportamiento monotonico
a la salida. Esto significa que la salida puede tener varios valores de transición alrededor
del flanco y entonces el registro de salida no puede usarse para sincronizar otros registros.
Memorias de Semiconductor:
Tipos y Arquitecturas
Una memoria de computadora se divide en memoria de almacenamiento masivo y Memoria principal. Esta última suele ser más rápidamente accesible y aquella de la cual se
ejecutan la mayor parte de las instrucciones, en general es de acceso aleatorio. La estructura regular de circuitos de memoria los ha hecho una aplicación ideal para el diseño de CI
a escala muy grande (VLSI).
301
Memorias RAM
Las memorias ocupan un alto volumen del mercado de circuitos integrados. En una RAM
no hay desplazamiento de registros para la captura de bits. Los ingenieros muchas veces
las utilizan para verificar las tecnologías emergentes dado que son relativamente fáciles de
probar y de analizar las fallas. La arquitectura de una memoria de material semiconductor
estática o dinámica se muestra en la Figura 8.36. Están compuestas por tres bloques principales: celdas matriciales de memoria, los decodificadores y el circuito de entrada-salida.
Las memorias pueden tener acceso a un solo bit o a la palabra completa (8, 16, 32 o 64 bits)
guardada en la memoria. De cualquier modo, el arreglo matricial de memoria está organizado
en filas y columnas, con los bits localizados en la intersección entre ellas.
Las memorias estáticas y dinámicas tienen distintos diseños de celda, las dinámicas guardan la información en un capacitor, reteniendo los datos por un tiempo limitado,
después del cual la información es perdida. Sin embargo, esta puede ser retenida si se
adiciona circuitería externa.
Las memorias estáticas guardan la información en estructuras realimentadas (dos pares de inversores cruzados). Son más rápidas que las memorias dinámicas dado que las
estáticas no tienen periodos de latencia, mientras que el costo por bit en las memorias dinámicas es más barato debido a que el número de transistores requerido por celda es menor.
2n
Col k
Bit
cell
Row i
Data in
Data out
2m
l/O
m
Figura 8.36 Arquitectura general de una memoria de material semiconductor
Memorias Estáticas (SRAMS)
Estas memorias utilizan dos inversores en una configuración biestable realimentada.
Esta operación es ilustrada cuando se grafican los voltajes de salida versus los de entrada en los mismos ejes para los dos inversores tal como se ilustra en la Figura 8.37.
Los estados estables del circuito son aquellos que corresponden a la intersección donde
V i = 0 y V i =V DD , mientras que la intersección donde V i =V 0 no es un estado estable (llamado estado metaestable). En consecuencia, este sistema recibe su nombre dado que
solamente dos estados son estables.
302
1.8
1
1.5
1.2
l1
ξ
Vi
Vo
2
0.9
0.6
0.3
l2
0
0.3
0.6
0.9
1.2
Vm
(a)
ω
0
1.5
1.8
(b)
Figura 8.37 Configuración biestable para una SRAM.
El circuito de inversor realimentado mantiene su estado tanto tiempo como la alimentación sea mantenida.
Cualquier perturbación de voltaje o posible corriente de fuga tendiendo a producir
una interrupción en un nodo de la celda, será compensada por la salida del inversor
conectado a dicho nodo.
La arquitectura de seis transistores para una memoria CMOS estática se muestra en la
Figura 8.38. Todas las celdas de transistores y sus interconexiones han sido minimizadas
en tamaño para mantener el arreglo tan pequeño como sea posible. La línea de la palabra
controla el acceso a los transistores, conectando los nodos de la celda a las líneas de bit.
Cuando la línea de la palabra está en alto,
todas la celdas en esa fila que están conectadas
_____
a sus correspondientes líneas bit y bit pueden ser accesadas para lectura o escritura.
El tiempo de acceso de_____lectura-escritura a la memoria es reducido gracias a la precarga de las líneas bit y bit , forzando a las líneas a tener el mismo voltaje antes que
cualquier otra operación se lleve a cabo. La señal de precarga, que aparece en la parte
superior de la Figura 8.38, enciende todos los tres transistores p forzando un valor de V DD
en las dos líneas bit . La precarga evita el gran tiempo que se necesita para cargar las
líneas de bit altamente capacitivas cuando las señales cambian de estado bajo a alto.
Precharge
Six
transistor
cell
Word
line
Column
line
(bit)
Column
line
(bit)
Figura 8.38 Arquitectura de seis transistores para una memoria CMOS estática6
6 SEGURA, Jaume. CMOS Electronics: How it Works, how it Fails. Publicado por Wiley-IEEE, 2004. p. 289-320.
303
Aunque el tamaño de estas celdas de memoria es reducido, las palabras que se
deben conducir durante el proceso de lectura a través de los transistores tienen gran
longitud. Este retraso es mejorado usando circuitos análogos de tamaño reducido, llamados “sense amplifiers”, que son colocados en cada salida de bit . La Figura 8.39
muestra un típico “sense amplifier” en configuración diferencial usado para el diseño de
memorias CMOS SRAM. Cuando la señal de control CS está en bajo, M 3 está apagado
y la salida del “sense amplifier” queda flotante, lo cual corresponde a las operaciones de
escritura. Cuando CS está en alto,_____el circuito es activado, por tanto el “sense amplifier”
el
lee el voltaje de las líneas bit y bit después de la precarga y rápidamente transfiere_____
valor de la celda al circuito de entrada-salida, incluso antes de que las líneas bit y bit
alcancen voltajes. Si bit y CS están en alto, entonces M 1 dirige la corriente a través de
M 4 . Cuando la señal bit esta en bajo y CS en alto, entonces M 2 se prende y la salida
se va a bajo. Los “sense amplifiers” son usados exclusivamente en la etapa de lectura y
son deshabilitados en otras operaciones.
M4
bit
M5
M1
CS
M2
out
bit
M3
Figura 8.39 Sense amplifier” en configuración diferencial usado en memorias SRAM7
Memorias Dinámicas (DRAMs)
Las memorias dinámicas retienen los datos en tanto la carga sea guardada en un
capacitor. Esto permite el uso de pequeñas celdas de memoria, pero dado que la carga
no es mantenida por medio de una estructura realimentada, los valores guardados son
perdidos con el tiempo.
Dos configuraciones de celdas dinámicas son mostradas en la Figura 8.40. Ambas
celdas usan la capacitancia parásita de la compuerta de un transistor MOS para guardar
la carga. La celda de tres transistores (Figura 8.40(a)) tiene líneas separadas para la
lectura y escritura, dando como resultado una operación más rápida pero ocupando más
espacio. Cuando la línea de selección de escritura está en alto, M 1 actúa como un transistor de paso, transfiriendo el estado lógico de la línea de entrada a M 2 y colocando a
M 2 en un estado apagado o en conducción. La capacitancia de drenador mostrada en
la Figura 8.40(b) se encarga de mantener ese estado. La señal de lectura activa a M 3
y el bit en el drenador de M 2 es transferido a través de M 3 a la línea de lectura. Esta
configuración permite una operación de lectura no destructiva, es decir, que la celda no
pierde su contenido una vez que la lectura es efectuada.
7 SEGURA, Jaume. CMOS Electronics: How it Works, how it Fails. Publicado por Wiley-IEEE, 2004. p. 289-320
304
La celda con un único transistor (Figura 8.40(b)) es popular dado que tiene la menor
área de memoria. La carga guardada en el capacitor es perdida durante la operación de
lectura debido a la carga compartida con la línea bit de la capacitancia parásita.
Read
select
Bit line
(read/write)
M3
M1
read/write
select
M2
Write
select
Write
line
Read
line
(b)
(a)
Figura 8.40 Celdas DRAM (a) Celda de tres transistores (b) Celda de un transistor
Organización de un Chip de Memoria
Los bits de un chip de memoria son individualmente direccionables o direccionables
en grupos de 4 a 16, pero tomaremos el primer caso para nuestro análisis.
El grueso de la memoria está compuesto por celdas donde se almacenan los bits.
Cada celda de memoria es un circuito electrónico capaz de almacenar un bit. Es deseable organizar las celdas de memoria en un chip en una matriz cuadrada o casi cuadrada
(Figura 8.41). La matriz de celda tiene 2M renglones y 2N columnas. Cada celda de la
distribución está conectada a una de las 2M filas, conocidas generalmente como filas de
palabras, y a una de las 2N columnas, conocidas como líneas de dígitos o líneas de bits.
Una celda en particular se selecciona para lectura o escritura al activar su línea de palabra o su línea de bits.
Circuito de celda de almacenamiento
Línea de bits
0
Dirección de fila (M bits)
1
A0
Línea de
palabras
A1
K
AM - 1
Celda de
almacenamiento
2M - 1
0
1
L
2N - 1
Amplificadores de salida/ excitadores
Dirección de
columna
(N bits)
AM
AM + 1
Decodificador de columna
AM + N - 1
Datos de entrada/salida
Figura 8.41 Chip de memoria
305
La activación de una de las líneas de palabra es realizada por el decodificador de fila.
Si la celda de la columna L está guardando un 1, la tensión de la línea de bit número L
se eleva, por ejemplo 0.1 a 0.2V . La razón por la cual la tensión de lectura es pequeña
es que la celda es pequeña, siendo ésta una deliberada decisión de diseño porque hay
un gran número de celdas. La pequeña señal de lectura se aplica a un amplificador de
salida conectado a la línea de bit. El decodificador de columna selecciona la señal de
la columna cuya dirección de N bits se aplica a la entrada del decodificador y hace que
la señal aparezca en la línea de datos de entrada/salida (I/O) del chip. Una operación de
escritura prosigue de manera semejante.
Debido al aumento de las capacidades de las memorias, actualmente el chip se secciona en varios bloques de memoria, cada uno organizado como se muestra en la Figura 8.41.
Las direcciones de fila y columna se emiten a todos los bloques. La selección de bloques se
logra usando un número apropiado de los bits de dirección como dirección de bloque. Esta
arquitectura puede ser considerada como de tres dimensiones: filas, columnas y bloques.
Sincronización de un Chip de Memoria
El tiempo de acceso de memoria es el tiempo entre la iniciación de una operación de
lectura y la aparición de los datos de salida. El tiempo de ciclo de memoria es el mínimo
permitido entre dos operaciones consecutivas de memoria. Las memorias MOS tienen
tiempos de acceso y ciclo entre unos pocos ns a cientos de ns.
Celda de Memoria Estática
La Figura 8.42 ilustra una celda típica de memoria en tecnología CMOS. El circuito
es un flip-flop que comprende dos inversores acoplados en cruz y dos transistores de
acceso, Q5 y Q6 . Los dos transistores conducen cuando la fila de palabra se selecciona
el flip-flop a la línea de columna (bit o B ) y línea
y su tensión se eleva a Vdd , y conectan
___
de columna, bit o B . Las filas B y B se utilizan. Los transistores de acceso común actúan
como compuertas de transmisión
permitiendo que circule corriente bidireccional entre el
___
flip-flop y las líneas B y B .
Línea de palabras (W)
VDD
Q2
Q5
Q
Q1
Q4
Q
Q6
Q3
Línea de bits
B
Línea de bits
B
Figura 8.42 Celda de memoria CMOS SRAM8
8 Circuitos Microelectrónicos, Sedra – Smith
306
La operación
de lectura aparece en la Figura 8.43. Inicialmente v Q = Vdd y v __ = 0 . La
__
Q
líneas B y B suelen ser precargadas a una tensión de alrededor de Vdd / 2 .
La operación de escritura aparece en la Figura 8.44. Inicialmente, el SRAM tiene
un 1
__
almacenado y se está escribiendo un 0. El circuito en (a) está subiendo el nodo Q hacia
Vdd / 2 mientras que en (b) está bajando el nodo Q hacia Vdd / 2 .
El tiempo de propagación de escritura tomado por la acción de conmutación del flipflop, se puede aproximar por el tiempo de propagación de un inversor. En este tipo de
componentes, el tiempo de propagación para escritura es mucho menor que para lectura.
C
Esto se debe a que en la operación de escritura, sólo la pequeña capacitancia Q tiene
que cargarse (o descargarse), mientras que en la operación de lectura
tenemos que car__
gar (o descargar) las capacitancias mucho mayores
en las filas B y B . En la operación de
__
escritura, las capacitancias de las filas B y B se cargan (y descargan) en forma relativamente rápida por el circuito de excitación. El resultado final es el tiempo de propagación
de la fila de palabras.
Línea B
ʋw= VDD
VDD
Línea B
ʋw= VDD
ʋB
I5
Q5
CB
ʋQ=0
Q4
I1
Q1
ʋB
ʋQ
ʋQ= VDD
Q6
CB
CB
(a)
(b)
Figura 8.43 Partes relevantes del circuito SRAM durante una operación de lectura 9
VDD
ʋw= VDD
ʋQ
(0 a VDD / 2)
I5
ʋB = VDD
Q5
ʋQ
IC2
CQ
Q
I1
Q1
(0 a VDD / 2)
ʋQ
(VDD 0
I4
ʋQ
(VDD 0
a VDD / 2)
ICQ
I6
Q6
ʋB= 0
CQ
a VDD / 2)
(a)
ʋw= VDD
(b)
Figura 8.44 Partes relevantes del circuito SRAM durante una operación de escritura 10
9 Circuitos Microelectrónicos, Sedra – Smith
10 Circuitos Microelectrónicos, Sedra – Smith
307
Celda de Memoria Dinámica
La celda de la Figura 8.45 se ha convertido en estándar de la industria. Se compone
de un solo MOSFET de canal n, conocido como transistor de acceso, y un condensador
de almacenamiento CS . La celda se conoce apropiadamente como celda de un transistor.
La compuerta está conectada a la fila de palabras y su fuente a la fila de bits. Sólo se
utiliza una fila de bits en los DRAM.
BL
Línea de
palabra
WL
Q
Línea
de bit
Cs
Figura 8.45 Celda RAM dinámica de un transistor
Cuando la celda está almacenando un 1, el condensador se carga a Vdd − Vt ; cuando
se almacena un 0, el condensador se descarga a 0. Debido a los efectos de fuga la celda
debe regenerarse continuamente (cada 5 a 10ms). Al igual que en la SRAM, el decodificador de fila selecciona una fila en particular al elevar la tensión de su fila de palabras.
Esto hace que los transistores de la fila seleccionada sean conductores, conectando así
los condensadores de almacenamiento de todas las celdas de fila seleccionada a sus
respectivas filas de bits.
Así, el condensador de la celda CS se conecta en paralelo con el de la fila de bits CB
como se muestra en la Figura 8.46. CS tiene un valor típico de 30 a 50fF, mientras que CB
es 30 a 50 veces más grande. Suponiendo que la tensión en el condensador de la celda
es VCS = 0 , cuando está almacenado un 0, podemos escribir:
C SVCS + C B
V
= (C B + C S )  dd + ∆V
2
 2
Vdd
Teniendo en cuanta la aproximación C B  C S
∆V ≅
CS
CB

V dd
VCS −
2

Si la celda está almacenando un 1, VCS =V dd −Vt
∆V (1) ≅
308
CS
CB



V dd
−Vt

2




(1.6)
(1.7)



(1.8)
Mientras que si la celda está almacenando un cero, V
∆V ( 0) ≅ −
CS
CB
V dd

 2



CS
=0
(1.9)
Vemos que un 1 almacenado en la celda resulta en un pequeño incremento positivo
en el voltaje de fila de bit, mientras que un 0 almacenado resulta en un pequeño incremento negativo. Obsérvese que el proceso de lectura es destructivo porque la tensión
resultante en CS ya no será 0.
Cs
CB
Figura 8.46 Circuito equivalente cuando la línea de palabra se eleva
La operación de escritura prosigue de manera semejante a la de lectura, excepto que
el bit de datos por escribirse, que se imprime en la fila de datos de entrada, es aplicado
por el decodificador de columna a la fila de bits seleccionada.
Aún cuando las operaciones de lectura y escritura resultan en la regeneración automática de todas las celdas de la fila seleccionada, deben tomarse medidas para la
regeneración periódica de toda la memoria cada 5 a 10ms. Con esto, el chip de memoria
permanece disponible para operación normal durante más del 98% del tiempo.
Amplificadores de Salida y Decodificadores
de Dirección
Amplificador de Salida
Estos dispositivos son esenciales para la correcta operación de los DRAM y su uso
en los SRAM resulta en mejoras en velocidad y área.
En la actualidad se encuentran en uso varios diseños de amplificadores de salida, a
continuación profundizaremos en el diseño de un amplificador diferencial de salida que
utiliza retroalimentación positiva.
309
Amplificador de Salida con Retroalimentación Positiva.
El amplificador de salida (Figura 8.47) es un candado formado al acoplar en cruz dos
inversores CMOS: un inversor está formado por los transistores Q1 y Q2 y el otro por Q3
y Q4 . Los transistores Q5 y Q6 actúan como interruptores que conectan el amplificador
de salida a tierra y Vdd solo cuando se requiere acción de salida de datos; de otro modo,
∅ S es bajo y el amplificador de salida no conduce. Esto conserva potencia, lo cual es
muy importante ya que por regla general hay un amplificador de salida por columna, resultando en miles de amplificadores de salida por chip.
Línea de palabras
Celda
seleccionada
Celda
Vdd
Q6
Фs
Q2
VB
Q4
x
y
CB
Q1
Q3 CB
Фs
VB
Amplificador
diferencial de
salida
Q5
Q1
Q8
Q9
Circuito de
igualación y
precarga
ФP
Vdd/2
Línea B
Línea B
Figura 8.47 Circuito equivalente cuando la línea de palabra se eleva11
Cabe anotar que los terminales x e y son los terminales de
___ entrada y salida del amplificador, estos terminales I/O están conectados a las filas B___y B . Se requiere que el amplificador detecte una pequeña señal que
aparece entre B y B , y la amplifique para producir
___
una señal a plena alternancia en B y B . Un ejemplo de este funcionamiento se presenta si
durante una operación de lectura la ___
celda tenía un 1 almacenado, entonces se formará un
v
pequeño voltaje positivo entre B y B , con v B más alto que B__ . Entonces el amplificador
v
hará que v B se eleve a VDD y B__ caiga a 0V. Esta salida 1 es dirigida entonces al terminal
de aguja I/O del chip por el decodificador de columna (no aparece en la gráfica) y al mismo
tiempo se utiliza para volver a escribir un 1 en la celda DRAM, efectuando así el restablecimiento de la operación requerida ya que el proceso de lectura del DRAM es destructivo.
11 Circuitos Microelectrónicos, Sedra – Smith
310
En la Figura 8.47 también se ilustra el circuito de precarga e igualación, esta operación consiste en: cuando ∅ P es alto antes de una operación___ de lectura, los tres transistores conducen. Mientras Q8 y Q9 precargan las filas B y B a VDD / 2 , el transistor Q7
ayuda a acelerar este proceso al igualar los voltajes en las dos filas. Esta igualación es de
vital importancia para correcta___operación del amplificador de salida: cualquier diferencia
de voltaje que haya entre B y B antes de que se inicie la operación de lectura puede resultar en una errónea interpretación de su señal de entrada por el amplificador de salida.
En esta figura sólo se ilustra una de las celdas en esta columna en particular, es decir, la
celda cuya fila de palabras está activada, la celda puede ser o bien una celda SRAM o
una
DRAM, todas las otras celdas de esta columna no estarán conectadas a las filas B
__
y B ya que sus filas de palabras permanecerán bajas.
A continuación se presenta la secuencia de eventos durante una operación de lectura:
1. El circuito de precarga e igualación se activa al elevar la señal de control ∅P . Esto
___
hace que las filas B y B se encuentren
a voltajes iguales, igual a V DD / 2 . El reloj ∅P
___
se hace bajo entonces y las filas B y B se dejan flotar durante un breve intervalo.
___
2. La fila de palabras se hace alta,___ conectando la celda a las filas B y B . Se forma
v
entonces un voltaje entre B y B , con v B más alta que B si la celda está almav
v
__
cenando un 1, o B más baja que B__ si la celda está almacenando un 0. Para
mantener simple el diseño de la celda, y para facilitar la operación a velocidades
más
altas, la señal de lectura, que se requiere que la celda proporcione entre B y
__
B ,se mantiene pequeña (típicamente de 30 a 500mV).
__
3. Una vez que una adecuada señal de voltaje de diferencia entre B y B sea formada por la celda de almacenamiento, el amplificador de salida conduce y la conecta
a tierra y a V DD a través de Q 5 y Q 6 , al elevar la señal de control de salida ∅S .
Como inicialmente los terminales de entrada de los inversores están a V DD / 2 , los
inversores estarán operando en la región de transición donde la ganancia es alta.
Se deduce que inicialmente el candado estará operando en su punto de equilibrio
inestable. Por lo tanto, dependiendo de la señal entre los terminales de entrada,
el candado se moverá rápidamente a uno de sus dos puntos de equilibrio estable.
Esto se obtiene por la acción regenerativa inherente en retroalimentación positiva.
En la Figura 8.48 se ilustra con claridad este punto, mostrando las ondas de la
señal en la fila de bits para la operación de lectura de 1 y lectura de 0. Observe
que una vez que se active el amplificador de salida, éste produce la pequeña
diferencia inicial, ∆V (1) ó ∆V (0) , producida por la celda, para que crezca exponencialmente ya sea a V DD (para una operación de lectura de
__ 1) o a 0 (para una
operación lectura de 0). Las ondas de la señal en la fila de B serán complementarías a las que se ilustran en esta Figura para la fila B .
311
VB
V(1)=
VDD - Vt
V(1)
VDD / 2
V(0)
V(0)=0
Lectura 1
Lectura 0
t
Línea de palabras
activada
Figura 8.48 Ondas de
Amplificador de
salida activada
v B antes y después de activar el amplificador de salida 12
Examen Riguroso a la Operación del Amplificador de Salida.
En el momento de activar el amplificador de salida, cada uno de sus dos inversores
está operando en la región de transición a VDD / 2 . Entonces, para operación a pequeña
señal, cada inversor se modela usando g mn y g mp , las transconductancias de Qn y Qp
respectivamente, evaluadas a una polarización de entrada de VDD / 2 .Específicamente,
un voltaje Vi a pequeña señal, superpuesto sobre VDD / 2 en la entrada de uno de los
inversores, da lugar a una señal de corriente de salida del inversor de (g mn + g mp )Vi = Gm Vi
____
Esta corriente de salida es entregada a uno de los condensadores, CB o CB . El
voltaje así creado en los terminales del condensador se retroalimenta entonces al otro
inversor, es multiplicado por su Gm , que da lugar a una corriente de salida que alimenta al
otro condensador, y así sucesivamente, en un proceso regenerativo. La retroalimentación
positiva de este lazo significa que la señal alrededor del lazo, y por lo tanto v B y v B__ , crecerá o decaerá exponencialmente (como lo muestra la Figura 8.48), con una constante
de tiempo de (CB / G m ) o (C __ / G m ) ya que supusimos CB = CB__ . Entonces, por ejemplo, en
B
una operación de lectura de 1 obtenemos:
vB =
V DD
2
+ ∆V (1)e
 Gm

 CB

t

,V B ≤V DD
(1.10)
Mientras que en una operación de lectura de 0, tenemos:
vB =
V DD
2
− ∆V ( 0)e
 Gm
 C
 B

t


(1.11)
Al haber obtenido estas expresiones a partir de la operación a pequeña escala, estas
describen el crecimiento (decaimiento) exponencial de v B en forma razonablemente precisa solo para valores cercanos a VDD / 2 . Con todo, se pueden usar para obtener un estimado razonable del tiempo requerido para crear un nivel particular de señal en la fila de bits.
12 Circuitos Microelectrónicos, Sedra – Smith
312
Obtención de Operación Diferencial en RAM Dinámicas.
El anterior amplificador de salida responde a señales de diferencia que aparecen en
filas de bits. Entonces, es capaz de rechazar señales de interferencia que son comunes
amabas filas, como las causadas por acoplamiento capacitivo proveniente de filas de
palabras. Para que este rechazo de modo común sea eficaz, debe tenerse cuidado para
igualar ambos lados del amplificador, tomando en cuenta los circuitos que alimentan cada
lado. Esta es una consideración importante en cualquier intento por hacer que la salida
inherentemente asimétrica de la celda DRAM aparezca diferencial.
Cada fila de bits se divide en dos mitades idénticas. Cada media fila se conecta a la
mitad de las celdas de la columna y a una celda adicional, conocida como celda falsa, teniendo un condensador de almacenamiento CD = CS . Cuando una fila de palabras del lado
izquierdo
se selecciona para lectura, la celda falsa del lado derecho, que es controlada
___
por ∅ D , también se selecciona, y viceversa, entonces, cuando una fila de palabras del
lado derecho se selecciona, la celda falsa sirve como la otra mitad de una celda DRAM
diferencial. Cuando la fila de bits de la mitad izquierda__está en operación, la fila de bits de
la mitad derecha actúa como su complemento (o fila B ) y viceversa.
El funcionamiento del circuito de la Figura 8.49 es el siguiente: las dos mitades de la
fila se precargan a VDD / 2 y sus voltajes se igualan. Al mismo tiempo, los condensadores
de las dos celdas falsas se precargan a VDD / 2 . Entonces
se selecciona una fila de pala____
bras y la celda falsa del otro lado se activa (con ∅ D o ∅ D elevada a VDD ). Por lo tanto la
media fila conectada a la celda seleccionada desarrollará un incremento de voltaje (arriba
de VDD / 2 ) de ∆V(1) o ∆V(0) dependiendo de si se almacena un 1 o un 0 en la celda.
Mientras tanto, la otra mitad de la fila tendrá su voltaje conservado igual al de CD (es decir, VDD / 2 ). El resultado es una señal diferencial de ∆V(1) o ∆V(0) que el amplificador
de salida detecta y amplifica cuando está activado. Como siempre, al término del proceso
regenerativo, el amplificador hará que el voltaje en una mitad de la fila se convierta en VDD
y que en la otra mitad se convierta en 0.
Igualación y
precarga
Celda falsa
izquierda
Ф
Línea 1/2 BK
Línea 1/2 BK
Amplificador
de salida
Celda falsa
derecha
ФD
D
CD
Cs
Líneas de palabras
Cs
Cs
Igualación y
precarga
Cs
CD
Líneas de palabras
Figura 8.49 Circuito para obtener operación diferencial a partir de la celda DRAM asimétrica
13
13 Circuitos Microelectrónicos, Sedra – Smith
313
El Decodificador de Dirección de Fila
Se requiere que el decodificador de dirección de fila seleccione una de las 2M filas de
palabras, en respuesta a una entrada de dirección de M bits. Como ejemplo considere
el caso de que M = 3 y denote los tres bits de dirección A0 , A1 y A2 , y las ocho filas
de palabras W0 ,……..,W7 . Convencionalmente, la W0 de fila de palabra será alta cuando
A0 = 0 , A1 = 0 y A2 = 0 , por lo que podemos expresar W0 como una función de Bool de
A0 , A1 y A2 :
__
__
__
W0 = A0 A1 A2 = A0 + A1 + A2
(1.12)
Por lo tanto, la selección de W0 puede ser efectuada por una compuerta NOR de tres
entradas cuyas tres entradas se conecten a A0 , A1 y A2 , y cuya salida se conecte a la
fila de palabras 0. La fila de palabras W3 será alta cuando A0 = 1 , A1 = 1 y A2 = 0 , y
___
____________________
___
___
W3 = A0 A1 A2 = A0 + A1 + A2
(1.13)
realizada por una compuerta NOR de
En consecuencia la selección de W3 puede__ser
___
_
tres entradas, y que estas estén conectadas a A 0 , A1 y A 2 y cuya salida esté conectada
a la fila 3 de palabras. En esta forma podemos ver que este decodificador de dirección
se puede construir con ocho compuertas NOR de tres entradas. Cada compuerta NOR
es alimentada con la apropiada combinación de bits de dirección y sus complementos,
correspondientes a la fila de palabras a la cual está conectada su salida.
Un método sencillo para construir estas funciones NOR lo constituye la estructura de
matriz como se muestra en la Figura 8.50.
VDD
ФP
Fila 0
ФP
Fila 1
ФP
Fila 2
ФP
Fila 3
ФP
A2
A2
A1
A1
A0
A0
Dirección de fila
Figura 8.50 Decodificador de dirección NOR en forma de circuito
14 Circuitos Microelectrónicos, Sedra – Smith
314
14
Este circuito es dinámico, donde cada fila de renglones tiene unido un dispositivo de
canal p que se activa antes de proceso de decodificación mediante el uso de la señal de
control de precarga ∅ P . Durante la precarga ( ∅ P baja), todas las filas de palabras son elevadas a VDD . Se supone que, en este punto, los bits de entrada de dirección todavía no se
aplican y todas las entradas son bajas; de aquí que no haya necesidad para que el circuito
incluya el transistor de evaluación utilizado en compuertas lógicas dinámicas. Entonces, la
operación de decodificación comienza cuando se aplican los bits de dirección y sus complementos. Observe que los transistores NMOS están situados de modo que las filas de
palabras no seleccionadas se descargarán. Para cualquier combinación de entrada, sólo
una fila de palabras no se descargará y por lo tanto su voltaje permanecerá alto en VDD .
___
___
De igual manera, la fila 3 tiene transistores conectados a A , A1 y A2 , y así será
0
alto cuando A0 = 1 , A1 = 1 y A2 = 0 , y así sucesivamente. Una vez que las salidas del
decodificador se estabilizan, las filas de salida se conectan a las filas de palabra de la distribución, por regla general a través de compuertas de transmisión controladas por reloj.
Este decodificador se conoce como decodificador NOR. Es importante anotar que debido
a la operación de precarga, el circuito decodificador no disipa potencia estática.
El Decodificador de Dirección de Columna
La función del decodificador de dirección de columna es conectar una de las filas de
2 bits a la fila de datos de I/O del chip. Entonces, es un multiplexor y se puede poner en
práctica usando circuitos lógicos de transistor de paso, como se muestra en la Figura 8.51.
N
Líneas de bits
B0
AM+N-1
Decodificador NOR
Dirección de
columna
de N bits
By-1
0
AM
AM+1
B1
1
Multiplexor
de transitor
de paso
2N-1
Datos de entrada/ salida
Figura 8.51 Decodificador de columna construido por una combinación de un decodificador NOR y un
multiplexor de transistor de paso 15
Aquí cada fila de bits está conectada a la fila de datos de I/O por medio de un transistor MOS. Las compuertas de los transistores de paso están controladas por filas 2N , una
de las cuales es seleccionada por un decodificador NOR semejante a la empleada para
decodificar la dirección de fila.
Una construcción alternativa del decodificador de columna que utiliza un pequeño
número de transistores (pero a cambio de una velocidad de operación más lenta), se
15 Circuitos Microelectrónicos, Sedra – Smith
315
muestra en la Figura 8.52. Este circuito, que se conoce como decodificador de árbol, tiene una estructura sencilla de transistores de paso. Desafortunadamente, dado que puede
existir un número relativamente grande de transistores en la trayectoria de señales, la resistencia de las filas de bits aumenta y la velocidad se reduce de modo correspondiente.
Líneas de bits
B0
A0
B1
A0
A0
A0
B3
B2
A0
A1
A1
B6
B3
B4
A0
A0
A1
B7
A0
A1
A2
A2
Datos de entrada/salida
Figura 8.52 Decodificador de columna en árbol
16
Memoria de Solo Lectura (ROM)
U
na ROM es una memoria que contienen patrones fijos de datos. Una de sus
aplicaciones es en microprocesadores en donde se utiliza para almacenar
instrucciones del programa de sistema operativo, y es útil para este tipo de
aplicaciones ya que no es volátil (retiene su contenido cuando se apaga la
fuente de alimentación).
Una ROM se puede ver como un circuito lógico combinacional para el cual la entrada
es el conjunto de bits de dirección de la ROM y la salida es el conjunto de bits de datos
recuperados desde la ubicación dirigida. Este punto de vista lleva a la aplicación de las
ROM en conversión de códigos, es decir, en el cambio de código de la señal de un sistema (binario, por ejemplo) a otro. Se utiliza conversión de código, por ejemplo, en sistemas
secretos de comunicaciones, donde el proceso se conoce como codificación.
16 Circuitos Microelectrónicos, Sedra – Smith
316
MOS ROM
En la Figura 8.53 se muestra una MOS ROM simplificada de 32 bits (8 palabras x
4 bits). Esta memoria está compuesta por un conjunto de MOSFET de enriquecimiento
cuyas compuertas están conectadas a las filas de palabras, con sus fuentes conectadas
a tierra y sus drenajes a las filas de bits. Cada fila de bits está conectada a la fuente de
alimentación por medio de un transistor de carga PMOS, a la manera de los circuitos lógicos pseudo-NMOS. Un transistor NMOS existe en una celda en particular si ésta está
almacenando un 0; una celda que almacena un 1 no tiene MOSFET. Esta ROM puede ser
considerada como de 8 palabras de 4 bits cada una. El decodificador de fila selecciona
una de las ochos palabras al elevar el voltaje de la correspondiente fila de palabras. Los
transistores de celdas conectados a esta fila de palabras conducirán entonces, reduciendo así el voltaje de las filas de bits (a las que los transistores de la fila seleccionada están
conectados) de VDD a un voltaje cercano al voltaje de tierra (nivel de lógica 0). Las filas de
bits que están conectadas a las celdas (de la palabra seleccionada) sin transistores (es
decir, aquellas que almacenan un 1) permanecerán al voltaje de la fuente de alimentación
(lógica 1) por la acción de los dispositivos PMOS de carga de conexión. En esta forma se
pueden leer los bits de la palabra dirigida.
Una desventaja del circuito ROM de la Figura 8.53 es que disipa potencia estática. Específicamente, cuando se selecciona una palabra, los transistores de esta fila en particular
conducirán corriente estática que es alimentada por los transistores PMOS de carga. La
disipación de potencia estática se puede eliminar por medio de un simple cambio. Más que
conectar a tierra los terminales de la compuerta de los transistores PMOS, se pueden conectar a una fila de precarga ∅ que normalmente es alta. Justo antes de una operación de
lectura, ∅ se reduce (baja) y las filas de bits se precargan a VDD por medio de los transistores PMOS. La señal ∅ de precarga se eleva entonces, y la fila de palabras se selecciona.
Las filas de bits que tienen transistores en la palabra seleccionada se descargan entonces,
indicando así ceros almacenados, mientras que aquellas filas para las que no está presente
un transistor permanecen a VDD , indicando que almacenan números 1.
ROM Programables de Mascarilla
Los datos estudiados antes se determinan en el momento de la fabricación, de acuerdo con las especificaciones del usuario. Este proceso consiste en fabricar circuitos integrados en una oblea de silicio usando una secuencia de pasos de procesamiento que
incluyen fotomáscara, grabado y difusión. Es esta forma, se crea un patrón de uniones
e interconexiones en la superficie de la oblea. Uno de los pasos finales en el proceso de
fabricación consiste en cubrir la superficie de la oblea con una capa de aluminio y luego
se graba de manera selectiva (usando una mascarilla) para eliminar partes de aluminio,
dejando aluminio solo donde se desean las interconexiones. Este último paso se puede emplear para programar (es decir, almacenar un patrón deseado) en una ROM. Por
ejemplo, si la ROM se hace de transistores MOS de enriquecimiento como en la Figura
8.53, entonces se incluyen MOSFET en todas las ubicaciones de bits, pero sólo las compuertas de los transistores en donde se vayan a guardar ceros se conectan a las filas de
palabras; las compuertas en donde se vayan a guardar números 1 no se conectan. Este
patrón está determinando por la mascarilla, que se produce de acuerdo con las especificaciones del usuario.
317
W1
W2
Decodificador de fila
Dirección de palabra
W3
W4
W5
W6
W7
W8
B3
B2
B1
B0
Figura 8.53 Memoria MOS sencilla de solo lectura organizada como 8 palabras x 4 bits
17
Las ventajas económicas del proceso de programación con mascarilla deben ser obvias: todas las ROM se fabrican de modo semejante; los diseños personalizados se presentan durante uno de los pasos finales de fabricación.
ROM Programables (PROM y EPROM)
Las PROM son ROM que pueden ser programadas por el usuario, pero solo una vez.
En un diseño típico utilizado en las BJT PROM se emplean fusibles de polisilicio para
conectar el emisor de cada BJT a la correspondiente fila de dígito. Dependiendo del contenido deseado de una celda ROM, el fusible se puede dejar intacto o quemarse con una
elevada corriente. El proceso de programación, obviamente, es irreversible.
17 Circuitos Microelectrónicos, Sedra – Smith
318
Una ROM programable que se puede borrar, o EPROM, es una ROM que puede ser
borrada y reprogramada tantas veces como el usuarios desee, con lo que es el tipo más
adaptable de memoria de sólo lectura; pero debe observarse que el proceso de borrado
y reprogramación es lento y puede realizarse pero no con frecuencia.
Las EPROM más avanzadas utilizan variantes de la celda de memoria cuya sección
transversal se muestra en la Figura 8.54(a). La celda es básicamente un MOSFET de
canal n del tipo de enriquecimiento con dos compuertas hechas de material de polisilicio.
Una de las compuertas no está eléctricamente conectada a ninguna otra parte del circuito, mas bien, se deja flotando y apropiadamente recibe el nombre de compuerta flotante.
La otra compuerta, que se denomina compuerta selectiva, funciona en la misma forma
que la compuerta de un MOSFET normal de enriquecimiento.
Compuerta
Selectiva
Si
Óxido
Si
Compuerta
Sflotante
Dren n+
D
Fuente n+
Sustrato de silicio tipo p
(a)
Compuerta
selectiva
S
(b)
Figura 8.54 Transistor MOS, (a) Sección transversal y (b) símbolo de circuito del transistor de compuerta
flotante usada como celda EPROM
El transistor MOS de la de la Figura 8.54 se conoce como transistor de compuerta flotante. En el símbolo que lo acompaña, la línea interrumpida denota la compuerta flotante.
La celda de memoria se conoce como celda de compuerta apilada.
La operación del transistor de compuerta flotante, parte del hecho de que antes de
programar la celda no existía carga en la compuerta flotante y el dispositivo opera como
MOSFET normal de enriquecimiento de canal n. Por lo tanto, exhibe la curva característica iD − VGS es la que se observa en la Figura 8.55(a) y se dice que almacena un 1.
319
iD
Programado (0)
No programado (1)
(b)
(a)
0
‫ט‬GS
Voltaje de salida
Figura 8.54 Ilustración del desplazamiento de la curva característica iD − VGS de un transistor de compuerta flotante como resultado de una programación 18
Para programar el transistor de compuerta flotante, se aplica un elevado voltaje (16 a
20V) entre su drenaje y fuente. Simultáneamente, se aplica un elevado voltaje (unos 25V)
a su compuerta selectiva. En la Figura 8.56 se muestra el MOSFET de compuerta flotante
durante la programación. En ausencia de carga alguna en la compuerta flotante, el dispositivo se comporta como MOSFET normal de enriquecimiento de canal n. Se crea una
capa (canal) de inversión de tipo n en la superficie de la oblea como resultado del elevado
voltaje positivo aplicado a la compuerta selectiva. Debido al elevado voltaje positivo en el
drenaje, el canal tiene una forma ahusada.
+25V
Compuerta
Selectiva
+16V
Óxido
Canal n
Dren n+
Fuente n+
Capa de agotamiento
Sustrato p
Figura 8.55 Transistor de compuerta flotante durante una programación
18 Circuitos Microelectrónicos, Sedra – Smith
320
El voltaje entre drenaje y fuente acelera electrones a través del canal. A medida que
estos electrones llegan al extremo del drenaje del canal, adquieren energía cinética suficientemente grande y se conocen como electrones calientes. El elevado voltaje positivo
en la compuerta selectiva (mayor que el voltaje de drenaje) establece un campo eléctrico
en el óxido aislante. Este campo eléctrico atrae los electrones calientes y los acelera
hacia la compuerta flotante. En esta forma se carga la compuerta flotante y la carga que
acumula queda atrapada.
Afortunadamente, el proceso de carga de la compuerta flotante es autolimitante. La carga negativa que acumula en la compuerta flotante reduce la intensidad del campo eléctrico
en el óxido al punto que finalmente es incapaz de acelerar más electrones calientes.
La carga negativa atrapada en la compuerta flotante hará que los electrones sean
repelidos de la superficie del sustrato. Esto implica que para formar un canal, el voltaje
positivo que tiene que ser aplicado a la compuerta selectiva tendrá que ser mayor que la
requerida cuando la compuerta flotante no está cargada. En otras palabras, el voltaje de
umbral Vt del transistor programado será más alto que el del dispositivo no programado.
De hecho la programación hace que la curva característica iD − VGS se desplace a la mostrada en la Figura 8.55(b). En este estado, conocido como estado programado, se dice
que la celda está almacenado un 0.
Una vez programado, el dispositivo de compuerta flotante retiene su curva característica iD − VGS desplazada incluso cuando la fuente de alimentación se apague. De hecho,
resultados experimentales extrapolados indican que el dispositivo puede permanecer en
el estado programado hasta por 100 años.
Leer el contenido de la celda de compuerta apilada es fácil: un voltaje VGS situado
entre valores bajo y alto de umbral se aplica a la compuerta selectiva. Mientras que un
dispositivo programado (el que almacena un 0) no conduce, un dispositivo no programado (el que almacena 1) conduce densamente.
Para regresar el MOSFET de compuerta flotante a su estado no programado, la carga
almacenada en la compuerta flotante tiene que regresar al sustrato. Este procedimiento
de borrado se efectúa iluminando la celda con luz ultravioleta durante un tiempo especificado, esta se encarga de impartir la suficiente energía fotónica a los electrones atrapados, permitiéndoles vencer la inherente barrera de energía y por lo tanto ser transportados por el óxido, de regreso al sustrato. Para permitir este proceso de borrado, el paquete
EPROM contiene una ventanilla de cuarzo. Es importante anotar que el dispositivo puede
ser borrado y programado muchas veces.
Una ROM programable adaptable es la PROM borrable eléctricamente (EEPROM).
Como su nombre lo indica, una EEPROM se puede borrar y reprogramar eléctricamente
sin necesidad de iluminación ultravioleta. Las EEPROM utilizan una variante del MOSFET de compuerta flotante.
321
CAPÍULO
9
Lógica Dinámica en
CMOS
Introducción
L
a lógica dinámica o también llamada lógica sincronizada es una metodología de
diseño en los circuitos lógicos CMOS digitales que fue muy popular en los años
setenta y en los últimos años ha resurgido en el diseño de circuitos digitales de
alta velocidad. La lógica dinámica se distingue de la llamada lógica estática en
el sentido que utiliza una señal de reloj en la implementación de circuitos lógicos combinacionales, es decir, los circuitos lógicos en los que la salida es una función sólo de
la entrada actual. El habitual uso de una señal del reloj es para sincronizar las transiciones en circuitos de lógica secuencial, y para la mayoría de las implementaciones de
lógica combinacional, una señal de reloj no es ni siquiera necesaria.
Lógica estática versus lógica dinámica
L
a mayor diferencia entre lógica estática y lógica dinámica es que en la lógica
dinámica una señal de reloj es usada para evaluar la lógica combinacional.
En un circuito lógico estático, cada nodo tiene en todo momento una trayectoria
de baja resistencia a V dd o tierra. Por esta razón el voltaje de cada nodo está
bien definido en todo momento y ningún nodo se deja flotando. Los circuitos estáticos no
necesitan relojes (es decir señales de tiempo periódicas) para su operación, aunque los
relojes pueden estar presentes para otros propósitos. En contraste los circuitos lógicos
dinámicos a punto de ser analizados dependen del almacenamiento de voltajes de señal
en capacitancias parásitas ubicadas en ciertos nodos del circuito. Como la carga se escapará con el tiempo, los circuitos tienen que ser refrescados periódicamente; por tanto, es
esencial la presencia de un reloj con cierta frecuencia mínima especificada. En la lógica
dinámica la salida se tomará alta o baja durante distintas partes del ciclo de reloj.
Aunque la lógica CMOS estática es ampliamente utilizada por sus elevados márgenes
ruido y la relativa facilidad de diseño, tiene la limitación de que a elevadas frecuencias
pierde sus ventajas. Para aplicaciones de circuitos que requieren las más altas velocidades
posibles, es aquí donde la lógica dinámica CMOS cuenta con numerosas ventajas frente
a la estática CMOS, incluyendo no sólo el desempeño a altas velocidades, sino también la
reducción significativa de la superficie. Sin embargo las ventajas no vienen sin un costo, ya
que debido a la naturaleza de la lógica dinámica CMOS, pueden aparecer efectos indeseados en el circuito lo cual requiere un esfuerzo adicional en el diseño de ingeniería.
Los dispositivos estáticos tienen intrínsecamente más componentes y transistores sincronizados que los dispositivos dinámicos. Un latch completo, por ejemplo, en su configuración tradicional requiere de 66 transistores mientras que en una configuración dinámica
325
puede requerir solo de 36 transistores. El número de transistores usados para construir un
flip flop es reducido al utilizar la lógica dinámica a diferencia de la estática. Reducir el número total de transistores no sólo permite que el dispositivo general sea significativamente
menor en tamaño, sino que también reduce los requisitos de alimentación del sistema.
La combinación de circuitos de lógica estática y dinámica puede producir una mejora del rendimiento en una variedad de funciones útiles, tales como latches, flip flops
y latches diferenciales.
La combinación de bloques de precarga con bloques de no precarga se denomina
lógica combinacional.
Principio Básico
E
l entendimiento de los principios básicos de lógica dinámica CMOS comienza como primer paso por un entendimiento de las propiedades básicas de
los dispositivos MOSFET, así como las características de lógica estática y
pseudo-NMOS. Debido a la estructura interna de dispositivos MOSFET, una
capacitancia bien calculada puede ser asociada a través de todas las combinaciones
posibles de las terminales de la compuerta, el drenaje, la fuente, y el cuerpo. Cuando la
carga es aplicada a estas capacitancias, las correspondientes terminales tendrán subidas de voltaje, y cuando la carga es quitada, las terminales tendrán un decaimiento en
la tensión, por lo cual se podría modelar como un condensador. Modelar los terminales
MOSFET como condensadores, es útil para explicar los voltajes y corrientes asociadas
con los MOSFETs en un circuito complejo.
Los MOSFETs son caracterizados por sus tres modos de operación: corte, activo,
y saturado. Sin embargo, durante el flujo de la corriente por el dispositivo, para ambos
modos activo y saturado, es útil considerar el MOSFET como encendido en estado de
conducción o apagado cuando ninguna corriente fluye. Para un NMOS, el dispositivo está
encendido cuando la tensión entre la compuerta y la fuente (VGS ) es mayor que la tensión de umbral del dispositivo, VT . Para este documento, las entradas de las compuertas
MOSFET podrían ser alto o bajo, V DD o GND respectivamente. Por lo tanto, en el PMOS
si la fuente está conectada a V DD , el PMOS sólo estará encendido si la compuerta esta en
baja tensión. Del mismo modo, si la fuente NMOS está conectado a GND, el NMOS sólo
se activa cuando la compuerta de tensión esta en alta tensión.
En la lógica estándar CMOS, un dispositivo PMOS complementa siempre un dispositivo NMOS. La modificación de esta lógica para que un menor número de dispositivos
PMOS sean necesarios mejora enormemente el rendimiento del circuito. Un método para
reducir el número de dispositivos PMOS en el circuito es usar lo que se denomina lógica
pseudo-NMOS, que en lugar de utilizar un PMOS para cada dispositivo NMOS, utiliza
326
un solo dispositivo PMOS como una carga para todos los demás NMOS. Dado que la
tensión en la compuerta del PMOS está siempre en GND, entonces el dispositivo PMOS
está siempre encendido. La salida después del circuito pseudo-NMOS es selectivamente
descargada a GND a través de la lógica NMOS. Mientras los dispositivos NMOS están en
el estado encendido forman un pull down hacia GND y el dispositivo PMOS está siempre
ON, habrá algunas veces durante el funcionamiento del circuito donde el camino se forma
a partir de V DD a GND. La lógica pseudo-NMOS debe ser sensible con el fin de reducir
al mínimo la disipación de potencia. En otras palabras, el PMOS debe ser «débil» o tan
pequeño como para tener la menor capacitancia asociada con el dispositivo.
Ahora teniendo cierto entendimiento de las propiedades básicas de los dispositivos MOSFET, se empezará a explicar la estructura básica de los circuitos lógicos MOS dinámicos. La
Figura 9.1 muestra la compuerta lógica dinámica básica, que se compone de una red de circuitos lógicos NMOS o de polarización a nivel lógico bajo (PDN). En esta estructura se tienen
dos conmutadores en serie que son operados periódicamente por la señal de reloj CLK o ∅ ,
dependiendo de la nomenclatura, cuya forma de onda se muestra en la Figura 9.2.
VDD
Φ
QP
y
CL
A
B
C
PDN
Φ
Qc
Figura 9.1 Estructura básica de circuitos lógicos MOS dinámicos1
Φ
Precarga
Evaluar
VDD
0
t
Figura 9.2 Forma de onda del reloj requerido para operar el circuito lógico dinámico
2
1 Sedra A.S., Smith K.C., Microelectronic Circuits. 5th ed., Sanders Publishing.
2 Sedra A.S., Smith K.C., Microelectronic Circuits. 5th ed., Sanders Publishing.
327
Cuando ∅ se encuentra en un nivel bajo, Q P se activa y se dice que el circuito está
en fase de inicio o precarga. Cuando ∅ se encuentra en un nivel alto, Q P se desactiva y
Qe se activa, y el circuito se encuentra en la fase de evaluación. A la salida se encuentra
C L que denota la capacitancia total entre salida y tierra.
Durante la precarga, Q P conduce y carga la capacitancia C L de modo que al final del
intervalo de precarga el voltaje en la salida Y es igual a V DD . También durante la precarga
se permite que las entradas A, B y C cambien y se asienten en sus valores apropiados.
Se puede observar que como Qe está desactivado, no existe trayectoria a tierra.
Durante la fase de evaluación Q P se desactiva y Qe se activa. Ahora, si la combinación
de entrada es una que corresponde a una salida alta, la lógica del circuito NMOS o PDN
no conduce (justo como en una compuerta CMOS complementaria) y la salida permanece alta en V DD . Por otra parte, si la combinación de entradas es una que corresponde a
una salida baja, los transistores NMOS apropiados en la PDN conducirán y establecerán
una trayectoria entre el nodo de salida y tierra a través del transistor activo Qe . Por tanto,
C L se descargará a través del PDN y el voltaje en el nodo de salida se reducirá a 0V.
Como ejemplo se muestra la función Y = A + BC en la Figura 9.3. La determinación del
tamaño de los transistores de la red PDN con frecuencia sigue el mismo procedimiento que
se emplea en el diseño de los CMOS estáticos. Para Q P se elige un cociente W/L suficientemente grande para garantizar que C L se cargará por completo durante el intervalo de
precarga. Sin embargo, el tamaño de Q P deberá ser pequeño de modo que la capacitancia
C L no se incremente de manera significativa. Ésta es una forma sin relación de lógica MOS,
en la que los niveles de salida no dependen de los cocientes W/L de los transistores.
VDD
Φ
QP
y= A + BC
B
A
C
Φ
Qc
Figura 9.3 Circuito de ejemplo 3
3 Sedra A.S., Smith K.C., Microelectronic Circuits. 5th ed., Sanders Publishing.
328
Efectos no ideales
A continuación se explicará brevemente algunas fuentes de operación no ideal de
circuitos lógicos dinámicos.
Márgenes de ruido
Considerando a NM H y NM L los márgenes de ruido de una familia de circuitos lógicos, con NM H ≡VOH −V IH y NM L ≡V IL −VOL , de acuerdo a la curva característica de transferencia de voltaje (VTC) de un inversor lógico (Figura 9.4).
VO
Pendiente = -1
VOH
Pendiente = +1
VM
Pendiente = -1
VMH
VML
VOL
0
VOL
VIL
VM VIH
VOH
Vt
Figura 9.4 Característica de transferencia de voltaje de un inversor lógico
4
Durante la fase de evaluación los transistores NMOS comienzan a conducir con
v I =Vtn , entonces:
V IL ≅V IH ≅Vtn
(1.1)
Y por tanto los márgenes de ruido para este caso serán:
NM L =Vtn
NM H =V DD −Vtn
(1.2)
(1.3)
4 Sedra A.S., Smith K.C., Microelectronic Circuits. 5th ed., Sanders Publishing.
329
De esta forma, los márgenes de ruido están lejos de ser iguales y NM L es más bien
bajo. Aunque NM H es alto, otros efectos no ideales reducen su valor, como se verá en
breve. Sin embargo se puede observar que el nodo de salida es uno de alta impedancia
y por tanto será susceptible a la captación de ruido y otras perturbaciones.
Decaimiento del voltaje de salida provocada por efectos de fuga
Si no existiera una trayectoria a tierra a través de la red PDN, idealmente el voltaje
de salida permanecerá alto en V DD . Sin embargo, esto se basa en la suposición de que
la carga C L permanecerá intacta. En la práctica existirá corriente de fuga que hará que
C L se descargue lentamente y que el voltaje de salida V y disminuya. La principal fuente
de fugas es la corriente opuesta de la unión inversamente polarizada entre la difusión de
drenaje de los transistores que están conectados al nodo de salida y el sustrato. Tales
−15
corrientes pueden estar del orden de 10−12 A a 10 A y se incrementan rápidamente con
la temperatura (casi se duplican con cada 10ºC de elevación de temperatura). Por tanto
el circuito puede funcionar en forma defectuosa si el reloj opera a muy baja frecuencia y
el nodo de salida no es “refrescado” periódicamente.
Carga Compartida
La Figura 9.5 explica otra forma en que C L puede perder parte de su carga y por tanto
hacer que V y decrezca de manera importante por debajo de V DD .
VDD
Φ=VDD
QP
0
Y
iD1
VDD
CL
Q1
iD1
C1
0
0V
Q2
Figura 9.5 Carga Compartida 5
5 Sedra A.S., Smith K.C., Microelectronic Circuits. 5th ed., Sanders Publishing.
330
En la Figura 9.5 se pueden ver solo Q1 y Q 2 , los dos transistores superiores de la PDN,
junto con el transistor de precarga Q P . En este caso C 1 es la capacitancia entre el nodo común de Q1 y Q 2 y tierra. Al principio de la fase de evaluación, una vez que Q P se desactiva
y C L se carga a V DD , se supone que C 1 inicialmente esta descargada y que las entradas
son tales que en la compuerta de Q1 se tiene una señal alta, mientras que en la compuerta
de Q 2 la señal esta baja. Es fácil ver que Q1 se activará y que su corriente de drenaje i D 1
fluirá como se indica. Por tanto, i D 1 descargará a C L y cargará a C 1 . Aunque a la larga i D 1
se reducirá a cero, C L habrá perdido algo de su carga, la cual habrá sido transferida a C 1 .
Para reducir al mínimo este efecto, un método sería agregar un dispositivo de canal
p que conduzca continuamente una pequeña corriente para reponer la carga perdida por
C L , como se muestra en la Figura 9.6.
VDD
Φ
QP
QL
Y
CL
Figura 9.6 a adición de un transistor Q L permanentemente activo soluciona el problema de carga compartida a expensas de la distribución de potencia estática 6
La adición de este transistor bajará el nivel de impedancia del nodo de salida y lo
hará menos susceptible al ruido, al tiempo que resolverá los problemas de fugas y de
distribución de carga. Otro método es precargar los nodos internos, es decir, precargar
el capacitor C 1 , con lo cual el precio que se paga, es el incremento de la complejidad del
circuito y de las capacitancias de nodo.
Compuertas lógicas dinámicas conectadas en cascada
Si se intenta conectar en cascada las compuertas lógicas dinámicas surge un gran
problema. Considere la situación que se ilustra en la Figura 9.7, donde dos compuertas
dinámicas de una sola entrada están conectadas en cascada. Durante la fase de precarga C L 1 y C L 2 se cargarán a través de Q P 1 y Q P 2 , respectivamente. Por tanto al final
del intervalo de precarga se tiene v y 1 =V DD y v y 2 =V DD . A continuación considere lo que
sucede en la fase de evaluación para el caso de entrada A alta. Obviamente, el resultado correcto será Y1 bajo v y 1 = 0 y Y2 alto v y 2 =V DD . Sin embargo lo que sucede es un
poco diferente. Conforme comienza la fase de evaluación, Q1 se activa y C L 1 comienza
6 Sedra A.S., Smith K.C., Microelectronic Circuits. 5th ed., Sanders Publishing.
331
a descargarse, sin embargo, al mismo tiempo, Q 2 se activa y C L 2 también comienza a
descargarse. Solo cuando v y 1 decae por debajo de Vtn , Q 2 se desactivará. Sin embargo,
por desgracia, en ese momento C L 2 habrá perdido una cantidad significativa de su carga
y v y 2 será menor que el valor esperado de V DD (aquí es importante señalar que en la lógica dinámica una vez que la carga se pierde no puede ser recuperada). Este problema
es lo suficientemente serio para hacer que la conexión en cascada sea una proposición
impráctica, no obstante, se han propuesto varios esquemas para posibilitar la conexión
en cascada en circuitos lógicos
dinámicos.
VDD
VDD
Φ
QP1
Φ
QP2
Y1
A
Q1
Φ
QC1
Y2
CL1
Q2
Φ
CL2
QC2
Figura 9.7 Dos compuertas lógicas de dos entradas simples conectadas en cascada. Con la entrada A
alta, durante la fase de evaluación CL2 se descargará en parte y la salida Y2 caerá por debajo de VDD lo
que puede provocar un funcionamiento lógico defectuoso 7
Tipos de Lógica CMOS dinámica
Lógica PSEUDO NMOS
La lógica pseudo-NMOS está basada en el hecho de usar solamente transistores
NMOS al implementar bloques usando sólo un transistor PMOS. El desarrollo de este tipo
de lógica se dio a razón de mejorar la lógicas existentes de transistores NMOS de enriquecimiento y NMOS de agotamiento, ya que si bien, éstas posibilitaban que el proceso
de fabricación fuera más sencillo que el de CMOS y permitían la realización de sistemas
completos en NMOS, tenían desventajas como el alto consumo de potencia estática y los
pequeños márgenes de ruido. También se desarrolló con el objetivo de trabajar conjuntamente con los circuitos CMOS complementarios y mejorar algunas de sus características
como el número de transistores, mas no para remplazar este otro tipo de lógica. En la
7 Sedra A.S., Smith K.C., Microelectronic Circuits. 5th ed., Sanders Publishing.
332
Figura 9.8 se muestra el esquema del inversor lógico pseudo-NMOS, el transistor Q N se
activa por el voltaje de entrada CLK1, mientras que el transistor Q P se comporta como
una carga activa para Q N ,de aquí el nombre de pseudo-NMOS. Podemos observar que
una gran ventaja de esta configuración es que para agregar entradas adicionales solo se
deben poner más transistores NMOS sin necesidad de su complemento, con esto reduciremos los tiempos de propagación que aparecen por la convergencia de las compuertas
CMOS complementarias.
source
QP
gate
pmos
drain
Out
drain
clk1
QN
gate
nmos
source
Figura 9.8 Inversor pseudo-NMOS
Características estáticas
Las características estáticas para el inversor pseudo-NMOS se pueden deducir de
una forma similar a las de la lógica CMOS, podemos observar que las corrientes de drenaje para ambos transistores, con v l = CLK 1 y v 0 = out 1 , están dadas por:
1
2
i ÐÐÐ = k (v −V
)
2

, parav 0 ≥ v −V ( saturación )

1
i ÐÐÐ = k (v −V ) *v 0 − v 02  , parav 0 ≤ v −V (triodo )
2


1
2
i ÐÐÐ= k (V
−V
)
2

, parav 0 ≤V ( saturación )
1
2
2
(1.5)
(1.6)

i DP = k p (V DD −Vt ) * (V DD −v 0 ) − (V DD −v 0 )  , parav 0 ≥Vt (triodo )

(1.4)

(1.7)
'
Con la suposición que Vtn = −Vtp =Vt y empleando k n = k n' (W / L ) y k p = k p (W / L )
para simplificar los cálculos.
Para obtener la curva de transferencia de voltaje (VTC) del inversor, se grafican las
ecuaciones entre los valores extremos de la alimentación, en la Figura 9.9 están superpuestas las ecuaciones para las regiones tríodo y saturación de los respectivos transistores.
333
Vi = VDD
iDN ,iDP
Curva de carga
i estática
E
Vi = 0
A
VOL
VDD - Vt
Vt
VDD
Vo
Figura 9.9 Construcción gráfica para determinar la curva característica de transferencia de voltaje del inversor
8
Observando primero el caso en que v l = 0 , Q N se encuentra en región de corte, mientras que Q P opera en la región de tríodo. El inversor trabajará en el punto A de la Figura
9.9. La corriente estática es cero y la disipación de potencia estática también. Cuando
v l =V DD , el inversor opera en el punto E de la Figura 9.9, de acuerdo a esto VOL no es
cero, sino que es un valor un poco mayor que cero, por lo cual la salida conducirá una
corriente y habrá una disipación de potencia estática significante.
Características dinámicas
Para obtener las características dinámicas del inversor se trabaja igual que con el
inversor CMOS, se pone una carga capacitiva a la salida, la cual se carga con la corriente del transistor PMOS i dp y se determina el tiempo de subida t PLH . En pseudo-NMOS
el caso de la descarga es distinto, ya que a la corriente del transistor NMOS se le debe
restar la corriente del PMOS que siempre está presente, y para este tipo de lógica los
tiempos de subida y de bajada serán distintos, es decir su forma de onda será asimétrica
debido a que las ecuaciones que relacionan los tiempos dependen de los valores de fabricación k p y k n , los cuales guardan entre si una relación de escala r , que es la relación
que también van a guardar los tiempos de subida y de bajada siendo t PLH r veces más
grande que t PHL .
Curva de transferencia de voltaje (VTC)
En la Tabla 9.1 y la Figura 9.10 se pueden observar las diferentes regiones de la curva
VTC, dependiendo del modo de funcionamiento de los transistores, y las condiciones con
que se dan cada una de las regiones. Deduciremos algunas expresiones para las cuatro
regiones de la VTC basándonos en la Tabla 9.1 y las ecuaciones (1.4) a (1.7) de las corrientes de drenaje para ambos transistores.
8 Sedra A.S., Smith K.C., Microelectronic Circuits. 5th ed., Sanders Publishing.
334
Región
QN
Corte
QP
Condición
I
Segmento de
VTC
AB
Triodo
II
BC
Saturación
Triodo
III
CD
Triodo
Triodo
v 0 ≥ v l −Vt
IV
DE
Triodo
Saturación
Tabla 9.1 Regiones de operación del inversor pseudo-NMOS 9
Vo
Región l
VOH
A
B
v l <Vt
Vt ≤ v 0 ≤ v l −Vt
v 0 ≤Vt
Región ll
Pendiente = -1
4
Pendiente = +1
(Vo = Vi)
3
Región lll
2
C
1
Región lV
D
VOL
0
E
Pendiente = -1
VOL
Vt
VIL
2
VM
VIH
3
4
5
Vi
VOH = VDD
Figura 9.10 Curva característica de transferencia de voltaje para el inversor pseudo-NMOS.
Curva trazada para V dd = 5V , Vtn =Vtp = 1 , r = 9
Región I: entre los puntos A y B tenemos que:
v 0 =V 0H =V DD
(1.8)
Región II: entre los puntos B y C, igualamos i DN en saturación con i DP en triodo, y
sustituyendo k n = rk p , obtenemos que
v 0 =Vt + (V DD −Vt ) − r (v i −Vt )
2
2
(1.9)
El valor de V IL se obtiene al diferenciar esta ecuación y sustituir ∂V 0 / ∂V i = −1 y v i =V IL
9 Sedra A.S., Smith K.C., Microelectronic Circuits. 5th ed., Sanders Publishing.
335
V DD −Vt
V IL =Vt +
(1.10)
r ( r + 1)
El voltaje de umbral V M (o Vumbral ) es por definición el valor de v i con el cual
v 0 =v i
V M =Vt +
V DD −Vt
(1.11)
( r + 1)
Por último, el extremo de segmento de la región II (punto C) se encuentra sustituyendo v 0 = v i −Vt en la ecuación (1.9), la condición para que QN abandone la
saturación y pase a región tríodo.
Región III: entre los puntos C y D, tenemos una sección muy corta que no es
relevante. El punto D se caracteriza como v 0 ≤Vt
Región IV: entre los puntos D y E, igualamos i DN en triodo con i DP en saturación y sustituimos k n = rk p , obtenemos
v 0 = (v i −Vt ) −
(v
i
1
−Vt ) −
(V
r
2
−Vt )
2
DD
−Vt )
2
(1.12)
El valor de V IH se puede determinar al diferenciar esta ecuación y establecer
∂V 0 / ∂V i = −1
V IH =Vt +
3r
(V
DD
(1.13)
El valor de VOL se halla sustituyendo v i =V DD en la ecuación (1.12),

1
VOL = (V DD −Vt ) 1 − 1 − 
r 

(1.14)
La corriente estática que conduce el inversor en el estado de salida baja se
encuentra con la ecuación (1.6)
1
2
I stat = k p (V DD −Vt )
(1.15)
2
Por último, se utilizan las ecuaciones (1.10) y (1.14) para determinar N ML y las
ecuaciones (1.8) y (1.13) para determinar N MH ,

N ML =Vt − (V DD −Vt ) 1 − 1 −


336
1
r
−


r ( r + 1) 

1
(1.16)

N MH = (V DD −Vt )  1 −

2 

3r 
(1.17)
Finalmente se observa que puesto que la tecnología de proceso determina V DD
y Vt , el único parámetro para controlar los valores de VOL y los márgenes de ruido
es la relación r . Generalmente este factor está entre 4 y 9, siendo r = k n / k p .
Reglas básicas de diseño en la lógica Pseudo NMOS
Para el diseño necesitamos escoger los valores de r y la (W/L) para uno de los
transistores. Los parámetros de diseño más importantes son VOL , N ML , N MH , I stat , PD ,
t PLH y t PHL . En este tipo de diseño lo primero que se hace es escoger la razón r , la
cual determina todos los puntos de inflexión de la curva VTC, entre más grande sea
r menor será VOL y mayores los márgenes de ruido, sin embargo, si la r es muy
grande, aumenta la asimetría de la respuesta dinámica. Por lo general se escoge
una r de 4 a 10. Una vez elegida r , seleccionamos (W / L )n o (W / L )p . La escogencia de uno u otro de estos parámetros conlleva a características diferentes, si
escogemos un (W / L )n pequeño podemos conservar un valor pequeño de área de
la compuerta y obtener un valor pequeño para C . Si escogemos un (W / L )p pequeño podemos conservar bajas la I stat y la PD . Para aplicaciones de alta velocidad se
escoge un (W / L )p de modo que I stat se encuentre entre 50µA y 100µA. Al contrario
que en CMOS, los distintos niveles de tensión vienen marcados por la relación de los
tamaños de los transistores NMOS y PMOS. Esta relación es de forma aproximada:
VOL ≈
Compuertas características
µ pW p
µnW n
V Saturación del PMOS
(1.18)
Inversor
El esquema es el mismo de la Figura 9.8. Las relaciones de los transistores son
(W / L )p = 2 y (W / L )n = 12 .
En el resultado de las características estáticas (Figura 9.12) se puede ver, como
habíamos estudiado antes, que el nivel bajo a la salida no es cero sino aproximadamente 1V (hecho así para exagerar el efecto de pseudo-NMOS), lo que nos lleva a
un consumo de potencia estática. En las características dinámicas vemos que los
tiempos de subida son de 19 ps y los de bajada son apenas de 3ps , es decir se
conserva la relación r en los tiempos de propagación como se había dicho.
En la curva VTC correspondiente (Figura 9.13), se observa que el nivel bajo
en la salida si es de un voltio, y que el margen de ruido es muy pequeño para v I .
337
Figura 9.11 Layout del inversor pseudo-NMOS de la Figura 9.8
Figura 9.12 Simulación en Pspice del layout de la Figura 9.11, del inversor, pseudo-NMOS
338
s1
5.00
4.00
3.00
2.00
1.00
Clock1
0.00
0.50 1.00 1.50 2.00 2.50 3.00 3.50 4.00
4.50
Figura 9.13 Curva característica de transferencia de voltaje (VTC), del inversor, pseudo-NMOS
NAND de 3 Entradas
El esquema de la compuerta se observa en la Figura 9.14.
source
gate
pmos
drain
out1
drain
drain
clk1
gate
clk2
clk3
gate
nmos
nmos
source
drain
gate
nmos
source
source
Figura 9.14 Esquema de compuerta NAND de 3 entradas, pseudo-NMOS
Para la construcción del layout de la compuerta, se estableció la relación de los
transistores como (W / L)p = 2 y (W / L)n = 12 (Figura 9.15).
339
Figura 9.15 Layout de compuerta NAND de 3 entradas, pseudo-NMOS
En las características de salida se puede apreciar de nuevo que los niveles
bajos varían pero no llegan a ser cero (Figura 9.16).
Figura 9.16 Simulación en Pspice del layout de la Figura 9.15, compuerta NAND de 3 entradas, pseudo-NMOS
340
NOR de 2 entradas
El esquema de la compuerta se observa en la Figura 9.17
source
gate
pmos
drain
out1
drain
clk1
gate
nmos
source
drain
clk2
gate
nmos
source
Figura 9.17 Esquema de compuerta NOR de 2 entradas
Para la construcción del layout de la compuerta, se estableció la relación de los transistores como (W / L )p = 2 y (W / L )n = 12 (Figura 9.18)
Figura 9.18 Layout de compuerta NOR de 2 entradas, pseudo-NMOS
341
De nuevo es notorio el hecho, pero aun más evidente que el nivel bajo no es cero
(Figura 9.19).
Figura 9.19 Simulación en Pspice del layout de la Figura 9.18, compuerta NOR de 2 entradas, pseudo-NMOS
Implementaciones típicas
Las aplicaciones más útiles de esta tecnología se encuentran en donde la salida se
mantenga la mayor parte del tiempo en un nivel alto.
Amplificador de fuente común con fuente de corriente y carga capacitiva
VDD
IL
Vout
Vin
Q1
CL
Figura 9.20 Amplificador de fuente común con fuente de corriente y carga capacitiva
342
X1
a
X2
c
X1 X2
b
(a)
VDD = 3.3V
VDD = 3.3V
8/0.6
Vblas = 1.65V
Vblas = 1.65V
Q3
Q7
4/0.6
X1
Q1
4/0.6
4/0.6
X2
Q2
Q4
X1 X2
8/0.6
Q5
8/0.6
(b)
Q6
Figura 9.21 XOR de 2 entradas en pseudo-NMOS
PLA (Programmable Logic Array) en pseudo-NMOS
AND Plane
OR Plane
bc
ac
ab
abc
abc
abc
abc
a
b
c
s
Cout
Figura 9.22 PLA en pseudo-NMOS
343
Memoria ROM implementada en pseudo-NMOS
Weak
pseudo-nMOSS
pullups
A1 A0
2:4
DEC
ROM Array
Y5
Y4
Y3
Y2
Y1
Y0
Figura 9.23 Memoria ROM implementada en pseudo-NMOS
Lógica C2MOS (Clocked CMOS Logic)
Este tipo de lógica presenta el esquema básico que se observa en la Figura 9.24,
consistente en la combinación de lógica convencional estática (redes NMOS y PMOS), y
dos transistores, un NMOS y otro PMOS, a la salida de la compuerta.
De acuerdo con la Figura 9.24, cuando el reloj que controla los transistores a la salida
de compuerta, se encuentra en ‘1’, la salida viene determinada por las entradas a la misma
y por la función lógica que implementan las redes de transistores. Una vez la señal de reloj
cambia a ‘0’, los transistores mencionados se ubican en corte, con lo que la salida queda en
alta impedancia y por tanto se memoriza el valor lógico computado anteriormente.
Obviamente, por el esquema mostrado, esta lógica requiere más área que la lógica
estática convencional, además de ser más lenta por la presencia de los transistores mencionados en serie, además de requerir la presencia de la señal de reloj y su complemento.
344
Red PMOS
Clk
Salida
Entradas
Clk
Red NMOS
Figura 9.24 Estructura básica de la lógica C2MOS10
Por todo lo anterior su único uso es formar estructuras con reloj y capacitancias de
memorización que sirvan de interfaz con otras lógicas dinámicas.
Lógica CMOS dinámica de precarga y evaluacuón (PE Logic)
Como su nombre lo indica, en este tipo de lógica primero se realiza la precarga de la
salida hacia V DD mediante un transistor PMOS cuando CLK se encuentra en ‘0’ (fase de
precarga), y después se realiza un proceso de evaluación del valor de la salida a través
de un transistor NMOS, con CLK en ‘1’ (fase de evaluación). Si el valor de la salida debe
ser ‘1’, entonces la red NMOS se debe encontrar en corte, sin existir camino a tierra y el
nodo de precarga permanece en ‘1’, en un estado de alta impedancia. Si la salida debe
ser ‘0’, la red NMOS se debe encontrar en saturación, y el nodo de almacenamiento encuentra un camino a tierra y este se descarga a ‘0’, como era de esperarse. En la Figura
9.25, se muestran dos configuraciones para este tipo de lógica.
Out
Out
Clk
Red NMOS
Red NMOS
Clk
a)
b)
Figura 9.25 Estructura de la lógica PE 11
10 RUBIO A., y otros. Diseño de Circuitos y sistemas integrados. Ediciones de la Universidad Politécnica de Catalunya, SL. Barcelona, 2003. pp 179,180,185
11 RUBIO A., y otros. Diseño de Circuitos y sistemas integrados. Ediciones de la Universidad Politécnica
de Catalunya, SL. Barcelona, 2003. pp 179,180,185
345
Esta lógica presenta el inconveniente de que las entradas sólo pueden variar durante
la fase de precarga, ya que si lo hacen durante la fase de evaluación podrían dar lugar a
un valor erróneo en la salida, esto lleva al inconveniente de no poder conectar compuertas lógicas PE en cascada.
X
Y
Precarga
CLK
Evaluación
X
A
Y
B
Valor
erróneo
CLK
___
Figura 9.26 Función lógica X = ( A + B ) ⋅C , Y = X en lógica PE. Se presenta error cuando se evalúa el vector
12
ABC = (101)
Por ejemplo, en la compuerta de la Figura 9.26, se precarga el valor de X y de Y
a ‘1’, durante la fase de precarga. Si el vector de entrada es ABC = (101) , entonces el
valor de X e Y de manera ideal es 0 y 1, respectivamente. Cuando se pasa de la fase
de precarga a la fase de evaluación, entonces el valor de X comienza a descargarse;
sin embargo, mientras permanezca en un valor lo suficientemente grande para activar el
NMOS, entonces se descargará el valor de Y , produciendo un valor erróneo en la salida.
Lógica CMOS DOMINÓ
Es una forma de lógica dinámica que produce compuertas que pueden ser conectadas en cascada. La Figura 9.27 muestra la estructura de esta compuerta.
VDD
VDD
Φ
NMOS
Logic
Gate
VOUT
VOUT
NMOS
Logic
Gate
Inverter Buffer
CLK
a)
VDD
Y
PDN
Φ
VDD
QP
X
A
B
C
VDD
Inverter Buffer
Qc
b)
First Stage
Cascaded Stage
Figura 9.27 a) Compuerta lógica CMOS DOMINÓ 13, b) Esquema de dos compuertas CMOS DOMINÓ de entrada individual conectadas en cascada14
12 Rubio A., y otros. Diseño de Circuitos y sistemas integrados. Ediciones de la Universidad Politécnica
de Catalunya, SL. Barcelona, 2003. pp 179,180,185
13 Sedra A.S., Smith K.C., Microelectronic Circuits. 5th ed., Sanders Publishing.
14 Knauth L.A., Dynamic CMOS. EEE 425 Honors Project Fall 1997 Advisor: ZAck Ciccone.
http://www.lauraknauth.com/academic/DynCMOS.html
346
Se observa que es simplemente una compuerta lógica dinámica básica con un inversor CMOS estático conectado a su salida. La operación de la compuerta es simple, durante la precarga, X se elevará a V DD y la salida de la compuerta Y estará a 0V . Durante
la evaluación, dependiendo de la combinación de la variable de entrada, X permanecerá
alta y por tanto la salida Y permanecerá baja, o descenderá a 0V y la salida Y se elevará
a V DD . Por tanto, durante la evaluación la salida permanece baja o realiza sólo una transición de nivel bajo a nivel alto.
Para ver por que las compuertas CMOS DOMINÓ pueden ser conectadas en cascada, considere la situación de la Figura 9.28.
VDD
Φ
VDD
QP1
Φ
Y1
X1
QP2
X2
Y2
I1
A
Q1
Φ
QC1
I2
CL2
CL1
Q2
Φ
QC2
Figura 9.28 Dos compuertas lógicas CMOS DOMINÓ de entrada simple conectadas en cascada 15
En la Figura 9.28 se muestran dos compuertas DOMINÓ conectadas en cascada.
Por simplicidad se muestran compuertas de una sola entrada. Al final de la precarga, X 1
estará a V DD , Y1 a 0V . Como en el caso anterior, suponga que A está alta al principio de
la evaluación. Por tanto conforme ∅ se eleva, el capacitor C L 1 comienza a descargarse
haciendo que X 1 baje. Mientras tanto, la entrada baja en la compuerta de Q 2 mantiene
a Q 2 desactivado y C L 2 permanece totalmente cargado. Cuando v X 1 cae por debajo del
voltaje de umbral del inversor I 1 , Y1 se elevará y activará a Q 2 , que a su vez comienza a
descargar a C L 2 y hace que X 2 baje. Con el tiempo, Y2 se eleva a V DD .
Con base en esta descripción, se ve que como la salida de la compuerta DOMINÓ
está baja al principio de la evaluación, no ocurrirá una descarga prematura del capacitor
en la compuerta subsiguiente en la cascada. Como se indica en la Figura 9.29, la salida
Y1 provocará una transición de 0 a 1 en t PLH segundos (después del borde ascendente
de reloj), subsecuentemente, la salida Y2 hace una transición de 0 a 1 después de otro
intervalo t PLH . La propagación del borde ascendente a través de una cascada de compuertas se parece a fichas de dominó colocadas una junto a la otra que caen y derriban a
la siguiente, lo cual es el origen de su nombre. La lógica CMOS DOMINÓ se aplica en el
diseño de decodificadores de direcciones en chips de memoria, por ejemplo.
15 Sedra A.S., Smith K.C., Microelectronic Circuits. 5th ed., Sanders Publishing
347
VDD
Φ
Y2
Y1
0
t
Figura 9.29 Formas de onda durante la fase de evaluación
La lógica dinámica posee la ventaja de reducir considerablemente los requerimientos
de área de chip, ofrece operación a alta velocidad y disipación de potencia estática cero
(o muy poca). También posee desventajas en muchos efectos no ideales, los cuales ya
se analizaron. Se debe recordar que la disipación de potencia dinámica es una cuestión
importante de lógica dinámica. Otro factor que deberá ser considerado es el “tiempo
muerto” durante la precarga, cuando la salida del circuito aún no está disponible.
Una alternativa a la lógica DOMINÓ es la lógica NORA DOMINÓ. En la Figura 9.30
se muestra la estructura básica de la lógica NORA, que se caracteriza por la alternancia
de MOSFETs, en la lógica de bloques de PMOS a las compuertas de la lógica NMOS,
y así sucesivamente.
A pesar de que esta estructura en cascada elimina el problema de activación de
los transistores de precarga y evaluación de etapas encadenadas, el exceso de uso de
PMOS en la formación de la lógica reduce la velocidad máxima de reloj y aumenta la superficie del sistema. Por esta razón, es preferible utilizar sólo la NMOS y dejar el PMOS
como elementos de precarga.
VDD
Prechargue
NMOS
Logic
Gate
CLK
Evaluation
VDD
VDD
Evaluation
Prechargue
PMOS
Logic
Gate
CLK
Prechargue CLK
NMOS
Logic
Gate
Evaluation
Figura 9.30 Lógica NORA DOMINÓ 16
16 Knauth L.A., Dynamic CMOS. EEE 425 Honors Project Fall 1997 Advisor: ZAck Ciccone.
http://www.lauraknauth.com/academic/DynCMOS.html.
348
Otra consideración de diseño para la lógica NORA, es cuando se necesitan combinar los
bloques de lógica dinámica NORA, con bloques de lógica estática. Según se observó con la
lógica DOMINÓ, solo se podrá permitir en la salida un cambio de bajo a alto una vez, durante
la fase de evaluación de la lógica NMOS y viceversa para el PMOS, de modo que sólo un
número par de bloques estáticos pueden ser utilizados entre dos bloques de lógica dinámica.
Otro inconveniente importante de esta configuración, es el uso de las dos fases de
reloj. Para un circuito que opera a altas velocidades, el reloj se vuelve cada vez más importante, dado que las señales de ambas fases de reloj deben ser entregadas casi en el
mismo instante para que el circuito funcione correctamente. El enrutamiento de una fase
de reloj para millones de elementos en un circuito hace que el retraso se minimice, lo que
resulta en un gran reto para los diseñadores.
Siguiendo con los inconvenientes de esta configuración, otro muy importante es el enrutamiento de una segunda fase de reloj a una cantidad similar de elementos del circuito,
de tal manera que el retardo se reduzca al mínimo en comparación no sólo a sí mismo,
sino a la primera fase de reloj. El tiempo de demora entre la primera y la segunda fase del
reloj se conoce como asimetría de reloj o clock skew. La presencia de asimetría de reloj
en un circuito reduce la velocidad máxima de operación de ese circuito, ya que la lógica
no se puede evaluar correctamente durante este tiempo de retardo (Figura 9.31). Esto
puede ser eliminado mediante el uso de una sola fase de reloj, true single-phase clocking
(TSPC), para el circuito de reloj.
Phase 1
Phase 2
Dead Time
Figura 9.31 Asimetría de reloj 17
17 Knauth L.A., Dynamic CMOS. EEE 425 Honors Project Fall 1997 Advisor: ZAck Ciccone.
http://www.lauraknauth.com/academic/DynCMOS.html.
349
Simulación en PSpice de la lógica DOMINÓ
Simulación del circuito de la Figura 9.28 en PSpice.
Mbreakp
Mbreakp
+
5Vdc _
V1 = 5
V
V2 = 0
+
_
TD = 1ns
TR = 1ns
TF = 1ns
PW = 50ns
PER = 20ns
0
V
M2
V1 = 5
V2
V2 = 0
+
M1
TD = 1ns
_
TR = 1ns
TF = 1ns
Mbreakn
PW = 50ns
M3
PER = 100ns
Mbreakp
M4
M9
M5
M10
M7
M8
V
C1
C2
Mbreakn
Mbreakn
0.01p
V
Mbreakn
0.01p
M6
Mbreakn
0
Mbreakp
Mbreakn
0
0
Figura 9.32 Circuito en PSpice de dos compuertas lógicas CMOS DOMINÓ de entrada simple conectadas en cascada
En las Figuras 9.33 y 9.34 se observan las gráficas de los voltajes en el tiempo, de la
simulación del circuito de la Figura 9.32. En la Figura 9.34 se puede observar en detalle
el retardo de las señales, efecto por el cual se le da el nombre de lógica DOMINÓ.
5.0V
4.0V
3.0V
2.0V
1.0V
0V
40ns
44ns
V(M3:g) V(M9:d)
V(M7:d)
48ns
52ns
56ns
60ns
Time
64ns
68ns
72ns
76ns
80ns
Figura 9.33 Gráficas de los voltajes en el tiempo
5.0V
4.0V
3.0V
2.0V
1.0V
0V
52.0ns
52.2ns
52.4ns
V(M3:g) V(M9:d) V(M7:d)
52.6ns
52.8ns
53.0ns
Time
53.2ns
53.4ns
53.6ns
53.8ns
54.0ns
Figura 9.34 Gráficas del cambio de los voltajes en el tiempo, después de un borde ascendente de reloj.
350
Lógica NP DOMINÓ (o Zipper)
La diferencia con la lógica CMOS DOMINÓ, radica en que en esta lógica se elimina
el inversor ubicado en la salida. Con el fin de conectar las compuertas en cascada,
esta lógica alterna redes de transistores NMOS y PMOS. En la Figura 9.35 se puede
observar esta configuración.
p blocks
a blocks
pre
cval
PMOS
Logic
CLK
pre
p blocks
pre
cval
NMOS
Logic
CLK
a blocks
NMOS
Logic
CLK
cval
Figura 9.35 Estructura básica de la lógica NP DOMINÓ o Zipper18
La alternancia se produce debido a que una compuerta con red NMOS controla a
una compuerta con red PMOS, y viceversa. Esta limitación se solucionará utilizando,
irónicamente, inversores de salida, ya que, con esto, la ventaja que pretendía presentar
esta lógica queda eliminada. Adicionalmente, se genera la necesidad de introducir un
reloj de dos fases; es decir, se requiere a CLK y a su complemento, para activar, respectivamente, la red NMOS y la red PMOS. Otro aspecto que debe tenerse en cuenta, ya en
la parte física, es el tamaño de los transistores PMOS, que deben ser más anchos que
los transistores NMOS, para que ambos presenten las mismas resistencias de paso. Lo
anterior conlleva a un incremento del área, el cual implica a su vez un incremento en el
retardo y en el consumo.
Lógica TSPC (True Single Phase Clock Logic)
Esta lógica debe su nombre al hecho de que no requiere de un reloj con dos fases.
Al igual que la lógica Zipper, la lógica TSPC cuenta con dos tipos de compuertas: una red
de transistores NMOS y una red de transistores PMOS (Figura 9.36). La conexión entre
dichas redes se realiza utilizando una estructura que permite trabajar en pipeline (Figura
9.37). En la salida se encuentra una estructura similar a la utilizada en la lógica C2MOS,
para memorizar la salida. Este efecto de memorización, unido a la técnica de intercalar
compuertas N y P, permite el uso de un reloj con una sola fase.
La lógica TSPC está entre las familias dinámicas más rápidas, y tiene un gran atractivo por el número bajo de transistores empleados.
18 Jacomet M., VLSI System Design. http://www.scribd.com/doc/2898746/VLSI-system-design
351
CLK
CLK
Entradas
Lógica
N
OUT
Lógica
P
Entradas
CLK
CLK
OUT
CLK
CLK
a)
b)
Figura 9.36 Estructura básica de la lógica NP DOMINÓ o Zipper19
Entradas
Bloque N
Bloque N
Bloque P
Bloque P
Precarga+
Latch salida
Evaluación
Precarga+
Latch salida
Bloque P
Evaluación
CLK
Precarga+
Latch salida
Bloque N
Evaluación
CLK
Figura 9.37 Estructura básica de la lógica NP DOMINÓ o Zipper20
Lógica CVSL DINÁMICA
En la lógica dinámica la información se representa mediante la tensión asociada a la
carga almacenada en un nodo, el cual se encuentra en una situación de alta impedancia. La
compuerta básica de la lógica CVSL dinámica o DCVSL (por sus siglas en ingles Dynamic
Cascode Voltage Switch Logic) se muestra en la Figura 9.38. Puede observarse en este caso
un transistor en serie con los bloques NMOS y conectado a tierra por el otro extremo; el cual
es controlado por una señal de reloj, que a su vez controla los transistores de pull-up PMOS.
Esta lógica se basa en la tecnología pseudo-NMOS con la introducción de ciertas modificaciones los cuales permiten eliminar los problemas de la lógica anterior. En la Figura 9.38
se observa que el esquema no es más que dos compuertas DOMINÓ trabajando de forma
complementaria. La ventaja de esta lógica respecto a la DOMINÓ es una mayor flexibilidad
lógica al poder realizar cualquier función de forma inmediata, ya que siempre cuanta con la
señal y su complemento.
19 Rubio A., y otros. Diseño de Circuitos y sistemas integrados. Ediciones de la Universidad Politécnica de Catalunya, SL. Barcelona, 2003. pp 179,180,185
20 Rubio A., y otros. Diseño de Circuitos y sistemas integrados. Ediciones de la Universidad Politécnica de Catalunya, SL. Barcelona, 2003. pp 179,180,185
352
CLK
F
Red F
Entradas
diferenciales
Red F
F
CLK
Figura 9.38 Configuración básica de una compuerta DCVSL 21
Entre otras ventajas de la lógica DCVSL se encuentran la obtención simultánea en
las salidas de la función lógica y su complemento, la disminución de las capacitancias
parásitas en los nodos de salida (proveyendo mayor velocidad de respuesta) y la eliminación de la disipación de potencia estática. Al existir los inversores a las salidas de
la configuración aumenta el fan-out de la compuerta; sin embargo como desventaja se
encuentra un mayor requerimiento de área activa, mayor cantidad de interconexiones y
mayor complejidad del diseño al requerir el complemento de las señales de entrada.
Variaciones en la configuración de Lógica CVSL
Static Differential Split-Level Logic(SDSL)
En este tipo de configuración se agregan dos transistores NMOS conectados por los
gates y a su vez conectados a un voltaje de referencia: V ref =V DD / 2 +Vth , esto para reducir
cambios lógicos inesperados en los nodos de salida. Así las salidas se colocan a la mitad del
voltaje de alimentación, lo cual permite un menor retardo en el proceso y menor disipación
de potencia; pero al tener que añadir dos transistores mas, el área del dispositivo aumenta.
DCVS-NORA
Otra familia de operación dinámica es la DCVS-NORA (No Race), el cual incluye unos
pFET’s más para disminuir la competencia entre los dispositivos nFET’s y pFET’s. Esta familia es especialmente indicada para estructuras con pipeline, aunque tiene como desventaja
el uso de una mayor cantidad de transistores en configuración cascode, la configuración
básica se muestra en la Figura 9.39.
21 Rubio A., y otros. Diseño de Circuitos y sistemas integrados. Ediciones de la Universidad Politécnica de Catalunya, SL. Barcelona, 2003. pp 179,180,185
353
ϕ
débil
débil
q
q
out
ϕ
árbol - NMOS
ϕ
out
ϕ
Figura 9.39 Configuración DCVS-NORA.
EDCVSL Tipo I
La compuerta básica de la lógica EDCVSL (por sus siglas en ingles, Enhanced Differential Cascode Voltage Switch Logic) tipo I se observa en la Figura 9.40. Cuando la señal de
control (CLK) se encuentra en nivel bajo 0, los transistores de precarga M 1 y M 2 conducen
colocando los nodos de salida al nivel de V DD ; además, los transistores M 5 y M 6 no conducen, abriendo así el camino a tierra. Durante la fase de evaluación, es decir cuando la señal
de control se encuentra en un nivel alto de 1, los transistores de precarga dejan de conducir
mientras que los transistores M 7 y M 8 conducen creando un camino para la corriente entre los transistores de precarga y el árbol lógico, dependiendo de las entradas. Por su parte
el transistor M 9 actúa como una fuente de corriente dinámica, usada para limitar la corriente transferida por ese camino. Los transistores M 3 y M 4 aceleran la fase de evaluación y
mantienen los niveles lógicos en las salidas.
Durante este proceso se generan dos corrientes I e IB ; I representa la corriente activada por el árbol lógico, mientras que IB representa la corriente proveniente
de la rama del
________
otro lado (del transistor M 9 ). Cuando IB es mayor que I , el voltaje en OUT cae más rápido
que el voltaje en OUT; logrando de esta manera la conmutación de las salidas.
Con la configuración EDCVSL se obtiene un desempeño asimétrico en las salidas, donde una salida es más rápida que la otra. No obstante la salida con menor velocidad presenta
un consumo mucho menor de potencia, debido al menor flujo de corriente.
354
OUT
M1
CLK
OUT
M3
M4
M2
CLK
M6
M5
INPUTS
M7
Logic Tree
M9
1B
l
CLK
MB
Figura 9.40 Configuración EDCVSL tipo I 22
EDCVSL Tipo II
La compuerta básica de la lógica EDCVSL tipo II, que evita los problemas de asimetría de la lógica EDCVSL tipo I, se observa en la Figura 9.41. Por su parte en esta configuración, el transistor M 9 es controlado por una salida intermedia ubicada en la fuente
del transistor M 5 , lo cual permite almacenar un nivel alto en el transistor M 9 cuando no
hay conducción de corriente en el árbol lógico, o un nivel bajo en el caso contrario.
La ventaja de los dos tipos de lógica EDCVSL radica en la reducción del número de
interconexiones y la simplificación del árbol lógico al eliminar las señales de entrada complementadas. Adicionalmente, con la lógica EDCVSL se puede emplear solo la estructura
paralela para la evaluación, mientras que con la lógica DCVSL se requieren siempre las
dos estructuras (serie y paralela).
OUT
CLK
M1
OUT
M3
M4
CLK
M6
M5
INPUTS
M2
M7
Logic Tree
M9
1B
l
CLK
MB
Figura 9.41 Configuración EDCVSL tipo I 23
22 KANG D.W., KIM B.Y., Design of Enhanced Differential Cascode Voltage Switch Logic (EDCVSL)
circuits for high fan-in gate. Department of Electrical and Computer Eengineering. Northeastern University.
23 KANG D.W., KIM B.Y., Design of Enhanced Differential Cascode Voltage Switch Logic (EDCVSL)
circuits for high fan-in gate. Department of Electrical and Computer Eengineering. Northeastern University.
355
Ejemplos CVSL
AND-NAND de 4 entradas
OUT
OUT
CLK
CLK
A
B
A
B
C
D
C
D
CLK
Figura 9.42 AND-NAND de 4 entradas, en lógica DCVSL
OR-NOR de 4 entradas
OUT
OUT
CLK
CLK
A
B
A
B
C
D
C
D
CLK
Figura 9.43 OR-NOR de 4 entradas, en lógica DCVSL
356
XOR-XNOR de 2 entradas
F
F
B
B
B
A
A
B
Figura 9.44 XOR-XNOR de 2 entradas, en lógica CVSL 24
M2
M8
PMOS
PMOS
5
+
_
V1
M1
M3
NMOS
NMOS
V
M4
V
M5
NMOS
NMOS
V
NMOS
M6
NMOS
V
V1 = 0
V2 = 5
TD = 0
TR = 1u
TF = 1u
PW = .5m
PER = 1m
+
_
V4
+
_
V2
V1 = 0
V2 = 5
TD = 0
TR = 1u
TF = 1u
PW = 1m
PER = 2m
V
M7
V
V1 = 0
+ V5 V2 = 5
_
TD = 0
TR = 1u
TF = 1u
PW = 1m
PER = 2m
+
_
V3
V1 = 0
V2 = 5
TD = 0
TR = 1u
TF = 1u
PW = .5m
PER = 1m
0
Figura 9.45 Circuito en PSpice de la compuerta XOR-XNOR de 2 entradas, de la figura 9.41
24 Tenhunen H. Circuit techniques for CMOS logic. Kungl Tekniska Högskolan. http://www.eet.bme.
hu/~benedek/CAD_Methodology/Courses/logicdesign/CMOSlogi.pdf
357
5.0V
a)
2.5V
0V
V(V2 : +)
5.0V
b)
2.5V
0V
V(V5 : +)
5.0V
c)
2.5V
0V
V(V3 : +)
5.0V
d)
2.5V
0V
V(V4 : +)
2.0V
e)
1.0V
0V
V(M2 : s)
2.0V
f)
SEL »
0V
0s
2ms
4ms
6ms
V(M3:d)
8ms
10ms
Figura 9.46 Resultados de la simulación. a) A, b) A, c) B, d) B, e) XNOR, y f) XOR
BUFFER / INVERSOR
Para ilustrar el funcionamiento básico de la lógica CVSL, se estudiara el circuito de
un buffer/inversor simple
como el mostrado en la Figura 9.47. Este usa entradas com___
A
plementarias
y A las que están asociadas con los voltajes V A y V __ respectivamente.
A
Idealmente están relacionadas porV A +V __ =V DD .
A __
Las salidas esta determinadas por f y f y están definidas como se muestra. Estas son
descritas por V f y V f__ dondeV f +V __ =V DD . A través del análisis, es importante recordar que
f
el switcheo de este circuito se basa en la diferencia de las señales (V A ,V __ ) y (V f ,V __ ) , y no
f
A
en los voltajes individuales.
Ya que los FET’s Mn 1 y Mn 2 pueden ser modelados como
interruptores controlados
___
por voltaje, la operación es simple. Suponiendo que A = 1 y A = 0 , los voltajes de entrada
son V A =V DD y V A__ = 0 , así que Mn 2 está activo y Mn 1 está en corte. Como Mn 2 está conduciendo, V DSn 2 → 0V y la variable de salida f es cero. La acción de realimentación
del latch
__
V
Mp
2
__ =V DD
a__ conducción,
el cual genera f
, que corresponde a f → 1 . Con lo que
conduce a
__
se tiene que f = A y f = A . El caso contrario se obtiene a través de un análisis parecido.
VDD
+
Mp1
+
_
VSGp1
_
+
VSGp2
_
+
_
VDSp2
VDSp1
f
Mp2
+
+
Vf
Vf
_
A
+
_
VA
+
_VDSn1
+
VDSn2
_
Mn1
Mn2
_
A
+
V_A
Figura 9.47 Buffer/Inversor CVSL
358
f
A continuación se muestran los resultados obtenidos al realizar una simulación en
ORCAD del Buffer/Inversor de la figura 9.47.
VCC
VCC
MbreakP
A
+
_
5dc
M5
V3
0
V1 = 0
V2 = 5
TD = .25m
TR = 10 u
TF = 10u
PW = 0.25m
PER = 0.5m
Aneg
+
_
M6
V4
MbreakN
0
0
Figura 9.48 Configuración utilizada para generar A y A .
VCC
M3
MbreakP
M4
V
MbreakP
V
fneg
f
M1
M2
Aneg
A
MbreakN
MbreakN
Figura 9.49 Buffer/Inversor utilizado para la simulación
359
5.0V
2.5V
0V
V(A)
5.0V
2.5V
SEL»
0V
V(Aneg)
5.0V
0V
-5.0V
0s
0.4ms
0.8ms
1.2ms
V(f) - V(fneg)
1.6ms
2.0ms
Figura 9.50 Comportamiento del buffer/inversor.
100uW
50uW
0W
W(M4)
40uW
20uW
0W
400uW
W(M3)
200uW
0W
20uW
W(M2)
10uW
SEL»
0W
200us
300us
400us
500us
W(M1)
Figura 9.51 Consumo de potencia en los diferentes mosfet.
360
600us
__ __ __ __
__
FunciónQ = AB C D + A ( B + C + D )
Para la implementación de árboles lógicos más complejos se pueden emplear algoritmos
de reducción, los cuales proveen una manera casi automática de diseñar la lógica a emplear.
Como se mencionó anteriormente, este tipo de lógica tiene ventajas con respecto a
otras familias lógicas y maneras de construcción de funciones lógicas, analicemos ahora
un pequeño ejemplo que ilustra un poco estas ventajas. En la Figura 9.52(a) se muestra un circuito CVSL que emplea 12 dispositivos, su principal ventaja es la disminución
en consumo de potencia y aumento de velocidad de operación; al realizar esta misma
aplicación mediante el uso de compuertas NAND de tecnología CMOS se emplean 5
elementos como se muestra en la figura 52(b), lo que implica un total de 28 dispositivos,
sin tener en cuenta los inversores adicionales si se quiere una salida complementada. Al
emplear lógica CMOS complementaria, se emplean un total de 16 transistores, por lo que
se puede observar una reducción de 6 PMOS en CVSL, y por lo tanto una disminución en
la capacitancia de entrada del circuito.
VH
P
Q
Q
A
N
A
D
B
C
N C
A
B
P
N A
(a)
N
N D
N
N B
N
A
C
D
N
A
B
12 DEVICES
Q= ABCD + A(B+C+D)
Q
A
C
28 DEVICES
A
D
N
(a)
(b)
Figura 9.52 (a) Implementación en CVSL de la función Q. (b) Implementación en compuertas NANDCMOS de la función Q.
Compuerta XOR de dos entradas
A continuación se muestran los resultados encontrados al simular una compuerta
XOR usando lógica CVSL y su comparación con una XOR de lógica CMOS.
361
VCC
MbreakP
MbreakP
M9
M10
Q
Qneg
V
M11
M7
Aneg
M14
M8
A
A
MbreakN
MbreakN
MbreakN
0
MbreakN
0
M13
M12
Bneg
MbreakN
MbreakN
0
Figura 9.53 Configuración de compuerta XOR CVSL
5.0V
2.5V
0V
V(A)
5.0V
2.5V
0V
V(Aneg)
5.0V
0V
SEL»
-5.0V
0s
0.2ms
V(Q) - V(Qneg)
0.4ms
0.6ms
0.8ms
Figura 9.54 Comportamiento de la compuerta XOR CVSL
362
1.0ms
5.0V
0v
Probe Cursor
A1= 251.341u,
A2= 251.690u,
A3= -349.287n,
-5.0V
250.76us
251.00us
251.5us
V(Q) - V(Qneg)
-3.9992
4.0559
-8.0551
252.00us
252.46us
Time
Figura 9.55 Tiempo de subida para la XOR CVSL
5.08V
4.00V
2.00V
Probe Cursor
A1= 513.291u,
A2= 518.064u,
dif= -4.7733u,
0V
506.54us
V(out)
510.00us
520.00us
515.00us
545.091n
4.5875
-4.0424
525.00us
529.00us
Time
Figura 9.56 Tiempo de subida para la XOR CMOS 4070
363
Ejemplos resueltos de circuitos
lógicos dinámicos
1. Con base en el circuito lógico dinámico simple de la Figura 9.1, bosqueje circuitos
completos para las compuertas NOT, NAND y NOR, las dos últimas con dos entradas y un circuito para el cual Y = AB + CD .
Desarrollo
En todos los diseños siguientes, la salida de las compuertas es la que va al canal A
del osciloscopio.
Figura 9.57 Diseño compuerta NOT con lógica dinámica
Figura 9.58 Diseño compuerta NAND con lógica dinámica
364
Figura 9.59 Diseño compuerta NOR con lógica dinámica
Figura 9.60 Diseño de función Y = AB+ CD con lógica dinámica
2. En éste y el siguiente problema se investiga la operación dinámica de una compuerta
NAND de dos entradas realizada en la forma lógica dinámica y fabricada en una tecno'
'
2
logía de proceso CMOS para la cual k n = 3k p = 75µ A /V , Vtn = −Vtp = 0.8V y V DD = 3V .
Para mantener C L pequeña, se utilizan dispositivos NMOS de tamaño pequeño para los
cuales W / L = 1.2µ m / 0.8µ m (se incluye Qe ). El transistor PMOS de precarga Q p tiene
2.4µ m / 0.8µ m . Se determina que la capacitancia C L es de 15fF . Considere la operación de precarga con la compuerta de Q p a 0V y suponga que con t = 0 , C L está totalmente descargada. Se desea calcular el tiempo de elevación del voltaje de salida, definido como el tiempo para que v Y se eleve del 10% al 90% del valor final de 3V . Encuentre
la corriente con v Y = 0.3V y la corriente con v Y = 2.7V , luego calcule un valor aproximado
para t r ,t r = C L (2.7 − 0.3) / I prom donde I prom es el valor promedio de las dos corrientes.
365
Desarrollo
Para v Y = 0.3V
Para v Y = 2.7V
Luego
Finalmente
i DP =
( )(
)
1 75
2.4
(3 − 0.8)2 = 181.5µ A
3
0.8
2
( 3 )(
i DP = 75
2.4
)

0.32 
−
⋅
−
3
0.8
0.3
(
)
 = 46.1µ A
0.8 
2 
 181.5 + 46.1 
 = 113.8µ A
2


I prom = 
−15
t TLH = t r = 15x 10 (2.7 − 0.3)
113.8
x 10−6 = 316 ps
3. Para la compuerta que se especificó en el problema anterior, evalúe el retardo
de propagación de nivel alto a nivel bajo, t PHL . Para obtener un valor aproximado de
t PHL reemplace los tres transistores NMOS en serie con un dispositivo equivalente y
encuentre la corriente de descarga promedio.
Desarrollo
Para los tres transistores NMOS en serie la longitud equivalente es 3Ln = 3( 0.8 ) = 2.4µ m
Entonces para v Y = 0.3V
Y para v Y = 1.5V
Luego
Finalmente
iD =
(
(
)
1
75) 1.2
(3 − 0.8)2 = 90.75µ A
(
2.4
2
i D = 75 1.2
)

1.52 
3 − 0.8 ) ⋅ 1.5 −
(

 = 81.56µ A
2.4 
2 
 90.75 + 81.56 
 = 86.15µ A
2


I prom = 
−15
t TLH = 15x 10 (3 − 1.5)
366
86.15
x 10−6 = 261 ps
4. La corriente de fuga en una compuerta lógica dinámica hace que el capacitor C L
se descargue durante la fase de evaluación, incluso si la PDN no conduce. Para
C L = 30fF e I fuga = 10−12 A , encuentre el tiempo evaluado más largo admisible si la decadencia del voltaje de salida se tiene que limitar a 0.5V . Si el intervalo de precarga
es mucho más corto que el tiempo máximo admisible evaluado, encuentre la frecuencia de cronometraje mínima requerida.
Desarrollo
Para un voltaje de salida de 0.5V
t =C
∆v
I fuga
=
30x 10−15 x 0.5
= 15ms
10−12
Si el intervalo de precarga es mucho más corto que el evaluado, el periodo de la mínima
frecuencia de cronometraje requerida puede ser tan grande como 15ms , por lo tanto
f min =
1
= 66.66Hz
15x 10−3
Simulaciones
P
ara las simulaciones se tomaran las compuertas del ejemplo 1, estas son una
NOT, NAND, NOR y una función Y = AB + CD . Estas simulaciones se realizaron
con la herramienta PROTEUS.
Compuerta NOT
En la Figura 9.61 se observa el diseño de la compuerta NOT. En el canal A del osciloscopio se puede ver la salida de la compuerta, y en el canal B se puede ver la entrada de la
señal tipo pulso. En los drenajes de los transistores Q1 y Q3 se encuentran las entradas
tipo Clock, característico de esta lógica dinámica.
367
Figura 9.61 Compuerta NOT
Figura 9.62 Simulación compuerta NOT
Compuerta NAND
La Figura 9.63 nos muestra una compuerta NAND de dos entradas. El canal A del
osciloscopio nos muestra la salida del circuito y los canales B y C nos muestran las entradas del circuito tipo pulso. En los drenajes de los transistores Q 1 y Q 3 se encuentran
las entradas tipo Clock, característico de esta lógica dinámica.
368
Figura 9.63 Compuerta NAND
Figura 9.64 Simulación compuerta NAND
Compuerta NOR
La Figura 9.65 nos muestra una compuerta NOR de dos entradas. El canal A del osciloscopio nos muestra la salida del circuito y los canales B y C nos muestran las entradas
del circuito tipo pulso. En los drenajes de los transistores Q 1 y Q 3 se encuentran las
entradas tipo Clock, característico de esta lógica dinámica.
369
Figura 9.65 Compuerta NOR
Figura 9.66 Simulación compuerta NOR
Función Y = AB + CD
La Figura 9.67 nos muestra una compuerta cuya función lógica es Y = AB + CD de
cuatro entradas. El canal A del osciloscopio nos muestra la salida del circuito y los canales B y C nos muestran las entradas del circuito tipo pulso. Por simplicidad, todos las
entradas tipo pulso se tomaron a una misma frecuencia
370
Figura 9.67 Compuerta función
Y = AB + CD
Figura 9.68 Simulación compuerta
Y = AB + CD
371
CAPÍULO
10
Celdas Estándar
Introducción
A
ntes de iniciar con la explicación de todos los aspectos referentes al diseño con
celdas estándar, debemos hacer una pequeña retrospectiva de cuál fue el motivo del nacimiento de este tipo de tecnología, el cual se basó en la metodología
ASIC (circuito integrado para aplicaciones específicas) (por sus siglas en ingles
application-specific integrated circuits), es un circuito integrado hecho a la medida para
un uso en particular, en vez de ser concebido para propósitos de uso general. Por ejemplo, un chip diseñado únicamente para ser usado en un teléfono móvil es un ASIC. Por
otro lado, los circuitos integrados de la serie 7400 son compuertas lógicas que se pueden
utilizar para una multiplicidad de aplicaciones. En un lugar intermedio entre los ASIC y los
productos de propósito general están los ASSP (productos estándar para aplicaciones
específicas) (por sus siglas en inglés, application-specific standard product).
A mediados de 1980, un diseñador elegía a un fabricante de ASIC, y luego implementaba el diseño utilizando las herramientas provistas por ese fabricante en particular. A pesar
de que existían herramientas de diseño provistas por terceros, no había un enlace efectivo
entre éstas y los procesos productivos de los fabricantes. Una solución a este problema,
que además permitió aumentar la densidad de los ASIC, fue la implementación de Celdas
Estándares (Standard Cell). Cada fabricante de ASIC creaba bloques funcionales con características eléctricas conocidas, tales como los tiempos de propagación, capacitancias e
inductancias, que podían ser representadas en las herramientas desarrolladas por terceros. El diseño basado en Celdas Estándares es el uso de estos bloques funcionales para
alcanzar densidades de compuertas muy altas, y un buen desempeño eléctrico. Este tipo
de diseño se ubica entre diseño de matriz de compuertas, y el diseño hecho totalmente a la
medida, en término de los costos fijos y de fabricación de cada unidad.
Hacia finales de 1980, estuvieron disponibles las herramientas de síntesis lógica,
tales como el Design Compiler. Estas herramientas podían compilar descripciones HDL
en una lista de nodos al nivel de compuertas. Esto dio paso a un estilo de diseño llamado
Diseño basado en Celdas Estándares.
375
Celdas estándar
Definición Celdas Estándar
Hablar de Celdas Estándar es hablar de una de las metodologías de diseño de Circuitos
Integrados para Aplicaciones Específicas (ASIC’s), que permite realizar un diseño completo
de un circuito integrado con base en la interconexión de elementos lógicos y predefinidos.
La fabricación completa de celdas estándar permite un buen aprovechamiento de la
superficie de la oblea de silicio, por cuanto se incorporan sólo las celdas funcionalmente
necesarias, ya optimizadas en su diseño, y tales celdas se posicionan (mediante algoritmos de placement y routing) de forma que su interconexión sea lo más directa posible;
por lo tanto permite fabricar un mayor número de unidades en cada oblea.
La diferencia entre celdas estándar y los diseños por arreglo de compuertas (gate array)
(correspondientes a diseños partiendo de compuertas prefabricadas), radica en que en el
segundo no es posible utilizar todas las compuertas prefabricadas, ni tampoco conseguir
un óptimo aprovechamiento de estas), pero disminuye fuertemente el costo de la inversión
inicial, ya que solamente se hace necesario personalizar las máscaras y las etapas de fabricación correspondientes a las conexiones (las líneas de metal); elegir entre cualquiera
de los dos métodos de fabricación de un ASIC depende del número de ejemplares que se
vayan a integrar, es decir, básicamente del proceso que salga menos costoso.
“Standard Cell”
Diseño lógico
Los procesos de diseño y fabricación de celdas estándar utilizan las siguientes etapas:
1.
2.
3.
4.
5.
6.
7.
8.
9.
Especificaciones / Requisitos
Descripción funcional del comportamiento
Diagrama de bloques
Esquema circuital con Celdas básicas prediseñadas
Colocación y conexión (Placement & Routing)
Sustitución de las celdas por el dibujo de zonas (layout)
MÁSCARAS
Proceso de integración
Test de los circuitos fabricados
Las celdas básicas tienen dimensiones geométricas ajustadas entre sí, para facilitar
el encaje de unas con otras. Las tareas de ubicación y conexión de las celdas (placement
and routing) son ejecutadas con la ayuda de potentes herramientas informáticas y suelen
ser realizadas por el diseñador, en contacto y colaboración directa con el fabricante. La
sustitución de las celdas por su layout es realizada directamente por el fabricante.
La descripción del circuito puede ser gráfica (captura de esquemas) o textual (lenguajes de descripción circuital o descripción de hardware) o mezcla de ambas. A medida
que aumenta la complejidad de los circuitos integrados resultan cada vez más útiles los
lenguajes de descripción circuital (VHDL, Verilog, etc.) que permiten describir un circuito
376
a través de su funcionamiento, sin descender a su configuración (compuertas, biestables
o bloques); de construir tal configuración se encarga el correspondiente compilador.
“Standard Cell”
Diseño lógico
En cuanto al proceso de fabricación con gate array, o de módulos equivalentes sobre
los cuales se configurarán las celdas de la librería (por conexión mediante las capas de
metales), las etapas de fabricación son las siguientes:
1. Especificaciones / Requisitos
2. Descripción funcional del comportamiento
3. Diagrama de bloques
4. Esquema circuital con Celdas básicas prediseñadas
5. Configuración de las celdas sobre Módulos Prefabricados
“GATE ARRAY”
6. MÁSCARAS DE METALES
7. Integración de los metales
8. Test de los circuitos fabricados
El proceso de diseño de un circuito integrado digital (en sus diferentes modalidades)
se desarrolla sobre computador, en forma de tareas de tipo CAD, para cuya ejecución
se dispone de eficaces y potentes aplicaciones informáticas. Las herramientas que se
utilizan para el diseño digital con circuitos programables y para el diseño de circuitos integrados específicos (a fabricar posteriormente, ASIC) son básicamente las mismas y se
emplean de la misma forma, diferenciándose luego en la forma de compilar el diseño y
en los resultados de tal compilación.
La complejidad de las celdas puede variar desde el pequeño nivel de integración
(como por ejemplo compuertas y latchs) hasta componentes de alto nivel de integración
(como memorias y unidades aritméticas de punto flotante).
La configuración del layout para un circuito integrado diseñado con celdas estándar
(Figura 10.1) consta de las siguientes partes:
• Celdas. Zonas en las cuales se colocan los elementos de pequeña y mediana
escala de integración.
• Corredores o canales de ruteo. Sectores utilizados para la interconexión de las celdas.
• Bloque Funcional. Lugar en donde se colocan los elementos de alto nivel de integración.
• PADs. Permiten la interfaz entre la lógica interna y el exterior del circuito integrado.
377
PADS
Celdas
Canal de ruteo
Celdas
Canal de ruteo
Celdas
Canal de ruteo
Bloque
Funcional
Celdas
Celdas
Bloque
Funcional
Celdas
PADS
Figura 10.1 Layout funcional típico de un CI con celdas Estándar
La fabricación de un circuito integrado con esta metodología, es la misma que la de
un circuito diseñado en forma full custom, pues es preciso realizar sobre el silicio todas
la etapas de proceso CMOS.
Figura 10.2 Celda estándar
378
VDD
VDD
In1
Out
In2
VDD
VDD
In1
In1
Out
Out
Nandx2
In2
VSS
VSS
In2
In1
Out
In2
VSS
Logic Symbol
Layout = standard gate representatior
Schematic = gate representation
Figura 10.3 Ejemplo de celda estándar, tipo NAND1
Características Generales
Una celda tiene dos lados libres (superior e inferior, usados para su interconexión) y
dos lados de vínculo con otras celdas (izquierdo y derecho, usados para su alimentación).
Su forma es rectangular y se ubican yuxtapuestas, por lo que están obligadas a tener
todas la misma altura h.
El ancho h de una celda es un múltiplo entero w del ancho elemental w e (Figura 10.4).
Una fila de celdas consiste en un conjunto que sigue las reglas de disposición enunciadas y se ubican paralelas entre sí dentro del sistema como se ilustra en la Figura 10.4.
Entre las filas se encuentra el corredor o canal de ruteo a través del cual se encaminan
las líneas de interconexión, el cual no tiene restricción en cuanto a su anchura, c. a excepción de las filas del sistema, únicamente se fijan restricciones para las celdas que
ocupan las celdas asociadas a los “pads”, que son específicas.
Wc
Fila 1
Corredor
Fila 2
It=
2
3
3
4
2
Corredor
Fila 3
It
Corredor
C
W
Fila 4
Figura 10.4 Disposición General de las Celdas
1 Dain Clain. CMOS IC layout, Concepts, methodologies and tools. Newnes. 1999
379
La unidad de medida utilizada en el diseño de las celdas es la longitud elemental λ,
por lo tanto las dimensiones de cada uno de los componentes del sistema deberán ser
un número entero de veces λ, el cual depende del proceso y puede ser 1μm ó 0,75μm en
1.5 o 1.2 micras respectivamente.
En el diseño de un chip se deben tener en cuenta tres factores muy importantes, a saber:
• Área y Dimensiones. Toda celda ocupa un área del chip y tiene una forma geométrica asociada que se debe tener en cuenta para la densidad de integración.
• Puertos. Es tal vez el factor más importante ya que de la ubicación de éstos depende el enrutamiento del camino de datos y los puntos de alimentación de la celda.
• Estrategia de Interconexión. Las celdas deben ser cableadas juntas usando capas
interconectadas.
Descripción Geométrica
El tamaño de la celda se representa con los parámetros h y w e , donde h es la altura
de la celda y w e es el ancho de la misma (generalmente de forma rectangular), dichos
parámetros dependen en gran medida de los puntos de contacto que conectan la celda
con el exterior por medio de líneas de metal, siempre en número par, es decir que las dimensiones serán un número par de veces λ, . Adicional a las dimensiones de los materiales es pertinente revisar dentro de las reglas de diseño, los espaciamientos especificados
entre las líneas de interconexión del mismo material y entre diferentes.
Otros parámetros que se tienen en cuenta diferentes a los geométricos en el diseño de
celdas corresponden al voltaje (swing), el sesgo de corriente y el margen de ruido, parámetros que unidos a la geometría de diseño, permiten hacerse a una idea del tipo de celda que
se busca, aún sin tener en cuenta características como las velocidades de los transistores.
Los últimos parámetros de diseño a tener en cuenta son las restricciones que presenta el desarrollo, las cuales son:
Para el metal:
• Ancho mínimo de líneas de metal: 3λ.
• Ancho de la cinta de metal de alimentación: 10λ, (Metal 2).
• Espacio mínimo entre líneas y bordes superior e inferior de la cerda: 10λ.
• Espacio mínimo alrededor de línea de metal: 2λ, a cada lado.
Para pozo n (Figura 10.5):
• Ancho mínimo del pozo: 30λ (la mitad del tamaño de la celda).
• Distancia mínima entre el pozo y el borde de la celda: 7λ.
380
30
60
7
7
Figura 10.5 Regiones permitidas para pozo n
Áreas activas Polisilicio y metal1:
• Ancho mínimo entre regiones activas a distinto potencial: 4λ (2λ en cada lateral de
una región rectangular).
• Ancho mínimo entre polisilicio y metal1: 3λ (2λ en cada lateral de la región).
• Ancho de las vías de metal: 4λ.
• Dimensiones entre conexiones de metal 1 y metal 2: Cuadrados de lado 2λ.
• Líneas horizontales de metal 2 y líneas verticales de metal 1.
• Ancho de corredor de líneas de metal 2: c = ÐÐÐ
(N −
número de líneas horizontales de metal 2.
)+
 =(

+
) , donde N es el
Contactos y vías:
• Recomendable no pasar ninguna vía por los caminos de metal2 de alimentación.
• Los contactos deben colocarse teniendo en cuenta 1λ alrededor de la celda sin
considerar que las capas salgan de ella.
• Los contactos se notan con una B “bottom” o una T “top” al principio, según el lugar donde vallan a colocarse para conectar y haciendo un conteo de izquierda a
derecha empezando por 1, definiendo así si son entradas o salidas así como NC
para los pines sin conexión.
381
IN1
NC
Out1
Función
Out2
IN2
Figura 10.6 Diagrama de bloques
Es decir, por ejemplo en la Figura 10.6, la entrada uno IN1 correspondería a T1, y la
entrada dos IN2 a B2, a su vez la salida Out1 a B8 y la salida Out2 a T7 y a B7 así:
Out2 (T7, B7). El T4 no se conecta.
• Anchura mínima de contactos y vías: 2λ.
• Las muescas son tratadas como espacios y llevan las mismas reglas de diseño de
los espaciamientos.
• No se permiten ángulos diferentes a múltiplos de 90º.
• No se permiten parámetros de diseño inferiores a 22λ en ninguna de las capas.
Descripción eléctrica
Parte del diseño de la celda corresponde a su caracterización eléctrica, que debe estar establecida para realizar la simulación. Dicha caracterización hace referencia a:
Temperatura de operación de los dispositivos: Valor nominal: 27ºC,intervalo entre -25 y 85ºC.
Tensión de alimentación:Valor nominal: 5V, intervalo entre 4.5 y 5.5V.
Capacitancia de carga:Valor nominal: 0.5pF, intervalo entre 0 y 5pF.
Tiempos de transición:Valor nominal: 1ns, intervalo entre 0 y 5ns.
Para las pruebas en las simulaciones se toman generalmente los valores nominales
de los parámetros, sin embargo se hacen pruebas para los casos extremos en donde
para el caso de funcionamiento rápido se usa la temperatura menor, la mayor alimentación y los tiempos más cortos con los modelos rápidos de transistores, mientras que en
el caso de funcionamiento más lento se emplean los valores contrarios.
382
Consumo de Potencia
La potencia que toma la fuente de alimentación permite determinar las corrientes que
soportarán los contactos y las vías, de manera que se puedan dimensionar la cantidad
de cada uno de ellos.
La capacitancia de entrada también hace parte de los parámetros básicos en el diseño de celdas estándar y está definida como la cantidad de carga ingresada a la entrada
correspondiente, sobre la variación de tensión producida por dicha carga:
c=
∆q
∆V
(1.1)
Una estimación válida para calcular la capacitancia corresponde al área total de las compuertas vistas desde la entrada por el valor de capacitancia C definida en las reglas de diseño.
c = h *w *C
(1.2)
En la Figura 10.7 se observa un ejemplo de layout con celdas estándar para una compuerta
respetando las reglas de diseño.
Figura 10.7 Layout de Nivel 12
Celdas en L-Edit
L-Edit provee comandos muy potentes para la creación, edición y aplicación de celdas en
la diagramación de layouts. Dichos comandos se encuentran en el menú Cell de la barra de herramientas. Esta herramienta permite asignar nombre a cada celda realizada y al archivo como
tal, de manera que las celdas realizadas puedan ser reutilizadas en el mismo u otro archivo.
2 Peña Martinez, Ana.
Design of MOS Current-Mode Logic Standard Cells
383
Cuando se finaliza la edición de una celda, hay tres opciones:
• La celda editada puede ser guardada simplemente abriendo una nueva celda.
• La celda puede ser renombrada usando el comando Rename del menú Cell.
• Guardar la celda original intacta utilizando el comando Close As, pero guardando
una nueva celda con los cambios realizados bajo otro nombre.
A las celdas guardadas se puede acceder a través del comando Instance, el cual al
ser ejecutado muestra una lista de celdas disponibles. Esta lista constituye la biblioteca del
archivo; donde se pueden eliminar las celdas no deseadas a través del comando Delete y
el comando para deshacer alguna acción es Revert Cell.
En L-Edit el diseño se hace a partir de “primitivas” (objetos geométricos como rectángulos y polígonos), lo que genera un estructurado jerárquico que permite construir celdas de
complejidad variable, desde compuertas simples hasta bloques funcionales de gran escala.
Luego de construidos estos bloques pueden ser reducidos de nivel, es decir, se pueden
convertir en celdas primitivas mediante el comando Flatten; al utilizar dicho comando es
necesario estar muy seguros de la conversión, ya que éste proceso no se puede revertir.
Layout de un Chip
El diseño de grandes bloques funcionales requiere un enfoque jerárquico. Primero
las compuertas lógicas individuales se crean y guardan como celdas. Estas pueden ser
usadas para crear grandes celdas y así sucesivamente hasta obtener el bloque final.
Grupo de Señales
Las señales digitales pueden ser agrupadas en dos grandes categorías: datos y control. En general, los bits de datos son codificados en segmentos de información, como
números o símbolos, siendo procesados por el sistema. Los bits de control, de otro lado,
determinan las operaciones que los bits de datos deben realizar.
El diseño de una red digital puede ser dividido usualmente en dos sub-problemas, el
diseño del camino de datos lógico, centrado en la creación de funciones que procesan
las cadenas de datos y el diseño del camino de control que determina la ruta que seguirán los datos durante la operación. Las señales de control son usadas para activar las
cadenas de datos desde las compuertas en el orden apropiado.
Aunque existen excepciones, el camino de datos lógico tiende a ser localizado y
puede ser contenido en celdas unitarias. Las señales de control usualmente se aplican a
bloques funcionales y deben ser enrutadas a varios puntos.
El “Floorplan”
El plano del dispositivo (Floorplan) muestra la localización y el área utilizada por las
funciones lógicas en el chip terminado. Canales de enrutamiento de las líneas de datos,
relojes y señales de control son determinados por comparación entre el diseño lógico y
el diseño físico del plano.
La creación del plano permite el mejoramiento de cada uno de los niveles de diseño,
pues a través de éste son estudiados cada uno de los bloques funcionales y las interconexiones requeridas de manera minuciosa (tamaños, distancias…), asegurando obtener
una eficiente velocidad de transmisión de datos.
384
Interconexiones
Es tal vez el factor más limitante en un sistema de alta densidad. Por esta razón deben tenerse en cuenta las siguientes reglas:
• Dentro de una capa, deben ser lo más angostas posible al igual que la separación
entre ellas.
• Los contactos y vías deben ser generados en los alrededores de las mismas.
De esta manera se evitará la inserción de grandes capacitancias parasitas debidas
al acoplamiento eléctrico entre las líneas de las capas, lo cual se denomina “crosstalk” y
causa errores en la transmisión de los datos.
Padframes
Se denominan de esta manera las regiones de metal que permiten la conexión entre
los circuitos internos y los pines del empaquetado del Circuito Integrado.
Distribución Global de Señales
La topologías de la red de interconexión están generalmente basadas en simetrías
geométricas, en un esfuerzo por asegurar que cada línea entregue la misma señal al receptor sin importar su ubicación.
Distribución de Potencia
Todos los circuitos integrados requieren buses de líneas de distribución de potencia
para suministrar corriente a las entradas. Usualmente, se usa uno positivo (VDD) y una
tierra (VSS) que deben estar alrededor del circuito. Es importante utilizar una geometría
regular que se acomode a las celdas lógicas.
Funcionamiento de una celda estándar
Una celda estándar se desarrolla en el transistor, en la forma de un transistor netlist
(lista de nodos). El netlist nodal es una descripción de los transistores, sus conexiones el
uno al otro, y sus terminales (puertos) para el entorno externo. La lógica combinatoria y el netlist sólo son útiles para el resumen (algebraico) de simulación, y no para la fabricación del dispositivo; la representación física de la celda normal se debe diseñar también, a esta se la llama la vista de diseño y es el nivel más bajo
de abstracción en la práctica común de diseño. Desde una perspectiva de la fabricación,
el nivel de celdas del diseño VLSI es el punto de vista más importante, ya que es más
cercano al real “proyecto de fabricación” de la celda normal. La presentación está organizada en capas de base, que corresponden a las diferentes estructuras de los dispositivos
de transistor, y las líneas de interconexión, que se unen las terminales del transistor.
Todos estos netlist estarán dentro de la biblioteca de celdas estándar, anteriormente
mencionadas, la cuales servirán para la edición del diseño, que se realiza en forma de un
esquema que contendrá sólo las celdas disponibles en la biblioteca, y el layout se generará automáticamente por medio de las herramientas de síntesis suministradas al efecto.
También debe de quedar claro que esta alta automatización del diseño se hace posible a
costa de fuertes restricciones en las opciones de layout.
Toda biblioteca de diseño con módulos estándar, incluso con independencia de la
aproximación de implementación elegida, debe suministrar información de diversa índole
385
para permitir a las herramientas automáticas de diseño hacer frente a las diferentes tareas que les son encomendadas. En primer lugar, el fabricante de una determinada tecnología debe proporcionar los modelos de simulación de los elementos componentes
de cada una de los módulos, de forma que el software de desarrollo se convierte en una
potente herramienta de verificación del ajuste del funcionamiento del circuito integrado a
las especificaciones. Pero además de los modelos de simulación, las bibliotecas incluyen
especificaciones dimensionales (modelos físicos), en donde se definen sus características geométricas; se trata de un aspecto indispensable para que la herramienta de diseño
pueda generar automáticamente el layout del circuito.Finalmente, las bibliotecas se suelen acompañar con los procedimientos de test necesarios para la comprobación de la
integridad funcional de los dispositivos una vez fabricados.
Una de las condiciones necesarias en una biblioteca de celdas es el disponer de una
documentación detallada de dicha biblioteca. Esta información no sólo debe contener el
layout, una descripción de la funcionalidad y la posición de los terminales, sino también
caracterizar el retardo y el consumo de las celdas en función de la capacidad de carga y los
tiempos de subida y bajada en las entradas. A modo de ejemplo, la figura 8 ilustra el layout
y las características de retardo de una celda estándar que corresponde a una compuerta
NAND de 3 entradas. Siendo más precisos, las celdas que componen cualquier biblioteca
se definen en distintos niveles de representación. Así, en el nivel comportamental tendremos descrito su modelo funcional y el modelo VHDL y/o Verilog. En un nivel estructural de
representación se especifican el símbolo o icono representativo para su uso en esquemas,
así como la descripción esquemática del circuito. Finalmente, en el nivel físico se describirá
su layout, modelo temporal y estrategias de test, entre otras características.
vdd_l
LEFT
vdd_r
RIGHT
Fanout 4x
0.5 μm
1.0 μm
2.0 μm
0.595
0.711
0.919
0.692
0.933
1.360
B1_tphl
0.591
0.739
1.006
B1_tplh
0.620
0.825
1.181
C1_tphl
0.574
0.740
1.029
C1_tplh
0.554
0.728
1.026
A1_tphl
A1_tplh
A1
TOP. BOTT
0
TOP. BOTTOM
B1
TOP. BOTTOM
TOP. BOTTOM
gnd_l
LEFT
gnd_r
RIGHT
nanf 301
(a) Cell layout.
(b) Cell characterization (delay in
nsec) for a fan-out of four and for
three different technologies.
Figura 10.8 Layout y características de retardo de una celda estándar que corresponde a una compuerta
NAND de 3 entradas
386
Estructura
Físicamente, las celdas se sitúan en filas, separadas por canales de interconexión, tal
como se ilustra en la Figura 10.9. Para que esta disposición sea eficaz, es necesario que
las celdas de la biblioteca tengan alturas idénticas (pitch), de forma que será su anchura
la que variará para acomodar las diferencias de complejidad. Como se ilustra en la Figura
10.9, la técnica basada en celdas estándar puede entremezclarse con otras aproximaciones de layout para permitir la introducción de módulos que no se adaptan de forma eficiente
a este paradigma (p.e. memorias o multiplicadores). Una fracción sustancial del área en
esta aproximación se dedica a la conexión, por tanto la minimización de esta área es la
meta principal de las herramientas de ubicación y conexión en esta aproximación, llegando
a introducirse celdas falsas de “paso” (feedthrough) para minimizar la longitud de las conexiones. La disponibilidad de múltiples capas de interconexión facilita esta optimización.
Podemos analizar la anatomía de una celda estándar a partir de la representada en
la Figura 10.10. Se trata de una celda de aproximadamente 25 micras de ancho en un
ASIC de una tecnología con λ=0.25μ. Las celdas estándar se “apilan” como ladrillos en
un muro, y la “caja de empotrado” (abutment box) define las fronteras del ladrillo. La diferencia de este límite y el de la “caja de delimitación” (bounding box) es el área de solapamiento entre celdas. Las líneas de alimentación recorren horizontalmente las celdas, y las
conexiones de señal, en este caso, se sitúan en el centro de la celda (los tres cuadrados
etiquetados como A1, B1 y Z), si bien pueden también llevarse a las fronteras superior e
inferior de la celda para hacerlas salir a los canales de interconexión.
Rows of cells
Feedthrough cell
Logic cell
Routing
channel
Functional
module
(RAM,
multiplier,...)
Figura 10.9 Disposición de las celdas estándar separadas por canales de interconexión3
3 J.M. Rabaey, A. Chandrakasan y B. Nikolic. Digital integrated circuits. A design perspective (2e).
Prentice Hall. 2003.
387
VDD
m1
cell bounding box
(BB)
n-well
contact
ndiff
pdiff
metal2
A1
B1
Z
via
poly
ndiff
cell abutment box
(AB)
p-well
pdiff
pdiff
GND
10λ
Figura 10.10 Estructura típica de una celda estándar
Dentro de la estructura de las celdas podemos ver las siguientes características que
están relacionadas con la forma básica de las celdas:
• Todos los puertos de entrada y salida tienen tipo, capa, posición, tamaño y puntos
de interface predefinidos. Estas características son determinadas basándose en el método de colocación y/o enrutamiento usado para implementar el diseño. Los puertos son
objetivos para el enrutador y deben ser optimizados para resultados óptimos.
Un ejemplo de esto podría ser que el enrutamiento puede ser hecho más rápido y
fácil usando una señal de sincronización que es definida en la grilla. Las herramientas
de enrutamiento usaran menos recursos computacionales si la grilla es usada, porque la
aritmética requerida por la herramienta es simplificada.
• La interface de las celdas puede ser diseñada para compartir ciertas conexiones.
Ejemplos de esto pueden ser las terminales de fuente de los transistores que están conectadas a las fuentes de alimentación. Alternativamente, sustratos y contactos pueden
ser compartidos entre celdas.
• Un esbozo rectangular y un set de obstrucciones para cada capa de enrutamiento
también son características de cada celda. Las obstrucciones pueden ser definidas separadamente para cada capa de enrutamiento, o el esbozo entero de la celda puede ser usado
como una obstrucción. Las obstrucciones pueden tener cualquier forma, no están restringidas a rectángulos, pero deben ser reconocidas por la herramienta de enrutamiento.
• Todos los polígonos deben estar espaciados desde la frontera de la celda por un
valor igual a la mitad de la distancia de espaciamiento de la regla de diseño.
388
Enrutamiento
El enrutamiento es un paso crucial en el diseño de circuitos integrados. Se basa en
un paso anterior llamado la colocación, que determina la ubicación de cada elemento
activo de un circuito integrado. El enrutamiento es entonces el proceso de añadir todos
los cables necesarios para conectar correctamente todos los componentes, obedeciendo
todas las normas de diseño.
La tarea de todos los enrutadores es la misma. Se les da algunos pre-existentes que
consisten en los polígonos de pines (también llamados terminales) en las celdas y opcionalmente, algunos pre-cableados existentes llamado pre-routers. Cada uno de estos polígonos está asociado con una red, generalmente por el nombre o número. La tarea principal
del router es crear geometrías de tal forma que todos los terminales asignados a la misma
red están conectados y todas las normas de diseño se cumplen. Un router puede fallar
por error en la no conexión de dos terminales que deben estar conectados (abiertos), la
conexión de dos terminales que no deben estar conectados (corto), o mediante la creación
de una violación de las normas de diseño. Además, para conectar correctamente las redes,
los routers también pueden esperar para asegurarse de que el diseño cumple las normas,
no tiene problemas de interferencias, se reúnen todo los requisitos de densidad de metal,
no sufren los efectos de la antena, y así sucesivamente. Esta larga lista de objetivos en
conflicto a menudo es lo que hace extremadamente difícil el enrutamiento.
Entre las diferentes propuestas de interconexión o enrutado de filas de las celdas
existen dos que pueden considerarse como las más representativas: la aproximación
Weinberger y la denominada “técnica de celdas estándar”. En la primera, las conexiones
de señal (entradas y salidas) fluyen en paralelo a los raíles de alimentación, ocupando la
zona central de la celda y adoptando una disposición perpendicular a las zonas de difusión que definen los transistores, tal como se ilustra en la Figura 10.11(a). Esta aproximación resulta especialmente apropiada para diseños bit-slice. En la segunda aproximación,
las conexiones de señal generalmente ocupan zonas específicas denominadas “canales
de interconexión”, fluyendo perpendicularmente a los raíles de alimentación en la vertical
de las celdas (ver Figura 10.11(b)). Esta alternativa da lugar a layouts más densos en el
caso de la lógica CMOS estática, y permite un alto grado de automatización, por lo que
constituye la alternativa más utilizada en diseño microelectrónico.
Mirrored cell, sharing well
Metal1
Metal1
Polysilicon
VDD
VDD
Well
Well
Signals
Vss
Vss
Static CMOS Cells
(a)
Routing channel
Signals
Polysilicon
Pseudo-NMOS
(b)
Figura 10.11 Formas de interconexión de filas de celdas: (a) Aproximación Weinberger; (b) Técnica de
celdas estándar.
389
C
VSS
VSS
H
A
D
A
E
C
B
H
E
VDD
VDD
C
B
VSS
VSS
A
C
D
B
H
D
Q
B
VDD
E
P
R
B
VDD
P
R
A
C
B
VSS
VDD
C
A
VSS
VSS
Q
A
C
VDD
B
B
FEEDTHROUGH
A
E
FEEDTHROUGH
D
VDD
FEEDTHROUGH
H
C
A
B
C
FEEDTHROUGH
En la Figura 10.12 y 10.13.a se observan ejemplos de canal de enrutamiento sin conexiones sobre las celdas y en la Figura 10.13.b un ejemplo de canal de enrutamiento sin
conexiones sobre las celdas.
A
E
Metal1
VSS
Metal2
D
H
E
D
H
Feed
trough
VSS
VDD
C
H
E
VSS
B
D
VDD
VDD
A
E
D
H
LEGEND of layers
involved in routing
This is an example pf channel routing without over the cell routing
Figura 10.12 Ejemplo de canal de enrutamiento sin conexiones sobre las celdas4
Channel used by the router
(a)
Channel used by the router
Full height or the 3 raws houding routing
Channel router without over the cell routing
Channel used by the router . over the cel routing
(b)
Channel used by the router . over the cel routing
Full height or the 3 raws houding routing
Channel router with over the cell routing
Figura 10.13 Comparación de estilos de canales de enrutamiento (a) sin conexiones sobre las celdas y
(b) con conexiones sobre las celdas5
4 Dain Clain. CMOS IC layout, Concepts, methodologies and tools. Newnes. 1999
5 Dain Clain. CMOS IC layout, Concepts, methodologies and tools. Newnes. 1999
390
Extracción
Se trata de una herramienta que deduce el esquema de un circuito a partir del layout
físico. Es una extensión de los DRC y utiliza algoritmos similares. Explorando las diferentes
capas y sus interacciones, el extractor reconstruye la red de transistores, incluyendo los
tamaños de los dispositivos y las interconexiones. El diagrama de conexiones del circuito
(netlist) resultante contiene información precisa de los parásitos, tales como las capacitancias de hilos y difusiones y sus resistencias, cuyos valores estimados anota en el netlist.
El procedimiento de extracción de un circuito se basa en identificar y borrar sucesivamente componentes, supuesto que se ha aplicado previamente un DRC y está libre de
errores. Cuando todos los componentes se han extraído, sólo permanecerán los hilos.
Para esta identificación de componentes se requiere el manipular “máscaras” geométricas, tanto individuales como combinaciones de ellas, por medio de la aplicación de
sucesivas operaciones de crecimiento y reducción. También se hace necesario aplicar
combinaciones booleanas de máscaras para obtener nuevas máscaras.
Dos ejemplos usuales de este procedimiento son: la extracción de componentes parásitos a partir del diagrama de máscaras y la extracción de retardos a partir del esquema
eléctrico para ser utilizados en el nivel lógico.
Aplicaciones Celdas estándar
Probabilidades de falla en canales de enrutamiento en el
diseño de celdas estándar
Una aproximación para la extracción de fallas se realiza empleando un método mejorado para el cálculo de áreas críticas que se llama Overlap Segmentation. Este cálculo
es exacto, si asumimos defectos de formas cuadradas, donde adicionalmente la probabilidad de ocurrencia está determinada para cada falla. El método fue desarrollado en
detalle para la extracción de fallas en canales de enrutamiento de diseños estándar de
celdas VLSI. Los canales de enrutamiento de canales de frecuencia requieren una notable cantidad de área de diseño y las líneas de señal dentro de un canal de enrutamiento
son típicamente mucho más largas y tienen más probabilidades de ser afectadas por
una falla que los nodos internos de una compuerta lógica. En principio, sin embargo, el
enfoque puede ser adaptado para el diseño de estructuras geométricamente arbitrarias
(sobre todo en el enrutamiento de arreglos de compuertas y switchbox).
A condición de un cierto rango de tamaño defecto, todas las posibles fallas con un
número arbitrario de las redes, que pueden estar conectados por un defecto, pueden ser
encontradas. Además todas las posibles interrupciones que un defecto puede causar en
una sola red o varias redes se detectan.
391
Muchas áreas pueden beneficiarse con el uso de probabilidades de fallo, por ejemplo
se puede realizar una estimación de la calidad de un producto. Por otra parte, la probabilidad de falla puede ayudar a evaluar los diseños con respecto a sus defectos y detectar
sensibilidad en áreas particularmente susceptibles. En la Figura 10.14 se presentan algunos ejemplos de los tipos de fallas existentes en el diseño de una celda estándar.
area of extra metal
C1
C2 C8
C9
C10
C11
(a)
C3 C4 C5
C6
area of missing metal
C7 C12
C13 C14 C15 C16
area of missing insulator
C1
C2 C8
C9
C10
C11
(b)
C3 C4 C5
C6
C7
C12
C13 C14 C15 C16
area of extra insulator
Figura 10.14 (a) Falla tipo puente. (b) Falla tipo rotura
Para cada defecto y una cierta forma de defecto, existe un método de cálculo de áreas
críticas (Figura 10.15). Se asumen cuadrados defecto en lugar de formas circulares u octogonales. Esta aproximación es suficiente y los algoritmos geométricos son mucho más fáciles.
Después de aplicar el método Overlap Segmentation la configuración de los rectángulos queda como la siguiente Figura 10.16.
s
s
s
s
R
s
DRoverlap(R,s)
current flow
R
s
DRcover(R,s)
DRbreak(R,s)
Figura 10.15 Funciones para el cálculo de áreas críticas
392
R
R(EG2)
R(EG1)
A1
A2
A3
A5
A9
A8
R(EG3)
A6
A7
A10
R(EG4)
A11
Figura 10.16 Configuración de rectángulos
Modelos físicos de enrutamiento en diseño de celdas estándar
En el diseño de circuitos VLSI el canal de enrutamiento es uno de los pasos más
importantes para finalizar el diseño. Después de que las celdas se colocan en hileras y
las alimentaciones necesarias son insertadas, un canal de enrutamiento completa las
interconexiones en los canales entre las celdas (Figura 10.17).
the upper row of the cells
routing channel
the lower row of the cells
Figura 10.17 Enrutamiento de canales entre filas de celdas
Los canales de enrutamiento convencionales son restringidos a la utilización de dos
capas de enrutamiento en los canales de las interconexiones. El problema del enrutamiento en celdas estándar convencionales ha sido ampliamente estudiado y hay varios
canales de enrutamiento que pueden producir soluciones utilizando por mucho una o dos
pistas más de la densidad de canal para la mayoría de los problemas prácticos.
Para reducir aún más la zona del canal de enrutamiento, algunos routers utilizan la
zona de rutas extra en las celdas para interconexiones. Estos routers son llamados overthe-cell channel routers y presentan un algoritmo que produce dos áreas de enrutamiento, una capa plana sobre las celdas (fuera del canal) y dos capas dentro del canal, las
cuales son usadas para conectar todas las redes (Figuras 10.18 y 10.19). Un enrutador
393
de arreglos de compuertas utiliza over-the-cell channel routers horizontales y verticales
para aumentar la densidad de las celdas. Para la capa sobre las celdas, el router busca
algunas conexiones planas de subredes de modo que el número de redes necesitadas
para el enrutamiento dentro del canal es reducido, por tanto se logra un menor número
de pistas que la densidad de canal.
En los diseños estándar de celdas, ya que una gran parte del circuito VLSI de la zona
se utiliza para el canal de enrutamiento, los ahorros obtenidos en la zona por la aplicación del proceso over-the-cell channel routing pueden ser muy importantes. Sin embargo,
puede producir sólo soluciones simbólicas de enrutamiento o soluciones para un diseño
en una tecnología particular.
Se han desarrollado varios modelos físicos que tienen como base el over-the-cell channel routing, con el fin de que los modelos sean lo suficientemente generales y puedan aplicarse a la mayoría de las tecnologías de diseño. Estos modelos se basan en la búsqueda
de un máximo ponderado del subconjunto de las redes para crear una ruta sobre las celdas6. El efecto es que la densidad de canal resultante se ve reducida tanto como es posible.
upper the channel
upper terminals
P Channel Transistors and
OTC Routing Area
Vdd Bus
Gnd Bus
N Channel Transistors and
OTC Routing Area
Lower Terminals
Lower Channel
Metal2
Metal1
Cut
Figura 10.18 Una solución válida mediante el uso de over-the-cell channel routing
1
2
1
5
2
5
4
3
4
3
5
2
1
4
1
5
3
6
5
6
3
3
Figura
Ejemplo
routing
col.10.19
1 2
3 4 simbólico
5 6 7 over-the-cell
8 9 10 channel
11
6 J. Cong, B. Preas, C.L. Liu. P hysical Models and efficient algorithms for Over-the-cell routing in
Standard cell design. www.citeseerx.ist.psu.edu, consultado el 27 de Mayo de 2010
394
Pasos a seguir para el diseño con
Celdas estándar
D
espués de haber conocido que es una celda estándar, como funciona, su estructura, el enrutamiento y la extracción, podemos ya dar una pauta de cuáles
son los pasos a seguir en el diseño con celdas estándar.
Este tipo de diseño contempla las siguientes etapas, aunque en la práctica estas etapas pueden variar significativamente (Figura 10.20). Estos pasos, llevados a cabo
con el nivel de habilidad común en la industria, casi siempre producen un dispositivo final
que implementa correctamente el diseño original, a menos que se introduzcan fallas al
nivel físico de fabricación.
1. Un equipo de ingenieros de diseño comienza con la compresión no formal de las funciones requeridas por el ASIC a diseñar, usualmente derivada del análisis de requerimientos.
2. El equipo de diseño construye una descripción del ASIC para alcanzar estos objetivos, utilizando un HDL. Este proceso es similar a escribir un programa computacional
en un lenguaje de alto nivel. Este usualmente es llamado el diseño RTL (por sus siglas en
ingles Register Transfer Level).
3. La validez del diseño es verificada a través de una simulación. Un sistema virtual,
implementado a nivel de software puede simular el desempeño de los ASIC a velocidades
equivalentes de mil millones de instrucciones por segundo.
4. Una herramienta de síntesis lógica convierte el diseño RTL en un gran conjunto de
elementos de bajo nivel, llamados Celdas Estándares. Estos elementos son tomados desde
una biblioteca, que consiste en una colección de compuertas pre-caracterizadas (tales como
NOR de 2 entradas, NAND de 2 entradas, inversores, etc.). Las celdas estándares usualmente son específicas para el fabricante del ASIC. El conjunto resultante de Celdas Estándares,
junto a la interconexión de ellas, es llamado la lista de nodos a nivel de compuertas.
5. La lista de nodos es luego procesada por una herramienta de posicionamiento, la
cual ubica las celdas estándar en una región que representa el ASIC final. Esta ubicación
está sujeta a un conjunto de restricciones. En ocasiones se utilizan técnicas avanzadas
para optimizar el posicionamiento.
6. La herramienta de enrutamiento toma la ubicación física de las celdas, y utiliza el
listado de nodos para crear las conexiones eléctricas entre ellas. La salida de esta etapa es
un conjunto de foto-máscaras, con las que el fabricante producirá los circuitos integrados.
7. Se puede hacer una estimación bastante precisa de los retardos finales, las resistencias y capacitancias parásitas y del consumo de energía. Estas estimaciones son
usadas en la ronda final de pruebas. Estas pruebas demostrarán que el dispositivo funcionará en los rangos de temperatura y voltaje extremos. Cuando estas pruebas finalizan,
la información de las foto-máscaras es entregada para la fabricación del chip.
395
Estos pasos de diseño son también comunes al diseño de un producto estándar. La
diferencia significativa es que el diseño con Celdas Estándar utiliza la biblioteca de celdas
del fabricante, que ha sido utilizada en potencialmente cientos de otros diseños, y por lo
tanto constituyen un riesgo mucho menor que un diseño hecho totalmente a la medida.
Las Celdas Estándares producen una densidad de diseño con un costo comparativamente más bajo y pueden también integrar núcleos IP y SRAM en una forma efectiva, a
diferencia de las matrices de compuertas.
D
Q
S
Specifications
Legend
Circuit Entry
Schematic
Capture
Data Flow
Corrective Action
Design Delivery
Circuit Validation
Polygon
Editing
Layout
Entry
Layout
Verification
Layout
Extraction
Implementation
Figura 10.20 Diseño con celdas estándar7
Pasos a seguir para el diseño con
Celdas estándar
Ejemplo de Celda Estándar OR de 2 Entradas:
Selección del modelo CMOS de la compuerta
Especificaciones:
• tf: tr=3tf.
• V IL =0.4V
V IH =3.8V
V
• OL =0.2V
VOH
•
•
=4.4V
7 Dain Clain. CMOS IC layout, Concepts, methodologies and tools. Newnes. 1999
396
El modelo de lógica Crosse se muestra a continuación:
VDD
INA
PMOS1
VDD
INB
PMOS2
PMOS3
VOUT
INA
INB
NMOS3
NMOS2
NMOS1
VSS
VSS
VSS
Este modelo se puede ver como la mezcla entre una compuerta NOR CMOS de dos
entradas con un inversor CMOS a la salida.
Componentes de la Compuerta OR:
INA
1
INB
1
2
VOUT
INV
NOR
Tabla de verdad:
INA
0
0
1
1
INB
0
1
0
1
VOUT
0
1
1
1
INB [V]
0.40
3.8
0.4
3.8
VOUT [V]
0.2
4.4
4.4
4.4
Valores esperados:
INA [V]
0.4
0.4
3.8
3.8
397
Se distribuyen los transistores de tal forma que se obtenga la mejor distribución. Para
que el tiempo de subida sea 3 veces el tiempo de bajada se debe hacer el área de las
compuertas de polisilicio de los transistores NMOS 3 veces mayor que el área de los
PMOS. Como puede apreciarse en el modelo del primer layout:
Este primer intento de layout al simularlo presenta conflicto con los tiempos y sólo se
simula hasta 900ps. Ahora para una nueva simulación se suspende uno de los transistores de PMOS y se lleva el pozo N a VDD como puede verse a continuación:
398
Este es un layout de 68λ de largo por 60λ de alto, se puede notar la ausencia del
primer transistor y la compuerta a VDD del pozo N. Una primera simulación en SPpice
de este layout se muestra a continuación a si como su respectivo archivo .cir: * Circuit
6.0V
4.0V
2.0V
0V
-2.0V
0s
10ns
V(INA)
V(INB)
20ns
30ns
40ns
50ns
60ns
70ns
80ns
90ns
100ns
V(VOUT)
Extracted by Tanner Research’s * TDB File: C:\Documents and
* Cell: Cell0
Version 1.88
* Extract Definition File: CNM25.EXT
* Extract Date and Time: 12/17/2007 * Warning: Layers with Unassigned
* <EXT-Capacidad poly>
* Warning: Layers with Zero Resistance.
* <EXT-Capacidad poly>
* NODE NAME ALIASES
*
1 = INB (53,72.25)
*
2 = VOUT (77.75,38.75)
*
3 = VDD (22.5,67.5)
*
5 = INA (32,72.75)
*
7 = VSS (18.75,6.5)
.model PMOS PMOS LEVEL = 2
+ TOX = 380E-10 VTO = -1.139 NSUB = 1.355E16 UO = 212.7
+ UCRIT = 1E4
UEXP = .1159 NFS = 662.4E9 WD = .4268E-6
+ DELTA = 1.824 RS = 134.9
LD = .8101E-6 XJ = 2.783E-9
+ VMAX = 120.3E3 NEFF = .06665 CJ = 3.816E-4 MJ = .3499
+ CJSW = 7.384E-10 MJSW = .3916 PB = .56
.model NMOS NMOS LEVEL = 2
+ TOX = 380E-10 VTO = .9418 NSUB = 2.639E16 UO = 648.2
+ UCRIT = 1E4
UEXP = .06857 NFS = 710.8E9 WD = .4086E-6
+ DELTA = 2.2
RS = 93.77
LD = .9132E-6 XJ = .0824E-6
+ VMAX = 59.62E3 NEFF = 1.479 CJ = 3.495E-4 MJ = .3950
+ CJSW = 5.952E-10 MJSW = .2941 PB = .65
VDD1 VDD 0 DC 5
VINB INB 0 PULSE(0 5 0 1n 1n 8n 20n)
399
VINA INA 0 PULSE(0 5 0 1n 1n 16n 20n)
VDD2 VSS 0 dc 0
C3 VOUT 0 0.5pF
*C4 vdd 0 1.392FF
M1 4 INB VDD VDD PMOS L=2.5u W=5.25u
M2 VOUT 4 VDD VDD PMOS L=2.5u W=15u
M3 VSS INB 4 6 NMOS L=2.5u W=5u
M4 VOUT 4 VSS 6 NMOS L=2.5u W=5u
M5 4 INA VSS 6 NMOS L=2.5u W=5.25u
* Total Nodes: 7
* Total Elements: 5
* Total Number of Shorted Elements not written to the SPICE file: 0
* Extract Elapsed Time: 0 seconds
.tran 0.1n 100n
.probe
.END
Esta misma simulación sirve para medir y verificar los tiempos de subida y de bajada
a la salida de la compuerta, como podemos ver en seguida.
Tiempos de subida y de bajada
Es importante aclarar que esta y todas las simulaciones se hacen con un condensador de carga a la salida de 5pF, como puede verse en el texto del archivo OR2.cir.
El tiempo de subida es de 0.19ns aproximadamente.
5.15V
(20.492m, 4.5118)
4.00V
2.00V
(20.307m, 495.653m)
0V
20.0ns
V(VOUT)
400
20.2ns
20.4ns
20.6ns
Time
20.8ns
El tiempo de bajada es de 0.25 ns aproximadamente.
5.18V
(37.522n, 4.4978)
4.00V
2.00V
(37.764n, 534.
0V
37.200ns
V(VOUT)
37.400ns
37.600ns
37.800ns
Tiempo
Lo que quiere decir que la condición de tiempos de bajada y subida no se cumple. Para
mejorar los tiempos se deben hacer varios cambios en el layout, que se pueden ver en seguida:
401
En esta figura del layout mejorado se puede notar la puesta a tierra de la implantación
n+ que hacía falta y los cambios en las dimensionas de las áreas activas (color verde).
Los resultados de la simulación fueron las siguientes:
Tiempo de subida tr=0.16ns
5.05V
(20.451n, 4.5656)
4.00V
2.00V
(20.297n, 42a.498m)
0V
0.201ns
20.250ns
20.300ns 20.350ns
20.400ns
20.450ns
20.550ns 20.600ns
Tiempo
V(VOUT)
Tiempo de bajada tf=0.057ns
4.96V
(37.607n, 4.1826)
4.00V
3.00V
2.00V
(37.661n, 763.383m)
1.00V
0V
37.514ns
37.550ns
V(VOUT)
402
37.600ns
37.650ns
Tiempo
37.700ns
37.
Margen de ruido.
En el archivo OR2Rev2.cir se modificaron las señales de entrada para ver como es
el comportamiento de la compuerta a señales degradadas en las entradas (0.4v, 3.8V).
El resultado de la simulación se observa en la figura siguiente, donde se aprecia que
a la salida no hay mayor degradación, luego el funcionamiento de la compuerta frente a
niveles de ruido es aceptable.
5.00V
4.00V
3.00V
2.00V
1.00V
0.12V
0.6ns
10.0ns
V(VOUT)
V(INA)
20.0ns
30.0ns
40.0ns
V(INB)
50.0ns
60.0ns
70.0ns
80.
Tiempo
Arreglos de compuertas
Definición
Un arreglo de compuertas - GA (por sus siglas en ingles Gate Array) es un conjunto
de compuertas (AND, OR, NOR, Compuertas de transmisión, etc.) que están interconectadas entre sí de una manera particular con el objetivo de formar un grupo funcional que
permita solucionar un problema, que puede ser tan sencillo como un negador para invertir
una señal, hasta un dispositivo de aceleración de gráficos de última generación.
Tipos de GA
En la actualidad existen varios tipo de GA, sin embargo algunos de ellos han empezado a ser reemplazados por otros que emplean tecnologías más avanzadas, lo que
redunda en el aumento de las velocidades de procesamiento y un mayor número de compuertas por área. Algunos arreglos de compuertas son:
403
• Dispositivos lógicos Programables (PLD)
• Arreglos Simétricos
• Arquitectura basada en filas
• PLD Jerárquicos
• Arreglos de Compuertas Programables en el Campo (FPGA)
Siendo estos últimos los más populares y avanzados hasta el momento.
Dispositivos lógicos programables (PLD)
Los PLD son dispositivos re-configurables basados en arreglos de compuertas AND
y OR con caminos en metal programables por medio de la interconexión entre ellos,
sin embargo, hoy en día, si se quiere hacer efectivo y competitivo el uso de bloques de
desarrollo general, la mejor forma es usando hardware re-configurable que permita usar
programación, por lo tanto estos dispositivos han ido evolucionando de tal forma que finalmente fueron transformados a FPGAs.
Arreglos simétricos
Esta arquitectura consiste en bloques lógicos configurables (llamados CLB por sus siglas en ingles) distribuidos en filas y columnas de una matriz e interconexiones alrededor
de esta. Esta matriz simétrica está rodeada por bloques de entrada y salida I/O los cuales
conectan al mundo externo. Cada CLB consiste en n-entradas de una tabla Look up y un
par de flip flops programables. Los bloques I/O también manejan funciones como controles
tri-estado y velocidad de transición de las salidas. Las interconexiones proveen el camino
de enrutamiento. Interconexiones directas entre elementos lógicos adyacentes tienen un retardo más pequeño comparado con las interconexiones de propósito general (Figura 10.21)
Logic Block
(CL & FFs)
Interconnections
Figura 10.21 Arreglo simétrico de compuertas8
8 http://www.tutorial-reports.com/computer-science/fpga/tutorial.php
404
Arquitectura basada en filas
Consiste en alternar las filas de los módulos lógicos y los caminos de las interconexiones programables. Los bloques de entrada y salida se encuentran ubicados en la periferia
de las filas. Una fila puede contener filas adyacentes vía interconexión vertical. Módulos
lógicos pueden ser implementados en varias combinaciones.
Los módulos secuenciales pueden implementar funciones secuenciales-combinatorias complejas. El enrutado está dividido en pequeños segmentos conectados por elementos anti-fusibles entre ellos (Figura 10.22).
Routing
Channels
l/O Block
l/O Block
l/O Block
l/O Block
Logic
Modules
Figura 10.22 Arquitectura Basada en Filas 9
PLDs Jerárquicos
Esta arquitectura está diseñada de forma jerárquica con un nivel alto el cual contiene
solamente bloques lógicos e interconexiones. Cada bloque lógico contiene un número
de módulos lógicos, y cada modulo lógico tiene elementos funcionales lógicas secuenciales y combinatorias. Cada uno de estos elementos funcionales es controlado por una
memoria programada. La Comunicación entre bloques lógicos es alcanzada por arreglos
de interconexiones programables. Bloques de entrada y salida rodean este esquema de
bloques lógicos e interconexiones (Figura 10.23).
9 http://www.tutorial-reports.com/computer-science/fpga/tutorial.php
405
Logic
Module
l/O Block
l/O Block
l/O Block
l/O Block
...connects
Figura 10.23 PLDs jerárquicos 10
Arreglos de Compuertas Programables en el Campo (FPGA)
Los bloques lógicos dentro de un FPGA (Figura 10.24) son implementados usando
múltiples niveles bajos de Fan-In, el cual da un diseño más compacto comparado con
una implementación lógica de tipo AND-OR. El FPGA provee dos tipos de configuración:
• La conexión entre bloques lógicos.
• Generación de una función para cada bloque lógico.
Un bloque lógico de un FPGA puede ser configurado de tal forma que puede proveer
funcionalidad tan simple como un transistor o tan compleja como un microprocesador. Es
usado para implementar diferentes combinaciones, para generar funciones lógicas combinatorias y secuenciales. Los bloques lógicos de un FPGA pueden ser implementados
de las siguientes formas:
• Par de transistores
• Compuertas combinacionales como NAND o XOR.
• Tablas Lookup de entrada N.
• Multiplexores
• Ancha estructura And-Or para Fan-In.
10 http://www.tutorial-reports.com/computer-science/fpga/tutorial.php
406
Logic Block
(CL & FFs)
Interconnections
Figura 10.24 Versión simplificada de la arquitectura interna de un FPGA 11
El enrutamiento del FPGA se basa en el uso de segmentos de cable de distintas longitudes los cuales pueden ser interconectados bajo switches eléctricos programables. La
densidad de bloques lógicos usados en un FPGA depende del largo y del número de segmentos de cable usado para el enrutamiento. El número de segmentos usado para una
interconexión típica depende de la densidad de bloques lógicos usados y el área utilizada
para realizar el enrutamiento.
La habilidad para reconfigurar la funcionalidad de un FPGA le da al diseñador una
única ventaja, ya que reduce significativamente los costos y el tiempo de producción.
Bloques Lógicos
Un bloque lógico en un FPGA puede ser implementado de diferentes maneras dependiendo del número de entradas y salidas, cantidad del área utilizada, complejidad de las
funciones lógicas a ser implementadas y número total de transistores utilizados.
Crosspoint FPGA
Consiste en dos tipos de bloques lógicos. El primero usa un par de transistores los
cuales funcionan en paralelo como lo muestra la Figura 10.25.
Transistor Pair
Figura 10.25 Par de transistores en paralelo
12
11 http://www.tutorial-reports.com/computer-science/fpga/tutorial.php
12 http://www.tutorial-reports.com/computer-science/fpga/tutorial.php
407
El segundo tipo de bloques lógicos son las RAM lógicas, las cuales pueden ser utilizadas como memorias de acceso aleatorias.
Plessey FPGA
Es un bloque básico que contiene dos entradas NAND en las compuertas, las cuales
están interconectadas para implementar la función deseada.
Latch
8-2
Multiplexer
8 Interconnect
Lines
CLK
D...
Config RAM
Figura 10.26 Plessey FPGA 13
Tanto el tipo Crosspoint como Plessey tienen una ventaja en su alto porcentaje de
uso de los bloques, pero requieren un largo número de segmentos de cable y switches
programables los cuales ocupan mucha área.
Bloque lógico de Actel
Si las entradas de un multiplexor están conectadas a una constante o a una señal,
éste puede ser usado para implementar diferentes funciones lógicas. Por ejemplo un
multiplexor de dos entradas a y b, implementará la función ac+bc. Si b=0 se implementa
ac, y si a=0 se implementa bc.
W
X
0
1
0
a1
f
1
Y
0
Z
1
a3 a4
a2
Figura 10.27 Bloque Actel 14
13 http://www.tutorial-reports.com/computer-science/fpga/tutorial.php
14 http://www.actel.com/products/axcelerator/docs.aspxhttp://www.atmel.com/dyn/products/product_
card.asp?part_id=2066
408
Normalmente los bloques lógicos de Actel consisten en múltiples números de multiplexores y compuertas lógicas.
Bloque lógico Xilinx
El bloque lógico de Xilinx (Figura 10.28), se utiliza para implementar cualquier tipo de
función de tipo tabla Look up. Las líneas de entrada se conectan a la entrada y al enable
de la tabla Look up. La salida de la tabla entrega el resultado de la función lógica que se
ha implementado. La tabla Look up se implementa usando SRAM.
Una entrada k de una función lógica LUT es implementada usando una memoria SRAM
de tamaño 2^ k *1 . La cantidad de diferentes posibilidades para k entradas es 2^2^ k . La
ventaja de este tipo de arquitectura es que soporta la implementación de muchas funciones
lógicas, sin embargo la desventaja es la inusual cantidad de celdas de memoria requeridas
para implementar un tipo de bloque lógico en caso de tener muchas entradas.
Logic Block
latch
Set by configuration
bit- stream
1
INPUTS
OUTPUT
FF
4LUT
0
4-input ʺlook up tableʺ
Figura 10.27 Bloque Actel 1516 17
Un N-LUT puede ser analizado como una implementación directa de una tabla de
verdad. Cada uno de los LATCHS contiene el valor de la función correspondiente a una
combinación de la entrada. Por ejemplo, la siguiente tabla tipo 2-LUT implementa dos
entradas de funciones AND y OR.
Example: 2-lut
INPUTS
AND
QR
00
0
0
01
0
1
10
0
1
11
1
1
Figura 10.29 Ejemplo 2-LUT 18
15 http://www.tutorial-reports.com/computer-science/fpga/tutorial.php
16 http://www.xilinx.com/support/library.htm
17 http://www.xilinx.com/xlnx/xweb/xil_publications_display.jsp?iLanguageID=1&category=1212262&sGlobalNavPick=SUPPORT&sSecondaryNavPick=BOARDS
18 http://www.tutorial-reports.com/computer-science/fpga/tutorial.php
409
Bloque lógico de Altera
Los bloques lógicos de Altera se han desarrollado desde los primeros PLD. Consisten
en compuertas AND con ancho Fan-In (sobre las 100 entradas) alimentadas con compuertas OR con 3 a 8 entradas. La ventaja de tener una amplia ventana de Fan-In para
las compuertas AND es que pocos bloques lógicos pueden implementar toda la función,
reduciendo la cantidad de área utilizada para las interconexiones; pero la desventaja es
la baja densidad de bloques lógicos en un diseño que requiera menos entradas lógicas.
Otra desventaja es el uso de dispositivos pull-up (compuertas AND) los cuales consumen potencia estática.
Tamaño de bloques lógicos vs. Rendimiento
El tamaño de los bloques lógicos juega un papel importante a la hora de decidir la
densidad de los bloques lógicos y el área de utilización en un FPGA. Esto además afecta
el rendimiento del FPGA 19
• Un bloque lógico de gran tamaño utiliza más lógica y de ahí, un menor número de
bloques lógicos se requieren para implementar una función en el FPGA. Por otro lado, un
gran bloque lógico gastará más espacio dentro del FPGA. Por eso el tamaño óptimo para
un bloque lógico es uno que optimice el uso de compuertas mientras se utiliza tan poco
espacio como sea posible 20
• El área lógica activa es generalmente mucho menor que el área utilizada para realizar las interconexiones. El área total es la suma de ambas áreas 21
• El área ruteada es mucho mayor que el área activa. Esta dentro del 70 al 90% 22
19 http://www.tutorial-reports.com/computer-science/fpga/tutorial.php
20 http://www.tutorial-reports.com/computer-science/fpga/tutorial.php
21 http://www.tutorial-reports.com/computer-science/fpga/tutorial.php
22 http://www.tutorial-reports.com/computer-science/fpga/tutorial.php
410
CAPÍULO
11
Diseño de Alto Nivel
Introducción
H
asta hace unos treinta años, el esfuerzo en el diseño se concentraba todavía
en los niveles eléctricos para establecer las características y las conexiones
entre componentes básicos, especialmente transistores. El proceso de diseño era altamente manual y tan solo se utilizaban herramientas tipo PSPICE
para simular esquemas eléctricos. Mientras los procesos tecnológicos se hacían más
complejos, los problemas de integración iban en aumento y los diseños eran cada vez
más difíciles de compilar y la comprobación de fallos resultaba mucho más tediosa.
Los circuitos MSI (Medium Scale Integration) y LSI (Low Scale Integration) se diseñaron mediante el desarrollo de prototipos basados en módulos simples. Cada módulo
estaba conformado por compuertas probadas previamente, pero este método poco a
poco fue quedándose obsoleto conforme aumentaba la complejidad y el tamaño de los
circuitos, tanto, que a finales de la década del setenta, era obvio el desfase existente entre la tecnología y la metodología del diseño1..
La considerable dificultad que puede llegar a tomar el fabricar un dispositivo con
alta escala de integración, involucra riesgos y costos muy elevados que los fabricantes
normalmente no están dispuestos a asumir. Es hasta entonces cuando nace la nueva
tendencia basada en los llamados lenguajes de descripción de hardware, con los que no
es necesario hacer una caracterización eléctrica del circuito, sino que se concentra en el
funcionamiento lógico del sistema. Con estas herramientas, es posible implementar un
circuito a partir de una idea abstracta, sin necesidad de que el diseñador tenga que descomponer su idea en componentes concretos2.
1 F. Torres. Lenguajes de Descripción de Hardware. Universidad Autónoma de Guadalajara. 2004.
2 F. Pardo, J. Boluda. VHDL Lenguaje Para Síntesis y Modelado de Circuitos. Alfaomega, segunda
edición. 2004.
415
Diseño de Sistemas Digitales
T
odos los productos sin importar su naturaleza deben pasar por una etapa de
diseño que va desde la concepción misma de la idea y su funcionamiento hasta el desarrollo de esquemas de fabricación. El diseño de sistemas digitales,
como su nombre lo indica se centra en sistemas que funcionan con señales
eléctricas discretas y que sólo pueden tomar dos valores: ‘1’ ó ‘0’ y en consecuencia
están compuestos por elementos de igual naturaleza.
Los sistemas digitales tienen un proceso de diseño que puede llegar a ser bastante
complejo, por lo que en él pueden intervenir muchas personas; cada una con una tarea
particular y percepciones del producto un poco distintas. La tarea específica de cada persona hace que para su labor sean importantes diferentes datos y otros no tanto. Así, cada
producto (cada diseño) requiere de varias representaciones (descripciones) que difieren
en la información que es importante. Además cada representación requiere frecuentemente de distintos niveles de detalle.
Los tres tipos de representación más utilizados son: representación funcional o de
comportamiento, representación estructural y representación física. En la figura 1 se tiene
la carta Y donde se muestra la división del proceso de diseño en los tres dominios.
Niveles
Dominio
Estructura
Dominio
Comportamiento
Programa
Procesadores
Subrutina
Registros
Transistores
Instrucción
Transistores
Celdas
Módulos
Dominio
Físico
Figura 11.1 Carta Y (Gajski y Kuhn
1983). Dominios del proceso de diseño
416
En general se puede decir que todo diseño de productos electrónicos y en particular
de sistemas digitales tiene por lo menos tres etapas con tres representaciones principales
y los siguientes objetivos:
1. Proporcionar la representación del comportamiento para definir el funcionamiento
del producto (representación funcional).
2. Convertirla en una representación estructural formada por componentes de una
librería dada de componentes.
3. Producir una representación física que especifique cómo se monta y se fabrica el producto3.
Representación Funcional o de Comportamiento
Es la representación más global. Ve el diseño o sistema como una caja negra, a la
cual se le definen unas entradas y salidas (Figura 11.2). A cada combinación en las entradas se le asigna una determinada salida, lo que define el funcionamiento general del
sistema y las restricciones de rendimiento. Pero no define las operaciones que van dentro
de la caja ni los componentes que las van a ejecutar. En general una representación de
comportamiento describe el funcionamiento del sistema pero no su implementación. Se
puede hacer la descripción en lenguaje natural.
IO
I1
ƒ
In
O0
O1
On
Figura 11.2 Caja negra
Representación Estructural
A diferencia de la representación funcional, la representación estructural describe el
interior de la caja negra con sus componentes y conexiones. Se centra en la implementación del sistema sin hacer mayor énfasis en su funcionamiento. En ocasiones es posible
deducir la función del sistema con base en su descripción estructural, pero no siempre se
pueden garantizar los mejores resultados al hacer esto, pues los componentes pueden
no estar utilizados a su pleno potencial o las señales pueden estar codificadas. Además si
el número de estructuras utilizadas es muy grande se hace muy dispendioso determinar
la función real del sistema.
Utiliza bloques funcionales predefinidos almacenados en librerías; de los cuales no se
hace referencia distinta a su función, sin entrar en detalles, como se observa en la Figura 11.3.
3 GAJSKI, Daniel D. Principios de Diseño Digital, Prentice Hall, 1997
417
Central Processing Unit
Program Counter
Registers
Arithmetic
Logic Unit
Main
Memory
Control Unit
Input/ Output
System
Figura 11.3 Ejemplo procesador Von Neumann
Representación Física
Con la representación física se hace una descripción detallada del diseño en términos físicos; por ejemplo, se describen las dimensiones del diseño y sus componentes, la
geometría de los mismos y de las conexiones, el peso del sistema, la disipación de calor,
el consumo de energía y la posición de los conectores entre otros. Es una descripción del
sistema ya implementado (fabricado) y de sus componentes y conexiones. Así se descendió desde una caja negra y su función, pasando por una descripción de componentes
y conexiones hasta la descripción del sistema construido (Figura 11.4).
U
AL
L2
hé
Cac
U
FP
é
ch
Ca )
L1 atos
(d
s
tro
gis
Re
hé )
s
Cac
L1 ccione
u
r
t
(ins
de
dad
Uni ntrol
co
de
dad
Uni ucción
r
t
ins
de
dad
ón
Uni istraci da
n
i
ali
s
m
d
a
a
rad
ent
Figura 11.4 Ejemplo CPU, se agregan dimensiones y además datos descriptivos
418
Otras Representaciones
Existen otras representaciones, muchas veces intermedias o afines entre las anteriormente mencionadas o dependiendo del nivel de abstracción utilizado.
Tablas de Verdad
Son una tabulación de todas las posibles combinaciones de entradas y sus respectivas combinaciones de salidas.
A
B
Cin
Sum
Cout
0
0
0
0
1
1
1
1
0
0
1
1
0
0
1
1
0
1
0
1
0
1
0
1
0
1
1
0
1
0
0
1
0
0
0
1
0
1
1
1
Figura 11.5 Tabla de verdad sumador completo
Estas tablas permiten expresar la función del sistema en términos de vectores de
entrada y salida, pero sin definir una función en términos matemáticos, aunque de ella se
pueden deducir expresiones del álgebra de Boole.
Álgebra de Boole
El álgebra de Boole permite expresar la función de un sistema digital utilizando expresiones propias de la lógica digital como: NOT, AND, OR. Las funciones Booleanas
son expresiones que permiten obtener la implementación de un determinado sistema en
función de compuertas estándar almacenadas en alguna librería. Están intrínsecamente
relacionadas con las tablas de verdad, ya que de una tabla de verdad es posible obtener
una expresión booleana y viceversa.
Esquemáticos de Compuertas
Se obtienen gracias a la interconexión de compuertas que se determinan a partir de expresiones booleanas. Se utilizan compuertas predefinidas en alguna librería y simbología estándar.
419
Símbolo Clásico
Símbolo Alterno
Compuerta OR
Compuerta NOR
Compuerta AND
Compuerta NAND
Inversor
Figura 11.6 Compuertas básicas
Formas de Onda
Dentro de las formas de onda que son útiles para describir un sistema digital se destaca el diagrama de tiempos. En éste se puede visualizar el comportamiento de las variables de acuerdo al cambio de las entradas en el tiempo. Según el nivel de abstracción en
el que se quiera trabajar se pueden ver entradas/ealidas o en niveles inferiores entradas,
salidas, variables intermedias, señales de prueba y salidas de subsistemas. También se
utilizan diagramas con las respuestas reales en el tiempo de los sistemas digitales. Es decir diagramas en los que se consideran las características dinámicas de los componentes
reales; los retardos de procesamiento y las características analógicas de los sistemas.
Reloj
1
2
3
4
5
A
B
C
Figura 11.7 Diagrama de tiempos
420
6
7
8
Lenguajes de descripción de Hardware HDL (Hardware
Description Language)
Los lenguajes para descripción de Hardware, permiten a los diseñadores utilizar códigos de programación con los cuales definir el funcionamiento del sistema paso a paso. Es
habilidad del diseñador tener en cuenta que está programando Hardware y no Software.
Dentro de los lenguajes más comunes se encuentran: VHDL, Verilog, ABEL. Regularmente cada tecnología de prototipo (PAL, PLA, ROM, CPLD, FPGA) adopta su propio
entorno de programación.
Niveles de abstracción
Cada una de las representaciones anteriormente estudiadas puede utilizar distintos
niveles de abstracción para hacer la descripción deseada. Cada nivel de abstracción
describe a su vez el tipo de componentes con los que se realiza el diseño. Se identifican
cuatro tipos de objetos dentro de un sistema electrónico:
• Transistor (dispositivos y circuitos)
• Compuerta
• Registro (módulos)
• Procesador (sistemas)
Sistema
Módulo
Compuerta
Cicuito
Dispositivo
G
S
D
Figura 11.8 Niveles de abstracción
Transistor
Es el más bajo de los niveles de abstracción, en él se encuentran transistores, resistencias y condensadores que se combinan para formar circuitos analógicos o digitales
que cumplen alguna función (representación estructural). Dicha función estará descrita
por algún tipo de relación corriente-tensión o alguna ecuación diferencial (representación
funcional) y estará compuesto por celdas. Las celdas son arreglos geométricos (rectángulos) de distintos colores, que representan las capas de material que se deben utilizar
para la fabricación de los transistores.
421
Compuerta
En el nivel de compuerta los componentes principales son compuertas lógicas (NOT,
AND, OR) y biestables (FLIP-FLOPS). Estos ya son elementos que trabajan con lógica
digital. Se describen en términos de ecuaciones booleanas o máquinas de estados finitos (FSM). Las compuertas se agruparán para formar módulos aritméticos y de almacenamiento que se usan como componentes básicos a nivel de registro. En este nivel de
abstracción las compuertas son cajas negras con entradas y salidas, de quienes sólo se
conoce su función, pero no su composición interna.
Registro
A este nivel de abstracción los componentes principales son módulos aritméticos y de
almacenamiento como: sumadores, comparadores, registros, contadores, multiplicadores,
pilas, caminos de datos y ficheros de registro. Estos módulos cuentan con una descripción
física determinada (dimensiones, tiempos de propagación). Cuando se interconectan estos
módulos forman los componentes básicos del siguiente nivel de abstracción.
Procesador
Es el nivel más alto de abstracción, sus componentes son: procesadores, memorias,
controladores e interfaces, microchips a medida (ASIC’s, application-specific integrated
circuit). En este nivel se interconectan dichos componentes para formar módulos multichips. Su funcionalidad se describe regularmente en lenguaje natural, en HDL o lenguajes de programación. Regularmente se construyen librerías con los componentes de cada
nivel de abstracción y de acuerdo a la tecnología de fabricación que utilicen, también hay
librerías estándar en las que sólo se contemplan las funciones de los componentes pero
no sus características de comportamiento real. Dichas librerías se complementan con las
herramientas de diseño asistido por computador (CAD, computer aided design).
Topologías de Diseño Digital
Bottom-Up, que consiste en partir de los componentes básicos del sistema e ir agrupándolos en módulos. Este método se vuelve inmanejable a medida que aumenta el
tamaño del diseño, siendo útil solo para diseños de baja escala.
Con este método se realiza la descripción del circuito o sistema que se pretende
desarrollar, empezando por identificar los componentes más básicos del sistema, para
luego agruparlos en diferentes módulos hasta llegar a uno solo que represente el sistema
completo. Esta metodología no implica una estructura jerárquica de los elementos, pues
resulta suficiente con la descripción del circuito.
En términos generales, esta forma de diseñar no es muy adecuada, ya que implica
un ciclo de diseño bastante ineficiente. Para diseños complejos y de gran tamaño, no
se puede trabajar a bajo nivel con miles o millones de componentes, pues sería difícil
garantizar un correcto funcionamiento y una adecuada comprobación y corrección. Sin
embargo, esta metodología se utilizó exitosamente en los primeros tiempos de la automatización de los procesos de diseño, ya que las herramientas de diseño permitían una
descripción sencilla a bajo nivel.
422
Top-Down, es el proceso de capturar una idea en un alto nivel de abstracción e implementarla partiendo de dicha idea, para después ir hacia abajo incrementando el nivel de
detalle físico según como sea necesario. El usuario solo debe centrarse en la descripción
comportamental del diseño y serán las herramientas CAD las que lo irán descomponiéndolo en diseños más simples.
Diseño
Verificación
Prototipación
Figura 11.9 Diagrama de secuencia en el proceso de diseño
Actualmente es necesario hacer diseños cada vez más complejos y en menor tiempo.
Para esto, la metodología Top-Down toma un problema y lo divide en varios subproblemas, que a su vez pueden ser divididos en otros problemas mucho más específicos y
sencillos de tratar. En el caso de un circuito, eso se traduce en la división del sistema
completo en módulos, cada uno con una funcionalidad determinada.
El continuo desarrollo de las herramientas CAD, les ha permitido ofrecer la posibilidad
de reproducir de forma automática la metodología de diseño Top-Down. Así, permiten la
implementación de un circuito a partir de una idea abstracta sin necesidad de que el diseñador tenga que descomponer su idea en componentes concretos4. De esta manera,
basta con describir el comportamiento del sistema y el software genera el nivel de compuertas lógicas. Esto minimiza la cantidad de tiempo invertido en un diseño.
Con esta metodología se utilizan tecnologías genéricas, lo que permite la reutilización
de los diseños. De esta manera es posible crear un nuevo diseño a partir de otro existente. Además, como se dedica más tiempo a la definición y al diseño, se encuentran más
fácilmente muchos errores en el proceso de descripción del circuito.
Top-Down permite diferenciar claramente entre el comportamiento funcional del sistema y
los detalles de implementación, facilita las tareas de modelado de los sistemas y permite enlazar directamente con herramientas de síntesis automática de circuitos microelectrónicos5.
En el primer nivel de la Figura 11.10 se aprecia un sistema inicial dividido en módulos,
los cuales se dividen sucesivamente hasta llegar a los componentes básicos del circuito
o elementos primarios. Estos elementos se enmarcan en un cuadrado con las líneas más
gruesas. Los métodos de diseño se basan en programas computacionales conocidos
como herramientas de automatización del diseño electrónico (EDA Tools), las cuales sobresalen por ofrecer una reducción significativa en el tiempo del diseño.
4 F. Pardo, J. Boluda. VHDL Lenguaje Para Síntesis y Modelado de Circuitos. Alfaomega, segunda
edición. 2004.
5 S. Sánchez, A. Barriga, P. Brox, I. Baturone. Síntesis de Sistemas Difusos a Partir de VHDL. Instituto de Microelectrónica de Sevilla, CNM-CSIC, Sevilla, España. Septiembre 2004
423
Nivel Alto
(Top)
Nivel Bajo
(Down)
Figura 11.10 Metodología de diseño Top – Down
La metodología de diseño descendente disminuye el tiempo de diseño. En la realización
de las simulaciones no es necesario sólo un prototipo, ya que este generalmente funciona;
antes se debía repetir el proceso 2 o 3 veces hasta que el prototipo funcionara. Las últimas
herramientas de diseño electrónico permiten implementar de forma automática la metodología de diseño Top-Down. Las herramientas siguen el diagrama de flujo de la Figura 11.11.
Especificaciones
Entrada del Diseño
Simulación DHL (Opcional)
Sintesis Lógica Entrada HDL
Simulación Funcional
Implementación
Simulación Temporal
Programación
Verificación
Figura 11.11 Diagrama de Flujo con herramientas EDA
424
Se parte del planteamiento de las especificaciones funcionales del diseño. En la etapa de
entrada de diseño se realiza una descripción del circuito, para la cual existen varias alternativas como la captura esquemática (dibujo del circuito mediante interfaz gráfica), los lenguajes
de descripción HDL (VHDL, Verilog, Abel y CUPL), y los diagramas de transición de estados.
La simulación HDL, simula el comportamiento del circuito que se acaba de describir
antes de la síntesis lógica, que consiste en tomar la descripción HDL y a partir de ella,
generar y simplificar las ecuaciones lógicas correspondientes al circuito descrito.
La simulación funcional, simula las ecuaciones lógicas en condiciones ideales, es
decir, sin tener en cuenta los tiempos de propagación.
La Simulación temporal: Después de la implementación ya se conoce como queda
programado el circuito y se puede realizar una simulación teniendo en cuenta los retardos.
Los lenguajes HDL permiten realizar el primer paso de la metodología del diseño
descendente. Se describen en un lenguaje de alto nivel el comportamiento requerido
del circuito a diseñar. Esta descripción se puede hacer mediante tablas de verdad, lista
de transiciones de estados, ecuaciones lógicas. Con base a la descripción, el programa
realiza los siguientes pasos:
1. Sintetiza y simplifica las ecuaciones lógicas.
2. Simula las ecuaciones.
3. Sintetiza el circuito lógico.
4. Simula el circuito lógico.
5. Sintetiza el archivo para programar un PLD.
Herramientas de Diseño
EDA (Electronic design Automation) es el nombre que se le da a todas las herramientas, tanto de hardware como de software, que sirven de ayuda en el proceso de diseño de
sistemas electrónicos. Dentro del EDA, las herramientas CAD juegan un papel importante.
El impacto de las herramientas CAD sobre el proceso de diseño de circuitos electrónicos y
sistemas procesadores es fundamental. No solo por la adición de interfaces gráficas para
facilitar la descripción de esquemas, sino por la inclusión de herramientas como simuladores, que facilitan el diseño y la conclusión con éxito de los proyectos. Sin embargo no solo
el software es importante, pues el hardware de alta velocidad e interfaces muy sofisticadas,
son también características que facilitan el diseño de dispositivos electrónicos.
En el ciclo de diseño de hardware las herramientas CAD están presentes en todos los
pasos. Primero en la fase de descripción de la idea, luego en las fases de simulación y
comprobación, y por último en la fase de fabricación, por ejemplo en el diseño de circuitos
impresos o en circuitos integrados de aplicación específica (ASICs).
Existen varias herramientas CAD para el diseño de hardware6, como son:
• Lenguajes de descripción de hardware. Son lenguajes mediante los cuales es posible describir un circuito. La descripción puede ser estructural, donde se muestra la
6 F. Pardo, J. Boluda. VHDL Lenguaje Para Síntesis y Modelado de Circuitos. Alfaomega, segunda
edición. 2004
425
arquitectura del diseño, o puede ser una descripción del comportamiento, donde se describe como se ha de comportar el circuito, en lugar de describir los elementos de los que
está compuesto. Existen muchos lenguajes para la descripción de circuitos, que suelen
ser propios de un determinado fabricante de chips. VHDL, además de ser estándar, tiene
un amplio campo de aplicación, desde el modelado para simulación de circuitos, hasta la
síntesis automática de los mismos.
• Captura de esquemas. Es la forma clásica de describir un diseño electrónico y la
más extendida, ya que era la única utilizada antes de aparecer las herramientas CAD. Se
basa en diagramas en los que se muestran los diferentes componentes del circuito y sus
interconexiones.
• Grafos y diagramas de flujo. Se trata de una descripción gráfica del comportamiento del circuito sin llegar a describir sus componentes.
• Simulación de sistemas. Se usa para la simulación con elementos de alto nivel
como discos duros, buses de comunicaciones, etc.
• Simulación funcional. Comprueba el funcionamiento del circuito a partir del comportamiento lógico de sus elementos, sin contemplar problemas físicos como retrasos.
• Simulación digital. Es muy cercana al comportamiento real del circuito y prácticamente garantiza el funcionamiento correcto del sistema, pues tiene en cuenta aspectos
como los retrasos en la propagación de las señales.
• Simulación eléctrica. De muy bajo nivel, pero muy confiable. Las respuestas se
elaboran al nivel del transistor.
• Realización de PCBs. Para realizar el trazado de pistas y posterior fabricación de
circuitos impresos.
• Realización de circuitos integrados. Las capacidades gráficas de estas herramientas permiten la realización de las diferentes máscaras o capas que intervienen en la realización de circuitos integrados.
Figura 11.12 Diseño PCB
426
Todo este conjunto de herramientas facilitan las diferentes etapas de desarrollo del
diseño: descripción de especificaciones, verificación de comportamiento, síntesis automática, etc. Con objeto de manejar de forma adecuada la complejidad del diseño y minimizar la posibilidad de introducir errores. En las distintas etapas del proceso se utilizan
diferentes niveles de abstracción para describir el sistema y se concentran solo en aquellos aspectos del diseño que resultan significativos en cada nivel7.
Diseño Modular
Cuando se hace referencia a un diseño modular, lo que se pretende es evadir los inconvenientes ocasionados por los métodos que buscan desarrollar un diseño totalmente
compacto. Los problemas más comunes son la rigidez, poca flexibilidad en el diseño,
pérdida excesiva de tiempo en la búsqueda y corrección de errores, deficiencia en la documentación posterior y la imposibilidad de reutilizar partes del diseño en otro proyecto8.
Realizar un diseño dividiéndolo en porciones menores, conlleva una serie de ventajas
que no se pueden desconocer. Por un lado, se reduce la posibilidad de introducir errores,
pues cada modulo se prueba por separado; facilita la comprensión del sistema para quienes
no participaron en el diseño; permite realizar modificaciones puntuales de manera más fácil y
rápida; se elimina la redundancia en el diseño, pues al tener módulos claramente diferenciados por funcionalidad, no hace falta repetirlos, sino que se acoplan a la tarea que se requiera
en un determinado momento; es posible repartir tareas entre un grupo de diseñadores; y los
módulos diseñados se pueden utilizar en proyectos posteriores. Estas dos últimas características, convergen en un aspecto de gran importancia: la reducción en los tiempos de diseño.
Para llevar a la práctica esta metodología de diseño, es importante tener en cuenta
que se requiere de cierta experiencia para lograr una buena división del problema, pues
de no ser así, se puede caer en el error de generar un número elevado de módulos muy
dependientes unos con otros, lo que representa una mayor probabilidad de introducir
errores al sistema completo9. Esto se resume en la necesidad de crear módulos de alta
independencia, que en lo posible operen sin necesitar mucho de los otros módulos10.
En la metodología del diseño modular se utilizan constantemente algunos términos
relacionados. A continuación, algunos de ellos:
• Diseño jerárquico. Un complejo diseño electrónico puede llegar a utilizar millones de
componentes lógicos para describir correctamente su funcionamiento. Estos diseños necesitan organizarse de tal forma que resulte fácil su comprensión. Una forma de organizar el
diseño es la creación de un diseño modular similar al concepto de diseño Top-Down11. Una
jerarquía consiste en construir un nivel de descripción funcional de diseño debajo de otro,
de forma que cada nuevo nivel posea una descripción más detallada de su tarea.
7 S. Sánchez, A. Barriga, P. Brox, I. Baturone. Síntesis de Sistemas Difusos a Partir de VHDL. Instituto de Microelectrónica de Sevilla, CNM-CSIC, Sevilla, España. Septiembre 2004.
8 J. Leiva. Diseño de Algoritmos. Departamento de Lenguajes y Ciencias de la Computación. Universidad de Málaga. Curso 2004/2005.
9 R. Rodríguez. Diseño de Alto Nivel. Dpto. de Informática - Universidad Francisco de Vitoria. Curso
2003/2004
10 J. Leiva. Diseño de Algoritmos. Departamento de Lenguajes y Ciencias de la Computación. Universidad de Málaga. Curso 2004/2005.
11 F. Pardo, J. Boluda. VHDL Lenguaje Para Síntesis y Modelado de Circuitos. Alfaomega, segunda
edición. 2004.
427
• Abstracción procedural. Se asume a cada modulo del diseño cual si se tratara de
una caja negra, donde cada una de estas especifica que hace, pero no como lo hace.
Ninguna caja negra debe saber cómo otra caja negra realiza una tarea, sino sólo qué acción realiza. Los distintos componentes de un diseño deben mantenerse aislados unos de
otros. La abstracción procedural separa el propósito de un diseño de su implementación.
Una vez que el diseño se ha desarrollado, es posible usarlo sin necesidad de conocer las
particularidades de su funcionalidad, sino con sólo tener una definición de la acción que
realiza y una descripción de los parámetros que maneja12.
• Ingeniería concurrente. Es un enfoque de manufactura que permite el diseño y
desarrollo integrado de productos y sus procesos relacionados. Fomenta el desarrollo
de tareas en paralelo, los equipos de trabajo multidisciplinarios y el intercambio eficiente
de información. De esta forma se logra repartir más eficientemente las tareas entre los
diseñadores y se desarrollan módulos, más rápida y eficientemente13.
Módulos Reutilizables y Tiempo de Diseño
Una consecuencia directa de aplicar una metodología de diseño modular, es la posibilidad de reutilizar segmentos de un diseño, pues muchos de los módulos se pueden
almacenar como si se tratara de un conjunto de plantillas. De esta forma, pueden existir
diversos módulos, cada uno con una funcionalidad específica y claramente identificada
[10]. Para citar solo algunos ejemplos, tenemos los siguientes:
• Módulos interfaz. Son módulos que permiten la comunicación del sistema con el
medio exterior. Así por ejemplo, para dispositivos que han de ser conectados mediante el
puerto USB del PC, no se requiere diseñar uno de estos módulos para cada nuevo prototipo, puesto que dicha interfaz es estándar y no requeriría modificaciones significativas
de un prototipo al otro.
• Módulos de visualización. Estos módulos son los encargados de procesar determinada información, de tal forma que sea posible su legibilidad en algún dispositivo de
visualización, como un LCD o un monitor.
• Módulos aritméticos. Son los módulos especializados en realizar las operaciones
necesarias entre las variables relacionadas con el sistema. Pueden existir módulos que
realicen varias operaciones u operaciones particulares. Es por esto, que en diseños donde se requiera realizar ciertas operaciones matemáticas, se pueden utilizar módulos existentes especializados en dicha tarea.
Es fácil notar que al reutilizar los módulos, tenemos una reducción notable de tiempos
en el ciclo de diseño, pues aunque las especificaciones de un diseño con seguridad no
serán iguales a las de otro, no será necesario comenzar totalmente desde cero, ya que
se cuenta con una serie de módulos previamente diseñados y probados.
Otro aspecto que reduce notablemente los tiempos en el diseño es la posibilidad de
dividir el trabajo entre el grupo de diseñadores, más aún cuando se aplican los principios
de la ingeniería concurrente, con los que se pretende que los desarrolladores, desde un
12 J. Leiva. Diseño de Algoritmos. Departamento de Lenguajes y Ciencias de la Computación. Universidad de Málaga. Curso 2004/2005
13 R. García. Ingeniería Concurrente y Tecnologías de la Información. Ingenierías, Vol. VII, No. 22.
Enero-Marzo 2004.
428
principio, trabajen de forma paralela y además tengan en cuenta todos los elementos del
ciclo de diseño, desde el diseño conceptual, hasta su disponibilidad, incluyendo calidad,
costos y necesidades del usuario final.
Modelo empleado en las simulaciones.
En un circuito integrado los transistores MOSFET, se representan mediante un modelo
equivalente de tensiones y corrientes en sus terminales, que son el resultado de alguna combinación de tensiones en la compuerta (gate) y drenador (drain) respecto a fuente (source).
Estos modelos se guardan en ficheros conocidos como parámetros tecnológicos que
se convierten en el resultado de las medidas realizadas por el fabricante y son imprescindibles para obtener una óptima simulación del dispositivo.
Los parámetros más importantes son:
LEVEL: nivel de complejidad del modelo usado.
Tox: espesor del oxido en la compuerta.
Vto: Tensión de umbral.
LD: difusión lateral.
NSUB: dopado del sustrato.
Gamma: factor de efecto de sustrato.
μ0: movilidad de electrones con valor bajo de campo eléctrico.
μexp, μcrit: parámetros de corrección de movilidad.
Delta: factor de corrección por anchura pequeña.
RSH: resistencia de cuadro de la difusión.
NEFF: coeficiente de carga total en canal, fija y móvil.
Lambda: factor de modulación de canal.
Otros parámetros son:
Cj: capacidad unitaria de la unión.
CGDO: capacidad de superposición.
Js: densidad de corriente de saturación de las uniones.
Polisilicio
Óxido
Silicio
ID
G
S
D
N+
B= Body = Sustrato
S= Source = Fuente
D= Drain = Drenador
G= Gate = Puerta
N+
P
B
CORTE
VGS < VTN
ID = 0
ÓHMICA
SATURACIÓN
VGS > VTN ; VDS < VGS -VTN
VGS > VTN ; VDS
[ (VGS -VTN) VDS - V²DS /2 ]
ID = KN/2 (VGS -VTN)² (1+λ VDS)
>
VGS -VTN
Figura 11.13 Modelo MOSFET nivel 1
429
Entre los parámetros más importantes para el diseño tenemos:
W: anchura del canal.
L: longitud de canal.
PD/PS: perímetros del drenador.
AD/AS: área del drenador.
Los parámetros L y W, determinan el comportamiento del transistor.
D
G
D
B
G
B
S
S
Figura 11.14 Mosfets
L
N
Área = W x N
Perímetro= 2W + 2N
W
Figura 11.15 Nivel de capas
430
Tecnologías de 0.35m / 0.5m.
0.35μ
0.5μ
2500
7300
POLY
0.6μ
0.6μ
0.6μ
0.6μ
0.6μ
11000
8000
7300
7300
M1
M2
M3
M4
M5
0.6μ
0.7μ
0.8μ
3500
6900
6900
8400
POLY
M1
M2
M3
0.35μ
0.5μ
Parámetros SPICE para MOSFET
Parameter Name
Symbol
SPICE Model Index
Zero- Bias Threshold Voltage
VTO
Process Transconductance
K³
Body- Bias Parameter
g
Channel Modulation
l
Oxidie Thickness
tox
Lateral Diffusion
xd
Matallurgical Junction Depth
xj
Surface Inversion Potential
2lfFl
Substrate Doping
Surface State Density
NA, ND
Fast Surface Density
Qss/q
Total Channel Charge Coefficient
Type of Gate Material
Surface Mobility
m0
Maximum Drift Velocity
umax
Mobility Critical FIeld
xcrit
Critical Field Exponent in Mobility Degradation
Transverse Field Exponent (mobility)
SPICE
Name
Units
Default
Value
LEVEL
-
1
VT0
V
0
KP
A/V2
2.E-5
GAMMA
V05
0
LAMBDA
1/V
0
TOX
m
1.0E-7
LD
XJ
m
m
0
0
PHI
V
NSUB
cm-3
NSS
cm-3
NFS
cm-3
NEFF
-
TPG
-
U0
VMAX
cm2/V-sec
UCRIT
m/s
UEXTP
V/cm
-
UTRA
-
0.6
0
0
0
1
1
600
0
1.0E4
0
0
431
Otros parámetros:
Units
Default
Value
RS
Ω
0
RD
RD
Ω
0
Sheet resistance (Source/Drain)
Ro
RSH
Ω/O
0
Zero Bias Bulk Junction Cap
Ci0
CJ
F/m²
0
Bluk Junction Grading Coeff.
m
MJ
-
0.5
Zero Bias Side Wall Junction Cap
Cisw0
CJSW
F/m
0
Side Wall Grading Coeff.
msw
MJSW
-
0.3
Gate-Bulk Overlap Capacitance
CgbO
CGBO
F/m
0
Gate-Source Overlap Capacitance
CgsO
CGSO
F/m
0
Gate-Drain Overlap Capacitance
CgdO
CGDO
F/m
0
Bulk Junction Leakage Current
Is
IS
A
0
Bulk Junction Leakage Current
Density
Js
JS
A/m²
1E-8
Bulk Junction Potential
ϕ0
PB
V
0.8
Symbol
SPICE
Name
Units
Drawn Length
L
L
m
-
Effective Width
W
W
m
-
Source Area
AREA
AS
m²
0
Drain Area
AREA
AD
m²
0
Source Perimeter
PERIM
PS
m
0
Drain Perimeter
PERIM
PD
m
0
Squares of Source Difussion
NRS
-
1
Squares of Drain Difussion
NRD
-
1
Parameter Name
Symbol
Source resistance
Rs
Drain resistance
Parameter Name
432
SPICE
Name
Default
Value
Software
El software es una parte verdaderamente importante a la hora de realizar un diseño
ya que permite tener una visión aproximada de la función que cumplirá el circuito, o realizará la interconexión de dispositivos en un impreso.
Existen innumerables herramientas CAD para este fin, ya sean de libre distribución,
versiones de prueba (Trials) o licenciadas, todo depende de la aplicación y la complejidad
del diseño.
En la web se encuentran muchos tipos de aplicaciones, por ejemplo en cuanto a la
simulación de un circuito, tenemos:
• ORCAD.
• Electronic Workbench.
• Microcap.
• Tina.
De otra parte, para el diseño de circuitos impresos tenemos:
• Electra.
• Ares.
• Eagle.
• QuickCheck
Finalmente en cuanto al diseño a nivel de compuertas:
• L-Edit.
• Protel.
• Ivex.
Figura 11.16 Ejemplo de empleo de software de simulación de circuitos
433
Descripción del diseño de alto nivel
E
l diseño de un circuito integrado digital es básicamente un proceso de descripción del mismo, junto con la simulación de su comportamiento para verificar
que el diseño es correcto, conforme a las especificaciones o requisitos del mismo. La descripción digital puede hacerse a diferentes niveles, en particular, a
nivel geométrico (layout), a nivel lógico (esquemático) o a nivel funcional (“programa”).
El nivel geométrico (descripción física del circuito integrado) no tiene sentido en el
diseño sobre circuitos integrados programables (pues ya están fabricados) y es utilizado
en forma muy limitada en el diseño de ASICs con librería, es decir en el diseño de celdas
estándar (standard cell) o de arreglo de compuertas (gate array), solamente se usan algoritmos de colocación y conexión de las celdas de la librería, que ya están diseñadas.
Los niveles lógico y funcional ofrecen dos alternativas de diseño: en forma gráfica de
esquema de compuertas y biestables, adecuadamente conectadas, o en forma de texto,
describiendo el comportamiento del circuito; actualmente, y cada vez más, predomina
la descripción en texto, utilizando un lenguaje de descripción circuital (HDL, Hardware
Description Language).
Existen, pues, tres niveles de descripción de los diseños digitales:
• Nivel geométrico (layout): descripción gráfica de las diferentes regiones físicas
que conforman el circuito integrado (difusiones, polisilicio, metal, contactos,...), o sea, el
dibujo que corresponde a las máscaras con las que se fabricará el integrado; este nivel
es propio y casi exclusivo del diseño completo (full custom).
• Nivel lógico (esquemático): descripción, en términos de compuertas lógicas y biestables; es el nivel que corresponde directamente al diseño con librería,
• Nivel funcional (texto): descripción del comportamiento del circuito en un lenguaje
de descripción circuital (como puede ser VHDL o Verilog).
Las tareas realizadas por los diversos tipos de descripción, se resumen en la Tabla 11.1.
434
1 Nivel Funcional
• Lenguajes de Descripción Funcional
- Edición y análisis de la descripción.
- Simulación funcional.
- Compilación lógica.
2 Nivel Lógico
• Descripción
- Captura de esquemas.
- Generación de celdas matriciales (ROM, PLA, RAM, ...).
• Simuladores Lógico-temporales
• Análisis Temporal
- Verificación de tiempos de anticipación y de mantenimiento.
- Cálculo de retardos y detección de caminos críticos.
• Test
- Simulación de fallos.
- Cobertura de test.
- Generación automática de test
3 Nivel Geométrico
•Descripción
- Colocación y conexionado de celdas: Placement and Routing.
- Edición gráfica.
• Simulación
- Extractores de parámetros: back-annotation.
- Simuladores Informáticos.
• Comprobación Lógica
- Extractores lógicos.
- Verificación de correspondencia.
- Verificadores de reglas de diseño
Tabla 11.1 Subdivisiones de la descripción del diseño digital
En todos los niveles es preciso comprobar que el diseño es correcto, a través de la
simulación de su comportamiento:
• En el nivel geométrico, se utilizan simuladores informáticos, en particular el simulador SPICE, extrayendo previamente, sobre el layout, los transistores y los componentes
capacitivos y resistivos presentes.
• En el nivel lógico, se emplean simuladores lógico-temporales que actúan en términos de funciones booleanas y de retrasos temporales (tiempos de propagación).
• En el nivel funcional, los lenguajes de descripción circuital ofrecen simuladores del
comportamiento del circuito, tal como queda descrito en dichos lenguajes.
Además, en el nivel lógico se aplica el análisis de tiempos para verificar que se respetan los tiempos de propagación, de anticipación y de mantenimiento (y, en el caso de
ASICs, se obtiene el conjunto de vectores de test necesarios en el proceso de integración
para comprobar que cada ejemplar fabricado responde efectivamente al diseño).
435
En el nivel funcional (lenguajes de descripción circuital), se dispone de compiladores
que trasladan la descripción al nivel lógico. En dicho nivel lógico, los compiladores para
circuitos integrados programables, traducen el diseño en el “mapa de fusibles” que corresponde a su programación; en el caso de ASICs, del nivel lógico se pasa al nivel geométrico
mediante algoritmos de ubicación y conexión que sustituyen la descripción lógica por la
conexión de las correspondientes celdas de la librería, adecuadamente situadas.
Proceso de Diseño
El proceso de diseño se puede definir como la secuencia de pasos que llevan desde el concepto de un producto hasta los esquemas de fabricación que describen cómo
hacer dicho producto.
Especificaciones de Diseño
Una vez analizados los requisitos y las interfaces con el entorno en que va a funcionar
el producto, se incluye un diseño con el esquemático de la arquitectura del mismo en forma de diagrama de bloques de alto nivel. En el diagrama, cada bloque tendrá una función
clara que se puede especificar con una formula o algoritmo matemático, o simplemente
en lenguaje natural. Tal diagrama debe especificar el tipo y formato de los datos que se
transfieren entre los bloques y puertos de entrada/salida.
Desarrollo con una biblioteca de componentes
Una vez que se ha desarrollado el diagrama de bloques de alto nivel en la fase de especificación, se debe redefinir iterativamente o descomponer en componentes menores.
La finalidad de este proceso es asegurar que el producto no contenga más que los componentes predefinidos en la biblioteca de componentes que se ha caracterizado para una
tecnología de fabricación. En algunos casos estas bibliotecas contienen componentes de
uno o más niveles de abstracción.
Los componentes de la biblioteca deben estar, por tanto, probados y completamente
documentados para que los diseñadores puedan usarlos si tener que analizar su estructura.
Síntesis del diseño
En el proceso de diseño, la síntesis es el procedimiento mediante el cual se convierte
una especificación o descripción del comportamiento de un componente, en una descripción estructural usando componentes de los niveles de abstracción más bajos que se
incluyen en una biblioteca dada.
La síntesis se puede entender como un proceso de redefinición de la descripción de
comportamiento, en el que se añaden más detalles estructurales en cada paso. En la
práctica, esto normalmente significa que la descripción se divide en varios bloques y se
reescribe para reflejar el resultado de la división.
Siguiendo los niveles de abstracción descritos anteriormente, se pueden identificar tareas de síntesis:
1. Síntesis del sistema: convierte una especificación en una estructura de componentes a nivel de procesador.
2. Síntesis de la arquitectura: convierte algoritmos, diagramas de flujo o conjuntos de
instrucciones en componentes a nivel de registro.
436
3. Síntesis secuencial: transforma la descripción de una maquina de estados finitos
en compuertas y biestables.
4. Síntesis lógica: transforma expresiones booleanas en componentes a nivel de
compuertas.
Análisis del diseño
Una vez se ha sintetizado un diseño, se evalúa verificando que satisface los requisitos de la especificación, o en algunos casos, verificando que el diseño desarrollado es
realmente el mejor dentro de las distintas alternativas de diseño. Una de las medidas más
importantes es el costo de fabricación del producto concreto. Esta medida usualmente se
aproxima con el tamaño o medida del área, ya que el área de un microchip o una PCB
es proporcional al costo de su fabricación.
La otra medida importante que concierne al proceso de diseño son las prestaciones
del producto, las medidas más usuales de esta medida son: retardo entrada/salida, período de reloj, y tiempo necesario de ejecución de una instrucción o programa.
Finalmente, el índice de testeabilidad se define en fusión del número de fallos de
fabricación detectables y del número de patrones de test que se necesitan para detectar
todos estos fallos. En general, el número de fallos potenciales es proporcional al número
de patrones de test que se necesitan, que a su vez es proporcional al tiempo necesario
para verificar el producto fabricado.
Documentación
El paso final del proceso de diseño consiste en preparar la documentación del microchip o sistema fabricado. Esta documentación generalmente incluye la representación
física como de comportamiento del producto, pero omite las representaciones estructurales detalladas, que se consideran confidenciales del fabricante. La información sobre
el comportamiento se da usualmente en forma de un diagrama de bloques tosco acompañado por un diagrama de flujo que describe el comportamiento del sistema completo o
de alguna de sus partes. Además esta documentación sobre el comportamiento presenta
protocolos de comunicación y se suele dar en forma de diagramas de tiempo para una o
varias entradas y salidas. La representación física, por otra parte, contiene el tamaño, la
información de encapsulado, y los nombres y posiciones do todos los conectores. Finalmente, esta documentación también especifica los rangos mínimos, normales y máximos
de corriente, tensión, potencia, temperatura, y tiempos de retardo.
Herramientas CAD
Capturado y modelado del diseño
Se puede capturar la representación estructural usando una herramienta de captura.
Esta herramienta permite al diseñador seleccionar un componente de un menú situado
en la pantalla y conectarlo a otros componentes mediante líneas que representan cables.
Este tipo de representación estructural de captura se denomina esquemática, y las herramientas que frecuentemente se usan para su captura se conocen como herramientas de
captura de esquemas.
437
Alternativamente, con un lenguaje de descripción de hardware, como el estándar
VHDL del IEEE, se puede llevar a cabo la captura de esquemas. Sin embargo, además
de la captura de esquemas estos lenguajes de descripción del hardware también permiten capturar representaciones de comportamiento, así que se puede describir con el
diseño como una combinación de su comportamiento y de su estructura.
Cada una de estas descripciones se denomina modelo del diseño real, ya que proporciona parte de la información sobre el diseño manual. La herramienta CAD puede usar
la información de diseño que proporciona cada modelo para analizarla posteriormente,
evaluar la calidad del diseño o incluso para su síntesis posterior. El proceso de desarrollo
de estos modelos se denomina modelado, y la guía que proporciona instrucciones para
describirlos, incluyendo la información requerida para que puedan ser usados por otras
herramientas, se denomina guía de modelado.
Herramientas de síntesis
Las técnicas de síntesis se usan siempre que se necesita convertir una descripción
del comportamiento en una descripción estructural que contenga componentes de una biblioteca dada. Las herramientas de diseño lógico permiten convertir expresiones booleanas en estructuras a nivel de compuerta, además minimizan el número de compuertas,
el retardo de propagación y/o el consumo de energía. Las herramientas de síntesis secuencial son necesarias para sintetizar estructuras que contengan elementos de memorias. Estas herramientas están concebidas para minimizar el número de elementos de
memoria a usar en el circuito, para generar una codificación de los estados y entradas
que reduzca sus costos, para minimizar el retardo entrada/salida, y para simplificar las
expresiones booleanas que se requerirán en su implementación.
Las herramientas de síntesis de alto nivel o de comportamiento se usan para convertir
expresiones aritméticas, conjuntos de instrucciones, o descripciones algorítmicas, en estructuras a nivel de registro, en el que se minimizan tanto el tamaño del microchip como
el tiempo de ejecución.
Verificación, simulación y estrategias de test
Una vez se ha capturado el diseño mediante una herramienta de captura de esquemas, se necesita verificar si el diseño funciona como se esperaba. En el procesamiento
y evaluación de un circuito integrado se utilizan tres tipos de procedimientos: de simulación, verificación y supervisión, que tienen objetivos y metodologías de ejecución totalmente diferentes:
• Simulación funcional
• Análisis de tiempos y
• Test del circuito fabricado.
Estos tres procedimientos se refieren, respectivamente, a la verificación del comportamiento del circuito resultante del proceso de diseño (Tabla 11.2), a la verificación de los
tiempos implicados en tal circuito y a la verificación de cada circuito integrado obtenido
tras el proceso de fabricación.
438
La simulación funcional trata de comprobar si el diseño realizado funciona adecuadamente, es decir, si se ajusta a las especificaciones o requisitos que se pretendían
alcanzar. Consiste en reproducir el funcionamiento real del circuito para verificar que es
correcto, incluyendo las más diversas situaciones posibles de sus entradas y comprobando la ausencia de errores en la respuesta del circuito. Es un estudio estímulo/respuesta
(entradas/salidas) en relación con el funcionamiento normal del circuito; se realiza con
simuladores lógico-temporales que evalúan la respuesta booleana a los vectores de entrada y calculan también el tiempo de respuesta. Cada celda básica es sustituida por la
correspondiente función booleana y por un tiempo de propagación que tiene en cuenta la
carga (fan out y capacidad equivalente) que soporta su salida.
La simulación funcional se efectúa “globalmente” (calculando las salidas que produce el
circuito en función de las ondas de entrada que recibe) y suministra información sobre la validez del diseño (sobre si es correcto o no); en caso de que no sea correcto, obliga a rediseñar
parcial o totalmente el circuito para que su funcionamiento coincida con el que se pretende.
1 verificación del comportamiento
• Simulación
- Funcional
- Lógica-temporal
- Computacional (Informática)
2 verificación de tiempos
• Análisis de tiempos
- Tiempos de anticipación y de mantenimiento
- Tiempos de propagación y
- caminos críticos
3 verificación del circuito obtenido
• Test
- Simulación de fallos
- Cobertura de fallos
Tabla 11.2 Procedimientos de verificación.
El análisis de tiempos trata de comprobar que se respetan las restricciones temporales internas (compatibilidad entre los tiempos de propagación, los tiempos de anticipación
set-up y de mantenimiento hold) y de calcular la velocidad máxima de trabajo del circuito; asimismo, aporta información sobre los caminos en que se violan las restricciones
temporales y sobre los caminos que resultan críticos respecto a la velocidad máxima de
funcionamiento del circuito.
Ambos procedimientos de comprobación/verificación (simulación funcional y análisis de tiempos) se ejecutan en las diferentes etapas del diseño: tanto en el nivel lógico,
sobre el esquemático del circuito, como en el nivel geométrico, sobre las máscaras que
conectan con el proceso de fabricación. Cuanto más cercana es la información que utilizan al nivel físico definitivo del circuito más precisa es la simulación temporal y el análisis
de tiempos. Cuanto más próximos nos situemos a la configuración física real del circuito
integrado, mayor precisión puede obtenerse en los aspectos de carga efectiva que sopor-
439
tan las salidas de las celdas básicas y en los retardos debidos a los efectos resistivos y
capacitivos que introducen las conexiones (es decir, en aquellas cuestiones que afectan
a los cálculos temporales).
Tanto la simulación funcional como el análisis de tiempos son comprobaciones que
se ejecutan en el proceso de diseño y pueden determinar una vuelta atrás en el mismo
para corregir lo que “no funciona bien”. En cambio, el test de un circuito integrado es la
comprobación, posterior a la fabricación del mismo, que garantiza que el circuito se ha
fabricado bien, es decir, que todas las celdas que configuran el circuito han sido integradas correctamente de forma que el resultado físico coincide con el esquema circuital
resultante del diseño.
El test no equivale, ni mucho menos, a la simulación funcional: no se trata de verificar
que el funcionamiento “normal” del circuito es el deseado, sino de comprobar que todos
y cada uno de los transistores han sido fabricados y conectados correctamente. Téngase
en cuenta que, si el circuito es relativamente complejo, su funcionamiento total no puede
ser simulado, dado que requeriría una secuencia enormemente alta de vectores de test.
El test es, por tanto, mucho más exigente que la simulación funcional: que el diseño
es correcto queda garantizado, en la misma etapa de diseño, por la simulación funcional
y, complementariamente, por el análisis de tiempos en lo que se refiere a restricciones
temporales; con el test de lo que se trata es de garantizar, para cada uno de los circuitos
integrados, que tal diseño ha sido fabricado correctamente, es decir, que cada uno de
los circuitos físicos obtenidos (chips) corresponde exactamente al diseño. El proceso de
diseño ha de estar orientado al test; no basta un diseño funcional sino que hay que efectuar, a la vez, un diseño para el test, siendo así que, en muchas ocasiones, los aspectos
relativos al test resultan más difíciles y complejos que el propio diseño funcional.
El test va más allá de una comprobación funcional de los casos de interés: los vectores de test pretenden verificar que todos los nodos booleanos presentes en el circuito
integrado son capaces de actuar correctamente, lo cual asegura, en gran medida, que el
circuito físico responde efectivamente al diseño efectuado y no contiene errores debidos
al proceso de integración. En la práctica, es imposible la comprobación funcional completa de un circuito digital complejo, recorriendo todos los casos posibles; el test permite
efectuar una comprobación “completa” de todos los nodos booleanos del mismo, conforme a un modelo conceptual establecido para tal finalidad.
El test se efectúa, también, mediante un estudio estímulo/respuesta (entradas/salidas) utilizando una secuencia apropiada de vectores test (que no coincide con la secuencia propia de la simulación funcional, aunque ésta puede formar parte del conjunto global
de vectores de test). Los vectores de test han de permitir “controlar”, desde las entradas
del circuito integrado, cada uno de los nodos booleanos internos del mismo (pudiendo
situarlos a valor 0 ó 1) y “observar”, desde las salidas del circuito integrado, el estado
booleano de cada uno de dichos nodos; de esta forma, podremos comprobar que cada
celda básica está en su sitio y que actúa correctamente.
No se debe olvidar que aun cuando la aplicación del test es posterior a la fabricación,
afecta directamente al diseño por cuanto que el circuito ha de ser “testeable” (no todos lo
son) y, además, la obtención de los vectores de test forma parte del diseño del circuito.
440
CAPÍULO
12
Test de circuitos integrados
Introducción
E
l proceso de diseño de circuitos integrados (CIs) finaliza con el desarrollo del
producto y la evaluación de sus especificaciones. Con este fin, el test de los
circuitos integrados está encaminado a verificar que las capacidades del producto correspondan con las esperadas, además de probar bajo qué condiciones es capaz de operar el dispositivo.
Realizar el test permite encontrar errores en el diseño que se pudieron pasar por alto,
o aspectos que no se tuvieron en cuenta para la aplicación práctica y que en las simulaciones no aparecen, todo esto antes de su producción en masa para evitar la fabricación
de dispositivos defectuosos que en últimas representarían gastos elevados para la empresa diseñadora. Estos test también buscan garantizarle al cliente un funcionamiento
óptimo, al descartar componentes deficientes y permitir que sólo chips libres de fallas
lleguen hasta el consumidor.
Para probar un circuito integrado existen diferentes pruebas, dependiendo de lo que
se busque verificar, como son: el test funcional, en el cual se prueba que el circuito cumpla con su objetivo, presente las señales de salida deseadas cuando se le apliquen las
señales de entrada del diseño; el test temporal, analizando los tiempos de respuesta del
circuito, se observa que tengan los tiempos de propagación, tiempos de hold y set-up esperados, bajo ciertas condiciones en las señales de entrada; y el test de fabricación, en
el que se verifica si el circuito está bien fabricado.
Test de circuitos integrados
E
l test es una etapa muy importante durante el ciclo de producción de los circuitos integrados. El objetivo del test es el de verificar si los circuitos fabricados
funcionan o no correctamente, en función de las especificaciones con las que
fueron diseñados. El costo total para fabricar CIs está relacionado directamente con el costo de test, pero igualmente con el tiempo necesario para generar y aplicar
el test y con la calidad de dicho test.
El costo de test es una parte importante dentro del costo de fabricación. En 1999 el
International Technology Roadmap for semiconductors (ITRS, por sus siglas en ingles)
explicaba el problema que tiene el costo del test debido a su aumento relativo respecto
al costo total. La tendencia se basó en los circuitos que ocupaban el mayor segmento del
mercado (microprocesadores), y auguraba que este aumento seguiría en el futuro. Sin
445
embargo esta tendencia se ha visto modificada desde entonces, por un lado, no todos los
sectores han seguido la misma tendencia, y por otro lado, se han conseguido mejoras en
el test que han permitido relajar esta tendencia, y el aumento relativo del costo del test
en muchas aplicaciones se ha disminuido. A pesar de ello, no en todos los segmentos ha
habido mejoras, y en algunas aplicaciones el costo del test puede llegar a significar hasta
el 70% del costo total de fabricación.
Otro factor importante consiste en el momento en el cual se realiza el test, y consecuentemente, en qué momento se detectan los defectos de los circuitos. El hecho de
que se detecten en una etapa muy tardía dentro del proceso de fabricación repercute
directamente en los costos. Si estos defectos se detectan demasiado tarde, se malgasta
tanto tiempo como recursos en continuar el proceso de fabricación de unos circuitos que
serán posteriormente descartados por defectuosos, aumentando así el costo unitario de
fabricación. La calidad del test que considera algunos de los circuitos defectuosos como
buenos puede provocar una pérdida de confianza del cliente y posteriormente, repercutir
directamente en las ventas. En otro caso, considerar defectuosos circuitos que son correctos disminuye el rendimiento del proceso de fabricación, y por ende, aumenta el costo
unitario de fabricación.
10,0E-3
1981
1984
1987
1990
1993
1997
1999
2001
2003
2005
2008
2011
1,0E-3
cost/tran
Coste/ transitor (cent$)
100,0E-6
ASIC TESTER cost/tran
Micro tester cost/tran
10,0E-6
1,0E-6
100,0E-9
10,0E-9
1,0E-9
Año
Figura 12.1 Evolución del costo/transistor.
446
2014
Test de fabricación
E
l proceso de test de fabricación se inicia aceptando el diseño como funcionalmente correcto, es decir, que el diseño presentado va a cumplir con su propósito, y posteriormente se trata de comprobar que físicamente también lo es.
Para esto, se realiza un estudio de estímulo-respuesta (entradas-salidas), en
el que se emplean unos vectores de test que pretenden controlar desde las entradas,
el valor de un nodo y observarlo desde las salidas.
Vector de test = {vector de entrada,vector de salida}
Para realizar este estudio se utiliza una máquina de test que accede a los nodos de
entrada/salida mediante sondas de “punta” y aplica a las entradas los vectores de test.
Una vez realizado el estudio, se obtiene el resultado, de carácter binario ya que si está
correcto el circuito se encapsula, y si es incorrecto se desecha.
Entre los objetivos del test de Circuitos Integrados digitales encontramos:
1. Que el comportamiento lógico del circuito sea el esperado (test de funcionamiento).
2. Que Las salidas alcancen los valores de tensión e intensidad previstos en las hojas de especificaciones (test estático o test DC).
3. Que el comportamiento dinámico (tiempos de subida, bajada y propagación) se
encuentren en los márgenes previstos (test dinámico o test AC).
Fases del test de fabricación
1. Durante el diseño del circuito: Estos pasan por una etapa de verificación para garantizar las características.
2. Fabricación del circuito:
• Comprobaciones que aseguren que sea correcta la realización de los procesos tecnológicos.
• Se comprueba funcionalmente desde los nodos de E/S.
• Sistemas automáticos de test (ATE).
Los ATE están concebidos de forma que permiten automatizar los tres tipos de comprobaciones que se mencionan en los objetivos del test. Están construidos por: una mesa
de test “DOUT”; un controlador encargado de gobernar estos recursos para poder establecer las condiciones bajo las que se realizarán las comprobaciones; memoria donde
almacenar los patrones de test. Su función es almacenar patterns (conjunto de vectores
de test)
3. La vida activa del circuito se comprueba una vez montado sobre la placa.
447
Tipos de test fabricación
1. Test tecnológico: que comprende la medición de parámetros DC (tensiones VIL,
VIH, resistividades, etc.), y parámetros AC (tiempos de propagación, tiempos de
subida y de bajada).
2. Test de puntas: bloqueos y circuitos abiertos.
3. Test de encapsulado.
4. Test de prototipo.
Test concurrente y no concurrente
• Concurrente: Se incluyen circuitos integrados que permiten que los resultados
que se van obteniendo por el sistema se vayan comprobando mientas se están
obteniendo.
• No Concurrente: Se incluye en el circuito circuitería adicional para testearlo sin
necesidad de ATE’s.
Modo sistema: El circuito funciona normalmente.
Modo test: El circuito se autocomprueba.
Test de prototipo contra test industrial
• Test de prototipo: Para testear pocas unidades. Se comprueba que funcione, por
qué no funciona, donde está el error, límites hasta los que funciona y si puede ser
destructivo.
• Test industrial: Para testear muchas unidades. La respuesta del test es booleana.
No es destructivo.
Inconvenientes del test de circuitos integrados
1. Hay que comprobar cada uno de los circuitos, lo cual implica un consumo de tiempo muy elevado, que se traduce en sobrecostos de producción.
2. EL número de nodos accesibles es muy reducido, haciendo que el análisis no sea
completo y un circuito deficiente podría no ser detectado.
3. El test de CIs en la máquina de test es caro y el número de vectores de test necesarios puede ser muy grande.
4. En el caso de circuitos secuenciales es necesario además determinar el orden de
aplicación.
Test temporal
El objetivo del test temporal consiste en verificar que se cumplan los tiempos de
propagación esperados en las simulaciones, bajo ciertas condiciones de las señales de
entrada. Principalmente se prueban dispositivos especiales fabricados en el contorno de
la oblea: resistencias, transistores, condensadores, etc. Por ser un test de calidad, solo
se prueban algunas obleas y se realiza un análisis estadístico.
448
Modelo de fallos
D
•
•
•
•
ebido a que comprobar el funcionamiento de un circuito integrado es un problema muy complejo, se debe realizar un modelo de fallos, en el que se pueda:
Determinar los fallos posibles y contar su número.
Encontrar vectores de test para cada fallo.
Conocer que fallos detecta cada vector de test.
Calcular la cobertura de fallos.
Cobertura de fallos =
Fallos detectados
× 100
Fallos Posibles
Los defectos típicos que se pueden encontrar en un circuito integrado son (Figura 12.2):
• Cortocircuito entre capas.
• Cables interrumpidos.
• Cortocircuito entre la puerta (gate) y el sustrato.
Estos fallos dan lugar a las siguientes consecuencias:
• Nodos cortocircuitados con las alimentaciones.
• Nodos cortocircuitados entre sí.
• Nodos Flotantes.
Dentro de los modelos de fallos se encuentran:
• Fallos por bloqueo (Stuck at): se dan 2 fallos:
• Stuck at 1: Cortocircuito entre un nodo y VDD.
• Stuck at 0: Cortocircuito entre un nodo y GND.
• Fallos por circuito abierto: que incluyen:
• Stuck open: Nodo en circuito abierto.
• Stuck closed: Nodos en cortocircuito.
Estos fallos pueden dar lugar a dispositivos secuenciales. Por ejemplo, en una NOR
de 2 entradas, un circuito abierto puede comportarse como se ilustra en la Figura 12.3.
449
Figura 12.2 Posibles fallos en un circuito integrado1
A
A B
B
B
A
Out
1
1
0
1
0
0
0
1
Out - 1
0
0
1
Figura 12.3 Esquema NOR con circuito abierto en NMOS (izquierda). Tabla de verdad (derecha) 2
MODELO STUCK AT
Este modelo de fallos cuenta con las siguientes características:
• Se consideran como elementos componentes del circuito las celdas básicas.
• Se consideran nodos las entradas a estas celdas básicas y las salidas primarias.
• Para cada nodo se toman dos fallos posibles:
• Nodo bloqueado a 1: Stuck at 1
• Nodo bloqueado a 0: Stuck at 0
• Se supone que en el circuito hay un único fallo.
1 Urriza I., García J.I. Test de Circuitos Integrados. Tipos de test de fabricación. Test tecnológico. Ingeniería Electrónica y Comunicaciones. odyssea.cps.unizar.es/~te/Docencia_archivos/sysel_archivos/test.pdf
2 Urriza I., García J.I. Test de Circuitos Integrados. Tipos de test de fabricación. Test tecnológico. Ingeniería Electrónica y Comunicaciones. odyssea.cps.unizar.es/~te/Docencia_archivos/sysel_archivos/test.pdf
450
El fallo que se detecta de forma directa con este modelo es el cortocircuito entre dos
terminales de un transistor MOS, y entre un nodo y la alimentación. El resto de fallos
posibles se detecta de forma indirecta, haciendo una segunda prueba a cada nodo. Los
fallos detectados son:
• Transistor MOS en circuito abierto.
• Pistas cortadas.
• La interconexión entre pistas.
Este modelo no detecta fallos múltiples, pero es capaz de detectar alguno de ellos
individualmente. Para detectar un fallo, inicialmente se aplica a un nodo del circuito el
valor booleano D, deseado y se observa el valor del nodo de salidas (Figura 12.4).
1
1
1
D
y
A
*
Fallos detectados:
stuck-at_1 en la entrada *
stuck-at_0 en todas las entradas
D=0 => y=0
D=1 => y=1
0
0
0
D
+
Carry_Out
Carry_In
y
*
Fallos detectados:
D=0 => y=0
D=1 => y=1
B
Suma
stuck-at_1 en todas las entradas
stuck-at_0 en la entrada *
Vectores de test: (000,001,010,100)
(000,111)
Figura 12.4 Ejemplos de detección de fallos con el modelo Stuck at3
Test de circuitos integrados combinatorios
S
e toma el modelo Stuck at, que es el modelo más utilizado. Los defectos físicos pueden modelarse como líneas de circuito lógico que quedan bloqueadas
permanentemente a 0 o a 1.
Dice que un circuito combinatorio se puede probar siempre que se puedan
controlar y observar todos sus nodos, siempre y cuando en el circuito no aparezcan redundancias booleanas
3 Urriza I., García J.I. Test de Circuitos Integrados. Tipos de test de fabricación. Test tecnológico. Ingeniería Electrónica y Comunicaciones. odyssea.cps.unizar.es/~te/Docencia_archivos/sysel_archivos/test.pdf
451
Algoritmo D
Este algoritmo, introducido por IBM en los años 60, se utiliza para determinar los vectores de test. Consiste en:
1. Asignar el valor D al nodo a evaluar.
2. Se propaga el valor D hasta las salidas, asignando los valores adecuados a los
nodos intermedios (observar n).
3. D y el resto de los valores de la etapa anterior se propagan hacia las entradas
(controlar n).
Test de un nodo
Para llevar a cabo el test de un nodo se observará el siguiente ejemplo: el circuito de
la figura 5, implementa la función segmento f de un conversor BDC a 7 segmentos:
__
D
n1
0
n2
C 1
1
B 0
A
1
__
__
Yf = D + C B + C A + B
0 n9
1
n7
n3
n4
0
1
n5
n6
0
0
n8
0 n10
Yf
1
fallos = 2*10
Figura 12.5 Esquema conversor BDC a 7 segmentos 4
Se analiza el nodo 7:
1. Se le asigna el valor D a n7.
2. Observar: (n2,‘1’); (n9,D); (n1, n8,‘0’); (n10,D).
3. Controlar: (n1=0, Di=0); (n2=1, Ci=1); (n7=D, n3=D, n4=1); estos valores fuerzan
n5 y n6, y por lo tanto n8=0, y esto es correcto.
4. Vectores de test 01D1 (0101 bloqueo a 0, 0111 bloqueo a 1).
Nodo no evaluable
 ________ 
Tenemos la función: Yf = D + C ⋅  B ⋅ A  + ( B + A ) → simplificando →Yf = D + C + B + A


El nodo 7 no se puede evaluar, los valores boléanos de n7 y n8 son incompatibles.
4 Urriza I., García J.I. Test de Circuitos Integrados. Tipos de test de fabricación. Test tecnológico. Ingeniería Electrónica y Comunicaciones. odyssea.cps.unizar.es/~te/Docencia_archivos/sysel_archivos/test.pdf
452
D
0
C 1
X
B 0
A
0
n1
n2
0 n9
1
n7
n3
n4
0
1
n5
n6
0
0
0 n10
Yf
1
n8
Figura 12.6 Esquema de circuito implementado con la función no evaluable5
Generación de vectores
A continuación se presenta el procedimiento para la generación de vectores.
• Se toma un número de vectores aleatorios (o funcionales) y se calcula la cobertura
que producen (60% a 80%).
• Se incrementa este conjunto mientras produzca resultados.
• Se estudian los nodos no evaluados y se obtienen sus vectores de test según
algoritmo D.
• Cuando se alcanza la cobertura deseada (usualmente 95% ó 98%) se detiene
el proceso.
• Se intenta minimizar el número de vectores de test necesarios, ya que se paga por
el tiempo de testeo. Normalmente se paga por paquetes de 64K o 256K vectores.
El tamaño del paquete depende de las características del test empleado.
Diseño orientado al test
El objetivo de un diseño orientado al test es el de mejorar la controlabilidad y observabilidad de los nodos, para incrementar la tasa de cobertura con un número menor de vectores.
Para esto, se utilizan los siguientes métodos:
• Eliminación de redundancias.
• Inserción de puntos de test, es decir convertir nodos internos en salidas para mejorar la observabilidad y añadir el control externo a entradas de puertas internas,
multiplexándolas para funcionar en modos normal/test.
• Separar el circuito en bloques estudiables de forma individual.
Inserción de puntos de test y utilización
Para identificar los posibles fallos en un circuito se pueden aumentar los puntos de control y observación al insertarlos físicamente:
5 Urriza I., García J.I. Test de Circuitos Integrados. Tipos de test de fabricación. Test tecnológico. Ingeniería Electrónica y Comunicaciones. odyssea.cps.unizar.es/~te/Docencia_archivos/sysel_archivos/test.pdf
453
• Puntos de control CP:
C1
C2
CP
Figura 12.7 Puntos de control CP con inyección de 0 6
C1
CP1
C2
CP2
C1
0
1
CP1
C2
CP2
Figura 12.8 Puntos de control CP con inyección de 1/0 segmentos 7
• Puntos de observación OP:
0P
C1
CP
G
C2
Figura 12.9 Puntos de observación OP segmentos 8
6 Urriza I., García J.I. Test de Circuitos Integrados. Tipos de test de fabricación. Test tecnológico. Ingeniería Electrónica y Comunicaciones. odyssea.cps.unizar.es/~te/Docencia_archivos/sysel_archivos/test.pdf
7 Urriza I., García J.I. Test de Circuitos Integrados. Tipos de test de fabricación. Test tecnológico. Ingeniería Electrónica y Comunicaciones. odyssea.cps.unizar.es/~te/Docencia_archivos/sysel_archivos/test.pdf
8 Urriza I., García J.I. Test de Circuitos Integrados. Tipos de test de fabricación. Test tecnológico. Ingeniería Electrónica y Comunicaciones. odyssea.cps.unizar.es/~te/Docencia_archivos/sysel_archivos/test.pdf
454
Utilización de los puntos de test:
• Los puntos de control:
• Buses de control, direccionamiento y datos en un diseño estructurado en bus.
• Líneas de control en dispositivos triestado.
• Señales de control en memorias.
• Puntos de observación:
• Señales redundantes.
• Caminos de realimentación globales.
• Salidas de dispositivos con muchas entradas (multiplexores, generadores de
paridad, etc.).
• Salidas de flip-flops, contadores, registros de desplazamiento.
• Buses de datos, dirección y control.
La inserción de puntos de test implica un aumento en el número de nodos de entrada/
salida, por lo que se utilizan salidas y entradas multiplexadas, en modo test o modo normal.
Test de circuitos integrados secuenciales
El valor de los nodos depende de los vectores de entrada y del estado almacenado en
los biestables, por tanto se necesitan secuencias ordenadas de vectores de entrada para
fijar el estado interno, por ejemplo, en un test de un contador de 16bits, si partimos de 0,
se necesitarían 65534 pulsos de CLK para comprobar el Stuck at 0 del bit MSB.
En el diseño orientado al test, se cuentan con las siguientes características:
•
•
•
•
Diseño síncrono con único flanco activo de reloj (se evalúa con base a un único reloj).
Uso o no de determinado tipo de biestables.
Uso o no de triestados.
Inicialización del sistema, de los biestables (necesario para la simulación).
SCAN-PATH
El Scan-Path consigue la reducción del problema al separar la lógica combinatoria
de la secuencial, añadiendo un multiplexor a la entrada de los elementos de memoria,
facilitando la evaluación de un único registro de desplazamiento.
Este método también permite evaluar todos los biestables (full scan) o solo en los que
se requiera (partial scan). EL control y la observabilidad se consiguen encadenando los
biestables, durante el test de uno o varios registros de desplazamiento.
455
Los circuitos requieren de pines extra para el escaneo, por lo que los biestables son
más complejos, como se observa en las Figuras 12.10 y 12.11.
d
clk
scan_in
q
d
d
scan_enable
qn
clk
q
clk qn
q/scan_out
qn
flip-flop con scan
flip-flop sin scan
Figura 12.10 Diferencias entre un flip-flop sin escaneo (Izq.) y con escaneo (Der.) 9
Lógica Funcional
scan_in
d
clk
q
qn
d
clk
q
qn
d
clk
q
qn
d
clk
q
scan_out
qn
clk
scan_enable
Figura 12.11 Lógica funcional del Scan-Path 10
Ventaja: Vectores de test sólo para la parte combinatoria, optimiza el uso de ATE.
Desventajas: Necesita lógica adicional, pines adicionales, número de ciclos de test
elevado, las condiciones del test no son reales, la lógica adicional empeora el circuito por
aumentar el retardo, el consumo y aumenta el riesgo de mal funcionamiento.
Operación
1. Se obtienen los vectores de test de cada bloque combinatorio (delimitado por elementos secuenciales) según el algoritmo D.
2. Se cargan estos vectores de test encadenados en el registro de Scan (modo test)
serán necesarios tantos pulsos CLK como biestables (n) tenga el registro de Scan
(se puede reducir el número de pulsos usando varios registros cortos, pero se
requieren más pines).
3. Se pone el circuito en modo normal y se aplica un pulso CLK.
9 Urriza I., García J.I. Test de Circuitos Integrados. Tipos de test de fabricación. Test tecnológico. Ingeniería Electrónica y Comunicaciones. odyssea.cps.unizar.es/~te/Docencia_archivos/sysel_archivos/test.pdf
10 Urriza I., García J.I. Test de Circuitos Integrados. Tipos de test de fabricación. Test tecnológico. Ingeniería Electrónica y Comunicaciones. odyssea.cps.unizar.es/~te/Docencia_archivos/sysel_archivos/test.pdf
456
4. Se regresa al modo test y se extrae el valor del registro de Scan, aplicando n pulsos de CLK. En esta fase también se puede cargar de nuevo el registro.
Test de placas y de sistemas complejos
L
a extraordinaria complejidad que alcanzan hoy día las placas de circuitos digitales y los sistemas digitales completos repercute fuertemente sobre su comprobación, lo que resulta sumamente difícil. La filosofía desarrollada con el método
del scan path para el test de circuitos secuenciales es aplicable al test de placas
de circuitos integrados digitales de la siguiente manera:
a. Ha de incluirse un biestable en cada terminal de los circuitos integrados; dicho
biestable actuará en modo de test formando parte junto a biestables internos del registro
de desplazamiento que conforma el camino de exploración (scan path) para el test del CI.
b. Los caminos de exploración de los diversos circuitos integrados serán conectados
en serie para formar un largo camino de exploración global para el test de placa.
c. El scan path permite controlar en serie todas las entradas y salidas de los CI y
observar en serie todas sus salidas, de forma que se puede probar cada uno de dichos
circuitos utilizando sus propios vectores de test.
d. El scan path permite fijar valores en las salidas de los circuitos integrados y observar, luego, las entradas de todos los circuitos, lo cual hace posible comprobar las pistas
de conexión, comprobando si los valores fijados en las salidas de los circuitos son recibidos correctamente en las entradas de los circuitos conectados a tales salidas.
Esta manera de abordar el test de placas digitales, mediante la inclusión de biestables
en el contorno de todos los circuitos integrados, para formar junto con los biestables internos propios del diseño un camino de exploración “scan path” de la placa, constituye un
método de comprobación que recibe el nombre de exploración de contorno: boundary scan.
Entradas
Biestables
Salidas
internos
Pistas
cicuito
impreso
Test-out
Test-in
Figura 12.12 Boundary scan
457
El boundary scan requiere disponer de circuitos integrados especiales preparados
para el test de contorno, dichos circuitos incorporan biestables y periféricos en todos sus
terminales, así, en todas sus entradas y salidas; y cuatro terminales adicionales dedicados específicamente al test: dos para la entrada TDI “test in” y salida TD0 “test out” del
registro de desplazamiento, uno como entrada de control para la ejecución del test TMS
“test mode switch”, y otro como entrada de reloj para el test TCK.
Si el circuito integrado es secuencial, los “biestables propios” del circuito son conectados al registro de desplazamiento “scan path” junto con los “biestables periféricos”, para
poder efectuar el test completo de los circuitos.
El circuito funciona en tres modos, completamente diferentes:
1. El modo normal en el cual no actúan los biestables periféricos y no existe “scan
path”: TMS = TDI = 0 y TD0 = 0.
2. El modo de desplazamiento TMS = 1, TCK = pulsos de reloj, en que se produce el
desplazamiento del registro que configura el “scan path” y, por tanto, la entrada y
la salida de los vectores de test.
3. El modo de ejecución de test TMS = 0, TDI = 1, TCK = un solo pulso de reloj (TD0
=1) en que los biestables periféricos actúan en dos sentidos:
a. Antes del pulso de reloj, como entradas hacia los circuitos integrados (para realizar
su test interno) y como salidas (para realizar el test de conexiones entre ellos).
b. Después del pulso de reloj, como entradas (para recibir el resultado del test interno).
Test de placas PCB JTAG
Este es un procedimiento análogo al test secuencial. Definido por el estándar IEEE
JTAG (Join Test Action Group), cuenta con las siguientes características:
• Registro de todos los pines de los circuitos integrados.
• Scan-Path formado por todos los pines de los circuitos.
• Necesidad de terminales específicos para el test: scan-input, scan-output, scanclk y test-mode.
• Aplicable tanto al test de la placa como al de los circuitos.
458
Test interno
E
ste método de prueba de circuitos integrados es muy útil para aplicaciones de
circuitos extensos repetitivos, tales como RAM o PLA. Busca reducir costos de
test, posibilitar el test sobre la placa, en algunas situaciones la autodiagnosis
dinámica y la tolerancia a fallos.
Para el test interno se requiere:
• Generador de vectores de test: LFSR.
• Analizador de resultados: analizadores de FIRMA.
BIST (Built-In Self Test)
Se basa en un registro especial que actúa como generador y/o compresor de los patrones que se aplican a un circuito y no necesita introducir ningún vector de test.
Funciona de la siguiente manera: estando en modo test, se aplican pulsos CLK mientras se comprueba que la salida del comparador de test (TDO) permanece en cero.
Ventajas: Se eliminan los costos de generación de vectores de test, el test se realiza
a la velocidad del circuito, no hay circuitería externa de comprobación.
Desventajas: Necesita espacio propio, no se puede acceder a nodos Internos.
Contiene una máquina de estados que analiza conjuntamente todos los vectores de
test. La generación interna de los vectores de test puede ser con pre-almacenamiento,
test exhaustivo o pseudo-aleatorio (LFSR: Linear Feedback Shift Register).
d
q
d
q
d
Q1
Q0
clk
d
q
Qm¹
clk
q
d
Qm-1
Qm
clk
clk
q
clk
clk
V0
V1
Vm'
Vm-1
Vm
Figura 12.13 Esquema BIST 11
11 Urriza I., García J.I. Test de Circuitos Integrados. Tipos de test de fabricación. Test tecnológico. Ingeniería Electrónica y Comunicaciones. odyssea.cps.unizar.es/~te/Docencia_archivos/sysel_archivos/test.pdf
459
Compactación de vectores (firma)
Para este método, es necesario comparar las salidas producidas por los vectores
internos de test para comprobar la corrección del circuito. Para simplificar el circuito comparador, se compactan las salidas.
• FIRMA sobre N bits: compresión de una palabra de M>>N bits.
• Dos palabras de M bits tendrán diferente FIRMA si son distintas y difieren en no
más de N bits.
• Un LFSR adecuadamente modificado es un compresor de FIRMA.
d
q
d
clk
q
d
clk
d
q
d
q
d
q
d
q
q
clk
clk
clk
clk
clk
clk
d
q
CLK
D0
D1
D2
D3
D4
D5
D6
D7
Figura 12.14 Esquema compactación de vectores FIRMA 12
BILBO (Built-In Logic Block Observer)
Utiliza un LFSR interno capaz de generar vectores de test pseudo-aleatorios, o funcionar como analizador de firmas.
Señales: SIN y SOUT, que construyen los pines de escaneo; B1 y B2 que permiten
escoger el modo de funcionamiento.
Funciona muy bien en circuitos muy modulados o con estructura en bus. Cada módulo tiene 2 registros BILBO.
Funcionamiento: Modo registro desplazamiento, modo test, modo registro desplazamiento.
L
F
S
R
Bloque
a
testear
1
L
F
S
R
Bloque
a
testear
2
Figura 12.14 Esquema BILBO 13
12 Urriza I., García J.I. Test de Circuitos Integrados. Tipos de test de fabricación. Test tecnológico. Ingeniería Electrónica y Comunicaciones. odyssea.cps.unizar.es/~te/Docencia_archivos/sysel_archivos/test.pdf
13 Urriza I., García J.I. Test de Circuitos Integrados. Tipos de test de fabricación. Test tecnológico. Ingeniería Electrónica y Comunicaciones. odyssea.cps.unizar.es/~te/Docencia_archivos/sysel_archivos/test.pdf
460
Los registros reconfigurables BILBO permiten su reutilización tanto funcional, como
de generadores de vectores y de analizadores de firma, permitiendo el test secuencial de
los distintos bloques.
Test AD-HOC
Es un conjunto de normas de diseño que permiten acceder y controlar mejor los
nodos internos. Las normas prácticas de diseño para el test son:
1. Facilitar el acceso y la observación de los nodos internos: convirtiendo señales
conflictivas en pines E/S, uso de MUX para facilitar el acceso y la observación a
nodos internos, uso de registros desplazamiento
2. Asegurar la inicialización de todo elemento de memoria interna.
3. Evitar la lógica redundante porque puede enmascarar la detección de fallos.
4. Evitar la generación de señales de reloj internas, así como de asincronizaciones.
5. Partición del circuito, si es muy grande.
6. Dar un buen informe del circuito diseñado: donde debe especificarse el funcionamiento lógico del circuito, las señales de control y reloj, la sincronización de todas
las señales, y que elementos del test son testeados con lógica adicional.
El test en la etapa de diseño.
Durante el diseño del circuito, estos deben pasar por una etapa de verificación para
garantizar las características deseadas. El objetivo del test en esta etapa principalmente
consiste en reducir el tiempo de diseño y maximizar las probabilidades de éxito.
Herramientas
a. Simuladores genéricos:
• Analógicos.
• Digitales.
Diseño Digital
Diseño Analógico
Descripción
Descripción
Simulación
Simulación
Prototipo
Prototipo
Verificación
Verificación
Ajustes/ Simulación
Fin
Ajustes/ Simulación
Autoverificación
Fin
Figura 12.16 Esquema de simuladores genéricos
461
Autoverificación: (Test Bench)
•
•
•
•
•
•
•
Adquiere resultados correctos.
Ejecuta la simulación.
Compara resultados de la simulación con los esperados.
En caso de error genera mensaje texto.
Reduce el uso de visores de formas de onda.
Acelera la depuración de sistemas complejos.
Debe ser fiable y exhaustivo.
b. Simuladores ad-hoc
Los simuladores ad-hoc, como ya se mencionó, se basan en un conjunto de normas
de diseño que permiten acceder y controlar mejor los nodos internos. Son programas que
materializan el algoritmo que se desea plasmar en hardware.
Técnicas de prueba
Partición
1. Partición funcional: Separar funciones completas en un solo módulo funcional. Sin
solapes ni comparticiones.
f3
f1
f2
f3
f4
f5
f6
Adecuado
f1
f2
f4
f6
f5
Inadecuado
Figura 12.17 Partición funcional
2. Partición física: Si un determinado módulo funcional combina partes analógicas y
digitales, deberían separarse.
Digital
Digital
Digital
Analog
Digital
Analog
Analog
Adecuado
Analog
Inadecuado
Figura 12.18 Partición física.
462
Digital
Puntos de prueba
1. Pasivos: Su propósito es la observación de señales. Se utilizan para conectar
instrumentos de análisis.
• Osciloscopio: Permite el ajuste de circuitos analógicos y la monitorización de
señales digitales críticas.
• Analizador Lógico: Permite el análisis de señales digitales e incluir conectores
para simplificar la conexión.
2. Activos: Mediante puntos de prueba activos es posible introducir señales en el
circuito con objeto de controlar su funcionamiento. Dichas señales permiten:
• Introducción de estímulos.
• Inicializar circuitos digitales.
• Abrir lazos de realimentación en circuitos digitales (con la ayuda de multiplexores) para facilitar el test.
• Desconectar señales de reloj para poder introducirlas desde el exterior.
3. Activos y Pasivos:
También es posible utilizar la técnica de puntos de prueba utilizando puntos activos y
pasivos de forma simultánea combinando las características que se describieron anteriormente. Esta técnica es de amplia utilización en sistemas digitales con buses de datos.
Durante el test, el instrumento de test se conecta como un dispositivo más del bus.
Puede comportarse como receptor (análisis), como transmisor, o incluso como controlador del bus (excitación).
ATE:Sistemas automáticos de test.
Están construidos por: una mesa de test donde se encuentra el CI a probar o “DUT”
(Device Under Test) y que contiene los recursos de test (generadores de estimulos,
comparadores, drivers, etc.), un controlador encargado de gobernar estos recursos
para poder establecer las condiciones bajo las que se realizarán las comprobaciones,
y dispositivos de memoria para almacenar los patrones de test. La función básica de
un ATE es comparar los resultados obtenidos en las medidas con los que debería
entregar un dispositivo funcionando correctamente (vector de test).
Estructura de un ate
• SECCIÓN DE CONTROL: ordenador y software.
• SECCIÓN DE TEST:
• Generadores de estímulos.
• Unidades o matrices de conmutación.
• Instrumentos de medida.
• INTERFAZ CON LA UNIDAD:
• Acondicionadores de las señales.
• Cableado y alimentación de la unidad.
463
CONTROLADOR
Instrumentos de
Excitación
Instrumentos de
Medida
Conmutación
Fuente de
Alimentación
DUT
Figura 12.19 Estructura de un ATE.
Tipos de ATE’s
1. In Circuit
Son los encargados de comprobar la continuidad, los circuitos abiertos y cerrados y de realizar medidas sobre sistemas que se encuentran conectados. Se basan en utilizar “camas
de agujas” para aplicar y recibir los estímulos analógicos y fundamentalmente digitales.
2. Funcionales
Aplican estímulos al sistema a probar (tarjetas y sistemas) y miden las respuestas
que generan mediante dos métodos a saber:
• Comparar con resultados almacenados previamente.
• Analizar los datos obtenidos.
3. Known-Good
Sistemas de ATE que permiten mantener un sistema completo. Se basan en introducir, en un sistema que funciona correctamente, la unidad de prueba y medir las respuestas. Si el sistema funciona correctamente la unidad probada es correcta.
4. DE COMPARACIÓN
El sistema compara el DUT con una referencia que funciona correctamente. Para ello
aplica al DUT y a la referencia las mismas señales comparando las respuestas obtenidas.
Ventajas de los sistemas de ATE
•
•
•
•
•
464
Disminución de los tiempos de prueba.
Posibilidad de repetición de las medidas
Menor preparación del operador del sistema.
Eliminación de los errores.
Mayor capacidad de análisis.
• Generación automática de estadísticas e informes.
• Disminución de costos y aumento de la producción.
Instrumentos de medida
En los ATEs se utilizan equipos para medir señales analógicas y digitales en los rangos de frecuencia que van desde las señales continuas hasta los GHz.
• Instrumentos:
•
•
•
•
•
•
Multímetros.
Osciloscopios.
Digitalizadores con y sin DSP.
Frecuencímetros/Contadores.
Medidores de potencia.
I/O Digital Optoacoplada.
Instrumentos de excitación
En los ATEs se utilizan equipos para aplicar estímulos analógicos y digitales.
•
•
•
•
Generadores arbitrarios.
Generadores sintetizados de barrido.
Convertidores D/A.
Generadores de pulsos.
Elementos de conmutación
Utilizados para encaminar las señales entre el DUT y los instrumentos.
• Multiplexores.
• Scanners.
• Matrices de conmutación.
Ejemplo: ADVANTEST Modelo T6682 ATE
Figura 12.20 ADVANTEST Modelo T6682 ATE 14
14 Lubaszewski M. MIC05: Teste de Circuitos Integrados. PPGMicro – UFRGS. 2007.
465
1. Diagrama de bloques
Frame Processor
ALPG
(Option)
SCPG
(Option)
Tester
Controller
Pin Data
Selector
Rate
Generator
SQPG
Formatter
Timing
Generator
AFM
(w/ALPG)
PE
Timing
Memory
TTB
Data Fail
Memory
PMU´s
MDC UDC
Waveform
Memory
Device
Power
Supplies
Digital
Compare
Figura 12.21 Diagrama de bloques Advantest T6682 ATE 15
2. Características
Utiliza VLSI chips en implementación de 0.35 μm.
• 1024 canales de pins.
• Velocidad: 250, 500, o 1000 MHz.
• Exactitud de tiempo: +/- 200 ps.
• Tensión: -2.5 a 6 V.
• Exactitud CLK: +/- 870 ps.
• Ajuste resolución CLK: 31.25 ps.
• Patrón de multiplexado: escritura 2 patrones en un ciclo ATE.
• Multiplexado de Pines: usa 2 pines para controlar 1 pin de DUT.
15 Lubaszewski M. MIC05: Teste de Circuitos Integrados. PPGMicro – UFRGS. 2007.
466
DUT
APENDICE
Iniciando L-edit
Para iniciar L-edit, haga clic en el botón start en la ventana taskbar y vaya hacia el directorio de instalación de L-Edit (generalmente en Programs>Tanner L-edit Pro> L-edit Pro).
Luego haga doble click en el icono de L-Edit que esta en el escritorio y tiene la siguiente presentación:
Setup de archivos
Cada diseño en L-edit contiene información básica tal como una lista de layers (trazos), marco de la tecnología y la opción del modulo especifico para SPR, DRC, y extracción. Toda esta información es conocida como el setup. Esta información de diseño se
puede transferir usando File >ReplaceSetupy File >ExportSetup.
Exportación de Setup.
Cuando inicia L-edit, el programa toma el archivoledlt.tdb y lo lee para cargar la información, esto siempre lo hará por defecto. Si L-Edit no encuentra este archivo en el
directorio correcto , L-Edit buscara el directorio donde el ejecutable este localizado. En
caso de que L-edit no encuentre el archivoledlt.tdb, el mostrara un mensaje de peligro
de error.
Con o sin archivo de inicio, ledlt.tdb, cuando L-edit inicia genera una nueva celda nueva, Cell0. Para poner en marcha L-edit con un archivo TDB especifico, se debe hacer
doble click sobre el archivo TDB y este se cargara y abrirá automáticamente el L-Edit.
Línea de Argumentos y de Mando.
Para iniciar L-edit con una línea de argumentos, haga click en Start y seleccione Run.
Use Browse para llegar hasta el directorio que contenga a ledit.exe.
L-edit usa las siguientes líneas de comandos y argumentos:
file1.tdb, file2.tdb, ...
Nombre de los archivos TDB.
-d
Previene a L-edit para cambiar el actual directorio. Sin esta bandera, L-edit carga el
471
actual directorio a el último TDB abierto en L-edit.
-d <dir name>
Cambia el directorio actual a uno especificado.
-f
Instrucción para que L-Edit ignore trabajos de grupos y uso de archivos de configuración.
-n
Desactiva la grilla.
-r
Este comando asocia el archivo TDB con la versión de L-Edit mostrada en la linea
de mando.
-s
Evita la asociación de archivos.
-u <nombre de archivo>
Carga el archivo macro especificado. Múltiples opciones –u pueden ser usadas para
cargar varias macros.
-U <nombre de archivo>
Carga el archivo macro especificado y ejecuta la primer macro registrada en UPI_Entry_Point. Solo una macro puede ser ejecutada, pero la macro puede ser ejecutada dentro del llamado de otra macro.
Interfase
Los siguientes son los componentes de la interfase de L-Edit:
Barra de menú.
Herramientas estándar.
Herramientas de edición.
Herramientas de dibujo.
Herramientas de verificación.
Herramientas de pegado y ruta.
Paleta de trazos.
Barra de estado.
Colocación o coordenadas.
Barra de botones del mouse.
Área de trazo.
Interfase de línea de mando.
A continuación se muestra su ubicación en la pantalla de trabajo:
472
Barra de Titulo y Barra de Menú.
La barra de titulo indica el archivo y la celda activa. La barra de menú contiene los
comandos de L-Edit y se muestra de la siguiente manera:
FILE
Comandos para crear, abrir, guardar e imprimir archivos.
EDIT
Comandos para copiar, borrar, seleccionar, encontrar y editar texto.
VIEW
Comandos para expandir, contraer y cambiar la vista.
DRAW
Comandos para transformar diseños elementales.
CELL
Comandos para crear, manipular e instanciar celdas.
SETUP Comando para acomodar parámetros del setup para la aplicación, diseño,
trazos, paleta de colores, y herramientas.
TOOLS Comandos para examinar XrefCells, creación y borrado de trazos, DRC,
acomodado y enrutado del diseño, extracción, vistas de corte de sección y activación de
macros.
WINDOWS
HELP
de L-Edit.
Comandos para mostrar ventana de documentación.
Comandos para acceder a guías de usuario e información general acerca
Arreglo de Ventana.
El menú Windows contiene comandos para manipulación de ventanas de documentos y textos de L-Edit.
473
Buscar Ayuda.
Para conseguir documentación, presione el botón (
de los siguiente comandos del menú ayuda (Help)
) de ayuda o seleccione una
Layout Editor
Placement and Routing
Design Verification
UPI
X-Tools
Dev-Gen
Quick Reference
Application Notes
FAQ
Para determinar la versión de L-Edit que esta usando, seleccione Help>About L-Edit.
L-Edit le mostrara la siguiente ventana de dialogo:
De click sobre Supportpara ver el contacto con Tanner EDA TechnicalSupport.
474
De click sobre Memory para ver información del sistema operativo de su coputador.
L-Edit desplegar la siguiente presentación:
Si tiene muchas ventanas abiertas en L-Edit usted puede recibir la siguiente advertencia:
Barras de Herramientas.
L-Editutilisa ocho diferentes barras de herramientas que se pueden mostrar u ocultar
usando View >Toolbars.
También se puede mostrar y esconder las barras de herramientas a través de un
menú sensitivo. Para activar el menú posicione el puntero en cualquier parte de la barra
de herramientas y de un click con el botón derecho del mouse. El menú es dinámico y
puede mostrar las opciones y herramientas para configurar el L-Edit.
475
Usted puede mover y redimensionar todas las herramientas. Para cambiar de posición
una barra, de click sostenido sobre una esquina y arrástrela a la nueva posición. L-Edit
mantiene su configuración de tablero cuando usted cierre la sesión. Si quiere que la herramientas retornen a la posición inicial use ResetToolbarsmostrada en la anterior grafica.
Herramientas Estándar:
476
Herramientas de Edición:
Herramientas de Dibujo:
Esta herramienta tiene botones para ortogonales, 45 grados y para todos los angulos.
Para mostrar solo un set de botones de click derecho sobre la barra de dibujo y seleccione.
477
Los siguientes botones son los que presenta la barra de dibujo:
Herramientas de Verificación:
478
Herramientas de ruta y postura:
Paleta de Trazos:
La paleta se muestra a continuación:
L-Edit soporta un gran número de tecnologías, cuyos layers están agrupados en la paleta de layers representados por iconos que representan a cada material. El icono muestra
el color y el patrón de cada layer simulado en el trazado. Cuando el puntero del mouse se
desplaza sobre la paleta, el nombre de cada material aparece en la barra de estado.
Para ver layers adicionales puede usar la barra de desplazamiento de la paleta que
se muestro en la anterior grafica.
Usando el botón derecho del mouse en la parte superior del menú asociado con la
paleta, se puede ocultar, mostrar o asegurar los layers, abrir el dialogo setuplayers, y
cambie el tamaño de los iconos de la paleta. Para activar el menú posicione el puntero
en cualquier parte de paleta y de click derecho a lo cual aparecerá la siguiente pantalla:
479
Lock[nombre Layer] Cuando ejecuta este comando no puede dibujar, mover o editar
objetos con el layer especificado. Use Lock All o Unlock All, respectivamente.
Cuando un layer es boqueado, L-Edit indica este estado de dos formas:
Una mascara de comprobación aparece al lado como Layer[nombre Layer].
El icono del layer es enrejado en l paleta de trazos, así:
Barra de estado.
Allí hay tres barras asociados con L-Edit: La barra de estado, la barra de botones del
mouse y el localizador. Para ocultar o mostrar la barra de estado use: View > Status Bars.
Barra de estado.
La barra de estado, localizada en la parte inferior de la ventana de L-Edit, presenta la
sensibilidad y la información de los detalles de la interfase.
480
Barra de Botones del Mouse.
Esta muestra la actual función de cada botón.
Los botones del mouse tienen diferentes funciones de pendiendo de la localización
del mouse en la aplicación.
Localizador.
Normalmente el localizador proporciona la localización del puntero respecto a un origen absoluto. El origen absoluto esta en la coordenada (0,0) y esta marcado con una
cruz en el área de trazo.
Se puede cambiar la relación entre las unidades del localizador y cualquier unidad
física en los diálogos SetupDesign- Technology y SetudDesign – Grid
Area de trazos.
El área activada para el trazo del objeto es llamada area de trazo. El origen del sistema esta marcado con una cruz y esta dado por la coordenada (0,0), esta marca se puede
activar u ocultar usando View >Display>MajorGrid y View >Display>MinorGrid. Tambien
se puede ajustar el espaciado entre los puntos de la grilla mayor o menos usando SetupDesign—Grid.
Sistema de Coordenadas.
L-Edit usa las unidades del localizador para reportar dimensiones de objetos y coordenadas. Este tambien las utiliza para mostrar la grilla, el desplazamiento del mouse
sobre la grilla, y el ruteado de grilla BPR.
Para realizar los cálculos L-Edit usa, como unidades internas, enteros de 30 bits con
signo. La relación entre unidades internas, unidades de localizador y unidades físicas es
definida de la siguiente manera:
Las unidades físicas son mapeadas a unidades internas en SetupDesign—Technology
Las unidades del localizador son mapeadas a unidades internas en SetupDesign—Grid
Realizacion de compuertas
Cargar cnm25
Para abrir el programa L-Edit 9.1 y cargar automáticamente las reglas de diseño
cnm25, se debe hacer doble clic en el ícono cnm25.tdb
481
y aparecerá la siguiente ventana de inicio
donde podemos notar que se han cargado las reglas de diseño
Se puede observar el menú principal (arriba), la barra de herramientas (izquierda y
debajo del menú principal) y el área de edición (centro)
Guardar
Lo primero que se debe hacer es guardar el archivo con un nombre diferente, para lo
cual hacemos clic en File>Save as…
En Nombre cambiamos cnm25.tdb por nombre.tdb, en nuestro caso, escribimos
ejemplo-inversor.tdb. Nótese que no se cambia la extensión tdb.
482
Al hacer clic en Guardar, aparecerá la sgte ventana
donde se puede observar que ya la celda numero cero aparece con el nombre que le dimos.
Paleta de colores
La paleta para las reglas cnm25 es la siguiente
Verde: área activa
Gris: polisilicio 0
Rojo: polisilicio 1
Azul: metal
Puntos Verdes: implantación N
Negro: contacto
483
Pasando el mouse sobre cada color se puede conocer la capa Correspondiente.
Estos colores se pueden cambiar en el Setup.
Realización de un transistor Nmos
El primer paso para la realización del transistor es crear los cortes de contacto, en
todas las tecnologías las dimensiones mínimas de los cortes de contacto son las que
identifican a la tecnología, en nuestro caso 2.5um.
Se hace clic en BOX
y en la paleta de colores hacemos clic en el
icono negro correspondiente a contacto, luego dibujamos un cuadro de 2.5 x 2.5.
Para saber de las dimensiones de los objetos que se están dibujando, en la parte
inferior de la ventana se observa un mensaje que nos indica la capa sobre la que se esta
trabajando y las dimensiones (en micras) del objeto seleccionado (ver sgte figura)
La cruz que aparece en el área de edición indica el punto con coordenadas (0,0)
En esta figura se puede observar que el ancho y el largo del area de contacto dibujada es de 2.5um.
Ahora hacemos clic en el icono de area activa (verde) y dibujamos un rectangulo mas
grande, así:
484
Aquí se ha copiado el area de contacto para que queden iguales. Esto se hace seleccionandolo y luego se presiona Control+C y Control-V, o se va al menú de edicion y se
copia y se pega.
Para mover se hace clic sobre el area de contacto y con el botón central del mouse
presionado, se mueve al lugar que queramos.
Ahora se hace clic en el icono correspondiente a Metal (azul) para hacer el drain y el
source. El diseño va así:
Ahora realizamos el area de Gate, hacemos clic en el icono correspondiente a Polisilicio 1 (rojo)
Esta es la estructura básica de un transistor, pero falta determinar si es tipo P o tipo
N. Se debe tener en cuenta que el sustrato es tipo P y viene determinado así.
Para realizar un transistor tipo N, debemos añadir una implantación N, icono de puntitos verdes. El transistor tipo N quedaría de la sgte forma:
Realización de un transistor Pmos
Para realizar un transistor Pmos se realiza el mismo procedimiento anterior pero sobre un pozo tipo N, el cual se construye con el icono blanco (pozo n) que se encuentra
debajo del icono de contacto. El transistor Pmos queda así:
485
Realización del inversor cmos
Ya tenemos el transistor nmos y el transistor pmos, ahora solo nos falta unir las áreas
de gate y la de drain con source.
El circuito final queda de la sgte manera:
Se recomienda añadir unas zonas extra para optimizar los diseños, en estas zonas se
conectan la alimentación, es decir, Vdd y Vss.
EL diseño optimizado es el sgte:
486
Nomenclatura de los nodos
A continuación debemos colocar nombres a los nodos para poder ubicarlos fácilmente a la hora de realizar la simulación del circuito.
Para esto debemos hacer clic en
y luego hacer clic en la capa que queremos
nombrar, por ejemplo para el nodo de entrada (gate). Aparece la sgte ventana:
En On layer, se selecciona la capa correspondiente, en nuestro caso Polisilicio 1; en Port
name, se coloca el nombre que queremos asignar, para el ejemplo Vin; y en Text size se
coloca el tamaño del texto, en nuestro caso para que se vea colocamos 4.5; clic en Aceptar.
De ésta misma forma le ponemos los nombres a Vdd, Vss y Vout.
487
El circuito queda de la sgte forma:
Detección de errores.
Para detectar errores se hace clic en
, aparece esta ventana:
Damos clic en Aceptar y empieza el proceso de detección de errores. Si no hay errores aparece el sgte cuadro:
488
Clic en OK.
Corrección de errores
Si el diseño presenta errores aparece la sgte ventana
Habilitar el Display DRC Error Navigator y al hacer clic en OK, aparece
Donde aparece una lista detallada de los errores presentados, al haber un error se
presenta un numero diferente de cero entre paréntesis cuadrados. Para identificar el error
se debe dar doble clic en cada error y el programa ubicará dicho error.
Por ejemplo al hacer doble clic en el error 2.3.1 Margen entre area activa p+ y pozo
n aparece lo sgte:
489
Donde se indica que dicho margen es menor al establecido en las reglas de diseño.
Este error se soluciona haciendo el pozo n un poco más grande.
Luego vamos al sgte error que corresponde a la dimensión del área de contacto, hacemos doble clic.
Para solucionar este error debemos aumentar el tamaño del contacto a por lo menos
2.5u x 2.5u.
Luego vamos al sgte error realizando el mismo procedimiento anterior
Para solucionar este error pegamos las pistas, ya que ambas son de metal y según el
diseño deben estar unidas.
Una vez corregido los errores verificamos nuevamente y corremos el DRC hasta que
hayamos corregido todos y cada uno de los errores.
Con éste procedimiento hemos diseñado un inversor en la tecnología cmos utilizando
las reglas de diseño cnm25.
490
El uso de las celdas estandar en L-EDIT
La Celda Standard es bloque de construcción básico para cualquier diseño de circuito
integrado, esta puede ser creada en el mismo layout o llamada desde otro archivo diferente.
A continuación se muestra el ejemplo de construcción de match D, a partir de celdas:
El Latch a nivel de compuertas tiene la siguiente configuración:
En donde el funcionamiento de este es el siguiente cuando Ck es igual a uno la
compuerta de transmisión de la entrada deja pasar el dato y pasa al inversor de arriba
y cuando Ck es igual a cero la compuerta de transmisión de la entrada se abre y la otra
compuerta de transmisión se activa dando como resultado el dato guardado.
A nivel de transistores la compuerta de transmisión es la siguiente:
y el inversor es el siguiente:
491
Como vemos en el latch D estas dos estructuras se repiten varias veces, lo cual dibujarlas cada vez de nuevo en L-edit resulta bastante dispendioso, por tal razón, en L-Edit
se permiten la creación de celdas para el ahorro de tiempo.
El Primer paso es abrir un archivo nuevo (layout) en L-edit, en donde se va a diseñar el latch.
En L-edit se va a File>New
En este archivo es donde se van a pegar todas las celdas creadas.
Para la creación de la primera celda se va a barra a la barra de menú y en el comando
Cell>new
A continuación aparecerá una ventana como la siguiente:
En esta ventana los campos a modificar son los siguientes:
Cellname: Aquí se debe colocar el nombre con el cual se va a identificar las celdas, en nuestro ejemplo puede ser inversor o compuerta, dependiendo de cual se va
a diseñar en esta celda.
492
Autor, organization, information: esto es información adicional que le desee agregar
el diseñador.
Y en el cuadro open new window, cuando esta activada, abre un nueva ventana para
el diseño de la celda.
En esta nueva ventana abierta se diseña la celda que se desea crear, como si fuera
un archivo nuevo tal como fue explicada en el ejemplo anterior del inversor.
El inversor creado en la celda debe ser parecido al siguiente:
Para la creación de la compuerta de transmisión se sigue el mismo procedimiento
anterior, pero estando en la ventana original donde se va a diseñar el latch D, entonces
para cambiar a la ventana del latch se va la barra de menú y se escoge window y en la
parte de abajo se escoge la ventana del latch, como se muestra a continuación:
A partir de la ventana original se hace la creación de una nueva celda.
Nota: no olvidar estar chequeando las reglas de diseño para evitar posibles errores
cuando se hagan llamados de las celdas después en la ventana del latch.
493
El aspecto de la compuerta de transmisión (layout) debe ser como el siguiente:
Se debe tener en cuenta que en la celda de esta compuerta no esta el inversor que
conecta el control con el gate del transistor p, esto no se coloco debido a que se va aprovechar el diseño de la celda del inversor por aparte.
Ahora si se pasa de nuevo a la ventana del latch para hacer el llamado de cada
una de las celdas.
Para el hacer el llamado de la celda del inversor, en la barra de menú se va al comando Cell>instante, como se muestra a continuación:
494
A continuación aparece una nueva ventana como la siguiente:
En file se selecciona el archivo donde fueron creadas las celdas, en nuestro caso, las
celdas fueron creadas en el mismo archivo y por lo tanto este aparece por default, pero
si se desea hacer el llamado de una celda de otro archivo pues allí se selecciona. En el
recuadro de abajo se selecciona la celda que se desea llamary se da ok.
Nota: Una celda no se puede llamar a si misma por lo tanto en el recuadro blanco la
primera celda (el archivo desde donde se hizo el llamado), aparece con una cruz roja.
A continuación esta aparece en la pantalla como una foto y en primera instancia esta
no puede ser modificada, y de ahí en adelante se hace el llamado cuantas veces se requiera de la misma forma que la anterior.
Para nuestro ejemplo se necesitan 5 inversores (contando los de las compuertas de
transmisión) y 2 compuertas de transmisión.
Después de que se hace el llamado de todos las celdas, el aspecto es el siguiente (el
llamado debe ser hecho desde la ventana del latch)
Nota: Para no hacer el llamado todas las veces de las celdas, la imagen de la primera
celda puede ser repetida con las comando de copiar y pegar y se crean las nuevas celdas. Tengan en cuenta cuando se hace el llamado de la segunda celda igual a la anterior,
esta queda encima de la anterior y hay que moverla a otro lugar.
495
Ahora si se procede a unir todas las celdas para formar el latch D, el procedimiento de
unir celdas es igual a crear cada uno de las componentes, es decir, se le pueden agregar
las layers necesarias externas a cada una de las celdas.
Si de casualidad se desea modificar las celdas llamadas en este diseño, se selecciona la celda a modificar. Se va a la barra de menú, luego, Edit>Edit in-place>pushinto.
Si se desea acceder a esta opción desde al barra de herramientas, es por medio del
icono
.
Esta opción lo que hace es deshabilitar la celda como una “foto” y permite modificar
las capas internas, si se hace una modificación a una de las celdas, se ve reflejada en
cada una de las celdas llamadas iguales y las que pudieran ser llamadas después.
496
Nota: Si se modifica la celda original que ha sido llamada de otro archivo, los cambios
no se ven reflejados inmediatamente en las celdas que fueron llamadas. Por lo tanto para
que estos cambios se puedan ver se debe hacer de la siguiente forma:
En la barra de menú se escoge Tools>Workgroup>Examine XrefCells links…, como
se muestra a continuación:
y luego aparece una ventana como la siguiente:
En nuestro ejemplo, no se hace necesario la modificación de las celdas llamadas de
otros archivos por lo tanto no aparece ninguna celda en este cuadro, pero si se hace el
llamado desde otro archivo y se desea actualizar se presiona el botón de update.
El botón unlink se utiliza si se desea desvincular la posible celda seleccionada en el
cuadro blanco de su celda original, es decir, la celda se convierte en un diseño abierto en
el archivo donde fue llamada y queda como si hubiera sido diseñada allí.
El botón redirect se utiliza cuando se desea cambiar la fuente desde donde fue llamada una celda externa.
497
Otras opciones que ofrece el comando Cell de la barra de menú:
Open: permite abrir una celda que no ha sido abierta.
Copy: permite crear una copia de una celda con un nombre diferente en el mismo archivo.
Después de seleccionar copy aparece una ventana como la siguiente:
Allí se debe seleccionar la celda que se va a copiar, y luego aparece una nueva ventana donde se debe poner el nuevo nombre de la celda creada.
498
Rename: permite cambiar el nombre de la celda y la información adicional dada
por el diseñador.
Delete: borra la celda que se escoja en la nueva ventana que aparece.
RevertCell: permite devolver los cambios hechos a las celdas a partir de las siguientes operaciones
File > Save
Tools > Generate Layers
Tools > DRC
Tools > Extract
Draw > Assign GDSII Data Types
Draw > Clear Rulers
Tools > Clear Generate Layers
Tools > Clear Error Layers
Nota: a partir de Undo del comando edit no se regeneran cambios hechos en las celdas.
El navegador de diseño (designnavigator)
Esta opción permite observar las celdas llamadas y creadas en una estructura jerarquizada de acuerdo a los llamados de las celdas
Para abrir esta opción se debe ir al comando view>designnavigator o de la barra de
herramientas con el ícono
.
La estructura de esta ventana es como la siguiente:
Enrutamiento
Este capítulo del tutorial de L-Edit describe cómo utilizar la herramienta de colocación
y enrutamiento de forma automática de celdas estándar (SPR) al igual que el uso de bloques característicos de L-Edit (BPR)
499
Paquete de herramientas spr (standard cell place and route)
El SPR es un paquete de enrutamiento para celdas estándar, que puede generar automáticamente el Layout para un chip. Este consiste en 3 módulos, que se pueden utilizar
de forma individual o conjunta:
Un módulo central de enrutamiento para generar el núcleo de la celda.
Un generador de PADs.
Un módulo que permite conectar los PADs con el núcleo de la celda.
Al ejecutar estos tres módulos, se obtiene un diseño como este:
Las celdas estándar y PADs que utiliza el SPR se encuentran en una librería de celdas
estándar. El Netlist es generado por el formato EDIF o por el formato TPR (Tanner Place
and Route). Entonces, el SPR genera el núcleo, los PADs y el Layout del chip en L-Edit, el
cual se comprueba y posteriormente se extrae. Para verificar los posibles retardos, se puede generar un archivo de capacitancia nodal (CAP) durante el proceso de enrutamiento.
Los pasos de colocación y enrutamiento se automatizan completamente. Se puede
utilizar enrutamiento de dos o de tres capas, incluyendo la opción de la enrutamiento
sobre la celda (OTC). Se pueden enrutar hasta dos señales de I/O (ej., señales del reloj)
por separado para controlar los posibles retardos.
500
Colocación y enrutamiento de bloques (BPR)
El (BPR) es una herramienta automatizada de colocación y enrutamiento de bloques.
Puede ser utilizada para incorporar bloques generados por el usuario, bloques habituales,
celdas estándar, núcleos y PADs SPR-generados en el diseño, y realizar el montaje del
chip. BPR inicializa un diseño mediante un netlist EDIF o TPR para los bloques que se utilizarán, después pone esos bloques en una celda de un nivel superior. Una vez que se inicialice un diseño de BPR, los bloques se pueden poner y enrutar automática o manualmente.
BPR permite que se realice la colocación incremental, donde la posición y la orientación
de bloques puestos serán conservadas cuando usted agrega nuevos bloques a su diseño.
SPR
Para correr el SPR, se necesitan los siguientes archivos:
Un archivo de diseño (.tdb)
Un netlist (.tpr, .edf, .edn, or .edi). Este archive contiene una descripción textual del
diseño esquemático y define las celdas requeridas.
Una librería de celdas estándar, que contiene las celdas y los pads para el diseño.
Importante:
Para la colocación y enrutamiento de un diseño, primero se debe definir la tecnología
apropiada para la librería de celdas estándar. Para esto se debe ir a File > New para copiar
el archivo de tecnología .tdb que se va a utilizar, antes de iniciar el SPR. También se puede
abrir un archivo de diseño que contenga la configuración de la tecnología adecuada.
Desarrollo del proceso SPR
Para enrutar un diseño utilizando L-Edit/SPR, se siguen los siguientes pasos:
Crear una representación esquemática del diseño.
Exportar el esquemático como un netlist. L-Edit soporta la versión 2.00 del formato EDIF.
Dar clic en File > New para crear el archivo de layout. Importar la información del di-
501
seño (tecnología) de la librería de celdas escribiendo el nombre de la librería en el campo
Copy TDB setupfrom file del cuadro de diálogo New File.
Dar click en File >Savepara guardar el diseño inicial con un nombre apropiado.
Escoger Tools > SPR >Setup. Especificar el nombre de lalibrería de celdas estándar
y el archivo netlist. También especificar el nodo y el nombre de puerto de alimentación y
tierra, tal como se usó en el esquemático.
Dar clic en InitializeSetup. Aquí se leerá el netlist y se inicializarán los cuadros de
diálogo de instalación con la información del netlist.
Dar clik en CoreSetup, PadframeSetup, y PadRouteSetup respectivamente, para
especificar los parámetros faltantes para el enrutamiento del núcleo.
EnCoreSetup se tienen los siguientes pantallazos:
General: Se definen la librería de celdas, los puertos de las celdas estándar y los
puertos de salida utilizados en la generación del núcleo:
502
Layers : Define las capas que se usarán para enrutar el núcleo. Se especifican dos
o tres capas. Si se usan tres capas, se puede seleccionar el enrutamiento OTC. También
se definen las capacitancias entre las capas de enrutamiento.
El enrutamiento OTC (sobre la celda) utiliza caminos sobre las celdas, en la capa H2,
entre el borde del canal y el puerto más alejado entre las celdas.
503
Design Rules: Se especifican las reglas de diseño que L-Edit debe seguir para el
enrutamiento, de acuerdo a la tecnología de diseño utilizada.
504
Los parámetros que se deben definir se muestran en las siguientes figuras:
Placement: Contiene opciones para controlar la colocación automática:
IMPORTANTE: Si la optimización de colocación se desactiva, el agrupamiento de
celdas puede ser utilizado para colocar las celdas en una secuencia específica.
505
El cuadro de diálogo que aparece es el siguiente:
Global Signals: Contiene opciones para enrutar las señales globales de entrada.
Este cuadro se puede ignorar si no se activa la opción Global input signalroutingen el
cuadro de diálogo Standard Cell Place and Route.
Power: Contiene opciones para la colocación y el ancho de las barras de alimentación y tierra.
506
I/O Signals:Contiene opciones para la colocación de las señales de entrada/salida.
EnPadframeSetup se dan las opciones para que L-Edit tome las celdas PAD de la
librería estándar de celdas, las coloque en un área rectangular y, si se requiere, las conecte. Aquí se tienen los siguientes pantallazos:
General: Contiene campos para especificar las celdas y los puertos en la librería estándar para que L-Edit utilice para la generación del padframe.
507
Layout: Se especifica el tamaño del padframe y la localización de los PADs, además
de características individuales de cada PAD.
PadrouteSetup: El PAD ROUTER de L-Edit es un enrutador de dos capas. Primero,
enruta el bus de alimentación en una capa y luego las señales en otra capa. Para cada
lado del padframe, hay una correspondencia entre las señales conectadas en el padframe y las señales conectadas en el núcleo.
508
Los parámetros necesarios se introducen en este cuadro de diálogo, el cual consiste
en cinco pantallazos, que son:
General: Se escribe el nombre de la celda chip, que contiene el núcleo y el padframe.
Aquí es donde se hará el enrutamiento.
Layers: Se usa para especificar las capas de las señales I/O, la alimentación y tierra
y los caminos PAD (de ser necesario).
509
Design Rules: Se especifican las reglas de diseño que L-Edit debe usar para realizar
el enrutamiento, de acuerdo a la tecnología de fabricación.
Si los puertos del PAD se encuentran en la capa de enrutamiento PAD, se aplican las
siguientes reglas de diseño:
510
Para señales I/O, todos los puertos del PAD deben estar en la misma capa, pero esta
no debe ser necesariamente la capa de enrutamiento. En este caso, se insertan unos
caminos (PAD VIAS) usando las siguientes reglas:
CoreSignals: Se usa para especificar las señales que entran o salen del núcleo. Este
cuadro se llena automáticamente si el netlist contiene las conexiones PAD.
511
PadframeSignals: Se especifica la lista de señales que entran o salen del padframe.
Este cuadro se llena automáticamente si el netlist contiene las conexiones PAD.
512
Dar click en Tools > SPR > Place and Route.Aparecerá el siguiente cuadro de diálogo:
Seleccionar la opción apropiada Core place and route, Padframegeneration, o Padroute). Dependiendo del diseño de celdas estándar, seleccionar la opción Global input
signalroutingTambién se puede elegir la forma del chip, por ejemplo si se desea una
forma cuadrada, se debe seleccionar Square. Especificar las opciones de salida (Por
ejemplo, nombrar los nodos, etc.).
Dar click en el botón Run. Dependiendo de las opciones seleccionadas, el SPR generará tres nuevas celdas: un núcleo, una celda de caminos y/o un chip (que contiene el
núcleo y los caminos). Si el diseño ya posee estas celdas, el SPR le advertirá antes de
sobrescribir estos archivos.
Cuando el proceso se ha completado, el SPR mostrará un cuadro de diálogo SPR
Complete con la información estática del diseño. (Se puede usar Tools > SPR >Summary en cualquier momento para mostrar los detalles.
Dar clic en OK para mostrar el diseño completo. El siguiente diseño tiene 990 celdas
estándar (3.150 compuertas).
513
Confirmar que las dimensiones del núcleo y/o los caminos concuerdan con la limitación de tamaño impuestas. Si no concuerdan, se debe volver a correr el SPR con una
nueva configuración del núcleo.
Verificar el diseño usando L-Edit /DRC y el L-Edit/Extract.
Salvar el diseño en el formato GDSII.
Generación del núcleo y enrutamiento de PADs
Para los PADs, L-Edit sólo realiza el enrutamiento entre el borde externo del núcleo
y el borde interno del padframe. Entonces, las posiciones y dimensiones del núcleo son
muy importantes, pero su geometría intena no. Por esto, L-Edit determina la posición del
núcleo buscando un puerto de empalme (abutmentport), que define los límites del núcleo.
El programa crea este puerto en la capa definida comoIconlayer. Para definir el Iconlayer
se debe ir a Setup>SpecialLayers. Este proceso debe, además, cumplir con lo siguiente:
El núcleo debe contener los puertos dentro de sus bordes para cada señal que vaya
hacia el padframe.
Los puertos en el núcleo y el padframe deben estar ordenados para que ninguna señal se
cruce sobre otra entre el núcleo y el padframe (excepto las señales de alimentación y tierra).
Sin embargo, las señales que sí se pueden cruzar, solo lo podrán hacer si son de diferentes materiales (por ejemplo, Metal2 para señales I/O y Metal1 para alimentación y tierra).
Las líneas de alimentación y tierra son del mimo material y no se deben cruzar.
La siguiente figura muestra la colocación de los puertos a lo largo del núcleo.
Generación y enrutamiento de PADs
En la creación de un padframe L-editenruta las señales solo hasta el borde interno
del padframe. Entonces, las posiciones y dimensiones del Padframe son muy importantes, pero su geometría intena no. Para indicar la regíon en la cual puede ser puesto el
núcleo, L-edit coloca un puerto rectangular en el borde interno del padframe.
514
Para cada señal que va al núcleo, el padframe debe contener una señal de puerto en
el mismo borde interno. Los puertos para cada señal que va al núcleo se deben colocar
en el padframe, en el mismo orden y en la misma posición que los puertos de la señal
alrededor del núcleo. Estos puertos pueden estar en el nivel superior o pueden estar en
un nivel inferior. Los pads de alimentación y tierra deben estar en diferentes sitios del
padframe. L-edit no puede enrutar directamente entre los pads en el padframe. Solo puede enrutar entre el padframe y el núcleo. En la siguiente figura vemos un padframe con
puertos para las señales, alimentación y tierra.
Un padframe puede ser generado mediante dos métodos:
Generación de un padframe desde un netlist con las celdas PAD (PAD CELLS).
Si el netlist contiene Padcells, se debe usar el botón de InitializeSetup, el cual los
incluye automáticamente, en el cuadro de diálogo SPR PadframeSetup—Layout.
Completar los campos faltantes, como tamaño y nombre del Padframe. En el cuadro
SPR Setup escriba los nombres de las librerias que contiene el correspondiente NETLIST.
Ejecutar el SPR con la opción Padframegenerationactivada.
Generación de un PADFRAME sin NETLIST o PADCELLS
Si el Netlist no contiene Padcells, o no está disponible, se deben poner los nombres
de las celdas manualmente en el cuadro de diálogo SPR PadframeSetup—Layout.
Completar los campos faltantes, como tamaño y nombre del Padframe.
En el cuadro SPR Setup escribir los nombres de las librerias que contienen los Padcells y dejar el correspondiente campo de NETLIST en blanco.
515
Ejecutar el SPR con la opción Padframegenerationactivada.
Enrutamiento de señales globales de entrada (GLOBAL INPUT
SIGNAL) (ejemplo: señal de clock)
Este enrutamiento es utilizado para enrutar dos señales I/O como el clock, independientemente de otras señales. Para este procedimiento, las celdas estándar deben contener dos buses con cuatro puertos de señales globales, colocadas por encima y por debajo de los buses de alimentación y tierra. La siguiente figura muestra una celda estándar
con dos buses de señales globales:
Durante el enrutamiento, L-Edit conecta los puertos que pertenecen las redes de
señales globales (nombradas como A y B en la siguiente figura) a los buses de señales
globales respectivos:
Luego de la colocación, L-Edit adiciona un número de celdas buffer al final de las filas
de celdas estándar, calculadas por el programa. Esto se debe indicar en el cuadro de
diálogo SPR CoreSetup–Global Signal.
Las celdas buffer se usan únicamente en uno o dos buses. Cada celda buffer contiene
un puerto IN que es accesible desde un lado y es colocado en la capa vertical. El puerto
IN de la celda buffer más lejana se conecta con la barra de señales globales. Esta barra
también se coloca en la capa vertical pero dentro de la barra vertical de alimentación.
516
El enrutamiento de PADs conecta las barras de señales globales verticales al puerto
apropiado en el padframe. La asignación de capas para las señales globales es equivalente a la asignación de señales I/O fuera del núcleo. Los PADs de las señales globales
deben ser colocados hacia el lado izquierdo y derecho de las barras.
Diseño de librerías de celdas estándar
Librería de celdas estándar
Las celdas en una librería de celdas estándar deben cumplir con ciertas reglas de tamaño y
posición de puertos. Usualmente, una librería de celdas estándar incluye dos clases de celdas:
Celdas estándar, para enrutar con L-Edit.
Celdas PAD, que son opcionales y son usadas por L-Edit en el enrutamiento de padframe.
517
Celdas estándar
Puertos de empalme:
Cada celda estándar debe tener un puerto especial de empalme (Abutment Port). Las dimensiones y la posición de esta clase de puertos corresponden a los límites de la celda a la cual
pertenece. Este puerto debe tener la misma altura en todas las celdas estándar que se utilicen.
Puertos de alimentación
Los buses de alimentación entran y salen al final de las filas de celdas estándar, se ubican
horizontalmente y se conectan a los puertos de alimentación en cada celda. Estos se deben
colocar en los extremos de la celda estándar. Los nombres de los puertos de alimentación se
especifican en PowerSignaland GroundSignalen el cuadro de diálogo SPR Setup.
Los puertos de alimentación (Vdd o Gnd) deben tener la misma altura y posición relativa al puerto de empalme en cada celda estándar de la librería. El ancho de los puertos
de alimentación debe ser cero.
Puertos de señales
Las demás señales que no son de alimentación y tierra se enrutan por el lado superior o inferior de la celda estándar. Estos puertos debe tener altura cero y un nombre que
obedezca a las celdas estándar primitivas en el Netlist.
518
Hay tres opciones de enrutamiento de cables para seguir características especiales
de un set de celdas estándar:
Puertos “RowCrosser”
Para enrutar cables entre dos canales de enrutamiento (es decir, a través de una fila
de una celda estándar) L-Edit usa unos puertos especificados por el usuario que identifican caminos cruzados en filas de celdas. En una celda estándar, conviene utilizar tantos
puertos “Rowcrosser” como las reglas de diseño y los parámetros del SPR lo permitan.
Esto ayuda a incrementar la eficiencia de área.
519
Celdas estándar especiales
L-Edit requiere tres celdas estándar especiales que deben ser incluídas en el set de librerías. Estas celdas son únicamente para conexión de nodos. Las celdas Tie-to-Powery
Tie-to-Ground se necesitas donde una celda estándar tiene un pin directamente conectado a Vdd o Gnd. La celda RowCrosser contiene únicamente un puerto “RowCrosser”.
Su propósito es permitir la conexión entre dos canales ubicados arriba y debajo de una
fila de celdas.
En la siguiente figura se observan tres configuraciones típicas:
Celdas PAD
Puertos de conexión entre Celdas PAD
La siguiente figura ilustra la conexión entre dos celdas PAD (A y B). En la generación
del padframe, L-Edit puede optimizarlo bajo ciertas condiciones para que PADs adyacentes sean adheridos entre sí como se muestra entre las celdas B y C. Esta figura también
muestra arreglos típicos de los puertos de alimentación y los puertos de señales.
520
Puertos Espejo
Se puede especificar un puerto espejo en el cuadro de diálogo SPR PadframeSetup–General. Cuando L-Edit encuentra una celda con el nombre del puerto espejo especificado, automáticamente altera la orientación de la celda colocándola de manera adyacente, nombrada como puerto espejo.
La siguiente figura ilustra un padframe generado con algunos efectos espejo:
Diseño de celdas para enrutamiento de señales globales
Para el enrutamiento de señales de entrada, las celdas estándar y las celdas buffer
son extendidas por dos buses de señales globales, que se sitúan arriba y debajo de los
buses de alimentación en la capa horizontal. Cada bus contiene dos puertos (nombrados
como GS1 y GS2 en la siguiente figura). Estos nombres se definen durante el diseño de
la celda, y forman parte de la definición de la celda en la librería de celdas estándar.
Colocación y enrutamiento de bloques
L-Edit cuenta con la herramienta BPR (Block Placement and Routing), que automáticamente coloca y enruta un diseño usando un Netlist de formato TPR o EDIF, y bloques
esquemáticos como entrada.
521
BPR inicializa un diseño extrayendo del Netlist los bloques y las conexiones a utilizar.
Luego compara el Netlist con los bloques en el layout y coloca bloques referenciados en
el diseño en una celda de alto nivel.
La conectividad se muestra como una red de conexiones pin a pin. Cuando el diseño es
inicializado, se pueden colocar bloques automática o manualmente de acuerdo a la importancia de minimizar la longitud total de enrutamiento o el área total cubierta por los bloques.
Cualquier diseño BPR debe tener una celda definida como top-level BPR cell. Esta
es la celda de más alto nivel de jerarquía dentro del archivo, la cual contiene todos los
bloques. Solo puede haber una de estas celdas por archivo.
Proceso de diseño BPR
El proceso L-Edit/BPR consiste en cinco pasos y uno adicional de análisis de tiempos,
análisis integral de señales y pasos de verificación del layout.
DesignPreparation. Este paso debe ser realizado antes de inicializar el BPR. Durante la preparación del diseño, se crean y/o copian todos los bloques que deben ser
enrutados durante el proceso BPR.
Initialization. Durante este proceso se especifica el archivo Netlist que L-Edit leerá,
cual celda debe ser usada como “top-level BPR cell”, los nombres asociados con algún
tipo especial de señal, y si se va a utilizar una”top-level I/O cell”. La especificación de los
parámetros de inicialización se hace en el cuadro de diálogo Tools > BPR >Initialization
522
Placement. Durante esta instancia, los bloques son posicionados manual y/o automáticamente en el layout. Se puede hacer un análisis de propiedades eléctricas y físicas
del diseño. Los parámetros de colocación automática se especifican en el cuadro de diálogo Tools > BPR >AutomaticPlacement.
Routing. El enrutamiento es la creación y arreglo espacial de interconexiones (cables y
vías) entre los bloques, y opcionalmente, PADs I/O. Este proceso se puede llevar a cabo manual o automáticamente. Los parámetros para el enrutamiento se especifican en los cuadros
de diálogo Tools > BPR >Setup—ManualRouter y Tools > BPR >Setup—Autorouter.
Timing Analysis and Signal Integrity Analysis. L-Edit provee herramientas de análisis eléctrico para cualquier paso del proceso BPR que simula el comportamiento de la
señal de una o varias redes. Mediante estos análisis se puede evaluar el impacto de la
colocación escogida, la topología de interconexión y algunos otros parámetros del diseño.
Layout Verification. Se realiza mediante el “Design Rule Checker (DRC)”
Preparación del diseño
Para inicializar un diseño para BPR, se debe:
Definir una tecnología apropiada. Si se inicia L-Edit sin un archivo de diseño, se debe
ir a File > New para copiar la configuración TDB.
Crear o copiar en el archivo de diseño (.tdb) cada uno de los bloques y celdas referenciadas en el netlist usado para inicializar el diseño.
Crear un netlist que sera usado durante la inicialización. Este netlist contiene una
descripción de los esquemáticos e identifica los bloques y otras celdas requeridas.
Definición de Bloques
Un bloque es una clase de celda que está eléctricamente conectada debido a que
está referenciada en el netlist. Cualquier celda que pueda ser referenciada en otras celdas y tenga puertos puede ser usada como un bloque en BPR.
523
Inicialización
Para inicializar un diseño BPR se debe abrir un archivo de diseño, abrir una celda y
seleccionar Tools > BPR >Initialization. Se abre el siguiente cuadro de diálogo:
Si se da clic en Initialize , L-Edit confirmará que todas las celdas y puertos han sido
mapeadas y, si fuera necesario, avisará de errores antes de inicializar el diseño.
Si se da clic en Setup, L-Edit abrirá el cuadro de diálogo BPR Setup.
Tabla de Mapeo
Mediante esta tabla se pueden mapear los nombres de las celdas y los pines en un
netlist en el archivo de diseño.
524
Comprobación del Netlist
Cuando se carga un Netlist, cada parte en el diseño es comparada con el netlist para verificar:
Que los nombres de las partes concuerden con los nombres en el netlist.
Que los nombres de los puertos de enrutamiento concuerden con los nombres de los
pines de los bloques en el netlist.
Colocación (PLACEMENT)
Este proceso se puede realizar manual o automáticamente. Se crean unas guías de
enrutamiento (Routing guides) que se actualizan cada vez que se cambia la orientación
o la posición de un bloque.
Routing guides
Colocación automática
La herramienta “BPR automaticplacement” utiliza dos propiedades para colocar los
bloques de acuerdo a la importancia que se le asigne a cada una:
Areautilization controla el espaciamiento de los bloques. Una alta utilización de área
se logra cuando los bloques tienen muy poca distancia entre ellos.
Connectivityweight factor controla la importancia de minimizar la longitud de enrutamiento o el área desperdiciada debido a diferentes tamaños de bloques.
Estas propiedades se especifican en el siguiente cuadro de diálogo (Tools > BPR
>AutomaticPlacement):
525
Ejemplo de un alto porcentaje de utilización de área:
Enrutamiento (ROUTING)
Este proceso se puede realizar manual o automáticamente. Se realiza dando clic en
Tools > BPR >Setup, donde hay tres pantallazos:
General: Se especifican las opciones globales y el tipo de grid que se usará en el
enrutamiento manual.
526
Autorouter: Se genera un enrutamiento ortogonal de cables y vías entre los bloques
en el netlist y los puertos.
Luego del enrutamiento automático, BPR muestra una lista de redes (nets) que fueron y bloqueados y que no fueron enrutados:
527
Manual Router
Para utilizar el enrutador manual, debemos seleccionar Tools > BPR >Setup—Manual Router, con lo cual aparecerá la siguiente ventana de diálogo:
A continuación aparecerá un listado con las características del enrutamiento propio de
cada capa. Debemos completar los campos antes de proceder al enrutamiento manual.
Una vez en el diseño podemos encontrarnos con el problema de que algunos cables
de enrutamiento, no se encuentran en una forrmaótima, o que simplemente nos sobran.
Para manejar este problema podemos apoyarnos en las instrucciones, Cuty Delete. Un
ejemplo de cómo borrar estos segmentos indeseados se muestra a continuación:
528
Uso del navegador de NETLIST:
El navegador de Netlist es una poderosa herramienta que nos permite ver la información de las redes (número de pines, conexiones sin enrutar, tamaño total, retardo
máximo, etc.), cambiar y ajustar los valores de las redes, ver y editar señales de redes y
enrutar la topología de cada red entre otros. Para recurrir a este, debemos seleccionar
Tools > BPR >NetlistNavigator, con lo cual aparecerá la siguiente pantalla:
En esta pantalla podemos apreciar el estado de nuestro diseño, desde el punto de vista
de las redes que lo componen. Algunos de los campos más significativos presentes son:
Number of blocks: Número de bloques del diseño.
Routingcompletion: Porcentaje de redes que han sido totalmente enrutadas.
Total number of nets:Número total de redes.
Total number of unrouted nets:Redes sin enrutar.
Routing Status: Nos indica si el diseño, está enrutado, parcialmente enrutado o sin enrutar.
529
SignalType: Nos indica el tipo de señal que es el Netlist.
Si ahora seleccionamos Details podemos ver con detalle la información propia de las
redes. Algunos campos que podemos esperar ver son:
Pin nameNombre del Puerto asociado al Pin.
CellnameNombre de la celda a la que el pin pertenece. Campo de solo lectura.
ElectricalmodelSe usa para especificar el nombre del modelo del subcircuito externo
en el Netlist de Pspice que define el comportamiento del módulo. .
Ejemplo de uso del BPR
En esta sección se muestran algunos pasos claves en eldiseño BPR, usando un simple ejemplo de diseño. Se trabajará con tres archivos: Adder1bit.tdb, Adder1Bit_placed.tdb, Adder1Bit_routed.tdb. Estos archivos se encuentran en samples\bpr\adder1bit (Subdirectorio de L-edit).
ABRIENDO L-EDIT Y ABRIENDO UN ARCHIVO:
Lo primero que debemos hacer es abrir L-Edit con un archivo en limpio (Layout1). A
continuación use File > New para abrir el diálogo de nuevo archivo, aquí seleccione Layouten el campo File type. Haga clic en Browse para añadir el archivo Adder1bit.tdb.
ubicado en samples\bpr\adder1bit
Luego hacemos clic en OK para cerrar esta ventana. Ahora salvamos el archivo en el
subdirectorio BPR\Adder1bit con el nombre de samples\bpr\adder1bit.
530
Ahora ya estamos listos para empezar el tutorial.
Inicialización
Para inicializar el diseño BPR, todas las celdas que se usen en el Netlist deben existir
en el archive de Layaout. También se debe especificar el Netlist que L-Edit leerá por razones de conectividad.
Inicialización del TPR Netlist:
Cuando BPR se inicializa con un TPR netlist, las celdas I/O pueden estar explícitamente en el archivo de netlist, o no. Si no se encuentran, BPR automáticamente hará las
conexiones correspondientes.
Inicialización EDIF Netlist:
Cuando el BPR se inicializa con un EDIF Netlist, no es necesario definir una celda I/O
si los puertos externos están definidos en el Netlist para el nivel BPR. Este es el caso del
ejemplo que mostraremos.
A continuación mostraremos los pasos básicos para hacer un diseño BPR:
Copiando celdas usando el navegador de diseño:
Con la celda CELL0 activa, haga clic en el Navegador de diseño
edit nos mostrará las Celdas que se encuentran en éste archivo.
, con lo cual L-
En el caso del ejemplo, las celdas disponibles son Adder_I0, Nand2, etc. Haga clic en
la celda Adder_IO y lleve una copia a nuestro archivo en blanco of tutorial.tdb.
531
Repita el paso anterior para copiar las celdas Nand2, ViaM1M2, y XOr2 en nuestro
archivo en blanco. Ahora con el navegador de diseño activo pulse ctrl.+S para guardar el
archivo. Ahora haga clic derecho en la Celda CELL0, y seleccione Rename y a continuación teclee toplevel.
A continuación cerramos el navegador de diseño y hacemos doble clic en la celda top-level. Luego usamos Tools > BPR >Initialization para abrir el cuadro de inicialización. En este
cuadro entramos el Netlist, y otros parámetros que nos serán muy útiles a la hora de diseñar.
Para completar este cuadro de inicialización debemos llenar los campos que se muestran a continuación:
Debemos seleccionar la opción Top levelonly de las opciones de Netlist, agregar Signal como tipo de señal por defecto, seleccionar Adder_IO de las celdas en Top level I/O,
digitar un pitch de enrutado de 8000 y seleccionar Routing Guides de las capas en la lista
Routing guide layer. Ya que tenemos lo necesario para el diseño, damos clic enInitialize
532
Una vez hecho esto el diseño debe verse así:
Ya que tenemos el diseño nos enfocaremos en el Enrutamiento Automático.
Enrutamiento automático:
El autoenrutador esta en la capacidad de enrutar una serie de nodos y redes que se
encuentran en el diseño permitiendo la interconexión de los diferentes bloques funcionales de nuestro diseño. A continuación se mostrará como.
Elija File > Open para abrir el archivo Adder1Bit_placed.tdb que se encuentra en el
subdirectorio \samples\bpr\adder1bit. Aparecerá la sguiente ventana.
533
Luego damos clic en Tools > BPR >Setup—General para confirmar que la selección
del tipo de ruteo es Connection.
Luego damos clic en Autorouter, con lo cual obtendremos la siguiente pantalla:
En la anterior pantalla seleccionamos las características propias de cada capa, con lo
cual el enrutador se guiará a la hora de asignar los caminos. Por ejemplo podemos poner
el METAL1 en capas horizontales y el METAL 2 en capas verticales. Una vez definidas
las características de las capas, procedemos a correr el programa de autoenrutamiento.
Use Tools > BPR > Route All to automatically route all nets in the design.
“ BPR will display the following Automatic Routing Report when the router has completed its attempt.
Note that seven nets were completely routed, and one net was not routed at all.
Para esto seleccionamos Tools > BPR >RouteAll, para que así se enluten automáticamente todas las redes en el diseño. El BPR mostrará de forma automática un reporte
cuando se finalice la tarea.
534
Una vez enrutado, nuestro diseño debe verse más o menos así:
Simulacion - extraccion a SPICE
Una vez el diseño de L-Edit ha sido completado, podemos crear un archivo que nos
permita la simulación del componente en otro programa, como en nuestro caso para PSPICE. Hay dos componentes necesarios que nos permite el uso de las herramientas de
extracción y chequeo de reglas: el paquete que caracteriza las operaciones y un archivo
de tecnología. El archivo de tecnología nos define las características de los materiales y
el diseño de reglas para los materiales usados.
Es muy simple crear un archivo de simulación del diseño a nivel de mascaras que
podemos crear en L-Edit para probar en SPICE. Una vez el diseño a sido chequeado
cumpliendo las reglas de diseño y es declarado completo, se debe ir al menú Tools para
seleccionar el comando Extract.
535
En esta ventana en la hoja general se pide el archivo de definición de extracciones
(.ext) en el que esta especificado las conexiones entre las diferentes capas del layout y
demás dispositivos disponibles según la tecnología utilizada, además se pide el nombre
de destino y su correspondiente ubicación, al cual se le creará con la extensión .spc para
realizar su simulación en PSPICE. Además se debe seleccionar Labelalldevices, para
que se edite las etiquetas de los distintos dispositivos.
El archivo para nuestro caso CNM25.ext contiene la siguiente información:
#
File: CNM25.ext
#
For: Extractor definition file
#
CNM (IMB-CSIC) June 1996
#
connect(Polisilicio 1,Metal,Contacto)
connect(Polisilicio 0,Metal,Contacto)
connect(EXT-Difusion n+,Metal,Contacto)
connect(EXT-Difusion p+,Metal,Contacto)
# Contacto de substrato
connect(EXT-Substrato,Metal,EXT-Contacto de subs.)
# Contacto de pozo
connect(Pozo n,Metal,EXT-Contacto de pozo)
# Transistor NMOS
device = MOSFET(
RLAYER = EXT-Transistor n;
Drain = EXT-Difusionn+,WIDTH;
Gate = Polisilicio 1;
Source = EXT-Difusionn+,WIDTH;
Bulk = EXT-Substrato;
MODEL = NMOS;
)
# Transistor PMOS
device = MOSFET(
RLAYER = EXT-Transistor p;
Drain = EXT-Difusion p+, WIDTH;
Gate = Polisilicio 1;
Source = EXT-Difusion p+, WIDTH;
BULK = Pozo n;
MODEL = PMOS;
)
# Capacidad
device = CAP(
RLAYER = EXT-Capacidad poly;
Positive = Polisilicio 1;
Negative = Polisilicio 0;
MODEL =;
)
536
En esta misma ventana y en la hoja output podemos elegir si la extracción se realiza
usando los nombres de los nodos y puertos o si se efectúa con la numeración que el programa define automáticamente según la bandera Writenodenames.
Luego realizar las anteriores operaciones, seleccionamos RUN, y después de varios
segundos la extracción estará culminada, en caso que se presenten errores el programa
lo informará. Si las consideraciones de capacitancias y resistencias no están bien definidas, estas pueden generar warnings y que se corregirán cuando se crea el archivo completo de simulación .CIR en el que se deben hacer las siguientes correcciones:
El primer paso es abrir el archivo.SPC que fue generado en un programa editor de
texto como Notepad y lo guardamos con extensión .CIR. Las primeras líneas son acerca
de la información correspondiente a la procedencia del lenguaje de diseño, posteriormente se encuentran los errores que se presentaron que pueden ser debido a nodos flotantes
o redefinidos o a falta de información de las capacitancias y resistencias que presentan
los diferentes materiales que usamos en el diseño, si poseemos esta información y queremos resultados mas exactos debemos insertarla en estas líneas.
Posteriormente encontraremos la asignación numérica de los que establecimos con
su respectiva ubicación en el layout, a continuación encontramos la asignación de transistores en su correcto orden para la conexión de sus nodos: draingatesourcebulk.
537
Finalmente encontramos comentarios relacionados con la cantidad de nodos y elementos que comprende nuestro circuito, y para la ultima línea la instrucción .END que
cierra el código. A continuación se muestra la extracción que presenta un circuito inversor
con asignación de nombres a sus nodos:
* Circuit Extracted by Tanner Research’s L-Edit Version 9.10 / Extract Version 9.10 ;
* TDB File: C:\Documents and Settings\yo\Mis documentos\\Tecnicas de integracion\
inv_mio.tdb
* Cell: Cell0
Version 1.06
* Extract Definition File: Ledit\cnm25\CNM25.EXT
* Extract Date and Time: 12/06/2004 - 09:27
* Warning: Layers with Unassigned FRINGE Capacitance.
* <EXT-Capacidad poly>
* Warning: Layers with Zero Resistance.
* <EXT-Capacidad poly>
* NODE NAME ALIASES
*
2 = vcc (-8.75,40.75)
*
4 = OUT (9.25,20.5)
*
5 = VSS (-7.75,0.75)
*
6 = IN (1,21.25)
M1 OUT IN vcc 3 PMOS L=2u W=10u
* M1 DRAIN GATE SOURCE BULK (0 29 2 39)
M2 OUT IN VSS 1 NMOS L=2u W=10u
* M2 DRAIN GATE SOURCE BULK (0 4.75 2 14.75)
* Total Nodes: 6
* Total Elements: 2
* Total Number of Shorted Elements not written to the SPICE file: 0
* ExtractElapsed Time: 0 seconds
.END
Las modificaciones que se deben hacer son las siguientes
Debe ser insertados las declaraciones de los modelos del fabricante que caracterizan
a los transistores .NMOS y .PMOS, PSIPCE maneja tres modelos de simulación llamados
slow, typ y fast la diferencia entre estos radica en la velocidad del transistor, nosotros usaremos los que presentan tiempos de respuesta promedio (typ.md). y mas específicamente la simulación de nivel 3 la cual es la más preciso de las tres disponibles, este archivo
lo podemos encontrar como typ3.md.
538
.model PMOS PMOS LEVEL = 2
+ TOX = 380E-10 VTO = -1.139 NSUB = 1.355E16 UO = 212.7
+ UCRIT = 1E4
UEXP = .1159 NFS = 662.4E9 WD = .4268E-6
+ DELTA = 1.824 RS = 134.9
LD = .8101E-6 XJ = 2.783E-9
+ VMAX = 120.3E3 NEFF = .06665 CJ = 3.816E-4 MJ = .3499
+ CJSW = 7.384E-10 MJSW = .3916 PB = .56
.model NMOS NMOS LEVEL = 2
+ TOX = 380E-10 VTO = .9418 NSUB = 2.639E16 UO = 648.2
+ UCRIT = 1E4
UEXP = .06857 NFS = 710.8E9 WD = .4086E-6
+ DELTA = 2.2
RS = 93.77
LD = .9132E-6 XJ = .0824E-6
+ VMAX = 59.62E3 NEFF = 1.479 CJ = 3.495E-4 MJ = .3950
+ CJSW = 5.952E-10 MJSW = .2941 PB = .65
Debe ser insertadas las fuentes de alimentación, Spice permite la declaración de
fuentes independientes y dependientes de voltaje y de corriente, la fuente de voltaje
(usualmente de 5V constantes) para la alimentación de los transistores, además nos
debemos asegurar que el punto a tierra del circuito sea denotado por el numero 0 ya que
es uno de los requerimientos de PSICE, para lo cual es necesario insertar una fuente de
voltaje de 0V entre nuestra tierra (designada por VSS) y 0. En el caso que se presente
más de una fuente de cada tipo, estas deben ir numeradas:
Ejemplo: (Vnombre# n+
n-
Valor DC)
VDD1 Vdd 0 DC 5
VDD2 Vss 0 DC 0
Por ultimo para poder realizar los análisis de la respuesta de nuestro circuito debemos insertar las señales de alimentación para las entradas que por lo general se usan
fuentes de pulsos y sus características son las siguientes:
Ejemplo: Vnombre#
n+
n-
0
PULSE(0 5 0 1n 1n 8n 20n)
VIN
In
PULSE(V1 V2 tdtrtf PW T)
Aclaración: los nombres de estas fuentes deben comenzar por V y los puntos de su
conexión deben ser los nombres que dispusimos para cada nodo.
Por ultimo se deben incluir los comandos que hace el llamado a la ventana grafica
de simulación, .PROBE y .TRAN indicando la duración de la simulación, estos comandos
deben ir inmediatamente antes del comando .END.
539
Por ultimo le damos guardar (Nombre.CIR) y estamos listos para usar la herramienta grafica de simulación de PSPICE. El archivo .CIR manipulado para un inversor es el siguiente:
* Circuit Extracted by Tanner Research’s L-Edit Version 9.10 / Extract Version 9.10 ;
* TDB File: C:\Documents and Settings\yo\Mis documentos\Tecnicas de integracion\
inv_mio.tdb
* Cell: Cell0
Version 1.05
* Extract Definition File: Ledit\cnm25\CNM25.EXT
* Extract Date and Time: 12/05/2004 - 18:49
.model PMOS PMOS LEVEL = 2
+ TOX = 380E-10 VTO = -1.139 NSUB = 1.355E16 UO = 212.7
+ UCRIT = 1E4
UEXP = .1159 NFS = 662.4E9 WD = .4268E-6
+ DELTA = 1.824 RS = 134.9
LD = .8101E-6 XJ = 2.783E-9
+ VMAX = 120.3E3 NEFF = .06665 CJ = 3.816E-4 MJ = .3499
+ CJSW = 7.384E-10 MJSW = .3916 PB = .56
.model NMOS NMOS LEVEL = 2
+ TOX = 380E-10 VTO = .9418 NSUB = 2.639E16 UO = 648.2
+ UCRIT = 1E4
UEXP = .06857 NFS = 710.8E9 WD = .4086E-6
+ DELTA = 2.2
RS = 93.77
LD = .9132E-6 XJ = .0824E-6
+ VMAX = 59.62E3 NEFF = 1.479 CJ = 3.495E-4 MJ = .3950
+ CJSW = 5.952E-10 MJSW = .2941 PB = .65
VDD1 Vdd 0 DC 5
VIN In 0 PULSE(0 5 0 1n 1n 8n 20n)
VDD2 Vss 0 dc 0
M1 out IN vdd VDD PMOS L=2u W=10u
* M1 DRAIN GATE SOURCE BULK (0 29 2 39)
*C3 out 0 8.352FF
*C4 vdd 0 1.392FF
M2 OUT IN VSS VSS NMOS L=2u W=10u
* M2 DRAIN GATE SOURCE BULK (0 4.75 2 14.75)
*.op
.tran 0.1n 100n
.probe
.END
540
Para la simulación se debe abrir la herramienta PSPICE A/D, en el menú File ir a
Open y buscar en su correspondiente carpeta el archivo que modificamos .CIR y abrirlo.
En este punto hacemos correr la simulación y así obtenemos los resultados, la simulación además de mostrar el resultado, generará un archivo de prueba con el resultado y
lo guardara en la misma ubicación de nuestro archivo .CIR.
Como ejemplo de refuerzo a continuación presentamos la simulación de una
compuerta NAND:
Después de haber creado la compuerta NAND en L-edit y de haber colocado tanto los
nombres de entrada, salida, vcc y gnd. Tenemos el siguiente gráfico de layout.
541
Como nota importante recordamos que para la creación de las celdas estándar, estas se
deben empezar a realizar teniendo en cuenta el origen de la ventana del layout, el cual esta
representado por la cruz que se muestra en la parte inferior izquierda del anterior grafico.
1. Extraemos el archivo nand.spc, de la siguiente manera.
2. Cargamos el archivo CNM25.EXT, en Extract definición file; en SPICE extract output
file, se encuentra el nombre del archivo que vamos a obtener con extensión spc. Señalamos Writenodenames, para que la extracción del archivo tenga en cuenta el nombre de
los nodos y hacemos click en Run.
3. Abrimos el archivo nand.spc
* Circuit Extracted by Tanner Research’s L-Edit Version 9.10 / Extract Version 9.10 ;
* TDB File: C:\Ing. Electrónica\tecnicas de integracion\proyecto final\celdas estandar\
cnm25\nand.tdb
* Cell: nand
Version 1.04
* Extract Definition File: CNM25.EXT
* Extract Date and Time: 12/05/2004 - 22:49
* Warning: Layers with Unassigned FRINGE Capacitance.
* <EXT-Capacidad poly>
* Warning: Layers with Zero Resistance.
* <EXT-Capacidad poly>
* NODE NAME ALIASES
*
2 = Vcc (9,62.25)
*
4 = GND (44,13.25)
*
6 = Sal (7.25,31.75)
M5 1 5 6 3 PMOS L=2.5u W=23.75u
* M5 DRAIN GATE SOURCE BULK (32.25 35 34.75 58.75)
542
M3 6 9 2 3 PMOS L=2.5u W=23.75u
* M3 DRAIN GATE SOURCE BULK (15 35 17.5 58.75)
M2 4 5 8 7 NMOS L=2.5u W=9.5u
* M2 DRAIN GATE SOURCE BULK (32.25 17.25 34.75 26.75)
M1 8 9 6 7 NMOS L=2.5u W=9.5u
* M1 DRAIN GATE SOURCE BULK (15 17.25 17.5 26.75)
* Total Nodes: 9
* Total Elements: 4
* Total Number of Shorted Elements not written to the SPICE file: 0
* ExtractElapsed Time: 0 seconds
.END
4. Al archivo nand.spc incluimos las líneas que especifican los datos de los transistores Nmos y Pmos.
5. Incluimos las señales de entrada y los voltajes de la fuente de alimentación.
6. Para poder realizar la simulación agregamos estas líneas al final.
.TRAN
1ns
1000ns
.PROBE
en la línea .TRAN 1ns
de simulación.
1000 ns, los 1000 ns significa el tiempo que queremos
El archivo que obtenemos en definitiva es el siguiente:
* Circuit Extracted by Tanner Research’s L-Edit Version 9.10 / Extract Version 9.10 ;
* TDB File: C:\Documents and Settings\yo\Mis documentos\Tecnicas de integracion\
andres\celdas estandar\cnm25\nand.tdb
* Cell: nand
Version 1.34
* Extract Definition File: CNM25.EXT
* Extract Date and Time: 12/06/2004 - 10:00
.model PMOS PMOS LEVEL = 2
+ TOX = 380E-10 VTO = -1.139 NSUB = 1.355E16 UO = 212.7
+ UCRIT = 1E4
UEXP = .1159 NFS = 662.4E9 WD = .4268E-6
+ DELTA = 1.824 RS = 134.9
LD = .8101E-6 XJ = 2.783E-9
+ VMAX = 120.3E3 NEFF = .06665 CJ = 3.816E-4 MJ = .3499
+ CJSW = 7.384E-10 MJSW = .3916 PB = .56
.model NMOS NMOS LEVEL = 2
+ TOX = 380E-10 VTO = .9418 NSUB = 2.639E16 UO = 648.2
+ UCRIT = 1E4
UEXP = .06857 NFS = 710.8E9 WD = .4086E-6
+ DELTA = 2.2
RS = 93.77
LD = .9132E-6 XJ = .0824E-6
543
+ VMAX = 59.62E3 NEFF = 1.479 CJ = 3.495E-4 MJ = .3950
+ CJSW = 5.952E-10 MJSW = .2941 PB = .65
* NODE NAME ALIASES
*
2 = Sal (13.75,34.25)
*
3 = Vcc (12.75,77.75)
*
4 = In2 (47,70)
*
5 = GND (56.25,8.5)
*
8 = In1 (22.25,70.5)
M1 Vcc In2 Sal Vcc PMOS L=2.5u W=27u
* M1 DRAIN GATE SOURCE BULK (45.5 39.5 48 66.5)
M2 Sal In1 VccVcc PMOS L=2.5u W=27u
* M2 DRAIN GATE SOURCE BULK (21 39.5 23.5 66.5)
M3 GND In2 7 GND NMOS L=2.5u W=11.75u
* M3 DRAIN GATE SOURCE BULK (45.5 15 48 26.75)
M4 SAL In1 7 7 NMOS L=2.5u W=11.75u
* M4 DRAIN GATE SOURCE BULK (21 15 23.5 26.75)
* Total Nodes: 8
* Total Elements: 4
* Total Number of Shorted Elements not written to the SPICE file: 0
* Extract Elapsed Time: 0 seconds
Vcc1
Vcc2
VIn2
VIn1
vcc
gnd
in1
in2
.TRAN 1ns
.PROBE
.END
0
0
0
0
5
0
PULSE(0 5 0 1ns 1ns 49ns 100ns)
PULSE(0 5 0 1ns 1ns 99ns 200ns)
500ns
7. Guardamos este archivo
8. Nos dirigimos a PSPICE A/D y abrimos el archivo NAND.CIR
9. Corremos la simulación y le introducimos las señales de entrada y salida a analizar
544
10. Adicionalmente podemos observar el archivo generado
**** 12/06/04 12:44:22 ********* PSpice 9.1 (Mar 1999) ******** ID# 0 ********
* Circuit Extracted by Tanner Research’s L-Edit Version 9.10 / Extract Version 9.10 ;
**** CIRCUIT DESCRIPTION
* TDB File: C:\Documents and Settings\yo\Mis documentos\Tecnicas de integracion\
celdas estandar\cnm25\nand
* Cell: nand Version 1.34
* Extract Definition File: CNM25.EXT
* Extract Date and Time: 12/06/2004 - 10:00
.model PMOS PMOS LEVEL = 2
+ TOX = 380E-10 VTO = -1.139 NSUB = 1.355E16 UO = 212.7
+ UCRIT = 1E4
UEXP = .1159 NFS = 662.4E9 WD = .4268E-6
+ DELTA = 1.824 RS = 134.9
LD = .8101E-6 XJ = 2.783E-9
+ VMAX = 120.3E3 NEFF = .06665 CJ = 3.816E-4 MJ = .3499
+ CJSW = 7.384E-10 MJSW = .3916 PB = .56
.model NMOS NMOS LEVEL = 2
+ TOX = 380E-10 VTO = .9418 NSUB = 2.639E16 UO = 648.2
+ UCRIT = 1E4
UEXP = .06857 NFS = 710.8E9 WD = .4086E-6
+ DELTA = 2.2
RS = 93.77
LD = .9132E-6 XJ = .0824E-6
+ VMAX = 59.62E3 NEFF = 1.479 CJ = 3.495E-4 MJ = .3950
+ CJSW = 5.952E-10 MJSW = .2941 PB = .65
* NODE NAME ALIASES
*
2 = Sal (13.75,34.25)
*
3 = Vcc (12.75,77.75)
545
*
*
*
4 = In2 (47,70)
5 = GND (56.25,8.5)
8 = In1 (22.25,70.5)
M1 Vcc In2 Sal Vcc PMOS L=2.5u W=27u
* M1 DRAIN GATE SOURCE BULK (45.5 39.5 48 66.5)
M2 Sal In1 VccVcc PMOS L=2.5u W=27u
* M2 DRAIN GATE SOURCE BULK (21 39.5 23.5 66.5)
M3 GND In2 7 GND NMOS L=2.5u W=11.75u
* M3 DRAIN GATE SOURCE BULK (45.5 15 48 26.75)
M4 SAL In1 7 7 NMOS L=2.5u W=11.75u
* M4 DRAIN GATE SOURCE BULK (21 15 23.5 26.75)
* Total Nodes: 8
* Total Elements: 4
* Total Number of Shorted Elements not written to the SPICE file: 0
* ExtractElapsed Time: 0 seconds
*Fuente de Alimentacin de 10 V entre el nodo VCC y el nodo 0
Vcc1 vcc 0
5
*Fuente de Alimentacin de 0V entre el nodo GND y el nodo 0
Vcc2 gnd 0
0
*Fuente que genera una seal cuadrada de periodo 200ns.
VIn2 in1 0
PULSE(0 5 0 1ns 1ns 49ns 100ns)
*Fuente que genera una seal cuadrada de periodo 200ns.
VIn1 in2 0
PULSE(0 5 0 1ns 1ns 99ns 200ns)
.TRAN 1ns
.PROBE
.END
500ns
**** 12/06/04 12:44:22 ********* PSpice 9.1 (Mar 1999) ******** ID# 0 ********
* Circuit Extracted by Tanner Research’s L-Edit Version 9.10 / Extract Version 9.10 ;
**** MOSFET MODEL PARAMETERS
*************************************************************************
PMOS
NMOS
PMOS
NMOS
LEVEL 2
2
L 100.000000E-06 100.000000E-06
W 100.000000E-06 100.000000E-06
LD 810.100000E-09 913.200000E-09
WD 426.800000E-09 408.600000E-09
VTO -1.139
.9418
KP 19.328520E-06 58.903370E-06
GAMMA .738038
1.02998
546
PHI .711149
.745631
LAMBDA 0
0
RS 134.9
93.77
IS 10.000000E-15 10.000000E-15
JS 0
0
PB .56
.65
PBSW .56
.65
CJ 381.600000E-06 349.500000E-06
CJSW 738.400000E-12 595.200000E-12
MJ .3499
.395
MJSW .3916
.2941
CGSO 0
0
CGDO 0
0
CGBO 0
0
NSUB 13.550000E+15 26.390000E+15
NFS 662.400000E+09 710.800000E+09
TOX 38.000000E-09 38.000000E-09
XJ 2.783000E-09 82.400000E-09
UO 212.7
648.2
UCRIT 10.000000E+03 10.000000E+03
UEXP .1159
.06857
VMAX 120.300000E+03 59.620000E+03
NEFF .06665
1.479
DELTA 1.824
2.2
DIOMOD 1
1
VFB 0
0
LETA 0
0
WETA 0
0
U0 0
0
TEMP 0
0
VDD 0
0
XPART 0
0
**** 12/06/04 12:44:22 ********* PSpice 9.1 (Mar 1999) ******** ID# 0 ********
* Circuit Extracted by Tanner Research’s L-Edit Version 9.10 / Extract Version 9.10 ;
**** INITIAL TRANSIENT SOLUTION
TEMPERATURE = 27.000 DEG C
*************************************************************************
NODE VOLTAGE
(
7)
( Sal)
NODE VOLTAGE
.1955 ( GND)
0.0000 ( In1)
5.0000 ( Vcc)
5.0000
NODE VOLTAGE
0.0000 ( In2)
NODE VOLTAGE
0.0000
VOLTAGE SOURCE CURRENTS
NAME
CURRENT
547
Vcc1
Vcc2
VIn2
VIn1
-6.767E-12
6.767E-12
0.000E+00
0.000E+00
TOTAL POWER DISSIPATION 3.38E-11 WATTS
JOB CONCLUDED
TOTAL JOB TIME
.11
**** 12/06/04 12:10:26 ********* PSpice 9.1 (Mar 1999) ******** ID# 0 ********
* Circuit Extracted by Tanner Research’s L-Edit Version 9.10 / Extract Version 9.10 ;
**** INITIAL TRANSIENT SOLUTION
TEMPERATURE = 27.000 DEG C
NODE VOLTAGE
( In)
NODE VOLTAGE
0.0000 ( out)
4.9991 ( Vdd)
NODE VOLTAGE
5.0000 ( vss)
VOLTAGE SOURCE CURRENTS
NAME
CURRENT
VDD1
VIN
Vdd2
-9.381E-07
0.000E+00
9.381E-07
TOTAL POWER DISSIPATION 4.69E-06 WATTS
JOB CONCLUDED
TOTAL JOB TIME
548
.06
0.0000
NODE VOLTAGE
Referencias y bibliografía
Cápitulo 2
• ”Los Chips y sus Perspectivas”, Siemens Aktiengesellschaft, Berlín, 1985.
• “Presente y Futuro de la Microelectrónica”, L.A. Cortés, Ingeniería e Investigación,
UN, No. 46, 1999.
• “Basic VLSI Design”, D. A. Pucknell, K. Eshraghian, Prentice Hall 1995.
• “Trends in CMOS Tecnologies”, C. L. Claeys, Memorias I Workshop IBERCHIP, Cartagena de Indias, 1995.
•
“Circuitos Integrados de Aplicación Específica”, L.A. Cortés, Ingeniería e Investigación, UN, No. 47, 1999
Cápitulo 3
• Física de semiconductores. http://www.ing.unlp.edu.ar/electrotecnia/termo/tp/TP8-05.doc
• BOYLESTAD Robert, Electrónica teoría de circuitos, edición sexta, ed Prentice Hall,
2006 Pág. 1 a 44.
• SEDRA Adel, Circuitos Microelectrónicos, edición quinta, ed Mc Graw Hill, 2006, Pág
139 a 217.
• Gildenblat, G.S., Gelmont, B., Milkovic, M., Elshabini-Riad, A., Stephenson, F.W.,
Bhutta, I.A., Look, D.C. “Semiconductors” The Electrical Engineering Handbook.
• ANKRUM. Paul D. ELECTRÓNICA DE LOS SEMICONDUCTORES, Editorial Prentice/Hall Internacional. Scholl of Electrical Engineering, Cornell University. Pag 65-72.
• Colinge, JP. Physics of Semiconductor Devices. Hignham, MA, USA. Kluwer Academic Publishers. 2002.
• Razeghi, M. Fundamentals of Solid State Engineering. Kluwer Academic Publishers.
2000.
• DIMITRIJEV, Sima. Understanding Semiconductor Devices. Oxford University Press,
2000.
• http://www.monografias.com/trabajos-pdf2/diseno-electronico-analogo/diseno-electronico-analogo.pdf
• http://www.electronicafacil.net/tutoriales/Principios-Basicos-Materiales-Semiconductores.php
Cápitulo 4
• Sedra, Adel. Smith, Kenneth. Circuitos Microelectrónicos. McGraw Hill. Capitulo 5.
• Caratteristiche dei Mosfet. Fuente: http://vlsi.die.uniroma1.it/centurelli/lez15.pdf
• Mazo, Manuel. García, Juan. Palazuelos, Sira. Dispositivos electrónicos II. Universidad de Alcalá de Henares, Servicio de Publicaciones, 2006. Capitulo 2.
549
• Whites, EE. Lecture 28: MOSFET as anamplifier. http://whites.sdsmt.edu/classes/
ee320/notes/320Lecture28.pdf
• MOSFET Small Signal Model. http://www.prenhall.com/howe3/microelectronics/pdf_
folder/lectures/mwf/lecture12.fm5.pdf
• Tema 4: El Transistor MOSFET. http://www.dte.us.es/ing_inf/tec_comp/Tc/Temario/
Tema4/t4.pdf
• Fundamentos de Electrónica Analógica. JoséEspí López, Gustavo Camps-Valls, y
Jordi Muñoz-Marí. Servicio de Publicaciones - Universidad de Valencia. 1a edición,
2006. TEMA 5
• The Art of Electronics + Student Manual.Paul Horowitz y Winfield Hill.Cambridge UniversityPress 2a edición, 1989. TEMA 1-2
• http://www.artofelectronics.com/
• Electrónica Analógica. Problemas y Cuestiones. José Espí López, Gustavo Camps-Valls,
y Jordi Muñoz-Marí. Prentice Hall, Serie Prentice/Practica. 1a edición, 2006. TEMA 2
Cápitulo 5
• C. Mead and L. Conway, Introduction to VLSI Systems , Addison-Wesley, 1980
• Cadence Design Systems, Inc./Calma. GDSII Stream Format Manual, Feb. [2],
• NHE Weste and K. Eshraghian, Principles of CMOS VLSI Design: A System Perspective, Addison-Wesley, 2nd edition.
• MOSIS Scalable CMOS (SCMOS) Design Rules, (Revision 7.2), The MOSIS Service.
Marina del Rey, CA 90292-6695
• Weste-Eshraghian, Principles of CMOS VLSI design
• Ghandi Sorab K, VLSI-Fabrication Principles, Segunda Edición
• Microwind & Dsch User’s Manual Version 2
Cápitulo 6
• A.S. Sedra, K.C. Smith. Circuitos Microelectrónicos. Oxford University Press, Mc Graw
Hill, 1998.
• R.C. Jaeger: “Microelectronic Circuit Design”. McGraw-Hill, 1997.
• R.J. Baker, H.W. Li, D.E. Boyce: “CMOS Circuit Design, Layout, and Simulation”. IEEE
Press, 1998.
• N.R. Malik: “Electronic Circuits — Analysis, Simulation, and Design”. Prentice Hall,
1995.
• SHIUH-WUU LEE, TUNG-YI CHAN, ALBERT T. Performance of CMOS Technologies
with Silicon Dioxide and Reoxidized Nitrided Oxide Gate Dielectrics. IEEE ELWTRON
DEVICE LETTERS, VOL. 11, NO. I, JULY 1990
• Laboratorio de Microtecnologia y sistemas embebidos, MICROSE. Instituto Politecnico Nacional, Mexico. http://www.microse.cic.ipn.mx/files/documents/material/vlsi/CMOS-1.swf
550
• Saenz, José. Familia Lógica CMOS. Fundamentos Lógicos de los computadores.
http://www.scribd.com/doc/4196334/Familia-Cmos
• Lcastañer, V. Jiménez, D. Bardés. Fundamentos de diseño microelectrónico, lección 5
• Lcastañer, V. Jiménez, D. Bardés. Fundamentos de diseño microelectrónico, lección 2
• Gómez, Pedro. El transistor MOS como elemento de circuito, tema 6. Grupo de tecnologia de computadores - UPM.
• Notas de clase, Técnicas de integración. UNAL
• Manual Microwind 2.0
Cápitulo 7
• Diseño de circuitos integrados, José Manuel Mendias. Hortensia Mecha, Dpto de arquitectura de computadores y automatita, Universidad Complutense de Madrid.
• Digital integrated circuits 2nd, Berkeley
• Jeff Beasley, William Hudson. Transistor level implementation of CMOS combinatorial
logic circuits.
• Adel Sedra, Kenneth Smith. Microelectronic Circuits. Fifth Edition. Oxford University Press.
• John Uyemura. CMOS logic circuit design. Georgia Institute of Technology. Kluwer Academic.
• Sarta C. Prasad, Kaushik Roy. Circuit Optimization by transistor reordering for minimization of power consumption under delay constraint.Integrated System Laboratory
- Texas Instrument, Purdue University.
• PadmanabhanBalasubramanian, C. Hari Narayanan, KarthikAnantha. Low power design of digital combinatorial circuits with complementary CMOS logic.International Journal of Electronics, Circuits and Systems, Volume 1, Number 1.
• J.P. Uyemura, CMOS Logic Circuit Design. Kluwer Academic Publishers, London.
• J.P. Uyemura, FUNDAMENTAL OF MOS DIGITAL INTEGRATED CIRCUITS. Addison Wesley.
• Jan M. Rabaey, DIGITAL INTEGRATED CIRCUITS. Prentice Hall.
• Neil H. E. Weste, Kamran Eshraghian, PRINCIPLES OF CMOS VLSI DESIGN. Addison Wesley.
• http://everything2.com/e2node/Shannon%2527s%2520Expansion
• http://webpages.eng.wayne.edu/cadence/ECE6570/doc/lect3_1.pdf
• http://writphotec.com/mano4/Supplements/CMOS_supp4.pdf
• http://www.engr.uky.edu/~elias/lectures/ln_11.pdf
• http://wwwi.elec.gla.ac.uk/teaching_pages/course_pages/VLSI_design_4/unit2.pdf
Cápitulo 8
• Circuitos Microelectrónicos, Sedra – Smith
• Principios de Diseño Digital, Gajski, Prentice Hall
551
• Digital Integrated Circuits, Jan M. Rabaey Second Edition
• CMOS VLSI Design A Circuits and Systems Perspective (3rd Edition). Neil Weste and
David Harris /Addison Wesley.
• OKLOBDZIJA, Vojin G. Digital Design and Fabrication. Publicado por CRC Press.
2007. p. 556-656.
• SEGURA, Jaume. CMOS Electronics: How it Works, how it Fails. Publicado por WileyIEEE, 2004. p. 289-320.
• WAKERLY, John F. Diseño digital: Principios y prácticas. Publicado por Pearson Educación, 2001. p. 850-900.
• UYEMURA, John P. CMOS Logic Circuit Design. Publicado por Springer, 1999. p.
450-470.
• WESTE, Neil H.E. Cmos VLSI Design: A circuits and systems perspective. Publicado
por Pearson/Addison-Wesley, 2005. p. 643-687.
• http://www.oup.com/uk/orc/bin/9780199273133/clements_ch03.pdf
• http://en.wikipedia.org/wiki/Bistability Articulo de wikipedia sobre sistemas Biestables.
Cápitulo 9
• Sedra A.S., Smith K.C., Microelectronic Circuits. 5th ed., Sanders Publishing.
• Knauth L.A., Dynamic CMOS. EEE 425 Honors Project Fall 1997 Advisor: ZAck Ciccone. http://www.lauraknauth.com/academic/DynCMOS.html.
• Memory Structures. http://www.cs.utah.edu/classes/cs6830/slides/memoryx6.pdf
• Jacomet M., VLSI System Design. http://www.scribd.com/doc/2898746/VLSI-systemdesign.
• Tenhunen H. Circuit techniques for CMOS logic. Kungl Tekniska Högskolan. http://
www.eet.bme.hu/~benedek/CAD_Methodology/Courses/logicdesign/CMOSlogi.pdf
• KANG D.W., KIM B.Y., Design of Enhanced Differential Cascode Voltage Switch Logic
(EDCVSL) circuits for high fan-in gate. Department of Electrical and Computer Eengineering. Northeastern University.
• RUBIO A., y otros. Diseño de Circuitos y sistemas integrados. Ediciones de la Universidad Politécnica de Catalunya, SL. Barcelona, 2003. pp 179,180,185.
• UYEMURA John. CMOS logic circuit design. Ed Springer. 1999. pp 445-448.
Cápitulo 10
• Dain Clain. CMOS IC layout, Concepts, methodologies and tools. Newnes. 1999.
• Peña Martinez, Ana.
Design of MOS Current-Mode Logic Standard Cells
• J.M. Rabaey, A. Chandrakasan y B. Nikolic. Digital integrated circuits. A design perspective (2e). Prentice Hall. 2003.
• J. Cong, B. Preas, C.L. Liu. P hysical Models and efficient algorithms for Over-the-cell routing
in Standard cell design. www.citeseerx.ist.psu.edu, consultado el 27 de Mayo de 2010.
552
• http://www.tutorial-reports.com/computer-science/fpga/tutorial.php
• http://www.actel.com/products/axcelerator/docs.aspxhttp://www.atmel.com/dyn/products/product_card.asp?part_id=2066
• http://www.xilinx.com/support/library.htm
• http://www.xilinx.com/xlnx/xweb/xil_publications_display.jsp?iLanguageID=1&category=1212262&sGlobalNavPick=SUPPORT&sSecondaryNavPick=BOARDS
• http://www.vlsitechnology.org/html/download.html
• http://www.asicservice.com/
• http://www.ece.msstate.edu/~reese/EE8273/lectures/stdcellroute/stdcellroute.pdf
• http://www.eie.ucr.ac.cr/uploads/file/proybach/pb0409t.pdf
• http://www.unizar.es/euitiz/areas/aretecel/docencia/digitel/Apuntes/EDIG21.pdf
• http://www.quicklogic.com/home.asp?PageID=533&sMenuID=209&p1=209&p2=316
&p3=436
• http://www.fpgajournal.com/articles_2006/20061128_dsp.htm
• http://www.altera.com/literature/lit-index.html
• L. Geppert. “Design Tools for Analog and Digital ICs”. IEEE Spectrum. vol.36, n.4, pp.
41-48. Abril, 1999.
• S.M. Kang y Y. Leblebici. CMOS digital integrated circuits. Analysis and design (3e).
McGraw-Hill. 2003.
• Design Automation Conference, 1990. Proceedings., 27th ACM/IEEE Publication
Date: 24-28 June 1990
• Circuits and Systems, 1993., ISCAS ‘93, 1993 IEEE International Symposium on Publication Date: 3-6 May 1993
• ASIC Seminar and Exhibit, 1989. Proceedings., Second Annual IEEE Publication
Date: 25-28 Sept. 1989
• Diseño de CI´s Una Metodología de Diseño de Celdas Standard
• Uyemura, John P. Physical Design of CMOS Integrated Circuits Using L-EDIT. S Publishing Company
Cápitulo 11
• F. Torres. Lenguajes de Descripción de Hardware. Universidad Autónoma de Guadalajara. 2004.
• F. Pardo, J. Boluda. VHDL Lenguaje Para Síntesis y Modelado de Circuitos. Alfaomega, segunda edición. 2004.
• S. Sánchez, A. Barriga, P. Brox, I. Baturone. Síntesis de Sistemas Difusos a Partir de VHDL.
Instituto de Microelectrónica de Sevilla, CNM-CSIC, Sevilla, España. Septiembre 2004.
• J. Leiva. Diseño de Algoritmos. Departamento de Lenguajes y Ciencias de la Computación. Universidad de Málaga. Curso 2004/2005.
553
• R. Rodríguez. Diseño de Alto Nivel. Dpto. de Informática - Universidad Francisco de
Vitoria. Curso 2003/2004.
• R. García. Ingeniería Concurrente y Tecnologías de la Información. Ingenierías, Vol.
VII, No. 22. Enero-Marzo 2004.
• P. Carrasco, N. Fraiman. Información en la Era Digital. Monografía. Marzo 2005.
• V. Grimblatt. Introducción a los Circuitos Integrados. Synopsys Chile R&D Center. 2003.
• J. F. Wakerly. Digital Design: Principles and Practices. Prentice Hall, Tercera edición. 2002.
• Web. Página de logtechnology. http://www.logtechnology.com.
• GAJSKI, Daniel D. Principios de Diseño Digital, Prentice Hall, 1997.
• SEDRA/SMITH, Circuitos microelectrónicos, Oxford University Press, 1998.
• CHACÓN Rodríguez, Alfonso, Diapositivas de Clase Diseño Digital Contemporáneo,
Instituto Tecnológico de Costa Rica, 2004.
• JARAMILLO, Iván, Clases, Universidad Nacional de Colombia, 2008.
• Sapir, S and R, J SmithII. Handbook of Design Automation. Englewood Cliffs. Prentice
Hall, 1986
• Wolf, w. modern VLSI Design: A Systems Approach. Prentice Hall,1994
• http://www.virtual.unal.edu.co/cursos/ingenieria/2000477/lecciones/040101.htm
• http://voltio.ujaen.es/te/enlinea/Pagina%20Web/sof%20eda.htm
• http://www.cadesign.net/
• http://www.mentor.com/products/pcb/pads/pads_eval_form.cfm
• http://woody.us.es/~aguirre/LabMic_home.html
• www.clikear.com/ingenieria/tecnologiadigital.html
• e-book: microelectrónica: circuitos integrados diseñados por el usuario.
Cápitulo 12
• Urriza I., García J.I. Test de Circuitos Integrados. Tipos de test de fabricación. Test
tecnológico. Ingeniería Electrónica y Comunicaciones. odyssea.cps.unizar.es/~te/Docencia_archivos/sysel_archivos/test.pdf
• Valderrama E., Ferrer C. Introducción al diseño de CIs. Universidad Autónoma de Barcelona. Capítulos 9 y 10. http://ocw.uab.cat/enginyeries/disseny-de-circuits-integratsi/materials
• Rabaey, Jan M. Digital integrated circuits: a design perspective. Upper Saddle River,
N.J. Pearson Education 2003.
• Alcubilla González, Ramón. Diseño digital: una perspectiva VLSI-CMOS.
• Lubaszewski M. MIC05: Teste de Circuitos Integrados. PPGMicro – UFRGS. 2007.
554