linux development on embedded powerpc 405 jarosław szewiński

9
Linux development on embedded PowerPC 405 Jarosław Szewiński

Upload: anthony-malone

Post on 31-Dec-2015

217 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Linux development on embedded PowerPC 405 Jarosław Szewiński

Linux development on embedded PowerPC 405

Jarosław Szewiński

Page 2: Linux development on embedded PowerPC 405 Jarosław Szewiński

Agenda

• System generation

• Difficulties

• Booting the kernel

• Features

• Performance

• Applications

• Future Plans

Page 3: Linux development on embedded PowerPC 405 Jarosław Szewiński

System generation

Page 4: Linux development on embedded PowerPC 405 Jarosław Szewiński

Difficulties

• Some parts of PowerPC computer system (like interrupt controller) are defined in FPGA

• This flexibility causes problems when there is mismatch between hardware and drivers versions

• PPC 405 Linux distributions are dedicated for only for few evaluation boards with unique hardware.

Page 5: Linux development on embedded PowerPC 405 Jarosław Szewiński

Booting the kernel

• Over the JTAG, using XMD – this solution enables debugging the CPU, used mostly at the laboratory development.

• Over TFTP – when boot loader is placed in BRAM memory of Virtex II Pro

• From the SystemACE Compact Flash card – solution available on ML310 development board

• In the future, on our board, kernel will be also downloaded over the VME bus

Page 6: Linux development on embedded PowerPC 405 Jarosław Szewiński

Features

• NFS-Root – one file system for many PPC instances

• Kernel level network autoconfiguraton (DHCP, RARP, nfs-root location, etc.)

• Linux booting time less than 10 sec. (to login prompt, including DHCP autoconfiguration, and nfsroot mounting)

• Possibility of swapping over the NFS may increase virtual memory size (the cost is lower performance)

Page 7: Linux development on embedded PowerPC 405 Jarosław Szewiński

Performance

10.000.000 iterations of

PPC (200 MHz) Sun (650 MHz)

Integer * integer 1,47 s 0,37 s

Integer + integer 1,36 s 0,34 s

float * float 36,22 s 0,43 s

float + float 32,21s 0,43 s

Page 8: Linux development on embedded PowerPC 405 Jarosław Szewiński

Applications

• Channel library for Matlab use

• TCP server, diagnostic command line tools

• Kernel driver

• PPC compatible Internal Interface FPGA core by Wojciech Jalmuzna

Virtex II PRO

Linuxon PPC

Hardware

FPGA II Core

Matlab onremote

machine

Kernelmode

Internal Interface bus

driver

Usermode

TCPserver

TC

P/IP

Page 9: Linux development on embedded PowerPC 405 Jarosław Szewiński

Future Plans

• Communication improvement

• Algorithm development on PPC

• Extending the Linux distribution (drivers, libraries, utilities )

• Porting DOOCS for PPC Linux

• Investigations on FPU for Virtex II Pro