Implementation of sorting algorithms in reconfigurable hardware

The paper discusses data sorting algorithms which create and traverse tree-like data structures and permit fast resorting. Optimization is achieved through rational grouping of previously developed methods allowing address-based representation and compact coding of data items. The results of hardware implementation of the algorithms and prototyping in FPGA (Field-Programmable Gate Arrays) demonstrate that: 1) sorting algorithms can be implemented efficiently in low-cost FPGA; 2) the developed coding technique permits data items to be compactly represented in memory; 3) combining different sorting methods produces the best results in terms of performance and memory requirements; 4) low-cost devices can only be used to tackle limited sets of data (up to 220 in a Spartan-3 1200 FPGA) and for processing more data either a more powerful FPGA or an external memory is required.

[1]  Manuel Almeida,et al.  Design tools and reusable libraries for FPGA-based digital circuits , 2003, Euromicro Symposium on Digital System Design, 2003. Proceedings..

[2]  Valery Sklyarov,et al.  Implementation in FPGA of Address-Based Data Sorting , 2011, 2011 21st International Conference on Field Programmable Logic and Applications.

[3]  Valery Sklyarov,et al.  Recursion in reconfigurable computing: A survey of implementation approaches , 2009, 2009 International Conference on Field Programmable Logic and Applications.

[4]  Valery Sklyarov,et al.  Modeling, design, and implementation of a priority buffer for embedded systems , 2009, 2009 7th Asian Control Conference.

[5]  Fang Yu,et al.  A practical reconfigurable hardware accelerator for boolean satisfiability solvers , 2008, 2008 45th ACM/IEEE Design Automation Conference.

[6]  René Müller,et al.  Data Stream Processing on Embedded Devices , 2010 .

[7]  Roger D. Chamberlain,et al.  Sorting on architecturally diverse computer systems , 2009, HPRCTA '09.

[8]  Valery Sklyarov,et al.  Recursive and Iterative Algorithms for N-ary Search Problems , 2006, IFIP PPAI.

[9]  Valery Sklyarov,et al.  Hierarchical Specification and Implementation of Combinatorial Algorithms Based on RHS Model * , 2001 .

[10]  Valery Sklyarov,et al.  FPGA-based implementation and comparison of recursive and iterative algorithms , 2005, International Conference on Field Programmable Logic and Applications, 2005..

[11]  Valery Sklyarov,et al.  Parallel FPGA-Based Implementation of Recursive Sorting Algorithms , 2010, 2010 International Conference on Reconfigurable Computing and FPGAs.

[12]  I. Skliarova,et al.  Design and implementation of parallel hierarchical finite state machines , 2008, 2008 Second International Conference on Communications and Electronics.

[13]  Valery Sklyarov,et al.  Architecture of a Reconfigurable Processor for Implementing Search Algorithm over Discrete Matrices , 2003, Engineering of Reconfigurable Systems and Algorithms.

[14]  Kevin Skadron,et al.  Accelerating Compute-Intensive Applications with GPUs and FPGAs , 2008, 2008 Symposium on Application Specific Processors.

[15]  R. K. Shyamasundar,et al.  Introduction to algorithms , 1996 .