arrow
返回

Studying the challenges of developing hardware description language programs

delete2023-07-01
delete2
PRE
AI
F
Fatemeh Yousefifeshki
H
Heng Li *
F
Foutse Khomh
DOI:10.1016/j.infsof.2023.107196delete
delete原文链接
delete原文求助
delete分享
delete收藏
摘要

摘要

En 中文
Context: Developing domain specific architectures (e.g., Google's TPU) typically requires writing programs in Hardware Description Languages (HDLs). Compared to traditional general-purpose programming languages (GPPLs) (e.g., C++, Java, Python), developing programs in HDLs (e.g., VHDL or Verilog) lacks support from our community. Such an imbalance in the support for GPPLs and HDLs will impede future advances in computer systems. Objective: We believe that our software engineering community should pay more attention to supporting HDL development. Thus, we make an initial attempt in this direction to study the challenges of developing programs in HDLs by mining HDL-related questions in technical forums.Method: We identified 16,700 HDL-related questions in two Stack Exchange forums: Stack Overflow (SO) and Electrical Engineering (EE) Stack Exchange. Through qualitative analysis, topic modeling, and quantitative analysis, we examined the types of questions, the questions' topics, and identified the most challenging topics for developers.Results: We identified ten types of HDL-related questions, including seven types identified in prior work and three new types more relevant to HDLs (e.g., questions related to code explanation and tool search). We also observed that most of the challenges facing HDL developers are similar to those facing GPPL developers, while some challenges (e.g., lower-level operations such as bit and register operations) are more specific to HDLs. Finally, we observed that HDL-related questions are less likely and take a longer time to get accepted answers than GPPL-related questions, and identified the most challenging topics of questions (e.g., file/memory I/O). Conclusion: Our work identified opportunities for different stakeholders in the software and hardware communities to improve the practices of developing HDL programs: software engineering researchers may leverage their expertise to help in advancing HDL languages and methodology, such as to improving the language abstractions for low-level operations such as bit/register operations or memory/file I/Os; Stack Exchange and its moderators may leverage the community size and expertise in both the SO and EE forums to collectively recommend experts to answer questions related to HDLs; HDL language and library developers may provide more actionable error messages, better documentation and logging support to help HDL developers address their encountered issues; tool developers are encouraged to provide advanced IDEs and testing frameworks to help HDL developers improve their development and testing productivity.
Keyword:
Hardware description languages
Stack overflow
Stack exchange
Qualitative analysis
Topic modeling

期刊

Information and Software Technology 封面图
Information and Software Technology
IF:
4.3
论文数:
3.8K
被引数:
7.7K

机构

U
universite de montreal
学者数:
4.6W
论文数: 3.8W
被引数: 46
引用论文

引用论文

What do Programmers Discuss about Deep Learning Frameworks
err2020-04-24
err59
PREAI
errHan, Junxiao; Shihab, Emad; Wan, Zhiyuan; Deng, Shuiguang; Xia, Xin
err分享
err收藏
Tetris: Using Software/Hardware Co-Design to Enable Handheld, Physics-Limited 3D Plane-Wave Ultrasound Imaging
err2020-08-01
err9
errOAAI
errWest, Brendan L.; Zhou, Jian; Dreslinski, Ronald G.; Kripfgans, Oliver D.; Fowlkes, J. Brian; Chakrabarti, Chaitali; Wenisch, Thomas F.
err分享
err收藏
3D Reconstruction of the Leading Edge of the 20 May 2007 Partial Halo CME
err2009-10-02
err0
errOAAI
errN. Srivastava; B. Inhester; M. Mierla; B. Podlipnik
err分享
err收藏
Characterization of the Variant Allele 9.2 of Penta D Locus*
err2007-08-28
err0
errOAAI
errMaría C. Miozzo; Mariana K. Maxzud; Carla M. Pacharoni; Silvia A. Mutal; Nidia M. Modesti
err分享
err收藏
Quantifying the Autophagy-Triggering Effects of Drugs in Cell Spheroids with Live Fluorescence Microscopy
err2014-04-28
err0
PREAI
errNariman Ansari; Stefanie Hardung; Katharina Hötte; Stefanie Rakel; Patrick Antonietti; Donat Kögel; Ernst H. K. Stelzer; Francesco Pampaloni
err分享
err收藏
A Domain-Specific Architecture for Deep Neural Networks
err2018-08-22
err106
errOAAI
errJouppi, Norman P.; Young, Cliff; Patil, Nishant; Patterson, David
err分享
err收藏
学者 查看更多内容