DOI QR코드

DOI QR Code

FPGA Mapping Incorporated with Multiplexer Tree Synthesis

멀티플렉서 트리 합성이 통합된 FPGA 매핑

  • Kim, Kyosun (Department of Electronic Engineering, Incheon National University)
  • 김교선 (인천대학교 전자공학과)
  • Received : 2016.02.25
  • Accepted : 2016.04.04
  • Published : 2016.04.25

Abstract

The practical constraints on the commercial FPGAs which contain dedicated wide function multiplexers in their slice structure are incorporated with one of the most advanced FPGA mapping algorithms based on the AIG (And-Inverter Graph), one of the best logic representations in academia. As the first step of the mapping process, cuts are enumerated as intermediate structures. And then, the cuts which can be mapped to the multiplexers are recognized. Without any increased complexity, the delay and area of multiplexers as well as LUTs are calculated after checking the requirements for the tree construction such as symmetry and depth limit against dynamically changing mapping of neighboring nodes. Besides, the root positions of multiplexer trees are identified from the RTL code, and annotated to the AIG as AOs (Auxiliary Outputs). A new AIG embedding the multiplexer tree structures which are intentionally synthesized by Shannon expansion at the AOs, is overlapped with the optimized AIG. The lossless synthesis technique which employs FRAIG (Functionally Reduced AIG) is applied to this approach. The proposed approach and techniques are validated by implementing and applying them to two RISC processor examples, which yielded 13~30% area reduction, and up to 32% delay reduction. The research will be extended to take into account the constraints on the dedicated hardware for carry chains.

광폭입력함수 전용 멀티플렉서가 슬라이스 구조에 포함되는 상용 FPGA의 현실적 제약 조건을 학계의 대표적 논리 표현 방식인 AIG (And-Inverter Graph)를 근간으로 개발된 FPGA 매핑 알고리즘에 적용하였다. AIG를 LUT (Look-Up Table)으로 매핑할 때 중간 구조로서 컷을 열거하는 데 이들 중에서 멀티플렉서를 인식해 낸 후 이들이 매핑될 때 지연 시간 및 면적을 복잡도 증가 없이 계산하도록 하였다. 이 때 트리 형성 전제 조건인 대칭성과 단수 제약 요건도 검사하도록 하였다. 또한, 멀티플렉서 트리의 루트 위치를 RTL 코드에서 찾아내고 이를 보조 출력 형태로 AIG에 추가하도록 하였다. 이 위치에서 섀넌확장을 통해 멀티플렉서 트리 구조를 의도적으로 합성한 후 최적 AIG에 겹치도록 하는 접근 방법을 최초로 제안하였다. 이때 무손실 합성을 가능하게 하는 FRAIG 방식이 응용되었다. 두 가지 프로세서에 대해 제안된 접근 방법과 기법들을 적용하여 약 13~30%의 면적 감소 및 최대 32%까지의 지연 시간 단축을 달성하였다. AIG 트리에 특정 구조를 의도적으로 주입시키는 접근 방법은 향후 캐리 체인 등에 확장 적용하는 연구가 진행될 것이다.

Keywords

References

  1. ABC: A System for Sequential Synthesis and Verification. Berkeley Logic Synthesis and Verification Group, http://www.eecs.berkeley.edu/-alanmi/abc/abc.html, October, 2007.
  2. V. Betz and J. Rose, "VPR: A New Packing, Placement And Routing Tool For FPGA Research," in Proceedings of the 7th International Workshop on Field-Programmable Logic and Applications. pp.213-222, 1997.
  3. L. Amaru, P-E Gaillardon, and G.D. Micheli, "Majority-Inverter Graph: A New Paradigm for Logic Optimization," IEEE Trans. on Computer-Aided Design of Integrated Circuits and Systems, 2016.
  4. N. Steiner, A. Wood, H. Shojaei, J. Couch, P. Athanas, M. French, "Torc: Towards Open- Source Tool Flow," in Proceedings of the 19th ACM/SIGDA International Symposium on Field Programmable Gate Arrays, pp.41-44, February, 2010.
  5. C. Lavin, M. Padilla, J. Lamprecht, P. Lundrigan, B. Nelson, and B. Hutchings, "RapidSmith: Do-It-Yourself CAD Tools for Xilinx FPGAs" in Proceedings of the 21st International Workshop on Field-Programmable Logic and Applications, pp.349-355, September, 2011.
  6. Xilinx Design Language Version 1.6, Xilinx, Inc., Xilinx ISE 6.1i Documentation in ise6.1i/help/data /xdl, July 2000.
  7. K. Kim, "Evaluation Toolkit for K-FPGA Fabric Architectures," Journal of the IEEK, vol. 49-SD, no. 4, pp.157-167, April, 2012.
  8. K. Kim, "Pre-Packing, Early Fixation, and Multi- Layer Density Analysis in Analytic Placement for FPGAs, Journal of the IEEK, vol. 51-SD, no. 10, pp.96-106, October, 2014.
  9. Spartan-3 Generation FPGA User Guide, UG331, v1.6, Xilinx Inc., December 3, 2009.
  10. A. Mishchenko, S. Chatterjee, R. Jiang, and R. K. Brayton, "FRAIGs: A unifying representation for logic synthesis and verification". ERL Technical Report, EECS Dept., UC Berkeley, March 2005.
  11. A. Mishchenko, S. Chatterjee, and R. Brayton, "Improvements to Technology Mapping for LUT-Based FPGAs," IEEE Trans. on Computer-Aided Design of Integrated Circuits and Systems, Vol. 26, Issue 2, pp.240-253, February, 2007. https://doi.org/10.1109/TCAD.2006.887925
  12. A. Mishchenko, S. Cho, S. Chatterjee, and R. Brayton, "Combinational and Sequential Mapping with Priority Cuts," Proc. of IEEE/ACM International Conference on Computer-Aided Design, pp.354-361, November, 2007.
  13. A. Mishchenko, S. Chatterjee, and R. Brayton, "DAG-Aware AIG Rewriting: A Fresh Look at Combinational Logic Synthesis," Proc. of Design Automation Conference, pp.532-535, July, 2006.
  14. M. Guiney, E. Leavitt, "An Introduction to OpenAccess: an Open Source Data Model and API for IC Design," in Proceedings of Asia and South Pacific Conference on Design Automation, pp. 434-436, January, 2006.