rol Befehl

Gast #203396
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.
Gast #203399
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
Gast #203400
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.
Gast #203401
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
Gast #203402
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 :-).

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren