Title: Character Matching
1 Character Matching
- Systolic Design Character Matching
- A straightforward approach to search for a
pattern within a string of characters (string) is
simple but time-consuming. - The following algorithm shows the sequence of
operations. - The algorithm compares the characters in the
pattern against the characters in the text from
left to right. - This simple algorithm has a time complexity of
O(mn) where m and n are the lengths of the
pattern and text.
2Systolic Design Character Matching
T-index ? 0 While T-index lt (n-m1) DO Save ?
T-index P-index ? 0 While P-index lt m and
Textsave PatternP-index DO Save ? Save
1 P-index ? P-index 1 END If P-index m
then return T-index ? T-index 1 END
3Systolic Design Character Matching
- Concept of the finite state automaton can be used
to perform pattern matching operation in a time
complexity of O(n). - Knuth proposed an algorithm with the time
complexity of O(mn).
4Systolic Design Character Matching
- The proposed model is used for character matching
(pattern Matching) operation. - The model is composed of two kind of cells
- Comparator cells, and
- Accumulator cells.
5 Systolic Design Character Matching
- The comparator cells receive text and patterns
from opposite directions and generate the
Comparison results. - The accumulator cells transmit information
regarding delimiters and "don't care" signals.
In addition, it accumulates the partial match
results.
6- Systolic Design Character Matching
7 Systolic Design Character Matching
Pout ? Pin Sout ? Sin dout ? (Pin Sin)
8 Systolic Design Character Matching
lout ? lin Xout ? Xin IF lin THEN rout ? t t ?
True ELSE rout ? rin t ? t AND (Xin OR din)
9 Systolic Design Character Matching
- Detect pattern ISSI in text MISSISSIPPI in a
systolic organization composed of seven cells.
10 Systolic Design Character Matching
11Systolic Design Character Matching
12Systolic Design Character Matching
13Systolic Design Character Matching
14Systolic Design Character Matching
15Systolic Design Character Matching
16Systolic Design Character Matching
17Systolic Design Character Matching
- General Characteristics
- Hardware utilization is low, since during each
clock pulse only half of the cells are active. - Patterns have to be cycled through the array
continuously to meet all the text characters. - Possible detection of more hits in the input text.
18Systolic Design Join Operation
- Within the scope of relational databases, join is
one of the most time consuming operations.
19Systolic Organization
- Assume we have two product-compatible relations
(sets) A and B. Each relation is composed of
several tuples (records). - Further, let ? ???, ?, ?, ...?, then the ?-Join
of relation A on attribute X with relation B on
attribute Y is a relation consist of tuples
t(lta,bgt) from Cartesian product of A and B such
that tx ? ty is true.
20Systolic Design Join Operation
- Assume we have the following two relations
21Systolic Design Join Operation
22Systolic Design Join Operation
- In relational database system, join operation is
used as a measure to evaluate the performance of
the system. - This is due to the
- Complexity of the join, and
- application of join in de-normalizing the
relations.
23Systolic Design Join Operation
- Let us look at a systolic model for join
operation - A collection of basic cells replicated in a two
dimensional space. - System is highly parallel and satisfies the
constraints imposed by the VLSI technology.
24Systolic Design Join Operation
as and bs are the attributes and t is a control
signal that reflects the comparison between a and
b.
25Systolic Design Join Operation
Tout ? tin ? (ain ? bin) aout ? ain bout ? bin
26Systolic Design Join Operation
27Systolic Design Join Operation
28Systolic Design Join Operation
29Systolic Design Join Operation
30- Systolic Design Join Operation
31Systolic Design Join Operation
32Systolic Design Join Operation