Forum: FPGA, VHDL & Co. Teilbereich eines Ausdruckes "direkt" herausschneiden


von Stefan H. (stefanhanke)


Lesenswert?

Hallo,

ich möchte das Folgende in VHDL umsetzen:
1
mult <= (a*b)(x downto y)
So ein Konstrukt gibt es leider nicht.
a und b sind Festkomma-Zahlen, das Ergebnis ist doppelt so breit, und 
ModelSim mag es nicht ;-)

Meine jetzige "Lösung" ist absoluter Humbug (zusätzliche 
Pipelinestufe)...

 -- stefan

von Matthias (Gast)


Lesenswert?

Wenn es innem Prozess ist nimm halt eine Variable, in der du das 
Ergebnis speicherst:
variable = a*b;
Und aus der dann das Ergebnis ausschneiden: mult <= variable(x downto y)

Wenns nicht innem Prozess ist dann das gleiche mit 2 Signalen.
Schön ists nicht, aber zusätzliche Stufen sollte es auch nicht ergeben.

von Stefan H. (stefanhanke)


Lesenswert?

Danke :)
 -- stefan

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
Noch kein Account? Hier anmelden.