It presents a single software platform for diverse hardware platforms. While Da Vinci Technology is driven by the needs of consumer video products such as IP network cameras, networked projectors, digital signage and portable media players, OMAP Technology is driven by the needs of wireless products such as smart phones. These vary from single digital signal processing devices to complex, system-on-chip So C devices with multiple processors and peripherals. As a software developer you question: Do I need to become an expert in signal processing and learn the details of these complex devices before I can use them in my application?
|Published (Last):||9 April 2014|
|PDF File Size:||17.60 Mb|
|ePub File Size:||8.36 Mb|
|Price:||Free* [*Free Regsitration Required]|
Their instruction rates were fast for the time, but still slow compared to what we see now five to ten million instructions per second. As an historical aside, our first architecture, the TMS, initially had no interrupts. It was quite correctly assumed that real time signals are not interruptable and therefore a processor designed to process real time signals should not be interrupted.
After a great amount of lively discussion, it was concluded that an interrupt mechanism needed to be added to the architecture. But, it was designed such that the processor could effectively interrupt the interrupt until it was through with its real time task. Now, back to the discussion.
So, they were fairly simple to do. But then as the design community began to adopt this new microcontroller concept, they added two conflicting demands: 1 More performance, and 2 Easier to use.
With these demands we methodologically made the DSP more complex and, at the same time, hid these complexities with a development environment. At the same time, the number of lines of code grew orders of magnitude greater than the thousands of lines of code. This gives us the ease of use mostly , but has forced us to significantly over deliver on performance — yes, to make up for the inefficiencies involved with ease of use. But, with the inefficiency we have lost the opportunity to take full advantage of the raw performance of the processor, or processors.
That is where a book of this sort comes in handy. There are many ways to take more advantage of the raw performance without having to learn to write it all in assembly language. The pages that follow will help you find manageable ways to get to market fast while still grabbing more of the processors raw performance. All of this on a software platform on which developers can build. Gene A. Frantz, Principal Fellow Texas Intruments Incorporated During the latter part of , Texas Instruments decided to offer rigorously tested software components such as video codecs as software products.
This was a significant decision since the company previously was accustomed to selling silicon devices, and evaluation modules, with de- velopment tools and some demonstration software. The demonstration software was included as a starter ware with the intent of showing some of the capabilities of the processor.
However, real time signal processing solutions have long transitioned from being a few hundred lines of code to several hundred thousand lines of code. The devices themselves have become quite complex, with multiple levels of cache, peripherals, and processors on one silicon die.
A need exists to provide a robust software platform that abstracts the complexities of the device and signal processing algorithms on top of which users can build their applications. At the same time, users should be able to go deep into the device if they so desire. I have had the pleasure of working with several people at Texas Instruments in putting together the strategy and process for delivering these software products and creating a software architecture that would show how to use these components and build an application.
No strategy is good unless it is put into practice and lessons learned from it. After evangelizing this software architecture for a while, starting , I focused on an emerging market in video surveillance, in particular on digital video recorders and IP network cameras.
During this time, we interacted with several customers who leveraged this software platform, created products and ramped them to production. During this phase, I realized that while we had a wealth of documentation on specific topics regarding DaVinci Technology, we did not have one big picture document or book that addressed the software platform as a whole with some examples.
As we interacted with our users, based on some of the typical questions, I would create power point presentation slides and then several of us would help our users solve their problems and get to market. One of the important things that we did was to work towards a single software platform so that developers would have the same look and feel and development experience whether they used a system-on-chip with an ARM and DSP and accelerator or just an ARM with an accelerator.
This book has been in the making since the latter part of I hope it meets the need of a single document that discusses what the software component products are, how they are related to each other, how users may build on top of them, and move from one type of hardware platform to another.
Developing Embedded Software using DaVinci & OMAP Technology
Their instruction rates were fast for the time, but still slow compared to what we see now five to ten million instructions per second. As an historical aside, our first architecture, the TMS, initially had no interrupts. It was quite correctly assumed that real time signals are not interruptable and therefore a processor designed to process real time signals should not be interrupted. After a great amount of lively discussion, it was concluded that an interrupt mechanism needed to be added to the architecture. But, it was designed such that the processor could effectively interrupt the interrupt until it was through with its real time task.
Developing Embedded Software Using Davinci and Omap Technology