[SOLVED] CS assembler compiler assembly cache computer architecture mips scheme COMP273 Introduction

$25

File Name: CS_assembler_compiler_assembly_cache_computer_architecture_mips_scheme_COMP273_Introduction.zip
File Size: 857.22 KB

5/5 - (1 vote)

COMP273 Introduction

Course Lecture Outline Topics include
Boolean Algebra/Digital Circuit Design Number Representation
Assembly Programming (MIPS)
Floating Point
I/0 & Interrupts Caches
Virtual Memory CPU Organization

Course Format
Section 001 Monday and Wednesday 11:30 am to 1:00 pm
Formal lecture, with interactive Q&A throughout, recorded on zoom
Section 002 Monday and Wednesday 2:30 pm to 4:00 pm Inverted classroom bring your questions!
Tutorials, live coding, problem solving, etc.
Not always recorded!
Prof Hsiu-Chin Lin teaching up to reading week Prof Paul Kry teaching after reading week

Course Information Pre-requisites COMP-206: Introduction to Software Systems.
Anyone who has not taken COMP-206 (and is not taking it this term) will be automatically deregistered from COMP-273.
This policy will be followed without exception.

Course Information Assignments
Assignments
Four assignments, covering logic, numbers, circuits, MIPS programming Show your work (i.e., circuit design, comments in assembly programs) A1 and A3 worth 10%, A2 and A4 worth 15%
Do your own work
Must be correctly submitted to MyCourses
Late deadline is 3 days after due date, with penalty is 10%
Penalty can be waived once (request this in a README.txt file) Use for any personal reason, sickness, etc.

Course Information Evaluation
Assignments: 50%
Mid-term Examination: 20%
Final Examination: 30%
Nomake-uptestsormake-upassignments
Supplemental exam weight is 30% (i.e., same as the final)

Course Information Resources
MyCourses
Discussions on material
Questions with respect to assignments
Assignment submission
Course outline (in course content)
Office hours (posted in my courses calendar)

Course Information Textbook
Patterson and Hennessy Computer Organization and Design: The Hardware/Software interface
The 4th or 5th edition (6th edition is probably OK too)
Available at the bookstore, e-book on reserve in library.
This is the main textbook for the course (recommended that you buy a copy)
Also available as an interactive online zyBook!
Lecture notes and other handouts will be made available on MyCourses

Teaching Assistants Office Hours and Tutorials
Teaching Assistants
Names and email and listed on course web page Office hours to be announced on MyCourses

Jiahui Peng
Jifeng Wang
Jiyi Wang
Kaixiang Xie
Linghang Liu
Luca Zarow
Richard Olaniyan
Ruoyu Wang
Wing Hang Ho
Xiru Zhu
Yanan Wang
Meet the TAs

Who to contact and when
Problems with marking?
Contact TA who graded your assignment
If not satisfied with TA response, then email prof
Problems with course content
Check for answers on MyCourses
Post your questions on MyCourses
Visit TAs or prof during the office hours
Personal Issues
Visit the prof during the office hour
Email the prof with a clear subject prefix [COMP273]

In case you didnt already know
McGill University values academic integrity. Therefore, all students must understand the meaning and consequences of cheating, plagiarism and other academic offences under the Code of Student Conduct and Disciplinary Procedures. See www.mcgill.ca/integrity for more information, as well as www.mcgill.ca/integrity/studentguide, the Student Guide to Avoid Plagiarism.
It should be noted that, in accordance with article 15 of the Charter of Students Rights, students may submit examination answers in either French or English.
According to Senate regulations, instructors are not permitted to make special arrangements for final exams. Please consult the Calendar, section 4.7.2.1, General University Information and Regulations at www.mcgill.ca. Special arrangements in emergencies may be requested at your Student Affairs Office. If you have a disability, please advise the Office for Students with Disabilities (398-6009) as early in the term as possible so that we can provide appropriate accommodation to support your success.
In the event of circumstances beyond the instructors control, the evaluation scheme as set out in this document might require change. In such a case, every effort will be made to obtain consensus agreement from the class.
Additional policies governing academic issues which affect students can be found in the Handbook on Student Rights and Responsibilities, Charter of Students Rights.
Be sure your name and student number is included in your circuit or the top comments section of each of your source files. Submit your source code as a zip file via MyCourses unless otherwise specified. If you have comments about your solution, include a readme.txt or readme.pdf file with your comments. Be sure to check that your submission is correct by downloading your submission from MyCourses. You can not receive any marks for assignments with missing or corrupt files! Note that you are encouraged to discuss assignments with your classmates, but not to the point of sharing code and answers. All code and written answers must be your own.
Do not share your code. Using version control is a good idea, but using a publicly accessible repository is not acceptable. ALL WORK MUST BE SUBMITTED ON MY COURSES. DO NOT EMAIL YOUR WORK TO THE PROF OR TAs.
ALL DEADLINES ARE HARD!!! DO NOT WAIT TO THE LAST MINUTE TO SUBMIT YOUR WORK!

Question
What can you do if you are having trouble?

About you

What is your major?

About the instructors Brief research overviews

What is inside a computer?

What are Machine Structures?
Software
Instruction Set Hardware Architecture
Application (e.g., browser)
Compiler
Assembler
Operating
System (e.g., Windows)
Processor
Memory
I/O system
Datapath & Control
Digital Design
Circuit Design
transistors
* Coordination of many levels of abstraction

Below Your Program High-level language program (in C)
swap (int v[], int k) { int temp = v[k]; v[k] = v[k+1]; v[k+1] = temp;
}
Assembly language program (for MIPS) swap: sll $2, $5, 2 add $2, $4,$2
lw $15, 0($2) lw $16, 4($2) sw $16, 0($2) sw $15, 4($2) jr $31
Machine (object) code (for MIPS)
000000 00000 00101 0001000010000000
000000 00100 00010 0001000000100000
C compiler
assembler

Anatomy: 5 Parts of any Computer
Computer
Processor
Control
(brain)
Datapath
(brawn)
Memory
(where programs, data
live when running)
Devices
Input
Output
Keyboard, Mouse
Disk
(where programs, data
live when not running)
Display, Printer

Technology Trends: Memory Capacity (Single-Chip DRAM)
1000
100
10
Size 1 (Mbits)
0.1
0.01
1980 1985 1990 1995 2000 2005
Was 1.4X/yr, or 2X every 2 years. 4000X from 1980 to 2002
year
1980
1983
1986
1989
1992
1996
1998
2000
2002
2009
2014
2018
size (Mbit)
1/16 1/4 1
4
16
64 128 256 512
4096
8192
8192

Technology Trends: Microprocessor Complexity
CPU Transistor Counts from 1971 and Moores Law Titan V
10,000,000,000 1,000,000,000 100,000,000 10,000,000 1,000,000 100,000
10,000 2,300
10-Core Xeon
Tesla K40
GTX680
Curve shows Moores Law: transistor count doubling every two years or so
1971 1980
GPUs now part of every machine, arguably more powerful than CPUs and programmable
1990 2000 2010 2020 Date of introduction
Transistor count

ENIAC
First general-purpose electronic computer

If transportation had kept pace

How do the hardware predictions hold up?

The story back in 2000
Processor
2X in speed every 1.5 years (since 85);
100X performance in previous decade. Memory
DRAM capacity: 2x / 2 years (since 96); 64x size in previous decade.
Disk
Capacity: 2X / 1 year (since 97) 250X size in previous decade.

The story back in 2000 State-of-the-art PC when you graduate:
Processor clock speed: GigaHertz)
Memory capacity: GigaBytes)
Disk capacity: TeraBytes)
5000 MegaHertz (5.0 2000 MegaBytes (2.0 2000 GigaBytes (2.0
New units! Mega => Giga, Giga => Tera

2015 and shifting trends
Energy efficiency now of major importance (mobile computing)
Faster clock speeds use too much energy Multi core CPUs now the means to
increasing performance.
Very powerful graphics cards now prevalent
3.5 GHz quad core 32 GB
3 TB
$3000
2688 cores, 0.8 GHz, 6 GB $1000

Other Big Changes
Smart phones and tablets
Cloud computing and software as a service

COMP 273 Course Information
Learn big ideas in computer science and engineering:
5 Classic components of a Computer
Data can be anything (integers, floating point, characters): a program determines what it is
Stored program concept: instructions just data
Principle of Locality, exploited via a memory hierarchy (cache)
Greater performance by exploiting parallelism
Principle of abstraction, used to build systems as layers

Objectives Demystify abstraction layers
What is really under the hood, how does it work?
Take advantage of new found capabilities
Faster programs!
Many examples with impact in many domains!!
One example to motivate:
Computing the Singular Value Decomposition of 33 matrices with minimal branching and elementary floating point operations
University of Wisconsin Madison, Computer Science technical report TR1690, May 2011 (VIDEO)

In Conclusion Hierarchical layers of abstraction
Continued rapid improvement in technology Moores Law
5 classic components of all computers Memory Input Output
Processor
Control Datapath

Review and more information
Textbook Chapter 1 (section numbers from 5th edition)
1.1 Introduction
1.2 Eight great ideas in computer architecture
1.3 Below your program
1.4 Under the covers
1.5/1.6 Technology and Performance
(well come back to later in the term)
1.7 The power wall
1.8 The sea of change: the switch to multiprocessors

Reviews

There are no reviews yet.

Only logged in customers who have purchased this product may leave a review.

Shopping Cart
[SOLVED] CS assembler compiler assembly cache computer architecture mips scheme COMP273 Introduction
$25