INTEL 8086 Software & Hardware Architecture

Slides:



Advertisements
Similar presentations
Intel 8086.
Advertisements

Register In computer architecture, a processor register is a small amount of storage available on the CPU whose contents can be accessed more quickly than.
Chapter 2 (cont.) An Introduction to the 80x86 Microprocessor Family Objectives: The different addressing modes and instruction types available The usefulness.
8086 [2] Ahad. Internal! External? 8086 vs _bit Data Bus 20_bit Address 8_bit Data Bus 20_bit Address Only external bus of 8088 is.
Parul Polytechnic Institute
MICROPROCESSORS TWO TYPES OF MODELS ARE USED :  PROGRAMMER’S MODEL :- THIS MODEL SHOWS FEATURES, SUCH AS INTERNAL REGISTERS, ADDRESS,DATA & CONTROL BUSES.
8086.  The 8086 is Intel’s first 16-bit microprocessor  The 8086 can run at different clock speeds  Standard 8086 – 5 MHz  –10 MHz 
Chapter 2 Number conversion (BCD) 8086 microprocessor Internal registers Making of Memory address.
Introduction to 8086 Microprocessor
SOFTWARE ARCHITECTURE OF THE 8088 AND 8086 MICROPROCESSORS
Introduction to Microprocessor
CEN 226: Computer Organization & Assembly Language :CSC 225 (Lec#3) By Dr. Syed Noman.
1 Hardware and Software Architecture Chapter 2 n The Intel Processor Architecture n History of PC Memory Usage (Real Mode)
3-1 ECE 424 Design of Microprocessor-Based Systems Haibo Wang ECE Department Southern Illinois University Carbondale, IL Intel 8088 (8086) Microprocessor.
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.
Riyadh Philanthropic Society For Science Prince Sultan College For Woman Dept. of Computer & Information Sciences CS 251 Introduction to Computer Organization.
The 8086 Microprocessor The 8086, announced in 1978, was the first 16-bit microprocessor introduced by Intel Corporation 8086 is 16-bit MPU. Externally.
Microcomputer & Interfacing Lecture 2
MODES OF Details of Pins Pin 1 –Connected Ground Pins 2-16 –acts as both input/output. Outputs address at the first part of the cycle and outputs.
An Introduction to 8086 Microprocessor.
MICROPROCESSORS AND APPLICATIONS
1 Fundamental of Computer Suthida Chaichomchuen : SCC
8086/8088 Hardware Specifications Power supply:  +5V with tolerance of ±10%;  360mA. Input characteristics:  Logic 0 – 0.8V maximum, ±10μA maximum;
Types of Registers (8086 Microprocessor Based)
MODES OF Details of Pins Pin 1GND –Connected Ground Pins 2-16 AD14-AD0–acts as both input/output. Outputs address at the first part of the cycle.
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.
Microprocessor Microprocessor (cont..) It is a 16 bit μp has a 20 bit address bus can access upto 220 memory locations ( 1 MB). It can support.
Block diagram of 8086.
Intel 8086 (8088) Microprocessor Structure
8086 and families Features of Bit Microprocessor : is a 16bit processor. It’s ALU, internal registers works with 16bit binary word.
INTRODUCTION TO INTEL X-86 FAMILY
MODULE 5 INTEL TODAY WE ARE GOING TO DISCUSS ABOUT, FEATURES OF 8086 LOGICAL PIN DIAGRAM INTERNAL ARCHITECTURE REGISTERS AND FLAGS OPERATING MODES.
Microprocessor Fundamentals Week 2 Mount Druitt College of TAFE Dept. Electrical Engineering 2008.
8085 INTERNAL ARCHITECTURE.  Upon completing this topic, you should be able to: State all the register available in the 8085 microprocessor and explain.
Multiplex of Data and Address Lines in 8088 Address lines A0-A7 and Data lines D0-D7 are multiplexed in These lines are labelled as AD0-AD7. –By.
Internal Programming Architecture or Model
1 x86 Programming Model Microprocessor Computer Architectures Lab Components of any Computer System Control – logic that controls fetching/execution of.
Intel 8086 MICROPROCESSOR ARCHITECTURE
SOFTWARE ARCHITECTURE OF THE 8088 AND 8086 MICROPROCESSORS
8086 Microprocessor J Srinivasa Rao.
I NTEL 8086 M icroprocessor بسم الله الرحمن الرحيم 1.
ΜComputer Structure μProcessor Memory Bus System I/O Ports.
History – 2 Intel 8086.
UNIT Architecture M.Brindha AP/EIE
Introduction to 8086 Microprocessor
Introduction to the processor and its pin configuration
COURSE OUTCOMES OF Microprocessor and programming
8086 MICROPROCESSOR ARCHITECTURE & SEGMENTATION
8086 Microprocessor.
Computer Organization & Assembly Language Chapter 3
Intel 8086 MICROPROCESSOR Architecture.
Basic Microprocessor Architecture
Microprocessor The microprocessors functions as the CPU in the stored program model of the digital computer. Its job is to generate all system timing signals.
Intel 8088 (8086) Microprocessor Structure
..
Microcomputer & Interfacing Lecture 1
An Introduction to Microprocessor Architecture using intel 8085 as a classic processor
8086 Features It is a 16 bit μp. It is manufactured with H-MOS technology has a 20 bit address bus can access up to 220 memory locations ( 1 MB)
Microprocessor & Assembly Language
Intel 8088 (8086) Microprocessor Structure
Morgan Kaufmann Publishers Computer Organization and Assembly Language
CS 301 Fall 2002 Computer Organization
Flags Carry flag Overflow Parity flag Direction Interrupt enable
Unit-I 80386DX Architecture
Intel 8086.
Memory segmentation and addressing
Computer Operation 6/22/2019.
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.
Part I Data Representation and 8086 Microprocessors
Presentation transcript:

INTEL 8086 Software & Hardware Architecture Suresh P. Nair [ME, (PhD)] MIEEE Professor & Head Department of Electronics and Communication Engineering Royal College of Engineering and Technology Chiramanangad PO, Akkikkavu, Thrissur, Kerala, India

Complete idea about INTEL 8086 Microprocessor MODULE 1 & 2 Complete idea about INTEL 8086 Microprocessor

Microprocessor & Microcontroller Topics to be covered Software Architecture of the INTEL 8086. Hardware Architecture of INTEL 8086. 8086 Programming and program development. RCET Microprocessor & Microcontroller

Software architecture of the INTEL 8086 Memory segmentation and addressing Block diagram of 8086 Address space & Data organization Data Types Registers Stack I/O space RCET Microprocessor & Microcontroller

Hardware Architecture of INTEL 8086 Pin Diagram and Pin Details min/max mode Coprocessor and Multiprocessor configuration Hardware organization of address space Control signals I/O interfaces RCET Microprocessor & Microcontroller

8086 programming and program development. Assembly Language Programming. Instruction Set. Assembler Directives. Programming Exercises. RCET Microprocessor & Microcontroller

Software Architecture of INTEL 8086 RCET Microprocessor & Microcontroller

Software architecture of the INTEL 8086 Memory segmentation and addressing Block diagram of 8086 Address space & Data organization Data Types Registers Stack I/O space RCET Microprocessor & Microcontroller

Memory segmentation and addressing Von – Newman architecture & Harvard architecture Program Memory & Data Memory Need for Segmentation To implement Harvard architecture Easy to debug Same Interfacing ICs can be used To avoid overlap of stack with normal memory Compatible with 8085 RCET Microprocessor & Microcontroller

Microprocessor & Microcontroller Segmented Memory RCET Microprocessor & Microcontroller

Memory Address Generation The BIU has a dedicated adder for determining physical memory addresses. Offset Value (16 bits) Segment Register (16 bits) 0 0 0 0 Adder Physical Address (20 Bits) RCET Microprocessor & Microcontroller

Segment : Offset Address Logical Address is specified as segment:offset Physical address is obtained by shifting the segment address 4 bits to the left and adding the offset address. Thus the physical address of the logical address A4FB:4872 is: A4FB0 + 4872 A9822 RCET Microprocessor & Microcontroller

Segments, Segment Registers & Offset Registers Segment Size = 64KB Maximum number of segments possible = 14 Logical Address – 16 bits Physical Address – 20 bits 2 Logical Addresses for each Segments. Base Address (16 bits) Offset Address (16 bits) Segment registers are used to store the Base address of the segment. RCET Microprocessor & Microcontroller

Segments, Segment Registers & Offset Registers 4 Segments in 8086 Code Segment (CS) Data Segment (DS) Stack Segment (SS) Extra Segment (ES) SEGMENT SEGMENT REGISTER OFFSET REGISTER Code Segment CSR Instruction Pointer (IP) Data Segment DSR Source Index (SI) Extra Segment ESR Destination Index (DI) Stack Segment SSR Stack Pointer (SP) / Base Pointer (BP) RCET Microprocessor & Microcontroller

Microprocessor & Microcontroller Block diagram of 8086 RCET Microprocessor & Microcontroller

Microprocessor & Microcontroller Block diagram of 8086 RCET Microprocessor & Microcontroller

Pipelined architecture of the 8086 microprocessors RCET Microprocessor & Microcontroller

Execution and bus interface units RCET Microprocessor & Microcontroller

Software Model of the 8086 Microprocessors RCET Microprocessor & Microcontroller

Address space & Data organization Storing a word in memory What is the word in (b) in Hex? Memory address space RCET Microprocessor & Microcontroller

Aligned and misaligned data word RCET Microprocessor & Microcontroller

Aligned and misaligned double words of data RCET Microprocessor & Microcontroller

Storing double word in memory RCET Microprocessor & Microcontroller

Microprocessor & Microcontroller Data Types Unsigned byte integer 0 - 255 Unsigned word integer 0 – 65,535 RCET Microprocessor & Microcontroller

Microprocessor & Microcontroller Data Types -128 - +127 Signed integers -32,768 - +32,767 RCET Microprocessor & Microcontroller

Binary Coded Decimal (BCD) Microprocessor & Microcontroller Data Types Binary Coded Decimal (BCD) Unpacked BCD Packed BCD RCET Microprocessor & Microcontroller

American Standard Code for Information Interchange (ASCII) RCET Microprocessor & Microcontroller

Dedicated, Reserved, and General use Memory RCET Microprocessor & Microcontroller

Microprocessor & Microcontroller 8086 Registers RCET Microprocessor & Microcontroller

General Purpose Registers AX - the Accumulator BX - the Base Register CX - the Count Register DX - the Data Register Normally used for storing temporary results Each of the registers is 16 bits wide (AX, BX, CX, DX) Can be accessed as either 16 or 8 bits AX, AH, AL RCET Microprocessor & Microcontroller

General Purpose Registers AX Accumulator Register Preferred register to use in arithmetic, logic and data transfer instructions because it generates the shortest Machine Language Code Must be used in multiplication and division operations Must also be used in I/O operations BX Base Register Also serves as an address register RCET Microprocessor & Microcontroller

General Purpose Registers CX Count register Used as a loop counter Used in shift and rotate operations DX Data register Used in multiplication and division Also used in I/O operations RCET Microprocessor & Microcontroller

Pointer and Index Registers All 16 bits wide, L/H bytes are not accessible Used as memory pointers Example: MOV AH, [SI] Move the byte stored in memory location whose address is contained in register SI to register AH IP is not under direct control of the programmer RCET Microprocessor & Microcontroller

Microprocessor & Microcontroller Flag Register Overflow Carry Direction Parity Interrupt enable Auxiliary Carry Trap Zero 6 are status flags 3 are control flag Sign RCET Microprocessor & Microcontroller

Microprocessor & Microcontroller 8086 Programmer’s Model ES Extra Segment BIU registers (20 bit adder) CS Code Segment SS Stack Segment DS Data Segment IP Instruction Pointer EU registers AX AH AL Accumulator BX BH BL Base Register CX CH CL Count Register DX DH DL Data Register SP Stack Pointer BP Base Pointer SI Source Index Register DI Destination Index Register FLAGS RCET Microprocessor & Microcontroller

Microprocessor & Microcontroller The Stack The stack is used for temporary storage of information such as data or addresses. When a CALL is executed, the 8086 automatically PUSHes the current value of CS and IP onto the stack. Other registers can also be pushed Before return from the subroutine, POP instructions can be used to pop values back from the stack into the corresponding registers. RCET Microprocessor & Microcontroller

Microprocessor & Microcontroller The Stack RCET Microprocessor & Microcontroller

Microprocessor & Microcontroller Example for PUSH RCET Microprocessor & Microcontroller

Microprocessor & Microcontroller Example for POP RCET Microprocessor & Microcontroller

Microprocessor & Microcontroller The I/O address space RCET Microprocessor & Microcontroller

Hardware Architecture of INTEL 8086 RCET Microprocessor & Microcontroller

Hardware Architecture of INTEL 8086 Pin Diagram and Pin Details min/max mode Hardware organization of address space Control signals Coprocessor and Multiprocessor configuration I/O interfaces RCET Microprocessor & Microcontroller

Microprocessor & Microcontroller INTEL 8086 - Pin Diagram RCET Microprocessor & Microcontroller

Microprocessor & Microcontroller INTEL 8086 - Pin Details Power Supply 5V  10% Ground Reset Registers, seg regs, flags CS: FFFFH, IP: 0000H If high for minimum 4 clks Clock Duty cycle: 33% RCET Microprocessor & Microcontroller

Microprocessor & Microcontroller INTEL 8086 - Pin Details Address/Data Bus: Contains address bits A15-A0 when ALE is 1 & data bits D15 – D0 when ALE is 0. Address Latch Enable: When high, multiplexed address/data bus contains address information. RCET Microprocessor & Microcontroller

INTEL 8086 - Pin Details INTERRUPT Non - maskable interrupt Interrupt acknowledge Interrupt request RCET Microprocessor & Microcontroller

Microprocessor & Microcontroller INTEL 8086 - Pin Details Direct Memory Access Hold Hold acknowledge RCET Microprocessor & Microcontroller

Microprocessor & Microcontroller INTEL 8086 - Pin Details Address/Status Bus Address bits A19 – A16 & Status bits S6 – S3 RCET Microprocessor & Microcontroller

Microprocessor & Microcontroller INTEL 8086 - Pin Details BHE#, A0: 0,0: Whole word (16-bits) 0,1: High byte to/from odd address 1,0: Low byte to/from even address 1,1: No selection Bus High Enable/S7 Enables most significant data bits D15 – D8 during read or write operation. S7: Always 1. RCET Microprocessor & Microcontroller

Microprocessor & Microcontroller INTEL 8086 - Pin Details Min/Max mode Minimum Mode: +5V Maximum Mode: 0V Minimum Mode Pins Maximum Mode Pins RCET Microprocessor & Microcontroller

Minimum Mode- Pin Details Read Signal Write Signal Memory or I/0 Data Transmit/Receive Data Bus Enable RCET Microprocessor & Microcontroller

Maximum Mode - Pin Details S2 S1 S0 000: INTA 001: read I/O port 010: write I/O port 011: halt 100: code access 101: read memory 110: write memory 111: none -passive Status Signal Inputs to 8288 to generate eliminated signals due to max mode. RCET Microprocessor & Microcontroller

Maximum Mode - Pin Details Lock Output Used to lock peripherals off the system Activated by using the LOCK: prefix on any instruction DMA Request/Grant Lock Output RCET Microprocessor & Microcontroller

Maximum Mode - Pin Details QS1 QS0 00: Queue is idle 01: First byte of opcode 10: Queue is empty 11: Subsequent byte of opcode Queue Status Used by numeric coprocessor (8087) RCET Microprocessor & Microcontroller

Microprocessor & Microcontroller Minimum Mode 8086 System RCET Microprocessor & Microcontroller

Microprocessor & Microcontroller Minimum Mode 8086 System RCET Microprocessor & Microcontroller

‘Read’ Cycle timing Diagram for Minimum Mode RCET Microprocessor & Microcontroller

‘Write’ Cycle timing Diagram for Minimum Mode RCET Microprocessor & Microcontroller

Microprocessor & Microcontroller Maximum Mode 8086 System RCET Microprocessor & Microcontroller

Microprocessor & Microcontroller Maximum Mode 8086 System RCET Microprocessor & Microcontroller

Microprocessor & Microcontroller Maximum Mode 8086 System Here, either a numeric coprocessor of the type 8087 or another processor is interfaced with 8086. The Memory, Address Bus, Data Buses are shared resources between the two processors. The control signals for Maximum mode of operation are generated by the Bus Controller chip 8788. The three status outputs S0*, S1*, S2* from the processor are input to 8788. The outputs of the bus controller are the Control Signals, namely DEN, DT/R*, IORC*, IOWTC*, MWTC*, MRDC*, ALE etc. RCET Microprocessor & Microcontroller

Memory Read timing in Maximum Mode RCET Microprocessor & Microcontroller

Memory Write timing in Maximum Mode RCET Microprocessor & Microcontroller

Microprocessor & Microcontroller Memory Banking RCET Microprocessor & Microcontroller

Interface 8086 to 6116 Static RAM 20 Latch Addr Decoder A(11-1) 21 A0, BHE* A(19-12) 6116 (2K x8) A A(10-0) ____BHE D(7-0) D(7-0) D(15-8) 16 __ R/W Low byte (Even Bank) ALE OE* D CS* A0 RAMCS* MEM* BHE* 8086 A(10-0) __ M/IO D(7-0) ___ WR __ R/W ___ RD High byte (Odd Bank) OE* CS*

Microprocessor & Microcontroller 8086 Interrupts RCET Microprocessor & Microcontroller

Microprocessor & Microcontroller 8086 Interrupts Procedure RCET Microprocessor & Microcontroller

Microprocessor & Microcontroller 8086 External Interrupts RCET Microprocessor & Microcontroller

8086 Interrupt Vector Table RCET Microprocessor & Microcontroller

8086 Interrupt Vector Table RCET Microprocessor & Microcontroller

Microprocessor & Microcontroller Total Memory and IVT RCET Microprocessor & Microcontroller

Microprocessor & Microcontroller 8086 Control Signals ALE BHE M/IO DT/R RD WR DEN RCET Microprocessor & Microcontroller

Coprocessor and Multiprocessor configuration Multiprocessor Systems refer to the use of multiple processors that executes instructions simultaneously and communicate with each other using mail boxes and Semaphores. Maximum mode of 8086 is designed to implement 3 basic multiprocessor configurations: 1. Coprocessor (8087) 2. Closely coupled (8089) 3. Loosely coupled (Multibus) RCET Microprocessor & Microcontroller

Coprocessor and Multiprocessor configuration Coprocessors and Closely coupled configurations are similar in that both the 8086 and the external processor shares the: - Memory - I/O system - Bus & bus control logic - Clock generator RCET Microprocessor & Microcontroller

Coprocessor / Closely Coupled Configuration RCET Microprocessor & Microcontroller

Microprocessor & Microcontroller TEST pin of 8086 Used in conjunction with the WAIT instruction in multiprocessing environments. This is input from the 8087 coprocessor. During execution of a wait instruction, the CPU checks this signal. If it is low, execution of the signal will continue; if not, it will stop executing. RCET Microprocessor & Microcontroller

Coprocessor Execution Example Coprocessor cannot take control of the bus, it does everything through the CPU RCET Microprocessor & Microcontroller

Closely Coupled Execution Example Closely Coupled processor may take control of the bus independently. Two 8086’s cannot be closely coupled. RCET Microprocessor & Microcontroller

Loosely Coupled Configuration has shared system bus, system memory, and system I/O. each processor has its own clock as well as its own memory (in addition to access to the system resources). Used for medium to large multiprocessor systems. Each module is capable of being the bus master. Any module could be a processor capable of being a bus master, a coprocessor configuration or a closely coupled configuration. RCET Microprocessor & Microcontroller

Loosely Coupled Configuration No direct connections between the modules. Each share the system bus and communicate through shared resources. Processor in their separate modules can simultaneously access their private subsystems through their local busses, and perform their local data references and instruction fetches independently. This results in improved degree of concurrent processing. Excellent for real time applications, as separate modules can be assigned specialized tasks RCET Microprocessor & Microcontroller

Advantages of Multiprocessor Configuration High system throughput can be achieved by having more than one CPU. The system can be expanded in modular form. Each bus master module is an independent unit and normally resides on a separate PC board. One can be added or removed without affecting the others in the system. A failure in one module normally does not affect the breakdown of the entire system and the faulty module can be easily detected and replaced Each bus master has its own local bus to access dedicated memory or IO devices. So a greater degree of parallel processing can be achieved. RCET Microprocessor & Microcontroller

Microprocessor & Microcontroller WAIT State A wait state (Tw) is an extra clocking period, inserted between T2 and T3, to lengthen the bus cycle, allowing slower memory and I/O components to respond. The READY input is sampled at the end of T2, and again, if necessary in the middle of Tw. If READY is ‘0’ then a Tw is inserted. RCET Microprocessor & Microcontroller

8086 System Memory Circuitry Minimum Mode System Memory Circuitry Maximum Mode System Memory Circuitry RCET Microprocessor & Microcontroller

Minimum Mode System Memory Circuitry RCET Microprocessor & Microcontroller

Maximum Mode System Memory Circuitry RCET Microprocessor & Microcontroller