VDK Development Tool

VDK Development Tool - Microcomputer Systems 1 Visual DSP...

Info iconThis preview shows pages 1–7. Sign up to view the full content.

View Full Document Right Arrow Icon
Microcomputer Systems 1 Visual DSP Kernel (VDK)
Background image of page 1

Info iconThis preview has intentionally blurred sections. Sign up to view the full version.

View Full DocumentRight Arrow Icon
February 11, 2012 Veton Këpuska 2 VDK Module Outline What is the VDK? Why Do We Need a Kernel? VDK Concepts and Features How to Create a Project with VDK support Debug Capabilities Summary/Conclusion
Background image of page 2
February 11, 2012 Veton Këpuska 3 What is VDK? The Visual DSP Kernel is a pre-emptive kernel designed to run efficiently on Analog Devices family processors Included with VisualDSP++ development tools
Background image of page 3

Info iconThis preview has intentionally blurred sections. Sign up to view the full version.

View Full DocumentRight Arrow Icon
February 11, 2012 Veton Këpuska 4 What is VDK? VDK is a collection of libraries and it’s associated support  files, for example header files. Lean kernel designed to quickly get something up and running  quickly at no cost.  Third party kernels and OS’s are more full  featured.  However, VDK does provide all the necessary  hooks and mechanisms to fully implement almost any  conceivable applicatiation. Even though the kernel is described as a pre-emptive kernel,  other scheduling methods can be defined…round robin, co- operative, etc
Background image of page 4
February 11, 2012 Veton Këpuska 5 Why is Kernel needed? A simple application that does only one task may not need a kernel i.e. Blind processing of a “super loop” If you have more than one task, an application could be structured in a couple of ways: Respond to an event Events change execution state Assign tasks a given priority and execute high priority tasks more often These approaches get difficult when You need to preserve the state of a task Low priority tasks may steal processing time longer than anticipated
Background image of page 5

Info iconThis preview has intentionally blurred sections. Sign up to view the full version.

View Full DocumentRight Arrow Icon
Veton Këpuska 6 Additional Clarification “Super Loop” – some applications can be run as one big loop.  For example,  application code starts execution at “_main”.  In some simple systems, it is  possible to put a “while(1)”loop in main.  All functions are executed in  sequential order and once execution hits the bottom of the loop, the program  resumes from the top.  “Respond to an event” – is known as an event driven kernel.  For example,  the system can spend all its time in an idle loop waiting for an external  interrupt to happen.  Once the interrupt is triggered, the code jumps to the  service routine which then jumps to the processing routine.  Once  processing is down, the execution flow returns to the idle loop. In a typical multi threaded system, a thread (task)  could be interrupted at  any point.  At some time later when the thread continues execution it will be  necessary to continue from where it was interrupted.  In order for this to  work, it is necessary for the thread to restore it’s state to what it was prior to  being switched out.  In other words the code must be re-entrant…VDK  handles this automatically.
Background image of page 6
Image of page 7
This is the end of the preview. Sign up to access the rest of the document.

Page1 / 33

VDK Development Tool - Microcomputer Systems 1 Visual DSP...

This preview shows document pages 1 - 7. Sign up to view the full document.

View Full Document Right Arrow Icon
Ask a homework question - tutors are online