Autor |
Beitrag |
witteks
Stammgast
Beiträge: 27 Ort: Cottbus
|
Erstellt: 22.06.04, 14:27 Betreff: Umsetzung rising_edge(clk)
drucken
Thema drucken weiterempfehlen
|
|
|
In einem Beitrag habe ich gelesen, dass man statt
if clk'event and clk = '1' then
besser
if rising_edge(clk) then
schreiben sollte. Welchen Grund hat das? Eigentlich sollten beide Varianten das gleiche Ergebnis in Hardware und Simulation haben, oder? Ich benutze bisher nur Variante 1 in meinen synchronen Umgebungen.
Sven
|
|
nach oben |
|
|
BerndR
Stammgast
Beiträge: 29
|
Erstellt: 25.06.04, 10:32 Betreff: Re: Umsetzung rising_edge(clk)
drucken
weiterempfehlen
|
|
|
Hallo, soweit ich weiß, ist die zweite Möglichkeit erst in dem neueren VHDL-Standard unterstützt und hat ausser der kürzeren Schreibweise keine Auswirkungen.
Gruß
Bernd
|
|
nach oben |
|
|
Bergvagabund
Gast
|
Erstellt: 01.07.04, 21:12 Betreff: Re: Umsetzung rising_edge(clk)
drucken
weiterempfehlen
|
|
|
Die Schreibweise "rising_edge(clk)" würde einzeln ausgeschrieben bedeuten:
clk = '1' AND clk'event AND clk'last_value = '0'
Das heisst bei der einfachen Schreibweise ohne das Attribut "last_event" sind nur die Übergänge von 0 -> 1 abgedeckt, aber nicht z.B. der Übergang von X -> 1. In der Synthese hat dies keine Bedeutung, jedoch in der reinen abstrakten Modellbeschreibung schon.
|
|
nach oben |
|
|
|