BCM53154 Broadcom
BCM53154 Broadcom
BCM53154/BCM53156/BCM53158
Ultra-Low Power Layer2 GE Switch with 10G Uplinks
Port 15
1x QSGMII 4x 4x Ports Ingress Pipeline
SerDes MAC 8-11 Tunnel ACL and Metering and
Parsing VLAN
Termination Mapping Counting
4x 4x Ports
GPHY MAC 4-7
8x GPHY Switching
4x 4x Ports
GPHY MAC 0-3
Timing
1G Clock Engine
MAC JTAG Reset PMU SyncE/1588
RGMII
Table of Contents
Chapter 1: Introduction
1.1 Overview
This document provides details of the functional, operational, and electrical characteristics of the Broadcom® BCM53154/
BCM53156/BCM53158. This document is for designers interested in integrating the BCM53154/BCM53156/BCM53158
switches into their hardware designs and for others who need specific data about the physical characteristics and operation
of the BCM53154/BCM53156/BCM53158 switches.
The BCM53154/BCM53156/BCM53158 is a family of highly integrated Ethernet switches that are optimally designed for
cost-effective low-power applications in the SMB, Enterprise, Service-Provider, SOHO, and Industrial-Ethernet markets. The
BCM53154/BCM53156/BCM53158 is the first family of products in the RoboSwitch® product line to introduce 10GE ports,
which are relevant in markets that are rapidly transitioning to Gigabit-Ethernet connectivity anywhere.
The BCM53154/BCM53156/BCM53158 switch core supports full-duplex packet forwarding bandwidth of 33 Gb/s for all
packet lengths (64-byte to 9720 jumbo frames). The platform supports oversubscription, with aggregate port speeds up to
39 Gb/s.
The GMACs support full-duplex and half-duplex modes for 10 Mb/s and 100 Mb/s, and full-duplex for 1000 Mb/s. Flow
control is supported in half-duplex mode with backpressure. In full-duplex mode, IEEE 802.3x frame-based flow control is
supported. The GMACs are IEEE 802.3-compliant and support a maximum frame size of 9720 bytes.
The BCM53154/BCM53156/BCM53158X supports advanced ContentAware™ processing using a compact field processor
(CFP). Up to four intelligent ContentAware processes are performed in parallel for every packet. This flexible engine uses
TCAM-based architecture which allows wildcard capabilities. Action examples include dropping, changing the forward port
map, adding forward port, assigning the priority of a frame, and so on. These advanced ContentAware processes are well
suited for access control lists (ACLs) and DoS prevention.
An integrated address management engine provides address learning and recognition functions at maximum frame rates.
The address table provides capacity for learning up to 16K unicast addresses. Addresses are added to the table after
receiving an error-free packet.
The MIB statistics registers collect receive and transmit statistics for each port and provide direct hardware support for the
EtherLike-MIB, MIB II (interfaces), and the first four groups of the RMON MIB. All nine groups of RMON can be supported
by using additional capabilities, such as port mirroring/snooping, together with an external microcontroller to process some
MIB attributes. The MIB registers can be accessed through the Serial Peripheral Interface Port by an external
microcontroller.
Unmanaged (U)
Layer Feature (* = Features Requires Flash) Web-Managed (W) Fully Managed (M)
Processor Integrated M7 CPU Integrated M7 CPU External CPU
ROM memory for image and Internal ROM + Flash Flash Flash
(CPU, Memory, Basic Software, Power)
SDK Support
Initialization RSDK Web-Managed RSDK Full RSDK + Full XGS SDK
Direct Register Access
Support
Packet Memory 1 MB 768K 640K to 768K
CPU Memory 8 KB 352 KB 384K to 256K
(256 KB from PB + 96 KB
from TCM)
Unmanaged (U)
Layer Feature (* = Features Requires Flash) Web-Managed (W) Fully Managed (M)
Cable Diagnostic *
Cascading a *
EEE power saving (IEEE
802.3az)b
L1
AVSc *
Link Aggregation (LAG) (16/16) (16/16)
hashing: da / da-sa / da- hashing: flexible
sa-vlan / da-sa-vlan-ip
Jumbo Frames (9720) (9720) (9720)
Switching/MAC Learning (16K) (16K) (16K)
Broadcast Storm Control *
VLAN support (multiple (128) (4K – via VSI)
bridging domains)
VLAN translation
Via N type interface
L2 Forwarding
Unmanaged (U)
Layer Feature (* = Features Requires Flash) Web-Managed (W) Fully Managed (M)
Queues per port 8 8 8
IEEE 802.1p Priority mapping *
Through AutoQoS –
mapping is fixed
DSCP priority mapping *
Through AutoQoS –
mapping is fixed
Scheduling configurable SP *
Through AutoQoS
Scheduling configurable WRR *
L2 QoS
RESTful API
Rx and Tx Counters
LLDP
Protocols Rapid Spanning Tree (128) (128)
and Cisco MAC-in-MAC
Advanced Port Extender/IEEE 802.1BR
Features
(available in the
BCM53158XP)
Unmanaged (U)
Layer Feature (* = Features Requires Flash) Web-Managed (W) Fully Managed (M)
IEEE 802.1AS (subset of
Time-Sensitive Networking (TSN) Support
The BCM53154/BCM53156/BCM53158 devices are offered in one 13×13 mm2 package with 311 pins.
Table 2 provides a detailed list of the physical characteristics for each device in the BCM53154/BCM53156/BCM53158
family of switches.
The MAC automatically selects the appropriate speed (CSMA/CD or full-duplex) based on the PHY auto-negotiation result.
In full-duplex mode, IEEE 802.3x PAUSE frame-based flow control is also determined through auto-negotiation. The MAC
is IEEE 802.3, IEEE 802.3u, and IEEE 802.3x-compliant.
NOTE: Frames longer than standard max. frame size are considered oversized frames. When jumbo-frame mode is
enabled, only the frames longer than 9,720 bytes are bad frames and dropped.
If no errors are detected, the frame is processed by the switch controller. Frames with errors are discarded. Receive
functions can be disabled using register settings.
In 10/100 Mb/s half-duplex mode, when a frame is queued for transmission, the transmit controller behaves as specified by
the IEEE 802.3 requirements for frame deferral. Following deferral, the transmitter adds 8 bytes of preamble and SFD to the
frame data received from the switch controller. If, during frame transmission, a collision is observed and the collision window
timer has not expired, the transmit controller asserts jam and then executes the back-off algorithm. The frame is
retransmitted when appropriate. On the 16th consecutive collision, the back-off algorithm starts over at the initial state, the
collision counter is reset, and attempts to transmit the current frame continue. Following a late collision, the frame is aborted,
and the switch controller is allowed to queue the next frame for transmission.
While in full-duplex mode, the transmit controller ignores carrier activity and collision indication. Transmission begins after
the switch controller queues the frame and the 96-bit times of IPG have been observed. Transmit functions can be disabled
using register settings.
When the switch controller requests flow control, the transmit controller transmits a MAC control PAUSE frame with the
pause time set to maximum. When the condition that caused the flow control state is no longer present, a second MAC
control PAUSE frame is sent with the pause time field set to 0.
1.5.3.1 Encoder
The PHY is the Ethernet transceiver that appropriately processes data presented by the MAC into an analog data stream to
be transmitted at the MDI interface, which performs the reverse process on data received at the MDI interface. The registers
of the PHY are read using the Programming Interfaces. The following sections describe the operations of the internal PHY
block. For additional information, see Copper Interface.
In 10BASE-T mode, Manchester encoding is performed on the data stream that is transmitted on the twisted-pair cable. The
multimode transmit digital-to-analog converter (DAC) performs preequalization for 100m of Category 3 cabling.
In 100BASE-TX mode, the BCM53154/BCM53156/BCM53158 transmits a continuous data stream over the twisted-pair
cable. The transmit packet is encapsulated by replacing the first two nibbles of preamble with a start-of-stream delimiter (/J/
K codes) and appending an end-of-stream delimiter (/T/R codes) to the end of the packet. The transmitter repeatedly sends
the idle code group between packets. The encoded data stream is serialized and then scrambled by the stream cipher block,
as described in Stream Cipher. The scrambled data is then encoded into MLT3 signal levels.
In 1000BASE-T mode, the BCM53154/BCM53156/BCM53158 simultaneously transmits and receives a continuous data
stream on all four pairs of the Category 5 cable. Byte-wide data from the transmit data pins is scrambled when the transmit
enable is asserted, and the trellis (a PAM-5 symbol on each of the four twisted-pairs) is encoded into a four-dimensional
code group and then inserted into the transmit data stream. The transmit packet is encapsulated by replacing the first two
bytes of the preamble with a start-of-stream delimiter, and appending an end-of-stream delimiter to the end of the packet.
When the transmit error input is asserted during a packet transmission, a transmit error code group is sent in place of the
corresponding data code group. The transmitter sends idle code groups or carrier-extend code groups between packets.
Carrier extension is used by the MAC to separate packets within a multiple-packet burst and is indicated by asserting the
transmit error signal and placing 0Fh on the transmit data pins while the transmit enable is low. A carrier extend error is
indicated by replacing the transmit data input with 1Fh during carrier extension.
The encoding complies with the IEEE 802.3ab standard and is fully compatible with previous versions of the Broadcom
1000BASE-T PHYs.
1.5.3.2 Decoder
In 10BASE-T mode, Manchester decoding is performed on the data stream.
In 100BASE-TX mode, following equalization and clock recovery, the receive data stream is converted from MLT3 to serial
nonreturn-to-zero (NRZ) data. The NRZ data is descrambled by the stream cipher block, as described later in this document.
The descrambled data is then deserialized and aligned into 5-bit code groups. The 5-bit code groups are decoded into 4-bit
data nibbles. The start-of-stream delimiter is replaced with preamble nibbles, and the end-of-stream delimiter and idle codes
are replaced with 0h. The decoded data is driven onto the MII receive data pins. When an invalid code group is detected in
the data stream, the BCM53154/BCM53156/BCM53158 asserts the MII receive error (RX_ER) signal. RX_ER is also
asserted when the link fails, or when the descrambler loses lock during packet reception.
The start-of-stream delimiter is replaced with preamble bytes, and the end-of-stream delimiter and idle codes are replaced
with 00h. Carrier extend codes are replaced with 0Fh or 1Fh. Decoding complies with IEEE standard IEEE 802.3ab and is
fully compatible with previous versions of Broadcom 1000BASE-T PHYs.
In 100BASE-TX mode, receive signal energy is detected by monitoring the receive pair for transitions in the signal level.
Signal levels are qualified using squelch-detect circuits. When no signal is detected on the receive pair, the link monitor
enters the Link Fail state and the transmission and reception of data packets is disabled. When a valid signal is detected on
the receive pair for a minimum of 1 ms, the link monitor enters the Link Pass state and the transmit and receive functions
are enabled.
Following auto-negotiation in 1000BASE-T mode, the master transceiver begins sending data on the media. The slave
transceiver also begins transmitting when it has recovered the master transceiver’s timing. Each end of the link continuously
monitors its local receiver status. When the local receiver status has been good for at least 1 microsecond, the link monitor
enters the Link Pass state, and the transmission and reception of data packets are enabled. When the local receiver status
is bad for more than 750 ms, the link monitor enters the Link Fail state and the transmission and reception of data packets
are disabled.
In 10BASE-T or 100BASE-TX mode, the transmit clock is locked to the 25 MHz crystal input, and the receive clock is locked
to the incoming data stream.
In 1000BASE-T mode, the two ends of the link perform loop timing. One end of the link is configured as the master, and the
other is configured as the slave. The master transmit and receive clocks are locked to the 25 MHz crystal input. The slave
transmit and receive clocks are locked to the incoming receive data stream. Loop timing allows for the cancellation of echo
and NEXT impairments by ensuring that the transmitter and receiver at each end of the link are operating at the same
frequency.
In 10BASE-T mode, baseline wander correction is not performed because the Manchester coding provides a perfect DC
balance.
In 100BASE-TX mode, the transmit data stream is scrambled by exclusive ORing the encoded serial data stream. This is
done with the output of an 11-bit wide linear feedback shift register (LFSR), producing a 2047-bit nonrepeating sequence.
In 1000BASE-T mode, the transmit data stream is scrambled by exclusive ORing the input data byte with an 8-bit wide cipher
text word. The cipher text word generates each symbol period from eight uncorrelated maximal length data sequences that
are produced by linear remapping of the output of a 33-bit wide LFSR. After the scrambled data bytes are encoded, the sign
of each transmitted symbol is again randomized by a 4-bit wide cipher text word that is generated in the same manner as
the 8-bit word. The master and slave transmitters use different scrambler sequences to generate the cipher text words. For
repeater or switch applications, where all ports can transmit the same data simultaneously, signal energy is randomized
further by using a unique seed to initialize the scrambler sequence for each PHY.
The receiver descrambles the incoming data stream by exclusive ORing it with the same sequence generated at the
transmitter. The descrambler detects the state of the transmit LFSR by looking for a sequence representing consecutive idle
code groups. The descrambler locks to the scrambler state after detecting a sufficient number of consecutive idle codes. The
BCM53154/BCM53156/BCM53158 enables transmission and reception of packet data only when the descrambler is locked.
The receiver continually monitors the input data stream to ensure that it has not lost synchronization by checking that inter-
packet gaps containing idles or frame extensions are received at expected intervals. When the BCM53154/BCM53156/
BCM53158 detects loss of synchronization, it notifies the remote PHY of the inability to receive packets (1000BASE-T mode
only) and attempts to resynchronize to the received data stream. If the descrambler is unable to resynchronize for a period
of 750 ms, the BCM53154/BCM53156/BCM53158 is forced into the Link Fail state.
The BCM53154/BCM53156/BCM53158 also automatically compensates for differences in the arrival times of symbols on
the four pairs of the UTP cable. The varying arrival times are caused by differing propagation delays (commonly referred to
as delay skew) between the wire pairs. The BCM53154/BCM53156/BCM53158 can tolerate delay skews of up to 64 ns long.
Auto-negotiation must be enabled to take advantage of the wire map correction.
During 10/100 Mb/s operation, pair swaps are corrected. Delay skew is not an issue though, because only one pair of wires
is used in each direction.
When connecting to another device that does not perform MDI crossover, the BCM53154/BCM53156/BCM53158
automatically switches its TRD in pairs when necessary to communicate with the remote device. When connecting to
another device that does have MDI crossover capability, an algorithm determines which end performs the crossover function.
During 1000BASE-T operation, the BCM53154/BCM53156/BCM53158 swaps the transmit symbols on pairs 0 and 1 and
pairs 2 and 3 if auto-negotiation completes in the MDI crossover state. The 1000BASE-T receiver automatically detects pair
swaps on the receive inputs and aligns the symbols properly within the decoder. The automatic MDI crossover function
cannot be disabled when in 1000BASE-T mode. During 10BASE-TX and 100BASE-T operation, pair swaps automatically
occur within the device and do not require user intervention. The automatic MDI crossover function by default works only
when auto-negotiation is enabled. This function can be disabled during auto-negotiation using a register write.
NOTE: This function operates only when the copper auto-negotiation is enabled.
NOTE: This function operates only when the copper auto-negotiation is disabled.
Read or write operations to any MII register, other than MII Control register, while the device is in the standby power-down
mode returns unpredictable results. Upon exiting standby power-down mode, the BCM53154/BCM53156/BCM53158
remains in an internal reset state for 40 µs and then resumes normal operation.
NOTE: Auto power-down mode is a Broadcom proprietary feature and is based on IEEE standard.
The following six tables describe how the external loopback is enabled for 1000BASE-T, 100BASE-TX, and 10BASE-T
modes with and without a jumper block.
NOTE: To exit the External Loopback mode, a software or hardware reset is recommended.
When auto-negotiation is enabled, the full-duplex capability is advertised for one of the following, depending on the register
settings:
10BASE-T
100BASE-T
1000BASE-T
If both ends of the link attempt to force the same manual configuration (both master or both slave), or the random seeds
match seven consecutive times, then the BCM53154/BCM53156/BCM53158 sets the Master/Slave Configuration Fault bit
in the 1000BASE-T Status register, and auto-negotiation is restarted. This is used to set the BCM53154/BCM53156/
BCM53158 to manual master/slave configuration or to set the advertised repeater/DTE configuration.
The BCM53154/BCM53156/BCM53158 also supports software controlled Next Page exchanges. This includes the three
1000BASE-T Next Pages, which are always sent first. The BCM53154/BCM53156/BCM53158 automatically generates the
appropriate message code field for the 1000BASE-T pages. When the BCM53154/BCM53156/BCM53158 is not configured
to advertise 1000BASE-T capability, the 1000BASE-T Next Pages are not sent.
When the BCM53154/BCM53156/BCM53158 is not configured to advertise 1000BASE-T capability, the BCM53154/
BCM53156/BCM53158 does not advertise Next Page ability.
1.5.3.23 XLMAC
XLMAC is used for the implementation of 10G Ethernet layer for the BCM53154/BCM53156/BCM53158. The XLMAC core
is designed as a single module, supporting four 10G/2.5G/1G/100M/10M MACs. The basic idea is to have a single core
optimized for multi-lane operation to save area and power.
The processor can be connected to any port including the internal processor. In Robo terminology, this port is designated as
an IMP (internal management port). Frames that are sent to these destinations use the same forwarding rules as any other
destination, for example DLIs. There are various ways frames can be directed to each of these destinations including the
CFP, ARL, and various filters. Part of the DLI instruction could be to insert the CB tag which provides additional information
to aid in processing the frames.
There is one type of IMP header designs which the BCM53154/BCM53156/BCM53158 supports: CB TAG – 8B CB tag which
is inserted directly after the MAC-SA
This format is parseable via the CT-TAG Ethertype.
This format might include an optional timestamp with a separate Ethertype.
CB_TAG Header
Original MAC-DA[47:0]
Original MAC-SA[47:0]
EType CB_TAG
EType CB_TAG
NOTE: For unicast, multicast, traps, and exception forwarding, it is intended that the source information (SPG, LIN, VSI)
is populated in the receive header. This enables the CPU to use this in processing to determine the how to forward
the frame. In addition, it is expected the CPU properly sets these fields when it sends a frame to the switch which
is sent out.
The Switch to CP and CP to Switch tag formats are purposely defined to be consistent across the IMP and Cascade modes.
The forwarding codes (fwd_op) are defined to allow the hardware to interpret the intended function from the code point
regardless of the specific IMP or Cascade type in most cases.
15 14 13 12 11 10 09 08 07 06 05 04 03 02 01 00
Ethertype
TC DP FWD_OP DEV LBH/TRAP_GROUP/SPP/DPP
DEST[11:0] - depends on FWD_OP {for example, DLLI/DG/EXCEPTION} R R SPG
SPG T N_VSI [11:0] (VSI or LIN based on T)
Field Function
Ethertype Configured value
TC TC value classified for the packet by the switch
DP Discard precedence
DEV Source device identifier; configured by software
SPG Source Port Group – SPG determined for the frame
FWD_OP Forwarding Operation – see table
T LIN Type indicator. 0 is LIN, 1 is PV format
N_VSI Source Local Logical Interface: If T = 1 (type PV), SLLI = {1,0,SPG}; VSI=N_VSI else(type LIN)
SLLI={0,N_VSI}; VSI=LIN2VSI(N_VSI);
DEST - overlay Overlay field with one of the following depending on FWD_OP
DLLI Destination Logical Local Interface: If FWD_OP = UNICAST
DG Destination Group (multicast/broadcast): If FWD_OP = MULTICAST
EXCEPTION Exception – Identifies the reason a trap was triggered (TRAP, SLIC, CFP): If FWD_OP = TRAP
LBH - overlay Trap Group/Load Balancing Hash : If FWD_OP=TRAP, TRAP_GROUP else LBH
LBH Load balancing hash- Valid for all op codes except 2
Trap_group Trap group for the SLICT and CFP traps in FWD_OP=2
SPP Source Physical Port for traps (FWD_OP=2)
DPP Destination Physical Port
RSVD Reserved – write as zero, ignore on receipt
The forwarding operation (FWD_OP) field defines the content of the DEST field and provides information to the CPU
regarding why the frame was delivered. The DEST field in the header is overlay with number of meanings summarized in
the following table.
SA learn packets will be locally learned and converted to local cascaded traps for cascade processing.
The trap packet uses the trap_group to process the frame. Note this is the only format that has a SPP versus a SPG.
15 14 13 12 11 10 09 08 07 06 05 04 03 02 01 00
Ethertype
TIMESTAMP[47:32]
TIMESTAMP[31:16]
TIMESTAMP[15:0]
The Ethertype is taken from a software configured register. Timestamp is the 48 bit value sampled at Start of Packet when
the frame arrived.
The BCM53154/BCM53156/BCM53158 offers the MIB snapshot feature per port. A snapshot of a selected port MIB
registers can be captured and available to the users while MIB counters are continuing to count.
RxOctets 64 Number of data bytes received by a port (excluding preamble, but including FCS), including bad
packets.
RxBroadcastPkts 32 Number of good packets received by a port that are directed to the broadcast address. This counter
does not include errored broadcast packets or valid multicast packets. The maximum packet size can
be programmed.
RxMulticastPkts 32 Number of good packets received by a port that are directed to a multicast address. This counter
does not include errored multicast packets or valid broadcast packets. The maximum packet size can
be programmed.
RxSAChanges 32 Number of times the SA of good receive packets has changed from the previous value. A count
greater than 1 generally indicates the port is connected to a repeater-based network. The maximum
packet size can be programmed.
RxUndersizePkts 32 Number of good packets received by a port that are less than 64 bytes long (excluding framing bits,
but including the FCS).
RxOversizePkts 32 Number of good packets received by a port that are greater than standard max frame size. The
maximum packet size can be programmed.
RxFragments 32 Number of packets received by a port that are less than 64 bytes (excluding framing bits) and have
either an FCS error or an alignment error.
RxJabbers 32 Number of packets received by a port that are longer than standard max frame size and have either
an FCS error or an alignment error.
RxUnicastPkts 32 Number of good packets received by a port that are addressed to a unicast address. The maximum
packet size can be programmed.
RxAlignmentErrors 32 Number of packets received by a port that have a length (excluding framing bits, but including FCS)
between 64 and standard max frame size, inclusive, and have a bad FCS with a nonintegral number
of bytes.
RxFCSErrors 32 Number of packets received by a port that have a length (excluding framing bits, but including FCS)
between 64 and standard max frame size inclusive, and have a bad FCS with an integral number of
bytes.
RxGoodOctets 64 Total number of bytes in all good packets received by a port (excluding framing bits, but including
FCS). The maximum packet size can be programmed.
JumboPktCount 32 Number of good packets received by a port that are greater than the standard maximum size and
less than or equal to the jumbo packet size, regardless of CRC or alignment errors.
RxPkts128to255Octets 32 Number of packets received (including error packets) that are between 128 and 255 bytes long.
RxPkts256to511Octets 32 Number of packets received (including error packets) that are between 256 and 511 bytes long.
RxPkts512to1023Octet 32 Number of packets received (including error packets) that are between 512 and 1023 bytes long.
s
RxPkts1024toMaxPktO 32 Number of packets received (include error packets) that are between 1024 and the standard
ctets maximum packet size inclusive.
TxOctets 64 Total number of good bytes of data transmitted by a port (excluding preamble but including
FCS).
TxBroadcastPkts 32 Number of good packets transmitted by a port that are directed to a broadcast address. This
counter does not include errored broadcast packets or valid multicast packets.
TxMulticastPkts 32 Number of good packets transmitted by a port that are directed to a multicast address. This
counter does not include errored multicast packets or valid broadcast packets.
TxSingleCollision 32 Number of packets successfully transmitted by a port that have experienced exactly one
collision.
TxMultipleCollision 32 Number of packets successfully transmitted by a port that have experienced more than one
collision.
TxDeferredTransmit 32 Number of packets transmitted by a port for which the first transmission attempt is delayed
because the medium is busy. This only applies to the Half Duplex mode, while the Carrier
Sensor Busy.
TxLateCollision 32 Number of times that a collision is detected later than 512 bit-times into the transmission of
a packet.
TxExcessiveCollision 32 Number of packets that are not transmitted from a port because the packet experienced 16
transmission attempts.
TxPausePfcPkts 32 Number of PAUSE control frames sent when the port is configured in PAUSE mode. In PFC
mode, it counts the number of PFC frames sent.
TxFrameInDisc 32 Number of valid packets received which are discarded by the forwarding process due to
lack of space on an output queue (not maintained or reported in the MIB counters). This
attribute only increments if a network device is not acting in compliance with a flow control
request or the ROBO GE Switchcore internal flow-control/buffering scheme has been
configured incorrectly.
TxQ0PKT 32 Total number of good packets transmitted on COS0, which is specified in MIB queue select
register when QoS is enabled.
TxQ1PKT 32 Total number of good packets transmitted on COS1, which is specified in MIB queue select
register when QoS is enabled.
TxQ2PKT 32 Total number of good packets transmitted on COS2, which is specified in MIB queue select
register when QoS is enabled.
TxQ3PKT 32 Total number of good packets transmitted on COS3, which is specified in MIB queue select
register when QoS is enabled.
TxQ4PKT 32 Total number of good packets transmitted on COS4, which is specified in MIB queue select
register when QoS is enabled.
TxQ5PKT 32 Total number of good packets transmitted on COS5, which is specified in MIB queue select
register when QoS is enabled.
The integrated memory is 1 MB and can be flexibly partitioned into a packet buffer region, and a region available to the M7/
8051 for instruction/data memory as well as storage for packets forwarded to the CPU (UM mode is restricted by OTP to
only 128 KB of the 1 MB of memory). The BCM53154/BCM53156/BCM53158 M7 processor also has 32 KB ITCM, 64 KB
DCTM, 16 KB I-Cache, and 16 KB D-Cache.
In addition, instead of the IVM and EMV, the following tables exist:
Logical Interface Mapper (LIM): 2K entry hash table to support virtual ports and double-tagged frames, and so forth.
VSI Tag Control (VTC): 4K entry with per port controls for egress edits
This eliminates the need for external memory and allows for the implementation of extremely low-cost systems.
The internal RAM controller efficiently executes memory transfers and achieves nonblocking performance for stand-alone
8-port applications and for applications with up to 15 ports and 33 Gb/s throughput.
Each egress port supports up to eight transmit queues for servicing Quality of Service (QoS). All eight transmit queues share
the all entries of the TXQ table. The TXQ table is maintained as a linked list, and each node in the TXQ uses one entry in
the TXQ table.
When the QoS function has been turned off, the switch controller maintains one output queue for each egress port. The TXQ
table is maintained in a per-port individual internal memory. Each node in the queue represents a pointer that points to a
frame buffer tag. Each buffer tag includes frame information and a pointer to the next buffer tag. Each buffer tag has an
associated page allocated in the frame buffer. For a packet with a frame size larger than 256 bytes, multiple buffer tags are
required. For instance, a 9720-byte jumbo frame requires 38 buffer tags for handling the frame.
2.1 Overview
The BCM53154/BCM53156/BCM53158 switches include the following features:
“ARM Cortex-M7 Core” on page 38
“Quality of Service and Scheduling” on page 38
“VLAN Filter” on page 42
“Private VLAN” on page 42
“IEEE 802.1Q VLAN” on page 42
“Double-Tagging” on page 42
“Jumbo Frame Support” on page 43
“Port Trunking” on page 43
“WAN Port” on page 44
“Ingress Rate Limiters” on page 45
“Protected Ports” on page 45
“Port Mirroring” on page 45
“IGMP Snooping” on page 45
“MLD Snooping” on page 46
“IEEE 802.1X Port-Based Security” on page 46
“DoS Attack Prevention” on page 47
“CFP (Compact Field Processor)” on page 49
“Multiple Spanning Tree Protocol” on page 52
“Software Reset” on page 52
“1588 Time Synchronization Support” on page 52
“Port Extender” on page 53
“Egress PCP/DEI Remarking” on page 53
“Address Management” on page 53
“Power-Saving Modes” on page 54
“VLAN Translation” on page 55
In UM+ and MM, the TC/DP mapping takes a hierarchy in the following descending order:
Direct instruction – via IMP or Cascade header
CFP output – flow processing
SLI Context TCAM match with TC and/or DP override
This is typically reserved for traffic to the IMP/CP
TC resolution logic based on mapping a field from packet header – for example, {PCP,DEI} --> TC, DP
Port default
The rate limiter may be color-blind or color-aware. Its output DP value, together with the TC, is used to derive PCP and DSCP
remarking at the egress. The final PCP and DSCP may encode the color of the egress packet per the trTCM scheme (see
RFC 2698 and RFC 4115, Section 11).
A packet may be sent to the CPU through the IMP (any port can be an IMP port) or the dedicated internal CPU port. Each
event that results in sending a packet to the CPU can be mapped to a specific queue and will include an exception ID
indicating the reason why the packet is sent to the CPU.
NOTE: In addition to determining the CPU queue in nonaggregation mode, the exception ID may also help software
process the packet in all modes.
2.3.3 Shaper
BCM53154/BCM53156/BCM53158 supports a per-queue bandwidth and packet shaper. The shaper can limit the amount of
bandwidth consumed and the number of packets sent to the management processor.
2.4.1 AutoDOS
The AutoDOS feature detects potential DOS attacks and drops the suspected packets automatically to defeat the attack.
There are several possible DOS attacks and a default set must be selected for detection and dropping in unmanaged mode.
In managed mode, AutoDOS is a feature, but the types of attacks to detect and drop are programmable. A packet which will
be dropped may still be mirrored, but will not be forwarded.
Table 15 describes the DOS attacks that are detected and may be selected for packet dropping. Two columns have been
added to indicate which are detected by the ROBO and Voyager and to show what is supported by the CB.
2.4.2 AutoVOIP
The AutoVOIP feature detects VoIP streams and designates them as a high priority, that is, marking the frames' p-bits with
a high-priority value. The purpose is to provide better quality of service for VoIP traffic which is sensitive to lower qualities of
service. When talking on a VoIP phone, a user expects to have no interruptions in the conversation and excellent voice
quality. The BCM53154/BCM53156/BCM53158 recognizes VoIP packets based on the MAC OUI field of arriving frames
(OUI = highest 24 bits of the MAC address). Those MAC OUIs are associated with known VoIP vendors like Cisco, Avaya,
3COM, and others.
Table 16 presents the VoIP vendor OUIs that are detected by the AutoVoIP feature.
2.4.3 AutoLoopDetect
This feature detects a loop in the network, but does not prevent it like spanning tree. The purpose is to provide an indication
(usually via LED) that a loop exists in the network so that a network administrator can clearly see it and eliminate it using
manual means (not protocol). AutoLoopDetect transmits periodically a loop discovery frame (timer triggered) which is a
broadcast frame with a Broadcom specific header (includes a loop discovery opcode). The loop discovery frame also has
an ID that can be used to determine the frame's source. If a port receives a loop discovery frame from itself, a loop condition
in the network is discovered and the LED on the corresponding port is set.
AutoLoopDetect uses the BCM53154/BCM53156/BCM53158 uC8051 controller to generate the relevant frames. When the
frame returns, the IPP Tag-Parser detects it and forwards it to the uC8051. Identifying the packet and sending it to the
uC8051 can be implemented as a trap in the SLIC TCAM. Instead of dropping the trapped packet, it will be forwarded by the
trap to the uC8051.
The VLAN filter feature works as a filter, filtering out traffic destined to non-private domain ports. For each received packet,
the ARL resolves the DA and obtains a forwarding vector (list of ports to which the frame will be forwarded). The ARL then
applies the VLAN filter to the forwarding vector, effectively masking out the non-private domain ports. The frame is forwarded
only to those ports that meet the ARL table criteria, as well as the VLAN filter criteria.
2.8 Double-Tagging
The BCM53154/BCM53156/BCM53158 provide the double tagging feature, which is useful for ISP applications. When the
ISP aggregates incoming traffic from each individual customer, the extra tag (double tag) can provide an additional layer of
tagging to the existing IEEE 802.1Q VLAN. The ISP tag (extra tag) is a way of separating individual customers from other
customers. Using the IEEE 802.1Q VLAN tag, the individual customer’s traffic can be identified on a per-port basis.
The distribution can be based on a hash of DA, SA, or DA + SA; it is a programmable feature.
MAC-DA (default)
MAC-SA
MAC-DA + MAC-SA (+VSI)
Figure 4 shows the WAN and LAN domain separation when the WAN port is selected.
IMP/ISP
IMP/ISP IMP2
A frame with a value of 2 in the IP header protocol field and IGMP frames are forwarded to the CPU port. The management
CPU can then determine from the IGMP control packets which port should participate in the multigroup session. The
management CPU proactively programs the multicast address in the ARL table or the multiport address entries. IGMP
frames will be trapped only to the CPU port if one of the following is enabled:
Blocked
Forwarded normally
Send to CPU
Forward and copy to CPU
BCM53154/BCM53156/BCM53158 provides three modes for implementing the IEEE 802.1X feature. Each mode can be
selected by setting the appropriate bits in the register.
The Basic Mode (when EAP Mode = 00'b) is the standard mode, the EAP_BLK_MODE bit would be set before authentication
to block all of the incoming packets, upon authentication, the EAP_BLK_MODE bit would be cleared to allow all the incoming
packets. In this mode, the Source Address of incoming packets is not checked.
The second mode is Extended Mode (when EAP Mode = 10'b), where an extra filtering mechanism is implemented after the
port is authenticated. If the Source MAC address is unknown, the incoming packets would be dropped and the unknown SA
would not be learned. However if the incoming packet is IEEE 802.1X packet, or special frames, the incoming packets will
be forwarded. The definition of the Unknown SA in this case is when the switch cannot match the incoming Source MAC
address to any of the addresses in ARL table, or the incoming Source MAC address matches the address in ARL table, but
the port number is mismatched. The third mode is Simplified Mode (when EAP Mode = 11'b). In this mode, the unknown
Source MAC address packets would be forwarded to CPU rather than dropped. Otherwise, it is same as the Extended Mode
operation.
NOTE: The BCM53154/BCM53156/BCM53158 checks only the destination addresses to qualify EAPOL frames. Ethernet
type fields, packet type fields, or non-IEEE 802.1Q frames are not checked.
The CFP supports up to 15 flexible key formats for each of the following packet types: IPv4, IPv6, and non-IP. Up to four
keys may be assembled for each packet. Two keys can be aggregated, with width expanded, to logically create a key that
is twice as wide. This is done by concatenating key 0 and key 1 or by concatenating key 2 and key 3. This is supported on
a key-by-key basis. That is, a single key may be double wide while all others are single wide.
Up to four rule matches can be processed per packet. Each rule that is matched may apply one or more of the 9 policy
actions. The lowest rule number with a policy enabled specifies the action for that policy. Collectively, the policies are
processed across all four possible matches. For example, one rule may change the forwarding destination and another rule
may apply a meter.
The BCM53154/BCM53156/BCM53158 supports the CFP rules to canonical policy actions shown in Table 18.
2.19.2 Parser
The BCM53154/BCM53156/BCM53158 ingress parser is capable of parsing a rich set of packet formats as illustrated in
Figure 5 on page 51.
L2 headers
– LLC
– DIX/ENTII
– SNAP encapsulated IPv4 and IPv6
PPo IEEE 802.1Q VLAN tags - single-tagged packets
– IEEE 802.1ad – double tagged packets (for example, STAG and CTAG)
– IEEE 802.1ah – MAC-in-MAC ITAGs
– IEEE 802.1BR Port Extender tags
– Cisco MAC-in-MAC TAG
– Broadcom Channelization over Ethernet (CoE) tags
– 4x User programmed L2 tags: program the 2B TPID and associated tag size
• Tag sizes of 4B, 6B or 8B are supported
ARP (address resolution protocol)
MPLS – single label
PPPoE
– PPPOE session packets (Ethertype = 0x8864) described in RFC2516 with:
• version=1, type=1, code=0.
• PPP Protocol=0x21 for IPv4, or 0x57 for IPv6 with full L4 parsing support.
– PPPoE Discovery (ET=0x8863).
L3 IPv4 and IPv6 headers.
– The parser extracts DSCP field which can be subsequently used to support QoS.
4x L3 protocols identified by user programmed Ethertype.
IPv4
– Mo options (fixed HL=20)
– ICMP (1) for IPv4
– IGMP (2) for IPv4
IPv6
– ICMPv6
• MLD for snooping
• Neighbor Discovery (ND)
– At most one extension header that is not L4 is processed from this following list.
• IPv6 Frag header (44)
• Dest Options (60)
• AH Header (51)
• No next Header (59) – stop parsing
– All other extension headers and not parsed and L4 protocol is unknown.
L4 Protocols
– TCP(6)/UDP(17) headers for IPv4 and IPv6
– 2 programmable L4 protocols which include the first 32 bits of the payload as {Dport|Sport}
IEEE 1588 PTP frames including event messages.
– Both directly over Ethernet (using Ethertype) and over UDP (using destination port).
Up to ~128 user defined header formats and/or specific addresses or protocols.
– For example, Local MAC-DA, BPDUs, and so forth, using the SLIC TCAM.
6B 6B 2B 2B 2B 4B
Destination Source
EType VLAN TCI ETYPE
DIX/CTAG MAC MAC
C-TAG (CTAG) >0x600
payload FCS
Address Address
6B 6B 2B 2B 2B 6B 2B 4B
Destination Source LLC/SNAP
LLC/SNAP/ EType VLAN TCI Length ETYPE
MAC MAC aa-aa-03- payload FCS
CTAG C-TAG (CTAG) <0x0600 >0x600
Address Address 00-00-00
6B 6B 2B 2B 2B 2B 2B 2B 4B
Destination Source
DIX/STAG/ EType VLAN TCI EType VLAN TCI Length ETYPE
MAC MAC payload FCS
CTAG S-TAG (STAG) S-TAG (CTAG) <0x0600 >0x600
Address Address
6B 6B 2B 2B 2B 2B 2B 6B 2B 4B
Destination Source LLC/SNAP
LLC/SNAP/ EType VLAN TCI EType VLAN TCI Length ETYPE
MAC MAC aa-aa-03- payload FCS
STAG/CTAG S-TAG (STAG) C-TAG (CTAG) <0x0600 >0x600
Address Address 00-00-00
6B 6B 2B 2B 2B 4B 2B 2B 2B 2B 4B
B-DMAC B-SMAC EType VLAN TCI ETYPE= NGIO C-DMAC C-SMAC EType VLAN TCI
DIX/NGIO Address Address C-TAG (CTAG) 0x88E7 TAG Address Address C-TAG (CTAG)
payload FCS
6B 6B 2B optional 2B 2B 4B 2B 2B 2B 2B 4B
DIX/BTAG/ B-DMAC B-SMAC EType VLAN TCI ETYPE= C-DMAC C-SMAC EType VLAN TCI
ITAG payload FCS
ITAG/CTAG Address Address S-TAG (STAG) 0x88E7 Address Address C-TAG (CTAG)
6B 6B 2B 2B 2B 2B 2B 4B
6B 6B 2B optional 2B 2B 2B 4B 4B
Destination Source
DIX/STAG/ EType VLAN TCI Length ETYPE= MPLS
MAC MAC payload FCS
MPLS S-TAG (STAG) <0x0600 0x8847 LBL
Address Address
2B 20B 4B
IPv4 L2 Header (DIX or SNAP) with optional S-TAG, C- ETYPE= IPv4 TCP/UDP/ARP/
payload FCS
TAG 0x800 header IGMP/MLD/ICMP
2B 40B 4B
IPv6 L2 Header (DIX or SNAP) with optional S-TAG, C- ETYPE= IPv6 TCP/UDP/ARP/
payload FCS
TAG 0x800 header IGMP/MLD/ICMP
2B 40B 4B
IPv6 w/ Ext L2 Header (DIX or SNAP) with optional S-TAG, C- ETYPE= IPv6 IPv6 TCP/UDP/ARP/
Hdrs payload FCS
TAG 0x800 header EXT Hdrs IGMP/MLD/ICMP
NOTE: Software Reset sets all the register and the table (ARL, VLAN) contents to the default values. Software Reset will
not latch in the strap pin values, but the previous latched strap pin values are retained.
NOTE: The BCM53154/BCM53156/BCM53158 supports 1588 MC and BC as well as TC. In managed mode, it has full
1588v2 support.
In generic terms, an E-channel refers to a configured connectivity path between the Controlling Bridge and the External
Extended Port (data channel), and/or the Uplink ports (control channel for PEs).
The BCM53154/BCM53156/BCM53158 supports up to 8 forwarding tables. The size of the table(s) is configurable. By
default, a single ARLFM table using the key {FID, MAC} is used with a size of 16K entries. FID is taken from VSI Table. The
contents of the ARLFM are shown in Table 19. The table includes additional state fields that are used to support aging,
creating static entries and validating the key match (that is, valid, age, and key).
The option to support additional tables allows users to adapt the forwarding plane to their applications. For example, a
second table may be created that uses the key {VSI, TC} to enable VLAN forwarding based on traffic class.
In this mode, the MAC determines when to enter low power mode by examining the state of the transmit queues associated
with each MAC. Four simple adjustments (settings) are used to trigger (optimize) the behavior of EEE control policy. These
adjustments are:
Two-part sleep delay timer
Minimum low-power idle duration timer
Wake transition timer
The two-way communication between the PHY and its link partner is required for the PHY to achieve the power savings on
both sides. The transmit PHY sends a sleep symbol to the link partner, and the link partner enters low power state. When
the transmit PHY sends a wake symbol, the regular packet transfer mode resumes.
3.1 Overview
The BCM53154/BCM53156/BCM53158 supports unmanaged, web managed, and fully managed modes of operation. Each
of these modes is discussed in more detail in the following sections.
Required UM Configurations
Fla sh
2x 1G/2.5G or 2x 10G 1G/2.5G or 10G 1G/2.5G
(Q)SPI PH Y / PH Y / PH Y /
Op ti cs Op ti cs Op ti cs
ROM 8051 XFI XFI SGMII
RGMI
RGMI
RGMI
OTP BCM53158 BCM53156 BCM53154
I
I
10G 10G GPHY QSGMII GPHY GPHY
BCM5315X PH Y /
Op ti cs
8x GE 8x GE 4x GE
4x GE
8x GbE 4x SGMII
1x QSGMII
BCM53154/56/58
CPU Subsystem CM CB Switch Time Sync
D Arm M7 8051 Packet IPP
A 24K TCM RGMII
Memory
P Program
16K/16K$ EPP High Speed
Memory SerDes (x2)
NOC
SPIO GPHY GPHY Low Speed
MFIO I2C MDIO QSPI SerDes (x1)
/1 x4 x4
SPI
RJ-45
RJ-45
RJ-45
RJ-45
RJ-45
RJ-45
RJ-45
RJ-45
FLASH
NOTE: See Table 2 for available interfaces and for the detailed port configuration of the BCM53154/BCM53156/
BCM53158.
The operational processors are the internal 8051 and integrated M7 CPU. The 8051 recognizes OTP and activates the M7.
AVS and the rest of the Unmanaged software is running on the M7. An external Flash is required for AVS and is also used
for optional customer configuration or bug fixes. Table 20 shows the valid straps and OTP in this configuration.
The embedded 8051 is responsible for the following features in this mode:
Processing of straps and OTP configurations (ROM CODE)
8051 enters sleep mode and periodically runs link scan and error code (ROM CODE)
The integrated M7 CPU is responsible for the following features in this mode:
AVS mechanism running (M7 Flash code)
Basic unmanaged configuration of the switch core (M7 Flash code)
Enabling internal PHYs (M7 Flash code)
Enable forwarding (ROM CODE)
Periodically runs link scan and error code (M7 Flash code)
NOTE: It is recommended to use the indirect access mode for a PoE solution (included MCU configuration) to get the latest
maintenance and compliance test guarantee. This applies to the following figures in this section.
BCM53154/56/58
CPU Subsystem CM CB Switch Time Sync
D Arm M7 8051 Packet IPP
A 24K TCM RGMII
Memory
P Program BCM84892 RJ-45
16K/16K$ EPP High Speed XFI
Memory SerDes (x2) XFI 2x 10G PHY RJ-45
NOC
or
SPIO GPHY GPHY Low Speed SGMII+
MFIO I2C MDIO QSPI SerDes (x1)
/1 x4 x4 CL45
SPI
QSGMII CL22
I2C
FLASH
BCM59121 BCM54291
MCU 8x PoE PSE 2x 1G PHY
BCM59132
RJ-45
RJ-45
RJ-45
RJ-45
RJ-45
RJ-45
RJ-45
RJ-45
4x PoE PSE
RJ-45
RJ-45
RJ-45
RJ-45
NOTE: It is recommended to use the indirect access mode for a PoE solution (included MCU configuration) to get the latest
maintenance and compliance test guarantee.
Table 21 describes the values for the valid OTP and strap settings.
NOTE: See Table 2 for available interfaces and for the detailed port configuration of the BCM53154/BCM53156/
BCM53158.
In this mode, the advanced 'auto' features are also available. The M7 flash code in this case implements the following
features:
Processing of straps and OTP configurations (ROM CODE)
Basic unmanaged configuration of the switch core (M7 Flash CODE)
Configuration of the internal SerDes (M7 Flash Code)
Configuration of external PHYs, PSE, and so forth (M7 Flash Code)
Enabling AutoVOIP, AutoDoS, AutoQoS, AutoLoopDetect configuration (M7 Flash Code)
Play out customer specific configuration from to both internal and external devices (I2C, MDIO) (M7 Flash Code)
Enabling internal PHYs (M7 Flash Code)
Enable forwarding (M7 Flash Code)
Vectoring (executing from Flash XIP) to AutoLoopDetect Application Code or enters sleep mode (M7 Flash Code)
Periodically runs link scan and error code (ROM CODE)
SPIO 2
GPHY GPHY Low Speed Low Speed GPHY GPHY MFIO
SPIO
I2C MDIO QSPI
MFIO I C MDIO QSPI SerDes (x1) /1
/1 x4 x4 SerDes (x1) x4 x4
QSGMII SPI
SPI
QSGMII
CL22 CL45
I2C
FLASH BCM59121 BCM54292 BCM84892 BCM59121
MCU 8x PoE PSE 8x 1G PHY 2x 10G PHY 8x PoE PSE
BCM59121
RJ-45
RJ-45
RJ-45
RJ-45
RJ-45
RJ-45
RJ-45
RJ-45
RJ-45
RJ-45
RJ-45
RJ-45
RJ-45
RJ-45
RJ-45
RJ-45
RJ-45
RJ-45
8x PoE PSE
RJ-45
RJ-45
RJ-45
RJ-45
RJ-45
RJ-45
RJ-45
RJ-45
NOTE: See Table 2 for available interfaces and for the detailed port configuration of the BCM53154/BCM53156/
BCM53158.
Figure 10 on page 62 has a similar configuration, except a LAG is used across the 10G interface between two BCM53154/
BCM53156/BCM53158 to achieve non-blocking operation.
SPIO 2
GPHY GPHY Low Speed Low Speed GPHY GPHY MFIO
SPIO
I2C MDIO QSPI
MFIO I C MDIO QSPI SerDes (x1) /1
/1 x4 x4 SerDes (x1) x4 x4
QSGMII SPI
SPI
QSGMII
CL22
I2C
FLASH BCM59121 BCM54292 BCM59121
MCU 8x PoE PSE 8x 1G PHY 8x PoE PSE
BCM59121
RJ-45
RJ-45
RJ-45
RJ-45
RJ-45
RJ-45
RJ-45
RJ-45
RJ-45
RJ-45
RJ-45
RJ-45
RJ-45
RJ-45
RJ-45
RJ-45
8x PoE PSE
RJ-45
RJ-45
RJ-45
RJ-45
RJ-45
RJ-45
RJ-45
RJ-45
NOTE: See Table 2 for available interfaces and for the detailed port configuration of the BCM53154/BCM53156/
BCM53158.
Table 22 describes the values for the valid OTP and strap settings.
In this mode, the advanced 'auto' features are also available. In this system, there are two BCM53154/BCM53156/
BCM53158 where one is the primary and one is the secondary based on a strapping. The primary BCM53154/BCM53156/
BCM53158 is responsible for configuring both devices. These devices are connected with an SPI interface. The hardware
supports memory mapping model across this interface to facilitate using the same drivers for local and remote devices.
External devices, such as PHYS and PSE are connected to the Primary BCM53154/BCM53156/BCM53158.
The M7 Flash code on the primary BCM53154/BCM53156/BCM53158 implements the following features:
Processing of straps and OTP configurations (ROM CODE)
Basic unmanaged configuration of the switch core (M7 Flash code)
Configuration of the SerDes on Primary (M7 Flash code)
Configuration of cascade on Primary (M7 Flash code)
Configuration of the SerDes on Secondary (M7 Flash code)
BCM53154/56/58
CPU Subsystem CM CB Switch Time Sync SYNC/FS
D Arm M7 8051 Packet IPP
A 24K TCM RGMII
Memory
P Program BCM84892 RJ-45
16K/16K$ EPP High Speed XFI
Memory SerDes (x2) XFI 2x 10G PHY RJ-45
NOC
or
SPIO GPHY GPHY Low Speed SGMII+
MFIO I2C MDIO QSPI SerDes (x1)
/1 x4 x4 CL45
SPI
GPIO
QSGMII CL22
I2C
FLASH
BCM59121 BCM54291
MCU 8x PoE PSE 2x 1G PHY
BCM59132
RJ-45
RJ-45
RJ-45
RJ-45
RJ-45
RJ-45
RJ-45
RJ-45
4x PoE PSE
RJ-45
RJ-45
RJ-45
RJ-45
NOTE: See Table 2 for available interfaces and for the detailed port configuration of the BCM53154/BCM53156/
BCM53158.
The BCM53154/BCM53156/BCM53158 initially runs the M7 Flash code which processes the following steps:
BCM53154/56/58
CPU Subsystem CM CB Switch Time Sync SYNC/FS
D Arm M7 8051 Packet IPP
A 24K TCM RGMII
Memory SFP+
P Program
RJ-45
16K/16K$ EPP High Speed XFI Optics
Memory SerDes (x2) XFI RJ-45
NOC 2x 10G
or
SPIO GPHY GPHY Low Speed SGMII+
MFIO I2C MDIO QSPI SerDes (x1)
/1 x4 x4 CL45
SPI
GPIO
QSGMII CL22
I2C
FLASH
BCM59121 BCM54291
MCU 8x PoE PSE 2x 1G PHY
BCM59132
RJ-45
RJ-45
RJ-45
RJ-45
RJ-45
RJ-45
RJ-45
RJ-45
4x PoE PSE
RJ-45
RJ-45
RJ-45
RJ-45
NOTE: See Table 2 for available interfaces and for the detailed port configuration of the BCM53154/BCM53156/
BCM53158.
SPIO GPHY GPHY Low Speed Low Speed GPHY GPHY MFIO
SPIO
I2C MDIO QSPI
MFIO I2C MDIO QSPI SerDes (x1) /1
/1 x4 x4 SerDes (x1) x4 x4
SPI
SPI
QSGMII
QSGMII CL45
CL22
I2C
FLASH BCM59121 BCM54292 BCM84892 BCM59121
MCU 8x PoE PSE 8x 1G PHY 2x 10G PHY 8x PoE PSE
BCM59121
RJ-45
RJ-45
RJ-45
RJ-45
RJ-45
RJ-45
RJ-45
RJ-45
RJ-45
RJ-45
RJ-45
RJ-45
RJ-45
RJ-45
RJ-45
RJ-45
RJ-45
RJ-45
8x PoE PSE
RJ-45
RJ-45
RJ-45
RJ-45
RJ-45
RJ-45
RJ-45
RJ-45
NOTE: See Table 2 for available interfaces and for the detailed port configuration of the BCM53154/BCM53156/
BCM53158.
Table 24 describes the values for the valid OTP and strap settings.
In this system, there are two BCM53154/BCM53156/BCM53158 where is one primary and one is secondary based on a
strapping. The primary BCM53154/BCM53156/BCM53158 is responsible for configuring both devices. These devices are
connected with an SPI interface. The hardware supports memory mapping model across this interface to facilitate using the
same drivers for local and remote devices. External devices, such as PHYS and PSE are connected to the Primary
BCM53154/BCM53156/BCM53158.
The M7 Flash code on the primary BCM53154/BCM53156/BCM53158 implements the following features:
Processing of straps and OTP configurations (ROM code)
Basic unmanaged configuration of the switch core (M7 Flash code)
Loads OpenRTOS
Configuration of the SerDes on Primary (M7 Flash)
Configuration of cascade on Primary (M7 Flash)
Configuration of the SerDes on Secondary (M7 Flash)
Configuration of cascade on Secondary (M7 Flash)
Configuration of external PHYs, PSE, and so on. (M7 Flash)
Enabling AutoVOIP, AutoDoS, and AutoQoS configuration (M7 Flash code)
Play out customer specific configuration from QSPI Flash to both internal and external devices (I2C, MDIO) (M7 Flash
code)
Enable internal PHYs on Primary (M7 Flash code)
Enable internal PHYs on Secondary this is via the MDIO on in the secondary device (M7 Flash code)
Enable external PHYs (M7 Flash code)
Enable forwarding on both Primary and Secondary devices (M7 Flash code)
Required MM Configurations
SPI
Interrupt Mgmt.
1G/2.5G or 10G 2x 1G/2.5G or 2x 10G
CPU
PHY/ PHY /
Optics Optics
ROM M7 XFI XFI
RGMII
RGMII
RGMII
4x GE
1 x 1G/2.5G
8x GE 4x SGMII
BCM53154/56/58
CPU Subsystem CM CB Switch Time Sync SYNC/FS
D Arm M7 8051 Packet IPP
A 24K TCM RGMII
Memory
P Program BCM84892 RJ-45
16K/16K$ EPP High Speed XFI
Memory SerDes (x2) XFI 2x 10G PHY RJ-45
NOC
or
SPIO GPHY GPHY Low Speed SGMII+
MFIO I2C MDIO QSPI SerDes (x1)
/1 x4 x4 CL45
RGMII
SPI
SPI
QSGMII CL22
I2C
FLASH
BCM59121 BCM54291
8x PoE PSE 2x 1G PHY
Management
BCM59132 CPU
RJ-45
RJ-45
RJ-45
RJ-45
RJ-45
RJ-45
RJ-45
RJ-45
NOTE: See Table 2 for available interfaces and for the detailed port configuration of the BCM53154/BCM53156/
BCM53158.
Table 25 describes the values for the valid OTP and strap settings.
The same code as unmanaged is executed by the M7 except it does not enable hardware forwarding.
The M7 Flash code on the BCM53154/BCM53156/BCM53158 device implements the following features:
Processing of straps and OTP configurations (ROM CODE)
Basic unmanaged configuration of the switch core (M7 Flash Code)
Identified as secondary based on straps (M7 Flash Code)
Does NOT enable PHYS or unmanaged forwarding (M7 Flash Code)
SPIO GPHY GPHY Low Speed Low Speed GPHY GPHY MFIO
SPIO
I2C MDIO QSPI
MFIO I2C MDIO QSPI SerDes (x1) /1
/1 x4 x4 SerDes (x1) x4 x4
SPI
SPI
QSGMII
QSGMII CL45
CL22
SPI 2
IC
FLASH BCM59121 BCM54292 BCM84892 BCM59121
8x PoE PSE 8x 1G PHY 2x 10G PHY 8x PoE PSE Management CPU
BCM59121
RJ-45
RJ-45
RJ-45
RJ-45
RJ-45
RJ-45
RJ-45
RJ-45
RJ-45
RJ-45
RJ-45
RJ-45
RJ-45
RJ-45
RJ-45
RJ-45
RJ-45
RJ-45
NOTE: See Table 2 for available interfaces and for the detailed port configuration of the BCM53154/BCM53156/
BCM53158.
The following straps shown in Table 26 are valid for this configuration.
NOTE: The cascaded configuration is stand-alone with no hardware forwarding. This is to prevent the unmanaged code
from execution. Primary and Secondary configuration will be done via the external processor.
The same code as unmanaged is executed by the M7 except it does not enable hardware forwarding.
BCM53154/56/58
CPU Subsystem CM CB Switch Time Sync SYNC/FS
D Arm M7 8051 Packet IPP
A 24K TCM RGMII
Memory
P Program
16K/16K$ EPP High Speed XFI
Memory SerDes (x2) Gateway
NOC
SoC
SPIO GPHY GPHY Low Speed
MFIO I2C MDIO QSPI SerDes (x1) XFI
/1 x4 x4
QSGMII
SPI
WAN
BCM84884 BCM84881 (Cable Modem,
CL45 4x 2.5G PHY 10G PHY xPON, and so
forth)
RJ-45
RJ-45
RJ-45
RJ-45
RJ-45
NOTE: See Table 2 for available interfaces and for the detailed port configuration of the BCM53154/BCM53156/
BCM53158.
CRAL (Coronado Bridge Register Abstraction Layer) (Broadcom) – This is from our Robo 2 switch core common code
library.
OSAL (OS Abstraction Layer) (Broadcom) – This is from our Robo 2 switch core common code library.
FSAL (Forwarding and Switch Abstraction Layer) – This is from our Robo 2 switch core common code library.
TCP/IP Stack (open source) – The current selection for this stack lwIP.
Web services: (licensed) – This will provides a http web server and back-end infrastructure for connecting into Robo 2
switch core.
Flash Application
(AutoXXX)
ROM Application
(Strap, UM config,
and so on)
Avenger
Socket UM+ Customer
Application Application
IP
Raw I2
Avenger Hardware
Other Peripherals
8051 Cortex M7 (for example, Flash/UART)
Robo2 Switch
Gateway SoC
Customer Application
FSAL API
Coronado Bridge PHY Mod
Core Driver Driver
Socket
octal
Linux Kernel
octal
octal
Linux Kernel Module
SPI
External
CB Switch Phys MDIO MDIO
Phys
Avenger Chip (optional)
5.1 Overview
The BCM53154/BCM53156/BCM53158 include the following interfaces:
Copper Interface
Frame Management Port Interface
SerDes Interface
Configuration Pins
Programming Interfaces
LED Interfaces
Digital Voltage Regulator (LDO)
5.2.1 Auto-Negotiation
The BCM53154/BCM53156/BCM53158 negotiate a mode of operation over the copper media using the auto-negotiation
mechanism defined in the IEEE 802.3u and IEEE 802.3ab specifications. When the auto-negotiation function is enabled, the
BCM53154/BCM53156/BCM53158 automatically choose the mode of operation by advertising its abilities and comparing
them with those received from its link partner. The BCM53154/BCM53156/BCM53158 can be configured to advertise the
following modes:
1000BASE-T full-duplex and/or half-duplex.
100BASE-TX full-duplex and/or half-duplex.
10BASE-T full-duplex and/or half-duplex.
The transceiver negotiates with its link partner and chooses the highest common operating speed and duplex mode,
commonly referred to as highest common denominator (HCD). Auto-negotiation can be disabled by software control, but is
required for 1000BASE-T operation.
NOTE: The Frame Management port interface supports only full-duplex mode.
The BCM53154/BCM53156/BCM53158 supports EEE features for external PHYs connected on the IMP and GMII (port5)
only through the GMII interface.
An explanation follows for using the serial interface with an SPI-compatible CPU (“SPI Interface”). Either mode can be
selected with the strap pin. Either mode has access to the same register space.
NOTE: In the BCM53154/BCM53156/BCM53158, the maximum SPI slave SCK frequency can be
25 MHz when the internal clock is 400 MHz and 20 MHz when internal the clock is 200 MHz.
CPOL = 0; SCK
CPOL = 1; SCK
SSN
The CPOL are used to specify the base value of SCK, such as, value of SCK when in an idle state. The CPHA specifies the
edges at which the data needs to be launched and captured. CPHA = 0 means transmitting data on the active to an idle state
transition of SCK and capturing it on idle to active state transition. CPHA = 1 means transmitting data on the idle to active
state transition of SCK and capturing it on active to idle state transition.
The SPI slave in the BCM53154/BCM53156/BCM53158 supports mode 1 (CPOL = 0/CPHA = 1) only on the A1 version. No
other combination is supported. The SCK is low when idle. Transmit data is on the positive edge and receive is on the
negative edge of SCK.
The SPI slave in the BCM53154/BCM53156/BCM53158 supports mode 1 (CPOL = 0/CPHA = 1) and mode 3 (CPOL = 1/
CPHA = 1) on the B0 version. The default configuration is mode 3 support and can change to mode 1 support through a
software override.
5.6.2.1.2 Fields
The following fields are used by SPI in BCM53154/BCM53156/BCM53158.
To avoid confusion, read and write are termed as operations, while a transaction starts with SSN (active) going low and ends
when the SSN goes high. A read or write operation may contain one or more transactions. The first field (in this case byte)
is the command word.
Burst_length = blen[2:0]+1.
One burst equals 4 bytes. Write/read data needs to always be in multiples of 4 bytes.
The total outstanding for both read and write is eight. The burst size limit is eight. In case the SPI slave receives more than
eight requests for either a read or write, all requests after the limit (eight) is reached are aborted and an error status is
reported through the SPI status register.
This only indicates the transaction status. In case of an error, the master can read the SPI status register to find the cause.
The txn_error field is used to indicate that an error has occurred in the fast mode transaction. It is valid only if a transaction
is done, that is, txn_done = 1;
Out of reset, all eight status fields in status a register are in an IDLE status. When a write request is received, the
corresponding status field is updated to an INCOMPLETE status. When the write is done or if an error is reported, the status
is updated to a FINISHED SUCCESSFULLY or a FINISHED WITH ERROR status, respectively. This status is retained until
the Master reads this status, after which it is cleared to IDLE status.
The status is implemented like a shift register. Every new request would result in the status being left-shifted by two (with
INCOMPLETE status). A burst of length N, is treated like N separate writes, and hence, results in the status being right-
shifted by N*2(with INCOMPLETE status). In case the burst write request results in the number of outstanding transactions
crossing the limit of eight, the whole write request is discarded and the write status is not updated, such as, it remains IDLE.
Only the SPI status register flags the error status.
A write operation is considered finished only after the write done status is conveyed to the master. Until the status is given
to the master, the status is retained in the write status register.
N = Burst size
MOSI 8-bit Write 32-bit write
Write request to Nx32-bit write data
COMMAND ADDRESS
Avenger 0 MISO
MOSI
MISO
16-bit write status 16-bit write status 16-bit write status
The status is implemented like a shift register. Every new request results in the status being left-shifted by two (with
INCOMPLETE status). A burst of length N, is treated like N separate reads, and hence, results in the status being right-
shifted by N*2(with INCOMPLETE status). In case the a burst read request results in the number of outstanding transactions
crossing the limit of eight, the whole read request is discarded. The read status is not updated, that is, it remains IDLE. Only
the SPI status register flags the error status.
In this case, the status of the transaction is incomplete in the status field, but the data is read, and the read data given out,
is incorrect. A read operation is considered finished only after the read done status is conveyed to the master and master
has read the data. Until the read data is given to the master, the status is retained in the read status register.
N = Burst size
MOSI 8-bit Write 32-bit write
Write request to Nx32-bit write data
COMMAND ADDRESS
Avenger 0 MISO
MOSI
MISO
16-bit write status 16-bit write status 16-bit write status
Fast mode does not support burst. It should not be done when there are outstanding transactions. If a fast read transaction
is terminated in the middle of a transfer, the read data is lost.
This is the fastest way SPI can be used for a single read.
If a fast mode read is abandoned, the status and data are forever lost. An error is reported only using SPI status register.
MOSI
8-bit fast read 32-bit read
COMMAND ADDRESS
MISO
8-bit NACK Status 8-bit ACK STATUS 32-bit read data
Fast mode does not support burst. It should not be done when there are outstanding transactions. If a fast write transaction
is terminated in the middle of a transfer, the action depends on the field being sent. If the write data is not fully received, the
transaction is aborted unless the write data is received at SPI slave. The transaction happens but the status is lost.
This is the fastest way an SPI can be used for a single write.
If a fast-mode write transaction is aborted, the status is lost. The write may or may not happen on NIC based on the stage
at which the transaction was aborted.
MOSI
8-bit fast read 32-bit read
COMMAND ADDRESS
MISO
8-bit NACK Status 8-bit ACK STATUS 32-bit read data
External
Host
MOSI MISO
SPI-S
MOSI
SPI-S SPI-M
MISO
BCM5315X/BCM5316X_1 BCM5315X/BCM5316X_0
After the write data is sent, the master may choose to start sending another set of address/data in the same transaction.
Out of reset, all eight status fields in the status register are in an IDLE status. When a write request is received, the
corresponding status field is updated to an INCOMPLETE status. When the write is done or if an error is reported, the status
is updated to a FINISHED SUCCESSFULLY or a FINISHED WITH ERROR status, respectively. This status is retained until
the Master reads this status, after which it is cleared to an IDLE status.
The status is implemented like a shift register. Every new request results in the status being left shifted by two (with
INCOMPLETE status). A burst of length N, is treated like N separate writes, and hence, results in status being right shifted
by N*2 (with INCOMPLETE status). In case the a burst write request result in the number of outstanding transactions
crossing the limit of eight, the whole write request is discarded. The write status is not updated, that is, it remains IDLE. Only
the SPI status register flags the error status.
A write operation is considered finished only after the write done status is conveyed to the master. Until the status is given
to the master, the status is retained in the write status register.
N = Burst size
MOSI 8-bit Write 32-bit write
Write request to Nx32-bit write data
COMMAND ADDRESS
Avenger 0 MISO
The status is implemented like a shift register. Every new request results in the status being left shifted by two (with
INCOMPLETE status). A burst of length N is treated like N separate reads, and hence, results in the status being right shifted
by N*2 (with INCOMPLETE status). In case the a burst read request would result in the number of outstanding transactions
crossing the limit of eight, the whole read request is discarded. The read status is not updated, that is, it remains IDLE. Only
the SPI status register flags the error status.
In case the status of the transaction is incomplete in the status field but the data is read, the read data given out is incorrect.
A read operation is considered finished only after the read done status is conveyed to the master and the master has read
the data. Until the read data is given to the master, the status is retained in the read status register.
If the SPI Master has the capability to detect the read status live (without delay), it can choose to continue with the read
status transaction and poll for the status, or if it is known that the status is ready, the master can use the read "read status
+ data" transaction, which can send data in the same transaction.
MOSI
8-bit Burst Read 32-bit read
Request read request cmd ADDRESS
To given Address MISO
MOSI
8-bit read status
Checking COMMAND
read status MISO
16-bit read status
MOSI
8-bit read status
COMMAND
MISO
16-bit read status
MOSI
8-bit read data
Get COMMAND N = Burst Size
Read data MISO
Nx32-bit read data
NOTE: EPROM and QSPI are both muxed in the same pins, therefore these two interfaces are exclusive.
LED Clock
The LED refresh cycle is repeated periodically to refresh the LEDs (see Figure 30 on page 90).
tLEDREF
LED Clock
LED Data
Debug
Mode = GPIO Mode = XFP Management I2C Mode =
Pins 0x01 Direction Notes 0x00 Direction Notes Mode = 0x10 Direction Notes 0x11 Direction
MFIO_0 uart_rxd Input GPIO_0 Inout – GPIO_0 Inout GPIO_0 Inout
MFIO_1 uart_txd Output GPIO_1 Inout – clkout Output Test, debug SDA13 Inout
MFIO_2 clkout Output GPIO_2 Inout – XFP0_Mod_ABS Input XFP0 SDA12 Inout
interface
MFIO_3 pwm0 Output GPIO_3 Inout – XFP0_intr_n Input signals SDA11 Inout
MFIO_7 pwm3 Output Power on default GPIO_7 Inout – XFP0_RST Output SDA_gphy Inout
MFIO_8 FRAME_SY Output (clkout can be GPIO_8 Inout – XFP0_Mod_NR Input SCL Output
NC_O any selected
internal clock, for
MFIO_9 FRAME_SY Input debug and test.) GPIO_9 Inout XFP1_Mod_Desel Output XFP1 GPIO_9 Inout
NC_I interface
MFIO_10 GPHY_MU Output GPIO_10 Inout XFP1_intr_n Input signals GPIO_10 Inout
X_CLK1
MFIO_11 GPHY_MU Output GPIO_11 Inout XFP1_TX_DIS Output GPIO_11 Inout
Not bonded out
X_VALID1
on smallp
MFIO_12 GPIO_12 Input GPIO_12 Inout ackage XFP1_Mod_ABS Input GPIO_12 Inout
NOTE:
1. Each MFIO function can be selected independently using CRU_CRU_MFIO_control_register (0x40200370).
2. The function of words in bold can be muxed to different functions for coexisting UART/I2C and both XFIs control signal problems as Errata (53112-
5315X-5316X-ER102) description (AVR-ER 04 and AVR-ER 05) through register – CRU_CRU_MFIO_control_register_2 bit 31:
MFIO_COMPATIBILITY_MODE in the B0 version.
3. All MFIO pins by default are in debug mode function pin after power on/reset.
Table 37: MFIO Muxing Function in the B0/B1 Chip for the 19x19 mm2 Package (BCM53154)
Power on default
MFIO_2 clkout Output (clkout can be any GPIO_2 Inout – XFP0_Mod_ABS Input SDA12 Inout
MFIO_3 pwm0 Output selected internal GPIO_3 Inout – XFP0_intr_n Input SDA11 Inout
clock, for debug and
MFIO_4 Reset_out Output GPIO_4 Inout – XFP0_TX_DIS Output SDA10 Inout
test.)
XFP0
MFIO_5 pwm1 Output GPIO_5 Inout – XFP0_Mod_DeSel Output SDA9 Inout
interface
MFIO_6 pwm2 Output GPIO_6 Inout – XFP0_RX_LOS Input signals SDA8 Inout
MFIO_7 pwm3 Output GPIO_7 Inout – XFP0_RST Output SDA_gphy Inout
MFIO_8 FRAME_SY Inout GPIO_8 Inout – XFP0_Mod_NR Input SCL Output
NC_O
NOTE:
1. Each MFIO function can be selected independently using CRU_CRU_MFIO_control_register (0x40200370).
2. The function of words in bold can be muxed to different functions for coexisting UART/I2C and both XFIs control signal problems as Errata (53112-
5315X-5316X-ER102) description (AVR-ER 04 and AVR-ER 05) through register – CRU_CRU_MFIO_control_register_2 bit 31:
MFIO_COMPATIBILITY_MODE in the B0 version.
Table 39: MFIO Muxing Function in the B0/B1 Chip for the 13x13 mm2 Package (BCM53156/BCM53158)
Abbreviation Description
XYZ Active-low signal
3T 3.3V tolerant
A Analog pin type
B Bias pin type
CS Continuously sampled
D Digital pin type
DNC Do not connect
GND Ground
I Input
Bi Bidirectional
IPU Input with internal pull-up
O3S Tristated signal
ODO Open-drain output
O Output
PD Internal pull-down
SOR Sample on reset
PWR Power pin supply
PU Internal pull-up
XT Crystal pin type
SS2 I, Pu SPI Slave Select. Active low signal that enables an SPI interface read or write
SS1/swd_jtag_sel O, Pu operation. SS1 is also used as the strap pin for CM7DAP operation.
1’b1 – CM7DAP is in JTAG mode
1’b0 – CM7DAP is in SW mode
MOSI2 I, Pd SPI Master-Out/Slave-In. Input signal which receives control and address
MOSI1/cascading_config1 O, Pd information for the SPI interface, as well as serial data during write operations. MOSI1
is used as the strap pin for cascading_config1. To set the cascading_config[1:0] to
below operation mode.
2’b00 – Avenger standalone; hardware forwarding (unmanaged)
2’b01 – Avenger cascading enabled; primary
2’b10 – Avenger cascading enabled; secondary
2’b11 – Avenger standalone; no hardware forwarding.
NOTE: This signal is tristated during RESET.
JTAG Interface
TMS Bi JTAG Mode Select Input.
TRST_L Bi JTAG Test Reset. Active low. Resets the JTAG controller. This signal must be pulled
low during normal operation.
TCK Bi JTAG Test Clock Input. Clock Input used to synchronize JTAG control and data
transfers. If unused, may be left unconnected.
TDI Bi JTAG Test Data Input. Serial data input to the JTAG TAP Controller. Sampled on the
rising edge of TCK. If unused, may be left unconnected.
TDO Bi JTAG Test Data Output. Serial data output to the JTAG TAP Controller. Sampled on
the rising edge of TCK. If unused, may be left unconnected.
JTCE0, JTCE1 I JTAG Capability; select as shown below:
2b'00: DFT LVTAP
2b'01: AVS
2b'10: 8051 debug
2b'11: M7 DAP
LED Interface
NOTE: LED_[0-7][26][27]: The LED active state is the inverse of the state of strap setting. LED_[8-25]: The LED active state are always
low.)
LED_0/xtal_bypass O, Pd LED_0; LED_0 is also used as the strap pin for xtal bypass configuration.
1’b1 – External clock is driven in XTAL pads
1’b0 – Crystal is present on board to drive the XTAL pads
This strap goes to i_bypass pin of XTAL IP.
LED_1 O, Pd LED1;
LED_2/xtal_freq_sel O, Pd LED2; LED_2 is also used as the strap pin for xtal frequency selection.
1’b1 – 50 MHz XTAL clock
1’b0 – 25 MHz XTAL clock
LED_3/enable_qspi O, Pd LED3;LED_3 is also used as the strap pin for QSPI selection.
1’b1 – Reserved
1’b0 – QSPI is connected or no connection in SPI0
LED_5 O, Pd LED5;
LED_6/mdio_master O, Pu LED6; LED_6 is also used as the strap pin for MDIO mode selection.
1’b1 – Avenger is MDIO master
1’b0 – Avenger is MDIO slave (Partial register access)
This strap pin must set to 1 for chip normal function and full register access.
LED_26_SCLK/ O, Pd LED_26_CLK is the LED Shift Clock. This clock is periodically active to enable
cascading_config0 LEDDATA to shift into external registers.
LED_26_CLK is used as the strap pin for cascading_config0. To set the
cascading_config[1:0] to below operation mode.
2’b00 – Avenger stand-alone; hardware forwarding(unmanaged)
2’b01 – Avenger cascading enabled ; primary
2’b10 – Avenger cascading enabled; secondary
2’b11 – Avenger stand-alone; no hardware forwarding.
LED_27_SDATA/boot_src1 O, Pd LED_27_SDATA is Serial LED Data Output. Serial LED data for all ports is shifted out
when LEDCLK is active. LED_27_SDATA is used as the strap pin for boot source
selection 1. To set the boot source, use the values below.
2’b00 – Reserved
2’b01 – Reserved
2’b10 – M7 boot from Flash
2’b11 – Boot M7 from internal memory
QSPI Interface
SS0 O QUAD-SPI flash
DATA0 Bi QUAD-SPI flash IO0
DATA1 BI QUAD-SPI flash IO1
DATA2 BI QUAD-SPI flash IO2
DATA3 BI QUAD-SPI flash IO3
SCK0 /imp_vol_sel O, Pd QUAD-SPI flash; SCK0 is also used as the strap pin for IMP port voltage selection.
1’b0 – IMP port works at 2.5V
1’b1 – IMP port works at 1.5V
XFI Interface (XFI0 for port 13, XFI1 for port 12)
NOTE: The BCM53156 only has XFI1 Port 12 (Pin# N1,N2,L1 and L2).
XFI_TDP0 O XFI Transmit Serial Data, Port 0. Serial data stream signals normally connected to
XFI_TDN0 O an optical transmitter module. Internal 100 differential termination. Requires external
A/C coupling.
XFI_TDP1 O XFI Transmit Serial Data, Port 1. Serial data stream signals normally connected to
XFI_TDN1 O an optical transmitter module. Internal 100 differential termination. Requires external
A/C coupling.
XFI_RDP0 I XFI Receive Serial Data, Port 0. Serial data stream signals normally connected to an
XFI_RDN0 I optical receiver module. Internally biased with internal differential 100 termination.
XFI_RDP1 I XFI Receive Serial Data, Port 1. Serial data stream signals normally connected to an
XFI_RDN1 I optical receiver module. Internally biased with internal differential 100 termination.
SS2 I, Pu SPI Slave Select. Active low signal that enables an SPI interface read or write
SS1/swd_jtag_sel O, Pu operation. SS1 is also used as the strap pin for CM7DAP operation.
1’b1 – CM7DAP is in JTAG mode
1’b0 – CM7DAP is in SW mode
MISO2/boot_src0 O, Pd SPI Master-In/Slave-Out. Output signal which transmits serial data during an SPI
MISO1 I, Pd interface read operations. MISO2 is used as the strap pin for boot source selection 0.
To set the boot source, use the values below:
2’b00 – Reserved
2’b01 – Reserved
2’b10 – M7 boot from Flash
2’b11 – Boot M7 from internal memory
MOSI2 I, Pd SPI Master-Out/Slave-In. Input signal which receives control and address
MOSI1/cascading_config1 O, Pd information for the SPI interface, as well as serial data during write operations. MOSI1
is used as the strap pin for cascading_config1. To set the cascading_config[1:0] to
below operation mode.
2’b00 – Avenger standalone; hardware forwarding (unmanaged)
2’b01 – Avenger cascading enabled; primary
2’b10 – Avenger cascading enabled; secondary
2’b11 – Avenger standalone; no hardware forwarding.
NOTE: This signal is tristated during RESET.
JTAG Interface
TMS Bi JTAG Mode Select Input.
TRST_L Bi JTAG Test Reset. Active low. Resets the JTAG controller. This signal must be pulled
low during normal operation.
TCK Bi JTAG Test Clock Input. Clock Input used to synchronize JTAG control and data
transfers. If unused, may be left unconnected.
TDI Bi JTAG Test Data Input. Serial data input to the JTAG TAP Controller. Sampled on the
rising edge of TCK. If unused, may be left unconnected.
TDO Bi JTAG Test Data Output. Serial data output to the JTAG TAP Controller. Sampled on
the rising edge of TCK. If unused, may be left unconnected.
LED Interface
NOTE: LED_[0-7][26][27]: The LED active state is the inverse of the state of strap setting. LED_[8-25]: The LED active state are always
low.)
LED_0/xtal_bypass O, Pd LED_0; LED_0 is also used as the strap pin for xtal bypass configuration.
1’b1 – External clock is driven in XTAL pads
1’b0 – Crystal is present on board to drive the XTAL pads
This strap goes to i_bypass pin of XTAL IP.
LED_1 O, Pd LED1;
LED_2/xtal_freq_sel O, Pd LED2; LED_2 is also used as the strap pin for xtal frequency selection.
1’b1 – 50 MHz XTAL clock
1’b0 – 25 MHz XTAL clock
LED_3/enable_qspi O, Pd LED3;LED_3 is also used as the strap pin for QSPI selection.
1’b1 – Reserved
1’b0 – QSPI is connected or no connection in SPI0
LED_4/mdio_vol_sel O, Pd LED4; LED_4 is also used as the strap pin for MDIO voltage selection.
1’b0 – 3.3V mode MDIO
1’b1 – 1.2V mode MDIO
LED_5 O, Pd LED5;
LED_6/mdio_master O, Pu LED6; LED_6 is also used as the strap pin for MDIO mode selection.
1’b1 – Avenger is MDIO master
1’b0 – Avenger is MDIO slave (Partial register access)
This strap pin must set to 1 for chip normal function and full register access.
LED_7/led_parallel_mode O, Pd LED7; LED_7 is also used as the strap pin for LED mode selection.
1’b1 – LED is in parallel mode
1’b0 – LED is in serial mode
This strap selects led26/27 as serial led or parallel led.
LED_8 O, Pd LED8
LED_9 O, Pd LED9
LED_10 O, Pd LED10
LED_11 O, Pd LED11
LED_12 O, Pd LED12
LED_13 O, Pd LED13
LED_14 O, Pd LED14
LED_15 O, Pd LED15
LED_16 O, Pd LED16
LED_17 O, Pd LED17
LED_18 O, Pd LED18
LED_19 O, Pd LED19
LED_20 O, Pd LED20
LED_21 O, Pd LED21
LED_27_SDATA/boot_src1 O, Pd LED_27_SDATA is Serial LED Data Output. Serial LED data for all ports is shifted out
when LEDCLK is active. LED_27_SDATA is used as the strap pin for boot source
selection 1. To set the boot source, use the values below.
2’b00 – Reserved
2’b01 – Reserved
2’b10 – M7 boot from flash
2’b11 – Boot M7 from internal memory
I2C Interface
I2C_SCL OD BSC master clock
I2C_SDA_[13:8] OD BSC master data
QSPI Interface
SS0 O Quad-SPI flash
DATA0 Bi Quad-SPI flash IO0
DATA1 BI Quad-SPI flash IO1
DATA2 BI Quad-SPI flash IO2
DATA3 BI Quad-SPI flash IO3
SCK0/imp_vol_sel O, Pd Quad-SPI flash; SCK0 is also used as the strap pin for IMP port voltage selection.
1’b0 – IMP port works at 2.5V
1’b1 – IMP port works at 1.5V
MFIO
MFIO[15:0] Bi MultiFunctional I/O. For multiple functions and strap pin function for these pins. See
Table 36 on page 91.
Interrupt
INTR_L O, Pu Interrupt. This interrupt pin generates an interrupt based on the configuration in the
Interrupt Enable register. It can be programmed to generate based on link status
change of any port, or to generate an interrupt to a CPU entity when there is a
packet(s) queued in the IMP transmit queue. This signal is active low.
SyncE Interface
SYNCE_REFCLKOUT O Recovered clock outputs from internal source. Can be selected from any of the switch
internal cores. For details on mux selection, refer to 5315X-PG10X, CRU TS Core and
CRU TS Top registers.
SYNCE_REFCLKOUT_VALI O Recovered clock output valid indicators.
D
SYNCE_RECOV_CLK [1:0] I Recovered clock inputs to DPLL function from external source.
Ball No. Ball Name Ball No. Ball Name Ball No. Ball Name Ball No. Ball Name
G16 BVDD3P3_1 J14 VSS L12 VSS N10 VSS
G17 DNP J15 VSS L13 VDDO_3P3 N11 VSS
G18 VSS J16 AVDD3P3_PHY_0 L14 VDDO_3P3 N12 VSS
G19 VSS J17 DNP L15 VSS N13 VSS
G20 VSS J18 LED_5 L16 VSS N14 VSS
G21 VSS J19 LED_7 L17 DNP N15 VSS
G22 DNP J20 LED_6 L18 LED_14 N16 VDDC_1P0
H1 DNP J21 LED_8 L19 LED_15 N17 DNP
H2 VSS J22 LED_9 L20 LED_16 N18 LED_24
H3 DNP K1 VSS L21 LED_17 N19 LED_25
H4 VSS K2 VSS L22 LED_18 N20 VSS
H5 DNP K3 VSS M1 SGMII_RDP3 N21 MFIO15
H6 DNP K4 VSS M2 VSS N22 DNP
H7 VSS K5 XFI_T_R_VDD1P0 M3 SGMII_TDP3 P1 SGMII_TDN2
H8 VSS K6 DNP M4 VSS P2 VSS
H9 VSS K7 XFI1_P_VDD1P0 M5 SGMII_REFCLKP P3 SGMII_RDN2
H10 AVDD3P3_PHY_4 K8 VSS M6 DNP P4 SGMII_TESTP
H11 AVDD3P3_PHY_4 K9 VSS M7 REXT P5 TESTMODE_1
H12 VSS K10 VSS M8 VSS P6 DNP
H13 VSS K11 VSS M9 VSS P7 SGMII_P_VDD1P0
H14 VSS K12 VSS M10 VSS P8 VSS
H15 VSS K13 VSS M11 VSS P9 VSS
H16 AVDD3P3_PHY_0 K14 VSS M12 VSS P10 VSS
H17 DNP K15 VSS M13 VSS P11 VSS
H18 LED_1 K16 VSS M14 VSS P12 VSS
H19 LED_0 K17 DNP M15 VSS P13 VSS
H20 LED_3 K18 LED_10 M16 VDDC_1P0 P14 VSS
H21 LED_2 K19 LED_11 M17 DNP P15 VSS
H22 LED_4 K20 LED_12 M18 LED_19 P16 VSS
J1 DNP K21 LED_13 M19 LED_20 P17 DNP
J2 VSS K22 DNP M20 LED_21 P18 JTCE_0
J3 DNP L1 SGMII_RDN3 M21 LED_22 P19 INTR_L
J4 VSS L2 VSS M22 LED_23 P20 MFIO14
J5 DNP L3 SGMII_TDN3 N1 VSS P21 MFIO13
J6 DNP L4 VSS N2 VSS P22 MFIO12
J7 XFI0_P_VDD1P0 L5 SGMII_REFCLKN N3 VSS R1 SGMII_TDP2
J8 VSS L6 DNP N4 SGMII_TESTN R2 VSS
J9 VSS L7 VSS N5 TESTMODE_0 R3 SGMII_RDP2
J10 VSS L8 VSS N6 DNP R4 VSS
J11 VSS L9 VDDP_1P8 N7 VSS R5 VDDC_1P0
J12 VSS L10 VDDC_1P0 N8 VSS R6 DNP
J13 VSS L11 VSS N9 VSS R7 VSS
Ball No. Ball Name Ball No. Ball Name Ball No. Ball Name Ball No. Ball Name
R8 VSS U6 DNP W4 VSS Y22 IMP_RXD3
R9 VSS U7 DNP W5 PLL_TESTN AA1 Q_SGMII_TDP0
R10 VDDP_1P8 U8 DNP W6 VSS AA2 VSS
R11 VSS U9 DNP W7 LDO_VSENSE AA3 Q_SGMII_RDN0
R12 VSS U10 DNP W8 PVTMON_ADC AA4 VSS
R13 VSS U11 DNP W9 SFP9_TX_DISABLE AA5 XTAL_CML_P
R14 VSS U12 DNP W10 SFP9_LOS AA6 XTAL_AVDD
R15 IMP_VDDP U13 DNP W11 SFP9_MOD_DEF0 AA7 VSS
R16 VDDC_1P0 U14 DNP W12 SFP10_TX_FAULT AA8 VSS
R17 DNP U15 DNP W13 SFP10_TX_DISABL AA9 SYNCIN_1588
R18 JTCE_1 U16 DNP E AA10 SYNCE_RECOV_C
R19 RESET_L U17 DNP W14 MDC LK_VALID0
R20 MFIO11 U18 TDO W15 MDIO AA11 SYNCE_RECOV_C
W16 MISO2 LK0
R21 MFIO10 U19 MFIO5
W17 SS2 AA12 SYNCE_REFCLKO
R22 MFIO9 U20 MFIO4 UT
T1 VSS U21 MFIO3 W18 VSS
Ball No. Ball Name Ball No. Ball Name Ball No. Ball Name
AA13 SFP11_LOS AB4 VSS AB16 DNP
AA14 SFP11_MOD_DEF0 AB5 XTAL_CML_N AB17 SCK1
AA15 DATA1 AB6 XTALN AB18 LED_27_SDATA
AA16 SS0 AB7 XTALP AB19 DNP
AA17 MOSI1 AB8 VSS AB20 IMP_TXD0
AA18 LED_26_SCLK AB9 SYNCOUT_1588 AB21 IMP_TXD2
AA19 IMP_TXEN AB10 DNP AB22 VSS
AA20 IMP_TXD1 AB11 SYNCE_RECOV_C
AA21 IMP_TXD3 LK1
AA22 IMP_TXCLK AB12 SYNCE_RECOV_C
LK_VALID1
AB1 VSS
AB13 DNP
AB2 VSS
AB14 SCK0
AB3 Q_SGMII_RDP0
AB15 DATA0
Ball No. Ball Name Ball No. Ball Name Ball No. Ball Name Ball No. Ball Name
Y8 PVTMON_DAC R1 SGMII_TDP2 B6 DNP C13 DNP
AA3 Q_SGMII_RDN0 M3 SGMII_TDP3 C6 DNP D13 DNP
AB3 Q_SGMII_RDP0 N4 SGMII_TESTN C8 DNP N5 TESTMODE_0
Y1 Q_SGMII_TDN0 P4 SGMII_TESTP D9 DNP P5 TESTMODE_1
AA1 Q_SGMII_TDP0 AA16 SS0 C9 DNP T5 TESTMODE_2
R19 RESET_L Y18 SS1 B9 DNP T7 TESTMODE_3
M7 REXT W17 SS2 A9 DNP T9 TESTMODE_4
AB14 SCK0 AA10 SYNCE_RECOV_CL A12 DNP V20 TMS
AB17 SCK1 K_VALID0 B12 DNP V19 TRST_L
V16 SCK2 AB12 SYNCE_RECOV_CL C12 DNP G7 VDDC_1P0
K_VALID1
Y9 SFP10_LOS D12 DNP G8 VDDC_1P0
AA11 SYNCE_RECOV_CL
Y10 SFP10_MOD_DEF0 K0 U18 TDO G13 VDDC_1P0
W13 SFP10_TX_DISABL AB11 SYNCE_RECOV_CL A16 TDP_PHY0_CH0 G14 VDDC_1P0
E K1 B16 TDP_PHY0_CH1 L10 VDDC_1P0
W12 SFP10_TX_FAULT AA12 SYNCE_REFCLKOU C16 TDP_PHY0_CH2 M16 VDDC_1P0
AA13 SFP11_LOS T
D16 TDP_PHY0_CH3 N16 VDDC_1P0
AA14 SFP11_MOD_DEF0 Y12 SYNCE_REFCLKOU
D19 TDP_PHY1_CH0 R5 VDDC_1P0
T_VALID
Y13 SFP11_TX_DISABL C19 TDP_PHY1_CH1 R16 VDDC_1P0
E AA9 SYNCIN_1588
B19 TDP_PHY1_CH2 T11 VDDC_1P0
Y11 SFP11_TX_FAULT AB9 SYNCOUT_1588
A19 TDP_PHY1_CH3 T12 VDDC_1P0
V11 SFP8_LOS V18 TCK
A21 TDP_PHY2_CH0 T13 VDDC_1P0
V12 SFP8_MOD_DEF0 T18 TDI
B22 TDP_PHY2_CH1 T14 VDDC_1P0
V10 SFP8_TX_DISABLE A15 TDN_PHY0_CH0
C22 TDP_PHY2_CH2 T16 VDDC_1P0
V9 SFP8_TX_FAULT B15 TDN_PHY0_CH1
D22 TDP_PHY2_CH3 L13 VDDO_3P3
W10 SFP9_LOS C15 TDN_PHY0_CH2
E22 TDP_PHY3_CH0 L14 VDDO_3P3
W11 SFP9_MOD_DEF0 D15 TDN_PHY0_CH3
F21 TDP_PHY3_CH1 L9 VDDP_1P8
W9 SFP9_TX_DISABLE D18 TDN_PHY1_CH0
F20 TDP_PHY3_CH2 R10 VDDP_1P8
V13 SFP9_TX_FAULT C18 TDN_PHY1_CH1
F19 TDP_PHY3_CH3 A1 VSS
P7 SGMII_P_VDD1P0 B18 TDN_PHY1_CH2
C3 TDP_PHY4_CH0 A5 VSS
T3 SGMII_R_VDD1P0 A18 TDN_PHY1_CH3
C2 DNP A22 VSS
V3 SGMII_RDN1 A20 TDN_PHY2_CH0
B2 DNP B11 VSS
P3 SGMII_RDN2 B21 TDN_PHY2_CH1
A2 DNP B14 VSS
L1 SGMII_RDN3 C21 TDN_PHY2_CH2
A7 DNP B17 VSS
W3 SGMII_RDP1 D21 TDN_PHY2_CH3
B7 DNP B20 VSS
R3 SGMII_RDP2 F22 TDN_PHY3_CH0
C7 DNP C14 VSS
M1 SGMII_RDP3 E21 TDN_PHY3_CH1
B8 DNP D1 VSS
L5 SGMII_REFCLKN E20 TDN_PHY3_CH2
D10 DNP D2 VSS
M5 SGMII_REFCLKP E19 TDN_PHY3_CH3
C10 DNP D3 VSS
T2 SGMII_T_VDD1P0 B3 TDN_PHY4_CH0
B10 DNP D6 VSS
U1 SGMII_TDN1 C1 DNP
A10 DNP D8 VSS
P1 SGMII_TDN2 B1 DNP
A13 DNP D11 VSS
L3 SGMII_TDN3 A3 DNP
B13 DNP D14 VSS
V1 SGMII_TDP1 A6 DNP
Ball No. Ball Name Ball No. Ball Name Ball No. Ball Name Ball No. Ball Name
D17 VSS J12 VSS N3 VSS R11 VSS
D20 VSS J13 VSS N7 VSS R12 VSS
E2 VSS J14 VSS N8 VSS R13 VSS
E4 VSS J15 VSS N9 VSS R14 VSS
E8 VSS K1 VSS N10 VSS T1 VSS
E10 VSS K2 VSS N11 VSS T4 VSS
E13 VSS K3 VSS N12 VSS T10 VSS
E14 VSS K4 VSS N13 VSS U2 VSS
E15 VSS K8 VSS N14 VSS U3 VSS
E16 VSS K9 VSS N15 VSS U4 VSS
F2 VSS K10 VSS N20 VSS V2 VSS
F4 VSS K11 VSS P2 VSS V4 VSS
F6 VSS K12 VSS P8 VSS V6 VSS
F18 VSS K13 VSS P9 VSS W1 VSS
G1 VSS K14 VSS P10 VSS W2 VSS
G2 VSS K15 VSS P11 VSS W4 VSS
G3 VSS K16 VSS P12 VSS W6 VSS
G4 VSS L2 VSS P13 VSS W18 VSS
G5 VSS L4 VSS P14 VSS Y2 VSS
G9 VSS L7 VSS P15 VSS Y3 VSS
G11 VSS L8 VSS P16 VSS Y4 VSS
G12 VSS L11 VSS R2 VSS Y6 VSS
G15 VSS L12 VSS R4 VSS Y7 VSS
G18 VSS L15 VSS R7 VSS Y14 VSS
G19 VSS L16 VSS R8 VSS AA2 VSS
G20 VSS M2 VSS R9 VSS AA4 VSS
G21 VSS M4 VSS
H2 VSS M8 VSS
H4 VSS M9 VSS
H7 VSS M10 VSS
H8 VSS M11 VSS
H9 VSS M12 VSS
H12 VSS M13 VSS
H13 VSS M14 VSS
H14 VSS M15 VSS
H15 VSS N1 VSS
J2 VSS N2 VSS
J4 VSS
J8 VSS
J9 VSS
J10 VSS
J11 VSS
Ball No. Ball Name Ball No. Ball Name Ball No. Ball Name Ball No. Ball Name
C7 VSS E11 DNP G15 DNP J19 TDN_PHY3_CH1
C8 VSS E12 DNP G16 LED_0 K1 VSS
C9 VSS E13 DNP G17 TDP_PHY2_CH3 K2 VSS
C10 VSS E14 DNP G18 TDN_PHY2_CH2 K3 VSS
C11 VSS E15 DNP G19 TDP_PHY2_CH2 K4 VSS
C12 VSS E16 TDN_PHY2_CH1 H1 VSS K5 DNP
C13 VSS E17 TDP_PHY2_CH1 H2 VSS K6 VSS
C14 AVDD3P3_PHY_0 E18 TDP_PHY2_CH0 H3 VSS K7 VSS
C15 VSS E19 TDN_PHY2_CH0 H4 XFI_TESTN K8 VSS
C16 PHY_RDC1 F1 VSS H5 DNP K9 VSS
C17 TDP_PHY1_CH1 F2 VSS H6 VSS K10 VSS
C18 TDN_PHY1_CH1 F3 VSS H7 VSS K11 VSS
C19 TDP_PHY1_CH2 F4 XFI_P_VDD1P0 H8 VSS K12 VSS
D1 DNP F5 DNP H9 VSS K13 VSS
D2 TDN_PHY4_CH1 F6 VDDC_1P0 H10 VSS K14 VSS
D3 TDP_PHY4_CH1 F7 VSS H11 VSS K15 DNP
D4 VSS F8 VDDC_1P0 H12 VSS K16 LED_3
D5 BVDD3P3_2 F9 VSS H13 VSS K17 TDP_PHY3_CH0
D6 VSS F10 VDDC_1P0 H14 LED_6 K18 TDN_PHY3_CH0
D7 VSS F11 VDDC_1P0 H15 DNP K19 TDP_PHY3_CH1
D8 PHYPLL_VDD1P0_2 F12 VDDC_1P0 H16 LED_1 L1 XFI_TDN1
D9 AVDD1P0_PHY_4 F13 VSS H17 TDN_PHY3_CH3 L2 XFI_TDP1
D10 VSS F14 VSS H18 TDP_PHY3_CH3 L3 VSS
D11 AVDD1P0_PHY_0 F15 DNP H19 DNP L4 XFI_REFCLKP
D12 PHYPLL_VDD1P0_1 F16 VSS J1 XFI_RDN0 L5 DNP
D13 VSS F17 TDN_PHY2_CH3 J2 XFI_RDP0 L6 VDDP_1P8
D14 BVDD3P3_1 F18 DNP J3 VSS L7 VSS
D15 AVDD3P3_PHY_0 F19 DNP J4 XFI_R_VDD1P0 L8 VSS
D16 VSS G1 XFI_TDP0 J5 DNP L9 VSS
D17 TDN_PHY1_CH0 G2 XFI_TDN0 J6 VSS L10 VSS
D18 TDP_PHY1_CH0 G3 VSS J7 VSS L11 VSS
D19 DNP G4 XFI_TESTP J8 VSS L12 VSS
E1 TDN_PHY4_CH0 G5 DNP J9 VSS L13 VSS
E2 TDP_PHY4_CH0 G6 VDDC_1P0 J10 VSS L14 VDDO_3P3
E3 VSS G7 VSS J11 VSS L15 DNP
E4 VSS G8 VSS J12 VSS L16 LED_4
E5 VSS G9 VSS J13 VSS L17 VSS
E6 DNP G10 VSS J14 VSS L18 VSS
E7 DNP G11 VSS J15 DNP L19 DNP
E8 DNP G12 VSS J16 LED_2 M1 VSS
E9 DNP G13 VSS J17 TDN_PHY3_CH2 M2 VSS
E10 DNP G14 LED_5 J18 TDP_PHY3_CH2 M3 VSS
Ball No. Ball Name Ball No. Ball Name Ball No. Ball Name Ball No. Ball Name
M4 XFI_REFCLKN P8 VDDC_1P0 T12 VDDC_1P0 U17 IMP_RXD3
M5 DNP P9 VDDC_1P0 T13 VDDC_1P0 U18 IMP_TXD2
M6 VDDP_1P8 P10 VDDC_1P0 T14 TDI U19 DNP
M7 VSS P11 VSS T15 TMS V1 VSS
M8 VSS P12 JTCE_0 T16 RESET_L V2 VSS
M9 VSS P13 JTCE_1 T17 IMP_RXDV V3 VSS
M10 VSS P14 VSS T18 IMP_TXD3 V4 XTAL_CML_N
M11 VSS P15 DNP T19 IMP_TXCLK V5 VSS
M12 VSS P16 MFIO6 U1 QSGMII_TDN0 V6 VSS
M13 VSS P17 MFIO0 U2 QSGMII_TDP0 V7 PVTMON_DAC
M14 VDDO_3P3 P18 MFIO1 U3 VSS V8 DATA0
M15 DNP P19 DNP U4 XTAL_CML_P V9 DATA2
M16 VDDC_1P0 R1 QSGMII_RDP0 U5 PLL_AVDD V10 SCK0
M17 MFIO8 R2 QSGMII_RDN0 U6 XTAL_AVDD V11 SS1
M18 MFIO4 R3 TESTMODE_1 U7 PVTMON_ADC
M19 MFIO3 R4 SGMII_R_VDD1P0 U8 TESTMODE_4
N1 XFI_RDP1 R5 DNP U9 MDC
N2 XFI_RDN1 R6 DNP U10 MDIO
N3 VSS R7 DNP U11 MOSI1
N4 TESTMODE_0 R8 DNP U12 MOSI2
N5 DNP R9 DNP U13 SS2
N6 VSS R10 DNP U14 TDO
N7 VSS R11 DNP U15 TCK
N8 VSS R12 DNP U16 IMP_RXD1
N9 VSS R13 DNP
N10 VSS R14 DNP
N11 VSS R15 DNP
N12 VSS R16 INTR_L
N13 VSS R17 IMP_VDDO
N14 VSS R18 IMP_VDDP
N15 DNP R19 IMP_VOL_REF
N16 VDDC_1P0 T1 VSS
N17 MFIO7 T2 VSS
N18 MFIO5 T3 TESTMODE_2
N19 MFIO2 T4 TESTMODE_3
P1 VSS T5 VSS
P2 VSS T6 LDO_VOUT
P3 VSS T7 LDO_AVDD
P4 SGMII_P_VDD1P0 T8 VSS
P5 DNP T9 VDDC_1P0
P6 REXT T10 MDIO_VDDO
P7 VSS T11 MDIO_VDDP
Ball No. Ball Name Ball No. Ball Name Ball No. Ball Name Ball No. Ball Name
A11 TDN_PHY7_CH2 F6 VDDC_1P0 F13 VSS H10 VSS
A10 TDN_PHY7_CH3 F8 VDDC_1P0 F14 VSS H11 VSS
U14 TDO F10 VDDC_1P0 F16 VSS H12 VSS
A14 TDP_PHY0_CH0 F11 VDDC_1P0 G3 VSS H13 VSS
A15 TDP_PHY0_CH1 F12 VDDC_1P0 G7 VSS J3 VSS
A16 TDP_PHY0_CH2 G6 VDDC_1P0 G8 VSS J6 VSS
B17 TDP_PHY0_CH3 M16 VDDC_1P0 G9 VSS J7 VSS
D18 TDP_PHY1_CH0 N16 VDDC_1P0 G10 VSS J8 VSS
C17 TDP_PHY1_CH1 P8 VDDC_1P0 G11 VSS J9 VSS
C19 TDP_PHY1_CH2 P9 VDDC_1P0 G12 VSS J10 VSS
A18 TDP_PHY1_CH3 P10 VDDC_1P0 G13 VSS J11 VSS
E18 TDP_PHY2_CH0 T9 VDDC_1P0 H1 VSS J12 VSS
E17 TDP_PHY2_CH1 T12 VDDC_1P0 H2 VSS J13 VSS
G19 TDP_PHY2_CH2 T13 VDDC_1P0 H3 VSS J14 VSS
G17 TDP_PHY2_CH3 L14 VDDO_3P3 H6 VSS K1 VSS
K17 TDP_PHY3_CH0 M14 VDDO_3P3 H7 VSS K2 VSS
K19 TDP_PHY3_CH1 L6 VDDP_1P8 H8 VSS K3 VSS
J18 TDP_PHY3_CH2 M6 VDDP_1P8 H9 VSS K4 VSS
H18 TDP_PHY3_CH3 A1 VSS K6 VSS
E2 TDP_PHY4_CH0 A19 VSS K7 VSS
D3 TDP_PHY4_CH1 C7 VSS K8 VSS
C3 TDP_PHY4_CH2 C8 VSS K9 VSS
C1 TDP_PHY4_CH3 C9 VSS K10 VSS
B5 TDP_PHY5_CH0 C10 VSS K11 VSS
B4 TDP_PHY5_CH1 C11 VSS K12 VSS
B3 TDP_PHY5_CH2 C12 VSS K13 VSS
B2 TDP_PHY5_CH3 C13 VSS K14 VSS
A6 TDP_PHY6_CH0 C15 VSS L3 VSS
A7 TDP_PHY6_CH1 D4 VSS L7 VSS
A8 TDP_PHY6_CH2 D6 VSS L8 VSS
A9 TDP_PHY6_CH3 D7 VSS L9 VSS
B13 TDP_PHY7_CH0 D10 VSS L10 VSS
B12 TDP_PHY7_CH1 D13 VSS L11 VSS
B11 TDP_PHY7_CH2 D16 VSS
B10 TDP_PHY7_CH3 E3 VSS
N4 TESTMODE_0 E4 VSS
R3 TESTMODE_1 E5 VSS
T3 TESTMODE_2 F1 VSS
T4 TESTMODE_3 F2 VSS
U8 TESTMODE_4 F3 VSS
T15 TMS F7 VSS
V14 TRST_L F9 VSS
I2C_SDA I2C_SDA PLL_TVC TDN_PHY TDP_PHY PHY_RD TDN_PHY TDP_PHY PLL_TVC TDN_PHY TDP_PHY
C DNP DNP DNP DNP DNP DNP DNP DNP DNP DNP VSS C
11 12 O_2 0_CH2 0_CH2 C1 1_CH1 1_CH1 O_1 2_CH2 2_CH2
PHY_PLL PHY_PLL
I2C_SDA PHY_RD AVDD1P0 AVDD1P0 TDN_PHY TDN_PHY TDN_PHY TDP_PHY
E DNP VSS DNP VSS DNP DNP VSS VSS _VDD1P0 VSS VSS VSS VSS _VDD1P0 E
8 C2 _PHY_4 _PHY_0 3_CH3 3_CH2 3_CH1 3_CH0
_2 _1
XFI0_P_V AVDD3P3
J DNP VSS DNP VSS DNP DNP VSS VSS VSS VSS VSS VSS VSS VSS DNP LED_5 LED_7 LED_6 LED_8 LED_9 J
DD1P0 _PHY_0
XFI_T_R_ XFI1_P_V
K VSS VSS VSS VSS DNP VSS VSS VSS VSS VSS VSS VSS VSS VSS DNP LED_10 LED_11 LED_12 LED_13 DNP K
VDD1P0 DD1P0
SGMII_R VDDC_1P
M DNP VSS DNP VSS DNP REXT VSS VSS VSS VSS VSS VSS VSS VSS DNP LED_19 LED_20 LED_21 LED_22 LED_23 M
EFCLKP 0
SGMII_T_ SGMII_R_ TESTMO TESTMO PLL_AVD TESTMO VDDC_1P VDDC_1P VDDC_1P VDDC_1P IMP_VDD VDDC_1P
T VSS VSS DNP VSS DNP TDI MFIO8 MFIO7 MFIO6 DNP T
VDD1P0 VDD1P0 DE_2 DE_3 D DE_4 0 0 0 0 O 0
LCPLL_F
U DNP VSS VSS VSS DNP DNP DNP DNP DNP DNP DNP DNP DNP DNP DNP DNP TDO MFIO5 MFIO4 MFIO3 MFIO2 U
REFN
SFP8_TX
LCPLL_F LDO_AV LDO_VO SFP8_TX SFP8_LO SFP8_MO SFP9_TX MDIO_VD MDIO_VD
V DNP VSS DNP VSS VSS _DISABL SCK2 MOSI2 TCK TRST_L TMS MFIO1 MFIO0 V
REFP DD UT _FAULT S D_DEF0 _FAULT DP DO
E
SFP9_TX SFP10_T
PLL_TES LDO_VS PVTMON SFP9_LO SFP9_MO SFP10_T IMP_VOL IMP_RXD IMP_RXC
W VSS VSS DNP VSS VSS _DISABL X_DISAB MDC MDIO MISO2 SS2 VSS DNP W
TN ENSE _ADC S D_DEF0 X_FAULT _REF 0 LK
E LE
SYNCE_
SFP11_T
Q_SGMII_ PLL_TES PVTMON SFP10_L SFP10_M SFP11_T REFCLK IMP_RXD IMP_RXD IMP_RXD IMP_RXD
Y VSS VSS VSS VSS VSS X_DISAB VSS DATA3 DATA2 MISO1 SS1 Y
TDN0 TP _DAC OS OD_DEF0 X_FAULT OUT_VAL V 1 2 3
LE
ID
SYNCE_
SYNCE_ SYNCE_
Q_SGMII_ Q_SGMII_ XTAL_CM XTAL_AV SYNCIN_ RECOV_ SFP11_L SFP11_M LED_26_ IMP_TXE IMP_TXD IMP_TXD IMP_TXC
AA VSS VSS VSS VSS RECOV_ REFCLK DATA1 SS0 MOSI1 AA
TDP0 RDN0 L_P DD 1588 CLK_VAL OS OD_DEF0 SCLK N 1 3 LK
CLK0 OUT
ID0
SYNCE_
SYNCE_
Q_SGMII_ XTAL_CM SYNCOU RECOV_ LED_27_ IMP_TXD IMP_TXD
AB VSS VSS VSS XTALN XTALP VSS DNP RECOV_ DNP SCK0 DATA0 DNP SCK1 DNP VSS AB
RDP0 L_N T_1588 CLK_VAL SDATA 0 2
CLK1
ID1
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19
TDN_PHY TDN_PHY TDN_PHY TDN_PHY TDP_PHY TDP_PHY TDP_PHY TDP_PHY TDN_PHY TDN_PHY TDN_PHY TDN_PHY TDP_PHY TDP_PHY TDP_PHY TDN_PHY TDP_PHY
A VSS VSS A
5_CH3 5_CH2 5_CH1 5_CH0 6_CH0 6_CH1 6_CH2 6_CH3 7_CH3 7_CH2 7_CH1 7_CH0 0_CH0 0_CH1 0_CH2 0_CH3 1_CH3
TDN_PHY TDP_PHY TDP_PHY TDP_PHY TDP_PHY TDN_PHY TDN_PHY TDN_PHY TDN_PHY TDP_PHY TDP_PHY TDP_PHY TDP_PHY TDN_PHY TDN_PHY TDN_PHY TDP_PHY TDN_PHY TDN_PHY
B B
4_CH3 5_CH3 5_CH2 5_CH1 5_CH0 6_CH0 6_CH1 6_CH2 6_CH3 7_CH3 7_CH2 7_CH1 7_CH0 0_CH0 0_CH1 0_CH2 0_CH3 1_CH3 1_CH2
TDP_PHY TDN_PHY TDP_PHY PHY_RDC AVDD3P3 AVDD3P3 AVDD3P3 PHY_RDC TDP_PHY TDN_PHY TDP_PHY
C VSS VSS VSS VSS VSS VSS VSS VSS C
4_CH3 4_CH2 4_CH2 2 _PHY_4 _PHY_4 _PHY_0 1 1_CH1 1_CH1 1_CH2
PHYPLL_ PHYPLL_
TDN_PHY TDP_PHY BVDD3P3 AVDD1P0 AVDD1P0 BVDD3P3 AVDD3P3 TDN_PHY TDP_PHY
D DNP VSS VSS VSS VDD1P0_ VSS VDD1P0_ VSS VSS DNP D
4_CH1 4_CH1 _2 _PHY_4 _PHY_0 _1 _PHY_0 1_CH0 1_CH0
2 1
TESTMO TESTMO LDO_VO LDO_AVD VDDC_1P MDIO_VD MDIO_VD VDDC_1P VDDC_1P IMP_RXD IMP_TXD IMP_TXC
T VSS VSS VSS VSS TDI TMS RESET_L T
DE_2 DE_3 UT D 0 DO DP 0 0 V 3 LK
QSGMII_T QSGMII_T XTAL_CM PLL_AVD XTAL_AV PVTMON TESTMO IMP_RXD IMP_RXD IMP_TXD
U VSS MDC MDIO MOSI1 MOSI2 SS2 TDO TCK DNP U
DN0 DP0 L_P D DD _ADC DE_4 1 3 2
LED_26_
XTAL_CM PVTMON IMP_RXD IMP_RXD IMP_TXD IMP_TXD
V VSS VSS VSS VSS VSS DATA0 DATA2 SCK0 SS1 SCK1 MISO2 TRST_L SLED_CL V
L_N _DAC 0 2 1 0
K
LED_27_
PLL_TES PLL_TES IMP_RXC IMP_TXE
W VSS VSS XTALN XTALP VSS DATA1 DATA3 DNP SS0 MISO1 DNP SCK2 SLED_DA DNP VSS W
TN TP LK N
TA
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19
NOTE: The voltage tolerances are ±3% on 1.0V/1.05V and ±5% on all other supplies. The 1.0V ±3% does not apply to
VDDC_1P0 (AVS). The actual voltage level and tolerance on the VDDC_1P0 supply is controlled by AVS. AVS is
required for the device to operate properly and the voltage range is 0.85V to 1.10V.
Y2
Y1
Differential
Applitude 0
(mV)p-p
–Y1
–Y2
X1 1–X1
Normalized Bit Time (UI)
t210
3.3V t204
t201 t203
XTAL_I
(25 MHz)
t202
t207 t208
RESET_L
Configuration
Valid
Strap Signals
GTX_CLK
(at source)
TXD [3:0]
TX_CTL
t201 t201
NOTE: Advanced timing extracted from statistical data. It may or may not reflect the true timing of the device.
NOTE: The output timing in 10/100M operation is always as specified in the delayed mode.
GTX_CLK
(internal)
Delayed
GTX_CLK
(actual output
at source)
t201D t202D
TXD [3:0]
TX_CTRL
t202D
t201D
NOTE: Advanced timing extracted from statistical data. It may or may not reflect the true timing of the device.
RXCLK
(internal)
RXCLK
(actual )
t301 t302
t302 t301
RXD[3:0]
RX_CTRL
NOTE: Advanced timing extracted from statistical data. It may or may not reflect the true timing of the device.
RXCLK
(internal)
RXCLK
(actual )
t301 t302
t302 t301
RXD[3:0]
RX_CTRL
NOTE: Advanced timing extracted from statistical data. It may or may not reflect the true timing of the device.
t401 t402
MDC
t402
t403
MDIO
(Input)
t404
MDIO
(Output)
t405
NOTE: Advanced timing extracted from statistical data. It may or may not reflect the true timing of the device.
t401 t402
MDC
t402
t403
MDIO
(Into PHY)
t404
t405m
MDIO
(From PHY)
SFLASH_CS_L
T1 Tp
SFLASH_CLK
T2 T3
SFLASH_IO3~0
(Read) Din
T4
SFLASH_IO3~0
(Write) Dout
t601
t603 t604
t602
SCK
SS
MISO
t605 t606
MOSI
t601
t603 t604
t602
SCK
SS
MOSI
t605 t606
MISO
t601
t604
t603 t602
SCK
SS
MISO
t605 t606
MOSI
t601
t604
t603 t602
SCK
SS
MOSI
t605 t606
MISO
TCYCLE
50% VDD
JTAG_CLK
TSU TH
JTAG_TDI VALID
TOD
JTAG_TDO VALID
BSC_SDA
TBF
TSTART-H TSU T TSTART-SU
BSC_SCL
TLOW THIGH
TSTOP-SU
TF TR
TCYCLE
tLEDCYC
tLEDHI tLEDLOW
LEDClk
tSU tHOLD
LEDData
tLEDREF
LEDClk
LEDData
TDp
TDn
RDp
V809
RDn
T806
Table 78: 13x13 mm2 Package with External Heat Sink 35x35x15 mm3, 2s2p PCB, TA = 50°C, P = 4.566W
Device power dissipation, P (W) 4.566
Ambient air temperature, TA (°C) 50.0
θJA in still air (°C/W) 13.74
θJB (°C/W) 10.68
θJC (°C/W) 4.25
3
2s2p board, 35x5x15 mm estHS
Package Thermal Performance Curve
10.2 BCM53154 Package with Heat Sink Package with Heat Sink
(45×45×15 mm3)
Table 79: 19x19 mm2 Package with External Heat Sink 45x45x15 mm3, 2s2p PCB, TA = 50°C, P = 4.651W
Device power dissipation, P (W) TBD
Ambient air temperature, TA (°C) TBD
θJA in still air (°C/W) with external heat sink TBD
θJB/AVG (°C/W) TBD
θJC (°C/W) TBD
3
2s2p board, 45x45x15 mm estHS
Package Thermal Performance Curve
Revision History
Added:
BCM53154 Package with Heat Sink Package with Heat Sink (45×45×15 mm3)
Added:
Electrical Characteristics
The term “Broadcom” refers to Broadcom Inc. and/or its subsidiaries. For more information, please visit www.broadcom.com.
Broadcom reserves the right to make changes without further notice to any products or data herein to improve reliability,
function, or design. Information furnished by Broadcom is believed to be accurate and reliable. However, Broadcom does
not assume any liability arising out of the application or use of this information, nor the application or use of any product or
circuit described herein, neither does it convey any license under its patent rights nor the rights of others.