SkyEye SkyEye http://hpclab.cs.tsinghua.edu.cn/~skyeye/ I hear and I forget, I see and I remember, I do and I understand. SkyEye SkyEye SkyEye SkyEye SkyEye 1. SkyEye PC pervasive computing PC I O PDA linux TCP/IP 1 2 3 linux/uclinux TCP/IP uc/os-ii uc/os-ii uc/os-ii Intel x86, x86 uc/os-ii 1 / 11
SkyEye uc/os-ii C uc/os-ii uc/os-ii uc/os-ii uc/os-ii SkyEye 2. SkyEye SkyEye opensource software Linux Windows arm7tdmi AT91 uclinux uc/os-ii TCP/IP SkyEye SkyEye SkyEye Open Source GPL ucos-ii Liunx money SkyEye TCP/IP ucos-ii uclinux for SkyEye driver SkyEye Linux ARM CPU Liunx 32 CPU ARM CPU arm7tdmi CPU arm7tdmi CPU SkyEye uclinux uc/os-ii LwIP( TCP/IP ) SkyEye uclinux uc/os-ii TCP/IP ARM CPU SkyEye ARM 8019 ethernet SkyEye Open Source Software GPL SkyEye Linux Windows SkyEye GDB GDB SkyEye SkyEye SkyEye 3. SkyEye SkyEye SkyEye SkyEye 1 uc/os Minix uclinux Linux 2 / 11
SkyEye 2 3 SkyEye SkyEye SkyEye RTLinux RTAI USB IDE 1. SkyEye SkyEye GDB /armulator Atmel91X40 CPU I/O UART MMU Cache, LCD USB SkyEye debuger CPU 2. SkyEye SkyEye CPU MMU AT91X40 MMU ARM720T ARM ARM7TDMI CPU SkyEye ARM 1990 IP(Intelligence Property) 32 75% 32 RISC ARM 50 ARM ARM ARM7TDMI StrongARM ARM720T ARM9TDMI ARM922T ARM940T ARM10 3 / 11
SkyEye ARM RISC architecture Memory Microprocessor (CPU) Register registers: fast words of storage separate from memory ALU ALU(arithmetic logic unit) performs computations on registers Coprocessor 0 (memory management and exceptions) Register Coprocessor 1 (floating point) AU Atmel91X40 Atmel AT91 ARM7TDMI Flash SRAM DRAM 32 RISC Flash 8 PDC MP3 GPS 3. MMU/Cache MMU ARM7TDMICPU ARM7TDMI Atmel91X40 CPU SkyEye MMU ARM720TCPU MMU Memory Management Unit MMU CPU TLB(translation lookaside buffers)tlb translation tabletranslation table walk ttw TLB MMU RAM MMU MMU MMU MMU/cache MMU/cache TLB cache 4 / 11
SkyEye translation table walk MMU/cache ARM720T MMU/cache ARM Linux ARM Linux ARM720T skyeye ARM Skyeye OS 1. uclinux Linux UNIX uclinux uclinux u Micro C Control uclinux Micro-Control-Linux " Linux " uclinux Linux uclinux MMU CPU Linux MMU CPU 32 MMUless CPU OS uclinux 1. 2 uclinux root romfs 3 uclinux uclibc glibc UClinux MMU uclinux uclinux MMU uclinux uclinux UNIX Dos uclinux Linux MMU uclinux MMU fork uclinux vfork uclinux fork sleep exit exec uclinux uclinux nommu flat MMU uclinux uclinux Linux Linux uclinux Linux Linux device driver 2 Linux2.4.x Linux UNIX Unix Internal Linux 5 / 11
SkyEye 2. uc/os-ii SkyEye Atmel 91x40 uc/os-ii uc/os-ii 1992 x86 ARM PowerPC MIPS www.ucos-ii.com uc/os-ii uc/os-ii 2.61 2.0 uc/os-ii RTOS uc/os-ii uc/os-ii uc/os-ii 80x86 3. ARM Linux ARM Linux Linux MMU ARM CPUARM720T Intel StrongARM ARM Linux Skyeye MMU ARM CPU CPU core ARM7TDMI MMU ARM720T MMU ARM Linux clpx711x ARM Linux ARM720T UART Skyeye ARM Linux MMU UART ARM Linux http://www.arm.linux.org.uk/. 4. OS Porting SkyEye uc/os-ii 2.51 uc/os-ii SkyEye SkyEye uclinux 20020927, uclinux uclinux SkyEye OS Porting SkyEye OS MINIX SkyEye SkyEye 1. tcp/ip on uclinux uclinux tcp/ip SkyEye Ne2k 8019as 6 / 11
SkyEye 2. lwip on uc/os-ii µc/os-ii RTOS TCP/IP µc/os II TCP/IP LwIP µc/os-ii LwIP µc/os II Ez80 ARM MCU LwIP Swedish Institute of Computer Science Adam Dunkels TCP/IP LwIP Light Weight( )IP LwIP LwIP V0.5.3 Ne2k LwIP OS /src/arch LwIP µc/os-ii CPU include OS lib_arch Skyeye Ne2k LwIP LwIP uc/os-ii Skyeye host ping Skyeye uc/os-ii LwIP ARP ICMP tcp echo server 3. TCP/IP uc/os-ii TCP/IP linux uc/os-ii LwIP TCP/IP tinytcp ucip uip Skyeye TCP/IP ucip uc/os-ii 1. Echo server on lwip LwIP µc/osii LwIP TCP UDP 7 / 11
SkyEye LwIP µc/osii OS LwIP API Application Program's Interfaces BSD APIAPI BSD UNIX socket API socket api open-read-write-close LWIP API RAW APIAPI LwIP callback functions RAW API BSD API BSD API RAW API Berkley API tcpecho_thread TCP echo 7 RFC echo ping ip ICMP reply telnet ip 7 7 echo server ARP ICMP IP TCP 2. Genie-shell for uc/os-ii uc/os-ii Shell( ) OS Skyeye USART DOS Bash Shell Shell uc/os-ii Shell uc/os-ii Shell Genie Shell Shell 8 / 11
SkyEye Shell Genie Shell shell c 3. Applications on uclinux uclinux-dist-20020816 uclinux-dist-20020927 SkyEye uclinux shell ping ifconfig telnet 1. LCD LCD Skyeye LCD GTK+ Xwindow LCD Skyeye OS LCD LCD Skyeye GTK+ GTK+ LCD GUI Skyeye LCD buffer ram ram LCD LCD LCD LCD OS LCD LCD Skyeye LCD GTK+ LCD Skyeye LCD Buffer RAM 0xC0000000 LCDCON OS LCD 2. IDE IDE SkyEye SkyEye GDB GDB IDE SkyEye IDE Windows Dev-Cpp Delphi Kylix cygwin skyeye Linux DDD Windows 9 / 11
SkyEye Eclipse SkyEye IDE 3. maillist jabber IRC SkyEye sourceforge CVS SkyEye SkyEye SkyEye SkyEye on Cygwin/window & linux uoosii for SkyEye ucosii for Skyeye ucosii for SkyEye I/O LwIP for ucosii for SkyEye (* ) 2002-12 100% ***** 2003-02 100% ***** 2002-12 100% ***** 2002-01 100% ***** 2003-01 100% ***** SkyEye 2003-01 100% ***** shell for ucosii on SkyEye uart ISR for ucosii on SkyEye 2003-02 100% ***** 2003-02 100% ***** redboot/armboot 2002-12 90% ***** AT91EV40 uclinux2.4.x on 2003-02 85 ***** AT91EV40 GDB5.0 for armulator AT91EV40 uclinux2.4.x GDB5.0 for armulator uclinux2.4.x AT91EV40 GDB5.0 for armulator uclinux net driver for SkyEye 2002-12 85 ***** 2002-12 70% ***** 2002-12 70% ***** 2002-12 50% * ***** 2003-02 50% * ***** DEV-C++ 2003-01 50% * ***** 10 / 11
SkyEye MMU for 2003-03 90% ***** SkyEye SkyEye 2003-03 90% ***** Linux LCD for 2003-03 10% * ***** SkyEye DEV-C++ * * 2003-03 10% * ***** Cygwin/windows N/A 0% N/A * N/A Eclipse N/A 0% N/A * N/A N/A 0% N/A * N/A for ucosii on SkyEye N/A 0% N/A * N/A for ucosii on SkyEye for N/A 0% N/A * N/A ucosii on SkyEye RTAI uclinux2.4.x 68knoMMU N/A 0% N/A * N/A N/A 0% N/A * N/A uclinux2.5.x SkyEye armnommu RTAI+uclinux2.5.x N/A 0% N/A * N/A mailto: chenyu-tmlinux@hpclab.cs.tsinghua.edu.cn SkyEye 2003-3-14 11 / 11