skip to main content
article

BDD-based logic synthesis for LUT-based FPGAs

Published:01 October 2002Publication History
Skip Abstract Section

Abstract

Contemporary FPGA synthesis is a multiphase process that involves technology-independent logic optimization followed by FPGA-specific mapping to a target FPGA technology. Conventional technology-independent transformations target standard cells and are unable to optimize circuits with constraints and goals specific to FPGA architectures. This article describes an FPGA-specific logic synthesis approach, which unites multilevel logic transformation, decomposition, and optimization techniques into a single synthesis framework. This system performs network transformation, decomposition, and optimization at an early stage to generate a network that can be directly mapped onto FPGAs. Our techniques are built upon a BDD-based logic decomposition system. With this system, both AND-OR decompositions and AND-XOR decompositions can be identified, resulting in large area savings for synthesized XOR-intensive circuits. To induce good decompositions, a maximum fanout free cone (MFFC) -based partial clustering and collapsing technique is used. This step is followed by an area-minimizing variable partitioning heuristic that decomposes collapsed nodes into LUT-feasible subfunctions. As a postprocessing step, a performance-driven resynthesis phase is performed to alleviate increased delay caused by excessive logic sharing. We compare the quality of results obtained using our techniques with those of academic (BoolMap, SIS) and industry (Altera Quartus) FPGA synthesis tools. Experimental results indicate that the circuits generated by our techniques are not only smaller, but are also significantly faster than those synthesized by conventional FPGA synthesis tools. Furthermore, the computation times required by our techniques are significantly smaller than those of previous techniques.

References

  1. Ashenhurst, R. L. 1959. The decomposition of switching functions. In Proceedings of the International Symposium on Theory of Switching Functions, 74--116.Google ScholarGoogle Scholar
  2. Babba, B. and Crastes, M. 1992. Automatic synthesis on table lookup-based FPGAs. In Proceedings of the Euro-ASIC (May), 25--31.Google ScholarGoogle Scholar
  3. Brayton, R. K., Hachtel, G. D., McMullen, C. T., and Sangiovanni-Vincentelli, A. L. 1984. Logic Minimization Algorithms for VLSI Synthesis. Kluwer Academic, Hingham, Mass. Google ScholarGoogle Scholar
  4. Brayton, R. K., Rudell, R., Sangiovanni-Vincentelli, A., and Wang, A. R. 1987. MIS: A multiple-level logic optimization system. IEEE Trans. Comput. Aided Des., 1062--1081.Google ScholarGoogle ScholarDigital LibraryDigital Library
  5. Bryant, R. E. 1986. Graph-based algorithms for Boolean function manipulation. IEEE Trans. Comput. C-35, 677--691. Google ScholarGoogle Scholar
  6. Chang, S. C., Marek-Sadowska, M., and Hwang, T. T. 1996. Technology mapping for TLU FPGA's based on decomposition of binary decision diagrams. Proc. IEEE Trans. Comput. Aided Des. Integrated Circ. Syst., 1226--1236. Google ScholarGoogle Scholar
  7. Chen, G. and Cong, J. 2001. Simultaneous logic decomposition with technology mapping in FPGA designs. In Proceedings of the International Symposium on Field Programmable Gate Arrays (February), 48--55. Google ScholarGoogle Scholar
  8. Chen, K. C., Cong, J., Ding, Y., Kahng, A. B., and Trajmar, P. 1992. DAG-Map: Graph-based FPGA technology mapping for delay optimization. In IEEE Design and Test of Computers (Sept.), 7--20. Google ScholarGoogle Scholar
  9. Cong, J. and Ding, Y. 1993. Beyond the combinatorial limit in depth minimization for LUT-based FPGA designs. In Proceedings of the 1993 IEEE/ACM International Conference on CAD (Santa Clara, Calif., November), 110--114. Google ScholarGoogle Scholar
  10. Cong, J. and Ding, Y. 1994. Flowmap: An optimal technology mapping algorithm for delay optimization in lookup-table based FPGA designs. IEEE Trans. Comput. Aided Des. Integrated Circ. Syst. CAD 13, 1--12.Google ScholarGoogle ScholarDigital LibraryDigital Library
  11. Cong, J., Li, Z., and Bagrodia, R. 1994. Acyclic multi-way partitioning of boolean networks. In Proceedings of DAC, 670--675. Google ScholarGoogle Scholar
  12. Cong, J., Peck, J., and Ding, Y. 1996. RASP: A general logic synthesis system for SRAM-based FPGAs. In Proceedings of the ACM 4th International Symposium on FPGAs, 137--143. Google ScholarGoogle Scholar
  13. Coudert, O. and Madre, J. 1990. A unified framework for the formal verification of sequential circuits. In Proceedings of ICCAD, 126--129.Google ScholarGoogle Scholar
  14. DeMicheli, G. 1994. Synthesis and Optimization of Digital Circuits. McGraw-Hill, Hightstown, NJ. Google ScholarGoogle Scholar
  15. Eckl, K., Legl, C., and Wurth, B. 1996. TOS Version 2.2: User Manual. Institute of Elec. Design Automation, Technical University of Munich.Google ScholarGoogle Scholar
  16. Filo, D., Yang, J. C., Mailhot, F., and De Micheli, G. 1991. Technology mapping for two output based FPGAs. In Proceedings of EDAC, 534--538. Google ScholarGoogle Scholar
  17. Francis, R., Rose, J., and Chung, K. 1990. Chortle: A technology mapping for lookup table-based field programmable gate arrays. In Proceedings of the of the Design Automation Conference, 613--619. Google ScholarGoogle Scholar
  18. Francis, R., Rose, J., and Vranesic, Z. 1995. Chortle-crf: Fast technology mapping for lookup table-based FPGAs. In Proceedings of the International Symposium on Theory of Switching Functions, 74--116. Google ScholarGoogle Scholar
  19. Hactel, G. D. and Somenzi, F. 1996. Logic Synthesis and Verification Algorithms. Kluwer Academic, Dordrecht, The Netherlands. Google ScholarGoogle Scholar
  20. Jiang, J.-H., Jout, J.-Y., Huang, J.-D., and Wei, J.-S. 1997. A variable partitioning algorithm of BDD for FPGA technology mapping. IEEE Trans. Fund. E80-Ad, 10 (Oct.), 1813--1819.Google ScholarGoogle Scholar
  21. Karplus, K. 1991. XMAP: A technology mapper for table-lookup based FPGAs. In Proceedings of DAC, 240--243. Google ScholarGoogle Scholar
  22. Lai, Y. T., Pedram, M., and Vrudhula, S. 1993. BDD based decomposition of logic functions with application to FPGA synthesis. In Proceedings of the Thirtieth Design Automation Conference (June), 642--647. Google ScholarGoogle Scholar
  23. Legl, C., Wurth, B., and Eckl, K. 1996. A Boolean approach to performance-directed technology mapping for LUT-based FPGA designs. In Proceedings of the Design Automation Conference, 74--116. Google ScholarGoogle Scholar
  24. Murgai, R., Brayton, R. K., and Sangiovanni-Vincentelli, A. 1995. Logic Synthesis for Field-Programmable Gate Arrays. Kluwer Academic, Dordrecht, The Netherlands. Google ScholarGoogle Scholar
  25. Murgai, R., Nishizaki, Y., Brayton, R. K., and Sangiovanni-Vincentelli, A. 1990. Logic synthesis for programmable gate arrays. In Proceedings of DAC, 620--625. Google ScholarGoogle Scholar
  26. Narayan, A., Jain, J., Fujita, M., and Sangiovanni-Vincentelli, A. 1996. Partitioned-ROBDDs: A compact canonical and efficient representation for boolean functions. In Proceedings of ICCAD, 547--554. Google ScholarGoogle Scholar
  27. Roth, J. P. and Karp, R. M. 1962. Minimization over Boolean graphs. IBM J. Res. Dev. 6, 227--238.Google ScholarGoogle ScholarDigital LibraryDigital Library
  28. Savage, J. E. 1976. The Complexity of Computing. Wiley Interscience, New York. Google ScholarGoogle Scholar
  29. Sawada, H., Suyama, T., and Nagoya, A. 1995. Logic Synthesis for look-up table based FPGAs using functional decomposition and support minimization. In Proceedings of the International Conference on Computer-Aided Design, 54--59. Google ScholarGoogle Scholar
  30. Sawkar, P. and Thomas, D. 1992. Area and delay mapping for table-look up based field programmable gate arrays. In Proceedings of the Design Automation Conference (June), 368--373. Google ScholarGoogle Scholar
  31. Sentovich, E. M., Singh, K. J., Lavagno, L., Moon, C., Murgai, R., Saldanha, A., Savoj, H., Stephan, P. H., Brayton, R. K., and Sangiovanni-Vincentelli, A. 1992. SIS: A system for sequential circuit synthesis. Tech. Rep. UCB/ERL M92/41 (March), Dept. of EECS, University of California, Berkeley.Google ScholarGoogle Scholar
  32. Sicard, P., Crastes, M., Sakouti, K., and Saucier, G. 1991. Automatic synthesis of Boolean functions on Xilinx and Alcatel programmable devices. In Proceedings of Euro ASIC, 142--145.Google ScholarGoogle Scholar
  33. Singh, K. J., Wang, A. R., Brayton, R. K., and Sangiovanni-Vincentelli, A. 1988. Timing optimization of combinational logic. IEEE Trans. Comput. Aided Des., 282--285.Google ScholarGoogle Scholar
  34. Stanion, T. and Sechen, C. 1995. A method for finding good Ashenhurst decompositions and its application to FPGA synthesis. In Proceedings of the 32nd ACM/IEEE Design Automation Conference, 74--116. Google ScholarGoogle Scholar
  35. Trimberger, S. 1994. Field Programmable Gate Array Technology. Kluwer Academic, Boston. Google ScholarGoogle Scholar
  36. Yang, C. 2000. BDD-based logic synthesis system. PhD Thesis, University of Massachusetts, Amherst. Google ScholarGoogle Scholar
  37. Yang, C., Singhal, V., and Ciesielski, M. J. 1999. BDD decomposition for efficient logic synthesis. In Proceedings of ICCD. Google ScholarGoogle Scholar
  38. Yang, C., Singhal, V., and Ciesielski, M. J. 2000. BDS: A BDD-based logic synthesis system. In Proceedings of DAC. Google ScholarGoogle Scholar

Index Terms

  1. BDD-based logic synthesis for LUT-based FPGAs

      Recommendations

      Comments

      Login options

      Check if you have access through your login credentials or your institution to get full access on this article.

      Sign in

      Full Access

      • Published in

        cover image ACM Transactions on Design Automation of Electronic Systems
        ACM Transactions on Design Automation of Electronic Systems  Volume 7, Issue 4
        October 2002
        195 pages
        ISSN:1084-4309
        EISSN:1557-7309
        DOI:10.1145/605440
        Issue’s Table of Contents

        Copyright © 2002 ACM

        Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

        Publisher

        Association for Computing Machinery

        New York, NY, United States

        Publication History

        • Published: 1 October 2002
        Published in todaes Volume 7, Issue 4

        Permissions

        Request permissions about this article.

        Request Permissions

        Check for updates

        Qualifiers

        • article

      PDF Format

      View or Download as a PDF file.

      PDF

      eReader

      View online with eReader.

      eReader