• 検索結果がありません。

7 シリーズ FPGA コンフィギャラブル ロジック ブロック ユーザー ガイド (UG474)

N/A
N/A
Protected

Academic year: 2021

シェア "7 シリーズ FPGA コンフィギャラブル ロジック ブロック ユーザー ガイド (UG474)"

Copied!
78
0
0

読み込み中.... (全文を見る)

全文

(1)

7

シ リ ーズ

FPGA

コ ン フ ィ ギ ャ ラ ブル

ロ ジ ッ ク

ブ ロ ッ ク

ユーザー

ガ イ ド

UG474 (v1.7) 2014 年 11 月 17 日

本資料は表記のバージョンの英語版を翻訳したもので、内容に相違が生じる場合には原文を優先しま

す。資料によっては英語版の更新に対応していないものがあります。日本語版は参考用としてご使用の

上、最新情報につきましては、必ず最新英語版をご参照ください。

(2)

maximum extent permitted by applicable law:(1) Materials are made available "AS IS" and with all faults, Xilinx hereby DISCLAIMS ALL WARRANTIES AND CONDITIONS, EXPRESS, IMPLIED, OR STATUTORY, INCLUDING BUT NOT LIMITED TO WARRANTIES OF MERCHANTABILITY, NON-INFRINGEMENT, OR FITNESS FOR ANY PARTICULAR PURPOSE; and (2) Xilinx shall not be liable (whether in contract or tort, including negligence, or under any other theory of liability) for any loss or damage of any kind or nature related to, arising under, or in connection with, the Materials (including your use of the Materials), including for any direct, indirect, special, incidental, or consequential loss or damage (including loss of data, profits, goodwill, or any type of loss or damage suffered as a result of any action brought by a third party) even if such damage or loss was reasonably foreseeable or Xilinx had been advised of the possibility of the same.Xilinx assumes no obligation to correct any errors contained in the Materials or to notify you of updates to the Materials or to product specifications.You may not reproduce, modify, distribute, or publicly display the Materials without prior written consent.Certain products are subject to the terms and conditions of Xilinx’s limited warranty, please refer to Xilinx’s Terms of Sale which can be viewed at

http://www.xilinx.com/legal.htm#tos; IP cores may be subject to warranty and support terms contained in a license issued to you by Xilinx.Xilinx products are not designed or intended to be fail-safe or for use in any application requiring fail-safe performance; you assume sole risk and liability for use of Xilinx products in such critical applications, please refer to Xilinx’s Terms of Sale which can be viewed at

http://www.xilinx.com/legal.htm#tos.

Automotive Applications Disclaimer

XILINX PRODUCTS ARE NOT DESIGNED OR INTENDED TO BE FAIL-SAFE, OR FOR USE IN ANY APPLICATION REQUIRING FAIL-SAFE PERFORMANCE, SUCH AS APPLICATIONS RELATED TO:(I) THE DEPLOYMENT OF AIRBAGS, (II) CONTROL OF A VEHICLE, UNLESS THERE IS A FAIL-SAFE OR REDUNDANCY FEATURE (WHICH DOES NOT INCLUDE USE OF SOFTWARE IN THE XILINX DEVICE TO IMPLEMENT THE REDUNDANCY) AND A WARNING SIGNAL UPON FAILURE TO THE OPERATOR, OR (III) USES THAT COULD LEAD TO DEATH OR PERSONAL INJURY.CUSTOMER ASSUMES THE SOLE RISK AND LIABILITY OF ANY USE OF XILINX PRODUCTS IN SUCH APPLICATIONS.

© Copyright 2011–2014 Xilinx, Inc. Xilinx, the Xilinx logo, Artix, ISE, Kintex, Spartan, Virtex, Vivado, Zynq, and other designated brands included herein are trademarks of Xilinx in the United States and other countries.All other trademarks are the property of their respective owners. こ の資料に関す る フ ィ ー ド バ ッ ク お よ び リ ン ク な ど の問題につ き ま し ては、[email protected]ま で、 ま たは各 ページの右下にあ る [フ ィ ー ド バ ッ ク 送信] ボ タ ン を ク リ ッ ク す る と 表示 さ れ る フ ォームか ら お知 ら せ く だ さ い。いただ き ま し た ご意見を参考に早急に対応 さ せていただ き ます。 なお、 こ の メ ールア ド レ スへのお問い合わせは受け付けてお り ません。 あ ら か じ めご了承 く だ さ い。

改訂履歴

次の表に、 こ の文書の改訂履歴を示 し ます。 日付 バージ ョ ン 内容 2011 年 3 月 1 日 1.0 初版 2011 年 3 月 28 日 1.1 表1-2に XC7K355T、XC7K420T、 お よ び XC7K480T デバ イ ス を追加。 わか り や す く す る ために文章の一部を変更。 2011 年 9 月 30 日 1.2 「7 シ リ ーズ CLB の特徴」の最後に文章を追加。表1-2お よ び表1-3を追加。表1-2 の CLB 機能 を 更新。「CLB の配置」 の最初に文章 を 追加、「ASMBL アーキ テ ク チ ャ 」 セ ク シ ョ ンお よ び 「CLB ス ラ イ ス」 の見出 し を追加。「キ ャ リ ー ロ ジ ッ ク 」 の最後に段落を追加。「キ ャ リ ーロ ジ ッ ク の使用法」 の最後に文章を追加。「ス ラ イ ス マルチプ レ ク サーの タ イ ミ ン グパ ラ メ ー タ ー」 に、2 つ目の文章を追加。 わか り やす く す る ために、表5-2、表5-4、 お よ び表5-5を修正。「ス タ ッ ク ド シ リ コ ン イ ン タ ー コ ネ ク ト (SSI) テ ク ノ ロ ジ を使用す る デバ イ ス」 セ ク シ ョ ン を追加。 2012 年 1 月 30 日 1.3 表1-1を変更。「分散 RAM (SLICEM のみで使用可能)」に、5 段落目を追加。 わか り やす く す る ために、「グ ロ ーバル制御信号 GSR お よ び GTS」の最後の段落を修正。

(3)

2012 年 11 月 5 日 1.4 「7 シ リ ーズ CLB の特徴」 の最後の箇条書 き の 「均一性」 を 「最適化」 に変更。「デ

バ イ ス リ ソ ー ス」 の最初の文章で、 「均一性」 を 「ス ケー ラ ブル」 に変更。表1-1

か ら 7A350T デバ イ ス を削除。表1-3か ら 7V1500T お よ び 7VH290T デバ イ ス を 削除。「分散 RAM (SLICEM のみで使用可能)」、「シ フ ト レ ジ ス タ (SLICEM のみ

)」、「フ リ ッ プ フ ロ ッ プ プ リ ミ テ ィ ブ」に、 『7 シ リ ーズ FPGA ラ イ ブ ラ リ ガ イ ド 』 の参照先追加。図5-2で、TCEOを TCECKに変更、「一般的な タ イ ミ ン グ特性」 の 最初の箇条書 き を変更。 2013 年 8 月 6 日 1.5 Artix®-7 デバ イ ス を追加。 イ ンプ リ メ ン テーシ ョ ンツールの参照先を更新。 2014 年 8 月 11 日 1.6 表1-1~表1-3の注記を変更。22ページの 「制御信号」 の極性に関す る 記述を 「独 立 し た」 か ら 「プ ロ グ ラ ム可能」 に変更。表2-3にプ リ ミ テ ィ ブ列を追加 し て注記 を削除。図2-6~図2-14の名前を変更 (マ イ ナー修正)。52ページの 「 ク ロ ッ ク – WCLK」、53ページの「 ク ロ ッ ク – CLK」、お よ び54ページの「 ク ロ ッ ク - C」を改訂。 2014 年 11 月 17 日 1.7 表1-1に、 新たに Artix 7A15T デバ イ ス の記述を追加。 日付 バージ ョ ン 内容

(4)
(5)

改訂履歴. . . 2

こ のユーザー

ガ イ ド について

内容 . . . 7 その他の リ ソ ース . . . 8

1

:

概要

CLB の概要. . . 9 7 シ リ ーズ CLB の特徴. . . 10 デバ イ ス リ ソ ース. . . 10 推奨デザ イ ン フ ロ ー. . . 12 ピ ン配置の計画 . . . 12

2

:

機能の詳細

CLB の配置. . . 15 ス ラ イ ス の説明 . . . 18 ル ッ ク ア ッ プテーブル (LUT) . . . 21 ス ト レージエ レ メ ン ト . . . 21 分散 RAM (SLICEM のみで使用可能). . . 23 シ フ ト レ ジ ス タ (SLICEM のみ) . . . 34 マルチプ レ ク サー . . . 39 キ ャ リ ーロ ジ ッ ク. . . 43

3

:

デザイ ン入力

デザ イ ンのチ ェ ッ ク リ ス ト . . . 47 CLB リ ソ ース の使用法. . . 48 プ リ ミ テ ィ ブ. . . 48

4

:

ア プ リ ケーシ ョ ン

分散 RAM のアプ リ ケーシ ョ ン . . . 57 シ フ ト レ ジ ス タ のアプ リ ケーシ ョ ン . . . 57 キ ャ リ ーロ ジ ッ ク のアプ リ ケーシ ョ ン . . . 59

5

:

タ イ ミ ング

CLB ス ラ イ ス の一般的な タ イ ミ ン グモデル と パ ラ メ ー タ ー . . . 62 CLB ス ラ イ ス のマルチプ レ ク サーの タ イ ミ ン グモデルお よ びパ ラ メ ー タ ー . . . 64 CLB ス ラ イ ス のキ ャ リ ーチ ェーンの タ イ ミ ン グモデルお よ びパ ラ メ ー タ ー. . . 65 CLB ス ラ イ ス分散 RAM の タ イ ミ ン グモデルお よ びパ ラ メ ー タ ー (SLICEM のみ) . . . 67 CLB ス ラ イ ス の SRL シ フ ト レ ジ ス タ の タ イ ミ ン グモデルお よ び パ ラ メ ー タ ー (SLICEM のみ) . . . 70

目次

(6)

イ ン タ ー コ ネ ク ト リ ソ ース . . . 76

(7)

こ のユーザー

ガ イ ド について

ザ イ リ ン ク ス 7 シ リ ーズ FPGA には、3 つの FPGA フ ァ ミ リ があ り ます。 こ れ ら はすべて最 も 低 い消費電力を達成す る よ う 設計 さ れてお り 、 最適な電力、 性能、 コ ス ト の実現に向けて、 標準デザ イ ン を フ ァ ミ リ 間で拡張 さ せ る こ と が可能です。Artix®-7 フ ァ ミ リ は、 量産アプ リ ケーシ ョ ン向け に開発 さ れ、 最 も 低い コ ス ト と 消費電力を実現す る よ う 最適化 さ れてい ます。Virtex®-7 フ ァ ミ リ は、 最高のシ ス テ ム性能 と 容量を提供す る よ う に最適化 さ れてい ます。Kintex®-7 フ ァ ミ リ は、 対 コ ス ト 性能に最 も 優れた新 し い ク ラ ス の FPGA です。 こ のユーザーガ イ ド は、7 シ リ ーズ FPGA の コ ン フ ィ ギ ャ ラ ブルロ ジ ッ ク ブ ロ ッ ク (CLB) について説明 し た技術的な リ フ ァ レ ン ス です。 通常、 ロ ジ ッ ク 合成では、 シ ス テ ム設計者の介入な し に CLB リ ソ ース が割 り 当て ら れ ます。 ル ッ ク ア ッ プテーブル (LUT) の多様な フ ァ ン ク シ ョ ン、キ ャ リ ー伝搬の物理的方向、使用可能な フ リ ッ プ フ ロ ッ プの数お よ び分布、 お よ び効率的なシ フ ト レ ジ ス タ の使用方法な ど、 一部の CLB の詳細 を理解す る こ と は効率的なデザ イ ンの作成に役立ち ます。 こ のユーザーガ イ ド では、 こ れ ら の説明 お よ び CLB のその他の フ ァ ン ク シ ョ ンについて詳細に説明 し ます。 こ の 『7 シ リ ーズ FPGA コ ン フ ィ ギ ャ ラ ブル ロ ジ ッ ク ブ ロ ッ ク ユーザーガ イ ド 』 を含む、7 シ リ ーズ FPGA に関す る すべての資料は、 ザ イ リ ン ク ス の ウ ェ ブサ イ ト (japan.xilinx.com/7) か ら 入 手で き ます。

内容

こ のユーザーガ イ ド は、 次の各章で構成 さ れてい ます。 • 第1章 「概要」 では、 ほ と ん ど のユーザーが必要 と す る 、 次の よ う な基本情報を提供 し ます。 • 「CLB の概要」 は、 新規ユーザーを対象 と し た情報です。 • 「7 シ リ ーズ CLB の特徴」 では、 経験豊富なユーザー向けに Spartan®-6 や Virtex®-6 FPGA フ ァ ミ リ か ら 新 し く な っ た点を紹介 し 、 デザ イ ン移行時の検討事項を解説 し ます。 • 「デバ イ ス リ ソ ース」 では、 デバ イ ス あ た り の リ ソ ース数や、 さ ま ざ ま な 7 シ リ ーズフ ァ ミ リ 間に共通す る 項目を示 し ます。 • 「推奨デザ イ ン フ ロ ー」 には、CLB リ ソ ース の基本的な使用法 と 重要な検討課題が列挙 さ れてい ます。 • 「ピ ン配置の計画」 では、CLB がデザ イ ンの ピ ン配置に影響を及ぼす可能性があ る 側面に ついて検討 し ます。 • 第2章 「機能の詳細」 では、 各 CLB フ ァ ン ク シ ョ ンの具体的な アーキ テ ク チ ャ を示 し ます。 • 第3章 「デザ イ ン入力」 では、 デザ イ ン入力のガ イ ド ラ イ ン と 、 イ ン ス タ ン シエーシ ョ ン用の プ リ ミ テ ィ ブ を紹介 し ます。 • 第4章 「アプ リ ケーシ ョ ン」 では、 よ り 大規模な アプ リ ケーシ ョ ンに対す る CLB リ ソ ース の 適用例を示 し ます。

(8)

• 第5章 「 タ イ ミ ン グ」 では、 タ イ ミ ン グ モデル と 記載 さ れてい る CLB タ イ ミ ン グ仕様の定義 を説明 し ます。 • 第6章 「高度な使用法」 では、7 シ リ ーズ CLB の高度な機能について説明 し ます。

その他の リ ソ ース

その他の資料は、 ザ イ リ ン ク ス の ウ ェ ブサ イ ト か ら 入手で き ます。 japan.xilinx.com/support/documentation/index シ リ コ ンや ソ フ ト ウ ェ ア、IP に関す る ア ンサーデー タ ベース を検索 し た り 、 テ ク ニ カルサポー ト の ウ ェ ブケース を開 く 場合は、 次の ウ ェ ブサ イ ト にア ク セ ス し て く だ さ い。 japan.xilinx.com/support

(9)

1

概要

CLB

の概要

7 シ リ ーズコ ン フ ィ ギ ャ ラ ブルロ ジ ッ ク ブ ロ ッ ク (CLB) は、 次に示す高機能かつ高性能の FPGA ロ ジ ッ ク を提供 し ます。 • 完全な 6 入力ル ッ ク ア ッ プテーブル (LUT) テ ク ノ ロ ジ • デ ュ アル LUT5 (5 入力 LUT) オプシ ョ ン • 分散 メ モ リ お よ びシ フ ト レ ジ ス タ ロ ジ ッ ク フ ァ ン ク シ ョ ン • 高速演算専用のキ ャ リ ー ロ ジ ッ ク フ ァ ン ク シ ョ ン • 使用効率を向上 さ せ る 多入力マルチプ レ ク サー CLB (コ ン フ ィ ギ ャ ラ ブルロ ジ ッ ク ブ ロ ッ ク) は、 順次回路お よ び組み合わせ回路を イ ンプ リ メ ン ト す る 際の主要な ロ ジ ッ ク リ ソ ー ス です。 各 CLB エ レ メ ン ト は ス イ ッ チマ ト リ ッ ク ス に接続 し て、 汎用配線マ ト リ ッ ク ス にア ク セ ス し ます (図1-1参照)。1 つの CLB エ レ メ ン ト には、2 つの ス ラ イ ス があ り ます。

7 シ リ ーズ FPGA の LUT は、 出力が 1 つの 6 入力 LUT と し て、 ま たは出力は別々でア ド レ ス ま たは ロ ジ ッ ク 入力が共通の 2 つの 5 入力 LUT と し て構成で き ます。各 5 入力 LUT 出力はオプシ ョ ン と し て フ リ ッ プ フ ロ ッ プで ラ ッ チで き ます。6 入力 LUT が 4 つ、 それ ら の フ リ ッ プ フ ロ ッ プが

8 つ、 そ し て演算キ ャ リ ー ロ ジ ッ ク に よ っ て ス ラ イ ス が構成 さ れ、2 つの ス ラ イ ス が CLB を構成 し ます。(各 LUT か ら 1 つずつの) 4 つの フ リ ッ プ フ ロ ッ プはオプシ ョ ン で、 ラ ッ チ と し て使用で き ます。 こ の場合、 ス ラ イ ス に残っ た 4 つの フ リ ッ プ フ ロ ッ プは未使用にす る 必要があ り ます。

X-Ref Target - Figure 1-1

図 1-1 : CLB 内のス ラ イ ス配置 Switch Matrix Slice(1) COUT COUT CIN CIN Slice(0) CLB UG474_c1_01_071910

(10)

全ス ラ イ ス の約 3 分の 2 は SLICEL ロ ジ ッ ク ス ラ イ ス で、残 り が SLICEM です。SLICEM の LUT は、64 ビ ッ ト の分散 RAM と し て、 ま たは 32 ビ ッ ト のシ フ ト レ ジ ス タ (SRL32) か 2 つの SRL16 と し て使用で き ます。 最近の合成ツールでは、 こ の よ う な高効率の ロ ジ ッ ク 、 演算、 お よ び メ モ リ 機能を活か し た合成が実行 さ れます。 さ ら に、 経験の豊富な設計者は こ れ ら を イ ン ス タ ン シエー ト す る こ と も で き ます。

7

シ リ ーズ

CLB

の特徴

7 シ リ ーズデバ イ ス の CLB は、Virtex®-6 FPGA フ ァ ミ リ の CLB と 同一です。 ま た、Spartan®-6 FPGA フ ァ ミ リ の CLB に も 非常に類似 し てい ますが、 次の点が異な り ます。

• カ ラ ム状のアーキ テ ク チ ャ

• 高集積度への容易な ス ケー リ ン グ

• よ り 多 く の CLB 間配線

• SLICEL お よ び SLICEM のみ (Spartan-6 FPGA の SLICEX はない) • すべての ス ラ イ ス でキ ャ リ ー ロ ジ ッ ク をサポー ト • よ り 最適化 CLB 構造の共通の機能に よ っ て、Spartan-6 お よ び Virtex-6 フ ァ ミ リ か ら 7 シ リ ーズデバ イ スへ のデザ イ ン移行が簡素化 さ れ ま す。 た だ し 独自の フ ロ ア プ ラ ン を採用 し てい る こ と か ら 、 従来の FPGA を タ ーゲ ッ ト と し ていたデザ イ ン を イ ンプ リ メ ン ト す る 前は、 ロ ケーシ ョ ン制約を削除す る 必要があ り ます。 イ ン タ ー コ ネ ク ト の配線 リ ソ ース が、Virtex-6 FPGA フ ァ ミ リ と 比較 し てサ イ ズ、 量、 お よ び柔軟性の面で優れてい る ため、 自動配置配線の結果が向上 し ます。

デバイ ス

リ ソ ース

CLB リ ソ ース がすべての 7 シ リ ーズ フ ァ ミ リ 間で ス ケー ラ ブルであ る こ と か ら 、 アーキ テ ク チ ャ が共通 と な り 、 効率、IP イ ンプ リ メ ン テーシ ョ ン、 デザ イ ン移行が改善 さ れます。7 シ リ ーズフ ァ ミ リ 間の差異は、CLB の数お よ び CLB と その他のデバ イ ス リ ソ ース の比率です。7 シ リ ーズフ ァ ミ リ 間の移行では、CLB に対す る デザ イ ン変更は不要です。 デバ イ ス の容量は、 論理的に従来の 4 入力 LUT と フ リ ッ プ フ ロ ッ プ 1 つに相当す る ロ ジ ッ ク セル 単位で計測 さ れ ま す。7 シ リ ーズ FPGA の CLB には、6 入力 LUT、 豊富な フ リ ッ プ フ ロ ッ プ と ラ ッ チ、 キ ャ リ ーロ ジ ッ ク 、 そ し て SLICEM 内に分散 RAM ま たはシ フ ト レ ジ ス タ を構築す る 機 能が備わ り 、実質的な容量が増加 し てい ます。ロ ジ ッ クセル と 6 入力 LUT の数の比率は 1.6:1 です。

7

シ リ ーズ

FPGA

CLB

リ ソ ース

表1-1~表1-3に、Artix®-7、Kintex®-7、 お よ び Virtex®-7 FPGA で使用可能な CLB リ ソ ー ス を示 し ます。 最新情報は、 『7 シ リ ーズ FPGA 概要』 (DS180) を参照 し て く だ さ い。

表 1-1 : Artix-7 FPGA の CLB リ ソ ース

デバイ ス ス ラ イ ス(1) SLICEL SLICEM 6 入力 LUT 分散 RAM (Kb) シ フ ト(Kb)レ ジス タ フ リ ッ プ

フ ロ ッ プ

7A15T 2,600(2) 1,800 800 10,400 200 100 20,800

7A35T 5,200(2) 3,600 1,600 20,800 400 200 41,600

7A50T 8,150 5,750 2,400 32,600 600 300 65,200

(11)

デバイ ス リ ソ ース

7A100T 15,850 11,100 4,750 63,400 1,188 594 126,800

7A200T 33,650 22,100 11,550 134,600 2,888 1,444 269,200

注記 :

1. 7 シ リ ーズ FPGA の各ス ラ イ ス には、4 つの LUT と 8 つの フ リ ッ プ フ ロ ッ プが含ま れ、SLICEM でのみ LUT を分散 RAM ま たは SRL

と し て使用で き ます。

2. デバ イ ス内でサポー ト さ れ る LUT と フ リ ッ プ フ ロ ッ プの数に対応す る ス ラ イ ス の数です。

表 1-1 : Artix-7 FPGA の CLB リ ソ ース (続き)

デバイ ス ス ラ イ ス(1) SLICEL SLICEM 6 入力 LUT 分散 RAM (Kb) シ フ ト レ ジス タ

(Kb)

フ リ ッ プ フ ロ ッ プ

1-2 : Kintex-7 FPGA CLB リ ソ ース

デバイ ス ス ラ イ ス(1) SLICEL SLICEM 6 入力 LUT 分散 RAM (Kb) シ フ ト(Kb)レ ジ ス タ フ リ ッ プフ ロ ッ プ

7K70T 10,250 6,900 3,350 41,000 838 419 82,000 7K160T 25,350 16,600 8,750 101,400 2,188 1,094 202,800 7K325T 50,950 34,950 16,000 203,800 4,000 2,000 407,600 7K355T 55,650 35,300 20,350 222,600 5,088 2,544 445,200 7K410T 63,550 40,900 22,650 254,200 5,663 2,831 508,400 7K420T 65,150(2) 41,400 23,750 260,600 5,938 2,969 521,200 7K480T 74,650 47,500 27,150 298,600 6,788 3,394 597,200 注記 :

1. 7 シ リ ーズ FPGA の各ス ラ イ ス には、4 つの LUT と 8 つの フ リ ッ プ フ ロ ッ プが含まれ、SLICEM でのみ LUT を分散 RAM ま たは SRL

と し て使用で き ます。

2. デバ イ ス内でサポー ト さ れ る LUT と フ リ ッ プ フ ロ ッ プの数に対応す る ス ラ イ ス の数です。

表 1-3 : Virtex-7 FPGA の CLB リ ソ ース

デバイ ス ス ラ イ ス(1) SLICEL SLICEM 6 入力 LUT 分散 RAM (Kb) シ フ ト(Kb)レ ジ ス タ フ リ ッ プ

フ ロ ッ プ 7V585T 91,050 63,300 27,750 364,200 6,938 3,469 728,400 7V2000T 305,400 219,200 86,200 1,221,600 21,550 10,775 2,443,200 7VX330T 51,000 33,450 17,550 204,000 4,388 2,194 408,000 7VX415T 64,400 38,300 26,100 257,600 6,525 3,263 515,200 7VX485T 75,900 43,200 32,700 303,600 8,175 4,088 607,200 7VX550T 86,600(2) 51,700 34,900 346,400 8,725 4,363 692,800 7VX690T 108,300 64,750 43,550 433,200 10,888 5,444 866,400 7VX980T 153,000 97,650 55,350 612,000 13,838 6,919 1,224,000 7VX1140T 178,000 107,200 70,800 712,000 17,700 8,850 1,424,000 7VH580T 90,700 55,300 35,400 362,800 8,850 4,425 725,600

(12)

推奨デザイ ン

フ ロー

CLB リ ソ ース は汎用デザ イ ン ロ ジ ッ ク 用に推論 さ れ る ため、 イ ン ス タ ン シエーシ ョ ンは不要です。 HDL デザ イ ン を適切に行 う だけで十分です。 次に、 注意すべ き 点を示 し ます。 • CLB のフ リ ッ プ フ ロ ッ プにはセ ッ ト ま たは リ セ ッ ト のいずれか一方 し かあ り ません。セ ッ ト と リ セ ッ ト の両方は使用で き ません。 • フ リ ッ プ フ ロ ッ プが豊富に用意 さ れてい ます。 性能を向上 さ せ る ためにパ イ プ ラ イ ン処理を検 討 し て く だ さ い。 • 制御入力は ス ラ イ ス ま たは CLB 間で共有 さ れます。 各デザ イ ンに必要な制御信号の数は可能 な限 り 少な く し ま す。 制御入力には、 ク ロ ッ ク 、 ク ロ ッ ク イ ネーブル、 セ ッ ト/リ セ ッ ト 、 書 き 込み イ ネーブルな ど があ り ます。 • 6 入力 LUT を 32 ビ ッ ト のシ フ ト レ ジ ス タ と し て使用す る こ と で、高効率な イ ンプ リ メ ン テー シ ョ ンが可能にな り ます。 • 必要な格納領域が小 さ な場合は、6 入力 LUT を 64x1 の メ モ リ と し て使用で き ます。 • 専用キ ャ リ ーロ ジ ッ ク を使用す る と 演算機能を効果的に イ ンプ リ メ ン ト で き ます。 次に、 推奨デザ イ ンフ ロ ーの手順を示 し ます。 1. 推奨す る 手法 (HDL、IP な ど) を用いてデザ イ ン を イ ンプ リ メ ン ト し ます。 2. 使用率レ ポー ト か ら 、 リ ソ ース の利用状況を判断 し ます。 演算 ロ ジ ッ ク 、 分散 RAM、SRL が適宜使用 さ れてい る こ と を確認 し ます。 3. フ リ ッ プ フ ロ ッ プの使用法を検討 し ます。 a. 性能向上を目的 と し たパ イ プ ラ イ ン処理の使用 b. 専用 リ ソ ース (ブ ロ ッ ク RAM、DSP) 出力への専用フ リ ッ プ フ ロ ッ プの使用 c. シ フ ト レ ジ ス タ の SRL と し ての使用 (セ ッ ト/リ セ ッ ト の使用を避け る) 4. セ ッ ト/リ セ ッ ト の使用は最低限に抑え ます。

ピ ン配置の計画

多 く の場合、 リ ソ ース の使用はデバ イ ス の ピ ン配置に影響を及ぼ し ますが、CLB はデバ イ ス全体に 分散 し てい る ため ピ ン配置に与え る 影響はわずかです。ASMBL™ アーキ テ ク チ ャ は、 ほ と ん ど の I/O の両側にあ る CLB に最大限の柔軟性を提供 し ます。 FPGA の要件に基づいて ツールに I/O 配置を決定 さ せ る こ と が最良の方法です。その結果に対 し て、 ボー ド レ イ ア ウ ト の検討時に必要な変更を加え ます。 ただ し 、 ツールがデザ イ ン要件に基づいて最 適の位置に I/O を配置で き る よ う に タ イ ミ ン グ制約を設定す る 必要があ り ます。 7VH870T 136,900 83,750 53,150 547,600 13,275 6,638 1,095,200 注記 :

1. 7 シ リ ーズ FPGA の各ス ラ イ ス には、4 つの LUT と 8 つの フ リ ッ プ フ ロ ッ プが含ま れ、SLICEM でのみ LUT を分散 RAM ま たは SRL

と し て使用で き ます。

2. デバ イ ス内でサポー ト さ れ る LUT と フ リ ッ プ フ ロ ッ プの数に対応す る ス ラ イ ス の数です。

表 1-3 : Virtex-7 FPGA の CLB リ ソ ース (続き)

デバイ ス ス ラ イ ス(1) SLICEL SLICEM 6 入力 LUT 分散 RAM (Kb) シ フ ト レ ジ ス タ

(Kb)

フ リ ッ プ フ ロ ッ プ

(13)

ピ ン配置の計画 キ ャ リ ーロ ジ ッ ク はカ ラ ムに沿っ て垂直上方向にカ ス ケー ド 接続す る ため、 多入力演算バ ス は I/O を含むほかの ロ ジ ッ ク と 直交す る 方向で駆動す る 可能性があ り ます。 ほ と ん ど の 7 シ リ ーズデバ イ スは、ASMBL アーキ テ ク チ ャ の分散 I/O の効果を最大限に活かす こ と がで き る フ リ ッ プチ ッ プパ ッ ケージで提供 さ れます。 一方、 よ り 小型のデバ イ ス は低 コ ス ト の ワ イ ヤボ ンデ ィ ン グパ ッ ケージで提供 さ れ ます。 こ れ ら の小型パ ッ ケージでは、 一部の ピ ン が特性 上ほかの ピ ンに比べて I/O や特別な リ ソ ース に近接 し てい る ため、 内部 ロ ジ ッ ク の定義が完了 し て か ら ピ ン配置を決定す る 必要があ り ます。

(14)
(15)

2

機能の詳細

こ の章では 7シ リ ーズ FPGA の CLB アーキ テ ク チ ャ について詳 し く 解説 し ます。 こ れ ら はデザ イ ンの最適化や検証に役立ち ますが、デザ イ ンの開始に必要 と な る も のではあ り ません。 こ の章では、 次の項目について説明 し ます。 • 「CLB の配置」 CLB 内の ス ラ イ ス の配置 と 機能に関す る 概要 • 「ス ラ イ ス の説明」 SLICEM お よ び SLICEL の全詳細 • 「ル ッ ク ア ッ プテーブル (LUT)」 ロ ジ ッ ク フ ァ ン ク シ ョ ン ジ ェ ネ レー タ ーの説明 • 「ス ト レージエ レ メ ン ト 」 ラ ッ チお よ びフ リ ッ プ フ ロ ッ プの内容お よ び制御方法 • 「分散 RAM (SLICEM のみで使用可能)」 LUT を書 き 込み可能な メ モ リ と し て使用す る SLICEM の機能 • 「シ フ ト レ ジ ス タ (SLICEM のみ)」 LUT を シ フ ト レ ジ ス タ と し て使用す る SLICEM の機能 • 「マルチプ レ ク サー」 LUT を組み合わせて多入力フ ァ ン ク シ ョ ン を作成す る ための専用ゲー ト • 「キ ャ リ ーロ ジ ッ ク 」 効率的に演算機能を イ ンプ リ メ ン ト す る ための専用ゲー ト お よ びカ ス ケー ド 接続

CLB

の配置

7シ リ ーズ FPGA の CLB はカ ラ ムに配列 さ れます。7シ リ ーズ FPGA は、 第 4 世代 と な る 、 独自 のカ ラ ムベース の ASMBL™ アーキ テ ク チ ャ を採用 し たデバ イ ス です。

ASMBL

アーキテ ク チ ャ

ザ イ リ ン ク ス は、 さ ま ざ ま な アプ リ ケーシ ョ ン分野に最適 と な る よ う に各種機能を組み合わせて構 成 し た FPGA プ ラ ッ ト フ ォ ー ム を 可能にす る た め、ASMBL (Advanced Silicon Modular Block)

アーキ テ ク チ ャ を開発 し ま し た。 こ の革新的な技術に よ り 、 ザ イ リ ン ク スは幅広い品揃えでデバ イ ス を提供 し 、 ユーザーは特定のデザ イ ンに適 し たバ ラ ン ス の機能 と 性能を備え る デバ イ ス を選択で き ます。図2-1に、さ ま ざ ま な タ イ プのカ ラ ムベース リ ソ ース か ら 成 る 概略ブ ロ ッ ク 図を示 し ます。

(16)

ASMBL アーキ テ ク チ ャ は次の方法で従来の設計におけ る 限界を取 り 除 き ます。 • I/O 数に よ る ア レ イ サ イ ズの制限な ど、 幾何学的配置の制約を削除 • 電源お よ びグ ラ ン ド をチ ッ プのあ ら ゆ る 場所に配置 さ せ る こ と で、 こ れ ら の分配を強化 • 異種の統合 IP ブ ロ ッ ク を互いに、 かつ周囲の リ ソ ース か ら 独立 し て拡張可能

SSI テ ク ノ ロ ジ

7シ リ ーズデバ イ ス は、 独自の ス タ ッ ク ド シ リ コ ン イ ン タ ー コ ネ ク ト (SSI) テ ク ノ ロ ジ を用い る こ と で さ ら に高度な統合を実現 し ます。SSI テ ク ノ ロ ジに よ っ て、1 つのパ ッ シブ イ ン タ ーポーザー 層上で複数の SLR (Super Logic Region) を組み合わせ る こ と が可能にな り 、1 万を超え る 内部 SLR

接続を持つ FPGA を作成で き る よ う にな り ます。 詳細は、第6章 「高度な使用法」 を参照 し て く だ さ い。

CLB

ス ラ イ ス

CLB エ レ メ ン ト には 1 対の ス ラ イ ス が含まれ、各ス ラ イ ス は 4 つの 6 入力 LUT と 8 つの ス ト レー ジエ レ メ ン ト か ら 構成 さ れます。 • SLICE(0) - CLB の下部、 左のカ ラ ムに配置 さ れた ス ラ イ ス • SLICE(1) - CLB の上部、 右のカ ラ ムに配置 さ れた ス ラ イ ス こ れ ら 2 つの ス ラ イ ス は、 直接相互接続 し てお ら ず、 各ス ラ イ ス は 1 つのカ ラ ム と し て配置 さ れて い ます。 カ ラ ム内のそれぞれの ス ラ イ ス には、1 本の独立 し た キ ャ リ ーチ ェーンがあ り ます。

X-Ref Target - Figure 2-1

図 2-1 : ASMBL アーキテ ク チ ャ Column Based ASMBL Architecture Feature Options

Domain A Domain B Domain C

UG474_c2_24_071014

Applications Applications Applications

Logic (SLICEL) Logic (SLICEM) DSP

Memory

Clock Management Tile

Global Clock High-performance I/O High-range I/O Integrated IP Mixed Signal Transceivers

(17)

CLB の配置 ザ イ リ ン ク ス ツールでは、 ス ラ イ ス は次の よ う に定義 さ れてい ます。 • 「X」 の後に続 く 数字は、 各ペアでの ス ラ イ ス の位置お よ び ス ラ イ ス のカ ラ ム位置を示 し ます。 こ の番号は、 最初の CLB カ ラ ムでは ス ラ イ ス の下位か ら 0、1 と 定義 し 、2 番目の CLB カ ラ ムの下位か ら 2、3 な ど の よ う に定義 し ます。 • 「Y」の後に続 く 数字は、 ス ラ イ ス の行を示 し ます。 こ の番号は、 同 じ CLB 内では同一にな り 、 CLB の行間では下か ら 上に位置す る に従っ て順に大 き く な り ます。 図2-2に、 ダ イ の左下に配置 さ れた 4 つの CLB を示 し ます。

CLB

およびス ラ イ ス

コ ン フ ィ ギ ュ レーシ ョ ン

表2-1に、1 つの CLB に含まれ る ロ ジ ッ ク リ ソ ース を示 し ます。SLICEM の各 LUT はル ッ ク ア ッ プテーブル、 分散 RAM、 ま たはシ フ ト レ ジ ス タ と し て構成で き ます。

X-Ref Target - Figure 2-2

図 2-2 : CLB およびス ラ イ ス間の行 と カ ラ ムの関係 Slice1 X1Y1 COUT COUT CIN CIN Slice0 X0Y1 CLB UG474_c2_01_092210 Slice1 X1Y0 COUT COUT Slice0 X0Y0 CLB Slice1 X3Y1 COUT COUT CIN CIN Slice0 X2Y1 CLB Slice1 X3Y0 COUT COUT Slice0 X2Y0 CLB 表 2-1 : 1 つの CLB に含まれる ロ ジ ッ ク リ ソ ース ス ラ イ ス 数 LUT フ リ ッ プ フ ロ ッ プ 演算および キ ャ リ ー チ ェ ーン 分散 RAM (1) シ フ ト レ ジ ス タ(1) 2 8 16 2 256 ビ ッ ト 128 ビ ッ ト 注記 :

(18)

ス ラ イ スの説明

すべての ス ラ イ ス には、 次が含まれます。 • 4 つの ロ ジ ッ ク フ ァ ン ク シ ョ ンジ ェ ネ レー タ ー (ま たはル ッ ク ア ッ プテーブル) • 8 つの ス ト レージエ レ メ ン ト • 多入力機能マルチプ レ ク サー • キ ャ リ ーロ ジ ッ ク ス ラ イ ス では、 こ れ ら のエ レ メ ン ト を使用 し て ロ ジ ッ ク フ ァ ン ク シ ョ ン、 演算機能、 お よ び ROM 機能を提供 し ます。 さ ら に、 特定ス ラ イ ス は 2 つの フ ァ ン ク シ ョ ン (分散 RAM を使用 し たデー タ 格納お よ び 32 ビ ッ ト レ ジ ス タ を使用 し たデー タ シ フ ト) をサポー ト し ます。 こ れ ら の追加フ ァ ン ク シ ョ ン を サ ポー ト す る 特定 ス ラ イ ス を SLICEM、 そ の他の ス ラ イ ス を SLICEL と 呼び ま す。 SLICEM のエ レ メ ン ト お よ び接続を図2-3に、SLICEL のエ レ メ ン ト お よ び接続を図2-4に示 し ま す。 各 CLB には SLICEL が 2 つ、 ま たは SLICEL と SLICEM が各 1 つ含まれます。

(19)

ス ラ イ スの説明

X-Ref Target - Figure 2-3

2-3 : SLICEM の図 A6:A1 D COUT D DX C CX B BX A AX O6 DI2 O5 DI1 MC31 WEN CK DI1 MC31 WEN CK DI1 MC31 WEN CK DI1 MC31 WEN CK UG474_c2_02_110510 DX DMUX D DQ C CQ CMUX B BQ BMUX A AQ AMUX Reset Type D FF/LAT INIT1 INIT0 SRHI SRLO SR CE CK FF/LAT INIT1 INIT0 SRHI SRLO FF/LAT INIT1 INIT0 SRHI SRLO FF/LAT INIT1 INIT0 SRHI SRLO D SR CE CK D SR CE CK D SR Q CE CK CIN 0/1 WEN WE CK Sync/Async FF/LAT A6:A1 O6 O5 C6:1 CX D6:1 DI A6:A1 O6 O5 B6:1 BX A6:A1 W6:W1 W6:W1 W6:W1 W6:W1 O6 O5 A6:1 AX SR CE CLK CE Q CK SR Q Q Q SRHI SRLO INIT1 INIT0 D CE Q CK SR SRHI SRLO INIT1 INIT0 D CE Q CK SR SRHI SRLO INIT1 INIT0 D CE Q CK SR SRHI SRLO INIT1 INIT0 DI2 DI2 DI2 CI BI AI

(20)

X-Ref Target - Figure 2-4 図 2-4 : SLICEL の図 A6:A1 D COUT D DX C CX B BX A AX O6 O5 UG474_c2_03_101210 DX DMUX D DQ C CQ CMUX B BQ BMUX A AQ AMUX Reset Type D FF/LAT INIT1 INIT0 SRHI SRLO SR CE CK FF/LAT INIT1 INIT0 SRHI SRLO FF/LAT INIT1 INIT0 SRHI SRLO FF/LAT INIT1 INIT0 SRHI SRLO D SR CE CK D SR CE CK D SR Q CE CK CIN 0/1 Sync/Async FF/LAT A6:A1 O6 O5 C6:1 CX D6:1 A6:A1 O6 O5 B6:1 BX A6:A1 O6 O5 A6:1 AX SR CE CLK CE Q CK SR Q Q Q SRHI SRLO INIT1 INIT0 D CE Q CK SR SRHI SRLO INIT1 INIT0 D CE Q CK SR SRHI SRLO INIT1 INIT0 D CE Q CK SR SRHI SRLO INIT1 INIT0

(21)

ル ッ ク ア ッ プ テーブル (LUT)

ル ッ ク ア ッ プ

テーブル

(LUT)

7シ リ ーズ FPGA の フ ァ ン ク シ ョ ンジ ェ ネ レー タ ーは、6 入力のル ッ ク ア ッ プテーブル (LUT) と し て イ ンプ リ メ ン ト さ れてい ます。各ス ラ イ ス (A、B、C、お よ び D) の 4 つの フ ァ ン ク シ ョ ンジ ェ ネ レー タ ーには、6 つの独立 し た入力 (A 入力 : A1~A6) と 2 つの独立 し た出力 (O5 お よ び O6) が あ り ます。 フ ァ ン ク シ ョ ンジ ェ ネ レー タ ーは次を イ ンプ リ メ ン ト で き ます。 • 任意に定義 さ れた 6 入力のブール関数 • 任意に定義 さ れた 2 つの 5 入力のブール関数 (こ れ ら 2 つが入力を共有 し てい る 場合のみ) • 2 つの任意に定義 さ れた 3 お よ び 2 入力以下のブール関数 6 入力の フ ァ ン ク シ ョ ンでは、 次の入出力を使用 し ます。 • A1 ~ A6 入力 • O6 出力 5 入力以下の フ ァ ン ク シ ョ ンが 2 つの場合は、 次の入出力を使用 し ます。 • A1 ~ A5 入力 • A6 は High に駆動 • O5 お よ び O6 出力 LUT を通 る 伝搬遅延は、 イ ン プ リ メ ン ト さ れ る フ ァ ン ク シ ョ ン と は無関係です。 フ ァ ン ク シ ョ ン ジ ェ ネ レー タ ーか ら の信号は、 次が可能です。

• ス ラ イ ス か ら 出力 (O6 は A、B、C、D 出力か ら 、O5 は AMUX、BMUX、CMUX、DMUX

出力か ら) • O6 出力か ら XOR 専用ゲー ト に入力 • O5 出力か ら キ ャ リ ーロ ジ ッ ク チ ェーンに入力 • O6 出力か ら キ ャ リ ーロ ジ ッ ク マルチプ レ ク サーのセ レ ク ト ラ イ ンに入力 • ス ト レージエ レ メ ン ト の D 入力 • O6 出力か ら F7AMUX/F7BMUX 多入力マルチプ レ ク サーに入力

基本的な LUT のほかに も 、 ス ラ イ ス には 3 つのマルチプ レ ク サー (F7AMUX、F7BMUX、 お よ び

F8MUX) が含まれてい ます。 こ れ ら のマルチプ レ ク サーを使用 し て、1 つの ス ラ イ ス内で最大 4 つ の フ ァ ン ク シ ョ ンジ ェ ネ レー タ ーを組み合わせ、7 入力ま たは 8 入力の フ ァ ン ク シ ョ ン を構成で き ます。 • F7AMUX : LUT A お よ び B か ら 7 入力フ ァ ン ク シ ョ ン を生成す る と き に使用 • F7BMUX : LUT C お よ び D か ら 7 入力フ ァ ン ク シ ョ ン を生成す る と き に使用 • F8MUX : すべての LUT を組み合わせて 8 入力フ ァ ン ク シ ョ ン を生成す る と き に使用 複数の ス ラ イ ス を使用す る と 、9 入力以上の フ ァ ン ク シ ョ ン を イ ンプ リ メ ン ト で き ますが、 ス ラ イ ス間には直接接続がないため、CLB 内で 8 入力を超え る フ ァ ン ク シ ョ ン ジ ェ ネ レー タ ーは作成で き ません。

ス ト レージ

エ レ メ ン ト

ス ラ イ ス あ た り 8 つの ス ト レージエ レ メ ン ト があ り ます。 その う ち 4 つはエ ッ ジ ト リ ガーの D タ イ プ フ リ ッ プ フ ロ ッ プ ま たは レ ベル認識 ラ ッ チ と し て コ ン フ ィ ギ ュ レ ーシ ョ ン で き ま す。D 入力 は、AFFMUX、BFFMUX、CFFMUX、 ま たは DFFMUX を通 る LUT 出力で直接駆動す る か、 あ

(22)

る いは AX、BX、CX、ま たは DX 入力か ら フ ァ ン ク シ ョ ンジ ェ ネ レー タ ーをバ イ パスす る BYPASS ス ラ イ ス入力で直接駆動で き ます。 ラ ッ チ と し て コ ン フ ィ ギ ュ レーシ ョ ンす る 場合、 ラ ッ チは CLK が Low の と き に透過にな り ます。 上記の 4 つ以外に、 エ ッ ジ ト リ ガーの D タ イ プ フ リ ッ プ フ ロ ッ プ と し てのみ コ ン フ ィ ギ ュ レ ー シ ョ ン可能な ス ト レージエ レ メ ン ト が 4 つあ り ます。D 入力は、LUT の O5 出力ま たは AX、BX、 CX、 あ る いは DX 入力を介 し た BYPASS ス ラ イ ス入力に よ っ て駆動可能です。 従来の 4 つの ス ト レージエ レ メ ン ト が ラ ッ チ と し て コ ン フ ィ ギ ュ レーシ ョ ン さ れ る 場合、 こ れ ら の ス ト レージエ レ メ ン ト は使用で き ません。 図2-5に、 ス ラ イ ス で レ ジ ス タ のみを使用 し た コ ン フ ィ ギ ュ レーシ ョ ンお よ びレ ジ ス タ と ラ ッ チの 両方を使用 し た コ ン フ ィ ギ ュ レーシ ョ ン を示 し ます。

制御信号

1 つの ス ラ イ ス内の ス ト レージエ レ メ ン ト 間では、 ク ロ ッ ク (CLK)、 ク ロ ッ ク イ ネーブル (CE)、 お よ びセ ッ ト/リ セ ッ ト (SR) 制御信号が共有 さ れます。 こ のため、 ス ラ イ ス内の 1 つの フ リ ッ プ フ ロ ッ プで SR ま たは CE が イ ネーブルの と き 、 ス ラ イ ス で使用 さ れ る 残 り の フ リ ッ プ フ ロ ッ プで も 共有信号に よ っ て SR ま たは CE が イ ネーブルにな り ます。CLK 信号のみプ ロ グ ラ ム可能な極性が

X-Ref Target - Figure 2-5

図 2-5 : ス ラ イ ス内の 2 つの コ ン フ ィ ギ ュ レーシ ョ ン (レ ジス タ のみ 4 つ、 およびレ ジ ス タ/ラ ッ チ 4 つ) UG474_c2_04_101210 DX CX BX CE AX DQ CQ BQ AQ D FF LATCH INIT1 INIT0 SRHIGH SRLOW SR DFF/LATCH LUT D Output LUT C Output CE CK D FF LATCH INIT1 INIT0 SRHIGH SRLOW SR CE CK D FF LATCH INIT1 INIT0 SRHIGH SRLOW SR CE CK D FF LATCH INIT1 INIT0 SRHIGH SRLOW SR Q CE CK Q Q Q SR LUT B Output

LUT A Output AFF/LATCH BFF/LATCH CFF/LATCH CLK Reset Type Sync Async DX CX BX CE AX DQ CQ BQ AQ D SR DFF LUT D O5 Output LUT C O5 Output CE CK INIT1 INIT0 SRHIGH SRLOW INIT1 INIT0 SRHIGH SRLOW INIT1 INIT0 SRHIGH SRLOW INIT1 INIT0 SRHIGH SRLOW D SR CE CK D SR CE CK D SR Q CE CK Q Q Q SR LUT B O5 Output

LUT A O5 Output AFF

BFF CFF CLK Reset Type Sync Async

(23)

分散 RAM (SLICEM のみで使用可能) あ り ます。 ク ロ ッ ク 信号上にあ る イ ンバー タ ーは、 すべて自動で取 り 込まれます。CE お よ び SR 信 号はア ク テ ィ ブ High です。 ス ト レージエ レ メ ン ト には次の初期化オプシ ョ ンがあ り ます。 • SRLOW : CLB SR 信号のアサー ト に よ る 同期ま たは非同期 リ セ ッ ト • SRHIGH : CLB SR 信号のアサー ト に よ る 同期ま たは非同期セ ッ ト • INIT0 : 電源投入ま たはグ ロ ーバル セ ッ ト/リ セ ッ ト に よ る 非同期 リ セ ッ ト (76ページの 「グ ロ ーバル制御信号 GSR お よ び GTS」 参照) • INIT1 : 電源投入ま たはグ ロ ーバルセ ッ ト/リ セ ッ ト に よ る 非同期セ ッ ト SR 信号は、 ス ト レージエ レ メ ン ト を強制的に SRHIGH 属性ま たは SRLOW 属性で指定 さ れた ス テー ト に し ます。SR がアサー ト さ れ る と 、SRHIGH では ス ト レージエ レ メ ン ト の出力 ロ ジ ッ ク レ ベルが強制的に High にな り 、SRLOW では Low にな り ます (表2-2参照)。

SRHIGH お よ び SRLOW は、 ス ラ イ ス内の各ス ト レージエ レ メ ン ト で個々に設定で き ます。 同期

(SYNC) ま たは非同期 (ASYNC) のセ ッ ト/リ セ ッ ト (SRTYPE) は、 個別に設定で き ません。 コ ン フ ィ ギ ュ レーシ ョ ン後の初期ス テー ト ま たはグ ロ ーバル初期ス テー ト は、それぞれ INIT0 お よ び INIT1 属性で定義 さ れ ます。 デフ ォ ル ト では、SRLOW 属性を指定す る と INIT0 に、SRHIGH

属性を指定す る と INIT1 にな り ます。7シ リ ーズデバ イ ス では、SRHIGH お よ び SRLOW に関係 な く INIT0 お よ び INIT1 を設定で き ます。 レ ジ ス タ ま たは ラ ッ チ と し て も 機能す る 4 つの ス ト レージエ レ メ ン ト のセ ッ ト お よ び リ セ ッ ト の コ ン フ ィ ギ ュ レーシ ョ ン オプシ ョ ン を次に示 し ます。 • セ ッ ト/リ セ ッ ト な し • 同期セ ッ ト • 同期 リ セ ッ ト • 非同期セ ッ ト (プ リ セ ッ ト) • 非同期 リ セ ッ ト (ク リ ア)

分散

RAM (SLICEM

のみで使用可能

)

SLICEM 内の フ ァ ン ク シ ョ ン ジ ェ ネ レ ー タ ー (LUT) は、 分散 RAM エ レ メ ン ト と 呼ばれ る 同期

RAM リ ソ ース と し て イ ンプ リ メ ン ト で き ます。SLICEM の複数の LUT を さ ま ざ ま な方法で組み 合わせ る こ と で、 格納で き る デー タ 容量を増やす こ と がで き ます。RAM エ レ メ ン ト は、SLICEM 内で次の イ ンプ リ メ ン ト す る よ う に構成可能です。 • シ ン グルポー ト 32x1 ビ ッ ト RAM • デ ュ アルポー ト 32x1 ビ ッ ト RAM • ク ワ ッ ド ポー ト 32x2 ビ ッ ト RAM • シ ンプルデ ュ アルポー ト 32x6 ビ ッ ト RAM 表 2-2 : SRLOW および SRHIGH を使用 し た と きの真理値表 SR SRVAL 機能 0 SRLOW (デフ ォ ル ト) ロ ジ ッ ク レベル変化な し 1 SRLOW (デフ ォ ル ト) 0 0 SRHIGH ロ ジ ッ ク レベル変化な し 1 SRHIGH 1

(24)

• シ ン グルポー ト 64x1 ビ ッ ト RAM • デ ュ アルポー ト 64x1 ビ ッ ト RAM • ク ワ ッ ド ポー ト 64x1 ビ ッ ト RAM • シ ンプルデ ュ アルポー ト 64x3 ビ ッ ト RAM • シ ン グルポー ト 128x1 ビ ッ ト RAM • デ ュ アルポー ト 128x1 ビ ッ ト RAM • シ ン グルポー ト 256x1 ビ ッ ト RAM 分散 RAM モジ ュ ールは同期 (書 き 込み) リ ソ ース です。 同期読み出 し は、 同一ス ラ イ ス内の フ リ ッ プ フ ロ ッ プ を使用 し て イ ンプ リ メ ン ト で き ます。こ の よ う に フ リ ッ プ フ ロ ッ プ を使用す る 場合には、 フ リ ッ プ フ ロ ッ プの Clock-to-Out 遅延が低減 さ れ る ため、 分散 RAM の性能が向上 し ま す。 ただ し 、 ク ロ ッ ク レ イ テ ン シが 1 サ イ ク ル分追加 さ れます。 分散エ レ メ ン ト では同 じ ク ロ ッ ク 入力が共 有 さ れ ま す。 書 き 込みを実行す る 場合、SLICEM の CE ま たは WE ピ ン で駆動 さ れ る 書 き 込み イ ネーブル (WE) 入力を High に駆動す る 必要があ り ます。 表2-3に、 各分散 RAM コ ン フ ィ ギ ュ レーシ ョ ンで使用す る LUT (各ス ラ イ ス に 4 つ) 数を示 し ま す。 使用可能な分散 RAM プ リ ミ テ ィ ブの詳細は、 『Vivado Design Suite 7 シ リ ーズ FPGA お よ び

Zynq-7000 All Programmable SoC ラ イ ブ ラ リ ガ イ ド 』 (UG953) を参照 し て く だ さ い。

分散 RAM の コ ン フ ィ ギ ュ レーシ ョ ンには、 次の よ う なポー ト があ り ます。 • シ ン グルポー ト • 同期書 き 込みお よ び非同期読み出 し 用に共通のア ド レ ス ポー ト - 読み出 し お よ び書 き 込みア ド レ スは同 じ ア ド レ スバ ス を共有 • デ ュ アルポー ト • 同期書 き 込みお よ び非同期読み出 し 用に 1 ポー ト - 読み出 し お よ び書 き 込みのポー ト ア ド レ ス が共有 さ れてい る フ ァ ン ク シ ョ ン ジ ェ ネ レー タ ーが 1 つ接続 さ れ る 表 2-3 : 分散 RAM の コ ン フ ィ ギ ュ レーシ ョ ン RAM 説明 プ リ ミ テ ィ ブ LUT 数 32 x 1S シ ン グルポー ト RAM32X1S 1 32 x 1D デ ュ アルポー ト RAM32X1D 2 32 x 2Q ク ワ ッ ド ポー ト RAM32M 4 32 x 6SDP シ ンプルデ ュ アル ポー ト RAM32M 4 64 x 1S シ ン グルポー ト RAM64X1S 1 64 x 1D デ ュ アルポー ト RAM64X1D 2 64 x 1Q ク ワ ッ ド ポー ト RAM64M 4 64 x 3SDP シ ンプルデ ュ アル ポー ト RAM64M 4 128 x 1S シ ン グルポー ト RAM128X1S 2 128 x 1D デ ュ アルポー ト RAM128X1D 4 256 x 1S シ ン グルポー ト RAM256X1S 4

(25)

分散 RAM (SLICEM のみで使用可能) • 非同期読み出 し 用に 1 ポー ト - 2 つ目の フ ァ ン ク シ ョ ンジ ェ ネ レー タ ーには、2 つ目の読み出 し 専用ポー ト ア ド レ ス に接続 さ れ る 、A 入力お よ び 1 つ目の読み出 し/書 き 込みポー ト ア ド レ ス と 共有す る WA 入力があ る • シ ンプルデ ュ アルポー ト • 同期書 き 込み用に 1 ポー ト (書 き 込みポー ト か ら のデー タ 出力/読み出 し ポー ト はない) • 非同期読み出 し 用に 1 ポー ト • ク ワ ッ ド ポー ト • 同期書 き 込みお よ び非同期読み出 し 用に 1 ポー ト • 非同期読み出 し 用に 3 ポー ト 図2-3に示す と お り 、 共通書 き 込みポー ト W6:W1 (次の図では、WA[6:1]) は常に、D[6:1] を使用 す る D LUT への入力に よ っ て物理的に駆動 さ れます。 読み出 し ポー ト は、4 つの LUT のそれぞれ で独立 し てい ます。 し たがっ て、DPRAM64 が LUT コ ン フ ィ ギ ュ レーシ ョ ンに設定 さ れていて も 、 D LUT は常に有効な シ ン グルポー ト と な り ます。 読み出 し お よ び書 き 込みア ド レ ス が互いに接続 さ れてい る 場合に SPRAM32 を選択で き ますが、その他の 3 つの LUT は常に有効なデ ュ アルポー ト と な り ます。 図2-6か ら図2-14に、1 つの SLICEM を使用 し て コ ン フ ィ ギ ュ レーシ ョ ンす る 分散 RAM の例を 示 し ます。 x2 コ ン フ ィ ギ ュ レーシ ョ ン (図2-6の 32x2 ク ワ ッ ド ポー ト) を使用す る 場合は、A6 お よ び WA6 を ソ フ ト ウ ェ アで High 駆動 し て、O5 と O6 を独立 さ せます。

(26)

X-Ref Target - Figure 2-6 図 2-6 : 32x2 ク ワ ッ ド ポー ト の分散 RAM (RAM32M) UG474_c2_06_070914 DI1 DOD[0] DOC[0] DOD[1] DOC[1] DOB[0] DOB[1] DOA[0] DOA[1] DI2 DID[1] DID[0] ADDRD[4:0] ADDRC[4:0] ADDRB[4:0] ADDRA[4:0] WCLK WED (CLK) (WE) 5 5 DPRAM32 RAM32M A[6:1] WA[6:1] CLK WE O6 O5 DI1 DI2 5 5 DPRAM32 A[6:1] WA[6:1] CLK WE O6 DI1 DI2 DI2 B[5:1] C[5:1] D[5:1] (AX/BX/CX/DX) (DI) A[5:1] 5 5 DPRAM32 A[6:1] WA[6:1] CLK WE O6 DI1 5 5 DPRAM32 A[6:1] WA[6:1] CLK WE O6 O5 O5 O5

(27)

分散 RAM (SLICEM のみで使用可能)

X-Ref Target - Figure 2-7

2-7 : 32x6 シ ン プルデ ュ アルポー ト の分散 RAM (RAM32M) UG474_c2_06_070914 DI1 O[2] O[1] O[4] O[3] O[6] O[5] DI2 unused unused WADDR[5:1] WADDR[6] = 1 RADDR[5:1] RADDR[6] = 1 DATA[1] DATA[2] DATA[3] DATA[4] DATA[5] DATA[6] WCLK WED (CLK) (WE) 5 5 DPRAM32 RAM32M A[6:1] WA[6:1] CLK WE DI1 DI2 5 5 DPRAM32 A[6:1] WA[6:1] CLK WE O6 DI1 DI2 DI2 B[5:1] C[5:1] D[5:1] A[5:1] 5 5 DPRAM32 A[6:1] WA[6:1] CLK WE O6 DI1 5 5 DPRAM32 A[6:1] WA[6:1] CLK WE O6 O5 O5 O5

(28)

4 つの シ ン グ ル ポー ト 64x1 ビ ッ ト モ ジ ュ ール を図2-8に示す よ う に構築す る 場合は、4 つの RAM64X1S プ リ ミ テ ィ ブで SLICEM を 1 つ使用で き ます。 ただ し 、 こ れ ら のプ リ ミ テ ィ ブでは 同 じ ク ロ ッ ク 、 書 き 込み イ ネーブル、 共有読み出 し お よ び書 き 込みポー ト ア ド レ ス入力を共有す る 必要があ り ます。 こ の コ ン フ ィ ギ ュ レーシ ョ ンは、64x4 ビ ッ ト のシ ン グルポー ト 分散 RAM と 同 等です。 2 つ の デ ュ ア ルポ ー ト 64x1 ビ ッ ト モ ジ ュ ール を図2-9に 示す よ う に 構築す る に は、2 つ の RAM64X1D プ リ ミ テ ィ ブで SLICEM を 1 つ使用で き ます。 ただ し 、 こ れ ら のプ リ ミ テ ィ ブでは 同 じ ク ロ ッ ク 、 書 き 込み イ ネーブル、 共有読み出 し お よ び書 き 込みポー ト ア ド レ ス入力は共有す る 必要があ り ます。 こ の コ ン フ ィ ギ ュ レーシ ョ ンは、64x2 ビ ッ ト のデ ュ アルポー ト 分散 RAM と 同 等です。

X-Ref Target - Figure 2-8

図 2-8 : 64x1 シ ン グルポー ト の分散 RAM (RAM64X1S)

X-Ref Target - Figure 2-9

図 2-9 : 64x1 デ ュ アルポー ト の分散 RAM (RAM64X1D) UG474_c2_07_101210 Output Registered Output (Optional) DI1 D Q (DI) D A[5:0] WCLK WE (D[6:1]) (CLK) (WE/CE) 6 SPRAM64 RAM64X1S A[6:1] WA[6:1] CLK WE O6 O 6 UG474_c2_08_101210 DI1 (DI) D A[5:0] WCLK WE (D[6:1]) (CLK) (WE/CE) 6 6 DPRAM64 RAM64X1D A[6:1] WA[6:1] CLK WE O6 DI1 DPRA[5:0] (C[6:1]) 6 6 DPRAM64 A[6:1] WA[6:1] CLK WE O6 Registered Output (Optional) D Q SPO Registered Output (Optional) D Q DPO

(29)

分散 RAM (SLICEM のみで使用可能)

X-Ref Target - Figure 2-10

図 2-10 : 64x1 ク ワ ッ ド ポー ト の分散 RAM (RAM64M) UG474_c2_09_070914 DI1 DID ADDRD ADDRC ADDRB ADDRA WCLK WE (CLK) (WE) DPRAM64 RAM64M A[6:1] WA[6:1] CLK WE O6 DI1 DPRAM64 A[6:1] WA[6:1] CLK WE O6 DI1 (B[6:1]) (C[6:1]) (D[6:1]) (DI) (A[6:1]) DPRAM64 A[6:1] WA[6:1] CLK WE O6 DI1 DPRAM64 A[6:1] WA[6:1] CLK WE O6 Registered Output DOD DOC DOB DOA (Optional) D Q Registered Output (Optional) D Q Registered Output (Optional) D Q Registered Output (Optional) D Q

(30)

ワ ー ド 数が 64 以上の分散 RAM コ ン フ ィ ギ ュ レーシ ョ ン を イ ン プ リ メ ン ト す る には、 多入力機能 マルチプ レ ク サー (F7AMUX、F7BMUX、 お よ び F8MUX) を図2-12~図2-14に示す よ う に使用 す る 必要があ り ます。 2 つの シ ン グ ル ポー ト 128x1 ビ ッ ト モ ジ ュ ール を図2-12に示す よ う に構築す る には、2 つの RAM128X1S プ リ ミ テ ィ ブで SLICEM を 1 つ使用で き ます。 ただ し 、 こ れ ら のプ リ ミ テ ィ ブでは 同 じ ク ロ ッ ク 、 書 き 込み イ ネーブル、 共有読み出 し お よ び書 き 込みポー ト ア ド レ ス入力を共有す る 必要があ り ます。 こ の コ ン フ ィ ギ ュ レーシ ョ ンは、128x2 ビ ッ ト のシ ン グルポー ト 分散 RAM と 同 等です。

X-Ref Target - Figure 2-11

2-11 : 64x3 シ ン プルデ ュ アルポー ト の分散 RAM (RAM64M) UG474_c2_10_070914 DI1 O[1] O[2] O[3] DI2 unused unused WADDR[6:1] RADDR[6:1] DATA[1] DATA[2] DATA[3] WCLK WED (CLK) (WE) 6 6 DPRAM64 RAM64M A[6:1] WA[6:1] CLK WE DI1 DI2 6 6 DPRAM64 A[6:1] WA[6:1] CLK WE O6 DI1 DI2 DI2 B[6:1] C[6:1] D[6:1] A[6:1] 6 6 DPRAM64 A[6:1] WA[6:1] CLK WE O6 DI1 6 6 DPRAM64 A[6:1] WA[6:1] CLK WE O6 O5 O5 O5

(31)

分散 RAM (SLICEM のみで使用可能)

X-Ref Target - Figure 2-12

図 2-12 : 128x1 シ ングルポー ト の分散 RAM (RAM128X1S) UG474_c2_11_101210 DI1 (DI) A6 (CX) D A[6:0] WCLK WE (CLK) (WE/CE) [5:0] [5:0] 7 SPRAM64 RAM128X1S A[6:1] WA[7:1] CLK WE O6 DI1 7 SPRAM64 A[6:1] WA[7:1] CLK WE O6 Registered Output Output F7BMUX (Optional) D Q 0

(32)

X-Ref Target - Figure 2-13 図 2-13 : 128x1 デ ュ アルポー ト の分散 RAM (RAM128X1D) UG474_c2_12_101210 DI1 D DI AX A[6:0] WCLK DPRA[6:0] WE (CLK) (WE) 7 DPRAM64 RAM128X1D A[6:1] WA[7:1] CLK WE O6 DI1 6 7 DPRAM64 A[6:1] WA[7:1] CLK WE O6 Registered Output F7BMUX (Optional) D Q SPO DI1 6 7 DPRAM64 A[6:1] WA[7:1] CLK WE O6 DI1 6 7 DPRAM64 A[6:1] WA[7:1] CLK WE O6 Registered Output F7AMUX (Optional) D Q DPO A6 (CX) 6

(33)

分散 RAM (SLICEM のみで使用可能)

こ こ に示 し た例 よ り も 大 き な分散 RAM コ ン フ ィ ギ ュ レーシ ョ ンが必要な場合は、SLICEM が 2 つ

以上必要ですが、CLB 内ま たは ス ラ イ ス間には直接接続がないため、 こ れ以上大規模な分散 RAM

は構築で き ません。

X-Ref Target - Figure 2-14

図 2-14 : 256x1 シ ングルポー ト の分散 RAM (RAM256X1S) UG474_c2_13_101210 DI1 D A[7:0] WCLK WE (CLK) (WE/CE) 6 8 SPRAM64 RAM256X1S A[6:1] WA[8:1] CLK WE O6 DI1 6 8 SPRAM64 A[6:1] WA[8:1] CLK WE O6 F7BMUX

F8MUX RegisteredOutput Output (Optional) D Q O DI1 6 8 SPRAM64 A[6:1] WA[8:1] CLK WE O6 DI1 6 8 SPRAM64 A[6:1] WA[8:1] CLK WE O6 F7AMUX A6 (CX) A6 (AX) A7 (BX)

(34)

分散

RAM

のデー タ

フ ロー

同期書き込み

同期書 き 込みは、 ア ク テ ィ ブ High の書 き 込み イ ネーブル (WE) を使用 し てシ ン グル ク ロ ッ クエ ッ ジで実行 さ れます。WE が High の と き 、 入力 (D) がア ド レ ス A の メ モ リ 位置へ読み込まれます。

非同期読み出 し

出力は、 デ ュ アルポー ト モー ド の SPO 出力のア ド レ ス A、 ま たはデ ュ アルポー ト モー ド の DPO 出力のア ド レ ス DPRA で決定 さ れます。 新 し いア ド レ ス がア ド レ ス ピ ンに読み込まれ る と 、LUT にア ク セ スす る 時間分遅れて、 メ モ リ 位置のデー タ 値が出力に現れます。 こ の動作は ク ロ ッ ク 信号 と は関係な く 非同期で実行 さ れます。

分散

RAM

のま と め

分散 RAM の特徴を ま と め る と 次の よ う にな り ます。 • SLICEM にはシ ン グルポー ト と デ ュ アルポー ト があ る • 書 き 込みには、 ク ロ ッ ク エ ッ ジが 1 つ必要 • 読み出 し は非同期で行われ る (Q 出力) • デー タ 入力は、Setup-to-Clock タ イ ミ ン グ仕様に従 う

ROM (

読み出 し 専用 メ モ リ

)

SLICEM お よ び SLICEL の両ス ラ イ ス に含まれ る 各フ ァ ン ク シ ョ ンジ ェ ネ レー タ ーは、64x1 ビ ッ ト ROM を イ ンプ リ メ ン ト で き 、ROM64X1、ROM128X1、 お よ び ROM256X1 の 3 つの コ ン フ ィ ギ ュ レーシ ョ ンが可能です。ROM の内容は各デバ イ ス の コ ン フ ィ ギ ュ レーシ ョ ン時に読み込まれ ます。表2-4に、 各 ROM コ ン フ ィ ギ ュ レーシ ョ ンで使用 さ れ る LUT 数を示 し ます。

シ フ ト

レ ジ ス タ

(SLICEM

のみ

)

SLICEM フ ァ ン ク シ ョ ン ジ ェ ネ レ ー タ ーは、 ス ラ イ ス 内の フ リ ッ プ フ ロ ッ プ を 使用せずに、32 ビ ッ ト シ フ ト レ ジ ス タ と し て も コ ン フ ィ ギ ュ レ ーシ ョ ン で き ま す。 シ フ ト レ ジ ス タ を使用す る と 、 各 LUT でシ リ アルデー タ を 1 ~ 32 ク ロ ッ ク サ イ ク ルだけ遅延 さ せ る こ と がで き ま す。 シ フ ト イ ン D (DI1 LUT ピ ン) お よ びシ フ ト ア ウ ト Q31 (MC31 LUT ピ ン) ラ イ ンは、LUT を カ ス ケー ド 接続 し て よ り 大規模な シ フ ト レ ジ ス タ を構築 し ます。 し たが っ て、1 つの SLICEM にあ る 4 つの LUT を カ ス ケー ド 接続す る と 、最大 128 ク ロ ッ ク サ イ ク ルの遅延を生成で き ます。複数の SLICEM のシ フ ト レ ジ ス タ を組み合わせ る こ と も で き ますが、 よ り 長いシ フ ト レ ジ ス タ を構築で き る ス ラ イ ス間の直接接続はあ り ません。 ま た、LUT B/C/D の MC31 出力 も 使用で き ません。 生 成 さ れたプ ロ グ ラ マブル遅延を使用 し て、 デー タ パ イ プ ラ イ ン の タ イ ミ ン グ のバ ラ ン ス を取 る こ と が可能です。 表 2-4 : ROM コ ン フ ィ ギ ュ レーシ ョ ン ROM LUT 数 64 x 1 1 128 x 1 2 256 x 1 4

(35)

シ フ ト レ ジ ス タ (SLICEM のみ)

シ フ ト レ ジ ス タ には次の よ う な用途が考え ら れます。

• 遅延ま たは レ イ テ ン シの補正

• 同期 FIFO お よ び CAM (Content Addressable Memory)

シ フ ト レ ジ ス タ には次の よ う な機能があ り ます。 • 書 き 込み • ク ロ ッ ク 入力 (CLK) お よびオプシ ョ ンの ク ロ ッ ク イ ネーブル (CE) と 同期 し て実行 さ れ る • Q31 への固定読み出 し ア ク セ ス • ダ イ ナ ミ ッ ク 読み出 し ア ク セ ス • 5 ビ ッ ト のア ド レ スバス A[4:0] を使用 し て実行 さ れ る - LUT ア ド レ ス の LSB は使用せず、 ソ フ ト ウ ェ アに よ っ て自動的に High 駆動 さ れ る • ア ド レ ス を変更す る と 、32 ビ ッ ト の任意のビ ッ ト を非同期に読み出す こ と がで き る (プ リ ミ テ ィ ブ上では Q と し て参照 さ れ る LUT の O6 出力か ら) • こ の機能は、32 ビ ッ ト 未満の小規模シ フ ト レ ジ ス タ を構成す る 際に役立つ - た と えば、13 ビ ッ ト のシ フ ト レ ジ ス タ を構築す る 場合は、 ア ド レ ス を 13 番目のビ ッ ト に設定す る • 同期読み出 し の イ ンプ リ メ ン テーシ ョ ンに、 ス ト レージエ レ メ ン ト ま たはフ リ ッ プ フ ロ ッ プが使用で き る - フ リ ッ プ フ ロ ッ プの Clock-to-Out が遅延全体を左右 し 、 性能が向上す る - ただ し 、 ク ロ ッ ク レ イ テ ン シが 1 サ イ ク ル分だけ追加 さ れ る • シ フ ト レ ジ ス タ のセ ッ ト ま たは リ セ ッ ト はサポー ト さ れていない 図2-15に、32 ビ ッ ト シ フ ト レ ジ ス タ の ロ ジ ッ クブ ロ ッ ク 図を示 し ます。

X-Ref Target - Figure 2-15

図 2-15 : 32 ビ ッ ト シ フ ト レ ジス タ の コ ン フ ィ ギ ュ レーシ ョ ン UG474_c2_14_110510 Output (Q) Registered Output (Optional) (AQ) DI1 D Q (AI)

SHIFTIN (MC31 of Previous LUT)

SHIFTIN (D) A[4:0] CLK CE (A[6:2]) (CLK) (WE/CE) SRL32 SRLC32E A[6:2] CLK CE O6 MC31 SHIFTOUT (Q31) 5

(36)

図2-16に、フ ァ ン ク シ ョ ンジ ェ ネ レー タ ーを 1 つ使用 し たシ フ ト レ ジ ス タ コ ン フ ィ ギ ュ レーシ ョ ンの例を示 し ます。

図2-17に 2 つの 16 ビ ッ ト シ フ ト レ ジ ス タ を示 し ま す。 こ の例は、 1 つの LUT に イ ン プ リ メ ン ト 可能です。SRLC32E お よ び SRL16E プ リ ミ テ ィ ブ の詳細は、 『Vivado Design Suite 7 シ リ ーズ FPGA お よ び Zynq-7000 All Programmable SoC ラ イ ブ ラ リ ガ イ ド 』 (UG953) を参照 し て く だ さ い。

前述の と お り 、 出力 (MC31) を 1 つ追加 し てシ フ ト レ ジ ス タ 間に専用配線を使用す る と 、LUT O6

出力を使用せずに、 その レ ジ ス タ の最終ビ ッ ト を次の レ ジ ス タ の最初のビ ッ ト に接続で き ます。 よ り 長いシ フ ト レ ジ ス タ は、 チ ェ ーン内の任意のビ ッ ト に動的にア ク セ ス し て構築で き ます。 シ フ ト レ ジ ス タ のチ ェーン接続お よ び F7AMUX、F7BMUX、F8MUX マルチプ レ ク サーに よ っ て、 ア ド レ ス指定に よ る ア ク セ ス が可能な最大 128 ビ ッ ト のシ フ ト レ ジ ス タ を 1 つの SLICEM 内に イ ンプ リ メ ン ト で き ます。図2-18か ら図2-20に、SLICEM 1 つを使用 し たシ フ ト レ ジ ス タ コ ン フ ィ ギ ュ レーシ ョ ンの さ ま ざ ま な例を示 し ます。

X-Ref Target - Figure 2-16

図 2-16 : シ フ ト レ ジ ス タ の表記

X-Ref Target - Figure 2-17

図 2-17 : 2 つの 16 ビ ッ ト シ フ ト レ ジ ス タ を使用 し た コ ン フ ィ ギ ュ レーシ ョ ン UG474_c2_15_101210 SHIFTIN (D) SHIFTOUT(Q31) WE CLK Address (A[4:0])

32-bit Shift Register

MUX Q 5 UG474_c2_16_101210 DI1 SHIFTIN1 (AI) SHIFTIN2 (AX) A[3:0] CLK CE 4 SRL16 A[5:2] CLK WE O5 MC31 DI2 4 SRL16 A[5:2] CLK WE O6

(37)

シ フ ト レ ジ ス タ (SLICEM のみ)

X-Ref Target - Figure 2-18

図 2-18 : 64 ビ ッ ト シ フ ト レ ジス タ の コ ン フ ィ ギ ュ レーシ ョ ン UG474_c2_17_101210 DI1 SHIFTIN (D) A[5:0] CLK WE (CLK) (WE/CE) 5 SRL32 A[6:2] CLK WE O6 MC31 MC31 DI1 5 SRL32 A[6:2] CLK WE O6 Registered Output Output (Q) F7AMUX (Optional) D Q A5 (AX) (AQ) SHIFTOUT (Q63) (MC31)

X-Ref Target - Figure 2-19

2-19 : 96 ビ ッ ト シ フ ト レ ジス タ の コ ン フ ィ ギ ュ レーシ ョ ン UG474_c2_18_101210 DI1 SHIFTIN (D) A[6:0] CLK WE AX (A5) (CLK) (WE/CE) 5 SRL32 A[6:2] CLK WE O6 MC31 MC31 DI1 5 SRL32 A[6:2] CLK WE O6 F7BMUX Not Used

F8MUX RegisteredOutput Output (Q) (Optional) D Q (BQ) (BMUX) DI1 5 SRL32 A[6:2] CLK WE O6 F7AMUX CX (A5) BX (A6)

(38)

2 つ以上の SLICEM を使用す る と 128 ビ ッ ト よ り も 長いシ フ ト レ ジ ス タ を構成で き ますが、 ス ラ イ ス間には直接接続がないため、 こ れ よ り 長いシ フ ト レ ジ ス タ は構築で き ません。

シ フ ト

レ ジ ス タ のデー タ

フ ロー

シ フ ト 動作

図5-7に、 シ フ ト 動作の タ イ ミ ン グ図を示 し ます。 シ フ ト 動作には、 次の よ う な特徴があ り ます。 • シ ン グルク ロ ッ ク エ ッ ジで動作す る • ア ク テ ィ ブ High の ク ロ ッ ク イ ネーブルに よ っ て有効 と な る • 入力 (D) はシ フ ト レ ジ ス タ の最初のビ ッ ト に読み込まれ る • ほかのビ ッ ト も それぞれ次の高位ビ ッ ト にシ フ ト す る

X-Ref Target - Figure 2-20

図 2-20 : 128 ビ ッ ト シ フ ト レ ジ ス タ の コ ン フ ィ ギ ュ レーシ ョ ン UG474_c2_19_101210 DI1 SHIFTIN (D) A[6:0] CLK WE (CLK) (WE/CE) 5 SRL32 A[6:2] CLK WE O6 MC31 MC31 MC31 MC31 DI1 SRL32 A[6:2] CLK WE O6 F7BMUX F8MUX CX (A5) BX (A6) Registered Output Output (Q) (Optional) D Q (BMUX) SHIFTOUT (Q127) (MC31) (BQ) DI1 SRL32 A[6:2] CLK WE O6 DI1 SRL32 A[6:2] CLK WE O6 F7AMUX AX (A5)

(39)

マルチ プ レ クサー • カ ス ケー ド 接続可能なシ フ ト レ ジ ス タ コ ン フ ィ ギ ュ レーシ ョ ンでは、 最後のビ ッ ト が MC31 出力にシ フ ト ア ウ ト さ れ る • 5 ビ ッ ト のア ド レ スポー ト (A[4:0]) で選択 さ れた ビ ッ ト は、Q 出力に現れ る

ダ イ ナ ミ ッ ク 読み出 し

ダ イ ナ ミ ッ ク 読み出 し 動作には、 次の よ う な特徴があ り ます。 • Q 出力は、5 ビ ッ ト のア ド レ ス に よ っ て決定 さ れ る • 新 し いア ド レ ス が 5 ビ ッ ト の入力ア ド レ ス ピ ンに読み込まれ る と 、 こ の新 し いビ ッ ト 値が、 LUT にア ク セ スす る 時間分遅れて Q 出力に出力 さ れ る • こ の動作は非同期で、 ク ロ ッ ク 信号お よ び ク ロ ッ ク イ ネーブル信号 と は関係な く 行われ る

ス タ テ ィ ッ ク 読み出 し

ス タ テ ィ ッ ク 読み出 し 動作には、 次の よ う な特徴があ り ます。 • 5 ビ ッ ト ア ド レ ス入力が固定 さ れてい る 場合、Q 出力は常に同 じ ア ド レ ス の値にな る • こ のモー ド では、1 つの LUT に 1 ~ 32 ビ ッ ト のシ フ ト レ ジ ス タ を イ ンプ リ メ ン ト す る • シ フ ト レ ジ ス タ 長は (N+1) と な る (N は、0 ~ 31 の入力ア ド レ ス) • Q 出力は、 シ フ ト 操作 と 同期 し て変化す る • 前のビ ッ ト が次の位置にシ フ ト し て Q に出力 さ れ る

シ フ ト

レ ジ ス タ のま と め

シ フ ト レ ジ ス タ の特徴を ま と め る と 次の よ う にな り ます。 • シ フ ト 操作には ク ロ ッ ク エ ッ ジ 1 つが必要 • LUT の Q 出力に対す る 可変長モー ド の読み出 し は非同期で実行 さ れ る • LUT の Q 出力に対す る 固定長モー ド の読み出 し は同期で実行 さ れ る • デー タ 入力は、Setup-to-Clock タ イ ミ ン グ仕様に従 う • カ ス ケー ド 接続可能な コ ン フ ィ ギ ュ レーシ ョ ンでは、常に Q31 出力に最終のビ ッ ト 値が含まれる • Q31 出力は各シ フ ト 動作後に同期 し て変化す る

マルチ プ レ クサー

7シ リ ーズ FPGA の フ ァ ン ク シ ョ ンジ ェ ネ レー タ ーお よ び関連す る マルチプ レ ク サーは、次を イ ン プ リ メ ン ト で き ます。 • LUT を 1 つ使用す る 4:1 マルチプ レ ク サー • ス ラ イ ス あ た り 4 つの 4:1 マルチプ レ ク サー • LUT を 2 つ使用す る 8:1 マルチプ レ ク サー • ス ラ イ ス あ た り 2 つの 8:1 マルチプ レ ク サー • LUT を 4 つ使用す る 16:1 マルチプ レ ク サー • ス ラ イ ス あ た り 1 つの 16:1 マルチプ レ ク サー

(40)

こ れ ら の多入力マルチプ レ ク サーは、 専用の F7AMUX、F7BMUX、 お よ び F8MUX マルチプ レ ク サーを使用 し て、1 レベルの ロ ジ ッ ク (ま たは LUT) に イ ン プ リ メ ン ト さ れ ます。 こ の よ う なマ ルチプ レ ク サーは、1 つの ス ラ イ ス で最大 4 つの LUT を組み合わせ る こ と がで き ます。 ま た、2 つ の LUT を用いた最大 13 入力の汎用フ ァ ン ク シ ョ ン、 ま たは 4 つの LUT (1 ス ラ イ ス) を用いた 27 入力の汎用フ ァ ン ク シ ョ ン を構成す る 場合に も 使用で き ます。 マルチプ レ ク サーの出力は組み合わ せ回路に よ る 値で、CLB の ス ト レージエ レ メ ン ト に格納で き ます。

大規模マルチ プ レ ク サーのデザイ ン

4:1 マルチ プ レ ク サー

すべての LUT は 4:1 マルチプ レ ク サー (MUX) に コ ン フ ィ ギ ュ レーシ ョ ンで き ます。4:1 MUX は、 同 じ ス ラ イ ス内の フ リ ッ プ フ ロ ッ プ を 1 つ使用 し て イ ンプ リ メ ン ト で き 、1 つの ス ラ イ ス には最大

4 つの 4:1 MUX を イ ンプ リ メ ン ト 可能です (図2-21参照)。

X-Ref Target - Figure 2-21

図 2-21 : 1 つのス ラ イ スに 4 つの 4:1 マルチ プ レ クサー UG474_c2_20_101210 (D[6:1]) (C[6:1]) (B[6:1]) (A[6:1]) (CLK) CLK 6 SLICE LUT LUT LUT LUT A[6:1] O6 6 A[6:1] O6 Registered Output 4:1 MUX Output (Optional) D Q (D) (DQ) Registered Output 4:1 MUX Output (Optional) D Q (C) (CQ) Registered Output 4:1 MUX Output (Optional) D Q (B) (BQ) Registered Output 4:1 MUX Output (Optional) D Q (A) (AQ) 6 A[6:1] O6 6 A[6:1] O6 SEL D [1:0], DATA D [3:0] Input SEL C [1:0], DATA C [3:0] Input SEL B [1:0], DATA B [3:0] Input SEL A [1:0], DATA A [3:0] Input

(41)

マルチ プ レ クサー

8:1

マルチ プ レ ク サー

各ス ラ イ ス には、F7AMUX と F7BMUX がそれぞれ 1 つずつあ り ます。 こ れ ら 2 つの MUX では、

2 つの LUT 出力を組み合わせて最大 13 入力の組み合わせフ ァ ン ク シ ョ ン (ま たは 8:1 MUX) を構 築 し ます。1 つの ス ラ イ ス には最大 2 つの 8:1 MUX を イ ンプ リ メ ン ト で き ます (図2-22参照)。

X-Ref Target - Figure 2-22

図 2-22 : 1 つのス ラ イ スに 2 つの 8:1 マルチ プ レ クサー UG474_c2_21_101210 (D[6:1]) (C[6:1]) (CX) (B[6:1]) (A[6:1]) (AX) SELF7(1) (CLK) CLK SELF7(2) SEL D [1:0], DATA D [3:0] Input (1) SEL C [1:0], DATA C [3:0] Input (1) SEL B [1:0], DATA B [3:0] Input (2) SEL A [1:0], DATA A [3:0] Input (2) 6 SLICE LUT LUT LUT LUT A[6:1] O6 6 A[6:1] O6 Registered Output 8:1 MUX Output (1) (Optional) D Q (CMUX) (CQ) Registered Output 8:1 MUX Output (2) (Optional) D Q (AMUX) (AQ) 6 A[6:1] O6 6 A[6:1] O6 F7BMUX F7AMUX

(42)

16:1

マルチ プ レ ク サー

各ス ラ イ ス には、F8MUX が 1 つあ り ます。 こ の F8MUX は、F7AMUX お よ び F7BMUX の出力 を組み合わせて、 最大 27 入力 (ま たは 16:1 MUX) の組み合わせフ ァ ン ク シ ョ ン を構築 し ます。1

つの ス ラ イ ス には 16:1 MUX を 1 つのみ イ ンプ リ メ ン ト で き ます (図2-23参照)。

複数の SLICEM を使用す る と 16:1 よ り 大規模なマルチプ レ ク サーを構築で き ますが、 ス ラ イ ス間 には直接接続がないため、 こ れ よ り 長いマルチプ レ ク サーは構築で き ません。

X-Ref Target - Figure 2-23

図 2-23 : 1 つのス ラ イ スに 1 つの 16:1 マルチ プ レ クサー UG474_c2_22_101210 (D[6:1]) (C[6:1]) (CX) (B[6:1]) (A[6:1]) (AX) (BX) (CLK) SELF7 SELF7 SELF8 CLK 6 SLICE LUT LUT LUT LUT A[6:1] O6 6 A[6:1] O6 Registered Output 16:1 MUX Output (Optional) D Q (BMUX) (B) 6 A[6:1] O6 6 A[6:1] O6 F7BMUX F8MUX F7AMUX SEL D [1:0], DATA D [3:0] Input SEL C [1:0], DATA C [3:0] Input SEL B [1:0], DATA B [3:0] Input SEL A [1:0], DATA A [3:0] Input

(43)

キ ャ リ ー ロ ジ ッ ク

キ ャ リ ー

ロ ジ ッ ク

フ ァ ン ク シ ョ ン ジ ェ ネ レー タ ーのほか、高速加算/減算を実行す る ために、専用の高速ル ッ ク アヘ ッ ド キ ャ リ ーロ ジ ッ ク が含まれてい ます。図1-1に示す よ う に、7シ リ ーズ FPGA の CLB には 2 つ の独立 し た キ ャ リ ーチ ェーンがあ り ます。 こ のキ ャ リ ーチ ェーンはカ ス ケー ド 接続が可能なため、 図2-2の よ う な、 大規模な加算/減算 ロ ジ ッ ク を構築で き ます。 キ ャ リ ーチ ェーン では上方向に演算が実行 さ れ、 各ス ラ イ ス の高 さ は 4 ビ ッ ト です。 各ビ ッ ト に対 し て キ ャ リ ーマルチプ レ ク サー (MUXCY) と 専用 XOR ゲー ト が 1 つずつあ り 、 選択 さ れた キ ャ リ ービ ッ ト を使用 し てオペ ラ ン ド を加算/減算 し ます。 専用キ ャ リ ーパスお よ びキ ャ リ ーマルチプ レ ク サー (MUXCY) を使用 し て、 フ ァ ン ク シ ョ ンジ ェ ネ レー タ ーを カ ス ケー ド 接続 し 、 多入力 ロ ジ ッ ク フ ァ ン ク シ ョ ン を イ ンプ リ メ ン ト す る こ と も 可能です。

表 1-1 ~ 表 1-3 に、 Artix®-7 、 Kintex®-7 、 お よ び  Virtex®-7 FPGA  で使用可能な  CLB  リ ソ ー ス を示 し ます。 最新情報は、 『 7  シ リ ーズ  FPGA  概要』  ( DS180 )  を参照 し て く だ さ い。
表  1-2 : Kintex-7 FPGA  の  CLB  リ ソ ース
図  2-1 : ASMBL  アーキテ ク チ ャColumnBasedASMBLArchitecture Feature Options
図  2-7 : 32x6  シ ン プル デ ュ アル ポー ト の分散  RAM (RAM32M) UG474_c2_06_070914DI1O[2]O[1]O[4]O[3]O[6]O[5]DI2unusedunusedWADDR[5:1]WADDR[6] = 1RADDR[5:1]RADDR[6] = 1DATA[1]DATA[2]DATA[3]DATA[4]DATA[5]DATA[6]WCLKWED(CLK)(WE)55DPRAM32RAM32MA[6:1]WA[6:1]CLKWEDI1DI255D
+7

参照

関連したドキュメント

Rumsey, Jr, "Alternating sign matrices and descending plane partitions," J. Rumsey, Jr, "Self-complementary totally symmetric plane

The undersigned hereby certifies that the above details and statements are correct and that the goods specified in this Declaration of Origin meet all the

Touchdown Total may be applied as a spot spray in peppermint and spearmint. Apply spray-to-wet with hand-held equipment, such as backpack and knapsack sprayers, pump-up

Direct materials suppliers to onsemi must ensure that all materials used in part manufacture and in facility operations satisfy all applicable environmental, health and

NO WARRANTIES OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE, ARE MADE REGARDING PRODUCTS DESCRIBED OR

Figure 2-10 Composition ratios in final energy consumption by fuel type in the industrial sector ... Figure 2-11 IIP increases in manufacturing in

the materials imported from Japan into a beneficiary country and used there in the production of goods to be exported to Japan later: ("Donor-country content

Other regulations : This Safety Data Sheet is for a pesticide product registered by the US Environmental Protection Agency (USEPA) and is therefore also subject to certain