Xyron Semiconductor, has released its Edison development board which uses Xilinx Virtex-II Platform field programmable gate arrays (FPGAs) to showcase Xyron's patented Zero Overhead Task Switch (ZOTS) technology, which places system task management into hardware, so that the microprocessor is free to focus on applications.
Xyron's (ZOTS) technology should enable chip and system engineers to boost the performance of their microprocessor design, regardless of its architecture.
To ease evaluation of the technology, Xyron developed the Xyronium microprocessor, a ZOTS enabled 32bit RISC processor, and embedded it as a soft core into the Virtex-II FPGA. .
Mark Bowlby, manager of the Xilinx AllianceCORE program, said, “The combination of the Xyron technology and the Virtex-II product family will allow designers for the first time to use an FGPA in applications that require GHz performance.”
The Edison development board contains the Xyronium microprocessor programmed into the Virtex-II (XC2V1000) FPGA, a selection of connectors for video, audio and networking, as well as memory options that include Flash, SRAM, DIMM and hard-drive interface.
The Xyronium Microprocessor Intellectual Property (IP). Xyronium is based on Xyron's patented Zero Overhead Task Switch (ZOTS) technology This is an integrated hardware interrupt and task-switch management mechanism that maximizes system efficiency by removing task management from the microprocessor operation. A Xyronium enabled microprocessor can initialize tasks and handle interrupts with zero overhead resulting in almost 100 percent utilization of processing capability.
Individual tasks are monitored and managed on each clock cycle and can immediately switch between tasks when necessary.
Operationally, it is the Xyron hardware, not the CPU, which identifies the highest priority task ready to run and then prepares itin an offline register set. Meanwhile Meanwhile, the CPU continues to run the existing task in the active register set, unaffected by the task-management process.
When a task switch is required, offline and active register sets are switched at the end of the current clock cycle by changing the output and input MUXes.
The new task now runs immediately after the following clock edge. At the same time, the information in the offline Registers Set is saved to the on-chip task RAM for recall when that task is resumed. Interrupts are handled in the same transparent manner.
A Xyron ZOTS enabled RISC 'MIPS-like' processor embedded in a 70MHz Xilinx Vertex II can give a programmer up to 8 tasks with a combined throughput of 70MHz 32 bits, an effective performance of over 2 Gbits/s. A Vertex II design utilizing ZOTS technology can increase its effective bandwidth by partitioning an application to 8 independent tasks; a full silicon CPU core based implementation will allow efficient management of 256 or more tasks.In a 70MHz, ZOTS-enabled CPU, two 30MHz tasks running simultaneously leave an effective 10MHz of processing cycles for other uses.If another microprocessor requires 100 cycles or more to switch tasks, then running two simultaneous tasks of 350kHz each would quickly consume all processing resources. For example, in a DVD application, interrupting the video stream to output DVD audio at 192Ksamples/s consumes over 19MHz for a 100-cycle task-switch CPU. The same processor equipped with the ZOTS capability uses 192kHz of its bandwidth, allowing the CPU ample cycles for additional work.
Another example of increased efficiency is the elimination of the need for a dedicated DMA unit. In a ZOTS-enabled microprocessor, DMA transfers can be accomplished faster by relegating the more sophisticated DMA options to software, which also provides the added bonus of flexibility. A ZOTS-equipped FPGA-microprocessor discussed earlier allows the equivalent of 16 separate channels of DMA, with any necessary prioritizing or scheduling done in software. Thus, placing the multitasking functions in hardware actually reduces the overall hardware requirements of a typical DMA unit, vastly simplifying programming and eliminating CPU-bus contention issues.
Existing application code will operate with a ZOTS enabled microprocessor by redirecting the RTOS task management and interrupt functions to the ZOTS hardware. This requires a one time recompile to retarget functions that were once included in the software RTOS to the Xyron task management hardware.
One way to ease into the ZOTS technology is to start with the existing code running as one task. Multiple copies of an entire application or operating system can be run as separate tasks.
Once the advantages of the Xyron technology are realized, more functions will be coded as separate tasks because there is no penalty in switching from one task to another. This is particularly true with high speed data transfer and response applications such as network processing.
Initially it works with the GCC C & C++ compiler suite. Future software releases will include embedded Linux, and commercial RTOS porting libraries for standard RTOS solutions.