Upload
others
View
5
Download
0
Embed Size (px)
Citation preview
Circuitos VLSI digitaisIntrodução e visão geral
João Canas Ferreira
Universidade do PortoFaculdade de Engenharia
2013-02-13
Assuntos
1 Circuitos MOS
2 Fluxo de projeto
João Canas Ferreira (FEUP) Circuitos VLSI digitais 2013-02-13 2 / 30
Componentes
à Para circuitos digitais
I Transístores MOS: NMOS + PMOS = CMOSI Interligações
I Fator importante para o desempenho
Evolução do processo de fabrico
à Redução das dimensões
I Transístores mais rápidosI Mais transístoresI Custo (por transístor) menor (mais funcionalidade pelo mesmo custo)
à Aumento da dimensão da pastilha
Lei de Moore: aumento do número transístores cada 18 meses
João Canas Ferreira (FEUP) Circuitos VLSI digitais 2013-02-13 3 / 30
Lei de Moore
Fonte: [Rabaey03]
João Canas Ferreira (FEUP) Circuitos VLSI digitais 2013-02-13 4 / 30
Transístor MOS
Fonte: [Rabaey03]
João Canas Ferreira (FEUP) Circuitos VLSI digitais 2013-02-13 5 / 30
Layout de um transístor
João Canas Ferreira (FEUP) Circuitos VLSI digitais 2013-02-13 6 / 30
Modelo ideal do transístor MOS
porta
(gate)
dreno
(drain)
fonte
(source)
nMOS
dreno
(drain)
fonte
(source)
porta
(gate)
pMOS
g = 0 g = 1
d d
d d
s s
s s
aberto fechado
João Canas Ferreira (FEUP) Circuitos VLSI digitais 2013-02-13 7 / 30
Inversor MOS
VDD
GND
A Y
A = GNDA = VDD
Y = GND Y = VDD
João Canas Ferreira (FEUP) Circuitos VLSI digitais 2013-02-13 8 / 30
Portas lógicas MOS (NAND)
A
B
Y
João Canas Ferreira (FEUP) Circuitos VLSI digitais 2013-02-13 9 / 30
Níveis lógicos e curva de transferência
VIH
VOH
VIL
VOL
1
0Vin
Vout
VIL VIH
VOH
VOL
inclinação = -1
inclinação = -1
VM
f
Valores nominais: VOH=f(VOL) VOL=f(VOH)
João Canas Ferreira (FEUP) Circuitos VLSI digitais 2013-02-13 10 / 30
Margens de ruído
VOHVIHNMH
VOLVIL
saída entrada
NML
região deindefinição
1
0
NMH = VOH - VIH
NML = VIL - VOL
João Canas Ferreira (FEUP) Circuitos VLSI digitais 2013-02-13 11 / 30
Regeneração de sinais
Fonte: [Rabaey03]
João Canas Ferreira (FEUP) Circuitos VLSI digitais 2013-02-13 12 / 30
Porta estática ideal
Fonte: [Rabaey03]
João Canas Ferreira (FEUP) Circuitos VLSI digitais 2013-02-13 13 / 30
Desempenho (tempo de propagação)
Fonte: [Rabaey03]
João Canas Ferreira (FEUP) Circuitos VLSI digitais 2013-02-13 14 / 30
Tempo de propagação de circuito RC de 1ª ordem
+– Vin
R
C
Cout
à Modelo importante: representa bem o atraso de um inversor
vout(t) = (1 − e−t/τ)V τ = RC
tp = ln(2)× t = 0,69× RC
João Canas Ferreira (FEUP) Circuitos VLSI digitais 2013-02-13 15 / 30
Consumo de energiaà Potência instantânea
p(t) = v(t)× i(t) = Vdd × i(t)
à Potência de picoPpico = Vdd × ipico
à Potência média
Pa =1T
∫ t+T
tp(t)dt =
Vdd
T
∫ t+T
ti(t)dt
à Produto potência-atraso PDP
E = PDP = Pa × tp (energia por comutação)
à Produto energia-atraso EDP
EDP = E × tp (métrica de qualidade de uma porta)
João Canas Ferreira (FEUP) Circuitos VLSI digitais 2013-02-13 16 / 30
Consumo de circuito RC de 1ª ordem
+– Vin
R
C
Cout
E0→1 =
∫ T
0p(t)dt = Vdd
∫ T
0isupply(t)dt = Vdd
∫ Vdd
0C dVout = C × V2
dd
Energia armazenada no condensador
EC =
∫ T
0Pcap(t)dt =
∫ T
0Vout icap(t)dt =
∫ Vdd
0C Vout dVout =
12
C × V2dd
João Canas Ferreira (FEUP) Circuitos VLSI digitais 2013-02-13 17 / 30
Assuntos
1 Circuitos MOS
2 Fluxo de projeto
João Canas Ferreira (FEUP) Circuitos VLSI digitais 2013-02-13 18 / 30
Visão geral
design entry
systempartitioning
floorplanning
placement
routing
logic synthesis
VHDL/Verilog
chip
block
logic cells
netlist
prelayoutsimulation
circuitextraction
postlayoutsimulation
back-annotatednetlist finish
start
physicaldesign
logicaldesign
A B
A
14
2
3
59
6
78
Fonte: [Smith03]João Canas Ferreira (FEUP) Circuitos VLSI digitais 2013-02-13 19 / 30
Tarefas de "front end"
1 Especificação funcional (comportamental) e não-funcionalI Exemplo de requisito não-funcional: fiabilidade (uso de redundância)I Especificação funcional: C / Matlab / SystemVerilog
2 Captura esquemática ou linguagem de descrição de hardware (RTL)(Verilog/VHDL).
3 Validação/VerificaçãoI Testes e procedimentos de validação serão aplicados a vários níveis
4 Síntese RTL→ portas lógicas
5 Validar
6 Mapeamento em células (→ netlist)
7 Validar outra vez...
à Cada validação é feita com mais informação
Problema: Como usar informação sobre a tecnologia-alvo?
João Canas Ferreira (FEUP) Circuitos VLSI digitais 2013-02-13 20 / 30
Bibliotecas de células (para síntese)I Caraterísticas tecnológicas gerais (tensão de alimentação, etc.)I FuncionalidadeI Tempos de propagaçãoI Consumo de energiaI TerminaisI Dimensões
cell (INV) {cell_footprint : inv;area : 129.6;cell_leakage_power : 0.0190544;rail_connection( GND, RAIL_GND );rail_connection( VDD, RAIL_VDD );pin(ENTRADA) {
direction : input;input_signal_level : RAIL_VDD;capacitance : 0.0156681;
...
...pin(SAIDA) {
direction : output;output_signal_level : RAIL_VDD;...}function : "(!ENTRADA)";timing() {related_pin : "ENTRADA";timing_sense : negative_unate;...
João Canas Ferreira (FEUP) Circuitos VLSI digitais 2013-02-13 21 / 30
Tarefas de "back-end"
1 Planeamento da utilização de espaço (“floorplanning”)I Inclui planeamento da alimentação
2 Colocação das células.
3 Síntese da rede de relógio.
4 Encaminhamento das ligações entre células
5 Verificação das regras (geométricas)
6 Extração da informação física (principalmente das interconexões).
7 Validação com informação física detalhadaI Ênfase no comportamento temporalI Também importante: consumo de energia
João Canas Ferreira (FEUP) Circuitos VLSI digitais 2013-02-13 22 / 30
Standard cells
NAND2 MUX2 c/ inversão
Fonte: [http://www.vlsitechnology.org/html/cells/vsclib013/lib_gif_index.html]
João Canas Ferreira (FEUP) Circuitos VLSI digitais 2013-02-13 23 / 30
Bibliotecas de células (para encaminhamento)
à Formato normalizado: Library Exchange Format (LEF)
I TecnologiaI camadasI regras geométricas para ligaçõesI definições de “vias” (ligações entre camadas de metal)I capacidade e resistência de pistas de metal
I Descrição da funcionalidade das células
I Dimensões das células (“bounding box”)
I Local e dimensão dos pinos (terminais) em cada célula
I Local e dimensão dos “bloqueios” (zonas a não usar no encaminhamento)
à Vista “abstrata” da célula, sem detalhes do seu interior.
João Canas Ferreira (FEUP) Circuitos VLSI digitais 2013-02-13 24 / 30
Floorplanning
à Locais para colocação das células (azul) e alimentações (vermelho)
João Canas Ferreira (FEUP) Circuitos VLSI digitais 2013-02-13 25 / 30
Colocação
à Células colocadas (notar espaços desocupados)
João Canas Ferreira (FEUP) Circuitos VLSI digitais 2013-02-13 26 / 30
Encaminhamento do sinal de relógio
à Flip-flops coloridos de acordo com o atraso relativo (“skew”) do sinal derelógio
João Canas Ferreira (FEUP) Circuitos VLSI digitais 2013-02-13 27 / 30
Encaminhamento
à Circuito completo com ligações entre célulasJoão Canas Ferreira (FEUP) Circuitos VLSI digitais 2013-02-13 28 / 30
Verificação física e finalização
1 Verificação das regras geométricas de projeto2 Extração de parasitas das interligações
I resistênciaI capacidade
3 Validação com informação completaI “back annotation”: processo de incluir informação de parasitas nos
modelos de simulação usados na etapa anterior (fim do “front-end”)
4 Desenvolver testes de fabrico (estruturais)I Detetar defeitos (catastróficos) de fabricoI Detetar defeitos “paramétricos” (módulo demasiado lento)I Podem ser desenvolvidos logo que exista informação estrutural
5 Geração de informação para fabrico (máscaras)
6 E o encapsulamento?
Problema: E se o circuito for demasiado lento? (“Timing closure”)
João Canas Ferreira (FEUP) Circuitos VLSI digitais 2013-02-13 29 / 30
Referências
Rabaey03 Jan M. Rabaey, Anantha Chandrakasan, Borivoje NikolicDigital Integrated Circuits: A Design PerspectivePrentice-Hall, 2ª ed.
Weste10 Neil Weste & David HarrisCMOS VLSI Design: A Circuits and Systems Perspective, 4/EAddison-Wesley
Smith03 Michael J. S. SmithApplication-Specific Integrated CircuitsAddison-Wesley
João Canas Ferreira (FEUP) Circuitos VLSI digitais 2013-02-13 30 / 30