Forum: Mikrocontroller und Digitale Elektronik NCO und DDS?


von Jo T. (j_thalbach)


Lesenswert?

Hi,

gibt’s Ähnlichkeiten zwischen NCO und DDS? Mit beiden können Frequenzen 
programmiert werden.

Jo

von Falk B. (falk)


Lesenswert?

Ein DDS IST ein NCO (numeric controlled oscillator)

von O.T. (Gast)


Lesenswert?

Jo T. schrieb:
> gibt’s Ähnlichkeiten zwischen NCO und DDS? Mit beiden können Frequenzen
> programmiert werden.

Ich bin heute schlecht drauf, ich weiß und man soll nichts kommentieren, 
wenn man schlecht drauf ist, weil es sofort ins Meckern umschlägt. Aber 
hier muss mal was gesagt werden:

Ich bin erschrocken über das, was ich in manchen Beiträgen, wie auch 
diesem lesen muss!

Man kann mit NCOs keine "Frequenzen programmieren" und DDS ist nicht in 
der gleichen logischen Domäne wie NCO.

Ein NCO ist ein Objekt, DDS ein Verfahren und Frequenz eine Eigenschaft.

Die Formulierung der Frage ist also in gleich 3 Punkte ein Schmarrn. Sie 
ist sachlich unrichtig, logisch falsch und zudem unrichtig formuliert.

Sinn macht, mit einem NCO mittels DDS mathematische Wellen zu erzeugen, 
die (als eine von vielen Eigenschaften) eine Frequenz besitzen und man 
kann dann solche Wellen mit geeigneter Hardware ausgeben.

Wenn ich sehe, wie schlampig und oberflächlich die heutige 
facebook-Generation durch die Gegend schwafelt, dann haben die entweder 
nie einen Deutschkurs besucht, keinen Deutschlehrer gehabt, keine Schule 
von innen gesehen oder sie waren an der Rütlischule.

Irgendeinen Grund muss es gegeben haben, weswegen sie nicht aussortiert 
wurden.

Wem solche ganz grundlegenden Sachverhalte nicht klar sind und wer nicht 
einmal in der Lage ist, das Grobe und Einfachste zu kapieren, um dann 
eventuell einige unklare Details nachzufragen (und dies auch bitte mit 
vernünftiger Formulierung), dann sollte derjenige wirklich hinterfragen, 
ob er mit Signalverarbeitung, Mathematik und Elektronik die richtige 
Berufswahl getroffen hat!

Ich sage das in vollem Bewusstsein dessen was mir täglich begegnet und 
das ist in den letzten 10 Jahren immer schlechter und degradierter 
geworden. Kein Wunder, dass überall nur noch Mist produziert wird!

von Christopher J. (christopher_j23)


Lesenswert?

O.T. schrieb:
> Ein NCO ist ein Objekt, DDS ein Verfahren und Frequenz eine Eigenschaft.

Naja, man kann DDS als "direct digital synthesis" ausschreiben, dann ist 
es ein Verfahren. Interpretiert man es aber als "direct digital 
synthesizer", dann ist es ebenfalls ein "Objekt".

Die Frage ist ja eher, was eigentlich ein NCO bzw. DCO ist 
(numerically/digitally controlled oscillator). Ist das jetzt einfach ein 
VCO (voltage controlled oscillator) mit einem DAC davor oder darf es 
auch ein bisschen mehr sein (etwa ein ganzer Synthesizer)?

Wenn man als NCO/DCO einfach nur einen DAC mit nachgeschaltetem VCO 
betrachtet, dann ist der größte Unterschied zum DDS (dem Synthesizer!), 
dass bei DDS (dem Verfahren!) grundsätzlich ein DAC am Ausgang sitzt, 
d.h. man hat kontinuierliches Sampling (wenn man denn etwas anderes als 
DC am Ausgang haben möchte). Damit greift natürlich auch Nyquist, 
Shannon und wie sie alle heißen.

Bei der Kombination aus DAC und VCO hat man dagegen den DAC am Eingang 
des VCO. Hier muss nicht kontinuierlich gesamplet werden und die 
Ausgangsfrequenz des VCO ist nicht beschränkt durch die Samplingfrequenz 
des DAC.

Und ja, natürlich ist ein DDS (der Synthesizer!) gewissermaßen 
"digitally controlled", das steckt ja schon in der Abkürzung DDS.

von Egon D. (Gast)


Lesenswert?

Christopher J. schrieb:

> Die Frage ist ja eher, was eigentlich ein NCO bzw. DCO
> ist (numerically/digitally controlled oscillator).

Naja, ich würde sagen, "NCO" ist primär eine Wischi-Waschi-
Marketing-Begriff.

Ein astabiler Multivibrator, in dem ich mit ein paar 4066
die Widerstände umschalte, ist auch ein "numerically
controlled oscillator". Ein Quarzoszillator mit einer
programmierbaren Teilerkette aber auch. Das sagt gar nix.

von Weltbester FPGA-Pongo (Gast)


Lesenswert?

Christopher J. schrieb:
> Naja, man kann DDS als "direct digital synthesis" ausschreiben, dann ist
> es ein Verfahren. Interpretiert man es aber als "direct digital
> synthesizer", dann ist es ebenfalls ein "Objekt".

Uminterpretieren kann man immer. Der Begriff ist aber schon festgelegt.

von Christopher J. (christopher_j23)


Lesenswert?

Weltbester FPGA-Pongo schrieb im Beitrag #5582492:
> Uminterpretieren kann man immer. Der Begriff ist aber schon festgelegt.

Soso, von wem denn?

Hier mal ein Auszug aus einem Paper von Analog Devices:

"Once the buffer register is loaded, the parallel-output delta phase 
register is clocked and the DDS output frequency changes. Generally, the 
only speed limitation to changing the output frequency of a DDS is the 
maximum rate at which the buffer register can be loaded and executed."

Quelle: 
http://www.analog.com/media/en/training-seminars/design-handbooks/Technical-Tutorial-DDS/technical-tutorial-DDS.pdf 
S.9

Hier ist eindeutig die Rede von DDS als einem System oder Objekt, 
welches eine Ausgangsfrequenz besitzt die man verändern kann. Aber was 
wissen schon die Jungs von AD von DDS... Die sollten erstmal eine 
ordentliche Schule besuchen :p

von Marc (Gast)


Lesenswert?

>Naja, ich würde sagen, "NCO" ist primär eine Wischi-Waschi-
>Marketing-Begriff.

Nein, der Begriff NCO ist ein Standard Begriff in Systemen mit digitaler 
Signalverarbeitung.
Er muss auch keinen DAC am Ausgang haben, sondern das Signal des NCOs 
kann auch digital weiter verarbeitet werden ( z.B. digitale Mischstufen 
).

Wikipedia klärt die Begriffe auch etwas:
https://de.wikipedia.org/wiki/Digitally_Controlled_Oscillator

von W.S. (Gast)


Lesenswert?

O.T. schrieb:
> hier muss mal was gesagt werden:

..und das hast du sehr schön auf den Punkt gebracht.

Hoffentlich nützt es was.

W.S.

von J. S. (engineer) Benutzerseite


Lesenswert?

Aus meiner Sicht ist die Verwendung des Begriffs NCO missverständlich, 
denn dort oszilliert meistens nichts, jedenfalls nicht im eigentlichen 
Sinne. Unter einem Oszillator versteht man in der Elektrotechnik und der 
Physik ein selbstschwingendes System, das aufgrund seiner aktuellen 
Bedingungen der gedämpften DGL zweiter Ordnung folgt.

Will man das bauen, muss man es entsprechend formulieren, d.h. einen 
Schwingkreis erzeugen. Dessen Parameter wären dann Trägheit/Masse, 
lineare und nichlineare Reibung infolge von s/v, die Federkonstante und 
die Zustände Position, Geschwindigkeit und Beschleunigung. 
VA-Synthesizer arbeiten so: Einmal mit "Energie" aufgeladen, schwingen 
sie gedämpft aus.

Auf das DDS-Prinzip kann man das aber nicht anwenden, weil dort mit 
einer einzigen Funktion direkt eine Amplitude aus einer Phase gewonnen 
wird. D.h. die Phase steuert den Wert ohne Rücksicht auf den "Zustand" 
des Oszillators. Konkret sind die jeweilige Phasenänderung und die 
Amplitude komplett unbedeutend und führt man der DDS keine Information 
mehr zu, dann gibt sie auch nichts mehr aus, sondern hält den Wert.

Informationstheoretisch lässt sich ein Oszillator als IIR und eine DDS 
als FIR klassifizieren und deshalb ist ein NCO, wie er meistens 
definiert ist, kein echter Oszillator. Er simuliert lediglich eine 
Oszillation und dies auch nur dann, wenn man die Phase entsprechend 
linear treibt. Schiebt man die z.B. nicht linear voran, sondern 
rückgekoppelt oder oszillierend, gibt es z.B. Frequenz/Phasenmodulation: 
http://96khz.org/htm/fmsynthesis2.htm

Ich nehme an, man hat den Begriff NCO kurzerhand aus der Analogtechnik 
übernommen und diesen Denkfehler eingebaut, als man sich wie bei dem NCA 
(dem numerisch gesteuerten Verstärker, der sich am VCA, dem 
Amplitudenmodulator orientiert) auf den VCO bezog und jeweils einfach V 
durch N ersetzt hat. Wie man am gelinkten Bildchen sieht, habe ich es 
damals auch selber so sprachlich so übernommen :-)

Eigentlich müsste es aber NC-Wavegen oder NC-Sinegen und meine Module 
heissen inzwischen auch so. Der echte Oszillator ist z.B. der PCO 
(parameter controlled oscillator) und er schwingt mit den o.g. 
Parametern. Das Ganze hat durchaus Relevanz:

Bei Schwingungserzeugung oder -verfolgung ist das ein eklanter 
Unterschied im Frequenzverhalten, ob man die Amplitude mit den 
Energieverlusten auslaufen lässt oder bei konstantem Phasenvortrieb 
künstlich senkt. Im einen Fall ändert sich die Frequenz scheinbar im 
anderen tatsächlich.

von Ralf D. (doeblitz)


Lesenswert?

Jürgen S. schrieb:
> Informationstheoretisch lässt sich ein Oszillator als IIR und eine DDS
> als FIR klassifizieren und deshalb ist ein NCO, wie er meistens
> definiert ist, kein echter Oszillator.

Wie würdest du das bei einer PLL sehen, bei der man numerisch den 
Teilfaktor in der Rückführung einstellen und damit die Frequenz des VCOs 
steuern kann? Klar, der eigentliche Oszillator ist da ein VCO, aber wenn 
man das ganze Konstrukt als Block betrachtet (Referenzsignal+numerische 
Daten rein, analoges Signal raus), dann wäre das doch ein NCO, oder?

von Bernd S. (wirrer_haarschopf)


Lesenswert?

War ne Weile nicht hier. Aber nach diesem Thread fühle ich mich sofort 
wieder heimisch... ;)

von Falk B. (falk)


Lesenswert?

@Ralf D. (doeblitz)

>Daten rein, analoges Signal raus), dann wäre das doch ein NCO, oder?

Ja sicher. NCO ist ein allgemeiner Oberbegriff, so wie Auto.

von Marc (Gast)


Lesenswert?

>Ja sicher. NCO ist ein allgemeiner Oberbegriff, so wie Auto.

Das hätte ich auch so gesehen. Aber in der Wikipedia wird der NCO immer 
als Teil der PLL gesehen. Die Definition scheint eher die rein digitale 
Ausführung zu meinen:

All digital PLL (ADPLL)
Phase detector, filter and oscillator are digital. Uses a numerically 
controlled oscillator (NCO).

( aus https://en.wikipedia.org/wiki/Phase-locked_loop )

Falls Du irgendwo anders eine "belastbare" Definition findest, bitte 
Link posten.

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.