JPS6161395B2 - - Google Patents
Info
- Publication number
- JPS6161395B2 JPS6161395B2 JP55108677A JP10867780A JPS6161395B2 JP S6161395 B2 JPS6161395 B2 JP S6161395B2 JP 55108677 A JP55108677 A JP 55108677A JP 10867780 A JP10867780 A JP 10867780A JP S6161395 B2 JPS6161395 B2 JP S6161395B2
- Authority
- JP
- Japan
- Prior art keywords
- envelope
- output
- data
- input
- attack
- 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
Links
- 230000006870 function Effects 0.000 description 17
- 238000000034 method Methods 0.000 description 13
- 238000010586 diagram Methods 0.000 description 5
- 230000007423 decrease Effects 0.000 description 4
- 239000003990 capacitor Substances 0.000 description 2
- 238000007796 conventional method Methods 0.000 description 1
- 230000014509 gene expression Effects 0.000 description 1
- 210000000056 organ Anatomy 0.000 description 1
- 230000010355 oscillation Effects 0.000 description 1
Landscapes
- Electrophonic Musical Instruments (AREA)
Description
【発明の詳細な説明】
この発明はミユージツクシンセサイザ等の電子
楽器のエンベロープ制御装置に関する。
楽器のエンベロープ制御装置に関する。
従来、デイジタル的にエンベロープ波形を発生
してエンベロープ制御を行う方式の1つとして、
ROM(リードオンリメモリ)にエンベロープ波
形を記憶させておき、該ROMからエンベロープ
波形を続出してエンベロープ制御を行うものがあ
るが、このROM読出し方式では一般に大容量
ROMが必要となり、コスト高になる欠点があ
る。またデイジタル方式の他のものでは、カウン
タを設け、該カウンタの計数値の大きさに応じて
該計数値を所定ビツトシフトして、指数関数波形
に近似したエンベロープ波形を得たり、或いは上
記カウンタの入力クロツクの周波数をエンベロー
プの各状態ごとに切替えることにより指数関数波
形に近似したエンベロープ波形を得、該エンベロ
ープ波形によりエンベロープ制御を行うようにし
たものもあるが、この方式の場合、指数関数波形
への近似度を高めるほど複雑なデコード回路等が
必要となり、同様にコスト高になる欠点がある。
なお、従来においても、所定の指数関数等の波形
演算を行つてエンベロープを得ることが研究され
ており、例えば特開昭52−102710号公報や特開昭
53−70812号公報にはそのような技術の開示があ
る。しかるに、これらの従来技術は、いまだ電子
楽器のアタツク、デイケイ、サステイン、リリー
ス等を有するエンベロープ波形を得るには不完全
なものであつた。即ち、上記特開昭52−102710号
公報では、アタツク部分のパラメータとして、ア
タツクレベルを選択しており、その結果、アタツ
クの最終レベルの大小に応じて出力されるエンベ
ロープデータの有効ビツト数が変化してしまい、
均一なエンベロープが波形信号に対してかけられ
なくなり、また、アタツク時間とデイケイ時間と
がアタツクの最終レベルの大きさに依存して変化
してしまい、通常ミユージツクシンセサイザでパ
ラメータとして考えられているアタツク時間、デ
イケイ時間の理解が容易でなくなる問題がある。
また、上記特開昭53−70812号公報の開示技術に
あつては、アタツクの立上りは、デイケイ、リリ
ースの立下りのスピードと同じであつて、ゆるや
かに立上ることになり、急峻に立上るべきところ
がそのようになつておらず不十分なアタツク感し
か得られないという欠点があつた。
してエンベロープ制御を行う方式の1つとして、
ROM(リードオンリメモリ)にエンベロープ波
形を記憶させておき、該ROMからエンベロープ
波形を続出してエンベロープ制御を行うものがあ
るが、このROM読出し方式では一般に大容量
ROMが必要となり、コスト高になる欠点があ
る。またデイジタル方式の他のものでは、カウン
タを設け、該カウンタの計数値の大きさに応じて
該計数値を所定ビツトシフトして、指数関数波形
に近似したエンベロープ波形を得たり、或いは上
記カウンタの入力クロツクの周波数をエンベロー
プの各状態ごとに切替えることにより指数関数波
形に近似したエンベロープ波形を得、該エンベロ
ープ波形によりエンベロープ制御を行うようにし
たものもあるが、この方式の場合、指数関数波形
への近似度を高めるほど複雑なデコード回路等が
必要となり、同様にコスト高になる欠点がある。
なお、従来においても、所定の指数関数等の波形
演算を行つてエンベロープを得ることが研究され
ており、例えば特開昭52−102710号公報や特開昭
53−70812号公報にはそのような技術の開示があ
る。しかるに、これらの従来技術は、いまだ電子
楽器のアタツク、デイケイ、サステイン、リリー
ス等を有するエンベロープ波形を得るには不完全
なものであつた。即ち、上記特開昭52−102710号
公報では、アタツク部分のパラメータとして、ア
タツクレベルを選択しており、その結果、アタツ
クの最終レベルの大小に応じて出力されるエンベ
ロープデータの有効ビツト数が変化してしまい、
均一なエンベロープが波形信号に対してかけられ
なくなり、また、アタツク時間とデイケイ時間と
がアタツクの最終レベルの大きさに依存して変化
してしまい、通常ミユージツクシンセサイザでパ
ラメータとして考えられているアタツク時間、デ
イケイ時間の理解が容易でなくなる問題がある。
また、上記特開昭53−70812号公報の開示技術に
あつては、アタツクの立上りは、デイケイ、リリ
ースの立下りのスピードと同じであつて、ゆるや
かに立上ることになり、急峻に立上るべきところ
がそのようになつておらず不十分なアタツク感し
か得られないという欠点があつた。
他方、アナログ的にエンベロープ波形を発生し
てエンベロープ制御を行う方式としてはコンデン
サ、抵抗から成るCR充放電器を利用したもので
あり、コンデンサ、抵抗の各特性の経年変化が大
きくなると発生するエンベロープの特性が変化
し、音楽上好ましくない欠点、またコンデンサ、
抵抗等のデイスクリート部品を使用するためLSI
化が難しく、エンベロープジエネレータが大型化
する欠点、更にエンベロープのデイケイまたはサ
ステインの各期間においてサステインレバー等を
操作し、サステインレベルを変化させた場合、第
8図aにみられるようにこのサステインレベルの
変化に対するエンベロープ出力の追随性が悪く、
演奏上好ましくない欠点等の種々の欠点がある。
てエンベロープ制御を行う方式としてはコンデン
サ、抵抗から成るCR充放電器を利用したもので
あり、コンデンサ、抵抗の各特性の経年変化が大
きくなると発生するエンベロープの特性が変化
し、音楽上好ましくない欠点、またコンデンサ、
抵抗等のデイスクリート部品を使用するためLSI
化が難しく、エンベロープジエネレータが大型化
する欠点、更にエンベロープのデイケイまたはサ
ステインの各期間においてサステインレバー等を
操作し、サステインレベルを変化させた場合、第
8図aにみられるようにこのサステインレベルの
変化に対するエンベロープ出力の追随性が悪く、
演奏上好ましくない欠点等の種々の欠点がある。
この発明は、上述した事情に鑑みてなされたも
のであり、デイジタル回路によつて所定の指数関
数の波形演算を繰返し実行することによりエンベ
ロープ制御信号を得るようにしたもので、特にア
タツクが急峻であつて、かつその最終レベルがエ
ンベロープの最大レベルとなるようにして、アタ
ツク時間、デイケイ時間の理解が容易となるよう
にした電子楽器のエンベロープ制御装置を提供す
ることを目的とする。
のであり、デイジタル回路によつて所定の指数関
数の波形演算を繰返し実行することによりエンベ
ロープ制御信号を得るようにしたもので、特にア
タツクが急峻であつて、かつその最終レベルがエ
ンベロープの最大レベルとなるようにして、アタ
ツク時間、デイケイ時間の理解が容易となるよう
にした電子楽器のエンベロープ制御装置を提供す
ることを目的とする。
以下、図面を参照してこの発明の一実施例を説
明する。先ず、本実施例の回路構成を説明する前
にエンベロープの概要につき説明する。第1図は
第3図のデイジタル回路により構成されるエンベ
ロープジエネレータで作成されるエンベロープ出
力、即ちエンベロープの一般的波形を示すもの
で、図中、tA,tD,tS,tRは夫々、エンベロ
ープのアタツク時間、デイケイ時間、サステイン
時間、リリース時間を示し、またMAX,SUS,
Oは夫々エンベロープの振幅の最大レベル、サス
テインレベル、Oレベルを示す。
明する。先ず、本実施例の回路構成を説明する前
にエンベロープの概要につき説明する。第1図は
第3図のデイジタル回路により構成されるエンベ
ロープジエネレータで作成されるエンベロープ出
力、即ちエンベロープの一般的波形を示すもの
で、図中、tA,tD,tS,tRは夫々、エンベロ
ープのアタツク時間、デイケイ時間、サステイン
時間、リリース時間を示し、またMAX,SUS,
Oは夫々エンベロープの振幅の最大レベル、サス
テインレベル、Oレベルを示す。
尚、アタツク時間、デイケイ時間、リリース時
間の各時間およびサステインレベルは夫々、アタ
ツクレバー、デイケイレバー、リリースレバー、
サステインレバー(共に図示略)の操作により任
意の値に設定される。また例えば鍵盤上のキーが
オンされると該オンキーに対するエンベロープが
上記エンベロープジエネレータにより作成される
が、そのキーオン時からアタツク時間tAが開始
し、また一般にはアタツク時間が終了するとデイ
ケイ時間が開始し、更にデイケイ時間が終了する
とサステイン時間が開始し、そして上記キーがオ
フされるまで該サステイン時間が継続し、次いで
キーオフと共にリリース時間が開始してエンベロ
ープの振幅レベルがOレベルに達すると上記リリ
ース時間が終了する。然し、この実施例ではエン
ベロープのアタツク時間中またはデイケイ期間中
にキーオフされたときには直ちにリリース状態と
なりキー操作と楽音発生状態が対応するように構
成されている。
間の各時間およびサステインレベルは夫々、アタ
ツクレバー、デイケイレバー、リリースレバー、
サステインレバー(共に図示略)の操作により任
意の値に設定される。また例えば鍵盤上のキーが
オンされると該オンキーに対するエンベロープが
上記エンベロープジエネレータにより作成される
が、そのキーオン時からアタツク時間tAが開始
し、また一般にはアタツク時間が終了するとデイ
ケイ時間が開始し、更にデイケイ時間が終了する
とサステイン時間が開始し、そして上記キーがオ
フされるまで該サステイン時間が継続し、次いで
キーオフと共にリリース時間が開始してエンベロ
ープの振幅レベルがOレベルに達すると上記リリ
ース時間が終了する。然し、この実施例ではエン
ベロープのアタツク時間中またはデイケイ期間中
にキーオフされたときには直ちにリリース状態と
なりキー操作と楽音発生状態が対応するように構
成されている。
第2図Aは第3図の回路に使用される回路記号
とその論理式、一般記号との対応関係を示したも
ので、夫々、オアゲート、アンドゲート、スイツ
チングゲートを示している。第2図Bは第2図A
の回路記号の応用例を示し、特に入力信号がa,
b,cの3種類の場合を示している。茲で、入力
信号cと出力信号dとの関係に特色がある。
とその論理式、一般記号との対応関係を示したも
ので、夫々、オアゲート、アンドゲート、スイツ
チングゲートを示している。第2図Bは第2図A
の回路記号の応用例を示し、特に入力信号がa,
b,cの3種類の場合を示している。茲で、入力
信号cと出力信号dとの関係に特色がある。
次に第3図の回路構成を説明する。図中1はエ
ンベロープステータスカウンタで、図示するよう
にシフトレジスタ2およびこのシフトレジスタ2
の入力側に設けられたゲート回路3により構成さ
れている。このエンベロープステータスカウンタ
1は作成されるエンベロープのアタツク、デイケ
イ、サステイン、リリース、更に後述する空チヤ
ンネルの各状態をその計数値の内容により示すも
のである。
ンベロープステータスカウンタで、図示するよう
にシフトレジスタ2およびこのシフトレジスタ2
の入力側に設けられたゲート回路3により構成さ
れている。このエンベロープステータスカウンタ
1は作成されるエンベロープのアタツク、デイケ
イ、サステイン、リリース、更に後述する空チヤ
ンネルの各状態をその計数値の内容により示すも
のである。
茲でこの実施例では、時分割多重処理方式を採
用して第3図の回路構成で8種類のエンベロープ
を生成可能とされている。そしてこれら時分割多
重処理によるエンベロープジエネレータの分割を
夫々チヤンネルと称し、また8個のエンベロープ
ジエネレータを第1チヤンネル〜第8チヤンネル
と夫々命名しておく。これによりこの実施例の場
合、最大8個のキーが同時にオン、オフされた場
合にもこれらの各キーに対するエンベロープを時
分割多重処理によりすべて制御可能である。そし
て第3図中のシフトレジスタ2をはじめとする各
種シフトレジスタはすべて8チヤンネル分の容量
をもち、夫々8本のレジスタがエスケード接続さ
れてなり、また第1段目のレジスタへの入力デー
タはシフトクロツクにより駆動されて後段側に順
次シフトされるようになつている。また同時に8
個以上のキーがオン、オフされていない場合には
何れかのチヤンネルのエンベロープジエネレータ
が空いているが、このようなエンベロープジエネ
レータのチヤンネルを空チヤンネルと称すること
にする。更にオンされたキーに対するチヤンネル
割当て動作等、この実施例の電子楽器全体の動作
の制御はCPU(中央処理装置:図示略)によつ
て行われるが、その制御内容の詳細については省
略する。
用して第3図の回路構成で8種類のエンベロープ
を生成可能とされている。そしてこれら時分割多
重処理によるエンベロープジエネレータの分割を
夫々チヤンネルと称し、また8個のエンベロープ
ジエネレータを第1チヤンネル〜第8チヤンネル
と夫々命名しておく。これによりこの実施例の場
合、最大8個のキーが同時にオン、オフされた場
合にもこれらの各キーに対するエンベロープを時
分割多重処理によりすべて制御可能である。そし
て第3図中のシフトレジスタ2をはじめとする各
種シフトレジスタはすべて8チヤンネル分の容量
をもち、夫々8本のレジスタがエスケード接続さ
れてなり、また第1段目のレジスタへの入力デー
タはシフトクロツクにより駆動されて後段側に順
次シフトされるようになつている。また同時に8
個以上のキーがオン、オフされていない場合には
何れかのチヤンネルのエンベロープジエネレータ
が空いているが、このようなエンベロープジエネ
レータのチヤンネルを空チヤンネルと称すること
にする。更にオンされたキーに対するチヤンネル
割当て動作等、この実施例の電子楽器全体の動作
の制御はCPU(中央処理装置:図示略)によつ
て行われるが、その制御内容の詳細については省
略する。
上記シフトレジスタ2は容量2ビツトのレジス
タ8本をカスケード接続してなり、またその下位
ビツト(1ビツト目)の出力は上位ビツト(2ビ
ツト目)の出力と共にデコーダ4に与えられるほ
か、アンドゲート5,6、オアゲート7,8を
夫々介して入力側に帰還されている。他方、上位
ビツトの出力はオアゲート9,10、アンドゲー
ト11,12を夫々介し入力側に帰還されてい
る。
タ8本をカスケード接続してなり、またその下位
ビツト(1ビツト目)の出力は上位ビツト(2ビ
ツト目)の出力と共にデコーダ4に与えられるほ
か、アンドゲート5,6、オアゲート7,8を
夫々介して入力側に帰還されている。他方、上位
ビツトの出力はオアゲート9,10、アンドゲー
ト11,12を夫々介し入力側に帰還されてい
る。
空チヤンネルがある場合においてあるキーがオ
ンされるとこのオンキーはある空チヤンネルを
CPUにより割当てられるが、この場合、キーオ
ン操作と共にキーボード(図示略)から出力され
るキーオンパルス(1ビツトタイムパルス)が上
記空チヤンネルに設定されているタイミングにて
エンベロープステータスカウンタ1に入力され、
オアゲート7,8を介し1段目のレジスタ(上記
空チヤンネルに対応するタイミングのレジスタ)
の1ビツト目に、また同時にインバータ13、ア
ンドゲート12を介し上記レジスタの2ビツト目
に与えられる。これにより上記空チヤンネルの状
態は「0」から「1」(共に10進数表示)に変化
し、以後、上述した循環回路により循環保持され
ると共に、上記オンキーに対するエンベロープ波
形の作成が該チヤンネルにて開始される。また該
チヤンネルに対する状態は次いでエンベロープが
アタツク状態からデイケイ状態、サステイン状
態、リリース状態と変化するにつれて上記レジス
タの内容は「1」から「2」(デイケイ状態、サ
ステイン状態)、「3」(リリース状態)と変化
し、次いで空チヤンネル状態の内容「0」に復帰
するように制御されるものである。
ンされるとこのオンキーはある空チヤンネルを
CPUにより割当てられるが、この場合、キーオ
ン操作と共にキーボード(図示略)から出力され
るキーオンパルス(1ビツトタイムパルス)が上
記空チヤンネルに設定されているタイミングにて
エンベロープステータスカウンタ1に入力され、
オアゲート7,8を介し1段目のレジスタ(上記
空チヤンネルに対応するタイミングのレジスタ)
の1ビツト目に、また同時にインバータ13、ア
ンドゲート12を介し上記レジスタの2ビツト目
に与えられる。これにより上記空チヤンネルの状
態は「0」から「1」(共に10進数表示)に変化
し、以後、上述した循環回路により循環保持され
ると共に、上記オンキーに対するエンベロープ波
形の作成が該チヤンネルにて開始される。また該
チヤンネルに対する状態は次いでエンベロープが
アタツク状態からデイケイ状態、サステイン状
態、リリース状態と変化するにつれて上記レジス
タの内容は「1」から「2」(デイケイ状態、サ
ステイン状態)、「3」(リリース状態)と変化
し、次いで空チヤンネル状態の内容「0」に復帰
するように制御されるものである。
デコーダ4はシフトレジスタ2の出力を順次、
各チヤンネルごとにデコードするもので、各チヤ
ンネルの内容が夫々、「0」、「1」、「2」、「3」
のとき、該内容に夫々対応する出力端子「0」、
「1」、「2」、「3」から2値論理レベルの“1”
信号を出力する。茲で、出力端子「0」の出力は
インバータ14を介しスイツチングゲート群15
の各ゲートに与えられて該ゲートを開閉制御する
ほか、インバータ16を介しアンドゲート17に
与えられている。このアンドゲート17はキーが
オフされた場合にキーボードから出力されるキー
オフパルス(1ビツトタイムパルス)によつてゲ
ート制御され、またその出力はオアゲート8を介
しシフトレジスタ2の下位ビツトに入力され、ま
たオアゲート10を介しアンドゲート11に与え
られ、更にスイツチングゲート群18に与えられ
て該スイツチングゲート群18を開閉制御するも
のである。
各チヤンネルごとにデコードするもので、各チヤ
ンネルの内容が夫々、「0」、「1」、「2」、「3」
のとき、該内容に夫々対応する出力端子「0」、
「1」、「2」、「3」から2値論理レベルの“1”
信号を出力する。茲で、出力端子「0」の出力は
インバータ14を介しスイツチングゲート群15
の各ゲートに与えられて該ゲートを開閉制御する
ほか、インバータ16を介しアンドゲート17に
与えられている。このアンドゲート17はキーが
オフされた場合にキーボードから出力されるキー
オフパルス(1ビツトタイムパルス)によつてゲ
ート制御され、またその出力はオアゲート8を介
しシフトレジスタ2の下位ビツトに入力され、ま
たオアゲート10を介しアンドゲート11に与え
られ、更にスイツチングゲート群18に与えられ
て該スイツチングゲート群18を開閉制御するも
のである。
出力端子「1」の出力はアンドゲート19、ア
ンドゲート群20、排他的オアゲート群21の各
第1入力端子、加減算器22の減算指令入力端子
(−)、スイツチングゲート群23の各ゲート、及
びオアゲート24、インバータ25を介しスイツ
チングゲート群26の各ゲートに夫々与えられて
いる。
ンドゲート群20、排他的オアゲート群21の各
第1入力端子、加減算器22の減算指令入力端子
(−)、スイツチングゲート群23の各ゲート、及
びオアゲート24、インバータ25を介しスイツ
チングゲート群26の各ゲートに夫々与えられて
いる。
出力端子「2」の出力は上記オアゲート24に
与えられるほか、スイツチングゲート群27のゲ
ートに開閉制御信号として与えられている。また
出力端子「3」の出力はアンドゲート28のゲー
ト制御信号とされている。
与えられるほか、スイツチングゲート群27のゲ
ートに開閉制御信号として与えられている。また
出力端子「3」の出力はアンドゲート28のゲー
ト制御信号とされている。
シフトレジスタ(演算レジスタ)30は容量9
ビツトのレジスタを8本カスケード接続してな
り、キーオン時においては該キーのキーオンパル
スによつて開成されるスイツチングゲート群31
を介し、指数関数の波形演算のための所定の初期
値、即ち、本発明の特徴とするプリセツト値を入
力することになる。このプリセツト値は、エンベ
ロープの最大値「255」よりも大な値をとる。そ
してこのプリセツト値はシフトクロツクにより駆
動されて8段目のレジスタから出力すると減算器
32の入力端子Aおよびシフト回路33を介し減
算器32の入力端子Bに与える。而し減算器32
から得られる指数関数の波形演算の演算結果デー
タは該キーのエンベロープのアタツク期間中開成
されるスイツチングゲート群34,35を介しシ
フトレジスタ30に帰還され、このようにしてア
タツク期間の終了するまで上記プリセツト値を基
準にして繰返される指数関数の波形演算の結果デ
ータを上記循環回路により循環するように構成さ
れている。尚、上記演算結果データはスイツチン
グゲート群15を介し加減算器22の入力端子C
にも与えられる。また上記スイツチングゲート3
4は上記アンドゲート群20の出力をインバータ
36を介した信号によつて開閉制御され、またス
イツチングゲート群35はキーオンパルスおよび
上記アンドゲート17の出力を入力信号とするオ
アゲート37の出力がインバータ38にて反転さ
れた信号によつて開閉制御される。
ビツトのレジスタを8本カスケード接続してな
り、キーオン時においては該キーのキーオンパル
スによつて開成されるスイツチングゲート群31
を介し、指数関数の波形演算のための所定の初期
値、即ち、本発明の特徴とするプリセツト値を入
力することになる。このプリセツト値は、エンベ
ロープの最大値「255」よりも大な値をとる。そ
してこのプリセツト値はシフトクロツクにより駆
動されて8段目のレジスタから出力すると減算器
32の入力端子Aおよびシフト回路33を介し減
算器32の入力端子Bに与える。而し減算器32
から得られる指数関数の波形演算の演算結果デー
タは該キーのエンベロープのアタツク期間中開成
されるスイツチングゲート群34,35を介しシ
フトレジスタ30に帰還され、このようにしてア
タツク期間の終了するまで上記プリセツト値を基
準にして繰返される指数関数の波形演算の結果デ
ータを上記循環回路により循環するように構成さ
れている。尚、上記演算結果データはスイツチン
グゲート群15を介し加減算器22の入力端子C
にも与えられる。また上記スイツチングゲート3
4は上記アンドゲート群20の出力をインバータ
36を介した信号によつて開閉制御され、またス
イツチングゲート群35はキーオンパルスおよび
上記アンドゲート17の出力を入力信号とするオ
アゲート37の出力がインバータ38にて反転さ
れた信号によつて開閉制御される。
上記アタツク期間の終了時においては、シフト
レジスタ30にはサステインレバー(図示略)に
よつて設定されるサステインレベルSUSをインバ
ータ群39によつて反転したデータが、このとき
開成中のスイツチングゲート群40,35を介し
入力するように構成されている。このため上記ス
イツチングゲート群40は後述するオアゲート群
41の出力(エンベロープデータと称する)をゲ
ート制御信号とする上記アンドゲート群20の出
力を開閉制御信号としている。而して減算器3
2、シフト回路33はデイケイ期間の開始と共
に、シフトレジスタ30に入力された上記サステ
インレベルSUSの反転データを基準にした指数関
数の波形演算を再開してその演算結果データを上
述した循環回路により循環しながら該指数関数の
波形演算を繰返し実行する。尚、上記演算結果デ
ータは上記スイツチングゲート15を介し加減算
器22の入力端子Cにも与えられる。そしてデイ
ケイ期間が終了すると、即ち、この実施例の場
合、後述するエンベロープ出力が上記サステイン
レベルSUSに対応したデータに達すると上記指数
関数の波形演算は手続き当該キーのキーオフ時ま
で操返されて上記エンベロープ出力が上記サステ
インレベルSUSに対応するデータのまま保持され
るようになつている。次いで当該キーがオフされ
ると、このキーオフ時に於ける上記エンベロープ
データがキーオフ時に開成されるスイツチングゲ
ート群18を介しシフトレジスタ30に入力され
るように構成されている。このようにしてリリー
ス期間が開始されると、減算器32、シフト回路
33はシフトレジスタ30に入力された上記エン
ベロープデータを基準にした指数関数の波形演算
を再開して該演算結果データを上述した循環回路
により循環しながら該指数関数の波形演算を繰返
し実行する。またこの指数関数の波形演算結果デ
ータは上記スイツチングゲート15を介し加減算
器22の入力端子Cにも与えられる。そしてエン
ベロープ出力が「0」となると上記演算は停止
し、該チヤンネルは空チヤンネルに復帰する。
レジスタ30にはサステインレバー(図示略)に
よつて設定されるサステインレベルSUSをインバ
ータ群39によつて反転したデータが、このとき
開成中のスイツチングゲート群40,35を介し
入力するように構成されている。このため上記ス
イツチングゲート群40は後述するオアゲート群
41の出力(エンベロープデータと称する)をゲ
ート制御信号とする上記アンドゲート群20の出
力を開閉制御信号としている。而して減算器3
2、シフト回路33はデイケイ期間の開始と共
に、シフトレジスタ30に入力された上記サステ
インレベルSUSの反転データを基準にした指数関
数の波形演算を再開してその演算結果データを上
述した循環回路により循環しながら該指数関数の
波形演算を繰返し実行する。尚、上記演算結果デ
ータは上記スイツチングゲート15を介し加減算
器22の入力端子Cにも与えられる。そしてデイ
ケイ期間が終了すると、即ち、この実施例の場
合、後述するエンベロープ出力が上記サステイン
レベルSUSに対応したデータに達すると上記指数
関数の波形演算は手続き当該キーのキーオフ時ま
で操返されて上記エンベロープ出力が上記サステ
インレベルSUSに対応するデータのまま保持され
るようになつている。次いで当該キーがオフされ
ると、このキーオフ時に於ける上記エンベロープ
データがキーオフ時に開成されるスイツチングゲ
ート群18を介しシフトレジスタ30に入力され
るように構成されている。このようにしてリリー
ス期間が開始されると、減算器32、シフト回路
33はシフトレジスタ30に入力された上記エン
ベロープデータを基準にした指数関数の波形演算
を再開して該演算結果データを上述した循環回路
により循環しながら該指数関数の波形演算を繰返
し実行する。またこの指数関数の波形演算結果デ
ータは上記スイツチングゲート15を介し加減算
器22の入力端子Cにも与えられる。そしてエン
ベロープ出力が「0」となると上記演算は停止
し、該チヤンネルは空チヤンネルに復帰する。
減算器32は上述した指数演算を繰返し実行す
るために両入力端子A,Bの入力データから減算
(A−B)を実行し、その減算結果データを出力
端子O1から出力する。またシフト回路33は入
力データを例えば4ビツト右シフトしたデータを
出力する回路であり、このため出力データは入力
データを1/16倍したデータとなる。
るために両入力端子A,Bの入力データから減算
(A−B)を実行し、その減算結果データを出力
端子O1から出力する。またシフト回路33は入
力データを例えば4ビツト右シフトしたデータを
出力する回路であり、このため出力データは入力
データを1/16倍したデータとなる。
加減算器22は減算指令入力端子(−)に
“1”信号が入力されるとき、即ちアタツク期間
のみ両入力端子C,Dに入力されるデータに対し
減算(C−D)を実行し、またその減算結果を出
力端子O2から出力し、他方、“0”信号が入力さ
れるとき、即ち、空チヤンネル、デイケイ、サス
テインおよびリリースの各期間においては加算
(C+D)を実行し、その加算結果を出力端子O2
から出力する。また加算または減算実行中にキヤ
リーまたはボローが発生すると出力端子キヤリ
ー/ボローからキヤリー信号またはボロー信号を
出力し、アンドゲート19にゲート制御信号とし
て与える。一方、加減算器22からの出力データ
は上記排他的オアゲート群21の各第2入力端子
に与えられる。そして、排他的オアゲート群21
の出力はオアゲート群41を介し、上記エンベロ
ープデータとされている。而してこのエンベロー
プデータ(8ビツトデータ)のうち上位4ビツト
がこの実施例の場合、上記エンベロープ出力とさ
れている。またリリース期間中にエンベロープ出
力が「0」(2進数表示では「0000」)となるとエ
ンベロープ作成を停止し、該チヤンネルを空チヤ
ンネルとするために、上記エンベロープ出力はイ
ンバータ群42を介しアンドゲート群43に入力
され、更にアンドゲート群43の出力は上記アン
ドゲート28、インバータ44を介しアンドゲー
ト6,11に夫々与えられている。この場合、あ
るチヤンネルが空チヤンネルの際には、加減算器
22の入力端子Cには閉成中のスイツチングゲー
ト群15の出力(8ビツトオール“0”データ、
データ「0」)が入力され、他方、入力端子Dに
は、開成中のスイツチングゲート群26を介し8
ビツトオール“0”データ(データ「0」)が入
力されている。したがつて加減算器22は両入力
データ「0」、「0」を加算し、その加算データ
「0」を出力端子O2から出力するものである。ま
たアタツク期間においては、加減算器22の入力
端子Cには減算器32からの演算結果データが入
力され、他方、入力端子Dには開成中のスイツチ
ングゲート群23を介しデータ「127」が入力さ
れている。したがつて加減算器22は減算(C−
D)を実行し、その減算結果を出力する。更にデ
イケイ、サステインの各期間においては、加減算
器22の入力端子Cには上記指数演算結果データ
が入力され、他方、入力端子Dには開成中のスイ
ツチングゲート群27を介しサステインレベル
SUSが入力される。而して加減算器22は加算
(C+D)を実行する。またリリース期間におい
ては、加減算器22の入力端子Cには開成中のス
イツチングゲート群15を介し上記指数関数の波
形演算結果データが入力され、他方、入力端子D
には開成中のスイツチングゲート群6を介し上記
データ「0」が入力され、而して加減算器22は
加算(C+D)を実行するものである。
“1”信号が入力されるとき、即ちアタツク期間
のみ両入力端子C,Dに入力されるデータに対し
減算(C−D)を実行し、またその減算結果を出
力端子O2から出力し、他方、“0”信号が入力さ
れるとき、即ち、空チヤンネル、デイケイ、サス
テインおよびリリースの各期間においては加算
(C+D)を実行し、その加算結果を出力端子O2
から出力する。また加算または減算実行中にキヤ
リーまたはボローが発生すると出力端子キヤリ
ー/ボローからキヤリー信号またはボロー信号を
出力し、アンドゲート19にゲート制御信号とし
て与える。一方、加減算器22からの出力データ
は上記排他的オアゲート群21の各第2入力端子
に与えられる。そして、排他的オアゲート群21
の出力はオアゲート群41を介し、上記エンベロ
ープデータとされている。而してこのエンベロー
プデータ(8ビツトデータ)のうち上位4ビツト
がこの実施例の場合、上記エンベロープ出力とさ
れている。またリリース期間中にエンベロープ出
力が「0」(2進数表示では「0000」)となるとエ
ンベロープ作成を停止し、該チヤンネルを空チヤ
ンネルとするために、上記エンベロープ出力はイ
ンバータ群42を介しアンドゲート群43に入力
され、更にアンドゲート群43の出力は上記アン
ドゲート28、インバータ44を介しアンドゲー
ト6,11に夫々与えられている。この場合、あ
るチヤンネルが空チヤンネルの際には、加減算器
22の入力端子Cには閉成中のスイツチングゲー
ト群15の出力(8ビツトオール“0”データ、
データ「0」)が入力され、他方、入力端子Dに
は、開成中のスイツチングゲート群26を介し8
ビツトオール“0”データ(データ「0」)が入
力されている。したがつて加減算器22は両入力
データ「0」、「0」を加算し、その加算データ
「0」を出力端子O2から出力するものである。ま
たアタツク期間においては、加減算器22の入力
端子Cには減算器32からの演算結果データが入
力され、他方、入力端子Dには開成中のスイツチ
ングゲート群23を介しデータ「127」が入力さ
れている。したがつて加減算器22は減算(C−
D)を実行し、その減算結果を出力する。更にデ
イケイ、サステインの各期間においては、加減算
器22の入力端子Cには上記指数演算結果データ
が入力され、他方、入力端子Dには開成中のスイ
ツチングゲート群27を介しサステインレベル
SUSが入力される。而して加減算器22は加算
(C+D)を実行する。またリリース期間におい
ては、加減算器22の入力端子Cには開成中のス
イツチングゲート群15を介し上記指数関数の波
形演算結果データが入力され、他方、入力端子D
には開成中のスイツチングゲート群6を介し上記
データ「0」が入力され、而して加減算器22は
加算(C+D)を実行するものである。
尚、上記アンドゲート群20の出力は更にエン
ベロープステータスカウンタ1内の上記オアゲー
ト9に、またインバータ45を介し上記アンドゲ
ート5に夫々与えられており、エンベロープの状
態を制御するようになつている。
ベロープステータスカウンタ1内の上記オアゲー
ト9に、またインバータ45を介し上記アンドゲ
ート5に夫々与えられており、エンベロープの状
態を制御するようになつている。
次に上記実施例の動作を説明する。電子楽器の
演奏開始に際し、サステインレバーを所望位置に
設定し、所望の値のサステインレベルSUS(例え
ば数値データ「200」に対応するレベル)をサス
テインレバーから出力させておく。先ず、あるチ
ヤンネルが空チヤンネルであるときの動作を説明
する。この場合、上記空チヤンネルに対するエン
ベロープステータスカウンタ1の計数値、即ちシ
フトレジスタ2内の該空チヤンネルに対応するレ
ジスタの内容は「0」である。したがつてシフト
レジスタ2から該空チヤンネルのタイミングで該
内容「0」が出力され、デコーダ4に与えられる
都度、デコーダ4の出力端子「0」のみから
“1”信号が出力される。この“1”信号はイン
バータ16によつて“0”信号とされ、アンドゲ
ート17に与えられることにより、その出力を
“0”とする。このアンドゲート17の出力
“0”信号はオアゲート8に与えられるが、該オ
アゲート8の他の入力、即ちオアゲート7の出力
はこのとき“0”であり、したがつてオアゲート
8の出力は“0”となつてシフトレジスタ2の1
段目のレジスタの1ビツト目に与えられる。同時
に上記1段目のレジスタの2ビツト目には、アン
ドゲート12の出力“0”が入力され、したがつ
てシフトレジスタ2には上記空チヤンネルに対応
するタイミングでデータ「0」が再び入力される
ことになり、以下、該空チヤンネルに対しては上
述した動作が繰返される。
演奏開始に際し、サステインレバーを所望位置に
設定し、所望の値のサステインレベルSUS(例え
ば数値データ「200」に対応するレベル)をサス
テインレバーから出力させておく。先ず、あるチ
ヤンネルが空チヤンネルであるときの動作を説明
する。この場合、上記空チヤンネルに対するエン
ベロープステータスカウンタ1の計数値、即ちシ
フトレジスタ2内の該空チヤンネルに対応するレ
ジスタの内容は「0」である。したがつてシフト
レジスタ2から該空チヤンネルのタイミングで該
内容「0」が出力され、デコーダ4に与えられる
都度、デコーダ4の出力端子「0」のみから
“1”信号が出力される。この“1”信号はイン
バータ16によつて“0”信号とされ、アンドゲ
ート17に与えられることにより、その出力を
“0”とする。このアンドゲート17の出力
“0”信号はオアゲート8に与えられるが、該オ
アゲート8の他の入力、即ちオアゲート7の出力
はこのとき“0”であり、したがつてオアゲート
8の出力は“0”となつてシフトレジスタ2の1
段目のレジスタの1ビツト目に与えられる。同時
に上記1段目のレジスタの2ビツト目には、アン
ドゲート12の出力“0”が入力され、したがつ
てシフトレジスタ2には上記空チヤンネルに対応
するタイミングでデータ「0」が再び入力される
ことになり、以下、該空チヤンネルに対しては上
述した動作が繰返される。
一方、デコーダ4の出力端子「0」の出力
“1”によつてインバータ14の出力が“0”と
なり、上記空チヤンネルのタイミングではスイツ
チングゲート群15が閉成され、加減算器22の
入力端子Cの入力はオール“0”(データ「0」)
となる。一方、入力端子Dにはこのとき同時に、
オアゲート24の出力が“0”のため出力が
“1”となつているインバータ25の該出力
“1”により開成されるスイツチングゲート群2
6の出力、オール“0”(データ「0」)が入力さ
れる。尚、スイツチングゲート群23,27はこ
のとき共に閉成されているから、上記入力端子D
にデータ「127」およびサステインレベルSUSは
入力されない。このようにして上記空チヤンネル
のタイミングでは加減算器22の入力端子C,D
には共にデータ「0」が入力され、また該加減算
器22の減算指令入力端子(−)には“0”信号
が同時に入力されるから、加減算器22は上記空
チヤンネルのタイミングにてデータ「0」とデー
タ「0」とを加算し、その加算出力「0」を出力
端子O2から出力し、排他的オアゲート群21の
各第1入力端子に与える。一方、排他的オアゲー
ト群21の各第2入力端子には共に“0”信号が
入力されるから、排他的オアゲート群21の各出
力は“0”となり、オアゲート群41に与えられ
るが、該オアゲート群41の他の入力、即ちアン
ドゲート19の出力はいま“0”であるから、上
記空チヤンネルのタイミングにおけるオアゲート
群41の出力、即ちエンベロープデータはオール
“0”(データ「0」)、したがつてその上位4ビツ
トのデータであるエンベロープ出力もオール
“0”(データ「0」)となる。
“1”によつてインバータ14の出力が“0”と
なり、上記空チヤンネルのタイミングではスイツ
チングゲート群15が閉成され、加減算器22の
入力端子Cの入力はオール“0”(データ「0」)
となる。一方、入力端子Dにはこのとき同時に、
オアゲート24の出力が“0”のため出力が
“1”となつているインバータ25の該出力
“1”により開成されるスイツチングゲート群2
6の出力、オール“0”(データ「0」)が入力さ
れる。尚、スイツチングゲート群23,27はこ
のとき共に閉成されているから、上記入力端子D
にデータ「127」およびサステインレベルSUSは
入力されない。このようにして上記空チヤンネル
のタイミングでは加減算器22の入力端子C,D
には共にデータ「0」が入力され、また該加減算
器22の減算指令入力端子(−)には“0”信号
が同時に入力されるから、加減算器22は上記空
チヤンネルのタイミングにてデータ「0」とデー
タ「0」とを加算し、その加算出力「0」を出力
端子O2から出力し、排他的オアゲート群21の
各第1入力端子に与える。一方、排他的オアゲー
ト群21の各第2入力端子には共に“0”信号が
入力されるから、排他的オアゲート群21の各出
力は“0”となり、オアゲート群41に与えられ
るが、該オアゲート群41の他の入力、即ちアン
ドゲート19の出力はいま“0”であるから、上
記空チヤンネルのタイミングにおけるオアゲート
群41の出力、即ちエンベロープデータはオール
“0”(データ「0」)、したがつてその上位4ビツ
トのデータであるエンベロープ出力もオール
“0”(データ「0」)となる。
更に上記空チヤンネルのタイミングにおいて、
アンドゲート群20の出力が“0”であることか
らスイツチングゲート群34が開成され、且つス
イツチングゲート群40が閉成される。また同タ
イミングにおいてスイツチングゲート群18,3
1が閉成され、且つスイツチングゲート群35が
開成される。これにより上記空チヤンネルのタイ
ミングにおいては、シフトレジスタ30、シフト
回路33、減算器32、スイツチングゲート群3
4,35から成る循環回路により、あるデータが
循環保持されることになり、以下、上述同様な動
作が上記空チヤンネルのタイミングごとに繰返さ
れる。
アンドゲート群20の出力が“0”であることか
らスイツチングゲート群34が開成され、且つス
イツチングゲート群40が閉成される。また同タ
イミングにおいてスイツチングゲート群18,3
1が閉成され、且つスイツチングゲート群35が
開成される。これにより上記空チヤンネルのタイ
ミングにおいては、シフトレジスタ30、シフト
回路33、減算器32、スイツチングゲート群3
4,35から成る循環回路により、あるデータが
循環保持されることになり、以下、上述同様な動
作が上記空チヤンネルのタイミングごとに繰返さ
れる。
このようにしてあるチヤンネルが空チヤンネル
の場合、エンベロープ出力はデータ「0」である
から、8チヤンネル分の時分割多重動作を実行す
る第3図のエンベロープジエネレータは、該空チ
ヤンネルのタイミングにおいてはエンベロープの
作成動作を実行せず、したがつて該空チヤンネル
による放音動作も実行されない。
の場合、エンベロープ出力はデータ「0」である
から、8チヤンネル分の時分割多重動作を実行す
る第3図のエンベロープジエネレータは、該空チ
ヤンネルのタイミングにおいてはエンベロープの
作成動作を実行せず、したがつて該空チヤンネル
による放音動作も実行されない。
上述したようにして空チヤンネルが存在すると
きにおいてキーが1個オンされた場合、該キーの
オン操作が検出され、キーボードから1ビツトタ
イミングパルスであるキーオン信号が発生し、エ
ンベロープジエネレータに送られてくる。そして
上記キーオン信号(“1”)はオアゲート7,8を
介しシフトレジスタ2の1段目のレジスタの1ビ
ツト目に、上記オンキーに対し割当てられたある
空チヤンネル、例えば第3チヤンネルのタイミン
グにて入力される。一方、上記1段目のレジスタ
の2ビツト目には同時に、キーオンパルス
(“1”)により出力“0”となるインバータ13
の該出力“0”がアンゲート12を介し入力され
る。したがつて上記シフトレジスタ2の第3チヤ
ンネルの内容は「1」に変化し、該第3チヤンネ
ルがアタツク期間に変化したことを示すものとな
る。而してこの第3チヤンネルの内容「1」を示
すデータがシフトレジスタ2から出力され、デコ
ーダ4に与えられると該デコーダ4にてデコード
され、第3チヤンネルのタイミングにて出力端子
「1」の出力のみが“1”となる。
きにおいてキーが1個オンされた場合、該キーの
オン操作が検出され、キーボードから1ビツトタ
イミングパルスであるキーオン信号が発生し、エ
ンベロープジエネレータに送られてくる。そして
上記キーオン信号(“1”)はオアゲート7,8を
介しシフトレジスタ2の1段目のレジスタの1ビ
ツト目に、上記オンキーに対し割当てられたある
空チヤンネル、例えば第3チヤンネルのタイミン
グにて入力される。一方、上記1段目のレジスタ
の2ビツト目には同時に、キーオンパルス
(“1”)により出力“0”となるインバータ13
の該出力“0”がアンゲート12を介し入力され
る。したがつて上記シフトレジスタ2の第3チヤ
ンネルの内容は「1」に変化し、該第3チヤンネ
ルがアタツク期間に変化したことを示すものとな
る。而してこの第3チヤンネルの内容「1」を示
すデータがシフトレジスタ2から出力され、デコ
ーダ4に与えられると該デコーダ4にてデコード
され、第3チヤンネルのタイミングにて出力端子
「1」の出力のみが“1”となる。
一方、シフトレジスタ2から出力された上記第
3チヤンネルのデータ「1」のうち1ビツト目の
データ“1”は該出力タイミングにて開成される
アンドゲート5,6およびオアゲート7,8を介
しシフトレジスタ2の1段目のレジスタの1ビツ
ト目に入力され、同時に2ビツト目のデータ
“0”はオアゲート9,10および該出力タイミ
ングにて開成されるアンドゲート11,12を介
しシフトレジスタ2の1段目のレジスタの2ビツ
ト目に入力される。この結果、シフトレジスタ2
には上記第3チヤンネルのタイミングにて上記デ
ータ「1」が再び入力され、以下同様にして、上
記第3チヤンネルのアタツク期間中、該第3チヤ
ンネルのタイミングでシフトレジスタ2の8段目
のレジスタから出力されるデータ「1」は上述し
た循環回路を介して該第3チヤンネルのタイミン
グにてシフトレジスタ2の1段目のレジスタに入
力され、これにより上記循環回路にて循環保持さ
れるものである。またこれにともなつてデコーダ
4の出力端子「1」からは上記第3チヤンネルの
タイミング毎に“1”信号が出力されるようにな
る。
3チヤンネルのデータ「1」のうち1ビツト目の
データ“1”は該出力タイミングにて開成される
アンドゲート5,6およびオアゲート7,8を介
しシフトレジスタ2の1段目のレジスタの1ビツ
ト目に入力され、同時に2ビツト目のデータ
“0”はオアゲート9,10および該出力タイミ
ングにて開成されるアンドゲート11,12を介
しシフトレジスタ2の1段目のレジスタの2ビツ
ト目に入力される。この結果、シフトレジスタ2
には上記第3チヤンネルのタイミングにて上記デ
ータ「1」が再び入力され、以下同様にして、上
記第3チヤンネルのアタツク期間中、該第3チヤ
ンネルのタイミングでシフトレジスタ2の8段目
のレジスタから出力されるデータ「1」は上述し
た循環回路を介して該第3チヤンネルのタイミン
グにてシフトレジスタ2の1段目のレジスタに入
力され、これにより上記循環回路にて循環保持さ
れるものである。またこれにともなつてデコーダ
4の出力端子「1」からは上記第3チヤンネルの
タイミング毎に“1”信号が出力されるようにな
る。
一方、上記第3チヤンネルのキーオンパルスの
出力時において、該キーオンパルス(“1”)がオ
アゲート37を介しインバータ38に与えられ、
したがつて該インバータ38の出力“0”によつ
て該キーオンパルスの出力時のみスイツチングゲ
ート群35が閉成され、それ以外は開成される。
更にアンドゲート群20の出力が第3チヤンネル
のアタツク期間終了時まで“0”のため、該アタ
ツク期間中インバータ36の出力が“1”となつ
てスイツチングゲート群34が第3チヤンネルの
タイミングでは開成され、同時にスイツチングゲ
ート群40が閉成される。また上記キーオンパル
スの出力時のみ該キーオンパルス(“1”)によつ
てスイツチングゲート群31が開成される。この
結果、第3チヤンネルを割当てられた上記オンキ
ーのキーオンパルスの出力時に、該第3チヤンネ
ルのタイミングにてスイツチングゲート群31を
介し、指数演算のための初期値、例えば数値デー
タ「383」がシフトレジスタ30の1段目のレジ
スタに入力される。このプリセツト値383は、エ
ンベロープの最大値255よりも大なる値であるこ
とにより、このプリセツト値から指数関数的に減
衰してゆくカーブは、他のデイケイ、リリースの
部分よりも急峻に立下ることになり、この下に凸
の減衰カーブを後述するように反転して得られる
アタツク部分の上に凸のエンベロープ波形は当然
のこととして、他の部分よりも急峻な傾きをもつ
ようになる。そして上記数値データ「383」がシ
フトレジスタ30の8段目のレジスタから出力さ
れると減算器32の入力端子Aに、またシフト回
路33に入力される。而してシフト回路33は上
記数値データ「383」を4ビツト右シフトしてデ
ータ「23」を得、該データ「23」を減算器32の
入力端子Bに与える。これにより減算器32の減
算結果(A−B)は「360」となり、開成中のス
イツチングゲート群15を介し加減算器22の入
力端子Cに与えられ、同時に開成中のスイツチン
グゲート群34,35を介しシフトレジスタ30
に与えられる。
出力時において、該キーオンパルス(“1”)がオ
アゲート37を介しインバータ38に与えられ、
したがつて該インバータ38の出力“0”によつ
て該キーオンパルスの出力時のみスイツチングゲ
ート群35が閉成され、それ以外は開成される。
更にアンドゲート群20の出力が第3チヤンネル
のアタツク期間終了時まで“0”のため、該アタ
ツク期間中インバータ36の出力が“1”となつ
てスイツチングゲート群34が第3チヤンネルの
タイミングでは開成され、同時にスイツチングゲ
ート群40が閉成される。また上記キーオンパル
スの出力時のみ該キーオンパルス(“1”)によつ
てスイツチングゲート群31が開成される。この
結果、第3チヤンネルを割当てられた上記オンキ
ーのキーオンパルスの出力時に、該第3チヤンネ
ルのタイミングにてスイツチングゲート群31を
介し、指数演算のための初期値、例えば数値デー
タ「383」がシフトレジスタ30の1段目のレジ
スタに入力される。このプリセツト値383は、エ
ンベロープの最大値255よりも大なる値であるこ
とにより、このプリセツト値から指数関数的に減
衰してゆくカーブは、他のデイケイ、リリースの
部分よりも急峻に立下ることになり、この下に凸
の減衰カーブを後述するように反転して得られる
アタツク部分の上に凸のエンベロープ波形は当然
のこととして、他の部分よりも急峻な傾きをもつ
ようになる。そして上記数値データ「383」がシ
フトレジスタ30の8段目のレジスタから出力さ
れると減算器32の入力端子Aに、またシフト回
路33に入力される。而してシフト回路33は上
記数値データ「383」を4ビツト右シフトしてデ
ータ「23」を得、該データ「23」を減算器32の
入力端子Bに与える。これにより減算器32の減
算結果(A−B)は「360」となり、開成中のス
イツチングゲート群15を介し加減算器22の入
力端子Cに与えられ、同時に開成中のスイツチン
グゲート群34,35を介しシフトレジスタ30
に与えられる。
加減算器22の入力端子Cに上記データ
「360」が入力されたタイミングにおいて、入力端
子Dには同時に、該タイミングにて開成されるス
イツチングゲート群23を介し数値データ
「127」が入力されると共に、減算指令入力端子
(−)にはデータ“1”が入力され、減算指令が
加減算器22に対し与えられる。このため加減算
器22は減算(C−D)を実行し、その出力は
「233」(2進数表示では、「11101001」)となつて
出力端子O2を介し排他的オアゲート群21の各
第1入力端子に与えられる。上記排他的オアゲー
ト群21の各第2入力端子にはアタツク期間中の
第3チヤンネルのタイミング毎に“1”信号が与
えられるため、排他的オアゲート群21の出力は
上記入力データ「233」の反転データ「22」(2進
数表示では「00010110」)となり、オアゲート群
41に与えられる。而してオアゲート群41の他
方入力、即ち、アンドゲート19の出力は“0”
であるからオアゲート群41の出力、即ち、エン
ベロープデータは「22」となり、他方、エンベロ
ープデータの上位4ビツトから得るエンベロープ
出力は「1」(2進数表示では「0001」)となる。
尚、上記エンベロープデータはスイツチングゲー
ト群18に与えられるが、該スイツチングゲート
群18は閉成されており、そのデータは出力され
ない。また上記エンベロープ出力はインバータ群
42を介しアンドゲート群43に入力されるが、
該アンドゲート群43の出力は“0”であり、エ
ンベロープステータスカウンタ1の第3チヤンネ
ルの内容は「1」のまま変化しない。
「360」が入力されたタイミングにおいて、入力端
子Dには同時に、該タイミングにて開成されるス
イツチングゲート群23を介し数値データ
「127」が入力されると共に、減算指令入力端子
(−)にはデータ“1”が入力され、減算指令が
加減算器22に対し与えられる。このため加減算
器22は減算(C−D)を実行し、その出力は
「233」(2進数表示では、「11101001」)となつて
出力端子O2を介し排他的オアゲート群21の各
第1入力端子に与えられる。上記排他的オアゲー
ト群21の各第2入力端子にはアタツク期間中の
第3チヤンネルのタイミング毎に“1”信号が与
えられるため、排他的オアゲート群21の出力は
上記入力データ「233」の反転データ「22」(2進
数表示では「00010110」)となり、オアゲート群
41に与えられる。而してオアゲート群41の他
方入力、即ち、アンドゲート19の出力は“0”
であるからオアゲート群41の出力、即ち、エン
ベロープデータは「22」となり、他方、エンベロ
ープデータの上位4ビツトから得るエンベロープ
出力は「1」(2進数表示では「0001」)となる。
尚、上記エンベロープデータはスイツチングゲー
ト群18に与えられるが、該スイツチングゲート
群18は閉成されており、そのデータは出力され
ない。また上記エンベロープ出力はインバータ群
42を介しアンドゲート群43に入力されるが、
該アンドゲート群43の出力は“0”であり、エ
ンベロープステータスカウンタ1の第3チヤンネ
ルの内容は「1」のまま変化しない。
第4図はアタツク期間中における演算レジスタ
(シフトレジスタ)30の出力、加減算器22の
出力、エンベロープデータおよびエンベロープ出
力の各データの対応関係を示すもので、1行目は
上述した動作の結果を表わしている。
(シフトレジスタ)30の出力、加減算器22の
出力、エンベロープデータおよびエンベロープ出
力の各データの対応関係を示すもので、1行目は
上述した動作の結果を表わしている。
上記1回目の演算後、次の第3チヤンネルのタ
イミングになると、先にシフトレジスタ30に入
力されたデータ「360」にもとづき2回目の演算
が開始される。この2回目の減算器32の出力は
「338」であり、このデータ「338」は加減算器2
2の入力端子C及びシフトレジスタ30の入力端
子に夫々与えられる。而して加減算器22の入力
端子Dにはデータ「127」が再び入力され、減算
(C−D)が実行される。そしてその出力は第4
図に示す如く「211」となり、また、このデータ
「211」は排他的オアゲート群21より反転出力さ
れて「44」となり、これによりエンベロープデー
タも「44」となる。またエンベロープ出力は
「2」となる。
イミングになると、先にシフトレジスタ30に入
力されたデータ「360」にもとづき2回目の演算
が開始される。この2回目の減算器32の出力は
「338」であり、このデータ「338」は加減算器2
2の入力端子C及びシフトレジスタ30の入力端
子に夫々与えられる。而して加減算器22の入力
端子Dにはデータ「127」が再び入力され、減算
(C−D)が実行される。そしてその出力は第4
図に示す如く「211」となり、また、このデータ
「211」は排他的オアゲート群21より反転出力さ
れて「44」となり、これによりエンベロープデー
タも「44」となる。またエンベロープ出力は
「2」となる。
以下、同様にして第3チヤンネルのタイミング
毎に3回目以降の各演算が実行される。この結
果、第4図に示す如くエンベロープデータもエン
ベロープ出力も次第に大きくなつてゆく。而して
エンベロープ出力は4ビツトデータであるから、
16回目の演算後に得られるエンベロープ出力デー
タ「15」は最大値を示している。また18回目の演
算が実行されると、減算器32の出力(A−B)
は「125」となり、この結果、加減算器22の出
力(C−D)は「−2」となつてキヤリー/ボロ
ー出力端子からボロー信号(“1”)が出力され、
アンドゲート19に与えられる。したがつてこの
ときアンドゲート19の出力が“1”となつてオ
アゲート群41に与えられ、この結果、該オアゲ
ート群41からオール“1”データ(データ
「255」)が強制的に出力される。即ち、18回目の
演算結果により、エンベロープデータは最大値の
「255」となり、またエンベロープ出力は16回目、
17回目の演算結果と同一の最大値「15」を保持さ
れている。更にこのとき、オール“1”データで
ある上記エンベロープデータ「255」がアンドゲ
ート群20に与えられ、該アンドゲート群20を
開成させる。このためアンドゲート群20の出力
が、上記エンベロープデータが最大値「255」に
なつた時点でのみ“1”となり、オアゲート9及
びインバータ45に同時に与えられる。オアゲー
ト9に入力された上記“1”信号は更にオアゲー
ト10、また、この第3チヤンネルのタイミング
において開成されるアンドゲート11,12を介
しシフトレジスタ2の2ビツト目に入力される。
また同時にシフトレジスタ2の1ビツト目には、
インバータ45の出力“0”によつて閉成される
アンドゲート5の出力“0”が、更にアンドゲー
ト6、オアゲート7,8を介し入力される。これ
によりシフトレジスタ2の第3チヤンネルは内容
が「2」に変化し、該第3チヤンネルがデイケイ
あるいはサステインの各期間を示す内容となり、
またデコーダ4はその出力端子「2」のみから第
3チヤンネルのタイミングごとに“1”信号を出
力するようになる。
毎に3回目以降の各演算が実行される。この結
果、第4図に示す如くエンベロープデータもエン
ベロープ出力も次第に大きくなつてゆく。而して
エンベロープ出力は4ビツトデータであるから、
16回目の演算後に得られるエンベロープ出力デー
タ「15」は最大値を示している。また18回目の演
算が実行されると、減算器32の出力(A−B)
は「125」となり、この結果、加減算器22の出
力(C−D)は「−2」となつてキヤリー/ボロ
ー出力端子からボロー信号(“1”)が出力され、
アンドゲート19に与えられる。したがつてこの
ときアンドゲート19の出力が“1”となつてオ
アゲート群41に与えられ、この結果、該オアゲ
ート群41からオール“1”データ(データ
「255」)が強制的に出力される。即ち、18回目の
演算結果により、エンベロープデータは最大値の
「255」となり、またエンベロープ出力は16回目、
17回目の演算結果と同一の最大値「15」を保持さ
れている。更にこのとき、オール“1”データで
ある上記エンベロープデータ「255」がアンドゲ
ート群20に与えられ、該アンドゲート群20を
開成させる。このためアンドゲート群20の出力
が、上記エンベロープデータが最大値「255」に
なつた時点でのみ“1”となり、オアゲート9及
びインバータ45に同時に与えられる。オアゲー
ト9に入力された上記“1”信号は更にオアゲー
ト10、また、この第3チヤンネルのタイミング
において開成されるアンドゲート11,12を介
しシフトレジスタ2の2ビツト目に入力される。
また同時にシフトレジスタ2の1ビツト目には、
インバータ45の出力“0”によつて閉成される
アンドゲート5の出力“0”が、更にアンドゲー
ト6、オアゲート7,8を介し入力される。これ
によりシフトレジスタ2の第3チヤンネルは内容
が「2」に変化し、該第3チヤンネルがデイケイ
あるいはサステインの各期間を示す内容となり、
またデコーダ4はその出力端子「2」のみから第
3チヤンネルのタイミングごとに“1”信号を出
力するようになる。
一方、上記アンドゲート群20の出力“1”に
よつてスイツチングゲート群34が一時的に閉成
され、同時にスイツチングゲート群40が開成さ
れる。またこのときスイツチングゲート群18,
31が閉成され、且つスイツチングゲート群35
が開成される。このため上記スイツチングゲート
群40を介しインバータ群39の出力、即ち、サ
ステインレベルSUS(いま数値データ「200」に
より示される)の反転データであるデータ「55」
が出力され、該データ「55」は更にスイツチング
ゲート群35を介しシフトレジスタ30の1段目
のレジスタに入力され、これにより第3チヤンネ
ルのデイケイ期間の演算が開始される。
よつてスイツチングゲート群34が一時的に閉成
され、同時にスイツチングゲート群40が開成さ
れる。またこのときスイツチングゲート群18,
31が閉成され、且つスイツチングゲート群35
が開成される。このため上記スイツチングゲート
群40を介しインバータ群39の出力、即ち、サ
ステインレベルSUS(いま数値データ「200」に
より示される)の反転データであるデータ「55」
が出力され、該データ「55」は更にスイツチング
ゲート群35を介しシフトレジスタ30の1段目
のレジスタに入力され、これにより第3チヤンネ
ルのデイケイ期間の演算が開始される。
デイケイ期間の1回目の演算は上記データ
「55」にもとづき実行されるが、この場合、減算
器32の入力端子Aにはデータ「55」が入力さ
れ、また入力端子Bにはデータ「3」が入力さ
れ、この結果、減算器32の出力(A−B)は
「52」となり、加減算器22の入力端子Cに与え
られる。一方、加減算器22の入力端子Dには、
デコーダ4の出力端子「2」からの“1”信号に
よつて上記デイケイ期間、更にサステイン期間中
開成されるスイツチングゲート群27を介し、上
記サステインレベルSUSによるデータ「200」が
入力されるようになる。尚、このデイケイ期間及
びサステイン期間においてスイツチングゲート群
23,26は共に閉成されている。またスイツチ
ングゲート群18,31も共に閉成され、且つス
イツチングゲート群34,35は共に開成されて
いる。
「55」にもとづき実行されるが、この場合、減算
器32の入力端子Aにはデータ「55」が入力さ
れ、また入力端子Bにはデータ「3」が入力さ
れ、この結果、減算器32の出力(A−B)は
「52」となり、加減算器22の入力端子Cに与え
られる。一方、加減算器22の入力端子Dには、
デコーダ4の出力端子「2」からの“1”信号に
よつて上記デイケイ期間、更にサステイン期間中
開成されるスイツチングゲート群27を介し、上
記サステインレベルSUSによるデータ「200」が
入力されるようになる。尚、このデイケイ期間及
びサステイン期間においてスイツチングゲート群
23,26は共に閉成されている。またスイツチ
ングゲート群18,31も共に閉成され、且つス
イツチングゲート群34,35は共に開成されて
いる。
加減算器22の減算指令入力端子(−)にはデ
イケイ、サステインの各期間中、“0”信号が入
力され、加算指令が与えられている。このため加
減算器22はデイケイ期間の1回目の演算におい
て、入力端子C,Dに夫々入力されるデータ
「52」、「200」の加算を実行し、データ「252」を
得て排他的オアゲート群21に与える。而して排
他的オアゲート群21の他方入力端子にはデイケ
イ、サステインの各期間中、“0”信号が与えら
れており、これにより上記データ「252」は排他
的オアゲート群21により反転されずにそのまま
出力され、オアゲート群41に与えられる。この
ため1回目の演算によるエンベロープデータは
「252」となり、またエンベロープ出力は「15」と
なる。第5図はデイケイ、サステインの各期間に
おける演算レジスタ(シフトレジスタ)30の入
力、加減算器22の入力、エンベロープデータ、
エンベロープ出力の各データの関係を示すが、そ
の1行目は上記デイケイ期間に於ける1回目の演
算状態を示している。
イケイ、サステインの各期間中、“0”信号が入
力され、加算指令が与えられている。このため加
減算器22はデイケイ期間の1回目の演算におい
て、入力端子C,Dに夫々入力されるデータ
「52」、「200」の加算を実行し、データ「252」を
得て排他的オアゲート群21に与える。而して排
他的オアゲート群21の他方入力端子にはデイケ
イ、サステインの各期間中、“0”信号が与えら
れており、これにより上記データ「252」は排他
的オアゲート群21により反転されずにそのまま
出力され、オアゲート群41に与えられる。この
ため1回目の演算によるエンベロープデータは
「252」となり、またエンベロープ出力は「15」と
なる。第5図はデイケイ、サステインの各期間に
おける演算レジスタ(シフトレジスタ)30の入
力、加減算器22の入力、エンベロープデータ、
エンベロープ出力の各データの関係を示すが、そ
の1行目は上記デイケイ期間に於ける1回目の演
算状態を示している。
減算器32の1回目の演算出力データ「52」は
スイツチングゲート群34,35を介しシフトレ
ジスタ30の1段目のレジスタに帰還され、2回
目の演算が開始される。この2回目の演算状態は
第5図の2行目に示す通りであり、また3回目の
演算はシフトレジスタ30に帰還されるデータ
「49」に基づき実行される。以下、同様にして4
回目以降の演算が順次、第3チヤンネルのタイミ
ング毎に実行される。この結果、エンベロープ出
力はデータ「15」からデータ「14」、「13」へと次
第に減少してゆき、エンベロープのデイケイ部分
が作成される。またシフトレジスタ30への入力
データも次第に減少してゆく。そして26回目の演
算後にシフトレジスタ30への入力データが
「15」(2進数表示では「00001111」)となると、
次の27回目の演算時にはシフト回路33の出力は
「0」となり、したがつて減算器32の減算出力
(A−B)は「15」となり、この結果、エンベロ
ープデータは「215」、エンベロープ出力は
「13」、またシフトレジスタ30への入力データは
再び「15」となる。このため次の28回目以降の演
算状態は上記27回目の演算状態と全く同一にな
り、したがつてシフトレジスタ30への入力デー
タは「15」に、またエンベロープ出力は「13」に
夫々固定され、28回目の演算時からサステイン期
間が開始される。このサステイン期間は上記キー
がオフされるまでの期間持続される。
スイツチングゲート群34,35を介しシフトレ
ジスタ30の1段目のレジスタに帰還され、2回
目の演算が開始される。この2回目の演算状態は
第5図の2行目に示す通りであり、また3回目の
演算はシフトレジスタ30に帰還されるデータ
「49」に基づき実行される。以下、同様にして4
回目以降の演算が順次、第3チヤンネルのタイミ
ング毎に実行される。この結果、エンベロープ出
力はデータ「15」からデータ「14」、「13」へと次
第に減少してゆき、エンベロープのデイケイ部分
が作成される。またシフトレジスタ30への入力
データも次第に減少してゆく。そして26回目の演
算後にシフトレジスタ30への入力データが
「15」(2進数表示では「00001111」)となると、
次の27回目の演算時にはシフト回路33の出力は
「0」となり、したがつて減算器32の減算出力
(A−B)は「15」となり、この結果、エンベロ
ープデータは「215」、エンベロープ出力は
「13」、またシフトレジスタ30への入力データは
再び「15」となる。このため次の28回目以降の演
算状態は上記27回目の演算状態と全く同一にな
り、したがつてシフトレジスタ30への入力デー
タは「15」に、またエンベロープ出力は「13」に
夫々固定され、28回目の演算時からサステイン期
間が開始される。このサステイン期間は上記キー
がオフされるまでの期間持続される。
上記キーがオフされるとキーボードから1発の
キーオフパルス(1ビツトタイムパルス)が出力
され、第3チヤンネルのタイミングにてアンドゲ
ート17に入力される。而してアンドゲート17
の他方入力はインバータ16の出力が“1”であ
るから、上記キーオフ信号の入力時にアンドゲー
ト17の出力が“1”となり、オアゲート8を介
しシフトレジスタ2の1ビツト目に入力される。
一方、シフトレジスタ2の2ビツト目には、それ
まで保持されていたデータ“1”が遷元されて入
力されるので、これにより第3チヤンネルの内容
は「3」となり、リリース期間を示すものとな
る。また次の第3チヤンネルのタイミングからデ
コーダ4の第3チヤンネルにおける出力は出力端
子「3」のみが“1”となる。更に第3チヤンネ
ルの内容「3」はエンベロープステータスカウン
タ1にて上記第3チヤンネルが空チヤンネルとな
るまで循環保持される。また上記アンドゲート1
7の出力“1”によつてスイツチングゲート群1
8がキーオフ時にのみ開成され、他方、このキー
オフ時にスイツチングゲート群35が一時的に閉
成される。このためスイツチングゲート群18を
介し、キーオフ時に於けるエンベロープデータ
「215」がシフトレジスタ30の1段目のレジスタ
に入力される。次いでスイツチングゲート群18
は閉成され、またリリース期間中、スイツチング
ゲート群15,26,34,35が開成され、且
つスイツチングゲート群23,27,31が閉成
される。そしてこの状態にてリリース期間の1回
目の演算がシフトレジスタ30に入力されたデー
タ「215」に基づいて実行される。この場合、上
述したようにスイツチングゲート群26が開成さ
れ、且つスイツチングゲート群23,27が閉成
されているので、加減算器22の入力端子Dには
オール“0”信号(データ「0」)が第3チヤン
ネルのタイミング毎に入力される。また加減算器
22には加算指令が与えられ、更に排他的オアゲ
ート群21にはデコーダ4の出力端子「1」の出
力“0”が与えられる。このためこのリリース期
間中においては、加減算器22の加算出力(C+
D)がそのままエンベロープデータとしてオアゲ
ート群41から出力されるものであるが、いま上
記入力端子Dの入力データは「0」であるから、
換言すれば、上記エンベロープデータは減算器3
2の減算出力(A−B)と等しいデータとなつて
いる。
キーオフパルス(1ビツトタイムパルス)が出力
され、第3チヤンネルのタイミングにてアンドゲ
ート17に入力される。而してアンドゲート17
の他方入力はインバータ16の出力が“1”であ
るから、上記キーオフ信号の入力時にアンドゲー
ト17の出力が“1”となり、オアゲート8を介
しシフトレジスタ2の1ビツト目に入力される。
一方、シフトレジスタ2の2ビツト目には、それ
まで保持されていたデータ“1”が遷元されて入
力されるので、これにより第3チヤンネルの内容
は「3」となり、リリース期間を示すものとな
る。また次の第3チヤンネルのタイミングからデ
コーダ4の第3チヤンネルにおける出力は出力端
子「3」のみが“1”となる。更に第3チヤンネ
ルの内容「3」はエンベロープステータスカウン
タ1にて上記第3チヤンネルが空チヤンネルとな
るまで循環保持される。また上記アンドゲート1
7の出力“1”によつてスイツチングゲート群1
8がキーオフ時にのみ開成され、他方、このキー
オフ時にスイツチングゲート群35が一時的に閉
成される。このためスイツチングゲート群18を
介し、キーオフ時に於けるエンベロープデータ
「215」がシフトレジスタ30の1段目のレジスタ
に入力される。次いでスイツチングゲート群18
は閉成され、またリリース期間中、スイツチング
ゲート群15,26,34,35が開成され、且
つスイツチングゲート群23,27,31が閉成
される。そしてこの状態にてリリース期間の1回
目の演算がシフトレジスタ30に入力されたデー
タ「215」に基づいて実行される。この場合、上
述したようにスイツチングゲート群26が開成さ
れ、且つスイツチングゲート群23,27が閉成
されているので、加減算器22の入力端子Dには
オール“0”信号(データ「0」)が第3チヤン
ネルのタイミング毎に入力される。また加減算器
22には加算指令が与えられ、更に排他的オアゲ
ート群21にはデコーダ4の出力端子「1」の出
力“0”が与えられる。このためこのリリース期
間中においては、加減算器22の加算出力(C+
D)がそのままエンベロープデータとしてオアゲ
ート群41から出力されるものであるが、いま上
記入力端子Dの入力データは「0」であるから、
換言すれば、上記エンベロープデータは減算器3
2の減算出力(A−B)と等しいデータとなつて
いる。
このようにしてリリース期間に於ける1回目の
演算が実行されると、その結果得られるエンベロ
ープデータは「202」となり、またエンベロープ
出力は「12」となる。そしてシフトレジスタ30
の1段目のレジスタにはデータ「202」が入力さ
れる。而してこのデータ「202」に基づき2回目
の演算が次回の第3チヤンネルのタイミングにて
実行される。第6図は上述したリリース期間中の
演算状態を示すもので、図示する如くエンベロー
プ出力はリリース期間開始時の「13」から徐々に
減少してゆく。そしてエンベロープデータが49回
目の演算にて「15」となり、またシフトレジスタ
30の1段目のレジスタに与えられる。その結
果、エンベロープ出力は「0」となる。このとき
エンベロープ出力「0」(2進数表示「0000」)が
インバータ群42に入力されるが、インバータ群
42の各インバータの出力が“1”となり、した
がつてアンドゲート群43の出力が“1”となつ
てアンドゲート28に与えられる。一方、該アン
ドゲート28の他方入力は“1”であるからその
出力が“1”となり、したがつてインバータ44
の出力が“0”となり、アンドゲート6,11が
同時に閉成される。これによりシフトレジスタ2
の1ビツト目、2ビツト目には同時に“0”信号
が入力され、エンベロープステータスカウンタ1
の第3チヤンネルの内容が「0」とされる。また
次の第3チヤンネルのタイミングからデコーダ4
の出力端子「0」のみから“1”信号が出力され
るようになり、これにより第3チヤンネルは空チ
ヤンネルを設定され、次のチヤンネル割当に備え
られると共に第3チヤンネルのエンベロープジエ
ネレータにおけるエンベロープ作成が停止し、放
音も停止される。
演算が実行されると、その結果得られるエンベロ
ープデータは「202」となり、またエンベロープ
出力は「12」となる。そしてシフトレジスタ30
の1段目のレジスタにはデータ「202」が入力さ
れる。而してこのデータ「202」に基づき2回目
の演算が次回の第3チヤンネルのタイミングにて
実行される。第6図は上述したリリース期間中の
演算状態を示すもので、図示する如くエンベロー
プ出力はリリース期間開始時の「13」から徐々に
減少してゆく。そしてエンベロープデータが49回
目の演算にて「15」となり、またシフトレジスタ
30の1段目のレジスタに与えられる。その結
果、エンベロープ出力は「0」となる。このとき
エンベロープ出力「0」(2進数表示「0000」)が
インバータ群42に入力されるが、インバータ群
42の各インバータの出力が“1”となり、した
がつてアンドゲート群43の出力が“1”となつ
てアンドゲート28に与えられる。一方、該アン
ドゲート28の他方入力は“1”であるからその
出力が“1”となり、したがつてインバータ44
の出力が“0”となり、アンドゲート6,11が
同時に閉成される。これによりシフトレジスタ2
の1ビツト目、2ビツト目には同時に“0”信号
が入力され、エンベロープステータスカウンタ1
の第3チヤンネルの内容が「0」とされる。また
次の第3チヤンネルのタイミングからデコーダ4
の出力端子「0」のみから“1”信号が出力され
るようになり、これにより第3チヤンネルは空チ
ヤンネルを設定され、次のチヤンネル割当に備え
られると共に第3チヤンネルのエンベロープジエ
ネレータにおけるエンベロープ作成が停止し、放
音も停止される。
第7図は上述した動作を第4図乃至第6図にも
とづき示したものである。この実施例の場合、シ
フト回路33の構成との関連からエンベロープ出
力を4ビツトデータとしたため、同一値のエンベ
ロープ出力が連続しているが、第7図のエンベロ
ープ波形によつて楽音を作成しても音楽上の問題
点は何ら発生しない。勿論、エンベロープ出力の
ビツト数を増やせば第7図に実線で示すような理
想的なエンベロープ波形を得ることは容易であ
る。
とづき示したものである。この実施例の場合、シ
フト回路33の構成との関連からエンベロープ出
力を4ビツトデータとしたため、同一値のエンベ
ロープ出力が連続しているが、第7図のエンベロ
ープ波形によつて楽音を作成しても音楽上の問題
点は何ら発生しない。勿論、エンベロープ出力の
ビツト数を増やせば第7図に実線で示すような理
想的なエンベロープ波形を得ることは容易であ
る。
また、この発明の場合、上述したデイケイ期間
及びサステイン期間中に於いては、加減算器22
の入力端子DにサステインレベルSUSによるデー
タが入力されており、また加減算器22の加算出
力(C+D)がそのままエンベロープデータとさ
れ、また上記実施例の場合にはエンベロープデー
タの上位4ビツトデータをエンベロープ出力とし
て得る構成としているため、上記デイケイ期間ま
たはサステイン期間においてサステインレバーを
操作し、サステインレベルを変化させた場合、例
えば第8図bに示す如く時刻t1にてサステインレ
ベルSUSをS1からS2に下げた場合、エンベロープ
出力も時刻t1直後に対応した量だけ低下し、従来
装置に比して極めて追随性のよい装置を得ること
ができるものである。
及びサステイン期間中に於いては、加減算器22
の入力端子DにサステインレベルSUSによるデー
タが入力されており、また加減算器22の加算出
力(C+D)がそのままエンベロープデータとさ
れ、また上記実施例の場合にはエンベロープデー
タの上位4ビツトデータをエンベロープ出力とし
て得る構成としているため、上記デイケイ期間ま
たはサステイン期間においてサステインレバーを
操作し、サステインレベルを変化させた場合、例
えば第8図bに示す如く時刻t1にてサステインレ
ベルSUSをS1からS2に下げた場合、エンベロープ
出力も時刻t1直後に対応した量だけ低下し、従来
装置に比して極めて追随性のよい装置を得ること
ができるものである。
更に上記例において、上記キーがそのエンベロ
ープのアタツク期間中にオフされた場合、上述の
キーオフ時同様にしてアンドゲート17の出力が
“1”となり、エンベロープステータスカウンタ
1の第3チヤンネルの内容はアタツク期間中の
「1」から「3」に変化し、リリース期間が開始
される。そしてキーオフ時に出力中のアタツク期
間に於けるエンベロープデータがスイツチングゲ
ート群18を介しシフトレジスタ30に入力され
る。これにより上記キーオフ時のエンベロープデ
ータにもとづきリリース期間の演算が開始され、
エンベロープ出力が減衰しはじめることになる。
勿論、エンベロープ出力が「0」となれば第3チ
ヤンネルは空チヤンネルとされる。同様にエンベ
ロープのデイケイ期間中にキーオフされても第3
チヤンネルは直ちにリリース期間に入り、またキ
ーオフ時のエンベロープデータがシフトレジスタ
30に入力されてリリース期間の演算が開始さ
れ、またリリース期間が終了すれば空チヤンネル
とされる。
ープのアタツク期間中にオフされた場合、上述の
キーオフ時同様にしてアンドゲート17の出力が
“1”となり、エンベロープステータスカウンタ
1の第3チヤンネルの内容はアタツク期間中の
「1」から「3」に変化し、リリース期間が開始
される。そしてキーオフ時に出力中のアタツク期
間に於けるエンベロープデータがスイツチングゲ
ート群18を介しシフトレジスタ30に入力され
る。これにより上記キーオフ時のエンベロープデ
ータにもとづきリリース期間の演算が開始され、
エンベロープ出力が減衰しはじめることになる。
勿論、エンベロープ出力が「0」となれば第3チ
ヤンネルは空チヤンネルとされる。同様にエンベ
ロープのデイケイ期間中にキーオフされても第3
チヤンネルは直ちにリリース期間に入り、またキ
ーオフ時のエンベロープデータがシフトレジスタ
30に入力されてリリース期間の演算が開始さ
れ、またリリース期間が終了すれば空チヤンネル
とされる。
また上記説明では8チヤンネル設けられたエン
ベロープジエネレータのうち第3チヤンネルに割
当てられた1個のキーに関する動作についてのみ
説明したが、2個以上8個までのキーが同時にオ
ンされているときには、各キーが割当てられてい
る各チヤンネルにおいてエンベロープ作成動作が
時分割処理により実行されることは勿論である。
また8チヤンネルに対して9個以上のキーが同時
にオンされているときには、9個目のキーは空チ
ヤンネルを割当てられるまで待機状態とされる。
ベロープジエネレータのうち第3チヤンネルに割
当てられた1個のキーに関する動作についてのみ
説明したが、2個以上8個までのキーが同時にオ
ンされているときには、各キーが割当てられてい
る各チヤンネルにおいてエンベロープ作成動作が
時分割処理により実行されることは勿論である。
また8チヤンネルに対して9個以上のキーが同時
にオンされているときには、9個目のキーは空チ
ヤンネルを割当てられるまで待機状態とされる。
尚、上記実施例では、シフト回路33におい
て、4ビツト右シフトをすることにより入力デー
タの1/16の値を算出するようにしたが、アタツク
時間、デイケイ時間、リリース時間を設定する各
レバーの操作に応じてシフトするビツト数を変更
する等して、その時間設定即ち、指数関数曲線の
傾きの制御を行うことが出来る。
て、4ビツト右シフトをすることにより入力デー
タの1/16の値を算出するようにしたが、アタツク
時間、デイケイ時間、リリース時間を設定する各
レバーの操作に応じてシフトするビツト数を変更
する等して、その時間設定即ち、指数関数曲線の
傾きの制御を行うことが出来る。
また、その場合、スイツチングゲート群31を
介して与えられる初期値及びスイツチングゲート
群23を介して与えられるデータ(実施例では
127)の値も、必要に応じて種々変更し得る。
介して与えられる初期値及びスイツチングゲート
群23を介して与えられるデータ(実施例では
127)の値も、必要に応じて種々変更し得る。
更に、演算処理のビツト数を増加することによ
り、エンベロープ出力を4ビツトより大とするこ
とが出来る。
り、エンベロープ出力を4ビツトより大とするこ
とが出来る。
更にまた、上記指数関数の波形演算では、次式
An=Ao-1−Ao−1/α=(1−1/α)nA0
但し、nは整数、αは正数、A0は初期値、に
より実行されたが、演算式は種々変更し得ること
が出来、それに応じて、演算回路の構成も変更出
来る。
より実行されたが、演算式は種々変更し得ること
が出来、それに応じて、演算回路の構成も変更出
来る。
加えて、上記アタツクレバー、デイケイレバ
ー、サステインレバー、リリースレバーは、レバ
ーに限定されるものではなく、押釦方式、テンキ
ー方式等の方法によることも出来る。
ー、サステインレバー、リリースレバーは、レバ
ーに限定されるものではなく、押釦方式、テンキ
ー方式等の方法によることも出来る。
加えて、また、この発明は、電子オルガンの音
量エンベロープの制御に使用し得ると共に、ミユ
ージツクシンセサイザにおいては、発振周波数、
フイルタのカツトオフ周波数、音量エンベロープ
の制御等に用いることが可能であり、その他、各
種電子楽器の各種エンベロープ制御を行うことが
出来る。
量エンベロープの制御に使用し得ると共に、ミユ
ージツクシンセサイザにおいては、発振周波数、
フイルタのカツトオフ周波数、音量エンベロープ
の制御等に用いることが可能であり、その他、各
種電子楽器の各種エンベロープ制御を行うことが
出来る。
この発明は以上説明したように、デイジタル演
算処理によつて所定の指数関数の波形演算を繰返
し実行することによりエンベロープ制御信号を
得、エンベロープ制御を行うようにした電子楽器
のエンベロープ制御装置を提供したから、この発
明を従来のデイジタル方式によるエンベロープ制
御方式と比較した場合、大容量のROMや複雑な
デコード回路を必要とせず、極めて簡単な回路構
成により実現できる利点があり、また時分割多重
処理方式を採用することにより同時に多種類のエ
ンベロープ制御を行うことが出来る利点がある。
他方、この発明を従来のアナログ方式によるエン
ベロープ制御方式と比較した場合、LSI化が可能
なために装置の小型化が実現でき、またデイジタ
ル回路によつてアナログ回路と同様なエンベロー
プ波形を得ることができ、更にまたサステインレ
ベルをデイケイまたはサステインの各期間に於い
て変化させた場合、その変化を直ちにエンベロー
プ制御信号に反映できるから、追随性が大幅に向
上して音楽的に好都合である等、種々の利点があ
るものである。
算処理によつて所定の指数関数の波形演算を繰返
し実行することによりエンベロープ制御信号を
得、エンベロープ制御を行うようにした電子楽器
のエンベロープ制御装置を提供したから、この発
明を従来のデイジタル方式によるエンベロープ制
御方式と比較した場合、大容量のROMや複雑な
デコード回路を必要とせず、極めて簡単な回路構
成により実現できる利点があり、また時分割多重
処理方式を採用することにより同時に多種類のエ
ンベロープ制御を行うことが出来る利点がある。
他方、この発明を従来のアナログ方式によるエン
ベロープ制御方式と比較した場合、LSI化が可能
なために装置の小型化が実現でき、またデイジタ
ル回路によつてアナログ回路と同様なエンベロー
プ波形を得ることができ、更にまたサステインレ
ベルをデイケイまたはサステインの各期間に於い
て変化させた場合、その変化を直ちにエンベロー
プ制御信号に反映できるから、追随性が大幅に向
上して音楽的に好都合である等、種々の利点があ
るものである。
更に本発明によれば、エンベロープのアタツク
の最終レベルを、エンベロープのアタツク時間、
デイケイ時間とは無関係にエンベロープの最大レ
ベルとしたことによつて、エンベロープの各期間
の設定が容易に行え、特にアタツクの最終レベル
を移動することによつてアタツク時間を変更する
ものよりも、常に均一のビツト数のエンベロープ
が得られる点、アタツク時間、デイケイ時間の理
解の容易さという点で優れており、また、エンベ
ロープのアタツクを急峻にすべく、アタツクの指
数関数の演算を行うためのプリセツト値を、エン
ベロープの最大値よりも大な値として、この値か
ら所定の指数関数演算を行つて結果的に上に凸の
エンベロープ波形データを得たから、強いアタツ
ク感をだすことができ、有効である。
の最終レベルを、エンベロープのアタツク時間、
デイケイ時間とは無関係にエンベロープの最大レ
ベルとしたことによつて、エンベロープの各期間
の設定が容易に行え、特にアタツクの最終レベル
を移動することによつてアタツク時間を変更する
ものよりも、常に均一のビツト数のエンベロープ
が得られる点、アタツク時間、デイケイ時間の理
解の容易さという点で優れており、また、エンベ
ロープのアタツクを急峻にすべく、アタツクの指
数関数の演算を行うためのプリセツト値を、エン
ベロープの最大値よりも大な値として、この値か
ら所定の指数関数演算を行つて結果的に上に凸の
エンベロープ波形データを得たから、強いアタツ
ク感をだすことができ、有効である。
第1図はこの発明の一実施例により作成される
エンベロープの波形図、第2図A,Bは夫々、こ
の実施例で使用される回路記号と論理式等の対応
関係を示す図、第3図はエンベロープジエネレー
タの回路構成図、第4図はエンベロープのアタツ
ク部作成時における演算状態を示す図、第5図は
エンベロープのデイケイ、サステインの各部作成
時における演算状態を示す図、第6図はエンベロ
ープのリリース部作成時における演算状態を示す
図、第7図は上記実施例で得られるエンベロープ
の一例を示す波形図、第8図aは従来のアナログ
回路によるエンベロープ制御においてサステイン
レベルの変化に対するエンベロープ出力の変化の
追随性を示す図、第8図bはこの発明においてサ
ステインレベルの変化に対するエンベロープ出力
の変化の追随性を示す図である。 1……エンベロープステータスカウンタ、2…
…シフトレジスタ、3……ゲート回路、4……デ
コーダ、15……スイツチングゲート群、21…
…排他的オアゲート群、22……加減算器、2
3,26,27……スイツチングゲート群、30
……シフトレジスタ(演算レジスタ)、31,3
4,35,40……スイツチングゲート群、32
……減算器、33……シフト回路。
エンベロープの波形図、第2図A,Bは夫々、こ
の実施例で使用される回路記号と論理式等の対応
関係を示す図、第3図はエンベロープジエネレー
タの回路構成図、第4図はエンベロープのアタツ
ク部作成時における演算状態を示す図、第5図は
エンベロープのデイケイ、サステインの各部作成
時における演算状態を示す図、第6図はエンベロ
ープのリリース部作成時における演算状態を示す
図、第7図は上記実施例で得られるエンベロープ
の一例を示す波形図、第8図aは従来のアナログ
回路によるエンベロープ制御においてサステイン
レベルの変化に対するエンベロープ出力の変化の
追随性を示す図、第8図bはこの発明においてサ
ステインレベルの変化に対するエンベロープ出力
の変化の追随性を示す図である。 1……エンベロープステータスカウンタ、2…
…シフトレジスタ、3……ゲート回路、4……デ
コーダ、15……スイツチングゲート群、21…
…排他的オアゲート群、22……加減算器、2
3,26,27……スイツチングゲート群、30
……シフトレジスタ(演算レジスタ)、31,3
4,35,40……スイツチングゲート群、32
……減算器、33……シフト回路。
Claims (1)
- 【特許請求の範囲】 1 エンベロープのサステインレベルを設定する
サステインレベル設定手段と、 キーオンからキーオフ後まで少なくともアタツ
ク、デイケイ、サステイン、リリースの順に変化
するエンベロープの現在状態が設定記憶される状
態記憶手段と、 エンベロープのアタツクの演算を行なうための
プリセツト値を供給するものであつて、該プリセ
ツト値は、エンベロープの最大値より大の値をと
るようにしてアタツクが急峻な立上りとなるよう
にするプリセツト値供給手段と、 上記状態記憶手段により指定されるエンベロー
プの現在状態に応じて、所定の指数関数の波形演
算を実行し、少なくともアタツク、デイケイ、リ
リースのエンベロープ波形データを得る演算論理
手段とを具備し、 該演算論理手段は、アタツクの状態において、
上記プリセツト値供給手段から供給される上記プ
リセツト値に従つて上記所定の指数関数の波形演
算を開始し、上に凸の指数カーブを発生し、且つ
この指数カーブを、デイケイ、リリースの状態の
指数カーブよりも急峻で、しかも最終レベルを、
エンベロープのアタツク時間、デイケイ時間とは
無関係にエンベロープの最大レベルとするように
して、エンベロープ波形データを得る第1の手段
と、デイケイの状態においてエンベロープの最大
レベルと上記サステインレベルとの差のレベルを
求め、この差のレベルを初期値として上記所定の
指数関数の波形演算を行つて下に凸の指数カーブ
を発生し、この指数カーブと上記サステインレベ
ルとを加算してエンベロープ波形データを得る第
2の手段と、リリースの状態において上記サステ
インレベルを初期値として上記所定の指数関数の
波形演算を行つて下に凸の指数カーブを発生し、
この指数カーブからエンベロープ波形データを得
る第3の手段とを有したことを特徴とする電子楽
器のエンベロープ制御装置。 2 上記状態記憶手段及び上記演算論理手段は、
複数チヤンネルに時分割動作せしめられ、上記複
数チヤンネルのエンベロープ制御を行うことを特
徴とする特許請求の範囲第1項記載の電子楽器の
エンベロープ制御装置。 3 上記所定の指数関数の波形演算が、式 Ao=Ao-1−Ao−1/α(n:整数、α:正数) にしたがつて上記演算論理手段において実行され
ることを特徴とする特許請求の範囲第1項または
第2項記載の電子楽器のエンベロープ制御装置。 4 上記状態記憶手段は、エンベロープステータ
スカウンタを有し、このエンベロープステータス
カウンタのカウント内容に従つてエンベロープの
現在状態を指定することを特徴とする特許請求の
範囲第1項記載の電子楽器のエンベロープ制御装
置。
Priority Applications (4)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP10867780A JPS5732495A (en) | 1980-08-06 | 1980-08-06 | Envelope control system for electronic musical instrument |
| GB8122760A GB2081955B (en) | 1980-08-01 | 1981-07-23 | Envelope control for electronic musical instrument |
| DE19813130380 DE3130380A1 (de) | 1980-08-01 | 1981-07-31 | Huellkurvensteuerung fuer ein elektronisches musikinstrument |
| US06/455,871 US4426904A (en) | 1980-08-01 | 1983-01-05 | Envelope control for electronic musical instrument |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP10867780A JPS5732495A (en) | 1980-08-06 | 1980-08-06 | Envelope control system for electronic musical instrument |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JPS5732495A JPS5732495A (en) | 1982-02-22 |
| JPS6161395B2 true JPS6161395B2 (ja) | 1986-12-25 |
Family
ID=14490867
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP10867780A Granted JPS5732495A (en) | 1980-08-01 | 1980-08-06 | Envelope control system for electronic musical instrument |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JPS5732495A (ja) |
Families Citing this family (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPS61233787A (ja) * | 1985-04-10 | 1986-10-18 | 松下電器産業株式会社 | 電子楽器 |
| JPS6489945A (en) * | 1987-09-29 | 1989-04-05 | Sankyo Seiki Seisakusho Kk | Electromagnetic driving gear |
| JP2867787B2 (ja) * | 1992-03-18 | 1999-03-10 | 日本電気株式会社 | インダクタ |
-
1980
- 1980-08-06 JP JP10867780A patent/JPS5732495A/ja active Granted
Also Published As
| Publication number | Publication date |
|---|---|
| JPS5732495A (en) | 1982-02-22 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US4301704A (en) | Electronic musical instrument | |
| USRE31821E (en) | Variable function generator | |
| JPS6199193A (ja) | 楽音信号発生装置 | |
| US4267762A (en) | Electronic musical instrument with automatic arpeggio performance device | |
| US4785706A (en) | Apparatus for generating a musical tone signal with tone color variations independent of tone pitch | |
| US4166405A (en) | Electronic musical instrument | |
| US4083283A (en) | Electronic musical instrument having legato effect | |
| US4269101A (en) | Apparatus for generating the complement of a floating point binary number | |
| US4348928A (en) | Electronic musical instrument | |
| US4562763A (en) | Waveform information generating system | |
| US4103581A (en) | Constant speed portamento | |
| US4351220A (en) | Electronic musical instrument of digital processing type | |
| JPS5895790A (ja) | 楽音発生装置 | |
| US4426904A (en) | Envelope control for electronic musical instrument | |
| US4189972A (en) | Electronic musical instrument of numerical value processing type | |
| JPS6114518B2 (ja) | ||
| US4612839A (en) | Waveform data generating system | |
| JPH0333278B2 (ja) | ||
| JPS59838B2 (ja) | 電子楽器のイニシヤルタツチレスポンスデ−タ発生回路 | |
| JPS6161394B2 (ja) | ||
| JPS6223871B2 (ja) | ||
| JPS6158915B2 (ja) | ||
| JPH0617194Y2 (ja) | エンベロープ発生装置 | |
| US4312257A (en) | Automatic accompaniment apparatus | |
| JPS6137639B2 (ja) |