23 votos

¿Por qué se suele multiplicar la frecuencia del cristal dentro de un microcontrolador?

Me he dado cuenta de que muchas veces la frecuencia de los cristales externos se multiplica para llegar a la velocidad de reloj de un microcontrolador. ¿Por qué se hace esto?

Tomemos, por ejemplo, el TI CC2650. En su configuración por defecto, utiliza un cristal de 24 MHz para llegar a una frecuencia de reloj de 48 MHz. Los cristales de 48 MHz están ampliamente disponibles, así que ¿por qué no usarlos?

¿No duplicaría esto también el margen de tolerancia del cristal?

37voto

stuck Puntos 111

A medida que aumenta la frecuencia del cristal, las dimensiones se reducen (sobre todo el grosor). Por encima de unos 50 MHz, los cristales de corte AT se vuelven frágiles, y los fabricantes utilizan cortes de tercer sobretono para frecuencias más altas... algunos incluso utilizan el 5º armónico.
Estos cristales de "sobretono" son susceptibles de sufrir resonancias... los diseñadores más cuidadosos pueden añadir inductores y condensadores adicionales para favorecer las oscilaciones a la frecuencia deseada. El diseño de osciladores es bastante complicado, incluso sin estos esfuerzos adicionales.

Los osciladores de cristal tienen una sólida historia de ingeniería por debajo de los 10 MHz. Los diseñadores de microcontroladores aprovechan los robustos osciladores externos por debajo de 10 MHz para aumentar internamente la frecuencia con bucles de fase bloqueada. Parece que los diseñadores de chips controlan bien los PLL integrados internamente, vaya usted a saber.

Aun así, los cristales de menos de 10 MHz se cortan cada vez más pequeños, lo que eleva las impedancias de los circuitos y hace que los diseños de osciladores sean más susceptibles a los campos eléctricos adyacentes y a los eventos transitorios. Si necesitas un control estricto de las tolerancias, utiliza un oscilador enlatado, a menos que quieras dedicar un gran esfuerzo de ingeniería a diseñar el tuyo propio.
¿Realmente tienes la confianza suficiente para caracterizar la envolvente de funcionamiento de tu propio diseño de oscilador?


Los cristales de 48 MHz están muy extendidos, así que ¿por qué no utilizarlos?

Ese cristal de 48 MHz es posiblemente un tipo de 3er sobretono. En cambio, existe el riesgo de que oscile cerca de los 16 MHz (frecuencia fundamental). También hay frecuencias resonantes espurias que aumentan algo el riesgo de oscilación fuera de frecuencia. Yo sugeriría que la envolvente de funcionamiento seguro de un oscilador de sobretono de 48 MHz es menor que la envolvente de funcionamiento seguro de un oscilador fundamental por debajo de 10 MHz - seguido por el multiplicador de frecuencia PLL dentro del microcontrolador.

He aquí un ejemplo de cómo corta los cristales un fabricante de cristales. En el extremo de baja frecuencia de la gama, la resonancia fundamental es más activa que las resonancias armónicas 3X, 5X, 7X.... Sólo por encima de 42 MHz el fabricante se asegura de que domine la resonancia 3X:
table frequency range fundamental/harmonic crystals

¿no duplicaría esto también el margen de tolerancia del cristal?

La tolerancia de la hoja de datos se aplica a la resonancia de funcionamiento de 48 MHz: ¡lea la hoja de datos!

9voto

Justme Puntos 201

Esto se debe a que es más fácil usar un cristal de baja frecuencia como referencia para cualquier frecuencia arbitraria a la que quieras hacer funcionar el MCU, como frecuencias más altas como unos pocos cientos de MHz o incluso más lentas que el cristal.

Y los cristales de 48 MHz existen, pero suelen ser muy diferentes de los de menos de 30 MHz. Será más difícil hacer funcionar un cristal rápido que uno lento. Y aproximadamente por encima de 30 MHz los cristales se utilizan en modos de sobretono, lo que hace que el circuito oscilante sea más complejo.

Y no multiplicará la tolerancia. Si tienes una frecuencia X con 100 ppm de tolerancia, y la multiplicas por cualquier cantidad, seguirá teniendo 100 ppm de tolerancia.

9voto

tobymeg1 Puntos 6

Un cristal rara vez se utiliza en su frecuencia nativa. Su función principal es proporcionar una base de tiempo al sistema, para que todo lo que se derive de este cristal coincida con la hora exacta. Para ello, la frecuencia nativa del cristal es irrelevante. Lo que es importante es lo bien que mantiene su frecuencia (estabilidad y, en menor medida, fluctuación). E incluso eso es importante sobre todo para la comunicación con otras bases de tiempo.

Como normalmente se necesitan varias frecuencias diferentes (al menos dentro de los circuitos integrados lógicos), de todas formas se necesita el paso PLL, por lo que resulta aún más irrelevante la frecuencia con la que se empieza.

Así que sólo tienes que elegir la frecuencia de cristal más fácil y conveniente y derivar todo a partir de ella utilizando PLLs esencialmente libres. Las frecuencias más bajas consumen menos energía y las más altas tienen menos fluctuaciones. El compromiso suele estar entre los 10 y los 20 MHz.

4voto

Tim Williams Puntos 51

Además de los aspectos prácticos de los propios cristales, también está la cuestión de la interfaz lógica. Para ser claros, también existen osciladores de silicio con estabilidad a nivel de cristal, y en altas frecuencias. ¿Por qué no utilizarlos?

Por un lado, el coste; puede que no sean tan baratos como los osciladores de cuarzo u otros basados en resonadores. Pero aparte de eso, también:

La mayoría de MCU funcionan con niveles lógicos CMOS, a tensiones de alimentación relativamente altas (3,3+ V). Cada flanco de conmutación debe empujar la capacitancia de su pin driver, la traza de conexión y el pin receptor, más o menos completamente de carril a carril. A bajas frecuencias, esto está bien, pero a medida que aumenta la frecuencia, el tiempo de subida debe ser cada vez más rápido para mantener un bajo jitter, y el consumo de energía de toda esa oscilación de voltaje sigue aumentando.

Por ejemplo, un pin de 10 pF más la capacitancia de la traza (que es probablemente bastante típica, o quizás en el lado bajo, para una distancia corta típica entre el oscilador y la MCU, y sus pines típicos), disipa \$E = \frac{1}{2} C V^2\$ o 55 pJ por flanco de conmutación. A 10 MHz, esto equivale a 550 µW, lo que no es gran cosa en el gran esquema de las cosas, pero sin duda una molestia para un dispositivo que funciona con batería, por ejemplo. Y a 100 MHz, son 5,5 mW. Difícilmente provocará una ola de calor, pero se acumula rápidamente si se compara con la eficiencia energética de la lógica integrada en el chip (que incluso puede funcionar a 1,2 V y está formada por transistores microscópicos con capacitancias casi despreciables). Mientras tanto, tienes trazas en la placa que están haciendo antenas eléctricamente cortas, y conduciendo un par de voltios en ellas a 100 MHz o lo que sea significa que vas a obtener, no una gran cantidad de radiación, tal vez -40 dB de ganancia o lo que sea - pero cuando tu límite es -60 dBµV digamos, ¡ahora estás por encima del límite en unos +20 dB!

A frecuencias aún más altas, el consumo de energía y las interferencias electromagnéticas se vuelven onerosas, y la señalización LVDS o ECL se vuelve más eficiente. Éstas utilizan una pequeña oscilación de corriente o tensión, por lo que incurren en menos disipación de energía al desplazar capacitancias, y son de impedancia adaptada (que, en realidad, ya no desplazamos capacitancia en absoluto, o no principalmente, sino más bien la impedancia característica de una línea de transmisión; mientras tanto, las velocidades de flanco son lo suficientemente rápidas como para que el comportamiento de la línea de transmisión sea relevante para el análisis de la calidad de la señal, incluso para tramos bastante cortos). Mientras tanto, especialmente en el caso de las líneas diferenciales (LVDS, etc.), las trazas complementarias hacen que la radiación se anule en gran medida, excepto muy cerca de las trazas, o si el tramo acaba desequilibrado (la coincidencia de longitudes es importante, al igual que evitar las trazas cercanas, el cobre flotante, etc., que pueden acoplarse a una traza más que a la otra y aumentar la radiación).

Alternativamente, podríamos eliminar los armónicos de la onda cuadrada para no tener que conmutar completamente de un lado a otro todo el tiempo - de hecho, podemos ir más allá y utilizar un circuito resonante para anular la reactancia pin/traza y pasar una onda sinusoidal de alta frecuencia con un consumo de energía casi arbitrariamente bajo. Pero esto hace que el transmisor y el receptor sean mucho más complicados: el transmisor debe estar filtrado internamente y ser capaz de suministrar niveles analógicos continuos; y el receptor necesita un comparador para recuperar los bordes digitales afilados, o un PLL basado en un mezclador de RF para utilizar la onda sinusoidal directamente. Y no hace falta decir que perdemos la agradable propiedad de la lógica digital (la longitud de la traza ~no importa, en el peor de los casos sólo tenemos que preocuparnos de las resistencias de terminación de la fuente y/o la carga) y de repente necesitamos una tonelada de reactancias de ajuste quisquillosas en la placa.

Dicho esto, también existen osciladores de onda senoidal. Existen PLL de entrada sinusoidal o, si trabajas con un sistema de radio, un mezclador puede utilizar directamente la onda sinusoidal.

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