Intel 8088 (8086) Microprocessor Structure

Slides:



Advertisements
Similar presentations
Registers of the 8086/ /2002 JNM.
Advertisements

MICROPROCESSORS TWO TYPES OF MODELS ARE USED :  PROGRAMMER’S MODEL :- THIS MODEL SHOWS FEATURES, SUCH AS INTERNAL REGISTERS, ADDRESS,DATA & CONTROL BUSES.
Microprocessor System Design3-1 ECE 424 Design of Microprocessor-Based Systems Dr. Esam Al_Qaralleh CE Department Princess Sumaya University for Technology.
1-1 ECE 424 Design of Microprocessor-Based Systems Haibo Wang ECE Department Southern Illinois University Carbondale, IL
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.
Princess Sumaya Univ. Computer Engineering Dept. د. بســام كحـالــه Dr. Bassam Kahhaleh.
Princess Sumaya University
3-1 ECE 424 Design of Microprocessor-Based Systems Haibo Wang ECE Department Southern Illinois University Carbondale, IL Intel 8088 (8086) Microprocessor.
Vacuum tubes Transistor 1948 –Smaller, Cheaper, Less heat dissipation, Made from Silicon (Sand) –Invented at Bell Labs –Shockley, Brittain, Bardeen ICs.
Chapter 1 Microprocessor-based systems EE314 Microprocessor Systems Based on "An Introduction to the Intel Family of Microprocessors" by James L. Antonakos.
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.
The 8086 Microprocessor The 8086, announced in 1978, was the first 16-bit microprocessor introduced by Intel Corporation 8086 is 16-bit MPU. Externally.
Computer Organization and Assembly language
An Introduction to 8086 Microprocessor.
Electrical Engineering Department Engineering College Prince Sattam bin Abdul Aziz University Text Book: - Triebel and Singh, "The 8088 and 8086 Microprocessors",
MICROPROCESSORS AND APPLICATIONS
1 Fundamental of Computer Suthida Chaichomchuen : SCC
Types of Registers (8086 Microprocessor Based)
Minimum System Requirements Clock Generator Memory Interfacing.
Block diagram of 8086.
Intel 8086 (8088) Microprocessor Structure
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.
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
I NTEL 8086 M icroprocessor بسم الله الرحمن الرحيم 1.
ΜComputer Structure μProcessor Memory Bus System I/O Ports.
Chapter 12 Processor Structure and Function. Central Processing Unit CPU architecture, Register organization, Instruction formats and addressing modes(Intel.
Unit Microprocessor.
COURSE OUTCOMES OF Microprocessor and programming
An Introduction to 8086 Microprocessor.
History – 2 Intel 8086.
UNIT Architecture M.Brindha AP/EIE
UNIT – Microcontroller.
Introduction to 8086 Microprocessor
COURSE OUTCOMES OF Microprocessor and programming
8086 MICROPROCESSOR ARCHITECTURE & SEGMENTATION
8086 Microprocessor.
Computer Organization & Assembly Language Chapter 3
Introduction of microprocessor
Intel 8086 MICROPROCESSOR Architecture.
Basic Microprocessor Architecture
Introduction to Microprocessors
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
CNET 315 Microprocessor & Assembly Language
..
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)
Introduction to Assembly Language
Microprocessor & Assembly Language
Microprocessor & Assembly Language
Intel 8088 (8086) Microprocessor Structure
8086 Registers Module M14.2 Sections 9.2, 10.1.
Morgan Kaufmann Publishers Computer Organization and Assembly Language
CS 301 Fall 2002 Computer Organization
COMP 1321 Digital Infrastructure
COMP 1321 Digital Infrastructure
The Microprocessor & Its Architecture
Lecture 06 Programming language.
Computer Architecture CST 250
Unit-I 80386DX Architecture
Intel 8086.
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.
Presentation transcript:

Intel 8088 (8086) Microprocessor Structure Microprocessor System Design

Microprocessor System Design Overview Textbook: J. L. Antonakos, "An Introduction to the Intel Family of Microprocessors," Third Edition, Prentice Hall, 1999 Objectives: The course will provide knowledge to build and program microprocessor-based systems. Microprocessor architecture Architecture of microprocessor-based systems Programming microprocessor-based systems Future trends Grading: Two midterms, one final exam, and homeworks Microprocessor System Design

What are microprocessor-based systems? Microprocessor-based systems are electrical systems consisting of microprocessors, memories, I/O units, and other peripherals. Microprocessors are the brains of the systems Microprocessors access memories and other units through buses The operations of microprocessors are controlled by instructions stored in memories Memory Output units Input Bus Microprocessor Control unit Datapath ALU Reg. Microprocessor System Design

What are microprocessors? A microprocessor is a processor (or Central Processing Unit, CPU) fabricated on a single integrated circuit. X Y Control unit IR PC ALU ACC MAR Data bus Control bus Address bus A simple microprocessor architecture Microprocessor System Design

Evolution of Computers First generation (1939-1954) - vacuum tube Second generation (1954-1959) - transistor Third generation (1959-1971) - IC Fourth generation (1971-present) - microprocessor Microprocessor System Design

Evolution of Computers First generation (1939-1954) - vacuum tube IBM 650, 1954 Http://history.acusd.edu/gen/recording/computer1.html http://www.cs.virginia.edu/brochure/museum.html http://www.columbia.edu/acis/history/650.html Microprocessor System Design

Evolution of Computers Second generation (1954-1959) - transistor Manchester University Experimental Transistor Computer Http://history.acusd.edu/gen/recording/computer1.html http://www.computer50.org/kgill/transistor/trans.html Microprocessor System Design

Evolution of Computers Third generation (1959-1971) - IC PDP-8, Digital Equipment Corporation Thanks to the use of ICs, the DEC PDP-8 is the least expensive general purpose small computer in 1960s Http://history.acusd.edu/gen/recording/computer1.html http://www.piercefuller.com/collect/pdp8.html Microprocessor System Design

Evolution of Computers Fourth generation (1971-present) - microprocessor In 1971, Intel developed 4-bit 4004 chip for calculator applications. ALU Instruction decoder Reg. Program counter I/O Refresh logic System bus Control logic ROM/RAM buffer Timing Reset http://www.intel.com Block diagram of Intel 4004 4004 chip layout A good review article: The History of The Microprocessor, Bell Labs Technical Journal, Autumn, 1997 Microprocessor System Design

Evolution of Intel Microprocessors Number of transistors Minimum transistor sizes (µm) 8080 8088 80286 80386 80486 Pentium P II P III P 4 8080 8088 80286 80386 80486 Pentium P II P III P 4 Clock frequencies (MHz) MIPS 8080 8088 80286 80386 80486 Pentium P II P III P 4 8080 8088 80286 80386 80486 Pentium P II P III P 4 Microprocessor System Design

Other Commercial Microprocessors PowerPC (IBM, Motorola) Athlon, Dulon, Hammer (AMD) Crusoe (Transmeta) SPARC, UltraSPARC (Sun Microsystems) TI’s TMS DSP chips (Texas Instruments) StarCore (Motorola, Agere) ARM cores (Advanced RISC Machines) MIPS cores (MIPS Technologies)       Microprocessor System Design

... Applications of Microprocessor-Based Systems Computers System performance is normally the most important design concern Memory Timing & control Keyboard Interrupt ... Monitor Micro- processor Disk Other peripherals Bus Block diagram of a computer Microprocessor System Design

System bus (data, address & control signals) 1.3 System block diagram ROM (Read Only Memory) (start-up program) RAM (Random Access Memory) DRAM (Dynamic RAM) - high capacity, refresh needed SRAM (Static RAM) - low power, fast, easy to interface Crystal oscillator Timing circuitry (counters dividing to lower frequencies) P + associated logic circuitry: Bus controller Bus drivers Coprocessor Timing CPU Memory System bus (data, address & control signals) Parallel I/O Serial I/O Interrupt circuitry Many wires, fast. Simple (only two wires + ground) but slow. At external unexpected events, P has to interrupt the main program execution, service the interrupt request (obviously a short subroutine) and retake the main program from the point where it was interrupt. Printer (high resolution) External memory Floppy Disk Hard Disk Compact Disk Other high speed devices Printer (low resolution) Modem Operator’s console Mainframe Personal computer

Processor (8086 trough Pentium The Personal Computer Speaker Processor (8086 trough Pentium Coprocessor (8087 trough 80387 Timer logic (8253) System ROM 640KB DRAM System bus (data, address & control signals) Keyboard logic (8253) DMA Controller (8237) Expansion logic Interrupt logic (8259) Video card Disk controller Serial port Keyboard ... Extension slots

Applications of Microprocessor-Based Systems Microcontrollers A microcontroller is a simple computer implemented in a single VLSI chip. CPU RAM ROM Timer Interrupt I/O port USART A/D, D/A OSC. In general, microcontrollers are cheap and have low performance Microcontrollers are widely used in industrial control, automobile and home applications Block diagram of a microcontroller Microprocessor System Design

Applications of Microprocessor-Based Systems ASICs http://www.ti.com Microprocessors are embedded into ASIC chips to implement complex functions In general, it requires that the microprocessors have low power consumption and take small silicon area A TI baseband chip for cellular phone applications Microprocessor System Design

Microprocessor System Design Class Objectives Hardware architecture of microprocessor-based systems Microprocessor architecture Memory organization I/O units of microprocessor-based systems How to put them together Programming of microprocessor-based systems Intel 80x86 instruction set Microprocessor Interrupt services Assembly language programming Microprocessor System Design

Microprocessor System Design Overview & Review Microprocessor System Design

Microprocessor System Design Overview Intel 8088 facts 20 bit address bus allow accessing 1 M memory locations 8088 VDD (5V) GND CLK 20-bit address 8-bit data   control signals To 8088 from 8088 16-bit internal data bus and 8-bit external data bus. Thus, it need two read (or write) operations to read (or write) a 16-bit datum Byte addressable and byte-swapping Memory locations 5A 2F 18000 18001 Low byte of word High byte of word Word: 5A2F 8088 signal classification Microprocessor System Design

Microprocessor System Design Organization of 8088 AH AL BH BL CH CL DH DL SP BP SI DI ALU Flag register Execution Unit (EU) EU control  CS DS SS ES ALU Data bus (16 bits) Address bus (20 bits) Instruction Queue Bus External bus IP Data bus Bus Interface Unit (BIU) General purpose register Segment Microprocessor System Design

General Purpose Registers 15 8 7 AX BX CX DX AH AL BH BL CH CL DH DL Accumulator Base Counter Data SP BP SI DI Data Group Pointer and Index Group Stack Pointer Base Pointer Source Index Destination Index Microprocessor System Design

Arithmetic Logic Unit (ALU) n bits A B Y F Carry Y= 0 ? A > B ? F Y 0 0 0 A + B 0 0 1 A - B 0 1 0 A - 1 0 1 1 A and B 1 0 0 A or B 1 0 1 not A       Signal F control which function will be conducted by ALU. Signal F is generated according to the current instruction. Basic arithmetic operations: addition, subtraction,  Basic logic operations: and, or, xor, shifting, Microprocessor System Design

Microprocessor System Design Flag Register Flag register contains information reflecting the current status of a microprocessor. It also contains information which controls the operation of the microprocessor.  OF DF IF TF ZF SF AF PF CF 15   Control Flags Status Flags CF: Carry flag PF: Parity flag AF: Auxiliary carry flag ZF: Zero flag SF: Sign flag OF: Overflow flag IF: Interrupt enable flag DF: Direction flag TF: Trap flag Microprocessor System Design

Instruction Machine Codes Instruction machine codes are binary numbers For Example: 1 0 0 0 1 0 0 0 1 1 0 0 0 0 1 1 MOV AL, BL Register mode MOV Machine code structure Opcode Mode Operand1 Operand2 Some instructions do not have operands, or have only one operand Opcode tells what operation is to be performed. (EU control logic generates ALU control signals according to Opcode) Mode indicates the type of a instruction: Register type, or Memory type Operands tell what data should be used in the operation. Operands can be addresses telling where to get data (or where to store results) Microprocessor System Design

Microprocessor System Design EU Operation 1. Fetch an instruction from instruction queue ALU Data bus (16 bits) AH AL BH BL CH CL DH DL SP BP SI DI General purpose register ALU Flag register EU control instruction 1011000101001010 2. According to the instruction, EU control logic generates control signals. (This process is also referred to as instruction decoding) 3. Depending on the control signal, EU performs one of the following operations: An arithmetic operation A logic operation Storing a datum into a register Moving a datum from a register Changing flag register Microprocessor System Design

Generating Memory Addresses How can a 16-bit microprocessor generate 20-bit memory addresses? Left shift 4 bits FFFFF 16-bit register 0000 Addr1 + 0FFFF Segment (64K) + 16-bit register Offset Offset Addr1 20-bit memory address Segment address 00000 Intel 80x86 memory address generation 1M memory space Microprocessor System Design

Microprocessor System Design Memory Segmentation A segment is a 64KB block of memory starting from any 16-byte boundary For example: 00000, 00010, 00020, 20000, 8CE90, and E0840 are all valid segment addresses The requirement of starting from 16-byte boundary is due to the 4-bit left shifting Segment registers in BIU CS SS DS ES Code Segment Data Segment Stack Segment Extra Segment 15 Microprocessor System Design

Memory Address Calculation Segment addresses must be stored in segment registers 0000 + Segment address Offset Memory address Offset is derived from the combination of pointer registers, the Instruction Pointer (IP), and immediate values Examples 3 4 8 A 2 1 B CS IP + Instruction address 5 F E SS SP + Stack address 1 2 3 4 6 DS DI + Data address Microprocessor System Design

Fetching Instructions Where to fetch the next instruction? CS IP 1 2 3 4 0 0 1 2 1 2 3 5 2 12352 MOV AL, 0 8088 Memory Update IP After an instruction is fetched, Register IP is updated as follows: IP = IP + Length of the fetched instruction For Example: the length of MOV AL, 0 is 2 bytes. After fetching this instruction, the IP is updated to 0014 Microprocessor System Design

Microprocessor System Design Accessing Data Memory There is a number of methods to generate the memory address when accessing data memory. These methods are referred to as Addressing Modes Examples: Direct addressing: MOV AL, [0300H] 1 2 3 4 6 DS Memory address (assume DS=1234H) Register indirect addressing: MOV AL, [SI] 1 2 3 4 6 5 DS Memory address (assume DS=1234H) (assume SI=0310H) Microprocessor System Design

Reserved Memory Locations Some memory locations are reserved for special purposes. Programs should not be loaded in these areas FFFFF Locations from FFFF0H to FFFFFH are used for system reset code Reset instruction area FFFF0 Locations from 00000H to 003FFH are used for the interrupt pointer table Interrupt pointer table It has 256 table entries Each table entry is 4 bytes 003FF 256  4 = 1024 = memory addressing space From 00000H to 003FFH 00000 Microprocessor System Design

Microprocessor System Design Interrupts An interrupt is an event that occurs while the processor is executing a program The interrupt temporarily suspends execution of the program and switch the processor to executing a special routine (interrupt service routine) When the execution of interrupt service routine is complete, the processor resumes the execution of the original program Interrupt classification Hardware Interrupts Software Interrupts Caused by activating the processor’s interrupt control signals (NMI, INTR) Caused by the execution of an INT instruction Caused by an event which is generated by the execution of a program, such as division by zero 8088 can have 256 interrupts Microprocessor System Design

Minimum and Maximum Operation modes Intel 8088 (8086) has two operation modes: Minimum Mode Maximum Mode 8088 generates control signals for memory and I/O operations It needs 8288 bus controller to generate control signals for memory and I/O operations Some functions are not available in minimum mode It allows the use of 8087 coprocessor; it also provides other functions Compatible with 8085-based systems Microprocessor System Design