JP2897377B2 - Waveform signal forming device - Google Patents
Waveform signal forming deviceInfo
- Publication number
- JP2897377B2 JP2897377B2 JP2230216A JP23021690A JP2897377B2 JP 2897377 B2 JP2897377 B2 JP 2897377B2 JP 2230216 A JP2230216 A JP 2230216A JP 23021690 A JP23021690 A JP 23021690A JP 2897377 B2 JP2897377 B2 JP 2897377B2
- Authority
- JP
- Japan
- Prior art keywords
- data
- waveform sample
- sample data
- waveform
- stored
- 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 - Lifetime
Links
Landscapes
- Electrophonic Musical Instruments (AREA)
Description
【産業上の利用分野】 本発明は、波形サンプルデータに基づいて楽音波形を
再現するときにより少ない記憶容量で楽音波形を再現す
ることが可能な波形信号形成装置に関する。BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a waveform signal forming apparatus capable of reproducing a musical tone waveform with a smaller storage capacity when reproducing a musical tone waveform based on waveform sample data.
電子楽器などにおいては、サンプリングした自然楽器
の楽音を波形サンプルデータとしてメモリに記憶してお
き、演奏時に同データをメモリから読み出して再現する
PCM方式のものも利用されている。かかるPCM方式におい
ては、波形サンプルデータを記憶する容量を低減させる
ため、初期データと差分データを記憶して波形サンプル
データを再現する線形予測法が利用されている。 線形予測法によって波形サンプルデータを再現する装
置としては、従来、特開昭61−90198号公報に示すもの
が知られている。同装置では、直列に接続された複数の
遅延回路により、順次入力される波形サンプルデータを
遅延しつつ記憶し、乗算回路によって各遅延回路に記憶
されている波形サンプルデータに所定の線形予測係数を
乗算するとともに、順次入力される差分データにも所定
の線形予測係数を乗算し、加算回路によって各乗算結果
を合算して圧縮された波形サンプルデータを再現してい
る。 一方、同様に波形サンプルデータを記憶する容量を低
減させる方法として、サンプリングタイミング間の波形
データを再現する線形補間法も利用されており、このよ
うな線形補間法によって波形データを再現する装置とし
ては、従来、特公昭59−17838号公報に示すものが知ら
れている。 同装置では、波形メモリより順次波形サンプルデータ
を読み出しつつ同読み出した複数の波形サンプルデータ
に所定の線形補間係数を乗算し、各乗算結果を加算して
所定の位相値に対応した波形データを再現している。In electronic musical instruments and the like, sampled musical tones of a natural musical instrument are stored in a memory as waveform sample data, and the data is read out from the memory and reproduced during performance.
PCM type is also used. In the PCM method, a linear prediction method of storing initial data and differential data and reproducing waveform sample data is used in order to reduce a capacity for storing waveform sample data. As an apparatus for reproducing waveform sample data by a linear prediction method, an apparatus disclosed in Japanese Patent Application Laid-Open No. 61-90198 is conventionally known. In this apparatus, a plurality of serially connected delay circuits store sequentially input waveform sample data while delaying them, and a predetermined linear prediction coefficient is added to the waveform sample data stored in each delay circuit by a multiplication circuit. In addition to the multiplication, the sequentially input difference data is also multiplied by a predetermined linear prediction coefficient, and the multiplication results are added together by an adder circuit to reproduce the compressed waveform sample data. On the other hand, as a method for similarly reducing the capacity for storing waveform sample data, a linear interpolation method for reproducing waveform data between sampling timings is also used, and as an apparatus for reproducing waveform data by such a linear interpolation method, Conventionally, the one disclosed in JP-B-59-17838 is known. In this device, while reading waveform sample data sequentially from the waveform memory, multiply the read multiple waveform sample data by a predetermined linear interpolation coefficient, add each multiplication result, and reproduce the waveform data corresponding to the predetermined phase value doing.
しかるに、従来の装置にあっては、線形予測法を用い
て波形サンプルデータを圧縮するとともに、線形補間法
を用いてさらに記憶領域を低減せしめようとすると、線
形予測法に対応した装置内で複数の波形サンプルデータ
を記憶するとともに、線形補間法に対応した装置内でも
複数の波形サンプルデータを記憶しておかなければなら
ず、別個に同様の記憶領域を必要として記憶領域となる
ハードウェアの有効化をはかることができない。 本発明は上記問題に対処するためになされたもので、
その目的は、線形予測法と線形補間法とを用いて波形メ
モリの容量を低減せしめるときに、記憶領域の有効化を
はかってハードウェアの増大を防止せしめることが可能
な波形信号形成装置を提供しようとするものである。However, in the conventional apparatus, in order to compress the waveform sample data using the linear prediction method and to further reduce the storage area using the linear interpolation method, a plurality of apparatuses are required in the apparatus supporting the linear prediction method. In addition to storing waveform sample data, a plurality of waveform sample data must be stored even in a device that supports the linear interpolation method. Can not be measured. The present invention has been made to address the above problems,
It is an object of the present invention to provide a waveform signal forming apparatus capable of preventing an increase in hardware by activating a storage area when reducing the capacity of a waveform memory using a linear prediction method and a linear interpolation method. What you want to do.
上記目的を達成するために、本発明の構成上の特徴
は、所定の演算によって波形サンプルデータを圧縮した
差分データを記憶しておいて、同記憶しておいた差分デ
ータを用いて圧縮前の波形サンプルデータを順次再現す
る波形信号形成装置において、差分データを記憶した差
分データメモリと、差分データに基づいて復元した複数
の波形サンプルデータを時系列的に記憶するための波形
サンプルデータ記憶手段と、発生される楽音の音高に対
応した位相増分値を所定のタイミング毎に累算する累算
手段と、累算手段によって累算された累算値の上位のデ
ータを用いて差分データメモリに対するアドレスを生成
し、同生成されたアドレスに従って同差分データメモリ
に記憶されている差分データを順次読出す読出し制御手
段と、読出し制御手段によって読出された差分データと
波形サンプルデータ記憶手段に記憶されている複数の波
形サンプルデータとを用いて所定の演算により圧縮前の
波形サンプルデータを復元するとともに同復元した波形
サンプルデータを波形サンプルデータ記憶手段に順次記
憶させる復元手段と、波形サンプルデータ記憶手段に記
憶されている複数の波形サンプルデータと累算手段によ
って累算された累算値の下位のデータとを用いて所定の
補間演算により所定の位相値に対応した波形サンプルデ
ータを導出する補間手段とを備えたことにある。In order to achieve the above object, a structural feature of the present invention is that difference data obtained by compressing waveform sample data by a predetermined operation is stored, and the difference data before compression is stored using the stored difference data. In a waveform signal forming apparatus for sequentially reproducing waveform sample data, a difference data memory storing difference data, and a waveform sample data storage means for storing a plurality of waveform sample data restored based on the difference data in time series An accumulating means for accumulating a phase increment value corresponding to a pitch of a musical tone to be generated at a predetermined timing, and a differential data memory by using higher-order data of the accumulated value accumulated by the accumulating means. Read control means for generating an address and sequentially reading the differential data stored in the differential data memory according to the generated address; and read control means. Therefore, the pre-compression waveform sample data is restored by a predetermined operation using the read difference data and the plurality of waveform sample data stored in the waveform sample data storage means, and the restored waveform sample data is converted into the waveform sample data. A predetermined interpolation operation is performed by using a restoration means for sequentially storing the data in the storage means, and a plurality of waveform sample data stored in the waveform sample data storage means and data lower than the accumulated value accumulated by the accumulation means. And interpolating means for deriving waveform sample data corresponding to the predetermined phase value.
上記のように構成した本発明においては、累算手段に
発生される楽音の音高に対応した位相増分値が与えられ
ると、同累算手段は前記位相増分値を所定のタイミング
毎に累算し、読出し制御手段は、前記累算された累算値
の上位のデータを用いて差分データメモリに対するアド
レスを生成し、同生成されたアドレスに従って同差分デ
ータメモリに記憶されている差分データを順次読出す。
そして、復元手段は、前記読出された差分データと波形
サンプルデータ記憶手段に記憶されている複数の波形サ
ンプルデータとを用いて所定の演算により圧縮前の波形
サンプルデータを復元し、同復元した波形サンプルデー
タを波形サンプルデータ記憶手段に順次記憶させる。こ
れにより、波形サンプルデータ記憶手段には、差分デー
タメモリに記憶されていた差分データに基づいて復元さ
れた複数の波形サンプルデータが時系列的に記憶され
る。一方、補間手段は、波形サンプルデータ記憶手段に
記憶されている複数の波形サンプルデータと、前記累算
手段によって累算された累算値の下位のデータとを用い
て所定の補間演算により、所定の位相値に対応した波形
サンプルデータを導出する。 このように、本発明によれば、複数の時系列的な波形
サンプルデータ及び同複数の波形サンプルデータを記憶
するための波形サンプルデータ記憶手段が、差分データ
に基づいて波形サンプルデータを復元するためと、波形
サンプルデータを補間するための両方の演算に共通に利
用される。したがって、ハードウェアの構成を省略する
ことができるとともに、両演算によって最終的な波形サ
ンプルデータが再現されるまでの時間を短縮することが
できる。In the present invention configured as described above, when a phase increment value corresponding to the pitch of a musical tone generated is given to the accumulating means, the accumulating means accumulates the phase increment value at every predetermined timing. Then, the read control means generates an address for the difference data memory using the higher-order data of the accumulated value, and sequentially reads the difference data stored in the difference data memory in accordance with the generated address. Read.
The restoration means restores the pre-compressed waveform sample data by a predetermined operation using the read difference data and the plurality of waveform sample data stored in the waveform sample data storage means. The sample data is sequentially stored in the waveform sample data storage means. Thus, the waveform sample data storage unit stores a plurality of waveform sample data restored on the basis of the difference data stored in the difference data memory in a time-series manner. On the other hand, the interpolation means performs a predetermined interpolation operation using a plurality of waveform sample data stored in the waveform sample data storage means and lower-order data of the accumulated value accumulated by the accumulation means. Derive waveform sample data corresponding to the phase value of As described above, according to the present invention, the waveform sample data storage means for storing the plurality of time-series waveform sample data and the plurality of waveform sample data restores the waveform sample data based on the difference data. And are commonly used for both calculations for interpolating waveform sample data. Therefore, the hardware configuration can be omitted, and the time until the final waveform sample data is reproduced by both operations can be reduced.
【実施例】 以下、本発明の一実施例を図面を用いて説明すると、
第1図は本発明に係る波形信号形成装置を備えるととも
に複数の発音チャンネルより同時に複数の楽音を発音す
ることが可能な電子楽器をブロック図により示してい
る。 この電子楽器は、鍵盤の各鍵に対応して設けられた複
数の鍵スイッチを備えて構成される鍵盤部10と、音色等
を選択する複数の音色等選択スイッチなどからなる操作
パネル20とを備えており、鍵盤部10と操作パネル20は制
御信号発生部30に接続されている。 制御信号発生部30は鍵盤部10における各鍵の押鍵操作
と操作パネル20における音色等選択スイッチの操作状況
を検出するものであり、押鍵された鍵に対応するキーコ
ード信号KC、押鍵速度または押鍵圧を表すタッチ信号T
D、押鍵状態を表すキーオン信号KON、選択された音色を
表す音色信号TCなどを出力する。 キーオン信号KONはタイミング信号発生回路40に入力
されており、同タイミング信号発生回路40は、第2図に
示すように、各押鍵に対応する楽音を発生するため、押
鍵タイミングを表すキーオンパルス信号KONPと、キーオ
フされたタイミングを表すキーオフパルス信号KOFPと、
波形データの演算タイミングを表すクロック信号CLKな
どの各種タイミング信号を発生する。 キーコード信号KCは、周波数ナンバ発生回路(以下、
Fナンバ発生回路という。)50とパラメータデータ発生
回路60とに入力されており、Fナンバ発生回路50はキー
コード信号KCに基づいて押鍵音高に対応した位相増分値
FNを出力する。同位相増分値FNは累算器70に入力され、
同累算器70はタイミング信号発生回路40から押鍵タイミ
ングを表すキーオンパルス信号KONPが入力されるとそれ
までの累算値をクリアし、その後、同じくタイミング信
号発生回路40が出力するクロック信号CLKの入力タイミ
ングごとに位相増分値FNを累算する。位相増分値FNは
「1」未満の数値であり、累算器70は位相増分値FNを順
次累算して、通常時は小数位データFRACを線形補間係数
発生回路(以下、FIR係数発生回路という。)90に出力
し、累算値が「1」の位にカウントアップされると読み
出し制御回路80のノートクロックパルスNCLを出力す
る。 読み出し制御回路80は、差分データメモリ100の読み
出しアドレスADを指定するものであり、パラメータデー
タ発生回路60が出力するスタートアドレスSAをノートク
ロックパルスNCLの入力タイミングごとにカウントアッ
プして読み出しアドレスADとする。ただし、同ノートク
ロックパルスNCLの入力回数が所定値を越えた場合には
スタートアドレスSAより所定アドレス後の番地SA1より
再度カウントアップして読み出しアドレスADとする。本
実施例では発音直後のアタック部に対応した楽音波形を
一度だけ再生した後、これに続くサステイン部の楽音波
形を繰り返し再生することにより、差分データメモリ10
0に記憶するデータ量を低減している。 スタートアドレスSAは差分データメモリ100において
音色ごとに対応して記憶されているデータ群の開始アド
レスであり、パラメータデータ発生回路60は制御信号発
生部30より入力される音色信号TCに応じて、選択された
音色に対応するスタートアドレスSAを出力する。 本実施例では、波形データを再現するために線形予測
法により波形サンプルデータを圧縮しており、かかるデ
ータ圧縮に関する差分データを差分データメモリ100に
記憶している。 線形予測法については公知であるので、詳しい説明は
省略するが、本実施例においてサンプリングタイミング
nにおける波形サンプルデータをF(n)で表すととも
に、波形サンプルデータF(n−4),F(n−3),F
(n−2),F(n−1)に基づく波形サンプルデータF
(n)を予測するための差分データをD(n)で表し、
かつ、線形予測係数(以下、LPC係数という。)をx1〜x
5とすると同差分データD(n)は、 D(n)=[F(n)−{x4・F(n−4)+x3・F(n−3)+ x2・F(n−2)+x1・F(n−1)}]/x5 で表され、予測される波形サンプルデータF(n)は、 F(n)=x4・F(n−4)+x3・F(n−3)+ x2・F(n−2)+x1・F(n−1)+x5・D(n) で表される。なお、このLPC係数x1〜x5は、初期データ
を除いて差分データメモリ100の差分データ中に埋め込
まれており、読み出し制御回路80によって順次再生さ
れ、所定区間ごとに切り換えられて線形予測法による再
生に使用される。 具体的には、差分データの最上位ビットをLPC係数エ
リアとし、読み出し制御回路80が線形予測・補間回路11
0より差分データD0(n)を読み込むごとに最上位ビッ
トだけを別エリアに貯え、所定数ビットになったときに
LPC係数に変換する。また、このようにして最上位ビッ
トだけを除いたデータを差分データD(n)として線形
予測・補間回路110に出力する。 線形予測・補間回路110は、第3図に示すように、直
列接続されてノートクロックパルスNCLによって入力デ
ータを保持するとともに記憶データを出力するレジスタ
からなる遅延回路110a1〜110a4と、各遅延回路110a1〜1
10a4の出力に乗算係数x1〜x4を乗算する乗算器110b1〜1
10b4と、入力データに乗算係数x5を乗算する乗算器110b
5と、乗算器110b1〜b5の乗算結果を加算して加算結果を
遅延回路110a1に入力せしめる加算器110c1と、各遅延回
路110a1〜110a4の出力に乗算係数y1〜y4を乗算する乗算
器110b6〜110b9と、乗算器110b6〜110b9の乗算結果を加
算して出力データとする加算器110c2とから構成されて
いる。 この線形予測・補間回路110には、差分データメモリ1
00から読み出された差分データD(n)とともに読み出
し制御回路80の出力するLPC係数と、FIR係数発生回路90
の出力する線形補間係数(以下、FIR係数という。)
と、パラメータデータ発生回路60の出力するLPC係数初
期データx1(0)〜x5(0)図示しないセレクタにより
読み出し制御回路80の出力するLPC係数と択一的に入力
されている。)とが入力されており、線形予測法による
圧縮データの復元と同復元された波形サンプルデータに
もとづく線形補間を行なう。なお、差分データD(n)
は乗算器110b5に入力され、LPC係数は各乗算器110b1〜1
10b5における乗算係数として入力され、FIR係数は各乗
算器110b6〜110b9における乗算係数として入力されてい
る。 FIR係数を発生するFIR係数発生回路90は、累算器70よ
り出力される累算値の小数位データFRAC(0≦FRAC≦
1)に基づいて波形サンプルデータF(I),F(I+
1),F(I+2),F(I+3)から線形補間によって波
形サンプルデータF(I+1+FRAC)を演算するもので
あり、本実施例では3次補間法にて同演算を行なうため
に各演算係数y1〜y4として、 を演算して出力する。 線形予測・補間回路110によって得られた波形データ
は乗算器120に入力されており、同乗算器120は同波形デ
ータとエンベロープ発生器130の出力するエンベロープ
データEDとを乗算して楽音波形データとしてミキサ140
に出力する。 ここでエンベロープ発生器130にはパラメータデータ
発生回路60がタッチ信号TDに基づいて出力するエンベロ
ープ設定データEDT(アタックレベルALとアタックレー
トARとディケイレベルDLとディケイレートDRとを表
す。)が入力されているとともに、タイミング信号発生
回路40がキーオン信号KONに基づいて発生するキーオン
パルス信号KONPとキーオフパルス信号KOFPとが入力され
ており、キーオンパルス信号KONPの入力タイミングより
楽音波形のアタック部とサステイン部とを表すエンベロ
ープデータEDを乗算器120に出力するとともに、キーオ
フパルス信号KOFPの入力タイミングより楽音波形のリリ
ース部を表すエンベロープデータEDを乗算器120に出力
する。 ミキサ140は乗算器120の出力である各チャンネルの楽
音波形データを合算してD/A変換器150に出力し、同D/A
変換器150はディジタル値の楽音波形データをアナログ
値に変換して変換後の楽音波形信号をサウンドシステム
160に出力する。 サウンドシステム160はアンプやスピーカなどからな
り、入力される楽音波形信号を増幅してスピーカより楽
音として再生する。 次に、上記のように構成した本実施例の動作を説明す
る。 演奏者が操作パネル20上の図示しない電源スイッチを
投入し、同操作パネル20にて音色等選択スイッチによっ
て楽器音を選択した後、鍵盤部10における鍵盤によって
演奏を開始したとする。 制御信号発生部30は、電源スイッチの投入後、操作パ
ネル20における各種スイッチ類の操作の有無を検出して
おり、上記演奏者による音色等選択スイッチによる楽器
音の選択操作を検出して当該選択操作を表す音色信号TC
をパラメータデータ発生回路60に出力する。一方、演奏
者が鍵盤部10におけるいずれかの鍵を押鍵して演奏を開
始すると、制御信号発生部30は発音するチャンネルを決
定して所定の時分割タイミングで押鍵された鍵を表すキ
ーコード信号KCをFナンバ発生回路50とパラメータデー
タ発生回路60に出力するとともに、押鍵中であることを
表すキーオン信号KONをタイミング信号発生回路40に出
力する。 Fナンバ発生回路50は上記入力されたキーコード信号
KCに対応する位相増分値FNを累算器70に出力し、累算器
70はタイミング信号発生回路40から出力されるキーオン
パルス信号KONPの入力時に当該発音チャンネルにおける
それまでの累算値をクリアし、タイミング信号発生回路
40が出力する所定クロック信号CLKの入力タイミング時
に各発音チャンネルごとに位相増分値FNを累算する。 パラメータデータ発生回路60はキーオンパルス信号KO
NPが入力されると発音チャンネルと音色に対応してスタ
ートアドレスSAを読み出し制御回路80に出力するととも
に、同音色に対応するLPC係数初期データx1(0)〜x5
(0)を線形予測・補間回路110に出力する。 線形予測・補間回路110では、キーオンパルス信号KON
Pの入力時、図示しないセレクタによってパラメータデ
ータ発生回路60の出力するLPC係数初期データx1(0)
〜x5(0)を選択し、以後は所定区間ごとに差分データ
から取り出されたLPC係数x1〜x5を選択する。すなわ
ち、読み出し制御回路80からLPC係数x1〜x5が出力され
ていないときはLPC係数初期データx1(0)〜x5(0)
を選択し、読み出し制御回路80からLPC係数x1〜x5が出
力されたときは同LPC係数x1〜x5を選択する。 キーオンパルス信号KONPが出力されると、差分データ
メモリ100に対する読み出しアドレスADとしてスタート
アドレスSAを出力し、差分データメモリ100は同スター
トアドレスに記憶された最初の差分データD(0)を出
力する。従って、乗算器110b5にてLPC係数初期データx5
(0)を差分データD(0)に乗算し、加算器110c1が
乗算結果(この場合、乗算器110b1〜110b4の出力は
「0」である。)を加算して波形サンプルデータF
(0)を出力する。かかる演算はクロック信号CLKが出
力されるごとに行なわれるが、累算器70よりノートクロ
ックパルスNCLが出力されるまでは遅延回路110a1〜110a
4における記憶データが変更されないので、波形サンプ
ルデータF(0)が繰り返し演算されることになる。 一方、累算器70は、キーオンパルス信号KONPが出力さ
れると、クロック信号CLKの入力タイミングごと位相増
分値FNを累算し、小数位データFRACをFIR係数発生回路9
0に出力する。 小数位データFRACがFIR係数発生回路90に入力される
と、同FIR係数発生回路90は上述した演算式に基づいてF
IR係数y1〜y4を線形予測・補間回路110に出力する。従
って、同FIR係数y1〜y4が入力される線形予測・補間回
路110では乗算器110b6〜b9が各係数y1〜y4を遅延回路11
0a1〜110a4の出力値に乗算し、加算器110c2が同乗算結
果を加算して各時点における波形データを補間演算によ
って求める。 同波形データは乗算器120に入力され、同乗算器120が
エンベロープ発生器130の出力するエンベロープデータ
と乗算する。このエンベロープデータは、パラメータデ
ータ発生回路60がタッチ信号TDに応じて出力するエンベ
ロープ設定データEDTに基づいてエンベロープ発生器130
がキーオンパルス信号KONPの入力時より発生しており、
押鍵直後のアタック部と、同アタック部に続く比較的安
定したサステイン部と、離鍵後のリリース部とから構成
されて、波形データに所定のエンベロープを付与する。 一方、累算器70における累算値が「1」の位にカウン
トアップされると、同累算器70はノートクロックパルス
NCLを出力する。これにより読み出し制御回路80が出力
する読み出しアドレスADが「1」だけ加算され、差分デ
ータメモリ100からは次なるアドレスに記憶された差分
データが線形予測・補間回路110に入力される。線形予
測・補間回路110ではノートクロックパルスNCLが出力さ
れた時点で加算器110c1より出力されていた波形サンプ
ルデータF(0)が遅延回路110a1に取り込まれる。そ
して、次のクロック信号CLKが出力されたときには波形
サンプルデータF(1)が演算され、以後、順次波形サ
ンプルデータが求められるとともに各遅延回路110a1〜a
3に記憶されていた波形サンプルデータが遅延回路110a2
〜a4に取り込まれる。 また、線形補間においても各遅延回路110a1〜110a4に
記憶された波形サンプルデータとFIR係数y1〜y4とにも
とづいて波形データが演算される。 このようにして順次波形データが演算され、乗算器12
0にてエンベロープを付与された後、ミキサ140にて各発
音チャンネルの波形データが加算される。そして、全発
音チャンネルの波形データが加算されるとD/A変換器150
に入力され、アナログ値に変換されてサウンドシステム
160より楽音が再生される。 なお、本実施例では、複数の遅延回路を複数のレジス
タで構成しているが、単一のシフトレジスタで構成する
こともできる。この場合、チャンネル数×遅延回路の段
数とすればよい。また、乗算器についても単一のものを
使用し、シフトレジスタの出力を選択して時分割で利用
する構成としてもよい。 FIR係数発生回路は演算によってFIR係数を求めるもの
で構成しているが、小数位データFRACをアドレス入力と
してFIR係数が参照されるメモリで構成することもでき
る。 線形予測法や線形補間法については上記実施例のもの
に限られず、他の演算法で求められる乗算係数とするこ
とも可能である。Hereinafter, an embodiment of the present invention will be described with reference to the drawings.
FIG. 1 is a block diagram showing an electronic musical instrument equipped with a waveform signal forming apparatus according to the present invention and capable of simultaneously producing a plurality of musical tones from a plurality of sounding channels. The electronic musical instrument includes a keyboard unit 10 including a plurality of key switches provided for each key of a keyboard, and an operation panel 20 including a plurality of tone color selection switches for selecting tone colors and the like. The keyboard 10 and the operation panel 20 are connected to a control signal generator 30. The control signal generation unit 30 detects a key depression operation of each key on the keyboard unit 10 and an operation state of a tone color etc. selection switch on the operation panel 20, and a key code signal KC corresponding to the depressed key, a key depression key Touch signal T representing speed or keypress pressure
D, a key-on signal KON indicating a key pressed state, a timbre signal TC indicating a selected timbre, and the like. The key-on signal KON is input to the timing signal generation circuit 40. The timing signal generation circuit 40 generates a tone corresponding to each key press as shown in FIG. A signal KONP, a key-off pulse signal KOFP indicating a key-off timing,
Various timing signals such as a clock signal CLK representing the operation timing of the waveform data are generated. The key code signal KC is generated by a frequency number generation circuit (hereinafter, referred to as
This is called an F number generation circuit. ) 50 and the parameter data generation circuit 60, and the F number generation circuit 50 generates a phase increment value corresponding to the key depression pitch based on the key code signal KC.
Outputs FN. The in-phase increment value FN is input to the accumulator 70,
The accumulator 70 clears the accumulated value up to that time when the key-on pulse signal KONP representing the key press timing is input from the timing signal generation circuit 40, and thereafter, the clock signal CLK also output by the timing signal generation circuit 40. The phase increment value FN is accumulated for each input timing of. The phase increment value FN is a numerical value less than "1", and the accumulator 70 sequentially accumulates the phase increment value FN, and normally converts the decimal place data FRAC to a linear interpolation coefficient generation circuit (hereinafter, referred to as an FIR coefficient generation circuit). ), And outputs the note clock pulse NCL of the read control circuit 80 when the accumulated value is counted up to the place of "1". The read control circuit 80 designates a read address AD of the differential data memory 100, counts up the start address SA output from the parameter data generation circuit 60 at each input timing of the note clock pulse NCL, and sets the read address AD. I do. However, when the number of times of input of the note clock pulse NCL exceeds a predetermined value, the read address AD is counted up again from an address SA1 which is a predetermined address after the start address SA. In the present embodiment, the tone waveform corresponding to the attack portion immediately after the tone is reproduced only once, and the tone waveform of the sustain portion subsequent to the tone waveform is repeatedly played back.
The amount of data stored in 0 is reduced. The start address SA is a start address of a data group stored corresponding to each tone in the difference data memory 100, and the parameter data generation circuit 60 is selected according to the tone color signal TC input from the control signal generation unit 30. The start address SA corresponding to the selected tone is output. In the present embodiment, waveform sample data is compressed by a linear prediction method in order to reproduce waveform data, and difference data relating to such data compression is stored in the difference data memory 100. Since the linear prediction method is publicly known, the detailed description is omitted. In this embodiment, the waveform sample data at the sampling timing n is represented by F (n), and the waveform sample data F (n−4), F (n) -3), F
(N-2), waveform sample data F based on F (n-1)
D (n) represents difference data for predicting (n),
In addition, linear prediction coefficients (hereinafter, referred to as LPC coefficients) are x1 to x
Assuming that 5, the difference data D (n) is D (n) = [F (n) − {x4 · F (n−4) + x3 · F (n−3) + x2 · F (n−2) + x1 F (n-1)}] / x5, and the predicted waveform sample data F (n) is: F (n) = x4.F (n-4) + x3.F (n-3) + x2 F (n-2) + x1F (n-1) + x5D (n) The LPC coefficients x1 to x5 are embedded in the difference data of the difference data memory 100 except for the initial data, and are sequentially reproduced by the read control circuit 80, and are switched every predetermined interval to be reproduced by the linear prediction method. Used for Specifically, the most significant bit of the difference data is used as an LPC coefficient area, and the read control circuit 80
Each time the difference data D0 (n) is read from 0, only the most significant bit is stored in a separate area.
Convert to LPC coefficient. Further, the data excluding only the most significant bit is output to the linear prediction / interpolation circuit 110 as difference data D (n). As shown in FIG. 3, the linear prediction / interpolation circuit 110 includes delay circuits 110a1 to 110a4, which are connected in series and hold input data by a note clock pulse NCL and output stored data, and each delay circuit 110a1. ~ 1
Multipliers 110b1-1 to multiply the output of 10a4 by multiplication coefficients x1 to x4
10b4 and a multiplier 110b that multiplies input data by a multiplication coefficient x5
5, an adder 110c1 for adding the multiplication results of the multipliers 110b1 to b5 to input the addition result to the delay circuit 110a1, and a multiplier 110b6 to multiply the output of each delay circuit 110a1 to 110a4 by a multiplication coefficient y1 to y4. 110b9, and an adder 110c2 that adds the multiplication results of the multipliers 110b6 to 110b9 and outputs the added data. The linear prediction / interpolation circuit 110 includes a difference data memory 1
The LPC coefficient output from the read control circuit 80 together with the difference data D (n) read from the 00 and the FIR coefficient generation circuit 90
Output linear interpolation coefficient (hereinafter referred to as FIR coefficient)
And LPC coefficient initial data x1 (0) to x5 (0) output from the parameter data generation circuit 60, and are selectively input to the LPC coefficient output from the read control circuit 80 by a selector (not shown). ) Is input, and the compressed data is restored by the linear prediction method and linear interpolation is performed based on the restored waveform sample data. Note that the difference data D (n)
Is input to the multiplier 110b5, and the LPC coefficient is
The FIR coefficient is input as a multiplication coefficient in 10b5, and the FIR coefficient is input as a multiplication coefficient in each of the multipliers 110b6 to 110b9. The FIR coefficient generating circuit 90 for generating the FIR coefficient includes a decimal place data FRAC (0 ≦ FRAC ≦
1), the waveform sample data F (I), F (I +
1), the waveform sample data F (I + 1 + FRAC) is calculated from F (I + 2), F (I + 3) by linear interpolation. In this embodiment, each calculation coefficient y1 is used to perform the same calculation by the cubic interpolation method. As ~ y4, Is calculated and output. The waveform data obtained by the linear prediction / interpolation circuit 110 is input to a multiplier 120, and the multiplier 120 multiplies the waveform data by the envelope data ED output from the envelope generator 130 to generate sound waveform data. Mixer 140
Output to Here, envelope setting data EDT (representing the attack level AL, the attack rate AR, the decay level DL, and the decay rate DR) output from the parameter data generation circuit 60 based on the touch signal TD is input to the envelope generator 130. At the same time, the key-on pulse signal KONP and the key-off pulse signal KOFP generated by the timing signal generation circuit 40 based on the key-on signal KON are input. Is output to the multiplier 120, and the envelope data ED indicating the release portion of the tone waveform is output to the multiplier 120 from the input timing of the key-off pulse signal KOFP. The mixer 140 sums the tone waveform data of each channel, which is the output of the multiplier 120, and outputs the sum to the D / A converter 150, where the D / A
The converter 150 converts the digital tone waveform data into an analog value and converts the converted tone waveform signal into a sound system.
Output to 160. The sound system 160 includes an amplifier, a speaker, and the like, amplifies an input musical sound waveform signal, and reproduces the musical sound signal from the speaker. Next, the operation of the present embodiment configured as described above will be described. It is assumed that a player turns on a power switch (not shown) on the operation panel 20 and selects a musical instrument sound by using a tone color etc. selection switch on the operation panel 20, and then starts playing on the keyboard of the keyboard unit 10. After turning on the power switch, the control signal generation unit 30 detects whether or not various switches are operated on the operation panel 20. Tone signal TC indicating operation
Is output to the parameter data generation circuit 60. On the other hand, when the player starts playing by pressing any key on the keyboard section 10, the control signal generating section 30 determines a channel to be sounded, and displays a key representing the key pressed at a predetermined time-division timing. The code signal KC is output to the F number generation circuit 50 and the parameter data generation circuit 60, and the key-on signal KON indicating that the key is being pressed is output to the timing signal generation circuit 40. The F-number generation circuit 50 receives the input key code signal
The phase increment value FN corresponding to KC is output to the accumulator 70, and the accumulator
When the key-on pulse signal KONP output from the timing signal generation circuit 40 is input, 70 clears the accumulated value up to that time in the sounding channel, and the timing signal generation circuit
The phase increment value FN is accumulated for each tone generation channel at the timing of inputting the predetermined clock signal CLK output by 40. The parameter data generation circuit 60 outputs the key-on pulse signal KO
When the NP is input, the start address SA is output to the read control circuit 80 corresponding to the tone channel and the tone color, and the LPC coefficient initial data x1 (0) to x5 corresponding to the tone color
(0) is output to the linear prediction / interpolation circuit 110. In the linear prediction / interpolation circuit 110, the key-on pulse signal KON
When P is input, LPC coefficient initial data x1 (0) output from the parameter data generation circuit 60 by a selector (not shown)
To x5 (0), and thereafter, select LPC coefficients x1 to x5 extracted from the difference data for each predetermined section. That is, when the LPC coefficients x1 to x5 are not output from the read control circuit 80, the LPC coefficient initial data x1 (0) to x5 (0)
Is selected, and when the LPC coefficients x1 to x5 are output from the read control circuit 80, the same LPC coefficients x1 to x5 are selected. When the key-on pulse signal KONP is output, the start address SA is output as the read address AD for the difference data memory 100, and the difference data memory 100 outputs the first difference data D (0) stored at the start address. Therefore, the LPC coefficient initial data x5 in the multiplier 110b5
(0) is multiplied by the difference data D (0), and the adder 110c1 adds the multiplication result (in this case, the outputs of the multipliers 110b1 to 110b4 are “0”), and the waveform sample data F is added.
(0) is output. This calculation is performed every time the clock signal CLK is output. However, until the note clock pulse NCL is output from the accumulator 70, the delay circuits 110a1 to 110a
Since the stored data in 4 is not changed, the waveform sample data F (0) is repeatedly calculated. On the other hand, when the key-on pulse signal KONP is output, the accumulator 70 accumulates the phase increment value FN at each input timing of the clock signal CLK, and outputs the decimal place data FRAC to the FIR coefficient generation circuit 9.
Output to 0. When the decimal place data FRAC is input to the FIR coefficient generation circuit 90, the FIR coefficient generation circuit 90
The IR coefficients y1 to y4 are output to the linear prediction / interpolation circuit 110. Therefore, in the linear prediction / interpolation circuit 110 to which the same FIR coefficients y1 to y4 are input, the multipliers 110b6 to b9 convert the respective coefficients y1 to y4 into the delay circuit 11
The output values of 0a1 to 110a4 are multiplied, and the adder 110c2 adds the multiplication results to obtain the waveform data at each time point by interpolation. The same waveform data is input to a multiplier 120, and the multiplier 120 multiplies the envelope data output by the envelope generator 130. This envelope data is generated by the envelope generator 130 based on the envelope setting data EDT output by the parameter data generation circuit 60 in response to the touch signal TD.
Is generated from the input of the key-on pulse signal KONP,
It comprises an attack portion immediately after a key is pressed, a relatively stable sustain portion following the attack portion, and a release portion after the key is released, and gives a predetermined envelope to the waveform data. On the other hand, when the accumulated value in the accumulator 70 is counted up to the place of “1”, the accumulator 70 outputs the note clock pulse.
Outputs NCL. As a result, the read address AD output from the read control circuit 80 is added by “1”, and the difference data stored at the next address is input from the difference data memory 100 to the linear prediction / interpolation circuit 110. In the linear prediction / interpolation circuit 110, the waveform sample data F (0) output from the adder 110c1 at the time when the note clock pulse NCL is output is taken into the delay circuit 110a1. Then, when the next clock signal CLK is output, the waveform sample data F (1) is calculated, and thereafter, the waveform sample data is sequentially obtained and each of the delay circuits 110a1 to 110a-a is calculated.
3 is stored in the delay circuit 110a2.
~ A4. Also in the linear interpolation, the waveform data is calculated based on the waveform sample data stored in each of the delay circuits 110a1 to 110a4 and the FIR coefficients y1 to y4. In this way, the waveform data is sequentially calculated, and the multiplier 12
After the envelope is given at 0, the waveform data of each sounding channel is added by the mixer 140. Then, when the waveform data of all the sounding channels is added, the D / A converter 150
Input to the sound system and converted to analog values
Music tone is reproduced from 160. In this embodiment, the plurality of delay circuits are constituted by a plurality of registers, but may be constituted by a single shift register. In this case, the number of channels may be multiplied by the number of stages of the delay circuit. Further, a single multiplier may be used, and the output of the shift register may be selected and used in a time division manner. The FIR coefficient generating circuit is configured to calculate the FIR coefficient by calculation, but may be configured by a memory in which the decimal place data FRAC is used as an address input and the FIR coefficient is referred to. The linear prediction method and the linear interpolation method are not limited to those in the above embodiment, but may be multiplication coefficients obtained by other arithmetic methods.
第1図は本発明の一実施例に係る波形信号形成装置を適
用した電子楽器のブロック図、第2図は同電子楽器にお
けるタイミング信号のタイミングチャート、第3図は線
形予測補間回路の構成を示す回路図である。 符号の説明 110a1〜110a4……遅延回路、110b1〜110b5……乗算器、
110c1……加算器、110b6〜110b9……乗算器、110c2……
加算器。FIG. 1 is a block diagram of an electronic musical instrument to which a waveform signal forming apparatus according to an embodiment of the present invention is applied, FIG. 2 is a timing chart of timing signals in the electronic musical instrument, and FIG. FIG. Description of symbols 110a1 to 110a4 ... delay circuit, 110b1 to 110b5 ... multiplier
110c1 ... Adder, 110b6 to 110b9 ... Multiplier, 110c2 ...
Adder.
Claims (1)
を記憶しておいて、同記憶しておいた差分データを用い
て圧縮前の波形サンプルデータを順次再現する波形信号
形成装置において、 差分データを記憶した差分データメモリと、 差分データに基づいて復元した複数の波形サンプルデー
タを時系列的に記憶するための波形サンプルデータ記憶
手段と、 発生される楽音の音高に対応した位相増分値を所定のタ
イミング毎に累算する累算手段と、 上記累算手段によって累算された累算値の上位のデータ
を用いて上記差分データメモリに対するアドレスを生成
し、同生成されたアドレスに従って同差分データメモリ
に記憶されている差分データを順次読出す読出し制御手
段と、 上記読出し制御手段によって読出された差分データと上
記波形サンプルデータ記憶手段に記憶されている複数の
波形サンプルデータとを用いて所定の演算により圧縮前
の波形サンプルデータを復元するとともに同復元した波
形サンプルデータを上記波形サンプルデータ記憶手段に
順次記憶させる復元手段と、 上記波形サンプルデータ記憶手段に記憶されている複数
の波形サンプルデータと上記累算手段によって累算され
た累算値の下位のデータとを用いて所定の補間演算によ
り所定の位相値に対応した波形サンプルデータを導出す
る補間手段と を備えたことを特徴とする波形信号形成装置。1. A waveform signal forming apparatus for storing difference data obtained by compressing waveform sample data, and sequentially reproducing the waveform sample data before compression using the stored difference data. A stored difference data memory; a waveform sample data storage means for storing a plurality of waveform sample data restored based on the difference data in time series; and a phase increment value corresponding to a pitch of a generated musical tone is determined. Accumulating means for accumulating at each timing of: generating an address for the differential data memory using data higher in the accumulated value accumulated by the accumulating means; and generating the same differential data according to the generated address. Read control means for sequentially reading the difference data stored in the memory; difference data read by the read control means; Using a plurality of waveform sample data stored in the pull data storage means to restore the pre-compressed waveform sample data by a predetermined calculation and sequentially store the restored waveform sample data in the waveform sample data storage means Means, a predetermined phase value by a predetermined interpolation operation using a plurality of waveform sample data stored in the waveform sample data storage means and data lower than the accumulated value accumulated by the accumulation means. A waveform signal forming apparatus comprising: an interpolation unit for deriving corresponding waveform sample data.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2230216A JP2897377B2 (en) | 1990-08-30 | 1990-08-30 | Waveform signal forming device |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2230216A JP2897377B2 (en) | 1990-08-30 | 1990-08-30 | Waveform signal forming device |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH04165397A JPH04165397A (en) | 1992-06-11 |
JP2897377B2 true JP2897377B2 (en) | 1999-05-31 |
Family
ID=16904385
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2230216A Expired - Lifetime JP2897377B2 (en) | 1990-08-30 | 1990-08-30 | Waveform signal forming device |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2897377B2 (en) |
-
1990
- 1990-08-30 JP JP2230216A patent/JP2897377B2/en not_active Expired - Lifetime
Also Published As
Publication number | Publication date |
---|---|
JPH04165397A (en) | 1992-06-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US5347478A (en) | Method of and device for compressing and reproducing waveform data | |
JP2722907B2 (en) | Waveform generator | |
US4984495A (en) | Musical tone signal generating apparatus | |
JP3404794B2 (en) | Waveform generator | |
US4781096A (en) | Musical tone generating apparatus | |
US5625158A (en) | Musical tone generating apparatus | |
JP3482685B2 (en) | Sound generator for electronic musical instruments | |
US5416264A (en) | Waveform-forming device having memory storing non-compressed/compressed waveform samples | |
JP2897377B2 (en) | Waveform signal forming device | |
JP3081530B2 (en) | Electronic musical instrument | |
JP2915452B2 (en) | Tone generator | |
JP2748784B2 (en) | Waveform generator | |
JPH0535277A (en) | Electronic nusical instrument | |
JPS62242996A (en) | Musical tone signal generator | |
JP2650636B2 (en) | Electronic musical instrument data generator | |
JP3138612B2 (en) | Electronic musical instrument | |
JP2790160B2 (en) | Waveform generation device and waveform storage device | |
JPH06342291A (en) | Electronic musical instrument | |
US5817964A (en) | Electronic musical instrument and method for storing a plurality of waveform sampling data at a single address | |
JPH0776872B2 (en) | Music signal generator | |
JP3651675B2 (en) | Electronic musical instruments | |
JPH0122632B2 (en) | ||
JPH0656553B2 (en) | Music signal generator | |
JPH06348274A (en) | Electronic musical instrument | |
JPS5926790A (en) | Combination musical tone generator for musical instrument |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
S531 | Written request for registration of change of domicile |
Free format text: JAPANESE INTERMEDIATE CODE: R313532 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090312 Year of fee payment: 10 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090312 Year of fee payment: 10 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100312 Year of fee payment: 11 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110312 Year of fee payment: 12 |
|
EXPY | Cancellation because of completion of term | ||
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110312 Year of fee payment: 12 |