JPH10285553A - データ記録装置および方法 - Google Patents

データ記録装置および方法

Info

Publication number
JPH10285553A
JPH10285553A JP9103946A JP10394697A JPH10285553A JP H10285553 A JPH10285553 A JP H10285553A JP 9103946 A JP9103946 A JP 9103946A JP 10394697 A JP10394697 A JP 10394697A JP H10285553 A JPH10285553 A JP H10285553A
Authority
JP
Japan
Prior art keywords
data
block
sub
blocks
controller
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Withdrawn
Application number
JP9103946A
Other languages
English (en)
Inventor
Masaaki Shino
雅昭 志野
Tanio Nagasaki
多仁生 長崎
Yasunobu Kato
泰信 加藤
Masaki Nishikawa
正樹 西川
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Sony Corp
Original Assignee
Sony Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Sony Corp filed Critical Sony Corp
Priority to JP9103946A priority Critical patent/JPH10285553A/ja
Publication of JPH10285553A publication Critical patent/JPH10285553A/ja
Withdrawn legal-status Critical Current

Links

Landscapes

  • Television Signal Processing For Recording (AREA)
  • Signal Processing For Digital Recording And Reproducing (AREA)

Abstract

(57)【要約】 【課題】 同時に記録または再生することが可能なチャ
ンネル数を増加させる。 【解決手段】 番号1の1フレーム分の画像を、4つの
サブブロックに分割した各サブブロックのデータS1−
1乃至S1−4を、それぞれディスクIDが2の内周側
のトラック、ディスクIDが3の外周側のトラック、デ
ィスクIDが4の内周側のトラック、またはディスクI
Dが5の外周側のトラックにそれぞれ記録する。そし
て、これらのサブブロックのデータS1−1乃至S1−
4から生成したパリティデータP1を、ディスクIDが
1の外周のトラックに記録する。次の番号2のフレーム
のサブブロックのデータとパリティデータは、ディスク
IDが2乃至6の各トラックに記録する。以下、同様
に、番号3以降の各フレームのデータは、ディスクID
を1ずつずらしたディスクにそれぞれ記録する。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、データ記録装置お
よび方法に関し、特に、複数のディスクにデータを均等
に記録するようにし、同時に記録または再生することが
できるデータのチャンネル数を増加するようにしたデー
タ記録装置および方法に関する。
【0002】
【従来の技術】近年のコンピュータシステムの発展はめ
ざましいが、その発展に伴い、外部記憶装置に対する要
求も高まっている。その要求に答えるべく開発されたの
がディスクアレイ装置である。このディスクアレイ装置
は、複数のディスク装置を内蔵して、大容量化を図り、
各ディスク装置を並列に動かし、読み出しあるいは書き
込みを高速化するとともに、誤り訂正用データを取り入
れることにより、信頼性を上げている。
【0003】ディスクアレイ装置にデータを格納する場
合、データを分割して複数のサブブロックとし、それら
のサブブロックを元に、誤り訂正用データを生成し、全
てのサブブロックと誤り訂正用データをそれぞれ別々の
ディスク装置に書き込む。
【0004】逆に、ディスクアレイ装置からデータを取
り出す場合、データを構成するサブブロックと誤り訂正
用データが格納されているディスク装置から、複数のサ
ブブロックと誤り訂正用データを同時に読み出し、読み
出したサブブロックから元のデータを構成し、エラーが
なければそのまま送出する。そのとき、サブブロックが
格納されている記録エリアが壊れている等の理由で、正
常に読み出すことができない場合、他の正常に読み出さ
れたサブブロックと誤り訂正用データを元に、正しいデ
ータを復元した後、送出する。
【0005】また、ディスクアレイ装置においては、1
つのディスク装置が完全に壊れた場合でも、壊れたディ
スク装置を新しいものに交換し、他のディスク装置のデ
ータを用いて、壊れたデータを復旧するという機能を備
えるようにすることもできる。
【0006】誤り訂正用データを取り入れたディスクア
レイ装置にはいくつかの異なる方式がある。UCバーク
レイ校のDvid A.Patterson教授らは、その方式を5段階
に分類し、RAID(Redundant Arrays of Inexpensive Di
sks)のレベルという用語を初めて提唱した。以下にそ
の内容を簡単に紹介する。
【0007】RAID−1は、ディスク装置のデータを2重
化するものであり、ミラードディスクとも呼ばれる。RA
ID−1では、全く同一のデータが2つのディスク装置に
格納される。RAID−2,3は、入力データをビット単位
やバイト単位で分割し、複数のディスク装置に格納す
る。RAID−2ではハミング符号を、RAID−3ではパリテ
ィを、それぞれ誤り訂正用データとして使用する。RAID
−4,RAID−5は、データをセクタ単位でインタリーブ
する。RAID−4は、パリティを同一のディスク装置に格
納するのに対し、RAID−5では複数のディスク装置に分
散させる。
【0008】これらのRAIDのレベルうち、通常のディス
クアレイ装置に最もよく採用されている方式は、RAID-
3とRAID−5である。図64は、RAID−3の方式のディ
スクアレイ装置の一例の構成を表し、図65は、RAID−
5の方式のディスクアレイ装置の一例の構成を表してい
る。
【0009】図64に示したRAID−3方式のディスクア
レイ装置においては、入力データをバイト単位に分割
し、バイト単位に分割された各データを複数のディスク
装置に格納する。そして、訂正用データとしてのパリテ
ィを所定のディスク装置に格納する。ここでは、複数の
ディスク装置に格納された番号1乃至4のデータに対す
るパリティP1-4と、番号5乃至8のデータに対するパ
リティP5-8が格納されている。
【0010】また、図65に示したRAID−5方式のディ
スクアレイ装置においては、入力データをセクタ単位に
分割し、それらのデータをインタリーブして複数のディ
スク装置に分散させる。この場合、最初のディスク装置
にはデータA,E,I、次のディスク装置にはデータ
B,F,J、次のディスク装置にはデータC,G,とデ
ータI乃至Lに対するパリティPI-Lが格納されてい
る。そして、次のディスクには、データD,Kと、デー
タE乃至Hに対するパリティPE-Hが格納され、最後の
ディスク装置には、データA乃至Dに対するパリティP
A-Dと、データH,Lが格納されている。
【0011】ところで、近年のコンピュータシステムの
発展により、画像や音声などに代表されるマルチメディ
アデータを扱うことが可能となったが、これらのマルチ
メディアデータ用のストレージは、マルチメディアサー
バと呼ばれることがある。マルチメディアサーバは、大
容量かつ高転送レートが要求されるので、ハードウェア
システムとしてはディスクアレイ装置として実現される
ことが多い。ただし、従来のコンピュータ用サーバにお
いては、処理を行う平均性能が重視されているのに対
し、マルチメディアサーバにおいては、処理を完了する
までに要する時間の最悪値をいかに抑えるかという点が
重視される。
【0012】例えば、動画像の場合、毎秒30枚の画像
が一定の間隔で次々に表示されないと、動きがぎこちな
くなる。また、ディスク装置の能力が追い付かず、音声
データが不足すれば音が途切れて不快なノイズを発す
る。最悪の場合でもこれだけの時間で処理できるという
上限を保証することをリアルタイム性を保証するとい
う。マルチメディアサーバでは、このリアルタイム性を
保証することができるかどうかも重要である。
【0013】
【発明が解決しようとする課題】しかしながら、従来の
装置においては、比較的同一のハードディスクにデータ
を頻繁に記録するようにしているため、同時に記録また
は再生することが可能なデータのチャンネル数が少ない
課題があった。
【0014】本発明はこのような状況に鑑みてなされた
ものであり、同時に記録または再生することが可能なチ
ャンネル数を増加するようにするものである。
【0015】
【課題を解決するための手段】請求項1に記載のデータ
記録装置は、記録する所定の大きさの画像の複数に分割
されたブロックの画素データよりなるブロックデータか
ら、ブロックデータの誤りを訂正するための誤り訂正デ
ータを生成する生成手段と、ブロックデータと誤り訂正
データを、それぞれ異なる記憶位置に一時的に記憶する
記憶手段と、ブロックデータと誤り訂正データを、記憶
手段に転送する転送手段と、記憶手段に記憶されたブロ
ックデータと誤り訂正データを、その記憶位置に対応す
る複数の異なるディスクに記録する記録手段と、ディス
クの外周側の領域と内周側の領域が、ほぼ均一に使用さ
れるように、かつ、ブロックデータと誤り訂正データを
記録する複数のディスクの組み合わせが、所定の大きさ
の画像毎に変化するように、記憶手段における記憶位置
を制御する制御手段とを備えることを特徴とする。
【0016】請求項5に記載のデータ記録方法は、記録
する所定の大きさの画像の複数に分割されたブロックの
画素データよりなるブロックデータから、ブロックデー
タの誤りを訂正するための誤り訂正データを生成する生
成ステップと、ブロックデータと誤り訂正データを、そ
れぞれ異なる記憶位置に一時的に記憶する記憶ステップ
と、ブロックデータと誤り訂正データを、記憶ステップ
における記憶のために転送する転送ステップと、記憶ス
テップで記憶されたブロックデータと誤り訂正データ
を、その記憶位置に対応する複数の異なるディスクに記
録する記録ステップと、ディスクの外周側の領域と内周
側の領域が、ほぼ均一に使用されるように、かつ、ブロ
ックデータと誤り訂正データを記録する複数のディスク
の組み合わせが、所定の大きさの画像毎に変化するよう
に、記憶ステップにおける記憶位置を制御する制御ステ
ップとを備えることを特徴とする。
【0017】請求項1に記載のデータ記録装置および請
求項5に記載のデータ記録方法においては、ディスクの
外周側の領域と内周側の領域が、ほぼ均一に使用される
ように、かつ、ブロックデータと誤り訂正データを記録
する複数のディスクの組み合わせが、所定の大きさの画
像毎に変化するように制御される。
【0018】
【発明の実施の形態】図1は、本発明を応用した編集シ
ステムの構成例を表している。このシステムにおいて
は、編集装置1にソースビデオテープレコーダ(VTR)
9や、デイリーサーバ7などから、ビデオデータが入力
され、編集されるようになされている。この編集装置1
は、ディスクレコーダ2を制御し、編集処理を行うよう
になされている。編集装置1は、2チャンネルのSDI(Se
rial Data Interface)を介してディスクレコーダ2に、
ビデオデータとオーディオデータを伝送し、また、ディ
スクレコーダ2は、それぞれ6チャンネルのビデオデー
タと、16チャンネルのオーディオデータをSDIを介し
て編集装置1に供給するようになされている。さらに、
編集装置1は、SDIを介して、メインモニタ4、オンエ
アバッファ8、ソースVTR9、並びにホストパーソナル
コンピュータ3に、ビデオデータとオーディオデータを
供給するようになされている。また、編集装置1は、増
幅器5にオーディオ信号を出力し、スピーカ6から放音
させるようになされている。
【0019】一方、ホストパーソナルコンピュータ3
は、編集装置1に対して、RS422を介してコマンド
を送り、制御するようになされている。また、編集装置
1も、ディスクレコーダ2、デイリーサーバ7、ソース
VTR9などに、RS422を介してコマンドを送り、そ
れぞれを制御するようになされている。さらに編集装置
1は、ホストパーソナルコンピュータ3を介して、イー
サネットにより制御されたり、外部装置を制御すること
ができるようになされている。ディスクレコーダ2は、
SCSI(ANSI Small Computer System Interface)を介して
ホストパーソナルコンピュータ3に制御されるようにな
されている。
【0020】図2は、編集装置1の内部の構成例を表し
ている。この編集装置1は、コントロールバス25を介
して相互に接続されたマトリックススイッチャ部21、
ビデオ処理部22、オーディオ処理部23、およびシス
テムコントロール部24により構成されている。
【0021】図3に示すように、システムコントロール
部24は、コントロールバス25を介して、マトリック
ススイッチャ部21、ビデオ処理部22、オーディオ処
理部23などを制御するためのメインCPU121、ソー
スVTR9、ローカルストレージとしてのディスクレコー
ダ2、およびデイリーサーバ7などの各デバイスを制御
する、デバイス制御CPU122−1乃至122−3を有
している。また、システムコントロール部24は、さら
に、ホストパーソナルコンピュータ3との間で、GUI
のためのインタフェース処理を行ったり、リファレンズ
タイムレコードを授受したりする、コミュニケーション
CPU124を有している。
【0022】図4に示すように、マトリックススイッチ
ャ部21は、入力ラインと出力ラインを切り替えるため
のブロックである。このマトリックススイッチャ部21
は、SDIフォーマットに基づいて供給されたビデオ信号
またはオーディオ信号を受け取る12本の入力ライン3
1−1乃至31−12を有している。この12本の入力
ラインに対して、マトリックス状に12本の出力ライン
が配置されており、各出力ラインには、アウトプットプ
ロセッサ32−1乃至32−12が配置されている。入
力ライン31−1乃至31−12と、アウトプットプロ
セッサ32−1乃至32−12が対応する12本の出力
ラインは、図中、×印で示されるクロスポイントで、適
宜、接続されるようになされている。この接続は、マト
リックススイッチャ部21の制御ブロック34が、シス
テムコントロール部24のメインCPU121からの指令
を、コントロールバス25を介して受け取り、この指令
に対応して、制御するようになされている。
【0023】この入力ラインには、図1に示す、デイリ
ーサーバ7、ソースVTR9、またはディスクレコーダ2
からのビデオ信号やオーディオ信号が供給されるだけで
なく、ビデオ処理部22で処理されたビデオ信号も供給
される。制御ブロック34は、クロスポイントを適宜切
り替えることにより、これらの入力の所定のものを、1
2本の出力ラインのアウトプットプロセッサ32−1乃
至32−12のいずれかに供給させる。アウトプットプ
ロセッサ32−1乃至32−12は、入力されたビデオ
信号をSDIフォーマットに変換する処理を行う。アウト
プットプロセッサ32−1の出力は、キャプチャライン
の出力とされ、ホストパーソナルコンピュータ3に供給
される。アウトプットプロセッサ32−2の出力は、プ
レビューラインの出力とされ、メインモニタ4に供給さ
れる。
【0024】一方、アウトプットプロセッサ32−3乃
至32−12の後段には、さらに、コンバイナ33−1
乃至33−10が設けられており、これらのコンバイナ
33−1乃至33−10は、対応するアウトプットプロ
セッサ32−3乃至32−12より入力されたビデオ信
号に、オーディオ処理部23から供給されたエンベデッ
ドオーディオ信号をSDIのビデオ信号に重畳する処理を
行う。コンバイナ33−1乃至33−10の出力は、プ
ログラムアウトラインの出力として、ローカルストレー
ジとしてのディスクレコーダ2に供給される。なお、エ
ンベデッドオーディオ信号とは、ビデオ信号の水平ブラ
ンキング期間に時間軸圧縮して、重畳されたオーディオ
信号を意味する。
【0025】図5に示すように、ビデオ処理部22は、
マトリックススイッチャ部21から供給されたビデオ信
号に対して、画像変換処理を施すためのブロックであ
る。この画像変換処理とは、例えば、ソースビデオ信号
に特殊効果をかけたり、バックグラウンドビデオ信号に
特殊効果のかかったビデオ信号を挿入するアニメーショ
ンエフェクトや、バックグラウンドビデオ信号から、フ
ォアグラウンドビデオ信号に映像を切り替えるトランジ
ションエフェクトの処理などのことである。
【0026】このビデオ処理部22は、マトリックスス
イッチャ部21から入力されるSDIフォーマットの信号
から、キー信号またはビデオ信号(輝度信号とクロマ信
号)を抽出するデマルチプレクサブロック41、キー信
号またはビデオ信号に対してワイプなどのトランジショ
ンエフェクトを付与するためのスイッチャブロック4
2、キー信号またはビデオ信号に対して3次元画像変換
などのアニメーションエフェクトを付与する特殊効果ブ
ロック43、スイッチャブロック42、特殊効果ブロッ
ク43、およびマトリックススイッチャ部21からのビ
デオ信号をミックスするミキサブロック44、並びに、
これらのデマルチプレクサブロック41、スイッチャブ
ロック42、特殊効果ブロック43、およびミキサブロ
ック44を制御する制御ブロック45により構成されて
いる。
【0027】制御ブロック45は、システムコントロー
ル部24から、コントロールバス25を介して制御信号
を受け取り、図示せぬ制御線を介して、デマルチプレク
サブロック41、スイッチャブロック42、特殊効果ブ
ロック43、またはミキサブロック44を制御する。
【0028】デマルチプレクサブロック41は、デマル
チプレクサ回路41−1乃至41−5を有しており、こ
れらのデマルチプレクサ回路41−1乃至41−5は、
マトリックススイッチャ部21から供給されたSDIフォ
ーマットに準ずるようにパケット化されているビデオ信
号を抽出する回路であって、各パケットデータのペイロ
ード部の領域内に記録されているビデオ信号を、シリア
ル状に記録されている各ビデオ信号の先頭に記録された
同期信号およびヘッダ情報に基づいて抽出する。
【0029】スイッチャブロック42は、制御ブロック
45からの制御コマンドに対応して、オペレータによっ
て指定されたトランジションエフェクトに対応するワイ
プ信号を生成するワイプ信号発生回路52−1,52−
2を有している。ワイプ信号発生回路52−1は、生成
したワイプ信号をキー信号処理回路51−1とビデオ信
号処理回路51−2に供給し、ワイプ信号発生回路52
−2は、生成したワイプ信号をキー信号処理回路51−
3とビデオ信号処理回路51−4に供給している。
【0030】キー信号処理回路51−1は、デマルチプ
レクサ回路41−1より供給されたキー信号を、ワイプ
信号発生回路52−1より供給されたワイプ信号に対応
して処理したり、新たなキー信号を生成するようになさ
れている。ビデオ信号処理回路51−2は、デマルチプ
レクサ回路41−2より供給されたビデオ信号を、ワイ
プ信号発生回路52−1より供給されたワイプ信号に対
応して処理するようになされている。
【0031】同様に、キー信号処理回路51−3は、デ
マルチプレクサ回路41−3より供給されたキー信号
を、ワイプ信号発生回路52−2より供給されたワイプ
信号に対応して処理したり、新たなキー信号を生成す
る。ビデオ信号処理回路51−4は、デマルチプレクサ
回路41−4より供給されたビデオ信号を、ワイプ信号
発生回路52−2より供給されたワイプ信号に対応して
処理するようになされている。
【0032】特殊効果ブロック43においては、フレー
ムメモリ61−1またはフレームメモリ61−2に、キ
ー信号処理回路51−3またはビデオ信号処理回路51
−4より供給されたキー信号またはビデオ信号が、それ
ぞれ記憶されるようになされている。3次元アドレス発
生回路63は、制御ブロック45からの特殊画像変換の
制御コマンドを受け取って、キー信号またはビデオ信号
を、それぞれ3次元的な画像に変換するための変換アド
レスを発生し、フレームメモリ61−1,61−2と、
インターポレータ62−1,62−2に出力するように
なされている。フレームメモリ61−1,61−2は、
キー信号またはビデオ信号の読み出しが、3次元アドレ
ス発生回路63からの変換アドレスに対応して制御され
る。インターポレータ62−1,62−2は、それぞれ
フレームメモリ61−1または61−2より供給された
キー信号またはビデオ信号の画素を空間的に補間するた
めの処理を、3次元アドレス発生回路63からの変換ア
ドレスに基づいて行うようになされている。
【0033】ミキサブロック44においては、ミックス
回路71−1が、インターポレータ62−1より供給さ
れる画像変形されたキー信号に基づいて、インターポレ
ータ62−2より供給される、変形されたビデオ信号
と、デマルチプレクサ回路41−5より供給されるバッ
クグラウンドビデオ信号とを合成するようになされてい
る。また、ミックス回路71−2は、ミックス回路71
−1より出力されるビデオ信号と、ビデオ信号処理回路
51−2において、ワイプ信号に基づいて処理されたビ
デオ信号を、キー信号処理回路51−1が出力する、ワ
イプ信号に基づいて処理されたキー信号に対応して合成
するようになされている。ミックス回路71−1,71
−2より出力されたビデオ信号は、マトリックススイッ
チャ部21の12本の入力ラインのうちの2つの入力ラ
インに供給されている。
【0034】図6に示すように、オーディオ処理部23
においては、セパレータブロック81が、セパレータ8
1−1乃至81−3を有しており、これらのセパレータ
81−1乃至81−3は、マトリックススイッチャ部2
1から供給されたSDIフォーマットの信号から、エンベ
デッドオーディオ(Embeded Audio)信号を分離するよう
になされている。これらの信号は、AES / EBU(Audio En
gineering Society /European Broadcasting Union)フ
ォーマットの信号とされている。
【0035】ミキサブロック83は、セパレータ81−
1乃至81−3の出力を、可変抵抗91−1乃至91−
3で所定のレベルに調整した後加算する加算器92−1
と、セパレータ81−1乃至81−3の出力を、可変抵
抗91−4乃至91−6により、所定のレベルに調整し
た後加算する加算器92−2を有している。
【0036】エンベデッド回路85は、加算器92−1
と92−2より出力されたオーディオ信号をSDIフォー
マット信号に重畳できるようにエンベデッドオーディオ
信号に変換する処理を行う。エンベデッド回路85の出
力は、マトリックススイッチャ部21のコンバイナ33
−1乃至33−10に供給され、アウトプットプロセッ
サ32−3乃至32−12によりSDIフォーマットに変
換されたビデオ信号に重畳され、ディスクレコーダ2に
供給されるようになされている。
【0037】制御ブロック86は、これらのセパレータ
ブロック81、ミキサブロック83、およびエンベデッ
ド回路85の動作を、システムコントロール部24から
の制御信号をコントロールバス25を介して受け取っ
て、制御するようになされている。
【0038】加算器92−1,92−2の出力は、図1
の増幅器5を介してスピーカ6から出力されるようにな
されている。
【0039】図7は、ディスクレコーダ2の内部の構成
例を表している。なお、このディスクレコーダ2は、高
速リアルタイムランダムアクセスのためのハードディス
クマネージメントアルゴリズムFARAD(Fast Random Acce
ss Disk)(商標)を応用したものであり、比較的少ない
ディスクで、マルチチャンネルのデータを高速ランダム
アクセスすることができるようになされている。
【0040】この構成例においては、ディスクアレイと
して、32台のハードディスク201−1乃至201−
32が設けられている。SPC(SCSI Peripheral Controll
er)としてのSCSIコントローラ202−1乃至202−
16は、それぞれ2台のハードディスクを制御するよう
になさている。例えば、SCSIコントローラ202−1
は、ハードディスク201−1とハードディスク201
−2を制御し、SCSIコントローラ202−2は、ハード
ディスク201−3とハードディスク201−4を制御
するようになされている。
【0041】さらに、バッファブロック203−1乃至
203−8が設けられている。1つのバッファブロック
は、2つのSCSIコントローラを制御するようになされて
おり、例えば、バッファブロック203−1は、SCSIコ
ントローラ202−1と202−2を制御し、バッファ
ブロック203−2は、SCSIコントローラ202−3と
202−4を制御するようになされている。各バッファ
ブロック203−i(なお、iは任意の値であり、ここ
では、i=1,2,・・・,8)には、データバッファ
212−iと、これを制御するバッファコントローラ2
11−iが設けられている。
【0042】また、データバッファ212−1乃至21
2−8は、CPUブロック261のコントローラ262に
より一義的に規定されるシリアルなアドレスが割り振ら
れ、そのアドレスによって、データの記憶位置を指定す
ることができる。従って、この複数のデータバッファ2
12−1乃至212−8は、コントローラ262からみ
た場合、1つのデータバッファとなる。
【0043】なお、このディスクレコーダ2において
は、合計36台のハードディスクを装備することができ
るようになされているが、この構成例においては、32
台のハードディスクが設けられている。
【0044】これらのハードディスク201−1乃至2
01−32に対して、オーディオデータを記録再生する
ためのブロックとして、オーディオブロック231−
1,231−2が設けられており、ビデオデータを記録
再生するために、ビデオブロック271−1乃至271
−6が設けられている。
【0045】オーディオブロック231−1と231−
2は、それぞれ同様の構成とされており、それぞれが8
チャンネル分のオーディオデータを処理するようになさ
れているので、合計16チャンネル分のオーディオデー
タを処理することができるようになされている。
【0046】各オーディオブロック231−iは、入出
力(I/O)コントローラ242−i(i=1,2)
と、DMAコントローラ241−iを有している。入出力
コントローラ242−iは、図4のマトリックススイッ
チャ部21のコンバイナ33−1乃至33−10のいず
れかから、8チャンネル分のオーディオ信号の供給を受
け、これを処理して、DMAコントローラ241−iに供
給するとともに、DMAコントローラ241−iより供給
された、最大8チャンネル分のオーディオ信号を処理し
て、図4の編集装置1のマトリックススイッチャ部21
の入力ラインに出力する。
【0047】DMAコントローラ241−iは、入出力コ
ントローラ242−iより供給されたオーディオ信号
を、DMAバス251を介して、バッファコントローラ2
11−1乃至211−8のいずれかに供給し、対応する
データバッファ212−1乃至2121−8にDMA転送
させる。また、これらのデータバッファ212−1乃至
212−8より読み出されたデータをDMAバス251を
介して読み取り、入出力コントローラ242−iにDMA
転送する。
【0048】ビデオブロック271−i(i=1,2,
・・・,6)においては、DMAコントローラ281−i
が、DMAバス251を介してデータバッファ212−1
乃至212−8と、RAIDコントローラ282−iとの間
で、ビデオデータをDMA転送するようになされている。
【0049】RAIDコントローラ282−iは、ビデオプ
ロセッサ283−iより供給される、ハードディスク2
01−1乃至201−32に記録すべきビデオデータに
対して、誤り訂正のための処理を施して、DMAコントロ
ーラ281−iに供給するとともに、DMAコントローラ
281−iより供給された、ハードディスク201−1
乃至201−32より再生されたデータに対して誤り訂
正処理を施し、ビデオプロセッサ283−iに出力する
ようになされている。このRAIDコントローラ282−i
の処理については、その詳細を後述する。
【0050】ビデオプロセッサ283−iは、入出力コ
ントローラ284−iより供給されたビデオデータをRA
IDコントローラ282−i側で処理するのに必要なクロ
ックレートに変換する処理と、逆に、RAIDコントローラ
282−iより供給された再生データを、入出力コント
ローラ284−iの処理すべきクロックレートに変換す
る処理を行う。
【0051】入出力コントローラ284−iは、編集装
置1のマトリックススイッチャ部21のコンバイナ33
−1乃至33−10のいずれかより供給されるビデオデ
ータを受け取り、これをスイッチングしてビデオプロセ
ッサ283−1乃至283−6のいずれかに供給すると
ともに、逆に、ビデオプロセッサ283−iより供給さ
れたビデオデータを編集装置1の入力ラインに供給する
ようになされている。
【0052】この構成例においては、6個のビデオブロ
ック271−1乃至271−6が設けられているので、
合計6チャンネル分のビデオ信号を処理することが可能
となっている。
【0053】CPUブロック261は、コントローラ26
2とRAM263を有しており、制御バス252を介してS
CSIコントローラ202−i、バッファブロック203
−i、DMAコントローラ241−i、入出力コントロー
ラ242−i、DMAコントローラ281−i、RAIDコン
トローラ282−i、ビデオプロセッサ283−i、お
よび入出力コントローラ284−iと接続されており、
適宜、それらを制御するようになされている。コントロ
ーラ262は、各ブロックを制御し、RAM263には、
コントローラ262が各種の処理を実行する上において
必要なソフトウェアプログラムや、テーブルデータなど
が記憶されている。コントローラ262は、決定したフ
ォーマットパラメータと、図8に示すように、RAM26
3に形成されているゾーンビットレコーディング(ZB
R)テーブル301からのデータに基づいて、ブロック
マップ304を作成し、また、更新する。ここで、フォ
ーマットパラメータは、データの1ブロックの大きさ
S、データを分割する数n、および最適なスキュー値θ
skewなどから構成されている。
【0054】コントローラ262は、ブロックマップ3
04を参照して、DMAコントローラ281−iやRAIDコ
ントローラ282−iの動作を制御するためのコマンド
を生成する。また、コントローラ262は、データバッ
ファ212−iにバッファリングされたビデオデータま
たはオーディオデータを、ハードディスク201−iに
記録する際、または、再生する際に、ヘッド移動量が最
小となるように、ヘッドのアクセス順序をスケジューリ
ングする処理を実行する。
【0055】コントローラ262は、この他、図8に示
すように、RAM263に、物理アドレステーブル302
やアロケーションマップ303を生成し、記録する。
【0056】ゾーンビットレコーディング(ZBR)テー
ブル301は、ハードディスクのシリンダアドレスと、
そのシリンダ位置での1トラック内で使用されるセクタ
数を対応づけた表である。図9と図10は、このZBRテ
ーブルの例を表しており、図9は、ビデオ信号がNTSC規
格のビデオ信号である場合におけるZBRテーブルの例を
表しており、図10は、ビデオ信号がPAL規格のビデオ
信号である場合におけるZBRテーブルを表している。
【0057】図11に示すように、ハードディスク20
1−iは、複数のメディア(ディスク)により構成され
ており、各メディアには、複数のトラックが形成されて
いる。各トラックは、複数のセクタに区分され、各セク
タは、この実施の形態の場合、512バイトの大きさと
される。そして、各メディアの中心から同一径に位置す
るトラックにより構成される領域がシリンダと称され
る。このシリンダには、外周側から内周側に向かって順
番に連続の番号が振られ、これがシリンダアドレスとさ
れる。
【0058】さらに、各ハードディスク201−iは、
ゾーンビットレコーディング法によるフォーマットが行
われている。すなわち、記録面がディスクの中心からの
距離に応じて複数のゾーンに区分され、外側のゾーンで
は、内側のゾーンより、トラック当たりのセクタ数が多
くなるようにフォーマットされる。この実施の形態の場
合、図9、図10、および図12に示すように、最外周
から最内周に向かって、0001乃至6000のシリン
ダアドレスで規定される6000個のトラックが形成さ
れており、これらの各トラックが、500本を単位とし
て、12のゾーンに区分されている。そして、例えば、
図9に示すように、0001乃至0500のシリンダア
ドレスで規定される最も外周側の第1のゾーンにおいて
は、1トラック当たり567個のセクタが形成されてお
り、5501乃至6000のシリンダアドレスで規定さ
れる最も内周側の第12のゾーンにおいては、1トラッ
ク当たりのセクタ数は393個とされている。
【0059】なお、具体的には後述するが、この12個
のゾーンのうち、最外周の第1のゾーンと、最内周の第
12のゾーンがペア(対)として使用され、以下同様
に、第2のゾーンと第11のゾーン、第3のゾーンと第
10のゾーン、第4のゾーンと第9のゾーン、第5のゾ
ーンと第8のゾーン、並びに、第6のゾーンと第7のゾ
ーンが、それぞれペアとして使用される。このように、
より外周のゾーンとより内周のゾーンを、それぞれペア
として使用することにより、ディスク容量を、最も効率
よく使用することが可能となる。この点については、後
に詳述する。
【0060】このように、ZBRテーブル301には、各
ゾーンごとのトラック当たりのセクタ数が記憶されてい
るため、シリンダアドレスが特定されると、そのトラッ
クにおいて使用することが可能なセクタ数を決定するこ
とができる。なお、この実施の形態においては、1セク
タ当たり128ワード(1ワードは32ビット)のデー
タを記録することができるようになされている。
【0061】一方、図8に示す物理アドレステーブル3
02は、ハードディスク201−iの論理セクタ番号
(この論理セクタ番号は論理ブロックアドレスとも称さ
れる)を物理アドレスと対応づけるためのテーブルであ
る。物理アドレスとは、シリンダ番号、メディア番号、
およびセクタ番号からなるアドレスをいう。
【0062】図13は、物理アドレステーブル302の
例を表している。論理セクタ(Logical Sector)番号Lki
は、各ハードディスク201−iにおいて、全てのメデ
ィアの各セクタに連続して付された番号であり、図9
(A)に示すように、この論理セクタ番号Lkiは、シリ
ンダ番号CYKki、メディア番号MEDki、およびセク
タ番号SECkiにより特定することができる。図9
(B)は、その具体的な例を表している。例えば、論理
セクタ番号2のセクタは、シリンダ番号0のメディア番
号0のセクタ番号2のセクタである。従って、この物理
アドレステーブル302を参照することにより、論理セ
クタ番号を物理セクタ番号に変換し、あるいは逆に、物
理セクタ番号を論理セクタ番号に変換することができ
る。
【0063】図8のアロケーションマップ303は、ハ
ードディスク201−iの全てのメディア(ディスク)
の記録済みエリアと、未記録エリアのアドレスを管理す
るためのマップである。このアロケーションマップ30
3を参照することにより、各ディスクの未記録のエリア
を検索することができる。
【0064】ブロックマップ304は、ディスク上のど
の位置に、どのような大きさのデータが記憶されている
のかを示すテーブル上のマップであり、図14に示すよ
うに、k(データの総数を越えない任意の自然数)で示
されるブロック番号を有するブロックデータ(記録され
るデータまたは再生されるデータ)ごとに、ディスク上
での配置位置を管理するためのマップである。なお、こ
のブロック番号kで示される1つのブロックデータは、
例えば、1フレーム(所定の大きさの画像)のビデオデ
ータとされ、このブロック番号kは、全てのチャンネル
のビデオデータの各フレームデータに対して、それぞれ
一義的に指定された番号(ID番号)である。従って、
ビデオデータの再生の要求があった場合には、このブロ
ック番号kによって、ディスク上における配置位置を特
定することができる。
【0065】図10に示すように、1フレーム分のブロ
ックデータは、n個のサブブロックデータと、1個の誤
り訂正用のパリティデータとにより構成され、それぞれ
は、異なるハードディスク201−iに記録される。パ
リティデータの配置場所は、ハードディスク201−i
のディスクIDDkp、パリティデータが記録されたエリ
アの記録開始位置を示す論理セクタ番号Lkp、およびパ
リティデータが記録されたエリアの大きさ(サイズ)を
示すセクタの数Skpにより規定される。
【0066】同様に、番号kのサブブロックの配置場所
は、ハードディスク201−iのディスクIDDki、サ
ブブロックが記録されたエリアの記録開始位置を示す論
理セクタ番号Lki、並びに、サブブロックが記録された
エリアの大きさを示すセクタの数Skiにより規定され
る。
【0067】なお、ここで、n(1フレームのビデオデ
ータを分割する数)は、その規格(NTSCまたはPAL)
(データ量)に応じて、適宜定めることができる。その
詳細は後述する。
【0068】図15は、1440×512画素のNTSC方
式の1フレームのビデオデータを、4つのサブブロック
に分割した場合のブロックマップ304の具体例を示し
ている。この例では、ブロック番号(フレーム番号)1
で示されるフレームのパリティデータP1は、ディスク
IDが1で示されるハードディスク上の番号0の開始論
理セクタから、567セクタ分のエリア(最外周のエリ
ア)に記録されている。また、このブロック番号1で示
されるフレームの第1番目のサブブロックのデータS1
−1は、ディスクIDが2で示されるハードディスク上
の番号599600の開始論理セクタから、393セク
タ分のエリア(最内周のエリア)に記録され、以下同様
に、このフレームの第2番目のサブブロックのデータS
1−2は、ディスクIDが3で示されるハードディスク
上の番号0の開始論理セクタから、567セクタ分のエ
リア(最外周のエリア)に記録され、第3番目のサブブ
ロックのデータS1−3は、ディスクIDが4で示され
るハードディスク上の番号599600の開始論理セク
タから、393セクタ分のエリア(最内周のエリア)に
記録され、第4番目のサブブロックのデータS1−4
は、ディスクIDが5で示されるハードディスク上の番
号0の開始論理セクタから、567セクタ分のエリア
(最内周のエリア)に記録されている。
【0069】1サブブロックのデータの大きさは、基本
的に、1フレームのデータの1/4の大きさであるが、
この1サブブロックのデータは、必ずしも、1フレーム
のビデオデータの連続する1/4の画素データから構成
されるデータではない。勿論、このサブブロックの画素
データを1フレームのビデオデータの連続する1/4の
領域の画素データとすることも可能であるが、そのよう
にすると、画素データが欠落した場合における影響が、
それだけ大きくなる。そこで、1フレームのビデオデー
タのうち、連続する領域ではなく、分散的に存在する所
定の領域の画素データで構成されるパケット転送ブロッ
クを複数個集めて、1つのサブブロックが構成される。
また、各サブブロックの大きさは必ずしも同一ではな
い。この点については、図43、図44などを用いて後
に詳述する。
【0070】次に、CPUブロック261のコントローラ
262が行うブロックマップ304の作成処理につい
て、図16のフローチャートを参照して説明する。な
お、以下においては、例えばハードディスク201−1
乃至201−32を、個々に区別する必要がない場合、
単に、ハードディスク201と記述する。対応するデバ
イスが複数個存在するその他のデバイスについても同様
に記述する。
【0071】コントローラ262は、フォーマットパラ
メータとして、記録すべきビデオデータの1サブブロッ
クの大きさ、SCANスケジュールを行なう時のヘッドの平
均移動距離La、使用するハードディスク201のドラ
イブのシーク時間Ts(L)、ハードディスク201の
物理的フォーマット(シリンダ数、1トラック内のセク
タ数、シリンダを構成するメディアの枚数)を、予め決
定しておき(サブブロックのサイズの決定については、
図27を参照して後述する)、これを参照して、各サブ
ブロックのハードディスク201上での位置を、図16
に示すステップS1乃至S5の手順で決定する。
【0072】ヘッドの平均移動距離Laは、ハードディ
スク201の総シリンダ数Ltと、1回のスキャンで処
理するアクセスの個数Nから下記式(1)で与えられる
(後述する図24(C)参照)。 La = Lt /(N−1) ・・・(1)
【0073】ドライブのシーク時間 Ts(L)はシー
ク距離L(シリンダ数)の関数であり、その値は使用す
るディスクドライブの機械的特性によって決まる。図1
7にその例を示す。何個のアクセスリクエストをまとめ
てスキャンで処理するかは、このディスクレコーダ2を
使用するアプリケーションの性格、そこで求められる性
能、使用できるデータバッファ212の量などから決定
する。まとめてスキャンするアクセスリクエストの数N
は大きいほどハードディスクのランダムアクセス性能が
向上するが、必要なデータバッファの量が増加するとと
もに、応答時間が増加するという逆効果がある。
【0074】図16のステップS1で1シリンダ内に存
在するサブブロックの数(Bc)を計算する。1シリン
ダ内のセクタの総数はトラック内のセクタ数にメディア
の枚数を乗じたものである。従って、1シリンダ内のセ
クタの総数を、1サブブロックのデータを格納するため
に必要なセクタ数で割れば、Bcが求まる。
【0075】ステップS2でギャップθgapを求める。
ギャップθgapは、サブブロックの先頭セクタと最終セ
クタとのディスクの中心から見た角度差である。例え
ば、図18に示すように、影を付して示したサブブロッ
クは、その先頭がトラック「1」のセクタ「0」、その
末尾がトラック「2」のセクタ「6」であるから、その
ギャップθgapは、円周の5/12、すなわち5π/6
ラジアンである。
【0076】以上のデータをもとにステップS3でスキ
ューθskewを求める。ここで、スキューθskewとは、図
19に示すように、ハードディスク201上の隣接する
サブブロックの先頭同士の円周方向におけるディスクの
中心から見た角度差をいう。まず、1つのサブブロック
の書き込みまたは読み出しが終わった時点でのヘッドの
位置を起点として、そこからLシリンダ分だけ、半径方
向に例えば内周側に移動した位置(トラック)におい
て、データの先頭が円周方向の同じ角度に達するまでの
時間Td(L)を式で表すと、下記式(2)に示すよう
になる。 Td(L)=(L・Bc・θskew+θgap+2・m・π)/ω ・・・(2)
【0077】ここで、Lはシーク距離で単位はシリンダ
数、Bcは1シリンダ内に存在するサブブロック数、θ
skewはスキューで単位はラジアン、θgapはギャップで
単位はラジアン、ωはハードディスク201の回転速度
(ラジアン/秒)、mはTd(L)が正となるような任
意の整数である。
【0078】図20は、上記式(2)の意味をハードデ
ィスク201上で説明するものである。図20におい
て、いま丁度、サブブロック「0」のアクセスが終了し
たとする。このとき、ヘッドは中心から見て角度Aの方
向にある。いま、同じサブブロック「0」を再度アクセ
スすることを考えると、ギャップθgapの分だけディス
クが回転するのを待たないといけないから、θgap/ω
の待ち時間が発生する。
【0079】また、サブブロック「0」よりnトラック
(サブブロック)分だけ内周のサブブロック「n」の先
頭にアクセスするには、サブブロック「0」のスタート
位置から、nサブブロック分のスキュー(nθskew)と
の和の角度だけ、ハードディスク201の回転を待たな
くてはならない。これには、nθskew/ωの時間を要す
る。ハードディスク201は回転しているから、こうし
て得られた時間に、回転周期(Trot)の整数倍を加えた
時刻にもデータの先頭はヘッドの存在する位置に到達す
る。nサブブロックの移動は、シリンダ数では、n/B
cシリンダの移動に相当するので、横軸をシリンダ数、
縦軸を先頭が到着するまでの待ち時間としてグラフを描
くと、図21に示すようになる。スキューθskewを大き
くするほど図21の直線群の傾きは大きくなる。
【0080】なお、以上の議論では中心から見たヘッド
の円周方向の位置(角度)が、中心からの距離によらず
一定であるとした。実際にはヘッドの機構によっては正
確に位置が一定でない場合もあるが、その影響は十分に
小さいので通常は無視出来る。
【0081】図21に示すように、上記式(2)によっ
て、各シリンダにおいてサブブロックの先頭がヘッドの
下に到達するまでの時間が得られる。ただし、この時間
内にヘッドが所望のシリンダまで移動していないといけ
ないから、待ち時間はシーク後に、最初にブロックの先
頭が現れるまでの時間となる。これがシークと回転待ち
の両方を考慮したオーバヘッドTd( L)である。図2
2にその例を示し、下記式(3)にその定義を示す。実
際のオーバヘッド(待ち時間)Td(L)は図22おい
て太線で示した。なおシーク時間Ts(L)の関数は点
線で示してある。図中、Trotは1回転周期である。
【0082】ステップS3−1では、式(2)や図21
におけるm=0の直線の方程式、すなわち、下記式
(3)で示される方程式を求める。 Td(L)=(L・Bc・θskew+θgap)/ω ・・・(3)
【0083】続くステップS3−2,S3−3およびS
3−4は、この直線が常にシーク時間Ts(L)よりも
上で(大きく)、かつ、シーク時間Ts(L)にほぼ接
するように、スキューθskewを選択するステップであ
る。
【0084】すなわち、ステップS3−2において、コ
ントローラ262は、スキューθskewに0を初期設定
し、ステップS3−3において、シーク時間Ts(L)
と、オーバヘッドTd(L)の大きさを比較する。シー
ク時間Ts(L)の方が、オーバヘッドTd(L)より
小さいと判定された場合、ステップS3−4に進み、コ
ントローラ262は、スキューθskewをdeltaだけイン
クリメントする。そして、ステップS3−3に戻り、再
びシーク時間Ts(L)とオーバヘッドTd(L)の大
きさを比較する。
【0085】以上のようにして、シーク時間Ts(L)
が、オーバヘッドTd(L)と等しいか、それより大き
いと判定されるまで、ステップS3−3とステップS3
−4の処理が繰り返し実行される。ステップS3−3に
おいて、シーク時間Ts(L)が、オーバヘッドTd
(L)と等しいか、それより大きいと判定された場合、
図22において、シーク時間Ts(L)に最も近く、か
つ、それより上方に位置するm=0の直線の傾き(スキ
ューθskew)が求められたことになる。
【0086】ステップS4,S5は以上のようにして得
られたスキューθskewとギャップθgapを用いて、ハー
ドディスク201の全域にわたって、各サブブロックの
ディスク上の位置を決定するものである。ステップS4
でまず物理アドレス(シリンダ/メディア/セクタ)の
ポインタを(0/0/0)に初期化する。次のステップ
S5は全てのサブブロックについて繰り返すループであ
り、ループの内部では、まずステップS5−1におい
て、物理アドレステーブル302を参照して、物理アド
レスから論理セクタ番号を得、ステップS5−2におい
て、これと物理アドレスなどの情報をブロックマップ3
04に書き込む。これにより、例えば、図15に示した
ブロックマップ304において、最初のサブブロック
(パリティデータP1)に関する情報が書き込まれる。
【0087】ここまでの処理が終わったら、次のサブブ
ロックの処理の準備として、物理アドレスのポインタP
paをステップS5−3において更新する。ステップS
5−4では、全てのサブブロックについて、ステップS
5−1乃至S5−3の処理を行ったか否かを判断し、行
っていなければ、処理を行っていないサブブロックにつ
いて、ステップS5−1乃至S5−3の処理を行う。こ
こで、第N番目のサブブロックのハードディスク201
上の配置は、(1)割り当てたサブブロックより後方
(外周側から順次割り当てている場合は内周側、内周側
から順次割り当てている場合は外周側)で、(2)かつ
第0ブロックの先頭との角度差がNθskewに最も近いセ
クタを先頭とする領域である。
【0088】次に、この実施の形態における最悪のオー
バヘッドについて説明する。
【0089】図23は、図19に示したように各サブブ
ロックが配置されたディスクのオーバヘッドタイムを表
している。横軸はシーク距離、即ち、ハードディスク2
01のヘッドが移動するときに横切るシリンダ数Lを表
しており、縦軸はそのときにかかる時間Td(L)を表
している。一点鎖線がシーク時間Ts(L)であり、実
線が全体のオーバヘッドタイムTd(L)である。オー
バヘッドタイムは、シーク時間Ts(L)と回転待ち時
間Trdとの和であるから、実線と一点鎖線の差が回転待
ち時間Trdということになる。
【0090】一般にアクセスリクエストはハードディス
ク201上のあらゆる場所に対して発生する。1回のス
キャンで処理する場所は、図24(A)や(B)に示す
ように、分布に偏りがあったり、逆に図20(C)に示
すように、均等に分布したりする。図24の例では、6
個のアクセスリクエストの間を移動するために、5回の
ランダムアクセスとそれに伴うオーバヘッドが発生す
る。その1つずつについて、図22で太線で示すオーバ
ヘッドが発生する。この5回のランダムアクセスに対す
るオーバヘッドの総和が最悪になるのは、図23に示す
ように、オーバヘッドの関数Td(L)が上に凸である
場合、図24(C)に示すように、すべてのアクセスが
均等に分布しているときである。分布に偏りがある時に
は、オーバヘッドの総和はこれよりも少なくなる。言い
換えれば、ヘッドの平均移動距離La(=L/5)にお
けるオーバヘッドが繰り返し発生する時、オーバヘッド
の総和は最悪(最大)になる。
【0091】図16に示すステップS3では、上記式
(2)で与えられる回転待ちの直線群の1つがシーク時
間Ts(L)よりも上で、かつ、なるべくそれに近いよ
うにスキューθskewを選択した。これによって、距離L
a付近においてTd(L)を小さくすることができ、ひ
いては最悪のオーバヘッドTmaxを小さくすることが
できる。
【0092】図25は、上記した方法による(FARAD方
式による)アルゴリズムを用いた場合におけるオーバヘ
ッドの長さを模式的に表している。同図に示すように、
アクセスを発生した順番に行う従来の方式に較べて、ア
クセスを複数個まとめ、まとめた範囲の中で、外周から
内周に向かって、順番にアクセスを行い、また、逆に、
内周から外周に向かって、順番にアクセスを行うように
したSCAN方式においては、シーク時間を減少させること
ができ、それだけ、オーバヘッドを短くすることができ
る。しかしながら、このSCAN方式も、従来の場合に較べ
てシーク時間は短くすることができるが、回転待ち時間
は短くすることができない。それに対して、上記した方
法(FARAD方式)においては、シーク時間をSCAN方式と
同様に短くすることができるだけでなく、回転待ち時間
も、従来の場合(SCAN方式の場合)より短くすることが
でき、従って、トータルのオーバヘッドを、SCAN方式の
場合より短くすることができる。
【0093】以上に説明したように、本実施の形態で
は、スキューθskewとギャップθgapを適切に(スキュ
ーθskewがギャップθgapに対応するように)選ぶこと
で、ヘッドの平均移動距離LaにおけるオーバヘッドT
d( L)を最低限に抑えることが可能であり、これによ
って回転待ち時間を小さくすることができる。図16に
示したフローチャートの処理では、サブブロックの大き
さは与えられた固定の値であったが、サブブロックの大
きさをある程度の範囲で選択可能である。この場合はギ
ャップθgapとスキューθskewの両方を変化させること
ができるので、平均移動距離La付近でシーク時間に近
付くように、より細かく直線の位置を制御することがで
きる。この点については、後に、詳述する。
【0094】以上の方法によって、サブブロック間の移
動に伴うオーバヘッドは大きく改善される。しかしサブ
ブロックが大きく、複数のトラック、あるいは複数のシ
リンダにまたがる場合には、トラック変更にともなう時
間や隣接シリンダへの移動時間も考慮しなくてはならな
い。トラックの変更も隣接シリンダへの移動も、必要な
時間はそれぞれ一定なので、この時間を経た後に、丁度
ヘッドの下にデータが到着するように、トラック間ある
いはシリンダ間でスキューを与えておくことにより、ト
ラックの変更やシリンダの移動に伴って、サブブロック
内で長い回転待ちが発生することを抑制することができ
る。
【0095】次に、コントローラ262が、ヘッドの移
動量が最小となるように、ヘッドのアクセス順序を決定
するスケジューリングの処理について説明する。図26
は、このスケジューリングの処理のフローチャートを示
すものである。ステップS11でコントローラ262
は、SCSIコントローラ202を制御し、ハードディスク
201のヘッドを、シリンダ「#0」に移動させる。次
いで実際のスケジュールを行なうステップS12に移
る。
【0096】ステップS12では、ステップS12−1
において、コントローラ262は、時間的に前の(古
い)ものから順にN個のアクセスリクエストを内蔵する
アクセスリクエストバッファ(図示せず)から読み込
む。このアクセスリクエストバッファには、ホストパー
ソナルコンピュータ3から供給されたアクセスリクエス
トが入力された順番に保持されている。アクセスリクエ
スト1個には、アクセスすべきサブブロックの番号と、
データ転送に使用するデータバッファ212の先頭アド
レスとが記述されている。また、個数Nは、あらかじめ
ホストパーソナルコンピュータ3から与えられている定
数である。
【0097】ステップS12−2において、コントロー
ラ262は、N個のアクセスリクエストのそれぞれにつ
いてブロックマップ304を参照し、アクセスすべきサ
ブブロックの物理アドレス(シリンダ番号、メディア番
号、セクタ番号)を知る。次いでステップS12−3に
おいて、これらN個のアクセスリクエストをシリンダ番
号の小さい順に(外周側から内周側の順に)並べ替え
る。この操作によってSCANアルゴリズムのスケジュール
が実現される。
【0098】ステップS12−4では、並べ替えられた
これらのアクセスリクエストを、シリンダ番号の小さい
ものから順に、SCSIコントローラ202を介してハード
ディスク201に送り、実際のアクセスとデータ転送を
行なう。1サブブロック分のアクセス指示を出したら、
ステップS12−5でデータ転送の終了を待ち、次いで
次のアクセス指示を出す。ステップS12−6で、全て
のリクエストの転送を完了したか否かを判定し、まだ、
転送していないリクエストがあるときは、ステップS1
2−4に戻り、同様の処理を実行する。これをN回繰り
返すことで、ステップS12−6で、N個のアクセスリ
クエストの処理が終了したと判定される。
【0099】次に、ステップS12−7においてN個の
アクセスの処理が終了したことをホストパーソナルコン
ピュータ3に通知して、当該N個のアクセスリクエスト
に関する一連の処理が終了する。
【0100】尚、最後のステップS12−8において、
アクセス要求が全て処理され、アクセス要求バッファが
空になったかどうかが判断される。アクセス要求が残っ
ている場合、コントローラ262はステップS12−1
に戻り、次のN個のアクセスリクエストを取り出して処
理を続行する。もしアクセスリクエストバッファにN個
のリクエストがなければ、N個のリクエストが蓄積され
るまで、このステップで待ち、N個のリクエストが蓄積
されたら、ステップS12−1に戻り、同様の処理が実
行される。
【0101】尚、例えば、コントローラ262は、ハー
ドディスク201の外側から内側の全領域にわたってギ
ャップθgapが一定であるように、サブブロックの大き
さを変化させることで、アクセスのリアルタイム性をさ
らに高めることができる。
【0102】次に、図27乃至図32のフローチャート
を参照して、コントローラ262が、k番目のサブブロ
ックを所定のハードディスク201の所定のトラックに
配置する場合の処理手順について説明する。
【0103】最初に、ステップS31において、全部で
m個(図7の実施の形態の場合、m=32)あるハード
ディスク201から、誤り訂正用データとしてのパリテ
ィデータおよびn個のサブブロックのデータを格納する
合計n+1個のハードディスク201を選択する。この
例では、まず、パリティデータを格納するハードディス
ク201を選択し、次に、サブブロックのデータを内周
側から順次配置するハードディスク201と、サブブロ
ックのデータを外周側から順次配置するハードディスク
201を選択している。
【0104】各サブブロックに1乃至nの番号を付けた
とき、例えば、奇数番目のサブブロックはハードディス
ク201に内周側から順次配置し、偶数番目のサブブロ
ックはハードディスク201に外周側から順次配置す
る。さらに、少数のハードディスク201に集中してサ
ブブロックが配置されないように、データによって配置
するハードディスク201をずらして選択するようにす
る。
【0105】図28は、図27のステップS31の処理
の詳細を示すフローチャートである。即ち、ステップS
41において、パリティデータを配置するハードディス
ク201として、次式(4)で表されるj番目のハード
ディスク201を選択する。
【0106】 j=MOD(k−1,m)+1 ・・・(4) ここで、MODは、k−1をm(ハードディスク201
の総数)で割った余りを演算する演算子である。
【0107】この処理により、例えば、いま、ハードデ
ィスク201の数mを32とするとき、j=1,2,
3,・・・,31,32,1,2,・・・といった順番
で、各ハードディスク201が選択される。
【0108】次に、ステップS42において、第i番目
(i=1,3,5,・・・)のサブブロックのデータ
を、内周側から順次配置するハードディスク201とし
て、次式(5)で表されるj番目のハードディスク20
1を選択する。
【0109】 j=MOD(k+i−1,m)+1 ・・・(5)
【0110】これにより、例えば、i=1の場合(第1
番目のサブブロックを記録する場合)、jとして、2,
3,4,・・・,32,1,2,...の順番に、ハー
ドディスク201が選択され、i=3の場合(第3番目
のサブブロックを記録する場合)、4,5,6,・・
・,32,1,2,・・・の順番に、ハードディスク2
01が選択される。
【0111】次に、ステップS43に進み、第i番目
(i=2,4,6,・・・)のサブブロックのデータ
を、外周側から順次配置するハードディスク201とし
て、上式(5)で表されるj番目のハードディスク20
1を選択する。
【0112】これにより、例えば、i=2の場合(第2
番目のサブブロックを記録する場合)、j=3,4,
5,・・・,32,1,2,...のハードディスク2
01が選択され、i=4の場合(第4番目のサブブロッ
クを記録する場合)、j=5,6,7,・・・,32,
1,2,・・・のハードディスク201が、順次、選択
される。
【0113】このように、外周側のトラックと内周側の
トラックを交互にペア(対)として用いることにより、
より内周側のサブブロックの大きさを、より外周側のサ
ブブロックの大きさより小さくすることが可能となり、
各サブブロックのギャップθgapを一定にすることがで
きる。
【0114】図28に示したフローチャートでは、サブ
ブロックのデータを、内周側から順次配置するサブブロ
ックと、外周側から順次配置するサブブロックを交互に
決めていったが、バランスが取れていれば、交互でなく
とも構わない。即ち、サブブロックを順番に、内周側か
ら順次ハードディスク201に配置し、次に、残りのサ
ブブロックを順番に、外周側から順次ハードディスク2
01に配置するようにしてもよい。
【0115】また、サブブロックが少数のハードディス
ク201に集中しないのであれば、上記式(4)と式
(5)で表されるj番目のハードディスク201を選択
しなくとも構わない。例えば、内周側から順次サブブロ
ックを配置するハードディスク201は、内周をあまり
使用していないハードディスク201の中から選択し、
また、外周側から順次サブブロックを配置するハードデ
ィスク201は、外周をあまり使用していないハードデ
ィスク201の中から選択する方法も有効である。いず
れにしても、パリティデータは、ステップS41で選択
されたハードディスク201上の外周側から順次配置す
る。
【0116】以上のようにして、ハードディスク201
を決定するとリターンし、次に、図27のステップS3
2に進む。
【0117】ステップS32においては、選択された各
ハードディスク201上において、パリティデータおよ
びサブブロックのデータの配置を開始する開始論理セク
タを決定する。
【0118】図29は、この開始論理セクタを決定する
処理手順を示すフローチャートである。まず、ステップ
S51において、外周側から順次パリティデータを配置
するハードディスク201に関して、開始論理セクタア
ドレスLkpを求める。
【0119】図30は、図29のステップS51におけ
る処理の詳細を示すフローチャートである。最初に、ス
テップS61において、サブブロック(いまの場合、パ
リティデータ)を配置するトラックとして、サブブロッ
ク(パリティデータ)が配置されていない未配置領域の
中における最外周トラックを選択する。未配置領域は、
アロケーションマップ303から知ることができる。こ
れにより、物理セクタアドレスのシリンダ番号(CYL
ki)、メディア番号(MEDki)が決まり、ZBRテーブ
ル301を参照して、この配置場所における1トラック
あたりのセクタ数(Tki)が分かる。
【0120】次に、ステップS62において、シリンダ
番号(CYLki)と最適なスキュー(θskew)の値か
ら、次式(6)によって、ステップS61で選択され
た、未配置領域の中の最外周トラック(シリンダ番号C
YLki)の先頭と、物理的な最外周トラック(最初のサ
ブブロックのデータが記録されたトラック)(シリンダ
番号0のトラック)の先頭との間(両トラックの間のシ
リンダ数は、CYLkiとなる)のなす角度θkiが求めら
れる。
【0121】 θki=θskew×CYLki ・・・(6) ただし、θki>2πのとき、θki<2πとなるまで、θ
ki=θki−2πの処理を繰り返す。
【0122】次に、ステップS63に進み、式(6)に
おいて求めた角度θkiと、トラックあたりのセクタ数
(Tki)より、次式(7)によって、セクタ番号(SE
Cki)が求められる。
【0123】 SECki=ROUNDUP(Tki×θki/2π) ・・・(7) ここで、ROUNDUPは、端数を切り上げた整数を求
める演算子を意味する。
【0124】次に、ステップS64において、物理アド
レステーブル302(図13)を参照して、ステップS
61乃至S63において求めた物理セクタアドレス(C
YLki、MEDki、SECki)から論理セクタアドレス
(Lki)(いまの場合、Lkp)を決定し、リターンす
る。
【0125】次に、図29のステップS52に進み、内
周側から順次配置する全てのハードディスク201に関
して、それぞれの開始論理セクタアドレスLki(i=
1,3,5,・・・)を求める。
【0126】図31は、図29のステップS52におけ
る処理の詳細を示すフローチャートである。最初に、ス
テップS71において、物理アドレステーブル302
(図13)を参照して、サブブロックを配置するトラッ
クとして、未配置領域の中における最内周トラックを選
択する。これにより、物理セクタアドレスのシリンダ番
号(CYLki)、メディア番号(MEDki)が決まり、
ZBRテーブル301を参照して、この配置場所における
1トラックあたりのセクタ数(Tki)が分かる。
【0127】次に、ステップS72において、ステップ
S71で選択された、未配置領域の中の最内周トラック
の先頭と、物理的な最内周トラック(最初のサブブロッ
クのデータが記録されたトラック)の先頭との間のなす
角度θkiを求め、ステップS73においてセクタ番号
(SECki)を求める。そして、ステップS74におい
て、求めた物理セクタアドレス(CYLki、MEDki、
SECki)から論理セクタアドレス(Lki)を決定し、
リターンする。上述したステップS72乃至S74にお
ける処理は、トラックを外周側からではなく、内周側か
ら順次選択する点を除き、基本的には、図30のステッ
プS62乃至S64における処理と同様の処理であるの
で、ここではその詳細な説明は省略する。
【0128】次に、図29のステップS53に進み、サ
ブブロックのデータを、外周側から順次配置する全ての
ハードディスク201に関して、それぞれの開始論理セ
クタアドレスLki(i=2,4,6,・・・)を求め
る。ここでの処理手順は、図30のフローチャートを参
照して上述した場合と同様であるので、ここではその説
明は省略する。そして、処理が終了すると、リターンす
る。
【0129】図29乃至図31に示した処理例において
は、サブブロックを外周側から順次各トラックに配置す
る場合、サブブロックを配置するトラックを未配置領域
の中の最外周トラックから選択し、サブブロックを内周
側から順次各トラックに配置する場合、サブブロックを
配置するトラックを未配置領域の中の最内周トラックか
ら選択するものとしたが、必ずしも最外周トラックや最
内周トラックを選択する必要はない。例えば、ZBR方式
のフォーマットでは、同一のゾーンであれば、トラック
あたりのセクタ数も同一であり、各サブブロックのサイ
ズおよびギャップの値は変わらないからである。
【0130】以上のようにして、開始論理セクタアドレ
スが求められると、次に、図27のステップS33に進
み、パリティデータと各サブブロックのサイズが決定さ
れる。サブブロックのサイズを決定する場合の処理手順
については、図32のフローチャートを参照して後述す
る。
【0131】次に、各サブブロック(パリティデータの
場合を含む)のサイズ(セクタ数)はどうあるべきかを
考えてみる。まず、各サブブロックのサイズの和は、元
の1ブロックのデータのサイズに等しい。即ち、各サブ
ブロックのサイズ(セクタ数)をSki(i=1,2,
3,・・・,n)とし、元の1ブロックのデータのサイ
ズ(セクタ数)をSとすると、Sは次式(8)で表され
る。
【0132】 Sk1+Sk2+,・・・,+Skn=S ・・・(8)
【0133】一方、各サブブロックの読み出し時間また
は書き込み時間が等しくなるためには、各サブブロック
のギャップθgapの値が等しくなければならない。即
ち、次の式(9)が成り立っていなければならない。
【0134】 Sk1/Tk1=Sk2/Tk2=,・・・,=Skn/Tkn ・・・(9)
【0135】上記式(9)において、Tki(i=1,
2,3,・・・,n)は、i番目のサブブロックが配置
されるトラックのセクタ数である。
【0136】式(8)および式(9)より、各サブブロ
ックのギャップθgapの値を一定にするための各サブブ
ロックのセクタ数Skiは次式(10)で与えられる。
【0137】 Ski=S×Tki/T ・・・(10) ただし、T=Tk1+Tk2+,・・・,+Tknとする。
【0138】実際には、セクタ数Skiは整数で与えられ
るので、各サイズは若干の微調整が必要である。
【0139】一方、パリティデータのサイズSkpは、各
サブブロックのサイズが決まっているとき、次式(1
1)で与えられる。
【0140】 Skp=MAX(Sk1,Sk2,・・・,Skn) ・・・(11)
【0141】式(11)において、MAXは、サブブロ
ックのサイズSk1乃至Sknのうち、最も大きいものを求
める演算子である。
【0142】パリティデータは、図27のステップS3
1およびステップS32より、ハードディスク201の
外周よりのトラックに配置されることが保証されている
ので、次式(12)が成立することがわかる。
【0143】 Sk1/Tk1=Sk2/Tk2=,・・・,=Skn/Tkn=Skp/Tkp ・・・(12) ここで、Tkpは、サブブロックSkpが配置されるトラッ
クのセクタ数である。
【0144】以上のサブブロックのサイズを決定する手
順を実現するフローチャートが図32に示したものであ
る。最初に、ステップS81において、n個のサブブロ
ックが配置される配置場所に対応するトラックの1トラ
ックあたりのセクタ数Tki(i=1,2,・・・,n)
の和Tを求める。次に、上記式(10)で表される演算
を、変数iが1からnまでについて行い、各サブブロッ
クのサイズSki(i=1,2,・・・,n)を求める。
【0145】次に、ステップS82に進み、上記式
(8)で表される演算を行い、ステップS81で求めた
各サブブロックのサイズSkiの和が、元の1ブロックの
データのサイズSと等しいか否かが判定される。各サブ
ブロックのサイズSkiの和が、元の1ブロックのデータ
のサイズSと等しくないと判定された場合、ステップS
83に進み、各サブブロックのサイズSkiの和が、元の
1ブロックのデータのサイズSと等しくなるように、各
サブブロックのサイズSkiを微増減させる。その後、ス
テップS82に戻り、各サブブロックのサイズSkiの和
が、元の1ブロックのデータのサイズSと等しいと判定
されるまで、ステップS82およびS83の処理が繰り
返される。
【0146】一方、ステップS82において、各サブブ
ロックのサイズSkiの和が、元の1ブロックのデータの
サイズSと等しいと判定された場合、ステップS84に
進み、パリティデータのサイズSkpが求められる。即
ち、サブブロックSkiの中の最も大きいサイズがパリテ
ィデータのサイズSkpとされる。
【0147】ステップS84の処理が終了すると、リタ
ーンする。これにより、図23に示したフローチャート
のステップS33の処理が終了し、全ての処理を終了す
る。
【0148】以上のようにして、各ハードディスク20
1において、各サブブロックのギャップθgapが一定と
なるように、内周側に配置されるサブブロックのサイズ
を小さくし、外周側に配置されるサブブロックのサイズ
を大きくする。
【0149】図33は、以上のようにしてハードディス
ク201に分配されたサブブロックの例を表している。
ここでは、ハードディスク201の数mを6とし、サブ
ブロックの数nを4としている。
【0150】1番目のフレームのパリティデータは、ハ
ードディスク201−1に、それに対応する4個のサブ
ブロックは、ハードディスク201−2乃至201−5
に分配して配置される。ハードディスク201−1に配
置されるパリティデータと、ハードディスク201−
3,201−5に配置されるサブブロックは、最外周ト
ラックに入れられ、ハードディスク201−2,201
−4に配置されるサブブロックは、最内周トラックに入
れられる。
【0151】また、2番目のフレームのパリティデータ
は、ハードディスク201−2に、サブブロックは、ハ
ードディスク201−3乃至201−6に、それぞれ、
外周より、内周より、外周より、内周より、外周よりの
順番で入れられ、3番目のフレームのパリティデータ
は、ハードディスク201−3に、サブブロックは、ハ
ードディスク201−4乃至201−6、およびハード
ディスク201−1に、それぞれ、外周より、内周よ
り、外周より、内周より、外周よりの順番で入れられ
る。以下同様にして、各フレームのデータが配置され、
最後のフレームのデータは、例えば、ハードディスク2
01−3乃至201−6およびハードディスク201−
1のシリンダのほぼ中間あたりに配置される。
【0152】このように配置されたパリティデータとサ
ブブロックを、1つのハードディスク201に注目して
観察してみると、各サブブロックのギャップθgapの値
がほとんど同一であるから、各サブブロックの読み出
し、および書き込みに要する時間がほぼ一定となる。
【0153】以上のように、上記実施の形態において
は、ハードディスク201上でのデータの格納場所に拘
らず、パリティデータおよびサブブロックを実際に読み
出しあるいは書き込みを行う時間を一定とすることがで
きる。
【0154】また、上記実施の形態においては、データ
にアクセスする場合、外周から内周方向にスキャンする
ようにしたが、内周から外周方向にスキャンするように
することも可能である。その場合、内周から外周にヘッ
ドを移動させながら、データにアクセスするときに最適
なスキューを設定するようにすることができる。
【0155】次に、RAIDコントローラ282における、
パリティデータを生成し、これを利用して誤りを補正す
る場合の動作について説明する。例えば、図15に示し
たように、外周に記録されるサブブロックのサイズは、
内周に記録されるサブブロックのサイズより大きくされ
て、1つのブロックが4個のサブブロック#1乃至サブ
ブロック#4に分割される。
【0156】パリティデータのサイズは、分割されたサ
ブブロックの中の最もサイズが大きいサブブロックのサ
イズと等しくなるように設定される。
【0157】基本的には、j番目のパリティデータPj
は、各サブブロックのj番目のデータから生成される。
図34(A)に示すように、jの値が小さい場合、全て
のサブブロックに対応するj番目のデータが存在するの
で、全てのサブブロック#1乃至#4のデータから、パ
リティデータPjが生成される。一方、jがある程度よ
り大きくなると、図30(B)に示すように、サブブロ
ック#1,#3ではj番目のデータが存在しないことに
なる。
【0158】このような場合、サイズがj以上であるサ
ブブロック#2,#4からj番目のデータに基づいて、
パリティデータPjが生成される。あるいは、サブブロ
ック#1,#3に予め決められた所定のデータを付加
し、すべてのサブブロックのデータからパリティデータ
Pjを生成するようにすることもできる。なお、パリテ
ィデータを発生するアルゴリズムには様々な種類がある
が、ここではその詳細までを述べる必要がないので省略
する。
【0159】次に、データの誤りを訂正する場合におけ
る動作は次のようになる。すなわち、例えば、所定のサ
ブブロックのj番目のデータが誤っている場合、基本的
には他のサブブロックのj番目のデータとパリティデー
タを用いて誤りを訂正する。例えば、図35(A)に示
すように、jの値が小さい場合、全てのサブブロックの
j番目のデータからパリティデータが生成されているの
で、パリティデータのj番目のデータと誤りのないサブ
ブロック#1乃至#3の全てのj番目のデータを用い
て、誤りのあるサブブロック#4のj番目のデータの訂
正を行う。
【0160】一方、図35(B)に示すように、jの値
がある程度大きくなると、サイズがj以上であるサブブ
ロックのj番目のデータからパリティデータが生成され
るので、サイズがj以上であるサブブロックの中の誤り
がないサブブロック#2と、パリティデータを使用し
て、誤りのあるサブブロック#4のj番目のデータの訂
正を行う。
【0161】本実施の形態においては、このようなパリ
ティデータの生成と、パリティデータを用いた誤り訂正
処理は、リアルタイムで行われるようになされている。
図36は、そのような処理を行う部分の構成を表してい
る。
【0162】同図に示すように、ビデオブロック271
−1のRAIDコントローラ282−1は、データを1パケ
ット転送ブロック分だけ遅延させる遅延素子401−1
乃至403−1を有している。RAIDコントローラ282
−1は、ビデオプロセッサ283−1より10ビットの
バスを介して供給される画素データからパリティデータ
を生成し、32ビットのバスを介してFIFO404−1に
供給するとともに、画素データを32ビットのバスを介
してFIFO405−1に供給するようになされている。ま
た、RAIDコントローラ282−1は、DMAコントローラ
281−1から64ビットのバスとFIFO406−1を介
して供給された画素データ(再生データ)に対して、パ
リティデータに基づく誤り訂正処理を行い、10ビット
の画素データ単位でビデオプロセッサ283−1に供給
するようになされている。
【0163】図37は、RAIDコントローラ282−1に
おける10ビットのデータと32ビットのデータの変換
処理の例を表している。第1のモードが設定されている
場合、RAIDコントローラ282−1は、図37(A)に
示すように、ビデオプロセッサ283−1より10ビッ
ト単位でデータが供給されると、その10ビット単位の
データを3個集め、第1番目と第2番目の10ビットの
データの間に、1ビットの0のダミーデータを挿入し、
また、第2番目と第3番目の10ビットのデータの間
に、0のダミーデータを挿入して、合計32ビットのデ
ータとする。また、逆に32ビットのデータが、バスか
ら供給された場合、第11番目のビットと第22番目の
ビットを無視して、その前後の10ビットずつのデータ
に3分割して処理する。
【0164】また、第2のモードが設定されている場
合、図37(B)に示すように、RAIDコントローラ28
2−1は、10ビットで入力されるデータのうち、下位
2ビットを無視し、4組の8ビットのデータを組み合わ
せて、32ビットのデータとする。また、逆に32ビッ
トのデータが入力された場合には、これを8ビットずつ
に区分し、各8ビットのデータに、2ビットのダミーデ
ータを付加して、10ビットのデータとする。
【0165】RAIDコントローラ282−1とDMAコント
ローラ281−1は、FIFO404−1乃至406−1を
介して相互に接続されている。FIFO404−1乃至40
6−1のRAIDコントローラ282−1側は、32ビット
のバスで構成されており、DMAコントローラ281−1
側は、64ビットのバスで構成されている。各FIFOは、
32ビットで構成されているため、例えば、FIFO404
−1は、最初に入力された32ビットのパリティデータ
を64ビットのバスの、例えば上位側の32ビットのバ
スを介してDMAコントローラ281−1に出力し、次に
入力される32ビットのパリティデータを、64ビット
のバスの下位側の32ビットのバスを介してDMAコント
ローラ281−1に供給する。
【0166】FIFO405−1も、FIFO404−1と同様
に、RAIDコントローラ282−1より供給される、最初
の32ビットの画素データを、64ビットのバスのMSB
側の32ビットのバスを介してDMAコントローラ281
−1に出力し、次に、入力される32ビットの画素デー
タを、64ビットのバスのLSB側の32ビットのバスを
介してDMAコントローラ281−1に出力する。
【0167】一方、DMAコントローラ281−1から6
4ビットのバスを介して供給される画素データ(再生画
素データ)を、RAIDコントローラ282−1に供給する
FIFO406−1は、図38に示すように、それぞれ32
ビットの容量を有するFIFO406A−1と406B−1
により構成されている。DMAコントローラ281−1よ
り64ビットのバスのMSB側の32ビットのバスを介し
て供給された画素データは、FIFO406A−1に供給さ
れ、LSB側の32ビットのバスを介して供給された画素
データは、FIFO406B−1に供給される。そして、FI
FO406A−1に記憶された画素データが、32ビット
のバスを介してRAIDコントローラ282−1に供給され
た後、次にFIFO406B−1に記憶された32ビットの
画素データが読み出され、32ビットのバスを介してRA
IDコントローラ282−1に供給される。
【0168】DMAコントローラ281−1は、64ビッ
トのDMAバス251に接続されている。また、FIFO40
7−1は、32ビットの制御バス252に接続されてお
り、制御バス252を介して入力されたコマンドを、RA
IDコントローラ282−1に出力するようになされてい
る。
【0169】なお、図示は省略するが、ビデオブロック
271−2乃至271−6も、ビデオブロック271−
1と同様に構成されている。
【0170】ボード421−1には、3枚のSCSIボード
431−1乃至431−3が設けられている。そして、
SCSIボード431−1には、S-DRAMで構成されるデータ
バッファ212−1が設けられており、その入出力が、
バッファコントローラ211−1により制御されるよう
になされている。バッファコントローラ211−1に
は、32ビットのバスを介して、2つのSCSIコントロー
ラ202−1,202−2が接続されており、SCSIコン
トローラ202−1は、2台のハードディスク201−
1,201−2を制御するようになされている。また、
SCSIコントローラ202−2は、2台のハードディスク
201−3,201−4を制御するようになされてい
る。
【0171】図示は省略するが、SCSIボード431−
2,431−3も、SCSIボード431−1と同様に構成
されている。また、ボード421−2,421−3も、
ボード421−1と同様に構成されている。従って、こ
の構成例においては、1枚のボード421−iにより、
12台のハードディスク201を制御することができる
ようになされており、3枚のボードが設けられているの
で、合計36台のハードディスク201を制御する機能
を有するものとされている。但し、実際には、32台の
ハードディスク201が接続されている。
【0172】上述したように、1フレーム分の画像デー
タは、例えば、4つのサブブロックに区分されるが、こ
のサブブロックは、さらに128ワード分の画素データ
を単位とするパケット転送ブロックに区分されて、パリ
ティデータの生成と、これを利用した誤り訂正処理が実
行される。
【0173】すなわち、例えば、NTSC方式の1フレーム
分の画像データは、図39に示すように、1440×5
12画素により構成される。1画素は、10ビットの輝
度(Y)データと、10ビットの色差(UまたはV)デ
ータで構成される。
【0174】1ワードは32ビットで構成されるため、
1ワードの中に、10ビットの輝度データを3個配置す
ることができる。そして、3個の輝度データの間に、図
37(A)に示したように、2ビットのダミーデータを
付加することで、1ワードにより、結局、3画素分のデ
ータを配置することができる。このような観点からする
と、図40に示すように、1パケット転送ブロックに、
384画素のデータを配置することになる。
【0175】但し、10ビットの輝度データと10ビッ
トの色差データにより、1画素分のデータが構成される
ものと考えると、1パケット転送ブロック(128ワー
ド)に配置される画素数は、1ワードに1.5画素分を
配置することができることになるので、129画素分の
データを配置することになる。
【0176】なお、ここでは簡単のために、図40に示
すように、1つの画素が10ビットの輝度データで構成
されるものと考えて、1パケット転送ブロックに384
画素が配置されるものとする。
【0177】上述したように、DMAコントローラ281
は、RAIDコントローラ282とデータバッファ212と
の間において、パケット転送ブロックを単位とするDMA
転送を行う。図41は、制御バス252を介して、コン
トローラ262からDMAコントローラ281に、供給さ
れるDMAコマンドの例を表している。この例は、RAIDコ
ントローラ282からデータバッファ212に対して、
記録すべき画素データをDMA転送する場合のコマンドの
例を表している。
【0178】図41に示すように、このDMAコマンド
は、コマンドとオペランドとにより構成されており、オ
ペランドには、画素データを記録すべきデータバッファ
212のアドレスが保持されている。また、コマンドに
は、パケット転送ブロックを転送する回数(ループ回
数)が規定されている。
【0179】なお、このコマンドとしては、ループ回数
の他、各種の制御を指令するコマンドを配置することが
できるのはもとよりである。例えば、RAIDコントローラ
282に対するコマンドには、RAID比が設定されてい
る。
【0180】例えば、いま、図40に示すように、1フ
レーム分の画素データが、1パケット転送ブロックごと
にA0,B0,C0,D0,A1,B1,C1,D1,
・・・のように、左上から右下方向に、順次区分された
ものとする。このパケット転送ブロックを、図41に示
すようなDMAコマンドで、DMAコントローラ281に転送
を指令すると、DMAコントローラ281は、そのFIFO5
01−1でこのコマンドを受け取り、図42に示すよう
に、データバッファ212に対して、データの書き込み
を行う。
【0181】すなわち、図41に示すように、コマンド
には、4つのサブブロックに対応して、データバッファ
212のアドレスa0乃至d0がそのオペランドに規定
されており、また、その4個のサブブロックに対応する
パリティデータの記録すべきデータバッファ212のア
ドレスとして、p0がオペランドに記述されている。そ
して、コマンドとして、ループ回数nが記述されてい
る。この場合、図42に示すように、データバッファ2
12のアドレスa0にパケット転送ブロックA0が書き
込まれる。アドレスb0にパケット転送ブロックB0が
書き込まれ、アドレスc0にパケット転送ブロックC0
が書き込まれ、アドレスd0にパケット転送ブロックD
0が書き込まれる。そして、4個のサブブロックに対応
して生成されたパリティデータのうち、最初の1パケッ
ト転送ブロック分のパリティデータP0が、データバッ
ファ212のアドレスp0に書き込まれる。
【0182】次に、データバッファ212のアドレスa
0+128(ワード)にパケット転送ブロックA1が書
き込まれ、アドレスb0+128にパケット転送ブロッ
クB1が書き込まれ、アドレスc0+128にパケット
転送ブロックC1が書き込まれ、さらにアドレスd0+
128にパケット転送ブロックD1が書き込まれる。そ
して、アドレスp0+128に、パリティデータP1が
書き込まれる。
【0183】以下、同様に、アドレスa0から連続する
領域に、データA0,A1,A2,・・・A(n−1)
が書き込まれ、アドレスb0から連続する領域に、デー
タB0,B1,B2,・・・B(n−1)が書き込まれ
る。また、アドレスc0から連続する領域に、データC
0,C1,C2,・・・C(n−1)が書き込まれ、ア
ドレスd0から連続する領域に、データD0,D1,D
2,・・・D(n−1)が書き込まれ、アドレスp0か
ら連続する領域に、パリティデータP0乃至P(n−
1)が書き込まれる。
【0184】図43は、1フレームの画像の画素データ
を4:1のRAIDで転送する領域R1と、2:1のRAIDを
行う領域R2の範囲を示している。同図に示すように、
A0,B0,C0,D0,A1,B1,C1,D1,・
・・,An,Bn,Cn,Dnの連続するパケット転送
ブロックが、4:1のRAIDで転送される。そして、それ
に続く領域R2のパケット転送ブロックA(n+1),
C(n+1),A(n+2),C(n+2),・・・,
Ar,Crが、2:1のRAIDで転送される。
【0185】上記したパケット転送ブロックAi,B
i,Ci,Diは、それぞれ第1乃至第4のサブブロッ
クを構成している。
【0186】すなわち、図44に示すように、第1のサ
ブブロックは、A0乃至Arのパケット転送ブロックで
構成され、第2のサブブロックは、B0乃至Bnのパケ
ット転送ブロックで構成され、第3のサブブロックは、
C0乃至Crのパケット転送ブロックで構成され、第4
のサブブロックは、D0乃至Dnのパケット転送ブロッ
クで構成されている。そして、パリティデータは、P0
乃至Prのパケット転送ブロックで構成されている。
【0187】この図43と図44を比較して明らかなよ
うに、例えば、第1のサブブロックを構成するパケット
転送ブロックAiは、図43に示す1フレームの画像上
の連続する画素ではなく、所定の位置に分散して配置さ
れている画素で構成されている(勿論、1つのパケット
転送ブロック内においては、画素が連続している)。
【0188】そして、図44に示すように、各サブブロ
ックのn+1個のパケット転送ブロックは、n+1個の
パリティデータとともに、4:1のRAIDを構成してい
る。
【0189】これに対して、第1のサブブロックのパケ
ット転送ブロックAn+1からパケット転送ブロックA
rまでのパケット転送ブロック、第3のサブブロックの
パケット転送ブロックCn+1からパケット転送ブロッ
クCrまでのパケット転送ブロック、さらにパケット転
送ブロックPn+1からパケット転送ブロックPrまで
のパリティデータにより、2:1のRAIDが構成されてい
る。
【0190】4:1のRAIDの領域のパケット転送ブロッ
クは、図44の左側に示すようなDMAコマンドにより、
データバッファ212にDMA転送される。すなわち、第
1のサブブロックのデータA1は、データバッファ21
2のアドレスa0に記憶され、第2のサブブロックのパ
ケット転送ブロックB1は、データバッファ212のア
ドレスb0に記憶され、第3のサブブロックのパケット
転送ブロックC1は、データバッファ212のアドレス
c0に記憶され、さらに第4のサブブロックのパケット
転送ブロックD1は、データバッファ212のアドレス
d0に記憶される。そして、パリティデータは、データ
バッファ212のアドレスp0に記憶される。次に、第
2番目のパケット転送ブロックA2,B2,C2,D2
と、パリティデータP2が、順次転送される。以下、同
様にして、この4:1のRAIDの領域のパケット転送ブロ
ックに対しては、n+1回の転送が行われる。
【0191】これに対して、2:1のRAIDの領域のパケ
ット転送ブロックは、図44において右側に示すDMAコ
マンドで、データバッファ212にDMA転送される。す
なわち、第1のサブブロックのパケット転送ブロックA
n+1は、データバッファ212のアドレスa0に記憶
される。同様に、第3のサブブロックのパケット転送ブ
ロックCn+1は、データバッファ212のアドレスc
0に記憶され、パリティデータPn+1は、データバッ
ファ212のアドレスp0に記憶される。以下、同様
に、第2番目以降のパケット転送ブロックAn+2,C
n+2,Pn+2,An+3,Cn+3,Pn+3,・
・・が順次転送される。そして、この場合のパケット転
送ブロックの転送回数は、r−n+2回とされる。
【0192】図45と図46は、データバッファ212
からパケット転送ブロックを読み出す場合のDMAコマン
ドを表している。図45は、各パケット転送ブロックに
誤りがない場合を表しており、図46は、誤りがある場
合を表している。
【0193】図45に示すように、各パケット転送ブロ
ックに誤りがない場合には、各パケット転送ブロックが
記憶されているデータバッファ212のアドレスa0乃
至d0と、転送回数が記述されている。すなわち、この
場合、データバッファ212のアドレスa0から第1の
サブブロックの1つのパケット転送ブロックが読み出さ
れ、アドレスb0から第2のサブブロックの1つのパケ
ット転送ブロックが読み出され、アドレスc0から第3
のサブブロックの1つのパケット転送ブロックが読み出
され、さらに、アドレスd0から第4のサブブロックの
1つのパケット転送ブロックが読み出される。このよう
な読み出しが、ループ回数分だけ行われる。
【0194】これに対して、図46に示すように、例え
ば第3のブロックのパケット転送ブロックに誤りがある
場合には、その誤りがあるパケット転送ブロックが記憶
されているアドレスc0に代えて、パリティデータが記
憶されているアドレスp0が記述される。そして、コマ
ンドとして、ループ回数が指定されるとともに、アドレ
スc0に記憶されている第3のサブブロックのデータに
誤りがあることを表すフラグが記述される。従って、こ
の場合には、データバッファ212から第3のサブブロ
ックのデータは読み出されず、それに代えて、パリティ
データが読み出されることになる。
【0195】次に、RAIDコントローラ282において、
リアルタイムでパリティデータを生成し、また、リアル
タイムでパリティデータを利用して、誤り訂正を行うた
めのより具体的な構成と動作について説明する。図47
は、このような、RAIDコントローラ282のリアルタイ
ムでパリティデータを生成し、また、これを利用して、
誤り訂正を行う部分の構成例を表している。
【0196】セレクタ451は、ビデオプロセッサ28
3より供給される記録データ(画素データ)と、データ
バッファ212から供給される画素データ(再生デー
タ)の、いずれか一方を選択し、入力データとして、図
示せぬ他の回路に供給させるとともに、遅延素子401
−4並びにセレクタ454,455の入力Aに供給させ
る。遅延素子401−4は、入力されたデータを、1パ
ケット転送ブロック分だけ遅延した後、後段の遅延素子
401−3に出力する。遅延素子401−3も、入力さ
れたデータを1パケット転送ブロック分だけ遅延させた
後、後段の遅延素子401−2に出力する。遅延素子4
01−2も、入力されたデータを1パケット転送ブロッ
ク分だけ遅延した後、後段の遅延素子401−1に出力
する。遅延素子401−1は、入力されたデータを1パ
ケット転送ブロック分だけ遅延した後、セレクタ453
の入力Aに供給する。
【0197】なお、この遅延素子401−1乃至401
−4は、この図47のブロック図においては4個示され
ているが、実際には、図36における1個の遅延素子4
01により構成されており、この遅延素子401をルー
プ回数分(いまの場合、4個)だけ繰り返し使用するこ
とで、ループ回数分のパケット転送ブロックの遅延を得
ることが可能である。
【0198】セレクタ454は、遅延素子402の出力
が供給されている入力Bと、セレクタ451の出力が供
給されている入力Aの一方を選択するか、2つの入力の
排他的論理和を演算して、遅延素子402に出力する。
遅延素子402の出力は、セレクタ452の入力Aに供
給されている。
【0199】セレクタ455も、セレクタ451の出力
が供給される入力Aと、遅延素子403の出力が供給さ
れている入力Bの一方を選択するか、または、両者の排
他的論理和を演算し、遅延素子403に出力するととも
に、図示せぬ回路にパリティデータとして出力するよう
になされている。遅延素子403の出力は、セレクタ4
52の入力Bに供給されている。
【0200】セレクタ452は、入力AとBのうちの一
方を選択し、セレクタ453の入力Bに供給している。
セレクタ453は、遅延素子401−1からの入力A
と、セレクタ452からの入力Bの一方を選択し、選択
結果をビデオプロセッサ283に出力するようになされ
ている。
【0201】次に、パリティデータを生成する場合の動
作について図48を参照して説明する。ビデオプロセッ
サ283からRAIDコントローラ282に、データバッフ
ァ212に記録すべき画素データが入力されると、RAID
コントローラ282は、これを10ビットを単位とする
データから、32ビット(1ワード)を単位とするデー
タに変換する。そして、さらに、このデータを128ワ
ード分(1パケット転送ブロック分)まとめ、この記録
データをセレクタ451の入力Aに供給する。いま、最
初に入力されたパケット転送ブロックの番号を0とす
る。この番号0のパケット転送ブロックは、セレクタ4
51により選択され、セレクタ455の入力Aに供給さ
れるとともに、入力データとして、そのまま図示せぬ回
路に出力される。このとき、遅延素子403にはまだ、
パケット転送ブロックが保持されていないので、セレク
タ455は、入力Aを、そのまま選択する。セレクタ4
55の出力(番号0のパケット転送ブロック)は、遅延
素子403に供給され、保持される。以上の動作をまと
めると、図48に示すようになる。
【0202】次に、番号1のパケット転送ブロックが、
セレクタ451に供給されると、セレクタ451は、こ
のパケット転送ブロックを選択し、セレクタ455に供
給する。セレクタ455の入力Bには、遅延素子403
に保持されている番号0のパケット転送ブロックが供給
されているので、セレクタ455は、セレクタ451よ
り供給される番号1のパケット転送ブロックと、遅延素
子403より供給される番号0のパケット転送ブロック
の排他的論理和を演算し、これを遅延素子403に供給
し、保持させる。
【0203】以下同様に、図48に示すように、番号2
のパケット転送ブロックが、セレクタ451に供給され
ると、セレクタ455により、番号0、番号1、および
番号2のパケット転送ブロックの排他的論理和が演算出
力され、さらに番号3のパケット転送ブロックが入力さ
れたとき、番号0乃至番号3のパケット転送ブロックの
排他的論理和が、演算出力される。4:1のRAIDの場合
には、これが求めるパリティとなる。
【0204】以下、同様に、新たな番号のパケット転送
ブロックが順次入力されると、図48に示すように、パ
リティデータが、リアルタイムで順次生成出力される。
【0205】セレクタ451より選択出力された入力デ
ータは、RAIDコントローラ282から32ビットのバス
を介してFIFO405−1に入力され、そこから64ビッ
トのバスを介してDMAコントローラ281に供給され
る。また、セレクタ455より出力されたパリティデー
タは、RAIDコントローラ282から32ビットのバスを
介してFIFO404−1に供給され、そこから、さらに6
4ビットのバスを介してDMAコントローラ281に供給
される。
【0206】DMAコントローラ281には、コントロー
ラ262から、図41に示すようなDMAコマンドが入力
されている。DMAコントローラ281は、このDMAコマン
ドに対応して、FIFO405−1またはFIFO404−1に
記憶されている画素データまたはパリティデータを読み
出し、DMAバス251を介してバッファコントローラ2
11に供給する。バッファコントローラ211は、DMA
バス251を介して供給されてきたデータを、データバ
ッファ212に書き込む処理を実行する。これにより、
例えば、図42に示すような状態で、画素データとパリ
ティデータが、データバッファ212に記憶される。
【0207】SCSIコントローラ202は、コントローラ
262から制御バス252を介してコマンドの供給を受
け、このコマンドに対応して、バッファコントローラ2
11に制御信号を出力し、データバッファ212に記憶
されている画素データとパリティデータを再生させ、こ
れを取り込む。そして、SCSIコントローラ202は、バ
ッファコントローラ211を介して取り込んだデータバ
ッファ212からのデータを、対応する所定のハードデ
ィスク201の所定のトラックに書き込む。このように
して、ハードディスク201には、例えば、図33に示
すような状態で、1フレーム分の画素データが、4個の
サブブロックに分割され、各サブブロックごとに、異な
るハードディスク201に記録される。また、そのフレ
ームの画素データに対応するパリティデータも、異なる
ハードディスク201上に記録される。
【0208】次に、ハードディスク201から再生され
たデータの誤りを訂正して出力する場合の動作について
図49を参照して説明する。コントローラ262は、制
御バス252を介してSCSIコントローラ202にコマン
ドを出力し、ハードディスク201に記録されている所
定のフレームの画素データと対応するパリティデータを
再生させる。この再生データは、SCSIコントローラ20
2からバッファコントローラ211を介して、データバ
ッファ212に書き込まれる。コントローラ262は、
制御バス252を介してDMAコントローラ281に対し
て、このようにしてデータバッファ212に書き込まれ
たデータのRAIDコントローラ282へのDMA転送を指令
する。DMAコントローラ281は、このコマンドに対応
して、バッファコントローラ211を介してデータバッ
ファ212に書き込まれているデータを読み出し、DMA
バス251を介して転送を受ける。そして、このデータ
を64ビットのバスを介してFIFO406A−1,406
B−1に供給し、記憶させる。FIFO406A−1,40
6B−1に書き込まれたデータは、32ビットのバスを
介してRAIDコントローラ282に供給される。
【0209】RAIDコントローラ282においては、この
ようにしてFIFO406A−1,406B−1より供給さ
れたデータを、セレクタ451の入力Bで受け取る。
【0210】セレクタ451に、このようにして、例え
ば番号0のパケット転送ブロックが入力されたとする
と、これがセレクタ451で選択され、図49に示すよ
うに、遅延素子401−4に供給されるとともに、セレ
クタ454と455の入力Aにそれぞれ供給される。図
49に示すように、セレクタ455は、このとき入力B
を選択するように制御されているので、その入力Aに供
給されたデータは、遅延素子403には供給されない。
これに対して、セレクタ454においては、入力Aが選
択されるように制御されているため、セレクタ454
は、番号0のパケット転送ブロックを選択し、後段の遅
延素子402に供給し、保持させる。
【0211】次に、番号1のパケット転送ブロックが、
セレクタ451に入力され、選択されると、これが、遅
延素子401−4に供給され、それまで遅延素子401
−4に保持されていた番号0のパケット転送ブロック
は、後段の遅延素子401−3に転送され、保持され
る。
【0212】また、セレクタ454は、このとき、入力
Aから供給されるセレクタ451からの番号1のパケッ
ト転送ブロックと、遅延素子402に保持されている番
号0のパケット転送ブロックの排他的論理和を演算し、
これを遅延素子402に供給し、記憶させる。
【0213】次に、本来ならば、番号3のパケット転送
ブロックが入力されるのであるが、いま、この番号3の
パケット転送ブロックに誤りが発生したとすると、DMA
コントローラ281は、この番号3のパケット転送ブロ
ックに代えて、パリティデータを選択し、これをデータ
バッファ212から読み出させ、RAIDコントローラ28
1に供給させる。このパリティデータは、セレクタ45
1から遅延素子401−4に供給されるとともに、セレ
クタ454の入力Aに供給される。このとき、セレクタ
454は、入力Aからのデータと入力Bからのデータの
排他的論理和を演算するが、入力Aには、パリティデー
タが入力され、遅延素子402には、番号0のパケット
転送ブロックと番号1のパケット転送ブロックの排他的
論理和が保持されているので、結局、セレクタ454
は、番号0のパケット転送ブロック、番号1のパケット
転送ブロック、およびパリティデータの排他的論理和を
演算し、これを遅延素子402に出力する。
【0214】さらに、番号3のパケット転送ブロック
が、セレクタ451から入力されると、これが遅延素子
401−4に供給され、それまで遅延素子401−4に
保持されていたパリティデータは、後段の遅延素子40
1−3に供給される。それまで、遅延素子401−3に
保持されていた番号1のパケット転送ブロックは、後段
の遅延素子401−2に供給され、保持される。そし
て、それまで遅延素子401−2に保持されていた番号
0のパケット転送ブロックは、さらに後段の遅延素子4
01−1に供給され、保持される。
【0215】セレクタ454は、セレクタ451から供
給される番号3のパケット転送ブロックと、遅延素子4
02に保持されている番号0のパケット転送ブロック、
番号1のパケット転送ブロック、およびパリティデータ
の排他的論理和を演算したデータとの排他的論理和を演
算する。この演算結果は、結局、番号2のパケット転送
ブロックの誤りを訂正したデータとなっており、これが
遅延素子402に保持される。
【0216】次に、番号4のパケット転送ブロックが、
セレクタ451に入力されると、これが選択され、遅延
素子401−4に保持される。それまで、遅延素子40
1−4の保持されていた、番号3のパケット伝送ブロッ
クは、後段の遅延素子401−3に供給される。それま
で、遅延素子401−3に保持されていたパリティデー
タは、後段の遅延素子401−2に供給され、保持され
る。それまで、遅延素子401−2に保持されていた番
号1のパケット転送ブロックは、後段の遅延素子401
−1に供給され、保持される。そして、それまで遅延素
子401−1に保持されていた番号0のパケット転送ブ
ロックは、セレクタ453の入力Aに供給され、セレク
タ453で選択されて、ビデオプロセッサ283に出力
される。
【0217】次に、番号5のパケット転送ブロックが、
セレクタ451に入力されると、上述した場合と同様の
処理が行われ、それまで遅延素子401−1に保持され
ていた番号1のパケット転送ブロックが、セレクタ45
3により選択され、出力される。
【0218】そして、次に、番号6のパケット転送ブロ
ックが、セレクタ451に入力されるタイミングである
が、この番号6のパケット転送ブロックに誤りが検出さ
れた場合、セレクタ451に、番号6のパケット転送ブ
ロックに代えて、パリティデータが供給される。その結
果、このパリティデータが、遅延素子401−4に供給
され、保持されるとともに、セレクタ455を介して遅
延素子403に供給され、保持される。
【0219】セレクタ454と遅延素子402の組み合
わせと、セレクタ455と遅延素子403の組み合わせ
は、1フレームごとに(4パケット転送ブロックごと
に)交互に用いられる。従って、番号0乃至番号3のパ
ケット転送ブロックが、セレクタ454を介して遅延素
子402に供給されるようになされている場合、次の1
フレーム分の番号4乃至番号8のパケット転送ブロック
のデータは、セレクタ455を介して遅延素子403に
供給される。そして、セレクタ454における場合と同
様に、セレクタ455は、セレクタ451から、新たな
番号のパケット転送ブロックが入力されると、それま
で、遅延素子403に保持されていたパケット転送ブロ
ック、または、それまでの排他的論理和の演算結果との
新たな排他的論理和を演算し、その演算結果を遅延素子
403に供給し、保持させる。
【0220】従って、番号4、番号5、さらに番号6
(パリティデータ)のパケット転送ブロックが、セレク
タ451から入力されたタイミングにおいて、セレクタ
455は、セレクタ451から入力されたパリティデー
タと、それまで遅延素子403に保持されていた番号4
と番号5のパケット転送ブロックの排他的論理和の演算
結果との排他的論理和を演算し、これを遅延素子403
に供給し、保持させる。一方、遅延素子402は、その
前のフィールドの誤りを訂正したデータ(番号2のパケ
ット転送ブロック)を保持している。
【0221】そして、番号6のパケット転送ブロック
が、セレクタ451に入力されたタイミングにおいて、
遅延素子401−1は、誤りを含む番号2のパケット転
送ブロックに代えて入力されたパリティデータを出力す
ることになる。これが、セレクタ453により、そのま
ま選択出力されると、パリティデータが、出力されてし
まうことになる。そこで、このタイミングにおいて、セ
レクタ453は、入力Aからのデータに代えて、入力B
からのデータを選択するように切り替えられる。セレク
タ453の入力Bには、セレクタ452の出力が供給さ
れており、セレクタ452は、入力Aに供給されている
遅延素子402が保持している番号2の訂正済みのパケ
ット転送ブロックを選択し、出力している。その結果、
スイッチ453からパリティデータが出力されず、訂正
済みの番号2のパケット転送ブロックが出力される。
【0222】以下、同様にして、図49に示すように、
セレクタ451に番号10のパケット転送ブロックが入
力されたタイミングにおいては、遅延素子401−1か
ら、番号6の誤りを含むパケット転送ブロックに代えて
入力されたパリティデータが、セレクタ453の入力A
に供給されるのであるが、このとき、セレクタ453
は、入力B側に切り替えられ、そのとき、セレクタ45
2が、入力Bに供給されている遅延素子403が保持し
ている番号6の誤りを訂正したパケット転送ブロックを
選択しているので、セレクタ453からこれが出力され
る。
【0223】このようにして、DMAコントローラ281
から再生データが順次入力されると、リアルタイムで、
順次、誤りが訂正され、訂正されたデータが、ビデオプ
ロセッサ283に供給される。
【0224】次に、図7に示すディスクレコーダ2にお
ける記録時の動作についてまとめると、次のようにな
る。なお、いま編集装置1からディスクレコーダ2に供
給されるビデオデータは、NTSC方式のビデオデータであ
るとする。
【0225】ホストパーソナルコンピュータ3から、SC
SIを介して記録コマンドを受け取ると、ディスクレコー
ダ2のコントローラ262は、RAM263上のアロケー
ションマップ303を参照して、編集装置1より供給さ
れたビデオデータが、記録可能な空きエリアを検索す
る。この空きエリア検索は、1フレーム分のビデオデー
タを4つに分割したサブブロックのそれぞれと、これら
の画素データから生成したパリティデータのそれぞれに
対して行われる。この時点において、パリティデータの
セクタ数と、4つのサブブロックのセクタ数は、まだ、
正確には判っていないので、この空きエリア検索は、セ
クタ単位で行われるのではなく、トラック単位で行われ
る。
【0226】コントローラ262は、検索した空きエリ
アの状況に基づいて、パリティデータと、4つのサブブ
ロックのデータをハードディスク201に記録するため
の記録位置を決定する。この記録位置は、ハードディス
ク201のディスクIDと、記録を開始するセクタの開
始論理セクタ番号によって指定される。具体的には、図
15に示すように、パリティデータは、ディスクIDが
1のハードディスク201−1の論理セクタ番号0(最
も外側のトラックのセクタ)が、記録開始位置とされ
る。第1のサブブロックデータは、ディスクIDが2の
ハードディスク201−2の論理セクタ番号59960
0(最も内側のトラックのセクタ)が、記録開始位置と
される。第2のサブブロックデータは、ディスク1Dが
3のハードディスク201−3の論理セクタ番号0(最
も外側のトラックのセクタ)が、記録開始位置とされ
る。さらに、第3のサブブロックデータは、ディスクI
Dが4のハードディスク201−4の論理セクタ番号5
99600(最も内側のトラックのセクタ)が、記録開
始位置とされる。また、第4のサブブロックデータは、
ディスクIDが5のハードディスク201−5の論理セ
クタ番号0(最も外側のトラックのセクタ)が記録開始
位置とされる。
【0227】コントローラ262は、次に、物理アドレ
ステーブル302を参照して、データの記録位置として
決定された開始論理セクタ番号から、シリンダアドレ
ス、メディア番号、およびセクタ番号からなる物理アド
レスを求める。
【0228】さらに、コントローラ262は、ZBRテー
ブル301を参照して、物理アドレステーブル302を
参照して求めたシリンダアドレスが、12個のゾーンの
うちのどのゾーンに含まれるのかを決定し、それに応じ
て、1トラックにおいて使用されるセクタ数を決定す
る。
【0229】さらに、コントローラ262は、以上の制
御で求められたパリティデータのディスクID、論理セ
クタ番号、およびセクタ数、並びに第1乃至第4のサブ
ブロックのディスクID、論理セクタ番号、およびセク
タ数に基づいて、ブロックマップ304を生成する。
【0230】以上のようにして、第1のフレーム(番号
1のフレーム)に指定されるビデオデータに対応するブ
ロックマップが作成されたことになる。
【0231】次に、コントローラ262は、ブックマッ
プ304を参照して、DMAコントローラ281と、RAID
コントローラ282に供給するシーケンスプログラムを
生成する。このシーケンスプログラムは、図41を参照
して説明したように、パリティデータとビデオデータの
データバッファ212上における格納位置を示すための
アドレスを含むオペランドと、パリティデータおよびビ
デオデータのパケット転送のループ回数と、RAID比を指
定するコマンドから構成されている。
【0232】コントローラ262は、制御バス252を
介してFIFO407に対して、このシーケンスプログラム
のうちのコマンドの部分を転送する。RAIDコントローラ
282は、FIFO407を介して供給された、このコマン
ドを参照し、ビデオデータ対パリティデータの比(RAID
比)と転送ループ回数(転送ループ期間)を検出する。
すなわち、RAIDコントローラ282は、このコマンドを
受け取ることにより、ビデオプロセッサ283から供給
されているビデオデータから、何対何のRAID比でパリテ
ィを生成し、その処理を、何回繰り返すのかを検出す
る。
【0233】RAIDコントローラ282は、このRAID比
が、4:1の時、4つのパケット転送ブロック(サブブ
ロック)からパリティデータを演算し、RAID比が2:1
の時、2つのパケット転送ブロック(サブブロック)か
らパリティデータを演算する。
【0234】演算されたパリティデータは、1ワードご
とにFIFO404に供給され、画素データは、1ワードご
とにFIFO405に供給される。
【0235】一方、コントローラ262は、供給された
ビデオデータのサブブロックをデータバッファ212の
どの位置に記憶させるかを示すDMAコマンド(図41)
をDMAコントローラ281内のFIFO501に供給する。
そして、DMAコントローラ281は、FIFO404に記憶
されているパリティデータと、FIFO405に記憶されて
いる画素データを、FIFO501に記憶されたDMAコマン
ドのオペランドに記述されているアドレスによって指定
されたデータバッファ212上の位置に、1パケット転
送ブロック(=128ワード)ごとに、DMA転送を行
う。この転送は、DMAコマンドに記述されているループ
回数だけ、繰り返し行われる。
【0236】図50は、図15において、番号1で示す
フレームの4つのサブブロックと、1つのパリティデー
タのサイズを模式的に表している。図50に示すよう
に、第1のサブブロックS1−1の大きさは393セク
タとされ、第2のサブブロックS1−2の大きさは56
7セクタ、第3のサブブロックS1−3の大きさは39
3セクタ、第4のサブブロックS1−4の大きさは56
7セクタとされている。そして、パリティデータの大き
さは、第1乃至第4のサブブロックの大きさのうち、最
大の大きさである567セクタに対応して、567セク
タとして設定されている。
【0237】1セクタには、128ワードのデータを記
録するものとすると、第1のサブブロックのデータ量
は、50304ワード(=393セクタ×128ワー
ド)となり、第2のサブブロックのデータ量は、725
76ワード(=567セクタ×128ワード)となる。
第4のサブブロックとパリティデータの大きさは、第2
のサブブロックの大きさと同一とされ、第3のサブブロ
ックの大きさは、第1のサブブロックと同一の大きさと
される。
【0238】なお、図43と図44を参照して説明した
ように、この4つのサブブロックの画素データは、1フ
レームの画像を構成する連続する画素を1/4に分割し
たものではなく、1枚の画像上の所定の位置に分散され
ている128ワード(パケット転送ブロック)単位のデ
ータを所定数集めたものである。
【0239】図50の例の場合、図中、左側から393
セクタ分の範囲T1においては、4:1のRAIDが行わ
れ、範囲T1より右側の範囲T2においては、2:1のRA
IDが行われる。範囲T1における転送回数(ループ回
数)を393回とし、範囲T2におけるループ回数を1
74(=567−393)回とすることにより、1フレ
ーム分の画像データをデータバッファ212に転送する
ことができる。
【0240】この例の場合、4:1のRAIDと、2:1の
RAIDが必要となるので、範囲T1の4:1のRAIDの転送
を行うDMAコマンドと、範囲T2の2:1のRAIDの転送を
行うDMAコマンドが必要となる。
【0241】そして、上述したように、RAIDコントロー
ラ282においては、入力された画素データに対して、
シーケンシャルにパリティデータが生成されるので、4
つの各サブブロックのパケット転送ブロックが、順次入
力されると、それが順次データバッファ212に出力さ
れるとともに、RAID比に1回の割合で、それに対応する
パリティデータが、順次生成され、データバッファ21
2に出力される。
【0242】範囲T1においては、4:1のRAIDを指定
するDMAコマンドに対応して転送が行われる。この場
合、ディスクIDが2乃至5のハードディスク201−
2乃至201−5に対応するデータバッファ201の第
2乃至第5のアドレスに、第1乃至第4のサブブロック
の393個のパケット転送ブロックのビデオデータ(5
0304ワードの画素データ)がDMA転送され、書き込
まれる。また、ディスクIDが1のハードディスク20
1−1に対応するデータバッファ212の第1のアドレ
スに、393回のループ転送によって、393個のパケ
ット転送ブロックのパリティデータ(50304ワード
のパリティデータ)が記憶される。
【0243】次に、2:1のRAIDのDMAコマンドに対応
して、DMAコントローラ281は、第2のサブブロック
の範囲T2に対応する174セクタ分の画素データを、
ディスクIDが3のハードディスク201−3の第7の
アドレス(範囲T1の第2のサブブロックの393セク
タ分の画素データを記録したエリアの次のアドレス)に
174回のループ転送により書き込ませる。さらに同様
に、ディスクIDが5のハードディスク201−5に対
応するデータバッファ212の第8のアドレス(範囲T
1の第4のサブブロックの393セクタ分のビデオデー
タを記録した領域の次のアドレス)に174回のループ
転送により、転送し、書き込ませる。また、174個の
パケット転送ブロックのパリティデータ(22272ワ
ードのパリティデータ)をディスクIDが1のハードデ
ィスク201−1に対応する第6のアドレス(範囲T1
の393セクタ分のパリティデータを記録した領域の次
のアドレス)に、書き込ませる。
【0244】以上のようにして、図15の番号が1のフ
レームのビデオデータが、データバッファ212に転送
され、記憶されることになる。以下同様に、番号2,
3,・・・のビデオデータが、順次、データバッファ2
12に転送され、バッファリングされる。
【0245】図50は、パリティデータを、図9に示す
ZBRテーブルの最外周の1トラック当たり、567個の
セクタを有するゾーン1のトラックと、最内周の1トラ
ック当たり、393個のセクタを有するゾーン12のト
ラックに記録する場合の例である。すなわち、例えば、
567セクタ分のパリティデータは、ハードディスク2
01−1の最外周のゾーン1のトラックに記録され、サ
ブブロックのうちの393セクタ分の第1のサブブロッ
クのデータは、ハードディスク201−2の最内周のゾ
ーン12のトラックに記録され、567セクタ分の第2
のサブブロックのデータは、ハードディスク201−3
の最外周のゾーン1のトラックに記録され、393セク
タ分の第3のサブブロックのデータは、ハードディスク
201−4の最内周のゾーン12のトラックに記録さ
れ、567セクタ分の第4のサブブロックのデータは、
ハードディスク201−5の最外周のゾーン1のトラッ
クに記録される。
【0246】このように、最外周側のトラックと最内周
側のトラックが、対で利用される。従って、例えば、ゾ
ーン1とゾーン12の対がいっぱいになり使用できなく
なった場合には、ゾーン1についで、外周側に位置する
1トラック当たり544個のセクタを有するゾーン2
と、ゾーン12についで、より内周側に位置する1トラ
ック当たり416個のセクタを有するゾーン11が、対
として用いられる。
【0247】図51は、この場合におけるパリティデー
タと、サブブロックのデータの構成例を表している。こ
の例においては544セクタ分のパリティデータは、例
えば、ハードディスク201−2の最外周から2番目の
ゾーン2のトラックに記録され、サブブロックのうち、
416セクタ分の第1のサブブロックのデータは、ハー
ドディスク201−3の内周側から2番目の、1トラッ
ク当たり416個のセクタを有するトラックに記録さ
れ、第2番目の544セクタ分のサブブロックのデータ
は、ハードディスク201−4のゾーン2のトラックに
記録され、416セクタ分の第3のサブブロックのデー
タは、ハードディスク201−5のゾーン11のトラッ
クに記録され、544セクタ分の第4のサブブロックの
データは、ハードディスク201−6のゾーン2のトラ
ックに記録される。そして、この場合においては、図
中、左側から、416個セクタ分の範囲T1において
は、4:1のRAIDが行われ、それより後の128セクタ
分の範囲T2においては、2:1のRAIDが行われる。
【0248】以下同様に、図52乃至図55は、それぞ
れゾーン3とゾーン10を対として用い、ゾーン4とゾ
ーン9を対として用い、ゾーン5とゾーン8を対として
用い、または、ゾーン6とゾーン7を対として用いる場
合の例を表している。
【0249】このように、より外周側のゾーンと、より
内周側のゾーンを対として用いることにより、1個のハ
ードディスク201に着目すると、各サブブロックのギ
ャップθgapの値がほとんど同一となるように各サブブ
ロックのサイズを設定することができ、各サブブロック
の読み出しと書き込みに要する時間が、ほぼ一定とな
る。
【0250】以上の、図50乃至図55の構成は、NTSC
方式の場合の構成を示したものであるが、ビデオデータ
がPAL方式の場合、図56乃至図61に示すように、パ
リティデータとサブブロックのサイズを設定することが
できる。PAL方式の場合、1フレームの画素数が、14
40×612と、NTSC方式の場合より多くなり、図10
示したように、各ゾーンの1トラック当たりのセクタ数
が規定されている。図56乃至図61は、図10におけ
るゾーン1とゾーン12を対として用いる場合、ゾーン
2とゾーン11を対として用いる場合、ゾーン3とゾー
ン10を対として用いる場合、ゾーン4とゾーン9を対
として用いる場合、ゾーン5とゾーン8を対として用い
る場合、または、ゾーン6とゾーン7を対として用いる
場合を、それぞれ表している。
【0251】図56の設定例においては、561セクタ
分のパリティが、第1のハードディスク201の最外周
のゾーン1のトラックに記録され、サブブロックのう
ち、391セクタ分の第1のサブブロックのデータは、
第2のハードディスクの最内周のゾーン12のトラック
に配置され、561セクタ分の第2のサブブロックのデ
ータは、第3のハードディスクのゾーン1のトラックに
記録され、391セクタ分の第3のサブブロックのデー
タは、第4のハードディスクのゾーン12のトラックに
記録され、561セクタ分の第4のサブブロックのデー
タは、第5のハードディスクのゾーン1のトラックに記
録され、391セクタ分の第5のサブブロックのデータ
は、第6のハードディスクの最内周のゾーン12のトラ
ックに記録される。そして、図中、左側から391セク
タ分の範囲T1のデータは、5:1のRAIDで転送され、
その右側の170セクタ分のデータは、2:1のRAIDで
転送される。なお、この場合も、1パケット転送ブロッ
クの大きさは、128ワードとされる。従って、範囲T
1においては、391回の転送ループとされ、範囲T2
おいては、170回の転送ループとされる。
【0252】図57乃至図61に例においても、転送ル
ープの回数が、図56における場合と異なるだけで、そ
の他の動作は、図56における場合と同様となる。
【0253】図26のフローチャートのステップS12
−8において説明したように、データバッファ212
に、例えば、1フレーム分のパリティデータとサブブロ
ックデータが記憶されたとき、その1フレーム分のパリ
ティデータとサブブロックデータが、ハードディスク2
01に直ちに転送されるわけではなく、例えば、10フ
レーム分のパリティデータとサブブロックデータが、デ
ータバッファ212に記憶されたとき、SCANアルゴリズ
ムに従って、データ転送の順番が、コントローラ262
によりスケジューリングされる。
【0254】例えば、いま、ハードディスク201の台
数が6台であり、図62に示すように、データが記録さ
れるものとすると、ディスクIDが3のハードディスク
201に転送されるデータを保持している場所を示す第
3のアドレスにバッファリングされているデータは、フ
レーム番号1の第2のサブブロックデータS1−2、フ
レーム番号2の第1のサブブロックデータS2−1、フ
レーム番号3のパリティデータP3、フレーム番号5の
第4のサブブロックデータS5−4、フレーム番号6の
第3のサブブロックデータS6−3、フレーム番号7の
第2のサブブロックデータS7−2、フレーム番号8の
第1のサブブロックデータS8−1、フレーム番号9の
パリティデータP9などである。
【0255】サブブロックデータS1−2は外周側に配
置され、サブブロックデータS2−1は内周側に配置さ
れ、パリティデータP3は外周側に配置され、サブブロ
ックデータS5−4は外周側に配置され、サブブロック
データS6−3は内周側に配置され、サブブロックデー
タS7−2は外周側に配置され、サブブロックデータS
8−1は内周側に配置され、パリティデータP9は外周
側に配置される。従って、これらのデータをS1−2か
ら順番に、S2−1,P3,S5−4,S6−3,S7
−2,S8−1,P9の順番にデータを記録するように
すると、ディスクID3のハードディスクのヘッドが、
ハードディスクの外周側と内周側の間をいったりきたり
して、アクセスが遅くなってしまう。
【0256】そこで、コントローラ262は、フレーム
番号1からフレーム番号10のビデオデータに対して、
それぞれ作成したブロックマップ304(図15)を参
照して、これらの複数のデータを最も外周側に配置する
データから順番に、ハードディスク201に転送するよ
うに、スケジューリングが行われる。すなわち、図15
のブロックマップ304を参照して、最も外周側に記録
されるデータから順番に並べかえると、データは、S1
−2,P3,S5−4,S7−2,P9,S8−1,S
6−3,S2−1の順番になる。コントローラ262
は、このように、データの配置の順番をスケジューリン
グすることにより、これらの複数のデータを記録するた
めのヘッド移動量を最小限に抑え、アクセス速度を向上
させるようにする。
【0257】このようにして、ハードディスク201に
記録したデータを再生する場合は、記録する場合と逆の
動作となる。これを簡単にまとめると、つぎのようにな
る。
【0258】すなわち、コントローラ262は、ホスト
パーソナルコンピュータ3から、1以上のフレームの再
生が指令されると、ブロックマップ304を参照して再
生を指令された番号のフレームの開始論理セクタを読み
取り、さらに、物理アドレステーブル302を参照し
て、その論理セクタに対応する物理アドレスを求める。
そして、コントローラ62は、この求められた物理アド
レスに対するアクセスを、制御バス252を介してバッ
ファコントローラ211に要求する。バッファコントロ
ーラ211は、この要求に対応して、SCSIコントローラ
202を制御し、ハードディスク201の物理アドレス
で規定されるアドレスからデータを再生させる。この再
生データは、SCSIコントローラ202からバッファコン
トローラ211に供給され、さらに、データバッファ2
12に書き込まれる。
【0259】この場合においても、上述したように、コ
ントローラ262は、10フレーム分の再生要求が集ま
るまで待機し、10フレーム分の再生要求が受け付けら
れたとき、外周側から順番に、ヘッドの移動量を最小限
に抑制することが可能な順番にスケジューリングする。
そして、このスケジュールに従って、10フレーム分の
画像データの再生をバッファコントローラ212に要求
する。
【0260】コントローラ262はまた、ブロックマッ
プ304を参照して、データバッファ212に記憶され
たデータをRAIDコントローラ282にDMA転送させるた
めのシーケンスプログラムを生成する。このシーケンス
プログラムは、制御バス252を介してDMAコントロー
ラ281のFIFO501に供給される。このシーケンスプ
ログラム(DMAコマンド)には、上述したように、その
オペランドにデータバッファ212のアドレスが規定さ
れており、そのコマンドにループ回数が規定されてい
る。DMAコントローラ281は、このコマンドに対応し
て、データバッファ212に書き込まれているデータを
読み出し、DMAバス251を介して、これを受け取り、
さらに、これをRAIDコントローラ282に転送する。
【0261】RAIDコントローラ282は、入力されたデ
ータを上述したようにして、リアルタイムで、シーケン
シャルに順次訂正する。
【0262】RAIDコントローラ282より出力された誤
り訂正処理後のビデオデータは、ビデオプロセッサ28
3に供給され、そのクロックが低い周波数のクロックに
変更される。そして、このビデオプロセッサ283より
出力されたデータが、入出力コントローラ284からSD
Iを介して編集装置1のマトリックススイッチャ部21
に供給される。
【0263】マトリックススイッチャ部21は、SDIの
所定のチャンネルから入力されたビデオデータをアウト
プットプロセッサ32−2にSDIフォーマットのビデオ
信号に変換させ、メインモニタ4に出力させ、表示させ
る。このようにして、使用者は、ハードディスク201
に記録した画像を見ることができる。
【0264】また、ホストパーソナルコンピュータ3か
ら所定の指令を入力すると、編集装置1のマトリックス
スイッチャ部21において、ディスクレコーダ2から取
り込まれたビデオデータが、ビデオ処理部22に入力さ
れる。ビデオ処理部22においては、デマルチプレクサ
回路41−1が、入力されたSDIフォーマットのビデオ
パケットに含まれるキー信号を取り込み、これをキー信
号処理回路51−1に出力する。デマルチプレクサ回路
41−2は、入力されたSDIフォーマットのビデオパケ
ットから、取り出したビデオ信号成分をビデオ信号処理
回路51−2に出力する。
【0265】使用者が、ホストパーソナルコンピュータ
3を制御して、所定の指令を入力すると、ビデオ処理部
22の制御ブロック45は、コントロールバス25を介
して、ホストパーソナルコンピュータ3からの指令を受
け取り、この指令に対応して、ワイプ信号発生回路52
−1を制御する。ワイプ信号発生回路52−1は、制御
ブロック45からの指令に対応するワイプ信号を発生
し、このワイプ信号をキー信号処理回路51−1とビデ
オ信号処理回路51−2に供給する。キー信号処理回路
51−1とビデオ信号処理回路51−2は、それぞれワ
イプ信号発生回路52−1より入力されたワイプ信号に
対応して、キー信号とビデオ信号を処理し、ミックス回
路71−2に出力する。
【0266】デマルチプレクサ41−3とデマルチプレ
クサ回路41−4も、デマルチプレクサ回路41−1と
デルチプレクサ回路41−2と同様に、他のチャンネル
のキー信号とビデオ信号を抽出し、それぞれキー信号処
理回路51−3とビデオ信号処理回路51−4に出力す
る。ワイプ信号発生回路52−2は、制御ブロック45
からの指令に対応してワイプ信号を発生し、キー信号処
理回路51−3とビデオ信号処理回路51−4に出力す
る。キー信号処理回路51−3とビデオ信号処理回路5
1−4は、ワイプ信号発生回路52−2より入力された
ワイプ信号に対応して、キー信号とビデオ信号を処理
し、それぞれフレームメモリ61−1とフレームメモリ
61−2に出力する。
【0267】3次元アドレス発生回路63は、制御ブロ
ック45を介してホストパーソナルコンピュータ3から
の指令を受け取り、この指令に対応する3次元アドレス
座標をフレームメモリ61−1とフレームメモリ61−
2に出力する。その結果、フレームメモリ61−1とフ
レームメモリ61−2から、それぞれ3次元座標に変換
されたキー信号とビデオ信号が読み出され、インターポ
レータ62−1とインターポレータ62−2にそれぞれ
供給される。インターポレータ62−1とインターポレ
ータ62−2は、それぞれ入力されたキー信号またはビ
デオ信号に対して、3次元アドレス発生回路63からの
3次元座標アドレスに対応して補間処理を施して、ミッ
クス回路71−2に出力する。
【0268】ミックス回路71−1にはまた、デマルチ
プレクサ回路41−5が、マトリックススイッチャ部2
1の所定の入力から抽出したバックグラウンドビデオ信
号が供給されている。ミックス回路71−1は、インタ
ーポレータ62−1,62−2より出力された特殊効果
のかかったビデオ信号と、デマルチプレクサ回路41−
5より出力されたバックグラウンドビデオ信号を適宜混
合し、その混合したビデオ信号をミックス回路71−2
に出力する。ミックス回路71−2は、ミックス回路7
1−1の出力を、トランジションエフェクトの付加され
たキー信号処理回路51−1の出力とビデオ信号処理回
路51−2の出力に適宜混合し、混合したビデオ信号を
出力する。
【0269】ミックス回路71−2とミックス回路71
−1の出力は、マトリックススイッチャ部21に供給さ
れる。
【0270】マトリックススイッチャ部21においては
また、ホストパーソナルコンピュータ3から所定の指令
が入力されたとき、ビデオ処理部22で処理したビデオ
信号が、適宜選択され、アウトプットプロセッサ32−
3乃至32−12のいずれかに供給され、そこからさら
に、コンバイナ33−1乃至33−10のいずれかか
ら、再びディスクレコーダ2に供給され、ハードディス
ク201に書き込まれる。
【0271】一方、オーディオ信号がマトリックススイ
ッチャ部21に入力されている場合には、制御ブロック
34は、適宜、これを選択し、オーディオ処理部23に
供給する。オーディオ処理部23においては、セパレー
タ81−1乃至81−3が入力されたSDI信号からエン
ベデッドオーディオ信号を分離し、ミキサブロック83
に供給する。ミキサブロック83においては、ホストパ
ーソナルコンピュータ3からの指令に対応して、制御ブ
ロック86が、可変抵抗器91−1乃至91−6を適宜
所定の値に調整する。その結果、セパレータ81−1乃
至81−3で分離されたオーディオ信号が、所定のレベ
ルに調整された後、加算器92−1または加算器92−
2に供給され、加算される。
【0272】加算器92−1または加算器92−2より
出力されたオーディオ信号は、エンベデッド回路85に
入力され、時間軸圧縮され、エンベデッドオーディオ信
号に変換された後、マトリックススイッチャ部21のコ
ンバイナ33−1乃至33−10の所定のものに供給さ
れる。コンバイナ33−1乃至33−10は、入力され
たオーディオ信号をアウトプットプロセッサ32−3乃
至33−12より入力されているビデオ信号の垂直帰線
区間に重畳して、ディスクレコーダ2に供給し、ハード
ディスク201に記録させる。
【0273】また、ミキサブロック83の加算器92−
1または92−2より出力されたオーディオ信号は、増
幅器5を介してスピーカ6から放音される。
【0274】なお、ディスクレコーダ2におけるオーデ
ィオデータの処理については、説明を省略したが、ビデ
オデータと同様に処理される。
【0275】また、編集装置1で処理したビデオデータ
は、アウトプットプロセッサ32−1から、ホストパー
ソナルコンピュータ3に対して適宜供給される。
【0276】このディスクレコーダ2においては、高速
のアクセスが可能となるため、マルチチャンネルのビデ
オデータを同時にハードディスク201から再生し、ビ
デオブロック271において、同時に処理することが可
能である。従って、ハードディスク201から同時に再
生した複数チャンネルのビデオデータを合成して1チャ
ンネルの合成画像とすることも可能である。
【0277】また、図63に示すように、ハードディス
ク201には、例えば、ソースVTR9からストリーム
A、ストリームB、ストリームCが、それぞれ再生さ
れ、記録されているものとする。ストリームAは、時間
的に連続したフレームA1乃至フレームA5などから構成
され、ストリーム2は、時間的に連続したフレームB1
乃至フレームB5などから構成され、ストリームCは、
時間的に連続したフレームC1乃至フレームC5などから
構成されている。これらのフレームA1乃至フレーム
5、フレームB1乃至フレームB5、またはフレームC1
乃至フレームC5は、添字で示す数字の順番で再生が行
われるストリームである。
【0278】このように、ストリームA乃至ストリーム
Cが、ハードディスク201に記憶されている状態にお
いて、ホストパーソナルコンピュータ3から、例えば、
ストリームAのフレームA4、ストリームBのフレーム
1、ストリームAのフレームA1、ストリームCのフレ
ームC3,C1の順に、各フレームをフレーム単位で指定
すると、この順番に各フレームをリアルタイムで再生
し、メインモニタ4に出力し、表示させることができ
る。この場合、フレームA4,B1,A1,C3,C1のス
トリームが、ハードディスク201上に実際に記録され
ているわけではなく、単に再生するフレームの順番をホ
ストパーソナルコンピュータ3側において指定しただけ
のことである。すなわち、ホストパーソナルコンピュー
タ3からディスクレコーダ2のCPUブロック261のコ
ントローラ262に、ストリーム1に対応するフレーム
のデータ列が供給されると、コントローラ262は、こ
れをRAM263に記憶させる。CPUブロック261のコン
トローラ262は、このRAM263に記憶されているデ
ータ列に対応する順番で、各フレームの画像データをハ
ードディスク201から順次読み出させ、再生させるこ
とができる。
【0279】同様に、図63に示すように、フレームB
3,B2,C1,A1,A2のデータ列をホストパーソナル
コンピュータ3で指定し、これをディスクレコーダ2に
転送し、RAM263に記憶させるだけで、コントローラ
262に、この記憶されたデータ列に対応するストリー
ムをストリーム2としてハードディスク201から読み
出させ、再生させることができる。モニタとして、複数
のモニタが用意されている場合には、このストリーム1
とストリーム2を同時に各モニタにそれぞれ出力し、表
示させることができる。
【0280】なお、上記実施の形態における各ブロック
や、バス、SDIなどのチャンネル数は、例に過ぎず、必
要に応じて変更することが可能である。また、1フレー
ムのデータを分割するサブブロックの数や、各サブブロ
ックをさらに分割するパケット転送ブロックのワード数
なども、適宜変更することが可能である。さらに、RAID
も任意の値に設定することができる。
【0281】
【発明の効果】以上の如く、請求項1に記載のデータ記
録装置および請求項5に記載のデータ記録方法によれ
ば、ディスクの外周側の領域と内周側の領域が、ほぼ均
一に使用されるように、かつ、ブロックデータと誤り訂
正データが記録される複数のディスクの組み合わせが、
所定の大きさの画像毎に変化するようにしたので、記録
されるデータが分散され、同時に記録または再生するこ
とが可能なチャンネル数を増加させることができる。
【図面の簡単な説明】
【図1】本発明を適用した編集システムの構成例を示す
ブロック図である。
【図2】図1の編集装置の構成を示すブロック図であ
る。
【図3】図2のシステムコントロール部の構成を示すブ
ロック図である。
【図4】図2のマトリックススイッチャ部の構成を示す
ブロック図である。
【図5】図2のビデオ処理部の構成を示すブロック図で
ある。
【図6】図2のオーディオ処理部の構成を示すブロック
図である。
【図7】図1のディスクレコーダの構成例を示すブロッ
ク図である。
【図8】図7のCPUブロックの構成例を示すブロック図
である。
【図9】NTSC方式の場合の図8のZBRテーブルの例を示
す図である。
【図10】PAL方式の場合の図8のZBRテーブルの例を示
す図である。
【図11】シリンダ、トラック、およびセクタの関係を
説明する図である。
【図12】ZBRの記録の原理を示す図である。
【図13】図8の物理アドレステーブルの例を示す図で
ある。
【図14】図8のブロックマップのフォーマットを示す
図である。
【図15】図8のブロックマップの例を示す図である。
【図16】ブロックマップ作成の処理を説明するフロー
チャートである。
【図17】シーク時間の特性を示す図である。
【図18】ギャップθgapを説明する図である。
【図19】ギャップθgapとスキューθskewを説明する
図である。
【図20】複数シリンダの間におけるスキューを説明す
る図である。
【図21】ギャップθgapのシリンダに対する関係を説
明する図である。
【図22】ギャップθgapのシリンダに対する関係を説
明する図である。
【図23】ギャップθgapのシリンダに対する関係を説
明する図である。
【図24】スケジューリングを説明する図である。
【図25】オーバヘッドを説明する図である。
【図26】図7のコントローラのスケジューリング処理
を説明するフローチャートである。
【図27】図7のコントローラのk番目のデータの配置
処理を説明するフローチャートである。
【図28】図27のステップS31のより詳細な処理を
説明するフローチャートである。
【図29】図27のステップS32のより詳細な処理を
説明するフローチャートである。
【図30】図29のステップS51のより詳細な処理を
説明するフローチャートである。
【図31】図29のステップS52におけるより詳細な
処理を説明するフローチャートである。
【図32】図27のステップS33のより詳細な処理を
説明するフローチャートである。
【図33】図28の処理により実現されるハードディス
ク上のデータの配置を説明する図である。
【図34】パリティデータの生成を説明する図である。
【図35】パリティデータによる誤りの訂正を説明する
図である。
【図36】図7のRAIDコントローラとDMAコントローラ
のより詳細な構成例を示すブロック図である。
【図37】図36のRAIDコントローラのビット変換処理
を説明する図である。
【図38】図36のFIFOの動作を説明する図である。
【図39】1フレーム分の画像の画素データを説明する
図である。
【図40】パケット転送ブロックを説明する図である。
【図41】DMAコマンドを説明する図である。
【図42】図36のデータバッファにおけるデータの書
き込みの状態を説明する図である。
【図43】1フレームの画像のRAIDの領域を説明する図
である。
【図44】図43で示される1フレームの画像のサブブ
ロックの構成を説明する図である。
【図45】誤りが存在しない場合の再生時のDMAコマン
ドを説明する図である。
【図46】誤りが存在する場合の再生時のDMAコマンド
を説明する図である。
【図47】図36のRAIDコントローラのより詳細な構成
を示すブロック図である。
【図48】図47のRAIDコントローラにおけるパリティ
生成の処理を説明する図である。
【図49】図47のRAIDコントローラにおけるデータ訂
正の処理を説明する図である。
【図50】NTSC方式におけるパリティデータとサブブロ
ックの構成例を示す図である。
【図51】NTSC方式におけるパリティデータとサブブロ
ックの構成例を示す図である。
【図52】NTSC方式におけるパリティデータとサブブロ
ックの構成例を示す図である。
【図53】NTSC方式におけるパリティデータとサブブロ
ックの構成例を示す図である。
【図54】NTSC方式におけるパリティデータとサブブロ
ックの構成例を示す図である。
【図55】NTSC方式におけるパリティデータとサブブロ
ックの構成例を示す図である。
【図56】PAL方式の場合のパリティデータとサブブロ
ックの構成例を示す図である。
【図57】PAL方式の場合のパリティデータとサブブロ
ックの構成例を示す図である。
【図58】PAL方式の場合のパリティデータとサブブロ
ックの構成例を示す図である。
【図59】PAL方式の場合のパリティデータとサブブロ
ックの構成例を示す図である。
【図60】PAL方式の場合のパリティデータとサブブロ
ックの構成例を示す図である。
【図61】PAL方式の場合のパリティデータとサブブロ
ックの構成例を示す図である。
【図62】各フレームのサブブロックのデータの各ディ
スク上における配置を説明する図である。
【図63】ストリームの構成を説明する図である。
【図64】従来のRAIDを説明する図である。
【図65】従来のRAIDを説明する図である。
【符号の説明】
1 編集装置, 2 ディスクレコーダ, 3 ホスト
パーソナルコンピュータ, 4 メインモニタ, 9
ソースVTR, 21 マトリックススイッチャ部, 2
2 ビデオ処理部, 23 オーディオ処理部, 24
システムコントロール部, 201,201−1乃至
201−32 ハードディスク, 202,202−1
乃至202−16 SCSIコントローラ, 212,21
2−1乃至212−8 データバッファ, 261 CP
Uブロック, 262 コントローラ, 263 RAM,
271,271−1乃至271−6 ビデオブロッ
ク, 281,281−1 DMAコントローラ, 28
2,282−1 RAIDコントローラ, 283,283
−1 ビデオプロセッサ, 284,284−1入出力
コントローラ, 301 ZBRテーブル, 302 物
理アドレステーブル, 303 アロケーションマッ
プ, 304 ブロックマップ, 401乃至403
遅延素子, 404乃至407 FIFO, 451乃至4
55 セレクタ
───────────────────────────────────────────────────── フロントページの続き (51)Int.Cl.6 識別記号 FI G11B 20/18 570 G11B 20/18 570Z 572 572F H04N 5/78 H04N 5/78 B (72)発明者 西川 正樹 東京都品川区北品川6丁目7番35号 ソニ ー株式会社内

Claims (5)

    【特許請求の範囲】
  1. 【請求項1】 記録する所定の大きさの画像の複数に分
    割されたブロックの画素データよりなるブロックデータ
    から、前記ブロックデータの誤りを訂正するための誤り
    訂正データを生成する生成手段と、 前記ブロックデータと誤り訂正データを、それぞれ異な
    る記憶位置に一時的に記憶する記憶手段と、 前記ブロックデータと誤り訂正データを、前記記憶手段
    に転送する転送手段と、 前記記憶手段に記憶された前記ブロックデータと誤り訂
    正データを、その記憶位置に対応する複数の異なるディ
    スクに記録する記録手段と、 前記ディスクの外周側の領域と内周側の領域が、ほぼ均
    一に使用されるように、かつ、前記ブロックデータと誤
    り訂正データを記録する複数の前記ディスクの組み合わ
    せが、所定の大きさの画像毎に変化するように、前記記
    憶手段における記憶位置を制御する制御手段とを備える
    ことを特徴とするデータ記録装置。
  2. 【請求項2】 前記ブロックデータと誤り訂正データ
    を、前記記憶手段の記憶位置に対応する複数の異なるデ
    ィスクに記録するとき、前記ディスクにデータを記録す
    るヘッドの移動量が最小となるように、前記ヘッドのア
    クセス順序をスケジューリングするスケジュール手段を
    さらに備えることを特徴とする請求項1に記載のデータ
    記録装置。
  3. 【請求項3】 前記制御手段は、前記転送手段を制御し
    て、前記記憶手段における記憶位置を制御することを特
    徴とする請求項1に記載のデータ記録装置。
  4. 【請求項4】 前記制御手段は、前記転送手段を制御す
    るコマンドを生成し、前記コマンドで、前記記憶手段に
    おける記憶位置を指定することを特徴とする請求項3に
    記載のデータ記録装置。
  5. 【請求項5】 記録する所定の大きさの画像の複数に分
    割されたブロックの画素データよりなるブロックデータ
    から、前記ブロックデータの誤りを訂正するための誤り
    訂正データを生成する生成ステップと、 前記ブロックデータと誤り訂正データを、それぞれ異な
    る記憶位置に一時的に記憶する記憶ステップと、 前記ブロックデータと誤り訂正データを、前記記憶ステ
    ップにおける記憶のために転送する転送ステップと、 前記記憶ステップで記憶された前記ブロックデータと誤
    り訂正データを、その記憶位置に対応する複数の異なる
    ディスクに記録する記録ステップと、 前記ディスクの外周側の領域と内周側の領域が、ほぼ均
    一に使用されるように、かつ、前記ブロックデータと誤
    り訂正データを記録する複数の前記ディスクの組み合わ
    せが、所定の大きさの画像毎に変化するように、前記記
    憶ステップにおける記憶位置を制御する制御ステップと
    を備えることを特徴とするデータ記録方法。
JP9103946A 1997-04-07 1997-04-07 データ記録装置および方法 Withdrawn JPH10285553A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP9103946A JPH10285553A (ja) 1997-04-07 1997-04-07 データ記録装置および方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP9103946A JPH10285553A (ja) 1997-04-07 1997-04-07 データ記録装置および方法

Publications (1)

Publication Number Publication Date
JPH10285553A true JPH10285553A (ja) 1998-10-23

Family

ID=14367615

Family Applications (1)

Application Number Title Priority Date Filing Date
JP9103946A Withdrawn JPH10285553A (ja) 1997-04-07 1997-04-07 データ記録装置および方法

Country Status (1)

Country Link
JP (1) JPH10285553A (ja)

Similar Documents

Publication Publication Date Title
JPH11296975A (ja) 編集装置および方法、並びに提供媒体
JP4126713B2 (ja) 画像再生装置および画像再生方法
KR20000016426A (ko) 편집 시스템 및 편집 방법
JPH077715A (ja) ディスクからのビデオ信号の記憶及び引き出し方法
US6308007B1 (en) Recording and reproducing device
EP0905693A1 (en) Device and method for recording data and device and method for controlling disk array
JPH10283126A (ja) データ記録装置および方法、並びにデータ再生装置および方法
JPH10285554A (ja) 誤り訂正データ生成装置および方法、誤り訂正装置および方法、並びにデータ記録装置および方法
JPH10285553A (ja) データ記録装置および方法
JPH10285524A (ja) 編集装置および方法
JPH09330178A (ja) データ記録再生装置
JPH11306671A (ja) 編集装置および方法、並びに提供媒体
JPH10289204A (ja) 調停装置および方法
JPH11306668A (ja) 編集装置および方法、並びに提供媒体
JPH11306670A (ja) 編集装置および方法、並びに提供媒体
JPH11296971A (ja) 編集装置および方法、並びに提供媒体
JPH11296972A (ja) 編集装置および方法、並びに提供媒体
JPH11296973A (ja) 編集装置および方法、並びに提供媒体
JPH11296974A (ja) 編集装置および方法、並びに提供媒体
JPH11306669A (ja) 情報処理装置および方法、並びに提供媒体
JPH09320202A (ja) 音声・映像データ記録・再生装置およびその方法
JP2000081988A (ja) 情報記録装置、情報記録方法、情報再生装置、情報再生方法及び情報記録媒体
JP2000163867A (ja) データ処理装置
MXPA98010248A (en) Device and method for recording data and device and method for controlling disk array
JP2000013750A (ja) 情報再生装置および方法、並びに提供媒体

Legal Events

Date Code Title Description
A300 Withdrawal of application because of no request for examination

Free format text: JAPANESE INTERMEDIATE CODE: A300

Effective date: 20040706