JP3364573B2 - Electronic tone generator - Google Patents
Electronic tone generatorInfo
- Publication number
- JP3364573B2 JP3364573B2 JP01985897A JP1985897A JP3364573B2 JP 3364573 B2 JP3364573 B2 JP 3364573B2 JP 01985897 A JP01985897 A JP 01985897A JP 1985897 A JP1985897 A JP 1985897A JP 3364573 B2 JP3364573 B2 JP 3364573B2
- Authority
- JP
- Japan
- Prior art keywords
- output
- supplied
- channel
- latch
- latch circuit
- 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
Links
Landscapes
- Electrophonic Musical Instruments (AREA)
Description
【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、電子楽器、カラオ
ケ装置、及びデスクトップ・ミュージック(DTM:De
sk Top Music)等のCMOS(Complementary Metal Ox
ide Semiconductor )で構成される音源LSI(Large
Scale Integrated Circuit)により電子的に楽音を発生
する装置に適用される電子楽音発生装置に関するもので
ある。
【0002】
【従来の技術】従来より、時分割で複数音を同時に発音
可能な電子楽器が知られている。このような電子楽器
は、鍵盤操作に対応した楽音の波形データを波形ROM
(Read Only Memory)から時分割的に読み出し、発音チ
ャネル(楽音生成チャネル)に割り当てて発音すること
により、楽音の発生に用意されているチャネル数分、同
時に発音できるようになされている。
【0003】
【発明が解決しようとする課題】ところで、上述したよ
うな従来の電子楽器において、消費電力が最も大きいの
はスピーカの駆動回路であり、一般的な音量を得るため
には、スピーカの駆動回路の方が音源回路(トーンジェ
ネレータ)よりも一桁程度大きい電力を要する。
【0004】そこで、スピーカを省くことにより、主流
である5V電源から3V電源に移行して、省電力化を進
めたディジタル電子楽器がある。しかしながら、このよ
うな電子楽器は、スピーカに要する電力以上の省電力化
を図るものではない。
【0005】すなわち、従来の電子楽器は、スピーカに
て省電力化は進められているものの、音源回路自体にて
省電力化を目指したものがなかったため、トータル的な
省電力化を図ることができなかった。
【0006】特に、従来の電子楽器の音源回路では、発
音するチャネル、発音しないチャネルに係わらず、用意
されているチャネル数分、全て時分割で演算が行われて
いたため、発音しないチャネルの演算に要する電力が非
常に無駄であった。このため、電池駆動の電子楽器等で
は、電池寿命のために、数日間しか使用できない製品が
あった。
【0007】そこで、本発明は、上記の欠点を除去する
ために成されたもので、電子的に楽音を発生する装置の
音源LSIとその周辺ロジック(波形ROM等)の省電
力化を進めることにより、トータル的な省電力化を図る
ことが可能な電子楽音発生装置を提供することを目的と
する。
【0008】
【課題を解決するための手段】本発明の電子楽音発生装
置は、複数の楽音データを時分割にて生成し、複数の発
音チャネル分の楽音データを出力する電子楽音発生装置
であって、上記複数の楽音データを生成するための複数
の制御データ、及び発音チャネルの使用状態を示すチャ
ネル情報が発音チャネル毎に外部より記憶される記憶手
段と、各発音チャネルのタイムスロットに同期して上記
記憶手段から発音チャネル毎に複数の制御データ及びチ
ャネル情報が読み出されるように上記記憶手段の読み出
しを制御する制御手段と、上記記憶手段から読み出され
た発音チャネル毎の複数の制御データをラッチするラッ
チ手段と、上記ラッチ手段に対して発音チャネル毎に選
択的にラッチ信号を供給するラッチ信号供給手段とを備
え、上記ラッチ信号供給手段は、上記記憶手段から読み
出されたチャネル情報に基づいて、未使用の発音チャネ
ルのタイムスロットにおいては、上記ラッチ手段に対し
てラッチ信号を供給しないようにすることにより、上記
ラッチ手段には未使用の発音チャンネルの複数の制御デ
ータはラッチされないようにしたことを特徴としてい
る。
【0009】
【発明の実施の形態】以下、本発明の実施の形態につい
て図面を用いて説明する。
【0010】本発明に係る電子楽音発生装置、例えば、
図1に示すような電子楽器1に適用される。
【0011】この電子楽器1は、上記図1に示すよう
に、鍵盤10と、操作パネル20と、シーケンサ(以
下、SEQと言う)40と、トーンジェネレータ(以
下、ウェーブジェネレータとも言う)50と、操作パネ
ル20、SEQ40及びウェーブジェネレータ50と接
続され鍵盤10の出力が供給されるホストCPU(Cent
ralProcessing Unit)30と、ウェーブジェネレータ5
0と接続されたウェーブテーブル60と、ウェーブジェ
ネレータ50の出力が供給されるディジタル/アナログ
コンバータ(以下、DACと言う)70と、DAC70
の出力が供給されるスピーカ80とを備えている。ま
た、ホストCPU30には、他の電子楽器等の図示して
いない外部発音源装置が接続可能であり、この外部発音
源装置からMIDI(Musical Instrument Digital Int
erface)信号のような外部制御情報が供給されるように
なされている。
【0012】ウェーブジェネレータ50は、ホストCP
U30の出力が入力端子I51を介して供給されるアサイ
メントメモリ100と、アサイメントメモリ100の出
力が各々供給されるウェーブテーブルアドレスジェネレ
ータ200及びエンベロープジェネレータ300と、エ
ンベロープジェネレータ300に接続されたエンベロー
プメモリ400と、アサイメントメモリ100の出力が
各々供給される累算器500及びシステムクロックジェ
ネレータ600と、エンベロープジェネレータ300の
出力及び入力端子I54からのウェーブテーブル60の出
力が供給される乗算器700とを備えている。また、ア
サイメントメモリ100には、アドレッシング回路10
1の出力も供給され、ウェーブテーブルアドレスジェネ
レータ200の出力は、出力端子I53を介してウェーブ
テーブル60に供給されるようになされている。さら
に、エンベロープメモリ400には、アドレッシング回
路401の出力が供給され、エンベロープメモリ400
の出力は、出力端子I52を介してホストCPU30に供
給されるようになされている。さらにまた、累算器50
0には、乗算器700の出力が供給され、累算器500
の出力は、出力端子I55を介してDAC70に供給され
るようになされている。
【0013】上述のような電子楽器1は、発音チャネル
(楽音生成チャネル)として、例えば16チャネルが用
意されており、時分割的に16チャネル(16音)の楽
音を生成して同時発音できるようになされている。
【0014】そこで、まず、電子楽器1の一連の動作に
ついて説明する。
【0015】ホストCPU30は、例えば、マイクロコ
ンピュータ等からなり、鍵盤10の鍵操作情報、操作パ
ネル20の操作情報、SEQ40の出力情報、及び上述
した外部発音源装置のMIDI情報等を受け、これらの
各情報に基づいた発音命令や消音命令等を、入力端子I
51を介してウェーブジェネレータ50に供給する。
【0016】ウェーブジェネレータ50において、入力
端子I51を介して供給されたホストCPU30からの命
令情報は、アサイメントメモリ100に格納される。そ
して、アサイメントメモリ100に格納された情報は、
時分割的に読み出され、この読み出された情報にて、ウ
ェーブテーブル60の読出アドレスを生成するウェーブ
テーブルアドレスジェネレータ200、及びエンベロー
プを生成するエンベロープジェネレータ300が演算処
理を行う。
【0017】ウェーブテーブルアドレスジェネレータ2
00で生成された読出アドレスは、出力端子I53を介し
てウェーブテーブル60に供給される。ウェーブテーブ
ル60は、ROMからなり、出力端子I53からの読出ア
ドレスに従って波形データを入力端子I54に対して出力
する。したがって、入力端子I54から乗算器700に
は、ウェーブテーブル60の出力である波形データが供
給される。
【0018】尚、ウェーブテーブル60は、RAM又は
フラッシュRAMで構成し、ウェーブジェネレータ50
が動作していないときに、ホストCPU30がアクセス
(R/W)できるようにすることも可能である。
【0019】また、エンベロープジェネレータ300で
演算して得られたエンベロープ値も、乗算器700に供
給される。
【0020】したがって、乗算器700により、ウェー
ブテーブルアドレスジェネレータ200の読出アドレス
に従ってウェーブテーブル60から読み出された波形デ
ータと、エンベロープジェネレータ300で得られたエ
ンベロープ値とが乗算される。
【0021】累算器500は、乗算器700の乗算結果
を累算し、1サンプル期間において16チャネル分の累
算結果を出力する。
【0022】この累算器500の累算結果がウェーブジ
ェネレータ50の出力となり、出力端子I55を介してD
AC70に供給され、DAC70でアナログ化された
後、スピーカ80から放音される。
【0023】つぎに、ウェーブジェネレータ50内部に
ついて具体的に説明する。
【0024】ここで、図2は、ウェーブジェネレータ5
0でのタイミングクロックを示したタイミングチャート
であり、図中のUSE信号、タイミング信号t0〜t
7、ts0〜ts15は、システムクロックジェネレー
タ600により発生するようになされている。
【0025】まず、USE信号は時分割信号であり(こ
こでは、ch.0〜ch.15の16チャネルの時分
割)、設けられているタイムスロットのチャネルが使用
されているときは「1」、使用されていないときは
「0」となる。したがって、この図では、使用チャネル
がch.0及びch.2の2チャネルとなる。
【0026】また、タイミング信号t0は、USE信号
の値に係わらず、常に出力されるものであり、このタイ
ミング信号t0により各時分割チャネルのUSE信号が
ラッチされるようになされている。
【0027】一方、他のタイミング信号t1〜t7は、
USE信号が「0」である場合には、出力されないよう
になされている。すなわち、ウェーブジェネレータ50
では、USE信号が「1」の場合は、使用チャネルであ
るため、タイミング信号t1〜t7にて後述するパイプ
ラインのラッチクロックが発生し、USE信号が「0」
の場合は、未使用チャネルであるため、上記図2中の点
線で示すように、そのラッチクロックが発生しないよう
になされている。したがって、未使用チャネルであるチ
ャネルch.1及びch.3〜ch.15のタイムスロ
ットにおいては、タイミング信号t1〜t7のラッチク
ロックが省略されたかたちとなる。
【0028】タイミング信号ts0〜ts15は、チャ
ネルch.0〜ch.15に各々対応したものであり、
対応チャネルのとき「1」となる信号である。ここで
は、後述する累算器500にてタイミング信号ts1の
みを使用している。
【0029】尚、上述のようなUSE信号、タイミング
信号t0〜t7、ts0〜ts15を生成するシステム
クロックジェネレータ600についての詳細は後述す
る。
【0030】そこで、まず、アサイメントメモリ100
について具体的に説明する。
【0031】アサイメントメモリ100は、例えば、図
3に示すように、各チャネルch.0〜ch.15毎
に、上述したタイミング信号t0〜t7に対応した8ア
ドレスが各々設けられている。
【0032】タイミング信号t0に対応したアドレスに
は、そのチャネルが使用チャネルか未使用チャネルかを
示すUSE情報が格納され、タイミング信号t1に対応
したアドレスには、イネーブル情報が格納されるように
なされている。
【0033】また、タイミング信号t2に対応したアド
レスには、ループトップ情報が格納され、タイミング信
号t3に対応したアドレスには、ループエンド情報が格
納され、タイミング信号t4に対応したアドレスには、
周波数ナンバ(以下、Fナンバと言う)情報が格納さ
れ、タイミング信号t5に対応したアドレスには、バイ
アスアドレス情報が格納され、タイミング信号t6に対
応したアドレスには、エンベロープ目標値(以下、E目
標値と言う)/エンベロープスピード(以下、Eスピー
ドと言う)情報が格納され、タイミング信号t7に対応
したアドレスには、ラウドネス情報が格納されるように
なされている。
【0034】上述のような各チャネル毎の各種の情報は
ホストCPU30により格納され、格納された各種の情
報はアドレッシング回路101により読み出されるよう
になされている。
【0035】特に、タイミング信号t0に対応したアド
レスに格納されるUSE情報は、上述したUSE信号を
発生させるための情報であり、ホストCPU30によ
り、鍵押下時に割り当てられたチャネルのUSE情報が
「1」にセットされ、離鍵後エンベロープリリースが終
了したチャネルをエンベロープメモリ400にて確認さ
れると「0」にリセットされるようになされている。
【0036】尚、アサイメントメモリ100に格納され
る各種の情報についての詳細は後述する。また、ここで
は、タイミング信号t0〜t7に対応したアドレスに各
種の情報を配置するようにしたが、この配置に制限され
るものではない。
【0037】つぎに、上述したようなアサイメントメモ
リ100に格納された各種の情報を読み出して動作する
ウェーブテーブルアドレスジェネレータ200について
具体的に説明する。
【0038】ウェーブテーブルアドレスジェネレータ2
00は、例えば、図4に示すように、アサイメントメモ
リ100から読み出した情報が各々供給されるラッチ回
路201〜206と、ラッチ回路203及び206の各
出力が供給される加算器210と、ラッチ回路202及
び加算器210の各出力が供給される比較器211と、
ラッチ回路204、加算器210及び比較器211の各
出力が供給される選択器212と、ラッチ回路201及
び選択器212の各出力が供給される加算器213と、
加算器213の出力が供給されるラッチ回路207と、
選択器212の出力が供給されるFACCメモリ214
と、FACCメモリ214の出力が供給されるゲート2
16とを備えており、ラッチ回路207の出力がウェー
ブテーブルアドレスジェネレータ200の出力となって
ウェーブテーブル60に供給されるようになされてい
る。また、ゲート216はラッチ回路205の出力によ
って制御され、ゲート216の出力は、ラッチ回路20
6に供給されるようになされている。さらに、FACC
メモリ214には、アドレッシング回路215の出力に
より読み出されるようになされている。
【0039】そして、ラッチ回路201〜207には、
上記図2に示したようなタイミング信号t1〜t7が各
々与えられており、これらのラッチ回路201〜207
でパイプラインを構成している。
【0040】そこで、例えば、ウェーブテーブルアドレ
スジェネレータ200で使用チャネルであるch.0に
対する演算が行われる場合、ラッチ回路201は、タイ
ミング信号t5の立ち下がりのタイミングで、アサイメ
ントメモリ100から読み出されたバイアスアドレス情
報を得て、加算器213に供給する。このバイアスアド
レス情報は、演算中の波形がウェーブテーブル60の何
番地から書き込まれているかを示す値、すなわち音色の
スタートアドレスを示す情報である。
【0041】また、ラッチ回路203は、タイミング信
号t4により、アサイメントメモリ100から読み出さ
れたFナンバ情報を得て、加算器210に供給する。こ
のFナンバ情報は、周波数を生成するための値であり、
加算器210により累算されるものである。
【0042】また、ラッチ回路202は、タイミング信
号t3により、アサイメントメモリ100から読み出さ
れたループエンド情報を得て、比較器211のA端子に
供給し、ラッチ回路204は、タイミング信号t2によ
り、アサイメントメモリ100から読み出されたループ
トップ情報を得て、選択器212のB端子に供給する。
これらのループエンド情報及びループトップ情報は、波
形の読出方式をHead+Loop方式とするための情
報であり、例えば、図5に示すようなアドレスを発生さ
せるための情報である。尚、ウェーブテーブルアドレス
ジェネレータ200では、16チャネル分の演算を行う
ため、Head+Loop方式により読み出されるアド
レスは、1サンプリング期間に16種類まで同時に生成
することが可能であることは勿論のことである。
【0043】また、ラッチ回路205は、タイミング信
号t1により、アサイメントメモリ100から読み出さ
れたイネーブル情報を得て、ゲート216に供給する。
このイネーブル情報は、ホストCPU30によりキーオ
ンイベント時に一時「OFF」されものであり、このと
き、FACCメモリ214に記憶されたFACC(Fナ
ンバの累算結果)がクリアされる。
【0044】また、ラッチ回路206は、タイミング信
号t4により、ゲート216からのFACCを得て、加
算器210に供給する。
【0045】そして、加算器210は、ラッチ回路20
3からのFナンバ情報と、ラッチ回路205からのFA
CCとを加算して、その加算結果をFACCとして比較
器211のB端子及び選択器212のA端子に供給す
る。
【0046】比較器211は、そのA端子に供給された
ラッチ回路202からのループエンド情報と、そのB端
子に供給された加算器210からのFACCとを比較
し、ループエンド情報が上記加算結果以上であった場合
(A≦B)、すなわちFナンバの累算値であるFACC
がループエンドまで達したら、その結果を選択器212
に供給する。
【0047】選択器212は、比較器211からの比較
結果により、Fナンバの累算値がループエンドまで達し
ていたらラッチ回路204からのループトップ情報を選
択し、逆にFナンバの累算値がループエンドまで達して
いなかったら加算器210からのFACCを選択する。
そして、選択器212は、選択したループトップ情報又
はFACCをFACCメモリ214に記憶させると共
に、その情報の上位ビット情報(b16〜b31)を加
算器213に供給する。
【0048】加算器213は、ラッチ回路201からの
バイアスアドレス情報と、選択器212からの上位ビッ
ト情報(b16〜b31)を加算して、その加算結果を
ラッチ回路207に供給する。
【0049】ラッチ回路207は、タイミング信号t4
により、加算器213からの加算結果を得て、図示して
いない出力バッファを介して、ウェーブテーブル60の
読出アドレスとして出力する。
【0050】また、FACCメモリ214に記憶された
情報は、ゲート216によりFACCとして読み出さ
れ、ラッチ回路206に対して出力される。このとき、
ゲート216には、ラッチ回路205からイネーブル情
報が供給されている。このイネーブル情報は、ホストC
PU30によりキーオンイベント時に一時「OFF」さ
れるようになされており、この時にFACCがクリアさ
れる。
【0051】尚、使用チャネルch.2時の動作も、上
述した使用チャネルch.0時と同様であるため、その
詳細な説明は省略する。
【0052】一方、ウェーブテーブルアドレスジェネレ
ータ200で未使用チャネルであるch.1に対する演
算が行われる場合、上記図2中の点線で示したように、
タイミング信号t1〜t7のラッチクロックが発生しな
い。このため、ラッチ回路201〜207には、タイミ
ング信号t1〜t7のラッチクロックが与えられないた
め、ラッチ回路201〜207は動作せず、すなわちパ
イプライン処理用ラッチの内容は更新されず、以前に行
われた使用チャネルの演算処理、例えば上述した使用チ
ャネルch.0の演算処理でラッチされた値が残ること
となる。
【0053】尚、未使用チャネルch.3〜ch.15
時の動作も、上述した使用チャネルch.1時と同様で
あるため、その詳細な説明は省略する。
【0054】したがって、未使用チャネルch.1及び
ch.3〜ch.15のタイムスロットにおいては、ラ
ッチ回路201〜207のラッチだけでなく、それ以降
に設けられた各回路(加算器210、比較器211、選
択器212、加算器213)も動作せず、この間同じ値
を保持し続け、回路を構成するCMOS素子はスイッチ
ングしない状態となる。これにより、ウェーブテーブル
60の読出アドレスも変化しないため、ウェーブテーブ
ル60の出力もスイッチングする必要がない。
【0055】尚、アサイメントメモリ100とFACC
メモリ214は、チャネルの使用、未使用に係わらず、
各々アドレッシング回路101とアドレッシング回路2
15によりアクセスされる。
【0056】つぎに、エンベロープジェネレータ300
について具体的に説明する。
【0057】エンベロープジェネレータ300は、例え
ば、図6に示すように、アサイメントメモリ100から
読み出された情報が各々供給されるラッチ回路301〜
302と、ラッチ回路301の出力が供給される乗算器
309と、ラッチ回路302の出力が各々供給される減
算器306及び乗算器307と、ラッチ回路303及び
エンベロープメモリ400の各出力が供給されるゲート
310と、ゲート310の出力が供給されるラッチ回路
304と、ラッチ回路304及び乗算器307の各出力
が供給される加算器308と、乗算器309の出力が供
給されるラッチ回路305とを備えており、ラッチ回路
305の出力がエンベロープジェネレータ300の出力
として乗算器700に供給されるようになされている。
また、ラッチ回路304の出力は減算器306にも供給
され、減算器306の出力は乗算器307にも供給され
るようになされている。さらに、加算器308の出力
は、乗算器309及びエンベロープメモリ400に各々
供給されるようになされている。そして、ラッチ回路3
01、302、303、304及び305には、上記図
2に示したようなタイミング信号t7、t6、t1、t
7及びt7が各々与えられている。
【0058】上述のようなエンベロープジェネレータ3
00は、例えば、エンベロープの累算値をEACCとし
て、
EACC=(E目標値−EACC)×Eスピード+EA
CC
なる演算式により、エンベロープをE目標値に徐々に漸
近させるものである。
【0059】すなわち、このエンベロープジェネレータ
300において、使用チャネルであるch.0に対する
演算が行われる場合、ラッチ回路301は、タイミング
信号t7の立ち下がりのタイミングで、アサイメントメ
モリ100から読み出されたラウドネス情報を得て、乗
算器309に供給する。このラウドネス情報は、エンベ
ロープ値を全体的に制御するためのパラメータであり、
乗算器309でEACCと乗算されて出力されるもので
ある。
【0060】また、ラッチ回路302は、タイミング信
号t6により、アサイメントメモリ100から読み出さ
れたE目標値/Eスピード情報を得て、E目標値情報を
減算器306のA端子に供給すると共に、Eスピード情
報を乗算器307に供給する。
【0061】また、ラッチ回路303は、タイミング信
号t1により、アサイメントメモリ100から読み出さ
れたイネーブル情報を得て、ゲート310に供給する。
このイネーブル情報は、ホストCPU30によりキーオ
ンイベント時に一時「OFF」されものであり、この時
にゲート310に供給されるEACC(エンベロープの
累算値)がクリアされる。
【0062】また、ラッチ回路304は、タイミング信
号t7により、ゲート310からのEACCを得て、減
算器306のB端子及び加算器308に供給する。
【0063】そして、減算器306は、そのA端子に供
給されたラッチ回路302からのE目標値情報から、そ
のB端子に供給されたラッチ回路304からのEACC
を減算する(E目標値−EACC)。したがって、この
減算器306により、EACCがE目標値にどれだけ未
だ到達していないかが求められる。
【0064】乗算器307は、減算器306の減算結果
と、ラッチ回路302からのEスピード情報、すなわち
EACCがE目標値に到達する際のレートとを乗算し
((E目標値−EACC)×Eスピード)、その乗算結
果を加算器308に供給する。
【0065】加算器308は、乗算器307の乗算結果
と、ラッチ回路304からのEACC、すなわち前回の
EACCとを加算し((E目標値−EACC)×Eスピ
ード+EACC)、その加算結果を今回のEACCとし
て、乗算器309及びエンベロープメモリ400に供給
する。
【0066】乗算器309は、加算器308からのEA
CCと、ラッチ回路301からのラウドネス情報とを乗
算して、その乗算結果をラッチ回路305に供給する。
【0067】ラッチ回路305は、タイミング信号t7
により、乗算器309からの乗算結果を得る。このラッ
チ回路305でラッチされた乗算結果が、このエンベロ
ープジェネレータ300の出力であるエンベロープ値と
して乗算器200に供給されることとなる。
【0068】尚、使用チャネルch.2時の動作も、上
述した使用チャネルch.0時と同様であるため、その
詳細な説明は省略する。
【0069】一方、エンベロープジェネレータ300で
未使用チャネルであるch.1に対する演算が行われる
場合、上述したウェーブテーブルアドレスジェネレータ
200と同様に、上記図2中の点線で示したように、タ
イミング信号t1〜t7のラッチクロックが発生しな
い。このため、ラッチ回路301〜305には、タイミ
ング信号t7、t6、t1のラッチクロックが与えられ
ないため、ラッチ回路301〜305は動作せず、以前
に行われた使用チャネルの演算処理、例えば上述した使
用チャネルch.0の演算処理でラッチされた値が残る
こととなる。
【0070】尚、未使用チャネルch.3〜ch.15
時の動作も、上述した使用チャネルch.1時と同様で
あるため、その詳細な説明は省略する。
【0071】したがって、未使用チャネルch.1及び
ch.3〜ch.15のタイムスロットにおいては、ラ
ッチ回路301〜305のラッチだけでなく、減算器3
06、乗算器307、加算器308及び乗算器309も
動作せず、この間同じ値を保持し続け、回路を構成する
CMOS素子はスイッチングしない状態となる。
【0072】つぎに、累算器500について具体的に説
明する。
【0073】累算器500は、例えば、図7に示すよう
に、乗算器700の乗算結果が供給されるラッチ回路5
01と、アサイメントメモリ100から読み出された情
報が供給されるラッチ回路502と、ラッチ回路502
の出力が供給されるラッチ回路503と、ラッチ回路5
01及びラッチ回路503の各出力が供給されるゲート
510と、ゲート510の出力が供給される加算器51
1と、加算器511の出力が供給されるラッチ回路50
4と、ラッチ回路504の出力が各々供給されるラッチ
回路513及びゲート512とを備えており、ラッチ回
路513の出力が累算器500の出力、すなわちウェー
ブジェネレータ50の出力としてDAC70に供給され
るようになされている。また、ゲート512の出力は、
加算器511に供給されるようになされている。そし
て、ラッチ回路501〜504には、上記図2に示した
ようなタイミング信号t0が各々与えられ、ラッチ回路
513には、上記図2に示したようなチャネルch.1
のタイミング信号ts1が与えれている。また、ゲート
512には、上記タイミング信号ts1がインバータ5
12aを介して与えられている。
【0074】尚、タイミング信号t0は、上述したよう
にチャネルの使用、未使用に係わらず常に出力されるた
め、ラッチ回路501〜504には、チャネルの使用、
未使用に係わらず、常にタイミング信号t0が与えられ
る。また、タイミング信号ts1も、チャネルの使用、
未使用に係わらず常に出力されるため、ラッチ回路51
3及びゲート512には、チャネルの使用、未使用に係
わらず、常にタイミング信号ts1が与えられる。
【0075】上述のような累算器500は、時分割にて
生成した16チャネルの楽音データ(サンプルポイント
値)を累算するものである。
【0076】ここで、上述したように、USE信号が
「1」の場合、すなわち使用チャネルの場合には、ウェ
ーブテーブルアドレスジェネレータ200によりウェー
ブテーブル60から波形データが読み出されると共に、
エンベロープジェネレータ300によりエンベロープが
生成され、読み出された波形データと生成されたエンベ
ロープが乗算器700で乗算される。一方、USE信号
が「0」の場合、すなわち未使用チャネルの場合には、
ウェーブテーブルアドレスジェネレータ200及びエン
ベロープジェネレータ300は前回のデータを保持する
ようになされているため、乗算器700からは前回の乗
算結果が出力されることとなる。このため、この場合に
は、その乗算結果をクリア(ゲート)する必要がある。
【0077】そこで、この累算器500では、未使用チ
ャネルのタイミングで入力される乗算器700からのデ
ータをゲートするようになされている。
【0078】すなわち、先ず、上述したように、エンベ
ロープジェネレータ300から乗算器700にタイミン
グ信号t7のタイミングでエンベロープが供給されるこ
とにより、乗算器700からラッチ回路501にも、タ
イミング信号t7のタイミングで乗算結果が供給され
る。
【0079】ラッチ回路501は、タイミングの取りや
すさを考慮して、タイミング信号t7の次のタイミング
信号t0で再ラッチするために設けられたものであり、
このタイミング信号t0により、乗算器700からの乗
算結果を得て、ゲート510に供給する。
【0080】一方、ラッチ回路502及び503は、ウ
ェーブテーブルアドレスジェネレータ200及びエンベ
ロープジェネレータ300の演算処理によって生じた遅
れを1チャネル分とするために設けられたものである。
したがって、ラッチ回路502は、タイミング信号t0
により、アサイメントメモリ100の出力を得て、次段
のラッチ回路503に供給し、ラッチ回路503は、タ
イミング信号t0により、ラッチ回路502の出力を得
て、コントロール信号としてゲート510に供給する。
【0081】ゲート510は、ラッチ回路503からの
コントロール信号により、使用チャネルの場合には、ラ
ッチ回路501からのデータをそのまま加算器511に
供給し、未使用チャネルの場合には、ラッチ回路501
からのデータをクリアして加算器511に供給する。
【0082】加算器511は、ゲート510の出力とゲ
ート512の出力を加算してラッチ回路504に供給
し、ラッチ回路504は、タイミング信号t0により加
算器511からの加算結果を得てゲート512を介して
加算器511に供給する。このような累算処理が、チャ
ネルch.0〜ch.15の間行われる。
【0083】このとき、ゲート512は、インバータ5
12aを介して供給されるタイミング信号ts1によ
り、16チャネル分の累算処理を開始する時点で、ラッ
チ回路504からのデータ(累算結果)をクリアする。
ここで、上述したように、ラッチ回路501〜503に
より、加算器511に供給されるデータは、1チャネル
分遅れたものであるため、チャネルch.1のときに、
加算器511にはチャネルch.0のデータが入力され
る。そこで、ラッチ回路504の内容(累算結果)をク
リアするタイミングを、タイミング信号ts1のタイミ
ングとしている。
【0084】上述のようにして得られた16チャネルの
累算結果は、ラッチ回路513に供給され、ラッチ回路
513は、タイミング信号ts1により、16チャネル
の累算結果を得て、その累算結果を累算器500の出力
としてDAC70に供給する。
【0085】つぎに、システムクロックジェネレータ6
00について具体的に説明する。
【0086】システムクロックジェネレータ600は、
例えば、図8に示すように、アサイメントメモリ100
から読み出された情報が供給されるラッチ回路601
と、カウンタ602と、カウンタ602の出力が各々供
給されるAND回路603及びカウンタ610と、カウ
ンタ610の出力が供給されるAND回路611と、A
ND回路603の出力が供給されるラッチ回路604t0
〜604t7と、ラッチ回路601及び604t0〜604
t7の各出力が供給されるゲート608と、AND回路6
11の出力が供給されるラッチ回路612ts0 〜612
ts15とを備えており、ラッチ回路604t0の出力がタイ
ミング信号t0として出力され、ゲート608の出力が
タイミング信号t1〜t7として出力され、また、ラッ
チ回路612ts0 〜612ts15の各出力がタイミング信
号ts0〜ts15として出力されるようになされてい
る。そして、ラッチ回路601及びラッチ回路612ts
0 〜612ts15には、タイミング信号t0が与えられ、
カウンタ602及びラッチ回路604t0〜604t7に
は、クロック信号ckが与えれている。
【0087】上述のようなシステムクロックジェネレー
タ600は、上記図2に示したようなタイミング信号t
0〜t7や、タイミング信号ts0〜ts15等、パイ
プラインを構成する各ラッチ回路のラッチクロックを生
成するものである。
【0088】すなわち、システムクロックジェネレータ
600において、先ず、ラッチ回路601は、タイミン
グ信号t0のタイミングでアサイメントメモリ100か
らのUSE情報を得て、ゲート608に供給する。
【0089】同期タイプのカウンタ602により発生し
たカウンタ値は、AND回路603に入力され、AND
回路603にて全て「1」となったときの出力が、ラッ
チ回路604t0でクロック信号ckにより得られる。こ
のときのラッチ回路604t0の出力がタイミング信号t
0として出力される。
【0090】また、ラッチ回路604t1は、クロック信
号ckにより、ラッチ回路604t0の出力を得て、タイ
ミング信号t1としてゲート608に供給する。また、
ラッチ回路604t2は、クロック信号ckにより、ラッ
チ回路604t1の出力を得て、タイミング信号t2とし
てゲート608に供給する。さらに、ラッチ回路604
t3は、クロック信号ckにより、ラッチ回路604t2の
出力を得て、タイミング信号t3としてゲート608に
供給する。以降のラッチ回路604t3〜604t7も同様
にして、クロック信号ckにより、前段のラッチ回路の
出力を得て、タイミング信号t3〜t7としてゲート6
08に供給する。
【0091】ゲート608は、ラッチ回路601からの
USE情報が「1」であった場合、すなわち使用チャネ
ルであった場合、ラッチ回路604t1〜604t7からの
タイミング信号t1〜t7を出力し、ラッチ回路601
からのUSE情報が「0」であった場合、すなわち未使
用チャネルであった場合、ラッチ回路604t1〜604
t7からのタイミング信号t1〜t7を出力しない。
【0092】したがって、このゲート608により、使
用チャネルの場合のみ、パイプラインを構成する各ラッ
チ回路のラッチクロックが出力されることとなる。
【0093】一方、同期タイプのカウンタ610は、カ
ウンタ602のカウント値に従ったカウンタ値をAND
回路611に対して発生する。そして、AND回路61
1にて全て「1」となったときの出力が、ラッチ回路6
12ts0 でタイミング信号t0により得られる。このと
きのラッチ回路612ts0 の出力がタイミング信号ts
0として出力される。
【0094】また、ラッチ回路612ts1 は、タイミン
グ信号t0により、ラッチ回路612ts0 の出力を得
て、タイミング信号ts1として出力する。また、ラッ
チ回路612ts2 は、タイミング信号t0により、ラッ
チ回路612ts1 の出力を得て、タイミング信号ts2
として出力する。以降のラッチ回路612ts3 〜612
ts15も同様にして、タイミング信号t0により、前段の
ラッチ回路の出力を得て、タイミング信号ts3〜ts
15として出力する。
【0095】上述のように、電子楽器1では、アサイメ
ントメモリ100に格納されたUSE情報により、パイ
プラインを構成する各ラッチ回路のタイミング信号t1
〜t7を、未使用チャネルの場合には発生しないように
して、この間の各回路のスイッチング回数を極力減らす
ように構成したことにより、トータル的な省電力化を図
ることができる。特に、汎用の音源LSIを構成するの
はスイッチング時の消費電力が大きいCMOSが主流で
あることから、出力レベルのLow/Highに係わら
ず、各回路のスイッチング回数を極力減らすことによ
り、さらなる省電力化を図ることができる。また、この
省電力化を図ることにより、電磁波の放射量も相対的に
削減することができる。
【0096】尚、上述した実施の形態では、上述したウ
ェーブジェネレータ50は、楽音データを生成するため
に、その外部に設けられたウェーブテーブル60から波
形データを得るものとしたが、これに限らず、ウェーブ
ジェネレータ50内部で波形データを生成するようにし
てもよい。すなわち、本発明は、外部に設けられた波形
ROMから波形データを読み出す方式を採用したウェー
ブジェネレータに限らず、サイン合成方式やFM音源方
式を採用したウェーブジェネレータにも適用することが
できる。
【0097】また、上述した実施の形態では、スピーカ
80により生成した楽音を放音するようにしたが、スピ
ーカ80の代わりにヘッドホン又はイヤホンを設け、こ
のヘッドホン又はイヤホンから放音するようにしてもよ
い。これにより、さらなる省電力化を図ることができ
る。
【0098】
【発明の効果】以上説明したように本発明では、発音チ
ャネルの使用状態(使用中であるか未使用であるかの状
態)を示すチャネル情報に基づき、当該未使用の発音チ
ャネルに対応する、楽音データ生成のための複数の制御
データ(波形メモリにおける波形データの読出アドレス
を生成するウェーブテーブルアドレスジェネレータ用、
及びエンベロープ値を生成するエンベロープジェネレー
タ用のそれぞれ複数の制御データ等)をラッチするラッ
チ手段に対して、ラッチ信号を供給するか否かを制御す
るように構成したので、未使用の発音チャネルのタイム
スロットにおいては、波形メモリの読出アドレスを前回
の読出アドレスのままホールドすることができる。これ
により、この間は、波形メモリの出力がスイッチングさ
れず、また、装置内部の演算素子等もスイッチングされ
ない。したがって、例えば、ウェーブテーブルアドレス
ジェネレータ及びエンベロープジェネレータを備える楽
音データ生成のための回路(ウェーブジェネレータ)内
部のスイッチング回数を減らすことができるため、装置
のトータル的な省電力化を図ることができる。繰り返す
が、汎用のLSIを構成するのは、スイッチングに最も
大きな電力を消費するCMOSが主流であることから、
本発明を適用して、出力レベルのLow/Highに捕
らわれず、各素子のスイッチングの回数を極力減らすこ
とにより、さらなる省電力化を進めることができる。こ
のような省電力化を進めることにより、電磁波の放射量
も相対的に削減することもできる。また、未使用の発音
チャネルのタイムスロットにおいては、それ以前の使用
の発音チャネルのタイムスロットで得られた楽音データ
と同一の楽音データを出力し、その出力楽音データを累
算するまでにゲートすることができるため、同一の楽音
データが出力される度に、その同一の楽音データが累算
されるということを防ぐことができる。したがって、不
都合なくトータル的な省電力化を図ることができる。さ
らに、未使用の発音チャネルのタイムスロットにおいて
は、ラッチ手段にラッチクロック信号を与えられないた
め、ラッチ手段以降の処理回路はスイッチングされない
状態となる。したがって、さらなるトータル的な省電力
化を図ることができる、尚、ここでは、スイッチング時
に電力を多量に消費する素子としてCMOSを示した
が、本発明の効果は、同様な特性を持った素子ならば得
られるためCMOSに限定されない。DETAILED DESCRIPTION OF THE INVENTION
[0001]
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to an electronic musical instrument,
Device and desktop music (DTM: De
CMOS (Complementary Metal Ox) such as sk Top Music
ide Semiconductor) sound source LSI (Large
Scale Integrated Circuit) electronically generates musical sounds
Related to electronic musical sound generators applied to
is there.
[0002]
2. Description of the Related Art Conventionally, a plurality of sounds are generated simultaneously by time division.
Possible electronic musical instruments are known. Such an electronic musical instrument
Is to store the waveform data of the musical tone corresponding to the keyboard operation
(Read Only Memory) in time division
Allocating sound to channels (musical sound generation channels)
The number of channels prepared for generating musical tones
It is made to be able to pronounce sometimes.
[0003]
By the way, as described above,
Power consumption is the largest among conventional electronic musical instruments
Is a speaker drive circuit, which is used to obtain a general volume.
The driver circuit of the loudspeaker has a tone generator circuit (tone generator).
Nere) requires about one order of magnitude more power.
Therefore, by eliminating the speaker, the mainstream
From 5V power supply to 3V power supply
Digital electronic musical instruments. However, this
Electronic musical instruments save more power than the power required for speakers
It is not intended.
That is, a conventional electronic musical instrument is
Power saving is being promoted, but with the tone generator circuit itself
Because there was no one aiming at power saving, total
Power saving could not be achieved.
In particular, in the sound source circuit of a conventional electronic musical instrument,
Prepared for both sounding and non-sounding channels
For all channels that have been
The power required to calculate the channels that do not sound
It was always useless. For this reason, battery-powered electronic musical instruments
Are products that can only be used for a few days due to battery life.
there were.
Accordingly, the present invention eliminates the above disadvantages.
For electronically generating musical tones.
Power saving of sound source LSI and its peripheral logic (waveform ROM, etc.)
Power savings to achieve total power savings
To provide an electronic musical sound generator capable of
I do.
[0008]
SUMMARY OF THE INVENTION An electronic musical tone generator according to the present invention.
Generates multiple tone data in a time-division
Electronic tone generator that outputs tone data for sound channels
A plurality of pieces of music data for generating the plurality of pieces of tone data.
Control data and a sound channel
Memory device in which channel information is stored externally for each sound channel
Above and synchronized with the time slot of each sounding channel
From the storage means, a plurality of control data and
Reading the storage means so that the channel information is read out.
Control means for controlling the operation, and
Latches multiple control data for each sound channel.
Switch means and the latch means for each sound channel.
Latch signal supply means for selectively supplying a latch signal.
The latch signal supply means reads from the storage means.
Based on the output channel information, unused pronunciation channels
In the time slot ofFor the above latch means
Not to supply the latch signal
The latch means includes a plurality of control data for unused sound channels.
Data is not latchedIt is characterized by doing
You.
[0009]
BEST MODE FOR CARRYING OUT THE INVENTION Hereinafter, embodiments of the present invention will be described.
This will be described with reference to the drawings.
[0010] An electronic musical tone generator according to the present invention, for example,
It is applied to an electronic musical instrument 1 as shown in FIG.
The electronic musical instrument 1 has a structure as shown in FIG.
The keyboard 10, the operation panel 20, and the sequencer
Below, it is referred to as SEQ) 40 and a tone generator (hereinafter, referred to as SEQ).
Below, also called a wave generator) 50, operation panel
20 and SEQ40 and wave generator 50
Connected to the host CPU (Cent
ralProcessing Unit) 30 and wave generator 5
0 and a wave table 60 connected to the
Digital / analog to which the output of the neerator 50 is supplied
A converter (hereinafter, referred to as DAC) 70 and a DAC 70
And a speaker 80 to which the output is supplied. Ma
The host CPU 30 includes other electronic musical instruments and the like.
No external sound source device can be connected and this external sound source
MIDI (Musical Instrument Digital Int)
erface) signal to provide external control information
It has been done.
The wave generator 50 is connected to the host CP
The output of U30 is supplied via input terminal I51.
Output of the assignment memory 100 and the assignment memory 100
Wavetable address generator to which each power is supplied
Data 200 and the envelope generator 300,
Envelope connected to envelope generator 300
Memory 400 and the output of assignment memory 100
Each provided accumulator 500 and system clock generator
Of the generator 600 and the envelope generator 300
Output and output of wavetable 60 from input terminal I54
And a multiplier 700 to which a force is supplied. Also,
The addressing circuit 10
1 is also supplied and the wavetable address generator
The output of the oscillator 200 is output via the output terminal I53.
The table 60 is supplied. Further
In addition, the envelope memory 400 stores the addressing times.
The output of the path 401 is supplied and the envelope memory 400
Is supplied to the host CPU 30 via the output terminal I52.
It is made to be paid. Furthermore, the accumulator 50
0 is supplied with the output of multiplier 700 and accumulator 500
Is supplied to the DAC 70 via the output terminal I55.
It has been made.
The electronic musical instrument 1 as described above has a sounding channel
For example, 16 channels are used as (music generation channels)
It is easy to use 16 channels (16 sounds)
It is designed to be able to generate sounds and generate simultaneous sounds.
Therefore, first, a series of operations of the electronic musical instrument 1 will be described.
explain about.
The host CPU 30 is, for example, a microcomputer.
Key operation information of the keyboard 10
Operation information of the channel 20, output information of the SEQ 40, and the above
MIDI information of the external sound source device
A sounding instruction or a mute instruction based on each information is input to the input terminal I.
The signal is supplied to the wave generator 50 via 51.
In the wave generator 50, the input
The command from the host CPU 30 supplied via the terminal I51
The command information is stored in the assignment memory 100. So
Then, the information stored in the assignment memory 100 is
The information is read out in a time-sharing manner, and
Wave for generating read address of wave table 60
Table address generator 200 and envelope
The envelope generator 300 that generates the
Work.
Wave table address generator 2
The read address generated at 00 is output via the output terminal I53.
And supplied to the wavetable 60. Wave tape
The module 60 is composed of a ROM, and is configured to read data from the output terminal I53.
Outputs waveform data to input terminal I54 according to address
I do. Therefore, from the input terminal I54 to the multiplier 700
Is supplied with the waveform data output from the wavetable 60.
Be paid.
Incidentally, the wave table 60 may be a RAM or
Wave generator 50 composed of flash RAM
Is not operating, the host CPU 30
(R / W).
Also, the envelope generator 300
The envelope value obtained by the calculation is also supplied to the multiplier 700.
Be paid.
Therefore, the multiplier 700
Read address of the table address generator 200
Waveform data read from the wavetable 60 in accordance with
Data obtained by the envelope generator 300.
It is multiplied by the envelope value.
The accumulator 500 calculates the multiplication result of the multiplier 700
Is accumulated, and accumulated for 16 channels in one sample period.
Outputs the calculation result.
The accumulation result of this accumulator 500 is
It becomes the output of the generator 50, and D is output through the output terminal I55.
Supplied to AC70 and converted to analog by DAC70
Thereafter, sound is emitted from the speaker 80.
Next, inside the wave generator 50,
This will be specifically described.
Here, FIG.
Timing chart showing timing clock at 0
USE signal and timing signals t0 to t in the figure.
7, ts0 to ts15 are system clock generators.
Data 600.
First, the USE signal is a time-division signal.
Here, ch. 0 to ch. Time for 15 16 channels
Percent), the channel of the provided time slot is used
"1" when it is used, when it is not used
It becomes "0". Therefore, in this figure, the used channel
Is ch. 0 and ch. 2 channels.
The timing signal t0 is a USE signal.
Is always output, regardless of the value of
The USE signal of each time division channel is generated by the
It is made to be latched.
On the other hand, the other timing signals t1 to t7 are
If the USE signal is "0", it will not be output.
Has been made. That is, the wave generator 50
Then, when the USE signal is “1”,
Therefore, a pipe described later with the timing signals t1 to t7 is used.
Line latch clock is generated and USE signal is "0"
In the case of, because it is an unused channel, the point in FIG.
As shown by the line, make sure that the latch clock does not occur.
Has been made. Therefore, the unused channel
Channel ch. 1 and ch. 3 to ch. 15 timeslots
In the reset, the latch signals of the timing signals t1 to t7 are
The lock is omitted.
The timing signals ts0 to ts15 are
Nell ch. 0 to ch. 15 respectively.
This signal is “1” at the time of the corresponding channel. here
Is the timing signal ts1 in the accumulator 500 described later.
Only use.
The USE signal and the timing described above
System for generating signals t0 to t7 and ts0 to ts15
The details of the clock generator 600 will be described later.
You.
Therefore, first, the assignment memory 100
Will be specifically described.
The assignment memory 100 is, for example,
As shown in FIG. 0 to ch. Every 15
8A corresponding to the timing signals t0 to t7 described above.
A dress is provided for each.
At the address corresponding to the timing signal t0,
Indicates whether the channel is used or unused.
USE information is stored and corresponds to the timing signal t1.
Address is used to store enable information.
It has been done.
An address corresponding to the timing signal t2
The loop top information is stored in the
The address corresponding to the signal t3 contains the loop end information.
At the address corresponding to the timing signal t4,
Frequency number (hereinafter referred to as F number) information is stored
The address corresponding to the timing signal t5 is
As address information is stored, and the
The corresponding address has an envelope target value (hereinafter referred to as E
Envelope speed (hereinafter referred to as E speed)
Information is stored and corresponds to the timing signal t7.
The loudness information is stored at the address
It has been done.
The various information for each channel as described above is
Various information stored and stored by the host CPU 30
Information is read out by the addressing circuit 101.
Has been made.
In particular, an address corresponding to the timing signal t0
The USE information stored in the address
This is information to be generated, and is generated by the host CPU 30.
USE information of the channel assigned when the key is pressed
Set to “1” and envelope release ends after key release
The completed channel is confirmed in the envelope memory 400.
When reset, it is reset to "0".
The data stored in the assignment memory 100 is
Details of various types of information will be described later. Also here
Are assigned to addresses corresponding to the timing signals t0 to t7, respectively.
Species information is arranged, but it is limited to this arrangement.
Not something.
Next, the assignment memo described above is used.
Read and operate various information stored in the memory 100
About Wavetable Address Generator 200
This will be specifically described.
Wave table address generator 2
00 is, for example, as shown in FIG.
Latches to which the information read from the memory 100 is respectively supplied.
Paths 201 to 206 and each of latch circuits 203 and 206
An adder 210 to which an output is supplied, a latch circuit 202 and
And a comparator 211 to which each output of the adder 210 is supplied;
Each of the latch circuit 204, the adder 210, and the comparator 211
A selector 212 to which an output is supplied, a latch circuit 201 and
An adder 213 to which each output of the selector 212 is supplied;
A latch circuit 207 to which the output of the adder 213 is supplied;
FACC memory 214 to which the output of selector 212 is supplied
And the gate 2 to which the output of the FACC memory 214 is supplied
16 and the output of the latch circuit 207 is
Output of the bootable address generator 200
Supplied to the wavetable 60.
You. The gate 216 is connected to the output of the latch circuit 205.
The output of the gate 216 is
6 is provided. In addition, FACC
The memory 214 stores the output of the addressing circuit 215
Is read out.
The latch circuits 201 to 207 have:
Timing signals t1 to t7 as shown in FIG.
These latch circuits 201 to 207
Constitutes a pipeline.
Therefore, for example, the wavetable address
Ch. To 0
When an operation is performed on the latch, the latch circuit 201
At the timing of the falling edge of the
Bias address information read from the
The information is obtained and supplied to the adder 213. This bias add
Address information indicates that the waveform being calculated is
The value indicating whether the address is written from the address,
This is information indicating a start address.
The latch circuit 203 is provided with a timing signal.
Read from the assignment memory 100 by the number t4
The obtained F number information is obtained and supplied to the adder 210. This
Is the value for generating the frequency,
It is accumulated by the adder 210.
Further, the latch circuit 202 outputs a timing signal.
Read from the assignment memory 100 by the number t3
The loop end information is obtained and connected to the A terminal of the comparator 211.
Supplied to the latch circuit 204 according to the timing signal t2.
The loop read from the assignment memory 100
The top information is obtained and supplied to the B terminal of the selector 212.
These loop end information and loop top information are
For changing the shape reading method to the Head + Loop method
For example, an address as shown in FIG. 5 is generated.
This is the information to make it work. In addition, wavetable address
The generator 200 performs calculations for 16 channels.
Therefore, the address read by the Head + Loop method
Less than 16 types are generated simultaneously in one sampling period
It is, of course, possible.
The latch circuit 205 is provided with a timing signal.
Read from the assignment memory 100 by the number t1
Obtained enable information is supplied to the gate 216.
This enable information is keyed by the host CPU 30.
Is temporarily turned off at the time of the
FACC stored in the FACC memory 214
Is cleared.
Further, the latch circuit 206 receives the timing signal.
By the signal t4, the FACC from the gate 216 is obtained and added.
It is supplied to the arithmetic unit 210.
The adder 210 is connected to the latch circuit 20
3 and the F number from the latch circuit 205.
Add CC and compare the result as FACC
To terminal B of selector 211 and terminal A of selector 212.
You.
The comparator 211 is supplied to its A terminal.
Loop end information from the latch circuit 202 and its B end
Compare with FACC from adder 210 supplied to the child
And the loop end information is equal to or greater than the above addition result
(A ≦ B), that is, FACC which is the accumulated value of the F number
Reaches the end of the loop, the result is
To supply.
The selector 212 receives the comparison from the comparator 211
As a result, the accumulated value of F number reaches the loop end
The loop top information from the latch circuit 204,
And the accumulated value of F number reaches the loop end
If not, the FACC from the adder 210 is selected.
Then, the selector 212 selects the selected loop top information or
Stores the FACC in the FACC memory 214.
To the upper bit information (b16 to b31) of the information.
It is supplied to the arithmetic unit 213.
The adder 213 outputs the signal from the latch circuit 201.
Bias address information and the upper bits from selector 212
(B16 to b31) and add the result
It is supplied to the latch circuit 207.
The latch circuit 207 has a timing signal t4
Obtains the addition result from the adder 213, and
Not through the output buffer,
Output as read address.
The data stored in the FACC memory 214
Information is read as FACC by gate 216
And output to the latch circuit 206. At this time,
The gate 216 has enable information from the latch circuit 205.
Information is provided. This enable information is provided by host C
PU30 temporarily turns off at key-on event
FACC is cleared at this time
It is.
The channel to be used ch. 2 o'clock is also up
The used channel ch. Because it is the same as midnight,
Detailed description is omitted.
On the other hand, the wave table address generator
Channel 200, which is an unused channel. Performance for 1
When the calculation is performed, as shown by the dotted line in FIG.
No latch clock of the timing signals t1 to t7 is generated.
No. Therefore, the latch circuits 201 to 207 have
Latch signals of the switching signals t1 to t7 are not supplied.
Therefore, the latch circuits 201 to 207 do not operate, that is,
The contents of the pipeline processing latch are not updated.
Calculation processing of the used channel, for example,
Channel ch. The value latched by the 0 processing remains.
Becomes
The unused channel ch. 3 to ch. Fifteen
The operation at the time of the use channel ch. Same as 1:00
Therefore, the detailed description is omitted.
Therefore, the unused channel ch. 1 and
ch. 3 to ch. In 15 time slots,
Not only the latches of the latch circuits 201 to 207 but also
Circuits (adder 210, comparator 211,
The selector 212 and the adder 213) do not operate.
And the CMOS elements constituting the circuit are switches
Will be in a state where it does not run. This allows the wavetable
Since the read address of 60 does not change,
There is no need to switch the output of the console 60.
The assignment memory 100 and the FACC
The memory 214 is used regardless of whether the channel is used or not.
Addressing circuit 101 and addressing circuit 2 respectively
15 accessed.
Next, the envelope generator 300
Will be specifically described.
For example, the envelope generator 300
For example, as shown in FIG.
Latch circuits 301 to 301 to which read information is respectively supplied
302 and a multiplier to which the output of the latch circuit 301 is supplied
309 and the output of the latch circuit 302 are supplied.
An arithmetic unit 306 and a multiplier 307; a latch circuit 303;
Gate to which each output of the envelope memory 400 is supplied
310 and a latch circuit to which the output of the gate 310 is supplied
304, outputs of the latch circuit 304 and the multiplier 307
Is supplied from the adder 308 to which the
And a latch circuit 305 supplied thereto.
The output of 305 is the output of the envelope generator 300
Is supplied to the multiplier 700.
The output of the latch circuit 304 is also supplied to the subtractor 306.
The output of the subtractor 306 is also supplied to a multiplier 307.
It has been made. Further, the output of the adder 308
Are stored in the multiplier 309 and the envelope memory 400, respectively.
It is made to be supplied. And the latch circuit 3
01, 302, 303, 304 and 305
The timing signals t7, t6, t1, t as shown in FIG.
7 and t7 are provided, respectively.
The envelope generator 3 as described above
00 means that the accumulated value of the envelope is EACC
hand,
EACC = (E target value−EACC) × E speed + EA
CC
The envelope is gradually increased to the E target value by the following arithmetic expression.
To bring them closer.
That is, this envelope generator
300, the channel to be used, ch. Against 0
When the operation is performed, the latch circuit 301
At the falling timing of the signal t7, the assignment
The loudness information read from the memory 100 is obtained,
It is supplied to the arithmetic unit 309. This loudness information is
It is a parameter for controlling the rope value as a whole,
Multiplied by EACC in multiplier 309 and output
is there.
Further, the latch circuit 302
Read from the assignment memory 100 by the number t6
E target value / E speed information
The signal is supplied to the A terminal of the subtractor 306,
The information is supplied to the multiplier 307.
The latch circuit 303 outputs a timing signal.
Read from the assignment memory 100 by the number t1
Obtained enable information is supplied to the gate 310.
This enable information is keyed by the host CPU 30.
Is temporarily turned off at the time of the
EACC (envelope of the envelope) supplied to the gate 310
(Accumulated value) is cleared.
Also, the latch circuit 304
With the signal t7, the EACC from the gate 310 is obtained and reduced.
It is supplied to the B terminal of the arithmetic unit 306 and the adder 308.
The subtractor 306 is connected to its A terminal.
From the supplied E target value information from the latch circuit 302,
EACC from the latch circuit 304 supplied to the B terminal of
Is subtracted (E target value−EACC). So this
By subtracter 306, how much EACC is not equal to E target value
Is required.
The multiplier 307 calculates the subtraction result of the subtractor 306.
And E speed information from the latch circuit 302, that is,
Multiply by the rate at which the EACC reaches the E target
((E target value−EACC) × E speed) and its multiplication result
The result is supplied to the adder 308.
The adder 308 calculates the multiplication result of the multiplier 307.
And EACC from the latch circuit 304, that is,
EACC and ((E target value−EACC) × E speed)
+ EACC), and the addition result is used as the current EACC.
Supplied to the multiplier 309 and the envelope memory 400
I do.
The multiplier 309 outputs the EA from the adder 308
CC and the loudness information from the latch circuit 301 are multiplied.
The result is supplied to the latch circuit 305.
The latch circuit 305 has a timing signal t7
, The multiplication result from the multiplier 309 is obtained. This
The multiplication result latched by the switch circuit 305
Envelope value which is the output of the loop generator 300 and
Then, it is supplied to the multiplier 200.
The channel to be used ch. 2 o'clock is also up
The used channel ch. Because it is the same as midnight,
Detailed description is omitted.
On the other hand, the envelope generator 300
An unused channel ch. An operation is performed on 1
If the above mentioned wavetable address generator
As in the case of 200, as shown by the dotted line in FIG.
No latch clock of the imaging signals t1 to t7 is generated.
No. Therefore, the latch circuits 301 to 305
Latch signals of the switching signals t7, t6 and t1 are supplied.
Therefore, the latch circuits 301 to 305 do not operate.
The operation processing of the used channel performed in the
Channel ch. The value latched by the processing of 0 remains
It will be.
The unused channel ch. 3 to ch. Fifteen
The operation at the time of the use channel ch. Same as 1:00
Therefore, the detailed description is omitted.
Therefore, the unused channel ch. 1 and
ch. 3 to ch. In 15 time slots,
Latch circuits 301 to 305, as well as a subtractor 3
06, multiplier 307, adder 308 and multiplier 309
Does not work, keeps the same value during this time, configures the circuit
The CMOS element does not switch.
Next, the accumulator 500 will be specifically described.
I will tell.
The accumulator 500 is, for example, as shown in FIG.
Circuit 5 to which the multiplication result of the multiplier 700 is supplied
01 and information read from the assignment memory 100.
And a latch circuit 502 to which information is supplied.
Circuit 503 to which the output of
01 and a gate to which each output of the latch circuit 503 is supplied.
510 and an adder 51 to which the output of the gate 510 is supplied
1 and the latch circuit 50 to which the output of the adder 511 is supplied.
4 and a latch to which the output of the latch circuit 504 is supplied, respectively.
Circuit 513 and a gate 512,
The output of the path 513 is the output of the accumulator 500, that is, the way.
Is supplied to the DAC 70 as the output of the
It has been made. The output of the gate 512 is
The data is supplied to an adder 511. Soshi
The latch circuits 501 to 504 have the configuration shown in FIG.
Such a timing signal t0 is provided, and a latch circuit
The channel ch. 513 as shown in FIG. 1
Is given. Also the gate
512, the timing signal ts1 is output from the inverter 5
12a.
Incidentally, the timing signal t0 is, as described above,
Is always output regardless of whether the channel is used or not.
Therefore, the latch circuits 501 to 504 use channels,
The timing signal t0 is always supplied regardless of whether it is unused.
You. Further, the timing signal ts1 also uses the channel,
Since it is always output irrespective of unused state, the latch circuit 51
3 and the gate 512 indicate whether the channel is used or not.
Instead, the timing signal ts1 is always supplied.
The accumulator 500 as described above is time-divisionally
Generated 16-channel tone data (sample points
Value).
Here, as described above, the USE signal is
In the case of “1”, that is, in the case of the used channel,
Address by the address table 200
While the waveform data is read out from the
The envelope is generated by the envelope generator 300.
Generated and read waveform data and generated envelope
The rope is multiplied by multiplier 700. On the other hand, the USE signal
Is “0”, that is, in the case of an unused channel,
Wavetable address generator 200 and end
The envelope generator 300 retains the previous data
Therefore, the multiplier 700 outputs the previous power
The calculation result is output. Therefore, in this case
Need to clear (gate) the result of the multiplication.
Therefore, in this accumulator 500, unused channels
Data from the multiplier 700 input at the timing of the channel
Data gates.
That is, first, as described above, the envelope
Timing generator from rope generator 300 to multiplier 700
That the envelope is supplied at the timing of the
Thus, the multiplier 700 also supplies the latch circuit 501 with
The multiplication result is supplied at the timing of the imaging signal t7.
You.
The latch circuit 501 controls the timing and
Considering the timing, the next timing of the timing signal t7
Provided for re-latching at the signal t0,
By the timing signal t0, the power from the multiplier 700
The calculation result is obtained and supplied to the gate 510.
On the other hand, the latch circuits 502 and 503
Wave table address generator 200 and envelope
Delay caused by the arithmetic processing of the rope generator 300
This is provided to make this one channel.
Therefore, the latch circuit 502 outputs the timing signal t0
As a result, the output of the assignment memory 100 is obtained.
The latch circuit 503 supplies the
The output of the latch circuit 502 is obtained by the imaging signal t0.
The control signal is supplied to the gate 510 as a control signal.
Gate 510 receives the signal from latch circuit 503
The control signal causes the
Data from the latch circuit 501 to the adder 511 as it is.
Supply, and in the case of an unused channel, a latch circuit 501
Is cleared and supplied to the adder 511.
The adder 511 outputs the output of the gate 510 and the gate.
Add the output of port 512 and supply it to latch circuit 504
Then, the latch circuit 504 operates in response to the timing signal t0.
The addition result from the arithmetic unit 511 is obtained and the result is obtained through the gate 512.
It is supplied to the adder 511. Such accumulation processing is
Nell ch. 0 to ch. 15 hours.
At this time, the gate 512 is connected to the inverter 5
12a via the timing signal ts1
When the accumulation process for 16 channels is started,
The data (accumulated result) from the switch circuit 504 is cleared.
Here, as described above, the latch circuits 501 to 503
Therefore, the data supplied to the adder 511 is one channel
Channel ch. At 1
Adder 511 has channel ch. 0 data is input
You. Therefore, the contents (accumulated result) of the latch circuit 504 are cleared.
Is determined by the timing of the timing signal ts1.
I'm trying.
The 16 channels obtained as described above
The accumulation result is supplied to the latch circuit 513,
Reference numeral 513 denotes 16 channels based on the timing signal ts1.
Is obtained, and the accumulation result is output from the accumulator 500.
To the DAC 70.
Next, the system clock generator 6
00 will be specifically described.
The system clock generator 600 includes:
For example, as shown in FIG.
Circuit 601 to which the information read from is supplied
, The counter 602, and the output of the counter 602, respectively.
The supplied AND circuit 603 and counter 610,
An AND circuit 611 to which an output of the counter 610 is supplied;
Latch circuit 604t0 to which the output of ND circuit 603 is supplied
To 604t7, latch circuits 601 and 604t0 to 604
a gate 608 to which each output of t7 is supplied, and an AND circuit 6
Latch circuits 612ts0 to 612 to which 11 outputs are supplied
ts15, and the output of the latch circuit 604t0 is
The output of the gate 608 is output as the
Output as timing signals t1 to t7,
The output of each of the switch circuits 612ts0 to 612ts15 is a timing signal.
No. ts0 to ts15 are output.
You. Then, the latch circuit 601 and the latch circuit 612ts
The timing signal t0 is given to 0 to 612ts15,
For the counter 602 and the latch circuits 604t0 to 604t7
Is supplied with a clock signal ck.
The system clock generator as described above
The timing signal t as shown in FIG.
0 to t7 and timing signals ts0 to ts15
Generates the latch clock of each latch circuit that constitutes the pipeline.
Is what it does.
That is, the system clock generator
At 600, first, the latch circuit 601
The assignment memory 100 at the timing of the
The USE information is obtained and supplied to the gate 608.
Generated by the synchronous type counter 602
The counted value is input to an AND circuit 603,
The output when all become “1” in the circuit 603 is
It is obtained by the clock signal ck in the switching circuit 604t0. This
The output of the latch circuit 604t0 at the time of
Output as 0.
The latch circuit 604t1 receives the clock signal.
With the signal ck, the output of the latch circuit 604t0 is obtained.
The signal is supplied to the gate 608 as the mining signal t1. Also,
The latch circuit 604t2 latches the clock signal ck.
The output of the switch circuit 604t1 is obtained and used as a timing signal t2.
To the gate 608. Further, the latch circuit 604
t3 is the time required for the latch circuit 604t2 by the clock signal ck.
The output is obtained and the timing signal t3 is supplied to the gate 608.
Supply. The same applies to the subsequent latch circuits 604t3 to 604t7.
Then, the clock signal ck causes the latch circuit of the preceding stage to
An output is obtained, and the timing signal t3 to t7 is output to the gate 6
08.
The gate 608 receives the signal from the latch circuit 601.
If the USE information is “1”, that is,
If the latch circuit 604t1 to 604t7
The timing signals t1 to t7 are output and the latch circuit 601 is output.
If the USE information from is “0”, that is,
604t1 to 604
The timing signals t1 to t7 from t7 are not output.
Therefore, this gate 608 makes use of
For each channel only,
The latch clock of the switch circuit is output.
On the other hand, the synchronous type counter 610
AND the count value according to the count value of the
Occurs for circuit 611. And the AND circuit 61
The output when all become “1” at 1 is the latch circuit 6
It is obtained by the timing signal t0 at 12ts0. This and
The output of the latch circuit 612ts0 is the timing signal ts
Output as 0.
The latch circuit 612ts1 has a timing
The output of the latch circuit 612ts0 is obtained by the switching signal t0.
Then, it is output as the timing signal ts1. Also,
The latch circuit 612ts2 is latched by the timing signal t0.
The output of the switch circuit 612ts1 is obtained and the timing signal ts2
Output as Subsequent latch circuits 612ts3 to 612
Similarly, ts15 is also provided by the timing signal t0 in the preceding stage.
The output of the latch circuit is obtained, and the timing signals ts3 to ts
15 is output.
As described above, the electronic musical instrument 1
The USE information stored in the
Timing signal t1 of each latch circuit forming the pipeline
~ T7 should not occur in the case of an unused channel
And minimize the number of switching of each circuit during this time
Configuration to achieve total power savings.
Can be In particular, configuring a general-purpose sound source LSI
The mainstream is CMOS with large power consumption during switching
Because of this, regardless of the output level Low / High
By reducing the number of switching times of each circuit as much as possible.
Therefore, further power saving can be achieved. Also this
By reducing power consumption, the amount of electromagnetic wave radiation is relatively reduced
Can be reduced.
In the above-described embodiment, the aforementioned c
The wave generator 50 is used to generate musical sound data.
In addition, the wave table 60 provided outside the
It is assumed that shape data is obtained.
Generate waveform data inside the generator 50
You may. That is, the present invention provides an externally provided waveform.
Way adopting the method of reading waveform data from ROM
Not only for generators but also for signature synthesis and FM sound sources
It can also be applied to wave generators using formulas
it can.
In the above-described embodiment, the speaker
The tone generated by the 80 is emitted.
Headphones or earphones instead of the
Sound from headphones or earphones
No. As a result, further power savings can be achieved.
You.
[0098]
As described above, according to the present invention, the pronunciation
Channel usage status (whether in use or unused)
Based on the channel information indicating the
Multiple controls for music data generation corresponding to channels
Data (read address of waveform data in waveform memory)
For generating a wavetable address generator,
And an envelope generator for generating envelope values
Latch data for each of multiple
Control means for supplying a latch signal to the
Time of unused sound channels
In the slot, the read address of the waveform memory
Can be held as it is. this
The output of the waveform memory is switched during this time.
And the arithmetic elements inside the device are also switched.
Absent. So, for example, the wavetable address
Music with generator and envelope generator
In the circuit (wave generator) for generating sound data
Because the number of switching of the unit can be reduced, the device
Can achieve total power saving. repeat
However, a general-purpose LSI is most often used for switching.
Since CMOS, which consumes large power, is mainstream,
By applying the present invention, the output level is captured at Low / High.
Minimizing the number of switching of each element
Thus, further power saving can be promoted. This
The amount of electromagnetic radiation can be reduced by
Can also be relatively reduced. Also, unused pronunciation
Previous use in channel time slots
Data obtained in the time slot of the sound channel
Output the same tone data as
You can gate before calculating
Each time data is output, the same tone data is accumulated
Can be prevented. Therefore,
Total power saving can be achieved without any inconvenience. Sa
In addition, in the time slot of the unused sound channel
Cannot receive the latch clock signal to the latch means.
Therefore, the processing circuit after the latch means is not switched.
State. Therefore, further total power saving
Note that here, switching
Shows CMOS as an element that consumes a lot of power
However, the effects of the present invention can be obtained by devices having similar characteristics.
Is not limited to CMOS.
【図面の簡単な説明】
【図1】本発明に係る電子楽音発生装置を適用した電子
楽器の構成を示すブロック図である。
【図2】ウェーブジェネレータでのタイミングクロック
を示すタイミングチャートである。
【図3】アサイメントメモリのメモリフォーマットを説
明するための図である。
【図4】ウェーブテーブルアドレスジェネレータの構成
を示すブロック図である。
【図5】Head+Loop方式により発生するアドレ
スを説明するための図である。
【図6】エンベロープジェネレータの構成を示すブロッ
ク図である。
【図7】累算器の構成を示すブロック図である。
【図8】システムクロックジェネレータの構成を示すブ
ロック図である。
【符号の説明】
1 電子楽器
10 鍵盤
20 操作パネル
30 ホストCPU
40 シーケンサ
50 ウェーブジェネレータ
60 ウェーブテーブル
70 DAC
80 スピーカ
100 アサイメントメモリ
200 ウェーブテーブルアドレスジェネレータ
300 エンベロープジェネレータ
400 エンベロープメモリ
500 累算器
600 システムクロックジェネレータ
I51〜I55 入出力端子BRIEF DESCRIPTION OF THE DRAWINGS FIG. 1 is a block diagram showing the configuration of an electronic musical instrument to which an electronic musical tone generator according to the present invention is applied. FIG. 2 is a timing chart showing a timing clock in a wave generator. FIG. 3 is a diagram for explaining a memory format of an assignment memory. FIG. 4 is a block diagram illustrating a configuration of a wavetable address generator. FIG. 5 is a diagram for explaining addresses generated by the Head + Loop method. FIG. 6 is a block diagram illustrating a configuration of an envelope generator. FIG. 7 is a block diagram showing a configuration of an accumulator. FIG. 8 is a block diagram showing a configuration of a system clock generator. [Description of Signs] 1 Electronic musical instrument 10 Keyboard 20 Operation panel 30 Host CPU 40 Sequencer 50 Wave generator 60 Wave table 70 DAC 80 Speaker 100 Assignment memory 200 Wave table address generator 300 Envelope generator 400 Envelope memory 500 Accumulator 600 System clock Generator I51 to I55 I / O terminal
Claims (1)
複数の発音チャネル分の楽音データを出力する電子楽音
発生装置であって、 上記複数の楽音データを生成するための複数の制御デー
タ、及び発音チャネルの使用状態を示すチャネル情報が
発音チャネル毎に外部より記憶される記憶手段と、 各発音チャネルのタイムスロットに同期して上記記憶手
段から発音チャネル毎に複数の制御データ及びチャネル
情報が読み出されるように上記記憶手段の読み出しを制
御する制御手段と、 上記記憶手段から読み出された発音チャネル毎の複数の
制御データをラッチするラッチ手段と、 上記ラッチ手段に対して発音チャネル毎に選択的にラッ
チ信号を供給するラッチ信号供給手段とを備え、 上記ラッチ信号供給手段は、上記記憶手段から読み出さ
れたチャネル情報に基づいて、未使用の発音チャネルの
タイムスロットにおいては、上記ラッチ手段に対してラ
ッチ信号を供給しないようにすることにより、上記ラッ
チ手段には未使用の発音チャンネルの複数の制御データ
はラッチされないようにしたことを特徴とする電子楽音
発生装置。(57) [Claims] [Claim 1] A plurality of musical sound data is generated by time division,
An electronic tone generator for outputting tone data for a plurality of tone channels, wherein a plurality of control data for generating the plurality of tone data and channel information indicating a use state of the tone channels are externally provided for each tone channel. A storage unit that stores the control unit and controls reading of the storage unit such that a plurality of control data and channel information are read from the storage unit for each sounding channel in synchronization with a time slot of each sounding channel; Latch means for latching a plurality of control data for each sounding channel read from the storage means; and latch signal supply means for selectively supplying a latch signal to the latch means for each sounding channel, The latch signal supply unit is configured to generate an unused sounding channel based on the channel information read from the storage unit. In time slot, La to said latch means
By not supplying the latch signal,
Control means for unused sound channels
An electronic musical tone generating device characterized in that it is not latched .
Priority Applications (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP01985897A JP3364573B2 (en) | 1997-01-17 | 1997-01-17 | Electronic tone generator |
| US09/007,244 US5925842A (en) | 1997-01-17 | 1998-01-14 | Electronic music tone generator with power saving control |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP01985897A JP3364573B2 (en) | 1997-01-17 | 1997-01-17 | Electronic tone generator |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JPH10207463A JPH10207463A (en) | 1998-08-07 |
| JP3364573B2 true JP3364573B2 (en) | 2003-01-08 |
Family
ID=12010939
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP01985897A Expired - Fee Related JP3364573B2 (en) | 1997-01-17 | 1997-01-17 | Electronic tone generator |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JP3364573B2 (en) |
-
1997
- 1997-01-17 JP JP01985897A patent/JP3364573B2/en not_active Expired - Fee Related
Also Published As
| Publication number | Publication date |
|---|---|
| JPH10207463A (en) | 1998-08-07 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| KR0160493B1 (en) | Digital audio signal generating apparatus | |
| CN103310780A (en) | Musical sound generation device and musical sound generation method | |
| JPS6353560B2 (en) | ||
| JPS62143097A (en) | Musical sound waveform signal generator | |
| US9000284B2 (en) | Musical sound generation device, musical sound generation method, and storage medium | |
| JPH09258737A (en) | Sound source system using computer software | |
| JP3364573B2 (en) | Electronic tone generator | |
| US5522010A (en) | Pitch control apparatus for setting coefficients for cross-fading operation in accordance with intervals between write address and a number of read addresses in a sampling cycle | |
| JP3416011B2 (en) | Electronic tone generator | |
| US5925842A (en) | Electronic music tone generator with power saving control | |
| JPS623298A (en) | Electronic musical instrument | |
| JP2580814B2 (en) | Music signal generator | |
| US6972362B2 (en) | Method and device for generating electronic sounds and portable apparatus utilizing such device and method | |
| US4683794A (en) | Automatic music playing apparatus capable of producing a plurality of different sounds simultaneously | |
| JPH02135564A (en) | Data processor | |
| JP3050779B2 (en) | Signal processing device | |
| JP3221987B2 (en) | Delay time modulation effect device | |
| JP2689763B2 (en) | How to read waveform data | |
| JP3741047B2 (en) | Sound generator | |
| JP3245411B2 (en) | Electronic musical instrument | |
| JP3693046B2 (en) | Music generator | |
| JP3430575B2 (en) | Electronic music signal synthesizer | |
| JPH1185155A (en) | Mixing device and integrated circuit for musical instrument | |
| JPH11203129A (en) | Digital signal processor | |
| JP2004309521A (en) | Pcm sound source device |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| LAPS | Cancellation because of no payment of annual fees |