JPS59136793A - 楽音発生装置 - Google Patents
楽音発生装置Info
- Publication number
- JPS59136793A JPS59136793A JP58011862A JP1186283A JPS59136793A JP S59136793 A JPS59136793 A JP S59136793A JP 58011862 A JP58011862 A JP 58011862A JP 1186283 A JP1186283 A JP 1186283A JP S59136793 A JPS59136793 A JP S59136793A
- Authority
- JP
- Japan
- Prior art keywords
- data
- signal
- waveform
- section
- register
- 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.)
- Pending
Links
Landscapes
- Electrophonic Musical Instruments (AREA)
Abstract
(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。
め要約のデータは記録されません。
Description
【発明の詳細な説明】
産業上の利用分野
本発明は楽音発生装置に関し、特に、楽音波形の形状を
操作し時間的な変化を施して自然楽器音を模擬する楽音
発生装置に関する。
操作し時間的な変化を施して自然楽器音を模擬する楽音
発生装置に関する。
従来例の構成とその問題点
従来、自然楽器音を模擬するものとして、正弦波合成方
式を用いたもの1周波数変調力式を用いたもの、減算方
式(おもにアナログ処理でVCO%VCF 、VCAな
どを使用したもの。ンを用いたものなどが提示されてい
るが、回路規模が大きくなシ笑現化が困難なものとが、
方式上の限界があるという問題点を有していた。
式を用いたもの1周波数変調力式を用いたもの、減算方
式(おもにアナログ処理でVCO%VCF 、VCAな
どを使用したもの。ンを用いたものなどが提示されてい
るが、回路規模が大きくなシ笑現化が困難なものとが、
方式上の限界があるという問題点を有していた。
発明の目的
本発明の目的は、簡単な構成で自然楽器音を模擬すると
ともに、混変調ひずみゃにご9のない音をつくれる楽音
発生装置を提供するものでるる。
ともに、混変調ひずみゃにご9のない音をつくれる楽音
発生装置を提供するものでるる。
発明の構成
本発明の楽音発生装置は、楽音の発音開始力・ら発音終
了時までの複数個の楽音波形のうち少なくとも2つ以上
の楽音波形と上記選択抽出した楽音波形を用いて合成波
形を形成する時に使用する制御データとを記憶するデー
タメモリ部と、発音音階を決定するノートクロック発生
部と、上記ノートクロック発生部の出力信号に基づいて
上記データメモリ部から2つの波形サンプルデータと制
御データとを読み出すデータ読み吊し部と、上記データ
読み出し部で読み出した2つの波形サンプルデータと制
御データとを用いて新合成波形サンプルデータを求める
と共に旧合成波形サンプルデータと新合成波形サンプル
データーとの差分を求め、差分データを出力する波形計
算部と、上記波形計算部で求めたディジタル差分データ
をアナログ信号に変換する変換部と、上記変換部の出力
信号を積分する積分器とを具備し、積分器の出力から合
成楽音波形を弁生ずるように構成したものでめり、楽音
波形の形状を時間的に変化させて自然楽器音に近い楽音
波形を発生でき、量子化ひすみによる混斐調ひずみの発
生がなく、また折り返し成分やサンプル波成分と基本周
波数の高謔波との4一致によるにとりのない音を作るこ
とができる。
了時までの複数個の楽音波形のうち少なくとも2つ以上
の楽音波形と上記選択抽出した楽音波形を用いて合成波
形を形成する時に使用する制御データとを記憶するデー
タメモリ部と、発音音階を決定するノートクロック発生
部と、上記ノートクロック発生部の出力信号に基づいて
上記データメモリ部から2つの波形サンプルデータと制
御データとを読み出すデータ読み吊し部と、上記データ
読み出し部で読み出した2つの波形サンプルデータと制
御データとを用いて新合成波形サンプルデータを求める
と共に旧合成波形サンプルデータと新合成波形サンプル
データーとの差分を求め、差分データを出力する波形計
算部と、上記波形計算部で求めたディジタル差分データ
をアナログ信号に変換する変換部と、上記変換部の出力
信号を積分する積分器とを具備し、積分器の出力から合
成楽音波形を弁生ずるように構成したものでめり、楽音
波形の形状を時間的に変化させて自然楽器音に近い楽音
波形を発生でき、量子化ひすみによる混斐調ひずみの発
生がなく、また折り返し成分やサンプル波成分と基本周
波数の高謔波との4一致によるにとりのない音を作るこ
とができる。
実施例の説明
以下本発明の一実施例を図面に基づいて説明する。1ず
、本発明の原理について説明する。第1図に離散的に抽
出した楽音1周期の楽音波形を示す。発音開始時からの
時間経過と楽音波形との関係を下記に示す。
、本発明の原理について説明する。第1図に離散的に抽
出した楽音1周期の楽音波形を示す。発音開始時からの
時間経過と楽音波形との関係を下記に示す。
楽音波形 時間経過
C50m5
D 320m5E
720m5第1図からもわかるよう
に1時間経過と共に楽音波形の形状が変化している。本
発明は、楽音波形の時間的形状変化という点に着目し、
波形の形状に時間変化を施すことにより、自然楽器らし
い楽音を発生するものである。
720m5第1図からもわかるよう
に1時間経過と共に楽音波形の形状が変化している。本
発明は、楽音波形の時間的形状変化という点に着目し、
波形の形状に時間変化を施すことにより、自然楽器らし
い楽音を発生するものである。
データメモリの記憶内容についての説明第2図に発音開
始時から発音終了時までの楽音波形のエンベロープ包絡
状態の一例を示す。第2図に示したエンベロープ包絡の
発音開始時から発音終了時までを工分割(1=0.1.
・・・lit・・・。
始時から発音終了時までの楽音波形のエンベロープ包絡
状態の一例を示す。第2図に示したエンベロープ包絡の
発音開始時から発音終了時までを工分割(1=0.1.
・・・lit・・・。
1−1 )する。そして、各分割点から選択抽出した
楽音波形1周期をそれぞれN分割する。第8図に選択抽
出した楽音波形の一例を示す。抽出した1個の楽音波形
1周期をN分割して得たN個の波形サンプル値すなわち
、N×■偶の波形サンフル値と、楽音を発生する時に使
用する制御データ(本発明では、波形内挿を行なうため
の制御データを考えている)とをデータメモリに記憶し
ておく。
楽音波形1周期をそれぞれN分割する。第8図に選択抽
出した楽音波形の一例を示す。抽出した1個の楽音波形
1周期をN分割して得たN個の波形サンプル値すなわち
、N×■偶の波形サンフル値と、楽音を発生する時に使
用する制御データ(本発明では、波形内挿を行なうため
の制御データを考えている)とをデータメモリに記憶し
ておく。
波形P3挿方法についてノ説明
波形内挿方法としては、■分割して選択抽出したサンプ
ル肢位faiからi+1(i=0,1,2゜・・・、l
−1)の間を楽音波形1周期がM回くり返して推移する
ものとし、波形サンプルf(Xi、n)とf(Xi+x
、 n )との間に存在する仮想サンプル値t (X
i、m、n )を補間演算を用い仮想的に仮想サンプル
点の波形サンプル値を算出して近似値を求めようとする
ものである。補間式を下式に示す。
ル肢位faiからi+1(i=0,1,2゜・・・、l
−1)の間を楽音波形1周期がM回くり返して推移する
ものとし、波形サンプルf(Xi、n)とf(Xi+x
、 n )との間に存在する仮想サンプル値t (X
i、m、n )を補間演算を用い仮想的に仮想サンプル
点の波形サンプル値を算出して近似値を求めようとする
ものである。補間式を下式に示す。
f (Xt、m、n)=(f(Xt+t、n) f(
Xi、n))X ”十f(Xi、n) 間軸・・
・・−・・・・ (1〕iは、■分割して抽出したサ
ンプル位置で、波形ナンバである。(i=0.1.’2
.・・・、Il−1 )は、波形ナンバiからi+1の間を五(回繰り返し推
移している途中の位置を表わすものである0(m=0
、1 、2.・”、 M−1)nは、楽音波形1周期を
N分割したサンプル位置で波形サンプルナンドである。
Xi、n))X ”十f(Xi、n) 間軸・・
・・−・・・・ (1〕iは、■分割して抽出したサ
ンプル位置で、波形ナンバである。(i=0.1.’2
.・・・、Il−1 )は、波形ナンバiからi+1の間を五(回繰り返し推
移している途中の位置を表わすものである0(m=0
、1 、2.・”、 M−1)nは、楽音波形1周期を
N分割したサンプル位置で波形サンプルナンドである。
(n = Oe l 、 2 * ・・・e N −1
)第4図(a)に(1)式を用いた補間例を示す。図か
らもわかるように、波形のつなぎ目で不連続が発生して
いる。この不連続点のレベル差が大きい場合は、不用な
ノイズ成分として聴感上問題となる場合がある。そこで
、本実施例では、(1)式に補正項を加えて第4図(b
)に示すように不連続点の発生を防止している。(2)
式に補正項を加えた補間式を示す。
)第4図(a)に(1)式を用いた補間例を示す。図か
らもわかるように、波形のつなぎ目で不連続が発生して
いる。この不連続点のレベル差が大きい場合は、不用な
ノイズ成分として聴感上問題となる場合がある。そこで
、本実施例では、(1)式に補正項を加えて第4図(b
)に示すように不連続点の発生を防止している。(2)
式に補正項を加えた補間式を示す。
f(Xi 、rrL、n) = (fcXs+1 、n
)−f(X4’、n)エンベロープの付加方法につい
ての説明楽音の種類として、オルガン型エンベロープと
ピアノ型エンベロープがある。第5図にオルカン型とピ
アノ型のエンベロープを付加した一例を示す。図中(a
)はオルガン型、(b)はピアノ型である。
)−f(X4’、n)エンベロープの付加方法につい
ての説明楽音の種類として、オルガン型エンベロープと
ピアノ型エンベロープがある。第5図にオルカン型とピ
アノ型のエンベロープを付加した一例を示す。図中(a
)はオルガン型、(b)はピアノ型である。
この説明では、前述までと違いデータメモリに記憶して
いる波形は、発音終了時までの波形ではなく楽音の定常
部あるいは波形の形状が安定した所までを持ち、以後の
波形発生はデータメモリに記憶している最後の波形を(
り返し使用するものとする。
いる波形は、発音終了時までの波形ではなく楽音の定常
部あるいは波形の形状が安定した所までを持ち、以後の
波形発生はデータメモリに記憶している最後の波形を(
り返し使用するものとする。
オルガン型の説明
第5図中A点でキー信号がオン状態となると、データメ
モリの波形データを用も)波形内挿を行なって楽音を合
成する。そして、B点まで時間力S進むと最終波形デー
タとなり、以後最終波形力5くり返し発生する。その後
、0点でキーイ言号力Sオフ状態になると、エンベロー
プ信号(よ減衰特性となり。
モリの波形データを用も)波形内挿を行なって楽音を合
成する。そして、B点まで時間力S進むと最終波形デー
タとなり、以後最終波形力5くり返し発生する。その後
、0点でキーイ言号力Sオフ状態になると、エンベロー
プ信号(よ減衰特性となり。
出力波形は減衰すること番こなる。
ピアノ型の説明
第5図中A点でキー信号がオン状態となると。
データメモリの波形データを用(1波形内挿を行なって
楽音を合成する。そして、B点まで進むと最終波形デー
タとなり、以後最終波形データをくり返し使用するとと
もに、エンペローブイ色号力5減衰特性状態となり、出
力波形ζよ減衰特性をこ対応して減衰して行く。
楽音を合成する。そして、B点まで進むと最終波形デー
タとなり、以後最終波形データをくり返し使用するとと
もに、エンペローブイ色号力5減衰特性状態となり、出
力波形ζよ減衰特性をこ対応して減衰して行く。
音程の発生方法についての説明
音階の決定については、12音階に相当するクロック信
号を発生する。オクターブ関係については。
号を発生する。オクターブ関係については。
データメモリに記憶している楽音波形1周期のサンプル
数をかえることによりオクターブ関係の音程を発生して
いる。
数をかえることによりオクターブ関係の音程を発生して
いる。
Co音を512サンプルとすると、音階クロック信号は
、82.708Hz X 512サンプル−F16.7
4KH7となる。
、82.708Hz X 512サンプル−F16.7
4KH7となる。
第1表に音階クロック周波数を、第2表に波形サンプル
数とオクターブ関係について示す。
数とオクターブ関係について示す。
次に本発明の一実施例について図面を参照しながら説明
する。第6図は本発明の楽音発生装置を採用した電子楽
器のブロック図でるる。(601)は鍵盤部(KB)、
(602)は音色タブレットスイッチやビブ5−)効
果のオンオフスイッチやグライド効果のオンオフスイッ
チなどにより構成される操作部(TAB)、(60B)
は中央処理装置(CPU)で、コンピュータなどに用い
られているものと同様のもの。
する。第6図は本発明の楽音発生装置を採用した電子楽
器のブロック図でるる。(601)は鍵盤部(KB)、
(602)は音色タブレットスイッチやビブ5−)効
果のオンオフスイッチやグライド効果のオンオフスイッ
チなどにより構成される操作部(TAB)、(60B)
は中央処理装置(CPU)で、コンピュータなどに用い
られているものと同様のもの。
(604)は読み書き可能な記憶装置(ランダムアクセ
スメモリでRAMと呼ぶ)、(605)はCPU (6
0g)の動作を決定するプログラムが格納された読み出
し専用記憶装置(リードオンリーメモリでROMと第
1 表 fM(K= 8.OO096MH2 第 2 表 呼ぶ)、(606)は楽音の合成を行なうための波形サ
ンプルデータや波形内挿を行なうための制御データなど
を記憶しているROMである。(607)はROM (
606)に記憶している波形サンプルデータや制御デー
タを用いて楽音を発生する楽音発生部。
スメモリでRAMと呼ぶ)、(605)はCPU (6
0g)の動作を決定するプログラムが格納された読み出
し専用記憶装置(リードオンリーメモリでROMと第
1 表 fM(K= 8.OO096MH2 第 2 表 呼ぶ)、(606)は楽音の合成を行なうための波形サ
ンプルデータや波形内挿を行なうための制御データなど
を記憶しているROMである。(607)はROM (
606)に記憶している波形サンプルデータや制御デー
タを用いて楽音を発生する楽音発生部。
(60g)はサンプリングノイズを除去するフィル久(
609)は電気音響変換器である。
609)は電気音響変換器である。
鍵盤部(601) 、操作部(602J 、 CP!J
(608) 。
(608) 。
RAM (604) 、 ROM (605) (60
6) 、楽音発生部(607)はデータバス、アドレス
バスおよびコントロール線で結合されている。このよう
にデータバスとアドレスバスとコントロール線とで結合
する方法そのものは、ミニコンピユータやマイクロコン
ピュータを中心とした構成方法として公知のものである
。データバスとしては8本〜16本位用いられ、このバ
ス線上をデータが一方向でなく多方向に時分割的に送受
信される。アドレスバスも複数本たとえば16本用意さ
れ1通常はCPU (60B)がアドレスコードを出力
し、他の部分がアドレスコートヲ受は取る。コントロー
ル線は通常メモリ・リクエスト線(MREO) 、 I
10リクエスト線(I ORQ )、すMREQはメモ
リを読み書きすることを示し、I ORQは入出力装置
(Ilo)の内容を取り出しすることを示し、 RDは
メモリやIloからデータを読み出すタイミングを示し
、■はメモリやIloにデータを書き込むタイミングを
示す。このようなコントロール線を用いたものとしては
、ザイログ社のマイクロプロセッサz80があげられる
。
6) 、楽音発生部(607)はデータバス、アドレス
バスおよびコントロール線で結合されている。このよう
にデータバスとアドレスバスとコントロール線とで結合
する方法そのものは、ミニコンピユータやマイクロコン
ピュータを中心とした構成方法として公知のものである
。データバスとしては8本〜16本位用いられ、このバ
ス線上をデータが一方向でなく多方向に時分割的に送受
信される。アドレスバスも複数本たとえば16本用意さ
れ1通常はCPU (60B)がアドレスコードを出力
し、他の部分がアドレスコートヲ受は取る。コントロー
ル線は通常メモリ・リクエスト線(MREO) 、 I
10リクエスト線(I ORQ )、すMREQはメモ
リを読み書きすることを示し、I ORQは入出力装置
(Ilo)の内容を取り出しすることを示し、 RDは
メモリやIloからデータを読み出すタイミングを示し
、■はメモリやIloにデータを書き込むタイミングを
示す。このようなコントロール線を用いたものとしては
、ザイログ社のマイクロプロセッサz80があげられる
。
次に第6図の電子楽器の動作について述べる。
鍵盤部(601)は、複数の鍵スィッチを複数の群に分
けて1群内の鍵スィッチのオン/オ、フ状態を一括して
データバスに送ることができるように構成される。たと
えば61鍵の鍵盤の場合、6鍵(半オクターブ)ずつの
10群と1鍵の1群の11群に分け、各群にアドレスコ
ードを1つずつ割りつける。アドレスラインに上記各群
のうちの1つを示すアドレスコードが到来し、信号I
ORQと信号西が印加されると、鍵盤部(601)はそ
のアドレスコードを解読して、対応する群内のキースイ
ッチのオン/オフを示す6ビツトまたは1ビツトのデー
タをデータバスに出力する。これらは、デコーダ、バス
ドライバおよび若干のゲート回路を用いて構成すること
ができる。操作部(602)のうち、タフレットスイッ
チについては、鍵盤部(601)と同様の構成をとるこ
とができる。
けて1群内の鍵スィッチのオン/オ、フ状態を一括して
データバスに送ることができるように構成される。たと
えば61鍵の鍵盤の場合、6鍵(半オクターブ)ずつの
10群と1鍵の1群の11群に分け、各群にアドレスコ
ードを1つずつ割りつける。アドレスラインに上記各群
のうちの1つを示すアドレスコードが到来し、信号I
ORQと信号西が印加されると、鍵盤部(601)はそ
のアドレスコードを解読して、対応する群内のキースイ
ッチのオン/オフを示す6ビツトまたは1ビツトのデー
タをデータバスに出力する。これらは、デコーダ、バス
ドライバおよび若干のゲート回路を用いて構成すること
ができる。操作部(602)のうち、タフレットスイッ
チについては、鍵盤部(601)と同様の構成をとるこ
とができる。
CPU (608)はその内部にあるプログラムカウン
タのコードに対応するROM (605)のアドレスか
ら命令コードを読み取り、これを解読して算術演算。
タのコードに対応するROM (605)のアドレスか
ら命令コードを読み取り、これを解読して算術演算。
論理演算、データの読み込みと書き込み、プログラムカ
ウンタの内容の変更による命令のジャンプなどの作業を
行なう。これらの作業の手順はROM(605)に書き
込まれている。まずCPU (60B)はROM (6
05)より鍵盤部(601)のデータを取り込むための
命令を読み取り、鍵盤部(601)の合鍵のオン/オフ
を示すコードを各群ごとに取り込んで行く。そして、押
鍵されている鍵コードを、楽音発生部(607)の有限
のチャネルに割り当て鍵コードに対応する楽音発生デー
タを送出する。
ウンタの内容の変更による命令のジャンプなどの作業を
行なう。これらの作業の手順はROM(605)に書き
込まれている。まずCPU (60B)はROM (6
05)より鍵盤部(601)のデータを取り込むための
命令を読み取り、鍵盤部(601)の合鍵のオン/オフ
を示すコードを各群ごとに取り込んで行く。そして、押
鍵されている鍵コードを、楽音発生部(607)の有限
のチャネルに割り当て鍵コードに対応する楽音発生デー
タを送出する。
次にCPU (608)は操作部(602)よりデータ
を取り込むための一群の命令を順次ROM (605)
から読み取り、これらを解読して操作部(602)に対
応するアドレスコードとコントロール信号I ORQと
RDを出力し、データバスに操作部(602)のスイッ
チの状態を表現するコードを出力させ、 CPU (6
0B)内に読み込む。CPU’ (608)内に読み込
んだデータに基づいて音色の選択や所定の効果制御デー
タの生成を行ない、 ROM (606)に音色選択デ
ータ、楽音発生部(607)に効果制御データを送出す
る。なお、押鍵されている鍵コードを楽音発生部(60
7)の有限のチャネルに割り当ててゆく方法そのものは
、ジェネレータアサイナ機能とじて公知のものである。
を取り込むための一群の命令を順次ROM (605)
から読み取り、これらを解読して操作部(602)に対
応するアドレスコードとコントロール信号I ORQと
RDを出力し、データバスに操作部(602)のスイッ
チの状態を表現するコードを出力させ、 CPU (6
0B)内に読み込む。CPU’ (608)内に読み込
んだデータに基づいて音色の選択や所定の効果制御デー
タの生成を行ない、 ROM (606)に音色選択デ
ータ、楽音発生部(607)に効果制御データを送出す
る。なお、押鍵されている鍵コードを楽音発生部(60
7)の有限のチャネルに割り当ててゆく方法そのものは
、ジェネレータアサイナ機能とじて公知のものである。
楽音発生部(607)ではCPU (60g)から供給
された楽音発生データに基づいて、楽音合成データRO
M (606)から所定の波形サンプルデータや制御デ
ータを取り込み波形内挿処理を行なって楽音波形を発生
し、フィルタ(608)を介して電気音響変換器(60
9)から楽音を発生させる。なお、楽音発生部(607
)の内部処理としては前述に説明したとおりである。
された楽音発生データに基づいて、楽音合成データRO
M (606)から所定の波形サンプルデータや制御デ
ータを取り込み波形内挿処理を行なって楽音波形を発生
し、フィルタ(608)を介して電気音響変換器(60
9)から楽音を発生させる。なお、楽音発生部(607
)の内部処理としては前述に説明したとおりである。
第7図にCPU (608)から楽音発生部(607)
にデータを供給する場合のタイムチャートを示す。アド
レスバスにI10ポートアドレスを、データバス、に楽
音発生データや効果制御データなどをそれぞれ供給する
。そして、コントロール信号市關 とWRが論理ロウ
レベルc以下%0′と略す)から論理ハイレベル(以下
゛1′と略す)へ変化するタイミングで、■10ボート
アドレスで指定されているチャネルにデータバスの内容
をラッチする。
にデータを供給する場合のタイムチャートを示す。アド
レスバスにI10ポートアドレスを、データバス、に楽
音発生データや効果制御データなどをそれぞれ供給する
。そして、コントロール信号市關 とWRが論理ロウ
レベルc以下%0′と略す)から論理ハイレベル(以下
゛1′と略す)へ変化するタイミングで、■10ボート
アドレスで指定されているチャネルにデータバスの内容
をラッチする。
次に、楽音発生部(607)に供給される各種のデータ
についての説明を行な・う。
についての説明を行な・う。
第8表にI10ボートアドレスと各種データの内容を示
ス。I10ポー゛ドアドレスは16進表示となっている
。I10ボートアドレス(00)isから(07)ta
に対応するデータは、楽音発生データで8チャネル分す
なわち、8音分の発生が可能となっている。
ス。I10ポー゛ドアドレスは16進表示となっている
。I10ボートアドレス(00)isから(07)ta
に対応するデータは、楽音発生データで8チャネル分す
なわち、8音分の発生が可能となっている。
I10ボートアドレス(08)1gはサスティンデータ
で、第5図で説明したエンベロープ信号の減衰特性を指
定するものである。I10ポートアドレス(09)1s
はエンベロープ特性がピアノ型の時に有効となるダンパ
データで、サスティンデータとFEJ様エンベロープ信
号の減衰特性を指定するものである。
で、第5図で説明したエンベロープ信号の減衰特性を指
定するものである。I10ポートアドレス(09)1s
はエンベロープ特性がピアノ型の時に有効となるダンパ
データで、サスティンデータとFEJ様エンベロープ信
号の減衰特性を指定するものである。
I10ポート7 F L/ X (OA)16 (、t
ビートチータテ、 2楽音発生時の周波数のずれを指
定するものであムI10ポートアドレス(OB)laは
効果制御データで、ビブラートオン/オフ信号やグライ
ドオン/オフ信号などで構成している。
ビートチータテ、 2楽音発生時の周波数のずれを指
定するものであムI10ポートアドレス(OB)laは
効果制御データで、ビブラートオン/オフ信号やグライ
ドオン/オフ信号などで構成している。
第4表に楽音発生データの構成内容を示す。ビット位置
DoからD3は音階周波数を指定するノートクロック指
定データである。ビット位置D4〜D6は発生音域を指
定する波形サンプル数指定データである。ビット位置D
7は鍵スィッチのオン/オフ操作に伴なうキーオン/オ
フ信号で、オフ時は′θ′。
DoからD3は音階周波数を指定するノートクロック指
定データである。ビット位置D4〜D6は発生音域を指
定する波形サンプル数指定データである。ビット位置D
7は鍵スィッチのオン/オフ操作に伴なうキーオン/オ
フ信号で、オフ時は′θ′。
オン時は′″1′となる。
第5表に波形サンプル数指定データSDQ −Sn2の
コード内容とそのコードで指定される波形1周期のサン
プル数を示す。波形サンプル数指定データSDは(00
0)2から(11’l)2までの8種類の波形サンプル
数が指定できるようになっており、本実施例第3表 では、512サンプルから4サンプルまでを指定してい
る。
コード内容とそのコードで指定される波形1周期のサン
プル数を示す。波形サンプル数指定データSDは(00
0)2から(11’l)2までの8種類の波形サンプル
数が指定できるようになっており、本実施例第3表 では、512サンプルから4サンプルまでを指定してい
る。
第6表にノートクロック指定データND□ −NDBで
表わされるコードの内容と、そのコードで指定される指
定音階の関係を示す。
表わされるコードの内容と、そのコードで指定される指
定音階の関係を示す。
第7表に効果制御データの構成内容を示す。ピッ)位t
D。はビブラートオン/オフ信号VIBで、操作部(6
02)内のビブラートオン/オフスイッチがオフの時%
Q?、オンの時%1′となる。
D。はビブラートオン/オフ信号VIBで、操作部(6
02)内のビブラートオン/オフスイッチがオフの時%
Q?、オンの時%1′となる。
ビット位置D1はディレィビブラートオン/オフ(N号
DVIBで、ディレィビブラート効果制御信号であり、
操作部(602)内のディレィビブラートオン・/オフ
スイッチがオフの時%QI、オンの時′″1′となる。
DVIBで、ディレィビブラート効果制御信号であり、
操作部(602)内のディレィビブラートオン・/オフ
スイッチがオフの時%QI、オンの時′″1′となる。
ビット位置D2はグライドオン/オフ信号GLで、操作
部(602)内のグライドスイッチがオフの時″10′
、オンの時′″1′となる。
部(602)内のグライドスイッチがオフの時″10′
、オンの時′″1′となる。
ビット位置D8はオルガン型/ピアノ型指定信号OPS
で、エンベロープ特性を指定するものであり、オルガン
型の時10′、ピアノ型の時JPとなる。
で、エンベロープ特性を指定するものであり、オルガン
型の時10′、ピアノ型の時JPとなる。
第4表
第 5 表
第6表
第7表
ビット位置D4はダンパオン/オフ信号DMPで、エン
ベロープ特性がピアノ型の時のみ有効となるもので、ダ
ンパオフの時′θ′、オンの時′″1′となる。
ベロープ特性がピアノ型の時のみ有効となるもので、ダ
ンパオフの時′θ′、オンの時′″1′となる。
ビット位置D5はジエネレータアザイナht 作モート
信号GAMで、1鍵で架台発生チャネルを2チヤネル使
用する場合の指定信号であり、 CAM信号が′0#の
場合、1!!!1チヤネル使用(8音発生)となり、5
1′の場合、1嫡2チヤネル使用(4音発生)となる。
信号GAMで、1鍵で架台発生チャネルを2チヤネル使
用する場合の指定信号であり、 CAM信号が′0#の
場合、1!!!1チヤネル使用(8音発生)となり、5
1′の場合、1嫡2チヤネル使用(4音発生)となる。
第8図は楽音発生部(607)の構成図である。第8図
において、 (801)は主発振器、(8o2)は楽音
発生部(607)の動作内容を制御するシーケンサ。
において、 (801)は主発振器、(8o2)は楽音
発生部(607)の動作内容を制御するシーケンサ。
(808)はCPU (608)から供給される各種の
データをラッチする入力レジスタ部、(804)はタイ
マー、(805)は比較レジスタ部、 (806)は発
音すべき周波数に対応する周波数データを発生する周波
数データプロセッサ(以下FDPと略す) 、 (80
7)は前述で説明した(2)式の波形内挿処理を行なう
波形データプロセッサ(以下WDPと略す) 、 (8
08)は楽音合成データROM (606)から波形サ
ンプルデータや制御データなどを読み込むデータ・リー
ド・プロセッサ(以下DRPと略す)、(809)は所
定のパルス幅のパルス信号を生成する読み出しパルス形
成部、 (810)はWDP (807) 、 DRP
(808)などの演算処理要求を行なう計算要求フラ
グ発生部、 (811)はディジタル信号をアナログ信
号に変換するディジタル/アナログ及換器(以下DAC
と略す)、(812)は1チ・ヤネル当りアナログスイ
ッチ2つとコンデンサ1つとで構成されており、アナロ
グ信号を保持するアナログバッファメモリm、 (81
8)は積分器である。
データをラッチする入力レジスタ部、(804)はタイ
マー、(805)は比較レジスタ部、 (806)は発
音すべき周波数に対応する周波数データを発生する周波
数データプロセッサ(以下FDPと略す) 、 (80
7)は前述で説明した(2)式の波形内挿処理を行なう
波形データプロセッサ(以下WDPと略す) 、 (8
08)は楽音合成データROM (606)から波形サ
ンプルデータや制御データなどを読み込むデータ・リー
ド・プロセッサ(以下DRPと略す)、(809)は所
定のパルス幅のパルス信号を生成する読み出しパルス形
成部、 (810)はWDP (807) 、 DRP
(808)などの演算処理要求を行なう計算要求フラ
グ発生部、 (811)はディジタル信号をアナログ信
号に変換するディジタル/アナログ及換器(以下DAC
と略す)、(812)は1チ・ヤネル当りアナログスイ
ッチ2つとコンデンサ1つとで構成されており、アナロ
グ信号を保持するアナログバッファメモリm、 (81
8)は積分器である。
上記構成において、 (804)(805)(806)
(8,10)は発音音階を決定するノートクロック発生
部を構成し。
(8,10)は発音音階を決定するノートクロック発生
部を構成し。
その出力信号に基づいて、データ読み出し部であるDR
P (808)が楽音合成データROM (606)か
らデータを読み出す。
P (808)が楽音合成データROM (606)か
らデータを読み出す。
また、入力レジスタ部(803) 、比較レジスタ部(
805) 、 FDP (806) 、 WDP (8
07) 、 DRP (808)、計算要求フラグ発生
部(810)はシーケンサ(802)によって処理を行
なう手順が決められている。
805) 、 FDP (806) 、 WDP (8
07) 、 DRP (808)、計算要求フラグ発生
部(810)はシーケンサ(802)によって処理を行
なう手順が決められている。
CPPU (608)から所定のチャネルたとえばチャ
ネル1に楽音発生データが供給されると、シーケンサ(
808)で決められている所定のタイミングで入力レシ
フタ部(803)カらFDP (806) ; wDP
(807)、DRP (808)に楽音発生データが供
給される。そうすると、 DRP (80g)において
、楽音合成データROM (606)から波形サンプル
データと制御データを読み取る。そして、(2〕式に示
したf(Xl、n)をデータWDIとし、f(X;+t
、n)をデータWD][としてWDP (807)に供
給する。さらに、読み取った制御データに基づいた(2
)式に示した内挿係数の分子項をデータMLPとしてW
DP (807)に供給する。また、最終波形データに
なると最終波形データを指示すルWEF 信号t WD
P (80?) ニ供給する。
ネル1に楽音発生データが供給されると、シーケンサ(
808)で決められている所定のタイミングで入力レシ
フタ部(803)カらFDP (806) ; wDP
(807)、DRP (808)に楽音発生データが供
給される。そうすると、 DRP (80g)において
、楽音合成データROM (606)から波形サンプル
データと制御データを読み取る。そして、(2〕式に示
したf(Xl、n)をデータWDIとし、f(X;+t
、n)をデータWD][としてWDP (807)に供
給する。さらに、読み取った制御データに基づいた(2
)式に示した内挿係数の分子項をデータMLPとしてW
DP (807)に供給する。また、最終波形データに
なると最終波形データを指示すルWEF 信号t WD
P (80?) ニ供給する。
WDP (807) テは、DRP (808)から供
給すtL タ5’−タWDI 、 WDI 、 MLP
ヲ用1.−.、(2) 式(D 波形演算処理を行な
ってDAC(811)に供給する。そして、DAC(8
11)において、 WDP (807)から供給された
ディジタル信号をアナログ信号に変換し、アナログバッ
ファメモリ部(812)にアナログ信号として供給し、
チャネル1に対応するコンデンサ電荷が蓄えられる。
給すtL タ5’−タWDI 、 WDI 、 MLP
ヲ用1.−.、(2) 式(D 波形演算処理を行な
ってDAC(811)に供給する。そして、DAC(8
11)において、 WDP (807)から供給された
ディジタル信号をアナログ信号に変換し、アナログバッ
ファメモリ部(812)にアナログ信号として供給し、
チャネル1に対応するコンデンサ電荷が蓄えられる。
一万、 FDP (806)では、入力レジスタ部(8
08)から供給された楽音発生データに基づいた周波数
データが生成され、比較レジスタ部(805)のチャネ
ル1に対応するレジスタに供給される。そして。
08)から供給された楽音発生データに基づいた周波数
データが生成され、比較レジスタ部(805)のチャネ
ル1に対応するレジスタに供給される。そして。
比較レジスタ(805)に供給されたデータとタイマー
(804)から供給されている時間データとの比較処
理を行ない、一致が検出できると一致ノ(ルスを読み出
しパルス形成部(809)と計算要求フラグ発生部(8
10)に供給する。
(804)から供給されている時間データとの比較処
理を行ない、一致が検出できると一致ノ(ルスを読み出
しパルス形成部(809)と計算要求フラグ発生部(8
10)に供給する。
そうすると、読み出しパルス形成部(809)で所・定
のパルス幅の読み出し信号が生成され、アナログバッフ
ァメモリ部(812)に供給される。アナログバッファ
メモリ部(812)内のチャネル1に対応するコンデン
サに蓄えられている電荷は読み出し信号によって積分器
(818)に流れ込む。
のパルス幅の読み出し信号が生成され、アナログバッフ
ァメモリ部(812)に供給される。アナログバッファ
メモリ部(812)内のチャネル1に対応するコンデン
サに蓄えられている電荷は読み出し信号によって積分器
(818)に流れ込む。
計算要求フラグ発生部(810)では1次波形サンプル
すなわちt仮想サンプル点f (X+、=、n+1)を
求める1こめの計算要求フラグを発生し保持する。
すなわちt仮想サンプル点f (X+、=、n+1)を
求める1こめの計算要求フラグを発生し保持する。
そして、その後再び処理タイミングがチャネル1となる
と、計算要求フラグが発生しているので前述と同様に波
形6挿処理が行なわれ、アナログバッファメモリ部(8
12)内のコンデンサに電荷が蓄えられる。以後、計算
要求フラグに対応して波形内挿処理が行なわれ、楽音波
形を発生することになる。
と、計算要求フラグが発生しているので前述と同様に波
形6挿処理が行なわれ、アナログバッファメモリ部(8
12)内のコンデンサに電荷が蓄えられる。以後、計算
要求フラグに対応して波形内挿処理が行なわれ、楽音波
形を発生することになる。
なお、コンデンサに蓄える電荷は、 f (Xt、m
、n−])と今回求めた波形サンプル値f cxi、、
m、n) との差分に相当する。そして、積分器(8
1B)によって今回求めた波形サンプル値f (Xi、
m、n) が復元されることになる。アナログバッファ
メモリi (812)と:積分器(818)周辺の動作
については、特願昭57−1264181波形読み出し
装置」に述べておる。
、n−])と今回求めた波形サンプル値f cxi、、
m、n) との差分に相当する。そして、積分器(8
1B)によって今回求めた波形サンプル値f (Xi、
m、n) が復元されることになる。アナログバッファ
メモリi (812)と:積分器(818)周辺の動作
については、特願昭57−1264181波形読み出し
装置」に述べておる。
第9図はシーケンサ(802)の−具体例のブロック図
である。図中、(901)は2相りロック信号φ1と信
号φ2とを発生する2相りロック発生部、(902)は
1チャネル当りの動作シーケンスを決める11進カウン
タ・ (90g)は現在演算処理を行なっているチャネ
ルコード遺発生するカウンタ、 (904)は動作手順
が記憶されているROM、、 (905)はデコーダで
ある。第10図にシーケンサ(802)のタイミングチ
ャート図を示す。 ′ 主発振器(801)からマスタクロックCMCK) 信
号が2相りロック発生部(901)に供給される。2相
りロック発生部(901)では、第10図に示すような
2相りロック信号φ1.φ2を発生する。信号φ1は1
1進カウンタ(902)とカウンタ(908)に供給さ
れている。
である。図中、(901)は2相りロック信号φ1と信
号φ2とを発生する2相りロック発生部、(902)は
1チャネル当りの動作シーケンスを決める11進カウン
タ・ (90g)は現在演算処理を行なっているチャネ
ルコード遺発生するカウンタ、 (904)は動作手順
が記憶されているROM、、 (905)はデコーダで
ある。第10図にシーケンサ(802)のタイミングチ
ャート図を示す。 ′ 主発振器(801)からマスタクロックCMCK) 信
号が2相りロック発生部(901)に供給される。2相
りロック発生部(901)では、第10図に示すような
2相りロック信号φ1.φ2を発生する。信号φ1は1
1進カウンタ(902)とカウンタ(908)に供給さ
れている。
11進カウンタ(902)は4ビツト構成となっており
、徂号φ1が0′から1′へ変化するタイミングでカウ
ントアツプ処理が行なわれ、出力信号が(111,1)
2 となり、次にカウントアツプを行なうと(0101
)2にセットされる。この結果、11進カウンタ(90
2)の出力信号は11の状態、すなわち(0101)2
〜(1111)2となる。これを命令ステップ信号とし
て使用する。
、徂号φ1が0′から1′へ変化するタイミングでカウ
ントアツプ処理が行なわれ、出力信号が(111,1)
2 となり、次にカウントアツプを行なうと(0101
)2にセットされる。この結果、11進カウンタ(90
2)の出力信号は11の状態、すなわち(0101)2
〜(1111)2となる。これを命令ステップ信号とし
て使用する。
カウンタ(908)は8ビツト構成となっており。
11カウンタ(902)の出力信号が(1111)2か
ら(0101)2へ変化するたびにカウントアツプ処理
が行なわれる。この結果、カウンタ(908)の出力信
号は8の状態、すなわち(000)2〜(111)2
となる。
ら(0101)2へ変化するたびにカウントアツプ処理
が行なわれる。この結果、カウンタ(908)の出力信
号は8の状態、すなわち(000)2〜(111)2
となる。
これをチャネルコードとして使用する。
ROM (904)は11進カウンタ(902)から供
給される命令ステップ信号に基づいた命令コードを読み
出し、デコーダ(905)に供給する。デコーダ(90
5)はROM (904)から供給された命令コードを
解読して処理制御信号を各部に供給する。
給される命令ステップ信号に基づいた命令コードを読み
出し、デコーダ(905)に供給する。デコーダ(90
5)はROM (904)から供給された命令コードを
解読して処理制御信号を各部に供給する。
この結果、1チャネル当りの計算時向は2.75μsと
なり、11の命令ステップで各演算処理を行なうことに
なる。そして、22μsごとに計算タイミングが返され
ることになる。
なり、11の命令ステップで各演算処理を行なうことに
なる。そして、22μsごとに計算タイミングが返され
ることになる。
第11図にアナログバッファメモリ部(812>の−具
体例の構成図を示す。図中、(1101)は入力端、(
1102)は出力端、 (1108)〜(1108)は
アナログスイッチ= Cl−Csはコンデンサである。
体例の構成図を示す。図中、(1101)は入力端、(
1102)は出力端、 (1108)〜(1108)は
アナログスイッチ= Cl−Csはコンデンサである。
アナログスイッチ(1108) (1,105) (1
107)のゲート入力に供給されている信号AWl〜A
W8はWDP (807)から供給されている。また、
アナログスイッチ(1104) (1106) (11
08)のゲート入力に供給されている信号ARI〜AR
3は読み出しパルス形成部(809)から供給されてい
る。
107)のゲート入力に供給されている信号AWl〜A
W8はWDP (807)から供給されている。また、
アナログスイッチ(1104) (1106) (11
08)のゲート入力に供給されている信号ARI〜AR
3は読み出しパルス形成部(809)から供給されてい
る。
DAC(811)で変換されたアナログ信号は入力端(
1101)に印加されアナログスイッチ(110B)
(1105)(1107)に供給される。そして、チャ
ネルlに対応するデータであれば、アナログスイッチ(
1108)のみオン状態となり、入力端(1101)に
印加されたアナログ信号に相当する電荷がコンデンサC
1に蓄えられる。
1101)に印加されアナログスイッチ(110B)
(1105)(1107)に供給される。そして、チャ
ネルlに対応するデータであれば、アナログスイッチ(
1108)のみオン状態となり、入力端(1101)に
印加されたアナログ信号に相当する電荷がコンデンサC
1に蓄えられる。
その後、チャネルlに対応する読み出しパルスAR1が
読み出しパルス発生部(809)からアナログスイッチ
(1104)のゲート入力に供給されると、コンデンサ
CIに蓄えられている電荷が出力端(1102)を介し
て積分器(818)に供給される。
読み出しパルス発生部(809)からアナログスイッチ
(1104)のゲート入力に供給されると、コンデンサ
CIに蓄えられている電荷が出力端(1102)を介し
て積分器(818)に供給される。
アナログスイッチ(1108) (1105) (11
07)はWDP (807)の動作タイミングに同期し
ているので、同時に複数個オン状態にならない。アナロ
グスイッチ(1104)(1106) (1108)は
音階周波数に同期してオンするようになっているため、
複数個同時にオン状態となりうる。
07)はWDP (807)の動作タイミングに同期し
ているので、同時に複数個オン状態にならない。アナロ
グスイッチ(1104)(1106) (1108)は
音階周波数に同期してオンするようになっているため、
複数個同時にオン状態となりうる。
第12図は楽音発生部(607)の内部動作タイミング
チャートである。第12図には4チャネル分のタイミン
グを示した。
チャートである。第12図には4チャネル分のタイミン
グを示した。
図中の略記号の説明
CRFは、各チャネルごとの計算要求信号である。
そして、要求開始時点が比較レジスタ
部(805)から供給される一致信号と同期している。
すなわち、音階周波数に
同期することとなり、たとえば、C音
階でおれば59.74μsごとに発生する。
CLCは、波形演算タイミングを示す。
DACは、 DAC(811)を介してアナログバッフ
ァメモIJ (812)内のコンデンサに電荷を蓄える
タイミングを示す。
ァメモIJ (812)内のコンデンサに電荷を蓄える
タイミングを示す。
OTCは、アナログバッファメモリ(812) 内のコ
ンデンサに蓄えられている電荷を積分 器(818)に供給するタイミングであり、CRFと同
様に、音階周波数に同期して発生している。
ンデンサに蓄えられている電荷を積分 器(818)に供給するタイミングであり、CRFと同
様に、音階周波数に同期して発生している。
チャネル1のタイムチャー′トについて説明する。
チャネル1に相当する演算タイミングはシーケンサ(8
02)で発生しているチャネルコードによって決まって
おり、図にも示しであるように、22μsごとに演算タ
イミングが発生している。
02)で発生しているチャネルコードによって決まって
おり、図にも示しであるように、22μsごとに演算タ
イミングが発生している。
■・・・信号CRFIがチャネルコード1の途中で発生
”する。発生したタイミングでは波形内挿処理を
行なわない。
”する。発生したタイミングでは波形内挿処理を
行なわない。
■・−・信号CRFlが発生すると同時に信号oTc1
が発生し、アナログバッファメモリ(812) 内のコ
ンデンサC1の電荷が積分器(818)に供給される。
が発生し、アナログバッファメモリ(812) 内のコ
ンデンサC1の電荷が積分器(818)に供給される。
信号OTCのパルス幅は2μs程度である。。
■・・・チャネルコードが再び1となると、波形サンプ
ルデータなどの読み込み処理や波形内挿処理や周波数デ
ータの更新処理などを行なう。
ルデータなどの読み込み処理や波形内挿処理や周波数デ
ータの更新処理などを行なう。
■・・−チャネル1の演算処理が終了すると、信号DA
Clが発生し、 DAC(811)を介してコンデンサ
C1に電荷が蓄えられろう ■・・・チャネル1の演算処理が終了すると、イ言号C
RFIをリセットして計算要求を解除する。
Clが発生し、 DAC(811)を介してコンデンサ
C1に電荷が蓄えられろう ■・・・チャネル1の演算処理が終了すると、イ言号C
RFIをリセットして計算要求を解除する。
■・・・前述の■と同様に、信号CRFIが再び発生す
るタイミングでI#J述の■のタイミングでコンデンサ
CIに蓄えられた電荷が積分器(818)に供給される
。
るタイミングでI#J述の■のタイミングでコンデンサ
CIに蓄えられた電荷が積分器(818)に供給される
。
以後、上述と同様に、信号CRFが発生するたびに、1
回の仮想波形サンプル値算出処理が行なわれ、信号CR
Fの発生タイミング、すなわち音階同期に同期して波形
算出結果が積分器(813)に供給される。
回の仮想波形サンプル値算出処理が行なわれ、信号CR
Fの発生タイミング、すなわち音階同期に同期して波形
算出結果が積分器(813)に供給される。
演算サイクルと音階周期の関係は、最小音階周期内に同
一チャネルの演算タイミングが2回と演算結果をアナロ
グバッファメモリm (812) 内(7) :]ンデ
ンサに電荷を蓄えることが出来ればよい。すなわち、最
小音階周期内にlOチャネル分に相当する演算タイミン
グを設ければよい。
一チャネルの演算タイミングが2回と演算結果をアナロ
グバッファメモリm (812) 内(7) :]ンデ
ンサに電荷を蓄えることが出来ればよい。すなわち、最
小音階周期内にlOチャネル分に相当する演算タイミン
グを設ければよい。
音階周期の発生方法についての説明
第18図に、FDP(806)から比較レジスタ部(8
05)に供給する周辣数データの推移を示す。タイマー
(804)は10ビツトの2進カウンタで構成しており
。
05)に供給する周辣数データの推移を示す。タイマー
(804)は10ビツトの2進カウンタで構成しており
。
出力状態を16進表示で表わすと、(000)16から
(8FF )1.まで順次カウントアツプを行ない、(
8FF)16から再び(000)16 となり、(,
000)16から(8FF )1aが主発振器(801
)から供給される信号MCKに基づいてくり返される。
(8FF )1.まで順次カウントアツプを行ない、(
8FF)16から再び(000)16 となり、(,
000)16から(8FF )1aが主発振器(801
)から供給される信号MCKに基づいてくり返される。
すなわち、タイヤ−(804)のくり返し周期TRは下
式のようになる。
式のようになる。
TR= 2”X ・−・・・・・・
・・・・・−・・・・・・ (3)MCK = 210× 8゜00096MHz = 127.98μs タイマー(804)の出力データ推移状態を第18図中
のタイマー出力データとして記載しである。
・・・・・−・・・・・・ (3)MCK = 210× 8゜00096MHz = 127.98μs タイマー(804)の出力データ推移状態を第18図中
のタイマー出力データとして記載しである。
音階周期の発生方法としては、タイマー(804)の出
力信、号とFDP (806)から供給された周波数デ
ータとの比較を行ない、一致が検出できれば一致パルス
を比較レジスタ部(805)から送出する。その一致パ
ルスの発生周期が発音すべき音階の音階周期となる。
力信、号とFDP (806)から供給された周波数デ
ータとの比較を行ない、一致が検出できれば一致パルス
を比較レジスタ部(805)から送出する。その一致パ
ルスの発生周期が発音すべき音階の音階周期となる。
第13図に示したように1周波数データを更新すること
によりノートクロック信号が発生できる。
によりノートクロック信号が発生できる。
すなわち、下式に示すような演算処理をFDP(806
)で行なう。
)で行なう。
NFD=MOD(OFD+PD、TDmax)
−−−−−=・=−(4)NFDは、新しい周波数デー
タである。
−−−−−=・=−(4)NFDは、新しい周波数デー
タである。
OFDは、更新前の周波数データである。
PDは1発生音階pζよって決まっている音階データで
める。
める。
TDmaxは、タイマー(804)の出力状態数である
。
。
本実施例の場合TDma工は210すなわち1024で
ある。
ある。
第8表に12音階に対応する音階データPDを示す。
第14図は、 FDP (806)の−具体例の構成図
である。第14図において、 (1401)はセント尺
度で表わした音階データ(CPDとする)を発生するセ
ント音階データ発生部〔以下CPD発生部と略す〕で、
セント音階データを記憶しているROMで構成しており
、ノートクロック指定データ(ND)と波形サンプル数
指定データ(SD)とオルガン型/ピアノ型指定信号(
OPS )に基づいたCPDを選択発生するようになっ
ている。(1402)はビートデータを選択するビート
データゲート、 C140B)はビブラート信号を発
生するビブラート信号発生部、(1404)はグライド
信号を発生するグライド信号発生部、 (1405)は
セント尺度で表わされた周波数f+fI ’x周波数に
正比例する周波数データに変換する指数変換器、 (1
406)は演算部、 (1407)はラッチ(ALと
する) 、 (1408)はラッチ(BLとする)、(
1409)は那算器(FAとする) 、 (1410)
はバッファ、(1411)はゲートである。
である。第14図において、 (1401)はセント尺
度で表わした音階データ(CPDとする)を発生するセ
ント音階データ発生部〔以下CPD発生部と略す〕で、
セント音階データを記憶しているROMで構成しており
、ノートクロック指定データ(ND)と波形サンプル数
指定データ(SD)とオルガン型/ピアノ型指定信号(
OPS )に基づいたCPDを選択発生するようになっ
ている。(1402)はビートデータを選択するビート
データゲート、 C140B)はビブラート信号を発
生するビブラート信号発生部、(1404)はグライド
信号を発生するグライド信号発生部、 (1405)は
セント尺度で表わされた周波数f+fI ’x周波数に
正比例する周波数データに変換する指数変換器、 (1
406)は演算部、 (1407)はラッチ(ALと
する) 、 (1408)はラッチ(BLとする)、(
1409)は那算器(FAとする) 、 (1410)
はバッファ、(1411)はゲートである。
(1412) (1418) (1414)はパスライ
ンで、 (1412)がFAババス(1413)がF
Bババス (1414)がFCバスである。
ンで、 (1412)がFAババス(1413)がF
Bババス (1414)がFCバスである。
なお、ビートデータCHD 、ビブラートデータCVD
、グライドデータCGDもセント尺度で表わしている
。
、グライドデータCGDもセント尺度で表わしている
。
各種データの構造
セントピッチデータ(CPD)
11ヒツト構成で、上位4ビツトで12音階平均律を表
わし、下位7ビツトで半音階を128等分した各点を表
わしている。
わし、下位7ビツトで半音階を128等分した各点を表
わしている。
ビートデータ(CBD)、ビブラートデータ(CVD)
、グライドデータ(CGD) 第 8 表 数字表現は10進数である。
、グライドデータ(CGD) 第 8 表 数字表現は10進数である。
各ビット構成は8ビツトで、2の補数表現を用い、半音
階を128−等分した分解能を有する。そして、正負の
ビート成分、ビブラート成分、グライド成分を表オ〕し
ている。
階を128−等分した分解能を有する。そして、正負の
ビート成分、ビブラート成分、グライド成分を表オ〕し
ている。
ビブラート信号発生部(1408)の説明゛第22図は
ビブラート信号発生部(1403)の−具体例の構成図
を示す。図中、(2201)はビブラートデータCVD
を記憶しておくビブラー)−ROM、(2202)はビ
ブラートROM(2201)から記憶して勘るビブラー
トデータを読み出すためのアドレスデータを格納するビ
ブラートアドレスレジスタ、(2208)はディレィビ
ブラート効果の時に用いるシフタ、 (2204)は信
号RDCVDによりシフタ(2208)の出力信号(ビ
ブラートデータCVD )をFBババス供給するゲート
。
ビブラート信号発生部(1403)の−具体例の構成図
を示す。図中、(2201)はビブラートデータCVD
を記憶しておくビブラー)−ROM、(2202)はビ
ブラートROM(2201)から記憶して勘るビブラー
トデータを読み出すためのアドレスデータを格納するビ
ブラートアドレスレジスタ、(2208)はディレィビ
ブラート効果の時に用いるシフタ、 (2204)は信
号RDCVDによりシフタ(2208)の出力信号(ビ
ブラートデータCVD )をFBババス供給するゲート
。
(2205)は入力レジスタ部(808)から供給され
ている信号器、信号VIB 、信号DVIBとシーケン
サ(802)から供給されている信号CHCに基づいて
ビブラート信号発生部(1408)の動作条件を設定す
る条件設定部、(2206)はゲート、(2207)は
ゲート。
ている信号器、信号VIB 、信号DVIBとシーケン
サ(802)から供給されている信号CHCに基づいて
ビブラート信号発生部(1408)の動作条件を設定す
る条件設定部、(2206)はゲート、(2207)は
ゲート。
(2208)はNΦアゲートある。
レジスタ(2202)に格納するアドレスデータは14
ビツト構成となっており、下位11ビツトをビブラート
ROM (2201)のアドレスデータとし、上位8ビ
ツトをシフタ(2208)のシフトデータとしている。
ビツト構成となっており、下位11ビツトをビブラート
ROM (2201)のアドレスデータとし、上位8ビ
ツトをシフタ(2208)のシフトデータとしている。
シフタ(2208)はシフトデータに基づいてビブラー
t−ROM (2201)から供給されているビブラー
トデータCVDの振幅を制御するものである。シフトデ
ータVSFDとシフタ(2208)の出力データ05F
Dとの関係は次のとおりである。
t−ROM (2201)から供給されているビブラー
トデータCVDの振幅を制御するものである。シフトデ
ータVSFDとシフタ(2208)の出力データ05F
Dとの関係は次のとおりである。
VSFD = (000)2 ・= 05FD = (
00)16、VSFD = (001)2−05FD
= (CVD/64) 、 VSFD = (010)
2−05FD −(CVD/82) 、−・・、VSF
D = (110)2−03FD = (CVD/2)
、VSFD = (111)z・・・05FD = (
CVD)条件設定部(2205)は次のような動作案件
設定を行なう。
00)16、VSFD = (001)2−05FD
= (CVD/64) 、 VSFD = (010)
2−05FD −(CVD/82) 、−・・、VSF
D = (110)2−03FD = (CVD/2)
、VSFD = (111)z・・・05FD = (
CVD)条件設定部(2205)は次のような動作案件
設定を行なう。
ビブラートオフ
ビブラートオン/オフ信号VIBが0′の場合であり、
ゲート(2206)の出力を強制的に常時(00)16
とする。そうすると、シフタ(2208)のシフトデー
タは常時(000)2となる。この結果、シフタ(22
08)の出力データは(00)16となる。すなわち、
ビブラートデータCVDが常時(00)16となる。
ゲート(2206)の出力を強制的に常時(00)16
とする。そうすると、シフタ(2208)のシフトデー
タは常時(000)2となる。この結果、シフタ(22
08)の出力データは(00)16となる。すなわち、
ビブラートデータCVDが常時(00)16となる。
ビブラートオン
ビブラートオン/オフ信号VIBが′″1′で信号DV
IBがSatの場合、ビブラートオン状態となる。レジ
スタ(2202)に格納してい・るアドレスデータをゲ
ート(2206)を介してゲート(2207)とシフタ
(220B)に供給する。なお、アドレスデータの上位
3ビツト、すなわちシフトデータを強制的に(1,11
)2とする。そうすると、ケート(2204)の入力に
はビブラートROM (2201)の出力(ビブラート
データCVD )がそのまま供給されることになる。
IBがSatの場合、ビブラートオン状態となる。レジ
スタ(2202)に格納してい・るアドレスデータをゲ
ート(2206)を介してゲート(2207)とシフタ
(220B)に供給する。なお、アドレスデータの上位
3ビツト、すなわちシフトデータを強制的に(1,11
)2とする。そうすると、ケート(2204)の入力に
はビブラートROM (2201)の出力(ビブラート
データCVD )がそのまま供給されることになる。
ディレィビブラート
ビブラートオン/オフ信号VIBとディレィビブラート
オン/オフ信号DVIBが′1′の場合、ディレィビブ
ラート状態となる。8チヤネルのキーオン/オフ信号即
がすべてオフ状態からいずれか1つのキーオン/オフ信
号KDがオン状態となると、アドレスデータを(000
haに設定するように、ゲート(2206)を制御する
。そうすると、シフタ(2208)において、ビブラー
ト信号1周期ごとに、ビブラートデータCVDの振幅制
御(0゜CVD/64. CVD/82. CVD/1
6 、 CVD/8 、 CVD/4 。
オン/オフ信号DVIBが′1′の場合、ディレィビブ
ラート状態となる。8チヤネルのキーオン/オフ信号即
がすべてオフ状態からいずれか1つのキーオン/オフ信
号KDがオン状態となると、アドレスデータを(000
haに設定するように、ゲート(2206)を制御する
。そうすると、シフタ(2208)において、ビブラー
ト信号1周期ごとに、ビブラートデータCVDの振幅制
御(0゜CVD/64. CVD/82. CVD/1
6 、 CVD/8 、 CVD/4 。
CVI)/2 、 CVD )が行なわれる。そして、
シフトデータが(111)2となるとビブラートオン状
態と同様にシフトデータを強制的に(111)2とする
。
シフトデータが(111)2となるとビブラートオン状
態と同様にシフトデータを強制的に(111)2とする
。
レジスタ(2202)に格納しているアドレスデータは
、ンーケンサ(8o2〕カら供給されている信号RDV
ADによってゲート(2207)を介L/ テFBハ’
7. ニ供給される。
、ンーケンサ(8o2〕カら供給されている信号RDV
ADによってゲート(2207)を介L/ テFBハ’
7. ニ供給される。
’M 算部(1406)で加算処理されたアドレスデー
タは、信号WRVADによって信号≠2の立上りエッヂ
で、 FCバスからレジスタ(2202)に格納される
。
タは、信号WRVADによって信号≠2の立上りエッヂ
で、 FCバスからレジスタ(2202)に格納される
。
また、信号RDCVDによって、ビブラートROM(2
201)に格納してめるビブラ・−トデータCVDがシ
フタ(2208) 、ケート(2204)を介しテFB
ハスニ供給される。
201)に格納してめるビブラ・−トデータCVDがシ
フタ(2208) 、ケート(2204)を介しテFB
ハスニ供給される。
グライド信号発生部(1404)の説明グライド信号発
生部(1404)も、ビブラート信号発生部(1408
)と同様にグライド名−夕を記憶してお(グライドRO
Mと、そのグライドROMから所定のグライドデータを
読み出すためのグライドアドレスレジスタと、発生制御
を行なう制御器とから構成している。
生部(1404)も、ビブラート信号発生部(1408
)と同様にグライド名−夕を記憶してお(グライドRO
Mと、そのグライドROMから所定のグライドデータを
読み出すためのグライドアドレスレジスタと、発生制御
を行なう制御器とから構成している。
動作モードとしては、グライドオフとグライドオンの2
種類がある。
種類がある。
グライドオフ
信号GLが′″0′の場合グライドオフ状態となる。
グライドデータCGDは常時(00)16となる。
グライドオン
信号GLが′1′の場合グライドオン状態となる。
通常よく知られているグライド効果と同様なものである
。すなわち、8チヤネルのキーオン/オフ信号肋がすべ
てオフ状態からいずれか1チヤネルのキーオン/オフ信
号ΩがオンになるとグライドROMからグライドデータ
CGDが読み出される。そして、所定な時間が経過する
と再びグライドデータCGC)は(OO)16となる。
。すなわち、8チヤネルのキーオン/オフ信号肋がすべ
てオフ状態からいずれか1チヤネルのキーオン/オフ信
号ΩがオンになるとグライドROMからグライドデータ
CGDが読み出される。そして、所定な時間が経過する
と再びグライドデータCGC)は(OO)16となる。
指数変換器(1405)の説明
指数変換器(1405)は、セント尺度のブータラ周波
数に正比例する周波数データEDに変換する変換データ
を記憶した変換ROMを内蔵している。
数に正比例する周波数データEDに変換する変換データ
を記憶した変換ROMを内蔵している。
本実施例では、セント尺度上の周波数データCFDの上
位4ビツト(ビット位置7〜10)をアドレスデータと
するEXP・ROMと、ビット位置0〜1゜の11ビツ
トをアドレスデータとする△EXP−ROMとを用意し
ている。
位4ビツト(ビット位置7〜10)をアドレスデータと
するEXP・ROMと、ビット位置0〜1゜の11ビツ
トをアドレスデータとする△EXP−ROMとを用意し
ている。
そして、演算部(1406)で加算処理されたセント尺
度上の周波数データCFDを信号WREXPによって格
納するレジスタと、そのレジスタに格納されているデー
タをアドレスデータとする上述したEXP・ROM 、
△EXP −ROMと、信号RDEXP%RD△EXP
によってEXP −ROM 、 △EXP −ROMニ
格納しているデータをそれぞれFAババス FBババス
供給するゲートから構成されている。
度上の周波数データCFDを信号WREXPによって格
納するレジスタと、そのレジスタに格納されているデー
タをアドレスデータとする上述したEXP・ROM 、
△EXP −ROMと、信号RDEXP%RD△EXP
によってEXP −ROM 、 △EXP −ROMニ
格納しているデータをそれぞれFAババス FBババス
供給するゲートから構成されている。
EXP −ROMは100セント間隔の周波数データ1
6語を記憶しており、八EXP −ROM は100
セント内を27すなわち128分割して0.78セント
間隔に対応する15 x 128 = 1920点の差
分周波数データを記憶している。
6語を記憶しており、八EXP −ROM は100
セント内を27すなわち128分割して0.78セント
間隔に対応する15 x 128 = 1920点の差
分周波数データを記憶している。
第15図はEDP (806)のデータ処理手順を示す
処理流れ図であり、下記に示す演算処理を行なって旧周
波数データOFDから新局波数データNFDを算出し、
比較レジスタ部(805)に供給している。
処理流れ図であり、下記に示す演算処理を行なって旧周
波数データOFDから新局波数データNFDを算出し、
比較レジスタ部(805)に供給している。
■、CPD = CPD + CVD
■、 CPD = CPD + CGD■、CPD =
CPD + CBD ■、 PD = EXP(CPD) +△EXP (
CPD)■、NED = OFD + PD 次に第14図の動作について説明を行なう。FDP(8
06)はシーケンサ(802)から送られてくる処理命
令信号によって演算処理を行なっている。
CPD + CBD ■、 PD = EXP(CPD) +△EXP (
CPD)■、NED = OFD + PD 次に第14図の動作について説明を行なう。FDP(8
06)はシーケンサ(802)から送られてくる処理命
令信号によって演算処理を行なっている。
演算処理シーケンスの流れを第9表に示す。第9表に示
す命令ステップを順次実行することにより、第15図で
説明した処理が実現され新局波数データM巾を算出する
ことになる。
す命令ステップを順次実行することにより、第15図で
説明した処理が実現され新局波数データM巾を算出する
ことになる。
第9表に記載している記号の説明は次の通りである。
ALは、 FAババス供給されたデータを信号−2の立
下りエッヂでラッチするもの。
下りエッヂでラッチするもの。
B L ハ、 FBハスに供給されたデータを信号φ2
の立下りエッヂでラッチするもの。
の立下りエッヂでラッチするもの。
CRALは、ラッチALを信号φ2の11′でクリヤす
る命令。
る命令。
ADDlは、 FA (1409)のキャリー人カに′
″1′を加える命令。
″1′を加える命令。
TCAは、 FA (1409) テ演算処m t、
タ結果’!F FAハ:7゜に供給する命令。
タ結果’!F FAハ:7゜に供給する命令。
RDCPDは、CPD発生部(1401) テ発生すル
セントピツチデータCPDをFAババス供給する命令。
セントピツチデータCPDをFAババス供給する命令。
RDCBDは、ビートデータゲート(1402)のゲー
トを開いてFBババスビートデータCBDを供給する命
令。
トを開いてFBババスビートデータCBDを供給する命
令。
RDCVDは、ビブラート信号発生部(1408)で発
生するビブラートデータCVDをFBババス供給する命
令。
生するビブラートデータCVDをFBババス供給する命
令。
RDCGDは、グライド信号発生部(1404)で発生
するグライドデータcGDヲFBバスに供給する命令。
するグライドデータcGDヲFBバスに供給する命令。
RDEXPは、指数変換器(1405)内で変換したE
XP(CPD)をFAババス供給する命令。
XP(CPD)をFAババス供給する命令。
RDAEXPは、指数変換器(1405)内で変換した
gXP(CPD)をFBババス供給する命令。
gXP(CPD)をFBババス供給する命令。
RDFDは、比較レジスタ部(805)から旧周波数デ
ータOFDを読み出してFBババス供給する命令。
ータOFDを読み出してFBババス供給する命令。
RDVADは、ビブラート信号発生部(1403)内に
あるビブラートカウンタの内容をFBバ バス供給する命令。
あるビブラートカウンタの内容をFBバ バス供給する命令。
RDGADは、グライド信号発生部(1404)内にお
るグライドカウンタの内容をFBババス 供給する命令。
るグライドカウンタの内容をFBババス 供給する命令。
WRVADは、 FA (1409)で演算した結果を
ビブラート信号発生部(1403)内のビブラートカウ
ンタに信号φ2の立上りエッチで 書き込む命令。
ビブラート信号発生部(1403)内のビブラートカウ
ンタに信号φ2の立上りエッチで 書き込む命令。
WRGADは、 FA (1409)で演算した結果を
グライド信号発生部(1404)内のグライドカウンタ
に信号φ2の立上りエッチで書き 込む命令。
グライド信号発生部(1404)内のグライドカウンタ
に信号φ2の立上りエッチで書き 込む命令。
WREXPは、 FA (1409)で演算した結果を
指数変換部(1405)に信号≠2の立上りエッチで書
き込む命令。
指数変換部(1405)に信号≠2の立上りエッチで書
き込む命令。
WRFDは、 FA (1409)で演算した結果を比
較レジスタ部(805)に信号φ2の立上りエッチで書
き込む命令。
較レジスタ部(805)に信号φ2の立上りエッチで書
き込む命令。
なお、第9図に示したシーケンサ(802)内の11進
カウンタC902)で発生している11の状態は、第9
表に示した命令ステップ1〜11に対応している。
カウンタC902)で発生している11の状態は、第9
表に示した命令ステップ1〜11に対応している。
信号GAM (ジェネレータアサイナ動作モード信号)
による動作内容の説明 信号GAM = ’ 0 ’の場合、1鍵1チャネル動
作となる。この場合、ビートデータCHDは強制的(0
0)16の状態となる。すなわち、ビート効果を付加し
なも)。
による動作内容の説明 信号GAM = ’ 0 ’の場合、1鍵1チャネル動
作となる。この場合、ビートデータCHDは強制的(0
0)16の状態となる。すなわち、ビート効果を付加し
なも)。
信号GAM = ’ 1 ’の場合、1鍵2チャネルア
サイン動作となる。この場合、1チヤネルと5チヤネル
、2チヤネルと6チヤネル、3チヤネルと7チヤネル、
4チヤネルと8チヤネルを同一楽音データとする。そし
て、1チヤネル〜4チヤネルに使用するビートデータC
BDを強制的に(00)16とし、5チヤネル〜8チヤ
ネルに使用するビートデータCBDをCPU (608
)から供給されたビートデータを用いることにより、ビ
ート効果を発生することができる。
サイン動作となる。この場合、1チヤネルと5チヤネル
、2チヤネルと6チヤネル、3チヤネルと7チヤネル、
4チヤネルと8チヤネルを同一楽音データとする。そし
て、1チヤネル〜4チヤネルに使用するビートデータC
BDを強制的に(00)16とし、5チヤネル〜8チヤ
ネルに使用するビートデータCBDをCPU (608
)から供給されたビートデータを用いることにより、ビ
ート効果を発生することができる。
以上のように、複数の比較器を用い、比較データを演算
処理して求めるようにしているので、高速動作の分局器
を複数個〔チャネル数分)並列に設ける必要がなく1回
路規模が小さくできる。
処理して求めるようにしているので、高速動作の分局器
を複数個〔チャネル数分)並列に設ける必要がなく1回
路規模が小さくできる。
さらに、信号CAMを用いて:チャネル1〜4はビート
データCBD = (0,0)16とシ、チャネル5〜
8のビートデータCHDをCPU (60B)から供給
されたビートデータを用い、チャネルlとチャネル5・
、チャネル2とチャネル6、チャネル8とチャネル7、
チャネル4とチャネル8を同一楽音発生データとするこ
とにより複雑な周辺回路を付加することな(、ビート効
果を容易に実現できる。
データCBD = (0,0)16とシ、チャネル5〜
8のビートデータCHDをCPU (60B)から供給
されたビートデータを用い、チャネルlとチャネル5・
、チャネル2とチャネル6、チャネル8とチャネル7、
チャネル4とチャネル8を同一楽音発生データとするこ
とにより複雑な周辺回路を付加することな(、ビート効
果を容易に実現できる。
さらに、グライド信号発生部(1404)内のグライド
アドレスカウンタをチャネル分用意するだけでチャネル
独立のグライド効果を付加することができる。
アドレスカウンタをチャネル分用意するだけでチャネル
独立のグライド効果を付加することができる。
第16図は比較レジスタ部(805)の−具体例を示す
構成図である。図中%(1601) (1602) (
160B)は周波数データレジスタFDRI〜FDR3
で%88チヤネル用意している。(1604) (16
05) (1606)はゲートGTl〜GT3で、8チ
ヤネル分用意している。(1607) (1608)(
1609)は比較器、(1610) (1611)はデ
コーダ、 (1612)はアンドゲートである。
構成図である。図中%(1601) (1602) (
160B)は周波数データレジスタFDRI〜FDR3
で%88チヤネル用意している。(1604) (16
05) (1606)はゲートGTl〜GT3で、8チ
ヤネル分用意している。(1607) (1608)(
1609)は比較器、(1610) (1611)はデ
コーダ、 (1612)はアンドゲートである。
タイマー(804)の出力信号TMO〜TM9は比較器
(1607)〜(1609)に共通に供給されている。
(1607)〜(1609)に共通に供給されている。
そして。
FDP (806)で算出された新局波数データNED
はレジスタFDRl〜FDR8の入力にFCバスからそ
れぞれ供給され、信号WRFDと信号CLRF (計算
要求フラグ信号)がともに11#の場合、所定のレジス
タFDRに新局波数データNFDが書き込まれる。すな
わち1引算要求が発生している時だけデータを書き込む
こととなる。
はレジスタFDRl〜FDR8の入力にFCバスからそ
れぞれ供給され、信号WRFDと信号CLRF (計算
要求フラグ信号)がともに11#の場合、所定のレジス
タFDRに新局波数データNFDが書き込まれる。すな
わち1引算要求が発生している時だけデータを書き込む
こととなる。
また、 FDP C806)で日周波数データOFDが
必要になると、信号RDFDがデコーダ(1610)に
供給され、 GTl〜GTgの所定のゲートを開き、1
日周波数データリードをF13バスに供給する。
必要になると、信号RDFDがデコーダ(1610)に
供給され、 GTl〜GTgの所定のゲートを開き、1
日周波数データリードをF13バスに供給する。
第15図で説明した。データ処理手段における新しい周
波数データNFDがWRI〜WR8に従ってレジスタF
DRl〜FDR3のいずれかに書き込まれ、その後、
RDl〜RD3に従ってゲートGTl〜GT8営経て読
み出されるときは、新局波数データNFDが日周波数デ
ータOFDとして、FBババスこ供給されることになる
。
波数データNFDがWRI〜WR8に従ってレジスタF
DRl〜FDR3のいずれかに書き込まれ、その後、
RDl〜RD3に従ってゲートGTl〜GT8営経て読
み出されるときは、新局波数データNFDが日周波数デ
ータOFDとして、FBババスこ供給されることになる
。
一方、比較W (1607) 〜(1609)では、タ
イ’? −(804)からの信号TMQ −7M9とレ
ジスタFDR1〜FDR8に記憶されている周波数デー
タFDとの比較を行ない、一致が検出できたら、−汐信
号N’C1〜NC3として出力する。
イ’? −(804)からの信号TMQ −7M9とレ
ジスタFDR1〜FDR8に記憶されている周波数デー
タFDとの比較を行ない、一致が検出できたら、−汐信
号N’C1〜NC3として出力する。
第17図は計算要求フラグ発注部(810)の−具体例
を示す構成図である。図中、 (1701)〜(xn
o)はNAND )y’ −ト、 (1711)はデコ
ーダ、(1712) 〜(1719)はRSフリップフ
ロップ(R8FF ) 、 (1720)はセレクタ、
(1721)はD型フリップフロップ(DFF )であ
る。
を示す構成図である。図中、 (1701)〜(xn
o)はNAND )y’ −ト、 (1711)はデコ
ーダ、(1712) 〜(1719)はRSフリップフ
ロップ(R8FF ) 、 (1720)はセレクタ、
(1721)はD型フリップフロップ(DFF )であ
る。
比較レジスタ部(8呻)から供給される一致信号NCl
−NC8をNANDゲート(17(H) 〜(1708
)でそれぞれ主発振器(801)から供給されている信
号MCKとの論理演算を行ない、その結果をR5FF
(1712)〜(1719)の各人力丁に供給する。一
致信号が1′(比較器で一致を検出)となると、 R5
FFの入力Sに′″0#が供給されて出力Qは′″1′
となり、第12図で説明した劇算要求信号CRFが1′
となる。
−NC8をNANDゲート(17(H) 〜(1708
)でそれぞれ主発振器(801)から供給されている信
号MCKとの論理演算を行ない、その結果をR5FF
(1712)〜(1719)の各人力丁に供給する。一
致信号が1′(比較器で一致を検出)となると、 R5
FFの入力Sに′″0#が供給されて出力Qは′″1′
となり、第12図で説明した劇算要求信号CRFが1′
となる。
セレクタ(1720)で演算タイミングに対応する清号
CRFを選択し、 DFF (172I)の入力りに供
給する。
CRFを選択し、 DFF (172I)の入力りに供
給する。
そbで、 シーケンサ(802)から供給されている制
御データの中の信号WRCLFが1′となると、信号φ
2の立下りエッヂテDFF (1721) ニセL/
’7り(1720)で選択した計算要求信号CRFをラ
ッチさせ、計算要求フラグ信号CLRFとして出力され
る。計算要求が発生していればフラグ信号CLRFは!
117.そうでなければフラグ信号CLRFは%θ′と
なる。
御データの中の信号WRCLFが1′となると、信号φ
2の立下りエッヂテDFF (1721) ニセL/
’7り(1720)で選択した計算要求信号CRFをラ
ッチさせ、計算要求フラグ信号CLRFとして出力され
る。計算要求が発生していればフラグ信号CLRFは!
117.そうでなければフラグ信号CLRFは%θ′と
なる。
信号WRCLFの発生するタイミングは、命令ステップ
1で発生する。すなわち、演算処理の先頭で計算要求の
有無を判定することになる。
1で発生する。すなわち、演算処理の先頭で計算要求の
有無を判定することになる。
その後、命令ステッカlのタイミングになると、シーケ
ンサ(802)から供給される制御データの中の1つで
あるリセット(クリヤ)信号CRCLFが供給される。
ンサ(802)から供給される制御データの中の1つで
あるリセット(クリヤ)信号CRCLFが供給される。
そうすると、フラグ信号CLRFが1′の場合、NAN
Dゲート(1709)の出力信号は′o#となり、チャ
ネルコードCHCでデコーダ(1711)によって選択
されたR5FF (1712) 〜(1718)(7)
所定(7)入77Rに10′を供給し、 R8FFをリ
セット(出力。=’O’ )する。この動作は、第12
図で説明した計算要求信号CRFをリセットするタイミ
ング■に対応している。
Dゲート(1709)の出力信号は′o#となり、チャ
ネルコードCHCでデコーダ(1711)によって選択
されたR5FF (1712) 〜(1718)(7)
所定(7)入77Rに10′を供給し、 R8FFをリ
セット(出力。=’O’ )する。この動作は、第12
図で説明した計算要求信号CRFをリセットするタイミ
ング■に対応している。
データリード・プロセッサDRP (808) (7)
f14(IIな説明 まず、楽音合成データROM (606) (以後デー
タ・バンク(DBK)と称する)のデータフォーマット
について説明する。
f14(IIな説明 まず、楽音合成データROM (606) (以後デー
タ・バンク(DBK)と称する)のデータフォーマット
について説明する。
第18図はDBK (606)のデータ構成図である。
アドレス(0000)16から128語の領域に、以後
に続く合成データの先頭位置を示す先頭アドレスを、格
納している。合成データは制御データと波形データとで
構成されている。制御データは波形間のくり返し回数指
定データと最終波形フラグデータとで構成されている。
に続く合成データの先頭位置を示す先頭アドレスを、格
納している。合成データは制御データと波形データとで
構成されている。制御データは波形間のくり返し回数指
定データと最終波形フラグデータとで構成されている。
くり返し数回数指定データについて説明する。
Nm+n
本実施例では、(2)式に示した内挿係数]■−の算出
を簡略化する方法として以下のようにしている。
を簡略化する方法として以下のようにしている。
(υ (2)式ではNm+n項の増分値が1であった力
入内挿係数の分子の増分値をαとする。
入内挿係数の分子の増分値をαとする。
(2) 内挿係数Nm+nを(Nm+n)a−と置き
換える。
換える。
MN MNα
(3) λ4Nα項を216 と固定化する。
この結果、内挿係数は、 (Nm+n )α/2”とな
り、1/21’項は右シフト操作を行なうだけでよ<、
MN項を求める必要がな(なり、内挿係数の算出が容易
になる。第10表にくり返し指定データ、増分値α、波
形1周期のサンプル数と、くり返し回数の関係を示す。
り、1/21’項は右シフト操作を行なうだけでよ<、
MN項を求める必要がな(なり、内挿係数の算出が容易
になる。第10表にくり返し指定データ、増分値α、波
形1周期のサンプル数と、くり返し回数の関係を示す。
なお、くり返し数指定データがCF)1gであれば、最
終波形を示す最終波形フラグ(信号wEF )として用
いている。
終波形を示す最終波形フラグ(信号wEF )として用
いている。
DBK (606)の制御データ領域は波形枚数に関係
なく128語として固定化している。また、制御データ
1語は16ビツト構成であり1次のように、4ビツトづ
つの4グループにくり返し指定データを分けている。
なく128語として固定化している。また、制御データ
1語は16ビツト構成であり1次のように、4ビツトづ
つの4グループにくり返し指定データを分けている。
ビット位置O〜3・−・C,C#、D音ビット位置4〜
7・・・D#、E、F音ビット位置8〜11・・・F#
、G、G#:音ビット位置12〜15・−・A、A#、
B音このようにすることにより、音階によって制御デー
タを異なるように設定でき、1オクターブ内同−波形デ
ータを使用しても、楽音の立上り時間や、波形形状の変
化時間を一定にすることが可能となる。波形データは1
語16ビツト構成のPCMデータである。
7・・・D#、E、F音ビット位置8〜11・・・F#
、G、G#:音ビット位置12〜15・−・A、A#、
B音このようにすることにより、音階によって制御デー
タを異なるように設定でき、1オクターブ内同−波形デ
ータを使用しても、楽音の立上り時間や、波形形状の変
化時間を一定にすることが可能となる。波形データは1
語16ビツト構成のPCMデータである。
第19図はDRP、(80g)の−具体例を示す構成図
である。図中、(1901)は楽音合成データROM
(DBK)(606)から所定の合成データを読み出す
アドレスデータを格納するDBKアドレスレジスタ、(
1902)は楽音合成データROM (DBK) (6
06)から合成データをDRP (808)の内部に取
り込むDBK人カバカバッファ(1908)はDBK
C5oj)に格納している先頭アドレスを読み取るため
のアドレスデータを出力する参照先頭アドレスゲート、
(1904)はf(Xi、n)に相当する波形サンプ
ルに値を格納する波形データメモリI、(1905)は
f (X++t 、n)に相当する波形サンプル値を格
納する波形データメモリ■、(1906)は内挿係数の
分子に相当する(Nm+n)αを格納する係数データメ
モリ、(1907)は先頭アドレスレジスタ、 (19
08)は内挿係数の(Nm+n)α項の増分値αを生成
する増分生成部、(1909)は波形1周期内のサンプ
ルナンバnを格納する波形サンプルナンバメモリ、(1
910)は波形ナンバiを格納する波形ナンバメモリ、
(1911)はオフセットデータゲート、(1912)
は累積レジスタ(ACC)、(1918)はフルアダー
1ラツチ、やキャリフラグレジスタなどで構成している
演算部、 (1914)は演算部(1918)内のラッ
チ肚にデータを供給するDAババス(1915)は演算
部(1918) 内のラッチBLにデータを供給するD
Bハス、(1916)は演算部(19113)で行なう
演算結果を各レジスタに供給するDCバス、(1917
)はDBK入カバカバッファ902)の出力を波形デー
タメモリl (1904)などに供給するDBKバスで
ある。
である。図中、(1901)は楽音合成データROM
(DBK)(606)から所定の合成データを読み出す
アドレスデータを格納するDBKアドレスレジスタ、(
1902)は楽音合成データROM (DBK) (6
06)から合成データをDRP (808)の内部に取
り込むDBK人カバカバッファ(1908)はDBK
C5oj)に格納している先頭アドレスを読み取るため
のアドレスデータを出力する参照先頭アドレスゲート、
(1904)はf(Xi、n)に相当する波形サンプ
ルに値を格納する波形データメモリI、(1905)は
f (X++t 、n)に相当する波形サンプル値を格
納する波形データメモリ■、(1906)は内挿係数の
分子に相当する(Nm+n)αを格納する係数データメ
モリ、(1907)は先頭アドレスレジスタ、 (19
08)は内挿係数の(Nm+n)α項の増分値αを生成
する増分生成部、(1909)は波形1周期内のサンプ
ルナンバnを格納する波形サンプルナンバメモリ、(1
910)は波形ナンバiを格納する波形ナンバメモリ、
(1911)はオフセットデータゲート、(1912)
は累積レジスタ(ACC)、(1918)はフルアダー
1ラツチ、やキャリフラグレジスタなどで構成している
演算部、 (1914)は演算部(1918)内のラッ
チ肚にデータを供給するDAババス(1915)は演算
部(1918) 内のラッチBLにデータを供給するD
Bハス、(1916)は演算部(19113)で行なう
演算結果を各レジスタに供給するDCバス、(1917
)はDBK入カバカバッファ902)の出力を波形デー
タメモリl (1904)などに供給するDBKバスで
ある。
次に各部の構成について説明する。波形データメモリI
(1904) 、波形データメモリl (1905)
は。
(1904) 、波形データメモリl (1905)
は。
それぞれDBK (606)から読み取った波形データ
をシーケンサ(802)から供給されている制御データ
(7)中(7) (i ’F3 WRWDI 、 WR
WDIによって一時格納してお(レジスタR(WDI
) 、 R(WDI)と、8チャネル分の波形データを
記憶する16ビツト×8語のメモリb1ovDx)、
M (WDI) テtiEすitテイル。通常。
をシーケンサ(802)から供給されている制御データ
(7)中(7) (i ’F3 WRWDI 、 WR
WDIによって一時格納してお(レジスタR(WDI
) 、 R(WDI)と、8チャネル分の波形データを
記憶する16ビツト×8語のメモリb1ovDx)、
M (WDI) テtiEすitテイル。通常。
メモリは読み出し状態となっており、シーケンサ(80
2)から供給されているチャネルコードCHCに基づい
たチャネルの波形データWDI%WDIをWDP(80
7)に供給している。
2)から供給されているチャネルコードCHCに基づい
たチャネルの波形データWDI%WDIをWDP(80
7)に供給している。
ソシテ、シーケンス(802)からの制御データの中r
v信号WRRM口こよって、メモリは書き込み状態とな
り、レジスタR(WDI)%R(WDI)に格納してい
る波形データをチャネルコードCHCに基づいたメモリ
の所定のアドレスに書き込む。
v信号WRRM口こよって、メモリは書き込み状態とな
り、レジスタR(WDI)%R(WDI)に格納してい
る波形データをチャネルコードCHCに基づいたメモリ
の所定のアドレスに書き込む。
1係数データメモリ(1906)は、演算部(1918
)の演算結果をシーケンサ(802)から供給されてい
る制御データの中の信号WRMDによって一時格納して
おくレジスタR(MD)と、8チャネル分の係数テ゛−
タを記憶する16ビツト×8語のメモリM(MD)と、
i モリM (MD)の出方データを信号RDMDによ
ってDBババス供給するゲートで構成している。通常、
メモリは読み出し状態となっており、シーケンサ(80
2)から供給されているチャネルコードCHCニ基づい
たアドレスの係数データ(M (MD) )を、上述の
ゲートとWDP (807)に供給している。
)の演算結果をシーケンサ(802)から供給されてい
る制御データの中の信号WRMDによって一時格納して
おくレジスタR(MD)と、8チャネル分の係数テ゛−
タを記憶する16ビツト×8語のメモリM(MD)と、
i モリM (MD)の出方データを信号RDMDによ
ってDBババス供給するゲートで構成している。通常、
メモリは読み出し状態となっており、シーケンサ(80
2)から供給されているチャネルコードCHCニ基づい
たアドレスの係数データ(M (MD) )を、上述の
ゲートとWDP (807)に供給している。
そして、信号WRRAMによって、メモリは書き込み状
態となり、レジスタR(MD)に格納している新係数デ
ータをチャネルコードCHCに基づいたメモリの所定の
アドレスに書き込む。
態となり、レジスタR(MD)に格納している新係数デ
ータをチャネルコードCHCに基づいたメモリの所定の
アドレスに書き込む。
先頭7F1/スL/ジスタ(1907)は、DBK C
606) カら読み取った先頭番地をシーケンサ(80
2)からの制御データの中(以下同じ)の信号TDAに
よってDAババス供給するゲート1と、信号WRTAD
によって読み取った先頭番地を一時格納するレジスタR
(TAD )と、信号RDTADによってレジスタR(
TAD)に格納している先頭番地をDBババス供給する
ゲート2から構成している。
606) カら読み取った先頭番地をシーケンサ(80
2)からの制御データの中(以下同じ)の信号TDAに
よってDAババス供給するゲート1と、信号WRTAD
によって読み取った先頭番地を一時格納するレジスタR
(TAD )と、信号RDTADによってレジスタR(
TAD)に格納している先頭番地をDBババス供給する
ゲート2から構成している。
増分圧成部(1908)は、DBK (606)から読
み取った制御データを信号WRREPによって一時格納
するレジスタR(REP)と、入力レジスタ部(808
)から供給されているノートクロック指定データ■に基
づいてレジスタR(REP)に格納している制御データ
から所定のくり返し指定データを選択する選択器と、選
択器で選択したくり返し数指定データを第10表に示し
た増分値αに変換する変換器と、最終波形フラグを検出
して最終成形フラグWEF (11′〕を出力する検出
器と、信号RDREPによって変換器の出力データ(増
分値α)をDAババス供給するゲートとで構成している
。
み取った制御データを信号WRREPによって一時格納
するレジスタR(REP)と、入力レジスタ部(808
)から供給されているノートクロック指定データ■に基
づいてレジスタR(REP)に格納している制御データ
から所定のくり返し指定データを選択する選択器と、選
択器で選択したくり返し数指定データを第10表に示し
た増分値αに変換する変換器と、最終波形フラグを検出
して最終成形フラグWEF (11′〕を出力する検出
器と、信号RDREPによって変換器の出力データ(増
分値α)をDAババス供給するゲートとで構成している
。
波形サンプルナンバメモリ(1909)は、演算部(1
918)の演算結果(新波形サンプルナンバn)を信号
WRWSNによって一時格納しておくレジスタR(WS
N)と、8チャネル分の波形サンプルナンバnを記憶す
る16ビツト×8語のメモリM (WSN)と。
918)の演算結果(新波形サンプルナンバn)を信号
WRWSNによって一時格納しておくレジスタR(WS
N)と、8チャネル分の波形サンプルナンバnを記憶す
る16ビツト×8語のメモリM (WSN)と。
メモリM (WSN)の出力データを信号RDWSNに
よってDBババス供給するゲートとで構成している。通
電、メモリM (WSN)は読み出し状態となっており
、シーケンサ(802)から供給されているチャネルコ
ードCHCに基づいたチャネルの波形サンプルナンバn
を上述のゲートに供給している。
よってDBババス供給するゲートとで構成している。通
電、メモリM (WSN)は読み出し状態となっており
、シーケンサ(802)から供給されているチャネルコ
ードCHCに基づいたチャネルの波形サンプルナンバn
を上述のゲートに供給している。
そして、信号WRRAMによってメモリΔ[(WSN)
ji書き込み状態となり、レジスタR(WSN)に格
納している新波形サンプルナンバnをチャネルコードに
基づいたメモリの所定のアドレスに書き込む。
ji書き込み状態となり、レジスタR(WSN)に格
納している新波形サンプルナンバnをチャネルコードに
基づいたメモリの所定のアドレスに書き込む。
波形ナンバメモリ[1910)は、演詳:部(1918
)の演算結果(新波形ナンバi)を信号WRWNDによ
って1時格納しておくレジスタR(WND)と、8チャ
ネル分の波形ナンバiを記憶する16ビツト×8語の)
モ’J M (WND)と、メモリM (WND)
(7)出力データ(波形ナンバ)を入力レジスタ部(8
o3)から供給されている波形サンプル数指定データS
Dに基づいてシフト処理(iXサンプル数)を行ない、
波形ナンバアドレスWNAを出力するシフタ部と、信号
RDW’NDによってメモリの出方データをDB/マス
に供給するゲート1と、信号RDWNAによってシフタ
部の出力データをDBババス供給するゲート2と、波形
サンプル数指定データSDに対応するサンプル数データ
を発生するサンプル数発生器と、信号RDNWS によ
ってサンプル数発生器の出力データヲDBバスに供給す
るゲート8.ホ構成している。
)の演算結果(新波形ナンバi)を信号WRWNDによ
って1時格納しておくレジスタR(WND)と、8チャ
ネル分の波形ナンバiを記憶する16ビツト×8語の)
モ’J M (WND)と、メモリM (WND)
(7)出力データ(波形ナンバ)を入力レジスタ部(8
o3)から供給されている波形サンプル数指定データS
Dに基づいてシフト処理(iXサンプル数)を行ない、
波形ナンバアドレスWNAを出力するシフタ部と、信号
RDW’NDによってメモリの出方データをDB/マス
に供給するゲート1と、信号RDWNAによってシフタ
部の出力データをDBババス供給するゲート2と、波形
サンプル数指定データSDに対応するサンプル数データ
を発生するサンプル数発生器と、信号RDNWS によ
ってサンプル数発生器の出力データヲDBバスに供給す
るゲート8.ホ構成している。
通゛帛メモリM (WND)は読み出し状態となってお
す、シーケンサ(802)から供給されているチャネル
コードCHCに基づいたチャネルの波形ナンバiを上述
のゲート1とシフタ部に供給している。
す、シーケンサ(802)から供給されているチャネル
コードCHCに基づいたチャネルの波形ナンバiを上述
のゲート1とシフタ部に供給している。
そして、信号WRRAMによって、メモリM(■’ND
)は書き込み状態となり、レジスタR(WND) ニ格
納している新?& t+;ナンバ1をチャネルコードに
基づいたメモリの所定のアドレス(こ谷き込む。
)は書き込み状態となり、レジスタR(WND) ニ格
納している新?& t+;ナンバ1をチャネルコードに
基づいたメモリの所定のアドレス(こ谷き込む。
累積レジスタ(ACC) (1912)は、演算部(1
91B)の演算結果を信号WRACCによって一時7洛
納しておくレジスタR’(ACC)と、信号RDACC
にまってレジスタR(ACC)に格納しているデータを
DAババス供給するゲートとで構成している。
91B)の演算結果を信号WRACCによって一時7洛
納しておくレジスタR’(ACC)と、信号RDACC
にまってレジスタR(ACC)に格納しているデータを
DAババス供給するゲートとで構成している。
第28図は演算部(1918)の−具体例を示す構成図
である。(2801)は信号1l12の立下りエッヂで
DAババス内容を記憶するラッチ肚であり、信号DCR
ALでクリヤされる。(2802)は信号φ2の立下り
エッヂでDBババス内容を記憶するラッチBL 、
(280B)はキャリ入力(C1)とキャリ出力(CO
)とを有する16ビツト加算器(FA)、 (8204
)はFA (2808)のキャリ出力信号を信号WRM
Dによって格納するキャリフラグレジスタ、C2805
)は信号TCAによってFA (280B)の出力デー
タをDAババス供給するゲート、(2806)はFA(
2808)の出力データをDCバスに供給するゲート。
である。(2801)は信号1l12の立下りエッヂで
DAババス内容を記憶するラッチ肚であり、信号DCR
ALでクリヤされる。(2802)は信号φ2の立下り
エッヂでDBババス内容を記憶するラッチBL 、
(280B)はキャリ入力(C1)とキャリ出力(CO
)とを有する16ビツト加算器(FA)、 (8204
)はFA (2808)のキャリ出力信号を信号WRM
Dによって格納するキャリフラグレジスタ、C2805
)は信号TCAによってFA (280B)の出力デー
タをDAババス供給するゲート、(2806)はFA(
2808)の出力データをDCバスに供給するゲート。
(2807)はDCバスにデータ(0000)1gを供
給するデー) 、 (2808)は入力レジスタ部(8
08)から供給されているキーオ:ノ/オフ信号KDと
信号RDFLGとチャネルコードCHCとを入力とし、
チャネルごとに独立にキー信号がオフ状態からオン状態
に変化するタイミングを検出して検出信号を出力するオ
ン/オフ検出部、 (2809)〜(2818)はAN
Dゲート、(2a14)(2815) (2816)は
ORゲートである。
給するデー) 、 (2808)は入力レジスタ部(8
08)から供給されているキーオ:ノ/オフ信号KDと
信号RDFLGとチャネルコードCHCとを入力とし、
チャネルごとに独立にキー信号がオフ状態からオン状態
に変化するタイミングを検出して検出信号を出力するオ
ン/オフ検出部、 (2809)〜(2818)はAN
Dゲート、(2a14)(2815) (2816)は
ORゲートである。
増分生成部(1908)から供給されてい′る最終波形
フラグ伯夛WEFと信号RDNWSとがともに41′の
場合、ANDゲート(2809)の出力信号は1′とな
り、ラッチBL (2802)をリセットする。信号W
EFと信号WRMDがともに11′の場合、ANDゲー
トC2812)の出力信号は′″1′となり、 DCバ
スにはゲート(2307)からのデータ(0000)1
6が供給される。
フラグ伯夛WEFと信号RDNWSとがともに41′の
場合、ANDゲート(2809)の出力信号は1′とな
り、ラッチBL (2802)をリセットする。信号W
EFと信号WRMDがともに11′の場合、ANDゲー
トC2812)の出力信号は′″1′となり、 DCバ
スにはゲート(2307)からのデータ(0000)1
6が供給される。
オフセットデータゲート(1911)で発生するオフセ
ットデータはlO進数で256であり、制御データの格
納領域に相当する。
ットデータはlO進数で256であり、制御データの格
納領域に相当する。
DRP C80g)もFDP (806)と同様に、シ
ーケンサ(802)から供給される制御信号に基づいて
下達する@算処理を行なう。
ーケンサ(802)から供給される制御信号に基づいて
下達する@算処理を行なう。
■ DBKに格納しである先頭アドレスTADを読み取
る。
る。
入力レジスタ部(803)から供給されている楽音発生
データ(ND 、 SD )をシーケンサ(802)か
ら供給されている信号RDRTAによってDCバスに供
給する。そして、 DCバス上の信号ND 、 SDを
信号WRDBKによってDBKアドレスレジスタ(19
01)に格納し、 DBK (606)に供給する。D
BK (606)から読み出した先頭アドレスデータT
ADを信号WRTADによって先頭アドレスレジスタ(
1907)のレジスタR(TAD)に格納する。
データ(ND 、 SD )をシーケンサ(802)か
ら供給されている信号RDRTAによってDCバスに供
給する。そして、 DCバス上の信号ND 、 SDを
信号WRDBKによってDBKアドレスレジスタ(19
01)に格納し、 DBK (606)に供給する。D
BK (606)から読み出した先頭アドレスデータT
ADを信号WRTADによって先頭アドレスレジスタ(
1907)のレジスタR(TAD)に格納する。
■ くり返し数指定データの読み込み処理。
読み込んだ先頭アドレスデータTADと波形ナンバメモ
リ(191’O)に格納している波形ナンバiとの加算
処理(TAD+i)を演算部(1−918)で行ない、
加算結果をDBKアドレスレジスタ(1901)に格納
し、 DBK (606)からくり返し数指定データを
読み取り、増分生成部(1908)のレジスタR(RE
P)に格納する。
リ(191’O)に格納している波形ナンバiとの加算
処理(TAD+i)を演算部(1−918)で行ない、
加算結果をDBKアドレスレジスタ(1901)に格納
し、 DBK (606)からくり返し数指定データを
読み取り、増分生成部(1908)のレジスタR(RE
P)に格納する。
■ 波形サンプルf(Xi、n)の読み取り処理。
先頭アドレスレジスタ(190?)に格納した先頭アド
レスデータTADとオフセットデータ(256)1゜と
の加算処理(wADl = TAI赳256)を演算部
(1918)で行ない、加算結果をACC(1912)
のR(ACC)に格納する。ACC(1912)に格納
したアドレスデータWADIと波形サンプルナンバメモ
リ(1910)に格納している波形サンプルナンバnと
の加算処理(WADl = WADI + n )を演
算部(191,8)で行ない加算結果をACC(191
2)に格納する。そして、ACC(1912)に格納し
であるアドレスデータWAD、’と波形ナンバi C)
波形サンプル数指定データSDに基づいてシフト処理し
たデータ(iXサンプル数;i=0.l、2.・・・、
I−1)との加算処理(WAD1’ = WAD1′
+1 xサンプル数)を演算部(1918)で行ない、
加算結果をACC(1912)とDBKアドレスレジス
タ(1901)に格納し、DBK (606)からf(
Xi、n)に相当する波形サンプルデータを読み取り波
形メモリI (1904)内のレジスタR(WDI)に
格納する。
レスデータTADとオフセットデータ(256)1゜と
の加算処理(wADl = TAI赳256)を演算部
(1918)で行ない、加算結果をACC(1912)
のR(ACC)に格納する。ACC(1912)に格納
したアドレスデータWADIと波形サンプルナンバメモ
リ(1910)に格納している波形サンプルナンバnと
の加算処理(WADl = WADI + n )を演
算部(191,8)で行ない加算結果をACC(191
2)に格納する。そして、ACC(1912)に格納し
であるアドレスデータWAD、’と波形ナンバi C)
波形サンプル数指定データSDに基づいてシフト処理し
たデータ(iXサンプル数;i=0.l、2.・・・、
I−1)との加算処理(WAD1’ = WAD1′
+1 xサンプル数)を演算部(1918)で行ない、
加算結果をACC(1912)とDBKアドレスレジス
タ(1901)に格納し、DBK (606)からf(
Xi、n)に相当する波形サンプルデータを読み取り波
形メモリI (1904)内のレジスタR(WDI)に
格納する。
■ 波形サンプルf(X;+t、n)の読み取り処理。
ACC(1912)に格納したアドレスデータWADI
’と波形サンプル敬指定データSDで指定している波形
サンプル数NWS (波形ナンバメモリ(1910)内
で発生)との加算処理(WAD2 = ’WADI’
+ NwS )を演算部(191’l)で行ない加算結
果をDBKアドレスレジスタ(書01)に格納し、DB
K (606)からf(Xi+x、n)に相当する波形
サンプルデータを読み取り波形メモリl (1905)
内のレジスタR(WDI)に格納する。
’と波形サンプル敬指定データSDで指定している波形
サンプル数NWS (波形ナンバメモリ(1910)内
で発生)との加算処理(WAD2 = ’WADI’
+ NwS )を演算部(191’l)で行ない加算結
果をDBKアドレスレジスタ(書01)に格納し、DB
K (606)からf(Xi+x、n)に相当する波形
サンプルデータを読み取り波形メモリl (1905)
内のレジスタR(WDI)に格納する。
■ 波形サンプルナンバnの更新処理。
波形サンプルナンバnとシーケンサ(802)から供給
される信号DADD lとの加算処理(n = n+1
)を演算部(1918)で行ない、波形サンプルナンバ
メモリ(1909)内の波形ナンバレジスタR(WSN
)に格納する。
される信号DADD lとの加算処理(n = n+1
)を演算部(1918)で行ない、波形サンプルナンバ
メモリ(1909)内の波形ナンバレジスタR(WSN
)に格納する。
■ 内挿係数(Nm+n)αの更新処理。
係数データメモリ(1906)に格納している内挿係数
((Nm+ n )α〕と増分生成部(190B)で発
生している増分値σとの加舒処理を演算部(1918)
で行ない、加算結果を係数データメモリ(1906)内
にあ・る係数データレジスタR(MD)に格納すると共
に、加算結果がオーバフォローした場合演躊:部(19
18)内にあるキャリーフラグレジスタCFを′1′に
セットする。
((Nm+ n )α〕と増分生成部(190B)で発
生している増分値σとの加舒処理を演算部(1918)
で行ない、加算結果を係数データメモリ(1906)内
にあ・る係数データレジスタR(MD)に格納すると共
に、加算結果がオーバフォローした場合演躊:部(19
18)内にあるキャリーフラグレジスタCFを′1′に
セットする。
■ 波形ナンバiの更新処理。
波形ナンバメモリ(1910)に格納している波形ナン
バiと上述■で説明したキャリーフラグレジスタCFの
内容との加算処理(i=i+cF)を演算部(1918
)で行ない、波形ナンバメモリ(1910)円にあ−る
波形ナンバレジスタR(WND)に格納する。
バiと上述■で説明したキャリーフラグレジスタCFの
内容との加算処理(i=i+cF)を演算部(1918
)で行ない、波形ナンバメモリ(1910)円にあ−る
波形ナンバレジスタR(WND)に格納する。
■ レジスタR(WND)、R(WSD) 、 R(R
1)、R(WDI) 、 R(WDI)に格納した各種
データをチャネルコードCHCで指定されたそれぞれの
メモリ領域へのデータ転送処理。
1)、R(WDI) 、 R(WDI)に格納した各種
データをチャネルコードCHCで指定されたそれぞれの
メモリ領域へのデータ転送処理。
命令ステップ11のタイミングで、シーケンサ(802
)から供給される信号WRRAMに基づ0てデータ転送
処理が行なわれる。なお、計算要求フラグ信号CLRF
が′″0′の場合には転送処理を行なわないようにして
いる。なぜならば、新し0波形サンプルの算出を行なわ
ないためである。
)から供給される信号WRRAMに基づ0てデータ転送
処理が行なわれる。なお、計算要求フラグ信号CLRF
が′″0′の場合には転送処理を行なわないようにして
いる。なぜならば、新し0波形サンプルの算出を行なわ
ないためである。
第11表にDRP (808)の演算シーケンスを示す
。
。
第11表に示す命令ステップを順次実行すること−こよ
り、上述■〜■で説明した処理が実現される。
り、上述■〜■で説明した処理が実現される。
なお、第4表で説明したキーオン/オフ信号KDが′″
0′から51′に変化した最初の処理はイニシャル処理
として上述のような条件設定を行なう。
0′から51′に変化した最初の処理はイニシャル処理
として上述のような条件設定を行なう。
イニシャル処理を指示する信号(’1’)は、第23図
に示した演算部(191B)内のオン/オフ検出部(2
808)で発生する。
に示した演算部(191B)内のオン/オフ検出部(2
808)で発生する。
■ 波形サンプルナンバn=(0)□。設定。
第11表に示した命令ステップ7のタイミングで信号W
RWSNが演算部(19111)に供給される。そうす
ると、 ANDゲート(2810)の出力信号は!1′
となり、ゲート(2806) (2807)の制御入力
に′1′が供給される。この結果、 DCバスには(0
000)16が供給され、波形サンプルナンバメモリ(
1909) 内のレジスタR(WSN)に(0000)
16を格納t−ル。
RWSNが演算部(19111)に供給される。そうす
ると、 ANDゲート(2810)の出力信号は!1′
となり、ゲート(2806) (2807)の制御入力
に′1′が供給される。この結果、 DCバスには(0
000)16が供給され、波形サンプルナンバメモリ(
1909) 内のレジスタR(WSN)に(0000)
16を格納t−ル。
■ 波形ナンバ1=(0)10設定。
第11表に示した命令ステップ1oのタイミングで。
信号WRWNDが演算部(1918)に供給される。そ
うすると、 ANDゲート(2811)の出方信号は′
1′となり、ゲート(2806) (2807)の制御
入力に1′が供給される。この結果、 DCバスには(
0000)16が供給され、波形ナンバメモリ(191
0)内のレジスタR(WND)に(0000)1gを格
納する。
うすると、 ANDゲート(2811)の出方信号は′
1′となり、ゲート(2806) (2807)の制御
入力に1′が供給される。この結果、 DCバスには(
0000)16が供給され、波形ナンバメモリ(191
0)内のレジスタR(WND)に(0000)1gを格
納する。
上述の■、■の処理によって、キーオン/オフ信号肋が
オフからオンに変化するたびに、波形ナンバiと波形サ
ンプルナンバnとが初期設定される。
オフからオンに変化するたびに、波形ナンバiと波形サ
ンプルナンバnとが初期設定される。
また、 DBK (606)から読み込んだくり返し指
定データがCF )1aすなわち、最終波形フラグWE
Fならば、上述のような条件設定を行なう。
定データがCF )1aすなわち、最終波形フラグWE
Fならば、上述のような条件設定を行なう。
■ 内挿係数の分子項(Nm+n)α=(0)’to設
定。
定。
第11表に示した命令ステップ9のタイミングで信号W
RMDが演算部(191g)内のANDゲート(281
2)に供給される。そうすると、NΦゲゲー(2112
>の出力信号は1′となり、ゲート(2806) (2
ao7)の制御入力に′1′供給される。この結果、
DCバスにハcoooo)16が供給され、係数レジス
タメモリ(1906)内のレジスタR(MD)に(OO
OOhsを格納する。
RMDが演算部(191g)内のANDゲート(281
2)に供給される。そうすると、NΦゲゲー(2112
>の出力信号は1′となり、ゲート(2806) (2
ao7)の制御入力に′1′供給される。この結果、
DCバスにハcoooo)16が供給され、係数レジス
タメモリ(1906)内のレジスタR(MD)に(OO
OOhsを格納する。
■ 波形サンプル数NWS = (0)to 設定。
第11表に示した命令ステップ7のタイミングで信号R
DNWSが演算部(1918)内(D ANDゲーデー
(2809)に供給される。そうすると、 ANDゲー
ト(2809)の出力信号は′1#となり、ラッチBL
(2802)の格納状態をクリヤ(0000)1!す
る。この結果、波形サンプルf(X++x、。)を読み
込むためのDBK (606)のアドレスデータは波形
サンプルf(Xi、n) f読み込んだアドレスデータ
と等しくなる。
DNWSが演算部(1918)内(D ANDゲーデー
(2809)に供給される。そうすると、 ANDゲー
ト(2809)の出力信号は′1#となり、ラッチBL
(2802)の格納状態をクリヤ(0000)1!す
る。この結果、波形サンプルf(X++x、。)を読み
込むためのDBK (606)のアドレスデータは波形
サンプルf(Xi、n) f読み込んだアドレスデータ
と等しくなる。
上述■、■の設定によって、最終波形データとなると、
実質的に波形内挿処理を行なわず、最終波形データをく
り返し使用することになる。
実質的に波形内挿処理を行なわず、最終波形データをく
り返し使用することになる。
第11表に示した信号についての説明
上述する信号はシーケンサ(802)から供給される。
RDO5Dは、オフセットデータ(256)をDAババ
ス供給する。
ス供給する。
RDACCは、 ACC(1912)内のレジスタR(
ACC)に格納しているデータをDAババス供給 する命令。
ACC)に格納しているデータをDAババス供給 する命令。
RDREPは、増分生成部(1908)内で生成された
増分値αをDAババス供給する命令。
増分値αをDAババス供給する命令。
RDWSNは、波形サンプルナンバメモリ(1909)
Wのメモリl、i (WSN)から読み出されてイル
波形サンプルナンバnをDBババ ス供給する命令。
Wのメモリl、i (WSN)から読み出されてイル
波形サンプルナンバnをDBババ ス供給する命令。
RDWNDは、波形ナンバメモリ(1910)内のメモ
リM (WND)から読み出されている波形ナンバi?
!DBバスに供給する命令。
リM (WND)から読み出されている波形ナンバi?
!DBバスに供給する命令。
RDWNAは、波形ナンバメモリ(1910)内にある
シフタ部で発生している波形ナンバア ドレス(WNA) 7zDBバスに供給する命令。
シフタ部で発生している波形ナンバア ドレス(WNA) 7zDBバスに供給する命令。
・RDTADは、先頭アドレスレジスタ(1907)内
のレジスタR(TAD)に格納している先頭番地をDB
ババス供給する命令。
のレジスタR(TAD)に格納している先頭番地をDB
ババス供給する命令。
RDNWSは、波形ナンバメモリ(1910)内のサン
プル数発生器で発生しているサンプル 数をDBババス供給する命令。
プル数発生器で発生しているサンプル 数をDBババス供給する命令。
RDMDは、係数データメモリ(1906)内のメモリ
M(MD)から読み出されている係数データをDBバ哀
に供給する命令0 RDRTAは、入力レジスタ部(808)から供給され
ている楽音発生データ(ND 、 SD )をDCバス
に供給する命令。
M(MD)から読み出されている係数データをDBバ哀
に供給する命令0 RDRTAは、入力レジスタ部(808)から供給され
ている楽音発生データ(ND 、 SD )をDCバス
に供給する命令。
WRDBKは、 DCバス上のデータをDBKアドレス
レジスタ(1901)円のレジスタR(DBK)に格納
する命令。
レジスタ(1901)円のレジスタR(DBK)に格納
する命令。
WRACCは、 DCバス上のデータをACC(191
2)内のレジスタR(ACC)に格納する命令。
2)内のレジスタR(ACC)に格納する命令。
WRWSNは、 DCバス上のデータを波形サンプルナ
ンバメモリ(1909) 内のし′ジスタR(WSN)
に格納する命令。
ンバメモリ(1909) 内のし′ジスタR(WSN)
に格納する命令。
WRMDは、 DCバス上のデータを係数データメモリ
(1906)内のレジスタR(MD)に格納する命令。
(1906)内のレジスタR(MD)に格納する命令。
WRWNDは、 DCバス上のデータを波形ナン)<メ
モ’J (1910)内ルジスタRCWND) ニ格納
する命令。
モ’J (1910)内ルジスタRCWND) ニ格納
する命令。
TDAは、先頭アドレスレジスタ(1907)にDBK
から読み込んだ先頭番地をDAババス 供給する命令。
から読み込んだ先頭番地をDAババス 供給する命令。
TCAは、 DCバス上のデータをDAババス供給する
命令・ DCRALは、演算部(1918)内のラッチAL (
2801) l:クリヤする命令。
命令・ DCRALは、演算部(1918)内のラッチAL (
2801) l:クリヤする命令。
DADD lは、演算部(1918)内のFA (28
01)にキャリ入力信号(+1)を供給する命令。
01)にキャリ入力信号(+1)を供給する命令。
RDFLGは、演算部(1913)内のオン/オフ検出
部(2808)に新キーオン/オフ信号KDを取り込む
命令。
部(2808)に新キーオン/オフ信号KDを取り込む
命令。
WRRAMは、波形データメモリl C1904)内の
レジスタR(WDI) 、波形データメモリy(190
5)内のレジスタR(WDl[) 、係数データメモリ
(1906)内のレジスタR(MD)、波形サンプルナ
ンバメモリ (1909)円の1/ジスタR(WSN) 、波形ナン
バメモリ(1910)内のレジスタR(WND)に格納
しているデータを、それぞれのメモリM (WDI )
、 M (WDI)、M (MD’)、M (WSN
) 、 M (WNI)) ニ書き込む命令。
レジスタR(WDI) 、波形データメモリy(190
5)内のレジスタR(WDl[) 、係数データメモリ
(1906)内のレジスタR(MD)、波形サンプルナ
ンバメモリ (1909)円の1/ジスタR(WSN) 、波形ナン
バメモリ(1910)内のレジスタR(WND)に格納
しているデータを、それぞれのメモリM (WDI )
、 M (WDI)、M (MD’)、M (WSN
) 、 M (WNI)) ニ書き込む命令。
以上のように、データメモリ(DBK)に合成データ(
波形データ、制御データ)の先頭番地を格納することに
より、回路構成を複雑化するこトナく、データメモリ内
のデータ内容操作だけで異なる波形データの選択ができ
、異なる楽音を容易に発生することができる。
波形データ、制御データ)の先頭番地を格納することに
より、回路構成を複雑化するこトナく、データメモリ内
のデータ内容操作だけで異なる波形データの選択ができ
、異なる楽音を容易に発生することができる。
さらに、複数組の制御データ(くり返し数指定データ)
を用意し、合成する場合には、所定の制御データを選択
して使用するようにしているため。
を用意し、合成する場合には、所定の制御データを選択
して使用するようにしているため。
音階によって制卸データを異なるように設定することが
でき、1オクターブ内向−波形データを使用しても、楽
音の立上り時間や、波形形状の変化時間金一定にするこ
とができる。
でき、1オクターブ内向−波形データを使用しても、楽
音の立上り時間や、波形形状の変化時間金一定にするこ
とができる。
さらに、同一データベース上に波形データ、制御データ
と先頭番地とを格納し、時分割的に各種データを読み取
るようにしているので、データメモリ(DBIC)の回
路構成が簡略化できるとともに。
と先頭番地とを格納し、時分割的に各種データを読み取
るようにしているので、データメモリ(DBIC)の回
路構成が簡略化できるとともに。
データメモリとDRP (808)とのインターフェー
ス処理が簡略化できる。
ス処理が簡略化できる。
波形データプロセラ−!JWr)P (807)の詳ゝ
細な説明第20図はVrT)P (807)の演算処理
の流れ図である。
細な説明第20図はVrT)P (807)の演算処理
の流れ図である。
WDP (807)の演算処理として、4狸類の演算が
ある。
ある。
■波形内挿演算を行なって仮想波形サンプル値f(慣、
m、n) を求める。
m、n) を求める。
■仮想波形サンプル値f (Xi、工、n) とエン
ベロープデータEDとの乗算を行ない・1ン60−プ付
加波形サンプル値f (Xi、m、n、q、r)を求め
る。
ベロープデータEDとの乗算を行ない・1ン60−プ付
加波形サンプル値f (Xi、m、n、q、r)を求め
る。
■前回求めたエンベロープ付加波形サンプル値旧f (
Xi、m、n、q、r ) と今回求めたエンベロー
プ付加波形サンプル値新f (Xi、m、。+q、r)
との差分演算を行なって差分波形サンプル値Df(Xi
、m、n、q、r)を求める。
Xi、m、n、q、r ) と今回求めたエンベロー
プ付加波形サンプル値新f (Xi、m、。+q、r)
との差分演算を行なって差分波形サンプル値Df(Xi
、m、n、q、r)を求める。
■エンベロープデータEDの更新を行なう。
次に、エンベロープデータEDとエンベロープ付加方法
について説明する。
について説明する。
エンベロープデータEDは20ビツトで構成されている
。上位4ビツトをEDU (Ca下位16ビツトをED
L(2)とする。
。上位4ビツトをEDU (Ca下位16ビツトをED
L(2)とする。
エンベロープデータEDの更新方法は、新ED =旧E
D+△EDと云う演算処理を行なって求める。増分エン
ベロープデータAEDは%CPU (608)がら入力
レジスタ部(808)に供給されたサスティンデータD
SUS 3るいは、ダンパーデータDDMPを使用する
。サスティンデータ、ダンパーデータの選択は、オルガ
ン型エンベロープ、ピアノ型エンベロープおよびキーオ
ン/オフ信号に基づいて使い分けを行なう。
D+△EDと云う演算処理を行なって求める。増分エン
ベロープデータAEDは%CPU (608)がら入力
レジスタ部(808)に供給されたサスティンデータD
SUS 3るいは、ダンパーデータDDMPを使用する
。サスティンデータ、ダンパーデータの選択は、オルガ
ン型エンベロープ、ピアノ型エンベロープおよびキーオ
ン/オフ信号に基づいて使い分けを行なう。
エンヘローブ付加波形サンプル値を求める演算式を下式
に示す。
に示す。
f(Xlmn)・・・・−・・・・・・・(5)q=o
、1,2.・・・、 Q−1(Q = 24 )r =
0 、1.2、−=、 R−1(R=216)エンベロ
ープデータEDを単調増加すなわち、新ED =旧ED
+△ED(−疋)とし、(5)式を実行することにより
、指数特性の減衰(立下り)エンベロープが付加できる
。また、単調減少、すなわち新EDH日ED−△ED
(’ 定)とすることにより、指数特性の立上り(アタ
ック)エンベロープを付加スることができる。このよう
な処理を行なうことで、指数特性のエンベロープを発生
せずに、演算だけで求められ、エンベロープデータED
の生成が簡単な構成で実現できる。
、1,2.・・・、 Q−1(Q = 24 )r =
0 、1.2、−=、 R−1(R=216)エンベロ
ープデータEDを単調増加すなわち、新ED =旧ED
+△ED(−疋)とし、(5)式を実行することにより
、指数特性の減衰(立下り)エンベロープが付加できる
。また、単調減少、すなわち新EDH日ED−△ED
(’ 定)とすることにより、指数特性の立上り(アタ
ック)エンベロープを付加スることができる。このよう
な処理を行なうことで、指数特性のエンベロープを発生
せずに、演算だけで求められ、エンベロープデータED
の生成が簡単な構成で実現できる。
第21図はWDP (807)の−具体例を示す構成図
である。図中(2101)は波形データゲートI 、
(2102)は波形データゲートl 、 (2108)
はエンベロープデータEDの増分値を発生するエンベロ
ープ増分発生部(△ED発生部)、(2104)は同波
形サンプル値f (Xi、+n、n、q、r) を記
憶している用波形デ=′タメモリ部、(2105)はエ
ンベロープデータEDt記憶しておくエンベロープデー
タメモリ1(EDメモリ部)(2106)は乗算部、(
2107)は(5)式に示した1/2qあルイハl/2
q+1の演算を行なうシフタNS 、 (2108)
はフルアダー、ラッチやキャリーフラグレジスタなどで
構成している演算部、(2109)は差分波形サンプル
値Df (Xt、m−、n、q、r )を格納するアウ
トプットバッファレジスタ(OBR) 、 (211
0)はアナログバッファメモリ部(812)内のアナロ
グスイッチ(1108)〜(1107) (コンデン
サCI −Csに電荷を蓄えるためのスイッチ)(第1
1図)のオン/オフを制御する書き込みパルス発生部、
(2111)は演算部(2108)内のラッチ肚にデ
ータを供給するWAババス(2112)は演算部(21
08)内のラッチBLにデータを供給スるWBババス
(2118)は演算部(2108)で行なった演算処理
結果を各レジスタに供給するWCバスである。
である。図中(2101)は波形データゲートI 、
(2102)は波形データゲートl 、 (2108)
はエンベロープデータEDの増分値を発生するエンベロ
ープ増分発生部(△ED発生部)、(2104)は同波
形サンプル値f (Xi、+n、n、q、r) を記
憶している用波形デ=′タメモリ部、(2105)はエ
ンベロープデータEDt記憶しておくエンベロープデー
タメモリ1(EDメモリ部)(2106)は乗算部、(
2107)は(5)式に示した1/2qあルイハl/2
q+1の演算を行なうシフタNS 、 (2108)
はフルアダー、ラッチやキャリーフラグレジスタなどで
構成している演算部、(2109)は差分波形サンプル
値Df (Xt、m−、n、q、r )を格納するアウ
トプットバッファレジスタ(OBR) 、 (211
0)はアナログバッファメモリ部(812)内のアナロ
グスイッチ(1108)〜(1107) (コンデン
サCI −Csに電荷を蓄えるためのスイッチ)(第1
1図)のオン/オフを制御する書き込みパルス発生部、
(2111)は演算部(2108)内のラッチ肚にデ
ータを供給するWAババス(2112)は演算部(21
08)内のラッチBLにデータを供給スるWBババス
(2118)は演算部(2108)で行なった演算処理
結果を各レジスタに供給するWCバスである。
次に各部の構成内容について説明する。△ED発生部(
2108)は増分データ△EDとしてサスティンデータ
DSUSとダンパーデータDDΔ(Pのどちらか一万を
選択する選択器と入力レジスタ部(808)から供給さ
れているキーオン/オフ信号KD、オルガン型/ピアノ
型指定信号OPSとダンパーオン/オフ信号DMPから
選択信号を生成する制御器と、信号KD、信号ops
、信号DMPとDRP (80g)内の増分生成部(1
908)から供給されている最終波形フラグ信号WEF
から仮想キーオン/オフ信号を生成し仮想キー信号EA
DGを出力する仮想キー信号発生器とから構成している
。第12辰に増分データ△EDの選択内容と仮想キー信
号EADG の発生状態を示す。
2108)は増分データ△EDとしてサスティンデータ
DSUSとダンパーデータDDΔ(Pのどちらか一万を
選択する選択器と入力レジスタ部(808)から供給さ
れているキーオン/オフ信号KD、オルガン型/ピアノ
型指定信号OPSとダンパーオン/オフ信号DMPから
選択信号を生成する制御器と、信号KD、信号ops
、信号DMPとDRP (80g)内の増分生成部(1
908)から供給されている最終波形フラグ信号WEF
から仮想キーオン/オフ信号を生成し仮想キー信号EA
DGを出力する仮想キー信号発生器とから構成している
。第12辰に増分データ△EDの選択内容と仮想キー信
号EADG の発生状態を示す。
第7表に示した信号OPSが0′、すなわちオルガン型
指定の場合、仮想キー信号EADGは、キーオン/オフ
信号KDのオン(′1つ、オフ(’ 0 ’)状態と等
しくなる。
指定の場合、仮想キー信号EADGは、キーオン/オフ
信号KDのオン(′1つ、オフ(’ 0 ’)状態と等
しくなる。
信号OPSが′″1′、すなわちピアノ型指定の場合、
仮想キー信号EADGは上述の状態となる。
仮想キー信号EADGは上述の状態となる。
■信号WEFがゞ゛0′の場合
(a)信号DMP (第7表に示したダンパオン/オフ
信号)が′θ′の場合、仮想キー信号EADGは1オン
′状態となる。
信号)が′θ′の場合、仮想キー信号EADGは1オン
′状態となる。
(b)信号DMPが11′の場合、仮想キー信号EAD
Gは、キーオン/オフ信号KDのオン、オフ状態と等し
くなる。
Gは、キーオン/オフ信号KDのオン、オフ状態と等し
くなる。
■信号wEF−hS′1′ノ場合
信号DMP、キーオン/オフ信号Ωの状態に関係なく、
仮想キー信号EADGはオフ状態となる。
仮想キー信号EADGはオフ状態となる。
仮想キー信号EADGの働きの説明
信号WEFが11′となり最終波形データをくり返し用
いて、持続音の楽音を発生する場合、オルガン型指定で
あれば、オルガン型の楽音特性と等しくなり問題は発生
しない。
いて、持続音の楽音を発生する場合、オルガン型指定で
あれば、オルガン型の楽音特性と等しくなり問題は発生
しない。
ピアノ型指定となると、楽音特性は減衰特性とする必要
がアリ、信号WEF=’l’となり、最終11N−形デ
ータをくり返し用いて持続音を発生しても、仮想キー信
号EADGをオフ状態として、W4衰エンベロープ特性
を付加して強制的に楽音特性を減衰特性とする。
がアリ、信号WEF=’l’となり、最終11N−形デ
ータをくり返し用いて持続音を発生しても、仮想キー信
号EADGをオフ状態として、W4衰エンベロープ特性
を付加して強制的に楽音特性を減衰特性とする。
用波形データメモリ部(2104)は、演算部(210
8)の演算結果をシーケンサ(802)から供給されて
いる信号WROWDによって一時格納しておくレジスタ
R(OWD)と、8チャネル分のエンベロープ付加波形
サンプル値f (Xi、m、n、q、r )を記憶する
16.ビット×8語cv メモIJ M (OWD)と
、メモI) M (OWD) (7)出力データを信号
RDotVDによってWBババス供給するゲートとで構
成している。通常メモリM (OWD)は読み出し状態
となっており、シーケンサ(802)から供給されてい
るチャネルコードCHCに基づいたアドレスのエンベロ
ープ付加波形サンプ、ル値を上述のゲートに供給してい
る。そして、信号WRRAM によってメモリM (O
WD)は書き込み状態となり、レジスタR(OWD)に
格納しているデータがメモリM (OWD)に書き込ま
れる。
8)の演算結果をシーケンサ(802)から供給されて
いる信号WROWDによって一時格納しておくレジスタ
R(OWD)と、8チャネル分のエンベロープ付加波形
サンプル値f (Xi、m、n、q、r )を記憶する
16.ビット×8語cv メモIJ M (OWD)と
、メモI) M (OWD) (7)出力データを信号
RDotVDによってWBババス供給するゲートとで構
成している。通常メモリM (OWD)は読み出し状態
となっており、シーケンサ(802)から供給されてい
るチャネルコードCHCに基づいたアドレスのエンベロ
ープ付加波形サンプ、ル値を上述のゲートに供給してい
る。そして、信号WRRAM によってメモリM (O
WD)は書き込み状態となり、レジスタR(OWD)に
格納しているデータがメモリM (OWD)に書き込ま
れる。
EDメモリ部(2104)は、演算部(2108)の演
算結果を信号WREDL 、 WREDU )こよって
それぞれ一時格納するセジスタR(EDL) 、 R(
EDU)と、8チャネル分のエンベロープデータEDを
記憶するメモリM第12表 (EDL) 、 M (EDU)と、メモリM(EDL
)の出力データを信号RDEDLによってWBババス供
給するゲートLと、メモリM (EDU)の出力データ
を信号RDEDUによってWBババス供給するゲートU
とで構成している。メモリM (EDL)は16ビツト
×8語、メモリM (EDU) ハ4 ヒツト×8語で
ある。通常メモリM(EDL) 、 M (EDU)は
読み出し状態となっており。
算結果を信号WREDL 、 WREDU )こよって
それぞれ一時格納するセジスタR(EDL) 、 R(
EDU)と、8チャネル分のエンベロープデータEDを
記憶するメモリM第12表 (EDL) 、 M (EDU)と、メモリM(EDL
)の出力データを信号RDEDLによってWBババス供
給するゲートLと、メモリM (EDU)の出力データ
を信号RDEDUによってWBババス供給するゲートU
とで構成している。メモリM (EDL)は16ビツト
×8語、メモリM (EDU) ハ4 ヒツト×8語で
ある。通常メモリM(EDL) 、 M (EDU)は
読み出し状態となっており。
チャネルコードCHCに基づいたアドレスのエンベロー
プデータEDが読み出され、上述のゲートし、ゲートU
にそれぞれ供給される。また、信号EDUは乗i i
(2106) ニ、信号EDLはシフタ部(210?)
に供給されている。
プデータEDが読み出され、上述のゲートし、ゲートU
にそれぞれ供給される。また、信号EDUは乗i i
(2106) ニ、信号EDLはシフタ部(210?)
に供給されている。
そして、信号WRRAMによってメモリM (EDL)
。
。
M (EDU)は書き込み状態となり、レジスタR(E
DL)、R(EDU)に格納しているデータがメモリM
(EDL)、M (EDU)に書き込まれる。
DL)、R(EDU)に格納しているデータがメモリM
(EDL)、M (EDU)に書き込まれる。
乗算部(2106)は、波形データを信号WRMLPに
よって一時格納するレジスタR(MLPl)と、信号5
ELWE −’″0′の時DRP C808)から供給
されている係数データMLPを一時格納し、信号5EL
WE =月′(7)REDメモリ部(2105)から供
給されているエンベロープデータEDLを一時格納する
レジスタR(MLP2)ト、レジスタR(MLPl)に
格納しているデータを被乗数(2の補数表現)とじ9レ
ジスタR(MLP2)に格納しているデータを乗数(絶
対値表現)とする16ビツトX16ビツト=32ビツト
の乗算器と、信号RDMLPによって乗算器の乗算結果
上位16ビツトをWBババス供給するゲートとで構成し
ている。
よって一時格納するレジスタR(MLPl)と、信号5
ELWE −’″0′の時DRP C808)から供給
されている係数データMLPを一時格納し、信号5EL
WE =月′(7)REDメモリ部(2105)から供
給されているエンベロープデータEDLを一時格納する
レジスタR(MLP2)ト、レジスタR(MLPl)に
格納しているデータを被乗数(2の補数表現)とじ9レ
ジスタR(MLP2)に格納しているデータを乗数(絶
対値表現)とする16ビツトX16ビツト=32ビツト
の乗算器と、信号RDMLPによって乗算器の乗算結果
上位16ビツトをWBババス供給するゲートとで構成し
ている。
シフタ部(2107)は、演算部(2108)の演算結
果を信号WR5FTによって一時格納するレジスタR(
SFT)と、レジスタR(SFT)に格納したデータを
EDメモリ部(21015)から供給されているエンベ
ロープデータEDUに基づいてシフト操作 R(SFT) (7; q= Ol 1 、2 、 ・、 2’ −、
,1)するシフタと、シフタの出力データを信号WRS
FAによって一時格納するレジスタR(SFA)と、信
号RDSFAによってレジスタRcsFA)に格納した
データをWAババス供給するゲートAと、信号RDSF
Bによってシフタのデータを直接WBババス供給するゲ
ートBとで構成している。
果を信号WR5FTによって一時格納するレジスタR(
SFT)と、レジスタR(SFT)に格納したデータを
EDメモリ部(21015)から供給されているエンベ
ロープデータEDUに基づいてシフト操作 R(SFT) (7; q= Ol 1 、2 、 ・、 2’ −、
,1)するシフタと、シフタの出力データを信号WRS
FAによって一時格納するレジスタR(SFA)と、信
号RDSFAによってレジスタRcsFA)に格納した
データをWAババス供給するゲートAと、信号RDSF
Bによってシフタのデータを直接WBババス供給するゲ
ートBとで構成している。
第24図は演算部(210g)の−具体例を示す構成図
である。(2401)はWAババス上データを信号IN
Vによって反転する反転ゲート、(2402)は反転ゲ
ート(2401)の出力データを信号φ2の立下りニッ
プで一時格納するラッチALで、信号WCRALによっ
て格納状YΣ9が(0000)16になる。すなわちリ
セットされる。
である。(2401)はWAババス上データを信号IN
Vによって反転する反転ゲート、(2402)は反転ゲ
ート(2401)の出力データを信号φ2の立下りニッ
プで一時格納するラッチALで、信号WCRALによっ
て格納状YΣ9が(0000)16になる。すなわちリ
セットされる。
(2403)はWBババス上データを信号φ2の立下り
エッヂで一時格納するラッチBL 、 (2404)は
キャリ入力、キャリ出力を有する16ビツト加算器(F
A ) 、 (2405)はFA (2404)のキャ
リ出力を信号WREDLによって記憶し、 (;M @
RDEDLによってリセットするキャリフラグレジス
タECF 、 (2406)はANDゲート、(240
7)はORゲート、(2408)は信号WTCAによっ
てFA(2404)の出力データをWAババス供給する
デー) A 、 (2409)はWCバスにデータ(F
FFFhsを供給するゲートB。
エッヂで一時格納するラッチBL 、 (2404)は
キャリ入力、キャリ出力を有する16ビツト加算器(F
A ) 、 (2405)はFA (2404)のキャ
リ出力を信号WREDLによって記憶し、 (;M @
RDEDLによってリセットするキャリフラグレジス
タECF 、 (2406)はANDゲート、(240
7)はORゲート、(2408)は信号WTCAによっ
てFA(2404)の出力データをWAババス供給する
デー) A 、 (2409)はWCバスにデータ(F
FFFhsを供給するゲートB。
(2410) LiWCバスにWBババス上データを供
給するゲートC1(2411)はFA (2404)の
出力データをWCバスに供給するデー) D 、 (2
412)はデータ(0000)tsをweババス供給す
るゲートE、(2418)は信号TBC1信号WRED
U 、信号WREDL 、信号EADGおよびFA(2
404)の出方信号cビット位置4)に基づいてゲート
B (2409)〜ゲートE C2412)のいずれか
1つを選択するゲート選択器でおる。
給するゲートC1(2411)はFA (2404)の
出力データをWCバスに供給するデー) D 、 (2
412)はデータ(0000)tsをweババス供給す
るゲートE、(2418)は信号TBC1信号WRED
U 、信号WREDL 、信号EADGおよびFA(2
404)の出方信号cビット位置4)に基づいてゲート
B (2409)〜ゲートE C2412)のいずれか
1つを選択するゲート選択器でおる。
ゲート選択器(2413)で選択するゲートについて説
明条る。シーケンサ(802)から供給されている信号
TBCによってゲートC(2410)が選択され、wc
ババスはWBババス上データが供給される。
明条る。シーケンサ(802)から供給されている信号
TBCによってゲートC(2410)が選択され、wc
ババスはWBババス上データが供給される。
△ED発生部(2108)から供給されている仮想キー
信号EADGがオン状態であると、信号WREDLある
いは信号WREDUによってゲートE C2412)が
選択され、WCバス上にはデータcoooo)l、が供
給される。
信号EADGがオン状態であると、信号WREDLある
いは信号WREDUによってゲートE C2412)が
選択され、WCバス上にはデータcoooo)l、が供
給される。
すなわち、エンベロープデータEDU 、 EDLをと
もに(0000)1gと設定することになる。この結果
、エンベロープ付加波形サンプル値f (Xi、m、n
、q、r)”f (xi m n ) となる。
もに(0000)1gと設定することになる。この結果
、エンベロープ付加波形サンプル値f (Xi、m、n
、q、r)”f (xi m n ) となる。
また、 FA、 (2404)の出力信号cビット位置
4)が+11でかつ信号WREDUが供給されるとゲー
トB(2409)が選択されWCバスにデータ(FFF
F )iaが供給される。すなわち、エンベロープデー
タEDUを常時(F )1 a と設定することになる
。
4)が+11でかつ信号WREDUが供給されるとゲー
トB(2409)が選択されWCバスにデータ(FFF
F )iaが供給される。すなわち、エンベロープデー
タEDUを常時(F )1 a と設定することになる
。
上述以外の状態では、デー) D C2411)が選択
され、FA (2404)の出力データがWCバスに供
給される。
され、FA (2404)の出力データがWCバスに供
給される。
なお、同波形データメモリ部(2105) 、 EDメ
モリ部(2106)に供給されている信号WRRANは
、 DRP(808)で説明した信号WRRAMと同一
のものである。
モリ部(2106)に供給されている信号WRRANは
、 DRP(808)で説明した信号WRRAMと同一
のものである。
WDP (807)もDRP (808) 、 EDP
(806)と同様にシーケンサ(802)から供給さ
れる制御信号に基づいて上述する演算処理を行ない、上
述した■〜■の処理内容を実現するようになつそいる。
(806)と同様にシーケンサ(802)から供給さ
れる制御信号に基づいて上述する演算処理を行ない、上
述した■〜■の処理内容を実現するようになつそいる。
■仮想波形サンプル値f(Xi、m、n)を求める。
信号RDSVDI 、 RDNvDB (命令ステップ
2に対応)によってDRP (808)から供給されて
いる波形サンプル値f(X、i 、 n )とf (X
i +1 + n )をWAババス WBバズに供給
し、演算部(210g)のラッチAL、BLに信号−2
立下りエッヂで波形サンプル値を格納する。この時演算
部(2108)に加えられる信号INVによってラッチ
肚に格納されるデータは反転データ、すなわちf(Xi
、n)となる。
2に対応)によってDRP (808)から供給されて
いる波形サンプル値f(X、i 、 n )とf (X
i +1 + n )をWAババス WBバズに供給
し、演算部(210g)のラッチAL、BLに信号−2
立下りエッヂで波形サンプル値を格納する。この時演算
部(2108)に加えられる信号INVによってラッチ
肚に格納されるデータは反転データ、すなわちf(Xi
、n)となる。
そして、ラッチAL (2402) 、ラッチBL (
2408)に格納されたデータを用いて演算部(210
8)で加算処理(f(Xi、n)+f(Xt+t、n)
+1つ、すなわち(f(Xr−z、n)−f(Xi 、
n)mlが実行され、演算結果がwcババス出力され
、信号WRMLPによって乗算部(2106’)内の被
乗数レジスタR(MLPl)に信号φ2の立上りエッチ
で書き込まれるとともに、DRP (808)から供給
されている内挿係数(Nm+n)αが乗数レジスタR(
MLP2)に格納される。
2408)に格納されたデータを用いて演算部(210
8)で加算処理(f(Xi、n)+f(Xt+t、n)
+1つ、すなわち(f(Xr−z、n)−f(Xi 、
n)mlが実行され、演算結果がwcババス出力され
、信号WRMLPによって乗算部(2106’)内の被
乗数レジスタR(MLPl)に信号φ2の立上りエッチ
で書き込まれるとともに、DRP (808)から供給
されている内挿係数(Nm+n)αが乗数レジスタR(
MLP2)に格納される。
そうすると1乗算部(2106)内で
(f(Xi+1.n)−f(X、、n)) X (Nm
+n)αの乗算が実行される。乗算結果は命令ステップ
4の終了までに正しい値になるものとする。次に信号R
DWDIによって矩形サンプル値f (X、 n)をW
Aパースに、信号RDMLPによって乗算結果をWBバ
バス供給し、信号φ2の立下りエッヂでラッチAL、B
Lにそれぞれのデータを格納する(命令ステップ5に対
応)。なお、乗算結果は乗算器の上位16ビツトを利用
している。これは、 1/21g処理と等価なものであ
る。
+n)αの乗算が実行される。乗算結果は命令ステップ
4の終了までに正しい値になるものとする。次に信号R
DWDIによって矩形サンプル値f (X、 n)をW
Aパースに、信号RDMLPによって乗算結果をWBバ
バス供給し、信号φ2の立下りエッヂでラッチAL、B
Lにそれぞれのデータを格納する(命令ステップ5に対
応)。なお、乗算結果は乗算器の上位16ビツトを利用
している。これは、 1/21g処理と等価なものであ
る。
演算部(2108)で加算処理を実行することにより、
(2)式で表わした仮想波形サンプル値f(Xi、m、
n)が求められる。
(2)式で表わした仮想波形サンプル値f(Xi、m、
n)が求められる。
■エンベロープ付加波形サンプル値f (Xt、m、n
、q、r)を求める。
、q、r)を求める。
仮想波形サンプル値f(xt、m、n’)を、信号WR
MLP、信号WR3FT (命令ステップ6に対応)に
よって、乗算部(2106)内の被乗数レジスタR(M
LPl)とシフタ部(2107)内のレジスタR(SF
T)に信号φ2の立上りエッチで格納する。また、 E
Dメモリ部(2105)から乗算部(2106)に供給
しているエンベロープデータEDLを信号5ELWE
(命令ステップ6に対応)によって乗算部(2106)
内の乗数レジスタR(MLP2)に格納し、乗算処理〔
f(Xt、m、n) X、r)を実行する。
MLP、信号WR3FT (命令ステップ6に対応)に
よって、乗算部(2106)内の被乗数レジスタR(M
LPl)とシフタ部(2107)内のレジスタR(SF
T)に信号φ2の立上りエッチで格納する。また、 E
Dメモリ部(2105)から乗算部(2106)に供給
しているエンベロープデータEDLを信号5ELWE
(命令ステップ6に対応)によって乗算部(2106)
内の乗数レジスタR(MLP2)に格納し、乗算処理〔
f(Xt、m、n) X、r)を実行する。
一方、シフタ部(2107)内のレジスタR(SFT)
に格納した仮想波形サンプル値r (L、m、n )を
EDメモリ部(2105)からシフタ部(2107)に
供給されているエンベロープデータEDU(2)に基づ
いて、シフト操作(f (Xi 、m、 n) / 2
q)を行ない、信号WR8FB(命令ステップ7に対応
)によって、シフタ部(2107)内の出力レジスタR
(SFB)に格納する。
に格納した仮想波形サンプル値r (L、m、n )を
EDメモリ部(2105)からシフタ部(2107)に
供給されているエンベロープデータEDU(2)に基づ
いて、シフト操作(f (Xi 、m、 n) / 2
q)を行ない、信号WR8FB(命令ステップ7に対応
)によって、シフタ部(2107)内の出力レジスタR
(SFB)に格納する。
そして1乗算部(2106)で行なった乗算結果を、信
号TBC、信号WRSFT (命令ステップ8に対応)
によってシフタ部(2107)内のレジスタR(SFT
)に格納し、エンベロープデータEDU (Q)に基づ
いたシフト操作行なう。
号TBC、信号WRSFT (命令ステップ8に対応)
によってシフタ部(2107)内のレジスタR(SFT
)に格納し、エンベロープデータEDU (Q)に基づ
いたシフト操作行なう。
信号RDSFA%RDSFB (命令ステップ9に対応
)によって、シフタ部(2107)内の出力レジスタR
(SFB )に格納しであるデータCf(Xi m n
)/2” Eを信号INVによって論理反転し、演算部
C2108)内のラッチALにそれぞれ格納する。
)によって、シフタ部(2107)内の出力レジスタR
(SFB )に格納しであるデータCf(Xi m n
)/2” Eを信号INVによって論理反転し、演算部
C2108)内のラッチALにそれぞれ格納する。
そして、演算部(2108)で加算処理を実行すること
により、エンベロープ付加波形サンプル値fA(X、、
m、n、q、r )が求めらレル。
により、エンベロープ付加波形サンプル値fA(X、、
m、n、q、r )が求めらレル。
■差分波形サンプル値DfC刈、。l”#Qlr)を求
める。
める。
エンベロープ付加波形サンプル値f (Xi、m、n、
q、r)を信号WROWDによって旧波形メモリ部(2
104)内のレジスタR(OWD)に格納するとともに
、信号TCAによって、 FA (2404)の出力デ
ータをWAババス供給し、信号INVによって論理反転
を行ない、演算部(2108)内のラッチALに格納す
る。また、信号RDOWDによって、旧エンベロープ付
加波形サンプル値を旧波形メモリ部(2104)から読
み出し、演算部(2108)内のラッチBLに格納する
。
q、r)を信号WROWDによって旧波形メモリ部(2
104)内のレジスタR(OWD)に格納するとともに
、信号TCAによって、 FA (2404)の出力デ
ータをWAババス供給し、信号INVによって論理反転
を行ない、演算部(2108)内のラッチALに格納す
る。また、信号RDOWDによって、旧エンベロープ付
加波形サンプル値を旧波形メモリ部(2104)から読
み出し、演算部(2108)内のラッチBLに格納する
。
そして、演算部(2108)で加算処理を実行すること
により、差分波形サンプル値Df (XI、m、 n、
q、 r )が求められ、信号WOBRによってOB
R(2109)内のレジスタR(OBR)に差分波形サ
ンプル値を格納する。
により、差分波形サンプル値Df (XI、m、 n、
q、 r )が求められ、信号WOBRによってOB
R(2109)内のレジスタR(OBR)に差分波形サ
ンプル値を格納する。
■エンベロープデータEDの更新
信号RDEDL 、 EDLED (命令ステップ3に
対応)によって、EDメモリ部(2105)からエンベ
ロープデータEDが、△ED発生部(2101)から増
分データ△EDがWAババスWBババスそれぞれ読み出
され、信号φ2の立下りエッヂで演算部(2108)内
のラッチ肚とBLにそれぞれ格納される。
対応)によって、EDメモリ部(2105)からエンベ
ロープデータEDが、△ED発生部(2101)から増
分データ△EDがWAババスWBババスそれぞれ読み出
され、信号φ2の立下りエッヂで演算部(2108)内
のラッチ肚とBLにそれぞれ格納される。
そして、加算処理(EDL+ΔED )を演算部(21
08)テ実行し、新エンベロープデータEDを求め、信
号WREDL (命令ステップ4に対応)によって、
EDメモリ部(2105)内のレジスタR(EDL)に
新エンベロープデータEDを格納するとともに、演算部
(2108)内の加算器FA (2404)のキャリー
出力を演算部(2108)内のフラグレジスタECF
(2405)に格納する。
08)テ実行し、新エンベロープデータEDを求め、信
号WREDL (命令ステップ4に対応)によって、
EDメモリ部(2105)内のレジスタR(EDL)に
新エンベロープデータEDを格納するとともに、演算部
(2108)内の加算器FA (2404)のキャリー
出力を演算部(2108)内のフラグレジスタECF
(2405)に格納する。
信号RDEDU (命令ステップ6に対応)によって、
エンベロープデータEDUが読み出され、演算部(21
08)で、レジスタECF (2405)の内容とエン
ベロープデータEDUとの加算処理を実行して、新エン
ベロープデータEDUを求める。求めたエンベロープE
DUを信号WREDUによって、 EDメモリ部(21
05)内のレジスタR(EDU)に格納する。
エンベロープデータEDUが読み出され、演算部(21
08)で、レジスタECF (2405)の内容とエン
ベロープデータEDUとの加算処理を実行して、新エン
ベロープデータEDUを求める。求めたエンベロープE
DUを信号WREDUによって、 EDメモリ部(21
05)内のレジスタR(EDU)に格納する。
そして、DRP= (808)と同様に、信号WRRA
MによってレジスタR(EDL) 、 R(EDU)
、 R(OWD) ニ格納している各種データをチャネ
ルコードCHCで指定されたそれぞれのメモリ領域にデ
ータ転送を行なう。
MによってレジスタR(EDL) 、 R(EDU)
、 R(OWD) ニ格納している各種データをチャネ
ルコードCHCで指定されたそれぞれのメモリ領域にデ
ータ転送を行なう。
アナログバッファメモリ部(812) 、 DAC(8
11)にデータを供給するタイミングについて説明する
。
11)にデータを供給するタイミングについて説明する
。
信号CRDAS (命令ステップ9に対応)によって、
書き込みパルス発生部(2110)で発生してtl)る
書き込みパルスをリセットする。そして、信号WROB
R(命令ステップ11に対応)によって、 OBR(2
109)内のレジスタR(OBR)に差分波形サンプル
値Df””+”+”LQ+’ )を格納し、DAC(8
11)に供給してディジタル信号をアナログ信号に変換
しアナロク゛バッファメモリ部(812)に供給すると
ともに、書き込みパルス発生部(2110)でチャネル
コードCHCで指定されたチャネルに対応する書き込み
ノX6 ルスをセットシ、アナログバッファメモリ部(
812) 内のアナログスイッチAWI〜AW8に供給
する。この時、信号CLRFが′″0′(計算要求を行
なって0ない場合)の場合は、書き込み/fルスをセ゛
ノドしないようにする。
書き込みパルス発生部(2110)で発生してtl)る
書き込みパルスをリセットする。そして、信号WROB
R(命令ステップ11に対応)によって、 OBR(2
109)内のレジスタR(OBR)に差分波形サンプル
値Df””+”+”LQ+’ )を格納し、DAC(8
11)に供給してディジタル信号をアナログ信号に変換
しアナロク゛バッファメモリ部(812)に供給すると
ともに、書き込みパルス発生部(2110)でチャネル
コードCHCで指定されたチャネルに対応する書き込み
ノX6 ルスをセットシ、アナログバッファメモリ部(
812) 内のアナログスイッチAWI〜AW8に供給
する。この時、信号CLRFが′″0′(計算要求を行
なって0ない場合)の場合は、書き込み/fルスをセ゛
ノドしないようにする。
第13表にWDP (80?)の演算シーケンスを示す
。
。
第18表に示す命令ステップを順次実行すること蓄こよ
り、上述で説明した処理が実現する。
り、上述で説明した処理が実現する。
第18表に示した制御信号について説明する。
上述する信号はシーケンサ(802)から供給される。
RDWDIは、 DRP (808)から供給されてい
る波形チー ’i 1VDI eWAバスに供給する命
令。
る波形チー ’i 1VDI eWAバスに供給する命
令。
RDWDIは、 DRP (808)から供給されてい
る波形データwpie日バスに供給する命令。
る波形データwpie日バスに供給する命令。
RD△EDは、△ED発生部(2108)内で゛選択さ
れたサスティンデータDSUS 6るいはダンパデータ
DDMPを増分データ△EDとL4WAバスに供給する
命令。
れたサスティンデータDSUS 6るいはダンパデータ
DDMPを増分データ△EDとL4WAバスに供給する
命令。
RDSFA ハ、シフタ部(2107)内のシフタの出
力データをWBババス供給する命令。
力データをWBババス供給する命令。
RDEDL ハ、 ED/l モr)部(21(15)
内ノメモ’) M (EDL) 朱から読み出され
ているエンベロープ =−’ −タEDLをWBババ
ス供給する命令。 2RDNLPは、乗算部(210
6)内の粱算器の出力データ(上位16ビツト)を茹バ
スに供給 する命令。
内ノメモ’) M (EDL) 朱から読み出され
ているエンベロープ =−’ −タEDLをWBババ
ス供給する命令。 2RDNLPは、乗算部(210
6)内の粱算器の出力データ(上位16ビツト)を茹バ
スに供給 する命令。
RDEDUは、 EDメモリ部(2105)内のメモリ
M(EDU)から読み出されているエンベロープ データEDUをWBバ・スに供給する命令。
M(EDU)から読み出されているエンベロープ データEDUをWBバ・スに供給する命令。
RDSFBは、シフタ部(2107)内のレジスタR(
SFB )に格納しているデータ(f (Xt、m、n
)/2q)をWBババス供給する命令。
SFB )に格納しているデータ(f (Xt、m、n
)/2q)をWBババス供給する命令。
RDOWDは、白波形メモリ部(2104)内のメモリ
M(OWD)から読み出されているエンベロープ付加波
形サンプル値を■8バス に供給する命令。
M(OWD)から読み出されているエンベロープ付加波
形サンプル値を■8バス に供給する命令。
WRMLPは、 wcババス上データを乗算部(210
6)内の被乗数レジスタR(iviLP 1) に格
納する命令。
6)内の被乗数レジスタR(iviLP 1) に格
納する命令。
WREDLは、 wcババス上データをEDメモリ1(
2105)内のレジスタR(EDL)に格納する命令。
2105)内のレジスタR(EDL)に格納する命令。
WR5FTは、 WCバス上のデータをシフタ部(21
07)内°のレジスタR(SFT)に格納する命令。
07)内°のレジスタR(SFT)に格納する命令。
WREDUは、 WCバス上のデータをEDメモリ部(
2105)内のレジスタR(EDU)に格納する向性0 WROWDは、WCバス上のデータを同波形データメモ
!J 部(2104)内(7)1/ジスタR(OWD)
に格納する命令。
2105)内のレジスタR(EDU)に格納する向性0 WROWDは、WCバス上のデータを同波形データメモ
!J 部(2104)内(7)1/ジスタR(OWD)
に格納する命令。
WROBRは、 WCバス上のデータをOBR(210
9)内のレジスタR(OWR)に格納する命令。
9)内のレジスタR(OWR)に格納する命令。
INVは、 WAババス上データの論理を反転し。
反転したデータを演算部(2108)内のラッチAL
(2402)に供給する命令。
(2402)に供給する命令。
WADDlは、演算部(2108)内のFA (240
4)にキャリ入力信号(+1)を供給する命令。
4)にキャリ入力信号(+1)を供給する命令。
WCRALは、演算部(2108)内のラッチAL (
2402)をクリヤする命令。
2402)をクリヤする命令。
5ELWEは、乗算部(2106)内の乗数レジスタR
(MLP2)に格納するデータ選択命令。
(MLP2)に格納するデータ選択命令。
選択データは、DRP (808)から供給されている
係数データCMLP)とEDメモリ部(2105)から
供給されているエンベロープデータEDLである。
係数データCMLP)とEDメモリ部(2105)から
供給されているエンベロープデータEDLである。
WR8FBは、シフタ部(2107)内のシフタの出力
データをシフタ部(2107)内のレジスタR(SFB
)に格納する命令。
データをシフタ部(2107)内のレジスタR(SFB
)に格納する命令。
TBCは、 WBババス上データをWCバスに供給する
命令。
命令。
CRDASは、書き込みパルス発生部(2110)から
アナログバッファメモリ部(812)に供給ツている書
潜みパルスをリセット する命令。
アナログバッファメモリ部(812)に供給ツている書
潜みパルスをリセット する命令。
TCAは、演算部(2108)内のFA (2404)
の出力データをWAババス供給する命令。
の出力データをWAババス供給する命令。
なお、第12表に示した、仮想キー信号EADGがオン
状態時は、演算部(2108)内のゲート選択器(24
18)によってゲートE C2412)が選択され、エ
ンベロープデータEDL 、 EDUはともにデータ(
0000)l。
状態時は、演算部(2108)内のゲート選択器(24
18)によってゲートE C2412)が選択され、エ
ンベロープデータEDL 、 EDUはともにデータ(
0000)l。
となる。この結果、エンベロープ付加波形サンプル値f
(Xi、m、n、q、r) =f (Xi、nn、n
)となるcq=0、r=0)。
(Xi、m、n、q、r) =f (Xi、nn、n
)となるcq=0、r=0)。
そして、仮想キー信号EADGがオフ状態となると、エ
ンベロープデータEDの更新処理(ED=ED+AED
)が開始する。この結果、(5)式に示したエンベロー
プ付加波形サンプル値を求める演算処理が行なわれ、減
衰特性の楽音波形が得られる。
ンベロープデータEDの更新処理(ED=ED+AED
)が開始する。この結果、(5)式に示したエンベロー
プ付加波形サンプル値を求める演算処理が行なわれ、減
衰特性の楽音波形が得られる。
また、エンベロープデータEDの更新処理が進み。
エンベロープデータEDUが(1111)2の状態とな
ると、エンベロープデータEDUの更新タイミングで演
算部(2108)内のデー) B (2409)が選択
され、エンベロープデータEDUは常時(1111)2
の状態となる。この状態は、楽音波形の発音停止に相当
する。
ると、エンベロープデータEDUの更新タイミングで演
算部(2108)内のデー) B (2409)が選択
され、エンベロープデータEDUは常時(1111)2
の状態となる。この状態は、楽音波形の発音停止に相当
する。
以上のように、波形内挿方法を(2)式に示したように
、補正項を付加した内挿係数(Nm+n )α/HNで
実現しているため、波形間のレベル差が大きくても不用
なノイズ成分の発生を防ぐことができる。
、補正項を付加した内挿係数(Nm+n )α/HNで
実現しているため、波形間のレベル差が大きくても不用
なノイズ成分の発生を防ぐことができる。
さらに、波形形状の変化が少ない所では、データメモリ
部に格納する波形データを少なくシ、<り返し数を大き
くすることにより、データ圧縮が可能となる。
部に格納する波形データを少なくシ、<り返し数を大き
くすることにより、データ圧縮が可能となる。
さらに、アナログ信号に変換する変換部を、1つのDA
Cとアナログバッファメモリ部とで構成しているので、
DACは1個だけでよく、チャネルごとに独立に動作
するから、2チヤネルの音を同時に鳴らしても、量子化
ひずみによる混変調ひずみの発生がなくなる。
Cとアナログバッファメモリ部とで構成しているので、
DACは1個だけでよく、チャネルごとに独立に動作
するから、2チヤネルの音を同時に鳴らしても、量子化
ひずみによる混変調ひずみの発生がなくなる。
さらに、波形の革本周波数に対してサンプリング周波数
を整数倍にしているので、発生する折り返し成分や、量
子化により生じるサンプル波成分をすべて、基本周波数
の高調波に一致させることができ、したがってにごりの
ない音をつくることができる。
を整数倍にしているので、発生する折り返し成分や、量
子化により生じるサンプル波成分をすべて、基本周波数
の高調波に一致させることができ、したがってにごりの
ない音をつくることができる。
次に、楽音発止部(607)内の各部の相互関係につい
て説明する。
て説明する。
まず、入力レジスタ部(808)について説明する。
入力レジスタ部(808)は、CPU (601)から
供給すれたI/Qポートアドレスデータと楽音発生デー
タあるいはサスティンデータなどを一時格納するレジス
タR(ADD) 、 R(DAT)と、 CPU (6
08)から入力レジスタ部(808)に対して新データ
を供給したことを指示する信号(CPU (608)か
ら供給されている信号l0RQ −WRを利用する)を
記憶するフラグレジスタ(レジスタWRCFで、指示す
る場合は%1′となる)と、レジスタR(ADD)に格
納されているアドレスを書き込みアドレス、シーケンサ
(802)から供給されるチャネルコードCHCを読み
出しアドレスとし、レジスタR(DAT)に格納された
楽音発生データを記憶するレジスタファイル(8チヤネ
ル分の楽音発生データを記憶し、容量は8ビット×8語
である)と、レジスタR(ADD)のアドレスデータに
基づいてすfスティンデータ。
供給すれたI/Qポートアドレスデータと楽音発生デー
タあるいはサスティンデータなどを一時格納するレジス
タR(ADD) 、 R(DAT)と、 CPU (6
08)から入力レジスタ部(808)に対して新データ
を供給したことを指示する信号(CPU (608)か
ら供給されている信号l0RQ −WRを利用する)を
記憶するフラグレジスタ(レジスタWRCFで、指示す
る場合は%1′となる)と、レジスタR(ADD)に格
納されているアドレスを書き込みアドレス、シーケンサ
(802)から供給されるチャネルコードCHCを読み
出しアドレスとし、レジスタR(DAT)に格納された
楽音発生データを記憶するレジスタファイル(8チヤネ
ル分の楽音発生データを記憶し、容量は8ビット×8語
である)と、レジスタR(ADD)のアドレスデータに
基づいてすfスティンデータ。
ダンパデータ、ビートデータや効果制御データを記イ倉
する効果レジスタ部とで構成している。
する効果レジスタ部とで構成している。
レジスタR(DAT)に格納された新データをレジスタ
ファイルあるいは効果レジスタ部にデータ転送するタイ
ミングは、レジスタWRCFが′″1′の状態で、シー
ケンサ(802)から信号WRDATが供給されると、
レジスタR,(ADD)に格納されたI10ポートアド
レスに基づいた所定のアドレスにレジスタR(DAT)
の格納データが転送される。その後、レジスタWRCF
をリセットする。
ファイルあるいは効果レジスタ部にデータ転送するタイ
ミングは、レジスタWRCFが′″1′の状態で、シー
ケンサ(802)から信号WRDATが供給されると、
レジスタR,(ADD)に格納されたI10ポートアド
レスに基づいた所定のアドレスにレジスタR(DAT)
の格納データが転送される。その後、レジスタWRCF
をリセットする。
シーケンサ(802)から供給される信号WRDATは
。
。
レジスタファイルあるいは効果レジスタ部へのデータ取
り込み制御信号であり、第9表、第11表、第18表に
示した命令ステップ1のタイミングのたびに入力レジス
タ部(801)に供給される。
り込み制御信号であり、第9表、第11表、第18表に
示した命令ステップ1のタイミングのたびに入力レジス
タ部(801)に供給される。
命令ステップlのタイミングでレジスタファイルあるい
は効果レジスタ部に新データを取り込む理由は、 FD
P (806) 、 WDP (807)やDRP (
808)の内部で各種演算処理を実行中に楽音発生デー
タや各種効果データが変化すると正しい演′σ処理が行
なわれない。そのため、演算処理を開始する命令ステッ
プ1で取り込んでいる。
は効果レジスタ部に新データを取り込む理由は、 FD
P (806) 、 WDP (807)やDRP (
808)の内部で各種演算処理を実行中に楽音発生デー
タや各種効果データが変化すると正しい演′σ処理が行
なわれない。そのため、演算処理を開始する命令ステッ
プ1で取り込んでいる。
相互関係の説明
チャネルlに対応する説明を行なう。なお、計算要求フ
ラグ信号CCRFが発生しているものとする0 ■シーケンサ(802,)で発生しているチャネルコー
トCHCがチャネル1のタイミングになると。
ラグ信号CCRFが発生しているものとする0 ■シーケンサ(802,)で発生しているチャネルコー
トCHCがチャネル1のタイミングになると。
入力レジスタ部(808)内のレジスタファイルからチ
ャネル1に対応する楽音発生データがFDP (806
) 、 WDP (807) 、DRP (808)に
供給される。
ャネル1に対応する楽音発生データがFDP (806
) 、 WDP (807) 、DRP (808)に
供給される。
■そうすると、DRP (808)の詳細な説明の所で
述べたように%DRP (80B)で楽音発生データに
基づいて、 DBK (606)から先頭番地、制御デ
ータ、波形データf(Xi、n)とfCXi+l、n)
を読み取り、制御データに基づいて求めた係数データ(
Nm+n’)αとDBK (606)から読み取った波
形データf(Xt、n)とf(Xr+l、n)とを命令
ステップ11のタイミングでDRP (808)内のメ
モリM(MD)、メモ’) M (WDI ) 、 メ
モ!J M (WDI)に格納する。
述べたように%DRP (80B)で楽音発生データに
基づいて、 DBK (606)から先頭番地、制御デ
ータ、波形データf(Xi、n)とfCXi+l、n)
を読み取り、制御データに基づいて求めた係数データ(
Nm+n’)αとDBK (606)から読み取った波
形データf(Xt、n)とf(Xr+l、n)とを命令
ステップ11のタイミングでDRP (808)内のメ
モリM(MD)、メモ’) M (WDI ) 、 メ
モ!J M (WDI)に格納する。
■一方、WDP (807)では、命令ステップ1〜1
0のタイミングの間、チャネルコードCHCに基づいて
DRP (808)内のメモリM(MD)、メモリM
(WDI) 、 メモリM (WDl[) カら読ミ出
すレテいる係数データと波形データf(Xi、。−1)
とf(Xi+l、 n−+ ) を用いて、 WDP
(807)の詳細な説明の所で述べたように、波形演算
処理が行なわれる。そして、命令ステップ11のタイミ
ングで、演算結果(差分波形サンプル値Df (Xi、
m、n 1.q、r)がWDP (807)内のレジス
タR(OBR)に格納され、DAC(811)に供給さ
れる。
0のタイミングの間、チャネルコードCHCに基づいて
DRP (808)内のメモリM(MD)、メモリM
(WDI) 、 メモリM (WDl[) カら読ミ出
すレテいる係数データと波形データf(Xi、。−1)
とf(Xi+l、 n−+ ) を用いて、 WDP
(807)の詳細な説明の所で述べたように、波形演算
処理が行なわれる。そして、命令ステップ11のタイミ
ングで、演算結果(差分波形サンプル値Df (Xi、
m、n 1.q、r)がWDP (807)内のレジス
タR(OBR)に格納され、DAC(811)に供給さ
れる。
上述の■〜■の処理が、シーケンサ(802)から発生
しているチャネルコードCHCのチャネルlに対応する
命令ステップ1〜11の同一タイミング内で実行される
。
しているチャネルコードCHCのチャネルlに対応する
命令ステップ1〜11の同一タイミング内で実行される
。
そして、再びチャネルlに対応するチャネルコードCH
Cがシーケンサ(802)から発生されると上述の処理
が行なわれる。
Cがシーケンサ(802)から発生されると上述の処理
が行なわれる。
■上述の■の説明と同様に、チャネル1に対応する楽音
発生データが、FDP (806) 、 WDP(80
7) 、 DRP (808) ニ供給すレる。
発生データが、FDP (806) 、 WDP(80
7) 、 DRP (808) ニ供給すレる。
■上述の■の説明と同様に、DRP (808)で。
DBK (606)内に格納している先頭番地、制御デ
ータ、波形データf(Xi、n+1 ) 、 fcXH
40,m+n)が読み込まれ、メモリM (MD) 、
メモリM(蜀I)、メモリM(WDl[)に格納される
。
ータ、波形データf(Xi、n+1 ) 、 fcXH
40,m+n)が読み込まれ、メモリM (MD) 、
メモリM(蜀I)、メモリM(WDl[)に格納される
。
ただし、上述■で説明した内容と異なる点は、DBK
(606)から読み取る制御データと波形データは、上
述■のタイミング、すなわち前回のチャネル1の計算タ
イミングで更新された波形ナンバi、波形サンプルナン
バnに基づいたデータとなる。
(606)から読み取る制御データと波形データは、上
述■のタイミング、すなわち前回のチャネル1の計算タ
イミングで更新された波形ナンバi、波形サンプルナン
バnに基づいたデータとなる。
■上述■と同様に、DRP (8(18)内のメモリM
(MD)、 )−E:+) M (WDI) 、 メモ
IJ M (WDI)から読み出されているデータに基
づいて、波形演算処理が行なわれる。
(MD)、 )−E:+) M (WDI) 、 メモ
IJ M (WDI)から読み出されているデータに基
づいて、波形演算処理が行なわれる。
なお、今回の計算タイミングで波形演算処理に用い−る
データは、前回のチャネル1の計算タイミングでDRP
(808)内に読み込み処理を行なった係数データ、
波形データf (X i 、 n )。
データは、前回のチャネル1の計算タイミングでDRP
(808)内に読み込み処理を行なった係数データ、
波形データf (X i 、 n )。
f(X++t、n)である。
以後、計算要求フラグ信号CLRFに基づいて。
チャネル1に対応する計算タイミングで、上述の処理が
くり返される。
くり返される。
上述の説明のように、DRP (808)で読み取った
データは、次回に発生する計算タイミング(ただし、計
算要求フラグ信号CLRFが発生している時)で、WD
P (807)で行なう波形演算処理に利用される。
データは、次回に発生する計算タイミング(ただし、計
算要求フラグ信号CLRFが発生している時)で、WD
P (807)で行なう波形演算処理に利用される。
このように、読み出し、波形演算処理を、同一計算タイ
ミング内ですべて実行せず、時間的に処理タイミングを
分け、パイプライン的処理を行なうことにより、各部の
構成要素の動作スピードを低速化できる。
ミング内ですべて実行せず、時間的に処理タイミングを
分け、パイプライン的処理を行なうことにより、各部の
構成要素の動作スピードを低速化できる。
上述までの説明では、データメモリ(DBK )に格納
している波形データは、PCMデータの形で波形−周期
を枚数分格納していたが、波形対称化、DPCM化、
ADPCM化を行なった結果を波形データとしてDBK
に格納し、 DRP (808)の内部で復元処理を行
なうことにより、波形データのデータ圧縮が可能となる
。
している波形データは、PCMデータの形で波形−周期
を枚数分格納していたが、波形対称化、DPCM化、
ADPCM化を行なった結果を波形データとしてDBK
に格納し、 DRP (808)の内部で復元処理を行
なうことにより、波形データのデータ圧縮が可能となる
。
発明の詳細
な説明したように、本発明の楽音発生装置は、楽音の発
音開始から発音終了時までの複数個の楽音波形のうち少
な(とも2つ以上の楽音波形と上記選択抽出した楽音波
形を用いて合成波形を形成する時に使用する制御データ
とを記憶するデータメモリ部と、発音音階を決定するノ
ートクロック発生部と、上記ノートクロック発生部の出
力信号に基づいて上記データメモリ部から2つの波形サ
ンプルデータと制御データとを読み出すデータ読み出し
部と、上記データ読み出し部で読み、出した2つの波形
サンプルデータと制御データとを用いて新合成波形サン
プルデータを求めると共に旧合成波形サンプルデータと
新合成波形サンフノνデータとの差分を求め、差分デー
タを出力する波形計算部と、上記波形計算部で求めたデ
ィジタル差分データをアナログ信号に変換する変換部と
、上記変換部の出力信号を積分する積分器とを具備し、
積分器の出力から合成楽音波形を発生するよう(こ構成
しているので、楽音波形の形状を時間的に変化させるこ
とができ、自然楽器音を模擬することが可能となる。
音開始から発音終了時までの複数個の楽音波形のうち少
な(とも2つ以上の楽音波形と上記選択抽出した楽音波
形を用いて合成波形を形成する時に使用する制御データ
とを記憶するデータメモリ部と、発音音階を決定するノ
ートクロック発生部と、上記ノートクロック発生部の出
力信号に基づいて上記データメモリ部から2つの波形サ
ンプルデータと制御データとを読み出すデータ読み出し
部と、上記データ読み出し部で読み、出した2つの波形
サンプルデータと制御データとを用いて新合成波形サン
プルデータを求めると共に旧合成波形サンプルデータと
新合成波形サンフノνデータとの差分を求め、差分デー
タを出力する波形計算部と、上記波形計算部で求めたデ
ィジタル差分データをアナログ信号に変換する変換部と
、上記変換部の出力信号を積分する積分器とを具備し、
積分器の出力から合成楽音波形を発生するよう(こ構成
しているので、楽音波形の形状を時間的に変化させるこ
とができ、自然楽器音を模擬することが可能となる。
さらに、アナログ信号に変換する変換部を、1つのDA
Cとホールド回路及び読み出し回路からなるアナログバ
ッファメモリ(発音チャネノシ数分のコンデンサをホー
ルドのために用意している)とで構成しているので、
DACは1個だけでよく、チャネルごとに独立に動作す
るから、2チャネルの音を同時に鳴らしても、量子化ひ
ずみによる混変調ひずみの発生がない。
Cとホールド回路及び読み出し回路からなるアナログバ
ッファメモリ(発音チャネノシ数分のコンデンサをホー
ルドのために用意している)とで構成しているので、
DACは1個だけでよく、チャネルごとに独立に動作す
るから、2チャネルの音を同時に鳴らしても、量子化ひ
ずみによる混変調ひずみの発生がない。
さらに、波形の基本周波数に対して、読み出し回路を駆
動するノートクロック発生部の出力信号であるサンプリ
ング周波数を整数倍にするこ3とができるから1発生す
る折り返し成分や、量子化により生じるサンプル波成分
を、すべて1基本周波数の電調波に一致させることがで
き、したがってにごりのない音をつくることができる利
点を有する。
動するノートクロック発生部の出力信号であるサンプリ
ング周波数を整数倍にするこ3とができるから1発生す
る折り返し成分や、量子化により生じるサンプル波成分
を、すべて1基本周波数の電調波に一致させることがで
き、したがってにごりのない音をつくることができる利
点を有する。
第1図〜第5図は本発明の動作説明図、第6図は本発明
の楽音発生装置を採用した電子楽器のブロック図、第7
図はCPU (608)から楽音発生部(607)にデ
ータを供給する場合のタイムチャート図、第8図は楽音
発生部(607)の構成図、第9図はシーケンサ(80
2)の−具体例のブロック図、第10図はシーケンサ(
802)の動作タイムチャート図。 第11図はアナログバラフチメモリ部(812)の−具
体例の構成図、第12図は楽音発生部(607)の内部
動作タイムチャート図、第18図はFDP (806)
から比較レジスタ部(805)に供給する周波数データ
の推移図、第14図はFDP (806)の−具体例の
構成図、第15図はFDP (806)のデータ処理手
順を示す処理流れ図、第16図は比較レジスタ部(80
5)の−具体例を示す構成図、第17図は計算要求フラ
グ発生部(810)の−具体例を示す構成図、第18図
はDBK(606)のデータ構成図、第19図はDRP
(80B)の−具体例を示す構成図、第20図はWD
P (807)の演算処理の流れ図、第21図はWDP
(807)の−具体例を示す構成図、第22図はビブ
ラート発生部(140B)の−具体例を示す構成図、第
28図は演算部(1918)の−具体例を示す構成図、
第24図は演算部(2108)の−具体例を示す構成図
である。 (601)・・・鍵盤部、(602)・・・操作部、(
608)・・・中央姑理装置、 (604)・・・票、
(605)・・・R9M 、 (606)−・・楽音合
成データROM、 (607)・・・楽音発生部、(8
01)・・・主発振器、(802)・・・シーケンサ、
(808)・・・入力レジスタ部、(804)・・・タ
イ゛?−、(805)・・・比較レジスタ部、 (80
6)・−・周波数データプロセッサ、(807)・・・
波形データプロセッサ、 [808)・・・データリー
ドプロセッサ、 (809)・・・読み出しパルス形成
部、(ljlO)・・・計算要求フラグ発生部%(81
1)・・・DACl(812)・・・アナログバッファ
メモリ部、(818)・°°積分器、LIIOI) (
1105) (1107)・・・入力用アナログスイッ
チ、(1104) (1106) (1108)・・・
読み出し用アナログスイッチ、(C1)(Cz)〜(C
8)・・・ホールド用コンデンサ 代理人 森本義弘
の楽音発生装置を採用した電子楽器のブロック図、第7
図はCPU (608)から楽音発生部(607)にデ
ータを供給する場合のタイムチャート図、第8図は楽音
発生部(607)の構成図、第9図はシーケンサ(80
2)の−具体例のブロック図、第10図はシーケンサ(
802)の動作タイムチャート図。 第11図はアナログバラフチメモリ部(812)の−具
体例の構成図、第12図は楽音発生部(607)の内部
動作タイムチャート図、第18図はFDP (806)
から比較レジスタ部(805)に供給する周波数データ
の推移図、第14図はFDP (806)の−具体例の
構成図、第15図はFDP (806)のデータ処理手
順を示す処理流れ図、第16図は比較レジスタ部(80
5)の−具体例を示す構成図、第17図は計算要求フラ
グ発生部(810)の−具体例を示す構成図、第18図
はDBK(606)のデータ構成図、第19図はDRP
(80B)の−具体例を示す構成図、第20図はWD
P (807)の演算処理の流れ図、第21図はWDP
(807)の−具体例を示す構成図、第22図はビブ
ラート発生部(140B)の−具体例を示す構成図、第
28図は演算部(1918)の−具体例を示す構成図、
第24図は演算部(2108)の−具体例を示す構成図
である。 (601)・・・鍵盤部、(602)・・・操作部、(
608)・・・中央姑理装置、 (604)・・・票、
(605)・・・R9M 、 (606)−・・楽音合
成データROM、 (607)・・・楽音発生部、(8
01)・・・主発振器、(802)・・・シーケンサ、
(808)・・・入力レジスタ部、(804)・・・タ
イ゛?−、(805)・・・比較レジスタ部、 (80
6)・−・周波数データプロセッサ、(807)・・・
波形データプロセッサ、 [808)・・・データリー
ドプロセッサ、 (809)・・・読み出しパルス形成
部、(ljlO)・・・計算要求フラグ発生部%(81
1)・・・DACl(812)・・・アナログバッファ
メモリ部、(818)・°°積分器、LIIOI) (
1105) (1107)・・・入力用アナログスイッ
チ、(1104) (1106) (1108)・・・
読み出し用アナログスイッチ、(C1)(Cz)〜(C
8)・・・ホールド用コンデンサ 代理人 森本義弘
Claims (1)
- 【特許請求の範囲】 1、楽音の発音開始から発音終了時までの複数個の楽音
波形のうち少なくとも2つ以上の楽音波形と上記選択抽
出した楽音波形を用いて合成波形を形成する時に使用す
る制御データとを記憶するデータメモリ部と、発音音階
を決定するノートクロック発生部と、上記ノートクロッ
ク発生部の出力信号に基づいて上記データメモリ部から
2つの波形サンプルデータと制御データとを読み出すデ
ータ読み出し部と、上記データ読み出し部で読み出した
2つの波形サンプルデータと制御データとを用いて新合
成波形サンプルデータを求めると共に旧合成波形サンプ
ルデータと新合成波形サンプルデータとの差分を求め、
差分データを出力する波形計算部と、上記波形計算部で
求めたディジタル差分データをアナログ信号に変換する
変換部と、上記友換部の出力信号を積分する積分器とを
具備し、積分器の出力から合成楽音波形を発生する楽音
発生装置。 2、 変換部は、ディジタル−アナログ変換器と。 上記ディジタル−アナログ変換器の出力信号レベルを波
形計算部の動作タイミングでホールドするホールド回路
と、上記ホールド回路にホールドしている内容をノート
クロック発生部で発生しているノートクロックに同期し
て出力させる読み出し回路とで構成した特許請求の範囲
第1項記載の楽音発生装置。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP58011862A JPS59136793A (ja) | 1983-01-26 | 1983-01-26 | 楽音発生装置 |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP58011862A JPS59136793A (ja) | 1983-01-26 | 1983-01-26 | 楽音発生装置 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| JPS59136793A true JPS59136793A (ja) | 1984-08-06 |
Family
ID=11789531
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP58011862A Pending JPS59136793A (ja) | 1983-01-26 | 1983-01-26 | 楽音発生装置 |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JPS59136793A (ja) |
Citations (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPS5778599A (en) * | 1980-11-04 | 1982-05-17 | Matsushita Electric Industrial Co Ltd | Electronic musical instrument |
-
1983
- 1983-01-26 JP JP58011862A patent/JPS59136793A/ja active Pending
Patent Citations (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPS5778599A (en) * | 1980-11-04 | 1982-05-17 | Matsushita Electric Industrial Co Ltd | Electronic musical instrument |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| JPS5843760B2 (ja) | 音響を作り出す方法 | |
| JP2606791B2 (ja) | 楽音発生用のディジタル信号処理装置 | |
| US5684260A (en) | Apparatus and method for generation and synthesis of audio | |
| JP3634130B2 (ja) | 楽音生成装置及び楽音生成方法 | |
| JPS6343760B2 (ja) | ||
| JPH0153800B2 (ja) | ||
| JPS6343759B2 (ja) | ||
| JPH0631984B2 (ja) | 楽音発生装置 | |
| JPS59136794A (ja) | 楽音発生装置 | |
| JPS59136792A (ja) | 楽音発生装置 | |
| JPH0127434B2 (ja) | ||
| JPS59123887A (ja) | 楽音発生装置 | |
| JP3706232B2 (ja) | 楽音生成装置及び楽音生成方法 | |
| JPH0127435B2 (ja) | ||
| JPS59220798A (ja) | 電子楽器 | |
| JPS59136797A (ja) | 楽音発生装置 | |
| JPS58199393A (ja) | 周波数制御装置 | |
| JPH0127436B2 (ja) | ||
| JPS59121395A (ja) | エンベロ−プ信号発生装置 | |
| JPS6033595A (ja) | ビブラ−ト付加装置 | |
| JPS60233695A (ja) | 電子楽器 | |
| JPS59220797A (ja) | 電子楽器 | |
| JPH02179698A (ja) | 処理装置 | |
| JPS6033596A (ja) | 電子楽器 | |
| JPS6033597A (ja) | 電子楽器 |