JP2716088B2 - Music signal generator - Google Patents

Music signal generator

Info

Publication number
JP2716088B2
JP2716088B2 JP61086835A JP8683586A JP2716088B2 JP 2716088 B2 JP2716088 B2 JP 2716088B2 JP 61086835 A JP61086835 A JP 61086835A JP 8683586 A JP8683586 A JP 8683586A JP 2716088 B2 JP2716088 B2 JP 2716088B2
Authority
JP
Japan
Prior art keywords
data
output
circuit
memory
waveform
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP61086835A
Other languages
Japanese (ja)
Other versions
JPS62242996A (en
Inventor
秀雄 鈴木
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Yamaha Corp
Original Assignee
Yamaha Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Yamaha Corp filed Critical Yamaha Corp
Priority to JP61086835A priority Critical patent/JP2716088B2/en
Priority to US07/037,510 priority patent/US4916996A/en
Priority to EP93100419A priority patent/EP0548046B1/en
Priority to DE3750828T priority patent/DE3750828T2/en
Priority to DE3752090T priority patent/DE3752090T2/en
Priority to EP93100418A priority patent/EP0548045B1/en
Priority to EP87105545A priority patent/EP0241922B1/en
Priority to DE3752098T priority patent/DE3752098T2/en
Publication of JPS62242996A publication Critical patent/JPS62242996A/en
Priority to HK98100755A priority patent/HK1002146A1/en
Application granted granted Critical
Publication of JP2716088B2 publication Critical patent/JP2716088B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Landscapes

  • Electrophonic Musical Instruments (AREA)

Description

【発明の詳細な説明】 「産業上の利用分野」 この発明は、電子楽器等において用いられる楽音信号
発生装置に関する。 「従来の技術」 電子楽器においては、いかに自然楽器の楽音に近い楽
音を発生するかが大きな課題である。電子楽器における
楽音信号発生方法としては種々の方法が知られている
が、それらの中でも、自然楽器の楽音波形の各瞬時値を
逐次サンプリングしてメモリに記憶させておき、この記
憶させたサンプリングデータを読み出して楽音信号を発
生するPCM方式が、最も自然楽器に近い楽音を発生する
ことができて優れている。なお、このPCM方式について
は、特開昭52−121313号公報(発明の名称;電子楽器)
に開示されている。 「発明が解決しようとする問題点」 自然楽器の楽音波形は、同一の楽器でも音高または音
域等によって微妙に異なっている。例えば、ピアノの場
合、わずかではあるが各音高(音域)毎に楽音波形が異
なっている。なお、各音高毎に波形の周期が異なってい
るのは勿論であるが、周期以外の波形そのものの形も異
なっている。したがって、PCM方式によって真に自然楽
器に近い楽音を発生しようとした場合、各楽器毎に、ま
た必要に応じて各音高(音域)毎に楽音波形をメモリし
なければならず、この結果メモリ容量が極めて膨大にな
る。すなわち、PCM方式の楽音信号発生装置において
は、メモリ容量をいかに削減するかが最大の課題であ
る。そこで、この発明の出願人は、先に線形予測法を用
いてデータ量の削減を行うことを特徴とする「楽音信号
発生装置」(特願昭59−212382号)を出願した。 この発明は上記の先願発明をさらに改良したもので、
その目的は、メモリ容量をさらに大幅に削減することが
できる楽音信号発生装置を提供することにある。 「問題点を解決するための手段」 この発明は、楽音波形の各瞬時値を示す波形データを
2次の線形予測演算および差分量子化方式による量子化
によってデータ圧縮し、このデータ圧縮によって得られ
たデータを記憶させた記憶手段と、波形の読み出しを指
示する指示手段と、該指示手段の指示に応じて、前記記
憶手段内のデータを読み出し、2次の線形予測演算およ
び差分量子化方式に基づく復号演算によって復号する復
号手段とを具備し、前記復号手段によって復合された波
形データに基づいて楽音信号を発生することを特徴とし
ている。 なお、この明細書において「差分型量子化方式」と
は、 DM(Delta Moduration) ADM(Adaptive Delta Moduration) DPCM(Differential Pulse Code Moduration) ADPCM(Adaptive Differential Pulse Code Modurati
on) 等の量子化方式を言う。 「作用」 この発明によれば、線形予測演算および差分型量子化
方式による量子化の双方の手段によってデータ圧縮を行
う。これにより、従来のものよりさらにデータ圧縮が可
能となる。 「実施例」 以下、図面を参照しこの発明の一実施例による楽音信
号発生装置について説明する。第1図は同楽音信号発生
装置の基本的構成を説明するためのブロック図、第2図
は同楽音信号発生装置を用いた電子楽器の構成を示すブ
ロック図である。この電子楽器は、マイクロフォンによ
って収音した自然楽器の楽音をディジタルデータに変換
し、このディジタルデータを線形予測方およびADPCM量
子化方式を用いて圧縮し、この圧縮したデータをメモリ
に記憶させる。そして、楽音形成時においては、このメ
モリ内のデータを読み出し、復号して楽音信号を形成す
る。 【基本構成】 第1図において、1はデータ圧縮回路、2はデータ圧
縮回路1によって圧縮されたデータが記憶されるデータ
メモリ、3はデータメモリ2から読み出されたデータを
復号する復号回路である。データ圧縮回路1において、
4は自然楽器の楽音を収音するためのマイクロフォン、
5はマイクロフォン4の出力信号を一定周期でサンプリ
ングし、ディジタルデータ(サンプリングデータ)に変
換するA/D(アナログ/ディジタル)変換器、6は波形
処理装置である。この波形処理装置6は、A/D変換器5
の出力データを内部のメモリに一旦記憶し、この記憶し
たデータを規格化してメモリ7に書き込む。ここで、規
格化とは次のような処理を言う。第3図は楽音信号の一
例を示す図であり、この図に示すように、楽音信号のア
タック部(立上り部)ATCは徐々に振幅が増大する波形
となる。規格化とは、このアタック部ATCを図の繰返部R
PTの振幅と同じ振幅の波形に変換する処理である。具体
的には、アタック部ATCの振幅エンベロープと丁度逆の
変化をするエンベロープデータを、アタック部ATCの各
サンプリングデータに乗算する処理である。なお、この
処理は、振幅が小さい部分の楽音再生精度を上げるため
に行なわれる。また、A/D変換器5から出力されるサン
プリングデータのビット数は、例えば24ビットである。
そして、波形処理装置6は、サンプリングデータを上記
のようにして規格化し、次いで必要最小限のビット数の
データ(例えば、12ビット)とし、波形メモリ7に波形
データSnとして書き込む。 次に、8は切換スイッチ、9は線形予測係数演算回路
である。波形メモリ7に波形データSnが収録されると、
切換スイッチ8が線形予測係数演算回路9側に投入さ
れ、次いで、波形メモリ7内の各波形データSnが逐次読
み出され、スイッチ8を介して線形予測係数演算回路9
へ供給される。線形予測係数演算回路9は、供給された
波形データSnに基づいて、第3図に示すN個のフレーム
〔0〕〜〔N−1〕毎に最適な線形予測係数a1,a2を算
出し、係数メモリ10に書き込む。この線形予測係数a1,a
2の算出方法としては、従来から種々の方法が知られて
いるが、例えば自己相関関数を利用したDurbin法等が有
効である。また、係数a1,a2は、フレーム内の全波形デ
ータから求めてもよく、一部の波形データから求めても
よい。 次に、11は線形予測法に基づくデータ圧縮を行う線計
予測演算回路であり、この線形予測演算回路11におい
て、12は減算回路、13は加算回路、14は予測値算出回路
である。また、この予測値算出回路14において、14a,14
bは各々D−FF(ディレイフリップフロップ)、14c,14d
は各々係数メモリ10から出力される線形予測係数a1,a2
を乗算係数とする乗算器、14eは加算回路であり、この
加算回路14eの出力が予測値◇Snとして減算回路12へ供
給される。また、16はADPCM量子化方式によってデータ
圧縮を行うADPCM演算回路であり、線形予測演算回路11
の減算回路12から出力される12ビットのデータEnを4ビ
ットの量子化差分コードCnに変換して出力する。この量
子化差分コードCnがデータメモリ2に記憶される。ま
た、このADPCM演算回路16は、量子化差分コードCnをも
とのデータEnに復号して線形予測演算回路11の加算回路
13へ出力する。この場合、復号されたデータはデータEn
と全く同じデータにはならず、誤差dnが含まれる。すな
わち、この復号データは「En+dn」となる。なお、この
ADPCM演算回路16については、後に詳述する。 次に、上記線形予測演算回路11の動作を説明する。係
数メモリ10内に各フレーム〔0〕〜〔N−1〕の各々に
ついての線形予測係数a1,a2が書き込まれると、次に切
換スイッチ8が線形予測演算回路11側に投入される。次
いで、波形メモリ7内の各フレーム〔0〕,〔1〕…の
波形データSnが順次読み出され、減算回路12へ供給さ
れ、また、フレーム〔0〕の波形データSnが波形メモリ
7から読み出されているときは、係数メモリ10内のフレ
ーム〔0〕に対応する線形予測係数a1,a2が、フレーム
〔1〕の波形データSnが波形メモリ7から読み出されて
いるときは、係数メモリ10内のフレーム〔1〕に対応す
る線形予測係数a1,a2が、…各々メモリ10から読み出さ
れ、乗算器14c,14dへ供給される。なお、波形メモリ7
の読み出しタイミングを決めるクロックパルスとD−FF
14a,14bへ供給されるクロックパルスは同一である。減
算回路12は、波形データSnから、予測値◇Snを減算す
る。すなわち、 Sn−◇Sn=En ……(1) なる演算を行い、この演算によって得られたデータEnを
ADPCM演算回路16へ出力する。ここで、予測値◇Snは、
現在、減算回路12へ供給されている波形データSnに近い
値である。(この理由は後述する。)この結果、データ
Enは、波形データSnよりはるかに値が小さいデータとな
る。ADPCM演算回路16は、データEnを4ビットの量子化
差分コードCnに変換し、データメモリ2へ出力すると共
に、データ「En+dn」を加算回路13へ出力する。加算回
路13は、上述したデータ「En+dn」と予測値◇Snとを加
算する。この加算結果は、 En+dn+◇Sn=Sn+dn ……(2) となる。すなわち、加算回路13の出力は、ほぼ波形デー
タSnに等しい値となる。したがって、D−FF14a内に
は、1クロックパルス前の波形データSnにほぼ等しいデ
ータが記憶され、D−FF14b内には2クロックパルス前
のデータSnにほぼ等しいデータが記憶される。他方、前
述した線形予測係数演算回路9は、2つ前の波形データ
Sn-2と1つ前の波形データSn-1から第1図の予測値算出
回路14によって予測値◇Snを算出したとき、該予測値◇
Snが現在データSnに最も近くなるような係数a1,a2を算
出し、係数メモリ10に書き込む。したがって、この係数
a1,a2を用いて算出された予測値◇Snは波形データSnに
非常に近い値となる。 このようにして、線形予測演算回路11は、波形メモリ
7から出力される波形データSnを値の小さいデータEnに
変換して、言い替えればデータ圧縮してADPCM演算回路1
6へ出力する。 次に、ADPCM演算回路16について説明する。まず、17
は減算回路であり、データEnから予測データ◇En-1を減
算し、この減算結果をデータen(12ビット)としてエン
コーダ18へ出力する。エンコーダ18は、データenをADPC
M方式によって量子化し、4ビットの量子化差分コードC
n(最上位ビットはサインビット)として出力する。19
はエンコーダ18が出力する量子化差分コードCnの値に基
づいて、エンコーダ18における適応化量子化幅データΔ
n(8〜12ビット)を設定する量子化幅制御回路であ
り、その処理動作は以下の通りである。 まず、直前の量子化幅データをΔn-1とすると、量子
化幅制御回路19は、以下の演算を行って次の量子化幅デ
ータΔnを求める。 Δn=Δn-1・k ……(3) この第(3)式におけるkは、直前の量子化差分コード
Cn-1の値によって決定される係数である。第4図は、量
子化差分コードCnの値と上記係数kとの関係を示す図で
あり、図示のように、量子化差分コードCnの絶対値が大
きくなるに従って、その値が大きくなるように設定され
ている。ただし、この実施例においては、第4図に示す
係数kの値の少数点以下第2位を四捨五入した数値をk
として、量子化幅制御回路19内の所定のメモリに記憶さ
せている。なお、第4図中のCn=「1000」が、10進の
「0」に対応している。 エンコーダ18は、第5図に示すように、上記量子化幅
データΔnの値を「1」とした場合における差分PCMコ
ードenの相対値en/Δnを求め、この演算値を量子化差
分コードCnに変換して出力する。この場合、en/Δnの
値は−1〜+1の間の全ての値を取りうるが、量子化差
分コードCnは4ビットであるため、リニアな変換演算は
行えない。そこで、この実施例においては、en/Δnを
第6図に示すような区間に分け、各区間に対応させて量
子化差分コードCnへの変換を行うようにしている。例え
ば、en/Δnが1/2以上5/8未満のときは、量子化差分コ
ードCnを「0100」とし、また、en/Δnが0以上1/8未満
のときは、量子化差分コードCnを「0000」とする。 次に、20は量子化差分コードCnと適応化量子化幅Δn
とに基づいて、データenを復号するデコーダである。こ
の場合、復号データには量子化に基づく誤差dnが含ま
れ、したがって、デコーダ20の出力データは「En+dn」
となる。このデコーダ20の具体的なデコード処理は以下
の通りである。量子化差分コードCnの各ビットを(B3
B2,B1,B0)とすると、データを「en+dn」は次式によ
って算出される。 en+dn=(1-2・B3・{Δn/2・B2+(Δn/4)・B1
(Δn/8)・B0+Δn/8} ……(4) 上記(4)式において、アンダーラインを付した項
は、符号を作る項であり、サインビットであるB3が“1"
のときは負、“0"のときは正となる。また、中カッコで
くくられた項は、絶対値に対応する項であり、Δnの値
に各ビットの重みを乗じた値が加算されるとともに、オ
フセット値Δn/8が加えられてen+dnの絶対値が作成さ
れる。 上記デコーダ20の出力データ「en+dn」は、加算回路
21へ供給される。加算回路21は、データ「en+dn」と、
予測データ◇En-1とを加算する。この加算結果は、 en+dn+◇En-1=En+dn ……(5) となる。すなわち、加算回路21の出力は、ほぼデータEn
となる。そして、この加算回路21から出力されるデータ
「En+dn」がD−FF22によってクロックパルスの1タイ
ミング遅延され、予測デーカ◇En-1として減算回路17へ
出力される。 このように、予測データ◇En-1はほぼデータEn-1に等
しく、したがって、減算回路17の出力データenは、デー
タEnとデータEn-1(クロックパルスの1タイミング前の
データEn)との差分を示すデータとなる。この結果、デ
ータenの値はデータEnの値よりはるかに小さくなり、し
たがって、このデータenをエンコーダ18によって4ビッ
ト(実質3ビット)のコードCnに変換しても、大きな量
子化誤差が生じることはない。 次に、復号回路3について説明する。この復号回路3
は、データメモリ2から逐次読み出された量子化差分コ
ードCnをデータ「Sn+dn=Hn」に復号する回路であり、
ADPCM復号回路24と線形予測復号回路29とから構成され
ている。ADPCM復号回路24は、前述した量子化幅制御回
路19と同一構成の量子化幅制御回路25と、デコーダ20と
同一構成のデコーダ26と、加算回路27とD−FF28とから
構成されている。そして、デコーダ26からデータ「en+
dn」が出力され、このデータ「en+dn」に、加算回路27
においてデータ◇En-1が加算され、この加算結果、すな
わち、データ「En+dn」がD−FF28に読み込まれるとと
もに、線形予測復号回路29へ出力される。なお、上記の
復号過程は、ADPCM演算回路16において、量子化差分コ
ードCnからデータ「En+dn」を復号する過程と全く同じ
である。 次に、線形予測復号回路29は、加算回路30と、前述し
た予測値算出回路14と同一構成の演算回路31とから構成
されている。この場合、演算回路31内の乗算器31c,31d
へは各々、係数メモリ10から読み出された係数a1,a2
供給される。また、D−FF31a,31bへは、データメモリ
2の読み出しタイミングを決めるクロックパルスが供給
される。しかして、この線形予測復号回路29によれば、
演算回路31の出力データが前述した予測値◇Snとなり、
したがって、加算回路30の出力データが、En+dn+◇Sn
=Sn+dn=Hn ……(6) となる。 そして、この復号データHnがD/A(ディジタル/アナ
ログ)変換されて、楽音信号が得られる。 以上がこの実施例による楽音信号発生装置の構成であ
る。上記の回路は、量子化に基づく誤差dnが加算回路2
1,14eの各出力データに含まれるようになっており、し
たがって、フィードバックデータである予測データ◇En
-1,予測値◇Snにも各々誤差dnが含まれる。すなわち、
上記の回路はエラーフィードバック型であり、したがっ
て、復号データHnに誤差が累積されることがない。ま
た、線形予測演算回路11と線形予測復号回路29、ADPCM
演算回路16とADPCM復号回路24の各入出力ビット数およ
び演算ビット数を完全に一致させれば、有限語長データ
演算のために起こる誤差の発生を防ぐことができる。 なお、非常に精度の高い演算が可能な場合、すなわ
ち、量子化誤差の累積を考慮する必要がない場合は、線
形予測演算回路11,ADPCM演算回路16として各々、第7図
に示す演算回路11A,16Aを用いてもよい。 また、通常の楽音信号発生装置には、第1図における
データ圧縮回路1が設けられない。このデータ圧縮回路
1が設けられるのは、この楽音信号発生装置がサンプリ
ング電子楽器(演奏者が自ら音をサンプリングできるよ
うにした電子楽器)に用いられる場合などである。 【第2図の実施例の構成】 次に、第2図に示す電子楽器について説明する。 最初に、この電子楽器における楽音形成方法を説明す
る。 まず、データメモリ35内には、第1図のデータ圧縮回
路1によって規格化され、かつ、圧縮された楽音波形
が、各音色毎に、また各タッチ強度(押鍵強度)毎に、
また各音高毎に(各鍵盤キー毎に)記憶されている。例
えば、音色の種類が10、キー数が40、タッチ強度が5段
階の場合、10×40×5=2000種類の楽音波形が記憶され
ている。この場合、データメモリ35内に記憶されている
各楽音波形は各々、楽音の開始から終了までの全波形で
はなく、第3図に示すように、楽音のアタック部ATCの
波形と、このアタック部ATCに続く波形の途中まで(繰
返部RPTの波形)である。そして、楽音形成時において
は、まず、アタック部ATCの波形が読み出され、次い
で、繰返部RPTの波形が繰り返し読み出される。そして
この読み出された波形にエンベロープが付与された後、
D/A変換され、楽音信号とされる。 以下、第2図の回路について詳述する。まず、符号36
はキーボード、37はタッチ検出回路である。このタッチ
検出回路37は、キーボード36のいずれかのキーが押下さ
れた時、同キーのタッチ強度を検出し、検出したタッチ
強度に対応するタッチデータTDを出力する。このタッチ
強度を検出する方法としては、キーが僅かに押下された
時オンとなる接点と、キーが最下点まで押下された時オ
ンとなる接点を各々、各キー毎に設け、これらの接点が
キーオンに応じて順次オンとなる間の時間に基づいてタ
ッチ強度を検出する方法や、キーの下部に圧電素子等の
キー押下圧力を検出する素子を設け、この素子の出力に
基づいて検出する方法等が採られる。 38は押鍵検出回路であり、キーボード36の各キーの下
部に設けられたキースイッチの出力に基づいて各キーの
オン/オフ状態を検出する。そして、いずれかのキーが
オンとされたことを検出した場合は、同キーのキーコー
ドKCを出力すると共に、キーオン信号KON(“1"信号)
を出力し、また、このキーオン信号KONの立ち上がりに
おいて、キーオンパルスKONPを出力する。また、キーが
オフとされたことを検出した場合は、キーオン信号KON
を“0"信号に戻す。また、複数のキーが同時にオンとさ
れた場合は、いずれか1つのキー(例えば、最も後にオ
ンとされたキーまたは最も高い音のキー)のみについて
上記の処理を行う。ノートクロック発生回路39は、押鍵
検出回路38から出力されるキーコードKCが示すキーの音
高に対応する周波数のノートクロックNCKを発生し、各
部へ出力する。アドレスカウンタ40は、ノートクロック
NCKをアップカウントし、そのカウント出力を加算回路4
1へ供給する。 音色選択回路42は、複数の音色選択操作子と、付属回
路とから構成され、現在設定されている音色選択操作子
の音色に対応するトーンコードTCを出力する。スタート
アドレスメモリ43は、データメモリ35内の各楽音波形の
先頭データの記憶アドレスを示すアドレスデータが記憶
されているメモリであり、キーコードKC,トーンコードT
C,タッチデータTDが各々供給されると、これらの各デー
タに対応する楽音波形の先頭アドレスを示すアドレスデ
ータが読み出され、スタートアドレスデータSAとして出
力される。リピートアドレスメモリ44はデータメモリ35
内の各楽音波形のリピートデータの記憶アドレスを示す
アドレスデータが記憶されているメモリである。 ここで、リピートデータとは、第3図に示す繰返部RPT
の先頭データを言う。このリピートアドレスメモリ44へ
キーコードKC,トーンコードTC,タッチデータTDが各々供
給されると、これらの各データに対応する楽音波形のリ
ピートデータの記憶アドレスを示すアドレスデータが読
み出され、リピートアドレスデータRAとして出力され
る。45はセレクタであり、スタートアドレスデータSA,
リピートアドレスデータRAのいずれか一方を選択して、
加算回路41へ出力する。46はセレクタ45を制御するセッ
ト/リセットフリップフロップであり、このフリップフ
ロップ46の出力Qが“0"信号の時は、セレクタ45の入力
端Aが選択され、スタートアドレスデータSAが加算回路
41へ出力され、また、“1"信号の時は、セレクタ45の入
力端Bが選択され、リピートアドレスデータRAが加算回
路41へ出力される。加算回路41はアドレスカウンタ40の
出力とセレクタ45の出力とを加算し、この加算結果をア
ドレスデータADとしてデータメモリ35へ供給する。 アタックエンドアドレスメモリ47は、データメモリ35
内の各楽音波形のアタック部エンドデータの記憶アドレ
スを示すアドレスデータが記憶されているメモリであ
る。ここで、アタック部エンドデータとは、第3図に示
すアタック部ATCの最後のデータを言う。このアタック
エンドアドレスメモリ47へキーコードKC,トーンコードT
C,タッチデータTDが各々供給されると、これらの各デー
タに対応する楽音波形のアタック部エンドデータの記憶
アドレスを示すアドレスデータが読み出され、アタック
エンドアドレスデータAEAとして比較回路48へ出力され
る。比較回路48は、加算回路41から出力されるアドレス
データADと、アタックエンドアドレスデータAEAとを比
較し、両者が一致した時、アタックエンド信号AEND
(“1"信号)を出力する。49はタイミング調整用のD−
FF(ディレイフリップフロップ)であり、アタックエン
ド信号AENDをノートクロックNCKの1タイミング遅延さ
せ、信号AENDDとして出力する。リピートエンドアドレ
スメモリ51は、データメモリ35内の各楽音波形の繰返部
エンドデータの記憶アドレスを示すアドレスデータが記
憶されているメモリである。ここで、繰返部エンドデー
タとは、第3図に示す繰返部RPTの最後のデータを言
う。このリピートエンドアドレスメモリ51へキーコード
KC,トーンコードTC,タッチデータTDが各々供給される
と、これらの各データに対応する楽音波形の繰返部エン
ドデータの記憶アドレスを示すアドレスデータが読み出
され、リピートエンドアドレスデータREAとして比較回
路52へ出力される。比較回路52は、加算回路41から出力
されるアドレスデータADと、リピートエンドアドレスデ
ータREAとを比較し、両者が一致した時、リピートエン
ド信号REND(“1"信号)を出力する。53はタイミング調
整用のD−FFであり、リピートエンド信号RENDをノート
クロックNCKの1タイミング遅延させ、信号RENDDとして
出力する。 第2図の上部に示すリピートフレームメモリ56は、前
述したリピートデータ(繰返部RPTの先頭データ)が属
するフレーム番号が、各楽音波形の各々に対応して記憶
されているメモリである。すなわち、第3図の波形例に
おいては、リピートデータがフレーム〔2〕に属してい
るが、このリピートデータがどのフレームに属している
かは、各楽音波形毎に決められている。リピートフレー
ムメモリ56には、予め各楽音波形毎に、このリピートデ
ータが属するフレームの番号が記憶されており、キーコ
ードKC,トーンコードTC,タッチデータTDが各々供給され
ると、これらの各データに対応するフレーム番号が読み
出され、フレームカウンタ57のプリセットデータ端子PD
へ出力される。フレームカウンタ57は、現在楽音形成が
行なわれているフレームの番号を出力するカウンタであ
り、キーオンパルスKONPによってリセットされ、信号RE
NDDによってリピートフレームメモリ56の出力データが
プリセットされ、また、D−FF58の出力をアップカウン
トする。このフレームカウンタ57のカウント出力は、フ
レームコードFLCとして、フレームエンドアドレスメモ
リ59および線形予測係数メモリ61へ供給される。フレー
ムエンドアドレスメモリ59は、フレーム〔0〕〜〔N−
1〕の各最終波形データが記憶されているデータメモリ
35のアドレスを示すアドレスデータが、各楽音波形毎に
記憶されているメモリである。このメモリ59へキーコー
ドKC,トーンコードTC,タッチデータTDが各々供給される
と、これらの各データに対応し、予めN個のアドレスデ
ータが記憶されている記憶エリアが指定され、この記憶
エリア内の各アドレスデータがフレームカウンタ57から
出力されるフレームコードFLCに基づいて読み出され
る。そして、この読み出されたアドレスデータがフレー
ムエンドアドレスデータFLEA(FLC)として比較回路60
へ出力される。比較回路60は、加算回路41から出力され
るアドレスデータADと、フレームエンドアドレスデータ
FLEA(FLC)とを比較し、両者が一致した時、“1"信号
を出力する。58はタイミング調整用のD−FFであり、比
較回路60の出力信号をノートクロックNCKの1タイミン
グ遅延させ、フレームカウンタ57のクロック端子CKへ出
力する。 線形予測係数メモリ61は線形予測係数a1,a2が記憶さ
れているメモリであり、データメモリ35内の各楽音波形
の各々に対応する記憶エリアを有し、これらの各記憶エ
リアに各々、フレーム〔0〕〜〔N−1〕に対応するN
組の線形予測係数a1,a2が記憶されている。そして、キ
ーコードKC,トーンコードTC,タッチデータTDが各々供給
されると、これらの各データに対応する上記記憶エリア
が選択され、この記憶エリア内の線形予測係数a1,a
2が、フレームカウンタ57から出力されるフレームコー
ドFLCに基づいて読み出される。 次に、63はデータメモリ35から出力される量子化差分
コードCnを復号データHnに復号する復号回路であり、そ
の詳細を第8図に示す。この復号回路63の構成は、基本
的には第1図に示す復号回路3と同様であり、ADPCM復
号回路24Aと、線形予測復号回路29Aとから構成されてい
る。ADPCM復号回路24Aにおいて、100は、量子化差分コ
ードCnが供給されると、その値に対応した係数kを出力
するADPCM係数メモリであり、第4図に示す変換データ
が記憶されている。このADPCM係数メモリ100が出力する
係数kは、乗算器101の一方の入力端に供給され、ここ
で、前回の量子化幅データΔn-1との積が取られる。す
なわち、前述した(3)式の演算が行なわれ、現時点の
量子化幅データΔnが算出される。この乗算器101の出
力データΔnはセレクタ102の入力端Bに供給される。
セレクタ102は、端子SAに“1"信号が供給されると入力
端Aを選択し、端子SBに“1"信号が供給されると入力端
Bを選択する。すなわち、セレクタ102は、キーオンパ
ルスKONPが出力された時のみ入力端Aを選択し、その他
の場合は入力端Bを選択する。103は量子化幅データΔ
nの初期値Δn0が記憶されている初期値記憶部であり、
その記憶値である初期値Δn0はセレクタ102の入力端A
に供給される。このセレクタ102の出力信号(Δnもし
くはΔn0)は最大最小制御部104を介してデコーダ110、
ディレイフリップフロップ105、およびラッチ106に供給
される。最大最小制御部104は、量子化幅データΔnの
最大値および最小値を規制するものであり、例えば、最
小値が(16)10、最大値が(1552)10に設定され、量子化幅
データΔnがこれらの制限値を越える場合には、強制的
に上記制限値を出力するようになっている。ディレイフ
リップフロップ105は、ノートクロックNCKに基づいて、
量子化幅データΔnを1クロックタイミング遅らせるも
のであり、ラッチ106は、アタックエンド信号AENDが供
給されると、入力端に供給されている量子化幅データΔ
nを取り込んでラッチする。上記ディレイフリップフロ
ップ105とラッチ106の各出力データは、各々セレクタ10
7の入力端A、Bに供給される。セレクタ107は、端子SA
に“1"信号が供給されると入力端Aを選択し、端子SBに
“1"信号が供給されると入力端Bを選択する。すなわ
ち、セレクタ107は、信号RENDDが供給された時のみ入力
端Bを選択し、その他の場合は入力端Aを選択する。こ
の場合、セレクタ107の入力端Aが選択されると、ディ
レイフリップフロップ105によって1クロックタイミン
グ遅らされた量子化幅データΔn-1が出力端Sから出力
される。また、セレクタ107の入力端Bが選択された場
合には、ラッチ106内のデータが出力されるが、この場
合の作用については後述する。そして、上記構成によ
り、量子化幅制御回路108が構成されている。次に、デ
コーダ110は、第1図に示すデコーダ20,26と同様に前記
(4)式の演算を行うデコーダであり、その出力データ
は「en+dn」となる。111は加算回路であり、デコーダ1
10から出力されるデータ「en+dn」と、セレクタ117か
ら出力される予測データ◇En-1とを加算し、この加算結
果、すなわちデータ「En+dn」を線形予測復号回路29A
の加算回路65へ出力する。115は第1図に示すD−FF28
と同様のD−FFであり、入力端に供給されているデータ
をノートクロックNCKに基づいて、1クロックタイミン
グ遅らせて出力する。116は、キーオンパルスKONPが出
力されていない状態において開状態となるゲートであ
り、開状態時においてはD−FF115の出力をセレクタ117
の入力端Aに供給する。118はラッチであり、アタック
エンド信号AENDが供給されると、入力端に供給されてい
るデータを取り込んでラッチする。このラッチ118の出
力信号はセレクタ117の入力端Bに供給される。セレク
タ117は、信号RENDDが供給された時のみ入力端Bを選択
し、その他の場合は入力端Aを選択する。この場合、セ
レクタ117の入力端Aが選択されると、D−FF115によっ
て1クロックタイミング遅らされたデータ「En+dn」が
出力端から出力される。また、セレクタ117の入力端B
が選択された場合には、ラッチ118内のデータが出力さ
れるが、この場合の作用については後述する。 次に、線形予測復号回路29Aについて説明する。ま
ず、65はその一方の入力端へ供給されるデータ「En+d
n」と、その他方の入力端へ供給される予測値◇Snとを
加算する加算回路、66,67は各々ロード端子Lへ信号AEN
DDが供給された時入力端のデータを読み込むラッチ、6
8,69は各々セレクタである。これらのセレクタ68,69は
共に、リピートエンド信号RENDが“1"信号の時入力端A
のデータを出力し、“0"信号の時は入力端Bのデータを
出力する。70,71は各々ノートクロックのNCKが供給され
た時入力端のデータを読み込み、キーオンパルスKONPに
よってリセットされるD−FF、72,73は各々線形予測係
数a1,a2を乗算係数とする乗算器、74は乗算器72,73の
各出力を加算する加算回路である。 次に、第2図において、76はエンベロープジェネレー
タであり、キーオン信号KONが“1"信号に立ち上がった
時点以降、キーコードKC,トーンコードTC、タッチデー
タTDの各値に応じて決まるエンベロープデータEDを逐次
出力し、乗算回路77へ供給する。第9図(イ)はキーオ
ン信号KONを示し、(ロ)、(ハ)は各々エンベロープ
データEDの値の変化の一例を示す。ここで、(ロ)はパ
ーカッシブ系の音色の場合、(ハ)は持続音系の音色の
場合である。乗算回路77は、復号回路63から出力される
復号データHnとエンベロープデータEDとを乗算し、その
乗算結果をD/A変換器78へ出力する。D/A変換器78は乗算
回路77の出力データをアナログ信号に変換し、サウンド
システム79へ出力する。サウンドシステム79は、D/A変
換器78の出力信号を増幅し、スピーカによって発音す
る。 【第2図の実施例の動作】 まず、演奏者が音色選択操作子を操作して、楽音の音
色が設定されると、音色選択回路42から、設定された音
色に対応するトーンコードTCが出力され、回路各部へ供
給される。次に、演奏者によってキーボード36のいずれ
かのキーが押下されると、タッチ検出回路37からタッチ
データTDが、また押鍵検出回路38からキーオンパルスKO
NP,キーオン信号KON(“1"信号),キーコードKCが各々
回路各部へ出力される。キーオンパルスKONPが押鍵検出
回路38から出力されると、フリップフロップ46,フレー
ムカウンタ57,D−FF70,71(第8図)が各々リセットさ
れる。フレームカウンタ57がリセットされると、同フレ
ームカウンタ57から出力されるフレームコードFLCが
「0」となり、このフレームコードFLC「0」がフレー
ムエンドアドレスメモリ59および線形予測係数メモリ61
へ出力される。これにより、フレームエンドアドレスメ
モリ59からフレームエンドアドレスFLEA(0)が出力さ
れ、また、線形予測係数メモリ61からフレーム〔0〕の
線形予測係数a1,a2が出力される。また、上述したキー
オンパルスKONPは、オアゲート84を介してアドレスカウ
ンタ40へ供給され、これにより、アドレスカウンタ40が
リセットされる。さらに、上記キーオンパルスKONPは、
第8図のセレクタ102へ供給される。これにより、初期
値記憶部103から出力されているΔnの初期値Δn0がセ
レクタ102および最大最小制御部104を介してデコーダ11
0へ供給され、内部にラッチされる。 また、キーオン信号KONが押鍵検出回路38から出力さ
れると、以後、エンベロープジェネレータ76から、エン
ベロープデータEDが出力される。また、キーコードKCが
押鍵検出回路38から出力され、ノートクロック発生回路
39へ供給されると、以後、ノートクロック発生回路39か
ら、押圧されたキーの音高に対応する周波数のノートク
ロックNCKが出力され、アドレスカウンタ40へ供給され
る。アドレスカウンタ40は、このノートクロックNCKを
アップカウントする。これにより、アドレスカウンタ40
のカウント出力が、0,1,2……と順次変化する。このア
ドレスカウンタ40のカウント出力は、加算回路41へ供給
され、この加算回路41において、セレクタ45の出力と加
算される。この時、フリップフロップ46はリセットされ
ており、したがって、スタートアドレスメモリ43から出
力されているスタートアドレスデータSAがセレクタ45か
ら出力される。この結果、加算回路41の出力は、このス
タートアドレスデータSAとアドレスカウンタ40のカウン
ト出力とを加算したデータとなり、このデータが、アド
レスデータADとしてデータメモリ35へ出力される。すな
わち、「SA+0」,「SA+1」,「SA+2」……なるア
ドレスデータADが順次データメモリ35へ出力される。こ
れにより、データメモリ35から、まずアタック部ATCの
量子化差分コードCnが順次出力され、復号回路63へ供給
される。 復号回路63は、量子化差分コードCnを、まずデータ
「En+dn」に復号し、次いでこのデータ「En+dn」をデ
ータHnに復号する。すなわち、データメモリ35から量子
化差分コードCnが順次出力され始めた時点において、リ
ピートエンド信号RENDは“0"信号にあり、また、キーオ
ンパルスKONPはキーオン時のみ“1"信号となるだけでそ
の後は直ちに“0"信号となるから、キーオン時以降はセ
レクタ107,117(第8図)の各入力端Aが選択されて、
同入力端Aに供給されているデータが各出力端Sから出
力される。すなわち、この時点においては、第8図のAD
PCM復号回路24Aが第1図のADPCM復号回路24と同じ回路
になっている。この結果、データメモリ35から出力され
た量子化差分データCnは、ADPCM復号回路24Aにおいて、
第1図の回路に場合と同様にして復号され、データ「En
+dn」として線形予測復号回路29Aへ出力される。 なお、キーオン時は、キーオンパルスKONPが“1"とな
り、ゲート116の出力が「0」となり、このデータ
「0」がセレクタ117を介して加算回路111へ供給され
る。この結果、加算回路111からは、データ「en+dn」
がそのままデータ「En+dn」として出力される。 線形予測復号回路29Aは、データ「En+dn」を復号デ
ータHn=Sn+dnに復号する。すなわち、まず、キーオン
信号KONが立ち上がった時点において、リピートエンド
信号RENDは“0"信号にあり、したがって、セレクタ68,6
9(第8図)の各入力端Bのデータが各出力端から出力
される。すなわち、この時点においては、第8図の線形
予測復号回路29Aが第1図の線形予測復号回路29と同じ
回路になっている。したがって、加算回路111から出力
されたデータ「En+dn」は、線形予測復号回路29Aにお
いて前述した場合と同様にして復号され、復号データHn
として出力される。 そして、この復号データHnに、乗算回路77においてエ
ンベロープが付与され、この乗算回路77の出力が、D/A
変換器78においてアナログ楽音信号に変換され、このア
ナログ楽音信号がサウンドシステム79において楽音とし
て発音される。このようにして、まず、フレーム〔0〕
の楽音形成が行なわれる。 次に、アドレスデータADがフレームエンドアドレスFL
EA(0)に達すると、比較回路60から“1"信号が出力さ
れ、D−FF58を介してフレームカウンタ57のクロック端
子CKへ供給される。これにより、フレームカウンタ57が
インクレメントされ、フレームコードFLCが「1」とな
る。フレームコードFLCが「1」になると、フレームエ
ンドアドレスメモリ59からフレームエンドアドレスFLEA
(1)が出力される。また、線形予測係数メモリ61から
フレーム〔1〕の線形予測係数a1,a2が出力され、乗算
器72,73(第8図)へ供給される。 以下、データメモリ35の読み出しが進み、これによ
り、フレーム〔1〕の楽音が形成される。そして、アド
レスデータADがフレームエンドアドレスFLEA(1)に達
すると、上記と同様にして、フレームエンドアドレスメ
モリ59からフレームエンドアドレスFLEA(2)が、ま
た、線形予測係数メモリ61からフレーム〔2〕の線形予
測係数a1,a2が各々出力され、以後、フレーム〔2〕の
楽音形成が行なわれる。 そして、例えばこのフレーム〔2〕の楽音形成の途中
において、アドレスデータADがアタックエンドアドレス
AEAに一致すると(第3図参照)、比較回路48からアタ
ックエンド信号AENDが出力され、このアタックエンド信
号AENDが、ラッチ106,118(第8図)のロード端子Lへ
供給される。この結果、ラッチ106には、アタック部ATC
の最後のデータに対応する量子化幅データΔnが記憶さ
れ、ラッチ118にはアタック部ATCの最後のデータ「En+
dn」が記憶される。 また、アタックエンド信号AENDの発生時からノートク
ロックNCKの1タイミング後には、第2図に示すD−FF4
9から信号AENDDが出力される。この信号AENDDは、オア
ゲート86,84を介してアドレスカウンタ40へ供給され、
これによりアドレスカウンタ40がリセットされる。ま
た、信号AENDDは、フリップフロップ46のセット端子S
へ供給され、これによりフリップフロップ46がセットさ
れる。フリップフロップ46がセットされると、以後、リ
ピートアドレスRAがセレクタ45を介して加算回路41へ供
給される。また、信号AENDDは、ラッチ66,67(第8図)
のロード端子Lへ供給され、これにより、その時のD−
FF70,71の出力データが各々ラッチ66,67に読み込まれ
る。いま、第8図の加算回路65から出力されるアタック
部ATCの最終部分のデータHnおよび繰返部RPTの最初の部
分のデータHnを各々第10図(イ)に示すものとすれば、
D−FF70,71の出力は各々第10図(ロ),(ハ)に示す
データとなり、また、信号AENDおよび信号AENDDは各々
第10図(ニ),(ホ)に示すタイミングで出力される。
これらのタイミング図から明らかなように、信号AENDD
がラッチ66,67のロード端子Lへ供給されると、ラッチ6
6,67に各々アタック部ATCの最後のデータ(A1)および
最後から2番目のデータ(A2)が各々記憶される。 以上が、信号AENDDに基づく動作である。以後、加算
回路41から、「RA+0」,「RA+1」,「RA+2」……
なるアドレスデータADが順次出力され、これにより、繰
返部RPTの楽音形成が行なわれる。この場合、アタック
部ATCの楽音形成時と同様に、フレームが変わる毎に新
たな線形予測係数a1,a2が線形予測係数メモリ61から出
力され、復号回路63へ供給される。 次に、アドレスデータADがリピートエンドアドレスRE
Aに一致すると、すなわち、第1回目の繰返部RPTの楽音
形成が終了すると、比較回路52からリピートエンド信号
REND(“1"信号)が出力され、D−FF53およびセレクタ
68,69(第8図)へ各々供給される。セレクタ68,69へリ
ピートエンド信号RENDが供給されると、セレクタ68,69
の入力端Aが選択され、ラッチ66,67の出力が各々セレ
クタ68,69を介してD−FF70,71の入力端へ供給される。
次に、ノートクロックNCKが出力されると、D−FF70,71
にラッチ66,67の出力が読み込まれ、また、D−FF53か
ら信号RENDD(“1"信号)が出力される。この信号RENDD
は、フレームカウンタ57のプリセット端子PRへ出力さ
れ、これにより、リピートフレームメモリ56の出力(こ
の例の場合「2」)がフレームカウンタ57にプリセット
される。この結果、フレームコードFLCが「2」とな
り、フレームエンドアドレスメモリ59からフレームエン
ドアドレスFLEA(2)が出力され、また、線形予測係数
メモリ61からフレーム〔2〕の線形予測係数a1,a2が各
々出力される。また、上記信号RENDDは、第8図に示す
セレクタ107,117へ供給され、この結果、同セレクタ10
7,117の入力端Bが選択される。この入力端Bが選択さ
れると、ラッチ106,118の出力が各々セレクタ107,117を
介して出力される。したがって、繰返部RPTの第2回目
の楽音形成における最初の量子化差分コードCnが読み出
された時点において、前回値として参照される量子化幅
データΔn-1およびPCM再生コード◇En-1は、各々アタッ
ク部ATCの最後の量子化差分コードCnに対応するものと
なり、あたかもアタック部ATCから引き続いて楽音形成
がなされたのと同様の結果となる。 また、信号RENDDはオアゲート86,84を介してアドレス
カウンタ40へ供給され、これにより、同アドレスカウン
タ40がリセットされる。この結果、以後、加算回路41か
ら再び「RA+0」,「RA+1」,「RA+2」……なるア
ドレスデータADが順次出力され、これにより、繰返部RP
Tの第2回目の楽音形成が行なわれる。この場合、線形
予測係数a1,a2は勿論フレーム毎に変化する。 ここで、第2回目の繰返部RPTの先頭の部分の復号デ
ータHnについて説明する。いま、第11図(イ)に示すよ
うに、繰返部RPTの最後の部分の復号データHnをRE3,RE
2,RE1とする。また、第11図(ロ),(ハ)に各々リピ
ートエンド信号RENDおよび信号RENDDを示す。また、ラ
ッチ66,67内には各々、第10図において説明したデータA
1,A2(アタック部ATCの最後の部分の復号データ)が記
憶されている。この場合、信号RENDDのタイミングにお
いて、第11図(ニ),(ホ)に示すようにD−FF70,71
に各々データA1,A2が読み込まれる。一方、この信号REN
DDのタイミングにおいて、繰返部RPTの第1番目の量子
化差分コードCnがデータメモリ35から読み出される。す
なわち、第2回目における繰返部RPTの第1番目の量子
化差分コードCnがデータメモリ35から読み出された時点
において、D−FF70,71内のデータが第1回目の場合と
同一になり、したがって、第1回目の場合と同一の復号
データHnが線形予測復号回路29Aから出力される。同様
に、第2回目における第2番目,第3番目……の復号デ
ータHnも第1回目の場合と同じになる。 次に、第2回目の繰返部RPTの楽音形成が終了する
と、以後、上記と全く同様の過程によって、第3回目,
第4回目……の繰返部RPTの楽音形成が行なわれる。 次に、演奏者がキーを離鍵すると、キーオン信号KON
が“0"信号に戻る。これにより、エンベロープデータED
が逐次「0」まで減衰し、したがって、発生楽音が減衰
しつつに停止する。 【上記実施例の実験結果】 第12図は上記実施例の実験結果を示す図である。同図
(イ)はピアノ音をサンプリングした原データSnを示
す。同図(ロ)は、(イ)に示すデータSnを第1図に示
すデータ圧縮回路1によって量子化差分コートCnに変換
してメモリに記憶させ、この記憶させたコードCnをメモ
リから読み出し、第8図に示す回路によって復号した復
号データHnを示す。また、同図(ハ)は、(イ)のデー
タSnから(ロ)のデータHnを減算した結果、すなわち、
再生誤差を示す。なお、(ハ)においては、縦方向のス
ケールを(イ),(ロ)の4倍としている。 図(ハ)に示すように、上記実施例は、大幅なデータ
圧縮をしてメモリに記憶させているにもかかわらず、極
めて小さい誤差で再生することが可能である。 なお、上記実施例は、線形予測演算の次数、すなわ
ち、第1図のD−FF14a,14bの段数が2次である。実験
結果によれば、2次の場合に再生誤差がもっとも小さく
なる。例えば、同図(ニ)はこの次数を4次とした場合
(他の条件は全て(イ)〜(ハ)の場合と同じ)であ
り、2次の場合より再生誤差が大きくなっている。この
理由は、線形予測演算の精度が良いと、データEnの個々
の相関が少なくなってしまい、このため、ADPCM演算回
路による圧縮率(精度)が下がってしまうからである。
これに対し、2次の場合は、データEnの各々の間に相関
がある程度残っており、この結果、ADPCM演算回路にお
ける圧縮率が良くなる。 【上記実施例の変形例】 (1)第8図のADPCM復号回路24Aを、第13図に示すよう
に構成してもよい。この第13図に示す回路においては、
第8図におけるラッチ106,118が共に設けられておら
ず、代わりに繰返部RPTの初期値演算用のΔn繰返部初
期値メモリ106Aおよびアタック部最終データ値メモリ11
8A(共にROM)が各々設けられている。すなわち、この
回路は、信号AENDによってラッチ106,118に各々データ
を記憶させる代わりに、記憶させるべきデータを予めメ
モリ106A,118A内に用意しておくものである。なおこの
場合、データは勿論データメモリ35内の各楽音波形の各
々に対応して用意される。 また、第8図の線形予測復号回路29Aを第14図に示す
ように構成してもよい。この第14図に示す回路において
は、第8図のラッチ66,67が設けられておらず、代わり
に繰返部RPTの初期値演算用の初期値データメモリ130
(ROM)が設けられている。この初期データメモリ130に
は、予め前述したアタック部ATCの最後の圧縮データA1,
A2がデータメモリ35内の各楽音波形の各々に対応して記
憶されており、キーコードKC,トーンコードTC,タッチデ
ータTDが供給されると、これらに対応するデータA1,A2
が読み出され、セレクタ68,69へ供給される。 なお、上記の各構成において、メモリ106A,118A,130
を各々RAMとし、電源投入時または音色選択時等におい
て演算により各データを求め、記憶させるようにしても
よい。 また、第2図の復号回路63は、第8図の回路24A,29A,
第13図の回路,第14図の回路を適当に組み合わせればよ
い。 (2)上記実施例は単音電子楽器であるが、この発明は
複音電子楽器にも勿論適用可能である。そして、複音電
子楽器の場合は、時分割処理を用いることが好ましい。 (3)上記実施例における比較回路48,52,60、乗算器7
2,73等の演算処理を時分割処理によって行ってもよい。 (4)上記実施例においては、データメモリ35に記憶さ
せる楽音波形を規格化された波形としたが、規格化され
ていないエンベロープ付きの波形を同メモリ35に記憶さ
せてもよい。 (5)上記実施例においては、トーンコードTC、キーコ
ードKC、タッチデータTDの各々に対応して楽音波形を記
憶させたが、トーンコードTCのみに対応して楽音波形を
記憶させてもよい。また、演奏者が操作する操作子の各
操作状態に対応して楽音波形を記憶させてもよい。上記
いずれの組み合わせも可能である。 (6)キーコードKCの各々、タッチデータTDの各々につ
いて楽音波形を記憶させるのではなく、補間演算を用い
るようにしてもよい。例えば、タッチデータTDの場合、
最強のタッチデータTDに対応する波形と、最弱のタッチ
データTDに対応する波形を各々記憶させておき、中間の
タッチデータTDの場合は、上記最強および最弱のタッチ
データTDに対応する各波形から補間演算によって波形を
求める。なお、この補間演算を行う回路構成について
は、特開昭60−55398号公報に開示されている。 (7)上記実施例においては、繰返部RPTが1つである
が、この繰返部を複数設け、時間的に切り替えるように
してもよい。また、その場合において、繰返部と次の繰
返部との接続を滑らかにするため、補間接続(特開昭60
−147793号参照)を用いてもよい。また、特開昭59−18
8697号公報に記載されるような波形接続方法を用いても
よい。 (8)上記実施例においては、波形処理装置6(第1
図)から出力されたディジタルデータを一旦波形メモリ
7に記憶させた後、圧縮処理を行っているが、リアルタ
イムでこの圧縮処理を行うようにしてもよい。 (9)上記実施例においては、A/D変換器5の出力デー
タを規格化した後、圧縮しているが、例えば適当な箇所
を抜き出したり、繰返部が滑らかにつながるように演算
を行った後、すなわち、適宜波形編集を行った後データ
圧縮してもよい。 (10)上記実施例においては、マイクロフォン4によっ
て収音し、A/D変換器5によってA/D変換して、元になる
楽音データを得ているが、これに代えて、コンピュータ
シミュレーションによって元となる楽音データを得るよ
うにしてもよい。 (11)データ圧縮回路と、データメモリと、データ復号
回路を1台の電子楽器の中に組み込んでサンプリング電
子楽器を構成してもよい。 (12)この発明は鍵盤楽器に限らず、音源モジュールあ
るいはリズム音源等、鍵盤の無い電子楽器にも適用可能
である。 (13)復号回路の後段に、タッチデータTD、キーコード
KC等に応じてフィルタ特性が変化する(ディジタル)フ
ィルタを設け、このフィルタを通すことにより音色を制
御してもよい。 (14)データメモリ35のアドレスデータADの形成方法
は、上記実施例以外の方法でもよい。例えば、Fナンバ
(周波数ナンバ)を累算する方法、ALL“1"から逐次減
算することによりアドレスデータを形成する方法、プリ
セットタイプのアドレスカウンタ40を用い、スタートア
ドレスをプリセットするようにする方法、(マイクロ)
プログラムを利用してアドレスを演算する方法等いずれ
の方法でもよい。 (15)上記実施例においては、繰返部RPTをメモリから
繰り返し読み出して楽音を形成するようになっている
が、メモリ内に発音開始から終了までの全楽音波形を記
憶させておき、繰り返し読み出しを行わないようにして
もよい。 (16)上記実施例においては、各フレーム毎に線形予測
係数a1,a2を変えるようになっているが、全フレームに
おいて線形予測係数a1,a2を同一の値としてもよい。こ
の場合、勿論フレーム分けの必要はない。 (17)フレーム切換方式は上記実施例の方式に限らな
い。例えば、アドレスデータADの上位ビットを利用して
フレーム切換を行ってもよい。 (18)上記実施例においては、フレームの切換位置と繰
返部の設定を各々独立したが、繰返部の先頭においてフ
レーム切換を行う等、両者を同期させてもよい。 「発明の効果」 以上説明したように、この発明によれば、楽音波形の
各瞬時値を示す波形データを2次の線形予測演算および
差分型量子化方式による量子化によってデータ圧縮し、
このデータ圧縮によって得られたデータをメモリに記憶
させ、この記憶させたデータを読み出して復号し、この
復合された波形データに基づいて楽音信号を発生するよ
うにしたので、従来のものに比較し、メモリ容量を大幅
に削減することができ、しかも、再生誤差を最小にする
ことができる効果がある。
DETAILED DESCRIPTION OF THE INVENTION "Industrial applications"   The present invention relates to a tone signal used in an electronic musical instrument or the like.
It relates to a generator. "Conventional technology"   In electronic musical instruments, how easy it is to reproduce the sound of natural musical instruments
A major issue is how to generate sound. In electronic musical instruments
Various methods are known as musical tone signal generation methods.
But among them, the instantaneous value of the musical sound waveform of a natural instrument
Sampling is performed sequentially and stored in the memory.
Reads the stored sampling data and generates a tone signal
PCM method produces musical tone closest to natural musical instrument
Can be excellent. In addition, about this PCM method
Is JP-A-52-121313 (Title of invention; electronic musical instrument)
Is disclosed. "Problems to be solved by the invention"   The tone waveform of a natural instrument is the pitch or sound of the same instrument.
It differs slightly depending on the area. For example, a piano place
In this case, although slightly, the tone waveform differs for each pitch (range).
Has become. Note that the waveform cycle differs for each pitch.
Of course, the shape of the waveform itself other than the period differs.
Has become. Therefore, the PCM method is truly natural
When trying to generate musical sounds close to the instrument,
The tone waveform is stored for each pitch (range) as necessary.
And as a result, the memory capacity becomes extremely large.
You. That is, in the tone signal generator of the PCM system
The biggest challenge is how to reduce the memory capacity.
You. Therefore, the applicant of the present invention first used the linear prediction method.
The characteristic feature of the “music signal
Generator "(Japanese Patent Application No. 59-212382).   This invention is a further improvement of the above-mentioned prior invention,
The goal is to reduce memory capacity even further.
It is an object of the present invention to provide a tone signal generator capable of performing the above. "Means to solve the problem"   According to the present invention, waveform data indicating each instantaneous value of a musical tone waveform is
Quadratic linear prediction operation and quantization by differential quantization
Compressed data obtained by this data compression
Storage means for storing the stored data and readout of the waveform.
Indicating means to be displayed, and
The data in the memory is read out and the second-order linear prediction operation is performed.
Decoding by a decoding operation based on
Signal means, and the wave decoded by the decoding means.
Generating tone signals based on shape data.
ing.   In this specification, "differential quantization method"
Is   DM (Delta Moduration)   ADM (Adaptive Delta Moduration)   DPCM (Differential Pulse Code Moduration)   ADPCM (Adaptive Differential Pulse Code Modurati
on) And the like. "Action"   According to the present invention, linear prediction operation and differential quantization
Data compression is performed by both means of quantization
U. This allows more data compression than conventional ones
It works. "Example"   Hereinafter, referring to the drawings, a tone signal according to an embodiment of the present invention will be described.
The signal generator will be described. Fig. 1 shows the tone signal generation
FIG. 2 is a block diagram for explaining a basic configuration of the apparatus, and FIG.
Shows the configuration of an electronic musical instrument using the same tone signal generator.
It is a lock figure. This electronic musical instrument is
Converts musical tones of natural musical instruments collected into digital data
This digital data is used for linear prediction and ADPCM
Compress using the compression method and store the compressed data in memory
To memorize. During music formation, this menu
Reads and decodes data in memory to form tone signals
You. [Basic configuration]   In FIG. 1, 1 is a data compression circuit, and 2 is a data pressure circuit.
In which data compressed by the compression circuit 1 is stored.
The memory 3 stores the data read from the data memory 2
This is a decoding circuit for decoding. In the data compression circuit 1,
4 is a microphone for picking up the sound of a natural instrument,
5 is a sampler of the output signal of the microphone 4 at a constant period.
And convert it to digital data (sampling data).
A / D (analog / digital) converter to convert, 6 is waveform
Processing device. This waveform processing device 6 includes an A / D converter 5
Output data is stored in the internal memory,
The standardized data is written to the memory 7. Where
Classification refers to the following processing. Fig. 3 shows one of the musical tone signals.
FIG. 3 is a diagram showing an example, and as shown in FIG.
Tack (rising part) ATC waveform whose amplitude gradually increases
Becomes Normalization means that this attack part ATC is
This is a process of converting into a waveform having the same amplitude as the PT amplitude. Concrete
Specifically, the amplitude envelope of the attack section ATC is exactly the opposite
The changing envelope data is stored in each of the attack section ATC
This is a process of multiplying the sampling data. Note that this
The processing is performed to improve the accuracy of the reproduction of the musical tone in the part where the amplitude is small.
It is performed. In addition, the sun output from the A / D converter 5
The number of bits of the pulling data is, for example, 24 bits.
Then, the waveform processing device 6 converts the sampling data
And then the minimum required number of bits
Data (for example, 12 bits) is stored in the waveform memory 7
Write as data Sn.   Next, 8 is a changeover switch, and 9 is a linear prediction coefficient operation circuit.
It is. When the waveform data Sn is stored in the waveform memory 7,
The changeover switch 8 is turned on to the linear prediction coefficient operation circuit 9 side.
Then, each waveform data Sn in the waveform memory 7 is sequentially read.
The linear prediction coefficient calculation circuit 9
Supplied to The linear prediction coefficient calculation circuit 9 receives the supplied
Based on the waveform data Sn, the N frames shown in FIG.
Calculate optimal linear prediction coefficients a1 and a2 for each of [0] to [N-1]
And writes it to the coefficient memory 10. These linear prediction coefficients a1, a
Various methods have been conventionally known as the calculation method of 2.
For example, the Durbin method using the autocorrelation function is available.
It is effective. Also, the coefficient a1, ATwoIs the full waveform data in the frame.
Data, or from some waveform data.
Good.   Next, 11 is a line meter that performs data compression based on the linear prediction method.
This is a prediction operation circuit.
12 is a subtraction circuit, 13 is an addition circuit, 14 is a predicted value calculation circuit
It is. Further, in the predicted value calculation circuit 14, 14a, 14a
b is each D-FF (delay flip-flop), 14c, 14d
Are the linear prediction coefficients a output from the coefficient memory 10 respectively.1, ATwo
Is a multiplier having a multiplication coefficient, and 14e is an addition circuit.
The output of the adding circuit 14e is supplied to the subtracting circuit 12 as the predicted value ◇ Sn.
Be paid. 16 is the data by ADPCM quantization method.
ADPCM operation circuit that performs compression, and linear prediction operation circuit 11
12-bit data En output from the subtraction circuit 12
And converts it into a quantized difference code Cn. This amount
The child difference code Cn is stored in the data memory 2. Ma
The ADPCM operation circuit 16 also receives the quantized difference code Cn.
And the addition circuit of the linear prediction operation circuit 11
Output to 13. In this case, the decrypted data is the data En
Does not become exactly the same data, but includes an error dn. sand
That is, the decoded data is “En + dn”. Note that this
The ADPCM operation circuit 16 will be described later in detail.   Next, the operation of the linear prediction operation circuit 11 will be described. Person in charge
Each of the frames [0] to [N-1] in the number memory 10
Linear prediction coefficient a1, ATwoIs written,
The exchange switch 8 is turned on to the linear prediction operation circuit 11 side. Next
Of each frame [0], [1],.
The waveform data Sn is sequentially read and supplied to the subtraction circuit 12.
Also, the waveform data Sn of frame [0] is stored in the waveform memory.
7 is read from the coefficient memory 10,
Linear prediction coefficient a corresponding to1, ATwoBut the frame
The waveform data Sn of [1] is read from the waveform memory 7 and
The frame [1] in the coefficient memory 10
Linear prediction coefficient a1, ATwoBut ... each read from memory 10
And supplied to multipliers 14c and 14d. The waveform memory 7
Pulse and D-FF that determine the read timing of
The clock pulses supplied to 14a and 14b are the same. Decrease
The arithmetic circuit 12 subtracts the predicted value ◇ Sn from the waveform data Sn.
You. That is, Sn− ◇ Sn = En …… (1) And the data En obtained by this operation is
Output to ADPCM operation circuit 16. Here, the predicted value ◇ Sn is
Currently close to the waveform data Sn supplied to the subtraction circuit 12.
Value. (The reason will be described later.) As a result, the data
En is data whose value is much smaller than the waveform data Sn.
You. ADPCM operation circuit 16 quantizes data En by 4 bits
Convert to difference code Cn and output to data memory 2
Then, the data “En + dn” is output to the adding circuit 13. Addition times
The road 13 adds the data “En + dn” and the predicted value ◇ Sn.
Calculate. The result of this addition is En + dn + ◇ Sn = Sn + dn (2) Becomes That is, the output of the adder circuit 13 is substantially equal to the waveform data.
The value is equal to the value Sn. Therefore, within D-FF14a
Is almost equal to the waveform data Sn one clock pulse before.
Data is stored in the D-FF14b two clock pulses before.
Data Sn which is substantially equal to the data Sn of FIG. On the other hand, before
The previously described linear prediction coefficient calculation circuit 9 calculates the waveform data of the previous two
Sn-2And the previous waveform data Sn-1From Fig. 1
When the predicted value ◇ Sn is calculated by the circuit 14, the predicted value ◇
Coefficient a such that Sn is closest to the current data Sn1, ATwoIs calculated
And writes it to the coefficient memory 10. Therefore, this factor
a1, ATwoThe predicted value ◇ Sn calculated using
Very close values.   In this manner, the linear prediction operation circuit 11
Waveform data Sn output from 7 is converted to data En with a small value
ADPCM arithmetic circuit 1
Output to 6.   Next, the ADPCM operation circuit 16 will be described. First, 17
Is a subtraction circuit, and predictive data ◇ En-1Reduced
The result of this subtraction is entered as data en (12 bits).
Output to coder 18. Encoder 18 converts data en to ADPC
Quantized by M method, 4-bit quantized difference code C
Output as n (the most significant bit is the sign bit). 19
Is based on the value of the quantized difference code Cn output from the encoder 18.
Thus, the adaptive quantization width data Δ
n (8 to 12 bits).
The processing operation is as follows.   First, the immediately preceding quantization width data is-1Then the quantum
The quantization width control circuit 19 performs the following operation to obtain the next quantization width data.
Data Δn. Δn = Δn-1・ K …… (3) K in this equation (3) is the immediately preceding quantized difference code
Cn-1Is a coefficient determined by the value of. Figure 4 shows the quantity
FIG. 9 is a diagram showing the relationship between the value of the child difference code Cn and the coefficient k.
As shown in the figure, the absolute value of the quantized difference code Cn is large.
The value is set to increase as
ing. However, in this embodiment, as shown in FIG.
The value obtained by rounding off the second place below the decimal point of the value of coefficient k to k
Is stored in a predetermined memory in the quantization width control circuit 19.
I'm making it. Note that Cn = “1000” in FIG.
Corresponds to "0".   The encoder 18 has the quantization width as shown in FIG.
Difference PCM code when the value of data Δn is “1”
Calculate the relative value en / Δn of the code en
Convert to minute code Cn and output. In this case, en / Δn
The value can take any value between -1 and +1 but the quantization difference
Since the minute code Cn is 4 bits, the linear conversion operation is
I can't. Therefore, in this embodiment, en / Δn is
It is divided into sections as shown in FIG.
Conversion to the child difference code Cn is performed. example
For example, when en / Δn is not less than 1/2 and less than 5/8, the quantization difference code
Code Cn is set to “0100” and en / Δn is 0 or more and less than 1/8
In this case, the quantization difference code Cn is set to “0000”.   Next, 20 is the quantization difference code Cn and the adaptive quantization width Δn
Is a decoder that decodes data en based on This
In the case of, the decoded data contains an error dn based on quantization.
Therefore, the output data of the decoder 20 is “En + dn”
Becomes The specific decoding process of this decoder 20 is as follows.
It is as follows. Replace each bit of the quantized difference code Cn with (BThree,
BTwo, B1, B0), The data “en + dn” is given by
Is calculated. en + dn =(1-2 ・ B 3 )・ {Δn / 2 ・ BTwo+ (Δn / 4) · B1+
(Δn / 8) ・ B0+ Δn / 8} (4)   In the above equation (4), the term with an underline
Is the term that makes up the sign and the sign bit, BThreeIs “1”
Is negative when "0" and positive when "0". Also in braces
The closed term is the term corresponding to the absolute value, and the value of Δn
Is multiplied by the weight of each bit, and
The offset value Δn / 8 is added to create the absolute value of en + dn
It is.   The output data “en + dn” of the decoder 20 is added to an adder circuit.
Supplied to 21. The adding circuit 21 outputs the data “en + dn”
Forecast data ◇ En-1And are added. The result of this addition is en + dn + ◇ En-1= En + dn (5) Becomes That is, the output of the addition circuit 21 is almost equal to the data En.
Becomes The data output from the adding circuit 21
"En + dn" is one clock pulse by D-FF22.
Is delayed and the predicted data-1To subtraction circuit 17
Is output.   Thus, the prediction data ◇ En-1Is almost data En-1Like
Therefore, the output data en of the subtraction circuit 17 is
Data En and Data En-1(One timing before the clock pulse
This is data indicating the difference from the data En). As a result,
The value of data en is much smaller than the value of data En, and
Therefore, this data en is converted into 4 bits by the encoder 18.
Large (even 3 bits) code Cn
No child error occurs.   Next, the decoding circuit 3 will be described. This decoding circuit 3
Is the quantized difference code sequentially read from the data memory 2.
A circuit for decoding the code Cn into data “Sn + dn = Hn”,
It comprises an ADPCM decoding circuit 24 and a linear prediction decoding circuit 29.
ing. The ADPCM decoding circuit 24 performs the above-described quantization width control circuit.
A quantization width control circuit 25 having the same configuration as the
The decoder 26 having the same configuration, the adding circuit 27 and the D-FF 28
It is configured. Then, the data “en +
dn "is output, and the addition circuit 27
In the data ◇ En-1Are added, and as a result of the addition,
That is, when the data “En + dn” is read into the D-FF28,
In addition, it is output to the linear prediction decoding circuit 29. The above
In the decoding process, the ADPCM operation circuit 16
Exactly the same process as decrypting data "En + dn" from code Cn
It is.   Next, the linear prediction decoding circuit 29 is added to the addition circuit 30 as described above.
Composed of the predicted value calculating circuit 14 and the arithmetic circuit 31 having the same configuration.
Have been. In this case, the multipliers 31c and 31d in the arithmetic circuit 31
Are the coefficients a read from the coefficient memory 10 respectively.1, ATwoBut
Supplied. In addition, data memory is provided to the D-FFs 31a and 31b.
Clock pulse that determines read timing of 2 is supplied
Is done. According to the linear prediction decoding circuit 29,
The output data of the arithmetic circuit 31 is the predicted value ◇ Sn described above,
Therefore, the output data of the adding circuit 30 is En + dn + ◇ Sn
= Sn + dn = Hn (6) Becomes   Then, the decoded data Hn is stored in D / A (digital / analog).
Log) converted to obtain a tone signal.   The above is the configuration of the tone signal generating device according to this embodiment.
You. In the above circuit, the error dn based on the quantization is calculated by the addition circuit 2
It is included in each output data of 1,14e.
Therefore, the prediction data ◇ En which is the feedback data
-1, Sn also includes the error dn. That is,
The above circuit is of the error feedback type and therefore
Therefore, no error is accumulated in the decoded data Hn. Ma
In addition, the linear prediction operation circuit 11 and the linear prediction decoding circuit 29, ADPCM
The number of input / output bits of the arithmetic circuit 16 and ADPCM decoding circuit 24 and
Finite word length data
It is possible to prevent the occurrence of an error caused by the calculation.   If extremely high-precision calculations are possible,
If it is not necessary to consider the accumulation of quantization errors,
Fig. 7 shows the shape prediction operation circuit 11 and ADPCM operation circuit 16, respectively.
The operation circuits 11A and 16A shown in FIG.   In addition, a normal tone signal generator has a structure shown in FIG.
No data compression circuit 1 is provided. This data compression circuit
1 is provided because the tone signal generator is a sampler.
Electronic instruments (performers can sample sounds themselves
Electronic musical instruments). [Configuration of the embodiment in FIG. 2]   Next, the electronic musical instrument shown in FIG. 2 will be described.   First, a description will be given of a method of forming a musical tone in this electronic musical instrument.
You.   First, the data compression circuit shown in FIG.
Musical tone waveform standardized and compressed by channel 1
However, for each tone, and for each touch intensity (keypress intensity),
It is stored for each pitch (for each keyboard key). An example
For example, the type of tone is 10, the number of keys is 40, and the touch intensity is 5 steps.
In the case of floor, 10 × 40 × 5 = 2000 kinds of musical sound waveforms are stored
ing. In this case, it is stored in the data memory 35.
Each musical tone waveform has the entire waveform from the beginning to the end of the musical tone.
However, as shown in FIG.
The waveform and the middle of the waveform following this attack part ATC (repeated
(Return RPT waveform). And at the time of music formation
First, the waveform of the attack part ATC is read out,
Thus, the waveform of the repetition unit RPT is repeatedly read. And
After the read waveform is enveloped,
D / A conversion is performed to produce a tone signal.   Hereinafter, the circuit of FIG. 2 will be described in detail. First, code 36
Is a keyboard, and 37 is a touch detection circuit. This touch
The detection circuit 37 detects that any key on the keyboard 36 is pressed.
When the touch is detected, the touch intensity of the same key is detected and the detected touch
The touch data TD corresponding to the intensity is output. This touch
As a method of detecting the intensity, a key is pressed slightly
Contacts that are turned on when the key is pressed to the lowest point.
Contacts for each key, and these contacts
Touch based on the time between successive turns on in response to key-on
Method to detect the touch strength, or use a piezoelectric element
An element for detecting the key press pressure is provided, and the output of this element is
For example, a method of performing detection based on such a method is employed.   Reference numeral 38 denotes a key press detection circuit, which is located below each key of the keyboard 36.
Of each key based on the output of the key switch
Detect ON / OFF state. And any key is
If it is detected that the key has been turned on,
Output KC and key-on signal KON (“1” signal)
At the rising edge of this key-on signal KON.
Then, a key-on pulse KONP is output. Also, the key
When it is detected that the key is turned off, the key-on signal KON
To the “0” signal. Also, multiple keys can be turned on at the same time.
If any key is pressed, one of the keys (for example,
Key or the key with the highest note)
Perform the above processing. Note clock generation circuit 39
Key sound indicated by key code KC output from detection circuit 38
Generates a note clock NCK with a frequency corresponding to high
Output to the section. The address counter 40 is a note clock
NCK is counted up and the count output is added to adder 4
Supply to 1.   The tone selection circuit 42 includes a plurality of tone selection operators and
And the currently set tone selection operator
The tone code TC corresponding to the tone of is output. start
The address memory 43 stores each tone waveform in the data memory 35.
Address data indicating the storage address of the first data is stored
Key code KC, tone code T
When the C and touch data TD are supplied, respectively,
Address data indicating the start address of the tone waveform corresponding to the
Data is read out and output as start address data SA.
Is forced. Repeat address memory 44 is data memory 35
Indicates the storage address of the repeat data of each tone waveform in
This is a memory in which address data is stored. Here, the repeat data is the repetition part RPT shown in FIG.
Means the first data. To this repeat address memory 44
Key code KC, tone code TC, and touch data TD
When supplied, the musical tone waveform corresponding to each of these data
Address data indicating the storage address of the Pete data is read.
And output as repeat address data RA
You. 45 is a selector, and the start address data SA,
Select one of the repeat address data RA,
Output to the addition circuit 41. 46 is a setting for controlling the selector 45.
/ Reset flip-flop.
When the output Q of the rop 46 is a “0” signal,
End A is selected and start address data SA is added to the adder circuit
41, and when the signal is “1”, the input of selector 45
Force end B is selected and repeat address data RA is added
Output to the road 41. The adder circuit 41
Output and the output of the selector 45, and
It is supplied to the data memory 35 as dress data AD.   The attack end address memory 47 has a data memory 35
Attack end data of each tone waveform in the memory
Memory that stores address data indicating
You. Here, the attack end data is shown in FIG.
This is the last data of the attack part ATC. This attack
Key code KC, tone code T to end address memory 47
When the C and touch data TD are supplied, respectively,
Of attack end data of musical sound waveform corresponding to data
The address data indicating the address is read and the attack
Output to the comparison circuit 48 as the end address data AEA
You. The comparison circuit 48 outputs the address output from the addition circuit 41.
Compare data AD with attack end address data AEA
When the two match, the attack end signal AEND
(“1” signal) is output. 49 is D- for timing adjustment
FF (delay flip-flop)
Signal AEND is delayed by one timing of note clock NCK
And output it as signal AENDD. Repeat end address
The memory 51 is a repetition section of each tone waveform in the data memory 35.
Address data indicating the storage address of end data is recorded.
This is the memory that is remembered. Here,
Is the last data of the repeat part RPT shown in FIG.
U. Key code to this repeat end address memory 51
KC, tone code TC, touch data TD are supplied respectively
And the repetition section of the tone waveform corresponding to each of these data
Address data indicating the storage address of the read data
And compared as repeat end address data REA
Output to the road 52. The comparison circuit 52 outputs from the addition circuit 41
Address data AD and the repeat end address data
Data REA, and when they match, repeat
Output the REND signal (“1” signal). 53 is a timing tone
D-FF for adjustment and notes the repeat end signal REND
One timing delay of clock NCK, as signal RENDD
Output.   The repeat frame memory 56 shown at the top of FIG.
Belongs to the repeat data described above (the first data of the repetition part RPT)
Frame numbers are stored for each tone waveform.
The memory that is being used. That is, in the waveform example of FIG.
In this case, the repeat data belongs to frame [2].
To which frame this repeat data belongs
This is determined for each musical tone waveform. Repeat frame
This repeat data is stored in advance in the
The number of the frame to which the data belongs is stored.
Code KC, tone code TC, and touch data TD are supplied respectively.
Then, the frame number corresponding to each of these data is read.
Output to the preset data terminal PD of the frame counter 57.
Output to The frame counter 57 is currently
A counter that outputs the number of the frame being performed.
Reset by the key-on pulse KONP and the signal RE
The output data of the repeat frame memory 56 is
It is preset and the output of D-FF58 is counted up.
To The count output of the frame counter 57 is
Frame end address memo as frame code FLC
The data are supplied to the memory 59 and the linear prediction coefficient memory 61. Frey
The memory end address memory 59 stores frames [0] to [N-
[1] Data memory in which each final waveform data is stored
Address data indicating 35 addresses are stored for each tone waveform.
It is a stored memory. To this memory 59
Do KC, tone code TC and touch data TD are supplied respectively
And N address data corresponding to each of these data in advance.
The storage area where the data is stored is specified, and this storage
Each address data in the area is sent from the frame counter 57
Read based on the output frame code FLC
You. The read address data is
Comparison circuit 60 as the memory end address data FLEA (FLC)
Output to The comparison circuit 60 outputs from the addition circuit 41
Address data AD and frame end address data
Compare with FLEA (FLC), and when they match, "1" signal
Is output. 58 is a D-FF for timing adjustment,
The output signal of the comparison circuit 60 is one time of the note clock NCK.
Output to the clock terminal CK of the frame counter 57.
Power.   The linear prediction coefficient memory 61 stores the linear prediction coefficient a1, ATwoIs remembered
Each sound waveform in the data memory 35
Has a storage area corresponding to each of these storage areas.
N at the rear correspond to frames [0] to [N-1], respectively.
Set of linear prediction coefficients a1, ATwoIs stored. And ki
-Code KC, tone code TC and touch data TD are supplied respectively
Then, the storage area corresponding to each of these data
Is selected and the linear prediction coefficient a in this storage area is1, A
TwoIs the frame code output from the frame counter 57.
Read based on the FLC.   Next, 63 is the quantization difference output from the data memory 35.
A decoding circuit for decoding the code Cn into decoded data Hn.
8 is shown in FIG. The configuration of the decoding circuit 63 is basically
This is similar to the decoding circuit 3 shown in FIG.
Signal circuit 24A and a linear prediction decoding circuit 29A.
You. In the ADPCM decoding circuit 24A, 100 is a quantization difference code.
When the code Cn is supplied, the coefficient k corresponding to the value is output.
ADPCM coefficient memory, and the conversion data shown in FIG.
Is stored. This ADPCM coefficient memory 100 outputs
The coefficient k is supplied to one input terminal of the multiplier 101, where
Then, the previous quantization width data Δn-1And the product is taken. You
That is, the calculation of the above-mentioned expression (3) is performed, and
The quantization width data Δn is calculated. The output of this multiplier 101
The force data Δn is supplied to the input terminal B of the selector 102.
The selector 102 receives an input when a “1” signal is supplied to the terminal SA.
Select the terminal A, and when the “1” signal is supplied to the terminal SB, the input terminal
Select B. That is, the selector 102
Select input terminal A only when Lus KONP is output, and others
In this case, the input terminal B is selected. 103 is quantization width data Δ
Initial value of n Δn0Is an initial value storage unit in which
Initial value Δn that is the stored value0Is the input terminal A of the selector 102
Supplied to The output signal of this selector 102 (Δn
Or Δn0) Is a decoder 110 via a maximum / minimum control unit 104,
Supplied to delay flip-flop 105 and latch 106
Is done. The maximum / minimum control unit 104 calculates the quantization width data Δn.
It regulates the maximum and minimum values.
Small value is (16)Ten, The maximum value is (1552)TenIs set to
If the data Δn exceeds these limits,
The above-mentioned limit value is output. Delaif
The lip flop 105 is based on the note clock NCK.
Although the quantization width data Δn is delayed by one clock timing,
Therefore, the latch 106 receives the attack end signal AEND.
When supplied, the quantization width data Δ supplied to the input end
n is latched. Delay Flip Flow Above
The output data of the latch 105 and the latch 106 are
7 input terminals A and B. The selector 107 is connected to the terminal SA
When the "1" signal is supplied to the terminal, the input terminal A is selected, and the terminal
When the "1" signal is supplied, the input terminal B is selected. Sand
That is, the selector 107 is input only when the signal RENDD is supplied.
Select end B, otherwise select input A. This
In this case, when the input terminal A of the selector 107 is selected,
One clock timing by Ray flip-flop 105
Quantized width data Δn delayed-1Is output from output terminal S
Is done. When the input terminal B of the selector 107 is selected,
In this case, the data in the latch 106 is output.
The operation of this case will be described later. And, according to the above configuration,
Thus, a quantization width control circuit 108 is configured. Next,
The coder 110 is similar to the decoders 20 and 26 shown in FIG.
(4) a decoder for performing the operation of the expression, and the output data
Becomes “en + dn”. 111 is an addition circuit, which is a decoder 1
Data “en + dn” output from 10 and selector 117
Predicted data output from En-1And add
The result, that is, the data “En + dn” is linearly decoded by the predictive decoding circuit 29A.
Is output to the adder circuit 65. 115 is D-FF28 shown in FIG.
D-FF similar to the above, and the data supplied to the input terminal
Based on the note clock NCK, one clock timing
Output with a delay. 116, key-on pulse KONP
A gate that opens when no force is applied
In the open state, the output of the D-FF 115 is
Is supplied to the input terminal A. 118 is a latch and attack
When the end signal AEND is supplied, the
And latch it. The output of this latch 118
The force signal is supplied to the input terminal B of the selector 117. SEREC
117 selects the input terminal B only when the signal RENDD is supplied.
Otherwise, the input terminal A is selected. In this case,
When the input terminal A of the selector 117 is selected, the D-FF 115
"En + dn" delayed by one clock timing
Output from the output end. Also, the input terminal B of the selector 117
Is selected, the data in latch 118 is output.
However, the operation in this case will be described later.   Next, the linear prediction decoding circuit 29A will be described. Ma
65 is the data "En + d" supplied to one of its input terminals.
n "and the predicted value ◇ Sn supplied to the other input terminal.
Addition circuits 66 and 67 each add the signal AEN to the load terminal L.
Latch to read data of input terminal when DD is supplied, 6
8,69 are selectors, respectively. These selectors 68, 69
Input terminal A when repeat end signal REND is "1" signal
Data at the input terminal B when the signal is "0".
Output. 70 and 71 are supplied with the note clock NCK, respectively.
Read the data at the input end and send it to the key-on pulse KONP
Therefore, the D-FFs 72 and 73 reset are each a linear prediction coefficient.
Number a1, ATwoIs the multiplier coefficient, and 74 is the multiplier of the multipliers 72 and 73.
This is an addition circuit for adding each output.   Next, in FIG. 2, reference numeral 76 denotes an envelope generator.
Key-on signal KON has risen to a “1” signal
After that point, key code KC, tone code TC, touch data
Envelope data ED determined according to each value of data TD
The output is supplied to the multiplication circuit 77. Fig. 9 (a) is keio
(K), and (B) and (C) are envelopes respectively.
An example of a change in the value of the data ED is shown. Where (b) is
-In the case of a bass-based tone, (c) is a sustained tone.
Is the case. The multiplication circuit 77 is output from the decoding circuit 63
The decrypted data Hn is multiplied by the envelope data ED, and
The result of the multiplication is output to D / A converter 78. D / A converter 78 multiplies
Converts the output data of the circuit 77 into an analog signal,
Output to system 79. The sound system 79 has a D / A conversion
Amplifies the output signal of the converter 78 and sounds it through a speaker.
You. [Operation of the embodiment in FIG. 2]   First, the performer operates the tone selection operator to select the tone of the musical tone.
When the color is set, the tone selection circuit 42 outputs the set sound.
The tone code TC corresponding to the color is output and supplied to each part of the circuit.
Be paid. Next, one of the keyboards 36 by the performer
When any key is pressed, the touch detection circuit 37
The data TD receives the key-on pulse KO from the keypress detection circuit 38 again.
NP, key-on signal KON (“1” signal) and key code KC are each
Output to each part of the circuit. Key-on pulse KONP detects key press
When output from the circuit 38, the flip-flop 46
Reset the counters 57 and D-FF70 and 71 (Fig. 8).
It is. When the frame counter 57 is reset, the frame
The frame code FLC output from the
"0" and the frame code FLC "0"
Memory 59 and linear prediction coefficient memory 61
Output to As a result, the frame end address
Frame end address FLEA (0) is output from memory 59
Also, the linear prediction coefficient memory 61
Linear prediction coefficient a1, ATwoIs output. Also the key mentioned above
The on-pulse KONP is applied to the address
To the address counter 40.
Reset. Furthermore, the key-on pulse KONP is
It is supplied to the selector 102 in FIG. This allows the initial
Initial value Δn of Δn output from value storage unit 1030Is
The decoder 11 via the
Supplied to 0 and latched internally.   The key-on signal KON is output from the keypress detection circuit 38.
After that, the envelope generator 76
The envelope data ED is output. Also, the key code KC
A note clock generation circuit output from the key press detection circuit 38
After being supplied to 39, the note clock generation circuit 39
Note that the frequency corresponding to the pitch of the pressed key
Lock NCK is output and supplied to the address counter 40.
You. The address counter 40 uses this note clock NCK
Count up. Thereby, the address counter 40
Count output sequentially changes to 0, 1, 2,.... This
The count output of the dress counter 40 is supplied to the adder circuit 41
In the adding circuit 41, the output of the selector 45 and the adder are added.
Is calculated. At this time, flip-flop 46 is reset.
Therefore, the start address memory 43
Whether the input start address data SA is the selector 45
Output from As a result, the output of the addition circuit 41
Start address data SA and address counter 40 count
Data and the data output, and this data is
The data is output to the data memory 35 as the address data AD. sand
That is, "SA + 0", "SA + 1", "SA + 2" ...
The dress data AD is sequentially output to the data memory 35. This
As a result, the data memory 35 first reads the attack part ATC
The quantized difference codes Cn are sequentially output and supplied to the decoding circuit 63
Is done.   The decoding circuit 63 first converts the quantized difference code Cn into data
Decrypt to “En + dn” and then convert this data “En + dn”
Data Hn. In other words, the quantum
At the time when the digitized difference codes Cn are sequentially output,
The beat end signal REND is in the “0” signal,
Impulse KONP only becomes “1” signal at key-on,
After the key is turned on, the signal immediately becomes “0”.
Each input terminal A of the collectors 107 and 117 (FIG. 8) is selected,
The data supplied to the input terminal A is output from each output terminal S.
Is forced. That is, at this point, the AD in FIG.
PCM decoding circuit 24A is the same circuit as ADPCM decoding circuit 24 in FIG.
It has become. As a result, the data output from the data memory 35 is output.
In the ADPCM decoding circuit 24A, the quantized difference data Cn
In the circuit of FIG. 1, decoding is performed in the same manner as in the case of FIG.
+ Dn ”is output to the linear prediction decoding circuit 29A.   During key-on, the key-on pulse KONP is set to “1”.
As a result, the output of the gate 116 becomes “0” and this data
“0” is supplied to the adder circuit 111 via the selector 117.
You. As a result, the adder 111 outputs the data “en + dn”
Is output as data “En + dn” as it is.   The linear prediction decoding circuit 29A decodes the data "En + dn"
Data Hn = Sn + dn. That is, first, key-on
When signal KON rises, repeat end
The signal REND is at the "0" signal, and therefore the selector 68,6
9 (Fig. 8) Data at each input terminal B is output from each output terminal
Is done. That is, at this point, the linear
The predictive decoding circuit 29A is the same as the linear predictive decoding circuit 29 in FIG.
It is a circuit. Therefore, the output from the adder circuit 111
The input data “En + dn” is sent to the linear prediction decoding circuit 29A.
Is decoded in the same manner as described above, and the decoded data Hn
Is output as   The multiplication circuit 77 adds the decoded data Hn to the
An envelope is provided, and the output of the multiplication circuit 77 is D / A
The signal is converted to an analog tone signal by the converter 78,
The analog tone signal is converted to a tone in the sound system 79.
Is pronounced. Thus, first, the frame [0]
Is formed.   Next, the address data AD is the frame end address FL
When EA (0) is reached, the comparator circuit 60 outputs a “1” signal.
And the clock terminal of the frame counter 57 via the D-FF 58.
Supplied to child CK. As a result, the frame counter 57
Incremented and frame code FLC becomes “1”
You. When the frame code FLC becomes “1”, the frame
Frame address FLEA from the command address memory 59
(1) is output. Also, from the linear prediction coefficient memory 61
Linear prediction coefficient a for frame [1]1, ATwoIs output and multiplication is performed.
Are supplied to devices 72 and 73 (FIG. 8).   Hereinafter, the reading of the data memory 35 proceeds, and
Thus, the tone of the frame [1] is formed. And the ad
Address AD reaches frame end address FLEA (1)
Then, in the same way as above, the frame end address
From frame 59, the frame end address FLEA (2) is
Further, the linear prediction coefficient memory 61 stores the linear prediction of frame [2].
Coefficient of measurement a1, ATwoAre output, and thereafter, the frame [2]
A musical tone is formed.   Then, for example, during the tone formation of this frame [2]
The address data AD is the attack end address
When the AEA matches (see FIG. 3), the comparator 48
Attack end signal AEND is output.
Signal AEND to the load terminal L of the latches 106 and 118 (FIG. 8)
Supplied. As a result, the latch 106 has an attack section ATC
Is stored as the quantization width data Δn corresponding to the last data of
The latch 118 has the last data “En +
dn ”is stored.   In addition, note-taking starts when the attack end signal AEND occurs.
One timing after the lock NCK, the D-FF4 shown in FIG.
9 outputs the signal AENDD. This signal AENDD
It is supplied to the address counter 40 through the gates 86 and 84,
Thereby, the address counter 40 is reset. Ma
The signal AENDD is supplied to the set terminal S of the flip-flop 46.
To set flip-flop 46.
It is. When the flip-flop 46 is set, the reset
Pete address RA is supplied to adder circuit 41 via selector 45.
Be paid. The signal AENDD is supplied to the latches 66 and 67 (FIG. 8).
Is supplied to the load terminal L of the
The output data of FF70 and 71 are read into latches 66 and 67, respectively.
You. Now, the attack output from the adding circuit 65 in FIG.
The data Hn of the last part of the part ATC and the first part of the repetition part RPT
Assuming that the minute data Hn is as shown in FIG.
The outputs of D-FF70 and 71 are shown in Fig. 10 (b) and (c), respectively.
Data, and signal AEND and signal AENDD
It is output at the timings shown in FIGS.
As can be seen from these timing diagrams, the signal AENDD
Is supplied to the load terminals L of the latches 66 and 67, the latch 6
The last data of the attack part ATC (A1) and 6,67 respectively
The second last data (A2) is stored.   The above is the operation based on the signal AENDD. After that, add
From the circuit 41, "RA + 0", "RA + 1", "RA + 2" ...
Address data AD are sequentially output, thereby
The tone formation of the return part RPT is performed. In this case, the attack
Each time the frame changes, a new
Linear prediction coefficient a1, ATwoComes out of the linear prediction coefficient memory 61.
And supplied to the decoding circuit 63.   Next, the address data AD is the repeat end address RE
If it matches A, that is, the tone of the first repetition part RPT
When the formation is completed, the repeat end signal is output from the comparison circuit 52.
REND (“1” signal) is output, D-FF53 and selector
68, 69 (FIG. 8). Selector 68, 69
When the pete end signal REND is supplied, the selectors 68 and 69
Input terminal A is selected, and the outputs of latches 66 and 67 are selected.
Are supplied to the input terminals of the D-FFs 70 and 71 through the input terminals 68 and 69, respectively.
Next, when the note clock NCK is output, the D-FFs 70 and 71
The outputs of latches 66 and 67 are read into
Outputs a signal RENDD (“1” signal). This signal RENDD
Is output to the preset terminal PR of the frame counter 57.
As a result, the output of the repeat frame memory 56 (this
In the example of "2"), the frame counter 57 is preset.
Is done. As a result, the frame code FLC becomes “2”.
Frame address from the frame end address memory 59.
Address FLEA (2) is output and the linear prediction coefficient
The linear prediction coefficient a of the frame [2] from the memory 611, ATwoIs each
Are output each time. The signal RENDD is shown in FIG.
The signals are supplied to the selectors 107 and 117.
7,117 input terminals B are selected. When this input terminal B is selected
Output, the outputs of the latches 106 and 118 activate the selectors 107 and 117, respectively.
Output via Therefore, the second time of the repeat part RPT
Of the first quantized difference code Cn in the tone formation
At which point, the quantization width referred to as the previous value
Data Δn-1And PCM playback code ◇ En-1Each
And the one corresponding to the last quantized difference code Cn of the ATC
It is as if the tone formation continued from the attack part ATC
Has the same effect as was done.   The signal RENDD is addressed via OR gates 86 and 84.
The counter 40 is supplied to the
Data 40 is reset. As a result, the addition circuit 41
Again, "RA + 0", "RA + 1", "RA + 2" ...
The dress data AD is sequentially output.
The second tone generation of T is performed. In this case, linear
Prediction coefficient a1, ATwoOf course, it changes for each frame.   Here, the decryption data at the beginning of the second repetition unit RPT
The data Hn will be described. Now, as shown in Fig. 11 (a)
Thus, the decoded data Hn of the last part of the repetition unit RPT is
2, RE1. Fig. 11 (b) and (c) show the
A signal end signal REND and a signal RENDD are shown. Also,
The data A described in FIG.
1, A2 (decoded data of the last part of the attack part ATC) is recorded.
Remembered. In this case, the timing of the signal RENDD
As shown in FIGS. 11 (d) and (e), the D-FFs 70 and 71
Are read data A1 and A2, respectively. On the other hand, this signal REN
At the timing of DD, the first quantum of the repetition unit RPT
The structured difference code Cn is read from the data memory 35. You
That is, the first quantum of the repetition part RPT in the second time
When the structured difference code Cn is read from the data memory 35
In the case where the data in the D-FFs 70 and 71 are
The same and therefore the same decoding as in the first case
Data Hn is output from linear prediction decoding circuit 29A. As well
Then, the second, third,...
Data Hn is the same as in the first case.   Next, the tone formation of the second repetition unit RPT is completed.
Then, by the same process as above, the third time,
The tone formation of the repetition section RPT of the fourth time is performed.   Next, when the player releases the key, the key-on signal KON
Returns to the “0” signal. As a result, the envelope data ED
Gradually attenuates to "0", and thus the generated musical tone is attenuated.
And stop. [Experimental results of the above embodiment]   FIG. 12 is a view showing an experimental result of the above embodiment. Same figure
(A) shows the original data Sn sampled from the piano sound
You. FIG. 2B shows the data Sn shown in FIG.
Is converted to a quantized difference code Cn by the data compression circuit 1.
And store the code Cn in the memory.
8 and decoded by the circuit shown in FIG.
Signal data Hn. The figure (c) shows the data of (a).
The result obtained by subtracting the data Hn of (b) from the data Sn,
Indicates a reproduction error. In (c), the vertical scan
The kale is four times larger than (a) and (b).   As shown in Fig. (C), the above-mentioned embodiment
Despite being compressed and stored in memory,
It is possible to reproduce with a very small error.   In the above embodiment, the order of the linear prediction operation, that is,
The number of stages of the D-FFs 14a and 14b in FIG. 1 is quadratic. Experiment
According to the result, the reproduction error is the smallest in the second order case.
Become. For example, FIG. 4D shows the case where the order is set to 4th order.
(All other conditions are the same as in (a) to (c))
Therefore, the reproduction error is larger than in the case of the second order. this
The reason is that the accuracy of the linear prediction operation is
Of the ADPCM calculation
This is because the compression ratio (accuracy) of the road decreases.
On the other hand, in the case of the second order, the correlation between each of the data En
Remains to some extent, which results in the ADPCM arithmetic circuit.
Compression rate is improved. [Modification of the above embodiment] (1) The ADPCM decoding circuit 24A shown in FIG.
May be configured. In the circuit shown in FIG.
If both the latches 106 and 118 in FIG.
Instead of the Δn repetition unit for calculating the initial value of the repetition unit RPT.
Period value memory 106A and attack part final data value memory 11
8A (both ROM) is provided. That is, this
The circuit sends data to latches 106 and 118 by the signal AEND, respectively.
Instead of storing the data, the data to be stored is stored in advance.
It is prepared in the lips 106A and 118A. Note that this
In this case, not only the data but also each tone waveform in the data memory 35
Prepared corresponding to each.   FIG. 14 shows the linear predictive decoding circuit 29A shown in FIG.
It may be configured as follows. In the circuit shown in FIG.
Is not provided with the latches 66 and 67 shown in FIG.
Initial value data memory 130 for initial value calculation of repetition unit RPT
(ROM) is provided. In this initial data memory 130
Is the last compressed data A1,
A2 is recorded corresponding to each tone waveform in the data memory 35.
Key code KC, tone code TC, touch
When the data TD is supplied, the corresponding data A1, A2
Is read and supplied to the selectors 68 and 69.   In each of the above configurations, the memories 106A, 118A, 130A
Each as RAM, when power is turned on or when tone is selected, etc.
Calculation to obtain each data and store it.
Good.   Also, the decoding circuit 63 of FIG. 2 is equivalent to the circuits 24A, 29A,
The circuit in Fig. 13 and the circuit in Fig. 14 can be combined appropriately.
No. (2) The above embodiment is a single-tone electronic musical instrument.
Of course, the present invention can be applied to a double tone electronic musical instrument. And double sound
In the case of a child musical instrument, it is preferable to use time-division processing. (3) Comparison circuits 48, 52, 60 and multiplier 7 in the above embodiment
The arithmetic processing such as 2,73 may be performed by time division processing. (4) In the above embodiment, the data stored in the data memory 35 is
Although the musical sound waveform to be used has a standardized waveform,
Unenveloped waveforms with envelopes are stored in the same memory 35.
You may let it. (5) In the above embodiment, the tone code TC, the key code
The tone waveform is recorded for each of the
I reminded me that the tone waveform only corresponds to the tone code TC.
It may be stored. Also, each of the controls operated by the player
A musical sound waveform may be stored according to the operation state. the above
Either combination is possible. (6) For each key code KC and each touch data TD
Instead of storing musical tone waveforms,
You may make it. For example, in the case of touch data TD,
The waveform corresponding to the strongest touch data TD and the weakest touch
Each waveform corresponding to data TD is stored, and
For touch data TD, the strongest and weakest touches
Waveform is calculated from each waveform corresponding to data TD by interpolation calculation.
Ask. Note that the circuit configuration for performing this interpolation calculation is
Is disclosed in JP-A-60-55398. (7) In the above embodiment, there is one repetition unit RPT.
However, it is necessary to provide multiple
May be. In such a case, the repetition section and the next
In order to make the connection with the return part smooth, interpolation connection
-147793) may be used. Also, JP-A-59-18
Even when using the waveform connection method described in 8697
Good. (8) In the above embodiment, the waveform processing device 6 (first
Digital data output from Fig.) Is temporarily stored in the waveform memory.
7, the compression process is performed.
This compression processing may be performed on the image. (9) In the above embodiment, the output data of the A / D converter 5
After standardizing the data, compression is performed.
Calculation so that the repeat part is connected smoothly.
After performing the data editing, that is, after performing waveform editing appropriately
It may be compressed. (10) In the above embodiment, the microphone 4
A / D conversion by the A / D converter 5
Music data is obtained, but instead of this, a computer
Get the original music data by simulation
You may do it. (11) Data compression circuit, data memory, and data decoding
The circuit is integrated into one electronic musical instrument
You may comprise a child instrument. (12) The present invention is not limited to keyboard musical instruments.
Also applicable to electronic instruments without keyboards, such as rhythm or rhythm sound sources
It is. (13) After the decoding circuit, touch data TD and key code
(Digital) filter whose filter characteristics change according to KC etc.
Filter to control the tone by passing this filter.
You may control. (14) Method of forming address data AD of data memory 35
May be a method other than the above embodiment. For example, F number
(Frequency number) accumulating method, sequentially decreasing from ALL “1”
To form address data by calculating
Using the set type address counter 40,
How to Preset Dresses, (Micro)
Any method of calculating addresses using a program
Method may be used. (15) In the above embodiment, the repetition unit RPT is
Reads repeatedly to form a musical tone
Records the entire musical tone waveform from the start to the end in the memory.
Remember, do n’t read repeatedly
Is also good. (16) In the above embodiment, linear prediction is performed for each frame.
Coefficient a1, ATwoIs changed, but for all frames
Linear prediction coefficient a1, ATwoMay be the same value. This
In the case of, of course, there is no need to divide the frames. (17) The frame switching method is not limited to the method of the above embodiment.
No. For example, using the upper bits of the address data AD
Frame switching may be performed. (18) In the above embodiment, the frame switching position and
Although the return section settings are independent,
Both may be synchronized by performing frame switching or the like. "The invention's effect"   As described above, according to the present invention, the tone waveform
The waveform data indicating each instantaneous value is subjected to a second-order linear prediction operation and
Data is compressed by quantization using the differential quantization method,
The data obtained by this data compression is stored in memory
Read and decode the stored data,
A tone signal is generated based on the decoded waveform data.
Memory capacity is significantly larger than the conventional one.
And minimize the reproduction error
There is an effect that can be.

【図面の簡単な説明】 第1図はこの発明の一実施例の構成を示すブロック図、
第2図は同実施例を電子楽器に用いた場合の構成例を示
すブロック図、第3図は楽音波形の一例を示す図、第4
図は係数kと量子化差分コードCnとの関係を示す図、第
5図は第1図におけるエンコーダ18のデータ圧縮の原理
を説明するための図、第6図はデータen,量子化幅デー
タΔn,量子化差分コードCnの関係を示す図、第7図は第
1図における線形予測演算回路11およびADPCM演算回路1
6の他の構成例を示すブロック図、第8図は第2図にお
ける復号回路63の詳細例を示すブロック図、第9図はエ
ンベロープ波形の例を示す波形図、第10図はアタック部
ATCと繰返部RPTの接続を説明するためのタイミング図、
第11図は第1回目の繰返部RPTの最後と、第2回目の繰
返部RPTの最初との接続を説明するためのタイミング
図、第12図(イ)〜(ニ)は各々第2図に示す実施例の
実験結果を示す図、第13図はADPCM復号回路24Aの他の構
成例を示すブロック図、第14図は線形予測復号回路29A
の他の構成例を示すブロック図である。 1……データ圧縮回路、2,35……データメモリ、3,63…
…復号回路、11……線形予測演算回路、16……ADPCM演
算回路。
BRIEF DESCRIPTION OF THE DRAWINGS FIG. 1 is a block diagram showing a configuration of one embodiment of the present invention;
FIG. 2 is a block diagram showing a configuration example when the embodiment is used in an electronic musical instrument, FIG. 3 is a diagram showing an example of a musical tone waveform,
5 shows the relationship between the coefficient k and the quantization difference code Cn. FIG. 5 is a diagram for explaining the principle of data compression by the encoder 18 in FIG. 1, and FIG. 6 is data en, quantization width data. FIG. 7 shows the relationship between Δn and the quantized difference code Cn. FIG. 7 shows the linear prediction operation circuit 11 and the ADPCM operation circuit 1
6 is a block diagram showing another configuration example, FIG. 8 is a block diagram showing a detailed example of the decoding circuit 63 in FIG. 2, FIG. 9 is a waveform diagram showing an example of an envelope waveform, and FIG.
Timing diagram for explaining the connection between the ATC and the repetition unit RPT,
FIG. 11 is a timing chart for explaining the connection between the end of the first repetition section RPT and the beginning of the second repetition section RPT. FIGS. FIG. 13 is a diagram showing experimental results of the embodiment shown in FIG. 2, FIG. 13 is a block diagram showing another configuration example of the ADPCM decoding circuit 24A, and FIG. 14 is a linear prediction decoding circuit 29A.
FIG. 13 is a block diagram showing another example of the configuration. 1 ... Data compression circuit, 2,35 ... Data memory, 3,63 ...
... Decoding circuit, 11 ... Linear prediction operation circuit, 16 ... ADPCM operation circuit.

Claims (1)

(57)【特許請求の範囲】 1.楽音波形の各瞬時値を示す波形データを2次の線形
予測演算および差分量子化方式による量子化によってデ
ータ圧縮し、このデータ圧縮によって得られたデータを
記憶させた記憶手段と、 波形の読み出しを指示する指示手段と、 該指示手段の指示に応じて、前記記憶手段内のデータを
読み出し、2次の線形予測演算および差分量子化方式に
基づく復号演算によって復号する復号手段と、 を具備し、前記復号手段によって復号された波形データ
に基づいて楽音信号を発生することを特徴とする楽音信
号発生装置。
(57) [Claims] A storage means for compressing the waveform data indicating each instantaneous value of the musical tone waveform by a second-order linear prediction operation and quantization by a differential quantization method, and storing the data obtained by the data compression; Instructing means for instructing, and decoding means for reading data in the storage means in accordance with the instruction of the instructing means, and decoding by a decoding operation based on a secondary linear prediction operation and a differential quantization scheme, A tone signal generating apparatus for generating a tone signal based on waveform data decoded by the decoding means.
JP61086835A 1986-04-15 1986-04-15 Music signal generator Expired - Fee Related JP2716088B2 (en)

Priority Applications (9)

Application Number Priority Date Filing Date Title
JP61086835A JP2716088B2 (en) 1986-04-15 1986-04-15 Music signal generator
US07/037,510 US4916996A (en) 1986-04-15 1987-04-13 Musical tone generating apparatus with reduced data storage requirements
DE3750828T DE3750828T2 (en) 1986-04-15 1987-04-14 Device for generating musical tones.
DE3752090T DE3752090T2 (en) 1986-04-15 1987-04-14 Device for generating musical tones
EP93100419A EP0548046B1 (en) 1986-04-15 1987-04-14 Musical tone generating apparatus
EP93100418A EP0548045B1 (en) 1986-04-15 1987-04-14 Musical tone generating apparatus
EP87105545A EP0241922B1 (en) 1986-04-15 1987-04-14 Musical tone generating apparatus
DE3752098T DE3752098T2 (en) 1986-04-15 1987-04-14 Device for generating musical tones
HK98100755A HK1002146A1 (en) 1986-04-15 1998-01-31 Musical tone generating apparatus

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP61086835A JP2716088B2 (en) 1986-04-15 1986-04-15 Music signal generator

Publications (2)

Publication Number Publication Date
JPS62242996A JPS62242996A (en) 1987-10-23
JP2716088B2 true JP2716088B2 (en) 1998-02-18

Family

ID=13897867

Family Applications (1)

Application Number Title Priority Date Filing Date
JP61086835A Expired - Fee Related JP2716088B2 (en) 1986-04-15 1986-04-15 Music signal generator

Country Status (1)

Country Link
JP (1) JP2716088B2 (en)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07219552A (en) * 1994-12-28 1995-08-18 Casio Comput Co Ltd Musical sound waveform generation device and musical sound waveform compression device
JP4625933B2 (en) * 2006-09-01 2011-02-02 独立行政法人産業技術総合研究所 Sound analyzer and program
JP5104522B2 (en) * 2008-04-30 2012-12-19 カシオ計算機株式会社 Waveform generator and waveform generation processing program

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
古井貞煕「ディジタル音声処理」昭和60年9月25日 東海大学出版会発行第72〜73頁

Also Published As

Publication number Publication date
JPS62242996A (en) 1987-10-23

Similar Documents

Publication Publication Date Title
EP0548046B1 (en) Musical tone generating apparatus
JPH06124091A (en) Waveform data reader
JP2716088B2 (en) Music signal generator
EP1654725B1 (en) Dynamic control of processing load in a wavetable synthesizer
JPH0422519B2 (en)
JP2603922B2 (en) Music signal generator
JPH0776872B2 (en) Music signal generator
JPH0243199B2 (en)
JPH0422275B2 (en)
JPS61124994A (en) Musical sound signal generator
JP3138612B2 (en) Electronic musical instrument
JPS62242994A (en) Musical tone signal generator
JPH0525116B2 (en)
JP2790160B2 (en) Waveform generation device and waveform storage device
JPH0243196B2 (en)
JPS61248096A (en) Electronic musical instrument
JP2699886B2 (en) Music control information generator
JPH0799477B2 (en) Music signal generation method
JPH0560118B2 (en)
JP2897680B2 (en) Music signal generator
JPS6278599A (en) Musical tone signal generator
JP3257520B2 (en) Music signal generator
JPH042960B2 (en)
JPH0226237B2 (en)
JPS6195625A (en) Music signal generator

Legal Events

Date Code Title Description
LAPS Cancellation because of no payment of annual fees