Sim, você pode encontrar um problema com a frequência do clock de saída ao definir valores de ciclo de trabalho diferentes de 50% no pll Intel FPGA IP. Isso pode ocorrer ao usar o software Quartus® II versão 13.0sp1 e anterior.
O problema ocorre se os parâmetros C-Counter Hi Divide e C-Counter Low Divide são calculados incorretamente pelo pll Intel FPGA IP. O relatório de compilação => Fitter => Resource Section => de uso do PLL mostrará a frequência real do clock de saída. Se a frequência do clock de saída relatada não estiver correta, o parâmetro C-Counter Hi Divide ou C-Counter Low Divide não está correto.
Os contadores C são usados para dividir a frequência do oscilador controlado por tensão (VCO) à frequência de saída desejada. A soma dos parâmetros C-Counter Hi Divide e C-Counter Low Divide é o valor divisor resultante da frequência de VCO.
Por exemplo, se o VCO estiver sendo executado a 840 MHz e o clock de saída desejado for de 105 MHz, é necessário um valor total de divisão de 8. Para um ciclo de trabalho de 50%, as contagens altas e baixas devem ser divididas igualmente entre os parâmetros C-Counter Hi Divide e C-Counter Low Divide, no qual o valor de divisão para cada parâmetro é 4. Para criar outros valores de ciclo de trabalho, você pode ajustar os parâmetros C-Counter Hi Divide e C-Counter Low Divide, conforme necessário. Você precisa garantir que a soma desses parâmetros seja igual ao valor total de divisão para gerar a frequência de clock de saída desejada.
Se o valor total da divisão for um valor ímpar, então você precisará ativar o parâmetro C-Counter Odd Divide Enable se for necessário um ciclo de trabalho de 50%. Por exemplo, se o VCO estiver funcionando a 840 MHz e a frequência desejada do clock de saída for de 120 MHz, então é necessário um valor de divisão total de 7. Neste caso, o parâmetro C-Counter Hi Divide seria 4, o parâmetro C-Counter Low Divide seria 3 e definiria o parâmetro C-Counter Odd Divide Enable como True. Se for necessário um ciclo de trabalho diferente de 50%, você precisará ajustar o parâmetro C-Counter Hi Divide e o parâmetro C-Counter Low Divide, conforme necessário. Você precisa garantir que a soma desses parâmetros seja igual ao valor total de divisão para gerar a frequência de clock de saída desejada.
Para corrigir este problema em seu design, abra o nome da instância <PLL>_0002.v e localize os parâmetros C-Counter Hi Divide e C-Counter Low Divide para o(s) clock(s) de saída afetado. Ajuste esses parâmetros conforme necessário para criar a frequência correta do clock de saída e o ciclo de trabalho desejado.
Referindo-se aos exemplos acima, se o VCO estiver funcionando a 840 MHz e a frequência desejada do clock de saída for de 105 MHz com um ciclo de trabalho de 12,5%, os seguintes parâmetros serão necessários:
- Divisão C-Counter Hi = 1
- C-Counter Low Divide = 7
- C-Counter Odd Divide Enable = False
Devido ao problema no cálculo de Intel FPGA IP PLL, defina os seguintes parâmetros para uma frequência de clock de saída de 120 MHz:
- Divisão C-Counter Hi = 1
- C-Counter Low Divide = 6
- C-Counter Odd Divide Enable = True
Para corrigir os parâmetros neste exemplo, o parâmetro C-Counter Low Divide deve ser definido como 7, e o parâmetro C-Counter Odd Divide Enable deve ser definido como False no nome da instância <PLL>_0002.v.