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

7 シ リ ーズ FPGA
コ ン フ ィ ギ ャ ラ ブル
ロジ ッ ク ブロ ッ ク
ユーザー ガ イ ド
UG474 (v1.7) 2014 年 11 月 17 日
本資料は表記のバージョンの英語版を翻訳したもので、内容に相違が生じる場合には原文を優先しま
す。資料によっては英語版の更新に対応していないものがあります。日本語版は参考用としてご使用の
上、最新情報につきましては、必ず最新英語版をご参照ください。
DISCLAIMER
The information disclosed to you hereunder (the “Materials”) is provided solely for the selection and use of Xilinx products.To the
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」の最後の段落を修正。
7 シ リ ーズ FPGA CLB ユーザー ガ イ ド
内容
japan.xilinx.com
UG474 (v1.7) 2014 年 11 月 17 日
日付
バージ ョ ン
内容
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 デバ イ ス の記述を追加。
UG474 (v1.7) 2014 年 11 月 17 日
japan.xilinx.com
7 シ リ ーズ FPGA CLB ユーザー ガ イ ド
7 シ リ ーズ FPGA CLB ユーザー ガ イ ド
japan.xilinx.com
UG474 (v1.7) 2014 年 11 月 17 日
目次
改訂履歴. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 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
7 シ リ ーズ FPGA CLB ユーザー ガ イ ド
UG474 (v1.7) 2014 年 11 月 17 日
japan.xilinx.com
5
第 6 章 : 高度な使用法
ラ ッ チ フ ァ ン ク シ ョ ンの ロ ジ ッ ク への転用 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75
イ ン タ ー コ ネ ク ト リ ソ ース . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 76
ス タ ッ ク ド シ リ コ ン イ ン タ ーコ ネ ク ト (SSI) テ ク ノ ロ ジ を使用す る デバ イ ス . . . . . . . . . . . . . . . 77
6
japan.xilinx.com
7 シ リ ーズ FPGA CLB ユーザー ガ イ ド
UG474 (v1.7) 2014 年 11 月 17 日
こ のユーザー ガ イ ド について
ザ イ リ ン ク ス 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 リ ソ ース の
適用例を示 し ます。
7 シ リ ーズ FPGA CLB ユーザー ガ イ ド
UG474 (v1.7) 2014 年 11 月 17 日
japan.xilinx.com
7
こ のユーザー ガ イ ド について
•
第 5 章 「 タ イ ミ ン グ」 では、 タ イ ミ ン グ モデル と 記載 さ れてい る CLB タ イ ミ ン グ仕様の定義
を説明 し ます。
•
第 6 章 「高度な使用法」 では、 7 シ リ ーズ CLB の高度な機能について説明 し ます。
その他の リ ソ ース
その他の資料は、 ザ イ リ ン ク ス の ウ ェ ブサ イ ト か ら 入手で き ます。
japan.xilinx.com/support/documentation/index
シ リ コ ンや ソ フ ト ウ ェ ア、 IP に関す る ア ンサー デー タ ベース を検索 し た り 、 テ ク ニ カル サポー ト
の ウ ェ ブケース を開 く 場合は、 次の ウ ェ ブサ イ ト にア ク セ ス し て く だ さ い。
japan.xilinx.com/support
8
japan.xilinx.com
7 シ リ ーズ FPGA CLB ユーザー ガ イ ド
UG474 (v1.7) 2014 年 11 月 17 日
第1章
概要
CLB の概要
7 シ リ ーズ コ ン フ ィ ギ ャ ラ ブル ロ ジ ッ ク ブ ロ ッ ク (CLB) は、 次に示す高機能かつ高性能の FPGA
ロ ジ ッ ク を提供 し ます。
•
完全な 6 入力ル ッ ク ア ッ プ テーブル (LUT) テ ク ノ ロ ジ
•
デ ュ アル LUT5 (5 入力 LUT) オプシ ョ ン
•
分散 メ モ リ お よ びシ フ ト レ ジ ス タ ロ ジ ッ ク フ ァ ン ク シ ョ ン
•
高速演算専用のキ ャ リ ー ロ ジ ッ ク フ ァ ン ク シ ョ ン
•
使用効率を向上 さ せ る 多入力マルチプ レ ク サー
CLB ( コ ン フ ィ ギ ャ ラ ブル ロ ジ ッ ク ブ ロ ッ ク ) は、 順次回路お よ び組み合わせ回路を イ ンプ リ メ ン
ト す る 際の主要な ロ ジ ッ ク リ ソ ー ス です。 各 CLB エ レ メ ン ト は ス イ ッ チ マ ト リ ッ ク ス に接続 し
て、 汎用配線マ ト リ ッ ク ス にア ク セ ス し ます (図 1-1 参照)。 1 つの CLB エ レ メ ン ト には、 2 つの ス
ラ イ ス があ り ます。
X-Ref Target - Figure 1-1
COUT
COUT
CLB
Slice(1)
Switch
Matrix
Slice(0)
CIN
CIN
UG474_c1_01_071910
図 1-1 : CLB 内のス ラ イ ス配置
7 シ リ ーズ FPGA の LUT は、 出力が 1 つの 6 入力 LUT と し て、 ま たは出力は別々でア ド レ ス ま
たは ロ ジ ッ ク 入力が共通の 2 つの 5 入力 LUT と し て構成で き ます。各 5 入力 LUT 出力はオプシ ョ
ン と し て フ リ ッ プ フ ロ ッ プで ラ ッ チで き ます。 6 入力 LUT が 4 つ、 それ ら の フ リ ッ プ フ ロ ッ プが
8 つ、 そ し て演算キ ャ リ ー ロ ジ ッ ク に よ っ て ス ラ イ ス が構成 さ れ、 2 つの ス ラ イ ス が CLB を構成
し ます。 (各 LUT か ら 1 つずつの) 4 つの フ リ ッ プ フ ロ ッ プはオプシ ョ ン で、 ラ ッ チ と し て使用で
き ます。 こ の場合、 ス ラ イ ス に残っ た 4 つの フ リ ッ プ フ ロ ッ プは未使用にする 必要があ り ます。
7 シ リ ーズ FPGA CLB ユーザー ガ イ ド
UG474 (v1.7) 2014 年 11 月 17 日
japan.xilinx.com
9
第 1 章 : 概要
全ス ラ イ ス の約 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 リ ソ ース
フリ ップ
フロップ
200
100
20,800
20,800
400
200
41,600
2,400
32,600
600
300
65,200
3,568
47,200
892
446
94,400
ス ラ イ ス (1)
SLICEL
SLICEM
7A15T
2,600(2)
1,800
800
10,400
7A35T
(2)
3,600
1,600
5,750
8,232
7A50T
7A75T
10
(Kb)
デバイ ス
5,200
8,150
(2)
11,800
6 入力 LUT 分散 RAM (Kb)
japan.xilinx.com
シ フ ト レ ジス タ
7 シ リ ーズ FPGA CLB ユーザー ガ イ ド
UG474 (v1.7) 2014 年 11 月 17 日
デバイ ス リ ソ ース
表 1-1 : Artix-7 FPGA の CLB リ ソ ース (続き )
デバイ ス
ス ラ イ ス (1)
SLICEL
SLICEM
7A100T
15,850
11,100
4,750
63,400
7A200T
33,650
22,100
11,550
134,600
(Kb)
フリ ップ
フロップ
1,188
594
126,800
2,888
1,444
269,200
6 入力 LUT 分散 RAM (Kb)
シ フ ト レ ジス タ
注記 :
1. 7 シ リ ーズ FPGA の各ス ラ イ ス には、 4 つの LUT と 8 つの フ リ ッ プ フ ロ ッ プが含ま れ、 SLICEM でのみ LUT を分散 RAM ま たは SRL
と し て使用で き ます。
2. デバ イ ス内でサポー ト さ れ る LUT と フ リ ッ プ フ ロ ッ プの数に対応す る ス ラ イ ス の数です。
表 1-2 : Kintex-7 FPGA の CLB リ ソ ース
(Kb)
フリ ップ
フロップ
838
419
82,000
101,400
2,188
1,094
202,800
16,000
203,800
4,000
2,000
407,600
35,300
20,350
222,600
5,088
2,544
445,200
40,900
22,650
254,200
5,663
2,831
508,400
41,400
23,750
260,600
5,938
2,969
521,200
47,500
27,150
298,600
6,788
3,394
597,200
デバイ ス
ス ラ イ ス (1)
SLICEL
SLICEM
7K70T
10,250
6,900
3,350
41,000
7K160T
25,350
16,600
8,750
7K325T
50,950
34,950
7K355T
55,650
7K410T
63,550
7K420T
7K480T
(2)
65,150
74,650
6 入力 LUT 分散 RAM (Kb)
シ フ ト レジス タ
注記 :
1. 7 シ リ ーズ FPGA の各ス ラ イ ス には、 4 つの LUT と 8 つの フ リ ッ プ フ ロ ッ プが含まれ、 SLICEM でのみ LUT を分散 RAM ま たは SRL
と し て使用で き ます。
2. デバ イ ス内でサポー ト さ れ る LUT と フ リ ッ プ フ ロ ッ プの数に対応す る ス ラ イ ス の数です。
表 1-3 : Virtex-7 FPGA の CLB リ ソ ース
(Kb)
フリ ップ
フロップ
6,938
3,469
728,400
1,221,600
21,550
10,775
2,443,200
17,550
204,000
4,388
2,194
408,000
38,300
26,100
257,600
6,525
3,263
515,200
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
デバイ ス
ス ラ イ ス (1)
SLICEL
SLICEM
7V585T
91,050
63,300
27,750
364,200
7V2000T
305,400
219,200
86,200
7VX330T
51,000
33,450
7VX415T
64,400
7VX485T
7 シ リ ーズ FPGA CLB ユーザー ガ イ ド
UG474 (v1.7) 2014 年 11 月 17 日
6 入力 LUT 分散 RAM (Kb)
japan.xilinx.com
シ フ ト レジス タ
11
第 1 章 : 概要
表 1-3 : Virtex-7 FPGA の CLB リ ソ ース (続き )
デバイ ス
ス ラ イ ス (1)
SLICEL
SLICEM
7VH870T
136,900
83,750
53,150
6 入力 LUT 分散 RAM (Kb)
547,600
13,275
シ フ ト レジス タ
(Kb)
フリ ップ
フロップ
6,638
1,095,200
注記 :
1. 7 シ リ ーズ FPGA の各ス ラ イ ス には、 4 つの LUT と 8 つの フ リ ッ プ フ ロ ッ プが含ま れ、 SLICEM でのみ LUT を分散 RAM ま たは SRL
と し て使用で き ます。
2. デバ イ ス内でサポー ト さ れ る LUT と フ リ ッ プ フ ロ ッ プの数に対応す る ス ラ イ ス の数です。
推奨デザイ ン フ ロー
CLB リ ソ ース は汎用デザ イ ン ロ ジ ッ ク 用に推論 さ れ る ため、 イ ン ス タ ン シエーシ ョ ンは不要です。
HDL デザ イ ン を適切に行 う だけで十分です。 次に、 注意すべき 点を示 し ます。
•
CLB のフ リ ッ プ フ ロ ッ プにはセ ッ ト ま たは リ セ ッ ト のいずれか一方 し かあ り ません。セ ッ ト と
リ セ ッ ト の両方は使用で き ません。
•
フ リ ッ プ フ ロ ッ プが豊富に用意 さ れてい ます。 性能を向上 さ せ る ためにパ イ プ ラ イ ン処理を検
討 し て く だ さ い。
•
制御入力は ス ラ イ ス ま たは CLB 間で共有 さ れます。 各デザ イ ンに必要な制御信号の数は可能
な限 り 少な く し ま す。 制御入力には、 ク ロ ッ ク 、 ク ロ ッ ク イ ネーブル、 セ ッ ト / リ セ ッ ト 、 書
き 込み イ ネーブルな ど があ り ます。
•
6 入力 LUT を 32 ビ ッ ト のシ フ ト レ ジ ス タ と し て使用する こ と で、高効率な イ ンプ リ メ ン テー
シ ョ ンが可能にな り ます。
•
必要な格納領域が小 さ な場合は、 6 入力 LUT を 64x1 の メ モ リ と し て使用で き ます。
•
専用キ ャ リ ー ロ ジ ッ ク を使用す る と 演算機能を効果的に イ ンプ リ メ ン ト で き ます。
次に、 推奨デザ イ ン フ ロ ーの手順を示 し ます。
1.
推奨す る 手法 (HDL、 IP な ど ) を用いてデザ イ ン を イ ンプ リ メ ン ト し ます。
2.
使用率レ ポー ト か ら 、 リ ソ ース の利用状況を判断 し ます。
演算 ロ ジ ッ ク 、 分散 RAM、 SRL が適宜使用 さ れてい る こ と を確認 し ます。
3.
4.
フ リ ッ プ フ ロ ッ プの使用法を検討 し ます。
a.
性能向上を目的 と し たパ イ プ ラ イ ン処理の使用
b.
専用 リ ソ ース (ブ ロ ッ ク RAM、 DSP) 出力への専用フ リ ッ プ フ ロ ッ プの使用
c.
シ フ ト レ ジ ス タ の SRL と し ての使用 ( セ ッ ト / リ セ ッ ト の使用を避け る )
セ ッ ト / リ セ ッ ト の使用は最低限に抑え ます。
ピ ン配置の計画
多 く の場合、 リ ソ ース の使用はデバ イ ス の ピ ン配置に影響を及ぼ し ますが、 CLB はデバ イ ス全体に
分散 し てい る ため ピ ン配置に与え る 影響はわずかです。 ASMBL™ アーキ テ ク チ ャ は、 ほ と ん ど の
I/O の両側にあ る CLB に最大限の柔軟性を提供 し ます。
FPGA の要件に基づいて ツールに I/O 配置を決定 さ せ る こ と が最良の方法です。その結果に対 し て、
ボー ド レ イ ア ウ ト の検討時に必要な変更を加え ます。 ただ し 、 ツールがデザ イ ン要件に基づいて最
適の位置に I/O を配置で き る よ う に タ イ ミ ン グ制約を設定す る 必要があ り ます。
12
japan.xilinx.com
7 シ リ ーズ FPGA CLB ユーザー ガ イ ド
UG474 (v1.7) 2014 年 11 月 17 日
ピ ン配置の計画
キ ャ リ ー ロ ジ ッ ク はカ ラ ムに沿っ て垂直上方向にカ ス ケー ド 接続す る ため、 多入力演算バ ス は I/O
を含むほかの ロ ジ ッ ク と 直交す る 方向で駆動す る 可能性があ り ます。
ほ と ん ど の 7 シ リ ーズ デバ イ スは、ASMBL アーキ テ ク チ ャ の分散 I/O の効果を最大限に活かす こ
と がで き る フ リ ッ プチ ッ プ パ ッ ケージで提供 さ れます。 一方、 よ り 小型のデバ イ ス は低 コ ス ト の ワ
イ ヤ ボ ンデ ィ ン グ パ ッ ケージで提供 さ れ ます。 こ れ ら の小型パ ッ ケージでは、 一部の ピ ン が特性
上ほかの ピ ンに比べて I/O や特別な リ ソ ース に近接 し てい る ため、 内部 ロ ジ ッ ク の定義が完了 し て
か ら ピ ン配置を決定す る 必要があ り ます。
7 シ リ ーズ FPGA CLB ユーザー ガ イ ド
UG474 (v1.7) 2014 年 11 月 17 日
japan.xilinx.com
13
第 1 章 : 概要
14
japan.xilinx.com
7 シ リ ーズ FPGA CLB ユーザー ガ イ ド
UG474 (v1.7) 2014 年 11 月 17 日
第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 に、さ ま ざ ま な タ イ プのカ ラ ムベース リ ソ ース か ら 成 る 概略ブ ロ ッ ク 図を示 し ます。
7 シ リ ーズ FPGA CLB ユーザー ガ イ ド
UG474 (v1.7) 2014 年 11 月 17 日
japan.xilinx.com
15
第 2 章 : 機能の詳細
X-Ref Target - Figure 2-1
Feature Options
Column
Based
ASMBL
Architecture
Logic (SLICEL)
Global Clock
Logic (SLICEM)
High-performance I/O
DSP
High-range I/O
Memory
Integrated IP
Clock Management Tile
Mixed Signal
Transceivers
Domain A
Domain B
Domain C
Applications
Applications
Applications
UG474_c2_24_071014
図 2-1 : ASMBL アーキテ ク チ ャ
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 本の独立 し た キ ャ リ ー チ ェーンがあ り ます。
16
japan.xilinx.com
7 シ リ ーズ FPGA CLB ユーザー ガ イ ド
UG474 (v1.7) 2014 年 11 月 17 日
CLB の配置
ザ イ リ ン ク ス ツールでは、 ス ラ イ ス は次の よ う に定義 さ れてい ます。
•
「X」 の後に続 く 数字は、 各ペアでの ス ラ イ ス の位置お よ びス ラ イ ス のカ ラ ム位置を示 し ます。
こ の番号は、 最初の CLB カ ラ ムでは ス ラ イ ス の下位か ら 0、 1 と 定義 し 、 2 番目の CLB カ ラ
ムの下位か ら 2、 3 な ど の よ う に定義 し ます。
•
「Y」 の後に続 く 数字は、 ス ラ イ ス の行を示 し ます。 こ の番号は、 同 じ CLB 内では同一にな り 、
CLB の行間では下か ら 上に位置す る に従っ て順に大 き く な り ます。
図 2-2 に、 ダ イ の左下に配置 さ れた 4 つの CLB を示 し ます。
X-Ref Target - Figure 2-2
COUT
COUT
COUT
CLB
COUT
CLB
Slice1
X1Y1
Slice1
X3Y1
Slice0
X0Y1
Slice0
X2Y1
CIN
CIN
COUT
COUT
CLB
CIN
CIN
COUT
COUT
CLB
Slice1
X1Y0
Slice1
X3Y0
Slice0
X0Y0
Slice0
X2Y0
UG474_c2_01_092210
図 2-2 : CLB およびス ラ イ ス間の行 と カ ラ ムの関係
CLB およびス ラ イ ス コ ン フ ィ ギ ュ レーシ ョ ン
表 2-1 に、1 つの CLB に含まれ る ロ ジ ッ ク リ ソ ース を示 し ます。SLICEM の各 LUT はル ッ ク ア ッ
プ テーブル、 分散 RAM、 ま たはシ フ ト レ ジ ス タ と し て構成で き ます。
表 2-1 : 1 つの CLB に含まれる ロ ジ ッ ク リ ソ ース
スラ イス
数
LUT
フリ ップ
フロップ
演算および
キ ャ リ ー チ ェ ーン
分散 RAM(1)
シ フ ト レ ジ ス タ (1)
2
8
16
2
256 ビ ッ ト
128 ビ ッ ト
注記 :
1. SLICEM にのみ該当 し ます。 SLICEL には分散 RAM ま たはシ フ ト レ ジ ス タ はあ り ません。
7 シ リ ーズ FPGA CLB ユーザー ガ イ ド
UG474 (v1.7) 2014 年 11 月 17 日
japan.xilinx.com
17
第 2 章 : 機能の詳細
ス ラ イ スの説明
すべての ス ラ イ ス には、 次が含まれます。
•
4 つの ロ ジ ッ ク フ ァ ン ク シ ョ ン ジ ェ ネ レー タ ー ( ま たはル ッ ク ア ッ プ テーブル)
•
8 つの ス ト レージ エ レ メ ン ト
•
多入力機能マルチプ レ ク サー
•
キャ リー ロジッ ク
ス ラ イ ス では、 こ れ ら のエ レ メ ン ト を使用 し て ロ ジ ッ ク フ ァ ン ク シ ョ ン、 演算機能、 お よ び ROM
機能を提供 し ます。 さ ら に、 特定ス ラ イ ス は 2 つの フ ァ ン ク シ ョ ン (分散 RAM を使用 し たデー タ
格納お よ び 32 ビ ッ ト レ ジ ス タ を使用 し たデー タ シ フ ト ) をサポー ト し ます。 こ れ ら の追加フ ァ ン
ク シ ョ ン を サ ポー ト す る 特定 ス ラ イ ス を SLICEM、 そ の他の ス ラ イ ス を SLICEL と 呼び ま す。
SLICEM のエ レ メ ン ト お よ び接続を図 2-3 に、SLICEL のエ レ メ ン ト お よ び接続を図 2-4 に示 し ま
す。 各 CLB には SLICEL が 2 つ、 ま たは SLICEL と SLICEM が各 1 つ含まれます。
18
japan.xilinx.com
7 シ リ ーズ FPGA CLB ユーザー ガ イ ド
UG474 (v1.7) 2014 年 11 月 17 日
ス ラ イ スの説明
X-Ref Target - Figure 2-3
D
CE
CK
COUT
SRHI
SRLO
INIT1 Q
INIT0
SR
Reset Type
Sync/Async
FF/LAT
DX
D6:1
DMUX
DI2
A6:A1
W6:W1
CK
D
D
O6
O5
DX
D
CE
CK
DI1
WEN MC31
D
DI
CE
CK
SRHI
SRLO
INIT1 Q
INIT0
SR
FF/LAT
INIT1 Q
INIT0
SRHI
SRLO
SR
CX
C6:1
CMUX
DI2
A6:A1
W6:W1
CK
C
C
O6
O5
CX
D
CE
CK
DI1
WEN MC31
D
CI
CE
CK
SRHI
SRLO
INIT1 Q
INIT0
SR
FF/LAT
INIT1 Q
INIT0
SRHI
SRLO
BMUX
DI2
A6:A1
W6:W1
CK
B
B
O6
O5
BX
DI1
WEN MC31
D
BI
CE
CK
SRHI
SRLO
INIT1 Q
INIT0
SR
D
CE
CK
FF/LAT
INIT1 Q
INIT0
SRHI
SRLO
BQ
SR
AX
A6:1
CQ
SR
BX
B6:1
DQ
AMUX
DI2
A6:A1
W6:W1
CK
AX
DI1
WEN MC31
AI
A
A
O6
O5
D
CE
CK
FF/LAT
INIT1 Q
INIT0
SRHI
SRLO
AQ
SR
0/1
SR
CE
CLK
CK
WE
WEN
CIN
UG474_c2_02_110510
図 2-3 : SLICEM の図
7 シ リ ーズ FPGA CLB ユーザー ガ イ ド
UG474 (v1.7) 2014 年 11 月 17 日
japan.xilinx.com
19
第 2 章 : 機能の詳細
X-Ref Target - Figure 2-4
D
COUT
CE
CK
SRHI
SRLO
INIT1 Q
INIT0
SR
Reset Type
Sync/Async
FF/LAT
DX
D6:1
DMUX
A6:A1
D
D
O6
O5
DX
D
CE
CK
D
CE
CK
SRHI
SRLO
INIT1 Q
INIT0
SR
FF/LAT
INIT1
Q
INIT0
SRHI
SRLO
SR
CX
C6:1
CMUX
A6:A1
C
C
O6
O5
CX
D
CE
CK
D
CE
CK
SRHI
SRLO
INIT1 Q
INIT0
SR
FF/LAT
INIT1
Q
INIT0
SRHI
SRLO
BMUX
A6:A1
B
B
O6
O5
BX
D
CE
CK
SRHI
SRLO
INIT1 Q
INIT0
SR
D
CE
CK
FF/LAT
Q
INIT1
INIT0
SRHI
SRLO
SR
AX
A6:1
CQ
SR
BX
B6:1
DQ
BQ
AMUX
A6:A1
A
A
O6
O5
AX
D
CE
CK
FF/LAT
Q
INIT1
INIT0
SRHI
SRLO
AQ
SR
0/1
SR
CE
CLK
CIN
UG474_c2_03_101210
図 2-4 : SLICEL の図
20
japan.xilinx.com
7 シ リ ーズ FPGA CLB ユーザー ガ イ ド
UG474 (v1.7) 2014 年 11 月 17 日
ル ッ ク ア ッ プ テーブル (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 出力で直接駆動する か、 あ
7 シ リ ーズ FPGA CLB ユーザー ガ イ ド
UG474 (v1.7) 2014 年 11 月 17 日
japan.xilinx.com
21
第 2 章 : 機能の詳細
る いは AX、BX、CX、ま たは DX 入力か ら フ ァ ン ク シ ョ ン ジ ェ ネ レー タ ーをバ イ パスする BYPASS
ス ラ イ ス入力で直接駆動で き ます。 ラ ッ チ と し て コ ン フ ィ ギ ュ レーシ ョ ンする 場合、 ラ ッ チは CLK
が Low の と き に透過にな り ます。
上記の 4 つ以外に、 エ ッ ジ ト リ ガーの D タ イ プ フ リ ッ プ フ ロ ッ プ と し てのみ コ ン フ ィ ギ ュ レ ー
シ ョ ン可能な ス ト レージ エ レ メ ン ト が 4 つあ り ます。 D 入力は、 LUT の O5 出力ま たは AX、 BX、
CX、 あ る いは DX 入力を介 し た BYPASS ス ラ イ ス 入力に よ っ て駆動可能です。 従来の 4 つの ス
ト レージ エ レ メ ン ト が ラ ッ チ と し て コ ン フ ィ ギ ュ レーシ ョ ン さ れ る 場合、 こ れ ら の ス ト レージ エ
レ メ ン ト は使用で き ません。
図 2-5 に、 ス ラ イ ス で レ ジ ス タ のみを使用 し た コ ン フ ィ ギ ュ レーシ ョ ンお よ びレ ジ ス タ と ラ ッ チの
両方を使用 し た コ ン フ ィ ギ ュ レーシ ョ ン を示 し ます。
X-Ref Target - Figure 2-5
DFF
LUT D O5 Output
D
CE
CK
DX
INIT1
Q
INIT0
SRHIGH
SRLOW
D
CE
CK
D
CE
CK
DX
SR
LUT C Output
INIT1
Q
INIT0
SRHIGH
SRLOW
D
CE
CK
CX
Reset Type
FF
LATCH
Q
INIT1
INIT0
SRHIGH
SRLOW
SR
FF
LATCH
Q
INIT1
INIT0
SRHIGH
SRLOW
SR
BFF
BX
D
CE
CK
CE
CLK
Sync
LUT B Output
Async
BQ
BFF/LATCH
BX
D
CE
CK
INIT1
Q
INIT0
SRHIGH
SRLOW
D
CE
CK
CE
SR
CLK
AFF
LUT A O5 Output
AX
INIT1
Q
INIT0
SRHIGH
SRLOW
CQ
Reset Type
SR
Sync
LUT B O5 Output
DQ
CFF/LATCH
CQ
SR
SR
DFF/LATCH
DQ
CFF
LUT C O5 Output
CX
LUT D Output
LUT A Output
AX
FF
LATCH
Q
INIT1
INIT0
SRHIGH
SRLOW
SR
BQ
AFF/LATCH
AQ
SR
Async
D
CE
CK
FF
LATCH
Q
INIT1
INIT0
SRHIGH
SRLOW
SR
AQ
UG474_c2_04_101210
図 2-5 : ス ラ イ ス内の 2 つの コ ン フ ィ ギ ュ レーシ ョ ン ( レ ジス タ のみ 4 つ、 およびレ ジ ス タ / ラ ッ チ 4 つ)
制御信号
1 つの ス ラ イ ス内の ス ト レージ エ レ メ ン ト 間では、 ク ロ ッ ク (CLK)、 ク ロ ッ ク イ ネーブル (CE)、
お よ びセ ッ ト / リ セ ッ ト (SR) 制御信号が共有 さ れます。 こ のため、 ス ラ イ ス内の 1 つの フ リ ッ プ フ
ロ ッ プで SR ま たは CE が イ ネーブルの と き 、 ス ラ イ ス で使用 さ れ る 残 り の フ リ ッ プ フ ロ ッ プで も
共有信号に よ っ て SR ま たは CE が イ ネーブルにな り ます。CLK 信号のみプ ロ グ ラ ム可能な極性が
22
japan.xilinx.com
7 シ リ ーズ FPGA CLB ユーザー ガ イ ド
UG474 (v1.7) 2014 年 11 月 17 日
分散 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 参照)。
表 2-2 : SRLOW および SRHIGH を使用 し た と きの真理値表
SR
SRVAL
機能
0
SRLOW (デフ ォ ル ト )
ロ ジ ッ ク レベル変化な し
1
SRLOW (デフ ォ ル ト )
SRHIGH
0
0
ロ ジ ッ ク レベル変化な し
1
SRHIGH
1
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
7 シ リ ーズ FPGA CLB ユーザー ガ イ ド
UG474 (v1.7) 2014 年 11 月 17 日
japan.xilinx.com
23
第 2 章 : 機能の詳細
•
シ ン グル ポー ト 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) を参照 し て く だ さ い。
表 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
分散 RAM の コ ン フ ィ ギ ュ レーシ ョ ンには、 次の よ う なポー ト があ り ます。
•
シ ン グル ポー ト
•
同期書 き 込みお よ び非同期読み出 し 用に共通のア ド レ ス ポー ト
•
デ ュ アル ポー ト
•
同期書 き 込みお よ び非同期読み出 し 用に 1 ポー ト
-
24
読み出 し お よ び書 き 込みア ド レ スは同 じ ア ド レ ス バ ス を共有
読み出 し お よ び書 き 込みのポー ト ア ド レ ス が共有 さ れてい る フ ァ ン ク シ ョ ン ジ ェ ネ
レー タ ーが 1 つ接続 さ れ る
japan.xilinx.com
7 シ リ ーズ FPGA CLB ユーザー ガ イ ド
UG474 (v1.7) 2014 年 11 月 17 日
分散 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 を独立 さ せます。
7 シ リ ーズ FPGA CLB ユーザー ガ イ ド
UG474 (v1.7) 2014 年 11 月 17 日
japan.xilinx.com
25
第 2 章 : 機能の詳細
X-Ref Target - Figure 2-6
RAM32M
DID[1]
DID[0]
ADDRD[4:0]
(DI)
(AX/BX/CX/DX)
D[5:1] 5
5
(CLK)
(WE)
WCLK
WED
DPRAM32
DI1
DI2
A[6:1]
WA[6:1]
CLK
WE
O6
DOD[0]
O5
DOD[1]
DPRAM32
ADDRC[4:0]
C[5:1] 5
5
DI1
DI2
A[6:1]
WA[6:1]
CLK
WE
O6
DOC[0]
O5
DOC[1]
DPRAM32
ADDRB[4:0]
B[5:1] 5
5
DI1
DI2
A[6:1]
WA[6:1]
CLK
WE
O6
DOB[0]
O5
DOB[1]
DPRAM32
ADDRA[4:0]
A[5:1] 5
5
DI1
DI2
A[6:1]
WA[6:1]
CLK
WE
O6
DOA[0]
O5
DOA[1]
UG474_c2_06_070914
図 2-6 : 32x2 ク ワ ッ ド ポー ト の分散 RAM (RAM32M)
26
japan.xilinx.com
7 シ リ ーズ FPGA CLB ユーザー ガ イ ド
UG474 (v1.7) 2014 年 11 月 17 日
分散 RAM (SLICEM のみで使用可能)
X-Ref Target - Figure 2-7
RAM32M
DPRAM32
unused
unused
WADDR[5:1]
WADDR[6] = 1
D[5:1] 5
5
(CLK)
(WE)
WCLK
WED
DI1
DI2
A[6:1]
WA[6:1]
CLK
WE
DPRAM32
DATA[1]
DATA[2]
RADDR[5:1]
RADDR[6] = 1
C[5:1] 5
5
DI1
DI2
A[6:1]
WA[6:1]
CLK
WE
O6
O[2]
O5
O[1]
DPRAM32
DATA[3]
DATA[4]
B[5:1] 5
5
DI1
DI2
A[6:1]
WA[6:1]
CLK
WE
O6
O[4]
O5
O[3]
DPRAM32
DATA[5]
DATA[6]
A[5:1] 5
5
DI1
DI2
A[6:1]
WA[6:1]
CLK
WE
O6
O[6]
O5
O[5]
UG474_c2_06_070914
図 2-7 : 32x6 シ ン プル デ ュ アル ポー ト の分散 RAM (RAM32M)
7 シ リ ーズ FPGA CLB ユーザー ガ イ ド
UG474 (v1.7) 2014 年 11 月 17 日
japan.xilinx.com
27
第 2 章 : 機能の詳細
X-Ref Target - Figure 2-8
RAM64X1S
D
A[5:0]
WCLK
WE
(DI)
6 (D[6:1])
6
(CLK)
(WE/CE)
SPRAM64
O
O6
DI1
Output
Registered
Output
D Q
A[6:1]
WA[6:1]
CLK
WE
(Optional)
UG474_c2_07_101210
図 2-8 : 64x1 シ ン グル ポー ト の分散 RAM (RAM64X1S)
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-9
RAM64X1D
D
A[5:0]
WCLK
WE
DPRAM64
(DI)
O6
DI1
(D[6:1]) 6
6
(CLK)
(WE/CE)
DI1
(C[6:1]) 6
6
A[6:1]
WA[6:1]
CLK
WE
Registered
Output
D Q
A[6:1]
WA[6:1]
CLK
WE
(Optional)
DPRAM64
DPRA[5:0]
SPO
O6
DPO
Registered
Output
D Q
(Optional)
UG474_c2_08_101210
図 2-9 : 64x1 デ ュ アル ポー ト の分散 RAM (RAM64X1D)
28
japan.xilinx.com
7 シ リ ーズ FPGA CLB ユーザー ガ イ ド
UG474 (v1.7) 2014 年 11 月 17 日
分散 RAM (SLICEM のみで使用可能)
X-Ref Target - Figure 2-10
RAM64M
DID
ADDRD
WCLK
WE
(DI)
(D[6:1])
(CLK)
(WE)
DPRAM64
O6
DI1
DOD
A[6:1]
WA[6:1]
CLK
WE
D
Q
Registered
Output
(Optional)
DPRAM64
DI1
ADDRC
(C[6:1])
O6
A[6:1]
WA[6:1]
CLK
WE
D
(B[6:1])
O6
D
(A[6:1])
A[6:1]
WA[6:1]
CLK
WE
Q
Registered
Output
(Optional)
DPRAM64
ADDRA
Registered
Output
DOB
A[6:1]
WA[6:1]
CLK
WE
DI1
Q
(Optional)
DPRAM64
DI1
ADDRB
DOC
O6
DOA
D
Q
Registered
Output
(Optional)
UG474_c2_09_070914
図 2-10 : 64x1 ク ワ ッ ド ポー ト の分散 RAM (RAM64M)
7 シ リ ーズ FPGA CLB ユーザー ガ イ ド
UG474 (v1.7) 2014 年 11 月 17 日
japan.xilinx.com
29
第 2 章 : 機能の詳細
X-Ref Target - Figure 2-11
RAM64M
DPRAM64
unused
unused
WADDR[6:1]
D[6:1] 6
6
(CLK)
(WE)
WCLK
WED
DI1
DI2
A[6:1]
WA[6:1]
CLK
WE
DPRAM64
DATA[1]
RADDR[6:1]
C[6:1] 6
6
DI1
DI2
A[6:1]
WA[6:1]
CLK
WE
O6
O[1]
O5
DPRAM64
DATA[2]
B[6:1] 6
6
DI1
DI2
A[6:1]
WA[6:1]
CLK
WE
O6
O[2]
O5
DPRAM64
DATA[3]
A[6:1] 6
6
DI1
DI2
A[6:1]
WA[6:1]
CLK
WE
O6
O[3]
O5
UG474_c2_10_070914
図 2-11 : 64x3 シ ン プル デ ュ アル ポー ト の分散 RAM (RAM64M)
ワ ー ド 数が 64 以上の分散 RAM コ ン フ ィ ギ ュ レーシ ョ ン を イ ン プ リ メ ン ト す る には、 多入力機能
マルチプ レ ク サー (F7AMUX、 F7BMUX、 お よ び F8MUX) を図 2-12 ~図 2-14 に示す よ う に使用
す る 必要があ り ます。
2 つの シ ン グ ル ポー ト 128x1 ビ ッ ト モ ジ ュ ール を 図 2-12 に示す よ う に構築す る には、 2 つの
RAM128X1S プ リ ミ テ ィ ブで SLICEM を 1 つ使用で き ます。 ただ し 、 こ れ ら のプ リ ミ テ ィ ブでは
同 じ ク ロ ッ ク 、 書 き 込み イ ネーブル、 共有読み出 し お よ び書き 込みポー ト ア ド レ ス入力を共有す る
必要があ り ます。 こ の コ ン フ ィ ギ ュ レーシ ョ ンは、 128x2 ビ ッ ト のシ ン グル ポー ト 分散 RAM と 同
等です。
30
japan.xilinx.com
7 シ リ ーズ FPGA CLB ユーザー ガ イ ド
UG474 (v1.7) 2014 年 11 月 17 日
分散 RAM (SLICEM のみで使用可能)
X-Ref Target - Figure 2-12
RAM128X1S
A6 (CX)
D
SPRAM64
(DI)
O6
DI1
[5:0]
A[6:0]
WCLK
WE
7
(CLK)
(WE/CE)
A[6:1]
WA[7:1]
CLK
WE
0
SPRAM64
DI1
Registered
Output
D Q
(Optional)
[5:0]
7
O6
F7BMUX
Output
A[6:1]
WA[7:1]
CLK
WE
UG474_c2_11_101210
図 2-12 : 128x1 シ ングル ポー ト の分散 RAM (RAM128X1S)
7 シ リ ーズ FPGA CLB ユーザー ガ イ ド
UG474 (v1.7) 2014 年 11 月 17 日
japan.xilinx.com
31
第 2 章 : 機能の詳細
X-Ref Target - Figure 2-13
RAM128X1D
A6 (CX)
D
DPRAM64
DI
O6
DI1
6
A[6:0]
7
(CLK)
(WE)
WCLK
WE
A[6:1]
WA[7:1]
CLK
WE
SPO
DPRAM64
D Q
F7BMUX
O6
DI1
Registered
Output
(Optional)
6
7
A[6:1]
WA[7:1]
CLK
WE
DPRAM64
O6
DI1
6
DPRA[6:0]
7
A[6:1]
WA[7:1]
CLK
WE
DPO
DPRAM64
DI1
F7AMUX
D Q
O6
(Optional)
6
7
Registered
Output
A[6:1]
WA[7:1]
CLK
WE
AX
UG474_c2_12_101210
図 2-13 : 128x1 デ ュ アル ポー ト の分散 RAM (RAM128X1D)
32
japan.xilinx.com
7 シ リ ーズ FPGA CLB ユーザー ガ イ ド
UG474 (v1.7) 2014 年 11 月 17 日
分散 RAM (SLICEM のみで使用可能)
X-Ref Target - Figure 2-14
RAM256X1S
SPRAM64
D
6
A[7:0]
WCLK
WE
O6
DI1
8
(CLK)
(WE/CE)
A[6:1]
WA[8:1]
CLK
WE
A6 (CX)
SPRAM64
6
8
F7BMUX
O6
DI1
A[6:1]
WA[8:1]
CLK
WE
A7 (BX)
O
F8MUX
SPRAM64
8
A[6:1]
WA[8:1]
CLK
WE
DI1
8
Registered
Output
(Optional)
A6 (AX)
SPRAM64
6
D Q
O6
DI1
6
Output
F7AMUX
O6
A[6:1]
WA[8:1]
CLK
WE
UG474_c2_13_101210
図 2-14 : 256x1 シ ングル ポー ト の分散 RAM (RAM256X1S)
こ こ に示 し た例 よ り も 大 き な分散 RAM コ ン フ ィ ギ ュ レーシ ョ ンが必要な場合は、SLICEM が 2 つ
以上必要ですが、 CLB 内ま たは ス ラ イ ス間には直接接続がないため、 こ れ以上大規模な分散 RAM
は構築で き ません。
7 シ リ ーズ FPGA CLB ユーザー ガ イ ド
UG474 (v1.7) 2014 年 11 月 17 日
japan.xilinx.com
33
第 2 章 : 機能の詳細
分散 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 数を示 し ます。
表 2-4 : ROM コ ン フ ィ ギ ュ レーシ ョ ン
ROM
LUT 数
64 x 1
1
128 x 1
2
256 x 1
4
シ フ ト レ ジ ス タ (SLICEM のみ)
SLICEM フ ァ ン ク シ ョ ン ジ ェ ネ レ ー タ ーは、 ス ラ イ ス 内の フ リ ッ プ フ ロ ッ プ を 使用せずに、 32
ビ ッ ト シ フ ト レ ジ ス タ と し て も コ ン フ ィ ギ ュ レ ーシ ョ ン で き ま す。 シ フ ト レ ジ ス タ を使用す る
と 、 各 LUT でシ リ アル デー タ を 1 ~ 32 ク ロ ッ ク サ イ ク ルだけ遅延 さ せ る こ と がで き ま す。 シ
フ ト イ ン D (DI1 LUT ピ ン ) お よ びシ フ ト ア ウ ト Q31 (MC31 LUT ピ ン ) ラ イ ンは、 LUT を カ ス
ケー ド 接続 し て よ り 大規模な シ フ ト レ ジ ス タ を構築 し ます。 し たが っ て、 1 つの SLICEM にあ る
4 つの LUT を カ ス ケー ド 接続す る と 、最大 128 ク ロ ッ ク サ イ ク ルの遅延を生成で き ます。複数の
SLICEM のシ フ ト レ ジ ス タ を組み合わせ る こ と も で き ますが、 よ り 長いシ フ ト レ ジ ス タ を構築で
き る ス ラ イ ス間の直接接続はあ り ません。 ま た、 LUT B/C/D の MC31 出力 も 使用で き ません。 生
成 さ れたプ ロ グ ラ マブル遅延を使用 し て、 デー タ パ イ プ ラ イ ン の タ イ ミ ン グ のバ ラ ン ス を取 る こ
と が可能です。
34
japan.xilinx.com
7 シ リ ーズ FPGA CLB ユーザー ガ イ ド
UG474 (v1.7) 2014 年 11 月 17 日
シ フ ト レ ジ ス タ (SLICEM のみ)
シ フ ト レ ジ ス タ には次の よ う な用途が考え ら れます。
•
遅延ま たは レ イ テ ン シの補正
•
同期 FIFO お よ び CAM (Content Addressable Memory)
シ フ ト レ ジ ス タ には次の よ う な機能があ り ます。
•
書 き 込み
•
ク ロ ッ ク 入力 (CLK) およびオプシ ョ ンの ク ロ ッ ク イ ネーブル (CE) と 同期し て実行 さ れ る
•
Q31 への固定読み出 し ア ク セ ス
•
ダ イ ナ ミ ッ ク 読み出 し ア ク セ ス
•
5 ビ ッ ト のア ド レ ス バス A[4:0] を使用 し て実行 さ れ る
-
•
ア ド レ ス を変更す る と 、 32 ビ ッ ト の任意のビ ッ ト を非同期に読み出す こ と がで き る (プ リ
ミ テ ィ ブ上では Q と し て参照 さ れ る LUT の O6 出力か ら )
•
こ の機能は、 32 ビ ッ ト 未満の小規模シ フ ト レ ジ ス タ を構成す る 際に役立つ
•
•
LUT ア ド レ ス の LSB は使用せず、 ソ フ ト ウ ェ アに よ っ て自動的に High 駆動 さ れ る
た と えば、 13 ビ ッ ト のシ フ ト レ ジ ス タ を構築す る 場合は、 ア ド レ ス を 13 番目のビ ッ
ト に設定す る
同期読み出 し の イ ンプ リ メ ン テーシ ョ ンに、 ス ト レージ エ レ メ ン ト ま たはフ リ ッ プ フ ロ ッ
プが使用で き る
-
フ リ ッ プ フ ロ ッ プの Clock-to-Out が遅延全体を左右 し 、 性能が向上す る
-
ただ し 、 ク ロ ッ ク レ イ テ ン シが 1 サ イ ク ル分だけ追加 さ れ る
シ フ ト レ ジ ス タ のセ ッ ト ま たは リ セ ッ ト はサポー ト さ れていない
図 2-15 に、 32 ビ ッ ト シ フ ト レ ジ ス タ の ロ ジ ッ ク ブ ロ ッ ク 図を示 し ます。
X-Ref Target - Figure 2-15
SRLC32E
SHIFTIN (MC31 of Previous LUT)
SRL32
SHIFTIN (D)
(AI)
DI1
MC31
A[4:0]
CLK
CE
5 (A[6:2])
(CLK)
(WE/CE)
SHIFTOUT (Q31)
A[6:2]
CLK
CE
O6
Output (Q)
(AQ) Registered
D Q
Output
(Optional)
UG474_c2_14_110510
図 2-15 : 32 ビ ッ ト シ フ ト レ ジス タ のコ ン フ ィ ギ ュ レーシ ョ ン
7 シ リ ーズ FPGA CLB ユーザー ガ イ ド
UG474 (v1.7) 2014 年 11 月 17 日
japan.xilinx.com
35
第 2 章 : 機能の詳細
図 2-16 に、フ ァ ン ク シ ョ ン ジ ェ ネ レー タ ーを 1 つ使用 し たシ フ ト レ ジ ス タ コ ン フ ィ ギ ュ レーシ ョ
ンの例を示 し ます。
X-Ref Target - Figure 2-16
32-bit Shift Register
SHIFTIN (D)
WE
SHIFTOUT(Q31)
CLK
Address (A[4:0])
5
MUX
Q
UG474_c2_15_101210
図 2-16 : シ フ ト レ ジ ス タ の表記
図 2-17 に 2 つの 16 ビ ッ ト シ フ ト レ ジ ス タ を示 し ま す。 こ の例は、 1 つの LUT に イ ン プ リ メ
ン ト 可能です。 SRLC32E お よ び SRL16E プ リ ミ テ ィ ブ の詳細は、 『Vivado Design Suite 7 シ
リ ーズ FPGA お よ び Zynq-7000 All Programmable SoC ラ イ ブ ラ リ ガ イ ド 』 (UG953) を参照 し
て く だ さ い。
X-Ref Target - Figure 2-17
SRL16
SHIFTIN1 (AI)
A[3:0]
O5
DI1
4
CLK
A[5:2]
CLK
WE
CE
SRL16
DI2
SHIFTIN2 (AX)
4
A[5:2]
CLK
WE
O6
MC31
UG474_c2_16_101210
図 2-17 : 2 つの 16 ビ ッ ト シ フ ト レ ジ ス タ を使用 し た コ ン フ ィ ギ ュ レーシ ョ ン
前述の と お り 、 出力 (MC31) を 1 つ追加 し てシ フ ト レ ジ ス タ 間に専用配線を使用す る と 、 LUT O6
出力を使用せずに、 その レ ジ ス タ の最終ビ ッ ト を次の レ ジ ス タ の最初のビ ッ ト に接続で き ます。 よ
り 長いシ フ ト レ ジ ス タ は、 チ ェ ーン内の任意のビ ッ ト に動的にア ク セ ス し て構築で き ます。 シ フ ト
レ ジ ス タ のチ ェーン接続お よ び F7AMUX、 F7BMUX、 F8MUX マルチプ レ ク サーに よ っ て、 ア ド
レ ス指定に よ る ア ク セ ス が可能な最大 128 ビ ッ ト のシ フ ト レ ジ ス タ を 1 つの SLICEM 内に イ ンプ
リ メ ン ト で き ます。図 2-18 か ら 図 2-20 に、SLICEM 1 つを使用 し たシ フ ト レ ジ ス タ コ ン フ ィ ギ ュ
レーシ ョ ンの さ ま ざ ま な例を示 し ます。
36
japan.xilinx.com
7 シ リ ーズ FPGA CLB ユーザー ガ イ ド
UG474 (v1.7) 2014 年 11 月 17 日
シ フ ト レ ジ ス タ (SLICEM のみ)
X-Ref Target - Figure 2-18
SRL32
SHIFTIN (D)
O6
DI1
5
A[5:0]
MC31
(CLK)
(WE/CE)
CLK
WE
A[6:2]
A5 (AX)
CLK
WE
Output (Q)
SRL32
DI1
F7AMUX
D Q
(AQ)
Registered
Output
O6
(Optional)
5
A[6:2]
CLK
WE
(MC31)
MC31
SHIFTOUT (Q63)
UG474_c2_17_101210
図 2-18 : 64 ビ ッ ト シ フ ト レ ジス タ のコ ン フ ィ ギ ュ レーシ ョ ン
X-Ref Target - Figure 2-19
CX (A5)
SRL32
SHIFTIN (D)
5
A[6:0]
CLK
WE
O6
DI1
A[6:2]
F7BMUX
MC31
(CLK)
(WE/CE)
CLK
WE
BX (A6)
(BMUX)
F8MUX
D Q
Registered
Output
(Optional)
SRL32
O6
DI1
5
Output (Q)
(BQ)
A[6:2]
MC31
CLK
WE
AX (A5)
SRL32
DI1
Not Used
O6
F7AMUX
5
A[6:2]
CLK
WE
UG474_c2_18_101210
図 2-19 : 96 ビ ッ ト シ フ ト レ ジス タ のコ ン フ ィ ギ ュ レーシ ョ ン
7 シ リ ーズ FPGA CLB ユーザー ガ イ ド
UG474 (v1.7) 2014 年 11 月 17 日
japan.xilinx.com
37
第 2 章 : 機能の詳細
X-Ref Target - Figure 2-20
SRL32
SHIFTIN (D)
A[6:0]
CLK
WE
O6
DI1
5
(CLK)
(WE/CE)
A[6:2]
MC31
CX (A5)
CLK
WE
SRL32
F7BMUX
O6
DI1
A[6:2]
BX (A6)
MC31
CLK
WE
(BMUX)
F8MUX
D Q
SRL32
(BQ)
Output (Q)
Registered
Output
(Optional)
O6
DI1
A[6:2]
MC31
AX (A5)
CLK
WE
SRL32
O6
DI1
A[6:2]
MC31
CLK
WE
F7AMUX
(MC31)
SHIFTOUT (Q127)
UG474_c2_19_101210
図 2-20 : 128 ビ ッ ト シ フ ト レ ジ ス タ の コ ン フ ィ ギ ュ レーシ ョ ン
2 つ以上の SLICEM を使用する と 128 ビ ッ ト よ り も 長いシ フ ト レ ジ ス タ を構成で き ますが、 ス ラ
イ ス間には直接接続がないため、 こ れ よ り 長いシ フ ト レ ジ ス タ は構築で き ません。
シ フ ト レ ジ ス タ のデー タ フ ロー
シ フ ト 動作
図 5-7 に、 シ フ ト 動作の タ イ ミ ン グ図を示 し ます。 シ フ ト 動作には、 次の よ う な特徴があ り ます。
38
•
シ ン グル ク ロ ッ ク エ ッ ジで動作す る
•
ア ク テ ィ ブ High の ク ロ ッ ク イ ネーブルに よ っ て有効 と な る
•
入力 (D) はシ フ ト レ ジ ス タ の最初のビ ッ ト に読み込まれ る
•
ほかのビ ッ ト も それぞれ次の高位ビ ッ ト にシ フ ト す る
japan.xilinx.com
7 シ リ ーズ FPGA CLB ユーザー ガ イ ド
UG474 (v1.7) 2014 年 11 月 17 日
マルチ プ レ クサー
•
カ ス ケー ド 接続可能なシ フ ト レ ジ ス タ コ ン フ ィ ギ ュ レーシ ョ ンでは、 最後のビ ッ ト が 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 マルチプ レ ク サー
•
•
LUT を 2 つ使用す る 8:1 マルチプ レ ク サー
•
•
ス ラ イ ス あ た り 4 つの 4:1 マルチプ レ ク サー
ス ラ イ ス あ た り 2 つの 8:1 マルチプ レ ク サー
LUT を 4 つ使用す る 16:1 マルチプ レ ク サー
•
ス ラ イ ス あ た り 1 つの 16:1 マルチプ レ ク サー
7 シ リ ーズ FPGA CLB ユーザー ガ イ ド
UG474 (v1.7) 2014 年 11 月 17 日
japan.xilinx.com
39
第 2 章 : 機能の詳細
こ れ ら の多入力マルチプ レ ク サーは、 専用の 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
SLICE
LUT
(D)
O6
SEL D [1:0], DATA D [3:0]
Input
(D[6:1]) 6
D Q
A[6:1]
(DQ)
(C)
O6
SEL C [1:0], DATA C [3:0]
Input
D Q
A[6:1]
(CQ)
(B)
O6
SEL B [1:0], DATA B [3:0]
Input
D Q
A[6:1]
6
A[6:1]
(CLK)
CLK
(BQ)
(A)
O6
(A[6:1])
Registered
Output
4:1 MUX Output
Registered
Output
(Optional)
LUT
SEL A [1:0], DATA A [3:0]
Input
4:1 MUX Output
(Optional)
LUT
(B[6:1]) 6
Registered
Output
(Optional)
LUT
(C[6:1]) 6
4:1 MUX Output
D Q
(AQ)
4:1 MUX Output
Registered
Output
(Optional)
UG474_c2_20_101210
図 2-21 : 1 つのス ラ イ スに 4 つの 4:1 マルチ プ レ クサー
40
japan.xilinx.com
7 シ リ ーズ FPGA CLB ユーザー ガ イ ド
UG474 (v1.7) 2014 年 11 月 17 日
マルチ プ レ クサー
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
SLICE
LUT
O6
SEL D [1:0], DATA D [3:0]
Input (1)
(D[6:1]) 6
A[6:1]
F7BMUX
(CMUX)
LUT
O6
SEL C [1:0], DATA C [3:0]
Input (1)
SELF7(1)
CLK
(C[6:1]) 6
D Q
(CQ)
8:1 MUX
Output (1)
Registered
Output
A[6:1]
(Optional)
(CX)
(CLK)
LUT
O6
SEL B [1:0], DATA B [3:0]
Input (2)
(B[6:1]) 6
A[6:1]
F7AMUX
(AMUX)
LUT
O6
SEL A [1:0], DATA A [3:0]
Input (2)
SELF7(2)
(A[6:1])
6
D Q
(AQ)
8:1 MUX
Output (2)
Registered
Output
A[6:1]
(Optional)
(AX)
UG474_c2_21_101210
図 2-22 : 1 つのス ラ イ スに 2 つの 8:1 マルチ プ レ クサー
7 シ リ ーズ FPGA CLB ユーザー ガ イ ド
UG474 (v1.7) 2014 年 11 月 17 日
japan.xilinx.com
41
第 2 章 : 機能の詳細
16:1 マルチ プ レ ク サー
各ス ラ イ ス には、 F8MUX が 1 つあ り ます。 こ の F8MUX は、 F7AMUX お よ び F7BMUX の出力
を組み合わせて、 最大 27 入力 ( ま たは 16:1 MUX) の組み合わせフ ァ ン ク シ ョ ン を構築 し ます。 1
つの ス ラ イ ス には 16:1 MUX を 1 つのみ イ ンプ リ メ ン ト で き ます (図 2-23 参照)。
X-Ref Target - Figure 2-23
SLICE
LUT
O6
SEL D [1:0], DATA D [3:0]
Input
(D[6:1]) 6
F7BMUX
A[6:1]
LUT
O6
SEL C [1:0], DATA C [3:0]
Input
SELF7
(C[6:1]) 6
A[6:1]
F8MUX
(CX)
(BMUX)
LUT
D Q
O6
SEL B [1:0], DATA B [3:0]
Input
(B[6:1]) 6
F7AMUX
A[6:1]
(B)
16:1 MUX
Output
Registered
Output
(Optional)
LUT
O6
SEL A [1:0], DATA A [3:0]
Input
SELF7
SELF8
CLK
(A[6:1])
6
A[6:1]
(AX)
(BX)
(CLK)
UG474_c2_22_101210
図 2-23 : 1 つのス ラ イ スに 1 つの 16:1 マルチ プ レ クサー
複数の SLICEM を使用する と 16:1 よ り 大規模なマルチプ レ ク サーを構築で き ますが、 ス ラ イ ス間
には直接接続がないため、 こ れ よ り 長いマルチプ レ ク サーは構築で き ません。
42
japan.xilinx.com
7 シ リ ーズ FPGA CLB ユーザー ガ イ ド
UG474 (v1.7) 2014 年 11 月 17 日
キャ リー ロジ ッ ク
キャ リー ロジ ッ ク
フ ァ ン ク シ ョ ン ジ ェ ネ レー タ ーのほか、高速加算/減算を実行する ために、専用の高速ル ッ ク アヘ ッ
ド キ ャ リ ー ロ ジ ッ ク が含まれてい ます。図 1-1 に示す よ う に、 7 シ リ ーズ FPGA の CLB には 2 つ
の独立 し た キ ャ リ ー チ ェーンがあ り ます。 こ のキ ャ リ ー チ ェーンはカ ス ケー ド 接続が可能なため、
図 2-2 の よ う な、 大規模な加算/減算 ロ ジ ッ ク を構築で き ます。
キ ャ リ ー チ ェーン では上方向に演算が実行 さ れ、 各ス ラ イ ス の高 さ は 4 ビ ッ ト です。 各ビ ッ ト に対
し て キ ャ リ ー マルチプ レ ク サー (MUXCY) と 専用 XOR ゲー ト が 1 つずつあ り 、 選択 さ れた キ ャ
リ ー ビ ッ ト を使用 し てオペ ラ ン ド を加算/減算 し ます。 専用キ ャ リ ー パスお よ びキ ャ リ ー マルチプ
レ ク サー (MUXCY) を使用 し て、 フ ァ ン ク シ ョ ン ジ ェ ネ レー タ ーを カ ス ケー ド 接続 し 、 多入力 ロ
ジ ッ ク フ ァ ン ク シ ョ ン を イ ンプ リ メ ン ト す る こ と も 可能です。
7 シ リ ーズ FPGA CLB ユーザー ガ イ ド
UG474 (v1.7) 2014 年 11 月 17 日
japan.xilinx.com
43
第 2 章 : 機能の詳細
図 2-24 に、 1 つの ス ラ イ ス の関連 ロ ジ ッ ク を使用 し た キ ャ リ ー チ ェ ーン を示 し ます。
X-Ref Target - Figure 2-24
COUT (To Next Slice)
Carry Chain Block
(CARRY4)
CO3
S3
O6 From LUTD
DMUX/DQ*
MUXCY
O3
O5 From LUTD
DMUX
DI3
DQ
D Q
DX
(Optional)
CO2
S2
O6 From LUTC
CMUX/CQ*
MUXCY
O2
O5 From LUTC
CMUX
DI2
CQ
D Q
CX
(Optional)
CO1
S1
O6 From LUTB
BMUX/BQ*
MUXCY
O1
O5 From LUTB
BMUX
DI1
BQ
D Q
BX
(Optional)
CO0
S0
O6 From LUTA
AMUX/AQ*
MUXCY
O0
O5 From LUTA
AMUX
DI0
AQ
D Q
AX
CYINIT
CIN
(Optional)
* Can be used if
unregistered/registered
outputs are free.
01
CIN (From Previous Slice)
UG474_c2_23_071813
図 2-24 : 高速キ ャ リ ー ロ ジ ッ ク パスおよび関連する エ レ メ ン ト
キ ャ リ ー チ ェーンは、 フ ァ ン ク シ ョ ン ジ ェ ネ レー タ ー と 共にキ ャ リ ー ル ッ ク アヘ ッ ド ロ ジ ッ ク を
使用 し ます。 次に示す 10 の独立 し た入力 と 、 8 つの独立 し た出力があ り ます。
•
入力
•
•
S 入力 - S0 ~ S3
-
キ ャ リ ー ル ッ ク アヘ ッ ド ロ ジ ッ ク の伝搬信号
-
フ ァ ン ク シ ョ ン ジ ェ ネ レー タ ーの O6 出力か ら 入力 さ れ る
DI 入力 - DI1 ~ DI4
-
44
キ ャ リ ー ル ッ ク アヘ ッ ド ロ ジ ッ ク の生成信号
japan.xilinx.com
7 シ リ ーズ FPGA CLB ユーザー ガ イ ド
UG474 (v1.7) 2014 年 11 月 17 日
キャ リー ロジ ッ ク
-
フ ァ ン ク シ ョ ン ジ ェ ネ レー タ ーの O5 出力か ら 入力 さ れ る
- 乗算器を構築す る 場合
-
ス ラ イ ス の BYPASS 入力 (AX、 BX、 CX、 DX)
- 加算器/ ア キ ュ ム レー タ を構築する 場合
•
CYINIT
-
キ ャ リ ー チ ェーンの最初のビ ッ ト の CIN
- 加算の場合 0
- 減算の場合 1
- 最初のキ ャ リ ー ビ ッ ト を動的に指定す る ための AX 入力
•
CIN
-
•
ス ラ イ ス を カ ス ケー ド 接続 し 、 よ り 長いキ ャ リ ー チ ェーン を構成す る
出力
•
O 出力 - O0 ~ O3
-
•
加算/減算の合計出力
CO 出力 - CO0 ~ CO3
-
各ビ ッ ト のキ ャ リ ー出力の計算
-
CO3 が ス ラ イ ス の COUT 出力に接続 さ れ、 複数ス ラ イ ス を カ ス ケー ド 接続す る こ と
に よ っ て、 よ り 長いキ ャ リ ー チ ェーンが構築 さ れ る
加算器の伝搬遅延は、 カ ス ケー ド 接続 さ れ る キ ャ リ ー チ ェ ーン の数が増え る ほ ど、 オペ ラ ン ド の
ビ ッ ト 数 と 共に直線的に増加 し ます。 キ ャ リ ー チ ェ ーンは、 同一 ス ラ イ ス内の ス ト レージ エ レ メ
ン ト ま たはフ リ ッ プ フ ロ ッ プ を使用 し て イ ンプ リ メ ン ト で き ます。
キ ャ リ ー ロ ジ ッ ク のカ ス ケー ド 接続は、 ス ラ イ ス カ ラ ム の高 さ にのみ制限 さ れ ます。 ス タ ッ ク ド
シ リ コ ン イ ン タ ー コ ネ ク ト (SSI) テ ク ノ ロ ジ を使用す る デバ イ ス の SLR (Super Logic Region) 間
では、キ ャ リ ー ロ ジ ッ ク のカ ス ケー ド 接続はで き ません。第 6 章の 「ス タ ッ ク ド シ リ コ ン イ ン タ ー
コ ネ ク ト (SSI) テ ク ノ ロ ジ を使用す る デバ イ ス」 を参照 し て く だ さ い。
7 シ リ ーズ FPGA CLB ユーザー ガ イ ド
UG474 (v1.7) 2014 年 11 月 17 日
japan.xilinx.com
45
第 2 章 : 機能の詳細
46
japan.xilinx.com
7 シ リ ーズ FPGA CLB ユーザー ガ イ ド
UG474 (v1.7) 2014 年 11 月 17 日
第3章
デザイ ン入力
CLB リ ソ ー ス は、 FPGA 固有の特別な コ ーデ ィ ン グ を必要 と せず、 FPGA 合成ツールに よ っ て自
動的かつ効率的に適用 さ れ ま す。 ただ し 、 HDL コ ーデ ィ ン グにおけ る 推奨事項や手法が、 デザ イ
ン効率を最大限に引 き 出す最適化に役立つ場合があ り ます。
デザイ ンのチ ェ ッ ク リ ス ト
次のガ イ ド ラ イ ンは、 7 シ リ ーズ CLB を効果的に使用す る ためのデザ イ ン上の推奨事項を ま と め
た簡単なチ ェ ッ ク リ ス ト です。
•
リ ソ ース使用率
•
ジ ェ ネ リ ッ ク HDL コ ー ド を使用 し 、合成お よ びマ ッ ピ ン グのツールが特定の FPGA CLB
リ ソ ース を選択で き る よ う に し ます。
•
特定 リ ソ ース の イ ン ス タ ン シエーシ ョ ンは、 集積度ま たは性能の要件を満たすために必要
な場合にのみ検討 し ます。
•
合成結果を予測ス ラ イ ス数 と 比較 し てデザ イ ンの効率を検証 し ます。
•
タ ーゲ ッ ト デバ イ ス のデザ イ ンで リ ソ ース が不足 し た場合、 ど の リ ソ ース が制約要因に
な っ て い る の か を 確認 し 、 レ ジ ス タ か ら SRL や分散 RAM、 分散 RAM か ら ブ ロ ッ ク
RAM、 キ ャ リ ー ロ ジ ッ ク か ら DSP ス ラ イ ス な ど の代替 リ ソ ースへの移行を検討 し ます。
•
ほかのアーキ テ ク チ ャ か ら デザ イ ン を移行す る 場合は、 リ ソ ース イ ン ス タ ン シエーシ ョ
ン、 マ ッ ピ ン グお よ びフ ロ アプ ラ ンの制約を削除 し ます ( 『7 シ リ ーズ FPGA マ イ グ レー
シ ョ ン メ ソ ド ロ ジ ガ イ ド 』 (UG429) 参照)。
FPGA に適 し た HDL コ ーデ ィ ン グ手法については、 japan.xilinx.com か ら 入手で き る 『XST ユー
ザー ガ イ ド (Virtex-6、 Spartan-6、 お よ び 7 シ リ ーズ デバ イ ス用)』 (UG687) を参照 し て く だ さ い。
•
パ イ プ ラ イ ン処理
•
•
豊富な フ リ ッ プ フ ロ ッ プ を活用 し て性能を高め る には、 シーケ ン シ ャ ル デザ イ ンの手法や
パ イ プ ラ イ ン処理を使用 し て く だ さ い。
制御信号
•
制御信号は必要な場合にのみ使用 し ます。
•
FPGA リ ソ ース を最大限に活用で き る よ う に、配線済みのグ ロ ーバル リ セ ッ ト 信号の使用
を避け、 ロ ーカル リ セ ッ ト の使用 も 最低限に抑え ます。
•
ア ク テ ィ ブ High の制御信号を使用 し ます。
•
1 つの フ リ ッ プ フ ロ ッ プでセ ッ ト と リ セ ッ ト の両方を使用 し ない よ う に し ます。
•
フ リ ッ プ フ ロ ッ プの代わ り に LUT を使用 し て使用率の最大化、 消費電力の最小化を図 る
ため、 小 さ な シ フ ト レ ジ ス タ お よ び ス ト レージ ア レ イ に制御信号を使用 し ない よ う に し
ます。
7 シ リ ーズ FPGA CLB ユーザー ガ イ ド
UG474 (v1.7) 2014 年 11 月 17 日
japan.xilinx.com
47
第 3 章 : デザイ ン入力
•
ソ フ ト ウ ェ ア オプシ ョ ン
•
性能を自動的に向上 さ せ る ために、 タ イ ミ ン グ制約を使用 し 、 ソ フ ト ウ ェ ア オプシ ョ ン を
用いて イ ンプ リ メ ン テーシ ョ ン実行時間の増加 と の ト レー ド オ フ を調整 し ます。
CLB リ ソ ースの使用法
ザ イ リ ン ク ス では、 ツールが CLB リ ソ ース の使用を推論で き る よ う に、 ジ ェ ネ リ ッ ク HDL コ ー ド
の使用を推奨 し てい ま す。 7 シ リ ーズ FPGA 向けに設計 さ れた IP ソ リ ュ ーシ ョ ン を使用す る と 、
CLB リ ソ ース を十分に活用で き ます。 LUT、 キ ャ リ ー ロ ジ ッ ク 、 シーケ ン シ ャ ル エ レ メ ン ト を含
む CLB のすべての機能は直接 イ ン ス タ ン シエー ト で き ます。 ただ し 、 イ ン ス タ ン シエーシ ョ ンは
主に DSP ス ラ イ ス な ど の CLB 外の リ ソ ース を使用する 場合の指定に使用 し て く だ さ い。合成ツー
ルに よ っ て多入力マルチプ レ ク サー、 分散 RAM、 SRL 機能な ど の目的の CLB リ ソ ース を推論で
き ない場合には、 イ ン ス タ ン シエーシ ョ ンが必要 と な る 可能性があ り ます。
プリ ミティブ
こ こ では、 最 も 頻繁に使用 さ れ る CLB プ リ ミ テ ィ ブの概要を説明 し ます。 イ ン ス タ ン シエーシ ョ
ン の例お よ びほかの CLB プ リ ミ テ ィ ブに関す る 情報は、 『Vivado Design Suite 7 シ リ ーズ FPGA
お よ び Zynq-7000 All Programmable SoC ラ イ ブ ラ リ ガ イ ド 』 (UG953) を参照 し て く だ さ い。
マルチ プ レ ク サー プ リ ミ テ ィ ブ
マルチプ レ ク サーのプ リ ミ テ ィ ブは、 各ス ラ イ ス の専用マルチプ レ ク サーを直接 イ ン ス タ ン シエー
ト す る こ と で、 よ り 多入力のマルチプ レ ク サーを構築で き る よ う に し ます。 表 3-1 に、 2 つのプ リ
ミ テ ィ ブの説明を示 し ます。
表 3-1 : マルチ プ レ クサーのプ リ ミ テ ィ ブ
プリ ミティブ
入力
リ ソ ース
出力
MUXF7
LUT 出力
(4:1 マルチプ レ ク サー )
F7AMUX ま たは
F7BMUX
8:1 マルチプ レ ク サー
MUXF8
F7AMUX お よ び F7BMUX の
出力 (8:1 マルチプ レ ク サー )
F8MUX
16:1 マルチプ レ ク サー
いずれのマルチプ レ ク サー プ リ ミ テ ィ ブ も 同 じ ポー ト 信号を使用 し ます。 図 3-1 に、 MUXF7 を示
し ます。
48
japan.xilinx.com
7 シ リ ーズ FPGA CLB ユーザー ガ イ ド
UG474 (v1.7) 2014 年 11 月 17 日
プリ ミティブ
X-Ref Target - Figure 3-1
MUXF7
I0
O
I1
S
UG474_c3_01_101210
図 3-1 : MUXF7 プ リ ミ テ ィ ブ
ポー ト 信号
デー タ 入力 - I0、 I1
デー タ 入力には、 セ レ ク ト 信号 (S) で選択 さ れ る デー タ が入力 さ れます。
セ レ ク ト 入力 - S
セ レ ク ト 入力信号は、 出力 O へ送信 さ れ る デー タ 入力信号を決定 し ます。 ロ ジ ッ ク 0 では I0 入力
が、 ロ ジ ッ ク 1 では I1 入力が選択 さ れます。
デー タ 出力 - O
デー タ 出力 O には、 セ レ ク ト 入力で選択 さ れたデー タ 値 (1 ビ ッ ト ) が出力 さ れます。
キ ャ リ ー チ ェ ーン プ リ ミ テ ィ ブ
CARRY4 プ リ ミ テ ィ ブは、 各ス ラ イ ス で使用可能な高速キ ャ リ ー ロ ジ ッ ク を イ ン ス タ ン シエー ト
し ま す。 こ の プ リ ミ テ ィ ブ は、 LUT と 接続 し て 加算器お よ び乗算器 を 構築 し ま す。 図 3-2 に、
CARRY4 プ リ ミ テ ィ ブ を示 し ます。 合成ツールに よ っ て通常は、 演算 HDL コ ー ド か ら こ の ロ ジ ッ
ク が推論 さ れ、 その フ ァ ン ク シ ョ ンが自動で適切に接続 さ れます。
7 シ リ ーズ FPGA CLB ユーザー ガ イ ド
UG474 (v1.7) 2014 年 11 月 17 日
japan.xilinx.com
49
第 3 章 : デザイ ン入力
X-Ref Target - Figure 3-2
CARRY4
DI[3:0]
S[3:0]
CYINIT
O[3:0]
CO[3:0]
CI
UG474_c3_02_101210
図 3-2 : CARRY4 プ リ ミ テ ィ ブ
ポー ト 信号
合計出力 - O[3:0]
合計出力には、 加算/減算の最終結果が出力 さ れ ます。 ス ラ イ ス の AMUX/BMUX/CMUX/DMUX
出力に接続 さ れます。
キ ャ リ ー出力 - CO[3:0]
キ ャ リ ー出力には、 各 ビ ッ ト の キ ャ リ ー ア ウ ト が出力 さ れ ま す。 CO[3] は COUT と 等価です。
COUT を介 し て CO[3] を ほかの CARRY4 プ リ ミ テ ィ ブの CI 入力へ接続す る こ と で、 よ り 長い
キ ャ リ ー チ ェ ーン を構築で き ます。 キ ャ リ ー チ ェ ーンは、 専用の配線に よ っ て ス ラ イ ス に沿っ て
上方向に接続 さ れます。 キ ャ リ ー出力は、必要に応 じ て ス ラ イ ス の AMUX/BMUX/CMUX/DMUX
出力に も 接続 さ れます。
キ ャ リ ー入力 - CI
CIN と も 呼ばれ る キ ャ リ ー入力を使用 し て ス ラ イ ス を カ ス ケー ド 接続 し 、よ り 長いキ ャ リ ー チ ェー
ン を構築 し ます。
デー タ 入力 - DI[3:0]
デー タ 入力は、 キ ャ リ ー ル ッ ク アヘ ッ ド ロ ジ ッ ク の生成信号 と し て使用 さ れ ます。 こ の生成信号
は、 LUT 出力か ら 送信 さ れます。
セ レ ク ト 入力 - S[3:0]
セ レ ク ト 入力は、 キ ャ リ ー ル ッ ク アヘ ッ ド ロ ジ ッ ク の伝搬信号 と し て使用 さ れ ます。 こ の伝搬信
号は、 LUT 出力か ら 送信 さ れます。
キ ャ リ ー初期化 - CYINIT
キ ャ リ ー初期化入力を使用 し て、 キ ャ リ ー チ ェ ーンの最初の ビ ッ ト を選択 し ます。 CYINIT 値は、
加算の場合は 0、 減算の場合は 1、 あ る いは最初のキ ャ リ ー ビ ッ ト を動的に指定する 場合は AX 入
力にな り ます。
50
japan.xilinx.com
7 シ リ ーズ FPGA CLB ユーザー ガ イ ド
UG474 (v1.7) 2014 年 11 月 17 日
プリ ミティブ
SLICEM 分散 RAM プ リ ミ テ ィ ブ
表 3-2 に、 8 つのプ リ ミ テ ィ ブ を示 し ます。 3 つのプ リ ミ テ ィ ブがシ ン グル ポー ト RAM、 3 つの
プ リ ミ テ ィ ブがデ ュ アル ポー ト RAM、 そ し て 2 つのプ リ ミ テ ィ ブが ク ワ ッ ド ポー ト の RAM で
す。
表 3-2 : シ ングル ポー ト 、 デ ュ アル ポー ト 、 および ク ワ ッ ド ポー ト 分散 RAM
プリ ミティブ
RAM のサイ ズ
タ イプ
RAM32X1S
32 ビ ッ ト
シ ン グル ポー ト
A[4:0] (読み出 し /書 き 込み)
RAM32M
32 ビ ッ ト
ク ワ ッ ド ポー ト
ADDRA[4:0] (読み出 し )
ア ド レ ス入力
ADDRB[4:0] (読み出 し )
ADDRC[4:0] (読み出 し )
ADDRD[4:0] (読み出 し /書 き 込み)
RAM64X1S
64 ビ ッ ト
シ ン グル ポー ト
A[5:0] (読み出 し /書 き 込み)
RAM64X1D
64 ビ ッ ト
デ ュ アル ポー ト
A[5:0] (読み出 し /書 き 込み)
DPRA[5:0] (読み出 し )
RAM64M
64 ビ ッ ト
ク ワ ッ ド ポー ト
ADDRA[5:0] (読み出 し )
ADDRB[5:0] (読み出 し )
ADDRC[5:0] (読み出 し )
ADDRD[5:0] (読み出 し /書 き 込み)
RAM128X1S
128 ビ ッ ト
シ ン グル ポー ト
A[6:0] (読み出 し /書 き 込み)
RAM128X1D
128 ビ ッ ト
デ ュ アル ポー ト
A[6:0]
( 読み 出 し / 書 き 込 み)
DPRA[6:0] (読み出 し )
RAM256X1S
256 ビ ッ ト
シ ン グル ポー ト
A[7:0] (読み出 し /書 き 込み)
入力お よ び出力デー タ は 1 ビ ッ ト 幅です ( ク ワ ッ ド ポー ト RAM を除 く )。
図 3-3 に、標準的なシ ン グル ポー ト 、デュ アル ポー ト 、 ク ワ ッ ド ポー ト の分散 RAM のプ リ ミ テ ィ
ブ を示 し ます。 A、 ADDR、 お よ び DPRA 信号はア ド レ ス バ ス です。
7 シ リ ーズ FPGA CLB ユーザー ガ イ ド
UG474 (v1.7) 2014 年 11 月 17 日
japan.xilinx.com
51
第 3 章 : デザイ ン入力
X-Ref Target - Figure 3-3
RAM#X1S
D
WE
RAM#X1D
D
WE
O
RAM#M
SPO
WCLK
WCLK
A[#:0]
A[#:0]
R/W Port
DPRA[#:0]
Read Port
DI[A:D][#:0]
WE
DOD[#:0]
WCLK
DPO
ADDRD[#:0]
R/W Port
ADDRC[#:0]
Read Port
DOC[#:0]
ADDRB[#:0]
Read Port
DOB[#:0]
ADDRA[#:0]
Read Port
DOA[#:0]
UG474_c3_03_101210
図 3-3 : シ ングル ポー ト 、 デ ュ アル ポー ト 、 および ク ワ ッ ド ポー ト 分散 RAM プ リ ミ テ ィ ブ
分散 RAM プ リ ミ テ ィ ブ を複数使用する と 、ビ ッ ト 幅の大き い メ モ リ ブ ロ ッ ク を イ ンプ リ メ ン ト で
き ます。
ポー ト 信号
同 じ メ モ リ セルを読み出す場合で も 、 分散 RAM の各ポー ト はそれぞれ独立 し て動作 し ます。
ク ロ ッ ク – WCLK
ク ロ ッ ク は同期書 き 込みに使用 し ます。デー タ 入力ピ ン と ア ド レ ス入力ピ ンのセ ッ ト ア ッ プ タ イ ム
は、 WCLK ピ ン を基準 と し てい ます。
ク ロ ッ ク ピ ン (WCLK) には、 ス ラ イ ス レベルで反転オプシ ョ ンがあ り ます。 ク ロ ッ ク 信号は、 ほ
かの ロ ジ ッ ク リ ソ ース を使用せずに、立ち下が り エ ッ ジ ま たは立ち上が り エ ッ ジでア ク テ ィ ブにで
き ます。 デフ ォ ル ト では、 立ち上が り エ ッ ジ を使用 し ます。
イ ネーブル – WE/WED
イ ネーブル ピ ンはポー ト の書 き 込みを制御 し ます。 WE が無効の場合、 メ モ リ セルへの書 き 込み
は実行 さ れません。 WE が有効の場合、 ク ロ ッ ク エ ッ ジに同期 し て、 ア ド レ ス入力で指定 し た メ モ
リ 位置にデー タ 入力信号が書 き 込まれます。
ア ド レ ス – A[#:0]、 DPRA[#:0]、 ADDRA[#:0] – ADDRD[#:0]
ア ド レ ス入力 A[#:0] ( シ ン グル ポー ト お よ びデ ュ アル ポー ト の場合)、 DPRA[#:0] (デュ アル ポー
ト の場合)、 ADDRA[#:0] ~ ADDRD[#:0] ( ク ワ ッ ド ポー ト の場合) は、 読み出 し ま たは書 き 込み
を実行す る メ モ リ セルを選択 し ま す。 必要 と な る ア ド レ ス 入力の数はポー ト 幅に よ っ て決定 し ま
す。 VHDL ま たは Verilog の イ ン ス タ ン シエーシ ョ ンでは、 一部のア ド レ ス入力はバ ス ではあ り ま
せん。 表 3-2 に各ア ド レ ス ピ ンの機能の概要を示 し ます。
デー タ 入力 – D、 DID[#:0]
デー タ 入力 D ( シ ン グル ポー ト お よ びデ ュ アル ポー ト の場合) お よ び DID[#:0] ( ク ワ ッ ド ポー ト の
場合) には、 RAM に書 き 込む新 し いデー タ 値が入力 さ れます。
52
japan.xilinx.com
7 シ リ ーズ FPGA CLB ユーザー ガ イ ド
UG474 (v1.7) 2014 年 11 月 17 日
プリ ミティブ
デー タ 出力 – O、 SPO、 DPO および DOA[#:0] – DOD[#:0]
デー タ 出力 O ( シ ン グル ポー ト ま たは SPO)、 DPO (デ ュ アル ポー ト )、 DOA[#:0] ~ DOD[#:0] ( ク
ワ ッ ド ポー ト ) には、 ア ド レ ス入力で指定 し た メ モ リ セルの内容が反映 さ れます。 次のア ク テ ィ ブ
な書 き 込み ク ロ ッ ク エ ッ ジで、 デー タ 出力 (O、 SPO、 DOD[#:0) には新 し く 書 き 込ま れたデー タ
が反映 さ れます。
SLICEM SRL シ フ ト レ ジ ス タ プ リ ミ テ ィ ブ
32 ビ ッ ト のシ フ ト レ ジ ス タ (SRLC32E) は、 SLICEM の LUT を 1 つ用い る プ リ ミ テ ィ ブ を 1 つ
使用 し ます。 図 3-4 に、 32 ビ ッ ト シ フ ト レ ジ ス タ のプ リ ミ テ ィ ブ を示 し ます。
X-Ref Target - Figure 3-4
SRLC32E
5
D
A[4:0]
Q
CE
Q31
CLK
UG474_c3_04_102910
図 3-4 : 32 ビ ッ ト シ フ ト レ ジ ス タ
ポー ト 信号
ク ロ ッ ク – CLK
シ フ ト 動作は、ク ロ ッ ク の立ち上が り エ ッ ジ ま たは立ち下が り エ ッ ジのいずれかに同期 し ます。デー
タ お よ び ク ロ ッ ク イ ネーブル入力ピ ンには、 CLK の選択 さ れたエ ッ ジ を基準 と し たセ ッ ト ア ッ プ
タ イ ムがあ り ます。
ク ロ ッ ク ピ ン (CLK) には、 ス ラ イ ス レベルで反転オプシ ョ ンがあ り ます。 ク ロ ッ ク 信号は、 ほか
の ロ ジ ッ ク リ ソ ース を使用せずに、立ち下が り エ ッ ジ ま たは立ち上が り エ ッ ジでア ク テ ィ ブにで き
ます。 デフ ォ ル ト では、 立ち上が り エ ッ ジ を使用 し ます。
デー タ 入力 – D
デー タ 入力は、 シ フ ト レ ジ ス タ へシ フ ト イ ンす る 新 し いデー タ (1 ビ ッ ト ) にな り ます。
ク ロ ッ ク イ ネーブル - CE
ク ロ ッ ク イ ネーブル ピ ンは、 シ フ ト 動作を制御 し ます。 ク ロ ッ ク イ ネーブル ピ ンが非ア ク テ ィ ブ
の と き は、 シ フ ト レ ジ ス タ にデー タ はシ フ ト イ ン さ れず、 新 し いデー タ は書 き 込 ま れ ま せん。 ク
ロ ッ ク イ ネーブルを ア ク テ ィ ブにす る と 、 デー タ 入力 (D) の内容が最初のビ ッ ト に書 き 込まれ、 す
べてのデー タ が 1 つずつシ フ ト し ます。 新 し いデー タ は、 出力ピ ン (Q) お よ びカ ス ケー ド 接続可能
な出力ピ ン (Q31) に送信 さ れます。
ア ド レ ス – A[4:0]
ア ド レ ス入力は、 読み出 さ れ る ビ ッ ト (範囲 0 ~ 31) を選択 し ます。 n 番目の ビ ッ ト が、 出力ピ ン
(Q) に送信 さ れます。 こ の入力はカ ス ケー ド 接続可能な出力ピ ン (Q31) に影響せず、 Q31 は常にシ
フ ト レ ジ ス タ の最後のビ ッ ト ( ビ ッ ト 31) にな り ます。
7 シ リ ーズ FPGA CLB ユーザー ガ イ ド
UG474 (v1.7) 2014 年 11 月 17 日
japan.xilinx.com
53
第 3 章 : デザイ ン入力
デー タ 出力 – Q
デー タ 出力 Q には、 ア ド レ ス入力で選択 さ れたデー タ 値 (1 ビ ッ ト ) が送信 さ れます。
デー タ 出力 – Q31
デー タ 出力 Q31 には、 32 ビ ッ ト シ フ ト レ ジ ス タ の最後のビ ッ ト 値が送信 さ れます。 シ フ ト イ ンが
実行 さ れ る ご と に新 し いデー タ が出力 さ れます。
フ リ ップフロップ プリ ミ テ ィ ブ
フ リ ッ プ フ ロ ッ プや ラ ッ チ両方を含む、 CLB の ス ト レージ エ レ メ ン ト 用のプ リ ミ テ ィ ブがい く つ
かあ り 、 さ ま ざ ま な制御信号を組み合わせて使用で き ます。 図 3-5 に、 FDRE プ リ ミ テ ィ ブ を例 と
し て示 し ま す。 フ リ ッ プ フ ロ ッ プお よ び ラ ッ チのプ リ ミ テ ィ ブの詳細は、 『Vivado Design Suite 7
シ リ ーズ FPGA お よ び Zynq-7000 All Programmable SoC ラ イ ブ ラ リ ガ イ ド 』 (UG953) を参照 し
て く だ さ い。
X-Ref Target - Figure 3-5
FDRE
D
Q
CE
C
R
UG474_c3_05_102910
図 3-5 : FDRE プ リ ミ テ ィ ブ
ポー ト 信号
デー タ 入力 - D
デー タ 入力は、 フ リ ッ プ フ ロ ッ プに ク ロ ッ ク で入力 さ れ る 新 し いデー タ (1 ビ ッ ト ) です。
デー タ 出力 - Q
Q は、 フ リ ッ プ フ ロ ッ プか ら の レ ジ ス タ を介 し た 1 ビ ッ ト のデー タ 出力です。
クロッ ク - C
デー タ のキ ャ プチ ャ お よ び出力の ト グルには、 ク ロ ッ ク の立ち上が り エ ッ ジ ま たは立ち下が り エ ッ
ジのいずれかが使用 さ れます。 デー タ お よ び ク ロ ッ ク イ ネーブル入力ピ ンには、 ク ロ ッ ク の選択 さ
れたエ ッ ジ を基準 と し たセ ッ ト ア ッ プ タ イ ムがあ り ます。 ク ロ ッ ク ピ ン (C) には、 ス ラ イ ス レベ
ルで反転オプシ ョ ンがあ り ます。 ク ロ ッ ク 信号は、 ほかの ロ ジ ッ ク リ ソ ース を使用せずに、 立ち下
が り エ ッ ジ ま たは立ち上が り エ ッ ジでア ク テ ィ ブにで き ます。 デフ ォ ル ト では、 立ち上が り エ ッ ジ
を使用 し ます。1 つの ス ラ イ ス に含まれ る すべての フ リ ッ プ フ ロ ッ プで、同 じ ク ロ ッ ク お よ び ク ロ ッ
ク の極性を使用す る 必要があ り ます。
ク ロ ッ ク イ ネーブル - CE
CE が Low の と き 、 D 入力に対す る ク ロ ッ ク 遷移が無視 さ れ ます。 セ ッ ト お よ び リ セ ッ ト 入力は、
ク ロ ッ ク イ ネーブル よ り も 優先 さ れます。
54
japan.xilinx.com
7 シ リ ーズ FPGA CLB ユーザー ガ イ ド
UG474 (v1.7) 2014 年 11 月 17 日
プリ ミティブ
同期 リ セ ッ ト - R
R が High の場合、 ほかの入力 よ り も 優先 さ れ、 デー タ 出力 (Q) は ク ロ ッ ク 遷移がア ク テ ィ ブの と
き に Low に駆動 さ れ ま す。 こ の信号は FDRE コ ン ポーネ ン ト で使用で き ま す。 デフ ォ ル ト では、
電源投入時に FDRE フ リ ッ プ フ ロ ッ プ も ク リ ア さ れます。
同期セ ッ ト - S
S が High の場合、 ほかの入力 よ り も 優先 さ れ、 デー タ 出力 (Q) は ク ロ ッ ク 遷移がア ク テ ィ ブの と
き に High に駆動 さ れ ま す。 こ の信号は FDSE コ ン ポーネ ン ト で使用で き ま す。 デフ ォ ル ト では、
電源投入時に FDSE フ リ ッ プ フ ロ ッ プ も プ リ セ ッ ト さ れます。
非同期 ク リ ア - CLR
CLR が High の場合、 ほかの入力 よ り も 優先 さ れ、 デー タ 出力 (Q) は Low に駆動 さ れます。 こ の
信号は FDCE コ ン ポーネ ン ト で使用で き ます。 デフ ォ ル ト では、 電源投入時に FDCE フ リ ッ プ フ
ロ ッ プ も ク リ ア さ れます。
非同期プ リ セ ッ ト - PRE
PRE が High の場合、 ほかの入力 よ り も 優先 さ れ、 デー タ 出力 (Q) は High に駆動 さ れます。 こ の
信号は FDPE コ ン ポーネ ン ト で使用で き ま す。 デフ ォ ル ト では、 電源投入時に FDPE フ リ ッ プ フ
ロ ッ プ も プ リ セ ッ ト さ れます。
注記 : 1 つの フ リ ッ プ フ ロ ッ プで非同期 ク リ ア と 非同期プ リ セ ッ ト の両方 を使用す る 場合は、 リ
ソ ースお よ び タ イ ミ ン グ パ ス を追加す る 必要があ り ます。
7 シ リ ーズ FPGA CLB ユーザー ガ イ ド
UG474 (v1.7) 2014 年 11 月 17 日
japan.xilinx.com
55
第 3 章 : デザイ ン入力
56
japan.xilinx.com
7 シ リ ーズ FPGA CLB ユーザー ガ イ ド
UG474 (v1.7) 2014 年 11 月 17 日
第4章
ア プ リ ケーシ ョ ン
こ の章では、 よ り 大 き な フ ァ ン ク シ ョ ンの一部 と し て CLB リ ソ ース を使用す る 方法について説明
し ます。 ま た、 こ れ ら の フ ァ ン ク シ ョ ン を別の方法で イ ンプ リ メ ン ト す る 場合の ト レー ド オ フ につ
いて も 解説 し ます。
分散 RAM のア プ リ ケーシ ョ ン
分散 RAM と し ての用途には、小規模な ア レ イ 向けの ス ト レージ エ レ メ ン ト と よ り 大規模なア レ イ
向けのブ ロ ッ ク RAM と の間に ト レー ド オ フ があ り ます。 最大限の柔軟性を得 る ために、 メ モ リ は
可能な限 り 推論す る こ と を推奨 し ます。 分散 RAM は、 イ ン ス タ ン シエーシ ョ ン ま たはザ イ リ ン ク
ス LogiCORE™ IP を使用 し て タ ーゲ ッ ト にす る こ と も で き ます。
通常、 タ ーゲ ッ ト デバ イ ス の SLICEM ま たは ロ ジ ッ ク リ ソ ー ス が不足 し ていない限 り 、 64 ビ ッ
ト 以下の メ モ リ は、 すべて分散 RAM で イ ン プ リ メ ン ト し て く だ さ い。 分散 RAM は、 リ ソ ース、
性能、 消費電力の面で よ り 効率的です。
64 ビ ッ ト か ら 128 ビ ッ ト の メ モ リ の場合、 使用す る 最適な リ ソ ース の判断は次の要因に依存 し ま
す。
1.
使用可能なブ ロ ッ ク RAM の有無。 使用で き る ブ ロ ッ ク RAM がない場合は、 分散 RAM を使
用 し ます。
2.
レ イ テ ン シの要件。 非同期読み出 し 機能が必要な場合は、 分散 RAM を使用 し ます。
3.
デー タ 幅。 16 ビ ッ ト よ り も 大 き な場合は、 可能であればブ ロ ッ ク RAM を使用 し ます。
4.
必要な性能要件。 通常、 レ ジ ス タ 付 き 分散 RAM はブ ロ ッ ク RAM に比べて Clock-to-Out タ
イ ミ ン グが短 く 、 配置制約 も 厳 し く あ り ません。
シ フ ト レ ジ ス タ のア プ リ ケーシ ョ ン
同期シ フ ト レ ジ ス タ
シ フ ト レ ジ ス タ のプ リ ミ テ ィ ブは、 同 じ ス ラ イ ス にあ る レ ジ ス タ を使用 し ません。 完全に同期 し た
読み出 し /書 き 込みシ フ ト レ ジ ス タ を イ ンプ リ メ ン ト する には、 出力ピ ン Q を フ リ ッ プ フ ロ ッ プに
接続す る 必要があ り ます。 図 4-1 に示す よ う に、 シ フ ト レ ジ ス タ と フ リ ッ プ フ ロ ッ プで同 じ ク ロ ッ
ク が使用 さ れます。
7 シ リ ーズ FPGA CLB ユーザー ガ イ ド
UG474 (v1.7) 2014 年 11 月 17 日
japan.xilinx.com
57
第 4 章 : ア プ リ ケーシ ョ ン
X-Ref Target - Figure 4-1
SRLC32E
D
FF
D
Q
Synchronous
Output
Q
Address
(Write Enable)
CE
Q31
CLK
UG474_c4_01_101210
図 4-1 : 同期シ フ ト レ ジ ス タ
こ の コ ン フ ィ ギ ュ レーシ ョ ンは、デザ イ ンが簡単で タ イ ミ ン グ ソ リ ュ ーシ ョ ンの点で も 優れてい ま
す。 フ リ ッ プ フ ロ ッ プはシ フ ト レ ジ ス タ チ ェ ーン の最後の レ ジ ス タ と 考え、 固定長モー ド ま たは
可変長モー ド でのア ド レ ス指定は必要な長 さ か ら 1 を引いた値に し ます。 必要に応 じ て、 カ ス ケー
ド 接続可能な出力 も フ リ ッ プ フ ロ ッ プ を介 し て出力で き ます。
固定長シ フ ト レ ジ ス タ
カ ス ケ ー ド 接続可能 な 32 ビ ッ ト の シ フ ト レ ジ ス タ で は、 専用 マ ルチ プ レ ク サー (F7AMUX、
F7BMUX、 お よ び F8MUX) を使用せずに、 任意の固定長モー ド シ フ ト レ ジ ス タ を イ ン プ リ メ ン
ト で き ます。 図 4-2 に、 72 ビ ッ ト のシ フ ト レ ジ ス タ を示 し ます。 最後の SRLC32E プ リ ミ テ ィ ブ
のみア ド レ ス 入力を 0b00111 に固定す る 必要があ り ま す。 ま たは、 シ フ ト レ ジ ス タ の長 さ を 71
ビ ッ ト ま でに制限 し て ( ア ド レ ス入力を 0b00110 に固定)、 最後の レ ジ ス タ にはフ リ ッ プ フ ロ ッ プ
を使用す る こ と も で き ます。 SRLC32E プ リ ミ テ ィ ブでは、 シ フ ト レ ジ ス タ の長 さ はア ド レ ス入力
+1 です。
X-Ref Target - Figure 4-2
LUT
D
LUT
D
D
D
Q31
Q31
SRLC32E
SRLC32E
LUT
LUT
D
D
Q31
Q31
SRLC32E
SRLC32E
FF
LUT
D
00111
5
LUT
Q
A[4:0]
OUT
(72-bit SRL)
D
00110
5
Q
A[4:0]
Q31
Q31
SRLC32E
SRLC32E
D
Q
OUT
(72-bit SRL)
UG474_c4_02_101210
図 4-2 : 固定長シ フ ト レ ジ ス タ の例
58
japan.xilinx.com
7 シ リ ーズ FPGA CLB ユーザー ガ イ ド
UG474 (v1.7) 2014 年 11 月 17 日
キ ャ リ ー ロ ジ ッ クのア プ リ ケーシ ョ ン
キ ャ リ ー ロ ジ ッ クのア プ リ ケーシ ョ ン
CLB の専用キ ャ リ ー ロ ジ ッ ク は、 加算器、 カ ウ ン タ ー、 コ ンパ レー タ な ど の演算の性能を向上 さ
せ ます。 単純な カ ウ ン タ ーま たは加算/減算器を含むデザ イ ン では、 自動的にキ ャ リ ー ロ ジ ッ ク が
推論 さ れます。 乗算器な ど の よ り 複雑な フ ァ ン ク シ ョ ンは、 独立 し た DSP48E1 ス ラ イ ス に よ っ て
イ ンプ リ メ ン ト で き ます。
すべてのデバ イ ス に搭載 さ れた DSP48E1 ス ラ イ ス は、 乗算、 乗算累算、 乗算加算、 3 入力加算、 バ
レ ル シ フ タ ー、 多入力マルチプ レ ク サー、 マ グ ニチ ュ ー ド コ ンパ レー タ 、 ビ ッ ト 単位の ロ ジ ッ ク
フ ァ ン ク シ ョ ン、 パ タ ーン検出、 多入力カ ウ ン タ ーな ど、 多 く の独立 し た機能を サポー ト し ま す。
さ ら に、 複数の DSP48E1 ス ラ イ ス を カ ス ケー ド 接続で き る アーキ テ ク チ ャ に よ っ て、 多入力の数
値演算や DSP フ ィ ル タ ー、 お よ び複素数演算に も 対応で き ます。 DSP48E1 ス ラ イ ス の詳細は、 『7
シ リ ーズ DSP48E1 ス ラ イ ス ユーザー ガ イ ド 』 (UG479) を参照 し て く だ さ い。
CLB キ ャ リ ー ロ ジ ッ ク と DSP48E1 ス ラ イ ス のいずれを使用す る かは、 アプ リ ケーシ ョ ン に よ っ
て異な り ます。 DSP48E1 ス ラ イ ス全体 よ り も 、 CLB キ ャ リ ー ロ ジ ッ ク を用いた方が小規模な演算
は よ り 高速に動作 し 、 消費電力 も 小 さ く な り ま す。 DSP48E1 ス ラ イ ス をすべて使用 し てい る 場合
は、 効率的な代替手段 と し て CLB ス ラ イ スやキ ャ リ ー ロ ジ ッ ク を利用で き ます。
キ ャ リ ー ロ ジ ッ ク の使用法
キ ャ リ ー ロ ジ ッ ク は、 推論ま たは イ ン ス タ ン シエーシ ョ ンのいずれ も 可能です。 7 シ リ ーズ FPGA
向けに設計 さ れたマ ク ロ を使用す る と 、 特に複雑な フ ァ ン ク シ ョ ン で最大の柔軟性 と 効率が得 ら れ
ます。
ユ ニ マ ク ロ は、 加算器、 カ ウ ン タ ー、 コ ン パ レ ー タ 、 乗算器、 乗算器/ ア キ ュ ム レ ー タ を 含み、
DSP48E1 ス ラ イ ス を使用 し ます。
ザ イ リ ン ク ス の IP には同様の フ ァ ン ク シ ョ ン が含 ま れ ま す。 こ れ ら の フ ァ ン ク シ ョ ン を定義す る
場合、 CLB キ ャ リ ー ロ ジ ッ ク ま たは DSP48E1 ス ラ イ ス のいずれで イ ン プ リ メ ン ト す る かはユー
ザーが指定で き ます。
キ ャ リ ー ロ ジ ッ ク は ス ラ イ ス (SLICEL お よ び SLICEM) の隔カ ラ ムで垂直方向上向 き に実行 し ま
す。 キ ャ リ ー ロ ジ ッ ク を使用す る 場合、 ザ イ リ ン ク ス ツールに よ っ て ロ ジ ッ ク が自動的にカ ラ ム
方向に配置 さ れます。 フ ロ アプ ラ ン を作成す る 際は、 キ ャ リ ー ロ ジ ッ ク を使用す る フ ァ ン ク シ ョ ン
を必ずグループ化 し 、 キ ャ リ ー チ ェ ーン が不要に中断 さ れ る こ と のない よ う にす る 必要が あ り ま
す。 ス タ ッ ク ド シ リ コ ン イ ン タ ー コ ネ ク ト (SSI) テ ク ノ ロ ジ を 使用す る デバ イ ス の SLR (Super
Logic Region) 間では、 キ ャ リ ー ロ ジ ッ ク のカ ス ケー ド 接続はで き ません。
7 シ リ ーズ FPGA CLB ユーザー ガ イ ド
UG474 (v1.7) 2014 年 11 月 17 日
japan.xilinx.com
59
第 4 章 : ア プ リ ケーシ ョ ン
60
japan.xilinx.com
7 シ リ ーズ FPGA CLB ユーザー ガ イ ド
UG474 (v1.7) 2014 年 11 月 17 日
第5章
タ イ ミ ング
ザ イ リ ン ク ス ソ フ ト ウ ェ ア を使用 し てデザ イ ン を イ ン プ リ メ ン ト す る 場合、 多様な タ イ ミ ン グ パ
ラ メ ー タ ーをすべて理解す る 必要はあ り ませんが、 ク リ テ ィ カル パ ス の解析や よ り 大規模で複雑な
7 シ リ ーズ FPGA を使用す る 高速デザ イ ン を目指す上級設計者に と っ ては、タ イ ミ ン グ モデルの理
解が役立ち ます。
こ こ に記載す る タ イ ミ ン グ モデルを使用す る 場合は、ザ イ リ ン ク ス Timing Analyzer お よ び各 7 シ
リ ーズ FPGA デー タ シー ト の 「ス イ ッ チ特性」 も 併せて参照する こ と を推奨 し ます。 ピ ン名、 パ ラ
メ ー タ ー名、 お よ びパ ス はすべて、 Timing Analyzer の レ ポー ト の表記 と 一致 し ます。 こ の章では、
デー タ シー ト の 「ス イ ッ チ特性」 に記載 さ れてい る ほ と ん ど の CLB タ イ ミ ン グ パ ラ メ ー タ ーにつ
いて説明 し てい ます。
こ の章では、 フ ァ ン ク シ ョ ン を次の 5 つのカ テ ゴ リ に分けて解説 し ます。
•
62 ページの 「CLB ス ラ イ ス の一般的な タ イ ミ ン グ モデル と パ ラ メ ー タ ー」
•
64 ページの 「CLB ス ラ イ ス のマルチプ レ ク サーの タ イ ミ ン グ モデルお よ びパ ラ メ ー タ ー」
•
65 ページの 「CLB ス ラ イ ス のキ ャ リ ー チ ェーンの タ イ ミ ン グ モデルお よ びパ ラ メ ー タ ー」
•
67 ページの 「CLB ス ラ イ ス分散 RAM の タ イ ミ ン グ モデルお よ びパ ラ メ ー タ ー (SLICEM の
み) 」
•
70 ページの 「CLB ス ラ イ ス の SRL シ フ ト レ ジ ス タ の タ イ ミ ン グ モデルお よ び パ ラ メ ー タ ー
(SLICEM のみ)」
各カ テ ゴ リ について、 次の 3 つのセ ク シ ョ ンで タ イ ミ ン グ モデルを説明 し てい ます。
•
フ ァ ン ク シ ョ ン エ レ メ ン ト 図 - ピ ンや接続を示す基本的な アーキ テ ク チ ャ 図
•
タ イ ミ ン グ パ ラ メ ー タ ー - 各 7 シ リ ーズ FPGA デー タ シー ト に記載 さ れてい る タ イ ミ ン グ パ
ラ メ ー タ ーの定義
•
タ イ ミ ン グ図 - フ ァ ン ク シ ョ ン エ レ メ ン ト の タ イ ミ ン グ パ ラ メ ー タ ー間の相対関係を示す図
タ イ ミ ン グ パ ラ メ ー タ ー名は通常、 T に開始ピ ンお よ び終了ピ ンの組み合わせを下付 き で併記 し た
形式で表 し ます。 た と えば、 TCECK は CE か ら ク ロ ッ ク へのセ ッ ト ア ッ プ タ イ ム、 TCKCE は ク ロ ッ
ク か ら CE をデ ィ アサー ト す る ま でのホール ド タ イ ム を表 し ます。 1 つのパ ラ メ ー タ ー名が ス ラ イ
ス内全体で複数のパ ス に適用 さ れ、 各パ ス で異な る 値を取 る 場合 も あ り ます。
7 シ リ ーズ FPGA CLB ユーザー ガ イ ド
UG474 (v1.7) 2014 年 11 月 17 日
japan.xilinx.com
61
第 5 章 : タ イ ミ ング
CLB ス ラ イ スの一般的な タ イ ミ ング モデル と パラ メ ー タ ー
図 5-1 に、 7 シ リ ーズ FPGA ス ラ イ ス の簡略図を示 し ます。 こ こ で説明する タ イ ミ ン グ パ ス に関連
す る エ レ メ ン ト のみを示 し てい ます。
X-Ref Target - Figure 5-1
LUT
D
Inputs
6
O6
D
O5
DMUX
FF/LAT
D
CE
CLK
DX
Q
D
6
DQ
SR
CE
CK
LUT
C
Inputs
Q
SR
F7BMUX
O6
C
CMUX
O5
FF/LAT
CX
Q
D
F8MUX
6
Q
CQ
SR
CE
CK
SR
LUT
B
Inputs
D
CE
CLK
O6
B
BMUX
O5
FF/LAT
BX
Q
D
LUT
A
Inputs
6
F7AMUX
D
CE
CLK
Q
BQ
SR
CE
CK
SR
O6
A
O5
AMUX
AX
Q
D
FF/LAT
CE
CK
SR
CE
D
CE
CLK
Q
AQ
SR
CLK
SR
UG474_c5_01_101210
図 5-1 : 7 シ リ ーズ FPGA ス ラ イ スの簡略図
62
japan.xilinx.com
7 シ リ ーズ FPGA CLB ユーザー ガ イ ド
UG474 (v1.7) 2014 年 11 月 17 日
CLB ス ラ イ スの一般的な タ イ ミ ング モデル と パラ メ ー タ ー
一般的な タ イ ミ ン グ パ ラ メ ー タ ー
表 5-1 に、 図 5-1 に示 し た主なパス に関連す る 、 ス ラ イ ス の一般的な タ イ ミ ン グ パ ラ メ ー タ ーを示
し ます。
表 5-1 : ス ラ イ スの一般的な タ イ ミ ング パ ラ メ ー タ ー
パラ メ ー タ ー
機能
説明
組み合わせ遅延
TILO(1)
A/B/C/D 入力か ら A/B/C/D 出力 ス ラ イ ス の A/B/C/D LUT 入力か ら 、 ル ッ ク ア ッ プ テーブル (LUT)
を通 り 、 ス ラ イ ス の A/B/C/D 出力に出力 さ れ る ま での伝搬遅延
TITO
透過 ラ ッ チを通 る A/B/C/D 入力
か ら AQ/BQ/CQ/DQ 出力
ス ラ イ ス の A/B/C/D LUT 入力か ら 、 LUT を通 り 、 ス ラ イ ス シーケ
ン シ ャ ル エ レ メ ン ト ( ラ ッ チ コ ン フ ィ ギ ュ レーシ ョ ン ) の AQ/BQ/
CQ/DQ 出力に出力 さ れ る ま での伝搬遅延
シーケ ン シ ャル遅延
TCKO
FF ク ロ ッ ク (CLK) か ら
AQ/BQ/CQ/DQ 出力
ク ロ ッ ク 後に、 ス ラ イ ス シーケ ン シ ャ ル エ レ メ ン ト の AQ/BQ/CQ/
DQ 出力でデー タ が安定 し て い な ければな ら な い時間 ( フ リ ッ プ フ
ロ ッ プ と し て コ ン フ ィ ギ ュ レーシ ョ ン )
TCKLO
ラ ッ チ ク ロ ッ ク (CLK) か ら
AQ/BQ/CQ/DQ 出力
ク ロ ッ ク 後に、 ス ラ イ ス シーケ ン シ ャ ル エ レ メ ン ト の AQ/BQ/CQ/
DQ 出力でデー タ が安定 し ていなければな ら ない時間 ( ラ ッ チ と し て
コ ン フ ィ ギ ュ レーシ ョ ン )
TSHCKO
ク ロ ッ ク 後 に、 ( ス ラ イ ス の フ リ ッ プ フ ロ ッ プ を 介 し て ) AMUX/
FF ク ロ ッ ク (CLK) か ら
AMUX/BMUX/CMUX/DMUX BMUX/CMUX/DMUX 出力が安定する ま での時間
出力
ス ラ イ ス シーケ ン シ ャ ル エ レ メ ン ト のセ ッ ト ア ッ プおよびホール ド タ イム(2)
TAS/TAH
A/B/C/D 入力
ク ロ ッ ク の前後に、ス ラ イ ス の A/B/C/D LUT 入力か ら のデー タ が安
定 し ていなければな ら ない時間
TDICK/TCKDI
AX/BX/CX/DX 入力
ク ロ ッ ク の前後に、 ス ラ イ ス の AX/BX/CX/DX 入力か ら のデー タ が
安定 し ていなければな ら ない時間
TCECK/TCKCE
CE 入力
ク ロ ッ ク の前後に、 ス ラ イ ス の CE 入力が安定 し ていな ければな ら
ない時間
TSRCK/TCKSR
SR 入力
ク ロ ッ ク の前後に、 ス ラ イ ス の SR ( セ ッ ト / リ セ ッ ト ) 入力 タ が安定
し ていなければな ら ない時間
TRPW (TSRMIN)
SR 入力
SR ( セ ッ ト / リ セ ッ ト ) の最小パルス幅
TRQ
SR 入力
ス ラ イ ス シーケ ン シ ャ ル エ レ メ ン ト の非同期セ ッ ト / リ セ ッ ト 伝搬
遅延
CE 入力
CE の イ ネーブルか ら 、 AQ/BQ/CQ/DQ 出力で ラ ッ チ出力 さ れ る ま
セ ッ ト /リ セ ッ ト
その他
TCEO
での伝搬遅延
7 シ リ ーズ FPGA CLB ユーザー ガ イ ド
UG474 (v1.7) 2014 年 11 月 17 日
japan.xilinx.com
63
第 5 章 : タ イ ミ ング
表 5-1 : ス ラ イ スの一般的な タ イ ミ ング パ ラ メ ー タ ー (続き )
パラ メ ー タ ー
FTOG
機能
説明
CLK 入力
ト グル周波数 – ス ラ イ ス フ リ ッ プ フ ロ ッ プが ク ロ ッ ク 供給 さ れ る 最
大周波数 (エ ク ス ポー ト 制御の場合)
注記 :
1. こ のパ ラ メ ー タ ーは、 2 つの 5 入力フ ァ ン ク シ ョ ン と し て コ ン フ ィ ギ ュ レーシ ョ ン さ れた LUT を含みます。
2. TXXCK = セ ッ ト ア ッ プ タ イ ム ( ク ロ ッ ク エ ッ ジの前)、 TCKXX = ホール ド タ イ ム ( ク ロ ッ ク エ ッ ジの後) です。
一般的な タ イ ミ ン グ特性
図 5-2 に、 7 シ リ ーズ FPGA ス ラ イ ス の一般的な タ イ ミ ン グ特性を示 し ます。
X-Ref Target - Figure 5-2
1
2
3
CLK
TCECK
CE
AX/BX/CX/DX
(DATA)
TDICK
TSRCK
SR (RESET)
TCKO
TCKO
AQ/BQ/CQ/DQ
(OUT)
UG474_c5_02_102310
図 5-2 : ス ラ イ スの一般的な タ イ ミ ング特性
•
ク ロ ッ ク イ ベン ト (1) よ り も TCECK 時間前に、 ク ロ ッ ク イ ネーブル信号が ス ラ イ ス レ ジ ス タ
の CE 入力上で有効 (High) にな り ます。
•
ク ロ ッ ク イ ベン ト (1) よ り も TDICK 時間前に、 AX、 BX、 CX、 ま たは DX 入力のいずれかか
ら のデー タ が ス ラ イ ス レ ジ ス タ の D 入力で有効 (High) にな り ます。 こ れは、 ク ロ ッ ク イ ベン
ト (1) の後の TCKO 時間に、 AQ、 BQ、 CQ、 ま たは DQ ピ ンに出力 さ れます。
•
ク ロ ッ ク イ ベン ト (3) よ り も TSRCK 時間前に、 同期 リ セ ッ ト と し て コ ン フ ィ ギ ュ レーシ ョ ン
さ れた SR 信号が有効 (High) にな り 、 ス ラ イ ス レ ジ ス タ が リ セ ッ ト さ れます。 こ れは、 ク ロ ッ
ク イ ベン ト (3) の後の TCKO 時間に、 AQ、 BQ、 CQ、 ま たは DQ ピ ンに出力状態が反映 さ れ
ます。
CLB ス ラ イ スのマルチプ レ クサーのタ イ ミ ング モデルおよびパラ メ ー タ ー
41 ページの図 2-22 お よ び 42 ページの図 2-23 に、7 シ リ ーズ FPGA ス ラ イ ス の多入力マルチプ レ
ク サーを示 し ます。
ス ラ イ ス マルチ プ レ ク サーの タ イ ミ ング パラ メ ー タ ー
表 5-2 に、図 2-22 お よ び図 2-23 に示 し た主なパ ス に関連す る ス ラ イ ス マルチプ レ ク サーの タ イ ミ
ン グ パ ラ メ ー タ ーを示 し ます。 こ れ ら のパ ラ メ ー タ ー名の多 く は、 多入力マルチプ レ ク サーを含ま
ないパス に も 使用 さ れます。
64
japan.xilinx.com
7 シ リ ーズ FPGA CLB ユーザー ガ イ ド
UG474 (v1.7) 2014 年 11 月 17 日
CLB ス ラ イ スのキ ャ リ ー チ ェ ーンの タ イ ミ ング モデルおよびパラ メ ー タ ー
表 5-2 : ス ラ イ ス マルチ プ レ クサーの タ イ ミ ング パラ メ ー タ ー
パラ メ ー タ ー
機能
説明
多入力マルチ プ レ クサーを使用する ス ラ イ スの伝搬遅延
TAXA/TAXB/
TBXB/
TCXB/TCXC
AX/BX/CX 入力か ら
AMUX/BMUX/CMUX 出力
ス ラ イ ス の AX/BX/CX 入力 か ら 、
マルチプ レ ク サーのセ レ ク ト 入力を
通 り 、 ス ラ イ ス の AMUX/BMUX/
CMUX 出力に出力 さ れ る ま での伝
搬遅延
TOPAB/
TOPBA/TOPBB/
TOPCB/
TOPDB/TOPDC
A/B/C/D 入力か ら
AMUX/BMUX/CMUX 出力
ス ラ イ ス の A/B/C/D LUT 入力 か
ら 、 マルチプ レ ク サーを通 り 、 ス ラ
イ ス の AMUX/BMUX/CMUX 出力
に出力 さ れ る ま での伝搬遅延
TILO_2
A/C 入力か ら AMUX/CMUX 出力
ス ラ イ ス の A LUT 入力 か ら 、
F7AMUX マ ル チ プ レ ク サ ー を 通
り 、 ス ラ イ ス の AMUX 出力に出力
さ れ る ま での伝搬遅延、 ま たは、 ス
ラ イ ス の C LUT 入力 か ら 、
F7BMUX マ ル チ プ レ ク サ ー を 通
り 、 ス ラ イ ス の CMUX 出力に出力
さ れ る ま での伝搬遅延
CLB ス ラ イ スのキャ リ ー チ ェ ーンのタ イ ミ ング モデルおよびパラ メ ー タ ー
44 ページの図 2-24 に、 7 シ リ ーズ FPGA ス ラ イ ス に含まれ る キ ャ リ ー チ ェ ーン を示 し ます。
ス ラ イ ス キ ャ リ ー チ ェ ーンの タ イ ミ ング パラ メ ー タ ー
表 5-3 に、図 2-24 に示 し た主なパ ス に関連す る ス ラ イ ス キ ャ リ ー チ ェーンの タ イ ミ ン グ パ ラ メ ー
タ ーを示 し ます。
表 5-3 : ス ラ イ ス キ ャ リ ー チ ェ ーンの タ イ ミ ン グ パラ メ ー タ ー
パラ メ ー タ ー
機能
説明
キ ャ リ ー チ ェ ーン と し て コ ン フ ィ ギ ュ レーシ ョ ン さ れたス ラ イ スの伝搬遅延
TAXA/TAXB/TAXC/TAXD/
TBXB/TBXC/TBXD/
TCXC/TCXD/
TDXD
AX/BX/CX/DX 入力 か ら ス ラ イ ス の AX/BX/CX/DX 入力か ら 、
AMUX/BMUX/CMUX/ キ ャ リ ー ロ ジ ッ ク を通 り 、 ス ラ イ ス の
AMUX/BMUX/CMUX/DMUX 出力
DMUX 出力
に出力 さ れ る ま での伝搬遅延
TAXCY /T BXCY /T CXCY / AX/BX/CX/DX 入力 か ら
TDXCY
COUT 出力
ス ラ イ ス の AX/BX/CX/DX 入力か ら 、
ス ラ イ ス の COUT 出力に出力 さ れ る
ま での伝搬遅延
TBYP
ス ラ イ ス の CIN 入力か ら、 ス ラ イ ス の
COUT 出力に出力される までの伝搬遅延
CIN 入力か ら COUT 出力
T O P C Y A / T O P C Y B / A/B/C/D 入力 か ら COUT ス ラ イ ス の A/B/C/D LUT 入力 か ら 、
TOPCYC/TOPCYD
出力
ス ラ イ ス の COUT 出力に出力 さ れ る
ま での伝搬遅延
7 シ リ ーズ FPGA CLB ユーザー ガ イ ド
UG474 (v1.7) 2014 年 11 月 17 日
japan.xilinx.com
65
第 5 章 : タ イ ミ ング
表 5-3 : ス ラ イ ス キ ャ リ ー チ ェ ーンの タ イ ミ ン グ パラ メ ー タ ー (続き )
パラ メ ー タ ー
機能
説明
T C I N A / T C I N B / T C I N C / CIN 入力か ら
XOR (和) を使用する ス ラ イ スの CIN 入
AMUX/BMUX/CMUX/ 力か ら AMUX/BMUX/CMUX/DMUX
TCIND
DMUX 出力
出力に出力される までの伝搬遅延
キ ャ リ ー チ ェ ーン と し て コ ン フ ィ ギ ュ レーシ ョ ン さ れたス ラ イ スのセ ッ ト ア ッ プおよびホール ド
タ イ ム(1)
TCINCK/TCKCIN
CIN 入力
ク ロ ッ ク の前/後に ス ラ イ ス の CIN 入
力が安定 し ていなければな ら ない時間
注記 :
1. TXXCK = セ ッ ト ア ッ プ タ イ ム ( ク ロ ッ ク エ ッ ジの前)、TCKXX = ホール ド タ イ ム ( ク ロ ッ ク エ ッ ジの後) です。
ス ラ イ ス キ ャ リ ー チ ェ ーンの タ イ ミ ング特性
図 5-3 に、 7 シ リ ーズ FPGA ス ラ イ ス に イ ンプ リ メ ン ト さ れた ス ラ イ ス キ ャ リ ー チ ェ ーンの タ イ
ミ ン グ特性を示 し ます。
X-Ref Target - Figure 5-3
1
CLK
CIN
(DATA)
TCINCK
TCKO
AQ/BQ/CQ/DQ
(OUT)
UG474_c5_03_110110
図 5-3 : ス ラ イ ス キ ャ リ ー チ ェ ーンの タ イ ミ ング特性
図 5-3 について説明 し ます。
•
66
ク ロ ッ ク イ ベン ト (1) よ り も TCINCK 時間前に、 CIN 入力か ら のデー タ が ス ラ イ ス レ ジ ス タ
の DATA 入力で 有効 (High) にな り ます。 こ れは、 ク ロ ッ ク イ ベン ト (1) の後の TCKO 時間に
AQ/BQ/CQ/DQ ピ ンに出力 さ れます。
japan.xilinx.com
7 シ リ ーズ FPGA CLB ユーザー ガ イ ド
UG474 (v1.7) 2014 年 11 月 17 日
CLB ス ラ イ ス分散 RAM の タ イ ミ ング モデルおよびパ ラ メ ー タ ー (SLICEM のみ)
CLB ス ラ イ ス分散 RAM の タ イ ミ ング モデルおよびパラ メ ー タ ー
(SLICEM のみ)
図 5-4 に、 7 シ リ ーズ FPGA ス ラ イ ス に イ ンプ リ メ ン ト さ れてい る 分散 RAM の詳細を示 し ます。
図をわか り やす く す る ために、 ス ラ イ ス の一部のエ レ メ ン ト は省略 さ れてい ます。 こ こ で説明す る
タ イ ミ ン グ パ ス に関連す る エ レ メ ン ト のみを示 し てい ます。
X-Ref Target - Figure 5-4
RAM
DI
DX
D input
6
CLK
WE
DI1
DI2
A[6:0]
WA[6:0]
CLK
WE
O6
D
O5
DMUX
O6
C
O5
CMUX
O6
B
O5
BMUX
O6
A
O5
AMUX
RAM
CI
CX
C input
6
DI1
DI2
A[6:0]
WA[6:0]
CLK
WE
RAM
BI
BX
B input
6
DI1
DI2
A[6:0]
WA[6:0]
CLK
WE
RAM
AI
AX
A input
6
DI1
DI2
A[6:0]
WA[6:0]
CLK
WE
UG474_c5_04_110110
図 5-4 : 7 シ リ ーズ FPGA の SLICEM に含まれる分散 RAM の簡略図
7 シ リ ーズ FPGA CLB ユーザー ガ イ ド
UG474 (v1.7) 2014 年 11 月 17 日
japan.xilinx.com
67
第 5 章 : タ イ ミ ング
分散 RAM の タ イ ミ ング パラ メ ー タ ー
表 5-4 に、 図 5-4 に示 し た主なパ ス に関連する SLICEM に含まれ る 分散 RAM の タ イ ミ ン グ パ ラ
メ ー タ ーを示 し ます。
表 5-4 : 分散 RAM の タ イ ミ ン グ パラ メ ー タ ー
パラ メ ー タ ー
機能
説明
RAM (分散 RAM) と し て コ ン フ ィ ギ ュ レーシ ョ ン さ れたス ラ イ ス LUT のシーケ ン シ ャ ル遅延
書き 込み操作の ク ロ ッ ク 後に、分散 RAM に書 き 込まれた
デー タ が ス ラ イ ス の A/B/C/D 出力で安定 し ていなければ
な ら ない時間
TSHCKO
CLK か ら A/B/C/D 出力
TSHCKO (TSHCKO_1)
CLK か ら
書 き 込み操作の CLK 後に、 分散 RAM に書 き 込 ま れ た
AMUX/BMUX/CMUX/DMUX デー タ が ス ラ イ ス の AMUX/BMUX/CMUX/DMUX 出力
出力
で安定 し ていなければな ら ない時間
RAM (分散 RAM) と し て コ ン フ ィ ギ ュ レーシ ョ ン さ れたス ラ イ ス LUT のセ ッ ト ア ッ プおよびホール ド タ イム(1)
TDS/TDH
(TDS_LRAM/TDH_LRAM)
TAS/TAH
(TAS_LRAM/TAH_LRAM)
TWS/TWH
(TWS_LRAM/TWH_LRAM)
デ ー タ 入 力 (DI1) と し て コ ン
フ ィ ギ ュ レ ー シ ョ ン さ れ た AI/
BI/CI/DI (2)
ク ロ ッ ク の前/後に、 RAM と し て コ ン フ ィ ギ ュ レーシ ョ ン
さ れた ス ラ イ ス の AI/BI/CI/DI 入力でデー タ が安定 し て
いなければな ら ない時間
A/B/C/D ア ド レ ス入力
ク ロ ッ ク の前/後に、 RAM と し て コ ン フ ィ ギ ュ レーシ ョ ン
さ れた ス ラ イ ス の A/B/C/D LUT 入力でア ド レ ス信号が安
定 し ていなければな ら ない時間
WE 入力
ク ロ ッ ク の前/後に、 RAM コ ン フ ィ ギ ュ レーシ ョ ン さ れた
ス ラ イ ス の WE 入力で書 き 込み イ ネーブル信号が安定 し
ていなければな ら ない時間
ク ロ ッ ク CLK
TMPW
(TMPW_LRAM)
分散 RAM の最小 ク ロ ッ ク パルス幅
TMCP
ア ド レ ス 書 き 込み サ イ ク ル時間 を 満 た す た め の 最小 ク
ロ ッ ク 周期
注記 :
1. TXS = セ ッ ト ア ッ プ タ イ ム ( ク ロ ッ ク エ ッ ジの前)、 TXH = ホール ド タ イ ム ( ク ロ ッ ク エ ッ ジの後) です。
2. パ ラ メ ー タ ーは、 デー タ 入力 (DI2) と し て コ ン フ ィ ギ ュ レーシ ョ ン さ れた AX/BX/CX/DX を含みます。
68
japan.xilinx.com
7 シ リ ーズ FPGA CLB ユーザー ガ イ ド
UG474 (v1.7) 2014 年 11 月 17 日
CLB ス ラ イ ス分散 RAM の タ イ ミ ング モデルおよびパ ラ メ ー タ ー (SLICEM のみ)
分散 RAM の タ イ ミ ング特性
図 5-5 に、 7 シ リ ーズ FPGA ス ラ イ ス (LUT を RAM と し て コ ン フ ィ ギ ュ レーシ ョ ン ) に イ ンプ リ
メ ン ト さ れた分散 RAM の タ イ ミ ン グ特性を示 し ます。
X-Ref Target - Figure 5-5
1
2
3
4
5
6
7
TMCP
TMPW
TMPW
CLK
TAS
A/B/C/D
(ADDR)
2
F
3
4
0
1
5
E
TDS
AI/BI/CI/DI
(DI)
1
X
TWS
0
X
TILO
TILO
WE
DATA_OUT
A/B/C/D
Output
TSHCKO
1
WRITE
MEM(F)
READ
0
1
WRITE
WRITE
0
WRITE
MEM(E)
READ
UG474_c5_05_110110
図 5-5 : ス ラ イ ス分散 RAM の タ イ ミ ング特性
ク ロ ッ ク イ ベン ト 1 : 書き込み
書 き 込み動作中は、 ADDR 入力上のア ド レ ス が指す メ モ リ の内容は変化 し ません。 こ の メ モ リ ロ
ケーシ ョ ンに書 き 込まれたデー タ は、 ク ロ ッ ク に同期 し て A/B/C/D 出力に反映 さ れます。
•
ク ロ ッ ク イ ベン ト (1) よ り も TWS 時間前に、 書き 込み イ ネーブル信号 (WE) が有効 (High) に
な り 、 RAM が書 き 込み動作を実行で き る 状態にな り ます。
•
ク ロ ッ ク イ ベン ト (1) よ り も TAS 時間前に、 ア ド レ ス (2) が RAM の A/B/C/D 入力で有効に
な り ます。
•
ク ロ ッ ク イ ベン ト (1) よ り も TDS 時間前に、 DATA が RAM の DI 入力で有効 (1) にな り 、
TSHCKO 時間後に A/B/C/D 出力に反映 さ れます。 ま た、 ク ロ ッ ク イ ベン ト (1) よ り も TSHCKO
時間後に、 AMUX、 BMUX、 CMUX、 DMUX、 お よ び COUT 出力に も 反映 さ れます。
ク ロ ッ ク イ ベン ト 2 : 読み出 し
分散 RAM では、 すべての読み出 し が非同期です。 WE が Low の場合は、 随時ア ド レ ス バ ス を ア
サー ト で き ます。 そのア ド レ ス バ ス にあ る RAM の内容は、 TILO の遅延 (LUT を通過す る 場合の
伝搬遅延) 後に A/B/C/D 出力に反映 さ れます。ク ロ ッ ク イ ベン ト (2) の後に ア ド レ ス (F) はアサー
ト さ れ、 そのア ド レ ス にあ る RAM の内容は、 TILO の遅延後に出力に反映 さ れます。
7 シ リ ーズ FPGA CLB ユーザー ガ イ ド
UG474 (v1.7) 2014 年 11 月 17 日
japan.xilinx.com
69
第 5 章 : タ イ ミ ング
CLB ス ラ イ スの SRL シ フ ト レ ジス タ の タ イ ミ ン グ モデルおよび
パラ メ ー タ ー (SLICEM のみ)
図 5-6 に、7 シ リ ーズ FPGA の ス ラ イ ス に含まれ る シ フ ト レ ジ ス タ の イ ンプ リ メ ン テーシ ョ ン を示
し ます。 図をわか り やす く す る ために、 ス ラ イ ス の一部のエ レ メ ン ト は省略 さ れてい ます。 こ こ で
説明す る タ イ ミ ン グ パ ス に関連す る エ レ メ ン ト のみを示 し てい ます。
X-Ref Target - Figure 5-6
SRL
DI1
DI
D
O6
D address
6
A
MC31
CLK
WE
CLK
W
SRL
DI1
C address
C
O6
CI
6
A
MC31
CLK
WE
SRL
DI1
B address
B
O6
BI
6
A
MC31
CLK
WE
SRL
DI1
A
O6
AI
A address
6
A
CLK
DMUX
MC31
WE
UG474_c5_06_110110
図 5-6 : 7 シ リ ーズ FPGA のス ラ イ ス SRL の簡略図
70
japan.xilinx.com
7 シ リ ーズ FPGA CLB ユーザー ガ イ ド
UG474 (v1.7) 2014 年 11 月 17 日
CLB ス ラ イ スの SRL シ フ ト レ ジ ス タ の タ イ ミ ング モデルおよび パラ メ ー タ ー (SLICEM のみ)
ス ラ イ ス シ フ ト レジス タのタ イ ミ ング パラ メ ー タ ー
表 5-5 に、 図 5-6 に示 し た主なパス に関連す る 、 SLICEM SRL の タ イ ミ ン グ パ ラ メ ー タ ーを示 し
ます。
表 5-5 : ス ラ イ ス シ フ ト レ ジス タ の タ イ ミ ング パラ メ ー タ ー
パラ メ ー タ ー
機能
説明
SRL と し て コ ン フ ィ ギ ュ レーシ ョ ン さ れたス ラ イ ス LUT のシーケ ン シ ャル遅延
CLK か ら A/B/C/D 出力
書 き 込み操作後の ク ロ ッ ク 後に、 シ フ ト レ ジ ス タ
に書き 込まれたデー タ が ス ラ イ ス の A/B/C/D 出力
で安定 し ていなければな ら ない時間
TREG (TREG_MUX)(1)
CLK か ら AMUX ~ DMUX 出力
書 き 込み操作後の ク ロ ッ ク 後に、 シ フ ト レ ジ ス タ
AMUX/
に 書 き 込 ま れ た デー タ が ス ラ イ ス の
BMUX/CMUX/DMUX 出力で 安定 し て い な け れ
ばな ら ない時間
TREG (TREG_M31)
CLK か ら MC31 出力 を 通 り 、
に 書 き 込 ま れ た デー タ が、 MC31 出力 を 通 り 、
DMUX 出力へ送信
DMUX 出力で安定 し ていなければな ら ない時間
TREG(1)
書 き 込み操作後の ク ロ ッ ク 後に、 シ フ ト レ ジ ス タ
SRL と し て コ ン フ ィ ギ ュ レーシ ョ ン さ れたス ラ イ ス LUT のセ ッ ト ア ッ プお よびホール ド タ イ ム(2)
TCECK/TCKCE
CE 入力 (CE)
(TCECK_SHFREG/TCKCESHFREG)
ク ロ ッ ク の前/後に、 ク ロ ッ ク イ ネーブル信号が ス
ラ イ ス LUT の CE 入力で安定 し ていなければな ら
な い 時間 ( シ フ ト レ ジ ス タ と し て コ ン フ ィ ギ ュ
レーシ ョ ン )
TWS/TWH
(TWS_SHFREG/TWH_SHFREG)
CE 入力 (WE)
ク ロ ッ ク の前/後に、 書 き 込み イ ネーブル信号が ス
ラ イ ス LUT の WE 入力で安定 し ていなければな ら
な い 時間 ( シ フ ト レ ジ ス タ と し て コ ン フ ィ ギ ュ
レーシ ョ ン )
TDS/TDH(3)
(TDS_SHFREG/TDH_SHFREG)
デ ー タ 入 力 (DI) と し て コ ン フ ィ
ギ ュ レーシ ョ ン さ れた AI/BI/CI/DI
ク ロ ッ ク の前/後に、 デー タ が ス ラ イ ス の AI/BI/CI/
DI 入力で安定 し ていな ければな ら ない時間 ( シ フ
ト レ ジ ス タ と し て コ ン フ ィ ギ ュ レーシ ョ ン )
ク ロ ッ ク CLK
TMPW
分散 RAM の最小 ク ロ ッ ク パルス幅
注記 :
1. こ のパ ラ メ ー タ ーは、 2 ビ ッ ト シ フ ト レ ジ ス タ と し て コ ン フ ィ ギ ュ レーシ ョ ン さ れた LUT を含みます。
2. TXS = セ ッ ト ア ッ プ タ イ ム ( ク ロ ッ ク エ ッ ジの前)、 TXH = ホール ド タ イ ム ( ク ロ ッ ク エ ッ ジの後) です。
3. こ のパ ラ メ ー タ ーは、 デー タ 入力 (DI2) ま たは共通シ フ ト の 2 ビ ッ ト と し て コ ン フ ィ ギ ュ レーシ ョ ン さ れた AX/BX/CX/DX を含みます。
7 シ リ ーズ FPGA CLB ユーザー ガ イ ド
UG474 (v1.7) 2014 年 11 月 17 日
japan.xilinx.com
71
第 5 章 : タ イ ミ ング
ス ラ イ ス シ フ ト レ ジ ス タ の タ イ ミ ン グ特性
図 5-7 に、 7 シ リ ーズ FPGA ス ラ イ ス (LUT はシ フ ト レ ジ ス タ と し て コ ン フ ィ ギ ュ レーシ ョ ン ) に
イ ンプ リ メ ン ト さ れたシ フ ト レ ジ ス タ の タ イ ミ ン グ特性を示 し ます。
X-Ref Target - Figure 5-7
1
2
3
4
5
6
32
CLK
TWS
Write Enable
(WE)
TDS
Shift_In (DI)
0
Address
(A/B/C/D)
1
1
0
0
TREG
1
0
2
1
TILO
Data Out
(A/B/C/D)
X
1
MSB
(MC31/DMUX)
0
TREG
X
X
X
1
0
X
TILO
1
1
X
0
X
1
X
0
UG474_c5_07_110110
図 5-7 : ス ラ イ ス シ フ ト レ ジ ス タ の タ イ ミ ング特性
ク ロ ッ ク イ ベン ト 1 : シ フ ト イ ン
書 き 込み ( シ フ ト イ ン ) 実行中、 シ フ ト レ ジ ス タ を介 し てデー タ がシ フ ト さ れ る と き に A/B/C/D 入
力のア ド レ ス にあ る レ ジ ス タ のシ ン グル ビ ッ ト の内容が変更 さ れ ます。 ク ロ ッ ク イ ベン ト 時にア
ド レ ス が変更 さ れない場合、 こ の レ ジ ス タ に書 き 込 ま れたデー タ が同期 し て A/B/C/D 出力に反映
さ れ ます。 ク ロ ッ ク イ ベン ト 中に A/B/C/D 入力が変更 さ れ る 場合、 ア ド レ ス指定可能な出力 (A/
B/C/D 出力) のデー タ 値は無効にな り ます。
•
ク ロ ッ ク イ ベン ト (1) よ り も TWS 時間前に、 書き 込み イ ネーブル信号 (WE) は有効 (High) に
な り 、 シ フ ト レ ジ ス タ が次の書 き 込みを実行で き る 状態にな り ます。
•
ク ロ ッ ク イ ベン ト (1) よ り も TDS 時間前に、DATA がシ フ ト レ ジ ス タ の DI 入力で有効 (0) に
な り 、 ク ロ ッ ク イ ベン ト (1) よ り 遅延時間 TREG 後に A/B/C/D 出力に反映 さ れます。 ク ロ ッ ク
イ ベン ト (1) でア ド レ ス 0 が指定 さ れ る ため、 DI 入力のデー タ はレ ジ ス タ 0 に書 き 込まれ、 A/
B/C/D 出力で反映 さ れます。
ク ロ ッ ク イ ベン ト 2 : シ フ ト イ ン
•
ク ロ ッ ク イ ベン ト (2) よ り も TDS 時間前に、DATA がシ フ ト レ ジ ス タ の DI 入力で有効 (1) に
な り 、 ク ロ ッ ク イ ベン ト (2) よ り 遅延時間 TREG 後に A/B/C/D 出力に反映 さ れます。 ク ロ ッ ク
イ ベン ト (2) でア ド レ ス 0 が指定 さ れた ま ま にな る ため、DI 入力のデー タ はレ ジ ス タ 0 に書 き
込まれ、 D 出力で反映 さ れます。
ク ロ ッ ク イ ベン ト 3 : シ フ ト イ ン / ア ド レ ス指定に よ る (非同期) 読み出 し
すべての読み出 し 動作は CLK 信号に非同期で実行 さ れます。 ク ロ ッ ク イ ベン ト 間でア ド レ ス が変
更 さ れた場合、 そのア ド レ ス上の レ ジ ス タ のデー タ は TILO (LUT 通過時の伝搬遅延) 時間遅れて、
ア ド レ ス指定可能な出力 (A/B/C/D 出力) に反映 さ れます。
72
•
ク ロ ッ ク イ ベン ト (3) よ り も TDS 時間前に、DATA がシ フ ト レ ジ ス タ の DI 入力で有効 (1) に
な り 、 ク ロ ッ ク イ ベン ト (3) よ り 遅延時間 TREG 後に A/B/C/D 出力に反映 さ れます。
•
ア ド レ ス は変更 さ れます (0 か ら 2)。 こ の と き 、 レ ジ ス タ 2 に保持 さ れてい る 値は 0 ( こ の例で
は、 最初にシ フ ト さ れ る デー タ ) であ り 、 TILO の遅延後に A/B/C/D 出力に反映 さ れます。
japan.xilinx.com
7 シ リ ーズ FPGA CLB ユーザー ガ イ ド
UG474 (v1.7) 2014 年 11 月 17 日
CLB ス ラ イ スの SRL シ フ ト レ ジ ス タ の タ イ ミ ング モデルおよび パラ メ ー タ ー (SLICEM のみ)
ク ロ ッ ク イ ベン ト 32 : MSB (最上位ビ ッ ト ) の変化
•
ク ロ ッ ク イ ベン ト (32) の後の TREG 時間に、 シ フ ト レ ジ ス タ にシ フ ト さ れ る 最初のビ ッ ト が
LUT A ( シ フ ト レ ジ ス タ ) の MC31 出力を通っ て、 ス ラ イ ス の DMUX 出力で有効 ( こ の例で
は ロ ジ ッ ク 0) に な り ま す。 こ れは、 ク ロ ッ ク イ ベ ン ト (1) の後の TREG 時間で、 AMUX、
BMUX、 CMUX、 DMUX、 お よ び COUT 出力に対 し て も 同様です。
7 シ リ ーズ FPGA CLB ユーザー ガ イ ド
UG474 (v1.7) 2014 年 11 月 17 日
japan.xilinx.com
73
第 5 章 : タ イ ミ ング
74
japan.xilinx.com
7 シ リ ーズ FPGA CLB ユーザー ガ イ ド
UG474 (v1.7) 2014 年 11 月 17 日
第6章
高度な使用法
ラ ッ チ フ ァ ン ク シ ョ ンのロ ジ ッ クへの転用
ラ ッ チ フ ァ ン ク シ ョ ンは レベル認識型であ る ため、 ロ ジ ッ ク ゲー ト の等価回路 と し て使用で き ま
す。 こ の フ ァ ン ク シ ョ ン を指定す る プ リ ミ テ ィ ブは、 図 6-1 に示す AND2B1L (一方の入力が反転
し た 2 入力の AND ゲー ト ) お よ び OR2L (2 入力の OR ゲー ト ) です。
X-Ref Target - Figure 6-1
AND2B1L
OR2L
UG474_c6_01_110210
図 6-1 : AND2B1L および OR2L コ ンポーネ ン ト
図 6-2 に示す よ う に、 AND2B1L や OR2L プ リ ミ テ ィ ブが イ ン ス タ ン シエー ト さ れ る と 、 ラ ッ チの
デー タ 、 お よ び SR の入力 と Q 出力が使用 さ れ、 CK ゲー ト と CE ゲー ト の イ ネーブルがア ク テ ィ
ブ High に保持 さ れ ます。 AND2B1L は、 ラ ッ チ デー タ 入力 ( ゲー ト の反転入力、 DI) と 非同期 ク
リ ア入力 (SRI) を組み合わせます。 OR2L は、 ラ ッ チ デー タ 入力 と 非同期プ リ セ ッ ト を組み合わせ
ます。 通常、 ラ ッ チ デー タ は同 じ ス ラ イ ス の LUT 出力か ら 入力 さ れ、 ロ ジ ッ ク フ ァ ン ク シ ョ ンが
ほかの外部入力へ拡張 さ れ ます。 SR 入力は各ス ラ イ ス に 1 つ し か存在 し ないため、 1 つの ス ラ イ
ス に複数の AND2B1L ま たは OR2L を使用す る 場合は、 外部入力を共有す る 必要があ り ます。
X-Ref Target - Figure 6-2
IN[6:1]
LUT6
O6
D
Q
Q
VCC
CE
CK
SR
SRI
UG474_c6_02_110310
図 6-2 : OR2L のイ ン プ リ メ ン テーシ ョ ン (Q = D または SRI)
デバ イ ス モデルでは、 こ れ ら の フ ァ ン ク シ ョ ンは ス ト レージ エ レ メ ン ト の AND2L お よ び OR2L
コ ン フ ィ ギ ュ レーシ ョ ン と し て表示 さ れます。
7 シ リ ーズ FPGA CLB ユーザー ガ イ ド
UG474 (v1.7) 2014 年 11 月 17 日
japan.xilinx.com
75
第 6 章 : 高度な使用法
2 入力ゲー ト の AND2B1L お よ び OR2L は、 LUT リ ソ ース を節約 し 、 電源投入時お よ び GSR ( グ
ロ ーバル セ ッ ト / リ セ ッ ト ) のアサー ト 時に既知の状態に初期化 さ れます。 こ れ ら のプ リ ミ テ ィ ブに
よ っ て レ ジ ス タ / ラ ッ チ リ ソ ース を ロ ジ ッ ク に転用す る こ と で、ロ ジ ッ ク レベルが低減 さ れ、ロ ジ ッ
ク 集積度が向上 し ます。 ただ し 、 ク ロ ッ ク 入力お よ び ク ロ ッ ク イ ネーブル入力を固定す る 必要があ
る こ と か ら 、 1 つ以上の AND2B1L ま たは OR2L プ リ ミ テ ィ ブ を指定す る と 、 ス ラ イ ス内で レ ジ
ス タ のパ ッ キ ン グや集積度に問題が生 じ る 可能性があ り 、 その場合、 残 り の レ ジ ス タ や ラ ッ チを使
用で き な く な り ます。
イ ン タ ー コ ネ ク ト リ ソ ース
イ ン タ ー コ ネ ク ト と は、 FPGA 内の IOB、 CLB、 DSP ス ラ イ ス、 ブ ロ ッ ク RAM な ど の フ ァ ン ク
シ ョ ン エ レ メ ン ト の入力 と 出力間をつな ぐ 信号経路であ り 、 プ ロ グ ラ ム可能なネ ッ ト ワ ー ク です。
配線 と も 呼ばれ る イ ン タ ー コ ネ ク ト は、 最適な コ ネ ク テ ィ ビ テ ィ を達成す る ためにセグ メ ン ト 化 さ
れてい ます。 ザ イ リ ン ク ス の配置配線ツールは、 豊富な イ ン タ ーコ ネ ク ト ア レ イ を活用 し 、 最適な
シ ス テ ム性能を最短の コ ンパ イ ル時間で実現 し ます。
7 シ リ ーズ CLB は FPGA 内の通常のア レ イ に配置 さ れます。 各 CLB は ス イ ッ チ マ ト リ ッ ク ス に
接続 し て、CLB の行間 と カ ラ ム間に水平お よ び垂直方向に存在す る 汎用配線マ ト リ ッ ク ス にア ク セ
ス し ます。 同様の ス イ ッ チ マ ト リ ッ ク ス で、 DSP ス ラ イ スやブ ロ ッ ク RAM リ ソ ース な ど のほか
の リ ソ ース に も 接続 し ます。
ほ と ん ど の イ ン タ ー コ ネ ク ト 機能は、 FPGA 設計者か ら は透過的、 つま り 意識す る 必要があ り ませ
ん。 イ ン タ ー コ ネ ク ト に関す る 詳細な知識は設計テ ク ニ ッ ク のガ イ ド と し て役立ち ますが、 効率的
な FPGA デザ イ ンに必須 と い う わけではあ り ません。ユーザーが制御で き る イ ン タ ー コ ネ ク ト は一
部に限 ら れてい ます。 その一例が ク ロ ッ ク 配線 リ ソ ース であ り 、 こ れは ク ロ ッ ク バ ッ フ ァ ーを使用
する こ と で選択 し ます。 詳細は、 『7 シ リ ーズ FPGA ク ロ ッ ク リ ソ ース ユーザー ガ イ ド 』 (UG472)
で説明 し てい ます。 2 つのグ ロ ーバル制御信号 GSR お よ び GTS は、 STARTUPE2 プ リ ミ テ ィ ブ を
使用 し て選択 さ れます。
グ ローバル制御信号 GSR および GTS
7 シ リ ーズ FPGA には、 汎用 イ ン タ ー コ ネ ク ト に加え、 表 6-1 に示す 2 つのグ ロ ーバル ロ ジ ッ ク
制御信号があ り ます。
表 6-1 : グローバル ロ ジ ッ ク制御信号
グローバル制御入力
説明
GSR
グ ロ ーバル セ ッ ト / リ セ ッ ト : High の場合、 非同期ですべての レ ジ ス
タ と フ リ ッ プ フ ロ ッ プを初期状態に戻 し ます。
GTS
グ ロ ーバル ト ラ イ ス テー ト : High の場合、非同期ですべての I/O ピ ン
をハ イ イ ン ピーダ ン ス状態 (High-Z、 ト ラ イ ス テー ト ) に し ます。
デザ イ ン内のすべて の フ リ ッ プ フ ロ ッ プに共通の初期化信号が必要な場合、 独立 し た配線済みグ
ロ ーバル リ セ ッ ト 信号の代わ り に GSR 制御信号を使用す る こ と で、 CLB の入力を節約で き 、 よ り
小規模で効率的なデザ イ ン を作成で き ます。GSR 信号は常に フ リ ッ プ フ ロ ッ プ を再初期化す る 必要
があ り ます。 GSR お よ び GTS を使用 し て も 、 汎用配線 リ ソ ース は消費 さ れません。 ま た、 FPGA
の コ ン フ ィ ギ ュ レーシ ョ ン プ ロ セ ス で自動的にアサー ト さ れ る ため、FPGA は確実に既知の状態か
ら 起動 さ れ ま す。 コ ン フ ィ ギ ュ レ ーシ ョ ン時に、 フ リ ッ プ フ ロ ッ プは コ ン フ ィ ギ ュ レ ーシ ョ ン ク
ロ ッ ク に よ っ て有効にな り 、 その後ユーザー ク ロ ッ ク が供給 さ れ る ため、 コ ン フ ィ ギ ュ レーシ ョ ン
後はユーザー ク ロ ッ ク にかかわ る 主要な フ リ ッ プ フ ロ ッ プ ま たは ク ロ ッ ク 信号を有効にす る こ と
を推奨 し ます。
76
japan.xilinx.com
7 シ リ ーズ FPGA CLB ユーザー ガ イ ド
UG474 (v1.7) 2014 年 11 月 17 日
ス タ ッ ク ド シ リ コ ン イ ン タ ー コ ネ ク ト (SSI) テ ク ノ ロ ジ を使用するデバイ ス
STARTUPE2 プ リ ミ テ ィ ブ
STARTUPE2 プ リ ミ テ ィ ブは、 GSR お よ び GTS の信号の ソ ース を定義、 お よ び接続 し ます。 ユー
ザーは、 こ のプ リ ミ テ ィ ブに よ っ て、 こ れ ら の専用ネ ッ ト の ソ ー ス を定義で き ま す。 GSR お よ び
GTS は、 コ ン フ ィ ギ ュ レ ーシ ョ ン中は常にア ク テ ィ ブで、 STARTUPE2 プ リ ミ テ ィ ブで信号 と 接
続す る と 、 コ ン フ ィ ギ ュ レーシ ョ ン後の制御方法を指定で き ます。デフ ォ ル ト の場合、 コ ン フ ィ ギ ュ
レーシ ョ ン後、 ス タ ー ト ア ッ プ段階で選択 さ れた ク ロ ッ ク サ イ ク ルでは、 こ れ ら が無効にな り 、 デ
バ イ ス の フ リ ッ プ フ ロ ッ プお よ び I/O が有効にな り ます。 STARTUPE2 プ リ ミ テ ィ ブには、 特に コ
ン フ ィ ギ ュ レーシ ョ ン時に使用 さ れ る 信号がほかに も あ り ます。 詳細は、 『7 シ リ ーズ FPGA コ ン
フ ィ ギ ュ レーシ ョ ン ユーザー ガ イ ド 』 (UG470) を参照 し て く だ さ い。
イ ン タ ー コ ネ ク ト の最適化
イ ン タ ーコ ネ ク ト の遅延は、 デザ イ ンの特定の イ ンプ リ メ ン テーシ ョ ンや ロ ー ド に よ っ て異な り ま
す。 イ ン タ ー コ ネ ク ト の種類、 デバ イ ス内を伝搬する 距離、 通過する ス イ ッ チ マ ト リ ッ ク ス の数な
ど が全体の遅延を決定す る 要因にな り ま す。 タ イ ミ ン グの問題の多 く は、 ブ ロ ッ ク 遅延を確認 し 、
レベル数を低減す る か高速パ ス を使用す る こ と で得 ら れ る 効果を判断す る こ と で解決で き ます。 イ
ン タ ー コ ネ ク ト 遅延が長い場合は、 イ ンプ リ メ ン テーシ ョ ンのエ フ ォー ト レベルま たは反復回数を
増や し て性能を改善す る と 共に、 必要な タ イ ミ ン グが制約フ ァ イ ルで指定 さ れてい る こ と を確認 し
ます。
ク リ テ ィ カル パ ス を含むネ ッ ト 、 ま たは負荷が重いネ ッ ト については、 ほ と ん ど の場合、 ネ ッ ト の
ソ ース を複製す る こ と で改善 さ れ ます。 ス ラ イ ス のデ ュ アル 5 入力 LUT コ ン フ ィ ギ ュ レーシ ョ ン
を使用す る と 、 同一ス ラ イ ス内で ロ ジ ッ ク を簡単に複製で き 、 ソ ース フ ァ ン ク シ ョ ンの入力の余分
な負荷を最小にで き ます。 一方、 複数の ス ラ イ ス で ロ ジ ッ ク を複製す る と 、 ソ フ ト ウ ェ アで ソ ース
を個々に配置で き る よ う にな り ます。
フ ロ アプ ラ ンは、 ユーザー配置制約を指定す る プ ロ セ ス です。 こ れは、 自動配置配線の前後いずれ
で も 実行で き ますが、 ユーザー フ ロ アプ ラ ン を指定する 場合は、 必ず自動配置配線を先に実行す る
こ と を推奨 し ます。 ザ イ リ ン ク ス の イ ンプ リ メ ン テーシ ョ ン ツールでは、 配置がグ ラ フ ィ ッ ク 表示
さ れ ま す。 こ の表示に よ っ て、 設計者は幅広いデザ イ ンお よ び解析機能を用いて RTL コ ーデ ィ ン
グ、 合成、 イ ンプ リ メ ン テーシ ョ ン を選択で き ます。
ス タ ッ ク ド シ リ コ ン イ ン タ ーコ ネ ク ト (SSI) テ ク ノ ロジを使用するデバイ ス
『7 シ リ ーズ FPGA 概要』 (DS180) で説明 し た と お り 、 一部の Virtex-7 デバ イ ス は ス タ ッ ク ド シ リ
コ ン イ ン タ ー コ ネ ク ト (SSI) テ ク ノ ロ ジ を採用 し てい ます。こ れ ら のデバ イ ス は、SLL (Super Long
Line) と 呼ばれ る 追加 さ れた独自の イ ン タ ー コ ネ ク ト リ ソ ース を提供 し ます。 こ れ ら の特別な配線
リ ソ ース は、 数 も 豊富 (10,000 以上) で高速 (約 1ns) なため、 ほかの イ ン タ ーコ ネ ク ト リ ソ ース と
同様に扱 う こ と がで き ます。 SLL は、 図 6-3 に示す よ う に SLR (Super Logic Region) 間の接続を
提供 し ます。 複数の SLR を効果的に組み合わせ る こ と で、 ASMBL™ アーキ テ ク チ ャ のカ ラ ム の
高 さ が増 し 、 デバ イ ス の総容量が増加 し ます。 ソ フ ト ウ ェ アに よ っ て こ の コ ン フ ィ ギ ュ レーシ ョ ン
を最大限に活用す る 配置を実行 し た り 、 ユーザーが フ ロ アプ ラ ン を適用 し て、 SLR 内お よ び SLR
間の配置を制御で き ます。 キ ャ リ ー ロ ジ ッ ク のカ ス ケー ド 接続は SLR 内にのみ限定 さ れ、 SLL の
接続を通 じ て継続す る も のではあ り ません。 ブ ロ ッ ク RAM、 DSP、 お よ び DCI な ど のほかのカ ス
ケー ド 接続 も 同様です。 境界はフ ロ アプ ラ ン ツールで視覚的に表示 さ れ、 タ イ ミ ン グ レ ポー ト に
報告 さ れます。 Virtex-7 デバ イ ス別の SLR 数は、 『7 シ リ ーズ FPGA 概要』 に記載 さ れてい ます。
7 シ リ ーズ FPGA CLB ユーザー ガ イ ド
UG474 (v1.7) 2014 年 11 月 17 日
japan.xilinx.com
77
第 6 章 : 高度な使用法
X-Ref Target - Figure 6-3
Super Logic
Region (SLR)
Super Long
Line (SLL)
Super Logic
Region (SLR)
UG474_c6_03_090211
図 6-3 : ス タ ッ ク ド シ リ コ ン イ ン タ ー コ ネ ク ト テ ク ノ ロ ジ
SSI テ ク ノ ロ ジ を使用す る デバ イ ス を タ ーゲ ッ ト に し たデザ イ ンでは、 STARTUPE2 を 1 つだけ イ
ン ス タ ン シエー ト し ます。 GSR お よ び GTS 信号の 1 つの ソ ース が SLR 境界を越え てデバ イ ス の
すべてのエ レ メ ン ト に伝搬 さ れます。
SSI テ ク ノ ロ ジ を使用す る デバ イ ス の最適化は、 標準デバ イ ス と 同様に、 適切な設計手法や タ イ ミ
ン グ制約、 最良の イ ンプ リ メ ン テーシ ョ ン を自動的に探 し 出すオプシ ョ ン な ど を適用す る こ と で開
始で き ます。 こ れ ら のデバ イ ス の フ ロ アプ ラ ンには同 じ グ ラ フ ィ カル ツールが使用で き ます。
SSI テ ク ノ ロ ジ を使用す る デバ イ ス の詳細は、 次を参照 し て く だ さ い。
•
•
DS180 : 『7 シ リ ーズ FPGA 概要』
ス タ ッ ク ド シ リ コ ン イ ン タ ー コ ネ ク ト テ ク ノ ロ ジのページ
japan.xilinx.com/technology/roadmap/stacked-silicon-interconnect
•
78
WP380 : 『ザ イ リ ン ク ス の ス タ ッ ク ド シ リ コ ン イ ン タ ー コ ネ ク ト テ ク ノ ロ ジで飛躍的な
FPGA 容量、 帯域幅、 電力効率を実現』
japan.xilinx.com
7 シ リ ーズ FPGA CLB ユーザー ガ イ ド
UG474 (v1.7) 2014 年 11 月 17 日