Forum: Mikrocontroller und Digitale Elektronik Frequenz von CLK-Paketen verdoppeln, habt Ihr einen besseren Ansatz?


von Schmidt (Gast)


Lesenswert?

Hallo liebe Gemeinschaft,

ich habe gerade die Aufgabe vor mir liegen, das CLK-Signal eines 
SPI-Busses an einem Atmega in seiner Frequenz zu verdoppeln. Die Daten 
kommen dabei unregelmäßig. Datenrate ist noch nicht fix, wird aber 
moderat um 100-500kHz liegen

Welche Möglichkeiten hätte ich? Ich dachte an folgendes:

1. PLL, das fällt aber aus da ich immer nur 8 Phasendurchgänge habe und 
ich keine ernste "Latenz" zwischen CLK und dem parallel geführten 
MOSI-Signal erzeugen möchte.

2. XOR-Schaltung. Wurde hier im Forum häufig diskutiert und häufig 
zerrissen. Aber ich würde sie bevorzugen, da ich eine feste 
Signalfreuqnz habe und somit das RC-Netz anpassen kann. Darüber hat die 
Schaltung keine Regelverzögerung und ich kein "Nachschwingen"

2b. Wäre es mögilch, diese 2. Schaltung auch an einem CPLD zu 
realisieren? Das hätte den Vorteil, dass ich weitere Teile der 
Logikschaltung dort mit einbringen kann und ggf. leichte Laufzeit 
Korrekturen vornehmen könnte.

Wisst ihr evtl. noch eine bessere Lösung?

Mit Gruß

Schmidt

von EsIstNacht (Gast)


Lesenswert?

Mit einem Interrupt auf die fallende Flanke reagieren und Timer starten, 
der einen Pin für x Durchgänge entsprechend schaltet?

von Jim M. (turboj)


Lesenswert?

Schmidt schrieb:
> ich habe gerade die Aufgabe vor mir liegen, das CLK-Signal eines
> SPI-Busses an einem Atmega in seiner Frequenz zu verdoppeln. Die Daten
> kommen dabei unregelmäßig. Datenrate ist noch nicht fix, wird aber
> moderat um 100-500kHz liegen

Klingt nach einem Problem, nicht nach einer Lösung.
Warum willst Du die CLK verdoppeln? Und wer ist eigentlich SPI Master?

von Axel S. (a-za-z0-9)


Lesenswert?

Schmidt schrieb:

> ich habe gerade die Aufgabe vor mir liegen, das CLK-Signal eines
> SPI-Busses an einem Atmega in seiner Frequenz zu verdoppeln.

Wofür sollte das gut sein? Mir fällt ums Verrecken nicht ein, wofür man 
sowas jemals brauchen sollte. Bevor ich hier irgendwelches Gehirmschmalz 
investieren würde, würde ich davon ausgehen daß jemand das Problem nicht 
verstanden hat und eine vollkommen unsinnige Idee einer "Lösung" hat.

> Welche Möglichkeiten hätte ich? Ich dachte an folgendes:
>
> 1. PLL, das fällt aber aus

genau. Fällt aus.

> 2. XOR-Schaltung. Wurde hier im Forum häufig diskutiert und häufig
> zerrissen.

Vor allem, weil die gar keine wirkliche Frequenzverdopplung macht. Es 
ist bestenfalls eine Impulsverdopplung. Da die Aufgabenstellung nicht 
bekannt ist, kann man unmöglich sagen, ob das "gut genug" ist.

> 2b. Wäre es mögilch, diese 2. Schaltung auch an einem CPLD zu
> realisieren?

Sicher. Aber wenn du schon fragen mußt, wie du eine Verzögerung und die 
XOR-Verknüpfung zwischen dem verzögerten und dem Original-Signal in ein 
CPLD bringen kannst, dann kannst du es vermutlich nicht.

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.