JPS6322312B2 - - Google Patents

Info

Publication number
JPS6322312B2
JPS6322312B2 JP56208816A JP20881681A JPS6322312B2 JP S6322312 B2 JPS6322312 B2 JP S6322312B2 JP 56208816 A JP56208816 A JP 56208816A JP 20881681 A JP20881681 A JP 20881681A JP S6322312 B2 JPS6322312 B2 JP S6322312B2
Authority
JP
Japan
Prior art keywords
frequency
code
data
output
frequency information
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
JP56208816A
Other languages
Japanese (ja)
Other versions
JPS58108587A (en
Inventor
Masanori Ishibashi
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Casio Computer Co Ltd
Original Assignee
Casio Computer Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Casio Computer Co Ltd filed Critical Casio Computer Co Ltd
Priority to JP56208816A priority Critical patent/JPS58108587A/en
Priority to GB08235445A priority patent/GB2113447B/en
Priority to US06/450,082 priority patent/US4479411A/en
Priority to DE19823249738 priority patent/DE3249738C2/de
Priority to DE3247599A priority patent/DE3247599C2/en
Publication of JPS58108587A publication Critical patent/JPS58108587A/en
Priority to GB08501057A priority patent/GB2161310B/en
Publication of JPS6322312B2 publication Critical patent/JPS6322312B2/ja
Granted legal-status Critical Current

Links

Description

【発明の詳細な説明】 この発明は、電子楽器の周波数制御装置に関す
る。
DETAILED DESCRIPTION OF THE INVENTION The present invention relates to a frequency control device for an electronic musical instrument.

電子楽器の1つにミユージツクシンセサイザが
あるが、この種の電子楽器は、ほとんどアナログ
回路によるものであり、デイジタル的手法により
実現したものはほとんど無い。
One type of electronic musical instrument is the music synthesizer, but most of this type of electronic musical instrument is based on analog circuits, and there are almost no such electronic musical instruments that have been realized using digital methods.

しかし、電子オルガン等においてデイジタル的
に楽音波形を得る方法としては、従来より種々研
究がなされ、一部実用化されているものと思われ
る。しかして、このような楽音波形を得る方法の
ひとつとして、一定値を累積加算するアドレスカ
ウンタを設け、該アドレスカウンタの出力によつ
てROMをアドレス指定するものがある。そして
このようにしてROMから読出された波形データ
に対し周波数変調を行い、ビブラート等の効果を
付与するときには、この方式では上記波形データ
(即ち、周波数データ)と、基準レベルに対し上
下対称なビブラート波形との乗算を行うようにし
ている。このため周波数変調の深さがプラス側と
マイナス側とで異つて均等とならず、不自然なビ
ブラートが掛かつてしまう欠点がある。例えば、
この方式で基準の周波数440Hzに対しビブラート
を上述した上下対称のビブラート波形で掛けよう
とする。しかして、440Hzに対しプラス側に200セ
ント変化した場合の周波数は493.9Hz(=440+
53.9)Hzとなり、従つて上下対象のビブラート波
形を上記440Hzに掛けた場合、マイナス側は(440
−53.9=)386.1Hzとなる。その為この変動は226
セントとなつてしまう。
However, various researches have been conducted on methods for digitally obtaining musical sound waveforms in electronic organs and the like, and some of them appear to have been put to practical use. One method of obtaining such a musical sound waveform is to provide an address counter that cumulatively adds a constant value, and to specify the address of the ROM using the output of the address counter. When performing frequency modulation on the waveform data read out from the ROM in this way to impart effects such as vibrato, this method uses the waveform data (i.e., frequency data) and vibrato that are vertically symmetrical with respect to the reference level. I try to perform multiplication with the waveform. For this reason, the depth of frequency modulation differs between the plus side and the minus side and is not equal, resulting in an unnatural vibrato. for example,
This method attempts to apply vibrato to the standard frequency of 440Hz using the above-mentioned vertically symmetrical vibrato waveform. Therefore, when the frequency changes by 200 cents to the positive side from 440Hz, the frequency is 493.9Hz (=440 +
53.9) Hz, so if you multiply the vertically symmetrical vibrato waveform by the above 440Hz, the negative side will be (440Hz).
−53.9=)386.1Hz. Therefore, this variation is 226
It becomes a cent.

またこの方式によつて周波数データに対しプラ
ス側に元の2倍の周波数データ、即ち、1オクタ
ーブ高い変調を掛けた場合、マイナス側は打ち消
されて周波数が0になつてしまう。詰り、この方
式では±1オクターブ以上の変調がかけられない
欠点がある。
Furthermore, when frequency data is modulated on the positive side by twice the original frequency data, that is, modulated one octave higher, on the positive side using this method, the negative side is canceled out and the frequency becomes 0. However, this method has the disadvantage that modulation of ±1 octave or more cannot be applied.

更にこの方式では、全音階に亘つて同じ深さの
ビブラートを掛けようとするとそのために与える
データ(ビブラート波形)が音階によつて異な
り、周波数制御が極めて複雑になる欠点もある。
Furthermore, this method has the disadvantage that when attempting to apply vibrato of the same depth across the diatonic scale, the data (vibrato waveform) provided for this purpose differs depending on the scale, making frequency control extremely complicated.

上述の欠点を解消するために、セント単位のデ
ータを演算して、所望の周波数情報を得て、この
周波数情報に基づいて楽音を得るものがある(特
開昭56−74298号公報参照)。しかしながら、この
先行技術ではノートコードNC及びオクターブコ
ードOCに基づいて、周波数情報log2Fを得るため
の周波数情報メモリ、セント単位表現された変更
周波数情報log2F′から自然数で表現された変更周
波数情報F′を得るためのROM等が必要となり回
路規模が大きくなつてしまうという欠点が生じ
る。
In order to solve the above-mentioned drawbacks, there is a method that calculates data in units of cents to obtain desired frequency information, and obtains musical tones based on this frequency information (see Japanese Patent Laid-Open No. 74298/1983). However, in this prior art, based on the note code NC and the octave code OC, a frequency information memory is used to obtain frequency information log 2 F, and from the changed frequency information log 2 F′ expressed in cents, the changed frequency expressed as a natural number is obtained. A disadvantage arises in that a ROM or the like is required to obtain the information F', resulting in an increase in circuit scale.

この発明は上述した事情のもとになされたもの
で、その目的とするところは、ノートコード、オ
クターブコードを、対数を用いてセント表現され
る値に変換するためのメモリ、更に対数を用いて
セント表現された値を自然数表現された値に変換
するためのメモリ等を必要とせずに周波数変調が
容易に行えるようにした電子楽器の周波数制御装
置を提供することである。
This invention was made under the above-mentioned circumstances, and its purpose is to provide a memory for converting note chords and octave chords into values expressed in cents using logarithms; To provide a frequency control device for an electronic musical instrument that can easily perform frequency modulation without requiring a memory or the like for converting a value expressed in cents into a value expressed in natural numbers.

以下、図面を参照してこの発明のミユージツク
シンセサイザに適用した一実施例を説明する。第
1図は上記実施例によるミユージツクシンセサイ
ザのシステム構成図を示す。図において、キーボ
ード1には複数のキーが備えられ、各キーからは
キー操作信号が出力する。スイツチ部2には、矩
形波、PWM波(非対称方形波)、鋸歯状波等の
各種音源波形(基本波)を選択するスイツチ、後
述する平均律周波数演算部4、デイジタルフイル
タ6、エンベロープジエネレータ7等を夫々制御
するスイツチ等、各種スイツチが設けられてい
る。そしてキーボード1およびスイツチ部2から
の各出力は共にCPU(中央処理装置)3に供給さ
れる。
An embodiment of the present invention applied to a music synthesizer will be described below with reference to the drawings. FIG. 1 shows a system configuration diagram of a music synthesizer according to the above embodiment. In the figure, a keyboard 1 is equipped with a plurality of keys, and each key outputs a key operation signal. The switch section 2 includes a switch for selecting various sound source waveforms (fundamental waves) such as a rectangular wave, a PWM wave (asymmetric square wave), and a sawtooth wave, an equal-tempered frequency calculation section 4, a digital filter 6, and an envelope generator (described later). Various switches are provided, such as switches for controlling 7, etc., respectively. The respective outputs from the keyboard 1 and the switch section 2 are both supplied to a CPU (central processing unit) 3.

CPU3はこのミユージツクシンセサイザのす
べての動作を制御する装置であり、マイクロプロ
セツサ等から成るがその詳細については省略す
る。
The CPU 3 is a device that controls all operations of this music synthesizer, and is composed of a microprocessor, etc., but its details will be omitted.

平均律周波数演算部4はCPU3から与えられ
る音階周波数コードβ′、周波数変調コードα′から
周波数変調の如何にかかわらず、常に平均律にし
たがつた周波数データβ、αを演算により算出す
る回路である。
The equal temperament frequency calculation unit 4 is a circuit that always calculates frequency data β and α according to the equal temperament from the scale frequency code β′ and frequency modulation code α′ given from the CPU 3, regardless of frequency modulation. be.

ウエイブジエネレータ5は、上記データβ、α
と、CPU3から供給されるデータγ、Kにもと
づき上記音源波形をデイジタル演算により作成す
る回路であり、作成された波形データはデイジタ
ルフイルタ6に供給される。デイジタルフイルタ
6はCPU3からの制御信号にもとづき上記波形
データ中の倍音成分の一部を除去し、その出力を
エンベロープジエネレータ7に供給する。またエ
ンベロープジエネレータ7はCPU3からの制御
信号にもとづき上記デイジタルフイルタ6の出力
に対しエンベロープを付与して楽音信号とし、デ
イジタル/アナログ変換器8へ供給する。デイジ
タル/アナログ変換器8は入力したデイジタル量
の楽音信号をアナログ量の楽音信号に変換する回
路であり、このアナログ量の楽音信号はデイジタ
ル/アナログ変換器8の出力側に接続されるアン
プ9、スピーカ10を介し楽音として放音され
る。なお、このデイジタルフイルタ6には特願昭
55−53179号「デイジタルフイルタ装置」、エンベ
ロープジエネレータ7には特願昭56−74244号
「電子楽器のエンベロープ制御方式」が適用し得
る。
The wave generator 5 uses the above data β, α
This is a circuit that creates the above-mentioned sound source waveform by digital calculation based on the data γ and K supplied from the CPU 3, and the created waveform data is supplied to the digital filter 6. The digital filter 6 removes a part of the harmonic components in the waveform data based on the control signal from the CPU 3, and supplies the output to the envelope generator 7. Further, the envelope generator 7 applies an envelope to the output of the digital filter 6 based on a control signal from the CPU 3 to generate a musical tone signal, and supplies the signal to the digital/analog converter 8. The digital/analog converter 8 is a circuit that converts the inputted digital musical tone signal into an analog musical tone signal, and this analog musical tone signal is sent to an amplifier 9 connected to the output side of the digital/analog converter 8. A musical tone is emitted through the speaker 10. In addition, this digital filter 6 has a special patent application.
No. 55-53179 ``Digital Filter Device'' and Japanese Patent Application No. 56-74244 ``Envelope Control System for Electronic Musical Instruments'' may be applied to the envelope generator 7.

次に第2図を参照してウエイブジエネレータ5
の具体的構成を説明する。フルアダー15のA入
力端A15〜A0にはシフトレジスタ17が出力し循
環される16ビツトデータが印加される。またB入
力端B15〜B0には平均律周波数演算部4からの16
ビツトのデータα(α15〜α0)が印加される。そし
て端子Cinにはハイレベルの信号“H”が常に印
加されている。したがつてフルアダー15はA入
力端の入力データからB入力端への入力データα
を減算し、その結果データをS出力端S15〜S0
ら出力し、フルアダー15の出力側に接続される
フルアダー16のA入力端A15〜A0へ印加する。
このフルアダー16のB入力端B15〜B0には、ゲ
ート回路G1から出力する音階周波数コードβ(矩
形波または鋸歯状波の作成の場合)またはゲート
回路G2から出力するデータβ±(β−K)γ
(PWM波作成の場合)が夫々、アンドゲート1
15〜180を介しプリセツトされる。なお、ア
ンドゲート1815〜180の各制御入力端には共
に、フルアダー15の端子Coutから出力するキ
ヤリー出力がインバータ19を介し印加される。
Next, referring to FIG. 2, the wave generator 5
The specific configuration will be explained. The A input terminals A 15 to A 0 of the full adder 15 are applied with 16-bit data outputted from the shift register 17 and circulated. In addition, the B input terminals B 15 to B 0 are connected to the 16 from the equal tempered frequency calculation section 4.
Bit data α (α 15 to α 0 ) is applied. A high level signal "H" is always applied to the terminal Cin. Therefore, the full adder 15 inputs the input data α from the A input terminal to the B input terminal.
is subtracted, and the resulting data is output from the S output terminals S 15 to S 0 and applied to the A input terminals A 15 to A 0 of the full adder 16 connected to the output side of the full adder 15.
The B input terminals B 15 to B 0 of the full adder 16 are supplied with the scale frequency code β (in the case of creating a rectangular wave or sawtooth wave) output from the gate circuit G 1 or the data β ± ( β-K)γ
(in the case of PWM wave creation) are respectively and gate 1
It is preset via 815 to 180 . Note that the carry output output from the terminal Cout of the full adder 15 is applied to each control input terminal of the AND gates 18 15 to 18 0 via the inverter 19.

フルアダー16の結果データはS出力端S15
S0から出力し、フルアダー16の出力側に接続さ
れる上記シフトレジスタ17に印加される。茲
で、いまこのミユージツクシンセイザが例えば8
音のポリフオニツクシンセサイザであるとすれ
ば、シフトレジスタ17は容量16ビツトのシフト
レジスタを8段カスケード接続されて成る。そし
て第2図の回路はCPU3の制御下に時分割処理
動作を実行する。
The result data of full adder 16 is S output terminal S 15 ~
It is output from S0 and applied to the shift register 17 connected to the output side of the full adder 16. For example, this music synthesizer is 8
Assuming that it is a polyphonic synthesizer, the shift register 17 is composed of eight stages of cascaded shift registers each having a capacity of 16 bits. The circuit shown in FIG. 2 executes time-sharing processing operations under the control of the CPU 3.

シフトレジスタ17の出力データのうち下位9
ビツトのデータは排他的オアゲート208〜200
に印加される。また上記出力データの10〜15ビツ
トの各データはインバータ21−1〜21−6を
夫々介しアンドゲート22−1〜22−6の各制
御入力端に印加される。更に上記出力データのう
ち最上位ビツトのデータはインバータ21−7を
介しアンドゲート22−6の他方入力端に印加さ
れる。アンドゲート22−1〜22−6は図示の
如く直列接続されており、したがつてアンドゲー
ト22−6の出力はアンドゲート22−5の他方
入力端に印加され、以下、同様にアンドゲート2
2−5〜22−2の各出力は後段の各アンドゲー
ト22−4〜22−1の各他方入力端に印加され
る。そしてアンドゲート22−1の出力は排他的
オアゲート208〜200に印加される。
The lower 9 of the output data of the shift register 17
Bit data is exclusive or gate 20 8 ~ 20 0
is applied to Further, each of the 10 to 15 bits of the output data is applied to each control input terminal of AND gates 22-1 to 22-6 via inverters 21-1 to 21-6, respectively. Further, the most significant bit of the output data is applied to the other input terminal of AND gate 22-6 via inverter 21-7. AND gates 22-1 to 22-6 are connected in series as shown, and therefore the output of AND gate 22-6 is applied to the other input terminal of AND gate 22-5.
The respective outputs of 2-5 to 22-2 are applied to the other input terminals of the subsequent AND gates 22-4 to 22-1. The output of AND gate 22-1 is then applied to exclusive OR gates 20 8 to 20 0 .

排他的オアゲート208〜200の出力はROM
(リードオンリメモリ)23のA入力端A8〜A0
アドレスデータとして印加される。ROM23は
第3図に示す1/4波形の正弦波のデータを記憶し
ている。この波形データはウエイブジエネレータ
5が生成する矩形波等の振幅レベルが急変する個
所を補間するために使用されるもので、ROM2
3の出力端O6〜O0から読出される7ビツトの波
形データはオアゲート246〜240に印加され
る。
The output of exclusive OR gates 20 8 to 20 0 is ROM
(Read-only memory) 23 is applied to A input terminals A 8 to A 0 as address data. The ROM 23 stores 1/4 waveform sine wave data shown in FIG. This waveform data is used to interpolate points where the amplitude level of the rectangular wave etc. generated by the wave generator 5 suddenly changes.
The 7-bit waveform data read from output terminals O 6 -O 0 of 3 is applied to OR gates 24 6 -24 0 .

オアゲート246〜240にはまたアンドゲート
22−2の出力がインバータ25およびトランス
フアーゲート26を介し印加されている。そして
オアゲート246〜240の出力は排他的オアゲー
ト276〜270の各一端に印加される。排他的オ
アゲート276〜270の各他端には、アンドゲー
ト22−1の出力がインバータ28およびトラン
スフアゲート29を介し印加されている。そして
排他的オアゲート276〜270の出力は、極性反
転回路を構成するフルアダー30のA入力端A6
〜A0へ印加される。またフルアダー30のA入
力端A7には上記アンドゲート22−1の出力が
インバータ28、トランスフアーゲート29、イ
ンバータ31を介し印加される。更にフルアダー
30の入力端Cinには同様にアンドゲート22−
1の出力がインバータ28、トランスフアゲート
29を介し印加されるほか、後述する極性反転回
路32の出力がトランスフアーゲート33を介し
印加される。そしてフルアダー30の出力端S7
S0から出力するデータはトランスフアーゲート3
7〜340を介しデイジタルフイルタ6へ送出さ
れる。
The output of the AND gate 22-2 is also applied to the OR gates 24 6 to 24 0 via an inverter 25 and a transfer gate 26. The outputs of the OR gates 24 6 -24 0 are applied to one end of each of the exclusive OR gates 27 6 -27 0 . The output of the AND gate 22-1 is applied to the other ends of the exclusive OR gates 27 6 to 27 0 via an inverter 28 and a transfer gate 29. The outputs of the exclusive OR gates 27 6 to 27 0 are sent to the A input terminal A 6 of the full adder 30 configuring the polarity inversion circuit.
~A applied to 0 . Further, the output of the AND gate 22-1 is applied to the A input terminal A7 of the full adder 30 via the inverter 28, transfer gate 29, and inverter 31. Furthermore, an AND gate 22- is connected to the input terminal Cin of the full adder 30.
1 is applied via an inverter 28 and a transfer gate 29, and the output of a polarity inversion circuit 32, which will be described later, is applied via a transfer gate 33. And the output end S 7 of the full adder 30 ~
The data output from S 0 is transferred to transfer gate 3.
47 to 340 to the digital filter 6.

なお、上記トランスフアーゲート26は矩形波
およびPWM波を夫々指定するスイツチの操作時
にCPU3から出力する制御信号をゲートに印加
され開閉制御される。またトランスフアーゲート
29,35は鋸歯状波を指定するスイツチの操作
時にCPU3から出力する制御信号を夫々ゲート
に直接印加され、またトランスフアゲート33は
インバータ36を介し印加され、開閉制御され
る。更にトランスフアーゲート347〜340は上
記アンドゲート22−2の出力をインバータ2
5、トランスフアゲート35、インバータ37を
介しゲートに夫々印加され、開閉制御される。
The transfer gate 26 is controlled to open or close by applying a control signal output from the CPU 3 to the gate when a switch is operated to designate a rectangular wave or a PWM wave, respectively. Further, the control signals output from the CPU 3 are directly applied to the transfer gates 29 and 35 when the switch for specifying the sawtooth wave is operated, and the control signals are applied to the transfer gate 33 via the inverter 36 to control opening and closing. Further, transfer gates 34 7 to 34 0 connect the output of the AND gate 22-2 to the inverter 2.
5. The voltage is applied to the gates via the transfer gate 35 and the inverter 37 to control opening and closing.

減算回路41には音階周波数コードβおよびデ
ータK(一定値)が夫々印加される。そしてその
結果データβ−Kは乗算回路42および除算回路
44に夫々印加される。乗算回路42にはまたデ
ータγ(このデータγは0≦γ≦1の値をとり、
デユーテイ比を決定するデータである)が印加さ
れ、その結果データ(β−K)γは加減算回路4
3に印加される。この加減算回路43の他端には
音階周波数コードβが印加され、また制御入力端
±には上記極性反転回路32の出力が印加され
る。そして加減算回路43の結果データβ±(β
−K)γはゲート回路G2に印加される。なお、
ゲート回路G1は矩形波および鋸歯状波を夫々指
定するスイツチの操作時にCPU3から出力する
制御信号により開閉制御され、またゲート回路
G2はPWM波を指定するスイツチの操作時にCPU
3から出力する制御信号により開閉制御される。
A scale frequency code β and data K (constant value) are applied to the subtraction circuit 41, respectively. The resulting data β-K is then applied to a multiplication circuit 42 and a division circuit 44, respectively. The multiplication circuit 42 also receives data γ (this data γ takes a value of 0≦γ≦1,
) is applied to determine the duty ratio, and the resulting data (β-K)γ is added to the adder/subtractor circuit 4.
3 is applied. The scale frequency code β is applied to the other end of the addition/subtraction circuit 43, and the output of the polarity inversion circuit 32 is applied to the control input terminal ±. Then, the result data β±(β
-K) γ is applied to the gate circuit G2 . In addition,
The gate circuit G1 is controlled to open and close by a control signal output from the CPU 3 when a switch is operated to specify a rectangular wave and a sawtooth wave.
G 2 is the CPU when operating the switch that specifies the PWM wave.
The opening/closing is controlled by the control signal output from 3.

減算回路45にはシフトレジスタ17の出力デ
ータMおよびデータKが入力する。そしてその結
果データM−Kは除算回路44に印加される。そ
して除算回路44の結果データ(M−K)/(β
−K)はトランスフアーゲート467〜460を介
しデイジタルフイルタ6へ鋸歯状波のデータとし
て送出される。トランスフアーゲート467〜4
0の各ゲートにはアンドゲート22−2の出力
がインバータ25、トランスフアーゲート35、
インバータ37,47を介し印加され、開閉制御
される。
Output data M and data K of the shift register 17 are input to the subtraction circuit 45 . The resulting data M-K is then applied to the division circuit 44. Then, the result data of the division circuit 44 (M-K)/(β
-K) is sent to the digital filter 6 as sawtooth wave data via transfer gates 46 7 to 46 0 . Transfer Gate 46 7 ~4
60 , the output of the AND gate 22-2 is connected to the inverter 25, transfer gate 35,
The voltage is applied via the inverters 37 and 47, and the opening and closing are controlled.

極性反転回路32はシフトレジスタ48と、こ
のシフトレジスタ48の出力側に接続される排他
的オアゲート49とにより構成されている。そし
て排他的オアゲート49の他の入力端にはフルア
ダー15の出力端C′からの出力がインバータ50
を介し印加される。また排他的オアゲート49の
出力はシフトレジスタ48の入力側に帰還され
る。シフトレジスタ48は、上述した8音のポリ
フオニツクシンセサイザの場合、容量1ビツトの
シフトレジスタを8段カスケード接続して成る。
またフルアダー15の上記出力端C′からは、フル
アダー15の結果データ「512」になつたとき
“H”レベルの信号(キヤリー)が出力する。
The polarity inversion circuit 32 includes a shift register 48 and an exclusive OR gate 49 connected to the output side of the shift register 48. The other input terminal of the exclusive OR gate 49 receives the output from the output terminal C' of the full adder 15.
applied via. Further, the output of the exclusive OR gate 49 is fed back to the input side of the shift register 48. In the case of the above-mentioned 8-tone polyphonic synthesizer, the shift register 48 is formed by cascading 8 stages of shift registers each having a capacity of 1 bit.
Further, the output terminal C' of the full adder 15 outputs an "H" level signal (carry) when the result data of the full adder 15 reaches "512".

次に第7図ないし第13図を参照して平均律周
波数演算部4の各種実施例を説明する。先ず、第
7図は第1実施例の回路図である。図において、
音階周波数コードβ′、周波数変調コードα′ともに
Nビツトにより構成される。そして下位nビツト
で半音以下のピツチ(音高)を指定し、その上位
4ビツトでノート(Note)を指定し、更に残り
の上位(N−n−4)ビツトでオクターブ
(Octave)を指定する。そして上記4ビツトのノ
ートを指定するデータは12進コードで表現され、
またその他はバイナリコードで表現される。
Next, various embodiments of the equal tempered frequency calculation section 4 will be described with reference to FIGS. 7 to 13. First, FIG. 7 is a circuit diagram of the first embodiment. In the figure,
Both the scale frequency code β' and the frequency modulation code α' are composed of N bits. The lower n bits specify the pitch (pitch) of a semitone or less, the upper 4 bits specify the note, and the remaining upper (N-n-4) bits specify the octave. . The data specifying the above 4-bit note is expressed in hexadecimal code,
Others are expressed in binary code.

音階周波数コードβ′、周波数変調コードα′の各
オクターブを指定する(N−n−4)ビツトのデ
ータは共にバイナリ加減算器61に印加され、ま
たノートを指定する4ビツトデータは共に12進加
減算器62に印加され、更に半音以下のピツチを
指定する下位nビツトのデータはバイナリ加減算
器63に印加される。またバイナリ加減算器6
1、12進加減算器62、バイナリ加減算器63に
は同時にCPU3からの加減算指令(−)が印加
され、これに応じて各加減算器61〜63はその
入力データの加算または減算動作を行う。そして
バイナリ加減算器63のキヤリー出力は端子C0
から出力して12進加減算器62の端子Cinに印加
される。また12進加減算器62のキヤリー出力は
端子C0から出力してバイナリ加減算器61の端
子Cinに印加される。而してバイナリ加減算器6
1および12進加減算器62の各結果データは
ROM64にアドレスデータとして印加され、他
方、バイナリ加減算器63の結果データはROM
65にアドレスデータとして印加される。ROM
64は平均律にしたがつた音階周波数コードβを
記憶し、またROM65は平均律にしたがつた半
音分(100セント分)の周波数変調コードαを指
数関数データとして記憶する。そしてROM6
4,65から夫々読出される音階周波数コード
β、周波数変調コードαは共にウエイブジエネレ
ータ5に送出される。
The (N-n-4) bit data specifying each octave of the scale frequency code β' and the frequency modulation code α' are both applied to the binary adder/subtractor 61, and the 4-bit data specifying the notes are both subjected to decimal addition/subtraction. Further, the lower n bits of data specifying a pitch of less than a semitone are applied to a binary adder/subtractor 63. Also, binary adder/subtractor 6
An addition/subtraction command (-) from the CPU 3 is simultaneously applied to the 1 and 12-decimal adder/subtractor 62 and the binary adder/subtractor 63, and in response to this, each adder/subtractor 61-63 performs an addition or subtraction operation on its input data. The carry output of the binary adder/subtractor 63 is the terminal C 0
It is outputted from and applied to the terminal Cin of the decimal adder/subtractor 62. Further, the carry output of the hexadecimal adder/subtractor 62 is output from the terminal C 0 and applied to the terminal Cin of the binary adder/subtractor 61 . Therefore, binary adder/subtractor 6
Each result data of the 1 and 12-decimal adder/subtractor 62 is
The result data of the binary adder/subtractor 63 is applied to the ROM 64 as address data.
65 as address data. ROM
A ROM 64 stores a scale frequency code β according to equal temperament, and a ROM 65 stores a frequency modulation code α corresponding to a semitone (100 cents) according to equal temperament as exponential function data. And ROM6
Both the scale frequency code β and the frequency modulation code α read from 4 and 65 are sent to the wave generator 5.

第8図は、第7図の実施例において12進コード
により表現した4ビツトのノート指定のデータを
バイナリデータにより表現したもので、したがつ
てこの場合には1つのバイナリ加減算器66に音
階周波数コードβ′および周波数変調コードα′、ま
た加減算指令(−)が印加される。そしてバイナ
リ加減算器66により実行された平均律周波数演
算の結果データの上位N−nビツトはROM67
へ、また下位nビツトはROM68へ夫々アドレ
スデータとして印加される。而してROM67は
上記ROM64と同一機能をもち、またROM6
8は上記ROM65と同一機能をもち、ROM6
4からは音階周波数コードβが、またROM68
から周波数変調コードαが夫々読出される。
FIG. 8 shows the 4-bit note designation data expressed by the hexadecimal code in the embodiment of FIG. 7 expressed as binary data. Code β', frequency modulation code α', and addition/subtraction commands (-) are applied. The upper N-n bits of the result data of the equal tempered frequency calculation executed by the binary adder/subtractor 66 are stored in the ROM 67.
The lower n bits are respectively applied to the ROM 68 as address data. Therefore, ROM67 has the same function as ROM64, and also has the same function as ROM64.
8 has the same function as the above ROM65, and ROM6
From 4 onwards, the scale frequency code β and ROM68
Frequency modulation codes α are read out from each of them.

第9図は、第8図の実施例からROM68を除
去し、替りにバイナリ加減算器71を設けたもの
である。したがつて音階周波数コードβ′、周波数
変調コードα′は共にバイナリデータにより表現さ
れ、バイナリ加減算器66と同一機能のバイナリ
加減算器69に入力する。そしてその結果データ
の上位N−nビツトのデータはROM67と同一
機能のROM70に入力し、音階周波数コードβ
を読出す。他方、下位nビツトのデータYはバイ
ナリ加減算器71に印加される。このバイナリ加
減算器71の他端には、周波数変調を行わないと
きの周波数変調コードαの値に等しいデータXが
印加される。そしてバイナリ加減算器71の結果
データX±Yが周波数変調コードαとされる。
In FIG. 9, the ROM 68 is removed from the embodiment of FIG. 8, and a binary adder/subtracter 71 is provided in its place. Therefore, both the scale frequency code β' and the frequency modulation code α' are expressed by binary data, and are input to a binary adder/subtractor 69 having the same function as the binary adder/subtractor 66. Then, the upper N-n bits of the resulting data are input to the ROM 70, which has the same function as the ROM 67, and the scale frequency code β
Read out. On the other hand, the lower n bits of data Y are applied to the binary adder/subtractor 71. Data X, which is equal to the value of the frequency modulation code α when frequency modulation is not performed, is applied to the other end of the binary adder/subtractor 71. The result data X±Y of the binary adder/subtractor 71 is then used as the frequency modulation code α.

したがつて α=X±Y=X・2100/1200 …(1) の関係式を満足するようにデータXの値を選定し
てCPU3が出力する。例えば、いまn=6とし、
またバイナリ加減算器71が加算器として機能し
た場合、またデータY(データYは0〜63の間の
値をとる)を63とすると、式(1)から、 X+63=X・2100/1200 したがつてXとして「1059」が選定され、
CPU3から与えられる。
Therefore, the value of data X is selected and output by the CPU 3 so as to satisfy the relational expression α=X±Y=X・2 100/1200 (1). For example, if we now assume n=6,
Also, if the binary adder/subtractor 71 functions as an adder, and if data Y (data Y takes a value between 0 and 63) is 63, then from equation (1), X+63=X・2 100/1200. Eventually, "1059" was selected as X,
Given from CPU3.

なお、この実施例では半音以下が直線的な変化
を示すが、実用上問題はない。
In this example, a semitone or less shows a linear change, but there is no problem in practical use.

第10図は、第9図のバイナリ加減算器71を
除去し、替りにデコーダ74を設けたもので、ハ
ードの構成が更に簡単になる。而してバイナリ加
減算器72はバイナリ加減算器69と同一機能を
もち、またROM73はROM70と同一機能を
もつ。一方、バイナリ加減算器72の結果データ
の下位nビツトのデータがデコーダ74に印加さ
れ、またデコーダ74の出力データYおよびデー
タXが周波数変調コードXとして出力する。
In FIG. 10, the binary adder/subtractor 71 in FIG. 9 is removed and a decoder 74 is provided in its place, which further simplifies the hardware configuration. Thus, the binary adder/subtractor 72 has the same function as the binary adder/subtracter 69, and the ROM 73 has the same function as the ROM 70. On the other hand, the data of the lower n bits of the result data of the binary adder/subtracter 72 is applied to the decoder 74, and the output data Y and data X of the decoder 74 are output as the frequency modulation code X.

茲で、データXは下位nビツトをオール“0”
としたデータとする。したがつて次式(2)の関係が
成立する。
In this case, the lower n bits of data X are all “0”
The data is as follows. Therefore, the following relationship (2) holds true.

X+Y=X・2100/1200 …(2) したがつてデータYは次式(3)により与えられ
る。
X+Y=X・2 100/1200 (2) Therefore, data Y is given by the following equation (3).

Y=X(2100/1200−1) …(3) 例えば、n=6として下位6ビツトをオール
“0”とし、またXの値として X=1111000000(=「960」) とする。このとき式(3)からYは「56」となる。し
たがつてバイナリ加減算器72の下位6ビツトの
出力に応じてデコーダ出力(データY)が0〜56
の値となるようにデコーダ74を構成し、データX
の下位6ビツトに付加して周波数変調コードαと
して送出すればよい。このようにすれば、Yが0
〜56と変化することにより楽音が0〜100セント
つまり最大半音、ピツチが変化する。
Y=X(2 100/1200 -1)...(3) For example, let n=6, set the lower 6 bits to all "0", and set the value of X to X=1111000000 (="960"). At this time, Y becomes "56" from equation (3). Therefore, the decoder output (data Y) varies from 0 to 56 depending on the output of the lower 6 bits of the binary adder/subtractor 72.
Configure the decoder 74 so that the value of data X
It is sufficient to add it to the lower 6 bits of the frequency modulation code α and send it out as the frequency modulation code α. If you do this, Y will be 0
By changing from ~56, the musical tone changes from 0 to 100 cents, that is, the maximum semitone and pitch.

なお、他の例として X=1101000000(=「832」) とすれば、0≦Y≦48となる。 In addition, as another example X = 1101000000 (= "832") Then, 0≦Y≦48.

第11図は周波数変調コードα′としてビブラー
ト波形とビブラート深さ指定信号とを乗算した値
を用いるようにした実施例である。この場合、ビ
ブラート波形の信号はCPU3の制御下に所定の
波形発生部(図示略)から出力し、またビブラー
ト深さ指定信号はスイツチ部2上の所定スイツチ
の操作により出力する。したがつてビブラート波
形信号とビブラート深さ指定信号とが乗算器75
に共に入力して乗算される。そしてその結果デー
タのうち、半音に相当する下位側ビツトデータ
は、CPU3が出力する制御信号aによつてゲー
ト制御されるゲート回路Gを介し、また上位側ビ
ツトデータは直接、共に周波数変調コードα′とし
て平均律周波数演算器76に印加される。またこ
の平均律周波数演算器76には音階周波数コード
β′が印加される。而して平均律周波数演算器76
は例えば第8図に示した回路が用いられる。
FIG. 11 shows an embodiment in which a value obtained by multiplying a vibrato waveform and a vibrato depth designation signal is used as the frequency modulation code α'. In this case, the vibrato waveform signal is output from a predetermined waveform generator (not shown) under the control of the CPU 3, and the vibrato depth designation signal is output by operating a predetermined switch on the switch section 2. Therefore, the vibrato waveform signal and the vibrato depth designation signal are combined into the multiplier 75.
are input together and multiplied. Of the resulting data, the lower bit data corresponding to a semitone is passed through a gate circuit G that is gate-controlled by the control signal a output from the CPU 3, and the upper bit data is directly input to the frequency modulation code α. ' is applied to the equal tempered frequency calculator 76. Further, a scale frequency code β' is applied to the equal-tempered frequency calculator 76. Therefore, the equal tempered frequency calculator 76
For example, the circuit shown in FIG. 8 is used.

この実施例の場合、制御信号aを“0”レベル
として出力してゲート回路Gを閉成した場合、半
音に相当する下位ビツトデータがオール“0”と
なつた周波数変調コードα′が平均律周波数演算器
76に印加されるから、平均律周波数演算器76
が出力する音階周波数コードβ′、周波数変調コー
ドα′によつて半音階的に変化するビブラート波形
が得られる。
In this embodiment, when the control signal a is output as a "0" level and the gate circuit G is closed, the frequency modulation code α' in which the lower bit data corresponding to a semitone is all "0" is equal-tempered. Since it is applied to the frequency calculator 76, the equal-tempered frequency calculator 76
A vibrato waveform that changes chromatically can be obtained by the scale frequency code β' and the frequency modulation code α' outputted by.

第12図はモノフオニツク演奏時に限つてポル
タメント動作を行えるようにした実施例を示す。
即ち、比較回路77の端子Tにはあらたなキーの
オン時に出力するそのコードNEW KEY CODE
が印加される。そのとき端子Sにはそれ以前にオ
ンされていたキーのコードがフリツプフロツプ8
0から出力循環されて印加されている。そして比
較回路77は両端子T,Sの各コードの大小関係
の比較動作を行い、端子Tのコードが端子Sのコ
ードより小のとき、即ち、以前の音高に較べ今回
の音高が低いときには“1”レベルの信号を端子
S>Tより出力してバイナリ加減算器79の制御
端子(−)に印加し、該バイナリ加減算器79に
減算動作を実行させる。他方、端子Tのコードが
端子Sのコードより大のとき、即ち、以前の音高
より今回の音高が高いときには“0”レベルの信
号を端子S>Tより出力してバイナリ加減算器7
9の制御端子(−)に印加し、該バイナリ加減算
器79に加算動作を実行させる。更に比較回路7
7は両端子T,Sの各コードが一致していないと
き端子S≠Tから“1”レベルの信号を出力して
アンドゲート78を開成し、他方、一致すると
“0”レベルの信号を出力してアンドゲート78
を閉成する。このアンドゲート78には周期的に
出力する信号EXECUTEが印加され、該アンド
ゲート78の開成中バイナリ加減算器79へ+1
信号または−1信号として与えられる。バイナリ
加減算器79にはフリツプフロツプ80にラツチ
されているNビツトのデータ中の半音階に相当す
る下位mビツトのデータがゲート回路Gを介し、
また上位N−mビツトのデータが直接、循環入力
する。したがつてバイナリ加減算器79はフリツ
プフロツプ80から与えられたデータに対し信号
EXECUTEの入力ごとに+1動作または−1動
作を実行し、その結果データをフリツプフロツプ
80に出力する。フリツプフロツプ80から出力
するNビツトデータのうち上位N−nビツトのデ
ータはROM81に印加されて該ROM81から
音階周波数コードβを読出し、また下位nビツト
のデータはROM82に印加されて周波数変調コ
ードαを読出す。なお、ゲート回路Gは制御信号
aによつてゲート制御される。
FIG. 12 shows an embodiment in which the portamento movement can be performed only during monophonic performance.
That is, the code NEW KEY CODE that is output when a new key is turned on is sent to terminal T of the comparator circuit 77.
is applied. At that time, the code of the key that was previously turned on is on the terminal S of the flip-flop 8.
The output is circulated from 0 and applied. Then, the comparison circuit 77 performs a comparison operation to determine the magnitude relationship between the chords at both terminals T and S, and when the chord at terminal T is smaller than the chord at terminal S, that is, the current pitch is lower than the previous pitch. At times, a "1" level signal is output from the terminal S>T and applied to the control terminal (-) of the binary adder/subtractor 79 to cause the binary adder/subtracter 79 to perform a subtraction operation. On the other hand, when the code at the terminal T is greater than the code at the terminal S, that is, when the current pitch is higher than the previous pitch, a "0" level signal is output from the terminal S>T and the binary adder/subtractor 7
9 and causes the binary adder/subtractor 79 to perform an addition operation. Furthermore, comparison circuit 7
7 outputs a "1" level signal from the terminal S≠T to open the AND gate 78 when the respective codes of both terminals T and S do not match, and on the other hand, outputs a "0" level signal when they match. And gate 78
Close. A periodically output signal EXECUTE is applied to this AND gate 78, and while the AND gate 78 is open, it is sent to the binary adder/subtracter 79 by +1.
signal or -1 signal. The lower m bits of data corresponding to the chromatic scale of the N bits of data latched in the flip-flop 80 are sent to the binary adder/subtractor 79 via the gate circuit G.
Further, the data of the upper Nm bits is directly input in a circular manner. Therefore, the binary adder/subtracter 79 generates a signal for the data given from the flip-flop 80.
A +1 or -1 operation is executed for each input of EXECUTE, and the resulting data is output to flip-flop 80. Of the N-bit data output from the flip-flop 80, the upper N-n bits are applied to the ROM 81 to read out the scale frequency code β from the ROM 81, and the lower n bits are applied to the ROM 82 to read the frequency modulation code α. Read out. Note that the gate circuit G is gate-controlled by a control signal a.

上記構成によつて、今回あらたにオンされたキ
ーの音高が前回のキーの音高より低いときにはバ
イナリ加減算器79によつて減算動作が実行され
る一方、今回オンされたキーの音高が前回のキー
の音高より高いときにはバイナリ加減算器79に
よつて加算動作が実行され、ポルタメント効果が
与えられる。また制御信号aを“0”レベルとし
て出力すると半音階ごとに変化するポルタメント
が得られる。
With the above configuration, when the pitch of the newly turned-on key is lower than the pitch of the previous key, the binary adder/subtractor 79 executes a subtraction operation, while the pitch of the newly turned-on key is lower than the pitch of the previous key. When the pitch is higher than the pitch of the previous key, an addition operation is performed by the binary adder/subtractor 79, giving a portamento effect. Furthermore, when the control signal a is outputted at the "0" level, portamento that changes every chromatic scale can be obtained.

第13図はグライド効果が得られるようにした
実施例回路を示す。比較回路83の端子Tおよび
バイナリ加減算器84の一端にはあらたなキーの
オン時にそのコードNEW KEY CODEが直接、
またゲート回路G1を介し印加される。また同時
にバイナリ加減算器84の他端にはゲート回路
G2を介しグライド幅のデータが印加される。更
に同時にバイナリ加減算器84の制御端子(−)
には信号UP/downがトランスフアーゲート91
を介し印加される。而してこのときバイナリ加減
算器84は、信号がUP/downがUPの指令
(“1”レベル)のときにはコードNEW KEY
CODEに対しグライド幅の減算動作を実行し、他
方、downの指令(“0”レベル)のときにはコー
ドNEW KEY CODEに対しグライド幅の加算動
作を実行する。そしてその結果データはフリツプ
フロツプ85に印加される。フリツプフロツプ8
5にラツチされた結果データは上記キーオン後に
おいては、比較回路83の端子Sに直接、またゲ
ート回路G8を介しバイナリ加減算器84の一端
に印加される。また同時に上記効果データの上位
N−nビツトのデータはROM86に供給されて
音階周波数コードβが読出され、また下位nビツ
トのデータはROM87に供給されて周波数変調
コードαが読出される。バイナリ加減算器84に
は更に、その制御端子(−)に比較回路83が両
端子S,Tへの入力データの大きさを比較した結
果信号が端子S>Tから出力し、トランスフアー
ゲート92を介し印加される。またバイナリ加減
算器84の他端には信号EXECUTEがアンドゲ
ート89およびトランスフアーゲート90を介し
印加される。したがつて上記キーオン後において
バイナリ加減算器84は信号EXECUTEの入力
ごとに上記フリツプフロツプ85からの結果デー
タに対する加算動作または減算動作を実行する。
そして比較回路83が端子S,Tの入力データの
一致を検出するとバイナリ加減算器84の上記加
算動作または減算動作は停止し、グライド効果の
動作が停止する。
FIG. 13 shows an example circuit in which a glide effect can be obtained. When a new key is turned on, the code NEW KEY CODE is directly connected to the terminal T of the comparison circuit 83 and one end of the binary adder/subtractor 84.
It is also applied via the gate circuit G1 . At the same time, the other end of the binary adder/subtractor 84 has a gate circuit.
Glide width data is applied via G2 . Furthermore, at the same time, the control terminal (-) of the binary adder/subtractor 84
The signal UP/DOWN is transferred to transfer gate 91.
applied via. At this time, the binary adder/subtractor 84 outputs the code NEW KEY when the signal is an UP command (“1” level).
A glide width subtraction operation is executed for CODE, and on the other hand, when a down command is issued (“0” level), a glide width addition operation is executed for the code NEW KEY CODE. The resulting data is then applied to flip-flop 85. flip flop 8
After the key is turned on, the result data latched at 5 is applied directly to the terminal S of the comparison circuit 83 and to one end of the binary adder/subtractor 84 via the gate circuit G8. At the same time, the upper N-n bits of the effect data are supplied to the ROM 86 to read out the scale frequency code .beta., and the lower n bits are supplied to the ROM 87 to read out the frequency modulation code .alpha.. The binary adder/subtractor 84 further has a control terminal (-) at which the comparator circuit 83 compares the magnitudes of the input data to both terminals S and T, and outputs a signal from the terminal S>T, which controls the transfer gate 92. applied via the Further, a signal EXECUTE is applied to the other end of the binary adder/subtractor 84 via an AND gate 89 and a transfer gate 90. Therefore, after the key is turned on, the binary adder/subtractor 84 performs an addition or subtraction operation on the result data from the flip-flop 85 every time the signal EXECUTE is input.
When the comparison circuit 83 detects a match between the input data at the terminals S and T, the addition or subtraction operation of the binary adder/subtractor 84 is stopped, and the operation of the glide effect is stopped.

即ち、比較回路83は端子S,Tへの両データ
が不一致のとき“1”レベルの、他方、一致のと
き“0”レベルの一致信号を端子S≠Tから出力
し、上記アンドゲート89に印加する。また比較
回路83は端子Sのデータが端子Tのデータより
大のとき“1”レベルの、他方、小のとき“0”
レベルの比較結果信号を端子S>Tから出力す
る。更にキーオン時に1発出力する信号NEW
KEY ONがゲート回路G1,G2、トランスフアー
ゲート91に夫々直接印加され、共に上記キーオ
ン時に開成するよう構成されている。また上記信
号NEW KEY ONをインバータ88により反転
した信号がゲート回路G3、トランスフアーゲー
ト90,92に夫々印加され、これらを上記キー
オン後において共に開成する構成となつている。
なお、上記信号UP/downおよびグライド幅のデ
ータはスイツチ部2上のスイツチ操作に応じて出
力する。
That is, the comparator circuit 83 outputs a match signal from the terminal S≠T that is at the "1" level when the two data to the terminals S and T do not match, and is at the "0" level when they match, and is sent to the AND gate 89. Apply. Further, the comparator circuit 83 has a "1" level when the data at the terminal S is larger than the data at the terminal T, and a "0" level when the data is smaller than the data at the terminal T.
A level comparison result signal is output from terminal S>T. Additionally, one signal is output when the key is turned on.NEW
KEY ON is directly applied to gate circuits G 1 and G 2 and transfer gate 91, respectively, and both are configured to open when the key is turned on. Further, a signal obtained by inverting the signal NEW KEY ON by an inverter 88 is applied to the gate circuit G 3 and transfer gates 90 and 92, respectively, and these are both opened after the key is turned on.
Note that the above-mentioned signal UP/down and glide width data are output in response to a switch operation on the switch section 2.

次に第4図ないし第6図を参照して上記実施例
の動作を説明する。先ず、第4図のタイムチヤー
トを参照して矩形波をウエイブジエネレータ5に
より生成する場合の動作を説明する。この場合先
ず、スイツチ部2上の矩形波を指定するスイツチ
をオンし、またその他の必要なスイツチを夫々操
作しておく。なお、いまの場合、ビブラート等の
周波数変調は行わないものとする。したがつて矩
形波の指定スイツチのオン操作によりCPU3は
ウエイブジエネレータ5のゲート回路G1,G2
対し夫々、“H”(即ち、“1”)レベルまたは
“L”(即ち、“0”)レベルの信号を出力する。こ
のため以後、ゲート回路G1が開成し、且つゲー
ト回路G2が閉成する。またCPU3はトランスフ
アーゲート26に対し“1”レベル信号を出力
し、且つトランスフアーゲート29,35に対し
“0”レベル信号を出力する。このため以後、ト
ランスフアーゲート26が開成し、且つトランス
フアーゲート29,35が閉成する。また上記ト
ランスフアーゲート29,35が閉成する結果、
トランスフアーゲート33およびトランスフアー
ゲート347〜340が開成し、且つトランスフア
ーゲート467〜460が閉成する。
Next, the operation of the above embodiment will be explained with reference to FIGS. 4 to 6. First, the operation when a rectangular wave is generated by the wave generator 5 will be explained with reference to the time chart of FIG. In this case, first, turn on the switch for specifying the rectangular wave on the switch section 2, and operate the other necessary switches. Note that in this case, frequency modulation such as vibrato is not performed. Therefore, by turning on the square wave designation switch, the CPU 3 sets the gate circuits G 1 and G 2 of the wave generator 5 to the “H” (i.e., “1”) level or “L” (i.e., “0”) level. ”) outputs a level signal. Therefore, from then on, gate circuit G 1 is opened and gate circuit G 2 is closed. Further, the CPU 3 outputs a "1" level signal to the transfer gate 26, and outputs a "0" level signal to the transfer gates 29 and 35. Therefore, thereafter, the transfer gate 26 is opened and the transfer gates 29 and 35 are closed. Further, as a result of the transfer gates 29 and 35 being closed,
Transfer gate 33 and transfer gates 34 7 to 34 0 are opened, and transfer gates 46 7 to 46 0 are closed.

上記状態においてキーボード1上のあるキーを
例えば1個オンした場合につき以下説明する。こ
の場合、上記の1個のキーのオン時にCPU3は
平均律周波数演算部4に対し、操作キーに応じた
音階周波数コードβ′および周波数変調を行わない
ときの周波数変調コードα′を出力する。これに応
じて平均律周波数演算部4はその平均律周波数演
算によつて対応する音階周波数コードβおよび周
波数変調コードαを出力し、ウエイブジエネレー
タ5に供給する。そしてこの音階周波数コードβ
は開成中のゲート回路G1を介しアンドゲート1
15〜180に印加される。而していまフルアダ
ー15の出力端子Coutの出力は“0”であり、
したがつてインバータ19の出力“1”により上
記アンドゲート1815〜180は開成中である。
したがつて上記音階周波数コードβがアンドゲー
ト1815〜180を介しフルアダー16のB入力
端B15〜B0に印加される。一方、このときフルア
ダー15のS出力端S15〜S0からフルアダー16
のA入力端A15〜A0へ16ビツトオール“0”デー
タが印加される。したがつてそのときのフルアダ
ー16の結果データは設定された上記音階周波数
コードβと同一値のデータとなり、S出力端子
S15〜S0から出力するとシフトレジスタ17へ入
力する。そしてこのデータはシフトされたのちシ
フトレジスタ17から出力するとフルアダー15
のA入力端A15〜A0へ循環入力されると共に、排
他的オアゲート208〜200、インバータ217
〜211へ入力する。
The case where, for example, one key on the keyboard 1 is turned on in the above state will be described below. In this case, when one key is turned on, the CPU 3 outputs to the equal-tempered frequency calculation unit 4 a scale frequency code β' corresponding to the operated key and a frequency modulation code α' when frequency modulation is not performed. In response to this, the equal temperament frequency calculation unit 4 outputs the corresponding scale frequency code β and frequency modulation code α by the equal temperament frequency calculation, and supplies them to the wave generator 5. And this scale frequency code β
is the AND gate 1 through the gate circuit G 1 being opened.
Applied from 8 15 to 18 0 . Now, the output of the output terminal Cout of the full adder 15 is “0”,
Therefore, the AND gates 18 15 to 18 0 are being opened due to the output "1" of the inverter 19.
Therefore, the scale frequency code β is applied to the B input ends B 15 to B 0 of the full adder 16 via the AND gates 18 15 to 18 0 . On the other hand, at this time, from the S output terminals S15 to S0 of the full adder 15 to the full adder 16
16-bit all "0" data is applied to the A input terminals A15 to A0 of. Therefore, the result data of the full adder 16 at that time will be data with the same value as the set scale frequency code β, and the S output terminal
When output from S 15 to S 0 , it is input to the shift register 17. When this data is shifted and output from the shift register 17, the full adder 15
It is circularly inputted to the A input terminals A15 to A0 of the
~21 Enter 1 .

ところでこの実施例の場合、各音階の音階周波
数コードβの値はすべて「1024」より大きい値と
して出力される。即ち、16ビツトデータのうち上
位11〜16ビツトの何れかのビツトには“1”のデ
ータが必ず含まれている。したがつて上記1個の
キーオン時に上記音階周波数コードβが設定さ
れ、次いでシフトレジスタ17が同一値のデータ
を出力したとき、アンドゲート22−2の出力は
第4図eに示すように必ず“0”レベルとなつて
いる。したがつてアンドゲート22−1の出力も
上記アンドゲート22−2の出力が“0”の間は
第4図bに示すように“0”レベルとなつてい
る。更にこのとき、インバータ50の出力は第4
図cに示すように“1”レベル、したがつて極性
反転回路32の出力は第4図dに示すように
“0”レベルである。この結果、アンドゲート2
2−1の“0”レベルの信号が排他的オアゲート
208〜200に供給され、シフトレジスタ17の
出力の下位9ビツトのデータがそのままROM2
3のA入力端A8〜A0へ印加される。またアンド
ゲート22−2の“0”レベルの信号をインバー
タ25により反転した“1”レベルの信号がオア
ゲート246〜240へ印加され、したがつてオア
ゲート246〜240から夫々“1”レベルの信号
が出力し、排他的オアゲート276〜270の各一
端へ印加される。而して排他的オアゲート276
〜270の各他端には極性反転回路32の“0”
レベルの出力が印加されている。したがつて排他
的オアゲート276〜270の各出力はすべて
“1”レベルの信号となる。またインバータ31
の出力も“1”レベルである。この結果、フルア
ダー30aA入力端A7〜A0にはオール“1”デー
タが入力する。またフルアダー30のキヤリー入
力端Cinには極性反転回路32の出力(“0”信
号)が入力している。したがつてフルアダー30
のこのときの結果データは8ビツトオール“1”
データとしてS出力端子S7〜S0から出力し、開成
中のトランスフアーゲート347〜340を介しデ
イジタルフイルタ6へ送出される。第4図aの波
形図はこのデイジタルフイルタ6へ送出される矩
形波を示している。したがつてデイジタルフイル
タ6ではCPU3の制御下に指定された倍音成分
が除去され、またその出力に対しエンベロープジ
エネレータ7はエンベロープを付与し、操作キー
の音階の楽音の生成放音が開始される。
In the case of this embodiment, all values of the scale frequency code β of each scale are output as values larger than "1024". That is, any one of the upper 11 to 16 bits of the 16-bit data always contains "1" data. Therefore, when the scale frequency code β is set when one key is turned on, and the shift register 17 outputs data of the same value, the output of the AND gate 22-2 is always "" as shown in FIG. 4e. 0” level. Therefore, the output of the AND gate 22-1 is also at the "0" level while the output of the AND gate 22-2 is "0" as shown in FIG. 4B. Furthermore, at this time, the output of the inverter 50 is
The output of the polarity inversion circuit 32 is at the "1" level as shown in FIG. As a result, and gate 2
The "0" level signal of 2-1 is supplied to the exclusive OR gates 208 to 200 , and the data of the lower 9 bits of the output of the shift register 17 is directly transferred to the ROM 2.
It is applied to the A input terminals A 8 to A 0 of No. 3. Further, a "1" level signal obtained by inverting the "0" level signal of the AND gate 22-2 by the inverter 25 is applied to the OR gates 24 6 to 24 0 , and therefore, the OR gates 24 6 to 24 0 each output a "1" level signal. A level signal is output and applied to one end of each of exclusive OR gates 27 6 -27 0 . Therefore, exclusive or gate 27 6
“0” of the polarity inverting circuit 32 is at the other end of each of ~27 0 .
level output is applied. Therefore, all outputs of the exclusive OR gates 27 6 to 27 0 become "1" level signals. Also, the inverter 31
The output of is also at the "1" level. As a result, all "1" data is input to the input terminals A7 to A0 of the full adder 30aA. Further, the output (“0” signal) of the polarity inversion circuit 32 is input to the carry input terminal Cin of the full adder 30. Therefore full adder 30
The result data at this time is 8 bits all “1”
It is output as data from the S output terminals S 7 to S 0 and sent to the digital filter 6 via the open transfer gates 34 7 to 34 0 . The waveform diagram in FIG. 4a shows a rectangular wave sent to this digital filter 6. Therefore, the digital filter 6 removes the specified overtone component under the control of the CPU 3, and the envelope generator 7 applies an envelope to its output, and starts generating and emitting musical tones of the scale of the operation keys. .

設定された音階周波数コードβと同一値のデー
タがフルアダー15のA入力端A15〜A0へ循環入
力したとき、そのB入力端B15〜B0へは上記平均
率周波数演算部4が出力する一定値のデータ(周
波数変調コード)αが16ビツトデータとして入力
している。またキヤリー入力端Cinは常時“H”
レベルに設定されているから、フルアダー15は
このときβ−αの1回目の減算動作を実行し、そ
の結果データをS出力端から出力し、フルアダー
16のA入力端へ印加する。なお、上式「β−
α」の「−α」は第2図のα0,α1,…α15の値か
ら「−1」したものに相当する。而してこの減算
動作実行時にはフルアダー15のキヤリー出力端
Coutの出力は“1”レベルとなり、したがつて
インバータ19の出力が“0”となり、アンドゲ
ート1815〜180が閉成する。このためフルア
ダー16のB入力端への音階周波数コードβの入
力が阻止される。したがつてこのときのフルアダ
ー16の結果データはフルアダー15の上記1回
目の結果データと同一であり、シフトレジスタ1
7へ与える。そしてこの1回目の結果データがシ
フトレジスタ17から出力されるとフルアダー1
5のA入力端へ循環入力する一方、排他的オアゲ
ート208〜200、インバータ21−7〜21−
1へ入力する。而してこの1回目の演算後におけ
るフルアダー30のA入力後、キヤリー入力端
Cinのデータ入力状態は前回と変化なく、したが
つてデイジタルフイルタ6へは8ビツトオール
“1”データが送出される。
When data with the same value as the set scale frequency code β is input in circulation to the A input terminals A 15 to A 0 of the full adder 15, the average rate frequency calculation section 4 outputs the data to the B input terminals B 15 to B 0 . The constant value data (frequency modulation code) α is input as 16-bit data. Also, the carry input terminal Cin is always “H”
Since the full adder 15 is set to the level, the full adder 15 executes the first subtraction operation of β-α at this time, outputs the resulting data from the S output terminal, and applies it to the A input terminal of the full adder 16. In addition, the above formula “β−
``-α'' of ``α'' corresponds to the value obtained by subtracting ``-1'' from the values of α 0 , α 1 , . . . α 15 in FIG. Therefore, when executing this subtraction operation, the carry output terminal of the full adder 15
The output of Cout becomes "1" level, and therefore the output of inverter 19 becomes "0", and AND gates 18 15 to 18 0 are closed. Therefore, input of the scale frequency code β to the B input terminal of the full adder 16 is blocked. Therefore, the result data of the full adder 16 at this time is the same as the result data of the first time of the full adder 15, and the result data of the full adder 16 is the same as the result data of the first time of the full adder 15.
Give to 7. When this first result data is output from the shift register 17, the full adder 1
Exclusive OR gates 20 8 to 20 0 and inverters 21-7 to 21-
Enter 1. After the A input of the full adder 30 after this first calculation, the carry input terminal
The data input state of Cin is unchanged from the previous time, so 8-bit all "1" data is sent to the digital filter 6.

フルアダー15、アンドゲート1815〜180
フルアダー16、シフトレジスタ17では以後、
上述した1回目の減算動作と全く同様な累積減算
動作がその結果データ、即ち、シフトレジスタ1
7の出力が「1024」(第4図f参照)となるまで
繰返される。そしてこの間、フルアダー30のA
入力端、キヤリー入力端Cinへの入力状態も変化
がなく、したがつてこの間、引き続きデイジタル
フイルタ6へは8ビツトオール“1”データが送
出される。そして次の減算動作によつてシフトレ
ジスタ17の出力が「1024」より小となると、該
シフトレジスタ17の出力の上位11〜16ビツト目
のデータがオール“0”となつたことになり、し
たがつてアンドゲート22−2の出力が第4図e
に示すように“1”レベルへ反転する。したがつ
て以後、インバータ25の出力が“0”レベルと
なり、オアゲート246〜240へ入力する。
Full Adder 15, And Gate 18 15 ~ 18 0 ,
In the full adder 16 and shift register 17,
The cumulative subtraction operation, which is exactly the same as the first subtraction operation described above, results in data, that is, shift register 1.
This process is repeated until the output of 7 becomes "1024" (see Figure 4 f). And the other day, full adder 30 A
The input state to the input terminal, the carry input terminal Cin, does not change either, so during this period, 8-bit all "1" data is continuously sent to the digital filter 6. Then, when the output of the shift register 17 becomes smaller than "1024" by the next subtraction operation, the data in the upper 11th to 16th bits of the output of the shift register 17 are all "0", and so The output of the AND gate 22-2 is shown in Fig. 4e.
It is inverted to the “1” level as shown in . Therefore, from now on, the output of the inverter 25 becomes "0" level and is input to the OR gates 24 6 to 24 0 .

一方、シフトレジスタ17の出力が上述した
「1024」から「512」までの累積減算動作の間は該
シフトレジスタ17の出力の10ビツト目のデータ
は“1”を保持し、したがつてこの間、第4図b
に示すように引き続きアンドゲート22−1の出
力は“0”であり、排他的オアゲート208〜2
0へ供給される。このため上記「1024」〜
「512」の間はROM23のA入力端へはシフトレ
ジスタ17の出力の下位9ビツトデータがそのま
ま印加されつづける。また上記間は第4図dに示
すように極性反転回路32の出力は引き続き
“0”レベルである。
On the other hand, during the cumulative subtraction operation in which the output of the shift register 17 is from "1024" to "512", the 10th bit data of the output of the shift register 17 holds "1", so during this period, Figure 4b
As shown in , the output of the AND gate 22-1 continues to be “0” and the exclusive OR gates 20
0 0 is supplied. For this reason, the above "1024" ~
During "512", the lower 9 bit data of the output of the shift register 17 continues to be applied to the A input terminal of the ROM 23 as it is. During the above period, the output of the polarity inversion circuit 32 continues to be at the "0" level as shown in FIG. 4d.

したがつてシフトレジスタ17の出力が
「1024」以下になつた時点、例えば「1023」にな
つた時点を想定すると、そのとき該シフトレジス
タ17の出力の下位9ビツトはオール“1”であ
り、ROM23のA入力端へ印加される。したが
つてROM23はこの9ビツトオール“1”のア
ドレスデータにアドレス指定されて、第3図に示
すように7ビツトオール“1”データを読出され
る。この7ビツトオール“1”データはオアゲー
ト246〜240を介し排他的オアゲート276
270へ入力する。而して上述したように、排他
的オアゲート276〜270およびフルアダー30
のキヤリー入力端Cinにはまだ“0”レベルの信
号が入力中であり、したがつてフルアダー30の
A入力端には8ビツトオール“1”データが入力
し、その結果データも8ビツトオール“1”デー
タとして出力し、デイジタルフイルタ6へ送出さ
れる。
Therefore, assuming that the output of the shift register 17 becomes "1024" or less, for example "1023", then the lower 9 bits of the output of the shift register 17 are all "1", It is applied to the A input terminal of the ROM23. Therefore, the ROM 23 is addressed by this 9-bit all "1" address data, and 7-bit all "1" data is read out as shown in FIG. This 7-bit all "1" data is passed through exclusive OR gates 276 to 240 through OR gates 246 to 240.
27 Enter 0 . As mentioned above, exclusive or gates 27 6 to 27 0 and full adder 30
A "0" level signal is still being input to the carry input terminal Cin of the full adder 30, so 8-bit all "1" data is input to the A input terminal of the full adder 30, and as a result, the data is also 8-bit all "1". It is output as data and sent to the digital filter 6.

次に、次の累積減算動作によりシフトレジスタ
17の出力が「1023」より更にデータαだけ小さ
い値となると、ROM23は上述した9ビツトオ
ール“1”データ(即ち、「511」)よりαだけ小
さいアドレスデータによつてアドレス指定され
る。したがつて第3図からも分かるようにROM
23からは上述した7ビツトオール“1”データ
より所定値小さいデータ、即ち、前回よりやや小
さい振幅値のデータが読出され、またその振幅値
のデータがフルアダー30により極性を反転され
ずそのまま出力してデイジタルフイルタ6へ送出
される。
Next, when the output of the shift register 17 becomes a value smaller than "1023" by data α due to the next cumulative subtraction operation, the ROM 23 is stored at an address smaller by α than the above-mentioned 9-bit all "1" data (i.e., "511"). Addressed by data. Therefore, as can be seen from Figure 3, the ROM
23, data smaller by a predetermined value than the above-mentioned 7-bit all "1" data, that is, data with an amplitude value slightly smaller than the previous one, is read out, and the data with the amplitude value is output as is without having its polarity inverted by the full adder 30. The signal is sent to the digital filter 6.

以下、同様にしてシフトレジスタ17の出力が
各累積減算動作によりαずつ小さくなつてゆき、
その値が「512」となるまでの間はROM23は
そのアドレスデータが順次、αずつ小さくなる方
向へアドレス指定されてゆき、これに応じてその
都度、前回より小さい値の振幅値データが読出さ
れる。そしてこの間、フルアダー30のA入力端
およびキヤリー入力端Cinへのデータの入力状態
は上述したことと同様であり、これに応じてデイ
ジタルフイルタ6へは上述した順次小さくなる振
幅値データが送出される。そしてシフトレジスタ
17の出力が「512」のときには、ROM23は
9ビツトオール“0”のアドレスデータによつて
アドレス指定されることになる。
Thereafter, in the same way, the output of the shift register 17 decreases by α by each cumulative subtraction operation,
Until the value reaches "512", the address data in the ROM 23 is sequentially addressed in the direction of decreasing by α, and accordingly, each time, amplitude value data with a smaller value than the previous one is read out. Ru. During this time, the input state of data to the A input terminal and the carry input terminal Cin of the full adder 30 is the same as described above, and accordingly, the above-mentioned sequentially decreasing amplitude value data is sent to the digital filter 6. . When the output of the shift register 17 is "512", the ROM 23 is addressed by address data of 9 bits all "0".

次に累積減算動作の結果データがフルアダー1
5において「512」から「511」以下の値に変化す
るとき、フルアダー15の出力端子C′から“1”
信号が出力し、それに応じて第4図cに示すよう
にインバータ50から1発のパルス信号が出力す
る。その結果、第4図dに示すように以後、極性
反転回路32の出力が“1”レベルに反転し、排
他的オアゲート276〜270、インバータ31、
フルアダー30のキヤリー入力端Cinに夫々印加
される。
Next, the result data of cumulative subtraction operation is full adder 1
5, when the value changes from "512" to "511" or less, "1" is output from the output terminal C' of the full adder 15.
A signal is output, and in response, one pulse signal is output from the inverter 50 as shown in FIG. 4c. As a result, as shown in FIG. 4d, the output of the polarity inversion circuit 32 is subsequently inverted to the "1" level, and the exclusive OR gates 27 6 to 27 0 , the inverter 31,
The signals are applied to the carry input terminals Cin of the full adder 30, respectively.

したがつてこの「511」以下のデータが第4図
fに示す如くシフトレジスタ17から出力したと
き、その出力の上位10〜16ビツトはオール“0”
データとなり、このためアンドゲート22−1の
出力が第4図bに示すように“1”レベルに変化
し、排他的オアゲート208〜200へ印加され
る。一方、排他的オアゲート208〜200の他端
には再び9ビツトオール“1”データが印加さ
れ、而してその出力は9ビツトオール“0”に反
転されてROM23のA入力端へ印加される。こ
のため累積減算の結果データが「511」〜「0」
に順次、αづつ小さくなる間はROM23はアド
レスデータがオール“0”からオール“1”へ大
きくなる方向に向つて順次アドレス指定されるこ
とになる。またその結果続出される振幅値データ
は第3図に示すように順次大きくなるが、その振
幅値データは排他的オアゲート276〜270を介
しフルアダーのA入力端A6〜A0に入力し、また
A入力端A7には“0”信号が入力し、更にキヤ
リー入力端子Cinには“1”信号が入力するか
ら、この間にフルアダー30から出力するデータ
はROM23から続出される振幅値データの極性
を反転したものに等しくなり、そのデータがデイ
ジタルフイルタ6に送出される。
Therefore, when data below "511" is output from the shift register 17 as shown in Figure 4f, the upper 10 to 16 bits of the output are all "0".
Therefore, the output of the AND gate 22-1 changes to the "1" level as shown in FIG. 4B, and is applied to the exclusive OR gates 20 8 to 20 0 . On the other hand, 9-bit all "1" data is again applied to the other ends of the exclusive OR gates 208 to 200 , and the output thereof is inverted to 9-bit all "0" and applied to the A input terminal of the ROM 23. . Therefore, the result data of cumulative subtraction is "511" to "0".
While the address data sequentially decreases by α, the ROM 23 is sequentially addressed in the direction in which the address data increases from all "0" to all "1". Further, the amplitude value data that is generated as a result becomes larger sequentially as shown in FIG . In addition, since a "0" signal is input to the A input terminal A7 and a "1" signal is input to the carry input terminal Cin, the data output from the full adder 30 during this period is the amplitude value data successively output from the ROM 23. The data is sent to the digital filter 6.

第4図fに示すようにシフトレジスタ17出力
が「1024」から「0」の間では、第4図aの矩形
波の振幅は、ROM23から読出した1/4周期の
正弦波の波形データによつて補間される。
As shown in FIG. 4 f, when the output of the shift register 17 is between "1024" and "0", the amplitude of the rectangular wave in FIG. interpolated accordingly.

上述のようにして累積減算結果が「0」になる
と次の減算動作時にフルアダー15のキヤリー出
力端子Coutから“0”信号が出力し、この結果、
アンドゲート1815〜180が一時開成して音階
周波数コードβがフルアダー16のB入力端B1 5
〜B0へ印加される。そしてフルアダー16のA
入力端子に与えられるデータと、この音階周波数
コードβが加算され、その結果データがシフトレ
ジスタ17から出力したとき、上述したように上
記データ、即ち、音階周波数コードβは「1024」
より大きい値であるから、上述した理由によつて
この時点から第4図b,eに示す如く、アンドゲ
ート22−1,22−2の各出力が“0”レベル
へ反転する。
When the cumulative subtraction result becomes "0" as described above, a "0" signal is output from the carry output terminal Cout of the full adder 15 during the next subtraction operation, and as a result,
The AND gates 18 15 to 18 0 are temporarily opened and the scale frequency code β is input to the B input terminal B 1 5 of the full adder 16.
~ applied to B 0 . And full adder 16 A
When the data given to the input terminal and this scale frequency code β are added, and the resulting data is output from the shift register 17, the above data, that is, the scale frequency code β is “1024” as described above.
Since the value is larger, for the reason mentioned above, from this point on, the outputs of the AND gates 22-1 and 22-2 are inverted to the "0" level as shown in FIGS. 4b and 4e.

上述のようにして音階周波数コードβが再び設
定されたのちは、既に説明したようにして以後、
αづつの累積減算動作が実行され、シフトレジス
タ17の出力はβからαずつ小さくなり、「1024」
まで減少する。而してこの間においては、フルア
ダー30のA入力端子A7〜A0へは8ビツトオー
ル“0”データが入力し、またキヤリー入力端子
Cinへは“1”信号が入力しているから、この間
においてデイジタルフイルム6へは8ビツトオー
ル“0”データが送出される。
After the scale frequency code β is set again as described above,
The cumulative subtraction operation by α is executed, and the output of the shift register 17 decreases from β by α, and becomes “1024”.
decreases to During this period, 8-bit all "0" data is input to the A input terminals A7 to A0 of the full adder 30, and the carry input terminal
Since a "1" signal is input to Cin, 8-bit all "0" data is sent to the digital film 6 during this period.

累積減算結果が「1024」以下となり、更に
「512」まで減少する間は、先ず、第4図fに示す
「1024」より小、即ち、「1023」以下となつた時点
よりアンドゲート22−2の出力が“1”レベル
に反転する。したがつて「1023」〜「512」の間
は、フルアダー30の出力は、ROM23をその
最大アドレス(9ビツトオール“1”データ)か
ら最小アドレス(9ビツトオール“0”データ)
へ向けて順次アドレス指定し読出される振幅値の
データの極性を反転したものと等しくなつてい
る。
While the cumulative subtraction result becomes "1024" or less and further decreases to "512", the AND gate 22-2 is first applied from the point when it becomes smaller than "1024", that is, "1023" or less as shown in FIG. The output of is inverted to "1" level. Therefore, between "1023" and "512", the output of the full adder 30 moves the ROM 23 from its maximum address (9 bits all "1" data) to its minimum address (9 bits all "0" data).
It is equal to the inverted polarity of the amplitude value data that is sequentially addressed and read out.

更に、累積減算結果が「512」になると上述し
たようにフルアダー15の出力端子C′から“1”
信号が出力し、これに応じて第4図dに示すよう
に極性反転回路32の出力が“0”レベルへ反転
する。また次いで累積減算結果が「511」以下に
なるとアンドゲート22−1の出力が“1”レベ
ルへ反転する。この結果、既に述べたように、上
記累積減算結果が「511」〜「0」の間において
は、フルアダー30の出力は、ROM23をその
最小アドレスから最大アドレスへ向けて順次アド
レス指定し読出される振幅値データと一致したデ
ータとなり、デイジタルフイルタ6へ送出され
る。
Furthermore, when the cumulative subtraction result becomes "512", "1" is output from the output terminal C' of the full adder 15 as described above.
A signal is output, and in response to this, the output of the polarity inversion circuit 32 is inverted to the "0" level as shown in FIG. 4d. Next, when the cumulative subtraction result becomes "511" or less, the output of the AND gate 22-1 is inverted to the "1" level. As a result, as mentioned above, when the cumulative subtraction result is between "511" and "0", the output of the full adder 30 is read out by sequentially addressing the ROM 23 from the minimum address to the maximum address. The data matches the amplitude value data and is sent to the digital filter 6.

第4図fに示すように、シフトレジスタ17出
力が「1024」から「0」の間では第4図aの矩形
波の振幅は、ROM23からの波形データによつ
て補間される。そして累積減算結果が「0」以下
になると次の演算時にフルアダー15のキヤリー
出力端子Coutから“0”信号が出力し、フルア
ダー16に再び音階周波数コードβが設定される
と共に、次の一周期の矩形波の演算処理が開始さ
れる。
As shown in FIG. 4f, when the output of the shift register 17 is between "1024" and "0", the amplitude of the rectangular wave shown in FIG. 4a is interpolated by the waveform data from the ROM 23. When the cumulative subtraction result becomes "0" or less, a "0" signal is output from the carry output terminal Cout of the full adder 15 during the next calculation, and the scale frequency code β is set in the full adder 16 again. Rectangular wave calculation processing is started.

以上により、一周期分の矩形波を生成するため
の演算処理動作が終了する。而して第4図に示し
た、例えばシフトレジスタ17出力が「0」から
「0」まで変化する演算周期(即ち、前回と今回
の各音階周波数コードβが夫々設定される間)を
T′、サンプリング周期をTSとすると、上記演算
周期T′は次式(4)により表わされる。
With the above, the arithmetic processing operation for generating a rectangular wave for one cycle is completed. For example, the calculation period in which the output of the shift register 17 changes from "0" to "0" (that is, the period during which each scale frequency code β of the previous and current scales is set) shown in FIG.
When T' and the sampling period are T S , the calculation period T' is expressed by the following equation (4).

T′=TS・β/α …(4) また上述の如くして生成した矩形波の周波数0
はサンプリング周波数をSとしたとき、次式(5)に
より表わされる。
T′=T S・β/α …(4) Also, the frequency of the rectangular wave generated as described above is 0
is expressed by the following equation (5), where S is the sampling frequency.

0=1/2T′=S/2・α/β …(5) 次に第5図を参照してPWM波の生成の場合の
動作を説明する。先ず、スイツチ部2上のPWM
波の指定スイツチをオンする。この結果、ゲート
回路G1が閉成し、且つゲート回路G2が開成する。
またトランスフアーゲート26,33,347
340が開成し、且つトランスフアゲート29,
35,467〜460が閉成する。そして上記状態
においてキーボード1上の1個のキーをオンする
とPWM波の演算生成処理が開始される。
0 =1/2T'= S /2・α/β (5) Next, the operation in the case of generating a PWM wave will be explained with reference to FIG. First, PWM on switch section 2
Turn on the wave designation switch. As a result, gate circuit G1 is closed and gate circuit G2 is opened.
Also, transfer gates 26, 33, 34 7 ~
34 0 is opened and transfer gate 29,
35, 46 7 to 46 0 are closed. In the above state, when one key on the keyboard 1 is turned on, the calculation and generation process of the PWM wave is started.

いま、第5図fに示すシフトレジスタ17出力
が「0」(同図の左端にある「0」)のタイミング
から説明を行う。即ち、この時点では、極性反転
回路32の出力は、第5図dに示すように“1”
レベルであり、したがつて加減算回路43には加
算指令が与えられ、また排他的オアゲート276
〜270、インバータ31、フルアダー30のキ
ヤリー入力端子Cinに夫々、“1”信号が印加さ
れる。
The explanation will now start from the timing when the shift register 17 output is "0"("0" at the left end in the figure) shown in FIG. 5F. That is, at this point, the output of the polarity inversion circuit 32 is "1" as shown in FIG.
Therefore, the addition command is given to the addition/subtraction circuit 43, and the exclusive OR gate 27 6
~27 0 , a “1” signal is applied to the carry input terminal Cin of the inverter 31 and the full adder 30, respectively.

一方、減算回路41は結果データβ−Kを出力
して乗算回路42に与え、また乗算回路42は結
果データ(β−K)γを出力して加減算回路43
に与えている。更に加減算回路43は結果データ
β+(β−K)γを出力し、ゲート回路G2に与え
ている。茲で、上記データKは例えば「1024」で
あり、またデユーテイ比を決定するデータγは、
0≦γ≦0の値をとる。
On the other hand, the subtraction circuit 41 outputs the result data β-K and gives it to the multiplication circuit 42, and the multiplication circuit 42 outputs the result data (β-K)γ to the addition and subtraction circuit 43.
is giving to Furthermore, the addition/subtraction circuit 43 outputs result data β+(β-K)γ, which is applied to the gate circuit G2 . For example, the data K is "1024", and the data γ that determines the duty ratio is
It takes a value of 0≦γ≦0.

したがつて上記1個のキーのオン時に、矩形波
の生成動作時に述べたことと同様な動作にしたが
つてフルアダー16には演算処理開始時にデータ
β+(β−K)γが設定される。そしてこの設定
データβ+(β−K)γからデータα(一定値)を
減算する累積減算動作が実行される。そしてその
結果データ、即ち、シフトレジスタ17の出力が
「1024」までαづつ減少するまでの間は、第5図
b,c,d,eに夫々示す如く、アンドゲート2
2−1、インバータ50、極性反転回路32、ア
ンドゲート22−2の各出力は夫々、“0”、
“1”、“1”、“0”の各レベルを保持している。
このためこの期間はROM23からの読出し波形
は無効とされ、フルアダー30から出力されデイ
ジタルフイルタ6へ送出されるデータは8ビツト
オール“0”データとなる。
Therefore, when the above-mentioned one key is turned on, data β+(β-K)γ is set in the full adder 16 at the start of arithmetic processing in accordance with an operation similar to that described for the rectangular wave generation operation. Then, a cumulative subtraction operation is performed to subtract data α (a constant value) from this setting data β+(β−K)γ. Until the resulting data, that is, the output of the shift register 17, decreases by α to "1024", the AND gate 2
2-1, the inverter 50, the polarity inversion circuit 32, and the AND gate 22-2 outputs "0" and "0", respectively.
Each level of "1", "1", and "0" is held.
Therefore, during this period, the read waveform from the ROM 23 is invalidated, and the data output from the full adder 30 and sent to the digital filter 6 becomes 8-bit all "0" data.

累積減算の結果データ即ち、シフトレジスタ1
7出力が「1024」より小となるとアンドゲート2
2−2の出力が“1”レベルに反転する。このた
め上記結果データが「1024」から「512」まで変
化する間は、ROM23を最大アドレスから最小
アドレス方向へ順次アドレス指定して読出される
振幅値データの極性を反転したデータがフルアダ
ー30から出力し、デイジタルフイルタ6へ送出
される。
Cumulative subtraction result data, ie, shift register 1
When the 7 output is less than "1024", AND gate 2
The output of 2-2 is inverted to "1" level. Therefore, while the above result data changes from "1024" to "512", the full adder 30 outputs data with the polarity of the amplitude value data read by sequentially addressing the ROM 23 from the maximum address to the minimum address. The signal is then sent to the digital filter 6.

結果データが「512」になると、極性反転回路
32の出力が第5図dに示す如く“0”レベルへ
反転し、加減算回路43へ減算指令が与えられ、
また排他的オアゲート276〜270、インバータ
31、フルアダー30のキヤリー入力端子Cinに
“0”信号が印加される。また上記結果データが
「511」以下になると第5図bに示す如く、アンド
ゲート22−1の出力が“1”レベルに反転す
る。このため結果データが「511」から「0」ま
で変化するまでの間は、フルアダー30の出力
は、ROM23をその最小アドレスから最大アド
レス方向へ向けてアドレス指定して読出される振
幅値データがそのまま出力し、デイジタルフイル
タ6へ送出される。
When the resultant data becomes "512", the output of the polarity inversion circuit 32 is inverted to the "0" level as shown in FIG. 5d, and a subtraction command is given to the addition/subtraction circuit 43.
Further, a “0” signal is applied to the carry input terminals Cin of the exclusive OR gates 27 6 to 27 0 , the inverter 31 and the full adder 30 . Further, when the resultant data becomes less than "511", the output of the AND gate 22-1 is inverted to the "1" level, as shown in FIG. 5B. Therefore, until the result data changes from "511" to "0", the output of the full adder 30 is the amplitude value data read out by addressing the ROM 23 from the minimum address to the maximum address. The signal is output and sent to the digital filter 6.

そして、第5図fに示すように、結果データが
「0」以下となると、次の減算動作時にフルアダ
ー16に対し、データβ−(β−K)γが設定さ
れる。なお、第5図b,eに夫々示すように、結
果データが「0」となるときアンドゲート22−
1,22−2の各出力が“0”レベルへ反転す
る。上記データβ−(β−K)γがフルアダーに
設定されると再びαづつの減算動作が開始され
る。そしてその結果データが「1024」に減少する
までの間はフルアダー30の出力は8ビツトオー
ル“1”データを保持される。
Then, as shown in FIG. 5f, when the resultant data becomes "0" or less, data .beta.-(.beta.-K).gamma. is set in the full adder 16 during the next subtraction operation. Note that, as shown in FIGS. 5b and 5e, when the result data is "0", the AND gate 22-
Each output of 1 and 22-2 is inverted to the "0" level. When the data β-(β-K)γ is set to full adder, the subtraction operation by α is started again. As a result, the output of the full adder 30 is held as 8-bit all "1" data until the data is reduced to "1024".

そして、第5図fに示すように結果データが
「1024」より小となるとアンドゲート22−2の
出力が第5図eに示すように“1”レベルに反転
する。したがつて結果データが「512」まで減少
する間は、フルアダー30の出力はROM23を
最大アドレスから最小アドレスへ向けてアドレス
して読出される振幅値データと同一データとな
り、デイジタルフイルタ6へ送出する。
When the resultant data becomes smaller than "1024" as shown in FIG. 5f, the output of the AND gate 22-2 is inverted to the "1" level as shown in FIG. 5e. Therefore, while the result data decreases to "512", the output of the full adder 30 becomes the same data as the amplitude value data read out by addressing the ROM 23 from the maximum address to the minimum address, and sends it to the digital filter 6. .

次に、結果データが「512」より小となり、更
に「0」まで減少する間は、アンドゲート22−
1、極性反転回路32の各出力が共に“1”レベ
ルに反転して保持される。したがつてこの間のフ
ルアダー30の出力は、ROM23を最小アドレ
スから最大アドレスへ向けてアドレスし読出され
る振幅値データの極性を反転したデータとなり、
デイジタルフイルタ6へ送出される。
Next, while the result data becomes smaller than "512" and further decreases to "0", the AND gate 22-
1. Each output of the polarity inversion circuit 32 is both inverted and held at the "1" level. Therefore, the output of the full adder 30 during this period is data in which the polarity of the amplitude value data read out by addressing the ROM 23 from the minimum address to the maximum address is reversed.
The signal is sent to the digital filter 6.

以上でPWM波の1周期の演算処理動作を終
り、以下は上述したことの繰返しである。そして
その周波数0は矩形波の場合と同一であり、式(5)
により表わされる。
This completes the arithmetic processing operation for one cycle of the PWM wave, and the following is a repetition of what has been described above. And its frequency 0 is the same as in the case of a square wave, and formula (5)
It is represented by

次に第6図を参照して鋸歯状波の場合につき説
明する。先ず、スイツチ部2上の鋸歯状波の指定
スイツチをオンする。この結果、ゲート回路G1
が開成し、且つゲート回路G2が閉成する。また
トランスフアーゲート29,35が開成し、且つ
トランスフアーゲート26,33が閉成する。そ
して上記状態においてキーボード1上の1個のキ
ーをオンすると鋸歯状波生成のための演算処理が
開始する。
Next, the case of a sawtooth wave will be explained with reference to FIG. First, the sawtooth wave designation switch on the switch section 2 is turned on. As a result, gate circuit G 1
is opened, and gate circuit G2 is closed. Further, transfer gates 29 and 35 are opened, and transfer gates 26 and 33 are closed. In the above state, when one key on the keyboard 1 is turned on, arithmetic processing for generating a sawtooth wave starts.

いま、第6図dに示すシフトレジスタ17出力
が「0」(同図の左端にある「0」)のタイミング
から説明を行う。この時点で音階周波数コードβ
がフルアダー16に設定される。したがつてこの
音階周波数コードβがシフトレジスタ17から次
いで出力すると、該コードβは「1024」より大き
いデータであるから、第6図b,cに夫々示すよ
うに、アンドゲート22−1,22−2の各出力
は共に“0”レベルへ反転する。そしてアンドゲ
ート22−2の出力が“0”となつたためにイン
バータ37の出力が“0”、インバータ47の出
力が“1”となり、これに応じてトランスフアー
ゲート347〜340が閉成し、且つトランスフア
ーゲート467〜460が開成する。またフルアダ
ー15,16、シフトレジスタ17、アンドゲー
ト1815〜180では上記音階周波数コードβか
らデータα(一定値)を減算する累積減算動作が
開始する。そしてその累積減算動作の結果データ
が「1024」の値に減少するまでの間は上記アンド
ゲート22−2の出力状態は変化しないため、デ
イジタルフイルタ6へは除算回路44の出力が開
成中のトランスフアーゲート467〜460を介し
送出される。而して除算回路44の入力端子Aに
は減算回路45の出力データM−Kが入力し、ま
た入力端子Bには減算回路41の出力データβ−
Kが夫々印加されている。したがつて除算回路の
出力データH′は次式(6)により表わされる。
An explanation will now be given starting from the timing when the output of the shift register 17 is "0"("0" at the left end in the figure) shown in FIG. 6d. At this point, the scale frequency code β
is set in the full adder 16. Therefore, when this scale frequency code β is then output from the shift register 17, since the code β is data larger than "1024", the AND gates 22-1 and 22 are output as shown in FIGS. 6b and 6c, respectively. -2 outputs are both inverted to "0" level. Since the output of the AND gate 22-2 becomes "0", the output of the inverter 37 becomes "0" and the output of the inverter 47 becomes "1", and accordingly, the transfer gates 34 7 to 34 0 are closed. Then, the transfer gates 46 7 to 46 0 are opened. Further, in the full adders 15 and 16, the shift register 17, and the AND gates 18 15 to 18 0 , an cumulative subtraction operation for subtracting data α (constant value) from the scale frequency code β starts. Since the output state of the AND gate 22-2 does not change until the data as a result of the cumulative subtraction operation decreases to the value "1024", the output of the divider circuit 44 is sent to the digital filter 6 from the open transformer. It is sent out via argates 46 7 to 46 0 . The output data M-K of the subtraction circuit 45 is input to the input terminal A of the division circuit 44, and the output data β- of the subtraction circuit 41 is input to the input terminal B.
K is applied to each. Therefore, the output data H' of the division circuit is expressed by the following equation (6).

H′=M−K/β−K×H …(6) 茲で、Mはシフトレジスタ17の出力、Kは一
定値であり、この実施例では「1024」、Hは最大
振幅値であり、この実施例では「256」である。
したがつて式(6)は次式(7)に書きかえることができ
る。
H'=M-K/β-K×H...(6) where M is the output of the shift register 17, K is a constant value, in this example "1024", H is the maximum amplitude value, In this example, it is "256".
Therefore, equation (6) can be rewritten as the following equation (7).

H′=M−1024/β−1024×256 …(7) 式(7)からも分かるように、シフトレジスタ17
の出力M、即ち、累積減算の結果データが
「1024」となると、デイジタルフイルタ6へ送出
されるデータは「0」となる。そして第6図dに
示すように結果データが「1024」以下となるとア
ンドゲート22−2の出力が第6図cに示すよう
に“1”レベルに反転する。したがつてトランス
フアーゲート347〜370が開成し、且つトラン
スフアーゲート467〜460が閉成する。そして
上記結果データが「512」に減少するまでの間は
アンドゲート22−1の出力は“0”レベルを保
持されるためインバータ28の出力“1”が開成
中のトランスフアーゲート29を介し排他的オア
ゲート276〜270、インバータ31、フルアダ
ー30のキヤリー入力端子Cinに夫々印加され
る。即ち、結果データが「1023」〜「512」の間
は、ROM23を最高アドレスから最小アドレス
へ向けて順次アドレス指定し読出される振幅値デ
ータの極性を反転したデータがフルアダー30か
ら出力し、トランスフアーゲート347〜340
介しデイジタルフイルタ6へ送出される。
H'=M-1024/β-1024×256...(7) As can be seen from equation (7), shift register 17
When the output M of , that is, the data as a result of cumulative subtraction becomes "1024", the data sent to the digital filter 6 becomes "0". When the resultant data becomes "1024" or less as shown in FIG. 6(d), the output of the AND gate 22-2 is inverted to the "1" level as shown in FIG. 6(c). Therefore, transfer gates 34 7 to 37 0 are opened, and transfer gates 46 7 to 46 0 are closed. Until the above result data decreases to "512", the output of the AND gate 22-1 is held at the "0" level, so the output "1" of the inverter 28 is excluded via the open transfer gate 29. The signals are applied to the carry input terminals Cin of the target OR gates 27 6 to 27 0 , the inverter 31 and the full adder 30, respectively. In other words, when the result data is between "1023" and "512", the full adder 30 outputs data in which the polarity of the amplitude value data read out by addressing the ROM 23 sequentially from the highest address to the lowest address is output, and the transfer data is outputted from the full adder 30. The signal is sent to the digital filter 6 via the argates 347 to 340 .

結果データが「512」より小さくなると第6図
bに示すようにアンドゲート22−1の出力も
“1”レベルに反転する。したがつてその“1”
信号が排他的オアゲート208〜200に印加され
て以後、ROM23が最少アドレスから最大アド
レスへ向けてアドレス指定される一方、インバー
タ28の出力“0”が排他的オアゲート276
270、インバータ31、フルアダー30のキヤ
リー入力端子Cinに夫々印加される。このため
「511」−「0」の間は、デイジタルフイルタ6へは
ROM23から読出される振幅値データがそのま
ま送出される。そして次に再びフルアダー16に
音階周波数コードβが設定される。
When the resultant data becomes smaller than "512", the output of the AND gate 22-1 is also inverted to the "1" level, as shown in FIG. 6b. Therefore, “1”
After the signal is applied to the exclusive OR gates 20 8 to 20 0 , the ROM 23 is addressed from the lowest address to the highest address, while the output “0” of the inverter 28 is applied to the exclusive OR gates 27 6 to 27 6 .
27 0 is applied to the carry input terminal Cin of the inverter 31 and the full adder 30, respectively. Therefore, between "511" and "0", the data is not sent to digital filter 6.
The amplitude value data read from the ROM 23 is sent out as is. Then, the scale frequency code β is set in the full adder 16 again.

以上で鋸歯状波生成の一周期の動作を終る。そ
してその周波数0は次式(8)により表わされる。
This completes one cycle of sawtooth wave generation. The frequency 0 is expressed by the following equation (8).

0S・α/β …(8) 即ち(8)式から理解されるように、鋸歯状波の場
合は、矩形波あるいはPWM波の場合と異なり、
音階周波数コードβを2倍とする必要がある。
0 = S・α/β …(8) In other words, as understood from equation (8), in the case of a sawtooth wave, unlike the case of a rectangular wave or PWM wave,
It is necessary to double the scale frequency code β.

次に、上述の動作によつて生成される楽音に対
し周波数変調を行い、ビブラート等を付与すると
きの動作を説明する。この場合、第7図ないし第
13図に示した各種実施例の平均律周波数演算部
4が周波数変調を行わないときとは異つた動作を
実行して音階周波数コードβ、一定値ではない常
に変化するデータα、即ち、周波数変調コードα
を出力し、ウエイブジエネレータ5へ供給する。
Next, an explanation will be given of the operation when performing frequency modulation on the musical tone generated by the above-described operation and adding vibrato and the like. In this case, the equal-tempered frequency calculation unit 4 of the various embodiments shown in FIGS. 7 to 13 performs an operation different from that when no frequency modulation is performed, and the scale frequency code β is not a constant value but constantly changes. data α, that is, frequency modulation code α
is output and supplied to the wave generator 5.

先ず、第7図の実施例の場合、共にNビツトの
データとしてCPU3から出力する音階周波数コ
ードβ′、周波数変調コードα′の各下位nビツトの
データはバイナリ加減算器63に印加され、また
その上位4ビツトの12進コードの各データは12進
加減算器62に印加され、更に上位N−n−4ビ
ツトのデータは夫々バイナリ加減算器61に印加
される。そして各加減算器61〜63において
は、同様にCPU3からの加算指令または減算指
令に応じて加算動作または減算動作を実行する。
その場合、バイナリ加減算器63のキヤリー出力
はバイナリ加減算器62の端子Cinに印加され、
またバイナリ加減算器62のキヤリー出力はバイ
ナリ加減算器61の端子Cinに印加される。そし
てバイナリ加減算器61,62の各結果データは
ROM64に印加され、操作キーの音階に応じた
上記音階周波数コードβが読出される。他方、バ
イナリ加減算器63の結果データはROM65に
印加され、平均律にしたがつて半音まで発生楽音
の周波数を変化させる周波数変調コードαが読出
される。即ち、式(5)あるいは式(8)からも自明なよ
うに、周波数変調コードαが変化すれば発生楽音
の周波数0も変化し、ビブラート等の周波数変調
が行なわれるものである。
First, in the case of the embodiment shown in FIG. 7, the data of the lower n bits of each of the scale frequency code β' and the frequency modulation code α', both of which are output from the CPU 3 as N-bit data, are applied to the binary adder/subtractor 63, and Each data of the upper 4 bits of the hexadecimal code is applied to the hexadecimal adder/subtractor 62, and furthermore, the data of the upper N-n-4 bits are applied to the binary adder/subtractor 61, respectively. Each of the adders/subtractors 61 to 63 similarly performs an addition operation or a subtraction operation in response to an addition command or a subtraction command from the CPU 3.
In that case, the carry output of the binary adder/subtractor 63 is applied to the terminal Cin of the binary adder/subtractor 62,
Further, the carry output of the binary adder/subtractor 62 is applied to the terminal Cin of the binary adder/subtractor 61. And each result data of binary adder/subtractor 61, 62 is
It is applied to the ROM 64 and the scale frequency code β corresponding to the scale of the operation key is read out. On the other hand, the result data of the binary adder/subtractor 63 is applied to the ROM 65, and a frequency modulation code α for changing the frequency of the generated musical tone up to a semitone according to equal temperament is read out. That is, as is obvious from equation (5) or equation (8), if the frequency modulation code α changes, the frequency 0 of the generated musical tone also changes, and frequency modulation such as vibrato is performed.

第8図の実施例の場合、音階周波数コードβ′、
周波数変調コードα′は共にバイナリデータによつ
て表現され印加されるから、バイナリ加減算器6
6は両コードβ′,α′を加算または減算してその結
果データの上位N−nビツトをROM67へ供給
し、また下位nビツトをROM68に供給する。
したがつてROM67からは音階に対応した音階
周波数コードβが読出され、またROM68から
変化する周波数変調コードαが読出される。
In the case of the embodiment shown in FIG. 8, the scale frequency code β′,
Since both frequency modulation codes α' are expressed and applied as binary data, the binary adder/subtractor 6
6 adds or subtracts both codes β' and α', and supplies the upper N-n bits of the resulting data to the ROM 67, and supplies the lower n bits to the ROM 68.
Therefore, the scale frequency code β corresponding to the musical scale is read from the ROM 67, and the varying frequency modulation code α is read from the ROM 68.

第9図の実施例の場合、バイナリ加減算器69
は音階周波数コードβ′および周波数変調コード
α′を加算または減算してその結果データの上位N
−nビツトをROM70に印加し、また下位nビ
ツトのデータYをバイナリ加減算器71に印加す
る。したがつてROM70からは音階に対応した
音階周波数コードβが読出される。他方、バイナ
リ加減算器71の他端には周波数変調をかけない
ときの周波数変調コードα(一定値)と同一の値
をもつデータXがCPU3から出力し印加される。
而してこのデータXは上記式(1)にしたがつて算出
される。したがつてバイナリ加減算器の結果デー
タX+YまたはX−Yによる周波数変調コードα
が出力する。
In the case of the embodiment of FIG. 9, the binary adder/subtractor 69
is the top N of the resulting data by adding or subtracting the scale frequency code β' and the frequency modulation code α'
-n bits are applied to the ROM 70, and lower n bits of data Y are applied to the binary adder/subtracter 71. Therefore, the scale frequency code β corresponding to the scale is read out from the ROM 70. On the other hand, data X having the same value as the frequency modulation code α (constant value) when no frequency modulation is applied is output from the CPU 3 and applied to the other end of the binary adder/subtractor 71.
This data X is calculated according to the above equation (1). Therefore, the frequency modulation code α by the binary adder/subtractor result data X+Y or X−Y
outputs.

第10図の実施例の場合、バイナリ加減算器7
2には第9図のバイナリ加減算器69同様にバイ
ナリデータによる音階周波数コードβ′、周波数変
調コードα′、加算指令または減算指令が夫々印加
される。そしてその結果データの上位N−nビツ
トのデータがROM73に印加され、また下位n
ビツトのデータがデコーダ74に印加される。し
たがつてROM73からは音階に対応した音階周
波数コードβが読出される。他方、デコーダ74
は下位nビツトのデータをオール“0”としたと
きの値をもつデータXに関し、上記式(3)により算
出されるデータYを出力する。そしてデータXの
下位ビツトにデータYを付加したデータが周波数
変調コードαとして出力する。したがつてデータ
Yの変化に応じて変化する周波数変調コードαに
より周波数変調が行われる。
In the case of the embodiment of FIG. 10, the binary adder/subtractor 7
Similar to the binary adder/subtractor 69 in FIG. 9, the scale frequency code β', the frequency modulation code α', and an addition command or a subtraction command based on binary data are applied to the adder/subtractor 2, respectively. Then, the upper N-n bits of the resulting data are applied to the ROM 73, and the lower n
Bit data is applied to decoder 74. Therefore, the scale frequency code β corresponding to the scale is read out from the ROM 73. On the other hand, the decoder 74
outputs data Y calculated by the above equation (3) with respect to data X having a value when the data of the lower n bits are all "0". Then, data obtained by adding data Y to the lower bits of data X is output as a frequency modulation code α. Therefore, frequency modulation is performed using a frequency modulation code α that changes according to changes in data Y.

第11図の実施例の場合、スイツチ部2上のス
イツチ操作によりビブラート深さを指定する。ま
た、いま半音階的なビブラートを掛けないときに
は他のスイツチをそのように操作し、信号aを
“1”として出力しゲート回路Gを開成させる。
この結果、キーオン後はそのキーの音階周波数コ
ードβ′が出力して平均率周波数演算器76に印加
される。また乗算器75においてビブラート波形
とビブラート深さ指定の各信号が乗算され、その
結果データの上位ビツトは直接、また下位の半音
に相当するビツトはゲート回路Gを介して平均律
周波数演算器76に周波数変調コードα′として印
加される。したがつて平均律周波数演算器76で
は第8図の実施例回路の動作にしたがつて平均律
周波数演算が実行され、音階周波数コードβと周
波数変調コードαが出力する。而してこのビブラ
ートは全音階にわたつて同一深さ、同一速さで変
化する。
In the case of the embodiment shown in FIG. 11, the vibrato depth is designated by operating a switch on the switch section 2. Furthermore, when chromatic vibrato is not to be applied, the other switches are operated in the same way, and the signal a is output as "1" to open the gate circuit G.
As a result, after the key is turned on, the scale frequency code β' of that key is output and applied to the average rate frequency calculator 76. In addition, the vibrato waveform and each signal specifying the vibrato depth are multiplied in the multiplier 75, and as a result, the upper bits of the data are directly sent, and the lower bits corresponding to semitones are sent to the equal tempered frequency calculator 76 via the gate circuit G. It is applied as a frequency modulation code α'. Therefore, the equal temperament frequency calculator 76 executes the equal temperament frequency calculation according to the operation of the embodiment circuit shown in FIG. 8, and outputs a scale frequency code β and a frequency modulation code α. This vibrato changes at the same depth and speed across the whole tone scale.

他方、半音階的なビブラートを掛けるときには
所定スイツチをそのように操作し、“0”の信号
aを出力してゲート回路Gを閉成しておく。この
ため乗算器75から出力する結果データの半音に
相当する下位ビツトのデータはオール“0”とし
て平均律周波数演算器76に印加される。したが
つて平均律周波数演算器76から出力する周波数
変調コードαは半音階的なビブラートを付与する
ような変化を示す値として出力する。
On the other hand, when applying a chromatic vibrato, a predetermined switch is operated in that manner, and a signal a of "0" is output to close the gate circuit G. Therefore, the lower bit data corresponding to a semitone of the result data output from the multiplier 75 is applied to the equal tempered frequency calculator 76 as all "0". Therefore, the frequency modulation code α output from the equal-tempered frequency calculator 76 is output as a value indicating a change that imparts a chromatic vibrato.

第12図の実施例の場合、モノフオニツク演奏
時にポルタメント効果を得るときにはこの実施例
回路が動作する。即ち、前回のキーのオフ操作後
今回のキーをオンするとそのキーのコードNEW
KEY CODEが出力し、比較回路77の端子Tに
印加される。このとき比較回路77の端子Sには
前回の操作キーのコードが印加されており、した
がつて比較回路77は両コードの大小関係を比較
する。いま前回のキーの音高より今回のキーの音
高が低いときには、比較回路77は端子S>Tか
ら“1”レベルの信号を出力してバイナリ加減算
器79の制御端子(−)に印加し、減算指令を与
える。また比較回路77は端子S≠Tからいま
“1”レベルの信号を出力し、アンドゲート78
を開成する。したがつてバイナリ加減算器79は
アンドゲート78を介し信号EXECUTEが入力
するごとに−1動作を行い、前回のキーのコード
が1ずつ減少する。また、いま信号aは“1”と
して出力中とする。したがつてROM81には上
記減算動作による結果データの上位N−nビツト
が印加され、またROM82には下位nビツトが
印加され、夫々、音階周波数コードβ、周波数変
調コードαが読出される。而してこの場合の周波
数変調コードαは平均率にしたがつて順次周波数
が小さくなる変化を示す。他方、若しも上記信号
aを“0”として出力させておくと周波数変調コ
ードαは半音階的に周波数が小さくなる変化を示
す。そして比較回路77が両端子S,Tの各コー
ドの一致を検出すると端子S≠Tから“0”レベ
ルの信号を出力してアンドゲート78を閉成し、
バイナリ加減算器79の減算動作が停止する。即
ち、以上の動作によつて高音側から低音側へのポ
ルタメント動作が完了する。
In the case of the embodiment shown in FIG. 12, this embodiment circuit operates when obtaining a portamento effect during monophonic performance. In other words, when the current key is turned on after the previous key was turned off, the code for that key is NEW.
KEY CODE is output and applied to terminal T of comparison circuit 77. At this time, the code of the previous operation key is applied to the terminal S of the comparison circuit 77, so the comparison circuit 77 compares the magnitude relationship between the two codes. When the pitch of the current key is lower than the pitch of the previous key, the comparator circuit 77 outputs a "1" level signal from the terminal S>T and applies it to the control terminal (-) of the binary adder/subtractor 79. , gives a subtraction command. Furthermore, the comparator circuit 77 now outputs a “1” level signal from the terminal S≠T, and the AND gate 78
to open. Therefore, the binary adder/subtractor 79 performs a -1 operation each time the signal EXECUTE is input through the AND gate 78, and the code of the previous key is decreased by one. Also, it is assumed that the signal a is currently being output as "1". Therefore, the upper N-n bits of the result data from the above subtraction operation are applied to the ROM 81, and the lower n bits are applied to the ROM 82, so that the scale frequency code .beta. and the frequency modulation code .alpha. are read out, respectively. In this case, the frequency modulation code α exhibits a change in which the frequency decreases in accordance with the average rate. On the other hand, if the signal a is outputted as "0", the frequency modulation code α shows a change in which the frequency decreases chromatically. When the comparison circuit 77 detects a match between the respective codes of both terminals S and T, it outputs a "0" level signal from the terminal S≠T and closes the AND gate 78.
The subtraction operation of the binary adder/subtractor 79 stops. That is, the above operation completes the portamento operation from the treble side to the bass side.

他方、前回のキーの音高より今回のキーの音高
が高いときには比較回路77は端子S>Tから
“0”レベルの信号を出力してバイナリ加減算器
79に加算指令を与える。このためバイナリ加減
算器79は比較回路77が両端子S,Tの各デー
タが一致するまでの間+1動作を実行し、これに
応じてROM81からは操作キーの音階に対する
音階周波数コードβが出力し、またROM82か
らは周波数変調コードαが出力し平均率にしたが
つて周波数が順次大きくなる変化を示す。またい
ま信号aを“0”レベルとしておけば周波数変調
コードαの変化は半音階的に周波数が増大するよ
うな変化を示すことになる。而してこの音階が変
化する速さは、全音域にわたり均一になつてい
る。
On the other hand, when the pitch of the current key is higher than the pitch of the previous key, the comparison circuit 77 outputs a "0" level signal from the terminal S>T to give an addition command to the binary adder/subtractor 79. Therefore, the binary adder/subtractor 79 executes a +1 operation until the comparator circuit 77 matches the data at both terminals S and T, and in response, the ROM 81 outputs the scale frequency code β for the scale of the operation key. , a frequency modulation code α is output from the ROM 82, and shows a change in which the frequency increases sequentially in accordance with the average rate. Furthermore, if the signal a is set to the "0" level, the change in the frequency modulation code α will show a change in which the frequency increases chromatically. The speed at which this scale changes is uniform throughout the entire range.

第13図の実施例の場合、いまUPのグライド
効果を得るときにはスイツチ部2のスイツチをそ
のように操作する。またグライド幅の大きさをそ
のスイツチにより指定する。そしてキーをオンす
るとそのキーオン時に1発信号NEW KEY ON
(“1”)が出力してゲート回路G1,G2、トランス
フアーゲート91が共に開成する。従つて、バイ
ナリ加減算器84はNEW KEY ON時、減算器
として機能する。また上記キーオン時からコード
NEW KEY CODEがゲート回路G1を介しバイナ
リ加減算器84の一端に印加される。またバイナ
リ加減算器84の他端にはゲート回路G2を介し
グライド幅が印加され、したがつて上記キーオン
時にバイナリ加減算器84はコードNEW KEY
CODEからグライド幅を減算し、その結果データ
をフリツプフロツプ85に印加する。
In the case of the embodiment shown in FIG. 13, when obtaining the UP glide effect, the switch of the switch section 2 is operated in this manner. In addition, the size of the glide width is specified by the switch. Then, when you turn on the key, a one-shot signal NEW KEY ON occurs when the key is turned on.
(“1”) is output, and gate circuits G 1 , G 2 and transfer gate 91 are both opened. Therefore, the binary adder/subtractor 84 functions as a subtracter when NEW KEY is ON. Also, the code from the above key on
NEW KEY CODE is applied to one end of the binary adder/subtractor 84 via gate circuit G1 . Furthermore, the glide width is applied to the other end of the binary adder/subtractor 84 via the gate circuit G2, so that when the key is turned on, the binary adder/subtractor 84 receives the code NEW KEY.
The glide width is subtracted from CODE and the resulting data is applied to flip-flop 85.

上記1発信号NEW KEY ONの出力後はイン
バータ88の出力が“1”レベルに反転し、トラ
ンスフアーゲート90,92、ゲート回路G3
開成する。したがつて上記結果データは比較回路
83の端子Sに印加されるほか、バイナリ加減算
器84の一端にゲート回路G3を介し印加される。
比較回路83は以後、端子S,Tの各データの比
較を行つて端子S>Tから“0”レベルの信号を
出力し、バイナリ加減算器84の制御端子(−)
にトランスフアーゲート92を介し与えて加算命
令とする。また比較回路83は端子S≠Tから
“1”レベルの信号を出力してアンドゲート89
を開成し、信号EXECUTEが該アンドゲート8
9、トランスフアーゲート90を介しバイナリ加
減算器84の他端に印加する。このためバイナリ
加減算器84は信号EXECUTEの入力毎に上記
結果データに対し+1動作を実行する。そしてそ
の各結果データの上位N−nビツトはROM86
に与えられ、また下位nビツトはROM87に与
えられる。したがつてROM86からはその音階
周波数コードβが読出される。またROM87か
らは平均率にしたがつて周波数が順次大きくなる
ような変化を示す周波数変調コードαが読出さ
れ、UPのグライド効果が得られる。そして比較
回路83が両端子S,Tのデータの一致を検出す
ると端子S≠Tから“0”レベルの信号を出力し
てアンドゲート89を閉成し、UPのグライド効
果の発生動作が停止する。
After the one-shot signal NEW KEY ON is output, the output of the inverter 88 is inverted to the "1" level, and the transfer gates 90, 92 and gate circuit G3 are opened. Therefore, the result data is applied to the terminal S of the comparator circuit 83 as well as to one end of the binary adder/subtractor 84 via the gate circuit G3 .
Thereafter, the comparison circuit 83 compares each data of the terminals S and T, outputs a "0" level signal from the terminal S>T, and outputs a "0" level signal from the terminal S>T, and outputs a "0" level signal from the control terminal (-) of the binary adder/subtractor 84.
is given through the transfer gate 92 as an addition instruction. Furthermore, the comparator circuit 83 outputs a “1” level signal from the terminal S≠T, and the AND gate 89
The AND gate 8 is opened and the signal EXECUTE is
9, applied to the other end of the binary adder/subtractor 84 via the transfer gate 90. Therefore, the binary adder/subtractor 84 performs a +1 operation on the result data each time the signal EXECUTE is input. The upper N-n bits of each result data are stored in the ROM 86.
The lower n bits are provided to the ROM 87. Therefore, the scale frequency code β is read out from the ROM 86. Further, a frequency modulation code α is read out from the ROM 87, and the frequency modulation code α exhibits a change in which the frequency increases sequentially according to the average rate, and an UP glide effect is obtained. When the comparison circuit 83 detects a match between the data at both terminals S and T, it outputs a "0" level signal from the terminal S≠T, closes the AND gate 89, and stops the UP glide effect generation operation. .

他方、DOWNのグライド効果を得るときには
そのようにスイツチを操作する。そしてキーをオ
ンすると1発信号NEW KEY ONの出力時にバ
イナリ加減算器84はコードNEW KEY CODE
に対しグライド幅の加算動作を実行し、その結果
データをフリツプフロツプ85に印加する。そし
て以後はバイナリ加減算器84は上記結果データ
に対し信号EXECUTEの出力毎に−1動作を実
行し、その値は1ずつ減少してゆく。このため
ROM86からはその音階周波数コードβが読出
される一方、ROM87からは平均率にしたがつ
て周波数が順次小さくなるような変化を示す周波
数変調コードαが読出され、DOWNのグライド
効果が得られる。而して、音階が変化する速さ
は、全音域にわたり一定となつている。
On the other hand, when you want to get the DOWN glide effect, operate the switch like that. Then, when the key is turned on, the binary adder/subtractor 84 outputs the code NEW KEY CODE when the single signal NEW KEY ON is output.
The glide width addition operation is performed on the glide width, and the resulting data is applied to the flip-flop 85. Thereafter, the binary adder/subtractor 84 performs a -1 operation on the result data each time the signal EXECUTE is output, and the value decreases by one. For this reason
The scale frequency code β is read from the ROM 86, while the frequency modulation code α showing a change in which the frequency becomes smaller in accordance with the average rate is read from the ROM 87, thereby obtaining a DOWN glide effect. Therefore, the speed at which the scale changes is constant over the entire range.

以上説明した矩形波、PWM波、鋸歯状波の生
成動作においては、キーボード1上のキーが1個
だけオンされた場合につき説明したが、この実施
例ではミユージツクシンセサイザを8音のポリフ
オニツク用としたから、最大8個までのキーが同
時にオンされた場合においても、第1図および第
2図の各回路は8チヤンネルの時分割処理動作に
よつて各キーに対する上記基本波を同時生成する
ことができるが、その詳細説明は省略する。
The operations for generating square waves, PWM waves, and sawtooth waves explained above are based on the case where only one key on the keyboard 1 is turned on, but in this example, the music synthesizer is used for eight-note polyphonic. Therefore, even if up to eight keys are turned on at the same time, each circuit in FIGS. 1 and 2 can simultaneously generate the fundamental wave for each key by time-sharing processing operation of 8 channels. can be done, but detailed explanation thereof will be omitted.

なお、上記実施例では基本波を矩形波、PWM
波、鋸歯状波の3種類としたが、三角波、傾斜波
等、他の基本波を利用することができる。また基
本波の振幅レベルが急変する個所の補間を正弦波
により行つたが、2次関数、3次関数、指数関
数、三角関係等、他の関数曲線を利用してもよ
い。また上記実施例ではROM23に1/4周期の
正弦波を記憶したが、1周期あるいは1/2周期の
正弦波であつてもよい。またこの発明はミユージ
ツクシンセサイザに限らず、その他の電子楽器に
も利用できることは勿論であり、本発明の主旨を
逸脱しない範囲内で種々変形応用可能である。
In addition, in the above example, the fundamental wave is a rectangular wave, PWM
Although the three types of fundamental waves are waves and sawtooth waves, other fundamental waves such as triangular waves and slope waves can be used. Further, although the interpolation at the point where the amplitude level of the fundamental wave suddenly changes is performed using a sine wave, other function curves such as a quadratic function, a cubic function, an exponential function, a trigonometric relationship, etc. may be used. Further, in the above embodiment, a 1/4 period sine wave is stored in the ROM 23, but it may be a 1 period or 1/2 period sine wave. Furthermore, it goes without saying that the present invention can be used not only for music synthesizers but also for other electronic musical instruments, and can be modified and applied in various ways without departing from the spirit of the present invention.

この発明は以上説明したように音階周波数を表
すセント単位の音階周波数コードと、この音階周
波数を任意のセント幅で変調するためのセント単
位の周波数変調コードとを加減算することによ
り、新たなセント単位の音階周波数コードを得、
この新たなセント単位の音階周波数コードを半音
以上の周波数を表す第1の周波数情報と、半音以
内の周波数を表す第2の周波数情報とに変換し、
減算手段によつて上記第1の周波数情報を初期値
として、この初期値から上記第2の周波数情報を
繰り返し減算し、この減算値が所定値、たとえば
零になつた時、再び上記第1の周波数情報をプリ
セツトしてから上記第2の周波数情報を繰り返し
減算するといつた動作を繰り返し実行し、この減
算手段の出力値が所定値になるまでを1周期とす
る波形を作成するようにしたので、簡単な構成で
プラス側とマイナス側とに均等な周波数変調が行
え、しかも半音以上の周波数変調も容易に行え、
更には、ポルタメント効果、グライド効果も容易
に行えるようにした電子楽器の周波数制御装置を
提供したから、平均律にしたがつてプラス側とマ
イナス側とは均等な周波数変調が容易に行え、極
めて自然なビブラート効果等が得られるほか、自
然なポルタメント効果、グライド効果等も得られ
る利点がある。またその演算処理は簡単であるか
ら、ハードの構成も簡単となり、電子楽器の小型
化等に寄与できる利点もある。
As explained above, this invention creates a new cent unit by adding or subtracting a scale frequency code in cents representing a scale frequency and a frequency modulation code in cents for modulating this scale frequency with an arbitrary cent width. Obtain the scale frequency code of
Converting this new scale frequency code in cents into first frequency information representing a frequency of a semitone or more and second frequency information representing a frequency within a semitone,
Using the first frequency information as an initial value, the subtraction means repeatedly subtracts the second frequency information from this initial value, and when the subtracted value reaches a predetermined value, for example, zero, the first frequency information is subtracted again. After presetting the frequency information, the above-mentioned second frequency information is repeatedly subtracted, and a waveform is created in which one cycle is the period until the output value of the subtraction means reaches a predetermined value. With a simple configuration, it is possible to perform equal frequency modulation on the plus side and minus side, and it is also possible to easily perform frequency modulation of more than a semitone.
Furthermore, since we have provided a frequency control device for electronic musical instruments that allows portamento and glide effects to be easily performed, it is possible to easily perform equal frequency modulation on the plus side and minus side according to equal temperament, making it extremely natural. It has the advantage of not only providing a natural vibrato effect, but also natural portamento and glide effects. Furthermore, since the calculation process is simple, the hardware configuration is also simple, which has the advantage of contributing to miniaturization of electronic musical instruments.

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

第1図はこの発明の一実施例によるミユージツ
クシンセサイザのシステム図、第2図はウエイブ
ジエネレータ5の具体的回路図、第3図はROM
23の記憶波形図、第4図は矩形波の生成動作を
説明するタイムチヤート、第5図はPWM波の生
成動作を説明するタイムチヤート、第6図は鋸歯
状波の生成動作を説明するタイムチヤート、第7
図ないし第13図は周波数変調を行うための各種
実施例の回路図である。 1……キーボード、2……スイツチ部、3……
CPU、4……平均律周波数演算部、5……ウエ
イブジエネレータ、6……デイジタルフイルタ、
7……エンベロープジエネレータ、8……デイジ
タル/アナログ変換器、15,16,30……フ
ルアダー、17……シフトレジスタ、1815〜1
0……アンドゲート、208〜200,276〜2
0……排他的オアゲート、21−7〜21−1
……インバータ、22−6〜22−1……アンド
ゲート、23……ROM、246〜240……オア
ゲート、26,29,33,35,347〜34
,467〜460……トランスフアーゲート、3
1……インバータ、32……極性反転回路、4
1,45……減算回路、42……乗算回路、43
……加減算回路、44……除算回路、G1,G2
…ゲート回路、61,63,66,69,71,
72,79,84……バイナリ加減算器、62…
…12進加減算器、64,65,67,68,7
0,73,74,81,82,86,87……
ROM、74……デコーダ、75……乗算器、7
6……平均律周波数演算器、77,83……比較
回路、80,85……フリツプフロツプ、G,
G1〜G3……ゲート、88……インバータ、89
……アンドゲート、90〜92……トランスフア
ーゲート。
FIG. 1 is a system diagram of a music synthesizer according to an embodiment of the present invention, FIG. 2 is a specific circuit diagram of the wave generator 5, and FIG. 3 is a ROM
Figure 4 is a time chart explaining the rectangular wave generation operation, Figure 5 is a time chart explaining the PWM wave generation operation, and Figure 6 is a time chart explaining the sawtooth wave generation operation. Chaat, 7th
1 to 13 are circuit diagrams of various embodiments for performing frequency modulation. 1...Keyboard, 2...Switch part, 3...
CPU, 4... Equal tempered frequency calculation section, 5... Wave generator, 6... Digital filter,
7... Envelope generator, 8... Digital/analog converter, 15, 16, 30... Full adder, 17... Shift register, 18 15 ~ 1
8 0 ...and gate, 20 8 ~ 20 0 , 27 6 ~ 2
7 0 ...Exclusive or gate, 21-7~21-1
... Inverter, 22-6 to 22-1 ... AND gate, 23 ... ROM, 24 6 to 24 0 ... OR gate, 26, 29, 33, 35, 34 7 to 34
0,46 7 ~46 0 ...Transfer gate, 3
1... Inverter, 32... Polarity inversion circuit, 4
1, 45... Subtraction circuit, 42... Multiplication circuit, 43
... Addition and subtraction circuit, 44 ... Division circuit, G 1 , G 2 ...
...Gate circuit, 61, 63, 66, 69, 71,
72, 79, 84...Binary adder/subtractor, 62...
...Decimal adder/subtractor, 64, 65, 67, 68, 7
0,73,74,81,82,86,87...
ROM, 74...decoder, 75...multiplier, 7
6... Equal tempered frequency calculator, 77, 83... Comparison circuit, 80, 85... Flip-flop, G,
G 1 ~ G 3 ... Gate, 88 ... Inverter, 89
...and gate, 90-92...transfer gate.

Claims (1)

【特許請求の範囲】 1 半音を単位とするコード部と半音未満のコー
ド部とを含み、出力すべき音階周波数を表すセン
ト単位の音階周波数コードと、半音を単位とする
コード部と半音未満のコード部とを含み、上記音
階周波数コードにて指定される音階周波数を任意
のセント幅で変調するためのセント単位の周波数
変調コードとを発生するコード発生手段と、 このコード発生手段から発生される上記音階周
波数コードと上記周波数変調コードとを加減算す
ることによつて、半音を単位とするコード部と半
音未満のコード部とを含む周波数変調コードに応
じて順次推移する新たなセント単位の音階周波数
コードを得る加減算手段と、 この加減算手段から出力する上記新たなセント
単位の音階周波数コードを、半音以上の周波数を
表す第1の周波数情報及び半音以内の周波数を表
す第2の周波数情報に変換出力する周波数情報出
力手段と、 この周波数情報出力手段からの上記第1の周波
数情報を初期値として、この初期値から上記第2
の周波数情報を繰り返し減算する減算手段と、 この減算手段の出力値が所定値になつた際、再
び上記周波数情報出力手段から上記第1の周波数
情報を上記減算手段に供給して繰り返し減算を行
うように制御する制御手段と を具備し、上記減算手段の出力値が所定値になる
までを一周期とする楽音波形を作成することを特
徴とする電子楽器の周波数制御装置。 2 上記コード発生手段から上記周波数変調コー
ドが周期的に変化して上記加減算手段に与えられ
ることにより周波数変調が指定されると、上記周
波数情報出力手段は、上記加減算手段からの新た
なセント単位の上記音階周波数コードに従つて周
期的に変化する上記第1、第2の周波数情報を上
記減算手段に与えるようにしたことを特徴とする
特許請求の範囲第1項記載の電子楽器の周波数制
御装置。 3 上記コード発生手段から上記周波数変調コー
ドが半音単位で周期的に変化して上記加減算手段
に与えられることにより周波数変調が指定される
と、上記周波数情報出力手段は、上記加減算手段
からの新たなセント単位の上記音階周波数コード
に従つて上記第1の周波数情報のみを半音毎に周
期的に変化して上記減算手段に与えるようにした
ことを特徴とする特許請求の範囲第1項記載の電
子楽器の周波数制御装置。 4 上記コード発生手段から上記周波数変調コー
ドが、発音中の楽音の音高を指定する値から新た
に発音すべき楽音の音高を指定する値へ順次変化
して上記加減算手段に与えられることによりポル
タメント演奏が指定されると、上記周波数情報出
力手段は、上記加減算手段からの順次変化する新
たなセント単位の上記音階周波数コードに従つ
て、上記発音中の楽音に対する上記第1、第2の
周波数情報から、上記新たな発音すべき楽音に対
する上記第1、第2の周波数情報に順次変化せし
めて、上記減算手段に供給するようにしたことを
特徴とする特許請求の範囲第1項記載の電子楽器
の周波数制御装置。 5 上記コード発生手段から上記周波数変調コー
ドが、発音中の楽音の音高を指定する値から新た
に発音すべき楽音の音高を指定する値へ半音単位
で順次変化して上記加減算手段に与えられること
により半音単位のポルタメント演奏が指定される
と、上記周波数情報出力手段は、上記加減算手段
からの順次変化する新たなセント単位の上記音階
周波数コードに従つて、上記発音中の楽音に対す
る上記第1の周波数情報から、上記新たに発音す
べき楽音に対する上記第1の周波数情報まで、上
記第1の周波数情報のみを半音毎に順次変化せし
めて、上記減算手段に供給するようにしたことを
特徴とする特許請求の範囲第1項記載の電子楽器
の周波数制御装置。 6 上記コード発生手段から上記周波数変調コー
ドが、所定のグライド幅を表す値から零まで順次
変化して上記加減算手段に与えられることにより
グライド演奏が指定されると、上記周波数情報出
力手段は、上記加減算手段からの順次変化する新
たなセント単位の上記音階周波数コードに従つ
て、上記所定のグライド幅を持つ楽音の音高に対
応する上記第1、第2の周波数情報から発音すべ
き楽音の音高に対応する上記第1、第2の周波数
情報に順次変化せしめて、上記減算手段に供給す
るようにしたことを特徴とする特許請求の範囲第
1項記載の電子楽器の周波数制御装置。 7 上記コード発生手段から上記周波数変調コー
ドが、所定のグライド幅を表す値から零まで順次
半音単位で変化して上記加減算手段に与えられる
ことによりグライド演奏が指定されると、上記周
波数情報出力手段は、上記加減算手段からの順次
変化する新たなセント単位の上記音階周波数コー
ドに従つて、上記所定のグライド幅をもつ楽音の
音高に対応する上記第1の周波数情報から発音す
べき楽音の音高に対応する上記第1の周波数情報
まで、上記第1の周波数情報のみを半音毎に順次
変化せしめて、上記減算手段に供給するようにし
たことを特徴とする特許請求の範囲第1項記載の
電子楽器の周波数制御装置。
[Scope of Claims] 1. A scale frequency code in cents representing the scale frequency to be output, including a chord part in units of semitones and a chord part in units of less than semitones, a chord part in units of semitones, and a chord part in units of less than semitones. code generating means for generating a frequency modulation code in cent units for modulating the scale frequency specified by the scale frequency code with an arbitrary cent width; By adding and subtracting the scale frequency code and the frequency modulation code, a new scale frequency in units of cents is created that changes sequentially according to the frequency modulation code including a code part in units of semitones and a code part in units of less than a semitone. an addition/subtraction means for obtaining a chord; converting and outputting the new scale frequency code in cents output from the addition/subtraction means into first frequency information representing a frequency of a semitone or more and second frequency information representing a frequency within a semitone; a frequency information output means for outputting frequency information, and using the first frequency information from the frequency information output means as an initial value, from this initial value to the second frequency information
subtracting means for repeatedly subtracting frequency information from the subtracting means; and when the output value of the subtracting means reaches a predetermined value, the first frequency information is supplied from the frequency information outputting means to the subtracting means again to repeatedly subtract. What is claimed is: 1. A frequency control device for an electronic musical instrument, comprising: control means for controlling the frequency so that the subtracting means outputs a predetermined value; 2. When frequency modulation is designated by periodically changing the frequency modulation code from the code generation means and giving it to the addition/subtraction means, the frequency information output means receives the new cent unit from the addition/subtraction means. The frequency control device for an electronic musical instrument according to claim 1, wherein the first and second frequency information that changes periodically according to the scale frequency code is supplied to the subtraction means. . 3. When frequency modulation is specified by periodically changing the frequency modulation code in semitone units from the code generating means and giving it to the adding/subtracting means, the frequency information outputting means receives the new frequency modulation code from the adding/subtracting means. 2. The electronic device according to claim 1, wherein only the first frequency information is periodically changed by semitones in accordance with the scale frequency code in units of cents and is provided to the subtracting means. Musical instrument frequency control device. 4. The frequency modulation code from the code generation means is sequentially changed from a value specifying the pitch of the musical tone being generated to a value specifying the pitch of the musical tone to be newly generated, and is applied to the addition/subtraction means. When portamento performance is specified, the frequency information output means outputs the first and second frequencies for the musical tone being sounded, according to the new scale frequency code in cent units that changes sequentially from the addition/subtraction means. The electronic device according to claim 1, wherein the first and second frequency information for the new musical tone to be generated are sequentially changed from the information and supplied to the subtracting means. Musical instrument frequency control device. 5. The frequency modulation code from the code generation means is applied to the addition/subtraction means while changing sequentially in semitone units from a value specifying the pitch of the musical tone currently being generated to a value specifying the pitch of the musical tone to be newly generated. When a portamento performance in semitone units is specified by the above, the frequency information output means outputs the frequency information for the musical tone being sounded in accordance with the new scale frequency code in cent units that changes sequentially from the addition/subtraction means. 1 to the first frequency information for the musical tone to be newly generated, only the first frequency information is sequentially changed every semitone and is supplied to the subtracting means. A frequency control device for an electronic musical instrument according to claim 1. 6. When glide performance is designated by the frequency modulation code being sequentially changed from a value representing a predetermined glide width to zero from the code generating means to the adding/subtracting means, the frequency information outputting means According to the new scale frequency code in units of cents that changes sequentially from the addition/subtraction means, the tone of the musical tone to be produced from the first and second frequency information corresponding to the pitch of the musical tone having the predetermined glide width. 2. The frequency control device for an electronic musical instrument according to claim 1, wherein said first and second frequency information corresponding to a high frequency are sequentially changed and supplied to said subtraction means. 7. When glide performance is designated by the frequency modulation code from the code generating means being sequentially changed in semitone units from a value representing a predetermined glide width to zero and being given to the adding/subtracting means, the frequency information outputting means is the tone of the musical tone to be produced from the first frequency information corresponding to the pitch of the musical tone having the predetermined glide width, according to the new scale frequency code in units of cents that changes sequentially from the addition/subtraction means. Claim 1, characterized in that only the first frequency information is sequentially changed by semitones until the first frequency information corresponding to high is supplied to the subtracting means. Frequency control device for electronic musical instruments.
JP56208816A 1981-12-22 1981-12-22 Frequency controller for electronic musical instrument Granted JPS58108587A (en)

Priority Applications (6)

Application Number Priority Date Filing Date Title
JP56208816A JPS58108587A (en) 1981-12-22 1981-12-22 Frequency controller for electronic musical instrument
GB08235445A GB2113447B (en) 1981-12-22 1982-12-13 Tone signal generating apparatus of electronic musical instruments
US06/450,082 US4479411A (en) 1981-12-22 1982-12-15 Tone signal generating apparatus of electronic musical instruments
DE19823249738 DE3249738C2 (en) 1981-12-22 1982-12-22
DE3247599A DE3247599C2 (en) 1981-12-22 1982-12-22 Sound signal generating device for electronic musical instruments
GB08501057A GB2161310B (en) 1981-12-22 1985-01-16 Tone signal generating apparatus for electronic musical instruments

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP56208816A JPS58108587A (en) 1981-12-22 1981-12-22 Frequency controller for electronic musical instrument

Publications (2)

Publication Number Publication Date
JPS58108587A JPS58108587A (en) 1983-06-28
JPS6322312B2 true JPS6322312B2 (en) 1988-05-11

Family

ID=16562595

Family Applications (1)

Application Number Title Priority Date Filing Date
JP56208816A Granted JPS58108587A (en) 1981-12-22 1981-12-22 Frequency controller for electronic musical instrument

Country Status (1)

Country Link
JP (1) JPS58108587A (en)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS60147792A (en) * 1984-01-11 1985-08-03 カシオ計算機株式会社 Frequency control system for electronic musical instrument
JPS6132896A (en) * 1984-07-25 1986-02-15 カシオ計算機株式会社 Frequency control system for electronic musical instrument
JPS6145288A (en) * 1984-08-09 1986-03-05 カシオ計算機株式会社 Electronic musical instrument
JPH07101352B2 (en) * 1987-09-22 1995-11-01 ヤマハ株式会社 Music signal generator

Also Published As

Publication number Publication date
JPS58108587A (en) 1983-06-28

Similar Documents

Publication Publication Date Title
JPS6029959B2 (en) electronic musical instruments
US5340938A (en) Tone generation apparatus with selective assignment of one of tone generation processing modes to tone generation channels
US4479411A (en) Tone signal generating apparatus of electronic musical instruments
US5038661A (en) Waveform generator for electronic musical instrument
JPS6322312B2 (en)
US4677889A (en) Harmonic interpolation for producing time variant tones in an electronic musical instrument
EP0124197B1 (en) Waveform table modification instrument and method for generating musical sound
JPH0225515B2 (en)
US4658691A (en) Electronic musical instrument
JPS6035077B2 (en) electronic musical instruments
US4468996A (en) Note group selectable musical effects in an electronic musical instrument
JPH0522918B2 (en)
US4446769A (en) Combination tone generator for a musical instrument
JP2625669B2 (en) Musical sound wave generator
JP2724591B2 (en) Harmonic coefficient generator for electronic musical instruments
JP3059617B2 (en) Envelope signal generator and electronic musical instrument using the same
JPH0740191B2 (en) Envelope generator
JPS6320358B2 (en)
JPS6325679B2 (en)
JPH0263237B2 (en)
JP2510090Y2 (en) Music signal generator
KR920006183B1 (en) Envelope data generating circuit of electronic musical instrument
JPH0233159B2 (en)
JPH045692A (en) Electronic musical instrument
JP2797140B2 (en) Musical sound wave generator