The Cell Processor - A new Software Paradigm
I think the whole Cell Architecture contains some very interesting concepts aside from hardware details, the most outstanding in my eyes being the concept of the so called apulets. Apulets are small programs that will be sent to a Cell Processor and an apulet contains everything needed to be processed, it contains the code and the data. This is a very different approach to an object oriented hardware design, although an apulet does not necessarily directly correspond to an object as defined in a programming language.
But I really like the new idea to mix data and code, as long as the code is standairzed and portable among different Cell implementations and operating systems. This would allow radically new possibilities for audio and video codecs if properly employed. Image that with Cell processors one would only need some sort of meta codec for videos, that contains the usual information found in digital media files, like the videos size in pixels, the number of audio channels plus the encoded data. But as an addition it also would contain the complete decoder as a small Cell program. This would render the installation of the correct Codec and updates obsolete, as each media file comes with its own decoder. Of course such a thing could be already possible with the current hardware architecture, but the problem is that it would not be portable among different hardware platforms. But granted that the Cell processor will have a standardized instruction set, every device containing a Cell processor would be able to load and execute the software decoder embedded in the video file.
No more need to install the latest version of the DivX decoder or find a more subtle decoder for a specific video on the net. All neccesary information how to decode the media file would be embedded in the file itself.
As the Cell architecture already defines the new term "apulet", this would only be a logical consequence.
Kaya


