AR# 14796

|

7.1i CPLDFit - 「WARNING:Cpld:1081 - Cannot assign signal 'dout' to location '82=FB3_12'. Not enough block inputs.」という警告メッセージが表示される

説明

キーワード : 6.3i, 6.2i, 6.1i,5.2i, 5.1i, CoolRunner, fit, XC9500, XC9500XL, XPLA3, フィット

重要度 : 標準

概要 :
CPLD デザインをインプリメントすると、次のような警告メッセージが表示されます。

"WARNING:Cpld:1081 - Cannot assign signal 'dout' to location '82=FB13_14'. Not enough block inputs."

ソリューション

この警告メッセージにあるように、ピン割り当てができなかった原因は、ファンクション ブロックに割り当てられた出力ピンで必要とされる入力数が、実際に使用できる数よりも多いためです。 CoolRunner-II/XPLA3 のファンクション ブロックには、入力信号を 40 本までしか使用できません。 XC9500XL/XV の場合は、54 本です。

上記の警告メッセージによると、出力信号 dout が原因でフィット エラーが発生しています。 同じファンクション ブロック (ここでは FB13) にほかの出力信号が割り当てられている可能性があり、このファンクション ブロックに割り当てられている出力ピンの合計数が、最大許容数を越えています。 信号 dout は、ファンクション ブロック入力が足りなくなったときに、CPLDfit がフィットしようとするための論理式に過ぎません。

この問題は、次のいずれかの方法を用いて解消できます。
- ファンクション ブロックの入力数を 40 までとする。(今後のデザイン変更に対して柔軟性を与えるため、デフォルトの値は 38 になっています。)
- 警告で示された出力に対して、固定されたピン割り当てを解除し、CPLDfit によりフィットし直す。 ほかの出力で同じような警告メッセージが表示された場合も、このように対処してください。 これにより、ファンクション ブロックの入力が使用可能な出力が CPLDfit により配置されます。
- コラスプする入力の数を減らす。 これにより、論理式ごとに使用される最大入力数が制限されるため、CPLDfit によりロジック レベルが追加されます。 さらに、ロジックが共有され、効果的に分配されるという利点がありますが、速度は遅くなります。 この場合、グローバルに適用されるため、デザイン全体に影響してしまいます。
- 問題の出力に適用されている入力の数を減らす。 削除する入力を選択する場合は、ファンクション ブロック内のほかのロジックで使用されていない入力を選択してください。 そのように選択しないと、このファンクション ブロックに追加入力が保存されません。
- 問題の出力に MAXPT 制約を適用し、CPLDfit でフィットし直す。 MAXPT 制約は、問題の論理式で使用される積項の数を制限します。 この制約を適用することで、フィット エラーの原因となっている論理式をターゲットとすることができます。 (UCF の場合、NET "dout" MAXPT=1; などと記述します。) ほかの出力で同じような警告メッセージが表示された場合も、このように対処してください。

また、(Xilinx XAPP444) の CPLD フィットのヒントも参照してください。
AR# 14796
日付 12/15/2012
ステータス アクティブ
種類 一般
People Also Viewed