これは、帯域幅と遅延の問題に帰着します。単純なシステムの場合、1GS / sのサンプリングレートと10ビットのA / Dコンバーターを備えた帯域幅100 MHzのプローブを1つ想定します(8ビットのスコープで悪い経験がありました)。
たとえば、最小サンプリングウィンドウが10ns-100MHzの正弦波の1サイクルで、最大ウィンドウが0.5秒(これについては寛大です)のPCでのリアルタイム表示が必要です。つまり、最低時間設定は1ns / divのようになり、最高時間は.05s / divになります。また、いくつかの電圧モードが必要です。たとえば、100mVの範囲から20Vまでです。
これにはどのようなデータレートが関係しますか?
1Gs / s * 10ビット/サンプル= 10Gbits / s
これらはUSBの速度ではありません。それから遠い。そして、オーバーヘッドも考慮しませんでした。まず、帯域幅がありません。また、帯域幅だけではありません。リアルタイム表示のためには、一貫性が必要です。10ナノ秒ごとに100ビットをアプリケーション層に転送する必要があります。そのような一貫性はUSBからは得られません。これは、1つのデバイスに大量の要求を満たすようには設計されていません。バスとして設計されています。また、バスを所有するタイミングを制御することはできません-デバイスは単なるスレーブです。データを送信する必要があるときにホストが別のデバイスと通信できるようにすると、データは失われます。
あなたは悪口を言っているかもしれません-人の「リアルタイム」が60Hzのときにリアルタイムデータをコンピューターに転送するのはなぜですか?表示を更新するだけであれば、それほど多くのデータは必要ありません。あなたを除いて-あなたのディスプレイはあなたが集めたすべてのサンプルの線形結合です。平均、最小二乗近似、三次スプライン補間-それは重要ではありません。単なるドットの集まりではない、すてきなきれいなディスプレイを作成するには、そのデータのほとんどを必要とし、それを後処理する必要があります。トリガーはありますか?計算はホスト上、つまりアプリケーション層で実行する必要があります。どのようにスライスしたとしても、1GS / sレートでリアルタイム表示を行うのに十分な精度を実現するには、USBが処理できるよりも桁違いに多くのデータを転送する必要があり、それをより確実に行う必要があります」
これを回避する方法は何ですか?リアルタイム表示をしないでください。一部のUSBスコープは、トリガーモードのみを提供します。トリガーはデバイスで処理され、トリガーが見つかると、データがバッファーに収集されます。バッファがいっぱいになると、USBスコープはそれをゆっくりとアプリケーションに転送し、アプリケーションがそれを表示します。多くのスコープの使用にはこれで十分ですが、リアルタイムではありません。そして転送-それにも時間がかかります。不便です。そして、通常、ドライバーは吸います。私が悪い経験をしたことがわかります。
なぜFirewireがスコープに使用されなかったのかといつも思っていました。USBの頭痛の種のいくつかを回避します。ピアツーピアであり、アイソクロナス(一貫したタイミング)モードを提供し、比較的高い帯域幅です。それで10MHzのリアルタイムスコープを作成できるかもしれません。
編集後にポイントに対処するには:
スコープの使いやすさは、価格とともに飛躍的に向上します。200ドルのUSBスコープから500ドルのスタンドアロンにジャンプすると、機能と基本機能が大幅に増加します。 本当のスコープをもう少し取得できるのに、なぜわずか200ドルしか使わないのですか? 中国が安価で効果的なスコープの水門を開いた今、後であなたをイライラさせる300ドルを節約したい理由はほとんどありません。これらの機能を備えた「派手な」スコープは、今日では安価です。
はい、USBを使用すると、60Hz程度の一貫性のあるデータのみを提供するようにデータ転送を制限する方が簡単ですが、それでもまだやりたいことではありません。DSPクラスを忘れないでください-ストリームから特定のデータを取得するだけでデシメーションになります。間引きするときは、アンチエイリアスフィルターを追加する必要があります。そうすると、帯域幅が失われます。これにより、スコープの有用性が低下します- リアルタイムディスプレイの帯域幅を制限します(リアルタイムの場合のみ-トリガーモードでも構いません)が、アナログフロントエンドの帯域幅よりはるかに小さくなります。オシロスコープの信号処理の側面を管理するのは難しい仕事です。
レスポンシブディスプレイをクリアしますか?PC?一貫していない。これを行う方法に関係なく、データをバッファリングする必要があります。前に言ったように、USBはデータがいつ通過するかを保証しません。言い方を変えます。USBは、ハードリアルタイムデータ転送に対応するように設計されていません。 確かに、十分な少量のデータを大きな間隔で使用すると、ある程度のパフォーマンスが得られますが、一貫したパフォーマンスは得られません。バッファリングを使用しますが、バッファをタイムリーに転送できない場合があります。その後、表示がスキップしたり、データが古くなったりするなど。クリアで応答性の高いリアルタイム表示には、ハードリアルタイムのデータリンク、期間が必要です。
単純なトリガー-繰り返しますが、コスト対複雑さ対レスポンシブに戻ります。トランジェントを検出するためにデバイスでトリガーを実行するために、デバイスは、USBを介して無責任にサンプルを転送する単なる無意味なデータパイプではありません。デバイスでサンプルをバッファリング、バッファリング、バッファリングする必要がありますトリガー条件が表示されるまで。つまり、デバイスにメモリとインテリジェンスが必要です-大型FPGAまたは大型マイクロコントローラーのいずれかです。それはサイズとスペースを追加します。FPGAを使用する場合、トリガーロジックの量と、バッファスペース用の大量のRAMの必要性とのバランスを取る必要があります。そのため、バッファはすでにあるよりも小さくなります。つまり、トリガーポイントの周りでごくわずかなデータを取得できます。外部メモリを追加しない限り、さらに多くのことができます。ただし、デバイスのサイズとコストが増加します-これは、USBケーブルが接続された単なるプローブではありません。
幸運なことに、100MHzの帯域幅を取得できます。通常、サンプリングレートの10倍が帯域幅の最小カットオフと見なされます。そのため、サンプリングレートが1GS / sで、100MHzの帯域幅がほとんど得られない場合。これ以上は得られません-200MHzの方形波は200MHzの正弦波のように見えます。ひどい。それは馬鹿げている-それはプロのレベルに近いどこにもありません。
他のポイントセット:
- 200ドル?どのように考えますか?部品リストとは何ですか?
- 高速信号を読み取るための適切なスコープは、数千ドルもかかりません。彼らは多分千ドルかかります。100MHzはスコープ部門での子供の遊びであり、あなたのアイデアはそのベンチマークと$ 1000スコープさえも満たさないでしょう
- はい、あなたがそれを説明する方法から、それは確かに非常に制限されるでしょう。あなたが持っているいくつかの要件の技術的側面は、非常に限られたデバイスを意味します。
- ロジックアナライザと60MHzのアナログ帯域幅で購入した1100ドルのスコープほど有用ではありません。意図的に制限された子供用のおもちゃとぶらぶらするテスト機器にお金を払いたいです。
あなたはエンジニアとしてテスト機器で生きて死にます。あなたがそれを信頼できると確信していないなら、あなたはあなたの時間を無駄にしている。高速通信、信号処理、および組み込み処理(FPGAまたはマイクロコントローラー)の能力について示した専門知識の不足を考えると、自分で設計することを望んではいません。アンビバレント以外。
コミュニティの実際のニーズに応えられなかった、より的を絞った要件のセットがあった場合、技術的に実現可能であることがわかりました。しかし、あいまいな要件は調査されていないようです。あなたは愛好家のために利用可能なオプションの調査を行う必要があります-どのUSBスコープとスタンドアロンが人々が使用しているか、その長所と短所は何か、そしてニッチが満たされていないかどうかを判断する必要があります。それ以外の場合、これは単に空想です。