JPH0693195B2 - 楽音信号発生装置 - Google Patents

楽音信号発生装置

Info

Publication number
JPH0693195B2
JPH0693195B2 JP59153723A JP15372384A JPH0693195B2 JP H0693195 B2 JPH0693195 B2 JP H0693195B2 JP 59153723 A JP59153723 A JP 59153723A JP 15372384 A JP15372384 A JP 15372384A JP H0693195 B2 JPH0693195 B2 JP H0693195B2
Authority
JP
Japan
Prior art keywords
frame
coefficient
data
difference
coefficient data
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Lifetime
Application number
JP59153723A
Other languages
English (en)
Other versions
JPS6132094A (ja
Inventor
秀雄 鈴木
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Yamaha Corp
Original Assignee
Yamaha Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Yamaha Corp filed Critical Yamaha Corp
Priority to JP59153723A priority Critical patent/JPH0693195B2/ja
Priority to US06/758,207 priority patent/US4646612A/en
Publication of JPS6132094A publication Critical patent/JPS6132094A/ja
Publication of JPH0693195B2 publication Critical patent/JPH0693195B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Landscapes

  • Electrophonic Musical Instruments (AREA)

Description

【発明の詳細な説明】 〔産業上の利用分野〕 この発明は楽音信号発生装置に関し、特に楽音を構成す
る基本波(基音)及びその高調波(倍音)に対応する各
次数成分を発生させ、これらの各成分をそれぞれ対応す
る振幅係数によつて重み付けした後それらを合成するこ
とにより楽音信号を発生するようにした高調波合成方式
の楽音信号発生装置に関する。
〔背景技術とその問題点〕
この種の高調波合成方式の楽音信号発生装置は、基本波
及びその高調波の各次数成分(以下、高調波成分とい
う)の振幅をそれぞれ制御する振幅係数(以下、高調波
係数という)を適宜設定するだけで種々の音色の楽音信
号を発生できる点で非常に優れている。
ところで、上記各高調波成分に対する高調波係数をそれ
ぞれ時間の経過に従つて変化させることにより、自然楽
器音のように音色が時間的に変化する楽音信号を発生す
るようにすることが従来から提案されている。例えば、
特公昭58−20039号公報に開示されている。
しかしながら、この従来技術においては、各高調波係数
を時間の経過に従つて変化させるために、各高調波成分
に対応してそれぞれエンベロープメモリ(アタツク/デ
イケイメモリ)を設けているので、高調波成分の数と同
数のエンベロープメモリが必要となり、しかもこの複数
のエンベロープメモリの組を音色の時間変化の態様ごと
にそれぞれ用意しておく必要があり、従つて全体として
非常に大容量のメモリを用意しなければならず、構成が
大規模になるとともにコストが非常に高くなつてしまう
不都合がある。
〔発明の目的〕
この発明は以上の点を考慮してなされたもので、従来技
術に比較して格段的にメモリ容量を小容量化して簡単な
構成で、かつ低コストで音色が時間変化する楽音信号を
発生し得るようにした高調波合成方式の楽音信号発生装
置を提案しようとするものである。
〔発明の概要〕
高調波合成方式の楽音信号発生装置において、音色が時
間的に変化する楽音信号を発生するためには、上述した
ように各高調波係数をそれぞれ時間の経過に従つて変化
させる必要があるが、この発明は次のようにそれぞれ時
間的に変化する高調波係数を形成するようにしている。
すなわちまず、発生すべき楽音信号について第2図にそ
の振幅値を規格化(振幅エンベロープを取り除いて振幅
値を一定としたもの)して示すように、楽音信号の発生
から終了までを複数のフレームに分ける。すなわち、こ
の楽音信号は、時間と共に楽音波形MWが変化するもので
あるため、この楽音波形MWに含まれている各次数の高調
波成分の振幅の比率も、時間の経過と共に変化するが、
この場合比較的短い時間の間は音色の極端な変化はない
ので、楽音信号の発生から終了までの全期間のうち所定
の期間t0〜tNの間を時点t1、t2……tN-1で区切つてN個
のフレームF1、F2……FNを形成する。なお、時点tN以後
は音色変化がほとんどないので、これに対応する最終フ
レームF(N+1)を設ける。
ここで、第2図の時点t0、t1、t2……tNにおける楽音波
形を構成する各高調波成分の相対的振幅レベルがそれぞ
れ第3図(A)〜(D)に示すような値をとるものとす
る。第2図の第1フレームF1の開始時点t0において、第
3図(A)に示すようなスペクトル分布曲線をもつ1次
〜W次(Wは例えば64である)の1組の高調波係数デー
タQ1を発生する。また、第2フレームF2の開始時点t1
おいて、第3図(B)に示すようなスペクトル分布曲線
をもつ1次〜W次の1組の高調波係数データQ2を発生す
る。以下、同様にして時点t2〜tNにおいて高調波係数デ
ータQ3(第3図(C))〜Q(N+1)(第3図
(D))を発生する。
そして、時点t0〜t1、t1〜t2……tN-1〜tNの間において
発生する各高調波係数データは、それぞれデータQ1から
Q2に、Q2からQ3に……QNからQ(N+1)に順次変化す
るように補間演算を行うことにより求める。
第1の発明の場合時点t0の高調波係数データQ1はそのま
ま発生するが、時点t0以後の高調波係数データは、補間
係数メモリに記憶されている差の係数データを読出し、
この差の係数データを用いて時点t0〜t1、t1〜t2……t
N-1〜tNの間を補間演算をすることによつて発生する。
すなわち、補間係数メモリは、例えば第4図に示すよう
に、順次隣合うフレームの最初の高調波係数データの差
Q2−Q1(第4図(A))、Q3−Q2(第4図(B))……
Q(N+1)−QN(第4図(C))に基づいて決められ
た差の係数データを記憶し、この差の係数データを時点
t0、t1、t2……tNにおいてそれぞれ読出す。そして第
1、第2……第NフレームF1、F2……FNにおいて演算回
路を用いて所定回数(すなわちK1、K2……KN)だけ繰返
し補間演算することによつて各フレームにおいて徐々に
変化する補間データを得、この補間データを時点t0の高
調波係数データQ1と加算して高調波係数データを形成す
る。
このようにすることにより、高調波係数データは各フレ
ームにおいて補間演算をするごとに、当該フレームの開
始時の係数値から次のフレームの開始時の係数値に向つ
て細かいステツプで滑らかに変化して行くことになる。
補間係数メモリに記憶する差の係数データは、具体的に
は一例として次のようなものが用いられる。第1は、第
5図に示すように、第1〜第NフレームF1〜FNの各フレ
ームの開始時点t0〜tN-1において発生すべき高調波係数
データQ1〜QNと、隣りの第2〜第(N+1)フレームの
開始時点t1〜tNにおいて発生すべき高調波係数データQ2
〜Q(N+1)との差を、各フレームにおける補間演算
回数K1〜KNで割つた値を差の係数データとして補間係数
メモリに記憶する。
この場合の補間演算は例えば次のようにして実行され
る。すなわち、例えばM次の高調波係数データについて
説明すると、第1フレームF1の開始時点t0における値L1
(第3図(A))から時点t1の値L2(第3図(B))に
変化するとすれば、補間係数メモリに記憶される差の係
数データはその差L2−L1(第4図(A))を第1フレー
ムF1における補間回数K1で割つた値(L2−L1)/K1にな
り、時点t0〜t1の間(第1フレームF1の間)において補
間演算が繰返されるごとに高調波係数データは値L1から
L2に(L2−L1)/K1づつ変化して行き、時点t1で値L2
なる。
同様にして、補間係数メモリには時点t1〜t2の第2フレ
ームF2について値L3及びL2(第3図(C)及び(B))
の差(L3−L2)(第4図(B))を第2フレームF2にお
ける補間回数K2で割つた値(L3−L2)/K2が差の係数デ
ータとして記憶され、………時点tN-1〜tNの第Nフレー
ムFNについては値LN+1及びLNの差(LN+1−LN)を第Nフ
レームNFにおける補間回数KNで割つた値(LN+1−LN)/
KNが差の係数データとして記憶される。
かくして、高調波係数データは、第2フレームF2におい
て、時点t1における値L2の値から差分(L3−L2)/K2
つ変化して時点t2において値L3になり、………第Nフレ
ームFNにおいて、時点tN-1の値LNから差分(LN+1−LN
/KNづつ変化して時点tNにおいて値LN+1になるように連
続的に順次変化することになる。
また、第2の発明の場合、上述した順次隣合うフレーム
の最初の高調波係数データQ1〜Q(N+1)の差Q2−Q
1、Q3−Q2、……Q(N+1)−QNを差の係数データと
して直接補間係数メモリに記憶する。この場合、演算回
路は、読出されたこの差の係数データに対して各フレー
ムにおいて補間演算を繰返すごとに順次変化して行く重
み係数を乗算して各フレームにおいて時間の経過と共に
変化する補間データを得る。そして各フレームの終了時
における上記乗算結果を表すデータを各次数ごとに一時
記憶し、かつこの一時記憶したデータと、上記乗算結果
と、上記基本係数データとを各次数ごとに加算して上記
各次数ごとの振幅係数を得るようにする。
補間係数メモリに記憶する差の係数データとしては、上
述のものに代えてさらに次のようなものを用いることが
できる。
すなわち、所定の高調波係数データ(例えば、上述の高
調波係数データQ1)を基本係数データとし、この基本係
数データと各フレームの最初において発生すべき高調波
係数データQ1、Q2、……Q(N+1)との差に関するデ
ータを差の係数データとして補間係数メモリに記憶す
る。この場合、補間係数メモリに記憶する差の係数デー
タとしては、上記の各フレームにおける最初の高調波係
数データQ1〜Q(N+1)と基本係数データとの差の値
であつてもよいし、誤差を各フレームにおける補間回数
(K1,K2……KN)で割つた値であつてもよい。前者のよ
うにした場合の演算回路は、読出された差の係数データ
に対して各フレームにおいて補間演算を繰返すごとに順
次変化して行く重み係数を乗算して各フレームにおいて
時間の経過と共に変化する補間データを得、この補間デ
ータを基本係数データと加算することにより高調波係数
データを形成する。また、後者のようにした場合の演算
回路は、読出された差の係数データを各フレームごとに
補間回数に対応して繰返し累算することにより各フレー
ムにおいて時間の経過と共に変化する補間データを得、
これを基本係数データと加算して高調波係数データを形
成する。
このようにすれば、それぞれ時間と共に変化する各次数
の高調波係数を発生するために必要なデータとしては、
楽音信号発生開始時の1組(1次〜W次)の高調波係数
データまたは所定の1組の基本係数データと、各フレー
ムにおいて補間演算に用いられる1組の差のデータだけ
で済み、しかもこの差のデータを構成する各値は十分小
さい値になるので、結局全体としてのメモリ容量を十分
に小容量化し得ることになる。
なお、フレームの分け方は、各次数について同じにして
も良く(上述の説明ではこのようにした)、又は各次数
についてそれぞれ異ならせるようにしても良い。
〔実施例〕
第1実施例 第1図はこの発明による楽音信号発生装置を単音電子楽
器に適用した場合の実施例を示す。この実施例において
は、鍵盤で押鍵されたキーに対応する楽音信号(楽音波
形)の順次サンプル点qRの振幅値X0(qR)が規則的時間
間隔(サンプリング時間)txごとに次の(1)式に従つ
て算出される。
ここで、qは各時間間隔txごとに1、2、……と増大す
る変数であり、nは基本波を含む各高調波成分の次数を
表わし、n=1は基本波(基音)、n=2は第2高調波
(第2倍音)、……n=Wは第W高調波(第W倍音)を
表わす。なお、この実施例ではW=64としている。ま
た、Rは楽音の基本周波数(音高)に対応した数値(以
下、周波数ナンバと呼ぶ)を表わし、A(t)は楽音の
振幅エンベロープを設定するエンベロープ関数を表わ
し、Cnはn次高調波成分に対する高調波係数を表わす。
第1図において、1はキースイツチ回路で、押鍵された
キーに対応するキーデータKDが周波数ナンバメモリ2に
与えられ、押鍵されたキーの音高に対応する数値を有す
る周波数ナンバRが読出されてアキユムレータ3に送出
される。アキユムレータ3はそのクロツク端子CKに計算
区間タイミング信号txが与えられるごとに周波数ナンバ
Rを累算し、この累算データqR(q=1、2、……)を
楽音波形のサンプル点位相を指定する位相データとして
高調波成分発生回路4に送出する。
また、5はクロツク発振器で、そのクロツク信号tcが64
モジユロ構成の次数カウンタ6に与えられ、そのキヤリ
ー出力端から計算区間タイミング信号txを送出する。か
くして、第6図(A)に示すように、64個のクロツクパ
ルス信号tcが発生するごとに計算区間タイミング信号tx
(第6図(B))が得られ、これにより計算区間タイミ
ング信号txの1周期Ttxをクロツク信号tcによつて1次
〜64次の各高調波成分に対応して64個のタイムスロツト
を形成するようになされている。
高調波成分発生回路4は、クロツク信号tcによつて設定
される各タイムスロツトにおいて1次〜64次の各高調波
信号成分について上述の(1)式のうち で表わされる正弦波形データS1を発生し、これを高調波
振幅乗算回路11に与える。なお、高調波成分発生回路4
としては、例えば前述の特公昭58−20039号公報や特開
昭55−43552号公報に開示のものを適用し得る。
高調波振幅乗算回路11には、上述の(1)式の高調波係
数Cnに相当する高調波係数データS2が高調波係数発生回
路7から与えられ、正弦波形データS1と高調波係数デー
タS2とを乗算した乗算出力データS3が楽音信号出力回路
8に与えられる。
この楽音信号出力回路8は、クロツク信号tc、計算区間
タイミング信号txに基づいてデータS3を加算合成して楽
音信号を形成すると共に、キースイツチ回路1から得ら
れるキーオン信号KONに基づいて所定の振幅エンベロー
プを付与して前述の(1)式で表わされる楽音信号S4を
出力し、これがサウンドシステム9において楽音に変換
される。楽音信号出力回路8としては例えば特開昭54−
140523号公報、又は特開昭55−45056号公報に開示のも
のを適用し得る。
この実施例の場合、キースイツチ回路1は各キースイツ
チが押鍵操作されると、第7図(A)に示すように離鍵
されるまでの間論理「1」になるキーオン信号KONを発
生し、このキーオン信号KONの立上りに基づいて計算区
間タイミング信号txをトリガ信号として受ける微分回路
10において計算区間タイミング信号txの周期Ttxを有す
るキーオンパルス信号KONP(第7図(B))を送出する
ようになされている。
高調波係数発生回路7は、第3図(A)について上述し
た基本係数データを記憶する基本係数メモリ21と第4図
(A)〜(C)及び第5図について上述した補間差分デ
ータ(Q2−Q1)/K1、(Q3−Q2)/K2……〔Q(N−
1)−QN〕/KNを記憶する補間差分係数メモリ22を有す
る。各メモリ21及び22は、発生し得る各音色に対応して
上述のデータを格納しており、音色選択回路23の音色選
択信号TCによつて選択された音色に対応する基本係数デ
ータRD及び補間差分係数データDDを読出し得るようにな
されている。
基本係数メモリ21は次数カウンタ6のカウント内容を表
す次数データnをアドレス信号として受け、次数データ
nに従つて1次〜64次の各基本係数データRDを順次読み
出して演算回路24の加算回路25に第1の加算入力信号と
して与える。
補間差分係数メモリ22は、次数カウンタ6の次数データ
n及びフレームデータ発生回路31において発生されるフ
レーム指定データFNOをアドレス信号として受け、フレ
ーム指定データFNOによつて指定されたフレームについ
て、次数データnに従つて1次〜64次の各補間差分係数
データDDを順次読出す。
フレームデータ発生回路31は、補間演算回数をカウント
する繰返し回数カウンタ32を有し、アキユムレータ3に
おいて発生されるキヤリー信号CAによつてカウント動作
するカウンタでなる。ここで、アキユムレータ3はその
累算出力が最大値を越えたとき(すなわちオール「0」
又はオール「1」になつたとき)、キヤリー信号CAを発
生する。アキユムレータ3は周波数ナンバデータRを累
算して行くことにより、楽音波形の1周期分の時間が経
過するごとに最大値に到達するようになされており、か
くして繰返し回数カウンタ32は楽音波形1周期分の時間
が経過するごとに1づつカウント動作をして行く。その
結果、繰返し回数カウンタ32のカウント内容は各フレー
ムにおける楽音波形の数すなわち演算回路24における繰
返し演算回数を表し、これが繰返し回数カウントデータ
CVとして送出される。
この繰返し回数カウンタ32の繰返し回数データCVは比較
回路33に与えられ、繰返し回数指定回路34の出力端に得
られる繰返し回数データKと比較される。その結果、一
致が得られると、比較回路33から送出される一致検出信
号EQがゲート回路36を通じてフレームカウンタ37のカウ
ント入力端に与えられると共に、遅延回路38を通じ、さ
らにオア回路39を通じて繰返し回数カウンタ32のリセツ
ト入力端Rに与えられるようになされている。なお、繰
返し回数カウンタ32にはオア回路39を通じてキーオンパ
ルス信号KONPが入力され、これにより繰返し回数カウン
タ32がリセツトされる。
繰返し回数指定回路34は、第2図及び第5図について上
述したように、第1、第2……第NフレームF1、F2……
FNについて予め決められている繰返し回数K1、K2……KN
を各音色ごとに記憶するメモリを有し、この記憶データ
を音色選択信号TC及びフレームカウンタ37から到来する
フレーム番号データFNOとによつて読出して、繰返し回
数指定データKとして送出する。従つて比較回路33は各
フレームごとに繰返し回数指定回路34からの繰返し回数
指定データKによつて指定された繰返し回数と、繰返し
回数カウンタ32の繰返し回数カウントデータCVの内容と
が一致したとき(すなわち各フレームが終了するごと
に)、一致検出出力EQを発生して繰返し回数カウンタ32
をリセツトすると共に、フレームカウンタ37をゲート回
路36を介してカウント動作させる。
なお、フレームカウンタ37にはキーオンパルス信号KONP
がリセツト信号として与えられ、かくしてリセツトされ
た後のカウント内容がフレーム指定データFNOとして送
出される。
フレームカウンタ37のフレーム指定データFNOは最終フ
レーム検出回路40に与えられる。最終フレーム検出回路
40はフレーム指定データFNOが(N+1)になつたとき
論理「1」に立上る最終フレーム検出出力FDを送出し、
これをインバータ41を介して反転出力▲▼としてゲ
ート回路36のイネーブル端子に与える。これにより最終
フレームFNが終了したときゲート回路36を閉じることに
より、以後フレームカウンタ37のカウント動作を停止さ
せてフレーム指定データFNOが変化しないようにする。
補間差分係数メモリ22はフレーム指定データFNOによつ
て指定されたフレームに対応する1組の(1次〜64次
の)補間差分係数データDDを次数データnをアドレス信
号として順次読出して行き、ゲート回路42を通じてアキ
ユムレータ43の加算回路44に与える。ここで、補間差分
係数メモリ22から送出される補間差分係数データDDは正
又は負の符号を取り得、加算回路43はこの符号を含んで
加算動作をする。
加算回路44の加算出力S11はゲート回路45を通じて64ス
テージ構成のシフトレジスタ46に与えられる。このシフ
トレジスタ46はクロツク信号tcによつてシフト動作をす
ることによつて、1次〜64次の各高調波についての補間
差分係数データDDが順次到来してくるとこれを順次取込
んで行き、64個のデータが取込まれたとき出力端から加
算回路44に他方の加算入力としてフイードバツクする。
ゲート回路42のイネーブル端子にはアンド回路47から制
御信号S12が与えられる。アンド回路47はインバータ41
の反転出力▲▼が論理「1」であること(換言すれ
ば最終フレームになつていないこと)を条件として、ア
キユムレータ3のキヤリー信号CAが立上つたタイミング
で微分回路48(タイミング信号txによつて動作して)か
ら計算区間Ttxの間論理「1」になる微分出力S13によつ
て立上る制御信号S12によつて開制御され、かくして楽
音波形の1周期が経過するごとにゲート回路42を通じて
アキユムレータ43に1次〜64次の各補間差分係数データ
DDを与える。
その結果、加算回路44は1次〜64次の各次数について、
シフトレジスタ46に記憶されている1周期前の加算出力
S11に対してゲート回路42を通じて到来する補間差分係
数データDDを順次加算して行く。このようにして、アキ
ユムレータ43は補間差分係数メモリ22から送出される各
次数の補間差分係数データDDをそれぞれ計算区間タイミ
ング信号txの1周期Ttxごとに順次累算して行くことに
なる。
この累算データはゲート回路45の出力端から取出され、
加算回路25に差分累算係数データDSとして与えられる。
加算回路25はこの差分累算係数データDSを基本係数デー
タRDと加算し、その加算結果を高調波係数発生回路7の
高調波係数データS2として高調波振幅乗算回路11に送出
する。
ここで、ゲート回路45はゲート制御回路49の制御信号S1
4をインバータ50を介して受ける。ゲート回路45は、繰
返し回数カウンタ32の繰返し回数カウントデータCV及び
フレームカウンタ37のフレーム指定データFNOを受け
て、フレーム指定データFNOが「1」(第1フレームF1
が指定されている)、かつ繰返し回数カウントデータCV
が「0」(新たなフレームが開始したことを意味する)
のとき、閉制御される。かくして、第1フレームF1の最
初の楽音波形1周期の間ゲート回路45を閉動作させるこ
とによつて、加算回路25に差分累算係数データDSを与え
ないようにすると共に、シフトレジスタ46の各ステージ
の記憶データをクリアする。
以上の構成において、キーが操作されると、微分回路10
を通じて得られるキーオンパルス信号KONPによつて繰返
し回数カウンタ32及びフレームカウンタ37がリセツトさ
れる。これにより、フレーム指定データFNOが第1フレ
ームF1を指定する状態になると共に、繰返し回数カウン
トデータCVが0になる。
一方、押鍵されたキーに対応する周波数ナンバRがアキ
ユムレータ3に与えられることにより、この周波数ナン
バRに対応する音高で1次〜64次の各高調波成分の正弦
波形データS1が高調波成分発生回路4から順次発生され
て高調波振幅乗算回路11に送出される。
また、クロツク発振回路5から送出されるクロツク信号
tcに基づいて次数カウンタ6がカウント動作することに
よつて送出される次数データnが基本係数メモリ21及び
補間差分係数メモリ22に対するアドレス信号として与え
られ、1次〜64次の各高調波に対する発音開始時の高調
波係数データQ1(第3図(A))でなる基本係数データ
RDが基本係数メモリ21から順次読出されて加算回路25に
与えられると共に、第1フレームF1についての1次〜64
次の各高調波に関する補間差分データ(第4図(A))
でなる補間差分係数データDDが順次アキユムレータ43に
与えられる。
このとき、高調波係数発生回路7のアキユムレータ43に
おいてゲート制御回路49が繰返し回数カウントデータCV
が0かつフレーム指定データFN0が1であることに応動
してインバータ50を介してゲート回路45を閉状態に制御
する。従つて、アキユムレータ43は差分累算係数データ
DSを送出しない状態に制御される。
このようにして押鍵操作時においては、演算回路24の加
算回路25に対して基本係数メモリ21の基本係数データRD
だけが与えられ、これが高調波係数データS2として高調
波振幅乗算回路6に送出される。
この状態において、次数カウンタ6はクロツク発振回路
5のクロツク信号tcを64個カウントするごとに計算区間
タイミング信号txを発生し、このタイミング信号txに基
づいてアキユムレータ3が楽音波形のサンプリング位置
を順次指定する累算データqRを高調波成分発生回路4に
与える。高調波成分発生回路4はクロツク信号tcによつ
て形成された1次〜64次の各タイムスロツトにおいて第
1高調波成分〜第64高調波成分の正弦波形データS1を順
次時分割的に発生して高調波振幅乗算回路11に与える。
一方、基本係数メモリ21からはクロツク信号tcに従つて
1次〜64次の各高調波係数データQ1(第3図(A))が
順次読出され、これが加算回路25を通じて高調波係数デ
ータS2として高調波振幅乗算回路11に与えられ、かくし
て高調波振幅乗算回路11から、楽音波形の第1周期目の
1次〜64次の各高調波成分の各サンプル点振幅値に対し
て、それぞれ1次〜64次の高調波係数データをそれぞれ
乗算してなる乗算データ出力S3が得られることになる。
やがて、アキユムレータ3が楽音波形1周期分の累算を
終えキヤリー信号CAを送出すると、繰返し回数カウンタ
32がカウント動作して繰返し回数カウントデータCVを0
から1に変化させる。このときゲート制御回路49が応動
して出力を論理「0」に立下げることによつてゲート回
路45を開状態に制御する。そこで、補間差分係数メモリ
22の補間差分係数データDDがゲート回路42、加算回路4
4、ゲート回路45を通じて差分累算係数データDSとして
送出される。このとき補間差分係数メモリ22に対するフ
レーム指定データFNOの内容は1であるので、補間差分
係数メモリ22から第1フレームF1に対応する1次〜64次
の補間差分データ(Q2−Q1)/K1が順次読出されて行
く。
従つて、演算回路24の加算回路25には基本係数メモリ21
の基本係数データRDと差分累算係数データDSとが与えら
れることにより、その加算結果が高調波係数データS2と
して高調波振幅乗算回路11に送出される。これと同時に
高調波成分発生回路4は第2周期目の1次〜64次の各高
調波成分についての正弦波形データS1を出力するので、
高調波振幅乗算回路11はこの第2周期目の各高調波成分
に対して高調波係数データQ1(第3図(A))から1ス
テツプ(Q2−Q1)/K1分だけ高調波係数データQ2(第3
図(B))に近づくように変化したスペクトル分布曲線
をもつ高調波係数データS2が乗算されることになる。
例えば、M次の高調波係数について、第8図に示すよう
に、第1周期目の楽音波形が終了した時点t01において
高調波係数データS2の内容がL1から(L2−L1)/K1分だ
け増大する。
以下同様にして、楽音波形の1周期が終了するごとに、
キヤリー信号CAがアキユムレータ3から繰返し回数カウ
ンタ32に与えられることにより、繰返し回数カウントデ
ータCVの値が1づつ上昇して行くが、フレームカウンタ
37のフレーム指定データFNOは変化しないので、補間差
分係数メモリ22は引続き第1フレームの補間差分係数デ
ータを送出し続ける。
ところが、ゲート回路42はキヤリー信号CAが発生する
と、その都度計算区間タイミング信号txの1周期Ttx
間だけアンド回路47の出力によつて開制御されるので、
補間差分係数メモリ22からアキユムレータ43に1次〜64
次の各次数についての補間差分データDDが1回だけ入力
されることになる。このとき、アキユムレータ43はデー
タDDが入力されるごとに、これをシフトレジスタ45から
順次送出されてくるデータと各タイムスロツトごとに加
算して差分累算係数データDSとして送出すると同時に、
シフトレジスタ46−加算回路44−ゲート回路45−シフト
レジスタ46のループを通じて循環記憶する。
かくして、アキユムレータ43は、楽音波形1周期が終了
するごとに、補間差分係数メモリ22から読出される補間
差分係数データDDを累算することになる。
その結果、第1フレームF1において、例えばM次の高調
波係数について第8図に示すように、アキユムレータ43
の累算動作によつて差分累算係数データDSの内容は、楽
音波形の1周期が終了する時点t02、t03……ごとに補間
差分データ(L2−L1)/K1だけ1ステツプづつ上昇して
行くことになる。
このようにして上昇して行く差分累算係数データDSは加
算回路25において基本係数データRDと加算して高調波係
数データS2として送出される。その結果、サウンドシス
テム9において発生される楽音の音色が実用上連続的に
変化して行く。
やがて、繰返し回数カウンタ32のカウント内容が繰返し
回数指定回路34において指定された繰返し回数K(K1
と一致すると、比較回路33から一致検出出力EQが送出さ
れる。このときこの一致検出出力EQはゲート回路36を通
じてフレームカウンタ37をカウント動作させることによ
りフレーム指定データFNOの内容を1から2に変化させ
る。かくして高調波係数発生回路7は第1フレームの係
数発生動作を終了して次の第2フレームに入る。
これと共に一致検出出力EQは遅延回路38において1計算
区間Ttxだけ遅延された後、オア回路39を通じて繰返し
回数カウンタ32をリセツト動作させて繰返し回数カウン
トデータCVの内容を0に戻す。
ここで、補間差分係数メモリ22はフレーム指定データFN
Oが2に変化したことにより、補間差分係数データDDと
して第2フレームF2に対応して設定された補間差分係数 を読出す状態に制御される。このときも、アキユムレー
タ3からキヤリー信号CAが与えられたことにより、計算
区間タイミング信号txの1周期Ttxだけゲート回路42を
開いて新たな補間差分係数データDDがアキユムレータ43
に入力される。従つて、アキユムレータ43は第2フレー
ムF2に入ると、補間差分係数データDD2を第1フレーム
における累算結果にさらに累算して行く状態になる。
そこで、高調波係数データS2は、例えばM次の高調波係
数について第8図に示すように、第2フレームに入つた
時点t1から楽音波形の1周期が終了する時点ごとに、補
間差分係数データ(L3−L2)/K2だけ変化して行くこと
になる。なお、第4図(B)の場合、差分データL3−L2
は負極性であるので差分累算係数データDSは第1フレー
ムの累算結果から補間差分係数データDDだけ1ステツプ
づつ低下して行くことになる。
このような動作は、繰返し回数指定回路34の繰返し回数
指定データKの内容が第2フレームについての値K2に切
換られていることにより、繰返し回数カウンタ32の繰返
し回数カウントデータCVがこの値K2と一致するまで続け
られる。従つて、高調波係数発生回路7から出力される
第2フレームF2についての各次数の高調波係数データS2
の値は、それぞれ第1フレームF1の変化とは異なるステ
ツプ値で変化して行くことになり、それによりサウンド
システム9から発生される楽音の音色を第1フレームの
変化の仕方とは異なる変化の仕方で変化させることがで
きる。
以下、第3フレームF3……第NフレームFNについても同
様の動作が繰返され、やがて第2図の時点tNにおいて第
NフレームNFが終了すると、フレームカウンタ37のフレ
ーム指定データFNOの内容が(N+1)になり、これを
最終フレーム検出回路40が検出する。この検出出力FDは
ゲート回路36を閉じることにより、その後フレームカウ
ンタ37はカウント動作をできなくなり、フレーム指定デ
ータFNOの内容が固定される。
このとき、補間差分係数メモリ22は補間差分係数データ
DDとして数値データ0を出力する。そこで、アキユムレ
ータ43は実質上新たな累算動作を行なわないことにな
り、結局第(N+1)フレームにおいては第Nフレーム
の最終周期における累算結果がそのまま記憶保持され
る。
そこで、例えばM次の高調波係数については第8図に示
すように、第NフレームFNにおいて最後に補間差分デー
タ(LN−LN-1)/KNをアキユムレータ43において累算し
た結果得られる値LNを、時点tN以後の第(N+1)フレ
ームF(N+1)においても維持する状態になる。
この結果、サウンドシステム9から発生される楽音の音
色はキーが離鍵操作されるまで同一音色の状態に維持さ
れる。
以上のように第1図の構成によれば、楽音信号に含まれ
る各高調波成分の振幅を各フレームごとに変化させると
同時に、同一フレーム内においても連続的に変化させる
ことができるので、自然楽器における楽音に近似した楽
音をサウンドシステム9から発生させることができる。
かくするにつき、基本係数メモリ21には1次〜64次の基
本高調波係数データQ1(第4図(A))を1組だけ記憶
しておけば良く、その他の記憶データとしては各フレー
ムごとに変化幅の小さい1組の補間差分データを補間差
分係数メモリ22に記憶するだけで済むので、高調波係数
発生回路7全体としてのメモリ容量を容易に小容量化し
得る。
第2実施例 第9図はこの発明の他の実施例を示すもので、フレーム
数及び各フレームにおける繰返し回数を各次数ごとに設
定できるようにしたものである。かくして、高調波係数
の変化が複雑な次数については、楽音信号の発生から終
了までを多数のフレームに分けると共に、各フレームの
長さを短かくする。これに対して高調波係数の変化が比
較的単調に変化する次数については少ないフレームに分
けて各フレームの長さを長くする。
この実施例の場合この高調波係数の変化は、第5図につ
いて上述した繰返し回数K1〜KNをそれぞれ次数ごとに必
要に応じて異なる値に選定し、かくして各フレームにお
ける補間差分データを互いに異ならしめるように設定す
る。
第1図との対応部分に同一符号を付して示す第9図にお
いて、繰返し回数カウンタ32は64ステージのシフトレジ
スタ55を有する。シフトレジスタ55はクロツク信号tc
よつてシフト動作し、これにより入力されたデータを計
算区間タイミング信号txの1周期分の時間Ttxだけ遅延
して出力する。シフトレジスタ55の出力は加算回路56に
おいて「+1」加算入力S15と加算され、その加算結果
がゲート回路57を通じてシフトレジスタ55の入力端に戻
される。これによりシフトレジスタ55の入力端にはシフ
トレジスタ55から1次〜64次の繰返し回数データが出力
されるごとにそのデータに「+1」したデータが得られ
る。このシフトレジスタ55への入力データは繰返し回数
カウントデータCVとして比較回路33に与えられる。「+
1」加算入力S15はキヤリー信号CAを微分回路60におい
て微分してタイミング信号txの1周期Ttxの間立上る信
号として得られる。
一方、繰返し回数指定回路34は第1〜第64次の各高調波
に対応する繰返し回数指定データを予め格納しており、
このデータを次数カウンタ6の次数データnによつて指
定して読出すことができるようになされている。
そこで、比較回路33は1次〜64次の各高調波に対応する
各タイムスロツトにおいてそれぞれ繰返し回数カウント
データCVと繰返し回数指定データKとを比較することに
なる。
従つて、各次数に対応するタイムスロツトごとに比較回
路33から一致検出出力EQが得られ、これが遅延回路37に
おいて計算区間タイミング信号txの1周期分の時間Ttx
だけ遅延された後オア回路58を介してインバータ59に与
えられ、その出力がゲート回路57のイネーブル端子に与
えられる。これにより、一致検出出力EQが得られたタイ
ムスロツトにおいて、ゲート回路57を閉動作させてシフ
トレジスタ55の当該タイムスロツトに対応する次数のデ
ータを0にリセツトさせる。
これに加えて、ゲート回路57のイネーブル端子にはオア
回路58、インバータ59を通じて反転したキーオンパルス
信号KONPが与えられ、これによりいずれかのキーが操作
されたとき計算区間タイミング信号txの1周期区間Ttx
の間ゲート回路57を閉動作してシフトレジスタ55の全て
のステージを0にリセツトする。
これに対して、フレームカウンタ37は繰返し回数カウン
タ32と同様にシフトレジスタ61、「+1」加算回路62、
ゲート回路63を有し、加算回路62の「+1」加算入力と
して比較回路33の一致検出出力EQがゲート回路36を通じ
て与えられる。ゲート回路63のイネーブル端子にはキー
オンパルス信号KONPがインバータ64によつて反転されて
与えられ、いずれかのキーが操作されたとき計算区間タ
イミング信号txの1周期Ttxの間ゲート回路63が閉動作
することにより、シフトレジスタ61の1次〜64次のフレ
ーム指定データFNOが全て0にリセツトされる。その後
比較回路33に一致検出出力EQが得られるごとに加算回路
62がシフトレジスタ61の出力端に得られるデータに数値
データ「+1」が加算される。
ここで、比較回路33は1次〜64次に対応する各タイムス
ロツトごとにそれぞれ一致検出出力EQを送出するので、
シフトレジスタ61の1次〜64次のフレーム指定データFN
Oの内容は各次数ごとに独立して変更されて行く。従つ
て、補間差分係数メモリ22から読出される補間差分係数
データDDも各次数ごとにそれぞれ異なるフレームに関す
るものとなる。
さらに、最終フレーム検出回路40は次数カウンタ6の次
数データnを受けて各次数ごとに予め記憶されている最
終フレームを表すデータと、フレーム指定データFNOと
を各次数に対応するタイムスロツトにおいてそれぞれ検
出する。この結果、フレーム指定データFNOのうち最終
フレームに到達した次数のタイムスロツトにおいて最終
フレーム検出信号FDが得られると、当該タイムスロツト
の間だけゲート回路36を閉動作させることによつて当該
タイムスロツトに対応する次数のフレーム指定データFN
Oに対する「+1」加算動作を実行できないように制御
する。
以上の構成において、いずれかのキーが操作されると、
このとき発生されるキーオンパルス信号KONPによつて繰
返し回数カウンタ32のゲート回路57が閉制御されると共
に、フレームカウンタ37のゲート回路63が閉制御され
る。従つて、繰返し回数カウンタ32はアキユムレータ3
からキヤリー信号CAが発生されるごとに微分回路60から
計算区間タイミング信号txの1周期Ttxの間与えられる
「+1」入力S15によつてシフトレジスタ55の各次数に
対応するタイムスロツトのデータに対して加算動作が繰
返され、かくして各次数の繰返し回数カウントデータCV
の内容が楽音波形の1周期ごとに1づつ大きくなつて行
く。
これに対して、フレームカウンタ37のゲート回路63がキ
ーオンパルス信号KONPによつて閉動作することによつ
て、シフトレジスタ61の各ステージの内容が0にクリア
される。従つてフレームカウンタ37は第1フレームF1を
内容とする各次数ごとのフレーム指定データFNOを繰返
し回数指定回路34に送出する。
このとき、繰返し回数指定回路34は各タイムスロツトご
とに指定される次数データnによつて読出された繰返し
回数指定データKを比較回路33に送出する。かくして比
較回路33において各タイムスロツトにおいて各次数ごと
にそれぞれ第1フレームF1について設定された繰返し回
数と、繰返し回数カウンタ32の内容が一致したかどうか
を検出して行く。やがて、いずれかのタイムスロツトに
おいて一致検出出力EQが得られると、これが「+1」加
算データとしてフレームカウンタ37の加算回路62に与え
られ、シフトレジスタ61の当該タイムスロツトの次数に
対応する内容に数値1を加算する。
これと同時に当該タイムスロツトの一致検出出力EQが遅
延回路38、オア回路58、インバータ59を通じてゲート回
路57に与えられ、これにより当該タイムスロツトの次数
に対応するレジスタ55の内容を0にクリアさせる。従つ
て、繰返し回数カウンタ32は当該次数について新なカウ
ント動作を開始する。
以下同様にして、各次数に対応するタイムスロツトごと
に一致検出信号EQが得られると、当該タイムスロツトの
次数についてフレームカウンタ37のレジスタ61の内容を
1だけ増大させると共に、繰返し回数カウンタ32の繰返
し回数データを0にクリアして新なカウントを開始させ
て行く。これにより、フレーム指定データFNOの内容が
各次数ごとに1だけ増大して繰返し回数指定回路34に対
して第2フレームF2を指定すると共に、当該第2フレー
ムF2における各次数の繰返し回数を繰返し回数カウンタ
32においてカウント開始させる。
かかる動作は以後繰返され、やがて各次数のフレーム指
定データFNOのうちの1つが最終フレームになると、こ
れを最終フレーム検出回路40が検出して最終フレーム検
出信号FDによつてゲート回路36を閉動作させると共に、
演算回路24のゲート回路42を閉動作させる。これによ
り、フレームカウンタ37は当該次数については以後1加
算を行わないように制御する。これと同時に、アキユム
レータ43においても同様に新たな累算を行わないように
制御することによつて以後同じ値の差分累算係数データ
DSを送出させる。
かかる動作は各次数に対応するフレーム指定データFNO
の内容が最終フレームに到達するごとに当該次数につい
て行なわれ、かくして1次〜64次の全部についての高調
波係数データS2の発生を終了する。
以上のように第9図の構成によれば、1次〜64次の各次
数それぞれについて、各フレームの繰返し回数を必要に
応じて任意に設定できると共に、フレームの数も各次数
ごとに互いに独立に設定できるので、サウンドシステム
9において発生される楽音の発生時から終了に至るまで
の音色の変化を自然楽器の音にさらに一段と近づけるこ
とができる。
因に、自然楽器においては高次の高調波成分ほど速い変
化をする傾向があると共に、楽音の立上り時には高次の
高調波成分の振幅が大きい傾向があるが、第9図の構成
によれば、各フレームにおいて次数ごとに高調波成分の
変化が異なることに基づいて音色が変化する現象を容易
に実現し得る。
第3実施例 第10図は第3の実施例を示す。第1図及び第9図の実施
例においては、隣合うフレームについての高調波係数の
差分を当該フレームにおける繰返し回数で割つた補間差
分係数を各次数ごとに補間差分係数メモリ22に記憶した
が、第10図の場合はこれに代え、隣合うフレームにおけ
る高調波係数の差分を各次数ごとに直接記憶する差分係
数メモリ67を設ける。
差分係数メモリ67から読出された差分係数データDF1は
最終フレーム検出信号FDをインバータ68を通じてイネー
ブル端子に受けるゲート回路69を通じて乗算回路70に与
えられる。この乗算回路70は乗算係数発生回路71から与
えられる乗算係数データMCをデータDF1に乗算し、その
乗算結果を加算回路72に第1の加算入力として与える。
繰返し回数カウントデータCVは各フレームにおいて楽音
波形の1周期が終了するごとに0からKに向つてCV/
(K−1)づつ増大して行くので、乗算係数データMC
(MC=CV/(K−1)はこれに応じて0から1に向つて
増大して行くことになる。そこで乗算回路70の出力端に
得られる差分係数データMSXは各フレームごとに0から
差分係数データDF1に変化して行くことになる。
これに対して、基本係数メモリ21の基本係数データRDは
ゲート回路73を通じて第2の加算入力として加算回路72
に与えられる。ゲート回路73のイネーブル端子にはキー
オンパルス信号KONPが与えられ、これによりいずれかの
キーが操作された後の最初のタイミング信号txの1周期
の時間Ttxだけゲート回路73が開動作して基本係数デー
タRDが加算回路72に第2の加算入力として与えられる。
加算回路72の加算出力は高調波係数データS2として高調
波振幅乗算回路11に送出されるが、この高調波係数デー
タS2はセレクタ74のA入力端に与えられる。セレクタ74
の選択出力は64ステージ構成のシフトレジスタ75に入力
される。シフトレジスタ75はクロツク信号tcよつてシフ
ト動作し、かくしてシフトレジスタ75の入力端に順次到
来する各次数のデータがタイミング信号txの1周期Ttx
分だけ遅延され、記憶データMRとしてゲート回路76を通
じて加算回路72に第3の加算入力として与えられると共
に、セレクタ74のB入力端に与えられる。
セレクタ74にはA入力選択信号として一致検出信号EQ及
びキーオンパルス信号KONPがオア回路77を通じて与えら
れ、またB入力選択信号としてオア回路77の出力がイン
バータ78によつて反転されて与えられる。
かくして、セレクタ74はいずれかのキーが操作されたと
き、高調波係数データS2(基本係数データRD)を選択し
てシフトレジスタ75に取込み、その後シフトレジスタ75
の出力をセレクタ74を介してシフトレジスタ75の入力端
にフイードバツクすることによつて循環的に記憶し、か
くして各フレームが終了するごとに発生する一致検出信
号EQによつて再度高調波係数データS2をセレクタ74を通
じてシフトレジスタ75に取込み、その後次の一致検出信
号EQが得られるまでこのデータを循環的に記憶する。
ゲート回路76のイネーブル端子にはキーオンパルス信号
KONPがインバータ79を介して与えられ、キーオンパルス
信号KONPが到来したときだけゲート回路76を閉動作させ
るようになされている。
第10図の構成において、いずれかのキーが操作されてキ
ーオンパルスKONPが発生すると、ゲート回路73が開いて
基本係数メモリ21の基本係数データRDが各タイムスロツ
ト(各次数)ごとに加算回路72に入力される。このとき
ゲート回路76はキーオンパルス信号KONPによつて閉制御
され、シフトレジスタ75の出力は加算回路72には与えら
れない。これに対して差分係数メモリ67の差分係数デー
タDF1はゲート回路69を通じて乗算回路70において乗算
係数データMCと乗算されて重みづけされ、差分係数デー
タMSXとして加算回路72に与えられる。ところが初期時
には繰返し回数カウントデータCVの値は0であるので差
分係数データMSXも0となり、結局加算回路72は基本係
数データRDをそのまま高調波係数データS2として送出す
る。この状態においてセレクタ74はB入力端のデータす
なわちシフトレジスタ75の出力端のデータMRを選択して
シフトレジスタ75の入力にフイードバツクし、かくして
シフトレジスタ75が基本係数データRDを循環記憶する状
態になる。
この初期時においては、セレクタ74がキーオンパルス信
号KONPによつてA入力を選択しているので、この高調波
係数データS2がセレクタ74を通じてシフトレジスタ75に
順次取込まれて行く。
やがて、キーオンパルス信号KONPの立上り区間が過ぎる
と、ゲート回路73が閉動作して基本係数データRDが加算
回路72に入力されなくなると同時に、インバータ79を介
してゲート回路76が開動作することにより、シフトレジ
スタ75のデータMRがゲート回路76を通じて加算回路72に
入力される。これにより基本係数データRDに基づいて決
まる1次〜64次の高調波係数でなる高調波係数データS2
が送出される。
ここで、シフトレジスタ75から加算回路72に入力される
データMRは1計算区間Ttx前のデータすなわち基本係数
データRDであり、加算回路72はこの基本係数データRDに
差分係数データMSXを加算する状態になる。この場合、
繰返し回数カウンタ32がカウント動作することによつて
繰返し回数カウントデータCVが0から1に変化するの
で、乗算係数データMCの値が1/(K−1)に変化し、こ
の分差分係数データMSXの値が1ステツプだけ大きくな
る。この差分係数データMSXは記憶データMR(MR=RD)
と加算され、かくして高調波係数データS2が差分係数デ
ータMSXが変化した分変化することになる。
以後、楽音波形の1周期が経過するごとに繰返し回数カ
ウントデータCVが1づつ増大して行くことによつて乗算
係数データMCが1ステツプづつ増大して行くので、差分
係数データMSXはこれに応じて1/(K−1)づつ変化し
て行く。従つて高調波係数データS2は基本係数データRD
の値(第3図(A))から第2フレームF2の最初の値
(第3図(B))に近づいて行く。
やがて、第1フレームF1の繰返し回数K1だけ楽音波形が
発生されて比較回路33において一致検出信号EQが得られ
ると、その一致検出信号EQによつてセレクタ74がA入力
を選択することにより第1フレームF1の最後の高調波係
数データS2をシフトレジスタ75に取込む。一方、フレー
ム指定データFNOが1だけ増大することにより差分係数
メモリ67から第2フレームF2に関する新たな差分係数デ
ータDF1が出力される。従つて、演算回路24は第2フレ
ームF2において第1フレームF1の最後の高調波係数デー
タS2に対して乗算係数データMCの変化に基づいて得られ
る差分係数データMSXを加算して得られる高調波係数デ
ータS2を送出することになる。
以下同様にして、第3……第NフレームF3……FNについ
ての演算を演算回路24が実行し、かくして第2図〜第5
図について上述した補間演算に基づいて連続的に変化す
る高調波係数データを得ることができ、これにより自然
楽器に近い音色変化を呈する楽音を形成することができ
る。
なお、第10図において乗算係数発生回路71として乗算係
数データMCをCV/(K−1)の演算式に基づいて得るよ
うにした場合について述べたが、この演算式は必要に応
じて変更することができる。
また、乗算係数発生回路71において乗算係数データMCを
形成するにつき、乗算係数データをルツクアツプテーブ
ルを構成する乗算係数メモリに記憶させ、これを繰返し
回数カウントデータCV及び繰返し回数指定データKによ
つて読出すようにしてもよい。
第4実施例 演算回路24として第11図の構成のものを適用し得る。こ
の場合、差分係数メモリ81は、第1〜第NのフレームF1
〜FNにおける高調波係数と所定の基本係数との差分デー
タをそれぞれ第1〜第Nフレームに対応させて予め記憶
している。そして、フレーム指定データFNOによつて1
つのフレームが指定されたとき、当該フレームの差分係
数データDF2と当該フレームのフレーム番号より1だけ
大きいフレーム番号の差分係数データDF3を同時に読出
す。第1の差分係数データDF2は直接加算回路82に第1
の加算入力として与えられる。
これに対して、第1及び第2の差分係数データDF2及びD
F3が減算回路83において減算され、その減算出力が乗算
係数発生回路85において発生される乗算係数データMCと
乗算される。乗算係数発生回路85は第10図について上述
した乗算係数発生回路71と同じ構成のものを適用し得
る。従つて、乗算回路84の出力端には差分係数データDF
3及びDF2の減算値に乗算係数CV/(K−1)を乗算する
ことによつて繰返し回数カウントデータCVが変化するご
とに1ステツプづつ変化する補間差分データDSYが得ら
れ、これがゲート回路86を通じて加算回路82に第2の加
算入力として与えられる。
このゲート回路86には最終フレーム検出信号FDがインバ
ータ87により反転されてイネーブル信号として与えられ
ているので、最終フレームが検出されたときは差分補間
データDSYを加算回路82に与えないようになされてい
る。
加算回路82は第3の加算入力として基本係数メモリ21の
基本係数データRDを受け、その加算出力を高調波係数デ
ータS2として送出する。
第11図の構成において、演算回路83は各フレームごと
に、当該フレームと続くフレームの差分係数データDF2
及びDF3の差のデータDF3−DF2を得ることにより、当該
フレームの間に変化すべき差分係数の範囲が求められ、
この変化範囲に対して繰返し回数カウントデータCVに応
じて1ステツプづつ変化する乗算係数データMCが乗算さ
れることにより、差分係数データDF2から差分係数デー
タDF3への変化分を表す差分補間データDSYが得られるこ
とになる。
この変化する補間差分データDSYが加算回路82において
差分係数データDF2及び基本係数データRDと加算される
ので、その結果得られる当該フレームにおける高調波係
数データS2としては、当該フレームの最初の値から次の
フレームの最初の値との間を繰返し係数Kに基づいて連
続的に変化する内容をもつことになる。
この場合にも、最終フレーム検出信号FDによつてゲート
回路86が閉動作することにより、最終フレームが経過し
た後には当該最終フレームについての差分係数データDF
2と基本係数データRDとの和によつて決まる高調波係数
データS2が引続き出力されることになる。
このように第11図の構成によつても、各フレームごとに
異なる変化率で変化する各次数の高調波係数データS2を
得ることができる。かくするにつき、係数データの記憶
手段としては基本係数メモリ21と、差分係数メモリ81と
を設けるだけで済み、特に差分係数メモリ81のデータと
して十分小さい値のデータを記憶すれば良いので全体と
してのメモリの小容量化を実現し得る。
なお、この第11図において、減算回路83の出力データを
各フレームごとに予めメモリ81に記憶しておけばこの減
算回路83は不要となる。
第5実施例 第12図は演算回路24の他の実施例を示すものである。第
12図において、メモリは第1図の実施例の場合と同様の
基本係数メモリ21及び補間差分係数メモリ22を有し、補
間差分係数データDDを第1図の場合と同様にゲート回路
42を通じて加算回路91に第1の加算入力として与える。
また、基本係数メモリ21の基本係数データRDがゲート回
路92を通じて加算回路91に第2の加算入力として与えら
れる。
この実施例の場合、加算回路91の加算出力端に得られる
高調波係数データS2が64ステージ構成のシフトレジスタ
93に入力されると共に、その出力がゲート回路94を通じ
て第3の加算入力として加算回路91に与えられる。
ゲート回路92はキーオンパルス信号KONPによつて開いて
基本係数データRDを1計算区間Ttxの間加算回路91に与
える。またゲート回路94にはキーオンパルス信号KONPが
インバータ95によつて反転されて与えられる。これによ
りキーオンパルスKONPの立上り区間以外の区間において
ゲート回路94を開いてシフトレジスタ93のデータを加算
回路91に与える。
第12図の構成において、いずれかのキーが操作されたと
き、キーオンパルス信号KONPによつて基本係数メモリ21
から基本係数データRDが加算回路91に入力され、これが
高調波係数データS2として出力されると共に、シフトレ
ジスタ93に順次取込まれる。やがてキーオンパルスKONP
が立下ると、ゲート回路92が閉制御されると共に、ゲー
ト回路94が開制御され、これによりシフトレジスタ93に
記憶されているデータすなわち基本係数データRDが加算
回路91に与えられる。このとき加算回路91はこのシフト
レジスタ93から到来するデータを高調波係数データS2と
して送出すると共に、再度シフトレジスタ93に取込む。
かかる動作は楽音波形1周期の間繰返され、やがてこの
1周期が経過してアキユムレータ3からキヤリー信号CA
が発生するまで維持される。
やがて、キヤリー信号CAが微分回路48に到来すると、1
計算区間Ttxの間アンド回路47を通じてゲート回路42が
開制御される。従つて、補間差分メモリ22から読出され
ている第1フレームF1の差分係数データDDがゲート回路
42を介して加算回路91に与えられ、シフトレジスタ93に
記憶されていた基本係数データRDと加算されて高調波係
数データS2として送出されると共に、シフトレジスタ93
に順次取込まれる。やがて1計算区間Ttxが過ぎると、
ゲート回路42が閉制御され、シフトレジスタ93に取込ま
れていたデータがゲート回路94、加算回路91、シフトレ
ジスタ93のループを通じて循環記憶される。
以下、第1フレームF1について楽音波形の1周期が過ぎ
るごとに到来するキヤリー信号CAによつてゲート回路42
が開制御されるごとに、補間差分メモリ22から補間差分
係数データDDが加算回路91に供給され、これがシフトレ
ジスタ93に記憶されているデータに加算されて行く。そ
の結果高調波係数データS2の内容が補間差分メモリ22の
補間差分係数データDD分づつ変化して行く。
やがて、第1フレームF1の終了に伴なつて比較回路33か
ら一致検出信号EQが得られてフレームカウンタ36がカウ
ント動作をする(第1図)と、補間差分メモリ22から出
力される補間差分係数データDDが第2フレームF2につい
て記憶されている値に切換えられ、このデータに基づい
て第2フレームF2についての高調波係数データS2の形成
演算が行なわれる。
以下同様にして、フレームカウンタ37がカウント動作し
てフレーム指定データFNOが変化するごとに、補間差分
係数メモリ22から送出される補間差分係数データDDが変
更されて新たなフレームについての高調波係数データS2
の形成演算動作が実行され、やがて最終フレームになる
と、これを最終フレーム検出回路39が検出することによ
つてゲート回路42が閉制御される。従つて加算回路91の
出力端に得られる高調波係数データS2の内容はシフトレ
ジスタ93に記憶されているデータのみになり、かくして
以後最終フレームについて演算された高調波係数データ
S2が引続き出力される。
従つて、第12図の構成によつても、上述した各実施例と
同様にして、各フレームごとに各次数についての高調波
係数データS2を連続的に変化させることができ、かくす
るにつきメモリには1組の基本高調波係数データと、各
フレームごとに1組の補間差分係数データとを記憶する
だけで済み、特に補間差分係数データの値は小さいの
で、全体としてのメモリ容量を小容量化することができ
る。
変形例 上述の実施例について、以下に述べる変形を加えても上
述の場合と同様の効果を得ることができる。
(1)上述の実施例においては、この発明を単音電子楽
器に適用した場合について述べたが、複音電子楽器に適
用しても良い。この場合には、上述した各種回路を複数
音分並列に設けて同時処理するように構成しても良く、
又は複数音について時分割的に処理するように構成して
も良い。
(2)上述の実施例の場合は、全ての次数についての高
調波成分があるものとして対応するタイムスロツトを設
けるようにしたが、一部の次数の高調波成分だけを有す
る楽音信号を発生する場合にもこの発明を適用し得る。
この場合には、例えば特開昭54−140523号公報に開示さ
れているような技術を用いて構成すればよい。
(3)上述の実施例においては、周波数ナンバRを用い
て各次数の高調波を発生して合成するようにしたが、他
の高調波合成方式を用いても良い。例えば周波数ナンバ
に代えて、キーに対応したノートクロツクをカウンタで
カウントすることによつて累算出力qRに相当するデータ
を発生し、このデータに基づいて合成すべき各高調波成
分を発生させるようにしても良い。
(4)上述の実施例においては、各高調波成分の周波数
を整数倍関係に設定して調和性楽音を発生するようにし
たが、これに代えて例えば特公昭53−40527号公報に示
されているように所望高調波成分の周波数を整数倍関係
からずらして設定する(非整数倍関係に設定する)こと
により非調和性楽音を発生するようにしてもよい。
(5)上述の実施例においては、各フレームの切換えを
楽音波形周期を単位にして行なうようにし、これにより
押鍵操作されたキーの音高に応じて各フレームの時間が
変化するようにしたが、これに限らず、例えばタイマ回
路を設けてフレームの切換えを楽音波形周期とは関係な
く時間単位で制御するようにしても良い。この場合に
は、例えばフレームデータ発生回路31において、ゲート
回路36に所定のクロツク信号を加えるようにすればよ
い。
(6)上述の各実施例の場合、アキユムレータ43におい
て差分累算係数を記憶するためにシフトレジスタ46を用
い(第1図及び第9図)、また繰返し回数カウンタ32に
おいて繰返し回数データを記憶するためにシフトレジス
タ55を用い(第9図)、フレームカウンタ37においてフ
レーム番号を記憶するためにシフトレジスタ61を用い
(第9図)、演算回路24において高調波係数データS2を
記憶するためにシフトレジスタ75(第10図)及び93(第
12図)を用いるようにしたが、これらのシフトレジスタ
に代えてRAMその他の記憶手段を用いても良い。
(7)上述の構成においては、加算、累算、乗算等の演
算及びこれら演算の制御等の処理を実行するためにそれ
ぞれ専用ハードを設けて行なつたが、マイクロコンピユ
ータ等によつて処理するようにしても良い。
(8)上述の実施例においては、高調波合成による楽音
波形の形成演算をリアルタイムで実行する場合について
述べたが、楽音波形形成(高調波合成)演算結果を一旦
メモリに書込み、その後楽音周波数に対応してメモリを
読出して一回の発音中に音色を変化させるために複数回
楽音波形形成演算を実行するようなノンリアルタイム方
式で処理をするようにしても良い。このノンリアルタイ
ム方式の構成としては特開昭48−76520号公報に開示の
構成を用い得る。
(9)上述の実施例においては、各高調波係数の発生演
算を各高調波成分の発生タイミングに同期して行なうよ
うにしたが、これに代えて各高調波係数の発生演算を例
えば特公昭58−3238号公報に示されているように各高調
波成分の発生タイミングとは非同期の低速タイミングで
行なうようにしてもよい。
(10)上述の実施例においては、演算回路24において、
楽音波形の各周期ごとに高調波係数の補間演算をするよ
うにしたが、これに限らず、複数周期例えば2周期、又
は4周期等に1回づつ補間演算するように構成しても、
上述の場合と同様の効果を得ることができる。
(11)上述の実施例の基本係数メモリ21、補間差分係数
メモリ22(第1図、第9図及び第12図)、及び差分係数
メモリ67(第10図)及び81(第11図)に記憶するデータ
としては、PCMデータに限らず、DPCM、ADPCM、DM、AD
M、APCMなど各種の波形符号化方式のデータを用いても
良い。
(12)上述の実施例においては、フレームデータ発生回
路31に繰返し回数指定回路34を設けて繰返し回数を各フ
レームごとにそれぞれ設定し得るようにした場合につい
て述べたが、これに代え繰返し回数を全てのフレームに
ついて共通の一定値に固定するようにしても良い。この
場合には、フレームデータ発生回路31において、キヤリ
ー信号CAを分周してゲート回路36に加えるようにすれば
よい。
(13)上述の実施例においては、高調波合成演算を時分
割で行なうようにしたが、これに限らず、例えば実公昭
53−42104号公報に示されているように各高調波成分の
発生及び各高調波係数の発生を各次数毎に並列的に行な
うようにしてもよい。
(14)上述の実施例においては、高調波成分発生回路4
として正弦波を発生するようにした場合について述べた
が、これに限らず、矩形波、三角波などの他の波形を発
生させて高調波合成するようにしても良い。
(15)上述の実施例においては、操作されたキーに対応
する音高の楽音を発生する場合にこの発明を適用した
が、この発明はこれに限らず、リズム音を発生する場合
にも適用し得る。
(16)上述の実施例において、楽音が発生してから消滅
するまでの間の音色の変化を生じさせる効果に加えて、
さらに例えばキースケーリング、タツチレスポンス、操
作子などによる音色変化を付加する場合には、演算回路
24において差分累算データの出力側に乗算器を設け、こ
の乗算器によつて差分累算データにキースケーリングや
タツチレスポンス等に応じた所定の重みづけをした後、
基本高調波係数に加算するように構成すれば良い。この
ようにすれば主として基本高調波係数により決まる原音
のイメージを損うことなく、必要に応じてつけようとす
る効果についての音色変化を容易に生じさせることがで
きる。
(17)第10図の実施例の場合は、補間係数記憶手段とし
て各フレームについてのそれぞれ当該フレームの最初に
おいて発生すべき振幅係数と基本係数データとの差分に
対応する差の係数データを各次数ごとに記憶し、フレー
ム指定手段の出力に従つて対応する上記差の係数データ
を読出すように構成したものを用いたが、これに代え第
1図について上述したと同様にして、各フレームについ
てそれぞれ当該フレームの最初において発生すべき振幅
係数と、次のフレームの最初において発生すべき振幅係
数との差分に対応する差の係数データを各次数ごとに記
憶するようにすると共に、演算手段は、この差の係数デ
ータに対して各フレームにおいて時間の経過と共に変化
する重みづけ係数を各次数ごとに乗算すると共に、各フ
レームの終了時における乗算結果を表わすデータを各次
数ごとに一時記憶し、かつこの一時記憶したデータと、
乗算結果と、基本係数データとを各次数ごとに加算して
各次数ごとの振幅係数を得るようにする。このようにし
ても第10図の場合と同様の効果を得ることができる。
〔発明の効果〕
以上のようにこの発明によれば、高調波合成方式の楽音
信号発生装置において、楽音を構成する各次数成分の振
幅レベルをそれぞれ独立して時間変化させることができ
るので、音色が時間経過に従つて複雑に変化する高品質
の楽音を発生することができる。
また、各次数成分の振幅レベルをそれぞれ設定するため
の時間経過に従つて順次変化する各次数の振幅係数を得
るにつき、“1組の基本係数データ(各次数の振幅係数
の初期値を表す”及び“差の係数データ(第1発明の場
合各次数ごとの、隣接するフレーム間の振幅係数の差分
に対応し、また第2発明の場合各次数ごとの、各フレー
ムにおいて発生すべき振幅係数と上記基本係数との差に
対応する)”を記憶しておくだけでよいので、従来のも
のに比べてメモリ容量を格段に小容量化できる。
さらに、時間経過に従つて変化する各次数の振幅係数を
上記基本係数データを基に算出しているので、この基本
係数データに基づく基本的音色のイメージを損なうこと
なく、音色を時間経過に従つて微妙に変化させることが
できる。
特に第1の発明においては、各次数ごとにフレーム分け
が設定されるので、各次数の振幅係数をそれぞれ当該次
数に対応した速度で時間変化させることができ、楽音の
音色を複雑に時間変化させることができる。
また、第2の発明においては、各フレームごとに、発生
させたい振幅係数と基本係数との差分に関するデータを
記憶するようにしたので、各フレームにおいて楽音音色
を基本的音色(基本係数に対応した音色)に対してどの
程度変化させるかに応じて上記差分を求めればよく、各
フレームの音色と記憶する差分に関するデータとの対応
関係が分かりやすく、データ設定が容易となる。あるフ
レームだけの音色を変更したい場合も、そのフレームに
関する差分係数データのみを変えるだけで済み、かくし
て容易にフレームの音色を変更することができる。
【図面の簡単な説明】
第1図はこの発明による楽音信号発生装置を単音電子楽
器に用いた場合の第1実施例を示すブロツク図、第2図
は発生すべき楽音波形を示す信号波形図、第3図は発生
すべき高調波係数のスペクトル分布曲線を示す曲線図、
第4図は演算すべき差分データのスペクトル分布曲線を
示す曲線図、第5図は第2図の各フレームにおける繰返
し回数及び補間差分係数の関係を示す図表、第6図はク
ロツク信号tcと計算区間タイミング信号txとの関係を示
す信号波形図、第7図はキーオン信号KONとキーオンパ
ルス信号KONPとの関係を示す信号波形図、第8図は第1
図の高調波係数発生回路7において発生される高調波係
数の一例を示す波形図、第9図、第10図、第11図、第12
図はそれぞれこの発明による楽音信号発生装置の第2実
施例、第3実施例、第4実施例、第5実施例を示すブロ
ツク図である。 4……高調波成分発生回路、7……高調波係数発生回
路、21……基本係数メモリ、22……補間差分係数メモ
リ、24……演算回路、31……フレームデータ発生回路、
67、81……差分係数メモリ。

Claims (7)

    【特許請求の範囲】
  1. 【請求項1】楽音を構成する基本波及びその高調波に対
    応する各次数成分を、それぞれ時間の経過に従つて順次
    変化する振幅係数によつて重みづけした後それらを合成
    することによつて楽音信号を発生する楽音信号発生装置
    において、 (a)発生すべき楽音信号を、各次数ごとに独立して複
    数のフレームに分け、各次数ごとにそれぞれ各フレーム
    を楽音信号の発生開始時からの時間の経過に従つて順次
    指定するフレーム指定手段と、 (b)上記振幅係数の初期値を表す基本係数データを各
    次数ごとに記憶した基本係数記憶手段と、 (c)上記各フレームについてそれぞれ当該フレームの
    最初において発生すべき上記振幅係数と次のフレームの
    最初において発生すべき上記振幅係数との差分に対応す
    る差の係数データを各次数ごとに記憶し、上記フレーム
    指定手段の出力に従つて対応する上記差の係数データを
    読出す補間係数記憶手段と、 (d)上記フレーム指定手段が上記各フレームを順次指
    定して行くごとに上記基本係数記憶手段から読出された
    上記基本係数データ及び上記補間係数記憶手段から読出
    された上記差の係数データに基づいて当該指定されたフ
    レームの各時点における振幅係数を演算出力する演算手
    段と、 を具えることを特徴とする楽音信号発生装置。
  2. 【請求項2】上記補間係数記憶手段は、各フレームにつ
    いての上記差分をそれぞれ当該フレームにおける補間演
    算の繰返し回数で除算した値を上記差の係数データとし
    て記憶し、上記演算手段は、上記差の係数データを各次
    数ごとに累積し、当該累積結果を上記基本係数データと
    各次数ごとに加算して上記各次数ごとの振幅係数を得る
    ようにしてなる特許請求の範囲第1項に記載の楽音信号
    発生装置。
  3. 【請求項3】上記補間係数記憶手段は、各フレームにつ
    いての上記差分を上記差の係数データとして記憶し、上
    記演算手段は、上記差の係数データに対して各フレーム
    において時間の経過と共に変化する重みづけ係数を各次
    数ごとに乗算すると共に、各フレームの終了時における
    上記乗算結果を表すデータを各次数ごとに一時記憶し、
    かつこの一時記憶したデータと、上記乗算結果と、上記
    基本係数データとを各次数ごとに加算して上記各次数ご
    との振幅係数を得るようにしてなる特許請求の範囲第1
    項に記載の楽音信号発生装置。
  4. 【請求項4】楽音を構成する基本波及びその高調波に対
    応する各次数成分を、それぞれ時間の経過に従つて順次
    変化する振幅係数によつて重みづけした後それらを合成
    することによつて楽音信号を発生する楽音信号発生装置
    において、 (a)発生すべき楽音信号を複数のフレームに分け、各
    フレームを楽音信号の発生開始時からの時間の経過に従
    つて順次指定するフレーム指定手段と、 (b)所定値を表す基本係数データを各次数ごとに記憶
    した基本係数記憶手段と、 (c)上記各フレームについてそれぞれ当該フレームの
    最初において発生すべき上記振幅係数と上記基本係数デ
    ータとの差分に対応する差の係数データを各次数ごとに
    記憶し、上記フレーム指定手段の出力に従つて対応する
    上記差の係数データを読出す補間係数記憶手段と、 (d)上記フレーム指定手段が上記各フレームを順次指
    定して行くごとに上記基本係数記憶手段から読出された
    上記基本係数データ及び上記補間係数記憶手段から読出
    された上記差の係数データに基づいて当該指定されたフ
    レームの各時点における振幅係数を演算出力する演算手
    段と、 を具えることを特徴とする楽音信号発生装置。
  5. 【請求項5】上記補間係数記憶手段は、上記各フレーム
    についての上記差分を上記差の係数データとして記憶
    し、上記フレーム指定手段で指定されたフレーム及び次
    のフレームに関する上記差の係数データを同時に読出し
    て第1及び第2の差分係数データとして出力するもので
    あり、上記演算手段は、上記第1及び第2の差分係数デ
    ータを減算し、当該減算結果に対して上記各フレームに
    おいて時間の経過と共に変化する重みづけ係数を乗算す
    ると共に、この乗算結果と、上記第1の差分係数データ
    と、上記基本係数データとを各次数ごとに加算して上記
    各次数ごとの振幅係数を得るようにしてなる特許請求の
    範囲第4項に記載の楽音信号発生装置。
  6. 【請求項6】上記演算手段は、各フレームにおいて10進
    数で「0」から「1」に順次変化する上記重みづけ係数
    を発生してなる特許請求の範囲第5項に記載の楽音信号
    発生装置。
  7. 【請求項7】上記フレーム分けは各次数ごとに独立して
    なされ、上記フレーム指定手段は各次数ごとにそれぞれ
    上記フレーム指定を行うものである特許請求の範囲第4
    項ないし第6項のいずれかに記載の楽音信号発生装置。
JP59153723A 1984-07-24 1984-07-24 楽音信号発生装置 Expired - Lifetime JPH0693195B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP59153723A JPH0693195B2 (ja) 1984-07-24 1984-07-24 楽音信号発生装置
US06/758,207 US4646612A (en) 1984-07-24 1985-07-23 Musical tone signal generating apparatus employing sampling of harmonic coefficients

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP59153723A JPH0693195B2 (ja) 1984-07-24 1984-07-24 楽音信号発生装置

Publications (2)

Publication Number Publication Date
JPS6132094A JPS6132094A (ja) 1986-02-14
JPH0693195B2 true JPH0693195B2 (ja) 1994-11-16

Family

ID=15568686

Family Applications (1)

Application Number Title Priority Date Filing Date
JP59153723A Expired - Lifetime JPH0693195B2 (ja) 1984-07-24 1984-07-24 楽音信号発生装置

Country Status (1)

Country Link
JP (1) JPH0693195B2 (ja)

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5885491A (ja) * 1981-11-16 1983-05-21 松下電器産業株式会社 電子楽器
JPS5895790A (ja) * 1981-12-02 1983-06-07 松下電器産業株式会社 楽音発生装置
JPS5946693A (ja) * 1982-09-09 1984-03-16 松下電器産業株式会社 音声分析合成方法およびその装置
JPS59162595A (ja) * 1983-03-07 1984-09-13 松下電器産業株式会社 楽音合成装置

Also Published As

Publication number Publication date
JPS6132094A (ja) 1986-02-14

Similar Documents

Publication Publication Date Title
EP0150736B1 (en) Tone signal generation device for an electronic musical instrument
US4246823A (en) Waveshape generator for electronic musical instruments
US4114498A (en) Electronic musical instrument having an electronic filter with time variant slope
USRE31653E (en) Electronic musical instrument of the harmonic synthesis type
US4471681A (en) Electronic musical instrument capable of producing a musical tone by varying tone color with time
JPH0230033B2 (ja)
JPS6140118B2 (ja)
JPH0795235B2 (ja) 電子楽器
JPS5919352B2 (ja) 電子楽器
JPS5925235B2 (ja) 電子楽器
JPS6140119B2 (ja)
US4646612A (en) Musical tone signal generating apparatus employing sampling of harmonic coefficients
JPH0693195B2 (ja) 楽音信号発生装置
JPS6115438B2 (ja)
JPH0573033B2 (ja)
JPS6049320B2 (ja) 電子楽器
JPS5917434B2 (ja) 電子楽器
JPH0120759B2 (ja)
JPS583238B2 (ja) 電子楽器
JPS6023359B2 (ja) 電子楽器
JPH0122632B2 (ja)
JPH0423798B2 (ja)
JP3245411B2 (ja) 電子楽器
JPS61105595A (ja) 楽音信号発生装置
JPH0370237B2 (ja)