Integrated当ウェブサイトを利用することによりクッキーの使用に同意したことになります。DS1859が他の多くの製品と異なる点は、その内部キャリブレーションと右シフト処理(スケーラブルダイナミックレンジ)の機能です。これらの機能を併用することによって、DS1859の12ビットのアナログ-ディジタルコンバータ(ADC)が大幅に強化され、コストとサイズを増加させることなく、最大で16ビットADCの精度と正確性を実現することができます。DS1859の内部キャリブレーションは、設定可能な利得と設定可能なオフセットの両方を備えており、(一部の例外を除いて)ほとんどの外付け信号コンディショニング回路が不要になります。ADCより前のアナログドメインに設けられた設定可能な利得によって、ADCの全レンジを使用するように入力信号を増幅または減衰することができます。LSBが温存されるように、かつユーザーからは透過的な形で、ディジタル出力を除算して元の大きさに戻すことができます。このアプリケーションノートの目的は、内部キャリブレーションと右シフト処理を使用することで、アプリケーションが享受することができる利点を示すことです。このアプリケーションノートでは、内部キャリブレーションと右シフト処理の実装方法に関する有用な情報を提供します。最後に、具体例を用いて対象トピックのアプリケーションを示します。MON入力のブロック図を見てみましょう(図1を参照)。わかりやすくするため1つの入力だけを図示してありますが、この概念は3つのMON入力のすべてに適用されます。図から分かるように、DS1859のMON端子にはシングルエンドの電圧を印加します。アナログドメイン内で、その電圧が設定可能なゲインブロックに供給されます。このゲインブロックは、利得だけでなく減衰も可能です。このゲインブロックによって、希望するLSBまたはフルスケールの電圧が得られるようなMONチャネルのキャリブレーションが可能になっています。フルスケールの電圧とは、ディジタル出力がフルスケール(FFF8h)に達する電圧のことです。ゲインブロックが存在することで、小さな入力信号を内部で増幅し、ADCの利用度を最大化することが可能になっています。この手順については、後でさらに詳しく説明します。ゲインブロックの次に位置するのが12ビットのADCです。12ビットの変換結果は左詰めされて2バイト(16ビット)値の形で出力されます。ADCは、0000h~FFF8hの範囲のディジタル値を出力することができます。ディジタルドメインで、DS1859は、正または負のオフセットを付加することができるユーザー設定可能なディジタルオフセットを備えることで、内部キャリブレーションを進めます。このディジタルオフセットを使用して、単純なディジタルの加算を行うことで、内部的に正または負のオフセットを付加することができます。重要な点として、正のオフセットはそれでもディジタル値FFF8hでクランプすることに注意してください。最小のディジタル値は、0以上となります。同様に、負のオフセットは、FFF8h未満のフルスケールのディジタル値を持つことになります(負のオフセットは変換結果からの減算になるため)。この場合の最小のディジタル値は、0000hのままです。Calレジスタ」の項に記載してあります。ディジタル値を出力する前の最後の操作が、右シフト処理です。各MON入力には3つのビットが設けられており、希望する右シフト数を制御します。右シフト処理の利点については後で説明します。3つのビットにゼロをセットすると、右シフト数がゼロとなり、右シフト機能が無効化されます。オフセット同様、右シフトもフルスケールのディジタル出力に影響を与えます。右シフト数を2に設定すると、フルスケールのディジタル出力は3FFEhになります。シフト実行後、ユーザーが変換結果の読取りを行う適切なレジスタに値が書き込まれます。この値は、アラームやウォーニングのための比較にも使用されます。DS1859の出荷時キャリブレーションDS1859の各MON入力は、それぞれフルスケール電圧2.5Vに出荷時調整されています。これは、2.5Vの入力電圧に対してFFF8hのフルスケールのディジタル値が出力されることを意味しています。各ディジタルオフセットは、0Vの入力に対してディジタル値0000hが出力されるようゼロに出荷時プログラムされています。右シフトの出荷時デフォルトも0です。図2Bに示すのが、出荷時キャリブレートされたDS1859の伝達関数であり、これについては後で説明します。出荷時に調整されたデバイスは、0~2.5Vの入力電圧に対して、4096通りのディジタル値のいずれか1つを出力します。(2.5V/4096)になります。理想的には、ディジタル化すべき入力信号が0~2.5Vの信号なら、このレンジ全体が活用されます。現実のアプリケーションでは、必ずしもそうなるとは限りません。受信出力の場合は0~0.5Vの電圧が一般的であり、残念ながらディジタル出力コードの80%は使用されないことになります。4096通りのコードを生成する能力を持つ12ビットのADCが、820通り(4096通りの20%)のコードの中の1つしか出力しないという無駄が発生するのです。残りの3276通りのディジタルコードは、決して使用されません。使用される820通りのコードの分解能は610μVのままです。多くのディジタルコードを活用するためには、受信出力のMON入力をキャリブレートし直して、フルスケール電圧を少なくとも2.5V未満にする必要があります。MONの値をキャリブレートし直すだけでは、入力信号の問題は解決しません。LSBが変化して、希望のLSBと一致しなくなるためです。この問題を解決する方法が、次項で説明する、内部キャリブレーションと右シフト処理をともに使用する方法です。内部キャリブレーションと右シフト処理は、モニタ対象の信号が小さく、したがってADCのレンジ全体が使用されない場合に最も役立ちます。アナログ/ディジタル変換の前にアナログドメインの信号を増幅し、後からディジタルドメインでそれと同じ倍率で割って元に戻すことによって、希望のLSBを維持することができます。右シフト1回ごとに、精度と正確さの両方が2倍に改善します(最大4回まで)。4回の右シフト後は、精度は失われますが、正確さはさらに改善され続けます。この特長は、前に浪費したレンジを犠牲にして実現されるものです。図2に示す例は、内部キャリブレーションと右シフト処理を使用する利点を最も良く表わしています。図2Aは、電圧と時間を軸にしてモニタ対象の信号の例をグラフにしたものです。この信号の例は、0V~0.5Vの範囲で変動しています。0.625Vとした伝達関数の例とをそれぞれ示しています。(右シフト2回分)で割って元の大きさに戻します。右シフトの回数と、それによるフルスケール電圧の決定については、以下の項で取り上げます。ここで右シフト2回を使っているのは、単に右シフトの例を右シフトなしと比較するためです。使用したデバイスの設定、および各伝達関数に関連する計算については、該当する伝達関数の下にそれぞれ記載してあります。図2の3つのグラフは、すべて同一のY軸およびスケールで並べて表示してあるため、入力信号(図2A)上の任意の特定点と、それぞれの伝達関数とを通る水平の線を引くことによって、ディジタル出力の大まかな近似値を求めることができます。0V~0.5Vの範囲の入力信号の例に戻ると、3つのグラフを通る太い水平線によって0.5Vが示されていますが、グラフBとCを比較することによって右シフトの利点が分かります。ADCの入力レンジが入力信号よりはるかに広い電圧範囲にわたっている場合、数多くの段階が無駄になることが改めて分かります(グラフBを参照)。グラフBでは、4096段階のうち819だけが使用され、残りの80%は無駄になっています。これに対してグラフCでは、内部的なキャリブレーションでフルスケール電圧を小さくし、右シフトを使用することによって、精度が増大しています。この場合、4096通りのディジタルコードの内、3276通りが信号のディジタル化に使用されています。ここでの利点は、右シフトの後も希望のLSBが維持されている点です。右シフト処理は、ユーザーからは透過的です。この点は、両方のグラフがほぼ同じディジタル値を出力していることから確認することができます。必要な右シフト回数の決定方法アプリケーションで使用可能な右シフトの回数は、フルスケール電圧(内部キャリブレーション)と、特定の入力信号に使用されるディジタルコードの割合との関数になります。(フルスケール電圧に加えて)入力信号の最大電圧が分かっている場合は、予想されるディジタル出力を計算することができます。それ以外の場合は、エンジニアリング評価の期間中に「実地」アプローチを使ってディジタル出力の範囲を決定し、そこから理想的な右シフトの回数を決定することが要求されます。この「実地」アプローチについて、以下で段階を追って詳しく説明します。右シフトビットに0をセットします。希望のLSBが得られるように内部キャリブレーションを行います(これによって、フルスケール電圧の初期値が決定されます)。最小および最大の入力信号を印加し、それに対するディジタル出力の値を読み取って、使用されているレンジを判定します。ADCのレンジの何パーセントが使用されているかを求めます。ディジタル値が7FFFhを超えている場合は、右シフトは使用しません(右シフト0回)。ディジタル値が7FFFhより小さければ、少なくとも1回の右シフトが使用可能です。ディジタル値が3FFFhより小さければ、右シフト2回が使用可能です。以下、この繰り返しになります。その他のレンジについては、DS1859のデータシートの表9を参照してください。右シフトによって生じるディジタル値の除算を補償するため、アナログドメインにおいて利得を追加し、希望のLSBが維持されるようにする必要があります。これは、次の式を使って新しいフルスケール電圧を計算することによって行います。2右シフト数すなわち、(希望のLSBを維持するために)ステップ2の内部キャリブレーションの結果フルスケール電圧が2.0Vになり、かつディジタル値が1FFFhより大きく3FFFhを超えない範囲だった場合、右シフトは2回が理想的ということになります。新しいフルスケール電圧になるよう(まだ右シフトビットには0をセットしたままで)チャネルの内部キャリブレーションを行います。右シフトビットに新しい値をセットします。評価時に、特定のアプリケーションについて理想的な右シフト数とフルスケール電圧を決定してしまえば、本番のキャリブレーションで必要になるステップは、1、6、および7だけです。DS1859内部キャリブレーションおよび右シフト用レジスタ各アナログチャネルの内部キャリブレーションおよび右シフトの設定に関するDS1859のデバイスレジスタを表1にまとめました。各MONチャネルの設定用の他、VCCについてもレジスタアドレスを示してあります。VCCを含めたのは表を完全なものにするためですが、実際にはこのアプリケーションノートでは解説していません。ディジタル変換値の場所についても、それぞれの相対位置を表に含めておきました。利得、オフセット、および右シフトの各レジスタは、メモリテーブル01hの中にあることに注意してください(このアプリケーションノートの表1と混同しないこと)。メモリテーブル01hは、テーブル選択バイト(7Fh)に01hを書き込むことによって選択します。このとき、ディジタル変換値は低位のメモリバンク(0-7Fh)にあるため、テーブル選択バイトに依存しません。Calレジスタは、入力スイッチトキャパシタ回路の調整によって特定のモニタ対象チャネルの利得/減衰量を決定する2バイトの値です。これによって、フルスケール電圧を約500mV~6.5535Vの範囲で希望する任意の値にキャリブレートすることが可能になります。Calレジスタに4を書き込む」というような単純なものではありません。入力スイッチトキャパシタ回路におけるデバイス(またはロット)の違いに合わせて設定をキャリブレートすることが絶対に必要です。(内部キャリブレーション)」の項で説明します。このアプリケーションノートの「内部キャリブレーションの方法」の項で追加情報を提供します。DS1859のキャリブレーションに関する最後の注意点として、オフセットレジスタと右シフトレジスタの両方の値を把握していることが重要になります。ないと、これらの値がゼロでなく、かつ補償されていない場合、デバイスのキャリブレーションが意図どおりに行われなくなります。Calレジスタは、モニタ対象の各入力に適用するディジタルオフセット量を決定する2バイトの値です。DS1859のオフセットは、変換後の値に対する単純なディジタルの加算または減算であることを思い出してください。したがって、希望の値に合わせて利得の調整が完了した後(かつ右シフトの有効化よりも前に)、オフセットをプログラムして任意のオフセットの除去またはレンジの移動を行うことができます。Calレジスタ同様、プログラムする値の決定は、「100mVのオフセットが欲しいからレジスタに100を書き込む」というような容易なものではありません。Cal値を求めることができますが、同時にこの項には、正または負のオフセットの例とともに追加情報が記載されています。Calの計算は、まず変換結果に対して加算または減算するカウントを決定することから始まります。そのための一般的な方法の1つは、ゼロ状態の入力(レーザーオフなど)を適用して、その変換結果を読み取るというものです。この値をすべての変換結果から減算することになります。Calレジスタに書き込む値は、希望するカウントを、DS1859のデータシートで提供される式(以下に再掲)に代入することによって計算します。(C8h)を減算することができます。次式を使用すると、レジスタに書き込む値が求まります。7F9Chこの場合、減算が行われるということを忘れないでください。そのため、フルスケールのカウント(FFF8h)もC8hだけ減少し、新しいフルスケールのカウントはFF30hになります。例2:変換結果に200カウントを加算したいとします。この場合、2つの負(式中の負と-C8h)が打ち消し合って第2項が正となり、次式が導かれます。0064h新しいフルスケールのカウントを計算するため、普通ならFFF8hにC8hを加算(しようと)するところです。FFF8hは起こりうる最大のディジタル値であるため、フルスケールのカウントはFFF8hのままになります。Cal値を計算します。Calレジスタの出荷時デフォルトでもあります。右シフトレジスタ右シフトレジスタ(テーブル01h、バイト8Eh~8Fh)は、利得やオフセットレジスタよりもはるかに容易に理解することができます。MON1~MON3は最大7回の右シフトを実行することができるため、各MON入力について3ビットが必要です。MON1とMON2の設定はテーブル01h、バイト8Ehに格納され、MON3の設定はテーブル01h、8Fhに格納されます。各ビットの位置については、データシート中のメモリマップを参照してください。これらのEEPROMレジスタの出荷時デフォルトは00hであり、右シフト処理が無効化されています。右シフト処理の結果をさらに詳しく示すため、結果として生じるMONの値の例をいくつか図3に示します。内部キャリブレーションを実行することができる方法はいくつかありますが、このアプリケーションノートでは、DS1859のデータシート中で示されている(疑似コードを使用した)バイナリサーチによるアプローチを検討します。疑似コードアルゴリズムの出力は、希望の伝達関数、すなわち希望のLSBをもたらす利得とオフセットレジスタの値になります。疑似コードアルゴリズムを使用するためには、レーザーを2つの異なる強度、たとえば最弱と最強の90%にセットすることができること、および複数回の繰り返しが可能であることが必要です。光以外のアプリケーションの場合は、命令に応じて2つの異なる電圧をMON入力に印加することができなければなりません。データシートで示すアルゴリズムは最大値の90%を使用しているため、上限はクランプされにくくなっています。希望するフルスケールのパーセンテージを適用するときには、対応するディジタル値のパーセンテージも計算することが大切です。このアルゴリズムは、オフセットと右シフトレジスタを既知の状態、具体的にはゼロオフセットとゼロ右シフトに設定することから始まります。この例ではどちらのレジスタにもゼロをセットしていますが、適切に補償を行うならば、他の値を使用することも可能です。Calレジスタ」の項を参照)。レジスタの初期化の他にも、アルゴリズムの開始時には希望するLSBの関数であるいくつかの重要な定数を計算します。Calレジスタにハーフスケールである8000hをセットすることから始まります。次に、最大入力の90%をキャリブレート対象のMONチャネルに印加し、それに対応するディジタル変換結果を読み取ることによって、その利得値をテストします。この値を以後Meas2と呼びます。FFF8hかどうかチェックします。値がクランプされている場合、変換結果が実際にFFF8hなのかもっと大きいのかは断定することができません(後者の場合もFFF8hになります)。どちらにしても、利得設定が高すぎます。バイナリサーチ式に利得値を半分にして、クランプが生じない利得値が見つかるまでこのプロセスを繰り返します。クランプの生じないMeas2が見つかると、アルゴリズムは直ちに次に進み、ゼロ入力を印加してそのディジタル変換値を読み取ります。この変換値がMeas1になります。最後に、Meas2とMeas1の差分(デルタ)を計算し、アルゴリズムの最初に計算した定数を使って、希望するデルタ(CNT2-CNT1)との比較を行います。Meas2-Meas1がCNT2-CNT1より小さければ、また利得を半分にします。なく、Meas2-Meas1がCNT2-CNT1より大きかった場合は、利得の半分を求め、今度はそれを現在の利得に足すことによって、利得を増大させます。このプロセスが、合計16回になるまで繰り返されます。結果は、望ましい利得(と希望どおりのLSB)をもたらす16ビット値になります。利得のキャリブレーション手順を具象化する方法は、他にもあります。(b15)から始めて、そのビットに1をセットします(他のビットはすべて最初に0をセットします)。1の状態で、アナログ入力を印加してディジタル出力を読み取るプロセスが実行されます。変換結果がクランプされていた場合は、利得が高すぎるため、MSBを0に戻します。なければ、MSBは1のままにします。これでMSBが判明したことになります。次に、ビットb14に移ります。b14に1をセットします(b15には、すでに決定した値をセットします)。ビット13からb0までは、まだ0のままです。これで再びプロセスを実行して、まだ利得が高すぎるかどうかを判定します。高すぎる場合、今度はb14が0になります。高すぎなければ1になります。以下、この手順を1ビットごとに行い、16ビットすべてが決まるまで続けます。この場合も結果は16ビットの値になり、その値によって望ましい利得が得られます。望ましい利得が得られたら、新しいオフセットのキャリブレーションを行うか、または0のまま(オフセットなし)にすることができます。キャリブレーションの方法は、オフセット機能をどのように使用するかによって異なります。データシート中のアルゴリズムに付随する説明では、ユーザーが負のオフセットを適用してディジタル値の基準をゼロに合わせ、アナログのゼロ入力からすべてゼロの出力が得られるようにしたいものと想定しています。これは、単にゼロのアナログ入力を印加して変換結果を読み取ることによって行います。ゼロ入力(たとえばレーザーオフ)から、たとえば20hのようなディジタル出力が得られた場合、すべての変換結果から20hがディジタル的に減算されるようにオフセットをプログラムすることができます。Calレジスタにプログラムします。次の例は、このアプリケーションノートで説明した概念を分かりやすく示すために用意したものです。この例では、MON3を使用してRpowerのモニタを行います。入力の最小値である-40dBmを印加したとき、DS1859のMON3端子に10mVの電圧が発生します。この入力に対する望ましいディジタル出力は0000hです。0dBmの入力を印加すると、MON3に300mVが発生します。この場合の望ましいディジタル出力は2710hであり、SFF-8472が規定するLSBを満たすものとして選択されました(RpowerのLSBは0.1μW)。望ましいディジタル出力の範囲がすでに与えられているため(0000h~2710h)、この例について理想的な右シフト数を判定するのは比較的簡単です。DS1859のデータシートの表9を使用すると、理想的な右シフト数は2になります。右シフト数が2ということが分かれば、2710hが2回の右シフト後の最終的な出力になるためには、300mVの入力に対する右シフト前の変換結果として9C40hが得られる必要があると結論することができます。したがって、内部キャリブレーションを使用して300mVの入力に対する変換結果を9C40hに「増幅」することになります。内部キャリブレーションとオフセットのプログラムが完了したら、2回の右シフトを有効化します。以上の例を、表2にまとめてあります。2710入力と出力の間の関係が決定したら(表2を参照)、データシートで提供されている内部キャリブレーション用ルーチンを使用してデバイスの内部キャリブレーションを行います。このルーチンは、最初に以下で示す若干の事前計算を実行します。9C40h)がすでにフルスケール値の90%より小さいため、ここではデータシートのルーチンに示された90%という値を使用していないことに注意してください。したがって、この例で使用した内部キャリブレーション用ルーチンでは、90%という数字をすべて削除しています。表2から、以下の計算が行われます。(dec)CNT1とCNT2が、2つのキャリブレーションポイントを印加したときに期待される(望ましい)ディジタル出力です。内部キャリブレーションルーチンは繰り返し処理によって、これらの2つの値で決まるスロープにできる限り近いスロープを探します。ルーチンの繰り返し部分では、バイナリサーチ方式で16回にわたってスロープをプログラムし、それが望ましいスロープと等価かどうかチェックを行います。この例については、内部キャリブレーション手続きを使ってDS1859のキャリブレーションを行っています。16回の繰り返しすべての入力と出力を表3に示します。表3の最初の列Iterationは、ルーチン内のnに相当します。Calレジスタ(デバイステーブル01h、バイト98~99h)にプログラムされる値です。Meas2とMeas1の列は、それぞれ300mVと10mVを入力に印加したときにデバイスから読み取られたディジタル値です。最後に、Meas2がクランプされなかった回について、Meas2-Meas1とCNT2-CNT1の比較を行います。Meas2-Meas1がCNT2-CNT1よりも大きい場合は、gain_resultが大きすぎたことを示します。Calビットはゼロになり、それによって次の回のgain_resultが決まります。Cal値が判明します。Cal値は5038hになりました。Calを決定することができます。この例で使用したデバイスの場合、10mVを印加すると0558hという値が出力されました。7D54h最後に、新しいクランプ値は次のように計算することができます。FAA0h内部キャリブレーションが完了したところで、テーブル01h、位置8Fhに20hを書き込むことによって2回の右シフトを有効化します。結論DS1859の内部キャリブレーションおよび右シフト機能は、最大の柔軟性を提供し、DS1859を幅広いアプリケーションに適合させます。このアプリケーションノートでは、DS1859のデータシートには記載されていない追加情報、具体的には、内部キャリブレーションおよび右シフトが役立つ理由およびそれらの実装方法に関する追加情報を提供しています。それぞれの概念を1つに結び付け、内部キャリブレーションの手順の中でDS1859から読み取られる実際のデータを示すために、「実地」例も用意しました。このアプリケーションノートに関するご質問/ご意見/ご提案は、次のアドレスまでお送りください(英語のみの対応となります)。EE-Mail配信の登録申し込みをして、興味のある分野の最新ドキュメントに関する自動通知を受け取る。Inc.このウェブサイトのコンテンツは米国および各国の著作権法によって保護されています。お問い合わせください。totalPrice.value}}保存して後で見る​削除{{else}}購入カートには何も入っていません。無料サンプル​削除{{else}}サンプルカートには何も入っていません。{{else}}購入カートには何も入っていません。注文履歴を見るサンプルカートには何も入っていません。注文履歴を見る{{/each}}×ブックマークブックマークを利用するにはログインが必要です。MAXIMお知らせツールをクリックおよびドラッグしてダッシュボードをカスタマイズすることができます。>ご質問/ご意見をお寄せください。見積もり請求をご検討くださいx注意お客様のアカウントに制限がかけられているためご注文をお受けすることができません。カスタマーサポートまでご連絡ください。申し訳ありませんが、このサイトではビジネス/教育と関係のないEメールアドレスからのサンプル請求は受け付けておりません。マキシムの代理店マキシムにご興味をお持ちいただきどうもありがとうございます。x注意マキシム・インテグレーテッドにご興味をお持ちいただきどうもありがとうございます。マキシムの無料サンプルプログラムは、暦年につきお客様に提供できる数量を限らせていただいております。誤ってこのメッセージをお受け取りになった場合はsamples-admin@maximintegrated.comまでご連絡ください。distributorData.coreStaff.stockValue}}{{distributorData.coreStaff.stockValue}}{{/if}}価格は代理店のサイトにあります。製品IDを選択して、はじめてください。閉じるお客様の見積もり請求にお応えするためには以下情報が必要です。できるだけ詳しくお答えください。見積もり請求を送信キャンセルお客様の見積もり請求が送信されました。価格と入手性について24時間以内にお答えします。全カテゴリ最近行った。