Computer Architecture Education Safwat Zaky Edward S. Rogers Sr. - - PowerPoint PPT Presentation

computer architecture education
SMART_READER_LITE
LIVE PREVIEW

Computer Architecture Education Safwat Zaky Edward S. Rogers Sr. - - PowerPoint PPT Presentation

Computer Organization and Computer Architecture Education Safwat Zaky Edward S. Rogers Sr. Department of Electrical and Computer Engineering University of Toronto NAS 2011 July 28-30, 2011 A long and Fascinating Journey 1946: INIAC


slide-1
SLIDE 1

NAS 2011 July 28-30, 2011

Computer Organization and Computer Architecture Education

Safwat Zaky Edward S. Rogers Sr. Department of Electrical and Computer Engineering University of Toronto

slide-2
SLIDE 2

NAS 2011 July 28-30, 2011

A long and Fascinating Journey

 1946: INIAC  30 tons  18,000 vacuum

tubes

 5000 additions per

second

2

 Today, MacBook Air  1.06 kg  Dual core, 2GB

memory, 250 GB flash disc

slide-3
SLIDE 3

NAS 2011 July 28-30, 2011

The Travelling Salesman Problem

 1954: Solved for the optimum route to visit 49

locations

 1987: 532 locations  1998: 13,509 locations  2006: 85,900 locations

3

slide-4
SLIDE 4

NAS 2011 July 28-30, 2011

Continuous Innovation

4

Computerarchitecture Hardware Technology Software

slide-5
SLIDE 5

NAS 2011 July 28-30, 2011

Is a course on computer architecture needed?

5

slide-6
SLIDE 6

NAS 2011 July 28-30, 2011

CcomC

6

Operating system, Compiler Applications Microelectronics Digital design Computer organization and architecture

slide-7
SLIDE 7

NAS 2011 July 28-30, 2011

 Bob Colwell (Intel’s chief architect on the

Pentium project) is quoted to have said “I can tell you with certainty that I did not really know how computers worked until I had to write in assembly … Only then did it truly dawn on me … what a compiler is targeting”

  • A. Clements, ASEE/IEEE Frontiers in Education Conf., 2008

7

slide-8
SLIDE 8

NAS 2011 July 28-30, 2011

“Computer architecture is a key component of computer engineering … It is difficult to design an operating system well without knowledge of the underlying architecture. Moreover, the computer designer must have an understanding

  • f software in order to implement the optimum

architecture.”

IEEE CE Curriculum Report, 2004

8

slide-9
SLIDE 9

NAS 2011 July 28-30, 2011

Introduction to System Integration

 A course on computer organization/architecture

provides an excellent introduction to system integration and the issues involved

 It is usually the first course to do so

9

slide-10
SLIDE 10

NAS 2011 July 28-30, 2011

 Students learn about interactions & trade-offs

Hardware  Software Parallel  Serial Cache size  Miss rate  Access time

10

slide-11
SLIDE 11

NAS 2011 July 28-30, 2011

Course Content

11

slide-12
SLIDE 12

NAS 2011 July 28-30, 2011

Basic content

 Digital systems  Data representation  ISA  Processor and memory organization  I/O subsystem  Computer arithmetic

12

slide-13
SLIDE 13

NAS 2011 July 28-30, 2011

Adequate detail

 While preparing the first edition of Computer

Organization (1978) we wrote: “Block diagrams are indispensable … However, it is important that they be supplemented with adequate details to encourage the student to dig underneath the surface.”

Zaky, Hamacher and Vranesic, IEEE Trans. On Education, Feb. 1977.

13

slide-14
SLIDE 14

NAS 2011 July 28-30, 2011

Integration and Breadth of Coverage

 An integrated view of hardware and software

14

Operating system, Compiler, Networks Digital design Computer organization and architecture

slide-15
SLIDE 15

NAS 2011 July 28-30, 2011

Organization of a RAM chip

slide-16
SLIDE 16

NAS 2011 July 28-30, 2011

An output interface

16

slide-17
SLIDE 17

NAS 2011 July 28-30, 2011

20

Detail

slide-18
SLIDE 18

NAS 2011 July 28-30, 2011

 Generation of an

  • bject program
slide-19
SLIDE 19

NAS 2011 July 28-30, 2011

Processor scheduling

19

slide-20
SLIDE 20

NAS 2011 July 28-30, 2011

IEEE/ACM Curricula

 ACM

1968 CS

 IEEE/ACM

1991 CS 2001 CS 2004 CE 2008 CS (Update)

20

slide-21
SLIDE 21

NAS 2011 July 28-30, 2011

CC1991 - Architecture

 Digital logic  Digital systems  Machine-level representation of data  Assembly-level machine organization  Memory system organization and architecture  Interfacing and communication  Alternative architectures

21

slide-22
SLIDE 22

NAS 2011 July 28-30, 2011

CC2001

 Much increased emphasis on performance

̶ Branch prediction, multithreading, superscaler

 Architecture for networks and distributed

systems

22

slide-23
SLIDE 23

NAS 2011 July 28-30, 2011

CC2008 Update

 Multiprocessing, Instruction level parallelism:

̶ Superscaler, VLIW, EPIC run-time vs. compile time ̶ SIMD, MIMD, multithreading, multicore, GPU

 Expanded content for the I/O section, modern

buses (USB, PCIe)

23

slide-24
SLIDE 24

NAS 2011 July 28-30, 2011

CC2008 -- Elective

 A new elective section: Devices

̶ Transducers ̶ Multimedia encoding and decoding

 More on application domains:

̶ Mobile applications ̶ Ubiquitous computing

24

slide-25
SLIDE 25

NAS 2011 July 28-30, 2011

CCCE 2004 Architecture and Organization

 Same basic content  More emphasis of interfacing and processor

design

 Needs updating

̶ Embedded systems

25

slide-26
SLIDE 26

NAS 2011 July 28-30, 2011

Recent Books: Patt& Patel

 LC-2, later LC-3, processor has a simplified ISA,

16 instructions, 5 addressing modes

 Highly suitable for a broad introduction in a

Freshman course, covering logic, programming and processor architecture

  • Y. Patt and S.J. Patel, “Introduction to Computing Systems: from

bits & gates to C and Beyond,” McGraw-Hill, 2004

26

slide-27
SLIDE 27

NAS 2011 July 28-30, 2011

Hamacher et al.

 … (basic material)  System software  I/O subsystem (USB, PCIe, …)  Embedded systems  System-on-a-chip – a case study  Parallel processing and performance

Hamacher, Vranesic, Zaky &Manjikian, Computer Organization and Embedded Systems, 6th edition, 2011

27

slide-28
SLIDE 28

NAS 2011 July 28-30, 2011

 ISA’s of commercial computers  Appendices

̶ Logic circuits ̶ The AlteraNios II processor ̶ The ColdFire processor ̶ The ARM processor ̶ The Intel IA-32 architecture

28

slide-29
SLIDE 29

NAS 2011 July 28-30, 2011

Ramachandran& Leahy

 A course at Georgia Tech takes a very broad

approach, integrating significant material on architecture, operating systems and networks Ramachandran and Leahy, WCAE – 2007

29

slide-30
SLIDE 30

NAS 2011 July 28-30, 2011

 … (basic material)  Operating systems  Memory management  File systems  Networks and protocols

Ramachandran and Leahy, “Computer Systems, An Integrated

Approach to Architecture and Operating Systems,” Addison Wesley, 2011

30

slide-31
SLIDE 31

NAS 2011 July 28-30, 2011

Motivating Students

31

slide-32
SLIDE 32

NAS 2011 July 28-30, 2011

 The computer architecture course has been

described as “boring” for students

 Part of the challenge is that the computer is

becoming increasingly invisible

 Students are looking for:

̶ Relevance ̶ Value ̶ Good learning experience

32

slide-33
SLIDE 33

NAS 2011 July 28-30, 2011

 What do students see?

̶ Pervasive/ubiquitous/embedded computing ̶ Social networking ̶ Energy concerns

 Danger of fragmentation of material and creating

survey-style courses

 Fundamentals must be covered in depth  But show how architecture supports applications

33

slide-34
SLIDE 34

NAS 2011 July 28-30, 2011

Ubiquitous Computing

 1991, Mark Weiser (Xerox Park):

“The most profound technologies are those that

  • disappear. They weave themselves into the

fabric of everyday life …”

 Tabs, pads and boards  Embedded systems

Scientific American, September 1991

34

slide-35
SLIDE 35

NAS 2011 July 28-30, 2011

Role of I/O

 Key enabling technologies are communications

and input/output subsystems

 Plug and play

PCI, USB

 High speed 

PCI express (PCIe)

 Networks

Protocol stack

35

slide-36
SLIDE 36

NAS 2011 July 28-30, 2011

Wireless -- Bluetooth

36

Smart phone Microwave oven Laptop Printer

slide-37
SLIDE 37

NAS 2011 July 28-30, 2011

Embedded Systems

 Rapidly-expanding applications  Many job opportunities  CE: may emphasize interconnections,

interfacing and FPGA implementations

 CS: Use of high-level languages

Real-time software

 There are many familiar examples

37

slide-38
SLIDE 38

NAS 2011 July 28-30, 2011

Digital camera

38

slide-39
SLIDE 39

NAS 2011 July 28-30, 2011

Microwave Oven

39

slide-40
SLIDE 40

NAS 2011 July 28-30, 2011

Optical position sensor

40

slide-41
SLIDE 41

NAS 2011 July 28-30, 2011

Solenoid actuator

41

slide-42
SLIDE 42

NAS 2011 July 28-30, 2011

Energy-efficient Computing

 Students are increasingly aware of the issue

̶ Mobile computing ̶ Conservation

 An introductory discussion would provide

interest and motivation

42

slide-43
SLIDE 43

NAS 2011 July 28-30, 2011

 A good example for the benefits of multicore and

many-core architectures

 Several examples in special section in Trans.

Comp., Dec. 2005

 Choose topics that relate to the instructor’s

research

43

slide-44
SLIDE 44

NAS 2011 July 28-30, 2011

Learning experience

 Importance of laboratory  Preferably with real hardware  Many universities developed laboratory setups,

  • ften using FPGA’s, e.g. U. of Washington
  • M. Holland et al, “Harnessing FPGAs for Computer Architecture

Education”, MSE’03

44

slide-45
SLIDE 45

NAS 2011 July 28-30, 2011

FPGA-based Setups

 FPGA manufacturers (particularly Altera and

Xilinx) offer well-equipped boards, with FPGA chips, memory, displays, switches, connectors, etc., specifically for university laboratories

 Support software and documentation, including

experiments

45

slide-46
SLIDE 46

NAS 2011 July 28-30, 2011

Experience at Georgia Tech

 The Systems course includes 60-90 hours of

unsupervised laboratory

 Student surveys at the beginning and end of

semester showed significant increase in students enthusiasm

46

slide-47
SLIDE 47

NAS 2011 July 28-30, 2011

Experience at ECE, U of T

 “Computer Organization” is offered in Second

Year, CE and EE

 Includes a substantial laboratory component

using Altera FPGA boards

 It is a key factor in attracting students to

Computer Engineering

47

slide-48
SLIDE 48

NAS 2011 July 28-30, 2011

Concluding Remarks

 Computer architecture is a key course that

provides a reference model, linking software and hardware

 To provide motivation and spur innovation,

course should connect basic material to recent developments and exciting applications

 Today, this means emphasizing parallel

processing, I/O subsystems and embedded computing

48

slide-49
SLIDE 49

NAS 2011 July 28-30, 2011

Questions/Comments

49