Upload
hoangkhanh
View
224
Download
0
Embed Size (px)
Citation preview
Desenvolvimento de circuitos VLSI
João Canas Ferreira
Universidade do PortoFaculdade de Engenharia
2012-02-17
Assuntos
1 Circuitos MOS
2 Fluxo de projeto
João Canas Ferreira (FEUP) Desenvolvimento de circuitos VLSI 2012-02-17 2 / 28
Componentes
à Para circuitos digitais
I Transístores MOS: NMOS + PMOS = CMOSI Interligações
I Contribuição 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) Desenvolvimento de circuitos VLSI 2012-02-17 3 / 28
Lei de Moore
Fonte: [Rabaey03]
João Canas Ferreira (FEUP) Desenvolvimento de circuitos VLSI 2012-02-17 4 / 28
Transístor MOS
Fonte: [Rabaey03]
João Canas Ferreira (FEUP) Desenvolvimento de circuitos VLSI 2012-02-17 5 / 28
Layout de um transístor
João Canas Ferreira (FEUP) Desenvolvimento de circuitos VLSI 2012-02-17 6 / 28
Modelo ideal do transístor MOS
Fonte: [Weste10]
João Canas Ferreira (FEUP) Desenvolvimento de circuitos VLSI 2012-02-17 7 / 28
Inversor MOS
Fonte: [Weste10]
João Canas Ferreira (FEUP) Desenvolvimento de circuitos VLSI 2012-02-17 8 / 28
Portas lógicas MOS
Fonte: [Weste10]
João Canas Ferreira (FEUP) Desenvolvimento de circuitos VLSI 2012-02-17 9 / 28
Característica de transferência
Fonte: [Rabaey03]
João Canas Ferreira (FEUP) Desenvolvimento de circuitos VLSI 2012-02-17 10 / 28
Níveis lógicos
Fonte: [Rabaey03]
João Canas Ferreira (FEUP) Desenvolvimento de circuitos VLSI 2012-02-17 11 / 28
Margens de ruído
Fonte: [Rabaey03]
João Canas Ferreira (FEUP) Desenvolvimento de circuitos VLSI 2012-02-17 12 / 28
Regeneração de sinais
Fonte: [Rabaey03]
João Canas Ferreira (FEUP) Desenvolvimento de circuitos VLSI 2012-02-17 13 / 28
Porta estática ideal
Fonte: [Rabaey03]
João Canas Ferreira (FEUP) Desenvolvimento de circuitos VLSI 2012-02-17 14 / 28
Desempenho (tempo de propagação)
Fonte: [Rabaey03]
João Canas Ferreira (FEUP) Desenvolvimento de circuitos VLSI 2012-02-17 15 / 28
Tempo de propagação de circuito RC de 1ª ordem
Fonte: [Rabaey03]
à Modelo importante: corresponde ao atraso de um inversor
vout(t) = (1 − e−t/τ)V τ = RC
tp = ln(2)× t = 0,69× RCJoão Canas Ferreira (FEUP) Desenvolvimento de circuitos VLSI 2012-02-17 16 / 28
Consumo de energiaà Potência instantânea
p(t) = v(t)× i(t) = Vdd × i(t)
à Potência de pico
Ppico = 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 = Pa × tp (energia por operação)
à Produto energia-atraso EDP
E × tp (métrica de qualidade de uma porta)
João Canas Ferreira (FEUP) Desenvolvimento de circuitos VLSI 2012-02-17 17 / 28
Consumo de circuito RC de 1ª ordem
Fonte: [Rabaey03]
E0→1 =
∫ T
0p(t)dt = Vdd
∫ T
0isupply(t)dt = Vdd
∫ Vdd
0CLdVout = CL × V2
dd
Ecap =
∫ T
0Pcap(t)dt =
∫ T
0Vout icap(t)dt =
∫ Vdd
0CL Vout dVout =
12
CL × V2dd
João Canas Ferreira (FEUP) Desenvolvimento de circuitos VLSI 2012-02-17 18 / 28
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
João Canas Ferreira (FEUP) Desenvolvimento de circuitos VLSI 2012-02-17 19 / 28
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) Desenvolvimento de circuitos VLSI 2012-02-17 20 / 28
Bibliotecas de células (para síntese)I Caracterí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) Desenvolvimento de circuitos VLSI 2012-02-17 21 / 28
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) Desenvolvimento de circuitos VLSI 2012-02-17 22 / 28
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) Desenvolvimento de circuitos VLSI 2012-02-17 23 / 28
Floorplanning
à Locais para colocação das células (azul) e alimentações (vermelho)
João Canas Ferreira (FEUP) Desenvolvimento de circuitos VLSI 2012-02-17 24 / 28
Colocação
à Células colocadas (notar espaços desocupados)
João Canas Ferreira (FEUP) Desenvolvimento de circuitos VLSI 2012-02-17 25 / 28
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) Desenvolvimento de circuitos VLSI 2012-02-17 26 / 28
Encaminhamento
à Circuito completo com ligações entre célulasJoão Canas Ferreira (FEUP) Desenvolvimento de circuitos VLSI 2012-02-17 27 / 28
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) Desenvolvimento de circuitos VLSI 2012-02-17 28 / 28