Clock synchronization, Multicast address filtering example 2 notes, Writing to other registers – Digi NS9215 User Manual

Page 276

Advertising
background image

E T H E R N E T C O M M U N I C A T I O N M O D U L E

Clock synchronization

276

Hardware Reference NS9215

Multicast address
filtering example
2

To accept multicast packets with destination addresses in the range of
0x01_00_5E_00_00_00 to 0x01_00_5E_00_00_0f using entry 4, the registers are set as
shown:

Notes

If any of the address filter entries are enabled, the SAL must be set up to
accept all multicast packets by setting the PRM bit in the Station Address Filter
register.

Runt packets that are less than 6 bytes, and therefore do not have a valid
destination address, are automatically discarded by the multicast address
filtering logic.

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

C l o c k s y n c h r o n i z a t i o n

The multicast filtering logic resides in the RX CLK domain, but all of the registers
are controlled in the AHB clock domain. To provide traditional dual-rank clock
synchronization flops for each bit of the five Multicast Address Filter registers
consumes a large amount of gates. Therefore, the logic is designed such that only
the MFILTEN register bits are synchronized and when these bits are cleared, changes
in the other register values are not seen at the input of any internal flops in the RX
CLK domain.

Writing to other
registers

Use these steps to dynamically write to any of the other Multicast Address Filter
registers:

1

Clear the enable bit in the MFILTEN register for the address filter you want to
change.

2

Update the address filter registers for the disable filter.

3

Set the enable bit for the address filter that was just changed.

If the address filters are changed only when the

RX_WR

logic is reset or not

processing frames, as recommended, the address filter registers can be updated
without using this procedure.

Register

Value

Function

MFILTEN

0x10

Enable entry 4

MFILTL4

0x5E_00_00_00

Lower 32 bits of multicast address

MFILTH4

0x01_00

Upper 16 bits of multicast address

MCMSKL4

0xFFFF_FFF0

Include only bits [31:04] of the lower 32 bits of the
multicast address in the comparison.

MCMSKH4

0xFFFF

Include all of the upper 16 bits of the multicast address
in the comparison

Advertising