FPGAs
eBook - ePub

FPGAs

Fundamentals, Advanced Features, and Applications in Industrial Electronics

  1. 249 pages
  2. English
  3. ePUB (mobile friendly)
  4. Available on iOS & Android
eBook - ePub

FPGAs

Fundamentals, Advanced Features, and Applications in Industrial Electronics

About this book

Field Programmable Gate Arrays (FPGAs) are currently recognized as the most suitable platform for the implementation of complex digital systems targeting an increasing number of industrial electronics applications. They cover a huge variety of application areas, such as: aerospace, food industry, art, industrial automation, automotive, biomedicine, process control, military, logistics, power electronics, chemistry, sensor networks, robotics, ultrasound, security, and artificial vision. This book first presents the basic architectures of the devices to familiarize the reader with the fundamentals of FPGAs before identifying and discussing new resources that extend the ability of the devices to solve problems in new application domains. Design methodologies are discussed and application examples are included for some of these domains, e.g., mechatronics, robotics, and power systems.

Frequently asked questions

Yes, you can cancel anytime from the Subscription tab in your account settings on the Perlego website. Your subscription will stay active until the end of your current billing period. Learn how to cancel your subscription.
At the moment all of our mobile-responsive ePub books are available to download via the app. Most of our PDFs are also available to download and we're working on making the final remaining ones downloadable now. Learn more here.
Perlego offers two plans: Essential and Complete
  • Essential is ideal for learners and professionals who enjoy exploring a wide range of subjects. Access the Essential Library with 800,000+ trusted titles and best-sellers across business, personal growth, and the humanities. Includes unlimited reading time and Standard Read Aloud voice.
  • Complete: Perfect for advanced learners and researchers needing full, unrestricted access. Unlock 1.4M+ books across hundreds of subjects, including academic and specialized titles. The Complete Plan also includes advanced features like Premium Read Aloud and Research Assistant.
Both plans are available with monthly, semester, or annual billing cycles.
We are an online textbook subscription service, where you can get access to an entire online library for less than the price of a single book per month. With over 1 million books across 1000+ topics, we’ve got you covered! Learn more here.
Look out for the read-aloud symbol on your next book to see if you can listen to it. The read-aloud tool reads text aloud for you, highlighting the text as it is being read. You can pause it, speed it up and slow it down. Learn more here.
Yes! You can use the Perlego app on both iOS or Android devices to read anytime, anywhere — even offline. Perfect for commutes or when you’re on the go.
Please note we cannot support devices running on iOS 13 and Android 7 or earlier. Learn more about using the app.
Yes, you can access FPGAs by Juan Jose Rodriguez Andina,Eduardo de la Torre Arnanz,Maria Dolores Valdes,Juan José Rodriguez Andina,Maria Dolores Valdés Peña in PDF and/or ePUB format, as well as other popular books in Technology & Engineering & Electrical Engineering & Telecommunications. We have over one million books available in our catalogue for you to explore.

Contents


Preface
Acknowledgments
Authors
1. FPGAs and Their Role in the Design of Electronic Systems
1.1 Introduction
1.2 Embedded Control Systems: A Wide Concept
1.3 Implementation Options for Embedded Systems
1.3.1 Technological Improvements and Complexity Growth
1.3.2 Toward Energy-Efficient Improved Computing Performance
1.3.3 A Battle for the Target Technology?
1.3.4 Design Techniques and Tools for the Different Technologies
1.3.4.1 General-Purpose Processors and Microcontrollers
1.3.4.2 DSP Processors
1.3.4.3 Multicore Processors and GPGPUs
1.3.4.4 FPGAs
1.3.4.5 ASICs
1.4 How Does Configurable Logic Work?
1.5 Applications and Uses of FPGAs
References
2. Main Architectures and Hardware Resources of FPGAs
2.1 Introduction
2.2 Main FPGA Architectures
2.3 Basic Hardware Resources
2.3.1 Logic Blocks
2.3.2 I/O Blocks
2.3.2.1 SerDes Blocks
2.3.2.2 FIFO Memories
2.3.3 Interconnection Resources
2.4 Specialized Hardware Blocks
2.4.1 Clock Management Blocks
2.4.2 Memory Blocks
2.4.3 Hard Memory Controllers
2.4.4 Transceivers
2.4.4.1 PCIe Blocks
2.4.5 Serial Communication Interfaces
References
3. Embedded Processors in FPGA Architectures
3.1 Introduction
3.1.1 Multicore Processors
3.1.1.1 Main Hardware Issues
3.1.1.2 Main Software Issues
3.1.2 Many-Core Processors
3.1.3 FPSoCs
3.2 Soft Processors
3.2.1 Proprietary Cores
3.2.2 Open-Source Cores
3.3 Hard Processors
3.4 Other “Configurable” SoC Solutions
3.4.1 Sensor Hubs
3.4.2 Customizable Processors
3.5 On-Chip Buses
3.5.1 AMBA
3.5.1.1 AHB
3.5.1.2 Multilayer AHB
3.5.1.3 AXI
3.5.2 Avalon
3.5.3 CoreConnect
3.5.4 WishBone
References
4. Advanced Signal Processing Resources in FPGAs
4.1 Introduction
4.2 Embedded Multipliers
4.3 DSP Blocks
4.4 Floating-Point Hardware Operators
References
5. Mixed-Signal FPGAs
5.1 Introduction
5.2 ADC Blocks
5.3 Analog Sensors
5.4 Analog Data Acquisition and Processing Interfaces
5.5 Hybrid FPGA–FPAA Solutions
References
6. Tools and Methodologies for FPGA-Based Design
6.1 Introduction
6.2 Basic Design Flow Based on RTL Synthesis and Implementation Tools
6.2.1 Design Entry
6.2.2 Simulation Tools
6.2.2.1 Interactive Simulation
6.2.2.2 Mixed-Mode Simulation
6.2.2.3 HIL Verification
6.2.3 RTL Synthesis and Back-End Tools
6.2.3.1 RTL Synthesis
6.2.3.2 Translation
6.2.3.3 Placement and Routing
6.2.3.4 Bitstream Generation
6.3 Design of SoPC Systems
6.3.1 Hardware Design Tools for SoPCs
6.3.2 Software Design Tools for SoPCs
6.3.3 Core Libraries and Core Generation Tools
6.4 HLS Tools
6.5 Design of HPC Multithread Accelerators
6.6 Debugging and Other Auxiliary Tools
6.6.1 Hardware/Software Debugging for SoPC Systems
6.6.1.1 Software Debugging
6.6.1.2 Hardware Debugging
6.6.1.3 Hardware/Software Co-Debugging
6.6.2 Auxiliary Tools
6.6.2.1 Pin Planning Tools
6.6.2.2 FPGA Selection Advisory Tools
6.6.2.3 Power Estimation Tools
References
7. Off-Chip and In-Chip Communications for FPGA Systems
7.1 Introduction
7.2 Off-Chip Communications
7.2.1 Low-Speed Interfaces
7.2.2 High-Speed Interfaces
7.3 In-Chip Communications
7.3.1 Point-to-Point Connections
7.3.2 Bus-Based Connections
7.3.3 Networks on Chip
References
8. Building Reconfigurable Systems Using Commercial FPGAs
8.1 Introduction
8.2 Main Reconfiguration-Related Concepts
8.2.1 Reconfigurable Architectures
8.3 FPGAs as Reconfigurable Elements
8.3.1 Commercial FPGAs with Reconfiguration Support
8.3.2 Setting Up an Architecture for Partial Reconfiguration
8.3.3 Scalable Architectures
8.3.4 Tool Support for Partial Reconfiguration
8.3.5 On-Chip Communications for Reconfigurable System Support
8.4 RTR Support
8.4.1 Self-Managing Systems
8.4.2 Adaptive Multithread Execution with Reconfigurable Hardware Accelerators
8.4.3 Evolvable Hardware
References
9. Industrial Electronics Applications of FPGAs
9.1 Introduction
9.2 FPGA Application Domains in Industrial Electronics
9.2.1 Digital Real-Time Simulation of Power Systems
9.2.2 Advanced Control Techniques
9.2.2.1 Power Systems
9.2.2.2 Robotics and Automotive Electronics
9.2.2.3 Use of Floating-Point Operations
9.2.3 Electronic Instrumentation
9.3 Conclusion
References
Index

Preface


This book intends to contribute to a wider use of field-programmable gate arrays (FPGAs) in industry by presenting the concepts associated with this technology in a way accessible for nonspecialists in hardware design so that they can analyze if and when these devices are the best (or at least a possible) solution to efficiently address the needs of their target industrial applications. This is not a trivial issue because of the many different (but related) factors involved in the selection of the most suitable hardware platform to solve a specific digital design problem. The possibilities enabled by current FPGA devices are highlighted, with particular emphasis on the combination of traditional FPGA architectures and powerful embedded processors, resulting in the so-called field-programmable systems-on-chip (FPSoCs) or systems- on-programmable-chip (SoPCs). Discussions and analyses are focused on the context of embedded systems, but they are also valid and can be easily extrapolated to other areas.
The book is structured into nine chapters:
  • Chapter 1 analyzes the different existing design approaches for embedded systems, putting FPGA-based design in perspective with its direct competitors in the field. In addition, the basic concept of FPGA “programmability” or “configurability” is discussed, and the main elements of FPGA architectures are introduced.
  • From the brief presentation in Chapter 1, Chapter 2 describes in detail the main characteristics, structure, and generic hardware resources of modern FPGAs (logic blocks, I/O blocks, and interconnection resources). Some specialized hardware blocks (clock management blocks, memory blocks, hard memory controllers, transceivers, and serial communication interfaces) are also analyzed in this chapter.
  • Embedded soft and hard processors are analyzed in Chapter 3, because of their special significance and the design paradigm shift they caused as they transformed FPGAs from hardware accelerators to FPSoC platforms. As shown in this chapter, devices have evolved from simple ones, including one general-purpose microcontroller, to the most recent ones, which integrate several (more than 10 in some cases) complex processor cores operating concurrently, opening the door for the implementation of homogeneous or heterogeneous multicore architectures. The efficient communication between processors and their peripherals is a key factor to successfully develop embedded systems. Because of this, the currently available on-chip buses and their historical evolution are also analyzed in detail in this chapter.
  • Chapter 4 analyzes DSP blocks, which are very useful hardware resources in many industrial applications, enabling the efficient implementation of key functional elements, such as digital filters, encoders, decoders, or mathematical transforms. The advantages provided by the inherent parallelism of FPGAs and the ability of most current devices to implement floating-point operations in hardware are also highlighted in this chapter.
  • Analog blocks, including embedded ADCs and DACs, are addressed in Chapter 5. They allow the functionality of the (mostly digital) FPGA devices to be extended to simplify interfacing with the analog world, which is a fundamental requirement for many industrial applications.
  • The increasing complexity of FPGAs, which is clearly apparent from the analyses in Chapters 2 through 5, can only be efficiently handled with the help of suitable software tools, which allow complex design projects to be completed within reasonably short time frames. Tools and methodologies for FPGA design are presented in Chapter 6, including tools based on the traditional RTL design flow, tools for SoPC design, high-level synthesis tools, and tools targeting multithread accelerators for high-performance computing, as well as debugging and other auxiliary tools.
  • There are many current applications where tremendous amounts of data have to be processed. In these cases, communication resources are key elements to obtain systems with the desired (increasingly high) performance. Because of the many functionalities that can be implemented in FPGAs, such efficient communications are required to interact not only with external elements but also with internal blocks to exchange data at the required rates. The issues related to both off-chip and in-chip communications are analyzed in detail in Chapter 7.
  • The ability to be reconfigured is a very interesting asset of FPGAs, which resulted in a new paradigm in digital design, allowing the same dev...

Table of contents

  1. Cover
  2. Halftitle
  3. Title
  4. Copyright
  5. Table of Contents