logo NASoftware
innovative computing solutions
 
 Home

 Products
  * DSP Libraries
  * VSIPL
  * CSIPL
  * VecLib
  * FFTW

 Documents
  * Datasheets
  * Timings

 Services
  * DSP Library Ports
  * Vector Processors
  * Consultancy

 Company Info
  * About NASL
  * Contact Us
  * ISO 9001
  * Privacy Policy
  * Legal Stuff


 

DSP Library Ports

If you need
  • a DSP library to run on your boards,
  • a version of your library for another processor, or
  • extensions to existing libraries
contact us to discuss your requirements.

We have an in-house tool, known as Liberator, that assists in the automated development of low-level libraries for RISC processors. Liberator targets processor-specific hardware features in order to automatically generate large numeric libraries with prescribed capabilities and interfaces.

The elementwise functions from the VSIPL library and our VecLib library for the PowerPC provide examples of the power of Liberator: the system can be configured to produce high performance vector functions whatever the alignment, stride, or size of the data. To hand-code this number of functions would simply not be feasible within the useful lifespan of the associated hardware.

It is also possible to automatically generate a large proportion of the higher level routines that make up a typical scientific or numerical hardware-optimised library. Functions from linear algebra, image or signal processing are examples. The

  • excellent performance
  • immediacy of development
  • low cost of development
  • sheer quantity of functions that can be generated
make it possible to provide facilities that would be too costly to develop by hand.

How does it work?

Liberator uses a sequence of processing passes on specially constructed hierarchical sets of metadata. These provide information on
  • the user interface to the library (API)
  • strategies for data distribution (in parallel libraries)
  • strategies for data blocking and prefetching
  • strategies for loop unrolling
  • low-level operations and features supported by the target processor.
Liberator automatically generates code that supports data of any type, size and alignment and that can be accessed with any stride; complex data can be stored in either split or interleaved format.

What Liberator can do for you

N.A.Software, with Liberator, can provide you with highly optimised libraries for your new or existing boards. A number of major board manufacturers have already licenced our technology and our libraries. If you are a hardware manufacturer, systems developer, or software house and are interested in joining them contact us.
 

Created 30 Jan 2008 Copyright © N.A.Software