Hi,
ich mache gerade die zweiten Schritte in VHDL.
Ich versuche ein synthetisierbares Modul (für einen FPGA) zu basteln
welches aus aus einem 64-Bit Wort die höchste besetzte Stelle ermittelt.
Jetzt kann ich das natürlich mit einem floor(ld(X)) Algorithmus machen,
oder ich gehe das ganze rein kombinatorisch an:
1 | if ( x(63) = '1') then
|
2 | y <= 63;
|
3 | elsif( x(62) ='1') then
|
4 | y <= 62;
|
5 | ...
|
Als Anfänger stellt sich mir jetzt die Frage: ist so eine lange Kette in
der Realität noch sinnvoll? Ich kann mir natürlich denken, dass es von
der Taktung und dem FPGA Modell abhängt. Was mich interessiert wäre, ob
es so eine Art praktischen Richtwert gibt, ab wann man sich darüber
Gedanken machen sollte, das Problem in mehreren Zyklen zu lösen. Oder
reicht es, wenn der Logik-Simulator sein OK gibt? Habe leider weder
Erfahrungswerte damit, noch die Hardware um es zu testen.