¿Error en el oscilador manual de referencia de la familia dsPIC33?

1

Estoy usando un resonador externo de 20MHz (categorizado como de alta velocidad o rango HS) y usando PLL, pero no puedo hacer una sincronización del dispositivo en ningún lugar cerca de la velocidad máxima de la CPU anunciada. ¿Cómo se supone que debes alcanzar 120MHz para F_SYS?

Consulte la sección 7.7: Loop con bloqueo de fase , p.7-23:

Restricciones:

  • 0,8 MHz ≤ F_PLLI ≤ 8,0 MHz
  • 120 MHz ≤ F_OSC ≤ 340 MHz
  • 15 MHz ≤ F_SYS ≤ 120 MHz a 125ºC

Ecuaciones:

  • \ $ F_ {PLLI} = \ dfrac {F_ {IN}} {(PLLPRE + 2)} \ $
  • \ $ F_ {OSC} = F_ {IN} \ cdot \ dfrac {(PLLDIV + 2)} {(PLLPRE + 2)} \ $
  • \ $ F_ {SYS} = F_ {IN} \ cdot \ dfrac {(PLLDIV + 2)} {((PLLPRE + 2) \ cdot 2 (PLLPOST + 2))} \ $

Si puedes llegar a 340MHz, el máximo puede ir si PLLPOST = 0: 340MHz / (2 * (0 + 2)) = > 85MHz!

    
pregunta tarabyte

1 respuesta

2

Parece que tienes las fórmulas \ $ F_ {SYS} \ $ y \ $ F_ {OSC} \ $ mezcladas, según la hoja de datos que has citado.

  • \ $ F_ {SYS} = F_ {IN} \ cdot \ dfrac {(PLLDIV + 2)} {(PLLPRE + 2)} \ $
  • \ $ F_ {OSC} = F_ {IN} \ cdot \ dfrac {(PLLDIV + 2)} {((PLLPRE + 2) \ cdot 2 (PLLPOST + 1))} \ $

Según mis cálculos, con un cristal de 20 MHz y la siguiente configuración, debería obtener 240 MHz en \ $ F_ {SYS} \ $ y 120MHz en \ $ F_ {OSC} \ $:

  • PLLPRE: 4
  • PLLDIV: 70
  • PLLPOST: 0

\ $ F_ {SYS} = 20MHz \ cdot \ dfrac {72} {6} = 240MHz \ $

\ $ F_ {OSC} = 20MHz \ cdot \ dfrac {72} {(6 \ cdot 2)} = 20MHz \ cdot \ dfrac {72} {12} = 120MHz \ $

    
respondido por el Adam Lawrence

Lea otras preguntas en las etiquetas