The BAQ/Data Acquisition/DAQ Module/SIS3301
もどる
SIS 3301 8ch 100MHz Flash ADCを使ってみる
SIS 3301 FADCの機能を紹介し、今後の可能性とテスト結果を紹介します。
特徴 / 機能
- 8ch input
- 105 MHz sampling
- Input voltage -2.5 -- 2.5 V
- Resolution 14 bit (0 -- 16384)
- Memory 128Ksample/ch = 256KB/ch (x2)
- Internal(=105MHz) / External clock
- Single / Multi event
- N sample averaging (複数のサンプルを平均化)
- Pre/Post trigger
- 2 independent memory banks (double buffering)
- Trigger generation
収集モード
Event
[Single
Event]と[Multi Event]モードを選べる。 [Multi Event]ではTriggerがかかる度に自動的にSamplingを行なう。
Sampling
Samplingを開始するのに、外部からTrigger信号を入力させるか、あらかじめ
Thresholdを設定しておき、Threshold
以下/以上の場合にSamplingを開始させることができる(autostart)。
通常使うと思われる、外部からTrigger信号を入力する場合は、[Start/Stop]と
[Gate]の2種類がある。 [Start/Stop]はNIMのLogic PulseをStart時とStop時に2発入れる。Startと
StopのPulseの間中Samplingしている。 [Gate]は一般的なADCのGateと同じようにNIMのGateが入っている間中
Samplingします。
また、[Start delay] / [Stop delay]の機能があり、 Start Pulse(Gate leading
edge)、Stop Pulse(Gate trailing
edge)を指定したClock数だけ実際の入力よりもそれぞれ遅らせることもできます。
Memory
データをMemoryに蓄える時に[Single shot]と[Wrap]モードが使えます。
[Single shot]では最大128Ksample取ると自動的にSamplingが終了します。
[Warp]ではMemoryをring-bufferのように使い、Memoryの最後までたどり着くと自動的にMemoryの先頭からどんどんデータを上書きしていきます。
便利なこと
WrapモードでTrigger後入れ
[Warp] + [Start/Stop]モードで、あらかじめStart
Pulseを入れておき常に Samplingしている状態で後からStop Pulseを入れてる方式を使うと、欲しい波形よりも後からTrigger(Post
Trigger)を入れることが可能です。ようするに、欲しい信号とTriggerの時間差がMemoryが上書きされる時間よりも短ければ、Analog
Delayが必要ありません。また、[Stop delay]も組み合わせると、 Triggerの前後の波形を読みだすこともできます。
このページの最後にテストの結果があります。
Multi Event / Double
Buffer
SIS3301は各chごとに2つのmemory bankを持っている。 [Multi Event]で、1つのmemory
bankに入れる最大イベント数を設定し、さらにauto bank
switch機能で自動的にbankを切替えることができる。また、bankが一杯になった時にIRQを発生させることができるので、それを期にCPUでデータを読みだすと、読み出しさえおいつけば、
dead time lessのデータ収集が可能であるはず。 (テストはしてません)
テスト結果
セットアップは写真(図1)のとおり、Function Generatorから適当な
Pulseを発生させて、SIS3301に入力しました。 SIS3301の他にRPV-130 I/O
RegisterのInterruptとOutputの機能を使いました。
|
|
図1 : セットアップ |
図2 : 入力波形とStart/Stop
Pulseの例で、黄がStart、青がStop、紫が入力波形 |
普通にとる
Function
GeneratorでPulse波形を出力させ、よく使われるADCと同じようにGateを作ってその間に欲しい波形がくるように調整してデータをとった。
[Gate]と[Start/Stop]モードで特に違いはないです。
(図3と図4では単にGate、Start/Stopと入力波形との時間関係が違うだけで、本質的に違いはないです。)
| |
図3 : Gate mode
| 図4 : Start/Stop mode |
WrapモードでPost Trigger
ここでは、Function
GeneratorでSin波を発生させて、1周期の波形を取り込ませようと思います。
あらかじめ適当な時刻にStart
Pulseを入れ、Samplingを開始しておきます。次に図5のように波形に同期させてStop Pulseを入力します。図5はStop Pulseより800
clock (8 us) 前の波形からデータを読みだしたもの。これで、Post Triggerが使えていることがわかります。
| |
図5 : 波形とStop Pulseの時間関係 : 黄が入力波形で青がStop Pulse、 Start
Pulseはこれより以前の適当な時刻に入力してある
| 図6 : Stop Pulseより8 us 前の波形を読み込んだ
|
さらに[Stop Delay]の機能で、Stop Pulseを400 clock
(4 us)遅らせて図 6と同じように800 clockデータを読み出すと図7になります。 Stop Pulseが遅らされていることがわかります。遅らせた400
clock分も考慮して1200 clock (12 us) データを読み出すと図8 になります。これでめでたくSin波が1周期とれました。
| |
図5 : Stop Delayを4 us 入れて、8 us前の波形を読み込んだ
| 図6 : Stop Delayを4 us 入れて、12 us 前の波形を読み込んだ
|
Last Update: 2005/3/15
Hidetada Baba
baba @ rarfaxp.riken.jp