A communication device which includes a hardware trie search facility. At
least part of a memory is divided into memory blocks, each of said blocks
consisting of a multiplicity of locations, at least some of said locations
each providing when accessed a pointer to another block and an indication
of the size of the block. A shift register holds an address key, and a
trie block is accessed using an address composed of a number of bits
related to said indication of the size of the block. The key is shifted by
said number of bits prior to a subsequent stage of the search. Part of the
memory comprises an associated data table which includes entries of data
enabling a packet to be forwarded and at least some locations in said
blocks provide when accessed a pointer to an entry in the associated data
table.
Un dispositivo de la comunicación que incluye una facilidad de la búsqueda del trie del hardware. Por lo menos la parte de una memoria se divide en los bloques de la memoria, cada uno de los bloques dichos que consisten en una multiplicidad de localizaciones, por lo menos algunas de las localizaciones dichas cada uno que proporciona cuando está tenida acceso un indicador a otro bloque y a una indicación del tamaño del bloque. Un registro de cambio lleva a cabo una llave de la dirección, y un bloque del trie está alcanzado usando una dirección integrada por un número de pedacitos relacionados con la indicación dicha del tamaño del bloque. La llave es cambiada de puesto por el número dicho de pedacitos antes de una etapa subsecuente de la búsqueda. La parte de la memoria abarca una tabla asociada de los datos que incluya entradas de datos permitiendo a un paquete ser remitido y por lo menos algunas localizaciones en los bloques dichos proporcionan cuando están tenidas acceso un indicador a una entrada en la tabla asociada de los datos.