Was hast Du denn vor?
"NCO" ist erstmal alles: eine Frequenz, die Du über die Timerfunktion
eines µC generieren läßt, ein programmierbarer Zählerbaustein oder eine
Softwarefunktion.
Ich habe mal (allerdings auf Chip-Ebene, in einem ASIC) einen PLL mit
NCO gebraucht. Lief darauf hinaus, daß meine Phasenregelung mir einen
16-Bit-Wert lieferte, der dann in einem Akkumulator aufsummiert wurde.
Das höchste Bit lieferte den Ausgang.
(Also z.B. Einstellwert 7000 -> nach 5 Takten kippt das Ausgangsbit)
Die Methode hat den Vorteil, daß die effektive Auflösung höher ist als
die interne Frequenz: wenn die Periodenlänge auf 10,1 Takte eingestellt
ist, bekommst Du 9 Perioden mit 10 Takten und eine mit 11 Takten; Du
bleibst also auf Dauer in Phase.
Aber natürlich hängt es total davon ab, was Du überhaupt willst. Wenn
Du es in Software machst, wird es immer ein Kompromiß zwischen
Auflösung und maximaler Frequenz.