SlideShare a Scribd company logo
1 of 19
VECTOR PROCESSING
Problems that can be efficiently formulated in terms of vectors
-Long-range weather forecasting
–Petroleum explorations
–Seismic data analysis
–Medical diagnosis
–Aerodynamics and space flight simulations
–Artificial intelligence and expert systems
–Mapping the human genom
–Image processing
Vector Operations
• Many scientific problems require arithmetic operations on large arrays of numbers.
• These numbers are usually formulated as vectors and matrices of floating-point numbers.
• A vector is an ordered set of a one-dimensional array of data items.
• A vector V of length n is represented as a row vector by
• V = [ V1 V2V3… Vn]
• It may be represented as a column vector if the data items are listed in a column.
• Operations on vectors must be broken down into single computations with subscripted
variables.
Vector Operations
• The element Vi of vector V is written as V(I) and the index I refers to a memory
address or register where the number is stored.
• The difference between a conventional Scalar Processor and a Vector Processor,
consider the following Fortran DO loop:
• This is program for adding two vectors A and B of length 100 to produce a
vector C.
• The machine language by the following sequence of operations .
• DO 20 I = 1, 100
• 20 C(I) = B(I) + A(I)
Vector Operations
• This is program loop that reads a pair of operands from arrays A and
B and performs a floating-point addition.
• The loop control variable is then updated and the repeat 100 times.
• Operations to be specified with a single vector instruction of the
form
• Initialize I = 020 Read A(I)Read B(I)Store C(I) = A(I) + B(I)Increment I
= i + 1If I 100 goto 20ContinueC(1:100) = A(1:100) + B(1:100)
Vector Operations
• The vector instruction include the initial address of the operands, the length of the
vectors, and the operation to be performed, all in one composite instruction.
• The vector instruction format as shown in fig.
• A three-address instruction with three fields specifying the base address of the
operands and an additional field that gives the length of the data items in the vectors.
• Assume the vector operands reside in memory .
• To design the processor with a large number of registers and store all operands in
registers to the addition operation.The base address and length in the vector
instruction specify a group of CPU registers.
• Operation codeBase address source 1Base address source 2Base address
destinationVector length
Memory Interleaving
• Pipelineand vector processorsoften require simultaneous access to
memory from two or more sources.
• An instruction pipeline may require the fetching of an instruction and an
operand at the same time from two different segments.
• An arithmetic pipeline usually requires two or more operands to enter
the pipeline at the same time.
• Memory interleaving is a method to increase the speed of the high end
microprocessors and it is even applicable to the hard disks too.
Memory Interleaving
• It can be of 2 types: 2 way interleaving(using 2 complete address
buses) & 4 way interleaving(using complete 4 address buses).
• There is a controller too that generates the addresses. CPU can
access alternate sections of memory.
• While one section is busy processing upon a word at a particular
location, the other section accesses the word at the next location.
• Resembling overlapping!!!
Memory Interleaving
• Simultaneousaccess to memory from two or more source using one memory bus
system
• A memory module is a memory array together with its own address and data registers.
• Figure shows a memory unit with four modules.
• Each memory array has its own address register AR and data register DR.
• The address registers receive information from a common address bus and the data
registers communicate with a bidirectional data bus.
• The 2 bits of the address register can be used to between the 4 memory modules.
Multiple module memory organizations
• The load instruction is at address 101 and X is equal to
Memory Interleaving
• In an interleaved memory, different sets of addresses are assigned to different
memory modules.
• For example, in a 2-module memory system, the Even addresses may be in a 1-
module and the Odd addresses in the other.
• When the number of modules is a power of 2, the least significant bits of the
address select a memory module and the remaining bits design the specific
location to be accessed within the selected module.
• A modular memory useful in systems with pipeline and vector processing.
• A vector processor that uses an n-way interleaved memory can fetch n
operands from n different modules.
Array Processors
• Performs computations on large arrays of data
• The term is used to refer to 2 different types of processors.
1)Attached array processor :
– Auxiliary processor attached to a general purpose computer
– To improve the performance of the host computer in specific numerical
computation tasks
2)SIMD array processor :
–Computer with multiple processing units operating in parallel
• The both types of array processors manipulate vectors , their internal organization is different.
Attached Array Processor
• The attached array processor has an input –output interface to a common processor and
another interface with a local memory
• The local memory interconnects main memory
Attached Array Processor
• Figure shows the interconnection of an attached array processor to a host computer.
• The host computer is a general purpose computer and the attached processor is a back-
end machine driven by the host computer.
• The array processor is connected through an input-output controller to the computer and
the computer treats an external interface.
SIMD Array Processor
• Computer with multiple processing units operating in parallel
• The processing units are synchronized to perform the same operation under the control of a
common control unit, thus providing a single instruction stream, multiple data stream(SIMD)
organization.
• A general block diagram of an array processor is shown in figure.
• It contains a set of identical processing elements(PEs), each having a local memory M.
• Each processor element includes an ALU, a floating-point arithmetic unit, and working
registers.
• The master control unit controls the operations in the processor elements.
SIMD Array Processor Organization
SIMD Array Processor
• The main memory is used for storage of the program.
• The function of the master control unit is to decode the instructions and determine how the
instruction is to be executed.
• Scalar and program control instructions are directly executed within the master control unit.
• Each PE uses operands stored in its local memory.
• For example, the vector addition C = A + B.
• The master control unit first stores the ith components aiof A and B in local memory Mifor i
=1,2,3,...,n.
• It then floating-point add instruction Ci= ai+ bito all PEs, the addition to take place
simultaneously.
• The components of are stored in fixed locations in each local memory.
SIMD Array Processor
• The components of Ci are stored in fixed locations in each local memory.
• This produces the desired vector sum in one add cycle
• Masking are used to control the status of each PE during the execution of vector instructions.
• Each PE has a flag that is set when the PE is active and reset when the PE is inactive.
• Only those PEs that participate are active during the execution of the instruction.
• For example, the array processor contains a set of 64 PEs.
• If a vector length of less than 64 data items is to be processed , the control unit selects the proper
number of PEs to be active.
SIMD Array Processor
• Vectors of greater length than 64 must be divided into 64-word portions by the control unit.
• The SIMD array processor is the ILLIAC IV computer developed at the University of Illinois and
manufactured by the Burroughs Corp.
• This computer is no longer in operation.
• SIMD processors are highly specialized computers.
• They suited for numerical problems that can be expressed in vector or matrix form.

More Related Content

What's hot

Network Layer Part 4
Network Layer Part 4Network Layer Part 4
Network Layer Part 4
Tutun Juhana
 

What's hot (20)

isa architecture
isa architectureisa architecture
isa architecture
 
Dsp Datapath
Dsp DatapathDsp Datapath
Dsp Datapath
 
Chapter 7
Chapter 7Chapter 7
Chapter 7
 
Central processing unit
Central processing unitCentral processing unit
Central processing unit
 
Computer architecture
Computer architectureComputer architecture
Computer architecture
 
Micro program example
Micro program exampleMicro program example
Micro program example
 
Computer arithmetic in computer architecture
Computer arithmetic in computer architectureComputer arithmetic in computer architecture
Computer arithmetic in computer architecture
 
Computer arithmetics (computer organisation & arithmetics) ppt
Computer arithmetics (computer organisation & arithmetics) pptComputer arithmetics (computer organisation & arithmetics) ppt
Computer arithmetics (computer organisation & arithmetics) ppt
 
Vector computing
Vector computingVector computing
Vector computing
 
8085 microprocessor ramesh gaonkar
8085 microprocessor   ramesh gaonkar8085 microprocessor   ramesh gaonkar
8085 microprocessor ramesh gaonkar
 
Arithmetic and logic unit
Arithmetic and logic unitArithmetic and logic unit
Arithmetic and logic unit
 
Memory Reference Instructions
Memory Reference InstructionsMemory Reference Instructions
Memory Reference Instructions
 
Cs6303 unit2
Cs6303 unit2 Cs6303 unit2
Cs6303 unit2
 
Unit 2 Arithmetic
Unit 2 ArithmeticUnit 2 Arithmetic
Unit 2 Arithmetic
 
Arithmetic & Logic Unit
Arithmetic & Logic UnitArithmetic & Logic Unit
Arithmetic & Logic Unit
 
Microprocessor Week1: Introduction
Microprocessor Week1: IntroductionMicroprocessor Week1: Introduction
Microprocessor Week1: Introduction
 
Computer Abstractions and Technology
Computer Abstractions and TechnologyComputer Abstractions and Technology
Computer Abstractions and Technology
 
Network Layer Part 4
Network Layer Part 4Network Layer Part 4
Network Layer Part 4
 
Computer arithmetics coa project pdf version
Computer arithmetics coa project pdf versionComputer arithmetics coa project pdf version
Computer arithmetics coa project pdf version
 
Arithmetic logic shift unit
Arithmetic logic shift unitArithmetic logic shift unit
Arithmetic logic shift unit
 

Viewers also liked

Multivector and multiprocessor
Multivector and multiprocessorMultivector and multiprocessor
Multivector and multiprocessor
Kishan Panara
 
memory Interleaving and low order interleaving and high interleaving
memory Interleaving and low order interleaving and high interleavingmemory Interleaving and low order interleaving and high interleaving
memory Interleaving and low order interleaving and high interleaving
Jawwad Rafiq
 
Project pptVLSI ARCHITECTURE FOR AN IMAGE COMPRESSION SYSTEM USING VECTOR QUA...
Project pptVLSI ARCHITECTURE FOR AN IMAGE COMPRESSION SYSTEM USING VECTOR QUA...Project pptVLSI ARCHITECTURE FOR AN IMAGE COMPRESSION SYSTEM USING VECTOR QUA...
Project pptVLSI ARCHITECTURE FOR AN IMAGE COMPRESSION SYSTEM USING VECTOR QUA...
saumyatapu
 
Memory organisation
Memory organisationMemory organisation
Memory organisation
ankush_kumar
 

Viewers also liked (20)

CO Module 5
CO Module 5CO Module 5
CO Module 5
 
Cache memory
Cache memoryCache memory
Cache memory
 
Introduction Cell Processor
Introduction Cell ProcessorIntroduction Cell Processor
Introduction Cell Processor
 
Computer Organozation
Computer OrganozationComputer Organozation
Computer Organozation
 
What Is Interleaving
What Is InterleavingWhat Is Interleaving
What Is Interleaving
 
Aca2 08 new
Aca2 08 newAca2 08 new
Aca2 08 new
 
Lec3 final
Lec3 finalLec3 final
Lec3 final
 
Bit interleaved coded modulation
Bit interleaved coded modulationBit interleaved coded modulation
Bit interleaved coded modulation
 
Multivector and multiprocessor
Multivector and multiprocessorMultivector and multiprocessor
Multivector and multiprocessor
 
memory Interleaving and low order interleaving and high interleaving
memory Interleaving and low order interleaving and high interleavingmemory Interleaving and low order interleaving and high interleaving
memory Interleaving and low order interleaving and high interleaving
 
Project pptVLSI ARCHITECTURE FOR AN IMAGE COMPRESSION SYSTEM USING VECTOR QUA...
Project pptVLSI ARCHITECTURE FOR AN IMAGE COMPRESSION SYSTEM USING VECTOR QUA...Project pptVLSI ARCHITECTURE FOR AN IMAGE COMPRESSION SYSTEM USING VECTOR QUA...
Project pptVLSI ARCHITECTURE FOR AN IMAGE COMPRESSION SYSTEM USING VECTOR QUA...
 
FD.IO Vector Packet Processing
FD.IO Vector Packet ProcessingFD.IO Vector Packet Processing
FD.IO Vector Packet Processing
 
pipeline and vector processing
pipeline and vector processingpipeline and vector processing
pipeline and vector processing
 
Array Processor
Array ProcessorArray Processor
Array Processor
 
Lec18 pipeline
Lec18 pipelineLec18 pipeline
Lec18 pipeline
 
cache memory
cache memorycache memory
cache memory
 
Parallel Processors (SIMD)
Parallel Processors (SIMD) Parallel Processors (SIMD)
Parallel Processors (SIMD)
 
Memory organisation
Memory organisationMemory organisation
Memory organisation
 
Random scan displays and raster scan displays
Random scan displays and raster scan displaysRandom scan displays and raster scan displays
Random scan displays and raster scan displays
 
Pipelining and vector processing
Pipelining and vector processingPipelining and vector processing
Pipelining and vector processing
 

Similar to Coa swetappt copy

ehhhhhhhhhhhhhhhhhhhhhhhhhjjjjjllaye.pptx
ehhhhhhhhhhhhhhhhhhhhhhhhhjjjjjllaye.pptxehhhhhhhhhhhhhhhhhhhhhhhhhjjjjjllaye.pptx
ehhhhhhhhhhhhhhhhhhhhhhhhhjjjjjllaye.pptx
EliasPetros
 
Процессорын архитектур
Процессорын архитектурПроцессорын архитектур
Процессорын архитектур
Muuluu
 
4.1 Introduction 145• In this section, we first take a gander at a.pdf
4.1 Introduction 145• In this section, we first take a gander at a.pdf4.1 Introduction 145• In this section, we first take a gander at a.pdf
4.1 Introduction 145• In this section, we first take a gander at a.pdf
arpowersarps
 

Similar to Coa swetappt copy (20)

Parallel Processors (SIMD)
Parallel Processors (SIMD) Parallel Processors (SIMD)
Parallel Processors (SIMD)
 
Unit-1_Digital Computers, number systemCOA[1].pptx
Unit-1_Digital Computers, number systemCOA[1].pptxUnit-1_Digital Computers, number systemCOA[1].pptx
Unit-1_Digital Computers, number systemCOA[1].pptx
 
Array Processors & Architectural Classification Schemes_Computer Architecture...
Array Processors & Architectural Classification Schemes_Computer Architecture...Array Processors & Architectural Classification Schemes_Computer Architecture...
Array Processors & Architectural Classification Schemes_Computer Architecture...
 
Computer Organization and Design.pptx
Computer Organization and Design.pptxComputer Organization and Design.pptx
Computer Organization and Design.pptx
 
Computer Architecture | Computer Fundamental and Organization
Computer Architecture | Computer Fundamental and OrganizationComputer Architecture | Computer Fundamental and Organization
Computer Architecture | Computer Fundamental and Organization
 
ehhhhhhhhhhhhhhhhhhhhhhhhhjjjjjllaye.pptx
ehhhhhhhhhhhhhhhhhhhhhhhhhjjjjjllaye.pptxehhhhhhhhhhhhhhhhhhhhhhhhhjjjjjllaye.pptx
ehhhhhhhhhhhhhhhhhhhhhhhhhjjjjjllaye.pptx
 
Module -4_microprocessor (1).pptx
Module -4_microprocessor (1).pptxModule -4_microprocessor (1).pptx
Module -4_microprocessor (1).pptx
 
BCS 100: Introduction to Computer Science Lesson 3
BCS 100: Introduction to Computer Science Lesson 3BCS 100: Introduction to Computer Science Lesson 3
BCS 100: Introduction to Computer Science Lesson 3
 
Процессорын архитектур
Процессорын архитектурПроцессорын архитектур
Процессорын архитектур
 
Chapter 1
Chapter 1Chapter 1
Chapter 1
 
THE PROCESSOR
THE PROCESSORTHE PROCESSOR
THE PROCESSOR
 
CSA unit5.pptx
CSA unit5.pptxCSA unit5.pptx
CSA unit5.pptx
 
Unit 3 The processor
Unit 3 The processorUnit 3 The processor
Unit 3 The processor
 
Unit I.pptx
Unit I.pptxUnit I.pptx
Unit I.pptx
 
4.1 Introduction 145• In this section, we first take a gander at a.pdf
4.1 Introduction 145• In this section, we first take a gander at a.pdf4.1 Introduction 145• In this section, we first take a gander at a.pdf
4.1 Introduction 145• In this section, we first take a gander at a.pdf
 
Computer Organization : CPU, Memory and I/O organization
Computer Organization : CPU, Memory and I/O organizationComputer Organization : CPU, Memory and I/O organization
Computer Organization : CPU, Memory and I/O organization
 
Instruction Formats
Instruction FormatsInstruction Formats
Instruction Formats
 
Microprocessor
MicroprocessorMicroprocessor
Microprocessor
 
CO_Chapter2.ppt
CO_Chapter2.pptCO_Chapter2.ppt
CO_Chapter2.ppt
 
310471266 chapter-7-notes-computer-organization
310471266 chapter-7-notes-computer-organization310471266 chapter-7-notes-computer-organization
310471266 chapter-7-notes-computer-organization
 

Coa swetappt copy

  • 1.
  • 2. VECTOR PROCESSING Problems that can be efficiently formulated in terms of vectors -Long-range weather forecasting –Petroleum explorations –Seismic data analysis –Medical diagnosis –Aerodynamics and space flight simulations –Artificial intelligence and expert systems –Mapping the human genom –Image processing
  • 3. Vector Operations • Many scientific problems require arithmetic operations on large arrays of numbers. • These numbers are usually formulated as vectors and matrices of floating-point numbers. • A vector is an ordered set of a one-dimensional array of data items. • A vector V of length n is represented as a row vector by • V = [ V1 V2V3… Vn] • It may be represented as a column vector if the data items are listed in a column. • Operations on vectors must be broken down into single computations with subscripted variables.
  • 4. Vector Operations • The element Vi of vector V is written as V(I) and the index I refers to a memory address or register where the number is stored. • The difference between a conventional Scalar Processor and a Vector Processor, consider the following Fortran DO loop: • This is program for adding two vectors A and B of length 100 to produce a vector C. • The machine language by the following sequence of operations . • DO 20 I = 1, 100 • 20 C(I) = B(I) + A(I)
  • 5. Vector Operations • This is program loop that reads a pair of operands from arrays A and B and performs a floating-point addition. • The loop control variable is then updated and the repeat 100 times. • Operations to be specified with a single vector instruction of the form • Initialize I = 020 Read A(I)Read B(I)Store C(I) = A(I) + B(I)Increment I = i + 1If I 100 goto 20ContinueC(1:100) = A(1:100) + B(1:100)
  • 6. Vector Operations • The vector instruction include the initial address of the operands, the length of the vectors, and the operation to be performed, all in one composite instruction. • The vector instruction format as shown in fig. • A three-address instruction with three fields specifying the base address of the operands and an additional field that gives the length of the data items in the vectors. • Assume the vector operands reside in memory . • To design the processor with a large number of registers and store all operands in registers to the addition operation.The base address and length in the vector instruction specify a group of CPU registers. • Operation codeBase address source 1Base address source 2Base address destinationVector length
  • 7. Memory Interleaving • Pipelineand vector processorsoften require simultaneous access to memory from two or more sources. • An instruction pipeline may require the fetching of an instruction and an operand at the same time from two different segments. • An arithmetic pipeline usually requires two or more operands to enter the pipeline at the same time. • Memory interleaving is a method to increase the speed of the high end microprocessors and it is even applicable to the hard disks too.
  • 8. Memory Interleaving • It can be of 2 types: 2 way interleaving(using 2 complete address buses) & 4 way interleaving(using complete 4 address buses). • There is a controller too that generates the addresses. CPU can access alternate sections of memory. • While one section is busy processing upon a word at a particular location, the other section accesses the word at the next location. • Resembling overlapping!!!
  • 9. Memory Interleaving • Simultaneousaccess to memory from two or more source using one memory bus system • A memory module is a memory array together with its own address and data registers. • Figure shows a memory unit with four modules. • Each memory array has its own address register AR and data register DR. • The address registers receive information from a common address bus and the data registers communicate with a bidirectional data bus. • The 2 bits of the address register can be used to between the 4 memory modules.
  • 10. Multiple module memory organizations • The load instruction is at address 101 and X is equal to
  • 11. Memory Interleaving • In an interleaved memory, different sets of addresses are assigned to different memory modules. • For example, in a 2-module memory system, the Even addresses may be in a 1- module and the Odd addresses in the other. • When the number of modules is a power of 2, the least significant bits of the address select a memory module and the remaining bits design the specific location to be accessed within the selected module. • A modular memory useful in systems with pipeline and vector processing. • A vector processor that uses an n-way interleaved memory can fetch n operands from n different modules.
  • 12. Array Processors • Performs computations on large arrays of data • The term is used to refer to 2 different types of processors. 1)Attached array processor : – Auxiliary processor attached to a general purpose computer – To improve the performance of the host computer in specific numerical computation tasks 2)SIMD array processor : –Computer with multiple processing units operating in parallel • The both types of array processors manipulate vectors , their internal organization is different.
  • 13. Attached Array Processor • The attached array processor has an input –output interface to a common processor and another interface with a local memory • The local memory interconnects main memory
  • 14. Attached Array Processor • Figure shows the interconnection of an attached array processor to a host computer. • The host computer is a general purpose computer and the attached processor is a back- end machine driven by the host computer. • The array processor is connected through an input-output controller to the computer and the computer treats an external interface.
  • 15. SIMD Array Processor • Computer with multiple processing units operating in parallel • The processing units are synchronized to perform the same operation under the control of a common control unit, thus providing a single instruction stream, multiple data stream(SIMD) organization. • A general block diagram of an array processor is shown in figure. • It contains a set of identical processing elements(PEs), each having a local memory M. • Each processor element includes an ALU, a floating-point arithmetic unit, and working registers. • The master control unit controls the operations in the processor elements.
  • 16. SIMD Array Processor Organization
  • 17. SIMD Array Processor • The main memory is used for storage of the program. • The function of the master control unit is to decode the instructions and determine how the instruction is to be executed. • Scalar and program control instructions are directly executed within the master control unit. • Each PE uses operands stored in its local memory. • For example, the vector addition C = A + B. • The master control unit first stores the ith components aiof A and B in local memory Mifor i =1,2,3,...,n. • It then floating-point add instruction Ci= ai+ bito all PEs, the addition to take place simultaneously. • The components of are stored in fixed locations in each local memory.
  • 18. SIMD Array Processor • The components of Ci are stored in fixed locations in each local memory. • This produces the desired vector sum in one add cycle • Masking are used to control the status of each PE during the execution of vector instructions. • Each PE has a flag that is set when the PE is active and reset when the PE is inactive. • Only those PEs that participate are active during the execution of the instruction. • For example, the array processor contains a set of 64 PEs. • If a vector length of less than 64 data items is to be processed , the control unit selects the proper number of PEs to be active.
  • 19. SIMD Array Processor • Vectors of greater length than 64 must be divided into 64-word portions by the control unit. • The SIMD array processor is the ILLIAC IV computer developed at the University of Illinois and manufactured by the Burroughs Corp. • This computer is no longer in operation. • SIMD processors are highly specialized computers. • They suited for numerical problems that can be expressed in vector or matrix form.