Math Products
GoFast® for Altera Nios® II and GNU C
Fast Floating Point Library
Three to Six Times Better Performance of Floating Point Calculations
In Your Embedded and RealTime Systems(1)
GoFast® for Altera's Nios® II Processors delivers high performance floating point calculations for embedded, realtime systems using the Altera Nios II processors.
Specifically designed for embedded applications; GoFast delivers for any application where floating point performance is critical to an application's success.
GoFast libraries are ANSI C compatible and directly replace the GNU C/C++ compiler's floatingpoint library.
Eliminate the need for an expensive floatingpoint coprocessor by boosting applications math calculations with GoFast.
 GoFast is fast. Delivers three to six times the performance on Altera's Nios II processors vs. GNU. (1)
 GoFast is fully reentrant, a critical requirement for embedded applications
 GoFast is ROMable
 GoFast conforms to IEEE 754
 GoFast does "Link and Go" support for GNU C/C++
 GoFast Package provides startup and initialization code
 GoFast includes complete source code, testing program and make file
 GoFast was specifically designed for use in realtime systems
 GoFast works with major Real Time Operating Systems (RTOS) and Linux
Want more information?
Click Here To Download a Free Evaluation Kit
GoFast delivers HighPerformance Floating Point Routines for GNU C/C++ for Embedded and Real Time Applications.
 Intrinsic basic operations +  * /
 Intrinsic conversions
 sqrt
 sin, cos, tan
 asin, acos, atan, atan2
 sinh, cosh, atanh
 log, log10, exp, pow
 floor, ceils, fabs
 modf, fmod, frep, ldexp
 ASCII and integer conversion
GoFast routines are measured on average at three to six times faster than the GNU math routines.

DoublePrecision 
SinglePrecision 
Function 
GoFast 
GNU 
GoFast 
GNU 
add 
0.7 
2.1 
0.3 
1.1 
subtract 
0.7 
2.1 
0.3 
1.1 
multiply 
3.2 
10.9 
0.9 
3.0 
divide 
3.4 
7.6 
1.0 
1.5 
sqrt 
6.3 
7.4 
3.2 
1.7 
exp 
21.6 
117.1 
5.6 
37.6 
log 
18.2 
182.4 
4.0 
54.1 
log10 
20.4 
199.8 
4.8 
60.8 
sin 
18.0 
105.0 
4.0 
32.1 
cos 
16.0 
120.9 
4.0 
38.4 
tan 
22.0 
220.6 
5.6 
67.1 
asin 
32.4 
213.1 
8.8 
64.1 
acos 
32.2 
201.5 
9.6 
59.6 
atan 
18.8 
209.5 
4.9 
61.4 
atan2 
21.9 
223.4 
5.8 
64.4 
pow 
42.5 
542.0 
10.6 
163.6 
Above timings are in microseconds
A "Link and Go" Solution for GNU C/C++ on Altera Nios II Processors
GoFast libraries specifically support "link and go" operations with GNU C/C++ and other supported compilers. Two libraries are supplied, one that uses neither a multiply nor a divide instruction (for NIOSX), and the other that uses both instructions on the NIOS II processors.
GoFast Floating Point performance is based on proven technology
GoFast is based on "Architecture Independent Technology" (AIT) and proven floatingpoint algorithms that were developed and refined for over a decade. The algorithms were put through rigorous testing using automated procedures. Each new port is subjected to the same testing today. GoFast™ is specifically optimized and integrated for enhanced performance for each supported processor.
Customize the GoFast library with Source Code
The GoFast package includes source code to the floating point routines. With source code, a developer can customize the GoFast™ library to fit their specific application requirements.
GoFast is Available for wide range of Additional Processors
Using the Nios II processor as a coprocessor? GoFast can be used with Nios II as a coprocessor and is available on these other processor families: 68K, ColdFire, MIPS, PowerPC, SH, SPARC, V8xx, x86, Z80, 68HC, 8051, 80196.
Optimized IEEE 754 Routines
GoFast Floating Point libraries are fully IEEE 754 compliant. Provided are single precision (32bit format) and double precision (64bit format) floating point routines. Each routine has been optimized for speed and size.
Strict Conformance and Testing for IEEE 754 Compliance
Accuracy of each GoFast Floating point routine is within one (least significant) bit for arithmetic functions and two bits for transcendental functions for most routines. The IEEE 754 Floating Point Format defines special representations for underflow, overflow, and invalid operations. The GoFast routines specifically use these formats and adhere to the IEEE 754 error handling procedures in all applicable cases. Quality assurance and testing procedures assure proper product operation. Each delivery includes target specific test programs providing confidence in product installation and operation.
Want more information?
Click Here To Download a Free Evaluation Kit
Notes:
(1) Performance improvement in a specific application will depend on specific routines used and thread of execution.
(2) The times, given in microseconds, were measured using the "standard" reference design for the Nios II Evaluation Kit, featuring a Cyclone 1C12 FPGA. This design uses a Nios II/s core running at 80MHz, with a 4 KByte Instruction cache and no hardware multiply or divide units.
(3) GoFast is a registered trademark of Lantronix.
(4) Nios is a registered trademark of the Altera Corporation.
(5) All other product or service names are the property of their respective holders.
