12 votos

¿Cómo funciona una MCU ARM más rápido que el cristal externo?

Por lo tanto, antes de esto solo trabajé con MCU Atmel de 8 bits simples y me di cuenta de que en los esquemas de mi placa de desarrollo solo tiene un cristal de 12 MHz, pero la MCU funciona a hasta 100 MHz. (Creo que el valor predeterminado es 80MHz. Solo lo hice más alto una vez por diversión. Es solo una línea simple en el código).

¿Como hace eso? ¿Por qué un Atmega328, por ejemplo, corre a la velocidad de cristal utilizada?

29voto

DmitrySandalov Puntos 129

Esto no tiene nada que ver con el núcleo de un procesador ARM; se trata de cómo la sincronización de los circuitos de obras:

En muchos sistemas como los microcontroladores, RF chips, chips de audio, ... que necesita para generar una mayor reloj que es un múltiplo exacto de algunos de reloj de referencia (por ejemplo, una externa del cristal).

Para ello hay que tener un oscilador controlado por voltaje (VCO) que usted puede ajustar la frecuencia por en - o disminución de la tensión de control.

Ahora, con sólo la creación de cualquier tensión de control, puede llevar a que a oscilar a una frecuencia más o menos en el derecho "estadio", pero no en un múltiplo exacto de la frecuencia de entrada. Especialmente, Vco puede ser un poco drifty, por lo que la frecuencia continuamente "vagar" por todo el lugar. Usted necesita para controlar que el oscilador por comparación con la referencia del oscilador.

La manera de hacerlo es mediante el empleo de un Lazo Fase-Bloqueado. La idea es simple:

  1. Dividir la frecuencia del VCO por un factor de \$N\$; ese es el factor que queremos que el VCO a ser más rápido que el de referencia. Hacerlo es fácil: se puede, por ejemplo, sólo tiene que utilizar un contador digital que cuenta con N y sólo entonces cambia el resultado.
  2. Comparar que \$f_\text{VCO}/N\$ reloj con el reloj de referencia en \$f_\text{ref}\$. Si uno es más rápido que el otro, ajustar la frecuencia en consecuencia. Puedes hacerlo en forma digital por sólo XOR ing ambos relojes – idealmente, si son idénticos, el resultado es una constante de 0, pero si uno es más rápido que el otro, entonces, hay una cantidad cada vez mayor de las veces cuando el XOR de los relojes es de 1; ralentizar o acelerar el VCO en consecuencia.

El de arriba es un lazo de control, bloqueado a la fase de ahí el nombre.

Para los "ricos" de los microcontroladores, los cuales tienen una gran cantidad de periféricos y, por tanto, se benefician de tener varios relojes internamente, es habitual tener al menos 1 PLL. El ATMega328 es un poco extraño que el respeto: Es bastante hambriento de poder, relativamente periférica ricos microcontrolador que todavía no tiene un PLL.

9voto

Justme Puntos 201

Algunos dispositivos tienen un PLL en ellos que puede multiplicar la frecuencia de cristal a frecuencias más altas. El ATMega328 no tiene un PLL, usa el cristal directamente.

i-Ciencias.com

I-Ciencias es una comunidad de estudiantes y amantes de la ciencia en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X