DSP Architecture
Improv employs an architecture that can scale from a single, uniquely configured Jazz DSP processor core, to a system level platform implementation that consists of many of these uniquely configured Jazz processors in an interconnect structure defined by shared memory maps between the processors. The Jazz processors are tightly coupled for control purposes, with a proprietary bus called the Q-bus. This Q-bus does not provide data and operands to the Jazz processors, but acts as a unified task management and control bus for synchronizing the many Jazz processors in a system platform.
The Improv architecture provides for the multi-Jazz processor platform to be integrated into legacy processor platforms and peripherals. These are identified as "Integration Blocks", and can consist of very simple or very complex logic or functional blocks containing processors, random logic, data channels, etc… The Jazz processor communicates with these integration blocks through shared memory architectures as well, providing for a straightforward method for communicating with the Jazz processors in the system implementation.
Improv is extending this system architecture to provide specific interfaces to popular legacy embedded-host microprocessors and their system bus architectures. This provides a convenient vehicle for integrating existing processor-based architectures with a customer-generated, Improv-based, programmable system architecture platform implementation.
Improv Programmable System Architecture

- Multiple Jazz processors are configured into a structure that can be programmed to perform application-specific functions.
- Integration blocks (or I-Blocks) can be added to provide specific interface logic functions around the structure.
- Processor-to-processor data communication is handled through direct on-chip data memories.
- All processors attach to a single Q-Bus that enables queuing of tasks.
Jazz Composer Tool Suite
The Jazz PSA platform is a scalable architecture that can accommodate one or more heterogeneous Jazz processors and program and data memories of different sizes. The Jazz PSA Composer is a graphical environment for creating custom configurations of the Jazz PSA Platform. It is structured to allow hierarchical configuration of Jazz PSA Platforms.
The PSA Composer is used to configure a complete platform by combining different Jazz processors and embedded memories into a single multiprocessor structure. It provides a simple and intuitive graphical interface for entering the target platform.
The Jazz Composer provides the capability to create a custom VLIW processor based on Improv's Jazz processor architecture. Designers have the choice of creating 16- or 32-bit processors. Customization features include creating different combinations of datapath elements in the processor, overlaying data path elements to tradeoff VLIW instruction width and parallelism, creating multiple memory ports in and out of the processor, selecting and setting the sizes of interrupt and task queues, and customizing the distributed register system within the processor.
The DDCU Composer allows designers to add their own designer-defined computation units (DDCUs). These are custom data path elements that are defined using a combination of Java methods and RTL template descriptions. Once added, these units are fully recognized by the complete Jazz PSA tool chain.
Jazz Standard Tool Suite
Designer's today need high-quality tools to develop chips utilizing performance software coupled with programmable IP. These tools are even more important when utilizing a methodology that allows optimization of both the software and hardware components of the solution. Improv has gone to great lengths to provide robust, high-quality tools to augment the Jazz PSA solution.
The Jazz PSA Standard Tool Suite is the software development environment for the Jazz DSP processor. The suite enables design teams to create customized, high performance application software for the Jazz PDS processor through intuitive, object-oriented programming. A developer utilizes the Jazz PSA Standard Tool Suite to create an application program, develop a corresponding test bench and utilize the compiler, instruction-set simulator and optional FPGA emulation capability to execute, evaluate and verify the performance of the application code.

Jazz Generator
The Jazz Generator is a productivity tool that automates the compilation and integration of files needed to build a configured Jazz processor. It generates a complete RTL netlist of a configuration of the Jazz PSA Platform and creates Implementation Kits of the targeted configuration.
Jazz Rehearsal Boards
Improv's Rehearsal boards provide a near real-time system for designers to run configurations of the Jazz PSA core. They can be used to verify designer-defined DSPs and to run in conjunction with other elements of the overall system. Improv's Rehearsal development boards are used in conjunction with the other members of the Jazz development tool suite. Standard or custom configured Jazz DSPs generated with Jazz Composerâ„¢ and specialized interface blocks can be mapped onto the high-end FPGAs on the Rehearsal boards. In addition, interface blocks like the Host Bus Interface and Time Slot Interchange can also be mapped.
The Jazz PSA Rehearsal XE2 development board is an FPGA-based board. The board accelerates simulation, verification and validation of two custom configured Jazz DSP architectures. It features a PCI host processor interface and two fully functional Jazz DSP processors implementation in FPGAs. Processors can be configured in 16- or 32-bit versions. Hardware simulation of complex systems such as voice over packet network processors can be achieved.


