■はじめに | ||||||||||||||||||||||||||||||||||||||||||||||||||
■Terminatorに対する不満 | ||||||||||||||||||||||||||||||||||||||||||||||||||
Asus Terminatorやキューブ型の PC では,筐体内のベイ数や拡張カード用
のスロット数に制約があるため,その拡張に制限が付きまといます.例えば
Terminator にディスクを増設したいと考えた場合,ベイ数の制約の関係で
物理的に4台までしか内蔵できません.そして外付けのデバイスを使用したい
と考えた場合,オンボードで搭載しているインターフェイスとして USB が
利用可能ですが,Terminator TU のような初期の機種の場合,最高で 11Mbps
しか出ない USB1.1 しか利用できません.また,最近の機種の場合は最高で
480Mbps のスピードを持つ USB2.0 が搭載されていますが,Terminator2
以外の機種の場合,SiS チップセットを使用している関係で,一部 USB 機器
(私の場合,スキャナで引っかかりました)との間で相性問題が発生します. また,最近のキューブ型 PC では,オンボードで IEEE1394a を搭載している 機種が大半であるような印象を受けますが,Terminator シリーズは搭載して いません.IEEE1394a は最大 400Mbps の速度が出ます.カタログ値では USB2.0 よりも低速ですが,経験的に IEEE1394aの方が CPU 負荷が軽く,また,通信速度も USB2.0 よりも出ます.また,IEEE1394 専用 のデバイスも多く存在し,例えば DV カメラのようなデバイスを接続しようとした 場合は必須になります.Asus のベアボーン キットである Pundit には搭載されているのに,Terminator に搭載されていないのは残念でなりません. 改めて不満点と解決方法をまとめますと,以下のようになります.
つまり,『相性問題の発生しにくいチップを使用した USB 2.0 インターフェイス』 と『IEEE1394インターフェイス』を搭載したカードを増設すれば,とりあえず私の不満点 は解決しそうです.『え?じゃぁ2枚カードを刺さなければならないの?』と,いう 話になるかと思いますが,最近は1枚で2度以上美味しいインターフェイスカードも販売され ています.一般に『マルチインターフェイスカード』や『複合インターフェイスカード』と 呼ばれるものです.このようなタイプのカードであれば,複数の異なったインターフェイスを 1枚の PCI カードに搭載しているため,消費スロットを1本に押さえることが可能です. |
||||||||||||||||||||||||||||||||||||||||||||||||||
■USB,IEEE1394インターフェイスの簡単なおさらい | ||||||||||||||||||||||||||||||||||||||||||||||||||
何らかの機器を増設する際に,USB は非常に便利なインターフェイスと言えます.
Plug&Play で利用できるという点もさることながら,大抵の PC にオンボードで搭載
されている上,多種多様なデバイスが多くのメーカーから提供されているからです.
また,USB 1.1 は最高 11Mbps の速度しかでませんが,当初は低速なデバイスを接続
するために使用されることが多く,シリアルやパラレルの代替として考えられていたた
め, ある意味充分でした.しかし,その後少しでも高速な方が使い勝手の良いデバイス
も続々と登場しました.
ストレージ系のデバイスや,大容量のデータを転送する高解像度スキャナ等です. USB 規格もこのようなニーズを想定しており,最高 480Mbps の速度が出る USB 2.0 規格が策定されています.そして現行の PC の殆どに搭載されています.高速な通信が 求められるデバイスは USB 2.0 対応の製品として販売されることが多いわけですが, USB 2.0 は USB1.1 と下位互換性を持たせているため,USB1.1 インターフェイスに接続 した場合でも,『USB 1.1 デバイス』として利用可能になって います.つまり,スピードにさえ目をつぶれば,使えないことは無いということです(一部 の転送速度にシビアなものを除く). そして別の方面に目を向けてみますと,当初は DV カメラを接続する インターフェイスとして見られることが多かった IEEE1394 も,IEEE1394aでは 最高 400Mbps でしたが,IEEE1394b では最高 800Mbps の通信が可能になっており (規格上では1.6Gbps, 3.2Gbpsがある),そして対応デバイスも, 最近はマルチメディア系やストレージ系等,多くの製品が販売されています. ちなみに i.LINKやFireWire と呼ばれる場合もありますが,同じ物を指します. なお,IEEE1394bはまだそれ程普及しているとは言えません.一応 IEEE1394a 用 機器はIEEE1394bインターフェイスに接続して使用することが出来ますが,コネクタ の物理形状が異なるため,接続の際には変換コネクタやケーブルが必要となります. 普及率が低いことが原因であると思いますが,変換ケーブルは現在高値安定 しています.下手をしたらインターフェイスカードよりも高く付くことも…. このような背景もあり,今すぐに使いたいということでなければ,現在あえて 将来を見越して IEEE1394b を搭載する必要は無いと言って良いと思います. これらインターフェイスを実際に使用する上で考えなければならないことは, その性能とコストパフォーマンスです.詳しい技術的な話は割愛しますが,手軽に そこそこの性能を求めるのであれば USB 2.0を.多少割高になっても良いので性能を 求めたいということであれば,IEEE1394を選択するのが良いでしょう.インターフェイス カード自身の価格は殆ど変りませんが,ケーブルや Hub/リピータ 等をはじめとする IEEE1394 用の周辺サプライは割高です. |
||||||||||||||||||||||||||||||||||||||||||||||||||
■TU1号機での問題 | ||||||||||||||||||||||||||||||||||||||||||||||||||
私の所では,Terminator TU 1台(以下,TU1号機)に Linux を入れ,各種
サーバとして使用しています.このマシンには TV チューナーカードおよび
SCSI カードを刺していますが, TV 録画サーバとしても利用している
ため,チューナーカードを抜くことは出来ません.そして SCSI カードは
DDS3 テープドライブが接続されており,使用
頻度もそこそこあります.とは言え,これら2枚のカードのうち,抜ける
としたら SCSIカードの方です.最悪別マシンにテープドライブを繋げて
リモートで利用するという手もあります.この問題の解決に関しては,
アレコレ試行錯誤した後に,別の手段を採用することにしました(後述). そしてオンボード USB 1.1 には USB 外付けディスクを接続し,バック アップデバイスとして使用しています.しかし,転送速度が遅い他,利用時の CPU 使用率が半端でないため,かなりの忍耐が必要な場合があります.ちなみに この変換 ケースは USB2.0 に対応しているため,PC 側に USB 2.0 インターフェイスを 用意して繋ぎ替えれば,これら2つの問題が一気に改善される可能性があります. また,この USB 外付けディスク以外に, IEEE1394a/USB2.0 のデュアル インターフェイス搭載の外付けディスクのガワが手元に1つ余っています. もし,IEEE1394a で接続した際に良好な結果が出たとしたら,こちらをバックアップ用の外付け ディスクとしてメインで利用するという手もあります. と,このように,これまでフツフツと感じていた不満点が,今回の USB2.0+IEEE1394 カードの搭載により,一気に解決する可能性が出てきました.問題は Linux の 対応状況です.以前,Kernel 2.4.19 辺りでは USB が不安定であったこともあり,少々気になる所です.特に IEEE1394 は初めての トライになることもあり,やや不安を感じます… |
||||||||||||||||||||||||||||||||||||||||||||||||||
■マルチインターフェイスカードあれこれ | ||||||||||||||||||||||||||||||||||||||||||||||||||
■玄人志向 USB2.0+1394PCI | ||||||||||||||||||||||||||||||||||||||||||||||||||
実際に導入したのは2002年の9月からなのですが,本コンテンツを書いてアップしようと
思いつつ既に2年近く経過してしまいました.その間にカードのリビジョンがアップされ,
そして現在は『旧製品』となっています.ちなみにメーカーの商品ページは
こちらです.
使用してみたところ非常に調子が良かったため,半年ほどしてから追加で2枚ほど 同じカードを購入しました.すると,型番が同じで外箱から判断が付かないのですが, 若干設計が変更になっていました.
バスパワー給電用の電源コネクタが無くなっているため,バスパワー を使用する機器を沢山接続すると何かしらの問題が発生するかもしれません. ケーブルを1本接続しなくて済みますので(前のリビジョンでも接続しないという 選択肢がありますが),取り付けという意味では楽なのですが. そして以下は Terminator では使用しませんでしたが,USBやIEEE1394のケーブルを フロントから抜き差し出来るようにするアダプタ付きの製品です.ベイを1つ消費しますが, 機器の繋ぎ替えをよく行う場合には,このような製品の方が便利かもしれません.
|
||||||||||||||||||||||||||||||||||||||||||||||||||
■玄人志向 GIU2-PCI | ||||||||||||||||||||||||||||||||||||||||||||||||||
話は前後しますが,現在私が Terminator で使用しているカードです.USB2.0とIEEE1394a
の他に,Gigabit Ethernet インターフェイスも付いています.メーカーの商品ページは
こちらです.
I/O Data やシステムワークスが同機能のカードを出してきていますが,値段を 見てこれを購入.実はシステムワークスのスゴイカード(SGC-52UFG)では, Gbit Etherに RTL8169S, USB2.0 に NEC uPD720101, IEEE1394 に TI TSB43AB23, PCI ブリッジに TI PCI2250PCM を使用しているとのことでしたので『性能が良さそう だな』と,非常に気になってはいたのですが,値段には勝てず….余程性能に不満 を抱えたら買い換えようという気分で GIU2-PCI に行ってみました. なお,度々『PCI ブリッジチップが…』といった説明をしていますが, USBやIEEE1394等のカードに乗っている各コントローラは,使用されている 『PCI to PCI ブリッジチップ』を介して接続される形になります.そのため, このブリッジの性能が悪いと,例えその先に接続されているコントローラの 性能が高いとしても充分にそのパフォーマンスを発揮できません.そのため, マルチインターフェイスカードを購入する際には,使用されているコントローラ チップだけではなく,PCI ブリッジチップの型番もチェックするようにしておいた 方が良いでしょう.特に Gbit Ethernet のような高速な通信が必須な機能を 搭載している場合は,確認しておいた方が良いと思います. |
||||||||||||||||||||||||||||||||||||||||||||||||||
■使用してみる | ||||||||||||||||||||||||||||||||||||||||||||||||||
■Windows で使用してみる | ||||||||||||||||||||||||||||||||||||||||||||||||||
Windows 2000 を使用しているのであれば,SP4 適用済みの場合,上記カードで
新規にドライバをインストールする必要はありません.基本的に一通りのものが
自動認識されます. さて,実際に使用してみた結果ですが,導入した Terminator TU, K7DDR 共に 相性問題などのトラブルもなく,拍子抜けするほどあっさりと無事に動作しました. また,早速試した DV カメラ(SONY DCR-PC120)からの動画取り込みも問題なし. IEEE1394 接続の TV キャプチャBOXである I/O data GV-1394TV (リンク先はマイナーバージョンアップした後継機種)も繋がり,TVも視聴&録画 できました. そして気になる互換性ですが,K7DDR のオンボード USB2.0 では正常に 動作しなかった(古いドライバでは USB1.1のスピードしか出ず,新しいドライバ では認識すらされなかった) Canon LiDE50 が,USB2.0+IEEE1394-PCI に接続することにより,問題なく動作するようになりました. これで私が抱えていた問題および,とりあえず行いたいと考えていた事柄が一通り 解決しました. 次にパフォーマンスを見てみようということで,手持ちの 外付けハードディスクを接続し,USB2.0 および IEEE1394 で接続した際の スピードを確認してみました.なお,ベンチマークは HDBENCH 3.22 (Data:20MB)で 行いました.なお,測定条件にいくつか『なぜこの条件で調べてないの?』のような 抜けがありますが,ご容赦を…
A:NOVAC 3.5" HDDはい〜るKIT Dual + 5A250J0(3.5inch 5400rpm IDE HDD) B:MSA GXM-25U + IC25N040ATCS04(2.5inch 4200rpm IDE HDD)
上記の結果から,以下のことが言えます.
結論として,USB2.0の場合はパフォーマンス的にはオンボードが高速.拡張 カードでも,VT6212はそれに迫る.IEEE1394aはUSB2.0よりも高速.ということ が言えます. なお,GIU2-PCI では,起動時に希に USB 機器を認識しない場合がありました. 対処療法ですが,デバイスマネージャーで USB ドライバを一旦削除し,再起動して 再度読み込ませることにより,使用できるようになります. |
||||||||||||||||||||||||||||||||||||||||||||||||||
■Linux で使用してみる[認識] | ||||||||||||||||||||||||||||||||||||||||||||||||||
それでは,個人的に最も期待していた Linux(Vine2.6r4相当)@TU1号機 での
動作検証をしてみます. まず,USB2.0+IEEE1394-PCI を取り付けてブートしてみますと,とりあえず USB インターフェイスに関しては自動認識しました.そしてデバイスを接続すると, 『ピッ』という心地良い音と共に自動認識します.完璧です…と,思ったのも 束の間,実は必要なドライバが読み込まれておらず, USB2.0 として動いて いませんでした.そこで『modprobe ehci-hcd』 を手動で実行すると USB 2.0 で動作し始めました. 次に IEEE1394 ですが,こちらは自動認識されませんでした.そこでこちらも 手動でモジュールを読み込ませてみます.modprobe で,ohci1394 と ieee1394 を読み込ませればOKです.追加で raw アクセスするためのモジュールおよび, ストレージクラスのデバイスを使用する際に必要となるモジュールも読み込ませ ました.一連のモジュールを読み込ませると,無事に認識するようになりました. 最終的に,/etc/rc.d/rc.local に以下の行を追加し,起動時に必要な モジュールを読み込ませるように設定しました(murasaki の設定を いじった方が良いのかも…).
基本的にはこれで使用する準備はOKなのですが,実際に使ってみた所,USB2.0に 関し,Kernel 2.4.21 ではデータ転送が激しく発生すると(即ち,ディスクを使用 した際に,大きなファイルを継続的に書き込みを行うと)USBがハングするという症状 が発生しました.そして Kernel2.4.26にアップデートしたところ,この症状はピタリ と収まりました.そのため,現在は kernel 2.4.26 で使用しています. そしてカードを認識させた後で確認しますと,以下のようになります(TU1号機に GIU2-PCIを接続時.オンボード USB も enable).
USBデバイスの"Spd="の値を見て頂くとお分かりのように,拡張カード側の スピードが 480bps になっていることからも,きちんと USB 2.0 として 動作していることが分かります. また,オンボードのシリアルおよびパラレル,NIC を BIOS で disable にし, GIU2-PCI を PCI スロットの下側に刺した場合の割り込み(IRQ)は以下のように 設定されます.Terminator の場合,BIOS で PCI カードの IRQ を手動設定 可能ですが,上側スロットは単独利用出来るように設定可能のようですが, 下側スロットは必ずオンボードのオーディオとシェアするようになっているようです.
なお,GIU2-PCI に搭載されている Gigabit Ether の認識に関しては,別ページにて解説 することにします. |
||||||||||||||||||||||||||||||||||||||||||||||||||
■Linux で使用してみる[ストレージを使う] | ||||||||||||||||||||||||||||||||||||||||||||||||||
詳しい利用方法に関しては別ページ
で解説を行います.ここでは,ディスクの認識の
させ方と注意点に関して簡単に説明を行います. まず,IEEE1394接続のストレージですが,プラグした際に正常に認識されると, 『ピッ』というビープ音が鳴ります.この後で以下のようにコマンドを叩きます.以下は CENTURY Good Faith twin をスタンダードモード(内蔵したディスクを別個のディスクとして アクセスするモード)で接続した場合の例です.
この『scsi add-single-device 0 0 0 0』の数字は,先頭から ホストアダプタの番号,ホストアダプタ上のSCSIチャネル,デバイスの SCSI ID,デバイスの LUN を意味します.つまり上記の例では,『ホストアダプタ, チャネルが0上の SCSI ID が 0と1のデバイスを接続します』という意味に 意味なります.ただしここで注意が必要なのですが,SCSI カードを使用して いる場合は 一意に『SCSI ホストアダプタ』番号が決まりますが,IEEE1394 や USB を使用する場合,認識された順番に『SCSI ホストアダプタ』番号がカウント アップ(インクリメント:+1)され,SCSI ID も同様に接続順で 0からの数字が 割り当てられます.即ち,同一のデバイスであっても,プラグした順番によって 番号が変ってきますので注意.そして当然ながら sd? の "?" の番号も,認識 順によって変化します. 次にUSB 接続のディスクですが, USB storage class に対応した機器の場合は,(Vine の場合)murasaki が良きに 取り計らってくれるので,プラグすれば即使えるようになります.以下はプラグ した際に表示されるメッセージです.
ワーニングが出でいますが,気にしない :-) このように IEEE1394, USB2.0 のデバイスを認識させると,sda〜sdcとして利用 可能な状態になりますので,後は普通に mount して使用することができます.なお, 上記の例ではいずれのディスクもパーティション分けやフォーマットが終了済みです. そのため,sd?1 というパーティションが認識されています.パーティション分け 等がまだであれば,sd? として認識された 段階で, fdisk や mke2fs (-j 追加で ext3 でフォーマット)等を実行してください. この状態で /proc/scsi/scsi を cat すると,現在 SCSI に接続されている 機器の一覧を表示できます.
前述の説明の通りの順番で接続した場合,IEEE1394 ストレージが ホストアダプタ:scsi0 配下に 接続されており,USB2.0 ストレージは ホストアダプタ:scsi1 配下に接続されている ことが分かります. 次に利用を終了し,ケーブルを抜く/デバイスの電源を切る際の手続きですが, まずは必ず umount してください.次に USB デバイスはそのままケーブルを抜けば/ デバイスの電源を切ればOKです.IEEE1394 デバイスの場合は,以下のようにコマンドを 実行してからデバイスを外す必要があります.
※hotplug の設定をきちんとしておけば,一連のコマンドは叩かなくても良い ような気がしますが.現在きちんと設定を見直していません :-) |
||||||||||||||||||||||||||||||||||||||||||||||||||
■SCSI接続 DDS3 テープドライブを USB で接続 | ||||||||||||||||||||||||||||||||||||||||||||||||||
前述したように,今回 TU1号機の SCSI カードは抜くことになりました.そのため,
このカードに接続されていた DDS3 テープドライブを別の手段で利用できるように
しなければなりません.一番手っ取り早そうなのは USB-SCSI 変換アダプタを使用して
接続する方法ですが,巷で売られている殆どの USB-SCSI 変換アダプタは Windows/Mac
専用品であり,メーカー製の専用ドライバでなければ動作しません.そのため,Linux で
動かすことは絶望的に困難です. ところが,RATOC から Mass Storage モードで利用できる変換 アダプタが販売されているのを発見. このページ を見てしばらく迷いましたが,通販ページでクリックすることにしました.
なお,Linux で U2SCX を用いてテープドライブやスキャナを接続する場合は,一度 Windows に U2SCX を接続し,同梱されているユーティリティソフトで動作モードを 『Mass Storage Mode固定』に設定する必要があります.デフォルトではディスクが接続 された場合は USB Mass Storage モードになり,その他のデバイス/複数デバイスが接続 された場合,RATOC のドライバが必要となる専用モードとして動作します.この専用モード は Linux からは使用出来ません.そのため,自動認識を行わず,どのようなデバイスが 接続された場合でも, Mass Storage モードとして動作するように設定するということです.設定情報は U2SCX 上の FlashRAM に書き込まれますので,1度設定を行えば OK です. その他にも,U2SCX には LUN 対応の製品が使用できないなど,いくつかの制約事項 があります.詳しくはマニュアルを参照して下さい. 後はプラグすれば自動的に murasaki が良きに取り計らってくれ,st デバイスとして 使用可能になります(stとして使えなかった場合,sg や st モジュールを予め読み込ませて おくこと).呆気ないほどあっさり動いてしまい,拍子抜けするほど.ちなみに USB2.0 を 必要とするほどデータ転送量はありませんので(約 1[MB/sec]),オンボードの USB1.1 に 接続することにしました.
早速ガリガリ使用してみたのですが,mt や tar 等のコマンドがそのまま利用でき, SCSI カードに接続しているときと同じように利用できました. |
||||||||||||||||||||||||||||||||||||||||||||||||||
■まとめ | ||||||||||||||||||||||||||||||||||||||||||||||||||
今回,IEEE1394a および USB2.0 という汎用的かつ高速なインターフェイスの
追加/増設を行いました.そしてこれまで抱えていた不満を一通り解消できたため,大変
満足しています.特に不安を感じていた Linux での動作も問題ありませんでした. 拡張に対して 様々な制約のある Terminator においても,これらインターフェイスを使用して 各種デバイスを接続可能にする道が開けたことで,今後もかなりの長期間 利用し続けることができそうです. ある意味,本体内の拡張で充分用途を満たしている場合はあまり興味の湧かない 拡張ではあると思いますが,私と似たような不満を抱えている方はお試しあれ. 特に最近は,インターフェイスカードが非常に廉価になって来ており,懐的にも 優しい拡張方法だと思います. |