Quick Verilog Domande

E

easytarget

Guest
Salve,
are still not aswered, questions in blue
are answered.

Sto imparando Verilog e ho alcune domande, metto in questo thread e il vostro aiuto è apprezzato, le domande in rosso
non sono ancora aswered, domande in blu
sono una risposta.Aggiungerò le risposte in questo post così che altri possano trovarli facilmente.1 - Che cosa significa quando una variabile è preceduta da `come questo:
wire [ `address_size-1: 0] addrAnwer (grazie a vomitare):`address_size è una macro.2 - Can you please spiegare questo:
`define size (1 <<` set_size)Grazie per il vostro aiuto
Last edited by easytarget il giorno 02 Maggio 2008 20:35, modificato 1 volta in totale

 
is not a variable but a macro.

Questi 2 domande sono collegate: la address_size
non è una variabile ma una macro.In cui si utilizza dovete precedere da un segno di spunta.
Quote:Che cosa è una macro?Una macro è un nome letterale utilizzata in un programma che viene sostituito da un valore prima che il programma viene compilato.
Le macro sono utili come un alias senza l'utilizzo di risorse del programma.
Essi non sono variabili, quindi non è possibile assegnare un valore a una macro all'interno di un programma.
Quasi tutte le lingue moderne, tra cui Verilog, definizione di macro di supporto.

Macro in VerilogMacro in Verilog vengono specificati utilizzando `definire direttiva del compilatore.
Ecco un esempio:

`define MY_DELAY 2

...

r1 = # `MY_DELAY 1'b1;
 
Grazie vomito, non c'era `definire dichiarazione in quel file, penso che possa essere in un altro file.
Io ancora non si conosce la risposta alla domanda di altri, che cosa fa (1 << `set_size) fare?

 

Welcome to EDABoard.com

Sponsor

Back
Top