Internship Summary Presentation
Dongwei Mei
Electrical and Computer Engineering, WPI
Broadcom Corporation
Dec 2012
CONTENTS
Introduction
About Broadcom
Overview of the Internship
Linked List Scheduler(LLS)
Modeling
Background
Theory of Operation
Key Components
LLS Model GUI
Future work
Split Lot Test
Background
Test Environment and Tools
My Role in the Project
Conclusion
What was achieved?
What did I learn?
Internship <-> school
Future
As an engineer
My Plans
Reference
Introduction
About Broadcom
2011 Net Revenue of $7.39 Billion
Founded in 1991
Initial Public Offering in April 1998
(NASDAQ-BRCM)
A Global Leader in Semiconductors
for Wired and Wireless
Communications
Broad IP Portfolio with More than
17,800 U.S. and Foreign Patents and
Applications
One of the Largest Volume Fabless
Semiconductor Suppliers
~11,200 Employees Worldwide
Broadcom Products
OVERVIEW OF THE INTERNSHIP
BCM Andover Office (Infrastructure and
Network Group)
From Jul 23, 2012 to Dec 21, 2012
Summer: Full-time
Fall: Part-time
Major 2 Projects:
Linked List Scheduler
Split Lot Test
Linked List scheduler(LLS)
Linked List Scheduler(LLS)
What is MMU?
The Memory Management Unit (MMU)
is capable of providing line rate
buffering across all packet sizes for
100Gbps of Ethernet traffic.
It all started with queuing. A
network processor has a certain
amount of processing ability. If the
rate of the coming packages reached
a point, any packages that arrives at
the chip has to go through so waiting
time. During the waiting time, they
resident inside the memory and we
have to figure out a way to deal with
these waiting packages and make
sure everyone got the service they
deserve. So here we have the MMU.
Linked List Scheduler(LLS)
What is LLS?
The Linked List Scheduler design operates as part of the larger MMU(Memory
Management Unit) design that includes the Queuing and Payload Storage components.
is responsible for selecting which queue is next to transmit a packet within each port,
applying strict priority, minimum guarantees, weighted fairness and max shaping
scheduling policies.
Linked List Scheduler(LLS)
Modeling Of LLS
The LLS modeling exists to provide an easy
path to visualize the settings of the LLS
within all devices that contain the LLS
(typically found inside the MMU of XGS
devices when present).
Linked List Scheduler(LLS)
Theory Of Operation
mem_dump
Collects the raw
memory
Ascii_tree
Convert into a human
readable file
Tree to CSV
Convert into a machine
readable file
Linked List Scheduler(LLS)
Demonstrations
Linked List Scheduler(LLS)
Bringing Up the GUI
Linked List Scheduler(LLS)
Navigate the Tree
Linked List Scheduler(LLS)
Error Check:
Error Type
Note
1
Not Leading to an actual Port
Finished
2
EF and WERR cannot be configured at the
same node
Finished
3
L2 nodes
must be Strict Pri if marked as EF
Finished
4
In a group of queues
that lead to l1, only one of
the queues in the set is allowed to be EF
Finished
Linked List Scheduler(LLS)
Supported Device
Device
name
Note
1
Triumph
3
Fully Supported
2
Katana
Fully Supported
3
Katana 2
Fully Supported
4
Trident 2
Started memory
dump
Linked List Scheduler(LLS)
Future Work
Allow the user to change the parameters
and see impact on traffic
Reverse Function
Support more devices and scheduling
features
Split Lot Test
Split Lot Test
Background
Fabrication
Parameters change
during manufacturing
Corners: FF, FS, SF,
SS, TT
Temperature: -40 ºC
~ 110 ºC
Voltage: -3% ~ + 3%
Split Lot Test
Test Environment
Split Lot Test
My contributions to the test
Executed 65% Split Lot tests
Developed a TCL script that automates the
Thermo Stream
Developed a test case monitoring power
consumption for FF parts in high Voltage
Maintained a database for test results
Conclusion
Conclusions
What was ultimately achieved for the
sponsor?
A set of tools: feed in memory dump, gives out
the graphic tree.
Currently EA1. Aimed to have a Release Version
1.0 by the end of this year
Targeted user: Application Engineers. Try to
give to customers in the future
Conclusions
What did I learn from the internship?
Programming language: Python, TCL, Perl
Unix general operation
Perforce source code control
Jira issue tracking
Confluence wiki
Conclusions
How will the internship impact my academic
learning at WPI?
Motivation
Better choice in course selecting, skill
developing and tool set learning
Management
Balance life, work and study
Multi-skills
Programming language, communicational skills,
problem solving
Future
Future
How will the internship prepare me for my
future career as an engineer?
Inspiration
Engineers are like designers
Design is Boundless
Co-operation
Being capable and willing to work with others
Education
Learning curve is steep
Future
What are my next steps?
A Future engineer
Some of my thoughts…
Take advantage of our hallmark
Being proud of a WPI student
Research: Turn money into Technology /
Innovation: Turn technology into money
REFERENCE
[1] Fairhusrt, Mark. Linked List Scheduler UArch. Broadcom Corporation. Rev 0.6, Feb 21,
2012
[2] Littlemore, ken. Katana LLS Scheduler Observations / Recommendations. Broadcom
Corporation. Rev 0.13, Jul 18, 2012
[3] Jing, Ding. Triumph3 MMU Architecture. Broadcom Corporation. Rev 0.9, Apr 28, 2011
[4] Fairhusrt, Mark. Katana2 MMU uArch Specification. Broadcom Corporation. Rev 0.3 Jun
22, 2012
[5] Fairhusrt, Mark. Katana MMU uArch Specification. Broadcom Corporation. Rev 1.15 Dec
14, 2010
[6] Ehlert, Doug. Caladan3 Arch Notes: Interfaces and Flow Control. Broadcom Corporation.
Rev 0.2, Nov 28, 2010
[7] Python GUI programming. In Python Programming Language Official Website. Retrieved
2012-04-15, from http://wiki.python.org/moin/GuiProgramming
[8] Python Tutorial. In Tutorialspoint simple easy learning. From
http://www.tutorialspoint.com/python/index.htm