Download Introducción a los Circuitos Integrados

Document related concepts
no text concepts found
Transcript
Design
Introducción a los Circuitos
Integrados
Victor Grimblatt
Managing Director
Synopsys Chile R&D Center
Circuito Integrado
© 2005 Synopsys, Inc. (2)
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. (3)
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. (4)
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. (5)
Die
die
wafer
© 2005 Synopsys, Inc. (6)
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. (7)
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. (8)
El Primer Computador
The Babbage
Difference Engine
(1832)
25,000 parts
cost: £17,470
© 2005 Synopsys, Inc. (9)
ENIAC – El Primer Computador Electrónico (1946)
© 2005 Synopsys, Inc. (10)
El Primer Transistor
Bell Labs, 1948
© 2005 Synopsys, Inc. (11)
El Primer Circuito Integrado
Lógica bipolar
1960
ECL 3-input Gate
Motorola 1966
© 2005 Synopsys, Inc. (12)
Microprocesador 4004 - Intel
1971
1000 transistores
1 MHz operación
© 2005 Synopsys, Inc. (13)
Microprocesador Pentium IV - Intel
© 2005 Synopsys, Inc. (14)
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. (15)
1959
1960
1961
1962
1963
1964
1965
1966
1967
1968
1969
1970
1971
1972
1973
1974
1975
LOG2 OF THE NUMBER OF
COMPONENTS PER INTEGRATED FUNCTION
Ley de Moore
© 2005 Synopsys, Inc. (16)
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
Fuente: Electronics, 19 Abril, 1965
Ley de Moore
© 2005 Synopsys, Inc. (17)
Número de Transistores
1000 millones
de transistores
K
1,000,000
100,000
10,000
1,000
i486
i386
80286
100
10
Pentium® III
Pentium® II
Pentium® Pro
Pentium®
8086
1
1975 1980 1985 1990 1995 2000 2005 2010
Proyectado
© 2005 Synopsys, Inc. (18)
Fuente: Intel
Ley de Moore en Microprocesadores
Transistores (MT)
1000
100
Duplicación en 1.96 años!
10
486
1
0.1
P6
Pentium® proc
386
286
8086
8085
El número0.01
de transistores
en microprocesadores se duplica cada dos años
8080
8008
4004
0.001
1970
1980
1990
2000
2010
Año
Fuente: Intel
© 2005 Synopsys, Inc. (19)
Crecimiento del Die Size
Die size (mm)
100
10
386
8080
8008
P6
Pentium
® proc
486
286
8086
8085 ~7% crecimiento por año
Die size
para
satisfacer en
la ley
Moore
~2X
crecimiento
10 de
años
4004crece 14%
1
1970
1980
1990
2000
2010
Fuente: Intel
© 2005 Synopsys, Inc. (20)
Frecuencia
Frecuencia (Mhz)
10000
Se duplica cada
2 años
1000
100
486
10
8085
8086 286
P6
Pentium ® proc
386
La frecuencia
en microprocesadores se duplica cada 2 años
8080
1
0.1
1970
8008
4004
1980
1990
2000
2010
Fuente: Intel
© 2005 Synopsys, Inc. (21)
Disipación de Potencia
Potencia (Watts)
100
P6
Pentium ® proc
10
8086 286
1
8008
4004
486
386
8085
8080
0.1
1971
1974
1978
1985
1992
2000
La potencia de los microprocesadores continua creciendo
Fuente: Intel
© 2005 Synopsys, Inc. (22)
Densidad de Potencia
Densidad de Potencia (W/cm2)
10000
1000
Reactor
Nuclear
100
8086
Plato caliente
10 4004
P6
8008 8085
Pentium® proc
386
286
486
8080
1
1970
1980
1990
2000
2010
La densidad de potencia es muy alta para mantener la juntura a baja Tº
Fuente: Intel
© 2005 Synopsys, Inc. (23)
Sistema Inalámbrico
Lógica
cableada
Bandabase y
circuitos RF
Algoritmos de
comunicación
Lógica
(nivel bit)
Analógico
A
D
Protocolos
Algoritmos
cableados
(nivel palabra)
phone
RTOS
book
MAC
Control
ARQ
FSM
FFT
Filtros
Coders
analógico
digital
Una amplia gama de componentes
como construimos esto???
© 2005 Synopsys, Inc. (24)
Core DSP
Core mP
¿Qué es un SoC?
© 2005 Synopsys, Inc. (25)
¿Qué es un SoC?
SoC es un estilo de diseño y un
tipo de producto
© 2005 Synopsys, Inc. (26)
¿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. (27)
¿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. (28)
¿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. (29)
SoC es
… un producto ...
...y un proceso.
Soluciones para aplicaciones específicas
que implementan sistemas enteros
Del sistema al silicio en un
time-to-market rápido.
Requirements
special function processor
NVM
(program)
Program
and data
storage
general purpose
processor
System control
and functionality
System Design
DRAM
IP Creation
processor bus
DMA
bus interface
NVM
(data)
Interaction
with other
systems
SoC Integration
peripheral bus
communications
peripherals
customer
specific
Analog / Mixed signal
Fabrication
Interaction with
real world
Qualification
Device Drivers
APIs
Applications
© 2005 Synopsys, Inc. (30)
SoC
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.
Geometrias pequeñas
permiten:
Integración de alto rendimiento
© 2005 Synopsys, Inc. (31)
El dinamismo del mercado
requiere:
• time-to-market rápido
• Bajo costo
• Curva de aprendizaje rápida
Fabricantes de semiconductores
deben cubrir los costos de
fabricación a través de sistemas
de valor agregado.
Desafíos del Diseño
1000
Número de transistores
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
1,000,000,000,000
© 2005 Synopsys, Inc. (32)
Diseño de Chips – CAD
Mundo real
Sistemas electrónicos
Foundries
Industria EDA
Industria de
semiconductores
© 2005 Synopsys, Inc. (33)
Mayor Complejidad de Dispositivos y
Contexto
Complejidad
• 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ño
Hay exponencialmente más transistores
© 2005 Synopsys, Inc. (34)
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
Efectos DSM




El diseño de cada transistor es más difícil
© 2005 Synopsys, Inc. (35)
Heterogeneidad en el Chip
• Gran diversidad de elementos en el chip
 Procesadores
 Software
 Memoria
 Análogo
Heterogeneidad
Más transistores hacen cosas diferentes
© 2005 Synopsys, Inc. (36)
Fuerte Presión del Mercado
• Ventana de diseño más pequeña
• Menor tolerancia a revisiones
Time-to-money
Mayor complejidad, mayor riesgo, mayor variedad,
ventana más pequeña
© 2005 Synopsys, Inc. (37)
Productividad del Diseño
Puertas/semana
Dataquest
Dominio
específico
8K – 12K
Comportamental
2K – 10K
RTL
1K – 2K
Puerta
100 – 200
Transistor
© 2005 Synopsys, Inc. (38)
10 – 20
Flujo de Diseño
Spec
Selección de
arquitectura
Código RTL
Floorplan
Chequeo código
RTL
Testbench
Verificación RTL
Verificación formal
Restriccione
s
Síntesis
Lib
Síntesis lógica
Test (SCAN/JTAG)
Reducción de potencia
Síntesis datapath
DW
Netlist puertas
ATPG
Análisis
estático del
tiempo
Verificación puertas
GDSII
© 2005 Synopsys, Inc. (39)
CWLM
Diseño físico
Información
posicionamient
o
Flujo Simplificado
HDL
Síntesis RTL
Netlist
Librería
Optimización
lógica
Netlist
Diseño físico
Layout
© 2005 Synopsys, Inc. (40)
Diseño manual
Generador de
módulos
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. (41)
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. (42)
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. (43)
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
© 2005 Synopsys, Inc. (44)
always @(clk) // latch
begin
if(clk == 1)
q = d;
else if(clk !== 0))
q = ‘bxb;
end //always
End module
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. (45)
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)
HDL
d = a;
else if(s)
d = b;
Sintesis
else
RTL
d = ‘bx
end //always
Netlist
© 2005 Synopsys, Inc. (46)
a
d
q
b
s
clk
Optimización Lógica
• Realiza transformaciones y
optimizaciones
 Transformación grafos estructurados
 Transformaciones booleanas
 Mapeo en una librería física
© 2005 Synopsys, Inc. (47)
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. (48)
Layout en Celdas Estándares
© 2005 Synopsys, Inc. (49)
Gate Array
© 2005 Synopsys, Inc. (50)
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. (51)
Flujo de Diseño RTL
Opt. Lógica
2 niveles
Netlist
Biblioteca
Independiente
tecnología
Optimización
lógica
Netlist
Opt. Lógica
multinivel
Dependiente
tecnología
Biblioteca
© 2005 Synopsys, Inc. (52)
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. (53)
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. (54)
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. (55)
Técnicas de Optimización
•Independientes
•Dependientes
 Two-level minimization
 Tree covering
 Selective collapsing
 Load buffering
 Algebraic
decomposition
 Restructuring for
timing
 Rule-based mapping
 Signature analysis
 Redundancy removal
 Inverter phase
assignment
 Transduction
 Discrete sizing
 Global-flow
© 2005 Synopsys, Inc. (56)
HDL
Síntesis
Comportamental
HDL
Síntesis RTL
Netlist
Librería
Optimización
lógica
Netlist
Diseño físico
Layout
© 2005 Synopsys, Inc. (57)
Síntesis
Comportamental
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. (58)
Elementos Claves
• Asignación automática de recursos
• Ordenamiento cronológico (scheduling)
© 2005 Synopsys, Inc. (59)
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. (60)
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. (61)
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. (62)
Y Ahora Que?
© 2005 Synopsys, Inc. (63)
Síntesis de Sistemas
Diseños son heterogéneos
y atraviesan los dominios del
control y flujo de datos en
forma arbitraria
Diseños deben ser modelados
en lenguajes estándares y
gráficos con consistencia
entre dominios y niveles de
abstracción
SW
HW
Integrado antes en el proceso
de diseño
Evaluación rápida de partición
HW/SW
Reuso de código debe ser
considerada
Diseño de altos niveles de
abstracción
Reuso debe ser considerado a
altos niveles de abstracción
Necesita mezclar C, C++,
Verilog y VHDL
© 2005 Synopsys, Inc. (64)
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
© 2005 Synopsys, Inc. (65)
Preguntas
© 2005 Synopsys, Inc. (66)