Rabel Talpur:12BME#025.  40-pin chip  Developed by Motorola in 1975  16 address lines and 8 data lines  Used only +5V.

Slides:



Advertisements
Similar presentations
Computer Architecture
Advertisements

Microprocessors.
Parul Polytechnic Institute
Dr. Rabie A. Ramadan Al-Azhar University Lecture 3
Processor System Architecture
TK 2633 Microprocessor & Interfacing
TK 2633 Microprocessor & Interfacing Lecture 3: Introduction to 8085 Assembly Language Programming (2) 1 Prepared By: Associate Prof. Dr Masri Ayob.
Room: E-3-31 Phone: Dr Masri Ayob TK 2633 Microprocessor & Interfacing Lecture 1: Introduction to 8085 Assembly Language.
Room: E-3-31 Phone: Dr Masri Ayob TK 2633 Microprocessor & Interfacing Lecture 1: Introduction to 8085 Assembly Language.
Computer Architecture
Gursharan Singh Tatla Block Diagram of Intel 8086 Gursharan Singh Tatla 19-Apr-17.
Unit-1 PREPARED BY: PROF. HARISH I RATHOD COMPUTER ENGINEERING DEPARTMENT GUJARAT POWER ENGINEERING & RESEARCH INSTITUTE Advance Processor.
Parul Polytechnic Institute Parul Polytechnic Institute Subject Code : Name Of Subject : Microprocessor and assembly language programming Name.
created by :Gaurav Shrivastava
Machine Instruction Characteristics
Basic Architecture Lecture 15. In general, if the number of bits is n, then the number of different combinations of 0s and 1s that can be made is 2 n.
Stack Stack Pointer A stack is a means of storing data that works on a ‘Last in first out’ (LIFO) basis. It reverses the order that data arrives and is.
Microprocessor Dr. Rabie A. Ramadan Al-Azhar University Lecture 7.
Execution of an instruction
George W. Woodruff School of Mechanical Engineering, Georgia Tech ME4447/6405 ME 4447/6405 Microprocessor Control of Manufacturing Systems and Introduction.
8085. Microcomputer Major components of the computer - the processor, the control unit, one or more memory ICs, one or more I/O ICs, and the clock Major.
Z80 Overview internal architecture and major elements of the Z80 CPU.
Computer Architecture Lecture 03 Fasih ur Rehman.
1 Introduction to Microcontroller Microcontroller Fundamentals & Programming.
Computer Architecture Lecture 4 by Engineer A. Lecturer Aymen Hasan AlAwady 17/11/2013 University of Kufa - Informatics Center for Research and Rehabilitation.
Assembly Language Programming of 8085 BY Prof. U. V. THETE Dept. of Computer Science YMA.
ECE 447: Lecture 11 Introduction to Programming in Assembly Language.
MICROPROCESSOR DETAILS 1 Updated April 2011 ©Paul R. Godin prgodin gmail.com.
The 8085 Microprocessor Architecture. What 8085 meant for? 80 - year of invention bit processor 5 - uses +5V for power.
1 Basic Processor Architecture. 2 Building Blocks of Processor Systems CPU.
1 Computer Architecture. 2 Basic Elements Processor Main Memory –volatile –referred to as real memory or primary memory I/O modules –secondary memory.
8085 Microprocessor: Architecture & Support Components.
8085 INTERNAL ARCHITECTURE.  Upon completing this topic, you should be able to: State all the register available in the 8085 microprocessor and explain.
George W. Woodruff School of Mechanical Engineering, Georgia Tech ME4447/6405 ME 4447/6405 Microprocessor Control of Manufacturing Systems and Introduction.
Lec. 10 Assembly Programming Dr. Tamer Samy Gaafar Microprocessors.
Block diagram of a computer system Basic components of a computer system using block diagrams: Cpu Memory Input and output unit Evolution of microprocessor.
8 085Microprocessor Temp Reg (8) Accumulator (A reg) Flag flip flops(8) Instruction Register (8) Arithmetic Logic Unit ALU Instruction Decoder and Machine.
The 8085A is a general-purpose microprocessor with low hardware overhead requirements. Within the 8085A are contained the functions of clock generation,
Computer Architecture. Instruction Set “The collection of different instructions that the processor can execute it”. Usually represented by assembly codes,
Chapter 12 Processor Structure and Function. Central Processing Unit CPU architecture, Register organization, Instruction formats and addressing modes(Intel.
Unit Microprocessor.
8085 Microprocessor Architecture
Seminar On 8085 microprocessor
COURSE OUTCOMES OF Microprocessor and programming
Gunjeet Kaur Dronacharya Group of institutions
Assembly Language Programming of 8085
Microprocessor T. Y. B. Sc..
3.Instruction Set of 8085 Consists of 74 operation codes, e.g. MOV
Introduction to 8086 Microprocessor
Introduction to microprocessor (Continued) Unit 1 Lecture 2
ECE 3430 – Intro to Microcomputer Systems
Interrupts In 8085 and 8086.
Introduction of microprocessor
Dr. Michael Nasief Lecture 2
Microcomputer Programming
8085 microprocessor.
The 8085 Microprocessor Architecture
An Introduction to Microprocessor Architecture using intel 8085 as a classic processor
Processor Organization and Architecture
Introduction of microprpcessor
Number Representations and Basic Processor Architecture
Architecture & Support Components
Chapter 8 Central Processing Unit
Interrupts.
ME 4447/6405 Microprocessor Control of Manufacturing Systems and
Introduction of microprpcessor
Register sets The register section/array consists completely of circuitry used to temporarily store data or program codes until they are sent to the.
Computer Operation 6/22/2019.
ME 4447/6405 Microprocessor Control of Manufacturing Systems and
ME 4447/6405 Microprocessor Control of Manufacturing Systems and
Presentation transcript:

Rabel Talpur:12BME#025

 40-pin chip  Developed by Motorola in 1975  16 address lines and 8 data lines  Used only +5V

 Registers  Arithmetic and Logic Unit  Control Unit  Program Counter  Stack Pointer  Status Flags

A B IX PC SP CC Accumulator A Accumulator B Index register X Program counter Stack pointer Condition code register

 The micro processor unit contains 2 accumulators designed ACCA and ACCB.  Each accumulators is 8 bits (one byte) long and is used to hold operands and data from the arithmetic logic unit

 The index register (x) is a 16 bit (2 byte) register which is primarily used to store a memory address in the indexed mode of memory addressing.  The index register may be decremented, incremented and stored.

 The condition code register is an 8 bit register. each individual bit may get set or cleared from of an instruction.  Each instruction effects the condition code register differently.  The primary use of this register is execution of the conditional branch instruction.

 ALU is a digital circuit that performs integer arithmetic and logical operations.  It is fundamental building block of central processing unit.

 It is a component of central processing unit which direct the operation of processor.  It control communication and co-ordination between i/o devices.  It reads interrupts instructions and determine the sequence for processing the data.  It performs the task of fetching, decoding, managing, execution and finally storing results.

 Program counter contain the address of the memory containing the next instruction to be executed.  It is incremented automatically after each instruction  In 6800, it is a 16 bits register

 Used to point to the memory location where all registers will be saved when an interrupt occurs  It is a 16 bit register, contain an address of a memory

 16 address wires =it can address 2 16 memory locations  It is an 8 bit microprocessor => 8 data bits  Speed up to 4 MHZ  Architecture

S.No It has two accumulators Only one accumulator is present 2Uses frequency 1 MHzuses frequency from 3 to 5 MHz 3It has index registerNo index register is present 4Has 3 interrupts (IRQ,NMI,SWI) Has five interrupts (Trap, RST 7.5,RST 6.5, RST 7.5, INTR)

BLOCK DIAGRAM OF 6800

 INTERRUPTS  IRO  mask able interrupt. When the interrupt occurs the program counter, index register, accumulators and condition code registers are stored in the stack, the further interrupts are disabled and the processor jumps to memory location address of which is stored in memory FFF8h - FFF9h. To return from the interrupt the processing routine should use RTI instruction. This interrupt can be enabled/disabled using CLI/SEI instructions. INTERRUPTS IRQ

 NMI non-maskable interrupt. When the interrupt occurs the program counter, index register, accumulators and condition code registers are stored in the stack, the further interrupts are disabled and the processor jumps to memory location address of which is stored in memory FFFCh - FFFDh. To return from the interrupt the processing routine should use RTI instruction. This interrupt can not be disabled. NMI

 SWI  software interrupt. This interrupt can be only invoked from the program. When the interrupt occurs the processor stores the program counter, index register, accumulators and condition code registers in the stack, disables the further interrupts and jumps to memory location address of which is stored in memory FFFAh - FFFBh. To return from the interrupt the processing routine should use RTI instruction. This interrupt can not be disabled. SWI

 None.  Accumulator A (ACCA) is an 8-bit register used for arithmetic and logic operations.  Accumulator B (ACCB) is an 8-bit register used for arithmetic and logic operations. I/O ports REGISTERS

 Index (IX) is a 16-bit register usually used for temporary storage or as an index when indexed addressing is used.  Program counter (PC) is a 16-bit register.  Stack pointer (SP) is a 16-bit register.

 Condition code register contains the following flags:  Half carry (H) - set if there was a carry from bit 3 to bit 4 of the result when the result was calculated.  Interrupt mask (I) - set if the IRQ interrupt is disabled.  Negative (N) - set if the most significant bit of the result is set.  Zero (Z) - set if the result is zero.  Overflow (V) - set if there was an overflow during last result calculation.  Carry (C) - set if there was a carry from the bit 7 during last result calculation. Condition code register contains the following flags:

 Instruction Set  6800 instruction set consists of 72 instructions:  Data moving instructions.  Arithmetic - add, subtract, negate, increment, decrement and compare.  Logic - AND, OR, exclusive OR, complement and shift/rotate.  Control transfer - conditional, unconditional, call subroutine and return from subroutine.  Other - clear/set condition flags, bit test, stack operations, software interrupt, etc.

 Addressing modes  Implied - the data value/data address is implicitly associated with the instruction.  Accumulator - the instruction implies that the data is one of the accumulator registers.  Immediate - 8-bit or 16-bit data is provided in the instruction.

 MEMORY  Program, size is 64 KB. data and stack memories occupy the same memory space. The total addressable memory.  DATA MEMORY  data can be anywhere in memory space. MEMORY DATA MEMORY

 program can be located anywhere in memory. Jump and subroutine call instructions can be used to jump anywhere in memory. PROGRAM MEMORY

 STACK MEMORY  stack can be placed anywhere in memory space.  FFF8h - FFF9h: Pointer to IRQ interrupt- processing routine.  FFFAh - FFFBh: Pointer to software interrupt- processing routine. STACK MEMORY RESERVED MEMORY LOCATION

 FFFCh - FFFDh: Pointer to NMI interrupt- processing routine.  FFFEh - FFFFh: Pointer to RESET handling code.  Some memory addresses may be reserved for memory mapped I/O as the processor doesn't have hardware I/O capability.

INSTRUCTION SET MOTOROLA 6800 PRESENTED BY: MURK SALEEM 12BME19

 Group of instructions executed by microprocessor is called as: “ INSTRUCTION SET ”.  Motorola-6800 has 72 instructions.

1.ARITHMETIC INSTRUCTIONS

OPERATIONOPCODE/ MNEMONICS ALL REGISTER LABELS REFER TO CONTENTS 1.AdditionADDAA+M  A ADDBB+M  B 2.Add Accumulators ABAA+B  A 3.Add With CarryADCAA+M+C  4.Compliment 2`s (Negative) NEG00-M  M NEG A00-A  A NEG B00-B  B 5.SubtractSUB AA-M  A SUB BB-M  B 6.Subtract Accumulators SB AA-B  A Two`s compliment arithmetic is used in “MP6800” which allow us to take the 2’s compliment of a number. The negative instruction allows us to operate on a byte in memory without first fetching the operand from memory. In the past, we have loaded the operand, performed operation and then stored the new operand

2. DATA HANDLING INSTRUCTIONS:

OPERATIONOPCODES/ NMEMONICS ALL REGISTER LABELS REFER TO CONTENTS 1.ClearCLR00  M CLR A00  A CLR B00  B 2.DecrementDECM-1  M DEC AA-1  A DEC BB-1  B 3.IncrementINCM+1  M INC AA+1  A INC BB+1  B 4.Load Accumulator LDAAMAMA LDABMBMB 5.Rotate LeftROLM ROL AA ROL BB “CLEAR” instruction allows us to clear a memory or either accumulator. In the past, we have cleared bytes of first clearing the accumulator then storing the result in the proper memory location. However, the CLR instruction allows us to clear a memory location with a single instruction.

OPERATIONOPCODES/ NMEMONICS ALL REGISTER LABELS REFER TO CONTENTS 6.Rotate RightRORM ROR AA ROR BB 7.Store Accumulator STA AAMAM STA BBMBM 8. Transfer Accumulator TABABAB TBABABA “TRANSFER ACCUMULATOR” copies the contents of accumulator A or B. After this instruction is executed, the number originally present in any accumulator(eg: A) will be in both accumulators.

3. LOGIC INSTRUCTIONS:

OPERATIONOPCODES/ NMEMONICS ALL REGISTER LABELS REFER TO CONTENTS 1. AndAND AA.M  A AND BB.M  B 2.Compliment,1`sCOM M  M COM A A  A 3.X-OREOR AA (+) M EOR BB (+) M 4.OROR AA+M  A OR BB+M  B

4. DATA TEST INSTRUCTIONS:

OPERATIONOPCODES/ NMEMONICSALL REGISTER LABELS REFER TO CONTENTS 1. Bit TestBIT AA.M BIT BB.M 2.CompareCMP AA—M CMP BB—M 3.Compare AccumulatorsCBAA—B “BIT TEST” this instruction is very similar to the AND instructions. In both cases, the contents of the specified accumulator are ANDed with the contents of the selected memory location. The difference is that with the bit test instruction no logical product is produced. Neither the contents of the accumulator nor memory are altered in any way. However condition code are affected just as if the AND operation had taken place. Consider BITA instruction, when executed, A is ANDed with M. If result is 0000, the Z register is set. Otherwise, the Z register is cleared.

5. INDEX REGISTER AND STACK POINTER INSTRUCTIONS: The index and stack pointer are 16-bit registers. That allow us to control the operation of these registers. Because of the 16-bit format, the load, store, and compare instructions are slightly different.

OPERATIONOPRANDS/ NMEMONICS ALL REGISTER LABELS REFER TO CONTENTS 1.Compare Index Reg.CPX 2.Decrement Index RegisterDEXX-1  X 3.Decrement Stack PointerDESSP-1  SP 4. Increment Stack PointerINSSP+1  SP 5.Increment Index RegisterINXX+1  X

6.BRANCH INSTRUCTIONS: Condition code register contains the following flags: Half carry (H) - set if there was a carry from bit 3 to bit 4 of the result when the result was calculated. Interrupt mask (I) - set if the IRQ interrupt is disabled. Negative (N) - set if the most significant bit of the result is set. Zero (Z) - set if the result is zero. Overflow (V) - set if there was an overflow during last result calculation. Carry (C) - set if there was a carry from the bit 7 during last result calculation. Condition code register contains the following flags: Half carry (H) - set if there was a carry from bit 3 to bit 4 of the result when the result was calculated. Interrupt mask (I) - set if the IRQ interrupt is disabled. Negative (N) - set if the most significant bit of the result is set. Zero (Z) - set if the result is zero. Overflow (V) - set if there was an overflow during last result calculation. Carry (C) - set if there was a carry from the bit 7 during last result calculation.

OPERATIONOPCODE/ NMEMONICS ALL REGISTER LABELS REFER TO CONTENTS 1.Branch AlwaysBRANONE 2.Branch If ClearBCCC=0 3.Branch If Carry SetBCSC=1 4.Branch If MinusBMIN=1 5.Branch If PlusBPLN=0 6.Branch If Over-Flow SetBVSV=1 7.Branch If Over-Flow Clear BVCV=0

7. CONDITION CODE REGISTER:- The 6800 uses these instructions in order to direct access the condition codes.

OPERATIONOPCODES/ NMEMONICSALL REGISTER LABELS REFER TO CONTENTS 1.Clear CarryCLC0C0C 2.Clear Interrupt MaskCLI0I0I 3.Clear Over-FlowCLV0V0V 4.Set CarrySEC1C1C 5.Set Interrupt MaskSEI1I1I 6.Set Over-FlowSEV1V1V