Briefly explain array processing in detail, Computer Engineering

Assignment Help:

Array Processing

We have seen that for executing vector operations the pipelining conception has been used. There is other method for vector operations. If we have array of n processing elements (PEs) It implies that several ALUs for storing several operands of vector then an n instruction i.e. vector addition is broadcast to all PEs , such that they sum all operands of vector at the same instance which means all PEs will perform computation in parallel. All PEs are synchronised under one control unit. This organisation of synchronous array of PEs for vector operations is termed as Array Processor. An array processor can handle one instruction and numerous data streams as we have seen in the case of SIMD organisation. So array processors are called SIMD array computers too. 

The organisation of an array processor is displayed in Figure below. The subsequent elements are organised in an array processor:

672_Array Processing.png

Figure: Organisation of SIMD Array Processor

Control Unit (CU): All PEs are under control of singl0065 control unit. CU manages the inter communication between the PEs. There is a local memory of control unit which is known as CY memory. The user programs are loaded in the CU memory. The vector instructions in program are decoded by CU and transmit to array of PEs. Instruction decoding and fetch is done by CU only. 

 

Processing elements (PEs): Every processing element comprises of ALU, its registers and a local memory for storage of distributed data. This PEs has been interconnected through an interconnection network. All PEs receive instructions from the CU and several element operands are fetched from their local memory. So all PEs execute the similar function synchronously in a lock-step fashion under the control of CU.   

 

It might be probable that all PEs require not participating in the execution of a vector instruction. So it is needed to adopt a masking technique to control the status of every PE. A masking vector is used to manage the status of all PEs such that only enabled PEs are permitted to take part in execution and others are disabled.

 

Interconnection Network (IN): IN executes data exchange among PEs and data routing and manipulation functions. This IN is under control of Control Unit.

 

Host Computer: An array processor can be connected to a host computer via the CU. The objective of the host computer is to broadcast a series of vector instructions from CU to the PEs. So host computer is a general-purpose machine which acts as a manager of entire system.

Array processors are "Special purpose computers" that have been used for the following:

  • real-time scene analysis
  • matrix algebra
  • matrix eigen value calculations
  • various scientific applications

 

SIMD array processor on large scale has been developed by NASA for earth resources satellite image processing. This machine has been named "Massively parallel processor" (MPP) since it comprises 16,384 processors which work concurrently. MPP provides real-time time varying scene analysis. However array processors aren't commercially popular as well as aren't commonly used. The reasons are that array processors are complicated to program in comparison to pipelining and there is a problem in vectorization.


Related Discussions:- Briefly explain array processing in detail

What is functions indention, Use tabs to bring some structure into your fun...

Use tabs to bring some structure into your function body if(nPos > 1) then nRetrun = True else nRetrun = False end if

Difference b/w non-relocatable and relocatable programs, Differentiate bet...

Differentiate between non-relocatable and relocatable programs. A non-relocatable program is one which cannot be executed in any memory area other than the area starting at i

Differences between a uri, Question: (a) Describe the differences betwe...

Question: (a) Describe the differences between a URI, a URN and a URL. (b) What are the five basic syntax rules for a well-formed XML document? (c) Provide four uses of

Explain the matlab language, This is a high-level matrix/array language wit...

This is a high-level matrix/array language with control flow statements, functions, data structures, input/output, and object-oriented programming features. It permits both "progra

Array processing, Array Processing We have seen that for performing vec...

Array Processing We have seen that for performing vector operations, the pipelining concept has been taken. There is another method for vector operations. If we have an array o

Fact finding techniques on banking system, what are the questionnaries and ...

what are the questionnaries and observation of work site for banking system?

What are the disadvantages of a smart card, What are the disadvantages of a...

What are the disadvantages of a Smart Card? Disadvantages of Smart Cards are as follows: a. The value of money can be depleted and recharged. b. Customers should keep

Differentiate between exception and validation testing, Differentiate betwe...

Differentiate between exception and validation testing. - Validation testing is done to test the software in conformance to the needs specified. It aims to demonstrate that the

Works flowing related technologies influence e-business, How the works do f...

How the works do flowing related technologies influence e-business? Work Flow related Technologies influence e-business: Microsoft CRM automates internal business process

Address - operand data types, Q. Address - operand data types? A...

Q. Address - operand data types? Addresses : Operands residing in memory are specified by their memory address while operands residing in registers are specified by a re

Write Your Message!

Captcha
Free Assignment Quote

Assured A++ Grade

Get guaranteed satisfaction & time on delivery in every assignment order you paid with us! We ensure premium quality solution document along with free turntin report!

All rights reserved! Copyrights ©2019-2020 ExpertsMind IT Educational Pvt Ltd