Académique Documents
Professionnel Documents
Culture Documents
8 .1 IMPLEMENTACIN FSICA
Elena Valderrama
Universidad Autnoma de Barcelona
8 .1
D0 q0
D1 q1
D2 q2
D3 q3
CK
Reset
SC(2)
SV(1)
SV(2)
ResetPPV
8 .1
2. Chips + PCBs
PPV
D0 q0
D1 q1
D2 q2
D3 q3
CK
Reset
SC(1)
SC(2)
SV(1)
SV(2)
ResetPPV
Protoboard de laboratorio
2-IN AND GATE
8 .1
2. Chips + PCBs
PROBLEMA:
Circuitos
grandes ?
8 .1
3. Circuitos Integrados
Dado de Si (ASIC)
Hilo
conector
g
densidades de
Consiguiendo
integracin de millones de
transistores en un nico chips
(730.106 transistores el Intel Core i7Quad)
5
8 .1
Chip
Proceso tecnolgico
Corte
Pastillas (dice)
Generacin
de las
Layout mscaras
... etc
Oblea de Si
Mscara
difusiones
dif
i
P
Mscara de rea
activa
8 .1
3. Circuitos Integrados
L
Layout
D0 q0
D1 q1
D2 q2
D3 q3
CK
Reset
SC(1)
SC(2)
SV(1)
SV(2)
ResetPPV
3. Circuitos Integrados
8 .1
3. Circuitos Integrados
8 .1
8 .1
RESUMEN
Hemos visto que los circuitos digitales (y otros) puede implementarse con chips SSI/MSI +
PCBs, y hemos discutido sus limitaciones,
La Microelectrnica permite construir circuitos de millares (millones) de transistores en un
nico chip,
considerable,
El proceso de definir el layout de un circuito tiene una complejidad considerable
Para tratar con esta complejidad se utilizan:
Diversas estrategias de implementacin y
Herramientas de sntesis automtica
10
8 .2
1. Comentario previo
8 .2
Mill
Millones
d
de fformas geomtricas
t i
CMO
8 .2
2. Estrategias de implementacin
Veremos 3 de ellas: Standard Cells, Gate Arrays, FPGAs.
NAND3
Altura
2 1 Standard Cells
2.1
Ejemplo: NAND3
Macroceldas: bloques de memoria,
multiplicadores, (configurables)
13
8 .2
14
8 .2
Layout parcial de un
ASIC implementado
con Standard Cells
En los
l circuitos modernos
d
no suele
l h
haber
b canales
l d
de conexin.
Las pistas d
de conexin
pasan por
encima de las celdas, previamente cubiertas con una capa aislante.
15
8 .2
rows of
uncommitted
cells
routing
channel
16
8 .2
17
8 .2
18
8 .2
programmable
basic logic block
programmable
input / output
programmable
interconnections
8 .2
Ejemplo de floor-plan:
8 .2
0
input(3:0)
4-input
LUT
clear
8 .2
22
8 .2
Ej
Ejemplo
l d
de FPGA comercial:
i l
Celdas bsicas + bloques de memoria RAM + multiplicadores + celdas de E/S,
Conexiones programables
Ram Blocks
Input
p / Output
p
Blocks (IOB)
Dedicated
multipliers
Programmable
Interconnections
Configurable
Logic Blocks
(CLB)
23
3. Herramientas de sntesis
3.1 Nivel de descripcin de
Transferencia de Registros (RT
level)
Descripcin funcional
(p.e. descripcin HDL)
D
Define
fi llas operaciones
i
que se
ejecutan en cada ciclo de reloj.
Ej
Ejemplo:
l Temporizador
T
i d programable.
bl
8 .2
main: process(reset, clk)
begin
if reset = '1' then cs <= 0;
elsif clk'event and clk = '1' then
case cs is
when 0 => if start = '0' then cs <= 1; end if; done <= '1';
when 1 => if start = '1' then cs <= 2; end if; done <= '1';
when 2 => count <= time; cs <= 3; done <= '0';
0;
when 3 => if count = "00000000" then cs <= 0;
else cs <= 4; end if; done <= '0';
when 4 => if ref = '0' then cs <= 5; end if; done <= '0';
when 5 => if ref = '1' then cs <= 6; end if; done <= '0';
when 6 => count <= count - '1'; cs <= 3; done <= '0';
end case;
end if;;
end process main;
end behavior;
24
3. Herramientas de sntesis
8 .2
25
8 .2
26
8 .2
RESUMEN
Hemos visto las estrategias ms habituales de implementacin de grandes sistemas
digitales: Standard Cells, Gate Arrays y FPGAs (Field Programmable Gate Arrays).
Herramientas de sntesis.
Herramientas de implementacin fsica
27