1、计算机组成全册配套计算机组成全册配套完整教学课件完整教学课件3 3Textbook and ReferencevComputer Organization & ArchitectureDesigning for Performance (Seventh Edition)By William Stallingsv计算机组织与体系结构性能设计(第计算机组织与体系结构性能设计(第7版)版)张昆藏张昆藏 译译v计算机组成与结构(第计算机组成与结构(第4版)版) 王爱英王爱英 主编主编v计算机组成原理(第计算机组成原理(第4版)版) 白中英白中英 主编主编Web resourcesv WillamSta
2、llings. com/COA/COA7e.htmlv WillamStallings. com/StudentSupport.htmlv Intel Developers Pagev PowerPC: Motorola & IBMv Top500 Supercomputer SiteCourse FeaturesvWhat about this course Specify the computer architecture and components How to organize these components Best optimizing the performance of w
3、hole computervMain courses involved Digital Logic Operating System Computer Interface Assemble Language Why is this course needed ?vFundamental course for programmer A course containing more hardware than software Instruction for further learning hardware vThe ideas and principles contained in this
4、course can be often used in programming vCommon knowledge Programmer should hold necessary hardware of computer Studying methodsvAttend lecture earnestlyvReview and digest in time (just after the class)vComplete our homeworkvFrequently consult the related Web site and know about the latest informati
5、onExaminationvFinal mark: Experiment:20% Homework and attitude:10% Final exam:70%vAttitude is anything!GoalsvSpecialty and professional English vReading carefully the book vRemember the basic concepts and important principles vAfter our class, we can read science and technology literatures without d
6、ictionaryvWrite dissertation abstractContentsvPart1: OverviewvPart2: Computer systemvPart3: CPUvPart4: CUvPart5: Parallel organization v17 chaptersPart One: OverviewvChapter 1: Introduction Introducing the computer components and their functionsvChapter 2: Computer Evolution and Performance1.1 Organ
7、ization & ArchitecturevComputer architecture:Ch. 1 1.1vComputer architecture: Def.1: design of the abstraction layers that allow us to implement information processing applications efficiently using available manufacturing technologies. Def.2:attributes visible to a programmer These attributes have
8、a direct impact on the logical execution of a program Conceptual structure and function characteristicCh. 1 1.1vComputer Organization Def.1:implement and interconnect operation units (components) specified in architecture Def.2:Fundamental attributes visible to a system designer An implementation of
9、 the architecture Ch. 1 1.1vComputer architecture refers to logical design of a computer; while computer organization is implementation of this logical design For example, whether a computer will have a multiplication function, it is an architecture issue; while how to implement the multiplier belon
10、gs to the organization concept Ch. 1 1.1vComputer Implementations Def.1: physical Implementations of computer components in organization Def.2: The hardware out of which we make computer systems.vTransparency/Transparent: For existed things or attributes, from a point of view, they are looked as not
11、 existed, this concept is called transparencyCh. 1 1.1vArchitectural attributes: instruction set,word length,I/O mechanism,addressing,etcvOrganizational attributes: control signal,interface,memory technology,bus technology, hardware details transparent to programmervImplement attributes: Integrated
12、Circuits (ICs), Printed Circuits (PC) boards, Power Supplies, Chassis, Connectors and Cables,etcCh. 1 1.1vSeries Computers: computers with the same architecture and different organization v(Software) compatibility/compatible: The software can operate in all computers with the same architecture. The
13、result is the same, difference exists in running time Ch. 1 1.1vUpward compatibility:program for low level computer can run over high level computer without modification vBackward compatibility:program for current computer can run over future computer without modification1.2 Structure and FunctionvC
14、omputer is a complex system Millions of basic electronic componentsvHow to describe a computer? HierarchicvAt each level, only structure and function are concerned for the designerCh. 1 1.2vStructure : the way in which components relate to each othervFunction : the operation of individual components
15、 as part of the structurevTop-down approach to describeCh. 1 1.2vAll computer functions are: Data processing Data storage Data movement ControlCh. 1 1.2vA Functional view of the computerDataMovementApparatusControlMechanismDataStorageFacilityDataProcessingFacilityCh. 1 1.2vData movement e.g. disk to
16、 memoryDataMovementApparatusControlMechanismDataStorageFacilityDataProcessingFacilityCh. 1 1.2vData Storage e.g. Internet download to diskDataMovementApparatusControlMechanismDataStorageFacilityDataProcessingFacilityCh. 1 1.2vData Processing from/to storage e.g. PS a pictureDataMovementApparatusCont
17、rolMechanismDataStorageFacilityDataProcessingFacilityCh. 1 1.2vProcessing from storage to I/O e.g. dealing by ATM DataMovementApparatusControlMechanismDataStorageFacilityDataProcessingFacilityCh. 1 1.2vStructureCh. 1 1.2vStructure - Top LevelComputerMain MemoryInputOutputSystemsInterconnectionPeriph
18、eralsCentralProcessing UnitComputerCommunicationlinesCh. 1 1.2vCPUComputerArithmeticand Logic UnitControlUnitInternal CPUInterconnectionRegistersCPUI/OMemorySystemBusCPUCh. 1 1.2vCUCPUControlMemoryControl Unit Registers and DecodersSequencingLogicControlUnitALURegistersInternalBusControl UnitCh. 1 1
19、.2vWhy study this course? In some degree, it teaches how we play game in cost and performance. As a designer, we can program a processor that is embedded in some real-time or larger system.VocabularyCentral Processing Unit:中央处理单元中央处理单元/CPUMain memory:主存:主存I/O subsystem 输入输入/输出子系统输出子系统Interconnection
20、:互连:互连Component:部件:部件/组件组件Arithmetic and logic unit:算术逻辑单元:算术逻辑单元Register:寄存器:寄存器Single-chip microcomputer:单片机:单片机Integrated circuit:集成电路:集成电路VocabularyArchitecture & organization:组成与系统结:组成与系统结构构Attribute : 属性属性Programmer:程序员:程序员Instruction set:指令集:指令集Addressing memory:可寻址内存:可寻址内存Interface:接口:接口Tran
21、sparency:透明性:透明性Peripheral:外设:外设VocabularyCompatibility:兼容性:兼容性Reduced instruction set computer:精简指令集计算机/RISCShort-term data storage:短时数据存储:短时数据存储Long -term data storage:长时数据存储:长时数据存储Processor:处理器:处理器Parallel and pipeline :并行与流水:并行与流水Microprogram :微程序微程序Key points What is the computer organization &
22、 architecture? Transparency What are computer functions Main components in a normal computer Main components in CPU and CUComputer Organization & ArchitectureChapter 2Computer Evolution and Performance2.1 A Brief History of Computerv4 generations from computer birth 1950 59 Vacuum tube 1960 68 Trans
23、istor 1969 77 Integrated Circuits 1978 ? Large-scale integration (LSI) and Very-large-scale integration (VLSI)Ch.2-2.1vComputer Pre-history v Charles Babbagev Analytical EngineApplication Mathematical Tables (Astronomy) and Nautical Tables (Navy)Background Any continuous function can be approximated
24、 by a polynomial Technology mechanical gears, Jacquards loom, simple calculatorsCh.2-2.1n Started 1943 and Finished 1946. n J.Presper Eckert & John Mauchlyn University of Pennsylvanian Used until 1955| The first general-purpose computer:ENIACCan conditional Jump and be programmable, distinguished it
25、from earlier onesUsed for computing artillery firing tablesCh.2-2.1vENIAC - details Decimal (not binary) 20 accumulators of 10 digits Programmed manually by switches 18,000 vacuum tubes 30 tons 15,000 square feet 140 kW power consumption 5,000 additions per secondCh.2-2.1v Von Neumann/Turing Begin 1
26、946, but not completed 1952 Stored program concept Main memory storing programs and data ALU operating on binary data Control unit interpreting instructions from memory and executing them Input and output equipment operated by control unit Princeton Institute for Advanced Studies IASCh.2-2.1 Structu
27、re of the IAS computerCh.2-2.1v IAS details 1000 x 40 bit words(1000 40bit storage units) Binary number 2 x 20 bit instructions(8bit opcode,12bit address) 21 instructions: data move, processing , storage Set of registers (storage in CPU) Memory Buffer Register, Memory Address Register, Instruction R
28、egister, Instruction Buffer Register Program Counter Accumulator Multiplier Quotient Expanded structure of IAS computerCh.2-2.1vIAS: Institute for Advanced Study (1952)Ch.2-2.1vIAS Instruction Set 21 Instructions Data Transfer Unconditional Branch Conditional Branch Arithmetic Address ModifyCh.2-2.1
29、vCommercial Computer Later of 1946, Eckert and Mauchly established the first computer company - Electronic Control Corp. Their first successful machine was the Universal Automatic Computer (UNIVAC) I. UNIVAC tasks involve scientific and commercial applications.Ch.2-2.1vUNIVAC-1(1951)Ch.2-2.1vIBM 701
30、 (1953)Ch.2-2.1v2nd Generation: Transistor Computer Transistor Invented in 1947 at Bell Labs Smaller, Cheaper and Less heat dissipation Solid state device made from Silicon More complex ALU and Control Units Use of higher level languages System Software I/O Channels NCR & RCA are front-runners IBM 7
31、000 series (1952) DEC (PDP-1: first DEC computer )Ch.2-2.1vIBM 7094 700 series in 1952 last member of 7000 in 1964 Memory 2K to 32K of 36 bit words Memory Cycle time fell from 30 micro sec to 1.4 micro sec Number of Opcodes grew from 24 to 185 Use of data channels Multiplexor to which all channels a
32、re connectedCh.2-2.1vIBM 7090 ConsoleCh.2-2.1v3rd generation: IC Computer Use of Integrated Circuits (IC) SSI & MSI based computer is the 3rd computer Examples IBM System/360 and DEC PDP-8 Family concept Similar or identical instruction set Similar or identical operating system Increasing speed, inc
33、reasing number of I/O ports, Increasing memory size and Increasing costCh.2-2.1vMicroelectronics In 1958,revolutionized achievement in electronics came: integrated circuit was invented - The era of microelectronics Transistor, resistance, capacitance made from semiconductor,together with whole circu
34、it can be put in a silicon wafer 60s later, small scale integration and medium scale integration came forthCh.2-2.1vIntegrated Circuits (2007 state-of-the-art) Bare Diew Primarily Crystalline Siliconw 1mm - 25mm on a sidew 2007 feature size 65 nm = 65 x 10-9 m (then 45, 32, 22, and 16 )w 100- 1000M
35、transistorsw 25 - 100M “logic gates”w 3 - 10 conductive layersw “CMOS” (complementary metal oxide semiconductor) - most common.Ch.2-2.1 Chip in Package Printed Circuit Boardsw Ceramic or plastic with gold wiresw Package provides: spreading of chip-level signal paths to board-level heat dissipationw
36、fiberglass or ceramicw 1-20 conductive layersw 1-20 in on a sidew IC packages are soldered down.w Provides: Mechanical support Distribution of power and heatCh.2-2.1vMoores Law 1965,Gordon Moore - cofounder of Intel Number of transistors on a chip will double every year Since 1970s development has s
37、lowed a little Number of transistors doubles every 18 months Cost of a chip has remained almost unchanged Higher packing density means shorter electrical paths, giving higher performance Smaller size gives increased flexibility Reduced power and cooling requirements Fewer interconnections increases
38、reliabilityCh.2-2.1Ch.2-2.1vIBM 360: A General-Purpose Register (GPR) MachineCh.2-2.1vProcessor State 16 General-Purpose 32-bit Registers may be used as index and base register Register 0 has some special propertiesv4 Floating Point 64-bit RegistersvA Program Status Word (PSW)vA 32-bit machine with
39、24-bit addresses But no instruction contains a 24-bit address!vData Formats 8-bit bytes, 16-bit half-words, 32-bit words, 64-bit double-wordsCh.2-2.1vDEC PDP-8 (1965)wFirst minicomputer wDid not need air conditioned roomwSmall enough to sit on a lab benchw$16,000 -$100k+ for IBM 360wBus structureCh.
40、2-2.1vDEC PDP-8Ch.2-2.1v4G:LSI&VLSI Computer Semiconductor memories 64 MB per chip Microprocessors Instruction set 150 Address bus width 32 Data Bus width 32 Memory addressability 4GB Bus bandwidth 32MB/sec Cache architecturesCh.2-2.1vIntel 4004 Diew Introduced in 1970w First microprocessorw 2,250 t
41、ransistorsw 12 mm2w 108 KHzCh.2-2.1vIntel 8086 Diew Introduced in 1979w 29,0000 transistorsw 33 mm2w 5 MHzw Basic architecture of the IA32 PCCh.2-2.1vIntel 80486 Die w Introduced in 1989w 1,200,000 transistorsw 81 mm2w 25 MHzw 1st pipelined implementation of IA32 PCCh.2-2.1vPentium Diew Introduced i
42、n 1993w 3,100,000 transistorsw 296 mm2w 60 MHzw 1st superscalar implementation of IA32Ch.2-2.1vPentium IIIw 9,5000,000 transistorsw 125 mm2w 450 MHzw Introduced in 1999w Superscalar processingCh.2-2.1Intel Microprocessorsv 1971 - 4004 First microprocessor All CPU components on a single chip 4 bitv F
43、ollowed in 1972 by 8008 8 bitv 1974 8080 Intels first general purpose microprocessorv 8086、8088、80286、80386、80486、pentium 1、2、3、4v Xeon (2001), Centrino, Itanium1,2, CoreCh.2-2.1vSummary on single Core RISC Revolution 1983, IBM 801, UCB RISC project, Stanford MIPS project - Make the microengine be t
44、he CPU! - Avoid inefficiency of interpretation layer - Let compilers do the optimizing - Implement on single chip Generic Unix BoxCh.2-2.1 Superscalar Processing 1990 (IBM Power-1) to present (almost all processors today) Basic idea: issue multiple instructions simultaneously - exploit fine-grained
45、parallelism within the instruction stream In-order (Alpha 21164) vs. out-of-order (MIPS R10K, Pentium Pro) Aggressive, pipelined cache and memory subsystemsCh.2-2.1vQuantity and Unit in common use Bit Byte K (Hz, bytes): -1024210 M: Mega (bytes,Hz): -10242220 G: Giga (bytes,Hz): - 10243230 T: tera (
46、bytes,Hz): -10244240 P: peta (bytes,Hz): -102452502.2 Designing for PerformancevMicroprocessor speed CPU/memory capacity follows Moores law See next Fig. The techniques for meet the CPU speed Branch predicion Data flow analysis Speculative execution Memory speed lags of CPUs speed CPU has to wait Bo
47、ttleneck Reduce the whole performanceCh.2-2.2|DRAM and Processor CharacteristicsCh.2-2.2Solutionsv Optimize system structure, balancing the whole performance of CPU, memory and I/O v Improve the interface between CPU and memory The interface is the key path responsible for transferring instruction a
48、nd data Increase number of bits retrieved at one time Make DRAM “wider” rather than “deeper” Change DRAM interface Cache Reduce frequency of memory access More complex cache and cache on chip Increase interconnection bandwidth High speed buses Hierarchy of busesCh.2-2.2v Evolution of Pentium 8080:th
49、e first general purpose CPU in the world 8bit,1974 8086(8088):16bit,Cache,1M main memory; 80286:extended product of 8088 16M main memory 80386:32bit,multi-task processor; 80486:high performance Cache,pipeline,math coprocessor; Pentium: Superscalar, instruction executed in parellel ; Pentium pro: bra
50、nch prediction, data flow analysis, speculative execution P:32bit. 64bit instructions:MMX; P:new float point instructions: 128bit : SSE, support 3-d graphics processing P: 32bit. Providing 128bit instructions: SSE2Ch.2-2.2vClassification of Computers Single-chip Single-board Microcomputer Minicomput