Come utilizzare la variabile in VHDL?

G

Goodman

Guest
Ciao a tutti,

Come il titolo!
Plz condividere la vostra esperienza!

Have a nice day!

 
Le variabili in Verilog
1.simulazione
Per la simulazione la differenza tra i segnali e variabile è davvero evidente.variabile prende il suo valore immediatamente, ma il segnale prende il suo valore nuovo, dopo tutto il tempo passi DELTA solo.

2.Sintesi
Per la sintesi, non si può c; learly dire che la variabile non verranno sintetizzati.Tutto dipende dalla codifica.ma è meglio seguire alcune regole (ad esempio: variabile del ciclo for, l'uso di variabili per memeory, .... etc) per un uso appropriato di variabili.Nei casi di variabili di cui sopra fornirà risultati migliori in sintesi, rispetto ai segnali.Ma comunque i segnali sono utilizzati per tutte le implementazioni di design.Così, SYNTHESYS punto di vista è molto diffcicult a distuinguish tra segnali e variabili, dipende tutto da codice.

 
Goodman ha scritto:

Ciao a tutti,Come il titolo!

Plz condividere la vostra esperienza!Have a nice day!
 
segnale vs variabile
(1) Significato fisico
I segnali rappresentano interconnessione fisica (filo) che comunicano tra processi (funzioni).

Variabile non ha significato fisico, non esistono in circuiti reali, utilizzato prevalentemente per la simulazione, rappresentano di archiviazione locale.Come una variabile in C o Pascal, una variabile in VHDL porta con sé solo un pezzo di informazione: il suo valore attuale.

(2) Ritardo
Segnali di assegnazione può avere ritardi, aggiornare, alla fine del process.It È importante rendersi conto che anche senza un dopo clausola, tutte le assegnazioni di segnale si verificano con un certo ritardo infinitesimale, noto come ritardo delta.Tecnicamente, il ritardo delta è di alcuna unità misurabili, ma dal punto di vista della progettazione dell'hardware si dovrebbe pensare di ritardo delta come la più piccola unità di tempo si può misurare, ad esempio un femtosecondo.

le assegnazioni delle variabili sono aggiornate immediatamente

(3) Nozione
Segnale non può essere definita in processo e sottoprogramma (compresi fuction e procedura), deve essere definito fuori di essi
Variabile possono essere definite nell'accordo di processo e sottoprogramma (compresi fuction e la procedura), non deve essere definito al di fuori.Di seguito è riportato due esempi classici di spiegare ai differenti tra il segnale e variabile
Per i segnali ---------- -----------------
BIBLIOTECA IEEE;
Use IEEE.std_logic_1164.ali;
USO IEEE.STD_LOGIC_ARITH.ALL;
USO IEEE.STD_LOGIC_UNSIGNED.ALL;

ENTITY C1
PORT (IP: in std_logic;
CP: in std_logic;
OP: std_logic out
);
FINE C1;
ARCHITETTURA A DELLA C1
segnale d: std_logic;
BEGIN
processo (CP, IP)
iniziare
se CP'event e CP = '1 ', poi
D <= IP;
OP <= D;
end if;
fine del processo;
END a;
_________For Variable_________________________
BIBLIOTECA IEEE;
Use IEEE.std_logic_1164.ali;
USO IEEE.STD_LOGIC_ARITH.ALL;
USO IEEE.STD_LOGIC_UNSIGNED.ALL;

ENTITY C2 è
PORT (IP: in std_logic;
CP: in std_logic;
OP: std_logic out
);
FINE C2;
ARCHITETTURA A DELLA C2
BEGIN
processo (CP, IP)
variabile D: std_logic;
iniziare
se CP'event e CP = '1 ', poi
D: = IP;
OP <= D;
end if;
fine del processo;
END a;

 
Variabile in VHDL è di proprietà sequenziale.Mentre il processo è in esecuzione cambiamenti del segnale vengono effettuate dopo un orologio se si tratta di un processo di clock.Ma variabile sui cambiamenti dall'altro simultanously all'intervallo stesso tempo.Sono simili a filo in circuiti reali e sono utilizzati per il modello di ingresso gated dire Din è controllata attraverso alcuni CKT combinatoria e agganciato.

Variabili sono molto utili se si vuole scrivere il tipo di codifica C

 
ciao
poi fare u dire, che le variabili non sono sintetizzabili in VHDL??

 

Welcome to EDABoard.com

Sponsor

Back
Top