© 2009 Pearson Education, Upper Saddle River, NJ 07458. All Rights ReservedFloyd, Digital Fundamentals, 10 th ed Digital Fundamentals Tenth Edition Floyd.

Slides:



Advertisements
Similar presentations
CPU Structure and Function
Advertisements

Computer Architecture
I/O Organization popo.
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.
EEE226 MICROPROCESSORBY DR. ZAINI ABDUL HALIM School of Electrical & Electronic Engineering USM.
Introduction to 8086 Microprocessor
Processor System Architecture
Khaled A. Al-Utaibi  Computers are Every Where  What is Computer Engineering?  Design Levels  Computer Engineering Fields  What.
CEN 226: Computer Organization & Assembly Language :CSC 225 (Lec#3) By Dr. Syed Noman.
Vacuum tubes Transistor 1948 ICs 1960s Microprocessors 1970s.
1 Hardware and Software Architecture Chapter 2 n The Intel Processor Architecture n History of PC Memory Usage (Real Mode)
© 2006 Pearson Education, Upper Saddle River, NJ All Rights Reserved.Brey: The Intel Microprocessors, 7e Chapter 2 The Microprocessor and its Architecture.
1 ICS 51 Introductory Computer Organization Fall 2006 updated: Oct. 2, 2006.
Assembly Language for Intel-Based Computers Chapter 2: IA-32 Processor Architecture Kip Irvine.
Vacuum tubes Transistor 1948 –Smaller, Cheaper, Less heat dissipation, Made from Silicon (Sand) –Invented at Bell Labs –Shockley, Brittain, Bardeen ICs.
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.
Microprocessor Systems Design I Instructor: Dr. Michael Geiger Spring 2012 Lecture 2: 80386DX Internal Architecture & Data Organization.
Computer Organization and Assembly language
GCSE Computing - The CPU
© 2006 Pearson Education, Upper Saddle River, NJ All Rights Reserved.Brey: The Intel Microprocessors, 7e Chapter 2 The Microprocessor and its 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.
The 8086 Microprocessor The 8086, announced in 1978, was the first 16-bit microprocessor introduced by Intel Corporation 8086 is 16-bit MPU. Externally.
Chapter 17 Microprocessor Fundamentals William Kleitz Digital Electronics with VHDL, Quartus® II Version Copyright ©2006 by Pearson Education, Inc. Upper.
Floyd Digital Fundamentals, 9/e Copyright ©2006 by Pearson Education, Inc. Upper Saddle River, New Jersey All rights reserved. Slide 1 Digital Fundamentals.
Group 5 Alain J. Percial Paula A. Ortiz Francis X. Ruiz.
Processor Structure & Operations of an Accumulator Machine
An Introduction to 8086 Microprocessor.
MICROPROCESSOR INPUT/OUTPUT
CHAPTER 3 TOP LEVEL VIEW OF COMPUTER FUNCTION AND INTERCONNECTION
Khaled A. Al-Utaibi  Interrupt-Driven I/O  Hardware Interrupts  Responding to Hardware Interrupts  INTR and NMI  Computing the.
1 Fundamental of Computer Suthida Chaichomchuen : SCC
Microprocessor Dr. Rabie A. Ramadan Al-Azhar University Lecture 2.
Fall 2012 Chapter 2: x86 Processor Architecture. Irvine, Kip R. Assembly Language for x86 Processors 6/e, Chapter Overview General Concepts IA-32.
Accessing I/O Devices Processor Memory BUS I/O Device 1 I/O Device 2.
1 ICS 51 Introductory Computer Organization Fall 2009.
Introduction to Microprocessors
Computer Hardware A computer is made of internal components Central Processor Unit Internal External and external components.
8086 Internal Architecture
80386DX functional Block Diagram PIN Description Register set Flags Physical address space Data types.
Stored Program A stored-program digital computer is one that keeps its programmed instructions, as well as its data, in read-write,
Chapter 2 Parts of a Computer System. 2.1 PC Hardware: Memory.
Overview von Neumann Architecture Computer component Computer function
Computer operation is of how the different parts of a computer system work together to perform a task.
Intel 8086 (8088) Microprocessor Structure
Question What technology differentiates the different stages a computer had gone through from generation 1 to present?
Different Microprocessors Tamanna Haque Nipa Lecturer Dept. of Computer Science Stamford University Bangladesh.
بسم الله الرحمن الرحيم MEMORY AND I/O.
MICROPROCESSOR DETAILS 1 Updated April 2011 ©Paul R. Godin prgodin gmail.com.
MODULE 5 INTEL TODAY WE ARE GOING TO DISCUSS ABOUT, FEATURES OF 8086 LOGICAL PIN DIAGRAM INTERNAL ARCHITECTURE REGISTERS AND FLAGS OPERATING MODES.
1 Basic Processor Architecture. 2 Building Blocks of Processor Systems CPU.
Chapter 3 System Buses.  Hardwired systems are inflexible  General purpose hardware can do different tasks, given correct control signals  Instead.
Intel 8086 MICROPROCESSOR ARCHITECTURE
BITS Pilani Pilani Campus Pawan Sharma Lecture / ES C263 INSTR/CS/EEE F241 Microprocessor Programming and Interfacing.
Chapter 12 Processor Structure and Function. Central Processing Unit CPU architecture, Register organization, Instruction formats and addressing modes(Intel.
Chapter Overview General Concepts IA-32 Processor Architecture
Assembly language.
x86 Processor Architecture
William Stallings Computer Organization and Architecture 8th Edition
Introduction to 8086 Microprocessor
8086 Microprocessor.
Introduction of microprocessor
Homework Reading Continue work on mp1
An Introduction to Microprocessor Architecture using intel 8085 as a classic processor
CS 301 Fall 2002 Computer Organization
Computer Architecture CST 250
Unit-I 80386DX Architecture
Presentation transcript:

© 2009 Pearson Education, Upper Saddle River, NJ All Rights ReservedFloyd, Digital Fundamentals, 10 th ed Digital Fundamentals Tenth Edition Floyd Chapter 13 © 2008 Pearson Education

© 2009 Pearson Education, Upper Saddle River, NJ All Rights ReservedFloyd, Digital Fundamentals, 10 th ed Computer Block Diagram The central processing unit (CPU) controls the operations by issuing a fetch to memory for an instruction, then executes it. Memory stores instructions and data until needed by the CPU. The ports are the I/O connections to the peripherals. The buses are groups of conductors with a common purpose. Peripherals are devices for inputting or outputting information.

© 2009 Pearson Education, Upper Saddle River, NJ All Rights ReservedFloyd, Digital Fundamentals, 10 th ed Software Software is all of the instructions that determine what operations are performed. System software is the operating system of the computer and acts as the system manager. Application software includes the various programs used to accomplish a task. The BIOS is a portion of the operating system called “firmware” because it is a permanent part of the system software in ROM (read- only memory).

© 2009 Pearson Education, Upper Saddle River, NJ All Rights ReservedFloyd, Digital Fundamentals, 10 th ed Microprocessors Four blocks are common to all microprocessors. These are: ALU Performs arithmetic and logic operations Instruction decoder Translates the programming instruction into an address where microcode resides for executing the instruction Register array A group of temporary storage locations within the processor, each with special features Control unit Synchronizes the processing of instructions Arithmetic logic unit (ALU) Instruction decoder Register array Control unit Microprocessor

© 2009 Pearson Education, Upper Saddle River, NJ All Rights ReservedFloyd, Digital Fundamentals, 10 th ed Microprocessor Buses Three buses for microprocessors allow data, addresses and instructions to be moved. The address bus is used by the microprocessor to specify a location in memory or external device. Some processors have 64 address lines and can access 1.8 x locations. The data bus transfers data and instruction codes to and from memory and I/O ports. The control bus coordinates operations and communicates with external devices.

© 2009 Pearson Education, Upper Saddle River, NJ All Rights ReservedFloyd, Digital Fundamentals, 10 th ed Microprocessor Programming Microprocessors work with an instruction set that allows it to function. Although the instruction set within the processor is binary, programmers work with English-like commands, which are divided into seven groups. These are: Data transfer Arithmetic and logic Bit manipulation Loops and jumps Strings Subroutines and interrupts Control

© 2009 Pearson Education, Upper Saddle River, NJ All Rights ReservedFloyd, Digital Fundamentals, 10 th ed Multicore Processors The Intel microprocessors up through the Pentium were all single core processors, meaning they had only one microprocessor in an IC. Many newer processors have more than one core on a single IC. Multicore processors can execute more than one instruction at a time. This process is also called multiprocessing. System bus Processor core Cache two processors work on an image at the same time to adjust the contrast. The work is sectioned so that each processor works on only one part. An example of multiprocessing is when

© 2009 Pearson Education, Upper Saddle River, NJ All Rights ReservedFloyd, Digital Fundamentals, 10 th ed Multitasking Multitasking is a technique that allows a computer to perform more than one task. Unlike multiprocessing, the work only appears to be simultaneous because of the speed of the processor. One type of multitasking parcels time slices on the processor for each program – this is called preemptive multitasking. Another type of multitasking is done when the program controls the processor – this is called cooperative multitasking. Multithreading is a variation on multitasking, where different parts of the same program are executed simultaneously.

© 2009 Pearson Education, Upper Saddle River, NJ All Rights ReservedFloyd, Digital Fundamentals, 10 th ed Operations Microprocessors execute programs by repeatedly cycling through three basic steps: Execution unit EU  Executes instructions Bus interface unit BIU  Fetches instructions  Reads operands  Writes results System buses 8086/8088 Microprocessor 1.Fetch 2.Decode 3.Execute The processor has two internal units, the EU and the BIU, as shown in the figure:

© 2009 Pearson Education, Upper Saddle River, NJ All Rights ReservedFloyd, Digital Fundamentals, 10 th ed Operations While the EU is executing instructions, the BIU is fetching the next instruction from memory, and storing the next instruction in a high speed memory called the cache. Execution unit EU  Executes instructions Bus interface unit BIU  Fetches instructions  Reads operands  Writes results System buses 8086/8088 Microprocessor In the Pentium processors, two execution units (EUs) allow instructions that are independent of each other to execute at the same time. The following slide shows the architecture of the 8088 processor …

© 2009 Pearson Education, Upper Saddle River, NJ All Rights ReservedFloyd, Digital Fundamentals, 10 th ed

© 2009 Pearson Education, Upper Saddle River, NJ All Rights ReservedFloyd, Digital Fundamentals, 10 th ed Addressing Intel chose a innovative way of generating 20-bit physical addresses in the 8088 and subsequent processors. The physical address is formed by combining a 16-bit address in a segment register with a 16-bit address in a general register. The addresses “overlap” as shown, with an implied on the right side of the segment register (shown in blue). 16-bit segment base address 16-bit offset address 20-bit physical address Segment register General register

© 2009 Pearson Education, Upper Saddle River, NJ All Rights ReservedFloyd, Digital Fundamentals, 10 th ed Addressing Segment/offset addressing allows 64k blocks of code to be relocated in memory by changing only the segment address. Assume IP = 20A0 16 and CS=B a)What is the location of the start and end of the block? b)What physical address is formed? The addressing is diagramed: Contents of CS implied Contents of IP a) The start of the block is at B ; it ends at B FFFF 16 = C1FFF 16 b) The physical address is B A0 16 = B40A kB block

© 2009 Pearson Education, Upper Saddle River, NJ All Rights ReservedFloyd, Digital Fundamentals, 10 th ed The Execution Unit The EU decodes instructions, generates control signals, and executes instructions. The general registers and flags are key elements from an assembly language programming view. Data set Pointer and index set Accumulator Base index Count Data Stack pointer Base pointer Destination index Source index Interrupt enable Direction Trap Carry Parity Aux carry Zero Sign Overflow Control flags Status flags As processors have evolved, the register set has expanded, both in number size and number. The following slide shows part of that evolution…

© 2009 Pearson Education, Upper Saddle River, NJ All Rights ReservedFloyd, Digital Fundamentals, 10 th ed The Execution Unit Accumulator Base index Count Data Stack pointer Base pointer Source index Destination index Instruction pointer Code segment Data segment Extra segment Stack segment 32-bit names EAX EBX ECX EDX ESP EBP EDI ESI EIP EFlags Name The software model of later processors includes expanded registers, buses, math coprocessors and the ability to do “pipelining”. Pipelining is a technique where the processor begins executing the next instruction before the previous instruction has been completed.

© 2009 Pearson Education, Upper Saddle River, NJ All Rights ReservedFloyd, Digital Fundamentals, 10 th ed Computer Programming Assembly language was developed to make a simpler interface between the machine and the programmer. Assembly language is useful today for many operations because it executes fast and efficiently, but it must be written for a specific processor and takes more time to write programs. Early computers were programmed in machine language, which was the only instructions the computer could execute. Machine language is tedious to write and prone to errors. Most programming today is done in a high-level language, which can run on various machines. It is easier to write and maintain high- level programs.

© 2009 Pearson Education, Upper Saddle River, NJ All Rights ReservedFloyd, Digital Fundamentals, 10 th ed Computer Programming High-level languages can run on any machine; the source code is converted to machine code by a compiler. (In some cases an interpreter is used; it converts source code line-by-line.) Assembly language must written for the specific processor it will be used on and the programmer must understand the register structure of the processor. An assembler converts the source code to the machine code. High-level language program (Source program) Machine language program (Object program) Machine language program (Object program) Assembly language program (Source program) Assembler Compiler

© 2009 Pearson Education, Upper Saddle River, NJ All Rights ReservedFloyd, Digital Fundamentals, 10 th ed Assembly Programming Assembly language is suited to instrumentation and control applications such as found in a production facility. It is also used to write device drivers for peripheral devices because necessary instructions are not readily available in high-level languages. In assembly language, there are two types of instructions – assembler directives and executable instructions. Assembler directives provide the assembler with various types of information such as space requirements, or where to begin executing instructions. Executable instructions can be directly translated to machine code and include arithmetic and other operations. dw 30 ;an assembler directive that reserves space for 30 as a word sub ax,bx ;an executable instruction - subtract (bx) from (ax) The following slide lists categories of executable instructions…

© 2009 Pearson Education, Upper Saddle River, NJ All Rights ReservedFloyd, Digital Fundamentals, 10 th ed Instruction type Examples Syntax Transfer Move (copy) MOV destination, source Input IN destination, port number Arithmetic Add with Carry ADC destination, source Subtract SUB destination, source Bit Manipulation Invert bits NOT register Shift left (logical) SHL register, quantity Arithmetic Add with Carry ADC destination, source Subtract SUB destination, source Loops and Jumps Unconditional jump JMP destination Jump if no carry JNC destination Strings Input a string INS port number Subroutines Call a procedure CALL label and Interrupts Interrupt INT number Processor Control Clear carry flag CLC

© 2009 Pearson Education, Upper Saddle River, NJ All Rights ReservedFloyd, Digital Fundamentals, 10 th ed Interrupts In microprocessor based systems, there are three ways to start a service routine for a peripheral device. These are: Polled I/O – the CPU tests each device one at a time to check if it needs service. If it does, the service routine is invoked. Interrupt driven I/O – the peripheral device requests service by sending an interrupt request signal. The CPU acknowledges the interrupt, fetches the service routine, and returns to its program when the routine is completed. Software interrupts – a software interrupt is issued from software rather than external hardware. After the interrupt occurs, the steps are the same as with a hardware interrupt.

© 2009 Pearson Education, Upper Saddle River, NJ All Rights ReservedFloyd, Digital Fundamentals, 10 th ed Direct Memory Access Direct memory access (DMA) is a data transfer technique in which data is transferred to or from a peripheral device and memory without involving the CPU. A DMA controller handles the transfer. The transfer is faster using this method.

© 2009 Pearson Education, Upper Saddle River, NJ All Rights ReservedFloyd, Digital Fundamentals, 10 th ed Internal Interfacing It is often necessary to communicate with various devices in systems. Often, the devices are connected together with a bus and access to the bus is controlled by a bus controller or bus arbitrator to avoid conflicts. To avoid having two or more devices “talking” on a common bus, tristate buffers are commonly used. These are buffers with three states: HIGH, LOW, and high impedance (disconnected). An enable line determines if the device is enabled or disconnected. Active HIGH enable line HIGH LOW or HIGH HIGH Disconnected (high-Z)

© 2009 Pearson Education, Upper Saddle River, NJ All Rights ReservedFloyd, Digital Fundamentals, 10 th ed The IEEE 488 (GPIB) Bus An example of a bus system is the IEEE 488 general-purpose interface bus (GPIB) that has evolved from a standard originally developed in 1965 by Hewlett-Packard. The standard is widely used to allow instruments to send data over a parallel data bus. There are three types of devices defined by the standard. Data lines Management lines Handshake lines Listeners are devices that receive data such as monitors or printers. Talkers are devices that send data such as DMMs or signal generators. Controllers are devices that determine who can talk and who should listen.

© 2009 Pearson Education, Upper Saddle River, NJ All Rights ReservedFloyd, Digital Fundamentals, 10 th ed Port Interrupt Assembly language Tristate A physical interface on a computer through which data are passed to or from a peripheral. A computer signal or instruction that causes the current process to be temporarily stopped while a service routine is run. A programming language that uses English like words and has a one-to-one correspondence to machine language. A type of output on logic circuits that exhibits three states: HIGH, LOW, and high Z; used to interface the outputs of a source device to a bus.

© 2009 Pearson Education, Upper Saddle River, NJ All Rights ReservedFloyd, Digital Fundamentals, 10 th ed 1. In a computer, the address bus is a a. one way bus from the CPU b. one way bus to the CPU c. two way bus between the CPU and memory d. two way bus between the CPU and ports © 2008 Pearson Education

© 2009 Pearson Education, Upper Saddle River, NJ All Rights ReservedFloyd, Digital Fundamentals, 10 th ed 2. A example of software that resides in ROM (firmware) is a. assembly language b. application software c. the BIOS d. all of the above © 2008 Pearson Education

© 2009 Pearson Education, Upper Saddle River, NJ All Rights ReservedFloyd, Digital Fundamentals, 10 th ed 3. The part of a microprocessor that translates the programming instruction into an address where microcode resides is the a. ALU b. instruction decoder c. register array d. control unit © 2008 Pearson Education

© 2009 Pearson Education, Upper Saddle River, NJ All Rights ReservedFloyd, Digital Fundamentals, 10 th ed 4. The part of a microprocessor that fetches the next instruction from memory is called the a. ALU b. BIU c. EU d. bus controller © 2008 Pearson Education

© 2009 Pearson Education, Upper Saddle River, NJ All Rights ReservedFloyd, Digital Fundamentals, 10 th ed 5. The figure illustrates the segment/offset method of addressing used in Intel processors. The advantage of this method is a. code can be easily relocated b. a smaller address bus can be used c. addresses can be “pipelined” d. the clock speed can be increased © 2008 Pearson Education 16-bit segment base address 16-bit offset address 20-bit physical address

© 2009 Pearson Education, Upper Saddle River, NJ All Rights ReservedFloyd, Digital Fundamentals, 10 th ed 6. An advantage to assembly language is that it is a. fast and efficient b. easier to write programs c. can be used on any processor d. all of the above © 2008 Pearson Education

© 2009 Pearson Education, Upper Saddle River, NJ All Rights ReservedFloyd, Digital Fundamentals, 10 th ed 7. Information given to an assembler such as where to begin executing instructions is provided by a. the BIOS b. system programs c. executable instructions d. assembler directives © 2008 Pearson Education

© 2009 Pearson Education, Upper Saddle River, NJ All Rights ReservedFloyd, Digital Fundamentals, 10 th ed 8. The CPU is not involved in a. arithmetic instructions b. loop instructions c. software interrupts d. direct memory access © 2008 Pearson Education

© 2009 Pearson Education, Upper Saddle River, NJ All Rights ReservedFloyd, Digital Fundamentals, 10 th ed 9. For the circuit shown, the output will be a. LOW b. HIGH c. high impedance d. not enough information to tell © 2008 Pearson Education HIGH LOW ?

© 2009 Pearson Education, Upper Saddle River, NJ All Rights ReservedFloyd, Digital Fundamentals, 10 th ed 10. The IEEE 488 bus standard a. is a serial bus with 2 types of devices b. is a parallel bus with 2 types of devices c. is a serial bus with 3 types of devices d. is a parallel bus with 3 types of devices © 2008 Pearson Education

© 2009 Pearson Education, Upper Saddle River, NJ All Rights ReservedFloyd, Digital Fundamentals, 10 th ed Answers: 1. a 2. c 3. b 4. b 5. a 6. a 7. d 8. d 9. c 10. d