51
3 May 2012 KIẾN TRÚC MÁY TÍNH Computer Architecture Nguyễn Kim Khánh, PhD. in Computer Engineering Bộ môn Kỹ thuật máy tính Viện Công nghệ thông tin và Truyền thông School of Information and Communication Technology (SoICT) IT3030 3 May 2012

Kiến trúc máy tính chương 1

  • Upload
    hakakao

  • View
    255

  • Download
    12

Embed Size (px)

DESCRIPTION

giáo trình

Citation preview

3 May 2012 KIN TRC MY TNH Computer Architecture Nguyn Kim Khnh, PhD. in Computer Engineering B mn K thut my tnh Vin Cng ngh thng tin v Truyn thng School of Information and Communication Technology (SoICT) IT30303 May 2012 NKK-HUT 23 May 20122 Contact DCEs Office:322-C1 SoICTs Office:320-C1 Mobile:091-358-5533 e-mail: [email protected] May 2012 NKK-HUT 33 May 20123 Gii thiu hc phn M s:IT3030 Khi lng:3(3-1-0-6) i tng tham d: Sinh vin i hc cc ngnh cng ngh thng tin t hc k 4. iu kin hc phn: Hc phn hc trc:IT1010 (THC) nh gi: TN/BT/KT(0,3)- T(0,7) IT30303 May 2012 NKK-HUT 43 May 20124 Mc tiu hc phn Gii thiu cc kin thc c bn v kin trc my tnh, bao gm: kin trc tp lnh v t chc ca my tnh, cng nh cc vn c bn trong thit k mt h thng my tnh. Sinh vin c kh nng nh gi c hiu nng ca cc h my tnh, khai thc v s dng hiu qu cc loi my tnh v c kh nng tip cn pht trin cc h my tnh nhng phc v cc mc ch chuyn dng.IT30303 May 2012 NKK-HUT 53 May 20125 Ti liu tham kho chnh 1. William Stallings - Computer Organization and Architecture Designing for Performance 2009 (8th edition) 2. David A. Patterson & John L. Hennessy - Computer Organization and Design: The Hardware/Software Interface 2009 (4th edition) 3. Behrooz Parhami - Computer Architecture: From Microprocessors to Supercomputers - 2005IT30303 May 2012 NKK-HUT 63 May 20126 Ti liu tham kho ... IT30303 May 2012 NKK-HUT 73 May 20127 Ni dung hc phn Chng 1. Gii thiu chung Chng 2. C bn v logic s Chng 3. H thng my tnh Chng 4. Kin trc tp lnh Chng 5. S hc my tnh Chng 6. B x l Chng 7. B nh Chng 8. Vo-ra Chng 9. Kin trc my tnh tin tin IT30303 May 2012 NKK-HUT 83 May 20128 Kin trc my tnh Chng 1 GII THIU CHUNG Nguyn Kim Khnh Trng i hc Bch khoa H Ni IT30303 May 2012 NKK-HUT 93 May 20129 1.1. My tnh v phn loi 1.2. Kin trc my tnh1.3. S pht trin ca my tnh 1.4. Hiu nng my tnh Ni dungIT30303 May 2012 NKK-HUT 103 May 201210 My tnh (Computer) l thit b in t thc hin cc cng vic sau: Nhn thng tin vo, X l thng tin theo dy cc lnh c nh sn bn trong, a thng tin ra. Dy cc lnh nm trong b nh yu cu my tnh thc hin cng vic c th gi l chng trnh (program) My tnh hot ng theo chng trnh. 1.1. My tnh v phn loi my tnh My tnh IT30303 May 2012 NKK-HUT 113 May 201211 My tnh ....

Cc thit b vo(Input Devices)B nh chnh(Main Memory)Cc thit b ra(Output Devices)B x l trung tm (Central Processing Unit) IT30303 May 2012 NKK-HUT 123 May 201212 Phn loi truyn thng: My vi tnh (Microcomputers) My tnh nh (Minicomputers) My tnh ln (Mainframe Computers) Siu my tnh (Supercomputers) Phn loi my tnh IT30303 May 2012 NKK-HUT 133 May 201213 Theo Hennessy/Patterson: My tnh bn (Desktop Computers) My ch (Server Computers) My tnh nhng (Embedded Computers) Phn loi my tnh hin i IT30303 May 2012 NKK-HUT 143 May 201214 L loi my tnh a nng a dng phn mm 1981 IBM gii thiu my tnh IBM-PC s dng b x l Intel 8088 1984 Apple a ra Macintosh s dng b x l Motorola 68000 Gi thnh: hng trm n hng nghn USD My tnh bn IT30303 May 2012 NKK-HUT 153 May 201215 Thc cht l my phc v Dng trong mng theo m hnh Client/Server (Khch hng/Ngi phc v) Tc v hiu nng tnh ton cao Dung lng b nh ln tin cy cao Gi thnh: hng nghn n hng chc triu USD.My ch (Servers)IT30303 May 2012 NKK-HUT 163 May 201216 L my tnh t n trong mt thit b khc iu khin thit b lm vic c thit k chuyn dng V d: in thoi di ng My nh s B iu khin trong TV, my git, Router b nh tuyn trn mng Gi thnh: vi USD n hng trm nghn USD.My tnh nhng (Embedded Computers) IT30303 May 2012 NKK-HUT 173 May 201217 1.2. Kin trc my tnh nh ngha trc y v kin trc my tnh: Cch nhn logic ca my tnh t ngi lp trnh (hardware/software interface) Kin trc tp lnh (Instruction Set Architecture ISA) L nh ngha hp IT30303 May 2012 NKK-HUT 183 May 201218 nh ngha ca Hennessy/ Patterson Kin trc my tnh bao gm: Kin trc tp lnh (Instruction Set Architecture): nghin cu my tnh theo cch nhn ca ngi lp trnh (hardware/software interface). T chc my tnh (Computer Organization): nghin cu thit k my tnh mc cao,chng hn nh h thng nh, cu trc bus, thit k bn trong CPU. Phn cng (Hardware): nghin cu thit k logic chi tit v cng ngh ng gi ca my tnh. Kin trc tp lnh thay i chm, t chc v phn cng my tnh thay i rt nhanh. IT30303 May 2012 NKK-HUT 193 May 201219 Kin trc tp lnh Kin trc tp lnh ca my tnh bao gm: Tp lnh: tp hp cc chui s nh phn m ho cho cc thao tc m my tnh c th thc hin Cc kiu d liu: cc kiu d liu m my tnh c th x lIT30303 May 2012 NKK-HUT 203 May 201220 Cu trc c bn ca my tnh CPUB nh chnhBus lin kt h thngVo-raIT30303 May 2012 NKK-HUT 213 May 201221 B x l trung tm (Central Processing Unit): iu khin hot ng ca my tnh v x l d liu. B nh chnh (Main Memory): Cha cc chng trnh v d liu ang c s dng. Vo ra (Input/Output): Trao i thng tin gia my tnh vi bn ngoi. Bus lin kt h thng (System Interconnection Bus): Kt ni v vn chuyn thng tin gia cc thnh phn vi nhau. Cc thnh phn c bn ca my tnh IT30303 May 2012 NKK-HUT 223 May 201222 M hnh phn lp ca my tnh

Cc ng dngCc phn mm trung gianH iu hnhPhn cngNg- i s dngNg- ilp trnhNg- i thit k HH Phn cng (Hardware): h thng vt l ca my tnh. Phn mm (Software): cc chng trnh v d liu. IT30303 May 2012 NKK-HUT 233 May 201223 1.3. S pht trin ca ca my tnh Cc th h my tnh Th h th nht: My tnh dng n in t chn khng (1950s) Th h th hai: My tnh dng transistor (1960s) Th h th ba: My tnh dng vi mch SSI, MSI v LSI (1970s) Th h th t: My tnh dng vi mchVLSI (1980s) Th h th nm: My tnh dng vi mchULSI, SoC (1990s) IT30303 May 2012 NKK-HUT 243 May 201224 ENIAC- My tnh in t u tin Electronic Numerical Intergator And Computer D n ca B Quc phng M Do John Mauchly v John Presper Eckert i hc Pennsylvania thit k. Bt u t nm 1943, hon thnh nm 1946 My tnh dng n in t IT30303 May 2012 NKK-HUT 253 May 201225 Nng 30 tn 18000 n in t v 1500 rle 5000 php cng/giy X l theo s thp phn B nh ch lu tr d liu Lp trnh bng cch thit lp v tr ca cc chuyn mch v cc cp ni.ENIAC IT30303 May 2012 NKK-HUT 263 May 201226 l my tnh IAS: Princeton Institute for Advanced Studies c bt u t 1947, hon thnh1952 My tnh von Neumann Do John von Neumann thit k c xy dng theo tng chng trnh c lu tr (stored-program concept) ca von Neumann/Turing (1945) IT30303 May 2012 NKK-HUT 273 May 201227 Bao gm cc thnh phn: n v iu khin, n v s hc v logic (ALU), b nh chnh v cc thit b vo-ra. B nh chnh cha chng trnh v d liu B nh chnh c nh a ch theo tng ngn nh, khng ph thuc vo ni dung ca n. ALU thc hin cc php ton vi s nh phn n v iu khin nhn lnh t b nh, gii m v thc hin lnh mt cch tun t. n v iu khin iu khin hot ng ca cc thit b vo-ra Tr thnh m hnh c bn ca my tnhc im chnh ca my tnh IAS IT30303 May 2012 NKK-HUT 283 May 201228 Cc my tnh thng mi ra i 1947 - Eckert-Mauchly ComputerCorporation UNIVAC I (Universal Automatic Computer) 1950s - UNIVAC II Nhanh hn B nh ln hn IT30303 May 2012 NKK-HUT 293 May 201229 Hng IBM IBM - International Business Machine 1953 - IBM 701 My tnh lu tr chng trnh u tin ca IBM S dng cho tnh ton khoa hc 1955 IBM 702 Cc ng dng thng mi IT30303 May 2012 NKK-HUT 303 May 201230 My tnh PDP-1 ca DEC (Digital Equipment Corporation) my tnh mini u tin IBM 7000 Hng trm nghn php cng trong mt giy. Cc ngn ng lp trnh bc cao ra i. My tnh dng transistor IT30303 May 2012 NKK-HUT 313 May 201231 Vi mch (Integrated Circuit - IC): nhiu transistor v cc phn t khc c tch hp trn mt chip bn dn. SSI (Small Scale Integration) MSI (Medium Scale Integration) LSI (Large Scale Integration) VLSI (Very Large Scale Integration) (th h th t) ULSI (Ultra Large Scale Integration) (th h th nm) SoC (System on Chip) Siu my tnh xut hin: CRAY-1, VAX B vi x l (microprocessor) ra i B vi x l u tin Intel 4004 (1971). My tnh dng vi mch SSI, MSI v LSI IT30303 May 2012 NKK-HUT 323 May 201232 Lut Moore Gordon Moore ngi ng sng lp Intel S transistors trn chip s gp i sau 18 thng Gi thnh ca chip hu nh khng thay i Mt cao hn, do vy ng dn ngn hn Kch thc nh hn dn ti phc tp tng ln in nng tiu th t hn H thng c t cc chip lin kt vi nhau, do tng tin cy IT30303 May 2012 NKK-HUT 333 May 201233 IBM 360 Family v PDP-11 (1973) IT30303 May 2012 NKK-HUT 343 May 201234 VAX-11, Micro VAX, CRAY-1 IT30303 May 2012 NKK-HUT 353 May 201235 Cc sn phm chnh ca cng ngh VLSI/ULSI: B vi x l (Microprocessor): CPU c ch to trn mt chip. Vi mch iu khin tng hp (Chipset): mt hoc mt vi vi mch thc hin c nhiu chc nng iu khin v ni ghp. B nh bn dn (Semiconductor Memory): ROM, RAM Cc b vi iu khin (Microcontroller): my tnh chuyn dng c ch to trn 1 chip. My tnh dng vi mch VLSI/ULSI IT30303 May 2012 NKK-HUT 363 May 201236 S pht trin ca b vi x l 1971: b vi x l 4-bit Intel 4004 1972-1977: cc b x l 8-bit 1978-1984: cc b x l 16-bit Khong t 1985: cc b x l 32-bit Khong t 2000: cc b x l 64-bit T 2006: cc b x l a li (multicores): IT30303 May 2012 NKK-HUT My tnh ngy nay Clusters Massive Cluster Gigabit Ethernet Robots Routers Cars Sensor Nets Refrigerators 37IT30303 May 2012 NKK-HUT 1.4. Hiu nng my tnh nh ngha hiu nng: Performance = 1/Execution Time My tnh X nhanh hn my Y n ln n = =X YY Xtime Execution time Executione Performanc e Performanc V d: Thi gian chy chng trnh: 10s trn my A, 15s trn my B Execution TimeB / Execution TimeA = 15s / 10s = 1.5 Vy my A nhanh hn my B 1.5 ln 38IT30303 May 2012 NKK-HUT Xung nhp ca CPU Hot ng ca CPU c iu khin bi xung nhp c tn s xc nh Clock (cycles) Data transfer and computation Update state Clock period Chu k xung nhp (Clock period): thi gian ca mt chu k: VD: 250ps = 0.25ns = 2501012s Tn s xung nhp (Clock frequency hay Clock rate): s chu k trong 1 giy: VD: 4.0GHz = 4000MHz = 4.0109Hz 39IT30303 May 2012 NKK-HUT Thi gian CPU Hiu nng c tng ln bng cch: Gim s chu k xung nhp Tng tn s xung nhp (Clock Rate) Rate ClockCycles Clock CPUTime Cycle Clock Cycles Clock CPU Time CPU= =40IT30303 May 2012 NKK-HUT V d My tnh A: 2GHz clock, 10s CPU time My tnh B 6s CPU time S chu k xung nhp ca B = 1.2 x S chu k xung nhp ca A Xc nh tn s xung nhp ca my B? 4GHz6s10 246s10 20 1.2Rate Clock10 20 2GHz 10sRate Clock Time CPU Cycles Clock6sCycles Clock 1.2Time CPUCycles ClockRate Clock9 9B9A A AABBB== = = = == =41IT30303 May 2012 NKK-HUT S lnh v s chu k trn mt lnh S lnh ca chng trnh: IC (Instruction Count): c xc nh bi chng trnh, kin trc tp lnh v chng trnh dch S chu k trn mt lnh: CPI (Cycles per Instruction) CPI trung bnh: c xc nh bi phn cng CPU Cc lnh khc nhau c CPI khc nhau Rate ClockCPI Count n InstructioTime Cycle Clock CPI Count n Instructio Time CPUn Instructio per Cycles Count n Instructio Cycles Clock= = =42IT30303 May 2012 NKK-HUT V d My tnh A: Cycle Time = 250ps, CPI = 2.0 My tnh B: Cycle Time = 500ps, CPI = 1.2 Cng kin trc tp lnh (ISA) My no nhanh hn v nhanh hn bao nhiu ? 1.2500ps I600ps IATime CPUBTime CPU600ps I 500ps 1.2 IBTime CycleBCPI Count n InstructioBTime CPU500ps I 250ps 2.0 IATime CycleACPI Count n InstructioATime CPU== = = = = = =A nhanh hn ln 43IT30303 May 2012 NKK-HUT Chi tit hn v CPI Nu loi lnh khc nhau c s chu k khc nhau = =n1 ii i) Count n Instructio (CPI Cycles Clock CPI trung bnh: =|.|

\| = =n1 iiiCount n InstructioCount n InstructioCPICount n InstructioCycles ClockCPI44IT30303 May 2012 NKK-HUT V d Cho bng ch ra cc dy lnh s dng cc lnh thuc cc loi A, B, C Loi lnhABC CPI theo loi lnh123 IC trong dy lnh 1212 IC trong dy lnh 2411 Dy lnh 1: IC = 5 Clock Cycles = 21 + 12 + 23 = 10 Avg. CPI = 10/5 = 2.0 Dy lnh 2: IC = 6 Clock Cycles = 41 + 12 + 13 = 9 Avg. CPI = 9/6 = 1.5 45IT30303 May 2012 NKK-HUT Tm tt v Hiu nng Hiu nng ph thuc vo: Thut ton: nh hng ti IC, c th c CPI Ngn ng lp trnh: nh hng ti IC, CPI Chng trnh dch: nh hng ti IC, CPI Kin trc tp lnh: nh hng ti IC, CPI, Tc cycle ClockSecondsn Instructiocycles ClockProgramns InstructioTime CPU =46IT30303 May 2012 NKK-HUT MIPS nh l thc o hiu nng MIPS: Millions of Instructions Per Second (S triu lnh trn 1 giy) 66610 CPIrate Clock10rate ClockCPI count n Instructiocount n Instructio10 time Executioncount n InstructioMIPS===47 610 MIPSrate ClockCPI=IT30303 May 2012 NKK-HUT 483 May 201248 V d Tnh MIPS ca b x l vi: clock rate = 2GHz v CPI = 4 0.5ns 2ns 1 chu k = 1/(2x109) = 0,5ns CPI = 4 1 lnh = 4x0,5ns = 2ns Vy b x l thc hin c 500MIPS IT30303 May 2012 NKK-HUT 493 May 201249 V dTnh CPI ca b x l vi: clock rate = 1GHz v 400 MIPS? 1ns 4x108 lnh thc hin trong 1s 1 lnh thc hin trong 1/(4x108)s = 2,5ns CPI = 2,5 IT30303 May 2012 NKK-HUT 503 May 201250 MFLOPS Millions of Floating Point Operations per Second (S triu php ton s du phy ng trn mt giy) GFLOPS109 TFLOPS1012 610 time Executionoperations point floating ExecutedMFLOPS=IT30303 May 2012 NKK-HUT 513 May 201251 Ht chng 1 IT30303 May 2012