DocumentCode :
2718600
Title :
A self-reconfigurable platform for general purpose image processing systems on low-cost spartan-6 FPGAs
Author :
Bayar, Salih ; Yurdakul, Arda ; Tukel, Mehmet
Author_Institution :
Comput. Eng., Bogazici Univ., Istanbul, Turkey
fYear :
2011
fDate :
20-22 June 2011
Firstpage :
1
Lastpage :
9
Abstract :
There is still no partial reconfiguration tool support on low-cost Field Programmable Gate Arrays (FPGAs) such as old-fashioned Spartan-3 and state-of-the-art Spartan-6 FPGA families by Xilinx. This forces the designers and engineers, who are using the partial reconfiguration capability of FPGAs, to use expensive families such as Virtex-4, Virtex-5 and Virtex-6 which are officially supported by partial reconfiguration (PR) software. Moreover, Xilinx still does not offer a portable, dedicated self-reconfiguration engine for all of the FPGAs. Self-reconfiguration is achieved with general-purpose processors such as MicroBlaze and PowerPC which are too overqualified for this purpose. In this study, we propose a new self-reconfiguration mechanism for Spartan-6 FPGAs. This mechanism can be used to implement large and complex designs on small FPGAs as chip area can be dramatically reduced by exploiting the dynamic partial reconfiguration feature for on-demand functionality loading and maximal utilization of the hardware. This approach is highly attractive for designing low-cost compute-intensive applications such as high performance image processing systems. For Spartan-6 FPGAs, we have developed hard-macros and exploited the self-reconfiguration engine, compressed Parallel Configuration Access Port (cPCAP) [1], that we designed for Spartan-3. The modified cPCAP core with block RAM controller, bitstream decompressor unit and Internal Configuration Access Port (ICAP) Finite State Machine (FSM) occupies only about 82 of 6,822 slices (1.2% of whole device) on a Spartan-XC6SLX45 FPGA and it achieves the maximum theoretical reconfiguration speed of 200MB/s (ICAP, 16-bit at 100MHz) proposed by Xilinx. We have also implemented a Reconfigurable Processing Element (RPE) whose arithmetic unit can be reconfigured on-the-fly. Multiple RPEs can be utilized to design a General Purpose Image Processing System (GPIPS) that can implement a number of different algorithms during runtime. As - - an illustrative example, we programmed the GPIPS on Spartan-6 for switching between two applications on-demand such as two-dimensional filtering and block-matching.
Keywords :
field programmable gate arrays; finite state machines; image processing; microcontrollers; random-access storage; reconfigurable architectures; FSM; ICAP; Spartan-XC6SLX45 FPGA; Xilinx; arithmetic unit; bitstream decompressor unit; block RAM controller; cPCAP core; compressed parallel configuration access port; field programmable gate arrays; finite state machine; general purpose image processing system; general purpose processor; internal configuration access port; low-cost Spartan-6 FPGA; partial reconfiguration software; reconfigurable processing element; self-reconfigurable platform; Clocks; Computer architecture; Field programmable gate arrays; Hardware; Image coding; Random access memory;
fLanguage :
English
Publisher :
ieee
Conference_Titel :
Reconfigurable Communication-centric Systems-on-Chip (ReCoSoC), 2011 6th International Workshop on
Conference_Location :
Montpellier
Print_ISBN :
978-1-4577-0640-0
Type :
conf
DOI :
10.1109/ReCoSoC.2011.5981513
Filename :
5981513
Link To Document :
بازگشت