Artikel-ID: 000080098 Inhaltstyp: Produktinformationen und Dokumente Letzte Überprüfung: 11.09.2012

Wie werden die Shift-Bediener in Verilog HDL in der MAX PLUS® II Software hergestellt?

Umgebung

BUILT IN - ARTICLE INTRO SECOND COMPONENT
Beschreibung Die Implementierungen der Shift-Bediener (d. h. < and >>) hängen von der Größe der vom Benutzer angegebenen Variablen ab. Betrachten Sie zum Beispiel den folgenden Code in Verilog HDL:
reg [3:0] in;
                  output [3:0] shfta;

assign shfta = {in

In diesem Fall, da shfta vier Bits breit sind, wird der Wert von {in<<2} auf die mindesten 4 Bits verkürzt. Wenn in = 4'b0100, dann shfta = 4'b0000. Die zwei bedeutendsten Bits des 6-Bit-verschobenen Werts sind verloren.

Im folgenden Code wird ein um 6-Bit verschobener Wert beibehalten und shfta dem richtigen Wert zugewiesen. Wenn in=4'b0100, dann shfta = 6'b010000.

              reg [3:0] in;
             output [5:0] shfta;

             assign shfta = {in<<2};

Die MAX PLUS II Software leitet die richtige Größe für den Shift-Vorgang ab, je nach Größe der Variable auf der linken Seite der Zuweisungsanweisung. Betrachten Sie den folgenden Code:

             reg [3:0] in;
             output [7:0] shfta;

             assign shfta = {in<<2}   7'h10;

Da shfta acht Bits breit sind, werden {in<<2} acht Bits zugewiesen. Für den >> Bediener gelten die gleichen Regeln. Aufgrund der Art des >> Bedieners würden die Ergebnisse jedoch nicht von der Breite der Implementierung des Shift-Bedieners beeinflusst. Wenn beispielsweise in =4'b1000{in>>2} ist 4'b0010. Die linke Seite der verschobenen Daten ist mit Nullen aufgefüllt. Hier werden die bedeutendsten Bits nicht verloren. Stattdessen gehen aufgrund des Shift-Vorgangs unabhängig von der Breite der die Implementierung des Shift-Bedieners.

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.