PICO-NPA: High-Level Synthesis of Nonprogrammable Hardware Accelerators

  • Authors:
  • Robert Schreiber;Shail Aditya;Scott Mahlke;Vinod Kathail;B. Ramakrishna Rau;Darren Cronquist;Mukund Sivaraman

  • Affiliations:
  • Hewlett-Packard Laboratories, Palo Alto, California 94304-1126, USA;Hewlett-Packard Laboratories, Palo Alto, California 94304-1126, USA;Hewlett-Packard Laboratories, Palo Alto, California 94304-1126, USA;Hewlett-Packard Laboratories, Palo Alto, California 94304-1126, USA;Hewlett-Packard Laboratories, Palo Alto, California 94304-1126, USA;Hewlett-Packard Laboratories, Palo Alto, California 94304-1126, USA;Hewlett-Packard Laboratories, Palo Alto, California 94304-1126, USA

  • Venue:
  • Journal of VLSI Signal Processing Systems
  • Year:
  • 2002

Quantified Score

Hi-index 0.00

Visualization

Abstract

The PICO-NPA system automatically synthesizes nonprogrammable accelerators (NPAs) to be used as co-processors for functions expressed as loop nests in C. The NPAs it generates consist of a synchronous array of one or more customized processor datapaths, their controller, local memory, and interfaces. The user, or a design space exploration tool that is a part of the full PICO system, identifies within the application a loop nest to be implemented as an NPA, and indicates the performance required of the NPA by specifying the number of processors and the number of machine cycles that each processor uses per iteration of the inner loop. PICO-NPA emits synthesizable HDL that defines the accelerator at the register transfer level (RTL). The system also modifies the user's application software to make use of the generated accelerator.The main objective of PICO-NPA is to reduce design cost and time, without significantly reducing design quality. Design of an NPA and its support software typically requires one or two weeks using PICO-NPA, which is a many-fold improvement over the industry norm. In addition, PICO-NPA can readily generate a wide-range of implementations with scalable performance from a single specification. In experimental comparison of NPAs of equivalent throughput, PICO-NPA designs are slightly more costly than hand-designed accelerators.Logic synthesis and place-and-route have been performed successfully on PICO-NPA designs, which have achieved high clock rates.