Existem vários circuitos divisores de clock, mas o GreenPAK da Renesas é o único produto que permite a divisão de clock como parte do fluxo de processamento em sistemas de sinais mistos.
A divisão de clock aparece em sistemas de sinal misto por diversos motivos. Por exemplo, normalmente um oscilador ou fonte de referência precisa atender a vários domínios de temporização com diferentes larguras de banda, tolerância a ruído de fase e requisitos de posicionamento de borda. Um microcontrolador pode precisar de uma entrada de temporização de baixa taxa, um ADC pode precisar de um clock de amostragem limpo, e uma malha de controle pode precisar de um estrobo periódico ou de uma referência de comparação. A divisão de clock seria usada dependendo do ciclo de trabalho exigido, do jitter aditivo, da simetria das bordas, das restrições de roteamento e até mesmo da quantidade de ruído de chaveamento digital injetado em circuitos analógicos próximos.
Os exemplos abaixo abordam as escolhas comuns de circuitos e componentes usadas para implementar a divisão de clock. Alguns são circuitos lógicos simples em nível de placa, enquanto outros estão incorporados em lógica programável ou periféricos temporizadores, embora também possam ser construídos com componentes discretos. Para muitas aplicações embarcadas envolvendo processamento de sinais, ou nas quais condições lógicas são aplicadas a sinais analógicos, a implementação em lógica digital faz mais sentido
O circuito divisor mais limpo continua sendo o estágio comutador de divisão por 2 construído com um flip-flop D. A implementação é simples e é mostrada abaixo. Isso produz uma saída com ciclo de trabalho de 50% e posicionamento de borda determinístico em relação à entrada, desde que os requisitos de temporização sejam atendidos. Para projetos de sinal misto em nível de placa, esta é uma excelente opção quando o objetivo é criar um clock local com metade da taxa, com profundidade lógica mínima e comportamento previsível.
Isso produz uma saída em onda quadrada quando o clock de origem é estável, ou a partir de um sinal analógico submetido a limiarização (com um comparador). Este circuito é mais útil quando a razão de divisão é exatamente 2 ou uma pequena potência de 2 (requer cascateamento), e a saída deve permanecer bem comportada. Ele é comumente usado antes da lógica de controle de serializador, máquinas de estado locais ou temporização de interfaces digitais, onde uma referência em meia taxa é suficiente. Observe que o cascateamento para potências de 2 faz com que o atraso de propagação se acumule, o que pode afetar o skew em relação a outros sinais em altas frequências de clock.
Peças típicas que podem ser usadas incluem:
A divisão simples de clock pode ser realizada com um DFF. O cascateamento permite divisão por potências de 2.
Quando a razão de divisão necessária é maior que 2, a implementação padrão é um contador síncrono com um bit de saída usado diretamente ou uma contagem terminal decodificada usada para reiniciar o contador. Um bit de saída de um contador binário fornece um resultado limpo de divisão por 4, divisão por 8 ou divisão por 16 com pouquíssimos circuitos adicionais. Uma razão que não seja potência de 2, como divisão por 3, divisão por 5 ou divisão por 10, normalmente exige decodificação de contagem e um registrador de saída se o resultado tiver de se comportar como um clock real.
Para projetos de sinal misto, a abordagem com contador é atraente porque é compacta e fácil de implementar em lógica, dispositivos programáveis e alguns periféricos temporizadores. A limitação aparece quando um pulso decodificado é tratado como um clock distribuído. Saídas de contagem terminal são pulsos estreitos, a menos que lógica adicional reconstrua uma saída em onda quadrada. Essa distinção importa quando o sinal dividido alimenta conversores, clocks de interface ou qualquer elemento com sensibilidade ao ciclo de trabalho.
Divisão de clock baseada em contador com um comparador.
Um clock de divisão por 10 para uma interface de baixa velocidade é um exemplo típico. Um contador decimal sozinho pode gerar a razão correta, mas o formato da saída determina se o resultado é útil. Para um estrobo periódico, um pulso de contagem terminal pode ser suficiente. Para um dispositivo a jusante que espera uma entrada de temporização em onda quadrada, adicione um registrador de saída ou estágio comutador e verifique o ciclo de trabalho resultante.
As divisões ímpares são onde projetos simples começam a ficar complicados. Uma saída de divisão por 3 obtida diretamente da decodificação do contador muitas vezes tem baixo ciclo de trabalho. Se um dispositivo a jusante espera algo mais próximo de 50%, um método diferente pode ser:
Uma implementação prática de divisão por 3 pode contar três bordas de entrada e usar um segundo registrador para reconstruir uma forma de onda que permaneça em nível alto por 1,5 ciclos e em nível baixo por 1,5 ciclos. Isso é comum em lógica de geração de clock em ASIC/FPGA, mas menos comum em lógica simples em nível de placa porque adiciona complexidade de temporização.
Um loop de bloqueio de fase (PLL) pode atuar como divisor mesmo quando a saída permanece alinhada em fase com a entrada. Este é um dos métodos mais úteis quando o clock dividido precisa ter fase controlada e baixo skew em relação à fonte. Um PLL pode dividir mantendo uma relação definida com a referência, e muitos dispositivos permitem multiplicação e divisão simultâneas, de modo que várias frequências relacionadas possam ser geradas a partir de uma única fonte.
Essa classe de solução se encaixa em projetos em que a qualidade do clock é o fator mais importante. É mais complexa do que um divisor lógico simples, mas os benefícios são ciclo de trabalho controlado, menor skew entre múltiplas saídas e melhor integração com o roteamento da árvore de clock. Também reduz a tentação de construir um caminho de temporização sensível ao analógico a partir de lógica de contador improvisada colocada próxima a regiões ruidosas de chaveamento digital.
Em muitos sistemas, um divisor de clock é apenas um periférico temporizador. É possível gerar um clock arbitrário em uma aplicação embarcada em um MCU, sem configurar manualmente circuitos divisores com flip-flops. Em um FPGA, o local correto para dividir clocks normalmente é dentro dos recursos dedicados de clock em vez da lógica geral, mas isso pode ser feito com flip-flops como parte de um fluxo de processo ou algoritmo, em vez de recorrer aos recursos integrados de clock do chip.
|
Recurso |
Implementação em MCU |
Implementação em FPGA |
|---|---|---|
|
Recurso principal |
Periféricos temporizadores/contadores |
Gerenciadores de clock (PLL/MMCM) |
|
Configuração |
Prescalers e registradores de período |
Blocos dedicados de clock |
|
Sinal de saída |
Saída única usada por periféricos |
Roteamento de árvore de clock com baixo skew |
|
Melhor caso de uso |
PWM de baixa velocidade ou periféricos |
Lógica síncrona de alta velocidade |
Isso fornece uma saída em onda quadrada derivada do clock principal do sistema. É conveniente, mas nem sempre equivale a uma árvore de clock dedicada de baixo skew. Em geral, isso é adequado para periféricos de baixa velocidade, geração de PWM ou sinais externos de temporização. Esta é a escolha certa quando o resultado dividido precisa se comportar como um clock real dentro da lógica programável, e não apenas como um pulso de habilitação mais lento.
Os dispositivos GreenPAK da Renesas fazem a ponte entre lógica de função fixa e plataformas programáveis maiores ao integrar osciladores, macrocélulas CNT/DLY, flip-flops D e LUTs, juntamente com uma interface analógica programável. Isso torna esses processadores de sinal misto totalmente programáveis e reconfiguráveis em tempo real, com aplicações como funções de controle local, como temporização de inicialização, debounce e qualificação de pulso.
O SLG46537V é um exemplo do portfólio de produtos GreenPAK que permite implementar divisão de clock juntamente com uma série de funções padrão de lógica e processamento analógico. O diagrama de blocos abaixo mostra os recursos analógicos disponíveis, com comparadores para processar sinais analógicos, e macrocélulas internas para aplicar condições lógicas a entradas analógicas convertidas.

Diagrama de blocos do SLG46537V
As ferramentas de desenvolvimento do Renesas GreenPAK oferecem aos projetistas a capacidade de desenvolver ICs totalmente personalizados, digitais, analógicos ou de sinal misto. Esses processadores programáveis de sinal misto permitem consolidar funções encontradas em circuitos de gerenciamento de clock e sinais, possibilitando sistemas menores e mais eficientes. Para saber mais, confira os componentes GreenPAK e os exemplos de referência.
Se você precisa desenvolver eletrônica de potência confiável ou sistemas digitais avançados, use o conjunto completo de recursos de projeto de PCB e as ferramentas CAD de classe mundial oferecidas pela Altium para implementar suas soluções GreenPAK. A Altium fornece a principal plataforma do mundo para desenvolvimento de produtos eletrônicos, completa com as melhores ferramentas de projeto de PCB do setor e recursos de colaboração multidisciplinar para equipes avançadas de projeto. Entre em contato com um especialista da Altium hoje mesmo!