HDL based FPGA interface library for data acquisition and multipurpose real time algorithm processing

The inherent parallelism of the logic resources, the flexibility in its configuration and the performance at high processing frequencies makes the field programmable gate array (FPGA) the most suitable device to be used both for real time algorithm processing and data transfer in instrumentation modules. Moreover, the reconfigurability of these FPGA based modules enables exploiting different applications on the same module. When using a reconfigurable module for various applications, the availability of a common interface library for easier implementation of the algorithms on the FPGA leads to more efficient development. The FPGA configuration is usually specified in a hardware description language (HDL) or other higher level descriptive language. The critical paths, as the management of internal hardware clocks, that require deep knowledge of the module behavior shall be implemented in HDL to optimize the timing constraints. The common interface library should include these critical paths, freeing the application designer from hardware complexity and able to choose any of the available high-level abstraction languages for the algorithm implementation. With this purpose a modular Verilog code was developed for the Virtex 4 FPGA of the in-house Transient Recorder and Processor (TRP) hardware module, based on the Advanced Telecommunications Computing Architecture (ATCA), with eight channels sampling at up to 400 MSamples/s. The TRP was designed to perform real time Pulse Height Analysis (PHA), Pulse Shape Discrimination (PSD) and Pile-Up Rejection (PUR) algorithms at a high count rate (few MHz). A brief description of this modular code is presented and examples of its use as interface with end user algorithms, including a PHA with PUR, are described.

[1]  E. Doyle,et al.  Application of fast reflectometer density profile measurements to investigate plasma instabilities in DIII-D , 2003 .

[2]  K. Itami LONG PULSE OPERATION IN ITER: ISSUES FOR DIAGNOSTICS , 2003 .

[3]  Valentin T. Jordanov,et al.  Digital techniques for real-time pulse shaping in radiation measurements , 1994 .

[4]  J.M.P. Cardoso,et al.  Compilation for FPGA-based reconfigurable hardware , 2003, IEEE Design & Test of Computers.

[5]  Valentin T. Jordanov,et al.  Digital synthesis of pulse shapes in real time for high resolution radiation spectroscopy , 1994 .

[6]  James Hwang,et al.  Building Custom FIR Filters Using System Generator , 2002, FPL.

[7]  James M. Lee Verilog Quickstart : a practical guide to simulation and synthesis in Verilog , 1999 .

[8]  Brent E. Nelson,et al.  Using general-purpose programming languages for FPGA design , 2000, Proceedings 37th Design Automation Conference.

[9]  M Tardocchi,et al.  Gamma ray spectroscopy at high energy and high time resolution at JET. , 2008, The Review of scientific instruments.

[10]  G. Brandenburg,et al.  The data acquisition system of ClearPET neuro - a small animal PET scanner , 2006, IEEE Transactions on Nuclear Science.

[12]  Joao M. C. Sousa,et al.  Parallel processing method for high-speed real time digital pulse processing for gamma-ray spectroscopy , 2010 .

[14]  Joao M. C. Sousa,et al.  ATCA data acquisition system for gamma-ray spectrometry , 2008 .

[15]  G. Gorini,et al.  The control and data acquisition software for the gamma-ray spectroscopy ATCA sub-systems of the JET-EP 2 enhancements , 2009 .

[16]  C.A.F. Varandas,et al.  ATCA digital controller hardware for vertical stabilization of plasmas in tokamaks , 2006 .

[17]  Joao M. C. Sousa,et al.  The control and data acquisition software for the gamma-ray spectroscopy ATCA sub-systems of the JET-EP2 enhancements , 2008 .