Quais são as diferentes fontes de relógio para os relógios de uso geral?

13

Estou tentando gerar um sinal de relógio limpo de 11.289 MHz a partir do relógio de uso geral, GPCLK0 no GPIO4. A rota sugerida é usar o cristal de 19,2 MHz como fonte, o que parece funcionar para frequências mais baixas, mas não importa o que eu tente, o padrão é 2,5 kHz. Lendo a documentação, parece implicar que as fontes de PLL devam ser usadas.

Que informações adicionais existem sobre o que são as fontes mencionadas? Particularmente:

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

Consulte a página 107 - Registro de controle do relógio da documentação periférica BCM2835.

Orelhas de cão
fonte
Você resolveu o problema? Gostaria de gerar também um sinal de clock (entre 2-10 MHz), porque gostaria de ler dados de registros de deslocamento. Mas eu não posso fazer isso funcionar. Como posso configurar o GPCLK0 no pino GPIO4 para uma saída de sinal de relógio? Obrigado!
user3171

Respostas:

5

Embora não seja especificado explicitamente, assumi a partir da especificação que:

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

A partir disso, sugiro o seguinte:

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

Se eu estiver lendo as especificações corretamente, isso produzirá:

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

Você pode tentar o MASH como 2 e 3 experimentalmente se esses funcionarem melhor. Você também pode experimentar os relógios PLL mais lentos, embora a precisão provavelmente sofra um pouco. Isso também é mencionado na documentação:

Em aplicações em que a instabilidade é uma preocupação, a fonte de relógio mais rápida disponível deve ser usada.

Nakedible
fonte
6

Eu experimentei um pouco os relógios de uso geral.

Esta informação parece estar correta (na data de postagem).

Consulte http://www.raspberrypi.org/wp-content/uploads/2012/02/BCM2835-ARM-Peripherals.pdf, páginas 102-108. As frequências do relógio foram determinadas por experimento. É improvável que o oscilador (19,2 MHz) e o PLLD (500 MHz) sejam alterados.

Fontes de relógio

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

O divisor inteiro pode ser 2-4095. O divisor fracionário pode ser de 0 a 4095.

(Provavelmente) não há limite de 25 MHz para o uso de valores de zero diferentes de zero.

Existem três relógios de uso geral.

Os relógios são nomeados GPCLK0, GPCLK1 e GPCLK2.

Os relógios são acessíveis nos seguintes gpios.

Não use GPCLK1 (provavelmente é usado para o relógio 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
fonte