Computer Science 516 Week 3 Lecture Notes. Computer Architecture - Common Points This lecture will cover some common things which characterize computer.

Slides:



Advertisements
Similar presentations
CPU Structure and Function
Advertisements

Computer Architecture
Assembly Language.
Instruction Set-Intro
1 (Review of Prerequisite Material). Processes are an abstraction of the operation of computers. So, to understand operating systems, one must have a.
Machine Instructions Operations
Week 3. Assembly Language Programming  Difficult when starting assembly programming  Have to work at low level  Use processor instructions >Requires.
Machine Instructions Operations 1 ITCS 3181 Logic and Computer Systems 2015 B. Wilkinson Slides4-1.ppt Modification date: March 18, 2015.
Computer Organization and Architecture
Processor Function Topic 3.
Computer Organization and Architecture
DAT2343 Comparison of The LMC and General Computer Models © Alan T. Pinck / Algonquin College; 2003.
The CPU Revision Typical machine code instructions Using op-codes and operands Symbolic addressing. Conditional and unconditional branches.
Room: E-3-31 Phone: Dr Masri Ayob TK 2123 COMPUTER ORGANISATION & ARCHITECTURE Lecture 5: CPU and Memory.
1 ICS 51 Introductory Computer Organization Fall 2006 updated: Oct. 2, 2006.
Memory - Registers Instruction Sets
1 Computer System Overview OS-1 Course AA
Chapter 16 Control Unit Implemntation. A Basic Computer Model.
Chapter 4 Processor Technology and Architecture. Chapter goals Describe CPU instruction and execution cycles Explain how primitive CPU instructions are.
Chapter 15 IA 64 Architecture Review Predication Predication Registers Speculation Control Data Software Pipelining Prolog, Kernel, & Epilog phases Automatic.
Computer Architecture
1 TK6123: COMPUTER ORGANISATION & ARCHITECTURE Prepared By: Associate Prof. Dr Masri Ayob Lecture 6: CPU and Memory (1)
Unit-1 PREPARED BY: PROF. HARISH I RATHOD COMPUTER ENGINEERING DEPARTMENT GUJARAT POWER ENGINEERING & RESEARCH INSTITUTE Advance Processor.
Group 5 Alain J. Percial Paula A. Ortiz Francis X. Ruiz.
General System Architecture and I/O.  I/O devices and the CPU can execute concurrently.  Each device controller is in charge of a particular device.
Processor Structure & Operations of an Accumulator Machine
1 Computer System Overview Chapter 1. 2 n An Operating System makes the computing power available to users by controlling the hardware n Let us review.
Machine Instruction Characteristics
Electrical Engineering Department Engineering College Prince Sattam bin Abdul Aziz University Text Book: - Triebel and Singh, "The 8088 and 8086 Microprocessors",
L/O/G/O The Instruction Set Chapter 9 CS.216 Computer Architecture and Organization.
Microprocessor Dr. Rabie A. Ramadan Al-Azhar University Lecture 2.
Fall 2012 Chapter 2: x86 Processor Architecture. Irvine, Kip R. Assembly Language for x86 Processors 6/e, Chapter Overview General Concepts IA-32.
ECE 456 Computer Architecture
Module : Algorithmic state machines. Machine language Machine language is built up from discrete statements or instructions. On the processing architecture,
Lecture 14 Today’s topics MARIE Architecture Registers Buses
Computer Science 516 Week 4 Lecture Notes. Addresses Related to C++ pointers Not consistently covered in CS575 Essential to Computer Architecture.
Computer Science 516 RISC Architecture: MIPS, ARM.
1 ICS 51 Introductory Computer Organization Fall 2009.
Lecture 2 Microprocessor Architecture Image from:
COMPUTER ORGANIZATION AND ASSEMBLY LANGUAGE Lecture 19 & 20 Instruction Formats PDP-8,PDP-10,PDP-11 & VAX Course Instructor: Engr. Aisha Danish.
Computer Hardware A computer is made of internal components Central Processor Unit Internal External and external components.
Computer Architecture 2 nd year (computer and Information Sc.)
Computer Architecture Lecture 03 Fasih ur Rehman.
Computer Organization CDA 3103 Dr. Hassan Foroosh Dept. of Computer Science UCF © Copyright Hassan Foroosh 2002.
Stored Program A stored-program digital computer is one that keeps its programmed instructions, as well as its data, in read-write,
COMPUTER ORGANIZATION AND ASSEMBLY LANGUAGE Lecture 21 & 22 Processor Organization Register Organization Course Instructor: Engr. Aisha Danish.
Processor Structure and Function Chapter8:. CPU Structure  CPU must:  Fetch instructions –Read instruction from memory  Interpret instructions –Instruction.
Overview von Neumann Architecture Computer component Computer function
Microprocessors CSE 341 Lecture Md. Omar Faruqe UB 1228
An Adder A Subtractor. A and B are the inputs of the adder/ subtractor R is the output of the adder/ subtractor F is the control to tell it to add or.
MICROPROCESSOR DETAILS 1 Updated April 2011 ©Paul R. Godin prgodin gmail.com.
1 Computer Architecture. 2 Basic Elements Processor Main Memory –volatile –referred to as real memory or primary memory I/O modules –secondary memory.
Basic Processor Structure/design
Part of the Assembler Language Programmers Toolbox
CS-401 Assembly Language Programming
Introduction to Micro Controllers & Embedded System Design Stored Program Machine Department of Electrical & Computer Engineering Missouri University.
Introduction to Assembly Language
BIC 10503: COMPUTER ARCHITECTURE
What is Computer Architecture?
Introduction to Microprocessor Programming
COMS 361 Computer Organization
What is Computer Architecture?
What is Computer Architecture?
Computer Architecture
Computer Organization
Presentation transcript:

Computer Science 516 Week 3 Lecture Notes

Computer Architecture - Common Points This lecture will cover some common things which characterize computer architectures We will also look at two computer families in this lecture Two or three more to cover next week First, the basics…

Von Neumann Architecture Also called Princeton or IAS (Institute For Advanced Studies)

Harvard Architecture Based on 1944 Mark I computer Note separate memories for data and for instructions

And the winner is... Many designs today use a modified Harvard design – Single memory rather than separate data and instruction memories – Separate data and instruction caches Generally not a programmer-visible feature

Arithmetic Generally Binary arithmetic – Arithmetic performed in registers – Many designs offer decimal arithmetic – Decimal may be performed in storage rather than registers

Registers Very high speed storage area Input to/Output from Adder circuit, etc. Defines word size

Word size The number of bits in the basic binary arithmetic unit Many sizes – Generally 16, 32, 64 bits – Some older machines used different sizes

Memory May be word addressable or byte/character addressable Actual size of transfers to/from memory is called Data Path Size – Generally not a programmer visible feature Memory size generally limited to largest number a register holds – May be smaller – May be bigger

Programmer Visible Features Programmer Visible means a program can see or change it Typical Programmer Visible Features – Registers – Storage contents – Program counter (current instruction address) – Status bits (Zero, Overflow, Negative, Carry)

Many Features Not Visible To Programmers Storage Address Register (SAR - also MAR) Storage Data Register (SDR - also MBR) Storage Parity Bits Instruction Register Many others

Instruction Result Status When an instruction completes, status may be set Status used to implement if statements Status carried in status bits – AKA status flags – AKA condition code

Instruction Result Status Example C++ Example: // if (a = 1) // b = 1; // else // b = 2; In assembler, might be : LDA a CMP 1 JNE E1 MOV b,1 J I3 E1 MOV b,2 I3 NOP

Typical Status Bits Many variations among architectures Some commonly used status bits: – Zero = last result was zero – Carry = last result was larger than word size – Negative - last result less than zero – Overflow - last result was larger than word size – Equal - may be Zero renamed May be others IBM System/360 – status in “condition code”

Interrupts How do you know an outside event is finished? Examples: – I/O operation – Interval timer – Other external source

Interrupts versus Polling Polling simpler –...but much slower – Example: Picking up your telephone every minute to see if you have a call Interrupt – Outside event hardware tells CPU it is done – Example: Doing your homework while waiting for a phone call

Exception Interrupts Interrupts may also signal a problem – Example: storage parity error Interrupts may also signal internal event – program exception (overflow, underflow, etc.) – Generally program related Interrupts may also signal service request – Some instructions are restricted – Require state change from normal to executive, etc. – Example: opening a file

Operation Code Part of each instruction Tells the control unit what to do next May be fixed size: – six bits (CDC 3300) – eight bits (IBM System/360) – Often longer May be multiple bytes, split into two or more sections, et cetera

Instruction Set Set of low-level operations the computer can perform Sometimes called Instruction Repetoire Categories: – Arithmetic – Control and branching – Bit manipulation – Character operations – Floating-point arithmetic – Decimal arithmetic – …and more Instruction set grows over time

Instruction Format Most machines have several formats Generally one word in simpler designs CDC 3300 – one word May be multibyte: – IBM System/ , 4, or 6 bytes – Intel x to 15 bytes As designs mature, instruction formats may be added

Addressing Modes How does an instruction specify what memory location holds the data to be used? Examples: – Direct – actual memory address carried as part of the instruction More prevalent in older, smaller designs – Indexed – adds a value in an index register to formulate the actual address – Indirect – Memory location has the address of the data rather than the actual data – Register – address is in a register – Register with displacement – instruction holds a value added to a register value to arrive at the actual data address – Program-counter relative addressing – instruction holds the offset (difference) from the current instruction address Common for jump/branch instructions

Examples Of Computer Architecture CDC simple accumulator architecture – Typical 1960s design – Used at CSUN – early 1970s – Typical CDC – both positive and negative zero - IBM System/360 - multiple register design – Introduced 1964 – 8-bit characters – Still in production 50 years later – “the mainframe”

CDC 3300

IBM System/360

Pep-8 Architecture Defined in course text Simulated architecture Similar to DEC PDP-8 See book for details