12.07.2015 Views

técnicas para projeto de asics cmos de alta velocidade - LSI - USP

técnicas para projeto de asics cmos de alta velocidade - LSI - USP

técnicas para projeto de asics cmos de alta velocidade - LSI - USP

SHOW MORE
SHOW LESS
  • No tags were found...

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

Navarro Soares Jr., JoãoTécnicas <strong>para</strong> Projeto <strong>de</strong> ASICs CMOS <strong>de</strong> AltaVelocida<strong>de</strong>. São Paulo, 1998.196p.Tese (Doutorado) - Escola Politécnica da Universida<strong>de</strong><strong>de</strong> São Paulo. Departamento <strong>de</strong> Engenharia Elétrica.1. Microeletrônica 2. Circuitos Integrados 3. CMOS 4.Circuitos <strong>de</strong> <strong>alta</strong> velocida<strong>de</strong> - Projetos I. Universida<strong>de</strong> <strong>de</strong>São Paulo. Escola Politécnica. Departamento <strong>de</strong>Engenharia Elétrica II. t


Agra<strong>de</strong>cimentosA conclusão <strong>de</strong>ste trabalho só foi possível <strong>de</strong>vido a colaboração <strong>de</strong> diversas pessoas e instituições.Dessa forma, gostaria <strong>de</strong> tornar publico meus agra<strong>de</strong>cimentosao Prof. Dr. Wilhelmus A.M. Van Noije pela orientação, pelo exemplo <strong>de</strong> trabalho que sempre <strong>de</strong>u,e sobretudo pelo incentivo e confiança;ao Laboratório <strong>de</strong> Sistemas Integráveis da <strong>USP</strong> (<strong>LSI</strong>), on<strong>de</strong> foi <strong>de</strong>senvolvida a quase totalida<strong>de</strong><strong>de</strong>ste trabalho, ao CNPq/Protem e à Fundação Banco do Brasil, que apoiaram a aquisição dosequipamentos usados nos testes, à FAPESP, que possibilitou a fabricação dos protótipos via <strong>projeto</strong>PMU-FAPESP, e ao Laboratório <strong>de</strong> Microeletrônica da <strong>USP</strong> (LME), on<strong>de</strong> foram realizados alguns dostestes necessários;aos colegas do <strong>LSI</strong>, pela ajuda e paciência;aos amigos Pedro L.P. Sanchez e Sandra Abib pelo apoio que sempre <strong>de</strong>ram;aos meus pais, a quem <strong>de</strong>vo o que sou;e à Priscila, <strong>de</strong> cuja paciência e amor abusei, e a quem espero pagar com maior amor.Por fim, minha gratidão à Deus, origem e fim <strong>de</strong> tudo.


Sumário 1SumárioSumário ..........................................................................................................................................................................1Lista <strong>de</strong> Figuras .............................................................................................................................................................5Lista <strong>de</strong> Tabelas ...........................................................................................................................................................10Lista <strong>de</strong> Símbolos .........................................................................................................................................................11Resumo .........................................................................................................................................................................17Abstract ........................................................................................................................................................................191. Introdução ...................................................................................................................................................................211.1 História das tecnologias MOS ...............................................................................................................................211.2 Motivações e objetivos ...........................................................................................................................................221.3 Desenvolvimento da pesquisa ................................................................................................................................251.4 Capítulos: <strong>de</strong>scrição ..............................................................................................................................................272. Implementação <strong>de</strong> Register Transfer Systems (RTS) <strong>de</strong> Alta Velocida<strong>de</strong> ...............................................................292.1 Introdução..............................................................................................................................................................292.2 Register Transfer Systems (RTS)............................................................................................................................292.2.1 Lógica Combinatorial.....................................................................................................................................302.2.1.1 Lógica Estática Complementar CMOS...................................................................................................302.2.1.2 Lógica Estática Pseudo NMOS...............................................................................................................322.2.1.3 Lógica Estática com Transistores <strong>de</strong> Passagem......................................................................................332.2.1.4 Lógica Dinâmica CMOS.........................................................................................................................342.2.1.5 Lógica Dinâmica Clocked CMOS (C 2 MOS) ..........................................................................................372.2.2 Registradores ..................................................................................................................................................372.2.2.1 Registradores Estáticos ...........................................................................................................................382.2.2.2 Registradores Dinâmicos ........................................................................................................................392.2.3 Políticas <strong>de</strong> clock ............................................................................................................................................402.2.3.1 Estratégia com duas fases <strong>de</strong> clock NORA.............................................................................................402.2.3.2 Estratégia com uma fase <strong>de</strong> clock TSPC.................................................................................................422.2.3.2.1 Portas Lógicas e Registradores .......................................................................................................422.2.3.2.2 Regras <strong>de</strong> Composição....................................................................................................................442.2.3.2.3 Conclusões sobre o TSPC ...............................................................................................................462.3 Estratégia E-TSPC .................................................................................................................................................472.3.1 Blocos da E-TSPC..........................................................................................................................................472.3.2 Regras <strong>de</strong> composição ....................................................................................................................................47


2Sumário2.3.2.1 Definições............................................................................................................................................... 472.3.2.2 Descrição das Regras.............................................................................................................................. 522.3.2.2.1 Regras r 1 a r 5 ................................................................................................................................... 532.3.2.2.2 Blocos Dps e data chains do circuito ............................................................................................. 552.3.3 Teorema fundamental da estratégia E-TSPC ................................................................................................. 602.3.3.1 Proprieda<strong>de</strong>s dos blocos do E-TSPC...................................................................................................... 612.3.3.2 Demonstração do Teorema fundamental................................................................................................ 632.3.4 Blocos N-MOS like......................................................................................................................................... 742.3.5 Regra <strong>de</strong> Exceção........................................................................................................................................... 772.3.6 Com<strong>para</strong>ções e conclusões sobre o E-TSPC.................................................................................................. 813. Otimização <strong>de</strong> Tapered Buffers <strong>para</strong> <strong>alta</strong>s taxas <strong>de</strong> operação................................................................................. 833.1 Introdução.............................................................................................................................................................. 833.2 Critérios clássicos <strong>para</strong> otimização <strong>de</strong> Tapered Buffers ....................................................................................... 843.3 Novo critério <strong>para</strong> otimização <strong>de</strong> Tapered Buffers <strong>para</strong> <strong>alta</strong>s taxas ..................................................................... 883.3.1 Novo critério: sinal <strong>de</strong> teste e <strong>de</strong>finição <strong>de</strong> passagem do sinal....................................................................... 893.3.2 Mo<strong>de</strong>lo teórico <strong>para</strong> o novo critério <strong>de</strong> otimização........................................................................................ 903.3.3 Simulação dos Tapered Buffers...................................................................................................................... 933.3.3.1 Condições <strong>para</strong> as simulações ................................................................................................................ 943.3.3.2 Resultados das Simulações..................................................................................................................... 973.3.3.2.1 Mo<strong>de</strong>lamento dos Tapered Buffers com as expressões analíticas (14)......................................... 1013.3.3.2.2 Mo<strong>de</strong>lamento dos Tapered Buffers com o uso <strong>de</strong> tabelas empíricas ............................................ 1033.3.4 Mismatch do Atraso ..................................................................................................................................... 1083.3.4.1 Atraso do Tapered Buffer ..................................................................................................................... 1093.3.4.2 Mo<strong>de</strong>los estatísticos <strong>para</strong> os parâmetros variáveis ............................................................................... 1123.3.4.2.1 Parâmetro L i .................................................................................................................................. 1133.3.4.2.2 Parâmetro W i ................................................................................................................................. 1133.3.4.2.3 Parâmetros V Tni e V Tpi .................................................................................................................... 1143.3.4.2.4 Parâmetro C oxi ............................................................................................................................... 1153.3.4.2.5 Parâmetros µ ni e µ pi ....................................................................................................................... 1153.3.4.3 Expressões <strong>para</strong> as <strong>de</strong>rivadas e sua avaliação nos valores médios ....................................................... 1163.3.4.4 Cálculo da variância do atraso <strong>de</strong> um Tapered Buffer.......................................................................... 1203.3.4.5 Análise da variância em função do fator <strong>de</strong> aumento........................................................................... 1213.3.4.5.1 Primeiro e segundo termo............................................................................................................. 1213.3.4.5.2 Terceiro termo .............................................................................................................................. 1223.3.4.5.3 Quarto termo................................................................................................................................. 1233.3.4.5.4 Quinto termo................................................................................................................................. 1233.3.4.5.5 Sexto a nono termos...................................................................................................................... 1243.3.4.5.6 Décimo termo ............................................................................................................................... 124


Sumário 33.3.4.5.7 Décimo primeiro a décimo quarto termos.....................................................................................1243.3.4.5.8 Resultados Numéricos...................................................................................................................1253.3.4.6 Consi<strong>de</strong>rações finais sobre o estudo do Mismatch do Atraso ...............................................................1303.4 Conclusões sobre a otimização <strong>de</strong> Tapered Buffers.............................................................................................1314. Circuitos <strong>de</strong> testes <strong>para</strong> a estratégia E-TSPC e <strong>para</strong> os Tapered Buffers .............................................................1334.1 Introdução............................................................................................................................................................1334.2 Circuitos Multiplexador e Demultiplexador.........................................................................................................1334.2.1 Projeto do Multiplexador e do Demultiplexador (primeira versão)..............................................................1344.2.1.1 Circuitos <strong>de</strong> entrada/saída conversores ECL-CMOS e CMOS-ECL ....................................................1344.2.1.2 Principais células TSPC........................................................................................................................1364.2.1.3 Multiplexador 8:1 .................................................................................................................................1374.2.1.4 Demultiplexador 1:8.............................................................................................................................1394.2.2 Projeto do Multiplexador e do Demultiplexador (nova versão)....................................................................1414.2.2.1 Novo circuito conversor ECL-CMOS [Na98b] ....................................................................................1424.2.2.2 Células com blocos N-MOS like ...........................................................................................................1424.2.2.3 Novo Multiplexador 8:1 .......................................................................................................................1444.2.2.4 Novo Demultiplexador 1:8 ...................................................................................................................1454.2.3 Resultados Experimentais do Multiplexador 8:1 e do Demultiplexador 1:8................................................1494.2.3.1 Testes dos conversores ECL-CMOS e CMOS-ECL.............................................................................1534.2.3.2 Testes do Circuito Multiplexador 8:1 ...................................................................................................1554.2.3.3 Testes do Circuito Demultiplexador 1:8...............................................................................................1574.2.4 Multiplexador e Demultiplexador: conclusões .............................................................................................1594.3 Circuito Dual-Modulus Prescaler........................................................................................................................1604.3.1 Circuito Dual-Modulus Prescaler (divi<strong>de</strong> por 128/129)...............................................................................1614.3.2 Estudo preliminar dos contadores síncronos ................................................................................................1624.3.3 Resultados Experimentais do Dual-Modulus Prescaler ...............................................................................1654.3.4 Dual-Modulus Prescaler: conclusões...........................................................................................................1685. Conclusões e futuros trabalhos ................................................................................................................................1715.1 Futuros trabalhos sobre o E-TSPC ......................................................................................................................1725.2 Futuros trabalhos sobre otimização <strong>de</strong> tapered buffers.......................................................................................172APÊNDICE A.............................................................................................................................................................175APÊNDICE B.............................................................................................................................................................177APÊNDICE C.............................................................................................................................................................181APÊNDICE D.............................................................................................................................................................185Referências Bibliográficas .........................................................................................................................................189


4Sumário


6Lista <strong>de</strong> FigurasFigura 18. Circuito com possibilida<strong>de</strong> <strong>de</strong> violação <strong>de</strong> holding time usando blocos data precharged................................... 46Figura 19. Circuito E-TSPC com exemplos <strong>de</strong> data chains.................................................................................................. 52Figura 20. Conversão <strong>de</strong> blocos <strong>para</strong> blocos N-MOS like: (a), bloco n-dinâmico e (b), bloco n-dinâmico N-MOS like; (c),bloco p-dinâmico e (d), bloco p-dinâmico N-MOS like; (e), bloco n-latch e (f), bloco n-latch N-MOS like; (g), blocop-latch e (h), bloco p-latch N-MOS like........................................................................................................................ 76Figura 21. Ilustração <strong>de</strong> um tapered buffer com N inversores. O nó <strong>de</strong> saída tem uma capacitância <strong>de</strong> carga C L ................ 83Figura 22. Gráfico mostrando o fator <strong>de</strong> aumento que minimiza o atraso total <strong>de</strong> um tapered buffer como função da razãoKLCDSox........................................................................................................................................................................... 88Figura 23. Demultiplexador 1:8 com tapered buffers <strong>para</strong> o dado e <strong>para</strong> o clock [Ro95b]................................................... 89Figura 24. Sinais <strong>de</strong> entrada e saída <strong>de</strong> um tapered buffer com um número par <strong>de</strong> inversores............................................. 90⎛ TFigura 25. Gráfico <strong>de</strong> K α como função <strong>de</strong> ⎜⎝ t∆N0N⎞⎟ . ............................................................................................................. 93⎠Figura 26. Configuração em pente dos transistores N e P <strong>para</strong> simulações. ......................................................................... 95Figura 27. Diagrama <strong>de</strong> <strong>de</strong>cisões <strong>para</strong> <strong>de</strong>terminação da máxima taxa em que opera um tapered buffer qualquer (ε rf é o errorelativo da freqüência). ................................................................................................................................................. 96Figura 28. Gráfico da máxima taxa <strong>de</strong> operação, Gbit/s, em função do fator <strong>de</strong> aumento do tapered buffer. Sãosimulados buffers com 2, 3, 4, 5, 6 e 7 inversores. A carga final em todos eles é 0,2pF e a tecnologia é 0,8µm. ........ 98Figura 29. Gráfico da máxima taxa <strong>de</strong> operação, Gbit/s, em função do fator <strong>de</strong> aumento do tapered buffer. Sãosimulados buffers com 2, 3, 4, 5 e 6 inversores. A carga final em todos eles é 0,2pF e a tecnologia é 0,35µm. .......... 99Figura 30. Gráfico da largura mínima <strong>de</strong> um pulso que passa pelo tapered buffer em função da carga capacitiva C L dasaída. São simulados buffers com 2, 3, 4 e 5 inversores. O fator <strong>de</strong> aumento usado é χ=2 e a tecnologia é <strong>de</strong> 0,8µm.100Figura 31. Gráfico da largura mínima <strong>de</strong> um pulso que passa pelo tapered buffer em função da carga capacitiva C L dasaída. São simulados buffers com 2, 3, 4 e 5 inversores. O fator <strong>de</strong> aumento usado é χ=2 e a tecnologia é <strong>de</strong> 0,35µm.100Figura 32. Gráfico da largura mínima <strong>de</strong> um pulso que passa por um inversor em função da sua carga capacitiva. Aslarguras <strong>de</strong> canal dos trans.P/trans.N são: 8/5µm; 12/7,5µm; 16/10µm; 20/12,5µm; 24/15µm; 28/17,5µm; 32/20µm;36/22,5µm; 40/25µm. O comprimento do canal é L=0,8µm. A tecnologia é <strong>de</strong> 0,8µm............................................. 102Figura 33. Gráfico da largura mínima <strong>de</strong> um pulso que passa por um inversor em função da sua carga capacitiva. Aslarguras <strong>de</strong> canal dos trans.P/trans.N são: 8/5µm; 12/7,5µm; 16/10µm; 20/12,5µm; 24/15µm; 28/17,5µm; 32/20µm;36/22,5µm; 40/25µm. O comprimento do canal é L=0,35µm. A tecnologia é <strong>de</strong> 0,35µm. ........................................ 102Figura 34. Gráfico da largura mínima <strong>de</strong> um pulso que passa pelo tapered buffer em função do número <strong>de</strong> inversores.Curvas <strong>para</strong> diversos valores <strong>de</strong> fator <strong>de</strong> aumento são apresentadas (fator <strong>de</strong> aumento <strong>de</strong> 1, 2, 3, 4 e 5). O primeiroinversor, em todos os exemplos, tem 5µm <strong>para</strong> largura <strong>de</strong> canal do transistor N, e 8µm <strong>para</strong> o transistor P. Ocomprimento <strong>de</strong> canal <strong>para</strong> todos é <strong>de</strong> 0,8µm. A carga na saída é <strong>de</strong> 1fF e a tecnologia CMOS <strong>de</strong> 0,8µm. .............. 105Figura 35. Gráfico do largura mínimo <strong>de</strong> um pulso que passa pelo tapered buffer em função do número <strong>de</strong> inversores.Curvas <strong>para</strong> diversos valores <strong>de</strong> fator <strong>de</strong> aumento são apresentadas (fator <strong>de</strong> aumento <strong>de</strong> 1, 2, 3, 4 e 5). O primeiroinversor, em todos os exemplos, tem 5µm <strong>para</strong> largura <strong>de</strong> canal do transistor N, e 8µm <strong>para</strong> o transistor P. Ocomprimento <strong>de</strong> canal <strong>para</strong> todos é <strong>de</strong> 0,35µm. A carga na saída é <strong>de</strong> 1fF e a tecnologia CMOS <strong>de</strong> 0,35µm. .......... 106


8Lista <strong>de</strong> FigurasFigura 56. Diagrama esquemático do núcleo do novo circuito Demultiplexador 1:8. Os blocos hachurados são aqueles queforam alterados. .......................................................................................................................................................... 146Figura 57. Modificações no circuito <strong>para</strong> gerar sinais <strong>para</strong> alinhamento <strong>de</strong> byte. Os blocos hachurados são aqueles queforam alterados. .......................................................................................................................................................... 146Figura 58. Modificações no circuito gerador do clock CA. Os blocos hachurados são aqueles que foram alterados. ........ 147Figura 59. Configuração dos tapered buffers <strong>para</strong> a distribuição do sinal <strong>de</strong> clock no Demultiplexador 1:8..................... 147Figura 60. Sinal Dado M e clock, no primeiro Multiplexador fabricado, após passarem pelo circuito conversor ECL-CMOSda entrada e tapered buffers (ver Figura 49). Os sinais na entrada têm freqüência <strong>de</strong> 625MHz, tempo <strong>de</strong>subida/<strong>de</strong>scida <strong>de</strong> 0,2ns e níveis <strong>de</strong> tensão <strong>de</strong> 4,0V/3,2V. Os resultados são obtidos a partir <strong>de</strong> simulação SPICE, level2 e parâmetros slow. ................................................................................................................................................... 148Figura 61. Sinal Dado M e clock, no novo Multiplexador, após passarem pelo circuito conversor ECL-CMOS da entrada etapered buffers (ver Figura 56). Os sinais na entrada têm freqüência <strong>de</strong> 625MHz, tempo <strong>de</strong> subida/<strong>de</strong>scida <strong>de</strong> 0,2ns eníveis <strong>de</strong> tensão <strong>de</strong> 4,0V/3,2V. Os resultados são obtidos a partir <strong>de</strong> simulação SPICE, level 2 e parâmetros slow..149Figura 62. Layout do novo circuito Multiplexador 8:1. As dimensões <strong>de</strong>ste circuito (incluindo os PADs) são 1,68mm por0,94 mm. ..................................................................................................................................................................... 150Figura 63. Layout do novo circuito Demultiplexador 1:8. As dimensões <strong>de</strong>ste circuito (incluindo os PADs) são 1,90mmpor 1,08mm................................................................................................................................................................. 151Figura 64. Fotografias dos C.I.s fabricados (nova versão). Em (a) está o circuito Multiplexador 8:1 e em (b), o circuitoDemultiplexador 1:8................................................................................................................................................... 152Figura 65. Resultado do teste nos conversores ECL-CMOS e CMOS-ECL. É mostrado o sinal na entrada do PAD InTest,INPUT, que está a taxa <strong>de</strong> 2,4Gbit/s, e no PAD OuTest, OUTPUT. Os sinais INPUT e OUTPUT são invertidos. Aseqüência que aparece na figura, sinal <strong>de</strong> entrada, é "1111010000000100101010"................................................... 153Figura 66. Diagrama <strong>de</strong> olho <strong>para</strong> avaliação dos conversores ECL-CMOS e CMOS-ECL. O sinal <strong>de</strong> entrada é Pseudo-Randon-Bit-Sequence 2 23 -1 (HP Pulse Generator 8133A). Em (a) o sinal aplicado tem taxa <strong>de</strong>622,1Mbit/s(STS12/STM4 [St92]) em (b), taxa <strong>de</strong> 1244,12Mbit/s (STS24/STM8 [St92]) e em (c), taxa <strong>de</strong> 1,6Gbit/s.154Figura 67. Diagrama <strong>de</strong> olho do sinal na entrada do C.I.: (a) <strong>para</strong> o sinal com taxa <strong>de</strong> 1244,1Mbit/s e (b), <strong>para</strong> o sinal a1,6Gbit/s. O sinal é Pseudo-Randon-Bit-Sequence 2 23 -1............................................................................................ 155Figura 68. Sinal <strong>de</strong> clock e da saída do Multiplexador 8:1 funcionando a taxa <strong>de</strong> 1,7Gbit/s. O sinal <strong>de</strong> saída é "01100101".A posição relativa no tempo, entre o clock e o sinal <strong>de</strong> saída, foi ajustada <strong>para</strong> facilitar a visualização. ................... 156Figura 69. Sinal <strong>de</strong> dados, DADO, e sinal <strong>de</strong> clock nas entradas do circuito Demultiplexador 1:8 (versão nova). O sinal <strong>de</strong>dados tem valor "101011" e taxa <strong>de</strong> 1,38Gbit/s.......................................................................................................... 158Figura 70. Diagrama <strong>de</strong> blocos <strong>de</strong> sintetizador <strong>de</strong> freqüência RF empregando PLL e Prescaler. ...................................... 160Figura 71. Diagrama esquemático do Dual-Modulus Prescaler (divi<strong>de</strong> por 128/129). ...................................................... 162Figura 72. Diagrama <strong>de</strong> transistores e layout dos quatro <strong>projeto</strong>s do contador síncrono 4/5: em (a) está o <strong>projeto</strong> D G1 ; em(b), D G2 ; em (c), D G3 ; em (d), D G4 . Na representação <strong>de</strong> transistores também estão indicados a largura e, quandodiferente <strong>de</strong> 0,8µm, o comprimento do canal <strong>de</strong> cada transistor (largura/comprimento). No layout, a moldura emtorno do circuito tem dimensões <strong>de</strong> 100µm X 70µm (praticamente as dimensões <strong>de</strong> D G1 ), <strong>para</strong> os quatro casos. .... 163Figura 73. Fotografia do C.I. fabricado. Em (a) aparece o C.I. completo, com três diferentes Prescalers; também sãomostradas as conexões do C.I. com placa <strong>de</strong> teste. Em (b), estão <strong>de</strong>talhes do Prescaler que foi testado em <strong>alta</strong>freqüência (implementação 1)..................................................................................................................................... 166


10Lista <strong>de</strong> TabelasLista <strong>de</strong> TabelasTabela 1. Processadores produzidos pela Intel e suas características básicas [Bo98]. .......................................................... 22Tabela 2. Características das gerações tecnológicas apresentadas no NTRS/97 ([Se97], [Br98]). ....................................... 24Tabela 3. Condições que <strong>de</strong>terminarão o dimensionamento dos transistores dos blocos N-MOS like. ................................. 76Tabela 4. Número <strong>de</strong> blocos estáticos e Dps (estes pertencendo a S E ) entre o bloco B F e o bloco B i <strong>para</strong> o data chain S E . 78Tabela 5. Relações <strong>para</strong> cálculo da área e do perímetro <strong>de</strong> dreno. W é a largura <strong>de</strong> canal do transistor consi<strong>de</strong>rado........... 94Tabela 6. Condições <strong>para</strong> obtenção dos resultados <strong>de</strong> simulação <strong>para</strong> as tecnologias 0,8µm e 0,35µm. .............................. 98Tabela 7. Valores <strong>de</strong> χ max <strong>para</strong> vários valores <strong>de</strong> N. .............................................................................................................. 99Tabela 8. Valores das constantes K 1 e K 2 das equações dadas por (14)............................................................................... 103Tabela 9. Condições <strong>para</strong> geração <strong>de</strong> curvas/tabelas T 0 x C L <strong>para</strong> mo<strong>de</strong>lamento dos tapered buffers................................ 105Tabela 10. Taxa máxima <strong>para</strong> o buffer com fator <strong>de</strong> aumento χ=3, taxa máxima possível (qualquer χ) e aumento relativoda taxa <strong>de</strong> operação (valor em χ=3 tomada como referência). É também indicado o valor do fator <strong>de</strong> aumento quemaximiza a taxa <strong>de</strong> operação do buffer (χ ot )............................................................................................................... 108Tabela 11. Descrição, expressão e fator <strong>para</strong> análise <strong>de</strong> cada termo da equação (28)......................................................... 125Tabela 12. Atraso <strong>de</strong> um inversor como função do fator <strong>de</strong> aumento do buffer, <strong>para</strong> as tecnologias 0,8µm e 0,35µm. ..... 127Tabela 13. Valores dos níveis lógicos ECL utilizados pelo Multiplexador e pelo Demultiplexador. ................................. 134Tabela 14. PADs <strong>de</strong> entrada/saída do novo circuito Multiplexador 8:1 e sua <strong>de</strong>scrição. .................................................... 150Tabela 15. PADs <strong>de</strong> entrada/saída do novo circuito Demultiplexador 1:8 e sua <strong>de</strong>scrição................................................. 151Tabela 16. Resultados experimentais da primeira versão do circuito Multiplexador 8:1 e <strong>de</strong> sua nova implementação.Também são apresentadas as diferenças entre eles..................................................................................................... 156Tabela 17. Tecnologia, potência consumida e máxima taxa <strong>de</strong> operação <strong>de</strong> diversas implementações <strong>de</strong> Multiplexadores.157Tabela 18. Resultados experimentais da primeira versão do circuito Demultiplexador 1:8 e <strong>de</strong> sua nova implementação.Também são apresentadas as diferenças entre eles..................................................................................................... 158Tabela 19. Tecnologia, potência consumida e máxima taxa <strong>de</strong> operação <strong>de</strong> diversas implementações <strong>de</strong> Demultiplexadores.159Tabela 20. Resultados <strong>de</strong> máxima velocida<strong>de</strong> e potência consumida <strong>para</strong> os quatro contadores síncronos 4/5 projetados(simulação SPICE com parâmetros slow)................................................................................................................... 164Tabela 21. PADs <strong>de</strong> entrada/saída do Prescaler testado e sua <strong>de</strong>scrição (Figura 73(b))..................................................... 166Tabela 22. Resultados <strong>de</strong> área, velocida<strong>de</strong> e potência <strong>para</strong> cinco diferentes implementações do Prescaler....................... 168Tabela A1. Número <strong>de</strong> blocos que po<strong>de</strong> haver entre as entradas e saídas <strong>de</strong> blocos adjacentes <strong>de</strong>ntro <strong>de</strong> um data chain..175Tabela D1. Condições <strong>para</strong> obtenção dos resultados <strong>de</strong> simulação <strong>para</strong> a tecnologia CMOS 0,8µm da AMS....................185


Lista <strong>de</strong> Símbolos 11Lista <strong>de</strong> SímbolosA Cox : parâmetro do processo que relaciona σ Coxi com variações <strong>de</strong> curta distância;A L : parâmetro do processo que relaciona σ Li com o edge roughness;As df : valor <strong>de</strong>fault <strong>para</strong> área <strong>de</strong> fonte;A VTn : parâmetro do processo que relaciona σ VTn com variações <strong>de</strong> curta distância;A VTp : parâmetro do processo que relaciona σ VTp com variações <strong>de</strong> curta distância;A W : parâmetro do processo que relaciona σ Wi com o edge roughness;A µn : parâmetro do processo que relaciona σ µni com variações <strong>de</strong> curta distância;A µp : parâmetro do processo que relaciona σ µpi com variações <strong>de</strong> curta distância;B(C E ): conjunto dos blocos que compõe o circuito C E ;C Coxi,Coxj : covariância entre C oxi e C oxj ;C dni e C dpi : capacitâncias <strong>de</strong> junção <strong>de</strong> dreno dos transistores N e P, respectivamente, do i-ésimoinversor do tapered buffer;C gpi e C gpi : capacitâncias <strong>de</strong> gate dos transistores N e P, respectivamente, do i-ésimo inversor dotapered buffer;C L : carga capacitiva na saída do tapered buffer;C Li : capacitância <strong>de</strong> carga do i-ésimo inversor do tapered buffer;C Lj,i : capacitância <strong>de</strong> carga do i-ésimo inversor do j-ésimo buffer;NC LV : capacitância cujo valor é dado pela expressão CLV = Cox ( Wn 1+ Wp1 ) χ L;C ox : capacitância, por unida<strong>de</strong> <strong>de</strong> área, no gate do transistor N ou P;C oxi : capacitância, por unida<strong>de</strong> <strong>de</strong> área, no gate dos transistores P e N do i-ésimo inversor do taperedbuffer;C oxi : valor médio da variável C oxi ;C oxj,i : capacitância, por unida<strong>de</strong> <strong>de</strong> área, no gate dos transistores P e N do i-ésimo inversor do j-ésimobuffer;C VTni,VTnj : covariância entre V Tni e V Tnj ;C VTpi,VTpj : covariância entre V Tpi e V Tpj ;C xi,xj : covariância entre x i e x j ;C µ ni,µ nj: covariância entre µ ni e µ nj ;C µ pi,µ pj: covariância entre µ pi e µ pj ;D: entrada digital com valor entre 0 e (2 m -1);D istance : distância do transistor a uma referência;Fac 3 : fator <strong>para</strong> análise da variância <strong>de</strong> t D <strong>de</strong>vido à acurácia do pattern generation process em L i ;Fac 4 : fator <strong>para</strong> análise da variância <strong>de</strong> t D <strong>de</strong>vido ao edge roughness em L i ;Fac 5 : fator <strong>para</strong> análise da variância <strong>de</strong> t D <strong>de</strong>vido ao nonuniform arrangement of events em C oxi ;Fac 6 : fator <strong>para</strong> análise da variância <strong>de</strong> t D <strong>de</strong>vido ao nonuniform arrangement of events em V Tni ;Fac 7 : fator <strong>para</strong> análise da variância <strong>de</strong> t D <strong>de</strong>vido ao nonuniform arrangement of events em V Tpi ;Fac 8 : fator <strong>para</strong> análise da variância <strong>de</strong> t D <strong>de</strong>vido ao nonuniform arrangement of events em µ ni ;Fac 9 : fator <strong>para</strong> análise da variância <strong>de</strong> t D <strong>de</strong>vido ao nonuniform arrangement of events em µ pi ;Fac 10 : fator <strong>para</strong> análise da variância <strong>de</strong> t D <strong>de</strong>vido às variações <strong>de</strong> longa distância em C oxi ;Fac 11 : fator <strong>para</strong> análise da variância <strong>de</strong> t D <strong>de</strong>vido às variações <strong>de</strong> longa distância em V Tni ;Fac 12 : fator <strong>para</strong> análise da variância <strong>de</strong> t D <strong>de</strong>vido às variações <strong>de</strong> longa distância em V Tpi ;Fac 13 : fator <strong>para</strong> análise da variância <strong>de</strong> t D <strong>de</strong>vido às variações <strong>de</strong> longa distância em µ ni ;Fac 14 : fator <strong>para</strong> análise da variância <strong>de</strong> t D <strong>de</strong>vido às variações <strong>de</strong> longa distância em µ pi ;f div: freqüência média do sinal f div ;


Lista <strong>de</strong> Símbolos 13N A : número <strong>de</strong> inversores <strong>de</strong> cada buffer da implementação A;N B : número <strong>de</strong> inversores <strong>de</strong> cada buffer da implementação B;N D : número inteiro que indica fator <strong>de</strong> divisão do Prescaler;O BQ : saída do bloco B Q ;O(C E ): conjunto das saídas externas do circuito C E ;P Ci : parâmetro do transistor P ou N ( PCi = KCiµ iCoxi) do i-ésimo inversorP Cnj,i e P Cpj,i : parâmetros P C <strong>para</strong> os transistores N e P, respectivamente, do i-ésimo inversor do j-ésimo buffer;Pot: potência consumida pelo circuito por MHz, em µW/MHz;pr i : i-ésima proprieda<strong>de</strong> dos blocos usados no E-TSPC;Ps df : valor <strong>de</strong>fault <strong>para</strong> perímetro <strong>de</strong> fonte;RD: parâmetro do mo<strong>de</strong>lo do transistor (ver mo<strong>de</strong>los HSPICE no APÊNDICE B);Rd df : valor <strong>de</strong>fault <strong>para</strong> resistência série <strong>de</strong> dreno;r E : regra <strong>de</strong> exceção;r i : regra <strong>de</strong> composição i;R inv : resistência equivalente ao transistor;r G : regra geral;RS: parâmetro do mo<strong>de</strong>lo do transistor (ver mo<strong>de</strong>los HSPICE no APÊNDICE B);Rs df : valor <strong>de</strong>fault <strong>para</strong> resistência série <strong>de</strong> fonte;RSH: parâmetro do mo<strong>de</strong>lo do transistor (ver mo<strong>de</strong>los HSPICE no APÊNDICE B);S Cox : parâmetro do processo que relaciona σ Coxi com variações <strong>de</strong> longa distância;S VTn : parâmetro do processo que relaciona σ VTn com variações <strong>de</strong> longa distância;S VTp : parâmetro do processo que relaciona σ VT com variações <strong>de</strong> longa distância;S µn : parâmetro do processo que relaciona σ µni com variações <strong>de</strong> longa distância;S µp : parâmetro do processo que relaciona σ µpi com variações <strong>de</strong> longa distância;t D : atraso do tapered buffer;t d: atraso do i-ésimo inversor quando não há mismatch;t da : atraso médio <strong>de</strong> um inversor da implementação A;t db : atraso médio <strong>de</strong> um inversor da implementação B;t di : atraso do i-ésimo inversor do tapered buffer;t Dj : atraso do tapered buffer j;t dj,i : atraso médio do i-ésimo inversor do j-ésimo tapered buffer;T E : teorema da estabilida<strong>de</strong>;Tec: comprimento mínimo <strong>de</strong> canal <strong>para</strong> a tecnologia, em µm;T i : largura do pulso na saída do i-ésimo inversor do tapered buffer;t pHLi : atraso da transição <strong>de</strong> alto-<strong>para</strong>-baixo (<strong>de</strong>scarga) na saída do i-ésimo inversor do tapered buffer;t pLHi : atraso da transição <strong>de</strong> baixo-<strong>para</strong>-alto (carga) na saída do i-ésimo inversor do tapered buffer;t Ti : tempo <strong>de</strong> transição efetivo do sinal na saída do i-ésimo inversor;T ∆ : valor <strong>de</strong> T ∆i <strong>para</strong> os N-1 primeiros inversores do tapered buffer;T ∆i : constante do i-ésimo inversor do tapered buffer;t 0 : valor <strong>de</strong> t 0i <strong>para</strong> os N-1 primeiros inversores do tapered buffer;t0t 0: constante dada pela expressão t0= ;K3t 0i : constante <strong>de</strong> tempo do i-ésimo inversor do tapered buffer;V DD : tensão mais <strong>alta</strong> aplicada ao circuito (5V, por exemplo);V DS : tensão dreno-fonte;V D0i : tensão <strong>de</strong> dreno <strong>de</strong> saturação, quando |V GSi |=V DD , <strong>para</strong> o transistor (P ou N);V D0n : tensão <strong>de</strong> dreno <strong>de</strong> saturação, quando V GS =V DD , <strong>para</strong> o transistor N;


Lista <strong>de</strong> Símbolos 15µ ni e µ pi : mobilida<strong>de</strong> dos elétrons e das lacunas nos transistores N e P, respectivamente, do i-ésimoinversor do tapered buffer;µ ni: valor médio da variável µ ni ;µ nj,i e µ pj,i : mobilida<strong>de</strong>s dos elétrons e das lacunas nos transistores N e P, respectivamente, do i-ésimoinversor do j-ésimo buffer;µ p : mobilida<strong>de</strong> das lacunas <strong>para</strong> o transistor P;µ pi: valor médio da variável µ pi ;σ Coxi : <strong>de</strong>svio padrão da variável C oxi ;σ Li : <strong>de</strong>svio padrão da variável L i ;σ L0 : parâmetro do processo que relaciona σ Li com a acurácia do pattern generation process;σ tD : <strong>de</strong>svio padrão <strong>de</strong> t D ;σ Wi : <strong>de</strong>svio padrão da variável W i ;σ W0 : parâmetro do processo que relaciona σ Wi com a acurácia do pattern generation process;σ VTni : <strong>de</strong>svio padrão da variável V Tni ;σ VTpi : <strong>de</strong>svio padrão da variável V Tpi ;σ µni : <strong>de</strong>svio padrão da variável µ ni ;σ µpi : <strong>de</strong>svio padrão da variável µ pi ;ν Ti =|V Ti /V DD |;χ: fator <strong>de</strong> aumento entre inversores do tapered buffer;χ A : fator <strong>de</strong> aumento <strong>de</strong> cada buffer da implementação A;χ B : fator <strong>de</strong> aumento <strong>de</strong> cada buffer da implementação B;χ max : fator <strong>de</strong> aumento que maximiza a taxa <strong>de</strong> operação <strong>para</strong> tapered buffers com N inversores.


Resumo 17ResumoA redução nas dimensões dos transistores CMOS e a <strong>de</strong>manda crescente por circuitos rápidosfizeram da velocida<strong>de</strong> um importante fator <strong>de</strong> <strong>de</strong>sempenho dos circuitos integrados (C.I.) mo<strong>de</strong>rnos. Oobjetivo <strong>de</strong>ste trabalho é o estudo e <strong>de</strong>senvolvimento <strong>de</strong> <strong>técnicas</strong> <strong>para</strong> <strong>projeto</strong> <strong>de</strong> ASICs (Application-Specific Integrated Circuits) CMOS <strong>de</strong> <strong>alta</strong> velocida<strong>de</strong>.Uma estratégia <strong>para</strong> o <strong>projeto</strong> <strong>de</strong> Register Transfer Systems os quais usam um único clock nosincronismo é inicialmente proposta. Essa estratégia foi <strong>de</strong>nominada Exten<strong>de</strong>d True Single PhaseClock (E-TSPC). Nela são utilizadas portas lógicas complementar CMOS, CMOS dinâmicas e dataprecharged (on<strong>de</strong> os dados <strong>de</strong> entrada fazem a pré-carga), blocos n-latches e blocos p-latches. Ainda,são permitidas modificações em algumas <strong>de</strong>stas portas e blocos, formando novos blocos N-MOS likeque aumentam a velocida<strong>de</strong> dos circuitos. Um conjunto <strong>de</strong> regras <strong>de</strong> composição, que regulam asligações entre blocos e portas, é criado. Tais regras, quando obe<strong>de</strong>cidas, garantem que problemasreferentes ao funcionamento das portas e dos blocos usados não ocorrerão. Isso é provado por meio <strong>de</strong>vários teoremas.O estudo da otimização <strong>de</strong> tapered buffers, <strong>para</strong> obter máxima taxa <strong>de</strong> operação, é apresentado emseguida. A partir <strong>de</strong> simulações com diferentes tecnologias verificamos que a minimização do atraso<strong>de</strong> um buffer (<strong>de</strong>s<strong>de</strong> sua entrada à saída) não proporciona a máxima taxa <strong>de</strong> operação necessariamente.Os resultados apontaram que valores <strong>de</strong> fator <strong>de</strong> aumento entre inversores inferiores a 2,0proporcionam maiores taxas. Tais fatores, por outro lado, levam a atrasos maiores que o mínimo quepo<strong>de</strong> ser conseguido. Incrementos superiores a 20% na máxima taxa <strong>de</strong> operação foram alcançadoscom o uso <strong>de</strong> pequenos fatores <strong>de</strong> aumento.Para verificação das <strong>técnicas</strong> propostas, foram projetados e implementados os seguintes circuitos:uma versão <strong>de</strong> <strong>alta</strong> performance <strong>de</strong> um Multiplexador 8:1, uma versão <strong>de</strong> <strong>alta</strong> performance <strong>de</strong> umDemultiplexador 1:8 com byte alignment e um Dual Modulus Prescaler (contador 128/129). Atecnologia empregada foi CMOS 0,8µm (comprimento <strong>de</strong> canal efetivo <strong>de</strong> 0,7µm). Nos circuitosMultiplexador e Demultiplexador foram aplicados os resultados do estudo da otimização <strong>de</strong> taperedbuffers e os novos blocos N-MOS like introduzidos no E-TSPC. Resultados experimentais apontaramque o Multiplexador opera a taxas <strong>de</strong> 1,7Gbit/s e o Demultiplexador, a 1,38Gbit/s. O ganho <strong>de</strong>velocida<strong>de</strong> conseguido em relação a primeira versão <strong>de</strong>stes mesmos circuitos, efeito do emprego das<strong>técnicas</strong> aqui propostas, foi <strong>de</strong> 62% <strong>para</strong> o Multiplexador e <strong>de</strong> 29% <strong>para</strong> o Demultiplexador.Adicionalmente, a com<strong>para</strong>ção dos resultados com os <strong>de</strong> outros circuitos da literatura indica quevelocida<strong>de</strong> e o consumo <strong>de</strong> potência alcançados são excelentes.No Dual Modulus Prescaler a estratégia E-TSPC foi amplamente explorada, mostrando servantajosa <strong>para</strong> atingir tanto <strong>alta</strong>s freqüências <strong>de</strong> operação como baixos consumos <strong>de</strong> potência. Oprotótipo caracterizado do Prescaler operou a 1,58GHz. O índice <strong>de</strong> mérito utilizado <strong>para</strong>com<strong>para</strong>ções entre diferentes implementações <strong>de</strong> Prescalers (Tec 3 .F max /Pot), índice que leva em contaa freqüência máxima <strong>de</strong> operação (F max ), o consumo <strong>de</strong> potência (Pot) e a tecnologia utilizada (Tec),foi, <strong>para</strong> nosso circuito, quase duas vezes superior ao melhor resultado encontrado nas implementaçõesdos outros trabalhos.


Abstract 19AbstractThe dimension reduction of the CMOS transistors and the increasing <strong>de</strong>mand for fast circuits havema<strong>de</strong> the speed an important performance factor of the mo<strong>de</strong>rn integrated circuits (I.C.). The maingoal of this work is the study and <strong>de</strong>velopment of <strong>de</strong>sign techniques for high speed CMOS ASICs(Application-Specific Integrated Circuits).A <strong>de</strong>sign strategy for Register Transfer Systems which use a single clock for synchronization isinitially proposed. This strategy was called Exten<strong>de</strong>d True Single Phase Clock (E-TSPC).Complementary CMOS, dynamic CMOS, and Data Precharged (where the input data does theprecharge) logic gates, n-latch blocks, and p-latch blocks are accepted in the E-TSPC. In addition,modifications in some of these gates and blocks are allowed, building new N-MOS like blocks whichincrease the circuit speed. A set of composition rules, regulating the connections between gates andblocks, is also laid down. Such rules guarantee that problems concerning the operation of the usedgates and blocks will not occur, whenever the rules are followed. It is proved through some theorems.The study of the tapered buffer optimization, to reach maximum operation rates, is next presented.From simulations with different technologies, we verified that the <strong>de</strong>lay minimization of a buffer (fromits input to the output) does not provi<strong>de</strong> necessarily the maximum operation rate. The results havepointed out that tapering factors lower than 2.0 will lead to higher operation rates. Such factors, on theother hand, enlarge the buffer <strong>de</strong>lay, which will be higher than the possible minimum. Employingsmall tapering factors, we have achieved increases larger than 20% in the maximum operation rate.To verify the proposed techniques, the following circuits were <strong>de</strong>signed and implemented: a highperformance version of an 8:1 Multiplexer, a high performance version of an 1:8 Demultiplexer withbyte alignment, and a Dual Modulus Prescaler (128/129 counter). The employed technology was a0.8µm CMOS (0.7µm effective channel length). In the Multiplexador and Demultiplexer circuits, theresults of the tapered buffer optimization study and the new N-MOS like blocks were applied.Experimental measurements showed that the Multiplexer and the Demultiplexer operate at 1.7Gbit/sand at 1.38Gbit/s rates, respectively. The speed gain, in relation to the first version of these samecircuits, effect of our proposed techniques, was of 62% for the Multiplexer and 29% for theDemultiplexer. Additionally, the comparison of the results with the ones from the literature indicatesthat the achieved speed and power consumption are excellent.In the Dual Modulus Prescaler, the E-TSPC strategy was wi<strong>de</strong>ly explored, showing to beadvantageous to reach both a high frequency and a low power consumption. The characterizedPrescaler prototype operated at 1.58GHz frequency. In addition, the in<strong>de</strong>x of merit used for comparingdifferent Prescaler implementations (Tec 3 .F max /Pot), which takes the clock frequency (F max ), the powerconsumption (Pot), and the technology (Tec) into account, has, for our circuit, a value which is almosttwice the best result found in the other work implementations.


Introdução 211. Introdução1.1 História das tecnologias MOSOs princípios por trás dos transistores <strong>de</strong> efeito-campo Metal Oxi<strong>de</strong> Silicon (MOS) sãoprimeiramente propostos em 1925 por J. Lilienfeld, professor <strong>de</strong> física da Universida<strong>de</strong> <strong>de</strong> Leipzig[Sa88]. Lilienfeld usou apenas a eletrostáticos <strong>para</strong> prever a modulação da condutivida<strong>de</strong> (a físicaquântica estava em sua infância) ([Sa88]). Em 1935 o alemão O. Heil faz, na Inglaterra, pedido <strong>de</strong>patente <strong>para</strong> uma estrutura similar aos transistores MOS mo<strong>de</strong>rnos ([We93], [Ra96], [Sa88]); nele, a<strong>de</strong>scrição da operação do transistor faz já uso <strong>de</strong> conceitos <strong>de</strong> elétrons e lacunas <strong>de</strong>rivados da teoriados semicondutores ([Sa88]). Não obstante as previsões teóricas, os transistores construídos fracassamem apresentar amplificações <strong>de</strong> corrente. Para explicar isso, Bar<strong>de</strong>en propõe que estados <strong>de</strong> superfíciebloqueiam o campo elétrico e impe<strong>de</strong>m a formação e modulação do canal no transistor. Ele, Brattain eSchockley, tentado contornar esta dificulda<strong>de</strong> nos transistores <strong>de</strong> efeito-campo, acabam por inventar otransistor bipolar no Bell Telephone Laboratories em 1948 ([Me98], [Rs98]). Com o estudo eexplicação dos fenômenos que ocorrem no transistor bipolar é que, por fim, a física básica por trás dotransistor é compreendida [Sa88].A invenção do transistor bipolar faz com que os transistores <strong>de</strong> efeito campo sejam quaseesquecidos. No fim da década <strong>de</strong> 50, surgem várias importantes contribuições tanto <strong>para</strong> o<strong>de</strong>senvolvimento da microeletrônica como <strong>para</strong> a volta dos transistores <strong>de</strong> efeito-campo:• em 1959 , J. Hoerni, Fairchild, inventa o processo planar <strong>para</strong> fabricação <strong>de</strong> transistores;• em 1959, Atalla e Kahng, Bell Labs., fabricam e conseguem a operação <strong>de</strong> um transistor MOS[Me98]. Ele é tido como uma curiosida<strong>de</strong> pois sua performance é bastante inferior aos bipolares;• em 1958, J. Kilby, Texas Instruments, <strong>de</strong>senvolve o primeiro circuito integrado (C.I.); este éaperfeiçoado com os trabalhos <strong>de</strong> Noyce, Farchaild, 1959, que usa o processo planar e alumínioevaporado <strong>para</strong> as interconexões [Me98].Observemos que a fabricação dos primeiros C.I.s marca uma importante transição na concepção daaplicação dos transistores; eles <strong>de</strong>ixam <strong>de</strong> ser encarados como meros substitutos <strong>de</strong> válvulas <strong>para</strong>serem vistos como dispositivos que possibilitam o <strong>de</strong>senvolvimento <strong>de</strong> circuitos muito mais complexosdo que até então eram possíveis.Estando resolvidos os principais problemas na compreensão e na fabricação dos transistores, aindústria da microeletrônica começa então a ser estabelecida.Devido à sua estrutura mais simples, a<strong>de</strong>quada <strong>para</strong> os circuitos integrados complexos, o transistorMOS passa a ser encarado como um dispositivo viável na década <strong>de</strong> 60. Em 1964, Fairchild e RCAintroduzem no mercado os primeiros transistores MOS [Sa88]. Problemas com estados <strong>de</strong> interface e


22Introduçãoimpurezas mantém, no entanto, restrito o uso do MOS até o fim da década. Entre 1964 e 1969<strong>de</strong>senvolvem-se <strong>técnicas</strong> <strong>para</strong> redução dos estados <strong>de</strong> interface, i<strong>de</strong>ntifica-se o sódio como principalimpureza no MOS e apresentam-se soluções <strong>para</strong> evitar problemas com esta impureza. Aconfiabilida<strong>de</strong> do transistor MOS, em vista disso, melhora e aumenta a gama <strong>de</strong> suas aplicaçõescomerciais.Nos primeiros anos a tecnologia MOS é dominada pelo PMOS (MOS on<strong>de</strong> só há transistores canalP), mais robusta aos problemas com impurezas, embora o conceito <strong>de</strong> Complementary Metal Oxi<strong>de</strong>Silicon (CMOS) já houvesse sido introduzido por Weimer, RCA, em 1962 e por Wanlass, Fairchild,em 1963. Em 1970 a primeira memória em semicondutor com produção em massa é anunciada pelaIntel: DRAM (Dynamic Random Access Memory) <strong>de</strong> 1-Kbit na tecnologia PMOS com três transistorespor bit. Por volta <strong>de</strong> 1971, superados os problemas com impurezas e estados <strong>de</strong> superfície, emergem asprimeiras tecnologias NMOS (MOS on<strong>de</strong> só há transistores canal N) que permitem maioresvelocida<strong>de</strong>s e, ao mesmo tempo, maior nível <strong>de</strong> integração. Como conseqüência, surgem memóriasmaiores (DRAM <strong>de</strong> 4-Kbit começam a ser produzidos em 1972) e o primeiro microprocessador, o4004 da Intel (ver Tabela 1 [Bo98]).O domínio das tecnologias NMOS se esten<strong>de</strong> até fim da década <strong>de</strong> 70. Com o aumento das<strong>de</strong>nsida<strong>de</strong>s e velocida<strong>de</strong>s começa a haver problemas com o consumo <strong>de</strong> potência, o que dáoportunida<strong>de</strong> as tecnologias CMOS. Esta tecnologia, não obstante apresentar mais etapas na fase <strong>de</strong>fabricação, tem um <strong>de</strong>sempenho, no que tange ao consumo <strong>de</strong> potência, bem superior as outrastecnologias. Tem início então o domínio do CMOS e que dura até hoje (Tabela 1).Nos últimos anos a base <strong>de</strong> cerca <strong>de</strong> 98% da produção <strong>de</strong> circuitos semicondutores (tanto pornúmero <strong>de</strong> componentes como por valor) é o silício, sendo que mais <strong>de</strong> 75% <strong>de</strong>stes circuitos sãoproduzidos com tecnologias CMOS ([Br98], [Se97]). Isso não <strong>de</strong>ve se alterar significativamente nospróximos anos. Dessa forma, o CMOS continuará a ser a tecnologia mais importante <strong>de</strong>ntro daindústria <strong>de</strong> microeletrônica.1.2 Motivações e objetivosEncontramos na indústria <strong>de</strong> microeletrônica certas tendências históricas <strong>de</strong> avanços. Uma <strong>de</strong>las é aredução do preço por função entre 25% a 30% por ano [Se97]. Outra, conhecida como lei <strong>de</strong> Moore, éa duplicação da complexida<strong>de</strong> <strong>de</strong> integração a cada 18 meses ([Mo65], [Ra96], [Sh98]). A Figura 1,que apresenta o número <strong>de</strong> transistores dos microprocessadores da Intel em função do ano do seulançamento, confirma esta lei.Tabela 1. Processadores produzidos pela Intel e suas características básicas [Bo98].


Introdução 23início freqüência doclock (MHz)bus width número <strong>de</strong> transistores(tecnologia)4004 15/nov./71 0,108 4 2300(NMOS 10µm)8008 1/abr./72 0,108 8 3500(NMOS)8080 1/abr./74 2 8 6000(NMOS 6µm)8086 8/jun./78 5; 8; 10 16 29000(NMOS 3µm)8088 1/jun./79 5; 8 8 29000(NMOS 3µm)80286 1/jan./82 6; 8; 10; 12,5 16 134000(NMOS 1,5µm)386 DX 17/out./85 16; 20; 25; 33 32 275000(CMOS 1µm)386 SX 16/jun./88 16; 20; 25; 33 16 275000(CMOS 1µm)486 DX 10/abr./89 25; 33; 50 32 1,2 milhões(CMOS 1µm e 0,5µm)486 SX 22/abr./91 16; 20; 25; 33 32 1,185 milhões(CMOS 1µm)Pentium 22/mar./93 60; 66; 75; 90; 100; 32 3,1 milhões(BiCMOS 0.8µm)120; 133; 150; 166Pentium Pro 1/nov./95 150; 166; 180; 200 64 5,5 milhões(0,6µm)Pentium II 7/maio/97 200; 233; 266; 300333; 350; 40064 7,5 milhões(CMOS 0,35µm e 0,25µm)10 5 ano <strong>de</strong> lançam ento10 410 3núm ero <strong>de</strong>transistores (k)10 280286Pentium IIPentium ProPentiumIn te l 4 8 6In te l 3 8 6808610 180808008400410 01970 1975 1980 1985 1990 1995 2000Figura 1. Número <strong>de</strong> transistores em função do ano <strong>de</strong> lançamento <strong>para</strong> os principaismicroprocessadores da Intel (não estão no gráfico os processadores 8088, 386SX e 486SX pois elessão versões econômicas do 8086, do 386DX e do 486DX, respectivamente).A partir <strong>de</strong>ssas tendências, as características das próximas gerações tecnológicas CMOS po<strong>de</strong>m serextrapoladas, um trabalho que foi <strong>de</strong>senvolvido no National Technology Roadmap for Semiconductors(NTRS) produzido pelo Semiconductor Industry Association ([Se92], [Se94], [Se97]). A Tabela 2


24Introduçãoapresenta algumas das características das próximas gerações CMOS como apontado no NTRS <strong>de</strong>1997.Tabela 2. Características das gerações tecnológicas apresentadas no NTRS/97 ([Se97], [Br98]).Ano do início <strong>de</strong> produção 1997 1999 2001 2003 2006 2009 2012linhas <strong>de</strong>nsas (DRAM half 250 180 150 130 100 70 50pitch) (nm) *linhas isoladas (gates lenght <strong>de</strong> 200 140 120 100 70 50 35microprocessador) (nm) *Memória bits/cm 2 96M 270M 380M 770M 2,2G 6,1G 17GMicroprocessador 3,7M 6,2M 10M 18M 39M 64M 100Mtransistor/cm 2chip to packge Pads (<strong>alta</strong> 1450 2000 2400 3000 4000 5400 7300performance) #freqüência on-chip-local (<strong>alta</strong> 750 1250 1500 2100 3500 6000 10000performance) (MHz) ♣freqüência on-chip-across chip 750 1200 1400 1600 2000 2500 3000(<strong>alta</strong> performance) (MHz) ♣freqüência chip to board(<strong>alta</strong> performance) (MHz)750 1200 1400 1600 2000 2500 3000área do chip (mm 2 ) DRAM 280 400 445 560 790 1120 1580área do chip (mm 2 )microprocessador300 340 385 430 520 620 750número <strong>de</strong> níveis <strong>de</strong> metal 6 6-7 7 7 7-8 8-9 9número mínimo <strong>de</strong> máscaras 22 22-24 23 24 24-26 26-28 28V DD <strong>para</strong> lógica (V) 1,8-2,5 1,5-1,8 1,2-1,5 1,2-1,5 0,9-1,2 0,6-0,9 0,5-0,6dissipação <strong>de</strong> potência (<strong>alta</strong>performance) (W)70 90 110 130 160 170 175dissipação <strong>de</strong> potência(equipamentos c/ bateria) (W)1,2 1,4 1,7 2,0 2,4 2,8 3,2* o NTRS/97 divi<strong>de</strong> as tecnologias <strong>de</strong> fabricação em duas classes: aquelas usadas <strong>para</strong> implementação <strong>de</strong> DRAMs eaquelas usadas em circuitos lógicos. Para as primeiras, é usado o half pitch do primeiro nível <strong>de</strong> interconexão, linhasmais <strong>de</strong>nsas, como característica mais representativa da geração tecnológica. No caso das tecnologias usadas <strong>para</strong>lógica, é usado o comprimento do canal (L);# os circuitos projetados <strong>para</strong> alcançar a máxima velocida<strong>de</strong> são chamados <strong>de</strong> circuitos <strong>de</strong> <strong>alta</strong> performance;♣ duas classes <strong>de</strong> clocks são discriminadas no NTRS/97: o clock global, que <strong>de</strong>ve ser distribuído por todo o C.I., e oclock local, gerado a partir do global e que será usado em porções menores do C.I., normalmente em C.I.s <strong>de</strong> <strong>alta</strong>performance.É importante lembrar que os dois NTRS anteriores, <strong>de</strong> 1992 e <strong>de</strong> 1994 ([Se92], [Se94]), ficaramaquém do progresso real verificado na indústria ([Br98]).Também foram discutidas as dificulda<strong>de</strong>s que <strong>de</strong>vem ser superadas <strong>para</strong> tornar realida<strong>de</strong> asextrapolações feitas (não previsões [Br98]), e as implicações disso. As maiores dificulda<strong>de</strong>s esperadas<strong>para</strong> o futuro são [Se97] 1 :• habilida<strong>de</strong> em continuar a redução <strong>de</strong> custos;• habilida<strong>de</strong> em <strong>de</strong>senvolver litografia com custos razoáveis <strong>para</strong> tecnologias abaixo <strong>de</strong> 100nm;1 Cada um <strong>de</strong>stes itens é explicado em <strong>de</strong>talhe na referência. Aqui, como estamos preocupados apenas com operaçõesem <strong>alta</strong>s freqüências, não faremos isso.


Introdução 25• introdução <strong>de</strong> novos materiais e estruturas;• operação em GHz, tanto internamente como chip-to-board;• metrologia e testes;• <strong>de</strong>safios na pesquisa e <strong>de</strong>senvolvimento.Destes <strong>de</strong>safios, a operação em GHz é o que nos interessa. A Tabela 2 nos mostra que a barreira do1GHz já está sendo ultrapassada e que maiores velocida<strong>de</strong>s são esperadas <strong>para</strong> o clock local, <strong>para</strong> oclock global e mesmo <strong>para</strong> a comunicação chip-to-board.O aumento na velocida<strong>de</strong> dos circuitos, conseqüência direta da redução nas dimensões mínimas dastecnologias, tem sido útil em duas gran<strong>de</strong>s classes <strong>de</strong> aplicações. A primeira classe é composta peloscircuitos que eram apenas realizáveis com outras tecnologias mais velozes (Bipolar, GaAs); uma vezque as tecnologias CMOS oferecem gran<strong>de</strong>s vantagens com relação a custos, níveis <strong>de</strong> integração econsumo <strong>de</strong> potência, sua utilização no lugar das tecnologia concorrentes, quando possível, é semprevantajosa. Exemplos <strong>de</strong>stes são circuitos <strong>para</strong> comunicação em fibras ópticas ([Ku96], [Oh97]) etelefonia celular ([Ro98a], [Ro98b], [Le97]). Lembremos que freqüências muito elevadas são somentealcançadas com circuitos Bipolares ou, principalmente, GaAs ([Ot98]). Em particular, no caso <strong>de</strong>fibras ópticas, com sua banda superior a 50000Gbit/s (50Tbit/s [Ta96]), os circuitos CMOS permitema utilização <strong>de</strong> uma pequena fração da capacida<strong>de</strong>.A segunda classe <strong>de</strong> circuitos, on<strong>de</strong> o aumento das velocida<strong>de</strong>s é importante, é composta pormicroprocessadores e Digital Signal Processors (DSPs), que estão sob constante pressão <strong>para</strong>melhoras no <strong>de</strong>sempenho <strong>de</strong>vido à <strong>de</strong>manda crescente por maiores capacida<strong>de</strong>s <strong>de</strong> processamento([Gr98], [Gu96], [Ga96]).A implementação <strong>de</strong> circuitos CMOS trabalhando em GHz enfrenta um número enorme <strong>de</strong>problemas. Entre eles po<strong>de</strong>mos citar a escolha dos blocos que serão usados, portas lógicas e latches, adistribuição <strong>de</strong> sinais no C.I., por exemplo o clock, o aumento do consumo <strong>de</strong> potência, os sinais <strong>de</strong>entrada e saída, encapsulamento, linhas <strong>de</strong> interconexão, testabilida<strong>de</strong> entre outros.Neste trabalho propomos algumas novas <strong>técnicas</strong> que permitem a implementação <strong>de</strong> ASICs(Application-Specific Integrated Circuits) CMOS digitais <strong>de</strong> <strong>alta</strong> velocida<strong>de</strong>, aproveitando ao máximoa tecnologia usada. Um exemplo disso, apresentado nesse trabalho, é um circuito Prescaler, fabricadocom uma tecnologia CMOS 0,8µm, funcionando a 1,6GHz [Na99].1.3 Desenvolvimento da pesquisaEste trabalho foi iniciado durante o <strong>de</strong>senvolvimento <strong>de</strong> circuitos Multiplexadores 8:1 eDemultiplexadores 1:8 com byte alignment ([Ko91], [Vi89]), <strong>para</strong> serem utilizados na transmissão <strong>de</strong>dados por fibras ópticas ([Ro95a], [Ro95b], [Ro96], [No98])(Figura 2). Neste caso, tanto o


26IntroduçãoMultiplexador como o Demultiplexador <strong>de</strong>vem trabalhar com freqüências tão <strong>alta</strong>s quanto aquela que éutilizada na transmissão (na figura, 1,244Gbit/s). Os outros circuitos do sistema, como por exemplo osresponsáveis pela montagem <strong>de</strong> frames, funcionam com taxas bem menores (na figura, 155,5Mbit/s).Por esta razão estes dois circuitos são críticos no <strong>de</strong>sempenho do sistema completo.O objetivo do <strong>projeto</strong> era atingir taxas <strong>de</strong> 622Mbit/s (STS12/STM4) e, se possível, <strong>de</strong> 1,244Gbit/s(STS12/STM8), utilizando uma tecnologia CMOS <strong>de</strong> 0,8µm e alimentação <strong>de</strong> 5V (CMOS daES2/ATMEL [Es94]). Foram empregados no <strong>projeto</strong> D-flip-flops do tipo True Single Phase Clock(TSPC)([Yu87], [Yu89], [Af90]).155,5Mbit/s155,5Mbit/sEntrada<strong>de</strong> dadosE/OFibra ópticaO/ESaída <strong>de</strong>dadosMultiplexador8:11,244Gbit/sDemultiplexador1:8Figura 2. Esquemático <strong>de</strong> sistema <strong>para</strong> transmissão e recepção por meio <strong>de</strong> fibra óptica; E/O é umconversor elétrico/óptico (foto-emissor) e O/E, um conversor óptico/elétrico (foto-receptor). As taxas<strong>de</strong> operação indicadas são do padrão SONET STS24/CCITT STM8 [St92].Uma primeira dificulda<strong>de</strong> <strong>para</strong> a realização dos circuitos acima foram os sinais <strong>de</strong> <strong>alta</strong> freqüênciaque chegam ou saem do C.I. (no Multiplexador, o clock e a saída <strong>de</strong> dados; no Demultiplexador, oclock e a entrada <strong>de</strong> dados). Para permitir <strong>alta</strong>s velocida<strong>de</strong>s, menor ruído e menor consumo <strong>de</strong>potência, convém utilizar, <strong>para</strong> estes sinais, níveis lógicos com excursão <strong>de</strong> tensão pequena. Umpadrão a<strong>de</strong>quado <strong>para</strong> isto é o ECL ([Ch88], [Sc90], [St91], [Is92], [Aa93]) no entanto, <strong>para</strong> seu uso,são necessários circuitos <strong>de</strong> entrada e saída que façam a conversão dos níveis ECL <strong>para</strong> os níveisusados internamente no C.I. e vice-versa (internamente no C.I. são usados níveis CMOS). Os circuitos<strong>de</strong> conversão projetados <strong>para</strong> essas tarefas são <strong>de</strong>scritos em [Na95], [Na96] e [Na97a].Na primeira versão dos circuitos Multiplexador e Demultiplexador, os resultados experimentaisapontaram que podiam operar com taxas próximas <strong>de</strong> 1,1Gbit/s, na tecnologia CMOS 0,8µm.Estando as taxas alcançadas próximas ao padrão SONET STS24, novos estudos foram feitos <strong>para</strong>melhorar o <strong>de</strong>sempenho dos circuitos. Da análise dos blocos internos, portas lógicas e latches, e suasconexões resultaram as idéias que <strong>de</strong>senvolvidas e organizadas formaram o que chamamos <strong>de</strong>Exten<strong>de</strong>d True Single Phase Clock (E-TSPC) ([Na97b], [Na97c], [Na99]).Ainda foram feitos estudos sobre os tapered buffers, usados nos circuitos tanto <strong>para</strong> a distribuição


Introdução 27do sinal <strong>de</strong> clock como dos sinais <strong>de</strong> dados. Foi observado que o uso do atraso <strong>para</strong> otimização nãoresultava no melhor <strong>de</strong>sempenho. A partir daí foram feitas análises <strong>para</strong> obter um critério maisapropriado <strong>para</strong> otimização <strong>de</strong> tapered buffers [Na98a].Os resultados dos estudos referidos acima foram empregados no <strong>projeto</strong> <strong>de</strong> novas versões doscircuitos Multiplexador e Demultiplexador com bons resultados [Na98b]. Ainda um circuito Dual-Modulus Prescaler (128/129) ([Ch96], [Cr96], [Le97]) foi fabricado e testado <strong>para</strong> avaliar melhor aestratégia E-TSPC, que havia sido parcialmente aplicada nos outros dois circuitos [Na99].Nestes três tópicos, a estratégia E-TSPC, a otimização <strong>de</strong> tapered buffers e os resultadosexperimentais obtidos com a aplicação <strong>de</strong>stes, é que está constituída esta tese.1.4 Capítulos: <strong>de</strong>scriçãoO trabalho é apresentado em cinco capítulos. No segundo capítulo são discutidas algumas formas <strong>de</strong>implementação <strong>de</strong> Register Transfer Systems (RTL). Posteriormente é introduzida a estratégia E-TSPC, com seus blocos e regras <strong>de</strong> conexão. Finalmente, a função <strong>de</strong>stas regras é explicada e são<strong>de</strong>monstrados teoremas que provam que elas são suficientes <strong>para</strong> evitar os problemas que asmotivaram.No capítulo três é apresentado e discutido um novo critério <strong>para</strong> otimização <strong>de</strong> tapered buffers.Através <strong>de</strong> simulações é mostrado que com a minimização do atraso total, critério mais usado <strong>para</strong>otimização <strong>de</strong> buffers, não são alcançadas as maiores taxas <strong>de</strong> operação. Ganhos na velocida<strong>de</strong> entre20% e 30% são conseguidos com outra forma <strong>de</strong> otimização. Por fim é feita uma análise docomportamento do atraso, <strong>de</strong>vido ao mismatch entre os inversores, em função do fator <strong>de</strong> aumentoentre inversores usado no buffer.Os circuitos projetados aplicando-se as <strong>técnicas</strong> estudadas, Multiplexador, Demultiplexador ePrescaler, são apresentados no capítulo quatro. Também são apresentados os testes experimentaisfeitos nos protótipos fabricados. O novo circuito Multiplexador foi quase 70% mais veloz que a versãoanterior; no circuito Demultiplexador, a melhora na velocida<strong>de</strong> foi <strong>de</strong> apenas 30%, quando com<strong>para</strong>doa primeira versão (sempre utilizando a mesma tecnologia). O circuito Prescaler, por sua vez, apresentafreqüências <strong>de</strong> operação tão <strong>alta</strong>s quanto outros já publicados e consumo <strong>de</strong> potência bem inferior.No capítulo cinco, <strong>de</strong> conclusão, são sumariados os principais aspectos do trabalho e futuras etapasda pesquisa.


Implementação <strong>de</strong> Register Transfer Systems (RTS) <strong>de</strong> Alta Velocida<strong>de</strong> 292. Implementação <strong>de</strong> Register Transfer Systems (RTS) <strong>de</strong> Alta Velocida<strong>de</strong>2.1 IntroduçãoNeste capítulo apresentaremos a estratégia Exten<strong>de</strong>d True Single Phase Clock, E-TSPC, usada <strong>para</strong>implementação <strong>de</strong> circuitos RTS (Register Transfer Systems) digitais. Ela foi <strong>de</strong>senvolvida a partir datécnica True Single Phase Clock (TSPC)([Yu87], [Yu89], [Af90], [La95]); acrescentamos a esta novasregras, que permitem uma maior varieda<strong>de</strong> <strong>de</strong> combinações das portas lógicas e registradores, além <strong>de</strong>novos blocos, tornando-a mais veloz. O E-TSPC visa especialmente à implementação <strong>de</strong> circuitosrápidos <strong>de</strong>ntro da tecnologia CMOS.Antes <strong>de</strong> entrarmos no E-TSPC, falaremos dos Register Transfer Systems e apresentaremos várioscircuitos usados <strong>para</strong> implementação tanto das portas lógicas como dos registradores. Tambémfalaremos sobre algumas políticas <strong>de</strong> sincronização ou <strong>de</strong> clock <strong>para</strong> os RTS. Nos <strong>de</strong>teremos um poucona técnica TSPC e apontaremos alguns problemas <strong>de</strong>la. Por fim trataremos do E-TSPC: seus blocos,regras e os problemas, referentes ao funcionamento <strong>de</strong>stes blocos, que as regras evitam. Provaremos,que, obe<strong>de</strong>cidas a tais regras, os blocos operam corretamente.2.2 Register Transfer Systems (RTS)Como apontado em [Go84], o armazenamento <strong>de</strong> informações em registradores e a transferência<strong>de</strong>stas <strong>de</strong> um registrador <strong>para</strong> outro, com a manipulação lógica das informações durante atransferência, são operações fundamentais em qualquer sistema digital complexo. Chamaremos aquigenericamente <strong>de</strong> Register Transfer Systems, ou simplificadamente <strong>de</strong> RTS, qualquer conjunto <strong>de</strong>registradores e portas lógicas que executam estas funções. Na Figura 3 é apresentado um RTS comsuas partes principais. As máquinas <strong>de</strong> estados finitos e os pipelined systems são exemplos <strong>de</strong> RTS, oque mostra sua importância pois, em gran<strong>de</strong> extensão, os sistemas V<strong>LSI</strong> (Very-Large-Scale ofIntegration) são combinações <strong>de</strong> máquinas <strong>de</strong> estados finitos e pipelined systems [We93].No RTS, os sinais <strong>de</strong> clock ou relógio servem <strong>para</strong> sincronizar transferências dos dados <strong>de</strong> umregistrador <strong>para</strong> outro e a unida<strong>de</strong> <strong>de</strong> controle, <strong>para</strong> permitir operações condicionais. A política <strong>de</strong>clock empregada <strong>de</strong>termina como serão implementados os circuitos, que tipos <strong>de</strong> registradores serãousados, latches, D-flip-flops, etc., e quantos diferentes sinais <strong>de</strong> relógio haverá. Os diferentes sinais <strong>de</strong>relógio também são chamados <strong>de</strong> fases <strong>de</strong> clock. Veremos mais adiante alguns exemplos <strong>de</strong> políticas<strong>de</strong> clock.Várias são as famílias <strong>de</strong> circuitos utilizadas <strong>para</strong> a construção da lógica combinatorial e dosregistradores. Nas próximas seções apresentaremos aquelas mais conhecidas nas tecnologias CMOS.Daqui por diante chamaremos <strong>de</strong> V DD a tensão mais <strong>alta</strong> aplicada ao circuito, por exemplo 5V, 3V, e


30Implementação <strong>de</strong> Register Transfer Systems (RTS) <strong>de</strong> Alta Velocida<strong>de</strong><strong>de</strong> V SS a mais baixa, normalmente terra. O nível lógico baixo será indicado por “0” e o nível lógicoalto, por “1”; a transição <strong>de</strong> “0” <strong>para</strong> “1”, será indicada por “0”→”1”, e <strong>de</strong> “1” <strong>para</strong> “0”, por “1”→”0”.RegistradorLógicacombinatorialRegistradorLógicacombinatorialRegistradorLógicacombinatorialSinais <strong>de</strong>controleclocks clocks clocksUnida<strong>de</strong> <strong>de</strong> ControleFigura 3. Representação genérica <strong>de</strong> um Register Transfer System (RTS).2.2.1 Lógica CombinatorialPo<strong>de</strong>mos, como feito em [Ra96], se<strong>para</strong>r as portas lógicas que implementam a lógica combinatorialem estáticas e dinâmicas. As portas estáticas têm como característica que a todo instante, exceto talvezdurante a transição, a saída está conectada a V DD , a V SS , ou a ambas via um caminho <strong>de</strong> baixaimpedância (transistores conduzindo). O valor na saída é uma função lógica das entradas da porta. Asportas lógicas dinâmicas, ao contrário, têm a saída <strong>de</strong>sconectada tanto <strong>de</strong> V DD como <strong>de</strong> V SS durantefases <strong>de</strong> sua operação. O sinal da saída fica armazenado na capacitância do próprio nó <strong>de</strong> saída. Asportas dinâmicas apresentam a vantagem <strong>de</strong> serem mais simples e rápidas mas sofrem com ruído.As portas lógicas mostradas nas próximas seções são:estáticas: complementar CMOS dinâmicas: CMOS dinâmicospseudo NMOSC 2 MOScom transistores <strong>de</strong> passagem2.2.1.1 Lógica Estática Complementar CMOSUma porta lógica estática complementar CMOS, como apresentada na Figura 4 ([Go84], [We93],[Ra96]), é um combinação <strong>de</strong> duas estruturas, uma chamada pull-up network (PUN) e outra, pull-downnetwork (PDN). A estrutura PUN é uma conexão condicional da saída da porta <strong>para</strong> V DD ,implementada com transistores P; a estrutura PDN, uma conexão condicional da saída da porta <strong>para</strong>V SS , implementada com transistores N. Estas duas estruturas <strong>de</strong>vem ser projetadas <strong>para</strong> operar <strong>de</strong> formacomplementar, ou seja, quando uma <strong>de</strong>las conduz a outra está cortada e vice-versa. Desta forma,


Implementação <strong>de</strong> Register Transfer Systems (RTS) <strong>de</strong> Alta Velocida<strong>de</strong> 31qualquer que seja o valor dos sinais <strong>de</strong> entrada, a saída estará ligada ou a V DD , tendo nível lógico alto,ou a V SS , tendo nível lógico baixo.Uma característica <strong>de</strong>terminante das portas estáticas complementar CMOS é que o seu corretofuncionamento não <strong>de</strong>pen<strong>de</strong> da relação entre as dimensões dos transistores P e N (ratioless). Apenasvelocida<strong>de</strong> e margens <strong>de</strong> ruído <strong>de</strong>pen<strong>de</strong>m <strong>de</strong>stas. Devido a isto, o <strong>projeto</strong> com portas complementarCMOS é bastante simplificado.As vantagens das portas lógicas complementar CMOS são:• <strong>alta</strong>s margens <strong>de</strong> ruído;• baixa potência estática: neste tipo <strong>de</strong> porta, quando não há transições nos valores <strong>de</strong> entrada, apotência dissipada, potência estática, é <strong>de</strong>vido a apenas correntes <strong>de</strong> fuga, sendo praticamentezero;• tempos <strong>de</strong> subida e <strong>de</strong>scida comparáveis se a porta for bem projetada;• baixa sensibilida<strong>de</strong> a variações <strong>de</strong> processo e facilida<strong>de</strong> <strong>de</strong> <strong>projeto</strong> (ratioless).Por outro lado, como po<strong>de</strong>mos observar na Figura 4, a função lógica do circuito é executada duasvezes, uma na estrutura PUN e outra na estrutura PDN. Esta redundância acarreta <strong>de</strong>svantagens <strong>para</strong>esta família <strong>de</strong> circuitos:• há gasto maior com área;• funções lógicas complexas têm <strong>de</strong>gradadas a velocida<strong>de</strong> do circuito.d=a(b+c)transistor PabcdV DDPUNd = a + ( b⋅c)entradaV DDPUNtrans. Psaídatransistor NbacPDNd = a( b+c)PDNtrans. NV SSV SSa)b)Figura 4. Porta lógica estática complementar CMOS <strong>para</strong> a função d = a( b+ c): (a), representaçãocom transistores e (b), sua representação simplificada.


32Implementação <strong>de</strong> Register Transfer Systems (RTS) <strong>de</strong> Alta Velocida<strong>de</strong>2.2.1.2 Lógica Estática Pseudo NMOSA porta lógica pseudo NMOS, Figura 5 ([We93], [Ra96], [Gu96]), é semelhante as portas lógicasutilizadas nas tecnologias NMOS, on<strong>de</strong> existem apenas transistores N, o <strong>de</strong> enriquecimento e o <strong>de</strong><strong>de</strong>pleção [Me80]. Na lógica pseudo NMOS, o transistor P é usado como carga ao invés do <strong>de</strong><strong>de</strong>pleção. O transistor P <strong>de</strong> carga tem seu gate 2 ligado a V SS ou a alguma outra tensão <strong>de</strong> polarização(como V L na Figura 5). Com<strong>para</strong>ndo a porta pseudo NMOS com a complementar CMOS vemos queapenas a estrutura PDN está presente. Quando esta conduz, a saída do circuito é levada <strong>para</strong> próximo<strong>de</strong> V SS . Veja que isto <strong>de</strong>ve ocorrer mesmo estando o transistor P conduzindo, o que exige um corretodimensionamento do circuito. Por outro lado, se a estrutura PDN não conduz, o transistor P <strong>de</strong> cargaleva a saída <strong>para</strong> V DD . Esta é uma lógica com relação, ratioed, on<strong>de</strong> a razão entre as dimensões dostransistores N e P é fundamental <strong>para</strong> o funcionamento do circuito (não apenas velocida<strong>de</strong> e margens<strong>de</strong> ruído).Duas características importantes estão presentes nesta configuração <strong>de</strong> portas: a carga capacitiva <strong>de</strong>entrada da porta é reduzida em relação a complementar CMOS; os transistores P, normalmente maislentos, não são usados <strong>para</strong> a função lógica. A conseqüência <strong>de</strong>stas características é que a velocida<strong>de</strong>do pseudo NMOS é maior, principalmente <strong>para</strong> portas lógicas mais complexas. A maior dificulda<strong>de</strong>nestes circuitos, como nas tecnologias NMOS em geral, é o consumo <strong>de</strong> potência estática que ocorrerásempre que a saída da porta tenha valor lógico baixo.Consi<strong>de</strong>rando os aspectos comentados acima, o uso <strong>de</strong> portas pseudo NMOS é aconselhado empequenos subcircuitos on<strong>de</strong> a velocida<strong>de</strong> é <strong>de</strong> gran<strong>de</strong> importância ou, também, on<strong>de</strong> é sabido que assaídas das portas ficam na maior parte do tempo em nível alto.Sumariando as vantagens dos pseudo NMOS, temos:• maiores velocida<strong>de</strong>s principalmente <strong>para</strong> funções lógicas complexas;• ocupação <strong>de</strong> menores áreas.Três problemas importantes com estas portas são:• o consumo <strong>de</strong> potência estática;• a maior dificulda<strong>de</strong> no <strong>projeto</strong> pois as dimensões do circuito são importantes <strong>para</strong> ofuncionamento (ratioed);• os tempos <strong>de</strong> subida e <strong>de</strong>scida, em geral, diferentes.2 A palavra gate é mantida em inglês quando tratamos da porta do transistor; com isso procuramos evitar qualquerconfusão entre as expressões "porta lógica" e "porta do transistor".


Implementação <strong>de</strong> Register Transfer Systems (RTS) <strong>de</strong> Alta Velocida<strong>de</strong> 33e=a+b+c+dV DDV DDV LabV LcedPDNe = a + b+ c+<strong>de</strong>ntradaPDNtrans. NsaídaV SSV SSa)b)Figura 5. Porta lógica estática pseudo NMOS <strong>para</strong> a função e= a+ b+ c+ d : (a), representação comtransistores e (b), sua representação simplificada.2.2.1.3 Lógica Estática com Transistores <strong>de</strong> PassagemUma das formas <strong>de</strong> construir funções lógicas é através <strong>de</strong> chaves ou transistores <strong>de</strong> passagem. Nestecaso, um pequeno número <strong>de</strong> elementos é empregado, resultando um circuito simples e rápido.Diferentes famílias lógicas são construídas <strong>de</strong>sta maneira ([We93], [Ra96], [Gu96]). Na Figura 6(a)está uma porta ou exclusivo feita com transistores <strong>de</strong> passagem. Neste caso apenas transistores Nforam usados na função <strong>de</strong> chave, o que causa a <strong>de</strong>gradação do nível alto após o transistor <strong>de</strong>passagem; seu valor máximo será (V DD -V Tn ), on<strong>de</strong> V Tn é a tensão <strong>de</strong> limiar do transistor N. Paracontornar este problema é acrescido um transistor P <strong>de</strong> pull-up. As chaves po<strong>de</strong>m ser tambémconstruídas com dois transistores, um P e outro N. Como conseqüência disso, haverá o aumento daárea, a redução da velocida<strong>de</strong> e a necessida<strong>de</strong> <strong>de</strong> se fornecer, <strong>para</strong> cada sinal, o seu negado.O circuito da Figura 6(b) apresenta uma outra alternativa no uso <strong>de</strong> transistores <strong>de</strong> passagem; é achamada Complementary Pass-Transistor Logic (CPL) [Ya90]. Aqui os circuitos são sempreduplicados <strong>para</strong> fornecer o sinal e seu negado.Portas lógicas com transistores <strong>de</strong> passagem são rápidas e simples <strong>para</strong> certas funções mas, quandosão necessários em série vários transistores <strong>de</strong> passagem, elas sofrem drástica redução na velocida<strong>de</strong>.Acrescenta-se a isto que a <strong>de</strong>gradação do nível alto po<strong>de</strong> ser um sério problema <strong>para</strong> circuitos com V DDpequeno, acarretando a diminuição da velocida<strong>de</strong>.Quando ao consumo <strong>de</strong> potência estática, as duas configurações apresentadas na figura não sofremproblemas com isso.Com exceção do transistor P <strong>de</strong> pull-up, as dimensões dos transistores apenas afetam a velocida<strong>de</strong>do circuito (ratioless).


34Implementação <strong>de</strong> Register Transfer Systems (RTS) <strong>de</strong> Alta Velocida<strong>de</strong>V DDabbV SSV DDc=a⊕ baa⊕ bV DDabbV SSV DDcaV SSV DDV SSV DDaV SSaa⊕ ba) b)V SSFigura 6. Portas lógicas estáticas com transistores <strong>de</strong> passagem <strong>para</strong> a função c= a⊕ b: (a), portasimples com transistores N e (b), Complementary Pass-Transistor Logic (CPL).2.2.1.4 Lógica Dinâmica CMOSNa porta lógica dinâmica CMOS está presente apenas a estrutura PUN ou a PDN ([Go84], [We93],[Ra96]). A operação do circuito tem duas fases: uma fase on<strong>de</strong> é feita a pré-carga da saída e outra on<strong>de</strong>é feita a avaliação. A Figura 7(a) mostra um circuito n-dinâmico, on<strong>de</strong> a estrutura PDN, construídacom transistores N, é que está presente. Durante a fase <strong>de</strong> pré-carga, quando o sinal <strong>de</strong> clock é baixo, asaída é levada <strong>para</strong> V DD . Durante a avaliação, quando o sinal <strong>de</strong> clock é alto, <strong>de</strong>pen<strong>de</strong>ndo dos valoresdas entradas, a saída é ou não <strong>de</strong>scarregada via transistores N. Observe que, uma vez <strong>de</strong>scarregado onó <strong>de</strong> saída, não há mais a possibilida<strong>de</strong> <strong>de</strong> carregá-lo durante a mesma fase <strong>de</strong> avaliação. Assim,transições do tipo “1”→”0” na entrada <strong>de</strong>sta porta po<strong>de</strong>m ser causa <strong>de</strong> erros nos valores da saída. Porexemplo, consi<strong>de</strong>re a porta da Figura 7(a) em avaliação e com os seguintes valores nas entradas:a=”1”, b=”1” e c=”1”. Durante a avaliação a saída será <strong>de</strong>scarregada. Pois bem, mesmo ocorrendo ema uma transição “1”→”0”, a saída permanecerá em “0”, que não é o valor esperado.A saída <strong>de</strong> uma porta n-dinâmica apresentará, na avaliação, apenas transições “1”→”0”. Vejatambém que ela po<strong>de</strong>rá, ainda na avaliação, estar <strong>de</strong>sconectada tanto <strong>de</strong> V SS como <strong>de</strong> V DD ,característica dos circuitos dinâmicos.A porta lógica p-dinâmica, Figura 7(c), tem sua pré-carga <strong>para</strong> "0" quando o sinal <strong>de</strong> clock é alto esua avaliação quando o sinal <strong>de</strong> clock é baixo. Nela, po<strong>de</strong>m causar erros as transições do tipo “0”→”1”na entrada. A saída, por sua vez, apresentará apenas transições do tipo “0”→”1” na avaliação.As vantagens das portas dinâmicas são <strong>de</strong>scritas abaixo:


Implementação <strong>de</strong> Register Transfer Systems (RTS) <strong>de</strong> Alta Velocida<strong>de</strong> 35• a carga capacitiva <strong>de</strong> entrada da porta é pequena, aumentando a velocida<strong>de</strong> dos circuitos;• haverá consumo <strong>de</strong> potência na pré-carga, caso o valor pré-carregado anteriormente tenha sidomodificado, mas não haverá na avaliação;• nas portas n-dinâmicas a função lógica é executada por transistores N, tornando o circuito maisrápido.• o funcionamento correto não <strong>de</strong>pen<strong>de</strong> das dimensões dos transistores (ratioless);• o número <strong>de</strong> transistores é reduzido implicando em menores áreas.Durante a fase <strong>de</strong> avaliação, diferentes problemas po<strong>de</strong>m surgir que acabam por reduzir as margens<strong>de</strong> ruído nas portas dinâmicas. Alguns <strong>de</strong>les são:• charge leakage: perda da carga armazenada na saída <strong>de</strong>vido às correntes <strong>de</strong> fuga;• charge sharing: redistribuição da carga armazenada na saída pelos vários nós internos do PDN oudo PUN;• acoplamento capacitivo entre entradas e saída: quando uma das entrada tem seu valor alterado, asaída sofre variações. No caso do acoplamento entre o clock e a saída chamamos <strong>de</strong> clockfeedthrough.É importante dizer que todos estes problemas têm como causa o fato que a saída po<strong>de</strong> ficar, na fase<strong>de</strong> avaliação, em “<strong>alta</strong> impedância” ou seja, <strong>de</strong>sconectada tanto do V DD como do V SS .d=a(b+c)V DDclockV DDclockV DDbaV DDdclockclocksaídaPDN a bentradaPUNd = a( b+ c)PDNentradac d = a+ ( b⋅c)PUNtrans. Nctrans. PclockclockclockdclocksaídaV SSV SSV SSV SSa)b)c)d)Figura 7. Portas lógicas dinâmicas <strong>para</strong> a função d = a( b+ c): (a), representação com transistores daporta n-dinâmica e (b), sua representação simplificada; (c), representação com transistores da portalógica p-dinâmica e (d), sua representação simplificada.O uso <strong>de</strong> portas dinâmicas requer alguns cuidados <strong>para</strong> evitar a <strong>de</strong>struição da carga pré-carregada.Por exemplo, duas portas n-dinâmicas não po<strong>de</strong>m ser ligadas diretamente como feito na Figura 8(a),


36Implementação <strong>de</strong> Register Transfer Systems (RTS) <strong>de</strong> Alta Velocida<strong>de</strong>pois o nó S i , levado <strong>para</strong> V DD durante a pré-carga, po<strong>de</strong>rá, na fase <strong>de</strong> avaliação, <strong>de</strong>scarregarin<strong>de</strong>vidamente a segunda porta dinâmica. O erro aparecerá quando a entrada a da primeira porta n-dinâmica tiver nível alto, causando uma transição “1”→”0” em S i .Apresentamos dois estilos <strong>de</strong> <strong>projeto</strong> <strong>para</strong> associações <strong>de</strong> portas dinâmicas em cascata e que evitamtais problemas. A primeira é a lógica dominó [Kr82]. Ela consiste na colocação <strong>de</strong> inversores entreduas portas dinâmicas (Figura 8(b)). Como “1”→”0” é a única transição possível na saída <strong>de</strong> um n-dinâmico, durante a avaliação, o inversor garante que o sinal na entrada da segunda porta dinâmicanunca tenha transições “1”→”0”, a que causa problemas. Outro estilo possível é o np-CMOS, que fazparte da técnica NORA ([Go83], [Go84]), e consiste no uso alternado <strong>de</strong> uma porta n-dinâmica e outrap-dinâmica (Figura 8(c)). Como a porta n-dinâmica não tem, na fase <strong>de</strong> avaliação, transições “0”→”1”na saída, não haverá a <strong>de</strong>scarga errônea na porta p-dinâmica seguinte; analogamente, como a porta p-dinâmica não tem, na fase <strong>de</strong> avaliação, transições “1”→”0” na saída, não haverá a <strong>de</strong>scarga errôneana porta n-dinâmica seguinte.Para que as duas portas lógicas, a p-dinâmica e a n-dinâmica, façam a avaliação ao mesmo tempo, énecessário o uso do sinal <strong>de</strong> clock e do seu inverso, ou seja, o uso <strong>de</strong> duas fases <strong>para</strong> o sinal <strong>de</strong> clock. ONORA, que veremos mais adiante, é uma técnica que emprega duas fases <strong>de</strong> clock.V DDV DDV DDV DDV DDV DDclockclockclockclockSiaclockV SSa)V SSsaídaentradaclockPDNtrans. NV SSb)PDNtrans. NV SSsaídaentradaclockPDNtrans. NV SSc)clockPUNtrans. PV SSsaídaFigura 8. Ligação <strong>de</strong> portas lógicas dinâmicas; (a), ligação sujeita a <strong>de</strong>scarga in<strong>de</strong>vida, (b), estilo <strong>de</strong><strong>projeto</strong> dominó e (c), estilo <strong>de</strong> <strong>projeto</strong> np-CMOS.Com<strong>para</strong>ções entre a potência consumida pelas portas dinâmicas e a consumida pelas portasestáticas complementar CMOS, indicam vantagens <strong>para</strong> os circuitos dinâmicos [Ma96]. Uma análisemais <strong>de</strong>talhada <strong>de</strong>ve levar em conta, no entanto, a ativida<strong>de</strong> da porta e <strong>de</strong> como suas entradas estãosendo alteradas [Cha95].Os problema com margens <strong>de</strong> ruído são a maior <strong>de</strong>svantagem das portas dinâmicas e exigem ummaior esforço <strong>de</strong> <strong>projeto</strong>.


Implementação <strong>de</strong> Register Transfer Systems (RTS) <strong>de</strong> Alta Velocida<strong>de</strong> 372.2.1.5 Lógica Dinâmica Clocked CMOS (C 2 MOS)As portas/registradores C 2 MOS ([Go84], [We93], [Ra96]) têm, como as portas complementarCMOS, tanto a estrutura PDN como a PUN (Figura 9). Além disso, o circuito apresenta um transistorP entre PUN e a saída, cujo gate está ligado ao clock invertido, e um transistor N entre PDN e a saída,cujo gate está ligado ao clock. Existem duas fases <strong>de</strong> operação no circuito: a fase <strong>de</strong> avaliação, clockno nível alto, on<strong>de</strong> ambos os transistores ligados ao clock conduzem e o circuito opera como uma portacomplementar CMOS; a fase <strong>de</strong> holding, clock no nível baixo, on<strong>de</strong> ambos os transistores ligados aoclock estão cortados e a saída retém a informação avaliada na fase anterior, funcionando como umregistrador. Assim o circuito C 2 MOS tem dupla função, uma como porta lógica e outra comoregistrador latch.Na fase <strong>de</strong> holding a saída do circuito fica em <strong>alta</strong> impedância e, por esta razão, o C 2 MOS temproblemas semelhantes aos que aparecem na porta dinâmica: problemas <strong>de</strong> charge leakage eacoplamento capacitivo entre entradas e saída. Caso os transistores ligados ao clock sejam <strong>de</strong>slocados<strong>para</strong> junto do V DD , transistor P, e do V SS , transistor N, o circuito ficará mais veloz mas também passaráa sofrer <strong>de</strong> problemas <strong>de</strong> charge sharing.As vantagens da porta/registrador C 2 MOS são:• baixo consumo <strong>de</strong> potência;• tem dupla função, operando como porta lógica e como registrador;• o circuito é ratioless.As <strong>de</strong>svantagens, em contrapartida, são:• menor velocida<strong>de</strong>;• maior área;• problemas com margens <strong>de</strong> ruído.Dada a dupla função do circuito, com<strong>para</strong>ções <strong>de</strong> área, velocida<strong>de</strong> e potência são <strong>de</strong> fato um poucoarbitrárias.2.2.2 RegistradoresTambém aqui acompanharemos [Ra96] e classificaremos os circuitos registradores em estáticos edinâmicos. Nos circuitos registradores estáticos o que garante o armazenamento da informação é arealimentação entre entrada e saída (feedback). Nos registradores dinâmicos, a informação ficaarmazenada como carga em capacitores, necessitando ser periodicamente reforçada <strong>de</strong>vido às correntes<strong>para</strong>sitas. Este tipo <strong>de</strong> armazenamento é comum <strong>de</strong>ntro das tecnologias MOS.


Implementação <strong>de</strong> Register Transfer Systems (RTS) <strong>de</strong> Alta Velocida<strong>de</strong> 39quase in<strong>de</strong>finidamente, mesmo quando o clock não é aplicado. Isto possibilita a utilização <strong>de</strong> clockscondicionais <strong>para</strong> diferentes porções do circuito, sendo apenas ativados os sinais <strong>de</strong> clock das porçõesque <strong>de</strong>vem operar. Este recurso po<strong>de</strong> ser aplicado <strong>para</strong> redução do consumo <strong>de</strong> potência, tendo, comocusto, o aumento adicional nas dimensões do circuito.entradaV DDentradaclockQQSQclockclockV SSRV DDflip-flopRSQa)b)Figura 10. Registradores estáticos: (a), latch pseudo-estático com transistores <strong>de</strong> passagem e (b), D-flip-flop com lógica diferencial.2.2.2.2 Registradores DinâmicosO principal atrativo na utilização <strong>de</strong> registradores dinâmicos, que exigem um número menor <strong>de</strong>transistores, é o aumento na <strong>de</strong>nsida<strong>de</strong> dos circuitos. Já apontamos que um circuito C 2 MOS, além <strong>de</strong>fazer operação lógica, po<strong>de</strong> atuar como registrador latch. Este é um exemplo <strong>de</strong> registrador dinâmico enele são necessárias duas fases <strong>de</strong> clock <strong>para</strong> o funcionamento. Outros exemplos são os latches comtransistores <strong>de</strong> passagem da Figura 11. No latch da figura (a) é usado apenas um transistor N comochave, estando sujeito a <strong>de</strong>gradação do nível lógico; <strong>para</strong> evitar este problema po<strong>de</strong>-se usar doistransistores em <strong>para</strong>lelo, um P e outro N, como na figura (b). Latches dinâmicos com dois transistores<strong>de</strong> passagem foram empregados no microprocessador Alpha 21164 [Gr98]. Ambas as configuraçõesnecessitam <strong>de</strong> apenas uma fase <strong>de</strong> clock.Por fim, como último exemplo <strong>de</strong> registrador, mostraremos certos circuitos propostos por [Yu89]<strong>para</strong> a técnica TSPC. Mais tar<strong>de</strong> daremos mais exemplos <strong>de</strong> latches aplicados nesta técnica. O latch daFigura 12(a) é transparente <strong>para</strong> a entrada quando o clock é alto e armazena a saída quando ele é baixo.O outro latch, Figura 12(b), tem a operação inversa.


40Implementação <strong>de</strong> Register Transfer Systems (RTS) <strong>de</strong> Alta Velocida<strong>de</strong>clockentradaQentradaQV SSclocka) b)Figura 11. Registrador latch dinâmico com transistor <strong>de</strong> passagem: (a), porta <strong>de</strong> passagem com umtransistor N e (b), com transistores N e P.V DDV DDclockQclockQentradaentradaV SSa)V SSb)Figura 12. Latches dinâmicos TSPC: (a), armazena o dado quando o clock é baixo e (b), armazena odado quando o clock é alto.2.2.3 Políticas <strong>de</strong> clockVárias políticas <strong>de</strong> clock foram propostas ao longo do tempo. Políticas com múltiplas fasespermitem uma utilização do tempo mais eficiente, resultando em <strong>de</strong>sempenho melhor [Ra96]. Oproblema surge com a distribuição <strong>de</strong>stas múltiplas fases, normalmente com restrições quanto asobreposição <strong>de</strong>las. A tendência em circuitos <strong>de</strong> <strong>alta</strong> velocida<strong>de</strong> CMOS V<strong>LSI</strong> é a utilização <strong>de</strong> umúnico clock ([We93], [Ra96]), simplificando a tarefa da distribuição <strong>de</strong>ste.Mostraremos aqui duas estratégias <strong>de</strong> clock indicadas <strong>para</strong> circuitos <strong>de</strong> alto <strong>de</strong>sempenho; o NORA eo TSPC.2.2.3.1 Estratégia com duas fases <strong>de</strong> clock NORAA técnica NORA, No-Race CMOS Technique ([Go83], [Go84]), permite a utilização <strong>de</strong> portaslógicas estáticas complementar CMOS, portas dinâmicas e portas C 2 MOS. Para registrador éempregado apenas o C 2 MOS. São usadas duas fases complementares <strong>de</strong> clock no NORA, φ 1 e φ 2 .Devido a isto são possíveis 4 diferentes configurações <strong>de</strong> portas lógicas dinâmicas: duas configurações<strong>de</strong> portas n-dinâmicas, uma controlada pela fase φ 1 e outra pela φ 2 ; duas configurações <strong>de</strong> portas p-dinâmicas, analogamente. Também são disponíveis duas configurações diferentes <strong>para</strong> os latchesC 2 MOS. Regras <strong>de</strong> composição <strong>para</strong> as portas e registradores completam a estratégia. Elas foram


Implementação <strong>de</strong> Register Transfer Systems (RTS) <strong>de</strong> Alta Velocida<strong>de</strong> 41criadas <strong>para</strong> evitar os problemas <strong>de</strong> race: os <strong>de</strong>lay race errors e os clock skew race errors. O <strong>de</strong>lay dossinais que chegam aos blocos dinâmicos po<strong>de</strong> causar a perda do valor pré-carregado na sua saída e, emconseqüência, a incorreta avaliação do bloco. Este é o chamado <strong>de</strong>lay race error. O clock skew entre asduas fases do clock <strong>de</strong> um circuito NORA po<strong>de</strong>, por sua vez, causar avaliação incorreta tanto emcircuitos dinâmicos como em C 2 MOS latches, o chamado clock skew race error.O estilo np-CMOS é usado aqui. Uma vez obe<strong>de</strong>cidas às regras <strong>de</strong> composição, o circuito projetadotolerará sobreposição das fases, po<strong>de</strong>ndo ser, <strong>de</strong>ssa forma, empregadoφ 1= clock e φ 2= clock . Por estarazão, muitas vezes, o NORA é dito ser uma estratégia <strong>de</strong> uma única fase <strong>de</strong> clock [We93].As regras do NORA são aplicadas sobre os chamados data chains, φ 1 -data chains e φ 2 -data chains.Um φ 1 -data chain é um caminho <strong>de</strong> propagação <strong>de</strong> dados, signal propagation path, on<strong>de</strong>, durante afase φ 1=" 1", todas as portas e registradores estão em avaliação e, durante a fase φ 1=" 0", todas asportas e registradores estão em pré-carga ou em holding. Um φ 2 -data chain faz avaliação durante afase φ 2=" 1" e pré-carga/holding quando φ 2=" 0" . A Figura 13 apresenta um exemplo <strong>de</strong> circuitoNORA com data chains assinalados, um φ 1 -data chain e um φ 2 -data chain.φ 1 -data chainV DDV DDV DDV DDV DDentradaφ 1PDNtrans. NPUNtrans. Pφ 2φ 1φ 1 φ 2φ 2saídaφ 2φ 1PDNtrans. Nφ 2φ 2V SSV SSV SSV SSV SSφ 2 -data chainFigura 13. Exemplo <strong>de</strong> circuito NORA.A técnica NORA permite melhora na velocida<strong>de</strong>, menores áreas e consumo <strong>de</strong> potência além <strong>de</strong>evitar disputa <strong>de</strong> sinais. Em contrapartida, a utilização <strong>de</strong> elementos dinâmicos, portas lógicas eregistradores, traz problemas <strong>de</strong> charge sharing, charge leakage, acoplamento capacitivo esensibilida<strong>de</strong> ao ruído. Isto dificulta o <strong>projeto</strong>, <strong>de</strong>vendo a técnica ser aplicada somente quando máximaperformance é procurada.


42Implementação <strong>de</strong> Register Transfer Systems (RTS) <strong>de</strong> Alta Velocida<strong>de</strong>2.2.3.2 Estratégia com uma fase <strong>de</strong> clock TSPCO True Single Phase Clock, TSPC, é uma estratégia que utiliza <strong>de</strong> fato um único clock. Um dosprimeiros trabalhos sobre o TSPC é [Yu87]. Mais tar<strong>de</strong>, novos aspectos foram abordados eaprofundados em [Yu89] e [Af90]. Em [La95], por fim, um enfoque mais geral foi <strong>de</strong>senvolvido.Apresentaremos aqui, com um pouco <strong>de</strong> <strong>de</strong>talhes, o TSPC como elaborado em [La95].2.2.3.2.1 Portas Lógicas e RegistradoresAs portas lógicas que po<strong>de</strong>m ser usadas no TSPC são as portas estáticas complementar CMOS,dinâmicas e portas data precharged (Figura 15), que serão vistas mais adiante. São introduzidostambém novos tipos <strong>de</strong> circuitos que po<strong>de</strong>m executar operações lógicas e ajudam como registrador;não são, no entanto, registradores completos. Chamaremos estes circuitos <strong>de</strong> n-latch e p-latch (Figura14). Ambos circuitos apresentam as estruturas PUN e PDN e são ratioless. A diferença entre eles estáno tipo <strong>de</strong> transistor cujo gate está ligado ao clock. Para o n-latch é um transistor N e durante a faseclock=”1” sua saída será função lógica dos sinais <strong>de</strong> entrada; diremos que está na avaliação. Quando oclock é baixo, por outro lado, apenas transições “1”→”0” na entrada po<strong>de</strong>rão alterar a saída; diremosque o circuito está em holding. Observemos que o nome holding é aqui empregado apenas poranalogia pois a saída do n-latch não retém necessariamente seu valor durante esta fase.O p-latch tem a fase <strong>de</strong> avaliação quando clock=”0” e holding quando clock=”1”, ao contrário do n-latch. No holding <strong>de</strong>stes circuitos, as transições “0”→”1” é que po<strong>de</strong>rão afetar a saída.d= abd = abV DDV DDbaclock<strong>de</strong>ntradaclockV DDPUNtrans. PPDNtrans. Nsaídaclockba<strong>de</strong>ntradaV DDclockPUNtrans. PsaídaPDNtrans. NV SSV SSV SSV SSa) b) c) d)Figura 14. Circuitos n-latch e p-latch: (a), representação com transistores e (b), representaçãosimplificada do n-latch; (c), representação com transistores e (d), representação simplificada do p-latch.


Implementação <strong>de</strong> Register Transfer Systems (RTS) <strong>de</strong> Alta Velocida<strong>de</strong> 43A posição indicada na Figura 14 <strong>para</strong> os transistores ligados ao clock, próximo ao V SS no n-latch eao V DD no p-latch, segue a sugestão <strong>de</strong> [Hu93]. Esta configuração apresenta vantagens em termos <strong>de</strong>velocida<strong>de</strong> do circuito mas sofre maiores problemas <strong>de</strong> charge sharing. A colocação <strong>de</strong>stes transistoresmais próximo da saída do circuito é uma opção que reduz o charge sharing, não obstante afeta avelocida<strong>de</strong>.As portas data pre-charged, Dp, são pouco conhecidas e utilizadas. Daremos, em vista disso, alguns<strong>de</strong>talhes sobre a sua construção. Tais portas são apresentadas em [Yu93] e elas dão maior flexibilida<strong>de</strong>à técnica TSPC. A idéia aqui é obter uma porta que é um misto entre a estática complementar e adinâmica; neste caso a pré-carga não é executada pelo sinal <strong>de</strong> clock mas sim por alguns dos sinais <strong>de</strong>entrada da própria porta. Aqueles sinais <strong>de</strong> entrada responsáveis pela pré-carga serão por nóschamados <strong>de</strong> pc-entradas (pre-charging entradas). Po<strong>de</strong>mos ainda dividir as portas Dps em duasclasses: uma formada pelas portas em que a pré-carga é feita quando as pc-entradas estão no nível alto,portas PH (pre-charged in high), e outra formada pelas portas em que a pré-carga é feita quando as pcentradasestão no nível baixo, portas PL (pre-charged in low).A Figura 15 exemplifica a formação <strong>de</strong> portas PH e PL <strong>para</strong> a função lógica d = a(b+ c) . Elas sãoformadas a partir <strong>de</strong> uma porta estática complementar (Figura 15(a)) que executa a mesma funçãológica. Tratemos com <strong>de</strong>talhes a porta PH. Nela a estrutura implementada pelos transistores P é igual aaquela da porta estática; apenas a estrutura com os transistores N é modificada. Na pré-carga da portaPH sua saída <strong>de</strong>ver ir <strong>para</strong> o nível lógico baixo o que é conseguido forçando-se todas as entradasligadas aos transistores N <strong>para</strong> o nível alto. Durante a avaliação, tem-se que os transistores P, damesma forma que na porta estática, fazem a avaliação lógica das entradas, ligando ou não a saída docircuito a V DD . Pois bem, no caso da saída ter valor alto, não <strong>de</strong>verá surgir nenhuma ligação entre estae V SS . Assim, a função da estrutura implementada com transistores N é <strong>de</strong>scarregar a saída na pré-cargae evitar o aparecimento <strong>de</strong> um curto entre V DD e V SS na avaliação. Essa estrutura N não executa,necessariamente, uma função lógica igual a da porta. Pare obter a nova configuração dos transistoresN, po<strong>de</strong>mos partir daquela encontrada na porta estática e, <strong>para</strong> cada conjunto <strong>de</strong> k ramos em <strong>para</strong>lelo aíencontrados, cortarmos k-1 <strong>de</strong>les. O processo está exemplificado na Figura 15. É livre a escolha <strong>de</strong>quais ramos são cortados, possibilitando o surgimento <strong>de</strong> diferentes circuitos, como é visto na figura.Para as portas PL, será modificada, em contraposição, a estrutura formada pelos transistores P. Oraciocínio é, no entanto, análogo.Observemos que as pc-entradas <strong>de</strong> uma porta PH são todas aquelas ligadas a transistores N; as pcentradas<strong>de</strong> uma porta PL são todas aquelas ligadas a transistores P. A Figura 15 indica também as pcentradasem cada configuração.


44Implementação <strong>de</strong> Register Transfer Systems (RTS) <strong>de</strong> Alta Velocida<strong>de</strong>Para o funcionamento <strong>de</strong>stas portas <strong>de</strong>vemos garantir que as pc-entradas tenham valores corretosdurante a pré-carga. Isto é feito através do emprego <strong>de</strong> outros circuitos convenientemente associadosas portas Dps.Chamaremos <strong>de</strong> blocos n-Dps aos blocos PH ou PL que fazem a pré-carga quando clock=”0”, aomenos no fim <strong>de</strong>ssa fase, e <strong>de</strong> blocos p-Dps aos blocos PH ou PL que fazem a pré-carga quandoclock=”1” (ao menos no fim <strong>de</strong>ssa fase).abaV DDV DD bV DDabacdOUd=a(b+c)a)dcbcbaaaV SSV DDpc-entrada: a, bnão-pc-entrada: cdcb)OUpc-entrada: anão-pc-entrada: b, cc)V SSbaaV SSV DDV SSbcdbccpc-entrada: a, cnão-pc-entrada: bdcpc-entrada: b, cnão-pc-entrada: aFigura 15. Transformação <strong>de</strong> uma porta estática complementar CMOS (a) em portas data prechargedDp: (b), portas PH e (c), portas PL.Para simplificação, tanto aqui como quando estivermos falando do E-TSPC, chamaremosgenericamente <strong>de</strong> blocos tanto as portas lógicas usadas na técnica como os latches. No texto essesblocos serão <strong>de</strong>signados pela letra B e, quando necessário, mais um índice será acrescido; os índicespo<strong>de</strong>rão conter indicações do tipo <strong>de</strong> bloco (St <strong>para</strong> estático, Nd <strong>para</strong> n-dinâmico, Pd <strong>para</strong> p-dinâmico,Dp <strong>para</strong> data precharged, NL ou PL <strong>para</strong> os latches, etc.), números e letras. Exemplos <strong>de</strong> nomes <strong>de</strong>blocos são: B ST1 , B HDpA e B F .2.2.3.2.2 Regras <strong>de</strong> ComposiçãoAs ligações permitidas no TSPC, <strong>de</strong> acordo com [La95], estão sumariadas no diagrama da Figura16. Observemos que os latches apontados na Figura 12, apesar <strong>de</strong> não po<strong>de</strong>rem ser construídos com osblocos consi<strong>de</strong>rados acima, também fazem parte da técnica TSPC. A introdução <strong>de</strong>les no circuito, umavez que são latches verda<strong>de</strong>iros com uma fase <strong>de</strong> holding que retém a informação, é uma tarefasimples.


Implementação <strong>de</strong> Register Transfer Systems (RTS) <strong>de</strong> Alta Velocida<strong>de</strong> 45O diagrama fornece adicionalmente informações sobre problemas que po<strong>de</strong>m ocorrer <strong>de</strong>vido aosatrasos diferenciados nos sinais <strong>de</strong> clock que chegam a blocos interligados, clock skew. Para enten<strong>de</strong>reste ponto consi<strong>de</strong>re uma porta n-dinâmica com saída ligada a um n-latch. Se o sinal <strong>de</strong> clock chegarantes no bloco que no n-latch, <strong>de</strong>vido aos atrasos diferenciados no circuito <strong>de</strong> distribuição <strong>de</strong> clock,teremos que o bloco dinâmico estará em pré-carga e o n-latch em avaliação. Isto po<strong>de</strong>rá causar erros.Atrasos diferenciados no clock aparecem <strong>de</strong>vido às dissimetrias no seu circuito <strong>de</strong> distribuição e sãoinevitáveis. O melhor que po<strong>de</strong> ser feito é o controle do valor dos atrasos por meio <strong>de</strong> um <strong>projeto</strong>cuidadoso <strong>de</strong> buffers ([Do92], [Gr98]).PLN-latch *PH#◊#N-dinâm.N-latchP-latchP-dinâm.#◊#PLP-latch *PHFigura 16. Gráfico <strong>de</strong> conexões <strong>para</strong> o TSPC <strong>de</strong> acordo com [La95]. As portas e circuitos sãorepresentados pelos quadrados. O fluxo <strong>de</strong> dados permitido é indicado pelo sentido das setas. # indicaligações on<strong>de</strong> atrasos diferenciados do clock nos blocos não causam problemas (skew safecommunication); * indica pontos <strong>de</strong> latch <strong>de</strong>pois dos quais portas estáticas complementar CMOSpo<strong>de</strong>m ser inseridas; ◊ indica ligações on<strong>de</strong> há problemas potenciais <strong>de</strong> violação <strong>de</strong> holding time.Outra questão assinalada são as configurações on<strong>de</strong> há o perigo <strong>de</strong> violação <strong>de</strong> hold time. O casomais comum <strong>de</strong> possível violação surge no D-flip-flop clássico do TSPC, apresentado na Figura 17.Para examinar tal violação consi<strong>de</strong>remos um estado inicial on<strong>de</strong> clock=entrada=saída_a=”0”. Nesteinstante os blocos B L1 e B L4 estão avaliando. No fim da fase <strong>de</strong> avaliação ambas as saídas, a 1 e b 1 ,estão no nível alto. Na seqüência, quando o clock muda <strong>para</strong> nível alto, os outros blocos irão <strong>para</strong> aavaliação. Suponha que a 1 funcione propriamente e retenha o valor alto. Neste caso, o nó a 2 vai <strong>para</strong>baixo, a saída_a, <strong>para</strong> alto e b 1 vai <strong>para</strong> nível baixo. Em conseqüência o transistor N 1 é cortado e ovalor na saída do bloco B L5 , b 2 , <strong>de</strong>pen<strong>de</strong>rá do holding time <strong>de</strong>ste bloco. Assim, caso a mudança em b 1


46Implementação <strong>de</strong> Register Transfer Systems (RTS) <strong>de</strong> Alta Velocida<strong>de</strong>seja rápida <strong>de</strong>mais, a saída <strong>de</strong> B L5 ficará com nível alto e teremos um erro na operação. No casocontrário, o que normalmente se dá, o bloco e o D-flip-flop funcionarão corretamente.Outra configuração permitida pelas regras acima mas também com possibilida<strong>de</strong>s <strong>de</strong> violação <strong>de</strong>holding time está na Figura 18 [Yu93]. No exemplo a porta p-dinâmica B L2 po<strong>de</strong>rá ter problemas coma entrada a 1 caso, após a mudança do clock do nível alto <strong>para</strong> o baixo, a 1 tenha seu valor alteradomuito rapidamente. Esta possibilida<strong>de</strong> <strong>de</strong> violação do holding time não foi apontada no diagrama <strong>de</strong>conexões <strong>de</strong> [La95] (Figura 16).D-flip-flopD-flip-flopclockclockclockclocksaída_ab 2saída_ba 1entradaB L1clocka 2b 1clockB L3N 1B L2clockB L4N 2B L5clockB L5Figura 17. Ligação <strong>de</strong> dois D-flip-flops TSPC.V DDV DDclockentradaclockPDNtrans. NBlocoPHBlocoPLclockPUNtrans. PBlocoPLV SSV SSB L1a 1B L2Figura 18. Circuito com possibilida<strong>de</strong> <strong>de</strong> violação <strong>de</strong> holding time usando blocos data precharged.2.2.3.2.3 Conclusões sobre o TSPCA técnica TSPC permite, como o NORA, melhora na velocida<strong>de</strong>, menores áreas e consumo <strong>de</strong>potência. Adicionalmente, por ter apenas um sinal <strong>de</strong> clock, torna a tarefa da distribuição do relógiomais simples. As <strong>de</strong>svantagens são semelhantes àquelas do NORA e pelos mesmos motivos: autilização <strong>de</strong> circuitos dinâmicos que traz consigo problemas <strong>de</strong> charge leakage, charge sharing,acoplamento capacitivo e sensibilida<strong>de</strong> ao ruído.


Implementação <strong>de</strong> Register Transfer Systems (RTS) <strong>de</strong> Alta Velocida<strong>de</strong> 47Uma outra dificulda<strong>de</strong> é normalmente apontada em circuitos TSPC ([Do92], [Ra96]): caso ostempos <strong>de</strong> subida e <strong>de</strong>scida do sinal <strong>de</strong> clock sejam gran<strong>de</strong>s, po<strong>de</strong>rá haver ocasiões quando todos ostransistores ligados ao clock, tanto os transistores P como os N, conduzirão; a conseqüência será o raceno circuito.O estudo <strong>de</strong>ste problema feito por [La94] mostra que as condições <strong>para</strong> evitar este race são simples<strong>de</strong> serem implementadas (o fan out do buffer <strong>de</strong> clock <strong>de</strong>ve ser inferior a 10). Também em [Do92] taldificulda<strong>de</strong> é analisada e tida como facilmente superável.2.3 Estratégia E-TSPCEsta seção é <strong>de</strong>dicada a <strong>de</strong>scrição da estratégia E-TSPC. Serão apresentados os blocos nelapermitidos, as regras <strong>de</strong> composição, a função <strong>de</strong>stas e a prova do funcionamento correto dos circuitos.Uma apresentação simplificada do E-TSPC, principalmente no que diz respeito aos teoremas e suas<strong>de</strong>monstrações, é apresentada em [Na97c]. O trabalho <strong>de</strong>senvolvido nesta seção é mais longo erigoroso. [Na97c] po<strong>de</strong>rá servir, então, como uma introdução <strong>para</strong> o estudo <strong>de</strong>sta seção.2.3.1 Blocos da E-TSPCOs blocos que são usados na técnica E-TSPC são:i. portas lógicas estáticas complementar CMOS (chamada <strong>de</strong> estática simplesmente) (Figura 4);ii. portas lógicas CMOS dinâmicas, tanto n-dinâmicas como p-dinâmicas (Figura 7);iii. blocos latches, tanto n-latches como p-latches (Figura 14);iv. portas data pre-charged CMOS n-Dp ou p-Dp, tanto PH como PL (Figura 15).Cada um dos blocos usados tem uma única saída e um número finito <strong>de</strong> entradas.O conjunto das entradas <strong>de</strong> um bloco B Q qualquer será <strong>de</strong>notado por I(B Q ), não sendo consi<strong>de</strong>radoo clock como entrada. A saída <strong>de</strong>ste bloco será <strong>de</strong>notada por O BQ . Serão usadas letras minúsculashandwriting, mais um índice quando necessário, <strong>para</strong> <strong>de</strong>notar uma entrada ou a saída <strong>de</strong> um bloco, porexemplo: a, k 0.2.3.2 Regras <strong>de</strong> composiçãoNesta seção serão apresentadas as regras <strong>de</strong> composição e sua finalida<strong>de</strong>.2.3.2.1 DefiniçõesEstabeleceremos preliminarmente algumas <strong>de</strong>finições, tanto <strong>de</strong> nomenclatura como <strong>de</strong> simbologia.Apesar <strong>de</strong> monótona, tanto <strong>para</strong> quem escreve como <strong>para</strong> quem lê, a tarefa não po<strong>de</strong> <strong>de</strong>ixar <strong>de</strong> ser feitasob o risco <strong>de</strong> causar dificulda<strong>de</strong>s na compreensão do texto.


48Implementação <strong>de</strong> Register Transfer Systems (RTS) <strong>de</strong> Alta Velocida<strong>de</strong>Definição 1: Ligação elétrica é um meio físico qualquer que une eletricamente dois pontos quepo<strong>de</strong>m ser: entradas <strong>de</strong> blocos, saídas <strong>de</strong> blocos.Uma ligação entre i 1e O BSt1 será <strong>de</strong>notada por (i 1, O BSt1 ).Para os blocos consi<strong>de</strong>rados aqui, a saber, portas estáticas complementar CMOS, dinâmicos, Dps elatches, certas ligações não <strong>de</strong>vem ser permitidas. Por exemplo, dois blocos quaisquer não po<strong>de</strong>m tersuas saídas ligadas uma a outra. Em vista disto vamos <strong>de</strong>finir o que enten<strong>de</strong>mos por circuito.Definição 2: Um circuito E-TSPC é um conjunto finito <strong>de</strong> blocos (complementar CMOS, n ou pdinâmicos, n ou p “latches”, ou CMOS Dps) e um conjunto ligações entre eles. Estas são sempreentre uma entrada e uma saída <strong>de</strong> bloco. As entradas <strong>de</strong> “clock” <strong>de</strong> todos os blocos são ligadasentre si e genericamente chamadas <strong>de</strong> “clock” do circuito. As entradas <strong>de</strong> blocos são chamadas <strong>de</strong>entradas do circuito quando não participam <strong>de</strong> nenhuma ligação; <strong>de</strong>ntre estas algumas são<strong>de</strong>finidas como entradas externas do circuito. Algumas das saídas <strong>de</strong> blocos são <strong>de</strong>finidas comosaídas externas do circuito.Usaremos a letra C e mais um índice, se necessário, <strong>para</strong> nomear os circuitos E-TSPC. Indicaremospor B(C E ) o conjunto dos blocos que compõem C E , por L(C E ) o conjunto das ligações do circuito, porI(C E ) o conjunto das entradas externas e por O(C E ) o conjunto das saídas externas. Um sinal aplicadoa uma entrada externa é chamado <strong>de</strong> sinal externo. Se a entrada ou saída i 1do bloco B Q faz parte <strong>de</strong>alguma ligação do circuito C E , ou do seu conjunto <strong>de</strong> entradas externas ou do seu conjunto <strong>de</strong> saídasexternas, então diremos que C E passa por i 1; também diremos, neste caso, que i 1é um ponto docircuito e que B Q pertence ao circuito. Por simplicida<strong>de</strong> vamos admitir que os pontos do circuitopo<strong>de</strong>m estar apenas ou no nível lógico baixo ou no nível lógico alto. Notemos que quando (a, b) ∈L(C E ), os pontos a e b têm o mesmo comportamento. Quando o clock do circuito está com nívellógico zero, diremos que o circuito está na fase φ=”0”; quando o clock está com nível lógico um,diremos que está na fase φ=”1”.Para representar as ligações <strong>de</strong> um circuito po<strong>de</strong>mos usar alternativamente o conjunto <strong>de</strong> paresor<strong>de</strong>nados L O(C E ) <strong>de</strong>finido abaixo.Definição 3: Seja o circuito E-TSPC C E . O conjunto <strong>de</strong> pares or<strong>de</strong>nados L O(C E ) é <strong>de</strong>finido como:(a, b) ∈ L O(C E ) ⇔ ((a, b) ou (b, a) é uma ligação <strong>de</strong> C E e a é entrada <strong>de</strong> bloco).Por sua vez b é a saída <strong>de</strong> algum bloco <strong>de</strong> C E .


Implementação <strong>de</strong> Register Transfer Systems (RTS) <strong>de</strong> Alta Velocida<strong>de</strong> 49Se C E é um circuito, po<strong>de</strong>remos escrever as três proprieda<strong>de</strong>s abaixo:• B A ∈ B(C E ) ⇒ B A é (bloco estático, ou bloco dinâmico, ou bloco Dp ou latch);• (a, b) ∈ L(C E ) ⇒ (∃B A e B C ∈ B(C E )) t.q. (((a ∈ I(B A )) ∧ (b = O BC )) ∨ ((b ∈ I(B A )) ∧ (a =O BC ))).• i ∈ I(C E ) ⇒ (∃B A ∈ B(C E ) t.q. (i∈I(B A ))) ∧ (∀(a, b) ∈ L O(C E ), (a≠i)).Vamos precisar usar o conceito <strong>de</strong> subcircuito mais adiante. Damos a <strong>de</strong>finição abaixo.Definição 4: O circuito E-TSPC C S é um subcircuito <strong>de</strong> C E se:i. B(C S ) ⊆ B(C E );ii. L(C S ) ⊆ L(C E );iii. <strong>para</strong> todo i ∈ I(C S ) ⇒ ((i ∈ I(C E )) ∨ (∃(a, b ) ∈ L O(C E ) t.q. (a =i )));iv. <strong>para</strong> todo o ∈ O(C S ) ⇒ ((i ∈ O(C E )) ∨ (∃(a , b ) ∈ L O(C E ) t.q. (b =o ))).Sendo C S um subcircuito <strong>de</strong> C E , indicaremos por C S ⊆C E . A <strong>de</strong>finição abaixo trata da acessibilida<strong>de</strong><strong>de</strong> um bloco a outro.Definição 5: Sejam B i e B j dois blocos <strong>de</strong> um circuito C E . Diremos que B j é acessível a partir <strong>de</strong> B ise existe uma seqüência <strong>de</strong> blocos B 1 , B 2 , ...,B s , tal queB 1 =B i , B S =B je existe (O Bi, t ) ∈ L O(C E ) t.q. t ∈ I(B i+1 ) <strong>para</strong> todo i=1, 2,, ..., s-1.Vamos <strong>de</strong>finir agora o que é um caminho <strong>de</strong> propagação <strong>de</strong> dados. Procuramos colocar nessa<strong>de</strong>finição exatamente aquilo que temos na intuição sobre tal conceito.Definição 6: Um “signal propagation path”, spp, <strong>de</strong> C E é um subcircuito C spp , com uma únicaentrada e uma única saída, o qual obe<strong>de</strong>ce às condições:i. contém ao menos um bloco B E a partir do qual todos os blocos do circuito C spp são acessíveis;ii. contém um bloco B O que é acessível a partir <strong>de</strong> qualquer bloco do circuito C spp ;iii. a saída <strong>de</strong> todo bloco <strong>de</strong> B(C spp ), exceção do bloco B 0 , está ligada a apenas um bloco <strong>de</strong> C spp ; asaída <strong>de</strong> B O po<strong>de</strong> estar ligada ou não a um bloco;iv. uma das entradas <strong>de</strong> B E é a única entrada <strong>de</strong> C spp ;v. a saída do bloco B O é a única saída do C spp .


50Implementação <strong>de</strong> Register Transfer Systems (RTS) <strong>de</strong> Alta Velocida<strong>de</strong>Os spps serão nomeados com a letra S mais um índice, quando necessário.Seja o spp S i . Este é também um circuito, logo po<strong>de</strong>mos falar dos conjuntos B(S i ), L(S i ), L O(S i ),I(S i ), ou simplesmente I Si , e O(S i ) ou O Si . Ainda são aplicáveis aqui os conceitos <strong>de</strong> S i passando por ie <strong>de</strong> ponto <strong>de</strong> S i . Se um bloco pertence ao spp diremos que este passa por aquele. As <strong>de</strong>finições <strong>de</strong>subcircuitos e <strong>de</strong> acessibilida<strong>de</strong> <strong>de</strong> blocos po<strong>de</strong>m ser estendidos aos spps (<strong>de</strong>finições 4 e 5).Definição 7: Diremos que um bloco B A antece<strong>de</strong> um bloco B B no spp se:i. ambos os blocos pertencem ao mesmo spp;ii. o bloco B B é acessível a partir do bloco B A .Diremos também que um bloco é o último <strong>de</strong> um spp se todos os outros antece<strong>de</strong>m a ele; será oprimeiro caso anteceda todos os outros.Definição 8: Diremos que o spp é não cíclico quando nenhum bloco do spp é atingível a partir <strong>de</strong> simesmo.Apresentaremos a <strong>de</strong>finição <strong>de</strong> data chain que é fundamental <strong>para</strong> a compreensão das regras <strong>de</strong>composição. Um n-data chain é um spp on<strong>de</strong>, durante a fase φ=”1”, todos os blocos estão emavaliação e, durante a fase φ=”0”, parte do seus blocos está em holding (os latches) e parte em précarga(os blocos dinâmicos e Dps). O p-data chain tem os blocos em avaliação na fase contrária ao n-data chain.Definição 9: Um n-data chain do circuito C E é um spp não cíclico S NC que obe<strong>de</strong>ce às seguintescondições:i. contém ao menos um n-latch, um n-dinâmico ou um bloco n-Dp;ii. a entrada do S NC <strong>de</strong>ve estar ligada a uma entrada externa <strong>de</strong> C E ou a saída <strong>de</strong> algum bloco p-latch, p-dinâmico ou p-Dp;iii. contém apenas blocos estáticos, n-dinâmicos, n-Dps e n-latches;iv. a saída do S NC <strong>de</strong>verá estar ligada a entrada <strong>de</strong> algum bloco p-latch, p-dinâmico ou p-Dp ou anenhum outro bloco <strong>de</strong> C E .Notemos que os blocos estáticos no início <strong>de</strong> um data chain po<strong>de</strong>m pertencer também ao data chainanterior, sendo este e aquele <strong>de</strong> tipos diferentes. A <strong>de</strong>finição <strong>de</strong>sta forma não causa maiores problemase simplifica a apresentação <strong>de</strong> algum teoremas.


Implementação <strong>de</strong> Register Transfer Systems (RTS) <strong>de</strong> Alta Velocida<strong>de</strong> 51Definição 10: Um p-data chain do circuito C E é um spp S PC que obe<strong>de</strong>ce à condições equivalentes à(i), (ii), (iii) e (iv) da Definição 9. Neste caso substituem-se "n" por "p" e "p" por "n" em todas as<strong>de</strong>nominações <strong>de</strong> blocos que aparecem.Usaremos a letra D e mais um índice, quando necessário, <strong>para</strong> nomear os data chains. Normalmentese o índice inicia com N, teremos um n-data chain, por exemplo D N1 ; quando inicia com P, teremosentão um p-data chain.Tudo quanto foi dito <strong>para</strong> os spps, sobre conjunto <strong>de</strong> blocos, conjunto <strong>de</strong> pares or<strong>de</strong>nados, etc.,também vale <strong>para</strong> data chains, visto que data chains são um tipo especial <strong>de</strong> spp.Definição 11: Diremos que um n-data chain está na fase <strong>de</strong> “holding” quando o “clock” tem valor“0” (φ=”0”). Quando o “clock” tem valor “1” (φ=”1”), é dito que o n-data chain está naavaliação. Para o p-data chain, o “holding” acontece quando φ=”1” e a avaliação, quando φ=”0”.Veja que o estado <strong>de</strong> operação <strong>de</strong> um bloco Dp não <strong>de</strong>pen<strong>de</strong> diretamente do clock e, a princípio,nada garante que estes blocos façam a pré-carga no momento certo. Isto <strong>de</strong>pen<strong>de</strong>rá sim dos blocos queestão ligados a ele.A Figura 19 fornece alguns exemplos <strong>de</strong> data chains. Com entrada no nó i aexistem dois n-datachains: um passando pelos blocos B A , B C , B E , B G , B J e B M , sendo a saída <strong>de</strong>ste último a saída do datachain; outro passando pelos blocos B A , B C , B E , B K , e B H , sendo a saída <strong>de</strong>ste último a saída do datachain. Com entrada no nó i haparece um p-data chain passando pelos blocos B H , B F e B D , sendo asaída <strong>de</strong>ste último bloco a saída do data chain.


52Implementação <strong>de</strong> Register Transfer Systems (RTS) <strong>de</strong> Alta Velocida<strong>de</strong>clockB D B KclockB Bi ii c2 PDNtrans. NclockB E B I clockB A PUNB LPUNtrans. Pclocktrans. N B G BPDNB JCi trans. NPDNaclocktrans. NPDNtrans. PclockPUNtrans. Pclock B Mi c1clockB FPDNtrans. NB Hi hclockFigura 19. Circuito E-TSPC com exemplos <strong>de</strong> data chains.2.3.2.2 Descrição das RegrasOs blocos utilizados no E-TSPC exigem uma série <strong>de</strong> cuidados <strong>para</strong> o correto funcionamento.Abaixo <strong>de</strong>screveremos tais cuidados:• as entradas dos blocos n-dinâmicos e dos blocos PL não <strong>de</strong>vem nunca sofrer transições “1”→”0”durante sua avaliação. Observe que, se uma das entradas <strong>de</strong> um <strong>de</strong>stes blocos tiver valor “1”durante a avaliação, po<strong>de</strong>rá haver a <strong>de</strong>scarga da saída. Neste caso, se esta entrada muda <strong>para</strong> “0”,ainda na mesma avaliação, não po<strong>de</strong>remos garantir que a saída volte <strong>para</strong> “1”, se for necessário.Para exemplificar um funcionamento faltoso consi<strong>de</strong>re na Figura 15(c) o circuito PL mais aesquerda. Inicialmente sejam os seguintes valores <strong>para</strong> as entradas: a=”1”, b=”0” e c=”1” (a portaem avaliação); então a saída terá valor d=”0”. Havendo uma transição “1”→”0” em c, a saídapermanecerá em “0”, que não é o valor <strong>de</strong>sejado. Na seção 2.2.1.4 foi discutido o mesmoproblema <strong>para</strong> as portas dinâmicas;• as entradas dos blocos p-dinâmicos e dos blocos PH não <strong>de</strong>vem nunca sofrer transições “0”→”1”durante sua avaliação. As razões são similares as apresentadas acima;• as pc-entradas dos blocos PH <strong>de</strong>vem ir <strong>para</strong> “1” durante a fase <strong>de</strong> pré-carga; as pc-entradas dosblocos PL <strong>de</strong>vem ir <strong>para</strong> “0” durante a fase <strong>de</strong> pré-carga. Como vimos na <strong>de</strong>scrição dofuncionamento dos blocos Dps, isto é necessário <strong>para</strong> a pré-carga;


Implementação <strong>de</strong> Register Transfer Systems (RTS) <strong>de</strong> Alta Velocida<strong>de</strong> 53• se <strong>de</strong>sejamos que certo n-latch mantenha o seu valor <strong>de</strong> saída durante a sua fase <strong>de</strong> holding, entãonenhuma <strong>de</strong> suas entradas po<strong>de</strong>rá sofrer uma transição “1”→”0” durante o holding (ver seção2.2.3.2.1);• se <strong>de</strong>sejamos que certo p-latch mantenha o seu valor <strong>de</strong> saída durante a sua fase <strong>de</strong> holding, entãonenhuma <strong>de</strong> suas entradas po<strong>de</strong>rá sofrer uma transição “0”→”1” durante o holding (ver seção2.2.3.2.1).As regras <strong>de</strong> composição que serão apresentadas servirão <strong>para</strong> garantir quedurante a fase <strong>de</strong> avaliação do data chain:e 1 . todas as entradas dos blocos n-dinâmicos e PL tenham apenas transições “0”→”1”;e 2 . todas as entradas dos blocos p-dinâmicos e PH tenham apenas transições “1”→”0”.e durante a fase <strong>de</strong> holding do data chain:h 1 . todas as pc-entradas dos blocos PL estejam em “0”;h 2 . todas as pc-entradas dos blocos PH estejam em “1”;h 3 . todo n-data chain tenha ao menos um n-latch em cujas entradas, durante todo o holding, nãoocorrerem transições do tipo “1”→”0”;h 3 . todo p-data chain tenha ao menos um p-latch em cujas entradas, durante todo holding, nãoocorrerem transições do tipo “0”→”1”.2.3.2.2.1 Regras r 1 a r 5Cinco regras <strong>de</strong> composição, r 1 a r 5 , são <strong>de</strong>scritas abaixo.Regra <strong>de</strong> Composição 1 (r 1 ): Se um bloco Dp for o primeiro bloco não estático do data chain, entãoeste data chain não po<strong>de</strong> passar por nenhuma <strong>de</strong> suas pc-entradas.Os outros blocos e as entradas que não são as pc-entradas do bloco Dp estão livres <strong>de</strong> quaisquerrestrições. A regra é necessária <strong>para</strong> que h 1 e h 2 possam ser garantidos na fase <strong>de</strong> holding.Regra <strong>de</strong> Composição 2 (r 2 ): Um latch não <strong>de</strong>ve antece<strong>de</strong>r a um bloco dinâmico ou a um bloco Dp<strong>de</strong>ntro do mesmo data chain.Em outras palavras, a saída <strong>de</strong> um latch não po<strong>de</strong> ser ligada a um bloco dinâmico ou bloco Dp,direta ou indiretamente, no data chain. Está regra é necessária <strong>para</strong> que e 1 e e 2 possam ser garantidosna fase <strong>de</strong> avaliação.Regra <strong>de</strong> Composição 3 (r 3 ’): Dentro <strong>de</strong> um data chain o número <strong>de</strong> inversões lógicas entre:


54Implementação <strong>de</strong> Register Transfer Systems (RTS) <strong>de</strong> Alta Velocida<strong>de</strong>r 3a . dois blocos dinâmicos adjacentes <strong>de</strong>ve ser ímpar;r 3b . dois blocos Dps adjacentes do mesmo tipo, sejam dois blocos PH ou PL, <strong>de</strong>ve ser ímpar;r 3c . dois blocos Dps adjacentes <strong>de</strong> tipos diferentes, um PH outro PL, <strong>de</strong>ve ser par;r 3d . um bloco PH (PL) adjacente a um bloco n (p) dinâmico, ou vice-versa, <strong>de</strong>ve ser par;r 3e . um bloco PL (PH) adjacente a um bloco n (p) dinâmico, ou vice-versa, <strong>de</strong>ve ser ímpar.(os blocos serão chamados adjacentes se entre eles existirem apenas blocos estáticos).Esta regra restringe quais blocos po<strong>de</strong>m ser ligados a quais blocos <strong>de</strong>ntro <strong>de</strong> um data chain. Ela<strong>de</strong>ve ser observada <strong>de</strong>vido ao e 1 , e 2 , h 1 e h 2 .Po<strong>de</strong>mos enunciar a regra r 3 ’ <strong>de</strong> uma forma mais simples mas equivalente. Abaixo é dado estaforma alternativa.Regra <strong>de</strong> Composição 3 (r 3 ): Dentro <strong>de</strong> um data chain o número <strong>de</strong> blocos entre:r 3a . dois blocos dinâmicos quaisquer <strong>de</strong>ve ser ímpar;r 3b . dois blocos Dps do mesmo tipo, sejam dois blocos PH ou PL, <strong>de</strong>ve ser ímpar;r 3c . dois blocos Dps <strong>de</strong> tipos diferentes, um PH outro PL, <strong>de</strong>ve ser par;r 3d . um bloco PH (PL) e um bloco n (p) dinâmico, ou vice-versa, <strong>de</strong>ve ser par;r 3e . um bloco PL (PH) e um bloco n (p) dinâmico, ou vice-versa, <strong>de</strong>ve ser ímpar.Des<strong>de</strong> que todos os blocos usados no E-TSPC são inversores, é fácil ver que se um data chainobe<strong>de</strong>cer à regra simplificada, r 3 , então também obe<strong>de</strong>cerá ao que foi <strong>de</strong>terminado na versão maiscompleta. Também é fácil observar que o contrário é verda<strong>de</strong>: uma vez que o data chain obe<strong>de</strong>ce à r 3 ’,então r 3 será satisfeita. Não obstante a forma r 3 ser mais compacta e elegante, r 3 ’ é mais simples <strong>de</strong> seraplicada.Regra <strong>de</strong> Composição 4 (r 4 ): Consi<strong>de</strong>re o último bloco dinâmico B Dy <strong>de</strong> um data chain (se existiralgum). Deverá existir ao menos um latch B L neste data chain com um número par <strong>de</strong> blocos(número par <strong>de</strong> inversões) entre B Dy e B L .Nesta regra obviamente B Dy <strong>de</strong>ve antece<strong>de</strong>r B L .Está regra visa ao h 3 e h 4 .Regra <strong>de</strong> Composição 5 (r 5 ): Em um data chain qualquer <strong>de</strong>ve haver uma das duas configurações:r 5a . ao menos um bloco dinâmico e um latch;r 5b . ao menos dois latches e um número par <strong>de</strong> blocos (número par <strong>de</strong> inversões) entre eles.


Implementação <strong>de</strong> Register Transfer Systems (RTS) <strong>de</strong> Alta Velocida<strong>de</strong> 55A regra r 4 quando associada à r 5a obriga que o data chain possua ao menos um bloco dinâmico eum latch, com um número par <strong>de</strong> inversões entre eles. Novamente estas regras visam ao h 3 e h 4 .No APÊNDICE A, estas cinco regras são associadas em uma única regra geral.Na Figura 19 aparecem sete n-data chains completos: dois <strong>de</strong>les com entrada em i a, dois comentrada em i c1, dois com entrada em i c2e um n-data chain com entrada em i i. Todos eles obe<strong>de</strong>cem àscinco regras <strong>de</strong> composição.As regras aqui colocadas são análogas àquelas apresentadas na técnica NORA ([Go83], [Go84]).NORA, como vimos, utiliza duas fase <strong>de</strong> clock. Dois tipos <strong>de</strong> problemas enfrentados aí são os <strong>de</strong>layrace errors e os clock skew race errors. Regras muito semelhantes as regras r 1 , r 2 e r 3 aqui fornecidasforam criadas no NORA <strong>para</strong> evitar os <strong>de</strong>lay race errors. A motivação, portanto, <strong>para</strong> as três primeirasregras da estratégia NORA e <strong>para</strong> r 1 , r 2 e r 3 é semelhante. Regras semelhantes a r 4 e r 5 são usadas <strong>para</strong>evitar os clock skew race errors. Na E-TSPC, on<strong>de</strong> não há clock skew errors (ao menos com blocoslocais ([Af90], [La95]), estas duas regras servem <strong>para</strong> garantir que, durante o holding, haja em cadadata chain ao menos um latch que mantenha sua saída constante.Vamos apresentar, por fim, o que chamamos <strong>de</strong> circuito RTS E-TSPC. Este é um circuito composto<strong>de</strong> data chains, n ou p, e todos esses observam as regras <strong>de</strong> composição; também impomos que todasas entradas <strong>de</strong> blocos que não estão ligadas a nenhuma saída <strong>de</strong> bloco sejam entradas externas docircuito.Definição 12: Um circuito C E será chamado <strong>de</strong> circuito RTS E-TSPC se <strong>para</strong> qualquer spp S q <strong>de</strong> C Eocorre que:i. existirá um n-data chain D Ni <strong>de</strong> C E tal que S q ⊆ D Ni , se o spp for formado por apenas blocos n-dinâmicos, n-Dps e n-latches, ao menos um <strong>de</strong>sses, e mais blocos estáticos;ii. existirá um p-data chain D Pi <strong>de</strong> C E tal que S q ⊆ D pi , se o spp for formado por apenas blocos p-dinâmicos, p-Dps e p-latches, ao menos um <strong>de</strong>sses, e mais blocos estáticos;iii. existirá um p-data ou um n-data chain D i <strong>de</strong> C E tal que S q ⊆ D i , se o spp for formado por apenasblocos estáticos;iv. as regras r 1 -r 5 são observadas <strong>para</strong> todos os data chains;v. todas as entradas do circuito são entradas externas.2.3.2.2.2 Blocos Dps e data chains do circuito


56Implementação <strong>de</strong> Register Transfer Systems (RTS) <strong>de</strong> Alta Velocida<strong>de</strong>As <strong>de</strong>finições <strong>de</strong> data chains e, portanto, <strong>de</strong> circuitos RTS E-TSPC apresentam uma importantedificulda<strong>de</strong>. Diz respeito ao uso dos blocos Dps e à distinção entre os n-Dps e os p-Dps, supostapossível. Todos os blocos usados no E-TSPC po<strong>de</strong>m ser classificados, quanto ao seu tipo, por meio <strong>de</strong>inspeção direta, exceção aos blocos Dp. Neles a semelhança estrutural entre os n-Dps e os p-Dpsimpe<strong>de</strong> tal classificação.Em vista disto, surgem duas dúvidas <strong>de</strong> caráter prático:i. afinal como po<strong>de</strong>remos saber se o bloco que colocamos é um n-Dp ou um p-Dp? Comopo<strong>de</strong>remos saber se o data chain é n ou p? Será possível, em resumo, <strong>de</strong>senhar um circuito RTSE-TSPC, obe<strong>de</strong>cendo às regras <strong>de</strong> composição e utilizando blocos Dps?ii. po<strong>de</strong>remos saber quem são os blocos p-Dps e os n-Dps <strong>de</strong> um circuito? Po<strong>de</strong>remos se<strong>para</strong>r os n ep data chains <strong>de</strong>le? Dado um circuito qualquer, será possível verificar se é ou não um circuitoRTS E-TSPC?A primeira questão é <strong>de</strong> fácil resposta. Sim, é possível <strong>de</strong>senhar um circuito RTS E-TSPC comblocos Dps. Para tal, durante a fase <strong>de</strong> <strong>projeto</strong>, cada bloco Dp manipulado <strong>de</strong>ve ser marcadoantecipadamente como sendo n-Dp ou p-Dp; da mesma forma os data chain. Sendo obe<strong>de</strong>cidas todasas regras (em particular r 1 , r 2 e r 3 ), garantimos que os blocos são pré-carregados na fase correta(conforme teoremas 2 N e 2 P abaixo), e que os data chains serão do tipo <strong>de</strong>sejado.Para verificar a aplicação das regras <strong>de</strong> composição em um circuito qualquer, a segunda questãocolocada, <strong>de</strong>veremos ser capazes <strong>de</strong> i<strong>de</strong>ntificar todos os n e p data chains, pois as regras são aplicadassobre estes. Para esta i<strong>de</strong>ntificação, a partir das <strong>de</strong>finições <strong>de</strong> data chains, necessitamos saber quemsão os blocos n-Dps e p-Dps. Portanto necessitamos <strong>de</strong> um procedimento que permita tal i<strong>de</strong>ntificação.Abaixo <strong>de</strong>screvemos isso. Neste procedimento se usa o fato <strong>de</strong> ser possível i<strong>de</strong>ntificar quais são osblocos n e p dinâmicos, estáticos e Dps (sem distinguir entre n-Dp e p-Dp), quais são as entradas esaídas <strong>de</strong>sses blocos e quais são as pc-entradas dos blocos Dps 3 .Procedimento 1- <strong>para</strong> classificação dos blocos Dps em RTS E-TSPC:Seja o circuito C E e seu bloco Dp B DP (po<strong>de</strong> ser PH ou PL). O que será feito é recuar através dasligações <strong>de</strong> C E , a partir <strong>de</strong> B DP , até encontrar um bloco dinâmico. Esse bloco dinâmico nos dirá quetipo <strong>de</strong> bloco Dp temos. Iniciamos o processo com a escolha <strong>de</strong> uma das pc-entradas <strong>de</strong> B DP ,chamando-a <strong>de</strong> e 0. Em e 0estarão ligados vários blocos; tomemos um <strong>de</strong>les. Caso as regras r 1 , r 2 e r 33 As pc-entradas po<strong>de</strong>m ser imediatamente se<strong>para</strong>das das outras entradas do bloco Dp: numa das porções do bloco,aquela composta por transistores N ou aquela por P, o número <strong>de</strong> transistores será menor. As entradas que chegam a estaporção são então as pc-entradas.


Implementação <strong>de</strong> Register Transfer Systems (RTS) <strong>de</strong> Alta Velocida<strong>de</strong> 57sejam verificadas então o bloco po<strong>de</strong>rá ser apenas um <strong>de</strong>stes (caso apareça uma opção diferente entãosaberemos que as regras não foram obe<strong>de</strong>cidas):i. um n-dinâmico;ii. um p-dinâmico;iii. um bloco estático complementar CMOS;iv. um outro bloco Dp.Para os casos (i) e (ii) a classificação <strong>de</strong> B DP estará terminada: n-Dp <strong>para</strong> (i), e p-Dp <strong>para</strong> (ii). Para(iii) e (iv), não po<strong>de</strong>remos ainda <strong>de</strong>cidir e <strong>de</strong>veremos recuar mais um bloco. Escolhemos <strong>para</strong> isto umadas entradas do bloco estático (iii) ou uma das pc-entradas do bloco Dp (iv). Chamemos <strong>de</strong> e 1essaentrada. Repetimos com e 1a análise feita com e 0e, se não houver a possibilida<strong>de</strong> <strong>de</strong> <strong>de</strong>cisão, faremosmais um recuo <strong>de</strong>terminando e 2. Assim seguimos até cairmos em (i) ou (ii).O teorema abaixo garante que, se estamos com um circuito RTS E-TSPC, o procedimento <strong>de</strong>scritoacima é efetivo, no sentido <strong>de</strong> fornecer sempre uma resposta, e correto, ou seja a resposta encontrada éverda<strong>de</strong>ira.Teorema da classificação dos blocos Dps. Consi<strong>de</strong>re um circuito RTS E-TSPC C E . Todos os seusblocos Dps po<strong>de</strong>m ser corretamente classificados como n-Dp ou p-Dp através do procedimento<strong>de</strong>scrito acima.Dem.: Seja o bloco Dp B Dp que <strong>de</strong>sejamos classificar. O processo <strong>de</strong> ir recuando é finito <strong>de</strong>s<strong>de</strong> quetodos os blocos aí encontrados pertencem ao mesmo data chain (pois um data chain nunca po<strong>de</strong>iniciar por uma pc-entrada (r 1 )) e, <strong>de</strong>ntro <strong>de</strong> um data chain, nenhum bloco é acessível a ele mesmo.Assim, mais cedo ou mais tar<strong>de</strong>, <strong>de</strong>vemos encontrar um bloco dinâmico. Desta forma chegaremos auma classificação <strong>de</strong> B Dp , <strong>de</strong>s<strong>de</strong> que as regras sejam obe<strong>de</strong>cidas (caso contrário, ou encontraremos umbloco não esperado ou ficaremos em um ciclo infinito). Assim o procedimento é efetivo.Observe que o bloco B DP , não po<strong>de</strong>ndo ser n-Dp e p-Dp ao mesmo tempo, pertence a apenas umdos tipos <strong>de</strong> data chain. Assim, qualquer caminho que seguirmos durante o recuo resultará na mesmaclassificação. Também haverá apenas blocos estáticos e Dps entre B Dp e o bloco dinâmico encontrado.Desta forma, este e aquele <strong>de</strong>vem pertencer ao mesmo data chain e a classificação feita é correta.•Uma vez se<strong>para</strong>dos os blocos n-Dps e p-Dps, po<strong>de</strong>remos encontrar os data chains do circuito. Isto éfeito com base nas <strong>de</strong>finições <strong>de</strong> data chains, não importando se o circuito obe<strong>de</strong>ce ou não às regras <strong>de</strong>composição.


58Implementação <strong>de</strong> Register Transfer Systems (RTS) <strong>de</strong> Alta Velocida<strong>de</strong>Procedimento 2- <strong>para</strong> <strong>de</strong>terminação dos “data chains”:Consi<strong>de</strong>re o circuito C E . Supomos que os blocos n e p dinâmicos, n e p latches, estáticos, n-Dp e p-Dp já estejam i<strong>de</strong>ntificados. Inicialmente vamos <strong>de</strong>terminar os n-data chains. Tomemos todos osblocos n-latches. Consi<strong>de</strong>remos esses blocos numerados (<strong>de</strong>s<strong>de</strong> que são finitos não há dificulda<strong>de</strong> <strong>para</strong>enumerá-los). Sejam eles B nL1 , B nL2 , .....Para cada bloco B nLi achemos o conjunto dos n-data chains a que o bloco pertence. Para isso<strong>de</strong>terminemos dois conjuntos <strong>de</strong> spps:F I que possui os “pedaços iniciais” dos n-data chains que passam por B nLi ;F F que possui os “pedaços finais” dos n-data chains que passam por B nLi .(como são esses dois conjuntos ficará mais claro a seguir)Para construir F I começamos por formar o conjunto <strong>de</strong> sppsF I0 = {spp S i =(B(S i )={B nLi }, L(S i )=∅, I Si =a, O Si = O BnLi ) <strong>para</strong> todo a∈I(B nLi )}.Para cada um dos elementos S i <strong>de</strong> F I0 são repetidos os passos abaixo até que F I0 acabe ficandovazio:i. retira-se S i <strong>de</strong> F I0 ;ii. selecionam-se todos os blocos ligados a entrada <strong>de</strong> S i e, <strong>para</strong> cada um dos blocos selecionados,acrescentam-se novos elementos a F I0 ou a F I <strong>de</strong> acordo com as regras:a. se o bloco B S selecionado for estático, n-dinâmico, n-Dp ou n-latch então acrescentam-se a F I0os novos spps:{spp S j ={B(S j )=B(S i )∪B S , L O(S j )=L O(S i )∪(I Si , O Bs ), I Sj =a, O Sj =O Si } <strong>para</strong> todo a∈I(B S )};b. se o bloco selecionado for p-dinâmico, p-Dp ou p-latch, então acrescenta-se S i a F I (caso eleainda não esteja lá).A etapa acima é finita quando estivermos com um circuito RTS E-TSPC pois os blocos nos datachains não são acessíveis a eles mesmos e o número <strong>de</strong> elementos <strong>de</strong> um circuito é finito.O próximo passo será construir F F a partir do conjunto <strong>de</strong> spps F F0 ={spp S i ={B(S i )={B P },L(S i )=∅, I(S i )=a, O Si = O BP } <strong>para</strong> todo a∈I(B P ) tal que B P seja um bloco estático, n dinâmico, n-Dpou n-latch e (a , O BnLi ) ∈ L O(C E )}.Para cada um dos elementos S i <strong>de</strong> F F0 são repetidos os passos abaixo até que F F0 acabe ficandovazio:i. retire-se S i <strong>de</strong> F F0 ;ii. selecionam-se todos os blocos ligados a saída <strong>de</strong> S i e, <strong>para</strong> cada um dos blocos selecionados,acrescentam-se novos elementos a F F0 ou a F F <strong>de</strong> acordo com as regras:


Implementação <strong>de</strong> Register Transfer Systems (RTS) <strong>de</strong> Alta Velocida<strong>de</strong> 59a. se o bloco B S selecionado for estático, n-dinâmico, n-Dp ou n-latch então acrescenta-se à F F0 osnovos spps:{spp S j ={B(S j )=B(S i )∪B S , L O(S j )=L O(S i )∪(a, O Si ), I(S j )=I(S i ), O Sj =O BS } <strong>para</strong> todoa∈I(B S ) tal que a esteja ligado a O Si };b. se o bloco selecionado for p-dinâmico, p-Dp ou p-latch então acrescenta-se S i a F F (caso eleainda não esteja lá).A combinação <strong>de</strong> um elemento S a <strong>de</strong> F I com outro elemento S b <strong>de</strong> F F formará um n-data chain S cque possui B nLi : S c ={B(S c )=B(S a )∪B(S b ), L O(S c )=L O(S a )∪L O(S b )∪(I(S b ), O Sa ), I(S c )=I(S a ), O Sc =O Sb }. O conjunto <strong>de</strong> todos os data chain que passam por B nLi é formado tomando-se todas ascombinações <strong>de</strong> um elemento <strong>de</strong> F I e um <strong>de</strong> F F .O que foi feito com os n-latches é repetido <strong>para</strong> os blocos n-dinâmicos e n-Dp. Todos os n-datachains do circuito serão i<strong>de</strong>ntificados <strong>de</strong>ssa maneira.Passos similares são aplicados <strong>para</strong> i<strong>de</strong>ntificar todos os p-data chains.Teorema dos data chains: Consi<strong>de</strong>re um circuito RTS E-TSPC C E . O procedimento acima <strong>de</strong>scrito éefetivo e correto na <strong>de</strong>terminação <strong>de</strong> todos os “data chains” <strong>de</strong> C E <strong>de</strong>s<strong>de</strong> que a classificação dosblocos Dps esteja correta.Dem.: Primeiro observemos que os passos <strong>para</strong> geração dos conjuntos F I e F F são finitos pois:a. nos spps formados por blocos estáticos, n-dinâmicos, n-Dps e n-latches, nenhum bloco é acessível asi próprio;b. nos spps formados por blocos estáticos, p-dinâmicos, p-Dps ou p-latches, nenhum bloco é acessívela si próprio;c. todos os blocos usados têm, por <strong>de</strong>finição, um número finito <strong>de</strong> entradas;d. um circuito é por <strong>de</strong>finição um conjunto finito <strong>de</strong> blocos.Como este procedimento está baseado na <strong>de</strong>finição <strong>de</strong> data chain, sempre resultará na se<strong>para</strong>çãocorreta dos data chains. Ainda, como todo n-data chain <strong>de</strong>ve conter ao menos um n-latch, um bloco n-dinâmico ou um bloco n-Dp, Definição 9, a conseqüência é que, uma vez analisados todos estesblocos, teremos i<strong>de</strong>ntificados todos os n-data chains <strong>de</strong> C E (i<strong>de</strong>m <strong>para</strong> os p-data chains).•Voltemos agora a questão que preten<strong>de</strong>mos respon<strong>de</strong>r: dado um circuito C E qualquer, será possívelverificar se é ou não um circuito RTS E-TSPC? Um sim a esta questão representa a existência <strong>de</strong> umprocedimento aplicável sobre qualquer circuito C E , chamemo-lo <strong>de</strong> procedimento 3, tal queprocedimento 3 aponta C E como RTS E-TSPC ⇔ o circuito C E é RTS E-TSPC.


60Implementação <strong>de</strong> Register Transfer Systems (RTS) <strong>de</strong> Alta Velocida<strong>de</strong>Tal procedimento é <strong>de</strong>scrito abaixo.Procedimento 3- <strong>para</strong> verificar se um circuito é RTS E-TSPCConsi<strong>de</strong>re o circuito C E . Devemos aplicar a C E o procedimento 1, <strong>para</strong> i<strong>de</strong>ntificar os blocos n-Dps ep-Dps, e, posteriormente, o procedimento 2 <strong>para</strong> obter todos os data chains. Uma vez que nenhumproblema seja encontrado durante a execução <strong>de</strong>stes, a Definição 12 é usada <strong>para</strong> verificar se C E é ounão um RTS E-TSPC. Particularmente, <strong>de</strong>vemos investigar os itens iii, iv e v <strong>de</strong>s<strong>de</strong> que os doisprimeiros foram aplicados no procedimento 2 e, portanto, são obe<strong>de</strong>cidos necessariamente nos datachains <strong>de</strong>terminados.Teorema da verificação: Seja C E um circuito qualquer. O procedimento 3 aponta C E como RTS E-TSPC se e somente se o circuito C E é RTS E-TSPC.Dem.: Primeiro mostraremos que (procedimento 3 aponta C E como RTS E-TSPC ⇐ C E é RTS E-TSPC). Caso C E seja um circuito RTS E-TSPC, então, conforme os dois teoremas acima, teremosclassificados corretamente os blocos Dps e se<strong>para</strong>dos todos os data chain. Na aplicação da Definição13 chegaremos a conclusão que o circuito é RTS E-TSPC. Portanto o procedimento 3 apontará C Ecomo RTS E-TSPC.Mostraremos agora a segunda parte do teorema, que (procedimento 3 aponta C E como RTS E-TSPC ⇒ C E é RTS E-TSPC).Caso a i<strong>de</strong>ntificação dos blocos n e p-Dps seja correta, então a se<strong>para</strong>ção dos n e p data chains peloprocedimento 2, uma vez executada, será correta pois usa a própria <strong>de</strong>finição <strong>de</strong> data chain. Também averificação do circuito, <strong>para</strong> <strong>de</strong>terminar se é RTS E-TSPC, será correta pois novamente usa a<strong>de</strong>finição. Portanto qualquer erro na i<strong>de</strong>ntificação <strong>de</strong> um circuito C E como RTS E-TSPC só po<strong>de</strong> ser<strong>de</strong>vido a algum erro na i<strong>de</strong>ntificação dos blocos Dps. Por outro lado, se um bloco é dito ser n-Dp e osdata chains i<strong>de</strong>ntificados pelo procedimento 2 obe<strong>de</strong>cem às regras <strong>de</strong> composição r 1 -r 3 , então po<strong>de</strong>-semostrar que o bloco é realmente um n-Dp (a <strong>de</strong>monstração é igual a aquela do lema 3 N , mostrada mais<strong>para</strong> frente). O mesmo po<strong>de</strong> ser dito em relação a um p-Dp. Assim, se procedimento 3 aponta C E comoRTS E-TSPC ele será <strong>de</strong> fato um circuito RTS E-TSPC.•Observemos que toda esta seção tratou apenas do problema introduzido pelos blocos Dps. Aconclusão final é que é possível tanto o <strong>projeto</strong> como a i<strong>de</strong>ntificação <strong>de</strong> um circuito RTS E-TSPC.2.3.3 Teorema fundamental da estratégia E-TSPCPara mostrar que, uma vez obe<strong>de</strong>cidas às regras <strong>de</strong> composição, o circuito funciona corretamente,enunciamos o seguinte teorema:


Implementação <strong>de</strong> Register Transfer Systems (RTS) <strong>de</strong> Alta Velocida<strong>de</strong> 61Teorema fundamental: Consi<strong>de</strong>re um circuito RTS E-TSPC C E . Se as entradas externas foremconvenientes, o “clock” tiver o período longo suficiente e se todo circuito estiver estável uma vez noinício <strong>de</strong> seu funcionamento, então:i. a saída do último “latch” <strong>de</strong> um “data chain” ficará inalterada durante a fase <strong>de</strong> “holding”<strong>de</strong>ste;ii. os blocos Dps farão a correta pré-carga durante a fase <strong>de</strong> “holding” do “data chain” a quepertencem;iii. os blocos dinâmicos e os blocos Dps não serão <strong>de</strong>scarregados in<strong>de</strong>vidamente durante a fase <strong>de</strong>avaliação do “data chain” a que pertencem.O teorema acima será provado se<strong>para</strong>damente por meio <strong>de</strong> 6 outros teoremas. Assim o item (i) étratado nos teoremas 1 N e 1 p , o item (ii), nos teorema 2 N e 2 P e o item (iii), nos teoremas 3 N e 3 P . Para<strong>de</strong>monstração <strong>de</strong>stes teoremas, todavia, serão necessários outros teoremas e lemas. Também seráexplicado o que significa “entrada externa conveniente”, hipótese h EE vista adiante, e o que significa“período longo suficiente”, hipótese h TC .2.3.3.1 Proprieda<strong>de</strong>s dos blocos do E-TSPCAntes <strong>de</strong> fazermos as <strong>de</strong>monstrações a que nos propomos, daremos uma lista das proprieda<strong>de</strong>s, dosblocos usados, que aparecem implícita ou explicitamente nas <strong>de</strong>monstrações. Com isso <strong>de</strong>sejamos<strong>de</strong>ixar claro o que <strong>de</strong>pen<strong>de</strong> das regras e o que <strong>de</strong>pen<strong>de</strong> dos próprios blocos.Proprieda<strong>de</strong> 1 (pr 1 ): Transições na saída <strong>de</strong> um bloco qualquer somente po<strong>de</strong>rão ocorrer quandohouver transições em alguma <strong>de</strong> suas entradas ou, <strong>para</strong> blocos dinâmicos e “latches”, no “clock”.Para "latches", alterações na sua saída, <strong>de</strong>vido ao "clock", po<strong>de</strong>m apenas surgir quando o blocopassa do "holding" <strong>para</strong> avaliação.Essa proprieda<strong>de</strong> diz que os blocos são causais, apresentando variações apenas quanto as entradas(entrada aqui no sentido mais geral) são modificadas.proprieda<strong>de</strong> 2 (pr 2 ): Para qualquer bloco, uma transição “1”→“0” na entrada somente po<strong>de</strong>rácausar uma transição “0”→“1” na saída. Analogamente, uma transição “0”→“1” somente po<strong>de</strong>rácausar uma transições “1”→“0”.Em outras palavras, todos os blocos com que trabalhamos são blocos que causam inversão.


62Implementação <strong>de</strong> Register Transfer Systems (RTS) <strong>de</strong> Alta Velocida<strong>de</strong>proprieda<strong>de</strong> 3 (pr 3 ): A saída <strong>de</strong> um bloco n-dinâmico vai imediatamente <strong>para</strong> “1” logo que ocorre atransição <strong>de</strong> “1”→“0” no "clock" (fase <strong>de</strong> “holding”). Permanece em “1” durante todo o intervaloem que o "clock" é mantido em “0”.Esta é a pré-carga do bloco e constitui uma etapa fundamental no funcionamento <strong>de</strong>le. O fato damudança <strong>de</strong> estado ser “imediata” é bastante importante, como veremos.proprieda<strong>de</strong> 4 (pr 4 ): A saída <strong>de</strong> um bloco p-dinâmico vai imediatamente <strong>para</strong> “0” logo que ocorre atransição <strong>de</strong> “0”→“1” no "clock" (fase <strong>de</strong> “holding”). Permanece em “0” durante todo o intervaloem que o "clock" é mantido em “1”.Como acima, esta característica é fundamental nos blocos p-dinâmicos.proprieda<strong>de</strong> 5 (pr 5 ): A saída <strong>de</strong> um bloco n-dinâmico, na sua fase <strong>de</strong> avaliação ("clock" em “1”),po<strong>de</strong> somente sofrer transições “1”→“0”.Des<strong>de</strong> que os transistores p estão cortados na avaliação, não é possível que haja transições <strong>de</strong>“0”→“1”.proprieda<strong>de</strong> 6 (pr 6 ): A saída <strong>de</strong> um bloco p-dinâmico, na sua fase <strong>de</strong> avaliação ("clock" em “0”),po<strong>de</strong> somente sofrer transições “0”→“1”.Des<strong>de</strong> que os transistores n estão cortados na avaliação, não é possível que haja transições <strong>de</strong>“1”→“0”.proprieda<strong>de</strong> 7 (pr 7 ): Quando todas as pc-entradas <strong>de</strong> um bloco PH ("precharged in high") estão em“1”, a saída do bloco vai <strong>para</strong> “0”. A mudança <strong>de</strong> estado na saída ocorre após as mudanças nas pcentradasque, por sua vez, po<strong>de</strong>m vir imediatamente ou atrasadas com relação à transição no"clock".Nos blocos PH, a pré-carga é feita quando as pc-entradas estão em “1”. Por construção, a saída<strong>de</strong>les <strong>de</strong>verá ir <strong>para</strong> “0”.proprieda<strong>de</strong> 8 (pr 8 ): Quando todas as pc-entradas <strong>de</strong> um bloco PL ("precharged in low") estão em“0”, a saída do bloco vai <strong>para</strong> “1”. A mudança <strong>de</strong> estado na saída ocorre após as mudanças nas pcentradasque, por sua vez, po<strong>de</strong>m vir imediatamente ou atrasadas com relação à transição do"clock".Nos blocos PL, a pré-carga é feita quando as pc-entradas estão em “0”.


Implementação <strong>de</strong> Register Transfer Systems (RTS) <strong>de</strong> Alta Velocida<strong>de</strong> 63proprieda<strong>de</strong> 9 (pr 9 ): Nos blocos n-latches, transições <strong>de</strong> “0”→“1” na entrada não afetam a saídaquando o "clock" está em “0” (fase <strong>de</strong> “holding”). Como conseqüência, nesta fase, a únicatransição possível na saída será “0”→“1”.Num bloco n-latch todos os transistores n, que formam a lógica n, estão em série com um transistorn ligado ao clock. Estando este cortado, φ=“0”, não po<strong>de</strong> haver <strong>de</strong>scarga na saída do latch. Emconseqüência, transições <strong>de</strong> “0”→“1” não provocarão mudanças na saída.proprieda<strong>de</strong> 10 (pr 10 ): Nos blocos p-latches, transições <strong>de</strong> “1”→“0” na entrada não afetam a saídaquando o "clock" está em “1” (fase <strong>de</strong> “holding”). Como conseqüência, nesta fase, a únicatransição possível na saída será “1”→“0”.Num bloco p-latch todos os transistores p, que formam a lógica p, estão em série com um transistorp ligado ao clock. Estando este cortado, φ=“1”, não po<strong>de</strong> haver carga na saída do latch. Emconseqüência, transições <strong>de</strong> “1”→“0” na entrada não provocarão mudanças na saída.2.3.3.2 Demonstração do Teorema fundamentalPara garantir o funcionamento <strong>de</strong> um circuito RTS E-TSPC, são necessárias duas hipóteses: uma<strong>de</strong>las trata <strong>de</strong> como <strong>de</strong>vem ser as entradas externas do circuito, a outra, da duração das fases do clock.Hipótese das entradas externas estáveis (h EE ):Apenas as entradas dos blocos dinâmicos, “latches” ou blocos Dps po<strong>de</strong>m ser entradas externas docircuito; adicionalmente, o sinal externo <strong>de</strong>ve ser estável durante a fase <strong>de</strong> avaliação dos blocos aele ligados.Assim, um sinal externo aplicado a um n-data chain <strong>de</strong>ve ser estável quando φ=”1”; um sinalexterno aplicado a um p-data chain <strong>de</strong>ve ser estável quando φ=”0”. Em vista <strong>de</strong> h EE não é possívelum sinal externo qualquer ser, ao mesmo tempo, aplicado as entradas <strong>de</strong> um n-data chain e <strong>de</strong> um p-data chain.A segunda hipótese só será apresentada após serem <strong>de</strong>senvolvidos alguns teoremas que servirão<strong>para</strong> melhor esclarecê-la. O primeiro <strong>de</strong>stes teoremas trata da estabilida<strong>de</strong> <strong>de</strong> um circuito.Teorema da estabilida<strong>de</strong> (T E ): Consi<strong>de</strong>re um circuito RTS E-TSPC C E on<strong>de</strong> o clock está fixo. Se asentradas externas <strong>de</strong> C E forem fixas, então, após certo intervalo, todos os pontos do circuito C Etambém ficarão fixos (ou estáveis).Dem.: Vamos supor que o teorema não é correto e mostrar que isto nos levará a contradições. Nãoestando todos os pontos do circuito C E estáveis, <strong>de</strong>verá haver então ao menos um bloco B A1 no circuitocuja saída esteja sempre se modificando. Pois bem, <strong>para</strong> tal ocorrer <strong>de</strong>veremos ter que ao menos uma


64Implementação <strong>de</strong> Register Transfer Systems (RTS) <strong>de</strong> Alta Velocida<strong>de</strong>das entradas <strong>de</strong> B A1 também esteja sempre se modificando (proprieda<strong>de</strong> pr 1 ). Tomemos uma <strong>de</strong>stasentradas; ela não po<strong>de</strong>rá ser uma das entradas externas que são fixas e, portanto, <strong>de</strong>verá estar ligada asaída <strong>de</strong> outro bloco. Chamaremo-lo <strong>de</strong> B A2 . Aplicando o mesmo raciocínio encontraremos a seqüência<strong>de</strong> blocos B A3 , B A4 , ..., que <strong>de</strong>ve ser infinita. Como o número <strong>de</strong> blocos e <strong>de</strong> entradas em cada bloco éfinito, então <strong>de</strong>ntro da seqüência anterior <strong>de</strong>veremos ter uma seqüência inicial B C1 , B C2 , ..., B CN com asseguintes características:a. a saída <strong>de</strong> cada um <strong>de</strong>stes blocos está sempre sendo modificada;b. a saída <strong>de</strong> B Ci+1 está ligada a uma entrada <strong>de</strong> B Ci ;c. B C1 é o próprio bloco B CN .Uma vez que os blocos B Ci po<strong>de</strong>m formar um spp cíclico, não será permitido que eles pertençam aapenas um dos seguintes conjuntos <strong>de</strong> blocos (Definição 12):i. blocos estáticos;ii. blocos n-dinâmicos, n-Dps, n-latches e estáticos;iii. blocos p-dinâmicos, p-Dps, p-latches e estáticos.Caso isto ocorresse, pela <strong>de</strong>finição <strong>de</strong> circuito RTS E-TSPC, haveria um data chain, n ou p <strong>de</strong>acordo com as circunstâncias, contendo tal spp cíclico. No entanto, os data chain são não cíclicos pela<strong>de</strong>finição.Conseqüentemente, haverá ao menos um bloco B CH dinâmico ou um latch em holding (r 5 ) 4 . Nestecaso, a saída do bloco po<strong>de</strong>rá no máximo sofrer uma transição (se for um latch, pr 3,4,9,10 ). Oras, isto éuma contradição pois a saída <strong>de</strong> todos os blocos B Ci estão sempre sendo modificadas. Portanto ocircuito C E <strong>de</strong>verá ficar todo estável após certo intervalo.•Uma importante aplicação do último resultado po<strong>de</strong> ser feita nos circuitos RTS E-TSPC on<strong>de</strong>algumas das entradas não são estáveis. Consi<strong>de</strong>remos um ponto n qualquer <strong>de</strong> um circuito RTS E-TSPC com a seguinte proprieda<strong>de</strong>: se i for uma das entradas não estáveis do circuito, nenhumaalteração em i causa efeito em n. Sendo assim, o estado <strong>de</strong> n não <strong>de</strong>pen<strong>de</strong> <strong>de</strong>stas entradas nãoestáveis e, caso as fixemos, o ponto n terá o mesmo comportamento. A partir do teorema acimaconclui-se que, caso o clock esteja fixo, n atingirá ainda um valor estável após certo intervalo. Deforma mais geral, qualquer ponto do circuito que não <strong>de</strong>pen<strong>de</strong> das entradas externas que estão variando<strong>de</strong>verá atingir a estabilida<strong>de</strong> após certo intervalo <strong>de</strong> tempo.4 Na verda<strong>de</strong>, por r 5 po<strong>de</strong>mos garantir que há sempre um latch em holding. Com a aplicação <strong>de</strong> r E , visto mais a frente, éque <strong>de</strong>verá haver ou um dinâmico ou um latch em holding. Assim este teorema continua a valer mesmo com r E .


Implementação <strong>de</strong> Register Transfer Systems (RTS) <strong>de</strong> Alta Velocida<strong>de</strong> 65O que procuramos encontrar agora é quais blocos po<strong>de</strong>m chegar a estabilida<strong>de</strong> em um circuito RTSE-TSPC. Os dois lemas abaixo servem <strong>para</strong> respon<strong>de</strong>r a esta questão.Lema 1 N . Consi<strong>de</strong>re um circuito RTS E-TSPC on<strong>de</strong> h EE é válida. Se a saída do último “latch” <strong>de</strong>qualquer p-data chain permanecer inalterada durante a fase φ=”1”, então, após certo intervalonesta fase φ=”1” (<strong>de</strong>s<strong>de</strong> que ela seja longa suficiente), todos os blocosi. n-Dps, n-dinâmicos, n-latches eii. estáticos que pertencem somente a n-data chainsterão sua saída fixa (estável).Dem.: Consi<strong>de</strong>re o bloco B N como em (i) ou (ii). Para provar o lema basta mostrar que transições dasentradas externas não estáveis durante a fase φ=”1” não po<strong>de</strong>m causar efeito algum na saída <strong>de</strong> B N .Neste caso, <strong>para</strong> a saída <strong>de</strong> B N , é como se o circuito tivesse todas suas entradas fixas. Pelo teorema T E ,portanto, po<strong>de</strong>remos afirmar que a saída do bloco atingirá a estabilida<strong>de</strong> como afirma o lema.Para provar que as transições nas entradas externas não causam efeitos na saída <strong>de</strong> B N , mostraremosque tal hipótese nos levará a contradições. Suponha, então, que uma certa entrada i, não estáveldurante a fase φ=”1”, tenha algum efeito sobre a saída <strong>de</strong> B N . Para que isto ocorra, <strong>de</strong>ve existir aomenos um spp S x formado pelos blocos B P1 , ..., B PT on<strong>de</strong>:i. a saída <strong>de</strong> B Pi está ligada a uma entrada <strong>de</strong> B Pi+1 ;ii. i está ligada a uma das entradas <strong>de</strong> B P1 e B PT é o próprio bloco B N ;iii. a saída <strong>de</strong> todos os blocos B Pi , <strong>de</strong> B P1 até B N , <strong>de</strong>pen<strong>de</strong>m <strong>de</strong> alguma forma do sinal aplicado em i.Caso não houvesse tal spp, modificações em i não causariam efeito na saída do bloco B N .Consi<strong>de</strong>re o maior k tal que <strong>para</strong> todo bloco B Pj , j≤k, B Pj é estático, p-latch, p-dinâmico ou p-Dp.Observe que k>0 por h EE . Pois bem, existirá um p-data chain S P contido em S x e que passa pelosblocos B P1 , ..., B Pk . Como o bloco B N não po<strong>de</strong> pertencer a nenhum p-data chain, teremos k


66Implementação <strong>de</strong> Register Transfer Systems (RTS) <strong>de</strong> Alta Velocida<strong>de</strong>i. p-Dps, p-dinâmicos, p-latches eii. estáticos que pertencem somente a p-data chainsterão sua saída fixa (estável).Dem.: Similar ao lema 1 N .•Des<strong>de</strong> que a saída <strong>de</strong> um bloco esteja fixa (estável), qualquer mudança nela somente po<strong>de</strong>rá ocorrerquando uma das entradas do bloco ou o clock, no caso dos blocos dinâmicos e latches, for alterada(pr 1 ). Isto será usado mais tar<strong>de</strong> em algumas <strong>de</strong>monstrações.Uma importante observação em relação a estes lemas é que o tempo que os blocos levam <strong>para</strong>atingir a estabilida<strong>de</strong> <strong>de</strong>pen<strong>de</strong> apenas do estado inicial do circuito e do valor das entradas estáveis.Chamemos <strong>de</strong> ∆ 1 ao período mínimo do clock <strong>para</strong> que os blocos <strong>de</strong>finidos nos lemas acima, <strong>de</strong>ntrodas hipóteses dadas, atinjam a estabilida<strong>de</strong>, <strong>para</strong> qualquer combinação <strong>de</strong> entradas e estados iniciais(como estamos trabalhando com um caso simplificado, on<strong>de</strong> admitimos apenas valores “0” e “1” <strong>para</strong>os pontos do circuito, existe um número finito <strong>de</strong> combinações <strong>de</strong> entradas e estados iniciais docircuito. Desta forma também haverá um valor mínimo <strong>para</strong> o período do clock).A estabilida<strong>de</strong> na saída do último latch dos data chains é uma das hipóteses usadas nestes lemas.Os próximos dois lemas dão as condições <strong>para</strong> chegar a esta estabilida<strong>de</strong>.Lema 2 N . Consi<strong>de</strong>re um circuito RTS E-TSPC. A saída do último “latch” <strong>de</strong> qualquer n-data chainpermanecerá inalterada na passagem <strong>para</strong>, e durante toda a fase <strong>de</strong> “holding”, φ=”0”, se no fim dafase φ=”1”, todos os blocosi. n-Dps, n-dinâmicos, n-latches eii. estáticos que pertencem somente a n-data chainstiverem sua saída fixa (estável).Dem.: Primeiro lembremos que por r 5 existe em cada data chain ao menos um latch. Seja B F o últimolatch <strong>de</strong> um n-data chain qualquer. Pela hipótese do teorema a saída do bloco B F <strong>de</strong>ve ser estável aofim da sua fase <strong>de</strong> avaliação. A transição do clock <strong>para</strong> "0" não causa, por sua vez, alteração no latch(pr 1 ). Para mostrar que o bloco B F permanecerá estável durante o holding, vamos supor que isto nãoaconteça e chegar a um absurdo. Consi<strong>de</strong>re que a saída <strong>de</strong> B F sofreu uma transição após a mudança doclock <strong>para</strong> “0”. Isto somente será possível se uma das entradas <strong>de</strong> B F sofrer uma transição <strong>de</strong> “1”→”0”(pr 1,9 ). Por r 5 , esta entrada <strong>de</strong>ve estar ligada a um bloco B A1 do data chain, sendo este um blocoestático, ou um n-Dp, ou um n-dinâmico ou um n-latch. Ainda, qualquer que seja o bloco ele é estávelno fim <strong>de</strong> φ=”1” (observe que se o bloco for estático, então ele não po<strong>de</strong> pertencer a nenhum p-datachain). Sendo n-dinâmico ou n-latch, a única transição que ocorre no “holding” é “0”→“1” (pr 3,9 ), que


Implementação <strong>de</strong> Register Transfer Systems (RTS) <strong>de</strong> Alta Velocida<strong>de</strong> 67não causa efeito algum em B F . Portanto, B A1 será estático ou n-Dp. Novamente alguma <strong>de</strong> suasentradas <strong>de</strong>ve sofrer uma transição <strong>de</strong> “0”→“1” (pr 1,2 ). Seja B A2 o bloco ligado a esta entrada. Agoraeste bloco somente po<strong>de</strong> ser estático, n-Dp ou n-latch. Estes chegaram a estabilida<strong>de</strong> durante aavaliação e, portanto, somente uma transição “1”→”0” numa <strong>de</strong> suas entradas po<strong>de</strong> causar o resultado<strong>de</strong>sejado. Seja B A3 o bloco ligado a esta entrada. Da mesma forma que B A1 , B A3 somente po<strong>de</strong> serestático ou n-Dp. Se continuarmos este processo, encontraremos blocos B A4 , B A6 , ..., estáticos, n-Dp oun-latches, e blocos B A5 , B A7 , ..., estáticos ou n-Dp, <strong>de</strong> forma que r 5 nunca será satisfeito, o que éabsurdo. Assim, B F não po<strong>de</strong>rá sofrer transições.•Lema 2 P . Consi<strong>de</strong>re um circuito RTS E-TSPC. A saída do último latch <strong>de</strong> qualquer p-data chainpermanecerá inalterada na passagem <strong>para</strong>, e durante toda a fase <strong>de</strong> “holding”, φ=”1”, se no fim dafase φ=”0”, todos os blocosi. p-Dps, p-dinâmicos, p-latches eii. estáticos que pertencem somente a p-data chainstiverem sua saída fixa (estável).Dem.: Similar ao lema 2 N .•Veja que os lemas 1 N , 1 P , 2 N e 2 P estão intimamente relacionados. Assim, num circuito RTS E-TSPC on<strong>de</strong> h EE é válida, se no fim da fase φ=”1” todos os blocos(a) n-Dps, n-dinâmicos, n-latches e(b) estáticos que pertence somente a n-data chainstiverem saída estável, então, por 2 N , a saída do último latch <strong>de</strong> qualquer n-data chain permaneceráinalterada na passagem e durante a fase φ=”0”. Neste caso, por 1 P , após certo intervalo na faseφ=”0”, todos os blocos(c) p-Dps, p-dinâmicos, p-latches e(d) estáticos que pertencem somente a p-data chainsficarão com a saída estável. A estabilida<strong>de</strong> <strong>de</strong>stes blocos garante que, lema 2 P , a saída do último latch<strong>de</strong> qualquer p-data chain permanecerá inalterada na passagem <strong>para</strong>, e durante a fase φ=”1”. Por fim, olema 1 N assinala que, após certo intervalo na fase φ=”1”, os blocos em (a) e (b) têm a saída estável.Voltamos ao início. Como conclusão, se o clock tiver período maior que ∆ 1 e em algum momento ocircuito todo estiver estável, então, pelos lemas 1 N e 1 P , teremos que, no fim <strong>de</strong> qualquer fase, serãoestáveis todos os blocos(a) Dps, dinâmicos e latches em avaliação, e


68Implementação <strong>de</strong> Register Transfer Systems (RTS) <strong>de</strong> Alta Velocida<strong>de</strong>(b) estáticos que pertencem somente ao data chain em avaliação.Pelos lemas 2 N e 2 P , a saída do último latch <strong>de</strong> qualquer data chain permanecerá inalterada napassagem <strong>para</strong> e durante toda a fase <strong>de</strong> holding <strong>de</strong>ste mesmo data chain.Os lemas 3 N e 3 P nos mostrarão que também os blocos Dps têm a saída estável após um intervalofinito <strong>de</strong> tempo no holding.Para a aplicação <strong>de</strong> indução nas próximas <strong>de</strong>monstrações, há a necessida<strong>de</strong> <strong>de</strong> que seja estabelecidauma or<strong>de</strong>m <strong>para</strong> os blocos Dps. Vamos <strong>de</strong>finir essa or<strong>de</strong>m abaixo.Definição 13: Consi<strong>de</strong>re um bloco B 0 e o conjunto F = {(conjunto dos Γ-data chains D X tal que obloco B 0 pertence a D X )}(on<strong>de</strong> Γ é n ou p). O valor Θ(B 0 ) = max {(número <strong>de</strong> blocos Dps queantece<strong>de</strong>m B 0 no Γ-data chain D i ) ∀D i ∈F}, será <strong>de</strong>nominado or<strong>de</strong>m <strong>de</strong> B 0 .A or<strong>de</strong>m <strong>de</strong> um bloco somente está bem <strong>de</strong>finido <strong>para</strong> os blocos dinâmicos, Dps e latches, quepertencem a apenas um tipo <strong>de</strong> data chain, n ou p-data chain. A or<strong>de</strong>m <strong>de</strong> um bloco será maior ouigual a zero; seu valor máximo será inferior ao número total <strong>de</strong> blocos Dps do circuito. Veja que se B Aantece<strong>de</strong>r a B C , então Θ(B C )≥Θ(B A ), <strong>de</strong>s<strong>de</strong> que <strong>de</strong>finida a or<strong>de</strong>m <strong>para</strong> eles. Desta forma, se houver umbloco com or<strong>de</strong>m 5, haverá ao menos um bloco com or<strong>de</strong>m 4, outro com 3, ... e outro com zero, todoseles no mesmo data chain.Lema 3 N . Consi<strong>de</strong>re um circuito RTS E-TSPC. Um bloco n-Dp <strong>de</strong>ste circuito terá sua saída mudada<strong>para</strong>“1” nos blocos PL ou“0” nos blocos PH,aí permanecendo, após certo intervalo <strong>de</strong> tempo na fase <strong>de</strong> “holding”, φ=”0” (a fase <strong>de</strong> "holding"<strong>de</strong>ve ser longa suficiente).Dem.: Vamos trabalhar com indução em relação à or<strong>de</strong>m dos blocos.Primeiro mostraremos que o lema é válido <strong>para</strong> qualquer bloco n-Dp B 0 com or<strong>de</strong>m zero (se existiralgum bloco n-Dp, então existirá um bloco com or<strong>de</strong>m zero). Suponha que B 0 seja um bloco PL e quesua saída esteja em “0” após longo tempo em holding. Mostremos que tal suposição nos levará a umacontradição. Ao menos uma das pc-entradas do bloco B 0 <strong>de</strong>verá ter valor “1” também após longotempo em holding (pr 8 ). Por r 1 e r 2 esta entrada <strong>de</strong>verá estar ligada a saída <strong>de</strong> um bloco B A1 que éestático ou n-dinâmico (como o bloco é <strong>de</strong> or<strong>de</strong>m zero não po<strong>de</strong> haver blocos n-Dps na sua entrada). Aregra r 3e impe<strong>de</strong>, por sua vez, que B A1 seja dinâmico. B A1 será, portanto, um bloco estático, com saída


Implementação <strong>de</strong> Register Transfer Systems (RTS) <strong>de</strong> Alta Velocida<strong>de</strong> 69em “1”. Ainda, uma das entradas <strong>de</strong>ste bloco <strong>de</strong>verá estar em “0”. Esta entrada <strong>de</strong>verá ser ligada, porsua vez, a um bloco B A2 , sendo este estático ou n-dinâmico. Se B A2 fosse dinâmico sua saída estariaem “1” após longo tempo em holding (pr 3 ), o que é contrário ao que <strong>de</strong>sejamos <strong>para</strong> a entrada <strong>de</strong> B A1 .Portanto, B A2 também é estático. Continuando a análise, encontraremos uma seqüência infinita <strong>de</strong>blocos B A3 , B A4 , ... todos estáticos. Como não po<strong>de</strong> haver um spp cíclico com apenas blocos estáticos,Definição 12, <strong>de</strong>veremos ter um número infinito <strong>de</strong> blocos, o que é uma contradição pois estamosconsi<strong>de</strong>rando circuitos finitos. Logo B 0 <strong>de</strong>verá estar com sua saída em “1”. Para um bloco PH oraciocínio é análogo. O teorema é assim válido <strong>para</strong> blocos <strong>de</strong> or<strong>de</strong>m zero.O próximo passo <strong>para</strong> a prova por indução será mostrar que se o teorema for válido <strong>para</strong> todo blocon-Dp <strong>de</strong> or<strong>de</strong>m N ou menor, então será também válido <strong>para</strong> todo bloco n-Dp B N+1 <strong>de</strong> or<strong>de</strong>m N+1.Suponha que o bloco B N+1 seja um bloco PL e que sua saída esteja em “0” após longo tempo emholding. Mostraremos que tal suposição nos levará a uma contradição. Estando a saída do bloco em“0”, ao menos uma das pc-entradas <strong>de</strong>verá ter valor “1” também após longo tempo em holding. Por r 1e r 2 esta entrada <strong>de</strong>verá estar ligada a saída <strong>de</strong> um bloco B A1 que é estático, n-dinâmico, PL ou PH (nocaso dos blocos Dps, eles serão <strong>de</strong> or<strong>de</strong>m N ou menor). A regra r 3e proíbe que B A1 seja dinâmico er 3b , que seja PL. Caso B A1 seja um bloco PH, por hipótese <strong>de</strong> indução, sua saída ficará em “0” apóslongo tempo em holding, não satisfazendo o que é <strong>de</strong>sejado. B A1 será, portanto, um bloco estático comuma <strong>de</strong> suas entradas em “0”, a fim <strong>de</strong> que sua saída esteja em “1”. Esta entrada <strong>de</strong>ve ser ligada, porsua vez, a um bloco B A2 , sendo este estático, n-dinâmico, PL ou PH (estes com or<strong>de</strong>m N ou menor).A regra r 3c proíbe que B A2 seja PH. Por outro lado, se B A1 for dinâmico ou PL, sua saída ficará em “1”após certo intervalo na fase <strong>de</strong> holding (pr 3 e hipótese <strong>de</strong> indução), o que não é a situação <strong>de</strong>sejada<strong>para</strong> a entrada <strong>de</strong> B A1 . Portanto, B A2 também é estático. Novamente a análise nos leva a uma seqüênciainfinita <strong>de</strong> blocos B A3 , B A4 , ... todos estáticos o que é uma contradição, como acima. Logo B N+1 <strong>de</strong>veráestar com sua saída em “1”. Para o caso do bloco B N+1 ser do tipo PH, o raciocínio é análogo e,portanto, o lema vale <strong>para</strong> qualquer bloco <strong>de</strong> or<strong>de</strong>m (N+1). Por indução concluímos que o lema vale<strong>para</strong> blocos <strong>de</strong> qualquer or<strong>de</strong>m.•Lema 3 P . Consi<strong>de</strong>re um circuito RTS E-TSPC. Um bloco p-Dp <strong>de</strong>ste circuito terá sua saída mudada<strong>para</strong>“1” nos blocos PL ou“0” nos blocos PH ,aí permanecendo, após certo intervalo <strong>de</strong> tempo na fase <strong>de</strong> “holding”, φ=”1” (a fase <strong>de</strong> "holding"<strong>de</strong>ve ser longa suficiente).Dem.: Similar ao lema 3 N .


70Implementação <strong>de</strong> Register Transfer Systems (RTS) <strong>de</strong> Alta Velocida<strong>de</strong>•O tempo <strong>para</strong> que haja a pré-carga dos blocos Dps <strong>de</strong>pen<strong>de</strong> dos atrasos dos blocos, e seu pior casonão <strong>de</strong>pen<strong>de</strong> dos sinais <strong>de</strong> entrada (este pior caso po<strong>de</strong> ser calculado/medido consi<strong>de</strong>rando os pioresatrasos dos blocos que estão entre os blocos dinâmicos e os blocos Dps). Chamaremos <strong>de</strong> ∆ 2 aoperíodo mínimo do clock que garante a pré-carga <strong>de</strong> todos os blocos dinâmicos e Dps durante a fase <strong>de</strong>holding.Os dois últimos lemas apontam mais alguns blocos que <strong>de</strong>vem ficar fixos (estáveis) no fim <strong>de</strong> cadafase.Lema 4 N . Consi<strong>de</strong>re um circuito RTS E-TSPC on<strong>de</strong> h EE é válida. Se a saída do último “latch” <strong>de</strong>qualquer n-data chain permanecer inalterada na passagem <strong>para</strong>, e durante a fase φ=”0”, então,após um intervalo finito nesta (<strong>de</strong>s<strong>de</strong> que esta seja longa suficiente), os blocos estáticos quepertencem a algum n-data chain e antece<strong>de</strong>m algum bloco n-dinâmico ou n-Dp <strong>de</strong>ste “data chain”terão sua saída fixa (estável).Dem.: Consi<strong>de</strong>re o bloco B N que se enquadra na hipótese do lema. Após o tempo ∆ 2 os blocos n-dinâmicos e n-Dps estão em pré-carga. Mostraremos que, após esta pré-carga, transições das entradasexternas não estáveis durante a fase φ=”0” não po<strong>de</strong>m causar efeito algum na saída <strong>de</strong> B N . Neste caso,<strong>para</strong> a saída <strong>de</strong> B N é como se o circuito tivesse todas suas entradas estáveis. Portanto, por T E , po<strong>de</strong>mosafirmar que a saída do bloco atingirá a estabilida<strong>de</strong>.Para provar que as transições nas entradas não causam efeitos na saída <strong>de</strong> B N , mostraremos que talhipótese nos leva a contradições. Suponha então que uma certa entrada externa i do circuito, nãoestável durante a fase φ=”0”, tenha algum efeito sobre a saída <strong>de</strong> B N . Para que isto ocorra, <strong>de</strong>veexistir ao menos um spp S x formado pelos blocos B P1 , ..., B PT on<strong>de</strong>:i. a saída <strong>de</strong> B Pi está ligada a uma entrada <strong>de</strong> B Pi+1 ;ii. i está ligada a uma das entradas <strong>de</strong> B P1 e B PT é o próprio bloco B N ;iii. a saída <strong>de</strong> todos os blocos B Pi , <strong>de</strong> B P1 até B N , <strong>de</strong>pen<strong>de</strong>m <strong>de</strong> alguma forma do sinal aplicado em i.Caso não houvesse tal spp, modificações em i não causariam efeito na saída do bloco B N .Uma das duas situações abaixo <strong>de</strong>scritas <strong>de</strong>ve-se verificar:i. algum bloco B Pi é do tipo p-dinâmico, p-latch ou p-Dp: como i <strong>de</strong>ve ser uma entrada <strong>de</strong> um n-data chain (h EE ) então haverá um n-data chain S N com início em i e fim na entrada do primeirobloco B Pi p-dinâmico, p-latch ou p-Dp. O último n-latch <strong>de</strong> S N será naturalmente um dos blocosB Pi ;


Implementação <strong>de</strong> Register Transfer Systems (RTS) <strong>de</strong> Alta Velocida<strong>de</strong> 71ii. nenhum dos blocos B Pi s é do tipo p-dinâmico, p-latch ou p-Dp: por h EE e r 2 algum dos blocos B Pique antece<strong>de</strong>m a B N <strong>de</strong>ve ser n-dinâmico ou n-Dp.Teremos portanto que um dos blocos B Pi é ou o último latch <strong>de</strong> um n-data chain ou um n-dinâmico/n-Dp; em ambos os casos, este bloco terá sua saída fixa após o tempo ∆ 2 . Isto contradiz ofato que as saídas dos blocos B Pi s <strong>de</strong>vem ser <strong>de</strong> alguma forma <strong>de</strong>pen<strong>de</strong>ntes <strong>de</strong> i. Assim, fica<strong>de</strong>monstrado que a saída do bloco B N não po<strong>de</strong> ser modificada por nenhuma das entradas não estáveise, em conseqüência, ela atinge a estabilida<strong>de</strong>.•Lema 4 P . Consi<strong>de</strong>re um circuito RTS E-TSPC on<strong>de</strong> h EE é válida. Se a saída do último “latch” <strong>de</strong>qualquer p-data chain permanecer inalterada na passagem <strong>para</strong>, e durante a fase φ=”1”, então,após um intervalo finito nesta (<strong>de</strong>s<strong>de</strong> que esta seja longa suficiente), os blocos estáticos quepertencem a algum p-data chain e antece<strong>de</strong>m algum bloco p-dinâmico ou p-Dp <strong>de</strong>ste “data chain”terão sua saída fixa (estável).Dem.: Similar ao lema 4 N .•O tempo necessário <strong>para</strong> que os blocos estáticos referidos acima fiquem estáveis <strong>de</strong>pen<strong>de</strong>,naturalmente, <strong>de</strong> ∆ 2 , do valor das entradas estáveis e das condições iniciais do circuito. Novamente não<strong>de</strong>pen<strong>de</strong>m das entradas que estão em transição. Chamaremos <strong>de</strong> ∆ 3 ao período mínimo do clock <strong>para</strong>que os blocos <strong>de</strong>finidos nos lemas 4 N e 4 P , <strong>de</strong>ntro das condições dadas, atinjam a estabilida<strong>de</strong>, <strong>para</strong>qualquer combinação <strong>de</strong> entradas e estados iniciais.Agora se pu<strong>de</strong>rmos garantir que o período do clock seja maior que o máximo <strong>de</strong> ∆ 1 , ∆ 2 e ∆ 3 e, alémdisso, que em algum momento o circuito fique todo estável, então po<strong>de</strong>remos afirmar a estabilida<strong>de</strong> <strong>de</strong>vários blocos ao fim <strong>de</strong> cada fase do clock. Esta será a nossa segunda hipótese. Ela trata da máximavelocida<strong>de</strong> permitida ao circuito. Nossa intenção não é <strong>de</strong>terminar esta máxima velocida<strong>de</strong> mas apenasmostrar que existe um período <strong>de</strong> clock <strong>para</strong> o qual o circuito funciona.Hipótese do “timming” correto (h TC )No início do funcionamento, o circuito <strong>de</strong>ve estar todo estável e o período do “clock” <strong>de</strong>ve sersuperior ao máximo entre ∆ 1 , ∆ 2 e ∆ 3 .Po<strong>de</strong>mos então, a partir dos lemas acima, gerar os seguintes corolários e teoremas (serão chamados<strong>de</strong> teoremas apenas os resultados mais importantes os quais queremos <strong>de</strong>stacar).Corolário 1 N : Consi<strong>de</strong>re um circuito RTS E-TSPC on<strong>de</strong> h EE e h TC são válidas. No fim da fase φ=”1”,todos os blocos


72Implementação <strong>de</strong> Register Transfer Systems (RTS) <strong>de</strong> Alta Velocida<strong>de</strong>i. n-Dps, n-dinâmicos, n-latches eii. estáticos que pertences somente a n-data chainsterão sua saída fixa (estável).Dem.: Aplicação dos lemas 1 N , 1 P , 2 N e 2 P .•Corolário 1 P . Consi<strong>de</strong>re um circuito RTS E-TSPC on<strong>de</strong> h EE e h TC são válidas. No fim da fase φ=”0”,todos os blocosi. p-Dps, p-dinâmicos, p-latches eii. estáticos que pertencem somente a p-data chainsterão sua saída fixa (estável).Dem.: Aplicação dos lemas 1 N , 1 P , 2 N e 2 P .•Teorema 1 N . Consi<strong>de</strong>re um circuito RTS E-TSPC on<strong>de</strong> h EE e h TC são válidas. A saída do último“latch” <strong>de</strong> qualquer n-data chain permanecerá inalterada na passagem <strong>para</strong>, e durante toda a fase<strong>de</strong> “holding”, φ=”0”.Dem.: Aplicação do corolário 1 N e do lema 2 N .•Teorema 1 P . Consi<strong>de</strong>re um circuito RTS E-TSPC on<strong>de</strong> h EE e h TC são válidas. A saída do último“latch” <strong>de</strong> qualquer p-data chain permanecerá inalterada na passagem <strong>para</strong>, e durante toda a fase<strong>de</strong> “holding”, φ=”1”.Dem.: Aplicação do corolário 1 P e do lema 2 P .•Teorema 2 N . Consi<strong>de</strong>re um circuito RTS E-TSPC on<strong>de</strong> h TC é válida. Um bloco n-Dp <strong>de</strong>ste circuitoterá sua saída mudada <strong>para</strong>“1” nos blocos PL ou“0” nos blocos PH,aí permanecendo, antes do fim da fase <strong>de</strong> “holding”, φ=”0”.Dem.: Aplicação do lema 3 N e da h TC .•Teorema 2 P . Consi<strong>de</strong>re um circuito RTS E-TSPC on<strong>de</strong> h TC é válida. Um bloco p-Dp <strong>de</strong>ste circuitoterá sua saída mudada <strong>para</strong>“1” nos blocos PL ou“0” nos blocos PH,


Implementação <strong>de</strong> Register Transfer Systems (RTS) <strong>de</strong> Alta Velocida<strong>de</strong> 73aí permanecendo, antes do fim da fase <strong>de</strong> “holding”, φ=”1”.Dem.: Aplicação do lema 3 P e da h TC .•Corolário 2 N . Consi<strong>de</strong>re um circuito RTS E-TSPC on<strong>de</strong> h EE e h TC são válidas. No fim da fase φ=”0”,os blocos estáticos que pertencem a algum n-data chain e antece<strong>de</strong>m algum bloco n-dinâmico ou n-Dp <strong>de</strong>ste “data chain” terão sua saída fixa (estável).Dem.: Aplicação do teorema 1 N e lema 4 N junto com h TC .•Corolário 2 P . Consi<strong>de</strong>re um circuito RTS E-TSPC on<strong>de</strong> h EE e h TC são válidas. No fim da fase φ=”1”,os blocos estáticos que pertencem a algum p-data chain e antece<strong>de</strong>m algum bloco p-dinâmico ou p-Dp <strong>de</strong>ste “data chain” terão sua saída fixa (estável)Dem.: Aplicação do teorema 1 P e lema 4 P junto com h TC .•Os dois últimos teoremas tratam <strong>de</strong> garantir que não haja transições que incorretamente<strong>de</strong>scarreguem os blocos dinâmicos e Dps.Teorema 3 N . Consi<strong>de</strong>re um circuito RTS E-TSPC on<strong>de</strong> h EE e h TC são válidas. Em um n-data chainqualquer na fase <strong>de</strong> avaliação, φ=”1”, serão possíveis apenas transições:“0”→ “1” nas entradas dos blocos n-dinâmicos ou dos blocos PL;“1”→ “0” nas entradas dos blocos PH.Dem.: Seja o bloco B 0 n-dinâmico ou PL. Vamos supor que haja na sua entrada uma transição do tipo“1”→“0” na fase φ=”1”. Mostraremos que tal suposição nos levará a um absurdo. Esta entrada nãopo<strong>de</strong>rá ser uma entrada externa do circuito pois estas, por h EE , <strong>de</strong>vem ser estáveis durante a faseφ=”1”. Ela estará então ligada a saída <strong>de</strong> um bloco B A1 . Este não po<strong>de</strong>rá ser um bloco:i. p-latch pois neste caso ele será o último bloco p-latch <strong>de</strong> um p-data chain e sua saída é fixa(teorema 1 P );ii. p-dinâmico ou p-Dp, pois os p-data chain que passariam por B A1 , terminando neste próprio bloco,não po<strong>de</strong>m possuir nenhum p-latch; r 5 não será obe<strong>de</strong>cida.iii. bloco n-latch (r 2 );iv. n-dinâmico ou PL (r 3a e r 3e ).As possibilida<strong>de</strong>s são <strong>de</strong> um bloco estático ou PH (n-Dp). Estes dois blocos ficam estáveis no fimda fase φ=”0”, corolário 2 N e teorema 2 N , e assim permanecerão na fase φ=”1”, a menos que hajauma transição em uma <strong>de</strong> suas entradas (pr 1 ). Assim <strong>para</strong> causar a transição “1”→“0” na saída <strong>de</strong> B A1


74Implementação <strong>de</strong> Register Transfer Systems (RTS) <strong>de</strong> Alta Velocida<strong>de</strong><strong>de</strong>veremos ter uma transição “0”→“1” em alguma <strong>de</strong> suas entradas. Novamente temos que esta entrada<strong>de</strong>ve estar ligada a um novo bloco B A2 . Com análise similar à apresentada antes, chegamos que o novobloco po<strong>de</strong>rá ser n-dinâmico, PL (n-Dp) ou estático. Um bloco n-dinâmico na avaliação, todavia,somente apresentará transição “1”→“0”, (pr 5 ), que não interessa aqui. Assim, restará <strong>para</strong> B A2 duaspossibilida<strong>de</strong>s, o bloco estáticos ou o PL. Estes blocos estavam estáveis no fim da fase φ=”0”, e assimpermanecerão durante a fase φ=”1” se não houver uma transição em uma <strong>de</strong> suas entradas. Para oresultado <strong>de</strong>sejado <strong>de</strong>vemos ter a transição “1”→“0”. Prosseguindo, será necessário um bloco B A3 ,estático ou PH (n-Dp), ligado a uma entrada <strong>de</strong> B A2 , um outro bloco B A4 , estático ou PL (n-Dp), ligadoa uma entrada <strong>de</strong> B A3 , etc. Este processo nunca chega a um fim o que é absurdo. Desta forma, éimpossível haver uma transição “1”→“0” na entrada <strong>de</strong> qualquer n-dinâmico ou PL (n-Dp), durante afase φ=”1”. Para os blocos PH (n-Dp), raciocínio similar nos leva a tese do teorema.•Teorema 3 P . Consi<strong>de</strong>re um circuito RTS E-TSPC on<strong>de</strong> h EE e h TC são válidas. Em um p-data chainqualquer na fase <strong>de</strong> avaliação, φ=”0”, serão possíveis apenas transições:“1”→ “0” nas entradas dos blocos p-dinâmicos ou dos blocos PH;“0”→ “1” nas entradas dos blocos PL.Dem.: Similar ao teorema 3 N .•O Teorema fundamental fica provado com os seis teoremas acima, teoremas 1 N , 1 P , 2 N , 2 P , 3 N e 3 P .As hipóteses do Teorema fundamental são, na verda<strong>de</strong>, as hipóteses h EE e h TC .2.3.4 Blocos N-MOS likeAs regras apresentadas permitem uma gran<strong>de</strong> flexibilida<strong>de</strong> na associação dos blocos, o que leva acircuitos mais compactos e rápidos. Uma dificulda<strong>de</strong> po<strong>de</strong> ser apontada, no entanto, quando lidamoscom <strong>alta</strong>s velocida<strong>de</strong>s. Os blocos p-dinâmicos têm a função lógica executada pela estrutura PUN,implementada com transistores P; os blocos p-latches, por sua vez, têm adicionado um transistor P,com o gate ligado ao clock, em série com a estrutura PUN. Como os transistores P são tipicamentemais lentos que os N, duas ou mais vezes, os p-data chains, on<strong>de</strong> encontramos os blocos p-dinâmicos ep-latches, serão, em conseqüência, mais lentos que os n-data chains. Isto acaba por restringir avelocida<strong>de</strong> máxima alcançada pelo circuito [Gu96]. Para contornar esta dificulda<strong>de</strong>, uma solução éreduzir ao mínimo os p-data chains, <strong>de</strong>ixando <strong>para</strong> os n-data chains toda a função <strong>de</strong> manipulaçãológica. Com isto ou se aumenta a profundida<strong>de</strong> lógica dos n-data chains, com a redução na velocida<strong>de</strong>,


Implementação <strong>de</strong> Register Transfer Systems (RTS) <strong>de</strong> Alta Velocida<strong>de</strong> 75ou se aumenta o número <strong>de</strong> data chains em série, a profundida<strong>de</strong> <strong>de</strong> “pipeline”, aumentando a área e oconsumo <strong>de</strong> potência do circuito.Aqui propomos uma solução diferente que possibilita a melhor utilização dos p-data chains. Comojá observamos, nos blocos utilizados a porção implementada com transistores P e a porçãoimplementada com transistores N trabalham <strong>de</strong> forma complementar (quando uma conduz a outra estácortada e vice-versa). Nos blocos p-dinâmicos isto é garantido através dos transistores com gatesconectados ao clock, Figura 7, e nos p-latches, através das estruturas PUN e PDN, Figura 14. Po<strong>de</strong>mosmodificar estes blocos suprimindo o transistor P ligado ao clock, no p-dinâmico, e a estrutura PUN, nop-latch. Os novos blocos resultantes terão o funcionamento correto garantido por meio dodimensionamento dos transistores restantes (ratioed). No caso dos blocos p-dinâmicos basta aumentara largura <strong>de</strong> canal do transistor N <strong>de</strong> forma que, toda vez que o sinal <strong>de</strong> clock esteja em nível alto, asaída será <strong>de</strong>scarregada, in<strong>de</strong>pen<strong>de</strong>ntemente dos valores aplicados às entradas do bloco. No caso dos p-latches, o transistor P <strong>de</strong>ve ser tal que sempre que a estrutura PDN conduza a saída será levada a V SS .Uma técnica semelhante, mas limitada, foi utilizada em [Ch96].As modificações sugeridas, com a retirada <strong>de</strong> transistores P, aumentam a velocida<strong>de</strong> dos blocosobtidos pois diminui o número <strong>de</strong> transistores em série. Em particular no novo bloco p-latch restaráapenas um transistor P e a função lógica será executada por transistores N, redundando num aumentoconsi<strong>de</strong>rável da velocida<strong>de</strong>. Um procedimento análogo po<strong>de</strong> ser aplicado também aos blocos n-dinâmicos e n-latches, mas as vantagens aí não são sempre expressivas. Chamaremos estes novosblocos <strong>de</strong> N-MOS like.A Figura 20 mostra os blocos originais e os blocos N-MOS like que po<strong>de</strong>m ser construídos. Comodissemos, o correto funcionamento <strong>de</strong>stes blocos N-MOS like <strong>de</strong>pen<strong>de</strong> essencialmente das dimensõesdos transistores. Na Figura 20 também é apontada qual porção do bloco <strong>de</strong>ve predominar (elementoem negrito nos blocos N-MOS like) quando existem caminhos ligando a saída tanto a V DD como a V SS .A Tabela 3 resume as condições que <strong>de</strong>vem ser obe<strong>de</strong>cidas por estes blocos <strong>para</strong> que a sua operaçãoseja igual a dos blocos CMOS originais.


76Implementação <strong>de</strong> Register Transfer Systems (RTS) <strong>de</strong> Alta Velocida<strong>de</strong>V DD V DD V DDentradaclocksaídaPDNtrans. NentradaclocksaídaPDNtrans. NclockentradaPUNtrans. PsaídaV DDV SS V SSentradaPUNtrans. PsaídaclockclockclockV SSV SSa) b)c)d)V DD V DD V DD V DDentradaclockPUNtrans. PPDNtrans. NsaídaentradaclockPUNtrans. PsaídaentradaclockPUNtrans. PsaídaentradaPDNtrans. NclockPDNtrans. NsaídaV SS V SS V SS V SSe) f)g)h)Figura 20. Conversão <strong>de</strong> blocos <strong>para</strong> blocos N-MOS like: (a), bloco n-dinâmico e (b), bloco n-dinâmico N-MOS like; (c), bloco p-dinâmico e (d), bloco p-dinâmico N-MOS like; (e), bloco n-latch e(f), bloco n-latch N-MOS like; (g), bloco p-latch e (h), bloco p-latch N-MOS like.O ganho <strong>de</strong> velocida<strong>de</strong> que os novos blocos proporcionam é acompanhado <strong>de</strong> um aumento napotência consumida. Este aumento ocorre <strong>de</strong>vido à condução, ao mesmo tempo, das duas porções dobloco. O quanto aumenta a potência <strong>de</strong>pen<strong>de</strong> da freqüência do clock e da ativida<strong>de</strong> do bloco.Agora consi<strong>de</strong>remos as 10 proprieda<strong>de</strong>s listadas anteriormente e que são usadas nas <strong>de</strong>monstraçõesdos teoremas. Os blocos N-MOS like, uma vez projetados conforme as condições da Tabela 3, têm asmesmas proprieda<strong>de</strong>s dos blocos originais e, <strong>de</strong>sta forma, nas regras dadas, po<strong>de</strong>m substituir emqualquer posição os blocos originais. Com isso ganhamos maior flexibilida<strong>de</strong> <strong>de</strong> <strong>projeto</strong> e ficamoslivres <strong>para</strong> usar os blocos N-MOS like apenas nos data chains on<strong>de</strong> há problemas com a velocida<strong>de</strong>.Resultam então, a partir do uso conscencioso dos novos blocos, circuitos on<strong>de</strong> a velocida<strong>de</strong> é <strong>alta</strong> emesmo o consumo <strong>de</strong> potência é reduzido. Veremos isto nos circuitos <strong>de</strong> testes implementados eexpostos no capítulo quatro.Tabela 3. Condições que <strong>de</strong>terminarão o dimensionamento dos transistores dos blocos N-MOS like.bloco clock= nível alto clock= nível baixoN-MOS liken-dinâmicoN-MOS likep-dinâmiconenhumasaída <strong>de</strong>ve ser baixa, in<strong>de</strong>pen<strong>de</strong>nte dasentradassaída <strong>de</strong>ve ser <strong>alta</strong>, in<strong>de</strong>pen<strong>de</strong>nte dasentradasnenhuma


Implementação <strong>de</strong> Register Transfer Systems (RTS) <strong>de</strong> Alta Velocida<strong>de</strong> 77N-MOS liken-latchN-MOS likep-latchsaída <strong>de</strong>ve ser <strong>alta</strong> se a estruturaPUN está conduzindo; casocontrário, baixanenhumanenhumasaída <strong>de</strong>ve ser baixa se a estruturaPDN está conduzindo; caso contrário,<strong>alta</strong>2.3.5 Regra <strong>de</strong> ExceçãoAs regras dadas acima impe<strong>de</strong>m que haja certos erros no circuito que lhes obe<strong>de</strong>ce; elas sãosuficientes. Por outro lado, po<strong>de</strong> haver circuitos, e há, que mesmo não obe<strong>de</strong>cendo a algumas <strong>de</strong>las,executam a função que <strong>de</strong>les é esperada. As regras dadas não são, portanto, necessárias. Asconfigurações apresentadas nas Figuras 17 e 18, quanto funcionam, são exemplos <strong>de</strong>stes circuitos.Consi<strong>de</strong>remos a configuração da Figura 17. Aqui os p-data chain, um formado por B L1 e o outropor B L4 , têm apenas um bloco, uma violação <strong>de</strong> r 5 . Conseqüentemente não po<strong>de</strong>mos assegurar h 4 , e assaídas dos p-latches não são mantidas durante a fase <strong>de</strong> holding. Apesar disso, os n-data chainsfuncionam perfeitamente.Po<strong>de</strong>mos introduzir uma regra <strong>de</strong> exceção que permita configurações semelhantes àquelas dasFiguras 17 e 18. Antes disso observemos mais atentamente o que ocorre nos dois exemplos. Trêscaracterísticas são essenciais <strong>para</strong> o funcionamento <strong>de</strong>les:i. a saída do data chain que não segue as regras r 1 -r 5 (chamaremos este data chain <strong>de</strong> S E ) somentepo<strong>de</strong> ter um tipo <strong>de</strong> transição na fase <strong>de</strong> holding, seja a transição “0”→”1”, seja a transição“1”→”0”;ii. os blocos ligados à saída <strong>de</strong>ste data chain <strong>de</strong>vem ser insensíveis, durante a sua avaliação, a estatransição;iii. a saída do data chain S E <strong>de</strong>ve permanecer fixa durante o início da sua fase <strong>de</strong> holding, ao menostempo suficiente <strong>para</strong> que os blocos ligados a esta saída possam ser corretamente avaliados.Na Figura 17, por exemplo, a saída do bloco B L4 , um p-latch, durante o holding só po<strong>de</strong> ter atransição “1”→”0”; o bloco B L5 , um bloco n-dinâmico, não tem, por sua vez, sua saída modificadapela transição “1”→”0”. Ainda, o valor lógico do nó b 1 <strong>de</strong>ve ser mantido durante o início da fase <strong>de</strong>holding, ao menos por tempo suficiente <strong>para</strong> que o bloco B L5 avalie corretamente. Na Figura 18, em a 1somente po<strong>de</strong> haver, na fase <strong>de</strong> holding dos n-data chains, transições “0”→”1” e esta transição nãoafeta o bloco p-dinâmico B L2 . Deve também ser mantido o valor lógico <strong>de</strong> a 1 , durante o holding, portempo suficiente <strong>para</strong> que B L2 avalie corretamente.


78Implementação <strong>de</strong> Register Transfer Systems (RTS) <strong>de</strong> Alta Velocida<strong>de</strong>As duas primeiras <strong>de</strong>stas características po<strong>de</strong>m ser facilmente garantidas pois <strong>de</strong>pen<strong>de</strong>m apenas <strong>de</strong>como são associados os blocos. Para este fim <strong>de</strong>vemos ter as seguintes características:a. S E possuir ao menos um bloco dinâmico ou um latch (o último bloco dinâmico ou latch <strong>de</strong> S E seráchamado <strong>de</strong> B F );b. serem os blocos ligados a saída <strong>de</strong> S E , e pertencentes a um data chain <strong>de</strong> tipo diferente <strong>de</strong> S E , ouDp ou dinâmico (estes blocos serão chamados <strong>de</strong> blocos B i s);c. haver entre B F e cada bloco B i um número <strong>de</strong> inversões regido pela Tabela 4.Veja que (a) garante que a saída do data chain S E tenha apenas um tipo <strong>de</strong> transição no holding(pr 3,4,9,10 ); (b), por sua vez, garante que o bloco ligado a saída do data chain não seja afetado por certotipo <strong>de</strong> transição; (c), finalmente, garante que a transição possível na saída do data chain S E e atransição que não afeta os blocos aí ligados, (b), são as mesmas.A terceira característica necessária <strong>para</strong> o data chain S E <strong>de</strong>pen<strong>de</strong> não só da associação dos blocosmas também dos atrasos <strong>de</strong>stes.Tabela 4. Número <strong>de</strong> blocos estáticos e Dps (estes pertencendo a S E ) entre o bloco B F e o bloco B i<strong>para</strong> o data chain S E .B F n-dinâmico n-latch p-dinâmico p-latchB iPH par par ímpar ímparPL ímpar ímpar par parn-dinâmico n.p. n.p. par parp-dinâmico par par n.p. n.p.n.p.: ligações que não são permitidas;par: <strong>de</strong>ve haver um número par <strong>de</strong> blocos;ímpar: <strong>de</strong>ve haver um número ímpar <strong>de</strong> blocos.Consi<strong>de</strong>remos agora a regra chamada <strong>de</strong> regra <strong>de</strong> exceção.Regra <strong>de</strong> Exceção (r E ): Seja o data chain S E com as seguintes características:i. S E possuir ao menos um bloco dinâmico ou um latch (o último bloco dinâmico ou latch <strong>de</strong> S E seráchamado <strong>de</strong> B F );


Implementação <strong>de</strong> Register Transfer Systems (RTS) <strong>de</strong> Alta Velocida<strong>de</strong> 79ii. serem os blocos ligados a saída <strong>de</strong> S E , e pertencentes a um data chain <strong>de</strong> tipo diferente <strong>de</strong> S E , ouDp ou dinâmico (estes blocos serão chamados <strong>de</strong> blocos B i s);iii. haver entre B F e cada bloco B i um número <strong>de</strong> inversões regido pela Tabela 4.Neste caso, se a saída <strong>de</strong> S E permanecer fixa durante o início da sua fase <strong>de</strong> holding, ao menos temposuficiente <strong>para</strong> que todos os blocos B i s possam avaliar corretamente, então o data chain S E nãoprecisará obe<strong>de</strong>cer à r 4 e à r 5 .Esta nova regra exige, antes <strong>de</strong> mais nada, que façamos uma nova <strong>de</strong>finição <strong>para</strong> o circuito RTS queanalisamos. Para diferenciar da <strong>de</strong>finição anterior falaremos agora <strong>de</strong> circuito RTS E-TSPC’.Definição 14: Um circuito C E será chamado <strong>de</strong> circuito RTS E-TSPC’ se <strong>para</strong> qualquer spp S q <strong>de</strong> C Eocorre que:i. existe um n-data chain D Ni <strong>de</strong> C E tal que S q ⊆ D Ni , se o spp for formado por apenas blocos n-dinâmicos, n-Dps e n-latches, ao menos um <strong>de</strong>sses, e mais blocos estáticos;ii. existe um p-data chain D Pi <strong>de</strong> C E tal que S q ⊆ D pi , se o spp for formado por apenas blocos p-dinâmicos, p-Dps e p-latches, ao menos um <strong>de</strong>sses, e mais blocos estáticos;iii. existe um p-data ou um n-data chain D i <strong>de</strong> C E tal que S q ⊆ D i , se o spp for formado por apenasblocos estáticos;iv. as regras r 1 -r 5 ou as regras r 1 -r 3 e r E são observadas <strong>para</strong> todos os data chains;v. todas as entradas do circuito são entradas externas.Po<strong>de</strong>mos provar <strong>para</strong> o circuito RTS E-TSPC’ um teorema similar ao teorema fundamentalmostrado anteriormente. Ele é enunciado abaixo.Teorema fundamental <strong>para</strong> os circuitos RTS E-TSPC’: Consi<strong>de</strong>re um circuito RTS E-TSPC’ C E . Seas entradas externas forem convenientes, o “clock” tiver o período longo suficiente e se todo circuitoestiver estável uma vez no início <strong>de</strong> seu funcionamento, então:i. a saída do último “latch” <strong>de</strong> um “data chain” que obe<strong>de</strong>ce às regras r 1 -r 5 fica inalterada durantea fase <strong>de</strong> “holding” <strong>de</strong>ste;ii. os blocos Dps fazem a correta pré-carga durante a fase <strong>de</strong> “holding” do “data chain” a quepertencem;iii. os blocos dinâmicos e os blocos Dps não são <strong>de</strong>scarregados in<strong>de</strong>vidamente durante a fase <strong>de</strong>avaliação do “data chain” a que pertencem.Para a prova <strong>de</strong>ste teorema são usados os mesmos passos que os dados acima. As diferenças queaparecem são:


80Implementação <strong>de</strong> Register Transfer Systems (RTS) <strong>de</strong> Alta Velocida<strong>de</strong>a. nos teoremas, lemas e corolários <strong>de</strong>vemos dizer que a saída do último latch é estável no holdingapenas nos data chains que obe<strong>de</strong>cem à r 1 -r 5 , seja isto usado na hipótese ou na tese <strong>de</strong>stes;b. as <strong>de</strong>monstrações dos lemas 1 N e 1 P <strong>de</strong>vem levar em consi<strong>de</strong>ração os data chains que nãoobe<strong>de</strong>cem à r 4 e r 5 . O mesmo <strong>para</strong> os teoremas 3 N e 3 P .Procuremos agora <strong>de</strong>terminar quais condições são necessárias <strong>para</strong> que os blocos B i s da regra <strong>de</strong>exceção r E tenham tempo <strong>para</strong> avaliar corretamente. Consi<strong>de</strong>remos inicialmente as <strong>de</strong>finições abaixo.Definição 15: Consi<strong>de</strong>re um bloco B Γ não estático complementar que pertence a um Γ-“data chain”(<strong>de</strong>verá ser um bloco Dp, Γ-dinâmico ou Γ-"latch"). Sejam D Γ1 , D Γ2 , ..., D Γn todos os Γ-"datachains" que passam por B Γ . Chamaremos <strong>de</strong> atraso <strong>de</strong> avaliação <strong>de</strong> B Γ , ∆ EBΓ , ao máximo dos ∆ i s,<strong>para</strong> i=1, ...n, on<strong>de</strong>∆ i =(máximo atraso entre a aplicação <strong>de</strong> um sinal na entrada do primeiro bloco não estático do“data chain” D Γi e a mudança causada na saída <strong>de</strong> B Γ , estando o Γ-“data chain” em avaliação).Definição 16: Consi<strong>de</strong>re um Γ-"data chain" qualquer que obe<strong>de</strong>ce às regras <strong>de</strong> composição (r 1 -r 5 ).Existirá ao menos um Γ-"latch" que é precedido por ou outro Γ-"latch" ou um Γ-dinâmico, havendoentre este e aquele um número ímpar <strong>de</strong> inversões (r 4 ou r 5 ). O primeiro “latch”, consi<strong>de</strong>rado daentrada <strong>para</strong> a saída do "data chain", que observa esta condição será chamado <strong>de</strong> "true-latch" do"data chain".Definição 17: Consi<strong>de</strong>re um Γ-"data chain" D Γ qualquer e o bloco B Γ , o primeiro bloco não estáticocomplementar que pertence ao “data chain” (<strong>de</strong>verá ser um bloco Dp, Γ-dinâmico ou Γ-"latch").Consi<strong>de</strong>re todos os “data chains” que terminam na entrada <strong>de</strong> B Γ por on<strong>de</strong> passa D Γ (todos <strong>de</strong> tipodiferente <strong>de</strong> Γ), D Γ1, D Γ2, ..., D Γ n. Suponha que todos esses obe<strong>de</strong>çam as regras <strong>de</strong> composição (r 1 -r 5 ). Chamaremos <strong>de</strong> atraso <strong>de</strong> avaliação no data chain prece<strong>de</strong>nte a D Γ , ∆ PDΓ , ao mínimo dos ∆ i s,<strong>para</strong> i=0, ...n, on<strong>de</strong>∆ i =(mínimo atraso entre a aplicação <strong>de</strong> um sinal na entrada do "true-latch", se D Γiobe<strong>de</strong>ce à r 1 -r 5 ,ou na entrada do último latch/porta dinâmica, se D Γiobe<strong>de</strong>ce à r E , e a mudança causada na saída do"data chain" D Γ i, estando o Γ -"data chain" em avaliação).Pois bem, seja S E um data chain que não obe<strong>de</strong>ça a r 4 e r 5 mas sim as condições (i), (ii) e (iii) <strong>de</strong> r E .Sejam B i s os blocos ligados a saída <strong>de</strong> S E e que pertençam a um data chain <strong>de</strong> tipo diferente <strong>de</strong> S E .Po<strong>de</strong>mos garantir que os blocos B i s avaliam corretamente se <strong>para</strong> todo B i


Implementação <strong>de</strong> Register Transfer Systems (RTS) <strong>de</strong> Alta Velocida<strong>de</strong> 81i. (atraso entre a saída do bloco B D até a saída <strong>de</strong> S E ) >> (atraso <strong>de</strong> avaliação <strong>de</strong> B i ), on<strong>de</strong> B D éo último bloco dinâmico <strong>de</strong> S E , mais próximo a saída, <strong>para</strong> o caso <strong>de</strong> S E possuir um blocodinâmico;ii. (atraso <strong>de</strong> avaliação no data chain prece<strong>de</strong>nte a S E ) + (atraso entre a entrada do primeirobloco não estático complementar e a saída <strong>de</strong> S E ) >> (atraso <strong>de</strong> avaliação <strong>de</strong> B i ), <strong>para</strong> o casocontrário.O uso da regra <strong>de</strong> exceção é <strong>de</strong>licada e só aconselhada <strong>para</strong> o caso do D-flip-flop da Figura 17. Foiem razão <strong>de</strong>ste circuito que procuramos introduzi-la.2.3.6 Com<strong>para</strong>ções e conclusões sobre o E-TSPCCom<strong>para</strong>ndo as regras <strong>de</strong> composição aqui apresentadas com as <strong>de</strong> [La95], Figura 16, encontramosas seguintes diferenças:• em nosso trabalho fizemos a distinção entre dois tipos <strong>de</strong> entradas nos blocos Dps: as entradas queajudam na pré-carga da porta, chamadas <strong>de</strong> pc-entradas, e aquelas que não ajudam. As não pcentradastêm condições <strong>de</strong> conexão mais simples que as outras. A conexão entre os blocos B B e B Dna Figura 19 é um exemplo <strong>de</strong> ligação permitida por nós e proibida por [La95]. Esta diferença édas menos importantes pois os blocos Dps são, no geral, <strong>de</strong> difícil aplicação;• em nossas regras a colocação dos blocos estáticos é mais liberal: em [La95] estes blocos po<strong>de</strong>mestar apenas após certos latches (Figura 16). No exemplo da Figura 19, as ligações entre os blocosB I e B G , entre B E e B G e entre os blocos B J e B M são conexões aceitas em nosso trabalho e queestão excluídos <strong>de</strong> [La95].Por outro lado, todas as ligações permitidas em [La95] são também aceitas em nosso trabalho. Emalguns casos a regra <strong>de</strong> exceção <strong>de</strong>ve ser aplicada. Adicionalmente, propomos blocos modificados, asversões N-MOS like dos blocos dinâmicos e latches, que não foram consi<strong>de</strong>rados anteriormente.Quanto aos latches apontados na Figura 11, que fazem parte da técnica TSPC, po<strong>de</strong>mos fazer osmesmos comentários já apresentados: apesar <strong>de</strong> não po<strong>de</strong>rem ser construídos com os blocos do E-TSPC, sua introdução em um circuito é tarefa simples uma vez que são latches verda<strong>de</strong>iros.Concluindo, apresentamos aqui blocos e regras <strong>de</strong> composição <strong>para</strong> <strong>projeto</strong> <strong>de</strong> circuitos RTS <strong>de</strong>uma única fase. Os blocos e as regras permitem configurações mais gerais do que aquelas jáapresentadas na literatura. Por esta razão chamamos a técnica <strong>de</strong> Exten<strong>de</strong>d-TSPC.Um comentário final a respeito dos teoremas e <strong>de</strong>monstrações <strong>de</strong>ste capítulo. Procuramos aqui<strong>de</strong>senvolvê-los da forma mais rigorosa possível e a conseqüência disso foi a necessida<strong>de</strong> <strong>de</strong> umnúmero gran<strong>de</strong> <strong>de</strong> teoremas, lemas e corolários.


Otimização <strong>de</strong> Tapered Buffers <strong>para</strong> <strong>alta</strong>s taxas <strong>de</strong> operação 833. Otimização <strong>de</strong> Tapered Buffers <strong>para</strong> <strong>alta</strong>s taxas <strong>de</strong> operação3.1 IntroduçãoTapered buffers, como apresentado na Figura 21, consistem <strong>de</strong> uma ca<strong>de</strong>ia <strong>de</strong> inversores com umfator <strong>de</strong> aumento, normalmente constante, entre um inversor e outro. Estas estruturas são empregadas<strong>para</strong> diversas funções <strong>de</strong>ntro dos circuitos integrados, servindo, sobretudo, <strong>para</strong> amplificar sinaispequenos e drenar cargas capacitivas elevadas. Exemplos do primeiro tipo <strong>de</strong> aplicação sãoapresentados no conversor A/D <strong>de</strong> [Ku86] e no circuito <strong>de</strong> entrada <strong>de</strong> [St91]; exemplos do segundotipo são os buffers <strong>para</strong> distribuição <strong>de</strong> sinais ([Fr95]), on<strong>de</strong> a carga capacitiva é interno ao C.I., e osbuffers <strong>de</strong> saída <strong>para</strong> sinais digitais, on<strong>de</strong> a carga capacitiva é externa ao C.I..Os primeiros estudos sobre tapered buffers apareceram há mais <strong>de</strong> 20 anos [Li75]. Nos dias <strong>de</strong> hoje,sua principal aplicação é, sem dúvida, a distribuição do sinal <strong>de</strong> clock <strong>de</strong>ntro <strong>de</strong> circuitos integrados[Fr95]. Em microprocessadores <strong>de</strong> alto <strong>de</strong>sempenho, por exemplo, uma porção consi<strong>de</strong>rável da área eda potência são consumidas nesta tarefa ([Gr98] e [Do92]). Seja qual for o emprego do tapered buffer,um dos objetivos principais é, no geral, o aumento da velocida<strong>de</strong> dos sinais no C.I..V 0 V 1V 2 V N-1 V Nsaídaentrada1 2 N-1 NC LFigura 21. Ilustração <strong>de</strong> um tapered buffer com N inversores. O nó <strong>de</strong> saída tem uma capacitância <strong>de</strong>carga C L .Neste capítulo discutiremos a otimização <strong>de</strong> tapered buffers com o objetivo <strong>de</strong> atingir maioresvelocida<strong>de</strong>s. Veremos que a minimização do atraso total do buffer, em certas aplicações, po<strong>de</strong> ser<strong>de</strong>ixada <strong>para</strong> segundo plano. Iremos então propor um novo critério <strong>para</strong> <strong>projeto</strong> <strong>de</strong> buffers, passagem<strong>de</strong> pulsos o mais estreitos possível, e mostrar, por meio <strong>de</strong> simulações, que ele permite aumentosconsi<strong>de</strong>ráveis na velocida<strong>de</strong>, <strong>de</strong>s<strong>de</strong> que seja possível aplicá-lo. Por fim discutiremos o problema docasamento dos inversores e como variam, em conseqüência <strong>de</strong>ste, os atrasos causados pelos taperedbuffers. Como veremos, o controle <strong>de</strong>stes atrasos é importante <strong>para</strong> a utilização do critério aquiproposto.


84Otimização <strong>de</strong> Tapered Buffers <strong>para</strong> <strong>alta</strong>s taxas <strong>de</strong> operação3.2 Critérios clássicos <strong>para</strong> otimização <strong>de</strong> Tapered BuffersO <strong>projeto</strong> <strong>de</strong> um tapered buffer envolve a <strong>de</strong>terminação do fator <strong>de</strong> aumento entre os inversores(tapering factor), que chamaremos <strong>de</strong> χ, e do número <strong>de</strong> inversores a ser empregado, dadas asdimensões do primeiro inversor e a carga capacitiva da saída do buffer, C L .Quando são examinados circuitos <strong>de</strong> <strong>alta</strong> velocida<strong>de</strong>, o principal critério <strong>para</strong> <strong>de</strong>terminação do fator<strong>de</strong> aumento é a minimização do atraso entre a entrada e a saída do buffer, ou simplesmente o atraso dobuffer. Este mesmo critério já era empregado em [Li75].Po<strong>de</strong>mos calcular o fator <strong>de</strong> aumento ótimo que minimiza este atraso. Antes <strong>de</strong> prosseguirmos,porém, daremos o significado <strong>de</strong> alguns símbolos que serão usados neste capítulo. Chamaremos <strong>de</strong>:N o número <strong>de</strong> inversores do tapered buffer (ver Figura 21);C oxi a capacitância, por unida<strong>de</strong> <strong>de</strong> área, no gate dos transistores P e N do i-ésimo inversor;L ni e L pi o comprimento <strong>de</strong> canal dos transistores N e P, respectivamente, do i-ésimo inversor;W ni e W pi a largura <strong>de</strong> canal dos transistores N e P, respectivamente, do i-ésimo inversor;C Li a capacitância <strong>de</strong> carga do i-ésimo inversor;µ ni e µ pi a mobilida<strong>de</strong> dos elétrons e das lacunas nos transistores N e P, respectivamente, do i-ésimoinversor;V Tni e V Tpi a tensão <strong>de</strong> limiar dos transistores N e P, respectivamente, do i-ésimo inversor.Consi<strong>de</strong>ramos ainda válidas as seguintes relações:Lni = Lpi = Li; W = W ; W = θ W(1)niipiiPara o cálculo do fator ótimo, o que minimiza o atraso do buffer, é necessário conhecer o atrasocausado por cada um <strong>de</strong> seus inversores. Usaremos, <strong>para</strong> este fim, as relações propostas por [Sa90],que levam em consi<strong>de</strong>ração efeitos <strong>de</strong> canal curto, importantes <strong>para</strong> as tecnologias mo<strong>de</strong>rnas. Assimpor [Sa90] temos que:⎛ 1 1TiCLiVtpHLi, tpLHi= − − ν ⎞⎜ ⎟ tTi−1+⎝ 2 1+α ⎠ 2IDDD0i(2)tTiCV ⎛ VLi DD09 .= +I ⎜D0i⎝ 08 . 08 . V10V⎞D iln eV ⎟(3)DD ⎠D0i0DDI( )WiL P V V0= −D iiCi DD Tiα(4)


Otimização <strong>de</strong> Tapered Buffers <strong>para</strong> <strong>alta</strong>s taxas <strong>de</strong> operação 85on<strong>de</strong>: t pHLi é o atraso na transição <strong>de</strong> alto-<strong>para</strong>-baixo (<strong>de</strong>scarga) da saída do i-ésimo inversor; <strong>para</strong> ocálculo <strong>de</strong> t pHLi os parâmetros do transistor N são aplicados na fórmula (2), e os parâmetros do P, nafórmula (3);t pLHi é o atraso na transição <strong>de</strong> baixo-<strong>para</strong>-alto (carga) da saída do i-ésimo inversor; <strong>para</strong> o cálculo <strong>de</strong>t pLHi os parâmetros do transistor P são aplicados na fórmula (2), e os parâmetros do N, na fórmula(3);t Ti é o tempo <strong>de</strong> transição efetivo do sinal na saída do i-ésimo inversor;P Ci é um parâmetro do transistor P ou N; usaremos aqui que PCi = KCiµ iCoxion<strong>de</strong> K Ci é outroparâmetro e µ i , a mobilida<strong>de</strong> dos portadores do transistor;V D0i é a tensão <strong>de</strong> dreno <strong>de</strong> saturação quando V GSi =V DD <strong>para</strong> o transistor utilizado na equação (P ouN). V GSi é a tensão entre gate e fonte;ν Ti =|V Ti /V DD |. V Ti é a tensão <strong>de</strong> limiar do transistor utilizado na equação (P ou N);α é uma constante que está entre 1 e 2.Para o caso i<strong>de</strong>al <strong>de</strong> tapered buffer, on<strong>de</strong> não há mismatch dos parâmetros e eles têm exatamente ovalor com que foram projetados, são válidas as seguintes relações:C oxi =C ox L i =L V Tni =V Tn V Tpi =V Tp V D0ni =V D0n V D0pi =V D0pWii−= χ 1 W K = K K = K µ = µ µ = µ(5)CniCnCpiCpninpipPara a aplicação das relações do atraso, <strong>de</strong>vemos <strong>de</strong>terminar o valor da capacitância <strong>de</strong> carga <strong>de</strong>cada inversor, C Li . Para este fim faremos três hipótese:i. as capacitâncias das conexões que ligam dois inversores são muito reduzidas (<strong>de</strong>sprezíveis) emcom<strong>para</strong>ção com as capacitâncias <strong>de</strong> gate e com as capacitâncias <strong>de</strong> junção <strong>de</strong> dreno dostransistores;ii. as capacitâncias <strong>de</strong> gate são constantes, não <strong>de</strong>pen<strong>de</strong>ndo do estado do transistor;iii. as capacitâncias <strong>de</strong> junção <strong>de</strong> dreno são constantes e diretamente proporcionais à largura <strong>de</strong> canaldo transistor.Estas hipóteses servem <strong>para</strong> simplificar os resultados e são normalmente adotadas [He87]. Pelahipótese i acima po<strong>de</strong>remos então escrever que( + ) ( + )CLi = Cgni 1+ Cdni + Cgpi 1+ Cdpi<strong>para</strong> 1 ≤ i < N e C = C + C + CLN dnN dpN Lon<strong>de</strong>: C gni e C gpi são as capacitâncias <strong>de</strong> gate dos transistores N e P, respectivamente, do i-ésimoinversor;C dni e C dpi são as capacitâncias <strong>de</strong> junção <strong>de</strong> dreno dos transistores N e P, respectivamente, do i-ésimo inversor.


86Otimização <strong>de</strong> Tapered Buffers <strong>para</strong> <strong>alta</strong>s taxas <strong>de</strong> operaçãoCCAs capacitâncias <strong>de</strong> gate e dreno são (hipótese iii):= C W LC = C W L = θ C W Lgni oxi ni igpi oxi pi i oxi ni i= W KC = W K = θ W Kdni ni DSndpi pi DSp ni DSpon<strong>de</strong> K DSn e K DSp são parâmetros que <strong>de</strong>pen<strong>de</strong>m do processo e do layout.Por simplicida<strong>de</strong> vamos usar que K DSn =K DSp =K DS . Por fim, a partir das relações acima, teremos que( )( )CLi = 1+ θ KDSWi + Wi + 1Li + 1Coxi+ 1<strong>para</strong> 1≤i


Otimização <strong>de</strong> Tapered Buffers <strong>para</strong> <strong>alta</strong>s taxas <strong>de</strong> operação 87tdi2V L ⎛ K ⎞DD DS( 1 θ) ⎜ χ⎟ ( FD VTn VTp VD0n KCn + FD VTp VTnVD 0p θKCp)= td= + +2 ⎝ LCox⎠( , , , ) ( , , ) (11)on<strong>de</strong> t dé o atraso do i-ésimo inversor, 1


88Otimização <strong>de</strong> Tapered Buffers <strong>para</strong> <strong>alta</strong>s taxas <strong>de</strong> operaçãoNa Figura 22 é mostrado χ ot em função da razão K DS. O fator <strong>de</strong> aumento ótimo <strong>para</strong> K DS =0,LCoxsituação em que as capacitâncias <strong>de</strong> dreno são <strong>de</strong>sprezíveis, é χ ot =e=2,714, o mínimo valor <strong>para</strong> χ ot eque coinci<strong>de</strong> com o resultado clássico.fator <strong>de</strong> aumento ótimo5432100 2,7180,2 2,910,4 3,090,6 3,2660,8 3,431 3,591,2 3,751,4 3,891,6 4,041,8 4,182 4,320 0,5 1 1,5razão entre capacitância <strong>de</strong> dreno e capacitância <strong>de</strong>2gateFigura 22. Gráfico mostrando o fator <strong>de</strong> aumento que minimiza o atraso total <strong>de</strong> um tapered buffercomo função da razão K DS.LCoxEm trabalhos mais recentes, não só o atraso mas também outros fatores, tais como potênciaconsumida, área do buffer e confiabilida<strong>de</strong>, são consi<strong>de</strong>rados <strong>para</strong> a otimização. Neste caso, pesosdiferentes são associados a cada um <strong>de</strong>stes fatores. O valor ótimo do fator <strong>de</strong> aumento, então, varia <strong>de</strong>acordo com os pesos e com a tecnologia analisada ([He87], [La88], [Ch95]).3.3 Novo critério <strong>para</strong> otimização <strong>de</strong> Tapered Buffers <strong>para</strong> <strong>alta</strong>s taxasVamos nos concentrar, daqui <strong>para</strong> frente, em circuitos on<strong>de</strong> a máxima taxa <strong>de</strong> operação é o aspectoprioritário. Observemos que a minimização do atraso do buffer, <strong>para</strong> várias aplicações, não é <strong>de</strong> fatoimportante <strong>para</strong> alcançar a máxima velocida<strong>de</strong>. Um exemplo <strong>de</strong>stes é o <strong>de</strong>multiplexador <strong>de</strong> <strong>alta</strong>velocida<strong>de</strong> indicado na Figura 23 [Ro95b]. Neste circuito, tapered buffers são usados na distribuiçãodo clock e também <strong>para</strong> o sinal <strong>de</strong> dado <strong>de</strong> entrada (o sinal a ser <strong>de</strong>multiplexado). Des<strong>de</strong> que os atrasos<strong>de</strong>stes buffers, o do dado e os do clock, sejam iguais, não importa o seu valor. O que se <strong>de</strong>seja é que osbuffers permitam a passagem <strong>de</strong> pulsos rápidos ou estreitos, que é a mesma coisa. Veja, portanto, quenão há verda<strong>de</strong>iramente imposição alguma <strong>para</strong> a minimização do atraso e, além disso, o buffer commínimo atraso não é, necessariamente, o melhor <strong>para</strong> o circuito.


Otimização <strong>de</strong> Tapered Buffers <strong>para</strong> <strong>alta</strong>s taxas <strong>de</strong> operação 89dadotapered bufferclocktapered bufferC.I.<strong>de</strong>m ultiplexadorFigura 23. Demultiplexador 1:8 com tapered buffers <strong>para</strong> o dado e <strong>para</strong> o clock [Ro95b].O que foi dito acima nos traz imediatamente duas questões: qual <strong>de</strong>ve ser o critério <strong>para</strong> otimização<strong>de</strong> tapered buffers <strong>para</strong> circuitos <strong>de</strong> <strong>alta</strong> velocida<strong>de</strong> on<strong>de</strong> o atraso total não é importante? Qual é o fator<strong>de</strong> aumento ótimo resultante do uso <strong>de</strong>ste novo critério?Procuramos respon<strong>de</strong>r essas questões nesta seção.3.3.1 Novo critério: sinal <strong>de</strong> teste e <strong>de</strong>finição <strong>de</strong> passagem do sinalEm aplicações on<strong>de</strong> o atraso não é importante, <strong>de</strong>vemos usar um novo critério <strong>para</strong> alcançar amáxima taxa <strong>de</strong> operação, como visto. O critério imediato é que o buffer permita a passagem <strong>de</strong> sinaisdigitais <strong>de</strong> maior freqüência ou, que é o mesmo, que o buffer permita a propagação dos pulsos o maisestreitos possível. Detalharemos melhor este novo critério <strong>de</strong> otimização.Primeiro <strong>de</strong>vemos <strong>de</strong>finir qual o sinal <strong>de</strong> entrada a ser aplicado no buffer <strong>para</strong> avaliá-lo. A opçãomais simples é uma onda quadrada. Outra possibilida<strong>de</strong> é o uso <strong>de</strong> uma seqüência <strong>de</strong> pulsos “0s” e“1s” previamente escolhida. Neste caso é recomendável que a seqüência tenha ao menos um pulsoisolado no nível alto, como em “000100”, e outro no nível baixo, como em “111011”. Estes pulsosisolados são os que têm maior dificulda<strong>de</strong> <strong>de</strong> passagem e, portanto, servem melhor <strong>para</strong> avaliar obuffer. Destas duas alternativas, a melhor escolha <strong>de</strong>pen<strong>de</strong>rá da aplicação <strong>de</strong>stinada ao tapered buffer.No caso <strong>de</strong>le ser usado apenas <strong>para</strong> a distribuição do clock, não temos razões <strong>para</strong> aplicar outro sinalque não uma onda quadrada. No exemplo apresentado na Figura 23, on<strong>de</strong> por buffers iguais passamtanto o sinal <strong>de</strong> clock como o <strong>de</strong> dados, uma seqüência <strong>de</strong> “1s” e “0s” na entrada será a melhor opção<strong>de</strong> teste.Devemos ainda esclarecer o que significa um sinal passar pelo buffer. Aqui também aparecemdiferentes possibilida<strong>de</strong>s. Duas <strong>de</strong>finições aplicáveis são:i. diremos que o sinal <strong>de</strong> entrada passa pelo buffer se todos os pulsos que forem aplicados na entradachegam à saída e, ainda, atingem níveis mínimos tolerados <strong>de</strong> tensão. A Figura 24 ilustra estacondição. O sinal aplicado à entrada do buffer, a seqüência “01001011”, é apresentado na partesuperior da figura e o sinal <strong>de</strong> saída, na parte inferior. Neste exemplo o tapered buffer é formado


90Otimização <strong>de</strong> Tapered Buffers <strong>para</strong> <strong>alta</strong>s taxas <strong>de</strong> operaçãopor um número par <strong>de</strong> inversores. Um pulso “1” é consi<strong>de</strong>rado ter passado com sucesso se eleatinge na saída tensão V HM ou superior; um pulso “0”, por sua vez, se ele atinge na saída tensãoV LM ou inferior (<strong>para</strong> buffers com um número ímpar <strong>de</strong> inversores será o oposto). Por exemplo, osegundo pulso “1” da entrada não passou <strong>para</strong> a saída segundo este critério;ii. diremos que o sinal <strong>de</strong> entrada passa pelo buffer se todos os pulsos que forem aplicados na entradachegam a saída, atingem níveis mínimos <strong>de</strong> tensão e, ainda, a diferença entre as larguras do pulsona entrada e do pulso na saída é menor que uma certa porcentagem da largura do pulso da entrada.Na Figura 24 estão dadas as larguras dos pulsos. As relações abaixo fornecem as condições que<strong>de</strong>vem ser observadas pelos pulsos na saída, no que diz respeito a largura:( 1−ε) ≤ , , , ≤ ( 1+ε)P P P P PW W1 W3 W4W⎛ ε⎞⎜1−2 1 222 5⎝ ⎠⎟ ≤ ≤ ⎛⎜⎝+ ε⎞P P , P ⎟ P 2 ⎠W W W Won<strong>de</strong>: ε é a constante <strong>de</strong> erro relativa (por exemplo ε=0,1);P wi é a largura do i-ésimo pulso da saída (Figura 24).Uma vez mais a aplicação do buffer <strong>de</strong>terminará qual <strong>de</strong>finição é a mais a<strong>de</strong>quada. Para bufferson<strong>de</strong> passam apenas sinais <strong>de</strong> clock, por exemplo, é recomendável o uso da <strong>de</strong>finição (ii) <strong>para</strong> que hajamaior simetria no sinal na saída.Sinal <strong>de</strong> entradaP WV HMSinal <strong>de</strong> saídaP W1P W2 P W3 P W4 P W5V LMfalhaFigura 24. Sinais <strong>de</strong> entrada e saída <strong>de</strong> um tapered buffer com um número par <strong>de</strong> inversores.3.3.2 Mo<strong>de</strong>lo teórico <strong>para</strong> o novo critério <strong>de</strong> otimizaçãoNosso objetivo agora é encontrar expressões teóricas que auxiliem na <strong>de</strong>terminação do fator <strong>de</strong>aumento ótimo, permitindo a passagem dos pulsos o mais estreitos pelo tapered buffer, dadas asdimensões do primeiro inversor e a carga capacitiva na saída do buffer. Para tal fim é necessário sabercalcular, dado um tapered buffer, qual a maior taxa que po<strong>de</strong> ter o sinal <strong>de</strong> entrada <strong>de</strong> forma que eleainda propague pelo buffer.


92Otimização <strong>de</strong> Tapered Buffers <strong>para</strong> <strong>alta</strong>s taxas <strong>de</strong> operaçãoPelo exposto acima e pela relação (6) po<strong>de</strong>mos escrever quet0i2C( )LiCLi1+θ L===β ( V − V ) βni ( VDD −VTni ) µnpi DD Tpi⎡ K⎢⎣ LCDSox⎤+ χ⎥⎦= constante <strong>para</strong> 1≤ i


Otimização <strong>de</strong> Tapered Buffers <strong>para</strong> <strong>alta</strong>s taxas <strong>de</strong> operação 93Valores<strong>de</strong> K α65432100 1 2 3 4 5 6valores <strong>de</strong> (T ∆ N /t 0N )Figura 25. Gráfico <strong>de</strong> K α como função <strong>de</strong>⎛ T⎜⎝ t∆N0N⎞⎟ .⎠Resumindo os resultados obtidos, escrevemos as três expressões abaixo que fornecem a larguramínima <strong>de</strong> um pulso que propaga pelo tapered buffer:TK1=− C + Kχ⎛⎛ T ⎞⎞N −1T = t ⎜ K ( N − ) + ⎜ ⎟⎟0 0ln2∆1 exp(14)⎝⎝ t ⎠⎠tN −1N 1 L 20=( 1+θ)µnL2⎛ K⎜⎝ LCDSox⎞+ χ⎟ = K3 4+⎠0( K χ)on<strong>de</strong> K 3 e K 4 são constantes que <strong>de</strong>pen<strong>de</strong>m dos parâmetros da tecnologia e do layout.Façamos, por fim, uma análise qualitativa do comportamento <strong>de</strong> T 0 em função <strong>de</strong> C L , a usando asexpressões <strong>de</strong> (14). Quando a capacitância <strong>de</strong> carga C L é pequena teremos que T N-1 =t 0N K α t 0 , e T 0 será praticamenteigual a T N-1 , sendo, portanto, função linear <strong>de</strong> C L . Um gráfico <strong>de</strong> T 0 x C L terá, <strong>de</strong> acordo com asequações em (14), o seguinte comportamento: <strong>para</strong> valores pequenos <strong>de</strong> C L a curva será horizontal e<strong>para</strong> valores gran<strong>de</strong>s, ten<strong>de</strong>rá a uma reta. A inclinação <strong>de</strong>sta reta <strong>de</strong>pen<strong>de</strong>rá diretamente da largura <strong>de</strong>canal dos transistores do último inversor do tapered buffer. Veremos, mais adiante, que estecomportamento está perfeitamente em acordo com os resultados <strong>de</strong> simulações.3.3.3 Simulação dos Tapered BuffersPara avaliar o comportamento dos tapered buffers e as relações acima, várias simulações foramfeitas. As condições das simulações são apresentadas na próxima seção.


94Otimização <strong>de</strong> Tapered Buffers <strong>para</strong> <strong>alta</strong>s taxas <strong>de</strong> operação3.3.3.1 Condições <strong>para</strong> as simulaçõesOs resultados apresentados neste capítulo são gerados a partir <strong>de</strong> duas tecnologias diferentes (noAPÊNDICE D, resultados <strong>de</strong> uma terceira tecnologia são dados):• tecnologia CMOS 0,8µm da ES2/ATMEL [Es94];• tecnologia CMOS 0,35µm do IMEC/Bélgica [Hu97].obs.: neste trabalho chamamos a tecnologia da ES2 <strong>de</strong> tecnologia <strong>de</strong> 0,8µm pois esta é a dimensãomínima <strong>de</strong> máscara <strong>para</strong> o comprimento <strong>de</strong> canal. O comprimento efetivo do canal é 0,7µm. A ES2,por sua vez, chama a mesma <strong>de</strong> tecnologia 0,7µm CMOS.Para a tecnologia da ES2 as simulações foram feitas com SPICE3d2, level 2 e parâmetros slow([Vl80], [An88]). Para a tecnologia 0,35µm, foi utilizado o HSPICE, level 3 e também parâmetrosslow ([Me95a], [Me95b]). Os mo<strong>de</strong>los dos transistores estão no APÊNDICE B. O layout <strong>de</strong> cadatransistor é imaginado como tendo a forma <strong>de</strong> um pente com dois ramos (Figura 26). Essaconfiguração é a que dá os menores valores <strong>de</strong> perímetro e área <strong>de</strong> dreno. Consi<strong>de</strong>rando talconfiguração é possível o cálculo <strong>de</strong> perímetros e áreas <strong>de</strong> drenos e a sua inclusão nas simulações. ATabela 5 nos fornece as equações usadas <strong>para</strong> <strong>de</strong>terminação da área e do perímetro <strong>de</strong> dreno. Paraáreas e perímetros <strong>de</strong> fonte e também <strong>para</strong> as resistências <strong>de</strong> dreno/fonte não foram fornecido osvalores, ficando assim o valor <strong>de</strong>fault do simulador. Notemos que no HSPICE estes valores <strong>de</strong>fault sãoconsi<strong>de</strong>ráveis e calculados pelas relações abaixo [Me95b]:AsRddfdf= 2 Hdif . W Ps = 4Hdif + 2 Wefdf( )Hdif . RSH + Ld + Ldif RD=WefefRsdf( )Hdif . RSH + Ld + Ldif RS=Won<strong>de</strong>: W ef é a largura efetiva <strong>de</strong> canal do transistor;Hdif, Ld, Ldif, RD, RS, e RSH são parâmetros do mo<strong>de</strong>lo do transistor (ver APÊNDICE B);As df valor <strong>de</strong>fault <strong>para</strong> área <strong>de</strong> fonte;Ps df valor <strong>de</strong>fault <strong>para</strong> perímetro <strong>de</strong> fonte;Rd df valor <strong>de</strong>fault <strong>para</strong> resistência série <strong>de</strong> dreno;Rs df valor <strong>de</strong>fault <strong>para</strong> resistência série <strong>de</strong> fonte.Tabela 5. Relações <strong>para</strong> cálculo da área e do perímetro <strong>de</strong> dreno. W é a largura <strong>de</strong> canal do transistorconsi<strong>de</strong>rado.eftecnologia área <strong>de</strong> dreno (µm 2 ) perímetro <strong>de</strong> dreno (µm)


Otimização <strong>de</strong> Tapered Buffers <strong>para</strong> <strong>alta</strong>s taxas <strong>de</strong> operação 950,8µm 1,2W W+4,80,35µm 0,5W W+2,2Escolhidos o sinal <strong>de</strong> entrada <strong>para</strong> o teste e o critério <strong>para</strong> verificação da propagação do sinal, po<strong>de</strong>se<strong>de</strong>terminar a máxima taxa <strong>de</strong> operação <strong>de</strong> qualquer tapered buffer. A Figura 27 apresenta oprocedimento usado <strong>para</strong> este fim. Ele é executado automaticamente por um programa em C quepre<strong>para</strong> os arquivos <strong>para</strong> o simulador, inicia as simulações (SPICE ou HSPICE), analisa os resultados<strong>de</strong>sta e, com base na análise, <strong>de</strong>ci<strong>de</strong> se <strong>de</strong>ve continuar ou não as simulações.g ateV DD ouV SSV DD ouV SSdrenoFigura 26. Configuração em pente dos transistores N e P <strong>para</strong> simulações.Façamos algumas observações a respeito do diagrama da Figura 27:• a taxa máxima, f max , usada no início do procedimento é escolhida entre 5Gbit/s e 10Gbit/s,<strong>de</strong>pen<strong>de</strong>ndo da tecnologia;• a taxa mínima, f min , é <strong>de</strong>terminada, por sua vez, através <strong>de</strong> simulações sucessivas. Começamoscom 1Gbit/s; caso não funcione é tentado 0,8Gbit/s, e assim por diante;• as simulações são feitas com a seqüência escolhida e com a sua complementar. Foi observado,durante as simulações, que o fato <strong>de</strong> haver um número par ou ímpar <strong>de</strong> inversores afeta osresultados, introduzindo <strong>de</strong>scontinuida<strong>de</strong>s nos dados obtidos. O uso da seqüência e da suacomplementar reduz esta influência. O problema, no entanto, não é totalmente eliminado;• as simulações são terminadas quando a diferença entre f max e f min for pequena. Tomamos, então,como taxa máxima <strong>de</strong> operação o valor médio <strong>de</strong>stas.


96Otimização <strong>de</strong> Tapered Buffers <strong>para</strong> <strong>alta</strong>s taxas <strong>de</strong> operaçãoDetermina uma taxa máxima f max , na qual o buffer não mais opera, euma taxa mínima f min , na qual ele com certeza opera, <strong>para</strong> a seqüência<strong>de</strong> entrada.Calcula a taxa média, entre f max e f min (f med )Simula (SPICE ou HSPICE) o buffer na taxaf med ; exemplo <strong>de</strong> entrada <strong>de</strong> teste,“0001011101”A seqüência <strong>de</strong> entradapassou pelo buffer (segundo ocritério usado)?SIMSimula (SPICE ou HSPICE) o buffer com aentrada invertida: “1110100010”A seqüência <strong>de</strong> entradapassou pelo bufferNÃOf max =f medSIMf min =f medSIMNÃOA taxa encontrada tem precisãosuficiente?|f max -f min |/f min


Otimização <strong>de</strong> Tapered Buffers <strong>para</strong> <strong>alta</strong>s taxas <strong>de</strong> operação 97Algumas vezes os problemas <strong>de</strong> convergência tornam difícil a obtenção <strong>de</strong> resultados significativos.Nestes casos o programa implementado tem que abandonar o procedimento sem conseguir reduzir ointervalo entre f max e f min ao nível <strong>de</strong>sejado.Os resultados que serão apresentados foram obtidos com:• a seqüência <strong>de</strong> entrada “010001111011100101101”;• tempos <strong>de</strong> subida e <strong>de</strong> <strong>de</strong>scida iguais a 20% da largura <strong>de</strong> um pulso mínimo;• verificação simples dos níveis dos pulsos na saída <strong>para</strong> garantir valores mínimos. Para a tecnologia<strong>de</strong> 0,8µm, que tem V DD =5V, os níveis mínimos tolerados usados são V HM =4,0V e V LM =1,0V(Figura 24). Para a tecnologia <strong>de</strong> 0,35µm, V DD =3V, os níveis usados são V HM =2,5V e V LM =0,5V.Adotamos as seguintes dimensões <strong>para</strong> o primeiro inversor em todos os tapered buffersexaminados, tanto na tecnologias CMOS 0,8µm como na 0,35µm:• Transistor N com largura <strong>de</strong> canal W n1 =5µm;• Transistor P com largura <strong>de</strong> canal W p1 =8µm;• L (comprimento <strong>de</strong> canal) com valor mínimo permitido <strong>para</strong> a tecnologia.A Tabela 6 resume as condições em que foram obtidos os resultados <strong>para</strong> os tapered buffers.3.3.3.2 Resultados das SimulaçõesAs Figuras 28 e 29 mostram a máxima taxa <strong>de</strong> operação, em Gbit/s, <strong>de</strong> tapered buffers com 2, 3,4, 5 e 6 (7 <strong>para</strong> Figura 28) inversores em função do fator <strong>de</strong> aumento χ. A carga capacitiva C L nasaída é 0,2pF. Note que a máxima taxa <strong>de</strong> operação não é obtida <strong>para</strong> χ=2,7 ou <strong>para</strong> valores maiores,como apontam as análises baseadas no atraso, mas sim <strong>para</strong> o fator <strong>de</strong> aumento com valores pequenos.Para um buffer com N inversores, po<strong>de</strong>mos estimar o fator <strong>de</strong> aumento que fornece a máxima taxa <strong>de</strong>operação com a seguinte relação:Nχ max( 1 1)C W + W L ≅ Cox n p Lon<strong>de</strong> χ max é o fator <strong>de</strong> aumento que maximiza a taxa <strong>de</strong> operação <strong>para</strong> tapered buffers com Ninversores.A Tabela 7 apresenta valores <strong>de</strong> χ max , calculados usando a expressão acima, como função <strong>de</strong> N <strong>para</strong>uma carga C L =0,2pF. Compare estes valores com os resultados das Figuras 28 e 29.


Otimização <strong>de</strong> Tapered Buffers <strong>para</strong> <strong>alta</strong>s taxas <strong>de</strong> operação 992 inv7,004,88E-10 4,12E-10 3,61E-10 3,25E-10 2,97E-10 2,73E-10 2,52E-10 2,36E-10 2,25E-10 2,13E-10 2,05E-103 inv 5,15E-10 3,79E-10 3,03E-10 2,53E-10 2,21E-10 2,04E-10 1,90E-10 1,84E-10 1,85E-10 1,86E-10 1,91E-10 2 inv4 inv6,004,88E-10 3,02E-10 2,10E-10 1,62E-10 1,60E-10 1,64E-10 1,69E-10 1,79E-10 1,88E-10 1,96E-10 2,09E-10 3 inv5 inv 5,21E-10 2,87E-10 1,96E-10 1,66E-10 1,63E-10 1,71E-10 1,80E-10 1,93E-10 2,04E-10 2,17E-10 2,28E-104 inv6 inv5,004,88E-10 2,25E-10 1,55E-10 1,58E-10 1,68E-10 1,79E-10 1,91E-10 2,04E-10 2,15E-10 2,28E-10 2,42E-105 inv4,00 1,0 1,2 1,4 1,6 1,8 2,0 2,2 2,4 2,6 2,8 3,06 inv2 inv 2,05 2,42 2,77 3,07 3,37 3,66 3,96 4,24 4,44 4,70 4,883 inv3,001,94 2,64 3,30 3,95 4,53 4,91 5,28 5,45 5,40 5,37 5,244 inv 2,05 3,31 4,77 6,18 6,25 6,08 5,92 5,59 5,33 5,10 4,795 inv2,001,92 3,48 5,09 6,01 6,13 5,84 5,54 5,18 4,90 4,61 4,406 inv 2,05 4,44 6,46 6,32 5,95 5,58 5,24 4,91 4,65 4,40 4,131,00max. taxa (Gbit/s)-- 0,5 1,0 1,5 2,0 2,5 3,0 3,5 4,0 4,5 5,0fator <strong>de</strong> aumento do tapered bufferFigura 29. Gráfico da máxima taxa <strong>de</strong> operação, Gbit/s, em função do fator <strong>de</strong> aumento dotapered buffer. São simulados buffers com 2, 3, 4, 5 e 6 inversores. A carga final em todos eles é0,2pF e a tecnologia é 0,35µm.Tabela 7. Valores <strong>de</strong> χ max <strong>para</strong> vários valores <strong>de</strong> N.Número <strong>de</strong>inversores (N)χ maxχ max<strong>para</strong> a tecnologia 0,35µm<strong>para</strong> a tecnologia 0,8µm2 3,22 3,163 2,18 2,154 1,79 1,785 1,59 1,586 1,48 1,477 1,4 -As Figuras 30 e 31 mostram, por sua vez, a largura mínima <strong>de</strong> um pulso que passa pelo buffer emfunção da capacitância <strong>de</strong> carga C L . O fator <strong>de</strong> aumento usado nessas figuras é χ=2.Para cada uma das curvas po<strong>de</strong>-se distinguir duas regiões, com comportamento semelhante àqueleencontrado na análise do mo<strong>de</strong>lo teórico:• uma região on<strong>de</strong> as capacitâncias <strong>de</strong> carga são relativamente pequenas quando com<strong>para</strong>das com acapacitância <strong>de</strong> entrada do último inversor; as curvas aí são quase horizontais;• outra on<strong>de</strong> a capacitância <strong>de</strong> carga é bastante gran<strong>de</strong>, e as curvas se aproximam <strong>de</strong> retas.De forma intuitiva, sem a utilização <strong>de</strong> fórmulas, po<strong>de</strong>mos facilmente enten<strong>de</strong>r estecomportamento: na primeira região, on<strong>de</strong> a capacitância <strong>de</strong> carga é pequena, o aumento da carga influipouco no <strong>de</strong>sempenho do buffer, pois o último inversor consegue facilmente alimentar a carga <strong>de</strong> suasaída. Neste caso são os (N-1) primeiros inversores que limitam a taxa máxima <strong>de</strong> operação.Naturalmente, a medida que a capacitância <strong>de</strong> carga aumenta, a operação do último inversor vai setornando difícil e influência todo o buffer. Consi<strong>de</strong>re o valor


100Otimização <strong>de</strong> Tapered Buffers <strong>para</strong> <strong>alta</strong>s taxas <strong>de</strong> operação( )NC = C W1+ W1χ L(15)LV ox n pQuando a carga do buffer está próxima <strong>de</strong>ste valor, po<strong>de</strong>-se dizer que o último inversor tem tantaimportância no <strong>de</strong>sempenho do buffer quanto os outros inversores. Se a carga estiver acima disso,então seu funcionamento será o mais crítico entre todos os inversores. Para capacitâncias muitomaiores que C LV , somente este inversor contará e o <strong>de</strong>sempenho <strong>de</strong> todo tapered buffer estará próximoao <strong>de</strong> um único inversor com mesma carga C L na saída.2,000 0,1 0,2 0,3 0,4 0,5 0,6 0,72 inv2 inv 0,19 0,29 0,45 0,62 0,80 0,96 1,14 1,311,803 inv3 inv 0,27 0,31 0,37 0,44 0,52 0,60 0,69 4 inv 0,784 inv1,600,31 0,33 0,34 0,35 0,37 0,38 0,41 5 inv 0,435 inv 0,35 0,36 0,36 0,37 0,37 0,38 0,39 0,401,400,05 0,23 0,41 0,60 0,78 0,96 1,14 1,331,20 0,05 0,14 0,23 0,32 0,41 0,50 0,60 0,691,00 0,05 0,09 0,14 0,18 0,23 0,28 0,32 0,370,800,05 0,07 0,10 0,12 0,14 0,17 0,19 0,21min. pulso (ns)0,600,400,20-0 0,5 1 1,5 2 2,5 3capacitância <strong>de</strong> carga (pF)Figura 30. Gráfico da largura mínima <strong>de</strong> um pulso que passa pelo tapered buffer em função dacarga capacitiva C L da saída. São simulados buffers com 2, 3, 4 e 5 inversores. O fator <strong>de</strong> aumentousado é χ=2 e a tecnologia é <strong>de</strong> 0,8µm.2,000 0,1 0,2 0,3 0,4 0,5 0,6 0,72 inv2 inv 0,09 0,16 0,27 0,38 0,50 0,61 0,72 0,841,803 inv3 inv 0,13 0,16 0,20 0,26 0,31 0,37 0,42 4 inv 0,484 inv1,600,15 0,16 0,16 0,17 0,18 0,19 0,22 5 inv 0,255 inv 0,16 0,17 0,17 0,17 0,18 0,19 0,20 0,201,400,03 0,14 0,26 0,37 0,49 0,60 0,72 0,831,20 0,03 0,09 0,15 0,21 0,27 0,33 0,39 0,451,00 0,03 0,06 0,09 0,12 0,15 0,18 0,21 0,240,800,03 0,04 0,06 0,07 0,09 0,10 0,12 0,13min. pulso (ns)0,600,400,20-0 0,5 1 1,5 2 2,5 3capacitância <strong>de</strong> carga (pF)Figura 31. Gráfico da largura mínima <strong>de</strong> um pulso que passa pelo tapered buffer em função dacarga capacitiva C L da saída. São simulados buffers com 2, 3, 4 e 5 inversores. O fator <strong>de</strong> aumentousado é χ=2 e a tecnologia é <strong>de</strong> 0,35µm.Nas Figuras 30 e 31 também foram <strong>de</strong>senhadas as assíntotas das curvas <strong>para</strong> a capacitância <strong>de</strong> cargaten<strong>de</strong>ndo a infinito (ou simplesmente maior do que três C LV ). A inclinação <strong>de</strong>stas é inversamente


Otimização <strong>de</strong> Tapered Buffers <strong>para</strong> <strong>alta</strong>s taxas <strong>de</strong> operação 101proporcional as dimensões do último inversor do buffer. Em conseqüência, a inclinação da assíntota dobuffer com 2 inversores é o dobro daquela do buffer com 3 inversores; esta, por sua vez, é o dobrodaquela do buffer com 4 e assim por diante (lembremos que o fator <strong>de</strong> aumento é <strong>de</strong> 2 nestesexemplos).As duas figuras anteriores apontam que o comportamento qualitativo dos tapered buffers seaproxima bastante daquilo que foi previsto pelo mo<strong>de</strong>lo teórico. As assíntotas das curvas T 0 x C L sãoda forma expressa pela primeira equação <strong>de</strong> (14)(como já discutido, <strong>para</strong> C L gran<strong>de</strong>, T 0 =T N-1 ). Taisresultados mostram que as relações <strong>de</strong>duzidas a partir <strong>de</strong> [Sh92], se não são corretas estão próximasdisso.3.3.3.2.1 Mo<strong>de</strong>lamento dos Tapered Buffers com as expressões analíticas (14)As equações dadas em (14), como vimos, foram obtidas a partir <strong>de</strong> expressões bastantesimplificadas do comportamento dos transistores. Mesmo assim, elas se mostraram boas na <strong>de</strong>scriçãoqualitativa dos tapered buffers. Em vista disso po<strong>de</strong>mos tentar aplicá-las no mo<strong>de</strong>lamento numérico.Para este fim precisamos <strong>de</strong>terminar o valor das cincos constantes que aí aparecem: K 1 , K 2 , K 3 , K 4 eK ∆ . Uma vez que as expressões foram construídas por meio <strong>de</strong> aproximações, o mais apropriado será<strong>de</strong>terminar o valor das constantes por meio <strong>de</strong> resultados obtidos por simulações.As duas primeiras constantes estão relacionadas com as assíntotas das curvas T 0 x C L quando C L émuito gran<strong>de</strong>. Assim elas po<strong>de</strong>m ser obtidas por estas mesmas curvas (Figuras 30 e 31). Outra forma,mais direta e precisa, é através das curvas largura mínima <strong>de</strong> um pulso que passa pelo buffer emfunção da capacitância <strong>de</strong> carga, sendo o buffer formado por apenas um inversor. As Figuras 32 e 33apresentam estas curvas, respectivamente <strong>para</strong> as tecnologias 0,8µm e 0,35µm. Para cada tecnologia,vários inversores são simulados. Observe que: o sinal <strong>de</strong> entrada e o critério <strong>de</strong> propagação do sinalsão sempre os mesmos; a relação entre as larguras <strong>de</strong> canal do transistor N e do transistor P é sempreigual.A partir dos resultados das Figuras 32 e 33 são obtidas as equações abaixo <strong>para</strong> largura mínima dopulso que passa pelo buffer com um inversor:389 ,T = C ns / pF + 47, 6ps<strong>para</strong> tecnologia <strong>de</strong> 0,8µm;GL246 ,T = C ns / pF + 29, 7 ps<strong>para</strong> tecnologia <strong>de</strong> 0,35µm.GLon<strong>de</strong>: T é a largura mínima <strong>de</strong> um pulso que passa pelo inversor;G indica quantas vezes o inversor é maior que 8,0/5,0µm (largura <strong>de</strong> canal do trans. P/trans. N);C L é a capacitância <strong>de</strong> carga em pF.


102Otimização <strong>de</strong> Tapered Buffers <strong>para</strong> <strong>alta</strong>s taxas <strong>de</strong> operação0,2 0,4 0,6 0,8 1 1,2 1,4 1,612,00Wn=5,0umWn=5,0um 0,82 1,59 2,34 3,11 3,88 4,64 5,41 Wn=7,5um 6,15Wn=7,5um 0,56 1,06 1,57 2,08 2,58 3,09 3,60 4,12Wn=10,0umWn=10,0um 10,00 0,43 0,81 1,19 1,56 1,95 2,32 2,70 3,08Wn=12,5umWn=12,5um 0,35 0,66 0,95 1,26 1,57 1,86 2,16 2,46Wn=15,0umWn=15,0um 8,00 0,30 0,55 0,80 1,06 1,31 1,56 1,82 2,06Wn=17,5umWn=17,5um 0,27 0,48 0,69 0,91 1,13 1,34 1,55 1,77Wn=20,0umWn=20,0um 6,00 0,24 0,42 0,61 0,79 0,99 1,18 1,37 1,55Wn=22,5umWn=22,5um 0,21 0,38 0,55 0,72 0,88 1,06 1,22 1,38Wn=25,0umWn=25,0um 4,00 0,20 0,35 0,50 0,65 0,80 0,95 1,10 1,25min. pulso (ns)2,00-0 0,5 1 1,5 2 2,5 3capacitância <strong>de</strong> carga (pF)Figura 32. Gráfico da largura mínima <strong>de</strong> um pulso que passa por um inversor em função da suacarga capacitiva. As larguras <strong>de</strong> canal dos trans.P/trans.N são: 8/5µm; 12/7,5µm; 16/10µm;20/12,5µm; 24/15µm; 28/17,5µm; 32/20µm; 36/22,5µm; 40/25µm. O comprimento do canal éL=0,8µm. A tecnologia é <strong>de</strong> 0,8µm.4,500,2 0,4 0,6 0,8 1 1,2 1,4 Wn=5,0um1,6W n=5,0um 0,52 1,00 1,49 1,98 2,48 2,98 3,45 Wn=7,5um 3,93W n=7,5um 4,00 0,36 0,69 1,01 1,34 1,67 2,00 2,33 2,66Wn=10,0umWn=10,0um 0,28 0,53 0,76 1,01 1,26 1,50 1,76 2,003,50Wn=12,5umWn=12,5um 0,23 0,42 0,62 0,81 1,02 1,21 1,40 1,61Wn=15,0umWn=15,0um 3,00 0,20 0,36 0,53 0,69 0,86 1,02 1,18 1,34Wn=17,5umWn=17,5um 0,17 0,31 0,45 0,59 0,73 0,88 1,02 1,162,50Wn=20,0umWn=20,0um 0,16 0,28 0,40 0,53 0,65 0,77 0,90 1,02Wn=22,5umWn=22,5um 2,00 0,14 0,25 0,36 0,47 0,58 0,69 0,80 0,90Wn=25,0umWn=25,0um 0,13 0,23 0,33 0,43 0,53 0,62 0,72 0,821,50min. pulso (ns)1,000,50-0 0,5 1 1,5 2 2,5 3capacitância <strong>de</strong> carga (pF)Figura 33. Gráfico da largura mínima <strong>de</strong> um pulso que passa por um inversor em função da suacarga capacitiva. As larguras <strong>de</strong> canal dos trans.P/trans.N são: 8/5µm; 12/7,5µm; 16/10µm;20/12,5µm; 24/15µm; 28/17,5µm; 32/20µm; 36/22,5µm; 40/25µm. O comprimento do canal éL=0,35µm. A tecnologia é <strong>de</strong> 0,35µm.Lembrando que também o primeiro inversor dos buffers simulados tem as dimensões 8µm/5µm(largura do canal), então chegamos aos valores da Tabela 8.Para as outras constantes, K 3 , K 4 e K ∆ , foram tentados vários caminhos <strong>para</strong> sua <strong>de</strong>terminação,todavia <strong>para</strong> nenhum dos valores encontrados foi possível um ajuste satisfatório entre as expressões <strong>de</strong>(14) e os dados. O que se observou neste processo foi que o termo 2K( N 1)∆− , na equação <strong>de</strong> T 0 , (14),causa a maior parte das dificulda<strong>de</strong>s. Como conclusão temos que as expressões usadas, apesar <strong>de</strong> seaproximarem do <strong>de</strong>sejado, não são suficientemente exatas <strong>para</strong> o mo<strong>de</strong>lamento (no APÊNDICE C é


Otimização <strong>de</strong> Tapered Buffers <strong>para</strong> <strong>alta</strong>s taxas <strong>de</strong> operação 103tentado um mo<strong>de</strong>lamento alternativo baseado em funções <strong>de</strong> transferência, consi<strong>de</strong>rando o inversor umcircuito linear invariante com um pólo).Tabela 8. Valores das constantes K 1 e K 2 das equações dadas por (14).tecnologia K 1 (ns/pF) K 2 (ps)0,8µm 3,89 47,60,35µm 2,46 29,73.3.3.2.2 Mo<strong>de</strong>lamento dos Tapered Buffers com o uso <strong>de</strong> tabelas empíricasNa impossibilida<strong>de</strong> <strong>de</strong> encontrar equações que <strong>de</strong>screvam os buffers, procuramos outra forma <strong>de</strong>mo<strong>de</strong>lamento. O uso <strong>de</strong> tabelas foi o que melhor resultado apresentou. Nesta forma <strong>de</strong> mo<strong>de</strong>lamento,através <strong>de</strong> uma ou mais tabelas, conseguimos <strong>de</strong>terminar a máxima taxa <strong>de</strong> operação do tapered buffer.Para enten<strong>de</strong>r esta solução, voltemos as equações dadas por (14). Como já dito, elas pecam <strong>de</strong>vido aotermo <strong>de</strong>pen<strong>de</strong>nte <strong>de</strong> N. Sendo assim, supomos que as seguintes relações <strong>de</strong>screvam corretamente obuffer:TK1=− C + Kχ⎛T t f N T ⎞N −10=0⎜ , ⎟ on<strong>de</strong> f( ) é uma função não conhecida. (16)⎝ t ⎠tN −1N 1 L 2( χ K )= +0 4que t0Com<strong>para</strong>ndo as relações <strong>de</strong> (16) com aquelas <strong>de</strong> (14), vemos que a primeira equação é a mesma e0t0= . Em (16), se conhecermos a função f( ) po<strong>de</strong>remos então <strong>de</strong>terminar T 0 (é necessárioK3ainda o parâmetro K 4 ). Não a conhecendo, po<strong>de</strong>mos tabelá-la <strong>para</strong> diversos valores <strong>de</strong> N (2, 3, 4, 5, ...).Isto po<strong>de</strong> ser feito a partir <strong>de</strong> curvas semelhantes às apresentadas nas Figuras 30 e 31. O exemploseguinte mostra como as Figuras(/Tabelas) 30 e 31 po<strong>de</strong>rão ser usadas <strong>para</strong> encontrar os valoresmínimos da largura <strong>de</strong> pulso. Seja o seguinte problema:Qual a largura mínima do pulso que passa por um tapered buffer com ganho χ y , N inversores ecarga C ly (será chamado <strong>de</strong> buffer problema)? Como nos exemplos das Figuras 30 e 31, o primeiroinversor tem transistores com larguras <strong>de</strong> canal <strong>de</strong> 8µm e 5µm. São conhecidos os valores <strong>de</strong> K 1 , K 2 eK 4 .Solução:


104Otimização <strong>de</strong> Tapered Buffers <strong>para</strong> <strong>alta</strong>s taxas <strong>de</strong> operaçãoPelas equações dadas em (16), po<strong>de</strong>mos escrever que ( ) =t0y ( χy+ K4)TN−1yK1N − CLy+ Kχy1 2, on<strong>de</strong> os termoscom índice y são relativos ao buffer problema.TChamemos <strong>de</strong> C L2 a capacitância que faz valer a igualda<strong>de</strong>t( N −12)02K1N −1 CL2 + K2=2( 2 + K )4T=t( N−1)y0 y, on<strong>de</strong>os termos com índice 2 são relativos ao buffer cujos resultados estão na Figura 30 ou na Figura 31(χ 2 =2).TComo= T0y02T ( N −12) ( N−1) yt02( χy+ K4)( 2 + K )4T=t0 yentãoTt0202( ) ( )f N T f N T TN 12N 1 y 0 y= ⎛ ⎝ ⎜ ⎞⎟ =⎛ ⎞−−, t02⎠⎜ , ⎝ t ⎟0 y ⎠= e, conseqüentemente,t0y. Pois bem, o valor <strong>de</strong> T 02 po<strong>de</strong> ser encontrado facilmente a partir do valor <strong>de</strong> C L2 ,diretamente ou por interpolação, e das curvas apresentadas nas Figuras 30 e 31. Logo o valor <strong>de</strong> T 0ypo<strong>de</strong> ser <strong>de</strong>terminado.Resumindo o procedimento, <strong>de</strong>vemos primeiro <strong>de</strong>terminar o valor <strong>de</strong> C L2 tal queT ( N −12) ( N−1) yt02T=t0 y;posteriormente, consultando na Figura 30 ou na Figura 31 (<strong>de</strong>pen<strong>de</strong>ndo da tecnologia utilizada) acurva associada ao buffer com N inversores, <strong>de</strong>terminar o valor <strong>de</strong> T 02 e, por fim, calcular o valor <strong>de</strong>T 0y . Em vez do gráfico po<strong>de</strong>mos ter tabelas <strong>de</strong> T 0 em função <strong>de</strong> C L , <strong>para</strong> vários valores <strong>de</strong> N, e <strong>para</strong>um fator <strong>de</strong> aumento pré-estabelecido qualquer. Estas tabelas, junto com as constantes K 1 , K 2 e K 4 ,serão suficientes <strong>para</strong> fornecer o valor <strong>de</strong> T 0 <strong>para</strong> um tapered buffer qualquer <strong>de</strong>s<strong>de</strong> que:• o sinal <strong>de</strong> teste aplicado na entrada e o critério <strong>de</strong> propagação do sinal sejam os mesmosdaqueles usados na <strong>de</strong>terminação das tabelas e das constantes;• a relação entre a largura <strong>de</strong> canal do transistor P e a do transistor N é igual àquela usada na<strong>de</strong>terminação <strong>de</strong>stas tabelas e constantes.Para um melhor aproveitamento dos dados das tabelas, dois cuidados <strong>de</strong>vem ser tomados na suageração:• utilizar um fator <strong>de</strong> aumento gran<strong>de</strong> <strong>para</strong> evitar que, durante o cálculo <strong>de</strong> C L2 , apareçam valoresnegativos;• tabelar T 0 apenas <strong>para</strong> valores baixos <strong>de</strong> C L . As curvas T 0 x C L , <strong>para</strong> valores gran<strong>de</strong>s <strong>de</strong> C L ,aproximam-se bastante das assíntotas, sendo possível <strong>de</strong>terminá-las a partir das constantes K 1 e K 2 .


Otimização <strong>de</strong> Tapered Buffers <strong>para</strong> <strong>alta</strong>s taxas <strong>de</strong> operação 105A Tabela 9 apresenta as condições usadas <strong>para</strong> geração das curvas/tabelas T 0 x C L <strong>para</strong> as duastecnologias aqui analisadas.Tabela 9. Condições <strong>para</strong> geração <strong>de</strong> curvas/tabelas T 0 x C L <strong>para</strong> mo<strong>de</strong>lamento dos tapered buffers.tecnologia máximo valor usado <strong>para</strong> número <strong>de</strong> pontos em cadacapacitância <strong>de</strong> cargacurva/tabela0,8µm 2,5C LV (15) 200,35µm 3C LV (15) 30F<strong>alta</strong>-nos ainda a <strong>de</strong>terminação do parâmetro K 4 . Para este fim é utilizado o procedimento acima<strong>de</strong>scrito <strong>para</strong> <strong>de</strong>terminação <strong>de</strong> T 0 em um buffer qualquer, e o gráfico largura mínima <strong>de</strong> um pulsoque passa pelo buffer em função do número <strong>de</strong> inversores do buffer, com C L ≈0, <strong>para</strong> diversos valores<strong>de</strong> fator <strong>de</strong> aumento. As Figuras 34 e 35 apresentam estes gráficos. O valor escolhido <strong>para</strong> K 4 é aqueleque minimiza, no sentido do mínimo quadrado, o erro entre os resultados fornecidos pelas equaçõesdadas em (16), aplicando o procedimento acima, e os dados da Figura 34/35. Foi utilizado o método <strong>de</strong>busca SIMPLEX <strong>para</strong> encontrar K 4 (MATLAB). Observemos que a utilização <strong>de</strong> C L ≈0 equivale aescolhermos, no procedimento acima, C Ly igual a zero. Isto simplifica as expressões. Os valoresencontrados <strong>para</strong> K 4 são 0,81 e 0,72, respectivamente, <strong>para</strong> as tecnologias <strong>de</strong> 0,8µm e <strong>de</strong> 0,35µm.0,90 2,0 3,0 4,0 5,0 6,0ft. aum.=5ft. aum.=5 0,34 0,55 0,65 0,74 0,80ft. aum.=4 0,80 0,30 0,46 ft. aum.=4 0,54 0,61 0,66ft. aum.=3 0,70 0,24 0,37 ft. aum.=3 0,43 0,49 0,52ft. aum.=2 0,19 0,27 ft. aum.=2 0,32 0,35 0,37ft. aum.=1 0,60 0,14 0,19 0,21ft. aum.=10,24 0,250,50min. pulso (ns)0,400,300,200,10-- 1,0 2,0 3,0 4,0 5,0 6,0número <strong>de</strong> inversoresFigura 34. Gráfico da largura mínima <strong>de</strong> um pulso que passa pelo tapered buffer em função donúmero <strong>de</strong> inversores. Curvas <strong>para</strong> diversos valores <strong>de</strong> fator <strong>de</strong> aumento são apresentadas (fator <strong>de</strong>aumento <strong>de</strong> 1, 2, 3, 4 e 5). O primeiro inversor, em todos os exemplos, tem 5µm <strong>para</strong> largura <strong>de</strong> canaldo transistor N, e 8µm <strong>para</strong> o transistor P. O comprimento <strong>de</strong> canal <strong>para</strong> todos é <strong>de</strong> 0,8µm. A cargana saída é <strong>de</strong> 1fF e a tecnologia CMOS <strong>de</strong> 0,8µm.


106Otimização <strong>de</strong> Tapered Buffers <strong>para</strong> <strong>alta</strong>s taxas <strong>de</strong> operação0,35 2,0 3,0 4,0 5,0 6,0ft.aum.=5ft.aum.=5 0,17 0,26 0,31 0,35ft.aum.=4 0,14 0,21 ft.aum.=40,300,25 0,29ft.aum.=3 0,12 0,17 ft.aum.=3 0,20 0,23 0,24ft.aum.=2 0,25 0,09 0,13 ft.aum.=2 0,15 0,17 0,18ft.aum.=1 0,07 0,09 0,10 0,11ft.aum.=10,20min. pulso (ns)0,150,100,05-- 1,0 2,0 3,0 4,0 5,0 6,0número <strong>de</strong> inversoresFigura 35. Gráfico do largura mínimo <strong>de</strong> um pulso que passa pelo tapered buffer em função donúmero <strong>de</strong> inversores. Curvas <strong>para</strong> diversos valores <strong>de</strong> fator <strong>de</strong> aumento são apresentadas (fator <strong>de</strong>aumento <strong>de</strong> 1, 2, 3, 4 e 5). O primeiro inversor, em todos os exemplos, tem 5µm <strong>para</strong> largura <strong>de</strong> canaldo transistor N, e 8µm <strong>para</strong> o transistor P. O comprimento <strong>de</strong> canal <strong>para</strong> todos é <strong>de</strong> 0,35µm. A cargana saída é <strong>de</strong> 1fF e a tecnologia CMOS <strong>de</strong> 0,35µm.Por fim, as Figuras 36, 37 e 38 mostram a com<strong>para</strong>ção entre os resultados <strong>de</strong> simulação e asrelações semi-empíricas dadas por (16) (as figuras foram geradas pelo MATLAB). Também nestasfiguras estão indicadas a máxima taxa que po<strong>de</strong> ser alcançada por um tapered buffer e o seu melhorvalor <strong>para</strong> χ=3.m a x . ta x a(G b it/s)3,232,82,62,42,221,81,61,4C L =0,2pF0,8µ m CMOSsim ulação2 inv.3 inv.4 inv.5 inv.1,21 1,5 2 2,5 3 3,5 4 4,5 5fator <strong>de</strong> aum ento do tapered bufferFigura 36. Com<strong>para</strong>ção entre os pontos obtidos por simulação (o buffer com dois inversores éapresentado com ‘x’, três com ‘+’, quatro com ‘o’ e cinco com ‘*’) e equações dadas por (16) (linhascontínuas). A tecnologia é <strong>de</strong> 0,8µm e a capacitância <strong>de</strong> carga <strong>de</strong> 0,2pF.


Otimização <strong>de</strong> Tapered Buffers <strong>para</strong> <strong>alta</strong>s taxas <strong>de</strong> operação 107m a x . ta x a 3(G b it/s )2,52C L =1pF0,8µ m C M O Ssim ulação2 in v .3 in v .4 in v .5 in v .6 in v .7 in v .8 in v .1,510,501 1,5 2 2,5 3 3,5 4 4,5 5fator <strong>de</strong> aum ento do tapered bufferFigura 37. Com<strong>para</strong>ção entre os pontos obtidos por simulação (o buffer com dois inversores éapresentado com ‘x’, três com ‘+’, quatro com ‘o’, cinco com ‘*’, seis com 'x', sete com '+' e oitocom '*') e equações dadas por (16) (linhas contínuas). A tecnologia é <strong>de</strong> 0,8µm e a capacitância <strong>de</strong>carga <strong>de</strong> 1pF.6,5m ax. taxa 6(G b it/s)5,554,543,532,52C L =0,2pF0,35µ m CMOSsim ulação2 inv.3 inv.4 inv.5 inv.1,51 1,5 2 2,5 3 3,5 4 4,5 5fator <strong>de</strong> aum ento do tapered bufferFigura 38. Com<strong>para</strong>ção entre os pontos obtidos por simulação (o buffer com dois inversores éapresentado com ‘x’, três com ‘+’, quatro com ‘o’ e cinco com ‘*’) e equações dadas por (16) (linhascontínuas). A tecnologia é <strong>de</strong> 0,35µm e a capacitância <strong>de</strong> carga <strong>de</strong> 0,2pF.As relações semi-empíricas proporcionam uma boa aproximação <strong>para</strong> a tecnologia <strong>de</strong> 0,35µm, erazoável <strong>para</strong> 0,8µm, on<strong>de</strong> foi usado o simulador SPICE. Neste último caso, a previsão do valor damáxima taxa <strong>de</strong> operação <strong>de</strong>ixa um pouco a <strong>de</strong>sejar. Em contrapartida, em ambas tecnologias, ométodo proposto é eficiente <strong>para</strong> apontar qual é o fator <strong>de</strong> aumento ótimo.Notemos que as relações <strong>para</strong> cálculo da maior taxa do sinal que propaga pelo buffer foram<strong>de</strong>rivadas a partir <strong>de</strong> relações quadráticas <strong>para</strong> a corrente <strong>de</strong> dreno, Estas relações não são boas <strong>para</strong>mo<strong>de</strong>lar transistores <strong>de</strong> canal pequeno ([Mu86], [Sa90]). Por outro lado, as expressões finais (relação


108Otimização <strong>de</strong> Tapered Buffers <strong>para</strong> <strong>alta</strong>s taxas <strong>de</strong> operação(16)) mostraram-se boas mesmo <strong>para</strong> a tecnologia <strong>de</strong> 0,35µm. Acreditamos, baseados nos resultadosalcançados, que estas expressões po<strong>de</strong>m ser usadas mesmo em tecnologias mais mo<strong>de</strong>rnas.Ainda no APÊNDICE D são apresentados os resultados obtidos com outra tecnologia CMOS0,8µm, a tecnologia da AMS. São usados <strong>para</strong> simulação o HSPICE e o mo<strong>de</strong>lo BSIM3 (versão 2).Um bom ajuste é conseguido também neste caso.A Tabela 10, por sua vez, resume as informações <strong>de</strong> máximas taxas atingidas com χ=3 e <strong>para</strong>qualquer valor <strong>de</strong> fator <strong>de</strong> aumento. Pelos resultados expostos, vemos que um ganho próximo a 20%po<strong>de</strong> ser conseguido com o uso <strong>de</strong> χ diferente daquele que minimiza o atraso. Repare que os valores<strong>para</strong> χ ot são sempre pequenos.Tabela 10. Taxa máxima <strong>para</strong> o buffer com fator <strong>de</strong> aumento χ=3, taxa máxima possível (qualquerχ) e aumento relativo da taxa <strong>de</strong> operação (valor em χ=3 tomada como referência). É tambémindicado o valor do fator <strong>de</strong> aumento que maximiza a taxa <strong>de</strong> operação do buffer (χ ot ).Tecnologia(µm)/C L (pF) max. taxa (Gbit/s) max. taxa (Gbit/s) aumento relativoχ=3da taxa (%)0,8/0,2 2,54 3,08 (χ ot =1,6) 21,30,8/1,0 2,13 2,13 (χ ot =1,6) 27,70,35/0,2 5,24 6,24 (χ ot =1,8) 19,13.3.4 Mismatch do AtrasoOs resultados da seção anterior mostram que o critério proposto nos leva a tapered buffers queutilizam um fator <strong>de</strong> aumento pequeno. Uma conseqüência disto é o aumento do número <strong>de</strong> inversoresdo buffer. Como vimos, nosso critério é aplicável quando o valor do atraso não é importante <strong>para</strong> o<strong>de</strong>sempenho do circuito, como no exemplo da Figura 23. Neste circuito, por outro lado, os valores dosatrasos no buffer do dado e nos vários buffers que distribuem o clock <strong>de</strong>vem ser iguais ou muitopróximos. A igualda<strong>de</strong> <strong>de</strong>stes valores é praticamente impossível, mesmo em buffers casados, <strong>de</strong>vido adispersão dos parâmetros dos transistores no C.I.. A questão aqui levantada é o que ocorrerá com asvariações do atraso dos tapered buffers (mismatch do atraso), causadas pelas dispersões estatísticas dosparâmetros dos transistores, quando o fator <strong>de</strong> aumento é diminuído ou elevado. Este problema éestudado nesta seção. Veja que esta questão é importante pois se a redução do fator <strong>de</strong> aumento, com aconseqüente elevação no número <strong>de</strong> inversores, acarreta um crescimento no mismatch do atraso, entãoo critério proposto aqui terá seu uso reduzido.


Otimização <strong>de</strong> Tapered Buffers <strong>para</strong> <strong>alta</strong>s taxas <strong>de</strong> operação 1093.3.4.1 Atraso do Tapered BufferPara o estudo do mismatch do atraso, vamos consi<strong>de</strong>rar uma configuração bastante usada nadistribuição do sinal <strong>de</strong> clock <strong>de</strong>ntro <strong>de</strong> circuitos integrados. Ela é mostrada na Figura 39. Acaracterística que nos interessa nesta aplicação é que todos os inversores enxergam, relativamente assuas dimensões, uma mesma carga capacitiva, simplificando o tratamento do problema. Consi<strong>de</strong>remosos M tapered buffers da figura, cada um com N inversores, e o atraso total, t 1D , t 2D ... t MD , <strong>de</strong> cada dosbuffers. O que queremos é saber qual a variância <strong>de</strong>stes atrasos e, principalmente, como esta secomporta em relação ao fator <strong>de</strong> aumento utilizado no buffer.t MDtapered bufferMM,1 M,2 M,N-1 M,Nt 2Dtapered buffer22,1 2,2 2,N-1 2,Nt 1Dclock0tapered buffer11,1 1,2 1,N-1 1,NFigura 39. M Tapered buffers usados <strong>para</strong> a distribuição <strong>de</strong> clock.Usaremos a seguinte notação <strong>para</strong> os M buffers:C oxj,i é a capacitância, por unida<strong>de</strong> <strong>de</strong> área, no gate dos transistores P e N do i-ésimo inversor do j-ésimo buffer (Figura 39);L nj,i e L pj,i são os comprimentos <strong>de</strong> canal dos transistores N e P, respectivamente, do i-ésimo inversordo j-ésimo buffer;W nj,i e W pj,i são as larguras <strong>de</strong> canal dos transistores N e P, respectivamente, do i-ésimo inversor do j-ésimo buffer;C Lj,i é a capacitância <strong>de</strong> carga do i-ésimo inversor do j-ésimo buffer;µ nj,i e µ pj,i são as mobilida<strong>de</strong>s dos elétrons e das lacunas nos transistores N e P, respectivamente, do i-ésimo inversor do j-ésimo buffer;


110Otimização <strong>de</strong> Tapered Buffers <strong>para</strong> <strong>alta</strong>s taxas <strong>de</strong> operaçãoV Tnj,i e V Tpj,i são as tensões <strong>de</strong> limiar dos transistores N e P, respectivamente, do i-ésimo inversor doj-ésimo buffer;P Cnj,i e P Cpj,i são os parâmetros P C <strong>para</strong> os transistores N e P, respectivamente, do i-ésimo inversor doj-ésimo buffer;V D0nj,i e V D0pj,i são as tensões V D0 <strong>para</strong> os transistores N e P, respectivamente, do i-ésimo inversor doj-ésimo buffer.Consi<strong>de</strong>raremos ainda que L = L = L , W = W e W = θ W . Também, que anji , pji , ji ,nj, i j,ipj, i j,icapacitância <strong>de</strong> carga é dada por CLj, i= ( 1+ )( KDSWj, i+ Wj, i+ 1Lj, i+ 1Coxj , i+1)θ <strong>para</strong> 1 ≤ i < N . Para asituação i<strong>de</strong>al, quando não há mismatch dos parâmetros, será válido:C oxj,i =C ox L j,i =L V Tnj,i =V Tn V Tpj,i =V Tp V D0nj,i =V D0n V D0pj,i =V D0pWji ,=i−χ 1 W KCnj, i= KCnKCpj, i= KCpµnj, i= µnµpj, i= µpEstes também serão os valores médios dos parâmetros.Vamos encontrar o atraso dos tapered buffers da Figura 39. Usaremos uma vez mais as relações <strong>de</strong>atraso <strong>de</strong> inversor propostas por [Sa90]. O atraso do buffer j é dado portDjN= ∑ tdj , ii=1on<strong>de</strong> t dj,i é o atraso médio do i-ésimo inversor do j-ésimo tapered buffer (relação (10)).Resultará <strong>para</strong> o atraso o seguinte valortDjN −1∑i=1C2IV ⎡DDCL0CL0= ⎢ FV (Tpj, 1, VD0pj, 1) + FV (Tnj, 1, VD0nj,1)+2 ⎣ ID0n0ID0p0Lji,CLji,[ FD ( VTnj , i, VTpj, i+ 1, VD0nj, i, µnj, iKCnj, i ) + FD ( VTpj, i, VTnj, i+1VD 0pj, i, θµpj, iKCpj,i )W C] +Lj,Nji , oxji ,D0nj,NC ⎤Lj,N+ ⎥2I D0 pj , N ⎦⎥on<strong>de</strong>: I D0n0 e I D0p0 são as correntes <strong>de</strong> dreno (equação (4)) dos transistores N e P, respectivamente, doinversor 0 (ver Figura 39);I D0nj,i e I D0pj,i são as correntes <strong>de</strong> dreno (equação (4)) dos transistores N e P, respectivamente, do i-ésimo inversor do j-ésimo buffer;⎛M⎞C ( )L0 = 1+ θ ⎜ KDSW0 + ∑Wj 1Lj 1C⎟, , oxj, 1;⎝⎠j=1W 0 está relacionado com a largura <strong>de</strong> canal do inversor 0 (W n0 =W 0 e W p0 =θW 0 e W0χ = MW );N( )( )CLj, N= 1+ θ KDSWN+ χ LWCox.


Otimização <strong>de</strong> Tapered Buffers <strong>para</strong> <strong>alta</strong>s taxas <strong>de</strong> operação 111Acrescentaremos a expressão <strong>de</strong> t Dj o seguinte termo:V2DD⎡⎢C⎢ I⎣⎧⎪⎡ C⎨⎢⎩⎪ ⎣⎢ILj,ND0pj,NLj,ND0nj,N⎛ 1 1− − ν⎜⎝ 2 1+α⎛ 1 1− − ν⎜⎝ 2 1+α⎞⎛09 . V⎟ ⎜ +⎠⎝08 . 08 . V⎞⎛09 . V⎟⎜+⎠⎜⎝08 . 08 . V10VlneV10VlneVTpj, N + 1 D0nj, N D0nj,NDDTnj, N + 1 D0pj, ND0pj,NDDDDDD⎞ ⎤⎫⎟ ⎥⎪⎟⎬⎥⎠ ⎦⎪⎭⎞ ⎤⎟ ⎥ +⎠ ⎦⎥(17)on<strong>de</strong>: ν Tnj,N+1 será tomado como V Tn /V D0n ;ν Tpj,N+1 será tomado como |V Tp |/V D0p .Este termo reflete a influência do último inversor do tapered buffer, o N-ésimo inversor, no atrasodos inversores ligados a sua saída. A adição <strong>de</strong> (17) além <strong>de</strong> melhor avaliar os efeitos do mismatch nobuffer também torna mais simples a manipulação das <strong>de</strong>rivadas, como veremos mais adiante.Consi<strong>de</strong>raremos como expressão do atraso do j-ésimo buffer a que é dada abaixo:tDjN∑i=1V=2DDL Cji , Lji ,W Cji , oxji ,⎡ CL0CL0⎢ FV (Tpj, 1, VD0pj, 1) FV (Tnj, 1, VD0nj,1)+⎣ ID0n0ID0p0[ FD ( VTnj, i, VTpj, i+ 1, VD0nj, i, µnj, iKCnj, i ) + FD ( VTpj, i, VTnj, i+1VD 0pj, i, θµpj, iKCpj,i )]](18)on<strong>de</strong>: V Tnj,N+1 será tomado como V Tn ;V Tpj,N+1 será tomado como V Tp .Para cálculo da variância dos t D s faremos uso do teorema abaixo [Pa91].2Teorema: Consi<strong>de</strong>re as variáveis aleatórias x 1 , x 2 , ..., x n , com média e variância ( x )( x n xn ),σ , ...1 x1,σ 2 , respectivamente, e a variável aleatória y, y=g(x 1 , x 2 , ..., x n ). Se a função g ésuficientemente suave ("smooth") perto <strong>de</strong> ( x x n )1 ,...., , então a variância <strong>de</strong> y po<strong>de</strong> ser estimada emtermos da média, variância e covariância <strong>de</strong> x 1 , x 2 , ..., x n :n∂g∂gσ2 y= ∑∂x∂x C ,i,jijxi xj(19)on<strong>de</strong>: C xi,xj é a covariância entre x i e x j ;a função g e suas <strong>de</strong>rivadas são avaliadas em ( x x n )1 ,...., .2Observe que C xi,xi =σ xiDeterminaremos, a partir <strong>de</strong> (18), a variância no atraso dos buffers causada pela dispersão dosparâmetros L j,i , W j,i , C oxj,i , V Tnj,i , V Tpj,i , µ nj,i e µ pj,i , <strong>para</strong> 1≤ i ≤ N . Os parâmetros V D0nj,i , V D0pj,i , K Cnj,i e


112Otimização <strong>de</strong> Tapered Buffers <strong>para</strong> <strong>alta</strong>s taxas <strong>de</strong> operaçãoK Cpj,i , por sua vez, são tomados como iguais a V D0n , V D0p , K Cn e K Cp , respectivamente. A restrição sobreque parâmetros sofrem variações serve <strong>para</strong> manter os resultados tratáveis.Na aplicação do teorema acima, <strong>para</strong> <strong>de</strong>terminar a variância dos t D s, a função g serátDN∑i=1V=2DDLCiWCiLioxi⎡ CL0CL0⎢ FV (Tp1, VD0p) FV (Tn1, VD0n) +⎣ ID0n0ID0p0[ FD ( VTni , VTpi+ 1, VD0n , µniKCn ) + FD ( VTpi , VTni + 1VD 0p , θµpiKCp)]](20)MWK C µ0 0=DD−χLCn ox non<strong>de</strong>: I( V V )D nC = ( 1+ θ) ⎛ ⎜ K MW + ( M − 1)WLC + WLC⎝ χL0 DS ox 1 1 ox1Tnαe I = Mθ WKCpCoxµpD p( V −0 0 DDVTp)L i é uma variável aleatória que mo<strong>de</strong>la a variação do comprimento <strong>de</strong> canal no i-ésimo inversor;W i é uma variável aleatória que mo<strong>de</strong>la a variação da largura <strong>de</strong> canal no i-ésimo inversor;C oxi é uma variável aleatória que mo<strong>de</strong>la a capacitância <strong>de</strong> porta dos transistores no i-ésimo inversor;V Tni e V Tpi são variáveis aleatórias que mo<strong>de</strong>lam a variação da tensão <strong>de</strong> limiar dos transistores N e P,respectivamente, no i-ésimo inversor;µ ni e µ pi são variáveis aleatórias que mo<strong>de</strong>lam a variação da mobilida<strong>de</strong> dos elétrons e lacunas nostransistores N e P, respectivamente, no i-ésimo inversor.Para a utilização <strong>de</strong> (19), é necessário saber a média, a variância e a covariância das variáveisaleatórias, além das <strong>de</strong>rivadas da equação (20) em relação a estas variáveis. Isto será <strong>de</strong>terminado aseguir.3.3.4.2 Mo<strong>de</strong>los estatísticos <strong>para</strong> os parâmetros variáveisComo apontado em [Pe89], po<strong>de</strong>mos se<strong>para</strong>r os processos que geram variações nos parâmetros dotransistor em duas classes. Na primeira classe, estão os processos físicos que têm variações <strong>de</strong> curtadistância, short distance variations, po<strong>de</strong>ndo ser mo<strong>de</strong>lados como ruído branco espacial (Figura40(a)). Chamaremos estas variações <strong>de</strong> short distance disturbances. Se o parâmetro é afetado porapenas este tipo <strong>de</strong> problema, então sua variância é <strong>de</strong>pen<strong>de</strong>nte <strong>de</strong> 1/WL, on<strong>de</strong> W e L são as dimensõesdo canal do transistor. Na segunda classe, estão os processos físicos que têm variações <strong>de</strong> longadistância ou long distance variations. O valor do parâmetro <strong>de</strong>pen<strong>de</strong>rá da posição do transistor nalâmina, ou melhor, é função <strong>de</strong> D 2 , on<strong>de</strong> D é a distância a um ponto <strong>de</strong> referência na lâmina.Chamaremos as variações <strong>de</strong>sta classe <strong>de</strong> long distance disturbances.⎞⎟⎠χLα;


Otimização <strong>de</strong> Tapered Buffers <strong>para</strong> <strong>alta</strong>s taxas <strong>de</strong> operação 113Os parâmetros W e L em particular são afetados por processos um pouco diferentes daquelesdiscutidos no parágrafo anterior, como apontado em [La86] e [Oe93]. Eles sofrem basicamente <strong>de</strong>efeitos <strong>de</strong> rugosida<strong>de</strong> das bordas, edge roughness, e problemas <strong>de</strong> acurácia <strong>de</strong> repetição no processo <strong>de</strong>geração <strong>de</strong> formas, repetition accuracy of pattern generation process (Figura 40). Ambos os processostêm variações <strong>de</strong> curta distância.A causa das variações, a média e a variância dos parâmetros, além da covariância entre eles, sãofornecidas abaixo ([La86], [Pe89] e [Oe93]). No que segue, indicaremos por x eσ xrespectivamente ovalor médio e a variância da variável x e por C x,y a covariância entre as variáveis x e y.WWWL(a) (b) (c)Figura 40. Processos básicos que geram os <strong>de</strong>svios nos parâmetros: (a) eventos que ocorremaleatoriamente no circuito como ruído branco (nonuniform arrangement of events), (b) rugosida<strong>de</strong>das bordas (edge roughness), e (c) acurácia <strong>de</strong> repetição no processo <strong>de</strong> geração <strong>de</strong> formas (repetitionaccuracy of pattern generation process)[Oe93].3.3.4.2.1 Parâmetro L iO comprimento <strong>de</strong> canal do transistor, L i , sofre <strong>de</strong>svios <strong>de</strong>vido à acurácia <strong>de</strong> repetição no processo<strong>de</strong> geração <strong>de</strong> formas, durante a produção do transistor, e <strong>de</strong>vido à rugosida<strong>de</strong> das bordas do canal[Oe93], como já dito. Os dois problemas são locais, short distance disturbances. Os valores da média evariância <strong>de</strong>ste parâmetro são22 2Li LAL⎛Li = L e σ ⎞⎜ ⎟ = ⎛ σ⎝ L ⎠ ⎝ ⎜ 0 ⎞⎟ +2(o primeiro termo da direita é causado pelo pattern generationL ⎠ LWiprocess; o segundo, pela edge roughness).on<strong>de</strong> σ L0 e A L são parâmetros do processo.O parâmetro L i é consi<strong>de</strong>rado como sendo in<strong>de</strong>pen<strong>de</strong>nte <strong>de</strong> todos os outros parâmetros, mesmo osoutros L i s, pois é modificado apenas por variações <strong>de</strong> curta distância.3.3.4.2.2 Parâmetro W iA largura <strong>de</strong> canal do transistor, W i , sofre também <strong>de</strong> <strong>de</strong>svios <strong>de</strong>vido à acurácia <strong>de</strong> repetição noprocesso <strong>de</strong> geração <strong>de</strong> formas, durante a produção do transistor, e <strong>de</strong>vido à rugosida<strong>de</strong> das bordas do


114Otimização <strong>de</strong> Tapered Buffers <strong>para</strong> <strong>alta</strong>s taxas <strong>de</strong> operaçãocanal [Oe93]. Os dois problemas são locais, short distance disturbances. Os valores da média evariância <strong>de</strong>ste parâmetro sãoWi=i−χ 1We⎛ σ⎜⎝ WWii22 2AW⎞ σW⎟ = ⎛ ⎠ ⎝ ⎜ 0 ⎞⎟ + 2 (o primeiro termo da direita é causado pelo patternWi⎠ LWgeneration process; o segundo, pela edge roughness).on<strong>de</strong> σ W0 e A W são parâmetros do processo.O parâmetro W i , tal como L i , é consi<strong>de</strong>rado in<strong>de</strong>pen<strong>de</strong>nte dos outros todos.i3.3.4.2.3 Parâmetros V Tni e V TpiA tensão <strong>de</strong> limiar do transistor N, V Tni , sofre <strong>de</strong> <strong>de</strong>svios <strong>de</strong>vido às short distance disturbances elong distance disturbances. Os valores da média e variância <strong>de</strong>ste parâmetro são [Pe89]VTni22AVTn= VTne σ VTni VTn is ceWL S 2 D 2= +tan(o primeiro termo da direita é causado pelas variações <strong>de</strong> curtaidistância; o segundo, pelas variações <strong>de</strong> longa distância).on<strong>de</strong> A VTn e S VTn são parâmetros do processo;D istance é a distância do transistor a uma referência.Assumiremos que todos os inversores que fazem parte do mesmo tapered buffer sofrem do mesmo<strong>de</strong>svio <strong>de</strong> longa distância. Também assumiremos que os processos <strong>de</strong> curta e <strong>de</strong> longa distância sãoin<strong>de</strong>pen<strong>de</strong>ntes. Em conseqüência, a covariância entre V Tni s seráC = S 2 D2 .VTni, VTnj VTn istanceAs informações na literatura acerca da covariância entre V Tni e os outros parâmetros, principalmenteC oxi e V Tpi , são controversas. Em [La86] é sugerido que a covariância entre V T e C ox é mínima, quasezero; em [Af92], todos os parâmetros do transistor são tomados como in<strong>de</strong>pen<strong>de</strong>ntes. Por outro lado,em [Ha96] é encontrado um coeficiente <strong>de</strong> correlação <strong>de</strong> 0,21 entre V Tn e V Tp , e um coeficiente <strong>de</strong>correlação <strong>de</strong> 0,86 entre V Tn e t ox (espessura do óxido <strong>de</strong> porta). [Po94] aponta que a tensão <strong>de</strong> flatband, tanto do transistor N como do P, tem coeficiente <strong>de</strong> correlação com t ox não pequeno (0,42 e 0,2respectivamente).Em nosso trabalho vamos assumir covariância zero entre V Tni e os outros parâmetros diferentes <strong>de</strong>V Tnj , principalmente por razões <strong>de</strong> simplicida<strong>de</strong>.A tensão <strong>de</strong> limiar do transistor P, V Tpi , tem as mesmas características que V Tni . Sua média evariância sãoVTpi2A2 VTp= VTpe σ VTpiWL S 2 D 2= +taniVTp is ceon<strong>de</strong> A VTp e S VTp são parâmetros do processo;


Otimização <strong>de</strong> Tapered Buffers <strong>para</strong> <strong>alta</strong>s taxas <strong>de</strong> operação 115D istance é a distância do transistor a uma referência.A covariância entre V Tpi s seráC = S 2 D2 .VTpi, VTpj VTp is tanceA covariância entre V Tpi e outros parâmetros é assumida como sendo zero.3.3.4.2.4 Parâmetro C oxiA capacitância, por unida<strong>de</strong> <strong>de</strong> área, no gate do transistor, C oxi , sofre <strong>de</strong> <strong>de</strong>svios <strong>de</strong>vido às shortdistance disturbances e long distance disturbances. Os valores da média e variância <strong>de</strong>ste parâmetrosão [Pe89]Coxi22ACox= Coxe σ Coxi Cox is ceWL S 2 D 2= +tan(o primeiro termo da direita é causado pelas variações <strong>de</strong> curtaidistância; o segundo, pelas variações <strong>de</strong> longa distância).on<strong>de</strong> A Cox e S Cox são parâmetros do processo;D istance é a distância do transistor a uma referência.Assumiremos que todos os inversores que fazem parte do mesmo tapered buffer sofrem do mesmo<strong>de</strong>svio <strong>de</strong> longa distância. Também assumiremos que os processos <strong>de</strong> curta e <strong>de</strong> longa distância sãoin<strong>de</strong>pen<strong>de</strong>ntes. Em conseqüência, a covariância entre C oxi s seráC = S 2 D2 .Coxi, Coxj Cox is tanceA covariância entre C oxi e outros parâmetros é assumida como sendo zero. As razões são as mesmasexpostas <strong>para</strong> o parâmetro V Tni .3.3.4.2.5 Parâmetros µ ni e µ piA mobilida<strong>de</strong> dos elétrons no transistor N, µ ni , sofre <strong>de</strong> <strong>de</strong>svios <strong>de</strong>vido às short distancedisturbances e long distance disturbances. Os valores da média e variância <strong>de</strong>ste parâmetro são [Pe89]2A2 µ nµ = µni ne σ µ niµ n is ceWL S 2 D 2= +tan(o primeiro termo da direita é causado pelas variações <strong>de</strong> curtaidistância; o segundo, pelas variações <strong>de</strong> longa distância).on<strong>de</strong> A µn e S µn são parâmetros do processo;D istance é a distância do transistor a uma referência.Assumiremos que todos os inversores que fazem parte do mesmo tapered buffer sofrem do mesmo<strong>de</strong>svio <strong>de</strong> longa distância. Também assumiremos que os processos <strong>de</strong> curta e <strong>de</strong> longa distância sãoin<strong>de</strong>pen<strong>de</strong>ntes. Em conseqüência, a covariância entre µ ni s seráC = S 2 D2 .µ ni, µ nj µ n istance


116Otimização <strong>de</strong> Tapered Buffers <strong>para</strong> <strong>alta</strong>s taxas <strong>de</strong> operaçãoInformações sobre a covariância entre µ ni e os outros parâmetros são poucas na literatura. Em[Po94] po<strong>de</strong>mos calcular o coeficiente <strong>de</strong> correlação entre µ n e µ p , que resulta ser baixo. Adotaremos,portanto, covariância zero entre µ ni e os outros parâmetros diferentes <strong>de</strong> µ nj .A mobilida<strong>de</strong> das lacunas no transistor P, µ pi , tem as mesmas características que µ nj . Sua média evariância são2A2 µ pµ = µpi pe σ µ piµWL S 2 D 2= +tanip is ceon<strong>de</strong> A µp e S µp são parâmetros do processo;D istance é a distância do transistor a uma referência.A covariância entre µ pi s seráC = S 2 D2 .µ pi, µ pj µ p is tanceA covariância entre µ pi e outros parâmetros é assumida como sendo zero.3.3.4.3 Expressões <strong>para</strong> as <strong>de</strong>rivadas e sua avaliação nos valores médiosDevemos encontrar as <strong>de</strong>rivadas <strong>de</strong> t D (20) em função dos parâmetros L i , W i , C oxi , V Tni , V Tpi , µ ni eµ ni , 1≤i≤N e, posteriormente, avaliar estas <strong>de</strong>rivadas no valor médio dos parâmetros. A <strong>de</strong>dução<strong>de</strong>stes segue-se.Primeiro calculamos as <strong>de</strong>rivadas com relação aos W i s. De (20) chegamos a∂tV ⎧⎡DL L W CL= + − +2 1 0∂Wi2 ⎩⎪ ⎣ WiCoxiWi⎡ LL i i+ 1Wi+ 1Coxi+1L LC⎢− FD VTpi VTni VD p piKCp+2 1 0⎣ WiCoxiWi−1Coxi−1<strong>para</strong> 1 < i ≤ N .DD ⎪ i i+ 1 i+ 1 oxi+1i−1i oxi( 1 θ ) ⎨⎢FD( VTni, VTpi+, VD n, µ niKCn) FD( VTni−1, VTpi, VD0n,µ ni−1KCn)LCC−1 oxi−1i−1i oxi( , + , , θµ )Fn( VTpi−1, VTni, VD0p,θµpi−1KCp)As <strong>de</strong>rivadas avaliadas no valor médio das variáveis serão:∂tD∂Wivalormediodasvar iaveis22VDD⎡ L χ( 1 θ) ⎢D( Tn, Tp, D0n, µn Cn) D( Tn, Tp, D0n,µn Cn)W F V V V K L= + − +2 ⎣W F V V V Kii−122VDD⎡ L χ( 1+ θ) ⎢− D( Tp, Tn, D0p, θµp Cp) +D( Tp, Tn, D0p,θµp Cp)2⎣W F V V V K LW F V V V Kii−1⎤⎥ = 0⎦Logo as <strong>de</strong>rivadas em relação aos W i s, <strong>para</strong> 1 < i ≤ N , têm valor zero quando avaliadas no valormédio das variáveis. Para i=1 o resultado é ligeiramente diferente:⎤⎫⎪⎥⎬⎦⎭⎪⎤⎥ +⎦⎤⎥ +⎦


Otimização <strong>de</strong> Tapered Buffers <strong>para</strong> <strong>alta</strong>s taxas <strong>de</strong> operação 117V ⎧⎡L1LWC2 2 2LC1 ox1( 1 θ ) ⎨⎢2FD( VTn1, VTp2, VD0n, µn1KCn) FV ( Tp1,VD0n)∂tD DD ox= + − +∂W12 ⎩⎣WC1 ox1⎡ LLWC1 2 2 ox2⎢− 2FD VTp VTn VD p pKCp+⎣⎢WC1 ox1ID0p0LC1 ox1( 1, 2, 0, θµ1 ) FV ( Tn1,VD0p)Quando M>>1 teremos no valor médio∂tD∂Wvalormediodas1variaveisID0n02VDDL( 1 θ) χD( Tn, Tp, D0n, µn Cn) D( Tp, Tn, D0p,θµp Cp)⎤⎫⎪⎥⎬⎦⎥⎭⎪[ ]≈− +W F V V V K +2F V V V K(21)A <strong>de</strong>dução das <strong>de</strong>rivadas com respeito aos L i s é feito abaixo.V ⎡DDKDSWioxi+ 1 i+ 1 i+1( 1 θ ) ⎢D( Tni, Tpi+1, D0n, µni Cn) FD( VTni, VTpi+1, VD0n,µniKCn)∂tD∂LWC F V V V K C L W= + + +i2 ⎣ i oxiWCi oxiC L W⎤oxi i−1iFD ( VTni− 1, VTpi , VD0ni− 1,µni−1KCn) ⎥ +Wi−1Coxi−1⎦V ⎡DDKDSWi( 1+θ)WC F V V VCoxi+ 1Li + 1Wi+ 1D( Tpi, Tni+1,D0p pi Cp) D( Tpi Tni D p pi Cp)2⎢, θµ K + F V , V+ 1, V0, θµ K +⎣ i oxiWCi oxiCoxi Li W⎤−1iFD( VTpi−1, VTni, VD0p,θµpi−1KCp)WiC⎥−1 oxi−1⎦<strong>para</strong> 1 < i ≤ N .Estas <strong>de</strong>rivadas avaliadas no valor médio das variáveis darão:∂t∂LDiLV ⎡ K ⎤( 1 θ) ⎢ χ ⎥ FD( VTn, VTp, VD n, µnKCn) + FD( VTp, VTn, VD p,θµpKCp)⎤⎥ +⎦( )DD DSvalor = + + 20 0(22)medio2 LCoxdas⎣ ⎦iaveisvarPara i=1 teremosV ⎡ K W1ox2 2 2( 1 θ ) ⎢D( Tn1, Tp2, D0n, µn1Cn) FD( VTn1, VTp2, VD0n,µn1KCn)∂tD DD DS∂LWC F V V V K C LW= + +12 ⎣ 1 ox1WC1 ox1+C W⎤ox1 1FV ( Tp1, VD0n,)⎥ +ID0n0⎦WC F V V V K C LW2 ⎣ 1 ox1WC1 ox1θµ +CoxW⎤1 1FV ( Tn1,VD0p) ⎥ID0p0⎦⎥V ⎡DDKDSW1ox2 2 2( 1+ θ) ⎢D( Tp1, Tn2, D0p, θµp1Cp)+ FD( VTp1, VTn2, VD0p,p1KCp)Esta <strong>de</strong>rivada avaliada no valor médio das variáveis dará (<strong>para</strong> M>>1)


118Otimização <strong>de</strong> Tapered Buffers <strong>para</strong> <strong>alta</strong>s taxas <strong>de</strong> operação∂t∂L( )LV ⎡ K ⎤( 1 θ) ⎢ χ ⎥ FD( VTn, VTp, VD0n, µnKCn) + FD( VTp, VTn, VD0p,θµpKCp)DD DS≈ + +medio2 LCdas⎣ oxiaveisDvalor1var⎦O próximo passo é encontrar as <strong>de</strong>rivadas com relação às variáveis C oxi s:∂tV ⎡DDD KDS LW i iLL i i+ 1Wi+ 1Coxi+1= ( 1 + θ ) ⎢− FD( VTni, VTpi+, VD n, µ niKCn) − FD( VTni, VTpi+, VD n,µ niKCn)+2 1 02 1 0∂Coxi2 ⎣ WC i oxiWC i oxiLL i i−1Wi⎤FD( VTni−1, VTpi, VD0n,µ ni−1KCn)⎥WiC+−1 oxi−1⎦V ⎡DD KDS LW i iLL i i+ 1Wi+ 1Coxi+1( 1 + θ)⎢−F2 D( VTpi, VTni+1, VD0p, θµ piKCp) − FD( VTpi, VTni+, VD p,piKCp)+2 1 0 θµ2 ⎣ WC i oxiWC i oxiLL i i−1Wi⎤FD( VTpi−1, VTni, VD0p,θµ pi−1KCp)⎥Wi−1Coxi−1⎦<strong>para</strong> 1 < i ≤ N .No valor médio das variáveis estas <strong>de</strong>rivadas serão∂t∂CDoxi2 2V ⎡ K L χLχL⎤( 1 θ) ⎢ 2D( Tn, Tp, D0n,µn Cn)DD DSvalor = + − − +C C C⎥ F V V V K +medio2ox ox oxdas⎣⎦iaveisvar2 2V ⎡ K L χLχL⎤DD DS( 1+ θ) ⎢− 2− + ⎥ D( Tp, Tn, D0p,θµp Cp)2e por fim⎣CCox ox oxC ⎦F V V V K∂t∂CDoxivalormediodasvariaveis[ FD( VTn VTp VD n nKCn) FD( VTp VTn VD p pKCp)]VDDKDSL=− ( 1+ θ )2, ,0, µ + , ,0, θµ(23)2 CoxPara i=1 teremos∂t∂CDox1LW1 1FVID0n0( Tp1,VD0n)LLWC1 2 2 ox2( ) 2FD( VTna VTp2 VD0n n1KCn)V ⎡DDKDSLW1 1= ( 1+ θ ) ⎢− 2FD VTn1, VTp2, VD0n, µn1KCn− , , , µ +2 ⎣ WC1 ox1WC1 ox1V ⎡DDKDSLW1 1LLWC1 2 2 ox2( 1+ θ) ⎢− 2FD( VTp1, VTn2, VD0p, θµp1KCp)−2FD( VTp1, VTn2, VD0p,p1KCp)2LW1 1FVID0p0⎣WC( Tn1,VD0p)⎤⎥ +⎦1 ox1⎤⎥⎦⎥WC1 ox1No valor médio das variáveis esta <strong>de</strong>rivada será (<strong>para</strong> M>>1)θµ +


Otimização <strong>de</strong> Tapered Buffers <strong>para</strong> <strong>alta</strong>s taxas <strong>de</strong> operação 119∂t∂CDoxi[ ]2V ⎛ K L χL⎞( 1 θ) ⎜2⎟ FD( VTn, VTp, VD n, µnKCn) + FD( VTp, VTn, VD p,θµpKCp)DD DSvalor ≈− + +medio2 ⎝ C Cdasoxiaveisvarox⎠0 0.As <strong>de</strong>rivadas com respeito as variáveis V tni s e V tpi s são <strong>de</strong>terminadas <strong>para</strong> 1 < i ≤ N .∂t∂V∂t∂V∂t∂VDTniDTpiDTni( , , , ) L C ∂FD( VTpi−1, VTni, VD0p,θµpi−1KCp)V⎡LC ∂ F V V V µ KDD i Li D Tni Tpi D n ni Cn i= ⎢+2 ⎢WCi oxi∂VTniWi−C⎣+ 1 0 −1 Li−11 oxi−1∂V( , , , ) L C ∂ FD( VTni−1, VTpi, VD0n,µni−1KCn)V⎡LC ∂F V V V θµ KDD i Li D Tpi Tni D p pi Cp i= ⎢+2 ⎢WCi oxi∂VTpiWi−C⎣valormediodasvariaveis+ 1 0 −1 Li−11 oxi−1V ⎛ K ⎞⎡( θ)χ ∂ F z, V , V , µ K ∂F V , z, V , θµ KDD 2 DS0 0= 1+ L ⎜ + ⎟ ⎢+2 ⎝ LCox⎠ ⎢ ∂z∂z⎣Tni∂V( ) ( )D Tp D n n Cn D Tp D p p CpTpi⎤⎥⎥⎦⎤⎥⎥⎦⎤⎥⎥⎦(24)∂t∂VDTpi( ) ( )V ⎛ K ⎞⎡( θ)χ ∂ F z, V , V , θµ K ∂ F V , z, V , µ K2 0= + L ⎜ + ⎟ ⎢01+2 ⎝ LCox⎠ ⎢ ∂z∂z⎣DD DSvalormediovarD Tn D p p Cp D Tn D n n Cn⎤⎥⎥⎦(25)Para i=1 encontraremos os mesmos valores <strong>para</strong> as <strong>de</strong>rivadas.Finalmente, as <strong>de</strong>rivadas com respeito as variáveis µ ni s e µ pi s <strong>para</strong> 1 ≤ i ≤⎡∂tDV LC= ⎢∂µni2 ⎢WCi⎣DD i Li⎡∂tDV LC= ⎢∂µpi2 ⎢WCi⎣∂tD∂µni∂tD∂µpivalormediodasvariaveisoxiDD i Lioxi( ,+ 1, 0, )∂ F V V V µ K∂µD Tni Tpi D n ni Cnni⎤⎥⎥⎦( ,+ 1, 0, )∂F V V V θµ K∂µD Tpi Tni D p pi CppiV ⎛ K ⎞⎡( θ)L χ ∂ F V , V , V , zKDD 2 DS0= 1+ ⎜ + ⎟ ⎢2 ⎝ LCox⎠ ⎢ ∂z⎣⎤⎥⎥⎦( )D Tn Tp D n CnV ⎛ K ⎞⎡( θ)L χ ∂ F V , V , V , θ zK2 0= 1+ ⎜ + ⎟ ⎢2 ⎝ LCox⎠ ⎢ ∂z⎣DD DSvalormediovar⎤⎥⎥⎦( )D Tp Tn D p Cp⎤⎥⎥⎦N são(26)(27)Uma observação final <strong>de</strong>ve ser feita. Pu<strong>de</strong>mos tratar as <strong>de</strong>rivadas <strong>para</strong> 1 < i ≤ N igualmente, emtodos os casos acima, <strong>de</strong>vido ao termo (17) que foi adicionado <strong>para</strong> formar a expressão (18), que, porsua vez, gerou (20).


120Otimização <strong>de</strong> Tapered Buffers <strong>para</strong> <strong>alta</strong>s taxas <strong>de</strong> operação3.3.4.4 Cálculo da variância do atraso <strong>de</strong> um Tapered BufferAgora a equação (19) somada as relações das <strong>de</strong>rivadas <strong>de</strong> (20), expressões <strong>de</strong> (21) a (27), e osmo<strong>de</strong>los estatísticos dos parâmetros variáveis, com as médias, variâncias e covariâncias, fornecerãoenfim a variância <strong>de</strong> t D . Por razões <strong>de</strong> simplicida<strong>de</strong> usaremos a expressão (22), válida apenas <strong>para</strong>1 < i ≤N , no cálculo da <strong>de</strong>rivada ∂ t∂LD1e a expressão (23), válida apenas <strong>para</strong>1 < i ≤ N , no cálculo da<strong>de</strong>rivada∂t∂CDox1. Abaixo está a expressão <strong>de</strong> σ tD :2σ =tD⎛⎜ Z⎝⎡⎢Z⎣⎡⎢Z⎣( Z χ)KLC1DS1 2ox35⎛ K⎜⎝ LCDS⎛ K⎜⎝ LCoxDSox22⎛⎛σ⎜⎜⎝⎝W2 2⎞ A ⎞ K⎟ +2Z12χ⎠ W L⎠⎟ + ⎡ ⎛⎜⎝ LC+ ⎞ ⎤⎢⎟ ⎥⎣ ox ⎠ ⎦W0W DSN⎞ ⎤ ⎛ Aµp+ χ⎟⎥ ⎜∑+ N S⎠ ⎦ ⎝ i=1 LW i22 N 2⎛ ⎛ σL0⎞ A ⎞L⎜ N⎜⎟ + L2⎝ ⎝ ⎠∑ ⎟ +WL i ⎠N 22⎞ ACoxDSVTnCoxχi LW N 2 S 2 D 2Z KA2⎠⎟ ⎛+ ⎞ ⎡ ⎛ ⎞⎤N⎛⎜∑ ⎟ + ⎢ ⎜ + ⎟⎥⎝ = 1 i⎠ ⎣ ⎝ LCox⎠⎦LW N S D ⎞2 2 2⎜∑+VTn ⎟ +⎝ i=1 i⎠2 2NAN⎞⎤VTpLW N S D Z KADSn+ ⎟ ∑LCLW N S DVTp∑n⎠⎦⎥ ⎛+⎞ ⎡ ⎛ ⎞ ⎤⎜⎟ + ⎢ ⎜ + ⎟⎝ i= i⎠ ⎣ ⎝ ox ⎠ ⎦⎥ ⎛+⎞2 2 2µ 2 2 2χ⎜⎟4χµ+1⎝ i=1 i ⎠2 2D2 2 2µ p⎞⎟⎠2i=12 2[ ]VDD2on<strong>de</strong>: Z1= ( 1+ θ ) L FD( VTn, VTp, VD0n, µnKCn) + FD( VTp, VTn, VD0p,θµpKCp)ZZZ2342( ) ( )⎡V ∂ F z, V , V K F V z V K2 0, µ ∂ , ,0, θµ= ( 1+ θ ) L ⎢+2 ⎢ ∂z∂z⎣DD D Tp D n n Cn D Tp D p p Cp( ) ( )⎡V ∂F z, V , V K F V z V K2 0, θµ ∂ , ,0, µ= ( 1+ θ)L ⎢+2 ⎢ ∂z∂z⎣( 1 θ)= +V2DD D Tn D p p Cp D Tn D n n Cn( , , , )⎡∂F V V V zK2 0L ⎢⎢ ∂z⎣DD D Tn Tp D n Cn⎤V⎥ e Z ( )5= 1+θ⎥2⎦L⎤⎥⎥⎦⎤⎥⎥⎦( , , , θ )⎡∂F V V V zK⎢⎢ ∂z⎣DD 2 D Tp Tn D0p CpNotemos que Z 1 , Z 2 , Z 3 , Z 4 e Z 5 são in<strong>de</strong>pen<strong>de</strong>ntes <strong>de</strong> W. Rescrevemos a equação da variânciaeliminando todos os somatórios e se<strong>para</strong>ndo os termos:⎤⎥⎥⎦


Otimização <strong>de</strong> Tapered Buffers <strong>para</strong> <strong>alta</strong>s taxas <strong>de</strong> operação 1212σ =tD⎡ ⎛ K⎢Z1⎜⎣ ⎝ LC⎡⎢Z⎣⎡⎢Z⎣24⎛⎜ Z⎝⎡⎢Z⎣σ⎝ W2⎛0 ⎞( Z χ) ⎜ ( Z χ)1DSox⎛ K⎜⎝ LCDS⎛ K⎜⎝ LCoxDS⎛ K⎜⎝ LCoxDS1 2ox4K LCDS222 A ⎡ ⎛ K ⎞ ⎤⎟ +1 2+ Z1+ 2χ⎠⎢ ⎜ ⎟ ⎥W L ⎣ ⎝ LCox⎠ ⎦W W DS2⎞ ⎤ ⎛+ 2χ⎟⎥⎠⎜⎦ ⎝2⎞ ⎤ ⎛+ χ⎟⎥⎠⎜⎦ ⎝⎞ ⎤ ⎛+ χ⎟⎥⎠⎜⎦ ⎝2Nχ− 1⎞22ALDS⎟ + ⎛ Z⎝ ⎜ ⎞⎟K LCNχN −12 1 2( χ − 1) χ ⎠ WLox ⎠⎜⎝ ( χ − 1)Nχ − 1⎛⎜⎞ 2A ⎡VTnLW Z ⎛ K ⎞ ⎤ ⎛DS⎟ + ⎢ ⎜ + χ⎟⎥ ⎜⎣⎦2− 1Nχ−12⎛ σL0⎞N⎜⎟ +⎝ L ⎠2Nχ − 1⎞ 2ACox⎟ +⎠ LW2⎞ AVTp⎟ +⎠ LWN −13N 1( − 1) ⎠ ⎝ LCox⎠⎜−χ χ⎝ ( χ − 1)χ(28)2N22χ − 1 ⎞ Aµn⎡15( 1)LW Z ⎛ K ⎞ ⎤ ⎛ N2DSχ − 1 ⎞ AµpN−⎟ + ⎢ ⎜ + χ⎟−⎥χ χ ⎠ ⎣ ⎝ LCox⎠⎜⎦ ⎝ ( − )⎟ +N −1χ 1 χ ⎠ LW22⎡ ⎛ ⎞⎤( ) ⎢ ⎜ ⎟⎣ ⎝ ⎠⎦⎥ + ⎡ ⎛⎜⎝+ ⎞⎤2 2 2KDS2 2 2KDS2 2 2N SCoxD Z2χ N SVTnD ⎢Z3χ⎟⎥ N SVTpD+LCox⎣ LCox⎠⎦22⎞ ⎤⎟ ⎥ + ⎡ ⎛⎜ + ⎞2 2 2K ⎤DS2 2 2χ N S D ⎢Zχ⎟⎥ N S µD⎞⎟ + +⎠ox+⎠ ⎦µ n⎣5⎝ LCox⎠ ⎦A expressão da variância, exposta acima, obtida consi<strong>de</strong>rando as variações nos parâmetros L i , W i ,V Tni , V Tpi , C oxi , µ ni e µ pi , apesar das simplificações discutidas, apresenta ainda quatorze termos.3.3.4.5 Análise da variância em função do fator <strong>de</strong> aumentoUma vez encontrada a expressão <strong>para</strong> a variância (28), po<strong>de</strong>mos respon<strong>de</strong>r a questão original, asaber, como a variância do atraso é afetada pelo fator <strong>de</strong> aumento usado no tapered buffer. Vamoscom<strong>para</strong>r a variância do atraso na configuração da Figura 39, <strong>para</strong> buffers com fatores <strong>de</strong> aumentodiferentes. Consi<strong>de</strong>remos, portanto, duas implementações <strong>para</strong> a distribuição do clock; aimplementação A com M buffers, cada um <strong>de</strong>les com N a inversores e fator <strong>de</strong> aumento χ a , e aimplementação B com M buffers com N b inversores e fator <strong>de</strong> aumento χ b . Para que a com<strong>para</strong>çãotenha sentido vamos ainda assumir que valem, <strong>para</strong> ambas implementações, as condições:i. todos os buffers têm o mesmo valor <strong>de</strong> θ;ii. as dimensões do primeiro inversor <strong>de</strong> todos os buffers são iguais;Niii. a carga na saída <strong>de</strong> cada buffers é a mesma, ou seja que χpaaN b= χ .Para extrair algum resultado <strong>de</strong> (28), é feita a com<strong>para</strong>ção termo a termo da expressão.b3.3.4.5.1 Primeiro e segundo termoO primeiro e o segundo termos são os mais simples da expressão (28). Eles <strong>de</strong>pen<strong>de</strong>m diretamentedo fator <strong>de</strong> aumento, χ, e, portanto, serão maiores <strong>para</strong> valores maiores <strong>de</strong> χ.e AUm comentário adicional é sobre a importância <strong>de</strong>stes termos. É razoável supormos que σW≈ σW0 L0≈ A ; além disso normalmente W>>L. Em razão disso po<strong>de</strong>mos ver que o primeiro termo éL


122Otimização <strong>de</strong> Tapered Buffers <strong>para</strong> <strong>alta</strong>s taxas <strong>de</strong> operação⎡ ⎛ Kmuito menor que o terceiro, ⎢Z1⎜⎣ ⎝ LCDSox⎞ ⎤+ 2χ⎟⎥⎠ ⎦2⎛ σL0⎞N⎜⎟⎝ L ⎠2, e o segundo, muito menor que o quarto⎡ ⎛ K( ⎢Z1⎜⎣ ⎝ LCDSoxrelevantes.2⎞ ⎤ ⎛+ 2χ⎟⎥⎠⎜⎦ ⎝Nχ( χ − 1)− 1χN −1⎞ 2AL⎟⎠ WL2). São, portanto, os dois primeiros termos da expressão pouco3.3.4.5.2 Terceiro termoA razão entre os terceiros termos das expressões da variância nas duas implementações é calculadaabaixo:σσ2tD 3otermo 1bufferA ⎣=2 otD 3 termo ⎡bufferB⎢Z1⎡ ⎛ K⎢Z⎜⎝ LC⎣DS⎛ K⎜⎝ LCoxDSox⎞ ⎤+ 2χa⎟⎥⎠ ⎦⎞ ⎤+ 2χb⎟⎥⎠ ⎦22⎛ σL0⎞Na⎜⎟⎝ L ⎠⎛ σL0⎞Nb⎜⎟⎝ L ⎠22⎛ K⎜⎝ LC=⎛ K⎜⎝ LCDSoxDSox⎞+ 2χa⎟⎠⎞+ 2χb⎟⎠22NNab⎛ K⎜⎝ LC=⎛ K⎜⎝ LCDSoxDSox⎞+ 2χa⎟⎠⎞+ 2χb⎟⎠22ln χbln χ aσσotD3 termobufferAotD3 termobufferB⎛ K⎜⎝ LC=⎛ K⎜⎝ LCDSoxDSox⎞+ 2χa⎟⎠⎞+ 2χb⎟⎠ln χbln χaDo resultado acima, vemos que o comportamento relativo do terceiro termo da equação davariância do atraso <strong>de</strong>pen<strong>de</strong> do fator⎛ K⎜⎝ LCDSox⎞+ 2χ⎟⎠ln χ. Assim, estudando o comportamento <strong>de</strong>ste fatorcomo função do fator <strong>de</strong> aumento, χ, po<strong>de</strong>mos saber se o terceiro termo aumenta ou não com χ. Umresultado mais conveniente <strong>para</strong> análises po<strong>de</strong> ainda ser <strong>de</strong>rivado. Consi<strong>de</strong>re a <strong>de</strong>sigualda<strong>de</strong> abaixo:σσotD3 termobufferAotD3 termobufferB⎛ K⎜⎝ LC=⎛ K⎜⎝ LCDSoxDSox⎞+ 2χa⎟⎠⎞+ 2χb⎟⎠ln χbln χa≥*⎛ K⎜⎝ LCDS⎛ K⎜⎝ LCoxDSox⎞+ χa⎟⎠⎞+ χb⎟⎠ln χbln χa=ttdadbln χbln χa* <strong>para</strong> χ ≥ χabon<strong>de</strong> t da é o atraso médio <strong>de</strong> um inversor da implementação A e t db é da implementação B (veja (11)).A <strong>de</strong>sigualda<strong>de</strong> mostra que se usarmos o fator Fac3 = <strong>para</strong> estudo do comportamento doln χt dterceiro termo, estaremos “prejudicando” os buffers <strong>de</strong> menor fator <strong>de</strong> aumento. Como o valor <strong>de</strong> t dpo<strong>de</strong> ser <strong>de</strong>terminado facilmente por simulações, preferimos analisar Fac 3 .


Otimização <strong>de</strong> Tapered Buffers <strong>para</strong> <strong>alta</strong>s taxas <strong>de</strong> operação 1233.3.4.5.3 Quarto termoA razão entre os quartos termos das expressões da variância nas duas implementações é calculadaabaixo:σσ2tD 4otermo1bufferA ⎣=2 otD 4 termo ⎡bufferB⎢Z1⎡ ⎛ K⎢Z⎜⎝ LC⎣DSox⎛ K⎜⎝ LCDSox2⎞⎤+ 2χa⎟⎥⎠⎦⎞⎤+ 2χb⎟⎥⎠⎦2AWLAWL⎛χχ− 1Nχ2NaLa2 ⎜a −1⎝ ( χa− 1)a⎛− 1Nχ2NbLb2 ⎜b −1⎝ ( χb− 1)b⎞⎟⎠⎞⎟⎠⎛ K⎜⎝ LC=⎛ K⎜⎝ LCDSoxDSox⎞+ 2χa⎟⎠⎞+ 2χb⎟⎠22χNaa( χ − 1)aχNbb( χ − 1)b− 1χNa−1a− 1χNb−1b=*⎛ K⎜⎝ LC⎛ K⎜⎝ LCDSoxDSox⎞+ 2χa⎟⎠⎞+ 2χb⎟⎠22( χb−( χ − 1)a⎛ K⎜χa⎝ LC=χb⎛ K⎜⎝ LCDSoxDSox⎞+ 2χa⎟⎠⎞+ 2χb⎟⎠22ffGaGbχon<strong>de</strong> f G=χ − 1 ;N a N b* lembremos que χ = χ .abAinda, como acima, po<strong>de</strong>mos fazer as seguintes manipulaçõesσσtD bufferatD bufferb⎛ K⎜⎝ LC=⎛ K⎜⎝ LCDSoxDSox⎞+ 2χa⎟⎠⎞+ 2χb⎟⎠ffGaGb≥*ttdadbffGaGb* <strong>para</strong> χ ≥ χabO fator Fac = t f será usado <strong>para</strong> a análise do comportamento do quarto termo.4dG3.3.4.5.4 Quinto termoA razão entre os quintos termos das expressões da variância nas duas implementações é calculadaabaixo:σσσσDSZK 2⎛ ⎞2tD 5⎜otermo1 2⎟⎝ LCbufferAox ⎠=2 otD 5 termobufferBDSZK 2⎛ ⎞⎜1 2⎟⎝ LCox⎠otD5 termobufferAotD5 termobufferBfGa= .fGb2A ⎛CoxLW ⎜⎝2A ⎛CoxLW ⎜⎝χ( χ − 1)aχNaaNbb( χ − 1)b− 1χa N a −1− 1Nχb −1b⎞⎟⎠⎞⎟⎠χa=χb( χb− 1)( χ − 1)a=ffGaGb


124Otimização <strong>de</strong> Tapered Buffers <strong>para</strong> <strong>alta</strong>s taxas <strong>de</strong> operaçãoO fator Fac 5= f Gserá usado <strong>para</strong> análise do comportamento do quinto termo. Notemos que nãofoi usada nenhuma <strong>de</strong>sigualda<strong>de</strong> aqui.3.3.4.5.5 Sexto a nono termosA razão entre os sextos termos das expressões da variância nas duas implementações é calculadaabaixo:σσ⎡⎢Z2tD 6otermo 2bufferA ⎣=2otD 7 termo ⎡bufferB⎢Z2⎣⎛ K⎜⎝ LCDS⎛ K⎜⎝ LCoxDSox⎞⎤+ χa⎟⎥⎠⎦⎞ ⎤+ χb⎟⎥⎠ ⎦222A ⎛VTnLW ⎜⎝2A ⎛VTnLW ⎜⎝χ( χ − 1)aχNaNb( χ − 1)bab− 1χχNa−1a− 1Nb−1b⎞⎟⎠⎞⎟⎠=tt2da2dbχχab( χb− 1)( χ − 1)a=tt2da2dbffGaGbσσotD6 termobufferAotD6 termobufferBtfda Ga= .t db fGbO fator Fac = t f será usado <strong>para</strong> análise do comportamento do sexto termo. Para o sétimo, o6dGoitavo e o nono termo, facilmente encontramos que Fac = Fac = Fac = t f .7 8 9dG3.3.4.5.6 Décimo termoA razão entre os décimo termos das expressões da variância nas duas implementações é calculadaabaixo:σσ⎛⎜ ZK LC2DStD 10otermo 1 2bufferA ⎝ ox=2 otD 10 termo ⎛bufferBDS⎜ ZK 1 2⎝ LCox⎞⎟⎠⎞⎟⎠222 2 2( NaSCoxD)2 2 2( NbSCoxD)N= ;N2a2bσσotD 10 termobufferAotD 10 termobufferBNaχb= = ln .N ln χbaO fator Fac 101= ln χserá usado <strong>para</strong> análise do comportamento do décimo termo.3.3.4.5.7 Décimo primeiro a décimo quarto termosA razão entre os décimos primeiros termos das expressões da variância nas duas implementações écalculada abaixo:σσ⎡⎢Z2tD 11otermo 2bufferA ⎣=2 otD 11 termo ⎡bufferB⎢Z2⎣⎛ K⎜⎝ LCDS⎛ K⎜⎝ LCoxDSox⎞⎤+ χ ⎟⎥⎠⎦⎞ ⎤+ χ ⎟ ⎥⎠ ⎦2N SD2 2 2a a VTn2N SD2 2 2b b VTn2da2dbt N= ;t N2a2bσσotD11 termobufferAotD11 termobufferBtNda a= =t db Nbttdadbln χb;ln χa


Otimização <strong>de</strong> Tapered Buffers <strong>para</strong> <strong>alta</strong>s taxas <strong>de</strong> operação 125t dO fator Fac = 11será usado <strong>para</strong> análise do comportamento do décimo primeiro termo. Para osln χoutros três termos, encontramos analogamente que Fac = Fac = Fac = . ln χ12 13 14Na Tabela 11 está um resumo dos resultados acima. Para cada um dos termos da equação (28) sãofornecidos a <strong>de</strong>scrição daquilo que o causa, a sua expressão e que fator <strong>de</strong>vemos analisar <strong>para</strong><strong>de</strong>terminar seu comportamento.Observe que os fatores ligados a C oxi , Fac 5 e Fac 10 , são in<strong>de</strong>pen<strong>de</strong>ntes da tecnologia.t d3.3.4.5.8 Resultados NuméricosPara que a com<strong>para</strong>ção dos termos possa ser realizada, <strong>de</strong>vemos conhecer os valores <strong>de</strong> t d emfunção <strong>de</strong> χ. Eles foram obtidos com o HSPICE que tem comandos específicos <strong>para</strong> calcular estagran<strong>de</strong>za [Me95a] sem necessida<strong>de</strong> <strong>de</strong> simulações com osciladores em anel. Foram simuladosinversores tanto da tecnologia CMOS 0,8µm (level 6) como da tecnologia 0,35µm (level 3)(APÊNDICE B). Parâmetros slow foram usados em ambos os casos. A Tabela 12 apresenta osresultados. A Figura 41, por sua vez, mostra o gráfico do atraso <strong>de</strong> um inversor em função do fator <strong>de</strong>aumento do buffer. Como era esperado, há uma relação linear entre atraso e fator <strong>de</strong> aumento.Tabela 11. Descrição, expressão e fator <strong>para</strong> análise <strong>de</strong> cada termo da equação (28).


126Otimização <strong>de</strong> Tapered Buffers <strong>para</strong> <strong>alta</strong>s taxas <strong>de</strong> operaçãoTermo <strong>de</strong>scrição do que causa otermoprimeiro accuracy of patterngeneration process <strong>de</strong> W i ;variações <strong>de</strong> curta dist.segundo edge roughness <strong>de</strong> W i ;expressão do termo( Z χ)variações <strong>de</strong> curta dist. ( Z1χ)terceiro accuracy of patterngeneration process <strong>de</strong> L i ;variações <strong>de</strong> curta dist.quarto edge roughness <strong>de</strong> L i ;quintosextosétimooitavononodécimodécimoprimeirodécimosegundodécimoterceirodécimoquarto⎡ ⎛ K⎢Z1⎜⎣ ⎝ LCDSox1⎛ σW0 ⎞⎜ ⎟⎝ W ⎠222AW2W L⎞⎤+ 2χ⎟⎥⎠⎦variações <strong>de</strong> curta dist. ⎢ 1⎥⎝ LCox⎠ ⎝ ( χ −1)nonuniform arrangement ofevents <strong>para</strong> C oxi ; variações222⎛ σL0⎞N⎜⎟⎝ L ⎠N2⎡ ⎛ K ⎞ ⎤ ⎛DSχ −1⎞ ALZ ⎜ + 2χ⎟⎜ ⎟N −12⎣⎦ χ ⎠ LWZK 2N2⎛ ⎞ ⎛DSχ − 1 ⎞ ACox⎜1 2⎟N 1⎝ LCox⎠⎜−⎝ χ − 1 χ⎟⎠ LW<strong>de</strong> curta dist. ( )nonuniform arrangement ofevents <strong>para</strong> V Tni ; variações<strong>de</strong> curta dist.nonuniform arrangement ofevents <strong>para</strong> V Tpi ; variações⎡⎢Z⎣2⎛ K⎜⎝ LCDSox2⎞⎤⎛+ χ⎟⎥⎜⎠⎦⎝Nχ( χ − 1)− 1χN −122⎞ AVTn⎟⎠ LWfator <strong>para</strong>análiseχ (termo nãosignificativo.)χ (termo nãosignificativo.)t dFac = 3ln χFac t fFac4 =5=df GFac t f2N2⎡ ⎛ K ⎞⎤⎛ADS1 VTpZ3⎜+ ⎟⎜ χ −⎞ Fac⎟= 7t d fG⎢ χ ⎥<strong>de</strong> curta dist. ⎝ LCN 1⎣ ox ⎠⎦⎜−⎝ ( χ − 1)χ ⎟⎠LWnonuniform arrangement of2N2⎡ ⎛ K ⎞⎤⎛ADSχ − 1 ⎞ Facnevents <strong>para</strong> µ ni ; variações <strong>de</strong> ⎢Z4⎜+ ⎟⎥N 1curta dist. ⎣ ⎝ LCox⎠⎜=µ8t d fGχ−⎦ ⎝ ( χ − 1)χ⎟⎠ LW2nonuniform arrangement ofN2⎡ ⎛ K ⎞ ⎤ ⎛ADSχ − 1 ⎞ Facpevents <strong>para</strong> µ pi ; variações <strong>de</strong> ⎢Z5⎜+ χ⎟⎥ ⎜ ⎟=µ 9t d fGN −1⎝ LCox⎠curta dist. ⎣⎦ ⎝ ( χ − 1)χ ⎠ LWvariações <strong>de</strong> longa dist. <strong>para</strong>C oxi Z K 2⎛ ⎞1DS 2 2 2⎜1 2⎟ N SCoxDFac 10=⎝ LCox⎠ln χvariações <strong>de</strong> longa dist. <strong>para</strong>2⎡ ⎛ K ⎞ ⎤DS2 2 2V Tni⎢Z2⎜+ χ ⎟ ⎥ N SVTnDFac = t d11⎣ ⎝ LCox⎠ln χ⎦variações <strong>de</strong> longa dist. <strong>para</strong>2⎡ ⎛ K ⎞ ⎤DS2 2 2V Tpi⎢Z3⎜+ χ ⎟ ⎥ N SVTpDFac = t d12⎣ ⎝ LCox⎠ln χ⎦variações <strong>de</strong> longa dist. <strong>para</strong>2⎡ ⎛ K ⎞ ⎤DS2 2 2µ ni ⎢Z4⎜+ χ ⎟ ⎥ N SnDFac = t d13µ⎣ ⎝ LCox⎠ln χ⎦variações <strong>de</strong> longa dist. <strong>para</strong>2⎡ ⎛ K ⎞ ⎤DS2 2 2µ pi ⎢Z4⎜+ χ ⎟ ⎥ N SpDFac = t d14µ⎣ ⎝ LCox⎠ln χ⎦6 =dGG


Otimização <strong>de</strong> Tapered Buffers <strong>para</strong> <strong>alta</strong>s taxas <strong>de</strong> operação 127Tabela 12. Atraso <strong>de</strong> um inversor como função do fator <strong>de</strong> aumento do buffer, <strong>para</strong> as tecnologias0,8µm e 0,35µm.fator <strong>de</strong>aumentoatraso do inversor <strong>para</strong>tecnologia <strong>de</strong> 0,8µm (ps)6 405,7 168,65,5 376,4 155,85 346,6 144,84,5 316,2 132,24 286,6 119,33,5 255,6 106,83 225,3 94,352,5 195,6 81,82 166 69,41,5 137 56,91,2 121 49,7atraso do inversor <strong>para</strong>tecnologia <strong>de</strong> 0,35µm (ps)atraso (ps)450 td(0,35) td (0,8)td(0,35)6 168,6 405,7400td (0,8)5,5 155,8 376,4350 5 144,8 346,6300 4,5 132,2 316,24 119,3 286,62503,5 106,8 255,6200 3 94,35 225,3150 2,5 81,8 195,62 69,4 1661001,5 56,9 13750 1,2 49,7 12100 1 2 3fator <strong>de</strong> aumento4 5 6Figura 41. Atraso <strong>de</strong> um inversor em função do fator <strong>de</strong> aumento do buffer <strong>para</strong> as tecnologias0,8µm e 0,35µm.Po<strong>de</strong>mos agora computar a variação dos Facs <strong>para</strong> estas tecnologias. As duas próximas figuras,Figura 42 e Figura 43, apresentam o comportamento relativo <strong>de</strong>stes fatores em função do valor <strong>de</strong> χ.Foi usado como referência, <strong>para</strong> cada um dos fatores, o seu valor no ponto χ=3.


Otimização <strong>de</strong> Tapered Buffers <strong>para</strong> <strong>alta</strong>s taxas <strong>de</strong> operação 129iii. V Tn0 , zero-bias threshold voltage, no mo<strong>de</strong>lo dos transistores N, sendo consi<strong>de</strong>rado igual <strong>para</strong>todos os transistores N do buffer. Os resultados aqui servem <strong>para</strong> verificar, indiretamente, as<strong>de</strong>rivadas ∂t De, diretamente, o comportamento <strong>de</strong> Fac 11 ;VTniiv. µ n0 , mobilida<strong>de</strong> dos portadores no mo<strong>de</strong>lo dos transistores N, sendo consi<strong>de</strong>rada igual <strong>para</strong> todosos transistores N do buffer. Os resultados aqui servem <strong>para</strong> verificar, indiretamente, as <strong>de</strong>rivadas∂t D∂µnoie, diretamente, o comportamento <strong>de</strong> Fac 13 .Para <strong>de</strong>terminar a variância do atraso, 1000 valores <strong>para</strong> cada parâmetro foram tomados. Com estenúmero po<strong>de</strong>mos garantir que o <strong>de</strong>svio padrão correto está <strong>de</strong>ntro <strong>de</strong> um intervalo inferior a ± 5% emtorno do valor do <strong>de</strong>svio padrão estimado a partir das simulações, com confiança <strong>de</strong> 90% (éconsi<strong>de</strong>rado que a distribuição <strong>de</strong> t D é normal e, portanto, seu <strong>de</strong>svio padrão tem distribuição quiquadrado [Co77]).A Figura 44 apresenta o <strong>de</strong>svio padrão normalizado do atraso do buffer <strong>para</strong> simulaçõesconsi<strong>de</strong>rando variações em L, C ox , V Tn0 e µ n0 , conforme explicado acima, <strong>para</strong> a tecnologia CMOS0,35µm. Cada um dos parâmetros é consi<strong>de</strong>rado se<strong>para</strong>damente. Também na figura são apresentadasas curvas <strong>de</strong> Fac 3 , Fac 10 , Fac 11 e Fac 13 .2.5Valornorm alizado do<strong>de</strong>svio padrão 2do atraso dobuffer1.53V ariância causada por LV ariância causada por C oxV ariância causada por V Tn0V ariância causada por µ n0F ac 3F ac 10F ac 11 e F ac 1310.501 2 3 4 5 6Fator <strong>de</strong> aum ento do b u ffer (χ )Figura 44. Gráfico do <strong>de</strong>svio padrão normalizado do atraso do buffer <strong>de</strong>terminado por simulações <strong>de</strong>"Monte Carlo", em função do fator <strong>de</strong> aumento do buffer (tecnologia 0,35µm). Também sãoapresentadas as curvas teóricas <strong>para</strong> com<strong>para</strong>ção dos resultados.Pelos resultados vemos que as relações teóricas e os dados <strong>de</strong> simulação estão bastante próximos.Uma observação a respeito das simulações feitas, <strong>para</strong> obter o <strong>de</strong>svio padrão do atraso, com variaçõesem C ox . O resultado mostrado no gráfico só foi conseguido após serem retiradas as resistências <strong>de</strong>


130Otimização <strong>de</strong> Tapered Buffers <strong>para</strong> <strong>alta</strong>s taxas <strong>de</strong> operaçãodreno e <strong>de</strong> fonte dos transistores, resistências calculadas e incluídas automaticamente pelo HSPICE.Esses resistores fazem com que o atraso do buffer tenda a aumentar quando o valor <strong>de</strong> C oxi aumenta e,diminuir quando o valor <strong>de</strong> C oxi diminui. A expressão (23), calculada sem consi<strong>de</strong>rar tais resistores,indica o comportamento inverso <strong>de</strong> t D com relação a C oxi . Desse modo, a presença dos resistores <strong>de</strong>dreno e fonte faz com que o efeito da variação <strong>de</strong> C oxi em t D seja mitigado.Dos resultados acima po<strong>de</strong>mos tirar alguma conclusões. Primeiro, concentremos nossa atenção emFac 5 e Fac 10 , ambos relacionados com C oxi . Note que como eles não <strong>de</strong>pen<strong>de</strong>m <strong>de</strong> t d , também não<strong>de</strong>pen<strong>de</strong>rão da tecnologia. Fac 5 e Fac 10 diminuem continuamente com o aumento <strong>de</strong> χ. Deste modo, avariância do atraso aumenta quando são utilizados valores baixos <strong>de</strong> χ, se estamos consi<strong>de</strong>randoapenas as variações causadas por distúrbios em C oxi . Não obstante este resultado <strong>de</strong>sfavorável,<strong>de</strong>vemos lembrar que C oxi é um dos parâmetros melhor controlados no processo <strong>de</strong> fabricação <strong>de</strong>circuitos integrados CMOS. Deste modo, po<strong>de</strong>mos esperar que a influência <strong>de</strong> C oxi seja <strong>de</strong> fatopequena. Também a presença <strong>de</strong> resistências <strong>de</strong> dreno/fonte, não consi<strong>de</strong>rada nas relações teóricas,reduz estes efeitos.Fac 3 ,Fac 4 , Fac 6 , ..., Fac 9 são <strong>de</strong>vidos às variações <strong>de</strong> curta distância em L i , V Tni , V Tpi , µ ni e µ pi . Paravalores <strong>de</strong> χ maiores que 2, estes fatores vão aumentado a medida que χ aumenta; <strong>para</strong> valores <strong>de</strong> χentre 1,5 e 2, os fatores sofrem poucas variações; por fim, se χ tem valores inferiores a 1,5 então osfatores aumentam bruscamente (Figuras 42 e 43). Segue <strong>de</strong>stas observações que a redução do fator <strong>de</strong>aumento, <strong>de</strong>s<strong>de</strong> que este fique acima <strong>de</strong> 1,5, não traz conseqüências negativas <strong>para</strong> a variância doatraso total, consi<strong>de</strong>rando as variações <strong>de</strong> curta distância em L i , V Tni , V Tpi , µ ni e µ pi .Fac 11 , ..., Fac 14 , que estão relacionados com variações <strong>de</strong> longa distância em V Tni , V Tpi , µ ni e µ pi , têmo seu valor mínimo em torno <strong>de</strong> χ=3,5 (Figuras 42 e 43). Para valores <strong>de</strong> χ menores que 1,5, Fac 11 , ...,Fac 14 aumentam rapidamente. Para χ=1,5 os valores <strong>de</strong> Fac 11 , ..., Fac 14 são 70% maiores que osvalores mínimos que estes fatores assumem.3.3.4.6 Consi<strong>de</strong>rações finais sobre o estudo do Mismatch do AtrasoA conclusão do estudo sobre a variância do atraso do tapered buffer é que seu comportamento<strong>de</strong>pen<strong>de</strong> do tipo <strong>de</strong> distúrbio que é predominante na tecnologia utilizada. De forma geral, variações <strong>de</strong>curta distância, exceto <strong>para</strong> C oxi , ten<strong>de</strong>m a causar maiores problemas <strong>para</strong> buffers com fator <strong>de</strong>aumento maior. Variações <strong>de</strong> longa distância, ao contrário, têm efeito mais acentuado nos buffers on<strong>de</strong>χ é <strong>de</strong> valor menor. Po<strong>de</strong>mos ainda esperar que, <strong>de</strong>s<strong>de</strong> que variações no C oxi não sejam a principal


Otimização <strong>de</strong> Tapered Buffers <strong>para</strong> <strong>alta</strong>s taxas <strong>de</strong> operação 131fonte <strong>de</strong> mismatches em t D , e <strong>de</strong>s<strong>de</strong> que o fator <strong>de</strong> aumento seja superior a 1,5, a utilização <strong>de</strong> maior oumenor fator <strong>de</strong> aumento no tapered buffer não causará gran<strong>de</strong>s diferenças na variância do atraso.3.4 Conclusões sobre a otimização <strong>de</strong> Tapered BuffersA aplicação do novo critério <strong>para</strong> otimização <strong>de</strong> tapered buffers permite, como vimos, um aumentoem torno <strong>de</strong> 20% da taxa máxima do sinal que propaga por eles. Este aumento, apesar <strong>de</strong> não serexpressivo, po<strong>de</strong>, em certas aplicações, ser <strong>de</strong> fundamental importância <strong>para</strong> se alcançar os resultados<strong>de</strong>sejados. Veremos no próximo capítulo um exemplo <strong>de</strong>stes.O novo critério exige a utilização, no geral, <strong>de</strong> fatores <strong>de</strong> aumento pequenos o que acarreta oaumento no número <strong>de</strong> inversores do buffer. Este maior número <strong>de</strong> inversores não pioranecessariamente as condições <strong>de</strong> matching entre buffers, como vimos. O comportamento do matching<strong>de</strong>pen<strong>de</strong>rá da tecnologia e dos tipos <strong>de</strong> distúrbios nela predominantes.


Circuitos <strong>de</strong> testes <strong>para</strong> a estratégia E-TSPC e <strong>para</strong> os Tapered Buffers 1334. Circuitos <strong>de</strong> testes <strong>para</strong> a estratégia E-TSPC e <strong>para</strong> os Tapered Buffers4.1 IntroduçãoNos dois capítulos prece<strong>de</strong>ntes apresentamos a estratégia E-TSPC e um novo critério <strong>para</strong>otimização <strong>de</strong> tapered buffers. A tônica <strong>de</strong>sses capítulos foi a apresentação teórica, sem comprovaçãoexperimental dos resultados.Durante a pre<strong>para</strong>ção do trabalho foram <strong>de</strong>senvolvidos alguns circuitos integrados que ajudaram naelaboração e na verificação das idéias apresentadas. Dentre eles um circuito Multiplexador 8:1, umDemultiplexador 1:8 com byte alignment e um circuito Dual-Modulus Prescaler (divi<strong>de</strong> por 128/129).O Multiplexador e o Demultiplexador foram implementados durante a fase inicial do trabalho <strong>para</strong>aperfeiçoar versões anteriores <strong>de</strong>stes mesmos circuitos ([Ro95a], [Ro95b], [Ro96]). Nestas novasimplementações foram empregados o critério <strong>de</strong> otimização <strong>de</strong> tapered buffers aqui tratado e flip-flopsusando blocos N-MOS like. O circuito Prescaler foi implementado com a finalida<strong>de</strong> específica <strong>de</strong>com<strong>para</strong>r o E-TSPC com outras <strong>técnicas</strong>.Apresentaremos neste capítulo estes três circuitos junto com os resultados experimentais obtidos. Atecnologia utilizada nas implementações foi a CMOS 0,8µm (comprimento <strong>de</strong> canal efetivo <strong>de</strong> 0,7µm),duplo metal, da ES2/ATMEL [Es94].4.2 Circuitos Multiplexador e DemultiplexadorUmas das áreas mais promissoras <strong>para</strong> a aplicação <strong>de</strong> circuitos CMOS <strong>de</strong> <strong>alta</strong> freqüência é a <strong>de</strong>transmissão digital <strong>de</strong> dados. No emprego <strong>de</strong> fibras óticas, que tem banda <strong>de</strong> transmissão superior a50000Gbit/s [Ta96], vários são os circuitos necessários.Circuitos Multiplexadores 8:1 e Demultiplexadores 1:8 <strong>para</strong> transmissão em padrão SONET/SDHforam <strong>de</strong>senvolvidos e implementados <strong>de</strong>ntro do Laboratório <strong>de</strong> Sistemas Integrados da <strong>USP</strong> ([Ro95a],[Ro95b], [Ro96], [No98]). Duas características básicas <strong>de</strong>stas implementações são:i. a utilização <strong>de</strong> níveis compatíveis com os níveis lógicos ECL <strong>para</strong> os sinais <strong>de</strong> entrada/saída <strong>de</strong><strong>alta</strong> freqüência (sinais <strong>de</strong> clock e dados multiplexados, este último sendo sinal <strong>de</strong> saída noMultiplexador e <strong>de</strong> entrada no Demultiplexador): os níveis ECL permitem que os circuitos possamser usados em ambientes <strong>de</strong> <strong>alta</strong> velocida<strong>de</strong>. Também é necessário, nestes ambientes, o casamento<strong>de</strong> impedância das linhas que conduzem os sinais rápidos ECL, reduzindo as reflexões dos sinais.Para isto são usados resistores <strong>de</strong> 50Ω externos ao C.I.. Com o emprego <strong>de</strong> sinais ECL, sãopossíveis tanto <strong>alta</strong>s velocida<strong>de</strong>s como níveis baixos <strong>de</strong> ruído <strong>de</strong>vido à excursão dos sinais serpequena (≈0,9V). A compatibilida<strong>de</strong> com ECL exige circuitos <strong>de</strong> entrada que façam a conversão<strong>de</strong> níveis lógicos ECL <strong>para</strong> os níveis lógicos CMOS usados internamente, chamados conversores


134Circuitos <strong>de</strong> testes <strong>para</strong> a estratégia E-TSPC e <strong>para</strong> os Tapered BuffersECL-CMOS, e circuitos <strong>de</strong> saída que façam a operação contrária, conversão dos níveis lógicosCMOS <strong>para</strong> os ECL, chamados conversores CMOS-ECL. Os valores <strong>de</strong> tensão dos níveis lógicosda família ECL 10KH, que são empregados no Multiplexador e no Demultiplexador, sãoapresentados na Tabela 13 [Bl88]. Para trabalhar com estas tensões negativas, a alimentação dosC.I.s <strong>de</strong>ve ser V DD =0V e V SS =-5V. No entanto, <strong>para</strong> fins <strong>de</strong> testes, empregamos os valoresconvencionais, V DD =5V e V SS =0V; os níveis ECL médios são então <strong>de</strong>slocados <strong>para</strong> 4,1V, nívelalto, e 3,2V, nível baixo;Tabela 13. Valores dos níveis lógicos ECL utilizados pelo Multiplexador e pelo Demultiplexador.níveis máximo (V) mínimo (V) médio (V)alto (V H(ECL) ) -0,81 -0,98 0,895baixo (V L(ECL) ) -1,63 -1,95 -1,79ii. são usadas nos C.I.s células TSPC e nestas, empregados transistores com dimensões próximas dasmínimas, não só <strong>para</strong> o comprimento do canal, que é prática corrente, mas também <strong>para</strong> a sualargura: uma das gran<strong>de</strong>s vantagens do TSPC, como foi dito no capítulo dois, é a simplificação dadistribuição do sinal <strong>de</strong> clock que é único. Os transistores <strong>de</strong> pequenas dimensões permitem que apotência consumida fique em níveis baixos. Também são explorados nestes <strong>projeto</strong>s ambos osníveis do clock, empregando-se D-flip-flops sensíveis à borda <strong>de</strong> subida e à borda <strong>de</strong> <strong>de</strong>scida.Na próxima seção <strong>de</strong>talhamos as implementações feitas originalmente <strong>para</strong> o Multiplexador e <strong>para</strong>o Demultiplexador.4.2.1 Projeto do Multiplexador e do Demultiplexador (primeira versão)4.2.1.1 Circuitos <strong>de</strong> entrada/saída conversores ECL-CMOS e CMOS-ECLOs circuito <strong>de</strong> entrada/saída conversores ECL-CMOS e CMOS-ECL foram <strong>de</strong>senvolvidos <strong>para</strong>permitir testes nos C.I.s encapsulados. Na Figura 45(a) é mostrado o circuito <strong>de</strong> entrada <strong>para</strong> conversãoECL-CMOS [Na95]. Ele é composto por um seguidor <strong>de</strong> fonte, transistores M i1 e M i2 , e inversores. Afunção do seguidor <strong>de</strong> fonte é assegurar que a entrada do primeiro inversor, O SF , tenha valor em torno<strong>de</strong> -2,5V quando o sinal <strong>de</strong> entrada, in, tem valor <strong>de</strong> -1,22V (valor médio entre os níveis lógicos ECL).Neste caso po<strong>de</strong>remos usar os inversores <strong>para</strong> amplificar os sinais da entrada.Para manter a operação do circuito em quaisquer circunstâncias, in<strong>de</strong>pen<strong>de</strong>nte das variaçõesnormais que ocorrem nos parâmetros dos transistores, é necessário um circuito <strong>de</strong> polarização especial[St91]. O circuito aqui empregado está apresentado na Figura 45(b). Neste circuito uma cópia do


Circuitos <strong>de</strong> testes <strong>para</strong> a estratégia E-TSPC e <strong>para</strong> os Tapered Buffers 135seguidor <strong>de</strong> fonte, transistores M' i1 e M' i2 , e uma cópia do primeiro inversor, M' i3 e M' i4 , são utilizadas.O inversor tem ligadas sua entrada e saída, fazendo com que ele vá estabilizar na região <strong>de</strong> transição,caracterizada por ter alto ganho. Com auxílio do par diferencial M P1 e M P2 , a tensão <strong>de</strong> polarizaçãoV BiasI é ajustada <strong>para</strong> que a saída do seguidor <strong>de</strong> fonte M' i1 /M' i2 seja igual a saída do inversor M' i3 /M' i4 .Assim, aplicando-se em V REF -1,2V, garantimos que o seguidor <strong>de</strong> fonte <strong>de</strong>sloca a entrada <strong>de</strong> -1,2V atéa região <strong>de</strong> alto ganho do primeiro inversor. O circuito <strong>de</strong> polarização funciona corretamente mesmocom variações na tecnologia, <strong>de</strong>s<strong>de</strong> que estas não sejam muito gran<strong>de</strong>s.inV DDM i1M i3Tapered buffernão faz parte doconversorM' i3V DDV REFM' i1M' i2V BiasIV BiasIO SFM i2M i4outM' i4M P1M P2V SSa) b)V SSFigura 45. Circuito conversor <strong>de</strong> <strong>alta</strong> velocida<strong>de</strong> ECL-CMOS (a) e seu circuito <strong>de</strong> polarização (b).O circuito <strong>de</strong> saída <strong>para</strong> conversão CMOS-ECL é, por sua vez, apresentado na Figura 46(a)([Na96],[Na97a]). Este circuito necessita uma carga resistiva <strong>de</strong> 50Ω externa ao C.I. (resistor <strong>de</strong> casamento). Oconversor é baseado em fontes <strong>de</strong> corrente chaveadas. A <strong>de</strong>scrição do circuito segue: quando o sinal <strong>de</strong>entrada é baixo, in=V SS (=-5V), o transistor M O1 é cortado. Neste caso, o nó <strong>de</strong> saída será puxado <strong>para</strong>o nível V H(ECL) pelo resistor <strong>de</strong> casamento (resistor externo <strong>de</strong> 50Ω). Na entrada contrária, in=V DD(=0V), M O1 estará conduzindo e uma corrente <strong>de</strong> valor fixo é forçada através do resistor <strong>de</strong> 50Ω pelotransistor M O2 . A tensão <strong>de</strong> polarização V BiasO é ajustada <strong>para</strong> assegurar, neste caso, o nível correto nasaída (V L(ECL) ).Também aqui é necessário um circuito especial <strong>de</strong> polarização <strong>para</strong> o conversor, <strong>de</strong> forma a garantirque o nível baixo seja sempre correto, não <strong>de</strong>pen<strong>de</strong>ndo das variações dos parâmetros dos transistores.Ele é mostrado na Figura 46(b); seu funcionamento é baseado em com<strong>para</strong>ções e realimentação([Na96], [Na97a]), similarmente ao que acontece no conversor ECL-CMOS. É importante observar,neste caso, que são necessários dois PADs <strong>para</strong> o circuito <strong>de</strong> polarização: um fornecendo a tensãoV H(ECL) (PAD extra 1) e outro fornecendo a tensão V L(ECL) (PAD extra 2).


136Circuitos <strong>de</strong> testes <strong>para</strong> a estratégia E-TSPC e <strong>para</strong> os Tapered BuffersExterno ao CIV H(ECL)V DDExterno ao CIV H(ECL)insaídaC LV BiasOR=50ΩTrans. lineM O1 (120µm/1,0µm)M O2 (280µm/1,0µm)PADextra 2+-C LV BiasOR=50ΩPADextra 1M' O1 (120µm/1,0µm)M' O2 (280µm/1,0µm)V SSnível baixo(referência)-1,8Va) b)V SSFigura 46. Circuito conversor <strong>de</strong> <strong>alta</strong> velocida<strong>de</strong> CMOS-ECL (a) e seu circuito <strong>de</strong> polarização (b).Encerrando esta seção sobre os circuitos <strong>de</strong> entrada/saída, façamos um último comentário: neles,todos os resistores <strong>para</strong> casamento <strong>de</strong> impedância são externos. Foram <strong>de</strong>sta forma projetados <strong>para</strong>reduzir os riscos <strong>de</strong> erros na implementação. Resistores internos, por outro lado, apesar do consumo <strong>de</strong>área, são melhores <strong>para</strong> os circuitos <strong>de</strong> entrada, resultando num casamento <strong>de</strong> impedância superior e,como conseqüência, reduzindo as reflexões dos sinais.4.2.1.2 Principais células TSPCNa Figura 47 estão apresentadas as células TSPC usadas na construção do Multiplexador e doDemultiplexador. Também estão indicados na figura quais os blocos que avaliam quando o clock temnível baixo, blocos hachurados, e quais avaliam quando o clock tem nível alto. A <strong>de</strong>scrição das célulassegue:• circuitos D-flip-flops sensíveis à borda <strong>de</strong> subida: Figuras 47(a) e 47(c), este último com estágio<strong>de</strong> saída duplicado;• circuitos D-flip-flops sensíveis à borda <strong>de</strong> <strong>de</strong>scida: Figuras 47(b) e 47(d), este último com estágio<strong>de</strong> saída duplicado;• circuitos D-flip-flops sensíveis à borda <strong>de</strong> subida, com atraso <strong>de</strong> meia fase: Figuras 47(f) e 47(e),este último com estágio <strong>de</strong> saída duplicado;• circuito D-flip-flop sensível à borda <strong>de</strong> <strong>de</strong>scida, com atraso <strong>de</strong> meia fase: Figura 47(g).A grosso modo po<strong>de</strong>mos ver estas células como associações <strong>de</strong> p-data chains, blocos hachuradosque formam latches sensíveis ao clock baixo, com n-data chains, que formam latches sensíveis aoclock alto (não hachurados). Assim, a célula da Figura 47(f) é um p-data chain + n-data chain + p-data chain.


Circuitos <strong>de</strong> testes <strong>para</strong> a estratégia E-TSPC e <strong>para</strong> os Tapered Buffers 137Uma característica importante em todas células, explorada no circuito Multiplexador, é a presença<strong>de</strong> um bloco dinâmico seguido <strong>de</strong> um bloco latch, formando o data chain n ou p <strong>de</strong>pen<strong>de</strong>ndo do caso,na saída. O último bloco latch, durante a fase <strong>de</strong> holding, fica com a saída em <strong>alta</strong> impedância.Pela figura po<strong>de</strong>mos observar ainda que as dimensões usadas <strong>para</strong> os transistores são pequenas,próximas das mínimas permitidas pela tecnologia.C lC l C lV DDD CV SS4,84,8Qa)4,8l C l C lQ bC lQ bDC lC l 4,8DC l4,8 C lQ bC lb)4,8Q bDC lClC lC lD4,8C lQ bQ bDC l4,8C lC l4,8C l4,8C lQ bDC lQ bC lDC lC lC lC4,8 l4,8C lC l4,8C4,8 lC l C lQ bDQ bC lC lC lQ bC lQ bC lDC lc)4,8 4,8C lC l C lf)d)e)DC l4,8 C 4,8lDQ bC l Q b C l4,84,8C l C lQ bCC l C l l DC lC lg)Q bFigura 47. Células básicas empregadas no <strong>projeto</strong> do Multiplexador 8:1 e do Demultiplexador 1:8.Estão representados tanto o diagrama <strong>de</strong> transistores como o símbolo <strong>de</strong> cada célula. Os blocoshachurados avaliam quando o sinal <strong>de</strong> clock (C l ) é baixo; os outros blocos, quando o sinal <strong>de</strong> clock éalto. Todos os transistores usados aqui têm comprimento <strong>de</strong> canal L=0,8µm. A largura <strong>de</strong> canal, <strong>para</strong>a maioria, é W=2,4µm; <strong>para</strong> os transistores on<strong>de</strong> isso não é verda<strong>de</strong>, o valor da largura do canal, emµm, está indicado na figura.4.2.1.3 Multiplexador 8:1A arquitetura do circuito Multiplexador é baseada em células multiplexadoras 2:1 síncronas, comoindicado na Figura 48 [Ro96]. O sinal <strong>de</strong> clock da entrada do Multiplexador é dividido por 2 e por 4,


138Circuitos <strong>de</strong> testes <strong>para</strong> a estratégia E-TSPC e <strong>para</strong> os Tapered Buffersinternamente, sendo posteriormente aplicado a estes multiplexadores 2:1. A primeira coluna <strong>de</strong>multiplexadores, aquela que está mais à esquerda na figura, é sincronizada pelo sinal clock/4. Aíchegam, numa taxa igual a freqüência do sinal clock/4, os oito dados <strong>de</strong> entrada, bit 0 , ..., bit 7 , que<strong>de</strong>vem ser multiplexados. A partir <strong>de</strong>les são gerados os sinais m 1 , ..., m 4 . Estes sinais têm taxa igual aodobro dos anteriores, sendo que m 1 resulta da multiplexação <strong>de</strong> bit 0 e bit 1 , m 2 , da multiplexação <strong>de</strong> bit 2e bit 3 e assim por diante. A segunda coluna <strong>de</strong> multiplexadores é sincronizada por clock/2 e recebe ossinais m 1 , ..., m 4 , gerando m 5 e m 6 . A taxa <strong>de</strong>stes últimos é igual ao dobro da taxa dos anteriores, ouseja, igual a freqüência do clock que entra no circuito. Por fim, os sinais m 5 e m 6 são unidos no últimomultiplexador 2:1, gerando o sinal <strong>de</strong> saída do Multiplexador 8:1. A taxa do sinal multiplexado final éo dobro da freqüência do sinal <strong>de</strong> clock da entrada (aplicado externamente). Esta característica évantajosa pois facilita a distribuição do sinal <strong>de</strong> clock <strong>de</strong>ntro do C.I. e reduz, também, o consumo <strong>de</strong>potência.Note que no último multiplexador 2:1, são utilizados três D-flip-flops. Com isso uma maiorvelocida<strong>de</strong> foi atingida.Os multiplexadores 2:1 são construídos com a união <strong>de</strong> dois D-flip-flops sensíveis à borda <strong>de</strong>subida, um flip-flop convencional e outro que tem meia fase <strong>de</strong> atraso. No D-flip-flop convencional, odado <strong>de</strong> entrada, amostrado durante a borda <strong>de</strong> subida do clock, aparece na saída imediatamente apósesta borda; no D-flip-flop com meia fase <strong>de</strong> atraso, o dado, amostrado também durante a borda <strong>de</strong>subida, vai aparecer na sua saída apenas meia fase após a amostragem. Como nestes D-flip-flops asaída, ora <strong>de</strong> um ora <strong>de</strong> outro, está em <strong>alta</strong> impedância, po<strong>de</strong>mos uni-las e assim obter o multiplexador2:1 síncrono.No Multiplexador são usados vários tapered buffers. Três <strong>de</strong>les, os mais críticos por on<strong>de</strong> passamos sinais <strong>de</strong> maior freqüência, estão indicados no diagrama esquemático. Também está indicadoquantos inversores em série são usados em cada um <strong>de</strong>stes buffers.Um sinal externo <strong>para</strong> sincronização, select, está ainda presente no circuito. Ele servirá <strong>para</strong> invertero sinal clock/4 quando sua borda <strong>de</strong> subida estiver muito próxima da transição dos dados da entrada(bit 0 , ...,bit 7 ).


Circuitos <strong>de</strong> testes <strong>para</strong> a estratégia E-TSPC e <strong>para</strong> os Tapered Buffers 139bit 0bit 1m 1bit 2m 2bit 3m 5saída doM ultiplexadorDado Mbit 4bit 5m 3m 6ConversorCMOS-ECLbit 6bit 7buffers <strong>de</strong>entradaclock/4m 4buffer 33 inversoresbuffer 25 inversoresclock/2clockbuffer 14 inversoresConversorECL-CMOSselectFigura 48. Diagrama esquemático da primeira versão do circuito Multiplexador 8:1.4.2.1.4 Demultiplexador 1:8As seguintes características marcam o circuito Demultiplexador ([Ro95a], [Ro95b]):• o sinal <strong>de</strong> clock vem <strong>de</strong> fora do circuito e <strong>de</strong>ve estar sincronizado com o meio do dado a ser<strong>de</strong>multiplexado;• é implementado um <strong>de</strong>tetor <strong>para</strong> byte alignment [Ko91]. Desta forma toda vez que é recebido obyte <strong>de</strong> alinhamento A1 (a seqüência "11110110" na entrada), se o <strong>de</strong>tetor estiver habilitado, asaída será resincronizada;• trabalhou-se com as duas bordas do sinal <strong>de</strong> clock. Isto faz com que a taxa <strong>de</strong> operação dos flipflopsseja reduzida a meta<strong>de</strong>, facilitando o <strong>projeto</strong> e reduzindo o consumo <strong>de</strong> potência.A Figura 49 mostra o núcleo do Demultiplexador. Nela não é mostrado como é feita a distribuiçãodo clock principal do circuito; também não são indicadas as entradas <strong>de</strong> clock dos D-flip-flops quetrabalham sincronizados com este clock principal. Para que haja atrasos iguais entre o sinal <strong>de</strong> dados,Dado M , e o sinal clock, <strong>de</strong>s<strong>de</strong> a entrada externa até as células internas, estes dois sinais passam porcircuitos, conversor ECL-CMOS e tapered buffers, similares e que têm as cargas casadas.O Demultiplexador é composto por dois registradores <strong>de</strong> <strong>de</strong>slocamento, shift registers, um <strong>de</strong>lestrabalhando com a borda <strong>de</strong> subida do clock e outro, com a borda <strong>de</strong> <strong>de</strong>scida. Assim o sinal <strong>de</strong> dados éamostrado em ambas as bordas do clock. O flip-flop L sinc , Figura 49, sincroniza os dois shift registers.Dois blocos <strong>de</strong> circuitos, um na parte superior e outro na inferior, <strong>de</strong>tectam a chegada do byte A1,


140Circuitos <strong>de</strong> testes <strong>para</strong> a estratégia E-TSPC e <strong>para</strong> os Tapered Buffersativando os sinais f n1 , f n2 , f p1 e f p2 . Os sinais f p1 e f n1 serão levados <strong>para</strong> nível alto se o A1 <strong>de</strong>tectadotem seu primeiro bit armazenado no registrador superior; por outro lado, f p2 e f n2 serão levados <strong>para</strong>nível alto se o primeiro bit foi armazenado no registrador inferior. Não sendo encontrado o byte <strong>de</strong>alinhamento, então f p1 ou f n1 e f p2 ou f n2 terão nível baixo.A partir dos sinais f n1 , f n2 , f p1 e f p2 são gerados os sinais d f1 e d f2 (ver Figura 50); estes servirão, porsua vez, <strong>para</strong> iniciar/reiniciar a geração do sinal C A (Figura 51), utilizado como clock nos D-flip-flopsda saída (Figura 49), e <strong>para</strong> gerar os sinais <strong>de</strong> seleção dos <strong>de</strong>multiplexadores 2:1 da saída (Figuras 49 e52). O sinal C A é obtido a partir do clock principal do circuito, com a divisão <strong>de</strong>ste por quatro em umcontador síncrono (Figura 51).DinDado MConversorECL-CMOSTaperedbufferclockConversorECL-CMOSTaperedbuffersclk 1clk 2clk 26clk 27f p2f n1L sincRegistrador <strong>de</strong><strong>de</strong>slocamentosuperiorf p1A 1F 1f n2E 1Registrador <strong>de</strong><strong>de</strong>slocamentoinferiorclock/4C AB 1C 1D 1I 1H 1G 1I 1bit 0D 1bit 1H 1bit 2C 1bit 3G 1bit 4B 1bit 5F 1bit 6A 1bit 7E 1Figura 49. Diagrama esquemático do núcleo do circuito Demultiplexador 1:8 da primeira versão.SBuffers<strong>de</strong> saídaS Benableenablef p1f n1d f1f p2f n2d f2Figura 50. Circuito <strong>para</strong> gerar sinais <strong>de</strong> alinhamento <strong>de</strong> byte.


Circuitos <strong>de</strong> testes <strong>para</strong> a estratégia E-TSPC e <strong>para</strong> os Tapered Buffers 141d f1S e0S e0_id f2S e1S e1_iC AS e0S e1Figura 51. Circuito <strong>para</strong> gerar o clock que sincroniza a saída (CA).d f1Sd f2 S e1_iS e0_iS BFigura 52. Circuito <strong>para</strong> gerar sinais <strong>de</strong> seleção <strong>para</strong> os multiplexadores 2:1 da saída.Nos testes <strong>de</strong>stes C.I.s, as taxas máximas <strong>de</strong> operação alcançadas pelos protótipos foram inferiores a1,1Gbit/s, <strong>para</strong> alimentação <strong>de</strong> 5V.4.2.2 Projeto do Multiplexador e do Demultiplexador (nova versão)Analisando-se o <strong>de</strong>sempenho dos circuitos anteriores, Multiplexador e Demultiplexador, verificouseque a velocida<strong>de</strong> máxima era limitada por três fatores:• o circuito <strong>de</strong> entrada conversor ECL-CMOS (principalmente no caso do Demultiplexador);• a velocida<strong>de</strong> <strong>de</strong> operação <strong>de</strong> certas células TSPC, principalmente aquelas on<strong>de</strong> se empregam p-data chains com mais <strong>de</strong> um bloco (Figura 47, células b, d, e, f e g);• a velocida<strong>de</strong> <strong>de</strong> operação dos tapered buffers que fazem a distribuição do clock e também poron<strong>de</strong> passa o sinal Dado M , tanto na saída do Multiplexador como na entrada do Demultiplexador.Para contornar estes fatores, foram tomadas as seguintes providências:• melhora dos conversores ECL-CMOS;• estudo e modificação das células TSPC;• estudo e modificação dos tapered buffers.


142Circuitos <strong>de</strong> testes <strong>para</strong> a estratégia E-TSPC e <strong>para</strong> os Tapered BuffersDo estudo das células TSPC resultou a teoria apresentada no capítulo dois, em suma, a estratégiaE-TSPC; do estudo dos tapered buffers resultaram as discussões apresentadas no capítulo três e o novocritério <strong>de</strong> otimização. Vê-se, portanto, que esta tese originou-se do <strong>de</strong>senvolvimento e otimização <strong>de</strong>circuitos Multiplexador e Demultiplexador.Abaixo daremos <strong>de</strong>talhes do novo circuito <strong>de</strong> entrada conversor, das novas células empregadas e,por fim, das modificações aplicadas ao Multiplexador e ao Demultiplexador.4.2.2.1 Novo circuito conversor ECL-CMOS [Na98b]A Figura 53 mostra o novo circuito conversor ECL-CMOS. A modificação mais significativa foifeita no circuito <strong>de</strong> polarização. No circuito conversor propriamente dito foi introduzido apenas umcapacitor <strong>de</strong> acoplamento entre in e O SF , o capacitor C I com valor <strong>de</strong> 0,1pF (Figura 53(a)). A função<strong>de</strong>le é fazer com que o sinal O SF siga a entrada mais rapidamente. No circuito <strong>de</strong> polarização, não émais utilizado o par diferencial <strong>para</strong> a realimentação mas sim inversores (Figura 53(b)). A tensão <strong>de</strong>polarização V BiasI irá se ajustar <strong>de</strong> forma que o inversor formado por M' i3 e M' i4 , transistores similares aM i3 e M i4 , esteja trabalhando em sua região <strong>de</strong> alto ganho, não <strong>de</strong>pen<strong>de</strong>ndo dos valores assumidospelos parâmetros tecnológicos. Fazendo V REF =-1,22V, valor médio entre os níveis ECL alto e baixo,teremos que o seguidor <strong>de</strong> fonte da entrada fornece o necessário <strong>de</strong>slocamento aos sinais <strong>para</strong> que osinversores trabalhem como amplificadores. A capacitância C X é acrescentada <strong>para</strong> dar estabilida<strong>de</strong> aocircuito <strong>de</strong> polarização (<strong>de</strong>sloca os pólos <strong>para</strong> a esquerda).inC IV BiasIV DDM i1O SFM i2M i3M i4Tap ered bufferoutV REFV BiasIV DDM’ i1C XM’ i3M’ i4M’ i2V SS V SSa) b)Figura 53. Circuito modificado conversor <strong>de</strong> <strong>alta</strong> velocida<strong>de</strong> ECL-CMOS (a) e seu circuito <strong>de</strong>polarização (b).4.2.2.2 Células com blocos N-MOS likeDas células originais, as que trabalhavam no limite da velocida<strong>de</strong> foram alteradas <strong>para</strong> os novoscircuitos. Basicamente as modificações ficaram restritas aos blocos p-latches e p-dinâmicos, sendo elessubstituídos por seus equivalentes N-MOS like. Os blocos p-latches substituídos são, sobretudo,


Circuitos <strong>de</strong> testes <strong>para</strong> a estratégia E-TSPC e <strong>para</strong> os Tapered Buffers 143aqueles colocados na saída das células. Estes blocos, no geral, têm que trabalhar com capacitâncias <strong>de</strong>carga maiores e são, em gran<strong>de</strong> parte, responsáveis pelas limitações <strong>de</strong> velocida<strong>de</strong>.Na Figura 54 estão apresentadas as novas células usadas na construção do Multiplexador e doDemultiplexador. Os blocos hachurados, como antes, são aqueles que avaliam quando o clock temnível baixo.4,8Q bC l4,8C l3,04,8C l3,0 C lC lDQ bC lC lC lb)Q b4,0DQ bD4,0 C l4,8C lQ bDC l4,8C l4,83,0C lC lC lC lQ b4,0a)C l3,0C l3,0C lDC l4,8Q bC l 4,0 4,0C l C l3,0C lDC lQ bC lDC3,0 l4,8Q bC l 4,0 4,0C lC l4,03,0C lDC lQ bC l4,04,0C l4,0Q bd)Q b4,0c)C lDC l4,8C4,8 3,0 Dl C l QCC ll 4,8 3,04,8b C lC lQ4,8bC4,8lQDbC l C lC lC 4,0lC l 4,0 C lDC lf)Q be)Figura 54. Novas células básicas que empregam blocos N-MOS like. Estão representados tanto odiagrama <strong>de</strong> transistores como o símbolo <strong>de</strong> cada célula. Os blocos hachurados avaliam quando osinal <strong>de</strong> clock (C l ) é baixo; os outros blocos, quando o sinal <strong>de</strong> clock é alto. Todos os transistoresusados aqui têm comprimento <strong>de</strong> canal L=0,8µm. A largura <strong>de</strong> canal, <strong>para</strong> a maioria, é W=2,4µm;<strong>para</strong> os transistores on<strong>de</strong> isso não é verda<strong>de</strong>, o valor da largura do canal, em µm, está indicado nafigura.A <strong>de</strong>scrição das células segue:i. circuito D-flip-flop sensível à borda <strong>de</strong> subida: Figura 54(a), circuito com saída duplicada on<strong>de</strong> oprimeiro bloco foi modificado reduzindo a carga na entrada;ii. circuito D-flip-flop sensível à borda <strong>de</strong> <strong>de</strong>scida: Figura 54(b), circuito com saída duplicada on<strong>de</strong>os últimos blocos foram modificados <strong>para</strong> aumentar a velocida<strong>de</strong>;


144Circuitos <strong>de</strong> testes <strong>para</strong> a estratégia E-TSPC e <strong>para</strong> os Tapered Buffersiii. circuitos D-flip-flops sensíveis à borda <strong>de</strong> subida, com atraso <strong>de</strong> meia fase: Figura 54(c), circuitocom saída duplicada e últimos blocos modificados; Figura 54(d), igual ao anterior mas com obloco <strong>de</strong> entrada também modificado; Figura 54(e), com apenas o último bloco modificado;iv. circuito D-flip-flop sensível à borda <strong>de</strong> <strong>de</strong>scida, com atraso <strong>de</strong> meia fase: Figura 54(f), on<strong>de</strong> obloco p-latch intermediário foi alterado.Uma vez que as novas células usam blocos N-MOS like, é natural que tenham um consumo <strong>de</strong>potência maior que as originais. Em vista disso, elas são aplicadas somente on<strong>de</strong> há necessida<strong>de</strong>. Poroutro lado, como po<strong>de</strong> ser visto na Figura 54, as dimensões dos transistores usados nestas células nãodiferem muito daquelas dos transistores das originais. Isso faz com que as células modificadas eoriginais tenham dimensões similares, tornando simples a substituição <strong>de</strong> umas pelas outras.4.2.2.3 Novo Multiplexador 8:1O novo Multiplexador tem a mesma arquitetura e princípio <strong>de</strong> funcionamento que a versão original,como po<strong>de</strong> ser visto no seu diagrama esquemático, Figura 55. As mudanças feitas são <strong>de</strong> três tipos:• uso do novo conversor ECL-CMOS;• uso <strong>de</strong> novas células com blocos N-MOS like. Estas novas células, dado que têm um maiorconsumo <strong>de</strong> potência, são empregadas apenas nos pontos críticos do Multiplexador;• uso do novo critério, capítulo três, na otimização dos tapered buffers críticos usados com o sinal<strong>de</strong> clock, buffer 1, buffer 2 e buffer 3 (Figura 55), e com o sinal multiplexado da saída (buffer 5).bit 0bit 1m 1bit 2bit 3m 2m 5saída doM ultiplexadorDado Mbit 4ConversorCMOS-ECLbit 5m 3m 6buffer 52 inversoresbit 6bit 7buffers <strong>de</strong>entradaclock/4buffer 42 inversoresm 4selectbuffer 34 inversoresbuffer 26 inversoresclock/2clockbuffer 11 inversornovoConversorECL-CMOSFigura 55. Diagrama esquemático do novo circuito Multiplexador 8:1.


Circuitos <strong>de</strong> testes <strong>para</strong> a estratégia E-TSPC e <strong>para</strong> os Tapered Buffers 145As células que foram alteradas aparecem hachuradas na figura (compare com Figura 48). Veremosque estas três modificações permitiram uma melhora consi<strong>de</strong>rável na performance do Multiplexador.4.2.2.4 Novo Demultiplexador 1:8Da mesma forma que no Multiplexador, são aplicados neste circuito três tipos <strong>de</strong> mudanças, a saber,o uso do novo conversor ECL-CMOS, o uso das células modificadas e, por fim, o uso do novo critério<strong>para</strong> otimização dos tapered buffers utilizados na distribuição do sinal <strong>de</strong> clock e pelo sinal <strong>de</strong> dadosmultiplexado (Dado M ).A arquitetura do Demultiplexador, embora mantendo as caraterísticas mais importantes, sofreuvárias alterações. A maior é feita no núcleo do circuito, Figura 56. Neste novo circuito, o registrador<strong>de</strong> <strong>de</strong>slocamento inferior, que antes funcionava praticamente todo com a borda <strong>de</strong> <strong>de</strong>scida do clock,tem colocado, na sua entrada, um D-flip-flop sensível à borda <strong>de</strong> <strong>de</strong>scida e com atraso <strong>de</strong> meia fase.Ele executa a função que antes era feita pelo flip-flop L sinc (Figura 49). Devido a este flip-flop naentrada, todos os outros que o seguem são sensíveis à borda <strong>de</strong> subida. A causa <strong>de</strong>sta alteração éexplicada: foi observado que os D-flip-flops sensíveis à borda <strong>de</strong> <strong>de</strong>scida são os que maioresproblemas causaram <strong>para</strong> o funcionamento do circuito original. Desta forma, a melhora naperformance do circuito po<strong>de</strong>ria ser conseguida ou com a troca <strong>de</strong>les por flip-flops modificados, oucom a sua eliminação. Como as células modificadas aumentam o consumo <strong>de</strong> potência, a melhorsolução é a eliminação dos flip-flops sensíveis à borda <strong>de</strong> <strong>de</strong>scida. Assim foi feito sempre que possível,mantendo-se apenas aqueles flip-flops que não po<strong>de</strong>m ser eliminados sem causar gran<strong>de</strong>s alterações naarquitetura do Demultiplexador. Na Figura 56, os D-flip-flops modificados/substituídos estãohachurados (compare com Figura 49). Note que apenas uma célula com blocos N-MOS like foi usadaaí.O circuito que gera sinais <strong>para</strong> alinhamento <strong>de</strong> byte sofreu uma pequena alteração, gerando um novosinal d f1a , como po<strong>de</strong> ser visto na Figura 57. O bloco aí hachurado é o que foi modificado.Os D-flip-flops sensíveis à borda <strong>de</strong> <strong>de</strong>scida usados no circuito gerador do clock CA não pu<strong>de</strong>ramser eliminados. Foram, portanto, substituídos pelas versões modificadas que são mais velozes. AFigura 58 mostra como ficou o novo circuito gerador <strong>de</strong> CA.O circuito <strong>para</strong> gerar os sinais <strong>de</strong> seleção <strong>para</strong> os multiplexadores da saída, Figura 52, permaneceuigual.Junto com a modificação dos tapered buffers do sinal <strong>de</strong> clock e do sinal <strong>de</strong> dados, Dado M , foitomado o cuidado em manterem iguais os atrasos <strong>de</strong>stes dois sinais.


146Circuitos <strong>de</strong> testes <strong>para</strong> a estratégia E-TSPC e <strong>para</strong> os Tapered BuffersDinDado MConversorECL-CMOSTaperedbufferclockConversorECL-CMOSTaperedbuffersRegistrador <strong>de</strong><strong>de</strong>slocamentosuperiorbit 0I 1clk 29f p1A 1 D 1f p2B 1bit 1C 1H 1D 1bit 2C 1G 1bit 3bit 4I 1B 1clk 1H 1bit 5clk 2G 1f n1FF 11bit 6f n2 E 1Registrador <strong>de</strong>A 1bit 7<strong>de</strong>slocamentoinferiorclock/4C ABuffers<strong>de</strong> saídaE 1S S BFigura 56. Diagrama esquemático do núcleo do novo circuito Demultiplexador 1:8. Os blocoshachurados são aqueles que foram alterados.f p1enablef n1d f1ad f1f p2f n2enabled f2Figura 57. Modificações no circuito <strong>para</strong> gerar sinais <strong>para</strong> alinhamento <strong>de</strong> byte. Os blocoshachurados são aqueles que foram alterados.A Figura 59 mostra, <strong>de</strong> forma simplificada, a estrutura <strong>de</strong> tapered buffers usada na distribuição dosinal <strong>de</strong> clock no Demultiplexador, na primeira e na nova versão. Há aí três níveis <strong>de</strong> tapered buffers: oprimeiro nível possui apenas um tapered buffer; o segundo, seis buffers; o terceiro, vinte e sete ouvinte e nove buffers. A carga capacitiva <strong>para</strong> cada um dos sinais clk i , Figuras 56 e 59, varia entre 88pFa 140pF. Para <strong>de</strong>terminação do fator <strong>de</strong> aumento dos buffers do novo multiplexador foi usada, comoentrada <strong>para</strong> os testes, uma seqüência <strong>de</strong> pulsos "0s" e "1s" e, como critério <strong>de</strong> análise da saída, averificação tanto dos níveis alcançados como da largura dos pulsos. Como resultado das análises, osbuffers foram implementados com fator <strong>de</strong> aumento <strong>de</strong> 1,4, em uma parte, e <strong>de</strong> 2, em outra. Estes


Circuitos <strong>de</strong> testes <strong>para</strong> a estratégia E-TSPC e <strong>para</strong> os Tapered Buffers 147fatores garantem, <strong>de</strong>ssa forma, a passagem <strong>de</strong> sinais rápidos e, também, a simetria entre os pulsos altoe baixo.d f1aS e0S e0_id f2S e1S e1_iC AS e0S e1Figura 58. Modificações no circuito gerador do clock CA. Os blocos hachurados são aqueles queforam alterados.clockckl isinais <strong>para</strong> as célulasinternas do circuito88pF


148Circuitos <strong>de</strong> testes <strong>para</strong> a estratégia E-TSPC e <strong>para</strong> os Tapered Buffers• clk 1,2,..,27 e clk 1,2,...29 : sinais <strong>de</strong> clock após passarem pelo circuito <strong>de</strong> entrada (conversor ECL-CMOS) e pelos tapered buffers (ver Figuras 49 e 56).Na simulação é aplicada uma onda quadrada nos circuitos <strong>de</strong> entrada <strong>de</strong> dados e do clock, com asseguintes características: freqüência <strong>de</strong> 625MHz, tempo <strong>de</strong> subida e <strong>de</strong>scida <strong>de</strong> 0,2ns e níveis <strong>de</strong> tensão<strong>de</strong> 4,0V a 3,2V (alimentação <strong>de</strong> 5V/0V).O sinal <strong>de</strong> dados e o sinal <strong>de</strong> clock são aplicados em fase <strong>para</strong> melhor com<strong>para</strong>r os atrasos. Não éesta, no entanto, a situação que <strong>de</strong>ve ocorrer durante a operação do Demultiplexador (o dado <strong>de</strong>ve teratraso <strong>de</strong> ¼ do período clock).Na Figura 60 vemos que existem, na primeira versão do Demultiplexador, problemas <strong>de</strong> simetria noclocks (não duty cycle) além <strong>de</strong> atrasos diferenciados entre estes e o sinal <strong>de</strong> dados. Os dois problemasforam sensivelmente reduzidos na segunda implementação, como po<strong>de</strong>r ser verificado pela Figura 61.Antes <strong>de</strong> falarmos dos resultados experimentais, um último esclarecimento <strong>de</strong>ve ser feito sobre asnovas implementações do Multiplexador e do Demultiplexador. As novas células, Figura 54, e o novoconversor <strong>de</strong> entrada têm dimensões quase idênticas a dos circuitos originais; também os diagramasesquemáticos, os das primeiras implementações e os das novas, são bastante similares. Isso permitiuque o layout das novas implementações fosse feito a partir do layout das primeiras. Praticamentehouve apenas a substituição <strong>de</strong> algumas células. O posicionamento <strong>de</strong>stas, tão bem como o roteamentonos circuitos, permaneceu quase inalterado. Dessa forma, os ganhos em velocida<strong>de</strong>, conseguidosnestes novos circuitos, <strong>de</strong>vem pouco ou nada às melhoras <strong>de</strong> placement e <strong>de</strong> routing.(V)Din clk 1,2,..,27tempo (ns)Figura 60. Sinal Dado M e clock, no primeiro Multiplexador fabricado, após passarem pelo circuitoconversor ECL-CMOS da entrada e tapered buffers (ver Figura 49). Os sinais na entrada têmfreqüência <strong>de</strong> 625MHz, tempo <strong>de</strong> subida/<strong>de</strong>scida <strong>de</strong> 0,2ns e níveis <strong>de</strong> tensão <strong>de</strong> 4,0V/3,2V. Osresultados são obtidos a partir <strong>de</strong> simulação SPICE, level 2 e parâmetros slow.


Circuitos <strong>de</strong> testes <strong>para</strong> a estratégia E-TSPC e <strong>para</strong> os Tapered Buffers 149(V)clk 1,2,...,29Dintempo (ns)Figura 61. Sinal Dado M e clock, no novo Multiplexador, após passarem pelo circuito conversorECL-CMOS da entrada e tapered buffers (ver Figura 56). Os sinais na entrada têm freqüência <strong>de</strong>625MHz, tempo <strong>de</strong> subida/<strong>de</strong>scida <strong>de</strong> 0,2ns e níveis <strong>de</strong> tensão <strong>de</strong> 4,0V/3,2V. Os resultados sãoobtidos a partir <strong>de</strong> simulação SPICE, level 2 e parâmetros slow.4.2.3 Resultados Experimentais do Multiplexador 8:1 e do Demultiplexador 1:8As novas versões do circuito Multiplexador 8:1 e do Demultiplexador 1:8 foram fabricadas natecnologia CMOS 0,8µm. Ambos os circuitos foram encapsulados em Quad Flat Packs (QFP) <strong>de</strong> 40pinos. Na Figura 62 está o layout do circuito Multiplexador com seus PADs i<strong>de</strong>ntificados. A Tabela 14<strong>de</strong>screve a função dos sinais <strong>de</strong> cada um <strong>de</strong>stes PADs. Na Figura 63, por sua vez, está o layout docircuito Demultiplexador com seus PADs i<strong>de</strong>ntificados. A Tabela 15 <strong>de</strong>screve a função dos sinais <strong>de</strong>cada um <strong>de</strong>stes PADs.Duas características importantes na implementação <strong>de</strong>stes dois circuitos são:• vários PADs <strong>para</strong> alimentação do circuito (V DD e V SS ) são empregados. Com isto procuramosevitar que porções do circuito que geram maior ruído, tipicamente os circuitos <strong>de</strong> saída, causemproblemas nos circuitos digitais internos;• toda a área livre do C.I. é aproveitada <strong>para</strong> a formação <strong>de</strong> capacitores <strong>de</strong> <strong>de</strong>sacoplamento entreo V DD e o V SS . Estes capacitores são formados com o polisilício e com as duas camadas <strong>de</strong> metal.Capacitores internos <strong>de</strong>sse tipo são i<strong>de</strong>ais <strong>para</strong> <strong>de</strong>sacoplamento por duas razões: primeiro porquenão apresentam resistências/indutâncias em série, como é o caso <strong>de</strong> qualquer capacitor externo;segundo, que por serem internos, as indutâncias dos pinos do encapsulamento não interferem nasua operação.


150Circuitos <strong>de</strong> testes <strong>para</strong> a estratégia E-TSPC e <strong>para</strong> os Tapered BuffersNa Figura 62, po<strong>de</strong>mos observar algumas linhas horizontais, logo abaixo dos PADs bit 0 a bit 7 , queparecem não ter função. Estas linhas servem <strong>para</strong> igualar a carga dos buffers <strong>de</strong> entrada (Figuras 48 e55) e, em conseqüência, o atraso dos sinais <strong>de</strong> entrada (dados). Tal cuidado foi tomado em todas asversões do Multiplexador.V SSbit 0 bit 1 bit 2 bit 3 bit 4 bit 5 bit 6 bit 7V DDsw_selequalização<strong>de</strong> atrasosInTestV DDV L(ECL) V SS OuTest V H(ECL) Dado M selext clock V REFV SSFigura 62. Layout do novo circuito Multiplexador 8:1. As dimensões <strong>de</strong>ste circuito (incluindo osPADs) são 1,68mm por 0,94 mm.Tabela 14. PADs <strong>de</strong> entrada/saída do novo circuito Multiplexador 8:1 e sua <strong>de</strong>scrição.PADs <strong>de</strong>entrada/saídaV SSV DDDado Msw_selselextclockbit 7 -bit 0V REFV L(ECL)V H(ECL)InTest, OuTestDescriçãoterra do circuito (são três terras ao todo)alimentação <strong>de</strong> 5V (duas entradas)sinal multiplexado na saídasinal <strong>para</strong> seleção <strong>de</strong> sincronismo (interno ou externo)sinal externo <strong>para</strong> sincronizar dados e clock. Este sinal é composto comsw_sel <strong>para</strong> gerar o sinal select da Figura 48sinal <strong>de</strong> clock do circuitosinais <strong>de</strong> entrada <strong>para</strong> serem multiplexadossinal <strong>de</strong> referência <strong>para</strong> ajuste da polarização do circuito conversorECL-CMOS (Figura 53(b))nível baixo ECL <strong>para</strong> ajuste da polarização do conversor CMOS-ECL(Figura 46(b))nível alto ECL <strong>para</strong> ajuste da polarização do conversor CMOS-ECL(Figura 46(b))PADs <strong>para</strong> testes dos conversores <strong>de</strong> níveis ECL-CMOS e CMOS-ECL


Circuitos <strong>de</strong> testes <strong>para</strong> a estratégia E-TSPC e <strong>para</strong> os Tapered Buffers 151V DD V SS bit 7 bit 6 bit 5 bit 4 bit 3 bit 2 bit 1 bit 0V SSV SSV DDV DDV SSV DDV DD V DDDado M enable V REFclockV SSFigura 63. Layout do novo circuito Demultiplexador 1:8. As dimensões <strong>de</strong>ste circuito (incluindo osPADs) são 1,90mm por 1,08mm.Tabela 15. PADs <strong>de</strong> entrada/saída do novo circuito Demultiplexador 1:8 e sua <strong>de</strong>scrição.PADs <strong>de</strong>Descriçãoentrada/saídaV SSterra do circuito (são cinco terras ao todo)V DDalimentação <strong>de</strong> 5V (cinco entradas)Dado Msinal <strong>de</strong> entrada <strong>para</strong> ser <strong>de</strong>multiplexadoenable sinal <strong>de</strong> habilitação <strong>para</strong> o byte alignment (Figura 57)clocksinal <strong>de</strong> clock do circuitobit 7 -bit 0sinais <strong>de</strong>multiplexados na saídaV REFsinal <strong>de</strong> referência <strong>para</strong> ajuste da polarização do circuito conversorECL-CMOS (Figura 53(b))Na Figura 64 estão apresentadas as fotografias dos dois novos circuitos, Multiplexador eDemultiplexador, fabricados. O C.I. Multiplexador tem dimensões <strong>de</strong> 1,68mm X 0,94mm; o C.I.Demultiplexador, dimensões <strong>de</strong> 1,90mm X 1,08mm.Devido à importância dos circuitos conversores da entrada e da saída, foi colocado junto ao circuitoMultiplexador uma estrutura que permite a avaliação <strong>de</strong>stes conversores. A estrutura é composta doPAD InTest, Figura 62, <strong>de</strong> um conversor ECL-CMOS, ligado a este PAD, <strong>de</strong> um conversor CMOS-ECL, que por sua vez tem sua entrada ligada a saída do conversor anterior, e do PAD OuTest querecebe o sinal do conversor CMOS-ECL. Po<strong>de</strong>mos, <strong>de</strong>ssa forma, verificar a performance dosconversores injetando no C.I. um sinal, pelo PAD InTest, e recuperando-o no PAD OuTest. Acom<strong>para</strong>ção entre a entrada e a saída mostrará como eles estão funcionando.


152Circuitos <strong>de</strong> testes <strong>para</strong> a estratégia E-TSPC e <strong>para</strong> os Tapered Buffersa)b)Figura 64. Fotografias dos C.I.s fabricados (nova versão). Em (a) está o circuito Multiplexador 8:1 eem (b), o circuito Demultiplexador 1:8.Para o teste dos C.I.s encapsulados foi necessário o <strong>de</strong>senvolvimento <strong>de</strong> placas <strong>de</strong> PCB (PrintedCircuit Board). Usaram-se inicialmente placas <strong>de</strong> vibra <strong>de</strong> vidro, FR4, com 1,5mm <strong>de</strong> espessura e duascamadas <strong>de</strong> metal. Para as linhas que transportam sinais <strong>de</strong> <strong>alta</strong> freqüência, por exemplo o sinal <strong>de</strong>clock, foram usadas microlinhas com impedância característica <strong>de</strong> 50Ω ([Si96], [Jo93]), que é obtidacom o uso <strong>de</strong> trilhas <strong>de</strong> 2,8mm <strong>de</strong> largura. Tais trilhas, por serem muito largas, dificultaram bastante o<strong>projeto</strong> <strong>de</strong>stas placas.Uma segunda placa foi <strong>de</strong>senvolvida com uma tecnologia que permitia quatro camadas <strong>de</strong> metal.Neste caso, a primeira camada e a segunda ou a terceira camada e a quarta são isoladas por 0,4mm <strong>de</strong>FR4. Com este valor <strong>de</strong> espessura <strong>de</strong> isolante, microlinhas com impedância característica <strong>de</strong> 50Ω sãoconstruídas com trilhas <strong>de</strong> largura <strong>de</strong> apenas 0,7mm. O aumento no número <strong>de</strong> camadas <strong>de</strong> metal e a


Circuitos <strong>de</strong> testes <strong>para</strong> a estratégia E-TSPC e <strong>para</strong> os Tapered Buffers 153redução da largura das trilhas simplificou bastante o <strong>projeto</strong>. Diferente das placas <strong>de</strong> duas camadas,que foram confeccionada em nosso laboratório, as placas <strong>de</strong> quatro camadas foram fabricadas por umaempresa especializada, elevando bastante seu custo. Os resultados experimentais, por outro lado,mostraram que as duas soluções apresentam efeitos semelhantes.Observemos que os C.I.s foram alimentados com 5V/0V durante os testes e, portanto, os valoresECL nas entradas e saídas foram <strong>de</strong>slocados <strong>para</strong> 4,1V, <strong>para</strong> o nível alto, e 3,2V, <strong>para</strong> o nível baixo.Estes níveis são os que <strong>de</strong>veriam ter sido aplicados nos testes mas, como po<strong>de</strong> ser visto nas figurasabaixo, foram empregados, na realida<strong>de</strong>, valores inferiores. Duas são as razões <strong>para</strong> isto:• o gerador <strong>de</strong> sinais usado tem como limite <strong>de</strong> valor na saída 4V (HP Pulse Generator 8133A);• <strong>para</strong> o casamento <strong>de</strong> impedância foram usados resistores SMD (surface monted <strong>de</strong>vices) <strong>de</strong>47Ω, valores encontrados comercialmente, em vez <strong>de</strong> 50Ω. Isso fez com que as tensões na entradado C.I. fossem inferiores às fornecidas pelo gerador.Resultou disso, <strong>para</strong> o circuito conversor <strong>de</strong> entrada, um comportamento inferior ao projetado.4.2.3.1 Testes dos conversores ECL-CMOS e CMOS-ECLPara avaliar o funcionamento <strong>de</strong>stes dois circuitos foi aplicado um sinal no conversor <strong>de</strong> entrada eobservada a saída do conversor <strong>de</strong> saída. Duas classes <strong>de</strong> medidas foram feitas: <strong>de</strong>terminação damáxima velocida<strong>de</strong> em que os circuitos operavam (Figura 65); verificação, através <strong>de</strong> diagramas <strong>de</strong>olho, do ruído/jitter introduzido pelo conversores (Figura 66).Figura 65. Resultado do teste nos conversores ECL-CMOS e CMOS-ECL. É mostrado o sinal na entrada doPAD InTest, INPUT, que está a taxa <strong>de</strong> 2,4Gbit/s, e no PAD OuTest, OUTPUT. Os sinais INPUT e OUTPUTsão invertidos. A seqüência que aparece na figura, sinal <strong>de</strong> entrada, é "1111010000000100101010".


154Circuitos <strong>de</strong> testes <strong>para</strong> a estratégia E-TSPC e <strong>para</strong> os Tapered BuffersNa Figura 65 é mostrado que os conversores <strong>de</strong> entrada/saída ainda operam com sinais a taxas <strong>de</strong>2,4Gbit/s. Os sinais da figura são observados com osciloscópio Tektronix, mo<strong>de</strong>lo 11801B DigitalSampling.Na Figura 66 são apresentados os diagramas <strong>de</strong> olho em várias taxas <strong>de</strong> operação <strong>para</strong> avaliação doscircuitos conversores. Vemos que <strong>para</strong> a taxa <strong>de</strong> 622,1Mbit/s (taxa <strong>de</strong> transmissão <strong>para</strong> STS12/STM4[St92]) o sinal <strong>de</strong> saída quase não apresenta jitter; isso já não é verda<strong>de</strong> <strong>para</strong> a taxa <strong>de</strong> 1244,2Mbit/s(ST24/STM8), e menos ainda <strong>para</strong> 1,6Gbit/s.a) b)c)Figura 66. Diagrama <strong>de</strong> olho <strong>para</strong> avaliação dos conversores ECL-CMOS e CMOS-ECL. O sinal <strong>de</strong>entrada é Pseudo-Randon-Bit-Sequence 2 23 -1 (HP Pulse Generator 8133A). Em (a) o sinal aplicadotem taxa <strong>de</strong> 622,1Mbit/s(STS12/STM4 [St92]) em (b), taxa <strong>de</strong> 1244,12Mbit/s (STS24/STM8 [St92])e em (c), taxa <strong>de</strong> 1,6Gbit/s.


Circuitos <strong>de</strong> testes <strong>para</strong> a estratégia E-TSPC e <strong>para</strong> os Tapered Buffers 155Contribui também <strong>para</strong> aumento do ruído/jitter a própria placa. O diagrama <strong>de</strong> olho do sinal naentrada do C.I., vindo do gerador <strong>de</strong> sinais, está apresentado na Figura 67. Nota-se que existem váriasreflexões que <strong>de</strong>formam o sinal na entrada.a) b)Figura 67. Diagrama <strong>de</strong> olho do sinal na entrada do C.I.: (a) <strong>para</strong> o sinal com taxa <strong>de</strong> 1244,1Mbit/s e(b), <strong>para</strong> o sinal a 1,6Gbit/s. O sinal é Pseudo-Randon-Bit-Sequence 2 23 -1.4.2.3.2 Testes do Circuito Multiplexador 8:1O circuito Multiplexador operou corretamente até a taxa <strong>de</strong> 1,7Gbit/s (sinal na saída). Na Figura 68são apresentados o sinal <strong>de</strong> clock e o sinal <strong>de</strong> saída, "01100101", do circuito operando nessa taxa. Paracada borda do sinal <strong>de</strong> clock um novo dado é colocado na saída uma vez que as duas bordas sãoutilizadas na operação.Os principais resultados obtidos com este circuito estão resumidos na Tabela 16, junto com osdados referentes a primeira implementação do circuito. As diferenças entre os dois <strong>projeto</strong>s sãoindicadas na última coluna. Com<strong>para</strong>ndo os resultados, vemos que tanto a área como a potênciaconsumida são praticamente iguais. Por outro lado, o novo circuito teve um aumento <strong>de</strong> quase 70% navelocida<strong>de</strong>, mostrando a importância das <strong>técnicas</strong> aplicadas.


156Circuitos <strong>de</strong> testes <strong>para</strong> a estratégia E-TSPC e <strong>para</strong> os Tapered BuffersFigura 68. Sinal <strong>de</strong> clock e da saída do Multiplexador 8:1 funcionando a taxa <strong>de</strong> 1,7Gbit/s. O sinal<strong>de</strong> saída é "01100101". A posição relativa no tempo, entre o clock e o sinal <strong>de</strong> saída, foi ajustada <strong>para</strong>facilitar a visualização.Tabela 16. Resultados experimentais da primeira versão do circuito Multiplexador 8:1 e <strong>de</strong> sua novaimplementação. Também são apresentadas as diferenças entre eles.CircuitoprimeiraversãonovaversãoÁrea (apenaso núcleo doMultiplexador)(10 3 µm 2 )Consumo <strong>de</strong>potência(V DD =5V)(µW/Mbit/s)Tecnologia Máximataxa <strong>de</strong>operação(Gbit/s)60,0 41,85 0,8µm CMOS(ES2/ATMEL)70,0 51,6 0,8µm CMOS(ES2/ATMEL)Diferenças entre as duasimplementações1,05 • conversor ECL-CMOS da Figura 45;• apenas flip-flops da Figura 47.1,7 • uso <strong>de</strong> novo conversor ECL-CMOS(Figura 53);• uso <strong>de</strong> novos flip-flops com blocosN-MOS like (Figura 54).• otimização <strong>para</strong> máxima taxa <strong>de</strong>vários buffers do circuito (Figura55).Dados tecnológicos e resultados experimentais <strong>de</strong> implementações <strong>de</strong> Multiplexadores CMOSrecentemente publicados, junto com os resultados aqui obtidos, são apresentados na Tabela 17. Devidoàs diferenças entre as tecnologias, principalmente entre aquela usada aqui e aquelas usadas nas outrasimplementações, não é razoável a com<strong>para</strong>ção direta dos resultados. Po<strong>de</strong>mos, no entanto, usar a teoria<strong>de</strong> escalonamento <strong>para</strong> estimar, ao menos em primeira or<strong>de</strong>m, os resultados que seriam obtidos comnosso circuito em uma tecnologia mas avançada. Consi<strong>de</strong>remos o Constant-Field Scaling [Mu86].Para um fator <strong>de</strong> escala K temos que:• as dimensões <strong>de</strong> superfície escalarão por 1/K;• as tensões escalarão por 1/K;


Circuitos <strong>de</strong> testes <strong>para</strong> a estratégia E-TSPC e <strong>para</strong> os Tapered Buffers 157• os atrasos do circuito escalarão por 1/K;• a dissipação <strong>de</strong> potência escalará por 1/K 2 .Na última linha da Tabela 17 são mostrados os resultados do escalonamento aplicado ao nossoMultiplexador, <strong>para</strong> um fator K=2,5. Vemos que o "circuito" assim obtido tem <strong>de</strong>sempenho bastantesuperior as outras implementações tanto na potência consumida como na velocida<strong>de</strong>.Naturalmente esta análise, via teoria <strong>de</strong> escalonamento, serve apenas como indicativo do que po<strong>de</strong>acontecer. Por outro lado, o aumento da velocida<strong>de</strong> do circuito causa o aparecimento <strong>de</strong> uma série <strong>de</strong>dificulda<strong>de</strong>s, principalmente <strong>de</strong>vido ao ruído e a propagação <strong>de</strong> sinais, que não foram nelaconsi<strong>de</strong>radas.Tabela 17. Tecnologia, potência consumida e máxima taxa <strong>de</strong> operação <strong>de</strong> diversas implementações<strong>de</strong> Multiplexadores.MultiplexadorTecnologia(µm)Alimentação(V)Potênciaconsumida(µW/Mbit/s)Máxima taxa<strong>de</strong> operação(Gbit/s)[Ku96] 5 (8:1) 0,15 (CMOS) 2,0 39,3 3,0[Oh97] (16:2) 0,252,0 68,0 (≈ 34,0 <strong>para</strong> 2,5(CMOS/SIMOX)8:1)este trabalho (nova 0,8 (CMOS; 0,7 5,0 42,6 1,7versão) (8:1)efetivo)este trabalho escalon.(constant-field scaling)0,32 (CMOS; 0,28efetivo)2,0 6,8 4,254.2.3.3 Testes do Circuito Demultiplexador 1:8O circuito Demultiplexador, por sua vez, operou corretamente até taxas <strong>de</strong> 1,38Gbit/s (velocida<strong>de</strong>do sinal <strong>de</strong> entrada). Está máxima taxa é conseguida com alimentação V DD =4,7V e não com V DD =5V.Para enten<strong>de</strong>r a razão disso <strong>de</strong>vemos lembrar que, <strong>de</strong>vido à limitação do gerador e aos resistores <strong>de</strong>casamento <strong>de</strong> 47Ω usados, os valores ECL na entrada do C.I. são inferiores aos esperados. O circuitoconversor <strong>de</strong> entrada é bastante sensível a essa redução, principalmente o seguidor <strong>de</strong> fonte (Figura53). Nele o transistor M i1 trabalha com uma tensão gate-fonte pequena e que fica menor quando astensões <strong>de</strong> entrada são diminuídas, dificultando sua operação. Com a redução do valor <strong>de</strong> V DD , éaumentado o <strong>de</strong>slocamento <strong>de</strong> nível necessário entre in e O SF (Figura 53), o que compensa a reduçãodos níveis ECL da entrada. Dessa forma, o circuito funciona melhor com um valor <strong>de</strong> V DD menor.Na Figura 69 estão mostrados o sinal <strong>de</strong> clock e o sinal <strong>de</strong> dados multiplexado, observados naentrada do C.I., com o sinal Dado M a taxa <strong>de</strong> 1,38Gbit/s. Na figura são ainda indicados, com linhas5 Este trabalho foi também apresentado no ISSCC <strong>de</strong> 1996, p.122-124.


158Circuitos <strong>de</strong> testes <strong>para</strong> a estratégia E-TSPC e <strong>para</strong> os Tapered Buffershorizontais, os níveis <strong>de</strong> tensão 3,8V e 2,74V, mostrando que os sinais ECL <strong>de</strong> entradas estão longe <strong>de</strong>atingir os valores que esperamos <strong>de</strong>les (4,1V e 3,2V). O valor <strong>de</strong> 3,3V foi usado <strong>para</strong> V REF no circuito<strong>de</strong> polarização do conversor <strong>de</strong> entrada (Figura 53) neste caso.É importante ter em mente que o Demultiplexador é mais sensível as entradas <strong>de</strong> <strong>alta</strong> velocida<strong>de</strong>, odado multiplexado e o clock, que o Multiplexador on<strong>de</strong> os dados <strong>de</strong> entrada são "lentos". Em vistadisso, acreditamos que os problemas com os níveis <strong>de</strong> entrada são, em boa parte, responsáveis pelavelocida<strong>de</strong> final alcançada neste Demultiplexador.Os principais resultados obtidos com esta implementação estão resumidos na Tabela 18, junto comos dados referentes a primeira implementação. Também são indicadas as diferenças entre elas. Aspotências indicadas nessa tabela levam em consi<strong>de</strong>ração os buffers do dado e do clock. Com<strong>para</strong>ndo osresultados vemos que o novo circuito é melhor que o anterior em todos os aspectos. Em particular, aárea foi reduzida em razão dos novos buffers usarem fator <strong>de</strong> ganho menor. O aumento da velocida<strong>de</strong> é<strong>de</strong> 29%.3,8V2,74VFigura 69. Sinal <strong>de</strong> dados, DADO, e sinal <strong>de</strong> clock nas entradas do circuito Demultiplexador 1:8(versão nova). O sinal <strong>de</strong> dados tem valor "101011" e taxa <strong>de</strong> 1,38Gbit/s.Dados tecnológicos e resultados experimentais <strong>de</strong> implementações <strong>de</strong> Demultiplexadores CMOSrecentemente publicados, junto com os resultados aqui obtidos, são apresentados na Tabela 19. Ainda,a última linha da tabela apresenta estimativas <strong>de</strong> primeira or<strong>de</strong>m, usando teoria <strong>de</strong> escalonamento(Constant-Field Scaling), dos resultados que seriam obtidos com uma tecnologia mais avançada. Ofator <strong>de</strong> escala usado é K=2,35.Tabela 18. Resultados experimentais da primeira versão do circuito Demultiplexador 1:8 e <strong>de</strong> suanova implementação. Também são apresentadas as diferenças entre eles.


Circuitos <strong>de</strong> testes <strong>para</strong> a estratégia E-TSPC e <strong>para</strong> os Tapered Buffers 159Circuito Área (apenas onúcleo doDemultiplexador)(10 3 µm 2 )primeiraversãoNovaversãoConsumo <strong>de</strong>potência(µW/Mbit/s)602,0 395(V DD =5V)563,0 253(V DD =4,7V)Tecnologia Máximataxa <strong>de</strong>operação(Gbit/s)0,8µm CMOS(ES2/ATMEL)0,8µm CMOS(ES2/ATMEL)Diferenças entre as duasimplementações1,06 • conversor ECL-CMOS da Figura45;• apenas flip-flops da Figura 47.1,38 • uso <strong>de</strong> novo conversor ECL-CMOS(Figura 53);• uso <strong>de</strong> novos flip-flops com blocosN-MOS like (Figura 54);• otimização <strong>para</strong> máxima taxa <strong>de</strong>vários buffers do circuito;• substituição <strong>de</strong> flip-flops sensíveisà borda <strong>de</strong> <strong>de</strong>scida por flip-flopssensíveis à borda <strong>de</strong> subida (Figura56).Os resultados previstos pelo escalonamento <strong>para</strong> nosso Demultiplexador são bastante favoráveis: éele que apresenta maior velocida<strong>de</strong> e, no que toca a potência, per<strong>de</strong> <strong>para</strong> o circuito em [Oh97],fabricado com tecnologia SOI. Lembremos, por outro lado, que nosso circuito faz também a <strong>de</strong>tecçãodo byte alignment, e que boa parte dos D-flip-flops operando em <strong>alta</strong> freqüência estão presentes <strong>de</strong>vidoa esta característica.Tabela 19. Tecnologia, potência consumida e máxima taxa <strong>de</strong> operação <strong>de</strong> diversas implementações<strong>de</strong> Demultiplexadores.DemultiplexadorTecnologia(µm)[Tan96] (1:8) 0,35 (CMOS, 0,15efetivo)[Oh97] (2:16) 0,25(CMOS/SIMOX)este trabalho (nova 0,8 (CMOS; 0,7versão) (1:8)efetivo)este trabalho escalon. 0,34 (CMOS; 0,30(constant-field scaling) efetivo)Alimentação(V)Potênciaconsumida(µW/Mbit/s)Máxima taxa<strong>de</strong> operação(Gbit/s)2,0 71,43 2,82,0 43 (≈ 21,5 <strong>para</strong> 2,51:8)4,7 253 1,382,0 45,8 3,224.2.4 Multiplexador e Demultiplexador: conclusõesO estudo, a implementação e os testes dos circuitos Multiplexador 8:1 e Demultiplexador 1:8mostraram que a aplicação do E-TSPC, mais especificamente os blocos N-MOS like, e do novo critério<strong>de</strong> otimização <strong>de</strong> tapered buffers trazem melhoras consi<strong>de</strong>ráveis. Em termos <strong>de</strong> velocida<strong>de</strong> <strong>de</strong>operação, que tem sido a nossa maior preocupação, obtivemos ganhos <strong>de</strong> 62% no Multiplexador e 29%no Demultiplexador, quando com<strong>para</strong>mos implementações on<strong>de</strong> tais <strong>técnicas</strong> foram ou não aplicadas.Em termos <strong>de</strong> área e potência as variações são pequenas.


160Circuitos <strong>de</strong> testes <strong>para</strong> a estratégia E-TSPC e <strong>para</strong> os Tapered BuffersAinda, a análise das várias implementações <strong>de</strong> Multiplexadores e Demultiplexadores que aparecemna literatura recente mostra que os resultados obtidos por nós são bastante bons: em termos <strong>de</strong>velocida<strong>de</strong> os circuitos são superiores e em termos <strong>de</strong> potência, no mínimo, comparáveis.4.3 Circuito Dual-Modulus PrescalerDual-Modulus Prescalers são, a grosso modo, divisores <strong>de</strong> freqüência programáveis. Um sinal <strong>de</strong>controle seleciona se o sinal <strong>de</strong> entrada é dividido por N D ou por (N D +1). Estes circuitos, junto comPLLs (phase-locked loop) são utilizados em sintetizadores <strong>de</strong> freqüência RF (Radio Frequency),sobretudo, em telefonia celular ([Co88], [Fo95], [Ch96], [Cr96], [Hu96], [La96] e [Le97]).f reff divCom<strong>para</strong>dor<strong>de</strong> faseLoop FilterO sciladorcontrolado portensão (V .C .O .)f outPrescalerF /N DoutF in/N D +1Seleção (divi<strong>de</strong> porControladorD m N D ou por N D +1)do modoFigura 70. Diagrama <strong>de</strong> blocos <strong>de</strong> sintetizador <strong>de</strong> freqüência RF empregando PLL e Prescaler.Na Figura 70 está o diagrama <strong>de</strong> blocos <strong>de</strong> um sintetizador <strong>de</strong> freqüência RF que emprega PLL ePrescaler. No diagrama o Prescaler tem seu modo <strong>de</strong> divisão dado pelo sinal Seleção: quandoSeleção="0" a freqüência do sinal F out (do Prescaler) é igual a do sinal F in dividida por N D ; quandoSeleção="1" a freqüência do F out é igual a do F in dividida por (N D +1). A função do controlador <strong>de</strong>modo é, <strong>para</strong> uma entrada D, gerar na saída um sinal que tem valor "1" durante D/2 m do tempo e "0"no restante. Em vista disso a freqüência média do sinal f div será dada porfdiv=NDfout+ D2mon<strong>de</strong> f divé a freqüência média do sinal f div ;f out é a freqüência do sinal f out , saída do sintetizador;D é a entrada digital com valor entre 0 e (2 m -1);m é um número inteiro.


Circuitos <strong>de</strong> testes <strong>para</strong> a estratégia E-TSPC e <strong>para</strong> os Tapered Buffers 161O com<strong>para</strong>dor <strong>de</strong> fase e o Loop Filter irão ajustar o V.C.O. (voltage-controlled oscillator) até quef divse torne igual a freqüência do sinal f ref . Como conseqüência, a freqüência na saída f out dosintetizador terá valor( )f = N + D f2out D m refon<strong>de</strong> f ref é a freqüência do sinal f ref .Conseguimos assim, através da entrada digital D, sintetizar 2 m freqüências, <strong>de</strong>s<strong>de</strong> N D f ref , <strong>para</strong> D=0,m⎛ 2 − 1⎞até ⎜ ND+ m ⎟ f⎝ 2 ⎠ref, <strong>para</strong> D=(2 m -1). Repare que apenas o V.C.O. e o Prescaler trabalham comfreqüências iguais à do sinal <strong>de</strong> saída. Os outros blocos trabalham com sinais bem mais lentos. Estacaracterística torna a configuração da Figura 70 atraente <strong>para</strong> geração <strong>de</strong> sinais RF.Não obstante a importância dos circuitos Prescalers, este não foi o principal motivo <strong>para</strong> a suaimplementação neste trabalho. Estes mesmos circuitos têm sido utilizados em várias implementações<strong>de</strong> testes tanto <strong>de</strong> circuitos TSPC, ([Ch96], [Hu96]), como <strong>de</strong> outras <strong>técnicas</strong> ([Co88], [Fo95] [Cr96],[La96], [Le97]). Portanto po<strong>de</strong>mos, através da implementação do Prescaler com o emprego daestratégia E-TSPC, com<strong>para</strong>r os resultados conseguidos com os <strong>de</strong> outros trabalhos, e melhor avaliar oE-TSPC.4.3.1 Circuito Dual-Modulus Prescaler (divi<strong>de</strong> por 128/129)O Prescaler que estudamos e implementamos faz a divisão por 128 ou 129 conforme o valor dosinal <strong>de</strong> seleção <strong>de</strong> modo [Na99]. Seu diagrama esquemático está apresentado na Figura 71. Nestecircuito po<strong>de</strong>mos distinguir duas porções: a porção hachurada compõe um contador síncrono que contaaté 4 ou 5, <strong>de</strong>pen<strong>de</strong>ndo do valor do sinal div32; os outros D-flip-flops compõe um contador assíncronoque conta até 32. O contador 4/5 gera o clock do primeiro D-flip-flop do contador assíncrono.O sinal S M seleciona se o Prescaler irá dividir o sinal clock por 128 ou 129. Assim quando S M ="0",não será possível que o contador assíncrono modifique o sinal div32 e o contador 4/5 contará sempreaté 4. Resulta que a saída do Prescaler terá freqüência igual a do sinal clock dividida por 128. Poroutro lado, se S M ="1", o valor do sinal div32 <strong>de</strong>pen<strong>de</strong>rá do estado do contador assíncrono. Comoconseqüência, a cada 32 ciclos o contador 4/5 contará 31 vezes até 4 e uma vez até 5. A saída doPrescaler terá agora a freqüência do sinal <strong>de</strong> clock dividida por 129.


162Circuitos <strong>de</strong> testes <strong>para</strong> a estratégia E-TSPC e <strong>para</strong> os Tapered BuffersDivi<strong>de</strong> por 4/5 (contador)DD-FFQDD-FFQDD-FFQclockS Mdiv32DD-FFQQDD-FFQQDD-FFQQDD-FFQQDD-FFFigura 71. Diagrama esquemático do Dual-Modulus Prescaler (divi<strong>de</strong> por 128/129).QQsaída128/129No circuito do Prescaler, apenas os blocos que compõe o contador 4/5, que recebem como clock opróprio sinal a ser dividido, trabalham com a velocida<strong>de</strong> máxima. Os outros blocos recebem sinaismais lentos. Em vista disto, o contador síncrono constitui-se no elemento crítico <strong>para</strong> o <strong>de</strong>sempenhoem termos <strong>de</strong> velocida<strong>de</strong>.4.3.2 Estudo preliminar dos contadores síncronosNum estudo preliminar do Prescaler, tratamos <strong>de</strong> implementar o contador síncrono com estratégiasdiferentes <strong>para</strong> com<strong>para</strong>rmos os resultados. Quatro diferentes layouts foram projetados e <strong>de</strong>senhadoscom a tecnologia 0,8µm CMOS; seus circuitos foram extraídos e então simulados no SPICE. Oscontadores síncronos projetados são enumerados e <strong>de</strong>scritos abaixo:D G1 : projetado utilizando D-flip-flops convencionais sensíveis à borda <strong>de</strong> subida do clock;D G2 : projetado utilizando D-flip-flops sensíveis à borda <strong>de</strong> subida e otimizado através da aplicaçãoda estratégia E-TSPC;D G3 : projetado utilizando D-flip-flops sensíveis à borda <strong>de</strong> <strong>de</strong>scida modificados conformeapresentado em [Ch96];D G4 : projetado utilizando D-flip-flops sensíveis à borda <strong>de</strong> <strong>de</strong>scida e otimizado através da aplicaçãoda estratégia E-TSPC.A Figura 72 apresenta o diagrama <strong>de</strong> transistores e o layout <strong>para</strong> estes quatro <strong>projeto</strong>s.


Circuitos <strong>de</strong> testes <strong>para</strong> a estratégia E-TSPC e <strong>para</strong> os Tapered Buffers 1634,0 4,0 2,4 2,42,4 2,44,04,84,8clk clkclk clkclk2,42,44,84,0 2,42,4 2,42,4 2,4 2,44,0 4,02,42,42,44,02,4 2,4clk clk2,42,4 2,4 2,4clk clk2,4clk2,4clk2,4clk2,42,44,82,4clock <strong>para</strong> ocontadorassíncronodiv32D G1clk2,4 2,4clkC 1 C 2a)5,73,0clk2,4clk4,83,8clk2,4clk4,83,0clk2,44,83,14,0 4,0 2,4 2,42,4 2,4 4,0 4,02,4 2,44,0 2,4 2,4clk clkclk clkclk2,42,4clk2,42,4clk2,42,44,82,4clock <strong>para</strong> ocontadorassíncronodiv32D G 2clk2,4 2,4clkC 1 C 2b)4,0 4,0 2,4 3,02,4 3,04,03,03,0clkclk2,42,4clk3,04,04,0clk2,4clk2,44,0 4,02,4clk2,4clk4,0 4,03,03,0clkclock <strong>para</strong> oclk4,0 4,0contadorassíncronoC 1 C 2c)4,0 4,0div32clkD G32,4clk2,44,0 4,08,5 8,5 3,0 3,0 5,0 8,0 3,0 3,0 4,08,0 3,0 3,0clkclkclk2,4/1,1 4,0 4,0 2,4 2,4/1,1 4,0 4,0 4,0 4,0 2,4/1,14,0 4,0clkclkclkclkclkclk3,0 3,0clk4,0 4,0clkC 1 C 2clock <strong>para</strong> ocontadorassíncronod)div32D G4Figura 72. Diagrama <strong>de</strong> transistores e layout dos quatro <strong>projeto</strong>s do contador síncrono 4/5: em (a) está o<strong>projeto</strong> D G1 ; em (b), D G2 ; em (c), D G3 ; em (d), D G4 . Na representação <strong>de</strong> transistores também estão indicados alargura e, quando diferente <strong>de</strong> 0,8µm, o comprimento do canal <strong>de</strong> cada transistor (largura/comprimento). Nolayout, a moldura em torno do circuito tem dimensões <strong>de</strong> 100µm X 70µm (praticamente as dimensões <strong>de</strong> D G1 ),<strong>para</strong> os quatro casos.


164Circuitos <strong>de</strong> testes <strong>para</strong> a estratégia E-TSPC e <strong>para</strong> os Tapered BuffersAlgumas observações acerca dos quatro <strong>projeto</strong>s <strong>de</strong>vem ser feitas <strong>para</strong> melhor compreensão dascom<strong>para</strong>ções exibidas:i. em todos os <strong>projeto</strong>s foram usados transistores com pequenas dimensões, normalmente asmínimas permitidas pela tecnologia;ii. o diagrama esquemático da Figura 71 é alterado em cada uma das implementações visando aomelhor aproveitamento <strong>de</strong> suas características. Apenas em D G1 é seguido o diagrama original;iii. a porta lógica NOR, Figura 71, é implementada <strong>de</strong> forma semelhante a uma porta N-MOS, mascom um transistor P como carga. A porta assim construída é mais veloz que uma porta estáticacomplementar CMOS. Esta configuração <strong>para</strong> o NOR aparece em D G1 , D G3 e D G4 ;iv. os blocos C 1 e C 2 , Figura 72, geram o sinal <strong>de</strong> clock <strong>para</strong> o primeiro D-flip-flop do contadorassíncrono. Com esta configuração, as cargas ligadas a estes sinais <strong>de</strong> clock não interferem navelocida<strong>de</strong> dos contadores. Ela foi usada nos quatro <strong>projeto</strong>s.Através dos layouts mostrados, po<strong>de</strong>mos verificar que a área ocupada por cada um dos circuitos ébastante próxima. A Tabela 20, por sua vez, mostra os resultados <strong>de</strong> velocida<strong>de</strong> e potência consumida,<strong>para</strong> os diferentes <strong>projeto</strong>s do contador 4/5. Estes dados foram obtidos a partir <strong>de</strong> simulações dosnetlists extraídos dos layouts (SPICE, parâmetros slow).Tabela 20. Resultados <strong>de</strong> máxima velocida<strong>de</strong> e potência consumida <strong>para</strong> os quatro contadoressíncronos 4/5 projetados (simulação SPICE com parâmetros slow).Projeto Velocida<strong>de</strong> (GHz) Potência consumida (µW/MHz)D G1 0.98 3.27D G2 1.28 4.45D G3 1.39 4.85D G4 1.67 5.62Com<strong>para</strong>ndo os resultados vemos as vantagens do E-TSPC. Um aumento superior a 70% navelocida<strong>de</strong> é conseguido do <strong>projeto</strong> D G1 <strong>para</strong> o D G4 , e da or<strong>de</strong>m <strong>de</strong> 20% do D G3 <strong>para</strong> o D G4 . Por outrolado, a potência consumida aumenta 72% do D G1 <strong>para</strong> o D G4 . Como o circuito D G4 utiliza apenasblocos N-MOS like, este aumento não é surpreen<strong>de</strong>nte e confirma que tais blocos <strong>de</strong>vem ser usadosapenas nas partes críticas das implementações. Des<strong>de</strong> que as regras <strong>de</strong> composição favorecem as trocasentre os blocos convencionais e os blocos N-MOS like, os circuitos E-TSPC po<strong>de</strong>m alcançar <strong>alta</strong>svelocida<strong>de</strong>s mantendo o consumo <strong>de</strong> potência tão baixo quanto possível <strong>para</strong> o objetivo <strong>de</strong>sejado.


Circuitos <strong>de</strong> testes <strong>para</strong> a estratégia E-TSPC e <strong>para</strong> os Tapered Buffers 1654.3.3 Resultados Experimentais do Dual-Modulus PrescalerO Dual-Modulus Prescaler (divi<strong>de</strong> por 128/129) completo foi implementado utilizando aconfiguração <strong>de</strong> D G4 . No contador assíncrono foram usados D-flip-flops convencionais TSPC (capítulodois) sensíveis à borda <strong>de</strong> subida. As dimensões usadas <strong>para</strong> estes blocos são iguais àquelas usadaspelos D-flip-flops do <strong>projeto</strong> D G1 , Figura 70(a). A área total ocupada pelo Prescaler é <strong>de</strong> 0,0126 mm 2 .Uma alteração ainda foi acrescentada ao circuito: o sinal <strong>de</strong> clock gerado pelo contador síncrono éinvertido antes <strong>de</strong> ser ligado ao contador módulo 32. Este expediente permite maior tempo <strong>para</strong> apre<strong>para</strong>ção do sinal div32.As simulações do circuito completo mostraram que ele <strong>de</strong>veria atingir freqüências <strong>de</strong> operaçãosuperiores a 1,5GHz. Ainda, verificamos que o buffer <strong>para</strong> o clock (sinal <strong>de</strong> entrada <strong>de</strong> <strong>alta</strong> freqüência)é um dos limitadores da velocida<strong>de</strong> final do circuito.O C.I. foi projetado <strong>para</strong> testes com <strong>técnicas</strong> <strong>de</strong> chip-on-bord, pois, se fosse encapsulado, asindutâncias e capacitâncias <strong>para</strong>sitas, associadas ao pino do sinal <strong>de</strong> clock, impossibilitariam que oPrescaler alcançasse as velocida<strong>de</strong>s previstas ([Ki93], [Ve95], [Li98]). Foram colocados no mesmoC.I. três versões do Prescaler (Figura 73(a)): duas versões <strong>para</strong> serem testadas em <strong>alta</strong> freqüência eque diferem no buffer do clock (implementação 1 e implementação 2, Figura 73(a)) e uma <strong>para</strong> serencapsulada <strong>para</strong> testes preliminares <strong>de</strong> baixa freqüência (implementação 3).Foram utilizados, <strong>para</strong> a fabricação do C.I., os serviços do Circuits Multi-Projects (CMP) francêsque, <strong>para</strong> a tecnologia empregada, cobra, no mínimo, 2mm 2 <strong>de</strong> área. Como as três implementaçõesjuntas ocupam uma área pequena, gran<strong>de</strong> parte do C.I. foi utilizada <strong>para</strong> a colocação <strong>de</strong> capacitores <strong>de</strong><strong>de</strong>sacoplamento entre V DD e V SS que reduzem o ruído interno. As dimensões totais do C.I. são <strong>de</strong>aproximadamente 1,6mm X 1,3 mm.Para os testes aqui foi confeccionada uma placa em alumina e o C.I., colado sobre ela. Com exceçãodo PAD <strong>de</strong> clock, e seus dois PADs <strong>de</strong> terra (Figura 73(b)), todos os outros, que não recebem sinais <strong>de</strong><strong>alta</strong> velocida<strong>de</strong>, são ligados diretamente a placa. Na Figura 73(a) estão mostrados os fios que ligam osPADs do circuito a placa. O sinal <strong>de</strong> clock é injetado no C.I. por meio <strong>de</strong> ponta <strong>de</strong> prova RF coplanardo tipo GSG, ground-signal-ground, com impedância característica <strong>de</strong> 50Ω. O resistor <strong>para</strong> casamento<strong>de</strong> impedância é construído interno ao chip por meio da camada <strong>de</strong> difusão (dois resistores <strong>de</strong> 100Ω,ver Figura 73(b)). Como o sinal <strong>de</strong> clock não passa por nenhum conversor <strong>de</strong> nível, <strong>de</strong>ve, quandopossível, ter os mesmos níveis <strong>de</strong> tensão usados na lógica interna do C.I..


166Circuitos <strong>de</strong> testes <strong>para</strong> a estratégia E-TSPC e <strong>para</strong> os Tapered BuffersImplementação 1Implementação 3resistor <strong>de</strong> 100Ωresistor <strong>de</strong> 100ΩGndclockGndV SSV DDoutput128/129S MV DDb)Implemetação 2a)Figura 73. Fotografia do C.I. fabricado. Em (a) aparece o C.I. completo, com três diferentesPrescalers; também são mostradas as conexões do C.I. com placa <strong>de</strong> teste. Em (b), estão <strong>de</strong>talhes doPrescaler que foi testado em <strong>alta</strong> freqüência (implementação 1).Devido às dificulda<strong>de</strong>s <strong>para</strong> execução dos testes (necessida<strong>de</strong> <strong>de</strong> confecção <strong>de</strong> placas) apenas aimplementação mais promissora, <strong>de</strong> acordo com as simulações, foi testada em <strong>alta</strong> freqüência. AFigura 73(b) mostra em <strong>de</strong>talhes o circuito testado e a Tabela 21 dá a <strong>de</strong>scrição <strong>de</strong> cada um <strong>de</strong> seusPADs.Tabela 21. PADs <strong>de</strong> entrada/saída do Prescaler testado e sua <strong>de</strong>scrição (Figura 73(b)).PADs <strong>de</strong> entrada/saídaDescriçãoclocksinal <strong>de</strong> <strong>alta</strong> freqüência <strong>para</strong> ser dividido pelo Prescaleroutput 128/129sinal <strong>de</strong> saída resultante da divisão do sinal <strong>de</strong> clockS M sinal que <strong>de</strong>termina se o circuito divi<strong>de</strong> por 128 ou 129V DDV SSGndAlimentação do circuito (5V). São duas entradas <strong>de</strong> V DD , uma <strong>para</strong> oPrescaler propriamente dito, e outra <strong>para</strong> o buffer do clocksinal <strong>de</strong> terra <strong>para</strong> o circuito Prescalerterra <strong>para</strong> ponta <strong>de</strong> prova coplanar usada no sinal <strong>de</strong> clockNa Figura 74 estão apresentadas a máxima freqüência <strong>de</strong> operação e a corrente consumida noPrescaler como função da tensão V DD , medidas experimentalmente. Uma vez que o gerador <strong>de</strong> sinaisusado tem sua excursão <strong>de</strong> saída limitada a 3V (HP Pulse Generator 8133A), acreditamos que oPrescaler funcione em velocida<strong>de</strong>s um pouco superiores àquelas encontradas quando V DD é maior que3V (veja linha tracejada na curva <strong>de</strong> máxima freqüência <strong>de</strong> operação, Figura 74).


Circuitos <strong>de</strong> testes <strong>para</strong> a estratégia E-TSPC e <strong>para</strong> os Tapered Buffers 1671.631.42.5Máxima1.2freqüência<strong>de</strong>operação1(GHz)0.8Corrente2consumidana máximafreqüência1.5(mA)10.60.50.42 2.5 3 3.5 4 4.505V DD(V)Figura 74. Resultados experimentais do Prescaler. A curva (*), eixo à esquerda, fornece a máximafreqüência <strong>de</strong> operação em função da tensão <strong>de</strong> alimentação (V DD ); a curva (o), eixo à direita, fornecea corrente consumida na freqüência máxima.Resultados <strong>de</strong> performance <strong>de</strong> nossa implementação, <strong>de</strong> três outras implementações recentementepublicadas e que usam D-flip-flops TSPC e <strong>de</strong> uma nova arquitetura <strong>para</strong> Prescalers são sumariados naTabela 22. Em [Hu96], o Prescaler foi construído com D-flip-flops TSPC sensíveis à borda <strong>de</strong> subida eque foram otimizados <strong>para</strong> atingir máxima velocida<strong>de</strong>; em conseqüência, tanto a velocida<strong>de</strong> como apotência consumida são elevadas. D-flip-flops TSPC sensíveis à borda <strong>de</strong> <strong>de</strong>scida com transistores <strong>de</strong>pequenas dimensões e com alguns blocos N-MOS like foram empregados em [Ch96]. O circuitoresultante tem pequena área, baixo consumo <strong>de</strong> potência mas a máxima freqüência <strong>de</strong> operação não édas maiores. No Prescaler proposto em [Ya98], um novo D-flip-flop TSPC sensível à borda <strong>de</strong> subidaé utilizado, resultando em <strong>alta</strong> velocida<strong>de</strong> e elevado consumo <strong>de</strong> potência (o que sugere o uso <strong>de</strong>transistores gran<strong>de</strong>s). Uma arquitetura alternativa é proposta e aplicada em [Cr96]; D-flip-flopsdiferenciais substituem os TSPC nos pontos críticos. O resultado é uma altíssima velocida<strong>de</strong> e baixapotência. Nossa implementação, com a estratégia E-TSPC e transistores <strong>de</strong> pequenas dimensões,fornece a menor área e o menor consumo <strong>de</strong> potência, quando com<strong>para</strong>do com as versões anteriores;adicionalmente, sua velocida<strong>de</strong> é comparável a [Cr96].Por fim, <strong>para</strong> com<strong>para</strong>ções entre as cinco implementações, foi empregado como índice <strong>de</strong> méritodos Prescalers o valor calculado pela relaçãoIM=3Tec FPotmaxon<strong>de</strong> I M é o índice <strong>de</strong> mérito;


168Circuitos <strong>de</strong> testes <strong>para</strong> a estratégia E-TSPC e <strong>para</strong> os Tapered BuffersTec é o comprimento mínimo <strong>de</strong> canal <strong>para</strong> a tecnologia, em µm (Tabela 22, segunda coluna);F max é a máxima freqüência <strong>de</strong> operação do circuito, em MHz (Tabela 22, quinta coluna);Pot é a potência por MHz, em µW/MHz (Tabela 22, sexta coluna).A última coluna da Tabela 22 apresenta o valor <strong>de</strong> I M . Observe que o expoente 3, <strong>para</strong> o parâmetroTec, é necessário <strong>para</strong> que o índice <strong>de</strong> mérito permaneça invariável quando é aplicado o Constant-Field Scaling. O circuito aqui projetado é o que maior valor <strong>de</strong> I M apresenta 6 .Tabela 22. Resultados <strong>de</strong> área, velocida<strong>de</strong> e potência <strong>para</strong> cinco diferentes implementações doPrescaler.PrescalerTecnologia(µm)Tensão <strong>de</strong>alimentação (V)Área(10 -3 mm 2 )Velocida<strong>de</strong>(GHz)Potência(µW/MHz)I M(µm 3 MHz 2 /µW)[Hu96] 1,0 5 39.1 1,6 31,2 51,3[Ch96] 0,8 5 13,7 * 1,22 20,9 29,9[Cr96] 0,7 3 632 ** 1,75 13,7 43,8[Ya98] 0,8 5 - 1,80 29,34 31,41(este trabalho) 0,8 5 12,6 1,59 8,0 101,8* unicamente o contador módulo 4/5 e o contador módulo 32 são consi<strong>de</strong>rados.** inclui PADs e buffers.4.3.4 Dual-Modulus Prescaler: conclusõesO estudo, a implementação e os testes do Dual-Modulus Prescaler confirmam algumas dasprincipais características da estratégia E-TSPC. São elas:• as regras <strong>de</strong> composição permitem que o projetista utilize todo o potencial dos blocosdisponíveis;• os blocos N-MOS like po<strong>de</strong>m aumentar a velocida<strong>de</strong> em todos os pontos on<strong>de</strong> for necessário.Ainda, <strong>de</strong>s<strong>de</strong> que os blocos convencionais e os blocos N-MOS like <strong>de</strong>vem seguir as mesmas regras<strong>de</strong> composição, eles po<strong>de</strong>m ser substituídos, uns pelos outros, com custos, em termos <strong>de</strong> tempo <strong>de</strong><strong>projeto</strong>, pequenos;6 Po<strong>de</strong>mos, a partir da Figura 74, <strong>de</strong>terminar o valor <strong>de</strong> I M <strong>para</strong> várias tensões V DD . O menor valor é obtido quandoV DD =5V, que é o usado na Tabela 22.


Circuitos <strong>de</strong> testes <strong>para</strong> a estratégia E-TSPC e <strong>para</strong> os Tapered Buffers 169• p-data chains usando predominantemente p-latches N-MOS like, on<strong>de</strong> a função lógica éexecutada por transistores N, são mais velozes que os n-data chains. Em conseqüência, n e p-datachains po<strong>de</strong>m ser igualmente aplicados em circuitos <strong>de</strong> <strong>alta</strong> velocida<strong>de</strong>.


Conclusões e futuros trabalhos 1715. Conclusões e futuros trabalhosNossa atenção, neste trabalho, esteve voltada <strong>para</strong> o <strong>projeto</strong> <strong>de</strong> circuitos <strong>de</strong> <strong>alta</strong> velocida<strong>de</strong> emtecnologias CMOS. Como vimos, o aumento das freqüências <strong>de</strong> operação dos C.I.s, (NTRS-97[Se97]), e a <strong>de</strong>manda crescente, em diversas áreas <strong>de</strong> aplicação, por circuitos mais rápidos, fizeramcom que a velocida<strong>de</strong> se tornasse um importante fator <strong>de</strong> <strong>de</strong>sempenho mas criaram, todavia, novasdificulda<strong>de</strong>s <strong>para</strong> os <strong>projeto</strong>s <strong>de</strong> C.I.s.No capítulo dois, <strong>de</strong>senvolvemos uma estratégia <strong>para</strong> o <strong>projeto</strong> <strong>de</strong> Register Transfer Systems osquais utilizam um único clock <strong>para</strong> sincronismo (True Single Phase Clock). A estratégia foi<strong>de</strong>nominada Exten<strong>de</strong>d-TSPC. Nela são utilizadas portas lógicas complementar CMOS, CMOSdinâmicas e data pre-charged, blocos n-latches e blocos p-latches. Ainda, são permitidasmodificações em algumas <strong>de</strong>stas portas e blocos, formando os blocos N-MOS like. Um conjunto <strong>de</strong>regras <strong>de</strong> composição é fornecido, r 1 a r 5 (ou apenas r G ) além <strong>de</strong> r E , <strong>para</strong> <strong>de</strong>terminar como estes blocospo<strong>de</strong>m ou não ser ligados. Uma vez obe<strong>de</strong>cidas a tais regras, garantimos, como mostram os teoremasapresentados e provados no capítulo dois, que diferentes problemas, referentes ao funcionamento dasportas e dos blocos usados, não ocorrerão.A otimização <strong>de</strong> tapered buffers, <strong>para</strong> obter máxima taxa <strong>de</strong> operação, foi então tratada no capítulotrês. A partir <strong>de</strong> simulações com diversas tecnologias verificamos que com a minimização do atraso dobuffer não obtemos, necessariamente, a máxima taxa <strong>de</strong> operação <strong>para</strong> ele. Os resultados mostraramque valores pequenos <strong>de</strong> fator <strong>de</strong> aumento entre inversores, inferiores a dois, é que proporcionam asmaiores taxas. Como conseqüência, o uso <strong>de</strong> valores pequenos do fator <strong>de</strong> aumento, <strong>para</strong> aplicaçõeson<strong>de</strong> atrasos maiores no buffer po<strong>de</strong>m ser suportados, é recomendado <strong>para</strong> melhora do <strong>de</strong>sempenho.Aumentos superiores a 20% na máxima taxa <strong>de</strong> operação têm sido alcançados <strong>de</strong>ssa forma.A estratégia E-TSPC, parcialmente, e os novos critérios <strong>para</strong> otimização <strong>de</strong> tapered buffers foramempregados no <strong>de</strong>senvolvimento <strong>de</strong> versões <strong>de</strong> <strong>alta</strong> performance <strong>de</strong> dois circuitos: um Multiplexador8:1 e um Demultiplexador 1:8 com byte alignment. Os resultados obtidos com testes nestes circuitosforam <strong>de</strong>scritos em <strong>de</strong>talhes no capítulo quatro. O novo Multiplexador operou a taxas <strong>de</strong> 1,7Gbit/s e onovo Demultiplexador, a 1,38Gbit/s, valores excelentes <strong>para</strong> a tecnologia utilizada (CMOS 0,8µm). Oganho <strong>de</strong> velocida<strong>de</strong> conseguido em relação a primeira versão <strong>de</strong>stes mesmos circuitos, efeito doemprego das <strong>técnicas</strong> aqui propostas, foi <strong>de</strong> 62% <strong>para</strong> o Multiplexador e <strong>de</strong> 29% <strong>para</strong> oDemultiplexador.Um outro circuito, um Dual Modulus Prescaler, foi também <strong>de</strong>senvolvido. Nele, a estratégia E-TSPC foi empregada <strong>de</strong> forma mais ampla, mostrando-se vantajosa <strong>para</strong> se atingir tanto <strong>alta</strong>sfreqüências <strong>de</strong> operação como baixos consumos <strong>de</strong> potência. O protótipo caracterizado do Prescaler


172Conclusões e futuros trabalhosoperou na freqüência <strong>de</strong> 1,58GHz (tecnologia CMOS 0,8µm). O índice <strong>de</strong> mérito utilizado <strong>para</strong>com<strong>para</strong>ção <strong>de</strong> diferentes implementações <strong>de</strong> Prescalers, índice que leva em conta a freqüência <strong>de</strong>operação, o consumo <strong>de</strong> potência e a tecnologia utilizada, foi, <strong>para</strong> nosso circuito, quase duas vezessuperior ao melhor resultado encontrado nas implementações <strong>de</strong> outros trabalhos.5.1 Futuros trabalhos sobre o E-TSPCO trabalho apresentado aqui é a base <strong>para</strong> futuros <strong>de</strong>senvolvimentos. Para sua utilização emcircuitos <strong>de</strong> média e gran<strong>de</strong> complexida<strong>de</strong>, ele precisa ser complementado com bibliotecas <strong>de</strong> células ecom uma série <strong>de</strong> ferramentas <strong>de</strong> auxílio a <strong>projeto</strong>s (ferramentas <strong>de</strong> CAD).A biblioteca <strong>de</strong> células <strong>de</strong>ve possuir vários blocos da estratégia, em todas as suas variantes, <strong>para</strong> asfunções lógicas mais comuns. Ainda, é essencial que cada bloco esteja <strong>de</strong>vidamente caracterizado emtermos <strong>de</strong> velocida<strong>de</strong> e consumo <strong>de</strong> potência. Dessa forma, o projetista, ou a ferramenta <strong>de</strong> CAD,po<strong>de</strong>rá estimar o custo, em termos <strong>de</strong> potência, da substituição <strong>de</strong> um bloco mais lento por outro maisveloz. Também é interessante que estejam disponíveis várias células D-flip-flops otimizadas <strong>para</strong>atingir máxima taxa <strong>de</strong> operação. Nessa direção, alguns trabalhos estão sendo executados ([Gri98]).A aplicação com sucesso do E-TSPC em circuitos maiores <strong>de</strong>pen<strong>de</strong>rá, em parte, da existência <strong>de</strong>ferramentas que possam ser empregadas com ele. A ferramenta mais simples que po<strong>de</strong> ser concebida é<strong>para</strong> verificação das regras <strong>de</strong> composição. Essa verificação será trivial uma vez i<strong>de</strong>ntificados os datachains do circuito, sendo esta i<strong>de</strong>ntificação, por sua vez, uma tarefa fácil (no capítulo dois é sugeridocomo). Outra ferramenta, mais sofisticada, po<strong>de</strong> ser construída <strong>para</strong> <strong>de</strong>terminação dos caminhoscríticos <strong>de</strong> um circuito, esteja ele <strong>de</strong>scrito por meio <strong>de</strong> conexões entre células <strong>de</strong> uma biblioteca, estejaele <strong>de</strong>scrito na forma <strong>de</strong> layout. Tal ferramenta seria bastante útil <strong>para</strong> otimizações <strong>de</strong> velocida<strong>de</strong> econsumo <strong>de</strong> potência, pois permitiria i<strong>de</strong>ntificar as posições on<strong>de</strong> blocos N-MOS like são maisnecessários.Para tirar maior proveito das potencialida<strong>de</strong>s do E-TSPC, uma ferramenta completa <strong>para</strong> sínteselógica é <strong>de</strong>sejável. Esse é, por sua vez, o objetivo do Ambiente <strong>de</strong> Síntese <strong>de</strong> Circuitos <strong>de</strong> AltoDesempenho (ASCAD) que vem sendo estudado <strong>de</strong>ntro do <strong>LSI</strong>/<strong>USP</strong> [Rom98].5.2 Futuros trabalhos sobre otimização <strong>de</strong> tapered buffersPara aprofundamento do trabalho sobre tapered buffers, várias questões <strong>de</strong>vem ser investigadas. Aprimeira diz respeito aos problemas <strong>de</strong> mismatch entre inversores. Foi feita, no capítulo três, umaanálise teórica sobre a questão no entanto f<strong>alta</strong>m resultados experimentais relativos a diferentestecnologias. Para isso várias estruturas com osciladores em anel, formados por inversores, <strong>de</strong>vem ser


Conclusões e futuros trabalhos 173fabricadas e caracterizadas. Na Figura 75 está exemplificado um oscilador <strong>para</strong> testes <strong>de</strong> um buffercom fator <strong>de</strong> aumento χ.Também estudos sobre a área ocupada e a potência consumida pelo tapered buffer, em função dofator <strong>de</strong> aumento empregado, <strong>de</strong>vem ser acrescentados àqueles efetuados no capítulo três.Inv. 1W n =WInv. 2W n =χWInv. 3W n =χ 2 WInv. NW n =χ N-1 WInv. N+1W n =(χ N -1)WFigura 75. Estrutura <strong>para</strong> caracterizar mismatch em buffers com fator <strong>de</strong> aumento χ. W n indica alargura <strong>de</strong> canal do transistor N.Por fim, como exemplificado no APÊNDICE C, novos mo<strong>de</strong>los <strong>para</strong> <strong>de</strong>terminação da larguramínima do pulso que atravessa um buffer <strong>de</strong>vem ser tentados. O <strong>de</strong>sejável é obter relações fechadasque possam ser usadas <strong>para</strong> a previsão <strong>de</strong>sta.


APÊNDICE A 175APÊNDICE AApresentamos uma síntese das principais regras <strong>de</strong> composição da estratégia E-TSPC. As regras r 1a r 5 , discutidas no capítulo 2, po<strong>de</strong>m ser associadas <strong>para</strong> constituir a regra geral dada abaixo, que émais simples <strong>de</strong> ser empregada.Regra <strong>de</strong> Composição Geral (r G ): Em qualquer data chain <strong>de</strong>ve haver uma das duas configurações:r Ga . ao menos um bloco dinâmico e um latch e um número par <strong>de</strong> blocos (número par <strong>de</strong> inversões)entre eles;r Gb . ao menos dois latches e um número par <strong>de</strong> blocos (número par <strong>de</strong> inversões) entre eles.No data chain, além <strong>de</strong> ocorrer uma das configurações acima, os blocos adjacentes não <strong>de</strong>vem<strong>de</strong>sobe<strong>de</strong>cer às restrições dadas na Tabela A1 (os blocos são adjacentes quando entre eles existemapenas blocos estáticos).Tabela A1. Número <strong>de</strong> blocos que po<strong>de</strong> haver entre as entradas e saídas <strong>de</strong> blocos adjacentes <strong>de</strong>ntro<strong>de</strong> um data chain.entrada pc-entrada não pcentradapc-entrada não pc-entrada entrada<strong>de</strong> latch <strong>de</strong> bloco<strong>de</strong> <strong>de</strong> bloco entrada <strong>de</strong> <strong>de</strong> bloco n- <strong>de</strong> bloco p-PH bloco PH PL bloco PL dinâmico dinâmicoentrada do s.r. n.p. s.r. n.p. s.r. s.r. s.r.data chain 7saída <strong>de</strong> s.r. n.p. n.p. n.p. n.p. n.p. n.p.latchsaída <strong>de</strong> s.r. ímpar ímpar par par par ímparbloco PHsaída <strong>de</strong> s.r. par par ímpar ímpar ímpar parbloco PLsaída <strong>de</strong> s.r. par par ímpar ímpar ímpar n.p.bloco n-dinâmicosaída <strong>de</strong>bloco p-dinâmicos.r. ímpar ímpar par par n.p. ímpars.r.: ligações que são permitidas, a princípio, sem nenhuma restrição;n.p.: ligações não permitidas;par: <strong>de</strong>ve haver um número par <strong>de</strong> blocos;ímpar: <strong>de</strong>ve haver um número ímpar <strong>de</strong> blocos.7 A entrada do data chain é tratada como se fosse a saída <strong>de</strong> um bloco.


APÊNDICE B 177APÊNDICE BApresentamos abaixo os mo<strong>de</strong>los <strong>para</strong> transistores da tecnologia CMOS 0,8µm da ES2/ATMEL eda tecnologia CMOS 0,35µm do IMEC/Bélgica ([Es94] e [Hu97]), usados nas simulações.B.1 Mo<strong>de</strong>los <strong>para</strong> a tecnologia 0,8µm da ES2/ATMELB.1.1 Mo<strong>de</strong>lo level 2 <strong>para</strong> SPICE3d2Mo<strong>de</strong>lo Típico <strong>para</strong> Transistores (0,8).Mo<strong>de</strong>l NT0.7 NMOS (LEVEL=2 TOX=1.50E-08 VTO=0.906 LD=0.075U NSUB=2.35E16+ GAMMA=0.807 UO=554 UEXP=0.195 UCRIT=50K VMAX=68.15K DELTA=3.8 RSH=178.4+ NEFF=50 NFS=3.1 XJ=0.055U CJ=486U MJ=0.43+ CJSW=223P MJSW=0.43 PB=0.675 CGDO=200P CGSO=200P JS=2U).Mo<strong>de</strong>l PT0.7 PMOS(LEVEL=2 TOX=1.50E-08 VTO=-0.92 LD=0.021U NSUB=20E16+ GAMMA=0.62 UO=220 UEXP=0.217 UCRIT=17.6K VMAX=70K DELTA=2.85 RSH=220+ NEFF=1.0 NFS=1.0 XJ=0.5U CJ=600U MJ=0.51+ CJSW=820P MJSW=0.51 PB=0.70 CGDO=200P CGSO=200P JS=20U)Mo<strong>de</strong>lo Slow <strong>para</strong> Transistores.Mo<strong>de</strong>l NS0.7 NMOS (LEVEL=2 TOX=1.65E-08 VTO=1.056 LD=0.075U NSUB=2.35E16+ GAMMA=0.93 UO=530 UEXP=0.195 UCRIT=50K VMAX=68.15K DELTA=3.8 RSH=120+ NEFF=50 NFS=3.1e11 XJ=0.055U CJ=535U MJ=0.43+ CJSW=245P MJSW=0.43 PB=0.675 CGDO=180P CGSO=180P JS=2U).Mo<strong>de</strong>l PS0.7 PMOS(LEVEL=2 TOX=1.65E-08 VTO=-1.07 LD=0.021U NSUB=20E16+ GAMMA=0.67 UO=208 UEXP=0.217 UCRIT=17.6K VMAX=70K DELTA=2.85 RSH=253+ NEFF=1.0 NFS=1.0e11 XJ=0.5U CJ=640U MJ=0.51+ CJSW=900P MJSW=0.51 PB=0.70 CGDO=180P CGSO=180P JS=20U)Mo<strong>de</strong>lo Fast <strong>para</strong> Transistores.Mo<strong>de</strong>l NF0.7 NMOS (LEVEL=2 TOX=1.35E-08 VTO=0.756 LD=0.075U NSUB=2.35E16+ GAMMA=0.68 UO=580 UEXP=0.195 UCRIT=50K VMAX=68.15K DELTA=3.8 RSH=155+ NEFF=50 NFS=3.1 XJ=0.055U CJ=437U MJ=0.43+ CJSW=200P MJSW=0.43 PB=0.675 CGDO=220P CGSO=220P JS=2U).Mo<strong>de</strong>l PF0.7 PMOS (LEVEL=2 TOX=1.35E-08 VTO=-0.77 LD=0.021U NSUB=20E16+ GAMMA=0.56 UO=232 UEXP=0.217 UCRIT=17.6K VMAX=70K DELTA=2.85 RSH=190+ NEFF=1.0 NFS=1.0 XJ=0.5U CJ=440U MJ=0.51+ CJSW=740P MJSW=0.51 PB=0.70 CGDO=220P CGSO=220P JS=20U)B.1.2 Mo<strong>de</strong>lo level 6 <strong>para</strong> HSPICEMo<strong>de</strong>lo Típico <strong>para</strong> Transistores (0,8).Mo<strong>de</strong>l NT08 NMOS (LEVEL = 6.0 UPDATE=1.0 NSUB=1.965e+16 TOX=150.0 BETA=97e-6+ XJ=0.25u RSH=65 MOB=2 F1=372k F2=200m UTRA=563m XL=0.04u LD=0.1u+ XW=0.9u WD=0.45u VTO=815m NSS=0.0 NWE=193.7n UFDS=99.5m VFDS=0.2 FDS=84m+ VB0=1.50 GAMMA=764m LGAMMA=705m VSH=650m NWM=-197m SCM=1.733


178APÊNDICE B+ WIC =2 NFS=5E11 WEX=17 LAMBDA=10.63u NU=1 KU=1.405 ECRIT=87k MBL=555m+ KA=974m MAL=295m CLM=3 KCL=1.08 MCL=4.63 TLEV=1 BEX=-1.5 TCV=-2m+ CAPOP=2.0 ACM=2.0 CJ=503u MJ=0.43 CJSW=109p MJSW=0.43 PB=0.675+ CGDO=200p CGSO=200p JS=2u).Mo<strong>de</strong>l PT08 PMOS (LEVEL=6.0 UPDATE=1.0 NSUB=2.5e+16 TOX=150.0 BETA=30.16e-6+ XJ=0.5u RSH = 80 MOB=2 F1=483k F2=320m UTRA=-197m XL=0.042u LD=0.1u+ XW=0.9u WD=0.45u VTO=-1 NWE=56.1n UFDS=331m VFDS=0.5 FDS=286m+ VB0 =1.5 GAMMA=587m LGAMMA=653m VSH=-116m NWM=-442m SCM=1.01+ WIC=2 NFS=6E11 WEX=14.3 LAMBDA=14u NU=1 KU=9.871 ECRIT=486k MBL=803m+ KA=1.082 MAL=0 CLM=3 KCL=41.91m MCL=6.97 TLEV=1 BEX=-1.0 TCV=1.52m+ CAPOP=2.0 ACM=2.0 CJ=776u MJ=0.51 CJSW=572p MJSW=0.51 PB=0.7+ CGDO=200p CGSO=200p JS=20u)Mo<strong>de</strong>lo Fast <strong>para</strong> Transistores.Mo<strong>de</strong>l NF08 NMOS (LEVEL=6.0 UPDATE=1.0 NSUB=1.965e+16 TOX=135.0 BETA=107e-6+ XJ=0.25u RSH=55 MOB=2 F1=372k F2=200m UTRA=563m XL=-0.08u LD=0.1u+ XW=1.08u WD=0.45u VTO=715m NSS=0.0 NWE=193.7n UFDS=99.5m VFDS=0.2 FDS=84m+ VB0=1.50 GAMMA=714m LGAMMA=655m VSH=650m NWM=-197m SCM=1.733+ WIC=2 NFS=5E11 WEX=17 LAMBDA=10.63u NU=1 KU=1.405 ECRIT=87k MBL=555m+ KA=974m MAL=295m CLM=3 KCL=1.08 MCL=4.63 TLEV=1 BEX=-1.5 TCV=-2m+ CAPOP=2.0 ACM=2.0 CJ=453u MJ=0.43 CJSW=90p MJSW=0.43 PB=0.675+ CGDO=220p CGSO=220p JS=2u).Mo<strong>de</strong>l PF08 PMOS (LEVEL=6.0 UPDATE=1.0 NSUB=2.5e+16 TOX=135.0 BETA=33.4e-6+ XJ=0.5u RSH=70 MOB=2 F1=483k F2=320m UTRA=-197m XL=-0.078u LD=0.1u+ XW=1.08u WD=0.45u VTO=-0.9 NWE=56.1n UFDS=331m VFDS=0.5 FDS=286m+ VB0=1.5 GAMMA=537m LGAMMA=603m VSH=-116m NWM=-442m SCM=1.01+ WIC=2 NFS=6E11 WEX=14.3 LAMBDA=14u NU=1 KU=9.871 ECRIT=486k MBL=803m+ KA=1.082 MAL=0 CLM=3 KCL=41.91m MCL=6.97 TLEV=1 BEX=-1.0 TCV=1.52m+ CAPOP=2.0 ACM=2.0 CJ=706u MJ=0.51 CJSW=522p MJSW=0.51 PB=0.7+ CGDO=220p CGSO=220p JS=20u)Mo<strong>de</strong>lo Slow <strong>para</strong> Transistores.Mo<strong>de</strong>l NS08 NMOS (LEVEL=6.0 UPDATE=1.0 NSUB=1.965e+16 TOX=165.0 BETA=88e-6+ XJ=0.25u RSH=75 MOB=2 F1=372k F2=200m UTRA=563m XL=0.16u LD=0.1u+ XW=0.72u WD=0.45u VTO=915m NSS=0.0 NWE=193.7n UFDS=99.5m VFDS=0.2FDS=84m+ VB0=1.50 GAMMA=814m LGAMMA=755m VSH=650m NWM=-197m SCM=1.733+ WIC=2 NFS=5E11 WEX=17 LAMBDA=10.63u NU=1 KU=1.405 ECRIT=87k MBL=555m+ KA=974m MAL=295m CLM=3 KCL=1.08 MCL=4.63 TLEV=1 BEX=-1.5 TCV=-2m+ CAPOP=2.0 ACM=2.0 CJ=553u MJ=0.43 CJSW=130p MJSW=0.43 PB=0.675+ CGDO=180p CGSO=180p JS=2u).Mo<strong>de</strong>l PS08 PMOS (LEVEL=6.0 UPDATE=1.0 NSUB=2.5e+16 TOX=165.0 BETA=27.4e-6+ XJ=0.5u RSH=90 MOB=2 F1=483k F2=320m UTRA=-197m XL=0.162u LD=0.1u+ XW=0.72u WD=0.45u VTO=-1.1 NWE=56.1n UFDS=331m VFDS=0.5 FDS=286m+ VB0=1.5 GAMMA=637m LGAMMA=703m VSH=-116m NWM=-442m SCM=1.01


APÊNDICE B 179+ WIC=2 NFS=6E11 WEX=14.3 LAMBDA=14u NU=1 KU=9.871 ECRIT=486k MBL=803m+ KA=1.082 MAL=0 CLM=3 KCL=41.91m MCL=6.97 TLEV=1 BEX=-1.0 TCV=1.52m+ CAPOP=2.0 ACM=2.0 CJ=846u MJ=0.51 CJSW=622p MJSW=0.51 PB=0.7+ CGDO=180p CGSO=180p JS=20u)B.2 Mo<strong>de</strong>los <strong>para</strong> a tecnologia 0,35µm do IMEC/BélgicaB.2.1 Mo<strong>de</strong>lo level 3 <strong>para</strong> HSPICEMo<strong>de</strong>lo Slow <strong>para</strong> Transistores (0,35).Mo<strong>de</strong>l NS035 NMOS (level=3 VT0=0.733 Kp=218.2u Kappa=0.16 tox=7.5n Vmax=132.16K+ Ld=0.01u Ldif=0.15u Hdfi=0.4u ACM=2 Xj=0.1u Wd=-0.01u Theta=0.24 U0=426.98+ Delta=-0.5 ETA=0 Gamma=0.629 NSUB=2.9e17 PHI=0.905 TPG=+1 JS=0.34e-6+ JSW=3.3e-13 N=1.05 CJ=102E-5 CJSW=4.1E-10 MJ=0.364 MJSW=0.255 PB=0.776+ PHP=0.757 RSH=2.0 RDC=0 RSC=0 RD=1990 RS=1990)*+ RDC=2.6 RSC=2.6 RD=1990 RS=1990).Mo<strong>de</strong>l PS035 PMOS (level=3 VT0=-0.726 Kp=46.3u Kappa=2 tox=7.5n Vmax=104.47K+ Ld=0.01u Ldif=0.15u Hdif=0.4u ACM=2 Xj=0.1u Wd=-0.06u Theta=0.199 U0=100+ Delta=-0.56 ETA=0 Gamma=0.618 NSUB=2.8e17 PHI=0.895 TPG=+1 JS=0.29e-6+ JSW=2.8e-13 N=1.05 CJ=111E-5 CJSW=3.6E-10 MJ=0.453 MJSW=0.267 PB=0.894+ PHP=0.616 RSH=1.8 RDC=0 RSC=0. RD=4960 RS=4960)*+ RDC=2.4 RSC=2.4 RD=4960 RS=4960)


APÊNDICE C 181APÊNDICE CTentaremos aqui um mo<strong>de</strong>lamento alternativo <strong>para</strong> <strong>de</strong>terminar a largura mínima do pulso quepropaga por um tapered buffer. Vamos consi<strong>de</strong>rar, <strong>para</strong> o problema, que os inversores são sistemaslineares invariantes, com uma entrada que é V GS (tensão gate-fonte) e uma saída (tensão dreno-fonte),sendo a fonte, a do transistor N. Po<strong>de</strong>remos então escrever a função <strong>de</strong> transferência do buffer ([Or85],[De79]):i=N∏Hs () = H()si=1ion<strong>de</strong> H(s) é a função <strong>de</strong> transferência do buffer;N é o número <strong>de</strong> inversores do buffer;H i (s) é a função <strong>de</strong> transferência do i-ésimo inversor do buffer.Chamaremos a máxima taxa <strong>de</strong> transmissão <strong>de</strong> dados possível no buffer, em bit/s, <strong>de</strong> f m . Vamossupor que, nessa freqüência máxima, o ganho da função <strong>de</strong> transferência seja K A , ou sejai=N∏H( ω ) = H ( ω ) = Kc i ci=1Ae f mωc= 2 2 πon<strong>de</strong> ω c será chamada <strong>de</strong> freqüência angular <strong>de</strong> corte do buffer;K A é uma constante on<strong>de</strong> 0< KA < H( 0) .O mo<strong>de</strong>lo aceitável mais simples <strong>para</strong> o inversor é dado na Figura C1. Neste mo<strong>de</strong>lo há um circuitoRC na saída que será responsável pelo único pólo da função <strong>de</strong> transferência. Para o i-ésimo inversorserá válido então1Hi()=−s GAisR CEiLi+ 1on<strong>de</strong> G Ai é o ganho DC do inversor, G Ai ≥1;R Ei é a resistência equivalente do i-ésimo inversor (Figura C1);C Li é a capacitância <strong>de</strong> carga do i-ésimo inversor (Figura C1).R EiV GSG Ai V GSC LiV DSFigura C1. Mo<strong>de</strong>lo <strong>de</strong> primeira or<strong>de</strong>m <strong>para</strong> um inversor.Por fim, a função <strong>de</strong> transferência do buffer serái=N⎛1Hs ()= ∏ ⎜−GAi⎝ sR Ci=1EiLi⎞⎟+ 1⎠


182APÊNDICE Ce, portanto, a freqüência angular <strong>de</strong> corte ω C será aquela que satisfaz a relaçãoi=N∏i = 1⎛⎜⎝1R Cω c Ei Li⎞ KA⎟= i=N ; observe que+ 1⎠∏ ( GAi)i=1i=N∏i=1As seguintes simplificações serão ainda aplicadas:KA< 1.( G )• os ganhos G Ai s iguais <strong>para</strong> todos os inversores e com valor <strong>de</strong> G A . Observemos que o ganho doinversor, quando os dois transistores estão na saturação, <strong>de</strong>pen<strong>de</strong> da relação entre g m ,transcondutância do transistor, e g d , a condutância <strong>de</strong> dreno. Po<strong>de</strong> ser mostrado que esta relação éin<strong>de</strong>pen<strong>de</strong>nte da largura do canal do transistor, ao menos em uma análise <strong>de</strong> primeira or<strong>de</strong>m[Gr86]. De forma semelhante, supomos ser G Ai ;tI• REiCLi= 0 <strong>para</strong> todo 1≤i


APÊNDICE C 183cujas inclinações são inversamente proporcionais as dimensões do último inversor do buffer. Por (C1),fazendo C L ten<strong>de</strong>r a infinito, <strong>de</strong>terminamos que G A =1 é necessário <strong>para</strong> tal.Por outro lado, quando C L =0 e adotando G A =1, po<strong>de</strong>mos escrever∂tm∂N⎡⎢⎢⎢⎛⎢t⎜⎣⎢⎝ tI 0m⎤⎥1 ⎥2⎞⎥⎟ + 1⎥⎠ ⎦⎥N −1K≈ = KG2A2 NA2Ao que implica tm≈2KtI 0⎛ 2 ⎞⎜ − ⎟⎝ N − 1⎠A.− 1A <strong>de</strong>rivada <strong>de</strong> t m em relação a N po<strong>de</strong> ser calculada a partir <strong>de</strong>ssa relação. Po<strong>de</strong>mos verificar queC L =0ten<strong>de</strong> a infinito quando N cresce. Os gráficos largura mínima <strong>de</strong> um pulso que passa pelotapered buffer em função do número <strong>de</strong> inversores, que são apresentados no capítulo 3, indicam queisso não está correto. As <strong>de</strong>rivadas <strong>de</strong>vem sim ten<strong>de</strong>r a zero.Essas consi<strong>de</strong>rações indicam que a expressão (C1) não é a<strong>de</strong>quada <strong>para</strong> o mo<strong>de</strong>lamento.Po<strong>de</strong>mos escolher outras funções <strong>de</strong> transferência <strong>para</strong> o inversor e examinar os resultados. Em[Pa97], <strong>para</strong> <strong>de</strong>terminação do atraso do inversor, foi usada uma função <strong>de</strong> transferência cuja respostaao impulso é um sinal trapezoidal.Este estudo, no entanto, será feito em futuros trabalhos.


APÊNDICE D 185APÊNDICE DA com<strong>para</strong>ção entre os resultados <strong>de</strong> simulação e as relações semi-empíricas <strong>para</strong> a tecnologiaCMOS 0,8µm da AMS, [Am95], é apresentada aqui.D.1 Condições <strong>para</strong> a simulaçãoAs condições <strong>para</strong> as simulações executadas com a tecnologia da AMS são semelhantes às usadasnos exemplos do capítulo 3. Elas são resumidas na tabela D1.Tabela D1. Condições <strong>para</strong> obtenção dos resultados <strong>de</strong> simulação <strong>para</strong> a tecnologia CMOS 0,8µm daAMS.Condições <strong>de</strong> simulaçãosimuladorHSPICEmo<strong>de</strong>lo usado level 47, típico (BSIM3, versão 2)alimentação do buffer 5,0Vsinal <strong>de</strong> entrada do buffer “010001111011100101101” e o seu complemento(“101110000100011010010”)tempos <strong>de</strong> subida e <strong>de</strong>scida iguais a 20% da largura <strong>de</strong> um pulso mínimocritério <strong>de</strong> análise da saída todas os pulsos da entrada chegam a saída e atingem níveismínimos adotadosníveis mínimos da saídaV HM =4,0VV LM =1,0Vcomprimento <strong>de</strong> canal dosL=0,8µmtransistoreslargura <strong>de</strong> canal dos trans.do primeiro inversortrans. P W p1 =8µmtrans. N W n1 =5µmconfiguração do transistorem pente com dois ramosdimensões <strong>de</strong> drenoempregadasárea=1,3Wµm 2perímetro= W+5,2µmDadas estas condições, as constantes necessárias <strong>para</strong> a expressão (16), capítulo 3, são <strong>de</strong>terminadase seus valores são indicados abaixo:K 1 =3,45ns/pF, K 2 =46ps e K 4 =0,62.Na Figura D1 são mostrados os resultados simulados e a aproximação das equações semi-empíricas.Para fator <strong>de</strong> ganho χ=3,0, a máxima taxa <strong>de</strong> operação é <strong>de</strong> 2,05Gbit/s; <strong>para</strong> χ=1,8, a máxima taxa é<strong>de</strong> 2,53 Gbit/s que também é a máxima possível com o buffer (seis inversores). O aumento entre um eoutro caso é <strong>de</strong> 23%.


186APÊNDICE Dm ax. taxa(G b it/s )32.52C L =1pF0,8µ m C M O SA M Ssim ulação2 inv.3 inv.4 inv.5 inv.6 inv.7 inv.1.510.501 1.5 2 2.5 3 3.5 4 4.5 5fator <strong>de</strong> aum ento do tapered bufferFigura D1. Com<strong>para</strong>ção entre os pontos obtidos por simulação (o buffer com dois inversores éapresentado com ‘x’, três com ‘+’, quatro com ‘o’, cinco com ‘*’, seis com 'x', sete com 'o') eequações dadas por (16) (linhas contínuas). A tecnologia é CMOS 0,8µm da AMS e a capacitância <strong>de</strong>carga <strong>de</strong> 1pF.D.2 Mo<strong>de</strong>los <strong>para</strong> a tecnologia 0,8µm da AMSAbaixo estão <strong>de</strong>scritos os parâmetros do mo<strong>de</strong>lo level 47 <strong>para</strong> o HSPICE, BSIM3, versão 2(Berkeley Short-Channel IGFET Mo<strong>de</strong>l), usado. Lembramos que este mo<strong>de</strong>lo é o melhor entre osempregados neste trabalho.Mo<strong>de</strong>lo Típico <strong>para</strong> Transistores (0,8)..MODEL nmos NMOS (LEVEL=47* ----------------------------------------------------------------------* format : HSPICE* mo<strong>de</strong>l : MOS BSIM3v2* extracted : CYB J010JR00; 1995-12; ese (-487)* doc# : 9933006 REV_A* created : 1995-12-19* *** Flags ***+ SUBTHMOD=2.000e+00 SATMOD =2.000e+00 BULKMOD =1.000e+00* *** Threshold voltage related mo<strong>de</strong>l <strong>para</strong>meters ***+ K3 =2.849e+00 K3B =1.503e+00 NPEAK =1.021e+17 VTH0 =8.089e-01+ VOFF =-5.599e-02 DVT0 =4.668e-01 DVT1 =2.826e-01+ DVT2 =-3.650e-01 KETA =-7.230e-03 PSCBE1 =1.894e+08 PSCBE2 =9.574e-07* *** Mobility related mo<strong>de</strong>l <strong>para</strong>meters ***+ UA =4.621e-10 UB =1.000e-22 UC =7.399e-03 U0 =4.789e+02* *** Subthreshold related <strong>para</strong>meters ***+ DSUB =1.000e+00 ETA0 =1.000e-02 ETAB =-9.720e-03+ NFACTOR =9.000e-01 VGHIGH =1.500e-01 VGLOW =-1.200e-01* *** Saturation related <strong>para</strong>meters ***+ ETA =3.000e-01 PCLM =1.236e+00+ PDIBL1 =1.012e-02 PDIBL2 =5.930e-04 DROUT =6.838e-02+ A0 =6.471e-01 A1 =0.000e+00 A2 =1.000e+00+ PVAG =1.964e-01 VSAT =8.981e+06


APÊNDICE D 187* *** Geometry modulation related <strong>para</strong>meters ***+ W0 =1.069e-12* *** Temperature effect <strong>para</strong>meters ***+ AT =3.300e04 UTE =-1.763 KT1 =-0.385 KT2 =0.013 KT1L =0.000+ UA1 =1.460e-09 UB1 =-7.610e-18 UC1 =-0.056* *** Overlap capacitance related and dynamic mo<strong>de</strong>l <strong>para</strong>meters ***+ CGDO =0.350e-09 CGSO =0.350e-09 CGBO =0.150e-09+ XPART =1.000e+00* *** Parasitic resistance and capacitance related mo<strong>de</strong>l <strong>para</strong>meters ***+ RDS0 =0.000e+00 RDSW =9.178e+02+ CDSC =2.065e-05 CDSCB =0.000e+00 CIT =0.000e+00* *** Process and <strong>para</strong>meters extraction related mo<strong>de</strong>l <strong>para</strong>meters ***+ TOX =1.557e-08 NSUB =72.74e+15 NLX =0.000e+00* *** Noise effect related mo<strong>de</strong>l <strong>para</strong>meters ***+ AF =1.451e-00 KF =0.233e-25 NLEV =0* *** Common extrinsic mo<strong>de</strong>l <strong>para</strong>meters ***+ ACM =2 RD =0.000e+00 RS =0.000e+00 RSH =2.400e+01+ RDC =0.000e+00 RSC =0.000e+00 LD =1.137e-07 WD =5.290e-07+ LDIF =0.000e+00 HDIF =0.000e+00 WMLT =1.000e+00+ LMLT =1.000e+00 XJ =4.000e-07+ JS =0.010e-03 JSW =0.000e+00 IS =0.000e+00+ N =1.000e+00 NDS =1.000e+12 VNDS =-1.00e+00+ CBD =0.000e+00 CBS =0.000e+00 CJ =0.29e-03+ CJSW =0.230e-09 FC =0.000e+00+ MJ =0.460e-00 MJSW =0.330e-00 TT =0.000e+00 PB =0.88 PHP =0.88).MODEL pmos PMOS (LEVEL=47* ----------------------------------------------------------------------* format : HSPICE* mo<strong>de</strong>l : MOS BSIM3v2* extracted : CYB J010JR00; 1995-12; ese (-487)* doc# : 9933006 REV_A* created : 1995-12-19* NOTE: Only for use in AMS-approved simulators.* *** Flags ***+ SUBTHMOD=2.000e+00 SATMOD =2.000e+00 BULKMOD =2.000e+00* *** Threshold voltage related mo<strong>de</strong>l <strong>para</strong>meters ***+ K3 =4.504e+01 K3B =-1.998e+01 NPEAK =2.933e+16 VTH0 =-7.736e-01+ VOFF =-7.207e-02 DVT0 =9.784e+00 DVT1 =7.501e-01+ DVT2 =1.102e-01 KETA =-5.641e-03 PSCBE1 =6.321e+09 PSCBE2 =1.081e-08* *** Mobility related mo<strong>de</strong>l <strong>para</strong>meters ***+ UA =2.220e-09 UB =1.000e-23 UC =-2.055e-03 U0 =2.170e+02* *** Subthreshold related <strong>para</strong>meters ***+ DSUB =2.095e-01 ETA0 =6.638e-02 ETAB =-3.357e-03+ NFACTOR =1.864e+00 VGHIGH =1.500e-01 VGLOW =-1.200e-01* *** Saturation related <strong>para</strong>meters ***+ ETA =3.000e-01 PCLM =2.439e+00+ PDIBL1 =4.354e+00 PDIBL2 =6.428e-03 DROUT =9.730e-01+ A0 =4.858e+00 A1 =8.543e-01 A2 =1.648e-02+ PVAG =-2.390e-01 VSAT =4.204e+06


188APÊNDICE D* *** Geometry modulation related <strong>para</strong>meters ***+ W0 =1.553e-05* *** Temperature effect <strong>para</strong>meters ***+ AT =3.300e+04 UTE =-1.040 KT1 =-0.482 KT2 =0.013 KT1L =0.000+ UA1 =6.990e-09 UB1 =-7.610e-18 UC1 =-0.056* *** Overlap capacitance related and dynamic mo<strong>de</strong>l <strong>para</strong>meters ***+ CGDO =0.350e-09 CGSO =0.350e-09 CGBO =0.150e-09 XPART =1.000e+00* *** Parasitic resistance and capacitance related mo<strong>de</strong>l <strong>para</strong>meters ***+ RDS0 =0.000e+00 RDSW =2.119e+03+ CDSC =1.102e-02 CDSCB =1.000e-04 CIT =0.000e+00* *** Process and <strong>para</strong>meters extraction related mo<strong>de</strong>l <strong>para</strong>meters ***+ TOX =1.557e-08 NSUB =2.764e+16+ NLX =4.846e-07* *** Noise effect related mo<strong>de</strong>l <strong>para</strong>meters ***+ AF =1.279 KF =6.314e-29 NLEV =0* *** Common extrinsic mo<strong>de</strong>l <strong>para</strong>meters ***+ ACM =2 RD =0.000e+00 RS =0.000e+00 RSH =4.200e+01+ RDC =0.000e+00 RSC =0.000e+00 LD =1.352e-08 WD =2.348e-07+ LDIF =0.000e+00 HDIF =0.000e+00 WMLT =1.000e+00+ LMLT =1.000e+00 XJ =4.000e-07+ JS =0.040e-03 JSW =0.000e+00 IS =0.000e+00+ N =1.000e+00 NDS =1.000e+12 VNDS =-1.00e+00+ CBD =0.000e+00 CBS =0.000e+00 CJ =0.490e-03+ CJSW =0.210e-09 FC =0.000e+00+ MJ =0.470e+00 MJSW =0.290e+00 TT =0.000e+00+ PB =0.800e+00 PHP =0.800e+00)


Referências Bibliográficas 189Referências Bibliográficas[Aa93] AASERUD, O.; DANIELSEN, H. CMOS driver for 50Ω Load. Electronics Letters, v.29,n.10, p.876-878, 1993.[Am95] AUSTRIA MIKRO SYSTEME INTERNATIONAL AG (AMS). 0.8µm CMOS <strong>de</strong>signrules. revision A, Aústria, 1995.[Af90] AFGHAHI, M.; SVENSSON, C. A unified single-phase clocking schema for V<strong>LSI</strong> systems.IEEE J. Solid-State Circuits, v.25, n.1, p.225-235, 1990.[Af92] AFGHAHI, M.; SVENSSON, C. Performance of synchronous and asynchronous schemes forV<strong>LSI</strong> systems. IEEE Trans. Comput., v.41, n.7, p.858-872, 1992.[An88] ANTOGNETTI, P.; MASSOBRIO, G., ed. Semiconductor <strong>de</strong>vice mo<strong>de</strong>ling with SPICE.New York, McGraw-Hill, 1988.[Bl88] BLOOD JR., W.R. MECL system <strong>de</strong>sign handbook. 4.ed., Motorola Inc., 1988.[Bo98] BONDYOPADHYAY, P.K. Moore's Law Governs the silicon revolution. Proceedings of theIEEE, v.86, n.1, p.78-81, 1998.[Br98] BREWER, J.E. A new and improved roadmap. IEEE Circuits & Devices, v.14, n.2, p.13-18,1988.[Ch88] CHAPPELL, B.A. et al. Fast CMOS ECL receivers with 100-mV worst-case sensitivity. IEEEJ. Solid-State Circuits, v.23, n.1, p.59-67, 1988.[Ch95] CHERKAUER, B.S.; FRIEDMAN, E.G. A Unified Design Methodology for CMOS TaperedBuffers. IEEE Trans. Very Large Scale Integration (V<strong>LSI</strong>) Systems, v.3, n.1, p.99-111,1995.[Cha95] CHANDRAKASAN, A.P.; BRODERSEN, R.W. Low power digital CMOS <strong>de</strong>sign. Boston,Kluwer Aca<strong>de</strong>mic, 1995.[Ch96] CHANG, B. et al. A 1.2 GHz CMOS dual-modulus prescaler using new dynamic D-type flipflops.IEEE J. Solid-State Circuits, v.31, n.5, p.749-752, 1996.[Co77] COSTA NETO, P.L.O. Estatística. São Paulo, Edgard Blücher, 1977.[Co88] CONG, H.-I. et al. Multigigahertz CMOS dual-modulus Prescaler IC. IEEE J. Solid-StateCircuits, v.23, n.5, p.1189-1194, 1988.[Cr96] CRANINCKX, J.; STEYAERT, M.S.J. A 1.75-GHz/3-V dual-modulus divi<strong>de</strong>-by-128/129prescaler in 0.7-µm CMOS. IEEE J. Solid-State Circuits, v.31, n.7, p.890-897, 1996.[De79] DESOER, C.A.; KUH, E.S. Teoria básica <strong>de</strong> circuitos. Rio <strong>de</strong> Janeiro, Guanabara Dois,1979.[Do92] DOBBERPUHL, D. et al. A 200-MHz 64-b dual-issue CMOS microprocessor. IEEE J.


190Referências BibliográficasSolid-State Circuits, v.27, n.11, p.1555-1567, 1992.[Es94] EUROPEAN SILICON STRUCTURES, MANUFACTURING TECHNOLOGY DIV.ECPD07 Dual layer Metal 0.7 micron layout rules. rev. B, France, 30th Oct. 1994.[Fo95] FOROUDI, N.; KWASNIEWSKI, T.A. CMOS high-speed dual-modulus frequency divi<strong>de</strong>rfor RF frequency synthesis. IEEE J. Solid-State Circuits, v.30, n.2, p.93-100, 1995.[Fr95] FRIEDMAN, E.G., ed. Clock Distribution Networks in V<strong>LSI</strong> Circuits and Systems: aselected reprint volume. Piscataway, IEEE, 1995.[Ga96] GAYLES, E. Building high speed, energy efficient CMOS circuits using variations incircuit techniques. EUA, 1996. Ph.D. Thesis - Department of Computer Science andEngineering, The Pennsylvania State University.[Go83] GONÇALVES, N.F.; DE MAN, H.J. NORA: A racefree dynamic CMOS technique forpipelined logic structures. IEEE J. Solid-State Circuits, v.18, n.3, p.261-266, 1983.[Go84] GONÇALVES, N.F. NORA: a racefree CMOS technique for register transfer systems.Leuven, Bélgica, 1984. Ph.D. Thesis - Katholieke Universiteit Leuven.[Gr86] GREGORIAN, R.; TEMES, G.C. Analog MOS integrated circuits for signal processing.New York, John Wiley & Sons, 1986.[Gr98] GRONOWSKI, P.E. et al. High-performance microprocessor Design. IEEE J. Solid-StateCircuits, v.33, n.5, p.676-686, 1998.[Gri98] GRIMALD, M.; NAVARRO, J.; VAN NOIJE, W. Otimização em freqüência <strong>de</strong> circuitosCMOS sincronizados por bordas <strong>de</strong> sinal <strong>de</strong> clock. São Paulo, <strong>LSI</strong>, Escola Politécnicada <strong>USP</strong>, 1996. (Relatório interno)[Gu96] GU, R.X. et al. High-performance digital V<strong>LSI</strong> circuit <strong>de</strong>sign. Boston, Kluwer Aca<strong>de</strong>mic,1996.[Ha96] HANSON, D.A. et al. Analysis of mixed-signal manufacturability with statistical technologyCAD (TCAD). IEEE Trans. Semicond. Manufact., v.9, n.4, p.478-488, 1996.[He87] HEDENSTIERNA, N.; JEPPSON, K. CMOS circuit speed and buffer optimization. IEEETrans. Computer-Ai<strong>de</strong>d Design, v.6, n.2, p.270-281, 1987.[Hu93] HUANG, Q. Speed optimization of edge-triggered nine-transistor D-flip-flop for gigahertzsingle-phase clocks. In: INTERNATIONAL SYMPOSIUM ON CIRCUITS ANDSYSTEMS, Chicago, 1993. Proceedings. Chicago, IEEE, 1993. p.2118-2121.[Hu96] HUANG, Q. et al. Speed optimazation of edge-triggered CMOS circuits for gigahertz singlephaseclocks. IEEE J. Solid-State Circuits, v.31, n.3, p.456-465, 1996.[Hu97] HUYLENBROECK, S.V.; LIETAER, N. Electrical Parameters CD035P and CA035P:prototyping C035. Leuven, Bégica, IMEC, 12th Mar. 1997.


Referências Bibliográficas 191[Is92] ISHIBE, M. et al. High-speed CMOS I/O buffer circuits. IEEE J. Solid-State Circuits, v.27,n.4, p.671-673, 1992.[Jo93] JOHNSON, H.W.; GRAHAM, M. High-speed digital <strong>de</strong>sign: a handbook of black magic.Englewood Cliffs, Prentice-Hall, 1993.[Ki93] KIM, O. et al. Settling time reduction technique for high speed DACs. Electronics Letters,v.29, n.25, p.2191-2192, 1993.[Ko91] KONG, D.T. 2.488 Gb/s SONET multiplexer/<strong>de</strong>multiplexer with frame <strong>de</strong>tection capability.IEEE J. Selected Areas in Comunications, v.9, n.5, p.726-731, 1991.[Kr82] KRAMBECK, R.H. et al. High-speed compact circuits with CMOS. IEEE J. Solid-StateCircuits, v.17, n.3, p.614-619, 1982.[Ku86] KUMAMOTO, T. et al. An 8-bit high-speed CMOS A/D converter. IEEE J. Solid-StateCircuits, v.21, n.6, p.976-982, 1986.[Ku96] KURISU, M. et al. 2.8-Gb/s 176-mW byte-interleaved and 3.0-Gb/s 118mW bit-interleaved8:1 multiplexers with a 0.15-µm CMOS technology. IEEE J. Solid-State Circuits, v.31,n.12, p.2024-2029, 1996.[La86] LAKSHMIKUMAR, K.R. et al. Characterization and mo<strong>de</strong>ling of mismatch in MOStransistors for precision analog <strong>de</strong>sign. IEEE J. Solid-State Circuits, v.21, n.6, p.1057-1066, 1986.[La88] LAI, F.S. A generalized Algorithm for CMOS circuit <strong>de</strong>lay, power and area optimization.Solid-State Electronics, Pergamon Press, v.31, n.11, p.1619-1627, 1988.[La94] LARSSON, P; SVENSSON, C. Impact of clock slope on true single phase clocked (TSPC)CMOS circuits. IEEE J. Solid-State Circuits, v.29, n.6, p.723-726, 1994.[La95] LARSSON, P. Skew safety and logic flexibility in a true single phase clocked system. In:INTERNATIONAL SYMPOSIUM ON CIRCUITS AND SYSTEMS, Seattle, 1995.Proceedings. IEEE Circuits and Systems Society, 1995. p.941-944.[La96] LARSSON, P. High-Speed architecture for a programmable frequency divi<strong>de</strong>r and a dualmodulusprescaler. IEEE J. Solid-State Circuits, v.31, n.5, p.744-748, 1996.[Le97] LEE, S.-J. et al. A fully integrated low-noise 1-GHz frequency synthesizer <strong>de</strong>sign for mobilecommunication application. IEEE J. Solid-State Circuits, v.32, n.5, p.760-765, 1997.[Li75] LIN, H.C.; LINHOLM, L.W. An optimized output stage for MOS integrated circuits. IEEE J.Solid-State Circuits, v.10, n.2, p.106-109, 1975.[Li98] LIN, J. Chip-package co<strong>de</strong>sign for high-frequency circuits and systems. IEEE Micro, v.18,n.4, p.24-32, 1998.[Ma96] MACII, E.; PONCINO, M. Power consumption of static and dynamic CMOS circuits: a


192Referências Bibliográficascom<strong>para</strong>tive study. In: INTERNATIONAL CONFERENCE ON ASIC, 2., 1996. IEEE.p.425-427.[Me80] MEAD, C.; CONWAY, L. Introduction to V<strong>LSI</strong> systems. 2.ed. Reading, Addison-Wesley,1980.[Me95a] META-SOFTWARE, INC. Analysis and Methods: HSPICE user's manual. Campbell,1995.[Me95b] META-SOFTWARE, INC. Elements and Mo<strong>de</strong>ls: HSPICE user's manual. Campbell,1995.[Me98] MELLIAR-SMITH, C.M. et al. The transistor: an invention becomes a big business.Proceedings of the IEEE, v.86, n.1, p.86-110, 1998.[Mo65] MOORE, G.E. Cramming more components onto integrated circuits. Electronics, v.38, n.8,p.114-117, 1965.[Mu86] MULLER, R.S.; KAMINS, T.I. Device electronics for integrated circuits, 2.ed. New York,John Wiley & Sons, 1986.[Na95] NAVARRO, J. et al. A high speed CMOS ECL-compatible input circuit. In: CONGRESS OFTHE BRAZILIAN MICROELECTRONICS SOCIETY, 10.; IBERO AMERICANMICROELECTRONICS CONFERENCE, 1., Canela, 1995. Proceedings, Porto Alegre,UFRGS/SBMICRO, 1995. v.1, p.197-204.[Na96] NAVARRO, J. et al. Circuito "buffer"-conversor CMOS/ECL In: SIMPÓSIO BRASILEIRODE CONCEPÇÃO DE CIRCUITOS INTEGRADOS, 9., Recife, 1996. Anais. Recife,SBC/SBMICRO/ UFPE, 1996. p.247-258.[Na97a] NAVARRO, J. et al. A 1.4Gbit/s CMOS driver for 50Ω ECL systems. In: GREAT LAKESSYMPOSIUM ON V<strong>LSI</strong>, 7., Urbana-Champaign, 1997. Proceedings. Los Alamitos, IEEEComputer Society, 1997. p.14-18.[Na97b] NAVARRO, J.; VAN NOIJE, W. E-TSPC: Exten<strong>de</strong>d True Single-Phase-Clock CMOS circuittechnique. In: IFIP TC10 WG10.5 INTERNATIONAL CONFERENCE ON V<strong>LSI</strong>.Gramado, 1997 V<strong>LSI</strong>: Integrated Systems on Silicon. London, Chapman & Hall, 1997.p.165-176.[Na97c] NAVARRO, J.; VAN NOIJE, W. E-TSPC: Exten<strong>de</strong>d True Single-Phase-Clock CMOS circuittechnique for high speed applications. SBMICRO J. Solid-State Devices and Circuits,v.5, n.2, p.21-26, 1997.[Na98a] NAVARRO, J.; VAN NOIJE, W. CMOS tapered buffer <strong>de</strong>sign for small width clock/datasignal propagation. In: GREAT LAKES SYMPOSIUM ON V<strong>LSI</strong>, 8., Lafayette, 1998.Proceedings. Los Alamitos, IEEE Computer Society, 1998. p.89-94.


Referências Bibliográficas 193[Na98b] NAVARRO, J.; VAN NOIJE, W. Design of an 8:1 MUX at 1.7Gbit/s in 0.8µm CMOStechnology. In: GREAT LAKES SYMPOSIUM ON V<strong>LSI</strong>, 8., Lafayette, 1998.Proceedings. Los Alamitos, IEEE Computer Society, 1998. p.103-107.[Na99] NAVARRO, J.; VAN NOIJE, W. A 1.6GHz dual modulus prescaler using the Exten<strong>de</strong>d TrueSingle-Phase-Clock CMOS circuit technique (E-TSPC). IEEE J. Solid-State Circuits,v.34, n.1, 1999. /No prelo/[No98] VAN NOIJE, W.; NAVARRO, J. SDHGCMOS: Implementation of CMOS circuits forSDH/SONET systems applications with GigaBits rates. In: WORKSHOP OFINTERNATIONAL EVALUATION OF THE PROTEM-CC PROGRAM, BeloHorizonte, 1998, Proceedings. Brasília, CNPq, 1998. p.118-137.[Oe93] OEHM, J.; SCHUMACHER, K. Quality assurance and upgra<strong>de</strong> of analog characteristics byfast mismatch analysis option in network analysis environment. IEEE J. Solid-StateCircuits, v.28, n.7, p.865-871, 1993.[Oh97] OHTOMO, Y. et al. A 40Gb/s 8x8 ATM switch <strong>LSI</strong> using 0.25um CMOS/SIMOX. In:INTERNATIONAL SOLID-STATE CIRCUITS CONFERENCE, 40., Sao Francisco,1997. ISSCC Digest of Technical Papers. IEEE Solid-State Circuits Council, 1997.p.154-155.[Or85] ORSINI, L.Q. Introdução aos sistemas dinâmicos. Rio <strong>de</strong> Janeiro, Guanabara Dois, 1985.[Ot98] OTSUJI, T. et al. An 80-Gbit/s multiplexer IC using InAlAs/InGaAs/Inp HEMT's. IEEE J.Solid-State Circuits, v.33, n.9, p.1321-1327, 1998.[Pa91] PAPOULIS, A. Probability, random variables, and stochastic process, 3.ed. New York,McGraw-Hill, 1991.[Pa97] PARK, H.-J.; SOMA, M. Analytical mo<strong>de</strong>l for switching transitions of submicron CMOSlogics. IEEE J. Solid-State Circuits, v.32, n.6, p.880-889, 1997.[Pe89] PELGROM, M.J.M. et al. Matching Properties of MOS transistors. IEEE J. Solid-StateCircuits, v.24, n.5, p.1433-1440, 1989.[Po94] POWER, J.A. et al. Relating statistical MOSFET mo<strong>de</strong>l <strong>para</strong>meter variabilities to ICmanufacturing process fluctuations enabling realistic worst case <strong>de</strong>sign. IEEE Trans.Semicond. Manufact., v.7, n.3, p.306-318, 1994.[Ra96] RABAEY, J.M. Digital Integrated Circuits: a <strong>de</strong>sign perspective. Upper Saddle RiverPrentice Hall, 1996. (Electronics and V<strong>LSI</strong> series)[Ro95a] ROMÃO, F.L.; NAVARRO, J.; SILVEIRA, R.; VAN NOIJE, W. Projeto do circuitoDEMUX 8:1 com byte align no padrão SONET/SDH a taxas <strong>de</strong> 1,25Gb/s TecnologiaCMOS. In: THE PRIMER WORKSHOP IBERCHIP, Cartagena <strong>de</strong> Indias, Colombia,


194Referências Bibliográficas1995. Memórias. 1995. p.153-163.[Ro95b] ROMÃO, F.L.; NAVARRO, J.; SILVEIRA, R.; VAN NOIJE, W. 1.2Gb/s SONET/SDHDemux in CMOS Technology. In: INTERNATIONAL MICROWAVE ANDOPTOELECTRONICS CONFERENCE, Rio <strong>de</strong> Janeiro, 1995. Proceedings. Rio <strong>de</strong>Janeiro, SBMO/IEEE MTT-S, 1995. v.1, p.52-57.[Ro96] ROMÃO, F.L.; NAVARRO, J.; SILVEIRA, R.; VAN NOIJE, W. Projeto do circuito MUX8:1 no padrão SONET/SDH a taxas <strong>de</strong> 1,25Gb/s na tecnologia CMOS 0.7µm. In:SIMPÓSIO BRASILEIRO DE CONCEPÇÃO DE CIRCUITOS INTEGRADOS, 9.,Recife, 1996. Anais. Recife, SBC/ SBMICRO/UFPE, 1996. p.201-211.[Ro98a] ROFOUGARAN, A. et al. A single-chip 900-MHz spread-spectrum wireless transceiver in 1-µm CMOS-Part I: Architecture and transmitter <strong>de</strong>sign. IEEE J. Solid-State Circuits,v.33, n.4, p.515-534, 1998.[Ro98b] ROFOUGARAN, A. et al. A single-chip 900-MHz spread-spectrum wireless transceiver in 1-µm CMOS-Part II: Receiver <strong>de</strong>sign. IEEE J. Solid-State Circuits, v.33, n.4, p.535-547,1998.[Rom98] ROMÃO, F.L. Ambiente <strong>de</strong> síntese <strong>de</strong> circuitos <strong>de</strong> alto <strong>de</strong>sempenho. São Paulo,Departamento <strong>de</strong> Engenharia Eletrônica, EP<strong>USP</strong>, ago. 1998. 79p. /exame <strong>de</strong> Qualificação<strong>para</strong> doutorado/[Rs98] ROSS, I.M. The invention of the transistor. Proceedings of the IEEE, v.86, n.1, p.7-28,1998.[Sa88] SAH, C.-T. Evolution of the MOS transistor-from conception to V<strong>LSI</strong>. Proceedings of theIEEE, v.76, n.10, p.1280-1326, 1988.[Sa90] SAKURAY, T.; NEWTON, R. Alpha-power law MOSFET mo<strong>de</strong>l and its application toCMOS inverter <strong>de</strong>lay and other formulas. IEEE J. Solid-State Circuits, v.25, n.2, p.584-594, 1990.[Sc90] SCHUMACHER, H.-J. et al. CMOS subnanosecond true-ECL output buffer. IEEE J. Solid-State Circuits, v.25, n.1, p.150-154, 1990.[Se92] SEMICONDUCTOR INDUSTRY ASSOCIATION (SIA), The national technologyroadmap for semiconductors. EUA, 1994.[Se94] SEMICONDUCTOR INDUSTRY ASSOCIATION (SIA), The national technologyroadmap for semiconductors. San Jose, Dec. 1994.[Se97] SEMICONDUCTOR INDUSTRY ASSOCIATION (SIA), The national technologyroadmap for semiconductors. San Jose, Nov. 1997.


Referências Bibliográficas 195[Sh92] SHOJI, M. Theory of CMOS digital circuits and circuit failures. Princeton, PrincetonUniversity, 1992.[Sh98] SHEU, B.J. et al. Higher education for the information age. IEEE Circuits & Devices, v.14,n.3, p.23-28, 1998.[Si96] SILVEIRA, R. Placa <strong>de</strong> teste <strong>para</strong> um circuito integrado <strong>de</strong> <strong>alta</strong> velocida<strong>de</strong>. São Paulo,<strong>LSI</strong>, Escola Politécnica da <strong>USP</strong>, 1996. (Relatório interno)[St91] STEYAERT, M.S.J. et al. ECL-CMOS and CMOS-ECL interface in 1.2-µm CMOS for 150-MHz digital ECL data transmission systems. IEEE J. Solid-State Circuits, v.26, n.1,p.18-24, 1991.[St92] STALLINGS, W. ISDN and Broadband ISDN. 2.ed. New York, Macmillan, 1992.[Ta96] TANENBAUM, A.S. Computer Networks. 3.ed. Upper Saddle River, Prentice Hall, 1996.[Tan96] TANABE, A. et al High performance CMOS for GHz communication IC. In: SYMPOSIUMON V<strong>LSI</strong> TECHNOLOGY, Honolulu, 1996. Digest of Technical Papers. 1996. p.134-135.[Ve95] VERGHESE, N.K. Simulation techniques and solutions for mixed-signal coupling inintegrated circuits. Boston, Kluwer Aca<strong>de</strong>mic, 1995.[Vi89] VITESSE SEMICONDUCTOR CORPORATION 1989 product data book. Camarillo,1989.[Vl80] VLADIMIRESCU, A.; LIU, S. The simulation of MOS integrated circuits using SPICE2.Berkeley, Col. of Eng., Univ. of California, 1980. (Memorandum UCB/ERL M80/7)[We93] WESTE, N.H.E.; ESHRAGHIAN, K. Principles of CMOS V<strong>LSI</strong> <strong>de</strong>sign. 2.ed. Reading,Addison-Wesley, 1993.[Ya90] YANO, K. et al. A 3.8-ns CMOS 16X16-b Multiplier Using Complementary Pass-TransistorLogic. IEEE J. Solid-State Circuits, v.25, n.2, p.388-395, 1990.[Yu87] YUAN, J.-R. et al. A true single-phase-clock dynamic CMOS circuit technique. IEEE J.Solid-State Circuits, v.22, n.5, p.899-901, 1987.[Ya98] YANG, C.-Y. et al. New dynamic flip-flop for high-speed dual-modulus prescaler. IEEE J.Solid-State Circuits, v.33, n.10, p.1568-1571, 1998.[Yu89] YUAN, J.-R., SVENSSON, C. High speed CMOS circuit technique. IEEE J. Solid-StateCircuits, v.24, n.1, p.62-70, 1989.[Yu93] YUAN, J.-R. et al. New domino logic precharged by clock and data. Electronics Letters,v.29, n.25, p.2188-2189, 1993.

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!