Overview Parallel Processing Pipelining

Slides:



Advertisements
Similar presentations
Bus arbitration Processor and DMA controllers both need to initiate data transfers on the bus and access main memory. The device that is allowed to initiate.
Advertisements

1 Dynamic Interconnection Networks Buses CEG 4131 Computer Architecture III Miodrag Bolic.
Computer Architecture
I/O Organization popo.
INPUT-OUTPUT ORGANIZATION
1  1998 Morgan Kaufmann Publishers Interfacing Processors and Peripherals.
Chapter 10 Input/Output Organization. Connections between a CPU and an I/O device Types of bus (Figure 10.1) –Address bus –Data bus –Control bus.
WHAT IS AN OPERATING SYSTEM? An interface between users and hardware - an environment "architecture ” Allows convenient usage; hides the tedious stuff.
Chapter Thirteen Multiprocessors.
1/1/ / faculty of Electrical Engineering eindhoven university of technology Processor support devices Part 1:Interrupts and shared memory dr.ir. A.C. Verschueren.
Lecture Objectives: 1)Explain the limitations of flash memory. 2)Define wear leveling. 3)Define the term IO Transaction 4)Define the terms synchronous.
S. Barua – CPSC 440 CHAPTER 8 INTERFACING PROCESSORS AND PERIPHERALS Topics to be covered  How to.
Input-output and Communication Prof. Sin-Min Lee Department of Computer Science.
Interprocessor arbitration
INPUT-OUTPUT ORGANIZATION
Lecture 12 Today’s topics –CPU basics Registers ALU Control Unit –The bus –Clocks –Input/output subsystem 1.
Computer Architecture Lecture 08 Fasih ur Rehman.
CPU BASICS, THE BUS, CLOCKS, I/O SUBSYSTEM Philip Chan.
Interconnection networks Characteristic of multiprocessor system – ability of each processor to share a set of main memory modules and I/O devices. This.
CHAPTER 3 TOP LEVEL VIEW OF COMPUTER FUNCTION AND INTERCONNECTION
Computer Architecture Lecture10: Input/output devices Piotr Bilski.
Bus Mr. Mukul Varshney. Bus A bus, in computing, is a set of physical connections (cables, printed circuits, etc.) which can be shared by multiple hardware.
Interrupts, Buses Chapter 6.2.5, Introduction to Interrupts Interrupts are a mechanism by which other modules (e.g. I/O) may interrupt normal.
I/O Computer Organization II 1 Interconnecting Components Need interconnections between – CPU, memory, I/O controllers Bus: shared communication channel.
MBG 1 CIS501, Fall 99 Lecture 18: Input/Output (I/O): Buses and Peripherals Michael B. Greenwald Computer Architecture CIS 501 Fall 1999.
Computer System Architecture Dept. of Info. Of Computer. Chap. 13 Multiprocessors 13-1 Chap. 13 Multiprocessors n 13-1 Characteristics of Multiprocessors.
MARIE:An Introduction to a Simple Computer Michael Dougherty September 17, 2009.
Lec 6 Chap. 13Multiprocessors
Explanation Interrupts System Interconnections. Interrupts A computer system must provide a method for allowing mechanisms to interrupt the normal processing.
Mohamed Younis CMCS 411, Computer Architecture 1 CMCS Computer Architecture Lecture 26 Bus Interconnect May 7,
Chapter 3 System Buses.  Hardwired systems are inflexible  General purpose hardware can do different tasks, given correct control signals  Instead.
Chapter 11 System Performance Enhancement. Basic Operation of a Computer l Program is loaded into memory l Instruction is fetched from memory l Operands.
Networked Embedded Systems Pengyu Zhang & Sachin Katti EE107 Spring 2016 Lecture 11 Direct Memory Access.
INPUT-OUTPUT ORGANIZATION
ASYNCHRONOUS DATA TRANSFER
Interconnection Structures
Department of Computer Science and Engineering
Bus Interfacing Processor-Memory Bus Backplane Bus I/O Bus
Chapter 6 Input/Output Organization
Overview Parallel Processing Pipelining
Topics Covered What is Real Time Operating System (RTOS)
Input/Output and Communication
Presented By: Navneet Kaur Randhawa Lect. I.T. Deptt. GPC,Amritsar
I/O Memory Interface Topics:
1 Input-Output Organization Computer Organization Computer Architectures Lab Peripheral Devices Input-Output Interface Asynchronous Data Transfer Modes.
Chapter 3 Top Level View of Computer Function and Interconnection
COMP2121: Microprocessors and Interfacing
CS703 - Advanced Operating Systems
Microcomputer Architecture
INPUT-OUTPUT ORGANIZATION
Computer Architecture
Multiprocessor Introduction and Characteristics of Multiprocessor
Computer System Overview
INTERCONNECTION NETWORKS
INPUT-OUTPUT ORGANIZATION
Process Description and Control
Chap. 9 Pipeline and Vector Processing
Concurrency: Mutual Exclusion and Process Synchronization
Lecture 25: Multiprocessors
Interrupt handling Explain how interrupts are used to obtain processor time and how processing of interrupted jobs may later be resumed, (typical.
CSC3050 – Computer Architecture
Lecture 25: Multiprocessors
Lecture 24: Multiprocessors
COMP3221: Microprocessors and Embedded Systems
William Stallings Computer Organization and Architecture 7th Edition
Chapter 13: I/O Systems.
Chapter 3: Process Management
William Stallings Computer Organization and Architecture
Presentation transcript:

Overview Parallel Processing Pipelining Characteristics of Multiprocessors Interconnection Structures Inter processor Arbitration Inter processor Communication and Synchronization

Inter Processor Arbitration Bus : facilitate the transfer of instruction between component - bus used by CPU to connect processor register to ALU 1) Memory Bus 2) I/O Bus System Bus – - A Backplane level bus - Printed Circuit Board - Connects CPU, IOP, and Memory - Each of CPU, IOP, and Memory board can be plugged into a slot in the backplane(system bus) - Bus signals are grouped into 3 groups Data, Address, and Control(plus power) - Only one of CPU, IOP, and Memory can be granted to use the bus at a time - Arbitration mechanism is needed to handle multiple requests A bus that connects major component in a multiprocessor system , such As CPUs, IOPs, and memory e.g. IEEE standard 796 Multibus - 86 lines Data: 16(multiple of 8) Address: 24 Control: 26 Power: 20

Synchronous and Asynchronous Data Transfer Synchronous Bus Each data item is transferred over a time slice known to both source and destination unit - Common clock source - Or separate clock and synchronization signal is transmitted periodically to synchronize the clocks in the system Asynchronous Bus Each data item is transferred by Handshake mechanism - Unit that transmits the data transmits a control signal that indicates the presence of data - Unit that receiving the data responds with another control signal to acknowledge the receipt of the data Strobe pulse - supplied by one of the units to indicate to the other unit when the data transfer has to occur

Inter Processor Static Arbitration Serial Arbitration Procedure Parallel Arbitration Procedure Bus arbiter 1 PI PO arbiter 2 arbiter 3 arbiter 4 Highest priority 1 Bus busy line To next arbiter Ack Req 4 x 2 Priority encoder 2 x 4 Decoder

InterProcessor Dynamic Arbitration Priorities of the units can be dynamically changeable while the system is in operation Time Slice Fixed length time slice is given sequentially to each processor, round-robin fashion Polling Unit address polling - Bus controller advances the address to identify the requesting unit LRU : highest priority to device that has not used bus for longest interval FIFO : Requests are served in the order received. Rotating Daisy Chain : PO of the last device connected to PI of first device Conventional Daisy Chain - Highest priority to the nearest unit to the bus controller Rotating Daisy Chain - Highest priority to the unit that is nearest to the unit that has most recently accessed the bus(it becomes the bus controller)

Interprocessor Communication Shared Memory Communication Area Receiver(s) Mark Sending Processor Receiving . Message Instruction Interrupt

In addition to shared memory , a multiprocessor system may have other shared resources. For example : Magnetic disk To prevent conflicting use of shared resources by several processor there must be a provision for assigning resources to processors. This task is given to OS Three organizations that have been used to design OS for multiprocessor (1) Master Slave Mode (2) Separate Operating System (3) Distributed Operating System

Inter Processor Synchronization Communication of control information between processors - To enforce the correct sequence of processes - To ensure mutually exclusive access to shared writable data Hardware Implementation Mutual Exclusion with a Semaphore Mutual Exclusion - One processor to exclude or lock out access to shared resource by other processors when it is in a Critical Section - Necessary to protect data from being changed simultaneously by two or more processors - guarantees orderly access to shared memory and other shared resources - Critical Section is a program sequence that, once begun, must complete execution before another processor accesses the same shared resource

Inter Processor Synchronization Semaphore - A binary variable 1 : A processor is executing a critical section, that not available to other processors 0 : Available to any requesting processor - Software controlled Flag that is stored in memory that all processors can be access - Processor use shared segment when semaphore=0, they set it 1 when they are executing and clear it to 0 when finished. A semaphore can be initialized with test and set instruction along with hardware lock mechanism TSL SEM R  M [SEM] // Test Semaphore M[SEM]  1 // Set Semaphore

The End