Claims
- 1. A parser accelerator including
a document memory, a character pallette containing addresses corresponding to characters in said document, a state table containing a plurality of entries corresponding to a said character, a next state pallette including a state address or offset, and a token buffer, wherein
said entries in said state table include at least one of an address into said next state pallette and a token.
- 2. The parser accelerator as recited in claim 1 wherein said character pallette, said state table and said next state pallette form a pipeline.
- 3. The parser accelerator as recited in claim 2, wherein each of said character pallette, said state table and said next state pallette each contain a respective portion of state table information in compressed form.
- 4. The parser accelerator as recited in claim 1, wherein the next state palette contains the next state address portion of the address into entries in said state table and a token value to be stored.
- 5. The parser accelerator as recited in claim 1, further including
means for detecting a character in a string which does not result in a change of state.
- 6. The parser accelerator as recited in claim 5, further including
means for immediate processing of the next character without a further memory operation for state table access.
- 7. The parser accelerator as recited in claim 2, wherein said pipeline is implemented in hardware.
- 8. The parser accelerator of claim 2, wherein said pipeline forms a loop including means for combining a next state address with a state table index from said character pallette.
- 9. A method of parsing an electronic file for identifying strings of interest, said method including steps of
storing respective portions of state table information in a character pallette, a state table and a next state pallette forming a looped pipeline to detect portions of said 'string of interest, obtaining token information from said state table, and storing said token information in parallel with said detecting of portions of said string of interest.
- 10. A method as recited in claim 9, including the further step of
detecting sequences of strings of interest, and issuing a special token responsive to said step of detecting sequences for controlling processing.
- 11. A method as recited in claim 10, wherein a said sequence of strings of interest includes a nested string.
- 12. A method as recited in claim 10, wherein a said sequence of strings of interest correspond to words or phrases of text in a document.
- 13. A method as recited in claim 10, wherein said further processing performs blocking of a message.
- 14. A method as recited in claim 10, wherein said further processing performs content based routing.
CROSS-REFERENCE TO RELATED APPLICATIONS
[0001] This application claims benefit of priority of U.S. Provisional Patent Application S. No. 60/421,775, filed Oct. 29, 2002, the entire contents of which are hereby fully incorporated by reference. Further, this application is related to U.S. Patent Applications 10/______,______ and 10/______,______ (Docket numbers FS-00767 and FS-00768, corresponding to U.S. Provisional Patent applications 60/421,773 and 60/421,774, respectively) which are assigned to the assignee of this invention and also fully incorporated by reference herein.
Provisional Applications (1)
|
Number |
Date |
Country |
|
60421775 |
Oct 2002 |
US |