¿Cuáles son las diferentes fuentes de reloj para los relojes de uso general?

13

Estoy tratando de generar una señal de reloj limpia de 11.289 MHz a partir del reloj de uso general, GPCLK0 en GPIO4. La ruta sugerida es usar el cristal de 19.2 MHz como fuente, que parece funcionar para frecuencias más bajas, pero no importa lo que intente, su valor predeterminado es 2.5 kHz. Al leer la documentación, parece implicar que se deben usar las fuentes PLL.

¿Qué información adicional hay sobre cuáles son las fuentes mencionadas? Particularmente:

  • 4 = PLLA por
  • 5 = PLLC por
  • 6 = PLLD por

Consulte la página 107 - Registro de control de reloj de la documentación periférica BCM2835.

Orejas de perro
fuente
¿Resolviste el problema? Me gustaría generar también una señal de reloj (entre 2-10 MHz), porque me gustaría leer los datos de los registros de desplazamiento. Pero no puedo hacer que funcione. ¿Cómo puedo configurar el GPCLK0 en el pin GPIO4 para una salida de señal de reloj? ¡Gracias!
user3171

Respuestas:

5

Aunque no se especifica explícitamente, asumí de la especificación que:

  • PLLA = 650 MHz
  • PLLB = 400 MHz
  • PLLC = 200 MHz

A partir de esto, sugeriría lo siguiente:

SRC = 4 (PLLA), MASH = 1, DIVI = 57, DIVF = 592

Si estoy leyendo las especificaciones correctamente, esto producirá:

min freq = 11.207 MHz, max freq = 11.404 MHz, avg freq = 11.289 MHz

Puede probar MASH como 2 y 3 experimentalmente si funcionan mejor. También puede probar los relojes PLL más lentos, aunque la precisión probablemente sufrirá un poco. Esto también se menciona en la documentación:

En aplicaciones donde la inquietud es una preocupación, se debe usar la fuente de reloj más rápida disponible.

Desnudo
fuente
6

He experimentado un poco con los relojes de uso general.

Esta información parece ser correcta (en la fecha de publicación).

Consulte http://www.raspberrypi.org/wp-content/uploads/2012/02/BCM2835-ARM-Peripherals.pdf páginas 102-108. Las frecuencias de reloj se determinaron por experimento. Es poco probable que el oscilador (19.2 MHz) y PLLD (500 MHz) cambien.

Fuentes de reloj

0     0 Hz     Ground
1     19.2 MHz oscillator
2     0 Hz     testdebug0
3     0 Hz     testdebug1
4     0 Hz     PLLA
5     1000 MHz PLLC (changes with overclock settings)
6     500 MHz  PLLD
7     216 MHz  HDMI auxiliary
8-15  0 Hz     Ground

El divisor entero puede ser 2-4095. El divisor fraccionario puede ser 0-4095.

No hay (probablemente) un límite de 25MHz para usar valores de mezcla distintos de cero.

Hay tres relojes de uso general.

Los relojes se denominan GPCLK0, GPCLK1 y GPCLK2.

Se puede acceder a los relojes desde las siguientes gpios.

No use GPCLK1 (probablemente se usa para el reloj Ethernet).

gpio4  GPCLK0 ALT0
gpio5  GPCLK1 ALT0 B+ and compute module only (reserved for system use)
gpio6  GPCLK2 ALT0 B+ and compute module only
gpio20 GPCLK0 ALT5 B+ and compute module only
gpio21 GPCLK1 ALT5 Not available on Rev.2 B (reserved for system use)

gpio32 GPCLK0 ALT0 Compute module only
gpio34 GPCLK0 ALT0 Compute module only
gpio42 GPCLK1 ALT0 Compute module only (reserved for system use)
gpio43 GPCLK2 ALT0 Compute module only
gpio44 GPCLK1 ALT0 Compute module only (reserved for system use)
joan
fuente