Sunteți pe pagina 1din 9

Zaid.

Asmal

CA QA

2016/02/18

PT 1 Jan 19
What are the major computer milestones?
Some of the major milestones include: First electronic computer (1939), First
general purpose (1951), the world web released (1990)

What is the von Neumann architecture?

John Von Neumann described the basic arrangement (or architecture) of a computer.
Most computers today follow the concept that he described although there are other
types of architecture. When we talk about the Von Neumann architecture, we are
actually talking about the relationship between the hardware that makes up a Von
Neumann-based computer.
A Von Neumann-based computer is a computer that:
Uses a single processor.
Uses one memory for both instructions and data. A von Neumann computer cannot
distinguish between data and instructions in a memory location! It knows only
because of the location of a particular bit pattern in RAM.
Executes programs by doing one instruction after the next in a serial manner using
a fetch-decode-execute cycle.

What is a CPU?
The CPU is reffered to as the brain of the computer
The Primary function -> exceute programs in the main memory by having these
functions on repeat
1) Fetch the programs instructions
2) Examine the instructions
3) Execute the instructions on after the other

Zaid.Asmal

CA QA

2016/02/18

How is a CPU structured/organized?


The CPU has 3 main parts:
1) Control unit -> responsible for fetching instructions, examining them and executing
them one after the other
2) Arithmetic Logic Unit (ALU) -> performs operations such as addition and Boolean
AND needed to carry out the instruction
3) High speed memory -> store temporary results and control info. (Composed of registers )

What is the program counter register?

All same size


Written and read fast because very close to CPU and memeory access is
lower as you get away from the CPU

What are the two instruction types in the fetch-execute cycle?


Program counter register -> Hold the address of the next instruction
Instruction register -> Holds the instruction currently being executed

Instruction types (Fetch Execute Cycle)


Register Memory
The register memory allows units of data (memory words) to be fetched from the
memory into registers where they can be used as ALU inputs. They can also be
written back into memory
Register-register
Fetches two operands from registers and brings them to Alu where some operation
is performed than it is wirrten back to some other register

Zaid.Asmal

CA QA

2016/02/18

Fetch instructions 6 Steps


What are the steps involved in executing an instruction?
1. Fetch next instruction from memory into instruction register
2. Change program counter to point to next instruction
3. Determine the type of instruction just fetched
4. If instruction uses word in memory, fetch the word, if needed, into CPU register
5. Execute the instruction
6. Go to step 1 to begin executing following instruction

What is CISC and what is RISC?


RISC = Reduced Instruction Set Computing

The Goal is to finish the instruction fast as possible


Early computers took a while (many clock cycles) to execute and required a
interpeter program

SPARC proccesor was created by David Patterson and Carlo Sequin which didnt
need interpetation (1980)
MIPS proccssor was created after SPARC by John Hennesy and created a brand new
way

Designers were free to choose new instruction


Simple instructions that exectued quickly

Why are CISC-based platforms dominant?


RISC = small number of instructions 50 compared to 200-300 for CISC

Most recent Risc Machines are x86 and called SUPERSCALER which can implement
more than one instrucion in each cycle

RISC present
We now see RISC machines with on-chip which means
Larger memory management units
Large caches
We also see CISC machines (Pentium Family) with RISC-like subsets (single-cycles
hard-coded)

Zaid.Asmal

CA QA

2016/02/18

There are currently four (4) major RISC architectures

ARM (Intel, Motorola, TI, etc)


SPARC (Sun, TI, Fujitsu)
Power/Power PC (IBM, Motorola. Apple)
MIPS (SGI, NEC)

Currently there is growing demand for 64-bit addressing (Intel, AMD)

What is pipelining?
The fetching of instructions from memory is a major key in execution speed
Pipelining is basically speeding up the proccess
What are some potential bottlenecks in pipelining?

Divide the intruction into multiple parts


Execute each part in a paralell by separate stages
What is MIPS?
Millions of instructions per second

Stage 1
Fetch the instruction from memory
Place it in a buffer until needed

Stage 2
Decode the instruction
Determine its type and what operands it needs

Stage 3
Locates and fetches the operands either from registers or memory

Stage 4
Do the work of carrying out the instructions
Typically run the operands through the data path

Stage 5
Write the results of stage 4 back into the proper register

Example of PIPELINING can also be a car manufactuing plant


What are multiple pipelines?
Single instruction fetch unit that fetches pairs of instructions together and
puts each one into its own pipeline
Multiple pipelines arent recodmeded as
One instruction may rely on another

Zaid.Asmal

CA QA

2016/02/18

There may be contention for resources between instruction


Its up to the compilre to make use of a dual pipeline
Increased beyong 2 piplines duplicates to much hardware

Rather have 1 pipeline and multiple functional units (superscalar architecture)

Modern Design Principles

All common instructions are exceuted by the hardware and removing a level
from interpetation provides more speed for more instructions
Maximize instruction issue rate(as many instructions per/s as possible
Instructions should be easy to decode
Making instructions regular, fixed length with a small number of fields
The fewer different formats for instructions, the better
Only loads and stores should reference memory

PT 2 Jan 22
Response Time and Throughput
Response time

How long its take to do a task

Throughput

Total workdone/unit of time

What is response time?


Total time to do the task

Relative performance

How one program is faster than the other


ExecutationY/Executation A

10s on A and 15s on B so 15/10 = 1.5 B is 1.5x faster


Elapsed time
Total response time including all aspects

What is CPU time?


The time spent on a given proccess

Zaid.Asmal

CA QA

What is the clock?


Its A constant clock that monitars the digital hardware

Clock Period:The duration of the clock cycle eg 250ps


Clock frequency: Cycles per second eg 4.0GHz

CPU TIME
How is CPU time calculated?

The performance can be improved by

Increasing clock rate


Reducing clock cycles

EXAMPLE
Computer A: 2GHz, 10s CPU time
Computer B: 6s CPU time so how fast must computer B be?

What is clock cycles per instruction?

2016/02/18

Zaid.Asmal

CA QA

2016/02/18

This is the instruction count for a program

Determined by compiler/asa

Average Cycles per instruction

Determined by CPU hardware

Performance depeneds on

Algorithim
Programming language
Compiler
Instruction set architecture

Main memory
Part of the computer where programs and data are stored
Bit
PT 1 Jan 26
Computer Number Systems
Digital computers are great at manipluting numbers
Perform opererations at great speed by circuits consisting of logic gates

Zaid.Asmal

CA QA

2016/02/18

What is a radix?
Base of a number system

What is the general form of a decimal number?


1, 10,100 or .1, .01, 001

How can we convert binary, octal and hexadecimal numbers into decimal?
Just practice the assigment 1

Describe the general form of counting in any base

Counting
Arithmetic operation
Conversions from one base to another

1. Counting starts with the lowest order digit (0) and proceeds in increasing order
2. When highest order digit is reached counting starts with 0 again and a carry is
generated
3. The carry is added to the next significant column
They all remain constant

Feb 02. PT1


Gates and Boolean Algebra

Gates

Digital circuit where two logic levels are present


Voltage signal from 0-1 = binary 0
Voltage signal from 2-5 = binary 1
Any volatage outside this is invalid

The gate is a tiny electronic device that can perform functiuons on these voltage
signals

Zaid.Asmal

CA QA

2016/02/18

The basic Gates


NOT, NAND, NOR

High voltage is logic 1


Low voltage (ground) is logic 0

These gates including AND , OR are considerd the principal building blocks
NAND and NOR are typically used because they have two transistors for
multiple inputs

Boolean algebra
A Boolean variable can only be 1 or 0
Its always convieniant to only use one type of gate often NAND or NOR

S-ar putea să vă placă și