インテル® Stratix®10 デバイスのロジック・アレイ・ブロックおよびアダプティブ・ロジック・モジュール・ユーザーガイド
3.2.3.1. ノーマルモード
ノーマルモードでは、2 つのファンクションまたは最大 6 入力の 1 つのファンクションを 1 つの インテル® Stratix 10® デバイスの ALM に実装することができます。
LAB ローカル・インターコネクトからの最大 8 データ入力は、組み合わせロジックの入力になります。
ALM は、完全に独立したファンクションの特定の組み合わせおよび共通の入力を持つファンクションの様々な組み合わせをサポートできます。 インテル® Quartus® Primeコンパイラーは LUT への入力を自動で選択します。ノーマルモードの ALM はレジスターパッキングをサポートします。
次の図は LUT モードでの異なる入力接続の組み合わせを示しています。デザインでは、 インテル® Quartus® Primeソフトウェアはコンパイル中に異なる入力名に割り当てる場合があります。
なお、ここで示すものよりも入力数が少ないファンクションの組み合わせもサポートされています。たとえば、次の入力数を持つファンクションの組み合わせがサポートされます。
- 4 と 3
- 3 と 3
- 3 と 2
- 5 と 2
2 つの 5 入力ファンクションを 1 つの ALM にパッキングする際、これらのファンクションは少なくとも 2 つの共通入力を有している必要があります。共通入力はdataaとdatabです。4 入力ファンクションと 5 入力ファンクションの組み合わせでは、1 つの共通入力 (dataaまたはdatabのいずれか ) が必要です。
使用頻度の低いデバイスでは、 インテル® Quartus® Primeソフトウェアを使用して 1 つの ALM に配置できるファンクションを別の ALM に実装することにより、最高のパフォーマンスを実現することができます。デバイスの使用率が高くなり始めると、 インテル® Quartus® Primeソフトウェアは自動的に インテル® Stratix 10® の ALM を最大限に活用します。 インテル® Quartus® Primeのコンパイラーは共通入力を使用するファンクションまたは完全に独立したファンクションを自動的に検索します。これらのファンクションを 1 つの ALM に配置することにより、デバイスのリソースを効率的に使用します。なお、ロケーション・アサインメントを設定することによってリソース使用量を手動でコントロールすることもできます。
次の入力を使用して任意の 3~6 入力ファンクションを実装することができます。
- datae
- datad
- datac
- datag
- datah
- dataf
- dataaおよびdatab—両方の LUT でdataaとdatabが共有され、別の入力ファンクションを実装するための柔軟性を提供します。
dataa入力とdatab入力の両方はレジスターパッキング機能もサポートしています。レジスターパッキング機能をイネーブルする場合、使用するパッキングされたレジスターモードによっては、dataa入力とdatab入力の両方、あるいはいずれか 1 つが LUT をバイパスし、レジスターに直接フィードします。 インテル® Stratix 10® デバイスでは、3 種類のパッキングされたレジスター・モードが選択可能です。
- 1 つのパッキングされたレジスターパスを持つ 5 入力 LUT
- 2 つのパッキングされたレジスターパスを持つ 3 入力 LUT
2 つのパッキングされたレジスターパスを持つ 3 入力 LUT は、ノーマルモードでの 3 入力 LUT モードで図示されます。 インテル® Stratix 10® デバイスでは、6 入力 LUT モードはレジスターパッキング機能をサポートしていません。