Title :
VPP - a Verilog HDL simulation and generation library for C++
Author :
Madorsky, Alexander ; Acosta, Darin E.
Author_Institution :
Univ. of Florida, Gainesville
Abstract :
VPP, a Verilog hardware description language (HDL) simulation and generation library for C++, was developed and used by the authors for the firmware design of very large field-programmable gate arrays (FPGAs) with equivalent gate counts of up to 4.4 million for CERN and Fermilab high-energy physics experiments. A C++ program based on the VPP library has the ability to perform behavioral simulation of firmware logic, and is written in syntax very similar to Verilog HDL. Such program can run on any operating system where a C++ compiler is available, and can be easily incorporated into larger system-wide software models. Once the analysis of the firmware model performance is finished, the same unmodified C++ source code is used to automatically generate valid Verilog HDL source code, which then can be converted into FPGA logic by a Verilog HDL synthesis tool. The behavior of that logic will match the initial C++ model exactly.
Keywords :
C++ language; field programmable gate arrays; firmware; hardware description languages; high energy physics instrumentation computing; nuclear electronics; program compilers; C++ compiler; CERN; FPGA logic; Fermilab high-energy physics experiments; VPP library; Verilog HDL source code; Verilog hardware description language; field-programmable gate arrays; firmware logic; syntax; system-wide software models; Field programmable gate arrays; Hardware design languages; Logic; Microprogramming; Operating systems; Performance analysis; Physics; Program processors; Software libraries; Software systems;
Conference_Titel :
Nuclear Science Symposium Conference Record, 2007. NSS '07. IEEE
Print_ISBN :
978-1-4244-0922-8
Electronic_ISBN :
1095-7863
DOI :
10.1109/NSSMIC.2007.4436533