MU9C8338 10/100Mb Ethernet Filter Interface
Functional Description
LANCAM Sequencer
Aging and Purging
The sequencer is a state machine that generates the control
signals required for CAM read and write cycles, and
multiplexes appropriate data and operational codes to
LANCAM data lines. The sequencer operations are:
Time stamps are added automatically to the LANCAM
entries by the MU9C8338. Two counters are provided to
store the current and purge time stamps. The Current Time
Stamp is the 8-bit value that automatically is added or
updated when a SA processing function is completed. The
Purge Time stamp is the 8-bit value that is compared with
the 8-bit time stamps stored with the LANCAM entries
during purges. The initial value of the counters are
STPURG = 01H and STCURR = 00H. The counters may
be incremented individually through the CPU commands.
Either the CPU or the external INCR pin can increment
both counters simultaneously. Whenever STPURG is
incremented, a purge operation is initiated. The counters
roll-over so the times should be thought of as slots to be
used and reused in a round-robin fashion.
•
•
•
•
•
•
•
Execute LANCAM cycles for CPU port
DA processing
SA processing
Purging of aged entries
Add Permanent Entries to LANCAM database
Delete Entries from LANCAM database
Read Entries from the LANCAM database.
FIFO and Result Port
When the DA sequence is executed, the result is stored in
a FIFO for later collection by either the CPU over the
Processor Bus from the Result register, or by external
hardware attached to the Result port.
The existence of two counters (time stamps) allows the
data-aging rate to be varied according to network traffic
density. When the difference between the counters is large
(default), the address data is purged less frequently;
shrinking the counter difference causes the data to age
sooner. Incoming SAs are time stamped or updated with
the current value of STCURR. Older entries time stamped
with the same value as STPURG are purged upon the
increment of STPURG. The permanent address database
built using the Add routine is not affected by time stamps.
Initialization
At power-up or after a hardware reset, the host processor
should download the LANCAM configuration and register
contents to enable the LANCAM to operate as required.
The LANCAM initialization and configuration that is
downloaded by the CPU should do the following: The
individual Page Address registers of each LANCAM in
the LANCAM chain should be set with appropriate values.
The Foreground Register set should be set to allow normal
DA and SA filtering. This involves setting the Control,
Segment Control, and Mask registers to suit. The
Background Register set should be set to allow the
background management tasks to be preformed. This
involves setting the Control, Segment Control, and Mask
registers to suit. The LANCAM should be configured to
store 48-bit MAC addresses in segments 3–1 and the
associated data in segment 0. The allocation of bits in the
16-bit associated data segment is specified in the
description of the SCDW0 Association Data register.
The data age gap is effectively the length of time an entry
will exist in the LANCAM database if it is not updated.
This gap is the difference between the STCURR and
STPURG counter. When network traffic is low, STCURR
may be increased in order to increase the length of time an
entry will exist. When network traffic is high, STPURG
may be increased in order to decrease the length of time an
entry will exist. When STPURG is incremented older
entries are also purged from the database if their time
stamp matches STPURG.
STCURR and STPURG may be incremented
simultaneously to keep the data age gap constant and to
purge the older entries from the database.
Permanent Station Addresses
To maintain "current" time, STCURR is advanced in any
one of the three ways:
Using the Add Entry routine, the nonvolatile station list
can be added to the LANCAM by the host processor. The
Associated Data bit 15 is set to 1, to indicate a permanent
entry. Permanent entries are removed only with the Delete
Entry routine.
1. The CPU issues an increment STCURR command.
Only the STCURR counter is increased.
2. The CPU issues an increment STCURR and STPURG
command. Both counters are increased simultaneously.
Management
The Delete Entry and Read Entry routines are available for
database maintenance and housekeeping. Although
permanent addresses cannot be purged, they can be deleted
using the management Delete Entry routine.
3. The INCR pin is asserted. Both counters are increased
simultaneously.
To maintain "purge" time and to purge aged CAM entries,
STPURG is advanced in any one of the following three
ways:
10
Rev. 1a