DM9016
3-port switch with Processor Interface
9.2.13.3 Tag/Untag
User can define each port as Tag port or Un-tag
port by bit 7 of register 6Dh in 802.1Q-based VLAN
mode. The operation of Tag and Un-tag can explain
as below conditions:
(1). Receive untagged packet and forward to
Un-tag port.
9.2.14.2 802.1p-Based Priority
802.1p priority can be disabled by bit 2 of register
6Dh, it is enabled by default.
The DM9016 extracts 3-bit priority field from
received packet with 802.1p VLAN tag, and maps this
field against VLAN Priority Map Registers (D0h~D1h)
to determine which transmit queue is designated. The
VLAN Priority Map is programmable.
Received packet will forward to destination port
without modification.
(2). Receive tagged packet and forward to Un-tag
port.
The DM9016 will remove the tag from the packet
and recalculate CRC before sending it out.
(3). Receive untagged packet and forward to Tag
port.
The DM9016 will insert the PVID tag when an
untagged packet enters the port, and recalculate
CRC before delivering it.
(4). Receive tagged packet and forward to Tag
port.
9.2.14.3 DiffServ-Based Priority
DiffServ based priority uses the most significant
6-bit of the ToS field in standard IPv4 header, and
maps this field against ToS Priority Map Registers
(C0h~CFh) to determine which transmit queue is
designated. The ToS Priority Map is programmable
too. In addition, User can only refer to most
significant 3-bit of the ToS field optionally, see bit 7 of
register 53h.
Received packet will forward to destination port
without modification.
9.2.15 Address Table Accessing
Type of Address Table
There are three types of address table in the DM9016.
The description is represented below:
(1). Unicast Address Table
This table is used for destination MAC address
lookup and source MAC address learning. The table
can have up to 1024 entries. If the table is full, the
latest one will kick out the eldest one. The
programming method can refer to next section.
9.2.14 Priority Support
The DM9016 supports Quality of Service (QoS)
mechanism for multimedia communication such as
VoIP and video conferencing.
The DM9016 provides three priority classifications:
Port-based, 802.1p-based and DiffServ-based priority.
See next section for more detail. The DM9016 offers
four level queues for transmit on per-port based.
The DM9016 provides two packet scheduling
algorithms: Weighted Round Robin Queuing (WRR)
and Strict Priority Queuing (SPQ). Weighted Round
Robin Queuing (WRR) based on their priority and
queue weight. Queues with larger weights get more
service than smaller. This mechanism can get highly
efficient bandwidth and smooth the traffic. Strict
Priority Queuing (SPQ) based on priority only. The
Packet on the highest priority queue is transmitted
first. The next highest-priority queue is work until last
queue empties, and so on. This feature can be set in
bit 5 of register 6Dh.
(2). Multicast Address Table
This table stores multicast addresses up to 256
entries and can be maintained by host CPU for
custom filtering and forwarding multicast packets. If
the table is full, the latest one will kick out the eldest
one. All of entries in multicast address table are static
one. In addition to host CPU, multicast address table
can be manipulated by internal switch engine, if
hardware-based IGMP Snooping function is enabled.
(3). IGMP Membership Table
This table is used to establish IPv4 multicast
forwarding
rule
under
IGMP
protocol
if
hardware-based IGMP Snooping function is enabled.
It is automatic maintained by internal engine
according to snooping IGMP control packets, and can
only support to read out by the host CPU. The
maximum of entries of table is 16. If the table is full,
never join anymore.
9.2.14.1 Port-Based Priority
Port based priority is the simplest scheme and as
default. Each port has a 2-bit priority value as index
for splitting ingress packets to the corresponding
transmit queue. This value can be set in bit 0 and 1 of
register 6Dh.
66
Preliminary datasheet
DM9016-13-DS-P01
March 26, 2009