A Multi-threaded Fast Hardware Compiler for HDLs

被引:0
|
作者
Wang, Sheng-Hong [1 ]
Coffman, Hunter James [1 ]
Mayer, Kenneth [1 ]
Garg, Sakshi [1 ]
Renau, Jose [1 ]
机构
[1] UC Santa Cruz, Santa Cruz, CA 95064 USA
关键词
HDL; Compiler Design; Parallel Compilation; LANGUAGE;
D O I
10.1145/3578360.3580254
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
A set of new Hardware Description Languages (HDLs) are emerging to ease hardware design. HDL compilation time is a major bottleneck in the designer's productivity. Moreover, as the HDLs are developed independently, the possibility to share innovations in compilation technology is limited. We design and implement LiveHD, a new multi-threaded, fast, and generic compilation framework across many HDLs (FIRRTL, Verilog, and Pyrope). We propose new parallel full and bottom-up passes to handle HDLs. The resulting compiler can parallelize all the compiler steps. LiveHD can achieve 5.5x scalability speedup when elaborating a CHISEL RISC-V Manycore. It also gets from 7.7x to 8.4x scalability speedup for a benchmark designed in all three HDLs. This is achieved with a fast single-threaded LiveHD baseline with 6x speedup compared to compilers such as Scala-FIRRTL and 8.6x against Yosys on Verilog.
引用
收藏
页码:25 / 36
页数:12
相关论文
共 50 条
  • [41] On-line Multi-threaded Scheduling
    Esteban Feuerstein
    Marcelo Mydlarz
    Leen Stougie
    Journal of Scheduling, 2003, 6 : 167 - 181
  • [42] Probabilistic noninterference for multi-threaded programs
    Sabelfeld, A
    Sands, D
    13TH IEEE COMPUTER SECURITY FOUNDATIONS WORKSHOP, PROCEEDINGS, 2000, : 200 - 214
  • [43] Studying multi-threaded behavior with TSViz
    Nunes, Matheus
    Lalh, Harjeet
    Sharma, Ashaya
    Wong, Augustine
    Miucin, Svetozar
    Fedorova, Alexandra
    Beschastnikh, Ivan
    PROCEEDINGS OF THE 2017 IEEE/ACM 39TH INTERNATIONAL CONFERENCE ON SOFTWARE ENGINEERING COMPANION (ICSE-C 2017), 2017, : 35 - 38
  • [44] Information leakage of multi-threaded programs
    Noroozi, Ali A.
    Karimpour, Jaber
    Isazadeh, Ayaz
    COMPUTERS & ELECTRICAL ENGINEERING, 2019, 78 : 400 - 419
  • [45] Branch prediction in multi-threaded processors
    Gummaraju, J
    Franklin, M
    2000 INTERNATIONAL CONFERENCE ON PARALLEL ARCHITECTURES AND COMPILATION TECHNIQUES, PROCEEDINGS, 2000, : 179 - 188
  • [46] Causal Termination of Multi-threaded Programs
    Kupriyanov, Andrey
    Finkbeiner, Bernd
    COMPUTER AIDED VERIFICATION, CAV 2014, 2014, 8559 : 814 - 830
  • [47] On Multi-threaded Metrical Task Systems
    Feuerstein, Esteban
    Seiden, Steven S.
    de Loma, Alejandro Strejilevich
    JOURNAL OF DISCRETE ALGORITHMS, 2006, 4 (03) : 401 - 413
  • [48] Agents as multi-threaded logical objects
    Clark, Keith
    Robinson, Peter J.
    2002, Springer Verlag (2407):
  • [49] Go! for multi-threaded deliberative agents
    Clark, KL
    McCabe, FG
    DECLARATIVE AGENT LANGUAGES AND TECHNOLOGIES, 2004, 2990 : 54 - 75
  • [50] Regression Verification for Multi-threaded Programs
    Chaki, Sagar
    Gurfinkel, Arie
    Strichman, Ofer
    VERIFICATION, MODEL CHECKING, AND ABSTRACT INTERPRETATION, 2012, 7148 : 119 - 135