58
101 Innovation Drive San Jose, CA 95134 www.altera.com UG-01072-5.0 ユーザーガイド FIR コンパイラ II MegaCore ファンクション 彩紺肴坂策宰刷采察沙崎策 : 彩紺肴坂策宰刷妻察宰 : 11.1 2011 11 Subscribe

FIRコンパイラII MegaCore ファンクション ユー …...2011年11月 Altera Corporation FIRコンパイラII MegaCore ファンクション ユーザーガイド 1.このMegaCoreファンクションに

  • Upload
    others

  • View
    6

  • Download
    0

Embed Size (px)

Citation preview

Page 1: FIRコンパイラII MegaCore ファンクション ユー …...2011年11月 Altera Corporation FIRコンパイラII MegaCore ファンクション ユーザーガイド 1.このMegaCoreファンクションに

101 Innovation DriveSan Jose, CA 95134www.altera.com

UG-01072-5.0

ユーザーガイドFIR コンパイラ II MegaCore ファンクション

ドキュメント・バージョン :ドキュメント・デート :

11.12011 年 11 月

Subscribe

Page 2: FIRコンパイラII MegaCore ファンクション ユー …...2011年11月 Altera Corporation FIRコンパイラII MegaCore ファンクション ユーザーガイド 1.このMegaCoreファンクションに

© 2011 Altera Corporation. All rights reserved. ALTERA, ARRIA, CYCLONE, HARDCOPY, MAX, MEGACORE, NIOS, QUARTUS and STRATIX words and logosare trademarks of Altera Corporation and registered in the U.S. Patent and Trademark Office and in other countries. All other words and logos identified astrademarks or service marks are the property of their respective holders as described at www.altera.com/common/legal.html. Altera warrants performance of itssemiconductor products to current specifications in accordance with Altera's standard warranty, but reserves the right to make changes to any products andservices at any time without notice. Altera assumes no responsibility or liability arising out of the application or use of any information, product, or servicedescribed herein except as expressly agreed to in writing by Altera. Altera customers are advised to obtain the latest version of device specifications before relyingon any published information and before placing orders for products or services.

2011 年 11 月 Altera Corporation FIR コンパイラ II MegaCore ファンクションユーザーガイド

ISO 9001:2008 Registered

Page 3: FIRコンパイラII MegaCore ファンクション ユー …...2011年11月 Altera Corporation FIRコンパイラII MegaCore ファンクション ユーザーガイド 1.このMegaCoreファンクションに

2011 年 11 月 Altera Corporation

目次

第1 章 . この MegaCore ファンクションについて機能 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1‒2デバイス・ファミリ・サポート . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1‒2MegaCore 検証 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1‒3パフォーマンスおよびリソース使用率 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1‒4リリース情報 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1‒13

第 2 章 . 使用法インストールおよびライセンス . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2‒1MegaWizard Plug-In Manager Design Flow . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2‒2パラメータの指定 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2‒2デザインのシミュレーション . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2‒4ModelSim-Altera ソフトウェアのシミュレーション . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2‒4MATLAB のシミュレーション . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2‒4NativeLink を使用したサード・パーティ・シミュレーション・ツールのシミュレーション . 2‒4

デザインのコンパイルおよびデバイスのプログラム . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2‒5

第 3 章 . パラメータの設定Filter Specification ページ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3‒1ファイルから係数のロード . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3‒2

Input and Output Options ページ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3‒3符号付き小数バイナリ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3‒4MSB と LSB の切捨て、 飽和処理、および丸め処理 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3‒4

Implementation Options ページ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3‒5メモリおよび乗算器のトレードオフ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3‒6

第 4 章 . 機能の説明アーキテクチャ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4‒1インタフェース . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4‒1Avalon-ST シンクおよびソース・インタフェース . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4‒2Avalon-ST シンク・インタフェース . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4‒2

Avalon-ST ソース・インタフェース . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4‒5クロックおよびリセット・インタフェース . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4‒6

時分割多重化 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4‒7マルチチャネル動作 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4‒8ベクトル化入力 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4‒8チャネル化 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4‒9チャネル入力 / 出力のフォーマット . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4‒12例̶3 ワイヤ上に 8 チャネル . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4‒12例̶4 ワイヤ上に 4 チャネル s . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4‒12例̶15 有効なサイクルと 17 無効なサイクルによる 15 チャネル . . . . . . . . . . . . . . . . . . . . . . . 4‒13例̶11 有効なサイクルと 9無効なサイクルによる 22 チャネル. . . . . . . . . . . . . . . . . . . . . . . . . 4‒15例̶スーパー・サンプル・レート . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4‒17

複数の係数バンク . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4‒18係数のリロード . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4‒19信号 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4‒22

FIR コンパイラ II MegaCore ファンクションユーザーガイド

Page 4: FIRコンパイラII MegaCore ファンクション ユー …...2011年11月 Altera Corporation FIRコンパイラII MegaCore ファンクション ユーザーガイド 1.このMegaCoreファンクションに

iv 目次

追加情報改訂履歴 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Info‒1アルテラへのお問い合わせ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Info‒1表記規則 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Info‒2

2011 年 11 月 Altera Corporation FIR コンパイラ II MegaCore ファンクションユーザーガイド

Page 5: FIRコンパイラII MegaCore ファンクション ユー …...2011年11月 Altera Corporation FIRコンパイラII MegaCore ファンクション ユーザーガイド 1.このMegaCoreファンクションに

2011 年 11 月 Altera Corporation

1. このMegaCore ファンクションについて

本書では、Altera® FIR コンパイラ II の IP (Intellectual Property) コアについて説明しま

す。FIR コンパイラ II MegaCore® ファンクションは、完全に統合された有限インパル

ス応答(FIR)フィルタ開発環境を提供し、アルテラの FPGA デバイスに 適化され

ます。FIR コンパイラ II MegaCore® ファンクションは、対話的に操作する Parameter Editor を備えており、カスタム FIR フィルタを簡単に作成できます。Parameter Editorは Verilog HDL および VHDL シミュレータと共に IP 機能シミュレーション・モデル・

ファイルを出力します。

Parameter Editor を使用可能であり、シングル・レート、デシメーション、補間、お

よびフラクショナル・レート・フィルタのさまざまなフィルタ・タイプを実装でき

ます。

多くのデジタル・システムでは、不要なノイズを除去するか、スペクトル整形を提

供するか、または信号の検出か解析を実行するために信号フィルタリングを使用し

ます。FIR フィルタおよび無限インパルス応答(IIR)フィルタはこれらの機能を提供

します。標準的なフィルタ・アプリケーションには信号プリコンディショニング、

バンド選択、およびロー・パス・フィルタリングが含まれます。

図 1–1 に、加重されたタップド・ディレイ・ラインとしてコンフィギュレーション

された FIR フィルタを示します。

フィルタのデザイン過程で、指定された周波数応答に合致する係数を決定します。

この係数によってフィルタの応答が決まります。係数の値を変更することまたは係

数を追加することにより、フィルタを通過する信号の周波数が変更できます。

図1‒1. 基本的な FIR フィルタ

xin

yout

Z -1 Z -1 Z -1 Z -1 TappedDelay Line

CoefficientMultipliers

Adder Tree

C01

C02

C11

C12

C21

C22

C31

C32CoefficientBanks

FIR コンパイラ II MegaCore ファンクションユーザーガイド

Page 6: FIRコンパイラII MegaCore ファンクション ユー …...2011年11月 Altera Corporation FIRコンパイラII MegaCore ファンクション ユーザーガイド 1.このMegaCoreファンクションに

1‒2 第 1 章 : この MegaCore ファンクションについて機能

機能アルテラの FIR コンパイラ II MegaCore ファンクションは有限インパルス応答 (FIR) フィルタを実装して、以下のような機能もサポートしています。

■ 次のハードウェアの 適化を介して、 大効率設計を利用します。

■ 補間

■ デシメーション

■ 対称性

■ デシメーション・ハフ・バンド

■ タイム・シェアリング

■ Avalon® Streaming(Avalon-ST)インタフェースを使用する簡単なシステムの統合。

■ メモリおよび乗算器のトレードオフは、ロジック・エレメント(LE)とブロッ

ク・メモリ(M512、M4K、M9K、または M144K)の間の実装をバランスします。

■ ランタイムの係数リロード機能と、複数の係数バンクをサポート。

■ 切り捨て処理、飽和処理および丸め処理を適用したユーザ選択可能な出力精度。

デバイス・ファミリのサポートMegaCore ファンクションは、ターゲットのアルテラ・デバイス・ファミリに対し、

終サポートあるいは暫定サポートを提供しています。

■ FPGA デバイス・ファミリ

■ 終サポートとは、コアがこのデバイス・ファミリの 終的なタイミング・

モデルで検証されていることを意味します。コアはデバイス・ファミリのす

べての機能要件およびタイミング要件を満たしており、生産デザインで使用

することができます。

■ 暫定サポートとは、コアがこのデバイス・ファミリの暫定タイミング・モデ

ルで検証されていることを意味します。コアはデバイス・ファミリの機能要

件はすべて満たしていますが、タイミング要件については評価中です。生産

デザインでの使用は注意が必要です。

■ HardCopy デバイス・ファミリ

■ HardCopy コンパイルとは、コアが HardCopy デバイス・ファミリの 終的なタ

イミング・モデルで検証されていることを意味します。コアはデバイス・

ファミリのすべての機能要件およびタイミング要件を満たしており、生産デ

ザインで使用することができます。

■ HardCopy コンパニオンとは、コアが HardCopy コンパニオン・デバイスの暫定

タイミング・モデルで検証されていることを意味します。 コアはデバイス・

ファミリの機能要件はすべて満たしていますが、タイミング要件については

評価中です。生産デザインでの使用は注意が必要です。

FIR コンパイラ II MegaCore ファンクション 2011 年 11 月 Altera Corporationユーザーガイド

Page 7: FIRコンパイラII MegaCore ファンクション ユー …...2011年11月 Altera Corporation FIRコンパイラII MegaCore ファンクション ユーザーガイド 1.このMegaCoreファンクションに

第 1 章 : このMegaCore ファンクションについて 1‒3MegaCore 検証

表 1–1 に、FIR コンパイラ II MegaCore ファンクションによる各アルテラ・デバイス・

ファミリへのサポートのレベルを示します。

MegaCore 検証FIR コンパイラ II MegaCore ファンクションの更新バージョンをリリースする前に、

アルテラは品質や正確性を検証するための包括的な回帰テストを実施します。FIR コ

ンパイラ II MegaCore ファンクションのカスタム・バリエーションは、さまざまなパ

ラメータのオプションを行使するために生成され、結果として得られるシミュレー

ション・モデルは、マスタのシミュレーション・モデルに対して検証結果を徹底的

にシミュレートされます。

表1‒1. サポートされるデバイス・ファミリ

デバイス・ファミリ サポート Arria® GX 終的

Arria II GX 終的

Arria II GZ 終的

Arria V Altera IP の 新情報を参照してください。

Cyclone® II 終的

Cyclone III 終的

Cyclone III LS 終的

Cyclone IV GX 終的

Cyclone V Altera IP の 新情報を参照してください。

HardCopy® II HardCopy コンパイル HardCopy III HardCopy コンパイル

HardCopy IV HardCopy コンパイル

Stratix®終的

Stratix II 終的

Stratix II GX 終的

Stratix III 終的

Stratix IV 終的

Stratix IV GT 終的

Stratix IV GX 終的

Stratix V Altera IP の 新情報を参照してください。

その他のデバイス・ファミリ サポートなし (1)

表 1‒1の注:(1) HardCopy Stratixデバイスを使用する場合、Stratix ファミリを選択して、

<device>_HARDCOPY_FPGA_PROTOTYPEで使用可能なデバイスを参照します。

2011 年 11 月 Altera Corporation FIR コンパイラ II MegaCore ファンクションユーザーガイド

Page 8: FIRコンパイラII MegaCore ファンクション ユー …...2011年11月 Altera Corporation FIRコンパイラII MegaCore ファンクション ユーザーガイド 1.このMegaCoreファンクションに

1‒4 第 1 章 : この MegaCore ファンクションについてパフォーマンスおよびリソース使用率

パフォーマンスおよびリソース使用率ここでは、 Quartus II ソフトウェアの現行バージョンを使用し、FIR コンパイラ II MegaCore ファンクションの標準的な期待パフォーマンスを示します。

表 1–2 に、パフォーマンスおよびリソース使用率データを生成するために使用され

る FIR フィルタのパラメータの設定を示します。バックプレッシャ・サポートは、

FIR フィルタでもディセーブルされます。

表1‒2. FIR フィルタの入力パラメータ化のサンプル ( その1 ) ( 注 1)

タイプ 補間 デシメーション

L- 番目のバンド

チャネル数

クロック・レート

入力サンプル・レート(MSPS)

シングル・チャネル、シングル・レート

1 1 すべてのタップ

1 300 300

シングル・チャネル、デシメーション

1 4 すべてのタップ

1 300 300

シングル・チャネル、補間 4 1 すべてのタップ

1 320 80

シングル・チャネル、フラクショナル・レート

3 2 すべてのタップ

1 320 80

シングル・チャネル、シングル・レート、ハーフ・バンド

1 1 ハーフ・バンド

1 300 300

シングル・チャネル、デシメーション、ハーフ・バンド

1 2 ハーフ・バンド

1 300 300

シングル・チャネル、 補間、ハーフ・バンド

2 1 ハーフ・バンド

1 300 150

シングル・チャネル、フラクショナル・レート、ハーフ・バンド

3 2 ハーフ・バンド

1 320 80

シングル・チャネル、シングル・レート、スーパー・サンプル

1 1 すべてのタップ

1 300 600

シングル・チャネル、補間、スーパー・サンプル

1 4 すべてのタップ

1 300 600

シングル・チャネル、シングル・レート、複数の係数バンク

1 1 すべてのタップ

1 300 600

マルチ・チャネル、シングル・ワイヤ、シングル・レート

1 1 すべてのタップ

8 300 300

マルチ・チャネル、シングル・ワイヤ、デシメーション

1 4 すべてのタップ

8 300 300

マルチ・チャネル、シングル・ワイヤ、補間

4 1 すべてのタップ

8 320 80

マルチ・チャネル、シングル・ワイヤ、フラクショナル・レート

3 2 すべてのタップ

8 320 80

マルチ・チャネル、シングル・ワイヤ、デシメーション、複数の係数バンク

1 4 すべてのタップ

8 300 300

マルチ・チャネル、マルチワイヤ、シングル・レート

1 1 すべてのタップ

8 320 80

FIR コンパイラ II MegaCore ファンクション 2011 年 11 月 Altera Corporationユーザーガイド

Page 9: FIRコンパイラII MegaCore ファンクション ユー …...2011年11月 Altera Corporation FIRコンパイラII MegaCore ファンクション ユーザーガイド 1.このMegaCoreファンクションに

第 1 章 : このMegaCore ファンクションについて 1‒5パフォーマンスおよびリソース使用率

表 1–3 に、Cyclone III デバイス・ファミリの FIR フィルタのリソース使用率とパ

フォーマンスの評価を示します。 FIR フィルタは、表 1–2 にある設定を使用してコン

フィギュレーションされます。

マルチ・チャネル、マルチワイヤ、デシメーション

1 4 すべてのタップ

8 320 320

マルチ・チャネル、マルチワイヤ、補間

4 1 すべてのタップ

8 320 80

マルチ・チャネル、マルチワイヤ、 フラクショナル・レート

3 2 すべてのタップ

8 320 80

マルチ・チャネル、マルチワイヤ、フラクショナル・レート、出力オプション

3 2 すべてのタップ

8 320 80

マルチ・チャネル、マルチワイヤ、補間、複数の係数バンク

4 1 すべてのタップ

8 320 80

表1‒2の注:(1) スーパー・サンプル・モードは、シングル・レートと補間フィルタでのみサポートされます。

表1‒2. FIR フィルタの入力パラメータ化のサンプル ( その2 ) ( 注 1)

タイプ 補間 デシメーション

L- 番目のバンド

チャネル数

クロック・レート

入力サンプル・レート(MSPS)

表 1‒3. Cyclone III デバイスの FIR コンパイラ II パフォーマンス̶EP3C80F780C6 デバイス ( その1 )

組み合わせのルックアップ・テーブル(LUT)数

ロジック・レジスタ数

メモリ乗算器 (9 × 9) 制限される

fMAX (MHz)ビット M9K

シングル・チャネル、シングル・レート

1,489 6,514 0 0 24 250

シングル・チャネル、デシメーション

414 1,868 340 2 10 250

シングル・チャネル、補間

644 2,997 102 3 18 250

シングル・チャネル、フラクショナル・レート

588 2,224 544 4 10 250

シングル・チャネル、シングル・レート、ハーフ・バンド

723 3,811 0 0 16 250

シングル・チャネル、デシメーション、ハーフ・バンド

444 1,761 935 4 10 250

シングル・チャネル、 補間、ハーフ・バンド

484 2,240 289 3 10 250

シングル・チャネル、フラクショナル・レート、ハーフ・バンド

361 1,046 476 5 6 250

シングル・チャネル、シングル・レート、スーパー・サンプル

2,930 12,082 0 0 48 250

シングル・チャネル、補間、スーパー・サンプル

2011 年 11 月 Altera Corporation FIR コンパイラ II MegaCore ファンクションユーザーガイド

Page 10: FIRコンパイラII MegaCore ファンクション ユー …...2011年11月 Altera Corporation FIRコンパイラII MegaCore ファンクション ユーザーガイド 1.このMegaCoreファンクションに

1‒6 第 1 章 : この MegaCore ファンクションについてパフォーマンスおよびリソース使用率

3,322 12,450 0 0 76 250

シングル・チャネル、シングル・レート、複数の係数バンク

1,301 4,654 0 0 36 250

マルチ・チャネル、シングル・ワイヤ、シングル・レート

1,571 12,384 0 0 24 250

マルチ・チャネル、シングル・ワイヤ、デシメーション

497 2,961 4,794 5 10 250

マルチ・チャネル、シングル・ワイヤ、補間

699 2,362 1,904 8 18 250

マルチ・チャネル、シングル・ワイヤ、フラクショナル・レート

854 3,218 9,962 7 16 250

マルチ・チャネル、シングル・ワイヤ、デシメーション、複数の係数バンク

566 3,004 4,858 6 10 250

マルチ・チャネル、マルチワイヤ、シングル・レート

3,137 19,842 0 0 48 250

マルチ・チャネル、マルチワイヤ、デシメーション

3,670 16,406 2,856 16 80 250

マルチ・チャネル、マルチワイヤ、補間

4,680 27,320 0 0 76 245.1

マルチ・チャネル、マルチワイヤ、 フラクショナル・レート

2,412 12,478 2,176 8 64 250

マルチ・チャネル、マルチワイヤ、フラクショナル・レート、出力オプション

2,691 12,605 2,176 8 64 250

マルチ・チャネル、マルチワイヤ、補間、複数の係数バンク

4,008 18,670 0 0 108 250

表1‒3. Cyclone III デバイスの FIR コンパイラ II パフォーマンス̶EP3C80F780C6 デバイス ( その2 )

組み合わせのルックアップ・テーブル(LUT)数

ロジック・レジスタ数

メモリ乗算器 (9 × 9) 制限される

fMAX (MHz)ビット M9K

FIR コンパイラ II MegaCore ファンクション 2011 年 11 月 Altera Corporationユーザーガイド

Page 11: FIRコンパイラII MegaCore ファンクション ユー …...2011年11月 Altera Corporation FIRコンパイラII MegaCore ファンクション ユーザーガイド 1.このMegaCoreファンクションに

第 1 章 : このMegaCore ファンクションについて 1‒7パフォーマンスおよびリソース使用率

表 1–4 に、 Arria II GX デバイス・ファミリの FIR フィルタのリソース使用率とパ

フォーマンスの評価を示します。 FIR フィルタは、表 1–2 にある設定を使用してコン

フィギュレーションされます。

表1‒4. Arria II GX デバイスの FIR コンパイラ II パフォーマンス̶EP2AGX65DF25C4 デバイス ( その1 )

組み合わせのルックアップ・テーブル(LUT)数

ロジック・レジスタ数

メモリブロック・ビット

(M9K/M144K)

MLAB ビット

乗算器(18 × 18)

制限される fMAX (MHz)ビット

アダプティブ・ルックアップ・テーブル(ALUT)数

M9K M144K

シングル・チャネル、シングル・レート

459 1,495 0 0 0 0 0 0 20 260.01

シングル・チャネル、デシメーション

251 887 782 187 0 0 0 782 6 260.01

シングル・チャネル、補間

127 894 527 187 0 0 0 527 10 260.01

シングル・チャネル、フラクショナル・レート

294 919 748 170 0 0 0 748 6 260.01

シングル・チャネル、シングル・レート、ハーフ・バンド

242 1,120 0 0 0 0 0 0 10 260.01

シングル・チャネル、デシメーション、ハーフ・バンド

286 906 1,275 187 0 0 0 1,275 6 260.01

シングル・チャネル、 補間、ハーフ・バンド

290 1,037 833 221 0 0 0 833 6 260.01

シングル・チャネル、フラクショナル・レート、ハーフ・バンド

144 496 391 85 0 0 0 391 4 260.01

シングル・チャネル、シングル・レート、スーパー・サンプル

918 2,336 68 34 0 0 0 68 40 260.01

シングル・チャネル、補間、スーパー・サンプル

1,084 2,679 0 0 0 0 0 0 0 260.01

シングル・チャネル、シングル・レート、複数の係数バンク

507 1,935 0 0 0 0 0 0 20 260.01

マルチ・チャネル、シングル・ワイヤ、シングル・レート

493 2,222 4,284 612 0 0 0 4,284 20 260.01

マルチ・チャネル、シングル・ワイヤ、デシメーション

331 1,097 6,145 228 0 0 0 6,145 6 260.01

マルチ・チャネル、シングル・ワイヤ、補間

170 979 4,930 187 0 0 0 4,930 10 260.01

マルチ・チャネル、シングル・ワイヤ、フラクショナル・レート

597 1,843 10,735 305 0 0 0 10,735 10 260.01

マルチ・チャネル、シングル・ワイヤ、デシメーション、複数の係数バンク

405 1,134 6,209 230 0 0 0 6,209 6 260.01

2011 年 11 月 Altera Corporation FIR コンパイラ II MegaCore ファンクションユーザーガイド

Page 12: FIRコンパイラII MegaCore ファンクション ユー …...2011年11月 Altera Corporation FIRコンパイラII MegaCore ファンクション ユーザーガイド 1.このMegaCoreファンクションに

1‒8 第 1 章 : この MegaCore ファンクションについてパフォーマンスおよびリソース使用率

マルチ・チャネル、マルチワイヤ、シングル・レート

968 4,369 3,672 1,224 0 0 0 3,672 40 260.01

マルチ・チャネル、マルチワイヤ、デシメーション

2,058 7,018 6,460 1,496 0 0 0 6,460 48 260.01

マルチ・チャネル、マルチワイヤ、 フラクショナル・レート

1,652 7,584 4,054 1,466 0 0 0 4,054 52 260.01

マルチ・チャネル、マルチワイヤ、 フラクショナル・レート

1,175 5,027 6,333 914 0 0 0 6,333 32 260.01

マルチ・チャネル、マルチワイヤ、フラクショナル・レート、出力オプション

1,454 5,154 6,333 914 0 0 0 6,333 32 260.01

マルチ・チャネル、マルチワイヤ、補間、複数の係数バンク

1,435 8,229 4,058 1,468 0 — 0 4,058 64 260.01

表1‒4. Arria II GX デバイスの FIR コンパイラ II パフォーマンス̶EP2AGX65DF25C4 デバイス ( その2 )

組み合わせのルックアップ・テーブル(LUT)数

ロジック・レジスタ数

メモリブロック・ビット

(M9K/M144K)

MLAB ビット

乗算器(18 × 18)

制限される fMAX (MHz)ビット

アダプティブ・ルックアップ・テーブル(ALUT)数

M9K M144K

FIR コンパイラ II MegaCore ファンクション 2011 年 11 月 Altera Corporationユーザーガイド

Page 13: FIRコンパイラII MegaCore ファンクション ユー …...2011年11月 Altera Corporation FIRコンパイラII MegaCore ファンクション ユーザーガイド 1.このMegaCoreファンクションに

第 1 章 : このMegaCore ファンクションについて 1‒9パフォーマンスおよびリソース使用率

表 1–5 に、 Stratix III デバイス・ファミリの FIR フィルタのリソース使用率とパフォー

マンスの評価を示します。 FIR フィルタは、表 1–2 にある設定を使用してコンフィ

ギュレーションされます。

表1‒5. Stratix III デバイスの FIR コンパイラ II パフォーマンス̶EP3SE50F780C2 デバイス ( その1 )

組み合わせのルックアップ・テーブル(LUT)数

ロジック・レジスタ数

メモリ ブロック・ビット

(M9K/M144K)

MLAB ビット

乗算器(18 × 18)

制限される fMAX (MHz)ビット ALUTs M9K M144K

シングル・チャネル、シングル・レート

457 1,451 0 0 0 0 0 0 20 467.95

シングル・チャネル、デシメーション

246 842 782 187 0 0 0 782 6 431.59

シングル・チャネル、補間

123 834 527 187 0 0 0 527 10 470.15

シングル・チャネル、フラクショナル・レート

290 866 748 170 0 0 0 748 6 451.26

シングル・チャネル、シングル・レート、ハーフ・バンド

240 1,077 0 0 0 0 0 0 10 452.69

シングル・チャネル、デシメーション、ハーフ・バンド

281 773 1,275 153 2 0 0 493 6 440.33

シングル・チャネル、 補間、ハーフ・バンド

285 991 816 221 0 0 0 816 6 454.55

シングル・チャネル、フラクショナル・レート、ハーフ・バンド

141 454 391 85 0 0 0 391 4 490.3

シングル・チャネル、シングル・レート、スーパー・サンプル

914 2,249 68 34 0 0 0 68 40 446.03

シングル・チャネル、補間、スーパー・サンプル

1,070 2,341 0 0 0 0 0 0 52 453.51

シングル・チャネル、シングル・レート、複数の係数バンク

499 1,881 0 0 0 0 0 0 20 456.41

マルチ・チャネル、シングル・ワイヤ、シングル・レート

485 2,152 4,284 612 0 0 0 4,284 20 421.05

マルチ・チャネル、シングル・ワイヤ、デシメーション

335 800 6,111 126 5 0 0 1,317 6 446.43

マルチ・チャネル、シングル・ワイヤ、補間

152 881 1,411 187 0 0 0 1,411 10 469.92

マルチ・チャネル、シングル・ワイヤ、フラクショナル・レート

585 1,232 7,553 134 8 0 0 753 10 465.33

マルチ・チャネル、シングル・ワイヤ、デシメーション、複数の係数バンク

407 823 6,175 126 6 0 0 1,317 6 444.64

マルチ・チャネル、マルチワイヤ、シングル・レート

952 4,230 3,672 1,224 0 0 0 3,672 40 406.01

2011 年 11 月 Altera Corporation FIR コンパイラ II MegaCore ファンクションユーザーガイド

Page 14: FIRコンパイラII MegaCore ファンクション ユー …...2011年11月 Altera Corporation FIRコンパイラII MegaCore ファンクション ユーザーガイド 1.このMegaCoreファンクションに

1‒10 第 1 章 : この MegaCore ファンクションについてパフォーマンスおよびリソース使用率

表 1–6 に、 Stratix IV デバイス・ファミリの FIR フィルタのリソース使用率とパフォー

マンスの評価を示します。 FIR フィルタは、表 1–2 にある設定を使用してコンフィ

ギュレーションされます。

マルチ・チャネル、マルチワイヤ、デシメーション

2,025 6,594 6,460 1,496 0 0 0 6,460 48 399.68

マルチ・チャネル、マルチワイヤ、補間

1,626 7,148 4,054 1,466 0 0 0 4,054 52 423.55

マルチ・チャネル、マルチワイヤ、 フラクショナル・レート

1,119 4,703 6,333 914 0 0 0 6,333 32 418.24

マルチ・チャネル、マルチワイヤ、フラクショナル・レート、出力オプション

1,399 4,830 6,333 914 0 0 0 6,333 32 385.21

マルチ・チャネル、マルチワイヤ、補間、複数の係数バンク

1,411 7,789 4,058 1,468 0 0 0 4,058 64 411.02

表1‒5. Stratix III デバイスの FIR コンパイラ II パフォーマンス̶EP3SE50F780C2 デバイス ( その2 )

組み合わせのルックアップ・テーブル(LUT)数

ロジック・レジスタ数

メモリ ブロック・ビット

(M9K/M144K)

MLAB ビット

乗算器(18 × 18)

制限される fMAX (MHz)ビット ALUTs M9K M144K

表 1‒6. Stratix IV デバイスの FIR コンパイラ II パフォーマンス̶EP4SGX70DF29C2X デバイス ( その1 )

組み合わせのルックアップ・テーブル(LUT)数

ロジック・レジスタ数

メモリ ブロック・ビット

(M9K/M144K)

MLAB ビット

乗算器(18 × 18)

制限される fMAX (MHz)ビット ALUTs M9K M144K

シングル・チャネル、シングル・レート

457 1,451 0 0 0 0 0 0 20 510.2

シングル・チャネル、デシメーション

246 842 782 187 0 0 0 782 6 481.7

シングル・チャネル、補間

123 834 527 187 0 0 0 527 10 510.2

シングル・チャネル、フラクショナル・レート

290 866 748 170 0 0 0 748 6 510.2

シングル・チャネル、シングル・レート、ハーフ・バンド

329 1,077 0 0 0 0 0 0 10 510.2

シングル・チャネル、デシメーション、ハーフ・バンド

281 861 1,275 187 0 0 0 1,275 6 510.2

シングル・チャネル、 補間、ハーフ・バンド

285 991 816 221 0 0 0 816 6 510.2

シングル・チャネル、フラクショナル・レート、ハーフ・バンド

141 454 391 85 0 0 0 391 4 510.2

シングル・チャネル、シングル・レート、スーパー・サンプル

914 2,249 68 34 0 0 0 68 40 510.2

シングル・チャネル、補間、スーパー・サンプル

FIR コンパイラ II MegaCore ファンクション 2011 年 11 月 Altera Corporationユーザーガイド

Page 15: FIRコンパイラII MegaCore ファンクション ユー …...2011年11月 Altera Corporation FIRコンパイラII MegaCore ファンクション ユーザーガイド 1.このMegaCoreファンクションに

第 1 章 : このMegaCore ファンクションについて 1‒11パフォーマンスおよびリソース使用率

表 1–7 に、Stratix V デバイス・ファミリの FIR フィルタのリソース使用率とパフォー

マンスの評価を示します。 FIR フィルタは、表 1–2 にある設定を使用してコンフィ

ギュレーションされます。

1,070 2,340 0 0 0 0 0 0 52 509.68

シングル・チャネル、シングル・レート、複数の係数バンク

499 1,881 0 0 0 0 0 0 20 509.42

マルチ・チャネル、シングル・ワイヤ、シングル・レート

485 2,152 4,284 612 0 0 0 4,284 20 479.39

マルチ・チャネル、シングル・ワイヤ、デシメーション

317 1,029 6,145 228 0 0 0 6,145 6 510.2

マルチ・チャネル、シングル・ワイヤ、補間

166 919 4,930 187 0 0 0 4,930 10 510.2

マルチ・チャネル、シングル・ワイヤ、フラクショナル・レート

563 1,672 10,735 305 0 0 0 10,735 10 510.2

マルチ・チャネル、シングル・ワイヤ、デシメーション、複数の係数バンク

391 1,066 6,209 230 0 0 0 6,209 6 504.54

マルチ・チャネル、マルチワイヤ、シングル・レート

952 4,230 3,672 1,224 0 0 0 3,672 40 466.2

マルチ・チャネル、マルチワイヤ、デシメーション

2,025 6,594 6,460 1,496 0 0 0 6,460 48 457.04

マルチ・チャネル、マルチワイヤ、補間

1,626 7,148 4,054 1,466 0 0 0 4,054 52 468.38

マルチ・チャネル、マルチワイヤ、 フラクショナル・レート

1,120 4,704 6,333 914 0 0 0 6,333 32 484.26

マルチ・チャネル、マルチワイヤ、補間、複数の係数バンク

1,400 4,831 6,333 914 0 0 0 6,333 32 495.54

マルチ・チャネル、マルチワイヤ、補間、複数の係数バンク

1,411 7,789 4,058 1,468 0 0 0 4,058 64 459.14

表1‒6. Stratix IV デバイスの FIR コンパイラ II パフォーマンス̶EP4SGX70DF29C2X デバイス ( その2 )

組み合わせのルックアップ・テーブル(LUT)数

ロジック・レジスタ数

メモリ ブロック・ビット

(M9K/M144K)

MLAB ビット

乗算器(18 × 18)

制限される fMAX (MHz)ビット ALUTs M9K M144K

表 1‒7. Stratix V デバイスの FIR コンパイラ II パフォーマンス̶5SGSMD4H2F35C2 デバイス ( その1 )

組み合わせのルックアップ・テーブル(LUT)数

ロジック・レジスタ数

メモリ ブロック・ビット(M20K)

MLAB ビット

DSP ブロック

制限される fMAX (MHz)ビット ALUTs M20K

シングル・チャネル、シングル・レート

1 698 0 0 0 0 0 10 450.05

シングル・チャネル、デシメーション

93 209 782 187 0 0 782 3 450.05

2011 年 11 月 Altera Corporation FIR コンパイラ II MegaCore ファンクションユーザーガイド

Page 16: FIRコンパイラII MegaCore ファンクション ユー …...2011年11月 Altera Corporation FIRコンパイラII MegaCore ファンクション ユーザーガイド 1.このMegaCoreファンクションに

1‒12 第 1 章 : この MegaCore ファンクションについてパフォーマンスおよびリソース使用率

シングル・チャネル、補間

162 203 408 204 0 0 408 5 450.05

シングル・チャネル、フラクショナル・レート

400 720 1,156 119 0 0 1,156 3 450.05

シングル・チャネル、シングル・レート、ハーフ・バンド

7 279 272 136 0 0 272 5 450.05

シングル・チャネル、デシメーション、ハーフ・バンド

129 247 1,156 187 0 0 1,156 3 450.05

シングル・チャネル、 補間、ハーフ・バンド

133 360 748 204 0 0 748 3 450.05

シングル・チャネル、フラクショナル・レート、ハーフ・バンド

172 256 612 102 0 0 612 2 450.05

シングル・チャネル、シングル・レート、スーパー・サンプル

143 424 5,406 918 0 0 5,406 20 405.35

シングル・チャネル、補間、スーパー・サンプル

95 881 1,190 340 0 0 1,190 32 403.88

シングル・チャネル、シングル・レート、複数の係数バンク

20 770 289 17 0 0 289 10 450.05

マルチ・チャネル、シングル・ワイヤ、シングル・レート

30 147 4,284 612 0 0 4,284 10 429

マルチ・チャネル、シングル・ワイヤ、デシメーション

228 423 6,145 228 0 0 6,145 3 450.05

マルチ・チャネル、シングル・ワイヤ、補間

284 335 6,834 255 0 0 6,834 5 450.05

マルチ・チャネル、シングル・ワイヤ、フラクショナル・レート

703 1,068 10,624 308 0 0 10,624 5 450.05

マルチ・チャネル、シングル・ワイヤ、デシメーション、複数の係数バンク

415 621 6,848 231 0 0 6,848 3 450.05

マルチ・チャネル、マルチワイヤ、シングル・レート

23 225 3,672 1,224 0 0 3,672 20 450.05

マルチ・チャネル、マルチワイヤ、デシメーション

792 1,524 6,460 1,496 0 0 6,460 24 450.05

マルチ・チャネル、マルチワイヤ、補間

549 2,315 3,510 1,466 0 0 3,510 32 450.05

マルチ・チャネル、マルチワイヤ、 フラクショナル・レート

934 2,395 6,673 914 0 0 6,673 16 450.05

マルチ・チャネル、マルチワイヤ、補間、複数の係数バンク

表1‒7. Stratix V デバイスの FIR コンパイラ II パフォーマンス̶5SGSMD4H2F35C2 デバイス ( その2 )

組み合わせのルックアップ・テーブル(LUT)数

ロジック・レジスタ数

メモリ ブロック・ビット(M20K)

MLAB ビット

DSP ブロック

制限される fMAX (MHz)ビット ALUTs M20K

FIR コンパイラ II MegaCore ファンクション 2011 年 11 月 Altera Corporationユーザーガイド

Page 17: FIRコンパイラII MegaCore ファンクション ユー …...2011年11月 Altera Corporation FIRコンパイラII MegaCore ファンクション ユーザーガイド 1.このMegaCoreファンクションに

第 1 章 : このMegaCore ファンクションについて 1‒13リリース情報

リリース情報表 1–8 に、アルテラの FIR コンパイラ II MegaCore ファンクションのこのリリースに

関する情報を示します。

f このリリースについて詳しくは、「MegaCore IP Library Release Notes and Errata」を参照

してください。

アルテラは Quartus® II ソフトウェアの現行バージョンが、各 MegaCore ファンクショ

ンの前のバージョンをコンパイルできることを検証します。「MegaCore IP Library Release Notes and Errata」 は、この検証に例外がある場合に報告します。アルテラは、

1 リリースより前の MegaCore ファンクション・バージョンのコンパイルは検証しま

せん。

1,214 2,521 6,673 914 0 0 6,673 16 450.05

マルチ・チャネル、マルチワイヤ、補間、複数の係数バンク

568 2,571 3,752 1,502 0 0 3,752 32 450.05

表1‒7. Stratix V デバイスの FIR コンパイラ II パフォーマンス̶5SGSMD4H2F35C2 デバイス ( その3 )

組み合わせのルックアップ・テーブル(LUT)数

ロジック・レジスタ数

メモリ ブロック・ビット(M20K)

MLAB ビット

DSP ブロック

制限される fMAX (MHz)ビット ALUTs M20K

表 1‒8. FIR コンパイラ II MegaCore ファンクションのリリース情報

項目 説明

バージョン 11.1

リリース・デート 2011 年 11 月

製品コードIP-FIRII

IPR-FIRII (更新)

プロダクト ID 00D8

ベンダ ID 6AF7

2011 年 11 月 Altera Corporation FIR コンパイラ II MegaCore ファンクションユーザーガイド

Page 18: FIRコンパイラII MegaCore ファンクション ユー …...2011年11月 Altera Corporation FIRコンパイラII MegaCore ファンクション ユーザーガイド 1.このMegaCoreファンクションに

1‒14 第 1 章 : この MegaCore ファンクションについてリリース情報

FIR コンパイラ II MegaCore ファンクション 2011 年 11 月 Altera Corporationユーザーガイド

Page 19: FIRコンパイラII MegaCore ファンクション ユー …...2011年11月 Altera Corporation FIRコンパイラII MegaCore ファンクション ユーザーガイド 1.このMegaCoreファンクションに

2011 年 11 月 Altera Corporation

2. 使用法

この章では、アルテラの IP コアを迅速に開始するように、アルテラの IP コアのデザ

イン・フローの概要を説明します。アルテラの IP ライブラリは、Quartus II のインス

トール・プロセスの一部としてインストールされます。ライブラリから任意 ‘ のアル

テラの IP コアを選択し、パラメータ化することができます。アルテラは、様々なア

プリケーションをサポートするために IP コアをカスタマイズする可能な統合

Parameter Editor を提供します。Parameter Editor では、パラメータ値の設定とオプショ

ン・ポートの選択を利用してガイドします。

以下のセクションでは、アルテラの IP コアの一般的なインストール、デザイン・フ

ロー、評価、および生産使用を説明します。

インストールおよびライセンスアルテラの IP ライブラリは、Quartus® II ソフトウェアと共に配布されます。また、

アルテラのウェブサイト(www.altera.co.jp)からダウンロードすることもできます。

図 2–1 に、アルテラの IP コアをインストールした後のディレクトリ構造を示しま

す。この場合、<path> が Quartus II ソフトウェアのインストール・ディレクトリで

す。 Windows でのデフォルトのインストール・ディレクトリは、

C:\altera\<version number> です。Linux では、 /opt/altera<version number> です。

ライセンスを購入する前に IP コアをシミュレーションおよびハードウェア上で評価

することができます。ほとんどのアルテラの IP コアは、アルテラの無償の OpenCore Plus 評価機能がこのために使用されます。いくつかのアルテラの IP コアは、評価の

ためにこの特別な機能を使用する必要はありません。機能とパフォーマンスに満足

するまで、IP コアを評価することができます。生産にデザインを利用するときは、

IP コアのライセンスを購入する必要があります。

図2‒1. ディレクトリ構造

srcContains the libraries.

ast_componentContains the lower-level design files.

ipContains the Altera MegaCore IP Library and third-party IP cores.

<path>Installation directory.

alteraContains the Altera MegaCore IP Library.

commonContains shared components.

fir_compiler_iiContains the FIR Compiler II MegaCore function files.

FIR コンパイラ II MegaCore ファンクションユーザーガイド

Page 20: FIRコンパイラII MegaCore ファンクション ユー …...2011年11月 Altera Corporation FIRコンパイラII MegaCore ファンクション ユーザーガイド 1.このMegaCoreファンクションに

2‒2 第 2章 : 使用法MegaWizard Plug-In Manager デザイン・フロー

アルテラの IP コアのライセンスを購入してから、アルテラ ・ウェブサイト (www.altera.co.jp/licensing)でライセンス・ファイル を要求して、お使いのコン

ピュータにインストールできます。ライセンス・ファイルを要求すると、アルテラ

から電子メールで license.dat ファイルが送信されます。インターネットをご利用い

ただけないお客様は、アルテラの販売代理店にお問い合わせください。

f インストールおよびライセンスの追加情報について詳しくは、「アルテラ・ソフトウェアのインストールおよびライセンス」 のを参照してください。

MegaWizard Plug-In Manager デザイン・フローMegaWizard™ Plug-In Manager フローでは、FIR コンパイラ II MegaCore ファンクション

をカスタマイズし、手動で MegaCore ファンクションのバリエーションを Quartus IIデザインに組み込むことができます。

パラメータの指定MegaWizard Plug-in Manager フローを使用するには、以下のステップを実行します。

1. Quartus II ソフトウェアの File メニューから New Project Wizard を選択して、新規

のプロジェクトを作成します。

2. Tools メニューから MegaWizard Plug-in Manager を起動し、新規のカスタム・メガ

ファンクション・バリエーションを作成するには、オプションを選択します。

3. Next をクリックして、Installed Plug-Ins で Filters の FIR Compiler II を選択します。

4. 該当するデバイス・ファミリの名前を確認します。

5. デザインのトップ・レベル出力ファイル・タイプを選択します。ウィザードでは

VHDL と Verilog HDL をサポートしています。

6. MegaCore ファンクション・バリエーションのトップ・レベルの出力ファイル名を

指定し、 Next をクリックします。

7. Parameter Settings ページのパラメータを指定します。 パラメータをセットする方

法について、 第 3 章のパラメータの設定を参照してください。

8. Finish をクリックします。 ファイル生成を完了するには、数分かかる場合があり

ます。生成の進捗状況およびステータスはレポート・ウィンドウに表示されま

す。Parameter Editor は、IP コアのトップ・レベル HDL コード、および Quartus IIコンパイラ内で IP コアを処理するのに必要なアサインメントおよび情報が含ま

れている .qip ファイルを生成します。また、ミュレーションに必要なファイルは

含まれているシミュレーション・ディレクトリを生成します。 そして、Parameter Editor では、MATLAB 環境で FIR コンパイラ II MegaCore ファンクションのデザイ

ンを分析するために使用できる関数が含まれている MATLAB の m- ファイルを生

成します。テストベンチも生成されます。

カスタム IP コア・インスタンスをデザインに統合、シミュレーション、およびコン

パイルを実行することができます。IP コア・インスタンスをデザインに統合する時

に適切なピン・アサインメントを行う必要があります。シミュレーションやハード

ウェアにデザインをマップする準備ができていない間で、トップ・レベルの信号に

特定のピン・アサインメントを避けるために、仮想ピンを作成することができます。

1 Quartus II ソフトウェア、特に仮想ピンのことおよび MegaWizard Plug-In Manager につい

て詳しくは、「Quartus II Help」を参照してください。

FIR コンパイラ II MegaCore ファンクション 2011 年 11 月 Altera Corporationユーザーガイド

Page 21: FIRコンパイラII MegaCore ファンクション ユー …...2011年11月 Altera Corporation FIRコンパイラII MegaCore ファンクション ユーザーガイド 1.このMegaCoreファンクションに

第 2 章 : 使用法 2‒3MegaWizard Plug-In Manager デザイン・フロー

表 2–1 プロジェクト・ディレクトリに IP Toolbench で生成されたファイルを示しま

す。デザイン合成およびシミュレーション・ファイルは、次の 2 つのフォルダで生

成されます。

■ <variation name> フォルダ — Quartus II 合成に使用されるファイルが含まれている

■ <variation name>_sim フォルダ— シミュレーションのために使用されるファイルが

含まれている

レポートで指定されるファイルの名前とタイプは、デザインを VHDL または Verilog HDL のいずれで作成したかによって異なります。

表2‒1. 生成されるファイル ( その1 ) ( 注 1) (2)

ファイル名 説明

プロジェクト・ディレクトリのコンパイル・ファイル

<variation name>.qip

Quartus II コンパイラの MegaCore ファンクション・バリエーションの処理に必要なすべてのアサインメントおよび他の情報が含まれます。Parameter Editor から脱出すると、このファイルを現行の Quartus II プロジェクトに追加するように促されます。

<variation name>.vhd または .v

カスタム MegaCore ファンクションの VHDL または Verilog HDL トップレベルの記述を定義する VHDL または Verilog HDL ファイルです。デザイン内部のこのファイルによって定義されたエンティティをインスタンスします。QuartusII ソフトウェアでのデザインのコンパイル時にこのファイルがインクルードされます。

<variation name>.bsfMegaCore ファンクションのバリエーション用 Quartus II ブロック・シンボル・ファイルです。Quartus II ブロック図エディタでこのファイルを使用できます。

<variation name> フォルダの合成ファイル

<variation name>_<index>_ast.vhd Avalon-ST インタフェースの VHDL ラッパー・ファイルです。

<variation name>_<index>.sdc このファイルは、バリエーションの設定に基づいて FIR コンパイラ II の IP コアのタイミング制約を含みます。

<variation name>.<index>.vhd デザイン・エンティティを定義する VHDL ファイルです。

<variation name>_sim フォルダのシミュレーション・ファイル

<variation name>_ast.vhd Avalon-ST インタフェースの VHDL ラッパー・ファイルです。

<variation name>.vhd デザイン・エンティティを定義する VHDL ファイルです。

<variation name>_nativelink.tcl NativeLink シミュレーション・テストベンチ設定を Quartus II プロジェクトに割り当てるために使用する Tcl スクリプトです。

<variation name>_msim.tclこの Tcl スクリプトは、カスタマイズされた FIR の MegaCore ファンクション・バリエーションのシミュレーション・モデルと一緒に VHDLテストベンチをシミュレートするために使用することができます。

<variation name>_mlab.mこの MATLAB m ファイルは、カスタマイズされた MegaCore ファンクション・バリエーションのために、MATLAB シミュレーション・モデルのカーネルを提供します。

<variation name>_model.mこの MATLAB m ファイルは、カスタマイズされた MegaCore ファンクション・バリエーションのために、MATLAB シミュレーション・モデルを提供します。

<variation name>_input.txtこのテキスト・ファイルは、MATLAB モデルおよびシミュレーション・テストベンチのための入力データおよびバンク切り替えのパターン(複数の係数バンクが使用されている場合)を提供します。

2011 年 11 月 Altera Corporation FIR コンパイラ II MegaCore ファンクションユーザーガイド

Page 22: FIRコンパイラII MegaCore ファンクション ユー …...2011年11月 Altera Corporation FIRコンパイラII MegaCore ファンクション ユーザーガイド 1.このMegaCoreファンクションに

2‒4 第 2章 : 使用法MegaWizard Plug-In Manager デザイン・フロー

デザインのシミュレーションFIR コンパイラ II MegaCore ファンクションは、デザイン・シミュレーションの出力

ファイルの数を生成します。カスタム FIR フィルタを作成した後、ModelSim®-Alteraソフトウェア、MATLAB、または別のサード・パーティのシミュレーション・ツール

でデザインをシミュレートすることができます。

ModelSim-Altera ソフトウェアのシミュレーションTcl スクリプト (<variation name>_msim.tcl) を使用して ModelSim-Altera ソフトウェア

に VHDL のテストベンチをロードすることができます。

このスクリプトでは、FIR フィルタに入力データを提供するために、ファイル <variation name>_input.txt を使用しています。シミュレーションからの出力は、ファ

イル <variation name>_output.txt に格納されています。

MATLAB のシミュレーションMATLAB 環境でシミュレートするには、デザイン・ディレクトリにあるテストベンチ

m-file の <variation_name>_model.m を実行します。このスクリプトは、 <variation name>_input.txt ファイルを使用して入力データを提供します。MATLAB シミュレー

ションからの出力は、ファイル <variation name>_model_output.txt に格納されていま

す。

NativeLink を使用したサード・パーティ・シミュレーション・ツールのシミュレーションシミュレーションは、NativeLink を使用して Quartus II ソフトウェアからサード・パー

ティ製シミュレーション・ツールを使用して実行できます。

Tcl スクリプト・ファイル <variation name>_nativelink.tcl を使用して、デフォルトの

NativeLink テストベンチ設定を Quartus II プロジェクトに割り当てることができます。

Quartus II ソフトウェアで NativeLink を使用してシミュレーションを実行するには、以

下のステップを実行します。

<variation name>_param.txtこのテキスト・ファイルは、カスタマイズされた FIR MegaCore ファンクション・バリエーションのために入力および出力パラメータを記録します。

<variation name>_coef_int.txt テストベンチに係数入力を提供するテキスト・ファイルです(対称性/ 非対称性フィルタのために不完全な係数)。

<variation name>_coef_reload.txt 係数のリロードのオプションがイネーブルされる時、このテキスト・ファイルは MATLAB モデルの新規のランダム係数入力を提供します。

<variation name>_coef_reload_rtl.txt

このテキスト・ファイルには、<variation name>_coef_reload.txt と同じ係数入力が含まれます。ただし、このファイルは、対称性 / 非対称性フィルタの不完全な係数を含み、係数のリロードのオプションがイネーブルされる場合に、シミュレーション・テストベンチに使用されます。

表2‒1の注:(1) <variation name> は自動的に供給されるバリエーション名です。(2) <index> は、コンポーネントが使用されている回数を示す変数です。例えば、 <variation name>_<index>_ast.vhd が

FIR_0002_ast.vhdとして定義されます。

表2‒1. 生成されるファイル ( その2 ) ( 注 1) (2)

ファイル名 説明

FIR コンパイラ II MegaCore ファンクション 2011 年 11 月 Altera Corporationユーザーガイド

Page 23: FIRコンパイラII MegaCore ファンクション ユー …...2011年11月 Altera Corporation FIRコンパイラII MegaCore ファンクション ユーザーガイド 1.このMegaCoreファンクションに

第 2 章 : 使用法 2‒5MegaWizard Plug-In Manager デザイン・フロー

1. この章で前述した手順に従って、カスタム MegaCore ファンクションのバリエー

ションを作成します。バリエーション名が Quartus II プロジェクト名と一致して

いるか確認します。

2. Quartus II ソフトウェアの Tools メニューの Options ページに、サード・パーティ

製 EDA ツールへの絶対パスが設定されているか確認します。

3. Processing メニューから Start を選択し、Start Analysis & Elaboration をクリックし

ます。

4. Tools メニューの Tcl scripts をクリックします。Tcl Scripts ダイアログ・ボックス

で <variation name>_nativelink.tcl を選択して、Run をクリックします。 Tcl スクリ

プトが正常にロードされたことを確認するメッセージをチェックします。

5. Assignments メニューの Settings をクリックして、EDA Tool Settings を展開し、

Simulation を選択します。 Tool Name でシミュレータを選択し、NativeLink Settingsで Compile Test Bench を選択して、Test Benches をクリックします。

6. Tools メニューで EDA Simulation Tool をポイントして、Run EDA RTL Simulation を

クリックします。

Quartus II ソフトウェアは、シミュレータを選択し、アルテラのライブラリ、デザ

イン・ファイル、およびテストベンチをコンパイルします。テストベンチが実行

して、波形ウィンドウには、分析のためのデザイン・シグナルを示します。

f 詳細は、「Quartus II ハンドブック Volume 3」の「Simulating Altera IP in Third-Party Simulation Tools」 の章を参照してください。

1 データ・ストレージがクリアされている場合、IP 機能シミュレーション・モデルは

正しいデータのみを出力します。データ・ストレージがクリアされていない場合、

機能シミュレーション・モデルは不定なデータを出力します。関連するサンプルが

利用可能になる前に必要なクロック・サイクル数は、N です。ただし、N = (チャネ

ル数)x (係数の数)x (出力計算に必要なクロック・サイクル数)。

FIR コンパイラ II MegaCore ファンクションによる生成されたファイルのリストにつ

いて詳しくは、2–3 ページの表 2–1 を参照してください。

デザインのコンパイルおよびデバイスのプログラムMegaWizard Plug-In Manager を使用して IP コアを定義およびインスタンス化した後、

デザインをコンパイルすることが必要であり、FPGA をコンフィギュレーションする

ためのプログラミング・ファイルを作成できます。

いくつかのアルテラ IP コアはコンパイル前に制約を適用する必要がります。これら

の制約ファイルは、ピン・アサインメントを作成し、 IP コア・インスタンスがタイ

ミング要求を満足していることを確認できます。

制約ファイルを適用した後で、IP コアに適切な場合、デザインをコンパイルするた

めに Quartus II ソフトウェアで、Processing メニューの Start Compilation コマンドを使

用することができます。デザインをコンパイルした後、ターゲットのアルテラ・デ

バイスを Programmer にプログラムし、ハードウェア内でデザインを検証できます。

2011 年 11 月 Altera Corporation FIR コンパイラ II MegaCore ファンクションユーザーガイド

Page 24: FIRコンパイラII MegaCore ファンクション ユー …...2011年11月 Altera Corporation FIRコンパイラII MegaCore ファンクション ユーザーガイド 1.このMegaCoreファンクションに

2‒6 第 2章 : 使用法MegaWizard Plug-In Manager デザイン・フロー

FIR コンパイラ II MegaCore ファンクション 2011 年 11 月 Altera Corporationユーザーガイド

Page 25: FIRコンパイラII MegaCore ファンクション ユー …...2011年11月 Altera Corporation FIRコンパイラII MegaCore ファンクション ユーザーガイド 1.このMegaCoreファンクションに

2011 年 11 月 Altera Corporation

3. パラメータの設定

この章では、FIR コンパイラ II MegaCore ファンクションに使用可能なパラメータに

ついて説明します。

Parameter Editor の仕様方法について詳しくは、2–2 ページの「MegaWizard Plug-In Manager デザイン・フロー」を参照してください。

Parameter Settings では、以下の 3 つのページがあります。

■ フィルタ仕様ページ

■ Input and Output Options ページ

■ Implementation Options ページ

フィルタ仕様ページFIR フィルタは係数で定義されます。 FIR コンパイラ II MegaCore ファンクションの係

数設定方法には、以下のオプションがあります。

■ Parameter Editor でフィルタの設定と係数のオプションを指定することができま

す。フィルタ設定のコンフィギュレーションに関係なく、FIR コンパイラ II MegaCore ファンクションがデフォルトで 37 タップ係数セットを提供します。ス

ケーリングされた値と固定小数点の値は、係数のビット幅の設定に基づいて再計

算されます。より高い係数のビット幅で欲する元の周波数応答により近い固定周

波数応答があります。その代わりに、高いリソース使用量の費用になります。

■ ファイルから係数をロードすることができます。例えば、MATLAB などの別のア

プリケーションまたはユーザーが作成したプログラムで係数を作成し、ファイル

に保存して FIR コンパイラ II MegaCore ファンクションにインポートすることがで

きます。詳細については、3–2 ページの「ファイルから係数のロード」を参照し

てください。

表 3–1 に、フィルタ仕様のパラメータを示します。

表3‒1. フィルタ仕様のパラメータ ( その1 )

パラメータ 値 説明

フィルタの設定

Filter Type

Single Rate

Decimation

Interpolation

Fractional Rate

FIR フィルタのタイプを指定します。デフォルト値は Single Rate です。

Interpolation Factor 1 ~ 64 オリジナル・サンプルの間で生成する余分なポイント数を指定します。デフォルト値は 1 です。

Decimation Factor 1 ~ 64 オリジナル・サンプルの間で削除するデータ・ポイントの数を指定します。デフォルト値は 1 です。

FIR コンパイラ II MegaCore ファンクションユーザーガイド

Page 26: FIRコンパイラII MegaCore ファンクション ユー …...2011年11月 Altera Corporation FIRコンパイラII MegaCore ファンクション ユーザーガイド 1.このMegaCoreファンクションに

3‒2 第 3 章 : パラメータの設定フィルタ仕様ページ

ファイルから係数のロードファイルから係数セットをロードするには、次のステップを実行します。

1. File Path ボックスで、係数セットを含む .txt ファイルを指定します。

係数ファイルには、1 行に 1 つの係数は必要であり、ファイルの終わりに改行が

ありません。浮動小数点、固定小数点数、または科学記法を使用することができ

ます。複数の係数セットは係数セットの配列を指定することによってサポートさ

れています。行数は、必要なバンク数を指定します。すべての係数セットは、同

じ対称性のタイプと同じタップ数がある必要があります。

図 3–1 に、5 タップを含む、2 つの対称対な例を示します。

L-th Band Filter

All taps

Half band

3 ~ 5 番目

適切な L バンド・ナイキスト・フィルタを指定します。 これらのフィルタの各 L 番目係数は、センタ・タップから数えて、ゼロです。デフォルト値は All taps です。

Number of Channels 1 ~ 128 処理する固有の入力チャネル数を指定します。 デフォルト値は 1 です。

係数のオプション

Coefficient Data TypeSigned Binary

Signed Fractional Binary

係数入力データ・タイプを指定します。フィルタリング処理中に、 どのビットが保存、またどのビットが削除されることをモニタする場合、Signed Fractional Binary を選択します。

Coefficient Bit Width 2 ~ 32 係数幅を指定します。デフォルト値は 8 ビットです。

Coefficient Fractional Bit Width 0 ~ 32

係数データ・タイプとして Signed Fractional Binaryを選択すると、フィルタに係数データ入力の幅を指定します。

周波数応答の表示

Show Coeffificient Bank 0 ~係数バンクの数 -1 係数の表と周波数応答のグラフで表示する係数バンクを指定します。

File Path

File Path URL 係数をロードするどのファイルを指定します。 「ファイルから係数のロード」を参照してください。

表3‒1. フィルタ仕様のパラメータ ( その2 )

パラメータ 値 説明

図3‒1. 係数のファイル・フォーマット(5タップを含む、2つの対称対な係数セット)

FIR コンパイラ II MegaCore ファンクション 2011 年 11 月 Altera Corporationユーザーガイド

Page 27: FIRコンパイラII MegaCore ファンクション ユー …...2011年11月 Altera Corporation FIRコンパイラII MegaCore ファンクション ユーザーガイド 1.このMegaCoreファンクションに

第 3 章 : パラメータの設定 3‒3Input and Output Options ページ

1 ファイルの終わりに追加改行を挿入しないでください。FIR コンパイラ II MegaCore ファンクションは、直近の過去の係数の値を持つ追加の係数とし

て各キャリッジリターンを解釈します。ファイルは、 低 5 つの非ゼロ係

数が必要です。

2. Parameter Editor の Filter Specification では、Apply をクリックして係数セットをイ

ンポートします。

係数セットをインポートすると、浮動小数点係数の周波数応答が青く表示され、固

定小数点係数が赤く表示されます。

FIR コンパイラ II MegaCore ファンクションは係数セット上のスケーリングをサポー

トします。

Input and Output Options ページ表 3–2 に、パラメータのオプションを示します。

表3‒2. Input and Output Options

パラメータ 値 説明Input Options

Input Data TypeSigned Binary

Signed Fractional Binary

入力データが符号付きバイナリまたは符号付き小数のバイナリ・フォーマットであるかどうかを指定します。フィルタリング処理中に、 どのビットが保存、またどのビットが削除されることをモニタする場合、Signed Fractional Binary を選択します。

Input Bit Width 1 ~ 32 フィルタに送られる入力データの幅を指定します。デフォルト値は 8 ビットです。

Input Fractional Bit Width 0 ~ 32係数データ・タイプとして Signed Fractional Binaryを選択すると、フィルタに係数データ入力の幅を指定します。デフォルト値は 0 ビットです。

Output Options

Output Data TypeSigned Binary

Signed Fractional Binary

入力データが符号付きバイナリまたは符号付き小数のバイナリ・フォーマットであるかどうかを指定します。フィルタリング処理中に、 どのビットが保存され、またどのビットが削除されることをモニタする場合、Signed Fractional Binary を選択します。

Output Bit Width 0 ~ 32 フィルタからの出力データ(制限付き精度で)の幅を指定します。

Output Fractional Bit Width 0 ~ 32出力データとして Signed Fractional Binary を選択すると、フィルタからの出力データ(制限付き精度で)の幅を指定します。

Output MSB rounding Truncation/ Saturating 上位ビット(MSB)を切り捨て処理または飽和処理にするかどうかを指定します。

MSB Bits to Remove 0 ~ 32切り捨て処理または飽和処理をする MSB ビットの数を指定します。 この値は、その対する整数ビットまたは小数ビットを超えてはなりません。

2011 年 11 月 Altera Corporation FIR コンパイラ II MegaCore ファンクションユーザーガイド

Page 28: FIRコンパイラII MegaCore ファンクション ユー …...2011年11月 Altera Corporation FIRコンパイラII MegaCore ファンクション ユーザーガイド 1.このMegaCoreファンクションに

3‒4 第 3 章 : パラメータの設定Input and Output Options ページ

符号付き小数バイナリFIR コンパイラ II は、符号付き小数バイナリ表記のは 2 つの補数をサポートしてお

り、フィルタリング処理中に、 どのビットが保存され、またどのビットが削除される

ことをモニタできます。符号付きバイナリ小数のフォーマットは、次の通りです。

<sign> <integer bits>.<fractional bits>

符号付きバイナリ小数は、以下のように解釈されます。

<sign> <x1 integer bits>.<y1 fractional bits> 元のデータ入力

<sign> <x2 integer bits>.<y2 fractional bits> 元の係数データ

<sign> <i integer bits>.<y1 + y2 fractional bits>FIR 計算後の完全精度

<sign> <x3 integer bits>.<y3 fractional bits> 制限精度後の出力データ

ここで、 i = ceil(log2(number of coefficients)) + x1 + x2

例えば、数は 3 の小数ビット、4 の整数ビットおよび 1 の符号ビットがある場合、全

体 8 ビットの整数を 8 で割って、バイナリ小数部を持つ数を出します。

総ビット数は、符号ビット + 整数のビット + 小数部分のビットに等しいです。符号 +整数のビットは Input Bit Width – Input Fractional Bit Width(少なくとも 1 ビットは符号

用として指定しなければならないという制限を持つ)に等しいです。T

MSB と LSB の切捨て、 飽和処理、および丸め処理Parameter Editor 上の出力オプションを使用すると、 上位ビット (MSB) を切り捨て

または飽和処理して、 下位ビット (LSB) を切り捨てまたは丸め処理することができ

ます。飽和、切捨て、および丸め処理は非線形操作です。

表 3–3 にフィルタの精度を制限するオプションを示します。

Output LSB rounding Truncation/ Rounding 下位ビット(LSB)を切り捨てるか、丸め処理するかを指定します。

LSB Bits to Remove 0 ~ 32切捨てるまたは丸め処理する 下位ビット(LSB)の数を指定します。この値は、その対する整数ビットまたは小数ビットを超えてはなりません。

表3‒2. Input and Output Options

パラメータ 値 説明

表3‒3. 精度を制限するオプション

ビット範囲

オプション 結果

MSB 切捨て 切り捨て処理では、フィルタは指定されたビットを無視します (図 3–2 を参照)。

飽和 飽和処理では、フィルタされた出力が表示可能な正または負の大値より大きい場合、出力は正または負の 大値に強制(す

なわち、飽和処理)されます。

LSB 切捨て MSB の場合と同じ処理

丸め処理

出力は丸められます。

FIR コンパイラ II MegaCore ファンクション 2011 年 11 月 Altera Corporationユーザーガイド

Page 29: FIRコンパイラII MegaCore ファンクション ユー …...2011年11月 Altera Corporation FIRコンパイラII MegaCore ファンクション ユーザーガイド 1.このMegaCoreファンクションに

第 3 章 : パラメータの設定 3‒5Implementation Options ページ

図 3–2 に MSB および LSB からのビットの削除例を示します。

Implementation Options ページ表 3–4 に、実装オプションを示します。

図3‒2. MSB および LSB からのビットの削除

D15D14D13D12D11D10D9D8..D0

D9D8..D0

Bits Removed from MSB

FullPrecision

LimitedPrecision

D15D14....D4D3D2D1D0

D11D10...D1D0

Bits Removed from LSB

FullPrecision

LimitedPrecision

D15D14D13D12...D3D2D1D0

D10D9...D1D0

Bits Removed from both MSB & LSB

FullPrecision

LimitedPrecision

表3‒4. 実装オプション ( その1 )

パラメータ 値 説明

周波数の仕様

Clock Frequency (MHz) 1 ~ 500 入力クロックの周波数を指定します。デフォルト値は 100 MHz です。

Clock Slack 整数 クロック周波数のパイプライン量、およびサンプル・レートの比に対するクロックを個別に制御しことができます。デフォルト値は 0 です。

Input Sample Rate (MSPS) 整数 受信データのサンプル・レートを指定します。 デフォルト値は 100 です。

Speed Grade

Fast

Medium

Slow

クロック周波数を満たすために必要なリソースに対してハードウェアのサイズのバランスをとることで、ターゲット・デバイスのスピード・グレードを指定します。デフォルト値は Medium です。

対象性のオプション

Symmetry Mode

Non Symmetry

Symmetrical

Anti-Symmetrical

フィルタ・デザインは、非対称、対称、または反対称の係数を使用するかどうかを指定します。デフォルト値はNon Symmetry です。

係数リロードのオプション

Coefficients Reload —

係数をリロードできるようにするには、このオプションをオンにします。このオプションでは、実行時に係数の値を変更することができます。このオプションをオンにすると、追加の入力ポートがフィルタに追加されます。

Base Address 整数 メモリ・マップド係数のベース・アドレスを指定します。

Read/Write mode

Read

Write

Read/Write

構築するためのアドレス・デコードのタイプを決定するモードをリード・モードおよびライト・モード指定します。

2011 年 11 月 Altera Corporation FIR コンパイラ II MegaCore ファンクションユーザーガイド

Page 30: FIRコンパイラII MegaCore ファンクション ユー …...2011年11月 Altera Corporation FIRコンパイラII MegaCore ファンクション ユーザーガイド 1.このMegaCoreファンクションに

3‒6 第 3 章 : パラメータの設定Implementation Options ページ

メモリおよび乗算器のトレードオフデザインがロジックに合成されると、多くの場合、遅延ブロックが作成されます。

FIR コンパイラ II MegaCore ファンクションは、ロジック・エレメント(LE)とブ

ロック・メモリ(M512、M4K、M9K、または M144K)の間の実装のバランスをとろ

うと試みます。正確なトレードオフはターゲットされた FPGA ファミリに依存します

が、一般に、使用される絶対的なシリコン領域を 小化するように試みます。例え

ば、1 つの RAM ブロックが 2 つのロジック・アレイ・ブロック(LAB)のシリコン

領域を占有している場合、20 を超える LE(2 つの LAB)を必要とする遅延は、1 つ

の RAM ブロックとして実装されます。これは通常、適切ですが、このトレードオフ

を変更する場合もあります。

表 3–5、表 3–6、表 3–7、および表 3–8 に、メモリおよび乗算器のスレッショルド・

トレードオフおよびその使用例を示します。

フローのコントロール

Back Pressure Support —

バックプレッシャ・サポートをイネーブルするには、このオプションをオンにします。このオプションをオンにすると、シンクがその FIFO がフルである場合、またはその出力ポート上に輻輳が発生した場合、データ・フローをストップするためにソースを通知します。

リソース使用率の設定

Device Family サポートされるデバイスのメニュー

ターゲット・デバイス・ファミリを指定します。

LEs / Small RAM Block Threshold 整数

LEs/ 小型 RAM ブロック・スレッショルド間のリソースのバランスをビットで指定します。デフォルト値は 20 です。 詳しくは、3–6 ページの「メモリおよび乗算器のトレードオフ」を参照してください。

Small / Medium RAM Block Threshold 整数

小型 RAM ブロックと中型 RAM ブロックのスレッショルド間のリソースのバランスをビットで指定します。デフォルト値は 1280 です。詳しくは、3–6 ページの「メモリおよび乗算器のトレードオフ」を参照してください。

Medium / Large RAM Block Threshold 整数

中型 RAM ブロックと大型 RAM ブロックのスレッショルド間のリソースのバランスをビットで指定します。 デフォルト値は 1000000 です。詳しくは、3–6 ページの「メモリおよび乗算器のトレードオフ」を参照してください。

LEs / DSP Block Multiplier Threshold 整数

LEs/DSP ブロック乗算器のスレッショルド間のリソースのバランスをビットで指定します。 デフォルト値は -1 です。詳しくは、3–6 ページの「メモリおよび乗算器のトレードオフ」を参照してください。

表3‒4. 実装オプション ( その2 )

パラメータ 値 説明

表3‒5. CDelay RAM Block スレッショルド ( その1 )

説明 単純遅延 LE と小型 ROM ブロック間のトレードオフ。使用される LE 数がこのパラメータより大きな遅延サイズの場合は、遅延はブロック RAM として実装されます。

デフォルト(-1) 20 ビット。

FIR コンパイラ II MegaCore ファンクション 2011 年 11 月 Altera Corporationユーザーガイド

Page 31: FIRコンパイラII MegaCore ファンクション ユー …...2011年11月 Altera Corporation FIRコンパイラII MegaCore ファンクション ユーザーガイド 1.このMegaCoreファンクションに

第 3 章 : パラメータの設定 3‒7Implementation Options ページ

使用方法

より多くの遅延がブロック RAM を使用するためには、より小さな数を入力します(例:20から 30 の値)。

より少ないブロック・メモリを使用するためには、より大きな数を入力します(例:100)。

単純遅延に対してブロック・メモリを使用しない場合は、10,000 のような非常に大きな数を入力します。

3 サイクル未満の遅延は、ブロック RAM 動作の性質により、ロジック・エレメント(LE)に実装する必要があります。

このスレッショルドは、単純遅延をメモリ・ブロックまたはロジック・エレメントに実装する場合にのみ適用されます。デュアル・メモリはロジック・エレメントにプッシュ・バックできません。

表3‒5. CDelay RAM Block スレッショルド ( その2 )

表 3‒6. CDualMem Dist RAM スレッショルド

説明

小型 RAM ブロックと中型 RAM ブロック間のトレードオフ。このスレッショルドは、デュアル・ポート・メモリにのみ適用される以外は、CDelay RAM Block Threshold に類似しています。

デュアル・ポート・メモリは、ロジック・エレメントではなく、常にブロック・メモリ内に実装されますが、一部のデバイス・ファミリでは、さまざまなサイズのブロック・メモリが使用できる場合もあります。スレッショルド値は、小型 RAM メモリ・ブロックの代わりに、どの中型 RAM メモリ・ブロックを使用するかを決定します。例えば、Stratix III および Stratix IV デバイス上において、MLAB ブロックではなく M9K ブロックを使用するかどうかを決定するスレッショルドが挙げられます。

デフォルト (-1) 1,280 ビット

使用方法

デフォルトのスレッショルド値(-1)が設定された Stratix III デバイスを使用すると、1,280ビットより大きなデュアル・メモリは M9K として実装され、1,280 ビット以下のデュアル・メモリは MLAB として実装されます。このスレッショルドを 200 などの低い値に変更すると、200 ビットより大きなデュアル・メモリは M9K として実装され、200 ビット以下のデュアル・メモリは MLAB ブロックとして実装されます。

注 1 種類のみのメモリ・ブロックを持つファミリ(例:M4K のみの Cyclone II、または M9K のみの Cyclone III)の場合、このスレッショルドは、メモリ・ブロックの選択に影響しません。

表3‒7. M-RAM スレッショルド

説明 中型 RAM ブロックと大型 RAM ブロック間のトレードオフ。より大きな遅延の場合、メモリは中型ブロック RAM(M4K、M9K)に実装されるか、または更に大きな M-RAM ブロック

(M512K、M144K)が実装に使用されます。

デフォルト (-1) 1,000,000 ビット

使用方法 メモリ内のビット数または遅延がこのスレッショルドより大きい場合、M-RAM が実装に使用されます。デフォルトが 1,000,000 ビットのような大きな値を設定すると、M-RAM ブロックは使用されません。

2011 年 11 月 Altera Corporation FIR コンパイラ II MegaCore ファンクションユーザーガイド

Page 32: FIRコンパイラII MegaCore ファンクション ユー …...2011年11月 Altera Corporation FIRコンパイラII MegaCore ファンクション ユーザーガイド 1.このMegaCoreファンクションに

3‒8 第 3 章 : パラメータの設定Implementation Options ページ

表3‒8. ハード・マルチプライヤ・スレッショルド

説明

ハード・マルチプライヤとソフト・マルチプライヤ間のトレードオフ。ハード・マルチプライヤまたは DSP ブロックをサポートするデバイスの場合、ロジック・エレメントから作成されたソフト・マルチプライヤの代わりに、これらのリソースを使用できます。例えば、2ビット × 10 ビット乗算器はロジック・エレメントをほとんど消費しません。ハード・マルチプライヤのスレッショルド値は、乗算器を保存するために使用されるロジック・エレメント数に対応します。ハード・マルチプライヤのスレッショルド値が 100 の場合、100 のロジック・エレメントが使用可能です。したがって、18 × 18 乗算器(およそ 182 = 350 ロジック・エレメントが必要)は、スレッショルド値より多くのロジック・エレメントを必要とするため、ロジック・エレメントに転送されません。しかし、およそ 64 のロジック・エレメントを必要とする 16 × 4 乗算器は、この設定では、ソフト・マルチプライヤとして実装されます。

デフォルト (-1) —

使用方法

デフォルト(-1)は、常にハード・マルチプライヤを使用することを意味します。この値の場合、24 × 18 乗算器が 2 つの 18 × 18 乗算器として実装されます。

18 × 18 乗算器をハードとして保持するためには、およそ 300 の値を設定します。ただし、より小さな乗算器をロジック・エレメントに変換します。24 × 18 乗算器は、6 × 18 + 18 × 18 として実装されることに注意してください。したがって、この設定で、要求されるハイブリッド・マルチプライヤを構築します。

乗算器を完全にロジック・エレメントとして実装するには、およそ 1,000 の値を設定します。8 × 18 乗算器を使用して保存するためには、本質的に、大きな数(1,000 個)のロジック・エレメントを使用できます。

24 × 16 乗算器を 36 × 36 乗算器として実装するには、およそ 10 の値を設定します。この値では、加算器は、2 つの乗算器を組み合わせることすらできません。したがって、システムは、1 つの DSP ブロックに 36 × 36 乗算器を書き込む必要があります。

一方が定数入力の乗算器は、バランスのとれた加算器ツリーに変換されます。この変換は、ツリーの深さが 2 以下の場合に自動的に行われます。深さが 2 を超える場合、ハード・マルチプライヤ・スレッショルドは加算器ツリーの予測サイズと比較されます。ハード・マルチプライヤのスレッショルドは、通常、フルサイズのソフト・マルチプライヤよりはるかに低いです。

加算器が後続する 2 つの定数入力ではない乗算器が単一の DSP ブロックにまとめられる場合、スレッショルドがどんなに高くても、1 つの乗算器はロジック・エレメントに変換されません。

FIR コンパイラ II MegaCore ファンクション 2011 年 11 月 Altera Corporationユーザーガイド

Page 33: FIRコンパイラII MegaCore ファンクション ユー …...2011年11月 Altera Corporation FIRコンパイラII MegaCore ファンクション ユーザーガイド 1.このMegaCoreファンクションに

2011 年 11 月 Altera Corporation

4. 機能の説明

この章では、FIR コンパイラ II MegaCore ファンクション、そのアーキテクチャ、イ

ンタフェース、機能およびインタフェースの信号について詳細に説明します。

アーキテクチャ図 4–1 に、Avalon-ST インタフェースを持つ FIR コンパイラ II MegaCore ファンクショ

ンの上位レベルのブロック図を示します。 FIR コンパイラ II MegaCore ファンクション

は Avalon-ST の RTL(レジスタ転送レベル)ラッパーを生成します。

インタフェースFIR コンパイラ II MegaCore ファンクション以下のインタフェースで構成されていま

す。

■ Avalon ストリーミング(Avalon-ST)ソースおよびシンク・インタフェース

■ クロックおよびリセット・インタフェース

また、MegaCore ファンクションは、フロー制御メカニズムを処理する Avalon-ST ラッ

パーのためのインタフェース・コントローラで構成されています。シンク・インタ

フェース、FIR フィルタ、およびソース・インタフェース間の制御信号は、コント

ローラによって通知されます。

図4‒1. Avalon-ST インタフェースを持つ FIR コンパイラ II の上位レベルのブロック図

FIRFilter

xln_v

bankln_0[]

xln_(n-1)[]

xOut_v

xOut_c

xOut_0[]

xOut_(m-1)[]

ast_sink_valid

ast_sink_data[]

ast_sink_sop

ast_sink_eop

ast_sink_error

ast_source_valid

ast_source_data[]

ast_source_sop

ast_source_eop

ast_source_error

ast_source_channel

Controller

ast_sink_ready ast_source_ready

FIR Compiler II MegaCore Function

Sink Source

control signals control signals

control signals

xln_0[]

bankln_(n-1)[]

FIR コンパイラ II MegaCore ファンクションユーザーガイド

Page 34: FIRコンパイラII MegaCore ファンクション ユー …...2011年11月 Altera Corporation FIRコンパイラII MegaCore ファンクション ユーザーガイド 1.このMegaCoreファンクションに

4‒2 第 4 章 : 機能の説明インタフェース

Avalon-ST シンクおよびソース・インタフェースMegaCore ファンクションのシンクおよびソース・インタフェースは、データの単方

向フローである Avalon-ST プロトコルを実装します。シンボルあたりのビット数は

データ幅を表し、ビートあたりのシンボル数はチャネル・ワイヤの数を表します。 MegaCore ファンクションのシンボル・タイプは符号付きおよび符号なしのバイナ

リ・フォーマットをサポートします。FIR コンパイラ II MegaCore ファンクション上の

レディ・レイテンシは 0 です。

ダウンストリーム・コンポーネントは、常にデータを受信することがわかっている

場合、FIR コンパイラ II MegaCore ファンクションを含むデータパスをデザインする

時に、バックプレッシャを必要としない場合があります。FIR コンパイラ II MegaCoreファンクションの ast_source_ready信号を High にして、および ast_sink_ready信号を接続しないことにより、より高いクロック・レートを達成します。

f Avalon-ST インタフェースのプロパティ、プロトコル、およびデータ転送のタイミン

グについて詳しくは、「Avalon Interface Specifications」を参照してください。

Avalon-ST シンク・インタフェースシンク・インターフェイスは、複数のワイヤ上に複数のチャネルの同様に、シング

ル・ワイヤ上にシングルまたは複数のチャネルを処理することができます。

シングル・ワイヤ上にシングル・チャネル図 4–2 に、8 ビット・データのシングル・チャネルを転送するときに、シンク・イン

タフェースと FIR コンパイラ II MegaCore ファンクション間の接続を示します。

図4‒2. シングル・ワイヤ上にシングル・チャネル(シンク -> FIR コンパイラ II)

FIR Filter

xln_v

xln_0[7:0]ast_sink_valid

ast_sink_data[7:0]

Controller

ast_sink_ready

FIR Compiler II MegaCore Function

Sink

sink_ready

control signals

FIR コンパイラ II MegaCore ファンクション 2011 年 11 月 Altera Corporationユーザーガイド

Page 35: FIRコンパイラII MegaCore ファンクション ユー …...2011年11月 Altera Corporation FIRコンパイラII MegaCore ファンクション ユーザーガイド 1.このMegaCoreファンクションに

第 4 章 : 機能の説明 4‒3インタフェース

シングル・ワイヤ上に複数のチャネル図 4–3 に、シングル・ワイヤ上に複数のチャネル上でデータのパケットを転送する

時に、シンク・インタフェースと FIR コンパイラ II MegaCore ファンクション間の接

続を示します。各チャネルのデータ幅は 8 ビットです。

複数のワイヤ上に複数のチャネル図 4–4 および図 4–5 に、複数のワイヤ上に複数のチャネル上でデータのパケットを

転送する時に、シンク・インタフェースと FIR コンパイラ II MegaCore ファンクショ

ン間の接続を示します。各チャネルのデータ幅は 8 ビットです。チャネル数 = 6、 クロック・レート = 200 MHz、およびサンプル・レート 100 MHz の場合で検討します。

図4‒3. シングル・ワイヤ上に複数のチャネル(シンク -> FIR コンパイラ II)

FIR Filter

xln_v

xln_0[7:0]ast_sink_valid

ast_sink_data[7:0]

Controller

ast_sink_ready

FIR Compiler II MegaCore Function

Sink

sink_ready

control signals

ast_sink_eop

ast_sink_sop

ast_sink_error

packet error

Avalon StreamingInterface

Signals Check

2011 年 11 月 Altera Corporation FIR コンパイラ II MegaCore ファンクションユーザーガイド

Page 36: FIRコンパイラII MegaCore ファンクション ユー …...2011年11月 Altera Corporation FIRコンパイラII MegaCore ファンクション ユーザーガイド 1.このMegaCoreファンクションに

4‒4 第 4 章 : 機能の説明インタフェース

この例では、ハードウェアの 適化は、2 の TDM 係数、チャネル・ワイヤの数 = 3、およびワイヤあたりのチャネル = 2 を生成します。

図4‒4. 複数のワイヤ上に複数のチャネル

FIR Filter

xln_v

xln_0[7:0]

ast_sink_valid

ast_sink_data[23:0]

Controller

ast_sink_ready

FIR Compiler II MegaCore Function

Sink

xln_1[7:0]

xln_2[7:0]

control signals

ast_sink_eop

ast_sink_sop

ast_sink_error

sink_ready

packet error

Avalon StreamingInterface

Signals Check

図4‒5. 複数のワイヤ上に複数のチャネルのタイミング図

clk

ast_sink_valid

ast_sink_data[7:0]

ast_sink_data[15:8]

ast_sink_data[23:16]

ast_sink_sop

ast_sink_eop

xln_v[7:0]

xln_0[7:0]

xln_1[7:0]

xln_2[7:0]

A0 B0 A1 B1 A2 B2

C0 D0 C1 D1 C2 D2

E0 F0 E1 F1 E2 F2

A0 B0 A1 B1 A2 B2

C0 D0 C1 D1 C2 D2

E0 F0 E1 F1 E2 F2

X

X

X

FIR コンパイラ II MegaCore ファンクション 2011 年 11 月 Altera Corporationユーザーガイド

Page 37: FIRコンパイラII MegaCore ファンクション ユー …...2011年11月 Altera Corporation FIRコンパイラII MegaCore ファンクション ユーザーガイド 1.このMegaCoreファンクションに

第 4 章 : 機能の説明 4‒5インタフェース

Avalon-ST ソース・インタフェースソース・インターフェイスは、複数のワイヤ上に複数のチャネルの同様に、シング

ル・ワイヤ上にシングルまたは複数のチャネルを処理することができます。 バックプ

レッシャ・サポート機能がオンにすると、Avalon-ST FIFO がソース・ラッパーに含ま

れます。 Avalon-ST FIFO は、バックプレッシャ・メカニズムを制御し、バックプレッ

シャの後に FIR コンパイラ II MegaCore ファンクションからのデータの余分なサイク

ルをキャッチします。FIR コンパイラ II MegaCore ファンクションの入力側で、

enable_i信号を Low にすることにより、FIR コンパイラ II MegaCore ファンクションは

停止します。出力側で、バックプレッシャは FIR コンパイラ II MegaCore ファンク

ションの enable_i信号をドライブします。ダウンストリーム・モジュールがデータ

を再び受け付ける場合、FIR コンパイラ II MegaCore ファンクションがすぐに再びイ

ネーブルされます。

パケット・サイズが 1 より大きな場合(マルチ・チャネル)、ソース・インタフェー

スはユーザーのアプリケーションが 1 からパケット・サイズに開始データのカウン

トを提供することを予期します。ソース・インタフェースが data_count = 1 と一緒

に validフラグを受け取ると、それは、ast_source_sopおよび ast_source_valid信号の両方を High にしてデータの送信を開始します。data_countがパケット・デー

タに等しくなると、ast_source_eop信号が ast_source_valid信号と High にドライ

ブします。

ダウンストリーム・コンポーネントは、データを受け入れる準備ができていない場

合、ソース・インタフェースがストールにデザインを支持する source_stall信号は

High にドライブします。

図 4–6 および図 4–7 に、複数のワイヤ上に複数のチャネル上でデータのパケットを

転送する時に、FIR コンパイラ II MegaCore ファンクションとソース・インタフェー

ス間の接続を示します。

図4‒6. 複数のワイヤ上に複数のチャネル

FIR Filter

xOut_v

xOut_c

xOut_0[7:0]

ast_source_valid

ast_source_data

ast_source_sop

ast_source_eop

ast_source_error

ast_source_channel

Controller

ast_source_ready

FIR Compiler II MegaCore Function

Source

enable_i

xOut_1[7:0]

xOut_2[7:0]

source_stall

source_valid

Avalon StreamingSCFIFO

(Only available when

backpressure is turned on)

2011 年 11 月 Altera Corporation FIR コンパイラ II MegaCore ファンクションユーザーガイド

Page 38: FIRコンパイラII MegaCore ファンクション ユー …...2011年11月 Altera Corporation FIRコンパイラII MegaCore ファンクション ユーザーガイド 1.このMegaCoreファンクションに

4‒6 第 4 章 : 機能の説明インタフェース

クロックおよびリセット・インタフェースクロックおよびリセット・インターフェイスは、Avalon- ST インタフェース同期する

ためのクロックおよびリセット・信号をドライブまたは受信して、リセットの接続

を提供します。

図4‒7. 複数のワイヤ上に複数のチャネルのタイミング図

clk

xOut_v

xOut_c[7:0]

xOut_0[7:0]

xOut_1[7:0]

xOut_2[7:0]

ast_source_valid

ast_source_data[7:0]

ast_source_data[15:8]

ast_source_data[23:16]

ast_source_sop

ast_source_eop

ast_source_channel

ast_source_error

A0 B0 A1 B1 A2 B2

C0 D0 C1 D1 C2 D2

E0 F0 E1 F1 E2 F2

0 1 0 1 0 1

A0 B0 A1 B1 A2 B2

C0 D0 C1 D1 C2 D2

E0 F0 E1 F1 E2 F2

0 1 0 1 0 1

X

X

X

X

00

FIR コンパイラ II MegaCore ファンクション 2011 年 11 月 Altera Corporationユーザーガイド

Page 39: FIRコンパイラII MegaCore ファンクション ユー …...2011年11月 Altera Corporation FIRコンパイラII MegaCore ファンクション ユーザーガイド 1.このMegaCoreファンクションに

第 4 章 : 機能の説明 4‒7時分割多重化

時分割多重化ハードウェア使用率は、時分割多重化(TDM)の使用によって 適化されます。TDM係数(つまりフォールディング係数)は、サンプル・レートに対するクロック・

レートの比率です。

FIR コンパイラ II MegaCore ファンクションをサンプル・レートよりも速くクロック

制御すると、同じハードウェアを再利用できます。例えば、TDM ファクタが 2 の

フィルタと、2 倍の内部クロックを実装することにより、 図 4–8 に示すように、要求

されるハードウェアを半減することができます。

TDM を達成するには、タイミングを制御するために、再利用ハードウェア・ブロッ

クの前後に、シリアライザおよびデシリアライザが必要です。 サンプル・レートに対

するシステム・クロック周波数の比率は、リソース節約量を決定します(シリアラ

イザおよびデシリアライザの少量の追加ロジックを除く)。

表 4–1 に、49 タップの対称 FIR フィルタに必要な予測リソースを示します。

図4‒8. ハードウェア・リソースを節約するための時分割多重化

表4‒1. 49 タップのシングル・レート FIR コンパイラ II フィルタに必要な予測リソース

クロック・レート(MHz)

サンプル・レート(MSPS)

ロジック マルチプライヤ数

メモリ・ビット数

TDM ファクタ

72 72 2230 25 0 1

144 72 1701 13 468 2

288 72 1145 7 504 4

72 36 1701 13 468 2

Clock Rate = Sample Rate

Clock Rate = 2 x Sample Rate

Read

Read

Write

WriteSerialize Deserialize

2011 年 11 月 Altera Corporation FIR コンパイラ II MegaCore ファンクションユーザーガイド

Page 40: FIRコンパイラII MegaCore ファンクション ユー …...2011年11月 Altera Corporation FIRコンパイラII MegaCore ファンクション ユーザーガイド 1.このMegaCoreファンクションに

4‒8 第 4 章 : 機能の説明マルチ・チャネル動作

サンプル・レートがクロック・レートと同じ場合は、フィルタが対称的であるため

必要な乗算器は 25 個のみです。クロック・レートがサンプル・レートの 2 倍に増加

した場合、必要な乗算器数は 13 個に減ります。クロック・レートがサンプル・レー

トの 4 倍に設定されると、必要な乗算器数は 7 個に減ります。クロック・レートが

同じままで、新規データのサンプル・レートがわずか 36 MSPS(MSPS= 百万サンプ

ル/秒)の場合、リソースの消費は、サンプル・レートが 2 倍の場合と同じです。

マルチ・チャネル動作単一チャネル・システムを構築して、それをスケールアップしなくても、必要な

チャネル数を設定するだけで、マルチ・チャネル・システムを直接構築できます。

MegaCore ファンクションでは、複数のブロックをカット・アンド・ペーストする必

要はなく、ワイヤのベクトルを使用してスケールを変更します。

FIR コンパイラ II MegaCore ファンクションはベクトル化可能であるため、ブロック

に入力されるデータが FIR フィルタの複数のインスタンスを必要とするベクトルの

場合、単一 FIR コンパイラ II ブロックの後ろに複数の FIR ブロックが並列して作成さ

れます。デシメーション・フィルタが出力上でより小さなベクトルを必要とする場

合、個別フィルタからのデータは、出力ベクトルに自動的に時分割多重化されます。 この機能により、フィルタをカスタム・ロジックと結合させる必要がなくなります。

ベクトル化入力FIR コンパイラ II ブロックに対するデータ入出力はベクトルの場合があります。この

機能は、すべてのデータを搬送するために、クロック・レートが不十分な場合に使

用されます。例えば、20 MSPS で 10 チャネルの場合、10 × 20 = 200 MSPS の合計デー

タ・レートが必要です。システム・クロック・レートが 100 MHz に設定されている

場合、このデータを搬送するのに 2 本のワイヤが必要であるため、FIR コンパイラ IIでは幅 2 のベクトルを使用します。

この方法は、従来の方法と異なり、2 つの FIR フィルタを手動でインスタンス化し、

1 本のワイヤをそれぞれに並行に接続する必要がありません。各 FIR コンパイラ IIは、それ自身を内部でベクトル化します。例えば、FIR コンパイラ II ブロックは、2つの FIR フィルタを並列に構築し、ベクトルの 1 要素をそれぞれの FIR にワイヤで接

続することができます。出力においても同様のパラダイムが使用され、複数のワイ

ヤ上の高いデータ・レートがベクトルとして表現されます。

入出力ワイヤ数は、クロック・レート、サンプル・レート、およびチャネル数に基

づき、各 FIR コンパイラ II MegaCore ファンクションによって決定されます。

出力ワイヤ数は、FIR コンパイラ II MegaCore ファンクションのレート変更があれば、

それによっても影響されます。補間係数 2 の場合など、レート変更がある場合、出

力合計のサンプル・レートは 2 倍になります。出力チャネルは、そのレートをサ

ポートする も少ないワイヤ数(ベクトル幅)にパッキングされます。例えば、補

間係数 2 の FIR コンパイラ II フィルタでは、入力には 2 本のワイヤがありますが、

出力には 3 本のワイヤがある場合があります。

必要な多重化およびパッキングはすべて、FIR コンパイラ II MegaCore ファンクショ

ンによって実行されます。入出力に接続されているブロックには、同じベクトル幅

がなければなりません。ベクトル幅のエラーは通常、サンプル・レートを慎重に変

更することによって解決できます。

FIR コンパイラ II MegaCore ファンクション 2011 年 11 月 Altera Corporationユーザーガイド

Page 41: FIRコンパイラII MegaCore ファンクション ユー …...2011年11月 Altera Corporation FIRコンパイラII MegaCore ファンクション ユーザーガイド 1.このMegaCoreファンクションに

第 4 章 : 機能の説明 4‒9マルチ・チャネル動作

チャネル化ワイヤ数および各ワイヤ上で送信されるチャネル数は、以下の変数で指定できるパ

ラメータ設定によって決定されます。

■ clockRate は、システム・クロック周波数 (MHz) です。

■ inputRate は、チャネルごとのデータ・サンプル・レート(MSPS)です。

■ inputChannelNum はチャネル数です。チャネル番号には、0 から inputChannelNum–1が使用されます。

■ Period(つまり TDM ファクタ)は、サンプル・レートに対するクロック・レート

の比率で、使用可能なタイム・スロット数を決定します。

■ ChanWireCount は、すべてのチャネルを搬送するために必要なチャネル・ワイヤ

数です。それは、チャネル数を TDM ファクタで割ると求めることができます。 具体的には、

■ PhysChanIn = チャネル入力ワイヤの数

■ PhysChanOut = チャネル出力ワイヤの数

■ ChanCycleCount は、ワイヤごとに搬送されるチャネル数です。それは、チャネル

数をワイヤ数で割ることによって求めることができます。チャネル信号は、0 から ChanCycleCount–1 までカウントします。具体的には、

■ ChansPerPhyIn = 入力ワイヤごとのチャネル数

■ ChansPerPhyOut = 出力ワイヤごとのチャネル数

チャネル数がクロック周期よりも大きい場合、複数のワイヤが必要です。複数の FIRフィルタを並列に構築するために、デザイン内の各 FIR コンパイラ II MegaCore ファ

ンクションが内部でベクトル化されます。

図 4–9 に、TDM 係数 3 が 2 つの入力チャネルを 1 本の出力ワイヤに結合する方法を

示します(inputChannelNum = 2、ChanWireCount = 1、ChanCycleCount = 2)。

図4‒9. TDM係数 3 による 2チャネルのチャネル化 ( 注 1)

図 4‒9 の注:(1) この例では、output channelに 3つの使用可能なタイム・スロットがあり、3番目のタイム・スロットごとに valid信号が lowに

なると、「don't care」の値になります。valid信号が lowのときの channel信号の値は意味がありません。

clock

input_valid

input_data_channel_0

input_data_channel_1

input_channel

output_valid

TDM_output_data

output_channel

c0(0) c0(1) c0(2)

c1(0) c1(1) c2(2)

c0(0) c1(0) don’t care c0(0) c1(0) don’t care c0(0) c1(0)

2011 年 11 月 Altera Corporation FIR コンパイラ II MegaCore ファンクションユーザーガイド

Page 42: FIRコンパイラII MegaCore ファンクション ユー …...2011年11月 Altera Corporation FIRコンパイラII MegaCore ファンクション ユーザーガイド 1.このMegaCoreファンクションに

4‒10 第 4 章 : 機能の説明マルチ・チャネル動作

図 4–10 に、TDM 係数 3 が 4 つの入力チャネルを 2 本の出力ワイヤに結合する方法を

示します (inputChannelNum = 4、ChanWireCount = 2、ChanCycleCount = 2)。

チャネル信号は、データの同期およびスケジューリングに使用されます。この信号

は、ワイヤごとのチャネル・データの分割を指定します。チャネル信号は、データ

と同期し、0 から ChanCycleCount–1 までカウントすることに注意してください。した

がって、ChanCycleCount = 1 の場合、チャネル信号は、チャネル数と同じで、0 から

inputChannelNum–1 まで列挙されます。

ワイヤが 1 本の場合、チャネル信号はチャネル数と同じです。例えば、図 4–11 に、 1本のデータ・ワイヤ上に 4 チャネルのデータで無効サイクルがない場合を示します。

ChanWireCount > 1 の場合、チャネル信号は、実際のチャネル番号ではなく、ワイヤ

ごとのチャネル・データ分割数を指定します。チャネル信号は、0 から

inputChannelNum–1 までではなく、0 から ChanCycleCount–1 までカウントします。 図 4–12 に、2 本のワイヤ上に 4 チャネルで、無効サイクルがない場合を示します。

図4‒10. TDM係数 3 による 4 チャネルのチャネル化 ( 注 1)

図 4‒10 の注:(1) この例では、4チャネルを搬送するために 2本のワイヤが必要で、各ワイヤのサイクル数は 2です。チャネルは各ワイヤ上に

均等に分散され、3番目のタイム・スロットが各ワイヤ上で「don't care」になります。

clock

input_valid

input_data_channel_0

input_data_channel_1

input_data_channel_2

input_data_channel_3

input_channel

output_valid

output_data_wire_1

output_data_wire_2

output_channel

c0(0) c0(1) c0(2)

c1(0) c1(1) c1(2)

c2(0) c2(1) c2(2)

c3(0) c3(1) c3(2)

c0(0) c0(1) c0(2)c1(0) c1(1) c1(2)

c2(0) c2(1) c2(2)c3(0) c3(1) c3(2)

don’t care

don’t care

don’t care

don’t care

図4‒11. 1 ワイヤ上に 4 チャネル

valid

channel

data0

0 1 2 3 0 1 2 3

c0(0) c1(0) c2(0) c3(0) c0(1) c1(1) c2(1) c3(1)

図4‒12. 2 ワイヤ上に 4 チャネル

valid

channel

data0

data1

0 1 0 1 0 1 0 1

c0(0) c1(0) c0(1) c1(1) c0(2) c1(2) c0(3) c1(3)

c2(0) c3(0) c2(1) c3(1) c2(2) c3(2) c2(3) c2(3)

FIR コンパイラ II MegaCore ファンクション 2011 年 11 月 Altera Corporationユーザーガイド

Page 43: FIRコンパイラII MegaCore ファンクション ユー …...2011年11月 Altera Corporation FIRコンパイラII MegaCore ファンクション ユーザーガイド 1.このMegaCoreファンクションに

第 4 章 : 機能の説明 4‒11マルチ・チャネル動作

チャネル信号は 1 本のワイヤのままです。データ・ワイヤごとにチャネル信号が生

成されるのではないことに注意してください。それは、0 から ChanCycleCount–1 まで

カウントします。図 4–13 に 4 本のワイヤ上に同時に 4 チャネルがある場合を示しま

す。

図4‒13. 4 ワイヤ上に 4 チャネル

valid

channel

data0

data0

data1

data1

c0(0) c0(1) c0(2) c0(3) c0(4) c0(5) c0(6) c0(7)

0

c1(0) c1(1) c1(2) c1(3) c1(4) c1(5) c1(6) c1(7)

c2(0) c2(1) c2(2) c2(3) c2(4) c2(5) c2(6) c2(7)

c3(0) c3(1) c3(2) c3(3) c3(4) c3(5) c3(6) c3(7)

2011 年 11 月 Altera Corporation FIR コンパイラ II MegaCore ファンクションユーザーガイド

Page 44: FIRコンパイラII MegaCore ファンクション ユー …...2011年11月 Altera Corporation FIRコンパイラII MegaCore ファンクション ユーザーガイド 1.このMegaCoreファンクションに

4‒12 第 4 章 : 機能の説明マルチ・チャネル動作

チャネル入力 / 出力のフォーマットFIR コンパイラ II MegaCore ファンクションは、入力チャネル数が 2 以上の場合に、

入力および出力が同じフォーマットになっている必要があります。MegaCore ファン

クションへの入力データは、チャネルに応じて水平に配置し、配線に応じて垂直方

向に配置する必要があります。次に、出力は、同じオーダで抜け出し、水平方向の

行は 初で、垂直方向の列は 2 番目でカウントします。

例̶3ワイヤ上に 8チャネル図 4–14 に、3 ワイヤ上に 8 チャネルの入力フォーマットを示します。

図 4–15 に、3 ワイヤ上に 8 チャネルの予期される出力フォーマットを示します。

例̶4ワイヤ上に 4チャネル図 4–16 に、4 ワイヤ上に 4 チャネルの入力フォーマットを示します。

図4‒14. 3 ワイヤ上に8 チャネル(入力)

図4‒15. 3 ワイヤ上に8 チャネル(出力)

図4‒16. 4 ワイヤ上に4 チャネル(入力)

clk

xln_v

xln_0

xln_1

xln_2

C0 C1 C2

C3 C4 C5

C6 C7 --

clk

xOut_v

xOut_1

xOut_2

xOut_0 C0 C1 C2

C3 C4 C5

C6 C7 --

clk

xln_v

xln_0

xln_1

xln_2

C0

C1

C2

xln_3 C3

FIR コンパイラ II MegaCore ファンクション 2011 年 11 月 Altera Corporationユーザーガイド

Page 45: FIRコンパイラII MegaCore ファンクション ユー …...2011年11月 Altera Corporation FIRコンパイラII MegaCore ファンクション ユーザーガイド 1.このMegaCoreファンクションに

第 4 章 : 機能の説明 4‒13マルチ・チャネル動作

図 4–17 に、4 ワイヤ上に 4 チャネルの予期される出力フォーマットを示します。

この結果はバーティカルになるように見えますが、サイクル数が 1 であるため、そ

の各ワイヤ上でデータの一部のためのスペースのみがあります。

図 4–18 および図 4–19 に、クロック・レートがダブルされた時およびサンプル・

レートが変化しない時の入力フォーマットと出力フォーマットを示します。

例̶15 有効なサイクルと 17無効なサイクルによる 15チャネル無効なサイクルは、入力データ間に挿入されることがあります。TDM 係数 32 をもた

らすクロック・レート = 320、サンプル・レート = 10、 inputChannelNum = 15、および

補間係数が 10 である例を検討してみましょう。このケースでは、TDM 係数が

inputChannelNum より大きいです。 適化は、PhysChanIn = 1、ChansPerPhyIn = 15、PhysChanOut = 5、および ChansPerPhyOut = 3 のフィルタを生成します。

図4‒17. 4 ワイヤ上に4 チャネル(出力)

図4‒18. ダブル・クロック・レートによる 4ワイヤ上に 4 チャネル(入力)

図4‒19. ダブル・クロック・レートによる 4ワイヤ上に 4 チャネル(出力)

clk

xOut_v

xOut_0

xOut_1

xOut_2

C0

C1

C2

xOut_3 C3

clk

xln_v

xln_0

xln_1

C0 C1

C2 C3

clk

xOut_v

xOut_0

xOut_1

C0 C1

C2 C3

2011 年 11 月 Altera Corporation FIR コンパイラ II MegaCore ファンクションユーザーガイド

Page 46: FIRコンパイラII MegaCore ファンクション ユー …...2011年11月 Altera Corporation FIRコンパイラII MegaCore ファンクション ユーザーガイド 1.このMegaCoreファンクションに

4‒14 第 4 章 : 機能の説明マルチ・チャネル動作

このケースでは、TDM 係数からの入力データ・フォーマットの長さは、32 サイクル

です。チャネル数は 15 であるため、17 無効なサイクルに続いて、フィルタがブロッ

クに一緒に 15 の有効なサイクルを想定します( 図 4–20 を参照)。無効なサイクル数

が 17 より小さい場合、図 4–21. に示すように出力フォーマットが不正です。 後で、

追加の無効なサイクルを挿入することができますが、プロセスが開始された後、

データ・パケットを中断してはいけません(図 4–22 を参照)。 入力サンプル・レート

がクロック・レートより小さい場合、パターンは常に同じです:必要な有効サイク

ル数のチャネル数、および無効なサイクルの残りを持つ TDM 係数の限りで、サイク

ルを繰り返します。

図4‒20. 正しい入力フォーマット(15 有効なサイクル、17 無効なサイクル)

図4‒21. 誤った入力フォーマット(15 有効なサイクル、0無効なサイクル)

areset

clk

xin_v[0]

xin_c[7:0]

xin_0[7:0]

xout_v[0]

xout_c[7:0]

xout_0[17:0]

xout_1[17:0]

xout_2[17:0]

xout_3[17:0]

xout_4[17:0]

1 0

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 8

1 0

1 2 0 1 2 0 1 2 0 1 2 0 1 2 0 1 2 0 1 2 0 1 2 0 1 2 0

8 16 24 6

32 40 48 24

56 64 72 42

80 88 96 60

104 112 120 78

areset

clk

xin_v[0]

xin_c[7:0]

xin_0[7:0]

xout_v[0]

xout_c[7:0]

xout_0[17:0]

xout_1[17:0]

xout_2[17:0]

xout_3[17:0]

xout_4[17:0]

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 1 2 3 4 5 6 7 8 9 10 11 12 13 14 1

1 0

1 2 0 1 2 0 1 2 0 1 2 0 1 2 0 1 2 0 1 2 0 1 2 0 1

8 1

32 4

56 6

80 8

104 1

FIR コンパイラ II MegaCore ファンクション 2011 年 11 月 Altera Corporationユーザーガイド

Page 47: FIRコンパイラII MegaCore ファンクション ユー …...2011年11月 Altera Corporation FIRコンパイラII MegaCore ファンクション ユーザーガイド 1.このMegaCoreファンクションに

第 4 章 : 機能の説明 4‒15マルチ・チャネル動作

例̶11有効なサイクルと 9 無効なサイクルによる 22チャネルTDM 係数 20 をもたらすクロック・レート = 200、サンプル・レート = 10、inputChannelNum = 22 および補間係数が 10 である例を検討してみましょう。 このケー

スでは、TDM 係数が inputChannelNum より小さいです。 適化は、PhysChanIn = 2, ChansPerPhyIn = 11、PhysChanOut = 11 および ChansPerPhyOut = 2 のフィルタを生成し

ます。

このケースでは、TDM 係数からの入力データ・フォーマットの長さは、20 サイクル

です。チャネル数は 22 であるため、9 無効なサイクル(TDM 係数 – ChansPerPhyIn = 20 – 11) に続いて、11 (ChansPerPhyIn)の有効なサイクルを想定します( 図 4–23 を

参照)。無効なサイクル数が 17 より小さい場合、図 4–24 に示すように出力フォー

マットが不正です。終わりに、追加の無効なサイクルを挿入すること(無効なサイ

クル数が 9 以上になる場合があることを意味する)ができますが、プロセスが開始

された後、データ・パケットを中断してはいけません(図 4–25 を参照)。

図4‒22. 正しい入力フォーマット(15 有効なサイクル、20 無効なサイクル)

areset

clk

xin_v[0]

xin_c[7:0]

xin_0[7:0]

xout_v[0]

xout_c[7:0]

xout_0[17:0]

xout_1[17:0]

xout_2[17:0]

xout_3[17:0]

xout_4[17:0]

1 0

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 8

1 0

1 2 0 1 2 0 1 2 0 1 2 0 1 2 0 1 2 0 1 2 0 1 2 0 1

8 16 24 6 1

32 40 48 24 3

56 64 72 42 4

80 88 96 60 6

104 112 120 78 8

図4‒23. 正しい入力フォーマット(11 有効なサイクル、9無効なサイクル)

areset

clk

xin_v[0]

xin_c[7:0]

xin_0[7:0]

xin_1[7:0]

xout_v[0]

xout_c[7:0]

xout_0[17:0]

xout_1[17:0]

xout_2[17:0]

xout_3[17:0]

xout_4[17:0]

xout_5[17:0]

xout_6[17:0]

xout_7[17:0]

xout_8[17:0]

xout_9[17:0]

xout_10[17:0]

1 0

1 2 3 4 5 6 7 8 9 10 11 4 1 2

12 13 14 15 16 17 18 19 20 21 22 15 12 13

1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0

8

24

40

56

72

88

104

120

136

152

168

2011 年 11 月 Altera Corporation FIR コンパイラ II MegaCore ファンクションユーザーガイド

Page 48: FIRコンパイラII MegaCore ファンクション ユー …...2011年11月 Altera Corporation FIRコンパイラII MegaCore ファンクション ユーザーガイド 1.このMegaCoreファンクションに

4‒16 第 4 章 : 機能の説明マルチ・チャネル動作

図4‒24. 誤った入力フォーマット(11 有効なサイクル、0無効なサイクル)

図4‒25. 正しい入力フォーマット(11 有効なサイクル、11無効なサイクル)

areset

clk

xin_v[0]

xin_c[7:0]

xin_0[7:0]

xin_1[7:0]

xout_v[0]

xout_c[7:0]

xout_0[17:0]

xout_1[17:0]

xout_2[17:0]

xout_3[17:0]

xout_4[17:0]

xout_5[17:0]

xout_6[17:0]

xout_7[17:0]

xout_8[17:0]

xout_9[17:0]

xout_10[17:0]

1 2 3 4 5 6 7 8 9 10 11 1 2 3 4 5 6 7 8 9 10 11 0 150 186 177

12 13 14 15 16 17 18 19 20 21 22 12 13 14 15 16 17 18 19 20 21 22 0 206 172 212

0

00 01 00 01 00 01 00 01 00 01 0

clk

areset

xin_v[0]

xin_c[7:0]

xin_0[7:0]

xin_1[7:0]

xout_v[0]

xout_c[7:0]

xout_0[17:0]

xout_1[17:0]

xout_2[17:0]

xout_3[17:0]

xout_4[17:0]

xout_5[17:0]

xout_6[17:0]

xout_7[17:0]

xout_8[17:0]

xout_9[17:0]

xout_10[17:0]

1 0

2 3 4 5 6 7 8 9 10 11 4 1

13 14 15 16 17 18 19 20 21 22 15 12

11 0

0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1

8 16

24 32

40 48

56 64

72 80

88 96

104 112

120 128

136 144

152 160

168 176

1

12

FIR コンパイラ II MegaCore ファンクション 2011 年 11 月 Altera Corporationユーザーガイド

Page 49: FIRコンパイラII MegaCore ファンクション ユー …...2011年11月 Altera Corporation FIRコンパイラII MegaCore ファンクション ユーザーガイド 1.このMegaCoreファンクションに

第 4 章 : 機能の説明 4‒17マルチ・チャネル動作

例̶スーパー・サンプル・レートサンプル・レートはクロック・レートを超えている「スーパー・サンプル・レート」

を検討してみましょう。この例では、クロック・レート = 100、サンプル・レート = 200、inputChannelNum = 1、およびシングル・レートです。 適化は、 PhysChanIn = 2、ChansPerPhyIn = 1、PhysChanOut = 2 および ChansPerPhyOut = 1 のフィルタを生成しま

す。

入力フォーマットは、図 4–26 に示す FIR フィルタによってを想定されます。 A0 は、

チャネルの 初のサンプルであり、A1 は チャネル A の 2 番目のサンプルなどです。

inputChannelNum = 2 の場合、想定される入力フォーマットは図 4–27 に示されます。

図4‒26. inChans=1 によるスーパー・サンプル・レート・フィルタ(clkRate=100、 inputRate=200)

clk

xln_v

xln_0

xln_1

xOut_v

xOut_c

xOut_0

xOut_1

A0 A2 A4 A6 A8 A10 A12 A14 A16 A18 A20 A22 A24 A26 A28

A1 A3 A5 A7 A9 A11 A13 A15 A17 A19 A21 A23 A25 A27 A29

A0 A2 A4 A6 A8 A10 A12 A14

A1 A3 A5 A7 A9 A11 A13 A15

00

00

図4‒27. inChans=2 によるスーパー・サンプル・レート・フィルタ(clkRate=100、inputRate=200)

clk

xln_v

xln_0

xln_1

xOut_v

xOut_c

xOut_0

xOut_1

xOut_2

xOut_3

xln_2

xln_3

A0 A2 A4 A6 A8 A10 A12 A14 A16 A18 A20 A22 A24 A26 A28

A1 A3 A5 A7 A9 A11 A13 A15 A17 A19 A21 A23 A25 A27 A29

A0 A2 A4 A6 A8 A10 A12 A14 A16 A18 A20 A22 A24 A26 A28

A1 A3 A5 A7 A9 A11 A13 A15 A17 A19 A21 A23 A25 A27 A29

A0 A2 A4 A6 A8 A10 A12 A14

A1 A3 A5 A7 A9 A11 A13 A15

A0 A2 A4 A6 A8 A10 A12 A14

A1 A3 A5 A7 A9 A11 A13 A15

00

00

00

00

2011 年 11 月 Altera Corporation FIR コンパイラ II MegaCore ファンクションユーザーガイド

Page 50: FIRコンパイラII MegaCore ファンクション ユー …...2011年11月 Altera Corporation FIRコンパイラII MegaCore ファンクション ユーザーガイド 1.このMegaCoreファンクションに

4‒18 第 4 章 : 機能の説明複数の係数バンク

複数の係数バンクFIR コンパイラ II MegaCore ファンクションは複数の係数バンクをサポートします。 FIR フィルタは、動的に異なる係数バンク間で切り替えることで、フィルタが係数

セットの無限数間で切り替えることがイネーブルになります。 したがって、1 つの係

数セットを使用しているときに、他の係数セットを更新することができます。また、

別のチャンネルで異なる係数バンクを設定し、係数セットを切り替えるには、チャ

ネル信号を使用することができます。

ファイルから複数セットの係数をロードするときに、MegaCore ファンクションは複

数の係数バンクを使用します。3–2 ページの「ファイルから係数のロード」を参照し

てください。指定された係数バンクの数に基づいて、バンク信号(bankIn)および

入力データ(xIn)信号の 2 つの追加の信号をサポートするために MegaCore ファン

クションが ast_sink_data 信号の幅を拡張します。 上位ビット (MSB) は、バンク

信号を表します。 下位ビット(LSB)は、入力データを表します。

図 4–28 に、4 係数バンクによるシングル・チャネル・フィルタのタイミング図を示

します。フィルタは実行しているときに、係数バンクが bankIn 信号を使用して 0 ~

3 で切り替えることができます。

図 4–29 に、4 係数バンクによる 4 チャネル・フィルタのタイミング図を示し、各

チャネルは個別に対する係数セットがあります。異なるチャネルのバンク入力は、

フィルタ操作を通して、それぞれそのチャネル番号で駆動されます。

図4‒28. 4 係数バンクによるシングル・チャネル・フィルタのタイミング図

clk

ast_sink_valid

ast_sink_data[9:0]

bankin_0[1:0]

xin_0[7:0]

xout_v[0]

xout_0[21:0]

256 -478 -179 118 408 -259 -159 135 427 -433 -79 122 481 -396 -15 48 429 -262

1 2 3 0 1 2 3 0 1 2 3 0 1 2 3 0 1 2

34 77 118 -104 -3 97 -121 -85 79 -79 122 -31 116 -15 48 -83 -6

411 279

0

0

0

0

0

1

図4‒29. 4 係数バンクによる 4チャネル・フィルタのタイミング図

clkast_sink_valid

ast_sink_data[39:0]bankin_0[1:0]

xin_0[7:0]bankin_1[1:0]

xin_1[7:0]bankin_2[1:0]

xin_2[7:0]bankin_3[1:0]

xin_3[7:0]xout_v[0]

xout_0[21:0]xout_1[21:0]xout_2[21:0]xout_3[21:0]

-15... -17... -55... -20... -23... -30... -30... -16... -21... -24... -14... -14... -12... -41... -25... -17... -26...

-41 24 29 -65 -109 34 -15 18 77 -82 25 127 -42 -18 -96 -4 79

52 67 71 -78 -82 -22 55 115 120 -51 -28 -124 -81 -16 67 -104

46 -37 22 29 -102 -125 -12 -10 -21 -48 56 15 32 31 -23 125 -105

109 96 -52 67 33 -29 99 57 29 125 122 -114 -39 21 88 4

-82 -75 7 -12 -261 -1104 186 157 -4

46 -83 -109 -13 -1

0000

000

00

0 10

000

1

2

3

FIR コンパイラ II MegaCore ファンクション 2011 年 11 月 Altera Corporationユーザーガイド

Page 51: FIRコンパイラII MegaCore ファンクション ユー …...2011年11月 Altera Corporation FIRコンパイラII MegaCore ファンクション ユーザーガイド 1.このMegaCoreファンクションに

第 4 章 : 機能の説明 4‒19係数のリロード

係数のリロード内部データ係数は、入力 address、write data、write enable、read data および read valid信号の Memory-Mapped インタフェースからアクセスされます。Avalon Memory-Mapped(Avalon-MM)インタフェースは、メモリ・マップド・システムのマ

スターとスレーブ・コンポーネント上のリード / ライト・インタフェースとして機能

します。メモリ・マップド・システムのコンポーネントは、マイクロプロセッサ、

メモリ、UART、タイマ、およびマスター・インタフェースとスレーブ・インタ

フェースを接続するシステム・インタコネクト・ファブリックが含まれています。

Avalon-MM インタフェースは、単純な、固定サイクルのリード / ライト転送をサポー

トする SRAM からバースト転送が可能なパイプライン・インタフェースの複雑なま

で、コンポーネントのさまざまなことを説明します。 Read モードでは、メモリ・

マップドの係数は、指定されたアドレス範囲を読み出されます。Write モードでは、

刑すが指定されたアドレス範囲で書き込まれます。Read/Write モードでは、係数が指

定されるアドレスの範囲で読み出しまたは書き込みできます。このインタフェース

には、別のバス・クロックを使用することができます。係数のリロードのオプショ

ンが無効になっている時、プロセッサが指定されるアドレス範囲をアクセスできな

いで、係数データが読み出しまたは書き込みしません。

係数のリロードがフィルタの実行時にいつでも開始されます。ただし、予期しない

結果を避けるために、希望するすべての出力データを得られた後にのみ、係数をリ

ロードする必要があります。複数の係数バンクを使用している場合、使用されてい

ない係数バンクをリロードすることができ、また、係数のリロードが完了すると、

新しい係数セットに切り替えることができます。新しいデータに係数をリロードす

る前に、coeff_in_areset信号をトグルする必要があります。新係数のデータは、

係数リロードの処理が成功したかどうかを確認するために係数リロードの後に読み

出されます。coeff_in_weをデアサートすることにより係数のリロードが終了すると

き、新係数をリロードされるフィルタにすぐに挿入されます。

対称または抗対称フィルタは、少ない純粋な係数を持ち、少ないレジスタを使用し

て、そして係数をリロードするためにより少ない書き込むの必要があります。例え

ば、37 タップのシンメトリカル・フィルタのために、 初の 19 アドレスにのみ書き

込みしなければなりません。フィルタのアドレス空間の一部ではないため、全 37 の

アドレスに書き込むときに、 後の 18 のアドレスは無視されます。同様に、 後の

18 アドレスから読み出す係数のデータも無視されます。

複数の係数バンクが使用されたとき、すべての係数のアドレスはバンク番号に応じ

て連続したオーダで配置されます。

次の例では、4 係数バンクによる 37 タップのシンメトリカル / アンチ・シンメトリ

カル・フィルタを示します。

アドレス 0–18:バンク 0

アドレス 19–37:バンク 1

アドレス 38–56:バンク 2

アドレス 57–75:バンク 3

次の例では、2 係数バンクによる 37 タップの非シンメトリカル / アンチ・シンメト

リカル・フィルタを示します。

アドレス 0–36:バンク 0

アドレス 37–73:バンク 1

2011 年 11 月 Altera Corporation FIR コンパイラ II MegaCore ファンクションユーザーガイド

Page 52: FIRコンパイラII MegaCore ファンクション ユー …...2011年11月 Altera Corporation FIRコンパイラII MegaCore ファンクション ユーザーガイド 1.このMegaCoreファンクションに

4‒20 第 4 章 : 機能の説明係数のリロード

係数ビット幅のパラメータが 16 ビット以下の場合、ライト・データ幅は 16 ビット

に固定されます。係数ビット幅のパラメータが 16 ビットより大きい場合、ライト・

データ幅は 32 ビットに固定されます。

図 4–30 に、Read/Write モードで係数リロードのタイミング図を示します。このコン

フィギュレーションでは、9 の係数があります。 9 クロック・サイクルのライト・サ

イクルは、図 4–30 に示すようにすべての係数データ・セットをリロードするために

実行されます。 ライト・サイクルを完了するには、coeff_in_we信号をアサートし、

新しい係数データと共にアドレス(ベース・アドレスから 大アドレスまで)を提

供します。次、新しい係数データが係数のアドレスに対するメモリにロードします。

coeff_in_we 信号をアサートするとき、新しい係数データは、書き込みサイクル中に

読み出されます。coeff_out_valid信号が High の時、リード・データが

coeff_out_data上に使用可能です。

図 4–31 に、Write モードで係数リロードのコンフィギュレーションのタイミング図

を示します。このモードでは、1 の係数データがリロードされます。新しい係数デー

タ(123)は、シングル・アドレス(7)にロードされます。

図4‒30. Read またはWrite モードで係数リロードのタイミング図

clk

coeff_in_areset

coeff_in_address[11:0]

coeff_in_data[15:0]

coeff_in_we[0]

coeff_out_data[15:0]

coeff_out_valid[0]

-1 0 1 2 3 4 5 6 7 8 0 1 2 3 4 5 6 7 8

-1

0 -26 45

-1

45 -50 7 -121 -32 49 -1 108 124 -1

-25 13 80 127 80 0 -26 0 -50 7 -1 -32 49 -1 108 124 45

図4‒31. Write モードで係数リロードのタイミング図

clk

coeff_in_areset

coeff_in_address[11:0]

coeff_in_data[15:0]

coeff_in_we[0]

-1 7

0 123

-1

0

FIR コンパイラ II MegaCore ファンクション 2011 年 11 月 Altera Corporationユーザーガイド

Page 53: FIRコンパイラII MegaCore ファンクション ユー …...2011年11月 Altera Corporation FIRコンパイラII MegaCore ファンクション ユーザーガイド 1.このMegaCoreファンクションに

第 4 章 : 機能の説明 4‒21係数のリロード

図 4–32 に、Read モードで係数リロードのコンフィギュレーションのタイミング図を

示します。 coeff_in_address が 3 のとき、そのアドレスにある係数データを読み出

します。また、係数データ 80 は、coeff_out_valid信号が High になっているとき、 coeff_out_data 上に使用可能です。

図 4–33 に、複数の係数バンクと書き込み可能な係数によるフィルタのタイミング図

を示します。これは、対称で、13 タップのフィルタです。フィルタは、バンク 0 で

実行されている間、バンク 1(アドレス 7-13)の係数データがリロードされます。

係数のリロードが完了すると、バンク 1 はフィルタのインパルス応答を生成するた

めに使用され、バンク 1 からの新しい係数データはフィルタ出力で観察することが

できます。

図4‒32. Read モードで係数リロードのタイミング図

clk

coeff_in_areset

coeff_in_address[11:0]

coeff_out_data[15:0]

coeff_out_valid[0]

-1 3

0 0 80

-1

図4‒33. 複数の係数バンクのタイミング図

clk

xin_v[0]

bankin_0[0]

xin_0[7:0]

coeff_in_data[15:0]

coeff_in_address[11:0]

coeff_in_we[0]

xout_v[0]

xout_0[19:0]

51 -14 -48 33 112 125 -10 -71 119 40 -105 -125 -114 0 1 0

-58 18 106 -34 119 112 105 -1

7 8 9 10 11 12 13

342 1530 3636 5490 6400 8064 11 16 20 20 23 28 30 26 16 12 -14 12 -22 -51 -27 -26 -13 5198 6612 0 -58 18 106 119 112 105 112

-1

6

0

-1

-13 -82 -34

2011 年 11 月 Altera Corporation FIR コンパイラ II MegaCore ファンクションユーザーガイド

Page 54: FIRコンパイラII MegaCore ファンクション ユー …...2011年11月 Altera Corporation FIRコンパイラII MegaCore ファンクション ユーザーガイド 1.このMegaCoreファンクションに

4‒22 第 4 章 : 機能の説明信号

信号表 4–2 に、Avalon-ST インタフェースを持つ FIR コンパイラ II MegaCore ファンクショ

ンの入力および出力信号を示します。

表4‒2. Avalon-ST インタフェースを持つ FIR コンパイラ II の信号 ( その1 )

信号 入力 / 出力 幅 説明

clk 入力 1 クロック信号はすべての内部 FIR コンパイラ II フィルタ・レジスタをクロックするために使用されます。

reset_n 入力 1非同期のアクティブ Low リセット信号です。clk の立ち上がりエッジで FIR コンパイラ II フィルタの制御回路をリセットします。

coeff_in_clk 入力 1係数のリロード・メカニズムのためのクロック信号です。このクロックはシステム・クロックよりも低いレートを設定できます。

coeff_in_areset 入力 1 係数のリロード・メカニズムのための非同期のアクティブ High リセット信号です。

ast_sink_ready 出力 1

現在のクロック・サイクルでデータを受け入れることができる FIR フィルタによってこの信号をアサートされます。バックプレッシャがオフの場合、それが常にアサートされます。

ast_sink_valid 入力 1

データが有効であるとこの信号がアサートされます。ast_sink_valid がアサートされていない場合、ast_sink_valid信号を再アサートされるまでに、FIR処理は停止します。

FIR コンパイラ II MegaCore ファンクション 2011 年 11 月 Altera Corporationユーザーガイド

Page 55: FIRコンパイラII MegaCore ファンクション ユー …...2011年11月 Altera Corporation FIRコンパイラII MegaCore ファンクション ユーザーガイド 1.このMegaCoreファンクションに

第 4 章 : 機能の説明 4‒23信号

ast_sink_data 入力

(データ幅 + バンク幅) × チャネル入力ワイヤの数

(PhysChanIn)

ここで、

バンク幅 = Log2(係数セットの数)

サンプル入力データです。マルチチャネル動作(チャネル入力ワイヤ > 1)の場合、ast_sink_data の 下位ビットは FIR コンパイラ II フィルタの xln_0 にマップされます(図 4–5 を参照)。

例:

ast_sink_data[7:0] --> xln_0[7:0]

ast_sink_data[15:8] --> xln_1[7:0]

ast_sink_data[23:16] --> xln_2[7:0]

複数の係数バンクの場合、チャネル・データの 上位ビットはバンク入力信号にマップされ、チャネル・データの 下位ビットはデータ入力信号にマップされます。

例、

4 係数バンクによるシングル・チャネル:

ast_sink_data[9:8] --> BankIn_0

ast_sink_data[7:0] --> xln_0

4 係数バンクによるマルチチャネル(4 チャネル)

ast_sink_data[9:8] --> BankIn_0

ast_sink_data[7:0] --> xln_0

ast_sink_data[19:18] --> BankIn_1

ast_sink_data[17:10] --> xln_1

ast_sink_data[29:28] --> BankIn_2

ast_sink_data[27:20] --> xln_2

ast_sink_data[39:38] --> BankIn_3

ast_sink_data[37:30] --> xln_3

ast_sink_sop 入力 1受信サンプル・グループの開始をマークします。パケット開始(SOP)はチャネル 0 からのサンプルとして解釈されます。

ast_sink_eop 入力 1

受信サンプル・グループの終了をマークします。Nチャネルに関連付けられているデータがある場合、サンプルが 後のチャネル(つまり、チャネル N - 1)に属するとき、パケット終了 EOP(End of Packet)はHigh にドライブされ、データ入力で表示されます。

ast_sink_error 入力 2

シンク側の Avalon-ST プロトコル違反を示すエラー信号:

■ 00:エラーなし

■ 01:SOP の欠落

■ 10:EOP の欠落

■ 11:予期しない EOP

他のエラーは 11 にマークします。

表4‒2. Avalon-ST インタフェースを持つ FIR コンパイラ II の信号 ( その2 )

信号 入力 / 出力 幅 説明

2011 年 11 月 Altera Corporation FIR コンパイラ II MegaCore ファンクションユーザーガイド

Page 56: FIRコンパイラII MegaCore ファンクション ユー …...2011年11月 Altera Corporation FIRコンパイラII MegaCore ファンクション ユーザーガイド 1.このMegaCoreファンクションに

4‒24 第 4 章 : 機能の説明信号

ast_source_ready 入力 1

データを受け入れることができる場合、ダウンストリーム・モジュールによってアサートされます。バックプレッシャがオフの場合、FIR 出力を停止せず、ast_source_ready が無視されます。

ast_source_valid 出力 1 MegaCore ファンクションは出力への有効データが存在するときに、この信号をアサートします。

ast_source_channel 出力Log2(ワイヤあたりのチャネル数)

その結果データの出力で表示されているチャネル・インデックスを示します。

ast_source_data 出力

データ幅 × チャネル出力ワイヤの数

(PhysChanOut)

FIR コンパイラ II フィルタの出力です。マルチ・チャネル動作(チャネル入力ワイヤ > 1)の場合、ast_source_data の 下位ビットは FIR コンパイラ IIフィルタの xOut_0 にマップされます(図 4–7 を参照)。

例:

xOut_0[7:0] --> ast_source_data[7:0]

xOut_1[7:0] --> ast_source_data[15:8]

xOut_2[7:0]--> ast_source_data[23:16]

ast_source_sop 出力 1発信 FIR コンパイラ II フィルタの結果グループの開始をマークします。「1」の場合、チャネル 0 に対応する結果は出力です。

ast_source_eop 出力 1発信 FIR フィルタ結果グループの終了をマークします。「1」の場合、チャネル N-1 に対応する結果は出力です。ここで、N はワイヤあたりのチャネル数です。

ast_source_error 出力 2

ソース側の Avalon-ST プロトコル違反を示すエラー信号:

■ 00:エラーなし

■ 01:SOP の欠落

■ 10:EOP の欠落

■ 11:予期しない EOP

他のエラーは 11 にマークします。

coeff_in_address 入力 係数の数 新係数データを書くためのアドレス入力。

coeff_in_we 入力 1 メモリ・マップドの係数のためのライト・イネーブル。

coeff_in_data 入力 係数幅 データ係数の入力。

coeff_out_valid 出力 1 係数リードの有効信号。

coeff_out_data 出力 係数幅データ係数の出力。アドレスでメモリの係数は coeff_in_address によって指定します。

表4‒2. Avalon-ST インタフェースを持つ FIR コンパイラ II の信号 ( その3 )

信号 入力 / 出力 幅 説明

FIR コンパイラ II MegaCore ファンクション 2011 年 11 月 Altera Corporationユーザーガイド

Page 57: FIRコンパイラII MegaCore ファンクション ユー …...2011年11月 Altera Corporation FIRコンパイラII MegaCore ファンクション ユーザーガイド 1.このMegaCoreファンクションに

2011 年 11 月 Altera Corporation

追加情報

ここでは、このドキュメントとアルテラの追加の情報について説明します。

改訂履歴以下の表に、本資料の改訂履歴を示します。

アルテラへのお問い合わせAltera 製品に関する 新情報については、次の表を参照してください。.

日付 バージョン 変更内容

2011 年 11 月 11.1 第 1 章のこの MegaCore ファンクションについてに、Stratix V および Cyclone III の新しいリソース使用率の情報を更新。

2011 年 5 月 11.0■ 第 1章のこのMegaCoreファンクションについてに、Stratix Vの新しいリソース使

用率の情報を更新。

■ 第 3 章のパラメータの設定を更新。

2010 年 12 月 10.1

■ 第 3 章のパラメータの設定 と第 4 章の機能の説明に新しい出力オプションおよび複数の係数バンクを追加して更新。

■ 第 1章のこのMegaCoreファンクションについてに新しいリソース使用率の情報を更新。

2010 年 7 月 10.0 第 3 章のパラメータの設定 と第 4 章の機能の説明 にバックプレッシュおよび係数のリロードの機能を更新。

2010 年 1 月 9.1 SP1 初版。

お問い合わせ先 (1) お問い合わせ方法 アドレス

技術的なご質問 ウェブサイト www.altera.co.jp/support

技術トレーニングウェブサイト www.altera.co.jp/training

電子メール [email protected]

製品資料 ウェブサイト www.altera.co.jp/literature

一般的なお問い合わせ 電子メール [email protected]

ソフトウェア・ライセンスに関するお問い合わせ

電子メール [email protected]

表の注:(1) 詳しくは、日本アルテラまたは販売代理店にお問い合わせください。

FIR コンパイラ II MegaCore ファンクションユーザーガイド

Page 58: FIRコンパイラII MegaCore ファンクション ユー …...2011年11月 Altera Corporation FIRコンパイラII MegaCore ファンクション ユーザーガイド 1.このMegaCoreファンクションに

Info‒2 追加情報表記規則

表記規則本資料では、以下の表に示す表記規則を使用しています。

書体 意味

太字かつ文頭が大文字

コマンド名、ダイアログ・ボックス・タイトル、ダイアログ・ボックス・オプション、およびその他の GUI ラベルを表します。例えば、 Save As ダイアログ・ボックス。GUI エレメントの場合、大文字は GUI と一致します。

太字

ディレクトリ名、プロジェクト名、ディスク・ドライブ名、ファイル名、ファイルの拡張子、ソフトウェア・ユーティリティ名およびその他の GUIラベルを表します。 例:\qdesigns ディレクトリ、d:ドライブ、およびchiptrip.gdf ファイル。

斜体かつ文頭が大文字資料のタイトルを表します。例: AN 519: Stratix IV デザイン・ガイドライン。

斜体

変数を表します。例:n + 1。

変数名は、山括弧( )で囲んでいます。例:(ファイル名)および(プロジェクト名).pof ファイル。

文頭が大文字キーボード・キーおよびメニュー名を表します。例:Delete キー、Optionsメニュー。

「小見出しタイトル」かぎ括弧は、資料内の小見出しおよび Quartus II Help トピックのタイトルを表します。例:「表記規則」

Courier フォント

信号、ポート、レジスタ、ビット、ブロック、およびプリミティブ名を表します。例:data1、tdi、および input。アクティブ Low 信号は、サフィックス n で表されています。 例:resetn。

コマンドライン・コマンド、および表示されているとおりに入力する必要があるものを表します。 例:c:\qdesigns\tutorial\chiptrip.gdf。

また、Report ファイルなどの実際のファイルのセクション、ファイルの構成要素への参照(例:AHDL キーワードの SUBDESIGN)、ロジック・ファンクション名(例:TRI)も Courierフォントで表記されています。

r 矢印は、Enter キーを押すことを示しています。

1.、2.、3.、およびa.、b.、c.、など

手順など項目の順序が重要なものは、番号が付けられリスト形式で表記されています。

■ ■ ■ 箇条書きの黒点などは、項目の順序が重要ではないものに付いています。 1 指差しマークは、要注意箇所を表しています。

h 疑問符は、関連情報を持つソフトウェア・ヘルプ・システムを案内しています。

f 足跡マークは、詳細情報の参照先を示しています。

c 注意は、製品または作業中のデータに損傷を与えたり、破壊したりするおそれのある条件や状況に対して注意を促します。

w 警告は、ユーザーに危害を与えるおそれのある条件や状況に対して注意を促します。

エンベロープは、アルテラ・ウェブサイトの「メール配信サービス・センター」ページへのリンクです。ここでは、アルテラの文書の更新通知を受け取るためにサインアップすることができます。

FIR コンパイラ II MegaCore ファンクション 2011 年 11 月 Altera Corporationユーザーガイド