JP2004227004A - メモリ使用音源装置 - Google Patents
メモリ使用音源装置 Download PDFInfo
- Publication number
- JP2004227004A JP2004227004A JP2004083463A JP2004083463A JP2004227004A JP 2004227004 A JP2004227004 A JP 2004227004A JP 2004083463 A JP2004083463 A JP 2004083463A JP 2004083463 A JP2004083463 A JP 2004083463A JP 2004227004 A JP2004227004 A JP 2004227004A
- Authority
- JP
- Japan
- Prior art keywords
- data
- address
- read
- memory
- write
- 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.)
- Granted
Links
- 230000004044 response Effects 0.000 claims description 35
- 238000000034 method Methods 0.000 claims description 16
- 238000001514 detection method Methods 0.000 description 17
- 230000003111 delayed effect Effects 0.000 description 9
- 230000001934 delay Effects 0.000 description 8
- 238000010586 diagram Methods 0.000 description 8
- 238000005070 sampling Methods 0.000 description 4
- 238000006243 chemical reaction Methods 0.000 description 3
- 230000000694 effects Effects 0.000 description 3
- 230000000630 rising effect Effects 0.000 description 2
- 238000009825 accumulation Methods 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 230000005236 sound signal Effects 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
Images
Landscapes
- Electrophonic Musical Instruments (AREA)
Abstract
【解決手段】 楽音生成手段は、時分割チャンネル処理で動作し、処理装置からの指示に従って楽音生成のためのアドレスが設定されるアドレスカウンタ手段を含み、該設定されたアドレスに基づいて、メモリから音源用のデータを読み出す。制御手段は、処理装置からメモリにデータを書き込むときにアドレスカウンタ手段にデータ書き込みのためのアドレスを設定するとともに、書き込もうとするデータをバッファに書き込む。楽音生成手段では、アドレスカウンタ手段に設定された前記データ書き込みのためのアドレスに基づいて前記バッファのデータを、時分割チャンネル中の空きチャンネルを使用して、メモリに書き込む。処理装置がメモリからデータを読み出す場合も同様に、空きチャンネルを使用して読み出したデータをバッファに保存する。
【選択図】 図3
Description
このような波形メモリを搭載した電子楽器においては、複数の楽音信号を同時に発音するために、時分割チャンネル処理という手法を用いている。この時分割チャンネル処理とは、ある一定時間を複数にタイムスロットに分割し、そのタイムスロット毎に波形データを読み出し、その一定時間内の複数のタイムスロットで読み出された波形データを累算することによって、波形メモリからは一定時間毎に複数の波形データが同時に読み出されるようにすることをいう。
この発明によれば、処理装置からの指示に従って楽音生成のためのアドレスが設定され、これに基づき楽音信号を生成する一方で、処理装置からメモリにデータを書き込むときには、処理装置からの指示に従ってデータ書き込みのためのアドレスが設定され、かつ、書き込もうとするデータがバッファで一時保存される。よって、楽音生成手段では、データ書き込みのためのアドレスに基づいてバッファのデータを、時分割チャンネル中の空きチャンネルを使用して、メモリに書き込めばよいため、書き込み処理に余裕をもたせることができる。従って、処理装置がこのメモリ使用音源装置と非同期で動作するものであっても、問題のない制御を行うことができる。その場合、1回の書き込み指示で複数のデータを供給し、これらをバッファに一時保存しておき、これをメモリに順次書き込むように制御することで処理装置の効率的なバス利用が行える。
一実施態様として、前記処理装置は、書き込みアドレスを指示しかつ書き込むべき複数のデータを供給すると共に書き込み指示を発生し、前記制御手段は、前記書き込み指示に応じて、指示された前記書き込みアドレスを前記アドレスカウンタ手段に設定すると共に、供給された前記複数のデータを前記バッファに書き込み、前記楽音生成手段は、前記書き込み指示に応じて、前記バッファの複数のデータを前記書き込みアドレスを基にして前記メモリに順次書き込み、該順次書き込みが終了したら書き込み終了通知を発生し、前記処理装置は、前記書き込み終了通知に応じて、次の書き込み指示が発生可能となる。
この発明によれば、処理装置からの指示に従って楽音生成のためのアドレスが設定され、これに基づき楽音信号を生成する一方で、メモリから処理装置にデータを読み出すときには、処理装置からの指示に従ってデータ読み出しのためのアドレスが設定され、時分割チャンネル中の空きチャンネルを使用して前記メモリから読み出されたデータがバッファに一時保存される。よって、処理装置では、バッファに保存してあるデータを取り込めばよいため、取り込み処理に余裕をもたせることができる。従って、処理装置がこのメモリ使用音源装置と非同期で動作するものであっても、問題のない制御を行うことができる。その場合、1回の読み出し指示で複数のデータを読み出し、これらをバッファに一時保存しておき、これを処理装置に転送するようにすれば、処理装置の効率的なバス利用が図れる。
一実施態様として、前記処理装置は、読み出しアドレスを指示すると共に読み出し指示を発生し、前記制御手段は、前記読み出し指示に応じて、指示された前記読み出しアドレスを前記アドレスカウンタ手段に設定し、前記楽音生成手段では、前記読み出しアドレスを基にして前記波形メモリから複数のデータを順次読み出して、読み出した複数のデータを前記バッファに書き込み、該順次読み出しが終了したら読み出し終了通知を発生し、前記処理装置は、前記読み出し終了通知に応じて、次の読み出し指示が発生可能となる。
この発明によれば、処理装置から書き込み指示と共にそれぞれnビット(ただしnは任意の整数)からなる第1及び第2のデータの供給を受け、書き込み指示に応じて、供給された第1のデータを第1のバッファに一旦保存し、供給された第2のデータと該第1のバッファに保存された第1のデータとを合成して2nビットからなる第3のデータを作成してこれを第2のバッファに保存し、この第2のバッファに保存された前記第3のデータを、時分割チャンネル中の空きチャンネルを使用して、メモリに書き込む構成であるため、処理装置のバスのビット数よりも多いビット数からなるデータを処理装置からメモリに転送して書き込むような場合に、これを効率的に行うことができる。
この発明によれば、処理装置から第1の読み出し指示を受け、時分割チャンネル中の空きチャンネルを使用して、この第1の読み出し指示に応じて、メモリから2nビット(ただしnは任意の整数)からなる第1のデータを読み出して、読み出した第1のデータをバッファに保存し、該読み出しが終了したら読み出し終了通知を発生し、処理装置では、この読み出し終了通知に応じて、第2及び第3の読み出し指示を発生し、制御手段では、第2の読み出し指示に応じてバッファに保存された2nビットのデータのうちのnビットを処理装置に出力し、第3の読み出し指示に応じて前記バッファに保存された2nビットのデータのうちの残りのnビットを処理装置に出力する構成であるため、処理装置のバスのビット数よりも多いビット数からなるデータをメモリから読み出して処理装置に転送するような場合に、これを効率的に行うことができる。
図2は、本発明の一実施例に係るサンプラータイプの波形メモリ音源を内蔵した電子楽器の全体構成を示す図である。
マイクロプロセッサユニット(CPU)20は、この電子楽器全体の動作を制御するものである。このCPU20に対しては、データ及びアドレスバス2Jを介してROM21、RAM22、鍵盤23、パネルスイッチ24、パネル表示器25、インターフェイス26、アナログ−ディジタル変換器(ADC)27及び音源回路2Aが接続されている。
ROM21はCPU20の各種プログラムや各種データを格納するものであり、リードオンリーメモリ(ROM)で構成されている。
RAM22は、CPU20がプログラムを実行する際に発生する各種データを一時的に記憶するものであり、ランダムアクセスメモリ(RAM)の所定のアドレス領域がそれぞれ割り当てられ、レジスタ、フラグ、バッファ等として利用される。
パネルスイッチ24は、音色、音量、効果等を選択・設定・制御するための各種操作子を含むものである。
パネル表示器25はCPU20の制御状態、設定データの内容等の各種の情報を液晶パネル(LCD)等に表示するものである。
マイク28は音声信号や楽器音等をアナログの電圧信号に変換して、ADC27に出力する。ADC27はマイク28からのアナログの電圧信号をディジタル信号に変換して、データ及びアドレスバス2Jに出力する。
ハードディスク29は数十〜数百メガバイト(MB)の記憶容量を有し、インターフェイス26を介してデータ及びアドレスバス2Jに接続されている。
音源I/O2Bは、データ及びアドレスバス2Jを介してCPU20から供給される演奏データを音源側に入力したり、音源側のデータをデータ及びアドレスバス2Jを介してCPU20に出力したりする。
波形メモリ2Dは、立上り部(アタック部)を構成する複数周期分のデータと、その後の持続部(ループ部)を構成する1周期分のデータとからなる波形データやマイク28によってサンプルされた波形データ等を記憶しており、波形発生部2Cからのアドレス信号を入力し、このアドレス信号に応じた領域に記憶されている波形データを出力する。
チャンネル累算部2Fは、32チャンネル時分割でエンベロープ付与部2Eから出力される各チャンネルの楽音信号を累算処理してDAC2Gに出力する。
音源回路2Aから出力された楽音信号は、サウンドシステム2Hを介してスピーカから発音される。
この実施例では、音源I/O2Bは、CPUバス制御部11、アドレスラッチ(Aラッチ)12、データラッチ(Dラッチ)13、書込用バッファアンプ14、読出用バッファアンプ15、書込用デコーダ16、書込パルス発生部17、読出用デコーダ18、チャンネルラッチ(chラッチ)19、チャンネル変換部(ch変換部)1A、チャンネルカウンタ(chカウンタ)1B、セレクタ1C、楽音制御レジスタ1D、波形メモリI/O1Eから構成される。
書込用バッファアンプ14は、CPUバス制御部11からのイネーブル信号の入力に応じてデータDATAをデータラッチ13に出力する。読出用バッファアンプ15は、CPUバス制御部11からのイネーブル信号の入力に応じて波形メモリI/Oからの読出データWDRをデータバスDATAに出力する。
書込パルス発生部17は、書込用デコーダ16からの書込デコード信号に応じた書込パルス信号WP1を波形メモリI/O1Eの書込アドレス端子WADに、書込パルス信号WP2を楽音制御レジスタ1Dに出力すると共に、ラッチパルスLCをチャンネルラッチ19に出力する。すなわち、書込パルス発生部17はアドレスラッチ12にラッチされているアドレスADRが「0」、「1」、「3」、「4」の場合にそれぞれ、対応するA0、A1、A3及びA4のいずれかの書込パルス信号WP1を出力する。
チャンネル変換部1Aは、アドレスラッチ12からのアドレスADR及びチャネルラッチ19からのチャンネル選択データCSDを入力し、それに基づいて楽音制御レジスタ1Dのどのチャンネルタイミング位置にデータを書き込むのか、そのチャンネル指定アドレスCDAを発生する。
チャンネルカウンタ1Bは、0チャンネルから31チャンネルまでを順次カウントし、そのチャンネル番号をセレクタ1Cに出力する。なお、チャンネルカウンタ1Bは、最後の32番目の31チャンネルに対応した1チャンネル分の期間だけハイレベル“1”をとるようなタイミング信号φ31chを波形メモリI/Oのチャンネル端子chに出力する。
楽音制御レジスタ1Dは、波形発生部2Cにおける波形生成動作を制御するための複数種類のデータ(音高を制御するピッチデータ、楽音の発生の開始及び終了を指示するノートオン、波形スタートアドレス(WSA)、ループスタートアドレス(LPS)、ループエンドアドレス(LPE)及び、その他変調効果やタッチによる音色変化等を制御するデータ)やエンベロープ付与部における音量エンベロープ付与動作を制御するための複数種類のデータ(演算型エンベロープ発生に必要な各ステートのレートデータとレベルデータ、ノートオン及びその他のデータ)をそれぞれ各時分割チャンネルタイミングに対応した領域に格納する複数のレジスタで構成されている。ここで、セレクタ1Cの出力するデータは、複数時分割チャンネル分記憶された各レジスタのデータのうちの、どのチャンネルタイミングのデータをアクセスするか指示するタイミング位置を指示する指示データとして使用される。
一方、CPU20からの楽音制御レジスタ1Dに対する書き込みは、上述したチャンネルカウンタ1Bによる読み出しに重ならないタイミングにおいて、セレクタ1Cがチャンネル変換部1Aの出力するチャンネル指定アドレスCDAを選択しつつ行われる。
この時、チャンネル変換部1Aから楽音制御レジスタ1Dに対して上記指示データとして供給されているチャンネル指示アドレスCDAは、Aラッチ12の指定するアドレスにあるレジスタのチャンネルラッチ19に書き込まれたチャンネル番号に対応したタイミング位置を指定している。書き込み信号*WRのイネーブルで書き込み用デコーダ16にて発生するデコード信号を受けて、書込パルス発生部17は書込パルス信号WP2の複数信号線の中のAラッチ12に指定するアドレスに対応したラインに一発の書き込みパルスを発生する。この書き込みパルスに応じて、楽音制御レジスタ1Dの中の、Aラッチ12のアドレスにより指定された種類のレジスタの、チャンネルラッチ19にラッチされたチャンネル番号に対応したタイミング位置に、Dラッチ13にラッチされた値のデータが書き込まれる。
チャンネル制御レジスタ31には、アドレスADRが「0」の場合に書込パルス発生部17から出力される書込パルス信号A0に応じてデータラッチ13からの書込データWDが書き込まれ、書き込まれたデータのうち動作中信号USEをアクセス回数検出部35及び4連続パルス発生部3Eに出力すると共に、書込読出制御信号W/*Rを4連続パルス発生部3E及びセレクタ3Hの制御端子に出力する。なお、この動作中信号USEは図4の周波数ナンバ発生器(Fナンバ発生器)41にも出力される。
オア回路33は、パルス発生部32から1サンプル読出完了パルスRSPとアドレスADRが「4」の場合に書込パルス発生部17から出力される書込パルス信号A4を入力し、両者の論理和出力をオア回路3F及びアクセス回数検出部35に出力する。
フリップフロップ回路37は、オア回路36からの論理和信号をセット端子Sに、ディレイ3Cからの遅延信号をリセット端子Rに入力し、セット出力をアンド回路38に出力し、その反転出力をゲート回路3Pに出力する。
ゲート回路3Pは、アドレスADRが「2」の場合に読出デコーダ18から出力される読出デコード信号A2を入力した時点でフリップフロップ回路37の反転出力を読出終了データWEDをデータ出力端子DOから読出用バッファアンプ15を介してCPU20に出力する。
ディレイ39は、アンド回路38からの論理積信号を1チャンネル期間だけ遅延し、それをタイミング信号TSとして波形発生部2C及びディレイ3Aに出力する。
ディレイ3Aは、ディレイ39からのタイミング信号を1チャンネル期間だけ遅延し、それを4連続パルス発生部3E及びディレイ3Cに出力する。
ディレイ3Cは、ディレイ3Aからの遅延信号をからに1チャンネル期間だけ遅延し、それをフリップフロップ回路37のリセット端子Rに出力する。
送りパルス発生器3Gは、オア回路3Fからの論理和信号を入力する毎に送りパルスL1〜L4をラッチ3M,3L,3K,3Jに順番に出力する。
ラッチ3Jは、セレクタ3Hからの16ビット構成のデータを送りパルスL4の入力時点でラッチして、次段のラッチ3Kに出力する。ラッチ3Kは、前段のラッチ3Jからのデータを送りパルスL3の入力時点でラッチして、次段のラッチ3Lに出力する。ラッチ3Lは、前段のラッチ3Kからのデータを送りパルスL2の入力時点でラッチして、次段のラッチ3Mに出力する。ラッチ3Mは、前段のラッチ3Lからのデータを送りパルスL1の入力時点でラッチして、セレクタ3N及び波形発生部2Bに出力する。なお、ラッチ3Mからセレクタ3Nに出力されるデータは波形メモリ2Cから読み出されたメモリ読出データMRDであり、一方ラッチ3Mから波形発生部2Cに出力されるデータは波形メモリ2Dに書き込まれるべきメモリ書込データMWDである。
周波数ナンバ(Fナンバ)発生器40は、楽音制御レジスタ1Dからのピッチデータに対応した周波数ナンバ(Fナンバ)をアドレスカウンタ41に出力すると共に、図3のチャンネル制御レジスタ31からの動作中信号USE及びディレイ39からのタイミング信号TSを入力している。動作中信号USEがハイレベル“1”である場合、CPU20のアクセスのために第31チャンネルが使用されており、Fナンバ発生器40はタイミング信号TSが“0”の場合、第31チャンネルのFナンバとして“0”を出力し、タイミング信号TSが“1”の場合、第31チャンネルのFナンバとて“4”をアドレスカウンタ41に出力する。この周波数ナンバは、整数部と小数部とからなるデータである。
加算器43はアドレスカウンタ41からの整数部のアドレスInに補助カウンタ45からの補助アドレスAAの「0」,「1」,「2」,「3」を順次加算する。従って、波形メモリ2Dには時分割チャンネルの1チャンネル内で連続した4個のアドレスInAが順次供給され波形メモリ2D中のアドレスInに対応した4つの連続した波形データが順次読み出されるようになる。一方、加算器44はアドレスカウンタ41からの小数部のアドレスDcに補助カウンタ45からの補助アドレスAAの「0」,「1」,「2」,「3」を加算するので、補間係数メモリ4Aには1チャンネル内でアドレス小数部Dcに応じた、該4つの連続した波形データにそれぞれ対応する4個のアドレスDcAが順次供給され、4つの係数が順次読み出される。
乗算器49は、補間係数メモリ4Aからの補間係数を各メモリ読出データMRDに乗じて補間累算器4Bに出力する。
補間累算器4Bは、乗算器49から順次出力される値を1チャンネル内で累算処理して、1つの補間出力サンプル値としてエンベロープ付与部2Eに出力する。
アンド回路4Eは、チャンネル制御レジスタ31からの動作中信号USEとタイミング信号φ31chとを入力し、両者の論理積信号をアンド回路4F,4G及び反転回路4Jに出力する。反転回路4Hは、チャンネル制御レジスタ31からの書込読出制御信号W/*Rを入力し、その反転出力をアンド回路4Fに出力する。アンド回路4Fは、アンド回路4Eの論理積信号と書込読出制御信号W/*Rの反転出力とを入力し、その論理積信号をバッファアンプ46に出力する。アンド回路4Gは、アンド回路4Eの論理積信号と書込読出制御信号W/*Rとを入力し、両者の論理積信号をバッファアンプ47に出力する。反転回路4Jは、アンド回路4Eの論理積信号を入力し、その反転出力をバッファアンプ48に出力する。
まず、CPU20が波形メモリ2Dから例えば、アドレス「5F」以降に書かれたサンプリング波形データを読み出す処理について説明する。
CPU20は、タイミング信号φ31chのタイミングで波形メモリ2Dのアドレス「5F」から順番にサンプリング波形データを読み出すために、楽音制御レジスタ1Dのタイミング信号φ31chの波形スタートアドレス(WSA)として「5F」を設定する。
次に、CPU20は、アドレスADRとして「A1」を出力する。これに応じて書込用デコーダ16は「A1」に対応した書込デコード信号を書込パルス発生部17に出力し、書込パルス発生部17は、ハイレベル“1”のスタート信号A1をアクセス回数検出部35、オア回路36及びアドレスカウンタ41に出力する。
フリップフロップ回路37のセット端子Sにはオア回路36を介してスタート信号A1が入力するので、フリップフロップ回路37はハイレベル“1”のセット出力Qをアンド回路38に、ローレベル“0”の反転出力*Qをゲート3Pに出力する。
アクセス回数検出部35は、スタート信号A1の入力に応じて検出回数値をクリアする。
アドレスカウンタ41にオア回路42を介してスタート信号A1が入力すると、アドレスカウンタ41は波形メモリ読出アドレスとして楽音制御レジスタ1D内の波形スタートアドレス(WSA)の「5F」をカウンタ初期値としてセットする。
CPU20は、アドレスADRとして「A2」を出力する。これに応じて読出用デコーダ18は「A2」に対応した読出デコード信号A2をゲート3Lに出力し、ゲート3Lを開き、フリップフロップ回路37の反転出力*Qを読出して、該反転出力*Qが“1”になったタイミングで、波形メモリ2Dからのメモリ読出データMRDのラッチ3J,3K,3L,3Mへの取り込みが完了したことを検出する。
すなわち、CPU20がアドレスADRとして「A5」を出力すると、読出用デコーダ18は読出デコード信号A5をセレクタ3Nに出力する。セレクタ3Nは、ラッチ3Mにラッチされているメモリ読出データMRDの上位8ビットを読出データWDRとして読出データバスに出力され、該上位8ビットがバッファ15を介してCPUにより読み出される。次に、CPU20がアドレスADRとして「A6」を出力すると、読出用デコーダ18は読出デコード信号A6をセレクタ3Nに出力する。セレクタ3Nは、ラッチ3Mにラッチされているメモリ読出データMRDの下位8ビットを読出データWDRとして読出データバスに出力され、バッファ15を介してCPUにより読み出される。
一方、送りパルス発生器3Gは、この1サンプル読出完了パルスRSPの入力に応じてラッチ3J,3K,3L,3Mのデータを1段ずつラッチ3M側にシフトする。
この読出動作が終了すると、アクセス回数検出部35はオア回路33から出力される1サンプル読出完了パルスRSPを計数して、4ワード分のデータ読み出しが終了した事を検出し、ハイレベル“1”の検出信号をオア回路36を介してフリップフロップ回路37のセット端子Sに出力する。これによって、フリップフロップ回路37は、再びセットされ、ハイレベル“1”のセット出力Qをアンド回路38に出力する。そして、次回のタイミング信号φ31chの間に波形メモリ2Dから4ワード分のデータが先程と同様に波形メモリ2Dから順次読み出され、4段のラッチ3J,3K,3L,3Mに取り込まれ、その後、再びフリップフロップ回路37がリセットされる。なお、この場合には、波形発生部2Cのアドレスカウンタ41への波形スタートアドレス(WSA)の書込処理は行われずに、前回のカウント値が継続して使用される。
波形メモリ2Dからのデータ読み出し処理を終了する時は、CPU20は、フリップフロップ回路37がリセットされている状態(セット出力Qがローレベル“0”の状態)で、アドレスADRとして「A0」を出力し、書込パルス信号A0をチャンネル制御レジスタ31に出力し、チャンネル制御レジスタ31の動作中信号USEをローレベル“0”とするようなデータDATAを出力する。これによって、チャンネル制御レジスタ31は、ローレベル“0”の動作中信号USEをアクセス回数検出部35及び4連続パルス発生部3E、周波数ナンバ発生器40及びアンド回路4Eに出力するようになるので、これ以降のデータ読み出し動作は行われなくなる。
CPU20は、タイミング信号φ31chのタイミングで波形メモリ2Dのアドレス「6F」から順番にサンプリング波形データを書き込むために、楽音制御レジスタ1Dのタイミング信号φ31chの波形スタートアドレス(WSA)すなわち波形メモリ2Dの書き込み先頭アドレスに「6F」を設定する。
なお、この時点では動作中信号USEはローレベル“0”にしておく。
すなわち、CPU20が最初の波形データの上位8ビットと共にアドレスADRとして「A3」を出力すると、書込用デコーダ16は「A3」に対応した書込デコード信号を書込パルス発生部17に出力し、書込パルス発生部17は、ハイレベル“1”の書込パルス信号A3を上位ラッチ34に出力する。上位ラッチ34は、データラッチ13からの上位8ビットの書込波形データをラッチする。次に、CPU20が同波形データの下位8ビットと共にアドレスADRとして「A4」を出力すると、書込用デコーダ16は「A4」に対応した書込デコード信号を書込パルス発生部17に出力し、書込パルス発生部17は、ハイレベル“1”の書込パルス信号A4をオア回路33及び3Fを介して送りパルス発生器3Gに出力する。
CPU20は、上述の動作(アドレスADR(A3,A4)を交互に出力する動作)を4回繰り返し行うことによって、4ワード分の書込波形データWDをラッチ3J,3K,3L,3Mに蓄える。
アクセス回数検出部35は、スタート信号A1の入力に応じて検出回数値をクリアする。
アドレスカウンタ41は、スタート信号A1をオア回路42を介して入力することによって、波形メモリ書込アドレスとして楽音制御レジスタ1D内の波形スタートアドレス(WSA)の「6F」をカウンタ初期値として格納する。
なお、この場合の上記3個のパルスは、読み出し時(書込読出制御信号W/*Rが“0”の時)に発生する4個のパルスのうちの最初の一発を除いた残りの3個のタイミングで発生している。
このとき、補助カウンタ45は、時分割チャンネルの1チャンネル分の間に、「0」,「1」,「2」,「3」の補助アドレスAAを加算器43及び44に出力するので、波形メモリ2Dには、アドレスカウンタ41からのアドレスInと補助カウンタ45の補助アドレスAAとの加算された4連続のアドレスInAが書込アドレスとして入力する。
ラッチ3J,3K,3L,3Mに蓄積されていた4個のメモリ書込データMWDが波形メモリ2Dに書き込まれると、それに合わせてディレイ3Cからハイレベル“1”の出力がフリップフロップ回路37のリセット端子Rに入力し、フリップフロップ回路37のセット出力Qをローレベル“0”に反転出力*Qをハイレベル“1”にセットする。
書込処理の終了を検出したCPU20は、アドレスADR(A3,A4)を交互に4回ずつ出力し、新たな4ワード分の書込波形データWDをラッチ3J,3K,3L,3Mに蓄え、上述の動作を繰り返し実行して、メモリ書込データMWDを波形メモリ2Dに書き込む。CPU20は、以上の動作を繰り返し実行することにより、波形スタートアドレス(WSA)の「6F」から順次4ずつアドレスを増加させながら、対応するアドレスにメモリ書込データMWDを書き込む。
12 アドレスラッチ
13 データラッチ
14 書込用バッファ
15 読出用バッファアンプ
16 書込用デコーダ
17 書込パルス発生部
18 読出用デコーダ
19 チャンネルラッチ
1A チャンネル変換部
1B チャンネルカウンタ
1C セレクタ
1D 楽音制御レジスタ
1E 波形メモリI/O
Claims (6)
- 音源用のデータを記憶するメモリと、
時分割チャンネル処理で動作し、処理装置からの指示に従って楽音生成のためのアドレスが設定されるアドレスカウンタ手段を含み、該アドレスカウンタ手段に設定された前記楽音生成のためのアドレスに基づいて前記メモリからデータを読み出すことに基づき楽音信号を生成する楽音生成手段と、
前記処理装置から前記メモリにデータを書き込むときに前記アドレスカウンタ手段にデータ書き込みのためのアドレスを設定するとともに、書き込もうとするデータをバッファに書き込む制御手段と
を具備し、前記楽音生成手段では、前記アドレスカウンタ手段に設定された前記データ書き込みのためのアドレスに基づいて前記バッファのデータを、時分割チャンネル中の空きチャンネルを使用して、前記メモリに書き込むことを特徴とするメモリ使用音源装置。 - 前記処理装置は、書き込みアドレスを指示しかつ書き込むべき複数のデータを供給すると共に書き込み指示を発生し、
前記制御手段は、前記書き込み指示に応じて、指示された前記書き込みアドレスを前記アドレスカウンタ手段に設定すると共に、供給された前記複数のデータを前記バッファに書き込み、
前記楽音生成手段は、前記書き込み指示に応じて、前記バッファの複数のデータを前記書き込みアドレスを基にして前記メモリに順次書き込み、該順次書き込みが終了したら書き込み終了通知を発生し、
前記処理装置は、前記書き込み終了通知に応じて、次の書き込み指示が発生可能となる請求項1に記載のメモリ使用音源装置。 - 音源用のデータを記憶するメモリと、
時分割チャンネル処理で動作し、処理装置からの指示に従って楽音生成のためのアドレスが設定されるアドレスカウンタ手段を含み、該アドレスカウンタ手段に設定された前記楽音生成のためのアドレスに基づいて前記メモリからデータを読み出すことに基づき楽音信号を生成する楽音生成手段と、
前記メモリから前記処理装置にデータを読み出すときに前記アドレスカウンタ手段にデータ読み出しのためのアドレスを設定し、読み出されたデータを一時保存するバッファを有する制御手段と
を具備し、前記楽音生成手段では、前記アドレスカウンタ手段に設定された前記データ読み出しのためのアドレスに基づいて、時分割チャンネル中の空きチャンネルを使用して、前記メモリからデータを読み出し、読み出したデータが前記バッファに一旦書き込まれ、該バッファに書き込まれたデータが前記処理装置に供給されることを特徴とするメモリ使用音源装置。 - 前記処理装置は、読み出しアドレスを指示すると共に読み出し指示を発生し、
前記制御手段は、前記読み出し指示に応じて、指示された前記読み出しアドレスを前記アドレスカウンタ手段に設定し、
前記楽音生成手段では、前記読み出しアドレスを基にして前記波形メモリから複数のデータを順次読み出して、読み出した複数のデータを前記バッファに書き込み、該順次読み出しが終了したら読み出し終了通知を発生し、
前記処理装置は、前記読み出し終了通知に応じて、次の読み出し指示が発生可能となる請求項3に記載のメモリ使用音源装置。 - 音源用のデータを記憶するメモリと、
時分割チャンネル処理で動作し、1又は複数チャンネルで前記音源用のデータを前記メモリから読み出して楽音信号を生成する楽音生成手段と、
処理装置から書き込み指示と共にそれぞれnビット(ただしnは任意の整数)からなる第1及び第2のデータの供給を受け、前記書き込み指示に応じて、供給された前記第1のデータを第1のバッファに一旦保存し、供給された前記第2のデータと該第1のバッファに保存された前記第1のデータとを合成して2nビットからなる第3のデータを作成してこれを第2のバッファに保存し、この第2のバッファに保存された前記第3のデータを、時分割チャンネル中の空きチャンネルを使用して、前記メモリに書き込む制御手段と
を具えたメモリ使用音源装置。 - 音源用のデータを記憶するメモリと、
時分割チャンネル処理で動作し、1又は複数チャンネルで前記音源用のデータを前記メモリから読み出して楽音信号を生成する楽音生成手段と、
処理装置から第1の読み出し指示を受け、この第1の読み出し指示に応じて、時分割チャンネル中の空きチャンネルを使用して、前記メモリから2nビット(ただしnは任意の整数)からなる第1のデータを読み出して、読み出した第1のデータをバッファに保存し、該読み出しが終了したら読み出し終了通知を発生する制御手段と
を具え、
前記処理装置は、前記読み出し終了通知に応じて、第2及び第3の読み出し指示を発生し、
前記制御手段は、前記第2の読み出し指示に応じて前記バッファに保存された2nビットのデータのうちのnビットを前記処理装置に出力し、前記第3の読み出し指示に応じて前記バッファに保存された2nビットのデータのうちの残りのnビットを前記処理装置に出力することを特徴とするメモリ使用音源装置。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2004083463A JP3858905B2 (ja) | 2004-03-22 | 2004-03-22 | メモリ使用音源装置 |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2004083463A JP3858905B2 (ja) | 2004-03-22 | 2004-03-22 | メモリ使用音源装置 |
Related Parent Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP34202893A Division JP3561939B2 (ja) | 1993-12-14 | 1993-12-14 | 波形メモリ音源 |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JP2004227004A true JP2004227004A (ja) | 2004-08-12 |
| JP3858905B2 JP3858905B2 (ja) | 2006-12-20 |
Family
ID=32906277
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2004083463A Expired - Lifetime JP3858905B2 (ja) | 2004-03-22 | 2004-03-22 | メモリ使用音源装置 |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JP3858905B2 (ja) |
-
2004
- 2004-03-22 JP JP2004083463A patent/JP3858905B2/ja not_active Expired - Lifetime
Also Published As
| Publication number | Publication date |
|---|---|
| JP3858905B2 (ja) | 2006-12-20 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US5689080A (en) | Computer system and method for performing wavetable music synthesis which stores wavetable data in system memory which minimizes audio infidelity due to wavetable data access latency | |
| US5717154A (en) | Computer system and method for performing wavetable music synthesis which stores wavetable data in system memory employing a high priority I/O bus request mechanism for improved audio fidelity | |
| CN103310780B (zh) | 乐音产生装置及乐音产生方法 | |
| JP2010224077A (ja) | 楽音生成装置 | |
| US5763801A (en) | Computer system and method for performing wavetable music synthesis which stores wavetable data in system memory | |
| JP3163984B2 (ja) | 楽音発生装置 | |
| US5809342A (en) | Computer system and method for generating delay-based audio effects in a wavetable music synthesizer which stores wavetable data in system memory | |
| JP5915420B2 (ja) | 楽音発生装置、楽音発生方法、電子楽器及びプログラム | |
| JP3561939B2 (ja) | 波形メモリ音源 | |
| JP5510815B2 (ja) | 楽音生成装置 | |
| JP2004227004A (ja) | メモリ使用音源装置 | |
| KR100236686B1 (ko) | 데이터 샘플열 액세스 장치 | |
| JPH07121181A (ja) | 音声情報処理装置 | |
| JP2950461B2 (ja) | 楽音発生装置 | |
| JP5510813B2 (ja) | 楽音生成装置 | |
| JP4254677B2 (ja) | 楽音発生装置および楽音発生処理のプログラム | |
| JP2000293169A (ja) | 楽音生成装置 | |
| JP3740717B2 (ja) | 音源装置及び楽音生成方法 | |
| JP4692056B2 (ja) | 音波形生成装置、及び、音波形の波形生成データのデータ構造 | |
| JP4102930B2 (ja) | 音波形合成装置 | |
| JP4102931B2 (ja) | 音波形合成装置 | |
| JP5007560B2 (ja) | 信号処理装置 | |
| JP5146188B2 (ja) | 楽音信号生成装置 | |
| JP3245411B2 (ja) | 電子楽器 | |
| JP2000206972A (ja) | 波形デ―タの演奏制御装置 |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20040408 |
|
| A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20050715 |
|
| A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20050809 |
|
| A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20051007 |
|
| A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20051122 |
|
| A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20060123 |
|
| A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20060411 |
|
| A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20060609 |
|
| A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20060802 |
|
| A911 | Transfer of reconsideration by examiner before appeal (zenchi) |
Free format text: JAPANESE INTERMEDIATE CODE: A911 Effective date: 20060807 |
|
| TRDD | Decision of grant or rejection written | ||
| A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20060829 |
|
| A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20060911 |
|
| R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
| 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: 20100929 Year of fee payment: 4 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100929 Year of fee payment: 4 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110929 Year of fee payment: 5 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120929 Year of fee payment: 6 |