java fpga an application for space af jens a. hansen, ciss

20
JAVA FPGA An Application for Space Presented by Jens A. Hansen Center for Embedded Software Systems In coorporation with GOMSpace

Upload: infinit-innovationsnetvaerket-for-it

Post on 30-May-2015

334 views

Category:

Technology


0 download

DESCRIPTION

Oplægget blev givet ved et seminar i InfinIT-interessegruppen Højniveau sprog til indlejrede systemer den 22. april 2009. Læs mere om interessegruppen på http://www.infinit.dk/dk/interessegrupper/hoejniveau_sprog_til_indlejrede_systemer/

TRANSCRIPT

Page 1: JAVA FPGA An Application for Space af Jens A. Hansen, CISS

JAVA FPGA

An Application for Space

Presented by

Jens A. Hansen

Center for Embedded Software Systems

In coorporation with

GOMSpace

Page 2: JAVA FPGA An Application for Space af Jens A. Hansen, CISS

Agenda

•The Java stack

•Towards an Java FPGA

•That’s all good, can I buy it?

•Suppliers

•What are the offerings

•JOP

•JOPCMP

•Conclusions

Page 3: JAVA FPGA An Application for Space af Jens A. Hansen, CISS

Java Class Library

The Embedded Java Stack

Hardware platform

Operating System

Java Virtual Machine

Java byte code

•Size

•Complexity

•Number of components

•Single point of failure

•No RT Support

Java

Native

Interface

Page 4: JAVA FPGA An Application for Space af Jens A. Hansen, CISS

Enabling RT Support

Hardware platform

RTOS

Java byte code

•Size

•Complexity

•Number of components

•Single point of failure

RT- profileJVM Java

Native

Interface

Page 5: JAVA FPGA An Application for Space af Jens A. Hansen, CISS

Towards JAVA FPGA

•Components migrated to HW

•Likely an ASIC design

•The stack is still fat

•No RTOS => Bare Metal

•No need for JNI

Hardware platform

RTOS

Java byte code

RT- profileJVM

Page 6: JAVA FPGA An Application for Space af Jens A. Hansen, CISS

What does this bring us?

Note: Image from JOP handbook

Page 7: JAVA FPGA An Application for Space af Jens A. Hansen, CISS

That all Good, Can I Buy it?

What are your requirements for delivery?

What are your requirements for maturity?

What are your requirements for support?

What are your requirements for features?

What are your requirements for speed?

What are your requirements for memory?

What are your requirements for ….?

It depends!

Page 8: JAVA FPGA An Application for Space af Jens A. Hansen, CISS

Who are the Suppliers?

Academia

Industry

Several FPGA solutions

No FPGA solutions

•JOP

•JOPCMP

•Jamuth

•SHAP

•aJile

•EJC JAVA

•PERC solutions

•Jamaica-VM platform

•DDC-I Scorpion

Page 9: JAVA FPGA An Application for Space af Jens A. Hansen, CISS

A Closer Look at the OfferingsPERC Pico & Raven

Pico HW:

•X86

RTOS:

•Linux, Windows

Page 10: JAVA FPGA An Application for Space af Jens A. Hansen, CISS

A Closer Look at the OfferingsaJile

Supports:

•Hard real time

•Multiple JVM’s

•Secure networking

•Multimedia functions

Page 11: JAVA FPGA An Application for Space af Jens A. Hansen, CISS

A Closer Look at the OfferingsJamaica VM

Page 12: JAVA FPGA An Application for Space af Jens A. Hansen, CISS

That’s Fine, Where are the FPGAs?

Why do you wish a FPGA solution?

•It’s hot?

•To differentiate your product?

•It is the only solution to my problems?

•Any or all of the above.

Our wish for Java FPGA

•Different from other offerings in the segment

•Easier to attract attention from the correct parties

Page 13: JAVA FPGA An Application for Space af Jens A. Hansen, CISS

FPGA and SOPC

FPGA is programmable/

reconfigurable hardware System on Programmable Chip

Page 14: JAVA FPGA An Application for Space af Jens A. Hansen, CISS

IP Core

•5 step pipeline

Page 15: JAVA FPGA An Application for Space af Jens A. Hansen, CISS

Features, maturity, size and speed

Predictable

RT GC

Dynamic Class loading

Real Time threads

Floating point support

Research

Development

Deployment

From: The SHAP Microarchiture and Java Virtual Machine

Page 16: JAVA FPGA An Application for Space af Jens A. Hansen, CISS

Java Optimized Processor

•Most mature

•Actual deployment

•Open

•Supported via wiki

•Supports many FPGA platforms

From: JOP Handbook

Porting to new FPGA:

Often leads to new memory module

Porting to new application:

Often leads to new IO interface

Page 17: JAVA FPGA An Application for Space af Jens A. Hansen, CISS

Build your own JOP as a Test

Jopdesign.com

•Complete design and Construction guide

•Good example of Lego mindstorms controller

•Requires: FPGA protype board, electronics

teknologisk.dk/23755

•Simple HelloWorld

•Adds hardware

•Seven segment display

•Requires: Xilinx board

Page 18: JAVA FPGA An Application for Space af Jens A. Hansen, CISS

Chip Multicore Processors

•Multicore has been hot in the past years

•Intel, AMD

•CMP is a growing field

•Multiple IP cores used

•Meet JOPCMP

•Jeopard project

•Many services are multithreaded

Page 19: JAVA FPGA An Application for Space af Jens A. Hansen, CISS

Where does this put us?

Java processor

Java byte code

FPGA platform

•Hard realtime systems

•Predictable embedded systems

•Safty/Misson critalcal systems

Is viable but work on redundancy is needed etc is needed.

FPGA Java for:

Page 20: JAVA FPGA An Application for Space af Jens A. Hansen, CISS

Conclusion

•Decide if Java FPGA is the right way for your project

•What is the real time requirements for your project

•It is relative easy to get started with Java FPGA

•A full product requires a good work effort