Border control unit:
L1Cache
-
L2Cache
-
Directory
-
DMA
-
AccelL1Cache
-
AccelL2Cache
-
GPUCopyDMA
- CrossingGuard
getS
getM
putS
putM
InvAck
Writeback
Invalidate
Fwd getS
Fwd getM
Data
DataM
DataFromL1
Data All Acks
Fwd Ack
Writeback Ack
All acks
Replacement
Recover
Check Timeout
RecycleResp
RecycleReq
I None
k
qaq
k
qaq
k
qaq
k
qaq
k
qsq
k
qsq
l
sr
e
m
qhq
qt
qt
zf2s
zf2q
I None
I R
l
lc
a s
qaq
/
IS R
k
qaq
k
qaq
k
qaq
k
qsq
k
qsq
l
sr
e
m
qhq
qt
qt
zf2s
zf2q
I R
I RW
l
lc
a
qaq
/
IS RW
l
lc
b
qaq
/
IM RW
k
qaq
k
qaq
k
qsq
k
qsq
l
sr
e
m
qhq
qt
qt
zf2s
zf2q
I RW
S R
k
qaq
k
qaq
j
mc
qaq
/
I R
k
qaq
k
qsq
k
qsq
l
tt
mc
i
sr
v
qhq
/
SF R
l
tt
mc
i
v
/
SR R
qt
qt
zf2s
zf2q
S R
S RW
k
qaq
l
b
qaq
/
IM RW
j
mc
qaq
/
I RW
k
qaq
k
qsq
k
qsq
l
tt
mc
i
sr
v
qhq
/
SF RW
l
tt
mc
i
v
/
SR RW
qt
qt
zf2s
zf2q
S RW
M RW
k
qaq
k
qaq
k
qaq
l
n b
d
j
mc
qaq
/
MI RW
k
qsq
k
qsq
l
tt
mc
i
sr
v
qhq
/
MF RW
l
tt
mc
i
sr
v
qhq
/
MFS RW
l
tt
mc
i
sr
v
qhq
/
MFM RW
l
tt
mc
i
v
/
MR RW
qt
qt
zf2s
zf2q
M RW
IS R
k
qaq
k
qaq
k
qaq
k
qaq
k
qsq
k
qsq
sr
e
qhq
/
ISI R
n
t
us
h
m
qhs
/
S R
n
t
h
m
qhs
/
S R
r
qt
qt
zf2s
zf2q
IS R
IS RW
k
qaq
k
qaq
k
qaq
k
qaq
k
qsq
k
qsq
sr
e
qhq
/
ISI RW
n
t
g
um
m
qhs
/
M RW
n
t
us
h
m
qhs
/
S RW
n
t
h
m
qhs
/
S RW
r
qt
qt
zf2s
zf2q
IS RW
IM RW
k
qaq
k
qaq
k
qaq
k
qaq
k
qsq
k
qsq
sr
e
qhq
o
n
p
qhs
n
t
g
um
m
qhs
/
M RW
n
t
g
um
m
qhs
/
M RW
n
t
g
um
m
qhs
/
M RW
o
p
qhs
g
um
m
qt
/
M RW
r
qt
qt
zf2s
zf2q
IM RW
MI RW
z2q
z2q
k
qaq
k
qaq
k
qsq
k
qsq
sr
cd
qhq
/
SINK RW
sr
cd
f
qhq
/
SINK RW
sr
f
qhq
/
SINK RW
m
qhs
/
I RW
qt
qt
zf2s
zf2q
MI RW
SF R
k
qaq
k
qaq
e
j
qaq
/
Ii R
k
qaq
e
m
qsq
/
I R
k
e
m
qsq
/
I R
k
e
m
qt
/
I R
w
qt
zf2s
zf2q
SF R
SF RW
k
qaq
z2q
e
j
qaq
/
Ii RW
k
qaq
e
m
qsq
/
I RW
k
e
m
qsq
/
I RW
k
e
m
qt
/
I RW
w
qt
zf2s
zf2q
SF RW
MF RW
k
qaq
k
qaq
k
qaq
n b
j
f
qaq
/
Ii RW
k
cd
m
qsq
/
I RW
n a
cd
m
qsq
/
I RW
k
cd
m
qt
/
I RW
w
qt
zf2s
zf2q
MF RW
MFS RW
k
qaq
k
qaq
k
qaq
n b
j
cd
f
qaq
/
Ii RW
k
cd
f
m
qsq
/
I RW
n a
cd
f
m
qsq
/
I RW
k
cd
f
m
qt
/
I RW
w
qt
zf2s
zf2q
MFS RW
MFM RW
k
qaq
k
qaq
k
qaq
n b
j
f
qaq
/
Ii RW
k
f
m
qsq
/
I RW
n a
f
m
qsq
/
I RW
k
f
m
qt
/
I RW
w
qt
zf2s
zf2q
MFM RW
SR R
k
qaq
k
qaq
j
qaq
/
Ii R
k
qaq
m
qsq
/
I RW
k
m
qsq
/
I R
sr
qhq
/
SF R
k
m
qt
/
I R
w
qt
zf2s
zf2q
SR R
SR RW
k
qaq
z2q
j
qaq
/
Ii RW
k
qaq
m
qsq
/
I RW
k
m
qsq
/
I RW
sr
qhq
/
SF RW
k
m
qt
/
I RW
w
qt
zf2s
zf2q
SR RW
MR RW
k
qaq
k
qaq
k
qaq
n b
j
d
qaq
/
MIi RW
k
d
qsq
/
MI RW
n a
d
qsq
/
MI RW
sr
qhq
/
MF RW
sr
qhq
/
MFS RW
sr
qhq
/
MFM RW
k
d
qt
/
MI RW
w
qt
zf2s
zf2q
MR RW
ISI R
k
qaq
k
qaq
k
qaq
k
qaq
k
qsq
k
qsq
sr
e
qhq
us
a s
qhs
/
IS R
a s
qhs
/
IS R
r
qt
qt
zf2s
zf2q
ISI R
ISI RW
k
qaq
k
qaq
k
qaq
k
qaq
k
qsq
k
qsq
sr
e
qhq
n
t
g
um
m
qhs
/
M RW
us
a
qhs
/
IS RW
a
qhs
/
IS RW
r
qt
qt
zf2s
zf2q
ISI RW
SINK RW
z2q
z2q
k
qaq
k
qaq
k
qsq
k
qsq
sr
e
qhq
m
qhs
/
I RW
qt
qt
zf2s
zf2q
SINK RW
Ii R
k
qaq
k
qaq
k
qaq
k
qaq
m
qsq
/
I R
k
qsq
/
I R
sr
e
qhq
k
m
qt
/
I R
w
qt
zf2s
zf2q
Ii R
Ii RW
k
qaq
k
qaq
k
qaq
k
qaq
m
qsq
/
I RW
k
m
qsq
/
I RW
sr
e
qhq
k
m
qt
/
I RW
w
qt
zf2s
zf2q
Ii RW
MIi RW
k
qaq
k
qaq
k
qaq
k
qaq
qsq
/
MI RW
k
qsq
/
MI RW
sr
cd
qhq
/
SINKi RW
sr
cd
f
qhq
/
SINKi RW
sr
f
qhq
/
SINKi RW
qhs
/
Ii RW
k
qt
/
MI RW
w
qt
zf2s
zf2q
MIi RW
SINKi RW
k
qaq
k
qaq
k
qaq
k
qaq
qsq
/
SINK RW
k
qsq
/
SINK RW
sr
e
qhq
qhs
/
Ii RW
k
qt
/
SINK RW
w
qt
zf2s
zf2q
SINKi RW
getS
getM
putS
putM
InvAck
Writeback
Invalidate
Fwd getS
Fwd getM
Data
DataM
DataFromL1
Data All Acks
Fwd Ack
Writeback Ack
All acks
Replacement
Recover
Check Timeout
RecycleResp
RecycleReq