Sophisticated tools bring real-time DSP applications to marke

It wasn`t long ago that developers writing software code for real-time digital signal processing (DSP) applications wrote almost exclusively in assembly language to meet stringent system performance requirements. Developing embedded DSP applications was considered as much an art as a science, where developers tried to perfectly optimize their code to wring every ounce of performance out of a specific chip architecture.

Jan 1st, 1998
Th Mae72550 48

Sophisticated tools bring real-time DSP applications to market

By John H. Mayer

It wasn`t long ago that developers writing software code for real-time digital signal processing (DSP) applications wrote almost exclusively in assembly language to meet stringent system performance requirements. Developing embedded DSP applications was considered as much an art as a science, where developers tried to perfectly optimize their code to wring every ounce of performance out of a specific chip architecture.

Yet as DSP has quickly become a mainstream technology and a core ingredient in a wide variety of signal processing, communications, and multimedia product development in military and commercial markets, the hand-crafted approach to software development has become a luxury few developers can afford. New floating point architectures like the recently-announced C67x from Texas Instruments in Houston and the SHARC from Analog Devices in Norwood, Mass., are opening up a whole new range of applications for real-time developers.

The introduction of Very-Long-Instruction Word (VLIW) and superscalar architectures, multicomputational units, and high-bandwidth programming and data buses on-chip are bringing new levels of DSP performance to developers and driving up the complexity and size of code.

Still, market pressures are shrinking time-to-market windows and forcing real-time developers to build sophisticated solutions in short time periods, which places a new premium on automated code-generation tools, ever-more-integrated development environments, and a rapid migration to higher-level, and more portable languages.

Leading the way in this migration to more sophisticated toolsets are the DSP chip vendors themselves. By offering more efficient C compilers, more extensive libraries, more powerful emulators, and enhanced source-level debuggers that support mixed C/assembly development, they are simplifying the task facing real-time systems developers. Program/data loading, execution control, and system resource modification are common debugger features. Other common features include display, stack trace, breakpoints and watchpoints, as well as easy-to-use graphical user interfaces and context-specific on-line help.

With the announcement of their new fixed-point C6x and floating point C67x DSPs, marketers from Texas Instruments are offering a new compiler they claim offers three times the efficiency of any DSP compiler on the market and the first assembly optimizer for assembly language programming and scheduling. Both are tuned to TI`s new VelociTI VLWI architecture, a highly parallelized approach that supports the simultaneous execution of as many as eight instructions. Both are also designed to shield the developer from complexity by allocating processor resources such as registers and memory address locations.

"With the new compiler and assembly optimizer, the developer doesn`t have to be concerned about the explicit parallelism that exists in the architecture," explains Bill Novak, manager of development tools marketing for the Texas Instruments Software Development Systems Division. "Even something that a designer might typically do in assembly language, like allocating registers, doesn`t have to be done at all with the assembly optimizer because it allows you to work with a set of virtual registers almost as you would create variables in a C program. You don`t have to worry where specifically they will be stored." Supporting the new DSP family is also a new windows-based debugger interface, a hardware emulation board compatible with TI`s XDS510 Joint Test Action Group emulator interface known as JTAG, and a simulator and linker.

In military real-time DSP designs, support for multiprocessing configurations is key. The ability to control, monitor, and debug multiple DSPs simultaneously is especially important, particularly where DSPs share a common memory.

The Analog Devices SHARC DSPs, with their performance of 120 million floating point operations per second and unique 4 megabits of dual-ported, on-chip memory, has won over a large number of military designers in recent months. "On-chip memory is a very valuable commodity on the SHARC processors," says Richard Jaenicke, director of marketing at VME board vendor Sky Computers Inc. of Chelmsford, Mass.

Designers are using the chip in programs at Lockheed Martin in Manassas, Va., Northrop Grumman Electronic Sensors & Systems in Baltimore, and at other system manufacturers. Engineers also have mounted the chip on boards from Mercury Computer Systems in Chelmsford, Mass., Ixthos of Leesburg, Va., Sky Computer, Alex Computer Systems Inc. of Ithaca, N.Y., Loughborough Sound Images Ltd. in Leicestershire, England, Spectrum Signal Processing in Burnaby, British Columbia, and others.

Len May, product manager for the Analog Devices SHARC DSPs estimates that more than 70 percent of all ADSP-21060 and ADSP-21062 designs use more than one processor. "Multiprocessing support is one of the key reasons it`s been so widely adopted," he claims.

On-chip features of the SHARC include built-in bus arbitration, which automatically controls which of the six processors have access to the external port, and a unified address space, which supports reads and writes from the memory of any other processor in one cycle. These features help make the most of multiprocessor system performance.

In addition, Analog Devices officials have recently added tool support in the form of Visual DSP, an integrated development environment that supports multiprocessor shared memory and overlay memory. The environment integrates a suite of tools including an ANSI-compliant optimizing C compiler, an assembler, a linker, a librarian, PROM splitter, preprocessor, and C runtime library. A debugger interface supports mixed C and assembly source-code-level debugging, mixed fixed and floating point debugging, and user-defined target platform support through application programmer interfaces (APIs).

"From the same application, developers can write their code, link it in with libraries from another vendor, integrate it with an RTOS [real-time operating system] from companies like 3L or Spectron Microsystems using third party APIs within the environment, and perform debug and simulation," says Lori Berenson, marketing manager for DSP development tools at Analog Devices. "So it basically allows the developer to visualize his application within the same environment from concept all the way to their target."

In addition, Analog Devices officials have announced a new Ada compiler for the SHARC that runs within the Visual DSP environment and supports program and data memory as well as in-line assembly. "Most military customers have a lot of legacy Ada code," Berenson notes. "This way they can migrate their Ada code into the SHARC processor using this compiler, continue to develop in Ada, or start new applications development in C, and still link all their Ada, C, and assembly code."

RTOS support

A key element in the continual migration of real-time DSP solutions to higher levels of performance has been the evolution of real-time operating systems. Offerings such as SPOX from Spectrum Microsystems in Santa Barbara, Calif., Parallel C from 3L Ltd. in Edinburgh, Scotland, and Helios from Perihelion Distributed Software Ltd. in Shepton Mallet, England, have helped simplify design by combining standard operating system functions such as real-time preemptive multitasking and memory management with synchronization and interprocessor communications mechanisms such as mailboxes and variable- or fixed-sized FIFOs to help coordinate multiple tasks both on a single processor or across multiple processors.

Last year Spectron Microsystems officials announced they have signed a contract with the U.S. Defense Advanced Research Projects Agency in Arlington, Va., (DARPA) to develop application configuration language (ACL) middleware with Mercury Computer Systems to interface between DSP software development tools and multiprocessor DSP platforms that run the SPOX real-time operating system.

In the first phase of the contract, Spectron engineers will develop the middleware. In the second phase, Spectron will work with Sanders, a Lockheed Martin Company in Nashua, N.H., to produce a specific ACL/SPOX implementation to run on a massively parallel supercomputer developed by Sanders under DARPA funding. The high-performance embedded computer is based on a distributed network of clusters that communicates via a message passing-protocol that runs on a high-speed MYRINET network of message passing processors. SPOX will run on each individual processor and a network version will run on the message passing processors.

Spectron officials last year also announced SPOX support for the Texas Instrument new TMS3206x DSP. Initially, the operating system will be available on boards from Spectron`s parent corporation, Dialogic Corp. of Parsippany, N.J., and Loughborough Sound Images. SPOX already runs on the Analog Devices SHARC and TI TMS320C40 and TMS320C80 DSPs.

3L officials recently announced the first availability of Parallel C on the SHARC DSP. Optimized for multiprocessor applications, the operating system manages inter-processor communications by automatically adjusting if a software task moves to a different processor or the available hardware connections change between processors.

That capability comes via two components: a distributed, real-time microkernel that supports tasks, threads, timers, and pre-emptive priority scheduling, as well as powerful interprocessor message-switching software that supplies end-to-end virtual connections over an underlying packet-switched network. "It will help many SHARC customers get to market quicker by providing software to enable multiple tasks running on multiple processors with the required intertask communications support," says Analog Devices` May.

"Most of our mil/aero customers are using multiprocessing systems where design flexibility to them is worth money, and about two-thirds use Parallel C." explains Tim Marchant, software business manager for Spectrum Signal Processing. Leaders of Spectrum recently acquired 3L and say they plan to add new capability to Parallel C and associated tools in the near future.

Other RTOS vendors are also getting into the act. A relatively new entrant into the DSP arena is longtime RTOS vendor Wind River Systems of Alameda, Calif. The company has developed a real-time kernel designed to DSP requirements called Wisp that retains many of the features of Wind River`s popular VxWorks, a kernel used in a broad range of conventional military designs.

Wind River officials are matching the new kernel with a new version of their Tornado integrated development environment and a set of host-based DSP-oriented tools and utilities. Initially Wind River engineers designed the components to run on Motorola`s Model 56300 DSP, but officials say they will support a variety of other DSPs soon.

Under one roof

Tool vendors are also attacking time-to-market issues with integrated development environments and enhanced visualization tools to accelerate interpretation of data. Code Composer from Go DSP Corp. in San Diego, is one strong example. This tool ties several different software-development tasks onto one application.

Even though DSP vendors like TI offer a separate debugger, profilier, compiler, code generator, and editor, the software developer still must open and close separate tools as he moves through the development process. "You can spend a lot of time going between applications, whereas in our case all you have to do is press one button and it`s all integrated," notes Omar Fattah, director of sales and marketing at Go DSP.

Code Composer offers other shortcuts as well. Since the debugger and editor are the same tool, the developer can look at the disassembly information as he or she edits. The integrated development environment also offers a feature called a probe point that, much like a sophisticated breakpoint, enables the software designer to inject or extract file-signal data, take a snapshot of memory locations, or even execute a macro for test at any point during program execution without having to modify DSP source code.

"The implications are dramatic because without this feature you`d have to write some additional test code into the actual algorithm, then take the output, insert it into a file and save it, and then go into another application, import the data, and display it on another graphing program," Fattah says.

Code Composer 5.0, the latest revision, adds integrated graphical signal analysis. Designers can now configure the memory visually and generate the linker command file using wizards. An on-the-fly dynamic representation enables the user to visualize the memory configuration as he builds it. An application framework setup utility generates a complete code infrastructure around the user`s algorithm including peripherals, vector tables, and buffers.

Basically, the designer can focus on writing the core of the algorithm. Another major enhancement is 3-D visualization capability on data sets. "It gives you the ability to extract a lot more information than you ever could before in applications like radar, sonar, or medical imaging," Fattah says. Code Composer runs on Windows 95 and NT and supports TI`s TMS320 series DSPs.

For developers who want to get their hands on real-time data, Hyperception of Dallas offers Hypersignal RIDE, a real-time integrated development environment that enables the user to design the application in real-time on the board as well as simulate it. "More and more often in real time development projects, we`re seeing DSP data acquisition boards plugged into the computer such that the engineer can design his system in real time as opposed to simulating it," says Hyperception President Jim Zachman.

Built for a variety of applications ranging from low-level DSP systems design to application-specific projects such as real-time instrumentation, data acquisition, or control, Hypersignal RIDE enables the developer to select from hundreds of functions from a pull-down menu and connect them together to display the dataflow from function to function. Run-time parameters are then adjusted from pop-up dialog boxes and the entire algorithm is executed on the DSP with the press of a button. The environment supports several DSP chip families as well as boards from multiple DSP vendors.

One of the key features of RIDE is its use of the same user interface for both simulated and real-time block functions enabling the developer to combine real-time functions running on the plug-in board and simulated functions running on the PC in the same design. "You`re actually running on the board as you bring the blocks up, so you don`t have to go through a separate C compilation stage," Zachman explains. "When you bring up block functions, they correspond to chunks of DSP code that are running on the board."

Zachman estimates that one-third of Hypersignal RIDE`s sales go directly to defense projects and another third to military-related developers. One design win was in the Boeing F/A-18 fighter-bomber control system in conjunction with a SHARC-based board. But the low-cost PC-based environment is also proving attractive in more cost-conscious military development environments as a prototyping tool. "The fact that budgets are a bit more constrained in some areas has helped us to some extent because developers can now get a $4,000 software tool and $1,000 board with a floating point DSP that provides them with a pretty good deal for proof of concept," Zachman says.

Other tool vendors, such as The MathWorks Inc. of Natick, Mass., are also packaging tightly integrated versions of their popular tools and developing new links that simplify the move from algorithm development to implementation on real-time DSP hardware. Recently MathWorks officials introduced Blockset 2.0, an enhanced version of their block diagram simulator that includes improved filter design and realization, an optimized matrix math library, enhanced adaptive and multi-rate filters, spectral analysis, signal operations, and logic components.

MathWorks engineers have also bundled Blockset 2.0 with other existing signal processing and algorithm development tools to create a single development environment called DSP workshop. The new environment is tightly linked with a C-code generator called Real-Time Workshop so developers can prototype real-time code generated by the workshop on any floating-point hardware. Designers at Spectron Microsystems of Santa Barbara, Calif., have announced a complimentary tool called SPOXworks that links the MathWorks simulation and modeling tools with Spectron`s popular SPOX real-time DSP operating systems.

While the introduction of extensive visualization capability can enhance productivity, it also can help military systems designers when they re-target their systems to more current hardware. "There`s a lot of systems out there now that are using Intel i860 processors that aren`t going to be supported forever, and designers are saying gee we`d like to upgrade the hardware, but I`ve got to start over on the software," observes Bernie Schaming, program manager with the Lockheed Martin Advanced Technology Laboratories in Camden, N.J.

Lockheed Martin engineers have developed an innovative tool called GEDAE, short for Graphical Entry, Distributed Application Environment, that gives application programmers the ability to graphically construct multiprocessor, real-time systems and distribute them at the touch of a button. A trace table provides a view of all execution activity and the communications activity on the hardware and software, Schaming says.

Developers can use the tool to partition and map the algorithm to multiple DSPs in a commercial off-the-shelf embedded target hardware environment. Lockheed Martin engineers intend the tool`s small communication kernel to ease porting to different operating systems and architectures.

"What we`re saying is that if you build your software in GEDAE, then re-targeting your application is simply a matter of reapportioning, remaking, and perhaps re-optimizing, but you don`t have to lose the fundamental capability of the software," Schaming says. The re-targeting capabilities helped Lockheed Martin win a dual-use program award for U.S. Navy undersea surveillance programs from the U.S. Office of Naval Research in Washington.

Originally developed for in-house use, engineers are using the tool in a wide range of systems including several Lockheed Martin projects for sonar, radar, and communications. Engineers at the U.S. Air Force Research Laboratory Information Directorate in Rome, N.Y., are also using the tool for speech-processing applications.

Lockheed Martin officials are allowing SHARC-based board vendors Ixthos and Alex Computer Systems to resell the tool under licensing agreement.

Using the tool are designers at Mercury Computer Systems under the heterogeneous capability of its MC/OS 4.0, a runtime environment designed to extend the scaleability and performance of imaging, radar, sonar, video, and other signal processing applications by providing a single-system model for heterogeneous systems that combine RISC and DSP processors. Lockheed Martin`s Schaming claims about five other board vendors are also looking at licensing GADAE.

Click here to enlarge image

Hyperception`s Hypersignal RIDE real-time integrated development environment, which combines design and simulation functions, was part of avionics development for the Boeing F/A-18 fighter-bomber control system. The tool was built for a variety of applications ranging from low-level DSP systems design to application-specific projects such as real-time instrumentation, data acquisition, or control.

Click here to enlarge image

Increasingly complex digital signal processing architectures such as the Texas Instruments TMS320C6x are providing a growing number of opportunities for third-party real-time software development tools.

Click here to enlarge image

The Analog Devices SHARC DSP is among the sophisticated signal processors fueling new applications for DSP software tools.

DSP board market consolidates

Real-time software vendors are viewing with concern the recent trend of consolidation among vendors of single-board digital signal processors. Despite the DSP board market`s reportedly excellent growth prospects, the industry has seen a rash of mergers of late. Will Strauss, an analyst with Forward Concepts of Tempe, Ariz., says he sees 20 percent or better growth this year for DSP board vendors.

Still, last year military board vendor DY 4 Systems Inc. of Kanata, Ontario, bought Ixthos Inc. of Leesburg, Va., a manufacturer of SHARC-based DSP boards for military and commercial applications. At the same time DSP board maker Sonitech International Inc. of Wellesley, Mass., was acquired by RadiSys of Hillsboro, Ore., and leaders of the firms announced an intent to provide embedded DSP solutions to telecommunications, voice coding, imaging, and machine vision markets.

In November the consolidation continued when Mizar Inc. of Dallas, and Loughborough Sound Images (LSI) Ltd. of Leicestershire, England, announced their intention to merge. Both firms manufacture DSP boards for the real-time signal- and image-processing markets. But Mizar has traditionally focused on ruggedized multiprocessor boards for the military market, while LSI sells heavily into the commercial telecommunications, instrumentation, industrial automation, and medical imaging industries. Recently LSI introduced a new development board for embedded and telecommunications applications based on the new Texas Instruments` 320C620 general purpose DSP.

Why is the market consolidating when growth prospects look so promising for DSP board vendors? Primarily as a survival tactic against larger commercial competitors, explains Strauss. "All the military electronics vendors have been on an acquisition trail and a lot of that is to get the economies of scale they`ll need to survive in commercial markets," he says.

The necessity and costs associated with supporting global markets are a second key factor. "We believe that a small number of well-financed, well-managed global players will emerge in the embedded computing industry and this company will be one of them," explains Sam Smith, Mizar`s Chairman and interim CEO. - J.M.

Click here to enlarge image

The industry that produces VME digital signal processing boards is consolidating as established companies fight for survival against larger commercial competitors. Sky Computers of Chelmsford, Mass., which makes the VME DSP pictured above, is among the strongest competitors in this market.

Vendors launch DSP software standards effort

One area that has seen little progress to date in the real-time software arena is the development of standards for DSP system software. Historically, embedded applications have remained highly fragmented. Yet there is widespread recognition that industry standards would facilitate applications and algorithm portability, and permit development tool inte- roperability.

In an attempt to get a standards effort rolling, officials of Texas Instruments in Dallas recently announced a standard DSP/BIOS application programming interface (API) for their fixed-point DSPs.

The new DSP/BIOS, co-developed with Spectron Microsystems of Santa Barbara, Calif., provides basic real-time multitasking, interrupt, I/O, data capture, and statistics services in a tiny footprint that can be ROMed on the DSP.

Officials of the companies say they hope the facilities not only simplify application development and enhance portability, but also provide a means for automatically supplying real-time information to host tools as they execute. They also are intended to lay the groundwork for next-generation development tools that can monitor, debug, test, and diagnose DSP applications as they execute in real time.

For third-party tool developers, standards not only simplify their task, "it also reassures the end users that they`ll find various solutions that will implement to that kind of standard," says Bill Novak, manager of development tools marketing for the Texas Instruments Software Development Systems Division.

Last June Spectron officials introduced the first implementation of TI`s DSP/BIOS in a product known as the BIOShop Developer`s Kit (SDK). The BIOShop(tm) SDK is comprised of two components: a target-resident embedded kernel occupying less than 1,000 words of memory that implements the functionality specified in the DSP/BIOS API; and BIOScope(tm), a suite of visual host-based real-time analysis tools for a broad range of DSP development tools, including debuggers and emulators, manufacturing test, timing analysis, and diagnostics tools. - J.M.

Click here to enlarge image

Spectron Microsystems produces the BIOShop software developer kit contains a small real-time kernel and a suite of software analysis tools.

More in Computers