All low-cost FPGAs offer basic logic performance at an attractive price and can meet a wide range of general-purpose design needs. However, when considering embedding DSP functions in the FPGA fabric, high-end FPGAs must be selected to gain platform features such as embedded multipliers and distributed memory.
The introduction of Spartan-3 FPGAs has changed the landscape of embedded DSP applications. Although the Spartan-3 family of devices may be priced lower, they also have the platform features required for DSP design. These platform features enable signal processing functions to be implemented with higher area utilization, allowing designs to reach lower price points.
Spartan-3 devices are ideal for use as coprocessors or pre-/post-processors, offloading computationally intensive functions from the programmable DSP to enhance system performance.
1 Optimized for DSP
Xilinx's Spartan-3 devices use 90nm process technology and 300mm wafers, which greatly reduces the cost of FPGAs. At the same time, these devices also include key DSP resources such as embedded 18×18-bit multipliers, large block memories (18kb), distributed RAM, and shift registers. These advanced features mean that using Spartan-3 FPGAs, DSP algorithms can be implemented at a much lower price than other competing FPGAs.
Figure 1: The enhanced architecture allows
A single LUT replaces 16 registers. In addition to increasing the basic performance of the system, these embedded features can also improve device utilization. For example, if a Spartan-3 embedded multiplier is implemented in the logic structure, it will take up 300 to 400 logic elements (LEs). In addition, because the embedded multiplier is adjacent to the logic structure, it is very simple to expand its functionality (such as creating an adder or cascading multiple multipliers to support complex arithmetic functions).
To improve efficiency, many DSP functions are best implemented in pipelines in a time-multiplexed fashion. This creates higher bandwidth, faster systems, but comes at the cost of more temporary storage requirements. For example, a time-multiplexed filter requires the results of each multiply-accumulate unit to be stored in a shift register. This design can exhaust register or memory resources before exhausting the FPGA's logic resources. The Spartan-3 FPGA family is unique in that they offer a mode where a lookup table (LUT) can perform a logic function or be configured as a 16-bit shift register.
As shown in Figure 1, this enhanced architecture allows a single LUT to replace 16 registers, maximizing area utilization when implementing time-multiplexed DSP functions.
Many DSP functions are also memory-intensive, requiring scratch memory to store coefficients, implement FIFOs, and obtain large buffers. Spartan-3 devices offer more memory bits than other low-cost FPGAs currently in use. For many DSP designs, the most important resource is the embedded memory within the FPGA, not the logic circuits or multipliers. Because of the lack of memory resources, designers using competing low-cost devices have to choose larger devices or use external memory to build systems that can be implemented with just a small Spartan-3 FPGA.
2 Common DSP Function Implementation
The following analysis shows how these characteristics affect device utilization by analyzing two implementation examples of finite impulse response (FIR) filters: one based on a multiply-accumulator (MAC) implementation and the other based on a multi-channel distributed algorithm (DA).
FIR filters are commonly used in base stations, digital video, wireless LAN, xDSL, and cable modems. The test bench is a 64-tap MAC FIR filter with 16-bit data and coefficients at 130MHz implemented in a Spartan-3 XC3S400 FPGA. The first implementation uses only one MAC, while the second implementation uses four MACs.
Going from a single MAC implementation to a quad MAC implementation significantly increases the performance of the FIR filter while only doubling the number of LUTs and still using only 4% of the total available logic resources. The quad MAC implementation uses four RAMs and four MACs to efficiently implement the FIR filter with minimal device logic resources.
Another interesting implementation is the implementation of a multi-channel FIR function, where you can see how the device utilization changes from a single channel FIR filter to an 8-channel FIR filter.
Implementing a single-channel distributed algorithm FIR filter uses 29% of the logic resources and 39% of the register resources of the XC3S1000 Spartan-3 device. When implementing the same 8-channel filter, different channels are usually time-multiplexed to save logic, but this will take up many registers or a large amount of on-chip memory to store intermediate results.
If a Spartan-3 FPGA is used, the intermediate results will be stored in a 16-bit shift register (SRL-16) configured by a LUT. In this way, the same 8-channel filter only uses 10% more available logic resources and 7% more available register resources, that is, building 8 channels only occupies 25% more device resources.
This significant resource savings is directly related to the use of SRL-16 in Spartan-3 devices, with an additional 1,343 LUTs being used in SRL-16 mode in the 8-channel implementation.
If this design is implemented in an FPGA that does not support SRL-16 performance, an additional 10,744 (1343×8) flip-flops will be required as storage units, which will necessitate the use of large-scale devices to provide a large number of registers and consume related combinational logic resources.
Previous article:Design and implementation of DC motor monitoring interface based on QTE ARMDSP embedded system
Next article:Design of Multi-channel Video Monitoring System Based on Dual DSP
Recommended ReadingLatest update time:2024-11-17 00:06
- Popular Resources
- Popular amplifiers
- Analysis and Implementation of MAC Protocol for Wireless Sensor Networks (by Yang Zhijun, Xie Xianjie, and Ding Hongwei)
- MATLAB and FPGA implementation of wireless communication
- Modern arc welding power supply and its control
- Intelligent Control Technology of Permanent Magnet Synchronous Motor (Written by Wang Jun)
- Huawei's Strategic Department Director Gai Gang: The cumulative installed base of open source Euler operating system exceeds 10 million sets
- Analysis of the application of several common contact parts in high-voltage connectors of new energy vehicles
- Wiring harness durability test and contact voltage drop test method
- Sn-doped CuO nanostructure-based ethanol gas sensor for real-time drunk driving detection in vehicles
- Design considerations for automotive battery wiring harness
- Do you know all the various motors commonly used in automotive electronics?
- What are the functions of the Internet of Vehicles? What are the uses and benefits of the Internet of Vehicles?
- Power Inverter - A critical safety system for electric vehicles
- Analysis of the information security mechanism of AUTOSAR, the automotive embedded software framework
Professor at Beihang University, dedicated to promoting microcontrollers and embedded systems for over 20 years.
- Innolux's intelligent steer-by-wire solution makes cars smarter and safer
- 8051 MCU - Parity Check
- How to efficiently balance the sensitivity of tactile sensing interfaces
- What should I do if the servo motor shakes? What causes the servo motor to shake quickly?
- 【Brushless Motor】Analysis of three-phase BLDC motor and sharing of two popular development boards
- Midea Industrial Technology's subsidiaries Clou Electronics and Hekang New Energy jointly appeared at the Munich Battery Energy Storage Exhibition and Solar Energy Exhibition
- Guoxin Sichen | Application of ferroelectric memory PB85RS2MC in power battery management, with a capacity of 2M
- Analysis of common faults of frequency converter
- In a head-on competition with Qualcomm, what kind of cockpit products has Intel come up with?
- Dalian Rongke's all-vanadium liquid flow battery energy storage equipment industrialization project has entered the sprint stage before production
- Allegro MicroSystems Introduces Advanced Magnetic and Inductive Position Sensing Solutions at Electronica 2024
- Car key in the left hand, liveness detection radar in the right hand, UWB is imperative for cars!
- After a decade of rapid development, domestic CIS has entered the market
- Aegis Dagger Battery + Thor EM-i Super Hybrid, Geely New Energy has thrown out two "king bombs"
- A brief discussion on functional safety - fault, error, and failure
- In the smart car 2.0 cycle, these core industry chains are facing major opportunities!
- The United States and Japan are developing new batteries. CATL faces challenges? How should China's new energy battery industry respond?
- Murata launches high-precision 6-axis inertial sensor for automobiles
- Ford patents pre-charge alarm to help save costs and respond to emergencies
- New real-time microcontroller system from Texas Instruments enables smarter processing in automotive and industrial applications
- [RVB2601 Creative Application Development]_1_Board Unboxing + Data Collection
- Recruitment: RF Engineer
- NuMaker-IIoT-NUC980 Review EBI
- How to convert K210 image into JPEG data stream after acquisition
- Design and implementation of 3D wireless RF mouse based on single chip microcomputer and touch control module
- RSL10 ADC multi-channel data acquisition
- MicroPython Hands-on (34) - Universal Sensor
- Practical Information 2 - Performance Comparison between CDMA2000 1X and GPRS
- 【FAQ】RISC-V Safe Place|Microchip Security Solutions Series Seminar No. 4
- 【Development and application based on NUCLEO-F746ZG motor】1. Development board introduction