JPH0225515B2 - - Google Patents

Info

Publication number
JPH0225515B2
JPH0225515B2 JP56026996A JP2699681A JPH0225515B2 JP H0225515 B2 JPH0225515 B2 JP H0225515B2 JP 56026996 A JP56026996 A JP 56026996A JP 2699681 A JP2699681 A JP 2699681A JP H0225515 B2 JPH0225515 B2 JP H0225515B2
Authority
JP
Japan
Prior art keywords
data
sine wave
output
value data
bit
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 - Lifetime
Application number
JP56026996A
Other languages
Japanese (ja)
Other versions
JPS57142698A (en
Inventor
Takuya Sunada
Takeshi Mitarai
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 JP56026996A priority Critical patent/JPS57142698A/en
Publication of JPS57142698A publication Critical patent/JPS57142698A/en
Publication of JPH0225515B2 publication Critical patent/JPH0225515B2/ja
Granted legal-status Critical Current

Links

Landscapes

  • Electrophonic Musical Instruments (AREA)

Description

【発明の詳細な説明】 この発明は正弦波を発生する正弦波発生装置に
関する。
DETAILED DESCRIPTION OF THE INVENTION The present invention relates to a sine wave generator that generates a sine wave.

従来より正弦波を発生する正弦波発生装置は、
各種技術分野で使用されており、例えば電子楽器
の分野でも、正弦波合成方式のものがある。しか
して、例えば、このような正弦波合成方式の電子
楽器では、1周期分の正弦波の振幅値データを
ROM(リードオンリメモリ)に予め記憶してお
き、楽音作成時には、鍵盤などから入力される周
波数情報(音階情報)に応じて上記ROMをアド
レスし、これにより対応する周波数の正弦波及び
高調波の正弦波がROMから読出されて、その楽
音が作成放音されるものである。
Conventional sine wave generators that generate sine waves are
It is used in various technical fields; for example, in the field of electronic musical instruments, there is a sine wave synthesis method. For example, in such an electronic musical instrument using a sine wave synthesis method, amplitude value data of one cycle of sine waves is
It is stored in ROM (read-only memory) in advance, and when creating a musical tone, the ROM is addressed according to the frequency information (scale information) input from the keyboard etc., and thereby the sine wave and harmonic of the corresponding frequency are stored. A sine wave is read from the ROM, and a musical tone is created and emitted.

ところで従来の、この種の正弦波発生装置で
は、良好な正弦波を発生させるためには、ROM
により、多くのサンプル点の振幅値データを記憶
しておく必要があるため、ROMの記憶容量が大
きくなり、コスト高となる問題点がある一方、
ROMの記憶容量を小さくすると、良好な正弦波
を発生できない問題点がある。
By the way, in conventional sine wave generators of this type, in order to generate good sine waves, the ROM is required.
As a result, it is necessary to store amplitude value data for many sample points, which increases the storage capacity of the ROM and increases costs.
If the storage capacity of the ROM is made small, there is a problem that good sine waves cannot be generated.

この発明は、上述した事情を背景になされたも
ので、その目的とするところは、1/4周期の正弦
波のデータ具体的には各サンプル点の振幅値デー
タと各サンプル点間の差分値データとを波形メモ
リに記憶しておき、この波形メモリをアドレスし
て読出される、上記1/4周期の正弦波データから、
補間処理も行なつて1周期分の正弦波を作成する
ようにし、これにより、従来の問題点を解消した
正弦波発生装置を提供することである。
This invention was made against the background of the above-mentioned circumstances, and its purpose is to collect 1/4 period sine wave data, specifically, the amplitude value data of each sample point and the difference value between each sample point. data is stored in a waveform memory, and read out by addressing this waveform memory. From the 1/4 cycle sine wave data,
It is an object of the present invention to provide a sine wave generating device which also performs interpolation processing to create a sine wave for one cycle, thereby solving the problems of the conventional art.

以下、図面を参照してこの発明を正弦波を音階
周波数に応じて読出し、楽音を生成する電子楽器
に適用した一実施例を説明する。第1図は、この
実施例の主要回路構成を示す図であり、図中1
は、複数の演奏キーが配設されたキーボードであ
る。このキーボード1からは、操作された演奏キ
ーに対応するキーコードが発生するようになつて
いる。例えば、このキーコードは、当該演奏キー
のオクターブとノート(音階)を示すコードであ
る。
DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS An embodiment in which the present invention is applied to an electronic musical instrument that reads sine waves according to scale frequencies and generates musical tones will be described below with reference to the drawings. FIG. 1 is a diagram showing the main circuit configuration of this embodiment.
is a keyboard with multiple performance keys. The keyboard 1 generates key codes corresponding to the operated performance keys. For example, this key code is a code indicating the octave and note (scale) of the performance key.

そして、このキーコードは、周波数情報変換
ROM2に供給される。この周波数情報変換
ROM2には、キーコードに対応する周波数情報
(即ち、位相角を示す情報)が記憶されており、
この周波数情報を累算器3に於いて、累算指令0
(クロツク0については後述する。)毎に累算す
る。
And this key code is frequency information conversion
Supplied to ROM2. This frequency information conversion
The ROM2 stores frequency information (that is, information indicating the phase angle) corresponding to the key code.
This frequency information is stored in the accumulator 3 with an accumulation command of 0.
(Clock 0 will be explained later).

そして、累算器3からは、例えば12ビツトデー
タが加算器4のA入力端子A0〜A11に供給され
る。なお、上記12ビツトデータのうち、最上位ビ
ツトは符号ビツトであり、排他的オアゲート612
を介し、上記加算器4のA入力端子A11に入力さ
れている。
For example, 12-bit data is supplied from the accumulator 3 to the A input terminals A 0 -A 11 of the adder 4. Note that the most significant bit of the above 12-bit data is a sign bit, and the exclusive OR gate 6 12
The signal is input to the A input terminal A11 of the adder 4 via the adder 4.

一方、加算器4のB入力端子B0〜B11には、エ
ンベロープ情報発生回路5からの12ビツトデータ
が排他的オアゲート60〜611を介して供給され
る。また、この加算器4のキヤリー入力端子cin
には、クロツク0が供給される。
On the other hand, 12-bit data from the envelope information generating circuit 5 is supplied to the B input terminals B 0 -B 11 of the adder 4 via exclusive OR gates 6 0 -6 11 . Also, the carry input terminal cin of this adder 4
is supplied with clock 0.

上記エンベロープ情報発生回路5には、エンベ
ロープ制御指令、例えばキーボード1の演奏キー
のオン/オフ情報、あるいは予めスイツチにより
設定されたADSR(アタツク・デイケイ・サステ
イン・リリース)の各情報等が供給され、その情
報に応じて、エンベロープ制御するための12ビツ
トデータが、上記排他的オアゲート60〜611
与えられる。なお、この排他的オアゲート60
11及び上記排他的オアゲート612の各一端に
は、クロツク0が与えられる。
The envelope information generating circuit 5 is supplied with envelope control commands, such as on/off information of performance keys on the keyboard 1, or ADSR (Attack Decay Sustain Release) information set in advance by a switch, etc. According to the information, 12-bit data for envelope control is given to the exclusive OR gates 60 to 611 . Furthermore, this exclusive or gate 6 0 ~
A clock 0 is applied to one end of each of the exclusive OR gate 611 and the exclusive OR gate 612 .

従つて、このクロツク0が“0”レベルのとき
は、加算器4は、上記A入力端子と、B入力端子
から与えられる12ビツトデータを加算し、S出力
端子S0〜S11から12ビツトデータとして、その結
果データを出力する。一方、上記クロツク0が
“1”レベルのときは、加算器4は、上記A入力
端子から、上記符号ビツトのレベルのみを反転し
て与えられる12ビツトのデータと、上記B入力端
子から与えられる12ビツトのデータの各ビツトの
レベルを反転し、且つ、その値に「+1」したデ
ータ、即ち、上記B入力端子から与えられるデー
タの符号を反転したデータ(2の補数表現)とを
加算し、S出力端子から、12ビツトデータとし
て、その結果データを出力する。
Therefore, when this clock 0 is at the "0" level, the adder 4 adds the 12-bit data given from the A input terminal and the B input terminal, and adds the 12-bit data from the S output terminals S0 to S11 . Output the resulting data as data. On the other hand, when the clock 0 is at the "1" level, the adder 4 receives 12-bit data provided from the A input terminal by inverting only the level of the sign bit, and 12-bit data provided from the B input terminal. Inverts the level of each bit of the 12-bit data and adds "+1" to that value, that is, data obtained by inverting the sign of the data given from the B input terminal (two's complement representation). , S output terminals output the resulting data as 12-bit data.

加算器4から出力される、上記12ビツトデータ
は、サイン波部7に与えられ、該サイン波部7か
らサイン波の波高値(振幅値)を11ビツトデータ
D0〜D10として出力させる。なお、このサイン波
部7の具体的構成については、第2図ないし第5
図を参照して後述する。
The above 12-bit data output from the adder 4 is given to the sine wave section 7, which converts the peak value (amplitude value) of the sine wave into 11-bit data.
Output as D 0 to D 10 . The specific configuration of this sine wave section 7 is shown in FIGS. 2 to 5.
This will be described later with reference to the drawings.

サイン波部7から出力される11ビツトデータ
は、累算器8のA入力端子A0〜A10に供給される
ほか、最上位ビツト(符号ビツト)はキヤリー入
力端子Cinにも供給されて累算される。なお、累
算器8は、上記クロツク0が、インバータ9によ
り反転された信号、即ち、クロツク0の立上りの
タイミングでリセツトされる。そして、この累算
器8からは、12ビツトデータが出力端子SS0〜S11
から出力される。即ち、この12ビツトデータのう
ち、最上位ビツトS11は、符号ビツト、第2ビツ
トS10は20の位のビツト、第3ビツト乃至最下ビ
ツトS4〜S11は小数点以下のデータを示すビツト
である。
The 11-bit data output from the sine wave section 7 is supplied to the A input terminals A0 to A10 of the accumulator 8, and the most significant bit (sign bit) is also supplied to the carry input terminal Cin for accumulation. calculated. Incidentally, the accumulator 8 is reset at the timing of the rising edge of the signal obtained by inverting the clock 0 by the inverter 9, that is, the clock 0. From this accumulator 8, 12-bit data is sent to output terminals SS0 to S11.
is output from. That is, of this 12-bit data, the most significant bit S11 is the sign bit, the second bit S10 is the 20th place bit, and the third to lowest bits S4 to S11 are the data below the decimal point. This is the bit shown.

上記累算器8から出力される12ビツトデータ
は、ラツチ10にクロツク0の立上りのタイミン
グにて読込まれ、その出力データは、D/A変換
器に与えられて、アナログ信号に変換され、音響
変換回路を介して、放音されることになる。
The 12-bit data output from the accumulator 8 is read into the latch 10 at the rising edge of clock 0, and the output data is applied to the D/A converter, where it is converted into an analog signal and converted into an audio signal. The sound will be emitted via a conversion circuit.

次に、第2図ないし第5図を参照して、サイン
波部7の具体的構成を説明する。第2図は、この
サイン波部7の詳細回路図である。図中、15は
ROMで、このROM15には、第3図に示す如
き1/4周期分のサイン波の波高値(振幅値)が26
(=64)サンプル点に分割されて記憶されている。
即ち、ROM15のA入力端子A0〜A5には、上記
加算器4の出力端子S4〜S9から出力される6ビツ
トデータが、排他的オアゲート160〜165を介
し入力され、アドレス指定される。また、排他的
オアゲート160〜165の他端には、加算器4の
S出力端子S10からの出力データが夫々、印加さ
れている。そして、ROM15からは4ビツトの
差分値データ(後述)と10ビツトの波高値(振幅
値)を示すデータとが、そのD出力端子D0〜D3
D4〜D13から読出されるものである。
Next, the specific configuration of the sine wave section 7 will be explained with reference to FIGS. 2 to 5. FIG. 2 is a detailed circuit diagram of this sine wave section 7. In the figure, 15 is
The ROM 15 stores the peak value (amplitude value) of a 1/4 period sine wave as shown in Figure 3 .
It is divided into (=64) sample points and stored.
That is, the 6-bit data output from the output terminals S4 to S9 of the adder 4 is input to the A input terminals A0 to A5 of the ROM 15 via exclusive OR gates 160 to 165 , and the address It is specified. Furthermore, the output data from the S output terminal S10 of the adder 4 is applied to the other ends of the exclusive OR gates 160 to 165 , respectively. Then, 4-bit difference value data (described later) and 10-bit peak value (amplitude value) data are sent from the ROM 15 to its D output terminals D 0 to D 3 ,
This is what is read from D4 to D13 .

一方、上記加算器4のS出力端子S0〜S3からの
4ビツトデータが排他的オアゲート170〜173
を介し、乗算器18のB入力端子B0〜B3に供給
されている。そして、乗算器18のC入力端子
C0〜C3には、上記ROM15のD出力端子D0〜D3
から読出される差分値データが供給されており、
而して、この乗算器18は、各入力端子B0〜B3
C0〜C3からの各4ビツトデータを乗算し、その
結果データの上位4ビツトデータをE出力端子
E0〜E3から出力し、加算器19のF入力端子F0
〜F3へ与えている。なお、上記排他的オアゲー
ト170〜173の他端には、加算器4のS出力端
子S10からの出力データが印加されている。
On the other hand, the 4-bit data from the S output terminals S 0 to S 3 of the adder 4 are sent to the exclusive OR gates 17 0 to 17 3
are supplied to the B input terminals B 0 to B 3 of the multiplier 18 via. Then, the C input terminal of the multiplier 18
C0 to C3 are the D output terminals D0 to D3 of the ROM15.
The difference value data read from is supplied,
Thus, this multiplier 18 has respective input terminals B 0 to B 3 ,
Multiply each 4-bit data from C 0 to C 3 and send the upper 4-bit data to the E output terminal.
Output from E 0 to E 3 and F input terminal F 0 of adder 19
~F is giving to 3 . Note that the output data from the S output terminal S10 of the adder 4 is applied to the other ends of the exclusive OR gates 170 to 173 .

ここで、上記乗算器18は、第3図に示すよう
に、1/4周期分のサイン波の波高値のデータが上
述した64個のサンプル点にて、ROM15に記憶
されていることに対し、第4図に示すように、n
番目のサンプル点とn+1番目のサンプル点間の
波高値データを直線補間法によつて、補間するた
めの回路である。即ち、乗算器18のC入力端子
C0〜C3には、現在のn番目のサンプル点の波高
値データと、次のn+1番目のサンプル点の波高
値データとの差分値データが、ROM15のD出
力端子D0〜D3から出力されて供給されており、
従つて、乗算器18は、この差分値データを最大
補間値として、該最大補間値をB入力端子B0
B3に供給されるS出力端子S0〜S3からのアドレ
スデータで、上記n番目とn+1番目のサンプル
点間における16個のサンプル点の補間データを
得、その上位4ビツトデータを、加算器19のF
入力端子F0〜F3に夫々、与えているものである。
Here, as shown in FIG. 3, the multiplier 18 is configured so that the data of the peak value of the sine wave for 1/4 period is stored in the ROM 15 at the above-mentioned 64 sample points. , as shown in Figure 4, n
This is a circuit for interpolating peak value data between the th sample point and the (n+1)th sample point using a linear interpolation method. That is, the C input terminal of the multiplier 18
C 0 to C 3 contain the difference value data between the current n-th sample point's peak value data and the next n+1-th sample point's peak value data from the D output terminals D 0 to D 3 of the ROM 15. It is output and supplied,
Therefore, the multiplier 18 uses this difference value data as the maximum interpolation value and outputs the maximum interpolation value to the B input terminals B 0 -
With the address data from the S output terminals S 0 to S 3 supplied to B 3 , interpolated data of 16 sample points between the nth and n+1th sample points is obtained, and the upper 4 bits of the data are added. F of vessel 19
This is applied to input terminals F 0 to F 3 , respectively.

一方、加算器19のG入力端子G0〜G9には、
ROM15のD出力端子D4〜D13からの波高値デ
ータ(n番目のサンプル点に対するデータ)が入
力されており、その結果、加算器19は、このn
番目のサンプル点の波高値データに対し、乗算器
18から供給される補間値データを加算して、そ
の結果データをH出力端子H0〜H9から出力し、
排他的オアゲート200〜209を介し、D出力端
子D0〜D9から出力する。
On the other hand, the G input terminals G 0 to G 9 of the adder 19 have
Peak value data (data for the nth sample point) from the D output terminals D 4 to D 13 of the ROM 15 is input, and as a result, the adder 19
Adding the interpolation value data supplied from the multiplier 18 to the peak value data of the th sample point, outputting the resulting data from the H output terminals H0 to H9 ,
The signals are output from D output terminals D 0 to D 9 via exclusive OR gates 20 0 to 20 9 .

上記排他的オアゲート200〜209の他端に
は、加算器4のS出力端子S11から出力される符
号ビツトのデータが入力されている。また、この
符号ビツトのデータは、D出力端子D11から、そ
のまま符号ビツトのデータとして出力されてい
る。
Sign bit data output from the S output terminal S11 of the adder 4 is input to the other ends of the exclusive OR gates 200 to 209 . Further, this sign bit data is output as it is from the D output terminal D11 as sign bit data.

サイン波部7の上記構成によつて、正弦波を1
回読出す間に、ROM15のA入力端子A5〜A0
は、アドレスデータが「000000」→「1111111」、
「111111」→「000000」、「000000」→「111111」、
「111111」→「000000」と変化して入力され、た
だし、本実施例の場合、各サンプル点を連続して
アドレス指定するのではなく、とびこしながら、
アドレス指定するため、必ずしも「000000」ある
いは「111111」の点をとらない。即ち、最小アド
レス「000000」から最大アドレス「111111」まで
が2往復分入力されることになり、この結果、
ROM15に、第3図に示すように記憶されてい
る1/4周期分のサイン波から第5図に示すような、
1周期分のサイン波が得られるもので、しかも、
この1周期分のサイン波は、上述した乗算器18
を用いた補間回路によつて、第3図の1/4周期分
のサイン波より、更に良好なサイン波となつてい
るものである。なお、第5図のサイン波に示す2
ビツトのデータ「00」、「01」、「10」、「11」は、加
算器4のS出力端子S11,S10の出力内容と得られ
るサイン数の各部との対応関係を示すもので、符
号ビツトを出力するS出力端子S11のデータが
“0”のときは、正の波高値(0〜1.0)を示し、
また、“1”のときは負の波高値(0〜−1.0)を
示す。また、S出力端子S10の出力が“0”のと
きには、ROM15のA入力端子A5〜A0には、ア
ドレスデータ「000000」→「111111」が入力され
ており、他方、“1”のときには、アドレスデー
タ「111111」→「000000」が入力されているもの
である。なお、第3図に示すように、ROM15
に記憶されているサイン波は、その最大アドレス
データ「111111」に対する波高値のデータは、オ
ール“1”(ROM15のD出力端子D4〜D13)と
はされていず、オール“1”より幾分小さいデー
タとされている。
With the above configuration of the sine wave section 7, the sine wave can be
During the readout, the address data changes from "000000" to "1111111" to the A input terminals A5 to A0 of the ROM15.
"111111" → "000000", "000000" → "111111",
It is input by changing from "111111" to "000000". However, in the case of this embodiment, each sample point is not addressed consecutively, but intermittently,
To specify an address, dots such as "000000" or "111111" are not necessarily taken. In other words, from the minimum address "000000" to the maximum address "111111" will be input for two round trips, and as a result,
From the 1/4 period sine wave stored in the ROM 15 as shown in Fig. 3, the sine wave as shown in Fig. 5 is generated.
A sine wave for one period can be obtained, and, moreover,
This one-cycle sine wave is sent to the multiplier 18 described above.
By using an interpolation circuit using , the sine wave is even better than the 1/4 cycle sine wave shown in FIG. In addition, 2 shown in the sine wave in Figure 5
The bit data “00”, “01”, “10”, and “11” indicate the correspondence between the output contents of the S output terminals S 11 and S 10 of the adder 4 and each part of the obtained sign number. , when the data of the S output terminal S11 that outputs the sign bit is "0", it indicates a positive peak value (0 to 1.0),
Moreover, when it is "1", it indicates a negative peak value (0 to -1.0). Furthermore, when the output of the S output terminal S10 is "0", the address data "000000" → "111111" is input to the A input terminals A5 to A0 of the ROM15, and on the other hand, the output of "1" is input to the A input terminals A5 to A0 of the ROM15. Sometimes, the address data "111111" → "000000" is input. Furthermore, as shown in Figure 3, the ROM15
For the sine wave stored in , the peak value data for the maximum address data "111111" is not all "1" (D output terminals D 4 to D 13 of ROM 15), but rather than all "1". The data is considered to be somewhat small.

これは、補間値データ(出力端子D0〜D5から
のデータ)が、「1111」を越えないようにした為
である。即ち、正弦波は、アドレス(入力端子
A5〜A0に与えられる。)がオール0のところから
「000001」のところへ変化する際の、差分値が最
も大きくなり、その差分値データが4ビツトデー
タで、表現できるようにするためである。
This is because the interpolated value data (data from output terminals D 0 to D 5 ) is prevented from exceeding "1111". In other words, the sine wave is the address (input terminal
Given from A5 to A0 . ) changes from all 0 to "000001", the difference value is the largest, and this difference value data can be expressed as 4-bit data.

次に、本実施例の動作につき説明する。先ず、
第6図を参照して上述したクロツク0及びそれを
反転したクロツク0(累算指令0)につき説明す
る。このクロツク0,0は、第6図a,bに示す
如く“0”レベルと“1”レベルとを交互に反転
するクロツクである。いま、説明の便宜上クロツ
ク0が“0”レベルのときにタイミングt0、クロ
ツク0が“1”レベルのときをタイミングt1と称
することにする。
Next, the operation of this embodiment will be explained. First of all,
The above-mentioned clock 0 and its inverted clock 0 (accumulation command 0) will be explained with reference to FIG. These clocks 0 and 0 are clocks that alternately invert the "0" level and the "1" level as shown in FIGS. 6a and 6b. For convenience of explanation, the timing when the clock 0 is at the "0" level will be referred to as timing t0 , and the time when the clock 0 is at the "1" level will be referred to as the timing t1 .

従つて、第6図cに示す如く、第1図に示され
た回路は、2つのタイミングにて時分割的に動作
するようになつている。即ち、上記累算器3は、
累算指令0が“1”となる都度、操作されている
演奏キーに応じた周波数情報を加算し、その累算
結果データを加算器4に印加する。
Therefore, as shown in FIG. 6c, the circuit shown in FIG. 1 operates in a time-sharing manner at two timings. That is, the accumulator 3 is
Every time the accumulation command 0 becomes "1", frequency information corresponding to the performance key being operated is added, and the accumulation result data is applied to the adder 4.

加算器4では、タイミングt0でB入力端子から
エンベロープ情報発生回路5からのデータが直接
供給され、従つて、A入力端子からのデータと、
加算が行なわれる。また、タイミングt1では、上
述したように、B入力端子には上記エンベロープ
情報発生回路5からのデータが、符号が反転され
て供給され、従つて、加算器4ではこのデータ
と、A入力端子からのデータとが加算される。そ
して、この加算結果データは、サイン波部7に印
加される。
In the adder 4, the data from the envelope information generation circuit 5 is directly supplied from the B input terminal at timing t0 , and therefore, the data from the A input terminal and
Addition is performed. Furthermore, at timing t1 , as described above, the data from the envelope information generating circuit 5 is supplied to the B input terminal with its sign inverted, and therefore, the adder 4 inputs this data and the A input terminal. The data from is added. This addition result data is then applied to the sine wave section 7.

従つて、サイン波部7は、タイミングt0とタイ
ミングt1の2つのタイミングで各々、一般に異な
つてアドレス指定され、その結果各々のタイミン
グで、このサイン波部7から露出されたデータは
累算器8により累算される。
Therefore, the sine wave section 7 is generally addressed differently at each of the two timings, timing t 0 and timing t 1 , so that at each timing, the data exposed from this sine wave section 7 is accumulated. It is accumulated by the unit 8.

そして、その累算結果は、ラツチ10にクロツ
ク0の立上りのタイミングでラツチされる。
The cumulative result is latched in latch 10 at the rising edge of clock 0.

次に、サイン波部7の動作を説明する。このサ
イン波部7には、加算器4のS出力端子からアド
レスデータが印加される。そのデータのうち、上
位2ビツトS11,S10が「0、0」であれば、
ROM15のA入力端子A5〜A0に加算器4の出力
端子S9〜S4から出力したデータが、直接供給さ
れ、ROM15からは、出力端子D0〜D3より差分
値データ(即ち、入力端子A0〜A5の内容にてア
ドレス指定されるサンプル点と、上記内容に+1
して得られる値にてアドレス指定されるサンプル
点との波高値の差の値)が出力し、乗算器18に
送出されると共に、そのサンプル点の波高値が出
力端子D4〜D13から出力し、加算器19に送出さ
れる。また、加算器4の出力端子S0〜S3から出力
したデータは、直接乗算器18に印加される。従
つて、加算器19では、入力端子G0〜G9から供
給される波高値データと、乗算器18から入力端
子F3〜F0に供給された実際の差分値データ(補
間値データ)とを加算し、出力端子H0〜H9から
振幅値データとして出力する。そして、そのデー
タが、直接累算器8の入力端子A0〜A10に印加さ
れることになる。このようにして、位相角が0〜
π/2の間の波高値データをサイン波部7は生成
する。
Next, the operation of the sine wave section 7 will be explained. Address data is applied to this sine wave section 7 from the S output terminal of the adder 4. If the upper 2 bits S 11 and S 10 of that data are “0, 0”, then
The data output from the output terminals S 9 to S 4 of the adder 4 is directly supplied to the A input terminals A 5 to A 0 of the ROM 15, and the difference value data (i.e., Sample points addressed by the contents of input terminals A 0 to A 5 and +1 to the above contents.
The value of the difference between the peak value and the sample point addressed by the value obtained is output and sent to the multiplier 18, and the peak value of that sample point is output from the output terminals D4 to D13. It is output and sent to the adder 19. Furthermore, the data output from the output terminals S 0 to S 3 of the adder 4 is directly applied to the multiplier 18 . Therefore, the adder 19 combines the peak value data supplied from the input terminals G0 to G9 with the actual difference value data (interpolated value data) supplied from the multiplier 18 to the input terminals F3 to F0 . are added and output as amplitude value data from output terminals H0 to H9 . The data is then directly applied to the input terminals A 0 to A 10 of the accumulator 8. In this way, the phase angle is 0~
The sine wave unit 7 generates peak value data between π/2.

次に、加算器4から与えられるアドレスデータ
の上位2ビツトS11,S10が「0、1」である場合
について説明する。その場合、出力端子S9〜S0
ら、サイン波部7に供給されたアドレスデータ
は、排他的オアゲート165〜160,173〜1
0にて論理レベルが反転し、それぞれROM1
5、乗算器18に供給されることになる。その結
果、加算器4の出力端子S9〜S0の内容がオール0
からオール1の方向へ変化するのに対し、実際の
アドレスデータがオール1からオール0の方向へ
変化するようになり、丁度、位相角がπ/2〜π
の部分のサイン波の波高値を加算器19は出力す
ることになる。そして、その出力は、直接累算器
8の入力端子A0〜A10に印加されることになる。
Next, a case where the upper two bits S 11 and S 10 of the address data given from the adder 4 are "0, 1" will be explained. In that case, the address data supplied from the output terminals S 9 to S 0 to the sine wave section 7 is transmitted through the exclusive OR gates 16 5 to 16 0 , 17 3 to 1
The logic level is inverted at 7 0 , and each ROM1
5, will be supplied to the multiplier 18. As a result, the contents of the output terminals S 9 to S 0 of the adder 4 are all 0.
While the actual address data changes from all 1s to all 0s, the phase angle changes from π/2 to π.
The adder 19 outputs the peak value of the sine wave of the part. The output thereof is then directly applied to the input terminals A 0 to A 10 of the accumulator 8.

更に、加算器4から与えられるアドレスデータ
の上位2ビツトS11,S10が「1、0」である場
合、加算器4の出力端子S0〜S9から、サイン波部
7に供給されたアドレスデータに基づく、振幅値
データを加算器19から出力することになるが、
この加算器19の出力H0〜H9は、排他的オアゲ
ート200〜209によつて、論理レベルが反転さ
れ、累算器8に送出されることになる。そして、
その際、累算器8のキヤリー入力端子Cinには、
“1”信号が与えられる。換言すれば、丁度0〜
π/2の部分のサイン波を符号を反転して出力し
たことになり、位相角π〜3π/2のサイン波の
波高値を得たことになる。
Furthermore, when the upper two bits S 11 and S 10 of the address data given from the adder 4 are "1, 0", the output terminals S 0 to S 9 of the adder 4 are supplied to the sine wave section 7. Amplitude value data based on the address data is output from the adder 19,
The outputs H 0 to H 9 of the adder 19 are inverted in logic level by the exclusive OR gates 20 0 to 20 9 and sent to the accumulator 8. and,
At that time, the carry input terminal Cin of the accumulator 8 is
A “1” signal is given. In other words, exactly 0~
This means that the sine wave of the π/2 portion is output with its sign inverted, and the peak value of the sine wave with a phase angle of π to 3π/2 is obtained.

同様に、加算器4から与えられるアドレスデー
タの上位2ビツトS11,S10が「1、1」である場
合、加算器4の出力端子S9〜S0からサイン波部7
に供給されたデータは、排他的オアゲート165
〜160,173〜170にて、論理レベルが反転
して、ROM15、乗算器18に供給されること
になる。そのため、加算器19の出力端子H9
H0から出力される波高値データは、位相角π/2π
の部分のサイン波に相当する。そして、そのデー
タは、排他的オアゲート209〜200にて論理レ
ベルが反転され、累算器8に供給されると共に、
累算器8のキヤリー入力端子CINに“1”信号が
与えられるため、負の値に変換される。従つて、
位相角が3π/2〜2πの部分のサイン波の波高値
を得たことになる。
Similarly, when the upper two bits S 11 and S 10 of the address data given from the adder 4 are "1, 1", the sine wave section 7 is output from the output terminals S 9 to S 0 of the adder 4.
The data fed into the exclusive or gate 16 5
~16 0 and 17 3 ~17 0 , the logic level is inverted and supplied to the ROM 15 and the multiplier 18. Therefore, the output terminal H 9 of the adder 19 ~
The peak value data output from H 0 has a phase angle of π/2π
It corresponds to the sine wave of the part. Then, the logic level of the data is inverted by the exclusive OR gates 20 9 to 20 0 and supplied to the accumulator 8.
Since a "1" signal is applied to the carry input terminal C IN of the accumulator 8, it is converted into a negative value. Therefore,
This means that the peak value of the sine wave in the portion where the phase angle is 3π/2 to 2π has been obtained.

そして、上述したように、このサイン波部7
は、タイミングt0,t1で時分割的に動作せしめら
れ、一般に異なつたアドレス指定が、このタイミ
ングt0,t1で行なわれることになる。
As mentioned above, this sine wave section 7
is operated in a time-division manner at timings t 0 and t 1 , and generally different addressing is performed at these timings t 0 and t 1 .

いま、そのことを数式を用いて表現すると、次
のようになる。いま、“a”を累算器3から出力
されるデータとし、“E”をエンベロープ情報発
生回路5からの出力データとする。そして、タイ
ミングt0では、各データ“a”,“E”は、直接加
算器4の入力端子A0〜A11,B0〜B11に直接与え
られるため、加算器4の出力は、a+Eであり、
そのデータがサイン波部7に供給されるため、累
算器8に入力し、累算されるデータは、 sin2πa+E/212=sin(a+E)π/2048…式
(1) となる。
Now, if we express this using a mathematical formula, it becomes as follows. Now, let "a" be the data output from the accumulator 3, and "E" be the output data from the envelope information generation circuit 5. Then, at timing t 0 , each data “a” and “E” are directly given to the input terminals A 0 to A 11 and B 0 to B 11 of the direct adder 4, so the output of the adder 4 is a+E and
Since the data is supplied to the sine wave section 7, the data input to the accumulator 8 and accumulated is sin2πa+E/2 12 = sin(a+E)π/2048...Equation
(1) becomes.

また、タイミングt1では、累算器3から与えら
れる最上位ビツト(符号ビツト)を排他的オアゲ
ート612にて反転し、更に、エンベロープ情報発
生回路15から与えられるデータEを、排他的オ
アゲート60〜611にて反転し、且つ、加算器4
のキヤリー入力端子cinに“1”信号を与えるた
め、加算器4出力にて、アドレス指定されて出力
し、累算器8にて累算されるデータは、 −sin2πa−E/212=−sin(a−E)π/2048…
式(2) となる。
Furthermore, at timing t1 , the most significant bit (sign bit) given from the accumulator 3 is inverted at the exclusive OR gate 612 , and furthermore, the data E given from the envelope information generation circuit 15 is inverted at the exclusive OR gate 612. 0 to 6 Inverted at 11 and adder 4
In order to give a "1" signal to the carry input terminal cin of the adder 4, the data addressed and outputted by the output of the adder 4 and accumulated by the accumulator 8 is -sin2πa-E/2 12 =- sin(a-E)π/2048...
Equation (2) is obtained.

従つて、累算器8の出力は、 sin(a+E)π/2048−sin(a−E)π/2048 =2COSaπ/2048sinEπ/2048 …式(3) となる。 Therefore, the output of accumulator 8 is sin(a+E)π/2048−sin(a−E)π/2048 =2COSaπ/2048sinEπ/2048...Equation (3) becomes.

従つて、上記エンベロープ情報発生回路5の出
力データE(即ち、排他的オアゲート60〜611
介し、加算器4のB入力端子へ印加されるデー
タ)によつて、この実施例の電子楽器では、エン
ベロープ制御が行なえることが判明する。即ち、
その場合のエンベロープ制御値は 2sinEπ/2048 …式(4) である。
Therefore, the electronic musical instrument of this embodiment is generated by the output data E of the envelope information generating circuit 5 (that is, the data applied to the B input terminal of the adder 4 via the exclusive OR gates 60 to 611 ). Now, it turns out that envelope control can be performed. That is,
The envelope control value in that case is 2sinEπ/2048...Equation (4).

次に、第7図及び第8図を参照して、エンベロ
ープ制御について、具体的に説明する。先ず、キ
ーオン時で波形が出力していない場合、エンベロ
ープ情報発生回路5は、データ「0」を出力す
る。したがつて、各t0のタイミングでは、サイン
波部7から読出される波高値は式(1)からsinaπ/2048 である。他方、各t1のタイミングでは、サイン波
部7から読出される波高値は式(2)から−sinaπ/2048 となる。
Next, envelope control will be specifically explained with reference to FIGS. 7 and 8. First, when the key is on and no waveform is being output, the envelope information generating circuit 5 outputs data "0". Therefore, at each timing t0 , the peak value read out from the sine wave section 7 is sinaπ/2048 from equation (1). On the other hand, at each timing t1 , the peak value read from the sine wave section 7 becomes -sinaπ/2048 from equation (2).

第7図は上記状態を説明するもので、同図1は
タイミングt0にてサイン波部7から読出される波
高値を、同図2はタイミングt1にてサイン波部7
から読出される波高値を夫々示している。このよ
うに、第7図1,2は、位相が同一で、波高値の
符号が反対であるから、両者を加算した結果デー
タ、即ち、ラツチ10の出力データは、同図3の
如くなり、波形が何ら出力しないことになる。そ
して、この状態からエンベロープ情報発生回路5
がその出力データEを「1024」(=010000000000)
に向けて徐々に増大することにより、上記位相の
ずれが大きくなつて、出力波形の振幅も徐々に大
きくなつてゆき、次いで出力データEが1024とな
ると、タイミングt0,t1にて、サイン波部7か
ら、夫々読出される波高値は、第8図1,2に
夫々示すように、同一位相のデータとなり、その
出力波形は、第8図3に示す如く、最大レベル
(2倍)となる。そのことは、t0のタイミングで
式(1)よりCOSaπ/2048が読出され、t1のタイミング で式(2)よりCOSaπ/2048が読出され、両者を加算す ることにより2COSaπ/2048の波形が、出力するこ とからも理解される。
FIG. 7 explains the above state. FIG. 1 shows the peak value read out from the sine wave section 7 at timing t0 , and FIG. 2 shows the peak value read out from the sine wave section 7 at timing t1.
The peak values read from the respective peaks are shown. In this way, since the phases 1 and 2 in FIG. 7 are the same and the signs of the peak values are opposite, the resultant data after adding the two, that is, the output data of the latch 10, is as shown in FIG. 3, No waveform will be output. From this state, the envelope information generation circuit 5
converts the output data E to "1024" (=010000000000)
As the phase shift increases gradually toward The wave height values read from the wave section 7 are data of the same phase, as shown in FIGS. 8 1 and 2, respectively, and the output waveform is at the maximum level (double) as shown in FIG. 8 3. becomes. This means that COSaπ/2048 is read out from equation (1) at t 0 , COSaπ/2048 is read out from equation (2) at t 1 , and by adding the two, the waveform of 2COSaπ/2048 is obtained. , which can also be understood from the output.

したがつて、演奏キーのキーオン時において、
出力レベルが0レベルから、最大レベルまで急激
に上昇するには、上記エンベロープ情報発生回路
5の出力データEを「0」から「1024」まで急激
に増大すればよい。そして、このアタツクの状態
から、デイケイの状態に移行するには、上記デー
タEを「1024」から、所定値まで順次減少させ
る。そして、サステイン状態に移行するには、上
記データEを所定値に保持せしめる。この結果、
出力レベルは一定となる。そして、演奏キーのキ
ーオフの検出時から、上記データEを「0」まで
徐々に減少させれば、リリース状態となり、次い
で、データEが「0」になると、出力レベルは0
となり、楽音が出力しなくなる。
Therefore, when the performance key is turned on,
In order to rapidly increase the output level from the 0 level to the maximum level, the output data E of the envelope information generating circuit 5 needs to be rapidly increased from "0" to "1024". To shift from the attack state to the decay state, the data E is sequentially decreased from "1024" to a predetermined value. In order to shift to the sustain state, the data E is held at a predetermined value. As a result,
The output level remains constant. Then, if the data E is gradually decreased to "0" from the time when the key-off of the performance key is detected, the release state will be reached. Then, when the data E becomes "0", the output level will be 0.
As a result, no musical sound is output.

以上は、ADSRの各エンベロープ状態を有する
場合について説明したが、オルガン音の如く、ア
タツク、サステイン、リリースの3つのエンベロ
ープ状態を有する場合、あるいは、その他のエン
ベロープ状態を有する場合についても同様にし
て、エンベロープ制御できる。
The above has explained the case where ADSR has each envelope state, but the same applies to cases where there are three envelope states such as attack, sustain, and release, such as an organ sound, or cases where there are other envelope states. Envelope control is possible.

尚、上記実施例では、サイン波部7を1個のみ
設けてタイミングt0,t1の2つのタイミングによ
る時分割処理により、上記式(3)を導く式(1)、式(2)
の2つのサイン波形を読出すようにしたが、2個
のサイン波部を設け、例えば、その一方には、累
算器3とエンベロープ情報発生回路5の各出力デ
ータの和の値を印加し、他方のサイン波部には差
の値を印加し、その結果、双方のサイン波部から
出力されるデータを、加算器で加算出力するよう
にすれば、時分割処理を行なわずとも、上記2つ
のサイン波形を読出すことが可能である。
In the above embodiment, only one sine wave section 7 is provided, and by time-sharing processing using two timings, t 0 and t 1 , the equations (1) and (2) that lead to the above equation (3) are obtained.
However, two sine wave sections are provided and, for example, the sum of the output data of the accumulator 3 and the envelope information generation circuit 5 is applied to one of them. , the difference value is applied to the other sine wave section, and as a result, the data output from both sine wave sections are added together and outputted by an adder. It is possible to read out two sinusoidal waveforms.

また、上記実施例では26=64のサンプル点に分
割して1/4周期の正弦波をROMに記憶させると
共に、補間を4ビツトで行なうようにし、更に、
1/4波形から1波形を読出し得るようにして、結
局4096サンプル点に1周期を分割するようにした
が、一般に、2nサンプル点に分割して正弦波を読
出すようにした場合、ROMから読出される第
1、第2の波形は、 sin2πa+E/2n ……式(5) −sin2πa−E/2n ……式(6) となり、その合成波形は、 2COSaπ/2n-1sinEπ/2n-1……式(7) となる。
In addition, in the above embodiment, a 1/4 period sine wave is divided into 2 6 = 64 sample points and stored in the ROM, and interpolation is performed using 4 bits.
We made it possible to read one waveform from the 1/4 waveform, and ended up dividing one period into 4096 sample points, but in general, when reading a sine wave by dividing it into 2 n sample points, the ROM The first and second waveforms read from are sin2πa+E/2 n ...Equation (5) -sin2πa-E/2 n ...Equation (6), and the combined waveform is 2COSaπ/2 n-1 sinEπ /2 n-1 ...Equation (7) is obtained.

更に、上記データa、データEを加算器4のA
入力端子、B入力端子へ夫々入力させるとき、排
他的オアゲート612を除けば、次式の如く本実施
例の回路は動作することになる。
Furthermore, the above data a and data E are added to A of the adder 4.
When inputting to the input terminal and the B input terminal, the circuit of this embodiment operates as shown in the following equation, except for the exclusive OR gate 612 .

sin2πa+E/212+sin2πa−E/212 =2sinaπ/211COSEπ/211 ……式(8) この場合、エンベロープ制御値は、 2COSEπ/211 ……式(9) である。sin2πa+E/2 12 +sin2πa−E/2 12 =2sinaπ/2 11 COSEπ/2 11 ...Equation (8) In this case, the envelope control value is 2COSEπ/2 11 ...Equation (9).

また、本実施例の回路に他のゲート回路を付加
する等すれば、 −sin2πa+E/212+sin2πa−E/212 =−2COSaπ/211sinEπ/211 ……式(10) となし得、その場合、エンベロープ制御値は −2sinEπ/211 ……式(11) となる。
Moreover, if another gate circuit is added to the circuit of this embodiment, −sin2πa+E/2 12 +sin2πa−E/2 12 =−2COSaπ/2 11 sinEπ/2 11 ...Equation (10) can be obtained, In that case, the envelope control value is −2sinEπ/2 11 . . . Equation (11).

その他、演算方式は、種々変更し得ることは明
白である。
It is obvious that the calculation method can be changed in various other ways.

また、上記実施例では、演奏キーの操作に応じ
て、当該音階周波数の正弦波、即ち、基本波を得
るようにしたが、時分割処理、および周波数情報
変換ROM2からの出力を、所定ビツトシフトす
る処理等を行なえば、基本波と共に、高次の倍音
波を得ることができ、これにより、高調波成分も
加えた所望の波形を得ることもできる。
Furthermore, in the above embodiment, a sine wave of the relevant scale frequency, that is, a fundamental wave, is obtained in response to the operation of a performance key. By performing processing, it is possible to obtain high-order harmonic waves together with the fundamental wave, thereby making it possible to obtain a desired waveform including harmonic components.

また、電子楽器に限らず、正弦波を利用する装
置に対しては、すべて、この発明を利用可能であ
る。
Furthermore, the present invention is applicable not only to electronic musical instruments but also to all devices that utilize sine waves.

この発明は、以上説明したように、1/4周期分
の正弦波を波形メモリに記憶しておくと共に、こ
の波形メモリから、上記1/4周期分の正弦波を読
出して処理することにより、1周期分の正弦波を
発生可能とした、正弦波発生装置を提供したか
ら、波形メモリの容量が従来に比して、大幅に小
さくなり、コストダウンできる利点がある。ま
た、波形メモリから1/4周期分の正弦波を読出す
際に、各サンプル点間の波高値を補間する補間回
路を設けたことにより、極めて良好な正弦波を得
ることが可能となり、この点に於いても、大きな
利点がある。加えて、この発明は周波数情報を累
算してアドレス信号を作り、このアドレス信号の
最上位の2ビツトのうちの下位側ビツトによつ
て、アドレス信号の下位ビツトを反転制御する第
1の回路手段を設けることで、この第1の回路手
段から1/4周期毎にアツプ、ダウンを繰返すアド
レス信号を得ることができ、また上記アドレス信
号の最上位の2ビツトのうち少なくとも上位側ビ
ツトに従つて波形出力の符号反転をする第2の回
路手段を設けて、極性の違う象限の波形を得るこ
とができ、簡単な構成でありながら任意周波数の
全周期分の正弦波を補間処理をほどこして適切な
る波形として発生可能となるという利点がある。
As explained above, this invention stores a 1/4 cycle worth of sine waves in a waveform memory, and reads out and processes the 1/4 cycle worth of sine waves from this waveform memory. Since a sine wave generator capable of generating a sine wave for one period has been provided, the capacity of the waveform memory is significantly smaller than that of the conventional device, which has the advantage of reducing costs. In addition, when reading a 1/4 period sine wave from the waveform memory, an interpolation circuit that interpolates the peak value between each sample point makes it possible to obtain an extremely good sine wave. There are great advantages in this respect as well. In addition, the present invention provides a first circuit that accumulates frequency information to generate an address signal, and controls the inversion of the lower bit of the address signal using the lower bit of the two most significant bits of the address signal. By providing this means, it is possible to obtain an address signal that repeats up and down every 1/4 period from this first circuit means, and also to obtain an address signal that repeats up and down every 1/4 period, and also to follow at least the upper bit of the two most significant bits of the address signal. By providing a second circuit means for inverting the sign of the waveform output, it is possible to obtain waveforms in quadrants with different polarities.Although the configuration is simple, it is possible to perform interpolation processing on all cycles of sine waves of arbitrary frequencies. This has the advantage that it can be generated as an appropriate waveform.

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

第1図はこの発明の一実施例の要部の回路構成
図、第2図はサイン波部7の具体的回路図、第3
図はROM15に記憶されている1/4周期の正弦
波を示す図、第4図はサイン波部7内のROM1
5から出力する波高値と差分値との関係を説明す
る図、第5図はサイン波部7から出力される1周
期分の正弦波を示す図、第6図は第1図の回路を
駆動するためのクロツクパルスと、その時分割状
態を示す図、第7図および第8図は、サイン波部
7から時分割的に読出された2つの波形と、その
波形を合成して、エンベロープ制御がなされた波
形とを示す図である。 1……キーボード、2……周波数情報変換
ROM、3……累算器、4……加算器、5……エ
ンベロープ情報発生回路、60〜612……排他的
オアゲート、7……サイン波部、8……累算器、
15……ROM、160〜165……排他的オアゲ
ート、170〜173……排他的オアゲート、18
……乗算器、19……加算器、200〜209……
排他的オアゲート。
FIG. 1 is a circuit configuration diagram of the main part of an embodiment of the present invention, FIG. 2 is a specific circuit diagram of the sine wave section 7, and FIG.
The figure shows a 1/4 period sine wave stored in the ROM 15, and Figure 4 shows the ROM 1 in the sine wave section 7.
5 is a diagram illustrating the relationship between the peak value and the difference value output from the sine wave section 7. FIG. 5 is a diagram showing one cycle of the sine wave output from the sine wave section 7. FIG. Figures 7 and 8, which show clock pulses and their time-division states, show two waveforms read out in a time-division manner from the sine wave section 7, and envelope control performed by combining the waveforms. FIG. 1... Keyboard, 2... Frequency information conversion
ROM, 3...Accumulator, 4...Adder, 5...Envelope information generation circuit, 60 to 612 ...Exclusive OR gate, 7...Sine wave section, 8...Accumulator,
15...ROM, 160 to 165 ...Exclusive OR gate, 170 to 173 ...Exclusive OR gate, 18
... Multiplier, 19 ... Adder, 20 0 to 20 9 ...
Exclusive or gate.

Claims (1)

【特許請求の範囲】 1 発生すべき周波数に対応する周波数情報を発
生する周波数情報発生手段と、 この周波数情報発生手段が発生する上記周波数
情報を所定タイミング毎に累算して全周期分の正
弦波データを発生するためのアドレス信号を供給
するアドレス信号供給手段と、 このアドレス信号供給手段から出力される上記
アドレス信号の最上位の2ビツトS11,S10をのぞ
く各ビツトS9〜S0を最上位の2ビツトのうちの下
位側ビツトS10のレベルに応じて直接もしくは反
転して供給する第1の回路手段と、 1/4周期分の正弦波に対応する各サンプル点の
振幅値データを記憶すると共に、各サンプル点間
の差分値データを記憶し、上記第1の回路手段の
出力の上位ビツト信号によつて、上記各サンプル
点の振幅値データと差分値データとを発生する波
形メモリ手段と、 この波形メモリ手段から発生される上記差分値
データと上記第1の回路手段の出力の下位ビツト
信号とによつて上記振幅値データに対する補間値
データを生成し、この補間値データと上記振幅値
データとを合成して、波形データを出力する補間
演算手段と、 この補間演算手段から出力される上記波形デー
タの符号を上記アドレス信号供給手段が発生する
上記アドレス信号の最上位の2ビツトのうちの少
なくとも上位側ビツトS11に従つて変換する第2
の回路手段と、 を具備し、上記波形メモリ手段に記憶された1/4
周期分の正弦波に対応する振幅値データと差分値
データとから全周期分の補間処理がなされた正弦
波の波形データを得ることを可能としたことを特
徴とする正弦波発生装置。
[Claims] 1. Frequency information generating means for generating frequency information corresponding to a frequency to be generated; and a frequency information generating means that accumulates the frequency information generated by the frequency information generating means at predetermined timings to generate a sine for all cycles. address signal supply means for supplying an address signal for generating wave data, and each bit S9 to S0 except the most significant two bits S11 and S10 of the address signal outputted from this address signal supply means. a first circuit means that supplies the signal directly or inverted according to the level of the lower bit S10 of the two most significant bits, and the amplitude value of each sample point corresponding to a 1/4 period sine wave; In addition to storing data, difference value data between each sample point is also stored, and amplitude value data and difference value data of each of the above sample points are generated by the upper bit signal of the output of the first circuit means. A waveform memory means generates interpolated value data for the amplitude value data using the difference value data generated from the waveform memory means and the lower bit signal of the output of the first circuit means, and generates interpolated value data for the amplitude value data. and the amplitude value data to output waveform data; and a code of the waveform data outputted from the interpolation calculation means is determined by the sign of the most significant address signal generated by the address signal supply means. The second bit is converted according to at least the upper bit S11 of the two bits.
and 1/4 of the waveform stored in the waveform memory means.
A sine wave generator characterized in that it is possible to obtain waveform data of a sine wave subjected to interpolation processing for a full period from amplitude value data and difference value data corresponding to a sine wave for a period.
JP56026996A 1981-02-27 1981-02-27 Sine wave generator Granted JPS57142698A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP56026996A JPS57142698A (en) 1981-02-27 1981-02-27 Sine wave generator

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP56026996A JPS57142698A (en) 1981-02-27 1981-02-27 Sine wave generator

Publications (2)

Publication Number Publication Date
JPS57142698A JPS57142698A (en) 1982-09-03
JPH0225515B2 true JPH0225515B2 (en) 1990-06-04

Family

ID=12208762

Family Applications (1)

Application Number Title Priority Date Filing Date
JP56026996A Granted JPS57142698A (en) 1981-02-27 1981-02-27 Sine wave generator

Country Status (1)

Country Link
JP (1) JPS57142698A (en)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS59141849A (en) * 1983-02-01 1984-08-14 Matsushita Electric Ind Co Ltd Bidirectional catv system
JPS60103729A (en) * 1983-11-10 1985-06-08 Fujitsu Ltd Reversible counter circuit
JPH0631990B2 (en) * 1984-01-07 1994-04-27 カシオ計算機株式会社 Waveform interpolator
JPS61245196A (en) * 1985-04-24 1986-10-31 ヤマハ株式会社 Musical sound generation
JPS62196918A (en) * 1986-02-25 1987-08-31 Matsushita Electric Ind Co Ltd Waveform generator
JPS62196917A (en) * 1986-02-25 1987-08-31 Matsushita Electric Ind Co Ltd Waveform generator
JPS62209914A (en) * 1986-03-11 1987-09-16 Korugu:Kk Envelope generating device

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS50131513A (en) * 1974-04-04 1975-10-17
JPS519348A (en) * 1974-07-11 1976-01-26 Nippon Musical Instruments Mfg

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS50131513A (en) * 1974-04-04 1975-10-17
JPS519348A (en) * 1974-07-11 1976-01-26 Nippon Musical Instruments Mfg

Also Published As

Publication number Publication date
JPS57142698A (en) 1982-09-03

Similar Documents

Publication Publication Date Title
US4536853A (en) Multiple wave generator
US4119005A (en) System for generating tone source waveshapes
KR900012197A (en) Digital signal generator
US4256004A (en) Electronic musical instrument of the harmonic synthesis type
US3952623A (en) Digital timing system for an electronic musical instrument
JPH0225515B2 (en)
US4326260A (en) Linear piecewise waveform generator for an electronic musical instrument
EP0235538A2 (en) Waveform generator for electronic musical instrument
USRE31648E (en) System for generating tone source waveshapes
JPS59168493A (en) Musical tone waveform generator
JPS5895790A (en) Musical sound generator
JPS6229794B2 (en)
JPS6217759B2 (en)
JPS62518B2 (en)
GB2135498A (en) Electronic musical instrument
US4446769A (en) Combination tone generator for a musical instrument
JP2510090Y2 (en) Music signal generator
JPS6154238B2 (en)
JPS61182097A (en) Phased memory address unit for reducing noise for electronicmusical instrument
JP2819719B2 (en) Arithmetic circuit
JP2608938B2 (en) Waveform interpolation device
JPH0226237B2 (en)
JP2797140B2 (en) Musical sound wave generator
JP2621234B2 (en) Electronic musical instrument control signal generator
JPS6320358B2 (en)