
MVTX2604
Data Sheet
26
Zarlink Semiconductor Inc.
5.0 Search Engine
5.1 Search Engine Overview
The MVTX2604 search engine is optimized for high throughput searching, with enhanced features to support:
Up to 64 K MAC addresses
Up to 255 VLAN and IP Multicast groups
3 groups of port trunking (1 for the two Gigabit ports and 2 others)
Traffic classification into 4 (or 8 for Gigabit) transmission priorities and 2 drop precedence levels
Packet filtering
Security
IP Multicast
Flooding, Broadcast, Multicast Storm Control
MAC address learning and aging
5.2 Basic Flow
Shortly after a frame enters the MVTX2604 and is written to the Frame Data Buffer (FDB), the frame engine
generates a Switch Request, which is sent to the search engine. The switch request consists of the first 64 bytes of
the frame, which contain all the necessary information for the search engine to perform its task. When the search
engine is done, it writes to the Switch Response Queue and the frame engine uses the information provided in that
queue for scheduling and forwarding.
In performing its task, the search engine extracts and compresses the useful information from the 64-byte switch
request. Among the information extracted are the source and destination MAC addresses, the transmission and
discard priorities, whether the frame is unicast or multicast and VLAN ID. Requests are sent to the external SRAM
to locate the associated entries in the external hash table.
When all the information has been collected from external SRAM, the search engine has to compare the MAC
address on the current entry with the MAC address for which it is searching. If it is not a match, the process is
repeated on the internal MCT Table. All MCT entries other than the first of each linked list are maintained internal to
the chip. If the desired MAC address is still not found, then the result is either learning (source MAC address
unknown) or flooding (destination MAC address unknown).
In addition, VLAN information is used to select the correct set of destination ports for the frame (for multicast), or to
verify that the frame’s destination port is associated with the VLAN (for unicast).
If the destination MAC address belongs to a port trunk, then the trunk number is retrieved instead of the port
number. But on which port of the trunk will the frame be transmitted This is easily computed using a hash of the
source and destination MAC addresses.
When all the information is compiled, the switch response is generated, as stated earlier. The search engine also
interacts with the CPU with regard to learning and aging.
5.3 Search, Learning, and Aging
5.3.1 MAC Search
The search block performs source MAC address and destination MAC address (or destination IP address for IP
multicast) searching. As we indicated earlier, if a match is not found, then the next entry in the linked list must be
examined and so on until a match is found or the end of the list is reached.
In tag based VLAN mode, if the frame is unicast, and the destination port is not a member of the correct VLAN, then
the frame is dropped; otherwise, the frame is forwarded. If the frame is multicast, this same table is used to indicate