Gast
#2595081
Hallo, ich bin auf der Suche nach einer schnellen und effizienten Lösung zur Realisierung einer Rampenfunktion von Grenzwert G1 bis Grenzwert G2. Ich habe 24bit als Eingang und 12bit als Ausgang. Wäre eigentlich ein klassischer Fall für eine LUT, aber die Grenzwerte sind variabel und die LUT frisst mit 24x12bit auch recht viel Platz. Also bleibt nur die Variante die Rampenfunktion abhängig der Granzwerte zu berechnen. Eigentlich könnte man ja prinzipiell so vorgehen:
1 | |
2 | |
3 | |
4 | |
5 | |
6 | |
7 | |
8 | |
9 | |
10 | |
11 | |
12 | |
13 | |
Nun habe ich natürlich die in VHDL eher unschönen Rechenarten Multiplikation und Division dabei. Man könnte alles ungenauer machen und alles auf 2er Potenzen festnageln und dann nur noch shiften, aber gerade bei größeren Abständen der Grenzwerte (im worst case Rampe vom minimalen zum maximalen Eingang) dürfte es sehr ungenau werden. Gibt es vielleicht eine Lösung, die nur mit shiften und Addition auskommt? Könnte mir vorstellen, dass solche Rampenfunktionen häufiger Anwendung finden (Schrittmotoren?). Vielen Dank! Alex