??? ?? (data bus) - PowerPoint PPT Presentation

1 / 75
About This Presentation
Title:

??? ?? (data bus)

Description:

4 - 4.1 4.2 4.3 4.4 – PowerPoint PPT presentation

Number of Views:30
Avg rating:3.0/5.0
Slides: 76
Provided by: caeagleYo
Category:
Tags: bus | data

less

Transcript and Presenter's Notes

Title: ??? ?? (data bus)


1
?4? ??-?? ?????? ???
  • 4.1 ??? ??
  • 4.2 ??? ?? ??
  • 4.3 ?? ??
  • 4.4 ?? ??? ?? ??

2
4.1 ??? ??
  • ??? ?? (data bus)
  • ??? ??? ??? ???? ??? ? ???? ??? ??
  • ??? ??
  • ?? ? ? ?? ???? ??? ??? ?
  • ?? ?? (address bus)
  • ????? ????? ??/?? ??? ? ?, ?? ????? ???? ?? ???
    ???? ??? ??
  • ??? ?? (???? ? ????)
  • ?? ? ????? ? ?? ????? ?? ??
  • ?? ?? (control bus)
  • ????, ?????, ?? ?? ???? ?? ??? ??

3
??? ??? ?????????
4
?? ??? ?? ??
  • ???? ? ??????? ??? ??
  • ???? ??(memory write), ???? ??(memory read)
  • ??? ??(I/O write), ??? ??(I/O read)
  • ?? ??(transfer acknowledge)
  • ?? ??(bus arbitration)
  • ?? ??(bus request), ?? ??(bus grant), ?? ???(bus
    busy)
  • ???? ?? ??
  • ???? ??(interrupt request)
  • ???? ??(interrupt acknowledge)
  • ? ? ?? ??(bus clock), ??(reset) ?? ??

5
??? ??(???)
  • Bus speed Bus bandwidth
  • ??? ??? ??? ??? ??? ?? ??? ??
  • ? PCI ?? (33 MHz, 32 bit)
  • ?? ??? ?? 1 / (33 106) 30 ns
  • ??? ??? 4 byte / (30 10-9) 133 Mbytes/sec
  • ? FSB(front Side Bus)
  • CPU? ????? ?? ??? ?? ??
  • QDR(Quad Data Rate) 100 MHz ? 400 MHz
  • AGP? 66 MHz, PCI? 33 MHz

6
4.2 ??? ?? ??
  • ?? ??(write operation)
  • ?? ???? ?? ???? ??? ?,
  • ??? ??? ??? ???? ??
  • ?? ??(read operation)
  • ?? ???? ?? ???? ??? ?,
  • ??? ??? ??? ?? ??? ????, ???? ???? ? ??? ??
  • ??? ??(synchronous bus) ?? ???? ?? ??? ??? ??
    ?? ? ???????? ??
  • ???? ??(asynchronous bus) ?? ?? ??, ??? ?? ????
    ?? ??? ?? ?? ? ??????? ??

7
??? ?? ?? (??)
  • ???? ?? ??? ?? ???

8
4.3 ?? ??
  • ?? ?? (bus contention) ? ?? ??? ???? ??????
    ????? ?? ?? ?? ????? ??? ?? ??? ???? ??? ??
  • ?? ?? (bus arbitration) ?? ??? ??? ??? ?? ???
    ?? ?? ???? ??? ? ??? ???? ???? ??? ??? ? ?? ???
    ??
  • ?? ??? (bus arbiter) ?? ??? ???? ???? ??
  • ?? (starvation) ?? ?? ???? ???? ??? ???? ??? ??

9
?? ???? ????? ?? ???? ??
  • ?? ?? ?? (parallel arbitration scheme)
  • ?? ???? ?? ?? ?? ??? ? ?? ????? ??
  • ? ?? ???? ???? ?? ?? ???? ???, ?? ??? ??
  • ?? ?? ??? ? ?? ???? ??? ??? ??
  • ?? ?? ?? (serial arbitration scheme)
  • ?? ??? ? ?? ???? ?? ? ??? ??
  • ? ???? ?? ???? ?? ??? ??
  • ???? ??? ????? ????(priority)? ?? ??
  • ??? ?? ??(daisy chain scheme)

10
?? ???? ??? ?? ???? ??
  • ????? ?? ?? (centralized arbitration scheme)
    ??? ?? ? ?? ?? ???? ??
  • ?? ?? ?? (decentralized arbitration scheme) ???
    ?? ?? ?? ?? ???? ??
  • ??
  • ?? ??? ?? ? ?? ??? ??
  • ???? ?? ? ?? ???? ??? ???? ?? ????? ??
  • ??
  • ??? ??? ???? ???? ??? ??
  • ? ???? ??? ?? ???? ??? ??? ? ?? ??

11
??? ?? ?? ?? ??
  • ?? ?? ?? (parallel arbitration scheme)
  • ????? ?? ???? ?? (centralized fixed priority
    scheme)
  • ??? ?? ???? ?? (decentralized fixed priority
    scheme)
  • ?? ???? ?? (dynamic priority scheme)
  • ?? ?? ?? (serial arbitration scheme)
  • ????? ?? ?? ?? (centralized serial arbitration
    scheme)
  • ??? ?? ?? ?? (decentralized serial arbitration
    scheme)

12
??? ?? ?? ?? ??
  • ?? ?? (polling scheme)
  • ???? ?? ??
  • ????? ?? ??

13
4.3.1 ?? ?? ??
  • (1) ????? ?? ???? ?? ???? ??? ??? ???? ?????
    ??? ??

14
????? ?? ???? ?? (??)
  • ??? 1? ?? ???? ?, ??? 3? ?? ??? ??? ??
  • ??? 3? ?? ?? ??(BREQ3)? ???,
  • ?? ???? ??? 3?? ?? ?? ??(BGNT3)? ???
  • ??? 1? ?? ??? ??? ?? ??? ??(BBUSY)? ??????,
  • ??? 3? BBUSY ??? ?? ????? ?? ??? ??

15
????? ?? ???? ?? (??)
  • ?? ??? ?? ???? ???? ?? ??

16
(2) ??? ?? ???? ??
  • ?? ?? ????? ??? ???? ??? ??

17
(3) ?? ???? ??
  • ?? ???? (Rotating priority)
  • ? ?? ??? ?? ??? ?? ????? ????? ? ??? ???? ??
    ????? ??? ???? ??? ????? ???? ?? ??
  • ?? ?? ?? ??? ?? ???? ??? ????? ??? ?? ??? ???
    ???? ??? ????? ???? ?? ??(acceptance-dependent?
    ?? ???? ??)
  • ?? ???? (Random priority)
  • ?? ???? (Equal priority)
  • ???? ?? ?????? ????, ??? ??? ?? ?? FIFO ??
  • ?? ?? ?? (Least recently used)

18
Acceptance-dependent? ?? ???? ??
19
4.3.2 ?? ?? ??
  • ????? ???? ??
  • ???-??(Daisy-chain) ?? BGNT ??? ??? ??? ?????
    ?? ?? ??, ?? ???? ??? ???? ?? ?? ??

20
(2) ??? ?? ?? ??
  • ??? ??? ?? ?? ??? ?? ????? ????? ??
  • ?? ???? ?? ?? ??? ?? ???? ??? ???
  • ?????? ?? ??(single failure)? ?? ???? ??

21
4.3.3 ?? ??
  • ?? ???? ? ????? ?? ??? ??? ?? ????? ???? ?? ??
    ??? ??
  • (1) ???? ?? ??
  • ?? ??? ?? ??? ????? ??? ?? ?? ??? ?? ??? ????
    ????
  • ?? ???? ? ?? ??? ?? ?? ??? ?? ?? ?? ??
  • 2? ???? ?? ?? ?? ? 2n?? ???? ?? ?????? n?? ??
    ??? ??
  • ???? ???? ???? ??? ??? ???? ??

22
???? ?? ??? ???
23
(2) ????? ?? ??
  • ??? ???? ?? ??? ??
  • ?? ???? ????? ??? ? ?? ????? ?? ? ?? ??
  • ??? ???? ??? ?? ??
  • ?? ?? ?? ??
  • ??? ????, ???(flexibility)? ??
  • ?? ???? ?? ???? ??????? ??? ?? ???? ??
  • ??? ???? ??? ?? ??? ?? ???? ?? ?? ?? ??? ??
    ???(message-passing system)? ?? ???? ??

24
4.4 ?? ??? ?? ??
  • ?? ??? ??(cache consistency)
  • ??????????? ?? ???? ?? ?????? ??? ????? ???? ????
    ?? ???? ????? ??? ???? ?? ???? ????? ??? ??
  • ??? ???(data inconsistency)? ??
  • ?? ??? ???? ??(sharing of writable data)
  • ??? ??(I/O activity)
  • ???? ??(process migration)

25
?? ???? ??? ?
26
?? ???? ??? ? (??)
27
?? ???? ??? ? (??)
28
I/O ??? ?? ??? ???
29
???? ??? ?? ??? ???
  • ???? ??(process migration) ??? ???????????
    ????? ???? ????? ???? ??
  • ???? ??? ?? ??? ??? ?
  • ???? A? P1? ?? ???? ?? ??? X? ??? ??(P1? ???? ???
    ???? ??? ??)??, ??? ???
  • ??, ???? A? ?? ????(P2)? ?? ? P2? X? ???????? ??
    (??? ??? ??)

30
?? ??? ?? ??
  • ?? ??? ???? ??
  • ?? ??? ??? ???? ?? ??
  • ?? ???? ??? ???? ?? ??
  • ?? ?? ????? ???? ??
  • Write-through ??? ?? ????
  • Write-back ??? ?? ????
  • ????? ??? ?? ????

31
4.4.1 ?? ??? ???? ??
  • ?? ??(shared cache)
  • ?? ?????? ??? ??? ????? ?? ??
  • ?? ???? ????? ?? ?? ???? ??
  • ?????? ?? ?? ???? ?? ?? ?????? ??? ??
  • ?? ?? ?? ???? ???
  • ??
  • ????? ?? ?? ??? ??? ?? ? ?? ??
  • ??? ????? ???? ???? ?? ??? ??
  • ?? I/O ???? ?? ?? ?? ??
  • ? Alliant?? FX ??? 24 ? ?????? ??? ?? ??

32
4.4.2 ?? ??? ??? ???? ?? ??
  • ?? ??? ?? ???? ??????? ??
  • ???? ??? ???(non-cacheable data)
  • lock ??, ???? ?(process queue)? ?? ?? ??? ??
  • ????? ?? ???? ????
  • ??
  • ???? ?????? ???? ??(non-transparent)? ????? ?
    ???? tag? ??? ??, run-time ?? ??? ??? ? ??
    H/W ??
  • Non-cacheable data? ?? ??? ??? ?? ???? ?? ??? ???
    ? ?? ??? ??
  • ?? I/O ????? ?? ?? ??? ? ?? ??? ??

33
4.4.3 ?? ???? ??? ???? ?? ??
  • ????? ???? lock ???? non-cacheable? ??
  • ?? ???(cache flush) ??
  • ?????? ??? ?? ???? ?????? ???? ?, ?? ???? ?? ??
    ????? ??? ??? ??
  • write-back ???? H/W? ??
  • ??
  • ?? ??? ??? ??
  • ???? ??? ??? ? ???? ?? ??? ???? ?? ??
  • I/O ??? ?? ?? ?? ??? ??? ?? ??? ?? ????? ??

34
4.4.4 ?? ?? ????? ???? ??
  • ??? ??? ??? ??? ?? ?? ??? ?? H/W ??? ???
    ???(snoop controller ?? ???(bus watcher))? ????
    ??
  • ?? ????? ?? ?? ?? ????? ???? ??? ????, ? ??? ??
    ??? ?? ??? ??(status)? ???? H/W ??
  • ? ?? ???? ?? ???? ???, ??? ?? ??? ?? ?? ? ??? ??
    ????? ?? ???
  • Write-through coherence protocol
  • Write-back coherence protocol
  • (? MESI protocol)

35
?? ?? ????? ??? ???? ??
36
?. Write-through ??? ?? ????
  • ????? ??? ???? ??? ?, ??? ??????? ??
  • ??? ???? ??
  • ?????? ?? ?? ??? ??? ??? ??? ??? ??
  • ?? ?????, ? ??? ???(invalidate)???? ????? ????
    ??? ????? ???? ?? ??? ??
  • ?? ???? ??
  • ??(V Valid) ?? ??? ?? ?????? ??
  • ??(I Invalid) ?? ??? ?? ? ?????? ??

37
Write-through ??? ?? ???? (??)
38
Write-through ??? ?? ???? (??)
39
Write-through ??? ?? ???? (??)
40
?. Write-back ??? ??? MESI ????
  • ????? ??? ???? ???? ?????? ??? ???? ??? ?? ???
    ????? ??? ??? ???? ?? ??? ? ? ??? ??? ???
    ??? ???? ?? ??? ?? ??? ???? ?? ??
  • ??? ??(invalidate signal) ???? ?? ??? ???? ??
    ??
  • ??? ???(invalidate cycle) ??? ??? ???? ?? ???

41
Write-back ??? ??? MESI ???? (??)
  • MESI ?????? ?? ???? ??
  • ??(M Modified) ?? ???? ??(??)? ??
  • ??(E Exclusive) ?? ??? ?????, ?????? ??? ???
    ??
  • ??(S Shared) ?? ???? ? ? ??? ???? ??? ???? ??
    ??
  • ??(I Invalid) ?? ???? ?? ????? ?? ???? ??? ?
    ??

42
MESI ????
  • MESI protocol? ?? ???

?? ????? ??? ?? ???? ?? ?? ?????
??? ?? ????
43
(1) ???? ?? ?? ??
  • P1? ???????? X? ?? ?? ?? ?? (read miss)
  • ? ???????? X? ??? ?, ??? ??(E)? ??

44
(2) ??? ??? ???? ??
  • P1? X? ??? ?(X)?? ?? ?? ?? (write hit) ?
    X? ??? ?, ??? ??(M)?? ??

45
(3) ???? ???? ?? 1
  • P1? X? ?? ????, P2? X? ?? ?? ? ?? ??(read
    miss) ? ???????? ?? ? P1? ??? ???? ? ?? ???
    ????, X? ??? S? ????, P2? ?? ??? ?? ? P2? X?
    ??? ??(S)? ??

46
(4) ???? ???? ?? II
  • ?? ??? ?? ? ?????? X? ?? ???? ?? ????(P3)? X?
    ????, ?? ??? ???? ??? ??? ??(S)? ??.
  • (5) ???? ???? ?? III
  • (2)? ?? ????, ?? P2? X? ??????, ?? ?? ?? ? ?????
    ?? ??
  • P1? ??? ???? ? ??? ?????, ??? ???(X)? P2?
    ??(??? ??(cache-to-cache transfer))??, X?
    ??????? ??.
  • ?? ??? ?? ??(S)? ??

47
???? ???? ?? III (??)


48
???? ???? ?? III (??)
  • ??? ??? ???? ?? ???? ??
  • P1? ??? ???? P2? ?? ??? ?????, P2?? ???(retry)?
    ??? ?,
  • P1? X? ?????? ????,
  • P2? ??? ????? X? ????.

49
(6) ?? ??? ???? ???? ??
  • (3)? ?? ????, P2? X? ??? ??? ???? ??
  • P2? ??? ??? ??? ??(invalidate signal)? ??
  • X? ?? ???? X? ??? ??(I)? ????, ?? ?? ?? ?
    P2? ??? ??? ??
  • P2? X? ??? ?(X)?? ????, ??? ??(M) ?? ??

50
(7) M ??? ???? ?? ???? ??
  • (6)? ?? ????, P2? X? ?? X? ????, ??
    ??(write hit) ? ???? ????, ??? ??

51
(8) I ??? ???? ???? ??
  • (7)? ?? ????, P1? X? ???? ??? ??? ???, ??
    ??(write miss) ??
  • ????? ?? ?? ?? ??? ?? ??(read with intention
    to modify RWITM)
  • P2? X? P1?? ????, ???? ??? ??(I)? ??
  • P1? X? X? ????, ??? ??(M)?? ??
  • ??? ??? ???? ?? ???? ?? retry ??.

52
I ??? ???? ???? ?? (??)
53
(9) ????? ??? ???? ???? ???? ??
  • P1? X? ??? ?? ?? ((1)? ??)?? P2? X? ?? ??
    ??
  • ?? ??(write miss) ??
  • P2? RWITM ??
  • P1? X? P2? ????, ??? ??(I)? ??
  • P2? X? X? ????, ??? ??(M)?? ??

54
4.4.5 ????-?? ?? ????
  • ??? ??? ?????? ???? ??? (??-????) ????? ??? ?? ??
    ????
  • ??? ??? ??? ?? ??? ??(broadcasting) ? ?????? ???
    ?? ? ??? ?? ?? ?? ??? ?? ??? ??? ???? ??
  • ????(directory) ?? ???? ???(copy)?? ?? ??? ????
    ???(list)
  • ? ??? ??? ?? ???(entry) ???? ??(state) ??? ????
    ??(location)? ???? ???(pointer) ??

55
?. ???? ??? ?? ??
  • ?? ???? ?? 1976? Tang TAN76? ?? ??
  • ?? ??? ??? ?? ??? ??? ?? ????? ?? ? ??? ???, ??
    ??? ???
  • ?? ???? ?? Censier and Featier CEN78 ??
  • ? ????? ??? ???? ??
  • ????? ??? ???? ?? ??? ?? ???? ??
  • ??(state) ?? ??? ?? ????, ?? ???? ?? ???? ???

56
?? ????? ?? ??
  • ? ??? ?? ??? ?????? ?????(? MIN)? ??? ?? ?? ??
    ???? ???? ??? ?????,- M1? ???? ?? ??? X? ????
    C1? ??? ?? P1? ?? ??????, M1? ???? D1?? X? C1?
    ?????? ??(M) ??? ??? ??.- ?? P2? ??? X? ???
    ? ?? ?? ??,
  • ???? ??? ??? M1?? ????
  • M1? ???? ???? D1? ????, C1?? ??? X? ??? ????
  • C1 ? X? ?????? ????
  • M1? ???? X? P2(C2)? ????

57
(No Transcript)
58
?? ????? ?? ?? (??)
  • P1? X? ?? ?? ??? ?????,
  • C1?? ?? ??(write hit) ?? ? C1? M1?? ??? ???? ??
  • M1? ???? ????? ????, X? ???? ?? ?? ???? ??? ???
    ??
  • ??? ??? ?? C2? X? ??(I)? ????, ??(ACK) ??? ??
  • M1? ???? ?? ??? C1?? ????(bypass), C1? X? ???
    ??? ??

59
?? ???? ??? ??
  • ?-? ????(full-map directory) ??
  • ?? ????(limited directory) ??
  • ?? ????(chained directory) ??

60
(1) ?? ???? ??
  • ?? ???? ?? ? ??? ?? ???? ???? ? ?? ???
  • ? ???? ???? ???? ??? ??(pointer bit ??
    ??(presence bit))?? ?? ??(state bit)? ??
  • ??? ?? ? ???? ? ? ??? ?? -- ?? ????? ??? ? ????
    ???? ???? ????? ??

61
?? ???? ??? ?
62
?? ???? ??? ???
  • ?? ?? ??
  • ?? ??? ???? ???? ?? ?? ? ???? ?? ?? ?? ????
    ???? O(N2)

63
?? ???? ??
  • ???? ?? ??? ??? ?? ??
  • ??? ??? ??? ??? ? ?? ?? ?? ???, ????? ??? ? lt ??
    ???? ?(N)
  • ? ???? ?? ? log2N ?
  • ??? ? ???? ?? p ?? ??, ??? ?? ? p x log2N ?
  • ??(eviction) ??? ?? ??? ??, ??? ?? ?? ? ?? ????
    ???? ??
  • ??? ?? ???? ?? (??-?? ??? ??)

64
?? ???? ??? ? (2-??? ????)
65
?? ???? ??? ???
  • ??
  • ???? ?? ??? ?? ???? ???? O(Nlog2N)
  • ? p 64 ?? ??, ??? ?? ? 64
    (full-map), 24 (limited)
  • ??
  • ??? ??? ??? ?? ?? ???, ?? ???? ??? ?? ???? ?? ??
    ???? ?? ??? ??
  • ?? ??? ?? ????

66
?? ???? ??
  • ?? ???? ??? ??? ???? ?????, ?? ????? ??? ?? ? ??
    ??
  • ?? ???(linked list)? ????, ?? ???? ???? ???? ??
    ???? ?? ??(chain)? ??

67
?? ???? ??? ?
68
?? ???? ??? ???
  • ??
  • ???? ?? ??? ??? ??
  • ??? log2N? ??
  • ??? ?????? ?? ? ? ??? ???? ??
  • ???? ??? ??? ?? ??? ??
  • ??
  • ?? ??? ??? ? ??? ???? ??
  • ? ?? ?? ?? ?? 4-27(b)? ???? P2? ??? X?
    ?? ??? ???? Y? ???? - C2? C1? ?? ???
    ?? C3? ??? ? ???? ??, ?? - C0, C1, C2? ?? X?
    ??? (?? ??? ??)

69
?. ???? ????? ??
  • ??-???????? ?? ??? ??? ??? ?????????? ?? ???? ??,
    ??? ????? ?? ??? ???? ???? ?? ??
  • ??? ?? ??-???? ?????????(distributed
    shared-memory multiprocessor system)?? ?? ??

70
?? ??-???????? ?? ??
  • ???-??? ?? ??? ???(snooping adapter)? ?? ??
    ???? ?? ?????? ???? ???? ?? ??
  • ?? ?? 4-28(a)
  • ?? ??? ????? ??, ??? ???? ??

71
?? ??-???????? ?? ?? (??)
  • ???-???? ?? ? ???? ??? ?? ??? ??, ?? ???????
    ???? ????? ?? ??? ??
  • ???? ???(network adapter NA) ???? ????? ? ????
    ???(directory controller)?? ??
  • ?? ?? 4-28(b)
  • ?? DASH ?????????(???? ???? ??? ?? ??)?? ??

72
?? ??-???????? ?? ?? (??)
73
???-???? ??? ?
  • ?? ??(read miss) ???? ??? ??
  • ? ???? 1? ???? 2(? ????)? ??? ???? ?? ??

74
???-???? ??? ? (??)
  • ? ???? 1? ???? ?? ??, ???? 3(??? ????)? ? ????
    ???? ??? ??? ??? ??

75
  • ???? ?? ???? ?? ????? ???? ??
  • ? ? ????? ???? 2? ???? ???? 3? 4? ???? ?? ????,
    ???? 1? ? ???? ??? ????? ??
Write a Comment
User Comments (0)
About PowerShow.com