Domain-specific programming assistance in an embedded DSL for generating processor emulators

被引:1
|
作者
Okuda, Katsumi [1 ,2 ]
Chiba, Shigeru [1 ]
机构
[1] Univ Tokyo, Tokyo, Japan
[2] Mitsubishi Electr Corp, Tokyo, Tokyo, Japan
来源
36TH ANNUAL ACM SYMPOSIUM ON APPLIED COMPUTING, SAC 2021 | 2021年
关键词
Domain specific languages; Processor description languages; Processor emulators; Instruction set simulators; Dynamic binary translation; ARCHITECTURE DESCRIPTION LANGUAGE;
D O I
10.1145/3412841.3442000
中图分类号
TP [自动化技术、计算机技术];
学科分类号
0812 ;
摘要
This paper presents a design approach for developing an embedded domain-specific language (DSL) with domain-specific programming assistance. To demonstrate the proposed approach, we describe the design of our processor description language called MELTRANS, which is an embedded DSL hosted by Java. MELTRANS is used to generate a fast processor emulator with dynamic binary translation. Although such embedded DSLs have provided only poor domain-specific assistance for programming, MELTRANS improves this poorness. Our idea is to let the integrated development environment (IDE) of the host language provide better programming assistance using domain-specific knowledge. To this end, we decompose a program in MELTRANS into several Java classes corresponding to a different concern and set a rule for the description order. The language runtime takes each class and generates not only the code for processor emulators but also superclasses for classes written later. The user writes each class describing a concern as the subclasses of a generated class. The generated classes enable the user to benefit from programming assistance by Java IDEs in a more domain-specific style. While MELTRANS is hosted in Java, the generated emulators are written in C++. To validate our design, we implement several emulators in MELTRANS and perform experiments with them. The results show that our domain-specific programming assistance can effectively reduce the amount of code that needs to be written by the user, and the generated emulators achieve over 1,000 MIPS.
引用
收藏
页码:1256 / 1264
页数:9
相关论文
共 50 条
  • [1] Domain-specific programming assistance in an embedded DSL for generating processor emulators
    Okuda, Katsumi
    Chiba, Shigeru
    Proceedings of the ACM Symposium on Applied Computing, 2021, : 1256 - 1264
  • [2] A C plus plus -embedded Domain-Specific Language for Programming the MORA Soft Processor Array
    Vanderbauwhede, W.
    Margala, M.
    Chalamalasetti, S. R.
    Purohit, S.
    21ST IEEE INTERNATIONAL CONFERENCE ON APPLICATION-SPECIFIC SYSTEMS, ARCHITECTURES AND PROCESSORS, 2010,
  • [3] Generating fluent embedded domain-specific languages with subchaining
    Nakamaru, Tomoki
    Ichikawa, Kazuhiro
    Yamazaki, Tetsuro
    Chiba, Shigeru
    JOURNAL OF COMPUTER LANGUAGES, 2019, 50 : 70 - 83
  • [4] A Domain-Specific Embedded Language for Programming Parallel Architectures
    McGuiness, Jason
    Egan, Colin
    2013 12TH INTERNATIONAL SYMPOSIUM ON DISTRIBUTED COMPUTING AND APPLICATIONS TO BUSINESS, ENGINEERING & SCIENCE (DCABES), 2013, : 83 - 88
  • [5] DOMAIN-SPECIFIC AUTOMATIC PROGRAMMING
    BARSTOW, DR
    IEEE TRANSACTIONS ON SOFTWARE ENGINEERING, 1985, 11 (11) : 1321 - 1336
  • [6] Generating Domain-Specific Process Studios
    Mos, Adrian
    Cortes-Cornax, Mario
    2016 IEEE 20TH INTERNATIONAL ENTERPRISE DISTRIBUTED OBJECT COMPUTING CONFERENCE (EDOC), 2016, : 40 - 49
  • [7] CEDR-API: Productive, Performant Programming of Domain-Specific Embedded Systems
    Mack, Joshua
    Gener, Serhan
    Hassan, Sahil
    Suluhan, H. Umut
    Akoglu, Ali
    2023 IEEE INTERNATIONAL PARALLEL AND DISTRIBUTED PROCESSING SYMPOSIUM WORKSHOPS, IPDPSW, 2023, : 16 - 25
  • [8] Domain-specific codesign for embedded security
    Schaumont, P
    Verbauwbede, I
    COMPUTER, 2003, 36 (04) : 68 - +
  • [9] Domain-Specific Programming Router Model
    Liu, Zhongpei
    Lv, Gaofeng
    Wang, Jichang
    Yang, Xiangrui
    EMERGING NETWORKING ARCHITECTURE AND TECHNOLOGIES, ICENAT 2022, 2023, 1696 : 26 - 37
  • [10] DOMAIN-SPECIFIC AUTOMATIC PROGRAMMING.
    Barstow, David R.
    IEEE Transactions on Software Engineering, 1985, SE-11 (11) : 1321 - 1336