Nem ertem....

Zoltán Radó elektro1.zrado at axelero.hu
Sun Jan 22 12:10:12 CET 2006


Mindazonáltal, hogy még mindig nem értek a veriloghoz, azért leírom,
hogy VHDL-ben is van hasonló.
Ha egy variable-nek adsz értéket, akkor azt a ":=" -vel kell megtenni.
Ha egy SIGNAL-nak adsz értéket, akkor azt a "<=" -vel kell megtenni.

A különbség a variable és SIGNAL között: Ugye egy processben
sorról-sorra hajtódnak végre az utasítások. Eközben a VARIABLE
tipusok azonnal megváltoztatják értéküket, tehát már a következõ
sorban az új értékkel végzõdnek a mûveletek. Mindeközben a SIGNAL-ok
csak a process végén update-elõdnek, tehát mindenféle változás csak a
process végén hajtódik végre. Ha egy processben több helyen is
változik a SIGNAL, akkor a process végén a legutolsó értékre fog
változni.

További különbség, hogy a variable-k csak az adott processben
látszanak, egy másik processbõl nem láthatjuk õket. Sõt egy másik
processben adhatunk ugyanilyen nevet egy másik variable-nak.

Eközben a SIGNAL-ok az adott modul bármelyik process-ébõl látszik,
viszont módosítani csak egy processben lehet.

Nagyjából ennyi. Mivel elég sok a párhuzam a verilog és a VHDL között,
szerintem ott is hasonlóképp mennek a dolgok.

Mindettõl függetlenül a verilog könyv beszerzését erõsen ajánlom, mert
ilyen, a fentihez hasonló alapok nem triviálisak egy kód átnézése
közben, viszont rossz beidegzõdésekhez vezethet, ha ennélkül állunk
neki kódolni.

Üdv.: Zoli

h> Ezt a = <= dolgot mar en is kerdeztem mar itt. Nem valaszolt senki. De jo
h> tudni, hogy nem csak egyedul szopok ezekkel.... A hozzaertok lehet cocom
h> listan tartjak az infot, felnek a konkurenciatol :)
h> Lehet majd keritek a BME-rol valami verilog konyvet...

h> udv.
h> hoyuka

h> Huszti Andras said:
>> Hali!
>>
>> Ezt a reszet en sem ertem a dolognak de majd valaki elmagyarazza! En ugy
>> emlekszem, hogy letezik = es <=  A ketto kozotti kulonbseg (ha jol
>> ertem), hogy az ertekadas a blokk vegen tortenjen vagy azonnal. Valahogy
>> az nem fer a fejembe, hogy a sorrendiseg akkor most hogy is van?
>>
>> Pl:
>> cnt = cnt + 1;
>> if (cnt == 55)
>>
>> noveli a cnt-t es mikozben noveli vizsgalja vagy csak azutan? Logikus,
>> hogy az orajelet picit kesleltetni kell az if vizsgalohoz. Kulonben
>> hazardok alakulnanak ki. Fontos-e a sorrend vagy sem?
>>
>> Mi a kulnbseg a = es a <= kozott?





More information about the Elektro mailing list