Hardware parser accelerator
First Claim
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.
1 Assignment
0 Petitions
Accused Products
Abstract
Dedicated hardware is employed to perform parsing of documents such as XML™ documents in much reduced time while removing a substantial processing burden from the host CPU. The conventional use of a state table is divided into a character palette, a state table in abbreviated form, and a next state palette. The palettes may be implemented in dedicated high speed memory and a cache arrangement may be used to accelerate accesses to the abbreviated state table. Processing is performed in parallel pipelines which may be partially concurrent. dedicated registers may be updated in parallel as well and strings of special characters of arbitrary length accommodated by a character palette skip feature under control of a flag bit to further accelerate parsing of a document.
232 Citations
14 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.
-
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.
Specification