JIT (Just-in-time) compilers are used to improve the performance of interpreted programs.
HLS (High-Level Synthesis) compilers are used to create digital devices using high-level languages. The main goal of HLS products is to simplify the FPGA and ASIC design process. The most common task of the HLS compiler is to generate the HDL group languages (Verilog or VHDL) from the source code of the high-level languages (C/C++).
Many modern implementations of HLS compilers are done using the LLVM framework. High-level synthesis can be created using high-level design languages for a programmable logic controller (PLC), making the IEC 61131 group languages at the output.
The HLS compiler generates various hardware microarchitectures following the specified directives and taking into account the tools used. HLS compilers allow you to find a trade-off between execution speed and hardware complexity.
Our team is ready to develop an HLS compiler for your tasks. ShuraCore constantly monitors trends in this area of compilers and also collaborates with the academic community. ShuraCore uses HLS in processor architectures, develops many attractive FPGA solutions and other products using HLS.
ShuraCore specializes in implementing new and modern ports: GCC, GDB, GNU libraries, Binutils, LLDB, LLVM utilities, and libraries. In addition, we are engaged in the optimization and adaptation of existing compilers for any hardware platform. Finally, the ShuraCore team provides a full range of services for the development of compilers and interpreters.
The front-end compiler, analyzing the source code, creates an internal representation of
Middle-end compilers are used to optimize and analyze software source code. The
The back-end compiler is responsible for specific optimization for the processor architecture
The MLIR (Multilevel Intermediate View) project is a new approach to building
Hardware compilers, or synthesis tools, are compilers whose output is a description
A virtual machine is a software or hardware system that emulates a
An interpreter is a translator whose task is to perform line-by-line analysis,
HLS (High-Level Synthesis) compilers are used to create digital devices using high-level
The LLVM Project is a collection of modular and reusable compiler and