Forum: FPGA, VHDL & Co. rol Befehl


von AxelMeineke (Gast)


Lesenswert?

Guten Morgen...

Ich habe gerade ein Problem mit dem befehl rol. Ich muss gestehen, das
ich ihn  bis jetzt immer schön umgangen habe, da ich es nie geschafft
habe ihn einzusetzen. Aber ich dneke mal ihr könnt mir da
weiterhelfen.
Ich habe ein Signal (std_logic_vector(3 downto 0) und im inhalt den
Wert "0001". Nun möchte ich die 1 immer reihum durch das
Schieberegister schieben. Mit der Befehlszeile
Sreg <= Sreg rol 1;
bekomme ich immer die Fehlermeldung: rol can not have such operants in
this context.
Aber die 1 musdoch zur bestimmung der Schiebeschritte eingetragen
werden. Wenn ich die 1 weglassefunktionieerts auch nicht.

Danke für eure Hilfe.

von Sven Johannes (Gast)


Lesenswert?

Moin...

ist nur für bit_vector definiert.

--
 Sven Johannes

von AxelMeineke (Gast)


Lesenswert?

Ups... thx...

von Michael (Gast)


Lesenswert?

Es geht aber ganz einfach

Du must einfach nur folgendes machen:

Sreg <= Sreg(2 downto 0) & Sreg(3);

Dieser Befehl nimmt den Vektor (2 downto 0) und hängt an der rechten
Seite (also das neue LSB-Bit) das alte MSB-Bit an.

Somit kannst Du die '1' durchschieben. (benutze dafür aber eine
Takt)

MfG

Michael

von AxelMeineke (Gast)


Lesenswert?

@ Michael... genau so habe ich es bis jetzt auch immer gelöst. Aber mir
wurde geasagt, das es von der Umsetzung in die Logik nicht so gut sei
als mit dem ROL Befehl. deswegen qwollte ich das auch mal vergleichen,
wie die Umsetzung der beiden Möglichkeiten ausschauen.

von Michael (Gast)


Lesenswert?

Hallo Axel

Der Befehl den Du verwenden willst, wurde erst mit dem VHDL93-Standard
eingeführt. Du solltest deshalb mal in den Optionen Deines Tools
nachschauen, ob dieser auch eingestellt ist. (Deine Erfahrungen
bezüglich der Geschwindigkeit würden mich auch sehr interessieren
kannst  ja denn mal posten)

Grüsse

Michael

von AxelMeineke (Gast)


Lesenswert?

Jupp... ich werd es heute oder morgen malgenauer betrachten bezüglich
Platzverbrauch und Geschwindigkeit. Das mit der Synthese ist ja am
besten nach dem Prinzip Trial and error zu erforschen :-).

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.