Title: Computer Architecture
1?8? ????? ??
2?? ??
- 8.1 ?????? ??
- 8.2 ?? ????? ??
- 8.3 ????????? ??
- 8.4 ?? ???? ??
3???? (1)
- ????(Parallel Processing)
- ??? ?????? ?? ?? ????? ?? ? ????? ??? ???? ????
??? ???? ?? - ????? ?? ?? ??
- ?? ?? ?????? ??? ???? ??? ? ??? ?? ???? ???
?????? ??? ???? ?? ??? ??? ??? VLSI ??? ????
???? - ? ????? ?? ?? ?? ???? ???? ?? ???? ??, ??? ????
??? ??? ??? ?? ????? ????? ??? ??? ??? ??? ?? ?
??? ?
4???? (2)
- ???? ??? ???
- ?? ??(problem partition) ????? ??? ??(?? ????)?
?? ?? ??? ? - ????? ??(interprocessor communication) ??? ???
??? ???? ?????? ??? ??? ?? ???? ?? - ??? ?? ???
- ?? ???? ??? ????? ??
- ?? ?? ????(mutual exclusion mechanism) ??
- ?????? ?? ??(contention)? ??? ???? ???? ? ??
????? ??
58.1 ?????? ??
- Flynn? ??(Flynn's classification)
- ??? ??? ?? ?? ??
- ??? ???(instruction stream) ????? ?? ???? ???
???? ??? ??? ???? ?? - ??? ???(data stream) ? ????? ???? ? ??? ????
??? ????? ?? - ?????? ???? ???? ???? ???(stream ??)? ?? ?? ??
- ?? ??? ??? - ?? ??? ??? (SISD)
- ?? ??? ??? - ?? ??? ??? (SIMD)
- ?? ??? ??? - ?? ??? ??? (MISD)
- ?? ??? ??? - ?? ??? ??? (MIMD)
6SISD(Single Instruction Single Data)
- ??? ? ??? ???? ???? ???? ???? ?????? ???
- ??????(pipelining), ?????(superscalar)??? ??
7SIMD(Single Instruction Multiple Data)
- ?? ????(Array Processor)
- ?? ?? ???? ???(PU)?? ????, PU?? ??? ?? ??? ??
???? ?? ?? - ?? PU?? ??? ??? ???? ??
- ??? ???? ?? ?? ??? ??
8MISD(Multiple Instruction Single Data)
- n?? ?????? ?? ?? ????? ?????, ???? ??? ???? ? ? ?
??????? ?? ??? ??? ??
9MIMD(Multiple Instruction Multiple Data)
- n ?? ?????? ?? ?? ????? ????? ??
- ??????? ???? ??? ?? ? ??? ??
- ??? ???(tightly-coupled system)
- ??-???? ??(shared-memory architecture)
- ?????? ???(multiprocessor system)
- ??? ???(loosely-coupled system)
- ?? ????(local memory)? ?? ???? ??? ??? ??
- ????? ??? ??? ??(message-passing) ??? ??
- ????? ???(multiple-computer system)
10MIMD ??? ???
118.2 ?? ????? ??
- ?? ???? ??(processing element PE)?? ??? ??
???(control unit)? ???? ????? ???? ???
12?? ????
- ?? ??
- ? PE? ????? ????? ????, ??? ??? ??
- ?? ???? ????? ????, ??? ??? PE?? ??
- ?? ??
- ??? ???? ????? ???? ????? ??
- ??? ??? ????? ?????, ????? ??? ? ??? ??? ????
?? ????? ?? ???? ???, ?? ??? ??? ??? ????? ????
??? ??
13?? ????? ?? ??
14?? ?????
- Static interconnection network
- ?? ??? ???
- ????(topology)
- 1?? ???? ?? ??(linear array)
- 2?? ???? ??(ring), ??(star), ??(tree),
??(mesh), ???? ??(systolic array)?? - 3?? ???? ????(completely connected) ??, ??
??(chordal ring) ??, ?? ??
15?? ?????? ? (1)
16?? ?????? ? (2)
17?? ?????? ? (3)
18?? ???? PE? ?? ?? (1)
- ALU? ?????? ??
- ???? ??? ?????(R1,R2,R3), ?? ????(A), ???
????(I), ??? ?? ????(T) ? ?? ??? ????(F) - PE? F1?? ??? ??? ??, F0?? ?? ??
- ?? ???(CU)
- PE ???? ???? ??? ??? ????(mask register) ??
- ? ???? F? ??? ????, ?? ?? ? PE?? ? ??? ?????? ???
??? ?? ?? ??? ??
19?? ???? PE? ?? ?? (2)
208.3 ????????? ??
- MIMD ?????, ?? ?? ?????? ?????? ????? ???? ???
- ???? ??? ???? (????) ??? ?? ??
- ??-???? ???(shared-memory system)
- ??-???? ???(distributed-memory system)
21??-???? ??? ??
- ??? ????, ?????? ?? ? ????? ?? ?? ?? ?? ?????? ??
?? - ???? ??
- ??(Bus)
- ??-??(shared-bus)
- ??-??(multiple-bus)
- ???? ???(Crossbar Switch)
- ??? ?????(Multistage Interconnection Network MIN)
22??-???? ??? ??? ???
- ??
- ?????? ???? ???? ????? ?? ????? ????? ??? ?????
??? ?? ????? ???? ?? - ???? ???? ??? ? ?????? ??? ???? ???? ???? ??? ?
???? ???? ???? ???? ? ??? ??? ??? ?? ? ?? - ??
- ?????? ????? ?? ??(?? ?? ?????)?? ???? ???? ???
???? ?? ?? ??? ??? ? ?? - ? ? ??? ?????? ????(???? ?? ?? ?????)? ??? ?????
??? ? ? ??? ?????? ???? ?? ???? ?? ???? ??? ??
?? ??? (?? ?????? ?? ????? ???? ??)
23??-?? ??
- ????? ?? ??
- ?? ???? ?? ?? ?? ??
- ??? ?? ??? ???? ??? ???? ?? ??? ??
24??-?? ??
- ?? ??? ??? ??? ??? ?? ??
- ???? ??(hierarchical bus structure) ??? ?? ??
??? ???? ??
25???? ???(crossbar switch)
- ?????? ????? ??? ?? ???(full connectivity)
- ??? ?? ?? ????? ??
26??? ?????
- ???? ???? ?? ??? ?????? ???? ???? ???? ?????
- ? - ??? ????(Omega network)
27??? ????
- ???? ???? ?? N ?? ??
- ??? ??(stage)? ? s log2N
- ? ??? ??? ??(switching element)?? ? m N/2
- ??? ??? ?? ??(connection mode)
- ??(straight) ?? ??? ??? ???? ?? ??
- ??(swap) ?? ?? ??? ??? ???? ??
- ?? ??(lower broadcast) ??? ????? ?? ?????? ??
- ?? ??(upper broadcast) ??? ????? ?? ?????? ??
28?? ?? ?? (??? ??)
- ??? ??(source node)? ??? SRC, ??? ??(destination
node)? ??? DST?? ? ? - SRC sn-1, , s1, s0
- DST dn-1, , d1, d0
- ?? di ? si ??, i?? ??? ???? ?? ??
- ?? di si ??, i?? ??? ???? ?? ??
29??? ???? ???? ?
- SRC 1 (001)? DST 7 (111) ??? ?? ??
- (s2 0) ? (d2 1) 1 ???, ??? B ? ?? ??
- (s1 0) ? (d1 1) 1 ???, ??? H ? ?? ??
- (s0 1) ? (d0 1) 0 ???, ??? L ? ?? ??
30?? ???? ?? ?? ?
- ??? ??? ??? ?? ??? ???? ???? ??? ?? ? p1
(0,7,6,4,2) (1,3) (5) - ?? 0 ? ?? 7, ?? 7 ? ?? 6, ?? 6 ? ?? 4, ?? 4 ? ??
2, - ?? 2 ? ?? 0, ?? 1 ? ?? 3, ?? 3 ? ?? 1, ?? 5 ? ?? 5
31?? ?? (broadcast connection)
- ??? ??? ????? ?? ? ?? ?? ???? ???? ???? ??? ??
- ?? ??? ??? ?? ??? ???? ??
32?? ??? ?
33??-???? ??? ??
- ??? ??(loosely-coupled structure)
- ? ????? ??? ?? ????(local memory)? ??
- ?? ??????? ??? ??? ??(message-passing) ??
- ?? - ????? ?? ?? ??
- ?? - ?? ????? ?? ?? ?? ??
- ???? ??(network diameter) ???? ??? ?? ?? ??? ??
??? ?? ??(?, ??? ?)
34?? ??(linear array) ??
- ???? ??? N-1??, ?? ???? ??? ?? ??
- ?? ?? ?? ???? ? ??
- ?? ??? ??? ?? ??? ?? ?? ???, ??? ?? ????(N? ???)
?? ??? ?? ????
35??(ring) ??
- ???? ??
- ? ??? ????(bi-directional)?? ? N/2 ?
- ????(uni-directional)?? N-1
- ?? ?? ?? ??(chordal ring)
- ??? ?? ????? ???? ??? ??
- d(degree) ? ??? ??? ??? ?
36?? ??? ?? ?? ??
372? ??(binary tree) ??
- ?(level)? ?? k?? ? ? N(2k-1)?? ???? ??
- ???? ?? 2(k-1)
- ??? ???? ?? ???? ?? ??? ????? ??
38?? ??(fat tree) ??
- ?? ??? ????? ???? ?? ?? ?? ???? ??
- ?? ???? ?? ??? ????? ???? ???? ??? ??? ?? ????
?? - Thinking Machine ?? CM-5????? ?? ??
39?? ??(mesh network)
- Illiac IV, MPP, DAP, CM-2 ? Intel Paragon?? ??
40??? ????(torus network)
- ?? ??? ?? ??? ??? ??? ??? ??
- nn ???? ??? ???? ??? 2? n / 2 ?
41?? ????(cube network) (1)
- ???? ??
- Ci(bm-1 bm-2 ... bi1 bi bi-1 ... b1 b0)
bm-1 ... Bi ... b0 - ?, m log2N, N ?? ?? ?, 0 i lt m
- C0 ??
- C0(b2 b1 b0) b2 b1 b0
42?? ????(cube network) (2)
- C1 ??
- C1(b2 b1 b0) b2 b1 b0
43?? ????(cube network) (3)
- C2 ??
- C1(b2 b1 b0) b2 b1 b0
443?? ?? ??? ???
- ??? ?? ?? n?? ? ?, ?? ??? ?? 2n ?
45Shuffle-exchange ???? (1)
- shuffle ??? exchange ??? ??
- shuffle ?? S(bm-1 bm-2 ... b1 b0) bm-2
bm-3 ... b1 b0 bm-1
46Shuffle-exchange ???? (2)
- Exchange ??
- E(bm-1 bm-2 ... b1 b0) bm-1 bm-2 ... b1 b0
- N8? ??? ?? ???
478.4 ?? ???? ??
- ?????(superscalar) ??
- ???? ?? ?????? ?? ???(functional unit ALU ?? ???
?? ???)? ?? ? ?????, ? ????? ? ? ??? ????? ???
??? ? ??? ?? ?? - 4?? ?????, ????? ??? 2???? ?
- ?? 1 ??? ??(instruction fetch IF)
- ?? 2 ??? ??(instruction decode ID)
- ?? 3 ?? ??(EX)
- ?? 4 ?? ?? ??(writeback WB)
48?????? ????? ??? ??
49?????(superscalar) ??
- ? ???? ??? ??? ???? ???? ??? ??? ??? ?? ??
- k ?? ???? ??? ???? ????? ?????? N ?? ????? ????
? ??? ?? - m ?? ?? ????? ?? ????? ?????? N ?? ????? ???? ?
??? ?? ?? - ???, m ????? ??(degree of superscalar)
50?????(superscalar) ??
- ???? ????? ????? ??? ????? ????? ?? ? ?? ??
??(speedup Sp) - N ? 8 ??, Sp ? m
51??? ????? ?? ??
52VLIW(Very Long Instruction Word) ??
- ????? ?? ?? ?? ????? ??
- ????? ??? ??? ? ?? ??? ?? ????? ??? ??? ??? ?? ??
??? - ?????? ?? ?
- ??? ??? ? ??? ?? ??,
- ?? ???? ?? ?? ?? ????? ???? ??? ??
- Multiflow?? TRACE ???
- TRACE-7 ??? ?? ???? ? 7, ??? ?? 256 ??
- TRACE-28 ??? ?? ???? ? 28, ??? ?? 1024 ??
53VLIW ????? ??? ??? ?
- ? ?? ?? ????? ?? VLIW ????? ??? ??
54VLIW ????? ?? ?? ???
55???????(super-pipeline) ??
- ? ??? ? ? ?? ? ???? ??
- ????????? ??(degree of superpipelining)? n? ??
???? ?? ??? ??? ?? ???? 1/n - n 2? ?????????? ??? ?? ???
56???????(superpipeline) ??
- ??? ?? k? ??????? ???? N ?? ????? ???? ? ??? ??
- ???????? ?? ?? ??
- N ? 8??, Sp ? n
57Superpipelined Superscalar ??
- ???????? ?????? ??? ??
- ?? ???? ??? ??????? ??
- n 2, m 3 ? ????? ??? ?? ???
58Superpipelined Superscalar ??
- n 2, m 3 ?? N ?? ????? ???? ? ??? ??
- ?? ??
- N ? 8??, Sp ? m n