Diseño de Circuitos Integrados Digitales

Anuncio
Plan 95 Adecuado
ASIGNATURA:
DISEÑO DE CIRCUITOS INTEGRADOS
DIGITALES
DEPARTAMENTO:
ELECTRÓNICA
ÁREA:
ELECTRÓNICA
CODIGO: 95-0407
CLASE: Electiva de
Especialidad.
HORAS SEM.:
4 HS.
HORAS / AÑO: 64 HS.
Fundamentación:
Las técnicas digitales han evolucionado desde sus comienzos, en los cuales la síntesis de los circuitos
digitales era realizada de forma manual por medio de la resolución de diagramas manipulado así algunas
centenas de compuertas, hasta hoy en día donde los circuitos digitales poseen cientos de millones de
componentes, lo cual hace imposible la síntesis manual de los mismos.
Durante las últimas dos décadas han aparecido un conjunto de herramientas de software conocidas como
EDA (Electronic Design Automation) que permiten la manipulación de circuitos digitales de la complejidad
mencionada.
En este contexto, actualmente es indispensable que un ingeniero de diseño de circuitos integrados
digitales tenga pleno conocimiento de dichas herramientas, no sólo de su utilización, sino también de los
fundamentos teóricos que las rigen de forma tal de poder lograr el diseño y la implementación de circuitos
de dicha complejidad.
Con este objetivo, el curso hace un fuerte uso de las herramientas de EDA modernas utilizadas en el diseño
digital moderno.
Objetivos:
El objetivo de la materia es que el alumno aprenda a diseñar, simular y verificar sistemas digitales de alta
complejidad utilizando las herramientas modernas del diseño digital.
Se presentan temas de vanguardia en electrónica digital divididos en distintas capas de diseño.
Esta asignatura brinda un marco apropiado para que los alumnos participen en proyectos de diseño de
sistemas digitales utilizando las herramientas de software actuales. El temario se desarrolla desde los
niveles de abstracción más bajos a los más altos formando al alumno en todas las etapas del diseño digital.
Programa sintético:
•
•
•
•
•
•
Repaso de codificación HDL
Diseño a nivel transistor
Diseño a nivel de compuertas
Verificación de sistemas digitales
Design for testability
Diseño físico
Programa analítico:
Unidad 1: Repaso de codificación HDL
Lenguajes de descripción de hardware: VHDL, Verilog, System Verilog. Características. Sintaxis de los
lenguajes: operadores, tipos de datos, asignaciones concurrentes y secuenciales, sentencias de control de
programa, procesos, instanciación de componentes. Ejemplos de descripción de circuitos.
Unidad 2: Diseño a nivel transistor (Transistor Level)
La compuerta CMOS estática. Rise-time, fall-time, tiempo de propagación. Dimensionamiento de
transistores en función de las características dinámicas de la compuerta. Capacidades parásitas de la
compuerta. Transmission gates. Ruido en una compuerta. Leakage. Potencia estática y dinámica. Bloques
aritméticos. Diseño de latches y flip-flops basados en transmission gates. Características de latches y flipflops: setup time, hold time, recovery time, removal time. Parásitos en circuitos digitales. Técnicas de
extracción de parásitos. Modelización de celdas. Worst case – Best case. Empleo de herramientas de
software para modelado de celdas. VHDL-VITAL y Verilog para modelado.
Unidad 3: Diseño a nivel de compuertas (Gate Level)
Static timing analysis para circuitos sincrónicos. Statistical timing analysis. BC-WC, On chip variation (OCV).
Influencia del ruido en la temporización. Timing análisis basado en restricciones (design constraints). Clock
skew. Diseño de árboles de distribución de reloj y de distribución de reset. Árboles de cero skew y de skew
positivo. Impacto de variaciones de proceso en el skew. Uso de DLLs para minimización de skew. Clock
jitter. Diseños con múltiples dominios de clocks. Sincronizadores y arbitradores. Metaestabilidad. Fallos de
sincronización. MTBF. Entradas asincrónicas. Síntesis lógica. Conversión RTL a netlist. El método de esfuerzo
lógico y based-gain síntesis. Wireload model y Physical Layout Estimation model (PLE). Empleo de
herramientas de software para síntesis lógica. Estimación de potencia. IR-drop estimation. Técnicas de
reducción de potencia: minimización transiciones, clock gating, frequency scaling, voltaje scaling, power
gating.
Unidad 4 : Verificación de sistemas digitales
Observabilidad y controlabilidad. Cobertura de código. Verificación funcional. Assertion based verification.
Introducción a System Verilog. Logic Equivalence Check (LEC).
Unidad 5: Design for testability (DFT)
Modelos de fallas: SA-0, SA-0. Iddq, Issq, Iddt. Tipos de cadenas de scan: Muxed y LSSD. DFT rules. BIST: la
arquitectura STUMPS. Técnicas de generación de pseudo-ruido: LFSR y CAR. In system Debugging. Test
funcionales. Técnicas Ad-Hoc.
Unidad 6: Diseño físico
Floorplanning. Placement. Routing. Global and detailed routing. Clock tree synthesis. Métodos de
extracción de parásitos para para las distintas etapas de diseño: placement, routing, signoff. Dynamic
timing closure. Dynamic power closure. Noise analysis. Coeficientes de correlación. Signoff checks.
Articulación Vertical y Horizontal con otras materias:
Articulación vertical
Se ha buscado interrelacionar conocimientos con otras asignaturas, buscando realizar implementaciones
reales de circuitos digitales estudiados en otras asignaturas. Por ejemplo, a lo largo de los tres trabajos
prácticos se realiza la implementación física de un pequeño microprocesador intentando así aplicar los
conceptos adquiridos a lo largo de la materia y los adquiridos en otras, como ser:
• Lenguajes descriptores de hardware (Técnicas Digitales I)
• Implementación de un microprocesador (Técnicas Digitales II)
• Aplicación de conocimientos de circuitos electrónicos para la realización de la implementación
física del circuito (Electrónica Aplicada I)
Articulación horizontal
En este aspecto los temas son complementarios a los conocimientos impartidos en la materia “Introducción
al Diseño de VLSI”.
Evaluación:
Modalidad (tipo, cantidad, instrumentos)
Examen Parcial al promediar el cuatrimestre, 3 Trabajos Prácticos y Examen final.
Requisitos de regularidad
Asistencia al 75% de las clases, entrega en fecha de los trabajos prácticos y aprobación de un examen
parcial a la mitad del curso.
Requisitos de aprobación
Examen final.
Cronograma estimado de clases:
Unidad Temática
Repaso de codificación HDL
Diseño a nivel de transistor
Diseño a nivel de compuertas
Verificación
de
sistemas
digitales
Design for testability
Diseño físico
Duración en hs. cátedra
10
10
14
10
10
10
Trabajos Prácticos:
Trabajo Práctico 1: Descripción HDL de un diseño.
Se dará al alumno las especificaciones funcionales que un diseño debe cumplir y en función de tales
especificaciones el alumno deberá diseñar a nivel RTL un circuito lógico que cumpla las mismas.
Trabajo Práctico 2: Síntesis lógica.
Utilizando las herramientas de síntesis disponible el alumno procederá a realizar la síntesis lógica del
circuito del Trabajo Práctico 1. Deberá cumplir con las especificaciones temporales del circuito para lo cual
deberá determinar las design contraints necesarias para realizar la síntesis.
Trabajo Práctico 3: Diseño de un sistema digital completo.
A partir de las especificaciones de un sistema de mediana complejidad el alumno realizará el diseño a nivel
de arquitectura y micro arquitectura, el modelo HDL del sistema, la verificación lógica. Procederá a la
síntesis del diseño y al agregado de la lógica necesaria para testing. Por último, procederá a la
implementación física del diseño y realizará las simulaciones post place and route necesarias para verificar
la correcta implementación del circuito.
Bibliografía:
Obligatoria
L. Wang, Y. Chang, K. Cheng, “Electronic Design Automation: Synthesis, Verification and Test”. Elsevier
2009.
Neil Weste, David Harris, "CMOS VLSI Design: A Circuits and System Perspective." 3rd Ed. Addison Wesley
2005.
Michael Bushnell, Vishwani Agrawal, "Essentials of Electronic Testing for Digital, Memory and Mixed Signal
VLSI Circuits", Kluwer Academic Publishers 2002.
Himanshu Bhatnagar, "Advanced ASIC Chip Synthesis Using Synopsys Tools", 2nd Ed. Kluwer Academic
Publishers 2002.
Sutherland, B. Sproull. D. Harris, “Logical Effort: Designing Fast CMOS Circuits”. Morgan Kaufmann
Publishers, 1999.
D. Kinniment, “Synchronization and Arbitration in Digital Systems”, John Wiley and Sons, 2007.
R. Baker, H. Li, D. Boyce, “CMOS Circuit Design, Layout, and Simulation”, IEEE Press John Wiley and Sons,
1998.
J. Rabaey, A. Chandrakasan, and B. Nikolic , “Digital Integrated Circuits”, 2nd Ed, Prentice-Hall.
Complementaria
Gi-Joon Nam, Jason Cong, “Modern Circuit Placement: Best Practices and Results“. Springer 2007.
Naveed Sherwani, "Algorithms for VLSI Physical Automation", 3rd Edition. Kluwer Academic Publishers
2002.
Thucydides Xanthopoulos, "Clocking in Modern VLSI Systems", Springer 2009.
Acosta, A. Barriga, M. Bellido, J. Juan, M. Valencia, “Temporización en Circuitos Digitales CMOS”,
Marcombo 2000.
Correlativas:
Para cursar:
Cursada: Electrónica Aplicada I
Técnicas Digitales II
Aprobada:
Para rendir:
Aprobada: Electrónica Aplicada I
Técnicas Digitales II
Descargar