mikrocontroller.net

Forum: FPGA, VHDL & Co. Phasenmodulation o.ä. mit FPGA machbar


Autor: flint (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

ich frage mich schon längere Zeit, ob mit FPGA HW etwas vergleichbares 
zu analogen Modulationen machbar ist. Als konkretes Beispiel: Ich habe 
eine SPI Schnittstelle, auf der Daten für mehrere DACs verschickt 
werden. Am Ende sollen alle DACs zeitgleich gesetzt werden, dafür gibt 
es jetzt ein Signal. Schön wäre es, wenn man die dafür benutzte Leitung 
einsparen und dieses eine Signal, auf dem alle paar us mal ein einzelner 
Puls im Bereich 40 ns Länge passiert, zb in das Taktsignal 
reinmodulieren könnte. Mit meinem beschränkten Analogelektronikwissen 
hätte ich da an etwas wie eine Phasenmodulation gedacht, aber dafür 
braucht es vmtl HW (insbesondere PLLs), die es im FPGA nicht gibt. Oder 
kann man sich so etwas bauen? Die Taktfrequenz ist mit bis zu >= 100 MHz 
aber wohl zu hoch, um das Signal überabzutasten und dann was digital-PLL 
artiges zu bauen.

Im konkreten Fall würde es sich um Altera FPGAs handeln, ein Stratix 3 
und ein Cyclone 3.

lg
flint

Autor: Lothar Miller (lkmiller) (Moderator) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
flint schrieb:
> Am Ende sollen alle DACs zeitgleich gesetzt werden, dafür gibt
> es jetzt ein Signal.
Wie sollen denn die DACs das "aufmodulierte" Signal erkennen können?

Wenn du den CS# des DACs dektivierst, dann kannst du mit der Taktleitung 
machen, was du willst. Und natürlich auch etwas hochfrequentes 
aufmodulieren, dass dann mit einem FPGA (beim DAC) erkannt, ausgewertet 
und als Datenübernahmesignal an den DAC gegeben werden kann...

Autor: Robi (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Nimm einen ManchesterCodierung und den doppelten Takt, um noch Info 
reinzupacken oder mache es gleich richtig und steuere synchrone Vorgänge 
voll synchron, also zeitgesteuert und nicht ereignissteuert.

Autor: Lothar Miller (lkmiller) (Moderator) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Robi schrieb:
> Nimm einen ManchesterCodierung und den doppelten Takt
Und wie sollen die DACs damit klarkommen?
Das SPI-Interface zu denen hin ist ja offenbar fest...

Autor: flint (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

sorry, länger nicht hier reingeschaut und außerdem nicht klar 
ausgedrückt, um was es geht: Ein FPGA schickt Daten über eine SPI 
Schnittstelle an einen anderen, der diese Daten nun an mehrere DACs 
weiterverteilt. Für das "DAC setzen" Signal ist bisher eine eigene 
Leitung verbraucht, schön wäre es, wenn dieser einmalige Puls, der 
vergleichsweise selten vorkommt, ins Taktsignal moduliert werden könnte. 
In einer analogen Modulation könnte man das wohl auf verschiedene Weisen 
erreichen, Amplituden-, Frequenz- oder Phasenmodulation sind hier wohl 
die üblichen Verdächtigen (von denen es meines Wissens nun verschiedene 
Varianten und Kombinationen gibt). Die Frage ist, ob man FPGA-interne HW 
verwenden kann, um zb eine Phasenmodulation dieses Pulses über das 
Taktsignal zu erreichen, bei Taktraten von >= 100 MHz. Auf der 
Ausgangsseite könnte man ein Taktsignal mit 180° Phasensprüngen wohl 
durch ein DDR Register erreichen, bei dem für die Modulation die 
Eingänge umgeschalten werden. Auf der Eingangsseite fällt mir momentan 
keine Lösung ein.

Ich hoffe, ich habe mich verständlicher ausgedrückt.

lg
flint

Autor: Lothar Miller (lkmiller) (Moderator) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
flint schrieb:
> Auf der Eingangsseite fällt mir momentan keine Lösung ein.
Das wäre aber eigentlich die spannendere Seite:
ein möglichst kurioses Signal bekommt man relativ leicht erzeugt. Es muß 
aber auch ausgewertet werden können...  :-/

flint schrieb:
> Ein FPGA schickt Daten über eine SPI Schnittstelle an einen anderen
Und du hast Zugriff auf Beide?

Wie hoch darf der Triggerjitter maximal sein?

Ich könnte mir z.B. vorstellen, den SPI-SS inaktiv zu setzen, und dann 
mit der Taktleitung eine steigende Flanke (oder auch 2 hintereinander) 
zu erzeugen. Diese Flanke wäre dann das Triggersignal für das Setzen der 
DACs.

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [vhdl]VHDL-Code[/vhdl]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.