From RTSC-Pedia

Jump to: navigation, search
revision tip
—— LANDSCAPE orientation
[printable version]  [offline version]offline version generated on 18-Nov-2017 00:11 UTC


Who's using RTSC today, and what's the roadmap going forward

Internal teams within TI have used XDCtools for several years now, beginning with a 1.00 product first released in 2004; for reference, XDCtools 3.00 became available in mid-2007. The XDCtools product has broadly maintained the same functionality throughout its lifetime, though (referring back to the earlier figure) has generally solidified from left-to-right:

  • first-generation users began migrating legacy content into managed packages with minimal impact to existing development flow, as we described earlier;

  • second-generation users began leveraging the power of RTSC configuration, albeit through metaonly facade modules layered atop legacy content; and now

  • third-generation users are enjoying full entitlement to target-domain modules supported by a robust yet extensible set of core run-time services.

Because of its maturity, XDCtools 3.00 also establishes a firm baseline for backward compatibility. Through some rather novel code-generation techniques coupled with whole-program optimization, we believe that binary compatibility for deployed packages containing spec'd target modules is now possible going forward.

A premier user of the most recent XDCtools product, System/BIOS 6.00 represents a complete top-to-bottom "RTSC-ization" of the legacy DSP/BIOS code base:

  • about a dozen discrete packages containing spec'd target modules with clean, portable C-based implementations of functionality already familiar to DSP/BIOS users;

  • a number of low-level target interfaces used to abstract differences from one HW family to the next, also contributing to greater flexibility as well as portability;

  • robust XDCscript meta-content accompanying each target module which supports design-time configuration as well as run-time analysis; and

  • a set of supplementary target modules that inherit and implement several of the open target interfaces included in the XDCtools run-time, yielding full entitlement to the latter.

But even more noteworthy:  despite all of the higher-level programmatic structure introduced through RTSC, the run-time performance of System/BIOS 6.00 exceeds that of its predecessor, both in terms of time and space.

TI's recent CodecEngine product represents another leading user of XDCtools, with the emphasis here more on packaging and facading legacy content rather than re-working existing code. Because CodecEngine amalgamates a rather diverse set of elements—DSP/BIOS and Linux, I/O and communication drivers, DSP algorithms plus framework middleware, etc.—fielding this sort of product demands a common delivery format (RTSC packages) as well as a standard integration process (RTSC configuration) for these various sub-elements.

As a consequence of CodecEngine and its recent proliferation, a growing number of content suppliers have already embraced RTSC packaging as a de-facto standard; others have also begun facading existing xDAIS algorithms with metaonly modules whose configs guide integration of legacy code into CodecEngine program images. As part of its own roadmap, CodecEngine looks to drive use of RTSC's XDCspec language more aggressively when publishing target-domain C interfaces that codify different classes of algorithms—what might well become a RTSC-ization of the long-standing xDAIS algorithm standard along with its derivatives.

More information about CodecEngine and xDAIS can be found here.

As for RTSC itself, broad dissemination of the latest generation of XDCtools becomes an ever-higher priority moving forward. And while System/BIOS and CodecEngine will themselves continue to draw other producers and consumers of real-time software components into the RTSC circle, we plan a number of independent initiatives—such as the RTSC-Pedia—to make the XDCtools product and its underlying technology available and accessible to the broader community of embedded C programmers.

To that end, we've already launched an open-source initiative—RTSC.Eclipse.org—that would make XDCtools openly and freely available to all. Besides encouraging third-parties to field higher-level tooling that integrates with the Eclipse/CDT programming environment (popular among embedded developers), a de-facto standard component model addressing specific needs of embedded software can breath some necessary life back into the C programming community as a whole. Recognizing an opportunity to provide much-needed leadership within an otherwise fragmented population of almost a half-million embedded C programmers, RTSC is quite simply:  a better way to leverage C.

Personal tools
package reference