UPGRADE YOUR BROWSER

We have detected your current browser version is not the latest one. Xilinx.com uses the latest web technologies to bring you the best online experience possible. Please upgrade to a Xilinx.com supported browser:Chrome, Firefox, Internet Explorer 11, Safari. Thank you!

AR# 17188

7.1i CPLD CoolRunner-II - トライステート (オープンドレイン) の式が間違っているようにみえる

説明

キーワード : 6.3i, 6.2i, 6.1i, 5.1i, 5.2i, open-collector, オープンコレクタ

重要度 : 標準

概要 :
(Xilinx Answer 6717) では、通常のオープンドレイン ロジックについて説明しています。 このオープンドレイン ロジックは次のように記述できます。

my_od <= '0' when en = '0' else 'Z';

フィッタ レポートの式は次のように表されています。
my_od = en;

このロジックは、間違っているように見えます。

ソリューション

オープンドレイン出力は、CoolRunner-II CPLD でサポートされています。

オープンドレイン信号では、ロジックが true の場合、出力がハイインピーダンスになり、外部プルアップ抵抗を使用してバスを High の状態にします。 ロジックが false の場合は、出力が Low で駆動され、外部バスが Low の状態を維持します。

信号をオープンドレイン出力として設定した場合、出力ロジックが true の場合はハイインピーダンスになり、false の場合は Low で駆動されます。

したがって、信号がオープンドレインとして設定されていると仮定すると、次の式は en 信号が true の場合、出力がハイインピーダンスであることを表します。 en 信号が false の場合は、出力が Low で駆動されます。

my_od = en;

出力がオープンドレイン信号として設定されているかどうかを判断するには、フィッタ レポート (.rpt) の「Resources Used by Successfully Mapped Logic」セクションで「I/O Style」列を参照してください。 この列で出力が OD となっていれば、この出力がオープンドレイン信号として設定されていることを示し、式もそれに従って解釈する必要があります。

AR# 17188
日付 12/15/2012
ステータス アクティブ
種類 一般
このページをブックマークに追加