mikrocontroller.net

Forum: FPGA, VHDL & Co. Überlauf std_logic_vector Synthese


Autor: Gast (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hab von jemanden folgenden Code Erhalten:

signal A,B,C,D : std_logic_vector(9 downto 0);

if (A + B > C + D) then
 ...

Die Werte können ja nur Werte von 0 bis 1023 annehmen.
Was passiert wenn z.b. A=1000d und B=33 ist?
Die Addition beider müsste doch erstmal einen Überlauf sowie 9 ergeben?

Hat da mein Vorgänger Mist gebaut oder erkennt der Synth. das er da 1 
Bit mehr braucht?

Autor: Mathi (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ja, es kann zu einem Überlauf kommen. Ob das allerdings schlimm ist, 
kann man ohne kenntnis der Daten nicht sagen.

Nein, die Synthese erkennt das nicht. Kann sie auch nicht. Schließlich 
kann das ja beabsichtigt sein.

Autor: Gast (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Es ist ein Zwischen Speicher.
A und C wachsen immer weiter an.
B und D sind Burstlängen

C und D sind Daten die bereits rausgeschrieben sind.
A und B sind Daten die noch drinnen sind.
Es sollten immer mehr Daten im Speicher sein als bereits rausgeschrieben 
worden.
Es sollte ja nicht möglich sein daß der Code etwas rausschreibt, was 
noch gar nicht drinnen ist.
Hab das ganze jetzt mal mit hübschen unsigned( ... ) eingewickelt, mal 
sehen was passiert!

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [vhdl]VHDL-Code[/vhdl]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.