Verwenden von Parametern zum Erstellen einer Konstanten in Verilog

9

Ich möchte einen Parameter aufnehmen und eine Anzahl von Nullen, die dem Parameter entsprechen, einer Konstante zuweisen und diese Konstante zum Vergleich verwenden. wie mache ich es ?

Beispiel: Parameter ist 3, ich möchte eine Konstante erstellen

%Vor%

und verwende dieses n in einer anderen Anweisung. Das einzige ist, ich weiß es nicht. Wie initialisiere ich 'n' Nullen und welchem ​​Verilog-Datentyp weise ich es zu?

    
Floose 21.01.2014, 00:16
quelle

2 Antworten

11

Sie suchen nach dem Replikationsoperator. Die Syntax lautet {replication_constant{value}} .

Ein Beispiel zum Erstellen eines Busses der Größe WIDTH auf alle Nullen.

%Vor%

Eine vollständige Beschreibung des Replikationsoperators finden Sie unter IEEE Standard 1800-2012 § 11.4. 12.1 "Replikationsoperator"

    
Greg 21.01.2014, 00:37
quelle
6

Um zu erweitern, antworte und antworte Gregs, wenn du 1 willst, dann alle 0's.

Verwenden Sie eine Mischung aus Verkettung {a,b} und Replikation {width{c}} :

%Vor%

Während die Syntax '0 oder '1 in SystemVerilog 'b0 für die Breitenanpassung verwendet wird, ist sie in älteren Verilog-Versionen gültig. In Verilog-95 würde es nur Breite bis zu 32 Bits zusammenpassen, aber das ist seitdem behoben worden.

Beispiel zur Definition der Reset-Werte in Flip-Flops:

%Vor%     
Morgan 21.01.2014 10:45
quelle

Tags und Links