Artikel-ID: 000078432 Inhaltstyp: Fehlerbehebung Letzte Überprüfung: 12.08.2013

Warum bietet meine VHDL-Array-Slice-Zuweisung innerhalb einer Schleife nicht das erwartete Simulationsergebnis?

Umgebung

  • Simulation
  • BUILT IN - ARTICLE INTRO SECOND COMPONENT
    Beschreibung

    Wenn Sie ein Array-Slice mit einer Schleife zuweisen und andere Elemente in einem anderen Prozess zuweisen, können Sie feststellen, dass die außerhalb der Schleife zugewiesenen Elemente zu "X" oder "U" führen, um die VHDL-Norm zu erfüllen.

    Dieses Simulationsergebnis kann auftreten, da der Simulator benötigt wird, um Treiber für das längste statische Präfix des Signals zu erstellen. Dies bedeutet, dass der Simulator erforderlich ist, um Treiber für jedes Element des Arrays zu erstellen, wenn das Array mit einer Variable indiziert wird.

    Lösung

    Um dieses Simulationsverhalten zu vermeiden, weisen Sie einem Array im selben Prozess wie die Schleife nur Werte zu.

    Weitere Informationen darüber, wie Treiber mit Signalzuweisungen verbunden sind, finden Sie unter VHDL IEEE-Standard 1076-1987, Abschnitt 9.2.1 oder 1076-1993, Abschnitt 12.6.1.

    Zugehörige Produkte

    Dieser Artikel bezieht sich auf 1 Produkte

    Intel® programmierbare Geräte

    Der Inhalt dieser Seite ist eine Kombination aus menschlicher und computerbasierter Übersetzung des originalen, englischsprachigen Inhalts. Dieser Inhalt wird zum besseren Verständnis und nur zur allgemeinen Information bereitgestellt und sollte nicht als vollständig oder fehlerfrei betrachtet werden. Sollte eine Diskrepanz zwischen der englischsprachigen Version dieser Seite und der Übersetzung auftreten, gilt die englische Version. Englische Version dieser Seite anzeigen.