JPH04285765A - デジタルレコーダ - Google Patents
デジタルレコーダInfo
- Publication number
- JPH04285765A JPH04285765A JP3074058A JP7405891A JPH04285765A JP H04285765 A JPH04285765 A JP H04285765A JP 3074058 A JP3074058 A JP 3074058A JP 7405891 A JP7405891 A JP 7405891A JP H04285765 A JPH04285765 A JP H04285765A
- Authority
- JP
- Japan
- Prior art keywords
- data
- address
- dma
- controller
- cpu
- 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.)
- Pending
Links
Classifications
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11B—INFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
- G11B27/00—Editing; Indexing; Addressing; Timing or synchronising; Monitoring; Measuring tape travel
- G11B27/10—Indexing; Addressing; Timing or synchronising; Measuring tape travel
- G11B27/11—Indexing; Addressing; Timing or synchronising; Measuring tape travel by using information not detectable on the record carrier
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11B—INFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
- G11B20/00—Signal processing not specific to the method of recording or reproducing; Circuits therefor
- G11B20/10—Digital recording or reproducing
- G11B20/10527—Audio or video recording; Data buffering arrangements
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11B—INFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
- G11B27/00—Editing; Indexing; Addressing; Timing or synchronising; Monitoring; Measuring tape travel
- G11B27/02—Editing, e.g. varying the order of information signals recorded on, or reproduced from, record carriers
- G11B27/031—Electronic editing of digitised analogue information signals, e.g. audio or video signals
- G11B27/034—Electronic editing of digitised analogue information signals, e.g. audio or video signals on discs
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11B—INFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
- G11B27/00—Editing; Indexing; Addressing; Timing or synchronising; Monitoring; Measuring tape travel
- G11B27/10—Indexing; Addressing; Timing or synchronising; Measuring tape travel
- G11B27/102—Programmed access in sequence to addressed parts of tracks of operating record carriers
- G11B27/105—Programmed access in sequence to addressed parts of tracks of operating record carriers of operating discs
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11B—INFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
- G11B27/00—Editing; Indexing; Addressing; Timing or synchronising; Monitoring; Measuring tape travel
- G11B27/10—Indexing; Addressing; Timing or synchronising; Measuring tape travel
- G11B27/19—Indexing; Addressing; Timing or synchronising; Measuring tape travel by using information detectable on the record carrier
- G11B27/22—Means responsive to presence or absence of recorded information signals
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/0671—In-line storage system
- G06F3/0673—Single storage device
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11B—INFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
- G11B20/00—Signal processing not specific to the method of recording or reproducing; Circuits therefor
- G11B20/10—Digital recording or reproducing
- G11B20/10527—Audio or video recording; Data buffering arrangements
- G11B2020/10537—Audio or video recording
- G11B2020/10592—Audio or video recording specifically adapted for recording or reproducing multichannel signals
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11B—INFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
- G11B2220/00—Record carriers by type
- G11B2220/20—Disc-shaped record carriers
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11B—INFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
- G11B2220/00—Record carriers by type
- G11B2220/60—Solid state media
- G11B2220/65—Solid state media wherein solid state memory is used for storing indexing information or metadata
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Signal Processing For Digital Recording And Reproducing (AREA)
- Bus Control (AREA)
- Management Or Editing Of Information On Record Carriers (AREA)
- Electrophonic Musical Instruments (AREA)
Abstract
(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。
め要約のデータは記録されません。
Description
【0001】
【産業上の利用分野】本発明は音声信号をデジタル的に
記録、再生、さらには編集することが可能なデジタルレ
コーダに関する。
記録、再生、さらには編集することが可能なデジタルレ
コーダに関する。
【0002】
【従来の技術】本願特許出願人が先に特願平2−260
042号において提案したデジタルレコーダの1つの構
成例によると、複数のトラックに対応して音声の入出力
動作を行う音声入出力手段と、音声入出力手段から供給
されるデジタル音声データを記憶できる複数のトラック
分の記憶エリアを持つ音声データ記憶手段(例えば、ハ
ードディスクや光磁気ディスク)と、音声データ記憶手
段に記憶されている音声データを複数に区切って形成さ
れるイベントの識別情報および記憶位置を含むイベント
アドレステーブルを記憶する手段と、イベントアドレス
テーブルに含まれるイベントの識別情報を、各トラック
毎にイベントの再生順序に配列して成るインディビジュ
アルコントロールトラックを記憶する手段とを具備する
。
042号において提案したデジタルレコーダの1つの構
成例によると、複数のトラックに対応して音声の入出力
動作を行う音声入出力手段と、音声入出力手段から供給
されるデジタル音声データを記憶できる複数のトラック
分の記憶エリアを持つ音声データ記憶手段(例えば、ハ
ードディスクや光磁気ディスク)と、音声データ記憶手
段に記憶されている音声データを複数に区切って形成さ
れるイベントの識別情報および記憶位置を含むイベント
アドレステーブルを記憶する手段と、イベントアドレス
テーブルに含まれるイベントの識別情報を、各トラック
毎にイベントの再生順序に配列して成るインディビジュ
アルコントロールトラックを記憶する手段とを具備する
。
【0003】このデジタルレコーダによれば、イベント
アドレステーブルを有しているので、編集の際、いちい
ち音声データ記憶手段のアドレスをアクセスする必要が
ない。また、CPU等のデジタルレコーダの制御手段は
、インディビジュアルコントロールトラックを参照して
、時間軸上のイベントの位置を確認し、この順番に従っ
てイベントアドレステーブルを読み出すことにより、ト
ラック毎に各イベントの音声データ記憶手段上の記憶ア
ドレスを再生順序で発生させ、トラック毎に必要な再生
を実現できる。
アドレステーブルを有しているので、編集の際、いちい
ち音声データ記憶手段のアドレスをアクセスする必要が
ない。また、CPU等のデジタルレコーダの制御手段は
、インディビジュアルコントロールトラックを参照して
、時間軸上のイベントの位置を確認し、この順番に従っ
てイベントアドレステーブルを読み出すことにより、ト
ラック毎に各イベントの音声データ記憶手段上の記憶ア
ドレスを再生順序で発生させ、トラック毎に必要な再生
を実現できる。
【0004】
【発明が解決しようとする課題】上述のデジタルレコー
ダに音声信号を記録する場合には、1つのトラックに音
声信号の例えばドラム等の1つのパートが記録されるが
、録音されているパートが休みの場合には、何も音声が
記録されない無音部分が生じてしまい、ディスク等の音
声データ記憶手段の利用効率が低下してしまう。
ダに音声信号を記録する場合には、1つのトラックに音
声信号の例えばドラム等の1つのパートが記録されるが
、録音されているパートが休みの場合には、何も音声が
記録されない無音部分が生じてしまい、ディスク等の音
声データ記憶手段の利用効率が低下してしまう。
【0005】本発明の目的は、音声データ記憶手段の利
用効率を高めることのできるデジタルレコーダを提供す
ることにある。
用効率を高めることのできるデジタルレコーダを提供す
ることにある。
【0006】
【課題を解決するための手段】請求項1に記載のデジタ
ルレコーダは、音声データの入出力動作を行う音声入出
力手段と、音声入出力手段から供給されるデジタル音声
データを記憶する音声データ記憶手段と、音声データ記
憶手段に記憶された音声データのうち無音データを検出
する無音検出手段と、無音検出手段によって検出された
無音データを音声データ記憶手段から消去するように、
検出無音データに続く有音データを詰めて記憶するため
に音声データ記憶手段を制御する記憶制御手段とを具備
する。
ルレコーダは、音声データの入出力動作を行う音声入出
力手段と、音声入出力手段から供給されるデジタル音声
データを記憶する音声データ記憶手段と、音声データ記
憶手段に記憶された音声データのうち無音データを検出
する無音検出手段と、無音検出手段によって検出された
無音データを音声データ記憶手段から消去するように、
検出無音データに続く有音データを詰めて記憶するため
に音声データ記憶手段を制御する記憶制御手段とを具備
する。
【0007】請求項2に記載のデジタルレコーダは、請
求項1に記載の構成に加えて、記憶制御手段によって有
音データを詰めて記憶させた結果生じる有音データの結
合位置と、有音データの間に存在していた無音データの
長さとが記録されたゲートアドレステーブルを記憶する
手段と、有音データの結合位置の音声再生を行うときに
、ゲートアドレステーブルに記録された無音データの長
さだけ無音データを発生させた無音発生手段とを具備す
る。
求項1に記載の構成に加えて、記憶制御手段によって有
音データを詰めて記憶させた結果生じる有音データの結
合位置と、有音データの間に存在していた無音データの
長さとが記録されたゲートアドレステーブルを記憶する
手段と、有音データの結合位置の音声再生を行うときに
、ゲートアドレステーブルに記録された無音データの長
さだけ無音データを発生させた無音発生手段とを具備す
る。
【0008】
【作用】請求項1に記載のデジタルレコーダにおいては
、無音検出手段によって検出された無音データが音声デ
ータ記憶手段から消去され、無音データに続く有音デー
タが詰めて記憶されるので、音声データ記憶手段の記憶
空間を有効に活用できる。
、無音検出手段によって検出された無音データが音声デ
ータ記憶手段から消去され、無音データに続く有音デー
タが詰めて記憶されるので、音声データ記憶手段の記憶
空間を有効に活用できる。
【0009】請求項2に記載のデジタルレコーダにおい
ては、デジタルレコーダが有音データの結合位置の音声
再生を行うときに、有音データを詰める前にその結合位
置に存在していた無音データの長さだけ無音が発生され
るので、音声データ記憶手段に無音データが記憶されて
いなくても、オリジナル音声を再生することができる。
ては、デジタルレコーダが有音データの結合位置の音声
再生を行うときに、有音データを詰める前にその結合位
置に存在していた無音データの長さだけ無音が発生され
るので、音声データ記憶手段に無音データが記憶されて
いなくても、オリジナル音声を再生することができる。
【0010】
【実施例】以下、この発明のデジタルレコーダの好適な
実施例を図面を参照して説明する。
実施例を図面を参照して説明する。
【0011】<全体構成>図1は、本発明のデジタルレ
コーダの一実施例の全体構成を示しており、この実施例
においては、同時に3トラックまでの録音、再生動作が
出来るようになっている。全体は図示のとおり、CPU
部(図中左側の部分)と、DMAユニット(音声記録再
生処理装置)(図中右側の部分)とにわかれる。
コーダの一実施例の全体構成を示しており、この実施例
においては、同時に3トラックまでの録音、再生動作が
出来るようになっている。全体は図示のとおり、CPU
部(図中左側の部分)と、DMAユニット(音声記録再
生処理装置)(図中右側の部分)とにわかれる。
【0012】CPU部は、CPU1と、このCPU1の
動作を規定するプログラム(詳細は後述)を記憶したプ
ログラムROM2と、各種データを記憶するエリア、3
トラックのディスクアクセスを記憶するエリア、ハード
ディスク12に記憶されている音声データを手動もしく
は自動にて複数に区切ったときの各区切られた音声デー
タ(以下“イベント”と指称する)の識別情報(イベン
ト番号)および記憶位置(オリジナルトラック番号、ス
タートポイントおよびエンドポイント)を含むイベント
アドレステーブル(図13参照)を記憶するエリア、イ
ベントアドレステーブルに含まれるイベントの識別情報
を各トラック毎にイベントの再生順序に配列して成るイ
ンディビジュアルコントロールトラックを記憶するエリ
ア、ディスク12上の無音データを消去するように、そ
の無音データに続く有音データを詰めて記憶された結果
生じる有音データの結合位置(ディスク12上のアドレ
ス)と、有音データ間に存在していた無音データの長さ
(ブランク長)とが記録されたゲートアドレステーブル
(図13参照)を記憶するエリア(なお、1つのイベン
ト中で無音データによって分離された複数の有音データ
をそれぞれ有音サブイベントと指称するものとする)、
ならびにワークエリア等を含むRAM3と、CPU1の
I/Oポートに接続された周辺機器である各種ファンク
ションキー、データ入力キー等を含むキーボード4、C
RTあるいはLCDとそのドライバを含み各種表示を行
う表示装置5とを有する。
動作を規定するプログラム(詳細は後述)を記憶したプ
ログラムROM2と、各種データを記憶するエリア、3
トラックのディスクアクセスを記憶するエリア、ハード
ディスク12に記憶されている音声データを手動もしく
は自動にて複数に区切ったときの各区切られた音声デー
タ(以下“イベント”と指称する)の識別情報(イベン
ト番号)および記憶位置(オリジナルトラック番号、ス
タートポイントおよびエンドポイント)を含むイベント
アドレステーブル(図13参照)を記憶するエリア、イ
ベントアドレステーブルに含まれるイベントの識別情報
を各トラック毎にイベントの再生順序に配列して成るイ
ンディビジュアルコントロールトラックを記憶するエリ
ア、ディスク12上の無音データを消去するように、そ
の無音データに続く有音データを詰めて記憶された結果
生じる有音データの結合位置(ディスク12上のアドレ
ス)と、有音データ間に存在していた無音データの長さ
(ブランク長)とが記録されたゲートアドレステーブル
(図13参照)を記憶するエリア(なお、1つのイベン
ト中で無音データによって分離された複数の有音データ
をそれぞれ有音サブイベントと指称するものとする)、
ならびにワークエリア等を含むRAM3と、CPU1の
I/Oポートに接続された周辺機器である各種ファンク
ションキー、データ入力キー等を含むキーボード4、C
RTあるいはLCDとそのドライバを含み各種表示を行
う表示装置5とを有する。
【0013】CPU1は、後述するようにリアルタイム
動作時(録音/再生等)において、DMAユニットのア
ドレスバス、データバスの空き時間に、必要に応じてD
MAユニットの各構成要素の制御を行ない、編集時にお
いて、データブロックの並べ換えや、ディスクアクセス
ポインタの操作等を行なう。キーボード4からは、後述
するように、各トラック(以下、Trとする)の録音/
再生モードの設定、スタート、ストップ、ロケート、編
集点の指定などが行える。プログラムROM2,RAM
3のアドレス端子には、アドレスバスを介してCPU1
からアドレス信号が送られ、その出力端子はデータバス
を介してCPU1にあるいはトランシーバ7に接続され
ている。
動作時(録音/再生等)において、DMAユニットのア
ドレスバス、データバスの空き時間に、必要に応じてD
MAユニットの各構成要素の制御を行ない、編集時にお
いて、データブロックの並べ換えや、ディスクアクセス
ポインタの操作等を行なう。キーボード4からは、後述
するように、各トラック(以下、Trとする)の録音/
再生モードの設定、スタート、ストップ、ロケート、編
集点の指定などが行える。プログラムROM2,RAM
3のアドレス端子には、アドレスバスを介してCPU1
からアドレス信号が送られ、その出力端子はデータバス
を介してCPU1にあるいはトランシーバ7に接続され
ている。
【0014】すなわち、CPU部とDMAユニットとを
連結するために、バッファ6、トランシーバ7がDMA
ユニット内に設けられている。バッファ6はCPU1と
アドレスバスを介して接続され、更にDMAユニット内
のアドレスバスに連結される。トランシーバ7はCPU
1とデータバスを介して接続され、更にDMAユニット
内のデータバスに連結される。
連結するために、バッファ6、トランシーバ7がDMA
ユニット内に設けられている。バッファ6はCPU1と
アドレスバスを介して接続され、更にDMAユニット内
のアドレスバスに連結される。トランシーバ7はCPU
1とデータバスを介して接続され、更にDMAユニット
内のデータバスに連結される。
【0015】DMAユニット内には、Tr1の為の音声
入出力装置8−1、Tr2の為の音声入出力装置8−2
、Tr3の為の音声入出力装置8−3が設けられていて
、夫々には、アナログ音声信号が独立に入出力可能とな
っている。
入出力装置8−1、Tr2の為の音声入出力装置8−2
、Tr3の為の音声入出力装置8−3が設けられていて
、夫々には、アナログ音声信号が独立に入出力可能とな
っている。
【0016】各音声入出力装置8−1〜8−3の内部に
は、A/D変換、D/A変換を選択的に実行する変換器
のほか、サンプリングノイズ除去用のローパスフィルタ
、更にサンプリング周期でクロックを発生するクロック
回路などが含まれている。これらの音声入出力装置8−
1〜8−3においては、当該トラックがレコード(記録
)状態に設定されれば、外部からのアナログ音声信号を
サンプリング周期毎に適宜フィルタリングした後、A/
D変換して、デジタル音声データを得る。逆に当該トラ
ックがプレイ(再生)状態に設定されれば、予め読み出
されたデジタル音声データをサンプリング周期毎にD/
A変換して適宜フィルタリングした後、アナログ音声信
号として出力する。
は、A/D変換、D/A変換を選択的に実行する変換器
のほか、サンプリングノイズ除去用のローパスフィルタ
、更にサンプリング周期でクロックを発生するクロック
回路などが含まれている。これらの音声入出力装置8−
1〜8−3においては、当該トラックがレコード(記録
)状態に設定されれば、外部からのアナログ音声信号を
サンプリング周期毎に適宜フィルタリングした後、A/
D変換して、デジタル音声データを得る。逆に当該トラ
ックがプレイ(再生)状態に設定されれば、予め読み出
されたデジタル音声データをサンプリング周期毎にD/
A変換して適宜フィルタリングした後、アナログ音声信
号として出力する。
【0017】Tr1〜Tr3の各音声入出力装置8−1
〜8−3は、データバスを介して対応するバッファ9−
1(BUF1)、バッファ9−2(BUF2)、バッフ
ァ9−3(BUF3)とそれぞれ接続され、デジタル音
声データの授受を行う。
〜8−3は、データバスを介して対応するバッファ9−
1(BUF1)、バッファ9−2(BUF2)、バッフ
ァ9−3(BUF3)とそれぞれ接続され、デジタル音
声データの授受を行う。
【0018】このバッファ9−1〜9−3はTr1〜T
r3に夫々対応しており、音声入出力装置8−1〜8−
3との間のデータ転送は、DMAコントローラ10にて
直接メモリアクセス(DMA)方式により行われる。
r3に夫々対応しており、音声入出力装置8−1〜8−
3との間のデータ転送は、DMAコントローラ10にて
直接メモリアクセス(DMA)方式により行われる。
【0019】この各音声入出力装置8−1〜8−3は、
DMAコントローラ10に対し、レコーディング時には
、サンプリング周期で音声入出力装置8−1〜8−3か
らバッファ9−1〜9−3方向への1回のサンプリング
に係るデジタルデータのDMA転送(シングル転送)を
要求(リクエスト)し(DRQ信号を送出し(Tr1で
はDRQ1、Tr2ではDRQ2、Tr3ではDRQ3
としてDMAコントローラ10に与えられる))、DM
Aコントローラ10からの回答(アクノーレッジが、T
r1ではDAK1、Tr2ではDAK2、Tr3ではD
AK3としてDMAコントローラ10から与えられる)
を受けて、実際のデータ転送が実行される。プレイ時に
は、サンプリング周期でバッファ9−1〜9−3から音
声入出力装置8−1〜8−3方向への1回のサンプリン
グに係るデジタルデータのDMA転送(シングル転送)
の要求が、音声入出力装置8−1〜8−3からなされ、
上記した場合と同様にDMAコントローラ10によって
データ転送が実行される。
DMAコントローラ10に対し、レコーディング時には
、サンプリング周期で音声入出力装置8−1〜8−3か
らバッファ9−1〜9−3方向への1回のサンプリング
に係るデジタルデータのDMA転送(シングル転送)を
要求(リクエスト)し(DRQ信号を送出し(Tr1で
はDRQ1、Tr2ではDRQ2、Tr3ではDRQ3
としてDMAコントローラ10に与えられる))、DM
Aコントローラ10からの回答(アクノーレッジが、T
r1ではDAK1、Tr2ではDAK2、Tr3ではD
AK3としてDMAコントローラ10から与えられる)
を受けて、実際のデータ転送が実行される。プレイ時に
は、サンプリング周期でバッファ9−1〜9−3から音
声入出力装置8−1〜8−3方向への1回のサンプリン
グに係るデジタルデータのDMA転送(シングル転送)
の要求が、音声入出力装置8−1〜8−3からなされ、
上記した場合と同様にDMAコントローラ10によって
データ転送が実行される。
【0020】このバッファ9−1〜9−3は、1回もし
くは複数回のデジタル音声データを記憶できる容量をも
ち、例えばRAMをTr1〜Tr3に3分割し、夫々リ
ングバッファ(最終アドレスと先頭アドレスとが仮想的
につながったバッファ)として使用することで、FIF
Oバッファとして機能するよう構成されている。
くは複数回のデジタル音声データを記憶できる容量をも
ち、例えばRAMをTr1〜Tr3に3分割し、夫々リ
ングバッファ(最終アドレスと先頭アドレスとが仮想的
につながったバッファ)として使用することで、FIF
Oバッファとして機能するよう構成されている。
【0021】このバッファ9−1〜9−3に対するアド
レス指定は、アドレスバスを介してDMAコントローラ
10などよりなされる。すなわちDMA転送を行ってい
るときはDMAユニット内のアドレスバス、データバス
、制御信号ラインはDMAコントローラ10が専有する
ことになる。
レス指定は、アドレスバスを介してDMAコントローラ
10などよりなされる。すなわちDMA転送を行ってい
るときはDMAユニット内のアドレスバス、データバス
、制御信号ラインはDMAコントローラ10が専有する
ことになる。
【0022】そしてバッファ9−1〜9−3はデータバ
スを介し、更にハードディスクコントローラ(以下、H
Dコントローラとする)11の制御に従ってハードディ
スク12とデータの授受を行う。ハードディスク12と
HDコントローラ11とはデータバスとコントロール信
号ラインとを介し連結され、ハードディスク12に対す
るリード/ライトアクセスが全てHDコントローラ11
によりなされる。ハードディスク12は、Tr1〜Tr
3の3トラック分の分割された記憶エリアを有しており
、バッファ9−1〜9−3とのデータ転送がDMAコン
トローラ10によりなされる。これは、HDコントロー
ラ11が1つのデータブロックを転送し終ると割込み(
INT)をCPU1にかけ、次のデータブロックの転送
指示をCPU1に対し行うことによりなされる。CPU
1は、HDコントローラ11からインタラプト信号IN
Tが到来すると、DMAコントローラ10、HDコント
ローラ11を所望の状態に設定したり、プログラミング
したりした後、DMA転送を行わせる。この動作の詳細
は後に説明する。
スを介し、更にハードディスクコントローラ(以下、H
Dコントローラとする)11の制御に従ってハードディ
スク12とデータの授受を行う。ハードディスク12と
HDコントローラ11とはデータバスとコントロール信
号ラインとを介し連結され、ハードディスク12に対す
るリード/ライトアクセスが全てHDコントローラ11
によりなされる。ハードディスク12は、Tr1〜Tr
3の3トラック分の分割された記憶エリアを有しており
、バッファ9−1〜9−3とのデータ転送がDMAコン
トローラ10によりなされる。これは、HDコントロー
ラ11が1つのデータブロックを転送し終ると割込み(
INT)をCPU1にかけ、次のデータブロックの転送
指示をCPU1に対し行うことによりなされる。CPU
1は、HDコントローラ11からインタラプト信号IN
Tが到来すると、DMAコントローラ10、HDコント
ローラ11を所望の状態に設定したり、プログラミング
したりした後、DMA転送を行わせる。この動作の詳細
は後に説明する。
【0023】DMAコントローラ10はプレイ時にあっ
ては、ハードディスク12から予め指定された量(複数
サンプリング周期分)のデジタル音声データを読み出し
た後、バッファ9−1〜9−3のうちの指定されるバッ
ファへDMA転送(ブロック転送)するよう動作し、レ
コード時にあっては、指定されたバッファから予め指定
された量(複数サンプリング周期分)のデジタル音声デ
ータを読み出してハードディスク12の指定される位置
へDMA転送(ブロック転送)するよう動作する。
ては、ハードディスク12から予め指定された量(複数
サンプリング周期分)のデジタル音声データを読み出し
た後、バッファ9−1〜9−3のうちの指定されるバッ
ファへDMA転送(ブロック転送)するよう動作し、レ
コード時にあっては、指定されたバッファから予め指定
された量(複数サンプリング周期分)のデジタル音声デ
ータを読み出してハードディスク12の指定される位置
へDMA転送(ブロック転送)するよう動作する。
【0024】このハードディスク12とバッファ9−1
〜9−3との間のデータ転送の際は、HDコントローラ
11よりDMAコントローラ10に対し要求信号DRE
Qを出力し(DMAコントローラ10側ではDRQ4と
して受取る)、転送可能となると逆に回答信号DACK
を受取る(DMAコントローラ10側ではDAK4とし
て出力する)ことで、実際の転送状態となる。
〜9−3との間のデータ転送の際は、HDコントローラ
11よりDMAコントローラ10に対し要求信号DRE
Qを出力し(DMAコントローラ10側ではDRQ4と
して受取る)、転送可能となると逆に回答信号DACK
を受取る(DMAコントローラ10側ではDAK4とし
て出力する)ことで、実際の転送状態となる。
【0025】このように、DMAコントローラ10は、
Tr1〜Tr3の音声入出力装置8−1〜8−3とバッ
ファ9−1〜9−3との間の3チャンネル(後述するC
H1〜CH3)のデータ転送と、順番に選択されたいず
れかのバッファ9−1〜9−3とハードディスク12と
の間の1チャンネル(後述するCH4)のデータ転送と
の、計4チャンネルの時分割データ転送動作をする。
Tr1〜Tr3の音声入出力装置8−1〜8−3とバッ
ファ9−1〜9−3との間の3チャンネル(後述するC
H1〜CH3)のデータ転送と、順番に選択されたいず
れかのバッファ9−1〜9−3とハードディスク12と
の間の1チャンネル(後述するCH4)のデータ転送と
の、計4チャンネルの時分割データ転送動作をする。
【0026】CPU1は、DMAユニット内の各構成要
素の機能、作用を管理するために、アドレスバスを介し
バッファ6にアドレス信号を与えるほか、各構成要素の
指定信号をバッファ6を介しデコーダ13に供給して、
夫々の指定信号CSを、各音声入出力装置8−1〜8−
3、バッファ9−1〜9−3、DMAコントローラ10
、HDコントローラ11に与える。同時に、トランシー
バ7を介し、データバスを経由して種々のデータのやり
とりがCPU1との間でなされる。
素の機能、作用を管理するために、アドレスバスを介し
バッファ6にアドレス信号を与えるほか、各構成要素の
指定信号をバッファ6を介しデコーダ13に供給して、
夫々の指定信号CSを、各音声入出力装置8−1〜8−
3、バッファ9−1〜9−3、DMAコントローラ10
、HDコントローラ11に与える。同時に、トランシー
バ7を介し、データバスを経由して種々のデータのやり
とりがCPU1との間でなされる。
【0027】更に、CPU1から各音声入出力装置8−
1〜8−3のIOWR端子にはレコード状態(ライト状
態)とするのかプレイ状態(リード状態)とするのかを
指定する指定信号WRが、バッファ6を介して与えられ
る。
1〜8−3のIOWR端子にはレコード状態(ライト状
態)とするのかプレイ状態(リード状態)とするのかを
指定する指定信号WRが、バッファ6を介して与えられ
る。
【0028】また、各バッファ9−1〜9−3、DMA
コントローラ10、HDコントローラ11に対してもこ
の指定信号(ライト信号)WRと、別の指定信号(リー
ド信号)RDとがバッファ6を介してCPU1から与え
られ、夫々の構成要素からデータを読み出したり逆にデ
ータを書込んだりするようになる。また、DMAコント
ローラ10からも、DMA転送状態にあってはこれらの
指定信号RD、WRを出力するようになる。これらの信
号と各構成要素の機能、動作の関係は後述する。
コントローラ10、HDコントローラ11に対してもこ
の指定信号(ライト信号)WRと、別の指定信号(リー
ド信号)RDとがバッファ6を介してCPU1から与え
られ、夫々の構成要素からデータを読み出したり逆にデ
ータを書込んだりするようになる。また、DMAコント
ローラ10からも、DMA転送状態にあってはこれらの
指定信号RD、WRを出力するようになる。これらの信
号と各構成要素の機能、動作の関係は後述する。
【0029】DMAコントローラ10は、DMA転送を
各構成要素間で行っているとき、DMA可能(イネーブ
リング)信号DMAENBを“1”にして出力する。そ
の結果、この信号DMAENBがインバータ16を介し
て与えられるアンドゲート14の出力は“0”となり、
バッファ6、トランシーバ7にはイネーブリング信号E
が“0”として与えられ、結局CPU部とDMAユニッ
トとのデータ、アドレスの授受はできなくなる。このと
き、アンドゲード15に“1”信号がデコーダ13より
与えられておれば、アンドゲート15の出力が“1”と
なってCPU1にウェイト信号WAITが供給される。
各構成要素間で行っているとき、DMA可能(イネーブ
リング)信号DMAENBを“1”にして出力する。そ
の結果、この信号DMAENBがインバータ16を介し
て与えられるアンドゲート14の出力は“0”となり、
バッファ6、トランシーバ7にはイネーブリング信号E
が“0”として与えられ、結局CPU部とDMAユニッ
トとのデータ、アドレスの授受はできなくなる。このと
き、アンドゲード15に“1”信号がデコーダ13より
与えられておれば、アンドゲート15の出力が“1”と
なってCPU1にウェイト信号WAITが供給される。
【0030】つまり、CPU1が、DMAユニットを管
理するために、バッファ6、トランシーバ7を開かせる
べくデコーダ13に所定の信号を与えているとき、つま
りアンドゲート14の一入力端にデコーダ13より“1
”信号を供給しているとき(CPU1がバッファ9−1
〜9−3、DMAコントローラ10、HDコントローラ
11、音声入出力装置8−1〜8−3のいずれかにアク
セスするためのアドレス信号を出力すると、デコーダ1
3の出力はアクティブとなりアンドゲート14、15の
夫々の一入力端への出力は“1”となる)、DMA転送
を開始するとCPU1にはウェイト(WAIT)がかか
り、DMA転送が優先して実行された後、ウェイト解除
にともなってCPU1の動作が再開される。
理するために、バッファ6、トランシーバ7を開かせる
べくデコーダ13に所定の信号を与えているとき、つま
りアンドゲート14の一入力端にデコーダ13より“1
”信号を供給しているとき(CPU1がバッファ9−1
〜9−3、DMAコントローラ10、HDコントローラ
11、音声入出力装置8−1〜8−3のいずれかにアク
セスするためのアドレス信号を出力すると、デコーダ1
3の出力はアクティブとなりアンドゲート14、15の
夫々の一入力端への出力は“1”となる)、DMA転送
を開始するとCPU1にはウェイト(WAIT)がかか
り、DMA転送が優先して実行された後、ウェイト解除
にともなってCPU1の動作が再開される。
【0031】また、逆に、DMAコントローラ10が、
DMA転送を実行しているときに、CPU1が例えばD
MAコントローラ10をアクセスしようとしても、アン
ドゲート15よりウェイト信号WAITが与えられCP
U1の実行サイクルは途中で引き延ばされて、バッファ
6、トランシーバ7はその間閉じられることになる。
DMA転送を実行しているときに、CPU1が例えばD
MAコントローラ10をアクセスしようとしても、アン
ドゲート15よりウェイト信号WAITが与えられCP
U1の実行サイクルは途中で引き延ばされて、バッファ
6、トランシーバ7はその間閉じられることになる。
【0032】結局、CPU1が、DMAユニットの各構
成要素にアクセスできるのは、■CPU1がDMAユニ
ットの各構成要素をアクセスするためのアドレスを出し
た。■信号DMAENBがインアクティブ(“0”)つ
まりDMAユニットのデータバスが空いている。の2つ
の条件を満足するときであるが、CPU1は上述したよ
うに、ゲート14、15の作用によっていつDMAユニ
ットにアクセスするかを考慮することなく処理をすすめ
ることができる。
成要素にアクセスできるのは、■CPU1がDMAユニ
ットの各構成要素をアクセスするためのアドレスを出し
た。■信号DMAENBがインアクティブ(“0”)つ
まりDMAユニットのデータバスが空いている。の2つ
の条件を満足するときであるが、CPU1は上述したよ
うに、ゲート14、15の作用によっていつDMAユニ
ットにアクセスするかを考慮することなく処理をすすめ
ることができる。
【0033】また、CPU1は、キー入力やコントロー
ルデータのトリガに応じて直ちにDMAユニットの動作
状態を変えたい場合、DMAコントローラ10に対して
、DMAコントローラ10の状態がどのような状態であ
ってもDMA転送を中断する指令DMAENDを出力す
ることができる(これは、DMAコントローラ10には
END信号として与えられる)。
ルデータのトリガに応じて直ちにDMAユニットの動作
状態を変えたい場合、DMAコントローラ10に対して
、DMAコントローラ10の状態がどのような状態であ
ってもDMA転送を中断する指令DMAENDを出力す
ることができる(これは、DMAコントローラ10には
END信号として与えられる)。
【0034】<DMAコントローラ10の要部構成>次
に、DMAコントローラ10の一構成例を説明する。D
MAコントローラ10は、1バスサイクルが数百ナノ秒
である転送能力をもつ。従って、3トラック分のサンプ
リングデータを転送する時間は1から2マイクロ秒とな
る。
に、DMAコントローラ10の一構成例を説明する。D
MAコントローラ10は、1バスサイクルが数百ナノ秒
である転送能力をもつ。従って、3トラック分のサンプ
リングデータを転送する時間は1から2マイクロ秒とな
る。
【0035】サンプリング周波数fsを48KHzとし
たとき、1サンプリング時間の間隔は約21マイクロ秒
となり、サンプリング時間間隔のほとんどは、バッファ
9−1〜9−3とHDコントローラ11、ハードディス
ク12との間のデータ転送及びCPU1から各構成要素
のプログラミング時間にあてることが可能となる。
たとき、1サンプリング時間の間隔は約21マイクロ秒
となり、サンプリング時間間隔のほとんどは、バッファ
9−1〜9−3とHDコントローラ11、ハードディス
ク12との間のデータ転送及びCPU1から各構成要素
のプログラミング時間にあてることが可能となる。
【0036】さて、その具体例の主要構成は、図2に示
されている。このDMAコントローラ10は、アドレス
バスと接続される入力側(IN)のアドレスバッファ1
01と出力側(OUT)のアドレスバッファ102を有
する。入力側のアドレスバッファ101に与えられるア
ドレス信号によって、レジスタセレクタ103の指定内
容が変化し、アドレスレジスタ104とコントロールレ
ジスタ105とに存在する所望のレジスタが指定される
ことになる。
されている。このDMAコントローラ10は、アドレス
バスと接続される入力側(IN)のアドレスバッファ1
01と出力側(OUT)のアドレスバッファ102を有
する。入力側のアドレスバッファ101に与えられるア
ドレス信号によって、レジスタセレクタ103の指定内
容が変化し、アドレスレジスタ104とコントロールレ
ジスタ105とに存在する所望のレジスタが指定される
ことになる。
【0037】アドレスレジスタ104、コントロールレ
ジスタ105には4つのチャンネルCH1〜CH4のエ
リアがあり、チャンネルCH1〜CH3は、バッファ9
−1〜9−3と音声入出力装置8−1〜8−3との間の
DMA転送を行うためのレジスタであり、チャンネルC
H4は、バッファ9−1〜9−3のうちの指定したバッ
ファとハードディスク12との間のDMA転送を行なう
ためのレジスタである。
ジスタ105には4つのチャンネルCH1〜CH4のエ
リアがあり、チャンネルCH1〜CH3は、バッファ9
−1〜9−3と音声入出力装置8−1〜8−3との間の
DMA転送を行うためのレジスタであり、チャンネルC
H4は、バッファ9−1〜9−3のうちの指定したバッ
ファとハードディスク12との間のDMA転送を行なう
ためのレジスタである。
【0038】アドレスレジスタ104内の各チャンネル
CH1〜CH4のレジスタは、対応するバッファ9−1
〜9−3及び指定されたバッファのカレントアドレスと
スタートアドレスとを少なくとも記憶するエリアを有し
、コントロールレジスタ105の各チャンネルCH1〜
CH4のエリアには、例えば、DMA転送の方向を指定
するコントロールデータが記憶される。
CH1〜CH4のレジスタは、対応するバッファ9−1
〜9−3及び指定されたバッファのカレントアドレスと
スタートアドレスとを少なくとも記憶するエリアを有し
、コントロールレジスタ105の各チャンネルCH1〜
CH4のエリアには、例えば、DMA転送の方向を指定
するコントロールデータが記憶される。
【0039】このアドレスレジスタ104、コントロー
ルレジスタ105の内容は、データバッファ106を介
してデータバスに対して入出力可能となっている。そし
て、これらの各構成要素を制御しているのが、タイミン
グコントロールロジック107と、サービスコントロー
ラ108、チャンネルセレクタ109である。
ルレジスタ105の内容は、データバッファ106を介
してデータバスに対して入出力可能となっている。そし
て、これらの各構成要素を制御しているのが、タイミン
グコントロールロジック107と、サービスコントロー
ラ108、チャンネルセレクタ109である。
【0040】サービスコントローラ108は、ハードロ
ジックもしくはマイクロプログラム制御構成となってい
て、タイミングコントロールロジック107からの信号
、音声入出力装置8−1〜8−3、HDコントローラ1
1からのDMA要求信号DRQ1〜DRQ4や、CPU
1からのDMA中断指令END(DMAEND)を受け
とり、上記各構成要素に対する回答(アクノーレッジ)
信号DAK1〜DAK4、DMA転送中を示すDMA可
能(イネーブリング)信号DMAENBを出力するほか
、タイミングコントロールロジック107に対し各種指
令を出したり、チャンネルセレクタ109に対しチャン
ネルセレクト信号を出力したりする。チャンネルセレク
タ109は、アドレスレジスタ104、コントロールレ
ジスタ105のなかの各チャンネルCH1〜CH4に対
応するレジスタを選択的に指定する。
ジックもしくはマイクロプログラム制御構成となってい
て、タイミングコントロールロジック107からの信号
、音声入出力装置8−1〜8−3、HDコントローラ1
1からのDMA要求信号DRQ1〜DRQ4や、CPU
1からのDMA中断指令END(DMAEND)を受け
とり、上記各構成要素に対する回答(アクノーレッジ)
信号DAK1〜DAK4、DMA転送中を示すDMA可
能(イネーブリング)信号DMAENBを出力するほか
、タイミングコントロールロジック107に対し各種指
令を出したり、チャンネルセレクタ109に対しチャン
ネルセレクト信号を出力したりする。チャンネルセレク
タ109は、アドレスレジスタ104、コントロールレ
ジスタ105のなかの各チャンネルCH1〜CH4に対
応するレジスタを選択的に指定する。
【0041】タイミングコントロールロジック107は
、デコーダ13からの指定信号CS、コントロールレジ
スタ105からのコントロール信号、サービスコントロ
ーラ108からの制御信号を受けて、アドレスバッファ
102、データバッファ106の入出力制御をするほか
、アドレスインクリメンタ110を動作させて、アドレ
スレジスタ104のなかの指定されたチャンネルのカレ
ントアドレスレジスタをインクリメントする。
、デコーダ13からの指定信号CS、コントロールレジ
スタ105からのコントロール信号、サービスコントロ
ーラ108からの制御信号を受けて、アドレスバッファ
102、データバッファ106の入出力制御をするほか
、アドレスインクリメンタ110を動作させて、アドレ
スレジスタ104のなかの指定されたチャンネルのカレ
ントアドレスレジスタをインクリメントする。
【0042】<CPU1の全体動作>以下に、本実施例
の動作について説明する。CPU1の動作を示すフロー
チャートが図3、図4および図5に示されている。これ
はプログラムROM2に記憶されたプログラム(ソフト
ウェア)よるもので、図3はメインルーチンを示し、図
4は記録再生ルーチンを示し、図5は、HDコントロー
ラ11からのインタラプト信号INTの到来に応答して
実行するインタラプトルーチンを示している。
の動作について説明する。CPU1の動作を示すフロー
チャートが図3、図4および図5に示されている。これ
はプログラムROM2に記憶されたプログラム(ソフト
ウェア)よるもので、図3はメインルーチンを示し、図
4は記録再生ルーチンを示し、図5は、HDコントロー
ラ11からのインタラプト信号INTの到来に応答して
実行するインタラプトルーチンを示している。
【0043】まず図3において、CPU1は、電源オン
に応じてメインルーチンをスタートさせ、ステップ3−
0(以下、単に3−0と記す)において各種初期状態を
設定する。そして、3−1においてキー入力を受け、3
−2において何のモードに設定されたかを判断する。
に応じてメインルーチンをスタートさせ、ステップ3−
0(以下、単に3−0と記す)において各種初期状態を
設定する。そして、3−1においてキー入力を受け、3
−2において何のモードに設定されたかを判断する。
【0044】CPU1が、現在記録/再生モードである
とジャッジすると、図3の3−2から図4の4−3に進
み、3つあるトラックを順次選択指定し、さらに4−4
に進み、各トラックの動作モードをキーボード4の入力
指示に従って設定し、4−5において、A/D変換、D
/A変換のいずれの動作を各音声入出力装置8−1〜8
−3が実行するのか、バッファ6、デコーダ13を介し
て指定信号CSを順次送出しながらIOWRを与えてセ
ッティングする。いま、例えばTr1については、プレ
イ(再生)状態(従ってD/A変換動作状態)、Tr2
及びTr3は夫々レコード(記録)状態(従ってA/D
変換動作状態)とする。図10に、このようなモード設
定した場合の概略動作の概念図を示す。
とジャッジすると、図3の3−2から図4の4−3に進
み、3つあるトラックを順次選択指定し、さらに4−4
に進み、各トラックの動作モードをキーボード4の入力
指示に従って設定し、4−5において、A/D変換、D
/A変換のいずれの動作を各音声入出力装置8−1〜8
−3が実行するのか、バッファ6、デコーダ13を介し
て指定信号CSを順次送出しながらIOWRを与えてセ
ッティングする。いま、例えばTr1については、プレ
イ(再生)状態(従ってD/A変換動作状態)、Tr2
及びTr3は夫々レコード(記録)状態(従ってA/D
変換動作状態)とする。図10に、このようなモード設
定した場合の概略動作の概念図を示す。
【0045】そして、4−5では、DMAコントローラ
10に対し、各Tr1〜Tr3についてのバッファ9−
1〜9−3のアドレスを初期化させる。つまり、図2の
アドレスバッファ101、レジスタセレクタ103、チ
ャンネルセレクタ109等により、チャンネルCH1〜
CH3の各レジスタ(アドレスレジスタ104、コント
ロールレジスタ105)を指定しながら、データバッフ
ァ106を介して初期設定データを入力設定する。
10に対し、各Tr1〜Tr3についてのバッファ9−
1〜9−3のアドレスを初期化させる。つまり、図2の
アドレスバッファ101、レジスタセレクタ103、チ
ャンネルセレクタ109等により、チャンネルCH1〜
CH3の各レジスタ(アドレスレジスタ104、コント
ロールレジスタ105)を指定しながら、データバッフ
ァ106を介して初期設定データを入力設定する。
【0046】ここで、バッファ9−1〜9−3は、リン
グバッファとして循環的に使用されるようになっており
、初期状態としては、各バッファ9−1〜9−3のスタ
ートアドレスとカレントアドレスとは一致するようセッ
トされる(図10に、各バッファ9−1〜9−3のスタ
ートアドレスとカレントアドレスとが、CH1〜CH3
のアドレスレジスタ104に記憶されて制御される状態
を模式的に示してある)。
グバッファとして循環的に使用されるようになっており
、初期状態としては、各バッファ9−1〜9−3のスタ
ートアドレスとカレントアドレスとは一致するようセッ
トされる(図10に、各バッファ9−1〜9−3のスタ
ートアドレスとカレントアドレスとが、CH1〜CH3
のアドレスレジスタ104に記憶されて制御される状態
を模式的に示してある)。
【0047】続いてCPU1は4−6の処理を実行し、
RAM3内の作業(ワーク)メモリエリアに存在するハ
ードディスク12の各トラックTr1〜Tr3に対応す
るディスクアクセスポインタを初期設定する(図10に
ハードディスク12の記憶エリアと、ディスクアクセス
ポインタとの関係を示している)。
RAM3内の作業(ワーク)メモリエリアに存在するハ
ードディスク12の各トラックTr1〜Tr3に対応す
るディスクアクセスポインタを初期設定する(図10に
ハードディスク12の記憶エリアと、ディスクアクセス
ポインタとの関係を示している)。
【0048】次にCPU1は、各音声入出力装置8−1
〜8−3のA/D変換動作又はD/A変換動作を開始さ
せる(4−7)。続いて、4−8において、ソフトウェ
ア割込みをかけて、HDコントローラ11が、ハードデ
ィスク12とバッファ9−1〜9−3のいずれかとの間
のデータ転送のプログラム要求(HDコントローラ11
がCPU1に対してインタラプトINTをかけること)
を行なったとき(後述)と同じ処理を実行する。
〜8−3のA/D変換動作又はD/A変換動作を開始さ
せる(4−7)。続いて、4−8において、ソフトウェ
ア割込みをかけて、HDコントローラ11が、ハードデ
ィスク12とバッファ9−1〜9−3のいずれかとの間
のデータ転送のプログラム要求(HDコントローラ11
がCPU1に対してインタラプトINTをかけること)
を行なったとき(後述)と同じ処理を実行する。
【0049】具体的には、図5に示したフローチャート
に従った動作を4−8で実行することになる。例えば、
Tr1についてハードディスク12から、例えば詳細は
後述する図13のゲートアドレステーブルあるいはイベ
ントアドレステーブルEATの有音サブイベント1のデ
ジタル音声データをバッファ9−1にDMA転送するた
めに、DMAコントローラ10のチャンネルとしてTr
1に対応するチャンネルCH1を選定する(5−1)。 また、DMAコントローラ10のアドレスレジスタ10
4のCH1のエリアからカレントアドレスおよびスター
トアドレスを読み出して、バッファ9−1からのまたは
バッファ9−1へのデータ転送可能数(録音時ではバッ
ファ9−1のデータ充満領域の量すなわちバッファ9−
1からのデータ転送可能数、再生時ではバッファ9−1
の空き領域の量すなわちバッファ9−1へのデータ転送
可能数)を算出する(5−1)。
に従った動作を4−8で実行することになる。例えば、
Tr1についてハードディスク12から、例えば詳細は
後述する図13のゲートアドレステーブルあるいはイベ
ントアドレステーブルEATの有音サブイベント1のデ
ジタル音声データをバッファ9−1にDMA転送するた
めに、DMAコントローラ10のチャンネルとしてTr
1に対応するチャンネルCH1を選定する(5−1)。 また、DMAコントローラ10のアドレスレジスタ10
4のCH1のエリアからカレントアドレスおよびスター
トアドレスを読み出して、バッファ9−1からのまたは
バッファ9−1へのデータ転送可能数(録音時ではバッ
ファ9−1のデータ充満領域の量すなわちバッファ9−
1からのデータ転送可能数、再生時ではバッファ9−1
の空き領域の量すなわちバッファ9−1へのデータ転送
可能数)を算出する(5−1)。
【0050】次に、当該トラック(ここでは、トラック
Tr1)が録音モードか再生モードか判断する(5−2
)。録音モードであれば、DMAコントローラ10およ
びHDコントローラ11をプログラムして、バッファ9
−1からHDコントローラ10へのデータ転送を行う(
5−13)。より具体的に述べるとDMAコントローラ
10に対するプログラミングは、CH1のスタートアド
レスをCH4のスタートアドレスおよびカレントアドレ
スにコピーすることにより行う。CH4のカレントアド
レスは、単位量のデータがバッファ9−1からHDコン
トローラ11に転送される毎に増加する。HDコントロ
ーラ11に対するプログラミングは、RAM3の作業メ
モリからTr1のディスクアクセスポインタを読み出し
、このポインタと、5−1で算出したバッファ9−1か
らHDコントローラ11へのデータ転送可能数と、5−
2において検出されたモード(録音モード)とによって
行う。
Tr1)が録音モードか再生モードか判断する(5−2
)。録音モードであれば、DMAコントローラ10およ
びHDコントローラ11をプログラムして、バッファ9
−1からHDコントローラ10へのデータ転送を行う(
5−13)。より具体的に述べるとDMAコントローラ
10に対するプログラミングは、CH1のスタートアド
レスをCH4のスタートアドレスおよびカレントアドレ
スにコピーすることにより行う。CH4のカレントアド
レスは、単位量のデータがバッファ9−1からHDコン
トローラ11に転送される毎に増加する。HDコントロ
ーラ11に対するプログラミングは、RAM3の作業メ
モリからTr1のディスクアクセスポインタを読み出し
、このポインタと、5−1で算出したバッファ9−1か
らHDコントローラ11へのデータ転送可能数と、5−
2において検出されたモード(録音モード)とによって
行う。
【0051】この結果、HDコントローラ11は、いま
の場合、バッファ9−1からハードディスク12への方
向のDMA転送を、DMAコントローラ10に要求し(
DREQを出力し)、DMAコントローラ10は対応す
るDMA転送を実行することになる。続いて、CPU1
は、ディスクアクセスポインタを、上述した転送処理を
実行した結果とるであろう値まで更新する(5−12)
。すなわち、バッファ9−1とハードディスク12との
間のデータ転送は、この後、DMAコントローラ10が
全て実行することになり、CPU1はこのDMA転送が
完了したときのハードディスク12のアドレスをディス
クアクセスポインタにセットするのである。
の場合、バッファ9−1からハードディスク12への方
向のDMA転送を、DMAコントローラ10に要求し(
DREQを出力し)、DMAコントローラ10は対応す
るDMA転送を実行することになる。続いて、CPU1
は、ディスクアクセスポインタを、上述した転送処理を
実行した結果とるであろう値まで更新する(5−12)
。すなわち、バッファ9−1とハードディスク12との
間のデータ転送は、この後、DMAコントローラ10が
全て実行することになり、CPU1はこのDMA転送が
完了したときのハードディスク12のアドレスをディス
クアクセスポインタにセットするのである。
【0052】図5の5−2において、再生モードと判断
されると、CPU1は、RAM3中のディスクアクセス
ポインタが属するゲートアドレステーブル(またはイベ
ントアドレステーブルEAT)中の現テーブル要素の残
りデータ数を算出する(5−3)。ゲートアドレステー
ブルは、各トラック毎に生成され、図13に示すように
、ディスク12の再生すべき領域、すなわち、再生すべ
き順序に配列された各有音サブイベントのディスク12
上の始点および終点を示すスタートアドレスおよびエン
ドアドレスと、オリジナル音声データにおいて有音イベ
ント間に存在していた無音データの長さを示すブランク
長とを含んで構成され、前述のようにRAM3中に記憶
されている。すなわち、ゲートアドレステーブルは、再
生すべき有音サブイベント毎に、1つのスタートアドレ
スおよび1つのエンドアドレスから成る1つのテーブル
要素を有するように構成されている。
されると、CPU1は、RAM3中のディスクアクセス
ポインタが属するゲートアドレステーブル(またはイベ
ントアドレステーブルEAT)中の現テーブル要素の残
りデータ数を算出する(5−3)。ゲートアドレステー
ブルは、各トラック毎に生成され、図13に示すように
、ディスク12の再生すべき領域、すなわち、再生すべ
き順序に配列された各有音サブイベントのディスク12
上の始点および終点を示すスタートアドレスおよびエン
ドアドレスと、オリジナル音声データにおいて有音イベ
ント間に存在していた無音データの長さを示すブランク
長とを含んで構成され、前述のようにRAM3中に記憶
されている。すなわち、ゲートアドレステーブルは、再
生すべき有音サブイベント毎に、1つのスタートアドレ
スおよび1つのエンドアドレスから成る1つのテーブル
要素を有するように構成されている。
【0053】RAM3中のディスクアクセスポインタは
、音声入出力装置8−1、8−2または8−3(この例
では8−1)が現在再生している音声データの記憶位置
を指示するのではなく、次にバッファ9−1、9−2ま
たは9−3(この例では9−1)に転送すべきハードデ
ィスク12に記憶されたデータブロックの先頭を示す。 いま、ディスクアクセスポインタの値が5001とする
と、このポインタが属するテーブル要素は、有音サブイ
ベント1に対応するテーブル要素である。この場合、残
りデータ数は 15000−(5001−1)=10000である。
、音声入出力装置8−1、8−2または8−3(この例
では8−1)が現在再生している音声データの記憶位置
を指示するのではなく、次にバッファ9−1、9−2ま
たは9−3(この例では9−1)に転送すべきハードデ
ィスク12に記憶されたデータブロックの先頭を示す。 いま、ディスクアクセスポインタの値が5001とする
と、このポインタが属するテーブル要素は、有音サブイ
ベント1に対応するテーブル要素である。この場合、残
りデータ数は 15000−(5001−1)=10000である。
【0054】次に、5−4において、今求めた残りデー
タ数と5−1で算出された転送可能データ数とが比較さ
れ、転送可能データ数の方が大きく(5−4のNO)、
しかも、ディスクアクセスポインタが示すアドレスにも
ともと無音データが存在していなければ(5−5のNO
)、当該テーブル要素が示すデータをバッファ9−1に
転送する(5−6)。ディスクアクセスポインタが示す
アドレスに無音データが存在したか否かは、CPU1が
RAM3中のゲートアドレステーブルを参照して、ディ
スクアクセスポインタが各有音サブイベントのエンドポ
イントに一致しているか調べることによって判断する。 いま、前述のようにディスクアクセスポインタの値が5
001、残りデータ数が10000、データ転送可能数
が20000とすると、10000<20000であり
、また、ディスクアクセスポインタの値が有音サブイベ
ント1のエンドポイントに一致していないから、ディス
クアクセスポインタが示すディスク12のアドレス50
01から10000個分のアドレスに記憶された音声デ
ータがバッファ9−1に転送される。なお、5−5にお
いて、ディスクアクセスポインタが示すアドレスに無音
データが存在していたと判断されると、ハードディスク
12内の所定領域に記憶されているゼロデータが繰り返
し読み出されてバッファ9−1に転送される。
タ数と5−1で算出された転送可能データ数とが比較さ
れ、転送可能データ数の方が大きく(5−4のNO)、
しかも、ディスクアクセスポインタが示すアドレスにも
ともと無音データが存在していなければ(5−5のNO
)、当該テーブル要素が示すデータをバッファ9−1に
転送する(5−6)。ディスクアクセスポインタが示す
アドレスに無音データが存在したか否かは、CPU1が
RAM3中のゲートアドレステーブルを参照して、ディ
スクアクセスポインタが各有音サブイベントのエンドポ
イントに一致しているか調べることによって判断する。 いま、前述のようにディスクアクセスポインタの値が5
001、残りデータ数が10000、データ転送可能数
が20000とすると、10000<20000であり
、また、ディスクアクセスポインタの値が有音サブイベ
ント1のエンドポイントに一致していないから、ディス
クアクセスポインタが示すディスク12のアドレス50
01から10000個分のアドレスに記憶された音声デ
ータがバッファ9−1に転送される。なお、5−5にお
いて、ディスクアクセスポインタが示すアドレスに無音
データが存在していたと判断されると、ハードディスク
12内の所定領域に記憶されているゼロデータが繰り返
し読み出されてバッファ9−1に転送される。
【0055】このディスク12からバッファ9−1への
データ転送は、DMAコントローラ10およびHDコン
トローラ11をプログラムして行う。DMAコントロー
ラ10に対するプログラミングは、CH1のスタートア
ドレスをCH4のスタートアドレスおよびカレントアド
レスにコピーすることにより行う。CH4のカレントア
ドレスは、単位量のデータがハードディスク12からバ
ッファ9−1に転送される毎に増加する。HDコントロ
ーラ11に対するプログラミングは、ディスクアクセス
ポインタの値(この例では5001)、5−3で算出し
た現テーブル要素の残りデータ数(この例では1000
0)、および5−2で検出されたモード(この例では再
生モード)によって行う。
データ転送は、DMAコントローラ10およびHDコン
トローラ11をプログラムして行う。DMAコントロー
ラ10に対するプログラミングは、CH1のスタートア
ドレスをCH4のスタートアドレスおよびカレントアド
レスにコピーすることにより行う。CH4のカレントア
ドレスは、単位量のデータがハードディスク12からバ
ッファ9−1に転送される毎に増加する。HDコントロ
ーラ11に対するプログラミングは、ディスクアクセス
ポインタの値(この例では5001)、5−3で算出し
た現テーブル要素の残りデータ数(この例では1000
0)、および5−2で検出されたモード(この例では再
生モード)によって行う。
【0056】この結果、HDコントローラ11は、ハー
ドディスク12からバッファ9−1の方向ヘのDMA転
送を、DMAコントローラ10に要求し(DREQを出
力し)、DMAコントローラ10は対応するDMA転送
を実行することになる。続いて、CPU1は、ディスク
アクセスポインタを、この転送処理を実行した結果とる
べき値に更新する(5−8)。上述の例(図13)では
、ディスクアクセスポインタは15000に更新されて
次のテーブル要素(図13の例では有音サブイベント2
のテーブル要素)に移行する。そして、バッファ9−1
へのデータ転送可能数も更新する(この例では、100
00となる)。
ドディスク12からバッファ9−1の方向ヘのDMA転
送を、DMAコントローラ10に要求し(DREQを出
力し)、DMAコントローラ10は対応するDMA転送
を実行することになる。続いて、CPU1は、ディスク
アクセスポインタを、この転送処理を実行した結果とる
べき値に更新する(5−8)。上述の例(図13)では
、ディスクアクセスポインタは15000に更新されて
次のテーブル要素(図13の例では有音サブイベント2
のテーブル要素)に移行する。そして、バッファ9−1
へのデータ転送可能数も更新する(この例では、100
00となる)。
【0057】そして、再びステップ5−3に戻って、デ
ィスクアクセスポインタが属するゲートアドレステーブ
ルの現テーブル要素、すなわち有音イベント1の残りデ
ータ数を算出する(この例では0)。次に、残りデータ
数(0)とバッファ9−1へのデータ転送可能数(10
000)とを比較する(5−4)。この例では、データ
転送可能数の方が大きいので、5−4から5−5に進み
、ディスクアクセスポインタが示すアドレスに無音デー
タが存在していたかが調べられる。この例では、ディス
クアクセスポインタの値15000が有音サブイベント
1のエンドポイント15000に一致しているので、無
音データが存在していたと判断される。そしてCPU1
は、図13のゲートアドレステーブルの有音サブイベン
ト1のブランク長に相当する2000個のゼロデータを
発生させる(5−7)。これは、CPU1がディスクの
所定のゼロデータ記憶領域から繰り返しゼロデータを読
み出すことによって行われる。次に、CPU1はディス
クアクセスポインタを、ゲートアドレステーブルの次の
テーブル要素である次の有音サブイベント2のスタート
ポイント15001に更新する(5−8)。ただし、デ
ータ転送可能数は、以前の値10000から今回転送し
たゼロデータの数を引いて(10000−2000=8
000)、新たな値8000とする。
ィスクアクセスポインタが属するゲートアドレステーブ
ルの現テーブル要素、すなわち有音イベント1の残りデ
ータ数を算出する(この例では0)。次に、残りデータ
数(0)とバッファ9−1へのデータ転送可能数(10
000)とを比較する(5−4)。この例では、データ
転送可能数の方が大きいので、5−4から5−5に進み
、ディスクアクセスポインタが示すアドレスに無音デー
タが存在していたかが調べられる。この例では、ディス
クアクセスポインタの値15000が有音サブイベント
1のエンドポイント15000に一致しているので、無
音データが存在していたと判断される。そしてCPU1
は、図13のゲートアドレステーブルの有音サブイベン
ト1のブランク長に相当する2000個のゼロデータを
発生させる(5−7)。これは、CPU1がディスクの
所定のゼロデータ記憶領域から繰り返しゼロデータを読
み出すことによって行われる。次に、CPU1はディス
クアクセスポインタを、ゲートアドレステーブルの次の
テーブル要素である次の有音サブイベント2のスタート
ポイント15001に更新する(5−8)。ただし、デ
ータ転送可能数は、以前の値10000から今回転送し
たゼロデータの数を引いて(10000−2000=8
000)、新たな値8000とする。
【0058】次に、再びステップ5−3に戻って、ディ
スクアクセスポインタが属するゲートアドレステーブル
の現テーブル要素の、すなわち、有音イベント2の残り
データ数を算出する(この例では、15001から23
9000までなので224000)。次に、残りデータ
数224000とバッファ9−1へのデータ転送可能数
8000とを比較する(5−4)。
スクアクセスポインタが属するゲートアドレステーブル
の現テーブル要素の、すなわち、有音イベント2の残り
データ数を算出する(この例では、15001から23
9000までなので224000)。次に、残りデータ
数224000とバッファ9−1へのデータ転送可能数
8000とを比較する(5−4)。
【0059】今度の場合、残りデータ数がデータ転送可
能数より大きいので、5−4から5−9に進み、ディス
クアクセスポインタが各有音サブイベントのエンドポイ
ントに一致しているか調べる。この例では一致していな
いので、ディスクアクセスポインタが示すアドレスに無
音データが存在していなかったと判断して(5−9のN
O)、5−10に進み、ハードディスク12のアドレス
15001から8000個のデータが転送される。さら
に、5−12に進み、ディスクアクセスポインタが23
000に更新される。そしてメインルーチン(図4)に
リターンする。
能数より大きいので、5−4から5−9に進み、ディス
クアクセスポインタが各有音サブイベントのエンドポイ
ントに一致しているか調べる。この例では一致していな
いので、ディスクアクセスポインタが示すアドレスに無
音データが存在していなかったと判断して(5−9のN
O)、5−10に進み、ハードディスク12のアドレス
15001から8000個のデータが転送される。さら
に、5−12に進み、ディスクアクセスポインタが23
000に更新される。そしてメインルーチン(図4)に
リターンする。
【0060】後の説明でも明らかになるとおり、最初の
割込みルーチン(図5)が起動されて、HDコントロー
ラ11が一度動かされると、あとは、CPU1が指定し
たデータブロックの転送が終了するたびに、HDコント
ローラ11から割込みがなされる(INT信号がCPU
1に与えられる)ので、CPU1が行なうのは、録音/
再生動作の終了になったか、キー入力があったか、また
はコントロールデータに指示しておいたトリガがかかっ
たかの判断を行うのみである。
割込みルーチン(図5)が起動されて、HDコントロー
ラ11が一度動かされると、あとは、CPU1が指定し
たデータブロックの転送が終了するたびに、HDコント
ローラ11から割込みがなされる(INT信号がCPU
1に与えられる)ので、CPU1が行なうのは、録音/
再生動作の終了になったか、キー入力があったか、また
はコントロールデータに指示しておいたトリガがかかっ
たかの判断を行うのみである。
【0061】すなわちCPU1は、4−9において、デ
ィスクアクセスポインタ(RAM3)を参照し、メモリ
エリアオーバーか否か、つまり終了か否かをジャッジし
(4−13)、YESの場合は、各音声入出力装置8−
1〜8−3のA/D変換、D/A変換動作を停止(4−
11)させ、図3の3−1に戻る。NOの場合は、キー
入力状態を参照し(4−12)、もし変化がなければ、
ディスクアクセスポインタをチェックすべく4−9の処
理へもどり、以下4−9〜4−13をくりかえす。
ィスクアクセスポインタ(RAM3)を参照し、メモリ
エリアオーバーか否か、つまり終了か否かをジャッジし
(4−13)、YESの場合は、各音声入出力装置8−
1〜8−3のA/D変換、D/A変換動作を停止(4−
11)させ、図3の3−1に戻る。NOの場合は、キー
入力状態を参照し(4−12)、もし変化がなければ、
ディスクアクセスポインタをチェックすべく4−9の処
理へもどり、以下4−9〜4−13をくりかえす。
【0062】そして、4−13において何らかの変化が
あると、4−13から4−14に進み、CPU1は、D
MA転送を一時中断して、新たな設定をすべく、DMA
コントローラ10に対するDMA中止指令(DMAEN
D)を出力する。続けて、新たな入力指示等に従って、
DMAコントローラ10、音声入出力装置8−1〜8−
3をプログラムし(4−15)、再びDMA動作を再開
すべく4−16に進み、上述した4−8と同様に図5の
インタラプトルーチンを実行した後、4−9へもどる。
あると、4−13から4−14に進み、CPU1は、D
MA転送を一時中断して、新たな設定をすべく、DMA
コントローラ10に対するDMA中止指令(DMAEN
D)を出力する。続けて、新たな入力指示等に従って、
DMAコントローラ10、音声入出力装置8−1〜8−
3をプログラムし(4−15)、再びDMA動作を再開
すべく4−16に進み、上述した4−8と同様に図5の
インタラプトルーチンを実行した後、4−9へもどる。
【0063】このように、CPU1は、記録(プレイ)
/再生(レコード)時にあっては、4−4〜4−8の初
期設定を行なった後は、4−9、4−10、4−12、
4−13さらに4−14〜4−16をくりかえし実行し
、キーボード4での変更指示(例えば、あるトラックに
ついてポーズ(A/D、D/Aの中断)あるいはパンチ
イン/アウト(A/D、D/Aの動作の切換)等)や、
編集時に得たコントロールデータの変化に応答して、即
時にDMA転送制御を中断し、プログラムを変更した上
で、再び同様の処理を実行するように動作する。
/再生(レコード)時にあっては、4−4〜4−8の初
期設定を行なった後は、4−9、4−10、4−12、
4−13さらに4−14〜4−16をくりかえし実行し
、キーボード4での変更指示(例えば、あるトラックに
ついてポーズ(A/D、D/Aの中断)あるいはパンチ
イン/アウト(A/D、D/Aの動作の切換)等)や、
編集時に得たコントロールデータの変化に応答して、即
時にDMA転送制御を中断し、プログラムを変更した上
で、再び同様の処理を実行するように動作する。
【0064】図3の3−2において、CPU1が、現在
、コントロールトラック作成制御モードにあると判断す
ると、3−2から3−4に進み、イベントコントロール
トラックの作成を行う。このトラックの作成の前に、ハ
ードディスク12に記憶されている音声データをイベン
ト化する。イベント化とは、手動指定操作などによって
時間軸上に連続した音声データを複数に区切り、各区切
られた音声データ(イベント)を識別するためのイベン
ト番号、および区切られた区間を示すデータ(スタート
ポイントとエンドポイント)を作り出すことを意味する
。イベント番号、スタートポイントおよびエンドポイン
トは、RAM3のイベントアドレステーブル(EAT)
に登録される。スタートポイントおよびエンドポイント
は、当該イベントが記憶されるハードディスク12のス
タートアドレスおよびエンドアドレスに相当する。 イベントアドレステーブルの例は、図13に示されてい
る。
、コントロールトラック作成制御モードにあると判断す
ると、3−2から3−4に進み、イベントコントロール
トラックの作成を行う。このトラックの作成の前に、ハ
ードディスク12に記憶されている音声データをイベン
ト化する。イベント化とは、手動指定操作などによって
時間軸上に連続した音声データを複数に区切り、各区切
られた音声データ(イベント)を識別するためのイベン
ト番号、および区切られた区間を示すデータ(スタート
ポイントとエンドポイント)を作り出すことを意味する
。イベント番号、スタートポイントおよびエンドポイン
トは、RAM3のイベントアドレステーブル(EAT)
に登録される。スタートポイントおよびエンドポイント
は、当該イベントが記憶されるハードディスク12のス
タートアドレスおよびエンドアドレスに相当する。 イベントアドレステーブルの例は、図13に示されてい
る。
【0065】イベント化が完了すると、インディビジュ
アルコントロールトラック(ICT)が作成される。I
CTは、ハードディスク12上の各イベントの識別を示
すイベントアドレステーブル(EAT)に含まれるイベ
ントの識別情報(イベント番号)を各トラック毎にイベ
ントの再生順序に配列して成るものである。
アルコントロールトラック(ICT)が作成される。I
CTは、ハードディスク12上の各イベントの識別を示
すイベントアドレステーブル(EAT)に含まれるイベ
ントの識別情報(イベント番号)を各トラック毎にイベ
ントの再生順序に配列して成るものである。
【0066】次に、ICT作成処理の一例について説明
する。この処理では時間が既知であるものとする。まず
、CPU1は、時間軸および前イベントのエンドポイン
トEn−1を表示装置5に表示する。次に編集者(ユー
ザ)がキーボード4のキーを操作して、入力トラック、
入力イベントおよびスタートポイントを指定する。次に
、CPU1は、キー操作により指定されたスタートポイ
ントSnと、その前のイベントのエンドポイントEn−
1とを比較し、前者が後者より大きければ、スタートポ
イントの時間とイベント番号をインディビジュアルトラ
ックスケジュール(ITS)に書込み、EATからエン
ドポイントEnを計算する。次に、スタートポイントn
がその前のイベントのエンドポイントEn−1より小さ
いか、両者が等しければ、新たな入力トラック、入力イ
ベントおよびスタートポイントが指定されるのを待つ。 上述の処理は、編集者がキーボード4を介して終了指令
を入力するまで続けられ、ICTおよびITSが作成さ
れる。
する。この処理では時間が既知であるものとする。まず
、CPU1は、時間軸および前イベントのエンドポイン
トEn−1を表示装置5に表示する。次に編集者(ユー
ザ)がキーボード4のキーを操作して、入力トラック、
入力イベントおよびスタートポイントを指定する。次に
、CPU1は、キー操作により指定されたスタートポイ
ントSnと、その前のイベントのエンドポイントEn−
1とを比較し、前者が後者より大きければ、スタートポ
イントの時間とイベント番号をインディビジュアルトラ
ックスケジュール(ITS)に書込み、EATからエン
ドポイントEnを計算する。次に、スタートポイントn
がその前のイベントのエンドポイントEn−1より小さ
いか、両者が等しければ、新たな入力トラック、入力イ
ベントおよびスタートポイントが指定されるのを待つ。 上述の処理は、編集者がキーボード4を介して終了指令
を入力するまで続けられ、ICTおよびITSが作成さ
れる。
【0067】コントロールトラック作成制御モードの終
了が検出されると、CPU1は3−1において再びキー
入力を調べる。
了が検出されると、CPU1は3−1において再びキー
入力を調べる。
【0068】3−2において、CPU1が、現在、エデ
ィット(EDIT)モードにあると判断すると、3−2
から3−5に進み、編集するトラックやポイント、どの
ような編集をするのか(例えば、ある時間指定したポイ
ントに録音した音のタイミングを前後にずらしたり、修
正、削除したりすること)をCPU1は判断し、各種編
集作業を実行する。
ィット(EDIT)モードにあると判断すると、3−2
から3−5に進み、編集するトラックやポイント、どの
ような編集をするのか(例えば、ある時間指定したポイ
ントに録音した音のタイミングを前後にずらしたり、修
正、削除したりすること)をCPU1は判断し、各種編
集作業を実行する。
【0069】編集作業の中に、ディスク12に記憶され
た音声データ中の無音データを検出し、検出無音データ
を消去して、これに続く有音データ(有音サブイベント
)を詰めて記憶させる処理(ここでは、ゲート処理と称
する)、およびこの処理の中でのゲートアドレステーブ
ルの作成が含まれる。
た音声データ中の無音データを検出し、検出無音データ
を消去して、これに続く有音データ(有音サブイベント
)を詰めて記憶させる処理(ここでは、ゲート処理と称
する)、およびこの処理の中でのゲートアドレステーブ
ルの作成が含まれる。
【0070】図9は、ゲート処理およびゲートアドレス
テーブル作成の例を示すフローチャートである。ここで
は最初の録音によってディスク12に記憶されたイベン
トをテイクと称するものとする。9−1において、CP
U1がトラックを指定し、無音か否かを判定するための
スレッショルドTLを設定し、ゲート処理の実行命令を
発する。次にCPU1は、イベント番号mを1にセット
し、イベント1(テイク)のディスク12上のスタート
アドレスTSm(例えば0000000)を有音サブイ
ベント1のディスク12上のスタートアドレスGSmと
してセットする(9−2)。次に、CPU1は、有音サ
ブイベント番号mを1にセツトし、スレッショルドTL
以下の無音とみなされる部分の長さ、すなわちブランク
長Blを0にセットし、Blの累積値ABlを0にセッ
トする(9−3)。
テーブル作成の例を示すフローチャートである。ここで
は最初の録音によってディスク12に記憶されたイベン
トをテイクと称するものとする。9−1において、CP
U1がトラックを指定し、無音か否かを判定するための
スレッショルドTLを設定し、ゲート処理の実行命令を
発する。次にCPU1は、イベント番号mを1にセット
し、イベント1(テイク)のディスク12上のスタート
アドレスTSm(例えば0000000)を有音サブイ
ベント1のディスク12上のスタートアドレスGSmと
してセットする(9−2)。次に、CPU1は、有音サ
ブイベント番号mを1にセツトし、スレッショルドTL
以下の無音とみなされる部分の長さ、すなわちブランク
長Blを0にセットし、Blの累積値ABlを0にセッ
トする(9−3)。
【0071】次に、CPU1は、有音サブイベント1の
新しいスタートアドレスGTSnを GTSn=GSn−ABl なる演算を行って求め(9−5)、求めた値(例えば0
000000)をゲートアドレステーブルに書き込む(
9−5)。次にCPU1は、ディスク12上の参照ポイ
ントCPを次に移し(9−6)、参照ポイントCPから
所定数、例えば2400サンプル前までの音声データの
ピーク値LPとスレッショルドTLとを比較し(9−7
)、前者が大きいかまたは両者が等しければ、CPU1
は有音データが続いていると判断し、9−6および9−
7を繰り返す。LPよりTLが大きければ、CPU1は
無音データが生じたと判断し、その参照ポイントCPの
1つ前のアドレスを、有音サブイベント1のエンドアド
レスGEnとしてセットする(9−8)。そして、CP
U1は、 GTEn=GEn−ABl なる演算を行って、有音サブイベント1の新しいエンド
アドレスGTEnを求め(9−9)、求めた値(例えば
15000)をゲートアドレステーブルに書き込む(9
−10)。
新しいスタートアドレスGTSnを GTSn=GSn−ABl なる演算を行って求め(9−5)、求めた値(例えば0
000000)をゲートアドレステーブルに書き込む(
9−5)。次にCPU1は、ディスク12上の参照ポイ
ントCPを次に移し(9−6)、参照ポイントCPから
所定数、例えば2400サンプル前までの音声データの
ピーク値LPとスレッショルドTLとを比較し(9−7
)、前者が大きいかまたは両者が等しければ、CPU1
は有音データが続いていると判断し、9−6および9−
7を繰り返す。LPよりTLが大きければ、CPU1は
無音データが生じたと判断し、その参照ポイントCPの
1つ前のアドレスを、有音サブイベント1のエンドアド
レスGEnとしてセットする(9−8)。そして、CP
U1は、 GTEn=GEn−ABl なる演算を行って、有音サブイベント1の新しいエンド
アドレスGTEnを求め(9−9)、求めた値(例えば
15000)をゲートアドレステーブルに書き込む(9
−10)。
【0072】次に、CPU1は有音サブイベント1の旧
エンドアドレスGEnとイベント1(テイク)のディス
ク12のエンドアドレスTEmとを比較し(9−11)
、両者が等しければ、最初のイベント(テイク)のゲー
ト処理を終了し、イベント番号を1つ増加させ、次のイ
ベントのゲート処理を行う。
エンドアドレスGEnとイベント1(テイク)のディス
ク12のエンドアドレスTEmとを比較し(9−11)
、両者が等しければ、最初のイベント(テイク)のゲー
ト処理を終了し、イベント番号を1つ増加させ、次のイ
ベントのゲート処理を行う。
【0073】9−11において、GEnとTEmが等し
くなければ、CPU1はイベント1のゲート処理を続行
し、有音イベント番号nを1つ増加させて2にする(9
−12)。次に、CPU1はディスク12上の参照ポイ
ントCPを次に移し(9−13)、そのポイントのディ
スク12上の音声データのレベルLPPとスレッショル
ドTLとを比較する(9−14)。前者の方が小さいか
両者が等しいとCPU1は無音と判断し、ブランク長B
lを1つ増加させ(9−15)、音声データのレベルL
PPがスレッショルドTLより大きくなるまで9−13
,9−14および9−15の処理を繰り返す。
くなければ、CPU1はイベント1のゲート処理を続行
し、有音イベント番号nを1つ増加させて2にする(9
−12)。次に、CPU1はディスク12上の参照ポイ
ントCPを次に移し(9−13)、そのポイントのディ
スク12上の音声データのレベルLPPとスレッショル
ドTLとを比較する(9−14)。前者の方が小さいか
両者が等しいとCPU1は無音と判断し、ブランク長B
lを1つ増加させ(9−15)、音声データのレベルL
PPがスレッショルドTLより大きくなるまで9−13
,9−14および9−15の処理を繰り返す。
【0074】CPU1は9−14において、ディスク1
2上の参照ポイントの音声データのレベルLPPがスレ
ッショルドTLより大きくなったことを検出すると、次
の有音サブイベント2に到達したと判断し、ゲートアド
レステーブルの有音サブイベント1のブランク長の欄に
9−15で求めたBl(例えば2000)を書き込む(
9−16)(図13参照)。
2上の参照ポイントの音声データのレベルLPPがスレ
ッショルドTLより大きくなったことを検出すると、次
の有音サブイベント2に到達したと判断し、ゲートアド
レステーブルの有音サブイベント1のブランク長の欄に
9−15で求めたBl(例えば2000)を書き込む(
9−16)(図13参照)。
【0075】次にCPU1は、旧Bl累積値ABlにB
lを加算して、新Bl累積値ABlを求め(9−17)
、ブランク長Blを0にリセットし(9−18)、ディ
スク12上の現在の参照ポイントCP(例えば1700
1)を有音サブイベント2のスタートアドレスGSnと
してセットする(9−19)。
lを加算して、新Bl累積値ABlを求め(9−17)
、ブランク長Blを0にリセットし(9−18)、ディ
スク12上の現在の参照ポイントCP(例えば1700
1)を有音サブイベント2のスタートアドレスGSnと
してセットする(9−19)。
【0076】次にCPU1は、9−4に戻って先程求め
た有音サブイベント2のスタートアドレスGSn(例え
ば17001)からBl累積値ABl(例えば2000
)を減算し、有音サブイベント2の新スタートアドレス
GTSn(例えば15001)を求める。以下、同様に
9−5乃至9−16の処理を行って、有音サブイベント
2のエンドアドレス(例えば239000)およびその
後に続く無音部分の長さに等しいブランク長(例えば1
9087)を求め、9−17乃至9−19および9−4
の処理を行って、有音サブイベント3のスタートアドレ
スGTSn(例えば239001)を求める。
た有音サブイベント2のスタートアドレスGSn(例え
ば17001)からBl累積値ABl(例えば2000
)を減算し、有音サブイベント2の新スタートアドレス
GTSn(例えば15001)を求める。以下、同様に
9−5乃至9−16の処理を行って、有音サブイベント
2のエンドアドレス(例えば239000)およびその
後に続く無音部分の長さに等しいブランク長(例えば1
9087)を求め、9−17乃至9−19および9−4
の処理を行って、有音サブイベント3のスタートアドレ
スGTSn(例えば239001)を求める。
【0077】CPU1が9−4乃至9−19の処理を繰
り返し行って、イベント(テイク)1に含まれるすべて
の有音サブイベント(図13の例では、有音サブイベン
ト1乃至4)についてのゲートアドレステーブルの作成
が完了すると、イベント1のエンドアドレスTEmとゲ
ート処理前(有音サブイベントを詰めて記録する前)の
最後の有音サブイベント4のエンドアドレスGEnが等
しくなる(9−11のNO)。そうすると、CPU1は
ゲートアドレステーブルのイベント番号を1つ増加させ
(9−20)、次のイベントが存在するか調べる(9−
21)。次のイベントが存在すれば、CPU1はイベン
ト番号mを1つ増加させ(上記例では2にする)、有音
サブイベント番号nを1にセットし、ブランク長Blを
0にセットし(9−22)、次のイベントのスタートア
ドレスTSmを最初の有音サブイベントのスタートアド
レスGSnにセットし(9−23)、9−4乃至9−1
9の処理を再び行う。
り返し行って、イベント(テイク)1に含まれるすべて
の有音サブイベント(図13の例では、有音サブイベン
ト1乃至4)についてのゲートアドレステーブルの作成
が完了すると、イベント1のエンドアドレスTEmとゲ
ート処理前(有音サブイベントを詰めて記録する前)の
最後の有音サブイベント4のエンドアドレスGEnが等
しくなる(9−11のNO)。そうすると、CPU1は
ゲートアドレステーブルのイベント番号を1つ増加させ
(9−20)、次のイベントが存在するか調べる(9−
21)。次のイベントが存在すれば、CPU1はイベン
ト番号mを1つ増加させ(上記例では2にする)、有音
サブイベント番号nを1にセットし、ブランク長Blを
0にセットし(9−22)、次のイベントのスタートア
ドレスTSmを最初の有音サブイベントのスタートアド
レスGSnにセットし(9−23)、9−4乃至9−1
9の処理を再び行う。
【0078】次のイベントが存在しないとCPU1は、
出来上がったゲートアドレステーブルに従ってハードデ
ィスク12の内容を書き換える。すなわち、CPU1は
ディスク12の無音データを消去し、後続の有音データ
(有音サブイベント)を詰めて記録する(9−24)。 また、ゲートアドレステーブルに従ってイベントアドレ
ステーブルを修正する(9−25)。
出来上がったゲートアドレステーブルに従ってハードデ
ィスク12の内容を書き換える。すなわち、CPU1は
ディスク12の無音データを消去し、後続の有音データ
(有音サブイベント)を詰めて記録する(9−24)。 また、ゲートアドレステーブルに従ってイベントアドレ
ステーブルを修正する(9−25)。
【0079】上述のゲート処理を含む編集作業の終了が
検出されると、CPU1は3−1において再びキー入力
を調べる。
検出されると、CPU1は3−1において再びキー入力
を調べる。
【0080】<音声入出力装置8−1〜8−3の動作>
次に図6を参照して、音声入出力装置8−1〜8−3の
動作状態を説明する。このフローチャートは、マイクロ
プログラム制御によるものであっても、ハードロジック
制御によるものであってもよく、機能実現手段は種々選
択できる。
次に図6を参照して、音声入出力装置8−1〜8−3の
動作状態を説明する。このフローチャートは、マイクロ
プログラム制御によるものであっても、ハードロジック
制御によるものであってもよく、機能実現手段は種々選
択できる。
【0081】さて、6−1においてCPU1から当該音
声入出力装置の指定信号CSが到来している(アクティ
ブとなっている)か否かジャッジし、YESならば6−
2において、CPU1より動作状態(レコード、プレイ
、ストップ等)が設定される。これは図4のCPU1の
メインルーチンの中の4−5、4−15に応答してなさ
れる。
声入出力装置の指定信号CSが到来している(アクティ
ブとなっている)か否かジャッジし、YESならば6−
2において、CPU1より動作状態(レコード、プレイ
、ストップ等)が設定される。これは図4のCPU1の
メインルーチンの中の4−5、4−15に応答してなさ
れる。
【0082】そして、6−1においてNOの判断がなさ
れると6−3において、当該音声入出力装置8−1〜8
−3がレコード状態であるのかプレイ状態であるのか判
断し、レコード状態と判断されると、6−3から6−4
乃至6−9の処理へ進み、プレイ状態と判断されると6
−10乃至6−15の処理へ進む。
れると6−3において、当該音声入出力装置8−1〜8
−3がレコード状態であるのかプレイ状態であるのか判
断し、レコード状態と判断されると、6−3から6−4
乃至6−9の処理へ進み、プレイ状態と判断されると6
−10乃至6−15の処理へ進む。
【0083】先ずレコード状態に設定された音声入出力
装置(いまの場合、音声入出力装置8−2、8−3)の
動作を説明する。6−4において、サンプリング時刻と
なったか否か判断し、サンプリング時刻となるまで、こ
の6−4をくりかえす。なお、サンプリング時刻の判断
は、音声入出力装置8−1〜8−3内部に夫々ハードタ
イマーをもってその出力によって行ってもよく、あるい
は共通なハードタイマーを設けてその出力に従って各音
声入出力装置が動作するようにしてもよい。後の説明か
らも理解されるとおり、各音声入出力装置8−1〜8−
3のサンプリング周波数を別々にすることも可能である
。
装置(いまの場合、音声入出力装置8−2、8−3)の
動作を説明する。6−4において、サンプリング時刻と
なったか否か判断し、サンプリング時刻となるまで、こ
の6−4をくりかえす。なお、サンプリング時刻の判断
は、音声入出力装置8−1〜8−3内部に夫々ハードタ
イマーをもってその出力によって行ってもよく、あるい
は共通なハードタイマーを設けてその出力に従って各音
声入出力装置が動作するようにしてもよい。後の説明か
らも理解されるとおり、各音声入出力装置8−1〜8−
3のサンプリング周波数を別々にすることも可能である
。
【0084】さて、6−4において、YESの判断がな
されると、与えられるアナログ音声信号は、サンプルホ
ールド(S/H)され、A/D変換される。続いて、7
−6において、DMAコントローラ10に対してDMA
転送要求DRQをアクティブにして出力する。
されると、与えられるアナログ音声信号は、サンプルホ
ールド(S/H)され、A/D変換される。続いて、7
−6において、DMAコントローラ10に対してDMA
転送要求DRQをアクティブにして出力する。
【0085】DMAコントローラ10は、この要求信号
DRQを受けとり、DMA転送を行うべく、その回答信
号DAKを出力する(この場合の詳細動作は後述する)
。従って、音声入出力装置8−1〜8−3(いまの場合
レコード状態である音声入出力装置8−2又は8−3)
は、6−7の判断がYESとなると、6−8に進み、A
/D変換して得たデジタル音声データをデータバスに出
力し、対応するバッファ9−1〜9−3(いまの場合バ
ッファ9−2又は9−3)へ送る。そして、6−9にて
、DMA転送要求DRQをインアクティブにする。従っ
て、いまの場合、音声入出力装置8−2、8−3にあっ
ては、サンプリング周期毎に、外部から与えられるアナ
ログ音声信号をデジタル音声信号に変換し、後述するよ
うにDMAコントローラ10にて夫々指定されるバッフ
ァ9−2、9−3のカレントアドレスに転送する(図1
0参照)。
DRQを受けとり、DMA転送を行うべく、その回答信
号DAKを出力する(この場合の詳細動作は後述する)
。従って、音声入出力装置8−1〜8−3(いまの場合
レコード状態である音声入出力装置8−2又は8−3)
は、6−7の判断がYESとなると、6−8に進み、A
/D変換して得たデジタル音声データをデータバスに出
力し、対応するバッファ9−1〜9−3(いまの場合バ
ッファ9−2又は9−3)へ送る。そして、6−9にて
、DMA転送要求DRQをインアクティブにする。従っ
て、いまの場合、音声入出力装置8−2、8−3にあっ
ては、サンプリング周期毎に、外部から与えられるアナ
ログ音声信号をデジタル音声信号に変換し、後述するよ
うにDMAコントローラ10にて夫々指定されるバッフ
ァ9−2、9−3のカレントアドレスに転送する(図1
0参照)。
【0086】また、6−3においてプレイ状態と判断さ
れると、6−10に進み、DMAコントローラ10に対
しDMA転送要求DRQをアクティブにし、DMAコン
トローラ10から回答信号DAKの到来を待って(6−
11)、データバス上のデジタル音声データを取込み(
6−12)、上記要求DRQをインアクティブにする(
6−13)。このときのDMAコントローラ10の動作
は後述するが、いまの場合図10に示すとおり、Tr1
に対応するバッファ9−1のカレントアドレスの内容(
これはすでにハードディスク12のTr1のエリアの内
容が転送記録されている)が、以上の操作で音声入出力
装置8−1に入力設定されることになる。そして、サン
プリング時刻となったか否か判断する(6−14)。 このサンプリング時刻の到来の検出は、6−4において
述べたことと同じである。
れると、6−10に進み、DMAコントローラ10に対
しDMA転送要求DRQをアクティブにし、DMAコン
トローラ10から回答信号DAKの到来を待って(6−
11)、データバス上のデジタル音声データを取込み(
6−12)、上記要求DRQをインアクティブにする(
6−13)。このときのDMAコントローラ10の動作
は後述するが、いまの場合図10に示すとおり、Tr1
に対応するバッファ9−1のカレントアドレスの内容(
これはすでにハードディスク12のTr1のエリアの内
容が転送記録されている)が、以上の操作で音声入出力
装置8−1に入力設定されることになる。そして、サン
プリング時刻となったか否か判断する(6−14)。 このサンプリング時刻の到来の検出は、6−4において
述べたことと同じである。
【0087】そして、6−14でYESとなると6−1
5に進みD/A変換及びローパスフィルタリングを実行
した上でアナログ音声信号を外部に出力する。
5に進みD/A変換及びローパスフィルタリングを実行
した上でアナログ音声信号を外部に出力する。
【0088】以上レコード状態の場合と、プレイ状態の
場合との1つのサンプリング時刻における動作を説明し
たが、6−9、6−15の各処理の終了後6−1にもど
り以下同様にして次々とサンプリング時刻に対する処理
を実行する。
場合との1つのサンプリング時刻における動作を説明し
たが、6−9、6−15の各処理の終了後6−1にもど
り以下同様にして次々とサンプリング時刻に対する処理
を実行する。
【0089】図11は、音声入出力装置8−1〜8−3
の動作タイムチャートを示しており、いまの場合Tr1
の音声入出力装置8−1がプレイモードとなっていて、
サンプリング時刻tとサンプリング時刻t+1の間で、
サンプリング要求(DRQ)が発生し、DMAコントロ
ーラ10内のチャンネルCH1の制御によって、バッフ
ァ9−1から音声入出力装置8−1への方向のDMA転
送がなされ、サンプリング時刻t+1に同期して、D/
A変換動作がなされる。
の動作タイムチャートを示しており、いまの場合Tr1
の音声入出力装置8−1がプレイモードとなっていて、
サンプリング時刻tとサンプリング時刻t+1の間で、
サンプリング要求(DRQ)が発生し、DMAコントロ
ーラ10内のチャンネルCH1の制御によって、バッフ
ァ9−1から音声入出力装置8−1への方向のDMA転
送がなされ、サンプリング時刻t+1に同期して、D/
A変換動作がなされる。
【0090】一方、いまの場合Tr2、Tr3の音声入
出力装置8−2、8−3においては、レコードモードと
なっており、サンプリング時刻tあるいはt+1に同期
して、A/D変換が行われ、その後にDMAコントロー
ラ10に対してDMA転送命令が出力される。そしてD
MA転送が、Tr2、Tr3の順番で(同時にDMA要
求があった場合の優先順位が、CH1>CH2>CH3
>CH4となっている関係によるもの)実行され、音声
入出力装置8−2、8−3からバッファ9−2、9−3
へデータ転送がなされることになる。
出力装置8−2、8−3においては、レコードモードと
なっており、サンプリング時刻tあるいはt+1に同期
して、A/D変換が行われ、その後にDMAコントロー
ラ10に対してDMA転送命令が出力される。そしてD
MA転送が、Tr2、Tr3の順番で(同時にDMA要
求があった場合の優先順位が、CH1>CH2>CH3
>CH4となっている関係によるもの)実行され、音声
入出力装置8−2、8−3からバッファ9−2、9−3
へデータ転送がなされることになる。
【0091】<DMAコントローラ10の動作>次に、
図7を参照してDMAコントローラ10の動作を説明す
る。この図7のフローチャートは、図2のサービスコン
トローラ108がマイクロプログラム制御で動作するの
を表わしているとしてもよく、あるいは、ハードロジッ
クでDMAコントローラ10が機能実現をしているとし
てもよい。
図7を参照してDMAコントローラ10の動作を説明す
る。この図7のフローチャートは、図2のサービスコン
トローラ108がマイクロプログラム制御で動作するの
を表わしているとしてもよく、あるいは、ハードロジッ
クでDMAコントローラ10が機能実現をしているとし
てもよい。
【0092】先ず、7−1において、CPU1からの指
定信号CSが到来している(アクティブとなっている)
か否か判断し、YESならば、リード信号RD、ライト
信号WRのいずれがCPU1から与えられているか判断
し、リード信号RDならば7−3に進み、アドレスバス
を介して与えられるアドレス信号にて指定されるレジス
タ104、105の内容をデータバスを介して出力して
CPU1がリードできるようにし、逆にライト信号WR
ならば7−4に進み、指定したレジスタにデータバスを
介して所望のデータを入力設定することになる。この7
−3、7−4の処理は、CPU1のメインルーチンの4
−5、4−15などの処理に対応する。従って、7−4
の処理によって図2の各レジスタ104、105には所
望のデータがセットされることになる。
定信号CSが到来している(アクティブとなっている)
か否か判断し、YESならば、リード信号RD、ライト
信号WRのいずれがCPU1から与えられているか判断
し、リード信号RDならば7−3に進み、アドレスバス
を介して与えられるアドレス信号にて指定されるレジス
タ104、105の内容をデータバスを介して出力して
CPU1がリードできるようにし、逆にライト信号WR
ならば7−4に進み、指定したレジスタにデータバスを
介して所望のデータを入力設定することになる。この7
−3、7−4の処理は、CPU1のメインルーチンの4
−5、4−15などの処理に対応する。従って、7−4
の処理によって図2の各レジスタ104、105には所
望のデータがセットされることになる。
【0093】そして、このようなCPU1からのDMA
コントローラ10に対するアクセスやプログラムが終る
と指定信号CSはインアクティブとされ、7−1から7
−5に処理は進むことになる。
コントローラ10に対するアクセスやプログラムが終る
と指定信号CSはインアクティブとされ、7−1から7
−5に処理は進むことになる。
【0094】7−5では、各音声入出力装置8−1〜8
−3からDMA転送要求DRQ1〜DRQ3がきている
か、HDコントローラ11からDMA転送要求DREQ
(DRQ4)がきているか判断し、もし、いずれかから
要求が来ていると7−6に進み、DMA可能信号DMA
ENBを“1”に(アクティブ)にし、DMAユニット
内のアドレスバスとデータバスをDMAコントローラ1
0が専有するようにし、CPU1からのアクセスを受け
付けなくする。
−3からDMA転送要求DRQ1〜DRQ3がきている
か、HDコントローラ11からDMA転送要求DREQ
(DRQ4)がきているか判断し、もし、いずれかから
要求が来ていると7−6に進み、DMA可能信号DMA
ENBを“1”に(アクティブ)にし、DMAユニット
内のアドレスバスとデータバスをDMAコントローラ1
0が専有するようにし、CPU1からのアクセスを受け
付けなくする。
【0095】続いて、複数の要求に際しては、チャンネ
ルCH1〜CH4の順の優先順位に従って、チャンネル
を選択する(7−7)。例えば、図11の例ではサンプ
リング直後にTr2、Tr3の音声入出力装置8−2、
8−3からのデータ転送要求が同時になされるがTr2
の優先順位が高いので、先にCH2のDMA転送を行う
ことになる。また後の説明でも理解されるとおり、CH
4の優先順位が最下位なので、ハードディスク12とバ
ッファ9−1〜9−3のうちの1つとの間でデータ転送
を行っているときに、いずれかの音声入出力装置8−1
〜8−3からデータ転送の要求がなされると、後者のデ
ータ転送を先に優先的に行うようになる。続いて、選択
したチャンネル(いま、例えばCH2)のカレントアド
レス(アドレスレジスタ104のCH2のカレントアド
レスレジスタの内容)をアドレスバスに出力する(7−
8)。そして選択したチャンネル(いま、例えばCH2
)のコントロールレジスタ105の内容を参照し、DM
A転送をいずれの方向へ行うか決定し(7−9)、もし
バッファ9−1〜9−3から他の要素(I/O)への転
送なら7−10から7−11へ進んで、バッファ9−1
〜9−3のうちの選択しているバッファに対しリード信
号RDを与え、逆に他の要素(I/O)からバッファ9
−1〜9−3への転送ならば7−12に進み、当該バッ
ファに対してライト信号WRを与える。
ルCH1〜CH4の順の優先順位に従って、チャンネル
を選択する(7−7)。例えば、図11の例ではサンプ
リング直後にTr2、Tr3の音声入出力装置8−2、
8−3からのデータ転送要求が同時になされるがTr2
の優先順位が高いので、先にCH2のDMA転送を行う
ことになる。また後の説明でも理解されるとおり、CH
4の優先順位が最下位なので、ハードディスク12とバ
ッファ9−1〜9−3のうちの1つとの間でデータ転送
を行っているときに、いずれかの音声入出力装置8−1
〜8−3からデータ転送の要求がなされると、後者のデ
ータ転送を先に優先的に行うようになる。続いて、選択
したチャンネル(いま、例えばCH2)のカレントアド
レス(アドレスレジスタ104のCH2のカレントアド
レスレジスタの内容)をアドレスバスに出力する(7−
8)。そして選択したチャンネル(いま、例えばCH2
)のコントロールレジスタ105の内容を参照し、DM
A転送をいずれの方向へ行うか決定し(7−9)、もし
バッファ9−1〜9−3から他の要素(I/O)への転
送なら7−10から7−11へ進んで、バッファ9−1
〜9−3のうちの選択しているバッファに対しリード信
号RDを与え、逆に他の要素(I/O)からバッファ9
−1〜9−3への転送ならば7−12に進み、当該バッ
ファに対してライト信号WRを与える。
【0096】しかる後、回答信号DAKをアクティブに
する(7−13)。その結果、いまの場合、Tr2の音
声入出力装置8−2は、6−7、6−8(図6)の処理
によって、サンプリングした音声データをデータバスに
送出し、バッファ9−2のカレントアドレスのエリアに
、DMAコントローラ10が書込むことになる(図10
参照)。
する(7−13)。その結果、いまの場合、Tr2の音
声入出力装置8−2は、6−7、6−8(図6)の処理
によって、サンプリングした音声データをデータバスに
送出し、バッファ9−2のカレントアドレスのエリアに
、DMAコントローラ10が書込むことになる(図10
参照)。
【0097】7−14では、データ転送が終了したので
、上記リード信号RD又はライト信号WR、回答信号D
AKをインアクティブにし、7−15で当該チャンネル
(いまCH2)のカレントアドレス(図2のアドレスレ
ジスタ104内)の内容を+1する。この7−15の動
作により、バッファ9−1〜9−3に対して新たなサン
プリング音声データが書込まれる都度、あるいは新たに
音声データが読出される都度、アップカウントされるこ
とになる。そして、7−15の処理の後、7−1へもど
る。
、上記リード信号RD又はライト信号WR、回答信号D
AKをインアクティブにし、7−15で当該チャンネル
(いまCH2)のカレントアドレス(図2のアドレスレ
ジスタ104内)の内容を+1する。この7−15の動
作により、バッファ9−1〜9−3に対して新たなサン
プリング音声データが書込まれる都度、あるいは新たに
音声データが読出される都度、アップカウントされるこ
とになる。そして、7−15の処理の後、7−1へもど
る。
【0098】先程の状態(図11参照)では、Tr2と
Tr3との音声入出力装置8−2、8−3よりデータ転
送要求がDMAコントローラ10に対してなされており
、これまでにTr2についてのみデータ転送の実行をし
たのであるから続く7−5においてはYESの判断がな
される。以下Tr3に関して、音声入出力装置8−3か
らバッファ9−3への方向のデータ転送が、7−7乃至
7−10、7−12乃至7−15を実行することにより
上記した場合と同様にしてなされる。
Tr3との音声入出力装置8−2、8−3よりデータ転
送要求がDMAコントローラ10に対してなされており
、これまでにTr2についてのみデータ転送の実行をし
たのであるから続く7−5においてはYESの判断がな
される。以下Tr3に関して、音声入出力装置8−3か
らバッファ9−3への方向のデータ転送が、7−7乃至
7−10、7−12乃至7−15を実行することにより
上記した場合と同様にしてなされる。
【0099】このようなデータ転送が完了すると7−5
から7−16に進み、DMA可能信号を“0”(インア
クティブ)にして、DMAユニット内のデータバス、ア
ドレスバスをDMAコントローラ10が専有するのを中
止し、CPU1からのアクセスを受付けられるようにす
る。
から7−16に進み、DMA可能信号を“0”(インア
クティブ)にして、DMAユニット内のデータバス、ア
ドレスバスをDMAコントローラ10が専有するのを中
止し、CPU1からのアクセスを受付けられるようにす
る。
【0100】以上Tr2、Tr3に関し、音声入出力装
置8−2、8−3から夫々対応するバッファ9−2、9
−3へのデータ転送について説明したが、Tr1につい
ては、逆に、バッファ9−1から音声入出力装置8−1
へのデータ転送がDMAコントローラ10によってなさ
れる。
置8−2、8−3から夫々対応するバッファ9−2、9
−3へのデータ転送について説明したが、Tr1につい
ては、逆に、バッファ9−1から音声入出力装置8−1
へのデータ転送がDMAコントローラ10によってなさ
れる。
【0101】図11に示してあるとおり、サンプリング
時間tとt+1の中間で、Tr1に対応する音声入出力
装置8−1は、DMAコントローラ10に要求信号DR
Qを出力する(図6、6−10)。
時間tとt+1の中間で、Tr1に対応する音声入出力
装置8−1は、DMAコントローラ10に要求信号DR
Qを出力する(図6、6−10)。
【0102】これに応答し、DMAコントローラ10は
、上記した場合と同様に7−5〜7−7を実行し、7−
8において、バッファ9−1の読み出すべきアドレスを
示すアドレスデータをアドレスバスを介して与える。 7−9、7−10の実行により、7−11に進み、今回
はバッファ9−1に対し読み出し信号RDを与え、7−
13で回答信号DAKを“1”とする。
、上記した場合と同様に7−5〜7−7を実行し、7−
8において、バッファ9−1の読み出すべきアドレスを
示すアドレスデータをアドレスバスを介して与える。 7−9、7−10の実行により、7−11に進み、今回
はバッファ9−1に対し読み出し信号RDを与え、7−
13で回答信号DAKを“1”とする。
【0103】その結果、バッファ9−1の指定アドレス
のデジタル音声データは、データバスを介して、Tr1
の音声入出力装置8−1へ転送され取込まれることにな
る。しかる後、7−14、7−15の処理を経て7−1
へもどる。
のデジタル音声データは、データバスを介して、Tr1
の音声入出力装置8−1へ転送され取込まれることにな
る。しかる後、7−14、7−15の処理を経て7−1
へもどる。
【0104】また、DMAコントローラ10は、ハード
ディスク12とバッファ9−1〜9−3との間のデータ
転送も行う。この場合は、チャンネルCH4のアドレス
レジスタ104、コントロールレジスタ105が使用さ
れる。この動作は、CPU1のインタラプトルーチン(
図5)の実行によって、DMAコントローラ10に対す
る設定/制御動作、およびHDコントローラ11に対す
るプログラミング動作の後、実行される。
ディスク12とバッファ9−1〜9−3との間のデータ
転送も行う。この場合は、チャンネルCH4のアドレス
レジスタ104、コントロールレジスタ105が使用さ
れる。この動作は、CPU1のインタラプトルーチン(
図5)の実行によって、DMAコントローラ10に対す
る設定/制御動作、およびHDコントローラ11に対す
るプログラミング動作の後、実行される。
【0105】このDMAコントローラ10に対するCP
U1の設定/制御動作に対応して、DMAコントローラ
10は、7−3、7−4の処理を行なう。即ち、CPU
1は今回チャンネルCH4によってデータ転送するトラ
ックを決定し、そのトラックに対応するバッファのスタ
ートアドレス(つまり前回当該バッファとハードディス
ク12とのデータ転送を行ったブロックデータの次のア
ドレス)をCH4のスタートアドレスレジスタ(図2の
アドレスレジスタ104内)にセットし、このトラック
についての今回のデータ転送数をスタートアドレスとカ
レントアドレス(前回データ転送をハードディスク12
との間で行った後に歩進したアドレス)との差からCP
U1は得るとともに、このトラックについてのカレント
アドレスをスタートアドレスにコピーする。
U1の設定/制御動作に対応して、DMAコントローラ
10は、7−3、7−4の処理を行なう。即ち、CPU
1は今回チャンネルCH4によってデータ転送するトラ
ックを決定し、そのトラックに対応するバッファのスタ
ートアドレス(つまり前回当該バッファとハードディス
ク12とのデータ転送を行ったブロックデータの次のア
ドレス)をCH4のスタートアドレスレジスタ(図2の
アドレスレジスタ104内)にセットし、このトラック
についての今回のデータ転送数をスタートアドレスとカ
レントアドレス(前回データ転送をハードディスク12
との間で行った後に歩進したアドレス)との差からCP
U1は得るとともに、このトラックについてのカレント
アドレスをスタートアドレスにコピーする。
【0106】CPU1は、動作中のトラックに対応する
バッファ9−1〜9−3とハードディスク12との間の
データ転送を各トラック毎に順番に行うようになり、各
トラック毎に、前回のデータ転送(ブロック転送)に続
くデータ転送を行うようになる。図10の例では、例え
ばTr1については、ハードディスク12から、図示の
スタートアドレス(CH1)とカレントアドレス(CH
1)の間の空白部分に対応するデータ量の転送をこれか
ら行うようになる(他のトラックについてもデータ転送
の方向は逆であるが、同様の制御によることは明らかで
ある)。なお、プレイモードのバッファ(9−1が該当
)およびレコードモードのバッファ(9−2、9−3が
該当)では斜線部分が音声入力されたデータ部分に対応
する。
バッファ9−1〜9−3とハードディスク12との間の
データ転送を各トラック毎に順番に行うようになり、各
トラック毎に、前回のデータ転送(ブロック転送)に続
くデータ転送を行うようになる。図10の例では、例え
ばTr1については、ハードディスク12から、図示の
スタートアドレス(CH1)とカレントアドレス(CH
1)の間の空白部分に対応するデータ量の転送をこれか
ら行うようになる(他のトラックについてもデータ転送
の方向は逆であるが、同様の制御によることは明らかで
ある)。なお、プレイモードのバッファ(9−1が該当
)およびレコードモードのバッファ(9−2、9−3が
該当)では斜線部分が音声入力されたデータ部分に対応
する。
【0107】そして、CPU1は、HDコントローラ1
1に対しプログラミングを行った上で、実際の転送要求
をHDコントローラ11から発生させて、DMA転送を
開始させる。
1に対しプログラミングを行った上で、実際の転送要求
をHDコントローラ11から発生させて、DMA転送を
開始させる。
【0108】DMAコントローラ10では、7−5にお
いて、HDコントローラ11から転送要求があることを
検知すると、上記した場合と同様にして、7−6〜7−
9を実行した後、バッファ9−1〜9−3からハードデ
ィスク12方向へのデータ転送の要求か、ハードディス
ク12からバッファ9−1〜9−3方向へのデータ転送
の要求か7−10において判断し、前者ならば7−11
へ、後者ならば7−12へ進んだ後、7−13〜7−1
5の各処理を実行する。このとき、1回の転送操作で、
例えば1サンプル分のデジタル音声データの転送がなさ
れるので、この7−5〜7−15の動作を複数回くりか
えし実行して、ブロック転送がなされる。このハードデ
ィスク12とバッファ9−1〜9−3とのデータ転送に
ついては、HDコントローラ11の動作も大きく関連す
るので、後に更に説明する。
いて、HDコントローラ11から転送要求があることを
検知すると、上記した場合と同様にして、7−6〜7−
9を実行した後、バッファ9−1〜9−3からハードデ
ィスク12方向へのデータ転送の要求か、ハードディス
ク12からバッファ9−1〜9−3方向へのデータ転送
の要求か7−10において判断し、前者ならば7−11
へ、後者ならば7−12へ進んだ後、7−13〜7−1
5の各処理を実行する。このとき、1回の転送操作で、
例えば1サンプル分のデジタル音声データの転送がなさ
れるので、この7−5〜7−15の動作を複数回くりか
えし実行して、ブロック転送がなされる。このハードデ
ィスク12とバッファ9−1〜9−3とのデータ転送に
ついては、HDコントローラ11の動作も大きく関連す
るので、後に更に説明する。
【0109】そして、DMA転送が完了すると、要求信
号DRQ1〜4が到来しなくなり、7−5から7−16
へ進み、DMA可能信号DMAENBを“0”(インア
クティブ)とする。
号DRQ1〜4が到来しなくなり、7−5から7−16
へ進み、DMA可能信号DMAENBを“0”(インア
クティブ)とする。
【0110】<HDコントローラ11の動作>次に、図
8を参照してHDコントローラ11の動作を説明する。 このHDコントローラ11は、ハードロジックによって
も、マイクロプログラム制御によってもよく、いずれに
しても図8の動作フローの機能を実現する。
8を参照してHDコントローラ11の動作を説明する。 このHDコントローラ11は、ハードロジックによって
も、マイクロプログラム制御によってもよく、いずれに
しても図8の動作フローの機能を実現する。
【0111】まず、CPU1から指定信号CSが与えら
れているか判断する(8−1)。これは、CPU1のイ
ンタラプトルーチンにて与えられる。NOの場合はもと
にもどるが、YESの場合は、8−2に進みCPU1か
らリード信号RDが与えられているか、ライト信号WR
が与えられているか判断し、リード時にはHDコントロ
ーラ11内部の指定データ(アドレスレジスタの内容等
)をデータバスを介してCPU1へ出力する。
れているか判断する(8−1)。これは、CPU1のイ
ンタラプトルーチンにて与えられる。NOの場合はもと
にもどるが、YESの場合は、8−2に進みCPU1か
らリード信号RDが与えられているか、ライト信号WR
が与えられているか判断し、リード時にはHDコントロ
ーラ11内部の指定データ(アドレスレジスタの内容等
)をデータバスを介してCPU1へ出力する。
【0112】また、ライト信号WRが与えられていると
きは8−2から8−4に進み、今回DMAコントローラ
10のチャンネルCH4にてDMA転送するバッファと
ハードディスク12とのデータ転送方向を設定し、8−
5にて、アクセスするハードディスク12のアクセスポ
イントを設定する。これは、CPU1がRAM3から得
ている当該トラックのディスクアクセスポインタによる
。
きは8−2から8−4に進み、今回DMAコントローラ
10のチャンネルCH4にてDMA転送するバッファと
ハードディスク12とのデータ転送方向を設定し、8−
5にて、アクセスするハードディスク12のアクセスポ
イントを設定する。これは、CPU1がRAM3から得
ている当該トラックのディスクアクセスポインタによる
。
【0113】続いて8−6において、転送データ数(デ
ジタル音声データ数)をHDコントローラ11の内部カ
ウンタに設定する。この転送データ数は、図56のCP
U1のインタラプトルーチンによって得ている。
ジタル音声データ数)をHDコントローラ11の内部カ
ウンタに設定する。この転送データ数は、図56のCP
U1のインタラプトルーチンによって得ている。
【0114】このように、8−4〜8−6を実行するこ
とによってCPU1の制御のもとでHDコントローラ1
1はプログラムされ、その後HDコントローラ11はD
MAコントローラ10に対しデータ転送の要求をする(
8−7)。このことからも理解されるとおり、CPU1
は、HDコントローラ11からインタラプト信号INT
を受けると、次のトラックに対応する(つまり、いまT
r1〜Tr3は全て動作中とすると、Tr1、Tr2、
Tr3、Tr1……の順で)DMA転送の設定、制御を
DMAコントローラ10に対し実行し、HDコントロー
ラ11をプログラムする。その後、CPU1はHDコン
トローラ11とDMAコントローラ10とから離れて、
相互のインタラクションで実際のDMA転送を実行させ
る。
とによってCPU1の制御のもとでHDコントローラ1
1はプログラムされ、その後HDコントローラ11はD
MAコントローラ10に対しデータ転送の要求をする(
8−7)。このことからも理解されるとおり、CPU1
は、HDコントローラ11からインタラプト信号INT
を受けると、次のトラックに対応する(つまり、いまT
r1〜Tr3は全て動作中とすると、Tr1、Tr2、
Tr3、Tr1……の順で)DMA転送の設定、制御を
DMAコントローラ10に対し実行し、HDコントロー
ラ11をプログラムする。その後、CPU1はHDコン
トローラ11とDMAコントローラ10とから離れて、
相互のインタラクションで実際のDMA転送を実行させ
る。
【0115】HDコントローラ11は、8−7の次に8
−8へ進み、DMAコントローラ10から回答信号DA
CK(DAK4)を受けとる(図7、7−13参照)ま
で8−8をくりかえす。
−8へ進み、DMAコントローラ10から回答信号DA
CK(DAK4)を受けとる(図7、7−13参照)ま
で8−8をくりかえす。
【0116】8−8の判断がYESとなると、8−9に
進みDMAコントローラ10のCH4の動作によって、
1サンプルのデジタル音声データの転送が行われ、8−
6にて設定した転送カウンタを1だけダウンカウントす
る(8−10)。続く8−11において、予め設定して
おいた転送データ数分のデータ転送が完了したか上記転
送カウンタの内容に従ってジャッジし、NOならば再び
8−8へもどる。従って、DMAコントローラ10にお
いては、HDコントローラ11から設定したデータ数の
転送(ブロック転送)が終了するまで、転送要求DRQ
4を続けて受けとることになり、この転送要求に従って
7−5〜7−15の処理(図7)を実行し、それに応答
する形でHDコントローラ11側では8−8〜8−11
の処理を実行する。
進みDMAコントローラ10のCH4の動作によって、
1サンプルのデジタル音声データの転送が行われ、8−
6にて設定した転送カウンタを1だけダウンカウントす
る(8−10)。続く8−11において、予め設定して
おいた転送データ数分のデータ転送が完了したか上記転
送カウンタの内容に従ってジャッジし、NOならば再び
8−8へもどる。従って、DMAコントローラ10にお
いては、HDコントローラ11から設定したデータ数の
転送(ブロック転送)が終了するまで、転送要求DRQ
4を続けて受けとることになり、この転送要求に従って
7−5〜7−15の処理(図7)を実行し、それに応答
する形でHDコントローラ11側では8−8〜8−11
の処理を実行する。
【0117】そして、転送終了が8−11にて判断され
ると、8−12に進み、HDコントローラ11からDM
Aコントローラ10に対してのデータ転送の要求DRE
Q(DRQ4)を“0”(インアクティブ)とする。そ
して、次のトラックに関してハードディスク12とバッ
ファ9−1〜9−3のいずれかとのデータ転送を行わせ
るために、HDコントローラ11はCPU1へインタラ
プト信号INTを与える(8−13)。これに応答して
、CPU1はインタラプトルーチン(図5)を実行する
ことは上述したとおりである。
ると、8−12に進み、HDコントローラ11からDM
Aコントローラ10に対してのデータ転送の要求DRE
Q(DRQ4)を“0”(インアクティブ)とする。そ
して、次のトラックに関してハードディスク12とバッ
ファ9−1〜9−3のいずれかとのデータ転送を行わせ
るために、HDコントローラ11はCPU1へインタラ
プト信号INTを与える(8−13)。これに応答して
、CPU1はインタラプトルーチン(図5)を実行する
ことは上述したとおりである。
【0118】<ハードディスク12とバッファ9−1〜
9−3との間のデータ転送動作>以上までの説明で、ハ
ードディスク12とバッファ9−1〜9−3との間のデ
ータ転送についても理解されるところとなったが、図1
0と図12とを参照して、DMAコントローラ10に対
してDMA要求がなされ、それに対してDMAコントロ
ーラ10が時分割で対応している様子を以下に説明する
。
9−3との間のデータ転送動作>以上までの説明で、ハ
ードディスク12とバッファ9−1〜9−3との間のデ
ータ転送についても理解されるところとなったが、図1
0と図12とを参照して、DMAコントローラ10に対
してDMA要求がなされ、それに対してDMAコントロ
ーラ10が時分割で対応している様子を以下に説明する
。
【0119】既に述べたとおり、図10に示す設定状態
にあっては、Tr1についてはプレイ状態、Tr2、T
r3についてはレコード状態となっていて、夫々の音声
入出力装置8−1〜8−3から毎サンプリングタイム(
図12のfs)にバッファ9−1〜9−3とのデータ転
送要求がDMAコントローラ10になされる。
にあっては、Tr1についてはプレイ状態、Tr2、T
r3についてはレコード状態となっていて、夫々の音声
入出力装置8−1〜8−3から毎サンプリングタイム(
図12のfs)にバッファ9−1〜9−3とのデータ転
送要求がDMAコントローラ10になされる。
【0120】これは、CPU1がHDコントローラ11
をプログラミングしている間(図8の8−4〜8−7)
も生じる。DMAコントローラ10は、音声入出力装置
8−1〜8−3からのデータ転送要求があると、上述し
たようにDMA可能信号DMAENBを出力し(図7の
7−6)、CPU1によるHDコントローラ11のプロ
グラミングを中断(WAIT)して、各チャンネルCH
1〜CH3によるDMA転送の完了後に、それを再開さ
せる(図12参照)。
をプログラミングしている間(図8の8−4〜8−7)
も生じる。DMAコントローラ10は、音声入出力装置
8−1〜8−3からのデータ転送要求があると、上述し
たようにDMA可能信号DMAENBを出力し(図7の
7−6)、CPU1によるHDコントローラ11のプロ
グラミングを中断(WAIT)して、各チャンネルCH
1〜CH3によるDMA転送の完了後に、それを再開さ
せる(図12参照)。
【0121】また、CH4によるDMA転送により、ハ
ードディスク12とバッファ9−1〜9−3との間のデ
ータ転送が順次行われているときも、上記各音声入出力
装置8−1〜8−3から各サンプリングタイム毎(図1
2のfs)にデータ転送要求がなされる。
ードディスク12とバッファ9−1〜9−3との間のデ
ータ転送が順次行われているときも、上記各音声入出力
装置8−1〜8−3から各サンプリングタイム毎(図1
2のfs)にデータ転送要求がなされる。
【0122】このとき、DMAコントローラ10では、
図7の7−7の判断により優先度の高いチャンネル(C
H1〜CH3)のデータ転送を先に行うようになる。こ
の間は、DMAコントローラ10へHDコントローラ1
1からデータ転送要求DRQ4が出力され続けている(
図8、8−7参照)ものの、DMAコントローラ10か
ら回答信号DAK4がもどってこないので、次のデータ
転送を待機している(8−8をくりかえしている)こと
になる。
図7の7−7の判断により優先度の高いチャンネル(C
H1〜CH3)のデータ転送を先に行うようになる。こ
の間は、DMAコントローラ10へHDコントローラ1
1からデータ転送要求DRQ4が出力され続けている(
図8、8−7参照)ものの、DMAコントローラ10か
ら回答信号DAK4がもどってこないので、次のデータ
転送を待機している(8−8をくりかえしている)こと
になる。
【0123】従って、マクロ的には、DMAコントロー
ラ10は図12に示されたとおり、Tr1、Tr2、T
r3のハードディスク12とバッファ9−1〜9−3と
の間のDMA転送(ブロック転送)をくりかえすことに
なるが、ミクロ的には、HDコントローラ11に対する
プログラミング中も、実際のDMA転送中(CH4によ
る)も、あるいは休止(アイドル)中も、サンプリング
タイミング毎に、バッファ9−1〜9−3と音声入出力
装置8−1〜8−3との間のDMA転送(シングル転送
)を、CH1〜CH3の各チャンネルによって実行する
ことになり、サンプリングタイミング毎のA/D変換、
D/A変換に十分速度的にも対処できる。
ラ10は図12に示されたとおり、Tr1、Tr2、T
r3のハードディスク12とバッファ9−1〜9−3と
の間のDMA転送(ブロック転送)をくりかえすことに
なるが、ミクロ的には、HDコントローラ11に対する
プログラミング中も、実際のDMA転送中(CH4によ
る)も、あるいは休止(アイドル)中も、サンプリング
タイミング毎に、バッファ9−1〜9−3と音声入出力
装置8−1〜8−3との間のDMA転送(シングル転送
)を、CH1〜CH3の各チャンネルによって実行する
ことになり、サンプリングタイミング毎のA/D変換、
D/A変換に十分速度的にも対処できる。
【0124】上記実施例では、ディスク12の所定領域
にゼロデータを記憶しておき、これを繰り返して読み出
して無音データを発生させているが、他の記憶領域、例
えばRAM3等にゼロデータを記憶させてもよく、また
専用のゼロデータ発生手段を設けてもよい。
にゼロデータを記憶しておき、これを繰り返して読み出
して無音データを発生させているが、他の記憶領域、例
えばRAM3等にゼロデータを記憶させてもよく、また
専用のゼロデータ発生手段を設けてもよい。
【0125】
【発明の効果】請求項1に記載のデジタルレコーダによ
れば、音声データ記憶手段から無音データを消去して、
これに続く有音データを詰めて記憶させるようにしたの
で、音声データ記憶手段の記憶空間を有効に利用できる
。
れば、音声データ記憶手段から無音データを消去して、
これに続く有音データを詰めて記憶させるようにしたの
で、音声データ記憶手段の記憶空間を有効に利用できる
。
【0126】請求項2に記載のデジタルレコーダによれ
ば、有音データを詰めて記憶させた結果生じる有音デー
タの結合位置と、有音データ間に存在していた無音デー
タの長さとが記憶されるようにしたので、音声データ記
憶手段に無音データそのものを記憶しておかなくても無
音データを再生できる。
ば、有音データを詰めて記憶させた結果生じる有音デー
タの結合位置と、有音データ間に存在していた無音デー
タの長さとが記憶されるようにしたので、音声データ記
憶手段に無音データそのものを記憶しておかなくても無
音データを再生できる。
【図1】本発明のデジタルレコーダの一実施例の全体構
成を示すブロック図である。
成を示すブロック図である。
【図2】図1のDMAコントローラ10の要部の具体例
を示すブロック図である。
を示すブロック図である。
【図3】図1のCPU1のメインルーチンを示すフロー
チャートである。
チャートである。
【図4】図3のCPU1の記録再生ルーチンの詳細を示
すフローチャートである。
すフローチャートである。
【図5】図1のCPU1のインタラプトルーチンを示す
フローチャートである。
フローチャートである。
【図6】図1の音声入出力装置8−1乃至8−3の動作
を示すフローチャートである。
を示すフローチャートである。
【図7】図1のDMAコントローラ10の動作を示すフ
ローチャートである。
ローチャートである。
【図8】図1のHDコントローラ11の動作を示すフロ
ーチャートである。
ーチャートである。
【図9】図1のCPU1のゲート処理およびゲートアド
レステーブル作成動作を示すフローチャートである。
レステーブル作成動作を示すフローチャートである。
【図10】図1のデジタルレコーダの全体的動作を示す
フローチャートである。
フローチャートである。
【図11】図1のデジタルレコーダの各トラック毎のD
/AおよびA/D変換動作、ならびにDMA転送を示す
タイムチャートである。
/AおよびA/D変換動作、ならびにDMA転送を示す
タイムチャートである。
【図12】図1のハードディスク12とバッファ9−1
乃至9−3との間のDMA転送の状態を示すタイムチャ
ートである。
乃至9−3との間のDMA転送の状態を示すタイムチャ
ートである。
【図13】イベントアドレステーブル、ゲートアドレス
テーブルおよびゲート処理の相互関係を示す説明図であ
る。
テーブルおよびゲート処理の相互関係を示す説明図であ
る。
1 CPU
3 RAM
9−1,9−2,9−3 バッファ
10 DMAコントローラ
11 HDコントローラ
12 ハードディスク
Claims (2)
- 【請求項1】 音声データの入出力動作を行う音声入
出力手段と、前記音声入出力手段から供給されるデジタ
ル音声データを記憶する音声データ記憶手段と、前記音
声データ記憶手段に記憶された音声データのうち無音デ
ータを検出する無音検出手段と、前記無音検出手段によ
って検出された無音データを前記音声データ記憶手段か
ら消去するように、前記検出無音データに続く有音デー
タを詰めて記憶するために前記音声データ記憶手段を制
御する記憶制御手段とを具備するデジタルレコーダ。 - 【請求項2】 前記記憶制御手段によって前記有音デ
ータを詰めて記憶させた結果生じる前記有音データの結
合位置と、有音データの間に存在していた無音データの
長さとが記録されたゲートアドレステーブルを記憶する
手段と、前記有音データの結合位置の音声再生を行うと
きに、前記ゲートアドレステーブルに記録された前記無
音データの長さだけ無音データを発生させた無音発生手
段とを更に具備する請求項1記載のデジタルレコーダ。
Priority Applications (3)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP3074058A JPH04285765A (ja) | 1991-03-13 | 1991-03-13 | デジタルレコーダ |
| JP3159646A JP3055220B2 (ja) | 1991-03-13 | 1991-06-04 | デジタルレコーダ |
| US07/850,684 US5530898A (en) | 1991-03-13 | 1992-03-10 | Digital recorder for storing audio data on tracks with specific operation modes inputted manually where soundless portion data is inserted based on respective operation modes |
Applications Claiming Priority (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP3074058A JPH04285765A (ja) | 1991-03-13 | 1991-03-13 | デジタルレコーダ |
| JP3159646A JP3055220B2 (ja) | 1991-03-13 | 1991-06-04 | デジタルレコーダ |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| JPH04285765A true JPH04285765A (ja) | 1992-10-09 |
Family
ID=26415197
Family Applications (2)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP3074058A Pending JPH04285765A (ja) | 1991-03-13 | 1991-03-13 | デジタルレコーダ |
| JP3159646A Expired - Fee Related JP3055220B2 (ja) | 1991-03-13 | 1991-06-04 | デジタルレコーダ |
Family Applications After (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP3159646A Expired - Fee Related JP3055220B2 (ja) | 1991-03-13 | 1991-06-04 | デジタルレコーダ |
Country Status (2)
| Country | Link |
|---|---|
| US (1) | US5530898A (ja) |
| JP (2) | JPH04285765A (ja) |
Cited By (8)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPH0651776A (ja) * | 1992-03-10 | 1994-02-25 | Yamaha Corp | 楽音データ記録再生装置 |
| JPH06348273A (ja) * | 1993-06-10 | 1994-12-22 | Yamaha Corp | 記憶再生装置 |
| US7342164B2 (en) | 2005-07-29 | 2008-03-11 | Yamaha Corporation | Performance apparatus and tone generation method using the performance apparatus |
| US7371957B2 (en) | 2005-04-06 | 2008-05-13 | Yamaha Corporation | Performance apparatus and tone generation method therefor |
| US7394010B2 (en) | 2005-07-29 | 2008-07-01 | Yamaha Corporation | Performance apparatus and tone generation method therefor |
| US7536257B2 (en) | 2004-07-07 | 2009-05-19 | Yamaha Corporation | Performance apparatus and performance apparatus control program |
| US7709724B2 (en) | 2006-03-06 | 2010-05-04 | Yamaha Corporation | Performance apparatus and tone generation method |
| JP2019514009A (ja) * | 2016-04-13 | 2019-05-30 | ノヴァメド リミテッド | 1ステップ心臓検査デバイス |
Families Citing this family (6)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US5974015A (en) * | 1990-05-14 | 1999-10-26 | Casio Computer Co., Ltd. | Digital recorder |
| US5768607A (en) * | 1994-09-30 | 1998-06-16 | Intel Corporation | Method and apparatus for freehand annotation and drawings incorporating sound and for compressing and synchronizing sound |
| US5790427A (en) * | 1995-08-28 | 1998-08-04 | Westinghouse Air Brake Company | Event history data acquisition |
| AU3120299A (en) * | 1998-03-31 | 1999-10-18 | Gaston R. Cangiano | Digitized sound management tool for computer implemented multimedia applications |
| US7096187B1 (en) * | 2002-07-23 | 2006-08-22 | Harris Scott C | Compressed audio information |
| ATE553436T1 (de) * | 2007-02-28 | 2012-04-15 | Nec Corp | Dma-transfereinrichtung und verfahren |
Family Cites Families (12)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US4211997A (en) * | 1978-11-03 | 1980-07-08 | Ampex Corporation | Method and apparatus employing an improved format for recording and reproducing digital audio |
| US4375083A (en) * | 1980-01-31 | 1983-02-22 | Bell Telephone Laboratories, Incorporated | Signal sequence editing method and apparatus with automatic time fitting of edited segments |
| US4501614A (en) * | 1981-12-08 | 1985-02-26 | American Can Company | Flux in recovery of aluminum in reverberatory furnace and method of making |
| US4449190A (en) * | 1982-01-27 | 1984-05-15 | Bell Telephone Laboratories, Incorporated | Silence editing speech processor |
| US4772959A (en) * | 1986-04-02 | 1988-09-20 | Matsushita Electric Industrial Co., Ltd. | Digital signal recording and reproducing apparatus |
| US4750213A (en) * | 1986-06-09 | 1988-06-07 | Novak Albert P | Method and system for editing unwanted program material from broadcast signals |
| DE3855972T2 (de) * | 1987-01-16 | 1998-03-05 | Sharp Kk | Sprachaufzeichnungsgerät mit Komprimierung von Sprachpausen |
| US5166804A (en) * | 1987-07-04 | 1992-11-24 | Canon Kabushiki Kaisha | Reproduction apparatus designating audio and/or video signals to be reproduced |
| US5218640A (en) * | 1988-02-03 | 1993-06-08 | Sharp Kabushiki Kaisha | Voice recording and reproducing apparatus |
| US4991581A (en) * | 1988-03-04 | 1991-02-12 | Andries Tek R&D Limited Partnership | Acoustic processing apparatus |
| JPH02110658A (ja) * | 1988-10-19 | 1990-04-23 | Hitachi Ltd | 文書編集装置 |
| US4893197A (en) * | 1988-12-29 | 1990-01-09 | Dictaphone Corporation | Pause compression and reconstitution for recording/playback apparatus |
-
1991
- 1991-03-13 JP JP3074058A patent/JPH04285765A/ja active Pending
- 1991-06-04 JP JP3159646A patent/JP3055220B2/ja not_active Expired - Fee Related
-
1992
- 1992-03-10 US US07/850,684 patent/US5530898A/en not_active Expired - Lifetime
Cited By (9)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPH0651776A (ja) * | 1992-03-10 | 1994-02-25 | Yamaha Corp | 楽音データ記録再生装置 |
| JPH06348273A (ja) * | 1993-06-10 | 1994-12-22 | Yamaha Corp | 記憶再生装置 |
| US7536257B2 (en) | 2004-07-07 | 2009-05-19 | Yamaha Corporation | Performance apparatus and performance apparatus control program |
| US7371957B2 (en) | 2005-04-06 | 2008-05-13 | Yamaha Corporation | Performance apparatus and tone generation method therefor |
| US7342164B2 (en) | 2005-07-29 | 2008-03-11 | Yamaha Corporation | Performance apparatus and tone generation method using the performance apparatus |
| US7394010B2 (en) | 2005-07-29 | 2008-07-01 | Yamaha Corporation | Performance apparatus and tone generation method therefor |
| US7709724B2 (en) | 2006-03-06 | 2010-05-04 | Yamaha Corporation | Performance apparatus and tone generation method |
| US8008565B2 (en) | 2006-03-06 | 2011-08-30 | Yamaha Corporation | Performance apparatus and tone generation method |
| JP2019514009A (ja) * | 2016-04-13 | 2019-05-30 | ノヴァメド リミテッド | 1ステップ心臓検査デバイス |
Also Published As
| Publication number | Publication date |
|---|---|
| JP3055220B2 (ja) | 2000-06-26 |
| JPH04358384A (ja) | 1992-12-11 |
| US5530898A (en) | 1996-06-25 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| JP2979100B2 (ja) | デジタルレコーダ | |
| US5974015A (en) | Digital recorder | |
| JP3024327B2 (ja) | デジタルレコーダ | |
| US5581530A (en) | Digital recorder for processing of parallel data stored in multiple tracks and using cross-fade processing | |
| JP3055220B2 (ja) | デジタルレコーダ | |
| US6437228B2 (en) | Method and apparatus for storing audio data | |
| JP3252172B2 (ja) | デジタルレコーダ | |
| US5559779A (en) | Digital audio recorder using external memory medium and leading portion audio data memory | |
| JPH04232666A (ja) | デジタルレコーダ | |
| JP2916533B2 (ja) | デジタルマルチトラックレコーダ | |
| US5680378A (en) | Digital recorder for recording/reproducing events formed by dividing audio data in a designated order | |
| JP3230756B2 (ja) | デジタルレコーダ | |
| JPH04117688A (ja) | デジタルレコーダ | |
| JP3055221B2 (ja) | デジタルレコーダ | |
| JP3131849B2 (ja) | デジタルレコーダ | |
| JPH04232684A (ja) | デジタルレコーダ | |
| JPH04212767A (ja) | デジタルレコーダ | |
| JPH04369754A (ja) | デジタルレコーダ | |
| JP2979154B2 (ja) | デジタルレコーダ | |
| JP3298655B2 (ja) | デジタルレコーダ | |
| JP3114299B2 (ja) | デジタルレコーダ | |
| JP3055222B2 (ja) | デジタルレコーダ | |
| JP3028667B2 (ja) | デジタルレコーダ | |
| JP3045018B2 (ja) | 波形記録再生装置 | |
| JP4135002B2 (ja) | サンプルデータ再生装置およびサンプルデータ記録再生装置 |