In the past, the decision to use a low-cost microcontroller or a higher performance CPU was fairly straightforward and based on the expected performance needs of the embedded system.
As control and monitoring systems evolve to become more feature rich, additional embedded processing and programmable logic is becoming commonplace for advanced capabilities such as the following:
* Faster and more reliable responses to I/O.
* Machine monitoring to predict failures and improve safety.
* Audio and image processing.
* Wireless communications and Internet connectivity.
* Filtering of analog and digital signals to get more accurate measurements.
* Digital communications to intelligent sensors and other subsystems.
* I/O level pre-processing for data reduction.
The vast majority of embedded designs begin with a processor-based component, using a microcontroller or microprocessor as command central to schedule and process basic control and monitoring tasks, communicate with user interfaces, and supervise all other parts of the design. For traditional embedded systems, this architecture provided enough processing power to service all control loops and update log files. For more complex systems that integrate advanced control and signal processing tasks, teams are forced to use additional processing components like field-programmable gate arrays (FPGAs), digital signal processors (DSPs) and graphics processing units (GPUs) to achieve higher speed data processing and more deterministic control.
Programmable logic
FPGAs have been used for over 30 years as digital glue logic between different components on the same printed circuit board. The reconfigurable logic within the FPGA fabric has been ideal for implementing complex state machines and application-specific digital circuitry that operate independently from processor clock cycles, with higher reliability and determinism. Over the years, the performance of FPGAs has increased dramatically, with significant reductions in power and cost. For this reason, the use of FPGAs in embedded measurement and control designs has expanded from simple glue logic to handling signal processing tasks, such as custom digital filters, fast Fourier transforms and logic for proportional integral derivative (PID) control. A primary benefit of FPGAs for processing is that several algorithms can now run in parallel, unlike the sequential architecture of a processor.
With all the performance and flexibility that FPGAs offer, they are nowhere near replacing the need for microcontrollers and microprocessors in embedded designs. Comparatively, processors are still lower cost and come with a well-established ecosystem of software abstraction, including OSs, standard hardware drivers and libraries for signal processing with easy floating-point arithmetic. The adoption of FPGA technology has been the result of higher performance systems that combine both processors and FPGA fabric to divide and conquer complex processing needs through both sequential and parallel architectures. Integrating reprogrammable hardware into designs is the fastest way to iterate without having to spend time and cost on redesigning PCBs.
Industry examples
The combination of processors and FPGAs in embedded system designs is prevalent in many industries. One example is ePower Technology, an engineering company in Denmark, which designed an embedded control system for muscle testing and training equipment. The SYGNUM energy training system used a patented five-phase motor to offer smoother control when applying force resistance during exercise motions. It used FPGAs to handle the high-speed control loops that maintained velocity and position set-points, and then used a processor with a real-time OS for other lower frequency control loops.
From the energy industry, Xtreme Power is a US company that designed a distributed energy storage system made up of several processor and FPGA-based embedded control and monitoring nodes. It uses FPGA technology to take accurate, high-speed measurements on three-phase power grids and run advanced algorithms to determine how best to respond to instabilities on the power grid. The processor portion of the systems provides the Ethernet communication link to various other distributed nodes for remote access to data for system management and diagnostics.
Lastly, the French company O’Mos designed an embedded system to monitor crushing machines installed in quarries. It could watch and process sensor values to predict machine failure and detect misuse, thereby reducing machine downtime and maintenance costs. FPGA-based I/O was used to do inline processing of various physical parameters, including pressure, temperature, vibration, and flow. The dedicated processor part of the system logs data files and communicates with the local human machine interface.
Early adopters of reconfigurable computing designs have taken advantage of parallel processing to meet performance needs without a large impact to system costs or development time. Due to the reconfigurable nature of FPGA circuitry, there are many examples of embedded designs getting deployed sooner by skipping the long lead times associated with making revisions to PCBs. The end result is a higher performance control and monitoring system that is developed in less time and with higher confidence that it can serve demanding applications precisely and reliably.
© Technews Publishing (Pty) Ltd | All Rights Reserved