Sinal de clock

Sinal de clock e legenda.

Em eletrônica e especialmente em circuitos digitais síncronos, um sinal de clock ou sinal de relógio (em inglês, clock signal) (historicamente também conhecido como logic beat[1]) é um sinal lógico eletrônico (tensão ou corrente) que oscila entre um estado alto e baixo em uma frequência constante e é usado como um metrônomo para sincronizar ações de circuitos digitais. Num circuito lógico síncrono, o tipo mais comum de circuito digital, o sinal de clock é aplicado a todos os dispositivos de armazenamento, flip-flops e latches, e faz com que todos mudem de estado simultaneamente, evitando condições de corrida.

Um sinal de clock é produzido por um oscilador eletrônico denominado gerador de clock. O sinal de clock mais comum tem a forma de onda quadrada com ciclo de trabalho de 50%. Os circuitos que usam o sinal de clock para sincronização podem se tornar ativos na borda ascendente, na borda descendente ou, no caso de taxa de dados dupla, tanto na borda ascendente quanto na borda descendente do ciclo do clock.

Circuitos digitais

Cristal e CI gerador de frequência (clock) numa placa-mãe de computador.

A maioria dos circuitos integrados (ICs) de complexidade suficiente usa um sinal de clock para sincronizar diferentes partes do circuito, ciclando a uma taxa mais lenta do que os atrasos de propagação interna do pior caso. Em alguns casos, é necessário mais de um ciclo de clock para executar uma ação previsível. À medida que os ICs se tornam mais complexos, o problema de fornecer clocks precisos e sincronizados para todos os circuitos torna-se cada vez mais difícil. O exemplo proeminente de tais chips complexos é o microprocessador, o componente central dos computadores modernos, que depende de um clock de um oscilador de cristal. As únicas exceções são circuitos assíncronos, como CPUs assíncronas.

Um sinal de clock também pode ser bloqueado, isto é, combinado com um sinal de controle que ativa ou desativa o sinal de clock para uma determinada parte de um circuito. Esta técnica é frequentemente usada para economizar energia, desligando efetivamente partes de um circuito digital quando não estão em uso, mas tem um custo de maior complexidade na análise de temporização.

Clock monofásico

A maioria dos circuitos síncronos modernos usa apenas um "clock monofásico" - em outras palavras, todos os sinais de clock são (efetivamente) transmitidos em 1 fio.

Clock bifásico

Em circuitos síncronos, um “clock bifásico” refere-se a sinais de clock distribuídos em 2 fios, cada um com pulsos não sobrepostos. Tradicionalmente, um fio é chamado de "fase 1" ou "φ1" (phi 1), o outro fio carrega o sinal de "fase 2" ou "φ2".[2][3][4][5] Como as duas fases são garantidamente não sobrepostas, travas fechadas em vez de flip-flops acionados por borda podem ser usadas para armazenar informações de estado, desde que as entradas para travas em apenas uma fase dependem das saídas das travas na outra fase. Como uma trava fechada usa apenas quatro portas versus seis portas para um flip-flop acionado por borda, um clock de duas fases pode levar a um projeto com uma contagem geral de portas menor, mas geralmente com alguma penalidade na dificuldade e no desempenho do projeto.

Os CIs semicondutores de óxido metálico (MOS) normalmente usavam sinais de clock duplo (um clock bifásico) na década de 1970. Eles foram gerados externamente para os microprocessadores Motorola 6800 e Intel 8080.[6] A próxima geração de microprocessadores incorporou a geração de clock no chip. O 8080 usa um clock de 2 MHz, mas a taxa de transferência de processamento é semelhante à do 6800 de 1 MHz. O 8080 requer mais ciclos de clock para executar uma instrução do processador. O 6800 tem um clock mínimo de 100 kHz e o 8080 tem um clock mínimo de 500 kHz. Versões de maior velocidade de ambos os microprocessadores foram lançadas em 1976.[7]

O 6501 requer um gerador de clock bifásico externo. O MOS Technology 6502 usa a mesma lógica bifásica internamente, mas também inclui um gerador de clock bifásico no chip, portanto, ele só precisa de uma entrada de clock monofásica, simplificando o design do sistema.

Clock de 4 fases

Alguns circuitos integrados antigos usam lógica quadrifásica, exigindo uma entrada de clock de quatro fases que consiste em quatro sinais de clock separados e não sobrepostos.[8] Isso era particularmente comum entre os primeiros microprocessadores, como o National Semiconductor IMP-16, Texas Instruments TMS9900 e o chipset Western Digital WD16 usado no DEC LSI-11.

Os clocks de quatro fases raramente têm sido usados ​​em processadores CMOS mais recentes, como o microprocessador DEC WRL MultiTitan,[9] e na tecnologia Fast14 da Intrinsity. A maioria dos microprocessadores e microcontroladores modernos usa um clock monofásico.

Multiplicador de clock

Muitos microcomputadores modernos usam um "multiplicador de clock" que multiplica um clock externo de frequência mais baixa pela taxa de clock apropriada do microprocessador. Isso permite que a CPU opere em uma frequência muito mais alta que o resto do computador, o que proporciona ganhos de desempenho em situações onde a CPU não precisa esperar por um fator externo (como memória ou entrada/saída).

Alteração dinâmica de frequência

A grande maioria dos dispositivos digitais não requer um clock com frequência fixa e constante. Desde que os períodos mínimo e máximo do clock sejam respeitados, o tempo entre os extremos do clock pode variar amplamente de um extremo para o outro e vice-versa. Esses dispositivos digitais funcionam igualmente bem com um gerador de clock que altera dinamicamente sua frequência, como geração de clock de espectro espalhado, escala de frequência dinâmica, etc. Dispositivos que usam lógica estática nem sequer possuem um período máximo de clock (ou em outras palavras, frequência mínima de clock); esses dispositivos podem ser desacelerados e pausados ​​indefinidamente e, em seguida, retomados na velocidade máxima do clock a qualquer momento.

Outros circuitos

Alguns circuitos de sinais mistos sensíveis, como conversores de precisão analógico-digital em vez de ondas quadradas como sinais de clock, porque ondas quadradas contêm alta frequência ondas senoidais, use que podem interferir no circuito analógico e causar ruído. Esses clocks de onda senoidal geralmente são sinais diferenciais, porque esse tipo de sinal tem o dobro da taxa de variação e, portanto, metade da incerteza de temporização de um sinal de terminação única com a mesma faixa de tensão. Os sinais diferenciais irradiam menos fortemente do que uma única linha. Alternativamente, uma única linha blindada por linhas de energia e terra pode ser usada.

Em circuitos CMOS, as capacitâncias das portas são carregadas e descarregadas continuamente. Um capacitor não dissipa energia, mas energia é desperdiçada nos transistores de acionamento. Na computação reversível, indutores podem ser usados ​​para armazenar essa energia e reduzir a perda de energia, mas tendem a ser bastante grandes. Alternativamente, usando um clock de onda senoidal, portas de transmissão CMOS e técnicas de economia de energia, os requisitos de energia podem ser reduzidos.[carece de fontes?]

Distribuição

A maneira mais eficaz de levar o sinal de clock a todas as partes de um chip que precisam dele, com a inclinação mais baixa, é um metal grade. Em um microprocessador grande, a potência usada para acionar o sinal de clock pode ser superior a 30% da potência total usada por todo o chip. Toda a estrutura com as portas nas extremidades e todos os amplificadores entre elas devem ser carregadas e descarregadas a cada ciclo.[10][11] Para economizar energia, o clock gating desliga temporariamente parte da árvore.

A rede de distribuição de clock (ou árvore de clock, quando esta rede forma uma árvore como uma árvore H) distribui o(s) sinal(s) de clock de um ponto comum para todos os elementos que dele necessitam. Como esta função é vital para a operação de um sistema síncrono, muita atenção tem sido dada às características desses sinais de clock e às redes elétricas utilizadas em seus distribuição. Os sinais de clock são frequentemente considerados simples sinais de controle; entretanto, esses sinais possuem algumas características e atributos muito especiais.

Os sinais de clock normalmente são carregados com o maior fanout e operam nas velocidades mais altas de qualquer sinal dentro do sistema síncrono. Como os sinais de dados são fornecidos com uma referência temporal pelos sinais de clock, as formas de onda do clock devem ser particularmente limpas e nítidas. Além disso, esses sinais de clock são particularmente afetados pela expansão tecnológica (veja a lei de Moore), nesse longo interconexão global tornam-se significativamente mais resistentes à medida que as dimensões da linha diminuem. Este aumento na resistência da linha é uma das principais razões para a crescente importância da distribuição do clock no desempenho síncrono. Finalmente, o controle de eventuais diferenças e incertezas nos tempos de chegada dos sinais de clock podem limitar severamente o desempenho máximo de todo o sistema e criar condições de corrida catastróficas nas quais um sinal de dados incorreto pode travar em um registro.

A maioria dos sistemas síncronos digitais consistem em bancos em cascata de sequências com lógica combinacional entre cada conjunto de registradores. Os requisitos funcionais do sistema digital são satisfeitos pelos estágios lógicos. Cada estágio lógico introduz atraso que afeta o desempenho de temporização, e o desempenho de temporização do projeto digital pode ser avaliado em relação aos requisitos de temporização por meio de uma análise de temporização. Frequentemente, deve-se fazer uma consideração especial para atender aos requisitos de tempo. Por exemplo, os requisitos de desempenho global e tempo local podem ser satisfeitos pela inserção cuidadosa de registros de pipeline em janelas de tempo igualmente espaçadas para satisfazer o pior caso crítico restrições de timing. O projeto adequado da rede de distribuição de clock ajuda a garantir que os requisitos críticos de temporização sejam satisfeitos e que não existam condições de corrida (consulte também distorção de clock).

Os componentes de atraso que constituem um sistema síncrono geral são compostos pelos seguintes três subsistemas individuais: os elementos de armazenamento de memória, os elementos lógicos e o circuito de clock e a rede de distribuição.

Novas estruturas estão actualmente em desenvolvimento para melhorar estes problemas e fornecer soluções eficazes. Áreas importantes de pesquisa incluem técnicas de clock ressonante ("malha de clock ressonante"),[12][13][14][15] interconexão óptica no chip e metodologias de sincronização local.

Ver também

Referências

  1. FM1600B Microcircuit Computer Ferranti Digital Systems (PDF). Bracknell, Berkshire, UK: Ferranti Limited, Digital Systems Department. Outubro de 1968 [setembro de 1968]. List DSD 68/6. Consultado em 15 de dezembro de 2023. Cópia arquivada (PDF) em 19 de maio de 2020 
  2. Two-phase clock Arquivado em 2007-11-09 no Wayback Machine
  3. Two-phase non-overlapping clock generator, Tams-www.informatik.uni-hamburg.de, consultado em 11 de dezembro de 2023, arquivado do original em 26 de dezembro de 2011 
  4. Concepts in Digital Imaging - Two Phase CCD Clocking, Micro.magnet.fsu.edu, consultado em 11 de dezembro de 2023 
  5. Cell cgf104: Two phase non-overlapping clock generator, Hpc.msstate.edu, consultado em 11 de dezembro de 2023, arquivado do original em 8 de fevereiro de 2012 
  6. «How to drive a microprocessor». Electronics. 49 (8). New York: McGraw-Hill. 15 de abril de 1976. p. 159  Motorola's Component Products Department sold hybrid ICs that included a quartz oscillator. These IC produced the two-phase non-overlapping waveforms the 6800 and 8080 required. Later Intel produced the 8224 clock generator and Motorola produced the MC6875. The Intel 8085 and the Motorola 6802 include this circuitry on the microprocessor chip.
  7. «Intel's Higher Speed 8080 μP» (PDF). Microcomputer Digest. 2 (3). Cupertino CA: Microcomputer Associates. Setembro de 1975. p. 7. Consultado em 13 de dezembro de 2023. Arquivado do original (PDF) em 23 de janeiro de 2019 
  8. Concepts in digital imaging - Four Phase CCD Clocking, Micro.magnet.fsu.edu, consultado em 13 de dezembro de 2023 
  9. Jouppi, N.P.; Tang, J.F. (1989). «A 20-MIPS sustained 32-bit CMOS microprocessor with high ratio of sustained to peak performance». IEEE Journal of Solid-State Circuits. 24 (5). pp. 1348–59. Bibcode:1989IJSSC..24.1348J. doi:10.1109/JSSC.1989.572612 
  10. Anand Lal Shimpi (2008), Intel's Atom Architecture: The Journey Begins 
  11. Paul V. Bolotoff (2007), Alpha: The history in facts and comments, consultado em 15 de dezembro de 2023, arquivado do original em 18 de fevereiro de 2012, power consumed by the clock subsystem of EV6 was about 32% of the total core power. To compare, it was about 25% for EV56, about 37% for EV5 and about 40% for EV4. 
  12. Chan, S. C.; Shepard, K. L.; Restle, P. J. (2005). «Uniform-phase uniform-amplitude resonant-load global clock distributions». IEEE Journal of Solid-State Circuits. 40 (1). 102 páginas. Bibcode:2005IJSSC..40..102C. doi:10.1109/JSSC.2004.838005 
  13. «Resonant clock mega-mesh for the IBM z13TM | IEEE Conference Publication | IEEE Xplore». ieeexplore.ieee.org. Consultado em 16 de dezembro de 2023 
  14. «Modeling and optimization of low power resonant clock mesh | IEEE Conference Publication | IEEE Xplore». ieeexplore.ieee.org. Consultado em 16 de dezembro de 2023 
  15. «Clock tree synthesis and SoC clock distribution strategies». www.techdesignforums.com. Consultado em 16 de dezembro de 2023 

Leitura adicional