Click

鈴木直美の「PC Watch先週のキーワード」
第85回:7月12日~7月16日


■■キーワードが含まれる記事名
●キーワード


7月13日

■■アップデート情報(7月13日)
http://pc.watch.impress.co.jp/docs/article/driver/

ASPI(Advanced SCSI programming Interface)
アスピ

 Adaptecが開発した、SCSIホストアダプタとデバイスドライバ間のインターフェイス規格。

 SCSI(Small Computer System Interface)は、様々なデバイスが接続できる汎用のインターフェイス規格だが、SCSIで標準化されているのは、あくまでSCSIバスの物理的電気的な仕様とプロトコルだけであり、PC上から、SCSIホストアダプタ(SCSIインターフェイス)を通じてSCSIデバイスにアクセスする手段に関しては何の規定もない。今でこそ、OSレベルで様々なAPIが規定され、ドライバ間で互換性がとれるようになっているが、PCの場合は標準外のインターフェイスであるため、標準のSCSIのBIOSなども存在しなかったのである(※1)

 ASPIは、アダプタのドライバであるASPIマネージャと、SCSIバスに接続されるデバイスのドライバであるASPIモジュール間のインターフェイスを規定したもので、MS-DOS時代のSCSIデバイスでは、BIOSに代わる標準APIとして広く利用されていた。ASPIマネージャが提供するインターフェイスは、SCSIバスを通じてターゲットデバイスとコミュニケーションを行なうためのもので、通常はデバイスドライバであるASPIモジュールがこれを利用する。しかし、標準のドライバではサポートされていない機能を利用したり、機種固有のコマンドをデバイスに直接送りたいような場合には、アプリケーション上から直接利用することもある。Windows上でも同様で、例えば、CDのオーディオトラックを直接取り込むツールなどは、Windows用のASPIマネージャ(標準で添付)のサービスを利用して、CD-ROMドライブを制御するものが多い。

(※1)製品によってはSCSI BIOSが組み込まれているが、SCSIハードディスクを標準のハードディスクBIOSで利用できるようにするのが主なサービスである。

□ASPI関連ドキュメント
ftp://ftp.adaptec.com/pub/BBS/adaptec/
□ASPI Q&A(Adaptec)
http://www.adaptec.com/support/faqs/aspi.html
【参考】
□OHCI(Open Host Controller Interface)
http://pc.watch.impress.co.jp/docs/article/971125/key8.htm#ohci


7月14日

■■元麻布春男の週刊PCホットライン
ハードディスクの最近の動向 その3
http://pc.watch.impress.co.jp/docs/article/990714/hot049.htm

PIO転送(Programmed Input/Output)
ピーアイオー

DMA転送(DMA~Direct Memory Access transfer)
ディーエムエー

 デバイス間のデータ転送方式のひとつで、CPUがデータの入出力を行なうタイプ。

 入出力デバイスのデータ転送方式には、CPUが転送制御を行なうタイプと、CPUを介さずにデバイス-メモリ間で直接データを転送するタイプとに大別でき、前者をPIO転送、後者をDMA転送と呼んでいる。

 PIOは、I/Oポートから読み出しメモリに転送(入力)、あるいはその逆(出力)の処理を、全てCPUがプログラムによって処理する。古いATA(IDE)ハードディスクをはじめとする標準I/Oの多くがこのタイプで、CPUの動作速度次第で高速な転送処理が行なえるが、CPUには処理に応じた負荷がかかる。

 一方のDMA転送は、CPUに代わって専用のコントローラが転送制御を行なうので、CPUは転送処理から開放され、負荷が低減される。ただし、パフォーマンスはコントローラ次第である。古典的なDMA転送は、PCが内蔵しているDMAコントローラ(DMAC)が転送を行なう。PCには、4チャンネル分のDMA回路を持つDMACが2個用意されているのだが、設計が古いため非常に遅く、フロッピーディスクドライブや一部のサウンドカードが利用しているに過ぎない。近代的なDMA転送は、デバイス側(コントローラ)に搭載された高速なDMACが転送制御を行なうタイプで、バスマスタあるいはバスマスタDMAと呼ばれている。現行のIDEハードディスク(※1)やPCIデバイスでいうDMAはこちらのタイプで、CPUに負荷をかけずに高速なデータ転送が可能である。

(※1)ドライブ自体は新旧様々な転送モードをサポートしているが、一般に使われている「Ultra ATA/xx」と称するタイプはバスマスタDMAである。

【参考】
□バスマスタ
http://pc.watch.impress.co.jp/docs/article/981217/key58.htm#bus_master
□Ultra ATA/66
http://pc.watch.impress.co.jp/docs/article/980903/key44.htm#Ultra_ATA/66
□Ultra DMA
http://pc.watch.impress.co.jp/docs/article/971014/key2.htm#ultaradma

バッファアンダーラン(buffer underrun)

 CD-Rの書き込みで、PCから送られてくるデータの転送速度が、書き込み速度に追い付かず、書き込みに失敗してしまうこと。

 データを受け取る側の処理速度が、送られてくるデータ速度よりも遅いために、未処理のデータがバッファから溢れてしまうことをオーバーラン(overrun)、あるいはオーバーフロー(over flow[※1])という。アンダーランはこの逆の現象で、送られてくるデータが処理に間に合わないことを意味する。

 一般的なディスクでは、転送速度が書き込み速度に追い付かない場合に書き込みをいったん停止し、データが送られてきてから再開すればよい。が、CD-Rの場合は、1つの行程(※2)が完了するまで停止することはできず、常に一定のスピードでデータを書き込み続けなければならない。なんらかの事情で途絶えてしまった場合には(※3)、このバッファアンダーランエラーとなり、書き込み中のディスクは使用できなくなる。

(※1)演算においては、ビット幅を越えて桁が溢れてしまうことをオーバーフローといい、限りなく0に近づいた小数が、精度を保てなくなる下位桁溢れをアンダーフローという。しかし、バッファアンダーランに対して、バッファアンダーフローという使い方はあまりされない。

(※2)書き込み方式によって異なり、ディスクアットワンスならディスクの最初から最後まで。トラックアットワンスなら、最小で1トラック分が1行程の書き込み単位となる。この1行程にあたる書き込み単位を、一般のディスクに近い小さな単位にしたものをパケットライトという。

(※3)他の処理で中断される可能性ももちろんあるが、Windowsの場合には何でもとりあえずため込んでいくディスクキャッシュが原因のことも多い。

【参考】
□ディスクアットワンス、トラックアットワンス、パケットライト
http://pc.watch.impress.co.jp/docs/article/980217/key18.htm#DAO


7月16日

■■AKIBA PC Hotline! HotHotレビュー by Ubiq Computing
4スピーカーに対応したYMF744搭載サウンドカード登場
http://pc.watch.impress.co.jp/docs/article/990716/hotrev19.htm

Sondius-XG
ソンディアス エックスジー

 スタンフォード大学とヤマハが'97年から開始した、両者の持つ電子音源に関する特許技術を共同でライセンス供与するプログラム。

 スタンフォード大学の研究機関「CCRMA(Center for Computer Research in Music and Acoustics)」は、'70年代に「FM音源」を、'80年代に「物理モデル音源」を開発。ともに、同校から基本特許のライセンスを受けたヤマハによって、FM音源は'83年に、物理モデル音源は'93年にVA(Virtual Acoustic)音源として商品化されている。

 スタンフォード大学ではこれまで、物理モデル音源に関連する技術を「Sondius」プログラムとしてライセンスして来たが、'97年に、ヤマハが持つ物理モデル音源、Wave Table音源、XGフォーマットなどに関連する特許とともに、共同でライセンスすることに合意。両者が持つ400件を越える特許(出願も含む)とその周辺技術を統合したライセンスプログラム、「Sondius-XG」としてスタートした。

□Sondius-XG
http://www.sondius-xg.com/
□スタンフォード大学CCRMA
(Center for Computer Research in Music and Acoustics)
http://cm.stanford.edu/
□ヤマハ XG
http://www.yamaha.co.jp/xg/index.html
【参考】
□VA音源
http://pc.watch.impress.co.jp/docs/article/990225/key66.htm#VAS
□WaveTable音源
http://pc.watch.impress.co.jp/docs/article/980317/key22.htm#WaveTable

EAX(Environmental Audio eXtensions)
イーエーエックス

 Creativeが開発し'98年にリリースした、3Dオーディオ技術。
 AV系でお馴染みの3Dオーディオ技術には、ステレオソースに広がり感を付けるステレオエンハンサーや、Dolby Digital(AC-3)やDTS(Digital Theater Systems)に代表される、複数のチャンネルを使って録再生するマルチチャンネルサラウンドなどがある。が、EAXの主体となるのは、このような収録された音を聞くための技術とは少々異なる。こちらは、インタラクティブな3Dゲームなどの画面に合せて、音場もリアルタイムに制御してしまおうという趣向のもので、ポジショナル3Dオーディオ、あるいはインタラクティブ3Dオーディオなどと呼ばれている。

 3Dグラフィックスは、仮想的な3次元空間にモデルを配置し、視点から見える画像を生成する。ポジショナル3Dオーディオは、これと同じことをオーディオに対して行なうもので、グラフィックスと同じように3次元空間に音源を配置し、リスナーの位置で聞こえる音象を生成していく。最低限の演出としては、音量を制御することによって、音の聞こえる方向や距離の違いを表すことができるが、'96年にリリースされたDirectX 3.0のオーディオAPI「DirectSound3D(※1)」では、ピッチシフト(音程の上げ下げ)を使ったドップラー効果もサポートされている。EAXは、この種のサウンドエフェクトをDirectSound3Dに追加し(※2)、より効果的な3D空間のシミュレートを行なえるようにするもので、'99年にはMicrosoftへのライセンス供与が決まり、将来のDirectXにイコライザーやフランジャー、コーラス、リバーブなどのエフェクトが盛り込まれる予定になっている。

(※1)DirectSound3Dという独立したコンポーネントがあるわけではなく、DirectX 3.0のDirectSoundに追加された3Dサウンド機能をDirectSound3Dと呼んでいる。ちなみに3.0時代のDirectSoundは、全てソフトウェアのみで実現されており、DirectXならではのハードウェアアクセラレーションは、5.0からの実装となっている。

(※2)'97年にリリースされたDirectX 5.0からは、サードパーティが提供する独自の機能にアクセスするための「DirectSoundプロパティセット」というインターフェイスが追加されており、これを使って、EAXが提供するリバーブ(残響)やディレイ(遅延)などの拡張機能を利用する仕組みになっている。

□Environmental Audio
http://www.soundblaster.com/eaudio/
【参考】
□Dolby Digital
http://pc.watch.impress.co.jp/docs/article/980303/key20.htm#AC-3
□DTS(Digital Theater Systems)
http://pc.watch.impress.co.jp/docs/article/990701/key82.htm#DTS
□A3D(Aureal 3D~Aureal社の3Dオーディオ技術)
http://pc.watch.impress.co.jp/docs/article/981126/key56.htm#A3D

[Text by 鈴木直美]


【PC Watchホームページ】


ウォッチ編集部内PC Watch担当 pc-watch-info@impress.co.jp