Presentation is loading. Please wait.

Presentation is loading. Please wait.

Character Matching Character Matching Systolic Design — Character Matching A straightforward approach to search for a pattern within a string of characters.

Similar presentations


Presentation on theme: "Character Matching Character Matching Systolic Design — Character Matching A straightforward approach to search for a pattern within a string of characters."— Presentation transcript:

1

2 Character Matching 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(m*n) where m and n are the lengths of the pattern and text.

3 Systolic Design — Character Matching Search for a Pattern T-index  0; While T-index < (n-m+1) DO Save  T-index; P-index  0; While P-index < m and Text save = Pattern P-index DO Save  Save + 1; P-index  P-index + 1; END If P-index = m then return; T-index  T-index +1; END

4 Systolic 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(m+n).

5 Systolic 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.

6 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.

7 Systolic Design — Character Matching

8 Algorithm in C cells: P out  P in S out  S in d out  (P in = S in )

9 Systolic Design — Character Matching Algorithm in A cells: out   in X out  X in IF in THEN r out  t; t  True ELSE r out  r in ; t  t AND (X in OR d in )

10 Systolic Design — Character Matching Detect pattern ISSI in text MISSISSIPPI in a systolic organization composed of seven cells.

11 Systolic Design — Character Matching Initial configuration IPPISSISSIM TEXT ISSI PATTERN

12 Systolic Design — Character Matching M I M I M I I S M I I S

13 M I IS S S M I IS S S M I ISS S S I I SS S S I

14 ISSI S S II Re-circulation S S I S I I SSIS S I I S 11 SIS IIS

15 Systolic Design — Character Matching SISS I I SS I I SS SS I I S S S S I I 15 I I S S S S

16 Systolic Design — Character Matching I SSI SS P I SI S P 18 I S S P P I I PP I

17 Systolic Design — Character Matching I IIPP IPP

18 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.

19 Systolic Design — Join Operation Within the scope of relational databases, join is one of the most time consuming operations.

20 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( ) from Cartesian product of A and B such that t x  t y is true. Systolic Organization A  B =   a,b    a,b   A  B, and t X  t Y is true 

21 Systolic Design — Join Operation Assume we have the following two relations: S P

22 Systolic Design — Join Operation A S.City=P.City B

23 Systolic 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.

24 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. Systolic Design — Join Operation

25 A Systolic Cell a’s and b’s are the attributes and t is a control signal that reflects the comparison between a and b. Systolic Design — Join Operation

26 A Systolic Cell T out  t in  (a in  b in ) a out  a in b out  b in Systolic Design — Join Operation

27 t 41 t 14 t 13 Attributes of A relation in Attributes of B relation in Elements of the Bit Matrix Systolic Design — Join Operation

28 a 11 b 11 a 12 b 12 Systolic Design — Join Operation

29 a 11 b 11 a 12 b 12 a 21 b 21 Systolic Design — Join Operation

30 a 11 b 11 a 22 a 12 b 12 b 22 a 21 b 21 Systolic Design — Join Operation

31 b 11 a 22 a 12 b 12 b 22 a 21 b 21 b 31 a 11 a 31 a 23 a 13 a 14 b 23 b 13 b 14

32 b 11 a 32 a 22 a 12 b 12 b 22 a 21 b 21 b 31 a 11 a 31 b 32 a 13 a 14 b 13 b 14 b 23 b 24 a 23 a 24 Systolic Design — Join Operation

33


Download ppt "Character Matching Character Matching Systolic Design — Character Matching A straightforward approach to search for a pattern within a string of characters."

Similar presentations


Ads by Google