Skip to content
Snippets Groups Projects
Commit 049b9ad2 authored by Eric Kooistra's avatar Eric Kooistra
Browse files

Added IF example for avoiding latch.

parent 0d4e8c36
Branches
No related tags found
No related merge requests found
...@@ -10,7 +10,25 @@ IF x = 3 THEN ...@@ -10,7 +10,25 @@ IF x = 3 THEN
y <= x; y <= x;
END IF; END IF;
Maakt dat y een latch wordt. Je moet een ELSE y <= 0 END IF; toevoegen, of beginnen met een default assignment y <= 0; en dan de IF - END IF; Maakt dat y een latch wordt. Je moet een ELSE y <= 0 END IF; toevoegen, of beginnen met een default assignment y <= 0; en dan de IF - END IF; Dus:
a <= 0
IF b THEN
a<= 1
END IF
is hetzelfde als:
IF b THEN
a<= 1
ELSE
a <= 0
END IF
Mijn voorkeur is meestal om de eerste manier te gebruiken, omdat je dan daar al de default assignments doet.
In process met IF of ELSIF rising_edge() moet juist geen ELSE, omdat je daar juist wel wilt dat er een flipflop gegenereerd zal worden. De synthesis compiler snapt dat.
Een latch en een flipflop zin beide single bit geheugens, maar we moeten alleen flipflops maken.
3) Complete sensitivity list 3) Complete sensitivity list
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment