Title :
HDL based FPGA interface library for data acquisition and multipurpose real time algorithm processing
Author :
Fernandes, A.M. ; Pereira, R.C. ; Sousa, J. ; Batista, A.J.N. ; Combo, A. ; Carvalho, B.B. ; Correia, C.M.B.A. ; Varandas, C.A.F.
Author_Institution :
IST Inst. de Plasmas e Fusao Nucl., Inst. Super. Tecnico, Lisbon, Portugal
Abstract :
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.
Keywords :
computational complexity; data acquisition; field programmable gate arrays; hardware description languages; parallel processing; FPGA interface library; Virtex 4 FPGA; advanced telecommunications computing architecture; data acquisition; field programmable gate array; hardware complexity; hardware description language; high level abstraction languages; logic resource parallelism; modular Verilog code; multipurpose real time algorithm processing; pile up rejection algorithms; pulse height analysis; pulse shape discrimination; transient recorder and processor; Clocks; Field programmable gate arrays; Hardware; Hardware design languages; Libraries; Real time systems; Spectroscopy; ATCA; Data Acquisition; FPGA; Real Time Processing; Reconfigurable Hardware;
Conference_Titel :
Real Time Conference (RT), 2010 17th IEEE-NPSS
Conference_Location :
Lisbon
Print_ISBN :
978-1-4244-7108-9
DOI :
10.1109/RTC.2010.5750400