JPH0127436B2 - - Google Patents

Info

Publication number
JPH0127436B2
JPH0127436B2 JP58143016A JP14301683A JPH0127436B2 JP H0127436 B2 JPH0127436 B2 JP H0127436B2 JP 58143016 A JP58143016 A JP 58143016A JP 14301683 A JP14301683 A JP 14301683A JP H0127436 B2 JPH0127436 B2 JP H0127436B2
Authority
JP
Japan
Prior art keywords
data
vibrato
address
signal
section
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
Application number
JP58143016A
Other languages
Japanese (ja)
Other versions
JPS6032097A (en
Inventor
Tatsuya Adachi
Kazuhiro Murase
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.)
Panasonic Holdings Corp
Original Assignee
Matsushita Electric Industrial 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 Matsushita Electric Industrial Co Ltd filed Critical Matsushita Electric Industrial Co Ltd
Priority to JP58143016A priority Critical patent/JPS6032097A/en
Publication of JPS6032097A publication Critical patent/JPS6032097A/en
Publication of JPH0127436B2 publication Critical patent/JPH0127436B2/ja
Granted legal-status Critical Current

Links

Landscapes

  • Electrophonic Musical Instruments (AREA)

Description

【発明の詳細な説明】[Detailed description of the invention]

産業上の利用分野 本発明は、電子楽器のビブラート付加装置に関
し、特に簡単な構成で、ビブラート波形を保存し
たままビブラート周波数を変化させることがで
き、また任意のビブラート波形を選択することが
できるビブラート付加装置に関する。 従来例の構成とその問題点 従来、ビブラート付加装置は、主発振器にアナ
ログ的に周波数変調を施す構成になつていたため
ビブラート周波数を変化させるためには、変調信
号の周波数を変化させることが必要となり、変調
信号発生回路の規模が大きくなり、かつ、その出
力周波数が不安定になるという欠点を有してい
た。また、ビブラートデータメモリを具えるデイ
ジタル式のビブラート付加装置において、読み出
しアドレス長を変えることによつて、ビブラート
周波数を変化させる方式も提案されている。この
方式は、構成が簡単であるという長所をもつてい
る反面、ビブラート周波数の変化にともなつて、
ビブラート波形も変化するという欠点を有してい
た。 また、1つのビブラートデータメモリの一部分
を使用する方式をとつているので、ビブラート波
形を任意に選択することができなかつた。 発明の目的 本発明の目的は、簡単な構成で、ビブラート波
形を保存したままビブラート周波数を変化させる
ことができ、また任意のビブラート波形を選択す
ることができるビブラート付加装置を提供するこ
とにある。 発明の構成 本発明のビブラート付加装置は、複数種類の周
波数変調データを記憶する複数のビブラートデー
タメモリと、上記ビブラートデータメモリのアド
レスを発生するアドレス発生部と、上記複数のビ
ブラートデータメモリの中から1つのビブラート
データメモリを選択するためのビブラートデータ
セレクト部と、上記ビブラートデータメモリの出
力データによつて周波数変調をかけることができ
るノートロツク発生装置と、上記アドレス発生部
のアドレス長を制御するアドレス長制御部を具
え、上記アドレス発生部の発生するアドレス長を
制御するとともに上記アドレス長に対応したビブ
ラートデータメモリを上記ビブラートデータセレ
クト部によつて選択することによつて、任意の周
波数の、任意の形のビブラート波形を発生するよ
うに構成したものであり、簡単な構成で、しかも
任意の周波数の任意の形のビブラート波形を発生
することができる。 実施例の説明 以下本発明の一実施例について図面を参照しな
がら説明する。第1図は、本発明のビブラート発
生装置を採用した電子楽器のブロツク図である。
101は鍵盤部KB、102は音色タブレツトス
イツチやビブラート効果のオンオフスイツチやグ
ライド効果のオンオフスイツチなどにより構成さ
れる操作部TAB,103は中央処理装置CPU
で、コンピユータなどに用いられているものと同
様のもの、104は読み書き可能な記憶装置(ラ
ンダムアクセスメモリでRAMと呼ぶ)、105
はCPU103の動作を決定するプログラムが格
納された読み出し専用記憶装置(リードオンリー
メモリでROMと呼ぶ)、106は楽音の合成を
行なうための波形サンプルデータや波形内挿を行
なうための制御データなどを記憶しているROM
である。107はROM106に記憶している波
形サンプルデータや制御データを用いて楽音を発
生する楽音発生部、108はサンプリングノイズ
を除去するフイルタ、109は電気音響変換器で
ある。 鍵盤部101、操作部102、CPU103、
RAM104、ROM105,106、楽音発生
部107はデータバス、アドレスバスおよびコン
トロール線で結合されている。このようにデータ
バスとアドレスバスとコントロール線とで結合す
る方法そのものは、ミニコンピユータやマイクロ
コンピユータを中心とした構成方法として公知の
ものである。データバスとしては8〜16本位用い
られ、このバス線上をデータが一方向でなく多方
向に時分割的に送受信される。アドレスバスも複
数本たとえば16本用意され、通常はCPU108
がアドレスコードを出力し、他の部分がアドレス
コードを受け取る。コントロール線は通常メモ
リ・リクエスト線、I/Oリクエスト線
IORQ、リード線、ライト線などが用いら
れる。 はメモリを読み書きすることを示し、
IORQは入出力装置I/Oの内容を取り出しする
ことを示し、はメモリやI/Oからデータを
読み出すタイミングを示し、はメモリやI/
Oにデータを書き込むタイミングを示す。このよ
うなコントロール線を用いたものとしては、ザイ
ログ社のマイクロプロセツサZ80があげられる。 次に第1図の電子楽器の動作について述べる。
鍵盤部101は、複数の鍵スイツチを複数の群に
分けて、群内の鍵スイツチのオン/オフ状態を一
括してデータバスに送ることができるように構成
される。たとえば61鍵の鍵盤の場合、6鍵(半オ
クターブ)ずつの10群と1鍵の1群の11群に分
け、各群にアドレスコードを1つずつ割りつけ
る。アドレスラインに上記各群のうちの1つを示
すアドレスコードが到来し、信号と信号
RDが印加されると、鍵盤部101はそのアドレ
スコードを解読して、対応する群内のキースイツ
チのオン/オフを示す6ビツトまたは1ビツトの
データをデータバスに出力する。これらは、デコ
ーダ、バスドライブおよび若干のゲート回路を用
いて構成することができる。操作部102のう
ち、タブレツトスイツチについては、鍵盤部10
1と同様の構成をとることができる。 CPU103はその内部にあるプログラムカウ
ンタのコードに対応するROM105のアドレス
から命令コードを読み取り、これを解読して算術
演算、論理演算、データの読み込みと書き込み、
プログラムカウンタの内容の変更による命令のジ
ヤンプなどの作業を行なう。これらの作業の手順
はROM105に書き込まれている。まずCPU1
03はROM105より鍵盤部101のデータを
取り込むための命令を読み取り、鍵盤部101の
各鍵のオン/オフを示すコードを各群ごとに取り
込んで行く。そして、押鍵されている鍵コード
を、楽音発生部107の有限のチヤネルに割り当
て鍵コードに対応する楽音発生データを送出す
る。 次にCPU103は操作部102よりデータを
取り込むための一群の命令を順次ROM105か
ら読み取り、これらを解読して操作部102に対
応するアドレスコードと、コントロール信号
IORQとを出力し、データバスに操作部10
2のスイツチの状態を表現するコードを出力さ
せ、CPU103内に読み込む。CPU103内に
読み込んだデータに基づいて、音色の選択や所定
の効果制御データの生成を行ない、ROM106
に音色選択データ、楽音発生部107に効果制御
データを送出する。なお、押鍵されている鍵コー
ドを楽音発生部107の有限のチヤネルに割り当
ててゆく方法そのものは、ジエネレータアサイナ
機能として公知のものである。 楽音発生部107ではCPU103から供給さ
れた楽音発生データに基づいて、楽音合成データ
ROM106から所定の波形サンプルデータや制
御データを取り込み波形内挿処理を行なつて楽音
波形を発生し、フイルタ108を介して電気音響
変換器109から楽音を発生させる。 第2図にCPU103から楽音発生部107に
データを供給する場合のタイムチヤートを示す。
アドレスバスにI/Oポートアドレスを、データ
バスに楽音発生データや効果制御データなどをそ
れぞれ供給する。そして、コントロール信号
IORQとが論理ロウレベル(以下“0”と略
す)から論理ハイレベル(以下“へ変化するタイ
ミングで、I/Oポートアドレスで指定されてい
るチヤネルにデータバスの内容をラツチする。 次に、楽音発生部107に供給される各種のデ
ータについての説明を行なう。 第1表にI/Oポートアドレスと各種データの
内容を示す。I/Oポートアドレスは16進表示と
なつている。I/Oポートアドレス(00)16から
(07)16に対応するデータは、楽音発生データで8
チヤネル分すなわち、8音分の発生が可能とつて
いる。I/Oポートアドレス(08)16はサステイ
ンデータで、エンベロープ信号の減衰特性を指定
するものである。I/Oポートアドレス(09)16
はエンベロープ特性がピアノ型の時に有効となる
ダンパデータで、サステインデータと同様エンペ
ロープ信号の減衰特性を指定するものである。
I/Oポートアドレス(OA)16はピツチコントロ
ールデータで、ノートクロツクを正規の値からず
らすためのものある。I/Oポートアドレス
(OB)16は効果制御データで、ビブラートオン/
オフ信号やグランドオン/オフ信号などで構成し
ている。 I/Oポートアドレス(OC)16は、ビブラート
セレクトデータで、複数のビブラートデータの中
から、1つのビブラートデータを指定するための
データである。 I/Oポートアドレス(OD)16は、ビブラート
INDUSTRIAL APPLICATION FIELD The present invention relates to a vibrato adding device for an electronic musical instrument, and particularly to a vibrato adding device that has a simple configuration, can change the vibrato frequency while preserving the vibrato waveform, and can select an arbitrary vibrato waveform. Regarding additional equipment. Conventional configuration and its problems Conventionally, vibrato adding devices have been configured to apply analog frequency modulation to the main oscillator, so in order to change the vibrato frequency, it is necessary to change the frequency of the modulation signal. However, the scale of the modulation signal generation circuit becomes large and the output frequency thereof becomes unstable. Furthermore, a method has been proposed in which the vibrato frequency is changed by changing the read address length in a digital vibrato adding device equipped with a vibrato data memory. This method has the advantage of simple configuration, but as the vibrato frequency changes,
This had the disadvantage that the vibrato waveform also changed. Furthermore, since a portion of one vibrato data memory is used, it is not possible to arbitrarily select a vibrato waveform. OBJECTS OF THE INVENTION An object of the present invention is to provide a vibrato adding device that has a simple configuration, can change the vibrato frequency while preserving the vibrato waveform, and can select an arbitrary vibrato waveform. Composition of the Invention The vibrato adding device of the present invention includes a plurality of vibrato data memories that store a plurality of types of frequency modulation data, an address generation unit that generates addresses of the vibrato data memories, and a vibrato data memory that selects one of the vibrato data memories from among the plurality of vibrato data memories. a vibrato data select section for selecting one vibrato data memory; a no-lock generator capable of applying frequency modulation according to the output data of the vibrato data memory; and an address length for controlling the address length of the address generation section. The control section controls the address length generated by the address generation section and selects the vibrato data memory corresponding to the address length by the vibrato data selection section, thereby controlling the address length at any frequency. It has a simple structure and can generate a vibrato waveform of any frequency and any shape. DESCRIPTION OF EMBODIMENTS An embodiment of the present invention will be described below with reference to the drawings. FIG. 1 is a block diagram of an electronic musical instrument employing the vibrato generator of the present invention.
101 is a keyboard section KB; 102 is an operation section TAB consisting of a tone tablet switch, a vibrato effect on/off switch, a glide effect on/off switch, etc.; and 103 is a central processing unit CPU.
104 is a read/write storage device (random access memory called RAM), which is similar to that used in computers, etc.;
106 is a read-only storage device (read-only memory called ROM) that stores programs that determine the operation of the CPU 103, and 106 is a storage device that stores waveform sample data for synthesizing musical tones, control data for waveform interpolation, etc. Memorized ROM
It is. Reference numeral 107 designates a musical tone generator that generates musical tones using waveform sample data and control data stored in the ROM 106, 108 a filter that removes sampling noise, and 109 an electroacoustic transducer. Keyboard section 101, operation section 102, CPU 103,
The RAM 104, ROMs 105 and 106, and musical tone generator 107 are connected by a data bus, an address bus, and a control line. The method of coupling data buses, address buses, and control lines in this manner is a well-known method for configuring minicomputers and microcomputers. Eight to 16 data buses are used, and data is transmitted and received on these bus lines not in one direction but in multiple directions in a time-division manner. Multiple address buses, for example 16, are prepared, and usually the CPU 108
outputs the address code, and other parts receive the address code. Control lines are usually memory request lines and I/O request lines.
IORQ, read wire, write wire, etc. are used. indicates reading and writing memory,
IORQ indicates retrieving the contents of the input/output device I/O, indicates the timing to read data from memory or I/O, and indicates the timing to read data from memory or I/O.
The timing to write data to O is shown. An example of a device using such a control line is the microprocessor Z80 manufactured by Zilog. Next, the operation of the electronic musical instrument shown in FIG. 1 will be described.
The keyboard section 101 is configured to divide a plurality of key switches into a plurality of groups and to be able to collectively send the on/off states of the key switches in the group to the data bus. For example, in the case of a 61-key keyboard, it is divided into 10 groups of 6 keys (half an octave) and 11 groups of 1 key, and one address code is assigned to each group. An address code indicating one of the above groups arrives on the address line, and the signal and signal
When RD is applied, the keyboard section 101 decodes the address code and outputs 6-bit or 1-bit data indicating on/off of the key switches in the corresponding group to the data bus. These can be constructed using decoders, bus drives and some gate circuits. Of the operation section 102, the tablet switch is connected to the keyboard section 10.
A configuration similar to 1 can be adopted. The CPU 103 reads the instruction code from the address of the ROM 105 that corresponds to the code of the internal program counter, decodes it, performs arithmetic operations, logical operations, reads and writes data,
Performs tasks such as jumping instructions by changing the contents of the program counter. Procedures for these operations are written in the ROM 105. First, CPU1
03 reads a command for importing data from the keyboard section 101 from the ROM 105, and imports codes indicating on/off of each key of the keyboard section 101 for each group. Then, the pressed key code is assigned to a finite channel of the musical tone generating section 107, and musical tone generation data corresponding to the key code is sent out. Next, the CPU 103 sequentially reads a group of instructions from the ROM 105 for importing data from the operation unit 102, decodes them, and generates the address code and control signal corresponding to the operation unit 102.
IORQ and the operation unit 10 to the data bus.
A code expressing the state of the switch 2 is output and read into the CPU 103. Based on the data read into the CPU 103, the ROM 106 selects a tone and generates predetermined effect control data.
timbre selection data and effect control data are sent to the musical tone generator 107. The method of allocating the pressed key code to a finite channel of the tone generating section 107 is known as a generator assigner function. The musical sound generation section 107 generates musical sound synthesis data based on the musical sound generation data supplied from the CPU 103.
Predetermined waveform sample data and control data are taken in from the ROM 106 and subjected to waveform interpolation processing to generate a musical sound waveform, and a musical sound is generated from the electroacoustic transducer 109 via the filter 108. FIG. 2 shows a time chart when data is supplied from the CPU 103 to the tone generator 107.
The I/O port address is supplied to the address bus, and musical tone generation data, effect control data, etc. are supplied to the data bus. and the control signal
At the timing when IORQ changes from a logic low level (hereinafter referred to as "0") to a logic high level (hereinafter referred to as ""), the contents of the data bus are latched to the channel specified by the I/O port address. The various data supplied to the generation unit 107 will be explained.Table 1 shows the I/O port address and the contents of the various data.The I/O port address is expressed in hexadecimal.I/O The data corresponding to port address (00) 16 to (07) 16 is musical tone generation data 8.
It is said that it is possible to generate eight tones for each channel. I/O port address (08) 16 is sustain data that specifies the attenuation characteristics of the envelope signal. I/O port address (09) 16
is damper data that is valid when the envelope characteristic is piano type, and, like sustain data, specifies the attenuation characteristic of the envelope signal.
I/O port address (OA) 16 is pitch control data, which is used to shift the note clock from its normal value. I/O port address (OB) 16 is effect control data, vibrato on/
It consists of off signals and ground on/off signals. The I/O port address (OC) 16 is vibrato select data, which is data for specifying one vibrato data out of a plurality of vibrato data. I/O port address (OD) 16 is vibrato

【表】【table】

【表】【table】

【表】 スピードデータで、ビブラート周波数を指定する
データである。 第2表に楽音発生データの構成内容を示す。ビ
ツト位置D0からD3は音階周波数を指定するノー
トクロツク指定データである。ビツト位置D4
D6は発生音域を指定する波形サンプル数指定デ
ータである。ビツト位置D7は鍵スイツチのオ
ン/オフ操作に伴なうキーオン/オフ信号で、オ
フ時は“0”オン時は“1”となる。 第3表に波形サンプル数指定データSD0〜SD2
のコード内容とそのコードで指定される波形1周
期のサンプル数を示す。波形サンプル数指定デー
タSDは(000)2から(111)2までの8種類の波形
サンプル数が指定できるようになつており、本実
施例では、512サンプルから4サンプルまでを指
定している。 第4表にノートクロツク指定データND0
ND3で表わされるコードの内容と、そのコード
で指定される指定音階の関係を示す。 第5表に効果制御データの構成内容を示す。ビ
[Table] Speed data that specifies the vibrato frequency. Table 2 shows the composition of the musical tone generation data. Bit positions D0 to D3 are note clock designation data that designates the scale frequency. Bit position D 4 ~
D6 is waveform sample number designation data that designates the sound generation range. Bit position D7 is a key on/off signal accompanying the on/off operation of the key switch, and is "0" when off and "1" when on. Table 3 shows waveform sample number specification data SD 0 to SD 2
This shows the code contents and the number of samples in one cycle of the waveform specified by the code. The waveform sample number specification data SD allows eight types of waveform sample numbers from (000) 2 to (111) 2 to be specified, and in this embodiment, 512 samples to 4 samples are specified. Table 4 shows notebook clock specification data ND 0 ~
This shows the relationship between the contents of the chord represented by ND 3 and the specified scale specified by that chord. Table 5 shows the composition of the effect control data. B

【表】 ツト位置D0はビブラートオン/オフ信号VIBで、
操作部102内のビブラートオン/オフスイツチ
がオフの時“0”、オンの時“1”となる。 ビツト位置D1はデイレイビブラートオン/オ
フ信号DVIBで、デイレイビブラート効果制御信
号であり、操作部102内のデイレイビブラート
オン/オフスイツチがオフの時“0”、オンの時
“1”となる。 ビツト位置D2はグランドオン/オフ信号GL
で、操作部102内のグランドスイツチがオフの
時“0”、オンの時“1”となる。 ビツト位置D3はオルガン型/ピアノ型指定信
号OPSで、エンベロープ特性を指定するもので
あり、オルガン型の時“0”、ピアノ型の時“1”
となる。 ビツト位置D4はダンパオン/オフ信号DMP
で、エンベロープ特性がピアノ型の時のみ有効と
なるもので、ダンパオフの時“0”、オンの時
“1”となる。 第3図は楽音発生部107の構成図である。
[Table] Position D 0 is the vibrato on/off signal VIB,
When the vibrato on/off switch in the operation unit 102 is off, it is "0" and when it is on, it is "1". Bit position D1 is a delay vibrato on/off signal DVIB, which is a delay vibrato effect control signal, and is "0" when the delay vibrato on/off switch in the operation section 102 is off, and "1" when it is on. Bit position D 2 is the ground on/off signal GL
When the ground switch in the operation unit 102 is off, it becomes "0", and when it is on, it becomes "1". Bit position D3 is the organ type/piano type designation signal OPS, which specifies the envelope characteristics, and is “0” for organ type and “1” for piano type.
becomes. Bit position D 4 is the damper on/off signal DMP
This is valid only when the envelope characteristic is piano type, and is "0" when the damper is off and "1" when it is on. FIG. 3 is a configuration diagram of the musical tone generating section 107.

【表】 第3図において、301は主発振器、302は
楽音発生部107の動作内容を制御するシーケン
サ、303はCPU103から供給される各種の
データをラツチする入力レジスタ部、304はタ
イマー、305は比較レジスタ部、306は発音
すべき周波数に対応する周波数データを発生する
周波数データプロセツサ(以下FDPと略す)、3
07は波形内挿処理を行なう波形データプロセツ
サ(以下WDPと略す)、308は楽音合成データ
ROM106から波形サンプルデータや制御デー
タなどを読み込むデータ・リード・プロセツサ
(以下DRPと略す)、309は所定のパルス幅の
パルス信号を生成する読み出しパルス形成部、3
10はWDP307,DRP308などに演算処理
要求を行なう計算要求フラグ発生部、311はデ
イジタル信号をアナログ信号に変換するデイジタ
ル/アナログ変換器(以下DACと略す)、312
は1チヤネル当りアナログスイツチ2つとコンデ
ンサ1つとで構成されており、アナログ信号を保
持するアナログバツフアメモリ部、313は積分
器である。 ここで、WDP207で実行する波形内挿方法
について説明する。 波形内挿方法としては、I分割して選択抽出し
たサンプル波位置iからi+1(i=0,1,2,
……I−1)の間を楽音波形1周期がM回くり返
して推移するものとし、波形サンプル(Xi,o
(Xi+1,o)との間に存在する仮想サンプル値^
(Xi,n,o)を補間演算を用い仮想的に仮想サンプル
点の波形サンプル値を算出して近似値を求めよう
とするものである。補間式を下式に示す。 (Xi,n,o)={(Xi+1,o)−(Xi,o)} ×Nn+o/MN+(Xi,o) ……(1) iは、I分割して抽出したサンプル位置で、波
形ナンバである。(i=0,1,2,……,I−
1) mは、波形ナンバiからi+1の間をM回繰り
返し推移している途中の位置を表わすものであ
る。(m=0,1,2,……,M−1) nは楽音波形1周期をN分割したサンプル位置
で波形サンプルナンドである。(n=0,1,2,
……,N−1) なお、WDP207,DRP208周辺の動作に
ついては、特願昭57−231482「楽音発生装置」に
詳細に述べてある。 上記構成において、304,305,306,
310は発音音階を決定するノートクロツク発生
部を構成し、その出力信号に基づいて、データ読
み出し部であるDRP308が楽音合成データ
ROM106からデータを読み出す。 また、入力レジスタ部308、比較レジスタ部
305,FDP306,WDP307,DRP30
8、計算要求フラグ発生部310はシーケンサ3
02によつて処理を行なう手順が決められてい
る。 CPU103から所定のチヤネルたとえばチャ
ネル1に楽音発生データが供給されると、シーケ
ンサ302で決められている所定のタイミングで
入力レジスタ部303からFDP306、WDP3
07、DRP308に楽音発生データが供給され
る。そうすると、DRP308において、楽音合
成データROM106から波形サンプルデータと
制御データとを読み取る。そして、(1)式に示した
(Xi,oをデータWDIとし、(Xi+1,o)をデータ
としてWDP307に供給する。さらに、読み取
つた制御データに基づいた(1)式に示した内挿係数
の分子項(Nn+o)をデータMLPとしてWDP3
07に供給する。また、最終波形データになると
最終波形データを指示するWEF信号をWDP30
7に供給する。 WDP307では、DRP308から供給された
データWD,WD,MLPをい、(1)式の波形演
算処理を行なつてDAC311に供給する。そし
てDAC311において、WDP307から供給さ
れたデイジタル信号をアナログ信号に変換し、ア
ナログバツフアメモリ部312にアナログ信号と
して供給し、チヤネル1に対応するコンデンサ電
荷が蓄えられる。 一方、FDP306では、入力レジスタ部30
3から供給された楽音発生データに基づいた周波
数データが生成され、比較レジスタ部305のチ
ヤネル1に対応するレジスタに供給される。そし
て、比較レジスタ305に供給されたデータとタ
イマー304から供給されている時間データとの
比較処理を行ない、一致が検出できると一致パル
スを読み出しパルス形成部309と計算要求フラ
グ発生部310に供給する。 そうすると、読み出しパルス形成部309で所
定のパルス幅の読み出し信号が生成され、アナロ
グバツフアメモリ部312に供給される。アナロ
グバツフアメモリ部312内のチヤネル1に対応
するコンデンサに蓄えられている電荷は読み出し
信号によつて積分器313に流れ込む。 計算要求フラグ発生部310では、次波形サン
プルすなわち、仮想サンプル点^(Xi,n,o+1)を求
めるための計算要求フラグを発生し保持する。そ
して、その後再び処理タイミングがチヤネル1と
なると、計算要求フラグが発生しているので前述
と同様に波形内挿処理が行なわれ、アナログバツ
フアメモリ部312内のコンデンサに電荷が蓄え
られる。以後、計算要求フラグに対応して波形内
挿処理が行なわれ、楽音波形を発生することにな
る。 なお、コンデンサに蓄える電荷は、^(Xi,n,o-1
と今回求めた波形サンプル値^(Xi,n,o)との差分
に相当する。そして、積分器313によつて今回
求めた波形サンプル値^(Xi,n,o)が復元されるこ
とになる。アナログバツフアメモリ部312と積
分器313周辺の動作については、特願昭57−
126413「波形読み出し装置」に述べてある。 第4図はシーケンサ302の一具体例のブロツ
ク図である。図中、401は2相クロツク信号
φ1と信号φ2とを発生する2相クロツク発生部、
402は1チヤネル当りの動作シーケンスを決め
る11進カウンタ、403は現在演算処理を行なつ
ているチヤネルコードを発生するカウンタ、40
4は動作手順が記憶されているROM、405は
デコーダである。第5図にシーケンサ302のタ
イミングチヤート図を示す。 主発振器301からマスタクロツクMCK信号
が2相クロツク発生部401に供給される。2相
クロツク発生部401では、第5図に示すように
2相クロツク信号φ1,φ2を発生する。信号φ1は
11進カウンタ402とカウンタ403に供給され
ている。 11進カウンタ402は4ビツト構成となつてお
り、信号φ1が“0”から“1”へ変化するタイ
ミングでカウントアツプ処理が行なわれ、出力信
号が(1111)2となり、次にカウントアツプを行な
うと(0101)2にセツトされる。この結果、11進カ
ウンタ402の出力信号は11の状態、すなわち
(0101)2〜(1111)2となる。これを命令ステツプ
信号として使用する。 カウンタ403は3ビツト構成となつており、
11カウンタ402の出力信号が(1111)2から
(0101)2へ変化するたびにカウントアツプ処理が
行なわれる。この結果、カウンタ403の出力信
号は8の状態、すなわち(000)2〜(111)2とな
る。これをチヤネルコードとして使用する。 ROM404は11進カウンタ402から供給さ
れる命令ステツプ信号に基づいた命令コードを読
み出し、デコーダ405に供給される。デコーダ
405はROM404から供給された命令コード
を解読して処理制御信号を各部に供給する。 この結果、1チヤネル当りの計算時間は2.75μs
となり、11の命令ステツプで各演算処理を行なう
ことになる。そして、22μsごとに計算タイミミン
グが繰り返されることになる。 第6図にアナログバツフアメモリ部312の一
具体例の構成図を示す。図中、601は入力端、
602は出力端、603〜608はアナログスイ
ツチ、C1〜C3はコンデンサである。 アナログスイツチ603,605,607のゲ
ート入力に供給されている信号AW1〜AW8
WDP307から供給されている。また、アナロ
グスイツチ604,606,608のゲート入力
に供給されている信号AR1〜AR8は読み出しパル
ス形成部309から供給されている。 DAC311で変換されたアナログ信号は入力
端601に印加されアナログスイツチ603,6
05,607に供給される。そして、チヤネル1
に対応するデータであれば、アナログスイツチ6
03のみオン状態となり、入力端601に印加さ
れたアナログ信号に相当する電荷がコンデンサ
C1に蓄えられる。 その後、チヤネル1に対応する読み出しパルス
AR1が読み出しパルス発生部309からアナログ
スイツチ604のゲート入力に供給されると、コ
ンデンサC1に蓄えられている電荷が出力端60
2を介して積分器313に供給される。 アナログスイツチ603,605,607は
WDP307の動作タイミングに同期しているの
で、同時に複数個オン状態にはならない。アナロ
グスイツチ604,606,608は音階周波数
に同期してオンするようになつているため、複数
個同時にオン状態となりうる。 第7図は楽音発生部307の内部動作タイミン
グチヤートである。第7図には4チヤネル分のタ
イミングを示した。 図中の略記号の説明 CRFは、各チヤネルごとの計算要求信号であ
る。そして、要求開始時点が比較レジスタ部30
5から供給される一致信号と同期している。すな
わち、音階周波数に同期することとなり、たとえ
ば、C音階であれば59.74μsごとに発生する。 CLCは、波形演算タイミングを示す。 DACは、DAC311を介してアナログバツフ
アメモリ312内のコンデンサに電荷を蓄えるタ
イミングを示す。 OTCは、アナログバツフアメモリ312内の
コンデンサに蓄えられている電荷を積分器313
に供給するタイミングであり、CRFと同様に、
音階周波数に同期して生している。 チヤネル1のタイムチヤートについて説明す
る。 チヤネル1に相当する演算タイミングはシーケ
ンサ302で発生しているチヤネルコードによつ
て決まつており、図にも示してあるように、22μs
ごとに演算タイミングが発生している。 ……信号CRF1がチヤネルコード1の途中で発
生する。発生したタイミングでは波形内挿処理
と周波数データの更新を行なわない。 ……信号CRF1が発生すると同時に信号OTC1
が発生し、アナログバツフアメモリ312内の
コンデンサC1の電荷が積分器313に供給さ
れる。信号OTCのパルス幅は2μs程度である。 ……チヤネルコードが再び1となると、波形サ
ンプルデータなどの読み込み処理や波形内挿処
理や周波数データの更新処理などを行なう。 ……チヤネル1の演算処理が終了すると、信号
DAC1が発生し、DAC311を介してコンデ
ンサC1に電荷が蓄えられる。 ……チヤネル1の演算処理が終了すると、信号
CRF1をリセツトして計算要求を解除する。 ……前述のと同様に、信号CRF1が再び発生
するタイミングで、前述ののタイミングでコ
ンデンサC1に蓄えられた電荷が積分器313
に供給される。 以後、上述と同様に、信号CRFが発生するた
びに、1回の仮相波形サンプル値算出処理と周波
数データの更新処理が行なわれ、信号CRFの発
生タイミング、すなわち音階周期に同期して波形
算出結果が積分器313に供給される。 演算サイクルと音階周期の関係は、最小音階周
期内に同一チヤネルの演算タイミングが2回と演
算結果をアナログバツフアメモリ部312内のコ
ンデンサに電荷を蓄えることが出来ればよい。す
なわち、ビブラート、グライドなどを考慮した最
小音階周期内に10チヤネル分に相当する演算タイ
ミングを設ければよい。 音程の発生方法についての説明 ノート関係については、12音階に相当するクロ
ツク信号を発生する。オクターブ関係について
は、楽音合成データROM106に記憶している
楽音波形1周期のサンプル数をかえることにより
オクターブ関係の音程を発生している。 C0音(32.708Hz)を512サンプルとすると、ノ
ートクロツク信号は、32.708Hz×512サンプル≒
16.74KHzとなる。第6表にノートクロツク周波
数を、第7表に波形サンプル数とオクターブ関係
について示す。 音階周期の発生方法についての説明 第8図に、FDP306から比較レジスタ部3
05に供給する周波数データの推移を示す。タイ
マー304は10ビツトの2進カウンタで構成して
おり、出力状態を16進表示で表わすと、(000)16
から(3FF)16まで順次カウントアツプを行ない、
(3FF)16から再び(000)16となり、(000)16から
(3FF)16が主発振器301から供給される信号
MCKに基づいてくり返される。すなわち、タイ
マー304のくり返し周基TRは下式のようにな
る。 TR=210×1/MCK ……(2)
[Table] In FIG. 3, 301 is a main oscillator, 302 is a sequencer that controls the operation of the musical tone generator 107, 303 is an input register unit that latches various data supplied from the CPU 103, 304 is a timer, and 305 is a A comparison register section 306 is a frequency data processor (hereinafter abbreviated as FDP) that generates frequency data corresponding to the frequency to be generated.
07 is a waveform data processor (hereinafter abbreviated as WDP) that performs waveform interpolation processing, and 308 is musical tone synthesis data.
A data read processor (hereinafter abbreviated as DRP) reads waveform sample data, control data, etc. from the ROM 106; 309 is a read pulse forming unit that generates a pulse signal with a predetermined pulse width;
10 is a calculation request flag generation unit that requests arithmetic processing to the WDP 307, DRP 308, etc.; 311 is a digital/analog converter (hereinafter abbreviated as DAC) that converts a digital signal into an analog signal; 312
consists of two analog switches and one capacitor per channel, an analog buffer memory section for holding analog signals, and 313 an integrator. Here, the waveform interpolation method executed by the WDP 207 will be explained. As a waveform interpolation method, sample wave positions i to i+1 (i=0, 1, 2,
...I-1), one cycle of the musical sound wave repeats M times, and the virtual sample value ^ that exists between the waveform samples (X i,o and (X i+1,o ))
This is an attempt to obtain an approximate value by virtually calculating a waveform sample value at a virtual sample point using (X i,n,o ) using an interpolation operation. The interpolation formula is shown below. (X i,n,o )={(X i+1,o )−(X i,o )} ×N n+o /MN+(X i,o ) ……(1) i is divided into I. This is the waveform number at the sample position extracted. (i=0,1,2,...,I-
1) m represents a position in the middle of a transition between waveform numbers i and i+1 repeatedly M times. (m=0, 1, 2, . . . , M-1) n is a sample position obtained by dividing one cycle of the musical sound waveform into N, and is a waveform sample NAND. (n=0,1,2,
..., N-1) The operations around the WDP 207 and DRP 208 are described in detail in Japanese Patent Application No. 57-231482 "Music Sound Generator". In the above configuration, 304, 305, 306,
Reference numeral 310 constitutes a note clock generation section that determines the tone scale, and based on its output signal, the data reading section DRP 308 generates musical tone synthesis data.
Read data from ROM106. Also, input register section 308, comparison register section 305, FDP 306, WDP 307, DRP 30
8. The calculation request flag generation unit 310 is the sequencer 3
02 determines the procedure for processing. When musical tone generation data is supplied from the CPU 103 to a predetermined channel, for example, channel 1, at a predetermined timing determined by the sequencer 302, the data is sent from the input register section 303 to the FDP 306 and WDP 3.
07, musical tone generation data is supplied to the DRP 308. Then, the DRP 308 reads the waveform sample data and control data from the musical tone synthesis data ROM 106. Then, (X i,o shown in equation (1) is data WDI, and (X i+1,o ) is supplied as data to the WDP 307.Furthermore, based on the read control data, as shown in equation (1), WDP3 uses the numerator term (N n+o ) of the interpolation coefficient as data MLP.
Supply on 07. Also, when the final waveform data is reached, the WEF signal that instructs the final waveform data is sent to WDP30.
Supply to 7. The WDP 307 uses the data WD, WD, and MLP supplied from the DRP 308, performs waveform calculation processing according to equation (1), and supplies the processed data to the DAC 311. The DAC 311 converts the digital signal supplied from the WDP 307 into an analog signal and supplies it to the analog buffer memory section 312 as an analog signal, where the capacitor charge corresponding to channel 1 is stored. On the other hand, in the FDP306, the input register section 30
Frequency data is generated based on the musical tone generation data supplied from 3, and is supplied to the register corresponding to channel 1 of the comparison register section 305. Then, the data supplied to the comparison register 305 and the time data supplied from the timer 304 are compared, and if a match is detected, a matching pulse is read out and supplied to the pulse forming section 309 and the calculation request flag generating section 310. . Then, the read pulse forming section 309 generates a read signal with a predetermined pulse width and supplies it to the analog buffer memory section 312. The charge stored in the capacitor corresponding to channel 1 in the analog buffer memory section 312 flows into the integrator 313 in response to the read signal. The calculation request flag generating section 310 generates and holds a calculation request flag for determining the next waveform sample, that is, the virtual sample point ^(X i,n,o+1 ). Thereafter, when the processing timing becomes channel 1 again, since the calculation request flag has been generated, waveform interpolation processing is performed in the same manner as described above, and charges are stored in the capacitor in the analog buffer memory section 312. Thereafter, waveform interpolation processing is performed in response to the calculation request flag, and a musical tone waveform is generated. The charge stored in the capacitor is ^(X i,n,o-1 )
This corresponds to the difference between the waveform sample value ^(X i,n,o ) and the waveform sample value ^(X i,n,o ) obtained this time. Then, the waveform sample value ^(X i,n,o ) obtained this time is restored by the integrator 313. Regarding the operation around the analog buffer memory section 312 and the integrator 313, please refer to the patent application filed in 1987-
126413 “Waveform reading device”. FIG. 4 is a block diagram of a specific example of the sequencer 302. In the figure, 401 is a two-phase clock generation unit that generates two-phase clock signal φ1 and signal φ2;
402 is a hexadecimal counter that determines the operation sequence per channel; 403 is a counter that generates the channel code currently being processed; 40
4 is a ROM in which operating procedures are stored, and 405 is a decoder. FIG. 5 shows a timing chart of the sequencer 302. A master clock MCK signal is supplied from the main oscillator 301 to the two-phase clock generating section 401. A two-phase clock generating section 401 generates two-phase clock signals φ1 and φ2 as shown in FIG. The signal φ1 is
It is supplied to a hexadecimal counter 402 and a counter 403. The hexadecimal counter 402 has a 4-bit configuration, and the count-up process is performed at the timing when the signal φ1 changes from "0" to "1", the output signal becomes (1111) 2 , and then the count-up is performed. and (0101) are set to 2 . As a result, the output signal of the hexadecimal counter 402 becomes 11 states, that is, (0101) 2 to (1111) 2 . This is used as a command step signal. The counter 403 has a 3-bit configuration,
Each time the output signal of the 11 counter 402 changes from (1111) 2 to (0101) 2 , count-up processing is performed. As a result, the output signal of the counter 403 becomes 8 states, that is, (000) 2 to (111) 2 . Use this as the channel code. ROM 404 reads out an instruction code based on the instruction step signal supplied from hexadecimal counter 402 and supplies it to decoder 405 . The decoder 405 decodes the instruction code supplied from the ROM 404 and supplies processing control signals to each section. As a result, the calculation time per channel is 2.75μs.
Therefore, each calculation process is performed in 11 instruction steps. Then, the calculation timing is repeated every 22 μs. FIG. 6 shows a configuration diagram of a specific example of the analog buffer memory section 312. In the figure, 601 is an input terminal;
602 is an output end, 603 to 608 are analog switches, and C 1 to C 3 are capacitors. The signals AW 1 to AW 8 supplied to the gate inputs of analog switches 603, 605, and 607 are
It is supplied by WDP307. Furthermore, the signals AR 1 to AR 8 supplied to the gate inputs of the analog switches 604 , 606 , and 608 are supplied from the read pulse forming section 309 . The analog signal converted by the DAC 311 is applied to the input terminal 601 and is applied to the analog switches 603 and 6.
05,607. And channel 1
If the data corresponds to
Only 03 is turned on, and the charge corresponding to the analog signal applied to the input terminal 601 is transferred to the capacitor.
Stored in C 1 . Then the read pulse corresponding to channel 1
When AR 1 is supplied from the read pulse generator 309 to the gate input of the analog switch 604, the charge stored in the capacitor C 1 is transferred to the output terminal 60.
2 to an integrator 313. Analog switches 603, 605, 607
Since it is synchronized with the operation timing of the WDP 307, multiple units are not turned on at the same time. Since the analog switches 604, 606, and 608 are turned on in synchronization with the musical scale frequency, a plurality of them can be turned on at the same time. FIG. 7 is an internal operation timing chart of the musical tone generating section 307. FIG. 7 shows the timing for four channels. Explanation of abbreviations in the figure CRF is a calculation request signal for each channel. Then, the request start point is at the comparison register section 30.
It is synchronized with the coincidence signal supplied from 5. That is, it is synchronized with the scale frequency, and for example, in the C scale, it occurs every 59.74 μs. CLC indicates waveform calculation timing. DAC indicates the timing at which charges are stored in the capacitor in the analog buffer memory 312 via the DAC 311. OTC converts the charge stored in the capacitor in the analog buffer memory 312 into an integrator 313.
It is the timing to supply to the
It is produced in synchronization with the musical scale frequency. The time chart for channel 1 will be explained. The calculation timing corresponding to channel 1 is determined by the channel code generated by the sequencer 302, and as shown in the figure, it is 22μs.
Calculation timing occurs every time. ... Signal CRF1 is generated in the middle of channel code 1. Waveform interpolation processing and frequency data updating are not performed at the generated timing. ...Signal OTC1 is generated at the same time as signal CRF1 is generated.
is generated, and the charge of capacitor C 1 in analog buffer memory 312 is supplied to integrator 313 . The pulse width of the signal OTC is about 2 μs. ...When the channel code becomes 1 again, reading processing of waveform sample data, waveform interpolation processing, frequency data updating processing, etc. are performed. ...When the calculation process of channel 1 is completed, the signal
DAC1 is generated and charge is stored in capacitor C1 via DAC311. ...When the calculation process of channel 1 is completed, the signal
Reset CRF1 and cancel the calculation request. ...Similarly to the above, when the signal CRF1 is generated again, the charge stored in the capacitor C1 at the above timing is transferred to the integrator 313.
is supplied to Thereafter, as described above, each time the signal CRF is generated, one temporary phase waveform sample value calculation process and frequency data update process are performed, and the waveform calculation is performed in synchronization with the generation timing of the signal CRF, that is, the scale period. The result is provided to integrator 313. Regarding the relationship between the calculation cycle and the scale period, it is sufficient that the calculation timing of the same channel can be performed twice within the minimum scale period and that the calculation result can be stored in a capacitor in the analog buffer memory section 312. That is, it is sufficient to provide calculation timing corresponding to 10 channels within the minimum scale period in consideration of vibrato, glide, etc. Explanation on how to generate intervals Regarding notes, a clock signal corresponding to a 12-tone scale is generated. Regarding octave relationships, octave related pitches are generated by changing the number of samples in one cycle of the musical sound waveform stored in the musical tone synthesis data ROM 106. If C0 note (32.708Hz) is 512 samples, the note clock signal is 32.708Hz x 512 samples ≒
It becomes 16.74KHz. Table 6 shows the note clock frequency, and Table 7 shows the number of waveform samples and octave relationship. Explanation of how the scale period is generated.
05 shows the transition of frequency data supplied to 05. The timer 304 is composed of a 10-bit binary counter, and the output status is expressed in hexadecimal notation as (000) 16.
Count up sequentially from (3FF) to 16 ,
(3FF) 16 becomes (000) 16 again, and from (000) 16 to (3FF) 16 is the signal supplied from the main oscillator 301.
Repeated based on MCK. That is, the repetition frequency T R of the timer 304 is as shown in the following formula. T R =2 10 ×1/MCK...(2)

【表】【table】

【表】 タイマー304の出力データ推移状態を第8図
中のタイマー出力データとして記載してある。 音階周期の発生方法としては、タイマー304
の出力信号とFDP306から供給された周波数
データとの比較を行ない、一致が検出できれば一
致パルスを比較レジスタ部305から送出する。
その一致パルスの発生周期が発音すべき音階の音
階周期となる。 第8図に示すたように、周波数データを更新す
ることによりノートクロツク信号が発生できる。
すなわち、下式に示すような演算処理をFDP3
06で行なう。 NFD=MOD(OFD+PD,TDnax) ……(3) NFDは、新しい周波数データである。 OFDは、更新前の周波数データである。 PDは、発生音階によつて決まつている音階デ
ータである。 TDnaxは、タイマー304の出力状態数であ
る。本実施例の場合TDnaxは216すなわち1024で
ある。 第8表に12音階に対応する音階データPDを示
す。 第9図は、FDP306の一具体例の構成図で
ある。第9図において、901はセント尺度で表
わした音階データ(CPDとする)を発生るセン
ト音階データ発生部(以下CPD発生部と略す)
で、セント音階データを記憶しているROMで構
成しており、ノートクロツク指定データNDと波
形サンプル数指定データSDとオルガン型/ピア
ノ型指定信号OPSに基づいたCPDを選択発生す
るようになつている。902はピツチコントロー
ルデータを選択するピツチコントロールデータゲ
ート、903はビブラート信号を発生するビブラ
ート信号発生部、904はグライド信号を発生す
るグライド信号発生部905はセント尺度で表わ
された周波数値を周波数に正比例する周波数デー
タに変換する指数変換器、
[Table] The transition state of the output data of the timer 304 is shown as timer output data in FIG. As a method of generating the scale period, the timer 304
The output signal of the FDP 306 is compared with the frequency data supplied from the FDP 306, and if a match is detected, a match pulse is sent out from the comparison register section 305.
The generation cycle of the matching pulse becomes the scale cycle of the scale to be sounded. As shown in FIG. 8, a note clock signal can be generated by updating the frequency data.
In other words, the calculation process shown in the formula below is performed using FDP3.
Do it on 06. NFD=MOD(OFD+PD, TDnax )...(3) NFD is new frequency data. OFD is frequency data before update. PD is scale data determined by the generated scale. TD nax is the number of output states of the timer 304. In this embodiment, TD nax is 216 , or 1024. Table 8 shows scale data PD corresponding to the 12-tone scale. FIG. 9 is a configuration diagram of a specific example of the FDP 306. In FIG. 9, 901 is a cent scale data generation unit (hereinafter abbreviated as CPD generation unit) that generates scale data (CPD) expressed in cent scale.
It consists of a ROM that stores cent scale data, and is designed to selectively generate CPD based on note clock specification data ND, waveform sample number specification data SD, and organ type/piano type specification signal OPS. . 902 is a pitch control data gate that selects pitch control data; 903 is a vibrato signal generating section that generates a vibrato signal; 904 is a glide signal generating section 905 that generates a glide signal; an exponential converter that converts directly proportional frequency data;

【表】 906は演算部、907はラツチ(ALとす
る)、908はラツチ(BLとする)、909は加
算器(FAとする)、910はバツフア、911は
ゲートである。912,913,914はバスラ
インで、912がFAバス、913がFBス、91
4がFCバスである。 なお、ピツチコントロールデータCPCD、ビブ
ラートデータCVD、グライドデータCGDもセン
ト尺度で表わしている。 各種データの構造 セントピツチデータCPD 11ビツト構成で、上位4ビツトで12音階平均律
を表わし、下位7ビツトで半音階を128等分した
各点を表わしている。 ピツチコントロールデータCPCD、ビブラート
データCVD、グライドデータCGD 各ビツト構成は8ビツトで、2の補数表現を用
い、半音階を128等分した分解能を有する。そし
て、正負のピツチコントロール成分、ビブラート
成分、グライド成分を表わしている。 ビブラート信号発生部903の説明 第10図にビブラート信号発生部903の一具
体例の構成図を示す。図中1001はビブラート
データCVDを複数個記憶しておくビブラート
ROM、1002はビブラートROM1001に
記憶してあるビブラートデータを読み出すための
アドレスデータを格納するビブラートアドレスレ
ジスタ、1003はデイレイビブラート効果の時
に用いるシフタ、1004は信号RDCVDにより
シフト1003の出力信号(ビブラートデータ
CVD)をFBバスに供給するゲート、1005は
入力レジスタ部303から供給されている信号
KD、信号VIB、信号DVIBとシーケンサ302
から供給されている信号CHCに基づいてビブラ
ート信号発生部903の動作条件を設定する条件
設定部、1006はレジスタ1002に格納する
データをセレクトするセレクタ、1007はゲー
ト、1008はANDゲート、1009は、ビブ
ラートデータCVDのキヤリを検出するキヤリ検
出部である。 ビブラート信号発生の原理 第11図はビブラートROM1001の内容を
示したデータマツプ図である。1つのビブラート
データメモリは、1ワード8ビツトで2048ワード
の構成になつており、ビブラート波形を表わすデ
ータが格納されている。このようなビブラートデ
ータメモリ16個によつてビブラートROM100
1は構成されており、入力レジスタ部303から
供給されるビブラートセレクトデータVBDの下
位4ビツトの信号によつて、1つのビブラートデ
ータメモリが選択される。 通常FCバスからは14ビツト構成のビブラート
アドレスデータが、セレクタ1006を介してレ
ジスタ1002に供給される。なお、14ビツト構
成のビブラートアドレスデータの下位11ビツトは
アドレスデータとして、ビブラートROM100
1に供給され、上位3ビツトはシフトデータとし
て、シフタ1003に供給される。 ビブラートROM1001は、レジスタ100
2から供給されるアドレスにしたがつてビブラー
トデータをゲート1004を介してFBバスに供
給する。 一方14ビツト構成のビブラートアドレスデータ
はゲート1007を介してFBバスへ直接供給さ
れ、演算部906で1加算されて、再びFCバス
に供給される。この繰返しによつてビブラートア
ドレスデータは1づつ歩進していく。 したがつてFCバスから供給されたビブラート
アドレスデータは、ビブラートROM1001に
読み出しアドレスとして加えられるとともにビブ
ラートアドレス自体の歩進処理を実行する目的
で、FCバスからFBバスへ転送される。 セレクタ1006は、ビブラートROM100
1とシフタ1003に加えられるビブラートアド
レスデータの初期値を設定する役割をもつてい
る。つまりセレクタ1006は通常FCバスから
供給されるビブラートアドレスデータを選択して
おり、ビブラートアドレスデータは、上述のアド
レス歩進処理によつて1づつ歩進している。ビブ
ラートアドレスデータの下位11ビツトにあたるア
ドレスデータがオーバーフローするとキヤリ検出
部1009にフラグが立ち、セレクタ1006に
初期値選択信号を送出し、セレクタ1006は、
入力レジスタ部303から供給される初期値
VBS(ビブラートスピードデータ)を選択する。
その後セレクタ1006は、FCバスから供給さ
れるビブラートアドレスデータを選択し、通常の
歩進処理を行う。 したがつて、ビブラートアドレスデータの下位
11ビツトであるアドレスデータは、初期値VBS
から最終値(2048)10の間を歩進していくことに
なる。 以下にビブラート周波数の設定法について説明
する。 なおアドレスの初期値VBSからアドレスの最
終値(2048)10までのアドレスの数をアドレス長
と呼ぶことにする。 ここでビブラートアドレスデータの初期値を
VBS(ビブラートスピードデータ)と呼んでいる
のは、上記初期値がビブラートの周波数を決定す
るからである。つまりビブラートアドレスデータ
の1回の歩進処理に要する時間は一定であるので
アドレス長の値によつて、ビブラートの一周期に
要する時間が決定される。言い換えれば、アドレ
ス長の値によつてビブラートの周波数が決定され
る。 第12図は、ビブラートROM1001の中に
格納されている1周期分のビブラートデータの一
例である。なお横軸は、アドレスを表わし縦軸は
ビブラートデータの大きさを表わす。 この場合、ビブラートスピードデータVBSを
(000)16=(0)10から(2AO)16=(672)10の間で

化させることによつてアドレス長は2048〜1376ま
で変化するので48.8%のビブラート周波数の変化
が得られる。 ただし、ビブラート周波数の変化に従つて、ビ
ブラート波形も変化する。またビブラートスピー
ドデータVBSつまりアドレスの初期値が
(2AO)16=672を越えるとアドレスの初期値に対
応するデータと最終値に対応するデータが一致せ
ず、ビブラート波形に不連続が生じるのでビブラ
ートスピードデータVBSの最大値は、ビブラー
ト波形の不連続が、聴感上問題にならない範囲に
とどめておく必要がある。 以下にビブラートスピードデータVBSに対応
したビブラートデータを選択する方式について説
明する。 第13図は、ビブラートROM1001に格納
されているビブラートデータの1例で、前述の第
11図に示されるビブラートマツプ図のビブラー
トメモリ1の部分に第13図aのデータが、ビブ
ラートメモリ2の部分に第13図bのデータが格
納されているとする。なお横軸は、アドレス値を
10進数で表示した値であり、縦軸は、ビブラート
データの大きさを表わす。第13図においてaの
データはビブラートスピードデータVBS=
(000)16でアドレス長=2048に対応するビブラー
トデータで、bのデータは、VBS=(100)16
(256)10でアドレス長=1792に対応するビブラー
トデータである。このときCPU103はVBS=
(000)16のときビブラートセレクトビブラート
VBD=(00)16、VBS=(100)16のときVBD=
(01)16となるような制御を行う。そうするとVBS
=(000)16のときもVBS=(100)16のときも正弦波
のビブラートを付加できる。 この方式を用いると、ビブラート周波数にかか
わらず、一定のビブラート波形が得られ、またビ
ブラート波形の不連続も生じない。 以下にビブラートスピードデータVBSと、ビ
ブラート周波数の関係を具体的に示す。 ビブラートデータの読み出しをチヤネルコード
1の演算タイミングで、さらに4回に1回の頻度
で行うとすると読み出し周期は88μsになる。 VBS=(000)16のときアドレス長は2048である
から 0=1/(22μs×4×2048)=5.55Hz VBS=(100)16=(256)10のときアドレス長は
1792であるから 1=1/(22μs×4×1372)=6.34Hz となる。 なお本実施例では、ビブラートアドレスの初期
値を変化させることによつて、ビブラート周波数
を変化させるようにしているが、アドレスの最終
値あるいは、初期値、最終値の両方を制御して
も、同様の効果が得られる。 一方、シフタ1003はシフトデータに基づい
てビブラートROM1003から供給されている
ビブラートデータCVDの振幅を制御するもので
ある。シフトデータVSFDとシフタ1003の出
力データOSFDとの関係は次のとおりである。 VSFD=(000)2……OSFD=(00)16,VSFD=
(001)2……OSFD=(CVD/64),VSFD=(010)2
……OSFD=(CVD/32),……,VSFD=(110)2
……OSFD=(CVD/2),VSFD=(111)2……
OSFD=(CVD) 条件設定部1005は次のような動作条件設定
を行なう。 ビブラートオフ ビブラートオン/オフ信号VIBが“0”の場合
であり、セレクタ1006の出力を強制的に常時
(00)16とする。そうすると、シフタ1003のシ
フトデータは常時(000)2となる。この結果、シ
フタ1003の出力データは(00)16となる。す
なわち、ビブラートデータCVDが常時(00)16
なる。 ビブラートオン ビブラートオン/オフ信号VIBが“1”で信号
DVIBが“0”の場合、ビブラートオン状態とな
る。レジスタ1002に格納しているアドレスデ
ータをゲート1006を介してゲート1007と
シフタ1003に供給する。なお、アドレスデー
タの上位3ビツト、すなわちシフトデータを強制
的に(111)2とする。そうすると、ゲート100
4の入力にはビブラートROM1001の出力
(ビブラートデータCVD)がそのまま供給される
ことになる。 デイレイビブラート ビブラートオン/オフ信号VIBとデイレイビブ
ラートオン/オフ信号DVIBが“1”の場合、デ
イレイビブラート状態となる。8チヤネルのキー
オン/オフ信号KDがすべてオフ状態からいずれ
か1つのキーオン/オフ信号KDがオン状態とな
ると、アドレスデータを(000)16に設定するよう
に、ゲート1006を制御する。そうすると、シ
フタ1003において、ビブラート信号1周期ご
とに、ビブラートデータCVDの振幅制御(0,
CVD/64,CVD/32,CVD/16,CVD/8、
CVD/4,CVD/2,CVD)が行なわれる。そ
して、シフトデータが(111)2となるとビブラー
トオン状態と同様にシフトビブラートを強制的に
(111)2とする。 第9表に記載してある記号の説明は次の通りで
ある。 ALは、FAバスに供給されたデータを信号φ2
の立上りエツヂでラツチするもの。 BLは、FBバスに供給されたビブラートを信号
φ2の立上りエツヂでラツチするもの。 CRALは、ラツチALを信号φ2の“1”でクリ
ヤする命令。 ADD1は、FA909のキヤリー入力に“1”
を加える命令。 TCAは、FA909で演算処理した結果をFA
バスに供給する命令。 RDCPDは、CPD発生部901で発生するセン
トピツチデータCPDをFAバスに供給する命令。 RDCPCDは、ピツチコントロールゲート90
2のゲートを開いてFBバスにピツチコントロー
ルデータCPCDを供給する命令。 RDCVDは、ビブラート信号発生部903で発
生するビブラートデータCVDをFBバスに供給す
る命令。 RDCGDは、グライド信号発生部904で発生
するグライドデータCGDをFBバスに供給する命
令。 RDEXPは、指数変換器905内で変換した
EXP(CPD)をFAバスに供給する命令。 RDΔEXPは、指数変換器905内で変換した
△EXP(CPD)をFBバスに供給する命令。 RDFDは、比較レジスタ部305から旧周波数
データOFDを読み出してFBバスに供給する命
令。 RDVADは、ビブラート信号発生部903内に
あるビブラートアドレスレジスタ1002の内容
をFBバスに供給する命令。 RDGADは、グライド信号発生部904からグ
ライドアドレスデータをFBバスに供給する命令。 WRVADは、FA909で演算した結果をビブ
ラート信号発生部903内のビブラートアドレス
レジスタ1002に信号φ2の立上りエツヂで書
き込む命令。 WRGADは、FA909で演算した結果をグラ
イド信号発生部904に信号φ2の立上りエツヂ
で書き込む命令。 WREXPは、FA909で演算した結果を指数
変換部905に信号φ2の立上りエツヂで書き込
む命令。 WRFDは、FA909で演算した結果を比較レ
ジスタ部305に信号φ2の立上りエツヂで書き
込む命令。 なお、第4図に示したシーケンサ302内の11
進カウンタ402で発生している11の状態は、第
9表に示した命令ステツプ1〜11に対応してい
る。 ビブラートアドレスの歩進処理 命令ステツプ1でビブラートアドレスレジスタ
1002に格納しているアドレスデータをラツチ
BL908に書き込む。 そして、命令ステツプ2において、ビブラート
アドレスデータVADに+1加算処理を行ない加
算結果を再びビブラートアドレスレジスタ102
[Table] 906 is an arithmetic unit, 907 is a latch (AL), 908 is a latch (BL), 909 is an adder (FA), 910 is a buffer, and 911 is a gate. 912, 913, 914 are bus lines, 912 is FA bus, 913 is FB bus, 91
4 is the FC bus. Note that pitch control data CPCD, vibrato data CVD, and glide data CGD are also expressed in cent scale. Structure of various data Cent pitch data CPD consists of 11 bits, the upper 4 bits represent 12-tone equal temperament, and the lower 7 bits represent each point of the chromatic scale divided into 128 equal parts. Pitch control data CPCD, vibrato data CVD, and glide data CGD are each composed of 8 bits, using two's complement representation, and have a resolution that divides the chromatic scale into 128 equal parts. It also represents positive and negative pitch control components, vibrato components, and glide components. Description of Vibrato Signal Generating Section 903 FIG. 10 shows a configuration diagram of a specific example of the vibrato signal generating section 903. 1001 in the figure is a vibrato that stores multiple vibrato data CVD.
ROM, 1002 is a vibrato address register that stores address data for reading the vibrato data stored in the vibrato ROM 1001, 1003 is a shifter used for the delay vibrato effect, and 1004 is an output signal of shift 1003 (vibrato data) by the signal RDCVD.
CVD) to the FB bus, 1005 is a signal supplied from the input register section 303
KD, signal VIB, signal DVIB and sequencer 302
1006 is a selector that selects data to be stored in register 1002; 1007 is a gate; 1008 is an AND gate; 1009 is This is a shift detection section that detects shifts in vibrato data CVD. Principle of vibrato signal generation FIG. 11 is a data map diagram showing the contents of the vibrato ROM 1001. One vibrato data memory has a structure of 2048 words with 8 bits per word, and stores data representing a vibrato waveform. Vibrato ROM100 with 16 such vibrato data memories
1 is configured, and one vibrato data memory is selected by the lower 4 bits of the vibrato select data VBD supplied from the input register section 303. Normally, 14-bit vibrato address data is supplied from the FC bus to register 1002 via selector 1006. The lower 11 bits of the 14-bit vibrato address data are used as address data in the vibrato ROM 100.
1, and the upper three bits are supplied to shifter 1003 as shift data. Vibrato ROM 1001 is register 100
Vibrato data is supplied to the FB bus via gate 1004 in accordance with the address supplied from 2. On the other hand, the 14-bit vibrato address data is directly supplied to the FB bus via the gate 1007, is incremented by 1 in the arithmetic unit 906, and is supplied to the FC bus again. Through this repetition, the vibrato address data is incremented by one. Therefore, the vibrato address data supplied from the FC bus is added to the vibrato ROM 1001 as a read address, and is transferred from the FC bus to the FB bus for the purpose of incrementing the vibrato address itself. The selector 1006 is a vibrato ROM 100
1 and the initial value of the vibrato address data added to the shifter 1003. In other words, the selector 1006 normally selects the vibrato address data supplied from the FC bus, and the vibrato address data is incremented one by one by the address increment processing described above. When the address data corresponding to the lower 11 bits of the vibrato address data overflows, a flag is set in the miss detection section 1009, and an initial value selection signal is sent to the selector 1006, and the selector 1006
Initial value supplied from input register section 303
Select VBS (vibrato speed data).
Thereafter, the selector 1006 selects the vibrato address data supplied from the FC bus and performs normal step processing. Therefore, the lower vibrato address data
The 11-bit address data is the initial value VBS.
It will progress between 10 and the final value (2048). The method of setting the vibrato frequency will be explained below. Note that the number of addresses from the initial address value VBS to the final address value (2048) 10 is called the address length. Here, set the initial value of the vibrato address data.
It is called VBS (vibrato speed data) because the above initial value determines the vibrato frequency. In other words, since the time required for one step of vibrato address data is constant, the time required for one cycle of vibrato is determined by the value of the address length. In other words, the vibrato frequency is determined by the address length value. FIG. 12 is an example of one cycle of vibrato data stored in the vibrato ROM 1001. Note that the horizontal axis represents addresses, and the vertical axis represents the size of vibrato data. In this case, by changing the vibrato speed data VBS between (000) 16 = (0) 10 and (2AO) 16 = (672) 10 , the address length changes from 2048 to 1376, resulting in a vibrato of 48.8%. A change in frequency is obtained. However, as the vibrato frequency changes, the vibrato waveform also changes. Also, if the vibrato speed data VBS, that is, the initial value of the address exceeds (2AO) 16 = 672, the data corresponding to the initial value of the address and the data corresponding to the final value will not match, causing discontinuity in the vibrato waveform, so the vibrato speed The maximum value of the data VBS must be kept within a range where discontinuities in the vibrato waveform do not cause any audible problems. A method for selecting vibrato data compatible with vibrato speed data VBS will be described below. FIG. 13 shows an example of vibrato data stored in the vibrato ROM 1001. The data in FIG. 13a is stored in the vibrato memory 1 portion of the vibrato map shown in FIG. It is assumed that the data shown in FIG. 13b is stored in . The horizontal axis shows the address value.
The value is expressed in decimal notation, and the vertical axis represents the size of the vibrato data. In Figure 13, data a is vibrato speed data VBS =
(000) 16 is the vibrato data corresponding to address length = 2048, and the data of b is VBS = (100) 16 =
(256) 10 is vibrato data corresponding to address length = 1792. At this time, the CPU 103 has VBS=
(000) When 16 , vibrato select vibrato
When VBD=(00) 16 , VBS=(100) 16, VBD=
(01) Control is performed so that the number becomes 16 . Then VBS
= (000) VBS = (100) Sine wave vibrato can be added even when set to 16 . Using this method, a constant vibrato waveform can be obtained regardless of the vibrato frequency, and no discontinuity of the vibrato waveform occurs. The relationship between vibrato speed data VBS and vibrato frequency is specifically shown below. If the vibrato data is read out at the calculation timing of channel code 1 and once every four times, the readout cycle will be 88 μs. When VBS = (000) 16 , the address length is 2048, so 0 = 1/(22μs x 4 x 2048) = 5.55Hz VBS = (100) 16 = (256) When 10 , the address length is
Since it is 1792, 1 = 1/(22μs x 4 x 1372) = 6.34Hz. In this embodiment, the vibrato frequency is changed by changing the initial value of the vibrato address, but the same effect can be achieved even if the final value of the address or both the initial value and final value are controlled. The effect of this can be obtained. On the other hand, the shifter 1003 controls the amplitude of vibrato data CVD supplied from the vibrato ROM 1003 based on shift data. The relationship between shift data VSFD and output data OSFD of shifter 1003 is as follows. VSFD=(000) 2 ...OSFD=(00) 16 ,VSFD=
(001) 2 ...OSFD=(CVD/64), VSFD=(010) 2
...OSFD=(CVD/32),...,VSFD=(110) 2
...OSFD=(CVD/2), VSFD=(111) 2 ...
OSFD=(CVD) The condition setting unit 1005 sets the following operating conditions. Vibrato off This is a case where the vibrato on/off signal VIB is "0", and the output of the selector 1006 is forced to always be (00) 16 . Then, the shift data of shifter 1003 will always be (000) 2 . As a result, the output data of shifter 1003 becomes (00) 16 . That is, the vibrato data CVD is always (00) 16 . Vibrato on Vibrato on/off signal VIB is “1”
When DVIB is "0", the vibrato is on. Address data stored in register 1002 is supplied to gate 1007 and shifter 1003 via gate 1006. Note that the upper three bits of the address data, that is, the shift data, are forcibly set to (111) 2 . Then gate 100
The output of the vibrato ROM 1001 (vibrato data CVD) is supplied as is to the input No. 4. Delay vibrato When the vibrato on/off signal VIB and the delay vibrato on/off signal DVIB are "1", a delay vibrato state is entered. When all of the eight channel key-on/off signals KD are turned off and any one of the key-on/off signals KD is turned on, the gate 1006 is controlled to set the address data to (000) 16 . Then, in the shifter 1003, the amplitude control (0,
CVD/64, CVD/32, CVD/16, CVD/8,
CVD/4, CVD/2, CVD) are performed. Then, when the shift data becomes (111) 2 , the shift vibrato is forcibly set to (111) 2 , similar to the vibrato on state. The explanations of the symbols listed in Table 9 are as follows. AL sends the data supplied to the FA bus to the signal φ2
Something that latches at the edge of the rising edge. BL latches the vibrato supplied to the FB bus at the rising edge of signal φ2. CRAL is a command to clear latch AL with signal φ2 being “1”. ADD1 is “1” for the carry input of FA909
An instruction to add. TCA uses the results of calculation processing with FA909 as FA
Instructions to feed the bus. RDCPD is a command to supply the center pitch data CPD generated by the CPD generation unit 901 to the FA bus. RDCPCD is pitch control gate 90
A command to open gate 2 and supply pitch control data CPCD to the FB bus. RDCVD is a command to supply vibrato data CVD generated by the vibrato signal generation section 903 to the FB bus. RDCGD is a command for supplying glide data CGD generated by the glide signal generator 904 to the FB bus. RDEXP was converted in the index converter 905
Instruction to supply EXP (CPD) to the FA bus. RDΔEXP is a command to supply ΔEXP (CPD) converted in the index converter 905 to the FB bus. RDFD is a command to read the old frequency data OFD from the comparison register section 305 and supply it to the FB bus. RDVAD is an instruction for supplying the contents of the vibrato address register 1002 in the vibrato signal generating section 903 to the FB bus. RDGAD is a command for supplying glide address data from the glide signal generation unit 904 to the FB bus. WRVAD is an instruction to write the result calculated by the FA 909 to the vibrato address register 1002 in the vibrato signal generating section 903 at the rising edge of the signal φ2. WRGAD is an instruction to write the result calculated by the FA 909 to the glide signal generating section 904 at the rising edge of the signal φ2. WREXP is an instruction to write the result calculated by the FA 909 to the exponent converter 905 at the rising edge of the signal φ2. WRFD is an instruction to write the result calculated by the FA909 into the comparison register section 305 at the rising edge of the signal φ2. Note that 11 in the sequencer 302 shown in FIG.
The state 11 occurring in advance counter 402 corresponds to instruction steps 1-11 shown in Table 9. Vibrato address increment processing Latch the address data stored in the vibrato address register 1002 in instruction step 1.
Write to BL908. Then, in instruction step 2, +1 is added to the vibrato address data VAD, and the addition result is sent back to the vibrato address register 100.

【表】【table】

【表】 に格納する。 発明の効果 以上説明したように、本発明のビブラート付加
装置は、ビブラートデータメモリの読み出しアド
レス長を変えるとともに上記アドレス長に対応し
たビブラートデータメモリを選択することによつ
て、ビブラート周波数を変化させるようにしてい
るので、簡単な構成で、任意の周波数の任意の形
のビブラート波形を選択することができる。
Store in [Table]. Effects of the Invention As explained above, the vibrato adding device of the present invention changes the vibrato frequency by changing the read address length of the vibrato data memory and selecting the vibrato data memory corresponding to the address length. Therefore, a vibrato waveform of any frequency and any shape can be selected with a simple configuration.

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

第1図は本発明のビブラート付加装置を採用し
た電子楽器のブロツク図、第2図はCPU103
から楽音発生部107にデータを供給する場合の
タイムチヤート図、第3図は楽音発生部107の
構成図、第4図はシーケンサ302の一具体例の
ブロツク図、第5図はシーケンサ302の動作タ
イムチヤート図、第6図はアナログバツフアメモ
リ部312の一具体例の構成図、第7図は楽音発
生部107の内部動作タイムチヤート図、第8図
はFDP306から比較レジスタ部305に供給
する周波数データの推移図、第9図はFDP30
6の一具体例の構成図、第10図はビブラート信
号発生部903の一具体例を示す構成図、第11
図はビブラートROMのデータマツプ図、第12
図はビブラートデータの一例を示す図、第13図
はビブラートスピードに対応したビブラートデー
タの一例を示す図である。 101……鍵盤部、602……操作部、103
……中央処理装置、104……RAM、105…
…ROM、106……楽音合成データROM、1
07……楽音発生部、301……主発振器、30
2……シーケンサ、303……入力レジスタ部、
304……タイマー、305……比較レジスタ
部、306……周波数データプロセツサ、307
……波形データプロセツサ、308……データリ
ードプロセツサ、309……読み出しパルス形成
部、310……計算要求フラグ発生部、311…
…DAC、312……アナログバツフアメモリ部、
313……積分器、901……CPD発生部、9
02……ピツチコントロールデータゲート、90
3……ビブラート信号発生部、904……グライ
ド信号発生部、905……指数変換器、906…
…演算部、1001……ビブラートROM、10
06……セレクタ。
Figure 1 is a block diagram of an electronic musical instrument that employs the vibrato adding device of the present invention, and Figure 2 is a block diagram of the CPU 103.
3 is a block diagram of the musical tone generating section 107, FIG. 4 is a block diagram of a specific example of the sequencer 302, and FIG. 5 is the operation of the sequencer 302. Time chart diagram; FIG. 6 is a configuration diagram of a specific example of the analog buffer memory unit 312; FIG. 7 is an internal operation time chart diagram of the musical tone generating unit 107; and FIG. 8 is a diagram showing the supply from the FDP 306 to the comparison register unit 305 Frequency data transition diagram, Figure 9 is FDP30
FIG. 10 is a block diagram showing a specific example of the vibrato signal generating section 903; FIG.
The figure is a data map diagram of the vibrato ROM, No. 12.
The figure shows an example of vibrato data, and FIG. 13 shows an example of vibrato data corresponding to vibrato speed. 101...Keyboard section, 602...Operation section, 103
... Central processing unit, 104 ... RAM, 105 ...
...ROM, 106...Musical tone synthesis data ROM, 1
07...Musical tone generator, 301...Main oscillator, 30
2... Sequencer, 303... Input register section,
304...Timer, 305...Comparison register section, 306...Frequency data processor, 307
... Waveform data processor, 308 ... Data read processor, 309 ... Read pulse forming section, 310 ... Calculation request flag generation section, 311 ...
...DAC, 312...Analog buffer memory section,
313... Integrator, 901... CPD generation section, 9
02... Pitch control data gate, 90
3...Vibrato signal generation section, 904...Glide signal generation section, 905...Exponent converter, 906...
...Arithmetic unit, 1001...Vibrato ROM, 10
06...Selector.

Claims (1)

【特許請求の範囲】[Claims] 1 複数種類の周波数変調データを記憶する複数
のビブラートデータメモリと、上記ビブラートデ
ータメモリのアドレスを発生するアドレス発生部
と、上記複数のビブラートデータメモリの中から
1つのビブラートデータメモリを選択するための
ビブラートデータセレクト部と、上記ビブラート
データメモリの出力データによつて楽音信号に周
波数変調をかけるノートクロツク発生装置と、上
記アドレス発生部のアドレス長を制御するアドレ
ス長制御部を具え、上記アドレス発生部の発生す
るアドレス長を制御するとともに上記アドレス長
に対応したビブラートデータメモリを上記ビブラ
ートデータセレクト部によつて選択することによ
つて、任意の周波数の、任意の形のビブラート波
形を発生するようにしたことを特徴とするビブラ
ート付加装置。
1. A plurality of vibrato data memories that store a plurality of types of frequency modulation data, an address generation section that generates addresses for the vibrato data memories, and a device for selecting one vibrato data memory from the plurality of vibrato data memories. a vibrato data select section, a note clock generator for frequency modulating a musical tone signal using the output data of the vibrato data memory, and an address length control section for controlling the address length of the address generation section; By controlling the generated address length and selecting a vibrato data memory corresponding to the address length using the vibrato data select section, a vibrato waveform of an arbitrary frequency and an arbitrary shape can be generated. A vibrato adding device characterized by:
JP58143016A 1983-08-03 1983-08-03 Vibrato adding apparatus Granted JPS6032097A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP58143016A JPS6032097A (en) 1983-08-03 1983-08-03 Vibrato adding apparatus

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP58143016A JPS6032097A (en) 1983-08-03 1983-08-03 Vibrato adding apparatus

Publications (2)

Publication Number Publication Date
JPS6032097A JPS6032097A (en) 1985-02-19
JPH0127436B2 true JPH0127436B2 (en) 1989-05-29

Family

ID=15328973

Family Applications (1)

Application Number Title Priority Date Filing Date
JP58143016A Granted JPS6032097A (en) 1983-08-03 1983-08-03 Vibrato adding apparatus

Country Status (1)

Country Link
JP (1) JPS6032097A (en)

Also Published As

Publication number Publication date
JPS6032097A (en) 1985-02-19

Similar Documents

Publication Publication Date Title
US4184400A (en) Electronic musical instrument utilizing data processing system
US4201105A (en) Real time digital sound synthesizer
JPS6223319B2 (en)
JPS634197B2 (en)
US4177706A (en) Digital real time music synthesizer
JPH0127436B2 (en)
JPH0231396B2 (en)
JPH0127434B2 (en)
JPH0310959B2 (en)
JPH0127435B2 (en)
JPS6343760B2 (en)
JPS6343759B2 (en)
JPH0153800B2 (en)
JPH0685120B2 (en) Note clock generator
JPS6352399B2 (en)
JPS58199393A (en) Frequency controller
JP2510090Y2 (en) Music signal generator
JPS59123887A (en) Music note generator
JPS6032096A (en) Note clock generator
JPS59136796A (en) Musical sound generator
JPH0421199B2 (en)
JPS59136792A (en) Musical sound generator
JPS59136793A (en) Musical sound generator
JPS60233695A (en) Electronic musical instrument
JPS5865494A (en) Multi-waveform generator