deep

a Cross Development Platform for Java

User Tools

Site Tools


start

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
start [2017/03/20 09:52]
sfink
start [2019/04/16 16:24] (current)
ursgraf
Line 10: Line 10:
  
 ===== Overview ===== ===== Overview =====
-deep has a modular design and can be integrated into different development frameworks. Currently deep can be run standalone or can be used in eclipse as a plugin. deep produces code for PowerPC processors. We support hardware plattforms with the mpc555 ​and mpc5200 processors. ​+deep has a modular design and can be integrated into different development frameworks. Currently deep can be run standalone or can be used in eclipse as a plugin. deep produces code for PowerPC ​and ARM processors. We support hardware plattforms with the mpc555mpc5200, iMX6, and Zynq7000 ​processors. ​
  
 ==== Translation of bytecode into machine code ==== ==== Translation of bytecode into machine code ====
 We use eclipse and the Java Sun compiler to translate the original source into an intermediate form, which is called bytecode and is stored in class files. ​ We use eclipse and the Java Sun compiler to translate the original source into an intermediate form, which is called bytecode and is stored in class files. ​
 Starting with one or several root classes we translate this classes together with any imported library classes into a single executable target file. The instruction in this target file are native machine instructions.\\ Starting with one or several root classes we translate this classes together with any imported library classes into a single executable target file. The instruction in this target file are native machine instructions.\\
-From the bytecode we start by constructing the control flow graph (CFG). Subsequently a still machine independent ​intermidiate ​form is built: the SSA (single static assignment). The CFG and SSA allow for various optimizations and are the base for the register allocation ​algorith ​and finally the code generation.+From the bytecode we start by constructing the control flow graph (CFG). Subsequently a still machine independent ​intermediate ​form is built: the SSA (single static assignment). The CFG and SSA allow for various optimizations and are the base for the register allocation ​algorithm ​and finally the code generation.
  
 ==== Components ==== ==== Components ====
Line 22: Line 22:
   * target configuration parser   * target configuration parser
   * debugger   * debugger
 +
 +==== Different Microarchitectures ====
 +Deep supports the PowerPC and the ARMv7 microarchitectures.
 +The integration of the ARM microarchitecture is still in progress.
 +To distinguish the different architectures in this document, ARM specific information is marked blue and information for the PowerPC architecture is marked orange.
 +
 +
 </​WRAP>​ </​WRAP>​
  
 <WRAP half column 38%> <WRAP half column 38%>
 ==== News ==== ==== News ====
-<box right 100% | 2015.12.17: Version 1.3.released>​ +<box right 100% | 2019.4.16: Version 1.5.released>​ 
-Version 1.3.of deep is now available with an improved RN131 driver ​for the MPC555.</​box>​+Version 1.5.of deep is now available with support ​for TOF sensors and support for unsafe classes on PPC and ARM platform. 
 +</​box>​
  
-<box right 100% | 2015.11.05Version 1.3.1 released+<box right 100% | 2019.2.1New debugging format
-Version 1.3.1 of deep is now released. It comes with an improved runtime-library and supports now libusbx to download to the MPC555 over USB3.0 ports.</​box>​+DWARF inserted in ELF-file allows debugging ​with gdb.</​box>​
  
-<box right 100% | 2015.05.20Version 1.2.4 released+<box right 100% | 2017.11.06New Task View in Eclipse
-Version 1.2.4 of deep is now available with improved Javadoc in our runtime-library and bugfixes in some drivers. +A new view allows for displaying information about running tasks.</​box>​
-</​box>​+
  
-<box right 100% | 2015.03.10New Website+<box right 100% | 2017.10.20First Version of Codegenerator for ARM
-Today we've launched our new [[http://​deepjava.org | project website]].  +deep can emit ARM instructions (with reduced scope).</​box>​
-</​box>​+
  
-<box right 100% | 2014.12.16\\ Version 1.2.1 released>​ +<box right 100% | 2015.12.17: Version 1.3.2 released>​ 
-Version 1.2.1 is now available. Booting from Flash fixed now and RN131WiFfly-Driver adopted to new Firmware-Version (4.0) of the RN131WiFly Modules. +Version 1.3.2 of deep is now available ​with an improved RN131 driver for the MPC555.</​box>​
-</​box>​+
  
 ---- ----
start.1489999965.txt.gz · Last modified: 2017/03/20 09:52 by sfink