23.12.2010, 08:08 PM
(aus meiner Zeit, als wir noch Bildverarbeitung machten) ist mir noch der Bresenham Algo in Erinnerung.
Im Ergebnis ist es so, dass man Multiplikation und Division auf Addition und Comparator reduzieren kann.
Ich vermute daher, dass man den minimalen Wandler doch noch sparsamer hinkriegt.
Grobe Idee:
i) "zeichne eine Komparatorlinie", verwende dazu den o.a. Alogorithmus.
Das lässt sich mit Addition, Vergleichen und ein paar Countern hinkriegen. Bei weiterer Vereinfachung ist dann nur noch ein Counter.
ii) vergleiche das das Dig-Signal mit dem Komparator und leite die PWN daraus ab.
Was man sicher noch braucht ist eine Null-Erkennung, sonst verbrät der Verstärker bei Nichtstun unnötig Energie.
Irgendwelche Schutzmechanismen wie "overheat" braucht man IMHO auch.
Erfahrungsgemäß sind verschiedene Timezones immer kritisch, weil man sich da leicht verhaspelt. So gesehen müsste man die digitalen Eingangsclock über eine PLL zum Systemclock machen. Da sowas immer Geld und Bauteilaufwand bedeutet würde ich es lieber mit FIFOs im FPGA und eben doch zwei Timezones machen.
Schön wäre natürlich ein FPGA mit selbst mitgebrachtem Flash, da ist die Schaltung einfacher und booten tut es auch schöner.
Im Ergebnis ist es so, dass man Multiplikation und Division auf Addition und Comparator reduzieren kann.
Ich vermute daher, dass man den minimalen Wandler doch noch sparsamer hinkriegt.
Grobe Idee:
i) "zeichne eine Komparatorlinie", verwende dazu den o.a. Alogorithmus.
Das lässt sich mit Addition, Vergleichen und ein paar Countern hinkriegen. Bei weiterer Vereinfachung ist dann nur noch ein Counter.
ii) vergleiche das das Dig-Signal mit dem Komparator und leite die PWN daraus ab.
Was man sicher noch braucht ist eine Null-Erkennung, sonst verbrät der Verstärker bei Nichtstun unnötig Energie.
Irgendwelche Schutzmechanismen wie "overheat" braucht man IMHO auch.
Erfahrungsgemäß sind verschiedene Timezones immer kritisch, weil man sich da leicht verhaspelt. So gesehen müsste man die digitalen Eingangsclock über eine PLL zum Systemclock machen. Da sowas immer Geld und Bauteilaufwand bedeutet würde ich es lieber mit FIFOs im FPGA und eben doch zwei Timezones machen.
Schön wäre natürlich ein FPGA mit selbst mitgebrachtem Flash, da ist die Schaltung einfacher und booten tut es auch schöner.