java fpga an application for space af jens a. hansen, ciss
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](https://reader033.vdocument.in/reader033/viewer/2022052901/5568d39cd8b42a173c8b4f7c/html5/thumbnails/1.jpg)
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](https://reader033.vdocument.in/reader033/viewer/2022052901/5568d39cd8b42a173c8b4f7c/html5/thumbnails/2.jpg)
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](https://reader033.vdocument.in/reader033/viewer/2022052901/5568d39cd8b42a173c8b4f7c/html5/thumbnails/3.jpg)
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](https://reader033.vdocument.in/reader033/viewer/2022052901/5568d39cd8b42a173c8b4f7c/html5/thumbnails/4.jpg)
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](https://reader033.vdocument.in/reader033/viewer/2022052901/5568d39cd8b42a173c8b4f7c/html5/thumbnails/5.jpg)
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](https://reader033.vdocument.in/reader033/viewer/2022052901/5568d39cd8b42a173c8b4f7c/html5/thumbnails/6.jpg)
What does this bring us?
Note: Image from JOP handbook
![Page 7: JAVA FPGA An Application for Space af Jens A. Hansen, CISS](https://reader033.vdocument.in/reader033/viewer/2022052901/5568d39cd8b42a173c8b4f7c/html5/thumbnails/7.jpg)
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](https://reader033.vdocument.in/reader033/viewer/2022052901/5568d39cd8b42a173c8b4f7c/html5/thumbnails/8.jpg)
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](https://reader033.vdocument.in/reader033/viewer/2022052901/5568d39cd8b42a173c8b4f7c/html5/thumbnails/9.jpg)
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](https://reader033.vdocument.in/reader033/viewer/2022052901/5568d39cd8b42a173c8b4f7c/html5/thumbnails/10.jpg)
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](https://reader033.vdocument.in/reader033/viewer/2022052901/5568d39cd8b42a173c8b4f7c/html5/thumbnails/11.jpg)
A Closer Look at the OfferingsJamaica VM
![Page 12: JAVA FPGA An Application for Space af Jens A. Hansen, CISS](https://reader033.vdocument.in/reader033/viewer/2022052901/5568d39cd8b42a173c8b4f7c/html5/thumbnails/12.jpg)
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](https://reader033.vdocument.in/reader033/viewer/2022052901/5568d39cd8b42a173c8b4f7c/html5/thumbnails/13.jpg)
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](https://reader033.vdocument.in/reader033/viewer/2022052901/5568d39cd8b42a173c8b4f7c/html5/thumbnails/14.jpg)
IP Core
•5 step pipeline
![Page 15: JAVA FPGA An Application for Space af Jens A. Hansen, CISS](https://reader033.vdocument.in/reader033/viewer/2022052901/5568d39cd8b42a173c8b4f7c/html5/thumbnails/15.jpg)
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](https://reader033.vdocument.in/reader033/viewer/2022052901/5568d39cd8b42a173c8b4f7c/html5/thumbnails/16.jpg)
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](https://reader033.vdocument.in/reader033/viewer/2022052901/5568d39cd8b42a173c8b4f7c/html5/thumbnails/17.jpg)
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](https://reader033.vdocument.in/reader033/viewer/2022052901/5568d39cd8b42a173c8b4f7c/html5/thumbnails/18.jpg)
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](https://reader033.vdocument.in/reader033/viewer/2022052901/5568d39cd8b42a173c8b4f7c/html5/thumbnails/19.jpg)
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](https://reader033.vdocument.in/reader033/viewer/2022052901/5568d39cd8b42a173c8b4f7c/html5/thumbnails/20.jpg)
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