JP3235557B2 - 波形再生装置、波形録音再生装置、波形出力回路、波形入出力回路、波形再生方法および波形録音再生方法 - Google Patents

波形再生装置、波形録音再生装置、波形出力回路、波形入出力回路、波形再生方法および波形録音再生方法

Info

Publication number
JP3235557B2
JP3235557B2 JP01354498A JP1354498A JP3235557B2 JP 3235557 B2 JP3235557 B2 JP 3235557B2 JP 01354498 A JP01354498 A JP 01354498A JP 1354498 A JP1354498 A JP 1354498A JP 3235557 B2 JP3235557 B2 JP 3235557B2
Authority
JP
Japan
Prior art keywords
transfer
waveform data
buffer memory
waveform
channel
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.)
Expired - Fee Related
Application number
JP01354498A
Other languages
English (en)
Other versions
JPH11202869A (ja
Inventor
時暖 安藤
隆司 鈴木
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.)
Yamaha Corp
Original Assignee
Yamaha 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 Yamaha Corp filed Critical Yamaha Corp
Priority to JP01354498A priority Critical patent/JP3235557B2/ja
Priority to US09/222,753 priority patent/US6366971B1/en
Publication of JPH11202869A publication Critical patent/JPH11202869A/ja
Priority to US09/948,157 priority patent/US6553436B2/en
Application granted granted Critical
Publication of JP3235557B2 publication Critical patent/JP3235557B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Landscapes

  • Electrophonic Musical Instruments (AREA)

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】この発明は、波形サンプルデ
ータからオーディオ信号を録音再生する波形再生装置、
波形録音再生装置、波形出力回路、波形入出力回路、波
形再生方法および波形録音再生方法に関する。
【0002】
【従来の技術】パーソナルコンピュータなどにおいて
は、アナログデジタル変換器(A/D変換器、AD
C)、デジタルアナログ変換器(D/A変換器、DA
C)等を備えた符号化復号化回路(CODEC)と該C
ODECを駆動するためのCODECドライバソフトウ
エアとを備えることにより、波形サンプルデータ(WA
VEデータ)のモノラルあるいはステレオの記録再生を
行なうことができるようになされている。従来のこのよ
うなCODECとCODECドライバによるWAVEデ
ータの再生方式においては、各サンプリング周期(DA
Cサイクル、例えば、44.1KHz)毎にバスを占有
して、1サンプルのWAVEデータをCODECに転送
することが行なわれている。また、録音を行うときにも
同様に、各サンプリング周期毎に1波形サンプルデータ
の転送が行われている。
【0003】
【発明が解決しようとする課題】上述した従来の波形サ
ンプルデータの録音再生方法においては、各サンプリン
グ周期毎にバスを使用して波形サンプルデータを転送し
ているため、バスの使用権の切り替えが頻繁に発生し、
システム全体の動作効率が低下する原因となっていた。
また、録音再生することのできるチャンネル数も、モノ
ラルまたはLとRがインターリーブされたステレオに限
られており、独立した複数チャンネル(複数トラック)
の録音再生を行うことができなかった。かりに、独立し
た2チャンネルの録音再生を行う場合には、2個の独立
したDMAチャンネルを必要としていた。
【0004】そこで、本発明は、波形サンプルデータを
録音再生する場合に、システムの動作効率を低下させる
ことなく波形サンプルデータを録音再生することのでき
る波形再生装置、波形録音再生装置、波形出力回路、波
形入出力回路、波形再生方法および波形録音再生方法を
提供することを目的としている。また、複数トラックを
独立して同時に録音再生することのできる波形再生装
置、波形録音再生装置、波形出力回路、波形入出力回
路、波形再生方法および波形録音再生方法を提供するこ
とを目的としている。
【0005】
【課題を解決するための手段】上記目的を達成するため
に、本発明の波形再生装置は、装置全体の制御を行なう
中央処理装置と、複数チャンネルの波形データを記憶す
るメモリと、前記複数チャンネルの各チャンネル毎に複
数サンプルの波形データを記憶するバッファメモリと、
サンプリング周期毎に複数チャンネルの波形データが入
力されるディジタルオーディオ回路と、バースト転送機
能を有するバスと、前記バスを介して、前記メモリに記
憶された波形データを所定の複数サンプルを単位として
前記バッファメモリにバースト転送する第1の転送回路
と、前記バッファメモリに記憶された複数チャンネルの
波形データを、各サンプリング周期毎に各チャンネルに
つき1サンプルずつ読み出して前記ディジタルオーディ
オ回路に転送する第2の転送回路とを有し、前記第1の
転送回路は、前記第2の転送回路による前記波形データ
の前記ディジタルオーディオ回路への転送が開始される
のに先立って、前記バスの使用権を獲得して該転送が開
始されるチャンネルの波形データの先頭部分の波形デー
タを前記所定の複数サンプルを単位として前記メモリか
ら前記バッファメモリにバースト転送し、前記第2の転
送回路による波形データの転送により前記バッファメモ
リに所定量の空きが生じたとき、前記バスの使用権を獲
得して前記バッファメモリへ転送済みの波形データに後
続する波形データを前記所定の複数サンプルを単位とし
て前記メモリから前記バッファメモリにバースト転送す
るようになされており、かつ、前記バッファメモリに前
記所定量の空きが生じたチャンネルが複数あるときに
は、1回の前記バスの使用権の獲得時に予め定められた
数以内の該複数のチャンネルについてまとめて前記バー
スト転送を行うようになされているものである。また、
本発明の他の波形再生装置は、装置全体の制御を行なう
中央処理装置と、複数チャンネルの波形データを記憶す
るメモリと、前記複数チャンネルの各チャンネル毎に複
数サンプルの波形データを記憶するバッファメモリであ
って、各サンプリング周期において第1の転送回路と第
2の転送回路により時分割でアクセスされるバッファメ
モリと、サンプリング周期毎に複数チャンネルの波形デ
ータが入力されるディジタルオーディオ回路と、バース
ト転送機能を有するバスと、前記バスを介して、前記メ
モリに記憶された波形データを第1の所定数の複数サン
プルを単位として前記バッファメモリにバースト転送す
る第1の転送回路と、前記バッファメモリに記憶された
複数チャンネルの波形データを、各サンプリング周期毎
に各チャンネルにつき1サンプルずつ読み出して前記デ
ィジタルオーディオ回路に転送する第2の転送回路とを
有し、前記第1の転送回路は、前記第2の転送回路によ
る前記波形データの前記ディジタルオーディオ回路への
転送が開始されるのに先立って、該転送が開始されるチ
ャンネルの波形データの先頭部分の波形データを前記第
1の所定数の複数サンプル単位で前記メモリから前記バ
ッファメモリにバースト転送し、前記第2の転送回路に
よる波形データの転送により前記バッファメモリに複数
回の前記バースト転送を必要とする第2の所定数サンプ
ル分の空きが生じたとき、前記バッファメモリへ転送済
みの波形データに後続する波形データを、前記第1の所
定数の複数サンプル単位で前記メモリから前記バッファ
メモリに繰り返しバースト転送を行い、その結果、前記
バッファメモリの空きが前記第1の所定数未満となった
とき、そのバースト転送を停止するようになされている
ものである。
【0006】さらに、本発明のさらに他の波形再生装置
は、装置全体の制御を行なう中央処理装置と、複数チャ
ンネルの波形データを記憶するメモリと、前記複数チャ
ンネルの各チャンネル毎に複数サンプルの波形データを
記憶するバッファメモリと、サンプリング周期毎に複数
チャンネルの波形データが入力されるディジタルオーデ
ィオ回路と、バースト転送機能を有するバスと、前記バ
スを介して、前記メモリに記憶された波形データを所定
の複数サンプルを単位として前記バッファメモリにバー
スト転送する第1の転送回路と、前記バッファメモリに
記憶された複数チャンネルの波形データを、各サンプリ
ング周期毎に各チャンネルにつき1サンプルずつ読み出
して前記ディジタルオーディオ回路に転送する第2の転
送回路とを有し、前記第1の転送回路は、前記第2の転
送回路による前記波形データの前記ディジタルオーディ
オ回路への転送が開始されるのに先立って、該転送が開
始されるチャンネルの波形データの先頭部分の波形デー
タを前記複数サンプル単位で前記メモリから前記バッフ
ァメモリにバースト転送し、前記第2の転送回路による
波形データの転送により前記バッファメモリに所定量の
空きが生じたとき、前記バッファメモリへ転送済みの波
形データに後続する波形データを前記複数サンプル単位
で前記メモリから前記バッファメモリにバースト転送す
るようになされており、かつ、前記バッファメモリに所
定量の空きが生じたチャンネルが複数ある場合には、前
記バッファメモリの空き量の大きいチャンネルについて
優先的に前記後続する波形データのバースト転送を行う
ようになされているものである。さらにまた、本発明の
波形録音再生装置は、装置全体の制御を行なう中央処理
装置と、複数の再生チャンネルの波形データを記憶する
とともに、複数の録音チャンネルの波形データが記憶さ
れるメモリと、前記複数の再生チャンネルと前記複数の
録音チャンネルの各チャンネル毎に複数サンプルの波形
データを記憶するバッファメモリであって、各サンプリ
ング周期において第1の転送回路と第2の転送回路によ
り時分割でアクセスされるバッファメモリと、サンプリ
ング周期毎に、前記録音チャンネルの波形データが出力
されるととともに前記再生チャンネルの波形データが入
力されるディジタルオーディオ回路と、バースト転送機
能を有するバスと、各サンプリング周期において、前記
バスを介して前記バッファメモリに記憶された前記録音
チャンネルの波形データを前記メモリに複数サンプル単
位でバースト転送する動作と、前記バスを介して前記メ
モリから前記バッファメモリに前記再生チャンネルの波
形データを複数サンプル単位でバースト転送する動作を
時分割で行なう第1の転送回路と、各サンプリング周期
において、前記ディジタルオーディオ回路から各録音チ
ャンネルにつき1サンプルずつ出力される波形データを
前記バッファメモリに書き込む動作と、前記バッファメ
モリに記憶された前記再生チャンネルの波形データを各
チャンネルにつき1サンプルずつ前記ディジタルオーデ
ィオ回路に転送する動作を時分割で行なう第2の転送回
路とを有するものである。
【0007】さらにまた、本発明の波形出力回路は、バ
ースト転送機能を有するバスに接続される波形出力回路
であって、複数チャンネルの各チャンネル毎に複数サン
プルの波形データを記憶するバッファメモリと、前記バ
スを介して、複数チャンネルの波形データを記憶するメ
モリから1ないし複数チャンネルの波形データを所定の
複数サンプルを単位として前記バッファメモリにバース
ト転送する第1の転送回路と、サンプリング周期毎に複
数チャンネルの波形データが入力されるディジタルオー
ディオ回路と、前記バッファメモリに記憶された複数チ
ャンネルの波形データを、各サンプリング周期毎に各チ
ャンネルにつき1サンプルずつ読み出して前記ディジタ
ルオーディオ回路に転送する第2の転送回路とを有し、
前記第1の転送回路は、前記第2の転送回路による前記
波形データの前記ディジタルオーディオ回路への転送が
開始されるのに先立って、前記バスの使用権を獲得して
該転送が開始されるチャンネルの波形データの先頭部分
の波形データを前記所定の複数サンプルを単位として前
記メモリから前記バッファメモリにバースト転送し、前
記第2の転送回路による波形データの転送により前記バ
ッファメモリに所定量の空きが生じたとき、前記バスの
使用権を獲得して前記バッファメモリへ転送済みの波形
データに後続する波形データを前記所定の複数サンプル
を単位として前記メモリから前記バッファメモリにバー
スト転送するようになされており、かつ、前記バッファ
メモリに前記所定量の空きが生じたチャンネルが複数あ
るときには、1回の前記バスの使用権の獲得時に予め定
められた数以内の該複数のチャンネルについてまとめて
前記バースト転送を行うようになされているものであ
る。さらにまた、本発明の他の波形出力回路は、バース
ト転送機能を有するバスに接続される波形出力回路であ
って、複数チャンネルの各チャンネル毎に複数サンプル
の波形データを記憶するバッファメモリであって、各サ
ンプリング周期において第1の転送回路と第2の転送回
路により時分割でアクセスされるバッファメモリと、前
記バスを介して、複数チャンネルの波形データを記憶す
るメモリから1ないし複数チャンネルの波形データを第
1の所定数の複数サンプルを単位として前記バッファメ
モリにバースト転送する第1の転送回路と、サンプリン
グ周期毎に複数チャンネルの波形データが入力されるデ
ィジタルオーディオ回路と、前記バッファメモリに記憶
された複数チャンネルの波形データを、各サンプリング
周期毎に各チャンネルにつき1サンプルずつ読み出して
前記ディジタルオーディオ回路に転送する第2の転送回
路とを有し、前記第1の転送回路は、前記第2の転送回
路による前記波形データの前記ディジタルオーディオ回
路への転送が開始されるのに先立って、該転送が開始さ
れるチャンネルの波形データの先頭部分の波形データを
前記第1の所定数の複数サンプル単位で前記メモリから
前記バッファメモリにバースト転送し、前記第2の転送
回路による波形データの転送により前記バッファメモリ
複数回の前記バースト転送を必要とする第2の所定数
サンプル分の空きが生じたとき、前記バッファメモリへ
転送済みの波形データに後続する波形データを、前記第
1の所定数の複数サンプル単位で前記メモリから前記バ
ッファメモリに繰り返しバースト転送し、その結果、前
記バッファメモリの空きが前記第1の所定数未満となっ
たとき、そのバースト転送を停止するようになされてい
るものである。
【0008】さらにまた、本発明の波形入出力回路は、
バースト転送機能を有するバスに接続される波形入出力
回路であって、複数の録音チャンネルと複数の再生チャ
ンネルの各チャンネル毎に複数サンプルの波形データを
記憶するバッファメモリであって、各サンプリング周期
において第1の転送回路と第2の転送回路により時分割
でアクセスされるバッファメモリと、サンプリング周期
毎に、前記録音チャンネルの波形データが出力されると
ともに前記再生チャンネルの波形データが入力されるデ
ィジタルオーディオ回路と、各サンプリング周期におい
て、前記バスを介して前記バッファメモリに記憶された
前記録音チャンネルの波形データをメモリに複数サンプ
ル単位でバースト転送する動作と、前記バスを介してメ
モリから前記バッファメモリに前記再生チャンネルの波
形データを複数サンプル単位でバースト転送する動作を
時分割で行なう第1の転送回路と、各サンプリング周期
において、前記ディジタルオーディオ回路から各録音チ
ャンネルにつき1サンプルずつ出力される波形データを
前記バッファメモリに書き込む動作と、前記バッファメ
モリに記憶された前記再生チャンネルの波形データを各
チャンネルにつき1サンプルずつ読み出して前記ディジ
タルオーディオ回路に転送する動作を時分割で行なう第
2の転送回路とを有するものである。さらにまた、本発
明の波形再生方法は、バースト転送機能を有するバスを
利用した波形再生方法であって、メモリに複数チャンネ
ルの波形データを記憶する記憶ステップと、前記バスを
介して、前記メモリに記憶された波形データを、バッフ
ァメモリの各チャンネル毎に設けられ前記メモリに記憶
されている各チャンネルの波形データの一部のデータを
記憶可能な記憶領域に所定の複数サンプルを単位として
バースト転送する第1の転送ステップと、前記バッファ
メモリに記憶された複数チャンネルの波形データを、各
サンプリング周期毎に各チャンネルにつき1サンプルず
つ読み出してディジタルオーディオ回路に転送する第2
の転送ステップとを有し、前記第1の転送ステップは、
前記第2の転送ステップによる前記波形データの前記デ
ィジタルオーディオ回路への転送が開始されるのに先立
って、前記バスの使用権を獲得して該転送が開始される
チャンネルの波形データの先頭部分の波形データを前記
所定の複数サンプルを単位として前記メモリから前記バ
ッファメモリにバースト転送し、前記第2の転送ステッ
プによる波形データの転送により前記バッファメモリに
所定量の空きが生じたとき、前記バスの使用権を獲得し
て前記バッファメモリへ転送済みの波形データに後続す
る波形データを前記所定の複数サンプルを単位として前
記メモリから前記バッファメモリにバースト転送するよ
うになされており、かつ、前記バッファメモリに前記所
定量の空きが生じたチャンネルが複数あるときには、1
回の前記バスの使用権の獲得時に予め定められた数以内
の該複数のチャンネルについてまとめて前記バースト転
送を行うようになされているものである。
【0009】さらにまた、本発明の他の波形再生方法
は、バースト転送機能を有するバスを利用した波形再生
方法であって、メモリに複数チャンネルの波形データを
記憶する記憶ステップと、前記バスを介して、前記メモ
リに記憶された波形データを、バッファメモリの各チャ
ンネル毎に設けられ前記メモリに記憶されている各チャ
ンネルの波形データの一部のデータを記憶可能な記憶領
域に第1の所定数の複数サンプルを単位としてバースト
転送する第1の転送ステップと、前記バッファメモリに
記憶された複数チャンネルの波形データを、各サンプリ
ング周期毎に各チャンネルにつき1サンプルずつ読み出
してディジタルオーディオ回路に転送する第2の転送ス
テップとを有し、前記第1の転送ステップは、前記第2
の転送ステップによる前記波形データの前記ディジタル
オーディオ回路への転送が開始されるのに先立って、該
転送が開始されるチャンネルの波形データの先頭部分の
波形データを前記第1の所定数の複数サンプル単位で前
記メモリから前記バッファメモリにバースト転送し、前
記第2の転送ステップによる波形データの転送により前
記バッファメモリに複数回の前記バースト転送を必要と
する第2の所定数サンプル分の空きが生じたとき、前記
バッファメモリへ転送済みの波形データに後続する波形
データを前記第1の所定数の複数サンプル単位で前記メ
モリから前記バッファメモリに繰り返しバースト転送
し、その結果、前記バッファメモリの空きが前記第1の
所定数未満となったとき、そのバースト転送を停止する
ものであり、前記第1の転送ステップと前記第2の転送
ステップは、各サンプリング周期において時分割で実行
されるようになされているものである。さらにまた、本
発明の波形録音再生方法は、バースト転送機能を有する
バスを利用した波形録音再生方法であって、メモリに複
数の再生チャンネルの波形データを記憶する記憶ステッ
プと、前記バスを介して、前記メモリに記憶された再生
チャンネルの波形データを、バッファメモリの前記再生
チャンネルの各チャンネル毎に設けられ前記メモリに記
憶されている各再生チャンネルの波形データの一部のデ
ータを記憶可能な記憶領域に複数サンプル単位でバース
ト転送する第1の転送ステップと、前記バッファメモリ
に記憶された再生チャンネルの波形データを、各サンプ
リング周期毎に各チャンネルにつき1サンプルずつ読み
出してディジタルオーディオ回路に転送する第2の転送
ステップと、各サンプリング周期毎に複数の録音チャン
ネルの各チャンネル毎に1サンプルずつ前記ディジタル
オーディオ回路から出力される波形データを前記バッフ
ァメモリの前記録音チャンネルの各チャンネル毎に設け
られた記憶領域に転送する第3の転送ステップと、前記
バスを介して、前記第3の転送ステップにより前記バッ
ファメモリに記憶された前記各録音チャンネルの波形デ
ータをメモリに複数サンプル単位でバースト転送する第
4の転送ステップとを有し、前記第1ないし第4の転送
ステップは、各サンプリング周期において時分割で実行
されるようになされているものである。
【0010】
【発明の実施の形態】図1は、本発明の波形再生方法が
適用された波形再生装置の一実施の形態である波形録音
再生装置の全体構成を示すブロック図である。この図に
おいて、10はこの波形再生装置全体の制御を行うため
の中央処理装置(CPU)、11は各種のプログラムや
定数データなどを記憶するROM、12は実行するプロ
グラムやデータが読み込まれるとともに各種バッファ領
域やワークエリアとして使用される第1のランダムアク
セスメモリ(RAM)、13は各種の情報を表示する表
示装置、14は該表示装置13をローカルバス18に接
続するためのインターフェース回路、15はユーザから
の各種の指示などを入力するためのキーボード、16は
該キーボード15をローカルバス18に接続するための
インターフェース回路、17は時間を計測したりCPU
10に対してタイマ割込をかけるタイマである。これら
CPU10、ROM11、第1のRAM12、インター
フェース回路14、15およびタイマ17は、ローカル
バス18に接続されている。
【0011】ここで、前記第1のRAM12上には、複
数チャンネルの波形サンプルデータが記憶されるバッフ
ァ領域(PCバッファ)が確保される。このPCバッフ
ァは、前記CPUのメモリアドレス空間上の任意の位置
に任意の大きさで設定することができる。なお、前記波
形サンプルデータは、1ワードが32ビットあるいは1
6ビット等いずれのタイプのデータであってもよいが、
ここでは、1ワードが16ビットの波形サンプルデータ
であるものとして説明する。
【0012】20はPCI(Peripheral Component Int
erconnect)バスであり、19は前記ローカルバス18
とPCIバス20とを接続するためのHOST−PCI
ブリッジ回路である。なお、PCIバスは64ビットに
拡張することができるが、ここでは32ビットのデータ
バス幅をもつものする。PCIバス20は、1つの32
ビットのデータバスをアドレス用およびデータ用に時分
割で使用する。例えばデータ転送時には、まず、アドレ
スを該データバスに送出して転送先を指定し、次に同バ
スを使用してデータ転送を実行する。
【0013】21は第2のランダムアクセスメモリ(R
AM)、22は該第2のRAM21を前記PCIバス2
0に接続するためのインターフェース回路である。ま
た、23は各種の波形サンプルデータやプログラムなど
が格納されるハードディスク装置、24は各種の波形サ
ンプルデータやプログラムなどを記録したCD−ROM
を駆動するCD−ROM装置、25はハードディスク装
置23やCD−ROM装置24などの外部記憶装置を接
続するためのSCSI(small computer systeminterfa
ce)インターフェース回路である。さらに、27はネッ
トワークインターフェース回路であり、電話回線や専用
線等を介して外部のネットワーク26と接続するための
回路である。なお、この図には示されていないが、MI
DI信号を入出力するためのMIDIインターフェース
等を設けても良い。
【0014】30は、前記第1のRAM12中のPCバ
ッファに記憶されている波形サンプルデータを読み出
し、該読み出された波形サンプルデータに対して必要に
応じてエフェクト付与などの加工を施してサウンドシス
テム29に出力し、また、オーディオ入力端子からマイ
クロフォン28等を介して入力されるオーディオ信号を
波形サンプルデータに変換して、前記第1のRAM12
中のPCバッファに格納する波形入出力回路(サウンド
入出力ボード)であり、28は前記サウンド入出力ボー
ド30に設けられたサウンド入力端子に接続されたマイ
クロフォン、29は前記サウンド入出力ボード30から
出力されるオーディオ信号を増幅して放音するサウンド
システムである。なお、このサウンド入出力ボード30
の内部構成については後述する。
【0015】図示するように、前記PCIバス20に
は、前記HOST−PCIブリッジ回路19、インター
フェース回路22、ネットワークインターフェース回路
27、SCSIインターフェース回路25およびサウン
ド入出力ボード30が接続されている。ここで、前記H
OST−PCIブリッジ回路19、ネットワークインタ
ーフェース回路27、SCSIインターフェース回路2
5およびサウンド入出力ボード30は、いずれもバス・
マスターとなることができ、例えば前記HOST−PC
Iブリッジ回路19に設けられているバスアービターに
対してバス使用要求を出して、バス使用権を獲得した後
にPCIバス20を使用して当該データ転送を実行する
ことができる。
【0016】なお、バス構成は、前記図1に示した例に
限られることはない。例えば、図1におけるローカルバ
スを、CPU専用のバスと周辺I/O等を接続するため
のローカルPCIバスの2つのバスにより構成するな
ど、様々なバス構成とすることが出来る。また、図1に
おいては、前記ハードディスク装置23およびCD−R
OM装置24はPCIバス20に接続されているものと
したが、前記ローカルバス18にSCSIインターフェ
ース回路を接続し、これにハードディスク装置やCD−
ROM装置あるいはDVD装置などの外部記憶装置を接
続するようにしても良い。
【0017】次に、前記サウンド入出力ボード30の内
部構成について説明する。図2は、前記サウンド入出力
ボード30の一構成例を示すブロック図である。この図
において、31は前記PCIバス20に接続された第1
の転送回路、32はバッファメモリとして使用される第
3のランダムアクセスメモリ(RAM3)であり、この
第3のRAM32には再生バッファ(Pバッファ:Play
Buffer)と録音バッファ(Rバッファ:Record Buffe
r)の2種類のバッファが設けられており、1チャンネ
ル当たり例えば1Kワード(=1024ワード)の容量
となされている。この例においては、再生16チャンネ
ル、録音4チャンネルの合計20チャンネルとされてお
り、各チャンネル毎に1Kワードの波形サンプルデータ
を格納することができるようになされている。また、3
3は前記PバッファおよびRバッファとミキサ34との
間のデータ転送を実行する第2の転送回路である。後述
するように、RAM32へのアクセスはサンプリング周
期(DACサイクル)の2分の1の期間を単位として時
分割多重化されており、各DACサイクルの前半を第2
の転送回路33が、また、後半を第1の転送回路31が
それぞれ使用してアクセスを行っている。
【0018】34はミキサ、35は信号処理プロセッサ
(DSP:Digital Signal Processor)、36はA/D
変換器、37はD/A変換器である。ミキサ34は例え
ば入力36チャンネル、出力24チャンネルの構成とさ
れており、前記マイクロフォン28から入力され前記A
/D変換器36においてデジタルデータに変換された波
形サンプルデータ、前記第2の転送回路33により転送
される前記Pバッファからの波形サンプルデータおよび
前記DSP35において処理された波形サンプルデータ
を入力とし、前記CPU10から供給される制御データ
に基づいてミキシング動作を行って、前記第2の転送回
路33を介して前記Rバッファ、前記DSP35あるい
は前記D/A変換器37に出力する。
【0019】DSP35は、前記ミキサ34から入力さ
れる16チャンネルの波形サンプルに対し所定のエフェ
クト付加や補間演算等の各種の処理を実行し、処理結果
の16チャンネルの波形サンプルを前記ミキサ34に出
力する。なお、このDSP35は1DACサイクル期間
に複数種類の信号処理、例えば補間演算、各種のエフェ
クト処理等を実行することのできるマルチ(プログラ
ム)DSPとされている。A/D変換器36は前記マイ
クロフォン28から入力されるオーディオ信号(音声信
号あるいは楽音信号)を所定のサンプリングレート(D
ACサイクル、例えば44.1KHz)でサンプリング
して所定ビット数(ここでは16ビット)の波形サンプ
ルデータに変換して、前記ミキサ34に出力する。ここ
では、4チャンネルの波形サンプルを入出力することが
できるように構成されている。D/A変換器37は、前
記ミキサ34から出力される4チャンネルの波形サンプ
ルデータをアナログ信号に変換して前記サウンドシステ
ム29に出力する。
【0020】前記ミキサ34では、サンプリング周期毎
に、第2の転送回路から16チャンネル、マルチDSP
35から16チャンネル、A/D変換器36から4チャ
ンネルの計36チャンネルの波形データを入力し、制御
データに含まれる各入力/出力毎に独立して設定された
レベルデータに基づいて20通りのミキシング処理を行
い、そのミキシング結果を第2の転送回路に4チャンネ
ル、マルチDSP35に16チャンネル、D/A変換器
37に4チャンネルの計24チャンネルの波形データと
してそれぞれ出力する。
【0021】ここで、第2の転送回路33、マルチDS
P35、A/D変換器36、D/A変換器37をどのよ
うに接続するかを、前記レベルデータにより設定するこ
とができる。例えば、外部マイクロフォン28から入力
する波形データをPCバッファに録音したいときは、各
DACサイクル毎に、A/D変換器36から入力する波
形データをミキサ34で音量制御してマルチDSP35
に送り、マルチDSP35でイコライザ処理やコンプレ
ッサ処理を行った波形データを再びミキサ34に入力し
て音量制御した後に、ミキサ34内の転送回路2への送
出レジスタ(図示せず)に記憶させる。また、録音時の
結線は、録音用の4チャンネルのそれぞれについて独立
して設定できる。
【0022】また、PCバッファの波形データを再生し
たいときには、各DACサイクル毎に、転送回路2から
ミキサ34内の入力レジスタ(図示せず)に出力される
波形データをミキサ34で音量制御してマルチDSP3
5に送り、マルチDSP35でコーラス効果や残響効果
のエフェクト処理を行った波形を再びミキサ34に入力
して、音量制御した後にD/A変換器37に出力する。
再生時の結線は、再生用の16チャンネルのそれぞれに
ついて独立に設定することができる。さらに他の例とし
て、A/D変換器から入力する波形データをマルチDS
P35に送ってエフェクトを付与してD/A変換器37
に出力するよう設定したり、再生チャンネルで再生した
PCバッファの波形データを、マルチDSPでイコライ
ザ処理等の処理を施した後、録音チャンネルで別領域の
PCバッファに記憶するよう設定することもできる。
【0023】なお、上述したようにサンプリング周期で
処理を行う、ミキサ34、DSP35、D/A変換器3
7等をディジタルオーディオ回路とよぶ。これらディジ
タルオーディオ回路に入力された波形データは、最終的
にはアナログ波形に変換されて、さらにスピーカ等で音
に変換されることとなる。
【0024】38は例えば32ビット構成とされたカウ
ンタであり、前記DACサイクルに等しい44.1KH
zのパルスを計数するように構成されている。したがっ
て、このカウンタ38はDACサイクルを単位として計
数した時刻データを出力する。39は前記カウンタ38
から出力される時刻データおよび後述するレジスタ40
に格納されている各種の指定時刻データとを比較結果に
基づいて前記第1の転送回路31あるいは第2の転送回
路33の動作を制御するタイミング発生部である。ま
た、40はレジスタであり、このサウンド入出力ボード
30における前記第1の転送回路31、第2の転送回路
33、カウンタ38、タイミング発生部39、DSP3
5、A/D変換器36およびD/A変換器37等に対す
る各種制御に必要な各種の制御データあるいは変数が前
記CPU10により設定されるようになされている。な
お、このレジスタ40に設定される各データの詳細につ
いては後述する。
【0025】さて、このように構成された波形録音再生
装置において、波形再生時には、前記第1のRAM12
上のPCバッファに格納されている各チャンネルの波形
サンプルデータを前記第1の転送回路31の制御のもと
に前記サウンド入出力ボード30内の前記第3のRAM
32のPバッファに32サンプル単位で順次転送し、前
記第2の転送回路33の制御のもとに該第3のRAM3
2から各発音チャンネルにつき各DACサイクル毎に1
波形サンプルデータずつ前記ミキサ34(及びマルチD
SP35)を介して前記D/A変換器37に出力して、
前記サウンドシステム29から当該オーディオ信号を出
力する。また、波形録音時には、前記マイクロフォン2
8から入力され前記A/D変換器36において波形サン
プルデータに変換されて(マルチDSP35を介して)
前記ミキサ34から出力されるオーディオ信号を前記第
2の転送回路33の制御のもとに前記第3のRAM32
中のRバッファに格納し、該第3のRAM中のRバッフ
ァ中に格納された波形サンプルデータを前記第1の転送
回路31の制御のもとに、前記第1のRAM12中のP
Cバッファに32サンプル単位で転送する。
【0026】この様子を図3を参照して説明する。図3
は、前記第1のRAM12に設けられたPCバッファ、
前記第3のRAM32に設けられたPバッファあるいは
Rバッファおよび前記ミキサ34の間を波形サンプルデ
ータが転送される様子を説明するための図であり、
(a)は再生時のデータの流れ、(b)は録音時のデー
タの流れを示す図である。前述したように、この実施の
形態においては、再生が16チャンネル、録音が4チャ
ンネルとされており、図示するようにチャンネル番号0
〜15までが再生チャンネル、チャンネル番号16〜1
9までが録音チャンネルとされている。前記Pバッファ
および前記Rバッファは各再生チャンネル、各録音チャ
ンネルに対応して互いに独立して設けられており、それ
ぞれ波形データを記憶するリングバッファとし循環的に
使用される。
【0027】図3の(a)は、前記チャンネル番号0〜
15の再生データの流れを示すもので、ここには1つの
チャンネルxについてのみ図示してある。図示するよう
に、前記第1のRAM12中に設けられた第xチャンネ
ル(x=0,1,…,15)に対応するPCバッファ領
域は開始アドレスSA[x]と終了アドレスEA[x]
とにより規定されており、TP[x]は、該PCバッフ
ァ領域の読み出し位置を示す転送ポインタである。
【0028】前記サウンド入出力ボード30は、1DA
Cサイクルを2つに分割し、1DACサイクルの前半の
期間にPCバッファからの波形サンプルデータの読み出
しが必要であるか否かを判定する。そして、波形サンプ
ルデータの読み出しが必要な場合には、同DACサイク
ルの後半の期間に、バスアービターにPCIバス20の
使用要求を出力し、バスの使用権を獲得して、RAM1
2をアクセスし、転送ポインタTP[x]により指定さ
れたアドレスから連続する32ワードのデータを読み出
し、Pバッファにバースト転送する。このとき、前記転
送ポインタTP[x]は、1バストランザクション毎に
16アドレス(32ワード分)だけ増加される。また、
前記PCバッファは32ビットアドレス境界でアクセス
されることとなる。ここで、バースト転送とは、最初に
アドレスをデータバスに1回だけ出力し、次に複数のデ
ータを連続的に転送する転送方法である。バースト転送
では、1データ毎にアドレスを指定する必要がないた
め、メモリ上の指定したアドレスの位置から連続する複
数アドレス分のデータをまとめて高速転送することがで
きる。例えば、PCIバスの動作クロックを33MHz
とすると、1DACサイクルで32サンプルのバースト
転送を行う場合には、バスの転送能力の0.1%程度が
使用される。一方、32サンプルをバースト転送を行わ
ずに転送した場合には、その約4倍弱の転送時間を要す
る。
【0029】また、前記開始アドレスSA[x]と終了
アドレスEA[x]の間には割り込み要求アドレスIA
[x]を設定することができるようになされており、前
記転送ポインタTP[x]がこの割り込み要求アドレス
IA[x]に達したときに、前記CPU10に対して割
り込み要求を発生するようになされている。したがっ
て、この割り込み要求アドレスIA[x]=終了アドレ
スEA[x]に設定しておけば、CPUは、当該割り込
みにより当該PCバッファのデータの転送完了を検出す
ることができ、その時点でそのPCバッファを開放して
RAM12上の他の波形データの再生に使用できるよう
にすることもできるし、あるいは、前記転送ポインタT
P[x]=SA[x]とセットして当該PCバッファに
格納されている波形データを繰り返し再生させることも
できる。
【0030】また、以下に示す方法を用いれば、1つの
再生チャンネルxの小容量のPCバッファ(例えば、4
K〜64Kワード)を使用して、前記ハードディスク装
置23あるいは前記CD−ROM装置24等の外部記憶
装置に記憶されている大容量の波形データ(例えば数百
K〜数十Mワード)を、順次読み出しながらダイレクト
再生することができる。
【0031】まず、前記外部記憶装置に記憶された波形
データの1つが再生指示されると、CPUは、その先頭
部分の波形データをPCバッファ[x]に転送する。そ
して、前記IA[x]を前記SA[x]と前記EA
[x]の中間の値に設定して同PCバッファの再生を開
始する。やがてTP[x]がIA[x]に達して割り込
みが発生したら、CPUは、IA[x]=EA[x]に
設定するとともに、前記外部記憶装置から続きの波形デ
ータを読み出し、同PCバッファ[x]の前記開始アド
レスSA[x]からその容量の1/2だけ格納する。さ
らに、TP[x]がIA[x]に達して割り込みが発生
したら、CPUは、TP[x]=SA[x]かつIA
[x]に前記中間の値を設定するとともに、前記外部記
憶装置から続きの波形データを読み出し、同PCバッフ
ァ[x]の後半の1/2に格納する。以後、上述した前
記中間の値に設定されたIA[x]での割り込みの処理
と、EA[x]に設定されたIA[x]での割り込みの
処理を交互に繰り返して、前記外部記憶装置の指定され
た波形データの再生を最後まで行う。なお、CPUは、
上述したPCバッファ[x]の半分の量の波形データの
転送を、CPUの内蔵するダイレクトメモリアクセスコ
ントローラDMACで行ってもよいし、またその際にバ
ースト転送を使用してもよい。
【0032】さて、前記第1のRAM12上のPCバッ
ファの転送ポインタTP[x]から読み出され、バース
ト転送された32ワードの波形サンプルデータは、前記
第3のRAM32上のxチャンネルのPバッファの転送
書き込みポインタTWP[x]で示されるアドレスから
順に書き込まれる。前述のように、このPバッファは例
えば各チャンネル1Kワードの大きさとされている。バ
ースト転送毎に、TWP[x]は32アドレスずつ進
む。このPバッファのデータの読み出しは、前記第2の
転送回路33によりDACサイクルの前半に実行され
る。第2の転送回路33は、前記Pバッファのオーディ
オ再生ポインタAPP[x]により示されるアドレスか
ら1DACサイクル毎に1サンプルの波形サンプルデー
タを読み出し、前記ミキサ34に転送する。なお、後述
するように、この読み出しを開始/終了するタイミング
は、前記タイミング発生部39により制御される。
【0033】一方、前記図3の(b)は録音チャンネル
におけるデータの流れを示す図である。前記マイクロフ
ォン28から入力され、前記A/D変換器36において
デジタルデータに変換されたオーディオデータは、必要
に応じて前記DSP35において所定の信号処理を施さ
れた後、前記ミキサ34から出力される。前記第2の転
送回路33は前記ミキサ34からDACサイクル毎に出
力される波形サンプルデータをDACサイクルの前半に
前記第3のRAM32中に設けられたxチャンネル(x
=16,…,19)のRバッファのオーディオ録音ポイ
ンタARP[x]により指定されるアドレスに書き込
む。このオーディオ録音ポインタはDACサイクル毎に
順次インクリメントされる。なお、このRバッファのサ
イズも、前記Pバッファと同様に各チャンネル1Kワー
ドとされている。
【0034】このRバッファに波形サンプルデータが所
定量書き込まれると、DACサイクルの後半において、
前記第1の転送回路31がバス・マスターとなり、この
波形サンプルデータを前記第1RAM中のPCバッファ
に32ワードずつバースト転送により書き込む。このと
き、前記Rバッファの転送読み出しポインタTRP
[x]を先頭アドレスとする32ワードの波形サンプル
データが順次読み出され、前記第1のRAM12上のP
Cバッファの転送ポインタTP[x]から順に書き込み
が行われる。そして、転送ポインタTP[x]は、1バ
ストランザクション毎に16アドレス(32ワード分)
ずつ増加される。
【0035】なお、この録音の場合にも、前述の場合と
同様に割り込み要求アドレスIA[x]を設定すること
により、録音の終わったPCバッファを順次開放するこ
と、あるいは、前記PCバッファを小容量のダブルバッ
ファとして使用して、入力する大容量の波形データをダ
イレクトにハードディスク装置等に録音することができ
る。
【0036】このように、本発明においては、バースト
転送機能を有するPCIバス20に波形再生回路となる
サウンド入出力ボード30が接続されており、前記第1
の転送回路31が、PCバッファからの波形サンプルの
読み出しが必要となったときに、PCIバス20の使用
権を獲得して当該波形サンプルを前記サウンド入出力ボ
ード30上に設けられた当該チャンネルのバッファメモ
リに例えば32サンプルずつバースト転送している。し
たがって、波形データの転送によるシステム全体の動作
効率の低下を防止することが可能となり、また、複数チ
ャンネルの波形データを同時に安定して再生することが
可能となる。
【0037】次に、このように構成された波形録音再生
装置の動作について、フローチャートを参照しながら詳
細に説明する。図4は、前記CPU10により実行され
るメインルーチンの動作を示すフローチャートである。
まず、前記CPU10は、ステップS11において、各
領域の確保や、変数およびフラグの初期化等の初期設定
処理を実行する。次に、何らかの起動要因の発生を待つ
(ステップS12およびS13)。そして、起動要因が
発生すると、ステップS14に進み、その起動要因が何
であるかを判定する。
【0038】起動要因が、スイッチあるいはGUI画面
上の所定の領域に対するマウスのクリックなどのスイッ
チ操作であるときには、ステップS15に進み、該操作
されたスイッチに対応する処理を行う。ここで、波形再
生に対応するスイッチが操作されたときは、後述する波
形再生処理が行われることとなる。また、前記起動要因
が割り込みであるときには、ステップS16に進み、当
該割り込みに対応する処理が行われる。この割り込み処
理については、後述する。さらに、前記起動要因がスイ
ッチ操作でもなく、割り込みでもなく、終了指示でもな
いその他の処理であるときには、ステップS17に進
み、当該起動要因に対応する処理が行われる。さらにま
た、前記起動要因が終了指示であるときには、ステップ
S18に進み、メモリ領域の開放等の終了処理を実行す
る。
【0039】次に、本発明において実行される波形録音
再生処理について説明するが、その前に、前記図2に示
した前記レジスタ40中に格納されている各フラグおよ
び変数について一通り説明する。RFはランフラグ(Ru
n Flag)であり、このランフラグRFが「1」にセット
されているときに、前記カウンタ38はカウントを開始
し、RF=0のときにカウントを停止するようになされ
ている。また、前述のように、SA[x](Start Addr
ess)は第xチャンネルのPCバッファの先頭アドレ
ス、EA[x](End Address)は第xチャンネルのP
Cバッファの最終アドレス、IA[x](IRQ Addres
s)は第xチャンネルのPCバッファの割り込み要求ア
ドレス、TP[x](Transfer Pointer)は第xチャン
ネルのPCバッファの読み出し位置を示す転送ポインタ
である。SUS[x](Suspend Flag)は第1の転送回
路31によるそのチャンネルの転送が一時中断されてい
ることを示すサスペンドフラグである。
【0040】また、PSC[x](Playback Start Cou
nt)は第xチャンネルのDACサイクルを単位とする再
生開始時刻を示す再生開始カウント値、PEC[x]
(Playback End Count)は第xチャンネルのDACサイ
クルを単位とする再生停止時刻を示す再生終了カウント
値、TWP[x](Transfer Write Pointer)は第xチ
ャンネルのPバッファの書込位置を示す転送書き込みポ
インタ、TWF[x](Transfer Write Flag)は第x
チャンネルのPCバッファからPバッファへの転送の開
始/終了を指示する転送指示フラグ、APP[x](Au
dio Playback Pointer)は第xチャンネルのPバッファ
の読み出し位置を示す再生ポインタ、APF[x](Au
dio Playback Flag)は第xチャンネルの波形再生開始
/終了を指示する再生指示フラグである。
【0041】さらに、RSC[x](Recording Start
Count)は第xチャンネルのDACサイクルを単位とす
る録音開始時刻を指定する録音開始カウント値、REC
[x](Recording End Count)は第xチャンネルのD
ACサイクルを単位とする録音停止時刻を指定する録音
終了カウント値、TRP[x](Transfer Read Pointe
r)は第xチャンネルのRバッファの読み出し位置を示
す転送読み出しポインタ、TRF[x](Transfer Rea
d Flag)は第xチャンネルのRバッファからPCバッフ
ァへの転送の開始/終了を指示する転送指示フラグ、A
RP[x](Audio Rec Pointer)は第xチャンネルの
Rバッファの録音ポインタ、ARF[x](Audio Rec
Flag)は第xチャンネルの録音の開始/終了を指示する
録音指示フラグである。さらにまた、RPC(Recordin
g Pre Count)は、プリトリガー録音の場合に、何サン
プル前から録音を開始するかを指示する録音プリカウン
ト値、すなわちTRF[x]=1となった時のARP
[x]の値より、何サンプル前から転送を開始するかを
規定するデータであり、TRF[x]=1がセットされ
たタイミングにTRP[x]=ARP[x]−RPCを
転送開始アドレスとして第1の転送回路がPCバッファ
への転送を開始する。
【0042】録音を行いたい場合、操作者は、まず録音
準備の操作を行い、その後に録音開始の操作を行う。C
PU10は、前記録音準備の動作に応じて録音指示フラ
グARF[x]を1にセットし、その後の前記録音開始
の指示に応じてTRF[x]を1にセットする。ARF
[x]のセットに応じて、まず、第2の転送回路33に
よる前記ミキサ34から出力される波形データのRバッ
ファへの書込みがスタートし、その後にTRF[x]の
セットに応じて、第1の転送回路によるRバッファの波
形データのPCバッファへの転送がスタートする。入力
波形データのRバッファへの書き込みは前記TRF
[x]を1にセットするタイミングに先立って行われて
いるので、上記転送開始アドレスによって、録音開始の
指示時のサンプルよりRPCの示すサンプル数だけ前の
サンプルから波形データをPCバッファに転送すること
ができる。
【0043】このように、本実施の形態によれば、波形
データの録音バッファからPCバッファへの転送を、任
意のタイミングで開始することができる。しかも、録音
開始の指示がなされるまで入力波形はRバッファに書き
込まれるだけであるので、指示待ちの状態でPCIバス
20に負担を掛けることはない。なお、操作者が録音開
始の指示を行うかわりに、入力波形のレベルに応じてC
PU10が録音開始の指示を発生するようにしても良
い。
【0044】さて、この波形録音再生装置における波形
再生処理には、(1)前記第1のRAM12上に格納さ
れている波形サンプルデータを再生する場合、(2)シ
ーケンス再生、すなわち、各チャンネルの波形サンプル
データを再生する時間等を記述したシーケンスデータに
基づいて波形再生を行う場合、(3)上述したようなハ
ードディスクに記憶されている波形をダイレクトに再生
する場合等各種の場合がある。
【0045】はじめに、前記(1)の第1のRAM12
上に格納されている波形サンプルデータ(WAVEデー
タ)を再生する場合について説明する。図5の(a)
は、前記(1)のWAVEデータの再生指示が行われた
ときに前記CPU10により実行される動作を説明する
ためのフローチャートである。この処理は、前記図4に
おいてはステップS15のスイッチ処理の中に含まれて
いる。
【0046】操作者が波形再生を指示するスイッチの操
作あるいはGUI画面上のボタンに対するマウス等のク
リックにより波形再生指示を行うと、この図5の(a)
の処理が開始される。まず、ステップS21において、
当該再生指示に含まれている前記第1のRAM12上に
格納されている再生すべき波形データを指示するWAV
E指示データを受け取る。
【0047】次に、ステップS22に進み、前記ステッ
プS21において同時に再生することを指示されたWA
VEデータに応じて、発音チャンネルの割り当てを行
う。ここでは、前記発音チャンネルのうち現在発音され
ていないチャンネル、すなわち、第0チャンネル〜第1
5チャンネルのうちで、前記転送指示フラグTWF
[x]および再生指示フラグAPF[x]がともに
「0」であるチャンネルの中から発音すべきチャンネル
xを指定する。また、TWF[x]とAPF[x]がと
もに「0」であるチャンネルが無い場合には、再生用の
16個のチャンネルのうちの発音の一番短いチャンネル
や音量の一番小さいチャンネルを消音して、そのチャン
ネルを発音チャンネルxとして指定する。
【0048】続いて、ステップS23に進み、前記WA
VE指示データに含まれている当該WAVEデータに対
応する前記PCバッファの先頭アドレスおよび最終アド
レスを、指定した発音チャンネルxの先頭アドレスSA
[x]および最終アドレスEA[x]として、前記レジ
スタ40に設定する。次に、ステップS24に進み、前
記レジスタ40の当該発音チャンネルxに対応する転送
指示フラグTWF[x]を「1」にセットする。このと
き、当該チャンネルxの転送書き込みポインタTWP
[x]および再生ポインタAPP[x]は初期化され
る。なお、このTWF[x]を「1」にセットすること
により、後述するように、指定されたWAVEデータの
第1の転送回路31による前記Pバッファへの転送(プ
リロード)が開始されることとなる。
【0049】続いて、ステップS25に進み、当該発音
チャンネルに対応するDACサイクルを単位とする再生
開始時刻を示す再生スタートカウント値PSC[x]お
よびDACサイクルを単位とする再生停止時刻を示す再
生終了カウント値PEC[x]を前記レジスタ40に設
定する。例えば、直ちに再生を開始させる場合には、前
記タイマ17における現在時刻データをもとにDACサ
イクルを単位とする現在時刻データを算出し、その値を
前記再生スタートカウント値PSC[x]として設定す
る。また、前記再生終了カウント値PEC[x]として
は、当該波形再生指示に再生終了時刻情報が含まれてい
るときにはそれに対応する値を設定し、また、当該WA
VEデータを一通り再生する場合にはその波形サンプル
数を前記再生スタートカウント値PSC[x]に加算し
た値を設定する。ここでは、ランフラグがRF=1に設
定されており、カウンタ38が動作中であることとす
る。
【0050】以上が、波形再生指示がなされたときに前
記CPU10において実行される処理である。この処理
において、上述したように、割り当てられた発音チャン
ネルにそれぞれ対応するSA[x]、EA[x]、PS
C[x]およびPEC[x]が設定され、また、PCバ
ッファから前記Pバッファへの転送の開始を指示するT
WF[x]が「1」にセットされることとなる。実際の
再生処理は、次に説明する第1の転送回路31および第
2の転送回路33による処理により実行される。
【0051】図5の(b)は、前記第1の転送回路31
において実行される転送準備処理のフローチャートであ
る。この転送準備処理は1DACサイクルを2つに分割
した前半部分において1回どおり実行される。まず、ス
テップS31において、前記転送指示フラグTWF
[x]あるいは前記転送指示フラグTRF[x]につい
て、「1」にセットされているものがあるか否かを判定
する。ここで、全チャンネルについてフラグTWF
[x]およびTRF[x]がセットされていないときに
は、転送は指示されていないのであるから、この転送準
備処理は終了される(S31の判定結果がYESのと
き)。一方、フラグTWF[x]あるいはTRF[x]
のいずれかが「1」にセットされている場合、すなわ
ち、転送が指示されているチャンネルがあるときには、
ステップS32に進む。
【0052】ステップS32において、TWF[x]あ
るいはTRF[x]が「1」にセットされているチャン
ネルについて、サスペンドフラグSUS[x]が「1」
にセットされており、かつ、転送すべきデータが128
ワード以上あるチャンネルをサーチする。ここで、サス
ペンドフラグSUS[x]は、キャッチアップ防止のた
めに当該チャンネルのWAVEデータの転送を一時中断
するためのフラグであり、当該チャンネルが発音チャン
ネルであるときにはWAVEデータが書き込まれる前記
Pバッファの空き容量が一度のバースト転送により転送
されるデータ量(この実施の形態においては32ワー
ド)よりも少なくなったときに、また、当該チャンネル
が録音チャンネルであるときには前記Rバッファに貯え
られている波形サンプルが32ワードよりも少なくなっ
たときにセットされる。すなわち、このSUS[x]フ
ラグが「1」にセットされているときにはそのチャンネ
ルの転送は中断されている。
【0053】SUS[x]フラグが「1」にセットされ
ており、転送すべきデータが128ワード以上あるチャ
ンネルが見つかったときは、ステップS34において、
このチャンネルのSUS[x]フラグを「0」にリセッ
トする。ここで、「転送すべきデータ」は、当該チャン
ネルが発音チャンネルであるときには前記Pバッファの
空き容量を指し、当該チャンネルが録音チャンネルであ
るときには前記Rバッファに貯えられた波形サンプルの
量を指す。このように、前記ステップS32〜S34に
より、SUS[x]フラグが「1」にセットされている
チャンネルのうちの転送すべきデータが128ワード以
上あるチャンネルについて、SUS[x]フラグを
「0」にリセットして、その転送の中断状態を解除する
処理が行われている。
【0054】続いて、ステップS35に進み、前記フラ
グTWF[x]あるいはTRF[x]が「1」にセット
されており、かつ、SUS[x]フラグが「0」である
チャンネルについて、その転送すべきデータが一番多い
チャンネルをサーチし、そのチャンネルの番号xを今回
の転送処理において転送対象となるチャンネルの番号を
指定するレジスタiにセットする。以上が前記第1の転
送回路31において実行される転送準備処理のフローチ
ャートである。すなわち、DACサイクルの前半部分に
おいて実行される転送準備処理において、転送を行うチ
ャンネルが決定され、レジスタiにそのチャンネルの番
号がセットされる。
【0055】なお、上記ステップS35においては、転
送すべきデータが最も多いチャンネルを次の転送処理の
対象チャンネルとしているが、これ以外の方法により転
送を行うチャンネルを決定することもできる。たとえ
ば、フラグTWF[x]あるいはTRF[x]が「1」
であり、かつ、SUS[x]フラグが「0」であるチャ
ンネルを順に転送対象チャンネルとして、前記レジスタ
iにセットするようにしてもよい。ただし、第2の転送
回路33にチャンネル別のアドレスカウンタや補間回路
を付加してサンプリングレートが異なる波形サンプルを
同時に録音再生できるように構成した場合には、サンプ
リングレートに応じて転送すべきデータの変化速度が異
なるため、このような場合には、前述した転送すべきデ
ータを参照して転送を実行するチャンネルを決定する方
法の方が望ましい。
【0056】次に、前記第1の転送回路31において実
行される転送処理について、図5の(c)に示すフロー
チャートを参照して説明する。この転送処理は1DAC
サイクルを2つに分割した後半部分において実行され
る。この転送処理においては、まず、ステップS41に
おいて、転送すべきチャンネルの有無が調査される。こ
れは、前記レジスタiに有意のデータがセットされてい
るか否かにより判定される。この判定の結果、チャンネ
ル番号がセットされていないときには、転送すべきチャ
ンネルがないので、この転送処理は終了される。
【0057】前記レジスタiに前記転送準備処理におい
てチャンネル番号が書き込まれているときは、ステップ
S41の判定結果がNOとなり、ステップS42に進
み、PCIバス20が獲得される。すなわち、前記第1
の転送回路31は、バスアービタに対しPCIバスの使
用権を要求し、その使用権を獲得する。PCIバスの使
用権を獲得した後、ステップS43に進み、チャンネル
iの32サンプルのWAVEデータの転送を行う。すな
わち、前記第1の転送回路31がバス・マスターとな
り、当該チャンネルiが発音チャンネルの時は、前記第
1のRAM12上の当該発音チャンネルiに対応するP
Cバッファの転送ポインタTP[i]の示す記憶位置か
ら32サンプル分のWAVEデータを読み出し、バース
ト転送モードで前記第3のRAM32のiチャンネルに
対応するPバッファのポインタTWP[i]で示される
記憶位置に順次格納する。また、当該チャンネルが録音
チャンネルのときは、前記第3のRAM32のiチャン
ネルに対応するRバッファの転送読み出しポインタTR
P[x]から32サンプルの波形データを読み出し、バ
ースト転送モードで前記PCバッファの転送ポインタT
P[i]の示す記憶位置から順次格納する。
【0058】ステップS43では前記バースト転送の
後、転送に使用した転送ポインタTP[i]を16アド
レス(32サンプルに対応)進めるとともに、転送に使
用した転送書き込みポインタTWP[i]ないし転送読
み出しポインタTRP[i]を32アドレス進める。ま
た、ポインタTWP[i]ないしTRP[i]がそれぞ
れ対応するPバッファないしRバッファの最終アドレス
まで進行した場合には、第1の転送回路31は、該ポイ
ンタTWP[i]ないしTRP[i]を対応するPバッ
ファないしRバッファの先頭アドレスに戻すように制御
する。この転送が終了したら、ステップS44に進み、
前記PCIバス20を開放する。
【0059】次に、ステップS45に進み、当該チャン
ネル(iチャンネル)の転送すべきデータ量が32サン
プル以下であるか否かを判定する。すなわち、このiチ
ャンネルが発音チャンネルであるときは前記Pバッファ
の空き容量が32サンプル以下であるか否かを判定し、
録音チャンネルであるときは前記Rバッファに貯えられ
ているサンプルが32サンプル以下であるか否かについ
て判定する。この判定の結果がYESのときは、次に転
送を行ったときにキャッチアップが発生するため、当該
チャンネルに対応するサスペンドフラグSUS[i]を
「1」にセットし、このチャンネルの転送を中断させる
(ステップS46)。
【0060】以上が、第1の転送回路31により実行さ
れる1回の転送処理の内容である。すなわち、1DAC
サイクル内に前記図5の(b)に示した転送準備処理
と、前記図5の(c)に示した転送処理とが各1回ずつ
実行されており、1DACサイクル当たり1つのチャン
ネルの32サンプルのWAVEデータの転送が実行され
る。このようにして、発音チャンネルについては、前記
第3のRAM32上のPバッファに、そのPバッファの
空き容量が32サンプル以下になるまで、各発音チャン
ネルのWAVEデータが順次格納されていく。また、録
音チャンネルについては、前記Rバッファ上に貯えられ
た波形サンプルが、前記Rバッファの残りが32サンプ
ル以下になるまで、前記PCバッファに順次転送され
る。
【0061】上に説明した第1の転送回路31によるデ
ータ転送では、図5(b)のステップS35で1つのチ
ャンネル番号xだけをレジスタiに設定し、図5(c)
のステップS43で設定された1つのチャンネルの転送
を行うようになっていた。ステップS35で1チャンネ
ルだけを設定するのではなく、転送すべきデータが2番
目、3番目…に多いチャンネルも含めて、n個(例えば
5個)のレジスタi1〜inに最大n個までのチャンネ
ル番号を設定し、ステップS43で指定された最大n個
のチャンネルのデータ転送をまとめて転送するようにし
てもよい。その場合、特に転送の遅れたチャンネルがあ
る場合にn個のレジスタの中の複数個に同一のチャンネ
ルを登録し、そのチャンネルについて一度に64サンプ
ル、96サンプル等のデータ転送をするようにしてもよ
い。
【0062】次に、前記第2の転送回路33により実行
される、発音チャンネルについての前記Pバッファから
前記ミキサ34へのWAVEデータの転送処理および録
音チャンネルについての前記ミキサ34から前記Rバッ
ファへの転送処理について、図6の(a)に示すフロー
チャートを参照して説明する。この処理も各DACサイ
クルの前半期間に1回どおり実行される。
【0063】前記第2の転送回路33は、まず、ステッ
プS51において、チャンネル番号を格納するレジスタ
jに初期値「0」をセットする。前述したように、第0
チャンネル〜第15チャンネルは発音チャンネルとされ
ており、第16チャンネル〜第19チャンネルは録音チ
ャンネルとされている。したがって、0≦j≦15のと
きは当該チャンネルは発音チャンネルであり、16≦j
≦19のときは当該チャンネルは録音チャンネルであ
る。続いて、ステップS52において、レジスタjに設
定されているチャンネルに対応する波形再生の開始/終
了を指示する再生指示フラグAPF[j]が「1」にセ
ットされているか否かを判定する。この再生指示フラグ
APF[x]は、後述するタイミング発生処理において
当該発音チャンネルに対応する発音開始時刻に「1」に
設定され、発音終了時刻に「0」に設定されるフラグで
ある。
【0064】当該発音チャンネルに対応する再生指示フ
ラグAPF[j]が「1」にセットされているときは、
ステップS53において、その発音チャンネルjに対応
するPバッファの再生ポインタAPP[j]を1つ進
め、そのアドレスの波形サンプルデータ(WAVEデー
タ)を読み出して、前記ミキサ34内の入力レジスタに
出力し、ステップS54に進む。一方、当該発音チャン
ネルに対応するAPF[j]が「0」のときは、そのま
まステップS54に進む。ここで、ポインタAPP
[j]が対応するPバッファの最終位置まで進行した
ら、APR[j]は再び同Pバッファの先頭に戻され
る。そして、ステップS54においてjをj+1にひと
つ進め、上記処理をjが16以上になるまで繰り返す
(ステップS55)。
【0065】次に、第15チャンネルまでの処理が終了
し、前記ステップS55の判定結果がYESになると、
ステップS56に進み、当該録音チャンネルのオーディ
オデータの録音の開始/終了を指示する録音指示フラグ
ARF[j]が「1」であるか否かが判定される。この
フラグARF[x]は、CPU10により録音開始時刻
に先立って「1」に設定され、後述するタイミング発生
処理により録音停止時刻に「0」に設定されるフラグで
ある。
【0066】当該フラグARF[j]が「1」にセット
されている場合には、ステップS56の判定結果がYE
Sとなり、ステップS57に進む。ステップS57にお
いては、当該録音チャンネルのRバッファの録音ポイン
タARP[j]を1つ進め、前記A/D変換器36から
取り込まれ前記ミキサ34内の出力レジスタに記憶され
ている波形サンプルデータを取り出して、ARP[j]
の示すアドレスに書き込む。ここで、ポインタARP
[j]が対応するRバッファの最終位置まで進行した
ら、ARP[j]は再び同Rバッファの先頭に戻され
る。また、ARF[j]が「0」の録音チャンネルにつ
いては、なにも行わない。そして、ステップS58に進
み、jをひとつだけ進め、j=19になるまで、上記ス
テップS56〜S58を繰り返し(ステップS59)、
このDACサイクルにおける第2の転送回路33の転送
処理を終了する。
【0067】このように、第2の転送回路33において
は、各DACサイクル毎に、全発音チャンネル(第0チ
ャンネル〜第15チャンネルの16チャンネル)につい
て、発音開始指示がなされているか否かを判定し、発音
開始指示がなされている発音チャンネルについては、当
該Pバッファから1波形サンプルデータを読み出して前
記ミキサ34に出力する動作を行い、一方、全録音チャ
ンネル(第16チャンネル〜第19チャンネルの4チャ
ンネル)について、録音開始指示がなされている録音チ
ャンネルについて前記ミキサ34を介して前記A/D変
換器36によりA/D変換された波形サンプルデータを
前記Rバッファに書き込んでいる。
【0068】次に、前記再生指示フラグAPF[x]、
あるいは、転送指示フラグTRF[x]ないし録音指示
フラグARF[x]を指定されたタイミングでセットあ
るいはリセットするタイミング発生処理について、図6
の(b)に示すフローチャートを参照して説明する。こ
のタイミング発生処理は、前記タイミング発生部39に
より常時実行されている処理である。
【0069】前述したように、本発明のこの実施の形態
においては、DACサイクル(この実施の形態において
は44.1KHz)をカウントする32ビットのカウン
タ38が設けられている。したがって、このカウンタ3
8により約25時間を計数することができ、本発明のこ
の実施の形態においては、波形再生および録音の開始お
よび終了のタイミングをDACサイクルを単位とする時
間により制御するようにしている。すなわち、再生ある
いは録音の開始時刻および終了時刻をDACサイクルを
単位とする時刻データにより指定している。
【0070】前記タイミング発生部39は、前記カウン
タ38の計数値と前記CPU10により設定された当該
チャンネルの再生開始時刻を指定するDACサイクルを
単位とする再生開始カウント値PSC[x]、再生停止
時刻を指定するDACサイクルを単位とする再生終了カ
ウント値PEC[x]、録音開始時刻を指定するDAC
サイクルを単位とする録音開始カウント値RSC
[x]、録音停止時刻を指定するDACサイクルを単位
とする録音終了カウント値REC[x]とを比較判定
し、対応する再生指示フラグAPF[x]、あるいは、
転送指示フラグTRF[x]ないし録音指示フラグAR
F[x]をセットあるいはリセットする処理を実行する
ものである。すなわち、前記タイミング発生部39は、
まず、初期設定時に各チャンネルに対応するフラグAP
F[x]およびARF[x]を「0」にリセットする
(ステップS61)。そして、前記カウンタ38の計数
値と前記レジスタ40に設定された各チャンネルのPS
C[x]およびPEC[x]あるいはRSC[x]およ
びREC[x]とを比較し、カウンタ38の計数値と前
記各指定時刻との一致を検出する(ステップS62およ
びS63)。
【0071】そして、いずれかのチャンネルのPSC
[x]、PEC[x]、RSC[x]あるいはREC
[x]と前記カウンタ38の計数値との一致を検出した
場合には、ステップS64に進み、対応するフラグAP
F[x]、あるいは、TRF[x]ないしARF[x]
を制御する。すなわち、あるチャンネルのPSC[x]
が前記カウンタ38の計数値と一致する場合には、当該
チャンネルのフラグAPF[x]を「1」にセットし、
PEC[x]が一致するときには、当該チャンネルのフ
ラグAPF[x]を「0」にリセットする。また、ある
チャンネルのRSC[x]が前記カウンタ38の計数値
と一致したときには、該チャンネルのフラグTRF
[x]を「1」にセットし、REC[x]が一致したと
きには、当該フラグARF[x]を「0」にリセットす
る。
【0072】これにより、当該チャンネルのPSC
[x]により指定された時刻からPEC[x]により指
定された時刻までの時間だけ当該チャンネルの再生を指
示するフラグAPF[x]が「1」とされる。また、当
該チャンネルのRSC[x]により指定された時刻に転
送を指示するフラグTRF[x]が「1」とされ、RE
C[x]により指定された時刻に録音を指示するフラグ
ARF[x]が「0」とされる。この結果、前記図6の
(a)に示した第2の転送回路33による転送処理によ
り、当該発音チャンネルの波形サンプルデータのミキサ
34への送出、あるいは、当該録音チャンネルのA/D
変換された波形サンプルデータの読み込みが実行される
ようになる。なお、PEC[x]とREC[x]に関し
て、それぞれ、指定時刻の検出時にCPU10に対して
割り込みを発生するようにしてもよい。CPU10は、
PEC[x]による割り込みに応じて再生の終了したチ
ャンネルを次の再生のために開放し、REC[x]によ
る割り込みに応じて録音の終了したチャンネルを次の録
音のために開放する。
【0073】このように、この実施の形態においては、
前記中央処理装置により各チャンネルのタイミングデー
タが設定されるレジスタと、タイミングパルスを計数す
るカウンタと、該カウンタの計数値と前記レジスタに設
定されている前記タイミングデータに基づいて各チャン
ネルのタイミング信号を発生するタイミング発生手段と
を設け、前記タイミング信号に応じて前記バッファメモ
リの当該チャンネルに対応した記憶領域から波形データ
を読み出して再生しているので、前記メモリに記憶され
た複数の波形データを正確なタイミングで同時再生する
という課題も解決することができる。
【0074】次に、CPU10で図5(a)の再生指示
イベント処理が実行された場合の、第1の転送回路31
と第2の転送回路33の動作について説明する。CPU
10によりステップS24でWAVEデータの再生に使
用するチャンネルxのTWF[x]が1に設定される
と、第1の転送回路31は、ステップS32で該チャン
ネルxのフラグSUS[x]を「0」に設定する。転送
開始時にはxチャンネルのPバッファが空であり、転送
すべきデータが多いチャンネルとして、続くステップS
35ではそのチャンネルxを示すチャンネル番号がレジ
スタiに設定される。この状態で、ステップS43が繰
り返し実行されることにより、xチャンネルのPバッフ
ァには、アドレスSA[x]、EA[x]で示されるP
Cバッファに記憶されたWAVEデータの先頭部分の波
形が、DACサイクル毎に32サンプルずつ転送され
る。このようにして、xチャンネルのPバッファに波形
サンプルが準備された後、ステップS25で設定された
PSC[x]のタイミングが、タイミング発生部39の
ステップS63の処理で検出され、フラグAPF[x]
が「1」に設定される。
【0075】第2の転送回路33は、サンプル周期で実
行される転送2転送処理(図6(a))のステップS5
2においてAPF[x]が「1」に設定されたことを検
出し、Pバッファに準備された波形サンプルをポインタ
APP[x]を更新しながら読み出してミキサ34内の
入力レジスタに供給する。ミキサ34に供給された波形
サンプルは、DSP35により適宜エフェクトを付与さ
れた後、D/A変換器37に出力されサウンドシステム
29から出力される。このようにして第2の転送回路に
よってPバッファ上の波形サンプルが再生されている間
にも、第1の転送回路は並列に動作しており、再生によ
りxチャンネルのPバッファの空き領域が増加した場合
には、前記WAVEデータの前記先頭部分に続く後続波
形のサンプルをPCバッファからPバッファに順次転送
する。
【0076】さて、以上説明したのは、前記第1のRA
M12のPCバッファに格納されている1つのチャンネ
ルの波形サンプルの波形再生動作、および、マイクロフ
ォン28等から入力され前記A/D変換器36において
A/D変換された波形サンプルデータの読み込み動作で
あるが、前述したように、この波形録音再生装置におい
ては、シーケンス再生を実行することができる。次に、
このようなシーケンス再生時の動作について説明する。
【0077】図7の(a)は、シーケンス再生を行うと
きに使用されるシーケンスデータの一例を示す図であ
る。この図に示すように、シーケンスデータは、(1)
当該データの名称、データ種類、データサイズ、時刻単
位等を格納したヘッダ部、(2)初期設定等に用いられ
る初期データ、(3)スタートコード、(4)時間デー
タおよびWAVEデータに対する命令(再生命令あるい
は制御命令)、(5)エンドコードにより構成されてい
る。ここで、前記(4)の時間データはそれに後続する
WAVEデータに対する命令を発するタイミングを動作
開始時あるいは前の命令からの相対時間データ(例え
ば、DACサイクルを単位とする時間データ)により示
したものである。
【0078】ここで、図7の(a)に示した例において
は、前記WAVEデータに対する命令として、(1)
「W1再生命令」、「W3再生命令」等の各WAVEデ
ータの再生を開始する波形再生命令、および(2)「W
4レベル制御命令」、「W10レベル制御命令」等の各
WAVEデータの再生レベルを制御して当該WAVEデ
ータのフェードインやフェードアウト等を行う命令や
「W1効果制御命令」等の当該WAVEデータに対して
付加するエフェクト(例えば、リバーブ等)を制御する
波形制御命令がある。前記波形再生命令には、当該WA
VEデータの名称、記憶位置(アドレス)、サンプリン
グ周波数、その再生に要する時間等が含まれている。
【0079】図7の(b)に示すように、各WAVEデ
ータは例えば前記ハードディスク装置23に格納されて
おり、前記シーケンスデータの再生に必要とされるWA
VEデータが順次前記第1のRAM12に読み出されて
格納される。すなわち、当該シーケンスデータの再生に
必要とされるWAVEデータをすべてRAM12に転送
しておくのではなく、最初に必要とされる所定数のWA
VEデータを前記RAM12に転送しておき、1つのW
AVEデータの再生が終了した後、次に再生されるWA
VEデータを前記RAM12にロードするようにしてい
る。
【0080】このようなシーケンスデータの再生を行う
ときの動作について、図8および図9に示すフローチャ
ートを参照して説明する。図8に示すのは、前記メイン
プログラム(図4)において、シーケンス再生指示イベ
ントが発生したときに前記ステップS15のスイッチ操
作に対応する処理として実行されるシーケンス再生指示
イベント処理のフローチャートであり、この処理は前記
CPU10により実行される。
【0081】シーケンス再生指示イベントが発生する
と、CPU10は、ステップS71において当該シーケ
ンス再生指示イベントに含まれている再生すべきシーケ
ンスに対応するシーケンス指示データを受け取る。そし
て、前記ランフラグRFを「0」に初期化する(S7
2)。これにより、前記カウンタ38が停止される。続
いて、ステップS73に進み、前記ステップS71にお
いて受け取ったシーケンス指示データにより指定された
シーケンスデータを解析し、当該シーケンスデータの再
生に必要とされる最大チャンネル数(最大トラック数)
nを算出し、該最大トラック数nに対応する発音チャン
ネルを割り当てる。ここで、前記第1のRAM12上の
PCバッファ領域に前記n個のチャンネルのWAVEデ
ータを格納する領域を確保する。
【0082】次に、ステップS74において、当該シー
ケンスデータにおいて再生されるはじめからn個のWA
VEデータを前記ハードディスク装置23から読み出し
て前記第1のRAM12上のPCバッファの前記ステッ
プS73において確保された領域にロードする。そし
て、ステップS75において、該n個のチャンネルにR
AM12上の前記n個のWAVEデータの記憶位置にそ
れぞれ対応する開始アドレスSA[x]、終了アドレス
EA[x]を前記レジスタ40に設定するとともに、前
記終了アドレスEA[x]と同一のアドレスに割り込み
要求アドレスIA[x]を設定する(IA[x]=EA
[x])。
【0083】次に、前記n個のチャンネルの転送開始フ
ラグTWF[x]を「1」に設定し(S76)、各n個
のチャンネルの再生開始カウント値PSC[x]および
再生停止カウント値PEC[x]を前記シーケンスデー
タを解析して得た値に設定する(S78)。すなわち、
前記時間データおよび前記波形再生命令に含まれている
当該WAVEデータの再生時間長(あるいは波形サンプ
ル数)から、当該再生開始カウント値PSC[x]およ
び再生停止カウント値PEC[x]を算出して、前記レ
ジスタ40に設定する。TWF[x]が1に設定された
チャンネルでは、第1の転送回路で図5(b)、(c)
の処理が実行されることにより、同チャンネルで再生す
べきWAVEデータの先頭波形がPCバッファからPバ
ッファに順次転送される。
【0084】そして、ステップS78において、前記波
形制御命令すなわちレベル制御命令や効果制御命令の実
行されるタイミングを前記シーケンスデータ中の時間デ
ータから算出して、そのタイミングで割り込み(制御割
り込み)が発生されるように該タイミングに対応するカ
ウント値をレジスタに設定する。ここでは、まず、最初
の制御命令(図7の(a)に示した例においては「W4
レベル制御命令」)に対応するカウント値を設定する。
次に、ステップS79に進み、前記カウンタ38をリセ
ットするとともに、前記ランフラグRFを「1」にセッ
トして、該カウンタ38のカウントを開始させる。前述
のように、カウンタ38はDACサイクルに対応したパ
ルスを計数するため、これにより、DACサイクルのカ
ウントが「0」から開始される。
【0085】このように、前記シーケンス再生指示に基
づいて、CPU10は当該シーケンスの再生に必要な準
備処理を実行し、再生を開始する。その後、第1のRA
M12中に格納されているn個のWAVEデータの再生
が前述した場合と同様に順次開始される。すなわち、タ
イミング発生部39のステップS63でPSC[x]の
タイミングが検出されると、同チャンネルのAPF
[x]が1に設定され、図6(a)で説明したような第
2の転送回路33による同チャンネルのPバッファの再
生が開始される。該再生によりPバッファに空きが生じ
たら、第1の転送回路31の図5(b)、(c)の処理
により、同チャンネルの再生の終わった先頭波形に続く
WAVEデータの後続波形がPCバッファからPバッフ
ァに順次補給される。第2の転送回路33による上記再
生は、タイミング発生部39で同チャンネルのPEC
[x]のタイミングが検出されるまで継続される。
【0086】さて、このようにして、前記第1のRAM
12上のPCバッファからそれぞれ対応するWAVEデ
ータが前記第3のRAM32上のPバッファに転送さ
れ、WAVEデータの再生が進行するが、前記PCバッ
ファ上のデータの転送ポインタTP[x]が前記割り込
み要求アドレスIA[x]に達したときに、前述したよ
うにチャンネル割り込みが発生する。すなわち、このチ
ャンネル割り込みは当該チャンネルのPCバッファの最
後まで読み出したときに発生するため当該WAVEデー
タがすべて前記当該Pバッファに転送されたことを示し
ており、次に再生すべきWAVEデータを前記第1のR
AM12のPCバッファにロードすることができる。こ
のロード処理はチャンネル割り込み処理ルーチンにより
実行される。
【0087】図9の(a)は、このチャンネル割り込み
処理ルーチンの動作を説明するフローチャートである。
前述のように第1のRAM12内のPCバッファにおけ
る当該チャンネルのWAVEデータがすべて前記第3の
RAM32内のPバッファに転送され、チャンネル割り
込みが発生すると、ステップS81において、ハードデ
ィスク装置23からPCバッファに既にロードされてい
るWAVEデータの次にロードすべきWAVEデータが
あるか否かが判定される。この判定の結果、シーケンス
データで発音指示されるWAVEデータが既に全部PC
バッファにロードされ、ハードディスク装置23にはも
う転送すべきデータが無い場合には、ステップS87に
進み、現在再生中の発音チャンネルがあるか否かを判定
する。この結果、現在波形再生中の発音チャンネルがな
いときには、すべてのWAVEデータの再生が終了した
のであるから、前記ランフラグRFを「0」にリセット
し、このシーケンス再生処理を終了する。また、再生中
の発音チャンネルがあるときには、そのまま、このチャ
ンネル割り込み処理を終了する。
【0088】一方、再生すべきWAVEデータが残って
おり前記ステップS81の判定結果がYESとなったと
きは、そのチャンネル番号を変数kに代入し(S8
2)、当該WAVEデータをハードディスク装置23か
ら読み出して前記第1のRAM12中の空き領域にロー
ドする(S83)。そして、ステップS84に進み、前
記ステップS83において当該WAVEデータを格納し
た領域を、kチャンネルの新たなPCバッファとして、
対応する先頭アドレスSA[k]、終了アドレスEA
[k]および割り込み要求アドレスIA[k](=EA
[k])を前記レジスタ40に設定する。
【0089】次に、対応する転送開始フラグTWF
[k]を「1」にセットし(S85)、それに応じて、
第1の転送回路31は該WAVEデータの先頭波形をP
CバッファからPバッファに順次転送する。そして、対
応する再生開始カウント値PSC[x]および再生停止
カウント値PEC[x]をセットする(S86)。以上
のように、チャンネル割り込みが発生したときに、次に
再生されるデータを前記PCバッファに転送し、対応す
る波形再生のための準備処理が実行される。このように
して準備されたkチャンネルのWAVEデータは、図8
のシーケンスの準備処理で説明したn個のWAVEデー
タと同様の方法で、PSC[k]からPEC[k]のタ
イミングに再生される。
【0090】次に、前記ステップS78(図8)におけ
るその他割り込み設定に対応する制御割り込み処理につ
いて、図9の(b)に示すフローチャートを参照して説
明する。前記カウンタ38の計数値が前記ステップS7
8によりレジスタに設定されたカウント値となり前記制
御割り込みが発生されると、前記CPU10は、まず、
このタイミングの制御命令(前記図7の(a)に示す例
では「W4レベル制御命令」)に基づく制御処理を実行
する。これは、例えば、当該制御命令に対応するレベル
制御データ等を前記レジスタ40に書き込むことにより
実行され、ミキサ34における当該チャンネルのレベル
が制御される。また、効果制御命令の場合は、対応する
DSP制御パラメータ等が前記レジスタ40に書き込ま
れ、DSPで行われているエフェクト処理の内容が制御
される。
【0091】次に、前記CPU10は、ステップS92
に進み、前記シーケンスデータ中に次の制御命令がある
か否かをサーチする。そして、制御命令が存在しなかっ
たときには、そのまま、この制御割り込み処理を終了す
る。一方、前記ステップS92の結果、次の制御命令が
見つかったときは、その制御命令のタイミング情報、す
なわち、その制御命令が実行されるタイミングを示すカ
ウント値を前記時間データに基づいて算出し、それを前
記レジスタに設定する(S93)。そして、この制御割
り込み処理を終了する。これにより、次の制御命令のタ
イミングになったときに、再び制御割り込み処理が実行
されることとなる。このようにして、シーケンスデータ
に基づく、ハードディスク装置23に記憶された複数W
AVEデータのそれぞれ指定タイミングでの再生、およ
び、各指定タイミングでのレベル制御、効果制御が行わ
れる。
【0092】さて、以上では、(1)第1のRAM12
上のPCバッファに格納されているWAVEデータを再
生する場合、および、(2)シーケンス再生を行う場合
について説明した。次に、(3)ハードディスク等に記
憶されている波形をダイレクトに再生するダイレクト再
生について説明する。
【0093】前記ハードディスク装置23あるいはCD
−ROM装置24等の外部記憶装置に格納されている長
時間のWAVEデータを順次読み込みながら再生するダ
イレクト再生の場合には、前述したように、前記割り込
み要求アドレスIA[x]をPCバッファの中間位置お
よび最終位置に繰り返し設定する。そして、当該割り込
み処理ルーチンにおいて前記外部記憶装置から当該波形
サンプルデータをPCバッファに順次読み込むようにす
ることにより、前記第1のRAM12上のPCバッファ
をダブルバッファとして使用し、長時間のWAVEデー
タを順次再生することができる。また、前記ネットワー
クインターフェース回路27を介して前記ネットワーク
26からWAVEデータを受信しつつ、再生することも
可能である。この場合にも、前記ダイレクト再生の場合
と同様に、前記PCバッファをダブルバッファとして使
用する。
【0094】さらに、本発明においては、前記CPU1
0により波形サンプルデータをソフトウエアにより生成
するいわゆるソフトウエア音源を用いて生成した波形サ
ンプルデータを再生することも可能である。この場合に
は、図示しないMIDIインターフェース等を通じて入
力されたMIDIデータに基づいて前記CPU10によ
り例えば16チャンネル分の楽音波形サンプルを演算生
成し、該演算生成した楽音波形サンプルを前記第1のR
AM12上のPCバッファに書き込むようにする。そし
て、前述した実施の形態の場合と同様にして、このPC
バッファに書き込まれた波形サンプルデータを再生す
る。この方法によれば、前記DSP35により生成した
楽音に対するエフェクト付与等を行うことができ、前記
CPU10により生成した楽音に対するエフェクト処理
まで実行する通常のソフトウエア音源の場合に比較して
CPU10の処理負荷を少なくすることが可能となる。
【0095】なお、上述した実施の形態においては、各
DACサイクルに1チャンネルの32サンプルをバース
ト転送するようになっていたが、各DACサイクル毎に
最大nチャンネル分バースト転送するようにしてもよい
し、また、各チャンネルで異なるサンプル数分をバース
ト転送するようにしてもよい。このように変更すれば、
バスを長く占有してしまうものの、第1の転送回路によ
る転送はより安定する。また、上述した実施の形態で
は、1度のバースト転送は32サンプル固定であった
が、バースト転送するサンプル数を各チャンネルの空き
容量に応じて、空き容量の多い場合には48サンプル、
さらに多い場合には64サンプルのように、変更しても
よい。このように変更すれば、第1の転送回路の転送遅
れが生じる可能性が下がり、転送の安定性が向上する。
【0096】さらに、上述した実施の形態では、バッフ
ァメモリのサイズは1Kワード固定であったが、この容
量を自由に設定できるようにしてもよい。容量を大きく
すれば再生の安定度が向上するし、小さくすれば回路構
成が簡単になる。また、各チャンネル毎に異なる容量が
設定できるようにしてもよい。その場合、安定して再生
したいチャンネルのバッファメモリを、大きな容量に設
定すればよい。さらにまた、上述した実施の形態におい
ては、シーケンス再生のときにnこの波形データをハー
ドディスク装置からメモリにロードするようになってい
たが、この部分に関してはいろいろな変更を行うことが
できる。例えば、メモリ上で波形データの記憶に使用す
る容量の上限を設け、シーケンスで再生する複数の波形
データを、先に再生されるものからその上限に達するま
で順次メモリにロードするようにしてもよい。あるい
は、シーケンスで現在再生中の位置から所定時間分先
(未来)の位置で再生される波形データまでをメモリに
ロードするようにしてもよい。
【0097】さらにまた、上述した実施の形態において
は、確保するチャンネル数とロードする波形データの数
がともにn個で共通になっていたが、互いに異なる個数
であってもよい。さらにまた、上述した実施の形態にお
いては、シーケンス再生を開始する際に必要なチャンネ
ル数を検出して使用するチャンネル数nを決定したが、
このnを予めシーケンスデータ毎に指定しておいたり、
手動でnを設定するようにしてもよい。さらにまた、上
述した実施の形態においては、前記PCバッファを第1
のRAM12上に設けるものとして説明したが、これに
限られることはなく、前記第2のRAM21上にPCバ
ッファを設けるようにしても良い。要するに、前記CP
U10のメモリ空間上に、前記PCバッファが配置され
ていればよい。さらにまた、上述した実施の形態におい
ては、前記サウンド入出力ボード30上にA/D変換器
36およびD/A変換器37を設けているが、これらの
回路をサウンド入出力ボード上に設けず、USB(Univ
esal Serial Bus)あるいはIEEE1394等のシリ
アルインターフェースを介してデジタルオーディオ機器
等に接続するようにしても良い。この場合には、デジタ
ルデータで入出力を行うことができ、ノイズ等の混入を
防止することができる。
【0098】さらにまた、前述したPバッファ、Rバッ
ファのサイズ、再生および録音のチャンネル数、ミキサ
のチャンネル数、波形サンプルデータのビット数等は、
いずれも、上述した実施の形態に記載した数値に限られ
ることはなく、それぞれ、任意の値に変更することが可
能である。さらにまた、上述した実施の形態において
は、前記サウンド入出力ボード30がPCIバスに接続
されているものとして説明したが、これに限られること
はなく、バースト転送を行うことのできる高速バスであ
れば、全く同様に適用することができる。
【0099】
【発明の効果】以上説明したように、本発明の波形再生
装置、波形出力回路および波形再生方法によれば、PC
Iバス等の高速バスの有するバースト転送機能を有効に
使用して波形サンプルデータの入出力を行っているの
で、波形再生に要するCPUの負荷を軽減することがで
きる。また、複数チャンネルの波形サンプルデータの出
力が可能であるため、高品質の波形再生を行うことが可
能となる。
【図面の簡単な説明】
【図1】 本発明の一実施の形態である波形録音再生装
置における一実施の形態の構成を示すブロック図であ
る。
【図2】 図1に示した実施の形態におけるサウンド入
出力ボードの構成例を示すブロック図である。
【図3】 図1に示した実施の形態におけるデータの流
れを説明するための図である。
【図4】 本発明の一実施の形態である波形録音再生装
置におけるメインルーチンのフローチャートである。
【図5】 本発明の一実施の形態である波形録音再生装
置における再生指示イベント処理および第1の転送回路
の動作を説明するためのフローチャートである。
【図6】 本発明の一実施の形態である波形録音再生装
置における第2の転送回路の動作およびタイミング発生
処理を説明するためのフローチャートである。
【図7】 本発明の一実施の形態である波形録音再生装
置におけるシーケンスデータおよび第1のRAMにおけ
る記憶領域の使用例を説明するための図である。
【図8】 本発明の一実施の形態である波形録音再生装
置におけるシーケンス再生指示イベント処理を説明する
ためのフローチャートである。
【図9】 本発明の一実施の形態である波形録音再生装
置におけるチャンネル割込処理および制御割込処理を説
明するためのフローチャートである。
【符号の説明】
10 CPU、11 ROM、12、21、32 RA
M、13 表示器、14、16、22 インターフェー
ス回路、15 キーボード、17 タイマ、18 ロー
カルバス、19 HOST−PCIブリッジ回路、20
PCIバス、23 ハードディスク装置、24 CD
−ROM装置、25 SCSIインターフェース回路、
26 ネットワーク、27 ネットワークインターフェ
ース回路、28 マイクロフォン、29 サウンドシス
テム、30 サウンド入出力ボード、31、33 転送
回路、34 ミキサ、35 DSP、36 A/D変換
器、37 D/A変換器、38 カウンタ、39 タイ
ミング発生部、40 レジスタ
フロントページの続き (56)参考文献 特開 平3−113664(JP,A) 特開 昭64−72254(JP,A) 特開 平9−179556(JP,A) 特開 昭59−69827(JP,A) 特開 平1−255922(JP,A) 特開 平1−284950(JP,A) 特開 平4−169953(JP,A) 特開 昭55−123721(JP,A) 実開 平2−111843(JP,U) 特公 昭58−46727(JP,B2) 国際公開97/31363(WO,A1) 国際公開96/18995(WO,A1) (58)調査した分野(Int.Cl.7,DB名) G10H 1/00 - 7/12 IBM Technical Disc losure Bulletin

Claims (10)

    (57)【特許請求の範囲】
  1. 【請求項1】 装置全体の制御を行なう中央処理装置
    と、 複数チャンネルの波形データを記憶するメモリと、 前記複数チャンネルの各チャンネル毎に複数サンプルの
    波形データを記憶するバッファメモリと、 サンプリング周期毎に複数チャンネルの波形データが入
    力されるディジタルオーディオ回路と、 バースト転送機能を有するバスと、 前記バスを介して、前記メモリに記憶された波形データ
    を所定の複数サンプルを単位として前記バッファメモリ
    にバースト転送する第1の転送回路と、 前記バッファメモリに記憶された複数チャンネルの波形
    データを、各サンプリング周期毎に各チャンネルにつき
    1サンプルずつ読み出して前記ディジタルオーディオ回
    路に転送する第2の転送回路とを有し、 前記第1の転送回路は、前記第2の転送回路による前記
    波形データの前記ディジタルオーディオ回路への転送が
    開始されるのに先立って、前記バスの使用権を獲得して
    該転送が開始されるチャンネルの波形データの先頭部分
    の波形データを前記所定の複数サンプルを単位として前
    記メモリから前記バッファメモリにバースト転送し、前
    記第2の転送回路による波形データの転送により前記バ
    ッファメモリに所定量の空きが生じたとき、前記バスの
    使用権を獲得して前記バッファメモリへ転送済みの波形
    データに後続する波形データを前記所定の複数サンプル
    を単位として前記メモリから前記バッファメモリにバー
    スト転送するようになされており、かつ、前記バッファ
    メモリに前記所定量の空きが生じたチャンネルが複数あ
    るときには、1回の前記バスの使用権の獲得時に予め定
    められた数以内の該複数のチャンネルについてまとめて
    前記バースト転送を行うようになされていることを特徴
    とする波形再生装置。
  2. 【請求項2】 装置全体の制御を行なう中央処理装置
    と、 複数チャンネルの波形データを記憶するメモリと、 前記複数チャンネルの各チャンネル毎に複数サンプルの
    波形データを記憶するバッファメモリであって、各サン
    プリング周期において第1の転送回路と第2の転送回路
    により時分割でアクセスされるバッファメモリと、 サンプリング周期毎に複数チャンネルの波形データが入
    力されるディジタルオーディオ回路と、 バースト転送機能を有するバスと、 前記バスを介して、前記メモリに記憶された波形データ
    を第1の所定数の複数サンプルを単位として前記バッフ
    ァメモリにバースト転送する第1の転送回路と、 前記バッファメモリに記憶された複数チャンネルの波形
    データを、各サンプリング周期毎に各チャンネルにつき
    1サンプルずつ読み出して前記ディジタルオーディオ回
    路に転送する第2の転送回路とを有し、 前記第1の転送回路は、前記第2の転送回路による前記
    波形データの前記ディジタルオーディオ回路への転送が
    開始されるのに先立って、該転送が開始されるチャンネ
    ルの波形データの先頭部分の波形データを前記第1の所
    定数の複数サンプル単位で前記メモリから前記バッファ
    メモリにバースト転送し、前記第2の転送回路による波
    形データの転送により前記バッファメモリに複数回の前
    記バースト転送を必要とする第2の所定数サンプル分の
    空きが生じたとき、前記バッファメモリへ転送済みの波
    形データに後続する波形データを、前記第1の所定数の
    複数サンプル単位で前記メモリから前記バッファメモリ
    に繰り返しバースト転送を行い、その結果、前記バッフ
    ァメモリの空きが前記第1の所定数未満となったとき、
    そのバースト転送を停止するようになされていることを
    特徴とする波形再生装置。
  3. 【請求項3】 装置全体の制御を行なう中央処理装置
    と、 複数チャンネルの波形データを記憶するメモリと、 前記複数チャンネルの各チャンネル毎に複数サンプルの
    波形データを記憶するバッファメモリと、 サンプリング周期毎に複数チャンネルの波形データが入
    力されるディジタルオーディオ回路と、 バースト転送機能を有するバスと、 前記バスを介して、前記メモリに記憶された波形データ
    を所定の複数サンプルを単位として前記バッファメモリ
    にバースト転送する第1の転送回路と、 前記バッファメモリに記憶された複数チャンネルの波形
    データを、各サンプリング周期毎に各チャンネルにつき
    1サンプルずつ読み出して前記ディジタルオーディオ回
    路に転送する第2の転送回路とを有し、 前記第1の転送回路は、前記第2の転送回路による前記
    波形データの前記ディジタルオーディオ回路への転送が
    開始されるのに先立って、該転送が開始されるチャンネ
    ルの波形データの先頭部分の波形データを前記複数サン
    プル単位で前記メモリから前記バッファメモリにバース
    ト転送し、前記第2の転送回路による波形データの転送
    により前記バッファメモリに所定量の空きが生じたと
    き、前記バッファメモリへ転送済みの波形データに後続
    する波形データを前記複数サンプル単位で前記メモリか
    ら前記バッファメモリにバースト転送するようになされ
    ており、かつ、前記バッファメモリに所定量の空きが生
    じたチャンネルが複数ある場合には、前記バッファメモ
    リの空き量の大きいチャンネルについて優先的に前記後
    続する波形データのバースト転送を行うようになされて
    いることを特徴とする波形再生装置。
  4. 【請求項4】 装置全体の制御を行なう中央処理装置
    と、 複数の再生チャンネルの波形データを記憶するととも
    に、複数の録音チャンネルの波形データが記憶されるメ
    モリと、 前記複数の再生チャンネルと前記複数の録音チャンネル
    の各チャンネル毎に複数サンプルの波形データを記憶す
    るバッファメモリであって、各サンプリング周期におい
    て第1の転送回路と第2の転送回路により時分割でアク
    セスされるバッファメモリと、 サンプリング周期毎に、前記録音チャンネルの波形デー
    タが出力されるととともに前記再生チャンネルの波形デ
    ータが入力されるディジタルオーディオ回路と、 バースト転送機能を有するバスと、 各サンプリング周期において、前記バスを介して前記バ
    ッファメモリに記憶された前記録音チャンネルの波形デ
    ータを前記メモリに複数サンプル単位でバースト転送す
    る動作と、前記バスを介して前記メモリから前記バッフ
    ァメモリに前記再生チャンネルの波形データを複数サン
    プル単位でバースト転送する動作を時分割で行なう第1
    の転送回路と、 各サンプリング周期において、前記ディジタルオーディ
    オ回路から各録音チャンネルにつき1サンプルずつ出力
    される波形データを前記バッファメモリに書き込む動作
    と、前記バッファメモリに記憶された前記再生チャンネ
    ルの波形データを各チャンネルにつき1サンプルずつ前
    記ディジタルオーディオ回路に転送する動作を時分割で
    行なう第2の転送回路とを有することを特徴とする波形
    録音再生装置。
  5. 【請求項5】 バースト転送機能を有するバスに接続さ
    れる波形出力回路であって、 複数チャンネルの各チャンネル毎に複数サンプルの波形
    データを記憶するバッファメモリと、 前記バスを介して、複数チャンネルの波形データを記憶
    するメモリから1ないし複数チャンネルの波形データを
    所定の複数サンプルを単位として前記バッファメモリに
    バースト転送する第1の転送回路と、 サンプリング周期毎に複数チャンネルの波形データが入
    力されるディジタルオーディオ回路と、 前記バッファメモリに記憶された複数チャンネルの波形
    データを、各サンプリング周期毎に各チャンネルにつき
    1サンプルずつ読み出して前記ディジタルオーディオ回
    路に転送する第2の転送回路とを有し、 前記第1の転送回路は、前記第2の転送回路による前記
    波形データの前記ディジタルオーディオ回路への転送が
    開始されるのに先立って、前記バスの使用権を獲得して
    該転送が開始されるチャンネルの波形データの先頭部分
    の波形データを前記所定の複数サンプルを単位として前
    記メモリから前記バッファメモリにバースト転送し、前
    記第2の転送回路による波形データの転送により前記バ
    ッファメモリに所定量の空きが生じたとき、前記バスの
    使用権を獲得して前記バッファメモリへ転送済みの波形
    データに後続する波形データを前記所定の複数サンプル
    を単位として前記メモリから前記バッファメモリにバー
    スト転送するようになされており、かつ、前記バッファ
    メモリに前記所定量の空きが生じたチャンネルが複数あ
    るときには、1回の前記バスの使用権の獲得時に予め定
    められた数以内の該複数のチャンネルについてまとめて
    前記バースト転送を行うようになされていることを特徴
    とする波形出力回路。
  6. 【請求項6】 バースト転送機能を有するバスに接続さ
    れる波形出力回路であって、 複数チャンネルの各チャンネル毎に複数サンプルの波形
    データを記憶するバッファメモリであって、各サンプリ
    ング周期において第1の転送回路と第2の転送回路によ
    り時分割でアクセスされるバッファメモリと、 前記バスを介して、複数チャンネルの波形データを記憶
    するメモリから1ないし複数チャンネルの波形データを
    第1の所定数の複数サンプルを単位として前記バッファ
    メモリにバースト転送する第1の転送回路と、 サンプリング周期毎に複数チャンネルの波形データが入
    力されるディジタルオーディオ回路と、 前記バッファメモリに記憶された複数チャンネルの波形
    データを、各サンプリング周期毎に各チャンネルにつき
    1サンプルずつ読み出して前記ディジタルオーディオ回
    路に転送する第2の転送回路とを有し、 前記第1の転送回路は、前記第2の転送回路による前記
    波形データの前記ディジタルオーディオ回路への転送が
    開始されるのに先立って、該転送が開始されるチャンネ
    ルの波形データの先頭部分の波形データを前記第1の所
    定数の複数サンプル単位で前記メモリから前記バッファ
    メモリにバースト転送し、前記第2の転送回路による波
    形データの転送により前記バッファメモリに複数回の前
    記バースト転送を必要とする第2の所定数サンプル分の
    空きが生じたとき、前記バッファメモリへ転送済みの波
    形データに後続する波形データを、前記第1の所定数の
    複数サンプル単位で前記メモリから前記バッファメモリ
    に繰り返しバースト転送し、その結果、前記バッファメ
    モリの空きが前記第1の所定数未満となったとき、その
    バースト転送を停止するようになされていることを特徴
    とする波形出力回路。
  7. 【請求項7】 バースト転送機能を有するバスに接続さ
    れる波形入出力回路であって、 複数の録音チャンネルと複数の再生チャンネルの各チャ
    ンネル毎に複数サンプルの波形データを記憶するバッフ
    ァメモリであって、各サンプリング周期において第1の
    転送回路と第2の転送回路により時分割でアクセスされ
    るバッファメモリと、 サンプリング周期毎に、前記録音チャンネルの波形デー
    タが出力されるとともに前記再生チャンネルの波形デー
    タが入力されるディジタルオーディオ回路と、 各サンプリング周期において、前記バスを介して前記バ
    ッファメモリに記憶された前記録音チャンネルの波形デ
    ータをメモリに複数サンプル単位でバースト転送する動
    作と、前記バスを介してメモリから前記バッファメモリ
    に前記再生チャンネルの波形データを複数サンプル単位
    でバースト転送する動作を時分割で行なう第1の転送回
    路と、 各サンプリング周期において、前記ディジタルオーディ
    オ回路から各録音チャンネルにつき1サンプルずつ出力
    される波形データを前記バッファメモリに書き込む動作
    と、前記バッファメモリに記憶された前記再生チャンネ
    ルの波形データを各チャンネルにつき1サンプルずつ読
    み出して前記ディジタルオーディオ回路に転送する動作
    を時分割で行なう第2の転送回路とを有することを特徴
    とする波形入出力回路。
  8. 【請求項8】 バースト転送機能を有するバスを利用し
    た波形再生方法であって、 メモリに複数チャンネルの波形データを記憶する記憶ス
    テップと、 前記バスを介して、前記メモリに記憶された波形データ
    を、バッファメモリの各チャンネル毎に設けられ前記メ
    モリに記憶されている各チャンネルの波形データの一部
    のデータを記憶可能な記憶領域に所定の複数サンプルを
    単位としてバースト転送する第1の転送ステップと、 前記バッファメモリに記憶された複数チャンネルの波形
    データを、各サンプリング周期毎に各チャンネルにつき
    1サンプルずつ読み出してディジタルオーディオ回路に
    転送する第2の転送ステップとを有し、 前記第1の転送ステップは、前記第2の転送ステップに
    よる前記波形データの前記ディジタルオーディオ回路へ
    の転送が開始されるのに先立って、前記バスの使用権を
    獲得して該転送が開始されるチャンネルの波形データの
    先頭部分の波形データを前記所定の複数サンプルを単位
    として前記メモリから前記バッファメモリにバースト転
    送し、前記第2の転送ステップによる波形データの転送
    により前記バッファメモリに所定量の空きが生じたと
    き、前記バスの使用権を獲得して前記バッファメモリへ
    転送済みの波形データに後続する波形データを前記所定
    の複数サンプルを単位として前記メモリから前記バッフ
    ァメモリにバースト転送するようになされており、か
    つ、前記バッファメモリに前記所定量の空きが生じたチ
    ャンネルが複数あるときには、1回の前記バスの使用権
    の獲得時に予め定められた数以内の該複数のチャンネル
    についてまとめて前記バースト転送を行うようになされ
    ていることを特徴とする波形再生方法。
  9. 【請求項9】 バースト転送機能を有するバスを利用し
    た波形再生方法であって、 メモリに複数チャンネルの波形データを記憶する記憶ス
    テップと、 前記バスを介して、前記メモリに記憶された波形データ
    を、バッファメモリの各チャンネル毎に設けられ前記メ
    モリに記憶されている各チャンネルの波形データの一部
    のデータを記憶可能な記憶領域に第1の所定数の複数サ
    ンプルを単位としてバースト転送する第1の転送ステッ
    プと、 前記バッファメモリに記憶された複数チャンネルの波形
    データを、各サンプリング周期毎に各チャンネルにつき
    1サンプルずつ読み出してディジタルオーディオ回路に
    転送する第2の転送ステップとを有し、 前記第1の転送ステップは、前記第2の転送ステップに
    よる前記波形データの前記ディジタルオーディオ回路へ
    の転送が開始されるのに先立って、該転送が開始される
    チャンネルの波形データの先頭部分の波形データを前記
    第1の所定数の複数サンプル単位で前記メモリから前記
    バッファメモリにバースト転送し、前記第2の転送ステ
    ップによる波形データの転送により前記バッファメモリ
    複数回の前記バースト転送を必要とする第2の所定数
    サンプル分の空きが生じたとき、前記バッファメモリへ
    転送済みの波形データに後続する波形データを前記第1
    の所定数の複数サンプル単位で前記メモリから前記バッ
    ファメモリに繰り返しバースト転送し、その結果、前記
    バッファメモリの空きが前記第1の所定数未満となった
    とき、そのバースト転送を停止するものであり、 前記第1の転送ステップと前記第2の転送ステップは、
    各サンプリング周期において時分割で実行されるように
    なされていることを特徴とする波形再生方法。
  10. 【請求項10】 バースト転送機能を有するバスを利用
    した波形録音再生方法であって、 メモリに複数の再生チャンネルの波形データを記憶する
    記憶ステップと、 前記バスを介して、前記メモリに記憶された再生チャン
    ネルの波形データを、バッファメモリの前記再生チャン
    ネルの各チャンネル毎に設けられ前記メモリに記憶され
    ている各再生チャンネルの波形データの一部のデータを
    記憶可能な記憶領域に複数サンプル単位でバースト転送
    する第1の転送ステップと、 前記バッファメモリに記憶された再生チャンネルの波形
    データを、各サンプリング周期毎に各チャンネルにつき
    1サンプルずつ読み出してディジタルオーディオ回路に
    転送する第2の転送ステップと、 各サンプリング周期毎に複数の録音チャンネルの各チャ
    ンネル毎に1サンプルずつ前記ディジタルオーディオ回
    路から出力される波形データを前記バッファメモリの前
    記録音チャンネルの各チャンネル毎に設けられた記憶領
    域に転送する第3の転送ステップと、 前記バスを介して、前記第3の転送ステップにより前記
    バッファメモリに記憶された前記各録音チャンネルの波
    形データをメモリに複数サンプル単位でバースト転送す
    る第4の転送ステップとを有し、 前記第1ないし第4の転送ステップは、各サンプリング
    周期において時分割で実行されるようになされているこ
    とを特徴とする波形録音再生方法。
JP01354498A 1998-01-09 1998-01-09 波形再生装置、波形録音再生装置、波形出力回路、波形入出力回路、波形再生方法および波形録音再生方法 Expired - Fee Related JP3235557B2 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP01354498A JP3235557B2 (ja) 1998-01-09 1998-01-09 波形再生装置、波形録音再生装置、波形出力回路、波形入出力回路、波形再生方法および波形録音再生方法
US09/222,753 US6366971B1 (en) 1998-01-09 1998-12-29 Audio system for playback of waveform sample data
US09/948,157 US6553436B2 (en) 1998-01-09 2001-09-06 Apparatus and method for playback of waveform sample data and sequence playback of waveform sample data

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP01354498A JP3235557B2 (ja) 1998-01-09 1998-01-09 波形再生装置、波形録音再生装置、波形出力回路、波形入出力回路、波形再生方法および波形録音再生方法

Related Child Applications (1)

Application Number Title Priority Date Filing Date
JP2001213754A Division JP4120979B2 (ja) 2001-07-13 2001-07-13 波形再生装置

Publications (2)

Publication Number Publication Date
JPH11202869A JPH11202869A (ja) 1999-07-30
JP3235557B2 true JP3235557B2 (ja) 2001-12-04

Family

ID=11836109

Family Applications (1)

Application Number Title Priority Date Filing Date
JP01354498A Expired - Fee Related JP3235557B2 (ja) 1998-01-09 1998-01-09 波形再生装置、波形録音再生装置、波形出力回路、波形入出力回路、波形再生方法および波形録音再生方法

Country Status (1)

Country Link
JP (1) JP3235557B2 (ja)

Also Published As

Publication number Publication date
JPH11202869A (ja) 1999-07-30

Similar Documents

Publication Publication Date Title
JP3161561B2 (ja) マルチメディア・システム
US6553436B2 (en) Apparatus and method for playback of waveform sample data and sequence playback of waveform sample data
JP3149093B2 (ja) 自動演奏装置
JP3637578B2 (ja) 楽音生成方法
JP3163984B2 (ja) 楽音発生装置
JPH0922287A (ja) 楽音波形生成方法
JP3127873B2 (ja) 波形再生方法、波形再生装置、波形出力回路およびシーケンス再生装置
JP3235557B2 (ja) 波形再生装置、波形録音再生装置、波形出力回路、波形入出力回路、波形再生方法および波形録音再生方法
JP4120979B2 (ja) 波形再生装置
JPH07121181A (ja) 音声情報処理装置
JP3637577B2 (ja) 楽音生成方法
JP3152156B2 (ja) 楽音発生システム、楽音発生装置および楽音発生方法
JP3003559B2 (ja) 楽音生成方法
JP3781171B2 (ja) 楽音発生方法
JP3518357B2 (ja) 楽音生成方法、楽音生成装置及び楽音生成処理プログラムを記録したコンピュータ読み取り可能な記録媒体
JP3405181B2 (ja) 楽音発生方法
JPH1031486A (ja) 演奏データ記憶再生方法および装置
WO2006030860A1 (ja) 電子機器、デジタル信号生成方法、デジタル信号記録媒体、および信号処理装置
JPH09134177A (ja) 電子楽器用音源装置
JP2709965B2 (ja) Bgm再生に用いる音楽伝送再生システム
JP4102931B2 (ja) 音波形合成装置
JP3407625B2 (ja) 自動演奏装置、自動演奏方法及びプログラムを記録した媒体
JP3060920B2 (ja) ディジタル信号処理装置
JP3758267B2 (ja) 音源回路設定方法、該方法によって設定される音源回路を備えたカラオケ装置、および記録媒体
JP2576323B2 (ja) 演奏記録再生装置

Legal Events

Date Code Title Description
A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20010515

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20010828

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313532

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20070928

Year of fee payment: 6

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20080928

Year of fee payment: 7

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20090928

Year of fee payment: 8

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100928

Year of fee payment: 9

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100928

Year of fee payment: 9

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110928

Year of fee payment: 10

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120928

Year of fee payment: 11

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130928

Year of fee payment: 12

LAPS Cancellation because of no payment of annual fees