circuitos vlsi digitais assuntos · c dvout = c v2 dd energia armazenada no condensador e c = z t 0...

18
Circuitos VLSI digitais Introdução e visão geral João Canas Ferreira Universidade do Porto Faculdade de Engenharia 2014-02-07 Assuntos 1 Circuitos MOS 2 Fluxo de projeto João Canas Ferreira (FEUP) Circuitos VLSI digitais 2014-02-07 2 / 35

Upload: others

Post on 28-Jun-2020

9 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Circuitos VLSI digitais Assuntos · C dVout = C V2 dd Energia armazenada no condensador E C = Z T 0 Pcap(t)dt = Z T 0 Vout icap(t)dt = Z V dd 0 CVout dVout = 1 2 C V2 dd João Canas

Circuitos VLSI digitaisIntrodução e visão geral

João Canas Ferreira

Universidade do PortoFaculdade de Engenharia

2014-02-07

Assuntos

1 Circuitos MOS

2 Fluxo de projeto

João Canas Ferreira (FEUP) Circuitos VLSI digitais 2014-02-07 2 / 35

Page 2: Circuitos VLSI digitais Assuntos · C dVout = C V2 dd Energia armazenada no condensador E C = Z T 0 Pcap(t)dt = Z T 0 Vout icap(t)dt = Z V dd 0 CVout dVout = 1 2 C V2 dd João Canas

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 2014-02-07 3 / 35

Lei de Moore

Fonte: [Rabaey03]

João Canas Ferreira (FEUP) Circuitos VLSI digitais 2014-02-07 4 / 35

Page 3: Circuitos VLSI digitais Assuntos · C dVout = C V2 dd Energia armazenada no condensador E C = Z T 0 Pcap(t)dt = Z T 0 Vout icap(t)dt = Z V dd 0 CVout dVout = 1 2 C V2 dd João Canas

Número de transístores

Fonte: [ISSCC13]

João Canas Ferreira (FEUP) Circuitos VLSI digitais 2014-02-07 5 / 35

Frequência de relógio

Fonte: [ISSCC13]

João Canas Ferreira (FEUP) Circuitos VLSI digitais 2014-02-07 6 / 35

Page 4: Circuitos VLSI digitais Assuntos · C dVout = C V2 dd Energia armazenada no condensador E C = Z T 0 Pcap(t)dt = Z T 0 Vout icap(t)dt = Z V dd 0 CVout dVout = 1 2 C V2 dd João Canas

Memória cache on-chip

Fonte: [ISSCC13]

João Canas Ferreira (FEUP) Circuitos VLSI digitais 2014-02-07 7 / 35

Custo

Fonte: [IBS12, http://ubm.io/LX8ZPI]

João Canas Ferreira (FEUP) Circuitos VLSI digitais 2014-02-07 8 / 35

Page 5: Circuitos VLSI digitais Assuntos · C dVout = C V2 dd Energia armazenada no condensador E C = Z T 0 Pcap(t)dt = Z T 0 Vout icap(t)dt = Z V dd 0 CVout dVout = 1 2 C V2 dd João Canas

Transístor MOS

Fonte: [Rabaey03]

João Canas Ferreira (FEUP) Circuitos VLSI digitais 2014-02-07 9 / 35

Layout de um transístor

João Canas Ferreira (FEUP) Circuitos VLSI digitais 2014-02-07 10 / 35

Page 6: Circuitos VLSI digitais Assuntos · C dVout = C V2 dd Energia armazenada no condensador E C = Z T 0 Pcap(t)dt = Z T 0 Vout icap(t)dt = Z V dd 0 CVout dVout = 1 2 C V2 dd João Canas

Transístores FinFET

Fonte: [Weste10]

Transístor com duas portas (dual-gate) sobre material isolador

João Canas Ferreira (FEUP) Circuitos VLSI digitais 2014-02-07 11 / 35

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 2014-02-07 12 / 35

Page 7: Circuitos VLSI digitais Assuntos · C dVout = C V2 dd Energia armazenada no condensador E C = Z T 0 Pcap(t)dt = Z T 0 Vout icap(t)dt = Z V dd 0 CVout dVout = 1 2 C V2 dd João Canas

Inversor MOS

VDD

GND

A Y

A = GNDA = VDD

Y = GND Y = VDD

João Canas Ferreira (FEUP) Circuitos VLSI digitais 2014-02-07 13 / 35

Portas lógicas MOS (NAND)

A

B

Y

João Canas Ferreira (FEUP) Circuitos VLSI digitais 2014-02-07 14 / 35

Page 8: Circuitos VLSI digitais Assuntos · C dVout = C V2 dd Energia armazenada no condensador E C = Z T 0 Pcap(t)dt = Z T 0 Vout icap(t)dt = Z V dd 0 CVout dVout = 1 2 C V2 dd João Canas

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 2014-02-07 15 / 35

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 2014-02-07 16 / 35

Page 9: Circuitos VLSI digitais Assuntos · C dVout = C V2 dd Energia armazenada no condensador E C = Z T 0 Pcap(t)dt = Z T 0 Vout icap(t)dt = Z V dd 0 CVout dVout = 1 2 C V2 dd João Canas

Regeneração de sinais

Fonte: [Rabaey03]

João Canas Ferreira (FEUP) Circuitos VLSI digitais 2014-02-07 17 / 35

Porta estática ideal

Fonte: [Rabaey03]

João Canas Ferreira (FEUP) Circuitos VLSI digitais 2014-02-07 18 / 35

Page 10: Circuitos VLSI digitais Assuntos · C dVout = C V2 dd Energia armazenada no condensador E C = Z T 0 Pcap(t)dt = Z T 0 Vout icap(t)dt = Z V dd 0 CVout dVout = 1 2 C V2 dd João Canas

Desempenho (tempo de propagação)

Fonte: [Rabaey03]

João Canas Ferreira (FEUP) Circuitos VLSI digitais 2014-02-07 19 / 35

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 2014-02-07 20 / 35

Page 11: Circuitos VLSI digitais Assuntos · C dVout = C V2 dd Energia armazenada no condensador E C = Z T 0 Pcap(t)dt = Z T 0 Vout icap(t)dt = Z V dd 0 CVout dVout = 1 2 C V2 dd João Canas

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 2014-02-07 21 / 35

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 2014-02-07 22 / 35

Page 12: Circuitos VLSI digitais Assuntos · C dVout = C V2 dd Energia armazenada no condensador E C = Z T 0 Pcap(t)dt = Z T 0 Vout icap(t)dt = Z V dd 0 CVout dVout = 1 2 C V2 dd João Canas

Assuntos

1 Circuitos MOS

2 Fluxo de projeto

João Canas Ferreira (FEUP) Circuitos VLSI digitais 2014-02-07 23 / 35

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 2014-02-07 24 / 35

Page 13: Circuitos VLSI digitais Assuntos · C dVout = C V2 dd Energia armazenada no condensador E C = Z T 0 Pcap(t)dt = Z T 0 Vout icap(t)dt = Z V dd 0 CVout dVout = 1 2 C V2 dd João Canas

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 2014-02-07 25 / 35

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 2014-02-07 26 / 35

Page 14: Circuitos VLSI digitais Assuntos · C dVout = C V2 dd Energia armazenada no condensador E C = Z T 0 Pcap(t)dt = Z T 0 Vout icap(t)dt = Z V dd 0 CVout dVout = 1 2 C V2 dd João Canas

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 2014-02-07 27 / 35

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 2014-02-07 28 / 35

Page 15: Circuitos VLSI digitais Assuntos · C dVout = C V2 dd Energia armazenada no condensador E C = Z T 0 Pcap(t)dt = Z T 0 Vout icap(t)dt = Z V dd 0 CVout dVout = 1 2 C V2 dd João Canas

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 2014-02-07 29 / 35

Floorplanning

à Locais para colocação das células (azul) e alimentações (vermelho)

João Canas Ferreira (FEUP) Circuitos VLSI digitais 2014-02-07 30 / 35

Page 16: Circuitos VLSI digitais Assuntos · C dVout = C V2 dd Energia armazenada no condensador E C = Z T 0 Pcap(t)dt = Z T 0 Vout icap(t)dt = Z V dd 0 CVout dVout = 1 2 C V2 dd João Canas

Colocação

à Células colocadas (notar espaços desocupados)

João Canas Ferreira (FEUP) Circuitos VLSI digitais 2014-02-07 31 / 35

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 2014-02-07 32 / 35

Page 17: Circuitos VLSI digitais Assuntos · C dVout = C V2 dd Energia armazenada no condensador E C = Z T 0 Pcap(t)dt = Z T 0 Vout icap(t)dt = Z V dd 0 CVout dVout = 1 2 C V2 dd João Canas

Encaminhamento

à Circuito completo com ligações entre célulasJoão Canas Ferreira (FEUP) Circuitos VLSI digitais 2014-02-07 33 / 35

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 2014-02-07 34 / 35

Page 18: Circuitos VLSI digitais Assuntos · C dVout = C V2 dd Energia armazenada no condensador E C = Z T 0 Pcap(t)dt = Z T 0 Vout icap(t)dt = Z V dd 0 CVout dVout = 1 2 C V2 dd João Canas

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

ISSCC13 ISSCC Tech Trends 2013http://isscc.org/trends/index.html

IBS12 International Business Startegies(http://www.ibs-inc.net/)

João Canas Ferreira (FEUP) Circuitos VLSI digitais 2014-02-07 35 / 35