Optimization of memory allocation for real-time video processing on FPGA

We present an optimization model for the allocation of shift registers to dual ported FPGA memory blocks. Shift registers are used in real-time video processing for the storage of data flow dependencies. The model is formalized into a mixed integer linear program that can be executed using a general solver. Allocation results from realistic video systems verify the correctness of the model. This model serves as a formal specification and setup for the development of an efficient allocation heuristic.

[1]  Francky Catthoor,et al.  Custom Memory Management Methodology: Exploration of Memory Organisation for Embedded Multimedia System Design , 1998 .

[2]  G. Nemhauser,et al.  Integer Programming , 2020 .

[3]  Wayne Luk,et al.  Memory access optimisation for reconfigurable systems , 2001 .

[4]  W.F.J. Verhaegh,et al.  Allocation of multiport memories for hierarchical data streams , 1993, Proceedings of 1993 International Conference on Computer Aided Design (ICCAD).

[5]  Youshi Xu,et al.  Design of Real-Time Signal Processing ASIC for Noise Reduction In Moving Video Images , 1999 .

[6]  Maya Gokhale,et al.  Automatic allocation of arrays to memories in FPGA processors with multiple memory banks , 1999, Seventh Annual IEEE Symposium on Field-Programmable Custom Computing Machines (Cat. No.PR00375).

[7]  Ahmed Bouridane,et al.  Design and implementation of a high level programming environment for FPGA-based image processing , 2000 .

[8]  Taewhan Kim,et al.  Memory allocation and mapping in high-level synthesis - an integrated approach , 2003, IEEE Trans. Very Large Scale Integr. Syst..

[9]  Catherine H. Gebotys Low energy memory and register allocation using network flow , 1997, DAC.

[10]  Tsai-Ming Hsieh,et al.  Minimum cost complex resource FPGA partition with performance refining , 2002, The 2002 45th Midwest Symposium on Circuits and Systems, 2002. MWSCAS-2002..

[11]  Benny Thörnberg,et al.  A comparison between local and global memory allocation for FPGA implementation of real-time video processing systems , 2004 .

[12]  Francky Catthoor,et al.  Custom Memory Management Methodology , 1998, Springer US.

[13]  Benny Thörnberg,et al.  Automatic Hardware Synthesis of Spatial Memory Models for Real-Time Image Processing Systems , 2003 .