Forum: FPGA, VHDL & Co. Simple Frage zu "downto"


von simple (Gast)


Lesenswert?

Hallo,

kurze Anfänger-Frage:

gibt es einen Unterschied zu folgenden Anweisungen:

1) xout(15 downto 0)  <= xin_r;
2) xout(15 downto 00) <= xin_r;

In Codeschnipseln findet man mal die eine Anweisung mit downto 0 und mal 
die mit  downto 00.

THX

von Georg A. (georga)


Lesenswert?

Fipptehler.

von Vanilla (Gast)


Lesenswert?

simple schrieb:
> 1) xout(15 downto 0)  <= xin_r;
> 2) xout(15 downto 00) <= xin_r;

Beides gleichwertig.
Mehrere führende Nullen findet man gehäuft bei Code- oder 
Templategenerierung mit Tools (welche z.B. Pinnamen aus Netzlisten 
übernehmen).

Gruß

Vanilla

von genervt (Gast)


Lesenswert?

Sehr viel "Null" ist fast schon ein kleines bisschen "Eins". ;)

von Augen_auf (Gast)


Lesenswert?

Ja, da ist ein Unterschied: Beim 1. Mal ist es eine, beim zweiten Mal 
sind da 2 Nullen ;-)

von Duke Scarring (Gast)


Lesenswert?

simple schrieb:
> In Codeschnipseln findet man mal die eine Anweisung mit downto 0 und mal
> die mit  downto 00.

Damit sieht der Code vielleicht ein kleines bisschen besser aus, wenn es 
mal ein paar mehr Bit werden:
1
  xout(15 downto 00) <= xin_r(0);
2
  xout(31 downto 16) <= xin_r(1);
3
  xout(47 downto 32) <= xin_r(2);
4
  xout(63 downto 48) <= xin_r(3);

Duke

von Augen_auf (Gast)


Lesenswert?

genervt schrieb:
> Sehr viel "Null" ist fast schon ein kleines bisschen "Eins". ;)

Das müsstest Du uns erst mal beweisen ;-)

von Petger (Gast)


Lesenswert?

Duke Scarring schrieb:
> Damit sieht der Code vielleicht ein kleines bisschen besser aus

wie crazy!
1
xout(015 downto 000000) <= xin_r(0);
2
xout(0031 downto 00016) <= xin_r(1);
3
xout(00047 downto 0032) <= xin_r(2);
4
xout(000063 downto 048) <= xin_r(3);

von PittyJ (Gast)


Lesenswert?

xout(0031 downto 00016) <= xin_r(1);

Die führenden Nullen gehen wohl in VHDL. Aber Vorsicht, falls man das in 
C benutzt. Dann schaltet der Compiler auf Oktalzahlen um.

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.