a one stop shop for java embedded applications development … · 2011-10-05 · geeseware overview...
TRANSCRIPT
A One‐Stop Shop for
Java Embedded ApplicationsDevelopment and Manufacturing
Gérard BOUVETSales Manager
1
Table of Content
• Embedded Market trends and applications
• Java versus Linux/C/C++
• 2011 Embedded Market Challenge
• GeeseWare Value Proposition
• GeeseWare Java‐Ready development boards
• Software Development Kit: MicroEJ®
• GeeseWare Offer, Products, Maintenance and Support
2
GeeseWare Overview• GeeseWare™ S.A.S, is a subsidiary of SEICO S.A.S . SEICO was created in May 1981.
• SEICO S.A.S , headcount: 100, with 10Meuro / Year/ 2010.
• SEICO is an electronic subcontractor for manufacturing and test of industrial applications, Energy, Defense and security, Environment, Transportation and Medical.
• In addition, SEICO produce Special industrial Wires, Mechanical integration and tests platforms design and manufacturing.
• Partnership to embed IS2T Java Platform (MicroJvm® and MicroEJ® SDK) in GeeseWare Packs
3
2011 Embedded market trends
• New Embedded Designs become more complex but should not take longer to ship !
• Need to tackle tighten market window.
• TTM (Time To Market) improvement needs better design methodology.
• First production volumes for the embedded applications:
50% are below 1000 units.
10% reach millions of units.
• Need a faster go/No go decision process and methodology
(Source:EmbeddedMarket Survey 2010)
4
2011 Embedded market trends• Main Issues:
– Incomplete or vague specifications– Insufficient time– Design Complexity
• Thanks‘ (!) to Android, more and more people speak about Java in Embedded world, but… it’s a Linux OS Kernel with Java interface, and Average application size > 50Mb Flash and more than 512Mbytes RAM in Android Phones.
– Android is an OS for smartphones and PDAs. – Manufacturing costs / BOM > $200 (Resale $600)
• Whereas J2ME is a development platform for Java embedded applications.
• Cost: Memory does impact a lot unit cost (25%) .
• Power consumption: 49% of the new project remain under 100Mhz (code can be run in Flash), 31% = 100‐500Mhz, 20% = >500Mhz
• 59% of new projects uses 32‐Bit microcontrollers. 5
2010
Flash < 128K >= 128K
8‐bit 91% 9%
16bit 76% 24%
32‐bit 20% 80%Total 62% 38%
Java (write once, run everywhere)
Applications: Standard desktop and Workstation (explorer, mozilla, chrome, etc..)
Java 2 Standard Editions (J2SE)Java 2 Standard Editions (J2SE)
Java 2 Platforms
JVM
Java 2 Platform Standard Edition
Java CardsJava Cards
JavaCard VM
Java 2 Enterprise Editions (J2EE)Java 2 Enterprise Editions (J2EE)
Servers, Enterprises Applications (Websphere, Tomcat..)
JVM
Java 2 Platform Enterprise Edition
Java 2 Micro Editions (J2ME)
Java 2 Micro Editions (J2ME)
Small Memories, Constrained Peripherals
MicroJVM®
CLDC
Connected Limited Device Configuration Libraries16/32Bits, 16Mhz clock, Limited Memory & power consumptionLimited network connection
6
Java Applications Elements
Java 2 Standard Editions (J2SE)Java 2 Standard Editions (J2SE)
Java 2 Enterprise Editions (J2EE)Java 2 Enterprise Editions (J2EE)
Java 2 Micro Editions (J2ME)
Java 2 Micro Editions (J2ME)
Java BytecodeMIDlets
(yellow pages, train schedule, …)
MIDlets
(yellow pages, train schedule, …)
APPlets
Complex computation and
display applications
APPlets
Complex computation and
display applications
SERVletsSERVlets
Web Navigator(Explorer, Mozilla,
Chrome…)
Web Navigator(Explorer, Mozilla,
Chrome…)
Servlet Engine(Tomcat, WebSphere,
WebLogic …)
Servlet Engine(Tomcat, WebSphere,
WebLogic …)
Mobile Phone, PDA,
GeeseWare Platform,…
Mobile Phone, PDA,
GeeseWare Platform,…
Applet Life Cycle
Init(), Start()Stop(), Destroy()
SERVlet Life Cycle
Init(), Start()Stop(), Destroy()
MIDlet Life Cycle
Init(), Start()Stop(), Destroy()
J2ME API’sJ2ME API’sJ2SE API’sJ2SE API’sJ2EE API’sJ2EE API’s
IndependenceEmbedded Applications / Hardware Platform
7
• Java is more than a language, it’s a technology.
• Portability & Code re‐use – same Java binary can run on different environments.
(No more Ifdef UNIX / Ifdef Win32 in the code to manage the display)
• Can be up‐to 3 to 5 times cheaper than C in embedded world– Quicker development than C
– Major Increased in embedded system functionality versus footprint.
• Maintainability– Avoid/Reduce software impacts when hardware changes.
• Reliability / Robustness– No more memory management, no direct memory access (Garbage Collector).
– The exceptions are managed by the JVM (Java Virtual Machine).
– Independent runtime environment.
– Same development process for classic and embedded Java.
• Embedded application can be as fast as C– Less than 1ms on a M2M process (Ethernet ports) or Latency ( Touch screen <‐>
Asynchronous stimuli)
Java key features & benefits
8
J2ME Target (non Mobile) Applications
Wide range of constrained applications (CLDC)•Limited space, Limited weight (power consumption)
– 8Mhz‐180Mhz only•Limited Memory (RAM and Flash)
– RAM 128Kbytes (15000 times less than a PC)– Flash: 512Kb (40%)
•Limited display – 480x272x16= 250Kbytes versus PC VGA
(1366x768x32 = 4096 Kbytes)•No permanent network connection required
•User Interface offer bigger Real Estate but Android UI has to match non‐mobile space (simpler, cheaper)•UI much more compelling with user experience
– Sophisticated UI, animated transition, complex lighting, 3D objects and depth, texture, …
– Higher expectations, perception of the UI quality– Tap, Drag, Fling, Slide
9
J2ME Target (non Mobile) Applications
Target Market Segments
• Industrial automation– Dash board
• Automotive– Infotainment
• Appliances• Home appliance, Building Automation
– Smart meter, lightning control, HVAC, lightning control, (sensor + IT monitoring + control).
• Security• Military• Transportation• Medical• M2M
10
Our embedded answers !
Linux / C / C++Java (J2ME) / GeeseWare
Microcontroller selection Performance, RTOS availability, Existing development tools, etc…
ARM® Cortex M3 or M4
Development tools/IDE Find and select IDE compatible/optimized with chosen microcontroller
MicroEJ®
Simulation, Compilation, Debug, Test , Optimization
Find and select Software tools compatible with chosen microcontroller
MicroEJ®
Hardware/software Partitioning decisions
Yes No
BOM prices, software prices, royalties Fees ? ∑ calculations
Single pack price including board pre‐series
Hardware / Software Integration
Yes No
Application Binary depends on Hardware
Yes No
We can simplify your decision making process 11
Our embedded answers !
IC / uC / Componants
PC Board
Place & Route
FirmwareRTOS + Libraries
C or C++ Embedded Application
FirmwareRTOS + Libraries
JavaEmbedded Application
Customer Customer
VALUE
CHAIN
AssociatedDevelopments
Costs
IC / uC / Componants
PC Board
Place & Route
12
Embedded market coming challenges
Time‐To‐Market of ever growing complexity embedded applications. Embedded applications have shorter life cycle.
Added Value is mostly in the software.
60% of projects costs are embedded software costs.
Price (Foot Print)
Java becomes an alternative to C and C++
In fact in 2010, more and more embedded design use Java
Java against C / C++ ? A kind of cultural break‐up decision !
13
Target Market segments
Microcontrollers increase in functionality (i.e latest Cortex‐M3/M4 series). This implies quasi exponential increase in associated software development complexity and cost.
•C debug very complex. Java is a suitable solution
•Hardware development costs are more and more under control but you need to better control software development costs.
•Application software is the biggest competitive portion of embedded products.
Hardware
Softw
are
Development CostsIndustrial Applications
1970 1980 1990 2000 2010
Innovation
Required
Innovation
Required
14
faster application development, smaller getting started budget and easier prototyping (and
market on time)
Smaller initial investment to reach the step of real field application test.
Agile development process with early Involvement of any stakeholder.
Sales‐ Pre‐Sales, Marketing, Manager, Ergonomist, firmware and software eng, etc…
Optimize the BOM (Bill Of Materials) of target application.
Smaller /Tiny Memory footprint (50‐250Kbytes applications)
SOAR® (Smart Optimizer and Romizer) space & speed improvement
More and more added‐value is captured in IHM (higher ASP)
A lot easier in Java / Faster / quicker user experience tests
MicroJvm® virtual machine can be as fast as C: acceleration technics / direct access to Native
levels
Easy Development Platform customization.
example / flexible industrial keyboard on I2C port => simple Mock development to start
simulations (java code).
GeeseWare Value Proposition
15
Concentrate on application development rather than managing system resources
• Tasks Scheduling, Memory management, etc…
Existing critical routines remain in C (possible legacy C code integration).
Seamless production of pre‐series for faster Product introduction.
Stand‐alone CPU small‐factor board (SO‐DIMM 200 interface) bundled with Java Platform.
State‐ of the art Manufacturing Process
Pb and RoHS process supported, SMD and Trough Hole, IPC‐A‐610 Class 2 or Class 3
Tooling, Input control, Kitting, Potting.
100% Visual and automatic control, X‐Ray, Burn‐in, stress‐test , packing, shipment
Customer selection of a sub‐set of standard functionalities to leverage a cheaper and faster production cycle‐time.
We can simplify the design of better features, to put more value in your products.
GeeseWare Value Proposition
16
V versus Agile Development Process
V30‐50 word pages for specifications
2 weeks specifications
3‐4 weeks development
1 week Validation
Overall 7‐8 weeks
RequirementsFeasibility
Specifications
ApplicationArchitecture
Coding
Unit Tests
Integration Tests
AgileFew slides + use Cases
2 days
5 days development
1 day Validation
Overall 2 weeks
Complex IHM Widget/MIDlet Development
17
Validation Tests
Developments costs versus time
SpecificationsSpecifications Hardware & Software devlpt
Hardware & Software devlpt PrototypesPrototypes System testSystem test
Changes costs
Time
80%
100%
Decisions Impact Cost
Development Cost
18
Agile Developments rules
•Individuals and interactions over processes and tools
•Working software over comprehensive documentation
•Customer collaboration over contract negotiation
•Responding to change over following a plan
GeeseWare Java Virtual Machine
EmbJPF®
Java Application
Simulator(on PC)Java sources files
ByteCode(JVM Processor
Language)
ASM(MCU processor
language)
Hardware
Vertical Abstraction levels
19
Mock
Java-Ready Development Board
A flexible and Open Architecture for Agile Developments and Debug
20
Java-Ready Development Boards
21
CPU Board
ARM®
Cortex M3 STM32F207 or
Cortex M4 STM32F407
core based microcontroller
Small‐factor board 37x67.5mm
On‐Chip Memories:STM32F207STM32F407
1024 Kbytes Flash128 Kbytes SRAM (M3)192 Kbytes SRAM (M4)
On‐Board Memories2Mbytes RAM4Mbytes NOR Flash
Ethernet Interface 10/100 Mbps Phyceiver
Connector SO‐DIMM 200
Secure Microcontroller Customer IP Protection
ARM ® Cortex-M3 / M4• Cost
– 32 bits Cortex‐M3 /M4 architecture Microcontrollers becomes as cheap as 8 bits micro
• Power Consumption
– 12.5MIPS/mW and Low power Mode
• Speed
– Can reach up‐to 12.5DMIPS, Frequency can by up‐to 275Mhz
– Significant improvements against 8 and 16 bits micros
Memory usage optimization, real‐time optimization features, Debug features
22
23
Secure Microcontroller(through custom services support)
• The goal is to secure your Embedded Systems and Application IP.
• VaultIC460: State of the art ready to use hardware security module for IP Protection– Prevent Goods cloning.
– Keep contents secure and avoid leaking information during code execution.
– Detection of tempering attempts and associated sensitive data destruction.
Java Application
MicroJVM®Execute IP (Crypto) + Public Key
Inside SecureVaultIC460Customer IPCustomer IP
Signature (Crypto)
Java-Ready Development Boards
24
Main Board
Serial and Debug ports
JTAG/SWDUARTI2CSPICANUSB2.0 OTG FS, Host FS with Mini‐AB connector
HMI
4.3’’ TFT LCD with resistive touch screen (480x272x16 RGB) or 2.7’’ monochrome LCD 128x64bitsI2S Audio DAC (3.5mm stereo audio jackJoystick with 4 directions control and selector
Sensors Temperature, Light, Speed
Miscellaneous
1 Gbyte SD CardReset, Wake up and 4 users buttonsPotentiometer3 color LEDs, 1 RGB LEDBoot from external Flash, USB port or internal flash
Connectors Extensions
40 pins IDE extension (CAN, Timer, ADC, DAC, SPI, I2C, GPIO, Power supply, USART, DCMI Camera bus)
25
Eclipse based Software Development Kit MicroEJ®
GWStudioTM Java Framework
MicroEJ® Simulator
26
Software Development Kit MicroEJ® SDK
27
Software Development Kit MicroEJ® SDK• Software development Toolkit based on Eclipse
• Edit‐Compile‐Debug process, …
• Software simulation and Hardware emulation(HIL)
• Static and runtime analysis and optimization
– For timings and memory footprint
• Functional code coverage computation
• Tasks profiling and scheduling
• Java Heap Management and inspection
• Optimize and profile Java applications
– Memory footprint and execution runtime
• Supported OS: uClinux, INTEGRITY, ThreadX, EmbOS.
• Microcontroller Flash programming (ST‐LINK Flash Programmer included)
28
Services Offer
• Components changes versus the standard COTS (Commercial Off The Shelves)
– TFT / LCD (Displays / offer a complete strategy) , Peripherals, etc…
– Add External Equipment : Mocks , HIL connected to COTS platform
• Mock Developments (with NRE charges)– Wifi / ZigBee, Webcam, External sensors, stepper motor, relay,
Communication module
• Standard COTS optimization– Straight forward Application shrink (remove unused
peripherals, cost optimization),
– associated Pre‐series manufacturing (No JVM changes)
29
External Equipment (Mock) Developments
30
I2C, SPI, GPIO, …
SNI (Simple Native Interface / Java Lib)GeeseWare Developments
Customer or GeeseWare Developments
Mocks
{// Java class es and objects New Mock() ; // New Keyboard();Mock.init(); // Keyboard.init();Mock.display(“Ready”); …..}
Java ApplicationJava Application
Java Class / APIJava Class / API
Wrapper C <‐> JavaWrapper C <‐> Java
API CAPI C
Driver CDriver C
ExternalPort
ExternalPort
GeeseWare Packs: Removable Plastic Housing
31
Standard GeeseWare Packs are sold in a removable plastic housing
•Standard package• Access to all connectors
+ TFT + cards holder
•Custom Plastic Housing (with NRE)• Specific Serigraphic,
restricted Connectors set, etc…
Ordering
• Different GeeseWare Packs = Function ( display, SDK licensing, CPU )
• SDK: one year subscription or permanent development licenses– Including support, maintenance, etc…– Discount on quantities
• USB Dongle protection
• One month Free Evaluation for the simulator
• Prices for Production Cards pre‐series/production (step pricing: 5,20,50,100, 1000,…)– (Special offer for Academics).
• Kit Price ( SDK Development kit + pre‐series production of CPU Cards)
32
Partners
33
-training
www.is2t.comIS2T is a software editor specialized in products to make embedded devices in a very cost-effective way. The focus is on combining state of the art technologies, with a specific concentration on Object Oriented / Java technologies for embedded systems.
http://www.advansee.com/en_US/home.htmlADVANSEE is a flexible partner for customers needing to outsource Electronic Design projects. We provide all the phases of a development cycle, from the initial concept through to product delivery. Our service results in optimized use of microcontrollers' resources, i.e. reduction in power, size and weight. We truly care about providing superior products and service to our customers, with the aim of developing long term successful relationships.
http://www.ac6-training.comAC6 provides a full range of training courses covering all the fields of industrial computing, embedded and real-time systems design and programming.
Distributors
• GeeseWare Distributors List will be released in September 2011.
We intend to have local distributors in North America, Europe, Israel, Asia and South Africa.
34
Contacts
Sale contact :
Gerard [email protected]: +33 (0)6 64 78 77 29Direct: +33 (0)2 28 00 28 12
Technical contact:
Francois [email protected]: +33 (0)2 40 57 51 78
Address: 6 Rue Jean Moulin, ZI La Croix Blanche, 44260, MALVILLE ‐ FRANCE
Visit our website : www.geeseware.com and register to download documentations, access to our Forum, etc…
35
http://www.arm.com/community/partners/display_company/rw/company/geeseware/
Are you ready to start an evaluation ?
36