A deisgn of VHDL compiler front-end for the VHDL-to-C mapping

VHDL-to-C 사상을 위한 VHDL 컴파일러 전반부의 설계

  • 공진흥 (광운대학교 컴퓨터공학과) ;
  • 고형일 (광운대학교 컴퓨터공학과)
  • Published : 1997.12.01

Abstract

In this paper, a design and implementation of VHDL compiler front-end, aims at supporting the full-set of VHDL '87 & '93 LRM and carring out the preprocessing of VHDL-to-C, is described. The VHDL compiler front-end includes 1)the symbol tree of analyzed data to represent the hierarchy, the scope and visibility, the overloading and homograph, the concurrent multiple stacks in VHDL, 2)the data structure and supportig routies to deal with the objects, the type and subtype, the attribute and operation in VHDL, 3)the analysis of the concurrent/sequential statements, the behavior/structural descriptions, of semantic token and the propagation of symbol & type to improve the registration and retrieval procedure of analyzed data. In the experiments with Validation Suite, the VHDL compiler front-end could support the full-set specification of VHDL LRM '87 & '93; and in the experiments to asses the performance of symantic token for the VHDL hierachy/visibility/concurrency/semantic checking, the improvement of about 20-30% could be achieved.

본 논문에서는 VHDL '87 및 '93 LRM의 전체 사양을 지원하며 VHDL-to-C 사상의 전처리 과정을 수행하는 VHDL 컴파일러 전반부의 설계 및 구현에 대해서 논한다. VHDL 컴파일러 전반부는 I)VHDL의 계층적 구조체, 선언 영역 및 가시성, 다중 정의 및 동형 이의어, 병행적 다중 스택 구조를 표현하기 위해서 분석 터미널 데이터에 심볼 트리를 구성하였으며, 2) VHDL 고유의 객체, 타입 및 서브타입, 속성과 연산자 등을 나타내기 위한 구조체 및 지원 함수를 설계하였고, 3) VHDL의 병행문/순차문, 행위/구조 기술, 동기 메커니즘 등을 분석하여 VHDL-to-C 사상에 필요한 어의 정보를 구축하고, 4) VHDL 분석 과정에서 어의 데이터의 저장 및 검색이 효과적으로 이루어 지도록 어의 토큰 정의 및 어의 전파 기능 등을 설계하였다. Validation suite를 이용한 실험에서 VHDL 컴파일러 전반부는 LRM 전체 사양을 분석할 수 있음을 확인하였고, VHDL의 계층성/가시성/병행성/어의 검사 등을 효과적으로 처리하기 위해 설계 및 구현된 심볼 트리와 어의 토큰 등의 분석 데이터 모델에 대한 성능 분석 실험에서 VHDL컴파일러 전반부는20- 30%의 개선 효과를보였다.

Keywords

References

  1. IEEE Standard VHDL Language Reference Manual IEEE Std.
  2. IEEE Standard VHDL Language Reference Manual ANSI/IEEE Std.
  3. IEEE Spectrum VHDL-panacea or hype? Michael Carroll
  4. VHDL Designer's Reference Jean-Michel Berg;Alain Fonkoua;Serge Maginot;Jacques Rouillard
  5. Leapfrog VHDL Simulator Reference Manual 1.0
  6. Vantage SpreadSheet User's Guide v.1 Vantage Analysis System
  7. V-System/Windows User's Manual Model Technology
  8. Proceedings of the 1st Korea VHDL User's Group Workshop IVDT:VHDL Tool 개발 환경 최기영
  9. 대한 전자공학회지 v.22 no.8 VHDL 시뮬레이터의 설계와 구현 이영희;황선영
  10. Flex: A Fast Scanner Generator Version 2.5 Vern Paxson
  11. Bison:The YACC-compatible Parser Generator Version 1.25 Charles Donnelly;Richard Stallman
  12. 전자공학회 논문지 v.33 no.9-A 어의 문법의 테이블 기술을 이용한 VHDL 정적 어의 검사기 구현 공진홍;박성주;박찬원
  13. VHDL Validation Testsuite Users Manual VHDL Technology Group