ADS
SBC's with Linux
Embedded Linux and ADS Move to the next generation of XScale, with power management with ADS
Embedded Linux on Monahans Move to the next generation of XScale, with power management with ADS
Embedded Linux with uBoot Great way to start and load your Debian distribution
CRAMFS This popular embedded file system fully supported on ADS SingleBoard Computers
EABI ADS has released EABI support for ARM. Dramatic perfrormance improvements possible.
U-Boot With all new systems, ADS applies U-BOOT for system load.
|
EABI For Embedded Linux SBC's
What is EABI?
GNU EABI is a new application binary interface (ABI) for Linux. It is part of a new family of ABI's from ARM® Ltd. known in the arm-linux community as EABI (or sometimes Embedded ABI).
Applied Data Systems has made available for immediate EABI download an experimental port of Debian using this new ABI for ARM systems. We will update this frequently.
Why switch to EABI?
According to Debian Wiki the new EABI:
- Allows mixing softfloat and hardfloat code.
- Uses a more efficient syscall convention.
- Will be more compatible with future tools.
The ability to mix floating point code is the most important new feature.
Like most root file systems for ARM computers, Debian has traditionally used hardfloat FPA instructions for floating point arithmetic. Very few ARM CPUs actually support FPA (a specific kind of floating point acceleration) but arm-linux kernels can emulate FPA instructions. They do this through illegal instruction faults which are rather inefficient. Emulating floating point instructions using softfloat (-msoftfloat) can be 4 to 10 times faster than kernel emulation.
Prior to the introduction of EABI, the only way to use softfloat was to recompile the entire root file system with softfloat enabled. With EABI, softfloat instructions will be used by default and the root file system can have a mixture of softfloat and hardfloat executables.
Now, if you have a system with floating point hardware -- it doesn't have to be FPA, it can be something else -- you can recompile critical software with the appropriate hardfloat instructions and run it on a system along with software that uses softfloat.
How do I use EABI?
To use EABI, you'll need to visit our support forums for instaltion details. The root file system includes an arm-linux-gnueabi toolchain which you can use to recompile your own source code.
Besides FPA, what other intruction sets are there ?
We have or will have systems that use VFP (Vector Floating Points), Maverick Crunch (Cirrus Logic), and iWMMXt (Intel) instructions. (The iWMMXt instructions are actually integer SIMD instructions but their opcodes overlap those for FPA).
Are you interested
in Linux for embedded system development? Why not contact
us and look at the options. |