JPH06186976A - Waveform data output device - Google Patents

Waveform data output device

Info

Publication number
JPH06186976A
JPH06186976A JP4342869A JP34286992A JPH06186976A JP H06186976 A JPH06186976 A JP H06186976A JP 4342869 A JP4342869 A JP 4342869A JP 34286992 A JP34286992 A JP 34286992A JP H06186976 A JPH06186976 A JP H06186976A
Authority
JP
Japan
Prior art keywords
address
data
waveform
value
waveform data
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP4342869A
Other languages
Japanese (ja)
Other versions
JP3252296B2 (en
Inventor
Kikuji Tanaka
喜久治 田中
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.)
Casio Computer Co Ltd
Original Assignee
Casio Computer Co Ltd
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 Casio Computer Co Ltd filed Critical Casio Computer Co Ltd
Priority to JP34286992A priority Critical patent/JP3252296B2/en
Publication of JPH06186976A publication Critical patent/JPH06186976A/en
Application granted granted Critical
Publication of JP3252296B2 publication Critical patent/JP3252296B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Abstract

PURPOSE:To calculate a waveform data output only by accessing difference waveform data, stored in a waveform memory in each sampling period, once for each tone. CONSTITUTION:One of difference waveform data DVL and DVH which are outputted from the waveform memory to 501 and 502 at the same time is selected in each sampling period on the basis of a data select bit as and outputted as the difference waveform data for interpolation arithmetic through 503 or 504. An integral value arithmetic part 505, on the other hand, calculates an integral value IV for interpolation arithmetic from the DVL or DVH, as, and data of a carry signal CC and an integral arithmetic value I1 outputted from an integral arithmetic memory 507 through 508 and outputs it through 509, and also calculates an integral arithmetic value update value Im and writes it in the integral arithmetic value memory 507 through 506. An external interpolation arithmetic part uses the DV and IV for interpolation arithmetic based upon address data for interpolation arithmetic to calculate the waveform data output.

Description

【発明の詳細な説明】Detailed Description of the Invention

【0001】[0001]

【産業上の利用分野】本発明は、波形メモリに記憶され
た差分波形データを読み出すことにより楽音信号等を生
成するための波形データを出力する波形データ出力装置
に関する。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a waveform data output device for outputting waveform data for generating a tone signal or the like by reading out differential waveform data stored in a waveform memory.

【0002】[0002]

【従来の技術】電子楽器などにおいて高い品質の楽音信
号などを生成できる方式として、DPCM(Differencia
l Pulse Code Modulation)方式又はADPCM ( Adapt
iveDifferencial Pulse Code Modulation) 方式と呼ば
れる波形読出し方式が知られている。
2. Description of the Related Art DPCM (Differencia) is used as a method for generating high quality musical tone signals in electronic musical instruments.
l Pulse Code Modulation) method or ADPCM (Adapt
A waveform readout method called iveDifferencial Pulse Code Modulation) is known.

【0003】これらの方式では、波形メモリに原波形デ
ータの差分波形データが記憶され、それらが、指定され
たピッチに対応する歩進幅で順次、積分(累算)されな
がら読み出される。この結果、波形メモリの記憶容量
を、原波形データが直接記憶される場合より削減するこ
とができる。
In these methods, the difference waveform data of the original waveform data is stored in the waveform memory, and these are read out while sequentially integrating (accumulating) with a step width corresponding to a designated pitch. As a result, the storage capacity of the waveform memory can be reduced as compared with the case where the original waveform data is directly stored.

【0004】図11に、DPCM方式の波形データ出力
装置の従来例の構成図を示す。音源LSI1101にお
いて、アドレスカウンタレジスタ1102には、特には
図示しないアドレスカウンタにおいて生成される実数ア
ドレスデータがセットされる。
FIG. 11 is a block diagram of a conventional example of a DPCM type waveform data output device. In the tone generator LSI 1101, the address counter register 1102 is set with real address data generated by an address counter (not shown).

【0005】また、キャリーレジスタ1103には、特
には図示しないアドレスカウンタにおける実数アドレス
データの生成時に発生し得る下位アドレスから上位アド
レスへの桁上がりを示すキャリー信号CCがセットされ
る。
In addition, carry register 1103 is set with carry signal CC indicating carry from a lower address to a higher address which can occur when real number address data is generated in an address counter (not shown).

【0006】セレクタ1105は、1サンプリング周期
内において、アドレスカウンタレジスタ1102にセッ
トされた実数アドレスデータのうち整数アドレス部であ
る上位アドレスADと、その上位アドレスADがデクリ
メンタ1104で−1されることにより得られるデクリ
メントアドレスAD−1を順次選択し、アドレスレジス
タ1106に順次セットする。また、アドレスレジスタ
1102にセットされた実数アドレスデータのうち小数
アドレス部である下位アドレスadは、補間演算111
1に出力される。更に、キャリーレジスタ1103にセ
ットされたキャリー信号CCは、後述する積分部111
0に出力される。
Within one sampling period, the selector 1105 decrements the upper address AD, which is the integer address part of the real number address data set in the address counter register 1102, and the upper address AD by -1 by the decrementer 1104. The obtained decrement address AD-1 is sequentially selected and sequentially set in the address register 1106. The lower address ad, which is the decimal address part of the real number address data set in the address register 1102, is the interpolation calculation 111
It is output to 1. Further, the carry signal CC set in the carry register 1103 is used as an integrator 111 to be described later.
It is output to 0.

【0007】この結果、アドレスバスAAから波形メモ
リ1107には、図12(a) に示されるように、1サン
プリング周期T内において、その前半で上位アドレスA
Dが出力され、その後半でデクリメントアドレスAD−
1が出力され、それぞれのアドレスに対応して波形メモ
リ1107からデータバスDDには、図12(b) に示さ
れるように、第1差分波形データDV1 及び第2差分波
形データDV2 が順次出力され、各データは、図12
(c) 及び図12(d) に示されるタイミングで、第1デー
タレジスタ1108及び第2データレジスタ1109に
セットされる。
As a result, from the address bus AA to the waveform memory 1107, as shown in FIG.
D is output, and the decrement address AD-
1 is output, and the first differential waveform data DV 1 and the second differential waveform data DV 2 are sequentially output from the waveform memory 1107 to the data bus DD corresponding to each address, as shown in FIG. 12 (b). The data output is shown in FIG.
It is set in the first data register 1108 and the second data register 1109 at the timings shown in (c) and FIG. 12 (d).

【0008】積分部1110では、キャリーレジスタ1
103から供給されるキャリー信号CC=0の場合、即
ち、1つ前のサンプリング周期で得られたアドレスカウ
ンタ値と現在のサンプリング周期で得られたアドレスカ
ウンタ値とで、その上位アドレスADに変化が無い場合
には、図12(e) に示されるタイミングで、積分部11
10内にある積分値メモリの値がそのまま積分値出力I
Vとして出力され、積分値メモリ自身の値は更新されず
に、第2データレジスタ1109にセットされた第2差
分波形データDV2 は無視される。一方、キャリーレジ
スタ1103から供給されるキャリー信号CC=1の場
合、即ち、1つ前のサンプリング周期で得られたアドレ
スカウンタ値と現在のサンプリング周期で得られたアド
レスカウンタ値とで、その上位アドレスADに変化があ
る場合には、積分部1110内にある積分値メモリの値
に第2データレジスタ1109にセットされた第2差分
波形データDV2 が累算され、その累算結果が図12
(e) に示されるタイミングで積分値出力IVとして出力
され、積分値メモリ自身の値も更新されて再記憶され
る。
In the integrating section 1110, the carry register 1
When the carry signal CC = 0 supplied from 103, that is, the address counter value obtained in the previous sampling period and the address counter value obtained in the current sampling period, the upper address AD changes. If there is not, the integration unit 11 is executed at the timing shown in FIG.
The value of the integrated value memory in 10 is the integrated value output I as it is.
The value of the integrated value memory itself is not updated, and the second differential waveform data DV 2 set in the second data register 1109 is ignored. On the other hand, when the carry signal CC = 1 supplied from the carry register 1103, that is, the address counter value obtained in the previous sampling period and the address counter value obtained in the current sampling period, If the AD is changed, the second differential waveform data DV 2 set in the second data register 1109 is accumulated in the value of the integrated value memory in the integrating section 1110, and the accumulated result is shown in FIG.
It is output as the integrated value output IV at the timing shown in (e), and the value of the integrated value memory itself is updated and stored again.

【0009】補間演算部1111は、第1データレジス
タ1108にセットされた第1差分波形データDV1
積分部1110から出力される積分値出力IV、及びア
ドレスカウンタレジスタ1102から入力されている下
位アドレスadとから、図12(f) に示される波形デー
タ出力Dout を算出する。
The interpolating operation section 1111 includes the first differential waveform data DV 1 set in the first data register 1108,
The waveform data output D out shown in FIG. 12F is calculated from the integrated value output IV output from the integrator 1110 and the lower address ad input from the address counter register 1102.

【0010】図13は、図11の補間演算部1111の
構成図である。補間演算部1111は、図8に示した補
間演算処理を実行するために、加算器1301及び乗算
器1302を備え、
FIG. 13 is a block diagram of the interpolation calculator 1111 of FIG. The interpolation calculation unit 1111 includes an adder 1301 and a multiplier 1302 to execute the interpolation calculation processing shown in FIG.

【0011】[0011]

【数1】Dout =IV+DV×ad で示される直線補間演算を実行することによって、波形
データ出力Dout を算出する。
## EQU1 ## The waveform data output D out is calculated by executing the linear interpolation calculation represented by D out = IV + DV × ad.

【0012】図14は、上述した構成を有するDPCM
方式の波形データ出力装置の従来例の原理説明図であ
る。図11の波形メモリ1107の各アドレスには、図
14(b) に示されるように、各アドレスの時点における
原波形データの振幅値とその次のアドレスの時点におけ
る原波形データの振幅値との差分値が、差分波形データ
DVとして格納されている。
FIG. 14 is a DPCM having the above-mentioned configuration.
It is a principle explanatory view of the conventional example of the waveform data output device of the method. At each address of the waveform memory 1107 in FIG. 11, as shown in FIG. 14B, the amplitude value of the original waveform data at the time of each address and the amplitude value of the original waveform data at the time of the next address are stored. The difference value is stored as the difference waveform data DV.

【0013】今、図14(a) に示されるように、あるサ
ンプリング周期において、上位アドレスAD=ADnow
=(波形メモリ1107上のアドレスn)、下位アドレ
スad=adnow 、積分値出力IV=IVnow =(波形
メモリ1107上のアドレスnに対応する原波形値)、
第1差分波形データDV1 =DVnow =(波形メモリ1
107上のアドレスnにおける差分波形データDVn
であるとし、キャリー信号CC=0とする。
Now, as shown in FIG. 14A, the upper address AD = AD now in a certain sampling period.
= (Address n on waveform memory 1107), lower address ad = ad now , integrated value output IV = IV now = (original waveform value corresponding to address n on waveform memory 1107),
First difference waveform data DV 1 = DV now = (waveform memory 1
Differential waveform data DV n at address n on 107)
And carry signal CC = 0.

【0014】この場合、図11の補間演算部1111
は、数1式より、 Dnow =IVnow +DVnow ×adnow で示される補間演算を実行することにより、波形データ
出力Dout =Dnow を算出する。
In this case, the interpolation calculation unit 1111 shown in FIG.
Calculates the waveform data output D out = D now by executing the interpolation calculation represented by D now = IV now + DV now × ad now from the equation (1).

【0015】ここで、図14(a) に示されるように、歩
進幅PD=PDnextとすれば、添え字now で示されるサ
ンプリング周期の次の添え字nextで示されるサンプリン
グ周期で、現在の実数アドレスデータに上記歩進幅が加
算される結果、上位アドレスADは、ADnext=(波形
メモリ1107上のアドレスn)でADnow から変化せ
ず、下位アドレスadのみがadnextに変化する。この
場合、上位アドレスADは変化しないためキャリー信号
CC=0である。従って、積分部1110における積分
値出力IVはIVnext=(波形メモリ1107上のアド
レスnに対応する原波形値)でIVnow から変化しな
い。
Here, as shown in FIG. 14 (a), if the step width PD = PD next , the sampling cycle shown by the subscript next next to the sampling cycle shown by the subscript now As a result of adding the step width to the real number address data of, the upper address AD does not change from AD now at AD next = (address n on the waveform memory 1107), and only the lower address ad changes to ad next . . In this case, since the upper address AD does not change, carry signal CC = 0. Therefore, the integrated value output IV in the integrator 1110 does not change from IV now with IV next = (original waveform value corresponding to address n on the waveform memory 1107).

【0016】この場合、図11の補間演算部1111
は、数1式より、 Dnext=IVnext+DVnext×adnext で示される補間演算を実行することにより、波形データ
出力Dout =Dnextを算出する。
In this case, the interpolation calculation unit 1111 of FIG.
Calculates the waveform data output D out = D next by executing the interpolation calculation represented by D next = IV next + DV next × ad next from the equation (1).

【0017】これに対して、図14(a) に示されるよう
に歩進幅PDがPDnextではなくPDnext′であるとす
るならば、添え字now で示されるサンプリング周期の次
の添え字next′で示されるサンプリング周期で、現在の
実数アドレスデータに上述の歩進幅が加算される結果、
上位アドレスADはADnext′=(波形メモリ1107
上のアドレスn+1)でADnow から+1進み、また、
下位アドレスadはadnext′に変化する。この場合
に、波形メモリ1107から読み出される第1差分波形
データDV1 はDVnext′=(波形メモリ1107上の
アドレスn+1における差分波形データDVn+1 )にな
り、また、第2差分波形データDV2 はDVnow =(波
形メモリ1107上のアドレスnにおける差分波形デー
タDVn )となる。そして、上位アドレスADが変化し
たためにキャリー信号CC=1である。従って、積分部
1110における積分値出力IVは、第2差分波形デー
タDV2 =DVn が累算される結果、IV=IVnext
=IVnow +DVn =(波形メモリ1107上のアドレ
スn+1に対応する原波形値)となる。
[0017] On the contrary, if stepping width PD as shown in FIG. 14 (a) is assumed to be PD in next without PD next ', the next sampling period indicated by the subscript now subscript As a result of adding the above step width to the current real number address data at the sampling cycle indicated by next ′,
The upper address AD is AD next ′ = (waveform memory 1107
At the above address n + 1), go +1 from AD now ,
The lower address ad changes to ad next '. In this case, the first difference waveform data DV 1 read from the waveform memory 1107 becomes DV next ′ = (difference waveform data DV n + 1 at address n + 1 on the waveform memory 1107) and the second difference waveform data DV 2 is DV now = (difference waveform data DV n at the address n on the waveform memory 1107). The carry signal CC = 1 because the upper address AD has changed. Therefore, the integrated value output IV in the integrator 1110 is IV = IV next ′ as a result of accumulating the second differential waveform data DV 2 = DV n.
= IV now + DV n = a (original waveform value corresponding to the address n + 1 on the waveform memory 1107).

【0018】この場合、図11の補間演算部1111
は、数1式より、 Dnext′=IVnext′+DVnext′×adnext′ で示される補間演算を実行することにより、波形データ
出力Dnext′=Dout を算出する。
In this case, the interpolation calculation unit 1111 shown in FIG.
Calculates the waveform data output D next ′ = D out by executing the interpolation calculation represented by D next ′ = IV next ′ + DV next ′ × ad next ′ from the equation (1).

【0019】[0019]

【発明が解決しようとする課題】上述した従来例におい
ては、サンプリング周期毎に、指定された実数アドレス
に対応する波形データ出力Dout を算出するために、1
サンプリング周期内に、実数アドレスに対応する整数ア
ドレスと、その整数アドレスから1デクリメントした整
数アドレスとで波形メモリを2回アクセスすることによ
って補間演算用と積分演算用の2つの差分波形データD
V、DV′を読み出す必要がある。
In the above-mentioned conventional example, in order to calculate the waveform data output D out corresponding to the designated real number address for each sampling period, 1
By accessing the waveform memory twice with an integer address corresponding to a real number address and an integer address decremented by 1 from the integer address within the sampling period, two difference waveform data D for interpolation calculation and integration calculation are obtained.
It is necessary to read V and DV '.

【0020】更に、例えば図15(a) に示されるよう
に、歩進幅PDが1整数アドレス長より長い値P
next″となった場合(これは、出力される波形データ
のピッチが原波形データのピッチより高くなることを意
味する)、添え字now で示されるサンプリング周期の次
の添え字next″で示されるサンプリング周期で、現在の
実数アドレスデータに上記歩進幅が加算される結果、上
位アドレスADはADnext″=(波形メモリ1107上
のアドレスn+1)でADnow から+2進み、また、下
位アドレスadはadnext″に変化してしまう。この場
合、積分値出力IVは、上位アドレスADが+2進んだ
ため、IVnext″=IVnow +DVn +DVn+1とする
必要がある。更に、数1式より、 Dnext″=IVnext″+DVnext″×adnext″ で示される補間演算を実行するため、波形メモリから差
分波形データDVnext″=DVn+2 も読み出す必要があ
る。
Further, as shown in FIG. 15A, for example, the step width PD is a value P longer than one integer address length.
D next ″ (which means that the pitch of the output waveform data is higher than the pitch of the original waveform data), it is indicated by the subscript next ″ next to the sampling cycle indicated by the subscript now. As a result of adding the above step width to the current real number address data at the sampling cycle, the upper address AD is advanced by +2 from AD now at AD next ″ = (address n + 1 on the waveform memory 1107), and the lower address ad. Changes to ad next ″. In this case, the integrated value output IV needs to be IV next ″ = IV now + DV n + DV n + 1 because the upper address AD has advanced by +2. Further, from the formula 1, D next ″ = IV next ″. In order to execute the interpolation calculation represented by + DV next ″ × ad next ″, it is also necessary to read the differential waveform data DV next ″ = DV n + 2 from the waveform memory.

【0021】従って、このような場合には、図11の従
来例の構成では対処できず、サンプリング周期毎に、D
n 、DVn+1 、及びDVn+2 という3つの差分波形デ
ータを波形メモリから読み出す必要が生ずる。
Therefore, in such a case, the configuration of the conventional example shown in FIG.
It becomes necessary to read three differential waveform data of V n , DV n + 1 , and DV n + 2 from the waveform memory.

【0022】このように、波形データ出力のピッチを、
波形メモリに記憶される差分波形データで示される原波
形データのピッチより高くするためには、そのピッチ変
化幅に応じた数の差分波形データをサンプリング周期毎
に読み出す必要が生ずる。
In this way, the pitch of the waveform data output is
In order to make the pitch higher than the pitch of the original waveform data indicated by the differential waveform data stored in the waveform memory, it is necessary to read the number of differential waveform data corresponding to the pitch change width for each sampling cycle.

【0023】上述の波形メモリのアクセス回数は、サン
プリング周期毎に1チャネル分の波形データ出力Dout
のみが出力されると仮定した場合のものであり、同時に
複数チャネル分の波形データ出力を時分割で出力可能と
するためには、波形メモリのアクセス回数は、チャネル
数に応じて更に増加する。
The number of times the above-mentioned waveform memory is accessed is the waveform data output D out for one channel for each sampling period.
It is assumed that only waveforms are output, and in order to simultaneously output waveform data for a plurality of channels in a time-division manner, the number of times the waveform memory is accessed further increases according to the number of channels.

【0024】ここで、近年の半導体技術の高度化によっ
て音源LSIの基本仕様が高まってきており、特に最大
同時出力数とサンプリング周波数は高くなる一方である
が、上述のように、1サンプリング周期あたりに音源L
SIに接続される波形メモリを複数回アクセスしなけれ
ばならない従来例では、音源LSIの処理性能が波形メ
モリのアクセス速度に律速されてしまい、結果的に、最
大同時出力数とサンプリング周波数を一定のレベル以上
に高めることができなくなってしまうという問題点を有
している。
Here, the basic specifications of the sound source LSI have been increasing due to the recent sophistication of the semiconductor technology, and in particular, the maximum number of simultaneous outputs and the sampling frequency have been increasing. Sound source L
In the conventional example in which the waveform memory connected to the SI must be accessed multiple times, the processing performance of the sound source LSI is limited by the access speed of the waveform memory, and as a result, the maximum number of simultaneous outputs and the sampling frequency are fixed. There is a problem that it cannot be raised above the level.

【0025】本発明の課題は、サンプリング周期毎に波
形メモリを1音あたり1回アクセスするだけで波形デー
タ出力を算出可能とすることにある。
An object of the present invention is to make it possible to calculate the waveform data output only by accessing the waveform memory once for each sound in each sampling period.

【0026】[0026]

【課題を解決するための手段】本発明において、まず、
サンプリング周期毎に、アドレスデータの値を歩進デー
タに対応する値ずつ更新しながら、その整数部である上
位アドレスデータとその小数部である下位アドレスデー
タをそれぞれ出力し、上位アドレスデータの値が1増加
する場合にその旨を示すアドレス変更データを出力する
アドレスカウンタ手段を有する。
In the present invention, first,
While updating the value of the address data by the value corresponding to the step data at each sampling cycle, the upper address data that is the integer part and the lower address data that is the decimal part are output, and the value of the upper address data is It has address counter means for outputting address change data indicating that when 1 is incremented.

【0027】次に、各アドレスの記憶領域に所定数ずつ
の差分波形データを記憶する波形記憶手段を有する。例
えば各記憶領域の下位ビット部と上位ビット部に、それ
ぞれ1つずつ計2つの時間的に連続する差分波形データ
が記憶される。
Next, there is provided waveform storage means for storing a predetermined number of differential waveform data in the storage area of each address. For example, two temporally continuous difference waveform data are stored in the lower bit portion and the upper bit portion of each storage area, respectively.

【0028】次に、アドレスカウンタ手段から出力され
る上位アドレスデータによって波形記憶手段をアクセス
することにより、波形記憶手段から前述した所定数の差
分波形データを同時に読み出す波形アクセス手段を有す
る。
Next, there is provided waveform access means for simultaneously reading out the above-mentioned predetermined number of differential waveform data from the waveform storage means by accessing the waveform storage means by the upper address data output from the address counter means.

【0029】また、サンプリング周期毎に、下位アドレ
スデータの値とアドレス変更データに基づいて、波形ア
クセス手段によって波形記憶手段から読み出された所定
数の差分波形データのうち何れか1つ以上を選択し、そ
の選択された差分波形データを累算する累算手段を有す
る。
Further, at each sampling cycle, one or more of a predetermined number of differential waveform data read from the waveform storage means by the waveform access means are selected based on the value of the lower address data and the address change data. And has an accumulating means for accumulating the selected difference waveform data.

【0030】そして、サンプリング周期毎に、下位アド
レスデータの値とアドレス変更データに基づいて、波形
アクセス手段によって波形記憶手段から読み出された所
定数の差分波形データのうち何れか1つと累算手段が出
力する累算値を使用して、直線補間などの補間演算を実
行し、波形データ出力を出力する補間演算実行手段を有
する。
Then, for each sampling period, one of a predetermined number of differential waveform data read from the waveform storage means by the waveform access means and the accumulating means based on the value of the lower address data and the address change data. It has an interpolation calculation executing means for executing an interpolation calculation such as linear interpolation using the accumulated value output by and outputting the waveform data output.

【0031】[0031]

【作用】音響波形においては差分波形データは原波形デ
ータに比較してダイナミックレンジが狭いことを利用
し、波形記憶手段上の同一アドレスで示される記憶領域
には、所定数ずつの差分波形データが記憶され、1回の
メモリアクセスでこれら所定数の差分波形データが同時
に読み出される。例えば、各記憶領域の下位ビット部と
上位ビット部に、1つずつ計2つの差分波形データが記
憶され、同時にアクセスされる。
In the acoustic waveform, the fact that the differential waveform data has a narrower dynamic range than the original waveform data is utilized, and a predetermined number of pieces of differential waveform data are stored in the storage area indicated by the same address on the waveform storage means. The predetermined number of pieces of difference waveform data are stored and simultaneously read out by one memory access. For example, a total of two pieces of difference waveform data are stored in the lower bit portion and the upper bit portion of each storage area, and are simultaneously accessed.

【0032】これにより、波形記憶手段に記憶された差
分波形データによって表される原波形データの1サンプ
ル分の幅以上の歩進幅が歩進データとして指定され、原
波形データが有するピッチ以上のピッチを有する波形デ
ータ出力が再生される場合でも、サンプリング周期毎に
波形記憶手段を1音あたり1回アクセスするだけで波形
データ出力を算出することができる。
As a result, a step width equal to or larger than one sample width of the original waveform data represented by the difference waveform data stored in the waveform storage means is designated as the step data, and is equal to or larger than the pitch of the original waveform data. Even when the waveform data output having a pitch is reproduced, the waveform data output can be calculated by accessing the waveform storage means once for each sound for each sampling period.

【0033】この場合、累算手段は、サンプリング周期
毎に、現在アクセスされている波形記憶手段上のアドレ
スに対応する原波形データの値ではなく、常にその2つ
先のサンプル位置に対応する原波形データの値を累算演
算値として演算する。
In this case, the accumulating means is not the value of the original waveform data corresponding to the currently accessed address on the waveform storing means, but the original corresponding to the sample position two points ahead of the original waveform data at every sampling cycle. The value of the waveform data is calculated as the accumulated calculation value.

【0034】そして、より具体的には、累算手段は、サ
ンプリング周期毎に、アドレス変更データの有無によっ
て波形記憶手段に対して指定される上位アドレスデータ
が更新されなかったと判別した場合に、下位アドレスデ
ータの例えば最上位ビットの値に応じて、現在の累算演
算値から現在波形記憶手段から読み出されている例えば
2つの差分波形データの値の何れか一方又は両方を減算
した値を、補間演算用の累算値出力として補間演算実行
手段に出力する。その後、累算手段は、現在の累算演算
値を、更新せずに、次のサンプリング周期において補間
演算用の累算値出力を得るために保持する。
More specifically, when the accumulating means determines that the upper address data designated to the waveform storing means is not updated depending on the presence or absence of the address change data in each sampling cycle, the lower means For example, according to the value of the most significant bit of the address data, a value obtained by subtracting either one or both of the values of the two difference waveform data currently read from the current waveform storage means from the current accumulated operation value, It is output to the interpolation calculation executing means as an accumulated value output for interpolation calculation. After that, the accumulating means holds the current accumulated operation value without updating, in order to obtain the accumulated value output for the interpolation operation in the next sampling cycle.

【0035】一方、累算手段は、サンプリング周期毎
に、アドレス変更データの有無によって波形記憶手段に
対して指定される上位アドレスデータが更新されたと判
別した場合に、下位アドレスデータの例えば最上位ビッ
トの値に応じて、現在の累算演算値又は現在の累算演算
値に新たに波形記憶手段から読み出されている差分波形
データの例えば1つを加算した値を、新たな補間演算用
の累算値出力として補間演算実行手段に出力する。その
後、累算手段は、累算演算値を、現在の累算演算値に新
たに波形記憶手段から読み出されている2つの差分波形
データを累算した値で更新し、次のサンプリング周期に
おいて補間演算用の累算値出力を得るために保持する。
On the other hand, the accumulating means determines, for example, the most significant bit of the lower address data when the accumulating means determines that the upper address data designated for the waveform storing means is updated depending on the presence or absence of the address change data in each sampling cycle. Depending on the value of, the current cumulative calculated value or a value obtained by adding, for example, one of the differential waveform data newly read from the waveform storage means to the current cumulative calculated value is used for a new interpolation calculation. The accumulated value is output to the interpolation calculation executing means. Thereafter, the accumulating means updates the accumulated operation value with a value obtained by accumulating the two difference waveform data newly read from the waveform storage means to the current accumulated operation value, and in the next sampling cycle. Hold to get accumulated value output for interpolation operation.

【0036】補間演算手段は、サンプリング周期毎に、
上述のように累算手段から得られる累算値出力すると共
に、下位アドレスデータの例えば最上位ビットの値に応
じて現在の累算演算値から現在波形記憶手段から読み出
されている例えば2つの差分波形データの値の何れか一
方を選択的に入力し、下位アドレスデータの値に基づい
て、補間演算を実行し、波形データ出力を出力する。
The interpolating calculation means, for each sampling period,
As described above, the accumulated value obtained from the accumulating means is output, and, for example, the two accumulated read values are read from the current accumulated storage value from the current accumulated storage value in accordance with the value of the most significant bit of the lower address data. Either one of the values of the differential waveform data is selectively input, the interpolation operation is executed based on the value of the lower address data, and the waveform data output is output.

【0037】以上のようにして、例えば波形記憶手段上
の同一アドレスで示される記憶領域に2つの差分波形デ
ータが記憶される場合には、原波形データが有するピッ
チの2倍未満(1オクターブ上未満)のピッチを有する
波形データ出力であれば、どのような場合でも、サンプ
リング周期毎に波形記憶手段を1音あたり1回アクセス
するだけで波形データ出力を算出することができる。
As described above, for example, when two difference waveform data are stored in the storage area indicated by the same address on the waveform storage means, the difference is less than twice the pitch of the original waveform data (one octave above). In any case, if the waveform data output has a pitch of (less than), the waveform data output can be calculated by only accessing the waveform storage unit once per sound for each sampling period.

【0038】[0038]

【実施例】以下、図面を参照しながら本発明の実施例に
つき詳細に説明する。図1は、本発明の実施例の全体構
成図である。
Embodiments of the present invention will now be described in detail with reference to the drawings. FIG. 1 is an overall configuration diagram of an embodiment of the present invention.

【0039】音源LSI101がROMにより構成され
る波形メモリ104をアクセスすることにより、波形デ
ータ出力Dout が算出される。ここで、波形メモリ10
4上の同一アドレスで示される記憶領域には、図2に示
されるように、その下位ビット部と上位ビット部に、1
つずつ計2つの差分波形データ(DV0 、DV1 )(D
2 、DV3 )(DV4 、DV5 )(DV6 、DV7
・・・が記憶され、1回のメモリアクセスで2つの差分
波形データが同時に読み出されることが特徴である。即
ち、音響波形においては、差分波形データは原波形デー
タに比較してダイナミックレンジが狭いため、1つのア
ドレスで示される記憶領域に2つのデータを記憶させる
ことが可能なのである。
The waveform data output D out is calculated by the tone generator LSI 101 accessing the waveform memory 104 composed of a ROM. Here, the waveform memory 10
In the storage area indicated by the same address on 4 as shown in FIG.
Two pieces of differential waveform data (DV 0 , DV 1 ) (D
V 2, DV 3) (DV 4, DV 5) (DV 6, DV 7)
Is stored, and two differential waveform data are simultaneously read out by one memory access. That is, in the acoustic waveform, since the differential waveform data has a narrower dynamic range than the original waveform data, two data can be stored in the storage area indicated by one address.

【0040】音源LSI101において、制御部102
は、特には図示しないCPU(中央処理装置)からの命
令に基づいて、波形データ出力Dout の出力を開始する
か停止するかを指示するための制御信号Onをアドレスカ
ウンタ部103及び積分部106に出力する。
In the sound source LSI 101, the control unit 102
Expresses a control signal On for instructing whether to start or stop the output of the waveform data output D out based on an instruction from a CPU (central processing unit) (not shown). Output to.

【0041】アドレスカウンタ部103は、特には図示
しないCPUから設定された先頭アドレスから、同じく
CPUから設定されたピッチデータに基づく歩進幅で、
波形データ出力Dout を算出するためのアドレスの更新
を行う。
The address counter unit 103 has a step size based on the pitch data set by the CPU from the start address set by the CPU (not shown).
The address for calculating the waveform data output D out is updated.

【0042】図3は、図1のアドレスカウンタ部103
の構成図である。アドレスの更新動作自体は、周知の動
作と同じである。波形データ出力Dout の出力開始時に
は、まず特には図示しないCPUから、セレクタ301
を介してアドレスカウンタメモリ302に、波形メモリ
104上の所望の差分波形データ群の先頭アドレスが設
定される。また、特には図示しないCPUからピッチメ
モリ305に、ピッチデータPDが設定される。その
後、特には図示しないCPUからの命令に基づき、図1
の制御部102からアンドゲート群306に入力される
制御信号Onがハイレベルに設定される。これにより、ピ
ッチメモリ305にセットされたピッチデータPDが、
アンドゲート群306を介して後述する下位アドレス加
算器307に入力可能となる。
FIG. 3 shows the address counter unit 103 of FIG.
It is a block diagram of. The address update operation itself is the same as a known operation. When the output of the waveform data output D out is started, first, the selector 301
The desired start address of the differential waveform data group on the waveform memory 104 is set in the address counter memory 302 via. Further, pitch data PD is set in the pitch memory 305 from a CPU (not shown). After that, based on an instruction from the CPU (not shown), FIG.
The control signal On input from the control unit 102 to the AND gate group 306 is set to the high level. As a result, the pitch data PD set in the pitch memory 305 becomes
It becomes possible to input to the lower address adder 307 described later via the AND gate group 306.

【0043】波形データ出力Dout の出力開始後は、サ
ンプリング周期毎に、アドレスカウンタメモリ302か
ら出力されるアドレスカウンタ値ADRSとピッチメモ
リ305から出力されているピッチデータPDとが加算
されることにより、アドレスカウンタメモリ302の内
容が更新される。
After the output of the waveform data output D out is started, the address counter value ADRS output from the address counter memory 302 and the pitch data PD output from the pitch memory 305 are added every sampling cycle. The contents of the address counter memory 302 are updated.

【0044】具体的には、図8(a) に示されるように、
1サンプリング周期T内の前半区間で、アドレスカウン
タメモリ302から出力されるアドレスカウンタ値AD
RSのうち、その上位ビット列は上位アドレス加算器3
03に出力され、その下位ビット列は下位アドレス加算
器307に出力される。
Specifically, as shown in FIG. 8 (a),
Address counter value AD output from the address counter memory 302 in the first half section within one sampling period T
Among RSs, the higher-order bit string has a higher-order address adder 3
03, and its lower bit string is output to the lower address adder 307.

【0045】下位アドレス加算器307は、アドレスカ
ウンタ値ADRSの下位ビット列と、ピッチメモリ30
5からアンドゲート群306を介して図8(b) に示され
るタイミングで入力されるピッチデータPDとを加算
し、その加算結果のうち、最上位ビットが、図8(d) に
示されるように、データセレクトビットasとしてデー
タセレクトビットレジスタ310に格納され、最上位ビ
ットを除く下位ビットが、図8(e) に示されるように、
下位アドレスadとして下位アドレスレジスタ308に
格納される。
The lower address adder 307 is provided with the lower bit string of the address counter value ADRS and the pitch memory 30.
5 and the pitch data PD input at the timing shown in FIG. 8 (b) via the AND gate group 306, and the most significant bit of the addition result is as shown in FIG. 8 (d). Is stored in the data select bit register 310 as the data select bit as, and the lower bits except the most significant bit are as shown in FIG. 8 (e).
It is stored in the lower address register 308 as the lower address ad.

【0046】上位アドレス加算器303は、下位アドレ
ス加算器307での加算演算の結果、キャリー1が生じ
なければ、アドレスカウンタ値ADRSの上位ビット列
をそのまま、図8(c) に示されるタイミングで、上位ア
ドレスADとして上位アドレスレジスタ304に格納
し、キャリー1が生じた場合には、アドレスカウンタ値
ADRSの上位ビット列にキャリー1を加算し、その加
算結果を、図8(c) に示されるタイミングで、上位アド
レスADとして上位アドレスレジスタ304に格納す
る。
If a carry 1 does not occur as a result of the addition operation in the lower address adder 307, the upper address adder 303 keeps the upper bit string of the address counter value ADRS as it is, at the timing shown in FIG. When the carry 1 is stored in the upper address register 304 as the upper address AD, the carry 1 is added to the upper bit string of the address counter value ADRS, and the addition result is obtained at the timing shown in FIG. 8 (c). , And stores it in the upper address register 304 as the upper address AD.

【0047】また、下位アドレス加算器307から出力
されるキャリーは、図8(e) に示されるタイミングで、
キャリー信号CCとしてキャリーレジスタ309に格納
される。
Further, the carry output from the lower address adder 307 is at the timing shown in FIG.
It is stored in carry register 309 as carry signal CC.

【0048】上位アドレスレジスタ304に格納された
上位アドレスADは、図1のアドレスバスAAを介して
波形メモリ104に出力され、データセレクトビットレ
ジスタ310に格納されたデータセレクトビットasと
キャリーレジスタ309に格納されたキャリー信号CC
は、図1の積分部106に出力され、下位アドレスレジ
スタ308に格納された下位アドレスadは、図1の補
間演算部106に出力される。
The high-order address AD stored in the high-order address register 304 is output to the waveform memory 104 via the address bus AA shown in FIG. 1, and stored in the data select bit register 310 and the carry register 309. Stored carry signal CC
Is output to the integration unit 106 in FIG. 1, and the lower address ad stored in the lower address register 308 is output to the interpolation calculation unit 106 in FIG.

【0049】また、アドレスカウンタメモリ302の内
容は、図8(a) に示されるように1サンプリング周期T
内の後半区間で、上位アドレスレジスタ304、データ
セレクトビットレジスタ310、及び下位アドレスレジ
スタ308からセレクタ301を介して入力される上位
アドレスAD、データセレクトビットas、及び下位ア
ドレスadによって更新される。
Further, the content of the address counter memory 302 has one sampling period T as shown in FIG. 8 (a).
In the latter half section, the upper address AD, the data select bit as, and the lower address ad input from the upper address register 304, the data select bit register 310, and the lower address register 308 via the selector 301 are updated.

【0050】ここで、アドレスカウンタ部103におけ
る各データのフォーマットを図4に示す。アドレスカウ
ンタ値ADRSのうち、上位ビット列は整数部であり、
下位ビット列は小数部である。また、ピッチデータPD
は、小数である。そして、フルビット加算器により構成
される下位アドレス加算器307において、共に小数で
あるアドレスカウンタ値ADRSの下位ビット列とピッ
チデータPDとの加算が行われ、インクリメンタにより
構成される上位アドレス加算器303において、下位ア
ドレス加算器307からのキャリーに基づいて、アドレ
スカウンタ値ADRSの上位アドレスADが、選択的に
+1ずつインクリメントされる。
The format of each data in the address counter section 103 is shown in FIG. Of the address counter value ADRS, the high-order bit string is the integer part,
The lower bit string is the fractional part. Also, the pitch data PD
Is a decimal. Then, in the lower address adder 307 configured by the full bit adder, the lower bit string of the address counter value ADRS, which is a decimal number, and the pitch data PD are added, and the upper address adder 303 configured by the incrementer. At, the upper address AD of the address counter value ADRS is selectively incremented by +1 based on the carry from the lower address adder 307.

【0051】この場合、上位アドレスADは、波形メモ
リ104をアクセスするアドレスとされるが、図2で前
述したように、波形メモリ104上の同一アドレスで示
される記憶領域には、その下位ビット部と上位ビット部
に、1つずつ計2つの差分波形データが記憶される。従
って、上位アドレスADが1つ進むと、原波形データ上
のサンプル位置は2つ進むことになる。そして、下位ア
ドレス加算器307から出力される下位アドレスのうち
の最上位ビットであるデータセレクトビットasが0か
ら1に変化すると、原波形データ上のサンプル位置が1
つ進むことになる。
In this case, the upper address AD is used as an address for accessing the waveform memory 104. However, as described above with reference to FIG. 2, the lower bit portion is stored in the storage area indicated by the same address on the waveform memory 104. And a total of two difference waveform data are stored in the upper bit part. Therefore, when the upper address AD advances by 1, the sample position on the original waveform data advances by 2. When the data select bit as, which is the most significant bit of the lower address output from the lower address adder 307, changes from 0 to 1, the sample position on the original waveform data becomes 1
Will move forward.

【0052】即ち、データセレクトビットasは、上位
アドレスADで示される波形メモリ104上のアドレス
内の2つの差分波形データのうち一方を選択する機能を
有する。
That is, the data select bit as has a function of selecting one of the two differential waveform data in the address on the waveform memory 104 indicated by the upper address AD.

【0053】また、下位アドレス加算器307から出力
される下位アドレスのうち最上位ビットを除いた下位ア
ドレスadは、補間演算部107における補間位置を示
す機能を有する。
The lower address ad excluding the most significant bit of the lower address output from the lower address adder 307 has a function of indicating the interpolation position in the interpolation calculation unit 107.

【0054】更に、キャリー信号CCは、現在のサンプ
リング周期においてアドレスカウンタ部103で上位ア
ドレスADが更新されたことを、積分部106に通知す
る機能を有する。
Further, the carry signal CC has a function of notifying the integrating unit 106 that the upper address AD has been updated by the address counter unit 103 in the current sampling period.

【0055】以上の関係より、本実施例では、ピッチデ
ータPDにより、波形メモリ104に記憶された差分波
形データによって表される原波形データの2サンプル未
満までの歩進幅を指定でき、従って、原波形データが有
するピッチの2倍未満(1オクターブ上未満)のピッチ
を有する波形データ出力Dout を再生することができ
る。
From the above relation, in the present embodiment, the pitch data PD can specify the step width up to less than 2 samples of the original waveform data represented by the differential waveform data stored in the waveform memory 104. It is possible to reproduce the waveform data output D out having a pitch less than twice the pitch of the original waveform data (less than one octave above).

【0056】なお、図3に示されるアドレスカウンタ部
103では、説明の簡単のため、カウント終了アドレス
とアドレスカウンタ値ADRSとを比較することによっ
てアドレス更新動作を終了させるための構成が省略され
ている。
In the address counter unit 103 shown in FIG. 3, for simplification of description, the structure for terminating the address updating operation by comparing the count end address with the address counter value ADRS is omitted. .

【0057】次に、図5は、図1の積分部106の構成
図である。今、サンプリング周期T毎に、アドレスカウ
ンタ部103(図1)内の上位アドレスレジスタ303
(図3)からアドレスバスAAを介して波形メモリ10
4に、図8(c) に示されるように上位アドレスADが出
力されると、波形メモリ104からデータバスDDへ
は、そのアドレスに対応する2つの差分波形データの組
DVL 、DVH が出力され、図8(g) に示されるタイミ
ングで図1のデータレジスタ105に格納され、更に、
DVL 、DVH はそれぞれ、図8(h) 及び(i)に示され
るタイミングで、DVL レジスタ501及びDVH レジ
スタ502に格納される。
Next, FIG. 5 is a block diagram of the integrating unit 106 of FIG. Now, every sampling period T, the upper address register 303 in the address counter unit 103 (FIG. 1) is
Waveform memory 10 from (FIG. 3) via address bus AA
4, when the upper address AD is output as shown in FIG. 8 (c), two differential waveform data sets DV L and DV H corresponding to the address are output from the waveform memory 104 to the data bus DD. It is output and stored in the data register 105 of FIG. 1 at the timing shown in FIG. 8 (g).
DV L and DV H are stored in the DV L register 501 and the DV H register 502 at the timings shown in FIGS. 8 (h) and 8 (i), respectively.

【0058】そして、セレクタ503は、アドレスカウ
ンタ部103から入力するデータセレクトビットas=
0ならDVL レジスタ501に格納された差分波形デー
タDVL を選択し、逆にデータセレクトビットas=1
ならばDVH レジスタ502に格納された差分波形デー
タDVH を選択する。この選択された差分波形データ
は、図8(j) に示されるタイミングで、補間演算用差分
波形データDVとしてDVレジスタ504に格納され
る。
Then, the selector 503 inputs the data select bit as = from the address counter section 103.
If it is 0, the differential waveform data DV L stored in the DV L register 501 is selected, and conversely, the data select bit as = 1
If so, the differential waveform data DV H stored in the DV H register 502 is selected. The selected difference waveform data is stored in the DV register 504 as the interpolation calculation difference waveform data DV at the timing shown in FIG. 8 (j).

【0059】積分値演算部505は、サンプリング周期
毎に、積分演算値メモリ507からI1 レジスタ508
を介して出力される積分演算値I1 と、DVL レジスタ
501から出力される差分波形データDVL 、DVH
ジスタ502から出力される差分波形データDVH 、デ
ータセレクトビットas、及びキャリー信号CCに基づ
いて、補間演算用積分値IVを算出して、図8(k) に示
されるタイミングで、IVレジスタ509に格納する。
The integral value calculation unit 505 stores the integral calculation value memory 507 to the I 1 register 508 every sampling period.
The integral calculation value I 1 which is output through the, DV difference waveform data DV L output from the L register 501, DV H register 502 differential waveform data DV H outputted from the data select bits as, and the carry signal CC On the basis of the above, the integral value IV for interpolation calculation is calculated and stored in the IV register 509 at the timing shown in FIG.

【0060】また、積分値演算部505は、サンプリン
グ周期毎に、積分値メモリ507からI1 レジスタ50
8を介して出力される積分演算値I1 と、DVL レジス
タ501から出力される差分波形データDVL 、DVH
レジスタ502から出力される差分波形データDVH
及びキャリー信号CCに基づいて、積分演算値更新値I
m を算出して、図8(l) に示されるタイミングで、アン
ドゲート群506を介して積分演算値メモリ507の記
憶内容を更新する。
Further, the integral value calculation unit 505 is configured to convert the integral value memory 507 to the I 1 register 50 for each sampling cycle.
Integral with the calculated value I 1 which is output through the 8, differential waveform data DV L output from the DV L register 501, DV H
Difference waveform data DV H output from the register 502,
Based on the carry signal CC and the integrated calculation value update value I
By calculating m , the contents stored in the integral calculation value memory 507 are updated via the AND gate group 506 at the timing shown in FIG.

【0061】なお、アドレス更新動作中は、図1の制御
部102からアンドゲート群506に入力する制御信号
Onはハイレベルとなっているが、強制的にアドレス更新
動作が中止される場合、即ち、波形データ出力Dout
出力動作が強制的に中止される場合は、特には図示しな
いCPUからの命令に基づいて、図1の制御部102か
らアンドゲート群506に入力される制御信号Onがロー
レベルに設定される。これにより、積分演算値更新値I
m の入力が阻止され、その出力がオール0となり、積分
演算値メモリ507の内容がクリアされる。
During the address update operation, a control signal input from the control unit 102 of FIG. 1 to the AND gate group 506.
On is at a high level, but when the address update operation is forcibly stopped, that is, when the output operation of the waveform data output D out is forcibly stopped, an instruction from a CPU (not shown) Based on the above, the control signal On input to the AND gate group 506 from the control unit 102 of FIG. 1 is set to the low level. As a result, the integrated calculation value update value I
The input of m is blocked, the output becomes all 0, and the contents of the integral calculation value memory 507 are cleared.

【0062】図1の補間演算部107は、図5のDVレ
ジスタ504に図8(j) に示されるタイミングでセット
された補間演算用差分波形データDV、IVレジスタ5
09に図8(k) に示されるタイミングでセットされた補
間演算用積分値IV、及び図1のアドレスカウンタ部1
03から図8(e) に示されるタイミングで入力する下位
アドレスadとから、図8(m) に示されるタイミングで
波形データ出力Doutを算出し出力する。ここでの演算
動作は、従来例の説明において前述した図13で示され
る構成におけるものと同様で、図13の積分値IV、第
1差分波形データDV1 、及びアドレスカウンタレジス
タ(下位)が、それぞれ補間演算用積分値IV、補間演
算用差分波形データDV、及び下位アドレスadに対応
する。
The interpolation calculation unit 107 of FIG. 1 uses the difference waveform data DV and IV register 5 for interpolation calculation set in the DV register 504 of FIG. 5 at the timing shown in FIG. 8 (j).
09, the integrated value IV for interpolation calculation set at the timing shown in FIG. 8 (k), and the address counter unit 1 in FIG.
From 03 to the lower address ad input at the timing shown in FIG. 8 (e), the waveform data output D out is calculated and output at the timing shown in FIG. 8 (m). The calculation operation here is the same as that in the configuration shown in FIG. 13 described above in the description of the conventional example, and the integrated value IV, the first difference waveform data DV 1 and the address counter register (lower order) in FIG. They correspond to the interpolation calculation integrated value IV, the interpolation calculation difference waveform data DV, and the lower address ad, respectively.

【0063】図6は、積分値演算部505における積分
演算値更新値Im を算出する回路の構成図である。加算
器601は、差分波形データDVL 及びDVH を加算す
る。
FIG. 6 is a block diagram of a circuit for calculating the integral calculation value update value I m in the integral value calculator 505. The adder 601 adds the difference waveform data DV L and DV H.

【0064】アンドゲート群602は、キャリー信号C
C=1の場合に、加算器601から出力される加算値D
L +DVH を加算器603に出力する。キャリー信号
CC=0の場合には、加算器603には0を出力する。
The AND gate group 602 has a carry signal C.
When C = 1, the addition value D output from the adder 601
The V L + D V H is output to the adder 603. When carry signal CC = 0, 0 is output to adder 603.

【0065】加算器603は、図5のI1 レジスタ50
8から出力される積分演算値I1 にアンドゲート群60
2の出力を加算し、その加算結果を積分演算値更新値I
m として、図5のアンドゲート群506を介して、積分
演算値メモリ507に出力する。
The adder 603 is the I 1 register 50 of FIG.
AND gate group 60 to the integral calculation value I 1 output from 8
The outputs of 2 are added, and the addition result is the integrated calculation value update value I
The value m is output to the integral calculation value memory 507 via the AND gate group 506 in FIG.

【0066】以上の構成から理解されるように、積分演
算値更新値Im は、
As can be understood from the above configuration, the integral calculation value update value I m is

【0067】[0067]

【数2】 Im =I1 (CC=0の場合)## EQU00002 ## I m = I 1 (when CC = 0)

【0068】[0068]

【数3】 Im =I1 +DVL +DVH (CC=1の場合) として演算される。## EQU3 ## It is calculated as I m = I 1 + DV L + D V H (when CC = 1).

【0069】図7は、積分値演算部505における補間
演算用積分値IVを算出する回路の構成図である。ま
ず、キャリー信号CC=0で、かつ、データセレクトビ
ットas=0の場合には、アンドゲート706及び70
8の両出力が“0”となりオアゲート709の出力が
“0”となるため、インバータ710の出力が“1”と
なる。従って、アンドゲート群701がオンとなり、図
5のDVL レジスタ501から差分波形データDVL
加減算器702に入力される。
FIG. 7 is a block diagram of a circuit for calculating the interpolation calculation integral value IV in the integral value calculating section 505. First, if the carry signal CC = 0 and the data select bit as = 0, the AND gates 706 and 70.
Both outputs of 8 become "0" and the output of the OR gate 709 becomes "0", so that the output of the inverter 710 becomes "1". Therefore, the AND gate group 701 is turned on, and the differential waveform data DV L is input to the adder / subtractor 702 from the DV L register 501 in FIG.

【0070】加減算器702は、キャリー信号CC=0
の場合には、減算器として動作し、I1 レジスタ508
から入力される積分演算値I1 からアンドゲート群70
1から入力される差分波形データDVL を減算し、その
減算結果を減算器704に出力する。
The adder / subtractor 702 receives the carry signal CC = 0.
In this case, the I 1 register 508 operates as a subtractor.
AND gate group 70 from the integral calculation value I 1 input from
The difference waveform data DV L input from 1 is subtracted, and the subtraction result is output to the subtractor 704.

【0071】減算器704は、キャリー信号CC=0の
場合には、加減算器702の出力から、図5のDVH
ジスタ502よりアンドゲート群703を介して入力す
る差分波形データDVH を減算し、その減算結果を補間
演算用積分値IVとして、図5のIVレジスタ509に
出力する。
When the carry signal CC = 0, the subtracter 704 subtracts the differential waveform data DV H input from the DV H register 502 of FIG. 5 via the AND gate group 703 from the output of the adder / subtractor 702. , And outputs the subtraction result to the IV register 509 of FIG. 5 as the integration value IV for interpolation calculation.

【0072】以上の動作からわかるように、次式が成立
する。
As can be seen from the above operation, the following equation is established.

【0073】[0073]

【数4】IV=I1 −DVL −DVH (CC=0かつ
as=0の場合) 次に、キャリー信号CC=0で、かつ、データセレクト
ビットas=1の場合には、アンドゲート706の出力
が“1”、オアゲート709の出力が“1”となるた
め、インバータ710の出力が“0”となる。従って、
アンドゲート群701がオフとなり、加減算器702
は、I1 レジスタ508から入力される積分演算値I1
をそのまま減算器704に出力する。
Equation 4] IV = I 1 -DV L -DV H ( case of CC = 0 and the as = 0) Then, at the carry signal CC = 0, and when the data select bit the as = 1 is an AND gate Since the output of 706 is "1" and the output of the OR gate 709 is "1", the output of the inverter 710 is "0". Therefore,
The AND gate group 701 is turned off, and the adder / subtractor 702
Is the integral calculation value I 1 input from the I 1 register 508.
Is output to the subtractor 704 as it is.

【0074】減算器704は、キャリー信号CC=0の
場合には、加減算器702の出力から、図5のDVH
ジスタ502よりアンドゲート群703を介して入力す
る差分波形データDVH を減算し、その減算結果を補間
演算用積分値IVとして、図5のIVレジスタ509に
出力する。
When the carry signal CC = 0, the subtracter 704 subtracts the differential waveform data DV H input from the DV H register 502 of FIG. 5 via the AND gate group 703 from the output of the adder / subtractor 702. , And outputs the subtraction result to the IV register 509 of FIG. 5 as the integration value IV for interpolation calculation.

【0075】以上の動作からわかるように、次式が成立
する。
As can be seen from the above operation, the following equation holds.

【0076】[0076]

【数5】IV=I1 −DVH (CC=0かつ
as=1の場合) 続いて、キャリー信号CC=1で、かつ、データセレク
トビットas=0の場合には、アンドゲート708の出
力が“1”、オアゲート709の出力が“1”となるた
め、インバータ710の出力が“0”となる。従って、
アンドゲート群701がオフとなり、加減算器702
は、I1 レジスタ508から入力される積分演算値I1
をそのまま減算器704に出力する。
IV = I 1 −DV H (when CC = 0 and as = 1) Then, when carry signal CC = 1 and data select bit as = 0, the output of AND gate 708. Is "1" and the output of the OR gate 709 is "1", so that the output of the inverter 710 is "0". Therefore,
The AND gate group 701 is turned off, and the adder / subtractor 702
Is the integral calculation value I 1 input from the I 1 register 508.
Is output to the subtractor 704 as it is.

【0077】減算器704は、キャリー信号CC=1の
場合は、加減算器702の出力をそのまま補間演算用積
分値IVとして、図5のIVレジスタ509に出力す
る。以上の動作からわかるように、次式が成立する。
When the carry signal CC = 1, the subtractor 704 outputs the output of the adder / subtractor 702 to the IV register 509 of FIG. 5 as the integrated value IV for interpolation calculation as it is. As can be seen from the above operation, the following equation holds.

【0078】[0078]

【数6】IV=I1 (CC=1かつa
s=0の場合) 最後に、キャリー信号CC=1で、かつ、データセレク
トビットas=1の場合には、アンドゲート706及び
708の両出力が“0”、オアゲート709の出力が
“0”となるため、インバータ710の出力が“1”と
なる。従って、アンドゲート群701がオンとなり、図
5のDVL レジスタ501から差分波形データDVL
加減算器702に入力される。
## EQU6 ## IV = I 1 (CC = 1 and a
When s = 0) Finally, when carry signal CC = 1 and data select bit as = 1, both outputs of AND gates 706 and 708 are “0” and an output of OR gate 709 is “0”. Therefore, the output of the inverter 710 becomes “1”. Therefore, the AND gate group 701 is turned on, and the differential waveform data DV L is input to the adder / subtractor 702 from the DV L register 501 in FIG.

【0079】加減算器702は、キャリー信号CC=1
の場合には、加算器として動作し、I1 レジスタ508
から入力される積分演算値I1 にアンドゲート群701
から入力される差分波形データDVL を加算し、その加
算結果を減算器704に出力する。
The adder / subtractor 702 receives the carry signal CC = 1.
In the case of, it operates as an adder, and I 1 register 508
The AND gate group 701 is added to the integral calculation value I 1 input from
The difference waveform data DV L input from the above is added, and the addition result is output to the subtractor 704.

【0080】減算器704は、キャリー信号CC=1の
場合は、加減算器702の出力をそのまま補間演算用積
分値IVとして、図5のIVレジスタ509に出力す
る。以上の動作からわかるように、次式が成立する。
When the carry signal CC = 1, the subtractor 704 outputs the output of the adder / subtractor 702 as it is to the IV register 509 of FIG. 5 as the interpolation operation integral value IV. As can be seen from the above operation, the following equation holds.

【0081】[0081]

【数7】IV=I1 +DVL (CC=1かつa
s=1の場合) 以上説明した図1の積分部106を中心とする本発明の
実施例の具体的な動作について以下に説明する。
(7) IV = I 1 + DV L (CC = 1 and a
In the case of s = 1) A specific operation of the embodiment of the present invention centering on the integrating unit 106 of FIG. 1 described above will be described below.

【0082】まず、図2で前述したように、図1の波形
メモリ104上の各アドレスに対応する記憶領域には、
図9(b) に示されるように、下位ビット部に、各アドレ
スの時点における原波形データの振幅値とその次のアド
レスの時点における原波形データの振幅値との差分波形
データDVL が、上位ビット部に、各アドレスの次のア
ドレスの時点における原波形データの振幅値と更にその
次のアドレスの時点における原波形データの振幅値との
差分波形データDVH が、組で記憶される。
First, as described above with reference to FIG. 2, the storage area corresponding to each address on the waveform memory 104 of FIG.
As shown in FIG. 9 (b), in the lower bit part, the difference waveform data DV L between the amplitude value of the original waveform data at the time of each address and the amplitude value of the original waveform data at the time of the next address, Difference waveform data DV H between the amplitude value of the original waveform data at the time point of the address next to each address and the amplitude value of the original waveform data at the time point of the next address is stored as a set in the upper bit portion.

【0083】今、図9(a) に示されるように、添え時no
w で示される任意のサンプリング周期で、上位アドレス
AD=ADnow =(波形メモリ104上のアドレス
n)、下位アドレスad=adnow とし、キャリー信号
CC=0、データセレクトビットas=0であるとす
る。
Now, as shown in FIG.
Assume that the upper address AD = AD now = (address n on the waveform memory 104), the lower address ad = ad now , the carry signal CC = 0, and the data select bit as = 0 at an arbitrary sampling period indicated by w. To do.

【0084】この場合、図5のDVL レジスタ501に
格納される差分波形データDVLnowは、波形メモリ10
4上のアドレスnの下位ビット部のデータDVLnとな
り、図5のDVH レジスタ502に格納される差分波形
データDVHnowは、波形メモリ104上のアドレスnの
上位ビット部のデータDVHnとなる。そして、as=0
であるから、図5のセレクタ503は、DVL レジスタ
501に格納された差分波形データDVLnow=DVLn
選択し、DVレジスタ504にセットされる補間演算用
差分波形データDV=DVLnow=DVLnとなる。
In this case, the differential waveform data DV Lnow stored in the DV L register 501 of FIG.
4 becomes the data DV Ln of the lower bit portion of the address n, and the differential waveform data DV Hnow stored in the DV H register 502 of FIG. 5 becomes the data DV Hn of the upper bit portion of the address n on the waveform memory 104. . And as = 0
Therefore , the selector 503 in FIG. 5 selects the differential waveform data DV Lnow = DV Ln stored in the DV L register 501, and the differential waveform data for interpolation calculation DV = DV Lnow = DV set in the DV register 504. It becomes Ln .

【0085】一方、積分演算値I1nowは、波形メモリ1
04上のアドレスn+1に対応するサンプル位置の原波
形データの振幅に対応しており、従って、CC=0、a
s=0であるから、図5のIVレジスタ509にセット
される補間演算用積分値IV now は、数4式より、 IVnow =I1now−DVLnow−DVHnow として計算され、波形メモリ104上のアドレスnに対
応するサンプル位置の原波形データの振幅に対応する値
になる。
On the other hand, the integral calculation value I1 nowIs the waveform memory 1
Source wave of sample position corresponding to address n + 1 on 04
It corresponds to the amplitude of the shape data, and therefore CC = 0, a
Since s = 0, set in the IV register 509 of FIG.
Integrated value IV for interpolation calculation nowFrom the equation (4), IVnow= I1 now-DVLnow-DVHnow Is calculated as
A value corresponding to the amplitude of the original waveform data at the corresponding sample position
become.

【0086】この場合、図1の補間演算部107は、数
1式より、 Dnow =IVnow +DVLnow×adnow で示される補間演算を実行することによって、波形デー
タ出力Dout =Dnow を算出する。この演算の正当性
は、図9(a) の各データの位置関係から明らかである。
[0086] In this case, the interpolation operation unit 107 of FIG. 1, from equation 1, by performing the interpolation calculation represented by D now = IV now + DV Lnow × ad now, the waveform data output D out = D now calculate. The correctness of this calculation is clear from the positional relationship of each data in FIG. 9 (a).

【0087】また、積分演算値更新値Imnowは、CC=
0であるから、数2式により、 Imnow=I1now として計算され、図5の積分演算値メモリ507の内容
は更新されない。
Further, the integral calculation value update value I mnow is CC =
Since it is 0, it is calculated by the equation 2 as I mnow = I 1now , and the contents of the integral operation value memory 507 in FIG. 5 are not updated.

【0088】ここで第1の場合として、図9(a) に示さ
れるように、歩進幅PD=PDnextとすれば、添え字no
w で示されるサンプリング周期の次の添え字nextで示さ
れるサンプリング周期で、現在の実数アドレスデータに
上記歩進幅が加算される結果、上位アドレスADは、A
next=(波形メモリ1107上のアドレスn)でAD
now から変化しないためキャリー信号CC=0であり、
また、下位アドレスadnextは0.5より小さいため、
データセレクトビットas=0である。
Here, in the first case, as shown in FIG. 9A, if the step width PD = PD next , the subscript no.
As a result of the above step size being added to the current real number address data at the sampling period indicated by the next index next to the sampling period indicated by w, the upper address AD is A
AD at D next = (address n on waveform memory 1107)
Since it does not change from now, the carry signal CC = 0,
Since the lower address ad next is smaller than 0.5,
The data select bit as = 0.

【0089】従って、差分波形データDVLnext はDV
Lnow=DVLnのままであり、差分波形データDVHnext
もDVHnow=DVHnのままであり、as=0だから、図
5のDVレジスタ504にセットされる補間演算用差分
波形データDV=DVLnext=DVLnとなる。
Therefore, the differential waveform data DV Lnext is DV
Lnow = DV Ln remains and the differential waveform data DV Hnext
Also holds DV Hnow = DV Hn , and as = 0, so that the interpolation calculation difference waveform data DV = DV Lnext = DV Ln set in the DV register 504 of FIG.

【0090】また、積分演算値I1next はImnow=I
1nowに等しく、波形メモリ104上のアドレスn+1に
対応するサンプル位置の原波形データの振幅に対応して
いる。従って、CC=0、as=0であるから、図5の
IVレジスタ509にセットされる補間演算用積分値I
nextは、数4式より、 IVnext=I1next −DVLnext −DVHnext として計算され、波形メモリ104上のアドレスnに対
応するサンプル位置の原波形データの振幅に対応する値
になる。
Further, the integral calculation value I 1next is I mnow = I
It is equal to 1now and corresponds to the amplitude of the original waveform data at the sample position corresponding to the address n + 1 on the waveform memory 104. Therefore, since CC = 0 and as = 0, the integral value I for interpolation calculation set in the IV register 509 of FIG.
V next is calculated as IV next = I 1next −DV Lnext −DV Hnext from the equation 4, and becomes a value corresponding to the amplitude of the original waveform data at the sample position corresponding to the address n on the waveform memory 104.

【0091】この場合、図1の補間演算部107は、数
1式より、 Dnext=IVnext+DVLnext ×adnext で示される補間演算を実行することによって、波形デー
タ出力Dout =Dnextを算出する。この演算の正当性
は、図9(a) の各データの位置関係から明らかである。
In this case, the interpolation calculation unit 107 of FIG. 1 executes the interpolation calculation represented by D next = IV next + DV Lnext × ad next from the formula 1 to obtain the waveform data output D out = D next . calculate. The correctness of this calculation is clear from the positional relationship of each data in FIG. 9 (a).

【0092】また、積分演算値更新値Imnext は、CC
=0であるから、数2式により、 Imnext =I1next として計算され、図5の積分演算値メモリ507の内容
は更新されない。
Further, the integral calculation value update value I mnext is CC
Since = 0, the equation (2 ) is calculated as I mnext = I 1next , and the contents of the integral operation value memory 507 in FIG. 5 are not updated.

【0093】これに対して、第2の場合として、図9
(a) に示されるように、歩進幅PDがPDnextではなく
PDnext′であるとするならば、添え字now で示される
サンプリング周期の次の添え字next′で示されるサンプ
リング周期で、現在の実数アドレスデータに上述の歩進
幅が加算される結果、上位アドレスADは、ADnext
=(波形メモリ1107上のアドレスn)でADnow
ら変化しないためキャリー信号CC=0であり、また、
下位アドレスadnext′は0.5より大きいため、デー
タセレクトビットas=1となる。
On the other hand, as a second case, FIG.
As shown in (a), if the step size PD is PD next ′ instead of PD next ′, in the sampling period indicated by the subscript next ′ next to the sampling period indicated by the subscript now, As a result of the above step width being added to the current real number address data, the upper address AD is AD next ′.
= (Address n on the waveform memory 1107), the carry signal CC = 0 because it does not change from AD now , and
Since the lower address ad next 'is larger than 0.5, the data select bit as = 1.

【0094】従って、差分波形データDVLnext ′はD
Lnow=DVLnのままであり、差分波形データDV
Hnext ′もDVHnow=DVHnのままであり、一方、as
=1であるから、図5のDVレジスタ504にセットさ
れる補間演算用差分波形データDV=DVHnext ′=D
Hnとなる。
Therefore, the difference waveform data DV Lnext ′ is D
V Lnow = DV Ln remains and the difference waveform data DV
Hnext 'also remains DV Hnow = DV Hn , while as
= 1, the differential waveform data for interpolation calculation DV = DV Hnext ′ = D set in the DV register 504 of FIG.
It becomes V Hn .

【0095】また、積分演算値I1next ′はImnow=I
1nowに等しく、波形メモリ104上のアドレスn+1に
対応するサンプル位置の原波形データの振幅に対応して
いる。従って、CC=0、as=1だから、図5のIV
レジスタ509にセットされる補間演算用積分値IV
next′は、数5式より、 IVnext′=I1next ′−DVHnext ′ として計算され、波形メモリ104上のアドレスnに対
応するサンプル位置の次のサンプル位置の原波形データ
の振幅に対応する値になる。
Further, the integral operation value I 1next ′ is I mnow = I
It is equal to 1now and corresponds to the amplitude of the original waveform data at the sample position corresponding to the address n + 1 on the waveform memory 104. Therefore, since CC = 0 and as = 1, IV in FIG.
Interpolation calculation integral value IV set in the register 509
next 'is calculated as IV next ′ = I 1next ′ −DV Hnext ′ from the equation 5, and corresponds to the amplitude of the original waveform data at the sample position next to the sample position corresponding to the address n on the waveform memory 104. It becomes a value.

【0096】この場合、図1の補間演算部107は、数
1式より、 Dnext′=IVnext′+DVHnext ′×adnext′ で示される補間演算を実行することによって、波形デー
タ出力Dout =Dnext′を算出する。この演算の正当性
は、図9(a) の各データの位置関係から明らかである。
In this case, the interpolation calculation unit 107 in FIG. 1 executes the interpolation calculation represented by D next ′ = IV next ′ + DV Hnext ′ × ad next ′ from the equation 1 to output the waveform data D out = D next 'is calculated. The correctness of this calculation is clear from the positional relationship of each data in FIG. 9 (a).

【0097】また、積分演算値更新値Imnext ′は、C
C=0であるから、数2式より、 Imnext ′=I1next ′ として計算され、図5の積分演算値メモリ507の内容
は更新されない。
Further, the integral calculation value update value I mnext ′ is C
Since C = 0, it is calculated as I mnext ′ = I 1next ′ from the equation (2), and the contents of the integral operation value memory 507 in FIG. 5 are not updated.

【0098】第3の場合として、図10(a) に示される
ように、歩進幅PD=PDnextとすれば、添え字now で
示されるサンプリング周期の次の添え字nextで示される
サンプリング周期で、現在の実数アドレスデータに上記
歩進幅が加算される結果、上位アドレスADは、上位ア
ドレスADはADnext=(波形メモリ1107上のアド
レスn+1)でADnow から+1進み、キャリー信号C
C=1となる。また、下位アドレスadnextは0.5よ
り小さいため、データセレクトビットas=0である。
In the third case, as shown in FIG. 10 (a), if the step width PD = PD next , the sampling period indicated by the next index next to the sampling period indicated by the subscript now. Then, as a result of adding the step width to the current real number address data, the upper address AD is advanced by +1 from AD now at the higher address AD at AD next = (address n + 1 on the waveform memory 1107), and the carry signal C
C = 1. Since the lower address ad next is smaller than 0.5, the data select bit as = 0.

【0099】この場合、差分波形データDVLnext は、
図10(b) に示される波形メモリ104上のアドレスn
+1の下位ビット部のデータDVLn+1となり、差分波形
データDVHnext は、波形メモリ104上のアドレスn
+1の上位ビット部のデータDVHn+1となる。そして、a
s=0であるから、図5のDVレジスタ504にセット
される補間演算用差分波形データDV=DVLnext =D
Ln+1となる。
In this case, the differential waveform data DV Lnext is
Address n on the waveform memory 104 shown in FIG.
The data of the lower bit portion of +1 becomes DV Ln + 1 , and the differential waveform data DV Hnext is the address n on the waveform memory 104.
It becomes the data DV Hn + 1 of the high-order bit portion of +1. And a
Since s = 0, the differential waveform data for interpolation calculation set in the DV register 504 of FIG. 5 DV = DV Lnext = D
It becomes V Ln + 1 .

【0100】また、積分演算値I1next は、図9(a) の
場合と同様、Imnow=I1nowに等しく、波形メモリ10
4上のアドレスn+1に対応するサンプル位置の原波形
データの振幅に対応している。従って、CC=1、as
=0であるから、IVレジスタ509にセットされる補
間演算用積分値IVnextは、数6式より、 IVnext=I1next として計算され、波形メモリ104上のアドレスn+1
に対応するサンプル位置の原波形データの振幅に対応す
る値になる。
Further, the integrated operation value I 1next is equal to I mnow = I 1now , as in the case of FIG.
4 corresponds to the amplitude of the original waveform data at the sample position corresponding to address n + 1. Therefore, CC = 1, as
= 0, the integral value IV next for interpolation calculation set in the IV register 509 is calculated from equation 6 as IV next = I 1next , and the address n + 1 on the waveform memory 104 is calculated.
Is a value corresponding to the amplitude of the original waveform data at the sample position corresponding to.

【0101】この場合、図1の補間演算部107は、数
1式より、 Dnext=IVnext+DVLnext ×adnext で示される補間演算を実行することによって、波形デー
タ出力Dout =Dnextを算出する。この演算の正当性
は、図10(a) の各データの位置関係から明らかであ
る。
In this case, the interpolation calculation unit 107 in FIG. 1 executes the interpolation calculation represented by the following equation 1 by the following equation: D next = IV next + DV Lnext × ad next to obtain the waveform data output D out = D next . calculate. The correctness of this calculation is clear from the positional relationship of each data in FIG.

【0102】また、積分演算値更新値Imnext は、CC
=1であるから、数3式により、 Imnext =I1next +DVLnext +DVHnext として計算され、図5の積分演算値メモリ507の内容
は、波形メモリ104上のアドレスn+2に対応するサ
ンプル位置の原波形データの振幅に対応する値に更新さ
れる。
Further, the integral calculation value update value I mnext is CC
Since = 1, it is calculated by the following equation 3 as I mnext = I 1next + DV Lnext + DV Hnext , and the content of the integral operation value memory 507 in FIG. It is updated to a value corresponding to the amplitude of the waveform data.

【0103】第4の場合として、図10(a) に示される
ように、歩進幅PD=PDnext′とすれば、添え字now
で示されるサンプリング周期の次の添え字next′で示さ
れるサンプリング周期で、現在の実数アドレスデータに
上記歩進幅が加算される結果、上位アドレスADは、上
位アドレスADはADnext′=(波形メモリ1107上
のアドレスn+1)でADnow から+1進み、キャリー
信号CC=1となる。また、下位アドレスadnext′は
0.5より大きいため、データセレクトビットas=1
である。
As a fourth case, as shown in FIG. 10A, if the step size PD = PD next ', the subscript now.
As a result of adding the above step width to the current real number address data at the sampling period indicated by the subscript next 'next to the sampling period indicated by, the upper address AD, the upper address AD is AD next ' = (waveform At the address n + 1) on the memory 1107, +1 is advanced from AD now , and the carry signal CC = 1. Since the lower address ad next 'is larger than 0.5, the data select bit as = 1
Is.

【0104】この場合、差分波形データDVLnext
は、図10(b) に示される波形メモリ104上のアドレ
スn+1の下位ビット部のデータDVLn+1となり、差分
波形データDVHnext ′は、波形メモリ104上のアド
レスn+1の上位ビット部のデータDVHn+1となる。そし
て、as=1だから、図5のDVレジスタ504にセッ
トされる補間演算用差分波形データDV=DVHnext
=DVHn+1となる。
In this case, the differential waveform data DV Lnext '
Is the data DV Ln + 1 of the lower bit part of the address n + 1 on the waveform memory 104 shown in FIG. 10B, and the differential waveform data DV Hnext ′ is the upper bit part of the address n + 1 on the waveform memory 104. Data DV Hn + 1 . Since as = 1, the differential waveform data for interpolation calculation DV = DV Hnext ′ set in the DV register 504 of FIG.
= DV Hn + 1 .

【0105】また、積分演算値I1next ′は、図9(a)
の場合と同様、Imnow=I1nowに等しく、波形メモリ1
04上のアドレスn+1に対応するサンプル位置の原波
形データの振幅に対応する。従って、CC=1、as=
1であるから、図5のIVレジスタ509にセットされ
る補間演算用積分値IVnext′は、数7式より、 IVnext′=I1next ′+DVLnext ′ として計算され、波形メモリ104上のアドレスn+1
に対応するサンプル位置の次のサンプル位置の原波形デ
ータの振幅に対応する値になる。
Further, the integral calculation value I 1next ′ is shown in FIG.
As in the case of, I mnow = I 1now and the waveform memory 1
04 corresponds to the amplitude of the original waveform data at the sample position corresponding to the address n + 1. Therefore, CC = 1, as =
Since it is 1, the integral value IV next ′ for interpolation calculation set in the IV register 509 of FIG. 5 is calculated as IV next ′ = I 1next ′ + DV Lnext ′ from the equation 7, and the address on the waveform memory 104 n + 1
Is a value corresponding to the amplitude of the original waveform data at the sample position next to the sample position corresponding to.

【0106】この場合、図1の補間演算部107は、数
1式より、 Dnext′=IVnext′+DVHnext ′×adnext′ で示される補間演算を実行することによって、波形デー
タ出力Dout =Dnext′を算出する。この演算の正当性
は、図10(a) の各データの位置関係から明らかであ
る。
In this case, the interpolation calculation unit 107 of FIG. 1 executes the interpolation calculation represented by the following formula 1 by D next ′ = IV next ′ + DV Hnext ′ × ad next ′, thereby outputting the waveform data output D out = D next 'is calculated. The correctness of this calculation is clear from the positional relationship of each data in FIG.

【0107】また、積分演算値更新値Imnext ′は、C
C=1であるから、数3式より、 Imnext ′=I1next ′+DVLnext ′+DVHnext ′ として計算され、図5の積分演算値メモリ507の内容
は、波形メモリ104上のアドレスn+2に対応するサ
ンプル位置の原波形データの振幅に対応する値に更新さ
れる。
Further, the integral calculation value update value I mnext ′ is C
Since C = 1, it is calculated from the formula 3 as I mnext ′ = I 1next ′ + DV Lnext ′ + DV Hnext ′, and the contents of the integral operation value memory 507 in FIG. The value is updated to a value corresponding to the amplitude of the original waveform data at the sample position.

【0108】以上の図9と図10の説明から明らかなよ
うに、原波形データが有するピッチの2倍未満(1オク
ターブ上未満)のピッチを有する波形データであれば、
どのような場合でも、サンプリング周期毎に波形メモリ
を1音あたり1回アクセスするだけで出力することが可
能となる。
As is clear from the above description of FIGS. 9 and 10, if the waveform data has a pitch less than twice the pitch of the original waveform data (less than one octave above),
In any case, the waveform memory can be output by accessing the waveform memory once for each sound in each sampling cycle.

【0109】以上説明した実施例は、1チャネル分の波
形データ出力Dout を出力するための構成を有している
が、同時に複数チャネル分の波形データ出力を出力可能
とするためには、図1の制御部102、図3のアドレス
カウンタメモリ302とピッチメモリ305、及び図4
のサブデータメモリ402を、複数チャネル分のデータ
を記憶、出力できるように構成し、複数チャネル分のア
ドレス更新及び補間演算を実行できるようにサンプリン
グ周期を時分割し、図8の動作タイミングチャートと同
様の制御を行えばよい。
Although the embodiment described above has a configuration for outputting the waveform data output D out for one channel, in order to be able to output the waveform data output for a plurality of channels at the same time, 1, the control unit 102, the address counter memory 302 and the pitch memory 305 in FIG. 3, and FIG.
8 is configured to store and output data for a plurality of channels, and the sampling cycle is time-divided so that addresses can be updated and interpolation operations for a plurality of channels can be performed. Similar control may be performed.

【0110】なお、本発明は、ADPCM方式に適用す
ることも可能である。更に、上述の実施例では、波形メ
モリ104上の同一アドレスで示される記憶領域には、
図2に示されるように、その下位ビット部と上位ビット
部に、1つずつ計2つの差分波形データが記憶され、1
回のメモリアクセスで2つの差分波形データが同時に読
み出される構成を有しているが、ダイナミックレンジと
の関係で、同一アドレスで示される記憶領域により多く
の複数の差分波形データを記憶させ、それらを1回のメ
モリアクセスで同時に読み出すように構成することも可
能である。
The present invention can also be applied to the ADPCM system. Further, in the above-described embodiment, the storage area indicated by the same address on the waveform memory 104 is
As shown in FIG. 2, a total of two differential waveform data are stored in each of the lower bit part and the upper bit part, and
Two differential waveform data are simultaneously read by one memory access, but in relation to the dynamic range, a plurality of differential waveform data are stored in the storage area indicated by the same address and they are stored. It is also possible to make a configuration such that the memory is read simultaneously by one memory access.

【0111】[0111]

【発明の効果】本発明によれば、波形記憶手段に記憶さ
れた差分波形データによって表される原波形データの1
サンプル分の幅以上の歩進幅が歩進データとして指定さ
れ、原波形データが有するピッチ以上のピッチを有する
波形データ出力が再生される場合でも、サンプリング周
期毎に波形記憶手段を1音あたり1回アクセスするだけ
で波形データ出力を算出することが可能となる。
According to the present invention, one of the original waveform data represented by the differential waveform data stored in the waveform storage means is used.
Even when the step width equal to or larger than the sample width is designated as the step data and the waveform data output having the pitch equal to or greater than the pitch of the original waveform data is reproduced, the waveform storage means is set to 1 per tone for each sampling period. It is possible to calculate the waveform data output with just one access.

【0112】従来、サンプリング周期毎に1音あたり2
回の波形メモリへのアクセスが発生するDPCM方式又
はADPCM方式の波形データ出力音源装置において、
サンプリング周波数を48kHzとした場合に、サンプ
リング周期は 1/48000=20.83μsec となる。一方、波形
メモリを構成する標準的なROMのアクセスタイムは20
0nsec である。従って、同時に出力可能な波形データ
出力のチャネル数は、52チャネルが限界となる。ま
た、音質向上のために2つの波形データ出力をミックス
して使用したり、波形データ出力をステレオ(2チャネ
ル)で出力させたりする場合は、同時に出力可能な波形
データ出力のチャネル数は、上述のチャネル数の半分の
26チャネルとなってしまう。更に、原波形データが有
するピッチ以上のピッチを有する波形データ出力を再生
しようとする場合には、波形メモリに対するアクセスが
更に増加し、チャネル数は更に少なくなってしまう。こ
れでは、PCM方式の波形データ出力音源装置を電子ピ
アノなどに搭載することはできない。
Conventionally, 2 per sound is taken every sampling period.
In a waveform data output sound source device of the DPCM system or the ADPCM system in which a single access to the waveform memory occurs,
When the sampling frequency is 48kHz, the sampling period is 1/48000 = 20.83μsec. On the other hand, the access time of the standard ROM that constitutes the waveform memory is 20
It is 0 nsec. Therefore, the number of waveform data output channels that can be simultaneously output is limited to 52 channels. When two waveform data outputs are mixed and used for improving sound quality, or when the waveform data outputs are output in stereo (2 channels), the number of channels of waveform data output that can be output at the same time is as described above. This results in 26 channels, which is half the number of channels. Further, when reproducing a waveform data output having a pitch equal to or greater than the pitch of the original waveform data, access to the waveform memory is further increased and the number of channels is further reduced. With this, the PCM type waveform data output sound source device cannot be mounted on an electronic piano or the like.

【0113】これに対して、本発明による波形データ出
力音源装置では、原波形データが有するピッチ以上のピ
ッチを有する波形データ出力を再生しようとする場合で
も、サンプリング周期毎に発生する波形メモリへのアク
セスの回数は1音あたり1回だけなので、同時に出力可
能な波形データ出力のチャネル数は104チャネルとな
る。即ち、本発明による波形データ出力音源装置を使用
することにより、88鍵の電子ピアノでフルポリフォニ
ックが実現可能となる。
On the other hand, in the waveform data output sound source device according to the present invention, even when an attempt is made to reproduce the waveform data output having a pitch equal to or greater than the pitch of the original waveform data, the waveform data output to the waveform memory generated at each sampling cycle is performed. Since the number of accesses is only once per sound, the number of waveform data output channels that can be simultaneously output is 104. That is, by using the waveform data output sound source device according to the present invention, full polyphonic can be realized with an 88-key electronic piano.

【0114】また、音質向上のために2つの波形データ
出力をミックスして使用したり波形データ出力をステレ
オで出力させたりする場合でも、同時に出力可能な波形
データ出力のチャネル数は52チャネルを確保できる。
Even when two waveform data outputs are mixed and used for improving sound quality, or the waveform data outputs are output in stereo, the number of waveform data outputs that can be simultaneously output is 52. it can.

【0115】更に、同時に出力可能な波形データ出力の
チャネル数を増加させる必要がない場合には、処理に余
裕ができるため、サンプリング周波数を従来の2倍に高
めることも可能となり、音質の大幅な向上を図ることが
可能となる。
Furthermore, when it is not necessary to increase the number of channels of waveform data output that can be output simultaneously, the processing frequency can be increased, so that the sampling frequency can be doubled as compared with the conventional one, and the sound quality can be greatly improved. It is possible to improve.

【図面の簡単な説明】[Brief description of drawings]

【図1】本発明の実施例の全体構成図である。FIG. 1 is an overall configuration diagram of an embodiment of the present invention.

【図2】波形メモリの記憶内容を示した図である。FIG. 2 is a diagram showing stored contents of a waveform memory.

【図3】本発明の実施例におけるアドレスカウンタ部の
構成図である。
FIG. 3 is a configuration diagram of an address counter unit in the embodiment of the present invention.

【図4】本発明の実施例におけるアドレスカウンタ部の
データフォーマットを示した図である。
FIG. 4 is a diagram showing a data format of an address counter unit in the embodiment of the present invention.

【図5】本発明の実施例における積分部の構成を示した
図である。
FIG. 5 is a diagram showing a configuration of an integrating unit in the embodiment of the present invention.

【図6】積分値演算部の構成図(Im 算出回路)であ
る。
FIG. 6 is a configuration diagram (I m calculation circuit) of an integral value calculation unit.

【図7】積分値演算部の構成図(IV算出回路)であ
る。
FIG. 7 is a configuration diagram (IV calculation circuit) of an integrated value calculation unit.

【図8】本発明の実施例の動作タイミングチャートであ
る。
FIG. 8 is an operation timing chart of the embodiment of the present invention.

【図9】本発明の実施例の説明図(CC=0の場合)で
ある。
FIG. 9 is an explanatory diagram of an example of the present invention (when CC = 0).

【図10】本発明の実施例の説明図(CC=1の場合)
である。
FIG. 10 is an explanatory diagram of an embodiment of the present invention (when CC = 1)
Is.

【図11】従来例の構成図である。FIG. 11 is a configuration diagram of a conventional example.

【図12】従来例の動作タイミングチャートである。FIG. 12 is an operation timing chart of a conventional example.

【図13】従来例における補間演算部の構成図である。FIG. 13 is a configuration diagram of an interpolation calculation unit in a conventional example.

【図14】従来のDPCM方式の原理説明図である。FIG. 14 is a diagram illustrating the principle of a conventional DPCM method.

【図15】従来のDPCM方式の問題点の説明図であ
る。
FIG. 15 is an explanatory diagram of problems in the conventional DPCM method.

【符号の説明】[Explanation of symbols]

101 音源LSI 102 制御部 103 アドレスカウンタ部 104 波形メモリ 105 データレジスタ 106 積分部 107 補間演算部 301 セレクタ 302 アドレスカウンタメモリ 303 上位アドレス加算器 304 上位アドレスレジスタ 305 ピッチメモリ 306 アンドゲート群 307 下位アドレス加算器 308 下位アドレスレジスタ 309 キャリーレジスタ 310 データセレクトビットレジスタ 501 DVL レジスタ 502 DVH レジスタ 503 セレクタ 504 DVレジスタ 505 積分値演算部 506 アンドゲート群 507 積分演算値メモリ 508 I1 レジスタ 509 IVレジスタ 601、603 加算器 602 アンドゲート群 701、703 アンドゲート群 702 加減算器 704 減算器 705、707、710 インバータ 706、708 アンドゲート 709 オアゲート ADRS アドレスカウンタ値 AD 上位アドレス ad 下位アドレス as データセレクトビット CC キャリー信号 PD ピッチデータ On 制御信号 Dout 波形データ出力 DVL 、DVH 差分波形データ DV 補間演算用差分波形データ IV 補間演算用積分値 Im 積分演算値更新値 I1 積分演算値101 tone generator LSI 102 control unit 103 address counter unit 104 waveform memory 105 data register 106 integration unit 107 interpolation calculation unit 301 selector 302 address counter memory 303 upper address adder 304 upper address register 305 pitch memory 306 AND gate group 307 lower address adder 308 Lower address register 309 Carry register 310 Data select bit register 501 DV L register 502 DV H register 503 Selector 504 DV register 505 Integral value calculation unit 506 AND gate group 507 Integral operation value memory 508 I 1 register 509 IV register 601, 603 Addition Device 602 AND gate group 701, 703 AND gate group 702 Adder / subtractor 704 Subtractor 705, 70 , 710 inverter 706, 708 AND gate 709 OR gates ADRS address counter value AD upper address ad lower address as data select bit CC carry signal PD pitch data On the control signal D out waveform data output DV L, DV H differential waveform data DV interpolation calculation Differential waveform data IV Interpolation calculation integration value I m Integration calculation value update value I 1 Integration calculation value

Claims (1)

【特許請求の範囲】[Claims] 【請求項1】 サンプリング周期毎に、アドレスデータ
の値を歩進データに対応する値ずつ更新しながら、その
整数部である上位アドレスデータとその小数部である下
位アドレスデータをそれぞれ出力し、前記上位アドレス
データの値が1増加する場合にその旨を示すアドレス変
更データを出力するアドレスカウンタ手段と、 各アドレスの記憶領域に所定数ずつの差分波形データを
記憶する波形記憶手段と、 前記アドレスカウンタ手段から出力される前記上位アド
レスデータによって前記波形記憶手段をアクセスするこ
とにより、前記波形記憶手段から前記所定数の差分波形
データを同時に読み出す波形アクセス手段と、 前記サンプリング周期毎に、前記下位アドレスデータの
値と前記アドレス変更データに基づいて、前記波形アク
セス手段によって前記波形記憶手段から読み出された前
記所定数の差分波形データのうち何れか1つ以上を選択
し、該選択された差分波形データを累算する累算手段
と、 前記サンプリング周期毎に、前記下位アドレスデータの
値と前記アドレス変更データに基づいて、前記波形アク
セス手段によって前記波形記憶手段から読み出された前
記所定数の差分波形データのうち何れか1つと前記累算
手段が出力する累算値を使用して補間演算を実行し、波
形データ出力を出力する補間演算実行手段と、 を有することを特徴とする波形データ出力装置。
1. An upper-order address data, which is an integer part thereof, and a lower-order address data, which is a fractional part thereof, are each output while updating the value of the address data by the value corresponding to the step data for each sampling cycle, Address counter means for outputting address change data indicating that when the value of the higher-order address data is incremented by 1, waveform storage means for storing a predetermined number of difference waveform data in the storage area of each address, and the address counter Waveform access means for simultaneously reading the predetermined number of differential waveform data from the waveform storage means by accessing the waveform storage means with the upper address data output from the means; and the lower address data for each sampling period. Waveform access means based on the value of the address and the address change data. Accumulating means for accumulating the selected difference waveform data by selecting any one or more of the predetermined number of difference waveform data read from the waveform storage means by: Based on the value of the lower address data and the address change data, any one of the predetermined number of difference waveform data read from the waveform storage means by the waveform access means and the accumulation output by the accumulation means. A waveform data output device, comprising: interpolation calculation executing means for executing an interpolation calculation using a calculated value and outputting a waveform data output.
JP34286992A 1992-12-22 1992-12-22 Waveform data output device Expired - Fee Related JP3252296B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP34286992A JP3252296B2 (en) 1992-12-22 1992-12-22 Waveform data output device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP34286992A JP3252296B2 (en) 1992-12-22 1992-12-22 Waveform data output device

Publications (2)

Publication Number Publication Date
JPH06186976A true JPH06186976A (en) 1994-07-08
JP3252296B2 JP3252296B2 (en) 2002-02-04

Family

ID=18357135

Family Applications (1)

Application Number Title Priority Date Filing Date
JP34286992A Expired - Fee Related JP3252296B2 (en) 1992-12-22 1992-12-22 Waveform data output device

Country Status (1)

Country Link
JP (1) JP3252296B2 (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007072599A (en) * 2005-09-05 2007-03-22 Fuji Xerox Co Ltd Waveform data processing program, method and apparatus, and liquid droplet discharge apparatus
JP2008046175A (en) * 2006-08-11 2008-02-28 Casio Comput Co Ltd Waveform generator and waveform generation processing program
JP2009265546A (en) * 2008-04-30 2009-11-12 Casio Comput Co Ltd Waveform generator and waveform generation processing program

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007072599A (en) * 2005-09-05 2007-03-22 Fuji Xerox Co Ltd Waveform data processing program, method and apparatus, and liquid droplet discharge apparatus
JP4626454B2 (en) * 2005-09-05 2011-02-09 富士ゼロックス株式会社 Waveform generation method, waveform generation program, waveform generation apparatus, liquid proper discharge method, liquid proper discharge program, and liquid proper discharge apparatus
JP2008046175A (en) * 2006-08-11 2008-02-28 Casio Comput Co Ltd Waveform generator and waveform generation processing program
JP2009265546A (en) * 2008-04-30 2009-11-12 Casio Comput Co Ltd Waveform generator and waveform generation processing program

Also Published As

Publication number Publication date
JP3252296B2 (en) 2002-02-04

Similar Documents

Publication Publication Date Title
US4715257A (en) Waveform generating device for electronic musical instruments
JP3175179B2 (en) Digital pitch shifter
US9040800B2 (en) Musical tone signal generating apparatus
US5283386A (en) Musical-tone signal generating apparatus and musical-tone controlling apparatus including delay means and automatic reset means
JP3252296B2 (en) Waveform data output device
JP2950461B2 (en) Tone generator
JPH06195085A (en) Waveform data output device
JP3006095B2 (en) Musical sound wave generator
JP3223560B2 (en) Waveform data reading device
JP2576614B2 (en) Processing equipment
JP3435702B2 (en) Music generator
JP2608938B2 (en) Waveform interpolation device
JP2904576B2 (en) Waveform generator
JP2530695Y2 (en) Electronic musical instrument address controller
JP2558245B2 (en) Pitch control device
JP2768241B2 (en) Signal processing device
JP2684820B2 (en) Surround circuit
JPS5846036B2 (en) electronic musical instruments
JP3017042B2 (en) Speech synthesizer
JP3651675B2 (en) Electronic musical instruments
JPH0519766A (en) Interpolating circuit of electronic musical instrument
JPH09281969A (en) Electronic musical instrument
JPS5926790A (en) Combination musical tone generator for musical instrument
JPH09146549A (en) Delay device
JPH05143066A (en) Musical tone controller

Legal Events

Date Code Title Description
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20011016

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20071122

Year of fee payment: 6

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20081122

Year of fee payment: 7

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20081122

Year of fee payment: 7

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20091122

Year of fee payment: 8

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20101122

Year of fee payment: 9

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20101122

Year of fee payment: 9

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20111122

Year of fee payment: 10

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20111122

Year of fee payment: 10

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20121122

Year of fee payment: 11

LAPS Cancellation because of no payment of annual fees