Upgrading a FIR Compiler v3.1.x Design to v3.2.x

Similar documents
Video and Image Processing Suite

The ASI demonstration uses the Altera ASI MegaCore function and the Cyclone video demonstration board.

SignalTap Analysis in the Quartus II Software Version 2.0

White Paper Lower Costs in Broadcasting Applications With Integration Using FPGAs

White Paper Versatile Digital QAM Modulator

Altera's 28-nm FPGAs Optimized for Broadcast Video Applications

SignalTap Plus System Analyzer

Implementing Audio IP in SDI II on Arria V Development Board

Serial Digital Interface Demonstration for Stratix II GX Devices

Application Note PG001: Using 36-Channel Logic Analyzer and 36-Channel Digital Pattern Generator for testing a 32-Bit ALU

SMPTE 292M EG-1 Color Bar Generation, RP 198 Pathological Generation, Grey Pattern Generation IP Core - AN4088

2. Logic Elements and Logic Array Blocks in the Cyclone III Device Family

SDI Audio IP Cores User Guide

Video and Image Processing Suite User Guide

Concurrent Programming through the JTAG Interface for MAX Devices

Configuring FLASHlogic Devices

SMPTE 259M EG-1 Color Bar Generation, RP 178 Pathological Generation, Grey Pattern Generation IP Core AN4087

SDI Audio IP Cores User Guide

AN 623: Using the DSP Builder Advanced Blockset to Implement Resampling Filters

Optimization of Multi-Channel BCH Error Decoding for Common Cases. Russell Dill Master's Thesis Defense April 20, 2015

Multirate Digital Signal Processing

Techniques for Extending Real-Time Oscilloscope Bandwidth

Serial Digital Interface Reference Design for Stratix IV Devices

Altera JESD204B IP Core and ADI AD6676 Hardware Checkout Report

A Fast Constant Coefficient Multiplier for the XC6200

Design on CIC interpolator in Model Simulator

Serial Digital Interface II Reference Design for Stratix V Devices

12. IEEE (JTAG) Boundary-Scan Testing for the Cyclone III Device Family

Altera JESD204B IP Core and ADI AD9144 Hardware Checkout Report

Keywords Xilinx ISE, LUT, FIR System, SDR, Spectrum- Sensing, FPGA, Memory- optimization, A-OMS LUT.

Data Converters and DSPs Getting Closer to Sensors

Intel FPGA SDI II IP Core User Guide

International Journal of Engineering Research-Online A Peer Reviewed International Journal

FPGA Development for Radar, Radio-Astronomy and Communications

ALONG with the progressive device scaling, semiconductor

SDI II MegaCore Function User Guide

A review on the design and improvement techniques of comb filters

Altera JESD204B IP Core and ADI AD9250 Hardware Checkout Report

Frame Processing Time Deviations in Video Processors

Clarke and Inverse ClarkeTransformations Hardware Implementation. User Guide

FPGA Implementation of DA Algritm for Fir Filter

An Improved Recursive and Non-recursive Comb Filter for DSP Applications

MC-ACT-DVBMOD April 23, Digital Video Broadcast Modulator Datasheet v1.2. Product Summary

A MULTIPLIERLESS RECONFIGURABLE RESIZER FOR MULTI-WINDOW IMAGE DISPLAY

Inside Digital Design Accompany Lab Manual

Design and Implementation of Partial Reconfigurable Fir Filter Using Distributed Arithmetic Architecture

LFSRs as Functional Blocks in Wireless Applications Author: Stephen Lim and Andy Miller

DDC and DUC Filters in SDR platforms

FPGA Digital Signal Processing. Derek Kozel July 15, 2017

UG0682 User Guide. Pattern Generator. February 2018

Debugging of Verilog Hardware Designs on Altera s DE-Series Boards. 1 Introduction. For Quartus Prime 15.1

Enable input provides synchronized operation with other components

Dual Link DVI Receiver Implementation

AN 823: Intel FPGA JESD204B IP Core and ADI AD9625 Hardware Checkout Report for Intel Stratix 10 Devices

Optimization of memory based multiplication for LUT

Memory efficient Distributed architecture LUT Design using Unified Architecture

Hardware Implementation for the HEVC Fractional Motion Estimation Targeting Real-Time and Low-Energy

CSE140L: Components and Design Techniques for Digital Systems Lab. CPU design and PLDs. Tajana Simunic Rosing. Source: Vahid, Katz

Design of Memory Based Implementation Using LUT Multiplier

OF AN ADVANCED LUT METHODOLOGY BASED FIR FILTER DESIGN PROCESS

9. Synopsys PrimeTime Support

Chapter 4. Logic Design

IP-DDC4i. Four Independent Channels Digital Down Conversion Core for FPGA FEATURES. Description APPLICATIONS HARDWARE SUPPORT DELIVERABLES

Reconfigurable FPGA Implementation of FIR Filter using Modified DA Method

Laboratory Exercise 7

SOC Single Channel H264 + Audio Encoder module

AN 848: Implementing Intel Cyclone 10 GX Triple-Rate SDI II with Nextera FMC Daughter Card Reference Design

Area and Speed Efficient Implementation of Symmetric FIR Digital Filter through Reduced Parallel LUT Decomposed DA Approach

UG0651 User Guide. Scaler. February2018

High Performance Real-Time Software Asynchronous Sample Rate Converter Kernel

Simple motion control implementation

FPGA Hardware Resource Specific Optimal Design for FIR Filters

Research Article. Implementation of Low Power, Delay and Area Efficient Shifters for Memory Based Computation

Radar Signal Processing Final Report Spring Semester 2017

Designing for High Speed-Performance in CPLDs and FPGAs

A Parallel Area Delay Efficient Interpolation Filter Architecture

FPGA Realization of Farrow Structure for Sampling Rate Change

Commsonic. Multi-channel ATSC 8-VSB Modulator CMS0038. Contact information. Compliant with ATSC A/53 8-VSB

Design & Simulation of 128x Interpolator Filter

Implementation of Memory Based Multiplication Using Micro wind Software

Block Diagram. 16/24/32 etc. pixin pixin_sof pixin_val. Supports 300 MHz+ operation on basic FPGA devices 2 Memory Read/Write Arbiter SYSTEM SIGNALS

2D Scaler IP Core User s Guide

RFI MITIGATING RECEIVER BACK-END FOR RADIOMETERS

LUT Optimization for Memory Based Computation using Modified OMS Technique

SMPTE-259M/DVB-ASI Scrambler/Controller

Distributed Arithmetic Unit Design for Fir Filter

Chapter 6: Real-Time Image Formation

Reconfigurable Fir Digital Filter Realization on FPGA

This paper is a preprint of a paper accepted by Electronics Letters and is subject to Institution of Engineering and Technology Copyright.

Block Diagram. deint_mode. line_width. log2_line_width. field_polarity. mem_start_addr0. mem_start_addr1. mem_burst_size.

Retiming Sequential Circuits for Low Power

Figure 1: Feature Vector Sequence Generator block diagram.

Integrated Circuit for Musical Instrument Tuners

Efficient Parallelization of Polyphase Arbitrary Resampling FIR Filters for High-Speed Applications

Logic Design Viva Question Bank Compiled By Channveer Patil

An Lut Adaptive Filter Using DA

Multirate Signal Processing: Graphical Representation & Comparison of Decimation & Interpolation Identities using MATLAB

An FPGA Platform for Demonstrating Embedded Vision Systems. Ariana Eisenstein

A Reed Solomon Product-Code (RS-PC) Decoder Chip for DVD Applications

Quad ADC EV10AQ190A Synchronization of Multiple ADCs

Transcription:

Upgrading a FIR Compiler v3.1.x Design to v3.2.x May 2005, ver. 1.0 Application Note 387 Introduction This application note is intended for designers who have an FPGA design that uses the Altera FIR Compiler MegaCore function version 3.1.0 or earlier and want to upgrade their design to the FIR Compiler version 3.2.0 or later. The changes introduced in the FIR Compiler version 3.2.x affect the following cases: Throughput for interpolation filters Throughput for decimation filters Input data sequence for multichannel decimation filters Design changes may be necessary in these cases. This document discusses the following filters: Interpolation Filters Decimation Filters Multichannel Filters The following discussion gives a brief description of each filter and then compares the differences between the FIR Compiler versions 3.1.x and 3.2.x. f For more information on the Altera FIR Compiler, refer to the FIR Compiler MegaCore Function User Guide. Multirate Filters Multirate filters are required when changing the sampling rate of a data path in a system. Multirate filters include both interpolation and decimation filters. Interpolation increases the sample rate by inserting zero-valued samples between the original samples, while decimation discards samples to decrease the sample rate. The FIR Compiler automatically creates interpolation and decimation filters using polyphase decomposition. Polyphase filters simplify the overall system design and also reduce the number of computations per cycle required by the hardware. Altera Corporation 1 AN-387-1.0

Upgrading a FIR Compiler v3.1.x Design to v3.2.x Interpolation Filters An interpolation filter increases the output sample rate by a factor of I through the insertion of I-1 zeros between input samples, a process known as zero padding. Polyphase decomposition reduces the number of operations per clock cycle by ignoring the zeros that are padded in between the original input samples. Polyphase interpolation filters provide both speed and area optimization because each polyphase filter runs at the input data rate for maximum throughput (Figures 1 and 2). Figure 1. Polyphase Interpolation Block Diagram Note to Figure 1 (1) LPF = Low Pass Filter Figure 2. Polyphase Decomposition for Interpolation Filters In the FIR Compiler v3.1.0 and earlier, the IP implements interpolation filters using multiple engines in parallel to optimize throughput. In the FIR Compiler v3.2.0 and later, the IP implements interpolation filters using a single engine that is time-shared by the different phases to optimize area. This difference in implementation changes the overall throughput of the filter and the input sample rate. The throughput of the filter is the rate at which the filter generates the output (one output every K clock cycles). The input sample rate is the rate at which the filter processes input data samples (the input needs to be held for L clock cycles). The values of K and L for the throughput and input sample rate of interpolation filters in the FIR Compiler v3.2.x depend on the filter architecture you select. Following are the definitions of K and L for the different filter architectures: 2 Altera Corporation

Interpolation Filters Fully Serial K = N L = N * I N = Input bit width I = Interpolation factor Multi-bit Serial K = N/M L = N * I / M N = Input bit width M = Number of serial units I = Interpolation factor 1 The structure of the Multi-bit Serial architecture requires the input bit width (N) to be an integer multiple of the number of serial units (M). Fully Parallel K = 1 L = I I = Interpolation factor Multicycle K = C L = C * I C = Clocks per output data I = Interpolation factor Altera Corporation 3

Upgrading a FIR Compiler v3.1.x Design to v3.2.x For systems that require higher throughput and input data rate, Altera recommends that you use parallel or multicycle variable structures. For the exact throughput and input data rate, refer to the FIR Compiler GUI using IP Toolbench (Figure 3). Figure 3. FIR Compiler GUI With Throughput Information for Interpolation Filters 4 Altera Corporation

Decimation Filters Decimation Filters A decimation filter decreases the output sample rate by a factor of D by keeping only every D-th input sample. Polyphase decomposition reduces the number of computations per cycle by ignoring the input data samples that are discarded during down sampling. Polyphase decimation filters provide speed optimization because each polyphase filter runs at the output data rate (Figures 4 and 5). Figure 4. Polyphase Decimation Block Diagram Note to Figure 4: (1) LPF = Low Pass Filter Figure 5. Polyphase Decomposition for Decimation Filters In the FIR Compiler v3.1.0 and earlier, the IP implements decimation filters using multiple engines in parallel to optimize throughput. In the FIR Compiler v3.2.0 and higher, the IP implements decimation filters using a single engine that is time-shared by the different phases to optimize area. This difference in implementation changes the overall throughput of the filter and the input sample rate. The throughput of the filter is the rate at which the filter generates the output (one output every K clock cycles). The input sample rate is the rate at which the filter processes input data samples (the input needs to be held for L clock cycles). The values of K and L for the throughput and input sample rate of decimation filters in FIR Compiler v3.2.x depend on the filter architecture you select. Following are the definitions of K and L for the different filter architectures: Altera Corporation 5

Upgrading a FIR Compiler v3.1.x Design to v3.2.x Fully Serial K = N * D L = N N = Input bit width D = Decimation factor Multi-bit Serial K = N * D/M L = N/M N = Input bit width M = Number of serial units D = Decimation factor 1 The structure of the Multi-bit Serial architecture requires the input bit width (N) to be an integer multiple of the number of serial units (M). Fully Parallel K = D L = 1 D = Decimation factor Multicycle K = C * D L = C C = Clocks per output data D = Decimation factor 6 Altera Corporation

Decimation Filters For systems that require higher throughput and input data rate, Altera recommends that you use parallel or multicycle variable structures. For the exact throughput and input data rate, refer to the FIR Compiler GUI using IP Toolbench (Figure 6). Figure 6. FIR Compiler GUI With Throughput Information for Decimation Filters Altera Corporation 7

Upgrading a FIR Compiler v3.1.x Design to v3.2.x Multichannel Filters When designing a DSP system that requires multiple data streams to be filtered using the same filter coefficient set, you can time-share the same filter architecture across the different data streams to minimize the number of resources used. In the FIR Compiler, the multichannel filter architecture expects the input data stream to interleave the channels. The output data stream also is interleaved in the same manner. Figure 7 shows an example of a multichannel, single rate filter using the parallel structure. Figure 7. Multichannel Timing Diagram Single Rate Filter, Parallel Structure With Two Channels For a multichannel interpolation filter, the input for each channel is held until all phases of that channel are computed. The next channel input is then applied to the interpolation filter. Thus, for each channel in a multichannel scheme, an input is held constant until all phases are computed before the next channel's input can be applied. The expected input data stream for a multichannel interpolation filter is the same in both FIR Compiler v3.1.x and FIR Compiler v3.2.x (Figure 8). 8 Altera Corporation

Multichannel Filters Figure 8. Multichannel Interpolation Filter Timing Diagram Parallel Structure With Two Channels, Interpolation Factor = 4 For multichannel decimation filters, the FIR Compiler v3.1.0 and earlier versions expect the input data stream, which feeds into the individual polyphase decomposed filters, to be interleaved with the different channels. The polyphase inputs for each channel are spread evenly across X clock cycles. The number of clock cycles, X, is determined by the number of channels and the decimation factor. The output of the filter result is interleaved between the channels (Figure 9). Figure 9. Multichannel Decimation Filter Timing Diagram Using FIR Compiler v3.1.x Parallel Structure With Two Channels, Decimation Factor = 4 Altera Corporation 9

Upgrading a FIR Compiler v3.1.x Design to v3.2.x In the FIR Compiler v3.2.x, the output data stream is interleaved differently than in earlier versions. The individual phases for each channel are generated in consecutive order, instead of being spread out across different clock cycles. Inputs from the same channel must be applied until the FIR Compiler computes the results for a single channel. Inputs from the next channel can then be applied. This reduces the overall latency because the input phases required to calculate each output per channel are presented in consecutive order. The input phases for each channel are no longer interleaved and spread out across the separate channels. Figure 10 shows an example of a multichannel decimation filter using the parallel structure. Figure 10. Multichannel Decimation Filter Timing Diagram Using FIR Compiler v3.2.x Parallel Structure With Two Channels, Decimation Factor = 4 If your design uses the multichannel decimation filter, and you are upgrading from FIR Compiler v3.1.x to FIR Compiler v3.2.x, you must change the control logic that manages the input data streams from the different channels feeding into the decimation filter. 10 Altera Corporation

Conclusion Conclusion The implementation of multirate filters in FIR Compiler v3.2.x optimizes for area and affects the throughput and input sample rate of both interpolation and decimation filters. You may have to choose a different filter architecture to retain the same throughput as FIR Compiler v3.1.x or earlier. For further optimization, the FIR Compiler v3.2.x implements the polyphase decomposed filters using a multichannel, multi-coefficient set structure with an appropriate wrapper. This alters the input data sequence for multichannel decimation filters. You must rearrange the polyphase inputs to be sequential for each channel in FIR Compiler v3.2.x, rather than interleaving them between the channels as in FIR Compiler v3.1.x. 101 Innovation Drive San Jose, CA 95134 (408) 544-7000 www.altera.com Applications Hotline: (800) 800-EPLD Literature Services: literature@altera.com Copyright 2005 Altera Corporation. All rights reserved. Altera, The Programmable Solutions Company, the stylized Altera logo, specific device designations, and all other words and logos that are identified as trademarks and/or service marks are, unless noted otherwise, the trademarks and service marks of Altera Corporation in the U.S. and other countries. All other product or service names are the property of their respective holders. Altera products are protected under numerous U.S. and foreign patents and pending applications, maskwork rights, and copyrights. Altera warrants performance of its semiconductor products to current specifications in accordance with Altera's standard warranty, but reserves the right to make changes to any products and services at any time without notice. Altera assumes no responsibility or liability arising out of the application or use of any information, product, or service described herein except as expressly agreed to in writing by Altera Corporation. Altera customers are advised to obtain the latest version of device specifications before relying on any published information and before placing orders for products or services. Altera Corporation 11