Data compression in hardware — The Burrows-Wheeler approach

Nowadays, data compression is used in nearly every field of digital applications. Many efforts have been taken to improve the theory of compression algorithms, albeit these approaches are mostly suitable for software implementation. Hardware implementations are sometimes suggested, but in general rarely found. Many approaches rely on some kind of LZ-method, which are generally fast but lack compression rate. This paper focuses on the Burrows-Wheeler Transform (BWT) as it is becoming increasingly important through the many benefits it provides and potentially even more so, if implemented in hardware. Two methods of the forward transform are compared and tested at realistic block sizes. Furthermore a implementation of a bzip2 compression system for Field programmable gate arrays (FPGAs) is described.

[1]  Yoram Bresler,et al.  Fast parallel algorithms for universal lossless source coding , 2003 .

[2]  P. Fenwick,et al.  Block Sorting Text Compression -- Final Report , 1996 .

[3]  Yoram Bresler,et al.  Antisequential suffix sorting for BWT-based data compression , 2005, IEEE Transactions on Computers.

[4]  José Luis Núñez,et al.  Gbit/s lossless data compression hardware , 2003, IEEE Trans. Very Large Scale Integr. Syst..

[5]  José Francisco Martínez Trinidad,et al.  An FPGA-based parallel sorting architecture for the Burrows Wheeler transform , 2005, 2005 International Conference on Reconfigurable Computing and FPGAs (ReConFig'05).

[6]  M. Schindler,et al.  A fast block-sorting algorithm for lossless data compression , 1997, Proceedings DCC '97. Data Compression Conference.

[7]  Peter M. Fenwick Burrows-Wheeler compression: Principles and reflections , 2007, Theor. Comput. Sci..

[8]  Juha Kärkkäinen,et al.  Fast Lightweight Suffix Array Construction and Checking , 2003, CPM.

[9]  William F. Smyth,et al.  A taxonomy of suffix array construction algorithms , 2007, CSUR.

[10]  Amar Mukherjee,et al.  Introduction to Nmos and Cmos Vlsi Systems Design , 1986 .

[11]  Sen Zhang,et al.  Efficient Algorithms for the Inverse Sort Transform , 2007, IEEE Transactions on Computers.

[12]  Virgilio Zuniga Grajeda,et al.  Hardware/Software Processing Architecture for Statistical Data Compression Algorithms , 2005 .

[13]  Jürgen Becker,et al.  Prototyping of efficient hardware algorithms for data compression in future communication systems , 2001, Proceedings 12th International Workshop on Rapid System Prototyping. RSP 2001.

[14]  Claudia Feregrino Uribe,et al.  Hardware/Software Processing Architecture for Statistical Data Compression Algorithms , 2005 .

[15]  Paul Flicek,et al.  Sense from sequence reads: methods for alignment and assembly , 2009, Nature Methods.

[16]  Haim Kaplan,et al.  Most Burrows-Wheeler Based Compressors Are Not Optimal , 2007, CPM.

[17]  Donald Ervin Knuth,et al.  The Art of Computer Programming , 1968 .

[18]  Giovanni Manzini,et al.  An analysis of the Burrows-Wheeler transform , 2001, SODA '99.