Implementing high-performance DSP functions using Spartan-3 FPGAs

Publisher:chaxue1987Latest update time:2011-07-25 Keywords:FPGA  DSP Reading articles on mobile phones Scan QR code
Read articles on your mobile phone anytime, anywhere
Spartan-3FPGA can realize embedded DSP functions at a breakthrough price point. This article describes the features of Spartan-3 FPGA optimized for DSP and analyzes their advantages in performance and cost through implementation examples.

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.

The enhanced architecture allows

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.

Keywords:FPGA  DSP Reference address:Implementing high-performance DSP functions using Spartan-3 FPGAs

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

Arbitrary signal generator based on DSP and AD9852
  Direct digital frequency synthesis (DDS) technology is the third generation frequency synthesis technology that has developed rapidly with the development of digital integrated circuits and microelectronics technology, following direct frequency synthesis and indirect frequency synthesis. DDS technology has the advan
[Embedded]
Design of DSP Human-Machine Interface Module System Based on CPLD
CPLD (Complex programmable Logic Device) is developed on the basis of traditional PAL and GAL, and has obvious characteristics such as multiple working modes and high integration, high speed and high reliability. It has very wide applications in ultra-high-speed fields and real-time measurement and control. Today's CP
[Embedded]
Design of DSP Human-Machine Interface Module System Based on CPLD
Fast Startup for Xilinx FPGA
By Joachim Meyer PhD student Karlsruhe Institute of Technology joachim.meyer@kit.edu Juanjo NogueraSenior Research EngineerXilinx , Inc.juanjo.noguera@xilinx.com Rodney Stewart Automotive System Architect Xilinx, Inc. rodne
[Embedded]
Fast Startup for Xilinx FPGA
Learn the differences between ARM, DSP and FPGA in three minutes
ARM (Advanced RISC Machines) is a well-known company in the microprocessor industry. It has designed a large number of high-performance, low-cost, low-energy RISC processors, related technologies and software. The ARM architecture is the first RISC microprocessor designed for the low-budget market. It is basically the
[Microcontroller]
Learn the differences between ARM, DSP and FPGA in three minutes
Research on the Application of CS4235 in DSP Embedded System
Introduction      At present, the sound quality of embedded systems is relatively poor due to the simple structure and low sampling rate of the recording and playback chips used, which is far from meeting people's requirements for high-end embedded systems for life and study. If the sound card technology can be applie
[Analog Electronics]
Research on the Application of CS4235 in DSP Embedded System
Design of digital voltmeter printed circuit board based on PROTEUS
PROTEUS7.5 embedded system simulation and development platform mainly includes three functional modules: powerful ISIS schematic layout tool, PROSPICE mixed model SPICE simulation, and ARES PCB design. Among them, ARES (Advanced Routing and Editing Software) is a back-end tool module for PCB design. It is combined w
[Embedded]
Design of digital voltmeter printed circuit board based on PROTEUS
Mil ARM+FPGA hetero-core architecture core board made a wonderful appearance at the Shenzhen International Electronics Exhibition
On November 6, 2022, the Shenzhen International Electronics Exhibition and Embedded Systems Exhibition (ELEXCON 2022) kicked off at the Shenzhen Convention and Exhibition Center (Futian). The exhibition is themed "Core Trends! New Business Opportunities!" The exhibition content includes Innovative technologies and pro
[Embedded]
Mil ARM+FPGA hetero-core architecture core board made a wonderful appearance at the Shenzhen International Electronics Exhibition
NI develops new software-designed controller based on FPGA
Recently, National Instruments introduced a new FPGA-based programmable controller, the CompactRIO-9068 software-designed controller. According to National Instruments, the new controller can complete any task requiring embedded control and monitoring, such as building a system to suppress fires on cargo planes and ge
[Analog Electronics]
NI develops new software-designed controller based on FPGA
Latest Embedded Articles
Change More Related Popular Components

EEWorld
subscription
account

EEWorld
service
account

Automotive
development
circle

About Us Customer Service Contact Information Datasheet Sitemap LatestNews


Room 1530, 15th Floor, Building B, No.18 Zhongguancun Street, Haidian District, Beijing, Postal Code: 100190 China Telephone: 008610 8235 0740

Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved 京ICP证060456号 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号