USB による
CAMAC データ収集- 次世代DAQシステムへの応用は可能か オンライングループ
仲吉一男<kazuo.nakayoshi@kek.jp>

発表内容• 開発の背景、目的• シリアルリンク技術動向• USBの概要• USB-SCSI CAMAC DAQ System• TOYO CC/7700用USBアダプタ• まとめ、今後の予定
15 Feb. 2002

平成13年度

技術交流会

2

開発の背景• オンライングループはシリアル転送を用いた次世代データ収集システムを検討中– フロントエンド回路に十分なメモリを持つことにより、デッドタイムの小さいシステムを構築– フロントエンド回路と計算機はシリアル接続でデータの転送を行う。クレートのバスはデータ転送経路として用いない
15 Feb. 2002
平成13年度

技術交流会

3

CPUMEMBus
Bridge

MEM

MEM

PC/WS

CAMAC/VME
15 Feb. 2002

PCI bus

ADC/TDC

Detectors

ADC/TDC

次世代DAQシステム

平成13年度

技術交流会

4

開発の目的• USBがDAQシステムで使えるかどうか検証する– USBの調査・評価– Linux USBデバイスドライバの開発• USBの特徴を生かしたポータブ
ルDAQシステムを構築する
15 Feb. 2002

平成13年度

技術交流会

5

シリアルリンク技術動向• Network 分野
Gigabit Ethernet: 1Gbps• Interface 分野
IEEE1394a: 400Mbps
IEEE1394b: 3.2Gbps
USB1.x: 12Mbps
USB2.0: 480Mbps
IEEE1355.2: 400Mbps
15 Feb. 2002

平成13年度技術交流会

6

USBの概要• 新しいPC周辺機器のインターフェイス
USB1.0(’96), USB1.1(’98), USB2.0(2000)• ホストを頂点とした厳格なヒエラルキー• Low/Full/High speed(1.5/12/480Mbps)• １つのホストに127台の装置が接続可能• ホットプラグに対応• バスから電源供給可能
15 Feb. 2002

平成13年度技術交流会

7

USBの通信プロトコル• パケット：転送の最小単位• トランザクション：ホストによりスケジューリングされる単位で複数のパケットから構成される• フレーム：ホストにより1ms(125μs)
毎に作られ、複数のトランザクションから構成される

15 Feb. 2002

平成13年度

技術交流会

8

パケット、フレーム、トランザクション
SOF

フレーム（1ms,125us）

トランザクション
SOF

SETUP

DATA0

ACK

フレーム

トランザクション

IN

DATA1

ACK

パケット
15 Feb. 2002

平成13年度技術交流会

9

USBの転送モード• コントロール転送: ホストからデバイスへコマンドを送るための特殊な転送• インターラプト転送: キーボード、マウス等で使用を想定、一定周期で少量のデータ転送• アイソクロナス転送: データの転送幅を保証、転送時間保証、エラー保証なし• バルク転送: バスが空いていればデータ転送幅利用可能、転送時間保証なし、エラー
15 Feb. 2002
平成13年度 技術交流会
10
保証

DAQ SystemにおけるUSBの利点• PCとの接続が容易- PC 側ではインターフェイスを準備しなくてよい• プラグ＆プレイによる柔軟なシステム構
築– 必要な時に接続して使える• データ転送速度は速い(USB2.0:480Mbps)• USB対応デバイスの開発は比較的簡単
15 Feb. 2002

平成13年度技術交流会– USB対応CAMAC/VME モジュール等

11

DAQ SystemにおけるUSBの問題点• USB1.x の 転送のオーバヘッドは大きい– ミリ秒オーダ• 現時点ではUSBデバイスからホストへ通信する手段がない(USB2.0に期待)• USB Cable の長さの制限は大丈夫か？
– 最大長は 5m• 個々のデバイスドライバは、開発が必15 Feb. 2002
要
平成13年度 技術交流会
12オンライン/エレキグループのUSB DAQ 開発• USB-SCSI CAMAC DAQ System– USB導入のための準備/ノウハウの蓄積– ハードウエア開発なし、Portable ＤＡＱ焦点– Linux デバイスドライバ開発• TOYO CC/7700用USBアダプタ– 既存CC/7700への応用– ハードウエア/ソフトウエア開発
15 Feb. 2002

平成13年度技術交流会

13USB-SCSI CAMAC DAQ System
PC（USB) USB-SCSI 変換

Kinetic 3929

CableUSB
15 Feb. 2002

USB-SCSI
平成13年度

技術交流会

SCSI-CAMAC

14

システム構成（ソフトウエア）•Linux（Kernel 2.4.0 以降）•USB-CAMAC Device Driver•CAMAC ライブラリ
USB-CAMAC Device Driver と CAMACライブ
ラリの開発は技術部専門研修「VME/CAMACデバイスドライバ開発」で行った
15 Feb. 2002

平成13年度技術交流会

15Linux USB Device Driver・ USB Core Driver・ USB H.C. Driver・ USB Device Driver・ USB Class Driver

HID

MASS CAMAC

USB Core Driver
Host Controller Driver

Mouse
15 Feb. 2002

平成13年度

技術交流会

HDCAMAC16

USB-CAMAC Device Driver
CAMACコマンドに対応したCDBを作る

USBコントロール転送でCDBを送信

USB BULK転送でCAMACデータを送/受信

15 Feb. 2002

平成13年度

技術交流会

17CAMAC シングルアクション性能

15 Feb. 2002

16bit

24bit

Read(ms)

５５Write(ms)５５

平成13年度

技術交流会

18

CAMAC ブロック転送性能
CAM AC BLOCK Transfer Speed
900

Speed(Byte/sec)

800
700
BLOCK R EADBLOCK W R I TE

600
500
400
300
200
100
00

15 Feb. 2002

10000

20000

Data Size(Byte)

平成13年度

技術交流会

30000
19

CAMAC ブロック転送性能
Speed(KB/s)Overhead(ms)
Read

919

５Write923

５15 Feb. 2002

平成13年度技術交流会

20

USB-SCSI CAMAC System

15 Feb. 2002

平成13年度

技術交流会

21東陽CC/7700用USBアダプ
タ• USB-SCSI CAMAC System は高価– USB-SCSIケーブルは安いがK3929 は高い• 既存のCC/7700に取付けUSB接続可能– オンラインと東陽テクニカで仕様を決定– アダプタのプロトタイプを東陽が作製– Linuxのドライバをオンラインで用意
15 Feb. 2002

平成13年度

技術交流会

22

TOYO CC/7700用USBアダプタ• プロトタイプ構成– USB Controller: Cypress EZ-USB– CPLD: Xilinx（超低消費電力タイプ）• 基本コンセプト– コンパクトにする– 電源はUSBバスから供給

15 Feb. 2002

平成13年度技術交流会

23USB-CC/7700アダプタ・プロトタ
イプ

15 Feb. 2002

平成13年度技術交流会

24

USB-CAMAC Device Driver
CAMACコマンドに対応した構造体を作る

USB Bulk転送でコマンドを送信

USB BULK転送でCAMACデータを送/受信

15 Feb. 2002

平成13年度

技術交流会

25

CAMAC シングルアクション性能

15 Feb. 2002

16bit

24bit

Read(ms)

1.5

1.5

Write(ms)

1.5

1.5

平成13年度技術交流会

26

Speed(KB/s)

CAMAC ブロック転送性能
200
180
160
140120100
806040200

BLOCK READBLOCK WRITE

ryain

milre

P
0

15 Feb. 2002

10000
20000
Data Size(Byte)
平成13年度

技術交流会

30000

27

CAMAC ブロック転送性能
Speed(KB/s)Overhead(ms)
Read

188

5.3

Write

180

5.5

15 Feb. 2002

平成13年度技術交流会

28

USB-CC/7700アダプタ・プロト
タイプ

15 Feb. 2002

平成13年度技術交流会

29

USB-CC/7700アダプタ製品版• USBコントローラをより高性能品へ変更– ブロック転送性能の向上• コンパクトな形状– SCSI-USB ケーブルのような形状– 取り扱いが容易• 今年4月製品化予定
15 Feb. 2002

平成13年度

技術交流会

30

まとめ(1)• KEKオンラインでは、DAQシステムへのシリアルリンク導入の準備として USB を評価中
• Portable USB-CAMAC DAQシステムを構築– K3929 + SCSI-USB ケーブル
• シングル転送： 5ms• ブロック転送： 920KB/s– 東陽CC/7700 + USB アダプタ
15 Feb. 2002

• シングル転送：
平成13年度1.5ms
技術交流会• ブロック転送： 180KB/s

31

まとめ(2)• USB1.xのデータ転送はmsのオーダーのオーバヘッドがある• オーバヘッドのためシングル転送は不利であるが、転送自体は速いのでブロック転送は実用可能• 構成によってはUSBを用いたDAQシステムは実用可能
15 Feb. 2002

平成13年度

技術交流会

32

今後の予定• USB2.0 を Linux で評価する• これまでホストとデバイスの１対１のテストは行った。次は HUB を使ってデバイスの数を増やしテストを行う

15 Feb. 2002

平成13年度

技術交流会

33

References• VME/CAMACデバイスドライバ開発専門研修WEB
http://onlax2.kek.jp/~yasu/Kenshu/• User’s Guide for USB-CAMAC Library
http://onlax2.kek.jp/~nakayosi/USB/uguide/uguide.html• Technical Description of USB-CAMAC Device
Driverhttp://onlax2.kek.jp/~nakayosi/USB/tech/usb-scsi.html• 開発メモhttp://onlax2.kek.jp/~nakayosi/USB/usb-camac.html
15 Feb. 2002

平成13年度

技術交流会

34

15 Feb. 2002

平成13年度

技術交流会

35

CC/7700用USBアダプタ仕様• CAMACシングル転送、ブロック転送サポート• USB転送はオーバヘッドの小さいBULK転送を使う

15 Feb. 2002

平成13年度技術交流会

36

USB2.0で割り込みは可能か• USB規格の標準化団体、ユニバーサル・シリアル・バス・インプリメンターズ・
フォーラム（USB-IF）は2001年12月18日（米国時間）、PCを介することなくポータブルタイプの周辺機器同士をUSB接続する「USBオン・ザ・ゴー」（OTG）を発表した。USB2.0の補足仕様として提供する。
15 Feb. 2002

平成13年度

技術交流会

37