EE-F011 Computer Architecture 計算機結構

Download Report

Transcript EE-F011 Computer Architecture 計算機結構

EEF011
Computer Architecture
計算機結構
吳俊興
高雄大學 資訊工程學系
(中央研究院 資訊科學研究所)
September 22, 2004
Outline
• Class syllabus and schedule
• Microprocessor history and applications
• Chapter 1. Fundamental of Computer
Design
課程資訊
上課地點: C01-408
上課時間: 13:10 – 16:05, Wednesdays
E-mail: [email protected]
Tel: (07) 591-9518
Office: 理工二館300-3室(暫)、307室(未來)
Office hours: 14:00 – 16:00, Thursdays
Computer Architecture
• The term coined by IBM in the early 1960 (Amdahl,
Blaauw, and Brooks, 1964)
– Referred to the programmer-visible portion of the IBM 360
instruction set
• The first computer to sell in large quantities with both byte
addressing using 8-bit bytes and general-purpose registers
– They believed that a family of computers of the same
architecture should be able to run the same software
– Definition of architecture:
• The structure of a computer that a machine language programmer
must understand to write a correct (timing independent) program
for that machine
Digital Computer
What’s Computer Architecture?
• Computer Architecture is the science and art
of selecting and interconnecting hardware
components to create computers that meet
functional, performance and cost goals
• Computer architecture is not about using
computers to design buildings
http://www.cs.wisc.edu/~arch/www/
• Microprocessor, CPU
What’s Computer Architecture?
(Cont.)
• Computer Architecture is the design of the computer at the
hardware/software interface
• Computer Architecture = Instruction Set Architecture
+ Machine Organization
Computer Architecture
Instruction Set Design
Machine Organization
Computer Interface
Hardware Components
Compiler/System View
Logic Designer’s View
Key considerations in “Computer Architecture”
Application
Operating
System
Compiler
Instr. Set Proc.
Firmware
I/O system
Software
Instruction Set
Architecture
Datapath & Control
Digital Design
Circuit Design
Hardware
Layout
• Coordination of many levels of abstraction
• Under a rapidly changing set of forces
• Continuous evolution: Design, Measurement, and Evaluation
General Purpose vs. Special Purpose
• Desktop computers: performance/cost
– Personal computer, workstation
• Embedded computers: energy/power
– PlayStation-2 video game, digital camera, cell
phone, MP3 player, etc.
• Server computers: reliability, scalability and
throughput (rather than latency)
– typically include multiple processors and disks
教學目標
介紹現代微處理器的內部架構及設計考量,包括
指令集、記憶體結構、輸出入中介等,讓學生能
了解現代微處理器的構造原理、評估原則及與軟
體程式的互相影響,以期能增進學生微算機系統
設計及資訊系統效能提升的能力。
重要性
•高考三級資訊工程科第二試應考專業科目
1.資料結構(含資料庫)
2.系統程式(含作業系統)
3.離散數學
4.數位系統導論
5.計算機結構
6.計算機網路
•計算機組、半導體積體電路組必修科目
•碩、博士入學或資格相關考試科目
•產業需求:兩兆雙星
Textbooks
教科書
J. L. Hennessy and D. A. Patterson, Computer
Architecture: A Quantitative Approach, 3rd
Edition, 2003, Morgan Kaufmann Publishers,
Inc. (新月代理)
參考書
D. A. Patterson and J. L. Hennessy, Computer
Organization: The Hardware/Software
Interface, 2nd Edition, 1998, Morgan
Kaufmann Publishers, Inc.
課程內容與進度
Ch1. Fundamentals of Computer Design
Ch2. Instruction Set Principles and Examples
Ch3. Instruction-Level Parallelism and
Its Dynamic Exploitation
Ch4. Exploiting Instruction-Level Parallelism
with Software Approaches
Ch5. Memory Hierarchy Design
Ch6. Multiprocessors and Thread-Level Parallelism
Ch7. Storage Systems
Ch8. Interconnection Networks and Clusters
Advanced Topics: 64-bit Processors, Vector Processors,
Embedded Processors, etc.
Schedule
1. 9/22(三)
簡介
/Ch.1
10. 11/24(三) Ch. 5
2. 9/29(三)
Ch. 1
11. 12/01(三) Ch. 5
3. 10/06(三) Ch. 2
加退選; 分組(2-3人)
4. 10/13(三) Ch. 2
5. 10/20(三) Ch. 3
13. 12/15(三) Ch. 6
Proposal (10/19)
6. 10/27(三) Ch. 3
7. 11/03(三) Ch. 4
12. 12/08(三) Ch. 6
Paper report #2 (12/14)
14. 12/22(三) Ch. 7
15. 12/29(三) Ch. 7
16. 1/05(三)
Ch. 8
8. 11/10(三) Ch. 4
17. 1/12(三)
Ch. 8
9. 11/17(三) 期中考
18. 1/19(三)
期末考
Paper report #1 (11/02)
期末報告 (1/11)
Proposal format: title, motivation, introduction, anticipated results, references
Report format: review, comments
Final report and presentation (10-15 mins)
參考題目
• 64-bit CPU
• Embedded CPUs (Secure CPU; Network
processors)
• SoC
• Bio-chip
• Power-saving Issues
• I/O Interface (USB/S-ATA/SCSI)
• Hardware/software co-design
查詢工具
• IEEE Xplore
http://www.ieee.org/ieeexplore
• ACM Digital Library
http://www.acm.org/dl/
• ISI Web of Science
http://isiknowledge.com/
• Google (ext:pdf, site:edu)
http://www.google.com/
• CiteSeer – Scientific Literature Digital Library
http://citeseer.ist.psu.edu/
• NCSTRL - Networked Computer Science Technical Reference Library
http://www.ncstrl.org/
• DBLP - Computer Science Bibliography
http://www.informatik.uni-trier.de/~ley/db/
• WWW Computer Architecture Page
http://www.cs.wisc.edu/~arch/www/
• Tom's Hardware Guide - Processors
http://www.tomshardware.com/cpu/
評分標準 (暫定)
研究所
1. 習題作業及論文研讀報告 (20%)
2. 期中考 (20%)
3. 期末考 (25%)
4. 期末報告 (25%)
5. 學習態度與課堂表現 (10%)
大學部
1. 習題作業及論文研讀報告 (30%)
2. 期中考 (30%)
3. 期末考 (30%)
4. 學習態度與課堂表現 (10%)
Microprocessor History
Definitions
• A microprocessor is a silicon chip which forms
the core of a microcomputer
– the concept of what goes into a microprocessor
has changed over the years (see history)
• Microprocessors are used in two general
systems
– general purpose computing systems
– embedded control applications
• autos, ovens, phones, toys, . . .
• these are called microcontrollers
History
• Microprocessors have a short but significant
history
– In 1969, a Japanese company (Busicom)
approached Intel and asked them to build a set of
custom chips for a hand-held calculator
– Intel proposed a single programmable chip (4004)
– It was released in 1971 as the world’s first
microprocessor
• It was a 4 bit machine constructed out of 2300
transistors on a 16-pin chip
Growth
• In 1974, Intel released the first 8-bit microprocessor
the 8080
– it consisted of 6000 transistors and could address 64K of
memory
– Digital Research released the first general purpose
operating system for a microprocessor, CP/M in 1975
• In 1978, Intel released the 8086, a 16-bit
microprocessor constructed out of 29,000 transistors
– At the same time, other companies such as Texas
Instruments and Motorola released microprocessors
The First (?) PC
• Ed Roberts (at the “failing”
calculator company MITS) designs
Altair 8800 (1974)
– based on 8080 microprocessor,
– affordable price of $375
– no keyboard, no screen,
no storage,
– 4k memory, programmable by
means of a switch panel
Bill Gates and Paul Allen founded Microsoft(1975)
–BASIC 2.0 on the Altair 8800
–first high-level language available on a home
computer
Intel 4004
• First Microprocessor
– 1971
– 2300 transistors
– 4 bit bus
– 640 bytes of addressable
memory
– 750 KHz
Intel 8086
• First IBM PC Chip
– 1978
– 29,000 transistors
– 16 bit bus
– 1 MB addressable memory
– 10 MHz
Intel Pentium III
• Pentium III Processor
– 600 MHz, 9.5 M transistors
– 0.25u 5M process, 2.0V, 34.5W
– Dynamic Execution Superscalar pipeline
– 16/16 KB onchip I/D cache + 512KB offchip
2nd -level cache
– Up to 4GB of addressable memory space
Chip Performance
Perspective
• Putting performance growth in perspective:
IBM POWER2
Workstation
Cray YMP
Supercomputer
Year
1993
1988
MIPS
200 MIPS
50 MIPS
Cost
$120,000
$1,000,000
Clock
71.5 MHz
Cache
256 KB
0.25 KB
Memory
512 MB
256 MB
1988 supercomputer in 1993 server!
167 MHz
Capacity Growth
• Good news -- exponential growth in hardware capacity
– Logic growth: 60% to 80% per year
– DRAM growth: 60% per year (in 400% increments/3 years)
– Disk growth: 50% per year (was 25%/year until 1990)
• Bad news -- exponential growth in hardware usage
– Program size: 50% to 100% per year
• Increase software productivity -- standard components/interface layers
• Feature list increases -- “bloatware”
• Memory used to enhance user interface – GUI
• Results
– Storage may be approaching “free” on a per-bit basis, but somehow it
always seems to be full
Moore's Law
• Gordon Moore once observed that the speed and power of microprocessors
seems to double every 12 to 18 months. This trend has held true for the past 20
years and is showing no sign of slowing down.
• What does this mean for the future of computing? What other technologies can
you think of which get faster and more powerful every year, and yet also get
cheaper and more affordable!
Microprocessor Applications
•
Embedded Control
98%
Most microprocessors are sold
for embedded control
applications
2%
Other
CPUs
All
Microprocessors
98%
PCs
2%
CPUs
Embedded System Growth
• Embedded is the largest and fastest-growing
part of the worldwide microprocessor industry
• Embedded is approximately 100 % of
worldwide unit volume in microprocessors
• Average of 30-40 processors per home
– (only 5 are within the home PC)
• “Turley’s Law”:
– The amount of processing power on your person
will double every 12 months
Finally
• How to succeed in life . . .
Take a microprocessor/
microcontroller chip
Program way-cool
functions into it
Add support
chips
Sell it for Gigabucks
Build an embedded
system