JP2798913B2 - Musical tone waveform generating apparatus and musical tone waveform generating method - Google Patents

Musical tone waveform generating apparatus and musical tone waveform generating method

Info

Publication number
JP2798913B2
JP2798913B2 JP8311122A JP31112296A JP2798913B2 JP 2798913 B2 JP2798913 B2 JP 2798913B2 JP 8311122 A JP8311122 A JP 8311122A JP 31112296 A JP31112296 A JP 31112296A JP 2798913 B2 JP2798913 B2 JP 2798913B2
Authority
JP
Japan
Prior art keywords
data
waveform
bit
waveform data
bits
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP8311122A
Other languages
Japanese (ja)
Other versions
JPH09166985A (en
Inventor
勉 斉藤
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Kawai Musical Instrument Manufacturing Co Ltd
Original Assignee
Kawai Musical Instrument Manufacturing 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 Kawai Musical Instrument Manufacturing Co Ltd filed Critical Kawai Musical Instrument Manufacturing Co Ltd
Priority to JP8311122A priority Critical patent/JP2798913B2/en
Publication of JPH09166985A publication Critical patent/JPH09166985A/en
Application granted granted Critical
Publication of JP2798913B2 publication Critical patent/JP2798913B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Landscapes

  • Electrophonic Musical Instruments (AREA)

Description

【発明の詳細な説明】DETAILED DESCRIPTION OF THE INVENTION

【0001】[0001]

【発明の属する技術分野】本発明は、楽音波形生成装置
及び楽音波形生成方法に関する。
The present invention relates to a musical tone waveform generating apparatus and a musical tone waveform generating method.

【0002】[0002]

【発明の概要】本発明は、ビット数の異なる波形データ
を読み出してデータ長を合わせることにより、量子化ノ
イズが目立つ音は記憶波形データのビットを多くし、そ
うでない音はビット数を少なくしたものである。
SUMMARY OF THE INVENTION According to the present invention, by reading out waveform data having different numbers of bits and adjusting the data length, the number of bits of the stored waveform data is increased for sounds in which quantization noise is conspicuous, and the number of bits is reduced for sounds which are not so. Things.

【0003】[0003]

【従来技術】従来、複数の楽音を同時生成可能なポリフ
ォニックな楽器が広く実施されているが、このような楽
器は、時分割処理により複数の楽音生成チャンネルを形
成し、この各チャンネルに同時操作されている鍵に応じ
た楽音を割り当てていた。この複数の同時発音される楽
音についての波形メモリからの波形データ読み出しは、
読出アドレスカウンタとなる周波数ナンバ累算器に上記
チャンネル数と同じ段数を持つシフトレジスタを設け、
各段に対応するチャンネルに応じた周波数ナンバ累算値
をセットして、各チャンネルタイミングごとに周波数ナ
ンバを累算していた。
2. Description of the Related Art Conventionally, polyphonic musical instruments capable of simultaneously generating a plurality of musical tones have been widely implemented. In such musical instruments, a plurality of musical tone generating channels are formed by time division processing, and each channel is simultaneously operated. The musical tone corresponding to the key being assigned was assigned. The reading of the waveform data from the waveform memory for the plurality of simultaneously generated musical tones is as follows.
A shift register having the same number of stages as the number of channels is provided in a frequency number accumulator serving as a read address counter,
The frequency number accumulation value corresponding to the channel corresponding to each stage is set, and the frequency number is accumulated for each channel timing.

【0004】この場合、読み出される波形データのビッ
ト数はどの波形データでも同じであった。
In this case, the number of bits of the read waveform data is the same for all the waveform data.

【0005】[0005]

【発明が解決しようとする課題】しかしながら、楽音波
形には、量子化ビット数を減らしても、量子化ノイズが
それほど問題とならないにぎやかな音と、量子化ノイズ
が目立つ音とがある。
However, tone waveforms include a lively sound in which quantization noise does not become a problem even if the number of quantization bits is reduced, and a sound in which quantization noise is conspicuous.

【0006】本発明は、上述した課題を解決するために
なされたものであり、量子化ビット数を減らしても、量
子化ノイズがそれほど問題とならないにぎやかな音につ
いては、記憶ビット数を減らしてメモリ使用量を少なく
することを目的としている。
SUMMARY OF THE INVENTION The present invention has been made to solve the above-described problem. Even if the number of quantization bits is reduced, the number of storage bits is reduced for a lively sound in which quantization noise is not so problematic. The goal is to reduce memory usage.

【0007】[0007]

【課題を解決するための手段】上記目的を達成するため
に本発明においては、ビット数の異なる波形データを記
憶し、これを読み出してデータ長を合わせる構成とし
た。
In order to achieve the above object, the present invention has a configuration in which waveform data having different numbers of bits are stored, read out, and the data length is adjusted.

【0008】これにより、量子化ビット数を減らして
も、量子化ノイズがそれほど問題とならないにぎやかな
音については、記憶ビット数を減らしてメモリ使用量を
少なくすることができ、そうでない音については、記憶
ビット数を多くとることができる。
[0008] As a result, the number of memory bits can be reduced for a lively sound in which quantization noise does not cause a significant problem even if the number of quantization bits is reduced. , The number of storage bits can be increased.

【0009】[0009]

【発明の実施の形態】BEST MODE FOR CARRYING OUT THE INVENTION

<全体回路>第1図は、本発明の全体回路図を示すもの
で、キーボード1の各キー及び音色スイッチ2の各スイ
ッチは、キーアサイナ回路30によって走査され、操作
キーに応じた音高で、操作音色スイッチに応じた音色の
楽音が16チャンネルの楽音生成系の空チャンネルに割
り当てられる。このチャンネル割り当て内容は、アサイ
メントメモリ回路32に記憶される。また、キーボード
1の各鍵の押鍵圧力は、各鍵に設けられた圧力センサ3
で検出され、A−D変換器4で押鍵圧力を示すデジタル
形式のタッチデータTOに変換されて、後述するCPU
300に送られる。
<Overall Circuit> FIG. 1 shows an overall circuit diagram of the present invention. Each key of a keyboard 1 and each switch of a tone switch 2 are scanned by a key assigner circuit 30 and have a pitch corresponding to an operation key. A tone of a tone corresponding to the operation tone switch is assigned to an empty channel of the 16 tone generating system. The contents of the channel assignment are stored in the assignment memory circuit 32. The key press pressure of each key of the keyboard 1 is determined by a pressure sensor 3 provided for each key.
Is converted by the A / D converter 4 into touch data TO in a digital format indicating a key press pressure, and is converted by a CPU (described later).
Sent to 300.

【0010】さらに、リズムキー5では、ロック、ディ
スコ等のリズムの選択が行われ、エフェクトキー6で
は、各キーのオン、オフにより、ポルタメント、グライ
ト、グロウル、エコー、サスティン、ビブラート、コー
ラス、アンサンブル、ホンキートンク、トレモロ等の効
果が付加され、各キーのオン、オフはCPU300によ
って検出される。このほか、ボリュームつまみ7、テン
ポつまみ8のコントロール量も可変抵抗器により電圧変
動量として検出され、A−D変換器9、10を介してボ
リュームデータ、テンポデータとしてCPU300に与
えられる。
Further, the rhythm key 5 is used to select a rhythm such as rock or disco, and the effect key 6 is used to turn on / off each of the keys. , Honky tonk, tremolo, and the like, and the ON / OFF of each key is detected by the CPU 300. In addition, the control amounts of the volume knob 7 and the tempo knob 8 are also detected as voltage fluctuation amounts by the variable resistors, and are supplied to the CPU 300 as volume data and tempo data via the AD converters 9 and 10.

【0011】ROM20には、楽音信号を生成するため
の処理プログラムと、波形及びエンベロープに関する音
色データと、波形データRDそのもの等が記憶されてお
り、ROMアドレス制御回路31によって読出アドレス
が制御され、処理プログラム又は音色データの読み出し
と、波形データRDの読み出しとが切り換えられる。R
OM20より読み出された処理プログラムは、キーアサ
イナ回路30の後述するCPU300に送られて各種処
理が実行され、また同じくROM20より読み出された
波形やエンベロープに関する音色データは、アサイメン
トメモリ回路32の空チャンネルに応じたエリアに書き
込まれ、さらに同じくROM20より読み出された波形
データRDそのものは波形データ伸長補間回路50へと
送られる。アサイメントメモリ回路32には、キーボー
ド1の操作キーに応じた周波数ナンバスピードデータF
Sも空チャンネルに応じたエリアに書き込まれる。
The ROM 20 stores a processing program for generating a tone signal, timbre data relating to a waveform and an envelope, and waveform data RD itself. A read address is controlled by a ROM address control circuit 31. Reading of the program or tone data and reading of the waveform data RD are switched. R
The processing program read from the OM 20 is sent to a CPU 300 (to be described later) of the key assigner circuit 30 to execute various types of processing, and the timbre data related to the waveform and the envelope read from the ROM 20 is also stored in the empty The waveform data RD itself written in an area corresponding to the channel and further read from the ROM 20 is sent to the waveform data decompression interpolation circuit 50. In the assignment memory circuit 32, the frequency number speed data F corresponding to the operation key of the keyboard 1 is stored.
S is also written in the area corresponding to the empty channel.

【0012】この周波数ナンバスピードデータFSは、
周波数ナンバ累算器40で各チャンネルごとに順次累算
され、ROMアドレス制御回路31を介してROM20
に読出アドレスデータとして与えられ、波形データRD
が周波数ナンバスピードデータFSに応じた速度、すな
わち音高に応じた速度で読み出され、波形データ伸長補
間回路50に入力される。読み出される波形データRD
はROM20内に多数記憶されており、これらの選択は
アサイメントメモリ回路32より読み出されるバンクデ
ータによって行われる。上記波形データ伸長補間回路5
0では、データ圧縮された状態でROM20より読み出
されてきた差分データが伸長されるとともに、各波形デ
ータRDのサンプルポイント地点の間の補間地点も求め
られて乗算回路70に送られる。この補間は周波数ナン
バ累算器40からの周波数ナンバ累算値FAの一部を使
って行われる。
The frequency number speed data FS is
The frequency number accumulator 40 sequentially accumulates the data for each channel, and stores the data in the ROM 20 through the ROM address control circuit 31.
Is provided as read address data, and waveform data RD
Is read out at a speed corresponding to the frequency number speed data FS, that is, at a speed corresponding to the pitch, and is input to the waveform data expansion interpolation circuit 50. Read waveform data RD
Are stored in the ROM 20, and these selections are made by bank data read from the assignment memory circuit 32. The waveform data decompression interpolation circuit 5
In the case of 0, the differential data read from the ROM 20 in the data compressed state is expanded, and an interpolation point between the sample point points of each waveform data RD is also obtained and sent to the multiplication circuit 70. This interpolation is performed using a part of the frequency number accumulated value FA from the frequency number accumulator 40.

【0013】また、アサイメントメモリ回路32からの
エンベロープに関するデータは、エンベロープ発生器6
0へ送られてエンベロープ波形が生成され、上記乗算回
路70へ送られる。乗算回路70では、上記伸長補間波
形データIPの各サンプル値とエンベロープ波形の各サ
ンプル値EAとが乗算され、シフト回路80でデータシ
フトが行われて、系列累算回路90で系列ごとに累算さ
れ、D−A変換器100を介してサウンドシステム11
0より放音出力される。
The data on the envelope from the assignment memory circuit 32 is stored in an envelope generator 6.
0 to generate an envelope waveform, which is sent to the multiplying circuit 70. The multiplication circuit 70 multiplies each sample value of the expanded interpolation waveform data IP by each sample value EA of the envelope waveform, shifts the data by the shift circuit 80, and accumulates the data for each sequence by the sequence accumulation circuit 90. And the sound system 11 via the DA converter 100.
Sound is output from 0.

【0014】上記エンベロープ発生器60より、アサイ
メントメモリ回路32には、エンベロープ波形の現在の
フェーズ値PHが送られ、次の新しいフェーズに関する
エンベロープデータを出力するように働きかける。また
エンベロープ発生器60より、周波数ナンバ累算器40
には、キーオンのタイミングでオンイベント信号が送ら
れ、周波数ナンバスピードデータFSの累算が開始され
る。さらにエンベロープ発生器60より、波形データ伸
長補間回路50にはデータ長信号D816が送られ、波
形データRDの補間を行うか、行わないかの選択が行わ
れる。データ長信号D816は、波形データRDが8ビ
ットのサンプル値2つよりなるか、10ビットのサンプ
ル値と6ビットの差分データよりなるかの区別を示すも
ので、10ビットのサンプル値と6ビットの差分データ
が読み出されたとき、波形データRDの補間が行われ
る。
From the envelope generator 60, the current phase value PH of the envelope waveform is sent to the assignment memory circuit 32, and acts to output envelope data for the next new phase. Further, the frequency number accumulator 40 is output from the envelope generator 60.
, An on-event signal is sent at the key-on timing, and accumulation of the frequency number speed data FS is started. Further, a data length signal D816 is sent from the envelope generator 60 to the waveform data decompression interpolation circuit 50, and selection is made whether interpolation of the waveform data RD is performed or not. The data length signal D816 indicates whether the waveform data RD consists of two 8-bit sample values or 10-bit sample values and 6-bit difference data. Is read out, interpolation of the waveform data RD is performed.

【0015】上記シフト回路80は、乗算後の楽音デー
タをエンベロープ累算値EAの上位ビットであるエンベ
ロープパワーデータEA12〜15の大きさに応じてシ
フトダウンし、ディケイ、リリースの減衰時の立下りを
エクスポーネンシャルな特性にして、自然音に近づける
ためのものである。
The shift circuit 80 shifts down the multiplied musical tone data in accordance with the magnitude of the envelope power data EA12 to 15 which are the upper bits of the envelope accumulated value EA, and falls when the decay and release are attenuated. This is to make the sound more exponential and closer to natural sound.

【0016】また上記D−A変換器100には、4つの
楽音生成系が時分割により形成されており、系列累算回
路90において、アサイメントメモリ回路32からの系
列データGRに応じて、いずれの生成系に楽音データを
送り込むかが決定される。この系列累算回路90には、
周波数ナンバ累算器40から、波形折返し信号FDUも
与えられており、この波形折返し信号FDUは波形デー
タの一波形のうち前半の半波形の生成が終わって、後半
の半波形の生成にはいるときハイレベルとなり、これに
より系列累算回路90では、楽音データをプラスマイナ
ス反転した値とされる。また、系列累算回路90には、
キーアサイナ回路30より、D−Aゲート信号も与えら
れており、D−A変換器100への楽音データ出力コン
トロールが行われる。
In the DA converter 100, four tone generation systems are formed in a time-division manner. In the sequence accumulating circuit 90, any one of the tone accumulating circuits 90 is provided in accordance with the sequence data GR from the assignment memory circuit 32. Is determined whether or not the musical sound data is to be sent to the generation system. This series accumulator circuit 90 includes:
The waveform folded signal FDU is also given from the frequency number accumulator 40, and the waveform folded signal FDU has generated the first half of one waveform of the waveform data and has entered the second half of the waveform. At this time, the tone accumulation data is set to a high level, so that the sequence accumulation circuit 90 takes a value obtained by inverting the tone data by plus or minus. In addition, the series accumulation circuit 90 includes:
The DA gate signal is also given from the key assigner circuit 30, and the tone data output control to the DA converter 100 is performed.

【0017】システムクロック発生器10から、図1及
び図2の各回路30、40、50、60、90には、図
3に示すようなクロック信号等や、これらを分周したも
の、論理和、論理積をとったもの等が与えられており、
各回路のタイミングコントロールが行われる。
From the system clock generator 10, the respective circuits 30, 40, 50, 60, and 90 shown in FIGS. 1 and 2 are provided with a clock signal as shown in FIG. , AND, etc. are given,
Timing control of each circuit is performed.

【0018】<ROM20>図4はROM20の記憶内
容を示すもので、このROM20は、「0」〜「15」
の16個のバンクエリアに分割され、各バンクエリアは
「0000н(нは16進値であることを示す記号)」
〜「FFFFн」の番地を有しており、バンク「0」の
「0000н」〜「0FFFн」はCPU300のRA
M301、アサイメントメモリ320等の使用エリアで
あり、「1000н」〜「1FFFн」は後述するMM
Uラッチ310の使用エリアであり、「2000н」〜
「FFFFн」には楽音信号を生成するための処理プロ
グラムが記憶されている。バンク「1」の、「0000
н」〜「3FFFн」には、波形及びエンベロープの内
容を選択決定するための音色データが128音色分記憶
されている。
<ROM 20> FIG. 4 shows the contents stored in the ROM 20. The ROM 20 stores "0" to "15".
Is divided into 16 bank areas, and each bank area is "0000 н (н is a symbol indicating that it is a hexadecimal value)"
To “FFFFн”, and “0000н” to “0FFFн” of the bank “0” are RA addresses of the CPU 300.
M301, an area used by the assignment memory 320, etc., where "1000" to "1FFF"
This is the area where the U latch 310 is used.
“FFFFн” stores a processing program for generating a tone signal. "0000" of bank "1"
н ”to“ 3FFF н ”store 128 tone colors for selecting and determining the contents of the waveform and the envelope.

【0019】バンク「1」の「4000н」以降からバ
ンク「15」の「FFFFн」までは、各バンクごとに
1つの選択音色にて読み出される(A)(B)2つの波
形データRDが同じアドレスに記憶されている。この波
形データRDは、正弦波、三角波、鋸歯状波、矩形波、
ノイズ音波形等々やこれらを合成した波形のほか、特定
フォルマントに対応した複数の特定周波数帯域のスペク
トルグループに対応する各周波数成分を合成した複数種
類の波形等であってもよいし、ループトップ、ループエ
ンド等を利用したPCM波形であってもよい。音色デー
タの記憶エリアは処理プログラムの記憶エリアより、後
述するMMUアドレスデータ分だけずれた位置にある。
音色データは、バンクデータ、データ長信号データD8
16、系列データGR、イニシャル周波数ナンバデー
タ、ループトップデータ、ループエンドデータ、エンベ
ロープデータよりなり、エンベロープデータは、さらに
フェーズレベルデータPL、エンベロープ加減信号デー
タEDU、シンアウトデータTH、エンベロープスピー
ドデータESよりなっている。
From "4000" in bank "1" to "FFFF" in bank "15", one selected tone is read out for each bank. (A) (B) Two waveform data RD have the same address. Is stored in This waveform data RD includes a sine wave, a triangular wave, a sawtooth wave, a rectangular wave,
In addition to noise sound waveforms and the like and waveforms obtained by synthesizing them, a plurality of types of waveforms obtained by synthesizing frequency components corresponding to spectrum groups of a plurality of specific frequency bands corresponding to specific formants may be used. A PCM waveform using a loop end or the like may be used. The storage area of the timbre data is shifted from the storage area of the processing program by the MMU address data described later.
The tone data is bank data, data length signal data D8
16. Sequence data GR, initial frequency number data, loop top data, loop end data, and envelope data. The envelope data further includes phase level data PL, envelope addition / subtraction signal data EDU, thin out data TH, and envelope speed data ES. Has become.

【0020】バンクデータは、15種類の波形データR
Dのうちの1つを選択指定するためのもので、1つのチ
ャンネルに割り当てられる1つの音色につき、(A)
(B)2つの波形が選択され、データ長信号D816
は、上述したように波形データRDが8ビットのサンプ
ル値2つよりなるか、10ビットのサンプル値と6ビッ
トの差分データよりなるかの区別を示すもので、系列デ
ータGR0,1も上述したように、上記乗算後の楽音デ
ータSTを4つのいずれの楽音生成系に割り当てるかを
示すものである。
The bank data is composed of 15 types of waveform data R
D for selecting and specifying one of D. For each tone assigned to one channel, (A)
(B) Two waveforms are selected and the data length signal D816
Indicates whether the waveform data RD is composed of two 8-bit sample values or 10-bit sample value and 6-bit difference data, as described above. The series data GR0, 1 are also described above. Thus, the tone data ST after the multiplication is assigned to any of the four tone generation systems.

【0021】イニシャル周波数ナンバデータは、図9に
示すように、周波数ナンバスピードデータFSを順次累
算して波形データRDを読み出していくにあたってのス
タート時点の周波数ナンバ累算値を示し、ループエンド
データは、周波数ナンバスピードデータFSの累算を加
算方向から減算方向へ折り返す地点の周波数ナンバ累算
値FAを示し、ループトップデータは、周波数ナンバス
ピードデータFSの累算方向を減算方向から加算方向へ
折り返す地点の周波数ナンバ累算値FAを示し、図9に
示すようにループトップとループエンドとの間で周波数
ナンバ累算値FAをループ変化させることにより、半波
形分の波形データを連続した波形の状態で読み出して行
くことができる。
The initial frequency number data, as shown in FIG. 9, indicates the frequency number accumulated value at the start time when the frequency number speed data FS is sequentially accumulated and the waveform data RD is read out. Indicates the frequency number accumulated value FA at the point where the accumulation of the frequency number speed data FS is turned from the addition direction to the subtraction direction. The loop top data indicates that the accumulation direction of the frequency number speed data FS is changed from the subtraction direction to the addition direction. A frequency number accumulated value FA at a turning point is shown. As shown in FIG. 9, the frequency number accumulated value FA is loop-changed between a loop top and a loop end, so that waveform data for a half waveform is continuous. Can be read in the state of.

【0022】なお図9の波形折返し信号FDUは、周波
数ナンバ累算値FAの最上位ビットデータであり、波形
データの一波長のうち前半の半波長の生成が終わって、
後半の半波長の生成にはいるときハイレベルとなるもの
であって、この信号FDUに基づいて周波数ナンバ累算
値FAの加減演算切換と、波形データ(楽音データ)の
サンプル値(振幅値)のプラスマイナス切換が行われ
る。
The waveform return signal FDU in FIG. 9 is the most significant bit data of the frequency number accumulated value FA, and the generation of the first half of one wavelength of the waveform data is completed.
The signal is at a high level when the second half wavelength is generated. Based on the signal FDU, the frequency number accumulation value FA is switched between addition and subtraction, and the waveform data (musical sound data) sample value (amplitude value) is switched. Is switched between plus and minus.

【0023】エンベロープデータの中のエンベロープレ
ベルデータELは図25に示すように、エンベロープ波
形のアック、ディケイ、サスティン、リリースの最終地
点におけるエンベロープ累算値を示し、エンベロープ加
減信号データEDUは、エンベロープ累算値EAを加算
していくのか、減算していくのかを示すものである。ま
たエンベロープデータのエンベロープスピードデータE
Sは、エンベロープ累算値EAの加減速度を示すデータ
で、この値が大きいほどエンベロープ波形の傾きが大き
くなる。エンベロープスピードデータESとエンベロー
プレベルデータELとは、キーボード1のキーの押鍵速
度、又は押鍵圧力に応じたキータッチデータに応じて決
定される。
As shown in FIG. 25, the envelope level data EL in the envelope data indicates the accumulated value of the envelope at the last point of the ack, decay, sustain, and release of the envelope waveform. It indicates whether the calculated value EA is to be added or subtracted. Envelope speed data E of the envelope data
S is data indicating the acceleration / deceleration of the envelope accumulated value EA. The larger this value is, the larger the slope of the envelope waveform becomes. The envelope speed data ES and the envelope level data EL are determined according to a key pressing speed of a key of the keyboard 1 or key touch data corresponding to a key pressing pressure.

【0024】エンベロープの中のシンアウトデータTH
は、エンベロープ累算値EAの累算システムへのエンベ
ロープ累算値EAの取り入れラッチの間引き率を示すデ
ータであり、本来のエンベロープ累算値EAの取り入れ
ラッチは、繰り返し行われる全チャンネル分のタイムス
ロットに1回行なわれる。このデータが「11」のとき
間引きはなく、「10」のとき4回に1回取り入れ、
「01」のとき16回に1回取り入れ、「00」のとき
64回に1回取り入れる。0、1は2値論理レベルのl
ow状態、high状態を示すものである。このシンア
ウト(取り入れラッチ間引き)により、同じエンベロー
プスピードデータでもエンベロープのスピードを等倍、
4倍、16倍、64倍に変化させることができる。この
シンアウトデータTHもキーボード1のキーの押鍵速
度、又は押鍵圧力に応じたキータッチデータに応じて変
化させても良い。
Thin out data TH in the envelope
Is the data indicating the thinning rate of the latch for taking in the envelope accumulated value EA into the accumulation system of the envelope accumulated value EA. Once in a slot. When this data is "11", there is no thinning out, and when it is "10", it is taken once every four times,
When it is "01", it is taken once every 16 times, and when it is "00", it is taken once every 64 times. 0 and 1 are binary logic level l
It indicates an ow state and a high state. With this thin out (take-in latch thinning), the same envelope speed data can be used to double the envelope speed,
It can be changed four times, 16 times, and 64 times. This thin-out data TH may also be changed in accordance with the key pressing speed of a key of the keyboard 1 or key touch data corresponding to the key pressing pressure.

【0025】このようにROM20には、楽音を生成放
音するための処理プログラムと、楽音の内容を表わす楽
音データとが記憶されているので、プログラムとデータ
を記憶するメモリが1つで済み、その分回路構成を簡易
なものとすることができる。
As described above, since the ROM 20 stores the processing program for generating and emitting a musical tone and the musical tone data representing the content of the musical tone, only one memory for storing the program and the data is required. The circuit configuration can be simplified accordingly.

【0026】<キーアサイナ回路30>図5は、キーア
サイナ回路30を示すもので、CPU300は与えられ
るマスタクロック信号φ(CK2)が、ハイレベルのと
きのみ動作可能なもので、図3下方に示すように、CP
U300のデータバスライン及びアドレスバスラインに
は、マスタクロック信号CK2がハイレベル「1」のと
き、CPU300に関するデータが流れ、ローレベル
「0」のとき、CPU300に無関係なデータが流れ
る。
<Key Assigner Circuit 30> FIG. 5 shows the key assigner circuit 30, in which the CPU 300 can operate only when the applied master clock signal φ (CK2) is at a high level, as shown in the lower part of FIG. And CP
When the master clock signal CK2 is at the high level “1”, data relating to the CPU 300 flows through the data bus line and the address bus line of the U300, and when the master clock signal CK2 is at the low level “0”, data unrelated to the CPU 300 flows.

【0027】《ROMアドレス制御回路31》このCP
U300からのROM20や各種メモリのアクセス用の
アドレスデータCA0〜15は16ビットデータである
が、最下位ビットを除く下位11ビットCA1〜11は
セレクタ313に与えられる。また、上位4ビットCA
12〜15は上位に「0000」の4ビットデータが付
加されて、セレクタ312のB入力を通して上記下位1
1ビットCA1〜11とともに19ビットのアドレスデ
ータとしてセレクタ313を介してROM20に与えら
れ、主に処理プログラムの読み出しが行われる。またC
PU300が処理プログラム以外の音色データやその他
データを読み出す時には、CPU300より8ビットの
MMUアドレスデータがデータバスラインを通じて出力
され、これがMMUラッチ310を介して上記セレクタ
312を通じ、上述の下位11ビットCA1〜11に付
加されて、セレクタ313を介しROM20に与えられ
る。
<< ROM address control circuit 31 >> This CP
The address data CA0 to CA15 for accessing the ROM 20 and various memories from the U300 are 16-bit data, but the lower 11 bits CA1 to 11 excluding the least significant bit are given to the selector 313. Also, the upper 4 bits CA
12 to 15 have 4-bit data of “0000” added to the upper bits, and the lower 1 bits are input through the B input of the selector 312.
The data is supplied to the ROM 20 via the selector 313 as 19-bit address data together with the 1-bit CA1 to CA11, and the processing program is mainly read. Also C
When the PU 300 reads out tone data and other data other than the processing program, 8-bit MMU address data is output from the CPU 300 through the data bus line, and this is transmitted through the MMU latch 310 through the selector 312 and through the lower 11 bits CA1 to CA1. 11 and supplied to the ROM 20 via the selector 313.

【0028】このアドレスデータの切り換え状態を示し
たのが、図6であり、ROM20のアドレスデータは1
9ビットであるにもかかわらず、CPU300のアドレ
スデータは16ビットであるため、「0000」の付加
や、MMUアドレスデータの付加が行われる。
FIG. 6 shows the switching state of the address data.
Although the address data is 9 bits, the address data of the CPU 300 is 16 bits, so that "0000" and MMU address data are added.

【0029】こうして、MMUアドレスを付加するか、
「0000」を付加するかで、プログラムの読み出しと
音色データの読み出しが簡単に切り換えられし、CPU
300の読出アドレスデータがROM20の読出アドレ
スデータより少ないビット数でも、ROM20の全領域
の読み出しを行うことができる。
In this way, the MMU address is added or
By adding “0000”, it is possible to easily switch between the reading of the program and the reading of the timbre data.
Even when the read address data of 300 is smaller in the number of bits than the read address data of ROM 20, the entire area of ROM 20 can be read.

【0030】従って、ROM20のバンク「0」はCP
U300がMMUラッチ310を使わずに直接アクセス
できるので、CPU300専用の処理プログラム等が記
憶されるのである。また、CPU300が、例えばバン
ク「1」の「3524н」番地をアクセスするには、M
MUラッチ310に「13н」をセットし、CPU30
0のアドレスデータとして「1524н」をセットすれ
ば、合成アドレスデータは、「13524н」となっ
て、バンク「1」の「3524н」番地がアクセスされ
ることになる。この場合CPU300のアドレスデータ
「1524н」の最上位4ビットの「1н」は、セレク
タ312でキャンセルされる。
Therefore, the bank "0" of the ROM 20 is connected to the CP
Since the U300 can be directly accessed without using the MMU latch 310, a processing program dedicated to the CPU 300 is stored. Further, the CPU 300 accesses, for example, the address “3524 н” of the bank “1” by M
"13" is set in the MU latch 310, and the CPU 30
If "1524H" is set as the address data of 0, the combined address data becomes "13524H", and the address "3524H" of the bank "1" is accessed. In this case, the selector 312 cancels the most significant four bits “1н” of the address data “1524н” of the CPU 300.

【0031】上記上位4ビットデータCA12〜15は
コンパレータ311にも与えられており、このコンパレ
ータ311には4ビットのf(x)データも与えられて
おり、両データが一致しない時、「0000」と上位4
ビットアドレスデータCA12〜15の方が選択され
る。また両データが一致した時、一致信号がコンパレー
タ311から上記セレクタ312に与えられて、MMU
ラッチ310の方が選択される。従って上位4ビットの
アドレスデータCA12〜15がf(x)データに一致
していない時に、CPU300の処理プログラム等の読
み出しが行われ、一致した時は音色データ等が読み出さ
れる。このf(x)データはCPU300によって選択
設定してもよいし、予め固定された値でもよい。このf
(x)を「1н」に固定すると、RAM20のバンク
「0」の「1000н」〜「1FFFн」のMMUラッ
チ310用のエリアがアクセスされ、f(x)を「0
н」に固定すると、RAM20のバンク「0」の「00
00н」〜「0FFFн」のエリアがアクセスされるこ
ととなる。
The upper 4-bit data CA12 to CA15 are also supplied to a comparator 311. The comparator 311 is also supplied with 4-bit f (x) data. When the two data do not match, "0000" is output. And the top four
Bit address data CA12 to CA15 are selected. When both data match, a match signal is supplied from the comparator 311 to the selector 312, and the MMU
Latch 310 is selected. Therefore, when the upper four bits of the address data CA12 to CA15 do not match the f (x) data, the processing program of the CPU 300 is read, and when they match, the tone color data and the like are read. The f (x) data may be selected and set by the CPU 300 or may be a fixed value in advance. This f
When (x) is fixed to “1 н”, the area for the MMU latch 310 of “1000 н” to “1FFFF” of the bank “0” of the RAM 20 is accessed, and f (x) is set to “0”.
н ”,“ 00 ”of bank“ 0 ”in RAM 20
The areas from "00 н" to "0FFF н" will be accessed.

【0032】上記セレクタ313には、後述するアサイ
メントメモリ320よりCPU300によって読み出さ
れたバンクデータと周波数ナンバ累算器40からの周波
数ナンバ累算値FA12〜26も与えられ、このセレク
タ313を介してROM20に与えられ、対応するバン
クの波形データRDが読み出される。セレクタ313に
おける、データセレクト切換は、上記システムクロック
発生器10からのクロック信号CK2によって行われ、
図3下方に示すように、処理プログラムの読み出しと波
形データRDのサンプル値との読み出しが切り換えられ
る。このうち、処理プログラムの読み出しのタイミング
においては、上記f(x)データに基づいて、処理プロ
グラムの読み出しと音色データの読み出しが切り換えら
れる。そして、これらの読出処理が16チャンネル分繰
返し行われて行く。
The selector 313 is also supplied with bank data read by the CPU 300 from an assignment memory 320, which will be described later, and the frequency number accumulated values FA12 to FA from the frequency number accumulator 40. The waveform data RD of the corresponding bank is read out. Data select switching in the selector 313 is performed by a clock signal CK2 from the system clock generator 10,
As shown in the lower part of FIG. 3, reading of the processing program and reading of the sample value of the waveform data RD are switched. At this time, at the timing of reading the processing program, the reading of the processing program and the reading of the tone color data are switched based on the f (x) data. These reading processes are repeatedly performed for 16 channels.

【0033】ROM20より読み出されるデータのう
ち、波形データRDはそのまま波形データ伸長補間回路
50へ送られ、処理プログラムや音色データは、8ビッ
トデータずつに2分割され、セレクタ314を介してC
PU300に送られたり、ゲートバッファ323を介し
てアサイメントメモリ320に送られたりする。セレク
タ314における、データセレクト切換は、上記CPU
300からのアドレスデータCAの最下位ビットCA0
に基づいて行われる。
Of the data read from the ROM 20, the waveform data RD is sent to the waveform data decompression interpolation circuit 50 as it is, and the processing program and timbre data are divided into two pieces of 8-bit data each.
It is sent to the PU 300 or sent to the assignment memory 320 via the gate buffer 323. The data select switching in the selector 314 is performed by the CPU
Least significant bit CA0 of address data CA from 300
It is performed based on.

【0034】これにより、CPU300の処理速度に追
随してROM20からのデータ取り込みが行われる。ま
た、CPU300のデータバスラインのビット数に対し
ROM20からの読み出しデータのビット数が多くて
も、スムーズにデータ処理を行うことができる。
Thus, data is taken in from the ROM 20 following the processing speed of the CPU 300. Further, even if the number of bits of data read from the ROM 20 is larger than the number of bits of the data bus line of the CPU 300, data processing can be performed smoothly.

【0035】《アサイメントメモリ回路32》図7は、
アサイメントメモリ回路32のアサイメントメモリ32
0の記憶内容を示すもので、アサイメントメモリ320
は、16チャンネル分の音色データのメモリエリアが形
成されており、各チャンネルエリアにROM20からの
音色データがセットされる。この場合、セットされる音
色データのうちエンベロープデータはEG0〜15の各
エンベロープグループエリアにセットされ、それ以外の
データはCH0〜15の各チャンネルエリアに分けてセ
ットされる。CH0〜15にセットされるデータは、バ
ンクデータ(A)(B)、エンベロープグループデータ
(A)(B)、周波数ナンバスピードデータFS、キー
オン信号データ、データ長信号データD816、系列デ
ータGR、イニシャル周波数ナンバデータ、ループトッ
プデータ、ループエンドデータよりなっており、このう
ち周波数ナンバスピードデータFS、キーオン信号デー
タ、エンベロープグループデータ(A)(B)以外のデ
ータについては、ROM20の記憶内容のところで説明
したとおりである。
<< Assignment Memory Circuit 32 >> FIG.
Assignment memory 32 of assignment memory circuit 32
0 indicates the storage content of the assignment memory 320
Has a memory area for timbre data for 16 channels, and timbre data from the ROM 20 is set in each channel area. In this case, of the tone data to be set, the envelope data is set in each of the envelope group areas EG0 to EG15, and the other data is set separately in the respective channel areas of CH0 to CH15. The data set in CH0 to CH15 include bank data (A) (B), envelope group data (A) (B), frequency number speed data FS, key-on signal data, data length signal data D816, sequence data GR, and initials. It consists of frequency number data, loop top data, and loop end data. Of these, data other than the frequency number speed data FS, key-on signal data, and envelope group data (A) and (B) are described in the storage contents of the ROM 20. As you did.

【0036】周波数ナンバスピードデータFSは、キー
ボード1の操作キーの音高に応じたデータで波形データ
RDの読出アドレスデータの累算ステップ値として用い
られる。キーオン信号データは、現在キーオン中である
ことを示すデータで、キーオンで「1」、キーオフで
「0」となる。エンベロープグループデータ(A)
(B)は、当該チャンネルエリアの音色に応じたエンベ
ロープデータの記憶されているエンベロープグループエ
リアEG0〜15のアドレスを示すデータであり、1つ
のチャンネルに割り当てられる音色は2つの楽音よりな
るものであるため、(A)(B)と2つ存在することに
なる。これに応じて、波形データRDも2つ存在するた
め、バンクデータも(A)(B)2つの存在することに
なる。EG0〜15にセットされるエンベロープデータ
についても上述ROM20の記憶内容の説明のところで
説明したとおりである。
The frequency number speed data FS is data corresponding to the pitch of the operation key of the keyboard 1 and is used as an accumulation step value of the read address data of the waveform data RD. The key-on signal data is data indicating that the key is currently on, and is "1" for key-on and "0" for key-off. Envelope group data (A)
(B) is data indicating the addresses of the envelope group areas EG0 to EG15 in which the envelope data corresponding to the tone of the channel area is stored. The tone assigned to one channel is composed of two tones. Therefore, there are two (A) and (B). Accordingly, since there are two waveform data RDs, there are two bank data (A) and (B). The envelope data set in EG0 to EG15 is also as described in the description of the storage contents of the ROM 20 described above.

【0037】上記周波数ナンバスピードデータFSは、
(A)(B)2つの楽音について共用され、キーボード
1の1つの操作キーに応じて(A)(B)2つの楽音が
合成出力されることになる。この(A)(B)2つの楽
音は、バンクデータ又はエンベロープグループデータが
異なるため、異なる音色の楽音となっており、また別々
にエンベロープ制御も行われることになる。これら、バ
ンクデータ、エンベロープグループデータの選択は、上
述した音色スイッチ2の各スイッチの切換選択によって
その組み合わせが任意に切り換えられるが、圧力センサ
3からのタッチデータTOの大きさ、ボリュームつまみ
7、テンポつまみ8からのボリュームデータ、テンポデ
ータの変化、リズムキー5、エフェクトキー6の各キー
の切換選択によっても、切り換えられる。この場合、バ
ンクデータ、エンベロープグループデータ以外に、イニ
シャル周波数ナンバデータ、ループトップデータ、ルー
プエンドデータを切り換えることにより、音色内容を変
化させてもよい。また、1つの操作キーで合成出力され
る楽音は(A)(B)の2つだけでなく、これ以上でも
よい。
The frequency number speed data FS is
(A) and (B) are shared for two musical tones, and two musical tones (A) and (B) are synthesized and output according to one operation key of the keyboard 1. These two tones (A) and (B) have different tone colors because the bank data or the envelope group data are different, and the envelope control is also performed separately. The selection of the bank data and the envelope group data can be arbitrarily switched by selecting the switches of the tone switch 2 described above. However, the size of the touch data TO from the pressure sensor 3, the volume knob 7, the tempo Switching can also be performed by changing the volume data and tempo data from the knob 8 and by selecting the rhythm key 5 and the effect key 6. In this case, the timbre may be changed by switching the initial frequency number data, the loop top data, and the loop end data in addition to the bank data and the envelope group data. In addition, the number of musical tones synthesized and output by one operation key is not limited to two (A) and (B), and may be more than two.

【0038】このアサイメントメモリ320より読み出
されたデータはAM(アサイメントメモリ)バスを介し
て周波数ナンバ累算器40やエンベロープ発生器60等
へ送出されたり、ゲートバッファ322を介してCPU
300に与えられる。また4ビットのエンベロープグル
ープデータ(A)(B)については、ラッチ324を介
し、エンベロープ発生器60からのフェーズデータPA
が2ビット下位に付加され、「1」が1ビット上位に付
加されて計7ビットとなり、セレクタ321を介し、再
びアサイメントメモリ320に与えられ、対応するエン
ベロープのエンベロープレベルデータEL、シンアウト
データTH、エンベロープスピードデータES等が読み
出されてエンベロープ発生器60に送られる。このセレ
クタ321を介してシステムクロック発生器10からの
クロック信号CKの集合である読出アドレスデータもア
サイメントメモリ320に与えられるほか、CPU30
0からのアクセスアドレスデータも与えられる。
The data read from the assignment memory 320 is sent to the frequency number accumulator 40 and the envelope generator 60 via an AM (assignment memory) bus, or sent to the CPU via a gate buffer 322.
300. Also, the 4-bit envelope group data (A) and (B) are transmitted via the latch 324 to the phase data PA from the envelope generator 60.
Is added to the lower 2 bits, and “1” is added to the upper 1 bit to make a total of 7 bits, which are again provided to the assignment memory 320 via the selector 321 and the envelope level data EL and the thin-out data of the corresponding envelope are given. TH, envelope speed data ES, and the like are read and sent to the envelope generator 60. Read address data, which is a set of clock signals CK from the system clock generator 10, is also supplied to the assignment memory 320 via the selector 321, and the CPU 30
Access address data from 0 is also provided.

【0039】これらのアドレスデータの切換状態を示し
たのが図3最下段のタイムチャートであり、クロック信
号群CKに基づいたバンクデータ(A)(B)とエンベ
ロープグループデータ(A)(B)、これに続いて周波
数ナンバスピードデータFSの読み出しの後、上記エン
ベロープグループデータ(A)とフェーズデータPAに
基づいたエンベロープスピードデータ(A)ESとエン
ベロープレベルデータ(A)ELの読み出しが行われ、
この後CPU300のアクセスが行われる。そして同じ
くクロック信号群CKに基づいたイニシャル周波数ナン
バ、キーオン、データ長信号データD816、系列デー
タGRの各データと、これに続いてループトップデー
タ、ループエンドデータとが読み出され、上記エンベロ
ープグループデータ(B)とフェーズデータPAに基づ
いたエンベロープスピードデータ(B)ESとエンベロ
ープレベルデータ(B)ELの読み出しが行われ、この
後CPU300のアクセスが行われる。そしてこれらの
アクセス処理が16チャンネル分繰り返し行われてい
く。
FIG. 3 is a time chart showing the switching state of these address data. The bank data (A) and (B) and the envelope group data (A) and (B) based on the clock signal group CK are shown. After that, after reading the frequency number speed data FS, reading of the envelope speed data (A) ES and the envelope level data (A) EL based on the envelope group data (A) and the phase data PA is performed.
Thereafter, access of the CPU 300 is performed. Similarly, the initial frequency number, key-on, data length signal data D816, and sequence data GR based on the clock signal group CK are read, followed by the loop top data and the loop end data. Reading of the envelope speed data (B) ES and the envelope level data (B) EL based on (B) and the phase data PA is performed, and thereafter the CPU 300 accesses. These access processes are repeated for 16 channels.

【0040】この場合、読出アドレスデータとして用い
られるクロック信号群CKは図3のCK1〜CKなどが
用いられる。セレクタ321における各アドレスデータ
のセレクトはシステムクロック発生器10からのクロッ
ク信号CK1、CK2に基づいて行われ、「00」「0
1」のタイミングで、クロック信号群CKが選択され、
「10」でラッチ324からのエンベロープグループデ
ータとフェーズデータPAが選択され、「11」でCP
U300からのアドレスデータが選択される。
In this case, as the clock signal group CK used as read address data, CK1 to CK in FIG. 3 are used. The selection of each address data in the selector 321 is performed based on the clock signals CK1 and CK2 from the system clock generator 10, and "00""0"
1 ”, the clock signal group CK is selected,
“10” selects the envelope group data and phase data PA from the latch 324, and “11” selects CP.
The address data from U300 is selected.

【0041】RAM301には、各種中間処理データが
メモリされ、タイマ302は、CPU300が設定した
周期でインタラプト信号をCPU300に与え、リセッ
ト回路303は電源投入時にCPU300とアウトプッ
トラッチ304にリセットをかけるものである。アウト
プットラッチ304、306には音色スイッチ2、キー
ボード1のサンプリングアドレスが一時セットされ、イ
ンプットバッファ305、307には、そのサンプリン
グ結果が入力される。上記アウトプットラッチ304の
サンプリングデータのうち1ビットのみ上記D−A変換
器100のゲート信号として用いられる。
A RAM 301 stores various intermediate processing data, a timer 302 gives an interrupt signal to the CPU 300 at a cycle set by the CPU 300, and a reset circuit 303 resets the CPU 300 and the output latch 304 when the power is turned on. It is. The sampling addresses of the timbre switch 2 and the keyboard 1 are temporarily set in the output latches 304 and 306, and the sampling results are input to the input buffers 305 and 307. Only one bit of the sampling data of the output latch 304 is used as a gate signal of the DA converter 100.

【0042】<周波数ナンバ累算器40>図8は、周波
数ナンバ累算器40を示すもので、上記アサイメントメ
モリ回路32からの周波数ナンバスピードデータFS
は、ラッチ404を介し、イクスクルシブオアゲート群
405を介して、アダー407で、それまでの周波数ナ
ンバ累算値FAに累算され、上位8ビットFA19〜2
6はセレクタ413を介し、下位19ビットFA0〜1
8はイクスクルシブオアゲート群414を介し、ラッチ
群415、セレクタ416を介して、上記周波数ナンバ
累算値FAとして再びアダー407に与えられる。これ
により、周波数ナンバ累算値FAが周波数ナンバスピー
ドデータFSの大きさに応じた速度で累算され、この累
算値FAはラッチ418を介し、上位の整数部分にあた
る15ビットFA12〜26が上記ROMアドレス制御
回路31に送られ、波形データRDの読み出しが行われ
る。また小数部分の上位3ビットFA9〜11と最上位
ビットの波形折返し信号FDUは、上記波形データ伸長
補間回路50へ送られて、波形データRDのサンプル値
の伸長と補間に用いられる。
<Frequency Number Accumulator 40> FIG. 8 shows the frequency number accumulator 40, and the frequency number speed data FS from the assignment memory circuit 32 is shown.
Is accumulated by the adder 407 through the exclusive OR gate group 405 via the latch 404 and the accumulated frequency number FA up to that time, and the upper 8 bits FA19 to FA2 are output.
6 is the lower 19 bits FA0 through FA1 through the selector 413.
8 is again supplied to the adder 407 as the above-mentioned frequency number accumulated value FA via the exclusive OR gate group 414, the latch group 415 and the selector 416. As a result, the frequency number accumulated value FA is accumulated at a speed corresponding to the size of the frequency number speed data FS, and the accumulated value FA is transferred via the latch 418 to the 15-bit FAs 12 to 26 corresponding to the upper integer part. The waveform data RD is sent to the ROM address control circuit 31 and read out. The waveform return signal FDU of the upper three bits FA9 to FA11 of the decimal part and the most significant bit is sent to the waveform data decompression interpolation circuit 50, and is used for decompression and interpolation of the sample value of the waveform data RD.

【0043】このような周波数ナンバ累算値FAの内容
を示したのが図10であり、周波数ナンバ累算値FAは
全部で28ビットのデータであり、最上位ビットは波形
折返し信号FDUで、次の8ビットFA19〜26はコ
ンパレートビットで、後述するループエンド、ループト
ップに到達したか否かの対比に用いられ、さらに次の7
ビットFA12〜18が整数部分、最後の12ビットF
A0〜11が小数部分となっている。このような周波数
ナンバスピードデータFSは、CH0〜15の16チャ
ンネル分、周波数ナンバ累算器40で累算され、各チャ
ンネルの周波数ナンバ累算値FAは上記ラッチ群415
にメモリされている。このラッチ群415は16個のラ
ッチよりなり、周波数ナンバスピードデータの累算の行
われるラッチはクロック信号CK3のタイミングで切り
換えられていき、ラッチからの読出はクロック信号CK
3の一周期の間のタイミングで行われ、ラッチへの書込
はクロック信号CK3の後半の最後のタイミングで行わ
れる。このラッチ群415の各ラッチには(A)(B)
2つの楽音成分につき、同じ読み出しアドレス(同じ周
波数ナンバ累算値FA12〜FA26)がセットされ
る。音色の違いは上記バンクデータ(A)(B)の違い
に基づいている。
FIG. 10 shows the contents of such a frequency number accumulated value FA. The frequency number accumulated value FA is data of 28 bits in total, and the most significant bit is a waveform folded signal FDU. The next 8-bit FAs 19 to 26 are compare bits, which are used for comparing whether or not a loop end and a loop top described later have been reached.
Bits FA12-18 are integer part, last 12 bits F
A0 to 11 are decimal parts. Such frequency number speed data FS is accumulated by the frequency number accumulator 40 for 16 channels from CH0 to CH15, and the frequency number accumulated value FA of each channel is stored in the latch group 415.
Is stored in the memory. The latch group 415 is composed of 16 latches. The latch for accumulating the frequency number speed data is switched at the timing of the clock signal CK3, and reading from the latch is performed by the clock signal CK.
3, and writing to the latch is performed at the last timing of the latter half of the clock signal CK3. Each of the latches of this latch group 415 has (A) and (B)
The same read address (the same frequency number accumulated value FA12 to FA26) is set for the two tone components. The difference in timbre is based on the difference in the bank data (A) and (B).

【0044】また、アサイメントメモリ回路32からの
8ビットイニシャル周波数ナンバは、ラッチ406を介
しセレクタ416にて、上位に1ビットの「0」下位に
19ビットの「00…0」が付加されて、周波数ナンバ
累算値FAと同じ28ビットデータとしてセレクトされ
る。このセレクタ416におけるセレクト信号は、エン
ベロープ発生器60からのキーオンタイミングに出力さ
れるオンイベント信号が用いられ、図9に示すように、
キーオンタイミングから、このイニシャル周波数ナンバ
に対し、順次周波数ナンバスピードデータFSが累算さ
れていく。
The 8-bit initial frequency number from the assignment memory circuit 32 is obtained by adding 1-bit “0” to the high-order and 19-bit “00... 0” to the low-order by the selector 416 via the latch 406. , Is selected as the same 28-bit data as the frequency number accumulated value FA. As the select signal in the selector 416, an on-event signal output at the key-on timing from the envelope generator 60 is used, and as shown in FIG.
From the key-on timing, the frequency number speed data FS is sequentially accumulated for this initial frequency number.

【0045】さらに、アサイメントメモリ回路32から
のループエンドデータ、ループトップデータは、ラッチ
402を介し、セレクタ403でループエンド、ループ
トップいずれかが選択され、コンパレータ409に与え
られるとともに、セレクタ413にも与えられる。コン
パレータ409では、周波数ナンバ累算値FAの上位8
ビットコンパレートビットFA19〜26との比較が行
われ、周波数ナンバ累算値FAがループエンドとループ
トップの間の範囲を越えたとき、セレクタ410よりオ
ーバラン信号FCPが出力され、オアゲート411を介
し、上記イクスクルシブオアゲート群414及びセレク
タ413に与えられ、ループエンドデータ又はループト
ップデータが周波数ナンバ累算値FAの上位のコンパレ
ートビットFA19〜26に代わって、新たなデータと
して取り込まれる。このとき、イクスクルシブオアゲー
ト群414では、それまでの周波数ナンバ累算値FAの
整数部分及び小数部分の値がプラスマイナス反転される
が、これは波形データRDの読出方向をループエンド又
はループトップで反転させるにあたって、それまでの周
波数ナンバ累算値FAの端数をプラスマイナス反転した
状態でそのまま使い、波形データRDの反転読み出しに
整合性をもたせるためのものである。
Further, the loop end data and the loop top data from the assignment memory circuit 32 are selected via the latch 402 by the selector 403 to select either the loop end or the loop top data. Is also given. In the comparator 409, the top eight of the frequency number accumulated value FA
When the frequency comparison value FA is compared with the bit comparison bits FA19 to 26, and the frequency number accumulated value FA exceeds the range between the loop end and the loop top, the selector 410 outputs an overrun signal FCP. The signals are supplied to the exclusive OR gate group 414 and the selector 413, and the loop end data or the loop top data is taken in as new data instead of the higher-order compare bits FA19 to 26 of the frequency number accumulated value FA. At this time, in the exclusive OR gate group 414, the values of the integer part and the decimal part of the frequency number accumulated value FA up to that point are inverted plus or minus, but this changes the reading direction of the waveform data RD to the loop end or the loop top. In the inversion, the fraction of the frequency number accumulated value FA is used as it is in a state of plus / minus inversion, so that the inversion readout of the waveform data RD has consistency.

【0046】上記オーバラン信号FCPは、イクスクル
シブオアゲート412にも与えられて、周波数ナンバ累
算値FAの最上位ビットである波形折返し信号FDUを
反転させ、これによりイクスクルシブオアゲート群40
5における周波数ナンバスピードデータFSの値がプラ
スマイナス反転され、アダー407における周波数ナン
バ累算値FAの累算方向が加減切り換えされる。このよ
うな周波数ナンバスピードデータFSの加減切換による
半波形ごとのループ再生の状態を示したのが図9であ
る。
The overrun signal FCP is also applied to an exclusive OR gate 412 to invert the waveform folding signal FDU, which is the most significant bit of the frequency number accumulated value FA, and thereby the exclusive OR gate group 40
The value of the frequency number speed data FS at 5 is inverted plus or minus, and the direction of accumulation of the frequency number accumulated value FA at the adder 407 is switched. FIG. 9 shows a state of loop reproduction for each half waveform by the switching of the frequency number speed data FS.

【0047】上記波形折返し信号FDUは、セレクタ4
03、410にセレクト信号として与えられ、周波数ナ
ンバスピードデータFSの加算時にはループエンドデー
タとA<B検出信号の方が選択され、減算時にはループ
トップデータとA>B検出信号の方が選択される。また
波形折返し信号FDUは、アダー407のCin端子に
も入力され、周波数ナンバスピードデータFSの減算時
に周波数ナンバ累算値FAの+1処理が行われるほか、
イクスクルシブオアゲート408にも与えられる。この
イクスクルシブオアゲート408には、アダー407の
Cout端子からの出力信号も与えられており、周波数
ナンバ累算値FAがオーバーフロー又はアンダーフロー
したことが検出され、これも上記オーバラン信号FCP
として出力される。
The waveform folded signal FDU is supplied to the selector 4
03 and 410 are provided as select signals. When frequency number speed data FS is added, loop end data and A <B detection signal are selected, and when subtraction, loop top data and A> B detection signal are selected. . The waveform folding signal FDU is also input to the Cin terminal of the adder 407, and when the frequency number speed data FS is subtracted, +1 processing of the frequency number accumulated value FA is performed.
Also provided to the exclusive OR gate 408. An output signal from the Cout terminal of the adder 407 is also given to the exclusive OR gate 408, and it is detected that the frequency number accumulated value FA has overflowed or underflowed.
Is output as

【0048】さらに、アサイメントメモリ回路32から
のバンクデータ(A)(B)は、ラッチ400を介し
て、セレクタ401で(A)、(B)いずれか一方のバ
ンクデータが選択され、ラッチ417を介して、上述周
波数ナンバ累算値FAの整数部分とコンパレートビット
とともにROMアドレス制御回路31へ送られ、波形デ
ータRDの読み出しが行われる。
Further, with respect to the bank data (A) and (B) from the assignment memory circuit 32, one of the bank data (A) and (B) is selected by the selector 401 via the latch 400, and the latch 417 is selected. Is sent to the ROM address control circuit 31 together with the integer part of the frequency number accumulated value FA and the comparator bit, and the waveform data RD is read.

【0049】これにより、1つのチャンネルに割り当て
られる2つの楽音成分(A)(B)は、バンクデータは
異なっているものの、共通の周波数ナンバ累算値FAが
用いられ、楽音生成処理のタイミング同期がとられる。
As a result, although the two tone components (A) and (B) assigned to one channel have different bank data, a common frequency number accumulated value FA is used, and the timing synchronization of the tone generation process is performed. Is taken.

【0050】上記セレクタ401のセレクト信号には、
システムクロック発生器10からのクロック信号CK3
が用いられ、このクロック信号CK3の前半で(A)に
ついての楽音生成処理が行われ、後半で(B)について
の楽音生成処理が行われることになる。システムクロッ
ク発生器10からのクロック信号群CKは、上記ラッチ
400、402、404、406、415、417、4
18にもラッチ信号として与えられ、チャンネル周期及
びタイミング同期がとられる。
The select signal of the selector 401 includes
Clock signal CK3 from system clock generator 10
Is used, the tone generation process for (A) is performed in the first half of the clock signal CK3, and the tone generation process for (B) is performed in the second half. The clock signal group CK from the system clock generator 10 corresponds to the latches 400, 402, 404, 406, 415, 417, 4
18 is also provided as a latch signal to synchronize the channel cycle and timing.

【0051】<波形データ伸長補間回路50>図11
は、波形データ伸長補間回路50を示すもので、ゲート
500〜510とセレクタ511〜513で図15に示
すような波形データRDの中の差分データの伸長が行わ
れ、ゲート514〜517とゲート群518、519、
アダー520、セレクタ521で図13に示すような波
形データRDの各サンプル値R0、R1 、R2 、R3
の補間が行われ、ゲート群524、522、ゲート52
6、セレクタ525、アダー527で波形データRDが
10ビットのサンプル値と6ビットの差分データのとき
補間し(D816=0)、8ビットのサンプル値2つの
とき補間しない(D816=1)制御が行われる。
<Waveform Data Expansion Interpolation Circuit 50> FIG.
Indicates a waveform data decompression interpolation circuit 50, in which gates 500 to 510 and selectors 511 to 513 decompress differential data in the waveform data RD as shown in FIG. 518, 519,
With the adder 520 and the selector 521, each sample value R 0 , R 1 , R 2 , R 3 ... Of the waveform data RD as shown in FIG.
Are interpolated, and the gate groups 524 and 522 and the gate 52
6, the selector 525 and the adder 527 perform interpolation when the waveform data RD is a 10-bit sample value and 6-bit difference data (D816 = 0), and do not interpolate when two 8-bit sample values are used (D816 = 1). Done.

【0052】《波形データ伸長補間回路50のデータ処
理の概要》図14は、ROM20より読み出された波形
データRDのデータ構成を示すもので、データ長信号D
816がローレベルで10ビットのサンプル値と6ビッ
トの差分データからなるときは、上位10ビットRD6
〜15はサンプル値で、RD5は差分符号データ、RD
2〜4は差分パワーデータ、RD0、1は差分マンティ
ッサデータとなっている。差分データRD0〜4は圧縮
状態で記憶されており、伸長すると図15に示すような
10ビットの伸長差分データIE0〜8、IESとな
る。すなわち差分パワーデータRD2〜4は、差分値の
何ビット目にはじめて「1」があるかを示すデータであ
り、差分マンティッサデータRD0、1は、この「1」
に続く2ビット分のデータそのものを示している。この
ように、図15上段のデータは伸長差分データを加算す
るときのものであるが、下段のデータは減算するときの
ものである。この場合には、差分パワーデータRD2〜
4は、差分値の何ビット目まで「1」が続くかを示すデ
ータであり、これに続く変換差分マンティッサデータR
G0〜2は、差分マンティッサデータRD0、1を図1
5下方の論理式で変換したもので、この変換内容は図1
6に示すとおりであり、プラスマイナス反転した値に変
換される。
<< Outline of Data Processing of Waveform Data Decompression Interpolation Circuit 50 >> FIG. 14 shows a data structure of waveform data RD read from the ROM 20.
When 816 is a low level and includes a 10-bit sample value and 6-bit differential data, the upper 10 bits RD6
15 is a sample value, RD5 is difference code data, RD
2 to 4 are differential power data, and RD0 and 1 are differential mantissa data. The difference data RD0 to RD4 are stored in a compressed state, and when expanded, become 10-bit expanded difference data IE0 to IE8 and IES as shown in FIG. That is, the difference power data RD2 to RD4 are data indicating the first bit of the difference value that has “1”, and the difference mantisser data RD0, RD1 is “1”.
Indicates the data itself of 2 bits following. As described above, the data in the upper part of FIG. 15 is for adding the decompression difference data, while the data in the lower part is for subtraction. In this case, the difference power data RD2
4 is data indicating to what bit of the difference value “1” continues, and the conversion difference Mantissa data R
G0-2 correspond to difference Mantissa data RD0, RD1 in FIG.
5 is converted by the logical expression below.
As shown in FIG. 6, it is converted to a value that is inverted in the plus and minus directions.

【0053】このような伸長差分データIE0〜8、I
ESは、図13に大丸で示す波形データRDの各サンプ
ル値の間の差の1/2であり、各サンプル値と×印で示
す仮想値との差を示すことになる。図13の仮想値は補
間値と重なって×印に○印が重なった状態となってい
る。
The decompression difference data IE0 to IE8, I
ES is の of the difference between each sample value of the waveform data RD indicated by a large circle in FIG. 13, and indicates the difference between each sample value and a virtual value indicated by a cross. The virtual value in FIG. 13 overlaps with the interpolation value and is in a state where the mark “x” overlaps the mark “x”.

【0054】波形データRDの各サンプル値R0
1 、R2 …は、周波数ナンバ累算値FAの小数が1/
2のときにおけるものであるため、図12(2)と図1
3の×印でつながる波形を実現するためには、サンプル
値G0 、G1 、G2 …の各×印地点の中間点のサンプル
値をメモリすればよいことになる。この中間点のサンプ
ル値は、R0 =(G0 +G1 )/2、R1 =(G1 +G
2 )/2、R2 =(G2 +G3 )/2…となる。
Each sample value R 0 of the waveform data RD,
R 1 , R 2 ... Are obtained by dividing the decimal number of the frequency number accumulated value FA by 1 /.
2 (2) and FIG. 1 (1).
In order to realize a waveform connected by the X mark of 3, it is only necessary to store the sample value of the sample point G 0 , G 1 , G 2 . The sample values of this intermediate point are: R 0 = (G 0 + G 1 ) / 2, R 1 = (G 1 + G
2 ) / 2, R 2 = (G 2 + G 3 ) / 2.

【0055】このように、×印のサンプル値ではなく、
×印の中間点のサンプル値を記憶することにより、図1
3と図12(2)に示すように、周波数ナンバ累算値F
Aが「00…0」のスタート地点で波形データレベルを
正確に「0」にすることができる。すなわち、ROM2
0の波形データRDのメモリエリアの先頭番地には、通
常第1ステップ目の「0」レベルでない波形データRD
がメモリされているが、周波数ナンバ累算値FAが「0
0…0」のとき、この第1ステップを読み出してしまわ
ないような処理が行われなくとも、上記中間点のサンプ
ル値を記憶することにより自動的に位相合わせができ、
図12(1)のような位相のずれを生じてしまうことが
なくなる。
As described above, instead of the sample values indicated by the crosses,
By storing the sample values at the midpoints of the crosses, FIG.
3 and FIG. 12 (2), the frequency number accumulated value F
The waveform data level can be accurately set to "0" at the start point where A is "00 ... 0". That is, ROM2
In the first address of the memory area of the waveform data RD of 0, the waveform data RD which is not the "0" level in the first step is normally stored.
Is stored, but the frequency number accumulated value FA is “0”.
In the case of "0 ... 0", the phase can be automatically adjusted by storing the sample value of the above-mentioned intermediate point even if a process for preventing the reading of the first step is not performed.
The phase shift as shown in FIG. 12 (1) does not occur.

【0056】また、×印の中間点とこの中間点の前後の
補間点との差分データは前後同じとなり、この結果、記
憶すべき差分データは本来の差分データの1/2で済む
ことになる。従って、通常波形データRDのサンプル値
が10ビットの時、その差分データは10ビットであ
り、上記のような圧縮方式を用いても差分パワーデータ
のビット数が4ビット必要となるため、最大圧縮して7
ビットにしかならないが、上述したように差分データを
1/2にできることにより、差分データを6ビットにで
き、合計16ビットとして、通常のデータアクセスにお
いて1回でアクセスできる。
Further, the difference data between the midpoint of the mark x and the interpolation points before and after this midpoint is the same before and after, and as a result, the difference data to be stored is only half the original difference data. . Therefore, when the sample value of the normal waveform data RD is 10 bits, the difference data is 10 bits. Even if the above-mentioned compression method is used, the number of bits of the difference power data is required to be 4 bits. 7
The difference data can be reduced to half as described above, but the difference data can be reduced to 6 bits, and can be accessed once in normal data access as a total of 16 bits.

【0057】このため、1つのROM20より波形デー
タRDとプログラム(又は音色データ)とを交互に読み
出して、単位時間当りの波形データRDの読み出し機会
が1/2に減っても十分対応できる。なお、記憶す波形
データRDは、×地点が折れ線状につながる波形であっ
てもよい。
Therefore, the waveform data RD and the program (or timbre data) are alternately read from one ROM 20, and the readout of the waveform data RD per unit time can be reduced to half. Note that the stored waveform data RD may be a waveform in which the x points are connected in a polygonal line shape.

【0058】上述の伸長差分データの1/4、2/4、
3/4、4/4をサンプル値に対し図17に示すように
加減すれば、補間値が求められることになる。この場
合、図13の各サンプル値R0 、R1 、R2 、R3 …に
対し、E0 、D1 、D2 、D3…のように、補間値の方
が大きいときは、伸長差分データは図15上段に示すよ
うに加算値となり、D0 、E1 、E2 、E3 …のように
補間値の方が小さいときは、伸長差分データは図15下
段に示すように減算値となる。
1/4, 2/4,
If 3/4 and 4/4 are added or subtracted from the sample values as shown in FIG. 17, an interpolated value will be obtained. In this case, if the interpolated value is larger than the sample values R 0 , R 1 , R 2 , R 3, ... In E 0 , D 1 , D 2 , D 3 ,. The difference data becomes an added value as shown in the upper part of FIG. 15, and when the interpolation value is smaller like D 0 , E 1 , E 2 , E 3 ..., The expanded difference data is subtracted as shown in the lower part of FIG. Value.

【0059】波形データRDのデータ形式に10ビット
のものと、8ビットのものの2種類あるのは、量子化ビ
ット数を減らしても量子化ノイズがそれほど問題となら
ないにぎやかな音は8ビットとし、量子化ノイズが目立
つ音は10ビットとして使い分け、メモリ使用量を少な
くしたものである。
There are two types of data format of the waveform data RD, that is, 10-bit data format and 8-bit data format. A lively sound is 8-bit data in which quantization noise does not cause much problem even if the number of quantization bits is reduced. Sounds in which quantization noise is noticeable are selectively used as 10 bits, and the amount of memory used is reduced.

【0060】《波形データ伸長補間回路50の回路構
成》図11において、セレクタ511のA側「0」端子
とB側「1」端子には、差分マンティッサデータRD0
がそのまま入力される。またセレクタ511のA側
「1」端子とB側「2」端子には、伸長差分データの最
上位ビットIESが「0」のとき、差分マンティッサデ
ータRD1がそのまま入力され、最上位ビットIESが
「1」のとき、アンドゲート502が開成されるので、
差分マンティッサデータRD0とRD1との排他的論理
和データRG1が入力される。さらにセレクタ511の
A側「2」端子とB側「3」端子には、上記最上位ビッ
トIESが「0」のとき、ナンドゲート505の出力が
「1」となってイクスクルシブオアゲート506でノア
ゲート509の出力が反転されるので、差分パワーデー
タRD2〜4の論理和が入力され、最上位ビットIES
が「1」のとき、オアゲート504による差分マンティ
ッサデータRD0、1の論理和の反転データと差分パワ
ーデータRD2〜4の論理和の反転データとの排他的論
理和データRG2が入力される。そして、セレクタ51
1のA側「3」端子には、上記最上位ビットIESが入
力され、B側「0」端子には、「0」データが入力され
る。
<< Circuit Configuration of Waveform Data Decompression Interpolation Circuit 50 >> In FIG. 11, the difference Mantissa data RD0 is supplied to the A-side “0” terminal and the B-side “1” terminal of the selector 511.
Is input as it is. When the most significant bit IES of the decompressed difference data is “0”, the difference mantisser data RD1 is directly input to the A-side “1” terminal and the B-side “2” terminal of the selector 511. Is "1", the AND gate 502 is opened.
Exclusive OR data RG1 of the difference mantisser data RD0 and RD1 is input. Furthermore, when the most significant bit IES is "0", the output of the NAND gate 505 becomes "1" and the exclusive OR gate 506 outputs the NOR gate to the "2" terminal on the A side and the "3" terminal on the B side of the selector 511. 509 is inverted, the logical sum of the difference power data RD2 to RD4 is input, and the most significant bit IES
Is “1”, the exclusive OR data RG2 of the inverted data of the OR of the differential mantisser data RD0 and RD1 by the OR gate 504 and the inverted data of the OR of the differential power data RD2 to RD4 is input. Then, the selector 51
The most significant bit IES is input to the A-side “3” terminal of 1, and “0” data is input to the B-side “0” terminal.

【0061】これにより、図15に示すような、差分マ
ンティッサデータRD0、1と上位1ビット分のデー
タ、又は変換差分マンティッサデータRG0、1、2の
データが作成されることになる。変換差分マンティッサ
データRG0〜2の具体的な内容は図16に示すとうり
である。
As a result, as shown in FIG. 15, data of differential mantissa data RD0, RD1 and upper one bit, or data of converted differential mantissa data RG0, RG1, RG2 is created. . The specific contents of the conversion difference mantisser data RG0 to RG2 are as shown in FIG.

【0062】このセレクタ511の4ビットデータは、
セレクタ512、513で上位に最上位ビットIESが
2ビット分、4ビット分付加されるか、下位に「0」デ
ータが2ビット分、4ビット分付加されるかが選択さ
れ、10ビットデータとして出力される。各セレクタ5
11、512、513のセレクト状態を適当に選ぶこと
により差分マンティッサデータRD0、1又はRG0〜
2を図15に示すようにシフトしていくことができ、こ
のセレクト状態の選択は、差分パワーデータRD2〜4
に基づいて行われる。
The 4-bit data of the selector 511 is
The selectors 512 and 513 select whether the most significant bit IES is added by 2 bits or 4 bits at the high order, or whether the “0” data is added by 2 bits or 4 bits at the low order. Is output. Each selector 5
11, 512, 513 by appropriately selecting the select state, the difference mantissa data RD0, 1 or RG0
2 can be shifted as shown in FIG. 15, and the selection of the selection state is performed by the difference power data RD2 to RD4.
It is performed based on.

【0063】こうして、差分圧縮データが6ビットであ
るにもかかわらず、伸長差分データを10ビットまで拡
大することができ、メモリ使用量を少なくできる。
In this manner, the expanded differential data can be expanded to 10 bits, even though the differential compressed data is 6 bits, and the memory usage can be reduced.

【0064】上記伸長差分データの最上位ビットIES
は、イクスクルシブオアゲート500の入力の差分符号
データRD5と、ノアゲート501の入力の周波数ナン
バ累算値FAの小数部分の最上位ビットFA11と、ノ
アゲート508からの差分データの各ビットRD0〜4
の論理和の反転データとによって決定される。すなわ
ち、図13に示すように、D0 のFA11が「0」、差
分符号RD5が「0」(加算方向)のときと、E1 、E
2 …のFA11が「1」、RD5が「1」(減算方向)
のときは、伸長差分データの最上位ビットIESが
「1」となって、サンプル値に対して差分データを減算
しなくてはならないことを示す。上記ノアゲート501
には差分データの各ビットRD0、1、2、3、4、5
の論理和の反転データが入力されて、差分データが「0
0000」のとき、ノアゲート501の出力を「0」と
して、伸長差分データの最上位ビットIESが「1」に
ならないようにコントロールされる。
The most significant bit IES of the expanded differential data
Are the difference code data RD5 input to the exclusive OR gate 500, the most significant bit FA11 of the decimal part of the frequency number accumulated value FA input to the NOR gate 501, and each bit RD0 to RD4 of the difference data from the NOR gate 508.
And the inverted data of the logical sum of That is, as shown in FIG. 13, when the FA 11 of D 0 is “0”, the difference code RD 5 is “0” (addition direction), and when E 1 and E 1
2 ... FA11 is "1" and RD5 is "1" (subtraction direction)
In this case, the most significant bit IES of the decompressed difference data becomes “1”, indicating that the difference data must be subtracted from the sample value. The above NOR gate 501
Each bit RD0, 1, 2, 3, 4, 5 of the differential data
Is input, and the difference data is “0”.
At the time of “0000”, the output of the NOR gate 501 is set to “0”, and control is performed so that the most significant bit IES of the decompressed difference data does not become “1”.

【0065】伸長差分データIEは、1ビット下位にシ
フトされて2/4の値となってアンドゲート群519を
介しアダー520の一方の端子に入力されるとともに、
2ビット下位にシフトされて1/4の値となってアンド
ゲート群518を介しアダー520の他方の端子に入力
され、このアダー520の出力はセレクタ521のA側
に与えられる。またセレクタ521のB側には、上記伸
長差分データIEがシフトされず、そのままの倍率で与
えられる。従って、アンドゲート群518、519の開
成信号であるIM0、IM1とセレクタ521のセレク
ト信号であるIM2よりなる掛率データIMを適当に選
ぶことにより、図17に示すように伸長差分データIE
を1/4倍、2/4倍、3/4倍、4/4倍、0倍とす
ることができる。
The expanded differential data IE is shifted down by one bit to become a value of と, and is input to one terminal of the adder 520 via the AND gate group 519.
The value is shifted to the lower side by 2 bits to become a value of 1/4, and is input to the other terminal of the adder 520 via the AND gate group 518. The output of the adder 520 is provided to the A side of the selector 521. On the B side of the selector 521, the decompressed difference data IE is not shifted but is given at the same magnification. Accordingly, by appropriately selecting the ratio data IM including the opening signals IM0 and IM1 of the AND gate groups 518 and 519 and the selecting signal IM2 of the selector 521, the expansion difference data IE as shown in FIG.
Can be reduced to 1/4, 2/4, 3/4, 4/4 and 0 times.

【0066】このような掛率とされた伸長差分データI
Eは、アンドゲート群522を介してアダー527に与
えられ、後述する波形データRDのサンプル値RD6〜
15に加減算され、波形データRDの各サンプル値の補
間が行われることになる。
The decompression difference data I having such a multiplication factor
E is given to the adder 527 via the AND gate group 522, and the sample values RD6 to RD6 of the waveform data RD to be described later.
15 is added and subtracted, and interpolation of each sample value of the waveform data RD is performed.

【0067】こうして、1つのサンプル値RD6〜15
と差分データRD0〜5で、8つの地点の波形データR
Dを作成することができ、なめらかな波形特性を得るこ
とができるとともにメモリ容量も少なくすることができ
ている。またこのような1つのデータで8つの地点を決
定できる波形データRDは1回の読み出しで読み出すこ
とができ、波形データRDの読み出し機会が少なくても
十分なめらかな波形を実現でき、この結果、ROM20
より波形データRDとそれ以外のプログラム等とを交互
に読み出しても、波形生成処理に支障をきたすことがな
くなり、ROM20にプログラムと波形データRDとを
一緒にメモリしても、各情報の読み出し速度を高める必
要もなくなる。
Thus, one sample value RD6 to RD15
And the difference data RD0 to RD5, the waveform data R at eight points
D can be created, smooth waveform characteristics can be obtained, and the memory capacity can be reduced. In addition, such waveform data RD that can determine eight points by one data can be read out by one reading, and a sufficiently smooth waveform can be realized even if the reading time of the waveform data RD is small.
Even if the waveform data RD and other programs are read alternately, the waveform generation processing is not hindered. Even if the program and the waveform data RD are stored together in the ROM 20, the reading speed of each information is reduced. There is no need to increase

【0068】上記掛率データIM0〜2は、周波数ナン
バ累算値FAの小数部分の上位3ビットFA9〜11に
よって、論理ゲート514〜517によって作成され
る。このゲート群514、517により、図17に示す
ようなデータ変換が行われ、波形データRDの補間値が
求められることになる。この場合、周波数ナンバ累算値
FAの小数部分の最上位ビットFA11のみが「1」の
とき、すなわち周波数ナンバ累算値FAが1/2のとき
は、サンプル値に対する補間は行われず、ここを中心と
して、これより前のタイミングでは、補間値が差分デー
タの1/4、2/4、3/4、4/4の減算値となり、
後のタイミングでは、補間値が差分データの1/4、2
/4、3/4の加算値となっている。
The multiplying factor data IM0 to IM2 are created by the logic gates 514 to 517 by the higher three bits FA9 to FA11 of the decimal part of the frequency number accumulated value FA. By the gate groups 514 and 517, data conversion as shown in FIG. 17 is performed, and an interpolation value of the waveform data RD is obtained. In this case, when only the most significant bit FA11 of the decimal part of the frequency number accumulated value FA is “1”, that is, when the frequency number accumulated value FA is 1 /, no interpolation is performed on the sample value. As a center, at an earlier timing, the interpolated value is a subtraction value of 1/4, 2/4, 3/4, 4/4 of the difference data,
At a later timing, the interpolated value is 1/4, 2
/ 4, 3/4.

【0069】上記波形データRD0〜15は、10ビッ
トのサンプル値と6ビットの差分データよりなるとき
は、サンプル値RD6〜15が、セレクタ525のA側
より入力されて、そのまま上記アダー527に与えられ
て、補間値が加減される。このとき、データ長信号D8
16は、「0」となるから、アンドゲート群524、5
22は開成され、アンドゲート526は閉成され、セレ
クタ525はA側が選択される。また波形データRD0
〜15が、8ビットのサンプル値2つよりなるときは、
波形データRD0〜7はセレクタ525のB側より入力
され、上記アダー527に与えられ、波形データRD8
〜15はセレクタ525のA側より入力され、上記アダ
ー527に与えられる。このとき各データRD0〜7、
8〜15の下位に2ビット「00」が付加されて10ビ
ットデータとされる。また、このとき、データ長信号D
816は「1」となるから、アンドゲート群524、5
22は閉成され、補間は行われない。さらに、このと
き、アンドゲート526は開成されるから、周波数ナン
バ累算値FAの小数部分の最上位ビットFA11の値
(1、0)に応じて、サンプル値(2n=RD0〜7、
2n+1=RD8〜15)が切り換えられる。
When the waveform data RD0 to RD15 consist of a 10-bit sample value and 6-bit difference data, the sample values RD6 to RD15 are input from the A side of the selector 525 and are given to the adder 527 as they are. Then, the interpolation value is adjusted. At this time, the data length signal D8
16 becomes “0”, so that the AND gate groups 524, 5
22 is opened, the AND gate 526 is closed, and the selector 525 selects the A side. Also, the waveform data RD0
When ~ 15 consists of two 8-bit sample values,
The waveform data RD0 to RD7 are input from the B side of the selector 525, and are provided to the adder 527.
To 15 are input from the A side of the selector 525 and supplied to the adder 527. At this time, each data RD0 to RD7,
Two bits “00” are added to the lower part of 8 to 15 to form 10-bit data. At this time, the data length signal D
Since 816 is “1”, the AND gate groups 524, 5
22 is closed and no interpolation is performed. Further, at this time, since the AND gate 526 is opened, the sample value (2n = RD0 to 7, RN0 to RD7) is set in accordance with the value (1, 0) of the most significant bit FA11 of the decimal part of the frequency number accumulated value FA.
2n + 1 = RD8 to 15) are switched.

【0070】<エンベロープ発生器60>図18はエン
ベロープ発生器60を示すもので上記アサイメントメモ
リ回路32からのエンベロープスピードデータES0〜
5は、ラッチ641を介しエンベロープスピードデータ
伸長回路600で図23に示すようなデータ伸長が行わ
れ、イクスクルシブオアゲート群643を介しアダー6
44で、それまでのエンベロープ累算値EA0〜15に
累算され、セレクタ649、ラッチ群650を介し、上
記エンベロープ累算値EA0〜15として、再びアダー
644に与えられるとともに、ラッチ651を介して、
乗算回路70及びシフト回路80へ出力される。上記ラ
ッチ群650は32個のラッチよりなり、16音色分の
(A)(B)2つの楽音についての計32個分のエンベ
ロープ累算値EAが累算可能となっている。
<Envelope Generator 60> FIG. 18 shows the envelope generator 60. The envelope speed data ES0 to ES0 from the assignment memory circuit 32 is shown.
5 is subjected to data expansion as shown in FIG. 23 by an envelope speed data expansion circuit 600 via a latch 641 and an adder 6 via an exclusive OR gate group 643.
At 44, the accumulated values EA0 to EA15 are accumulated to the previous accumulated values EA0 to EA15, and are supplied to the adder 644 again as the above-described envelope accumulated values EA0 to EA15 through the selector 649 and the latch group 650. ,
It is output to the multiplication circuit 70 and the shift circuit 80. The latch group 650 includes 32 latches, and a total of 32 envelope accumulated values EA for (A) and (B) two musical tones for 16 tones can be accumulated.

【0071】また、エンベロープの累算方向を示すエン
ベロープ加減信号EDUは、上記イクスクルシブオアゲ
ート群643に与えられ、累算方向が減算のときは、伸
長エンベロープスピードデータESEがプラスマイナス
反転されてアダー644に与えられ、エンベロープ累算
値EAの減算が行われる。このアダー644からのエン
ベロープ累算値EAの上位7ビットは、コンパレータ6
45に与えられて、図25に示すエンベロープのアタッ
ク、ディケイ、サスティン、リリース等の各フェーズの
エンベロープレベルデータELと比較され、エンベロー
プ累算値EAがエンベロープレベルデータELを越えた
とき、セレクタ646を介しノアゲート648を介し
て、フェーズ歩進信号ECSが上記セレクタ649に与
えられる。これにより、上記エンベロープレベルデータ
ELの下位にエンベロープ加減信号EDUと全て同じ値
の9ビットデータが付加されたデータがエンベロープ累
算値EAとして切換選択され、これにより、次のエンベ
ロープフェーズでのエンベロープ累算のスタート地点が
正確なエンベロープレベルデータELに修正される。
An envelope addition / subtraction signal EDU indicating the accumulation direction of the envelope is applied to the exclusive OR gate group 643. When the accumulation direction is subtraction, the expanded envelope speed data ESE is inverted plus or minus to add or subtract. 644 and the subtraction of the envelope accumulated value EA is performed. The upper 7 bits of the envelope accumulated value EA from the adder 644 are
45, and compared with the envelope level data EL of each phase such as attack, decay, sustain, and release of the envelope shown in FIG. 25. When the envelope accumulated value EA exceeds the envelope level data EL, the selector 646 is set. The phase step signal ECS is supplied to the selector 649 via the NOR gate 648. As a result, data in which 9-bit data having the same value as that of the envelope addition / subtraction signal EDU is added to the lower part of the envelope level data EL is switched and selected as the envelope accumulation value EA, whereby the envelope accumulation in the next envelope phase is performed. The start point of the calculation is corrected to the accurate envelope level data EL.

【0072】上記セレクタ646のセレクト信号には、
エンベロープの累算方向を示すエンベロープ加減信号E
DUが用いられ、エンベロープ累算が加算のときは、エ
ンベロープ累算値EAがエンベロープレベルデータEL
以上になるタイミングが検出され、エンベロープ累算が
減算のときは、エンベロープ累算値がエンベロープレベ
ルデータEL以下になるタイミングが検出される。また
上記アダー644のCout出力とエンベロープ加減信
号EDUとはイクスクルシブオアゲート647に入力さ
れて、これも上記フェーズ歩進信号ECSとして用いら
れており、エンベロープ累算値がオーバフロー又はアン
ダーフローしたときにも、次のフェーズのエンベロープ
累算に移行する。
The select signal of the selector 646 includes
Envelope addition / subtraction signal E indicating the accumulation direction of the envelope
When DU is used and the envelope accumulation is addition, the envelope accumulated value EA is the envelope level data EL.
When the above timing is detected and the envelope accumulation is subtraction, the timing at which the envelope accumulation value becomes equal to or less than the envelope level data EL is detected. Further, the Cout output of the adder 644 and the envelope addition / subtraction signal EDU are input to an exclusive OR gate 647, which is also used as the phase step signal ECS, and is used when the envelope accumulated value overflows or underflows. Also moves to the next phase of envelope accumulation.

【0073】このようなフェーズの移行は、フェーズ制
御回路630によって行われる。すなわち、フェーズ制
御回路630は、ラッチ642を介して与えられるキー
オン信号によってアタックフェーズにはいり、上記フェ
ーズ歩進信号ECSが与えられるたびに、ディケイ、サ
スティン、リリース等の次のフェーズを移行させてい
く。このフェーズ移行にあたっては、フェーズ制御回路
630よりキーアサイナ回路30のアサイメントメモリ
回路32に対し次のフェーズについてのエンベロープデ
ータの読み出し指示が行われ、その時のフェーズをその
まま保持するときは、ラッチ群652を通じて保たれ
る。
The phase shift is performed by the phase control circuit 630. That is, the phase control circuit 630 enters the attack phase by the key-on signal given via the latch 642, and shifts to the next phase such as decay, sustain, release, etc. every time the above-mentioned phase advance signal ECS is given. . In this phase shift, the phase control circuit 630 instructs the assignment memory circuit 32 of the key assigner circuit 30 to read the envelope data for the next phase. When the phase at that time is to be held as it is, the latch group 652 is used. Will be kept.

【0074】上記エンベロープスピードデータ伸長回路
600における、圧縮エンベロープスピードデータES
の伸長は、シフト係数制御回路610からのシフト係数
データEP0〜3によってシフト制御がなされることに
より行われ、このシフト係数データEP0〜3は、エン
ベロープスピードデータの上位4ビットES2〜5、エ
ンベロープ累算値の上位4ビットEA12〜15、エン
ベロープ加減信号EDUに基づいて作成される。
In the envelope speed data decompression circuit 600, the compressed envelope speed data ES
Is expanded by performing shift control with the shift coefficient data EP0 to EP3 from the shift coefficient control circuit 610. The shift coefficient data EP0 to EP3 includes the upper four bits ES2 to ES5 of the envelope speed data and the envelope accumulation data. The upper four bits EA12 to EA15 of the arithmetic value are created based on the envelope addition / subtraction signal EDU.

【0075】また、アサイメントメモリ回路32からの
シンアウトデータTH0、1は、シンアウト回路620
に与えられて、ラッチ群650におけるエンベロープ累
算値のラッチタイミングのシンアウト(間引き)が制御
される。このシンアウト回路620、フェーズ制御回路
630、ラッチ群652、ラッチ641、642、65
1には、システムクロック発生器10よりクロック信号
が与えられて、データ処理のチャンネル周期及びタイミ
ング周期がとられる。
The thin-out data TH0, TH1 from the assignment memory circuit 32 are supplied to the thin-out circuit 620.
, The thin-out (thinning out) of the latch timing of the envelope accumulated value in the latch group 650 is controlled. This thin-out circuit 620, phase control circuit 630, latch group 652, latches 641, 642, 65
1 is supplied with a clock signal from the system clock generator 10, and a channel cycle and a timing cycle of data processing are obtained.

【0076】《エンベロープスピードデータ伸長回路6
00》図19はエンベロープスピードデータ伸長回路6
00を示すもので、セレクタ601のA側「0」端子と
B側「1」端子にエンベロープスピードデータES0が
入力され、A側「1」とB側「2」端子にエンベロープ
スピードデータES1が入力され、A側「2」端子とB
側「3」端子にエンベロープES2〜5のオアゲート6
05を介した出力が入力され、A側「3」端子とB側
「0」端子には「0」データが入力される。これによ
り、図23の伸長エンベロープスピードデータの中のE
S0、1とその上位1ビット分が作成されることにな
る。
<< Envelope speed data expansion circuit 6
FIG. 19 shows an envelope speed data expansion circuit 6
00, the envelope speed data ES0 is input to the A side “0” terminal and the B side “1” terminal of the selector 601, and the envelope speed data ES1 is input to the A side “1” and the B side “2” terminal. A terminal “2” and B
OR gate 6 of the envelopes ES2 to ES5 on the side "3" terminal
An output via the terminal 05 is input, and data “0” is input to the “3” terminal on the A side and the “0” terminal on the B side. As a result, E in the expanded envelope speed data of FIG.
S0, 1 and its upper one bit are created.

【0077】このセレクタ601からの4ビットデータ
は、セレクタ602、603、604を介して上位又は
下位に2ビットの「00」、4ビットの「0000」、
8ビットの「000…0」が付加される。このとき、デ
ータが各セレクタ601〜604のA側に入力されれ
ば、上位へデータシフトされず、そのまま出力されてい
くが、B側に入力されれば、各々1ビット、2ビット、
4ビット、8ビットシフトされていくことになる。従っ
て、各セレクタ601〜604のセレクト状態を適当に
選ぶことにより、エンベロープスピードデータESを図
24に示すようにシフトしていくことができ、このセレ
クト状態の選択はシフト係数データEP0〜3に基づい
て行われる。
The 4-bit data from the selector 601 is transferred to upper or lower 2 bits of “00”, 4 bits of “0000”, 4 bits of data via selectors 602, 603 and 604.
8-bit "000 ... 0" is added. At this time, if the data is input to the A side of each of the selectors 601 to 604, the data is output without being shifted to the higher order, but if input to the B side, 1 bit, 2 bits,
The data is shifted by 4 bits and 8 bits. Therefore, by appropriately selecting the selection state of each of the selectors 601 to 604, the envelope speed data ES can be shifted as shown in FIG. 24. This selection state is selected based on the shift coefficient data EP0 to EP3. Done.

【0078】こうして、圧縮エンベロープスピードデー
タESがエンベロープ加減信号EDUを含めて7ビット
であるにもかかわらず、その伸長値は16ビットまで拡
大され、メモリ使用量を少なくすることができる。
Thus, although the compressed envelope speed data ES is 7 bits including the envelope addition / subtraction signal EDU, the decompression value is expanded to 16 bits, and the memory usage can be reduced.

【0079】このようにして伸長したエンベロープスピ
ードデータESEを累算したエンベロープ累算値EA
は、(A)(B)2つの楽音成分につきそれぞれ16チ
ャンネル分、上記ラッチ群650にラッチされる。エン
ベロープ累算値EA0〜15は16ビットで、そのうち
上位4ビットEA12〜15がパワーデータ、下位12
ビットEA0〜11がマンティッサデータとなる。
The envelope accumulated value EA obtained by accumulating the envelope speed data ESE expanded in this way.
(A) and (B) are latched by the above-mentioned latch group 650 for two channels for each of two tone components. The envelope accumulated values EA0 to EA15 are 16 bits, of which the upper 4 bits EA12 to EA15 are power data, and the lower 12 bits EA12 to EA15 are power data.
Bits EA0 to EA11 are mantissa data.

【0080】《シフト係数制御回路610》図20はシ
フト係数制御回路610を示すもので、圧縮エンベロー
プスピードデータESの上位4ビットは、そのままアダ
ー611のA側に入力され、アンドゲート群612を介
してシフト係数データEP0〜3として出力され、図2
3に示すようなデータシフトすなわち圧縮エンベロープ
スピードデータESの伸長が行われる。図23は、アダ
ー611のB側の入力がなんら影響を与えないときのも
のであり、影響を与えるときは上記データシフトが修正
されることになる。なお、ノアゲート613とオアゲー
ト614により、エンベロープスピードデータES2〜
5が「0000」のとき、シフト係数データEPは「0
001」とされ、図23最上段に示すように、エンベロ
ープスピードデータが「0000」のときでも、データ
シフト位置はエンベロープスピードデータが「000
1」のときと同じ状態とされる。
<< Shift Coefficient Control Circuit 610 >> FIG. 20 shows the shift coefficient control circuit 610. The upper 4 bits of the compressed envelope speed data ES are directly input to the A side of the adder 611, and are passed through the AND gate group 612. 2 are output as shift coefficient data EP0 to EP3.
3, ie, the expansion of the compressed envelope speed data ES is performed. FIG. 23 shows a case where the input on the B side of the adder 611 has no effect. When the input has an effect, the data shift is corrected. The NOR gate 613 and the OR gate 614 control the envelope speed data ES2 to ES2.
When 5 is “0000”, the shift coefficient data EP is “0”.
001 ", and even when the envelope speed data is" 0000 ", the data shift position is" 000 "as shown in the uppermost row of FIG.
1 ".

【0081】上記エンベロープ累算値EAの累算方向を
示すエンベロープ加減信号EDUは、インバータ617
で反転され、アンドゲート616を介してナンドゲート
群615に与えられており、エンベロープ加減信号ED
Uが「1」のディケイ、リリース時等の減衰時には、ア
ダー611のB入力には「1111」が入力されること
になる。そして、アダー611のCin端子には「1」
が入力されているので、結局アダー611のA側の入力
データは何の影響もうけず、そのまま出力される。ま
た、エンベロープ加減信号EDUが「0」のアタック時
においては、エンベロープ累算値の最上位ビットEA1
5が「0」のとき、やはりB側には「1111」が入力
され、A入力がそのまま出力されるが、最上位ビットE
A15が「1」のとき、エンベロープパワーデータEA
12〜15が反転されてB側に減算値として与えられ
る。
The envelope addition / subtraction signal EDU indicating the accumulation direction of the envelope accumulation value EA is supplied to the inverter 617.
, And is given to the NAND gate group 615 via the AND gate 616, and the envelope addition / subtraction signal ED
At the time of decay or release when U is “1”, “1111” is input to the B input of the adder 611. The Cin terminal of the adder 611 is “1”.
Is input, the input data on the A side of the adder 611 is output as it is without any influence. When the envelope addition / subtraction signal EDU is "0", the most significant bit EA1 of the envelope accumulated value is set.
When "5" is "0", "1111" is also input to the B side, and the A input is output as it is.
When A15 is "1", the envelope power data EA
12 to 15 are inverted and given to the B side as a subtraction value.

【0082】このため、エンベロープパワーデータEA
12〜15が「1000」を越え、「1001(9н
(нは16進値であることを示す記号)」「1010
(Aн)」「1011(Bн)」…となるに従って、シ
フト係数データEP0〜3は本来の値から−1、−2、
−3…と減っていくことになり、図24に示すように、
エンベロープスピードデータ伸長回路600におけるデ
ータシフトアップがそれだけ押さえられて、スピードデ
ータが1/2、1/4、1/8…の値となり、図26に
示すように、エンベロープ波形のアタック部分をイクス
ポーネンシャルな形状にすることができる。
For this reason, the envelope power data EA
12 to 15 exceed "1000" and "1001 (9
(Н is a symbol indicating that it is a hexadecimal value) "" 1010
(Aн), “1011 (Bн)”,..., The shift coefficient data EP0 to EP3 are −1, −2,
-3 ..., and as shown in FIG.
Since the data shift-up in the envelope speed data expansion circuit 600 is suppressed accordingly, the speed data becomes a value of 1/2, 1/4, 1/8 ..., and as shown in FIG. 26, the attack portion of the envelope waveform is exposed. It can be made into a sensual shape.

【0083】これにより、エンベロープ波形のアタック
特性を自然界に存在する音に、さらに近付けることがで
きる。この場合、エンベロープパワーデータEA12〜
15が「1000(8)」以下の時は、イクスポーネン
シャルにせずリニアな波形としているが、この段階まで
はイクスポーネンシャルであれリニアであれ、波形的に
は大差がなく、聴感上区別がつかないのであり、これに
より回路構成をより簡易にできる。
Thus, the attack characteristic of the envelope waveform can be made closer to a sound existing in the natural world. In this case, the envelope power data EA12-
When 15 is equal to or less than "1000 (8)", the waveform is not exponential but has a linear waveform. However, up to this stage, there is no significant difference in waveform, whether exponential or linear, and It is indistinguishable, so that the circuit configuration can be simplified.

【0084】なお、上記アンドゲート群612には、ア
ダー611のCout端子からの信号が開成信号として
与えられており、エンベロープスピードデータES2〜
5の値に対し、B入力の減算値が大きくなって、シフト
係数データEP0〜3がマイナスになるときには、Co
ut端子出力が「0」となって、アンドゲート群612
が閉じられる。
The AND gate group 612 receives a signal from the Cout terminal of the adder 611 as an open signal, and outputs the envelope speed data ES2 to ES2.
When the subtraction value of the B input becomes larger than the value of 5, and the shift coefficient data EP0 to EP3 becomes negative,
ut terminal output becomes “0”, and the AND gate group 612 is output.
Is closed.

【0085】《フェーズ制御回路630》図21はフェ
ーズ制御回路630を示すもので、図29はこのフェー
ズ制御回路630のデータ変換内容を示すものである。
フェーズ値PH0、1は、フェーズ値PB0、1が上記
ラッチ群652を経たもので、このフェーズ値は、図2
7に示すように「00(0)」でアタックを表し、「0
1(1)」で第2アタック又はディケイ、「10
(2)」でサスティン又は第2ディケイ、「11
(3)」がリリース又は無音状態を表している。
<< Phase Control Circuit 630 >> FIG. 21 shows the phase control circuit 630, and FIG. 29 shows the data conversion contents of the phase control circuit 630.
The phase values PH0 and PH1 are obtained by passing the phase values PB0 and PB1 through the latch group 652.
As shown in FIG. 7, the attack is represented by “00 (0)”,
1 (1) ”for the second attack or decay,“ 10
(2) ”for sustain or 2nd decay,“ 11
(3) "indicates a released or silent state.

【0086】図21において、フェーズ値PH0、1が
どのような値であれ、キーオン信号が「0」になれば、
ナンドゲートNA3、5の出力が「11」となり、ラッ
チを介して、フェーズ値PA0、1は、図29(1)上
段に示すように、「11(3)」とされる。これは、放
音中にキーオフとなれば、どのフェーズであれ強制的に
リリース状態とするためである。
In FIG. 21, if the key-on signal becomes "0" regardless of the phase values PH0 and PH1,
The outputs of the NAND gates NA3 and NA5 become "11", and the phase values PA0 and PA1 are made "11 (3)" as shown in the upper part of FIG. This is because if the key is turned off during sound emission, the release state is forcibly set in any phase.

【0087】また、キーオン信号が「1」で、ナンドゲ
ートNA1の出力が「1」のとき、フェーズ値PH0、
1は、ナンドゲートNA2,4で反転後、ナンドゲート
NA3、5で再反転され、図29(1)下段に示すよう
に、そのままの値が維持される。これは、キーオン中で
あれば、その時のフェーズをそのまま維持すればよいか
らである。
When the key-on signal is "1" and the output of the NAND gate NA1 is "1", the phase values PH0, PH0,
After 1 is inverted by the NAND gates NA2 and NA4, it is again inverted by the NAND gates NA3 and NA5, and the value is maintained as shown in the lower part of FIG. This is because during key-on, the phase at that time may be maintained as it is.

【0088】さらに、フェーズ値PH0、1が「11
(3)」のリリース状態でキーオン信号が「1」になる
と、ナンドゲートNA1の出力が「0」となるから、ナ
ンドゲートNA2、4の出力は「11」で、ナンドゲー
トNA3、5の出力は「00」となり、フェーズ値PA
0、1は、図29(1)最下段に示すように「00
(0)」となる。これは、リリース中又は無音中にキー
オン状態となれば、次の新たな楽音の生成放音状態には
いるため、フェーズを「00(0)」とするためであ
る。このとき、インバータIV2の出力が「1」となっ
て、オンイベント信号が出力される。なお、ラッチ63
1は、システムクロック発生器10からのクロック信号
により、ラッチ動作が行われる。
Further, the phase values PH0 and PH1 are set to "11
When the key-on signal becomes "1" in the release state of "(3)", the output of the NAND gate NA1 becomes "0". Therefore, the outputs of the NAND gates NA2 and NA4 are "11", and the outputs of the NAND gates NA3 and NA5 are "00". And the phase value PA
0 and 1 are “00” as shown at the bottom of FIG.
(0) ". This is because the phase is set to “00 (0)” if the key-on state is established during the release or silence, and the next new musical tone is generated and emitted. At this time, the output of the inverter IV2 becomes "1", and an on-event signal is output. Note that the latch 63
In 1, a latch operation is performed by a clock signal from the system clock generator 10.

【0089】また、フェーズ歩進信号ECSが「0」の
時は、イクスクルシブオアゲートEO1のノアゲートN
R1からのデータは「0」となって、フェーズ値PA0
がそのままPB0として出力され、アンドゲートAN1
が閉成されるので、フェーズ値PA1がそのままオアゲ
ートOR1を介してPB1として出力され、図29
(2)上段に示すように、そのままの値が維持される。
これは、フェーズ歩進の指示がなければ、そのときのフ
ェーズをそのまま維持すればよいからである。
When the phase step signal ECS is "0", the NOR gate N of the exclusive OR gate EO1
The data from R1 becomes "0" and the phase value PA0
Is output as PB0 as it is, and AND gate AN1
Is closed, the phase value PA1 is output as it is as PB1 via the OR gate OR1, and FIG.
(2) As shown in the upper part, the value is maintained as it is.
This is because if there is no instruction to advance the phase, the phase at that time may be maintained as it is.

【0090】フェーズ歩進信号ECSが「1」のとき
は、フェーズ値PA0、1が「00」の場合、PB0、
1は「01」となって1つ先のフェーズに歩進され、フ
ェーズ値PA0、1が「01」の場合、PB0、1は
「10」となってやはり1つ先のフェーズに歩進され、
図29(2)中段に示すようになる。これは、フェーズ
歩進の指示があれば、そのときのフェーズを1つ進めれ
ばよいからである。
When the phase step signal ECS is "1", when the phase values PA0, 1 are "00", PB0,
1 becomes “01” and is advanced to the next phase. When the phase values PA0 and PA1 are “01”, PB0 and 1 become “10” and are also advanced to the next phase. ,
The result is as shown in the middle part of FIG. This is because if there is an instruction to advance the phase, the phase at that time may be advanced by one.

【0091】しかし、フェーズ歩進信号ECSが「1」
で、フェーズ値PA0、1が「10」「11」のとき
は、フェーズは歩進されず、図29(2)下段に示すよ
うに、そのままの値が維持される。これは、フェーズ
「10(2)」から次のリリースのフェーズ「11
(3)」に移るのは、キーオン状態からキーオフ状態に
なったときのみであり、またリリース又は無音のフェー
ズ「11(3)」から新たなアタックのフェーズ「00
(0)」に移るのは、キーオフ状態からキーオン状態に
なったときのみであって、キーオン信号の変化のみでフ
ェーズを歩進すればよいからである。
However, when the phase advance signal ECS is "1"
When the phase values PA0 and PA1 are "10" and "11", the phase is not advanced, and the value is maintained as shown in the lower part of FIG. 29 (2). This is because phase “10 (2)” starts with phase “11” of the next release.
The transition to (3) ”is performed only when the key-on state changes to the key-off state, and the release or silence phase“ 11 (3) ”changes to a new attack phase“ 00 ”.
The reason for shifting to (0) "is only when the state changes from the key-off state to the key-on state, and the phase only needs to be advanced by changing the key-on signal.

【0092】図28は、このようなフェーズ値PH0、
1(PB0、1)のラッチ群652への記憶状態を示す
もので、(A)(B)2つの楽音成分につき16チャン
ネル分のフェーズ値がラッチされている。
FIG. 28 shows such a phase value PH0,
This indicates the storage state of 1 (PB0, 1) in the latch group 652, in which (A) and (B) phase values for 16 channels are latched for two tone components.

【0093】《シンアウト回路620》図22はシンア
ウト回路620を示すもので、カウンタ621は、クロ
ック信号CK7をベースとして、図30に示すような、
周期が2倍、4倍、8倍…のクロック信号Q0、1…5
を出力するもので、このクロック信号Q0、1…5は、
オアゲート群622を介しナンドゲート623を介し
て、ラッチ信号TOとして出力される。アサイメントメ
モリ回路32からの周波数ナンバ累算値FAのラッチ間
引き率を示すシンアウトデータTH0、1は、アンドゲ
ート625、オアゲート626を介し、オアゲート群6
22に与えられ、またシンアウトデータTH1はそのま
ま上記オアゲート群622の一部に与えられ、これらに
より、「1」信号の与えられるオアゲートの出力を常時
「1」として、各クロック信号Q0〜5を無効とする。
<< Sin-out Circuit 620 >> FIG. 22 shows a thin-out circuit 620. A counter 621 is based on a clock signal CK7, as shown in FIG.
The clock signals Q0, 1,...
The clock signals Q0, 1,...
The signal is output as the latch signal TO via the OR gate group 622 and the NAND gate 623. The thin-out data TH0,1 indicating the thinning rate of the latch of the frequency number accumulated value FA from the assignment memory circuit 32 is supplied to the OR gate group 6 via the AND gate 625 and the OR gate 626.
22 and the syn-out data TH1 is directly supplied to a part of the OR gate group 622, whereby the output of the OR gate to which the "1" signal is supplied is always set to "1", and the clock signals Q0 to Q5 are output. Invalidate.

【0094】シンアウトデータTH0、1が「00」の
とき、すべてのクロック信号Q0〜5が有効となるの
で、ラッチ信号TOは、すべてのクロック信号Q0〜5
が「1」の時のみ、「0」となる。これは、図30下段
に示すように、本来のチャンネルタイミングすなわち本
来のラッチタイミングと同じクロック信号CK7からみ
て64発に1回のタイミングである。
When the thin-out data TH0 and TH1 are "00", all the clock signals Q0 to Q5 are valid, so that the latch signal TO is equal to all the clock signals Q0 to Q5.
Is "0" only when is "1". As shown in the lower part of FIG. 30, this is a timing of one out of 64 times when viewed from the same clock signal CK7 as the original channel timing, that is, the original latch timing.

【0095】また、シンアウトデータTH0、1が「0
1」のとき、クロック信号Q0〜3だけが有効となるの
で、ラッチ信号TOは、クロック信号Q0〜3が「1」
の時のみ、「0」となる。これは、図30下段に示すよ
うに、本来のチャンネルタイミングすなわち本来のラッ
チタイミングと同じクロック信号CK7からみて16発
に1回のタイミングである。
Further, the thin-out data TH0 and TH1 are "0"
When "1", only the clock signals Q0 to Q3 are valid, so that the latch signal TO indicates that the clock signals Q0 to Q3 are "1".
"0" only at the time of. As shown in the lower part of FIG. 30, this is a timing of 16 times when viewed from the same clock signal CK7 as the original channel timing, that is, the original latch timing.

【0096】さらに、シンアウトデータTH0、1が
「10」のとき、クロック信号Q0、1だけが有効とな
るので、ラッチ信号TOは、クロック信号Q0、1が
「1」の時のみ、「0」となる。これは、図30下段に
示すように、本来のチャンネルタイミングすなわち本来
のラッチタイミングと同じクロック信号CK7からみて
4発に1回のタイミングである。
Further, when the thin-out data TH0 and TH1 are "10", only the clock signals Q0 and 1 are valid, so that the latch signal TO becomes "0" only when the clock signals Q0 and 1 are "1". ". As shown in the lower part of FIG. 30, this is a timing of one out of four times when viewed from the same clock signal CK7 as the original channel timing, that is, the original latch timing.

【0097】またさらに、シンアウトデータTH0、1
が「11」のとき、すべてのクロック信号Q0〜5が無
効となるので、ラッチ信号TOは、クロック信号Q0〜
5に関係なく、常時「0」となる。これは、図30下段
に示すように、本来のチャンネルタイミングすなわち本
来のラッチタイミングと同じクロック信号CK7とまっ
たく同じタイミングである。
Further, the syn-out data TH0, TH1
Is "11", all the clock signals Q0 to Q5 are invalidated, so that the latch signal TO
Regardless of 5, it is always "0". This is exactly the same timing as the clock signal CK7, which is the same as the original channel timing, that is, the original latch timing, as shown in the lower part of FIG.

【0098】このようにして生成されたラッチ信号TO
は、デコーダ624の0〜31の32個のいずれかの出
力ラインより出力され、32個のラッチ群650のいず
れかにおいて、エンベロープ累算値EAのシンアウト
(間引き)ラッチが実行され、このシンアウトは各ラッ
チについて順番に行われる。上記デコーダ624の0〜
31の32個の出力ラインの選択は、ラッチ627を介
して与えられるクロック信号CK3〜7によって行われ
る。
The latch signal TO generated in this manner is
Is output from any of the 32 output lines 0 to 31 of the decoder 624, and a thin-out (decimation) latch of the envelope accumulated value EA is executed in any of the 32 latch groups 650. This is performed sequentially for each latch. 0 to 0 of the decoder 624
Selection of 31 output lines of 31 is performed by clock signals CK3 to CK7 supplied via a latch 627.

【0099】こうして、図32に示すように、エンベロ
ープ累算値EAのラッチのシンアウト(間引き)によ
り、エンベロープ累算値EAのビット数を従来必要とさ
れた20ビットから16ビットと少なくしても、動作性
の良い楽音を放音できる。
In this manner, as shown in FIG. 32, the number of bits of the envelope accumulated value EA is reduced from 20 bits conventionally required to 16 bits due to the thinning out (decimation) of the latch of the envelope accumulated value EA. It can emit musical sounds with good operability.

【0100】なお、ラッチ627は、システムクロック
発生器10からのクロック信号によってラッチされタイ
ミング同期がとられる。
Incidentally, the latch 627 is latched by a clock signal from the system clock generator 10 and the timing is synchronized.

【0101】<乗算回路70>図33は乗算回路70を
示すもので、波形データ伸長補間回路50からの波形デ
ータのサンプル値や補間値よりなる補間波形データIP
0〜9が、乗算回路70に与えられるとともに、エンベ
ロープ発生器60からのエンベロープ累算値EA0〜1
5のうち、下位3ビットと上位4ビットを除いたマンテ
ィッサデータEA3〜11も乗算回路70に与えられ
て、波形データとエンベロープとの乗算が行われる。
<Multiplying Circuit 70> FIG. 33 shows a multiplying circuit 70, in which the interpolation waveform data IP composed of the sample values and the interpolation values of the waveform data from the waveform data decompression interpolation circuit 50 is shown.
0 to 9 are provided to the multiplication circuit 70, and the envelope accumulated values EA0 to EA1 from the envelope generator 60 are provided.
5, the mantissa data EA3 to EA11 excluding the lower 3 bits and the upper 4 bits are also supplied to the multiplying circuit 70, and the waveform data is multiplied by the envelope.

【0102】このとき、上記乗算されるエンベロープマ
ンティッサデータEA3〜11の上位に「1」データが
付加される。これは、エンベロープマンティッサデータ
EA3〜11の9ビットをMとすると、1+M/29
演算を行うことを示し、この値に補間波形データIPが
乗算されることになる。このようにして乗算された乗算
データMTは20ビットデータとして出力されるが、下
位4ビットを切り捨てて、16ビットデータMT0〜1
5としてシフト回路80へ出力される。
At this time, "1" data is added to the higher order of the envelope mantisser data EA3 to EA11 to be multiplied. This is because, if the 9-bit envelope Man tipper support data EA3~11 is M, indicates that performs calculation of 1 + M / 2 9, so that the interpolated waveform data IP to this value is multiplied. The multiplied data MT multiplied in this way is output as 20-bit data.
5 is output to the shift circuit 80.

【0103】<シフト回路80>図34はシフト回路8
0を示すもので、乗算データMT0〜15は、4段のセ
レクタ800、801、802、803を介して、エン
ベロープパワーデータEA12〜15の値に応じたシフ
トダウンが行われて、楽音データST0〜15として、
系列累算回路90へ出力される。
<Shift Circuit 80> FIG.
The multiplied data MT0 to MT15 are shifted down according to the values of the envelope power data EA12 to EA15 through the four-stage selectors 800, 801, 802, and 803, and the tone data ST0 to ST0 are output. As 15,
It is output to sequence accumulation circuit 90.

【0104】セレクタ800は、セレクト信号EA12
が「0」のとき1ビットシフトダウンし、「1」のとき
そのままシフトしないでデータを出力する。セレクタ8
01は、セレクト信号EA12が「0」のとき2ビット
シフトダウンし、「1」のときそのままシフトしないで
データを出力する。セレクタ802は、セレクト信号E
A12が「0」のとき4ビットシフトダウンし、「1」
のときそのままシフトしないでデータを出力する。セレ
クタ803は、セレクト信号EA12が「0」のとき8
ビットシフトダウンし、「1」のときそのままシフトし
ないでデータを出力する。
The selector 800 outputs the select signal EA12
Is "0", the data is shifted down by one bit, and when "1", the data is output without being shifted. Selector 8
01 shifts down by 2 bits when the select signal EA12 is "0", and outputs data without shifting when it is "1". The selector 802 outputs the select signal E
When A12 is "0", shift down by 4 bits to "1"
In this case, data is output without shifting. When the select signal EA12 is “0”, the selector
Bit shift down, and when "1", data is output without shifting.

【0105】従って、エンベロープパワーデータEA1
2〜15の値が小さいほどシフトダウン量が大きくな
る。エンベロープパワーデータEA12〜15をPとす
ると、このシフト回路80では2P-16の演算を行ってい
ることになり、上記補間波形データをRとすると、この
シフト回路80の出力は2P-16×(1+M/29 )×R
となる。この場合かっこ内の1は省略してもよく、そう
すると乗算回路70のB側の「9」端子入力は「0」と
なる。
Therefore, the envelope power data EA1
The smaller the value of 2 to 15, the larger the downshift amount. If the envelope power data EA12 to EA15 is P, this shift circuit 80 performs 2P -16 calculation. If the interpolation waveform data is R, the output of this shift circuit 80 is 2P-16. × (1 + M / 2 9 ) × R
Becomes In this case, 1 in parentheses may be omitted, and the input of the “9” terminal on the B side of the multiplication circuit 70 becomes “0”.

【0106】このデータシフトダウンにより、エンベロ
ープレベルが低いほどシフトダウンの割合が大きいの
で、エンベロープ波形は、図35に示すように、ディケ
イ、リリース等の減衰部分がイクスポーネンシャルな特
性となり、自然界に存在する音にさらに近付けることが
できる。
Due to the data shift-down, the lower the envelope level, the higher the ratio of the shift-down. As shown in FIG. 35, the envelope waveform has exponential characteristics such as decay, release, etc., as shown in FIG. Can be brought even closer to the sound that exists.

【0107】<系列累算回路90>図36は系列累算回
路90を示すもので、上記シフト回路80からの楽音デ
ータST0〜15は、イクスクルシブオアゲート群90
0を介して、波形データがマイナス値であることを示す
波形折返し信号FDUが「1」のときに、プラスマイナ
ス反転される。この反転後の楽音データGA0〜15
は、アダー901で、それまでの各系列ごとの累算楽音
データGC0〜15に累算され、セレクタ906のA側
に与えられる。上記アダー901のCin端子には、上
記波形折返し信号FDUが与えられ、波形データがマイ
ナス値のとき+1の補正がなされる。
<Sequence Accumulator 90> FIG. 36 shows a sequence accumulator 90. The tone data ST0 to ST15 from the shift circuit 80 are stored in an exclusive OR gate group 90.
When the waveform return signal FDU, which indicates that the waveform data is a negative value via "0", is "1", the waveform data is inverted in the plus and minus directions. This inverted tone data GA0-15
Are added to the accumulated musical tone data GC0 to GC15 for each series up to that point in the adder 901 and are provided to the A side of the selector 906. The waveform folded signal FDU is applied to the Cin terminal of the adder 901, and when the waveform data is a negative value, +1 is corrected.

【0108】セレクタ906のB側には、A側の累算楽
音データGCの最上位ビットGC15と各ビットが同じ
値となる15ビットのデータと、アダー901での累算
前の楽音データGAの最上位ビットGA15が最上位ビ
ットとして与えられ、オーバーフローしたときにはプラ
スの最大値「011…1」、アンダーフローしたときに
はマイナスの最大値「100…0」が、このセレクタ9
06のB側より入力され、新たな累算楽音データGCと
して出力される。この場合の最上位ビットの「0」
「1」は符号ビットである。
On the B side of the selector 906, 15-bit data in which each bit has the same value as the most significant bit GC15 of the accumulated musical tone data GC on the A side, and the musical tone data GA before accumulation in the adder 901 are stored. The most significant bit GA15 is given as the most significant bit, and when overflow occurs, a maximum positive value “011... 1” and when an underflow occurs, a maximum negative value “100.
06 is input from the B side and output as new accumulated musical tone data GC. The most significant bit "0" in this case
“1” is a sign bit.

【0109】このオーバーフロー、アンダーフローの検
出は以下のようにして行われる。すなわち、まず楽音デ
ータGAの最上位ビットGA15と、それまでの累算楽
音データGCの最上位ビットGC15とは、イクスクル
シブオアゲート902を介しインバータ903より出力
され、両データの一致、すなわち「00」で一致すると
きは加算中、「11」で一致するときは減算中であるこ
とが検出され、この結果、アンドゲート905は開成さ
れる。
The detection of the overflow and the underflow is performed as follows. That is, first, the most significant bit GA15 of the musical tone data GA and the most significant bit GC15 of the accumulated musical tone data GC up to that point are output from the inverter 903 via the exclusive OR gate 902, and the two data match, that is, "00". , It is detected that addition is being performed, and if it is determined that it is “11”, it is detected that subtraction is being performed. As a result, the AND gate 905 is opened.

【0110】次いで、アダー901での累算値の累算楽
音データGBの最上位ビットGB15と上記楽音データ
GAの最上位ビットGA15とは、イクスクルシブオア
ゲート904に入力され、両データの不一致、すなわち
加算中に累算後の楽音データGBの最上位ビットGB1
5が「1」となってオーバーフローとなったこと、又は
減算中に累算後の楽音データGBの最上位ビットGB1
5が「0」となってアンダーフローとなったことが検出
され、この検出信号は上記アンドゲート905を介し
て、セレクタ906にセレクト信号として与えられ、上
述したようにオーバーフロー時にプラスの最大値「01
1…1」、アンダーフロー時にマイナスの最大値「10
0…0」が出力される。
Next, the most significant bit GB15 of the accumulated musical tone data GB of the accumulated value in the adder 901 and the most significant bit GA15 of the musical tone data GA are input to the exclusive OR gate 904, and when the two data do not match, That is, the most significant bit GB1 of the music data GB after accumulation during addition.
5 becomes "1" and overflow occurs, or the most significant bit GB1 of the musical tone data GB after accumulation during subtraction
5 is detected to be "0" and an underflow is detected, and this detection signal is supplied as a select signal to the selector 906 via the AND gate 905, and as described above, the positive maximum value " 01
1 ... 1 ", negative maximum value" 10
0 ... 0 "is output.

【0111】こうして、楽音データの累算値GBがオー
バーフロー又はアンダーフローしても楽音信号の振幅レ
ベルを最大振幅のまま維持でき、特別の判定ビットを設
けなくても済み、データ処理量を少なくすることができ
る。
In this way, even if the cumulative value GB of the musical tone data overflows or underflows, the amplitude level of the musical tone signal can be maintained at the maximum amplitude, no special judgment bit needs to be provided, and the data processing amount is reduced. be able to.

【0112】セレクタ906からの累算楽音データGC
0〜15は、ラッチバッファ910に入力される。この
ラッチバッファ910は、8個のラッチとセレクタとほ
ぼ同じ機能を持つ8個の3ステートバッファとよりな
り、この8個のラッチのうち各々「a群」「b群」と名
付けられる4個ずつのラッチで、楽音データの累算を行
うものと、この累算値を出力するものとが交互に切り換
えられる。ラッチバッファ910が4個ずつあるのは、
D−A変換器100、サウンドシステム110に形成さ
れる楽音生成系が4系統あるためであり、この系統ごと
に楽音データが累算出力されていく。
Accumulated musical tone data GC from selector 906
0 to 15 are input to the latch buffer 910. The latch buffer 910 is composed of eight latches and eight three-state buffers having almost the same function as the selector. Of the eight latches, four latches named “group a” and “group b” are used, respectively. Are alternately switched between those for accumulating musical tone data and those for outputting this accumulated value. There are four latch buffers 910 each.
This is because there are four tone generation systems formed in the DA converter 100 and the sound system 110, and the tone data is cumulatively calculated for each of these systems.

【0113】この系統は、例えば第1系統はチャンネル
CH0〜3の(A)(B)の楽音、第2系統はチャンネ
ルCH4〜7の(A)(B)の楽音、第3系統はチャン
ネルCH8〜11の(A)(B)の楽音、第4系統はチ
ャンネルCH12〜15の(A)(B)の楽音が割り当
てられ、各チャンネルの楽音データが各系列ごとに累算
される。
This system includes, for example, the first system having the (A) and (B) musical tones of the channels CH0 to CH3, the second system having the (A) and (B) musical tones of the channels CH4 to CH7, and the third system having the channel CH8. To the (A) and (B) musical tones of 1111, the musical tones of (A) and (B) of the channels CH12 to 15 are assigned to the fourth system, and the musical sound data of each channel is accumulated for each stream.

【0114】この系列を決めるのが、上述したアサイメ
ントメモリ回路32からの系列データGR0、1であ
り、デコーダ907は、この系列データGR0、1とク
ロック信号CK8とをクロック信号CK3及びクロック
信号CK2の反転信号(図37(3))のタイミングで
取り込んでデコードし、ラッチバッファ910の中の累
算値を書き込むラッチを順次選択する。これは、第35
図の例であれば、(4)に示すように、各チャンネルC
H0、1…15についての(A)(B)の各タイミング
で行われ、シフト回路80からの(A)(B)2つの楽
音につき、4チャンネル分ずつ、各系列ごとに累算合成
されて出力されていくことになる。
The sequence is determined by the sequence data GR0,1 from the assignment memory circuit 32, and the decoder 907 converts the sequence data GR0,1 and the clock signal CK8 into the clock signal CK3 and the clock signal CK2. 37 (3)), the latch is fetched and decoded, and the latch in the latch buffer 910 to which the accumulated value is to be written is sequentially selected. This is the 35th
In the example shown in the figure, as shown in (4), each channel C
H0, 1... 15 are performed at the respective timings (A) and (B), and for each of (A) and (B) two musical tones from the shift circuit 80, four channels are accumulated and synthesized for each sequence. It will be output.

【0115】またこの系列データGR0、1は、セレク
タ908を介して、デコーダ909に与えられ、デコー
ダ909は、この系列データGR0、1とクロック信号
CK8とをクロック信号CK3及びクロック信号CK2
又はクロック信号CK2の反転信号のタイミングで取り
込んでデコードし、3ステートバッファをコントロール
して、ラッチバッファ910の中の累算途中のデータを
読み出すラッチを順次選択する。これは、図37の例で
あれば、(5)に示すように、系列GR0b、GR1
b、GR2b…で示すタイミングである。これに対し、
クロック信号群もセレクタ908を介して、デコーダ9
09に与えられ、デコーダ909は、このクロック信号
群とクロック信号CK8とをクロック信号CK2のタイ
ミングで取り込んでデコードし、3ステートバッファを
コントロールして、ラッチバッファ910の中の累算値
を読み出すラッチを順次選択する。これは、図37の例
であれば、(5)に示すように、各チャンネルCH0、
1…15についての系列GR0a、GR1a、GR2a
…で示すタイミングである。これにより、図37(4)
(5)に示す、ラッチへの書き込みタイミングと、ラッ
チからの読み出しタイミングとが一致するラッチで累算
が行われ、これ以外のラッチで累算楽音データの読み出
しが行われる。
The series data GR0 and GR1 are supplied to a decoder 909 via a selector 908. The decoder 909 converts the series data GR0 and GR1 and the clock signal CK8 into a clock signal CK3 and a clock signal CK2.
Alternatively, the latch is read in at the timing of the inverted signal of the clock signal CK2, decoded, and the three-state buffer is controlled to sequentially select the latches in the latch buffer 910 from which the data being accumulated is read. This corresponds to the sequence GR0b, GR1 as shown in (5) in the example of FIG.
b, GR2b... In contrast,
The clock signal group is also supplied to the decoder 9 via the selector 908.
09, the decoder 909 captures and decodes the clock signal group and the clock signal CK8 at the timing of the clock signal CK2, controls the three-state buffer, and reads the accumulated value in the latch buffer 910. Are sequentially selected. In the example of FIG. 37, this is as shown in (5), for each channel CH0,
Sequences GR0a, GR1a, GR2a for 1 ... 15
The timing is indicated by. As a result, FIG.
As shown in (5), accumulation is performed in the latch whose write timing to the latch coincides with read timing from the latch, and accumulated tone data is read in other latches.

【0116】ラッチバッファ910からの楽音データG
Cは、ラッチ911を介してD−A変換器100に出力
される。このラッチ911へのラッチは、上記図37
(5)の系列GR0a、GR1a、GR2a…で示すタ
イミングと同じタイミングで行われ、図37(7)に示
すように、各系列ごとの楽音データがa群のラッチ、b
群のラッチで交互に出力されていく。なお、図37
(6)に示すようなワンショットが、システムクロック
発生器10よりラッチバッファ910に与えられ、a群
のラッチとb群のラッチとが交互にリセットされる。ま
た、ラッチ911はキーアサイナ回路30からのD−A
ゲート信号によってリセットされる。
Music data G from latch buffer 910
C is output to the DA converter 100 via the latch 911. The latch to the latch 911 is performed as shown in FIG.
(5) are performed at the same timings as indicated by the series GR0a, GR1a, GR2a,..., And as shown in FIG.
The data is output alternately by the group latches. Note that FIG.
One shot as shown in (6) is given from the system clock generator 10 to the latch buffer 910, and the latches of group a and the latches of group b are alternately reset. The latch 911 is connected to the DA from the key assigner circuit 30.
Reset by gate signal.

【0117】本発明は上記実施例に限定されず、本発明
の趣旨を逸脱しない範囲で種々変更可能である。例え
ば、選択される(A)(B)2つの楽音の組み合わせは
音色スイッチ2によらず、テンキーにより128音色の
うち任意のものを選択してもよい。またタッチデータT
Oは、押鍵の遅速を示す押鍵速度に応じたデータとして
もよい。この場合、各キーのブレーク接点のオンからメ
ーク接点のオンまでの時間をタッチデータTOとすれば
よい。さらに、波形データ伸長補間回路50の出力端に
乗算器を設け、これに時間変化するパラメータ信号を乗
算データとして与え、(A)(B)2つの楽音の重み付
けを楽音の放音経過に従って変化させ、音長に応じて
(A)(B)両楽音の組み合わせ状態を変えてもよい。
この場合、クロック信号CK3の前半と後半とで異なる
パラメータ信号を与え、さらにこれを16チャンネル分
与えることになる。
The present invention is not limited to the above embodiments, but can be variously modified without departing from the spirit of the present invention. For example, the combination of the two (A) and (B) selected musical tones may be any of the 128 timbres using the numeric keypad without using the timbre switch 2. Touch data T
O may be data corresponding to the key pressing speed indicating the key pressing speed. In this case, the time from when the break contact of each key is turned on to when the make contact is turned on may be used as the touch data TO. Further, a multiplier is provided at the output end of the waveform data decompression interpolation circuit 50, and a time-varying parameter signal is given as multiplication data, and (A) and (B) the weighting of the two musical tones is changed according to the sound emission progress of the musical tones. Alternatively, the combination of (A) and (B) may be changed according to the tone length.
In this case, different parameter signals are provided in the first half and the second half of the clock signal CK3, and further, these signals are provided for 16 channels.

【0118】[A]複数種類の楽音波形を記憶する波形
記憶手段と、 この波形記憶手段より2以上の波形を任
意の組合せで選択する波形選択手段と、 楽音の発音の
指示を行う発音指示手段と、 この発音指示手段の1つ
の指示に応じて、上記波形選択手段で選択された各波形
を、共通の読み出しステップで時分割処理により読み出
す波形読出手段と、 この波形読出手段により読み出さ
れた各波形を累算合成する合成手段とを備えたことを特
徴とする楽音波形生成装置。
[A] Waveform storage means for storing a plurality of types of musical sound waveforms, waveform selection means for selecting two or more waveforms in any combination from the waveform storage means, and sound generation instruction means for instructing the generation of musical sounds In response to one instruction from the sounding instruction means, a waveform reading means for reading out each of the waveforms selected by the waveform selecting means in a common reading step by time-division processing; A musical sound waveform generating apparatus, comprising: synthesizing means for accumulating and synthesizing each waveform.

【0119】[B]複数種類の楽音波形を記憶する波形
記憶手段と、 この波形記憶手段より2以上の波形を任
意の組合せで選択する波形選択手段と、 楽音の発音の
指示を行う発音指示手段と、 この発音指示手段の1つ
の指示に応じて、上記波形選択手段で選択された各波形
を、共通の読み出しステップで時分割処理により読み出
す波形読出手段と、 この波形読出手段により読み出さ
れた各波形を別々にエンベロープ制御するエンベロープ
制御手段と、 このエンベロープ制御手段によりエンベ
ロープ制御された各波形を累算合成する合成手段とを備
えたことを特徴とする楽音波形生成装置。
[B] Waveform storage means for storing a plurality of types of musical sound waveforms, waveform selection means for selecting two or more waveforms in any combination from the waveform storage means, and sound generation instruction means for instructing the generation of musical tones In response to one instruction from the sounding instruction means, a waveform reading means for reading out each of the waveforms selected by the waveform selecting means in a common reading step by time-division processing; A musical sound waveform generating apparatus, comprising: envelope control means for individually envelope-controlling each waveform; and synthesizing means for accumulating and synthesizing each waveform envelope-controlled by the envelope control means.

【0120】[C]上記波形選択手段は、音色、音高、
発音操作の強弱又は遅速、音量、テンポ、リズム、エフ
ェクト、の内容に応じて、上記2以上の波形の組み合わ
せを変えるものであることを特徴とする請求項A又はB
記載の楽音波形生成装置。
[C] The waveform selecting means selects the timbre, pitch,
The combination of the two or more waveforms is changed according to the strength or slowness of the sounding operation, the volume, the tempo, the rhythm, and the effect.
A musical sound waveform generator according to the above description.

【0121】[D]上記波形選択手段は、上記波形記憶
手段に上位アドレスデータを与え、上記波形読出手段
は、上記波形記憶手段に下位アドレスデータを与えるも
のであることを特徴とする請求項A又はB記載の楽音波
形生成装置。
[D] The waveform selecting means provides upper address data to the waveform storage means, and the waveform reading means provides lower address data to the waveform storage means. Or the musical sound waveform generating apparatus according to B.

【0122】[0122]

【発明の効果】以上詳述したように、本発明によれば、
ビット数の異なる波形データを記憶し、これを読み出し
てデータ長を合わせるようにしたから、量子化ビット数
を減らしても、量子化ノイズがそれほど問題とならない
にぎやかな音については、記憶ビット数を減らしてメモ
リ使用量を少なくすることができ、そうでない音につい
ては、記憶ビット数を多くとることができる等の効果を
奏する。
As described in detail above, according to the present invention,
Since waveform data with different numbers of bits are stored and read out to match the data length, even if the number of quantization bits is reduced, the number of stored bits is reduced for lively sounds where quantization noise is not so problematic. It is possible to reduce the amount of memory used by reducing the number of sounds, and to increase the number of storage bits for sounds that are not so effective.

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

【図1】電子楽器の全体回路図である。FIG. 1 is an overall circuit diagram of an electronic musical instrument.

【図2】電子楽器の入力部分を示す図である。FIG. 2 is a diagram illustrating an input portion of the electronic musical instrument.

【図3】図1、図2及び図5の各部におけるタイムチャ
ート図である。
FIG. 3 is a time chart of each part in FIGS. 1, 2 and 5;

【図4】ROM20の記憶内容を示す図である。FIG. 4 is a diagram showing stored contents of a ROM 20.

【図5】キーアサイナ回路30の回路図である。FIG. 5 is a circuit diagram of the key assigner circuit 30.

【図6】CPU300のアドレスデータとROM20の
アドレスデータの対応関係を示す図である。
FIG. 6 is a diagram showing a correspondence relationship between address data of a CPU 300 and address data of a ROM 20.

【図7】アサイメントメモリ320の記憶内容を示す図
である。
FIG. 7 is a diagram showing storage contents of an assignment memory 320;

【図8】周波数ナンバ累算器40の回路図である。8 is a circuit diagram of a frequency number accumulator 40. FIG.

【図9】波形データの読み出し状態を示す図である。FIG. 9 is a diagram showing a read state of waveform data.

【図10】周波数ナンバ累算値FA内容を示す図であ
る。
FIG. 10 is a diagram showing the contents of a frequency number accumulated value FA.

【図11】波形データ伸長補間回路50の回路図であ
る。
11 is a circuit diagram of a waveform data decompression interpolation circuit 50. FIG.

【図12】波形データの半波長分のサンプル値と読み出
しタイミングとの対応関係を示す図である。
FIG. 12 is a diagram showing the correspondence between sample values for half a wavelength of waveform data and readout timings.

【図13】波形データのサンプル値と補間値を示す図で
ある。
FIG. 13 is a diagram showing sample values and interpolation values of waveform data.

【図14】波形データRDの内容を示す図である。FIG. 14 is a diagram showing the contents of waveform data RD.

【図15】波形データの差分データRD0〜5を伸長し
た内容を示す図である。
FIG. 15 is a diagram showing expanded contents of difference data RD0 to RD5 of waveform data.

【図16】差分マンティッサデータRDから変換差分マ
ンティッサデータRGへの変換内容を示す図である。
FIG. 16 is a diagram showing the content of conversion from differential mantissa data RD to converted differential mantissa data RG.

【図17】周波数ナンバ累算値の小数部分の上位ビット
FA9〜11と差分データの掛率データIM0〜2と波
形データのサンプル値の補間内容との関係を示す図であ
る。
FIG. 17 is a diagram showing the relationship among the upper bits FA9 to FA11 of the decimal part of the frequency number accumulated value, the multiplication data IM0 to IM2 of the difference data, and the interpolation contents of the sample values of the waveform data.

【図18】エンベロープ発生器60の回路図である。FIG. 18 is a circuit diagram of the envelope generator 60.

【図19】エンベロープスピードデータ伸長回路600
の回路図である。
FIG. 19 shows an envelope speed data decompression circuit 600.
FIG.

【図20】シフト係数制御回路610の回路図である。FIG. 20 is a circuit diagram of a shift coefficient control circuit 610.

【図21】フェーズ制御回路630の回路図である。FIG. 21 is a circuit diagram of a phase control circuit 630.

【図22】シンアウト回路620の回路図である。FIG. 22 is a circuit diagram of a thin-out circuit 620.

【図23】伸長したエンベロープスピードデータESE
の内容を示す図である。
FIG. 23: Expanded envelope speed data ESE
It is a figure which shows the content of.

【図24】アタック時におけるエンベロープ累算値EA
のエンベロープパワーデータEA12〜15と伸長エン
ベロープスピードデータESE(SS)との関係を示す
図である。
FIG. 24 shows an envelope accumulated value EA during an attack.
FIG. 7 is a diagram showing a relationship between envelope power data EA12 to 15 and expanded envelope speed data ESE (SS).

【図25】エンベロープ累算値EAの内容を示す図であ
る。
FIG. 25 is a diagram showing the contents of an envelope accumulated value EA.

【図26】エンベロープ累算値EAに応じたエンベロー
プ波形を示す図である。
FIG. 26 is a diagram showing an envelope waveform according to an envelope accumulated value EA.

【図27】エンベロープフェーズを示す図である。FIG. 27 is a diagram showing an envelope phase.

【図28】ラッチ群652に記憶されるフェーズ値PH
を示す図である。
FIG. 28 shows a phase value PH stored in a latch group 652.
FIG.

【図29】フェーズ制御回路630におけるフェーズ値
の変換内容を示す図である。
FIG. 29 is a diagram illustrating conversion contents of a phase value in a phase control circuit 630.

【図30】シンアウト回路620の各部のタイムチャー
ト図である。
FIG. 30 is a time chart of each part of the thin-out circuit 620.

【図31】従来のエンベロープの累算タイミングを示す
図である。
FIG. 31 is a diagram showing a conventional envelope accumulation timing.

【図32】シンアウト(ラッチ群650へのラッチの間
引き)によるエンベロープ累算値EAの累算タイミング
を示す図である。
FIG. 32 is a diagram illustrating the accumulation timing of the envelope accumulated value EA due to thin out (thinning out of the latches into the latch group 650).

【図33】乗算回路70の回路図である。33 is a circuit diagram of the multiplication circuit 70. FIG.

【図34】シフト回路80の回路図である。34 is a circuit diagram of the shift circuit 80. FIG.

【図35】シフト回路80によるエンベロープ波形の修
正内容を示す図である。
FIG. 35 is a diagram showing correction contents of an envelope waveform by a shift circuit 80;

【図36】系列累算回路90の回路図である。FIG. 36 is a circuit diagram of a sequence accumulation circuit 90.

【図37】系列累算回路90の各部のタイムチャート図
である。
FIG. 37 is a time chart of each part of the sequence accumulation circuit 90.

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

20…ROM、30…キーアサイナ回路、31…ROM
アドレス制御回路、32…アサイメントメモリ回路、4
0…周波数ナンバ累算器、50…波形データ伸長補間回
路、60…エンベロープ発生器、70…乗算回路、80
…シフト回路、90…系列累算回路、300…CPU、
320…アサイメントメモリ、600…エンベロープス
ピードデータ伸長回路、610…シフト係数制御回路、
620…シンアウト回路、630…フェーズ制御回路。
20 ROM, 30 key assigner circuit, 31 ROM
Address control circuit, 32 ... assignment memory circuit, 4
0: frequency number accumulator, 50: waveform data decompression interpolation circuit, 60: envelope generator, 70: multiplication circuit, 80
... Shift circuit, 90 ... Sequence accumulation circuit, 300 ... CPU,
320: assignment memory, 600: envelope speed data decompression circuit, 610: shift coefficient control circuit,
620: Thin out circuit, 630: Phase control circuit.

Claims (3)

(57)【特許請求の範囲】(57) [Claims] 【請求項1】波形の1つのポイントにおけるMビット
の波形データと同じく波形の1つのポイントにおけるN
ビット(M<N)の波形データとを記憶する波形記憶
手段であって、この波形記憶手段の1つの番地の記憶容
量はLビット長であり(M<L)、このLビット長の記
憶番地には上記Mビット長の波形データ全体が記憶さ
れ、この記憶されたMビット長の波形データの残りのビ
ットには、別のポイントにおける波形データ全体が記憶
され、 この波形データが上記Mビットであるか上記Nビット
であるかを区別する区別情報を記憶する区別記憶手段
と、 上記記憶された波形データのいずれかを選択する手段
と、 この選択された波形データに係る上記区別情報を読み出
す手段と、 この読み出された区別情報を判別する手段と、 上記選択された波形データを読み出す手段と、 上記判別結果に応じて、この読み出された波形データが
上記Mビット(M<N)の波形データであれば、この
Mビットの波形データのデータ長を上記Nビット
波形データのデータ長に合わせ、上記残りのビットの別
のポイントにおける波形データ及び当該Mビット長の波
形データまたは上記Nビット長の波形データを、それぞ
れのポイントに応じたタイミングで出力する手段とを備
えたことを特徴とする楽音波形生成装置。
An M bit- length waveform data at one point of a waveform is the same as an N bit at one point of a waveform.
Waveform storage means for storing waveform data having a bit length (M <N) , wherein a storage capacity of one address of the waveform storage means is stored.
The quantity is L bits long (M <L), and the L bit length
The entire M-bit waveform data is stored in the storage location.
And the remaining video data of the stored M-bit-length waveform data.
Stores the entire waveform data at another point
Is, the N bits or the waveform data is the M-bit long
A discriminating storage unit for storing discriminating information for discriminating whether the length is long , a unit for selecting any of the stored waveform data, a unit for reading the discriminating information relating to the selected waveform data, Means for determining the output discrimination information; means for reading the selected waveform data; and, according to the determination result, the read waveform data is the M-bit length (M <N) waveform data. if any, move the data length to the data length of the waveform data of the N-bit length of the waveform data of the M-bit long, another of the remaining bits
Data and the M-bit long wave at the point
Shape data or the above N-bit waveform data
Means for outputting at a timing corresponding to these points .
【請求項2】上記Mビットの波形データとNビット
の波形データとは、音色の違いに応じており、各波形デ
ータは波形記憶手段に記憶され、 しかもNビット
(10ビット)の波形データは、6ビットの差分デ
ータとともに記憶され、Mビット(8ビット)の波
形データは2つのサンプルポイントのデータが一緒に記
憶され、 上記区別情報は音色データの一部であり、波
形記憶手段に当初記憶され、チャンネル割り当て後はア
サインメントメモリに各チャンネルごとに記憶され、
上記Mビットの波形データと上記Nビットの波形デ
ータいずれかの選択は、音色の選択に応じており、 上
記波形データは指示された音高に応じた速度で読み出さ
れ、 上記区別情報はさらに波形データ伸長補間手段内
の選択切り換え手段へ切り換え制御情報として送られ、
この選択切り換え手段は、Mビット(8ビット
の波形データとNビット(10ビット)の波形デー
タとを切り換え選択し、 Mビット(8ビット)の
波形データは、上位へシフトされてNビット(10ビ
ット)の波形データとされ、またはMビット(8ビ
ット)の波形データは、MビットとNビットとの
差のビット(2ビット)のデータが付加され、 し
かも一緒に記憶された2つのサンプルポイントのMビッ
(8ビット)の波形データは、読み出しの進行に
応じて、各サンプルタイミングでずれて読み出されるこ
とを特徴とする請求項1記載の楽音波形生成装置。
2. The M bitLongWaveform data and N bitsLong
These waveform data correspond to the differences in timbre.
Data is stored in the waveform storage means, and N bitsLong
(10 bitsLong) Is 6 bitsLongDifference data
Data with the dataLong(8 bitsLong) Wave
Shape data is the data of two sample points.
The distinction information is part of the tone data,
Is initially stored in the shape storage means, and
It is stored for each channel in the signature memory,
M bits aboveLongWaveform data and the above N bitsLongWaveform
The selection of one of the data depends on the tone selection.
The waveform data is read at the speed corresponding to the specified pitch.
The discrimination information is further stored in the waveform data decompression interpolation means.
Is sent as switching control information to the selection switching means of
 This selection switching means is an M bitLong(8 bitsLong)
Waveform data and N bitsLong(10 bitsLong) Waveform data
And M bitsLong(8 bitsLong)of
Waveform data is shifted to the higher order and N bitsLong(10 vi
ToLong) Or M bitsLong(8 vi
ToLong) Is M bitsLongAnd N bitsLongWith
Bit of differenceLong(2 bitsLong) Data is added,
The M bit of two sample points stored together
GLong(8 bitsLong) Waveform data
May be read out at each sample timing.
2. The musical sound waveform generator according to claim 1, wherein:
【請求項3】波形の1つのポイントにおけるMビット
の波形データと同じく波形の1つのポイントにおけるN
ビット(M<N)の波形データとを記憶する波形記憶
手段であって、この波形記憶手段の1つの番地の記憶容
量はLビット長であり(M<L)、このLビット長の記
憶番地には上記Mビット長の波形データ全体が記憶さ
れ、この記憶されたMビット長の波形データの残りのビ
ットには、別のポイントにおける波形データ全体が記憶
され、 この波形データが上記Mビットであるか上記Nビット
であるかを区別する区別情報を記憶する区別記憶手段
とであって、これら波形記憶手段及び区別記憶手段に対して、 この記憶された波形データのいずれかを選択させる工程
と、 この選択された波形データに係る上記区別情報を読み出
しさせる工程と、 この読み出された区別情報を判別させる工程と、 上記選択された波形データを読み出しさせる工程と、 上記判別結果に応じて、この読み出された波形データが
上記Mビット(M<N)の波形データであれば、この
Mビットの波形データのデータ長を上記Nビット
波形データのデータ長に合わせ、上記残りのビット長の
別のポイントにおける波形データ及び当該Mビット長の
波形データまたは上記Nビット長の波形データを、それ
ぞれのポイントに応じたタイミングで出力させる工程と
を備えたことを特徴とする楽音波形生成方法。
3. An M-bit- length waveform data at one point of the waveform as well as N at one point of the waveform.
Waveform storage means for storing waveform data having a bit length (M <N) , wherein a storage capacity of one address of the waveform storage means is stored.
The quantity is L bits long (M <L), and the L bit length
The entire M-bit waveform data is stored in the storage location.
And the remaining video data of the stored M-bit-length waveform data.
Stores the entire waveform data at another point
Is, the N bits or the waveform data is the M-bit long
There in a distinguished storage means for storing a distinguishing identification information whether the length, for these waveform storage means and the distinction memory means, a step of selecting one of the stored waveform data are the selected Reading the discrimination information according to the read waveform data, determining the read discrimination information, reading the selected waveform data, and reading the selected waveform data according to the determination result. and if waveform data is waveform data of the M bit length (M <N), Align the data length of the waveform data of the N-bit length data length of the waveform data of the M-bit long, the remaining bits in length of
Waveform data at another point and the M-bit length
Waveform data or the above N-bit-length waveform data
A step of outputting at a timing corresponding to each point .
JP8311122A 1996-11-21 1996-11-21 Musical tone waveform generating apparatus and musical tone waveform generating method Expired - Fee Related JP2798913B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP8311122A JP2798913B2 (en) 1996-11-21 1996-11-21 Musical tone waveform generating apparatus and musical tone waveform generating method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP8311122A JP2798913B2 (en) 1996-11-21 1996-11-21 Musical tone waveform generating apparatus and musical tone waveform generating method

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP63334937A Division JPH02179699A (en) 1988-12-30 1988-12-30 Musical sound waveform generating device

Publications (2)

Publication Number Publication Date
JPH09166985A JPH09166985A (en) 1997-06-24
JP2798913B2 true JP2798913B2 (en) 1998-09-17

Family

ID=18013411

Family Applications (1)

Application Number Title Priority Date Filing Date
JP8311122A Expired - Fee Related JP2798913B2 (en) 1996-11-21 1996-11-21 Musical tone waveform generating apparatus and musical tone waveform generating method

Country Status (1)

Country Link
JP (1) JP2798913B2 (en)

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH079582B2 (en) * 1985-05-07 1995-02-01 松下電器産業株式会社 Electronic musical instrument

Also Published As

Publication number Publication date
JPH09166985A (en) 1997-06-24

Similar Documents

Publication Publication Date Title
US5248842A (en) Device for generating a waveform of a musical tone
JP2798913B2 (en) Musical tone waveform generating apparatus and musical tone waveform generating method
JP2997470B2 (en) Music information processing device
JP2705042B2 (en) Envelope waveform generation method
JP2565555B2 (en) Sequence accumulator for electronic musical instruments
JP3067630B2 (en) Music sound information processing apparatus and music sound information processing method
EP0201998B1 (en) Electronic musical instrument
JP3176901B2 (en) Music sound information processing apparatus and music sound information processing method
US5245126A (en) Waveform generation system with reduced memory requirement, for use in an electronic musical instrument
JPS6330638B2 (en)
JPH0769700B2 (en) Waveform generation method
JP3344988B2 (en) Music sound generation apparatus and music sound generation method
JP3062569B2 (en) Electronic musical instrument frequency modulation device
JPH02179699A (en) Musical sound waveform generating device
JPH02203394A (en) Musical sound frequency modulating device for electronic musical instrument
JPS6118559Y2 (en)
JP2001306072A (en) Device and method for musical sound generation
JP3684078B2 (en) Musical sound waveform data storage device, musical sound waveform data storage method, musical sound waveform data reproduction device, and musical sound waveform data reproduction method
JP3567766B2 (en) Pitch shift playback device using compressed waveform samples
JPS6217239B2 (en)
JPH02179692A (en) Processor for electronic musical instrument
JPH079582B2 (en) Electronic musical instrument
JPH08234785A (en) Sound source device
JP2000163071A (en) Reproducing device having long stream reproducing function
JPS6195625A (en) Music signal generator

Legal Events

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