COAS - Class 3A and 3B: Computer Organization and Assembly Language
COAS - Class 3A and 3B: Computer Organization and Assembly Language
[email protected]
Whatsapp 0300-8544099
Office : 4th floor
Grading policy
Course will be online for now
Class timings
A section Mon 1230 to 1330, Wed 1130-1330
Final = 50
Mid = 20
Assignments = 20
Quiz = 10
Text Book
Online Format
Recorded lectures of 10-15 minutes
duration
Will be uploaded before class (2-3 days
in advance)
Will have discussion after each lecture
to answer any questions
Class will be held as per timetable
About the instructor
With Bahria University since 2006
Head of department at Islamabad Campus from
2006-2012, and cluster head from 2012 – 2020
MS in EE from Purdue University, USA
Worked as Chip designer at Intel, silicon valley, USA.
Worked on the Intel Pentium processors
Worked as General Manager (Tech) in Nescom
Worked as Site engineer in Alcatel Pakistan
Hardware engineer at IBM
Why do we need COAL?
If you are writing simple programs you
don’t need to understand the underlying
hardware
However in professional life you will not
be writing simple programs
What time it will take for your program
to run depends on the code, but also on
the underlying architecture
Why COAL
Exploit parallel processing
Reduce the run time
Reduce the power consumed by your
application
Enhance battery life
Make it very reliable
Use less memory
Use less I/O or network bandwidth
Why COAL
If you want to develop a compiler
If you want to develop drivers (Display, I/O, mouse,
keyboard, sound, video)
If you want to write operating systems
If you want to migrate code from one architecture
(Intel) to Apple (ARM)
If you want to program microcontrollers
You can answer this question “Which computer /
mobile is faster ?”
What you will learn
How your program written in C is translated into something that
hardware can understand
What is an Instruction set Architecture (ISA)
What are the common ISAs
RISC versus CISC
Assembly language
SRAM, DRAM, Caches
Hardware arithmetic units
Pipelining (parallel processing)
Control and data-path in the processor
COD Ch. 1
Computer Abstractions and
Technology
Introduction
Rapidly changing field:
vacuum tube -> transistor -> IC -> VLSI
doubling every 1.5 years:
memory capacity
processor speed (due to advances in technology and hardware organization)
cute example: if Boeing had kept up with IBM we could fly from
Bangkok to HCM City in 10 minutes for 5 baht (2000 dong) !!
Things we’ll be learning:
how computers work, what’s a good design, what’s not
how to make them – yes, we will actually build working computers!!
issues affecting modern processors (e.g., caches, pipelines)
Computers today
The Five Classic Components
of a Computer
Input (mouse, keyboard, …)
Output (display, printer, …)
Input
Memory
main (DRAM), cache (SRAM)
secondary (disk,
CD, DVD, …) Output
Datapath Processor Processor
Control (CPU)
Control
Memory
1001010010110000
0010100101010001
1111011101100110
1001010010110000
Datapath 1001010010110000
1001010010110000
Our Primary Focus
The processor (CPU)…
datapath
control
…implemented using millions of transistors
…impossible to understand by looking at individual transistors
we need...
High-level swap(int v[], int k)
language {int temp;
Abstraction
program temp = v[k];
(in C) v[k] = v[k+1];
v[k+1] = temp;
}
a Critical Interface
software
instruction set
hardware
Instruction Set Architecture
A very important abstraction:
interface between hardware and low-level software
standardizes instructions, machine language bit patterns, etc.
advantage: allows different implementations of the same
architecture
disadvantage: sometimes prevents adding new innovations
Computer Architecture =
Instruction Set Architecture +
Machine Organization
What is Computer Architecture?
Better (More Detailed) Answer
Application
Operating
System
Compiler Firmware
Instruction Set
Architecture
Instars. Set Proc.I/O system
Datapath & Control
Digital Design
Circuit Design
Layout
Forces on Computer
Architecture
Technology Programming
Languages
Applications
Computer
Architecture
Operating
Systems
History
8 great ideas of CA
Design for Moore’s Law
Use Abstraction to simplify design
Make the common case fast
Pipelining
Parallelism
Prediction
Redundancy
8 great ideas
Memory Hierarchy
Apple IPAD
Apple A5 Processor
IC manufacturing
Intel Core i7 wafer, 280 chips,
20 X 10mm size