JP2790066B2 - Tone signal generator and waveform memory read-out interpolator - Google Patents
Tone signal generator and waveform memory read-out interpolatorInfo
- Publication number
- JP2790066B2 JP2790066B2 JP6323423A JP32342394A JP2790066B2 JP 2790066 B2 JP2790066 B2 JP 2790066B2 JP 6323423 A JP6323423 A JP 6323423A JP 32342394 A JP32342394 A JP 32342394A JP 2790066 B2 JP2790066 B2 JP 2790066B2
- Authority
- JP
- Japan
- Prior art keywords
- waveform data
- waveform
- time
- interpolation
- tone
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Landscapes
- Electrophonic Musical Instruments (AREA)
Description
【0001】[0001]
【産業上の利用分野】この発明は、楽音波形の時系列サ
ンプルデータをメモリから読み出すことによりデジタル
楽音信号を出力する楽音信号発生装置および該楽音信号
発生装置における波形データの補間演算処理を行う波形
メモリ読出補間装置に関する。BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a tone signal generator for outputting a digital tone signal by reading time series sample data of a tone waveform from a memory, and a waveform for performing an interpolation operation of waveform data in the tone signal generator. The present invention relates to a memory read interpolation device.
【0002】[0002]
【従来の技術】電子楽器の音源として、楽音波形の時系
列サンプルデータ(以下、波形データという)を予めメ
モリに記憶しておき、この波形データを楽音発生指示に
応答して逐次読み出すことにより楽音信号を出力する波
形読み出し方式の音源が知られている。この波形読み出
し方式の音源は、ピッチ同期方式音源とピッチ非同期方
式音源に大別される。2. Description of the Related Art As a sound source of an electronic musical instrument, time series sample data (hereinafter referred to as "waveform data") of a musical tone waveform is stored in a memory in advance, and the waveform data is sequentially read out in response to a musical tone generation instruction. 2. Description of the Related Art A sound source of a waveform readout type for outputting a signal is known. The sound source of the waveform readout method is roughly classified into a pitch synchronous method sound source and a pitch asynchronous method sound source.
【0003】ここで、ピッチ同期方式音源は、発生すべ
き楽音の音高に比例した読み出し周波数に従って波形メ
モリから波形データを読み出すことにより楽音信号を出
力するものである。また、ピッチ非同期方式の音源は、
発生すべき楽音の音高に関係なく常に一定の読み出し周
波数に従って波形メモリから波形データを読み出し、こ
の波形データに基づいて楽音信号を発生するものであ
る。Here, the pitch synchronous type sound source outputs a tone signal by reading waveform data from a waveform memory in accordance with a read frequency proportional to the pitch of a tone to be generated. Also, pitch asynchronous type sound source
The waveform data is always read from the waveform memory in accordance with a constant read frequency regardless of the pitch of a musical tone to be generated, and a tone signal is generated based on the waveform data.
【0004】ところで、楽音波形をサンプリングするこ
とにより波形データ列を作成した場合、この波形データ
列には元の波形に対応したスペクトルの他、このスペク
トルをサンプリング周波数の整数倍の各周波数を対称軸
として各々対称配置したスペクトル分布のイメージスペ
クトルが含まれることとなる。例えば図13に例示する
ようにサンプリング前の楽音波形が24kHz以下のス
ペクトルから成り立っている場合、この楽音波形をサン
プリング周波数fs=48kHzのサンプリングクロッ
クでサンプリングすると、この結果得られる波形データ
列には図14に示すように48±24kHz、96±2
4kHz、…、m・fs±24kHz、…の周波数範囲
のイメージスペクトルが含まれることとなる。このよう
にして発生されるイメージスペクトルが本来の楽音波形
のスペクトルと周波数軸上において重複すると、いわゆ
る折り返し雑音となる。この折り返し雑音は、一旦発生
すると除去することが極めて困難であり、折り返し雑音
を含んだ波形データがそのまま楽音として再生されると
耳障りな雑音として聴取されることとなる。従って、質
の良い楽音再生を行うためには、波形データの採取から
その波形データを楽音信号として再生するまでの全過程
を通じて折り返し雑音が生じないように留意する必要が
ある。When a waveform data sequence is created by sampling a musical sound waveform, the waveform data sequence includes, in addition to the spectrum corresponding to the original waveform, the spectrum as an axis of symmetry which is an integral multiple of the sampling frequency. , Image spectra of spectral distributions arranged symmetrically are included. For example, as shown in FIG. 13, when a musical tone waveform before sampling is composed of a spectrum of 24 kHz or less, if this musical tone waveform is sampled with a sampling clock having a sampling frequency fs = 48 kHz, the resulting waveform data string has 48 ± 24 kHz, 96 ± 2 as shown in FIG.
The image spectrum in the frequency range of 4 kHz,..., M · fs ± 24 kHz,. If the image spectrum thus generated overlaps the spectrum of the original musical sound waveform on the frequency axis, it will be called aliasing noise. This aliasing noise is extremely difficult to remove once generated, and if waveform data containing aliasing noise is reproduced as a musical tone as it is, it will be heard as harsh noise. Therefore, in order to reproduce high-quality musical sound, it is necessary to take care that no aliasing noise occurs during the entire process from the sampling of waveform data to the reproduction of the waveform data as a musical sound signal.
【0005】ピッチ同期方式の音源は、上述した通り、
発生すべき楽音の音高に比例した読み出し周波数に従っ
て波形データを読み出すことにより楽音波形を再生する
ものである。従って、この音源の場合、サンプリング周
波数の1/2以上の周波数のスペクトルを含まない楽音
波形から得られた波形データ列である限り(すなわち、
波形データ列自体が折り返し雑音を含んでいない場
合)、如何なる周波数で波形データの読み出しを行った
としても、折り返し雑音を含まない楽音波形が再生され
る。何故ならば、読み出される波形データのスペクトル
の上限周波数は、読み出し周波数の増減に比例して増減
するからである。図15および図16はこの例を示すも
のであり、図15は図14にスペクトル分布を示す波形
データを50kHzの読み出し周波数で読み出すことに
より得られる波形のスペクトル分布、図16は同波形デ
ータを40kHzの読み出し周波数で読み出すことによ
り得られる波形のスペクトル分布を示すものである。[0005] As described above, the pitch synchronous type sound source
The tone waveform is reproduced by reading the waveform data in accordance with the read frequency proportional to the pitch of the tone to be generated. Therefore, in the case of this sound source, as long as the waveform data sequence is obtained from a musical sound waveform that does not include a spectrum having a frequency equal to or more than half the sampling frequency (ie
If the waveform data sequence itself does not include aliasing noise), a tone waveform that does not include aliasing noise is reproduced, regardless of the frequency at which the waveform data is read. This is because the upper limit frequency of the spectrum of the read waveform data increases and decreases in proportion to the increase and decrease of the read frequency. FIGS. 15 and 16 show this example. FIG. 15 shows the spectrum distribution of a waveform obtained by reading out the waveform data showing the spectrum distribution in FIG. 14 at a readout frequency of 50 kHz. 3 shows a spectrum distribution of a waveform obtained by reading at a read frequency of FIG.
【0006】しかしながら、ピッチ同期式音源によって
楽音信号を発生した場合、楽音信号を構成する波形デー
タの出力周波数が楽音信号の音高によって変化するた
め、後続の装置の処理が複雑になってしまう。例えば音
高の異なった2種類以上の楽音信号を混合して発生する
ような場合、両者の各波形データは異なるタイミングで
出力されるため、両者を直接加算することができないと
いう問題がある。However, when a tone signal is generated by a pitch-synchronized tone generator, the output frequency of the waveform data constituting the tone signal changes depending on the pitch of the tone signal, which complicates the processing of the subsequent device. For example, when two or more types of tone signals having different pitches are mixed and generated, there is a problem that the two cannot be directly added because the respective waveform data are output at different timings.
【0007】これに対し、ピッチ非同期方式の音源は、
楽音発生指示が与えられた場合に、指示された音高(楽
音周波数)に比例したFナンバと呼ばれる音高情報を発
生し、このFナンバをサンプリング周期毎に累算するこ
とにより、音高に応じたレートで変化するアドレス信号
を発生し、このアドレス信号に対応した波形データをメ
モリから再生するものである。ピッチ非同期式の音源に
おいては、これらの一連の処理が一定のサンプリング周
波数に同期して実行され、音高とは無関係に一定のサン
プリング周波数の波形データが出力される。従って、ピ
ッチ非同期式の音源においては、上記ピッチ同期式音源
の場合のような問題は生じない。On the other hand, a pitch asynchronous type sound source
When a musical tone generation instruction is given, pitch information called an F number is generated in proportion to the designated pitch (tone frequency), and this F number is accumulated for each sampling period to obtain a pitch. An address signal that changes at a corresponding rate is generated, and waveform data corresponding to the address signal is reproduced from a memory. In a pitch asynchronous type sound source, these series of processes are executed in synchronization with a fixed sampling frequency, and waveform data of a fixed sampling frequency is output irrespective of the pitch. Therefore, in the pitch asynchronous type sound source, there is no problem as in the case of the pitch synchronous type sound source.
【0008】ところで、電子楽器においては、メモリに
記憶された1種類の楽音波形から音高が微妙に異なった
多くの種類の楽音信号を発生する必要がある。このた
め、Fナンバとして整数部および小数部を含んだ実数を
使用する必要がある。この小数部を含んだFナンバを使
用した場合、各サンプリング周期において発生されるア
ドレス信号も一般的に小数部を含むこととなるが、この
アドレス信号に対応した波形データ、例えばアドレス
「3.5」に対応した波形データはメモリには記憶され
ておらず読み出すことができない。By the way, in an electronic musical instrument, it is necessary to generate many kinds of musical tone signals having slightly different pitches from one kind of musical tone waveform stored in a memory. Therefore, it is necessary to use a real number including an integer part and a decimal part as the F number. When the F number including the decimal part is used, the address signal generated in each sampling period generally also includes the decimal part, but the waveform data corresponding to the address signal, for example, the address “3.5” Is not stored in the memory and cannot be read.
【0009】仮に各サンプリング周期において、アドレ
ス信号の整数部に対応した波形データをメモリから読み
出すこととすると、元の楽音波形とは全く異なった楽音
波形が再生されることとなる。図17は、図14に示す
スペクトル分布を有する波形データ(サンプリング周波
数48kHz)がメモリに記憶されている場合に、サン
プリング周波数50kHzのクロックに同期してFナン
バ=0.8を累算し、この累算結果たるアドレス信号の
整数部に対応した波形データをメモリから読み出したと
きの読み出し波形のスペクトル分布を例示したのであ
る。同図において、“×”のマークは、メモリ内の元の
波形データに含まれていた図14において破線で表示し
たスペクトルに対応した折り返し雑音を示している。図
17に示すように、ピッチ非同期再生においてアドレス
信号の整数部のみに基づいて波形データを再生した場合
には、多数の折り返し雑音成分が生じることとなる。If the waveform data corresponding to the integer part of the address signal is read out from the memory in each sampling period, a tone waveform completely different from the original tone waveform is reproduced. FIG. 17 shows that, when the waveform data (sampling frequency 48 kHz) having the spectrum distribution shown in FIG. 14 is stored in the memory, the F number = 0.8 is accumulated in synchronization with the clock of the sampling frequency 50 kHz. This is an example of the spectrum distribution of the read waveform when the waveform data corresponding to the integer part of the address signal as the accumulation result is read from the memory. In the same figure, the mark of “x” indicates the aliasing noise corresponding to the spectrum indicated by the broken line in FIG. 14 included in the original waveform data in the memory. As shown in FIG. 17, when the waveform data is reproduced based on only the integer part of the address signal in the pitch asynchronous reproduction, a large number of aliasing noise components are generated.
【0010】以上の不具合を防止するため、一般的にピ
ッチ非同期式の音源においては補間処理を行う。すなわ
ち、各サンプリング周期において、アドレス信号の整数
部に対応した波形データを含む複数個の連続した波形デ
ータをメモリから読み出し、これらの波形データに対
し、アドレス信号の小数部に対応して決定される補間係
数を乗じて加算することにより、アドレス信号に対応し
た波形データの補間を行う。In order to prevent the above problems, interpolation processing is generally performed on a pitch asynchronous type sound source. That is, in each sampling period, a plurality of continuous waveform data including the waveform data corresponding to the integer part of the address signal is read from the memory, and these waveform data are determined corresponding to the decimal part of the address signal. By multiplying and adding the interpolation coefficient, the interpolation of the waveform data corresponding to the address signal is performed.
【0011】[0011]
【発明が解決しようとする課題】このような補間処理を
併用したピッチ非同期方式の音源によれば、任意の音高
の楽音信号を発生することができる。しかしながら、こ
のピッチ非同期式の音源は、発生すべき楽音の音高が高
い場合に折り返し雑音が発生し易いという問題があっ
た。以下、この問題について説明する。According to the pitch asynchronous type sound source using such interpolation processing together, a tone signal having an arbitrary pitch can be generated. However, this pitch-asynchronous sound source has a problem that aliasing noise is likely to occur when the pitch of a musical tone to be generated is high. Hereinafter, this problem will be described.
【0012】まず、図14に示すスペクトル分布を有す
る波形データ(サンプリング周波数48kHz)がメモ
リに記憶されていたとする。仮にFナンバ=1とし、こ
のFナンバをサンプリング周波数50kHzのクロック
に同期して累算してアドレス信号を発生し、アドレス信
号に対応した波形データをメモリ内の波形データを使用
した補間演算により再生したとする。この場合、波形デ
ータの再生を行うサンプリング周波数は波形データ採取
時の50/48であるため、再生される波形のスペクト
ル(イメージスペクトルを除く。)の上限周波数は24
kHz×(50/48)=25kHzとなる。First, it is assumed that waveform data (sampling frequency 48 kHz) having a spectrum distribution shown in FIG. 14 is stored in a memory. It is assumed that the F number is 1, the F number is accumulated in synchronization with a clock having a sampling frequency of 50 kHz, an address signal is generated, and waveform data corresponding to the address signal is reproduced by interpolation using waveform data in the memory. Suppose you did. In this case, since the sampling frequency at which the waveform data is reproduced is 50/48 at the time of acquiring the waveform data, the upper limit frequency of the spectrum of the reproduced waveform (excluding the image spectrum) is 24.
kHz × (50/48) = 25 kHz.
【0013】次にFナンバが1より小さい場合、例えば
Fナンバ=0.8の条件で波形データの再生を行った場
合には、Fナンバ=1のときの再生波形を時間軸上に沿
って(1/0.8)倍に伸張し、この伸張した波形を5
0kHzのサンプリングクロックによりサンプリングし
直したものと同じ波形が再生される。Next, when the F number is smaller than 1, for example, when the waveform data is reproduced under the condition of F number = 0.8, the reproduced waveform at F number = 1 is displayed along the time axis. (1 / 0.8) times, and expand the expanded waveform by 5
The same waveform as that re-sampled by the sampling clock of 0 kHz is reproduced.
【0014】従って、この場合の再生波形のスペクトル
分布は、図18に示すものとなる。すなわち、Fナンバ
=0.8としたことにより、再生波形のスペクトルSA
はFナンバ=1のときの再生波形のスペクトルを周波数
軸上に沿って0.8倍に圧縮したものとなる。また、補
間処理により、破線によって示すイメージスペクトルは
除去されるが、50kHzのサンプリング周波数によっ
てサンプリングしたことによるイメージスペクトルS
B,SB,…が新たに再生波形のスペクトルとして加わ
る。このイメージスペクトルは、その周波数範囲がFナ
ンバ=1の場合の0.8倍に狭められているため、Fナ
ンバ=0.8に対応した本来必要な波形のスペクトルS
A(上限周波数20kHz)と重複せず、折り返し雑音
の原因とならない。Accordingly, the spectrum distribution of the reproduced waveform in this case is as shown in FIG. That is, by setting F number = 0.8, the spectrum SA of the reproduced waveform is obtained.
Is obtained by compressing the spectrum of the reproduced waveform at the time of F number = 1 by 0.8 times along the frequency axis. Although the image spectrum indicated by the broken line is removed by the interpolation processing, the image spectrum S obtained by sampling at the sampling frequency of 50 kHz is removed.
B, SB,... Are newly added as the spectrum of the reproduced waveform. Since the frequency range of this image spectrum is narrowed to 0.8 times that of the case where the F number is 1, the spectrum S of the originally required waveform corresponding to the F number of 0.8 is used.
A (upper limit frequency 20 kHz) does not overlap and does not cause aliasing noise.
【0015】これに対し、Fナンバが1を越える場合、
例えばサンプリング周波数50kHzのクロックに同期
してFナンバ=1.2の条件で波形データの再生を行っ
た場合には、Fナンバ=1のときの再生波形を時間軸上
に沿って(1/1.2)倍に圧縮し、この圧縮した波形
を50kHzのサンプリングクロックによりサンプリン
グし直したものと同じ波形が再生される。On the other hand, when the F number exceeds 1,
For example, when the waveform data is reproduced under the condition of F number = 1.2 in synchronization with a clock having a sampling frequency of 50 kHz, the reproduced waveform at the time of F number = 1 is represented by (1/1) along the time axis. .2), and the same waveform as that obtained by re-sampling the compressed waveform with a sampling clock of 50 kHz is reproduced.
【0016】従って、この場合の再生波形のスペクトル
分布は、次のようになる。まず、Fナンバ=1.2とし
たことにより、再生波形のスペクトルSAは、図19に
示すように、Fナンバ=1のときの再生波形のスペクト
ルを周波数軸上に沿って1.2倍に伸張したものとな
る。また、補間処理により破線によって示すイメージス
ペクトルは除去されるが、図20に示すように、50k
Hzのサンプリング周波数によってサンプリングしたこ
とによるイメージスペクトルSB,SB,…が新たに再
生波形のスペクトルとして加わる。このイメージスペク
トルSBは、その周波数範囲がFナンバ=1の場合の
1.2倍に広がるため、Fナンバ=1.2に対応した本
来必要な波形のスペクトルSAと重複し、その重複部分
が折り返し雑音となる。Therefore, the spectrum distribution of the reproduced waveform in this case is as follows. First, by setting F number = 1.2, as shown in FIG. 19, the spectrum SA of the reproduced waveform becomes 1.2 times the spectrum of the reproduced waveform when F number = 1 along the frequency axis. It will be stretched. Further, although the image spectrum indicated by the broken line is removed by the interpolation processing, as shown in FIG.
The image spectrum SB, SB,... Obtained by sampling at the sampling frequency of Hz is newly added as a spectrum of the reproduced waveform. Since the frequency range of the image spectrum SB is 1.2 times as wide as that of the case where the F number is 1, the spectrum spectrum SB overlaps with the spectrum SA of the originally required waveform corresponding to the F number of 1.2, and the overlapping portion is folded back. It becomes noise.
【0017】この発明は上述した事情に鑑みてなされた
もので、上記ピッチ非同期式音源の欠点を克服し、高い
音高の楽音信号を発生する場合においても折り返しノイ
ズを発生させることのない楽音信号発生装置および波形
メモリ読出補間装置を提供することを目的としている。The present invention has been made in view of the above-mentioned circumstances, and overcomes the disadvantages of the above-mentioned pitch asynchronous type sound source. It is an object to provide a generator and a waveform memory readout interpolator.
【0018】[0018]
【課題を解決するための手段】請求項1に係る発明は、
楽音発生指示に応答し、該楽音発生指示によって指示さ
れた音高の楽音波形を表す所定のサンプリング周波数の
デジタル楽音信号を出力する楽音信号発生装置におい
て、楽音波形を一定時間間隔でサンプリングすることに
より得られた波形データを記憶した波形メモリと、前記
指示された音高に対応したレートで変化するアドレス信
号を前記サンプリング周波数よりも高い演算サイクル周
波数に従って出力するアドレス信号発生手段と、前記波
形メモリに記憶された波形データのうち前記アドレス信
号の整数部に対応した所定個数の波形データと前記アド
レス信号の小数部に対応した補間演算用係数とを用いた
補間演算を前記演算サイクル周波数に従って実行するこ
とにより、前記指示された音高を有する波形データを出
力する補間手段と、前記補間手段によって出力された波
形データに対し、所定の高域遮断周波数以上のスペクト
ルを除去する処理を施し、その結果を前記サンプリング
周波数に従って出力するダウンサンプリング手段とを具
備することを特徴とする楽音信号発生装置を要旨とす
る。The invention according to claim 1 is
In a tone signal generating apparatus which responds to a tone generation instruction and outputs a digital tone signal of a predetermined sampling frequency representing a tone waveform of a pitch designated by the tone generation instruction, the tone waveform is sampled at regular time intervals. A waveform memory storing the obtained waveform data, an address signal generating means for outputting an address signal that changes at a rate corresponding to the instructed pitch in accordance with an operation cycle frequency higher than the sampling frequency, and the waveform memory. Executing an interpolation operation according to the operation cycle frequency using a predetermined number of pieces of waveform data corresponding to the integer part of the address signal in the stored waveform data and an interpolation operation coefficient corresponding to a decimal part of the address signal. By interpolating means for outputting waveform data having the designated pitch, Downsampling means for performing processing for removing a spectrum having a frequency equal to or higher than a predetermined high cut-off frequency to the waveform data output by the interpolation means, and outputting the result in accordance with the sampling frequency. The gist is a signal generator.
【0019】請求項2に係る発明は、n個(nは整数)
の時分割チャネルを使用した時分割制御により、各時分
割チャネル毎に、波形メモリから波形データを読み出
し、読み出した波形データに基づいて補間波形データを
生成する波形メモリ読出補間装置において、前記n個の
時分割チャネルの各々に対応したアドレス信号を順次発
生するアドレス発生手段と、前記各アドレス信号の整数
部に基づいて前記波形メモリから波形データを読み出
し、各アドレス信号の小数部に応じて前記各時分割チャ
ネルに対応した補間波形データを各々生成して時分割で
出力する補間手段とを備え、前記補間手段が、前記n個
の時分割チャネルをk個(kはnの約数)のグループに
分けた各グループに対応した補間演算を実行するk個の
演算手段と、前記各時分割チャネルのアドレス信号の整
数部に対応した波形データを、前記波形メモリから、前
記k個の演算手段のうち当該時分割チャネルに対応した
補間演算を実行するものに引き渡すとともに、前記各時
分割チャネルのアドレス信号の小数部を、前記k個の演
算手段のうち当該時分割チャネルに対応した補間演算を
実行するものに引き渡す供給手段と、前記k個の演算手
段の補間演算結果であるn個の補間波形データを、時分
割多重化して出力する出力手段とを具備することを特徴
とする波形メモリ読出補間装置を要旨とする。According to a second aspect of the present invention, n (n is an integer)
A time-division control using the time-division channels of the waveform memory read-out interpolation device which reads out waveform data from the waveform memory for each time-division channel and generates interpolation waveform data based on the read waveform data; Address generating means for sequentially generating an address signal corresponding to each of the time-division channels, and reading out waveform data from the waveform memory based on an integer part of each address signal, and reading each of the waveform data in accordance with a decimal part of each address signal. Interpolating means for respectively generating interpolated waveform data corresponding to the time-division channels and outputting the interpolated waveform data in a time-division manner, wherein the interpolation means comprises k groups (k is a divisor of n) K arithmetic means for performing an interpolation operation corresponding to each group divided into a plurality of groups, and a waveform data corresponding to an integer part of the address signal of each time-division channel. Data from the waveform memory to one of the k arithmetic means for executing an interpolation operation corresponding to the time-division channel, and converts the decimal part of the address signal of each time-division channel into the k arithmetic means. Supply means for delivering to one of the calculation means that performs an interpolation calculation corresponding to the time-division channel, and time-division multiplexing and output of n pieces of interpolation waveform data which are interpolation calculation results of the k pieces of calculation means. The present invention provides a waveform memory reading and interpolating device, which comprises an output unit.
【0020】請求項3に係る発明は、n個(nは整数)
の時分割チャネルを使用した時分割制御により、各時分
割チャネル毎に、楽音発生指示に応答し、該楽音発生指
示によって指示された音高の楽音波形を表す所定のサン
プリング周波数のデジタル楽音信号を出力する楽音信号
発生装置において、楽音波形を一定時間間隔でサンプリ
ングすることにより得られた波形データを記憶した波形
メモリと、前記各時分割チャネル毎に、前記指示された
音高に対応したレートで変化するアドレス信号を前記サ
ンプリング周波数よりも高い演算サイクル周波数に従っ
て出力するアドレス信号発生手段と、前記各時分割チャ
ネル毎に、前記波形メモリに記憶された波形データのう
ち前記アドレス信号の整数部に対応した所定個数の波形
データと前記アドレス信号の小数部に対応した補間演算
用係数とを用いた補間演算を前記演算サイクル周波数に
従って実行することにより、前記指示された音高を有す
る波形データを出力する補間手段と、前記各時分割チャ
ネル毎に、前記補間手段によって出力された波形データ
に対し、所定の高域遮断周波数以上のスペクトルを除去
する処理を施し、その結果を前記サンプリング周波数に
従って出力するダウンサンプリング手段とを具備し、前
記補間手段が、前記n個の時分割チャネルをk個(kは
nの約数)のグループに分けた各グループに対応した補
間演算を実行するk個の演算手段と、前記各時分割チャ
ネルのアドレス信号の整数部に対応した波形データを、
前記波形メモリから、前記k個の演算手段のうち当該時
分割チャネルに対応した補間演算を実行するものに引き
渡すとともに、前記各時分割チャネルのアドレス信号の
小数部を、前記k個の演算手段のうち当該時分割チャネ
ルに対応した補間演算を実行するものに引き渡す供給手
段と、前記k個の演算手段の補間演算結果を時分割多重
化して出力する出力手段とを具備することを特徴とする
楽音信号発生装置を要旨とする。According to a third aspect of the present invention, there are provided n (n is an integer)
Time-division control using the time-division channel of each of the time-division channels, in response to a musical tone generation instruction, a digital musical tone signal of a predetermined sampling frequency representing a musical tone waveform of the pitch indicated by the musical tone generation instruction. In the output tone signal generating apparatus, a waveform memory storing waveform data obtained by sampling a tone waveform at regular time intervals, and, for each of the time-division channels, a rate corresponding to the designated pitch. Address signal generating means for outputting a changing address signal in accordance with an operation cycle frequency higher than the sampling frequency; and for each of the time-division channels, corresponding to an integer part of the address signal in the waveform data stored in the waveform memory. And a predetermined number of waveform data and interpolation calculation coefficients corresponding to the decimal part of the address signal are used. By performing the inter-operation in accordance with the operation cycle frequency, interpolation means for outputting waveform data having the indicated pitch, and for each of the time-division channels, for the waveform data output by the interpolation means, Downsampling means for performing processing for removing a spectrum equal to or higher than a predetermined high-frequency cutoff frequency and outputting the result in accordance with the sampling frequency, wherein the interpolation means sets the n time-division channels to k (k (K is a divisor of n), k operation means for executing an interpolation operation corresponding to each group, and waveform data corresponding to an integer part of an address signal of each of the time-division channels.
From the waveform memory, the k arithmetic units are passed to one of the k arithmetic units that performs an interpolation operation corresponding to the time-division channel, and the decimal part of the address signal of each time-division channel is converted to the k arithmetic units. Wherein the tone generator comprises: a supply unit for delivering the interpolation operation corresponding to the time-division channel; and an output unit for time-division multiplexing and outputting the interpolation operation results of the k operation units. The gist is a signal generator.
【0021】[0021]
【作用】上記請求項1に係る発明によれば、指定された
音高に対応した波形データが得られるまでは、最終的な
サンプリング周波数よりも高い演算サイクル周波数に同
期して処理が行われる。そして、指定された音高に対応
した波形データが得られた時点で、その波形データに対
して予め高域除去処理が施され、この処理を経た波形デ
ータが最終的なサンプリング周波数に変換される。According to the first aspect of the present invention, processing is performed in synchronization with the operation cycle frequency higher than the final sampling frequency until waveform data corresponding to the designated pitch is obtained. Then, when waveform data corresponding to the designated pitch is obtained, high-frequency removal processing is performed on the waveform data in advance, and the waveform data subjected to this processing is converted into a final sampling frequency. .
【0022】請求項2に係る発明は、以下説明するよう
に補間演算の高速化により上記課題を解決するものであ
る。まず、補間演算等の演算処理において折り返し雑音
を含まない波形データを得るためには、演算を繰り返す
際の演算サイクル周波数を十分に高くする必要があり、
そのためには1回1回の演算を極めて短時間で実行する
必要がある。しかし、いわゆる複音式の楽音信号発生装
置、すなわち、複数の時分割チャネルを使用し複数の楽
音信号を独立に発生する方式の楽音信号発生装置におい
ては、演算サイクル周期内に実行すべき補間演算の回数
が時分割チャネルの数に比例して増加するため、個々の
演算処理時間の短縮化についての要請は極めて厳しいも
のになってしまう。特に補間演算は、波形メモリからの
波形データの読み出し、積和演算といった処理を伴うた
め、高速化することが難しい演算であり、上記要請に対
する対応策を講じる上での障害となっていた。The invention according to claim 2 solves the above-mentioned problem by speeding up the interpolation operation as described below. First, in order to obtain waveform data that does not include aliasing noise in an arithmetic operation such as an interpolation operation, it is necessary to sufficiently increase the operation cycle frequency when repeating the operation.
For that purpose, it is necessary to execute each operation in a very short time. However, in a so-called double tone type tone signal generating device, that is, a tone signal generating device of a method of independently generating a plurality of tone signals using a plurality of time division channels, an interpolation calculation to be executed within a calculation cycle period is performed. Since the number of times increases in proportion to the number of time-division channels, the demand for shortening the individual processing time becomes extremely severe. In particular, since the interpolation calculation involves processes such as reading of waveform data from a waveform memory and a sum-of-products calculation, it is difficult to increase the speed, and this has been an obstacle in taking measures to cope with the above demand.
【0023】請求項2に係る発明は、演算回路に対して
苛酷な要求を課すことなく、上記要請に応えようとする
ものである。すなわち、この発明によれば、n個の時分
割チャネルに対応した各補間演算がk個の演算手段によ
って分担され、並列的に実行され、補間演算結果である
n個の補間波形データが、時分割多重化されて出力され
る。このように本発明による波形読出補間装置によれ
ば、個々の演算手段が実行すべき補間演算の数が少なく
なっているため、多数の時分割チャネルに対応した補間
波形データを高い演算サイクル周波数に従って出力する
ことができる。従って、本発明による波形読出補間装置
によれば、複音式の楽音信号発生装置において折り返し
雑音の発生を防止することができる。According to a second aspect of the present invention, the above-mentioned request is satisfied without imposing severe requirements on the arithmetic circuit. That is, according to the present invention, each of the interpolation operations corresponding to the n time-division channels is shared by the k operation means and executed in parallel. The output is divided and multiplexed. As described above, according to the waveform reading and interpolating apparatus of the present invention, the number of interpolation operations to be performed by the individual operation units is reduced. Can be output. Therefore, according to the waveform reading and interpolating apparatus of the present invention, it is possible to prevent the generation of aliasing noise in the double tone type tone signal generating apparatus.
【0024】請求項3に係る発明は、請求項1に係る発
明および請求項2に係る発明の各々の技術的思想を結合
させることにより、折り返し雑音の発生が防止された複
音式の楽音信号発生装置を提供するものである。すなわ
ち、請求項1に係る発明を複音式の楽音信号に発生装置
に適用しようとする場合、補間演算の高速化についての
厳しい要請が生じることとなる。本発明は、請求項2に
係る発明の技術的思想を用いてこの要請に対処するもの
である。具体的な内容については、請求項2に係る発明
の作用として既に説明済みであるので、ここでの重複し
た説明は省略する。According to a third aspect of the present invention, by combining the technical ideas of the first and second aspects of the present invention, a double tone tone signal generation in which the generation of aliasing noise is prevented. An apparatus is provided. That is, when the invention according to claim 1 is to be applied to a generating device for a double tone type tone signal, a strict demand for speeding up the interpolation operation is generated. The present invention addresses this need using the technical idea of the second aspect of the present invention. Since the specific contents have already been described as the operation of the invention according to claim 2, the duplicate description will be omitted here.
【0025】[0025]
【実施例】以下、本発明を更に理解しやすくするため、
実施例について説明する。かかる実施例は、本発明の一
態様を示すものであり、この発明を限定するものではな
い。本発明の範囲で任意に変更可能である。EXAMPLES In order to make the present invention easier to understand,
An example will be described. These examples illustrate one embodiment of the present invention and do not limit the present invention. It can be arbitrarily changed within the scope of the present invention.
【0026】A.実施例の構成 (1)全体構成 図1は本発明による楽音発生装置を備えた電子楽器の実
施例の全体構成を示すブロック図である。この図におい
て、1は鍵盤であり、多数の鍵とこれら鍵の押離鍵操作
によってオン/オフ状態が切り換えられる鍵スイッチと
を有する他、押鍵速度を検出するための速度検出機構を
有している。2は押鍵検出回路であり、鍵盤1の各鍵の
鍵スイッチの状態を走査し、押鍵操作がされた場合には
キーオン信号KONおよび押鍵操作された鍵を表わすキ
ーコードKCを発生する。また、3はタッチ検出回路で
あり、鍵の押鍵速度を上記速度検出機構を介して検出
し、イニシャルタッチを表すタッチ情報ITを発生す
る。A. 1. Configuration of Embodiment (1) Overall Configuration FIG. 1 is a block diagram showing the overall configuration of an embodiment of an electronic musical instrument provided with a tone generator according to the present invention. In FIG. 1, reference numeral 1 denotes a keyboard, which has a large number of keys, a key switch whose on / off state is switched by pressing and releasing the keys, and a speed detecting mechanism for detecting a key pressing speed. ing. Reference numeral 2 denotes a key press detection circuit which scans the state of a key switch of each key of the keyboard 1 and generates a key-on signal KON and a key code KC representing the key pressed when a key press operation is performed. . Reference numeral 3 denotes a touch detection circuit which detects a key pressing speed via the speed detecting mechanism and generates touch information IT indicating an initial touch.
【0027】4は発音チャネルの割り当てを行うアサイ
ナ回路である。本電子楽器は、16チャネルの発音チャ
ネルを使用し、時分割制御により楽音を形成するように
構成されている。アサイナ回路4は、キーオン信号KO
Nが発生した場合にその時点で楽音形成処理に使用され
ていない発音チャネルの中から押鍵検出回路2から受け
取ったキーコードKCに対応した楽音形成処理を行うた
めの発音チャネルCHを選択する。なお、押鍵により同
時に発音すべき楽音が16音を越える場合、アサイナ回
路4は周知の後着優先ルールに従ったトランケート処理
を実行するよう構成されている。Reference numeral 4 denotes an assigner circuit for assigning sound channels. This electronic musical instrument is configured to use 16 sound channels and form musical tones by time division control. The assigner circuit 4 outputs the key-on signal KO
When N occurs, a tone generation channel CH for performing a tone generation process corresponding to the key code KC received from the key press detection circuit 2 is selected from tone generation channels not used in the tone generation process at that time. When the number of musical tones to be simultaneously generated by pressing a key exceeds 16 tones, the assigner circuit 4 is configured to execute a truncation process in accordance with a well-known late arrival priority rule.
【0028】5は本発明による楽音信号発生装置を具現
した波形読み出し方式の波形発生器であり、アサイナ回
路4によって選択された発音チャネルCHを使用し、時
分割制御によりキーコードKCに対応した音高の波形デ
ータを形成する処理を行う。この波形発生器5は、最終
的には50kHzのサンプリング周波数の波形データを
出力するものであるが、キーコードKCに対応した楽音
波形の波形データが得られるまでは折り返し雑音を発生
させないように充分に高い演算サイクル周波数(本実施
例では200kHz)で波形データの再生等の処理を行
う。そして、この処理によりキーコードKCに対応した
楽音波形の波形データを周波数200kHzのクロック
に同期して一旦発生した後、この波形データからサンプ
リング周波数50kHzの1/2以上の周波数のスペク
トルを除去し、この高域除去処理のなされた波形データ
(サンプリング周波数200kHz)をサンプリング周
波数50KHzの波形データに変換して出力する。な
お、波形発生器5の具体的な構成については後述する。Reference numeral 5 denotes a waveform generator based on a waveform readout method which embodies the tone signal generator according to the present invention. The tone generator uses the tone generation channel CH selected by the assigner circuit 4 and controls the tone corresponding to the key code KC by time division control. A process for forming high waveform data is performed. The waveform generator 5 finally outputs waveform data having a sampling frequency of 50 kHz. However, the waveform generator 5 does not generate aliasing noise until waveform data of a musical sound waveform corresponding to the key code KC is obtained. For example, processing such as reproduction of waveform data is performed at a higher operation cycle frequency (200 kHz in this embodiment). After the waveform data of the musical tone waveform corresponding to the key code KC is once generated in synchronization with the clock having a frequency of 200 kHz by this processing, a spectrum having a frequency equal to or more than 1/2 of the sampling frequency of 50 kHz is removed from the waveform data. The waveform data (sampling frequency: 200 kHz) subjected to the high-frequency removal processing is converted into waveform data having a sampling frequency of 50 kHz and output. The specific configuration of the waveform generator 5 will be described later.
【0029】6はデジタルフィルタであり、波形発生器
5から出力される波形データに対し、タッチ情報ITに
対応した効果付与、音色調整等のためのフィルタ処理を
施す。7はエンベロープジェネレータであり、キーオン
信号KONが与えられることにより、エンベロープ信号
ENVを生成し出力する。8は乗算器であり、エンベロ
ープジェネレータ7から出力されるエンベロープ信号E
NVとデジタルフィルタ6の出力信号とを乗算し、この
乗算結果を楽音信号として出力する。9は累算器であ
り、楽音信号を全発音チャネルに亙って累算して出力す
る。10は累算器8の出力信号をアナログ信号に変換す
るD/A変換器である。11はサウンドシステムであ
り、D/A変換器10から供給されるアナログ信号を増
幅してスピーカSPから楽音として発音する。Reference numeral 6 denotes a digital filter, which performs a filtering process on the waveform data output from the waveform generator 5 for imparting an effect corresponding to the touch information IT, adjusting a tone color, and the like. Reference numeral 7 denotes an envelope generator which generates and outputs an envelope signal ENV when a key-on signal KON is supplied. Reference numeral 8 denotes a multiplier, which is an envelope signal E output from the envelope generator 7.
NV is multiplied by the output signal of the digital filter 6, and the multiplication result is output as a tone signal. Reference numeral 9 denotes an accumulator, which accumulates and outputs a musical tone signal over all tone generation channels. Reference numeral 10 denotes a D / A converter for converting the output signal of the accumulator 8 into an analog signal. Reference numeral 11 denotes a sound system, which amplifies an analog signal supplied from the D / A converter 10 and produces a tone from a speaker SP.
【0030】(2)波形発生器5の構成 ここで、本実施例において最も特徴的な部分である波形
発生器5の構成について説明する。この波形発生器5
は、図2に示すように、波形メモリ12と、アドレス発
生部13と、補間部14と、ダウンサンプリングFIR
フィルタ15とにより構成されている。以下、波形発生
器5の各部の詳細について説明する。(2) Configuration of Waveform Generator 5 Here, the configuration of the waveform generator 5 which is the most characteristic part in this embodiment will be described. This waveform generator 5
As shown in FIG. 2, a waveform memory 12, an address generator 13, an interpolator 14, a down-sampling FIR
And a filter 15. Hereinafter, each part of the waveform generator 5 will be described in detail.
【0031】波形メモリ12 波形メモリ12には、複数種類の楽音波形の波形データ
が記憶されている。いずれの楽音波形の波形データを波
形メモリ12から読み出すかは、発生すべき楽音信号の
音色、音域等に基づいて選択されるようになっている。
各波形データは、楽音波形を一定のサンプリング周波数
でA/D変換することにより得られた時系列デジタルデ
ータであるが、波形データの生成に際しては、A/D変
換の前処理として、サンプリング周波数の1/2以上の
周波数のスペクトルを除去する処理が楽音波形に施され
る。従って、いずれの楽音波形の波形データを読み出す
場合においても、波形データを間引くことなく全て読み
出した場合には折り返し雑音を含まない楽音波形が再生
される。Waveform Memory 12 The waveform memory 12 stores a plurality of types of musical sound waveform data. Which musical tone waveform data to read from the waveform memory 12 is selected based on the timbre, tone range, and the like of the tone signal to be generated.
Each waveform data is time-series digital data obtained by performing A / D conversion on a musical tone waveform at a constant sampling frequency. When generating waveform data, as sampling pre-processing of the A / D conversion, A process of removing a spectrum having a frequency equal to or more than 1/2 is performed on the musical tone waveform. Therefore, when reading out the waveform data of any musical tone waveform, if all the waveform data are read out without thinning out, the musical tone waveform containing no aliasing noise is reproduced.
【0032】アドレス発生部13 アドレス発生部13の構成を図3に示す。同図に示すよ
うに、アドレス発生部13は、キーコードKCに対応し
た音高情報を発生する音高情報発生部13aと、この音
高情報を累算することによりキーコードKCに対応した
レートで増加するアドレス信号を発生する音高情報累算
部13bとから構成されている。Address Generator 13 FIG. 3 shows the structure of the address generator 13. As shown in the figure, an address generator 13 includes a pitch information generator 13a for generating pitch information corresponding to a key code KC, and a rate corresponding to the key code KC by accumulating the pitch information. And a pitch information accumulating section 13b for generating an address signal which increases in the range.
【0033】本実施例では、1/200kHzの各演算
サイクル周期毎にキーコードKCに対応した波形データ
を演算するため、演算すべき波形データの位相を指定す
るアドレス信号を200kHzのクロックに同期して出
力する必要がある。アドレス信号は音高情報を演算サイ
クル周期が切り換わる毎に累算することにより演算する
が、この音高情報として50kHzのサンプリング周波
数を想定したFナンバ(すなわち、波形読み出しから楽
音信号出力に至るまで一定のサンプリング周波数に同期
して信号処理を行う従来のピッチ非同期式音源において
使用されたいたFナンバ)をそのまま使用すると、累算
結果たるアドレス信号はキーコードKCに対応したレー
トの4倍のレートで増加することとなる。そこで、本実
施例においては、アドレス信号をキーコードKCに対応
したレートで変化させるべく、Fナンバの1/4の値の
F*ナンバを音高情報発生部13aにより発生する。In this embodiment, in order to calculate the waveform data corresponding to the key code KC at each calculation cycle period of 1/200 kHz, an address signal designating the phase of the waveform data to be calculated is synchronized with a clock of 200 kHz. Must be output. The address signal is calculated by accumulating the pitch information every time the operation cycle period is switched. The F number (that is, from the waveform reading to the tone signal output) assuming a sampling frequency of 50 kHz as the pitch information is calculated. If the F number used in a conventional pitch asynchronous type sound source that performs signal processing in synchronization with a fixed sampling frequency is used as it is, the address signal as a result of accumulation is four times the rate corresponding to the key code KC. Will increase. Therefore, in this embodiment, in order to change the address signal at a rate corresponding to the key code KC, an F * number having a value of 1/4 of the F number is generated by the pitch information generation unit 13a.
【0034】また、既に述べた通り、この電子楽器は1
6チャネルの発音チャネルを使用して各発音チャネル毎
に楽音信号を形成するものであり、音高情報発生部13
aによるF*ナンバの発生および音高情報累算部13b
によるアドレス信号の発生も時分割制御により各発音チ
ャネルについて行われる。すなわち、本実施例において
は、各発音チャネルに対応したF*ナンバおよびアドレ
ス信号の演算が、1/200kHzの演算サイクル周期
をさらに16分割した各タイムスロットを利用して行わ
れる。As described above, this electronic musical instrument has one
A tone signal is formed for each tone generation channel using six tone generation channels.
The generation of the F * number by a and the pitch information accumulating unit 13b
Is also generated for each sounding channel by time division control. That is, in the present embodiment, the calculation of the F * number and the address signal corresponding to each sounding channel is performed using each time slot obtained by further dividing the calculation cycle period of 1/200 kHz into 16.
【0035】音高情報累算部13bにより発生されたア
ドレス信号の整数部IADは、読み出しアドレスとして
波形メモリ12へ供給される。また、アドレス信号の小
数部FADは補間部14へ供給される。また、音高情報
累算部13bは、上記F*ナンバの累算によりアドレス
信号の小数部から整数部への桁上げが生じた場合、桁上
げ信号INCを出力する。The integer part IAD of the address signal generated by the pitch information accumulating unit 13b is supplied to the waveform memory 12 as a read address. Further, the decimal part FAD of the address signal is supplied to the interpolation unit 14. Further, the pitch information accumulating section 13b outputs a carry signal INC when the accumulation of the F * number causes a carry from a decimal part to an integer part of the address signal.
【0036】補間部14 補間部14は、波形メモリ12に記憶された波形データ
のうちアドレス信号の整数部IADに対応したものを含
む所定個数の波形データWDと、アドレス信号の小数部
FADにより決定される補間係数列とを用いた補間演算
を周波数200kHzのクロックに同期して実行し、こ
の補間演算の結果得られる波形データWPを出力する。Interpolator 14 The interpolator 14 is determined by a predetermined number of waveform data WD including those corresponding to the integer part IAD of the address signal among the waveform data stored in the waveform memory 12 and the decimal part FAD of the address signal. An interpolation operation using the interpolation coefficient sequence is executed in synchronization with a clock having a frequency of 200 kHz, and waveform data WP obtained as a result of the interpolation operation is output.
【0037】図4は、補間部14の構成を示すブロック
図である。本実施例は上述の通り16チャネルの発音チ
ャネルを有しているため、これらの各チャネルに対応し
た補間処理を行い得るように構成する必要がある。ここ
で、1演算サイクル周期(1/200kHz)内におい
て16チャネル分の補間処理を全くの時分割処理により
行うとすると、個々の発音チャネルに対応した補間処理
の処理速度に対する要求はかなり厳しいものとなってし
まう。そこで、本実施例では、図4に示すように、補間
処理を行うためのハードウエアとして、波形データ記憶
ブロック16aおよび補間回路17aからなる系統(A
ブロック)、波形データ記憶ブロック16bおよび補間
回路17bからなる系統(Bブロック)、波形データ記
憶ブロック16cおよび補間回路17cからなる系統
(Cブロック)および波形データ記憶ブロック16dお
よび補間回路17dからなる系統(Dブロック)の4系
統を並列に設け、これらに各々4チャネル分の補間処理
を分担させ、上記処理速度に関する要求を緩和してい
る。FIG. 4 is a block diagram showing the configuration of the interpolation unit 14. Since the present embodiment has 16 sound channels as described above, it is necessary to configure so that interpolation processing corresponding to each of these channels can be performed. Here, if the interpolation processing for 16 channels is performed by a completely time-division processing within one operation cycle period (1/200 kHz), the demand for the processing speed of the interpolation processing corresponding to each sounding channel is extremely severe. turn into. Therefore, in the present embodiment, as shown in FIG. 4, as a hardware for performing the interpolation processing, a system (A) including the waveform data storage block 16a and the interpolation circuit 17a is used.
Block), a system (B block) composed of the waveform data storage block 16b and the interpolation circuit 17b, a system (C block) composed of the waveform data storage block 16c and the interpolation circuit 17c, and a system (C block) composed of the waveform data storage block 16d and the interpolation circuit 17d. D block) are provided in parallel, and interpolation processing for four channels is assigned to each of the four systems, thereby alleviating the demand for the processing speed.
【0038】補間部14には、800kHzの4相クロ
ックφA、φB、φC、φDが供給される。Aブロック〜D
ブロックはクロックφA〜φDにより各々の動作タイミン
グが制御される。この4相クロックφA、φB、φC、φD
の発生タイミングと発音チャネルの切換タイミングとは
同期している。従って、以下では4相クロックφA、
φB、φC、φDの各クロックをチャネルクロックと呼
ぶ。The interpolation unit 14 is supplied with 800 kHz four-phase clocks φ A , φ B , φ C , and φ D. A block to D
Block operation timing of each of which is controlled by a clock φ A ~φ D. These four-phase clocks φ A , φ B , φ C , φ D
Is synchronized with the sounding channel switching timing. Therefore, in the following, the four-phase clock φ A ,
Each clock of φ B , φ C and φ D is called a channel clock.
【0039】チャネルクロックφAは、1,5,9,1
3の各発音チャネルにおいて発生される。Aブロック
は、このチャネルクロックφAに同期し、これらの各発
音チャネルに対応した補間処理を実行する。また、チャ
ネルクロックφBは2,6,10,14の各発音チャネ
ルにおいて発生され、Bブロックはこのチャネルクロッ
クφBに同期し、これらの各発音チャネルに対応した補
間処理を実行する。他のブロックについても同様であ
り、CブロックはチャネルクロックφCに同期して3,
7,11,15の各発音チャネルに対応した補間処理
を、Dブロックは、チャネルクロックφDに同期して
4,8,12,16の各発音チャネルに対応した補間処
理を行う。The channel clock φ A is 1, 5, 9, 1
3 in each of the sounding channels. A block is synchronized to the channel clock phi A, it executes the interpolation processing corresponding to each of these sound channel. Further, the channel clock φ B is generated in each of the tone generation channels 2, 6, 10, and 14, and the B block executes an interpolation process corresponding to each tone generation channel in synchronization with the channel clock φ B. The same applies to the other blocks, C block 3 in synchronism with the channel clock phi C,
An interpolation processing corresponding to the respective sound channel of 7, 11 and 15, D block, performs interpolation processing corresponding to each sound channel of 4, 8, 12, 16 in synchronism with the channel clock phi D.
【0040】次にAブロック〜Dブロックの各々の内部
構成について説明する。まず、Aブロックにおいて、波
形データ記憶ブロック16aは、1,5,9,13の各
発音チャネルに対応した4チャネル分のシフトレジスタ
を有しており、各シフトレジスタは当該チャネルの補間
処理に使用する8個の波形データを記憶する。補間回路
17aは、1サンプリング周期(1/200kHz)の
間に各チャネル当たり8個の波形データからなる4チャ
ネル分の波形データを波形データ記憶ブロック16aか
ら受け取り、4チャネル分の補間処理を行う。この補間
処理は、各チャネル毎にそのチャネルのアドレス信号の
小数部FADに対応した補間係数を8個の波形データに
畳み込むことにより行う。Next, the internal configuration of each of the blocks A to D will be described. First, in the block A, the waveform data storage block 16a has shift registers for four channels corresponding to each of the tone generation channels 1, 5, 9, and 13. Each shift register is used for interpolation processing of the channel. 8 waveform data to be stored. The interpolation circuit 17a receives the waveform data of four channels consisting of eight waveform data for each channel from the waveform data storage block 16a during one sampling period (1/200 kHz), and performs interpolation processing of four channels. This interpolation processing is performed by convolving the interpolation coefficient corresponding to the decimal part FAD of the address signal of each channel into eight waveform data for each channel.
【0041】波形データ記憶ブロック16aに対する波
形データの書き込みはその必要性が生じた場合のみ行わ
れるようになっている。すなわち、波形データ記憶ブロ
ック16aに記憶された各発音チャネルに対応した各8
個の波形データは、各々、当該チャネルのアドレス信号
の整数部IADが変化しない限り、サンプリング周期が
切り換わったとしても引き続き補間処理に使用すること
ができる。そこで、ある発音チャネルのアドレス信号の
整数部IADが増加し、桁上げ信号INCが出力された
場合に、この増加した整数部IADに対応した波形デー
タを波形メモリ12から読み出すと共に当該チャネルの
新たな補間処理用の波形データとして波形データ記憶ブ
ロック16aに補充するようにしている。このように波
形データ記憶ブロック16aを介在させたことにより、
補間処理に使用する波形データを波形メモリ12から直
接読み出す方式に比べ、波形メモリ12の読み出し速度
に対する要求が緩和されている。他のB〜Dブロックも
以上説明したAブロックと全く同様な構成となってい
る。The writing of the waveform data to the waveform data storage block 16a is performed only when the necessity arises. That is, each of the eight channels corresponding to each tone generation channel stored in the waveform data storage block 16a.
Each of the pieces of waveform data can be continuously used for the interpolation process even if the sampling cycle is switched, as long as the integer part IAD of the address signal of the channel does not change. Therefore, when the integer part IAD of the address signal of a certain sounding channel increases and the carry signal INC is output, the waveform data corresponding to the increased integer part IAD is read out from the waveform memory 12 and a new channel of the channel is read. The waveform data is stored in the waveform data storage block 16a as waveform data for interpolation processing. By thus interposing the waveform data storage block 16a,
Compared with the method of directly reading out the waveform data used for the interpolation processing from the waveform memory 12, the demand for the reading speed of the waveform memory 12 is relaxed. The other blocks B to D have exactly the same configuration as the block A described above.
【0042】ダウンサンプリングFIRフィルタ15 ダウンサンプリングFIRフィルタ15は、補間部14
から得られるキーコードKCに対応した波形データ(サ
ンプリング周波数200kHz)を50kHzのサンプ
リング周波数の波形データに変換して出力する。ここ
で、サンプリング周波数の変換前の波形データが25k
Hzを越えるスペクトルを含んでいると、サンプリング
周波数の変換後の波形データに折り返し雑音が生じるこ
ととなる。そこで、本実施例においては、ダウンサンプ
リングFIRフィルタ15として25kHz以上の高域
スペクトルを除去するフィルタ特性を有するものを使用
し、サンプリング周波数200kHzの波形データから
25kHz以上のスペクトルを除去した上で50kHz
のサンプリング周波数への変換を行う。Down-sampling FIR filter 15 The down-sampling FIR filter 15
Is converted into waveform data having a sampling frequency of 50 kHz and output. Here, the waveform data before the conversion of the sampling frequency is 25 k.
If a spectrum exceeding Hz is included, aliasing noise occurs in the waveform data after the conversion of the sampling frequency. Therefore, in the present embodiment, a down-sampling FIR filter 15 having a filter characteristic of removing a high-frequency spectrum of 25 kHz or more is used, and after removing a spectrum of 25 kHz or more from waveform data of a sampling frequency of 200 kHz, the frequency is reduced to 50 kHz.
Is converted to the sampling frequency.
【0043】図5にダウンサンプリングFIRフィルタ
15の構成を示す。同図に示すように、ダウンサンプリ
ングFIRフィルタ15は、リングバッファ15a、チ
ャネル同期カウンタ15b、セレクタ15c、制御部1
5dおよびフィルタ演算処理部15eによって構成され
ている。FIG. 5 shows the configuration of the down-sampling FIR filter 15. As shown in the figure, the down-sampling FIR filter 15 includes a ring buffer 15a, a channel synchronization counter 15b, a selector 15c, and a control unit 1.
5d and a filter operation processing unit 15e.
【0044】リングバッファ15aは、RAM等によっ
て構成されており、制御部15dによる制御の下、補間
部14から出力される各チャネルに対応した波形データ
WPを順次記憶し、フィルタ処理に使用すべき波形デー
タをフィルタ演算処理部15eへ順次引き渡す。The ring buffer 15a is composed of a RAM or the like, and under the control of the control unit 15d, sequentially stores the waveform data WP output from the interpolation unit 14 and corresponding to each channel, and should be used for filter processing. The waveform data is sequentially delivered to the filter operation processing unit 15e.
【0045】チャンネル同期カウンタ15cは、発音チ
ャネルの切換タイミングに同期した200KHz×16
=3.2MHzのクロックφsyncをカウントし、このカ
ウント結果をアドレスデータWAとして出力する。The channel synchronization counter 15c has a frequency of 200 kHz × 16 synchronized with the switching timing of the sound channel.
= Counts clock phi sync of 3.2 MHz, and outputs the count result as address data WA.
【0046】セレクタ15cは、第1入力端にチャネル
同期カウンタ15cが出力するアドレスデータWAが与
えられ、第0入力端には制御部15dが出力するアドレ
スRAが与えられ、選択端子には12.8MHzのクロ
ックに同期した選択信号φSE Lが与えられる。選択信号
φSELが“1”の場合、セレクタ15cによってアドレ
スデータWAが選択され、リングバッファ15aにアド
レスとして与えられる。また、選択信号φSELが“1”
である期間、リングバッファ15aは書込みモードとさ
れ、このとき補間部14から出力される波形データWP
はリングバッファ15aにおけるアドレスデータWAに
対応したエリアに書込まれる。上述の通り、アドレスデ
ータWAは発音チャネルの切り換わり毎にインクリメン
トされるため、補間部14から順次出力される波形デー
タWP,WP,…は、リングバッファ15a内の連続し
た各アドレスを順次書込まれてゆくこととなる。一方、
選択信号φSELが“0”の場合には、制御部15dが出
力するアドレスデータRAがセレクタ15cにより選択
され、リングバッファ15aへアドレスとして供給され
る。また、選択信号φSELが“0”である期間、リング
バッファ15aは読み出しモードとなり、リングバッフ
ァ15aにおけるアドレスデータRAに対応したエリア
から波形データWPが読み出される。The selector 15c has a first input terminal supplied with the address data WA output from the channel synchronization counter 15c, a zeroth input terminal supplied with the address RA output from the control unit 15d, and a selector terminal connected to the selector 12c. given the selection signal φ SE L synchronized with the 8MHz clock. When the selection signal φ SEL is “1”, the address data WA is selected by the selector 15c and supplied to the ring buffer 15a as an address. When the selection signal φ SEL is “1”
, The ring buffer 15a is in the write mode, and the waveform data WP output from the interpolation unit 14 at this time is
Is written in the area corresponding to the address data WA in the ring buffer 15a. As described above, since the address data WA is incremented each time the sounding channel is switched, the waveform data WP, WP,... Sequentially output from the interpolation unit 14 sequentially writes successive addresses in the ring buffer 15a. It will be rare. on the other hand,
When the selection signal φ SEL is “0”, the address data RA output from the control unit 15d is selected by the selector 15c and supplied as an address to the ring buffer 15a. Further, while the selection signal φ SEL is “0”, the ring buffer 15a is in the read mode, and the waveform data WP is read from an area of the ring buffer 15a corresponding to the address data RA.
【0047】選択信号φSELは補間部14からの波形デ
ータの出力タイミングに合せて切り換えられる。すなわ
ち、上述した補間部14は1演算周期(1/200kH
z)の間に16チャネル分の波形データを出力し、これ
らの各チャネルの波形データは3.2MHzのクロック
に同期してダウンサンプリングFIRフィルタ15へ供
給される。このため、本実施例では、12.8MHzの
クロックが4回発生される毎に1回の割合で上記選択信
号φSELを“1”とし、波形データのリングバッファ1
5aへの書込みを行う。他の期間は選択信号φSELを
“0”とし、波形データのリングバッファ15aからの
読出しを行う。The selection signal φ SEL is switched in accordance with the output timing of the waveform data from the interpolation section 14. That is, the above-described interpolation unit 14 performs one operation cycle (1/200 kHz).
During z), waveform data of 16 channels is output, and the waveform data of each channel is supplied to the down-sampling FIR filter 15 in synchronization with a 3.2 MHz clock. For this reason, in this embodiment, the selection signal φ SEL is set to “1” once every four 12.8 MHz clocks generated, and the ring buffer 1 of the waveform data is generated.
Write to 5a. In other periods, the selection signal φ SEL is set to “0”, and the waveform data is read from the ring buffer 15a.
【0048】次にフィルタ演算部15eについて説明す
る。このフィルタ演算部15eにおいて、15fはリン
グバッファ15aから読み出された波形データWPを遅
延させて出力するラッチ回路であり、この遅延処理の遅
延量は制御部15dにより設定される。15gはリング
バッファ15aから読み出された補間波形データWPと
ラッチ回路15fの出力とを加算する加算器である。ま
た、15hは乗算器であり、加算器15gの出力と制御
部15dから供給されるフィルタ係数とを乗算して出力
する。15iは乗算器15hの出力を累算する累算器で
ある。Next, the filter operation section 15e will be described. In the filter operation unit 15e, reference numeral 15f denotes a latch circuit for delaying and outputting the waveform data WP read from the ring buffer 15a, and the delay amount of this delay processing is set by the control unit 15d. An adder 15g adds the interpolation waveform data WP read from the ring buffer 15a and the output of the latch circuit 15f. A multiplier 15h multiplies the output of the adder 15g by a filter coefficient supplied from the controller 15d and outputs the result. An accumulator 15i accumulates the output of the multiplier 15h.
【0049】このフィルタ演算部15eは、リングバッ
ッファ15a内に蓄積された過去11個分の波形データ
WPを使用し、カットオフ周波数が25kHzの高域除
去処理を波形データに対して施す。この高域除去処理
は、図6に示す周知のFIRフィルタ演算である。図6
において、D,D,…は補間部14によって発生された
波形データを各々1サンプリング周期(1/200kH
z)相当遅延させる遅延処理である。また、WPi(i
=1〜11)は、遅延処理により得られた過去11個の
波形データであり、WP1が最も古い波形データ、WP
11が最も新しい波形データである。a-5〜a5は各波形
データWPi(i=1〜11)に乗じられるフィルタ係
数であり、ACCはフィルタ係数の乗算結果を累算する
累算器である。フィルタ係数としては、図7に示すよう
に標本化関数sinθ/θを一定間隔(この例ではπ/
4間隔)でサンプリングしたときの各瞬時値を使用す
る。The filter operation unit 15e uses the past eleven pieces of waveform data WP stored in the ring buffer 15a, and performs high-frequency removal processing with a cutoff frequency of 25 kHz on the waveform data. This high band removal processing is a well-known FIR filter operation shown in FIG. FIG.
, D, D,... Respectively represent the waveform data generated by the interpolation unit 14 for one sampling period (1/200 kHz).
z) This is a delay processing for considerably delaying. WP i (i
= 1 to 11) are the past 11 waveform data obtained by the delay processing, and WP 1 is the oldest waveform data, WP 1
11 is the newest waveform data. a -5 ~a 5 is a filter coefficient to be multiplied to each waveform data WP i (i = 1~11), ACC is an accumulator for accumulating the multiplication results of the filter coefficients. As shown in FIG. 7, the sampling function sin θ / θ is a constant interval (in this example, π /
Each instantaneous value when sampling at (4 intervals) is used.
【0050】さて、フィルタ係数a-5〜a5に着目する
と、a-i=ai(i=1〜5)なる関係がある。従っ
て、図6に示すフィルタ処理は、図8に示すようにもの
に等価変形することができる。この図8に示すフィルタ
演算では、フィルタ係数a-iおよびaiに対応した各波
形データを予め加算した上でフィルタ係数aiを乗算す
ることにより乗算回数を図6に示すものの半分にしてい
る。Now, focusing on the filter coefficients a -5 to a 5 , there is a relationship of a -i = a i (i = 1 to 5). Therefore, the filter processing shown in FIG. 6 can be equivalently modified to that shown in FIG. In the filter operation shown in FIG. 8, the waveform data corresponding to the filter coefficients a -i and a i are added in advance, and then multiplied by the filter coefficient a i , thereby reducing the number of times of multiplication to half that shown in FIG. .
【0051】本実施例におけるフィルタ演算部15e
は、制御部15dによる制御の下、図8に示す手順に従
って波形データWPに対するフィルタ演算を行うもので
ある。すなわち、フィルタ演算部15eは、加算器15
gおよび乗算器15hにより、波形データWP11および
WP1を加算してフィルタ係数a5を乗算する処理、波形
データWP10およびWP2を加算してフィルタ係数a4を
乗算する処理、波形データW9およびWP3を加算してフ
ィルタ係数a3を乗算する処理、波形データWP8および
WP4を加算してフィルタ係数a2を乗算する処理、波形
データWP7およびWP5を加算してフィルタ係数a1を
乗算する処理、波形データWP6にフィルタ係数a0を乗
算する処理を順次実行し、それらの結果を累算器15i
によって累算する。累算器15iの累算結果は周波数5
0kHzのサンプリングクロックに同期して読み出さ
れ、デジタルフィルタ6(図1参照)へ出力される。The filter operation unit 15e in the present embodiment
Performs a filter operation on the waveform data WP according to the procedure shown in FIG. 8 under the control of the control unit 15d. That is, the filter operation unit 15 e
The g and a multiplier 15h, the process of multiplying the filter coefficients a 4 by adding processing for multiplying the filter coefficients a 5 by adding the waveform data WP 11 and WP 1, the waveform data WP 10 and WP 2, waveform data W 9 and WP 3 to be multiplied by a filter coefficient a 3 ; waveform data WP 8 and WP 4 to be multiplied by a filter coefficient a 2 ; waveform data WP 7 and WP 5 to be added to a filter coefficient a 1 and a process of multiplying the waveform data WP 6 by a filter coefficient a 0 are sequentially executed, and the results are accumulated in an accumulator 15i.
To accumulate. The accumulation result of accumulator 15i is frequency 5
The data is read out in synchronization with the sampling clock of 0 kHz and output to the digital filter 6 (see FIG. 1).
【0052】制御部15dは、上記フィルタ演算を構成
する各処理に必要な波形データWPiの読み出しアドレ
スRAを順次出力すると共に上記各処理に必要なフィル
タ係数をフィルタ演算部15eへ順次出力する。また、
上記フィルタ演算は、リングバッファ15aに対する書
込みが行われないタイムスロットを利用して行われる。The control unit 15d sequentially outputs the read address RA of the waveform data WPi necessary for each process constituting the filter operation, and sequentially outputs the filter coefficients required for each process to the filter operation unit 15e. Also,
The filter operation is performed using a time slot in which writing to the ring buffer 15a is not performed.
【0053】B.実施例の動作 図9は波形発生器5内部において行われるフィルタ処理
を示すものである。図10は波形発生器5内の補間部1
4の動作を示すタイムチャートである。また、図11は
波形発生器5内のダウンサンプリングFIRフィルタ1
5の動作を示すタイムチャートである。以下、既に参照
した図に加えてこれらの図を参照し、本実施例の動作を
説明する。B. Operation of Embodiment FIG. 9 shows a filtering process performed inside the waveform generator 5. FIG. 10 shows the interpolation unit 1 in the waveform generator 5.
6 is a time chart illustrating the operation of FIG. FIG. 11 shows a down-sampling FIR filter 1 in the waveform generator 5.
6 is a time chart illustrating the operation of Example No. 5; Hereinafter, the operation of this embodiment will be described with reference to these figures in addition to the figures already referred to.
【0054】鍵盤1におけるいずれかの鍵が押鍵される
と、そのキードードKCとキーオン信号KONが押鍵検
出回路2により出力され、押鍵速度を表わすタッチ情報
ITがタッチ検出回路3により出力される。そして、ア
サイナ回路4により、この押鍵操作に対応した楽音形成
処理を行うべき発音チャネルCHが選択される。When any key on the keyboard 1 is depressed, its key word KC and key-on signal KON are output by the key press detection circuit 2, and touch information IT representing the key press speed is output by the touch detection circuit 3. You. Then, the assigner circuit 4 selects a tone generation channel CH on which a tone generation process corresponding to the key depression operation is to be performed.
【0055】そして、波形発生器5において、アサイナ
回路4によって選択された発音チャネルを利用すること
により、キーコードKCに対応した波形データを形成す
る処理が以下のようにして行われる。Then, in the waveform generator 5, a process of forming waveform data corresponding to the key code KC is performed as follows by using the tone generation channel selected by the assigner circuit 4.
【0056】まず、アドレス生成部13内の音高情報発
生部13aにより、1/200kHzの演算サイクル周
期を16分割した各タイムスロットのうち発音チャネル
CHに対応したタイムスロットにおいて、キーコードK
Cに対応したF*ナンバが発生される。また、音高情報
累算部13bにおいては、キーオン信号KONの立上が
りにより、当該発音チャネルCHに対応したアドレス信
号が「0」に初期化される。以後、演算サイクル周期が
切り換わり、当該発音チャネルCHに対応したタイムス
ロットとなる毎に、音高情報累算部13bにより上記キ
ーコードKCに対応したF*ナンバの累算が行われ、こ
の累算結果たるアドレス信号がキーコードKCに対応し
たレートで増加してゆく。First, the pitch code generator 13a in the address generator 13 sets the key code K in the time slot corresponding to the sound channel CH among the time slots obtained by dividing the operation cycle period of 1/200 kHz into 16 parts.
An F * number corresponding to C is generated. In the pitch information accumulating section 13b, the address signal corresponding to the sounding channel CH is initialized to "0" by the rise of the key-on signal KON. Thereafter, every time the operation cycle period is switched and the time slot corresponding to the sounding channel CH is reached, the pitch information accumulating section 13b accumulates the F * number corresponding to the key code KC, and accumulates the F * number. The address signal resulting from the calculation increases at a rate corresponding to the key code KC.
【0057】このアドレス信号の整数部IADは波形メ
モリ12へ供給され、小数部FADは補間部14へ供給
される。また、アドレス信号の整数部IADが増加する
場合には桁上げ信号INCが補間部14へ供給される。The integer part IAD of the address signal is supplied to the waveform memory 12, and the decimal part FAD is supplied to the interpolation unit 14. When the integer part IAD of the address signal increases, the carry signal INC is supplied to the interpolation unit 14.
【0058】補間部14では、図10に示すように時分
割処理により各発音チャネルに対応した補間処理が行わ
れる。Aブロック〜Dブロックの各ブロックは、800
kHzのチャネルクロックφA〜φDに各々同期し、当該
ブロックが分担する4チャネル分の補間処理を時分割処
理により実行する。In the interpolation section 14, as shown in FIG. 10, interpolation processing corresponding to each sounding channel is performed by time division processing. Each block from block A to block D is 800
In synchronization with the channel clocks φ A to φ D of kHz, interpolation processing for four channels shared by the block is executed by time division processing.
【0059】以下、押鍵操作に応答して選択された発音
チャネルCHが第5チャネルである場合を例に、補間部
14の動作を説明する。Hereinafter, the operation of the interpolation unit 14 will be described by taking as an example a case where the tone generation channel CH selected in response to the key pressing operation is the fifth channel.
【0060】まず、各波形データ記憶ブロック16a〜
16d内の各シフトレジスタには、各発音チャネルの補
間処理に必要な波形データが記憶される。本例における
第5チャネルに関しては、この第5チャネルのアドレス
信号の整数部IADに対応した波形データWDを含む8
個の波形データが波形記憶ブロック16a内の第5チャ
ネル用のシフトレジスタに記憶される。ここで、第5発
音チャネルに対応したアドレス信号の整数部IADが増
加した場合、その発音チャネルに対応した補間処理に使
用する波形データを更新する必要があるが、この更新は
次のようにして行われる。First, each of the waveform data storage blocks 16a to 16a
Each shift register in 16d stores waveform data necessary for interpolation processing of each tone generation channel. With respect to the fifth channel in this example, the waveform data including the waveform data WD corresponding to the integer part IAD of the address signal of the fifth channel is included.
The pieces of waveform data are stored in the shift register for the fifth channel in the waveform storage block 16a. Here, when the integer part IAD of the address signal corresponding to the fifth sounding channel increases, it is necessary to update the waveform data used for the interpolation processing corresponding to the sounding channel. This updating is performed as follows. Done.
【0061】すなわち、第5チャネルのアドレス信号の
整数部IADが増加したことにより、この増加した整数
部IADに対応した波形データが波形メモリ12から読
み出される。また、第5チャネルに同期したタイミング
で桁上げ信号INCが発生される。この結果、波形デー
タ記憶ブロック16a内の第5チャネル用のシフトレジ
スタに波形メモリ12から読み出された波形データが書
き込まれることとなる。この新たな波形データの書き込
みにより、シフトレジスタ内の既存の波形データは順次
後段へシフトされ、最後段のもの、すなわち、最も過去
にシフトレジスタに入力された波形データが廃棄され
る。That is, as the integer part IAD of the address signal of the fifth channel increases, the waveform data corresponding to the increased integer part IAD is read from the waveform memory 12. The carry signal INC is generated at a timing synchronized with the fifth channel. As a result, the waveform data read from the waveform memory 12 is written to the shift register for the fifth channel in the waveform data storage block 16a. By writing the new waveform data, the existing waveform data in the shift register is sequentially shifted to the subsequent stage, and the last waveform data, that is, the waveform data input to the shift register most recently is discarded.
【0062】また、第5チャネルに対応したアドレス信
号の小数部FADは、演算サイクル周期を16分割した
各タイムスロットのうち第5チャネルに対応したタイム
スロットにおいて、補間回路17aに引き渡されてラッ
チされる。そして、第5チャネルに対応したタイムスロ
ットの後の4個のタイムスロットを要して、波形データ
記憶ブロック16a内の第5チャネル用シフトレジスタ
から8個の波形データが順次読み出されて補間回路17
aに供給される。この間、補間回路17aにおいては、
これらの波形データに対し、上記小数部FADに対応し
た8個の補間係数が順次乗算されると共に乗算結果の累
算が行われ、この累算の結果、整数部IADおよび小数
部FADからなるアドレス信号に正確に対応した波形デ
ータWPが得られる。The fractional part FAD of the address signal corresponding to the fifth channel is delivered to and latched by the interpolation circuit 17a in the time slot corresponding to the fifth channel among the time slots obtained by dividing the operation cycle period into sixteen. You. Four time slots after the time slot corresponding to the fifth channel are required, and eight pieces of waveform data are sequentially read from the fifth channel shift register in the waveform data storage block 16a, and the interpolation circuit is used. 17
a. During this time, in the interpolation circuit 17a,
These waveform data are sequentially multiplied by eight interpolation coefficients corresponding to the decimal part FAD, and the result of the multiplication is accumulated. As a result of this accumulation, an address consisting of an integer part IAD and a decimal part FAD is obtained. Waveform data WP accurately corresponding to the signal is obtained.
【0063】以上の補間処理が1/200kHzの各演
算サイクル毎に実行され、キーコードKCに対応した2
00kHzのサンプリング周波数の波形データWPがダ
ウンサンプリングFIRフィルタ15へ出力される。第
5チャネル以外の発音チャネルが楽音形成処理に割り当
てられている場合には、その発音チャネルに対応した構
成要素により上記と同様な処理が行われる。そして、最
大16チャネル分の波形データWPが1/200kHz
の演算サイクルの間にダウンサンプリングFIRフィル
タ15へ出力される。The above-described interpolation processing is executed for each operation cycle of 1/200 kHz, and the interpolation processing corresponding to the key code KC is performed.
Waveform data WP having a sampling frequency of 00 kHz is output to down-sampling FIR filter 15. When a tone generation channel other than the fifth channel is assigned to the tone generation processing, the same processing as described above is performed by a component corresponding to the tone generation channel. The waveform data WP for a maximum of 16 channels is 1/200 kHz.
Is output to the down-sampling FIR filter 15 during the calculation cycle.
【0064】ダウンサンプリングFIRフィルタ15内
では各発音チャネルに対応したフィルタ処理が1/80
0kHzの演算サイクル周期毎に行われる。また、フィ
ルタ演算を構成する各ステップは、図11に示すよう
に、演算サイクル周期を16分割したタイムスロットを
利用して行われる。上述した通り、最大16チャネル分
の波形データWPが1/200kHzの演算サイクルの
間に補間部14から出力されるため、ダウンサンプリン
グFIRフィルタ15へは1/3.2MHzの周期で波
形データWPが供給される。これらの波形データWP
は、図11に示すように、1/800kHzの演算サイ
クル周期を16分割した各タイムスロットのうち第1、
第5、第9、第13の各タイムスロットを利用してリン
グバッファ15aに順次書込まれる。In the down-sampling FIR filter 15, filter processing corresponding to each tone generation channel is performed by 1/80.
It is performed every operation cycle period of 0 kHz. Each step of the filter operation is performed using a time slot obtained by dividing the operation cycle period into 16 as shown in FIG. As described above, since the waveform data WP for a maximum of 16 channels is output from the interpolation unit 14 during the calculation cycle of 1/200 kHz, the waveform data WP is sent to the down-sampling FIR filter 15 at a cycle of 1 / 3.2 MHz. Supplied. These waveform data WP
Is the first of the time slots obtained by dividing the operation cycle period of 1/800 kHz into 16 as shown in FIG.
The data is sequentially written to the ring buffer 15a using the fifth, ninth, and thirteenth time slots.
【0065】そして、他のタイムスロットを利用し、図
8に示すフィルタ処理が行われる。すなわち、図11に
示すように、第2タイムスロットおよび第3タイムスロ
ットにおいて、フィルタ処理に使用する波形データのう
ち最も古い波形データWP1と最も新しい波形データW
P11がリングバッファ15aから順次読み出されてフィ
ルタ演算部15eへ送られると共にこれらの波形データ
WP1およびWP11に適用すべきフィルタ係数a5(=a
-5)がフィルタ演算部15eへ送られる。Then, the filter processing shown in FIG. 8 is performed using another time slot. That is, as shown in FIG. 11, in the second time slot and the third time slot, the oldest waveform data WP 1 and the newest waveform data W
P 11 is the filter coefficient a 5 to be applied to these waveform data and WP 1 WP 11 with sent sequentially read from the ring buffer 15a to the filter calculation unit 15e (= a
-5 ) is sent to the filter operation unit 15e.
【0066】そして、フィルタ演算部15eにおいては
次の処理が行われる。まず、第2タイムスロットにおい
て読み出された波形データWP1はラッチ15fによっ
て保持される。そして、第3タイムスロットになると、
その時点においてリングバッファ15aから読み出され
た波形データWP11と、ラッチ15fに保持された波形
データWP1とが加算器15gによって加算される。そ
して、この加算結果に対するフィルタ係数a5の乗算が
乗算器15hによって行われ、この乗算結果が累算器1
5iへ送られる。The following processing is performed in the filter operation section 15e. First, waveform data WP 1 read at the second time slot is held by the latch 15f. And when it comes to the third time slot,
A waveform data WP 11 read from the ring buffer 15a at that time, the waveform data WP 1 held in the latch 15f is added by the adder 15 g. Then, the multiplication of the filter coefficients a 5 for this sum performed by a multiplier 15h, the multiplication result accumulator 1
5i.
【0067】同様に、第4および第6タイムスロットに
おいては波形データWP2およびWP10を加算してフィ
ルタ係数a4を乗算する処理が、第7および第8タイム
スロットにおいては波形データWP3およびWP9を加算
してフィルタ係数a3を乗算する処理が、第10および
第11タイムスロットにおいては波形データWP4およ
びWP8を加算してフィルタ係数a2を乗算する処理が、
第12および第14タイムスロットにおいては波形デー
タWP5およびWP7を加算してフィルタ係数a4を乗算
する処理が実行される。そして、第15タイムスロット
においては波形データWP6にフィルタ係数a0=「1」
を乗算する処理が実行される。以上の各乗算の結果が累
算器15iによって累算され、この累算結果が出力され
る。[0067] Similarly, the process in the fourth and sixth time slot is multiplied by the filter coefficients a 4 by adding the waveform data WP 2 and WP 10 are waveform data WP 3 and in the seventh and eighth time slots The process of adding WP 9 and multiplying by the filter coefficient a 3 is the process of adding the waveform data WP 4 and WP 8 and multiplying by the filter coefficient a 2 in the tenth and eleventh time slots.
Processing for multiplying the filter coefficients a 4 by adding the waveform data WP 5 and WP 7 is executed in the twelfth and fourteenth time slots. Then, in the fifteenth time slot, the waveform data WP 6 has a filter coefficient a 0 = “1”.
Is performed. The results of the above multiplications are accumulated by the accumulator 15i, and the accumulated results are output.
【0068】以上説明した1チャネル分のフィルタ処理
が1/800kHzの演算サイクル周期を要して行わ
れ、25kHz以上のスペクトルが除去された波形デー
タが得られる。また、これに引き続き、他の15チャネ
ルについてのフィルタ処理が実行される。従って、1チ
ャネル分の波形データは、800kHz/16=50k
Hzの周波数に同期して出力されることとなる。The above-described filter processing for one channel is performed with an operation cycle period of 1/800 kHz, and waveform data from which a spectrum of 25 kHz or more has been removed is obtained. Subsequently, the filtering process is performed for the other 15 channels. Therefore, the waveform data for one channel is 800 kHz / 16 = 50 k
It is output in synchronization with the frequency of Hz.
【0069】このようにして、キーコードKCに対応し
た50kHzのサンプリング周波数の波形データが得ら
れ、この波形データがデジタルフィルタ6を介した後、
乗算器8によってエンベロープが付与され、楽音信号が
形成される。そして、チャネル累算部9により全発音チ
ャネルについて楽音信号が累算され、D/A変換器1
0、サウンドシステム11を介して楽音として出力され
る。In this manner, waveform data having a sampling frequency of 50 kHz corresponding to the key code KC is obtained.
An envelope is provided by the multiplier 8 to form a tone signal. The tone signal is accumulated by the channel accumulating section 9 for all tone generation channels, and the D / A converter 1
0, output as a musical tone through the sound system 11.
【0070】以上、波形データの波形メモリ12からの
読み出し、補間処理、フィルタ処理といった一連の手順
を時系列的に説明したが、ここで、処理対象たる波形デ
ータのスペクトルの変化に着目して本実施例の作用効果
の説明を行う。A series of procedures such as readout of waveform data from the waveform memory 12, interpolation processing, and filter processing have been described in a time-series manner. Here, the present invention is focused on a change in the spectrum of the waveform data to be processed. The operation and effect of the embodiment will be described.
【0071】補間部14が行う補間処理は、欠落してい
る波形データを補う処理であるが、処理前後の波形デー
タのスペクトルの変化に着目すると、高域除去処理であ
ると言える。図9(a)は上記補間処理によって波形デ
ータWDに対して施された高域除去処理の通過帯域を示
すものである。この図に示す通り、高域除去処理の高域
遮断周波数は、F*ナンバが高くなる程、高くなる。The interpolation process performed by the interpolation unit 14 is a process for compensating for missing waveform data. However, focusing on a change in the spectrum of the waveform data before and after the process, it can be said that the interpolation process is a high-frequency removal process. FIG. 9A shows a pass band of the high-frequency removal processing performed on the waveform data WD by the interpolation processing. As shown in this figure, the higher cutoff frequency of the higher band removal processing increases as the F * number increases.
【0072】ここで、上述した従来の技術によれば、波
形メモリ内の波形データのスペクトル如何によってはF
ナンバが1より大きくなっただけで折り返し雑音が生じ
た。しかし、本実施例においては、補間処理を200k
Hzの演算サイクル周波数に従って行うので、補間によ
り得られる波形データWPのスペクトル(イメージスペ
クトルを除く。)の上限周波数が100kHz以下であ
れば折り返し雑音は生じない。以下、詳述する。Here, according to the above-described conventional technique, the frequency of the F data depends on the spectrum of the waveform data in the waveform memory.
Even if the number was larger than 1, aliasing noise occurred. However, in this embodiment, the interpolation processing is performed at 200 k
Since the calculation is performed according to the operation cycle frequency of Hz, if the upper limit frequency of the spectrum (excluding the image spectrum) of the waveform data WP obtained by interpolation is 100 kHz or less, no aliasing noise occurs. The details will be described below.
【0073】まず、従来技術の説明において参照した図
14に示すスペクトル分布を有する波形データ(サンプ
リング周波数48kHz)が波形メモリ12に記憶され
ていたとする。仮にF*ナンバ=0.25(Fナンバ=
1相当)とし、このF*ナンバを累算してアドレス信号
を発生し、波形メモリ12内の波形データを使用して、
このアドレス信号に対応した波形データを補間演算によ
り再生したとすると、この場合に再生される波形のスペ
クトル(イメージスペクトルを除く。)の上限周波数は
25kHzとなる。First, it is assumed that waveform data (sampling frequency 48 kHz) having the spectrum distribution shown in FIG. 14 referred to in the description of the prior art is stored in the waveform memory 12. Suppose F * number = 0.25 (F number =
1), an address signal is generated by accumulating the F * number, and using the waveform data in the waveform memory 12,
If the waveform data corresponding to this address signal is reproduced by interpolation, the upper limit frequency of the spectrum of the reproduced waveform (excluding the image spectrum) in this case is 25 kHz.
【0074】そして、F*ナンバ=0.3(Fナンバ=
1.2相当)の条件で波形データの再生を行った場合に
は、F*ナンバ=0.25のときの再生波形を時間軸上
に沿って(1/1.2)倍に圧縮し、この圧縮した波形
を200kHzのサンプリングクロックによりサンプリ
ングし直したものと同じ波形が再生される。Then, F * number = 0.3 (F number =
1.2), the reproduced waveform when F * number = 0.25 is compressed to (1 / 1.2) times along the time axis, The same waveform as that obtained by re-sampling this compressed waveform with a sampling clock of 200 kHz is reproduced.
【0075】従って、この場合の再生波形のスペクトル
分布は、次のようになる。まず、F*ナンバ=0.3と
したことにより、再生波形のスペクトルSAは、図12
に示すように、Fナンバ=0.25のときの再生波形の
スペクトルを周波数軸上に沿って1.2倍(=0.3/
0.25倍)に伸張したものとなる。また、補間処理に
より破線によって示すイメージスペクトルは除去される
が、200kHzのサンプリング周波数によってサンプ
リングしたことによるイメージスペクトルSBが新たに
再生波形のスペクトルとして加わる。このイメージスペ
クトルSBは、その周波数範囲がF*ナンバ=0.25
の場合の1.2倍に広がるが、F*ナンバ=0.3に対
応した本来必要な波形のスペクトルSAと周波数軸上に
おいて充分に離れているので、相互に重複せず、折り返
し雑音が発生しない。Accordingly, the spectrum distribution of the reproduced waveform in this case is as follows. First, by setting F * number = 0.3, the spectrum SA of the reproduced waveform becomes
As shown in the figure, the spectrum of the reproduced waveform when the F number = 0.25 is 1.2 times (= 0.3 / 0.3) along the frequency axis.
(0.25 times). Although the image spectrum indicated by the broken line is removed by the interpolation processing, the image spectrum SB obtained by sampling at the sampling frequency of 200 kHz is newly added as the spectrum of the reproduced waveform. This image spectrum SB has a frequency range of F * number = 0.25.
However, since it is sufficiently separated on the frequency axis from the spectrum SA of the originally required waveform corresponding to F * number = 0.3, it does not overlap with each other, and aliasing noise is generated. do not do.
【0076】本実施例において、波形メモリ12内の波
形データWDのスペクトル(イメージスペクトルを除
く。)の上限周波数が25kHzである場合には、この
波形データWDの音高の4倍以内の音高の波形データW
Pであれば折り返し雑音が生じさせることなく発生する
ことができる。In this embodiment, when the upper limit frequency of the spectrum (excluding the image spectrum) of the waveform data WD in the waveform memory 12 is 25 kHz, the pitch within four times the pitch of the waveform data WD. Waveform data W
P can be generated without causing aliasing noise.
【0077】ダウンサンプリングFIRフィルタ15
は、図9(b)に示すように高域遮断周波数25kHz
の帯域通過特性を有しているため、図9(c)に示すよ
うに、いかなるキーコードKCに対応した波形データW
Pも25kHz以下の帯域にスペクトルが制限される。
従って、この波形データWPを50kHzのサンプリン
グ周波数で出力した場合、折り返し雑音は全く生じな
い。Downsampling FIR filter 15
Is a high frequency cutoff frequency of 25 kHz as shown in FIG.
9C, the waveform data W corresponding to any key code KC as shown in FIG.
The spectrum of P is also limited to a band of 25 kHz or less.
Therefore, when this waveform data WP is output at a sampling frequency of 50 kHz, no aliasing noise is generated.
【0078】なお、上記実施例では、キーコードKCに
対応した波形データWPを得るまでの演算サイクル周波
数を、波形発生器5から最終的に出力する波形データの
サンプリング周波数50kHzの4倍にしたが、他の周
波数を使用してもよい。要は、最終的なサンプリング周
波数よりも高速な周波数により、キーコードKCに対応
した波形データWPを得るまでの演算処理を行うように
構成すればよく、このように構成することにより上記実
施例と同様の効果が得られる。また、演算サイクル周波
数と最終的なサンプリング周波数は整数比である必要も
ない。In the above embodiment, the operation cycle frequency until the waveform data WP corresponding to the key code KC is obtained is four times the sampling frequency 50 kHz of the waveform data finally output from the waveform generator 5. , Other frequencies may be used. In short, what is necessary is just to configure so that the arithmetic processing until obtaining the waveform data WP corresponding to the key code KC is performed at a frequency higher than the final sampling frequency. Similar effects can be obtained. Further, the operation cycle frequency and the final sampling frequency need not be an integer ratio.
【0079】[0079]
【発明の効果】以上説明したように、請求項1または2
に係る発明によれば、指定された音高に対応した波形デ
ータが得られるまでは、最終的なサンプリング周波数よ
りも高い演算サイクル周波数に同期して処理を行い、こ
の波形データに対して予め高域除去処理を施した上で最
終的なサンプリング周波数への変換し、楽音信号として
出力するようにしたので、指定された音高が高い場合に
おいても折り返し雑音を発生させることなく楽音信号を
発生することができるという効果がある。また、請求項
2に係る発明によれば、複数の時分割チャネルに対応し
た補間演算を高速実行することが可能であるため、楽音
信号発生装置内での補間波形データの生成のための処理
を折り返し雑音を発生させることなく実行することがで
きるという効果がある。As described above, claim 1 or claim 2
According to the invention according to the above, processing is performed in synchronization with the operation cycle frequency higher than the final sampling frequency until waveform data corresponding to the designated pitch is obtained, and a high After converting to the final sampling frequency after performing the band elimination processing and outputting it as a musical tone signal, a musical tone signal is generated without generating aliasing noise even when the designated pitch is high. There is an effect that can be. Further, according to the second aspect of the present invention, it is possible to execute an interpolation operation corresponding to a plurality of time-division channels at a high speed, so that a process for generating interpolation waveform data in a tone signal generator is performed. There is an effect that the processing can be performed without generating aliasing noise.
【図1】 この発明による一実施例の全体構成を示すブ
ロック図である。FIG. 1 is a block diagram showing an overall configuration of an embodiment according to the present invention.
【図2】 波形発生器5の構成を示すブロック図であ
る。FIG. 2 is a block diagram showing a configuration of a waveform generator 5.
【図3】 アドレス発生部12の構成を示すブロック図
である。FIG. 3 is a block diagram illustrating a configuration of an address generation unit 12;
【図4】 補間部14の構成を示すブロック図である。FIG. 4 is a block diagram illustrating a configuration of an interpolation unit 14.
【図5】 ダウンサンプリングFIRフィルタ15の構
成を示すブロック図である。FIG. 5 is a block diagram showing a configuration of a downsampling FIR filter 15;
【図6】 ダウンサンプリングFIRフィルタ15が行
うフィルタ処理の内容を説明する図である。FIG. 6 is a diagram illustrating the contents of a filtering process performed by a downsampling FIR filter 15;
【図7】 ダウンサンプリングFIRフィルタ15が行
うフィルタ処理の内容を説明する図である。FIG. 7 is a diagram illustrating the contents of a filtering process performed by a downsampling FIR filter 15;
【図8】 ダウンサンプリングFIRフィルタ15が行
うフィルタ処理の内容を説明する図である。FIG. 8 is a diagram illustrating the contents of a filtering process performed by a downsampling FIR filter 15;
【図9】 波形発生器5のフィルタ特性を説明するため
の図である。FIG. 9 is a diagram for explaining filter characteristics of the waveform generator 5;
【図10】 補間部14の動作を示すタイムチャートで
ある。FIG. 10 is a time chart showing the operation of the interpolation unit 14;
【図11】 ダウンサンプリングFIRフィルタ15の
動作を示すタイムチャートである。11 is a time chart showing the operation of the downsampling FIR filter 15. FIG.
【図12】 F*ナンバ=0.3における波形データW
Pのスペクトル分布を示す図である。FIG. 12 shows waveform data W at F * number = 0.3.
It is a figure showing the spectrum distribution of P.
【図13】 従来例を説明するための図である。FIG. 13 is a diagram for explaining a conventional example.
【図14】 従来例を説明するための図である。FIG. 14 is a diagram for explaining a conventional example.
【図15】 従来例を説明するための図である。FIG. 15 is a diagram for explaining a conventional example.
【図16】 従来例を説明するための図である。FIG. 16 is a diagram for explaining a conventional example.
【図17】 従来例を説明するための図である。FIG. 17 is a diagram for explaining a conventional example.
【図18】 従来例を説明するための図である。FIG. 18 is a diagram for explaining a conventional example.
【図19】 従来例を説明するための図である。FIG. 19 is a diagram for explaining a conventional example.
【図20】 従来例を説明するための図である。FIG. 20 is a diagram for explaining a conventional example.
12…アドレス発生部、13…波形メモリ、14…補間
部、15…ダウンサンプリングFIRフィルタ。12: address generation unit, 13: waveform memory, 14: interpolation unit, 15: downsampling FIR filter.
Claims (3)
によって指示された音高の楽音波形を表す所定のサンプ
リング周波数のデジタル楽音信号を出力する楽音信号発
生装置において、 楽音波形を一定時間間隔でサンプリングすることにより
得られた波形データを記憶した波形メモリと、 前記指示された音高に対応したレートで変化するアドレ
ス信号を前記サンプリング周波数よりも高い演算サイク
ル周波数に従って出力するアドレス信号発生手段と、 前記波形メモリに記憶された波形データのうち前記アド
レス信号の整数部に対応した所定個数の波形データと前
記アドレス信号の小数部に対応した補間演算用係数とを
用いた補間演算を前記演算サイクル周波数に従って実行
することにより、前記指示された音高を有する波形デー
タを出力する補間手段と、 前記補間手段によって出力された波形データに対し、所
定の高域遮断周波数以上のスペクトルを除去する処理を
施し、その結果を前記サンプリング周波数に従って出力
するダウンサンプリング手段とを具備することを特徴と
する楽音信号発生装置。1. A tone signal generator for outputting a digital tone signal of a predetermined sampling frequency representing a tone waveform of a pitch designated by the tone generation instruction in response to a tone generation instruction. A waveform memory that stores waveform data obtained by sampling at the same time; and an address signal generating unit that outputs an address signal that changes at a rate corresponding to the instructed pitch according to an operation cycle frequency higher than the sampling frequency. Performing an interpolation operation using a predetermined number of pieces of waveform data corresponding to the integer part of the address signal of the waveform data stored in the waveform memory and an interpolation calculation coefficient corresponding to a decimal part of the address signal in the operation cycle. By executing according to the frequency, the waveform data having the designated pitch is output. Interpolating means, and a down-sampling means for performing processing for removing a spectrum higher than a predetermined high cutoff frequency from the waveform data output by the interpolating means, and outputting the result in accordance with the sampling frequency. A tone signal generating device characterized by the following.
用した時分割制御により、各時分割チャネル毎に、波形
メモリから波形データを読み出し、読み出した波形デー
タに基づいて補間波形データを生成する波形メモリ読出
補間装置において、 前記n個の時分割チャネルの各々に対応したアドレス信
号を順次発生するアドレス発生手段と、 前記各アドレス信号の整数部に基づいて前記波形メモリ
から波形データを読み出し、各アドレス信号の小数部に
応じて前記各時分割チャネルに対応した補間波形データ
を各々生成して時分割で出力する補間手段とを備え、 前記補間手段が、 前記n個の時分割チャネルをk個(kはnの約数)のグ
ループに分けた各グループに対応した補間演算を実行す
るk個の演算手段と、 前記各時分割チャネルのアドレス信号の整数部に対応し
た波形データを、前記波形メモリから、前記k個の演算
手段のうち当該時分割チャネルに対応した補間演算を実
行するものに引き渡すとともに、前記各時分割チャネル
のアドレス信号の小数部を、前記k個の演算手段のうち
当該時分割チャネルに対応した補間演算を実行するもの
に引き渡す供給手段と、 前記k個の演算手段の補間演算結果であるn個の補間波
形データを、時分割多重化して出力する出力手段とを具
備することを特徴とする波形メモリ読出補間装置。2. Time-division control using n (n is an integer) time-division channels reads waveform data from a waveform memory for each time-division channel, and interpolates waveform data based on the read waveform data. An interpolating device for generating a waveform memory, comprising: address generating means for sequentially generating address signals corresponding to each of the n time-division channels; and reading waveform data from the waveform memory based on an integer part of each of the address signals. Interpolating means for respectively generating interpolated waveform data corresponding to each of the time-division channels in accordance with the decimal part of each address signal and outputting the interpolated waveform data in a time-division manner. k arithmetic means for executing an interpolation operation corresponding to each of k groups (k is a divisor of n); Transfer the waveform data corresponding to the integer part of the source signal from the waveform memory to one of the k arithmetic means for executing the interpolation operation corresponding to the time-division channel and the address signal of each time-division channel. Supply means for delivering a decimal part of the k arithmetic means to execute the interpolation operation corresponding to the time-division channel, and n interpolation waveform data which is an interpolation operation result of the k arithmetic means. Output means for time-division multiplexing and outputting the same.
用した時分割制御により、各時分割チャネル毎に、楽音
発生指示に応答し、該楽音発生指示によって指示された
音高の楽音波形を表す所定のサンプリング周波数のデジ
タル楽音信号を出力する楽音信号発生装置において、 楽音波形を一定時間間隔でサンプリングすることにより
得られた波形データを記憶した波形メモリと、 前記各時分割チャネル毎に、前記指示された音高に対応
したレートで変化するアドレス信号を前記サンプリング
周波数よりも高い演算サイクル周波数に従って出力する
アドレス信号発生手段と、 前記各時分割チャネル毎に、前記波形メモリに記憶され
た波形データのうち前記アドレス信号の整数部に対応し
た所定個数の波形データと前記アドレス信号の小数部に
対応した補間演算用係数とを用いた補間演算を前記演算
サイクル周波数に従って実行することにより、前記指示
された音高を有する波形データを出力する補間手段と、 前記各時分割チャネル毎に、前記補間手段によって出力
された波形データに対し、所定の高域遮断周波数以上の
スペクトルを除去する処理を施し、その結果を前記サン
プリング周波数に従って出力するダウンサンプリング手
段とを具備し、 前記補間手段が、 前記n個の時分割チャネルをk個(kはnの約数)のグ
ループに分けた各グループに対応した補間演算を実行す
るk個の演算手段と、 前記各時分割チャネルのアドレス信号の整数部に対応し
た波形データを、前記波形メモリから、前記k個の演算
手段のうち当該時分割チャネルに対応した補間演算を実
行するものに引き渡すとともに、前記各時分割チャネル
のアドレス信号の小数部を、前記k個の演算手段のうち
当該時分割チャネルに対応した補間演算を実行するもの
に引き渡す供給手段と、 前記k個の演算手段の補間演算結果を時分割多重化して
出力する出力手段とを具備することを特徴とする楽音信
号発生装置。3. A time division control using n (n is an integer) time division channels, responds to a tone generation instruction for each time division channel, and generates a tone having a pitch indicated by the tone generation instruction. A tone signal generator for outputting a digital tone signal having a predetermined sampling frequency representing a waveform, comprising: a waveform memory storing waveform data obtained by sampling a tone waveform at regular time intervals; and Address signal generating means for outputting an address signal changing at a rate corresponding to the instructed pitch in accordance with an operation cycle frequency higher than the sampling frequency; and for each of the time-division channels, stored in the waveform memory. In the waveform data, a predetermined number of waveform data corresponding to the integer part of the address signal and a decimal part of the address signal are associated. Interpolating means for outputting waveform data having the designated pitch by executing an interpolation operation using a corresponding interpolation operation coefficient in accordance with the operation cycle frequency; and for each of the time division channels, Down-sampling means for performing processing to remove a spectrum higher than a predetermined high cut-off frequency from the waveform data output by the means, and outputting the result in accordance with the sampling frequency; K operation means for performing an interpolation operation corresponding to each group obtained by dividing the time-division channels into k (k is a divisor of n); and an integer part of the address signal of each time-division channel. The corresponding waveform data is drawn from the waveform memory to one of the k calculation means for executing the interpolation calculation corresponding to the time division channel. Supply means for passing the fractional part of the address signal of each time-division channel to one of the k operation means for performing an interpolation operation corresponding to the time-division channel; and Output means for time-division multiplexing and outputting an interpolation calculation result.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP6323423A JP2790066B2 (en) | 1994-12-26 | 1994-12-26 | Tone signal generator and waveform memory read-out interpolator |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP6323423A JP2790066B2 (en) | 1994-12-26 | 1994-12-26 | Tone signal generator and waveform memory read-out interpolator |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH08179775A JPH08179775A (en) | 1996-07-12 |
JP2790066B2 true JP2790066B2 (en) | 1998-08-27 |
Family
ID=18154525
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP6323423A Expired - Fee Related JP2790066B2 (en) | 1994-12-26 | 1994-12-26 | Tone signal generator and waveform memory read-out interpolator |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2790066B2 (en) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100447178B1 (en) * | 2001-12-18 | 2004-09-04 | 엘지전자 주식회사 | Finite impulse response filter |
JP2007132961A (en) * | 2005-11-07 | 2007-05-31 | Shinsedai Kk | Multimedia processor and sound processor |
-
1994
- 1994-12-26 JP JP6323423A patent/JP2790066B2/en not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JPH08179775A (en) | 1996-07-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JPH0562495A (en) | Sampling frequency converter | |
JP2921376B2 (en) | Tone generator | |
JPS60147793A (en) | Musical sound signal generator | |
US5290965A (en) | Asynchronous waveform generating device for use in an electronic musical instrument | |
JP2790066B2 (en) | Tone signal generator and waveform memory read-out interpolator | |
KR100236686B1 (en) | Data sample string access device | |
JPH06168575A (en) | Digital mixer | |
JP2699629B2 (en) | Music signal generator | |
JP3087744B2 (en) | Music generator | |
JP2558356B2 (en) | Digital to analog converter | |
JP2668676B2 (en) | Filter parameter supply device | |
JP2532731B2 (en) | Voice speed conversion device and voice speed conversion method | |
JPH0549132B2 (en) | ||
JPS5846036B2 (en) | electronic musical instruments | |
JPH0370237B2 (en) | ||
JPS6091227A (en) | Synthesizing apparatus of sound analyzer | |
JP2890530B2 (en) | Audio speed converter | |
JP3832382B2 (en) | Musical sound generating apparatus and program | |
JP2905904B2 (en) | Electronic musical instrument signal processor | |
JP2669073B2 (en) | PCM sound source device | |
JPH0525116B2 (en) | ||
JP3134840B2 (en) | Waveform sample interpolation device | |
JPH08234785A (en) | Sound source device | |
JP2708037B2 (en) | Music signal generator | |
JPH07221647A (en) | Multi-channel type digital/analog conversion circuit |
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: 19980512 |
|
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: 20080612 Year of fee payment: 10 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090612 Year of fee payment: 11 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100612 Year of fee payment: 12 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100612 Year of fee payment: 12 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110612 Year of fee payment: 13 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120612 Year of fee payment: 14 |
|
LAPS | Cancellation because of no payment of annual fees |