Hardware Reference
In-Depth Information
In den nachfolgenden Beispielen werden in den Abtastprozessen die Mel-
dungen weggelassen und für die Nachhaltezeit t n = 0 unterstellt. Das verein-
facht die Registerbeschreibung auf folgende Beschreibungsschablone:
6: process (T)
7: begin
8: if rising_edge(T) then
9: if x'last_event>ts then
10: x_del <= ungültig after thr, x after tdr;
11: else
12: x_del <= ungültig after thr;
13: end if ;
14: end if ;
15: end process ;
1.4.3 Verarbeitung plus Abtastung
Mit Abtastprozessen werden nicht nur Register, sondern auch kombinatori-
sche Schaltungen, deren Ausgaben abgetastet oder kombinatorische Schaltun-
gen, die abgetastete Signale verarbeiten, modelliert. Abbildung 1.48 zeigt eine
kombinatorische Schaltung mit einem Abtastregister am Ausgang.
t hf ,t df
t s
t hr ,t dr
T
t hf
t df +t s
y +
f( x )
x
y
process (T)
begin
if rising_edge(T) then
if x'delayed(thf)'last_event>tdf+ts-thf then
y <= ungültig after thr, f(x) after tdr;
else
y <= ungültig after thr;
end if ;
end if ;
end process ;
w i
x
T
t s
y +
f(w i )
t dr
t hr
f(w i )
y
f(w i− 1 )
notwendigesG¨ultigkeitsfenster
f( x )
Beschreibungderkombinatorischen
Funktion,z.B.durcheinenAusdruck
Abb. 1.48. Verarbeitung plus Ausgabeabtastung
Der Prozess wird wie der eines Registers bei jeder Taktänderung geweckt.
Zur Kontrolle der Vorhaltebedingung wird das Eingabesignal
mit dem At-
tribut 'delayed(...) um die Haltezeit der vorgelagerten kombinatorischen
Schaltung verzögert und für das verzögerte Signal kontrolliert, dass seine letz-
te Änderung mindestens eine Zeit t df + t s t hf zurückliegt. Wenn die Vorhal-
tebedingung erfüllt ist, übernimmt der Registerausgang nach einer Haltezeit
den Pseudo-Wert »ungültig« und nach der Verzögerungszeit den abgetasteten
Funktionswert. Sonst übernimmt der Registerausgang nur den Wert »ungül-
tig« und behält ihn bis zur nächsten aktiven Taktflanke. Die kombinatorische
x
 
Search WWH ::




Custom Search