mikrocontroller.net

Forum: FPGA, VHDL & Co. Keine Konvertierung in std_logic_vector möglich


Autor: Hans-Werner (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
data_in wird als natural in einer Schleife hochgezählt.
Also 0,1,2,3 usw.

signal data_in, data_out : natural range 0 to 2 ** 
data_width_testbench-1;

data_in_cam welches eine Zeile tiefer ebenfalls in der Schleife steht 
wird auch hochgezählt, allerdings stehen anstelle von einsen X im 
std_logic_vector.
Also hier mal binär: 00000000, 0000000X, 000000X0
Warum das ? Ich komme nicht dahinter !
Warum funktioniert die Umwandelung in std_logic_vector nicht ?
Ich erhalte keinen Error und kein Warning.

signal data_in_cam : std_logic_vector(data_width_testbench-1 downto 0) 
:= (others => '0');

Innerhalb der Schleife:

data_in <= data_in + 1;
data_in_cam <= 
std_logic_vector(to_unsigned(data_in,data_width_testbench));

Hilfe ich bin zu blöd !

Autor: Morin (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Schau mal durch den restlichen Code, ob es irgendwo eine weitere 
Zuweisung zu data_in_cam gibt, die parallel unter denselben bedingungen 
ausgeführt wird. Ich tippe auf sowas:
data_in_cam <= (others => '0');
Könnte ein Fehler in der Reset-Bedingung sein.

Autor: Hans-Werner (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Oh, grosser Meister du hattest recht.
Es erfolgte eine weitere Initialisierung in einem anderen Prozess der 
statt zu einem späterem Zeitpunkt, zum gleichen Zeitpunkt ausgeführt 
wurde.
Fragt sich jetzt warum ?
Hilfreich wäre eine Möglichkeit sich in einer Übersicht die parallele 
Ausführung einzelner Prozesse anschauen zu können. Sowas wie eine 
Timeline.
Ist das in der Vollversion ISE Foundation möglich ?
Welche Debugmöglichkeiten bietet ISE Webpack ?
So wie in anderen Entwicklungsumgebungen ?
Ich kann Breakpoints setzen und das Programm schrittweise ausführen.
Wie kann ich zwischendurch Signale setzen und abfragen ?
Oder wie kann ich abfragen von welchen Prozessen ein Signal verändert 
wird ?

Danke

Autor: Morin (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Sorry, mit dem Simulator kenne ich mich nicht aus.

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.