nu-tech presentation to provide you a glimpse of our framework
TRANSCRIPT
www.nutechdsp.comwww.nutechdsp.com
118th AES Convention118th AES ConventionBarcelona, Spain - May 28-31, 2005Barcelona, Spain - May 28-31, 2005
NU-Tech: implementing DSP Algorithms in aNU-Tech: implementing DSP Algorithms in aplug-in based software platform for plug-in based software platform for
Real Time Audio applicationsReal Time Audio applicationsAbstract: This work presents a novel software platform called NU-Tech to implement real-time DSP algorithms in multi-channel scenarios. Running on a common PC, the overall framework is based on a plug-in architecture, allowing the user to connect specific blocks, operating as DSP algorithms, within the available graphical design environment. These blocks, namely NUTs’ (NU-Tech Satellites), have to be previously written in C++. A strict control over latency times is insured by a proper interface to the hardware layer of the PC sound card. It turns out that NU-Tech is well suited for development, real-time debugging and fine tuning of DSP algorithms. As further application, it fulfils the role of DSP operating core of new stand-alone programs preventing the user to develop them from scratch. Some examples are provided to show the effectiveness of the idea.
- ?What is NU Tech - ?What is NU TechNU-Tech is a powerful DSP platform to validate and real-time debug complex algorithms, simply relying on a common PC and a soundcard
NU-Tech is based on an easy plug-in architecture
• NU-Tech gives the developer the freedom to write his own NUTSs (NU-Tech Satellites)in C++ , plug them into the GUI and test the final result on a common PC
• A low-level ASIO 2.0 interface allows minimum and repetable latencies fully exploiting hardware resources
- NU Tech Development Environment- NU Tech Development Environment
?What is a NUTS ?What is a NUTS
A NUTS is a NU-Tech Satellite, basically a standard DLL:
• Each NUTS has its own fully customizable setting window• Windowless NUTSs are allowed• Data Type and Precision can be selected• Data Type coherence-check between NUTSs
Mouse-sensitive pinsEach NUTS has its own palette in trace window
Some Graphical NUTSs Some Graphical NUTSs
The setting window can be freely converted to a graphical interface to create customized tools
NUvigatorNUvigator
A “Navigator” NUTS can load multichannel tracks or multiple mono/stereo tracks to easily make comparisons.
A “real” multi-track FFT display allows x-y zooming, x-y
mooving and window resizing.
Custom FFT windows, resolution and overlap size
Logarithmic/Linear view
“Buttons-free” interface: stop to mouse moving around the
screen to change functionality. All the functions are where
you need them.
NUvigatorNUvigator
The Trace Window The Trace Window
Each NUTS can programmatically expose internal variables to be traced during run-time execution without forcing the execution to suspendThe variables can be “forced” during algorithm testing with no need to stop the application and recompile your NUTS to see changesThe state of objects on the NUTS' GUI can be altered simply exposing the linked variables. NU-Tech automatically insert a new tab for each NUTS exposing one or more variablesThe trace window can be hidden for zero CPU overhead
NUTS SDK NUTS SDKAn SDK is freely downloadable from NU-Tech web site
It shows how to develop user defined NUTSs in few steps in
C/C++
Target Applications Target Applications
Multi microphone acquisition scenarios
Algorithm testing
Demonstration platform for the early stage of development
Complex routing structures
Some examples:
Beam-forming
Line-array speakers
AEC
Multichannel automotive audio systems
: An Audio Application Line Array : An Audio Application Line Array
Loudspeaker Array tuning process can be eased by a suitable set of NUTS:
parametric equalizers
fractional delays
etc...
just relaying on a common PC
equipped with a MIMO sound card
: Industry App Accelometer Control : Industry App Accelometer ControlLIS3L02DQ MEMS accelerometer by ST Microelectronics
RS232 NUTS
reproducing an excitation
signal
simultaneously acquire
acceleration data sensed by
the device.
A micro controller acquires data at their maximum resolution at a sampling rate of 280Hz and communicate them through an RS232/UART standard interface connection to NU-Tech where special purpose graphical NUTSs show results.
- Hands Free Telephone Demonstrator- Hands Free Telephone Demonstrator
Leaff has developed a hands-free telephone demonstrator to prove the new ATMEL DIOPSIS 740 capabilities and features.The algorithms developing, testing and tuning have all been performed in NU-Tech Environment
A suitable code porting let the application previously developed work on an ATMEL DIOPSIS740 based architecture Validating the NU-Tech based approach
AEC Block Diagram AEC Block Diagram
Adaptive Adaptive FilterFilter
W[n]W[n]
Acoustic Acoustic Impulse Impulse
Response Response H[n]H[n]
ΣΣ
Filter output y[n]Filter output y[n] d[n] Echoed d[n] Echoed signalsignal
Input signalInput signal
x[n]x[n]
Error signalError signal
e[n] = d[n] – y[n]e[n] = d[n] – y[n]
A frequency domain adaptive filter approach based on the A frequency domain adaptive filter approach based on the block LMS algorithm (PBFDAF) can significantly reduce the block LMS algorithm (PBFDAF) can significantly reduce the number of multiplications.number of multiplications.
- NU Tech AEC Implementation- NU Tech AEC ImplementationAEC I/O signals are physical soundcard I/O or audio files
Main Advantages:Main Advantages:• Fast DevelopmentFast Development• No need of specific HW (PC with SoundCard)No need of specific HW (PC with SoundCard)• Reuse of Code (NUTSs previously implemented)Reuse of Code (NUTSs previously implemented)• Swift Deployment (Build an EXE and distribute it)Swift Deployment (Build an EXE and distribute it)
- - NU Tech AEC Real Time Validation- - NU Tech AEC Real Time Validation
Car Audio System Car Audio SystemPlug NU-Tech to the audio system and experiment a number of different solutions: Fine tuning of digital filters, Equalization, Phase correction, Delays and gainscan be accomplished
A binaural head (or a mic) can be used for post-processing purposes or real-time acoustic parameters inspection
- NU Tech Licensing- NU Tech Licensing
We have decided to distribute NU-Tech as:
Freeware for non-commercial use! Freeware for non-commercial use!
This allows anybody who wishes to use NU-Tech for their private projects to do so.
Students and teachers can use this version for any educational projects.
It is even ok to use this version in a commercial environment, as long as you just want to evaluate the software.
As soon as you start using it for commercial projects, you will have to purchase a license.
- - NU Tech Framework for stand alone- - NU Tech Framework for stand alone audio applications audio applications
Design Professional Audio Applications with limited effort
Restricted set of functions to get full control over the
framework
Create a “configuration” and use it programmatically
NUTSs are standard .dll files so you can easily update your
application
If you don't need a custom GUI, you can create an
executable and distribute it with NU-Tech standard
interface
- NU Tech for hArtes- NU Tech for hArteshArtes: Holistic Approach to Reconfigurable real Time Embedded Systems (IST-035143 supported by the FP6 of the EC, under the thematic area "Embedded Systems".)
NU-Tech technology is supposed to be the core of one of the
tools to be developed, letting Leaff play the role of one of
the technology contributors in the consortium.
European key players in methodologies and application
Industry: Thales, Thomson: multimedia and
communications; FAITAL: automotive and audio market;
Atmel, ScaleoChip, Leaff: platforms, tools and
methodologies
Academy: PoliMi, TU Delft, Imperial College; INRIA:
tools and methodologies; UNIVPM, Fraunhofer Institut,
UAPV, UNIFE: applications
ConclusionsConclusions
NU-Tech is an emerging technology which tries to propose a different approach in the field of embedded systems development process.
NU-Tech could represent a good solution to the problem of
creating software on time, on budget and with the
desired functionality.
NU-Tech platform can count on a growing community of
users and developers with the aim of improving its features
and widening its application areas (SDK)
NU-Tech 2.0: with video support (powerful video streaming
engine, with syncronization feature, for frame processing
and video algorithms)