Hardware BLAST Algorithms with Multi-seeds Detection and Parallel Extension

  • Fei Xia
  • Yong Dou
  • Jinbo Xu
Part of the Lecture Notes in Computer Science book series (LNCS, volume 4943)


As one of the most widely used bio-sequence searching tools, BLAST adopts index-based approach to detect the matches between two substrings by looking up a large table and processing one match per query. In this paper, we propose a systolic array approach to detect string matches without using looking up tables. The pipelining systolic array is implemented as a multi-seeds detection and parallel extension pipeline engine to accelerate the first two stages of NCBI BLAST algorithm. Different from the index-based approach, our implementation consumes little memory resources and eliminates redundant string extensions by merging multiple adjoin seeds into a valid seed. Our FPGA implementation achieves superior performance results in both of processing element number and clock frequency over related works in the area of FPGA BLAST accelerators. The experimental results also show the speedup can reach about 17 and 48 compared to the NCBI BLASTp and TBLASTn programs for 3072-residue queries on Intel P4 CPU, respectively. Furthermore, the idea of multi-seeds detection also can be adopted in other seed-based heuristic searching applications.


Systolic Array Array Size FPGA Implementation Amino Acid Pair Subject Sequence 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    Altschul, S.F., Gish, W., et al.: Basic local alignment search tool. Molecular Biology, 403–410 (1990)Google Scholar
  2. 2.
    NCBI, GenBank Growth Statistics (2006),
  3. 3.
    Buhler, J.D., Lancaster, J.M., et al.: Mercury BLASTN: Faster DNA Sequence Comparison Using a Streaming Hardware Architecture. In: Proc. 3rd Annual Reconfigurable Systems Summer Institute (2007)Google Scholar
  4. 4.
    Krishnanurthy, P., Buhler, J., et al.: Biosequence Similarity search on the Mercury system. In: Proc. 15th IEEE International Conference on Application-Specific Systems, Architectures and Processors, pp. 365–375 (2004)Google Scholar
  5. 5.
    Lancaster, J., Buhler, J., et al.: Acceleration of Ungapped Extension in Mercury BLAST. In: Proc. 7th Workshop on Media and Streaming Processors, pp. 50–57 (2005)Google Scholar
  6. 6.
    Herbordt, M.C., Model, J., et al.: Single Pass, BLAST-Like, Approximate String Matching on FPGAs. In: Proc. 14th Annual IEEE Symposium on Field-Programmable Custom Computing Machines, pp. 217–226 (2006)Google Scholar
  7. 7.
    Jacob, A., Lancaster, J., et al.: FPGA-accelerated seed generation in Mercury BLASTp. In: Proc. 15th Annual IEEE Symposium on Field-Programmable Custom Computing Machines, pp. 95–106 (2007)Google Scholar
  8. 8.
    Muriki, K., Underwood, K.D., et al.: RC-BLAST: Towards a Portable, Cost-Effective Open Source Hardware Implementation. In: Proc. 19th IEEE International Parallel and Distributed Processing Symposium (2005)Google Scholar
  9. 9.
    Lavenier, D., Xinchun, L., Georges, G.: Seed-based Genomic Sequence Comparison using a FPGA/FLASH Accelerator. In: IEEE International Conference on Field Programmable Technology, pp. 41–48 (2006)Google Scholar
  10. 10.
    Sotiriades, E., Dollas, A.: Design Space Exploration for the BAST Algorithm Implementation. In: Proc. 15th Annual IEEE Symposium on Field-Programmable Custom Computing Machines (2007)Google Scholar
  11. 11.
    Sotiriades, E., Kozanitis, C., Dollas, A.: FPGA based Architecture for DNA Sequence Comparison and Database Search. In: Proc. 20th IEEE International Parallel and Distributed Processing Symposium (2006)Google Scholar
  12. 12.
    Chang, C.: BLAST Implementation on BEE2. Electrical Engineering and Computer Science University of California at Berkeley (2005),
  13. 13.
    CLC Desktop Hardware-Acceleration. White paper on CLC Bioinformatics Cube (2006),
  14. 14.
    Mitrion.Inc.: NCBI BLAST Accelerator (2007),
  15. 15.
    Timelogic.Inc.: Timelogic DeCypher BLAST Engine (2006),
  16. 16.
    Hoang, D., et al.: FPGA Implementation of Systolic Sequence Alignment. In: Proc. 2nd International Workshop on Field-Programmable Logic and Applications, Lecture Notes in Computer Science, pp. 183–191 (1992)Google Scholar
  17. 17.
    Hoang, D., et al.: Searching Genetic Databases on Splash2. In: Proc. IEEE Workshop on FPGAs for Custom Computing Machines, pp. 185–191 (1993)Google Scholar
  18. 18.
    Guccione, S.A., Keller, E.: Gene Matching Using JBits. In: Glesner, M., Zipf, P., Renovell, M. (eds.) FPL 2002. LNCS, vol. 2438, Springer, Heidelberg (2002)Google Scholar
  19. 19.
    Oliver, T., et al.: Hyper Customized Processors for Bio-Sequence Database Scanning on FPGAs. In: Proc. ACM/SIGDA 13th international symposium on Field programmable gate arrays, pp. 229–237 (2005)Google Scholar
  20. 20.
    Court, T.V., Herbordt, M.C.: Families of FPGA-Based Accelerators for Approximate String Matching. Microprocessors and Microsystems 31, 135–145 (2007)CrossRefGoogle Scholar
  21. 21.
    NCBI BLAST Database, National Center for Biotechnology Information (2006),
  22. 22.
    EBI, European Bioinformatics Institute (2007),

Copyright information

© Springer-Verlag Berlin Heidelberg 2008

Authors and Affiliations

  • Fei Xia
    • 1
  • Yong Dou
    • 1
  • Jinbo Xu
    • 1
  1. 1.Department of Computer ScienceNational University of Defence TechnologyChangshaP.R. China

Personalised recommendations