mikrocontroller.net

Forum: FPGA, VHDL & Co. DDS im CPLD aufbauen


Autor: Anton (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

hat schon mal jemand einen DDS in einem CPLD realisiert, oder hat jemand 
eine Idee wie das funktionieren könnte?

Autor: Fpga Kuechle (fpgakuechle) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Was ist für Dich DDS?

Autor: Anton (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ein Direct Digital Synthesizer.

Autor: falk (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@ Anton (Gast)

>hat schon mal jemand einen DDS in einem CPLD realisiert, oder hat jemand

Jain.

>eine Idee wie das funktionieren könnte?

Nun, gaenauso wie DDS in den ASICs von Analog Devices & Co. Die Frage 
ist halt, ob du ein vollständige DDS mit Sinustabelle machen willst oder 
ob dir eine DDS mit Rechteckausgang reicht. Dann kannst du einfach des 
MSB deines Akkumulators nehmen und bist fertig. Ne Sinustabelle im CPLD 
wird schwierig, das ist eher was für ein FPGA.

MfG
Falk

Autor: Andreas Schwarz (andreas) (Admin) Benutzerseite Flattr this
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Mit externem ROM/RAM sollte das kein Problem sein: ein paralleler 
Eingang für die Schrittweite, ein Akkumulator, ein Adressausgang und 
etwas Logik um die Steuersignale für den Speicher zu erzeugen.

Autor: Anton (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

es sollte schon ein vollständiger DDS mit hinterlegter Sinustabelle 
werden. Das ganze ist leider eine Preisfrage, ein kleiner FPGA kostet 
leider ca. 7 Euro. Mit einem Mikrocontroller(ATmega32 16Mhz) komme ich 
nicht über 1Mhz wenn es noch einigermassen sauber sein muss. VCO's  z.B 
von Anlog Devices sind auch zu teuer. Waran scheitert es bei den CPLD's, 
der geringe Speicherplatz?

Autor: Fpga Kuechle (fpgakuechle) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
ein CPLD unter 7 € dürfte kaum Platz für eine sinustabelle haben. 
Vielleicht CPLD + kleinen ROM?

Autor: Anton (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Gut, also der Speicherplatz.

Also sollte ich die Sinustabelle im ROM hinterlegen. Mit dem parallelen 
Eingang die auszugebende Frequenz bestimmen. Und das ganze als PWM oder 
auf ein R2R-Netzwerk geben?

Autor: Andreas Schwarz (andreas) (Admin) Benutzerseite Flattr this
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Je nach Anforderungen an das Analogsignal PWM, R2R oder ein "richtiger" 
DA-Wandler. Ich würde mal mit R2R anfangen.

Autor: TheMason (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
dann brauchst du viele ios (steuereingang, rom adr+data, und ein paar 
zusätzliche ios)...

Autor: TheMason (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
ist recht grenzwertig, da cplds auch nicht gerade billig sind ...

Autor: falk (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Dann nehmt doch einfach enen fertigen DDS-IC. Plug & Play und billig.
Man muss das Rad nciht immer neu erfinden.

MfG
Falk

Autor: Anton (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

ich glaube das wird doch zu aufwendig mit der ganzen Peripherie.

@Falk

Wie günstig gibt es DDS-IC's? Ich habe nur welche um die 12-15 Euro 
gefunden.

Autor: Falk Brunner (falk)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@ Anton (Gast)

>Wie günstig gibt es DDS-IC's? Ich habe nur welche um die 12-15 Euro
>gefunden.

Keine Ahnung, aber Analog Devices hat ja mittlerweile eine gigantische 
Palette.
Fragt sich nur, wo man die in Einzelstückzahlen bekommt.

MfG
Falk

Autor: Christoph Kessler (db1uq) (christoph_kessler)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Wir hatten hier schon einen Thread zu schnellen Addierern, dem 
Hauptbestandteil eines DDS
Beitrag "CLA-Addierer -> fmax nur 17Mhz"
Wenn es keine Spezialanforderungen gibt, ist die Programmierung im CPLD 
oder FPGA immer der teurere Weg gegenüber fertigen DDS-Chips. Schnelle 
Addierer brauchen viel Platz, wenn sie so breit wie bei AD9835 u.ä. ( 32 
Bit) sind.

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.