Cache Architectures for Reconfigurable Hardware

The architecture and use of caches for two-level reconfigurable hardware is studied in this paper. The considered two-level reconfigurable hardware performs ordinary reconfiguration operations at the lower reconfiguration level. Whereas the upper reconfiguration level is used to configure the capabilities that are actually available for the lower level. The actual state of each reconfiguration level is determined by a corresponding context. The use of context caches and strategies for their use in ordinary 1-level reconfigurable architectures have been studied several times in the literature. Here we propose different architectures for caches which can store lower and upper level contexts for 2-level reconfigurable hardware. In addition we propose several heuristics that reduce the total reconfiguration costs when using upper level cache. Experimental results for fine grained and coarse grained two-level reconfigurable architectures are presented. It is also shown that the optimal use of an upper level cache is an NP-hard problem. Keywords—run-time reconfiguration, multi-level reconfig-

[1]  Andrea Lodi,et al.  Decoder-based multi-context interconnect architecture , 2003, IEEE Computer Society Annual Symposium on VLSI, 2003. Proceedings..

[2]  Michael Bolotski Andr,et al.  Unifying FPGAs and SIMD Arrays , 1994 .

[3]  Fadi J. Kurdahi,et al.  The MorphoSys Parallel Reconfigurable System , 1999, Euro-Par.

[4]  Peter M. Athanas,et al.  Context Switching in a Run-Time Reconfigurable System , 2004, The Journal of Supercomputing.

[5]  Zhiyuan Li,et al.  Configuration Caching Techniques for FPGA , 2000 .

[6]  Fadi J. Kurdahi,et al.  Optimal vs. heuristic approaches to context scheduling for multi-context reconfigurable architectures , 2000, Proceedings 2000 International Conference on Computer Design.

[7]  André DeHon,et al.  MATRIX: a reconfigurable computing architecture with configurable instruction distribution and deployable resources , 1996, 1996 Proceedings IEEE Symposium on FPGAs for Custom Computing Machines.

[8]  Fadi J. Kurdahi,et al.  Configuration management in multi-context reconfigurable systems for simultaneous performance and power optimizations , 2000, ISSS '00.

[9]  Jim Tørresen,et al.  High Performance Computing by Context Switching Reconfigurable Logic , 2002, ESM.

[10]  Martin Middendorf,et al.  Heuristics for context-caches in 2-level reconfigurable architectures , 2005, Proceedings. 2005 IEEE International Conference on Field-Programmable Technology, 2005..

[11]  Laszlo A. Belady,et al.  A Study of Replacement Algorithms for Virtual-Storage Computer , 1966, IBM Syst. J..

[12]  Martin Middendorf,et al.  Models and reconfiguration problems for multi task hyperreconfigurable architectures , 2004, 18th International Parallel and Distributed Processing Symposium, 2004. Proceedings..

[13]  André DeHon,et al.  DPGA Utilization and Application , 1996, Fourth International ACM Symposium on Field-Programmable Gate Arrays.

[14]  Stephen M. Scalera,et al.  The design and implementation of a context switching FPGA , 1998, Proceedings. IEEE Symposium on FPGAs for Custom Computing Machines (Cat. No.98TB100251).

[15]  Seth Copen Goldstein,et al.  Configuration Caching and Swapping , 2001, FPL.

[16]  Martin Middendorf,et al.  The Partition into Hypercontexts Problem for Hyperreconfigurable Architectures , 2004, FPL.

[17]  John J. Murray,et al.  A Mathematical Benefit Analysis of Context Switching Reconfigurable Computing , 1998, IPPS/SPDP Workshops.

[18]  Masanori Hariyama,et al.  Architecture of a multi-context FPGA using reconfigurable context memory , 2005, 19th IEEE International Parallel and Distributed Processing Symposium.

[19]  Martin Middendorf,et al.  Multi task hyperreconfigurable architectures: models and reconfiguration problems , 2005, Int. J. Embed. Syst..

[20]  Hideharu Amano,et al.  WASMII: a data driven computer on a virtual hardware , 1993, [1993] Proceedings IEEE Workshop on FPGAs for Custom Computing Machines.

[21]  Fadi J. Kurdahi,et al.  A data scheduler for multi-context reconfigurable architectures , 2001, International Symposium on System Synthesis (IEEE Cat. No.01EX526).