2010年10月25日月曜日

ストレージデバイスの歴史 (1) - カセットレコーダー


 過去に、SSD の開発や HDD を使用した特定用途向け高速ストレージシステムの開発に携わったことがあります。どんな開発でも言えることですが、パフォーマンスの高いシステムを作るためには、その構造を正確に理解する必要があり、自然とストレージデバイスについて興味が向くようになりました。

 コンピュータシステムの中でも、ストレージは非常に面白いデバイスのひとつです。例えば、昨今はフラッシュメモリの価格低下が著しく、SSD の攻勢に押されつつある HDD ですが、そのメカニズムは想像以上に複雑かつ厳密であり、その性質はコンピュータシステムの中でも非常に異質なものです。

 過去を振り返ってみると、パンチカードや磁気ドラムなど、SSD や HDD の他にも面白いデバイスが沢山あります。当ブログでは、今回から様々なストレージデバイスについて、個人的な思い入れなどを踏まえながらご紹介していきたいと思います。

 まずは、私がコンピュータを使い始めてから最初に使用したストレージデバイスである、カセットレコーダーです。カセットレコーダーは、今となっては懐かしい(?)、カセットテープを使用して音声を録音・再生する機器です。みなさんご存知のラジカセ(最近の若者にはあまり縁がないかも知れませんが…)も、カセットレコーダーですね。
 

ラジカセ 
 ここで、「何でカセットレコーダーがストレージデバイスなの?」 と思われる方もいらっしゃると思います。私自身、カセットレコーダーを”ストレージデバイス”と言うには実はちょっと抵抗があるのですが、データを音声に変換するしくみを用いることで、カセットレコーダーは立派なストレージデバイスに変身します。このしくみについて非常に簡単に言うと、例えばデータが 0 のときは低い音(低周波音)、データが 1 のときは高い音(高周波音)というように、データをビット単位で音声に変換します。昔懐かしい音響カプラを使用して、普通の電話機の受話器をコンピュータと接続し、電話回線を通じてコンピュータ同士が通信する方法にも同じしくみが使われています。カセットレコーダーではデータから変換された音声をカセットテープに録音(記録)し、音響カプラではその音声を電話回線に伝送するわけですね。
 音響カプラ
 このカセットレコーダーが活躍していた 1980 年代には、既にフロッピーディスクドライブ(FDD)や HDD も活躍していました。これらはカセットテープと比較すると高速かつ大容量でしたが、非常に高価であったため(HDD はパソコンより高価だったり、フロッピーディスクも 1 枚で数千円もしていました)、多くのパソコンはカセットレコーダーのインターフェースを備えていました。ちなみに、カセットテープを使用したストレージデバイスは、正式には(?)データレコーダーと言います。以下は、私が初めてプログラミングする機会を提供してくれたコンピュータ(?)である、ファミリーベーシックのデータレコーダーです。

ファミリーベーシック 
 データレコーダーは、コンピュータ向けというだけあって、コンピュータがカセットテープ上のデータを読み書きする際に、コンピュータと通信してカセットテープの記録・再生操作を自動的に行う機能などが付いていたりしました。しかし、基本的なしくみは上記の通りですので、普通のカセットレコーダーでも十分でした。当時小学生だった私は、データレコーダのためだけに 9,800 円もの大金を捻出できるはずもなく(苦笑)、家にあった普通のカセットレコーダーを使用していました。カセットテープ上のデータを読み書きする場合は、コンピュータ側をデータの読み書き状態にセットした後、手動でカセットレコーダーの録音ボタンや再生ボタンを”ガチャン”と押していました(笑)。


 さて、実際のところ、カセットテープにはどのくらいのデータが記録できて(データ容量)、データを読み書きするにはどのくらいの時間がかかる(データ転送速度)のでしょうか? 例えば私が中学生の頃に使用していた MSX の場合は、高速モードのデータ転送速度は 2,400bps でした。つまり、1 秒間で 300 バイトのデータを読み書きすることができる計算になります。これをもとに、まずはカセットテープの収録時間とデータ容量の関係を見てみます。


カセットテープの収録時間とデータ容量の関係

カセットテープの収録時間

データ容量

データ量(参考)
30分

約 527 KB

DVD の映像データ 約 0.5 秒分
(8Mbps の場合)
60分 約 1 MB 約 10 年前のデジカメの写真 1 枚
SONY DSC-P5、標準画質)
90分 約 1.5 MB 2HD の FDD 1 枚分
(1.44 MB)
120分 約 2 MB 音楽データ 約 2 分
MP3 形式/128Kbps の場合)

 当時のパソコン等のメモリ(RAM)容量は数 KB ~ 数百 KB でしたので、カセットテープのデータ容量でも十分でした。今となっては、120 分のカセットテープをもってしても、最近のデジカメの写真 1 枚すら保存できない計算になります…。

 次に、データ容量とデータ転送速度について、現在のストレージデバイス等と比較してみます。
データ容量の比較
ストレージデバイス

データ容量

カセットテープ(120分)比
USB メモリ 8 GB 約 2,000 倍
SD メモリカード 16 GB 約 4,000 倍
SSD 64 GB 約 32,000 倍
HDD

2 TB

約 1,000,000 倍



データ転送速度の比較
ストレージデバイス、他

データ転送速度

カセットレコーダー(MSX)比
WiMAX 70 Mbps 約 31,000 倍
光ファイバー 100 Mbps 約 44,000 倍
USB メモリ 20 MB/s
(読み込み)
約 70,000 倍
HDD

100 MB/s
(シーケンシャル)

約 350,000 倍

SSD 200 MB/s
(読み込み)
約 700,000 倍
 
 HDD は、その機構上データレコーダーの類ではありませんが、現在の私たちにとって身近なストレージデバイスのひとつです。その HDD とカセットレコーダー(カセットテープ)を比較してみると、データ転送速度で 70 万倍、データ容量では実に 100 万倍もの差があることが分かります。また、HDD は任意のデータにすばやくアクセスするランダムアクセスが得意ですが、カセットレコーダーの場合はカセットテープを”早送り”や”巻き戻し”する必要があるため、ランダムアクセスは非常に苦手です。それでも、当時のプライベートユースにおいては、カセットレコーダーは立派なストレージデバイスでした。
 
 現在のストレージデバイスと比較すると、超低容量かつ超低速なカセットレコーダーですが、”録音”や”再生”ボタンをガチャガチャと押しながらデータの読み書きを行っていたことは、ひとつの良い思い出となっています。自分でもなぜ良い思い出なのかはっきりとは分からないのですが、この”アナログ的な操作”が心地良かったのかも知れません。
 
 昨今は、なにもかもが、どんどんデジタル化しています。テレビ、カメラ、クルマ、なんでもかんでもです。しかし、私たち人間がアナログである以上は、必ずアナログ的要素を心地良く感じるはずです。ストレージデバイスの歴史からは少々脱線してしまいますが、今後の開発においても、カセットレコーダーを操作するときにような、アナログ的な心地良い要素を取り入れていきたいと考えています。