Homework Reading Lab with your assigned section starts next week

Slides:



Advertisements
Similar presentations
Chapter 2 (cont.) An Introduction to the 80x86 Microprocessor Family Objectives: The different addressing modes and instruction types available The usefulness.
Advertisements

COMP 2003: Assembly Language and Digital Logic
MICROPROCESSORS TWO TYPES OF MODELS ARE USED :  PROGRAMMER’S MODEL :- THIS MODEL SHOWS FEATURES, SUCH AS INTERNAL REGISTERS, ADDRESS,DATA & CONTROL BUSES.
Processor System Architecture
CEN 226: Computer Organization & Assembly Language :CSC 225 (Lec#3) By Dr. Syed Noman.
1 ICS 51 Introductory Computer Organization Fall 2006 updated: Oct. 2, 2006.
1 Homework Reading –Professional Assembly Language, pp 17-32, Continue work on mp1 –Questions? Lab with your assigned section this week.
ICS312 Set 3 Pentium Registers. Intel 8086 Family of Microprocessors All of the Intel chips from the 8086 to the latest pentium, have similar architectures.
Riyadh Philanthropic Society For Science Prince Sultan College For Woman Dept. of Computer & Information Sciences CS 251 Introduction to Computer Organization.
Lect 4: Instruction Set and Addressing Modes. 386 Instruction Set (3.4)  Basic Instruction Set : 8086/8088 instruction set  Extended Instruction Set.
Monday, October 4 Assignment(s) due: Assignment #5: COMPLEMENT ARITHMETIC Assignment #6: DEBUG EXERCISES Quiz(zes) due:Quiz #5: Base Arithmetic Quiz #6.
An Introduction to 8086 Microprocessor.
Fall 2012 Chapter 2: x86 Processor Architecture. Irvine, Kip R. Assembly Language for x86 Processors 6/e, Chapter Overview General Concepts IA-32.
INSTRUCTION SET AND ASSEMBLY LANGUAGE PROGRAMMING
CET 3510 Microcomputer Systems Tech. Lecture 2 Professor: Dr. José M. Reyes Álamo.
UHD:CS2401: A. Berrached1 The Intel x86 Hardware Organization.
Chapter 2 Parts of a Computer System. 2.1 PC Hardware: Memory.
Carnegie Mellon 1 Machine-Level Programming I: Basics Lecture, Feb. 21, 2013 These slides are from website which accompanies the.
Computers organization & Assembly Language Chapter 1 THE 80x86 MICROPROCESSOR.
COMP 1321 Digital Infrastructure Richard Henson University of Worcester October 2015.
COMP 1321 Digital Infrastructure Richard Henson University of Worcester October 2012.
1 Basic Processor Architecture. 2 Building Blocks of Processor Systems CPU.
Computer Organization & Assembly Language University of Sargodha, Lahore Campus Prepared by Ali Saeed.
Intel MP Organization. Registers - storage locations found inside the processor for temporary storage of data 1- Data Registers (16-bit) AX, BX, CX, DX.
Microprocessors CSE- 341 Dr. Jia Uddin Assistant Professor, CSE, BRAC University Dr. Jia Uddin, CSE, BRAC University.
Chapter Overview General Concepts IA-32 Processor Architecture
8085 Microprocessor Architecture
Instruction Set Architecture
Assembly language.
Credits and Disclaimers
COMP 1321 Digital Infrastructure
Programming the I/O Hardware
Introduction to 8086 Microprocessor
8086 Microprocessor.
Computer Organization & Assembly Language Chapter 3
Lecture on Microcomputer
Basic Microprocessor Architecture
Assembly IA-32.
University of Gujrat Department of Computer Science
Intel 8088 (8086) Microprocessor Structure
Homework Reading Continue work on mp1
Basic of Computer Organization
Symbolic Instruction and Addressing
Introduction to Assembly Language
BIC 10503: COMPUTER ARCHITECTURE
Number Representations and Basic Processor Architecture
Programming the I/O Hardware
University of Gujrat Department of Computer Science
Intel 8088 (8086) Microprocessor Structure
8086 Registers Module M14.2 Sections 9.2, 10.1.
Morgan Kaufmann Publishers Computer Organization and Assembly Language
Symbolic Instruction and Addressing
CS 301 Fall 2002 Computer Organization
COMP 1321 Digital Infrastructure
COMP 1321 Digital Infrastructure
The Microprocessor & Its Architecture
Symbolic Instruction and Addressing
Assembly Language (CSW 353)
Computer Architecture CST 250
X86 Assembly Review.
Unit-I 80386DX Architecture
Machine-Level Programming II: Basics Comp 21000: Introduction to Computer Organization & Systems Instructor: John Barr * Modified slides from the book.
COMP 1321 Digital Infrastructure
Chapter 6 –Symbolic Instruction and Addressing
Process.
CSC 497/583 Advanced Topics in Computer Security
Credits and Disclaimers
Computer Architecture Assembly Language
8086 microprocessior PIN OUT DIAGRAM OF  Power supply and frequency signals  It uses 5V DC supply at V CC pin 40, and uses ground at V SS pin.
Computer Architecture and System Programming Laboratory
Presentation transcript:

Homework Reading Lab with your assigned section starts next week Professional Assembly Language, pp 17-32, 34-37 Selecting Intel Registers http://www.swansontec.com/sregisters.html Lab with your assigned section starts next week

General Computer Architecture Processor Controls fetching and execution of instructions Moves data between memory, registers, the arithmetic / logic unit (ALU), and I/O devices Memory Stores instructions and data I/O Devices Bring data into system Send data out from system

General Computer Architecture Control Bus C-Bus (M/IO#, W/R#, and D/C# Signals) Processor Fetch and Execute Control Address Bus I/O Devices Arithmetic Logic Unit Memory Registers Data Bus

Signals and Busses A “signal” is a logical value represented as a voltage on a wire inside the machine A signal is binary (two states – on and off) There is a specific meaning assigned to each value of a signal, e.g. M/IO# M/IO# = 1 means access memory M/IO# = 0 means access an I/O device A “bus” is a group of signals with one purpose

Processor Model An assembly language programmer usually thinks of the processor in terms of its: Registers Arithmetic Logic Unit (ALU) Instructions Address and data bus sizes An example of a Generic Processor: PIPPIN http://www.cs.drexel.edu/~introcs/Fa02/lectures/06.3_Pippin/WhatIsPIPPIN.html?CurrentSlide=1

The PIPPIN Machine

80386Processor Model - Registers %ax %eax %ah %al Memory Address Memory %bx %ebx %bh %bl 0x00000000 %cx M/IO# %ecx %ch %cl W/R# %dx D/C# %edx %dh %dl A-Bus (32 bits) %esp %sp %ebp %bp D-Bus (32 bits) %esi %si %edi %di 0xFFFFFFFF

Processor Model - Registers Additional status and control registers Instruction Pointer/Extended Instruction Pointer Extended Flags Register %eip %ip %eflags

Arithmetic Logic Unit(ALU) Capable of performing arithmetic Addition, Subtraction, Multiplication, Division Capable of performing logic operations and, or, exclusive or Takes operands from source(s) specified in the instruction Delivers results to destination specified in the instruction

Processor Model - Instructions Instructions to move a constant into a register movb $54, %al Move 5410 to al register movb $0x36, %al Move 3616 to al register movb $'6', %al Move digit 6 to al register Instructions to move data between registers movl %ebx, %eax movw %bx, %ax movb %bh, %ah movb %bl, %al AT&T Convention: Destination AT&T Convention: Source

Processor Model - Instructions Instructions to add or subtract a constant to a register addb $10, %bl subb $10, %bl Instructions to add or subtract a register to another register addb %bh, %bl subb %bh, %bl

Busses Address Bus Driven by the processor (Simplified for now) Processor presents address of memory location or I/O device being accessed on the busses Each memory or I/O device determines if the value on the address bus and M/IO# signal selects it or not When selected, memory or I/O device gets data from data bus or puts data on data bus based on W/R#

Busses Data Bus Used as a conduit for data between devices Specific operations performed on the data bus are driven by control and address bus signals Can be driven by processor, memory, or an I/O device depending on the type of transfer done Interfaces to data bus require a special kind of “tri-state” logic which we will discuss later

Busses Control Bus Signals M/IO# signal selects Memory when set (= 1) I/O devices when reset (= 0) W/R# signal moves data from Processor to memory or I/O device when set (= 1) Memory or I/O device to processor when reset (= 0) D/C# signal indicates Data (instruction execute phase) when set (=1) Control (instruction fetch phase) when reset (=0)

Fetch Cycle C-Bus (M/IO# = 1, W/R# = 0, D/C# = 0) Processor Fetch and Execute Control Address From EIP Register I/O Devices Arithmetic Logic Unit Memory Registers Data Bus (Instruction)

Fetch Cycle On each fetch cycle, processor Puts signal M/IO# = 1 on control bus Puts signal W/R# = 0 on control bus Puts signal D/C# = 0 on control bus Puts address of next instruction from the EIP register on address bus signals Reads next instruction on data bus

Execute Cycle (Memory Read) C-Bus (M/IO# = 1, W/R# = 0, D/C# = 1) Processor Fetch and Execute Control Address I/O Devices Arithmetic Logic Unit Memory Registers Data Bus (Data From Memory)

Execute Cycle On each execute cycle, processor May or may not need to access memory or I/O Some instructions act inside processor only, e.g. instruction to move a constant to a register When processor accesses memory or an I/O device during execute cycle, there are four possible combinations:

Execute Cycle (Memory Write) C-Bus (M/IO# = 1, W/R# = 1, D/C# = 1) Processor Fetch and Execute Control Address I/O Devices Arithmetic Logic Unit Memory Registers Data Bus (Data To Memory)

Execute Cycle (I/O Read) C-Bus (M/IO# = 0, W/R# = 0, D/C# = 1) Processor Fetch and Execute Control Address I/O Devices Data In Arithmetic Logic Unit Memory Registers Data Bus (Input Data)

Execute Cycle (I/O Write) C-Bus (M/IO# = 0, W/R# = 1, D/C# = 1) Processor Fetch and Execute Control Address I/O Devices Data Out Arithmetic Logic Unit Memory Registers Data Bus (Output Data)

Simulation of a Generic Processor PIPPIN

Run the PIPPIN simulation applet on a PC Change security setting in Control Panel/Java/: High Edit Exception Site List to include: http://mcs.uwsuper.edu/sb/101/Module6/cpusim.html Use IE to enter into the site. Enter the program: Program Counter Program Comments 0 LOD #2 Load literal value 2 in ACC reg 2 STO X Store it in memory location X 4 LOD #5 Load literal value 5 in ACC reg 6 ADD X Add location X to ACC reg 8 STO Y Store it in memory location Y Run simulation by clicking STEP (single step)

Run the PIPPIN simulation applet on a MAC Change security setting in System Preferences/Java /Security to: High Edit Exception Site List to include: http://mcs.uwsuper.edu/sb/101/Module6/cpusim.html Use Safari to enter into the site. Enter the program: Program Counter Program Comments 0 LOD #2 Load literal value 2 in ACC reg 2 STO X Store it in memory location X 4 LOD #5 Load literal value 5 in ACC reg 6 ADD X Add location X to ACC reg 8 STO Y Store it in memory location Y Run simulation by clicking STEP(single step)