• ASIC - Application Specific Integrated Circuit– Full custom– Standard cell– Gate-array
• Programáveis– PAL– CPLD– “FPGA”
• Macro-cell• Combinações
Tipos de projecto de CIs
Tipo Ano ComentárioTransístores 50Lógica discreta 60 - 80 TTL, ECL, NMOS, CMOSPAL 70 - 80 Programáveis, funcionalidade simplesPLD 80 - 90 Programáveis, funcionalidade limitadaCPLD 90 - ? Programáveis, funcionalidade complexaFPGA 90 - ? (Re)-Programável, lógica muito complexa,
baixo custo de desenvolvimento, para volumes limitados
ASIC 80 - ? Desempenho muito alto, alta complexidade, custo de desenvolvimento elevado, volumes elevados
DSP/processor 80 - ?
PAL: Programmable Array LogicPLD: Programmable Logic DeviceCPLD: Complex Programmable Logic DeviceFPGA: Field Programmable Gate ArrayDSP: Digital Signal ProcessorASIC: Application Specific Integrated Circuit
Muito flexivel, processamento de dados
Ainda em uso em circuitos de RF e de potência
Tipos de projecto de CIs digitais
Projecto feito “à mão”Todas as camadas detalhadas no projectoCircuitos digitais e analógicosSimulação no nível de transístor (analógica)Grande densidade de integraçãoDesempenho elevadoTempo de projecto demasiado elevado
IN Out
Vdd
Gnd
Full custom
Standard cells organizadas em linhas (and, or, flip-flops, etc.)
As células são desenvolvidas em full custom (mas não pelo utilizador)
Todas as camadas detalhadas no projectoCélulas digitais e algumas analógicasSimulação de portas lógicas (digital)Densidade média altaDesempenho médio altoTempo de projecto médio
Routing
Cell
IO cell
Standard cells
Transístores pré-definidos interligados por metalDois tipos: com canais e sea of gatesSó detalhadas as camadas de metalTamanhos de array fixos (normalmente 5-10)Células digitais (and, or, flip-flops,etc.)Simulação de portas lógicas (digital) Densidade médiaDesempenho médioTempo de projecto médio
Sea of gates Channel based
Oxide isolation
Gate isolation
Gate-array
Porta NAND 2• Usar sempre que
possível tr em série
• Isolar dos vizinhos com transístores cortados
• Partilhar as extremidades quando ligadas a Vdd ou Gnd
PMOS
NMOS
Vdd
Gnd
BA
Out
Vdd
Gnd
A
B
Out
Porta NAND com gate isolation
Pode ser partilhado pela porta vizinha
Exemplo de Gate-array
Inicialmente PAL (Programmable Array Logic) realizados com arrays de ands e ors configuráveis (fusíveis) e registos nas saídas
Complex PLDs (CPLDs) incluem múltiplos blocos and – or com interligações configuráveis
Lógica programável
Blocos lógicos e de entrada/saída programáveisInterligações programáveis entre blocos lógicos Não há definição de máscaras (dispositivos standard)Só lógica digitalDesempenho médio baixo (<50 - 100MHz)Densidade média (10 Milhões de gates)Programação: SRAM, EEROM, Flash, Anti-fuse, etcMudanças no projecto fáceis e rápidasFerramentas de desenvolvimento baratasBaixo custo de desenvolvimentoCusto elevado por dispositivoNão é um verdadeiro ASIC
(Application Specific Integrated Circuit)
FPGA = Field Programmable Gate Array
Utilização de RAM ou ROM para implementar lógica:Look Up Table (LUT)
Logic
Qualquer função pode ser implementada usando lógica de descodificação de endereços + array de memória
Inputs Output
--0000 0--0001 0--0010 1--0011 1--0100 0-------- ---1111 0
Address(input)
Data(output) • Look up tables não conduzem normalmente a
uma solução óptima (área e desempenho)
• LUTs são usadas em aplicações específicas: • codificadores, descodificadores e• lógica programável em FPGAs
FPGAs
Os blocos de lógica são constituídos por LUTs e alguns registos. As interligações são configuráveis através de matrizes de comutação.
Há interligações de tipos distintos para sinais: de relógio, locais e que percorrem caminhos longos.
Switch matrix
Interligação para caminhos longos
LUT para implementar lógica oupara usar como memória
Xilinx:
FPGAs
Seis transístores porponto de interligação
Baseadas em memória SRAM (Xilinx):
• Configuração controlada por memória estática• Configuração carregada em série e associada a uma checksum• O FPGA tem que ser reprogramado a partir de um PC ou PROM
série quando se liga a alimentação• A informação necessária para configurar o FPGA é de Mbits• Normalmente há internamente blocos de RAM e multiplicadores
disponíveis• Há o risco de ocorrerem SEU provocados por radição
FPGAs
Projecto:• Baseado em síntese e Place and Route automáticos.• O desempenho local de blocos pequenos consegue ser elevado.• Blocos grandes têm desempenho limitado pelos atrasos nas
interligações.• Cada arquitectura de FPGA tem blocos funcionais optimizados
disponibilizados como macros: Counters, adders, multipliers, FIFO’s, etc.– É importante usar estes blocos optimizados para conseguir
desempenho elevado• A estimativa de atrasos é: fixa para LUTs e FFs; ajustada nas
interligações de acordo com o comprimento e o número de switches.• Se a ocupação da FPGA estiver próxima do limite o place and route
torna-se muito demorado.
FPGAs
Aplicações:
• Baixo e médio volume de produção• Reconfigurable computing: compilar algoritmos para implementação
em hardware de FPGA. (fronteira ténue entre hardwired and soft coded)
• Prototipagem de ASICs: o projecto de um ASIC sintetizado num conjunto de FPGAs para verificação (com desempenho limitado).
• Processamento digital de sinais específico não implementável nos DSPs disponíveis.
• Quando o custo ou tempo de desenvolvimento de uma ASIC não pode ser suportado (paga-se mais por unidade).
• Algumas FPGA’s permitem que os projectos nelas implementados sejam transpostos para ASICs de forma rápida se o volume de produção o justificar.
FPGAs
Tendências:
• Crescente número de FPGA’s/CPLDs com mais funcionalidades e maior desempenho que benificiam das tecnologias actuais
• Os custos são baixos apesar das áreas serem grandes devido aos elevados volumes de produção
• Incorporação de blocos IP (microprocessadores, interface PCI, etc.)• Incorporação de blocos de IO de muito alto débito (multi gigabit/s)• Versões especiais com maior resistência à radiação (para aplicações
no espaço)
FPGAs
Blocos pré-definidos (Processadores, RAM, etc)Blocos desenvolvidos em full custom
(Intellectual Property blocks = IP blocks)Todas as camadas detalhadas no projecto Circuitos digitais e alguns analógios (conversores AD)Simulação de portas lógicas (digital) ou comportamentalDensidade altaDesempenho elevadoTempo de projecto curto“System on a chip” (SOC)
DSP processor
LCDcont. RAM
ROMADC
Macro cell
FPGA Gate array Standard cell Full custom Macro cellDensidade média média média alta altaFlexibilidade baixa baixa média alta médiaAnalógico não não não sim simDesempenho baixo médio alto muito alto muito altoTempo de projecto baixo médio médio alto médioCusto do projecto baixo médio médio alto altoFerramentas simples complexas complexas muito complexas complexasVolume baixo médio alto alto altoDevice cost High Medium Low Low Low
Comparação
Mistura de full custom, standard cells e macro’sFull custom para blocos especiais: Adder (data path), etc.Macro’s para blocos standard: RAM, ROM, etc.Standard cells para os restantes blocos digitais
Pentium Power PC
CIs de alto desempenho
FPGA’s com RAM, interface PCI, porta série, processador, ADC, PLL, etc.
Gate arrays com RAM, processador, ADC, etc
Processor
RAM
FPGA ou Gate-array
Combinações
RAM: Random Access MemorySRAM: Static RAMDRAM: Dynamic RAMFLASH: “Permanent” RAM (no power needed)ROM: Read Only MemoryPROM: Programmable ROMEPROM: Erasable PROM (with UV light)EEPROM: Electrical Erasable PROMDPM: Dual Port MemoryFIFO: First In - First Out
Memórias
Read-Only Memory (ROM)– A informação está na topologia do circuito– Não pode ser modificada: só lida– As ROM’s não são voláteis. Sem alimentação o circuito
mantém a informação
Classificação Memórias
Read Write Memories (RWM)– RWM permite leitura e escrita– RWM pode ser de dois tipos:
• Estática: informação guardada em flip-flops• Dinâmica: informação guardada em condensadores
– Ambos os tipos são voláteis: perdem a informação quando se desliga a alimentação
– As memória dinâmicas requerem um “refresh” periódico do seu conteúdo para compensar a perda de carga devida a correntes de fuga
Classificação Memórias
Nonvolatile Read-Write Memories (NVRWM)– Memória não volátil que pode ser escrita– Contudo,
• A escrita é muito mais demorada que a leitura• Em aguns tipos de NVRWM’s, a escrita requer
equipamento específico– Exemplos:
• EPROM (Erasable Programmable Read-Only Memory)• E2PROM (Electrically Erasable Programmable Read-
Only Memory)
Classificação Memórias
As memórias também são classificadas de acordo com a forma como é possível aceder aos seus dados:
– Random Access Memory (RAM): acesso a qualquer posição para leitura ou escrita
– First-In First-Out (FIFO): a primeira palavra a ser escrita é a primeira a ser lida
– Last-In First-Out (LIFO): a última palavra a ser escrita éa primeira a ser lida (stack)
– Shift Register: a informação é acedida em série. Pode funcionar como FIFO ou LIFO
Classificação Memórias
Read-access time: tempo entre o pedido de leitura e os dados estarem válidosWrite-access time: tempo entre o pedido de escrita e a escrita efectivaRead or write cycle time: mínimo tempo necessário entre leituras ou escritas
consecutivas
R E AD
W R ITE
D ATA
data va lid
read cyc le
read access
stab le data
w rite cycle
w rite access
data w ritten
Ciclo de leitura/escrita
Memória com N palavras, cada uma com M bits• Cada palavra é seleccionada para escrita ou leitura• Um descodificador é usado para activar uma linha única a partir de um endereço binário• Esta estrutura não é prática, resulta numa grande desproporção entre x e y no layout da memória
W ord 0
W ord 1
W ord 2
W ord N -2
W ord N -1
Input/output(M b its)
M b its
N w
ords
Addr
ess
deco
der
A 0
A 1
A k-1
k = log 2N
w ord se lect linesstoragece ll (1 bit)
Arquitectura de memórias
Memórias organizadas para terem layout quase quadrado:
– Várias palavras na mesma linha e seleccionadas simultâneamente
– A selecção de uma palavra específica faz-se com um descodificador de coluna
– Um endereço é constituído por dois campos:
• Endereço de linha• Endereço de coluna
– Mesmo esta estrutura é impraticável para memórias superiores a 256Kbits Input/output
(M b its)
A j
A j+1
A k
b it line
wor
d lin
e
Row
dec
oder
Sense am plifiers / drivers
colum n decoder
A 0
A j-1
M 2J
2K -J
Arquitectura de memórias
Na área requerida para a implementação das memórias édominante a área de armazenamento. Por isso éfundamental usar células básicas com dimensão mínima.Minimiza-se a área da célula de memória básica:
– Reduzindo a capacidade de fornecer corrente pela célula – Reduzindo a diferença de tensão entre os níveis lógicos
(e a margem de ruído)Tornam-se necessários sense amplifiers para restabelecer os níveis de tensão entre VDD e GND
Arquitectura de memórias
Com o aumento da dimensão aumenta o atraso dedido à resistência das linhas e às capacidades associadas a bits e palavras
A solução é partir a memória em blocos menores, o que permite:– Usar linhas locais menores ⇒ menores tempos de acesso– Desligar os sense amplifiers e descodificadores de blocos não activos
⇒ menor consumo
rowaddress
columnaddress
blockaddress
global data busglobal
amplifier driver
I/O
block 0 block 1 block 2 block 3
Arquitectura de memórias
Células simples por terem informação fixa
A activação da linha de palavra (word line) origina 1 ou 0 em cada bit line:
– Sem NMOS a célula contém um 1– Com NMOS a célula contém um 0
O TMOS isola a bit line da word line
V dd
W ordline
B itline
S tored 0
V dd
B itline
S tored 1
ROM
Vdd
Pull-updevices
WL[0]
WL[1]
WL[2]
WL[3]
BL[0] BL[1] BL[2] BL[3]
GND
GND
ROM
Partilha por duas
linhas
Transístores pull-down com dimensões mínimas:
– Reduz a área da célula– Reduz as capacidades
R(pull-up) > R(pull-down) para:– Assegurar um ‘0’ com tensão baixa
Em memórias grandes a capacidade das bit lines é da ordem do pF, logo a transição 0->1 é lenta Um pull-up mais forte é necessário mas origina um VOL mais elevado
– Reduz a margem de ruúdo mas torna a transição 0->1 mais rápida
– Requer sense amplifier para efectuar o interface com os níveis da restante lógica
– Um inversor com thresholdajustável pode se rusado como sense amplifier
Metal1 on top of diffusion
Basic cell10 λ x 7
λ
2 λ
WL[0]
WL[1]
WL[2]
WL[3]
GND (diffusion)
Metal1
Polysilicon
(from J. M. Rabaey 1996)
0 ⇒ com contacto metal-difusão1 ⇒ sem contacto metal-difusãoSó os contactos são usados para programar a memória
ROM
Desvantagens:– VOL depende da relação pull-up/pull-down dos transístores–Corrente estática elevada em memórias grandes
Solução:–Usar pre-charged logic–Elimina a dissipação estática–As bit lines são inicialmente pré-carregadas pelos transístores PMOS (com as WL desactivadas)–As WL são activadas para realizar a leitura da palavra (com os PMOS off)
Vdd
Pull-updevices
WL[0]
WL[1]
WL[2]
WL[3]
BL[0] BL[1] BL[2] BL[3]
GND
GND
Φ pre-charge
ROM
Esta é a estrutura mais usada
• A mesma arquitectura que as ROM• O pull-down é modificado para permitir controlo da
tensão de threshold• O valor programado da tensão de threshold é mantido
“indefinidamente”: memória não volátil• Para reprogramar a memória os valores de threshold
programados têm que ser apagados• As memórias NVRW são viabilizadas por transístores
que têm uma porta adicional flutuante (Floating Gate Transistor – FAMOS)
Nonvolatile read-write memories
• A porta flutuante é inserida entre a porta e o canal
• O dispositivo funciona como um transístor normal
• A tensão de threshold éprogramável
• Como a espessura do SiO2(tox) é duplicada, a transcondutância éreduzida para metade e a tensão de thresholdaumenta
Floating-gate transistor (FAM O S)
p-substrate
n+n+
tox
tox
G ate Floating gateS D
Nonvolatile read-write memories
Programação do FAMOS:– É aplicada uma tensão entre a
fonte e a porta (ligada ao dreno)– O campo eléctrico causa a
passagem de electrões para a porta flutuante onde ficam aprisionados (tox = 100nm)
– O processo é terminado de forma automática, as cargas acumuladas na porta flutuante reduzem o campo
– O transístor FAMOS com cargas na porta é equivalente a um transístor NMOS com VT mais elevado
– As tensões normais de funcionamento não conseguem por o transístor em condução
S D
10V 5V
1) Avalanche injection+20
S D
-5V
2) Charge trapped on the floating gate
0V 0V
S D
-2.5V
3) Trapped charge <=> higher VT
5V
Nonvolatile read-write memoriesInjecção de cargas
Cargas aprisionadas na porta
<=> Vt aumenta
Os transístores não programados, como têm Vt menor, conduzem quando têm vGS = VDD (da word line) – as células correspondentes guardam um “0”
Nos transístores programados, vGS = VDD(na word line) não é suficiente para obter a condução – as células correspondentes guardam um “1”
Como a porta flutuante está rodeada por SiO2, a carga injectada pode ser mantida por muitos anos
V dd
W ordline
B itline
S tored 0
V dd
B itline
S tored 1
not program m ed program m ed
Nonvolatile read-write memories
não programado programado
Programado um “0” Programado um “1”
Apagar o conteúdo da memória (EPROM):– Uma luz UV forte apaga a memória:
• A luz UV torna o óxido ligeiramente condutivo por gerar pares electrão-lacuna no SiO2
– É um processo lento – vários minutos– A programação demora 5-10µs/palavra– O número de ciclos de programação é limitado (<1000)
Electrically-Erasable PROM (E2PROM)– Um mecanismo de reversible tunneling permite que as
E2PROMs sejam programadas e apagadas electricamente
Nonvolatile read-write memories
Static Read-Write Memories (SRAM):– A informação é mantida por
realimentação positiva– A memória é volátil
A célula usa seis transístoresA leitura ou escrita é activada pela
word-lineA escrita e leitura é feita por duas
bit-lines para melhorar a margem de ruído
Antes da leitura, as duas bit-linessão pré-carregadas a Vdd/2:
– Para acelerar a leitura– Para evitar mudar indevidamente o
estado da célula
Q Q
bit-line bit-line
word-line
bit-line bit-line
word-line
M1
M2
M3
M4
M5 M6
Read-write memories
Desempenho da SRAM:– A leitura requer a carga e
descarga das elevadas capacidades das bit-linesatravés dos pequenos transístores da célula
– No tempo de escrita édominante o tempo de propagação do par de inversores realimentados
– A célula com seis transístores requer muita área (sobretudo para interligações)
VDD
GND
WL
BLBL
M1 M3
M4M2
M5 M6
(from J. M. Rabaey 1996)
Read-write memories
SRAM com carga resistiva– Usa resistências em vez de transístores
PMOS– As bit-lines estão pré-carregadas a Vdd:
• A transição 0->1 ocorre na pré-carga• As resistências de carga não fornecem
corrente para as transições nas transições
– As resistências só mantêm o estado da célula:
• Compensam a corrente de fuga (10-15A)• Devem ter um valor tão elevado qto
possível para limitar a dissipação estática de potência
• É usado silício policristalino não dopado para realizar as resistências
– O dimensionamento dos transístores deve ser feito por forma que a leitura não altere o estado da célula
Q
bit-line
w ord-line
Q
bit-line
R R
Read-write memories
Dynamic Random-Access Memory (DRAM)– Numa memória dinâmica a informação é
guardada como carga num condensadorCélula com três transístores (3T DRAM):
– Escrita:• bit-line 1 = dado a memorizar• Activar write word-line (WWL)• Quando WWL = “0” a informação fica
guardada como carga em C– Leitura:
• Pré-carga de bit-line 2 (BL2) a Vdd• Activar read word-line• Se C contém um “1”, M2 e M3 forçam a
“0” a bit-line 2• Se C contém um “0”, a bit-line 2 fica
inalterada
write word-line
bit-line 1
X
C
M1 M2
M3
bit-line 2
read word-line
WWL
RWL
BL1
XVdd - VT
BL2Vdd
∆V
Read-write memories
– A célula é inversora– Devido às correntes de fuga a
célula necessita de ser regularmente reescrita (refreshentre cada 1 a 4ms)
– Refresh:• leitura• BL1 = dado lido negado• enable/disable da WWL
– Comparada à memória SRAM, as DRAM têm área significativamente menor (redução no número de dispositivos e de interligações)
M1
M2
M3
BL1 GNDBL2
WWL
RWL
Read-write memories
Célula com um transístor (1T DRAM)– Usa um transístor e um condensador– É a topologia mais utilizada nas DRAMs comerciais
Escrita:– O valor a escrever é forçado na bit-line– A word-line é activada– Dependendo do valor lógico, a capacidade é carregada ou
descarregada
bit-line
Vbit
CS
word-line
CBL
parasitccapacitanceof the bit-line
WL
Vbit
Vdd-VT
BLVdd
Vdd/2
sensing
Read-write memories
Leitura:– A bit-line é pré-carregada a
Vdd/2– A word-line é activada e a
carga na célula redistribui-se entre CS e a bit-line
– Há uma alteração na tensão da bit-line, o sentido desta variação indica o dado:
– CBL é 10 a 100 vezes maior do que CS ⇒ ∆V≅ 250mV
DV =�V BIT−V dd
2 �CS
C S�CBL
– A quantidade de carga armazenada na célula é modificada durante a leitura
– Contudo, durante a leitura, a saída de um amplificador (sense amplifier) é imposta na bit-line repondo a carga armazenada
V BL
V dd/2
t
∆V (1)
"1"
"0"
sense am p activated
word-line activated
Read-write memories
Contrariamente às células anteriores, a célula 1T requer um sense amplifier
Adicionalmente, é necessário um condensador de capacidade relativamente elevada
Um “1” é guardado como Vdd-VT, o que reduz a carga armazenada:– Para evitar esta redução,
a word-line pode ser forçada a um valor de tensão superior a Vdd
Read-write memories
Os sense amplifiers melhoram o desempenho da memória:– Compensam o facto das
células não poderem fornecer muita corrente
Contribuem para a redução da potência por permitir a operação com menores variações de tensão nas bit-lines muito capaciticas
Nas células 1T restauram o sinal na leitura ou reescrita
x x
y
SE
Sense amplifiers
Sense amplifiercom par diferencial
Um par de inversores realimentados (latch) pode ser usado como sense amplifier:– As bit-lines são curto-circuitadas – o latch
fica no ponto de metaestabilidade– A tensão nas bit-lines desequilibra o
ponto de metaestabilidade do latch– O sense amplifier é activado quando a
diferença de tensões for suficiente– O latch comuta para um estado estável– A transição é rápida devido à
realimentação positivaIdeal para a célula DRAM 1T DRAM pois as
entradas e saídas do amplificador coincidem BL SE
SE
BL
Sense amplifiers
O array de células está dividido em duas partes e o sense amplifier está no meio
É adicionada uma célula de referência de cada lado
L0L1L
dummy cell
R0 R1 L
dummy cell
EQ
O sinal EQ é activado e ambas as bit-lines são pré-carregadas a Vdd/2
As células de referência também são pré-carregadas com Vdd/2
É seleccionada a célula de referênciano lado da bit-line oposto àquele em que a
célula a ler é seleccionada
Sense amplifiers
Ciclo de leitura de SRAM:Pré-carga:
– as bit-lines são pré-carregadas a Vdd ficando com tensão idêntica
Leitura:– Desactivar a pré-carga– Activar as word-lines– Activar o sense amplifier
Os TR PMOS em condução permanente limitam a variação de tensão nas bit-lines e facilitam a próxima pré-carga
Q
WL
Q
bit-line bit-line
R R
PC
Sense amplifiers
Ext. C LK C lockpad
D LL
clock route
Q O utputpad
Int. C LKIC
Externa l clock
In terna l clock
O utput data
Phase a ligned
O utput data registers delay
Delay Locked Loops
Phasedetector
C hargePum p
VC DF in
D elay Locked Loop
U p/D ow n
out(t) = in(t-td)
Delay Locked Loops
Phase detector
D Q
R ST
R eference clock
VC D output
U p/D ow n
R eference
V C D
U p/D ow n
Phase d ifference
Delay Locked Loops
Ext. C LK C lockpad
PLL
clock route
Q O utputpad
Int. C LKIC
4
Externa l clock
In terna l clock
O utput data
Phase a ligned
O utput data registers delay
Phase Locked Loops
Phasedetector
C hargePum p
U p
D ow n VC O
N
F in F out = N x F in
Phase Locked Loop
Phase Locked Loops
D Q
R ST
D Q
R ST
"1"
"1"
Reference c lock
From the VC O
U p
Dow n
R eference
VC O
U p
D own
Phase d ifference
Phase Frequency D etector
Phase Locked Loops
Layout Analógico - Resistências
• Resistências dummy devem ser adicionadas para minimizar o efeito do etching mais rápido que ocorre quando há grandes áreas de poly desprotegidas para remoção
•A resistência dos contactos deve ser tida em consideração
•A fim de diminuir o ruído •usar anéis de guarda à volta da resistência•realizar a resistência sobre um poço
•Quando se pretende matching entre resistências, estas devem realizar-se com:
• a mesma orientação •de forma interdigitada (ver matching de transístores adiante)
Layout Analógico - Condensadores
• Condensadores dummy devem ser adicionados para minimizar o efeito do etching mais rápido que ocorre quando há grandes áreas de poly desprotegidas para remoção
•A fim de diminuir o ruído •usar anéis de guarda à volta do condensador•realizar o condensador sobre um poço
•Quando se pretende matching entre condensadores, estes devem realizar-se com uma geometria de common centroid
(ver matching de transístores adiante)
Layout Analógico - Transístores
• Diminuir a resistência da porta dividindo-a em secções
• Diminuir a resistência da porta pondo contactos em ambos os extremos da poly
• Portas dummy devem ser adicionadas nos extremos dos transístores para minimizar o efeito do etching mais rápido que ocorre quando há grandes áreas de poly desprotegidas para remoção
•A fim de diminuir o ruído usar anéis de guarda à volta do transístor
•Quando se pretende matching entre transístores, estes devem realizar-se •usar maiores áreas para as portas •não usar metal sobre a porta de um dos transístores•usar uma geometria de common centroid
Common-Centroid Layout:Matching de dois transístores com a porta dividida em duas partes
Topologia: DASBDBSAD
BA
Layout Analógico - Matching
Exemplos de topologias para interdigitartransístores MOS:
1. (DASBDBSA)D A:B = 1:1
2. (SADA)(SBDBSBDB)(SADAS)
3. (SADASBDB)S(BDBSADAS)
4. (SADASBDBSADA)S A:B = 2:1
5. (SADASBDBSCDC)S(CDCSBDBSADAS) A:B:C = 1:1:1
Layout Analógico - Matching
Regras para realização de layout com topologia Common-Centroid:
1. Posicionamento: Os centros geométricos dos dispositivos aemparelhar devem estar muito próximos
2. Simetria: A distribuição dos dispositivos deve ser simétrica segundo x e y
3. Regularidade: A distribuição dos dispositivos parciais deve ser feita deforma tão uniforme quanto possível
4. Dispersão: O array deve ser tão compacto e próximo de um quadradoquanto possível
5. Orientação: Deve existir coincidência entre o número de dispositivosparcelares orientados em cada direcção
Layout Analógico - Matching
DASBD
DBSAD
B A
• A B / B A satisfaz a regra da orientação.
Layout Analógico - Matching
Divisão em dois transístoresCommon-Centroid
DASBDBSAD
DBSADASBD
DASBDBSAD
DBSADASBD
Common-Centroid
Layout Analógico - Matching
DASBDBSADASBDBSAD
DBSADASBDBSADASBD
DASBDBSADASBDBSAD
DBSADASBDBSADASBD
DASBDBSADASBDBSAD
DBSADASBDBSADASBD
Analog design
Initial design criteria (after reading process parameter data):
• current budget limited• overdrive voltage: VGS-VT > 200mV• Lmin = 1µm (avoid short channel effects
and limit sub-threshold current)• W.Lmin: Offset limited• W/L : gm limited
Vos in the differential the pair
diffdiff
VTdiffTdiffOS LW
AVV 3_max__ =∆=
99,7%
24_ // oodiffmd rrgA =
diffToodiffmdiffO VrrgV _24__ // ∆×=
Vos in the differential the pair (c. mirror)
diffm
mirrm
mirrmirr
VTmirrOS g
gLW
AV_
_max__
3=
( ) ( )2_
2_ mirrOSdiffOSOS VVV +=
mirrToomirrmmirrO VrrgV _24__ // ∆×=
24_ // oodiffmd rrgA =
Par diferencial cascode CMOS
Ganho entre 5,000 e 10,000
• Vantagem: Ganho elevado• Inconveniente: modo comum mais limitado
•Ro = Ro2C // Ro4C= (gm2C ro2C ro2)//(gm4C ro4C ro3)
•A1 = - gm1 Ro
Layout Analógico – Par dif. cascode
Ro = Ro2C//Ro4C= [gm2C ro2C (ro7//ro2)]//(gm4C ro4C ro3)
A = gm1 Ro
Vantagem: modo comum mais limitado
Layout Analógico – Par dif. folded-cascode