You are on page 1of 7

ECE428  

(press Ctrl + click to submit)

 EFFICIENT DESIGN OF SYSTOLIC ARCHITECTURE USING


EVOLUTIONARY COMPUTATION
Hamsa S Renangi Jaya Saradhi Prasanth B
Abstract: Systolic clusters are equipment structures worked for quick and productive activity of standard
calculations that play out similar undertaking with various information at various time moments. Systolic
exhibits supplant a pipeline structure with a variety of preparing components that can be modified to play out a
typical activity. Consistency, reconfigurability and adaptability are a portion of the elements of systolic plan.
Systolic structures offer the capability to maintain the high-throughput limit necessity. Multi-dimensional
picture preparing calculations, video real time, nonlinear advancement issues and choice based calculations
are a couple of numerous calculations that are computationally requesting and can be benefited by carrying out
systolic clusters. To fulfill an exceptionally held examination boundary of computational proficiency, there
exists a bottleneck of memory order. It is certain that equipment and programming need to go connected at the
hip to eliminate the bottleneck and accomplish better execution. Any customary calculation, for example,
network duplication can be executed in systolic design through planning equipment calculations to a space time
change utilizing a reliance diagram. Systolic plan technique maps a N-dimensional reliance diagram to a
lower-dimensional systolic design utilizing a change. Planning is a course of allocating each point in cycle
space a booked handling component for the activity at discrete time. Planning should be possible heuristically
with significant expense in precision and configuration time. Developmental calculations go about as an
elective answer for proficient quest for planning arrangements. The developmental calculations have a place
with non-customary methods which emulate the natural conduct of organic entities to get the arrangement.
They copy the idea of species advancement, gathering of subterranean insects, multitude of birds, school of
fishes, gatherings of frogs, and so forth The choice of picking a developmental calculation for the planning
system depends on its quick learning capacities and less calculation time contrasted with customary arbitrary,
thorough pursuit methodology.

INTRODUCTION 

The main goal of developing new computer architectures and optimal use of current modern systems
is to speed up large and more complicated applications. In the late 1980s, the continual desire for
higher calculating power led to the establishment of highly scalable parallel multiprocessing systems.
Parallel computing is a kind of calculation done simultaneously by numerous calculations that
normally divide up massive problems into smaller ones and then solve these simultaneously ("in
parallel") Computer speed is the best method to improve computer performance. Simultaneous
designs using numerous processors for a computer activity. When multiple processors work together,
the appropriate architecture is extremely important to ensure the maximum economic performance.
Systolic arrays possess optimal computer-intensive capabilities with inherent parallelity because they
are based on recurrent, regular, modular, rhythmic, concurrent and intensive computer operations. An
indispensable tool is needed to map all DSP algorithms or high-level hardware design computing,
which increases hardware efficiency. Systolic Architecture is a general way of turning computations
of high levels into hardware.
2. SYSTOLIC ARRAY
A systolic array is an array of processors where the data flows in different directions synchronously
throughout the neighbourhood array. At each step, each processor takes one or more data from a
neighbour and leads to the opposite direction in the next step. H. T. The first article published by
Kung and Charles Leiserson on systolic arrays in 1978. Systolic Array is an especially useful way for
connecting small connections to parallel PCs. A separate transformer is each unit. Data is calculated
and saved separately by cells (processors).

3. EVOLUTIONARY COMPUTATION
Evolutionary calculations use evolutionary computer models as key components to build and
implement computerised solutions. A range of computing models have been developed and examined
that we are going to call evolutionary algorithms. They share a common conceptual basis for
modelling the development of each structure through processes of selection and reproduction. These
methods depend on each structure's perceived performance (fitness) as determined by its environment.
In particular, evolutionary algorithms keep a population of structures evolving through selection
criteria. For instance, recovery and mutation. Every person in the population measures fitness in the
environment. The choice focuses on fitness professionals and uses the available knowledge.
Recombination and mutation disrupt these individuals with general heuristics of exploration.
Although these algorithms are sufficiently complex from a biologist's perspective to offer powerful,
adaptive search technologies.
Fig. 3 General Scheme of Evolutionary Computation.

Fig. 3 shows a typical development algorithm (EA). Initialized and then developed a population of
different systems through repeated applications for assessment, selection, recombination and mutation
from generation to generation. The population sizes N are usually consistent with the evolutionary
algorithm, but this assumption is not a first step; (besides convenience).
3.1 Proposed Algorithm
These are the main steps of the algorithm:
1. This question is defined as identifying the reliable vector n dimension x, which is linked to the
extremity of the functional F(x): R n -> R. R.
2. An initial parent vectors population, xi, I = 1. . P is randomly selected in every dimension from a
range feasible.
3. The x'i, I = 1, ., P descent vector is made of the parent xi by adding to each component of xi a
gussian random variable that has zero mean of randomness and preset default deviations.
4. The selection determines which vector to maintain by comparing errors F(xi) and F(x)(i), i= 1. P.
The less error-induced P vectors will become the next generation's new parents.
5. The generation of new tests and the selection of those with a minimum of error continues until a
solution is reached or the computation available is complete.
4. SYSTOLIC ARCHITECTURE DESIGN
Systolic array architects are developed using linear graph mapping techniques (DG). The DG is a
display in the room that does not use a time instance (t=0). It is said that a DG in any DG node will be
regular in the same direction when a border is at any DG node[4].
The essential vectors in the systolic array are:
1. Vector screening 1. (also called as iteration vector)
1 d = 1 (1)
Where d is the vector for the projection.The same processor is executed with both nodes which are
displaced with 'd' or multiples of 'd.'
2.Processor space vector:
PT= (p1, p2), Any IT index node = I j) will run on a space time display by:
(p1, p2) j I PTI (2)
3.Scheduling Vector ST= (s1, s2)
Any index node I would be run: I STI = (s1, s2) j j (3)
4. Hardware Utilization Efficiency
HUE = 1 /  ST d (4)
The reason for this is that two tasks carried out by the same processor are separated into one time unit
by another. A large number of systolic architectures may be developed by selecting various
screenings, processors and planning vectors for a particular issue. These vectors have to meet the
requirements for feasibility.
The feasibility constraints are
1. 1. When points A and B differ from the projection vector, i.e. (IA-IB) is equal to d, then the
same processor must be executed. PT (IA-IB) =0, PT d=0, and IA=PT PT = 0. (5)
2. If A and B are mapped to the same processor, they are not simultaneously executed.
e.g. STIA — kindergarten — ST (IA–IB) (6)

When the two above limitations are met, edge mapping is performed.

5. Edge mapping
If the E end is shown in a space display or in DG, the edge PT e is inserted into a systolic ST
and delete array. When edge mapping is complete, we develop low-level implementation of the given
design. Figure 4[5] shows the flow chart of the approach proposed. The provided technique is applied
in two designs and the Space Time Filter Representation is shown in Fig.5. The low-level system
array architecture can be viewed in Fig.6. Design 1 is for inputs, moving results and weights.
Vector for the systolic arrays was assumed as a vector d = (1,0), a vector processor PT = (0 1), a
vector d = ST scheduler (1 0) And the FIR filter space representation is shown in Fig. 5.

Fig. 5 Space-time FIR filter representation


The low-level FIR filter architecture is shown in Fig.6. Fig. 5 was eventually shown to show the space
representation for the considered FIR filter. Coordinates for the FIR filter are obtained from the
fundamental vectors on the systolic array.

Fig. 6. Sistolic design array low architecture I

Design 2 includes fan inputs, moving inputs and weight stays. Projection vector, vector and planning
vector for design 2, supposed to be projection vector d(1,0), PT processing vector = (0 1) and ST
vector planning = (1 1). The representation of the above-mentioned design in space time shows Fig. 7.
Programming vector selection: The systolic array is designed for any specified projector, space vector
processor or programming vector with linear mapping technology. We can select the viable planning
vector with planning inequalities. Inadequate pT d=0 And sT d =0. Based on the vector programming
selected. And therefore you can get the systolic array.

Fig. 7 Specification of design II Space-Time

Fig.8 presents the architecture of the low level for the aforesaid design II. The FIR filter co-ordinates
were computed from the basic vectors in the systolic array and lastly from Fig.7 that represents the
space of the design I was given with.

Fig. 8 Sisteolic array low-level design-II architecture .

6. EXPERIMENTAL RESULTS
The design is performed in the Matlab Lab toolbox when a vector projection, processor vector and
scheduling vector are known for their design I and II. The proposed technique is created using matlab
code. Fig.9 shows the resulting windows. This figure illustrates the design sequence I and the design
results window of the Edge Map shown in Figure 9. If the projector, vector processor or programming
vector has no preliminary knowledge then the methodology for these vectors can be used in
conjunction with DG. Time vector choice that uses the iniquities in planning. As previously
mentioned, the vector coordination was taken into account.
Fig. 9 Design results edge mapping window I

Fig.9 shows the result window for Edge mapping of design I. The Output Window for sT=[1 1] and
d=[1 design II for the Processor Vector will appear in Fig.10. In this Fig.

Fig. 10. The Processor Vector Output Window.

Propagation: multiplication of matrix vectors; multiplication of matrix matrixes; triangular matrix


matrix (linear system solution, reversal of matrix); transitive closure graph algorithms, minimum
span of the trees and connected components.
CONCLUSIONS AND FUTURE SCOPE

The CAD tool developed will help us develop this systolic array based on different tactics. Design I In
presentation of the screening vector, vector and planning vector. You can find the mapping of nodes
and edge maps here. If design 1 does not show the vectors listed in design II. Here with EP we can
find different design patterns. You can select the design where in your application. In this study we
designed SA to multiply the 3-tap FIR and Matrix. We must select the systolic array once it is built,
Fold and redesign where: Where? Remediation refers to Remediation in order to increase
performance, range and/or power, in order to preserve their functional behaviour, as the way in which
structural locations are moved or logged into the digitised system.
REFERENCES

1. Mahendra Vucha, MANIT, International Computer Application Journal (0975 26 – No.3, July 2011)
"Design and FPGA Implementation of Systolic Array Architecture for Matry Multiplication"
2. Jason HandUber, UCF Presentation of Systolic Arrays, Feb 12, 2003.
3. Richard Hughey, Programming Systolic Arrays, Proc. Int. Conf. Application-Specific Array
Processors, IEEE Computer Society, Aug. 4-7, 1992.
4. Lan-DaVan, “Systolic Architecture Design”, Ph.D. Dissertations of the National University of
ChiaoTung, Taiwan, R. O. C., fall, 2010).
5. Patrice Quinton and Yves Robert, 'Systolic Algorithms & Architectures,' Prentice Hall International,
1991.
6. “The New Turing Omnibus” by A.K. Dewdney, New York.
7. Kalle Tammemäe, system on chip architecture, Dept. of CE, Tallinn Technical University 2000/02.
8. Sun-Yuan-Kung, on system/wave front arrays supercomputing, IEEE Senior Member
9. Systolic Architecture Design by Lan-DaVan, (Ph. D. Computer Science Department, University of
ChiaoTung, Taiwan, R.O.C., Fall, 2010).

You might also like