59 cam block diagram, Figure 59 – Intel NETWORK PROCESSOR IXP2800 User Manual

Page 177

Advertising
background image

Hardware Reference Manual

177

Intel

®

IXP2800 Network Processor

Microengines

Note: The State bits are data associated with the entry. State bits are only used by software. There is no

implication of ownership of the entry by any Context. The State bits hardware function is:

the value is set by software (when the entry is loaded or changed in an already-loaded entry).

its value is read out on a lookup that hits, and used as part of the status written into the
destination register.

its value can be read out separately (normally only used for diagnostic or debug).

The LRU (Least Recently Used) Logic maintains a time-ordered list of CAM entry usage. When an

entry is loaded, or matches on a lookup, it is marked as MRU (Most Recently Used). Note that a
lookup that misses does not modify the LRU list. The CAM is loaded by instruction:

CAM_Write[entry_reg, source_reg, state_value]

.

The value in the register specified by source_reg is put into the Tag field of the entry specified by

entry_reg. The value for the State bits of the entry is specified in the instruction as state_value.

The value in the State bits for an entry can be written, without modifying the Tag, by instruction:

CAM_Write_State[entry_reg, state_value]

.

Note:

CAM_Write_State

does not modify the LRU list.

Figure 59. CAM Block Diagram

A9354-01

Status

and

LRU

Logic

Tag

Lookup Value

(from A port)

State

Match

Match

Match

Tag

State

Tag

State

Tag

State

Match

Lookup Status

(to Dest Req)

State

Status

Entry Number

0000

Miss 0

LRU Entry

State

Hit 1

Hit Entry

Advertising