| Automatic local memory architecture generation for data reuse in custom data paths (2004) | |||||||||||||||
Abstract | |||||||||||||||
| Abstract — Traditional high level synthesis is able to yield high computational resource utilisation and short critical paths. The shortcomings of the generated designs usually lies in the memory architecture. To achieve good performance on a FPGA, the data must reside in the fast on-chip memories, but these are commonly too small for the data being processed. Traditional high level synthesis cannot cope with this situation. In this paper we present a technique for automatic generation of a memory architecture, data paths and associated controllers from a high level language such as C. Data reused during the processing are stored in a local memory, resulting in high performance even when the data are stored in shared off-chip memory. The technique is based on data dependence and data access pattern analysis. Commonly used data are duplicated in on-chip memory. High memory efficiency is achieved by rearranging the data memory layout during copying. We have applied our technique to typical signal analysis tasks. The results show that the data path does not need to stall waiting for data, even when all data are stored in a shared off-chip memory. The experiments have been carried out on a Xilinx Virtex2 FPGA. I. | |||||||||||||||
Publication details | |||||||||||||||
| |||||||||||||||