Hallo alle zusammen. Ich habe folgendes Problem. Ich benötige eine Modulo-32 Addition. Das bedeutet, wenn ich 2 (oder mehrere) 32-bit lange Werte addiere, brauche ich wieder nur ein 32-bit Ergebnis. Der eventuelle Übertrag fällt weg. Meine Idee war: 1. Schritt: Die binären 32-bit-Werte in Integer-Werte umzuwandeln. 2. Schritt: Die Integer-Werte addieren. 3. Schritt: Das Ergebnis wieder in einen binären Wert umwandeln. (Eventuell bekomme ich so 33-bit oder noch größere Werte heraus). 4. Schritt: Nur die unteren 32 Bit nehmen. Somit müsste ich ja die Modulo-32-Addition erreicht haben. Meine Frage ist, gibt es eine einfachere Lösung des Problems, da dieser Vorgang ziemlich viel Platz benötigt, vor allem da ich auch 4-fache Additionen habe. Vielleicht kennt VHDL ja eine Funktion für diese Opeartion die mir noch unbekannt ist. Im Internet findet man über höhere Modulo-Operationen überhaupt nichts. Für Antworten wäre ich dankbar. Gruß Thorben
Wenn Du einen 32-Bit Addierer nimmst, macht der automatisch modulo 32, da der Übertrag vom MSB sozusagen ins Leere geht. Gruß Jörg
@Joerg Wolfram
>Wenn Du einen 32-Bit Addierer nimmst, macht der automatisch modulo 32,
Ein 32-Bit Addierer addiert Modulo 2^32!
Für eine Modulo 32 Operation braucht es nur einen 5-Bit Addierer.
Allgemein gilt, dass alle binären Oprationen Modulo 2^N augeführt
werden, wobei N die Bitbreite ist.
MFG
Falk
Oops, mein Fehler. Ich meinte eine 2^32 Modulo addition. Danke für eure Antworten Gruß Thorben
@Falk stimmt, da habe ich mich verschrieben, muss natürlich 2^32 heissen. Gruß Jörg
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.