Trabalho 4: Projeto Elétrico e Leiaute de Porta XOR em
Lógica Estática
Dieison Soares Silveira
Universidade Federal do Rio Grande do Sul – UFRGS
Instituto de Informática
Programa de Pós-Graduação em Computação
1. Introdução
Este trabalho apresenta o projeto e a implementação de uma porta XOR de duas
entradas (XOR). Foram utilizados dois estilos de lógica estática na implementação da
porta XOR: com transistor de passagem, no qual a porta lógica implementada utiliza
apenas 6 transistores, e com lógica CMOS complementar, o qual utiliza 12 transistores
em sua implementação. Nesse projeto foram aplicadas as regras de leiaute e os
parâmetros do PDK (Physical Design Kit) da empresa AMS para tecnologia CMOS
0,35µm.
A Seção 2 apresenta a metodologia utilizada no trabalho, identificando
ferramentas e parâmetros utilizados. Além disso, as restrições de projeto determinadas
para esse trabalho são apresentadas nessa seção. A Seção 3 apresenta o projeto lógico e
elétrico das portas projetadas, apresentando os diagramas esquemáticos utilizados, o
dimensionamento dos transistores e o testbench utilizado. A Seção 4 apresenta os
leiautes desenvolvidos e a extração dos parasitas desses leiautes. A Seção 5 apresenta a
análise dos tempos de resposta para as portas XOR. A Seção 6 apresenta os resultados
de potência e energia consumida pelas portas XOR projetadas. Por fim, a Seção 7
conclui este trabalho.
2. Metodologia e restrições do trabalho
Os resultados apresentados nesse trabalho foram obtidos através do software de
EDA Virtuoso da Cadence utilizando o simulador elétrico SPECTRE™. Na
caracterização elétrica foram adotados os seguintes passos:
Projeto lógico e elétrico da porta XOR complementar
Projeto lógico e elétrico da porta XOR com transistor de passagem
Projeto de leiaute da porta XOR complementar
Projeto de leiaute da porta XOR com transistor de passagem
Análise do pior caso para os tempos de resposta das portas projetadas utilizando
os seguintes parâmetros:
o Temperatura = 80ºC
o Tensão nominal de alimentação = 2,97 V
o Capacitância de carga = 20 fF
Cálculo da potência média dissipada à frequência de chaveamento Fo = 500MHz
nas entradas A e B
Cálculo da energia média consumida por um par de transições L->H e H->L
com a carga de 20 fF
Wp = 1,5 * Wn
Trilhas de alimentação de Metal M1 com largura de 2µm
Altura da célula de 10 µm
Não utilizar polígonos de Metal M3 e M4
Fazer o leiaute minimizado, permitindo interconexão pelo abutment
Utilizar o comprimento mínimo de canal permitido pelas regras de leiaute
3. Projeto lógico e elétrico
A porta lógica XOR caracteriza-se por implementar a função lógica ou exclusivo
para o caso específico de duas entradas. A função lógica desta porta pode ser
representada pela equação 1. A saída dessa função deve possuir o valor lógico 1 apenas
nos casos onde as entradas A e B possuem valores lógicos diferentes.
(1)
3.1 Esquemático da porta XOR complementar
A Figura 1 apresenta o esquemático da porta XOR complementar. Nota-se que a
rede PDN (Pull-up) é dual a rede PUN (Pull-down). Além disso, nota-se que para
implementar esta porta lógica são utilizados 12 transistores (8 nas redes PUN e PDN + 4
nos dois inversores que complementam as variáveis de entrada).
Figura 1. Esquemático da porta XOR complementar
Além da utilização dos inversores para complementar as variáveis de entrada,
eles serviram de referência para a construção das redes PUN e PDN. Com o intuito de
que elas tivessem a mesma eficiência do inversor, a largura dos transistores da XOR
foram duplicados. Esta abordagem foi utilizada porque a largura de um transistor é
inversamente proporcional a sua resistência intrínseca. Como, tanto na rede PUN quanto
na rede PDN existe sempre um caminho com dois transistores em série, eles devem
possuir o dobro da largura para que a associação em série destes transistores aproxime-
se da resistência do inversor de referência. Desse modo, “drivando” teoricamente a
mesma corrente. A Tabela 1 apresenta as larguras utilizadas nos transistores da porta
XOR complementar.
Tabela 1. Largura dos transistores da porta XOR complementar
Inversores XOR
PMOS 3 µm PMOS 6 µm
NMOS 2 µm NMOS 4 µm
3.2 Esquemático da porta XOR com transistor de passagem
As portas implementadas com transistores de passagem são uma forma de
reduzir a quantidade de transistores necessários para implementar uma função lógica.
Isto se deve ao fato de que os sinais de entrada são aplicados tanto ao terminal de porta
(gate) quantos aos terminais de fonte (source) e/ou dreno (drain) dos transistores
presentes no circuito. Esta abordagem também provê um caminho de baixa impedância
entre VDD (ou GND) e a saída do circuito.
A lógica de transistor de passagem não deve ser implementada em sua forma
básica em função de existir uma queda de tensão entre seus terminais de dreno e fonte
devido à tensão de threshold inerente à tecnologia. Tal deficiência resulta na passagem
de „1s‟ e „0s‟ fracos.
Uma das alternativas de implementação de boas portas utilizando lógica de
transistor de passagem é através de uma subfamília denominada de transmission-gate
logic. Nesta abordagem, bons condutores de „0s‟ (NMOS) e bons condutores de „1s‟
(PMOS) são colocados em paralelo gerando um nível de sinal forte na saída da porta. A
segunda implementação deste trabalho baseia-se nessa abordagem, utilizando a lógica
de chaves convencional e a implementação com transmission-gates. A Figura 2
apresenta o esquemático da porta XOR utilizando transistor de passagem.
Figura 2. Esquemático porta XOR com transistor de passagem
Como pode ser visto na Figura 2 existem seis transistores no esquemático da
porta XOR com transistor de passagem (três PMOS e três NMOS), em vez de 12 como
utilizado na lógica complementar. O inversor é o mesmo do primeiro trabalho. Os
transistores pertencentes à lógica de chaves foram implementados com as mesmas
dimensões do inversor, ou seja, Wp = 3 μm e Wn = 2 μm. Nota-se ainda que não há
nenhum caminho direto entre VDD e GND nos terminais dos transistores neste tipo de
lógica.
3.3 Testbench da porta XOR
A Figura 3 apresenta o testbench utilizado para caracterização elétrica tanto da
porta XOR complementar quanto para a porta XOR com transistor de passagem. Nessa
figura também pode ser visto o símbolo utilizado para as células desenvolvidas. Essa
caracterização foi feita para as duas células, porém apenas uma figura é mostrada, pois
elas são iguais. Pode ser observado nesta figura também, os tempos de transição de rise
(100 ps) e fall (100 ps) nas entradas dos inversores e a carga capacitiva (20 fF) utilizada
na saída do porta.
Figura 3. Testbench utilizado na caracterização das portas XOR
4. Leiaute e extração de parasitas das portas XOR
Antes da extração das características elétricas das portas XOR projetadas, foi
realizada a definição e verificação do seu leiaute sob as regras de leiaute e os
parâmetros do PDK (Physical Design Kit) da empresa AMS para tecnologia CMOS
0.35μm (processo C35B4), considerando ainda todas as decisões de projeto já citadas na
Seção 3.
4.1 Leiaute da porta XOR complementar
O leiaute proposto para a porta XOR complementar pode ser visualizado na
Figura 4. Após todas as verificações, a versão extraída desse leiaute, contendo os
componentes parasitas modelados pela ferramenta, pode ser visualizada na Figura 5.
Figura 4. Leiaute da porta XOR complementar
Figura 5. Leiaute extraído da porta XOR complementar com elementos parasitas
Em função das limitações de altura da célula impostas no projeto (10 µm) e,
visto que as dimensões do inversor base já ocupavam uma boa parte desta altura, tanto
os transistores PMOS quanto os NMOS das redes PUN e PDN foram inseridos no
leiaute utilizando a técnica de folding. Os dois inversores responsáveis pela
complementação dos sinais de entrada foram colocados nas extremidades horizontais do
leiaute. A parte central é ocupada pelos oito transistores restantes.
Pode-se observar nas Figuras 4 e 5 o uso da técnica de compartilhamento de
fusão. Como os pinos de dreno de um transistor N deve conectar-se aos pinos de fonte
do transistor à direita, essas regiões podem ficar sobrepostas no leiaute. Dessa forma, a
conexão é realizada sem a necessidade de uso de fios, diminuindo a incidência de
componentes parasitas e minimizando o uso de área da célula. A largura dessa célula é
de 34,7 μm, totalizando uma área de 347 (μm)².
4.2 Leiaute da porta XOR com transistor de passagem
O leiaute proposto para a porta XOR com transistor de passagem pode ser
visualizado na Figura 6. Após todas as verificações, a versão extraída desse leiaute,
contendo os componentes parasitas modelados pela ferramenta, pode ser visualizada na
Figura 7.
Figura 6. Leiaute da porta XOR com transistores de passagem
Figura 7. Leiaute extraído da porta XOR com transistores de passagem e componentes parasitas
Nessa célula também foi utilizada a técnica de folding nos transistores, porém
apenas os transistores PMOS foram divididos, utilizando apenas dois fingers de poly. A
largura dessa célula é de 13,6 μm, totalizando uma área de 136 (μm)².
5. Análise dos tempos de resposta
Para caracterização dos tempos de resposta das XOR projetadas, uma análise
transiente dos sinais de entrada e saída no testbench (Figura 3) foi realizada. A proposta
é obter os valores de tempo de subida e descida do sinal (Trise e Tfall, respectivamente),
além da propagação de atraso H-L e L-H (Tphl e Tplh). Utilizando as definições em
Rabaey [Rabaey et al. 2004], esses valores podem ser calculados conforme a Figura 8.
Figura 8. Definições de tempos de resposta
O atraso Tp das portas projetadas é dado como a média do pior atraso de todas
as possibilidades de Tphl e Tplh, considerando as seguintes condições de estresse:
temperatura T = 80º C e tensão nominal de alimentação VDD = 2,97V. Assim, é preciso
especificar quais análises de transição serão realizadas.
Para mensurar as métricas definidas anteriormente, foram propostos dois vetores
de teste de modo a cobrir oito tipos distintos de transições. Estes vetores foram
divididos em dois casos: caso 1 com a entrada A transacionando primeiro e caso 2 com
a entrada B transacionando primeiro. Estes casos são apresentados na Tabela 2.
Tabela 2. Transições consideradas na análise
Casos A B A B Transição
Cas
o 1
0 0 -> 1 0 T1
1 0 -> 1 1 T2
1 1 -> 0 1 T3
0 1 -> 0 0 T4
Cas
o 2
0 0 -> 0 1 T5
0 1 -> 1 1 T6
1 1 -> 1 0 T7
1 0 -> 0 0 T8
5.1 Análise dos tempos da XOR complementar
As Figuras 9 e 10 apresentam os resultados de tempo para os vetores de teste dos
casos 1 e 2, respectivamente. Os piores tempos de Tphl, Tplh, Tr, Tf e Tp médio junto
com as suas respectivas transições são apresentados na Tabela 3.
Tabela 3. Tempos do pior caso para a porta XOR complementar
Tr Tf Tphl Tplh Tp
Tempo 516 ps 262 ps 282 ps 372 ps 327 ps
Transição T1 T4 T8 T1 -
Figura 9. Tempos de resposta da XOR complementar para o caso 1
Figura 10. Tempos de resposta da XOR complementar para o caso 2
5.2 Análise dos tempos da XOR com transistor de passagem
As Figuras 11 e 12 apresentam os resultados de tempo para os vetores de teste
dos casos 1 e 2, respectivamente. Os piores tempos de Tphl, Tplh, Tr, Tf e Tp médio
junto com as suas respectivas transições são apresentados na Tabela 4.
Tabela 4. Tempos do pior caso para a porta XOR com transistor de passagem
Tr Tf Tphl Tplh Tp
Tempo 268 ps 249 ps 193 ps 155 ps 174 ps
Transição T5 T2 T2 T5 -
Figura 11. Tempos de resposta da XOR com transistor de passagem para o caso 1
Figura 12. Tempos de resposta da XOR com transistor de passagem para o caso 2
5.3 Comparativo dos tempos de resposta
A Tabela 5 apresenta um comparativo entre os tempos de resposta das duas
implementações da porta XOR. A porta XOR com transistor de passagem apresenta
melhores tempo de resposta quando comparada a implementação da XOR
complementar, chegando a ter um Tp médio 47% mais rápido.
Tabela 5. Tempos do pior caso para a porta XOR com transistor de passagem
Implementação Tr Tf Tphl Tplh Tp
Complementar 516 ps 262 ps 282 ps 372 ps 327 ps
Transistor de
passagem 268 ps 249 ps 193 ps 155 ps 174 ps
6. Potência e energia média consumida
A potência média e a energia consumida pelas portas XOR projetadas, foram
calculadas considerando uma análise transiente utilizando frequência de chaveamento
Fo = 500MHz.
Essa frequência foi analisada variando as entradas A e B de forma separada.
Para calcular a potência média e RMS dissipada pelas portas XOR (sobre o pino de
VDD) foi utilizada a calculadora da própria ferramenta de síntese. Para o cálculo do
consumo de energia média, considerou-se apenas um par de transições L-H e H-L. Para
isso, foi suficiente a multiplicação da potência média obtida no pior caso pelo tempo
onde ocorre apenas duas transições (2ns). A Tabela 6 sumariza todos esses resultados.
As equações 2, 3 e 4 apresentam as fórmulas utilizadas para realizar o cálculo da
potência média, RMS e consumo energético, respectivamente.
Tabela 6. Resultados de potência média, RMS e energia consumida pela portas XOR
A = 500 MHz B = 500 MHz
Potência
Média
Potência
RMS
Potência
Média
Potência
RMS
Consumo
Energético
XOR
Complementar 592,6 µW 1,02 mW 465,4 µW 784,4 µW 1,19 pJ
XOR
Transistor de
passagem
5,52 µW 312 µW 68,7 µW 451,7 µW 0,14 pJ
) ) (2)
) ) (3)
(4)
7. Conclusões
Este trabalho apresentou o projeto elétrico e de leiaute para duas portas XOR.
Ambas as implementações seguem o estilo de lógica estática. Porém, uma
implementação utiliza transistores de passagem, no qual a porta lógica implementada
utiliza apenas 6 transistores, e com lógica CMOS complementar, onde são utilizados 12
transistores em sua implementação. Os leiautes das duas portas XOR foram
desenvolvidos e os circuitos parasitas foram extraídos, a célula da XOR CMOS
complementar atingiu uma largura de 34,7 μm, totalizando uma área de 347 (μm)².
Enquanto que a célula da XOR PTL utiliza apenas 13,6 μm de largura, totalizando uma
área de 136 (μm)². Isto representa uma redução de 60% em área quando utilizada a
XOR PTL. Foram também analisados os tempos de resposta para as duas portas sob as
condições de estresse determinadas no testbench. A porta XOR PTL apresentou um
Tpmédio de 174 ps, enquanto que a porta XOR CMOS complementar apresentou um
Tpmédio de 327 ps. Novamente a XOR PTL mostrou-se mais eficiente, sendo 47% mais
rápida que a porta XOR CMOS complementar para as mesmas condições de testes. As
potências, média e RMS, das duas implementações para a frequência de chaveamento
de 500 MHz foram determinadas, e o consumo energético das portas para uma transição
pode ser obtido, sendo que a XOR PTL apresentou um consumo de energia por
transição de 0,14 pJ enquanto que a XOR CMOS complementar apresentou um
consumo de 1,19 pJ. Para essas condições, a implementação da XOR PTL mostrou-se
como uma opção mais eficiente que a XOR CMOS complementar tanto para área e
tempo de resposta quanto para potência e consumo de energia.