JP5614420B2 - 楽音発生装置、電子楽器、プログラム及び楽音発生方法 - Google Patents
楽音発生装置、電子楽器、プログラム及び楽音発生方法 Download PDFInfo
- Publication number
- JP5614420B2 JP5614420B2 JP2012052616A JP2012052616A JP5614420B2 JP 5614420 B2 JP5614420 B2 JP 5614420B2 JP 2012052616 A JP2012052616 A JP 2012052616A JP 2012052616 A JP2012052616 A JP 2012052616A JP 5614420 B2 JP5614420 B2 JP 5614420B2
- Authority
- JP
- Japan
- Prior art keywords
- address
- memory
- read
- waveform
- data
- 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.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10H—ELECTROPHONIC MUSICAL INSTRUMENTS; INSTRUMENTS IN WHICH THE TONES ARE GENERATED BY ELECTROMECHANICAL MEANS OR ELECTRONIC GENERATORS, OR IN WHICH THE TONES ARE SYNTHESISED FROM A DATA STORE
- G10H7/00—Instruments in which the tones are synthesised from a data store, e.g. computer organs
- G10H7/02—Instruments in which the tones are synthesised from a data store, e.g. computer organs in which amplitudes at successive sample points of a tone waveform are stored in one or more memories
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10H—ELECTROPHONIC MUSICAL INSTRUMENTS; INSTRUMENTS IN WHICH THE TONES ARE GENERATED BY ELECTROMECHANICAL MEANS OR ELECTRONIC GENERATORS, OR IN WHICH THE TONES ARE SYNTHESISED FROM A DATA STORE
- G10H7/00—Instruments in which the tones are synthesised from a data store, e.g. computer organs
- G10H7/002—Instruments in which the tones are synthesised from a data store, e.g. computer organs using a common processing for different operations or calculations, and a set of microinstructions (programme) to control the sequence thereof
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10H—ELECTROPHONIC MUSICAL INSTRUMENTS; INSTRUMENTS IN WHICH THE TONES ARE GENERATED BY ELECTROMECHANICAL MEANS OR ELECTRONIC GENERATORS, OR IN WHICH THE TONES ARE SYNTHESISED FROM A DATA STORE
- G10H7/00—Instruments in which the tones are synthesised from a data store, e.g. computer organs
- G10H7/02—Instruments in which the tones are synthesised from a data store, e.g. computer organs in which amplitudes at successive sample points of a tone waveform are stored in one or more memories
- G10H7/06—Instruments in which the tones are synthesised from a data store, e.g. computer organs in which amplitudes at successive sample points of a tone waveform are stored in one or more memories in which amplitudes are read at a fixed rate, the read-out address varying stepwise by a given value, e.g. according to pitch
Landscapes
- Engineering & Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Acoustics & Sound (AREA)
- Multimedia (AREA)
- Electrophonic Musical Instruments (AREA)
Description
例えば、特許文献1には、PCM(Pulse Coded Modulation)によって符号化された音源のデータを、1サンプル周期における各チャネルのタイムスロット毎に時分割で読み出し、複数チャネルの楽音を合成して発生する技術が記載されている。
特許文献1に記載された技術では、各チャネルのタイムスロットにおいて、メモリから波形のデータを読み出し、楽音を合成して出力する処理を繰り返し行っている。
波形のデータを記憶するメモリを共有メモリとした場合、複数のプロセスによってメモリへのアクセスが衝突する可能性が高まり、メモリへのアクセスを待たされる結果、処理の遅延を招く場合があった。
特に、同時に発生可能な楽音のチャネル数が増加した場合、このような状況が顕著に現れることとなる。
このように、従来の楽音発生装置においては、楽音を発生するための処理効率が十分に高いものではなかった。
楽音を生成するための発音チャネルを複数有し、バスで接続されたメモリに記憶された波形データを読み出すとともに、当該波形データを前記発音チャネルのいずれかに割り当てることによって楽音を発生する楽音発生装置であって、
前記発音チャネルに割り当てられるべき波形データが記憶された前記メモリのアドレスを、前記発音チャネル毎に時分割で算出するアドレス算出手段と、
前記アドレス算出手段によって算出された前記メモリのアドレスと前記発音チャネルとを対応付けて所定の記憶手段に記憶させるアドレス記憶手段と、
前記バスの空き状態を検出するバストラフィック検出手段と、
前記バストラフィック検出手段の検出結果に基づいて、前記メモリから読み出すデータ量を決定する読み出しデータ量決定手段と、
前記バスが空き状態であるときに、前記読み出しデータ量決定手段により決定されたデータ量に応じて前記所定の記憶手段に記憶された前記メモリのアドレスを読み出すとともに、当該読み出されたアドレスに基づいて前記メモリから波形データを読み出す波形データ読み出し手段と、
前記波形データ読み出し手段によって読み出された前記波形データを対応する前記発音チャネルに割り当てるとともに、当該波形データを割り当てられた発音チャネルに対して楽音を生成する波形生成手段と、
を備えることを特徴とする。
また、本発明の一態様の電子楽器は、
波形データ及びプログラムを記憶するメモリと、
鍵盤を備えた入力部と、
楽音発生装置と、
前記メモリに記憶されたプログラムに従い、前記鍵盤に対する押鍵操作に対応する音を前記楽音発生装置に発生させる処理を実行するCPUと、
前記CPU、メモリ、入力部及び楽音発生装置を相互に接続するバスと、
を備え、
前記楽音発生装置は、
楽音を生成するための発音チャネルを複数有し、前記バスで接続された前記メモリに記憶された波形データを読み出すとともに、当該波形データを前記発音チャネルのいずれかに割り当てることによって楽音を発生するものであって、
前記発音チャネルに割り当てられるべき波形データが記憶された前記メモリのアドレスを、前記発音チャネル毎に時分割で算出するアドレス算出手段と、
前記アドレス算出手段によって算出された前記メモリのアドレスと前記発音チャネルとを対応付けて所定の記憶手段に記憶させるアドレス記憶手段と、
前記バスの空き状態を検出するバストラフィック検出手段と、
前記バストラフィック検出手段の検出結果に基づいて、前記メモリから読み出すデータ量を決定する読み出しデータ量決定手段と、
前記バスが空き状態であるときに、前記読み出しデータ量決定手段により決定されたデータ量に応じて前記所定の記憶手段に記憶された前記メモリのアドレスを読み出すとともに、当該読み出されたアドレスに基づいて前記メモリから波形データを読み出す波形データ読み出し手段と、
前記波形データ読み出し手段によって読み出された前記波形データを対応する前記発音チャネルに割り当てるとともに、当該波形データを割り当てられた発音チャネルに対して楽音を生成する波形生成手段と、
を備えることを特徴とする。
[全体構成]
図1は、本発明の一実施形態に係る楽音発生装置を備えた電子楽器のハードウェアの構成を示すブロック図である。
楽音発生装置20は、例えば電子楽器1の音源として構成される。なお、本実施形態において、電子楽器1は電子ピアノ等の鍵盤楽器として実現される場合を例に挙げて説明するが、他の楽器として構成することも可能である。
次に、楽音発生装置20の構成について説明する。
図2は、楽音発生装置20の構成を示すブロック図である。
図2において、楽音発生装置20は、波形生成部100と、波形メモリインターフェース部200とを備えている。この波形生成部100及び波形メモリインターフェース部200ともに、バス14に接続されており、波形生成部100は波形メモリインターフェース部200に対して、エントリリクエスト、エントリデータ及びアドレスを供給し、逆に波形メモリインターフェース部200からデータを受け取っている。
図3は、波形生成部100の具体的構成を示すブロック図である。
波形生成部100は、楽音発生装置20のシステムクロックを基に生成されるマスタカウンタmcに従って動作する。具体的には、11ビットのカウンタとして構成されるマスタカウンタmcの上位7ビットによって、各チャネルch0〜ch127のタイムスロット128個が規定される。そして、マスタカウンタmcの下位4ビットは、それぞれのタイムスロットをさらに16フィールドに分割している。
そして、次のサンプリング周期における当該チャネルのタイムスロット終了タイミングまでに、波形メモリインターフェース部200から入力される波形データを用いて楽音を表すデジタル信号を生成し、ミキサ21に出力する。
RAM調停部117は、CPU11からのバス14を介した上述の各レジスタに対するアクセス、及び、上述のセレクタの動作の選択を制御する。
音源制御パラメータ用RAM101には、各チャネルch0〜ch127に対応する記憶領域が形成され、それぞれの記憶領域に、音源を制御する各種パラメータ(以下、「音源制御パラメータ」と称する。)が記憶されている。
図4において、音源制御パラメータ用RAM101には、チャネルch0〜チャネルch127に対応する記憶領域が形成されており、各チャネルの記憶領域には、波形アドレス整数部Aと、波形アドレス小数部aと、アドレス歩進値nと、再生モード値mと、再生ピッチデータ整数部Pと、再生ピッチデータ小数部pと、波高値Wとが記憶されている。なお、図4に示すアドレスは模式的に各記憶領域を表したものである。
波形アドレス整数部Aは、メモリ12の読み出しアドレスにおける整数部を表し、波形アドレス小数部aは、メモリ12の読み出しアドレスにおける小数部を表している。
再生モード値mは、楽音をPCMに基づいて再生するか、あるいは、差分PCMに基づいて再生するかを示す再生モードを表している。
再生ピッチデータ整数部Pは、波形のサンプルデータを読み出す際の音高に従うピッチ幅における整数部を表し、再生ピッチデータ小数部pは、ピッチ幅における整数部を表している。
波高値Wは、前回のサンプリング周期でメモリ12から読み出されたサンプルデータの波高値を表している。
アドレスレジスタ103は、加算器112によって算出されたアドレス(メモリ12における次の読み出しアドレス)の波形アドレス整数部Aを一時的に記憶し、記憶している波形アドレス整数部Aをセレクタ109、減算器110及びエントリデータ生成部113に出力する。
アドレスレジスタ105は、セレクタ107から入力された波形アドレス小数部aを一時的に記憶し、記憶している波形アドレス小数部aをセレクタ108,109及び波形補間処理部116aに出力する。
セレクタ107は、加算器112によって算出されたアドレス(メモリ12における次の読み出しアドレス)の波形アドレス小数部aあるいは音源制御パラメータ用RAM101から読み出された波形アドレス小数部aのいずれかを選択し、アドレスレジスタ105に出力する。
セレクタ109は、アドレスレジスタ103から入力された波形アドレス整数部Aと、歩進値レジスタ111から入力されたアドレス歩進値nと、アドレスレジスタ105から入力された波形アドレス小数部aと、波形演算部116から入力された波高値Wとのいずれかを選択してRAM調停部117を介して音源制御パラメータ用RAM101に出力する。
歩進値レジスタ111は、減算器110から入力されたアドレス歩進値nを一時的に記憶し、記憶しているアドレス歩進値nをエントリデータ生成部113に出力する。
そして、各チャネルのタイムスロットに制約されることなく、以後、次のサンプリング周期における当該チャネルのタイムスロット終了までに波形メモリインターフェース部200がメモリ12から読み出した波形のサンプルデータを用いて、波形演算部116によって楽音が発生される。
波形メモリインターフェース部200は、波形生成部100からエントリデータが入力されると、入力されたエントリデータを一時的に記憶し、バス14が空き状態であるタイミングで、記憶しているエントリデータに対応する波形のサンプルデータをメモリ12から読み出す。
そして、波形メモリインターフェース部200は、読み出した波形のサンプルデータを一時的に記憶し、波形生成部100からの読み出し要求(リードアドレス演算回路114によるアドレスの入力)に対応して、記憶している波形のサンプルデータを波形生成部100に出力する。
図5において、波形メモリインターフェース部200は、エントリ処理部210と、エントリ用RAM220と、リクエストステータス用RAM230と、メモリバスインターフェース部240と、サンプルデータバッファ用RAM250とを備えている。
エントリデータ制御部211は、波形生成部100からエントリリクエスト信号を受信すると、書き込みポインタ用レジスタ212にラッチ信号を入力し、書き込みポインタが示すアドレスを1インクリメントさせる。
ステータスデータ用レジスタ216は、リクエストステータス用RAM230から読み出されたリクエストステータス情報を一時的に記憶し、記憶しているリクエストステータス情報をエントリデータ制御部211に出力する。
図6は、バストラフィックモニタ部217の構成例を示すブロック図である。
図6において、バストラフィックモニタ部217は、インクリメンタ217aと、セレクタ217bと、レジスタ217cとを備えている。
レジスタ217cには、システムクロックが入力され、各クロックの立ち上がりに同期して、セレクタ217bの出力信号が示す値を保持する。レジスタ217cは、保持している値を示す出力信号(トラフィック情報)をインクリメンタ217a及びエントリデータ制御部211に出力する。
エントリ用RAM220は、楽音発生装置20のローカルメモリとして備えられ、波形生成部100から入力されたエントリデータを記憶する。
図7において、エントリ用RAM220には、チャネルch0〜ch127が同時発音された場合に対応可能な数、即ち、128個の記憶領域が形成されており、各記憶領域には、再生モード値mと、発音開始であるか否かを表す開始フラグfと、リクエストワード数RWと、チャネル番号chと、リクエストアドレスRAとが記憶されている。なお、図7に示すアドレスは模式的に各記憶領域を表したものである。
また、各記憶領域は、書き込みポインタ及び読み出しポインタによって循環的にアドレスが指定される。即ち、エントリ用RAM220は、複数のエントリデータを順次記憶するリングバッファを構成している。
図8において、リクエストステータス用RAM230には、メモリ12から波形のサンプルデータが既に読み出された前回のエントリデータそれぞれに対応するリクエストステータス情報の記憶領域が形成されている。各記憶領域には、前回のサンプリング周期で処理されたリクエストアドレスRAと、そのリクエストアドレスを基準として、既に読み出されたワード数XWと、再生モード値mとが記憶されている。
また、各記憶領域は、書き込みポインタ及び読み出しポインタによって循環的にアドレスが指定される。即ち、リクエストステータス用RAM230は、複数のリクエストステータス情報を順次記憶するリングバッファを構成している。
なお、図8に示すアドレスは模式的に各記憶領域を表したものである。
図9は、サンプルデータバッファ用RAM250における記憶領域のフォーマットを示す模式図である。
図9において、サンプルデータバッファ用RAM250には、チャネルch0〜ch127に対応する128個の記憶領域が形成されている。各チャネルの記憶領域には、波高値Wを表すデータが記憶されており、サンプルデータバッファ用RAM250の1つの記憶領域に記憶されるサンプルデータの数(ワード数)は、再生モード値m(PCMまたは差分PCMのいずれを示しているか)によって異なるものとなる。ここでは、1つの記憶領域に、最大で16アドレスに対応する16個のサンプルデータが記憶されるものとする。なお、図9に示すアドレスは模式的に各記憶領域を表したものである。
なお、サンプルデータバッファ用RAM250は、デュアルポートメモリによって構成され、波形生成部100からのデータの読み出しと、メモリバスインターフェース部240からのデータの書き込みとを同時に行うことが可能である。ただし、バスの調停を行うことにより、サンプルデータバッファ用RAM250をシングルポートメモリで構成することも可能である。
次に、電子楽器1の動作を説明する。
以下、図10〜図12を用いて電子楽器1の動作を説明し、適宜、図2〜図9を参照するものとする。
図10は、マスタカウンタmcと各チャネルのタイムスロットとの関係を示す模式図である。
図10に示すように、電子楽器1では、マスタカウンタmcの上位7ビットが一巡する期間によって1サンプリング周期が定義される。そして、1サンプリング周期内には、マスタカウンタmcの上位7ビットにおける1カウントに対応する128個のタイムスロットが形成されている。なお、マスタカウンタmcの下位4ビットは、それぞれのタイムスロットを16フィールドに分割している。
即ち、電子楽器1は、各チャネルのタイムスロットと対応付けられた処理として、エントリデータの出力を実行し、波形のサンプルデータの読み出し及び波形を示すデジタル信号の生成については、バス14の空き状態に対応して、タイミングを選択して行うこととしている。
図11に示すように、各サンプリング周期において、各チャネルに対応するタイムスロットに移行すると、波形生成部100のエントリデータ生成部113が、モードレジスタ102から入力される再生モード値mに従って、次に発生する楽音のデータをメモリ12から読み出すためのエントリデータを生成する。
なお、エントリデータは、当該チャネルの発音が行われている場合にのみ、エントリデータ生成部113によって生成される。
各チャネルのタイムスロットでは、このようなエントリデータの生成とエントリ用RAM220への記憶が必須の処理として対応付けられている。
なお、波形のサンプルデータは、エントリデータが出力されたタイムスロット以降にメモリ12から読み出され、遅くとも次のサンプリング周期における当該チャネルのタイムスロットまでにサンプルデータバッファ用RAM250にキャッシュされた状態となる。
このような動作により、エントリデータを生成したタイムスロットのほぼ1サンプリング周期後に、楽音が発生することとなる。なお、サンプリング周波数は約44kHzであるため、1サンプリング周期は約0.02msであり、ほぼ遅延なく楽音が再生される。
次に、電子楽器1において実際に楽音が生成される具体例について説明する。
図12は、エントリ用RAM220にエントリデータが記憶される状態を示す模式図である。
以下、図12を参照し、初めにチャネルch3とチャネル10が発音開始され、続いて、チャネル3の発音が停止するとともに、チャネル16が発音開始される例について説明する。
次に、サンプリング周期T2では、エントリ用RAM220のアドレス003及びアドレス004に、発音中であるチャネル3のエントリデータE032及びチャネル10のエントリデータE102が記憶される。
なお、サンプリング周期T2終了時において、書き込みポインタはアドレス005、読み出しポインタはアドレス003を示している。
エントリデータE103では、エントリデータE102に対して、読み出しアドレス“00000104h”と変化している。また、エントリデータE161は、サンプリング周期T3で書き込まれたエントリデータであり、再生モードが16bitPCM、開始フラグ1(発音開始である)、読み出しワード数2、チャネル16、読み出しアドレス“00040000h”であることが示されている。
なお、サンプリング周期T3終了時において、書き込みポインタはアドレス007、読み出しポインタはアドレス005を示している。
次に、上述の動作を実現する電子楽器1の処理アルゴリズムについて説明する。
電子楽器1の処理アルゴリズムは、エントリデータ生成処理と、波形生成処理との主に2つによって構成される。
図13は、エントリデータ生成処理を示すフローチャートである。
エントリデータ生成処理は、楽音発生装置20の波形生成部100によって実行され、電子楽器1の電源ONとともに開始された後、電源OFFとなるまで繰り返し実行される。
当該タイムスロットに対応するチャネルの発音がない場合、ステップS2においてNOと判定されて、処理はステップS5に進む。
ステップS3において、波形生成部100は、発音されているチャネルのエントリデータを生成する。
ステップS4において、波形生成部100は、エントリ用RAM220にエントリデータを記憶する。このとき、書き込みポインタが示しているエントリ用RAM220のアドレスにエントリデータが書き込まれる。
1サンプリング周期において、最終チャネルのタイムスロットが終了していない場合、ステップS5においてNOと判定されて、処理はステップS1に移行する。
これに対し、1サンプリング周期において、最終チャネルのタイムスロットが終了した場合、ステップS5においてYESと判定されて、処理はステップS6に移行する。
このようなステップS6の処理が終了すると、エントリデータ生成処理は終了となる。
図13においては、波形生成指示の処理(ステップS6)を全チャネル分のエントリデータ生成終了後に実行しているが、この処理はこれより以前のタイムスロット区間内の所定の決められたタイミングで行うようにしてもよい。
図14は、波形生成処理を示すフローチャートである。
波形生成処理は、楽音発生装置20の波形メモリインターフェース部200によって実行され、電子楽器1の電源ONとともに開始された後、電源OFFとなるまで繰り返し実行される。
ステップS12において、波形メモリインターフェース部200は、空き状態に応じたチャネル数分のエントリデータをエントリ用RAM220から読み出す。このとき、読み出しポインタが示しているエントリ用RAM220のアドレスからエントリデータが順に読み出される。
ステップS14において、波形メモリインターフェース部200は、メモリ12から読み出した波形のサンプルデータをサンプルデータバッファ用RAM250に記憶する。
ステップS15において、波形メモリインターフェース部200は、1サンプリング周期における全チャネル分の波形のサンプルデータをメモリ12から読み出したか否かの判定を行う。
これに対し、1サンプリング周期における全チャネル分の波形のサンプルデータをメモリ12から読み出した場合、ステップS15においてYESと判定されて、処理はステップ16に移行する。
これにより、ミキサ21によって各チャネルの楽音が合成され、図示していないDACを経て、スピーカ等から楽音が出力される。
図14においては、楽音発生処理(ステップS6)を全チャネル分の波形サンプルデータ読み出し終了後に実行しているが、この処理はこれより以前のタイムスロット区間内の所定の決められたタイミングで行うようにしてもよい。
そして、電子楽器1は、発音が行われている各チャネルについて、当該チャネルのタイムスロットにおいては、メモリ12の読み出しアドレスを示すエントリデータの生成を行い、エントリ用RAM220に記憶する。
そして、1サンプリング周期について、発音が行われている全チャネルの波形のサンプルデータがサンプルデータバッファ用RAM250に記憶されると、各チャネルについて、楽音を表す波形のデジタル信号を順次生成し、ミキサ21に出力する。
即ち、本発明によれば、楽音発生装置において楽音を発生するための処理効率を高めることが可能となる。
さらに、メモリ12から波形のサンプルデータを読み出す際に、バス14のトラフィック情報を参照して、一度に読み出すデータ量を決定するため、バス14の空き状態に応じて、許容される範囲でより速やかにデータの読み出しを行うことが可能となる。
したがって、電子楽器1では、複数チャネルにおける波形のサンプルデータが連続的に読み出されるところ、各チャネルについての読み出し対象となるデータを適切な順番で書き込んだり、読み出したりできる。
第1実施形態において、エントリ用RAM220に記憶されたエントリデータを読み出す場合、書き込まれた順に読み出して、それらエントリデータが示すメモリ12の読み出しアドレスから、波形のサンプルデータを読み出すこととして説明した。
これに対し、1サンプリング周期内の複数チャネルのエントリデータを参照し、メモリ12の読み出しアドレスが連続するものをまとめて読み出すように、エントリデータの処理順序(読み出し順序)を変更することが可能である。
このような処理を行った場合、メモリ12からバースト転送されるデータ量を増大できるため、バス14の使用効率を高めることができ、より効率的に楽音の発生処理を行うことが可能となる。
例えば、本発明は、発音機能を有する電子機器一般に適用することができる。具体的には、例えば、本発明は、ノート型のパーソナルコンピュータ、携帯端末、ポータブルゲーム機等に適用可能である。
換言すると、図2,3,5の構成は例示に過ぎず、特に限定されない。即ち、上述した一連の処理を全体として実行できる機能が楽音発生装置20に備えられていれば足り、この機能を実現するためにどのような機能ブロックを用いるのかは特に図2,3,5の例に限定されない。
また、1つの機能ブロックは、ハードウェア単体で構成してもよいし、ソフトウェア単体で構成してもよいし、それらの組み合わせで構成してもよい。
コンピュータは、専用のハードウェアに組み込まれているコンピュータであってもよい。また、コンピュータは、各種のプログラムをインストールすることで、各種の機能を実行することが可能なコンピュータ、例えば汎用のパーソナルコンピュータであってもよい。
また、本明細書において、システムの用語は、複数の装置や複数の手段等により構成される全体的な装置を意味するものとする。
[付記1]
楽音を生成するための発音チャネルを複数有し、バスで接続されたメモリに記憶された波形データを読み出すとともに、当該波形データを前記発音チャネルのいずれかに割り当てることによって楽音を発生する楽音発生装置であって、
前記発音チャネルに割り当てられるべき波形データが記憶された前記メモリのアドレスを、前記発音チャネル毎に時分割で算出するアドレス算出手段と、
前記アドレス算出手段によって算出された前記メモリのアドレスと前記発音チャネルとを対応付けて所定の記憶手段に記憶させるアドレス記憶手段と、
前記バスが空き状態であるときに、前記所定の記憶手段に記憶された前記メモリのアドレスを読み出すとともに、当該読み出されたアドレスに基づいて前記メモリから波形データを読み出す波形データ読み出し手段と、
前記波形データ読み出し手段によって読み出された前記波形データを対応する前記発音チャネルに割り当てるとともに、当該波形データを割り当てられた発音チャネルに対して楽音を生成する波形生成手段と、
を備えることを特徴とする楽音発生装置。
[付記2]
前記バスの空き状態を検出するバストラフィック検出手段と、
前記バストラフィック検出手段の検出結果に基づいて、前記波形データ読み出し手段により前記メモリから読み出すデータ量を決定する読み出しデータ量決定手段と、
を備えることを特徴とする付記1に記載の楽音発生装置。
[付記3]
前記アドレス算出手段により算出された前記メモリのアドレスを記憶させるための前記アドレス記憶手段の記憶領域を指示する書き込み領域指示手段と、
前記アドレス記憶手段における前記メモリのアドレスを読み出す記憶領域を指示する読み出し領域指示手段と、を備え、
前記書き込み領域指示手段及び前記読み出し領域指示手段は、前記アドレス記憶手段の記憶領域を循環的に指定することを特徴とする付記1または2に記載の楽音発生装置。
[付記4]
楽音を生成するための発音チャネルを複数有し、バスで接続されたメモリに記憶された波形データを読み出すとともに、当該波形データを前記発音チャネルのいずれかに割り当てることによって楽音を発生する楽音発生装置に用いられるコンピュータに、
前記発音チャネルに割り当てられるべき波形データが記憶された前記メモリのアドレスを、前記発音チャネル毎に時分割で算出するアドレス算出機能と、
前記算出された前記メモリのアドレスと前記発音チャネルとを対応付けて所定の記憶手段に記憶させるアドレス記憶機能と、
前記バスが空き状態であるときに、前記所定の記憶手段に記憶された前記メモリのアドレスを読み出すとともに、当該読み出されたアドレスに基づいて前記メモリから波形データを読み出す波形データ読み出し機能と、
前記読み出された前記波形データを対応する前記発音チャネルに割り当てるとともに、当該波形データを割り当てられた発音チャネルに対して楽音を生成する波形生成機能と、
を実現させるプログラム。
[付記5]
楽音を生成するための発音チャネルを複数有し、バスで接続されたメモリに記憶された波形データを読み出すとともに、当該波形データを前記発音チャネルのいずれかに割り当てることによって楽音を発生する楽音発生方法であって、
前記発音チャネルに割り当てられるべき波形データが記憶された前記メモリのアドレスを、前記発音チャネル毎に時分割で算出するアドレス算出ステップと、
前記算出された前記メモリのアドレスと前記発音チャネルとを対応付けて所定の記憶手段に記憶させるアドレス記憶ステップと、
前記バスが空き状態であるときに、前記所定の記憶手段に記憶された前記メモリのアドレスを読み出すとともに、当該読み出されたアドレスに基づいて前記メモリから波形データを読み出す波形データ読み出しステップと、
前記読み出された前記波形データを対応する前記発音チャネルに割り当てるとともに、当該波形データを割り当てられた発音チャネルに対して楽音を生成する波形生成ステップと、
を有する楽音発生方法。
Claims (6)
- 楽音を生成するための発音チャネルを複数有し、バスで接続されたメモリに記憶された波形データを読み出すとともに、当該波形データを前記発音チャネルのいずれかに割り当てることによって楽音を発生する楽音発生装置であって、
前記発音チャネルに割り当てられるべき波形データが記憶された前記メモリのアドレスを、前記発音チャネル毎に時分割で算出するアドレス算出手段と、
前記アドレス算出手段によって算出された前記メモリのアドレスと前記発音チャネルとを対応付けて所定の記憶手段に記憶させるアドレス記憶手段と、
前記バスの空き状態を検出するバストラフィック検出手段と、
前記バストラフィック検出手段の検出結果に基づいて、前記メモリから読み出すデータ量を決定する読み出しデータ量決定手段と、
前記バスが空き状態であるときに、前記読み出しデータ量決定手段により決定されたデータ量に応じて前記所定の記憶手段に記憶された前記メモリのアドレスを読み出すとともに、当該読み出されたアドレスに基づいて前記メモリから波形データを読み出す波形データ読み出し手段と、
前記波形データ読み出し手段によって読み出された前記波形データを対応する前記発音チャネルに割り当てるとともに、当該波形データを割り当てられた発音チャネルに対して楽音を生成する波形生成手段と、
を備えることを特徴とする楽音発生装置。 - 前記アドレス算出手段により算出された前記メモリのアドレスを記憶させるための前記アドレス記憶手段の記憶領域を指示する書き込み領域指示手段と、
前記アドレス記憶手段における前記メモリのアドレスを読み出す記憶領域を指示する読み出し領域指示手段と、を備え、
前記書き込み領域指示手段及び前記読み出し領域指示手段は、前記アドレス記憶手段の記憶領域を循環的に指定することを特徴とする請求項1記載の楽音発生装置。 - 楽音を生成するための発音チャネルを複数有し、バスで接続されたメモリに記憶された波形データを読み出すとともに、当該波形データを前記発音チャネルのいずれかに割り当てることによって楽音を発生する楽音発生装置に用いられるコンピュータに、
前記発音チャネルに割り当てられるべき波形データが記憶された前記メモリのアドレスを、前記発音チャネル毎に時分割で算出するアドレス算出機能と、
前記算出された前記メモリのアドレスと前記発音チャネルとを対応付けて所定の記憶手段に記憶させるアドレス記憶機能と、
前記バスの空き状態を検出するバストラフィック検出機能と、
前記バストラフィック検出機能の検出結果に基づいて、前記メモリから読み出すデータ量を決定する読み出しデータ量決定機能と、
前記バスが空き状態であるときに、前記読み出しデータ量決定機能により決定されたデータ量に応じて前記所定の記憶手段に記憶された前記メモリのアドレスを読み出すとともに、当該読み出されたアドレスに基づいて前記メモリから波形データを読み出す波形データ読み出し機能と、
前記読み出された前記波形データを対応する前記発音チャネルに割り当てるとともに、当該波形データを割り当てられた発音チャネルに対して楽音を生成する波形生成機能と、
を実現させるプログラム。 - 楽音を生成するための発音チャネルを複数有し、バスで接続されたメモリに記憶された波形データを読み出すとともに、当該波形データを前記発音チャネルのいずれかに割り当てることによって楽音を発生する楽音発生方法であって、
前記発音チャネルに割り当てられるべき波形データが記憶された前記メモリのアドレスを、前記発音チャネル毎に時分割で算出するアドレス算出ステップと、
前記算出された前記メモリのアドレスと前記発音チャネルとを対応付けて所定の記憶手段に記憶させるアドレス記憶ステップと、
前記バスの空き状態を検出するバストラフィック検出ステップと、
前記バストラフィック検出ステップの検出結果に基づいて、前記メモリから読み出すデータ量を決定する読み出しデータ量決定ステップと、
前記バスが空き状態であるときに、前記読み出しデータ量決定ステップにより決定されたデータ量に応じて前記所定の記憶手段に記憶された前記メモリのアドレスを読み出すとともに、当該読み出されたアドレスに基づいて前記メモリから波形データを読み出す波形データ読み出しステップと、
前記読み出された前記波形データを対応する前記発音チャネルに割り当てるとともに、当該波形データを割り当てられた発音チャネルに対して楽音を生成する波形生成ステップと、
を有する楽音発生方法。 - 波形データ及びプログラムを記憶するメモリと、
鍵盤を備えた入力部と、
楽音発生装置と、
前記メモリに記憶されたプログラムに従い、前記鍵盤に対する押鍵操作に対応する音を前記楽音発生装置に発生させる処理を実行するCPUと、
前記CPU、メモリ、入力部及び楽音発生装置を相互に接続するバスと、
を備え、
前記楽音発生装置は、
楽音を生成するための発音チャネルを複数有し、前記バスで接続された前記メモリに記憶された波形データを読み出すとともに、当該波形データを前記発音チャネルのいずれかに割り当てることによって楽音を発生するものであって、
前記発音チャネルに割り当てられるべき波形データが記憶された前記メモリのアドレスを、前記発音チャネル毎に時分割で算出するアドレス算出手段と、
前記アドレス算出手段によって算出された前記メモリのアドレスと前記発音チャネルとを対応付けて所定の記憶手段に記憶させるアドレス記憶手段と、
前記バスの空き状態を検出するバストラフィック検出手段と、
前記バストラフィック検出手段の検出結果に基づいて、前記メモリから読み出すデータ量を決定する読み出しデータ量決定手段と、
前記バスが空き状態であるときに、前記読み出しデータ量決定手段により決定されたデータ量に応じて前記所定の記憶手段に記憶された前記メモリのアドレスを読み出すとともに、当該読み出されたアドレスに基づいて前記メモリから波形データを読み出す波形データ読み出し手段と、
前記波形データ読み出し手段によって読み出された前記波形データを対応する前記発音チャネルに割り当てるとともに、当該波形データを割り当てられた発音チャネルに対して楽音を生成する波形生成手段と、
を備える電子楽器。 - 前記アドレス算出手段により算出された前記メモリのアドレスを記憶させるための前記アドレス記憶手段の記憶領域を指示する書き込み領域指示手段と、
前記アドレス記憶手段における前記メモリのアドレスを読み出す記憶領域を指示する読み出し領域指示手段と、を備え、
前記書き込み領域指示手段及び前記読み出し領域指示手段は、前記アドレス記憶手段の記憶領域を循環的に指定することを特徴とする請求項5記載の電子楽器。
Priority Applications (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2012052616A JP5614420B2 (ja) | 2012-03-09 | 2012-03-09 | 楽音発生装置、電子楽器、プログラム及び楽音発生方法 |
US13/723,749 US8962965B2 (en) | 2012-03-09 | 2012-12-21 | Musical sound generation device, storage medium, and musical sound generation method |
CN201310054396.3A CN103310780B (zh) | 2012-03-09 | 2013-02-20 | 乐音产生装置及乐音产生方法 |
US14/595,845 US9202452B2 (en) | 2012-03-09 | 2015-01-13 | Musical sound generation device, storage medium, and musical sound generation method |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2012052616A JP5614420B2 (ja) | 2012-03-09 | 2012-03-09 | 楽音発生装置、電子楽器、プログラム及び楽音発生方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2013186368A JP2013186368A (ja) | 2013-09-19 |
JP5614420B2 true JP5614420B2 (ja) | 2014-10-29 |
Family
ID=49112887
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2012052616A Active JP5614420B2 (ja) | 2012-03-09 | 2012-03-09 | 楽音発生装置、電子楽器、プログラム及び楽音発生方法 |
Country Status (3)
Country | Link |
---|---|
US (2) | US8962965B2 (ja) |
JP (1) | JP5614420B2 (ja) |
CN (1) | CN103310780B (ja) |
Families Citing this family (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2014092722A (ja) * | 2012-11-05 | 2014-05-19 | Yamaha Corp | 音発生装置 |
JP6447024B2 (ja) | 2014-11-07 | 2019-01-09 | カシオ計算機株式会社 | 楽音発生装置、処理方法、プログラムおよび電子楽器 |
US10635384B2 (en) * | 2015-09-24 | 2020-04-28 | Casio Computer Co., Ltd. | Electronic device, musical sound control method, and storage medium |
JP6528752B2 (ja) * | 2016-10-07 | 2019-06-12 | カシオ計算機株式会社 | 楽音再生装置、楽音再生方法、プログラムおよび電子楽器 |
JP6388048B1 (ja) * | 2017-03-23 | 2018-09-12 | カシオ計算機株式会社 | 楽音生成装置、楽音生成方法、楽音生成プログラム及び電子楽器 |
JP6443772B2 (ja) * | 2017-03-23 | 2018-12-26 | カシオ計算機株式会社 | 楽音生成装置、楽音生成方法、楽音生成プログラム及び電子楽器 |
JP6904141B2 (ja) | 2017-07-28 | 2021-07-14 | カシオ計算機株式会社 | 楽音発生装置、方法、プログラム、及び電子楽器 |
JP6922614B2 (ja) * | 2017-09-27 | 2021-08-18 | カシオ計算機株式会社 | 電子楽器、楽音発生方法、及びプログラム |
JP6801687B2 (ja) * | 2018-03-30 | 2020-12-16 | カシオ計算機株式会社 | 電子楽器、電子楽器の制御方法、及びプログラム |
Family Cites Families (18)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4348928A (en) * | 1976-09-24 | 1982-09-14 | Kabushiki Kaishi Kawai Gakki Seisakusho | Electronic musical instrument |
US5342990A (en) * | 1990-01-05 | 1994-08-30 | E-Mu Systems, Inc. | Digital sampling instrument employing cache-memory |
JP2580814B2 (ja) * | 1990-01-05 | 1997-02-12 | ヤマハ株式会社 | 楽音信号発生装置 |
US5243658A (en) * | 1990-08-10 | 1993-09-07 | Casio Computer Co., Ltd. | Modulation effect adding apparatus |
JPH0628235A (ja) * | 1992-07-07 | 1994-02-04 | Fujitsu Ltd | 記憶制御装置 |
JP3561939B2 (ja) * | 1993-12-14 | 2004-09-08 | ヤマハ株式会社 | 波形メモリ音源 |
US5861567A (en) * | 1996-03-05 | 1999-01-19 | Yamaha Corporation | Music computer saving abnormal tone generation by hangup |
JP3163984B2 (ja) * | 1996-06-28 | 2001-05-08 | ヤマハ株式会社 | 楽音発生装置 |
JP3137043B2 (ja) * | 1996-08-02 | 2001-02-19 | ヤマハ株式会社 | 波形メモリ音源装置および楽音発生装置 |
JP2003157082A (ja) | 2001-11-20 | 2003-05-30 | Matsushita Electric Ind Co Ltd | 楽音合成装置 |
JP3832383B2 (ja) * | 2002-05-09 | 2006-10-11 | ヤマハ株式会社 | 楽音生成装置及びプログラム |
EP1580729B1 (en) * | 2004-03-26 | 2008-02-13 | Yamaha Corporation | Sound waveform synthesizer |
CN100432968C (zh) * | 2004-07-09 | 2008-11-12 | 上海奇码数字信息有限公司 | 存储器直接存取装置及其数据传输方法 |
CN2762269Y (zh) * | 2004-12-29 | 2006-03-01 | 方泰有限公司 | 移动音频处理器 |
JP4778872B2 (ja) * | 2005-10-20 | 2011-09-21 | パナソニック株式会社 | 楽音出力装置 |
JP2008130043A (ja) * | 2006-11-24 | 2008-06-05 | Matsushita Electric Ind Co Ltd | ネットワーク制御回路 |
US20080163744A1 (en) * | 2007-01-09 | 2008-07-10 | Yamaha Corporation | Musical sound generator |
JP5534389B2 (ja) * | 2009-03-31 | 2014-06-25 | ヤマハ株式会社 | 楽音生成装置 |
-
2012
- 2012-03-09 JP JP2012052616A patent/JP5614420B2/ja active Active
- 2012-12-21 US US13/723,749 patent/US8962965B2/en active Active
-
2013
- 2013-02-20 CN CN201310054396.3A patent/CN103310780B/zh active Active
-
2015
- 2015-01-13 US US14/595,845 patent/US9202452B2/en active Active
Also Published As
Publication number | Publication date |
---|---|
CN103310780A (zh) | 2013-09-18 |
US9202452B2 (en) | 2015-12-01 |
US20150122110A1 (en) | 2015-05-07 |
CN103310780B (zh) | 2016-08-10 |
US8962965B2 (en) | 2015-02-24 |
US20130233153A1 (en) | 2013-09-12 |
JP2013186368A (ja) | 2013-09-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5614420B2 (ja) | 楽音発生装置、電子楽器、プログラム及び楽音発生方法 | |
JPS6147435B2 (ja) | ||
JP5915420B2 (ja) | 楽音発生装置、楽音発生方法、電子楽器及びプログラム | |
CN105590620B (zh) | 处理装置、处理方法以及电子乐器 | |
JPH1020860A (ja) | 楽音発生装置 | |
KR100236686B1 (ko) | 데이터 샘플열 액세스 장치 | |
JPH07121181A (ja) | 音声情報処理装置 | |
JP2950461B2 (ja) | 楽音発生装置 | |
JP4096952B2 (ja) | 楽音発生装置 | |
JP3137043B2 (ja) | 波形メモリ音源装置および楽音発生装置 | |
JP4353225B2 (ja) | 楽音形成装置 | |
JP3723973B2 (ja) | 音源装置 | |
JP4120979B2 (ja) | 波形再生装置 | |
JP3832382B2 (ja) | 楽音生成装置及びプログラム | |
JP3610759B2 (ja) | ディジタル信号処理装置 | |
JP3858905B2 (ja) | メモリ使用音源装置 | |
JP3148803B2 (ja) | 音源装置 | |
JP2956552B2 (ja) | 楽音発生方法および装置 | |
JP5146188B2 (ja) | 楽音信号生成装置 | |
JP3695404B2 (ja) | 波形処理デバイス | |
JP4144090B2 (ja) | 楽音発生装置 | |
JP2003330469A (ja) | 楽音生成装置及びプログラム | |
JPH07168574A (ja) | 波形メモリ音源 | |
JP2905905B2 (ja) | 楽音発生装置 | |
JPS6335994B2 (ja) |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20140130 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20140225 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20140424 |
|
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: 20140812 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20140825 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 5614420 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |