01.12.2012 Views

API for these operations to be used in multiple OSes or “bare-metal”

API for these operations to be used in multiple OSes or “bare-metal”

API for these operations to be used in multiple OSes or “bare-metal”

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

August 2012<br />

TM<br />

Freescale, the Freescale logo, AltiVec, C-5, CodeTEST, CodeWarri<strong>or</strong>, ColdFire,<br />

ColdFire+, C-Ware, the Energy Efficient Solutions logo, K<strong>in</strong>etis, mobileGT, PowerQUICC,<br />

Process<strong>or</strong> Expert, Q<strong>or</strong>IQ, Q<strong>or</strong>ivva, StarC<strong>or</strong>e, Symphony and V<strong>or</strong>tiQa are trademarks of<br />

Freescale Semiconduc<strong>to</strong>r, Inc., Reg. U.S. Pat. & Tm. Off. Airfast, BeeKit, BeeStack,<br />

C<strong>or</strong>eNet, Flexis, MagniV, MXC, Plat<strong>f<strong>or</strong></strong>m <strong>in</strong> a Package, Q<strong>or</strong>IQ Qonverge, QUICC Eng<strong>in</strong>e,<br />

Ready Play, SafeAssure, the SafeAssure logo, SMARTMOS, TurboL<strong>in</strong>k, Vybrid and<br />

Xtr<strong>in</strong>sic are trademarks of Freescale Semiconduc<strong>to</strong>r, Inc. All other product <strong>or</strong> service<br />

names are the property of their respective owners. © 2012 Freescale Semiconduc<strong>to</strong>r, Inc.<br />

.


• What is Multic<strong>or</strong>e 2.0<br />

• Optimizations<br />

• Virtualization<br />

• Usability<br />

• Distribution<br />

• Software Environments<br />

• A Multic<strong>or</strong>e Decision Tree<br />

TM<br />

2<br />

Freescale, the Freescale logo, AltiVec, C-5, CodeTEST, CodeWarri<strong>or</strong>, ColdFire, ColdFire+, C-Ware, the Energy Efficient Solutions logo, K<strong>in</strong>etis,<br />

mobileGT, PowerQUICC, Process<strong>or</strong> Expert, Q<strong>or</strong>IQ, Q<strong>or</strong>ivva, StarC<strong>or</strong>e, Symphony and V<strong>or</strong>tiQa are trademarks of Freescale Semiconduc<strong>to</strong>r, Inc.,<br />

Reg. U.S. Pat. & Tm. Off. Airfast, BeeKit, BeeStack, C<strong>or</strong>eNet, Flexis, MagniV, MXC, Plat<strong>f<strong>or</strong></strong>m <strong>in</strong> a Package, Q<strong>or</strong>IQ Qonverge, QUICC Eng<strong>in</strong>e,<br />

Ready Play, SafeAssure, the SafeAssure logo, SMARTMOS, TurboL<strong>in</strong>k, Vybrid and Xtr<strong>in</strong>sic are trademarks of Freescale Semiconduc<strong>to</strong>r, Inc. All<br />

other product <strong>or</strong> service names are the property of their respective owners. © 2012 Freescale Semiconduc<strong>to</strong>r, Inc.


• Optimization<br />

− Layer 2<br />

� UIO and USDPAA<br />

� C<strong>or</strong>e aff<strong>in</strong>ity<br />

� ASF/Bypass<br />

� Hugetlbfs<br />

− Layer 3<br />

� TCP term<strong>in</strong>ation<br />

− Power<br />

• Virtualization<br />

− KVM<br />

− Conta<strong>in</strong>ers<br />

− Topaz<br />

TM<br />

• Usability<br />

− DPAA<br />

� Reference SW<br />

� SEC enablement<br />

� DPAA<br />

programmability<br />

� New User Guides<br />

− Distribution options<br />

� Git trees<br />

� Virtual environments<br />

� Yoc<strong>to</strong><br />

3<br />

• SW environments<br />

− L<strong>in</strong>ux<br />

− Bare Metal<br />

− Foundational<br />

Libraries<br />

Freescale, the Freescale logo, AltiVec, C-5, CodeTEST, CodeWarri<strong>or</strong>, ColdFire, ColdFire+, C-Ware, the Energy Efficient Solutions logo, K<strong>in</strong>etis,<br />

mobileGT, PowerQUICC, Process<strong>or</strong> Expert, Q<strong>or</strong>IQ, Q<strong>or</strong>ivva, StarC<strong>or</strong>e, Symphony and V<strong>or</strong>tiQa are trademarks of Freescale Semiconduc<strong>to</strong>r, Inc.,<br />

Reg. U.S. Pat. & Tm. Off. Airfast, BeeKit, BeeStack, C<strong>or</strong>eNet, Flexis, MagniV, MXC, Plat<strong>f<strong>or</strong></strong>m <strong>in</strong> a Package, Q<strong>or</strong>IQ Qonverge, QUICC Eng<strong>in</strong>e,<br />

Ready Play, SafeAssure, the SafeAssure logo, SMARTMOS, TurboL<strong>in</strong>k, Vybrid and Xtr<strong>in</strong>sic are trademarks of Freescale Semiconduc<strong>to</strong>r, Inc. All<br />

other product <strong>or</strong> service names are the property of their respective owners. © 2012 Freescale Semiconduc<strong>to</strong>r, Inc.


C<strong>or</strong>e Aff<strong>in</strong>ity<br />

TM<br />

Bypass<br />

4<br />

User Space IO - UIO<br />

Hugetlbfs<br />

Freescale, the Freescale logo, AltiVec, C-5, CodeTEST, CodeWarri<strong>or</strong>, ColdFire, ColdFire+, C-Ware, the Energy Efficient Solutions logo, K<strong>in</strong>etis,<br />

mobileGT, PowerQUICC, Process<strong>or</strong> Expert, Q<strong>or</strong>IQ, Q<strong>or</strong>ivva, StarC<strong>or</strong>e, Symphony and V<strong>or</strong>tiQa are trademarks of Freescale Semiconduc<strong>to</strong>r, Inc.,<br />

Reg. U.S. Pat. & Tm. Off. Airfast, BeeKit, BeeStack, C<strong>or</strong>eNet, Flexis, MagniV, MXC, Plat<strong>f<strong>or</strong></strong>m <strong>in</strong> a Package, Q<strong>or</strong>IQ Qonverge, QUICC Eng<strong>in</strong>e,<br />

Ready Play, SafeAssure, the SafeAssure logo, SMARTMOS, TurboL<strong>in</strong>k, Vybrid and Xtr<strong>in</strong>sic are trademarks of Freescale Semiconduc<strong>to</strong>r, Inc. All<br />

other product <strong>or</strong> service names are the property of their respective owners. © 2012 Freescale Semiconduc<strong>to</strong>r, Inc.


User space apps get<br />

direct zero-copy<br />

access <strong>to</strong> all DPAA<br />

HW<br />

Benefits:<br />

• Rich and flexible environment– use L<strong>in</strong>ux standard services rather<br />

than <strong>in</strong>vent<strong>in</strong>g new ones (C++, 36-bit, 8 th c<strong>or</strong>e, debug, etc).<br />

• Standard– L<strong>in</strong>ux is ubiqui<strong>to</strong>us and supp<strong>or</strong>ted from <strong>multiple</strong> sources.<br />

• Provides high-per<strong>f<strong>or</strong></strong>mance run-<strong>to</strong>-completion but other use-cases<br />

also– a use case super-set.<br />

TM<br />

Buffer<br />

Manager<br />

others<br />

User Space Application<br />

Queue<br />

Manager<br />

Security Eng<strong>in</strong>e<br />

(cryp<strong>to</strong>)<br />

5<br />

Pattern Match<br />

Eng<strong>in</strong>e<br />

Frame<br />

Manager<br />

Ethernet<br />

Freescale, the Freescale logo, AltiVec, C-5, CodeTEST, CodeWarri<strong>or</strong>, ColdFire, ColdFire+, C-Ware, the Energy Efficient Solutions logo, K<strong>in</strong>etis,<br />

mobileGT, PowerQUICC, Process<strong>or</strong> Expert, Q<strong>or</strong>IQ, Q<strong>or</strong>ivva, StarC<strong>or</strong>e, Symphony and V<strong>or</strong>tiQa are trademarks of Freescale Semiconduc<strong>to</strong>r, Inc.,<br />

Reg. U.S. Pat. & Tm. Off. Airfast, BeeKit, BeeStack, C<strong>or</strong>eNet, Flexis, MagniV, MXC, Plat<strong>f<strong>or</strong></strong>m <strong>in</strong> a Package, Q<strong>or</strong>IQ Qonverge, QUICC Eng<strong>in</strong>e,<br />

Ready Play, SafeAssure, the SafeAssure logo, SMARTMOS, TurboL<strong>in</strong>k, Vybrid and Xtr<strong>in</strong>sic are trademarks of Freescale Semiconduc<strong>to</strong>r, Inc. All<br />

other product <strong>or</strong> service names are the property of their respective owners. © 2012 Freescale Semiconduc<strong>to</strong>r, Inc.


• Low-level, high-efficiency programm<strong>in</strong>g <strong>f<strong>or</strong></strong> subset of system SW<br />

that represents bulk of w<strong>or</strong>kload and is w<strong>or</strong>th a lot of optimization.<br />

• Fast-path offload of a router stack (like a SW ASIC)<br />

• Layer 2 and up <strong>in</strong> a cell base station<br />

• Software fed by bump-<strong>in</strong>-wire net stack (like IPSEC), often with specialcase<br />

assumptions allowed <strong>be</strong>cause netw<strong>or</strong>k is controlled.<br />

L<strong>in</strong>ux Bare Metal Style SW<br />

c<strong>or</strong>e c<strong>or</strong>e c<strong>or</strong>e c<strong>or</strong>e<br />

TM<br />

L<strong>in</strong>ux<br />

c<strong>or</strong>e<br />

c<strong>or</strong>e c<strong>or</strong>e c<strong>or</strong>e c<strong>or</strong>e<br />

6<br />

Bare metal software<br />

migrates from runn<strong>in</strong>g<br />

alongside L<strong>in</strong>ux on its own<br />

c<strong>or</strong>es <strong>to</strong> runn<strong>in</strong>g with<strong>in</strong> a<br />

L<strong>in</strong>ux user space process<br />

Bare Metal Style SW<br />

c<strong>or</strong>e<br />

Not really <strong>in</strong>tended <strong>f<strong>or</strong></strong> legacy user space applications, but there is<br />

<strong>in</strong>terest <strong>in</strong> this.<br />

Freescale, the Freescale logo, AltiVec, C-5, CodeTEST, CodeWarri<strong>or</strong>, ColdFire, ColdFire+, C-Ware, the Energy Efficient Solutions logo, K<strong>in</strong>etis,<br />

mobileGT, PowerQUICC, Process<strong>or</strong> Expert, Q<strong>or</strong>IQ, Q<strong>or</strong>ivva, StarC<strong>or</strong>e, Symphony and V<strong>or</strong>tiQa are trademarks of Freescale Semiconduc<strong>to</strong>r, Inc.,<br />

Reg. U.S. Pat. & Tm. Off. Airfast, BeeKit, BeeStack, C<strong>or</strong>eNet, Flexis, MagniV, MXC, Plat<strong>f<strong>or</strong></strong>m <strong>in</strong> a Package, Q<strong>or</strong>IQ Qonverge, QUICC Eng<strong>in</strong>e,<br />

Ready Play, SafeAssure, the SafeAssure logo, SMARTMOS, TurboL<strong>in</strong>k, Vybrid and Xtr<strong>in</strong>sic are trademarks of Freescale Semiconduc<strong>to</strong>r, Inc. All<br />

other product <strong>or</strong> service names are the property of their respective owners. © 2012 Freescale Semiconduc<strong>to</strong>r, Inc.


P<strong>or</strong>tals mapped<br />

directly <strong>in</strong><strong>to</strong><br />

application’s virtual<br />

address space.<br />

enqueue,<br />

dequeue,<br />

and m<strong>or</strong>e<br />

TM<br />

L<strong>in</strong>ux User Space<br />

Application<br />

QMan and BMap Access<br />

<strong>API</strong> Library<br />

QMan SW<br />

P<strong>or</strong>tal<br />

QMan<br />

Queue<br />

Manager<br />

7<br />

BMan SW<br />

P<strong>or</strong>tal<br />

BMan<br />

Buffer<br />

Manager<br />

No system call <strong>or</strong><br />

kernel context switch<br />

<strong>to</strong> access a p<strong>or</strong>tal.<br />

acquire,<br />

release,<br />

and m<strong>or</strong>e<br />

Freescale, the Freescale logo, AltiVec, C-5, CodeTEST, CodeWarri<strong>or</strong>, ColdFire, ColdFire+, C-Ware, the Energy Efficient Solutions logo, K<strong>in</strong>etis,<br />

mobileGT, PowerQUICC, Process<strong>or</strong> Expert, Q<strong>or</strong>IQ, Q<strong>or</strong>ivva, StarC<strong>or</strong>e, Symphony and V<strong>or</strong>tiQa are trademarks of Freescale Semiconduc<strong>to</strong>r, Inc.,<br />

Reg. U.S. Pat. & Tm. Off. Airfast, BeeKit, BeeStack, C<strong>or</strong>eNet, Flexis, MagniV, MXC, Plat<strong>f<strong>or</strong></strong>m <strong>in</strong> a Package, Q<strong>or</strong>IQ Qonverge, QUICC Eng<strong>in</strong>e,<br />

Ready Play, SafeAssure, the SafeAssure logo, SMARTMOS, TurboL<strong>in</strong>k, Vybrid and Xtr<strong>in</strong>sic are trademarks of Freescale Semiconduc<strong>to</strong>r, Inc. All<br />

other product <strong>or</strong> service names are the property of their respective owners. © 2012 Freescale Semiconduc<strong>to</strong>r, Inc.


Other Other<br />

Processes Processes<br />

Net Stack<br />

Eth Driver<br />

thread<br />

QP<strong>or</strong>tal<br />

BP<strong>or</strong>tal<br />

C0<br />

QP<strong>or</strong>tal<br />

BP<strong>or</strong>tal<br />

kernel<br />

QP<strong>or</strong>tal<br />

TM<br />

C1<br />

Other Driver<br />

BQMan Drivers<br />

USDPAA Application Can Use 1 <strong>to</strong> 8 C<strong>or</strong>es (P4080)<br />

Each thread has a dedicated p<strong>or</strong>tal and is aff<strong>in</strong>e <strong>to</strong> a c<strong>or</strong>e,<br />

1 thread per c<strong>or</strong>e<br />

BP<strong>or</strong>tal<br />

QP<strong>or</strong>tal<br />

BP<strong>or</strong>tal<br />

C2<br />

USDPAA Memcached<br />

thread thread thread thread thread thread thread<br />

QP<strong>or</strong>tal<br />

BP<strong>or</strong>tal<br />

C3<br />

8<br />

QP<strong>or</strong>tal<br />

BP<strong>or</strong>tal<br />

C4<br />

BMan / QMan<br />

FMan Ethernet<br />

P<strong>or</strong>ts<br />

QP<strong>or</strong>tal<br />

BP<strong>or</strong>tal<br />

C5<br />

QP<strong>or</strong>tal<br />

BP<strong>or</strong>tal<br />

C6<br />

QP<strong>or</strong>tal<br />

BP<strong>or</strong>tal<br />

C7<br />

isolated c<strong>or</strong>es<br />

7 c<strong>or</strong>es are isolated but 1 can<br />

run an USDPAA thread as<br />

well as other processes.<br />

C<strong>or</strong>e 0 has p<strong>or</strong>tal <strong>f<strong>or</strong></strong> kernel use and standard L<strong>in</strong>ux netw<strong>or</strong>k<strong>in</strong>g<br />

Freescale, the Freescale logo, AltiVec, C-5, CodeTEST, CodeWarri<strong>or</strong>, ColdFire, ColdFire+, C-Ware, the Energy Efficient Solutions logo, K<strong>in</strong>etis,<br />

mobileGT, PowerQUICC, Process<strong>or</strong> Expert, Q<strong>or</strong>IQ, Q<strong>or</strong>ivva, StarC<strong>or</strong>e, Symphony and V<strong>or</strong>tiQa are trademarks of Freescale Semiconduc<strong>to</strong>r, Inc.,<br />

Reg. U.S. Pat. & Tm. Off. Airfast, BeeKit, BeeStack, C<strong>or</strong>eNet, Flexis, MagniV, MXC, Plat<strong>f<strong>or</strong></strong>m <strong>in</strong> a Package, Q<strong>or</strong>IQ Qonverge, QUICC Eng<strong>in</strong>e,<br />

Ready Play, SafeAssure, the SafeAssure logo, SMARTMOS, TurboL<strong>in</strong>k, Vybrid and Xtr<strong>in</strong>sic are trademarks of Freescale Semiconduc<strong>to</strong>r, Inc. All<br />

other product <strong>or</strong> service names are the property of their respective owners. © 2012 Freescale Semiconduc<strong>to</strong>r, Inc.


TM<br />

L<strong>in</strong>ux Netw<strong>or</strong>k Process<strong>in</strong>g<br />

ASF: Data Path Acceleration <strong>in</strong> Software<br />

9<br />

Freescale, the Freescale logo, AltiVec, C-5, CodeTEST, CodeWarri<strong>or</strong>, ColdFire, ColdFire+, C-Ware, the Energy Efficient Solutions logo, K<strong>in</strong>etis,<br />

mobileGT, PowerQUICC, Process<strong>or</strong> Expert, Q<strong>or</strong>IQ, Q<strong>or</strong>ivva, StarC<strong>or</strong>e, Symphony and V<strong>or</strong>tiQa are trademarks of Freescale Semiconduc<strong>to</strong>r, Inc.,<br />

Reg. U.S. Pat. & Tm. Off. Airfast, BeeKit, BeeStack, C<strong>or</strong>eNet, Flexis, MagniV, MXC, Plat<strong>f<strong>or</strong></strong>m <strong>in</strong> a Package, Q<strong>or</strong>IQ Qonverge, QUICC Eng<strong>in</strong>e,<br />

Ready Play, SafeAssure, the SafeAssure logo, SMARTMOS, TurboL<strong>in</strong>k, Vybrid and Xtr<strong>in</strong>sic are trademarks of Freescale Semiconduc<strong>to</strong>r, Inc. All<br />

other product <strong>or</strong> service names are the property of their respective owners. © 2012 Freescale Semiconduc<strong>to</strong>r, Inc.


• When a process uses mem<strong>or</strong>y, the CPU marks the RAM as<br />

<strong>used</strong> by that process.<br />

• F<strong>or</strong> efficiency, the CPU allocates RAM by chunks of 4K bytes<br />

(it's the default value on many plat<strong>f<strong>or</strong></strong>ms) called pages (can <strong>be</strong><br />

swapped <strong>to</strong> disk, etc)<br />

• S<strong>in</strong>ce the process address space is virtual, the CPU and the<br />

operat<strong>in</strong>g system have <strong>to</strong> remem<strong>be</strong>r which page <strong>be</strong>long <strong>to</strong><br />

which process, and where it is s<strong>to</strong>red<br />

• Obviously, the m<strong>or</strong>e pages you have, the m<strong>or</strong>e time it takes <strong>to</strong><br />

f<strong>in</strong>d where the mem<strong>or</strong>y is mapped<br />

− e.g. when a process uses 1GB of mem<strong>or</strong>y, that's 262144 entries <strong>to</strong><br />

look up (1GB / 4K).<br />

− If one Page Table Entry consume 8 bytes, that's 2MB (262144 * 8)<br />

<strong>to</strong> look-up.<br />

TM<br />

10<br />

Freescale, the Freescale logo, AltiVec, C-5, CodeTEST, CodeWarri<strong>or</strong>, ColdFire, ColdFire+, C-Ware, the Energy Efficient Solutions logo, K<strong>in</strong>etis,<br />

mobileGT, PowerQUICC, Process<strong>or</strong> Expert, Q<strong>or</strong>IQ, Q<strong>or</strong>ivva, StarC<strong>or</strong>e, Symphony and V<strong>or</strong>tiQa are trademarks of Freescale Semiconduc<strong>to</strong>r, Inc.,<br />

Reg. U.S. Pat. & Tm. Off. Airfast, BeeKit, BeeStack, C<strong>or</strong>eNet, Flexis, MagniV, MXC, Plat<strong>f<strong>or</strong></strong>m <strong>in</strong> a Package, Q<strong>or</strong>IQ Qonverge, QUICC Eng<strong>in</strong>e,<br />

Ready Play, SafeAssure, the SafeAssure logo, SMARTMOS, TurboL<strong>in</strong>k, Vybrid and Xtr<strong>in</strong>sic are trademarks of Freescale Semiconduc<strong>to</strong>r, Inc. All<br />

other product <strong>or</strong> service names are the property of their respective owners. © 2012 Freescale Semiconduc<strong>to</strong>r, Inc.


• The default page size <strong>in</strong> L<strong>in</strong>ux is 4KB<br />

• The amount of mem<strong>or</strong>y mappable <strong>in</strong> TLB0 with 4KB pages is small, which leads<br />

<strong>to</strong> TLB0 misses. Maj<strong>or</strong> contribu<strong>to</strong>rs are;<br />

− TLB0 is shared <strong>be</strong>tween <strong>multiple</strong> processes<br />

− TLB0 is <strong>used</strong> <strong>f<strong>or</strong></strong> mapp<strong>in</strong>g both <strong>in</strong>structions and data<br />

− A s<strong>in</strong>gle MMU-hogg<strong>in</strong>g process <strong>in</strong> the system can have per<strong>f<strong>or</strong></strong>mance impact on<br />

other processes runn<strong>in</strong>g <strong>in</strong> the system due <strong>to</strong> TLB0 thrash<strong>in</strong>g<br />

− A s<strong>in</strong>gle processes may use significantly m<strong>or</strong>e than 2MB<br />

• TLB miss can impact the latency by reload<strong>in</strong>g TLB entries<br />

• TLB1: <strong>f<strong>or</strong></strong> e500 process<strong>or</strong> families, and supp<strong>or</strong>ts a num<strong>be</strong>r of large page sizes<br />

Process<strong>or</strong> # of TLB0<br />

entries<br />

TM<br />

Amount mappable by<br />

TLB0<br />

# of TLB1 entries Page size <strong>f<strong>or</strong></strong> TLB1<br />

E500V1 256 1MB 16 4KB, 16KB, 64KB, 256KB, 1MB, 4MB,<br />

16MB, 64MB, 256MB<br />

E500V2 512 2MB 16 Same as e599V1, plus 1GB, 4GB<br />

E500mc/e5500 512 2MB 64 Same as E500v2<br />

11<br />

Freescale, the Freescale logo, AltiVec, C-5, CodeTEST, CodeWarri<strong>or</strong>, ColdFire, ColdFire+, C-Ware, the Energy Efficient Solutions logo, K<strong>in</strong>etis,<br />

mobileGT, PowerQUICC, Process<strong>or</strong> Expert, Q<strong>or</strong>IQ, Q<strong>or</strong>ivva, StarC<strong>or</strong>e, Symphony and V<strong>or</strong>tiQa are trademarks of Freescale Semiconduc<strong>to</strong>r, Inc.,<br />

Reg. U.S. Pat. & Tm. Off. Airfast, BeeKit, BeeStack, C<strong>or</strong>eNet, Flexis, MagniV, MXC, Plat<strong>f<strong>or</strong></strong>m <strong>in</strong> a Package, Q<strong>or</strong>IQ Qonverge, QUICC Eng<strong>in</strong>e,<br />

Ready Play, SafeAssure, the SafeAssure logo, SMARTMOS, TurboL<strong>in</strong>k, Vybrid and Xtr<strong>in</strong>sic are trademarks of Freescale Semiconduc<strong>to</strong>r, Inc. All<br />

other product <strong>or</strong> service names are the property of their respective owners. © 2012 Freescale Semiconduc<strong>to</strong>r, Inc.


• Hugetlbfs allows the L<strong>in</strong>ux kernel <strong>to</strong> use large pages mapped<br />

by TLB1 <strong>f<strong>or</strong></strong> user processes<br />

− The kernel itself does not use “hugetlb”; it uses a few large TLB1<br />

entries <strong>to</strong> map some amount of mem<strong>or</strong>y us<strong>in</strong>g large mapp<strong>in</strong>gs<br />

• Hugepages can <strong>be</strong> allocated/<strong>used</strong> a num<strong>be</strong>r of ways:<br />

− Specify SHM_HUGETLB flag <strong>to</strong> shmget()<br />

− L<strong>in</strong>k application with hugetlbfs <strong>to</strong> enable shmget() <strong>to</strong> use<br />

hugepages<br />

− L<strong>in</strong>k application with libhugetlbfs <strong>to</strong> cause malloc() <strong>to</strong> use<br />

hugepages<br />

− Explicitly l<strong>in</strong>k application program <strong>f<strong>or</strong></strong> hugepage text, data, and/<strong>or</strong><br />

BSS<br />

− Specify MAP_HUGE <strong>to</strong> anonymous mmap()<br />

− mmap() a file on the hugetlb mount po<strong>in</strong>t<br />

� *Note – some of <strong>these</strong> methods can <strong>be</strong> comb<strong>in</strong>ed<br />

TM<br />

12<br />

Freescale, the Freescale logo, AltiVec, C-5, CodeTEST, CodeWarri<strong>or</strong>, ColdFire, ColdFire+, C-Ware, the Energy Efficient Solutions logo, K<strong>in</strong>etis,<br />

mobileGT, PowerQUICC, Process<strong>or</strong> Expert, Q<strong>or</strong>IQ, Q<strong>or</strong>ivva, StarC<strong>or</strong>e, Symphony and V<strong>or</strong>tiQa are trademarks of Freescale Semiconduc<strong>to</strong>r, Inc.,<br />

Reg. U.S. Pat. & Tm. Off. Airfast, BeeKit, BeeStack, C<strong>or</strong>eNet, Flexis, MagniV, MXC, Plat<strong>f<strong>or</strong></strong>m <strong>in</strong> a Package, Q<strong>or</strong>IQ Qonverge, QUICC Eng<strong>in</strong>e,<br />

Ready Play, SafeAssure, the SafeAssure logo, SMARTMOS, TurboL<strong>in</strong>k, Vybrid and Xtr<strong>in</strong>sic are trademarks of Freescale Semiconduc<strong>to</strong>r, Inc. All<br />

other product <strong>or</strong> service names are the property of their respective owners. © 2012 Freescale Semiconduc<strong>to</strong>r, Inc.


• BGP/BFD per<strong>f<strong>or</strong></strong>mance <strong>be</strong>nchmark:<br />

− BFD utilize USDPAA technology, which has utilized hugetlb technology, and<br />

shows very competible result by compar<strong>in</strong>g competi<strong>to</strong>rs on P4080. P50xx<br />

will <strong>be</strong> much <strong>be</strong>tter.<br />

1G Ethernet p<strong>or</strong>t 4,629 sessions/3.3ms (1G p<strong>or</strong>t l<strong>in</strong>e rate)<br />

10G Ethernet p<strong>or</strong>t 10,200 sessions/3.3ms<br />

− BGP result is under preparation, we are try<strong>in</strong>g <strong>to</strong> utilize hugetlb <strong>f<strong>or</strong></strong><br />

optimization on P5020:<br />

� Here is the prelimenary result:<br />

• BGP data comparison (Note: T1: Learn<strong>in</strong>g 300,000 rout<strong>in</strong>g tables, T2: 300,000 rout<strong>in</strong>g tables<br />

convergence time )<br />

TM<br />

T1 (Seconds) T2 (Seconds)<br />

MPC8572ds 19 24<br />

P5020ds 11 13<br />

P5020ds Vs.MPC8572ds 142% 137.5%<br />

13<br />

Freescale, the Freescale logo, AltiVec, C-5, CodeTEST, CodeWarri<strong>or</strong>, ColdFire, ColdFire+, C-Ware, the Energy Efficient Solutions logo, K<strong>in</strong>etis,<br />

mobileGT, PowerQUICC, Process<strong>or</strong> Expert, Q<strong>or</strong>IQ, Q<strong>or</strong>ivva, StarC<strong>or</strong>e, Symphony and V<strong>or</strong>tiQa are trademarks of Freescale Semiconduc<strong>to</strong>r, Inc.,<br />

Reg. U.S. Pat. & Tm. Off. Airfast, BeeKit, BeeStack, C<strong>or</strong>eNet, Flexis, MagniV, MXC, Plat<strong>f<strong>or</strong></strong>m <strong>in</strong> a Package, Q<strong>or</strong>IQ Qonverge, QUICC Eng<strong>in</strong>e,<br />

Ready Play, SafeAssure, the SafeAssure logo, SMARTMOS, TurboL<strong>in</strong>k, Vybrid and Xtr<strong>in</strong>sic are trademarks of Freescale Semiconduc<strong>to</strong>r, Inc. All<br />

other product <strong>or</strong> service names are the property of their respective owners. © 2012 Freescale Semiconduc<strong>to</strong>r, Inc.


• Benefits<br />

− User processes which access a lot of mem<strong>or</strong>y have fewer page faults<br />

− Other processes can <strong>be</strong>nefit <strong>be</strong>cause their 4k pages aren’t gett<strong>in</strong>g<br />

evicted by mem<strong>or</strong>y hog processes<br />

− Per<strong>f<strong>or</strong></strong>mance ga<strong>in</strong>s can <strong>be</strong> *significant* <strong>f<strong>or</strong></strong> applications with a large<br />

mem<strong>or</strong>y footpr<strong>in</strong>t<br />

• Limitations<br />

− Num<strong>be</strong>r of concurrent huge pages <strong>in</strong> TLB1 is limited<br />

− Hugepage adds m<strong>in</strong><strong>or</strong> latency <strong>to</strong> critical kernel paths even <strong>f<strong>or</strong></strong> 4k pages<br />

− Hugepages should only <strong>be</strong> <strong>used</strong> when needed, as they are m<strong>or</strong>e costly<br />

<strong>f<strong>or</strong></strong> the kernel <strong>to</strong> manage<br />

TM<br />

14<br />

Freescale, the Freescale logo, AltiVec, C-5, CodeTEST, CodeWarri<strong>or</strong>, ColdFire, ColdFire+, C-Ware, the Energy Efficient Solutions logo, K<strong>in</strong>etis,<br />

mobileGT, PowerQUICC, Process<strong>or</strong> Expert, Q<strong>or</strong>IQ, Q<strong>or</strong>ivva, StarC<strong>or</strong>e, Symphony and V<strong>or</strong>tiQa are trademarks of Freescale Semiconduc<strong>to</strong>r, Inc.,<br />

Reg. U.S. Pat. & Tm. Off. Airfast, BeeKit, BeeStack, C<strong>or</strong>eNet, Flexis, MagniV, MXC, Plat<strong>f<strong>or</strong></strong>m <strong>in</strong> a Package, Q<strong>or</strong>IQ Qonverge, QUICC Eng<strong>in</strong>e,<br />

Ready Play, SafeAssure, the SafeAssure logo, SMARTMOS, TurboL<strong>in</strong>k, Vybrid and Xtr<strong>in</strong>sic are trademarks of Freescale Semiconduc<strong>to</strong>r, Inc. All<br />

other product <strong>or</strong> service names are the property of their respective owners. © 2012 Freescale Semiconduc<strong>to</strong>r, Inc.


TCP receive<br />

hardware offload<br />

FAST-TCP-ACK<br />

L4 SKB-recycl<strong>in</strong>g<br />

Soft-TSO<br />

Receive file<br />

supp<strong>or</strong>t<br />

Cache optimizations<br />

(L2SRAM,data prefetch)<br />

Adaptive load-balance<br />

Non-DPAA DPAA<br />

Done<br />

Implement<strong>in</strong>g<br />

TM<br />

Plann<strong>in</strong>g<br />

Non-DPAA SDK<br />

Non-DPAA SDK<br />

non-DPAA SDK<br />

Non-DPAA SDK<br />

non-DPAA SDK<br />

2010 2011 2012 2013<br />

15<br />

Unified SDK1.2<br />

Unified SDK1.2<br />

Unified SDK<br />

Unified SDK<br />

Unified SDK<br />

Unified SDK<br />

Unified SDK<br />

Freescale, the Freescale logo, AltiVec, C-5, CodeTEST, CodeWarri<strong>or</strong>, ColdFire, ColdFire+, C-Ware, the Energy Efficient Solutions logo, K<strong>in</strong>etis,<br />

mobileGT, PowerQUICC, Process<strong>or</strong> Expert, Q<strong>or</strong>IQ, Q<strong>or</strong>ivva, StarC<strong>or</strong>e, Symphony and V<strong>or</strong>tiQa are trademarks of Freescale Semiconduc<strong>to</strong>r, Inc.,<br />

Reg. U.S. Pat. & Tm. Off. Airfast, BeeKit, BeeStack, C<strong>or</strong>eNet, Flexis, MagniV, MXC, Plat<strong>f<strong>or</strong></strong>m <strong>in</strong> a Package, Q<strong>or</strong>IQ Qonverge, QUICC Eng<strong>in</strong>e,<br />

Ready Play, SafeAssure, the SafeAssure logo, SMARTMOS, TurboL<strong>in</strong>k, Vybrid and Xtr<strong>in</strong>sic are trademarks of Freescale Semiconduc<strong>to</strong>r, Inc. All<br />

other product <strong>or</strong> service names are the property of their respective owners. © 2012 Freescale Semiconduc<strong>to</strong>r, Inc.


MPC83xx<br />

e500v2<br />

e500mc/e5500<br />

e6500<br />

dynamic power<br />

management<br />

MPC83xx suspend<br />

e500v2 sleep<br />

e500v2 deep sleep<br />

e500v2 idle<br />

Already available<br />

TM<br />

e500v2 JOG<br />

eTSEC wakeup on netw<strong>or</strong>k<br />

SDK<br />

1.2<br />

Compatibility of legacy drivers<br />

e500mc sleep<br />

Synology on-demand NAS server product<br />

e500mc frequency scal<strong>in</strong>g<br />

PH30 and PCL10 states<br />

Cascade Power<br />

Cascade<br />

Management<br />

PM demo<br />

demo<br />

2012 2013<br />

16<br />

SDK<br />

1.3<br />

TMU<br />

T1040 Deep Sleep<br />

Compatibility of DPAA drivers<br />

SDK<br />

1.4<br />

Proposal<br />

Plann<strong>in</strong>g<br />

Execution<br />

F<strong>in</strong>ished<br />

Freescale, the Freescale logo, AltiVec, C-5, CodeTEST, CodeWarri<strong>or</strong>, ColdFire, ColdFire+, C-Ware, the Energy Efficient Solutions logo, K<strong>in</strong>etis,<br />

mobileGT, PowerQUICC, Process<strong>or</strong> Expert, Q<strong>or</strong>IQ, Q<strong>or</strong>ivva, StarC<strong>or</strong>e, Symphony and V<strong>or</strong>tiQa are trademarks of Freescale Semiconduc<strong>to</strong>r, Inc.,<br />

Reg. U.S. Pat. & Tm. Off. Airfast, BeeKit, BeeStack, C<strong>or</strong>eNet, Flexis, MagniV, MXC, Plat<strong>f<strong>or</strong></strong>m <strong>in</strong> a Package, Q<strong>or</strong>IQ Qonverge, QUICC Eng<strong>in</strong>e,<br />

Ready Play, SafeAssure, the SafeAssure logo, SMARTMOS, TurboL<strong>in</strong>k, Vybrid and Xtr<strong>in</strong>sic are trademarks of Freescale Semiconduc<strong>to</strong>r, Inc. All<br />

other product <strong>or</strong> service names are the property of their respective owners. © 2012 Freescale Semiconduc<strong>to</strong>r, Inc.


Partition<strong>in</strong>g Virtualization<br />

• Hardware consolidation<br />

• Partitioned/dedicated<br />

resources, m<strong>in</strong>imal<br />

shar<strong>in</strong>g.<br />

• Dedicated CPUs, I/O<br />

devices<br />

OS OS<br />

TM<br />

17<br />

OS<br />

• N virtual mach<strong>in</strong>es<br />

• Resource shar<strong>in</strong>g,<br />

oversubscription<br />

• Virtual I/O<br />

• Highly virtualized<br />

environment<br />

• Live migration<br />

OS<br />

OS OS<br />

CPU CPU CPU CPU<br />

Freescale, the Freescale logo, AltiVec, C-5, CodeTEST, CodeWarri<strong>or</strong>, ColdFire, ColdFire+, C-Ware, the Energy Efficient Solutions logo, K<strong>in</strong>etis,<br />

mobileGT, PowerQUICC, Process<strong>or</strong> Expert, Q<strong>or</strong>IQ, Q<strong>or</strong>ivva, StarC<strong>or</strong>e, Symphony and V<strong>or</strong>tiQa are trademarks of Freescale Semiconduc<strong>to</strong>r, Inc.,<br />

Reg. U.S. Pat. & Tm. Off. Airfast, BeeKit, BeeStack, C<strong>or</strong>eNet, Flexis, MagniV, MXC, Plat<strong>f<strong>or</strong></strong>m <strong>in</strong> a Package, Q<strong>or</strong>IQ Qonverge, QUICC Eng<strong>in</strong>e,<br />

Ready Play, SafeAssure, the SafeAssure logo, SMARTMOS, TurboL<strong>in</strong>k, Vybrid and Xtr<strong>in</strong>sic are trademarks of Freescale Semiconduc<strong>to</strong>r, Inc. All<br />

other product <strong>or</strong> service names are the property of their respective owners. © 2012 Freescale Semiconduc<strong>to</strong>r, Inc.


Utilization<br />

Consolidation<br />

Dynamic Resource Management<br />

TM<br />

18<br />

Security/Sandbox<strong>in</strong>g<br />

Fail over<br />

Freescale, the Freescale logo, AltiVec, C-5, CodeTEST, CodeWarri<strong>or</strong>, ColdFire, ColdFire+, C-Ware, the Energy Efficient Solutions logo, K<strong>in</strong>etis,<br />

mobileGT, PowerQUICC, Process<strong>or</strong> Expert, Q<strong>or</strong>IQ, Q<strong>or</strong>ivva, StarC<strong>or</strong>e, Symphony and V<strong>or</strong>tiQa are trademarks of Freescale Semiconduc<strong>to</strong>r, Inc.,<br />

Reg. U.S. Pat. & Tm. Off. Airfast, BeeKit, BeeStack, C<strong>or</strong>eNet, Flexis, MagniV, MXC, Plat<strong>f<strong>or</strong></strong>m <strong>in</strong> a Package, Q<strong>or</strong>IQ Qonverge, QUICC Eng<strong>in</strong>e,<br />

Ready Play, SafeAssure, the SafeAssure logo, SMARTMOS, TurboL<strong>in</strong>k, Vybrid and Xtr<strong>in</strong>sic are trademarks of Freescale Semiconduc<strong>to</strong>r, Inc. All<br />

other product <strong>or</strong> service names are the property of their respective owners. © 2012 Freescale Semiconduc<strong>to</strong>r, Inc.


• KVM is a L<strong>in</strong>ux ® kernel<br />

driver<br />

• User space <strong>to</strong>ol,<br />

QEMU, is <strong>used</strong> <strong>in</strong><br />

conjunction with KVM<br />

• Solution is open<br />

source<br />

• Num<strong>be</strong>r of virtual<br />

mach<strong>in</strong>es is only<br />

limited by available<br />

resources (CPU<br />

cycles, mem<strong>or</strong>y)<br />

TM<br />

• A lightweight framew<strong>or</strong>k<br />

<strong>f<strong>or</strong></strong> partition<strong>in</strong>g an SoC<br />

• Gives you the <strong>be</strong>st of<br />

both w<strong>or</strong>lds– bare metal<br />

per<strong>f<strong>or</strong></strong>mance with<br />

en<strong>f<strong>or</strong></strong>ced partition<strong>in</strong>g and<br />

fully architected<br />

approach <strong>to</strong> meet<strong>in</strong>g<br />

AMP requirements<br />

• Solves many of the<br />

headaches of runn<strong>in</strong>g<br />

<strong>multiple</strong> unsupervised<br />

<strong>OSes</strong><br />

• Threads appear as<br />

c<strong>or</strong>es <strong>to</strong> OS<br />

19<br />

•<br />

•<br />

•<br />

Freescale, the Freescale logo, AltiVec, C-5, CodeTEST, CodeWarri<strong>or</strong>, ColdFire, ColdFire+, C-Ware, the Energy Efficient Solutions logo, K<strong>in</strong>etis,<br />

mobileGT, PowerQUICC, Process<strong>or</strong> Expert, Q<strong>or</strong>IQ, Q<strong>or</strong>ivva, StarC<strong>or</strong>e, Symphony and V<strong>or</strong>tiQa are trademarks of Freescale Semiconduc<strong>to</strong>r, Inc.,<br />

Reg. U.S. Pat. & Tm. Off. Airfast, BeeKit, BeeStack, C<strong>or</strong>eNet, Flexis, MagniV, MXC, Plat<strong>f<strong>or</strong></strong>m <strong>in</strong> a Package, Q<strong>or</strong>IQ Qonverge, QUICC Eng<strong>in</strong>e,<br />

Ready Play, SafeAssure, the SafeAssure logo, SMARTMOS, TurboL<strong>in</strong>k, Vybrid and Xtr<strong>in</strong>sic are trademarks of Freescale Semiconduc<strong>to</strong>r, Inc. All<br />

other product <strong>or</strong> service names are the property of their respective owners. © 2012 Freescale Semiconduc<strong>to</strong>r, Inc.<br />

C<br />

P<br />

U<br />

COS<br />

App<br />

COS<br />

L<strong>in</strong>ux<br />

Multic<strong>or</strong>e Hardware<br />

COS<br />

LXC LXC LXC<br />

CP<br />

U<br />

USDPAA USDPAA<br />

CP<br />

U<br />

C<br />

P<br />

U


TM<br />

20<br />

Freescale, the Freescale logo, AltiVec, C-5, CodeTEST, CodeWarri<strong>or</strong>, ColdFire, ColdFire+, C-Ware, the Energy Efficient Solutions logo, K<strong>in</strong>etis,<br />

mobileGT, PowerQUICC, Process<strong>or</strong> Expert, Q<strong>or</strong>IQ, Q<strong>or</strong>ivva, StarC<strong>or</strong>e, Symphony and V<strong>or</strong>tiQa are trademarks of Freescale Semiconduc<strong>to</strong>r, Inc.,<br />

Reg. U.S. Pat. & Tm. Off. Airfast, BeeKit, BeeStack, C<strong>or</strong>eNet, Flexis, MagniV, MXC, Plat<strong>f<strong>or</strong></strong>m <strong>in</strong> a Package, Q<strong>or</strong>IQ Qonverge, QUICC Eng<strong>in</strong>e,<br />

Ready Play, SafeAssure, the SafeAssure logo, SMARTMOS, TurboL<strong>in</strong>k, Vybrid and Xtr<strong>in</strong>sic are trademarks of Freescale Semiconduc<strong>to</strong>r, Inc. All<br />

other product <strong>or</strong> service names are the property of their respective owners. © 2012 Freescale Semiconduc<strong>to</strong>r, Inc.


1. Design of user-space (US) DPAA apps via reference software<br />

− 8 sample apps (<strong>be</strong>nchmarks of code, doc, perf) <strong>f<strong>or</strong></strong> IPFwd, IPSec, cryp<strong>to</strong>, PME, sRIO, RMAN<br />

− Optimization of open-source libraries <strong>f<strong>or</strong></strong> USDPAA (SNORT-DAQ, OpenSSL)<br />

− Additional set of cus<strong>to</strong>mer-specific demos/<strong>be</strong>nchmarks delivered by L3 team<br />

2. New <strong>to</strong>ols <strong>to</strong> offer control of DPAA<br />

− Q<strong>or</strong>IQ Configuration Suite<br />

− Scenario Analysis Tool, <strong>in</strong>clud<strong>in</strong>g 70 pre-def<strong>in</strong>ed scenarios<br />

− SPID (Services <strong>f<strong>or</strong></strong> Profil<strong>in</strong>g, Instrumentation, and Debugg<strong>in</strong>g)<br />

3. Improved accessibility and usability of documentation<br />

− Better guidance through documentation maps<br />

− Redesigned documentation <strong>f<strong>or</strong></strong> USDPAA examples and <strong>to</strong>ols<br />

− Application notes and design primers derived from cus<strong>to</strong>mer optimization experience<br />

4. Improved out-of-the-box experience and reduced <strong>in</strong>stallation ef<strong>f<strong>or</strong></strong>t<br />

− virtual environment (Virtual Box) that bundles pre-<strong>in</strong>stalled SDK, CW, DPAA <strong>to</strong>ols, docs<br />

− “a-la-carte” delivery method <strong>f<strong>or</strong></strong> open-source software from git.freescale.com<br />

TM<br />

21<br />

Freescale, the Freescale logo, AltiVec, C-5, CodeTEST, CodeWarri<strong>or</strong>, ColdFire, ColdFire+, C-Ware, the Energy Efficient Solutions logo, K<strong>in</strong>etis,<br />

mobileGT, PowerQUICC, Process<strong>or</strong> Expert, Q<strong>or</strong>IQ, Q<strong>or</strong>ivva, StarC<strong>or</strong>e, Symphony and V<strong>or</strong>tiQa are trademarks of Freescale Semiconduc<strong>to</strong>r, Inc.,<br />

Reg. U.S. Pat. & Tm. Off. Airfast, BeeKit, BeeStack, C<strong>or</strong>eNet, Flexis, MagniV, MXC, Plat<strong>f<strong>or</strong></strong>m <strong>in</strong> a Package, Q<strong>or</strong>IQ Qonverge, QUICC Eng<strong>in</strong>e,<br />

Ready Play, SafeAssure, the SafeAssure logo, SMARTMOS, TurboL<strong>in</strong>k, Vybrid and Xtr<strong>in</strong>sic are trademarks of Freescale Semiconduc<strong>to</strong>r, Inc. All<br />

other product <strong>or</strong> service names are the property of their respective owners. © 2012 Freescale Semiconduc<strong>to</strong>r, Inc.


1. SEC Enablement<br />

− New Descrip<strong>to</strong>r development <strong>to</strong>ols<br />

− M<strong>or</strong>e robust and complete <strong>API</strong>’s and Descrip<strong>to</strong>r Libraries<br />

2. Extension of reference software <strong>f<strong>or</strong></strong> User Space DPAA<br />

− Functional updates <strong>to</strong> exist<strong>in</strong>g USDPAA reference code<br />

− Optimized implementation of OSS: SNORT-DAQ, OpenSSL<br />

3. Extension of DPAA based analysis <strong>to</strong>ols<br />

− QCS supp<strong>or</strong>t <strong>f<strong>or</strong></strong> USDPAA and m<strong>or</strong>e process<strong>or</strong>s<br />

− Evolution of SPID and Packet trac<strong>in</strong>g <strong>to</strong>ols <strong>f<strong>or</strong></strong> DPAA<br />

4. Additions and Improvements of documentation delivery<br />

− Conceptual (why), procedural (how), functional (what)<br />

− New app notes and DPAA p<strong>or</strong>t<strong>in</strong>g guidel<strong>in</strong>es<br />

5. Diversify means of distribut<strong>in</strong>g products<br />

− Cont<strong>in</strong>ue with Virtual Environment<br />

− Launch “a-la-carte” delivery via git.freescale.com (copy of <strong>in</strong>ternal repos)<br />

− Em<strong>be</strong>dded distributions<br />

TM<br />

22<br />

Freescale, the Freescale logo, AltiVec, C-5, CodeTEST, CodeWarri<strong>or</strong>, ColdFire, ColdFire+, C-Ware, the Energy Efficient Solutions logo, K<strong>in</strong>etis,<br />

mobileGT, PowerQUICC, Process<strong>or</strong> Expert, Q<strong>or</strong>IQ, Q<strong>or</strong>ivva, StarC<strong>or</strong>e, Symphony and V<strong>or</strong>tiQa are trademarks of Freescale Semiconduc<strong>to</strong>r, Inc.,<br />

Reg. U.S. Pat. & Tm. Off. Airfast, BeeKit, BeeStack, C<strong>or</strong>eNet, Flexis, MagniV, MXC, Plat<strong>f<strong>or</strong></strong>m <strong>in</strong> a Package, Q<strong>or</strong>IQ Qonverge, QUICC Eng<strong>in</strong>e,<br />

Ready Play, SafeAssure, the SafeAssure logo, SMARTMOS, TurboL<strong>in</strong>k, Vybrid and Xtr<strong>in</strong>sic are trademarks of Freescale Semiconduc<strong>to</strong>r, Inc. All<br />

other product <strong>or</strong> service names are the property of their respective owners. © 2012 Freescale Semiconduc<strong>to</strong>r, Inc.


• Implemented run-time assembly language <strong>f<strong>or</strong></strong> DECO’s programm<strong>in</strong>g<br />

− Similar <strong>to</strong> standard assemblers<br />

− Source is available and easy <strong>to</strong> understand<br />

− Err<strong>or</strong> check<strong>in</strong>g<br />

− Intuitive syntax<br />

− Simplify<strong>in</strong>g understand<strong>in</strong>g and writ<strong>in</strong>g code<br />

TM<br />

23<br />

Freescale, the Freescale logo, AltiVec, C-5, CodeTEST, CodeWarri<strong>or</strong>, ColdFire, ColdFire+, C-Ware, the Energy Efficient Solutions logo, K<strong>in</strong>etis,<br />

mobileGT, PowerQUICC, Process<strong>or</strong> Expert, Q<strong>or</strong>IQ, Q<strong>or</strong>ivva, StarC<strong>or</strong>e, Symphony and V<strong>or</strong>tiQa are trademarks of Freescale Semiconduc<strong>to</strong>r, Inc.,<br />

Reg. U.S. Pat. & Tm. Off. Airfast, BeeKit, BeeStack, C<strong>or</strong>eNet, Flexis, MagniV, MXC, Plat<strong>f<strong>or</strong></strong>m <strong>in</strong> a Package, Q<strong>or</strong>IQ Qonverge, QUICC Eng<strong>in</strong>e,<br />

Ready Play, SafeAssure, the SafeAssure logo, SMARTMOS, TurboL<strong>in</strong>k, Vybrid and Xtr<strong>in</strong>sic are trademarks of Freescale Semiconduc<strong>to</strong>r, Inc. All<br />

other product <strong>or</strong> service names are the property of their respective owners. © 2012 Freescale Semiconduc<strong>to</strong>r, Inc.


• Scenarios Tool<br />

− Simple one click access <strong>to</strong> common per<strong>f<strong>or</strong></strong>mance analysis<br />

scenarios <strong>f<strong>or</strong></strong> Q<strong>or</strong>IQ – <strong>in</strong>clud<strong>in</strong>g DPAA Debug IP<br />

− Removed need from cus<strong>to</strong>mer <strong>to</strong> know how <strong>to</strong> configure<br />

DPAA debug IP <strong>to</strong> collect per<strong>f<strong>or</strong></strong>mance data from common<br />

scenarios.<br />

• Register Analyzer<br />

− Alpha version delivered<br />

− Provides feedback on <strong>in</strong>c<strong>or</strong>rect configuration of DPAA blocks<br />

(FM, QM, BM and SEC)<br />

• SPID (Maj<strong>or</strong> Updates <strong>f<strong>or</strong></strong> 2012)<br />

− Target Side Library <strong>to</strong> access debug IP <strong>in</strong>side<br />

(<strong>in</strong>strumentation) a cus<strong>to</strong>mer application.<br />

− Sample code <strong>to</strong> show how <strong>to</strong> collect trace and per<strong>f<strong>or</strong></strong>mance<br />

data <strong>f<strong>or</strong></strong> basic cases.<br />

− Extensive documentation.<br />

− Supp<strong>or</strong>ts L<strong>in</strong>ux and Bare Metal Applications<br />

• SPID Utilities (New <strong>f<strong>or</strong></strong> 2012)<br />

− Applications foc<strong>used</strong> on specific use-cases <strong>to</strong> improve<br />

usability of debug IP <strong>in</strong> FSL SDK L<strong>in</strong>ux applications.<br />

− Packaged <strong>f<strong>or</strong></strong> release <strong>in</strong> SDK 1.2<br />

− First release 3Q 2012<br />

TM<br />

• Application Notes<br />

24<br />

− Per<strong>f<strong>or</strong></strong>mance Analysis<br />

− LTTng Trace<br />

− Application Debugg<strong>in</strong>g<br />

• q<strong>or</strong>iq-dbg (Maj<strong>or</strong> Updates <strong>f<strong>or</strong></strong> 2012)<br />

− Easy access <strong>to</strong> Q<strong>or</strong>IQ debug IP from user scripts <strong>or</strong><br />

applications via standard file system <strong>operations</strong>.<br />

− Present <strong>to</strong>ols <strong>in</strong> a manner that is familiar <strong>to</strong> L<strong>in</strong>ux developers<br />

• DPAA Tools. (New <strong>f<strong>or</strong></strong> 2012)<br />

− Packet Trac<strong>in</strong>g <strong>to</strong>ol – Allows a cus<strong>to</strong>mer <strong>to</strong> trace a packet as it<br />

moves through system.<br />

− Focus <strong>f<strong>or</strong></strong> 2012<br />

− First version scheduled <strong>f<strong>or</strong></strong> 4Q 2012.<br />

− This <strong>to</strong>ol<strong>in</strong>g makes use of the on-board trace facility of each<br />

block.<br />

− DPAA Trace supp<strong>or</strong>t<strong>in</strong>g ALU USDPAA application Alpha <strong>be</strong><strong>in</strong>g<br />

delivered <strong>in</strong> CW 10.1.2 (may 2012) and Production versions<br />

(Expert mode) scheduled <strong>f<strong>or</strong></strong> CW 10.2 (June 2012)<br />

− LTTng/LTTngX<br />

− L<strong>in</strong>ux Community standard Kernel Trac<strong>in</strong>g Framew<strong>or</strong>k<br />

− LTTngX – Freescale’s unique extensions <strong>to</strong> LTTng<br />

Framew<strong>or</strong>k <strong>to</strong> supp<strong>or</strong>t access <strong>to</strong> Freescale Q<strong>or</strong>IQ Debug IP<br />

Freescale, the Freescale logo, AltiVec, C-5, CodeTEST, CodeWarri<strong>or</strong>, ColdFire, ColdFire+, C-Ware, the Energy Efficient Solutions logo, K<strong>in</strong>etis,<br />

mobileGT, PowerQUICC, Process<strong>or</strong> Expert, Q<strong>or</strong>IQ, Q<strong>or</strong>ivva, StarC<strong>or</strong>e, Symphony and V<strong>or</strong>tiQa are trademarks of Freescale Semiconduc<strong>to</strong>r, Inc.,<br />

Reg. U.S. Pat. & Tm. Off. Airfast, BeeKit, BeeStack, C<strong>or</strong>eNet, Flexis, MagniV, MXC, Plat<strong>f<strong>or</strong></strong>m <strong>in</strong> a Package, Q<strong>or</strong>IQ Qonverge, QUICC Eng<strong>in</strong>e,<br />

Ready Play, SafeAssure, the SafeAssure logo, SMARTMOS, TurboL<strong>in</strong>k, Vybrid and Xtr<strong>in</strong>sic are trademarks of Freescale Semiconduc<strong>to</strong>r, Inc. All<br />

other product <strong>or</strong> service names are the property of their respective owners. © 2012 Freescale Semiconduc<strong>to</strong>r, Inc.


TM<br />

Modify classification<br />

F<strong>or</strong> example:<br />

-LPM<br />

-Add supp<strong>or</strong>t <strong>f<strong>or</strong></strong><br />

proprietary shim<br />

headers<br />

1<br />

2<br />

Per<strong>f<strong>or</strong></strong>m unique Header Manipulation/<br />

Add Statistics<br />

25<br />

Example of a typical DPAA Down-L<strong>in</strong>k<br />

Data Flows<br />

Process<strong>in</strong>g<br />

All the process<strong>in</strong>g elements are<br />

standard general Availability build<strong>in</strong>g<br />

blocks provided by FSL <strong>to</strong> all<br />

cus<strong>to</strong>mers.<br />

• Addition new “process<strong>in</strong>g elements” <strong>to</strong> the flow<br />

• Code should o<strong>be</strong>y the programm<strong>in</strong>g model<br />

def<strong>in</strong>ed by FSL<br />

• Non-<strong>in</strong>trusive extension of exist<strong>in</strong>g code<br />

• No flow changes. Transparent from the<br />

process<strong>in</strong>g flow perspective. FMD assisted<br />

configuration<br />

Freescale, the Freescale logo, AltiVec, C-5, CodeTEST, CodeWarri<strong>or</strong>, ColdFire, ColdFire+, C-Ware, the Energy Efficient Solutions logo, K<strong>in</strong>etis,<br />

mobileGT, PowerQUICC, Process<strong>or</strong> Expert, Q<strong>or</strong>IQ, Q<strong>or</strong>ivva, StarC<strong>or</strong>e, Symphony and V<strong>or</strong>tiQa are trademarks of Freescale Semiconduc<strong>to</strong>r, Inc.,<br />

Reg. U.S. Pat. & Tm. Off. Airfast, BeeKit, BeeStack, C<strong>or</strong>eNet, Flexis, MagniV, MXC, Plat<strong>f<strong>or</strong></strong>m <strong>in</strong> a Package, Q<strong>or</strong>IQ Qonverge, QUICC Eng<strong>in</strong>e,<br />

Ready Play, SafeAssure, the SafeAssure logo, SMARTMOS, TurboL<strong>in</strong>k, Vybrid and Xtr<strong>in</strong>sic are trademarks of Freescale Semiconduc<strong>to</strong>r, Inc. All<br />

other product <strong>or</strong> service names are the property of their respective owners. © 2012 Freescale Semiconduc<strong>to</strong>r, Inc.


Host CPU (e500)<br />

Configures the<br />

Parameters (once)<br />

Each App will <strong>be</strong> created by<br />

cha<strong>in</strong><strong>in</strong>g up exist<strong>in</strong>g and new<br />

build<strong>in</strong>g blocks by the <strong>to</strong>ol<br />

(FMC) creat<strong>in</strong>g the desired<br />

flow.<br />

TM<br />

Initialize<br />

Descrip<strong>to</strong>rs<br />

BMI <strong>or</strong> other<br />

module<br />

Cus<strong>to</strong>m<br />

App 2<br />

Cus<strong>to</strong>m<br />

App 1<br />

Example:<br />

ARP<br />

Scheme 1<br />

Scheme 2<br />

Scheme 3<br />

Scheme 4<br />

Scheme n<br />

Key Gen<br />

26<br />

Initialize<br />

Descrip<strong>to</strong>r<br />

Cus<strong>to</strong>m<br />

App n<br />

(Netflow<br />

)<br />

<strong>API</strong> Call<br />

<strong>API</strong> Call<br />

<strong>API</strong> Call<br />

Each function has<br />

a well def<strong>in</strong>ed<br />

def<strong>in</strong>ition o<strong>be</strong>y<strong>in</strong>g<br />

rules<br />

FMAN HW BLOCK<br />

HW/SW PARSER<br />

Packet In<br />

Optional<br />

Extension Optional<br />

Extension Optional<br />

Extension<br />

RISC LIBRARY<br />

Optional<br />

Extension<br />

Exist<strong>in</strong>g function<br />

Exist<strong>in</strong>g function<br />

Exist<strong>in</strong>g function<br />

Exist<strong>in</strong>g function<br />

Internal<br />

Context<br />

Freescale, the Freescale logo, AltiVec, C-5, CodeTEST, CodeWarri<strong>or</strong>, ColdFire, ColdFire+, C-Ware, the Energy Efficient Solutions logo, K<strong>in</strong>etis,<br />

mobileGT, PowerQUICC, Process<strong>or</strong> Expert, Q<strong>or</strong>IQ, Q<strong>or</strong>ivva, StarC<strong>or</strong>e, Symphony and V<strong>or</strong>tiQa are trademarks of Freescale Semiconduc<strong>to</strong>r, Inc.,<br />

Reg. U.S. Pat. & Tm. Off. Airfast, BeeKit, BeeStack, C<strong>or</strong>eNet, Flexis, MagniV, MXC, Plat<strong>f<strong>or</strong></strong>m <strong>in</strong> a Package, Q<strong>or</strong>IQ Qonverge, QUICC Eng<strong>in</strong>e,<br />

Ready Play, SafeAssure, the SafeAssure logo, SMARTMOS, TurboL<strong>in</strong>k, Vybrid and Xtr<strong>in</strong>sic are trademarks of Freescale Semiconduc<strong>to</strong>r, Inc. All<br />

other product <strong>or</strong> service names are the property of their respective owners. © 2012 Freescale Semiconduc<strong>to</strong>r, Inc.


L<strong>in</strong>ux is an open-source <strong>in</strong>tegration of many components from<br />

many sources, most of which are architecture-<strong>in</strong>dependent and<br />

don’t <strong>or</strong>ig<strong>in</strong>ate with Freescale.<br />

Cus<strong>to</strong>mers (and FSL<br />

<strong>in</strong>ternally) cannot use<br />

L<strong>in</strong>ux without a complete<br />

kit.<br />

• Many distros exist.<br />

• Some cus<strong>to</strong>mers create<br />

their own.<br />

• Maj<strong>or</strong> FSL SW must <strong>be</strong><br />

usable with arbitrary<br />

distros.<br />

• But FSL also must use<br />

and ship one.<br />

• FSL choice: Yoc<strong>to</strong><br />

TM<br />

Kernel<br />

FSL-specific<br />

Supp<strong>or</strong>t<br />

GNU Tools & Libs<br />

FSL-specific<br />

Supp<strong>or</strong>t<br />

Bootloader<br />

FSL-specific<br />

Supp<strong>or</strong>t<br />

Maj<strong>or</strong> FSL component<br />

27<br />

Package & Update<br />

Manager<br />

W<strong>in</strong>dow System<br />

(if needed)<br />

Proprietary value-add<br />

(Often Tools <strong>in</strong><br />

Em<strong>be</strong>dded L<strong>in</strong>ux)<br />

10’s of Thousands<br />

of User Space<br />

Packages<br />

Build<br />

Environment<br />

Pass-through from other source<br />

BOM (License<br />

management)<br />

Docs<br />

User Space<br />

Management<br />

Scripts<br />

FSL User Space<br />

Packages<br />

Freescale, the Freescale logo, AltiVec, C-5, CodeTEST, CodeWarri<strong>or</strong>, ColdFire, ColdFire+, C-Ware, the Energy Efficient Solutions logo, K<strong>in</strong>etis,<br />

mobileGT, PowerQUICC, Process<strong>or</strong> Expert, Q<strong>or</strong>IQ, Q<strong>or</strong>ivva, StarC<strong>or</strong>e, Symphony and V<strong>or</strong>tiQa are trademarks of Freescale Semiconduc<strong>to</strong>r, Inc.,<br />

Reg. U.S. Pat. & Tm. Off. Airfast, BeeKit, BeeStack, C<strong>or</strong>eNet, Flexis, MagniV, MXC, Plat<strong>f<strong>or</strong></strong>m <strong>in</strong> a Package, Q<strong>or</strong>IQ Qonverge, QUICC Eng<strong>in</strong>e,<br />

Ready Play, SafeAssure, the SafeAssure logo, SMARTMOS, TurboL<strong>in</strong>k, Vybrid and Xtr<strong>in</strong>sic are trademarks of Freescale Semiconduc<strong>to</strong>r, Inc. All<br />

other product <strong>or</strong> service names are the property of their respective owners. © 2012 Freescale Semiconduc<strong>to</strong>r, Inc.<br />

27


Model Approach When <strong>to</strong> Use Attributes<br />

Native on<br />

Eval Board<br />

Yoc<strong>to</strong><br />

(Complete)<br />

Provide evaluation boards with<br />

complete native GNU Tool<br />

environments right on the board.<br />

This em<strong>be</strong>dded distribution helps<br />

cus<strong>to</strong>mer create entire L<strong>in</strong>ux<br />

system. Package both as ISO<br />

image and also <strong>in</strong> virtual<br />

mach<strong>in</strong>e.<br />

A la Carte Simplify cus<strong>to</strong>mer access <strong>to</strong> just<br />

the maj<strong>or</strong> Freescale-created<br />

L<strong>in</strong>ux components. Perfect <strong>f<strong>or</strong></strong><br />

<strong>in</strong>tegration <strong>in</strong><strong>to</strong> L<strong>in</strong>ux<br />

distributions from other sources,<br />

home-brew <strong>or</strong> 3 rd party. Supp<strong>or</strong>ts<br />

TM fast delivery of patches.<br />

28<br />

Desire zero “gett<strong>in</strong>g<br />

started” ef<strong>f<strong>or</strong></strong>t <strong>to</strong><br />

build<strong>in</strong>g and runn<strong>in</strong>g<br />

FSL and standard<br />

OSS<br />

Need a <strong>to</strong>ol <strong>to</strong><br />

generate a<br />

complete L<strong>in</strong>ux<br />

environment<br />

<strong>in</strong>clud<strong>in</strong>g tail<strong>or</strong>ed file<br />

system.<br />

Desire <strong>to</strong> <strong>in</strong>tegrate<br />

Freescale L<strong>in</strong>ux<br />

components <strong>in</strong><strong>to</strong> a<br />

L<strong>in</strong>ux development<br />

environment that<br />

the cus<strong>to</strong>mer<br />

Easy <strong>to</strong> use.<br />

Complex,<br />

but very<br />

flexible and<br />

powerful.<br />

Simple when<br />

the<br />

cus<strong>to</strong>mer is<br />

also the<br />

<strong>in</strong>tegra<strong>to</strong>r.<br />

Freescale, the Freescale logo, AltiVec, C-5, CodeTEST, CodeWarri<strong>or</strong>, ColdFire, ColdFire+, C-Ware, the Energy Efficient Solutions logo, K<strong>in</strong>etis,<br />

mobileGT, PowerQUICC, Process<strong>or</strong> Expert, Q<strong>or</strong>IQ, Q<strong>or</strong>ivva, StarC<strong>or</strong>e, Symphony and V<strong>or</strong>tiQa are trademarks of Freescale Semiconduc<strong>to</strong>r, Inc.,<br />

Reg. U.S. Pat. & Tm. Off. Airfast, BeeKit, BeeStack, C<strong>or</strong>eNet, Flexis, MagniV, MXC, Plat<strong>f<strong>or</strong></strong>m <strong>in</strong> a Package, Q<strong>or</strong>IQ Qonverge, QUICC Eng<strong>in</strong>e,<br />

Ready Play, already SafeAssure, the SafeAssure logo, has.<br />

SMARTMOS, TurboL<strong>in</strong>k, Vybrid and Xtr<strong>in</strong>sic are trademarks of Freescale Semiconduc<strong>to</strong>r, Inc. All<br />

other product <strong>or</strong> service names are the property of their respective owners. © 2012 Freescale Semiconduc<strong>to</strong>r, Inc.


C<br />

P<br />

U<br />

C<br />

P<br />

U<br />

VM<br />

VM<br />

Multic<strong>or</strong>e Hardware<br />

VM<br />

App App App<br />

OS OS OS<br />

Em<strong>be</strong>dded Hypervis<strong>or</strong><br />

C<br />

P<br />

U<br />

App<br />

CP<br />

U<br />

C<br />

P<br />

U<br />

App App<br />

L<strong>in</strong>ux<br />

CP<br />

U<br />

Multic<strong>or</strong>e Hardware<br />

L<strong>in</strong>ux SMP<br />

Partition<strong>in</strong>g /<br />

supervised AMP,<br />

failover<br />

C<br />

P<br />

U<br />

TM<br />

C<br />

P<br />

U<br />

App App<br />

C<br />

P<br />

U<br />

C<br />

P<br />

U<br />

L<strong>in</strong>ux<br />

CP<br />

U<br />

CP<br />

U<br />

BB<br />

Multic<strong>or</strong>e Hardware<br />

Unsupervised AMP<br />

App<br />

CP<br />

U<br />

VM<br />

App<br />

OS<br />

L<strong>in</strong>ux<br />

CP<br />

U<br />

Multic<strong>or</strong>e Hardware<br />

29<br />

C<br />

P<br />

U<br />

VM<br />

BB<br />

CPU, I/O<br />

virtualization<br />

App<br />

OS<br />

KVM KVM<br />

Topaz KVM: L<strong>in</strong>ux-based Hypervis<strong>or</strong><br />

C<br />

P<br />

U<br />

Consolidation, high<br />

per<strong>f<strong>or</strong></strong>mance<br />

user space DPA<br />

eng<strong>in</strong>es<br />

L<strong>in</strong>ux OS<br />

Convergence<br />

Leverage both<br />

KVM & LXC<br />

OS<br />

Virtualization<br />

Freescale, the Freescale logo, AltiVec, C-5, CodeTEST, CodeWarri<strong>or</strong>, ColdFire, ColdFire+, C-Ware, the Energy Efficient Solutions logo, K<strong>in</strong>etis,<br />

mobileGT, PowerQUICC, Process<strong>or</strong> Expert, Q<strong>or</strong>IQ, Q<strong>or</strong>ivva, StarC<strong>or</strong>e, Symphony and V<strong>or</strong>tiQa are trademarks of Freescale Semiconduc<strong>to</strong>r, Inc.,<br />

Reg. U.S. Pat. & Tm. Off. Airfast, BeeKit, BeeStack, C<strong>or</strong>eNet, Flexis, MagniV, MXC, Plat<strong>f<strong>or</strong></strong>m <strong>in</strong> a Package, Q<strong>or</strong>IQ Qonverge, QUICC Eng<strong>in</strong>e,<br />

Ready Play, SafeAssure, the SafeAssure logo, SMARTMOS, TurboL<strong>in</strong>k, Vybrid and Xtr<strong>in</strong>sic are trademarks of Freescale Semiconduc<strong>to</strong>r, Inc. All<br />

other product <strong>or</strong> service names are the property of their respective owners. © 2012 Freescale Semiconduc<strong>to</strong>r, Inc.<br />

C<br />

P<br />

U<br />

C<br />

P<br />

U<br />

COS<br />

App<br />

App<br />

COS<br />

L<strong>in</strong>ux<br />

Multic<strong>or</strong>e Hardware<br />

COS<br />

LXC LXC LXC<br />

CP<br />

U<br />

CP<br />

U<br />

USDPAA USDPAA<br />

L<strong>in</strong>ux<br />

Multic<strong>or</strong>e Hardware<br />

USDPAA on L<strong>in</strong>ux SMP<br />

USDPAA USDPAA<br />

CP<br />

U<br />

CP<br />

U<br />

Isolated<br />

Conta<strong>in</strong>ers,<br />

resource control &<br />

moni<strong>to</strong>r<strong>in</strong>g<br />

L<strong>in</strong>ux Conta<strong>in</strong>ers<br />

C<br />

P<br />

U<br />

C<br />

P<br />

U


• Purpose of foundation libraries (flibs):<br />

• Library functions that per<strong>f<strong>or</strong></strong>m<br />

<strong>operations</strong> on Freescale hardware IP<br />

blocks, like DPAA peripherals.<br />

• S<strong>in</strong>gle OS-decoupled (not abstracted)<br />

<strong>API</strong> <strong>f<strong>or</strong></strong> <strong>these</strong> <strong>operations</strong> <strong>to</strong> <strong>be</strong> <strong>used</strong> <strong>in</strong><br />

<strong>multiple</strong> <strong>OSes</strong> <strong>or</strong> <strong>“bare</strong>-<strong>metal”</strong><br />

applications.<br />

• Helper functions <strong>f<strong>or</strong></strong> writers of OSspecific<br />

“native” drivers <strong>or</strong> applications<br />

that directly access hardware.<br />

• Focus on simplicity and avoidance of<br />

OS-coupl<strong>in</strong>g.<br />

• Flibs are low-level software<br />

TM<br />

30<br />

OS-Specific Driver<br />

FLIB FLIB<br />

Freescale, the Freescale logo, AltiVec, C-5, CodeTEST, CodeWarri<strong>or</strong>, ColdFire, ColdFire+, C-Ware, the Energy Efficient Solutions logo, K<strong>in</strong>etis,<br />

mobileGT, PowerQUICC, Process<strong>or</strong> Expert, Q<strong>or</strong>IQ, Q<strong>or</strong>ivva, StarC<strong>or</strong>e, Symphony and V<strong>or</strong>tiQa are trademarks of Freescale Semiconduc<strong>to</strong>r, Inc.,<br />

Reg. U.S. Pat. & Tm. Off. Airfast, BeeKit, BeeStack, C<strong>or</strong>eNet, Flexis, MagniV, MXC, Plat<strong>f<strong>or</strong></strong>m <strong>in</strong> a Package, Q<strong>or</strong>IQ Qonverge, QUICC Eng<strong>in</strong>e,<br />

Ready Play, SafeAssure, the SafeAssure logo, SMARTMOS, TurboL<strong>in</strong>k, Vybrid and Xtr<strong>in</strong>sic are trademarks of Freescale Semiconduc<strong>to</strong>r, Inc. All<br />

other product <strong>or</strong> service names are the property of their respective owners. © 2012 Freescale Semiconduc<strong>to</strong>r, Inc.


• Cus<strong>to</strong>mers desire m<strong>or</strong>e commonality <strong>in</strong> FSL software, regardless of<br />

the operat<strong>in</strong>g system <strong>used</strong>.<br />

• Cus<strong>to</strong>mers want greater simplicity– even with complex hardware.<br />

TM<br />

31<br />

Freescale, the Freescale logo, AltiVec, C-5, CodeTEST, CodeWarri<strong>or</strong>, ColdFire, ColdFire+, C-Ware, the Energy Efficient Solutions logo, K<strong>in</strong>etis,<br />

mobileGT, PowerQUICC, Process<strong>or</strong> Expert, Q<strong>or</strong>IQ, Q<strong>or</strong>ivva, StarC<strong>or</strong>e, Symphony and V<strong>or</strong>tiQa are trademarks of Freescale Semiconduc<strong>to</strong>r, Inc.,<br />

Reg. U.S. Pat. & Tm. Off. Airfast, BeeKit, BeeStack, C<strong>or</strong>eNet, Flexis, MagniV, MXC, Plat<strong>f<strong>or</strong></strong>m <strong>in</strong> a Package, Q<strong>or</strong>IQ Qonverge, QUICC Eng<strong>in</strong>e,<br />

Ready Play, SafeAssure, the SafeAssure logo, SMARTMOS, TurboL<strong>in</strong>k, Vybrid and Xtr<strong>in</strong>sic are trademarks of Freescale Semiconduc<strong>to</strong>r, Inc. All<br />

other product <strong>or</strong> service names are the property of their respective owners. © 2012 Freescale Semiconduc<strong>to</strong>r, Inc.


OS-Specific I/O systems <strong>or</strong><br />

netw<strong>or</strong>k stacks<br />

“Native” Driver<br />

--- OS-def<strong>in</strong>ed <strong>API</strong>s<br />

Hardware<br />

TM<br />

FLIB <strong>f<strong>or</strong></strong> IP<br />

Block<br />

Th<strong>in</strong> adaptation layer, e.g.<br />

register access<strong>or</strong>s.<br />

FLIBs present OS-<strong>in</strong>dependent <strong>API</strong> <strong>f<strong>or</strong></strong><br />

hardware functionality with focus on<br />

configur<strong>in</strong>g HW.<br />

FLIBs are not complete drivers. They<br />

leave functionality <strong>to</strong> the native driver<br />

when the functionality is deeply OScoupled,<br />

<strong>f<strong>or</strong></strong> example:<br />

32<br />

• Register<strong>in</strong>g ISRs.<br />

• Interact<strong>in</strong>g with scheduler<br />

• Mapp<strong>in</strong>g mem<strong>or</strong>y.<br />

• Access<strong>in</strong>g native driver <strong>API</strong>s.<br />

• Etc.<br />

Th<strong>in</strong>k of FLIBs as an implementation style <strong>f<strong>or</strong></strong> native drivers that emphasizes<br />

a standard <strong>API</strong> <strong>f<strong>or</strong></strong> HW configuration and reuse across <strong>multiple</strong> <strong>OSes</strong>.<br />

Freescale, the Freescale logo, AltiVec, C-5, CodeTEST, CodeWarri<strong>or</strong>, ColdFire, ColdFire+, C-Ware, the Energy Efficient Solutions logo, K<strong>in</strong>etis,<br />

mobileGT, PowerQUICC, Process<strong>or</strong> Expert, Q<strong>or</strong>IQ, Q<strong>or</strong>ivva, StarC<strong>or</strong>e, Symphony and V<strong>or</strong>tiQa are trademarks of Freescale Semiconduc<strong>to</strong>r, Inc.,<br />

Reg. U.S. Pat. & Tm. Off. Airfast, BeeKit, BeeStack, C<strong>or</strong>eNet, Flexis, MagniV, MXC, Plat<strong>f<strong>or</strong></strong>m <strong>in</strong> a Package, Q<strong>or</strong>IQ Qonverge, QUICC Eng<strong>in</strong>e,<br />

Ready Play, SafeAssure, the SafeAssure logo, SMARTMOS, TurboL<strong>in</strong>k, Vybrid and Xtr<strong>in</strong>sic are trademarks of Freescale Semiconduc<strong>to</strong>r, Inc. All<br />

other product <strong>or</strong> service names are the property of their respective owners. © 2012 Freescale Semiconduc<strong>to</strong>r, Inc.


Hardware<br />

FLIB FLIB<br />

L<strong>in</strong>ux Driver<br />

(from FSL)<br />

FLIB FLIB<br />

TM<br />

Analyze hardware– derive from it the essential<br />

low-level functions<br />

Derive what FLIBs do from this thought<br />

process– but don’t let them do “OS th<strong>in</strong>gs”. Be<br />

OS-decoupled, not OS-<strong>in</strong>dependent.<br />

Use FLIBs <strong>to</strong> create OS-Specific drivers <strong>f<strong>or</strong></strong> two<br />

FSL-supp<strong>or</strong>ted <strong>OSes</strong>.<br />

SDOS Driver<br />

(from FSL)<br />

FLIB FLIB<br />

Offer FLIBs <strong>to</strong> cus<strong>to</strong>mers and 3 rd<br />

parties <strong>f<strong>or</strong></strong> other <strong>OSes</strong>.<br />

33<br />

Other OS Driver<br />

(not from FSL)<br />

FLIB FLIB<br />

Freescale, the Freescale logo, AltiVec, C-5, CodeTEST, CodeWarri<strong>or</strong>, ColdFire, ColdFire+, C-Ware, the Energy Efficient Solutions logo, K<strong>in</strong>etis,<br />

mobileGT, PowerQUICC, Process<strong>or</strong> Expert, Q<strong>or</strong>IQ, Q<strong>or</strong>ivva, StarC<strong>or</strong>e, Symphony and V<strong>or</strong>tiQa are trademarks of Freescale Semiconduc<strong>to</strong>r, Inc.,<br />

Reg. U.S. Pat. & Tm. Off. Airfast, BeeKit, BeeStack, C<strong>or</strong>eNet, Flexis, MagniV, MXC, Plat<strong>f<strong>or</strong></strong>m <strong>in</strong> a Package, Q<strong>or</strong>IQ Qonverge, QUICC Eng<strong>in</strong>e,<br />

Ready Play, SafeAssure, the SafeAssure logo, SMARTMOS, TurboL<strong>in</strong>k, Vybrid and Xtr<strong>in</strong>sic are trademarks of Freescale Semiconduc<strong>to</strong>r, Inc. All<br />

other product <strong>or</strong> service names are the property of their respective owners. © 2012 Freescale Semiconduc<strong>to</strong>r, Inc.


• Standard L<strong>in</strong>ux drivers.<br />

• Ecosystem acceptance of those drivers.<br />

• SDOS as a <strong>“bare</strong> metal-type” OS environment– with<br />

reasonable drivers.<br />

• FLIBs themselves as driver build<strong>in</strong>g-blocks, not<br />

drivers.<br />

• Greater Simplicity<br />

• Less OS <strong>in</strong>tegration conflict<br />

• Less architectural imposition<br />

• Less assumption of global stateful management<br />

(aid<strong>in</strong>g system decomposition)<br />

TM<br />

34<br />

Freescale, the Freescale logo, AltiVec, C-5, CodeTEST, CodeWarri<strong>or</strong>, ColdFire, ColdFire+, C-Ware, the Energy Efficient Solutions logo, K<strong>in</strong>etis,<br />

mobileGT, PowerQUICC, Process<strong>or</strong> Expert, Q<strong>or</strong>IQ, Q<strong>or</strong>ivva, StarC<strong>or</strong>e, Symphony and V<strong>or</strong>tiQa are trademarks of Freescale Semiconduc<strong>to</strong>r, Inc.,<br />

Reg. U.S. Pat. & Tm. Off. Airfast, BeeKit, BeeStack, C<strong>or</strong>eNet, Flexis, MagniV, MXC, Plat<strong>f<strong>or</strong></strong>m <strong>in</strong> a Package, Q<strong>or</strong>IQ Qonverge, QUICC Eng<strong>in</strong>e,<br />

Ready Play, SafeAssure, the SafeAssure logo, SMARTMOS, TurboL<strong>in</strong>k, Vybrid and Xtr<strong>in</strong>sic are trademarks of Freescale Semiconduc<strong>to</strong>r, Inc. All<br />

other product <strong>or</strong> service names are the property of their respective owners. © 2012 Freescale Semiconduc<strong>to</strong>r, Inc.


http://www.eetimes.com/design/em<strong>be</strong>dded/4372692/A-decision-tree-approach-<strong>to</strong>-pick<strong>in</strong>g-the-right-em<strong>be</strong>dded-multic<strong>or</strong>e-software-architecture<br />

TM<br />

35<br />

Freescale, the Freescale logo, AltiVec, C-5, CodeTEST, CodeWarri<strong>or</strong>, ColdFire, ColdFire+, C-Ware, the Energy Efficient Solutions logo, K<strong>in</strong>etis,<br />

mobileGT, PowerQUICC, Process<strong>or</strong> Expert, Q<strong>or</strong>IQ, Q<strong>or</strong>ivva, StarC<strong>or</strong>e, Symphony and V<strong>or</strong>tiQa are trademarks of Freescale Semiconduc<strong>to</strong>r, Inc.,<br />

Reg. U.S. Pat. & Tm. Off. Airfast, BeeKit, BeeStack, C<strong>or</strong>eNet, Flexis, MagniV, MXC, Plat<strong>f<strong>or</strong></strong>m <strong>in</strong> a Package, Q<strong>or</strong>IQ Qonverge, QUICC Eng<strong>in</strong>e,<br />

Ready Play, SafeAssure, the SafeAssure logo, SMARTMOS, TurboL<strong>in</strong>k, Vybrid and Xtr<strong>in</strong>sic are trademarks of Freescale Semiconduc<strong>to</strong>r, Inc. All<br />

other product <strong>or</strong> service names are the property of their respective owners. © 2012 Freescale Semiconduc<strong>to</strong>r, Inc.


TM<br />

36<br />

Freescale, the Freescale logo, AltiVec, C-5, CodeTEST, CodeWarri<strong>or</strong>, ColdFire, ColdFire+, C-Ware, the Energy Efficient Solutions logo, K<strong>in</strong>etis,<br />

mobileGT, PowerQUICC, Process<strong>or</strong> Expert, Q<strong>or</strong>IQ, Q<strong>or</strong>ivva, StarC<strong>or</strong>e, Symphony and V<strong>or</strong>tiQa are trademarks of Freescale Semiconduc<strong>to</strong>r, Inc.,<br />

Reg. U.S. Pat. & Tm. Off. Airfast, BeeKit, BeeStack, C<strong>or</strong>eNet, Flexis, MagniV, MXC, Plat<strong>f<strong>or</strong></strong>m <strong>in</strong> a Package, Q<strong>or</strong>IQ Qonverge, QUICC Eng<strong>in</strong>e,<br />

Ready Play, SafeAssure, the SafeAssure logo, SMARTMOS, TurboL<strong>in</strong>k, Vybrid and Xtr<strong>in</strong>sic are trademarks of Freescale Semiconduc<strong>to</strong>r, Inc. All<br />

other product <strong>or</strong> service names are the property of their respective owners. © 2012 Freescale Semiconduc<strong>to</strong>r, Inc.


TM<br />

37<br />

Freescale, the Freescale logo, AltiVec, C-5, CodeTEST, CodeWarri<strong>or</strong>, ColdFire, ColdFire+, C-Ware, the Energy Efficient Solutions logo, K<strong>in</strong>etis,<br />

mobileGT, PowerQUICC, Process<strong>or</strong> Expert, Q<strong>or</strong>IQ, Q<strong>or</strong>ivva, StarC<strong>or</strong>e, Symphony and V<strong>or</strong>tiQa are trademarks of Freescale Semiconduc<strong>to</strong>r, Inc.,<br />

Reg. U.S. Pat. & Tm. Off. Airfast, BeeKit, BeeStack, C<strong>or</strong>eNet, Flexis, MagniV, MXC, Plat<strong>f<strong>or</strong></strong>m <strong>in</strong> a Package, Q<strong>or</strong>IQ Qonverge, QUICC Eng<strong>in</strong>e,<br />

Ready Play, SafeAssure, the SafeAssure logo, SMARTMOS, TurboL<strong>in</strong>k, Vybrid and Xtr<strong>in</strong>sic are trademarks of Freescale Semiconduc<strong>to</strong>r, Inc. All<br />

other product <strong>or</strong> service names are the property of their respective owners. © 2012 Freescale Semiconduc<strong>to</strong>r, Inc.


TM<br />

38<br />

Freescale, the Freescale logo, AltiVec, C-5, CodeTEST, CodeWarri<strong>or</strong>, ColdFire, ColdFire+, C-Ware, the Energy Efficient Solutions logo, K<strong>in</strong>etis,<br />

mobileGT, PowerQUICC, Process<strong>or</strong> Expert, Q<strong>or</strong>IQ, Q<strong>or</strong>ivva, StarC<strong>or</strong>e, Symphony and V<strong>or</strong>tiQa are trademarks of Freescale Semiconduc<strong>to</strong>r, Inc.,<br />

Reg. U.S. Pat. & Tm. Off. Airfast, BeeKit, BeeStack, C<strong>or</strong>eNet, Flexis, MagniV, MXC, Plat<strong>f<strong>or</strong></strong>m <strong>in</strong> a Package, Q<strong>or</strong>IQ Qonverge, QUICC Eng<strong>in</strong>e,<br />

Ready Play, SafeAssure, the SafeAssure logo, SMARTMOS, TurboL<strong>in</strong>k, Vybrid and Xtr<strong>in</strong>sic are trademarks of Freescale Semiconduc<strong>to</strong>r, Inc. All<br />

other product <strong>or</strong> service names are the property of their respective owners. © 2012 Freescale Semiconduc<strong>to</strong>r, Inc.


TM<br />

39<br />

Freescale, the Freescale logo, AltiVec, C-5, CodeTEST, CodeWarri<strong>or</strong>, ColdFire, ColdFire+, C-Ware, the Energy Efficient Solutions logo, K<strong>in</strong>etis,<br />

mobileGT, PowerQUICC, Process<strong>or</strong> Expert, Q<strong>or</strong>IQ, Q<strong>or</strong>ivva, StarC<strong>or</strong>e, Symphony and V<strong>or</strong>tiQa are trademarks of Freescale Semiconduc<strong>to</strong>r, Inc.,<br />

Reg. U.S. Pat. & Tm. Off. Airfast, BeeKit, BeeStack, C<strong>or</strong>eNet, Flexis, MagniV, MXC, Plat<strong>f<strong>or</strong></strong>m <strong>in</strong> a Package, Q<strong>or</strong>IQ Qonverge, QUICC Eng<strong>in</strong>e,<br />

Ready Play, SafeAssure, the SafeAssure logo, SMARTMOS, TurboL<strong>in</strong>k, Vybrid and Xtr<strong>in</strong>sic are trademarks of Freescale Semiconduc<strong>to</strong>r, Inc. All<br />

other product <strong>or</strong> service names are the property of their respective owners. © 2012 Freescale Semiconduc<strong>to</strong>r, Inc.


Per<strong>f<strong>or</strong></strong>mance<br />

Tool<strong>in</strong>g<br />

Book ‘E’ Debug<br />

C<strong>or</strong>e<br />

Debug<br />

JTAG/Aur<strong>or</strong>a<br />

Trace Tool<strong>in</strong>g<br />

CodeWarri<strong>or</strong><br />

W<strong>or</strong>k<strong>be</strong>nch<br />

Eclipse<br />

W<strong>or</strong>k<strong>be</strong>nch<br />

GNU <strong>to</strong>ols<br />

(gcc, gdb)<br />

CodeWarri<strong>or</strong> / 3 rd<br />

Party Debug / Trace<br />

Pro<strong>be</strong><br />

Debugger<br />

Real Time Debug<br />

Watchpo<strong>in</strong>t<br />

Cross<br />

Trigger<br />

Perf<br />

Moni<strong>to</strong>r<br />

3 rd party Eclipse Tool<strong>in</strong>g<br />

C<strong>or</strong>eNet<br />

Trace<br />

Aur<strong>or</strong>a<br />

3 rd party Tool<strong>in</strong>g<br />

TM<br />

Netcomm<br />

Software<br />

(NCSW)<br />

Drivers<br />

Debug /<br />

Perf agents<br />

V<strong>or</strong>tiQa<br />

Applications<br />

Q<strong>or</strong>IQ<br />

Netw<strong>or</strong>k<br />

Services<br />

L<strong>in</strong>ux operat<strong>in</strong>g<br />

environment<br />

Net<br />

drivers<br />

L<strong>in</strong>ux<br />

control<br />

ASF control<br />

Host l<strong>in</strong>ux (optional)<br />

Power<br />

Architecture TM<br />

C<strong>or</strong>e (e500v2)<br />

Development Host Runtime environment(s)<br />

40<br />

Fastpath<br />

(ASF)<br />

Market-specific solutions<br />

Power<br />

Architecture TM<br />

C<strong>or</strong>e (e500dp)<br />

DPAA<br />

configuration and<br />

services<br />

Netw<strong>or</strong>k<strong>in</strong>g services &<br />

utilities<br />

Q<strong>or</strong>IQ<br />

Drivers<br />

Netw<strong>or</strong>k<strong>in</strong>g stack<br />

Power ISA 2.06+<br />

32/64bit c<strong>or</strong>e<br />

Power<br />

Architecture TM<br />

C<strong>or</strong>e (e500mc)<br />

DPAA<br />

drivers<br />

Cus<strong>to</strong>mer<br />

Application<br />

Q<strong>or</strong>IQ SDK Q<strong>or</strong>IQ DPAA SDK<br />

Power ISA 2.06+<br />

32/64bit c<strong>or</strong>e<br />

User Space DPAA<br />

Execution<br />

environment<br />

Drivers<br />

L<strong>in</strong>ux User-space<br />

L<strong>in</strong>ux Kernel<br />

KVM/Qemu<br />

Power<br />

Architecture TM<br />

C<strong>or</strong>e (e5500,e6500)<br />

Freescale, the Freescale logo, AltiVec, C-5, CodeTEST, CodeWarri<strong>or</strong>, ColdFire, ColdFire+, C-Ware, the Energy Efficient Solutions logo, K<strong>in</strong>etis,<br />

mobileGT, PowerQUICC, Process<strong>or</strong> Expert, Q<strong>or</strong>IQ, Q<strong>or</strong>ivva, StarC<strong>or</strong>e, Symphony and V<strong>or</strong>tiQa are trademarks of Freescale Semiconduc<strong>to</strong>r, Inc.,<br />

Reg. U.S. Pat. & Tm. Off. Airfast, BeeKit, BeeStack, C<strong>or</strong>eNet, Flexis, MagniV, MXC, Plat<strong>f<strong>or</strong></strong>m <strong>in</strong> a Package, Q<strong>or</strong>IQ Qonverge, QUICC Eng<strong>in</strong>e,<br />

Ready Play, SafeAssure, the SafeAssure logo, SMARTMOS, TurboL<strong>in</strong>k, Vybrid and Xtr<strong>in</strong>sic are trademarks of Freescale Semiconduc<strong>to</strong>r, Inc. All<br />

other product <strong>or</strong> service names are the property of their respective owners. © 2012 Freescale Semiconduc<strong>to</strong>r, Inc.<br />

L<strong>in</strong>ux Plat<strong>f<strong>or</strong></strong>m


TM<br />

Freescale on Kaix<strong>in</strong><br />

Tag yourself <strong>in</strong> pho<strong>to</strong>s<br />

and upload your own!<br />

Session materials will <strong>be</strong> posted @ www.freescale.com/FTF<br />

41<br />

Weibo?<br />

Please use hashtag<br />

#FTF2012#<br />

Freescale, the Freescale logo, AltiVec, C-5, CodeTEST, CodeWarri<strong>or</strong>, ColdFire, ColdFire+, C-Ware, the Energy Efficient Solutions logo, K<strong>in</strong>etis,<br />

mobileGT, PowerQUICC, Process<strong>or</strong> Expert, Q<strong>or</strong>IQ, Q<strong>or</strong>ivva, StarC<strong>or</strong>e, Symphony and V<strong>or</strong>tiQa are trademarks of Freescale Semiconduc<strong>to</strong>r, Inc.,<br />

Reg. U.S. Pat. & Tm. Off. Airfast, BeeKit, BeeStack, C<strong>or</strong>eNet, Flexis, MagniV, MXC, Plat<strong>f<strong>or</strong></strong>m <strong>in</strong> a Package, Q<strong>or</strong>IQ Qonverge, QUICC Eng<strong>in</strong>e,<br />

Ready Play, SafeAssure, the SafeAssure logo, SMARTMOS, TurboL<strong>in</strong>k, Vybrid and Xtr<strong>in</strong>sic are trademarks of Freescale Semiconduc<strong>to</strong>r, Inc. All<br />

other product <strong>or</strong> service names are the property of their respective owners. © 2012 Freescale Semiconduc<strong>to</strong>r, Inc.

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!