IE-0502 Diseño de entradas y salidas para circuitos integrados Universidad de Costa Rica Facultad de Ingeniería Escuela de Ingeniería Eléctrica IE – 0502 Proyecto Eléctrico Diseño de entradas y salidas para Circuitos Integrados Por: Marco Sansonetti Hautala Ciudad Universitaria Rodrigo Facio Julio del 2005 IE-0502 Diseño de entradas y salidas para circuitos integrados Diseño de entradas y salidas para Circuitos Integrados Por: Marco Sansonetti Hautala Sometido a la Escuela de Ingeniería Eléctrica de la Facultad de Ingeniería de la Universidad de Costa Rica como requisito parcial para optar por el grado de: BACHILLER EN INGENIERÍA ELÉCTRICA Aprobado por el Tribunal: _________________________________ Ing. Roberto Rodríguez Profesor Guía _________________________________ Ing. Federico Ruiz Profesor lector _______________________________ Ing. Enrique Coen Profesor lector ii IE-0502 Diseño de entradas y salidas para circuitos integrados A mis padres, hermanos y abuela, Quienes siempre han estado conmigo, apoyándome en todos los momentos. A Leo, mi novia, Pues siempre me impulsas a dar lo mejor de mí, Y a no conformarme con lo que está bien, ¡Siempre se puede hacer mejor! iii IE-0502 Diseño de entradas y salidas para circuitos integrados RECONOCIMIENTOS Mi más sincero agradecimiento por toda la colaboración brindada para realizar este proyecto a: Ing. Roberto Rodríguez Ing. Enrique Coen Ing. Federico Ruiz Ing. Lochi Yu Ustedes son personas increíbles y excelentes profesores, con muchas ganas de enseñar, nunca pierdan esa vocación; fue un honor haber aprendido de ustedes. Deseo agradecer también a mis amigos y compañeros por la cooperación, el apoyo y la ayuda prestada durante el desarrollo del presente trabajo. iv IE-0502 Diseño de entradas y salidas para circuitos integrados ÍNDICE GENERAL ÍNDICE DE FIGURAS...................................................................................vi ÍNDICE DE TABLAS....................................................................................vii NOMENCLATURA..................................................................................... viii RESUMEN........................................................................................................x CAPÍTULO 1: Introducción ...........................................................................1 1.1 Objetivos.................................................................................................................1 1.1.1 Objetivos específicos ...........................................................................................1 1.2 Metodología ............................................................................................................2 CAPÍTULO 2: Desarrollo Teórico .................................................................4 2.1 Marco teórico ....................................................................................................................4 2.1.1 Funcionamiento de los transistores MOSFET .......................................................4 2.1.2 Arreglos de celdas estándar .................................................................................14 2.1.3 Pads......................................................................................................................16 CAPÍTULO 3: Diseño de Pads .....................................................................21 3.1 Tipos de pads a diseñar para la CPUCR. ........................................................................21 3.1.1 Pads de Vdd y Vss (4)..........................................................................................24 3.1.2 Pads de salida (23) ...............................................................................................24 3.1.3 Pads de entrada (5)..............................................................................................26 3.1.4 Pads bidireccionales (8) .......................................................................................28 CAPÍTULO 4: Conclusiones y recomendaciones .......................................33 BIBLIOGRAFÍA............................................................................................36 APÉNDICES...................................................................................................37 HSPICE …………………………………………………………………………………...37 ANEXOS .........................................................................................................42 Reglas de diseño para transistores MOSFET (Diseñados en Microwind)............................42 v IE-0502 Diseño de entradas y salidas para circuitos integrados ÍNDICE DE FIGURAS Figura 2.1 Transistor MOSFET de canal n........................................................................5 Figura 2.2 Característica del voltaje de entrada del NMOSFET.....................................6 Figura 2.3 Variación de la tensión de umbral por efecto del voltaje del sustrato. .........8 Figura 2.4 Corriente ids en función del voltaje en el sustrato ..........................................9 Figura 2.5 Transistor MOSFET de canal p......................................................................10 Figura 2.6 Característica del voltaje de entrada del PMOSFET ...................................11 Figura 2.7 Circuito de protección con diodos...................................................................13 Figura 2.8 Esquema de un diseño basado en celdas estándar. .......................................15 Figura 2.9 Esquema de un diseño de conexión de pads de Vdd y Vss. ..........................17 Figura 2.10 Configuración de un pad bidirrecional. .......................................................19 Figura 3.1 Esquema de los pines a diseñar de la CPUCR...............................................21 Figura 3.2 Esquema del chip de 40 pines..........................................................................22 Figura 3.3 Esquema de inversores en paralelo diseñados en VLSI................................22 Figura 3.4 Esquema de diodos para protección electrostática diseñados en VLSI ......23 Figura 3.5 Simulación de los inversores para pads de salida (V y I) .............................25 Figura 3.6 Simulación del tiempo de retraso de los inversores de salida. ....................26 Figura 3.7 Simulación de los inversores para pads de entrada (V y I) ..........................27 Figura 3.8 Simulación del tiempo de retraso de los inversores de entrada. .................28 Figura 3.9 Esquema del diseño de las etapas del Pad bidireccional...............................29 Figura 3.10 Esquema de Figura 2.10 diseñada en VLSI (Parte derecha del Pad)........30 Figura 3.11 Simulación de Figura 3.10 .............................................................................31 Figura A.1 Circuito de inversores programado en HSPICE ..........................................37 Figura A.2 Simulación del circuito de la figura A.1 ........................................................40 vi IE-0502 Diseño de entradas y salidas para circuitos integrados ÍNDICE DE TABLAS Tabla 2.1 Tablas de verdad de compuertas NAND y NOR (Figura 2.10). ....................19 vii IE-0502 Diseño de entradas y salidas para circuitos integrados NOMENCLATURA MOSFET Metal oxide semiconductor field effect transistor (Transistor semiconductor de metal óxido de efecto de campo) FET Field effect transistor (Transistor de efecto de campo) VLSI Very large scale integrate (Escala de integración muy alta) Vtn Voltaje de umbral del transistor de canal n Vgs Tensión puerta - fuente Ids Corriente drenaje - fuente Vds Tensión drenaje – fuente Vsb Tensión fuente - sustrato Vtp Voltaje de umbral del transistor de canal p Vsg Tensión fuente - puerta Isd Corriente fuente - drenaje Vsd Tensión fuente - drenaje Vs Tensión en la fuente Vg Tensión en la puerta Vd Tensión en el drenaje Vdd Voltaje de alimentación, tensión más alta del circuito Vss Tensión más baja del circuito, conexión a tierra Movilidad de los portadores en el canal Constante dieléctrica del óxido debajo de la puerta tox Espesor del óxido viii IE-0502 Diseño de entradas y salidas para circuitos integrados W Ancho del canal L Largo del canal ASIC Circuitos integrados de aplicación específica I/O Abreviatura entrada/salida (in/out) Red RC Red de resistencia y capacitor ix IE-0502 Diseño de entradas y salidas para circuitos integrados RESUMEN El objetivo principal del proyecto era de diseñar las entradas y las salidas para circuitos integrados, basados en arreglos de tipo estándar. Dicho objetivo se cumplió, en vista que todas las entradas y salidas de la CPUCR fueron diseñadas, siempre tomando en cuenta las reglas que las celdas de tipo estándar demandan. Luego de haber analizado el funcionamiento de los transistores MOSFET, se procedió a diseñar los distintos pads de entradas y salidas de la CPUCR, mediante el diseño por investigación y simulaciones de distintos programas utilizados, tal el caso de Microwind y Hspice. Este diseño se basó en lograr obtener del circuito la corriente suficiente para manejar las capacitancias de carga, ya sea para la CPUCR o para las cargas externas, además de buscar siempre el diseño más rápido, con tiempos de subida y de bajada lo más parecido posibles, para garantizarnos el funcionamiento correcto del circuito y optimizar los márgenes de ruido, y que ocupase la menor área posible. Las variables estudiadas más a fondo fueron los voltajes de entrada y de salida, para calcular el retraso de la señal y que este cumpliera con las especificaciones del circuito integrado para el que fueron diseñadas, en nuestro caso, la CPUCR. Además se estudió también la corriente que podía entregar el circuito, para que esta cumpliera con los requerimientos de la carga. Al finalizar el proyecto, se destaca la importancia de haber tomado en cuenta el arreglo en celdas tipo estándar, en vista que de los arreglos investigados, las celdas tipo estándar son la que proporcionaron la mejor guía de diseño para estos circuitos. La recomendación más importante para futuros proyectos, es que se debe tener a disposición los programas necesarios para realizar simulaciones virtuales en una computadora, el estudiante puede investigar sobre la manera en que se usa el programa, pero entre más sepa el estudiante sobre las herramientas de las que dispone, mejores y más complejos serán sus diseños, sobre todo si utiliza el máximo de su tiempo diseñando en vez de aprendiendo o investigando como utilizar un programa. x IE-0502 Diseño de entradas y salidas para circuitos integrados CAPÍTULO 1: Introducción Este proyecto tuvo como principal objetivo diseñar los circuitos de entrada y salida para un circuito basado en celdas estándar, partiendo del hecho que se deben manipular las corrientes de entrada y salida del circuito. Se realizó utilizando los principios de funcionamiento de los transistores, diodos y otros elementos eléctricos. Después del estudio de la parte teórica, se llevaron a cabo las simulaciones realizadas con el programa Orcad PSPICE, en la que se comprobó el funcionamiento del diseño y la acertada elección de los elementos utilizados, en la implementación del esquema de 40 pines. Este esquema se podrá utilizar para el manejo de las entradas y salidas de la CPUCR y aplicaciones posteriores que esta tenga. 1.1 Objetivos Diseñar los circuitos de entrada y salida para un circuito basado en celdas estándar 1.1.1 Objetivos específicos • Diseñar las entradas, salidas, líneas bidireccionales y de alimentación, para la CPUCR 1 IE-0502 • 2 Diseño de entradas y salidas para circuitos integrados Analizar los diferentes tipos de circuitos para entradas, salidas, líneas bidireccionales y de alimentación que existen en los procesos basados en celdas estándar, y documentar estos. • Implementar el esquema de entradas y salidas para la CPUCR en un dado real de 40 pines 1.2 Metodología Todo el desarrollo del presente proyecto se realizó en el Laboratorio de micros de la Universidad de Costa Rica. Se investigó mediante bibliografía de las bibliotecas de la universidad, clases relacionadas con estructuras de computadoras, la CPUCR y microelectrónica, además de páginas web para la realización del marco teórico. Para la elaboración del esquema de 40 pines, óptimo para el manejo de las entradas y salidas de la CPUCR, se probaron diferentes configuraciones, evaluadas mediante simulaciones por computadora y se escogió el más apto basado en funcionalidad y precio de manufacturación estimado. Primeramente se realizó un modelo de prueba del esquema, donde se utilizaron los elementos más conocidos. Esto con la idea de hacer funcionar el esquema antes de optimizarlo, mediante la búsqueda de elementos más eficientes, no tan populares en el ambiente universitario. IE-0502 Diseño de entradas y salidas para circuitos integrados 3 La optimización del esquema de entradas y salidas para la CPUCR se optimizó basándose en los criterios de disipación de potencia, velocidad y funcionalidad. IE-0502 Diseño de entradas y salidas para circuitos integrados CAPÍTULO 2: Desarrollo Teórico 2.1 Marco teórico 2.1.1 Funcionamiento de los transistores MOSFET (Metal oxide semiconductor field effect transistor). La importancia del FET se resume en estas cuatro propiedades a) El tamaño físico del MOSFET es muy pequeño, y por esto puede alcanzar densidades de empaquetamiento muy elevadas en circuitos integrados, y se utilizan ampliamente en VLSI. b) Puede operar como una resistencia controlada por tensión, y ocupa menor espacio que una de estas. c) Tiene una muy alta impedancia de entrada y una capacidad de entrada pequeña, por lo que es un buen almacenador en circuitos digitales. d) Es capaz de disipar altas potencias, y conmutar grandes corrientes en nanosegundos 2.1.1.1 Introducción a la teoría del funcionamiento del MOSFET 4 IE-0502 Diseño de entradas y salidas para circuitos integrados 5 El MOSFET de canal n, que se aprecia en la figura 2.1 consiste en un sustrato de tipo p en el que se han difundido dos regiones n+, las cuales forman una fuente y un drenaje. La puerta se forma al cubrir con una capa de dióxido de silicio y encima una placa metálica, la región entre el drenaje y la fuente. Figura 2.1 Transistor MOSFET de canal n Cuando la tensión puerta-fuente es positiva, se induce un canal tipo n entre la fuente y el drenaje. Esto se logra al conectar la fuente del transistor tipo n al voltaje más bajo, y el drenaje se conecta a la fuente de alimentación así los electrones de la banda de conducción están siendo atraídos hacia la superficie del sustrato p, directamente debajo de la puerta. A esto se le llama inversión superficial. Se define la tensión de umbral Vtn, como la caída de voltaje al comienzo de la inversión superficial, y únicamente puede fluir corriente cuando el voltaje puerta fuente excede este valor de Vtn. IE-0502 6 Diseño de entradas y salidas para circuitos integrados Figura 2.2 Característica del voltaje de entrada del NMOSFET 2.1.1.2 Regiones de operación del transistor (corte, lineal y saturación). Las características del voltaje de entrada vi de un NMOSFET, se aprecian en la figura 2.2. Cuando Vgs = Vtn = 2, la corriente ids = 0. Esta situación se mantiene siempre que Vgs < Vtn. Esta región de operación del transistor se le llama región de corte. Cuando Vgs aumenta y es mayor que la tensión de umbral, fluye la corriente. Aquí podemos definir dos regiones de operación para el transistor, lineal y saturación. La región lineal se produce cuando se tiene las siguientes condiciones: Para esta región la corriente ids será vGS > VTN (2.1.1.2-1) v DS < vGS − VTN (2.1.1.2-2) IE-0502 7 Diseño de entradas y salidas para circuitos integrados [ 2 i DS = k n 2(vGS − VTN )v DS − v DS ] (2.1.1.2-3) La región de saturación se da si se cumple la ecuación (2.1.1.2-1) y bajo la condición de que: v DS ≥ vGS − VTN (2.1.1.2-4) Para la cual la corriente ids se calcula: i DS = k n (vGS − VTN ) 2 (2.1.1.2-5) De la ecuación (2.1.1.2-5) podemos destacar, que una vez que el transistor opere bajo la región de saturación cualquier aumento en el voltaje drenaje fuente significaría un aumento insignificante en la corriente ids, puesto que cuando el transistor entra en esta región entrega su corriente máxima. La constante Kn viene definida por: kn = µε W 2t L Donde = movilidad de los portadores en el canal = constante dieléctrica del óxido debajo de la puerta t = espesor del óxido (2.1.1.2-6) IE-0502 Diseño de entradas y salidas para circuitos integrados 8 W = ancho del canal L = largo del canal Cuando el FET trabaja en zona lineal, la relación tensión–corriente (Vds - ids) es aproximadamente lineal, por esto es que el FET se puede tomar como una resistencia rds. Un FET diseñado para actuar como baja resistencia tiene una relación anchura/longitud (W/L) grande, y por tanto una Kn grande también. Inversamente, puede actuar como una resistencia alta al tener una Kn pequeña. 2.1.1.3 Sustrato Figura 2.3 Variación de la tensión de umbral por efecto del voltaje del sustrato. En el transistor NMOSFET la región p se llama sustrato. La tensión del sustrato afecta la tensión inicial Vtn y a la característica corriente de drenaje tensión de puerta del IE-0502 9 Diseño de entradas y salidas para circuitos integrados MOSFET. Típicamente el sustrato se conecta al voltaje más bajo en un NMOSFET, como la fuente. La figura 3 muestra la variación de la tensión de umbral Vtn con las variaciones de la tensión fuente sustrato Vsb en un MOSFET. Teóricamente se puede demostrar: vTN (v SB ) ≈ VTN (0 ) + K v SB (2.1.1.3-1) EN donde Vtn(Vsb) es la tensión umbral correspondiente a la tensión fuente sustrato Vsb, Vtn(0) es la tensión umbral correspondiente con Vsb = 0, y K es una constante de proporcionalidad, calculada en la ecuación (2.1.1.2-6). La corriente drenaje-fuente también se ve afectada por las variaciones de la tensión del sustrato, al provocar cambios en la tensión de umbral. En la figura 2.3 observamos que cada curva tiene la misma forma, excepto por la traslación originada por el incremento de la tensión de umbral. Por ejemplo, si el MOSFET está en saturación, la corriente ids se verá afectada de la siguiente manera: [ i DS = k [vGS − vTN (v SB )] ≈ k vGS − VTN (0) − K v SB 2 ] 2 (2.1.1.3-2) Figura 2.4 Corriente ids en función del voltaje en el sustrato IE-0502 Diseño de entradas y salidas para circuitos integrados 10 2.1.1.4 El MOSFET de canal p. El transistor PMOSFET debe tener una tensión en la puerta siempre menor que la tensión de la fuente, para que los huecos de la fuente sean atraídos hacia la puerta y formen el canal, para que así haya flujo de corriente. El drenaje está también a menor tensión que la fuente, así los huecos de este son absorbidos por el drenaje a través del canal. Figura 2.5 Transistor MOSFET de canal p En un transistor de canal p, se usan las coordenadas isd, Vsd y Vsg, en vista de que son positivas y es más cómodo al hacer los cálculos. Obsérvese que la corriente fluirá solo cuando Vsg > Vtp (Voltaje de umbral del canal p) IE-0502 11 Diseño de entradas y salidas para circuitos integrados Figura 2.6 Característica del voltaje de entrada del PMOSFET Las condiciones y las ecuaciones para la corriente isd se dan a continuación, para las regiones de operación lineal y saturación. La región lineal se produce cuando se tiene las siguientes condiciones: v SG > VTP (2.1.1.4-1) v SD < v SG − VTP (2.1.1.4-2) Para esta región la corriente ids será [ 2 i SD = k p 2(v SG − VTP )v SD − v SD ] (2.1.1.4-3) La región de saturación se da si se cumple la ecuación (2.1.1.4-1) y bajo la condición de que: IE-0502 12 Diseño de entradas y salidas para circuitos integrados v SD ≥ v SG − VTP (2.1.1.4-4) Para la cual la corriente ids se calcula: i SD = k p (v SG − VTP ) 2 (2.1.1.4-5) Los valores de Kp se calculan con las mismas variables de la ecuación (2.1.1.2-6), pero con la diferencia de que para un transistor de canal p, los portadores del canal son los huecos, y no lo electrones, como es el caso del transistor de canal n. kp = µε W 2t L (2.1.1.4-6) 2.1.1.5 Protección de la entrada en el MOSFET Si la tensión puerta – fuente en un MOSFET excede los 100 V, se produce la ruptura de la capa de dióxido de silicio debajo de la puerta, y esto originaría un deterioro permanente por excesivo flujo de corriente. La carga introducida en la puerta de un FET, que es un condensador casi perfecto, permanece almacenada en este y no escapará. Así la carga electrostática parásita puede desarrollar una tensión en este condensador para producir la ruptura. Con el fin de evitar la ruptura, los fabricantes implementan un circuito protector con diodos a la entrada del FET. IE-0502 Diseño de entradas y salidas para circuitos integrados 13 En la figura 6 se observa dicho circuito. El diodo D1 protege la puerta contra grandes tensiones de entrada positivas, al fijar el nivel de tensión de la puerta al mismo nivel que el drenaje. El diodo D2 protege la puerta de las tensiones negativas excesivas en la entrada, fijándola al mismo nivel que la tensión en la fuente. Por esta acción, los límites de la tensión de puerta serán Vs – 0.7 < Vg < Vd + 0.7 Figura 2.7 Circuito de protección con diodos. Esto será suficiente para los márgenes típicos de las tensiones de fuente y drenaje, es decir +/- 20 V. Además dichos diodos de protección, se deberan diseñar según el voltaje pico reverso que deben soportar, puesto que si el diodo D1 debe conducir, el diodo D2 debe soportar la tensión a la que D1 es sometido y no romperse. IE-0502 Diseño de entradas y salidas para circuitos integrados 14 2.1.2 Arreglos de celdas estándar En el diseño ASIC (Circuitos integrados de aplicación específica) basados en celdas estándar, se mejoran las características de densidad y tamaño, mediante unas máscaras únicas para todos los pasos del proceso, lo que hace que el diseño sea más largo y costoso. Otra ventaja del diseño en celdas estándar es que cualquier tamaño de memoria, ALU (Unidad aritmética lógica) u otro bloque funcional deseado, se puede ubicarse en cualquier sitio del dado. 2.1.2.1 Estructura de la celda estándar Una célula es una unidad funcional, como una puerta, un multiplexor, un inversor, etc. Y contendrá un número variable de transistores de diversos tamaños. Cada célula de la familia es diseñada y situada para optimizar parámetros específicos. Todas las células se diseñan con la misma altura y solo varían en el ancho. Esto se hace para permitir un software de ubicación y conexionado automático que disponga las células en filas de igual altura, con buses de tensión y de masa discurriendo a través de la parte superior e inferior de cada fila. Como se puede disponer de un sistema de conexionado de doble metalización, las entradas y salidas de la célula se conectan a los contactos metálicos de la parte superior e IE-0502 Diseño de entradas y salidas para circuitos integrados 15 inferior de la misma, y de ser necesario el uso de canales de conexión verticales adicionales, se pueden situar células de atravesamiento (feed-through-cells). De lo expuesto anteriormente, se ven claramente dos ventajas al diseñar con celdas estándar. Primero, debido a que en el conexionado solo se crean aquellos canales que se necesiten no se derrocha espacio en canales de conexión a utilizar, lo que conduce a un menor tamaño del dado, además de que el diseño puede ser enlazado al permitir añadir canales y poner filas de células cuando se necesite. Segundo, en vista que se permiten diferentes tamaños de transistores en el diseño de la célula, se puede optimizar las mismas para la aplicación deseada, resultando un ASIC más optimizado. Figura 2.8 Esquema de un diseño basado en celdas estándar. IE-0502 Diseño de entradas y salidas para circuitos integrados 16 2.1.2.2 Dimensionado del chip Cuando el diseño de un sistema se hace por ASIC de celdas estándar, el ingeniero de diseño debe estimar la cantidad de lógica que encajará en un solo ASIC. A esta estimación se llega calculando el número de micras lineales que requiere la lógica, suponiendo que el chip está dispuesto como una única fila larga, sumando el ancho de todas las células empleadas. El área activa (área de células) se calcula multiplicando el ancho total (micras lineales totales) por la altura de la célula, que es igual para todas. Esta área se multiplica por un factor de conexiones de 2.5, para obtener el área activa más conexionado. Este factor de 2,5 toma como base una altura de célula de 100 um y una media de 15 canales horizontales entre filas, con un espaciado entre canales de 10 um de centro a centro (zona de metal), aún así, disminuyendo algunos parámetros, este factor se ha mantenido constante durante varios años. 2.1.3 Pads Pad se puede traducir como almohadilla. En este caso se refiere a las terminales I/O que conectan el núcleo del circuito con las patillas externas del encapsulado. Existen al menos 5 tipos de pads básicos: Entrada, Salida, Bidireccional, Vdd y Vss. Dentro de cada uno de estos tipos hay que definir un tamaño de transistores, y además escoger y diseñar los circuitos de protección para descargas electrostáticas (ver Figura 2.7). IE-0502 Diseño de entradas y salidas para circuitos integrados 17 2.1.3.1 Pads de Vdd y Vss Son muy fáciles de diseñar. Y consiste nada más en conectar la almohadilla de Vdd a la línea de metal del circuito que deberá alimentar el circuito. Y de la misma manera, la almohadilla de Vss, deberá estar conectada a la línea de metal que conectará el circuito a tierra. El mejor diseño es aquel que utiliza dos niveles de metal diferentes para estas dos conexiones. Figura 2.9 Esquema de un diseño de conexión de pads de Vdd y Vss. 2.1.3.2 Pads de salida. Una almohadilla de salida debe tener la suficiente capacidad de manejo para alcanzar tiempos de subida y bajada adecuados de una capacidad de carga dada. Los transistores I/O deben de tener una construcción de transistores pequeños en paralelo, para así aliviar el delay producido por la red RC. A veces se diseñan puertas más largas de lo normal para mejorar las características del voltaje de ruptura. IE-0502 18 Diseño de entradas y salidas para circuitos integrados 2.1.3.3 Pads de entrada. Los transistores MOS tienen resistencias de entrada muy altas, por lo que con 40 100 V se da la ruptura del óxido. Este voltaje para la puerta puede determinarse con la siguiente ecuación: V= I∆t Cg (2.1.3.3-1) Donde: V = voltaje de puerta I = corriente de carga t = tiempo que se tarda en cargar la puerta Cg = capacitancia de la puerta Por esta razón se utiliza una combinación de diodos y resistencias (Protección electrostática) en la entrada de los transistores MOSFET, para limitar este voltaje destructivo. Luego, se diseña un buffer interno, que puede ser construido con longitudes de puerta mayores a las normales, con el fin de curar el voltaje de rompimiento. Le sigue a este una serie etapa de etapas suficientes para manejar la carga interna. 2.1.3.4 Pads bidireccionales. Las almohadillas diseñadas para funcionar bidireccionalmente, esto quiere decir que funcionan tanto de pads de entrada como de salida, tienen un diseño especial que controla la dirección de los datos, ya sea que los recibe o los envía. IE-0502 Diseño de entradas y salidas para circuitos integrados 19 Figura 2.10 Configuración de un pad bidirrecional. Tabla 2.1 Tablas de verdad de compuertas NAND y NOR (Figura 2.10). L/E 0 0 1 1 Data-out x x x(0) x(1) Nand Salida 1 1 ~x(1) ~x(0) ~L/E 1 1 0 0 Data-out x x x(0) x(1) Nor Salida 0 0 ~x(1) ~x(0) Dato High Z High Z x(0) X(1) En la figura 2.10 podemos apreciar la configuración del control de dirección de los datos en un pad bidireccional, de la cual presentamos en la tabla 2.1 la combinación de posibles resultados. De estos resultados destacamos dos que están marcados en color amarillo. Como apreciamos de la figura 2.10, la compuerta nand está conectada al transistor PMOSFET, el cual es un buen pasador de unos, por esto si el dato es un 1 lógico y la señal de L/E se encuentra en cero lógico (Según el funcionamiento de la CPUCR esto significaría que la señal tenga una dirección de salida), entonces la salida será un uno lógico. Contrario a esto es el transistor NMOSFET que es un buen pasador de ceros, por lo que cuando el dato tenga dirección de salida, y sea un cero, la compuerta nor que controla el transistor NMOSFET lo encenderá al darle un uno, y este pasará un cero. En cualquier IE-0502 Diseño de entradas y salidas para circuitos integrados 20 otra de estas situaciones, ambos transistores estarán apagados, por lo que vistos desde afuera presentan una altísima impedancia y así la configuración del pad bidireccional en ese momento será con dirección de entrada. IE-0502 Diseño de entradas y salidas para circuitos integrados CAPÍTULO 3: Diseño de Pads 3.1 Tipos de pads a diseñar para la CPUCR. Figura 3.1 Esquema de los pines a diseñar de la CPUCR En la figura 3.1 se detallan los pads de la CPUCR que se van a diseñar. Estos 40 pads que se deben diseñar se dividieron en cuatro grandes grupos, que son los pads de salidas, los pads de entradas, los bidireccionales y finalmente los pads de voltaje de alimentación y tierra. Cada señal de control o transmisión de datos de la CPUCR fue diseñada por etapas, y las reglas de diseño utilizadas se pueden apreciar en el apéndice A. 21 IE-0502 Diseño de entradas y salidas para circuitos integrados 22 Figura 3.2 Esquema del chip de 40 pines. La figura 3.2 muestra el esquema de los 40 pads, lo que sería físicamente el chip. En esta figura podemos observar que ya hay 4 almohadillas conectadas, y estas son las dos conexiones de tierra (Vss, en un color azul, el más claro) y las del voltaje de alimentación (Vdd, en color morado, más oscuro). Figura 3.3 Esquema de inversores en paralelo diseñados en VLSI IE-0502 Diseño de entradas y salidas para circuitos integrados 23 Las etapas de amplificación de corriente para el manejo de carga, se ven representadas por la figura 3.3 (Esta es una figura con fines ilustrativos, pues debido a las pérdidas por la resistencia de los conductores, ni las líneas de metal ni mucho menos las de polysilicio pueden ser tan largas). En dicha figura tenemos una serie de inversores en paralelo, los cuales constan de un transistor tipo P (parte izquierda, en la que se nota el pozo n) y un transistor de canal n (Parte derecha). Notamos que los inversores más pequeños están en la parte inferior, y estos aumentan al doble del tamaño en la etapa siguiente y así sucesivamente hasta obtener que el último inversor puede entregar la corriente deseada. Figura 3.4 Esquema de diodos para protección electrostática diseñados en VLSI Las protecciones electrostáticas, vistas en la sección 2.1.1.5 Protección de la entrada en el MOSFET, en las que se aprecian las conexiones de los diodos en la Figura 2.7, para proteger el transistor, se verían diseñados en VLSI como se muestra en la Figura 3.4. En dicha figura, vemos la conexión que viene del Pad, luego el diodo izquierdo, que se IE-0502 Diseño de entradas y salidas para circuitos integrados 24 conecta a tierra y el de la derecha a Vdd. La línea de metal del centro sería la conexión a la puerta o a la salida de algún transistor. La figura 3.4 es lo que hay entre cada Pad y el chip interno, visto en la figura 3.2. 3.1.1 Pads de Vdd y Vss (4) Es el que tiene el diseño más sencillo, pues consta solo de conectar el voltaje de alimentación y la tierra alas líneas de metal respectivas, para que se distribuya por todo el circuito. La CPUCR requiere de 4 de estos pads, para dos conexiones de Vdd y dos de Vss (tierra). 3.1.2 Pads de salida (23) La CPUCR requiere que se diseñen las 16 líneas de dirección (A0 – A15), además de las señales de control L/E, M, CB, CM, HALT, INTOK, BD. Para estas se debe de diseñar además de las protecciones respectivas, una etapa que amplifique la corriente, debido a que la CPUCR no está diseñada para manejar cargas de más de 20mA. En la figura 3.5 podemos apreciar la simulación de la etapa de amplificación de corriente diseñada. Dicha etapa fue diseñada para que pudiera entregar más de 60 mA. En este caso, previendo un margen de error, se diseño para que entregara casi 70 mA. Podemos ver en esta figura en la parte de arriba el gráfico de la corriente Ids, y en la parte inferior, se pueden notar dos “curvas”, que representan la entrada (en el color más claro) y la salida. IE-0502 Diseño de entradas y salidas para circuitos integrados 25 Figura 3.5 Simulación de los inversores para pads de salida (V y I) Como podemos notar, la figura 3.6 muestra un poco más claro y en grande, la señal de entrada de la etapa de amplificación (color rojo) y la salida (color morado), en la que podemos apreciar el retraso que se produce en la señal, al pasar por todos los inversores. Se debe destacar que se utiliza un número par de inversores, para que la señal no se invierta y anotamos que dicho “delay” alcanza valores de tiempo de subida de 104 ps y de 94 ps en tiempos de bajada. Dichos valores son excelentes, debido a que no representan ningún problema a la hora de la transmisión de datos, debido a que el reloj de la CPUCR trabaja en milisegundos, y en tal caso llegaría a un máximo de giga segundos, y aún no sería un problema. Esta etapa de amplificación se utilizará también en los pads bidireccionales, para amplificar la corriente cuando el Pad tenga dirección de salida IE-0502 Diseño de entradas y salidas para circuitos integrados 26 Figura 3.6 Simulación del tiempo de retraso de los inversores de salida. 3.1.3 Pads de entrada (5) Se diseñaron los pads de entrada para las señales de RLJ, ~RPS, WAIT, ~INT, ~SDMA. Todas estas señales de control deben pasar por una etapa de inversores basada en el mismo principio que la diseñada para los pads de salida, ya que es un número par de inversores para que la señal no quede invertida, salvo que la corriente que entregan es mucho menor. Esto porque las señales que entran a la CPUCR manejan corrientes en el orden de los microamperios, por esto, la máxima corriente que entregarán los inversores será de 1.483mA. Esto se aprecia en la figura 3.7. Y de la misma forma que se analizó la etapa de amplificación de corriente para los pads de salida, vemos que el patrón se repite IE-0502 Diseño de entradas y salidas para circuitos integrados 27 para el análisis de los pads de entrada. Así vemos como en la figura 3.8 se muestran los tiempos de delay cuando la señal sube de 0 a 1 lógico y baja de 1 a 0 lógico. Estos tiempos corresponden a 18 ps y 7 ps respectivamente. Notamos que es un mucho más rápido debido a que son mucho menos los transistores que componen esta etapa de los pads de entrada. Figura 3.7 Simulación de los inversores para pads de entrada (V y I) IE-0502 Diseño de entradas y salidas para circuitos integrados 28 Figura 3.8 Simulación del tiempo de retraso de los inversores de entrada. 3.1.4 Pads bidireccionales (8) La CPUCR demanda que se diseñe un Pad que funciones en ambas direcciones (entrada / salida), para los datos. Esto porque a veces se requiere que la CPUCR lea un dato proveniente de alguna locación de memoria, y otras veces esta debe escribir algún dato en alguna locación de memoria, y para esto debe poder manejar los pads de datos en ambas direcciones. Estos sería como ya dijimos anteriormente los Datos (D0 – D7). El diseño del Pad bidireccional (ver figura 3.9)es una conjugación del diseño del pad de salida y el de entrada, además de una etapa que se encarga de poder darle la IE-0502 Diseño de entradas y salidas para circuitos integrados 29 dirección deseada al dato, ya sea de salida o de entrada. Se afirma que es una unión de los pads de salida y de entrada debido a que se utilizan las etapas de amplificación de corrientes para manejar las cargas externas, y la etapa para suministrarle a la CPUCR no más de 30 mA, las cuales fueron diseñadas anteriormente. Además de esto se diseñó una etapa de control, que se puede apreciar en la figura 3.10. Figura 3.9 Esquema del diseño de las etapas del Pad bidireccional La etapa de control consta de una compuerta nand que controla un transistor canal p y de una compuerta nor que controla un transistor canal n. Este diseño tiene solo una diferencia fundamental al de la Figura 2.10, ya que la señal L/E es pasada por un inversor a la entrada de la compuerta nand. Esto porque la señal de L/E es un cero lógico para escribir, y el diseño de la Figura 2.10 toma la señal de enable como un uno lógico. IE-0502 Diseño de entradas y salidas para circuitos integrados 30 Figura 3.10 Esquema de Figura 2.10 diseñada en VLSI (Parte derecha del Pad). Para entenderle diseño del control, analizaremos cada elemento y sus respectivas patillas por aparte. Vemos en la Figura 3.10, que las patillas 1, 2 son las entradas de la compuerta nand, siendo 1 la entrada del dato-out y 2 la otra entrada que está conectada a la salida del inversor (8), que entrega la señal ~L/E. Además la patilla 3 que es la salida de la nand está conectada a la puerta del transistor canal p (9). Luego, 4 y 5 son la entradas de la compuerta nor, las cuales son el dato-out y la señal L/E respectivamente. La salida de la nor (6) está conectada a la puerta del transistor de canal n (11). Finalmente, como ya se había dicho la señal L/E fue invertida, entrando por la patilla (7) y saliendo del inversor por la (8). Como vemos la salida de esta configuración de control es por la patilla (10), y se le ha llamado dato, en la simulación que se estudiará a continuación. IE-0502 Diseño de entradas y salidas para circuitos integrados 31 El análisis del diseño de control se muestra en la simulación que se despliega en la Figura 3.11. En donde notamos que la señal nand y nor son iguales, excepto cuando L/E es 1. Así, mientras L/E sea un cero lógico, el pad del que nos referimos es en este caso de salida, y vemos que si las compuertas son iguales, entonces para pasar un uno Figura 3.11 Simulación de Figura 3.10 uno lógico, y apagan el transistor n, dejando la conexión directamente a Vdd, el cual es un excelente uno lógico Y el caso contrario, en la que ambas compuertas dan de salida un uno lógico, esto apagará el transistor p, y encenderá el de canal n, poniendo la conexión a tierra, la que es un excelente cero lógico. Notamos además en la simulación, que cuando L/E es IE-0502 Diseño de entradas y salidas para circuitos integrados 32 uno, la compuerta nand tiene por salida un uno también, y la nor a su vez tiene cero por salida, lo cual apaga los dos transistores, y por ende no hay dato de salida. De la misma situación que se describió anteriormente, podemos sacar una conclusión más, y es la gran impedancia que se verá desde el pad en dirección a estos transistores, la cual asciende a típicamente 100K , y por esto hay otra conexión hecha en el pad para los datos de entrada. IE-0502 Diseño de entradas y salidas para circuitos integrados CAPÍTULO 4: Conclusiones y recomendaciones Luego de haber basado los diseños de los pads, en los arreglos de celda de tipo estándar, se entiende que era la mejor elección, en vista de que brinda mejores posibilidades al acomodar los transistores de acuerdo a este tipo de arreglos. Además es la mejor opción al pensar en la optimización del diseño y da la oportunidad de ubicar cualquier bloque funcional que se requiera, en el espacio que el diseñador escoja. Además del diseño basado en celdas estándar, cada bloque de transistores, ya sea utilizado como inversores para el manejo de corrientes o como compuertas para las etapas de control, fueron diseñados comparándolos con el inversor simétrico, lo que nos dio excelentes resultados en cuánto a que los tiempos de subida y bajada fueran lo más parecido posibles, un factor de suma importancia al trabajar con procesadores. Otro factor de suma importancia, fue diseñar las distintas etapas basándose en el diseño según el esfuerzo lógico, lo cual resultó en unos atrasos de la señal de salida respecto a la señal de entrada del orden de los pico segundos, situación que es indispensable para mejorar la rapidez del procesador. Otro aspecto de suma importancia que fue tomado en cuenta en el diseño, fue buscar el ocupar el mínimo de área física posible, sin que esto afectara el comportamiento de los transistores que conformaron las distintas etapas del diseño, lo cual se realizó 33 IE-0502 Diseño de entradas y salidas para circuitos integrados 34 siguiendo las reglas de diseño para transistores MOSFET, el cual define los mínimos tamaños que puedan tener las conexiones y los transistores, para así garantizar al máximo la optimización del espacio a utilizar. Sin embargo, el área total no fue calculada, esto porque aunque se diseñaron todos los pads que requería la CPUCR, estos nunca fueron conectados en la periferia del diseño de la CPUCR, ya que esta no se contó con un software de computadora que funcionara correctamente, así que no se tenía ninguna referencia. De hecho, se recomienda tener los programas en las computadoras funcionando correctamente, ya que se perdió mucho tiempo tratando de hacerlos funcionar, y los diseños se podría optimizar aún más con las herramientas adecuadas. Otra recomendación sería utilizar programas que los profesores conozcan bien, o al menos en los que se pueda facilitar todo tipo de información acerca de él, ya que son herramientas muy poderosas, y se podrían lograr grandes cosas con ellos, pero si no se saben utilizar, no se explotará la máxima capacidad de los estudiantes a la hora de diseñar, puesto que no solo el tiempo perdido no se recupera, sino que el programa queda subutilizado. Luego de pasar por varios intentos con algunos softwares de computadoras para el diseño de circuitos, se logró hacer funcionar bien el HSPICE, el cual parece será una herramienta muy valiosa para futuros diseños, así que en el apéndice del proyecto, se IE-0502 Diseño de entradas y salidas para circuitos integrados 35 resumió toda la información que se obtuvo sobre este programa y su funcionamiento básico, para que quien lo llegue a utilizar en el futuro, disponga de una rápida guía de referencia sobre HSPICE y sus funciones básicas, además de los archivos que necesita para funcionar y la forma en que se debe programar, para que de esta manera disponga de todo el tiempo posible, para simular múltiples soluciones a algún problema y así obtener el mejor diseño posible. IE-0502 Diseño de entradas y salidas para circuitos integrados BIBLIOGRAFÍA Libros: 1. Schilling, Donald.L. “Circuitos Electrónicos Discretos e Integrados”, Tercera edición, Mc Graw Hill, España, 1993. 2. Rabaey, “Principles of CMOS Design”, Tercera edición, Mc Graw Hill, USA, 1993. Páginas web: 3. “Los transistores de efecto de campo”, http://www.cienciasmisticas.com.ar/electronica/semi/fet/ 4. “Programa microwind para diseño con transistores MOSFET” http://www.microwind.org/ 5. “¿De donde obtengo modelos PMOS y NMOS para HSPICE?”, http://www.mosis.org/ 36 IE-0502 Diseño de entradas y salidas para circuitos integrados APÉNDICES HSPICE Luego de que varios programas de simulación de circuitos fallaran, y no se pudieran utilizar por distintas razones, estudiamos HSPICE. Esta es una herramienta muy poderosa, en la que se debe programar el circuito, lo cual se logra indicándole al programa cuales son todos los nodos del diseño y a que están conectados. Luego, se incluyen los archivos de modelos, estos deben contener parámetros y características de los elementos que se van a utilizar, ya sea transistores, diodos o algún otro elemento del que se requiera tener una descripción. A continuación, se presenta la figura A.1 seguido del programa para HSPICE de dicho circuito. Figura A.1 Circuito de inversores programado en HSPICE 37 IE-0502 Diseño de entradas y salidas para circuitos integrados 38 *** * FILE: etapa_amp.sp .param supply=3.30 .options post scale=0.09E-6 .options probe post csdf .global vdd gnd *Lambda = 0.09E-6 *Con esto crea archivo.tr0 .inc 'ee313.mod' *Debe incluir un archivo con los modelos $$process .SUBCKT inv in out WP=12 LP=2 WN=4 LN=2 M_0 out in Gnd Gnd NMOS W=WN L=LN GEO=0 M_1 out in Vdd Vdd PMOS W=WP L=LP GEO=0 .ENDS $ inv *El circuito de arriba está descrito entre SUBCKT y ENDS. Describe 2 transistores *M_0 y M_1, uno NMOS y otro PMOS, el formato es: *NOMBRE DRAIN GATE BASE BULK {PMOS O NMOS} WIDTH LENGTH GEOMETRY *LOS NODOS SON DEFINIDOS CON UN NOMBRE, ASÍ QUE TIENE QUE PONERLE NOMBRE A CADA NODO DEL CIRCUITO E INDICARLE A HSPICE ADONDE VAN LAS CONEXIONES. *Define V7 como Vdd, de 3.3V V7 vdd gnd 3.3V Vin net_1 gnd pulse 0V 'Supply' 0ns 200ps 200ps 5ns 10ns *FUENTE DE VOLTAJE: *NOMBRE NODO+ NODO- PULSO DE 0 VOLTIOS HASTA 'SUPPLY' VOLTIOS, DELAY DE *0ns, RISE TIME Y FALL TIME DE 200ps, TIEMPO EN ALTO DE 3ns Y PERIODO TOTAL DE *6ns. Xinv net_2 net_3 inv WP=12 WN=4 R_0 net_1 net_2 30K Xinv_1 net_3 net_4 inv WP=24 WN=8 Xinv_2 net_4 net_5 inv WP=48 WN=16 Xinv_3 net_5 net_6 inv WP=96 WN=32 R_1 net_6 gnd 120 *XINV_X SON INSTANCIAS DE INVERSORES, como apreciamos, M_0 y M_1 definen un inversor base, que luego toma distintos nombres (Xinv Xinv_1 Xinv_2…) para diferentes tamaños de inversores, y los conecta escribiendo en el programa a donde está conectado cada nodo (ver Figura A.1) IE-0502 Diseño de entradas y salidas para circuitos integrados .probe tran V(net_1) V(net_1) V(net_6) 39 I(R_1) *Variables que desea observar .tran 0.5ns 20ns *Define resolución de 0.5ns y duración total de 20ns .GLOBAL gnd vdd .END *** Para conectar la fuente al primer inversor, lo que debe hacer es usar el mismo nodo: -V_0 net_1 gnd pulse 0V 'Supply' 0ns 200ps 200ps 3ns 6ns Esta línea lleva un pulso de 0 a ´supply´ entre los nodos gnd y net_1. Ahora se tiene que poner la duración total de la simulación: .tran 5ps 6ns Eso indica un análisis transiente de 6ns, con 5ps de resolución, o sea va de 5ps en 5ps. Ahora bien, si el pulso dura más de 6ns, se repite... o sea con fijar un periodo más corto que la duración, se tiene un reloj, seteando un periodo igual que el tiempo de simulación, se tiene un único pulso. Luego si se quiere ver el voltaje en el nodo net_4, o la corriente que pasa por la resistencia (Solo se puede medir la corriente que pasa por algún elemento eléctrico) se escribe: .probe step = v(net_4) I(R_1) IE-0502 Diseño de entradas y salidas para circuitos integrados 40 También se debe incluir un archivo que contenga las características y propiedades d e los elementos a utilizar (Transistores PMOS NMOS, diodos, etc.). Esto se puede conseguir fácilmente en Internet (ver bibliografía) Finalmente al correr la simulación: Hspice etapa_amp.sp Se obtiene un archivo.tr0, el cual contendrá toda la información en filas y columnas, del análisis transiente del circuito. Para ingresar comentarios basta con escribir “ * ” al inicio del comentario. Esto se debe repetir en cada línea utilizada para comentario. La simulación del programa expuesto anteriormente se graficó en Excel y dio resultados excelentes, como podemos apreciar el circuito es muy rápido y no se detalla un retraso problemático entre la entrada y la salida. Figura A.2 Simulación del circuito de la figura A.1 IE-0502 Diseño de entradas y salidas para circuitos integrados 41 Podemos destacar de la simulación, que la máxima corriente entregada por el transistor PMOS de W = 96, es una corriente de 6.64 mA. Cabe destacar que se realizó otra simulación agregándole un inversor más al circuito original, y se comprobó que para el transistor agregado PMOS, de W = 192 (El doble de la etapa anterior) se obtuvo una corriente máxima de 12 mA. Con esto podemos notar como la corriente guarda una relación con la ganancia, así de esta manera, se puede probar diferentes tamaños de transistores, siguiendo siempre los criterios de diseño, hasta obtener la corriente que se necesita para alimentar la carga. Finalmente, otro factor a tomar en cuenta es la referencia de lambda, ya que este depende de la construcción física de los transistores y por procesos de fabricación y distintos parámetros obtiene diferentes valores IE-0502 Diseño de entradas y salidas para circuitos integrados ANEXOS Reglas de diseño para transistores MOSFET (Diseñados en Microwind) 42 IE-0502 Diseño de entradas y salidas para circuitos integrados 43 IE-0502 Diseño de entradas y salidas para circuitos integrados 44 IE-0502 Diseño de entradas y salidas para circuitos integrados 45 IE-0502 Diseño de entradas y salidas para circuitos integrados 46 IE-0502 Diseño de entradas y salidas para circuitos integrados 47