Method and system for converting code to executable code...

Data processing: artificial intelligence – Neural network

Reexamination Certificate

Rate now

  [ 0.00 ] – not rated yet Voters 0   Comments 0

Details

C706S027000, C706S033000, C717S138000, C717S139000

Reexamination Certificate

active

06578020

ABSTRACT:

BACKGROUND OF THE INVENTION
1. Field of the Invention
The present invention relates to an integrated circuit method and system for using neural networks for converting code to executable code.
2. Description of the Related Art
The Java** Platform provides an added layer of execution between the underlying operating system and programs written in the Java computer language. The Java Platform converts Java source code (.Java files) to bytecodes (.class files), which are machine independent representations of a Java class. Thus, the same bytecodes would be created for all operating system platforms. The bytecodes are then inputted to a Java Virtual Machine program that converts the bytecodes to the object code in the native machine language of the operating system on which the Java Virtual Machine is installed. Thus, there is a platform-specific Java Virtual Machine program for each platform on which Java programs can execute.
The Java Virtual Machine typically includes two components, an Interpreter and a Just-In-Time (JIT) Compiler. The bytecodes are either interpreted by the Interpreter or turned into native machine code by the JIT Compiler. The native code may then be executed to run the Java program. The JIT Compiler is intended to generate code faster for certain methods that are called frequently. The JIT operates by searching for strings having a recognizable pattern in the bytecodes. The JIT provides a mapping of such recognizable strings of bytecodes to native code statements. The JIT compiler reuses copies of translated bytecodes to speed up the compilation process. In this way, the JIT Compiler can quickly convert recognizable segments of the byte code to native code.
FIG. 1
illustrates the prior art method for converting Java source code to executable native machine code through the use of the Java Interpreter and JIT Compiler.
There is a need in the art for further improvements for compiling Java bytecodes into native code that may be executed by the native operating system platform on which the Java Virtual Machine is running.
SUMMARY OF THE PREFERRED EMBODIMENTS
To overcome the limitations in the prior art described above, preferred embodiments disclose an integrated circuit method and system for generating a compiler to map a code set to object code capable of being executed on an operating system platform. The integrated circuit is encoded with logic including at least one neural network. The at least one neural network in the integrated circuit is trained- to convert the code set to object code. The at least one trained neural network is then used to convert the code set to object code.
In further embodiments, the code set comprises Java bytecode implementing a Java class.
In still further embodiments, the at least one neural network embedded in the integrated circuit comprises a first level and second level neural networks. The first level neural networks are trained to convert the code set to a unique representation of the code set and the second level neural network is trained to convert the unique representation of the code set to the object code. After training, the first level neural networks are capable of being used to convert the code set to a unique representation of the code set and the second level neural network is capable of being used to convert the unique representation to the object code.
In yet further embodiments, the code set is parsed into a plurality of input vectors and each input vector is assigned to one of a plurality of first level neural networks. The first level networks are trained to convert the assigned input vector to an output vector. The combined output vectors from each first level neural network form a unique representation of the code set.
Preferred embodiments provide a mechanism for utilizing neural networks to provide a mapping from an input code set, such as Java bytecodes implementing a class, to native machine code The preferred embodiments are especially useful for substantially reducing the time needed to compile Java bytecodes into native machine code. The preferred embodiments avoid having to interpret any portion of the bytecodes. Instead, neural networks are utilized to map Java bytecodes to native machine code in a manner that is substantially faster than current Java Virtual Machine implementations using Interpreters and JIT Compilers. The neural networks of the preferred embodiments further reduce compilation time by parallel processing the input bytecodes and by providing a mapping that avoids the need for time consuming interpretation operations.
Still further, the preferred integrated circuit implementation includes logic to train the neural networks embedded in the integrated circuit to convert new Java classes or bytecodes into object code, thus allowing the integrated circuit to retrain the neural networks.


REFERENCES:
patent: 4858147 (1989-08-01), Conwell
patent: 4994982 (1991-02-01), Duranton et al.
patent: 5005206 (1991-04-01), Naillon et al.
patent: 5129037 (1992-07-01), Kirk et al.
patent: 5134396 (1992-07-01), Sirat et al.
patent: 5151971 (1992-09-01), Jousselin et al.
patent: 5201029 (1993-04-01), Jackson
patent: 5293459 (1994-03-01), Duranton et al.
patent: 5325464 (1994-06-01), Pechanek et al.
patent: 5748849 (1998-05-01), Gobert
patent: 5787279 (1998-07-01), Rigoutsos
patent: 5841947 (1998-11-01), Nordin
patent: 5946673 (1999-08-01), Francone et al.
patent: 5960391 (1999-09-01), Tateishi et al.
patent: 6070140 (2000-05-01), Tran
patent: 6092039 (2000-07-01), Zingher
patent: 6131191 (2000-10-01), Cierniak et al.
patent: 6266807 (2001-07-01), McGarity et al.
patent: 6330659 (2001-12-01), Poff et al.
patent: 6332215 (2001-12-01), Patel et al.
patent: 6493686 (2002-12-01), Francone et al.
patent: 2002/0066083 (2002-05-01), Patel et al.
patent: 2280288 (1995-01-01), None
Nigri et al; “Silicon Compilation of Neural Networks”. 5th Annual European Computer Conference, May 1991, p. 541-546.*
Luick, D.; “TP 6.1 Beyond Superscalar RISC, What Next? An Almost Unbiased View”. 1998 IEEE International Solid-State Circuits Conference, Feb. 1998, p. 86-87.*
Kuhn et al.; “Description and Simulation of Hardware/Software Systems with Java”. Proceedings of the 36th Design Automatio Conference, Jun. 1999, p. 790-793.*
Kim et al.; “Designing a Java Microprocessor Core Using FPGA Technology”. 11th Annual IEEE International ASIC Conference 1998, Sep. 1998, p. 13-17.*
Saha et al.; “Web-based Distribution VLSI Design”. Proceedings of the 1998 11th International Conference on VLSI Design, Jan. 1998, p. 449-454.*
Ito et al.; “Designing a Java Microcontroller to Specific Applications”. Proceedings of the XII Symposium on Integrated Circuits and System Design, Oct. 1999, p. 12-15.*
Chen et al.; “A Neural Network Architecture for Syntax Analysis”. IEEE Transactions on Neural Networks, Jan. 1999, p. 94-114.*
Yang et al.; “LaTTe: A Java VM Just-in Time Compiler with Fast and Efficient Register Allocation”. Proceedings of the 1999 International Conference on Parallel Architectures and Compilation Techniques, Oct. 1999, p. 128-138.*
Artigas et al.; “High Performance Numerical Computing in Java: Language and Compiler Issues”. 1999 LCPC, Aug. 1999.*
Newhall et al.; “Performance Measurement of Dynamically Compiled Java Executions”. ACM 1999 Java Grande Conference, Jun. 1999.*
Prechelt, L.; “A Parellel Programming Model for Irregular Dynamic Neural Networks”. Proceedings of the 3rd Working Conference on Massively Parellel Programming, Nov. 1997, p. 214-219.*
Ramacher, U.; “Synapse-X: A General-Purpose Neurocomputer Architecture”. 1991 IEEE International Joint Conference on Neural Networks, vol. 3, Nov. 1991, p. 2168-2176.*
Moreira et al., High Performance Computing with the Array Package for Java: A Case Study Using Data Mining, Proceedings o the 1999 ACM/IEEE Conference on Supercomputing, Aug. 1999.*
Vellacott, O.R. ANNECS: A Neural Network Compiler and Simulator, International Joint Conference on Neural Networks, Jul. 1991, vol. 2, p. 991.*
Vellacott, O.R. Compilation of Neural Nets From High Level Specifications, IEE Col

LandOfFree

Say what you really think

Search LandOfFree.com for the USA inventors and patents. Rate them and share your experience with other people.

Rating

Method and system for converting code to executable code... does not yet have a rating. At this time, there are no reviews or comments for this patent.

If you have personal experience with Method and system for converting code to executable code..., we encourage you to share that experience with our LandOfFree.com community. Your opinion is very important and Method and system for converting code to executable code... will most certainly appreciate the feedback.

Rate now

     

Profile ID: LFUS-PAI-O-3106186

  Search
All data on this website is collected from public sources. Our data reflects the most accurate information available at the time of publication.