Você está na página 1de 21

Janaína Domingues Costa

Departamento de Engenharia Elétrica – Universidade de Brasília


Maio 2005
ÍNDICE

ÍNDICE.......................................................................................................................................................... 2
INTRODUÇÃO.............................................................................................................................................. 3
ABRINDO O CADENCE .............................................................................................................................. 4
CRIANDO UMA NOVA BIBLIOTECA DE TRABALHO.......................................................................... 4
CAPTURA DE ESQUEMÁTICO ................................................................................................................. 4
ABRINDO UMA NOVA JANELA DE ESQUEMÁTICOS....................................................................................... 4
ADICIONANDO COMPONENTES................................................................................................................... 5
CRIANDO UM SÍMBOLO ........................................................................................................................... 8
SIMULAÇÃO ................................................................................................................................................ 8
CRIANDO UM LAYOUT............................................................................................................................ 12
LAYOUT DO INVERSOR CMOS ................................................................................................................. 12
VERIFICAÇÃO DE REGRAS DE PROJETO - DRC (DESIGN RULE CHECKING) .............................................. 17
EXTRAÇÃO DO LAYOUT............................................................................................................................ 18
LVS (LAYOUT VERSUS SCHEMATIC) ....................................................................................................... 18
SIMULAÇÃO PÓS LAYOUT (INVERSOR CMOS)......................................................................................... 19
MY QUEENÃO

Este manual pretende servir como guia para o Laboratório de Projeto de


Circuitos Integrados (LPCI) do Departamento de Engenharia Elétrica da Universidade de
Brasília. Ele contém um tutorial completo para um fluxo de projeto bottom-up típico,
usando o ambiente CADENCE. Os exemplos foram gerados usando tecnologia
AMS_0,35µm.

A figura abaixo apresenta o fluxo de projeto bottom-up e as ferramentas


CADENCE usadas em cada uma de suas etapas.

Fluxo de projeto
ABRINDO O CADENCE

Com o botão direito do mouse clique


na área de trabalho. Clique em tools e
em seguida em terminal. Digite cd
<nome da sua pasta>.
No diretório /home/curso/<nome da
sua pasta> inicialize o CADENCE
usando o seguinte comando:
ams_cds –tech c35b4 –mode msfb

Esse comando abrirá a janela Library


Manager do Cadence (Figura 1).
Figura 2. Criação da library Tutorial

Uma nova janela aparecerá pedindo


informações sobre o arquivo de
tecnologia usado nessa biblioteca.
Selecione a opção Attach to an existing
techfile e clique em OK. Uma caixa de
diálogo chamada Attach Design Library
To Technology File aparecerá (Figura 3).
Selecione a tecnologia TECH_C35B4
(0,35 um com 4 níveis de metal) no
Figura 1. Library Manager campo Technology Library e clique em
OK.
Esta janela mostra todas as
bibliotecas cujas células podem ser
utilizadas pelo usuário em seus projetos.
Observe que cada célula pode possuir
vários Views (layout, schematic, symbol,
etc.).
Figura 3. Escolha do arquivo de tecnologia
CRIANDO UMA NOVA BIBLIOTECA DE (TECH_C35B4)
TRABALHO
A biblioteca Tutorial está criada e
Antes de começar a desenhar nosso você pode encontrá-la na primeira
primeiro esquemático, precisamos criar coluna da janela Library Manager.
uma nova biblioteca. Na janela Library
Manager clique em File -> New ->
CAPTURA DE ESQUEMÁTICO
Library. Uma caixa de diálogo irá
aparecer. Digite o nome da biblioteca no
campo Name dessa janela e clique em Abrindo uma nova janela de
OK (camaremos nossa biblioteca de esquemáticos.
Tutorial). Selecione a biblioteca Tutorial criada
anteriormente. O próximo passo é criar
uma nova célula. Neste caso, vamos view name correspondente. Uma vez que
criar um esquemático. Na barra de menu faremos o esquemático de um inversor, a
do Library manager clique em File → escolha correta do view name é
New → Cellview (Figura 4). “schematic”.
4. Tool: Aqui, você deve selecionar a
ferramenta de projeto que será utilizada
para realizar o projeto. A ferramenta
depende do nível hierárquico em que seu
projeto se encontra. Somente três dessas
ferramentas serão usadas para todos os
Figura 4. Criação de uma nova célula exemplos:
dentro da biblioteca Tutorial
Composer Schematic Schematic
Uma pequena janela chamada Editor
Create New File aparecerá (Figura 5): Composer Symbol Symbol Editor
Virtuoso Layout Layout Editor

Uma vez que faremos um


esquemático, nós escolheremos o
Composer Schematic. Observe que a
escolha dessa ferramenta faz com que o
view name seja automaticamente
convertido para schematic.
Figura 5. Escolha dos atributos da nova A janela Create new file deve ser
célula preenchida conforme mostra a figura 5.
Em seguida clique em OK para fechar
Existem 4 campos importantes na essa janela e abrir a janela do editor de
janela Create New File: esquemáticos.
1. Library Name: Você deve escolher Adicionando Componentes
seu diretório de trabalho clicando com o
botão esquerdo do mouse no campo Obs: Nesse ponto você deve ter uma
library. Uma vez que, neste exemplo, o janela de edição de esquemáticos vazia
nome da biblioteca é “tutorial”, nós aberta.
escolheremos o label correspondente,
“tutorial”. O primeiro passo é adicionar e
2. Cell Name: Entre com o nome da posicionar os componentes que serão
célula cujo esquemático será desenhado. usados no esquemático. No caso de um
Neste exemplo, desenharemos o inversor, precisamos dos seguintes
esquemático de um inversor. Assim, componentes:
digite “inverter” no campo Cell Name.
3. View Name: O view name indica o • PMOS : p-type MOSFET
nível da hierarquia de projeto. Você • NMOS : n-type MOSFET
pode determinar se irá desenhar um • VDD : Power supply voltage
símbolo, um esquemático ou um layout • GND : Ground line
nesse campo simplesmente digitando o
Para adicionar componentes, clique
em Add na barra de menu e em seguida
em Component, como mostrado na
Figura 6. Uma alternativa é clicar no
atalho Add Instance, à esquerda da tela.

Figura 8. Posicionamento dos transistores


PMOS e NMOS

Figura 6. Add --> Component O próximo passo a ser dado é inserir


a fonte e o terra do circuito. Esses
A janela Add Component irá componentes podem ser encontrados na
aparecer (Figura 7). Nela, você pode ANALOGLIB. O procedimento para
determinar o Library Name, o Cell Name desenhar e posicionar esses componentes
e o View Name do componente a ser é o mesmo utilizado para inserir
adicionado ao esquemático. transistores e está descrito acima. A
Figura 9 ilustra como deve ficar o
esquemático após a inserção de vdd e do
terra.

Figura 7. Janela Add Component

Nós começaremos selecionando os


transistores MOS usando o botão
Browse da janela mostrada na Figura 7.
A biblioteca onde os transistores NMOS
e PMOS se encontram é a PRIMLIB.
Assim, selecionaremos essa biblioteca e
clicaremos no dispositivo “nmos4”. Se Figura 9. Posicionamento do terra e do Vdd
você mover o ponteiro do mouse na
janela de esquemáticos você verá o Depois que todos os componentes
transistor NMOS. Decida onde colocá-lo forem posicionados devemos interligá-
e clique na posição desejada. O mesmo los. Para isso devemos escolher a opção
procedimento deve ser utilizado para Add -> Wire (narrow) da barra de menu
desenhar e posicionar o transistor ou clicar no atalho Wire(narrow)
PMOS. A Figura 8 serve de referência. localizado a esquerda da tela. Para ligar
dois componentes, deve-se clicar com o
botão esquerdo do mouse no terminal do
primeiro componente soltar o botão e
clicar novamente no terminal do
segundo componente. A Figura 10
ilustra como deve ficar o esquemático.
Ao terminar as ligações, pressione ESC
para desativar a opção Wire(narrow).

Figura 11. Propriedades do transistor

Para finalizar o esquemático, é


necessário inserir pinos de I/O para
identificar as entradas e saídas do
circuito. Isso é feito da seguinte forma:
clique na opção Add -> Pin da barra de
menu ou clique no atalho Pin localizado
à esquerda tela. Uma janela semelhante à
Figura 10. Esquemático com componentes
interligados
mostrada na Figura 12 aparecerá.

Os componentes que foram


selecionados das libraries vêm com
parâmetros e propriedades padronizados.
Precisamos alterá-los para que os
componentes obedeçam às
especificações do projeto. Alteremos as
propriedades do transistor PMOS como Figura 12. Adição de pinos de entrada e saída
exemplo. O primeiro passo é selecionar
o transistor clicando sobre ele com o Digite o nome do seu pino de entrada
botão esquerdo do mouse. Em seguida, no campo Pin Names. Selecione a opção
escolha a opção Edit -> Properties -> input no campo Direction e posicione o
Object ou clique no atalho Properties pino de entrada no local desejado do
localizado à esquerda da tela. Uma esquemático. Faça o mesmo com o pino
janela semelhante à apresentada na de saída. Note que o campo Direction
Figura 11 aparecerá. Para alterar a deve ser alterado para output. Quando
largura do canal do transistor, clique no não houver mais pinos de I/O para serem
campo Width e digite o valor desejado inseridos, pressione a tecla ESC. A
para ele. Nesse exemplo, faremos Wn = Figura 13 apresenta o circuito completo
0.5µm Wp = 1.2µm e L= 0.4µm. do inversor.
Figura 15. Janela para criação de símbolo

Nessa janela, podemos editar os


atributos e localizações dos pinos. No
caso padrão, as entradas ficam do lado
Figura 13. Esquemático completo do inversor
esquerdo do símbolo, e as saídas, do
lado direito. Você pode alterar a
Para verificar e salvar o esquemático, localização dos símbolos simplesmente
clique na opção Design -> Check and colocando o nome do pino no campo de
Save da barra de menu, ou no ícone localização desejado. Se você não quiser
correspondente à esquerda da tela. fazer alterações, basta clicar OK. Uma
Verifique se não há erros ou mensagens nova janela aparecerá, mostrando seu
de alerta na janela CIW. Na Figura 14, novo símbolo. A Figura 16 apresenta
vemos que não há erros no nosso essa janela.
esquemático.

Figura 14. Janela CIW Figura 16. Janela de edição do símbolo

CRIANDO UM SÍMBOLO Para verificar e salvar o símbolo


clique em Design -> Check and Save,
Depois que o esquemático do ou clique no ícone correspondente à
circuito for terminado, devemos criar um esquerda da tela.
símbolo para ele. Isso é feito clicando na
opção Design -> Create Cellview -> SIMULAÇÃO
From Cellview. A seguinte tela irá
aparecer (Figura 15): Abra um novo esquemático seguindo
o procedimento descrito anteriormente.
Dê um nome para o esquemático que
demonstre que sua função é simular o
inversor. Nesse exemplo chamaremos o
novo esquemático de inv_test. Uma
janela vazia do editor de esquemáticos Para editar as propriedades do
aparecerá. O primeiro passo é adicionar gerador de pulsos selecione o
os componentes que serão usados para componente vpulse e clique no atalho
simular o inversor: Properties. A janela Edit Object
Properties aparecerá. Preencha os
Inverter Símbolo criado Tutorial campos conforme o indicado pela Figura
Vdd Fonte de tensão AnalogLib 19.
gnd Terra AnalogLib
Vdc Fonte de tensão DC AnalogLib
vpulse Gerador de pulsos AnalogLib
Cap Capacitor AnalogLib

Posicione esses elementos e os


conecte usando o procedimento descrito
anteriormente. A Figura 17 mostra o
squemático final.

Figura 17. Esquemático para simulação do


inversor Figura 19. Propriedades do gerador de pulsos
vpulse
O próximo passo é alterar as
Os parâmetros listados na Figura 19
propriedades dos componentes do
são usados para definir um pulso que
circuito. Para modificar as propriedades
será repetido periodicamente. A Figura
da fonte DC, clique sobre ela com o
20 mostra como usar esses parâmetros
botão esquerdo e em seguida clique
para definir o sinal de entrada.
sobre o atalho Properties localizado à
esquerda da tela. A janela Edit Object
Properties irá aparecer. Digite o valor
3.3V no campo DC voltage (Vide Figura
18).

Figura 20. Parâmetros do sinal gerado pelo


vpulse

Figura 18. Propriedades da fonte DC vdc


Resta ainda alterar as propriedades
do capacitor que serve como carga para
o inversor. Devemos alterar o valor da
capacitância digitando o valor 25f F no
campo Capacitance da janela Edit
Object Properties (vide Figura 21).

Figura 22. Nomes dos fios

Depois que todos os labels forem


digitados, mova o cursor no
esquemático. Você verá que o primeiro
label estará flutuando junto com o
cursor. Clique no fio que corresponde a
esse label. Assim que você fizer isso, o
segundo label aparecerá junto com o
cursor. Esse procedimento deve ser
Figura 21. Propriedades do capacitor de carga repetido até que todos os labels sejam
posicionados. Em seguida, feche a janela
Após alterarmos as propriedades de Add Label pressionando ESC. A Figura
todos os componentes, é necessário 23 apresenta o esquemático com os
adicionar labels para os nós que labels. Verifique e salve o esquemático.
queremos observar durante a simulação. (Design -> Check and Save).
Em nosso exemplo, é importante
observar dois nós - a entrada e a saída do
inversor. Você pode pensar que já
nomeou essas redes anteriormente
adicionando os pinos no esquemático do
inversor. Entretanto, esses labels são
válidos apenas naquele esquemático, que
está agora em um nível hierárquico
anterior. Assim, todas as vezes que você
criar um símbolo e usá-lo em um novo
esquemático, você dever dar labels para
os nós que quiser especificar. Para
nomear os fios desejados, clique sobre o
atalho Wire (narrow) localizado à Figura 23. Esquemático final para simulação do
esquerda da tela. A janela Add Wire inversor
Name aparecerá. Digite os labels
desejados no campo Names dessa janela, Clique em Tools -> Analog
como indica a Figura 22. Environment. A janela Analog Artist
aparecerá. Note que os nomes das
library, cell e view aparecem no campo
Design de forma que você pode verificar
se está simulando a célula correta. A be Plotted -> Select on Schematic. A
Figura 24 apresenta essa janela. janela do esquemático ficará ativa de
forma que os nós podem ser
selecionados clicando com o botão
esquerdo do mouse. Em nosso exemplo,
os nós a serem selecionados são a
entrada e a saída do inversor. Cada vez
que um nó é selecionado, o nome da
respectiva conexão aparece na lista
Outputs. Pressione ESC quando acabar
de selecionar os nós.

Figura 24. Janela Analog Artist

Precisamos editar os parâmetros de


simulação. Clique em Analyses ->
Choose. A janela Choosing Analyses
aparecerá. Nela, você pode escolher o
tipo de simulação. Escolha a opção tran Figura 26. Janela Analog Artist mostrando os
sinais cujas formas de onda serão plotadas e o
no campo Analyses (com esse tipo de tempo de simulação
simulação podemos obter informações
sobre o atraso do inversor). No campo Simule o circuito clicando em
Stop Time digite o valor 30n. (Obs: não Simulation -> Run. A forma de onda irá
deixe espaços entre o número e a ordem aparecer assim que a simulação acabar.
de grandeza. Não digite o “s” de Você verá as duas formas de onda
segundos). A Figura 25 mostra esses sobrepostas, traçadas sobre o mesmo
parâmetros. eixo. Para separá-las, clique em Axes ->
To Strip. A Figura 27 mostra o resultado
da simulação do nosso exemplo.

Figura 25. Edição dos parâmetros da simulação


a ser realizada

Clique em OK e você voltará para a


tela Analog Artist. Em seguida, devemos Figura 27. Formas de onda obtidas na simulação
selecionar os nós que queremos observar
na simulação. Clique em Output -> To
CRIANDO UM LAYOUT LSW é a janela onde são
selecionadas as diferentes camadas para
Layout do Inversor CMOS projetar o CI. Ela contém uma lista com
Na janela Library Manager, todas as camadas possíveis para uma
selecione a biblioteca tutorial criada dada tecnologia. Cada entrada está
anteriormente. Observe que na coluna dividida em três categorias: cor, nome
View já existem dois itens: Schematic e abreviado e propósito. A cor define a
Symbol. Na barra de menu do Library aparência da camada no layout. A
manager, clique em File → New → abreviatura é o nome oficial da camada
Cellview. Uma pequena janela chamada para o virtuoso, e pode aparecer em
Create New File aparecerá. No campo mensagens de erros, etc. O propósito
Tool, selecione a ferramenta Virtuoso. pode ser dg para desenhar (drawing) ou
A palavra layout aparecerá pn para pinos (pin). A camada é ativada
automaticamente no campo View Name para edição clicando com o botão
da janela, conforme pode ser visto na esquerdo do mouse sobre ela (uma borda
Figura 28. marrom irá aparecer, indicando que a
camada está selecionada).
Quando o mouse está na janela de
edição de layout, então as coordenadas
X e Y do cursor aparecem entre a barra
de título e a barra de menu. Alem disso,
podem ser vistos os valores de dx e dy
(que são as distâncias em x e y entre o
último clique e a posição do cursor). Se
você cometer um erro, clique com botão
Figura 28. Criação de um layout
esquerdo em Edit -> Undo ou clique no
nono botão (de cima para baixo) da barra
Clique em OK para fechar essa
de ferramenta localizada à esquerda da
janela. As janelas Virtuoso Layout
janela. Feitas essas considerações,
Editing e LSW (Layout Select Window)
comecemos o layout do inversor.
abrirão automaticamente (vide Figura
Transistores são construídos
29).
sobrepondo diversas camadas. Aqui
utilizaremos os transistores PMOS e
NMOS existentes na biblioteca
PRIMLIB. Para tanto, clique com o
botão esquerdo do mouse no atalho
Instance (11º, de cima para baixo) da
barra de ferramentas localizada à
esquerda da janela (ou faça Create ->
Instance). A janela Create Instance
abrirá, conforme ilustra a Figura 30.

Figura 29. Janelas Virtuoso Layout Editing e


LSW
tipo p e tipo n foram inseridos e
posicionados adequadamente.

Figura 30. Janela Create Instance

Nessa janela, você pode alterar o Figura 31. Posicionamento dos transistores p e n
valor de W e de L para adequar o layout
do transistor ao seu projeto. No nosso Há duas formas de visualizar as
exemplo, faremos Wp = 1.2µm, Wn= instâncias. Uma forma é onde se
0.5µm e L = 0.4µm. Posicione um visualiza todas as camadas do layout
transistor do tipo p e um transistor do (como na Figura 31). A outra forma é
tipo n na janela Virtuoso Layout Editing onde se visualiza um contorno vermelho
de forma que os gates fiquem alinhados delimitando a área da instância. Para
e separados por uma distância de 2.3µm alternar entre as duas visualizações,
(AMS 0.35µm). Para mover um deve-se digitar: SHIFT + F e CTRL + F.
componente, selecione-o (clicando sobre Os transistores devem ser ligados
ele), clique no atalho Move (7º botão da para formar o inversor: gate com gate e
barra de ferramentas localizada à dreno com dreno. Na janela LVS, clique
esquerda da janela) e posicione o com o botão esquerdo do mouse na
componente no local desejado. Para camada MET1. Em seguida faça Create
determinar a distância, você pode usar a -> Rectangle ou clique no atalho
régua. Clique no atalho ruler (o último, “Rectangle” da barra de ferramenta
de cima para baixo) no lado esquerdo da localizada à esquerda da janela. Faça um
janela. Para medir uma determinada retângulo entre os transistores PMOS E
distância, clique no primeiro ponto, NMOS, cobrindo os contatos de ambos.
mova o cursor até o local e clique o Note que como os transistores são
botão esquerdo do mouse novamente. completamente simétricos, as regiões de
Você pode girar os transistores adotando fonte e dreno são permutáveis. Para
o seguinte procedimento: selecione o desenhar um retângulo, clique com o
transistor que deseja girar, clique em botão esquerdo do mouse em um ponto
Edit -> Other -> Rotate, clique qualquer da tela, solte o botão e, em
novamente no transistor e altere o ângulo seguida, clique no canto diagonalmente
da figura para a posição desejada. A oposto ao do primeiro clique.
Figura 31 mostra a tela do Virtuoso Precisamos agora ligar os gates dos
Layout Editing depois que os transistores dois transistores para criar a entrada do
circuito. Na janela LVS, clique com o
botão esquerdo do mouse na camada Selecione a opção MET1 do campo
POLY1. Em seguida faça Create -> Change to Layer. A Figura 33 ilustra
Path ou clique no atalho “Path” da barra essa operação.
de ferramenta localizada à esquerda da
janela. Para fazer a ligação, clique no
meio da camada de poly do transistor
PMOS. Você verá que a sombra da linha
irá aparecer. Mova esta sombra até o
meio do poly do NMOS e clique duas
vezes para acabar o caminho. Se você
clicar apenas uma vez, o editor
entenderá que o seguimento sendo
desenhado acabou e deixará você dobrar
o caminho e continuar desenhando. Note
que poderíamos ter usado o comando
rectangle ao invés do path. Este último
só foi usado por questão de aprendizado. Figura 33. Mudança de camadas no comando
A Figura 32 mostra o circuito com as path
ligações de dreno e gate.
Isso irá adicionar automaticamente
um contato no final do path sendo
desenhado. Note que, após a adição do
contato, o caminho ainda é uma sombra.
Você pode posicionar o contato no local
desejado clicando uma vez. Em seguida,
o path continuará usando a nova camada
(metal1). Para interromper o caminho,
clique duas vezes. A Figura 34 ilustra o
que foi descrito acima.

Figura 32. Ligações entre os drenos e os gates

Para fazermos a entrada, precisamos


criar um contato entre o metal e o poly.
Pode-se desenhar manualmente esse
componente, entretanto, nós faremos
esta conexão usando o comando path.
Desenhe um caminho (path) horizontal
começando do meio da ligação entre os
poly’s dos transistores PMOS e NMOS.
Clique uma vez no ponto onde deseja Figura 34. Criação do contato entre o
posicionar o contato. Pressione a tecla metal e o poly
F3 e a janela Path Options irá aparecer.
Agora que os transistores estão aparecerá. Posicione-o ao lado da fonte
posicionados e conectados, temos que do transistor PMOS (perto da linha
adicionar as linhas de Vdd e de terra. Na pontilhada azul, sem tocá-la).
janela LVS, clique com o botão
esquerdo do mouse na camada MET1.
Em seguida, faça Create -> Rectangle
ou clique no atalho “Rectangle” da barra
de ferramenta localizada à esquerda da
janela. Faça um retângulo horizontal
acima do transistor p e outro abaixo do
transistor n. Conecte as fontes dos
transistores tipo p e tipo n (fazendo um
retângulo de metal) às linhas de Vdd e
terra, respectivamente (vide Figura 35).
Figura 36. Janela Create Contact

Faça o mesmo para criar o contato


do transistor NMOS. No campo Contact
Type da janela Create Contact, selecione
agora a opção PD_C. Posicione o
contato próximo à fonte do transistor
tipo N (perto da linha pontilhada rosa,
sem tocá-la). A Figura 37 serve como
referência.

Figura 35. Adição e conexão do Vdd e terra

O substrato no qual os transistores


são construídos deve estar
adequadamente polarizado. Para fazer
isso, precisamos adicionar contatos de
substrato. Os transistores PMOS são
construídos em um substrato tipo n
(poço n). Assim, devemos criar um
contato de substrato tipo n. Pode-se fazer
isso manualmente, mas nós usaremos um Figura 37. Adição dos contatos de
substrato
contato pronto no nosso exemplo.
Faça Create -> Contact. A janela
Como pode ser visto na Figura 37, o
Create Contact irá aparecer. No campo
poço n não é grande o suficiente para
Contact Type selecione a opção ND_C
acomodar o contato do substrato tipo n
(vide Figura 36). A sombra do contato
(que foi posicionado ao lado da fonte do
transistor PMOS), gerando, assim, uma
violação das regras de projeto. Para
contornar esse problema, devemos
alargar o poço n, de forma que este
cubra também o conato. Uma maneira
simples de fazer isso é criando um
retângulo com a camada NTUB ao lado
do poço n já existente, como ilustra a
Figura 38.

Figura 39. Ligação dos contatos de


substrato ao terra e ao Vdd

O último passo é a criação dos pinos.


Clique em Create -> Pin. A janela
Create Pin abrirá (vide Figura 40).

Figura 38. Alargamento do poço n

Falta agora ligar os contatos de


substrato n e p ao terra e ao Vdd,
respectivamente. Isso pode ser feito o
comando path ou o rectangle. Veja a
Figura 39 como referência.
Figura 40. Criação dos pinos

No campo Terminal Name, digite o


nome do primeiro pino. Selecione a
opção Display Pin Name e escolha o tipo
de pino no campo I/O Type. Nós
criaremos quatro pinos: vdd, gnd, in e
out. Os nomes dos pinos devem ser os
mesmos usados no esquemático. Assim,
se você digitou IN (em letras
maiúsculas), o campo Terminal Name
deve ser preenchido da mesma forma.
Caso isso não seja observado, quando
utilizarmos a ferramenta de comparação
entre layout e esquemático, ela acusará Rule Checking). Para executar o DRC,
esse tipo de erro. Para inserir o pino de clique em Verify -> DRC. A janela DRC
entrada in, digite in no campo Terminal Options irá aparecer (vide Figura 42).
Name. Selecione a opção Display Pin
Name e escolha o tipo input no campo
I/O Type. Posicione o pino, clicando o
botão esquerdo do mouse no local
desejado do layout. Os outros pinos são
adicionados seguindo o mesmo
procedimento. Obs: os nomes dos pinos
de alimentação e terra devem ser escritos
como vdd! e gnd! (com a exclamação
no final) no campo Terminal Name. A
Figura 41 apresenta o layout completo
do inversor.
Figura 42. Janela com opções de DRC

Clique em OK e os resultados da
verificação serão mostrados na janela
CIW. Se houver erros, marcadores
brancos ficarão piscando sobre o layout.
Para saber o erro que cada marcador
indica, clique em Verify -> Markers ->
Find. Uma nova janela aparecerá. Clique
em next e verifique o erro indicado pelo
marcador. Se houver erros faça as
alterações necessárias e repita a DRC.
Obs: Na janela DRC Options,
clicando em Set Switches, aparece uma
lista de opções do verificador de DRC
(Figura 43). Para entender essas opções,
deve-se consultar o help do Kit de
Figura 41. Layout completo do inversor tecnologia.

Verificação de Regras de Projeto - DRC


(Design Rule Checking)

Layouts devem ser feitos seguindo as


regras de projeto de uma dada
tecnologia. Depois de terminado o
desenho, uma ferramenta automática irá
checar cada característica de seu projeto
em relação a estas regras e lhe apresentar Figura 43. Opções de DRC após clicar em Set
um relatório com os erros cometidos. Switches
Esse processo é chamado de Verificação
de Regras de projeto ou DRC (Design
Quando não houver mais erros, o dispositivos ideais. Para uma
layout agora apresentará o aspecto da representação mais precisa, deve-se
Figura 44. levar os efeitos parasitas em
consideração. Para habilitar a extração
de elementos parasitas, clique no campo
Set Switches e escolha os elementos que
deseja extrair. Nesse exemplo não
levaremos os efeitos parasitas em
consideração. Portanto, apenas clique em
OK quando a janela Extractor aparecer.

Figura 45. Janela com opções para extração do


circuito

Verifique na janela CIW se existem


erros de extração.Se houver, corrija-os.
Terminada a extração, um novo item
chamado extracted aparecerá na coluna
cell view da janela Library Manager.
Figura 44. Layout final corrigido

Extração do Layout LVS (Layout Versus Schematic)

O layout de um circuito é Precisamos verificar se a netlist do


simplesmente um conjunto de formas circuito extraído corresponde a do
geométricas de cores diferentes esquemático. Isso é feito utilizando uma
sobrepostas. O processo de extração ferramenta chamada LVS e garante que
reconhece os dispositivos representados o layout desenhado e o esquemático são
por essas figuras e gera uma netlist idênticos.
associada ao layout. A extração deve ser Clique em Verify →LVS. Se você
realizada quando o layout estiver pronto estiver fazendo o LVS pela segunda vez,
e sem erros de DRC. uma pequena janela semelhante à
Clique em Verify -> Extract. Uma apresentada na Figura 46 aparecerá.
nova janela com opções para a extração Selecione a opção Form Contents dessa
do circuito aparecerá (Figura 45). As caixa.
opções padrão irão extrair apenas
Observe que o fato de receber uma
mensagem de sucesso não significa que
as netlists são semelhantes, mas sim que
o programa conseguiu fazer a
Figura 46. Opções de LVS quando feito
mais de uma vez
comparação. Para saber se as netlists são
equivalentes, clique no campo Output
A Figura 47 apresenta a janela LVS. (ao lado do comando Run) da janela
A metade superior da janela está LVS. Uma nova janela abrirá. A Figura
dividida em duas partes. A parte 49 apresenta o resultado do LVS obtido
esquerda corresponde ao esquemático do para o nosso exemplo. Nesse relatório,
circuito e a direita ao circuito extraído. podemos ver que as netlists são
Certifique-se que as entradas dessas equivalentes. Se a comparação indicasse
seções correspondem aos dados de seu diferenças, deveríamos voltar ao layout
circuito. do circuito e corrigir os erros.

Figura 49. Resultado do LVS

Figura 47. Janela LVS


Quando as netlists forem
equivalentes, deve-se clicar em Build
Para começar a comparação, clique
Analog na janela LVS (vide Figura 47).
em Run. Espere um pouco, pois
Esse comando gerará um view chamado
geralmente a comparação demora alguns
analog_extracted para a célula que está
minutos, mesmo para circuitos
sendo desenhada. Esse view será
pequenos. Uma caixa com a mensagem
utilizado para fazer a simulação pós-
“A comparação foi bem sucedida”
layout.
aparecerá quando o LVS tiver
terminado. Veja a figura 48. Simulação Pós Layout (Inversor
CMOS)

Finalizada a comparação entre as


Figura 48. Mensagem de término de LVS netlists (LVS), tem-se duas células
principais (cell view) para o mesmo
circuito. A primeira delas é o
esquemático, que é seu projeto inicial
(ideal). A segunda é o circuito extraído e
que leva em consideração os efeitos
parasitas associados ao layout.
Nesse exemplo iremos simular
novamente o circuito. Entretanto, dessa
vez faremos com que o simulador use o
circuito extraído (analog_extracted
view) ao invés do esquemático. Figura 51. Escolha do tipo e do tempo de
Abra o esquemático usado simulação
anteriormente para simular o projeto
(Inv_test), como mostra a Figura 50. Clique em Ok e você voltará para a
tela Analog Artist. Em seguida, devemos
selecionar os nós que queremos observar
na simulação. Clique em Output -> To
be Plotted -> Select on Schematic. A
janela do esquemático ficará ativa de
forma que os nós podem ser
selecionados clicando com o botão
esquerdo do mouse. Em nosso exemplo,
os nós a serem selecionados são a
entrada e a saída do inversor. Cada vez
que um nó é selecionado, o nome da
Figura 50. Esquemático para simulação do
respectiva conexão aparece na lista
inversor (Inv_test)
Outputs. Pressione ESC quando acabar
Clique em Tools -> Analog Artist. A de selecionar os nós.
janela Analog Circuit Design
Environment irá aparecer. Clique em
Clique em Analyses -> Choose. A janela
Choosing Analyses aparecerá. Nela você
pode escolher o tipo de simulação.
Escolha a opção tran no campo
Analyses. No campo Stop Time, digite o
valor 30n (Obs: não deixe espaços entre
o número e a ordem de grandeza. Não
digite o “s” de segundos). Vide figura
51.
Figura 52. Janela Analog Artist após
escolha dos nós a serem observados

Clique em Setup -> Environment. A


janela Environment Options aparecerá.
No Campo Switch view list digite a
palavra “analog_extracted” antes de
“schematic”, como mostra a Figura 53 e
clique em OK. Essa alteração fará com
que o simulador use a netlist do circuito
extraído.

Figura 53. Seleção da netlist do circuito


extraído para simulação

Simule o circuito clicando em


Simulation -> Run. As formas de ondas
irão aparecer assim que a simulação
acabar. Você verá as duas formas de
onda sobrepostas, traçadas sobre o
mesmo eixo. Para separá-las clique em
Axes -> To Strip. A Figura 54 mostra o
resultado da simulação do nosso
exemplo.

Figura 54. Resultado da simulação pós-layout

Você também pode gostar