A programming language for hardware/software co-design

被引:0
|
作者
Watt, DR [1 ]
May, D [1 ]
机构
[1] Univ Bristol, Dept Comp Sci, Bristol, Avon, England
关键词
D O I
暂无
中图分类号
TP3 [计算技术、计算机技术];
学科分类号
0812 ;
摘要
We have developed a programming language that allows programs to be expressed as single specifications in which any number of processes may be tagged for hardware compilation and the rest are compiled into software. We introduce a number of novel transformations that may be arbitrarily applied to an occam process in order to decompose it into two semantically equivalent concurrent processes. Our compiler targets hardware by compiling one of these processes into a field programmable gate array and the other into x86 object code. Furthermore, the compiler integrates a specialised communications protocol between the two programs that consists of a full-duplex channel implementation, multiplexor and buffers that are dependent on the program structure and that guarantee all external communications are free from deadlock. We demonstrate the elegance of our language and the power of our compiler on a small benchmark program.
引用
收藏
页码:167 / 178
页数:12
相关论文
共 50 条
  • [1] Hardware/software co-design
    De Micheli, Giovanni
    Gupta, Rajesh K.
    [J]. Proceedings of the IEEE, 1997, 85 (03): : 349 - 365
  • [2] Hardware/software co-design
    Edwards, M
    [J]. MICROPROCESSORS AND MICROSYSTEMS, 1996, 20 (03) : 139 - 140
  • [3] Hardware software co-design in Haskell
    Aronsson M.
    Sheeran M.
    [J]. 1600, Association for Computing Machinery, 2 Penn Plaza, Suite 701, New York, NY 10121-0701, United States (52): : 162 - 173
  • [4] Hardware/software co-design then and now
    Wirth, N
    [J]. INFORMATION PROCESSING LETTERS, 2003, 88 (1-2) : 83 - 87
  • [5] On the Co-Design of Quantum Software and Hardware
    Li, Gushu
    Wu, Anbang
    Shi, Yunong
    Javadi-Abhari, Ali
    Ding, Yufei
    Xie, Yuan
    [J]. PROCEEDINGS OF THE 8TH ACM INTERNATIONAL CONFERENCE ON NANOSCALE COMPUTING AND COMMUNICATION (ACM NANOCOM 2021), 2021,
  • [6] Hardware/software co-design for multimedia
    Wolf, W
    [J]. ADVANCED SIGNAL PROCESSING: ALGORITHMS, ARCHITECTURES, AND IMPLEMENTATIONS VII, 1997, 3162 : 510 - 517
  • [7] Hardware Software Co-design in Haskell
    Aronsson, Markus
    Sheeran, Mary
    [J]. ACM SIGPLAN NOTICES, 2017, 52 (10) : 162 - 173
  • [8] Hierarchical hardware/software co-design
    Niculiu, T
    Burileanu, D
    Manolescu, A
    Becker, J
    Glesner, M
    [J]. SIMULATION IN INDUSTRY'99: 11TH EUROPEAN SIMULATION SYMPOSIUM 1999, 1999, : 697 - 699
  • [9] Energy profiler for hardware/software co-design
    Sreeramaneni, R
    Vrudhula, SBK
    [J]. 17TH INTERNATIONAL CONFERENCE ON VLSI DESIGN, PROCEEDINGS: DESIGN METHODOLOGIES FOR THE GIGASCALE ERA, 2004, : 335 - 340
  • [10] DSP SOLUTIONS FOR HARDWARE SOFTWARE CO-DESIGN
    KUNKEL, J
    SUBRAMANIAN, R
    [J]. ELECTRONIC PRODUCT DESIGN, 1995, 16 (07): : S12 - S14