沖電気製82C55とインターシル社製82C55の相違点 ハードウェア: Digital I/O (DIO)>>Static>>PCI-DIO-96, Digital I/O (DIO)>>Static>>DAQCard-DIO-24, Digital I/O (DIO)>>Static>>PCI-DIO-96, Digital I/O (DIO)>>Static>>PXI-6508, Digital I/O (DIO)>>Static>>PCI-6503
問題: 以前はOKI(沖電機工業)製の82C55デジタルI/Oチップが搭載されていたNI製ボードを使用しています。現在のリビジョンの製品は,沖電気の代わりにインターシルの82C55が搭載されています。両者では若干動作が異なっており,またパッケージにはSpecification Changes(仕様変更)の書類が同梱されていました。 この変更により,どのような用途の場合に影響があるのでしょうか。沖電気製とインターシル製の82C55にはどの様な相違点があるのでしょうか。また,沖電気製82C55搭載ボードと同様の動作をさせるための対策を教えて下さい。 解決策: 【背景】 弊社ではデジタルI/O機能を実装するため,何種類かの製品に82C55を採用しています。 長らく沖電気製の82C55を採用していましたが,一時的に供給が不足となったため,一部の製品で特定のリビジョン向けに代替品を採用しました。 弊社ではインターシル製82C55が100%完全に互換ではないものの,機能的に最も近いと判断し下表の製品で採用しております。 この文書では,以下の項目について説明いたします。
【適用機種】 以下の表に,今回の変更が適用される製品とリビジョンを掲載します。表に掲載されている物よりも前のリビジョンの製品には,今回の変更は適用されません。 デジタルI/Oデバイス
この変更はあくまで一時的な処置であることを何卒ご理解ください。後のリビジョンでは,変更前の製品と同じ動作に戻ります。 【変更により影響を受けるアプリケーション】 以下の条件下において,変更による影響が予想されます。
以上に該当しない場合は,本変更による影響は発生いたしません。 今回の変更により影響が現れた場合,本書に記載の対処法をお試しください。対処により影響が改善されない場合は,弊社技術サポートまでご相談ください。 【動作の相違点と影響の回避策】 以下,「ポートA」「ポートB」「ポートC」は,それぞれ8255 (82C55) 上のポートを指します。PCI-DIO-96等82C55を複数搭載しているボードでは,それぞれのチップに対し各ポートが存在します。 電源投入時 電源投入時に信号ラインをLOWレベルに保持するためには,プルダウン抵抗が必要となります。弊社製品では,ジャンパ設定によりボード上の100kΩプルダウン抵抗が接続することができる機種も存在しますが,抵抗が搭載されていない機種も存在し,この場合には外部にプルダウン抵抗が必要となります。インターシル製のチップは電源投入時から信号ラインがHIGH状態となり,信号ラインがLOWとされるまでHIGH状態が保持されます。電源投入時には,低抵抗(1.7kΩ以下)によるプルダウンを行わない限り,ラインはLOWレベルとはなりません。 ボード上の100kΩプルダウン抵抗を使用している場合や,外部のプルダウン抵抗が1.7kΩを超える場合,電源投入時に信号ラインがLOW状態とならない可能性があります。対策として,1.7kΩ以下の抵抗をプルダウン抵抗として用いて下さい。ただし,このような低抵抗を信号ラインに接続した場合,信号ドライブ側の出力電流が増加いたします。 入力への構成変更時 信号ラインを入力として構成した場合,ラインの状態は出力側機器により決定されます。出力側機器が接続されていない場合は,プルアップ抵抗あるいはプルダウン抵抗によりラインの状態が決定されます。プルアップ抵抗が接続されている場合はHIGHに,プルダウン抵抗が接続されている場合はLOWになります。さらに,インターシル製の82C55チップを搭載した製品にはバスホールド機能が追加されております。バスホールド機能とは,信号ラインの状態を,外部からの電圧が加わらない限り直前の値(HIGHかLOWか)に保持する機能です。 インターシル製82C55では,ポートAのバスホールド機能はHIGH側・LOW側共に有効で,ポートが入力に構成されている限り有効です。ポートが出力から入力に切り替わった場合,最後に出力した値が保持されます。例えば,最後にHIGHを出力した場合,入力に切り替わった後にも入力端子の状態はHIGHとなり,同様に最後にLOWを出力した場合は入力に切り替わった後にLOW状態が保持されます。HIGH/LOWの状態を変更するためには,外部からLOWあるいはHIGHの電圧を入力するか,低抵抗のプルアップまたはプルダウン抵抗を接続します。プルダウン抵抗には1.7kΩ以上,プルアップ抵抗には5.3kΩ以下の抵抗値が必要です。 インターシル製82C55のポートB・ポートCではHIGH状態のみがホールドされます。入力に構成されている限り有効で,入力がLOWになるまで状態がホールドされます。一旦LOWレベルが入力されるとバスホールド回路は無効となり,再度入力側に構成されるまで有効化されません。前回の入力がHIGHであった場合,バスホールド回路によって信号ラインはHIGHの状態に保持されます。前回の入力がLOWであり,かつプルダウン抵抗が信号ラインに接続されていた場合,プルダウン抵抗の値によってバスホールド回路が有効となるか無効となるかが決定されます。バスホールド回路が有効の場合,外部からLOW電圧を入力することで無効化されます。 外部からの入力がない場合に信号ラインをHIGHあるいはLOWどちらかの状態となるよう指定するためには,I/Oを入力側に切り替える前にHIGHまたはLOWの状態にして下さい。ポートB・ポートCでは,信号ラインの状態をLOWにする際にプルダウン抵抗(最大100kΩ)が必要です。ポートAではプルダウン抵抗は接続しなくても構いません。 オープンコレクタ出力回路との接続 オープンコレクタ回路は,信号ラインをHIGHからLOWへアクティブに遷移させますが,LOWからHIGHへの遷移ではプルアップ抵抗器が必須となります。 インターシル製82C55のポートB・ポートCでは,オープンコレクタ出力回路との接続でも正常に動作します。これはバスホールド回路がHIGHレベルの時にのみ有効で,最初にLOWレベルが入力された際(オープンコレクタ出力回路のトランジスタがONになった際)にバスホールド回路が無効化されるためです。プルアップ抵抗器が必須です。通常,抵抗値は出力回路のシンク電流許容値と,LOWからHIGHへの遷移時間との兼ね合いで決定します。 ポートAでは,回路が入力の構成である限りHIGH/LOWいずれの状態もホールドします。 信号ラインがLOWレベルに落とされた場合,バスホールド回路もラインをLOWに駆動して状態をホールドします。オープンコレクタ出力回路がハイインピーダンス状態(出力回路のトランジスタがOFFになり,プルアップ抵抗によってLOWからHIGHに遷移しようとする状態)となっても,バスホールド回路は信号ラインをLOWに保持します。 プルアップ抵抗が十分に低抵抗であるか,アクティブ型出力(トーテムポール型出力回路)によってHIGHが入力されるまで,信号ラインの状態は変化せずにLOWのままとなります。オープンコレクタ出力回路を接続した場合,HIGHに遷移することができる最大の抵抗値は5.3kΩです。100kΩのボード内蔵プルアップ抵抗を用いていた場合は,このバスホールド回路の動作に影響を受けます。 【動作の相違点一覧表】 プルアップ・プルダウン抵抗器を内蔵しない機種(PCI-1200等)
100kΩプルアップ抵抗器内蔵機種(PCI-DIO-96等)
100kΩプルアップ抵抗器内蔵機種(PCI-6503等をジャンパ設定によりプルダウンとした場合)
外部抵抗器接続時(すべての機種) 外部にプルアップ抵抗器を接続した場合
外部にプルダウン抵抗器を接続した場合
【相違点の詳細】 82C55は3ポート構成のデジタルI/Oです。ポートA,ポートB,ポートCのそれぞれのポートを独立して入力あるいは出力に構成することが可能です。ポートCはデータ転送用の特殊機能を有しています。 沖電気製82C55 沖電気製82C55は特にプルアップやプルダウン抵抗などの回路は内蔵していません。信号ラインの状態は,外部に接続された抵抗器によって決定されます。 弊社製品にはプルアップ・プルダウン抵抗を内蔵していない機種も存在しますが,100kΩのプルアップ・プルダウン抵抗を内蔵している機種も存在します。プルアップ固定の抵抗器を内蔵している機種と,ジャンパによりプルアップ・プルダウン・接続なしを切り替え可能な機種があります。どのようなタイプの機種でも,外部にプルアップ抵抗やプルダウン抵抗を接続することにより,電源投入時や入力へ構成が切り替わった際の信号ラインの状態を指定することができます。 100kΩプルアップ固定の抵抗器が内蔵された機種やジャンパ設定がプルアップになっている場合は,外部にプルダウン抵抗を接続することで強制的に信号ラインをLOWにすることができます。例としてPCI-6025Eは100kΩ固定のプルアップ抵抗を内蔵しています。電源投入時やポートが出力から入力に構成が変わった際に,信号ラインをLOWとするためのプルダウン抵抗の推奨値は,7.1kΩです。 インターシル製82C55 インターシル製82C55はI/Oバッファにバスホールド回路が追加されております。このため,信号ライン状態を決定するための外部抵抗器が不要です。バスホールド回路は信号ラインの状態を監視し,フィードバックをかけて信号ラインを駆動し現在の状態を保持します。 ポートAのバスホールド回路は,HIGH,LOWいずれの状態も保持することができます。ポートB,CにはHIGH状態のみを保持する回路が搭載されています。回路の詳細は添付の図をご覧ください。 ポートB,Cに採用されているバスホールド回路は,チップ自体のリセット時や入力へ構成の切り替えた際に有効化され,信号ラインがLOWになると無効化されます。このバスホールド回路では,状態を保持している間最大で400μAの電流を供給することができます。状態を遷移させるためには400μAでは不足であるため,十分な電流を流せる低インピーダンスの信号源が必要となります。 バスホールド回路がHIGH状態を保持している場合,LOW状態に遷移させるためには十分に低いインピーダンスの信号源で駆動する必要があります。この場合入力リーク電流の10μAやプルアップ抵抗器100kΩが接続されていることを考慮し,信号源のインピーダンスは1.7kΩ以下である必要があります。これは,トータルでは457μA以上の電流が入力端子から流れ出すために,端子電圧を0.8Vとするために必要な抵抗値が最大約1.7kΩであるためです。 ポートAでは,バスホールド回路がLOW状態を保持している場合,HIGHに遷移させるためにも十分にインピーダンスの低い信号源を接続する必要があります。この場合にはリーク電流10μAで入力電圧を2.2V以上とするためには,5.6kΩ以下の抵抗値が必要となります。
報告日時: 03/08/2005 最終更新日: 04/24/2005 ドキュメントID: 3J7DSBQO |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||


