Forum: FPGA, VHDL & Co. Endianess von std_logic_vector


von Matthias (Gast)


Lesenswert?

Hallo,

wir haben da ein zugeliefertes Modul, bei dem die Endianess über den Bus 
aus unserer Sicht nicht stimmt und das hat uns zu grundsätzlichen 
Überlegungen bzgl VHDL und Endianess bei std_logic_vector geführt.

Ich hab das bisher als VHDL Programmierer nicht sehr ernst genommen, 
solange bei einem parallelen Bus das richtige an die Ausgangspins 
geführt wird, hat es für mich gepasst. Man findet aber im Netz zb im pdf

http://www.asic.uwaterloo.ca/files/VHDL_Tutorial_3.pdf

auf Folie 7 Kommentare wonach ein downto Vektor little-endian ist 
während ein to Vektor big-endian ist. Das macht aber aus meiner Sicht 
nur beschränkt Sinn, weil die Endianess ja auf Byte-Ebene greift und mit 
der Bitanordnung im Byte nichts zu tun hat.

Insofern meine Frage: Was haltet ihr von dieser Definition der Endianess 
mit std_logic_vector und wie haltet ihr es mit der Endianess in einem 
Design?

von Morin (Gast)


Lesenswert?

> Insofern meine Frage: Was haltet ihr von dieser Definition der Endianess
> mit std_logic_vector und wie haltet ihr es mit der Endianess in einem
> Design?

Endianness definiert die Abbildung von N-Byte-großen Datentypen auf N 
Bytes. std_logic_vector ist erstens ein beliebiger Bitvektor (nicht 
notwendigerweise ein Vielfaches von 8 Bits). Zweitens wird dieser Vektor 
nicht auf Bytes abgebildet, weshalb der Begriff "Endianness" nicht 
anwendbar ist.

> [...] auf Folie 7 Kommentare [...]

Der Schreiberling dieser Folien hat schlicht keine Ahnung, was 
Endianness bedeutet.

von Matthias (Gast)


Lesenswert?

Gut, das entspricht ja meiner Ansicht, dass diese Defition nicht 
wirklich Sinn macht.

von Lothar M. (Firma: Titel) (lkmiller) (Moderator) Benutzerseite


Lesenswert?

> ... wie haltet ihr es mit der Endianess in einem Design?
Wenn du damit die (falsch als Endianess definierte) Bitausrichtung 
innerhalb eines Vektors meinst: MSB downto LSB

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.