Hardware Reference
In-Depth Information
Simulationsmodell für die Schnittstellenschaltung zusammengesetzt werden.
Für die Schnittstellenschaltung lässt sich aus dem Datenblatt Folgendes re-
konstruieren. Das Ausgabesignalyder Kernfunktion ist über einen deaktivier-
baren Treiber mit den bidirektionalen Datenanschlüssen dat des Schaltkreises
verbunden. Das Freigabesignal E des Treibers wird nur aktiviert, wenn das
Schaltkreisauswahlsignal cs und das Ausgabefreigabesignal oe aktiv und das
Schreibsignal wr inaktiv ist:
E = cs^oe^wr
Das Schreibsignal W der Kernfunktion wird nur aktiviert, wenn das Schalt-
kreisauswahlsignal cs und das Schreibsignal wr des Schaltkreises aktiv ist
(Abb. 4.64):
W = cs^wr
Im nächsten Schritt ist das Zeitverhalten nachzubilden. Aus den im Da-
tenblatt für den Lesezyklus dargestellten Signalverläufen ist ablesbar, dass
die Leseverzögerung t
dy
10 ns und die Lesehaltezeit t
hy
2 ns beträgt.
t
ZO
,t
OZ
Schaltkreisanschl¨usse:
oe
cs
wr
adr
dat
Ausgabefreigabesignal
Schaltkreisauswahlsignal
Schreibsignal
oe
cs
wr
Kernfunktion
E
&
y
Leseschaltung
Adresssignal
bidirektionalesDatensignal
W
Schreibtreiber
(deaktivierbar)
&
x
a
dat
adr
Spaltenauswahl
Verz¨ogerungdesAusgabetreibers:
t
OZ
Deaktivierungsverz¨ogerung
Aktivierungsverz¨ogerung
(imBeispielunten2
×
4ns)
Zeilen-
auswahl
t
ZO
a)
signal
adr: tUnsigned(
17
downto
0
);
signal
dat, y:std_logic_vector(
15
downto
0
);
signal
n_oe, n_cs, n_wr, W, E:std_logic;
...
W <=
not
n_cs
and not
n_wr;
-- 1. Gatter
E <=
'X'
,
not
n_oe
and not
n_cs
and
n_wr
after
4 ns
;
-- 2. Gatter
ram(W=>W, a=>adr, x=>dat, y=>y, thy=>
2 ns
,
-- Kernfunktion
tdy=>
10 ns
, tsa=>
0 ns
, tna=>
0 ns
, twr=>
8 ns
, tsx=>
6 ns
);
process
(oe, y)
-- Ausgabetreiber
begin
if
E=
'1
'
then
dat <= y
;
elsif
E=
'
0'
then
dat <= (
others
=>
'Z'
)
;
else
dat <= (
others
=>
'X'
)
;
end if
;
end process
;
b)
⇒
Web-Projekt:P4.4/IS61.vhdl
Abb. 4.64. Verhaltensmodell eines asynchronen SRAM-Schaltkreises a) Ersatz-
schaltung aus Kernfunktion und Schnittstellenschaltung b) VHDL-Beschreibung