Skip to main content
Log in

3D Tomography Back-Projection Parallelization on Intel FPGAs Using OpenCL

  • Published:
Journal of Signal Processing Systems Aims and scope Submit manuscript

Abstract

This article deals with the evaluation of FPGAs resurgence for hardware acceleration applied to computed tomography on the back-projection operator used in iterative reconstruction algorithms. We focus our attention on the tools developed by FPGAs manufacturers, in particular the Intel FPGA SDK for OpenCL, that promises a new level of hardware abstraction from the developer’s perspective, allowing a software-like programming of FPGAs. Our first contribution is to propose an accurate memory benchmark. This is followed by an evaluation of different custom OpenCL implementations of the back-projection algorithm. With some clues on memory fetching and coalescing, we then fine-tune designs to improve performance. Finally, a comparison is made with GPU implementations, and a preliminary conclusion is drawn on the future of FPGAs for computed tomography.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Figure 1
Figure 2
Figure 3
Figure 4
Listing 1
Listing 2
Figure 5
Figure 6
Listing 3
Figure 7
Listing 4

Similar content being viewed by others

Notes

  1. Now Intel FPGA, since Altera’s acquisition in December 28th, 2015

  2. α = G,C,L, or P for Global, Constant, Local, and Private

  3. ND+Backbone is, as explained in Section 6.2.1, not functional since all memory accesses are removed.

References

  1. Arria 10 Device Overview https://www.altera.com/en_US/pdfs/literature/hb/arria-10/arria_10_aib.pdf.

  2. DE1 SoC Device Overview http://www.terasic.com.tw/cgi-bin/page/archive.pl?Language=English&No=836.

  3. Jetson TX2 specifications https://elinux.org/Jetson_TX2.

  4. OpenCL on FPGAs for GPU Programmers https://www.altera.com/en_US/pdfs/literature/wp/wp-201406-acceleware-opencl-on-fpgas-for-gpu-programmers.pdf.

  5. Titan X Pascal specifications https://www.geforce.com/hardware/desktop-gpus/geforce-gtx-titan-x/specifications.

  6. The International Technology Roadmap For Semiconductors 2.0. Semiconductor Industry Association (2015).

  7. Intel FPGA SDK for OpenCL Best Practices Guide. Intel (2017).

  8. Intel FPGA SDK for OpenCL Programming Guide. Intel (2017).

  9. Abdelfattah, M.S., Hagiescu, A., Singh, D. (2014). Gzip on a chip: High Performance Lossless Data Compression on FPGAs using openCL. International Workshop on openCL.

  10. E.Kinahan, P., & et al. (2004). Emission tomography: the fundamentals of PET and SPECT, chapter Analytic image reconstruction methods. Elsevier Academic Press.

  11. Feldkamp, L.A., Davis, L.C., Kress, J.W. (1984). Practical cone-beam algorithm. Journal of the Optical Society of America A, 1(6), 612–619. https://doi.org/10.1364/JOSAA.1.000612. http://josaa.osa.org/abstract.cfm?URI=josaa-1-6-612.

    Article  Google Scholar 

  12. Gac, N., Mancini, S., Desvignes, M., Houzet, D. (2008). High Speed 3D Tomography on CPU, GPU, and FPGA. EURASIP Journal on Embedded Systems.

  13. Garcia, P., Compton, K., Schulte, M., Blem, E., Fu, W. (2006). An overview of reconfigurable hardware in embedded systems. EURASIP Journal on Embedded Systems.

  14. Geyer, L. L., Schoepf, U. J., Meinel, F. G., Nance, J. W., Bastarrika, G., Leipsic, J. A., Paul, N. S., Rengo, M., Laghi, P. A., Cecco, C.N.D. (2015). State of the Art: Iterative CT Reconstruction Techniques. Journal of Food Processing & Technology.

  15. Heigl, B., & Kowarschik, M. (2007). High-speed reconstruction for c-arm computed tomography. In Proceedings of the 9th international meeting on fully three-dimensional image reconstruction in radiology and nuclear medicine, pp. 25–28.

  16. Iain Goddard, M.T. (2002). High-speed cone-beam reconstruction: an embedded systems approach. https://doi.org/10.1117/12.466946.

  17. Jia, Q., & Zhou, H. (2016). Tuning Stencil Codes in openCL for FPGAs. International Conference Computer Design.

  18. Kachelrie, M., Knaup, M., Bockenbach, O. (2007). Hyperfast parallel-beam and cone-beam backprojection using the cell general purpose hardware. Medical Physics, 34(4), 1474–1486. https://doi.org/10.1118/1.2710328.

    Article  Google Scholar 

  19. Kim, J.K., Fessler, J.A., Zhang, Z. (2012). Forward-projection architecture for fast iterative image reconstruction in x-ray CT. IEEE Transactions on Signal Processing, 60(10), 5508–5518. https://doi.org/10.1109/TSP.2012.2208636.

    Article  MathSciNet  MATH  Google Scholar 

  20. Leeser, M., & et al. (2005). Parallel-beam backprojection: an FPGA implementation optimized for medical imaging. VLSI SIgnal Processing Systems, 39(3), 295–311.

    Article  Google Scholar 

  21. Lu, H., Cheng, J.H., Han, G., Li, L., Liang, Z. (2001). A 3D distance-weighted Wiener filter for Poisson noise reduction in sinogram space for SPECT imaging. Medical Imaging, Physics of Medical Imaging.

  22. Scherl, H., Keck, B., Kowarschik, M., Hornegger, J. (2007). Fast gpu-based ct reconstruction using the common unified device architecture (cuda). In 2007 IEEE Nuclear science symposium conference record, (Vol. 6 pp. 4464–4466). https://doi.org/10.1109/NSSMIC.2007.4437102.

  23. Shagrithaya, K., Kepa, K., Athanas, P. (2013). Enabling Development of openCL Applications on FPGA platforms. Conference on Application-Specific Systems, Architectures and Processors.

  24. Thurston, M., Nadrljanski, M.M., et al. Computed tomography - radiology reference article. Radiopedia.

  25. Vasilev, S. L., Artemev, A. V., Bakulin, V. N., Yurgenson, S. A. (2016). Testing loaded samples using X-ray computed tomography. Russian Journal of Nondestructive Testing.

  26. Vidhya, M., Varadharaju, N., Kennedy, Z. J., Amirtham, D., Jesudas, D. M. (2015). Applications of X-Ray computed tomography in food processing. RSNA.

  27. Wang, Z., He, B., Zhang, W., Jiang, S. (2016). A Performance Analysis Framework for Optimizing openCL Applications on FPGAs. IEEE International Symposium on High Performance Computer Architecture (HPCA) pp. 114–125.

  28. Wegrzyn, M. (2001). FPGA-Based Logic Controllers for Safety Critical Systems. IFAC Conference on New Technologies for Computer Control.

  29. Xu, F., & Mueller, K. (2005). Accelerating popular tomographic reconstruction algorithms on commodity pc graphics hardware. IEEE Transactions on Nuclear Science, 52(3), 654–663. http://cvc.cs.stonybrook.edu/Publications/2005/XM05.

    Article  Google Scholar 

  30. Xu, J., Subramanian, N., Alessio, A., Hauck, S. (2010). Impulse c vs. vhdl for accelerating tomographic reconstruction. In Proceedings of the 2010 18th IEEE Annual International Symposium on Field-Programmable Custom Computing Machines, FCCM ’10 (pp. 171–174). Washington: IEEE Computer Society.. https://doi.org/10.1109/FCCM.2010.33

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Maxime Martelli.

Additional information

Publisher’s Note

Springer Nature remains neutral with regard to jurisdictional claims in published maps and institutional affiliations.

Rights and permissions

Reprints and permissions

About this article

Check for updates. Verify currency and authenticity via CrossMark

Cite this article

Martelli, M., Gac, N., Mérigot, A. et al. 3D Tomography Back-Projection Parallelization on Intel FPGAs Using OpenCL. J Sign Process Syst 91, 731–743 (2019). https://doi.org/10.1007/s11265-018-1403-6

Download citation

  • Received:

  • Revised:

  • Accepted:

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s11265-018-1403-6

Keywords

Navigation