3. Outline
โ Introduction.
โ A new RISC architecture โ NDS32.
โ The framework of OpenWrt build system.
โ Porting Items.
โ Conclusion.
2010/08/15
4. Introduction
What is OpenWrt?
โ If you bought a wireless router, you will also
buy the following softwares.
Ref:
http://www.dataweek.co.za/news.aspx?pklNewsId=28298&pklCategoryID=42
2010/08/15
5. Introduction
What is OpenWrt?
A software framework to build firmware
for those wireless routers.
2010/08/15
6. Introduction
What is OpenWrt?
โ The most popular open source project for networking
devices.
โ A firmware/package build system (framework) for various kinds of SoC
platforms and wireless routers.
โ The workgroup of OpenWrt focuses onโฆ
โ Analyze the kernel/protocol differences between vendorsโ code release
and vanilla Linux kernel.
โ Maintain the compatible firmware for vendorsโ boot loaders. (CRC, version
headers)
โ Keep the compatibility with driver binaries.
โ Disassembled driver binary.
โ Has been embedded in many companiesโ successful
products.
โ It will pull the stable source code of each component
from its project's site during compiling time.
2010/08/15
7. Introduction
Topic Review.
โ OSDC
โ Porta2030 @ Taipei โ 2007 (Macpaul)
โ ICOS
โ Porting WiFi router to OpenWrt โ 2007 (Macpaul)
โ COSCUP
โ Router Hacking 101. โ 2007 (Rex)
โ OpenWrt and Case Study. โ 2008 (Rex)
โ OpenWRT, A value-add base solution for your product. โ 2009 (Rex, Macpaul)
โ Porting a New Architecture to OpenWrt Project. โ 2010 (Macpaul)
โ Co-play
โ Porta2030 ็ๆชไพๅๆชๅฏฆ็พ . โ 2009 (Rex)
โ ่ช็ฑ่ป้ซๆ่กๅ ้ป็ซ (OSSF)
โ OpenWrt. โ 2009 (Macpaul, Rex)
โ Computex
2010/08/15 โ Andeswrt: NDS32 is ready for your OpenWrt Products. - 2010 (Macpaul)
8. Introduction
The trend of using OpenWrt.
โ Community achievement
โ Business achievement
โ Networking Device Sellers / Manufacturer. (FON)
โ ISP. (BT/Tomizone)
โ Chip / IP Vendors. (Broadcom/Ubicom/Andes)
โ All AndesTech CPU licensees for networking SoC
use OpenWrt.
โ Software Solution Vendor.
โ (OpenMesh, BATMAN, Savari)
2010/08/15
9. Introduction
The trend of using OpenWrt.
D D -W R T O p e n W rt
DDW RT
C zech
G e r m a n y , T a iw a n H o n g K o n g , C h in a
2010/08/15
10. Introduction
The trend of using OpenWrt.
โ OpenWrt Robot
โ OpenWrt Gumdam
http://www.dd-wrt.com/wiki/index.php/LaFonera_Hardware_Roboter_Controlling
http://www.cuhkacs.org/~scli/blog/2007/09/fujiq_gundam_crisis.html
2010/08/15
11. Introduction
About the Industry Chain.
ๅ ๅ ฑ ้ฏ ่ชค
ๆ ๅบ ๅปบ ่ญฐ ๅ ๅ ฑ ้ฏ ่ชค
S oC ไพ ๆ ๅ ็ณป ็ตฑ ๆด ๅ ๅป ๅ ็ ๅป ๆถ ่ฒป ่
่ช ็ฑ ่ป ้ซ ็คพ ็พค ้ ๅ ๅน ๅผ ๅป ๅ
ๆ ็ ๆฌ
L in u x K e r n e l ็ข ๅ ๅ ๅ ่ฒฉ ๅฎ
ๆด ๆฐ ๅฝ ๅผ ๅบซ ็ ็ข ๆธฌ ่ฉฆ ๅ ๅ ฑ ้ฏ ่ชค
้ ็ผ ๅทฅ ๅ ท ้ ็ผ ้ฉ ่ญ ็ผ ไฝ ๆด ๆฐ
ๆ ไพ ๆฐ ็ง ๆ
ๆด ๆฐ ้ ่จ ๅ ๅฎ
ๆ ๅ ๆ ่ฝ ๅ ไฟฎ
ๆญฃ ้ฏ ่ชค ่ฃ ็ถด
้ ่จ ๅ ๅฎ ๅ ๆด
ๅ ๅฎข ่ฃฝ ๅ
ๆด ๅ ็ฌฌ ไธ ๆน ่ป
้ซ
ๆด ๅ ๅป ๅ ๆข ๆ
่ป ้ซ ๆถ ๆง
O p en W rt
2010/08/15
12. Introduction
About the Industry Chain.
โ Embedded system hardware level.
Hardware System
Arch CPU Core SoC And
Other IC
Most embedded software framework were
organized according to different SoC.
โ However everything was related to CPU
architecture.
2010/08/15
13. A new RISC architecture - NDS32
โ Invented by AndesTech Corporation.
โ The innovative configurable platform solution
allows Andesโ customers to construct unique
system architecture and hardware/software
partitioning.
โ Andes is invested by
โ MediaTek,
โ Faraday,
โ National Development Fund,
โ and other industry heavy weights.
2010/08/15
15. A new RISC architecture - NDS32
โ Provide 3 different CPU core families for
customers.
2010/08/15
16. A new RISC architecture - NDS32
โ CPU Core (N9 as example)
โ 16/32bit mixable instruction format
โ 16 or 32 general-purpose 32-bit registers
โ Multiple stage pipeline
โ Aligned post-increment load/store single
โ Aligned and unaligned load/store multiple
โ Vectored interrupts with 6 signals for interrupt sources and 2
runtime options:
โ the built-in internal interrupt controller for 6 interrupt sources
โ the external interrupt controller with 64 interrupt sources
โ 2 or 3 HW nested interruption levels
โ Memory-mapped I/O
โ Non-Translated-Mapping (NTM) for cacheability attributes
2010/08/15
17. A new RISC architecture - NDS32
โ Benefit (N9 as example)
โ Performance
โ 16/32bit mixable instruction format for compacting code density
โ Static branch predication
โ Low-latency vectored interrupt for real-time performance
โ Completion of one 32-bit operation per cycle
โ Flexibility
โ Memory-mapped IO space
โ PC-relative jumps for position independent code
โ JTAG-based debug support
โ Support for bi-endian data accesses
โ Several configurations to trade off between core size and application requirements
โ Power Management
โ Clock-gated pipeline
โ Power management instructions
2010/08/15
18. A new RISC architecture โ NDS32
About the industry chain.
N D S 3 2 is h e r e . R ep o rt b u g s,
R e q u e st fe a tu r e s R ep ort b u gs
S oC V en d or S I /O D M /O E M B ran d V en d or C on su m er
O p en S ou rce V a lu e -a d d
C o m m u n ity V en d ors
L in u x K e r n e l
2 .X .X B S P , P r o to ty p in g , S a le , R ep ort b u gs,
U p d a te P r o d u c tio n
T o o lc h a in , D e v e lo p m e n t, P r o v id e s R eq u est
L ib r a r ie s T e s tin g
w ith N e w V e r ific a tio n . U p d a te s. fe a tu r e s
T e c h n o lo g y s u p p o r t
U p d a te
N e tw o r k in g
P ro to c o l
E n h a n cem en t, N D S 3 2 is h e r e .
fix b u g s ,
u p d a te p a tc h e s
N D S 3 2 is h e r e .
I n te g r a tio n a n d
C u s to m iz a tio n
N D S 3 2 is h e r e .
In te g r a te 3 r d -
P a r ty S o ftw a r e
N D S 3 2 is h e r e . I n te g r a te w ith
o r ig in a l
S o ftw a r e A r c h .
O p en W rt
2010/08/15
20. The framework of OpenWrt build system.
โ Toolchain โ Tools
โ binutils โ autotools
โ eglibc/glibc/uClibc โ ccache
โ gcc/llvm โ lzma
โ gdb/insight โ squashfs/ext3/ext2/
yaffs
โ ipkg
โ sed
โ etc.
2010/08/15
21. The framework of OpenWrt build system.
โ Include
โ $ARCH as $LINUX_KARCH for kernel.
โ $DEFAULT_CFLAGS for $ARCH.
โ Endian type for $ARCH.
โ Data types in include/site/* for autotools.
โ Scripts
โ For maintaining system-wide tools and
definitions.
2010/08/15
22. The framework of OpenWrt build system.
Benefits - Flexibility.
โ Flexibility
โ You can use your customized toolchain to develop
your network products.
โ External Toolchain.
โ Customized toolchain patches.
โ You can use customized Linux kernel (usually from
chip vendors) and drivers to develop your network
products.
โ External kernel source tree.
โ Customized kernel patches.
โ You can add your applications to customize your
network products.
2010/08/15
23. The framework of OpenWrt build system.
Benefits - Flexibility.
โ 2 Ways To Develop OpenWrt with NDS32
Architecture.
โ AndesWrt with pre-build external toolchain to build NDS32 based OpenWrt
Firmware
โ Very easy to use.
โ Has been verified byโฆ
โ BSP 2.1.0 โ Kernel 2.6.29, Gcc 3, glibc / uClibc
โ AndeSight 1.4.0 โ Kernel 2.6.29, Gcc 3, glibc / uClibc
โ NDS32 Architecture is also supported for OpenWrt main trunk to build your
own NDS32 based toolchain.
โ Has been verified byโฆ
โ Kernel 2.6.29,
โ binutils 2.19.1
โ Gcc 4.4.3
โ uClibc 0.9.30.2
2010/08/15
24. Porting Items.
โ Definitions in OpenWrt framework.
โ toolchain โ gcc, uClibc, binutil
โ target โ NDS32 Linux Kernel, ADP-AG101
โ autotool data type โ include/site
โ u-boot
โ busybox
โ and other libraries and applications as well.
2010/08/15
26. Porting Items.
Toolchains.
โ Add NDS32 architecture related definitions
and dependency into Config.in.
โ Make modularized patches and default
configurations.
โ Make the diff (patch) from git repository
according to the stable release.
โ Binutils
โ uClibc
โ gcc
2010/08/15
27. Porting Items.
Target.
โ Add SoC (AG101) directory.
โ Add Profile (model) related files.
โ Setup default configuration of kernel.
โ Add architecture specific kernel patches.
โ Make patch (git diff) according to a specific
stable release version.
2010/08/15
28. Porting Items.
Kernel.
โ Setup default configuration for generic
kernel.
โ Setup default configuration for architecture
related codes.
โ Add architecture related patches into the
patch set.
โ Make patch (git diff) according to a specific
stable release version.
2010/08/15
29. Porting Items.
โ Release early, release often.
int maintain_patch;
while (porting_done()) {
if (commit ())
break;
else {
other_patches_coming ();
fix_patch();
maintain_patch();
maintain_patch++;
delay_schedule();
}
}
โ Commit patches to the most root open source projects.
2010/08/15
32. Porting Items.
U-boot.
โ Current we are fixing Patch v3.
2010/08/15
33. Porting Items.
U-boot.
โ The framework of u-boot.
โ Codes are classified into multiple levels,
โ Architectures, Cores, SoC, Board, Models,
company.
โ arch โ cpu (init asm), include, lib (board).
โ api
โ common โ common commands.
โ board โ evb or products.
โ drivers โ peripheral drivers.
โ includes โ configs and other include headers.
โ examples/standalone
2010/08/15
36. Conclusion
โ However, once the component of OpenWrt
evolved to a new version, we will need to re-
generate the corresponding patches again.
โ Do the right things first, then do the things
right.
โ If you do not commit the source code into
the mainline open source projects, you will
suffer pain when maintaining patches for
your customers.
2010/08/15
37. Conclusion
Next Summer!
NDS32 RISC CPU with GPU SoC!
2010/08/15
38. Conclusion
To build a Gundam with NDS32 inside is nothing.
ๅไธๅฐๆ NDS32 CPU ็ๅๅฝไธ็ฎไป้บผใ
Only one person can drive the Gundam.
ๅชๆไธๅไบบๅฏไปฅ้ง้งๅๅฝใ
2010/08/15
39. Conclusion
To build a Ubuntu (debain)
distribution
with NDS32 is something.
Everyone can use it.
2010/08/15
40. Conclusion
โ AndesTech provides Andes Open Source
SDK.
โ http://osdk.andestech.com/
โ QEMU
โ Kernel
โ Toolchain
2010/08/15
41. Advertisement
โ NDS32 architecture powered by Andes is ready for your
OpenWrt products.
โ If you are interested, Please contact our sales or HRโฆ
Andes Technology Corporation
2F, No.1, Li-Hsin First Road, Science-Based Industrial Park,
Hsin-Chu City, Taiwan 300 R.O.C (SiSoft Research Center)
Tel: +886-3-6668300 Fax: +886-3-6668322
Business : sales@andestech.com
Technical : support@andestech.com
2010/08/15
42. Copyrights
โ All the Logo and trademarks belongs to
โ AndesTech Corporation.
2010/08/15