Cum se utilizează variabila în VHDL?

T

Tat

Guest
Bună tuturor,

Ca titlu!
Plz a împărtăşi experienţa dumneavoastră!

au o zi buna!

 
Variabile în Verilog
1.simulare
Pentru simulare diferenţa dintre semnalele şi variabilă este cu adevărat evidente.variabila devine valoarea ei imediat, dar semnalul este nou valoarea sa, după toate timp paşii DELTA numai.

2.Sinteză
Pentru sinteză, nu se poate c; learly spun că variabila nu vor fi sintetizate.Totul depinde de codificare.dar este mai bine sa urmeze cateva reguli (ex: variabile pentru buclele, folosirea de variabile pentru cinstea, .... etc), pentru utilizarea corectă a variabilelor.În cazurile variabilele de mai sus va da rezultate mai bune în sinteza comparativ cu semnale.Dar oricum semnale sunt utilizate pentru toate implementarile de proiectare.Deci, synthesys punct de vedere este foarte diffcicult să distuinguish între semnale şi variabile, totul depinde de codificare.

 
Goodman scria:

Bună tuturor,Ca titlu!

Plz a împărtăşi experienţa dumneavoastră!au o zi buna!
 
semnal vs variabilă
(1) fizică sensul
Semnale reprezintă interconecta fizice (fire) care comunică între procese (funcţii).

Variabila nu are semnificaţii fizice, nu exista in circuite reale, utilizate în principal pentru simulare, reprezinta de stocare locale.Ca o variabilă în C sau Pascal, o variabilă în VHDL poartă cu ea o singură bucată de informaţii: valoarea sa actuala.

(2) Întârzierea
Semnale cesiune poate avea întârzieri, actualizare la sfârşitul process.It este important să realizăm că chiar şi fără o clauză de după, toate misiunile de semnal apar cu o oarecare întârziere infinitezimală, cunoscut sub numele de întârziere delta.Punct de vedere tehnic, întârzierea delta este de nici o unitate măsurabile, ci dintr-o perspectivă de design hardware-ul ar trebui să cred că de întârziere deltei ca fiind cea mai mică unitate de timp ai putea măsura, cum ar fi un femtosecond.

Misiunile variabile sunt actualizate imediat

(3) Defination
Semnalul nu poate fi definită în proces şi subprogram (inclusiv fuction şi procedura), trebuie să fie definite în afara ei
Variabila poate fi doar difined în proces şi subprogram (inclusiv fuction şi procedura), nu ar trebui să fie definite în afara.Următoarele două exemple clasice este de a explica differents între semnal şi variabile
---------- Pentru semnale -----------------
BIBLIOTECA IEEE;
UTILIZAREA IEEE.STD_LOGIC_1164.ALL;
UTILIZAREA IEEE.STD_LOGIC_ARITH.ALL;
UTILIZAREA IEEE.STD_LOGIC_UNSIGNED.ALL;

ENTITY C1 este
PORT (IP: în std_logic;
CP: în std_logic;
PO: std_logic afară
);
END C1;
ARHITECTURA DE C1 este un
semnal d: std_logic;
BEGIN
proces (CP, IP)
începe
în cazul în care CP'event şi CP = '1 ', apoi
D <= IP;
PO <= D;
final, dacă;
sfârşitul procesului;
A termina o;
_________For Variable_________________________
BIBLIOTECA IEEE;
UTILIZAREA IEEE.STD_LOGIC_1164.ALL;
UTILIZAREA IEEE.STD_LOGIC_ARITH.ALL;
UTILIZAREA IEEE.STD_LOGIC_UNSIGNED.ALL;

ENTITY C2 este
PORT (IP: în std_logic;
CP: în std_logic;
PO: std_logic afară
);
END C2;
ARHITECTURA o de la C2 ESTE
BEGIN
proces (CP, IP)
variabilă D: std_logic;
începe
în cazul în care CP'event şi CP = '1 ', apoi
D: = IP;
PO <= D;
final, dacă;
sfârşitul procesului;
A termina o;

 
Variabilă în VHDL are proprietatea secvenţiale.În timp ce procesul de executare este de modificări de semnal sunt efectuate după un ceas, dacă acesta este un proces rapid., Dar variabilă, cu privire la modificările altă parte, simultan, la acelaşi interval de timp.Ele sunt similare cu sarma in circuite reale si sunt folosite pentru modelul de intrare dependente Din spun este controlat prin intermediul unor ckt combinaţionale şi actionate.

Variabile sunt extrem de util, dacă vrem să scrie tipul C de codificare

 
hi
apoi a face u să spun, ca variabilele nu sunt synthesizable în VHDL??

 

Welcome to EDABoard.com

Sponsor

Back
Top