1 A CAM-based keyword match processor architecture Author: Long Bu, John A. Chandy * Publisher: Microelectronics Journal 37 (2006) Presenter: Han-Chen.

Slides:



Advertisements
Similar presentations
Bus arbitration Processor and DMA controllers both need to initiate data transfers on the bus and access main memory. The device that is allowed to initiate.
Advertisements

1 ITCS 3181 Logic and Computer Systems B. Wilkinson Slides9.ppt Modification date: March 30, 2015 Processor Design.
Topics covered: CPU Architecture CSE 243: Introduction to Computer Architecture and Hardware/Software Interface.
Programmable Interval Timer
Altera FLEX 10K technology in Real Time Application.
The 8085 Microprocessor Architecture
Microprocessor and Microcontroller
The 8085 Microprocessor Architecture. Contents The 8085 and its Buses. The address and data bus ALU Flag Register Machine cycle Memory Interfacing The.
Authors: Raphael Polig, Kubilay Atasu, and Christoph Hagleitner Publisher: FPL, 2013 Presenter: Chia-Yi, Chu Date: 2013/10/30 1.
Multithreaded FPGA Acceleration of DNA Sequence Mapping Edward Fernandez, Walid Najjar, Stefano Lonardi, Jason Villarreal UC Riverside, Department of Computer.
A Memory-Efficient Reconfigurable Aho-Corasick FSM Implementation for Intrusion Detection Systems Authors: Seongwook Youn and Dennis McLeod Presenter:
Sequential Logic Design Process A sequential circuit that controls Boolean outputs and a specific time- ordered behavior is called a controller. StepDescription.
1 A Tree Based Router Search Engine Architecture With Single Port Memories Author: Baboescu, F.Baboescu, F. Tullsen, D.M. Rosu, G. Singh, S. Tullsen, D.M.Rosu,
1 A Virus Scanning Engine Using a Parallel Finite-Input Memory Machine and MPUs Author: Hiroki Nakahara, Tsutomu Sasao, Munehiro Matsuura, and Yoshifumi.
11 FPGA based High speed and low area cost pattern matching Authors: Jian Huang, Zongkai Yang, Xu Du, and Wei Liu Publisher: Proceedings of IEEE Symposium.
1 Multi-Core Architecture on FPGA for Large Dictionary String Matching Department of Computer Science and Information Engineering National Cheng Kung University,
1 Regular expression matching with input compression : a hardware design for use within network intrusion detection systems Department of Computer Science.
Chapter 4 Processor Technology and Architecture. Chapter goals Describe CPU instruction and execution cycles Explain how primitive CPU instructions are.
White and Gloster P741 An Implementation of the Discrete Fourier Transform on a Reconfigurable Processor By Michael J. White 1,2* and Clay Gloster, Jr.,
A Signature Match Processor Architecture for Network Intrusion Detection Janardhan Singaraju, Long Bu and John A. Chandy Electrical and Computer Engineering.
Processor Architecture Kieran Mathieson. Outline Memory CPU Structure Design a CPU Programming Design Issues.
1 A Linear Space Algorithm for Computing Maximal Common Subsequences Author: D.S. Hirschberg Publisher: Communications of the ACM 1975 Presenter: Han-Chen.
Chapter 6 A Primer On Digital Logic Power Point Slides PROPRIETARY MATERIAL. © 2014 The McGraw-Hill Companies, Inc. All rights reserved. No part of this.
COE 202: Digital Logic Design Combinational Circuits Part 3 Dr. Ahmad Almulhem ahmadsm AT kfupm Phone: Office: Ahmad Almulhem, KFUPM.
Analog to Digital conversion. Introduction  The process of converting an analog signal into an equivalent digital signal is known as Analog to Digital.
A RISC ARCHITECTURE EXTENDED BY AN EFFICIENT TIGHTLY COUPLED RECONFIGURABLE UNIT Nikolaos Vassiliadis N. Kavvadias, G. Theodoridis, S. Nikolaidis Section.
Chapter 8 Problems Prof. Sin-Min Lee Department of Mathematics and Computer Science.
Spring 2002EECS150 - Lec12-cl3 Page 1 EECS150 - Digital Design Lecture 12 - Combinational Logic Circuits Part 3 March 4, 2002 John Wawrzynek.
Fast Memory Addressing Scheme for Radix-4 FFT Implementation Presented by Cheng-Chien Wu, Master Student of CSIE,CCU 1 Author: Xin Xiao, Erdal Oruklu and.
FPGA Based String Matching for Network Processing Applications Janardhan Singaraju, John A. Chandy Presented by: Justin Riseborough Albert Tirtariyadi.
McKenneman, Inc. SRAM Proposal Design Team: Jay Hoffman Tory Kennedy Sholanda McCullough.
Reconfigurable Computing Using Content Addressable Memory (CAM) for Improved Performance and Resource Usage Group Members: Anderson Raid Marie Beltrao.
Radix-2 2 Based Low Power Reconfigurable FFT Processor Presented by Cheng-Chien Wu, Master Student of CSIE,CCU 1 Author: Gin-Der Wu and Yi-Ming Liu Department.
EE3A1 Computer Hardware and Digital Design
Author : Ioannis Sourdis, Vasilis Dimopoulos, Dionisios Pnevmatikatos and Stamatis Vassiliadis Publisher : ANCS’06 Presenter : Zong-Lin Sie Date : 2011/01/05.
Algorithm and Programming Considerations for Embedded Reconfigurable Computers Russell Duren, Associate Professor Engineering And Computer Science Baylor.
VLIW Digital Signal Processor Michael Chang. Alison Chen. Candace Hobson. Bill Hodges.
CPS 4150 Computer Organization Fall 2006 Ching-Song Don Wei.
1 Architecture and scalability of a high-speed traffic measurement platform with a highly flexible packet classification Author: Detlef Sas *, Simon Hauger,
8254 Timer.
A Dynamic Longest Prefix Matching Content Addressable Memory for IP Routing Author: Satendra Kumar Maurya, Lawrence T. Clark Publisher: IEEE TRANSACTIONS.
80386DX functional Block Diagram PIN Description Register set Flags Physical address space Data types.
STRING SEARCHING ENGINE FOR VIRUS SCANNING Author : Derek Pao, Xing Wang, Xiaoran Wang, Cong Cao, Yuesheng Zhu Publisher : TRANSACTIONS ON COMPUTERS, 2012.
BIST Pattern Generator inserter using Cellular Automata By Jeffrey Dwoskin Project for Testing of ULSI Circuits, Spring 2002, Rutgers University 5/15/02.
Reconfigurable Computing - Options in Circuit Design John Morris Chung-Ang University The University of Auckland ‘Iolanthe’ at 13 knots on Cockburn Sound,
Introduction to Microprocessors - chapter3 1 Chapter 3 The 8085 Microprocessor Architecture.
Computer Architecture Lecture 4 by Engineer A. Lecturer Aymen Hasan AlAwady 17/11/2013 University of Kufa - Informatics Center for Research and Rehabilitation.
Fast Lookup for Dynamic Packet Filtering in FPGA REPORTER: HSUAN-JU LI 2014/09/18 Design and Diagnostics of Electronic Circuits & Systems, 17th International.
Hardwired Control Department of Computer Engineering, M.S.P.V.L Polytechnic College, Pavoorchatram. A Presentation On.
Introduction to Intrusion Detection Systems. All incoming packets are filtered for specific characteristics or content Databases have thousands of patterns.
Reconfigurable Computing - Options in Circuit Design John Morris Chung-Ang University The University of Auckland ‘Iolanthe’ at 13 knots on Cockburn Sound,
Types of Micro-operation  Transfer data between registers  Transfer data from register to external  Transfer data from external to register  Perform.
Shift Register Counters
Author: Yun R. Qu, Shijie Zhou, and Viktor K. Prasanna Publisher:
FPGA Based String Matching For Network Processing Applications
The 8085 Microprocessor Architecture
Timing issues.
The 8085 Microprocessor Architecture
William Stallings Computer Organization and Architecture
Processor Organization and Architecture
An Introduction to Microprocessor Architecture using intel 8085 as a classic processor
عمارة الحاسب.
Regular Expression Matching in Reconfigurable Hardware
1 Gbit/s Serial Link 1 Gbit/s Data Link Using Multi Level Signalling
FPGA Tools Course Basic Constraints
Computer Architecture
The 8085 Microprocessor Architecture
Authors: A. Rasmussen, A. Kragelund, M. Berger, H. Wessing, S. Ruepp
2019/10/9 Regular Expression Matching for Reconfigurable Constraint Repetition Inspection Authors : Miad Faezipour and Mehrdad Nourani Publisher : IEEE.
Presentation transcript:

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 Outline  Introduction  Architecture of Keyword match processor  Performance

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 Introduction

5 Architecture of Keyword match processor

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 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 Architecture of Keyword match processor UCONN \0 HUSKIES Cycle rule 1 rule 2 rule 3 Match signal Input: CONE

9 Architecture of Keyword match processor UCONN \0 HUSKIES Cycle2 C rule 1 rule 2 rule 3 Match signal

10 Architecture of Keyword match processor UCONN \0 HUSKIES Cycle3 O rule 1 rule 2 rule 3 Match signal

11 Architecture of Keyword match processor UCONN \0 HUSKIES Cycle4 N rule 1 rule 2 rule 3 Match signal

12 Architecture of Keyword match processor UCONN \0 HUSKIES Cycle5 E rule 1 rule 2 rule 3 Match signal

13 Architecture of Keyword match processor UCONN \0 HUSKIES Cycle6 Match signal \ rule 1 rule 2 rule 3 Match distance=2 Unmatch

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) M(i) array PE match array Word Match array

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 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 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 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 Thanks for your listening