GCC2verilog compiler toolset for complete translation of c programming language into verilog HDL

Giang Nguyen Thi Huong, Seon Wook Kim

Research output: Contribution to journalArticle

6 Citations (Scopus)

Abstract

Reconfigurable computing using a field-programmable gate-array (FPGA) device has become a promising solution in system design because of its power efficiency and design flexibility. To bring the benefit of FPGA to many application programmers, there has been intensive research about automatic translation from high-level programming languages (HLL) such as C and C++ into hardware. However, the large gap of syntaxes and emantics between hardware and software programming makes the translation challenging. In this paper, we introduce a new approach for the translation by using the widely used GCC compiler. By simply adding a hardware description language (HDL) backend to the existing stateof- the-art compiler, we could minimize an effort to implement the translator while supporting full features of HLL in the HLL-to-HDL translation and providing high performance. Our translator, called GCC2Verilog, was implemented as the GCC's cross compiler targeting at FPGAs instead of microprocessor architectures. Our experiment shows that we could achieve a speedup of up to 34 times and 17 times on average with 4-port memory over PICO microprocessor execution in selected EEMBC benchmarks.

Original languageEnglish
Pages (from-to)731-740
Number of pages10
JournalETRI Journal
Volume33
Issue number5
DOIs
Publication statusPublished - 2011 Oct 1

Fingerprint

Computer hardware description languages
Computer programming languages
Field programmable gate arrays (FPGA)
Microprocessor chips
Program translators
Hardware
Systems analysis
Data storage equipment
Experiments

Keywords

  • Compiler
  • FPGA
  • GCC2Verilog
  • HLL-to-HDL translator

ASJC Scopus subject areas

  • Electrical and Electronic Engineering
  • Computer Science(all)
  • Electronic, Optical and Magnetic Materials

Cite this

GCC2verilog compiler toolset for complete translation of c programming language into verilog HDL. / Huong, Giang Nguyen Thi; Kim, Seon Wook.

In: ETRI Journal, Vol. 33, No. 5, 01.10.2011, p. 731-740.

Research output: Contribution to journalArticle

@article{da49f4576fa348378ae304a004c7d04a,
title = "GCC2verilog compiler toolset for complete translation of c programming language into verilog HDL",
abstract = "Reconfigurable computing using a field-programmable gate-array (FPGA) device has become a promising solution in system design because of its power efficiency and design flexibility. To bring the benefit of FPGA to many application programmers, there has been intensive research about automatic translation from high-level programming languages (HLL) such as C and C++ into hardware. However, the large gap of syntaxes and emantics between hardware and software programming makes the translation challenging. In this paper, we introduce a new approach for the translation by using the widely used GCC compiler. By simply adding a hardware description language (HDL) backend to the existing stateof- the-art compiler, we could minimize an effort to implement the translator while supporting full features of HLL in the HLL-to-HDL translation and providing high performance. Our translator, called GCC2Verilog, was implemented as the GCC's cross compiler targeting at FPGAs instead of microprocessor architectures. Our experiment shows that we could achieve a speedup of up to 34 times and 17 times on average with 4-port memory over PICO microprocessor execution in selected EEMBC benchmarks.",
keywords = "Compiler, FPGA, GCC2Verilog, HLL-to-HDL translator",
author = "Huong, {Giang Nguyen Thi} and Kim, {Seon Wook}",
year = "2011",
month = "10",
day = "1",
doi = "10.4218/etrij.11.0110.0654",
language = "English",
volume = "33",
pages = "731--740",
journal = "ETRI Journal",
issn = "1225-6463",
publisher = "ETRI",
number = "5",

}

TY - JOUR

T1 - GCC2verilog compiler toolset for complete translation of c programming language into verilog HDL

AU - Huong, Giang Nguyen Thi

AU - Kim, Seon Wook

PY - 2011/10/1

Y1 - 2011/10/1

N2 - Reconfigurable computing using a field-programmable gate-array (FPGA) device has become a promising solution in system design because of its power efficiency and design flexibility. To bring the benefit of FPGA to many application programmers, there has been intensive research about automatic translation from high-level programming languages (HLL) such as C and C++ into hardware. However, the large gap of syntaxes and emantics between hardware and software programming makes the translation challenging. In this paper, we introduce a new approach for the translation by using the widely used GCC compiler. By simply adding a hardware description language (HDL) backend to the existing stateof- the-art compiler, we could minimize an effort to implement the translator while supporting full features of HLL in the HLL-to-HDL translation and providing high performance. Our translator, called GCC2Verilog, was implemented as the GCC's cross compiler targeting at FPGAs instead of microprocessor architectures. Our experiment shows that we could achieve a speedup of up to 34 times and 17 times on average with 4-port memory over PICO microprocessor execution in selected EEMBC benchmarks.

AB - Reconfigurable computing using a field-programmable gate-array (FPGA) device has become a promising solution in system design because of its power efficiency and design flexibility. To bring the benefit of FPGA to many application programmers, there has been intensive research about automatic translation from high-level programming languages (HLL) such as C and C++ into hardware. However, the large gap of syntaxes and emantics between hardware and software programming makes the translation challenging. In this paper, we introduce a new approach for the translation by using the widely used GCC compiler. By simply adding a hardware description language (HDL) backend to the existing stateof- the-art compiler, we could minimize an effort to implement the translator while supporting full features of HLL in the HLL-to-HDL translation and providing high performance. Our translator, called GCC2Verilog, was implemented as the GCC's cross compiler targeting at FPGAs instead of microprocessor architectures. Our experiment shows that we could achieve a speedup of up to 34 times and 17 times on average with 4-port memory over PICO microprocessor execution in selected EEMBC benchmarks.

KW - Compiler

KW - FPGA

KW - GCC2Verilog

KW - HLL-to-HDL translator

UR - http://www.scopus.com/inward/record.url?scp=80053929640&partnerID=8YFLogxK

UR - http://www.scopus.com/inward/citedby.url?scp=80053929640&partnerID=8YFLogxK

U2 - 10.4218/etrij.11.0110.0654

DO - 10.4218/etrij.11.0110.0654

M3 - Article

VL - 33

SP - 731

EP - 740

JO - ETRI Journal

JF - ETRI Journal

SN - 1225-6463

IS - 5

ER -