JPS6229794B2 - - Google Patents

Info

Publication number
JPS6229794B2
JPS6229794B2 JP56036595A JP3659581A JPS6229794B2 JP S6229794 B2 JPS6229794 B2 JP S6229794B2 JP 56036595 A JP56036595 A JP 56036595A JP 3659581 A JP3659581 A JP 3659581A JP S6229794 B2 JPS6229794 B2 JP S6229794B2
Authority
JP
Japan
Prior art keywords
envelope
data
output
gate
waveform
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
JP56036595A
Other languages
English (en)
Other versions
JPS57151998A (en
Inventor
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 JP56036595A priority Critical patent/JPS57151998A/ja
Priority to US06/324,466 priority patent/US4453440A/en
Priority to EP81305557A priority patent/EP0053892B1/en
Priority to DE8181305557T priority patent/DE3172071D1/de
Publication of JPS57151998A publication Critical patent/JPS57151998A/ja
Publication of JPS6229794B2 publication Critical patent/JPS6229794B2/ja
Granted legal-status Critical Current

Links

Landscapes

  • Electrophonic Musical Instruments (AREA)

Description

【発明の詳細な説明】
この発明は電子楽器のエンベロープ制御装置に
関する。 本出願人は先に、特願昭55−167583、発明の名
称「電子楽器のエンベロープ制御方式」による特
許出願を行なつた。この特許出願は、正弦波(あ
るいは余弦波)を記憶する波形メモリから、音階
周波数に応じた2つの正弦波(あるいは余弦波)
を同一周波数で且つ方向が互いに逆で、しかも同
じ量の位相シフトがなされた2つの波形として読
出し、また、読出された上記2つの波形を合成し
て、1つの正弦波(あるいは余弦波)を得るよう
にし、更にこのように合成して得られた正弦波
(あるいは余弦波)のエンベロープ制御を上記位
相シフト量を変化させることにより行なうように
した電子楽器である。而してこの電子楽器で波形
メモリから読出される正弦波を計算式で示すと、
例えば sin2π(a+b/2) ………式(1) −sin2π(a−b/2) ………式(2) である。茲で、aは音階周波数を与える周波数情
報を所定時間間隔(サンプリング周期)で累算し
て得られるデータ、bはエンベロープ情報を示す
データである。 したがつて、上記式(1)、式(2)を合成して得られ
る波形は、 sin2π(a+b/2)−sin2π(a−b/2) =2cos2πa/2 sin2πb/2 ………式(3) である。この場合、余弦波cos2πa/2に対し、 2sin2πb/2をエンベロープ制御値として、エンベ ロープ制御が行なえるものである。 ところで、上記エンベロープ制御値2sin2πb/2 においてデータbを、例えば、均等に増加あるい
は減少させた場合、第1図のような変化をするエ
ンベロープ波形が得られる。この場合、アタツク
部Aでは、データbを増加させ、デイケイ部Dで
は、減少させ、サステイン部Sでは変化を止め、
更にリリース部Rでは、データbを減少させるも
のである。そして、上記アタツク部A、デイケイ
部D、リリース部Rの各曲線がsin2πb/2により得 られる部分である。 然しながら、第1図のエンベロープ波形の減衰
部、即ち、デイケイ部D、リリース部Rは共に、
上に凸の曲線となつており、減衰音の特性は下に
凸の指数関数型が楽音の場合適当であり、したが
つて、第1図の減衰エンベロープ曲線は、不適当
なものである欠点が残されている。 このため、第1図の正弦波的エンベロープ波形
を指数関数的エンベロープ波形に変換する必要が
ある。そこで、正弦波(余弦波でもよい)を第2
図に示すような2つの直線L1,L2と仮定して、
この直線的変化を指数関数的変化に変換すること
が考えられる。ここで、直線L1は、第2図に示
すように、正弦波の最大振幅値1.0の点(位相角
0度)と、この点から位相角が45度進んだ振幅値
1/√2の点とを結んで得られる直線であり、ま
た直線L2は、上記位相角45度の点と位相角90度
(振幅値0)の点とを結んで得られる直線であ
る。そして、直線L1,L2について考えてみる
と、各直線L1,L2を夫々指数関数的曲線に変換
させる一方法として、基本時間Tごとに振幅を1/
2ずつ減衰させる方法が考えられる。 なお、指数関数的なエンベロープを得る方法と
して、本出願人は、先に特願昭56−26994「エン
ベロープ減衰波形発生装置」による特許出願を行
なつた。このようにすれば、計算式 から振幅値1/√2の点は、上記式(4)にx=T/
2を代入するとき得られるから、直線L1は基本
時間Tの半分のT/2の速度で減衰させればよい
ことが分かる。即ち、直線L1の減衰速度を直線
L2の減衰速度の2倍とするとき、直線L1,L2
は、ほぼなめらかな下に凸の指数関数的な曲線と
なるものである。 上述のようにして、エンベロープの減衰曲線を
補正する回路を付加した場合、第1図に示すエン
ベロープ波形は、第3図に示す如きエンベロープ
波形に変換されるもので、即ち、第3図にみられ
るように、エンベロープ波形のデイケイ部D′、
リリース部R′は確かに好ましい減衰曲線となつ
ているが、一部、アタツク部A′も上記補正回路
を介するために下に凸の曲線となつて音楽的に好
ましくない点がまだ残されていることが分かる。
そこで、このアタツク部A′を少くとも直線に変
換する補正を更に行なう必要があるが、これはア
タツク部A′作成時のクロツクの周波数を可変と
したり、或いはカウンタの出力に所定タイミング
毎に、一定値(加数)を加えてアタツク波形を得
る場合に、上記加数を可変としたりする方法に
て、アタツク部A′の補正を行なうことが可能で
ある。 この発明は、以上説明した事情を背景としてな
されたもので、その目的とするところは、正弦波
(余弦波)合成方式の電子楽器において、理想的
なエンベロープ波形によるエンベロープ制御を可
能とした電子楽器のエンベロープ制御装置を提供
することである。 以下、第4図ないし第12図を参照してこの発
明の一実施例を説明する。第4図は本実施例の主
要回路図を示すもので、図中1は、複数の演奏キ
ーが配設されたキーボードである。このキーボー
ド1からは、操作された演奏キーに対応するキー
コードが発生するようになつている。このキーコ
ードは、当該演奏キーのオクターブとノート(音
階)を示すコードである。 上記キーコードは、周波数情報変換ROM(リ
ードオンリメモリ)2に供給される。この周波数
情報変換ROM2には、キーコードに対応する周
波数情報(即ち、位相角を示す情報)が記憶され
ており、この周波数情報は、累算器3に供給され
て累算指令(クロツクφについては後述する)
ごとに累算される。 累算器3からは、例えば、13ビツトデータが出
力し、加算器4のA入力端子(A12〜A0)に供給
される。なお、上記13ビツトデータの最上位ビツ
ト(符号ビツト)のデータのみ排他的オアゲート
12を介し、A入力端子A12に供給されている。
一方、加算器4のB入力端子B11〜B0には、エン
ベロープ情報発生回路5からの12ビツトデータ
(データZ)が排他的オアゲート611〜6を介
して供給される。また、加算器4のB入力端子
B12(符号ビツト)及びキヤリー入力端子Cinに
は、クロツクφが供給される。 上記エンベロープ情報発生回路5には、エンベ
ロープ制御指令、例えばキーボード1の演奏キー
のオン/オフ情報、あるいは予めスイツチにより
設定されたADSR(アタツク、デイケイ、サステ
イン、リリース)の各情報等が供給され、その情
報に応じて、エンベロープ制御するための12ビツ
トデータ(上記データZ)が作成され、また、こ
のデータZが上記排他的オアゲート611〜6
与えられる。而してこの12ビツトデータは、この
発明の目的に沿つてエンベロープのアタツク部の
補正と、デイケイ、リリースの各部による減衰エ
ンベロープの補正が夫々なされているが、詳細は
後述する。なお、この排他的オアゲート611〜6
および排他的オアゲート612の一端には夫々、
クロツクφが与えられる。 したがつて、クロツクφが“0”レベルのとき
には、加算器4は、上記A入力端子とB入力端子
から夫々与えられる各13ビツトデータを加算し、
S出力端子S12〜S0から13ビツトデータとしてそ
の結果データを出力する。一方、上記クロツクφ
が“1”レベルのときには、加算器4は、A入力
端子へ、上記符号ビツトのみレベルを反転して入
力される13ビツトデータと、B入力端子B12への
入力データは、そのまま、またB入力端子B11
B0へ与えられる12ビツトデータはその各ビツト
のレベルを反転し、且つその値に「+1」したデ
ータとを加算し、S入力端子から13ビツトの結果
データを出力する。 加算器4から出力される13ビツトデータは、サ
イン波部7に与えられ、該サイン波部7のアドレ
ス指定を行なう。このサイン波部7には、第5図
に示す如きサイン波の波高値(振幅値)が213
(8192)のサンプル点に分割されて記憶されてい
る。そしてサイン波部7からは、11ビツトデータ
(D10〜D0)が波高値を示すデータとして出力され
る。即ち、最上位ビツト(D10)は符号ビツトで、
また第10ビツトないし最下位ビツト(D9〜D0
は、小数点以下のデータを示すビツトである。な
お、第6図には、第5図のサイン波のうち、位相
角0〜90度までの波形(波高値)の詳細を示す。
而して位相角90(π/2)〜180(π)度までの
波形は位相角0〜90(π/2)度の波形と位相角
90(π/2)度を中心に線対称の関係にあり、ま
た、位相角180(π)〜360(2π)度の波形は、
位相角0〜180(π)度までの波形の符号を反転
したものに等しい関係にある。 サイン波部7からの11ビツトデータは、累算器
8のA入力端子A10〜A0に与えられ累算される。
なお、この累算器8は、上記クロツクφがインバ
ータ9により反転された信号、即ち、クロツク
の立上りのタイミングでリセツトされる。そして
累算器8からは、12ビツトデータがその出力端子
S11〜S0から出力される。即ち、この12ビツトデ
ータのうち、最上位ビツト(S11)は符号ビツト、
第11ビツト(S10)は2位のビツト、第10ビツト
(S9)〜最下位ビツト(S0)は小数点以下のデータ
を示すビツトである。 上記累算器8から出力される12ビツトデータ
は、ラツチ10にクロツクの立上りのタイミン
グにて読込まれ、また、その出力データはD/A
変換器に与えられて、アナログ信号に変換され、
音響変換回路を介して放音される。 次に、第7図を参照して上記エンベロープ情報
発生回路5の具体的構成を説明する。図中、15
は加算器で、この加算器15は、A入力端子A6
〜A0、B入力端子B6〜B0へ夫々入力される7ビ
ツトデータを加算し、その結果データ(7ビツト
データ)をS出力端子S6〜S0から出力する。而し
て加算器15のA入力端子には、上記結果データ
がクロツクφにより読込動作が行なわれるバツフ
ア16を介し、リサーキユレートされて、供給さ
れる一方、B入力端子には、エンベロープのアタ
ツク期間中は、後述するクロツクCKAO〜CKA7
が各クロツクの出力タイミングで+1データとし
て供給され、またデイケイ期間中は、7ビツトオ
ール“1”データがクロツクCKDの出力タイミ
ングで−1データとして供給され、更に、サステ
イン期間中は、7ビツトオール“0”データが供
給され、また、リリース期間中はクロツクCKD
がその出力タイミングで−1データとして、供給
される構成となつている。 即ち、上記結果データのうち、上位3ビツトデ
ータS6〜S4がバツフア16を介し、デコーダ17
に供給されている。このデコーダ17には、また
制御部(図示略)から出力される信号U/Dが供
給されている。この信号U/Dは、エンベロープ
のアタツク期間中“1”レベルの信号として出力
される一方、デイケイ、サステイン、リリースの
各期間、即ち、減衰エンベロープの期間は“0”
レベルの信号として出力される信号である。そし
てデコーダ17の出力ラインl0〜l7からは、上記
信号U/Dが“1”レベルの期間中において、上
記結果データS6〜S4が「000」〜「111」に順次変
化するとき、順次“1”信号が出力し、対応する
ゲート回路G0〜G7を駆動して、各ゲート回路G0
〜G7を開成する。また、信号U/Dが“0”レ
ベルの期間中においては、デコーダ17の出力ラ
インl8から“1”信号が出力し、ゲート回路G8
開成する。 一方、ゲート回路G0〜G7には夫々、第8図に
示すような周期で出力されるクロツクCKA0〜
CKA7が供給され、また、ゲート回路G8には、ク
ロツクCKDが供給されている。そして各ゲート
回路G0〜G8の開成中に各ゲート回路G0〜G8から
出力されるクロツクCKA0〜CKA7、CKDは
夫々、アンドゲート18に与えられる。 茲で、上記クロツクCKA0は、第8図に示すよ
うにクロツクCKA1の1/2周期(周波数2倍)で
出力されるクロツクであり、また、クロツク
CKA1は、クロツクCKA2の1/2周期で出力される
クロツクであり、以下、同様にしてクロツク
CKA3〜CKA7は順次周期が倍となるクロツクで
ある。また、クロツクCKDは図示しないが、上
記クロツクCKA0〜CKA7の何れかと同一周期、
または、クロツクCKA0〜CKA7と分周関係にあ
るクロツクである。 次に、上記アンドゲート18の他の入力信号に
ついて説明する。即ち、上記結果データS6〜S0
バツフア16、また対応するインバータ19
19を介し、アンドゲート21に夫々入力され
ている。また、アンドゲート21には、信号U/
Dがインバータ20を介し入力されている。而し
てアンドゲート21の出力は、信号CDと称し、
制御部に送出されるほか、インバータ22を介
し、アンドゲート18に与えられている。 また、上記結果データの上位4ビツトデータS6
〜S3および信号U/Dが共に、アンドゲート23
に供給され、また、その出力は信号CAと称し、
制御部に送出されるほか、インバータ24を介し
アンドゲート18に供給される。更に、アンドゲ
ート18には、サステイン期間中“0”レベル、
サステイン期間以外のアタツク、デイケイ、リリ
ースの各期間中“1”レベルの信号として、制御
部から送出される信号CSが供給されている。そ
してアンドゲート18の出力は、加算器15のB
入力端子B6〜B0の入力側に設けられたゲート回
路25〜25を駆動し、開閉制御する。ま
た、ゲート回路25には、信号U/Dがアンド
ゲート26を介し入力される一方、ゲート回路2
〜25には夫々、信号が7個のアン
ドゲート群27を介し、入力されている。 アンドゲート18,26の入力信号およびアン
ドゲート群27の入力信号を上記構成によるよう
にした結果、加算器15のB入力端子への入力デ
ータが上述したように、アタツク、デイケイ、サ
ステイン、リリースの各期間において夫々、異な
るようになり、バツフア16の出力データyは、
第9図に示すような状態で変化するものとなる。
而して、第9図にみられるように、上記回路によ
つてエンベロープのアタツク部Aが補正され、音
楽的に好ましい上に凸の曲線となるものである。 次に、第9図に示した出力データyの直線的な
減衰エンベロープ曲線(デイケイ部D、リリース
部R)を、第10図に示すような下に凸の減衰エ
ンベロープ曲線に補正する回路の構成を説明す
る。上記加算器15の結果データの上位4ビツト
データS6〜S3がバツフア16を介し、デコーダ2
8に与えている。そして、デコーダ28の出力ラ
インL0〜L6からは、結果データS6〜S4が「000」
〜「110」に順次変化するとき、順次“1”信号
が出力し、また、出力ラインL7からは結果デー
タS6〜S3が「1110」のとき“1”信号が出力し、
更に、出力ラインL8からは結果データS6〜S3
「1111」のとき“1”信号が出力する。 上記出力ラインL1〜L8の出力信号は夫々、シ
フタを構成する対応するゲート回路29〜29
を駆動して開閉制御する。また、出力ライン
L0〜L6の出力信号は、夫々、対応するゲート回
路30〜30を駆動する。更に、出力ライン
L0〜L7の出力信号は夫々、対応するゲート回路
31〜31,32〜32,33〜33
を駆動する。 一方、ゲート回路29〜29には夫々
“1”信号が入力され、また、ゲート回路30
〜30,31〜31,32〜32,3
〜33には夫々、上記加算器15の結果デ
ータのデータS3,S2,S1,S0が入力されている。
そしてゲート回路29〜29の各出力信号は
夫々、データZを出力する出力ラインZ4〜Z11
供給されている。また、ゲート回路30,30
〜30の各出力信号は夫々、出力ラインZ3
Z3〜Z8に供給されている。更に、ゲート回路31
,31〜31の各出力信号は夫々、出力ラ
インZ2,Z2〜Z9に供給されている。また、ゲート
回路32,32〜32は夫々、出力ライン
Z1,Z1〜Z8に供給されている。更にまた、ゲート
回路33,33〜33の各出力信号は
夫々、出力ラインZ0,Z0〜Z7に供給されている。
そして出力ラインZ11〜Z0の他端には信号“0”
が供給されている。 上記構成により、第9図のデータyは、第10
図に示す波形のデータZに補正され、好ましい減
衰エンベロープが得られる。 次に、上記実施例の動作を説明する。先ず、回
路全体の一般的な動作を説明すると、クロツクφ
とその反転クロツク(累算指令)は夫々、交互
に“0”レベルと、“1”レベルを繰返すクロツ
クである。いま説明の便宜上、クロツクφが
“0”レベルのときをタイミングT0、クロツクφ
が“1”レベルのときをタイミングT1と称する
ことにする。したがつて、第4図に示す回路は2
つのタイミングT0,T1にて時分割的に動作する
ようになつている。即ち、上記累算器3は、累算
指令が“1”となる都度、操作されている演奏
キーに応じた周波数情報を加算し、その累算結果
データを加算器4に印加する。 加算器4では、タイミングT0では、B入力端
子へはエンベロープ発生回路5からのデータZが
そのまま供給されるから、該データZとA入力端
子へのデータとの加算が行なわれる。また、タイ
ミングT1では、A入力端子へは、上記累算結果
データの符号ビツトのみのレベルが反転して入力
され、また、B入力端子へは上記データZの各ビ
ツトのレベルを反転し、且つ、その値に+1した
データが入力されるから、加算器4はA入力端
子、B入力端子へのこれら入力データを加算する
動作を実行する。そして、各タイミングT0,T1
における各加算結果データは、サイン波部7に印
加される。 したがつて、サイン波部7は、タイミングT0
とタイミングT1では、一般に異なつてアドレス
指定され、その結果、各々のタイミングでこのサ
イン波部7から読出されたデータは、累算器8に
より累算される。そして、その累算結果はラツチ
10にクロツクの立上りのタイミングでラツチ
される。 次に、エンベロープ情報発生回路5の動作を具
体的に説明すると、ある演奏キーがオンされる以
前には、バツフア16はクリア状態にあり、デー
タyは7ビツトオール“0”である。また、信号
CSは“1”として出力されている。 上記演奏キーがタイミングt0にてオンされる
と、信号U/Dが“1”として出力されはじめ
る。このため、インバータ20の出力が“0”と
なり、したがつて、アンドゲート21の出力が
“0”、即ち、インバータ22の出力が“1”とな
る。また、アンドゲート23の出力は、加算器1
5の出力データS6〜S0のうち、上位4ビツトデー
タS6〜S3がオール“1”になるまでの間、“0”
であり、したがつてこの間、インバータ24の出
力は“1”である。 この結果、演奏キーのオン操作と共に、アンド
ゲート18が開放される。一方、デコーダ17は
上記出力データS6〜S4をデコードし、いまこのデ
ータS6〜S4が「000」であるから先ず、出力ライ
ンl0から“1”信号を出力し、ゲート回路G0を開
成している。したがつて、上記ゲート回路G0
開成中、クロツクCKA0がアンドゲート18に供
給され、該アンドゲート18から出力されてゲー
ト回路25〜25に供給される。 一方、いま信号U/Dが“1”のためアンドゲ
ート26、アンドゲート群27のうち、アンドゲ
ート26のみが開成し、したがつてゲート回路2
にのみ“1”信号が供給され、また、ゲート
回路25〜25には、“0”信号が供給され
ている。したがつて、加算器15のB入力端子
B6〜B0には、クロツクCKA0の出力ごとに、デー
タ「0000001」、即ち、+1データが供給され、A
入力端子へのデータとの加算が行なわれる。この
結果、その加算結果データS6〜S0は「0000000」、
「0000001」、「0000010」、……と1つずつ増大し、
バツフア16を介し、A入力端子A6〜A0へリサ
ーキユレートされると共に、データyとして出力
され、デコーダ28、ゲート回路29〜29
,……33〜33へ供給される。 そして16発のクロツクCKA0が出力し、タイミ
ングt1にて上記加算結果データS6〜S0
「0010000」となるとデコーダ17は、その出力ラ
インl1から“1”信号を出力しはじめ、この結
果、ゲート回路G0が閉成し、且つゲート回路G1
のみが開成し、クロツクCKA0の2倍の周期(周
波数1/2)のクロツクCKA1がアンドゲート18
へ供給されはじめる。したがつて以後、、加算器
15は、以前の1/2の速度で+1動作を実行す
る。第9図のタイミングt0〜t1間の波形は、デー
タyの変化し示している。 一方、上記タイミングt0〜t1間において、デコ
ーダ28では、出力ラインL0のみから“1”信
号が出力し、ゲート回路30,31,32
,33のみを開成している。そして、出力ラ
インZ0〜Z3に夫々、加算器15の加算結果データ
S0〜S3が供給され、また、出力ラインZ4〜Z11
は共に、“0”信号が供給されている。したがつ
てタイミングt0〜t1間において出力データZは、
「00000000S3S2S1S0」の変化を示し、第10図の
タイミングt0〜t1に示す波形となる。 タイミングt1〜t2間にクロツクCKA1が16発出
力する間、出力データyは、第9図のタイミング
t1〜t2間に示す波形となる。そしてタイミングt2
に上記加算結果データS6〜S0が「0100000」とな
ると、デコーダ17は以後、出力ラインl2のみか
ら“1”信号を出力してゲート回路G2のみを開
成し、クロツクCKA1の2倍の周期のクロツク
CKA2をアンドゲート18に供給しはじめる。こ
のため、タイミングt2以後、加算器15は、以前
の1/2の速度で+1動作を実行する。 一方、上記タイミングt1〜t2間において、デコ
ーダ28では、出力ラインL1のみから“1”信
号を出力し、ゲート回路29,30,31
,32,33のみを開成している。そし
て、出力ラインZ0〜Z3に夫々、加算器15の加算
結果データS0〜S3が供給され、また出力ラインZ4
には、“1”信号が供給され、更に出力ラインZ5
〜Z11には共に、“0”信号が供給される。したが
つてタイミングt1〜t2間において出力データZは
「00000001S3S2S1S0」の変化を示し、第10図の
タイミングt1〜t2に示す波形となる。 以下は上述同様な動作が、上記加算結果データ
S6〜S0が「1111000」となるタイミングt8まで繰
返され、この間、タイミングt3,t4,t5,t6,t7
てデコーダ17は出力ラインl3,l4,l5,l6,l7
ら順次“1”信号を出力開始し、クロツク
CKA3、CKA4、CKA5、CKA6、CKA7を順次ア
ンドゲート18に供給する。この結果、加算器1
5はタイミングt3,t4,t5,t6,t7から順次、それ
以前の1/2の速度による+1動作を実行開始し、
第9図のタイミングt3〜t4,t4〜t5,t5〜t6,t6
t7,t7〜t8のようなデータyの変化が示される。 一方、上記タイミングt2〜t3,t3〜t4,t4〜t5
t5〜t6,t6〜t7,t7〜t8の間、デコーダ28では、
出力ラインL2,L3,L4,L5,L6,L7から順次
“1”信号を出力し、この間、出力ラインZ11〜Z0
から夫々出力するデータZは、
「0000001S3S2S1S0」、「000001S3S2S1S000」、
「00001S3S2S1S0000」、「0001S3S2S1S00000」、
「001S3S2S1S000000」、「01S2S1S00000000」と変化
し、第10図に示す波形となる。 タイミングt8にて加算結果データS6〜S0
「1111000」となると、アンドゲート23の出力
(信号CA)が“1”となり、アタツク期間の終了
が制御部に示され、また、アンドゲート18が一
時的に閉成する。一方、制御部は“1”の信号
CAを入力後、“0”の信号U/Dを出力しはじめ
る。このため、デコーダ17は、出力ラインl8
ら以後、“1”信号を出力し、ゲート回路G8のみ
を開成するので、クロツクCKDがアンドゲート
18に与えられるようになる。而して信号U/D
が“0”に変化した時点から、アンドゲート23
の出力が、再び“0”となり、したがつて、イン
バータ24の出力も再び“1”となり、これによ
り、アンドゲート18が再び開成し、上記クロツ
クCKDを出力しはじめる。ところで、信号U/
Dが“0”となつたため、信号が“1”と
なり、これに応じて以後、アンドゲート群27が
開成し、ゲート回路25〜25と共に、
“1”信号を供給する。このため、加算器15の
B入力端子B6〜B0には、アタツク期間の終了
(タイミングt8)後、クロツクCKDの出力タイミン
グでオール“1”信号が入力されるようになる。
而して加算器15は、A入力端子A6〜A0への入
力データ「1111000」をB入力端子B6〜B0への入
力データ「1111111」とを加算し、この結果デー
タは「−1」されたデータ「1110111」となる。
そして、このようにして、8発のクロツクCKD
が出力しおわると、タイミングt9となり、この
間、上記結果データは、−1ずつされて
「1110000」となる(第9図参照)。 一方、タイミングt8にてデコーダ28の出力ラ
インL8が“1”となるため、このタイミングt8
データZが「100000000000」となり、次いで、1
発目のクロツクCKDの出力後からタイミングt9
なるまでの間、出力ラインL7の出力が“1”と
なつてデータZは「01S2S1S00000000」により1
ずつ減少し、第10図のタイミングt8〜t9の波形
となる。なお、このt8〜t9の時間は、t9〜t10,t11
〜t12……の時間の1/2である。従つて、第2図に
おいて説明した如く、直線L1(これがt8〜t9の部
分に相当する)の減衰時間が直線L2(t9〜t11
t11〜t12……の部分に相当する)の減衰時間に対
して半分となつている。 そして更に、クロツクCKDが16発出力される
タイミングt9〜t10の間、上記加算結果データS6
S0は−1ずつされて、タイミングt10では
「1100000」となる。一方、この間データZは、出
力ラインL6が“1”信号を出力しているため
「001S3S2S1S000000」の変化をし、1ずつ減少す
る。そして、タイミングt10にて、上記加算結果
データS6〜S0が「1100000」となると、この内容
が制御部により検出され、信号CSが“0”とさ
れる。即ち、いまの場合、このレベルがサステイ
ンレベルとされている。このため、アンドゲート
18が閉成してクロツクCKDの出力が禁止さ
れ、これに応じて上記加算結果データS6〜S0
「1100000」のまま保持され、したがつて、データ
Zも「001000000000」に保持される結果、デイケ
イ期間が終了してサステイン期間が開始する。 次に、タイミングt11にて演奏キーがオフされ
ると、制御部は信号CSを再び“1”として出力
し、アンドゲート18を開成させる。このため、
クロツクCKDが再び出力開始し、加算器15は
1ずつの減算動作を、クロツクCKDの出力タイ
ミング毎に実行する。即ち、タイミングt11
t12,t12〜t13,t13〜t14,t14〜t15,t15〜t16,t16
t17間において上記加算結果データS6〜S0の上位
3ビツトデータS6〜S4は夫々、「101」、「100」、
「011」、「010」、「001」、「000」となり、このた
め、タイミングt11〜t17間においては、データy
は、第9図に示すように一定速度で、直線的に減
衰する波形となる。 一方、上記タイミングt11〜t12,t12〜t13,t13
t14,t14〜t15,t15〜t16,t16〜t17間において、デコ
ーダ28では、出力ラインL5,L4,L3,L2
L1,L0から順次“1”信号を出力し、このため
データZは夫々、「0001S3S2S1S00000」、
「00001S3S2S1S0000」、「000001S3S2S1S000」、
「0000001S3S2S1S00」、「00000001S3S2S1S0」、
「00000000S3S2S1S0」となつて、第10図に示す
ような波形となり、タイミングt17にてデータy
がオール“0”、したがつてデータZもオール
“0”となると、エンベロープ制御動作が終了す
る。 茲で、上述したエンベロープ情報制御回路5に
おけるエンベロープのアタツク部の補正動作と、
減衰エンベロープの補正動作の模様をタイミング
別に分類して第1表に示す。
【表】 演奏キーのキーオン時から、そのキーオフ後、
エンベロープが終了するまでの間、第10図に示
すように変化するデータZは、上述したように、
排他的オアゲート611〜6を介し加算器4のB
入力端子へ印加され、A入力端子へのデータと加
算される。 いまこのことを数式を用いて表現すると、次の
ようになる。いま“a”を累算器3から出力され
るデータとする。そしてタイミングT0では、各
データa、Zは直接、加算器4の入力端子A0
A12,B0〜B12に与えられるため、加算器4の出力
はa+Zであり、そしてそのデータがサイン波部
7に供給されるため、累算器8に入力し累算され
るデータは、 sin2πa+Z/213=sin(a+Z)π/4096
………式(5) となる。 また、タイミングT1では、累算器3から与え
られるデータaの最上位ビツト(符号ビツト)を
排他的オアゲート612にて反転し、更にエンベロ
ープ情報発生回路5から与えられるデータZの各
ビツトを排他的オアゲート6〜611にて反転
し、且つ加算器4のキヤリー入力端子cinに
“1”信号を与えるため、累算器8にて累算され
るデータは、 −sin2πa−Z/213=−sin(a−Z)π/409
6………式(6) となる。 したがつて累算器8の出力は、 sin(a+Z)π/4096−sin(a−Z)π/409
6 =2Cosaπ/4096sinZπ/4096………式(7) となる。 したがつて、上記エンベロープ情報発生回路5
の出力データZ(即ち、排他的オアゲート6
11を介し加算器4のB入力端子へ印加されるデ
ータ)によつて、この実施例の電子楽器では、エ
ンベロープ制御が行なえることが判明したもので
あり、即ち、その場合のエンベロープ制御値は、 2sinZπ/4096 ………式(8) である。 第11図は、上記式(8)に第10図のデータZを
入力して、その各値を図示したものであり、良好
なエンベロープが本実施例によつて得られたこと
が分かる。 次に、第12図を参照してエンベロープ制御に
ついて具体的に説明する。先ず、キーオン時でエ
ンベロープ波形が出力していないときには、エン
ベロープ情報発生回路5から出力するデータZは
「0」である。したがつて、各T0のタイミングで
は、サイン波部7から読出される波高値は式(5)か
らsinaπ/4096である。他方、各T1のタイミング
で は、サイン波部7から読出される波高値は式(6)か
ら−sinaπ/4096である。 第12A図は、上記状態を説明するもので、同
図1は、タイミングT0にてサイン波部7から読
出される波高値を、また、同図2はタイミング
T1にてサイン波部7から読出される波高値を
夫々示している。このように、第12A図−1,
2は位相がπ(180゜)相違する為、波高値の符
号が反対であり、両者を加算した結果データ、即
ち、ラツチ10の出力データは、第12A図−3
に示す如くなり、波形が何ら出力しないことにな
る。 そしてキーオン後は、上記状態からエンベロー
プ情報発生回路5が出力データZを「2048」(=
「0100000000000」)に向けて徐々に増大すること
により、上記位相のずれが大きくなつて、出力波
形の波高値も徐々に小さくなつてゆく。第12B
図−1,2,3は、この状態を示している。 そして、上記出力データZが「2048」となる
と、第12C図−1,2に夫々示すように、タイ
ミングT0,T1にてサイン波部7から夫々読出さ
れる波高値は同一位相のデータとなり、その出力
波形は、第12C図−3に示す如く、最大レベル
(振幅が2)となる。そのことは、T0のタイミン
グで式(5)よりcosaπ/4096が読出され、またT1
タイ ミングで式(6)よりcosaπ/4096が読出され、両者
を加 算することにより2cosaπ/4096の波形が出力する
こと からも自明である。 したがつて、演奏キーのキーオン時において、
出力レベルが0レベルから最大レベルまで急激に
上昇するアタツク部では、上記出力データZを
「0」から「2048」まで急激に増大すればよい
(第10図参照)。そして、このアタツクの状態か
らデイケイの状態に移行するには、上記データZ
を「2048」から所定値(例えば本実施例では
「512」)まで順次減少させる。そして、サステイ
ン状態では上記データZを上記所定値(「512」)
に保持せしめる。この結果、出力レベルは一定と
なる。そして、演奏キーのキーオフ検出時から上
記データZを「0」まで徐々に減少させれば、リ
リース状態となり、次いでデータZが「0」とな
れば、出力レベルは0となり、楽音が出力しなく
なる。 以上はADSRの各エンベロープ状態を有する場
合を説明したが、オルガン音のようにアタツク、
サステイン、リリースの3つのエンベロープ状態
を有する場合、あるいは他のエンベロープ状態を
有する場合についても同様にして、エンベロープ
制御を行なえる。 尚、上記実施例では、サイン波部7を1個のみ
設けてタイミングT0,T1の2つのタイミングに
よる時分割処理によつて、上記式(7)を導く式(5)、
式(6)の2つのサイン波形を読出すようにしたが、
2個のサイン波部を設け、例えばその一方には累
算器3とエンベロープ情報発生回路5の各出力デ
ータの和の値を印加し、また、他方のサイン波部
には上記各出力データの差の値を印加し、而して
その結果、双方のサイン波部から出力されるデー
タを加算器で加算出力するようにすれば、時分割
処理を行なわずとも、上記2つのサイン波形を読
出すことは可能である。 また、上記実施例では213=8192のサンプル点
に分割して、1周期のサイン波をサイン波部7に
記憶し、また、このサイン波を読出したが、一般
に2nサンプル点に分割してサイン波を読出すよ
うにした場合、サイン波部から読出される第1、
第2の波形は、 sin2πa+Z/2 ………式(9) −sin2πa−Z/2 ………式(10) となり、その合成波形は、 2Cosaπ/2n−1・sinZπ/2n−1………式(
11) となる。 更に上記データa、データZを加算器4のA入
力端子、B入力端子へ夫々入力させるとき、排他
的オアゲート612を除けば、次式の如く、本実施
例回路は動作することになる。 sin2πa+Z/213+sin2πa−Z/213 =2sinaπ/212・cosZπ/212 ………式(12) そしてこの場合、エンベロープ制御値は、 2cosZπ/212 ………式(13) である。 また、本実施例の回路に他のゲート回路を付加
する等すれば、 −sin2πa+Z/213+sin2πa−Z/213 =−2cosaπ/212・sinZπ/212………式(14
) となし得、この場合のエンベロープ制御値は、 −2sinZπ/212 ………式(15) となる。 その他、演算方式は種々変更しうることは明白
である。 また、上記実施例では、サイン波部7に1周期
のサイン波を記憶して、これを読出すようにした
が、例えば1/4周期、1/2周期のサイン波を記憶し
ておき、また、それをアクセスする場合、アドレ
スを折返して読出しを行なつたり、あるいは出力
波形の符号を反転したりすることにより、少い記
憶容量で波形1周期分のデータを得ることも出来
る。更にこの場合、1/4周期または1/2周期のサイ
ン波の各サンプル点の波高値のほかに、あるサン
プル点と+1した次のサンプル点の各波高値間の
差分値を記憶しておいた波高値と差分値とを共に
読出すようにし、而して上記差分値から隣接する
2サンプル点間の複数のサンプル点に対する補間
値を得るようにすれば、サイン波部の記憶容量を
増加させることなく、更に良好なサイン波を得る
ことができる。 更に、また上記実施例では、演奏キーの操作に
応じて当該音階周波数のサイン波、即ち、基本波
を得るようにしたが、時分割処理および周波数情
報変換ROM2の出力を、所定ビツトシフトする
処理を行なえば、基本波および高次の倍音波を得
ることができ、これにより高調波成分も加えた所
望の波形を得ることができる。 加えて、上記実施例では、音階に対応する周波
数情報を位相角の違いにより得たが、音階周波数
に応じた周波数のクロツクを発生させ、このクロ
ツクによつて、順次波形メモリのアドレスをイン
クリメントするようにしてもよい。その場合は、
サイン波をメモリに記憶する際、波高値の代りに
差分値を記憶させるようにしてもよい。 また、エンベロープのアタツク部の補正を上記
実施例では、クロツクの周波数を切換えて行なつ
たが、カウンタの出力に所定タイミング毎に、一
定値(加数)を加えてアタツク波形を得る方法を
採用して、その場合に、加数を変化させるように
して、アタツク部の補正を行なつてもよい。 更に、減衰エンベロープを得るのに、上記実施
例では、ゲート回路29〜29……33
33から成るシフタにより構成したが、シフト
レジスタを利用したり、あるいは減衰量の大きさ
に応じてクロツクの周波数を切換えたりする等、
他の方法を利用することができる。 また、上記実施例では、下に凸の減衰エンベロ
ープを得る為に、第2図に示す如く、正弦波(余
弦波)を2つの直線部L1,L2に近似し、この直
線に対して減衰曲線(指数曲線)を得るように変
換処理を行なつたが、複数の直線に正弦波(余弦
波)を近似して、その直線を指数曲線に変換処理
するようにしても良い。即ち、その場合、各直線
毎に、減衰速度を変化する(エンベロープ値が大
なるときほど早く、小になるにつれておそくす
る)よう制御すれば下に凸の良好な指数関数曲線
が得られるものである。 この発明は、以上説明したように、エンベロー
プのデイケイ部あるいはリリース部においては、
エンベロープが下に凸の指数関数的波形をとるよ
うに、エンベロープの計数動作をする計数手段の
出力を、その上位側ビツト信号でその下位側ビツ
ト信号のシフトレベルを制御してビツトシフトを
行い、上記計数手段の出力が直線的変化をすると
き、指数関数的変化をする出力を得るように変換
する変換手段を設け、しかも、エンベロープのア
タツク部が、直線的なもしくは上に凸のエンベロ
ープ波形をとるよう、上記変換手段の指数関数的
出力を補正するために、エンベロープのアタツク
部において、上記計数手段に与えるクロツクを周
波数が徐々に低くなるクロツク信号とするよう計
数動作制御手段にて切換制御し、上記変換手段の
変換出力であるエンベロープデータにより、音階
周波数に応じて同一周波数を有し、位相が互いに
逆方向にシフトされた2つの正弦波(あるいは余
弦波)の位相のシフト量の変化速度を時間的に変
化させるようにしてエンベロープ制御がなされた
1つの正弦波(あるいは余弦波)を発生するよう
にした電子楽器のエンベロープ制御装置を提供し
たので、エンベロープの各部が最適な波形をもつ
ようになり、音楽的に好ましい楽音のエンベロー
プ制御が可能となる。
【図面の簡単な説明】
第1図は本出願人の発明である特願昭55−
167583による電子楽器のエンベロープ制御方式に
よつて得られるエンベロープの波形図、第2図は
1/4周期分の正弦波(あるいは余弦波)を直線近
似した状態を示す図、第3図は第1図のエンベロ
ープの減衰部を指数関数的曲線に補正した場合の
状態を示す図、第4図は本発明の一実施例の要部
の回路構成図、第5図はサイン波部7に記憶され
ている1周期分の正弦波を示す図、第6図は第5
図の正弦波のうち、位相角0度〜90度までの波形
の詳細図、第7図はエンベロープ情報発生回路5
の詳細回路構成図、第8図は上記エンベロープ情
報発生回路5にて使用するクロツクCKA0〜
CKA7の波形図、第9図は第7図中のデータyの
波形図、第10図は第7図中のデータZの波形
図、第11図は上記データZにもとづくエンベロ
ープ制御値の波形図、第12A,B,C図は
夫々、サイン波部7から時分割的に読出された2
つの波形と、その波形を合成してエンベロープ制
御がなされた波形とを示す図である。1……キー
ボード、2……周波数情報変換ROM、3……累
算器、4……加算器、5……エンベロープ情報発
生回路、6〜612……排他的オアゲート、7…
…サイン波部、8……累算器、15……加算器、
17……デコーダ、18……アンドゲート、28
……デコーダ、29〜29,30〜30
,31〜31,32〜32,33
33……ゲート回路(シフタ)。

Claims (1)

  1. 【特許請求の範囲】 1 正弦波(あるいは余弦波)を記憶する波形メ
    モリから、音階周波数に応じて上記正弦波(ある
    いは余弦波)を同一周波数を有し、時間とともに
    変化するエンベロープデータに従つた量だけ位相
    が互いに逆方向にシフトされた2つの波形として
    読出し、該読出された上記2つの波形を合成して
    上記2つの波形の相対的な位相のシフト量に基づ
    きエンベロープ制御がなされた1つの正弦波(あ
    るいは余弦波)を発生する電子楽器において、 入力されるクロツク信号に従つて計数動作する
    計数手段と、 上記計数手段に対し、エンベロープのアタツク
    部においては、上記計数手段の出力の増大に伴い
    段階的に低い周波数のクロツク信号に入力を切り
    換えて計数動作させ、エンベロープのデイケイ部
    あるいはリリース部においては、上記計数手段に
    一定の周波数のクロツク信号を入力して計数動作
    させる計数動作制御手段と、 上記計数手段に接続され、この計数手段の出力
    の上位側ビツト信号により定まるシフトレベルに
    応じて、下位側ビツト信号をビツトシフトするよ
    うにし、上記エンベロープのアタツク部において
    は、上記計数手段出力をほぼ直線的に変化するエ
    ンベロープデータに変換し、上記エンベロープの
    デイケイ部あるいはリリース部においては、上記
    計数手段の計数出力を下に凸の指数関数的変化を
    するエンベロープデータに変換する変換手段と、 を具備し、上記変換手段からの上記エンベロープ
    データにより上記2つの波形の相対的な位相のシ
    フト量の変化速度を時間的に変更するようにして
    エンベロープ制御がなされた上記1つの正弦波
    (あるいは余弦波)を発生するようにしたことを
    特徴とする電子楽器のエンベロープ制御装置。
JP56036595A 1980-11-28 1981-03-16 Envelope control system for electronic musical instrument Granted JPS57151998A (en)

Priority Applications (4)

Application Number Priority Date Filing Date Title
JP56036595A JPS57151998A (en) 1981-03-16 1981-03-16 Envelope control system for electronic musical instrument
US06/324,466 US4453440A (en) 1980-11-28 1981-11-24 Envelope control system for electronic musical instrument
EP81305557A EP0053892B1 (en) 1980-11-28 1981-11-24 Envelope control system for electronic musical instrument
DE8181305557T DE3172071D1 (en) 1980-11-28 1981-11-24 Envelope control system for electronic musical instrument

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP56036595A JPS57151998A (en) 1981-03-16 1981-03-16 Envelope control system for electronic musical instrument

Publications (2)

Publication Number Publication Date
JPS57151998A JPS57151998A (en) 1982-09-20
JPS6229794B2 true JPS6229794B2 (ja) 1987-06-29

Family

ID=12474130

Family Applications (1)

Application Number Title Priority Date Filing Date
JP56036595A Granted JPS57151998A (en) 1980-11-28 1981-03-16 Envelope control system for electronic musical instrument

Country Status (1)

Country Link
JP (1) JPS57151998A (ja)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2719330B2 (ja) * 1986-11-06 1998-02-25 カシオ計算機株式会社 エンベロープ発生装置
JPH0733273Y2 (ja) * 1986-11-06 1995-07-31 カシオ計算機株式会社 エンベロ−プ近似装置
JPH0733272Y2 (ja) * 1986-11-06 1995-07-31 カシオ計算機株式会社 エンベロ−プ近似装置
JPH0733274Y2 (ja) * 1986-11-06 1995-07-31 カシオ計算機株式会社 エンベロ−プ近似装置
JPH0769692B2 (ja) * 1986-11-06 1995-07-31 カシオ計算機株式会社 エンベロ−プ近似装置
JPH0733275Y2 (ja) * 1986-11-06 1995-07-31 カシオ計算機株式会社 エンベロ−プ近似装置

Also Published As

Publication number Publication date
JPS57151998A (en) 1982-09-20

Similar Documents

Publication Publication Date Title
JPH0375877B2 (ja)
KR0135601B1 (ko) 전자 악기의 디지탈 신호 발생기
JPS5919356B2 (ja) 電子楽器
JPS6113758B2 (ja)
JPH0230033B2 (ja)
JPS6229794B2 (ja)
US5038661A (en) Waveform generator for electronic musical instrument
JPS5919352B2 (ja) 電子楽器
JPH0486795A (ja) 楽音発生装置
JPH0225515B2 (ja)
JPS639239B2 (ja)
JPH07152382A (ja) 楽音発生システム
JPS61182097A (ja) 電子楽器における雑音減少装置
JPS5938598B2 (ja) 楽音発生装置
JPH0226237B2 (ja)
JPS6154238B2 (ja)
JPS6322312B2 (ja)
JP2586443B2 (ja) 波形発生装置
JP2510090Y2 (ja) 楽音信号発生装置
JP2802714B2 (ja) 電子楽器
JP2912110B2 (ja) サイン合成方式およびこれによる楽音波形発生装置ならびに電子楽器
JPH0746960Y2 (ja) 楽音合成装置
JPS5839B2 (ja) 電子楽器
JP2727451B2 (ja) 楽音発生装置
JP2859073B2 (ja) 電子楽器