Hardware Reference
In-Depth Information
Prozedur für die Kernfunktion und ein paar zusätzlichen Signalzuweisungen.
Wir werden später in Abschnitt 4.4.1 auf diese Weise ein Simulationsmodell
für einen kompletten Speicherschaltkreis konstruieren.
Synchrone Speicherschnittstelle
Für die Synthese ist es erforderlich, die Kernfunktion eines Schreib-Lese-
Speichers in eine synchrone Schnittstelle so einzubetten, dass das externe
Anschlussverhalten nicht laufzeitkritischer als bei anderen synchronen Schal-
tungen ist. Abbildung 3.26 a zeigt eine geeignete Schnittstellenbeschaltung mit
einem Abtastregister für alle Eingabesignale und einem Latch für das Ausga-
besignal. Das Eingaberegister hält die Eingabewerte immer für eine komplet-
te Taktperiode konstant und das Ausgabe-Latch speichert die Ausgabedaten
während der Schreibvorgänge. Gelesen wird bei R = 1 und W = 0. Das Ab-
tastregister übernimmt die Steuersignale und die Adresse. Im Folgetakt ist
das Ausgabe-Latch durchlässig und das Ausgabesignal wechselt nach der ak-
tiven Taktflanke um die Haltezeit verzögert auf »ungültig« und übernimmt
nach der Verzögerungszeit den gültigen gelesenen Wert. Bei einem Schreibzu-
griff (W = 1) werden die abgetasteten Eingabedaten im Folgetakt unter dem
Abtastwert der Adresse gespeichert. Das Ausgabe-Latch speichert während
dieser Zeit die zuletzt gelesenen Daten (Abb. 3.26 b).
signal
x, y: tDaten;
signal
a: tAdresse;
type
tRAM
is array
(natural
range
<>)
of
tDaten;
signal
RAM
is
tRAM(
0
to
2
**a'length-
1
);
signal
T, W, R:std_logic;
...
process
(T)
begin
if
rising_edge(T)
then
if
W=
'1'
then
if
Vorhaltebedingung_ok_und_Adresse_gueltig
then
RAM(Int(a)) <= x;
else
Speicherinhalt_invalidieren;
end if
;
elsif
R=
'1'
then
y <=unguelt.
after
th ,RAM(Int(a))
after
td ;
end if
;
end if
;
end process
;
x
a
x
a
W
RAM
y
x
y
E
W
R
&
a)
T
Schreiben
LesenPause
T
0
1
x
a
1
0
1
0
W
R
y
t
s
t
h
t
d
c)
b)
ImSynthese-ModellentfallendiegrauunterlegtenBeschreibungselemente
Abb. 3.26. Beschreibung eines synchronen SRAMs a) Schnittstellenschaltung b)
VHDL-Beschreibung c) Anschlusssignalverläufe