TM
August 2011
Freescale, the Freescale logo, AltiVec, C-5, CodeTEST, CodeWarrior, ColdFire, C-Ware, t
he Energy Efficient Solutions logo, mobileGT, PowerQUICC, QorIQ, StarCore and Symphony
are trademarks of Freescale Semiconductor, Inc., Reg. U.S. Pat. & Tm. Off. BeeKit, BeeStack,
ColdFire+, CoreNet, Flexis, Kinetis, MXC, Platform in a Package, Processor Expert, QorIQ
Qonverge, Qorivva, QUICC Engine, SMARTMOS, TurboLink, VortiQa and Xtrinsic are trademarks
of Freescale Semiconductor, Inc. All other product or service names are the property
of their respective owners. © 2011 Freescale Semiconductor, Inc.
• DPAA
• BMAN Enablement
• FMAN Enablement
• QMAN Enablement
• SEC Enablement
• PME Enablement
• RMAN Enablement
• RE Enablement
• Conclusion
Freescale on Kaixin
Tag yourself in photos
and upload your own!
Weibo?
Please use hashtag
#FTF2011#
TM
2
Freescale, the Freescale logo, AltiVec, C-5, CodeTEST, CodeWarrior, ColdFire, C-Ware, the Energy Efficient Solutions logo, mobileGT, PowerQUICC, QorIQ, StarCore
and Symphony are trademarks of Freescale Semiconductor, Inc., Reg. U.S. Pat. & Tm. Off. BeeKit, BeeStack, ColdFire+, CoreNet, Flexis, Kinetis, MXC, Platform in a
Package, Processor Expert, QorIQ Qonverge, Qorivva, QUICC Engine, SMARTMOS, TurboLink, VortiQa and Xtrinsic are trademarks of Freescale Semiconductor, Inc.
All other product or service names are the property of their respective owners. © 2011 Freescale Semiconductor, Inc.
• “Infrastructure” components
− Queue Manager (QMan)
− Buffer Manager (BMan)
• Network I/O
− Frame Manager (FMan)
• Hardware accelerators
− Cryptographic accelerator (SEC 4.x)
− Pattern matching engine (PME 2.x)
− RapidIO Message Manager (RMAN)
− RAID Engine (RE 1.x)
• Cores
• CoreNet
− Provides the interconnect between the
cores and the DPAA infrastructure as well
as access to memory (DRAM)
D$
I$
D$
I$
D$
e500mc
I$
D$
e500mc
I$
D$
e500mc
I$
D$
e500mc
I$
D$
e500mc
I$
D$
I$
e500mc
Core
I$
L2$
D$
e500mc
Core
I$
L2$
D$
e500mc
Core
I$
L2$
D$
Core
I$
L2$
D$
Core
I$
L2$
D$
Core
I$
L2$
D$
Core
I$
L2$
D$
Core
I$
D$
I$
L2$
D$
D$
D$
I$
D$
I$
D$
I$
D$
I$
D$
I$
D$
I$
I$
CoreNet™
Coherency Fabric
RMAN
RE
Sec 4.x
PME 2
Queue
Manager
Buffer
Mgr
Frame Manager
10GE
1GE 1GE
1GE 1GE
Frame Manager
10GE
1GE 1GE
1GE 1GE
18 Lanes SERDES
TM
3
Freescale, the Freescale logo, AltiVec, C-5, CodeTEST, CodeWarrior, ColdFire, C-Ware, the Energy Efficient Solutions logo, mobileGT, PowerQUICC, QorIQ, StarCore
and Symphony are trademarks of Freescale Semiconductor, Inc., Reg. U.S. Pat. & Tm. Off. BeeKit, BeeStack, ColdFire+, CoreNet, Flexis, Kinetis, MXC, Platform in a
Package, Processor Expert, QorIQ Qonverge, Qorivva, QUICC Engine, SMARTMOS, TurboLink, VortiQa and Xtrinsic are trademarks of Freescale Semiconductor, Inc.
All other product or service names are the property of their respective owners. © 2011 Freescale Semiconductor, Inc.
• Buffer: Unit of contiguous memory, allocated by software.
• Frame: Buffer(s) that hold a data element (generally a packet)
− Frames can be single buffers or multiple buffers (scatter/gather lists)
A “simple frame” has one delimited data element
A “multi buffer frame” has two or more data elements.
− A “Compound frame” consists of multiple related delineated units
• Frame Descriptor (FD): Proxy structure used to represent frames.
• Frame Queue:
− FIFO of related Frames Descriptor.(e.g. TCP session)
− The basic queuing structure supported by QMan
• Frame Queue Descriptor (FQD): Structure used to manage Frame Queues
FD FD FD FD …
Buffer
Buffer
Buffer
Buffer
FQD
FD
FD
Ethernet
Frame
Pre-
amble
Dest
addr
Src
addr
Type Data
CRC
TM
4
Freescale, the Freescale logo, AltiVec, C-5, CodeTEST, CodeWarrior, ColdFire, C-Ware, the Energy Efficient Solutions logo, mobileGT, PowerQUICC, QorIQ, StarCore
and Symphony are trademarks of Freescale Semiconductor, Inc., Reg. U.S. Pat. & Tm. Off. BeeKit, BeeStack, ColdFire+, CoreNet, Flexis, Kinetis, MXC, Platform in a
Package, Processor Expert, QorIQ Qonverge, Qorivva, QUICC Engine, SMARTMOS, TurboLink, VortiQa and Xtrinsic are trademarks of Freescale Semiconductor, Inc.
All other product or service names are the property of their respective owners. © 2011 Freescale Semiconductor, Inc.
Simple Frame
Frame Descriptor
D
PID
BPID
Address
000
Offset
Length
Status/Cmd
Multi-buffer Frame
(Scatter/gather)
Buffer
Frame Descriptor
D
PID
BPID
Address
Packet
100
Offset
Length
Status/Cmd
0 1 2 3 4 5 6 7 8 9 1
0
1
1
1
2
1
3
1
4
1
5
1
6
1
7
1
8
1
9
2
0
2
1
2
2
2
3
2
4
2
5
2
6
2
7
2
8
2
9
3
0
3
1
D
D
LIODN
offset
BPID
- - - -
addr
ELIO
DN
offset
addr (cont)
Fmt
Offset
Length
STATUS/CMD
TM
S/G List
Address
00
Length
BPID
Offset
Address
00
Length
BPID
Offset (=0)
…
Address
01
Length
BPID
Offset (=0)
Data
Data
Data
Frame Format Code
Frame Descriptor (FD) is the basic element queued by QMan.
5
Freescale, the Freescale logo, AltiVec, C-5, CodeTEST, CodeWarrior, ColdFire, C-Ware, the Energy Efficient Solutions logo, mobileGT, PowerQUICC, QorIQ, StarCore
and Symphony are trademarks of Freescale Semiconductor, Inc., Reg. U.S. Pat. & Tm. Off. BeeKit, BeeStack, ColdFire+, CoreNet, Flexis, Kinetis, MXC, Platform in a
Package, Processor Expert, QorIQ Qonverge, Qorivva, QUICC Engine, SMARTMOS, TurboLink, VortiQa and Xtrinsic are trademarks of Freescale Semiconductor, Inc.
All other product or service names are the property of their respective owners. © 2011 Freescale Semiconductor, Inc.
Compound frames describe multiple simple frames
Variation of the S/G list is used as the “top level” of a compound frame
Compound
Frame Descriptor
D
PID
BPID
Address
001
CongWght
Status/Cmd
Compound Frame
S/G List
Address
10
Length
BPID
Offset
Address
01
Length
BPID
Offset
Frame Format Code
CongWght = Congestion Weight
Data
Data
Data
Output: SGL (or Buffer)
Address
00
Length
BPID
Offset
Address
00
Length
BPID
Offset (=0)
……
Address
01
Length
BPID
Offset (=0)
Input: Buffer (or SGT)
Data
TM
6
Freescale, the Freescale logo, AltiVec, C-5, CodeTEST, CodeWarrior, ColdFire, C-Ware, the Energy Efficient Solutions logo, mobileGT, PowerQUICC, QorIQ, StarCore
and Symphony are trademarks of Freescale Semiconductor, Inc., Reg. U.S. Pat. & Tm. Off. BeeKit, BeeStack, ColdFire+, CoreNet, Flexis, Kinetis, MXC, Platform in a
Package, Processor Expert, QorIQ Qonverge, Qorivva, QUICC Engine, SMARTMOS, TurboLink, VortiQa and Xtrinsic are trademarks of Freescale Semiconductor, Inc.
All other product or service names are the property of their respective owners. © 2011 Freescale Semiconductor, Inc.
FQD Selected Field Description:
•
FQD_LINK: Link to the next FQD in a queue of FQDs,
used for Work Queues.
• ORPRWS: ORP Restoration Window Size
• OA: ORP Auto Advance NESN Window Size.
• ODP_SEQ: ODP Sequence Number
• ORP_NESN: ORP Next Expected Sequence Number.
• ORP_EA_HPTR, ORP_EA_TPTR: ORP Early Arrival
Head and Tail Pointer.
• PFDR_HPTR, PFDR_TPTR : PFDR Head and Tail
Pointer.
• CONTEXT_A, CONTEXT_B: Frame Queue Context A and
B
• STATE: FQ State.
• DEST_WQ: Destination Work Queue
•
•
•
ICS_SURP: Intra-Class Scheduling Surplus or Deficit.
IS: Intra-Class Scheduling Surplus or Deficit identifier.
ICS_CRED: Intra-Class Scheduling Credit
• CONG_ID: Congestion Group ID
• RA[1-2]_SFDR_PTR: SFDR Pointer for Recently Arrived
frame # 1 and 2.
•
TD_MANT, TD_EXP : Tail Drop threshold Exponent and
Mantissa
N
R
A
N
O
D
N
P
C
0 1 2 3 4 5 6 7 8 9 1
0
1
1
1
2
1
3
1
4
1
5
1
6
1
7
1
8
1
9
2
0
2
1
2
2
2
3
2
4
2
5
2
6
2
7
2
8
2
9
3
0
3
1
-
-
-
-
-
-
-
-
FQD_LINK
W
S
P
R
O
R
O
A
W
S
O
L
ODP_SEQ
ORP_NESN
ORP_EA_HSEQ
ORP_EA_TSEQ
ORP_EA_HPTR
ORP_EA_TPTR
ORP_EA_TPTR
PFDR_HPTR
(cont…)
PFDR_TPTR
CONTEXT_A
(cont…)
CONTEXT_B
FQ_CTRL
F
E R
T
E
S
T
A
DEST_WQ
ICS_SURP
I
S
ICS_CRED
CONG_ID
FRM_CNT
BYTE_CNT
O
A
C
O
A
L
-
-
RA1_SFDR_PTR
- I
T -
-
-
RA2_SFDR_PTR
OD1_SFDR_PTR
OAL
OD2_SFDR_PTR
-
-
-
OD3_SFDR_PTR
-
-
-
TD_MANT
TD_EXP
TM
7
Freescale, the Freescale logo, AltiVec, C-5, CodeTEST, CodeWarrior, ColdFire, C-Ware, the Energy Efficient Solutions logo, mobileGT, PowerQUICC, QorIQ, StarCore
and Symphony are trademarks of Freescale Semiconductor, Inc., Reg. U.S. Pat. & Tm. Off. BeeKit, BeeStack, ColdFire+, CoreNet, Flexis, Kinetis, MXC, Platform in a
Package, Processor Expert, QorIQ Qonverge, Qorivva, QUICC Engine, SMARTMOS, TurboLink, VortiQa and Xtrinsic are trademarks of Freescale Semiconductor, Inc.
All other product or service names are the property of their respective owners. © 2011 Freescale Semiconductor, Inc.
• FMAN receives packets
− allocates internal buffers
− retrieves data from MAC
• BMI
− acquires a buffer from BMan
− uses DMA to store data in it
• Parse+classify+keygen select a
queue and policer profile
• Policer “colors” and optionally
discards frame
• QMan applies active queue
management and enqueues
frame
• Frame is enqueued to one of a
pool of cores
DDR
L2 Cache
L2 Cache
L2 Cache
Power Architecture™
L2 Cache
Power Architecture™
Core
DEQ
Power Architecture™
Core
D-Cache
I-Cache
Power Architecture™
Core
D-Cache
I-Cache
Core
D-Cache
I-Cache
PKT
DDR
D-Cache
I-Cache
DMA
Frame Manager
To
(FMan)
Memory
QMI
Keygen
Policer
Memory
(Distribution)
Classifier
Parser
BMI
10GE GE GE GE GE
ENQ
FD
Return
Buf Ptr
Request
Buffer
PKT
Queue
Manager
Dequeue
WQ7
WQ6
WQ5
WQ4
WQ3
WQ2
WQ1
WQ0
D
D
D
Enqueue
WRED
QMI
Policer
Keygen
Buffer
Manager
Classifier
Parser
BMI
MAC
TM
8
Freescale, the Freescale logo, AltiVec, C-5, CodeTEST, CodeWarrior, ColdFire, C-Ware, the Energy Efficient Solutions logo, mobileGT, PowerQUICC, QorIQ, StarCore
and Symphony are trademarks of Freescale Semiconductor, Inc., Reg. U.S. Pat. & Tm. Off. BeeKit, BeeStack, ColdFire+, CoreNet, Flexis, Kinetis, MXC, Platform in a
Package, Processor Expert, QorIQ Qonverge, Qorivva, QUICC Engine, SMARTMOS, TurboLink, VortiQa and Xtrinsic are trademarks of Freescale Semiconductor, Inc.
All other product or service names are the property of their respective owners. © 2011 Freescale Semiconductor, Inc.