Altera RAM-Based Shift Register User Manual

0 (0)

RAM-Based Shift Register (ALTSHIFT_TAPS)

Megafunction

User Guide

101 Innovation Drive San Jose, CA 95134 www.altera.com

UG-01009-2.2

Document last updated for Altera Complete Design Suite version:

13.0

 

Document publication date:

May 2013

Subscribe

© 2013 Altera Corporation. All rights reserved. ALTERA, ARRIA, CYCLONE, HARDCOPY, MAX, MEGACORE, NIOS, QUARTUS and STRATIX are Reg. U.S. Pat. & Tm. Off. and/or trademarks of Altera Corporation in the U.S. and other countries. All other trademarks and service marks are the property of their respective holders as described at www.altera.com/common/legal.html. 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. 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.

RAM-Based Shift Register (ALTSHIFT_TAPS) Megafunction User Guide

May 2013 Altera Corporation

1. About this Megafunction

Device Family Support

The ALTSHIFT_TAPS megafunction supports the following target Altera® device families:

Arria® V

Arria GX

Cyclone® V

Cyclone III

Cyclone II

Cyclone

HardCopy® II

HardCopy Stratix®

Stratix V

Stratix IV

Stratix III

Stratix II

Stratix II GX

Stratix

Stratix GX

ACEX® 1K

APEX™ II

APEX 20KC

APEX 20KE

FLEX® 10K

FLEX 10KA

FLEX 10KE

Introduction

As design complexities increase, the use of vendor-specific IP blocks has become a common design methodology. Altera provides parameterizable megafunctions that are optimized for Altera device architectures. Using megafunctions instead of coding your own logic saves valuable design time. Additionally, the Altera-provided functions may offer more efficient logic synthesis and device implementation. You can scale the megafunction’s size by simply setting parameters.

May 2013 Altera Corporation

RAM-Based Shift Register (ALTSHIFT_TAPS) Megafunction User Guide

1–2

Chapter 1: About this Megafunction

 

Features

 

 

Altera provides a RAM-based shift register megafunction called ALTSHIFT_TAPS that contains additional features not found in a conventional shift register. Traditional shift registers implemented with standard flip-flops use many logic cells for large shift registers. The ALTSHIFT_TAPS megafunction is implemented in the device memory blocks, saving logic cells and routing resources. In a complicated design such as a digital signal processing (DSP) application that requires local data storage, it is more efficient to implement an ALTSHIFT_TAPS megafunction as the shift register.

The ALTSHIFT_TAPS megafunction is a parameterized shift register with taps. The taps provide data outputs from the shift register at certain points in the shift register chain. You can add additional logic that uses the output from these taps for further applications. The megafunction’s output tap feature is useful for applications such as the Linear Feedback Shift Register (LFSR) and Finite Impulse Response (FIR) filters.

Features

The ALTSHIFT_TAPS megafunction implements a shift register with taps and offers additional features, which include:

Selectable RAM block type

A wide range of widths for the shiftin and shiftout ports

Support for output taps at certain points in the shift register chain

Selectable distance between taps

General Description

The ALTSHIFT_TAPS megafunction can be easily configured and built through the Shift Register (RAM-based) MegaWizard® Plug-In Manager in the Quartus® II software.

Chapter 2, Getting Started guides you through each page of the MegaWizard Plug-In Manager with explanations for each of the options.

The ALTSHIFT_TAPS megafunction is implemented in the embedded memory block of all supported device families with simple dual-port RAM. You can select the RAM block type according to the capacity you require. The capacity that is represented by the width and the depth of the memory block depends on the TAP_DISTANCE, NUMBER_OF_TAPS, and WIDTH parameters of the ALTSHIFT_TAPS megafunction.

fFor the features and capacities of the typical memory block, refer to the chapter of your device handbook that contains information about TriMatrix embedded memory blocks.

The ALTSHIFT_TAPS megafunction supports single-bit and multiple-bit data shifting at one clock cycle, depending on the width of the shiftin and shiftout ports. For example, if the shiftin and shiftout ports are single-bit data, only one bit is shifted per clock cycle. If the shiftin and shiftout ports are multiple-bit data, such as oneword data (8-bit), the whole word is shifted per clock cycle.

The megafunction also supports output taps at certain points in the shift register chain, but the tap points must be evenly spaced. The space between taps is set by the TAP_DISTANCE parameter in the MegaWizard Plug-in Manager.

RAM-Based Shift Register (ALTSHIFT_TAPS) Megafunction User Guide

May 2013 Altera Corporation

Chapter 1: About this Megafunction

1–3

General Description

fFor more information about setting the option for the distance between taps in the MegaWizard Plug-in Manager, refer to Chapter 2, Getting Started. For information about the TAP_DISTANCE parameter, refer to Chapter 3, Specifications.

Figure (a) in Figure 1–1 shows a traditional 12-word-depth shift register. Figure (b) shows how the data in the shift register chain are being tapped at even spaces (1st, 4th, 7th, and 10th) at the output taps of the ALTSHIFT_TAPS megafunction.

Figure 1–1. Tapping Data at Certain Points of the Shift Register Chain (Note 1), (2), (3)

Notes for Figure 1–1

(1)The ALTSHIFT_TAPS megafunction depicted here has TAP_DISTANCE = 3 and NUMBER_OF_TAPS = 4.

(2)The tapped data is output to taps[31..0]. Note that taps[31..0] is a 32-bit output because it taps four words at one time. The first word from the MSB of the taps (taps[31..24]) represents the first data and is followed by the 4th data, 7th data, and 10th data.

(3)The shiftout[7..0] word is equivalent to taps[31..24].

May 2013 Altera Corporation

RAM-Based Shift Register (ALTSHIFT_TAPS) Megafunction User Guide

1–4

Chapter 1: About this Megafunction

 

General Description

 

 

RAM-Based Shift Register (ALTSHIFT_TAPS) Megafunction User Guide

May 2013 Altera Corporation

2. Getting Started

System Requirements

The instructions in this section require the following software:

The Quartus® II software version 8.0 or later

For operating system support information, refer to www.altera.com/support/software/os_support/oss-index.html

MegaWizard Plug-In Manager Customization

The MegaWizard® Plug-In Manager creates or modifies design files that contain custom megafunction variations, which can then be instantiated in a design file. The MegaWizard Plug-In Manager provides a wizard that allows you to specify options for the ALTSHIFT_TAPS megafunction features in your design.

Start the MegaWizard Plug-In Manager in one of the following ways:

On the Tools menu, click MegaWizard Plug-In Manager.

In the Block Editor, on the Edit menu, click Insert Symbol as Block, or right-click in the Block Editor, point to Insert, and click Symbol as Block. In the Symbol window, click MegaWizard Plug-In Manager.

Start the stand-alone version of the MegaWizard Plug-In Manager by typing the following command at the command prompt:

qmegawizr

MegaWizard Plug-In Manager Page Descriptions

This section provides descriptions for the options available on the individual pages of the Shift Register (RAM-based) MegaWizard plug-in.

On page 1 of the MegaWizard Plug-In Manager, you can select Create a new custom megafunction variation, Edit an existing custom megafunction variation, or Copy an existing custom megafunction variation (Figure 2–1).

Figure 2–1. MegaWizard Plug-In Manager [page 1]

May 2013 Altera Corporation

RAM-Based Shift Register (ALTSHIFT_TAPS) Megafunction User Guide

Altera RAM-Based Shift Register User Manual

2–2

Chapter 2: Getting Started

 

MegaWizard Plug-In Manager Page Descriptions

 

 

On page 2a of the MegaWizard Plug-In Manager, specify the megafunction, device family to use, type of output file to create, and the name of the output file (Figure 2–2). Choose AHDL (.tdf), VHDL (.vhd), or Verilog HDL (.v) as the output file type.

Figure 2–2. MegaWizard Plug-In Manager [page 2a]

RAM-Based Shift Register (ALTSHIFT_TAPS) Megafunction User Guide

May 2013 Altera Corporation

Loading...
+ 18 hidden pages