Computer Organization & Assembly language

Slides:



Advertisements
Similar presentations
EEE226 MICROPROCESSORBY DR. ZAINI ABDUL HALIM School of Electrical & Electronic Engineering USM.
Advertisements

Khaled A. Al-Utaibi  Computers are Every Where  What is Computer Engineering?  Design Levels  Computer Engineering Fields  What.
Introduction to Computer Systems
Computer Organization and Assembly language
6. The CPU and Memory Chapt. 7.
Computers Are Your Future Eleventh Edition Chapter 2: Inside the System Unit Copyright © 2011 Pearson Education, Inc. Publishing as Prentice Hall1.
Computer Organization
Stuart Cunningham - Computer Platforms COMPUTER PLATFORMS Input, Output, and Storage & Introduction to Basic Computer Architecture Week 2.
Computer Systems 1 Fundamentals of Computing The CPU & Von Neumann.
E0001 Computers in Engineering1 The System Unit & Memory.
Introduction to Computing: Lecture 4
CPU (CENTRAL PROCESSING UNIT): processor chip (computer’s brain) found on the motherboard.
Overview Introduction The Level of Abstraction Organization & Architecture Structure & Function Why study computer organization?
Understanding Computers, Ch.31 Chapter 3 The System Unit: Processing and Memory.
Levels of Architecture & Language CHAPTER 1 © copyright Bobby Hoggard / material may not be redistributed without permission.
CPU Computer Hardware Organization (How does the computer look from inside?) Register file ALU PC System bus Memory bus Main memory Bus interface I/O bridge.
Introduction Computer Organization and Architecture: Lesson 1.
Computers Are Your Future Eleventh Edition Chapter 2: Inside the System Unit Copyright © 2011 Pearson Education, Inc. Publishing as Prentice Hall1.
Chapter 2 The CPU and the Main Board  2.1 Components of the CPU 2.1 Components of the CPU 2.1 Components of the CPU  2.2Performance and Instruction Sets.
Computers organization & Assembly Language Chapter 0 INTRODUCTION TO COMPUTING Basic Concepts.
1 Hardware and Software b Hardware the physical, tangible parts of a computerthe physical, tangible parts of a computer keyboard, monitor, wires, chips,
Lesson 3 — How a Computer Processes Data Unit 1 — Computer Basics.
General Concepts of Computer Organization Overview of Microcomputer.
Computer Architecture And Organization UNIT-II General System Architecture.
Computer Engineering Rabie A. Ramadan Lecture 1. 2 Welcome Back.
CHAPTER 4 The Central Processing Unit. Chapter Overview Microprocessors Replacing and Upgrading a CPU.
Computer Organization & Assembly Language © by DR. M. Amer.
Introduction to Microprocessors
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.)
Assessment Covering… Von Neuman architecture Registers – purpose and use, the fetch execute cycle.
Motherboard A motherboard allows all the parts of your computer to receive power and communicate with one another.
Lecture 1 Introduction to Computer Organization & Architecture Lecture Duration: 2 Hours.
A.Abhari CPS1251 Topic 1: Introduction to Computers Computer Hardware Computer components Connecting Computers Computer Software Operating System (OS)
Computer Systems. Bits Computers represent information as patterns of bits A bit (binary digit) is either 0 or 1 –binary  “two states” true and false,
Chapter 2.
Simple ALU How to perform this C language integer operation in the computer C=A+B; ? The arithmetic/logic unit (ALU) of a processor performs integer arithmetic.
Computers Are Your Future Tenth Edition Inside the System Unit 1.
Computers Are Your Future Eleventh Edition Chapter 2: Inside the System Unit Copyright © 2011 Pearson Education, Inc. Publishing as Prentice Hall1.
Information Technology INT1001 Lecture 2 1. Computers Are Your Future Tenth Edition Chapter 6: Inside the System Unit Copyright © 2009 Pearson Education,
Chapter 1 Introduction to Computer Organization & Architecture
Dr. ClincyLecture 3 Slide 1 CS Chapter 1 (1 of 2) Dr. Clincy Professor of CS.
Chapter 2 content Basic organization of computer What is motherboard
Introduction to Computing Systems
Basic Computer Fundamentals
CPU Lesson 2.
Computer Organization and Architecture Lecture 1 : Introduction
Systems Architecture Keywords Fetch Execute Cycle
Computers Are Your Future Tenth Edition
Basic Computer Organization and Design
UNIT 9 Computer architecture
Edexcel GCSE Computer Science Topic 15 - The Processor (CPU)
COMPUTER ORGANIZATION & ASSEMBLY LANGUAGE
Discovering Computers 2011: Living in a Digital World Chapter 4
Introduction of microprocessor
Microcomputer Architecture
An Introduction to Microprocessor Architecture using intel 8085 as a classic processor
Introduction to Microprocessors and Microcontrollers
Ghifar Parahyangan Catholic University August 22, 2011
Chapter 5: Computer Systems Organization
Five Key Computer Components
Overview of Computer Architecture and Organization
MARIE: An Introduction to a Simple Computer
Chap 2. Computer Fundamentals
Chapter 5 Computer Organization
Computer components is a programmable machine that receives input, stores and manipulates data, and provides output in a useful format. Computer The computer.
Chapter 4 The Von Neumann Model
Dr. Clincy Professor of CS
Presentation transcript:

Computer Organization & Assembly language

Lecture Overview Course description Chapter 1 : Introduction Overview of Computer Organization & Assembly language The main components of a computer An example system: wading through the jargon The computer level hierarchy The Von Neumann model

Lecture Overview Course description Chapter 1 : Introduction Overview of computer organization and architecture The main components of a computer An example system: wading through the jargon The computer level hierarchy The Von Neumann model

Overview of computer organization and assembly language What is computer organization and architecture? In a computer system, hardware and many software components are fundamentally related Computer organization and architecture help us to understand how hardware and software interact with each other

Overview of computer organization and assembly language It encompasses all physical aspects of computer systems. How components are connected together? How components interact with/talk to each other? It addresses issues such as Control signals, signaling methods Memory types, … It helps us to answer the question: How does a computer work?

Overview of computer organization and assembly language Computer architecture? It focuses on the structure and behavior of the computer system It refers to the logical aspects of system implementation as seen by the programmer. It includes many elements such as instruction sets and formats, data types, addressing modes, number and type of registers, … It helps us to answer the question: How do I design a computer?

Overview of computer organization and assembly language Computer organization VS architecture? The distinction between computer organization and computer architecture is not clear-cut. These are strongly interrelated and interdependent. We can truly understand each of them only when we comprehend both of them.

The main components of a computer From Software to Hardware Computer scientists design algorithms Computer scientists implement an algorithm by using high level programing language (Java, C, etc.) Another algorithm runs this algorithm and another one runs that algorithm and so on We finally get down to machine level Machine level can be thought of as an algorithm implemented as an electronic device

The main components of a computer Principle of Equivalence of Hardware and Software Anything that can be done with software can also be done with hardware, and anything that can be done with hardware can also be done with software We implement an application in Hardware or Software level? Our knowledge of computer organization and architecture will help us to make the best choice

The main components of a computer Computer Hardware main components A processor to interpret and execute programs A memory to store both data and programs A mechanism for transferring data to and from the outside world (Input/Output) Think of how a student sitting in class exhibits the three components of a computer?

An example system: wading through the jargon The stated system is a wise buy? Does it serve your needs?

An example system: wading through the jargon “64MB SDRAM”, “64-bit PCI sound card”, “32KB L1cache”, …? Without having a handle on such terminology, you would be hard-pressed to answer such questions… The next few slides explain the content of the advertisement (ad)

An example system: wading through the jargon Computers do computations in base 2 (binary system) A binary character is called a bit (0 or 1) A byte is a set of 8 bits

An example system: wading through the jargon Pentium III 667 MHz? Pentium III : The microprocessor type 667 MHz: microprocessor’s clock speed Each microprocessor has a synchronization clock (it sends electrical pulses) Here, the clock speed is 667 million electrical pulse per second The number of instructions per second that a processor can execute is proportionate to its clock speed (not equal to). 133 MHz 64MB SDRAM? SDRAM: Main memory type, “Synchronous Dynamic Random Access Memory” 133 MHz: Speed of the system bus (between the memory and the microprocessor) 64 MB : Memory Capacity (64 x 220 x 8 bits = 536870912 bits)

An example system: wading through the jargon 32KB L1 cache, 256KB L2 cache? Two cache memory to speed up the data transfer between the main memory and the processor 32KB and 256KB are the capacity of level 1 (L1) and level 2 (L2) memory respectively 30GB EIDE hard drive (7200 RPM)? 30GB: The capacity of the hard drive 7200 RPM: Speed of disk rotation is 7200 round per minute EIDE: disk interface (connectivity with the rest of the computer’s components). EIDE stands for Enhanced Integrated Drive Electronics 48X max variable CD-ROM CD-ROM drive 48X: the maximum reading data rate the CD drive can achieve (48 times the traditional audio CD data transfer rate)

An example system: wading through the jargon 2 USB ports, 1 serial port, 1 parallel port? Ports that allow movement of data to and from devices external to the computer. 19" monitor, .24mm AG, 1280 x 1024 at 85Hz? The monitor size (19”), resolution (1280 x 1024), refresh rate (85Hz) and pixel size (0.24mm). Intel 3D AGP graphics card? Graphic interface for 3D graphics 56K PCI voice modem? 64-bit PCI sound card? PCI : Dedicated I/O buses, PCI stands for Peripherial Component Interconnect PCI voice modem: for internet connection PCI sound card : for the system’s stereo speakers

An example system: wading through the jargon A look inside a computer

The computer level hierarchy The user executes programs on a PC (Paint, word files, games, etc.) The user is outside the computer! He uses input and output devices to communicate with the computer. Now, what happens INSIDE the computer? To understand, we will use a “divide and conquer” approach.

The computer level hierarchy Imagine the machine (computer) as a hierarchy of levels, in which each level has a specific function. The highest level – Level 6 – is the “user’s level” Level 6 is composed of applications User runs programs such as word processors, graphics packages, or games. The lower levels are unseen by the user those can be considered as “virtual machines”. Let us discover these “virtual machines”.

The computer level hierarchy

The computer level hierarchy Level 5: High-Level Language Level Consists of languages such as C, C++, FORTRAN, Lisp, Pascal, and Prolog. Programmers write programs at this level. Compilers translates these languages to a language the machine can understand (that lower levels could understand): Assembly then machine languages. Level 4: Assembly Language Level More “machine dependent” language. Assembly language is then one to one translated to machine language (one assembly language instruction is translated to exactly one machine language instruction).

The computer level hierarchy Level 3: System Software Level Deals with operating system instructions (multiprogramming, protecting memory, synchronizing processes, and various other important functions) Instructions translated from assembly language to machine language are passed through this level unmodified Level 2: Instruction Set Architecture (ISA), or Machine Level Machine language recognized by the particular architecture of the computer system Programs written in machine language can be executed directly by the electronic circuits without any interpreters, translators, or compilers.

The computer level hierarchy Level 1: The Control Level Is where a control unit do its job Receives machine instructions from the level above decodes and executes those instructions properly Moves data to where and when it should be The control unit interprets the machine instructions Level 0: The Digital Logic Level is where we find the physical components of the computer system: the gates and wires

The Von Neumann model A computer architecture model published by a famous Hungarian mathematician named John von Neumann The idea is to store programs’ instructions inside a main memory in order to avoid rewiring the system each time it had a new problem to solve, or an old one to debug. All stored-program computers have come to be known as von Neumann systems using the von Neumann architecture

The Von Neumann architecture is shown in Figure 1.4 – Slide 43 The Von Neumann model The Von Neumann architecture is shown in Figure 1.4 – Slide 43 It satisfies at least the following characteristics Consists of three hardware systems (see figure 1.4 – slide 43) A central processing unit (CPU) with a control unit, an arithmetic logic unit (ALU), registers (small storage areas), and a program counter; a main-memory system, which holds programs that control the computer’s operation; and an I/O system. Capacity to carry out sequential instruction processing Contains a single path, between the main memory system and the control unit of the CPU

The Von Neumann model

The Von Neumann model Program instructions are stored inside the main memory The machine runs the programs sequentially (instruction per instruction – machine instruction) Each machine instruction is fetched, decoded and executed during one cycle known as the von Neumann execution cycle (also called the fetch-decode-execute cycle) One iteration of the cycle is as follows: 1. The control unit fetches the next program instruction from the memory, using the program counter to determine where the instruction is located. 2. The instruction is decoded into a language the ALU can understand. 3. Any data operands required to execute the instruction are fetched from memory and placed into registers within the CPU. 4. The ALU executes the instruction and places the results in registers or memory.

The Von Neumann model (5/6) Chapter 1: Introduction The Von Neumann model (5/6) Fetch PC indicates the iteration number CU fill the instruction register Instruction 1 Instruction 2 Instruction 3 Instruction 3 Data 1 Data 2 Instruction 4 … … 2. Decode what ALU should do (add, multiply, …)? Fill registers with needed data … Instruction N

Execute the instruction Place the results in registers or memory The Von Neumann model 3. Execute Execute the instruction Place the results in registers or memory Instruction 1 Instruction 2 Instruction 3 Instruction 3 Data 1 Data 2 Instruction 4 Result … … … Instruction N