7 シリーズ fpga コンフィギャラブル ロジック ブロック …...7 シリーズ fpga...
TRANSCRIPT
-
7 シリーズ FPGA コンフ ィギャラブル ロジック ブロック
ユーザー ガイド
UG474 (v1.7) 2014 年 11 月 17 日
本資料は表記のバージョンの英語版を翻訳したもので、内容に相違が生じる場合には原文を優先します。資料によっては英語版の更新に対応していないものがあります。日本語版は参考用としてご使用の上、最新情報につきましては、必ず最新英語版をご参照ください。
-
7 シリーズ FPGA CLB ユーザー ガイ ド japan.xilinx.com UG474 (v1.7) 2014 年 11 月 17 日
DISCLAIMERThe information disclosed to you hereunder (the “Materials”) is provided solely for the selection and use of Xilinx products.To themaximum extent permitted by applicable law:(1) Materials are made available "AS IS" and with all faults, Xilinx hereby DISCLAIMS ALLWARRANTIES AND CONDITIONS, EXPRESS, IMPLIED, OR STATUTORY, INCLUDING BUT NOT LIMITED TO WARRANTIESOF MERCHANTABILITY, NON-INFRINGEMENT, OR FITNESS FOR ANY PARTICULAR PURPOSE; and (2) Xilinx shall not beliable (whether in contract or tort, including negligence, or under any other theory of liability) for any loss or damage of any kind or naturerelated 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 ofany action brought by a third party) even if such damage or loss was reasonably foreseeable or Xilinx had been advised of the possibilityof the same.Xilinx assumes no obligation to correct any errors contained in the Materials or to notify you of updates to the Materials or toproduct specifications.You may not reproduce, modify, distribute, or publicly display the Materials without prior written consent.Certainproducts are subject to the terms and conditions of Xilinx’s limited warranty, please refer to Xilinx’s Terms of Sale which can be viewed athttp://www.xilinx.com/legal.htm#tos; IP cores may be subject to warranty and support terms contained in a license issued to you byXilinx.Xilinx products are not designed or intended to be fail-safe or for use in any application requiring fail-safe performance; you assumesole risk and liability for use of Xilinx products in such critical applications, please refer to Xilinx’s Terms of Sale which can be viewed athttp://www.xilinx.com/legal.htm#tos.Automotive Applications DisclaimerXILINX PRODUCTS ARE NOT DESIGNED OR INTENDED TO BE FAIL-SAFE, OR FOR USE IN ANY APPLICATION REQUIRINGFAIL-SAFE PERFORMANCE, SUCH AS APPLICATIONS RELATED TO:(I) THE DEPLOYMENT OF AIRBAGS, (II) CONTROL OFA VEHICLE, UNLESS THERE IS A FAIL-SAFE OR REDUNDANCY FEATURE (WHICH DOES NOT INCLUDE USE OFSOFTWARE IN THE XILINX DEVICE TO IMPLEMENT THE REDUNDANCY) AND A WARNING SIGNAL UPON FAILURE TOTHE OPERATOR, OR (III) USES THAT COULD LEAD TO DEATH OR PERSONAL INJURY.CUSTOMER ASSUMES THE SOLERISK 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 brandsincluded herein are trademarks of Xilinx in the United States and other countries.All other trademarks are the property of their respectiveowners.
この資料に関するフ ィードバッ クおよびリ ンクなどの問題につきましては、 [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」の最後の段落を修正。
mailto:[email protected]://www.xilinx.com/legal.htm#toshttp://www.xilinx.com/legal.htm#toshttp://japan.xilinx.com
-
UG474 (v1.7) 2014 年 11 月 17 日 japan.xilinx.com 7 シリーズ FPGA CLB ユーザー ガイド
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 デバイスの記述を追加。
日付 バージョ ン 内容
http://japan.xilinx.com
-
7 シリーズ FPGA CLB ユーザー ガイ ド japan.xilinx.com UG474 (v1.7) 2014 年 11 月 17 日
http://japan.xilinx.com
-
7 シリーズ FPGA CLB ユーザー ガイ ド japan.xilinx.com 5UG474 (v1.7) 2014 年 11 月 17 日
改訂履歴. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2このユーザー ガイドについて
内容 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7その他のリ ソース . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
第 1 章 : 概要CLB の概要 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 97 シ リーズ CLB の特徴 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10デバイス リ ソース . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10推奨デザイン フロー . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12ピン配置の計画 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
第 2 章 : 機能の詳細CLB の配置 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15スライスの説明 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18ルッ クアップ テーブル (LUT) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21ス ト レージ エレ メン ト . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21分散 RAM (SLICEM のみで使用可能) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23シフ ト レジスタ (SLICEM のみ) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34マルチプレクサー . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39キャ リー ロジッ ク . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
第 3 章 : デザイン入力デザインのチェッ ク リ ス ト . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47CLB リ ソースの使用法 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48プリ ミ ティブ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48
第 4 章 : アプリケーシ ョ ン分散 RAM のアプリ ケーシ ョ ン . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57シフ ト レジスタのアプリ ケーシ ョ ン . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57キャ リー ロジッ クのアプリ ケーシ ョ ン . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59
第 5 章 : タイ ミングCLB スライスの一般的なタイ ミ ング モデルとパラ メーター . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62CLB スライスのマルチプレクサーのタイ ミ ング モデルおよびパラ メーター . . . . . . . . . . . . . . . . 64CLB スライスのキャ リー チェーンのタイ ミ ング モデルおよびパラ メーター . . . . . . . . . . . . . . . . 65CLB スライス分散 RAM のタイ ミ ング モデルおよびパラ メーター (SLICEM のみ) . . . . . . . . . . 67CLB スライスの SRL シフ ト レジスタのタイ ミ ング モデルおよび
パラ メーター (SLICEM のみ) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70
目次
http://japan.xilinx.com
-
6 japan.xilinx.com 7 シリーズ FPGA CLB ユーザー ガイドUG474 (v1.7) 2014 年 11 月 17 日
第 6 章 : 高度な使用法ラ ッチ ファンクシ ョ ンのロジッ クへの転用 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75インターコネク ト リ ソース . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 76スタ ッ ク ド シ リ コン インターコネク ト (SSI) テク ノ ロジを使用するデバイス . . . . . . . . . . . . . . . 77
http://japan.xilinx.com
-
7 シリーズ FPGA CLB ユーザー ガイ ド japan.xilinx.com 7UG474 (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®-6FPGA ファ ミ リから新し くなった点を紹介し、 デザイン移行時の検討事項を解説します。
• 「デバイス リ ソース」 では、 デバイスあたりの リ ソース数や、 さまざまな 7 シ リーズ ファミ リ間に共通する項目を示します。
• 「推奨デザイン フロー」 には、 CLB リ ソースの基本的な使用法と重要な検討課題が列挙されています。
• 「ピン配置の計画」 では、 CLB がデザインのピン配置に影響を及ぼす可能性がある側面について検討します。
• 第 2 章 「機能の詳細」 では、 各 CLB ファンクシ ョ ンの具体的なアーキテクチャを示します。
• 第 3 章 「デザイン入力」 では、 デザイン入力のガイ ド ラ インと、 インスタンシエーシ ョ ン用のプリ ミ ティブを紹介します。
• 第 4 章 「アプ リ ケーシ ョ ン」 では、 よ り大規模なアプリ ケーシ ョ ンに対する CLB リ ソースの適用例を示します。
http://japan.xilinx.com/http://japan.xilinx.comhttp://japan.xilinx.com/about/feedback.html?docType=User_Guides&docId=UG474&Title=7%20%26%2312471%3B%26%2312522%3B%26%2312540%3B%26%2312474%3B%20FPGA%20%26%2312467%3B%26%2312531%3B%26%2312501%3B%26%2312451%3B%26%2312462%3B%26%2312515%3B%26%2312521%3B%26%2312502%3B%26%2312523%3B%20%26%2312525%3B%26%2312472%3B%26%2312483%3B%26%2312463%3B%20%26%2312502%3B%26%2312525%3B%26%2312483%3B%26%2312463%3B%20%26%2312518%3B%26%2312540%3B%26%2312470%3B%26%2312540%3B%20%26%2312460%3B%26%2312452%3B%26%2312489%3B&releaseVersion=1.7&docPage=7
-
8 japan.xilinx.com 7 シリーズ FPGA CLB ユーザー ガイドUG474 (v1.7) 2014 年 11 月 17 日
このユーザー ガイドについて
• 第 5 章 「タイ ミ ング」 では、 タイ ミ ング モデルと記載されている CLB タイ ミ ング仕様の定義を説明します。
• 第 6 章 「高度な使用法」 では、 7 シ リーズ CLB の高度な機能について説明します。
その他のリソース
その他の資料は、 ザイ リ ンクスのウェブサイ トから入手できます。
japan.xilinx.com/support/documentation/index
シ リ コンやソフ ト ウェア、 IP に関するアンサー データベースを検索したり、 テクニカル サポートのウェブケースを開く場合は、 次のウェブサイ トにアクセスして ください。
japan.xilinx.com/support
http://japan.xilinx.com/support/documentation/index.htmhttp://japan.xilinx.com/supporthttp://japan.xilinx.comhttp://japan.xilinx.com/about/feedback.html?docType=User_Guides&docId=UG474&Title=7%20%26%2312471%3B%26%2312522%3B%26%2312540%3B%26%2312474%3B%20FPGA%20%26%2312467%3B%26%2312531%3B%26%2312501%3B%26%2312451%3B%26%2312462%3B%26%2312515%3B%26%2312521%3B%26%2312502%3B%26%2312523%3B%20%26%2312525%3B%26%2312472%3B%26%2312483%3B%26%2312463%3B%20%26%2312502%3B%26%2312525%3B%26%2312483%3B%26%2312463%3B%20%26%2312518%3B%26%2312540%3B%26%2312470%3B%26%2312540%3B%20%26%2312460%3B%26%2312452%3B%26%2312489%3B&releaseVersion=1.7&docPage=8
-
7 シリーズ FPGA CLB ユーザー ガイ ド japan.xilinx.com 9UG474 (v1.7) 2014 年 11 月 17 日
第 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 内のスライス配置
SwitchMatrix
Slice(1)
COUTCOUT
CINCIN
Slice(0)
CLB
UG474_c1_01_071910
http://japan.xilinx.comhttp://japan.xilinx.com/about/feedback.html?docType=User_Guides&docId=UG474&Title=7%20%26%2312471%3B%26%2312522%3B%26%2312540%3B%26%2312474%3B%20FPGA%20%26%2312467%3B%26%2312531%3B%26%2312501%3B%26%2312451%3B%26%2312462%3B%26%2312515%3B%26%2312521%3B%26%2312502%3B%26%2312523%3B%20%26%2312525%3B%26%2312472%3B%26%2312483%3B%26%2312463%3B%20%26%2312502%3B%26%2312525%3B%26%2312483%3B%26%2312463%3B%20%26%2312518%3B%26%2312540%3B%26%2312470%3B%26%2312540%3B%20%26%2312460%3B%26%2312452%3B%26%2312489%3B&releaseVersion=1.7&docPage=9
-
10 japan.xilinx.com 7 シリーズ FPGA CLB ユーザー ガイドUG474 (v1.7) 2014 年 11 月 17 日
第 1 章 : 概要
全スライスの約 3 分の 2 は SLICEL ロジッ ク スライスで、残りが SLICEM です。SLICEM の LUTは、 64 ビッ トの分散 RAM と して、 または 32 ビッ トのシフ ト レジスタ (SRL32) か 2 つの SRL16と して使用できます。 最近の合成ツールでは、 このよ うな高効率のロジッ ク、 演算、 およびメモ リ
機能を活かした合成が実行されます。 さ らに、 経験の豊富な設計者はこれらをインスタンシエート
するこ と もできます。
7 シリーズ CLB の特徴7 シ リーズ デバイスの CLB は、Virtex®-6 FPGA ファ ミ リの CLB と同一です。 また、 Spartan®-6FPGA ファ ミ リの 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
7A75T 11,800(2) 8,232 3,568 47,200 892 446 94,400
http://japan.xilinx.com/cgi-bin/docs/ndoc?v=7%20Series;t=data+sheethttp://japan.xilinx.comhttp://japan.xilinx.com/about/feedback.html?docType=User_Guides&docId=UG474&Title=7%20%26%2312471%3B%26%2312522%3B%26%2312540%3B%26%2312474%3B%20FPGA%20%26%2312467%3B%26%2312531%3B%26%2312501%3B%26%2312451%3B%26%2312462%3B%26%2312515%3B%26%2312521%3B%26%2312502%3B%26%2312523%3B%20%26%2312525%3B%26%2312472%3B%26%2312483%3B%26%2312463%3B%20%26%2312502%3B%26%2312525%3B%26%2312483%3B%26%2312463%3B%20%26%2312518%3B%26%2312540%3B%26%2312470%3B%26%2312540%3B%20%26%2312460%3B%26%2312452%3B%26%2312489%3B&releaseVersion=1.7&docPage=10
-
7 シリーズ FPGA CLB ユーザー ガイ ド japan.xilinx.com 11UG474 (v1.7) 2014 年 11 月 17 日
デバイス リソース
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
http://japan.xilinx.comhttp://japan.xilinx.com/about/feedback.html?docType=User_Guides&docId=UG474&Title=7%20%26%2312471%3B%26%2312522%3B%26%2312540%3B%26%2312474%3B%20FPGA%20%26%2312467%3B%26%2312531%3B%26%2312501%3B%26%2312451%3B%26%2312462%3B%26%2312515%3B%26%2312521%3B%26%2312502%3B%26%2312523%3B%20%26%2312525%3B%26%2312472%3B%26%2312483%3B%26%2312463%3B%20%26%2312502%3B%26%2312525%3B%26%2312483%3B%26%2312463%3B%20%26%2312518%3B%26%2312540%3B%26%2312470%3B%26%2312540%3B%20%26%2312460%3B%26%2312452%3B%26%2312489%3B&releaseVersion=1.7&docPage=11
-
12 japan.xilinx.com 7 シリーズ FPGA CLB ユーザー ガイドUG474 (v1.7) 2014 年 11 月 17 日
第 1 章 : 概要
推奨デザイン フロー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)フリ ップ
フロップ
http://japan.xilinx.comhttp://japan.xilinx.com/about/feedback.html?docType=User_Guides&docId=UG474&Title=7%20%26%2312471%3B%26%2312522%3B%26%2312540%3B%26%2312474%3B%20FPGA%20%26%2312467%3B%26%2312531%3B%26%2312501%3B%26%2312451%3B%26%2312462%3B%26%2312515%3B%26%2312521%3B%26%2312502%3B%26%2312523%3B%20%26%2312525%3B%26%2312472%3B%26%2312483%3B%26%2312463%3B%20%26%2312502%3B%26%2312525%3B%26%2312483%3B%26%2312463%3B%20%26%2312518%3B%26%2312540%3B%26%2312470%3B%26%2312540%3B%20%26%2312460%3B%26%2312452%3B%26%2312489%3B&releaseVersion=1.7&docPage=12
-
7 シリーズ FPGA CLB ユーザー ガイ ド japan.xilinx.com 13UG474 (v1.7) 2014 年 11 月 17 日
ピン配置の計画
キャ リー ロジッ クはカラムに沿って垂直上方向にカスケード接続するため、 多入力演算バスは I/Oを含むほかのロジッ ク と直交する方向で駆動する可能性があ り ます。
ほとんどの 7 シ リーズ デバイスは、ASMBL アーキテクチャの分散 I/O の効果を最大限に活かすことができるフ リ ップチップ パッケージで提供されます。一方、 よ り小型のデバイスは低コス トのワイヤ ボンディング パッケージで提供されます。 これらの小型パッケージでは、 一部のピンが特性上ほかのピンに比べて I/O や特別な リ ソースに近接しているため、 内部ロジッ クの定義が完了してからピン配置を決定する必要があ り ます。
http://japan.xilinx.comhttp://japan.xilinx.com/about/feedback.html?docType=User_Guides&docId=UG474&Title=7%20%26%2312471%3B%26%2312522%3B%26%2312540%3B%26%2312474%3B%20FPGA%20%26%2312467%3B%26%2312531%3B%26%2312501%3B%26%2312451%3B%26%2312462%3B%26%2312515%3B%26%2312521%3B%26%2312502%3B%26%2312523%3B%20%26%2312525%3B%26%2312472%3B%26%2312483%3B%26%2312463%3B%20%26%2312502%3B%26%2312525%3B%26%2312483%3B%26%2312463%3B%20%26%2312518%3B%26%2312540%3B%26%2312470%3B%26%2312540%3B%20%26%2312460%3B%26%2312452%3B%26%2312489%3B&releaseVersion=1.7&docPage=13
-
14 japan.xilinx.com 7 シリーズ FPGA CLB ユーザー ガイドUG474 (v1.7) 2014 年 11 月 17 日
第 1 章 : 概要
http://japan.xilinx.comhttp://japan.xilinx.com/about/feedback.html?docType=User_Guides&docId=UG474&Title=7%20%26%2312471%3B%26%2312522%3B%26%2312540%3B%26%2312474%3B%20FPGA%20%26%2312467%3B%26%2312531%3B%26%2312501%3B%26%2312451%3B%26%2312462%3B%26%2312515%3B%26%2312521%3B%26%2312502%3B%26%2312523%3B%20%26%2312525%3B%26%2312472%3B%26%2312483%3B%26%2312463%3B%20%26%2312502%3B%26%2312525%3B%26%2312483%3B%26%2312463%3B%20%26%2312518%3B%26%2312540%3B%26%2312470%3B%26%2312540%3B%20%26%2312460%3B%26%2312452%3B%26%2312489%3B&releaseVersion=1.7&docPage=14
-
7 シリーズ FPGA CLB ユーザー ガイ ド japan.xilinx.com 15UG474 (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 に、さまざまなタイプのカラムベース リ ソースから成る概略ブロ ッ ク図を示します。
http://japan.xilinx.comhttp://japan.xilinx.com/about/feedback.html?docType=User_Guides&docId=UG474&Title=7%20%26%2312471%3B%26%2312522%3B%26%2312540%3B%26%2312474%3B%20FPGA%20%26%2312467%3B%26%2312531%3B%26%2312501%3B%26%2312451%3B%26%2312462%3B%26%2312515%3B%26%2312521%3B%26%2312502%3B%26%2312523%3B%20%26%2312525%3B%26%2312472%3B%26%2312483%3B%26%2312463%3B%20%26%2312502%3B%26%2312525%3B%26%2312483%3B%26%2312463%3B%20%26%2312518%3B%26%2312540%3B%26%2312470%3B%26%2312540%3B%20%26%2312460%3B%26%2312452%3B%26%2312489%3B&releaseVersion=1.7&docPage=15
-
16 japan.xilinx.com 7 シリーズ FPGA CLB ユーザー ガイドUG474 (v1.7) 2014 年 11 月 17 日
第 2 章 : 機能の詳細
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 アーキテクチャ
ColumnBased
ASMBLArchitecture
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
http://japan.xilinx.comhttp://japan.xilinx.com/about/feedback.html?docType=User_Guides&docId=UG474&Title=7%20%26%2312471%3B%26%2312522%3B%26%2312540%3B%26%2312474%3B%20FPGA%20%26%2312467%3B%26%2312531%3B%26%2312501%3B%26%2312451%3B%26%2312462%3B%26%2312515%3B%26%2312521%3B%26%2312502%3B%26%2312523%3B%20%26%2312525%3B%26%2312472%3B%26%2312483%3B%26%2312463%3B%20%26%2312502%3B%26%2312525%3B%26%2312483%3B%26%2312463%3B%20%26%2312518%3B%26%2312540%3B%26%2312470%3B%26%2312540%3B%20%26%2312460%3B%26%2312452%3B%26%2312489%3B&releaseVersion=1.7&docPage=16
-
7 シリーズ FPGA CLB ユーザー ガイ ド japan.xilinx.com 17UG474 (v1.7) 2014 年 11 月 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 およびスライス間の行とカラムの関係
Slice1X1Y1
COUTCOUT
CINCIN
Slice0X0Y1
CLB
UG474_c2_01_092210
Slice1X1Y0
COUTCOUT
Slice0X0Y0
CLB
Slice1X3Y1
COUTCOUT
CINCIN
Slice0X2Y1
CLB
Slice1X3Y0
COUTCOUT
Slice0X2Y0
CLB
表 2-1 : 1 つの CLB に含まれるロジック リソース
スライス
数LUT フリ ップ
フロップ
演算および
キャリー チェーン 分散 RAM(1) シフ ト レジスタ (1)
2 8 16 2 256 ビッ ト 128 ビッ ト
注記 :
1. SLICEM にのみ該当します。 SLICEL には分散 RAM またはシフ ト レジスタはあ り ません。
http://japan.xilinx.comhttp://japan.xilinx.com/about/feedback.html?docType=User_Guides&docId=UG474&Title=7%20%26%2312471%3B%26%2312522%3B%26%2312540%3B%26%2312474%3B%20FPGA%20%26%2312467%3B%26%2312531%3B%26%2312501%3B%26%2312451%3B%26%2312462%3B%26%2312515%3B%26%2312521%3B%26%2312502%3B%26%2312523%3B%20%26%2312525%3B%26%2312472%3B%26%2312483%3B%26%2312463%3B%20%26%2312502%3B%26%2312525%3B%26%2312483%3B%26%2312463%3B%20%26%2312518%3B%26%2312540%3B%26%2312470%3B%26%2312540%3B%20%26%2312460%3B%26%2312452%3B%26%2312489%3B&releaseVersion=1.7&docPage=17
-
18 japan.xilinx.com 7 シリーズ FPGA CLB ユーザー ガイドUG474 (v1.7) 2014 年 11 月 17 日
第 2 章 : 機能の詳細
スライスの説明
すべてのスライスには、 次が含まれます。
• 4 つのロジッ ク ファンクシ ョ ン ジェネレーター (またはルッ クアップ テーブル)
• 8 つのス ト レージ エレ メン ト
• 多入力機能マルチプレクサー
• キャ リー ロジッ ク
スラ イスでは、 これらのエレ メン ト を使用してロジッ ク ファンクシ ョ ン、 演算機能、 および ROM機能を提供します。 さ らに、 特定スライスは 2 つのファンクシ ョ ン (分散 RAM を使用したデータ格納および 32 ビッ ト レジスタを使用したデータ シフ ト ) をサポート します。 これらの追加ファンクシ ョ ンをサポー ト する特定ス ラ イ スを SLICEM、 その他のス ラ イ スを SLICEL と呼びます。SLICEM のエレ メン トおよび接続を図 2-3 に、SLICEL のエレ メン トおよび接続を図 2-4 に示します。 各 CLB には SLICEL が 2 つ、 または SLICEL と SLICEM が各 1 つ含まれます。
http://japan.xilinx.comhttp://japan.xilinx.com/about/feedback.html?docType=User_Guides&docId=UG474&Title=7%20%26%2312471%3B%26%2312522%3B%26%2312540%3B%26%2312474%3B%20FPGA%20%26%2312467%3B%26%2312531%3B%26%2312501%3B%26%2312451%3B%26%2312462%3B%26%2312515%3B%26%2312521%3B%26%2312502%3B%26%2312523%3B%20%26%2312525%3B%26%2312472%3B%26%2312483%3B%26%2312463%3B%20%26%2312502%3B%26%2312525%3B%26%2312483%3B%26%2312463%3B%20%26%2312518%3B%26%2312540%3B%26%2312470%3B%26%2312540%3B%20%26%2312460%3B%26%2312452%3B%26%2312489%3B&releaseVersion=1.7&docPage=18
-
7 シリーズ FPGA CLB ユーザー ガイ ド japan.xilinx.com 19UG474 (v1.7) 2014 年 11 月 17 日
スライスの説明
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
MC31WEN
CK
DI1
MC31WEN
CK
DI1
MC31WEN
CK
DI1
MC31WEN
CK
UG474_c2_02_110510
DXDMUX
D
DQ
C
CQ
CMUX
B
BQ
BMUX
A
AQ
AMUX
Reset Type
D
FF/LATINIT1INIT0SRHISRLO
SR
CECK
FF/LATINIT1INIT0SRHISRLO
FF/LATINIT1INIT0SRHISRLO
FF/LATINIT1INIT0SRHISRLO
D
SR
CECK
D
SR
CECK
D
SR
Q
CECK
CIN
0/1
WENWE
CK
Sync/Async
FF/LAT
A6:A1
O6O5
C6:1
CX
D6:1
DI
A6:A1
O6O5
B6:1
BX
A6:A1W6:W1
W6:W1
W6:W1
W6:W1
O6O5
A6:1
AX
SRCE
CLK
CEQ
CK SR
Q
Q
Q
SRHISRLOINIT1INIT0
D
CEQ
CK SR
SRHISRLOINIT1INIT0
D
CE Q
CK SR
SRHISRLOINIT1INIT0
D
CE Q
CK SR
SRHISRLOINIT1INIT0
DI2
DI2
DI2
CI
BI
AI
http://japan.xilinx.comhttp://japan.xilinx.com/about/feedback.html?docType=User_Guides&docId=UG474&Title=7%20%26%2312471%3B%26%2312522%3B%26%2312540%3B%26%2312474%3B%20FPGA%20%26%2312467%3B%26%2312531%3B%26%2312501%3B%26%2312451%3B%26%2312462%3B%26%2312515%3B%26%2312521%3B%26%2312502%3B%26%2312523%3B%20%26%2312525%3B%26%2312472%3B%26%2312483%3B%26%2312463%3B%20%26%2312502%3B%26%2312525%3B%26%2312483%3B%26%2312463%3B%20%26%2312518%3B%26%2312540%3B%26%2312470%3B%26%2312540%3B%20%26%2312460%3B%26%2312452%3B%26%2312489%3B&releaseVersion=1.7&docPage=19
-
20 japan.xilinx.com 7 シリーズ FPGA CLB ユーザー ガイドUG474 (v1.7) 2014 年 11 月 17 日
第 2 章 : 機能の詳細
X-Ref Target - Figure 2-4
図 2-4 : SLICEL の図
A6:A1
DCOUT
D
DX
C
CX
B
BX
A
AX
O6O5
UG474_c2_03_101210
DXDMUX
D
DQ
C
CQ
CMUX
B
BQ
BMUX
A
AQ
AMUX
Reset Type
D
FF/LATINIT1INIT0SRHISRLO
SR
CECK
FF/LATINIT1INIT0SRHISRLO
FF/LATINIT1INIT0SRHISRLO
FF/LATINIT1INIT0SRHISRLO
D
SR
CECK
D
SR
CECK
D
SR
Q
CECK
CIN
0/1
Sync/Async
FF/LAT
A6:A1
O6O5
C6:1
CX
D6:1
A6:A1
O6O5
B6:1
BX
A6:A1
O6O5
A6:1
AX
SRCE
CLK
CEQ
CK SR
Q
Q
Q
SRHISRLOINIT1INIT0
D
CEQ
CK SR
SRHISRLOINIT1INIT0
D
CE Q
CK SR
SRHISRLOINIT1INIT0
D
CE Q
CK SR
SRHISRLOINIT1INIT0
http://japan.xilinx.comhttp://japan.xilinx.com/about/feedback.html?docType=User_Guides&docId=UG474&Title=7%20%26%2312471%3B%26%2312522%3B%26%2312540%3B%26%2312474%3B%20FPGA%20%26%2312467%3B%26%2312531%3B%26%2312501%3B%26%2312451%3B%26%2312462%3B%26%2312515%3B%26%2312521%3B%26%2312502%3B%26%2312523%3B%20%26%2312525%3B%26%2312472%3B%26%2312483%3B%26%2312463%3B%20%26%2312502%3B%26%2312525%3B%26%2312483%3B%26%2312463%3B%20%26%2312518%3B%26%2312540%3B%26%2312470%3B%26%2312540%3B%20%26%2312460%3B%26%2312452%3B%26%2312489%3B&releaseVersion=1.7&docPage=20
-
7 シリーズ FPGA CLB ユーザー ガイ ド japan.xilinx.com 21UG474 (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 出力で直接駆動するか、 あ
http://japan.xilinx.comhttp://japan.xilinx.com/about/feedback.html?docType=User_Guides&docId=UG474&Title=7%20%26%2312471%3B%26%2312522%3B%26%2312540%3B%26%2312474%3B%20FPGA%20%26%2312467%3B%26%2312531%3B%26%2312501%3B%26%2312451%3B%26%2312462%3B%26%2312515%3B%26%2312521%3B%26%2312502%3B%26%2312523%3B%20%26%2312525%3B%26%2312472%3B%26%2312483%3B%26%2312463%3B%20%26%2312502%3B%26%2312525%3B%26%2312483%3B%26%2312463%3B%20%26%2312518%3B%26%2312540%3B%26%2312470%3B%26%2312540%3B%20%26%2312460%3B%26%2312452%3B%26%2312489%3B&releaseVersion=1.7&docPage=21
-
22 japan.xilinx.com 7 シリーズ FPGA CLB ユーザー ガイドUG474 (v1.7) 2014 年 11 月 17 日
第 2 章 : 機能の詳細
るいは 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
FFLATCHINIT1INIT0SRHIGHSRLOWSR
DFF/LATCHLUT D Output
LUT C Output
CECK
D
FFLATCHINIT1INIT0SRHIGHSRLOWSR
CECK
D
FFLATCHINIT1INIT0SRHIGHSRLOWSR
CECK
D
FFLATCHINIT1INIT0SRHIGHSRLOWSR
Q
CECK
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
DFFLUT D O5 Output
LUT C O5 Output
CECK
INIT1INIT0SRHIGHSRLOW
INIT1INIT0SRHIGHSRLOW
INIT1INIT0SRHIGHSRLOW
INIT1INIT0SRHIGHSRLOW
D
SR
CECK
D
SR
CECK
D
SR
Q
CECK
Q
Q
Q
SR
LUT B O5 Output
LUT A O5 Output AFF
BFF
CFF
CLK
Reset Type
Sync
Async
http://japan.xilinx.comhttp://japan.xilinx.com/about/feedback.html?docType=User_Guides&docId=UG474&Title=7%20%26%2312471%3B%26%2312522%3B%26%2312540%3B%26%2312474%3B%20FPGA%20%26%2312467%3B%26%2312531%3B%26%2312501%3B%26%2312451%3B%26%2312462%3B%26%2312515%3B%26%2312521%3B%26%2312502%3B%26%2312523%3B%20%26%2312525%3B%26%2312472%3B%26%2312483%3B%26%2312463%3B%20%26%2312502%3B%26%2312525%3B%26%2312483%3B%26%2312463%3B%20%26%2312518%3B%26%2312540%3B%26%2312470%3B%26%2312540%3B%20%26%2312460%3B%26%2312452%3B%26%2312489%3B&releaseVersion=1.7&docPage=22
-
7 シリーズ FPGA CLB ユーザー ガイ ド japan.xilinx.com 23UG474 (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 参照)。
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 (デフォルト ) 00 SRHIGH ロジッ ク レベル変化なし1 SRHIGH 1
http://japan.xilinx.comhttp://japan.xilinx.com/about/feedback.html?docType=User_Guides&docId=UG474&Title=7%20%26%2312471%3B%26%2312522%3B%26%2312540%3B%26%2312474%3B%20FPGA%20%26%2312467%3B%26%2312531%3B%26%2312501%3B%26%2312451%3B%26%2312462%3B%26%2312515%3B%26%2312521%3B%26%2312502%3B%26%2312523%3B%20%26%2312525%3B%26%2312472%3B%26%2312483%3B%26%2312463%3B%20%26%2312502%3B%26%2312525%3B%26%2312483%3B%26%2312463%3B%20%26%2312518%3B%26%2312540%3B%26%2312470%3B%26%2312540%3B%20%26%2312460%3B%26%2312452%3B%26%2312489%3B&releaseVersion=1.7&docPage=23
-
24 japan.xilinx.com 7 シリーズ FPGA CLB ユーザー ガイドUG474 (v1.7) 2014 年 11 月 17 日
第 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) を参照してください。
分散 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
japan.xilinx.com/cgi-bin/docs/rdoc?v=latest+vivado;d=ug953-vivado-7series-libraries.pdfhttp://japan.xilinx.comhttp://japan.xilinx.com/about/feedback.html?docType=User_Guides&docId=UG474&Title=7%20%26%2312471%3B%26%2312522%3B%26%2312540%3B%26%2312474%3B%20FPGA%20%26%2312467%3B%26%2312531%3B%26%2312501%3B%26%2312451%3B%26%2312462%3B%26%2312515%3B%26%2312521%3B%26%2312502%3B%26%2312523%3B%20%26%2312525%3B%26%2312472%3B%26%2312483%3B%26%2312463%3B%20%26%2312502%3B%26%2312525%3B%26%2312483%3B%26%2312463%3B%20%26%2312518%3B%26%2312540%3B%26%2312470%3B%26%2312540%3B%20%26%2312460%3B%26%2312452%3B%26%2312489%3B&releaseVersion=1.7&docPage=24
-
7 シリーズ FPGA CLB ユーザー ガイ ド japan.xilinx.com 25UG474 (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 を独立させます。
http://japan.xilinx.comhttp://japan.xilinx.com/about/feedback.html?docType=User_Guides&docId=UG474&Title=7%20%26%2312471%3B%26%2312522%3B%26%2312540%3B%26%2312474%3B%20FPGA%20%26%2312467%3B%26%2312531%3B%26%2312501%3B%26%2312451%3B%26%2312462%3B%26%2312515%3B%26%2312521%3B%26%2312502%3B%26%2312523%3B%20%26%2312525%3B%26%2312472%3B%26%2312483%3B%26%2312463%3B%20%26%2312502%3B%26%2312525%3B%26%2312483%3B%26%2312463%3B%20%26%2312518%3B%26%2312540%3B%26%2312470%3B%26%2312540%3B%20%26%2312460%3B%26%2312452%3B%26%2312489%3B&releaseVersion=1.7&docPage=25
-
26 japan.xilinx.com 7 シリーズ FPGA CLB ユーザー ガイドUG474 (v1.7) 2014 年 11 月 17 日
第 2 章 : 機能の詳細
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]CLKWE
O6
O5
DI1DI2
5
5
DPRAM32
A[6:1]WA[6:1]CLKWE
O6
DI1DI2
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]CLKWE
O6
DI1
5
5
DPRAM32
A[6:1]WA[6:1]CLKWE
O6
O5
O5
O5
http://japan.xilinx.comhttp://japan.xilinx.com/about/feedback.html?docType=User_Guides&docId=UG474&Title=7%20%26%2312471%3B%26%2312522%3B%26%2312540%3B%26%2312474%3B%20FPGA%20%26%2312467%3B%26%2312531%3B%26%2312501%3B%26%2312451%3B%26%2312462%3B%26%2312515%3B%26%2312521%3B%26%2312502%3B%26%2312523%3B%20%26%2312525%3B%26%2312472%3B%26%2312483%3B%26%2312463%3B%20%26%2312502%3B%26%2312525%3B%26%2312483%3B%26%2312463%3B%20%26%2312518%3B%26%2312540%3B%26%2312470%3B%26%2312540%3B%20%26%2312460%3B%26%2312452%3B%26%2312489%3B&releaseVersion=1.7&docPage=26
-
7 シリーズ FPGA CLB ユーザー ガイ ド japan.xilinx.com 27UG474 (v1.7) 2014 年 11 月 17 日
分散 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
unusedunused
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]CLKWE
DI1DI2
5
5
DPRAM32
A[6:1]WA[6:1]CLKWE
O6
DI1DI2
DI2
B[5:1]
C[5:1]
D[5:1]
A[5:1]
5
5
DPRAM32
A[6:1]WA[6:1]CLKWE
O6
DI1
5
5
DPRAM32
A[6:1]WA[6:1]CLKWE
O6
O5
O5
O5
http://japan.xilinx.comhttp://japan.xilinx.com/about/feedback.html?docType=User_Guides&docId=UG474&Title=7%20%26%2312471%3B%26%2312522%3B%26%2312540%3B%26%2312474%3B%20FPGA%20%26%2312467%3B%26%2312531%3B%26%2312501%3B%26%2312451%3B%26%2312462%3B%26%2312515%3B%26%2312521%3B%26%2312502%3B%26%2312523%3B%20%26%2312525%3B%26%2312472%3B%26%2312483%3B%26%2312463%3B%20%26%2312502%3B%26%2312525%3B%26%2312483%3B%26%2312463%3B%20%26%2312518%3B%26%2312540%3B%26%2312470%3B%26%2312540%3B%20%26%2312460%3B%26%2312452%3B%26%2312489%3B&releaseVersion=1.7&docPage=27
-
28 japan.xilinx.com 7 シリーズ FPGA CLB ユーザー ガイドUG474 (v1.7) 2014 年 11 月 17 日
第 2 章 : 機能の詳細
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
RegisteredOutput
(Optional)
DI1
D Q
(DI)D
A[5:0]
WCLKWE
(D[6:1])
(CLK)
(WE/CE)
6
SPRAM64
RAM64X1S
A[6:1]WA[6:1]CLKWE
O6O
6
UG474_c2_08_101210
DI1(DI)
D
A[5:0]
WCLKWE
(D[6:1])
(CLK)
(WE/CE)
6
6
DPRAM64
RAM64X1D
A[6:1]WA[6:1]CLKWE
O6
DI1
DPRA[5:0](C[6:1]) 6
6
DPRAM64
A[6:1]WA[6:1]CLKWE
O6
RegisteredOutput
(Optional)
D Q
SPO
RegisteredOutput
(Optional)
D Q
DPO
http://japan.xilinx.comhttp://japan.xilinx.com/about/feedback.html?docType=User_Guides&docId=UG474&Title=7%20%26%2312471%3B%26%2312522%3B%26%2312540%3B%26%2312474%3B%20FPGA%20%26%2312467%3B%26%2312531%3B%26%2312501%3B%26%2312451%3B%26%2312462%3B%26%2312515%3B%26%2312521%3B%26%2312502%3B%26%2312523%3B%20%26%2312525%3B%26%2312472%3B%26%2312483%3B%26%2312463%3B%20%26%2312502%3B%26%2312525%3B%26%2312483%3B%26%2312463%3B%20%26%2312518%3B%26%2312540%3B%26%2312470%3B%26%2312540%3B%20%26%2312460%3B%26%2312452%3B%26%2312489%3B&releaseVersion=1.7&docPage=28
-
7 シリーズ FPGA CLB ユーザー ガイ ド japan.xilinx.com 29UG474 (v1.7) 2014 年 11 月 17 日
分散 RAM (SLICEM のみで使用可能)
X-Ref Target - Figure 2-10
図 2-10 : 64x1 クワッ ド ポートの分散 RAM (RAM64M)
UG474_c2_09_070914
DI1DID
ADDRD
ADDRC
ADDRB
ADDRA
WCLK
WE
(CLK)
(WE)
DPRAM64
RAM64M
A[6:1]WA[6:1]CLKWE
O6
DI1
DPRAM64
A[6:1]WA[6:1]CLKWE
O6
DI1
(B[6:1])
(C[6:1])
(D[6:1])
(DI)
(A[6:1])
DPRAM64
A[6:1]WA[6:1]CLKWE
O6
DI1
DPRAM64
A[6:1]WA[6:1]CLKWE
O6
RegisteredOutput
DOD
DOC
DOB
DOA
(Optional)
D Q
RegisteredOutput
(Optional)
D Q
RegisteredOutput
(Optional)
D Q
RegisteredOutput
(Optional)
D Q
http://japan.xilinx.comhttp://japan.xilinx.com/about/feedback.html?docType=User_Guides&docId=UG474&Title=7%20%26%2312471%3B%26%2312522%3B%26%2312540%3B%26%2312474%3B%20FPGA%20%26%2312467%3B%26%2312531%3B%26%2312501%3B%26%2312451%3B%26%2312462%3B%26%2312515%3B%26%2312521%3B%26%2312502%3B%26%2312523%3B%20%26%2312525%3B%26%2312472%3B%26%2312483%3B%26%2312463%3B%20%26%2312502%3B%26%2312525%3B%26%2312483%3B%26%2312463%3B%20%26%2312518%3B%26%2312540%3B%26%2312470%3B%26%2312540%3B%20%26%2312460%3B%26%2312452%3B%26%2312489%3B&releaseVersion=1.7&docPage=29
-
30 japan.xilinx.com 7 シリーズ FPGA CLB ユーザー ガイドUG474 (v1.7) 2014 年 11 月 17 日
第 2 章 : 機能の詳細
ワード数が 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
unusedunused
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]CLKWE
DI1DI2
6
6
DPRAM64
A[6:1]WA[6:1]CLKWE
O6
DI1DI2
DI2
B[6:1]
C[6:1]
D[6:1]
A[6:1]
6
6
DPRAM64
A[6:1]WA[6:1]CLKWE
O6
DI1
6
6
DPRAM64
A[6:1]WA[6:1]CLKWE
O6
O5
O5
O5
http://japan.xilinx.comhttp://japan.xilinx.com/about/feedback.html?docType=User_Guides&docId=UG474&Title=7%20%26%2312471%3B%26%2312522%3B%26%2312540%3B%26%2312474%3B%20FPGA%20%26%2312467%3B%26%2312531%3B%26%2312501%3B%26%2312451%3B%26%2312462%3B%26%2312515%3B%26%2312521%3B%26%2312502%3B%26%2312523%3B%20%26%2312525%3B%26%2312472%3B%26%2312483%3B%26%2312463%3B%20%26%2312502%3B%26%2312525%3B%26%2312483%3B%26%2312463%3B%20%26%2312518%3B%26%2312540%3B%26%2312470%3B%26%2312540%3B%20%26%2312460%3B%26%2312452%3B%26%2312489%3B&releaseVersion=1.7&docPage=30
-
7 シリーズ FPGA CLB ユーザー ガイ ド japan.xilinx.com 31UG474 (v1.7) 2014 年 11 月 17 日
分散 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]CLKWE
O6
DI1
7
SPRAM64
A[6:1]WA[7:1]CLKWE
O6
RegisteredOutput
Output
F7BMUX
(Optional)
D Q
0
http://japan.xilinx.comhttp://japan.xilinx.com/about/feedback.html?docType=User_Guides&docId=UG474&Title=7%20%26%2312471%3B%26%2312522%3B%26%2312540%3B%26%2312474%3B%20FPGA%20%26%2312467%3B%26%2312531%3B%26%2312501%3B%26%2312451%3B%26%2312462%3B%26%2312515%3B%26%2312521%3B%26%2312502%3B%26%2312523%3B%20%26%2312525%3B%26%2312472%3B%26%2312483%3B%26%2312463%3B%20%26%2312502%3B%26%2312525%3B%26%2312483%3B%26%2312463%3B%20%26%2312518%3B%26%2312540%3B%26%2312470%3B%26%2312540%3B%20%26%2312460%3B%26%2312452%3B%26%2312489%3B&releaseVersion=1.7&docPage=31
-
32 japan.xilinx.com 7 シリーズ FPGA CLB ユーザー ガイドUG474 (v1.7) 2014 年 11 月 17 日
第 2 章 : 機能の詳細
X-Ref Target - Figure 2-13
図 2-13 : 128x1 デュアル ポートの分散 RAM (RAM128X1D)
UG474_c2_12_101210
DI1DDI
AX
A[6:0]
WCLK
DPRA[6:0]
WE
(CLK)
(WE)
7
DPRAM64
RAM128X1D
A[6:1]WA[7:1]CLKWE
O6
DI1
6
7
DPRAM64
A[6:1]WA[7:1]CLKWE
O6
RegisteredOutputF7BMUX
(Optional)
D Q
SPO
DI1
6
7
DPRAM64
A[6:1]WA[7:1]CLKWE
O6
DI1
6
7
DPRAM64
A[6:1]WA[7:1]CLKWE
O6
RegisteredOutputF7AMUX
(Optional)
D Q
DPO
A6 (CX)
6
http://japan.xilinx.comhttp://japan.xilinx.com/about/feedback.html?docType=User_Guides&docId=UG474&Title=7%20%26%2312471%3B%26%2312522%3B%26%2312540%3B%26%2312474%3B%20FPGA%20%26%2312467%3B%26%2312531%3B%26%2312501%3B%26%2312451%3B%26%2312462%3B%26%2312515%3B%26%2312521%3B%26%2312502%3B%26%2312523%3B%20%26%2312525%3B%26%2312472%3B%26%2312483%3B%26%2312463%3B%20%26%2312502%3B%26%2312525%3B%26%2312483%3B%26%2312463%3B%20%26%2312518%3B%26%2312540%3B%26%2312470%3B%26%2312540%3B%20%26%2312460%3B%26%2312452%3B%26%2312489%3B&releaseVersion=1.7&docPage=32
-
7 シリーズ FPGA CLB ユーザー ガイ ド japan.xilinx.com 33UG474 (v1.7) 2014 年 11 月 17 日
分散 RAM (SLICEM のみで使用可能)
こ こに示した例よ り も大きな分散 RAM コンフ ィギュレーシ ョ ンが必要な場合は、SLICEM が 2 つ以上必要ですが、 CLB 内またはスライス間には直接接続がないため、 これ以上大規模な分散 RAMは構築できません。
X-Ref Target - Figure 2-14
図 2-14 : 256x1 シングル ポートの分散 RAM (RAM256X1S)
UG474_c2_13_101210
DI1D
A[7:0]
WCLK
WE
(CLK)
(WE/CE)
6
8
SPRAM64
RAM256X1S
A[6:1]WA[8:1]CLKWE
O6
DI1
6
8
SPRAM64
A[6:1]WA[8:1]CLKWE
O6F7BMUX
F8MUXRegisteredOutput
Output
(Optional)
D Q
O
DI1
6
8
SPRAM64
A[6:1]WA[8:1]CLKWE
O6
DI1
6
8
SPRAM64
A[6:1]WA[8:1]CLKWE
O6F7AMUX
A6 (CX)
A6 (AX)
A7 (BX)
http://japan.xilinx.comhttp://japan.xilinx.com/about/feedback.html?docType=User_Guides&docId=UG474&Title=7%20%26%2312471%3B%26%2312522%3B%26%2312540%3B%26%2312474%3B%20FPGA%20%26%2312467%3B%26%2312531%3B%26%2312501%3B%26%2312451%3B%26%2312462%3B%26%2312515%3B%26%2312521%3B%26%2312502%3B%26%2312523%3B%20%26%2312525%3B%26%2312472%3B%26%2312483%3B%26%2312463%3B%20%26%2312502%3B%26%2312525%3B%26%2312483%3B%26%2312463%3B%20%26%2312518%3B%26%2312540%3B%26%2312470%3B%26%2312540%3B%20%26%2312460%3B%26%2312452%3B%26%2312489%3B&releaseVersion=1.7&docPage=33
-
34 japan.xilinx.com 7 シリーズ FPGA CLB ユーザー ガイドUG474 (v1.7) 2014 年 11 月 17 日
第 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 数を示します。
シフ ト レジスタ (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
http://japan.xilinx.comhttp://japan.xilinx.com/about/feedback.html?docType=User_Guides&docId=UG474&Title=7%20%26%2312471%3B%26%2312522%3B%26%2312540%3B%26%2312474%3B%20FPGA%20%26%2312467%3B%26%2312531%3B%26%2312501%3B%26%2312451%3B%26%2312462%3B%26%2312515%3B%26%2312521%3B%26%2312502%3B%26%2312523%3B%20%26%2312525%3B%26%2312472%3B%26%2312483%3B%26%2312463%3B%20%26%2312502%3B%26%2312525%3B%26%2312483%3B%26%2312463%3B%20%26%2312518%3B%26%2312540%3B%26%2312470%3B%26%2312540%3B%20%26%2312460%3B%26%2312452%3B%26%2312489%3B&releaseVersion=1.7&docPage=34
-
7 シリーズ FPGA CLB ユーザー ガイ ド japan.xilinx.com 35UG474 (v1.7) 2014 年 11 月 17 日
シフ ト レジスタ (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)
RegisteredOutput
(Optional)
(AQ)
DI1
D Q
(AI)
SHIFTIN (MC31 of Previous LUT)
SHIFTIN (D)
A[4:0]
CLKCE
(A[6:2])
(CLK)
(WE/CE)
SRL32
SRLC32E
A[6:2]
CLKCE
O6
MC31SHIFTOUT (Q31)
5
http://japan.xilinx.comhttp://japan.xilinx.com/about/feedback.html?docType=User_Guides&docId=UG474&Title=7%20%26%2312471%3B%26%2312522%3B%26%2312540%3B%26%2312474%3B%20FPGA%20%26%2312467%3B%26%2312531%3B%26%2312501%3B%26%2312451%3B%26%2312462%3B%26%2312515%3B%26%2312521%3B%26%2312502%3B%26%2312523%3B%20%26%2312525%3B%26%2312472%3B%26%2312483%3B%26%2312463%3B%20%26%2312502%3B%26%2312525%3B%26%2312483%3B%26%2312463%3B%20%26%2312518%3B%26%2312540%3B%26%2312470%3B%26%2312540%3B%20%26%2312460%3B%26%2312452%3B%26%2312489%3B&releaseVersion=1.7&docPage=35
-
36 japan.xilinx.com 7 シリーズ FPGA CLB ユーザー ガイドUG474 (v1.7) 2014 年 11 月 17 日
第 2 章 : 機能の詳細
図 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
DI1SHIFTIN1 (AI)
SHIFTIN2 (AX)
A[3:0]
CLK
CE