0% found this document useful (0 votes)
112 views59 pages

ECE 445 - Fall 2020 - Lecture 1 - Course Introduction

This document provides an overview of the ECE 445 Computer Organization course. It introduces the instructor, topics covered in the course including computer history, organization, and design. It outlines the reading assignments, homework, exams, labs and grading policy. The labs involve designing and implementing a MIPS processor in VHDL on the Digilent Basys3 board. Students will work in pairs on the lab assignments.

Uploaded by

陳柏鈞
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
112 views59 pages

ECE 445 - Fall 2020 - Lecture 1 - Course Introduction

This document provides an overview of the ECE 445 Computer Organization course. It introduces the instructor, topics covered in the course including computer history, organization, and design. It outlines the reading assignments, homework, exams, labs and grading policy. The labs involve designing and implementing a MIPS processor in VHDL on the Digilent Basys3 board. Students will work in pairs on the lab assignments.

Uploaded by

陳柏鈞
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
You are on page 1/ 59

Fall 2020 ECE 445 - Computer Organization 1

WELCOME TO
COMPUTER ORGANIZATION
ECE 445 – Computer Organization
Dr. Craig Lorie
Electrical and Computer Engineering
Lecture #1
Fall 2020 ECE 445 - Computer Organization 2

Topics Covered
• Course Introduction
• Instructor information
• Homework, exams, grading
• Class meetings, class preparation, and class exercises.
• Labs (Machine Projects)
• History
• Key developments in electronics and computing.
• Moore’s Law
• Introduction to Computer Organization
• A basic computer system, and a simple CPU.
• Memory and I/O.
Fall 2020 ECE 445 - Computer Organization 3

Reading Assignment
• Hennessey/Patterson: Appendix B
• Hennessey/Patterson: 1.1 – 1.5, 1.12
Fall 2020 ECE 445 - Computer Organization 4

COURSE OVERVIEW
Fall 2020 ECE 445 - Computer Organization 5

Course Overview
• General overview of the operation of a digital computer.
• Design of the datapath and control unit of a simple processor.
• Including the ALU, Register file, memories, and other components.
• Hardwired and microprogrammed implementations of the control unit.
• Memory technologies and the hierarchical memory system.
• Read-only, Read-write, volatile, non-volatile, etc.
• Cache, main memory, and secondary memory.
• Programming in (MIPS) assembly language.
• Implementing high-level language constructs in assembly language.
• Converting between assembly language and machine language.
• Behavioral modeling of the computer organization using VHDL.
Fall 2020 ECE 445 - Computer Organization 6

Course Overview (continued)


• Course includes a demanding design component.
• Design, implement, and simulate a simple processor.
• MIPS processor.
• Using VHDL, schematic capture, and the Xilinx Vivado design suite.
• Processor will be realized using the Digilent Basys3 board.
• Processor will be programmed using assembly language.
Fall 2020 ECE 231 - Digital System Design 7

Topics Covered in this Course


• Topics covered in this course include:
1. .
2. .
3. .
4. .
5. .
6. .
7. .
8. .
9. .

• A more detailed list can be found in the course Syllabus.


Fall 2020 ECE 445 - Computer Organization 8

Course Information
• Course: ECE 445 (Computer Organization)

• Course website:
• Blackboard (http://mymason.gmu.edu)
• Lectures, Homework assignments, Labs (ECE 332), Resources, etc.

• Prerequisites
• ECE 331 – Digital System Design
• ECE 332 – Digital System Design Lab
• CS 222 – Computer Programming for Engineers (C programming)
Fall 2020 ECE 445 - Computer Organization 9

Instructor Information
• Instructor: Dr. Craig Lorie
• GMU Webpage
• https://ece.gmu.edu/~clorie/
• Office
• 3221 Nguyen Engineering Building
• Phone
• (703) 993 - 9616
• Email
[email protected]
• Office Hours
• Posted on Blackboard and on office door.
Fall 2020 ECE 445 - Computer Organization 10

Required Textbook
• Computer Organization and Design
• The hardware / software interface
• by David Patterson and John Hennessey
• 5th Edition
• ISBN-13: 978-0-12-407726-3
Fall 2020 ECE 445 - Computer Organization 11

Another Useful Textbook


• Introduction to Embedded Systems
• Using Microcontrollers and the MSP430
• by Jimenez, Palomera, and Couvertier
• ISBN-13: 978-1-4614-3143-5

• Can be downloaded for free via the


Mason library.
• http://link.springer.com/book/10.1007%
2F978-1-4614-3143-5
Fall 2020 ECE 445 - Computer Organization 12

Class Meetings
• This course has been designed to improve learning and
retention through active participation.

• Each class meeting will consist of:


1. A presentation by the instructor
• To provide an overview of the material covered.
2. In-class exercises
• Provide practice necessary to learn (and retain) the material.

• You must be prepared for each class meeting.


• Review lecture materials prior to class.
• Complete reading assignment prior to class.
Fall 2020 ECE 445 - Computer Organization 13

Class Exercises
• Class exercises will
• Focus on material covered in the lecture (and associated reading).
• Facilitate active engagement in the class
• Aids in the learning process
• Leads to improved retention
• Answers submitted via Blackboard.
• You can use your smartphone, tablet, or laptop.
• You will receive one point for each correct answer.
• You will have two attempts to submit your answers.
• You will receive the higher of the two scores.
• You must be in class to get credit for the class exercises.
• If you fail to attend class, you will receive a zero for the exercises.
Fall 2020 ECE 445 - Computer Organization 14

Homework
• Homework is assigned on a weekly basis.
• Covers the material discussed in class and in the reading.
• Submitted via Blackboard by 11:59 PM on due date.
• Must be scanned and submitted in PDF format. No pictures!
• Late submissions will NOT be accepted.
• Each homework assignment will include:
• Five required problems. You must complete these problems.
• Additional practice problems. You are encouraged to complete these.
• Required problems will be graded (1 point each).
• Lowest homework grade will be dropped.
• You are encouraged to work together on the assignments.
• However, you must submit your own solutions.
Fall 2020 ECE 445 - Computer Organization 15

Exams
• Two midterm exams and a Final exam.
• All exams are cumulative.
• All exams are closed book.
• The MIPS Reference Card (i.e. Green card) may be used on all exams.
• See class schedule for exam dates.
• No makeup exams.
• Contact me in advance, if there is a conflict or a problem.
• In the event of an emergency, contact me as soon as possible.
• You must provide the proper documentation if an exam is missed.
• You will be required to use the Respondus Lockdown browser
and a Webcam when taking each exam.
• If your OS does not support the lockdown browser or you do not have a
webcam, you must speak with me to make alternate arrangements.
Fall 2020 ECE 445 - Computer Organization 16

Lab Experiments
• Six VHDL-based lab experiments.
• Lab experiments will focus on the design, implementation,
synthesis, and programming of the single-cycle MIPS processor.
• Design and simulation using VHDL and the Xilinx Vivado design suite
• Synthesis using the Digilent Basys3 board.
• Programming done in MIPS assembly language.
• Students will work in groups (of two).
• You will select or be assigned a partner (prior to the due date of Lab 1).
• If you wish to work individually, you must get permission from instructor.

• Due date of each experiment is specified in the lab schedule.


• See lab syllabus for penalties associated with late submission.
Fall 2020 ECE 445 - Computer Organization 17

Lab Meetings
• The TA will provide an introduction to each lab experiment.
• See lab schedule for appropriate dates.
• Each lab group will
• Submit one solution via Blackboard by the specified due date.
• Demonstrate the solution during the assigned lab meeting.
• The TA will assess the solution during the lab meeting.
• Each student will be asked questions about the solution.
• TA will evaluate each student’s understanding of the solution.
• Each student will be graded accordingly.

• Attendance in lab is mandatory.


• Including those weeks during which no experiment is due.
• Failure to attend lab will result in a reduction in the experiment grade.
Fall 2020 ECE 445 - Computer Organization 18

Discussion Board
• Four discussion forums created on Blackboard:
• General questions
• Lecture materials, class exercises, and assignments.
• Exams
• Labs
• All questions should be posted on the appropriate forum.
• Questions will not be addressed via email.
• Please subscribe to each of the forums.
Fall 2020 ECE 445 - Computer Organization 19

Grading
• Final numeric grade calculated as follows:
• Homework Assignments 5%
• Program Assignments 5%
• Class Exercises 5%
• Lab Experiments 25%
• Midterm #1 17.5%
• Midterm #2 17.5%
• Final 25%

• A final letter grade will be assigned after first scaling the class
average to 78 (C+).
Fall 2020 ECE 445 - Computer Organization 20

Xilinx Software (Required)


• The Xilinx Vivado Design Suite is used for
• Design entry (VHDL and Schematic Capture)
• Circuit simulation
• Circuit synthesis

• Information about the Vivado Design Suite can be found online:


• http://www.xilinx.com/products/design-tools/vivado.html

• The TA will provide you with information about how to


download and install the Xilinx Vivado Design Suite.
Fall 2020 ECE 445 - Computer Organization 21

Development Board (Required)


• Digilent Basys3 Board.
• Contains the Xilinx Artix-7 FPGA.
• Technical information about the board can be found online:
• http://store.digilentinc.com/basys-3-artix-7-fpga-trainer-board-recommended-for-introductory-users/
• https://reference.digilentinc.com/_media/basys3:basys3_rm.pdf
Fall 2020 ECE 445 - Computer Organization 22

VHDL
• Very High Speed Integrated Circuit (VHSIC)
• Hardware
• Description
• Language
• A formal language for specifying the behavior and structure
of a digital circuit.

• Write and simulate VHDL code using the Vivado Design Suite.
• Program the Xilinx FPGA using the Vivado Design Suite.
• Test synthesized digital circuit using the Digilent Basys3 board.
Fall 2020 ECE 445 - Computer Organization 23

MIPS Simulators
• MARS (MIPS Assembler and Runtime Simulator)
• A lightweight IDE for programming in MIPS assembly language.
• Includes an editor, debugger, and simulator.
• Shows the values contained in the registers and memory locations.
• A tutorial will be provided for MARS.

• SPIM (“MIPS” spelled backwards)


• A MIPS processor simulator designed to run assembly language code for
this architecture.
• Programs must be written separately in a text editor.
• And then imported into SPIM (for simulation).
• Appendix A.9 of COD is devoted to the SPIM simulator.
• No support will be provided for this simulator.
Fall 2020 ECE 445 - Computer Organization 24

Cheating
• An Honor Code Violation.
• Typical academic sanctions for honor code violations:
• Zero on the exam/assignment.
• F in the course.
• More severe sanctions for second violation.
• See the following website for more information about
academic and additional sanctions:
• http://oai.gmu.edu/understanding-the-consequences/
• See the following website for the Mason Honor Code:
• http://oai.gmu.edu/the-mason-honor-code/

• The best way to avoid problems is to simply NOT cheat!


Fall 2020 ECE 445 - Computer Organization 25

Syllabus and Schedule


• The syllabus and schedule are posted on Blackboard.

• The syllabus contains a detailed discussion of the guidelines


and expectations for this course.
• You are expected to read and be familiar with the course syllabus.

• The schedule includes


• the list of topics covered (and their associated dates)
• required reading assignment for each topic
• due dates for all homework assignments
• (due dates for all labs)
• dates of all exams
Fall 2020 ECE 445 - Computer Organization 26

HISTORY
Fall 2020 ECE 445 - Computer Organization 27

History

“Programmable electronic devices of all sorts have come


to pervade modern society to such a degree that future
generations may well designate the 20th century as the
Computer Age.”

From ‘Greatest Engineering Achievements of the 20th Century’: http://www.greatachievements.org/


Fall 2020 ECE 445 - Computer Organization 28

History
1939 • First binary digital computers developed.
1943
1946 • George Stibitz (Bell Labs)
1949 • Complex Number Calculator
1951 • Performs binary mathematical operations in
1960 binary using on-off relays.
1975
1977 • Konrad Zuse (Germany)
1981 • First programmable calculator (Z2)
• Uses binary numbers and Boolean algebra.
1984
• Programmed with punched tape.
2010

From ‘Greatest Engineering Achievements of the 20th Century’: http://www.greatachievements.org/


Fall 2020 ECE 445 - Computer Organization 29

History
• First vacuum-tube programmable logic
1939 calculator.
1943
1946 • Britain
1949 • Colossus
1951 • Built for the purpose of breaking Nazi codes.
1960
Colossus Mark 2 Computer
1975 From: https://en.wikipedia.org/wiki/
Colossus_computer
1977
1981
1984
2010

From ‘Greatest Engineering Achievements of the 20th Century’: http://www.greatachievements.org/


Fall 2020 ECE 445 - Computer Organization 30

History
1939 • First electronic computer put into
1943 operation.
1946
1949 • John Mauchly and John Presper Eckert
1951 • (University of Pennsylvania)
1960 • Electronic Numerical Integrator and
1975 Computer (ENIAC)
1977 • Used for ballistics computations (in late WWII).
• Weighs 30 tons and includes 18000 vacuum
1981
tubes, 6000 switches, and 1500 relays.
1984
2010

From ‘Greatest Engineering Achievements of the 20th Century’: http://www.greatachievements.org/


Fall 2020 ECE 445 - Computer Organization 31

History
1939 ENIAC
1943
1946
1949
1951
1960
1975
1977
1981
1984
2010

From Hennessey and Patterson. “Computer Organization and Design”, 5 th Edition.


Fall 2020 ECE 445 - Computer Organization 32

History
1939 • First stored-program computer is built.
1943
1946 • Maurice Wilkes (Britain)
1949 • Electronic Delay Storage Automatic
1951 Calculator (EDSAC)
1960
1975
1977
1981
1984
2010

From ‘Greatest Engineering Achievements of the 20th Century’: http://www.greatachievements.org/


Fall 2020 ECE 445 - Computer Organization 33

History
1939 • First computer designed for US business.
1943
1946 • Eckert and Mauchly
1949 • Universal Automatic Computer (UNIVAC)
1951 • Key feature: uses magnetic tape storage rather
1960 than punched tape.
1975
1977 • J. Lyons & Company (Britain)
1981 • Lyons Electronic Office (LEO)
• Unveiled for business use months before UNIVAC.
1984
2010

From ‘Greatest Engineering Achievements of the 20th Century’: http://www.greatachievements.org/


Fall 2020 ECE 445 - Computer Organization 34

History
1939 UNIVAC
1943
1946
1949
1951
1960
1975
1977
1981
1984
2010

From Hennessey and Patterson. “Computer Organization and Design”, 5 th Edition.


Fall 2020 ECE 445 - Computer Organization 35

History
1939 • DEC introduces the “compact” PDP-1.
1943
1946 • Digital Equipment Corporation (DEC)
1949 • PDP-1 introduced for the science and
1951 engineering market.
1960 • The system costs $125000, fits in a corner of a

1975
room, and doesn’t require air conditioning.

1977
1981 • PDP-8 is released five years later.
• First computer to fully use integrated circuits.
1984
2010

From ‘Greatest Engineering Achievements of the 20th Century’: http://www.greatachievements.org/


Fall 2020 ECE 445 - Computer Organization 36

History
1939 PDP-1
1943
1946
1949
1951
1960
1975
1977
1981
1984
2010

From: ‘The PDP-1’ by George Michael, http://www.computer-history.info/Page4.dir/pages/PDP.1.dir/#album


Fall 2020 ECE 445 - Computer Organization 37

History
1939 • First home computer is marketed to
1943 hobbyists.
1946
1949 • Micro Instrumentation Telemetry Systems
1951 • Altair 8800
1960 • Build-it yourself kit

1975 • Doesn’t include a keyboard, monitor, or its own


programming language.
1977
• Includes an Intel microprocessor.
1981 • Costs less than $400.
1984 • A version of BASIC is developed for it by Bill
2010 Gates and Paul Allen.

From ‘Greatest Engineering Achievements of the 20th Century’: http://www.greatachievements.org/


Fall 2020 ECE 445 - Computer Organization 38

History
1939 • Apple II released.
1943
1946 • Steve Jobs and Steve Wozniak
1949 • (Apple Computer)
1951 • Apple II
1960 • Desktop personal computer for the mass market.
1975 • Features a keyboard, monitor, mouse, and

1977
random-access memory (RAM).

1981
1984
2010

From ‘Greatest Engineering Achievements of the 20th Century’: http://www.greatachievements.org/


Fall 2020 ECE 445 - Computer Organization 39

History
1939 Apple IIe Plus
1943
1946
1949
1951
1960
1975
1977
1981
1984
2010

From Hennessey and Patterson. “Computer Organization and Design”, 5 th Edition.


Fall 2020 ECE 445 - Computer Organization 40

History
1939 • IBM Personal Computer released.
1943
1946 • International Business Machines (IBM)
1949 • IBM Personal Computer (PC)
1951 • Includes an Intel 8088 microprocessor, 64
1960 kilobytes of memory, and a floppy disk drive.
• Runs an operating system (MS-DOS) designed
1975
by Microsoft.
1977 • Costs under $3000.
1981
1984
2010

From ‘Greatest Engineering Achievements of the 20th Century’: http://www.greatachievements.org/


Fall 2020 ECE 445 - Computer Organization 41

History
1939 • Macintosh introduced.
1943
1946 • Apple Computer
1949 • Macintosh
1951 • A low-cost, plug-and-play personal computer.
1960 • Central processor fits on a single circuit board.

1975 • Doesn’t offer enough power for business


applications.
1977
• Easy-to-use graphic interface finds fans in
1981 education and publishing.
1984
2010

From ‘Greatest Engineering Achievements of the 20th Century’: http://www.greatachievements.org/


Fall 2020 ECE 445 - Computer Organization 42

History
1939 • iPAD introduced.
1943
1946 • Apple Computer
1949 • iPAD
1951 • Revolutionary device for browsing the web,
1960 reading/writing email, viewing photos and
videos, listening to music, playing games, etc.
1975
• Includes a responsive high-resolution touch
1977 display that allows users to physically interact
1981 with applications and content.
• Just 0.5 inches thick and weighs just 1.5 pounds.
1984
• Includes 12 innovative apps developed
2010
especially for the iPAD.
From ‘Apple Press Info’: https://www.apple.com/pr/library/2010/01/27Apple-Launches-iPad.html/
Fall 2020 ECE 445 - Computer Organization 43

Moore’s Law

Gordon Moore

Moore’s Law stated that the number


of transistors on an affordable CPU
would double every two years.
From ‘Moore’s Law’: http://www.mooreslaw.org/

From ‘Wikipedia (Moore’s Law)’: http://en.wikipedia.org/wiki/Moore's_law


Fall 2020 ECE 445 - Computer Organization 44

Technology Trends
• Electronics technology continues to evolve.
• Increased capacity
and performance.
• Reduced cost.

DRAM Capacity
Fall 2020 ECE 445 - Computer Organization 45

INTRODUCTION TO
COMPUTER ARCHITECTURE
Fall 2020 ECE 445 - Computer Organization 46

Microcomputer System
• In general, a computer system
Architecture of a computer system:
is composed of
• Central Processing Unit (CPU)
• Datapath
• Control unit
• Memory
• Program
• Data
• Input/Output
• System Buses
• To connect the CPU to memory
and I/O
• Include the address, data, and
control buses
“Introduction to Embedded Systems using Microcontrollers and the MSP430”; Jimenez, Palomera, Couvertier; p. 82
Fall 2020 ECE 445 - Computer Organization 47

Central Processing Unit (CPU)


Architecture of a simple CPU: • Datapath
• Consists of the functional units
needed to execute the assembly
language instructions in the CPU’s
instruction set.
• Functional Units include:
• Arithmetic and Logic Unit (ALU)
• Register File
• Other special-purpose registers
• Multiplexers
• Connects to memory and I/O via
the Bus interface logic and the
System buses.

“Introduction to Embedded Systems using Microcontrollers and the MSP430”; Jimenez, Palomera, Couvertier; p. 87
Fall 2020 ECE 445 - Computer Organization 48

Central Processing Unit (CPU)


Architecture of a simple CPU: • Control Unit
• Decodes the assembly language
instructions.
• Generates control signals.
• Asserts a specific set of control signals
based on the AL instruction decoded.
• Controls the actions of the datapath.
• The actions needed to execute the
decoded AL instruction.
• Controls communication between
the CPU and the memory and I/O.
• Via the bus interface logic.

“Introduction to Embedded Systems using Microcontrollers and the MSP430”; Jimenez, Palomera, Couvertier; p. 87
Fall 2020 ECE 445 - Computer Organization 49

Central Processing Unit (CPU)


Architecture of a simple CPU: • ALU
• Performs arithmetic and logic
operations.
• Two source operands.
• One destination operand.

• Register File
• General-purpose registers.
• Special-purpose registers.
• Programmer accessible.
• Stores assembly language
instruction operands.

“Introduction to Embedded Systems using Microcontrollers and the MSP430”; Jimenez, Palomera, Couvertier; p. 87
Fall 2020 ECE 445 - Computer Organization 50

Instruction Cycle
• Instructions are executed by the processor.
• Each is processed according to the steps in the instruction cycle.
• Aka. fetch-execute cycle and CPU cycle.

Fetch Instruction is fetched (or read) from program memory.

Instruction is decoded by the control unit;


Decode Appropriate control signals are generated.

Functional units in the datapath perform the actions


Execute
needed to implement the instruction.
Fall 2020 ECE 445 - Computer Organization 51

Memory Structure
• The memory is organized as an array of cells or locations.
• Each memory location is identified by an address.
• Memory cells may store instructions or data.
• Each cell contains a memory “word”.

“Introduction to Embedded Systems using Microcontrollers and the MSP430”; Jimenez, Palomera, Couvertier; p. 98
Fall 2020 ECE 445 - Computer Organization 52

Memory Technologies

“Introduction to Embedded Systems using Microcontrollers and the MSP430”; Jimenez, Palomera, Couvertier; p. 100
Fall 2020 ECE 445 - Computer Organization 53

Memory Hierarchy
• The memory system is organized hierarchically:
Fall 2020 ECE 445 - Computer Organization 54

I/O Device Interface


• Serves as a bridge between an I/O device and the system buses.
• Has one or more registers each with its own address.
• Data, Control, and Status registers.
• Accessed like memory (read/write).

“Introduction to Embedded Systems using Microcontrollers and the MSP430”; Jimenez, Palomera, Couvertier; p. 111
Fall 2020 ECE 445 - Computer Organization 55

Questions?
Fall 2020 ECE 445 - Computer Organization 56

ADDITIONAL SLIDES
Fall 2020 ECE 445 - Computer Organization 57

Classical Components of a Computer


• Same components for all
types of computers, including
• Desktops and laptops
• Servers
• Embedded systems
• Input/Output includes
• User-interface devices
• Keyboard, mouse, monitor
• Storage devices
• Hard disk, CD/DVD, flash
• Network adapters
• For communicating with other
Five classic components computers.
Fall 2020 ECE 445 - Computer Organization 58

The Memory
• Memory
• Technologies include:
• SRAM and DRAM
• Magnetic media (hard disk)
• Optical media (CD/DVD)
• Solid state (flash)
• Composed of a set of locations
• Each has a unique address
• Each can store unique data
• Organized hierarchically
• Cache
• Main memory
• Secondary memory
Fall 2020 ECE 445 - Computer Organization 59

MIPS Datapath and Control Unit

You might also like