Download presentation
Presentation is loading. Please wait.
1
1 A CAM-based keyword match processor architecture Author: Long Bu, John A. Chandy * Publisher: Microelectronics Journal 37 (2006) Presenter: Han-Chen Chen Date:2009/11/18
2
2 Outline Introduction Architecture of Keyword match processor Performance
3
3 Introduction Pattern match : 1.Software algorithms : slow 2.FPGA Base : must be reconfigured when change keyword sets 3.CAM Base : reliance on fixed size keys. Presents a cellular automata based design that is more space efficient and can easily handle arbitrarily sized keywords.The architecture is flexible enough to allow for ‘ approximate word ’ matches as well.
4
4 Introduction
5
5 Architecture of Keyword match processor
6
6 CAM and PE array Motomura: 4 match signals form the CAM array in a 5*3 PE array, a n-colume CAM array requires 5n/4*3 PE array =>Waste space
7
7 Architecture of Keyword match processor 1.if M t (i) = 1 and PE t (i, j) = 1 then PE t+1 (i+1, j) = 1 PE t+1 (i, j+1) = 1 2.if M t (i) ≠ 1 and PE t (i, j) = 1 then PE t+1 (i+1, j+1)=1 PE t+1 (i, j+1)=1 3.for (1 ≥ d ≤ D-j ) PE t (i+d, j+d)=1 Overall: PE t+1 (i, j)= PE t (i, j-1) + PE t (i-1, j) ∙M t (i-1) + PE t (i-1, j-1) ∙M t (i-1) + PE t+1 (i-1, j-1)
8
8 Architecture of Keyword match processor UCONN \0 HUSKIES 00000000000000 Cycle1 0 1 2 3 4 5 6 7 8 9 10 11 12 13 rule 1 rule 2 rule 3 Match signal Input: CONE
9
9 Architecture of Keyword match processor UCONN \0 HUSKIES 01000000000000 Cycle2 C 0 1 2 3 4 5 6 7 8 9 10 11 12 13 rule 1 rule 2 rule 3 Match signal
10
10 Architecture of Keyword match processor UCONN \0 HUSKIES 00100000000000 Cycle3 O 0 1 2 3 4 5 6 7 8 9 10 11 12 13 rule 1 rule 2 rule 3 Match signal
11
11 Architecture of Keyword match processor UCONN \0 HUSKIES 00011000000000 Cycle4 N 0 1 2 3 4 5 6 7 8 9 10 11 12 13 rule 1 rule 2 rule 3 Match signal
12
12 Architecture of Keyword match processor UCONN \0 HUSKIES 00000000000100 Cycle5 E 0 1 2 3 4 5 6 7 8 9 10 11 12 13 rule 1 rule 2 rule 3 Match signal
13
13 Architecture of Keyword match processor UCONN \0 HUSKIES 00000100000001 Cycle6 Match signal \0 0 1 2 3 4 5 6 7 8 9 10 11 12 13 rule 1 rule 2 rule 3 Match distance=2 Unmatch
14
14 Architecture of Keyword match processor Distance decoder: WM(i) = END∙M(i)∙(PE(i, 0)+PE(i, 1)+ … +PE(i, D)) Match position finder: Find the previous word end Output Match Position array (size n) 00000100000001 00001100000000 00000100000000 M(i) array PE match array Word Match array
15
15 Architecture of Keyword match processor Matched address output (MAO) logic Binary tree priority encoder structure To generate the matched address available All need : p+q+2 cycles p: length of input stream,q match times, 2 initial & process distance flags
16
16 Architecture of Keyword match processor Keyword match processor with no delimiters: add E(i) array 1:last character 0:otherwise Subsequence keyword match: 1.if M t (i) = 1 and PE t (i, j) = 1 PE t+1 (i, j+1) = 1 if(E(i) ≠ 1 ) PE t+1 (i+1, j) = 1 2.if M t (i) ≠ 1 and PE t (i, j) = 1 PE t+1 (i, j+1)=1 if(E(i) ≠ 1 ) PE t+1 (i+1, j+1)=1 3.for (1 ≥ d ≤ D-j ) if(E(i+d-1) ≠ 1 ) PEt (i+d, j+d)=1 4.PEt (0,0)=1 if(E(i) = 1 ) PEt (i+1, 0)=1
17
17 Performance 0.5μm 3-metal layer process: t CLK >t DD +t DD2MPF +t MPF =>t CLK >7.66 ns. leads to a maximum clock frequency of 130.5 MHz.Taking into account the setup times and propagation times of the registers, we have been able to comfortably run the circuit at 100 MHz. equal to 800Mb/s. 0.1μm 3-metal layer process: 500MHZ, 4Gb/s
18
18 Thanks for your listening
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.