DOI QR코드

DOI QR Code

Construction of an Automatic Instruction-Set Extension System for Efficient ASIP Design

효율적인 ASIP 설계를 위한 자동 인스트럭션 확장 시스템 구축

  • 황덕호 (서강대학교 전자공학과 CAD & ES 연구실) ;
  • 황선영 (서강대학교 전자공학과 CAD & ES 연구실)
  • Received : 2012.11.26
  • Accepted : 2012.12.11
  • Published : 2013.01.31

Abstract

This thesis proposes an automatic instruction extension system that utilizes retargetable compiler, based on MDL, to design an ASIP optimized for application. The proposed system uses information gathered from the application program to find all possible expandable instruction candidates. Expandable instruction candidates acquire the realization characteristics through hardware library. The system chooses instruction set and optimizes processor structure satisfying constraints on the bases of hardware characteristics and increase in execution speed. To confirm the efficiency of the proposed system, automatic instruction extension system was performed using various benchmark applications. The proposed system acquired optimized instruction set and processor structure, which are expanded from the commercial version of ARM9TDMI. Experimental results show that number of execution cycle has been reduced by 33.5% when compared to conventional version of ARM9TDMI, while area has been slightly increased.

본 논문은 어플리케이션에 최적화된 ASIP설계를 하기 위해 MDL을 기반으로 한 Retargetable 컴파일러를 이용한 자동 인스트럭션 확장 시스템을 제안한다. 제안된 시스템은 어플리케이션 프로그램으로부터 얻은 정보를 이용하여 확장 가능한 인스트럭션 후보를 모두 찾는다. 확장 인스트럭션 후보는 하드웨어 라이브러리를 통해 실제 구현 시의 특성에 대한 정보를 얻게 된다. 하드웨어 특성과 수행 속도 향상을 기반으로 주어진 제한 조건에 맞게 인스트럭션 셋을 선택하고 프로세서 구조를 최적화한다. 제안된 시스템의 효용성을 확인하기 위해 다양한 벤치마크 어플리케이션을 이용하여 자동 인스트럭션 확장 시스템을 수행하였다. 제안된 시스템은 기존의 ARM9TDMI의 프로세서로부터 최적화된 인스트럭션 셋과 프로세서 구조를 갖도록 하였다. 제안된 시스템에 의해 설계된 ASIP는 주어진 제한 조건에 따라 기존 프로세서와 비교하면 평균 33.5%의 수행 사이클이 감소하는 것으로 확인되지만, 프로세서의 면적은 증가하는 것으로 측정되었다.

Keywords

References

  1. M. Jain, M. Balakrishnan, and A. Kumar, "ASIP design methodologies : survey and issues," in Proc. IEEE/ACM Int. Conf. VLSI Design. (VLSI 2001), pp. 76-81, Bangalore, India, Jan. 2001.
  2. J. B. Cho, Y. H. Yoo, and S. Y. Hwang, "Construction of an automatic generation system of embedded processor cores," J. KICS, vol. 30, no. 6A, pp. 526-534, Jun. 2005.
  3. R. Gonzalez, "Xtensa : a configurable and extensible processor," IEEE Micro, vol. 20, no. 2, pp. 60-70, Mar./Apr. 2000.
  4. A. Hoffmann, Tim Kogel, Achim Nohl, Gunnar Braun, Oliver Schliebusch, Oliver Wahlen, Andreas Wieferink, and Heinrich Meyr, "A novel methodology for the design of Application-Specific Instruction Set Processors(ASIPs) using a machine description language," IEEE Trans. Computer-Aided Design, vol. 20, no. 11, pp. 1338-1354, Nov. 2001. https://doi.org/10.1109/43.959863
  5. S. Bashford, U. Bieker, B. Harking, R. Leupers, P. Marwedel, A. Neumann, and D. Voggenauer, "The MIMOLA Language Version 4.1," Technical report, University of Dortmund, 1994.
  6. A. Fauth, J. Van Praet, and M. Freericks, "Describing instructions set processors using nML," in Proc. European Design & Test Conf., pp. 503-507, Paris, France, Mar. 1995.
  7. R. Leupers, M. Hohenauer, J. Ceng, H. Scharwaechter, H. Meyr, G. Ascheid and G. Braun, "Retargetable compilers and architecture exploration for embedded processors," IEEE Proc. Computers and Digital Techniques, vol. 152, no. 2, pp. 209-223, Mar. 2005. https://doi.org/10.1049/ip-cdt:20045075
  8. P. Marwedel and G. Goosens, Code Generation for Embedded Processors, Kluwer Academic Publishers, pp. 14-31, 1995.
  9. C. Liem, Retargetable Compilers for Embedded Core Processors, Kluwer Academic Publishers, 1997.
  10. R. Leupers, "Compiler design issues for embedded processors," IEEE Design & Test of Computers, vol. 19, no. 4, pp. 51-58, Jul./Aug. 2002. https://doi.org/10.1109/MDT.2002.1018133
  11. A. Alippi, "Determining the optimum extended instruction set architecture for application -specific reconfigurable VLIW CPUs," in Proc. IEEE Int. Workshop on Rapid System Prototyping, pp. 25-27 Jun. 2001.
  12. R. Kastner, A. Kaplan, S. Memik, and E. Bozorgzadeh, "Instruction generation for hybrid reconfigurable systems," ACM Trans. Des. Autom. Embed. Syst., vol. 7, no. 4, pp. 605-627, Oct. 2002 https://doi.org/10.1145/605440.605446
  13. N. Clark, H. Zhong, and S. Mahlke, "Automated custom instruction generation for domain-specific processor acceleration," IEEE Transac. Comput., vol. 54, no. 10, pp. 1258-1270, Oct. 2005 https://doi.org/10.1109/TC.2005.156
  14. F. Sun, S. Ravi, A. Raghunathan, and N. Jha, "Custom-instruction synthesis for extensible-processor platforms," IEEE Trans. Comp. Aid. D., vol. 23 no. 2 pp. 216-228. Feb. 2004. https://doi.org/10.1109/TCAD.2003.822133
  15. L. Pozzi, K. Atasu, and P. Ienne, "Exact and approximate algorithms for the extension of embedded processor instruction sets," IEEE Trans. Comp. Aid. D., vol. 25, no. 7, pp. 1209-1229, Jul. 2006. https://doi.org/10.1109/TCAD.2005.855950
  16. P. Yu and T. Mitra, "Scalable custom instructions identification for instruction-set extensible processors," in Proc. Int. Conf. on Compilers, Architecture, and Synthesis for Embedded Systems, pp. 69-78, Sep. 2004,
  17. J. Cong, Y. Fan, G. Han, and Z. Zhang, "Application-specific instruction generation for configurable processor architectures," in Proc. ACM/SIGDA Int. Symp. on Field Programmable Gate Arrays, pp. 183-189, Feb. 2004,
  18. X. Chen, D. Maskell, and Y. Sun, "Fast identification of custom instructions for extensible processors," IEEE Trans. Comp. Aid. D., vol. 26, no. 2, pp. 359-368. Feb. 2007 https://doi.org/10.1109/TCAD.2006.883915
  19. C. Fraser, R. Henry, and T. Proebsting, "BURG - fast optimal instruction selection and tree parsing," ACM SIGPLAN Notices, vol. 27, no. 4, pp. 68-76, Apr. 1992.
  20. C. Fraser and D. Hanson, A Retargetable C Compiler : Design and Implementation, Ben-jamin/Cummings, 1995.
  21. C. Fraser and D. Hanson, "The lcc 4.x Code-Generation Interface," Microsoft- Research, 2003.
  22. J. Ceng, M. Hohenauer, R. Leupers, G. Ascheid, H. Meyr, and G. Braun, "C compiler retargeting based on instruction semantics models," in Proc. Design Automation and Test in Europe, pp. 1150-1155, March. 2005.
  23. J. Ceng, W. Sheng, M. Hohenauer, R. Leupers, G. Ascheid, H. Meyr, and G. Braun, "Modeling instruction semantics in ADL processor descriptions for C compiler retargeting". J. VLSI Sig. Proc., vol. 43, no. 2-3, pp. 235-246, Jun, 2006 https://doi.org/10.1007/s11265-006-7273-3
  24. C. Lee, M. Potkonjak, and W. Mangione-Smith, "MediaBench: a tool for evaluating and synthesizing multimedia and communications systems," in Proc. IEEE/ACM Int. Symp. on Microarchitecture, pp. 330-335, Dec 1997.
  25. M. Guthaus, J. Ringenberg, D. Ernst, T. Austin, and T. Mudge, R. Brown, "MiBench: a free, commercially representative embedded benchmark suite," in Proc. IEEE Int. Workshop on Workload Characterization, pp. 3-14, Dec. 2001
  26. ARM, ARM922T Technical Reference Manual (rev 0), 2001.