- Stream Processors, Inc
Infobox_Company
company_name = Stream Processors Incorporated (SPI)
company_
company_type=Private
foundation = 2004
location=455 DeGuigne Drive
Sunnyvale, California
flagicon|USAUSA
key_people =Bill Dally , Co-Founder and Chairman
Chip Stearns, President and CEO
num_employees = Approximately 100 (2007)
industry =Semiconductors -Specialized
products=Digital Signal Processor
homepage= [http://www.streamprocessors.com/ www.streamprocessors.com]Stream Processors, Inc is a
Silicon Valley -basedfabless semiconductor company specializing in the design and manufacture of high-performancedigital signal processor s for applications including videosurveillance, multi-function printers and video conferencing.Company History
The theory behind
stream processing was originally conceived in1995 by a research team led byMIT professorWilliam Dally . In 1996, he moved toStanford University where he continued this work, receiving a multi-million dollargrant fromDARPA with additional resources fromIntel andTexas Instruments to fund the development of a project called "Imagine"- the first stream processor chip and accompanying compiler tools.The Imagine Project
The goal of the Imagine project was to develop a
C program mable signal and image processor intended to provide both the performance density and efficiency of a special-purpose processor (such as a hard-wiredASIC ). The project successfully demonstrated the advantages of stream processing. Details on the Imagine project and its results are posted on [http://cva.stanford.edu/projects/imagine/ the Stanford Imagine project page] . The work also showed that a number of applicationsranging from wireless baseband processing, 3D graphics, encryption, IPforwarding to video processing could take advantage of the efficiency of stream processing. This research inspired otherdesigns such asGPU s fromATI Technologies as well as theCell microprocessor fromSony ,Toshiba , andIBM .The main deliverables from the Imagine program included:
* The Imagine Stream Architecture
* The Stream programming model
* Software development tools
* Programmable graphics and real-time media applications
* VLSI prototype (fabricated by TI)
* Stream processor development platform (a prototype development board)PI Established
Dally, together with other team members, obtained a license from Stanford to commercialize theresulting technology. Stream Processors, Incorporated (SPI) was incorporated inCalifornia in 2004. Professor Dally remained at Stanford and the companyhired industry veteran Chip Stearns [http://www.streamprocessors.com/streamprocessors/Home/About/PressReleases/2004-12-13.html] to become the President and CEO in December of thatyear. Through June, 2006 SPI has been able to raise a total of $26M from a trio of notable Venture Capital firms - Austin Ventures, Norwest Venture Partners and the Woodside Fund. SPI in essence was a startup thatstarted with over 8 years of R&D effort already completed.
The company launched its first two products concurrently with the International Solid StateCircuits Conference (
ISSCC ) in February, 2006 [ [http://www.eetimes.com/news/semi/showArticle.jhtml?articleID=197005077 EETimes.com - Startup touts stream processing architecture for DSPs ] ] and has introduced two others since [ [http://www.videsignline.com/shared/article/showArticle.jhtml?articleId=198702004 Data-parallel DSP aimed at cost-sensitive video surveillance apps | Video Imaging DesignLine ] ] [ [http://www.eetimes.com/news/semi/showArticle.jhtml?articleID=199701328 EETimes.com - Stream Processors claims fastest DSP ] ] .SPI has headquarters locatedin
Sunnyvale, California as well as a software development group (SPI Software Technologies Pvt. Ltd) located inBangalore, India .Technology
Similar to graphics and scientific computing, media and signal processingare characterized by available data-parallelism, locality and a high computationto global memory access ratio.
Stream processing exploits thesecharacteristics using data-parallel processing fed by a distributed memoryhierarchy managed by the compiler. The main challenge for next generation massively parallel processors is data bandwidth, not computational resources. Unlike most conventional processors, the technology does not rely on a hardware cache - instead data movement is explicitly mananged by the compiler and hardware.The execution model is based on accelerating performance-critical functions (kernels) that process andproduce data records (streams). Kernels and streams are scheduled at compile-time and moved to on-chip memory at runtime via a scoreboard. The compiler analyses data live timesof streams to optimize allocation and minimize external memory bandwidth needs.Streams and kernels loads can overlap with execution to improve latencytolerance and the explicit data movement provides predictable performance. Thereare no
cache misses and the design presents a single-core model to theprogrammer – data-parallelism is within the kernels.Architecture
The architecture includes a host
CPU (System MIPS) for system-level tasks and aDSP Coprocessor Subsystem where the DSP MIPS runs the main threads that makekernel function calls to the Data Parallel Unit (DPU). For users that uselibraries, and don’t intend to develop DSP code, the architecture is aMIPS-basedsystem-on-a-chip with anAPI to a “black box”coprocessor . The DPU Dispatcher receives kernel function calls to manageruntime kernel and stream loads. One kernel at a time is executed across thelanes, operating on local stream data stored in the Lane Register File of each lane. Eachlane has a set ofVLIW ALUs and distributed operand register files (ORF)allow for a large working data set and processing bandwidth exceeding 1 TeraByte/s. The StreamLoad/Store Unit provides gather/scatter with a wide variety of access patterns.The InterLane Switch is acompiler -scheduled, full crossbar for high-speedaccess between lanes.Tools
SPI’s RapiDev Tools Suite leverages thepredictability of
stream processing to provide a fast path to optimizedresults usingC programming . Starting with C reference code, the FastFunctional Debugger (FFD) library plugs into standard tools, such as MicrosoftVisual Studio and GNU, and simulates the DPU to support re-structuring code tokernels and streams. Because kernels are statically scheduled and data movementis explicit, DPU cycle-accuracy can be obtained even at this functional highlevel. This is one source of the predictability of the architecture. Fortargeting code to the device, the Stream Processor Compiler (SPC) generates theVLIW executable and pre-processed C code that is compiled/linked via standardGCC for MIPS. SPC allocates streams in the Lane Register Files and providesdependency information for the kernel function calls. Software pipelining andloop unrolling are supported. Branch penalties are avoided by predicated selectsand larger conditionals use conditional streams. Running under Eclipse, theTarget Code Simulator provides comprehensive Host or Device binary codesimulation with breakpoint and single-stepping capabilities with bandwidth andload statistics. A kernel view shows the VLIW pipeline for kernel optimizations,and a stream view shows kernel execution and stream loads to review global datamovement for system profiling.Products
SPI currently markets its Storm-1 family, that includes four fully software programmable DSPs of varying performance levels.
Note: GMACS stands for Giga (billions of) Multiply-Accumulate operations per Second, a common measure of DSPperformance.
upport Hardware and Software
* The RapiDev tools suite delivers a fast, predictable path to optimized results, eliminating the complexities of assembly coding or manual cache management
* The Storm-1 DevKit is a PCI-based software development platform
* IP Camera Reference Design runs standard Linux 2.6 and supports multiple simultaneous codecs (e.g.H.264 ,MPEG-4 andMJPEG ), arbitrary resolutions,CMOS and CCD sensor processing as well as video analytics in a fully software programmable platform
* Video Streamer Reference Design supports eight 4CIF input channels of video compressed toH.264 and aGigabit Ethernet outputReferences
External links
* [http://cva.stanford.edu/projects/imagine/] The Imagine Project (Stanford) website
Wikimedia Foundation. 2010.