Artikel-ID: 000085872 Inhaltstyp: Fehlerbehebung Letzte Überprüfung: 08.11.2017

Warum ermöglicht die Schreib-Aktivierung keine Durchsetzung auf veralteten BusS nun blockweise?

Umgebung

    Intel® Quartus® Prime Pro Edition
    DSP Builder for Intel® FPGAs Pro Edition
BUILT IN - ARTICLE INTRO SECOND COMPONENT
Beschreibung

Aufgrund eines Problems in der DSP Builder Advanced Blockset Version 17.1 und früher können Sie die folgenden Fehler sehen, wenn Simulink® andere Bus-Blocks vor dem BusStimulus-Block ausführt.

  • Die Write Enable auf dem veralteten BusSehme-Block wird niemals geltend machen
  • Andere Ausgänge auf allen Bus-Blocks treten einen Taktzyklus später auf.

In DSP Builder sind die Bus-Blocks (z. B. der RegField-Block) vom BusStimulus-Block abhängig: zwischen ihnen befindet sich ein kabelgebundenes Kabel. Daher sollte Simulink die BusStimulus-Blocks vor allen anderen Bus-Blocks ausführen. Simulink weiß diese Abhängigkeit jedoch nicht, so dass Simulink diese Blocks in beliebiger Reihenfolge ausführen kann.

Die Ausführungsreihenfolge der Bus-Blocks kann sich aufgrund von nicht verwandten Änderungen am Design ändern. Ein Design, das sich auf die Bus-Latenz für die automatische Verifizierung stützte, könnte beispielsweise versagen, da Sie einen zusätzlichen Scope-Block hinzugefügt haben. Der zusätzliche Block kann die Ausführungsreihenfolge ändern, indem ein RegField-Block vor den BusStimulus-Block gestellt wird, wodurch die Latenz zwischen ihnen geändert wird.

Lösung

Um dieses Problem zu umgehen, setzen Sie die Priorität des BusStimulus-Blocks auf einen Wert, der niedriger als der Subsystem-Block ist, der das DSP Builder-Design enthält. Setzen Sie beispielsweise den BusStimulus-Block Priorität auf 0 und den DSPBA-Subsystem-Block auf 1. Simulink sollte den BusStimulus-Block vor allem im Subsystem ausführen, was einen konsistenten Busbetrieb garantiert.

Um die Ausführungsreihenfolge anzuzeigen: wählen Sie in der Hauptmenüleiste Display -> Blocks -> Die Ausführungsreihenfolge von 2000 Blöcken aus.

Um die Priorität eines Blocks festzulegen: Klicken Sie mit der rechten Maustaste auf den Block, und wählen Sie Eigenschaften: das Feld Priorität befindet sich im Register Allgemein .

Hinweis: Prioritätswerte sind der Ausführungsreihenfolge ähnlich, insofern dass ein niedrigerer Wert zuerst ausgeführt werden muss. Prioritätswerte unterscheiden sich jedoch von der Ausführungsreihenfolge, da sie keine Subsysteme umfassen. Dies ist der Grund für die Anforderung, die Priorität auf dem DSP Builder-Subsystem anstatt auf die darin enthaltenen Bus-Blocks festzulegen.

Zugehörige Produkte

Dieser Artikel bezieht sich auf 1 Produkte

Intel® programmierbare Geräte

1

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.