Abstract
Over the last 50 years, advances in high-speed digital signal processing (GlossaryTerm
DSP
) and numerical methods for audio signal processing in general were fueled by the rising processing capabilities of personal computers (GlossaryTermPC
s). Added to this was the advent of specialized coprocessing platforms like general purpose graphics processing units (GlossaryTermGPGPU
s), central processing unit (GlossaryTermCPU
)-based accelerators like Intel's Xeon Phi platforms as well as high-performance digital signal processing (GlossaryTermDSP
) chips like Analog Devices' TigerSHARC. Still, there are applications that are not realizable on the mentioned devices in real time or even close to real time. This chapter gives an introduction to field programmable gate array (GlossaryTermFPGA
) hardware, a flexible computing platform with massively parallel logic capability that is applicable for problems of high data throughput, high clock rates and high parallelism. After an introduction to the basic structure of FPGAs, several features that enable high-throughput DSP applications are highlighted. An introduction to development platforms as well as the development methodology is given, along with an overview of current FPGA devices and their specific capabilities. Two application examples and an outlook and summary complete this chapter.Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Abbreviations
- 1-D:
-
one-dimensional
- 1C:
-
one's complement
- 2-D:
-
two-dimensional
- 2C:
-
two's complement
- 3-D:
-
three-dimensional
- ADC:
-
analog-to-digital converter
- ALM:
-
adaptive logic module
- ASIC:
-
application-specific integrated circuit
- ASSP:
-
application-specific standard part
- BC:
-
boundary condition
- BLAS:
-
basic linear algebra subprograms
- BRAM:
-
block RAM
- CAD:
-
computer-aided design
- CFL:
-
Courant–Friedrichs–Levy
- CLB:
-
configurable logic block
- codec:
-
coder-decoder
- CPU:
-
central processing unit
- DAC:
-
digital-to-analog converter
- DDR:
-
double data rate
- DIY:
-
do-it-yourself
- DSP:
-
digital signal processing
- EEPROM:
-
electrically erasable programmable read-only memory
- EPROM:
-
erasable programmable read-only memory
- FD:
-
finite difference
- FDTD:
-
finite-difference time domain
- FFT:
-
fast Fourier transform
- FFTW:
-
fastest Fourier transform in the West
- FIFO:
-
first in/first out
- FIR:
-
finite impulse response
- FMC:
-
FPGA mezzanine card
- FPGA:
-
field programmable gate array
- FSM:
-
finite-state machine
- GPGPU:
-
general purpose graphics processing unit
- GUI:
-
graphical user interface
- HDL:
-
hardware description language
- HLS:
-
high-level synthesis
- HPC:
-
high-performance computing
- I/O:
-
input/output
- I2S:
-
inter-IC sound
- IIR:
-
infinite impulse response
- IL:
-
interface layer
- IP:
-
intellectual property
- LTI:
-
linear time-invariant
- LUT:
-
look-up table
- MAC:
-
multiply-and-accumulate
- MoR:
-
model routing layer
- NTT:
-
number theoretic transform
- PCIe:
-
peripheral component interconnect express
- PCM:
-
pulse code modulation
- PC:
-
personal computer
- PDE:
-
partial differential equation
- PLD:
-
programmable logic device
- PROMS:
-
programmable read-only memory
- RAM:
-
random access memory
- RSV:
-
reserved
- RTL:
-
register transfer level
- SATA:
-
serial advanced technology attachment
- SPI:
-
serial peripheral interface
- TFLOPS:
-
tera floating point operations per second
- TMACS:
-
tera multiply-and-accumulates per second
- ucf:
-
user constraint file
- USB:
-
universal serial bus
- VHDL:
-
very high speed integrated circuit hardware description language
- WDF:
-
wave digital filter
References
Cisco: Cisco Visual Networking Index: Global Mobile Data Traffic Forecast Update, 2015–2020 White Paper (Cisco Systems Inc., San Jose 2016)
A. Brandt: Noise and Vibration Analysis: Signal Analysis and Experimental Procedures (Wiley, Chichester 2011)
E.S. Gopi: Digital Signal Processing for Medical Imaging Using MATLAB (Springer, New York 2013)
U. Zölzer, X. Amatriain, D. Arfib, J. Bonada, G. De Poli, P. Dutilleux, G. Evangelista, F. Keiler, A. Loscos, D. Rocchesso, M. Sandler, X. Serra, T. Todoroff: DAFX: Digital Audio Effects (Wiley, Chichester 2002)
M. Holters, U. Zölzer: Physical modelling of a wah-wah effect pedal as a case study for application of of the nodal DK method to circuits with variable parts. In: Proc. 14th Int. Conf. Digit. Audio Eff. DAFx-11 (2011) pp. 31–35
D. Arfib: Different ways to write digital audio effects programs. In: Proc. Digit. Audio Eff. (DAFx-98), Barcelona (1998) pp. 188–191
K. Zuse: Der Computer - Mein Lebenswerk (Springer, Berlin, Heidelberg 2010)
J. Fowers, G. Brown, P. Cooke, G. Stitt: A performance and energy comparison of FPGAs, GPUs, and multicores for sliding-window applications. In: Proc. ACM/SIGDA Int. Symp. Field Prog. Gate Arrays (ACM, New York 2012) pp. 47–56
G.W. Leibnitz: Explication de lárithmétique binaire, Mem. Acad. R. Sci. 3, 85–93 (1703)
F. Perkins: Leibniz and China: A Commerce of Light (Cambridge Univ. Press, Cambridge 2009)
G. Boole: The Mathematical Analysis of Logic (Philosophical Library, New York 1847)
G. Boole: An Investigation of the Laws of Thought: On Which are Founded the Mathematical Theories of Logic and Probabilities (Dover, Mineola 1854)
T. Hailperin: Boole’s algebra isn’t Boolean algebra, Math. Mag. 54(4), 173 (1981)
J. Corcoran: Aristotle’s prior analytics and Boole’s laws of thought, Hist. Phil. Log. 24(4), 261–288 (2003)
C.E. Shannon: A Symbolic Analysis of Relay and Switching Circuits, Ph.D. Thesis (Massachusetts Insitute of Technology, Cambridge 1940)
B.J. Copeland (Ed.): Colossus: The Secrets of Bletchley Park’s Codebreaking Computers (Oxford Univ. Press, Oxford 2006)
P.E. Ceruzzi: Computing: A Concise History, The MIT Press Essential Knowledge Series (MIT Press, Cambridge 2012)
C. Maxfield: The Design Warriors Guide to FPGAs (Elsevier, Oxford 2004)
L. Wirbel: Remembering Ross Freeman, http://www.edn.com/electronics-blogs/fpga-gurus/4306558/Remembering-Ross-Freeman (EDN Network 2009)
L. Pantaleone, E. Todorivich: Accelerating embedded software processing in a FPGA with PowerPC and Microblaze. In: Natl. Conf. Inform. Eng. Inf. Syst., San Louis (2013)
N. Hemsoth: FPGAs Glimmer on the HPC Horizon, Glint in Hyperscale Sun, https://www.nextplatform.com/2015/11/17/fpgas-glimmer-on-the-hpc-horizon-glint-in-hyperscale-sun/ (The Next Platform 2015)
T.P. Morgan: Why Hyperscalers And Clouds Are Pushing Intel Into FPGAs, https://www.nextplatform.com/2015/07/29/why-hyperscalers-and-clouds-are-pushing-intel-into-fpgas/ (The Next Platform 2015)
Xilinx: Configurable Logic Block User Guide (Xilinx, San Jose 2010)
Xilinx: Virtex-6 FPGA Configurable Logic Block User Guide (Xilinx, San Jose 2012)
Altera: Stratix V Device Handbook (Altera, San Jose 2015)
D.S. Brown, G.Z. Vranesic: Fundamentals of Digital Logic with VHDL Design, McGraw-Hill Series in Electrical and Computer Engineering, 3rd edn. (McGraw-Hill, New York 2009)
A.V. Pedroni: Circuit Design with VHDL (MIT Press, Cambridge 2004)
J. Reichardt, B. Schwarz: VHDL-Synthese: Entwurf digitaler Schaltungen und Systeme, 4th edn. (Oldenbourg, München 2009)
J.P. Ashenden: The Designer’s Guide to VHDL, 3rd edn. (Morgan Kaufmann, San Francisco 2010)
P. Pong: FPGA Prototyping by VHDL Examples (Wiley-Interscience, Hoboken 2008)
M. Zwoliński: Digital System Design with VHDL, 2nd edn. (Prentice Hall, Harlow 2004)
J.P. Ashenden: The Designer’s Guide to VHDL, 2nd edn. (Morgan Kaufmann, San Francisco 2002)
A.H. Wilen, J.P. Schade, R. Thornburg: Introduction to PCI Express: A Hardware and Software Developer’s Guide, Engineer to Engineer Series (Intel, Santa Clara 2003)
C. McGinnis: PCI-SIG® Fast Tracks Evolution to 32GT/s with PCI Express 5.0 Architecture, http://www.businesswire.com/news/home/20170607005351/en/PCI-SIG%C2%AE-Fast-Tracks-Evolution-32GTs-PCI-Express (PCI-SIG 2017)
H. Liebig, T. Flik, M. Menge: Mikroprozessortechnik und Rechnerstrukturen (Springer, London 2005)
C.M. Herbordt, T. VanCourt, Y. Gu, B. Sukhwani, A. Conti, J. Model, D. DiSabello: Achieving high performance with FPGA-based computing, Computer 40, 50–57 (2007)
U.M. Baese: Digital Signal Processing with Field Programmable Gate Arrays, 2nd edn. (Springer, Berlin, Heidelberg 2007)
R. Woods (Ed.): FPGA-Based Implementation of Signal Processing Systems (Wiley, Chichester 2008)
B.A. Kahng, J. Lienig, L.I. Markov, J. Hu: VLSI Physical Design: From Graph Partitioning to Timing Closure (Springer, Dordrecht 2011)
K. Veggeberg, A. Zheng: Real-time noise source identification using programmable gate array FPGA technology, Proc. Meet. Acoust. 5, 2582 (2009)
C. Hai, W. Ping: The high speed implementation of direction-of-arrival estimation algorithm, IEEE Int. Conf. Commun. Circuits Syst. West Sino Expo. 2, 922–925 (2002)
P. Chen, X. Tian, Y. Chen, X. Yang: Delay-sum beamforming on FPGA. In: ICSP 2008 Proc. (2008) pp. 2542–2545
A. Madanayake, L. Bruton, F. Comis, C. Comis: FPGA architectures for real-time 2D/3D FIR/IIR plane wave filters. In: Proc. Int. Symp. Circuits Syst. ISCAS, Vol. 3 (2004)
S. Kai, Y. Xu, S. Jiang, H. Zhu: Converting analog controllers to digital controllers with FPGA. In: 9th Int. Conf. Signal Process. (2008)
O. Maslennikow, A. Sergiyenko: Mapping DSP algorithms into FPGA. In: Int. Symp. Parallel Comput. Electr. Eng. (PARELEC'06), Bialystok (2006) pp. 208–213, https://doi.org/10.1109/PARELEC.2006.51
T. Brich, K. Novacek, A. Khateb: The digital signal processing using FPGA. In: ISSE 2006, 29th Int. Spring Semin. Electron. Technol. (2006) pp. 322–324
M. Liu, W. Kuehn, Z. Lu, A. Jantsch: System-on-an-FPGA design for real-time particle track recognition in physics experiments. In: 11th Euromicro Conf. Digit. Syst. Design Archit., Methods Tools (2008)
B. von Herzen: Signal processing at 250 mHz using high-performance FPGA’s, IEEE Trans. Very Large Scale Int. (VLSI) Syst. 6(2), 238–246 (1998)
Z. Wang, R. Jin, J. Geng, Y. Fan: FPGA implementation of downlink DBF calibration. In: Antennas Propag. Soc. Int. Symp. (2005)
K.H. Moustafa, M.F. Ahmed, M. Romeh, A. Fahmy: Real time processing of a lattice wave digital matched filter. In: IEEE Int. Symp. Signal Process. Inf. Techol. ISSPIT (2011) pp. 404–408
S. Thilagam, P. Karthigaikumar: Implementation of adaptive noise canceller using FPGA for real-time applications. In: 2015 2nd Int. Conf. Electr. Commun. Syst. (ICECS), Coimbatore (2015) pp. 1711–1714, https://doi.org/10.1109/ECS.2015.7124878
H.P. Afshar, P. Ienne: Highly versatile DSP blocks for improved FPGA arithmetic performance. In: Proc. IEEE Symp. Field-Prog. Custom Comput. Mach. FCCM (2010) pp. 29–236
L. Struyf, S. De Beugher, D.H. Van Uytsel, F. Kanters, T. Goedemé: The battle of the giants: A case study of GPU vs FPGA optimisation for real-time image processing, Proc. PECCS 1, 112–119 (2014)
W. Chen, P. Kosmas, M. Leeser, C. Rappaport: An FPGA implementation of the two-dimensional finite-difference time-domain (FDTD) algorithm. In: Proc. 2004 (ACM/SIGDA) 12th Int. Symp. Field Prog. Gate Arrays, New York (2004) pp. 213–222
J.A. Gibbons, D.M. Howard, A.M. Tyrrell: FPGA implementation of 1d wave equation for real-time audio synthesis, IEEE Proc. Comput. Digit. Tech. 152(5), 619–631 (2005)
E. Motuk, R. Woods, S. Bilbao: Implementation of finite-differece schemes for the wave equation on FPGA. In: IEEE Int. Acoust. Speech Signal Process. ICASSP (2005) p. 3
E. Motuk, R. Woods, S. Bilbao, J. McAllistere: Design methodology for real-time FPGA-based sound synthesis, IEEE Trans. Signal Process. 55(12), 5833–5845 (2007)
H.E. Motuk: System-On-Chip Implementation of Real-Time Finite Difference Based Sound Synthesis, Ph.D. Thesis (Queen’s Univ., Belfast 2006)
G. Martins, M. Barata, L. Gomes: Low cost method to reproduce sound with FPGA. In: IEEE Int. Symp. Ind. Electron. ISIE (2008)
F. Pfeifle, R. Bader: Real-time finite difference physical models of musical instruments on a field programmable gate array (fpga). In: Proc. Int. Conf. Digit. Audio Eff. (DAFx-12), New York (2012) pp. 63–70
F. Pfeifle, R. Bader: Real-time finite difference method physical modeling of musical instruments using field-programmable gate array hardware, J. Audio Eng. Soc. 63(12), 1001–1016 (2015)
K. Kroschel, K.-D. Kammeyer: Digitale Signalverarbeitung – Filterung und Spektralanalyse mit MATLAB-Übungen, 6th edn. (Vieweg+Teubner, Wiesbaden 2006)
N.T. Rajapaksha, C. Wijenayake, A. Madanayake, L.T. Bruton: Raster-scanned wave-digital filter architectures for multi-beam 2d IIR broadband beamforming. In: Proc. Int. Conf. Microelectron. ICM (2010) pp. 112–115
H. Li, A. Kummert, S. Schauland, J. Velten: 3D wave digital filter implementation on a virtex2 FPGA board with external SDRAM. In: 2009 Int. Workshop Multidimens. (nD) Syst., Thessaloniki (2009) pp. 1–5, https://doi.org/10.1109/NDS.2009.5191463
S. Bilbao: Numerical Sound Synthesis: Finite Difference Schemes and Simulation in Musical Acoustics (Wiley, Chichester 2009)
F. Pfeifle, R. Bader: Musical Acoustics, Neurocognition and Psychology of Music, Chapter Real-Time Physical Modelling of a Real Banjo Geometry Using FPGA Hardware Technology (Rolf Bader, Frankfurt am Main 2009) pp. 71–86
F. Pfeifle, R. Bader: Real-time virtual banjo model and measurements using a microphone array, J. Acoust. Soc. Am. 125(4), 2515–2515 (2009)
F. Pfeifle, R. Bader: Membrane modes and air resonances of the banjo using physical modeling and microphone array measurements, J. Acoust. Soc. Am. 127(3), 1870–1870 (2010)
S. Bilbao: Robust physical modeling sound synthesis for nonlinear systems, IEEE Signal Process. Mag. 24(2), 32–41 (2007)
C. Jordan: Calculus of Finite Differences (Chelsea, New York 1950)
J. Strikwerda: Finite Difference Schemes and Partial Differential Equations, 2nd edn. (SIAM, Philadelphia 2005)
E. Hairer, C. Lubich, G. Wanner: Geometric Numerical Integration: Structure-Preserving Algorithms for Ordinary Differential Equations, Springer Series in Computational Mathematics, Vol. 31 (Springer, Berlin, Heidelberg 2002)
R. Bader: Computational Mechanics of the Classical Guitar (Springer, Berlin, Heidelberg 2005)
R. Bader: Nonlinearities in the sound production of the classical guitar. In: Proc. Forum Acust. 2005 (2005) pp. 685–689
B.E. Moore: Conformal multi-symplectic integration methods for forced-damped semi-linear wave equations, Math. Comput. Simul. 80(1), 20–28 (2009)
D.W. Markiewicz: Survey on Symplectic Integrators (Univ. California, Berkeley 1999) preprint
R. Mclachlan: Symplectic integration of hamiltonian wave equations, Numer. Math. 66, 465–492 (1994)
R. Courant, K. Friedrichs, H. Lewy: Über die partiellen Differenzengleichungen der mathematischen Physik, Math. Ann. 100(1), 32–74 (1928), https://doi.org/10.1007/BF01448839
L. Verlet: Computer ``experiments'' on classical fluids. I. Thermodynamical properties of Lennard-Jones molecules, Phys. Rev. 159(1), 98–103 (1967)
K.J. Bathe: Finite-Element Methoden (Springer, Berlin, Heidelberg 2002)
M. Campbell, P. Campbell: The Science of String Instruments (Springer, New York 2010) pp. 301–315
B. Geiser: Studien zur Frühgeschichte der Violine. In: Publikationen der Schweizerischen Musikforschenden Gesellschaft, Serie 2 (Gemeinsamer Bibliotheksverbund (GBV)/Verbundzentrale des GBV (VZG), Bern 1974)
D.D. Boyden: The History of Violin Playing from Its Origins to 1761, and Its Relationship to the Violin and Violin Music (Oxford Univ. Press, Oxford 1967)
K.C. Wali: Cremona Violins: A Physicist’s Quest for the Secrets of Stradivari (World Scientific, Hackensack 2010)
D. Ullmann: Chladni und die Entwicklung der Akustik von 1750–1860 (Birkhäuser, Basel 1996)
H. von Helmholtz: Die Lehre von den Tonempfindungen als physiologische Grundlage für die Theorie der Musik (Friedrich Vieweg und Sohn, Braunschweig 1896)
L. Cremer: Physik der Geige (Hirzel, Stuttgart 1981)
G. Bissinger, E.G. Williams, N. Valdivia: Violin f-hole contribution to far-field radiation via patch near-field acoustical holography, J. Acoust. Soc. Am. 121(6), 3899–3906 (2007)
G. Bissinger: The Science of String Instruments (Springer, New York 2010) pp. 317–345
H.N. Fletcher, T.D. Rossing: Physics of Musical Instruments, 2nd edn. (Springer, New York 2000)
C.M. Hutchins: Klang und Akustik der Geige, Spektrum Wiss. 2, 112–122 (1981)
J.-L. Florens: Expressive bowing on a virtual string instrument, Lect. Notes Comput. Sci. 2915, 487–496 (2004)
M. Demoucron: On the Control of Virtual Violins – Physical Modelling and Control of Bowed String Instruments, PhD Thesis (Université Pierre et Marie Curie – Paris VI, Royal Institute of Technology, Stockholm 2008)
E. Maestre: Analysis/synthesis of bowing control applied to violin sound rendering via physical models, Proc. Meet. Acoust. 19(1), 3271 (2013)
J. Woodhouse, P.M. Galluzo: The bowed string as we know it today, Acta Acust. united Acust. 90, 579–589 (2004)
E. Bavu, J. Smith, J. Wolfe: Torsional waves in a bowed string, Acta Acust. united Acust. 91, 241–246 (2005)
A. Chaigne, A. Askenfelt: Numerical simulations of piano strings. I. A physical model for a struck string using finite difference methods, J. Acoust. Soc. Am. 95(2), 1112–1118 (1994)
J. Bensa, S. Bilbao, R. Kronland-Martinet, J.O. Smith III: The simulation of piano string vibration: From physical models to finite difference schemes and digital waveguides, J. Acoust. Soc. Am. 114(2), 1095–1107 (2003)
H.N. Fletcher, T.D. Rossing: The Physics of Musical Instruments (Springer, New York 1998)
F. Pfeifle, R. Bader: Real-time finite-difference string-bow interaction field programmable gate array (fpga) model coupled to a violin body, J. Acoust. Soc. Am. 130(4), 2507–2507 (2011)
J. Woodhouse: On the ‘‘bridge hill’’ of the violin, Acta Acust. united Acust. 91, 155–165 (2005)
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2018 Springer-Verlag Berlin Heidelberg
About this chapter
Cite this chapter
Pfeifle, F. (2018). Real-Time Signal Processing on Field Programmable Gate Array Hardware. In: Bader, R. (eds) Springer Handbook of Systematic Musicology. Springer Handbooks. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-662-55004-5_20
Download citation
DOI: https://doi.org/10.1007/978-3-662-55004-5_20
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-662-55002-1
Online ISBN: 978-3-662-55004-5
eBook Packages: EngineeringEngineering (R0)