introduccion a los circuitos integrados
DESCRIPTION
guia 3TRANSCRIPT
Des
ign Introducción a los Circuitos
IntegradosVictor GrimblattManaging DirectorSynopsys Chile R&D Center
© 2005 Synopsys, Inc. (3)
Circuito Integrado
• Circuito: Conjunto de conductores que recorre una corriente eléctrica, y en el cual hay generalmente intercalados aparatos productores o consumidores de esta corriente.
• Circuito integrado: Combinación de elementos de circuito miniaturizados que se alojan en un único soporte o chip, generalmente de silicio.
Fuente: Diccionario de la Real Academia Española (www.rae.es)
© 2005 Synopsys, Inc. (4)
Circuito Integrado
• Circuito integrado: Conjunto de transistores y circuitos eléctricos construidos sobre un mismo cristal. Los circuitos integrados actuales no miden más de un centímetro de largo y pueden contener millones de transistores.
Fuente: Diccionario de la Real Academia Española (www.rae.es)
© 2005 Synopsys, Inc. (5)
Algunas Definiciones
• MSI: Medium Scale Integration, tipo de integración de chip capaz de albergar entre 10 y 500 transistores.
• LSI: Large Scale Integration, tipo de integración de chip capaz de albergar entre 1.000 y 10.000 transistores.
• VLSI: Very Large Scale Integration, tipo de integración de chip capaz de albergar sobre 100.000 transistores.
• ULSI: Ultra Large Scale Integration, tipo de integración de chip capaz de albergar sobre 10.000 circuitos.
• Hoy en día VLSI y ULSI se confunden
© 2005 Synopsys, Inc. (7)
Algunas Definiciones
• Die Size: Describe erróneamente el tamaño menor de los transistores en el chip. Corresponde al largo y ancho del circuito en la oblea de silicio.
• ASIC: Application Specific Integrated Circuit, circuito diseñado para una aplicación específica en oposición a los circuitos de propósito general como los microprocesadores. El uso de ASICs como componentes en los dispositivos electrónicos permite mejorar el rendimiento, reducir el consumo de potencia, mejorar la seguridad y reducir los costos .
© 2005 Synopsys, Inc. (8)
Algunas Definiciones
• Síntesis lógica es el procesos por el cual las descripciones algorítmicas de circuitos son convertidas en un diseño de hardware. Ejemplos de este proceso incluyen la síntesis de Lenguajes de Descripción de Hardware (HDL) tales como VHDL y Verilog. El resultado de un proceso de síntesis puede ser un PAL, un FPGA o un ASIC.
• Compilador de silicio es un software que a partir de una especificación del usuario genera un circuito integrado.
© 2005 Synopsys, Inc. (9)
El Primer Computador
The BabbageDifference Engine(1832)25,000 partscost: £17,470
© 2005 Synopsys, Inc. (12)
El Primer Circuito Integrado
Lógica bipolar1960
ECL 3-input GateMotorola 1966
© 2005 Synopsys, Inc. (15)
Ley de Moore
• En 1965, Gordon Moore, co-fundador de Intel observó que el número de transistores en un chip se duplicaba cada 18 a 24 meses.
• A partir de esta observación predijo que la tecnología de semiconductores duplicaría su efectividad cada 18 meses.
© 2005 Synopsys, Inc. (16)
Ley de Moore
161514131211109876543210
1959
1960
1961
1962
1963
1964
1965
1966
1967
1968
1969
1970
1971
1972
1973
1974
1975
LOG 2 O
F TH
E N
UM
BER
OF
CO
MPO
NEN
TS P
ER IN
TEG
RA
TED
FU
NC
TIO
N
Fuente: Electronics, 19 Abril, 1965
© 2005 Synopsys, Inc. (18)
Número de Transistores
1,000,000
100,000
10,000
1,000
10
100
11975 1980 1985 1990 1995 2000 2005 2010
808680286
i386i486
Pentium®Pentium® Pro
K1000 millones 1000 millones
de transistoresde transistores
Fuente: IntelFuente: IntelProyectadoProyectado
Pentium® IIPentium® III
© 2005 Synopsys, Inc. (19)
Ley de Moore en Microprocesadores
80088080
8085 8086286
386486 Pentium® proc
P6
0.001
0.01
0.1
1
10
100
1000
1970 1980 1990 2000 2010Año
Tran
sist
ores
(MT)
Duplicación en 1.96 años!
4004
El número de transistores en microprocesadores se duplica cada dos años
Fuente: IntelFuente: Intel
© 2005 Synopsys, Inc. (20)
Crecimiento del Die Size
40048008
80808085
8086 286386
486 Pentium ® procP6
1
10
100
1970 1980 1990 2000 2010
Die
siz
e (m
m)
~7% crecimiento por año~2X crecimiento en 10 añosDie size crece 14% para satisfacer la ley de Moore
Fuente: IntelFuente: Intel
© 2005 Synopsys, Inc. (21)
Frecuencia
P6Pentium ® proc
48638628680868085
8080800840040.1
1
10
100
1000
10000
1970 1980 1990 2000 2010
Frec
uenc
ia (M
hz)
La frecuencia en microprocesadores se duplica cada 2 años
Se duplica cada2 años
Fuente: IntelFuente: Intel
© 2005 Synopsys, Inc. (22)
Disipación de Potencia
P6Pentium ® proc
486386
2868086
808580808008
4004
0.1
1
10
100
1971 1974 1978 1985 1992 2000
Pote
ncia
(Wat
ts)
La potencia de los microprocesadores continua creciendo
Fuente: IntelFuente: Intel
© 2005 Synopsys, Inc. (23)
Densidad de Potencia
400480088080
8085
8086
286 386486
Pentium® procP6
1
10
100
1000
10000
1970 1980 1990 2000 2010
Den
sida
d de
Pot
enci
a (W
/cm
2)
Plato caliente
ReactorNuclear
La densidad de potencia es muy alta para mantener la juntura a baja Tº
Fuente: IntelFuente: Intel
© 2005 Synopsys, Inc. (24)
Sistema Inalámbrico
digitalanalógico
AD FSM
phonebook
RTOS
ARQ
MAC
Control
Coders
FFT Filtros
Algoritmoscableados
(nivel palabra)
Lógica (nivel bit)
Bandabase y circuitos RF
Algoritmos de comunicación Protocolos
Lógica cableada
Analógico
Core DSP CorePUna amplia gama de componentes como construimos esto???
© 2005 Synopsys, Inc. (27)
¿Qué es un SoC?
Un chip diseñado con la funcionalidad “completa” de un
sistema que incorpora una mezcla heterogénea de arquitecturas de
proceso y de computación
© 2005 Synopsys, Inc. (28)
¿Qué es un SoC?
• Mezcla de CPUs, memoria, y periféricos en un chip
• Mezcla de bloques sintetizados y bloques custom (macros hechas por hardware)
• Para productos con restricciones de costo y time-to-market
© 2005 Synopsys, Inc. (29)
¿Qué es un SoC?
• Implicancias metodológicas: Diseño de bloques IP usando estándares
estrictos para creación y reusabilidad Uso de definiciones estándares de interfaz Combinación de alto nivel – “estilo ASIC” –
usando flujos y herramientas estándares
© 2005 Synopsys, Inc. (30)
SoC es Del sistema al silicio en un
time-to-market rápido.
...y un proceso.
System Design
SoC Integration
Fabrication
Qualification
IP Creation
SoC
Requirements
System controland functionality
Interaction with other systems
… un producto ... Soluciones para aplicaciones específicas
que implementan sistemas enteros
general purpose processor
processor busDRAM
special function processor
NVM(program)
NVM(data) peripheral bus
Analog / Mixed signal
communicationsperipherals
customerspecific
DMAbus interface
ApplicationsAPIs
Device Drivers
Program and data storage
Interaction with real world
© 2005 Synopsys, Inc. (31)
Miniaturización
Consumerizatio
n
Impulso de SoC
Dos fuerzas trabajan en conjunto en la industria electrónica:
Los proveedores de sistemas deben diferenciar productos a través de aplicaciones de
software.
Fabricantes de semiconductores deben cubrir los costos de
fabricación a través de sistemas de valor agregado.
El dinamismo del mercado requiere:
• time-to-market rápido• Bajo costo• Curva de aprendizaje rápida
Geometrias pequeñas permiten:
Integración de alto rendimiento
© 2005 Synopsys, Inc. (32)
Desafíos del Diseño
Funcionalidad + Testabilidad Retraso en cableado Gestión de potencia Software embebido Integridad de las señales Efectos RF Chip híbridos Packaging Limites físicos
1000
1,000,000,000,000
Núm
ero
de tr
ansi
stor
es
© 2005 Synopsys, Inc. (33)
Diseño de Chips – CAD
Industria EDA
Sistemas electrónicos
Foundries
Mundo real
Industria de semiconductores
© 2005 Synopsys, Inc. (34)
Mayor Complejidad de Dispositivos y Contexto
• Crecimiento exponencial de la complejidad de los dispositivos – ley de Moore.
• Crecimiento de la complejidad de los sistemas en los cuales se utilizan los dispositivos (ej. celular).
• Crecimiento de la productividad en diseñoC
omplejidad
Hay exponencialmente más transistores
© 2005 Synopsys, Inc. (35)
Efectos Submicrón
• Las geometrías pequeñas causan diversos efectos que eran ignorados en el pasado Capacitancias de acoplamiento Integridad de señales Resistencia Inductancia
Efec
tos
DSM
El diseño de cada transistor es más difícil
© 2005 Synopsys, Inc. (36)
Heterogeneidad en el Chip
• Gran diversidad de elementos en el chip Procesadores Software Memoria Análogo
Más transistores hacen cosas diferentes
Heterogeneidad
© 2005 Synopsys, Inc. (37)
Fuerte Presión del Mercado
• Ventana de diseño más pequeña• Menor tolerancia a revisiones
Mayor complejidad, mayor riesgo, mayor variedad,ventana más pequeña
Time-to-money
© 2005 Synopsys, Inc. (38)
Productividad del Diseño
Dominioespecífico
Comportamental
RTL
Puerta
Transistor
Puertas/semanaDataquest
8K – 12K
2K – 10K
1K – 2K
100 – 200
10 – 20
© 2005 Synopsys, Inc. (39)
Flujo de Diseño
Floorplan
SíntesisSíntesis lógica
Test (SCAN/JTAG)Reducción de potencia
Síntesis datapath
CWLM
Lib
DW
Restricciones
Verificación formal
Verificación puertas
Testbench
Verificación RTL
ATPG
Código RTLSpec
Selección de arquitectura
RTL
Chequeo código
Diseño físico
Análisis estático del
tiempo
Netlist puertas
Información posicionamient
o
GDSII
© 2005 Synopsys, Inc. (40)
Flujo SimplificadoHDL
Síntesis RTL
Netlist
Optimización lógica
Netlist
Diseño físico
Layout
Diseño manual Generador de módulos
Librería
© 2005 Synopsys, Inc. (41)
Diseño Manual
• Nivel compuerta (100 compuertas / semana)• Nivel transistor (10 – 20 compuertas / semana)• Excesivamente caro (costo y tiempo)• Usado para
Analógico Biblioteca de compuertas Datapath en diseños de alto rendimiento
© 2005 Synopsys, Inc. (42)
Generador de Módulos
• Generadores parametrizables de layout• Generalmente usados en
Memorias PLA Register files
• Ocasionalmente usados para Multiplicadores Datapath de propósito general Datapaths en diseños de alto rendimiento
© 2005 Synopsys, Inc. (43)
Biblioteca
• Contiene por cada celda Información funcional Información temporal Información física (área) Características de potencia Modelos de simulación
© 2005 Synopsys, Inc. (44)
HDL a Nivel RTL
module foobar (q,clk,s,a,b); input clk, s, a, b; output q;req q; reg d;always @(a or b or s) // mux begin if(!s) d = a; else if(s) d = b; else d = ‘bx end //always
always @(clk) // latch begin if(clk == 1) q = d; else if(clk !== 0)) q = ‘bxb; end //alwaysEnd module
© 2005 Synopsys, Inc. (45)
RTL
• Implícitamente estructural Los registros y su interconectividad están
definidos El comportamiento clock-to-clock está definido Solo la lógica de control de transferencia es
sintetizada• Mejoras posibles
Asignación automática de recursos
© 2005 Synopsys, Inc. (46)
Sintesis RTL
module foobar (q,clk,s,a,b); input clk, s, a, b; output q;req q; reg d;always @(a or b or s) // mux begin if(!s) d = a; else if(s) d = b; else d = ‘bx end //always
HDL
Netlist
SintesisRTL
c lk
qd
a
b
s
© 2005 Synopsys, Inc. (47)
Optimización Lógica
• Realiza transformaciones y optimizaciones Transformación grafos estructurados Transformaciones booleanas Mapeo en una librería física
© 2005 Synopsys, Inc. (48)
Diseño Físico
• Transforma circuitos secuenciales en circuitos físicos Posiciona componentes Rutea Transforma en mascaras
• O FPGA Posiciona tablas look-up Rutea
© 2005 Synopsys, Inc. (51)
Optimización Lógica Combinatoria
• Entradas Red booleana inicial Caracterización temporal del módulo
• Tiempo de llegada de entradas• Factores de carga
Objetivos de optimización• Tiempos requeridos• Superficie
Descripción librería a usar• Salida
Netlist con área mínima que cumple con los tiempos requeridos
© 2005 Synopsys, Inc. (52)
Flujo de Diseño RTL
Netlist
Netlist
BibliotecaOptimización
lógica
Independientetecnología
Dependientetecnología
Opt. Lógica2 niveles
Opt. Lógicamultinivel
Biblioteca
© 2005 Synopsys, Inc. (53)
Optimización 2 Niveles
• Eficiente y madura• Fundamentos teóricos para la optimización
lógica multinivel• Usada directamente para PLA y PLD• Usada como subrutina en optimización multinivel• “Logic Minimization Algorithms for VLSi
Synthesis”, Robert King Brayton, Alberto L. Sangiovanni-Vincentelli, Curtis T. McMullen, Gary D. Hachtel, Agosto 1984
© 2005 Synopsys, Inc. (54)
Nueva Metodología
• Divide la optimización lógica en dos problemas Optimización independiente de la
tecnología• Determina la estructura lógica general• Estima costos independientes de la tecnología
Optimización dependiente de la tecnología• Mapea en puertas de la biblioteca
© 2005 Synopsys, Inc. (55)
Optimización Independiente de la Tecnología
• Minimiza las funciones lógicas (2 niveles)• Busca subexpresiones comunes• Sustituye una expresión dentro de la otra• Factoriza funciones simples• f=ac+ad+bc+bd+a!e (suma de productos)
=(a+b)(c+d)+a!e (forma factorizada)
© 2005 Synopsys, Inc. (56)
Técnicas de Optimización
•Independientes Two-level minimization Selective collapsing Algebraic
decomposition Restructuring for
timing Redundancy removal Transduction Global-flow
•Dependientes Tree covering Load buffering Rule-based mapping Signature analysis Inverter phase
assignment Discrete sizing
© 2005 Synopsys, Inc. (57)
Síntesis Comportamental
HDL
Síntesis RTL
Netlist
Optimización lógica
Netlist
Diseño físico
Layout
Librería
Síntesis ComportamentalHDL
© 2005 Synopsys, Inc. (58)
Nivel Comportamental
• Una descripción comportamental es siempre funcional
• Relaciones temporales son expresadas como precedencias
• Una micro arquitectura completa es sintetizada a partir de una descripción comportamental
© 2005 Synopsys, Inc. (59)
Elementos Claves
• Asignación automática de recursos• Ordenamiento cronológico (scheduling)
© 2005 Synopsys, Inc. (60)
Características Sintesis Comportamental
• Ordenamiento de operaciones (scheduling)
• Inferencia de memoria• Asignación de recursos• Uso de componentes pipeline• Lazos de pipeline• Generación automática de autómatas de
estado finito para control
© 2005 Synopsys, Inc. (61)
Beneficios Diseño Comportamental
• Abstracción Especifica funcionalidad en vez de
implementación Simulación rápida Diseño a nivel sistema Mejor calidad de resultado Generación automática de FSM
© 2005 Synopsys, Inc. (62)
Estado del Arte
• Síntesis RTL madura y usada para diseño de chips
• Síntesis comportamental menos madura Usada originalmente en diseño de DSP Creciente uso en video, networking, y diseño ASIC No ha crecido lo suficiente para desplazar síntesis
RTL
© 2005 Synopsys, Inc. (64)
Síntesis de Sistemas
Diseños son heterogéneosy atraviesan los dominios del
control y flujo de datos enforma arbitraria
Diseños deben ser modeladosen lenguajes estándares y gráficos con consistencia
entre dominios y niveles deabstracción
HWDiseño de altos niveles deabstracciónReuso debe ser considerado aaltos niveles de abstracciónNecesita mezclar C, C++, Verilog y VHDL
SWIntegrado antes en el procesode diseñoEvaluación rápida de particiónHW/SWReuso de código debe ser considerada
© 2005 Synopsys, Inc. (65)
Estado de la Sintesis de Sistemas
• Ha fallado aun más que la síntesis comportamental Más inversión que para comportamental Menos retorno que comportamental
• Problemas Cual es el lenguaje de diseño? Partición HW/SW Generación automática de HW/SW a partir de la
descripción