Efficiency can be a particular challenge when working with high-level programming languages. This is due to the large gap between the front-end description of an application in a high-level language like C, C++, or Matlab, and the typical low-level description with instructions defined in assembly-level language for the target machine. Consequently, the compiler’s translations of source code into instructions that can be stored in memory and executed by the machine in its native code are particularly complex.
To address these challenges, Imsys has developed ISAL, an ISA with a novel design specifically for LLVM compiler infrastructure. ISAL offers a layer of abstraction between the hardware and software that provides new characteristics.
ISAL is implemented as a set of tailor-made microinstructions, using Imsys’ unique microprogrammable functionality. The machine instruction set semantically matches the LLVM Assembly, thereby minimizing the complexity of the translation as there is no semantical difference. This, in turn, reduces performance degradation to a minimum.
Thanks to LLVM Assembly, ISAL offers a particularly rich ISA. The flexibility of Imsys’ lean technology further ensures that ISAL can provide a variety of options for enhancing and upgrading functionality with application-specific features on demand.
By creating this special layer between the front-end, high-level source code and the hardware-oriented architecture, ISAL bridges the gap for the compiler. Being based on Imsys lean technology, it makes it possible to achieve both increased efficiency and flexibility while working with high-level application development.
Contact us to learn more about ISAL.