JPH033236B2 - - Google Patents

Info

Publication number
JPH033236B2
JPH033236B2 JP56194078A JP19407881A JPH033236B2 JP H033236 B2 JPH033236 B2 JP H033236B2 JP 56194078 A JP56194078 A JP 56194078A JP 19407881 A JP19407881 A JP 19407881A JP H033236 B2 JPH033236 B2 JP H033236B2
Authority
JP
Japan
Prior art keywords
data
waveform
memory
sample
musical
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
JP56194078A
Other languages
English (en)
Other versions
JPS5895792A (ja
Inventor
Kazuhiro Murase
Kinji Kawamoto
Tetsuhiko Kaneaki
Masataka Nikaido
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.)
Panasonic Holdings Corp
Original Assignee
Matsushita Electric Industrial Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Matsushita Electric Industrial Co Ltd filed Critical Matsushita Electric Industrial Co Ltd
Priority to JP56194078A priority Critical patent/JPS5895792A/ja
Publication of JPS5895792A publication Critical patent/JPS5895792A/ja
Publication of JPH033236B2 publication Critical patent/JPH033236B2/ja
Granted legal-status Critical Current

Links

Landscapes

  • Electrophonic Musical Instruments (AREA)

Description

【発明の詳細な説明】
本発明は楽音発生装置に関し、特に、楽音波形
を時間的に変化させて自然楽器音を模擬する楽音
発生装置に関するものである。 自然楽器音の特徴の一要素として、楽音信号の
スペクトル成分の時間的変化に伴なう波形の形状
変化が考えられる。 従来、このようなスペクトル成分の時間的変化
を施し自然楽器音を模擬する電子楽器を実現する
場合、回路規模が大きくなり、実現化が困難であ
つた。 本発明は上述のような問題を解決し、簡単な構
成で自然楽器音を模擬する楽音発生装置を提供す
るものである。 以下図面とともに本発明の一実施例を説明す
る。 まず、本発明の原理について説明する。 第1図に離散的に抽出した楽音1周期の楽音波
形を示す。発音開始時からの時間経過と楽音波形
との関係を下記に示す。 楽音波形 時間経過 A …… 10ms B …… 25ms C …… 50ms D …… 320ms E …… 720ms 第1図からもわかるように、時間経過とともに
楽音波形の形状が変化している。本発明は楽音波
形の時間的形状変化と云う点に着目し、波形の形
状の時間的変化を模擬することにより、自然楽器
らしい楽音を発生するものである。 第2図に発音開始時から発音終了時までの楽音
波形のエンベロープ包絡状態の一例を示す。 第2図に示したエンベロープ包絡の発音開始時
から発音終了時までI分割する。そして、各分割
点から抽出した楽音波形1周期をそれぞれK分割
する。第3図に抽出した楽音波形の一例を示す。 抽出したIサンプル個の楽音波形1周期をK分
割して得たKサンプル個のサンプル値すなわち、
K×I個のサンプル値をデイジタル値の形で波形
メモリに記憶しておく。 楽音発生時には、波形メモリに記憶してあるI
=0サンプル目の楽音波形1周期をJ回繰り返し
て読み出し、つぎに、I=1サンプル目の楽音波
形1周期をJ回繰り返して読み出し、順次つづけ
て、最後にIサンプル目の楽音波形1周期をJ回
繰り返して読み出せば、I×J波の楽音が発生す
る。 以下説明を簡単にするために、I=16,J=
16,K=16とする。 次に、楽音波形の基本波の周期決定について述
べる。なお、発生できる鍵数を4オクターブ48鍵
とする。 第4図に波形メモリに記憶してある楽音波形1
周期の一例を示す。 第4図に示したような楽音波形1つから4オク
ターブ48鍵に相当する楽音を発生するために、次
にような操作を行なう。 楽音波形1周期をN分割する。ここでNは、正
整数KとLの積とする。つぎに、1周期をK分割
した点をx0,x1,x2,……xn,……,xk-1とす
る。K分割した各区間内にはそれぞれL個の点が
存在する。それらの分割点をxnから数えて、0,
1,2,……,r,……,(L−1)と番号づけ
してxnrで表現する。このようにすると1周期内
のN個のすべての点をxnrで表わすことができる。
ここで、 m=0,1,2,……,K−1 r=0,1,2,……,L−1 である。したがつて上記xnはxnpと表わされる。
また、点xnrの位相は一周期が2πであるから θnr=2π/N×(Ln+r) ……(1) となる。 これを読み出しクロツクck〔Hz〕で順次読み出
すと、1/ck〔sec〕ごとにrが1個づつ増加す
るから、発音周波数は、 =ck/N〔Hz〕 ……(2) となる。 同様に、q個づつの飛越し読み出しを行なう
と、1/ck〔sec〕ごとにrはq個づつ増加する
から発音周波数は =q/Nck〔Hz〕 ……(3) となる。 最低オクターブ12音の飛越し数qを第1表の如
き値を使用する。そうすると、飛越し数qの最大
値qnaxは qnax=451×24-1=3608 ……(4) となる。 そして、最高周波数でも楽音波形1周期のサン
プル数を16とすると、分割数Nは N=qnax×16=57728 ……(5) となる。 最低周波数では一周期は役242サンプルになる。 また、デイジタル処理を考慮するとNを2の累
乗とすることにより、処理が容易になるので、結
局、分割数Nは N=216=65536 ……(6) となる。
【表】
【表】 ここで、読み出しクロツクckck=17932.74〔Hz〕 と一定にする。 そして、飛越し数q=239とすれば、(3)式より、
(239/216)×1793.74≒65.4〔Hz〕となる。さら
に、q=253とすれば、 ≒69.2〔Hz〕、q=268とすれば、 ≒73.3〔Hz〕となる。 第1表に示した飛越し数qを用いることによ
り、音名C1(65.406〔Hz〕)〜音名B1(123.47〔Hz〕)
までの1オクターブの楽音を発生することができ
る。 1オクターブ上の音程を発生するには、飛越し
数qを2倍することにより得られる。たとえば、
飛越し数q×2=239×2=478とすれば、≒
130.8〔Hz〕すなわち、音名C2に相当する音程が得
られることになる。 同様に、2オクターブ上の音程を得るには、第
1表に示した飛越し数qを4倍すればよい。 この結果、(3)式にさらにオクターブ情報を代入
すると下式のようになる。 =q・2OD-1/N×ck〔Hz〕 ……(7) =1,2,3,4(はオクターブナンバ
ーである。) 波形メモリにはK分割した各分割点x0,x1,…
…xn,……,xk-1、すなわち、16個のサンプル値
が楽音波形1周期として記憶されている。そし
て、残る(N−K)個のxnr(r≠O)の点につい
ては、x0,x1,……,xk-1のサンプル値を参照し
て楽音サンプルを求めるものである。 第5図に発生される楽音サンプルの一例を示
す。第5図において、(A)は波形メモリに記憶され
ているサンプル値である。(B)はクロツクckごと
のxnrの位置を表わすものである。(C)はxnrによつ
て求められる楽音サンプル値である。第5図の例
は音名B4すなわち飛越し数をq・2OD-1=3608と
している。 まず、xnr=3608×0の時は波形(A)のx0サンプ
ル値が発生される。xnr=3608×1の時は波形(A)
のx0とx1サンプル値間にxnrが存在しx0サンプル
値が発生される。xnr=3608×2の時は波形(A)の
x1とx2サンプル値間にxnrが存在しx1サンプル値
が発生される。以下同様にxnrによつて所定のサ
ンプル値が発生されることになる。 第6図に本発明の一実施例を示す。第6図では
複音構成(8音を発生する構成)を想定してい
る。 第6図において、1は鍵盤で、複数の鍵スイツ
チにより構成されている。2は押鍵検出部で、特
公昭50−33407号「電子楽器における楽音および
ボイスを選択するための多重装置」などで既に公
知のジエネレータアサイナと同様の機能を有する
ものであつて、上記鍵盤1の押離鍵状態を検出
し、押鍵された鍵に対応して複数の楽音発生チヤ
ネルのうち空いている適当なチヤネルを割り当
て、鍵の音高を表わすノートデータとオクターブ
データとを送出するものであり、ここではマイク
ロコンピユータを想定している。3は発音周期デ
ータ発生部で、上記押鍵検出部2から送出された
ノートデータ、オクターブデータに基づいた発音
周期データ(飛越し数q・2OD-1)を発生する。
4は周期メモリで、上記発音周期データ発生部3
から送出された発音周期データを記憶する。5は
累積メモリ、6は計数メモリ、7,8は加算器
で、入力Aと入力Bとの2進加算演算を行ない入
力CKに供給されるクロツクパルスによつて加算
結果を記憶保持し、出力Cから送出するものであ
る。9は波形メモリで、第2図および第3図で説
明を行なつた各サンプル値をデイジタル値として
記憶している。10はデイジタル・アナログ変換
器(以下DACと略す)、11はタイミングパルス
発生器(以下TPGと略す)で、楽音発生の動作
タイミングを決定するタイミングパルスを発生す
るものである。12はアンドゲート、13はイン
バータである。 なお、第6図では複音構成(8音発生)となつ
ているため、周期メモリ4、累積メモリ5、計数
メモリ6はそれぞれ8音分に相当するデータが記
憶できるようになつており、全体動作としては、
TPG11によつて時分割多重処理が行なわれる
ようになつている。 第7図に波形メモリ9のメモリマツプを示す。
図中、I=1,K=2の位置には、発音開始時か
ら発音終了時までをI分割して押出したI=1サ
ンプル目の楽音波形1周期をK分割して得たK=
2サンプル目のサンプル値がデイジタル値の形で
記憶されている。以下同様に、各サンプル点のサ
ンプル値が記憶されている。 次に、TPG11から発生している動作タイミ
ングについて説明する。 第8図にTPG11の一具体例を示す。第8図
において、14は発振器、15はカウンタで、36
進カウンタ構成である。16はリード・オンリ
ー・メモリ(以下RMと略す)である。第9図
にTPG11から発生しているタイミングパルス
のタイムチヤートを示す。 発振器14の出力信号によりカウンタ15カウ
ントアツプ操作を行なう。そうすると、発振器1
4の出力信号とカウンタ15の出力Q0,Q1から
送出される分周信号がRM16の入力A,B,
Cにそれぞれ供給され、第9図に示した信号φ1
〜信号φ5が出力55から送出される。 RM16の入・出力の論理関係を示すと次の
ようになる。 カウンタ15の出力Q0の出力信号をQ0、出力
Q1の出力信号をQ1とする。 φ1001 φ20・Q01 φ300・Q1 φ40・Q0・Q1 φ50・Q1 この信号φ1〜信号φ5は周期メモリ4、累積メ
モリ5および計数メモリ6のデータ書き込み、あ
るいは読み出し信号や、加算器7,8の加算結果
ラツチクロツクに用いられる。 また、カウンタ15の出力Q2〜出力Q5から送
出される信号ADは周期メモリ4、累積メモリ5
および計数メモリ6などに供給しており、各チヤ
ネルに対応するアドレスコードとなる。 信号ADと対応チヤネルの関係を第2表に示
す。 なお、論理信号として“1”は論理ハイレベ
ル、“0”は論理ロウレベルとする。カウンタ1
5の出力Q2〜出力Q5の出力信号をそれぞれQ2
Q5とする。
【表】 また、信号ADの周期Tが、前述したckに相当
するものである。すなわち、周期Tごとに8チヤ
ネル分に相当する楽音の各サンプル値が発生され
ることになる。 次に第6図の具体的な動作説明を行なう。 押鍵検出部2において、鍵盤1の押鍵状態の検
索を行ない、押鍵スイツチに対応するノートデー
タとオクターブデータおよび割り当て発音チヤネ
ルのアドレスデータとデータ書き込み信号とを押
鍵検出部2から送出する。 押鍵検出部2から送出された各種データは発音
周期データ発生部3に供給される。そうすると、
供給されたノートデータとオクターブデータに基
づいて発生楽音波形の音程を決める飛越し数q・
2OD-1が発生される。そして、TPG11から供給
されている信号ADと割り当て発音チヤネルのア
ドレスデータとが一致した時、周期メモリ4、累
積メモリ5、計数メモリ6に対し、新発音データ
書き込み信号(以下NDWR信号と略す)が送出
される。 ここで、押鍵検出部2から発音周期データ発生
部3に供給されるデータのタイムチヤートを第1
0図に示し、第3表、第4表にノートデータ、オ
クターブデータの構成内容を示す。さらに、第5
表に割り当て発音チヤネルのアドレスデータの構
成内容を示す。
【表】
【表】
【表】 第11図に発音周期データ発生部3の一具体例
を示す。第11図において、17はラツチで、入
力CKに“1”が供給されると入力INに供給され
ているデータを記憶する。そして、入力CRに
“1”が供給されるとクリヤー操作が行なわれ出
力UTの出力信号はすべて“0”となる。18
はラツチで、上記ラツチ17と同様なもので、ク
リヤー機能を除いたものである。18はRM
で、楽音波形の周期を決定する周期データ(飛越
し数q・2OD-1)が記憶されている。20は比較
器で、入力A,Bに供給されている信号が等しく
なると出力Cから“1”が送出されるものであ
る。21はアンドゲートである。 なお、ラツチ17は4ビツト構成、ラツチ18
は6ビツト構成となつている。また、RM19
には、12音階4オクターブ分のすべての飛越し数
が記憶されている。 押鍵検出部2から第10図に示したタイミング
で各種データが供給されると、データ書き込み信
号CKの“1”で、発音チヤネルのアドレスデー
タがラツチ17に、ノートデータ、オクターブデ
ータがラツチ18にそれぞれ記憶される。 そうすると、ラツチ18に記憶されたノートデ
ータとオクターブデータに基づいた飛越し数q・
2OD-1がRM19の出力UTから送出される。 一方、ラツチ17に記憶されたアドレスデータ
とTPG11から供給されている信号ADとの比較
を比較器20で行ない、一致すると出力Cから
“1”信号が出力される。このタイミングを第1
2図に示す。たとえば、ラツチ17にチヤネル3
に対応するアドレスコードが記憶されると、比較
器20において信号ADとラツチ17の出力信号
の比較を行ない第12図に示すように一致すれば
信号WPが“1”となる。そして、TPG11から
供給される信号φ4が“1”となると、アンドゲ
ート21を介して、ラツチ17の入力CRにクリ
ア信号が供給され、ラツチ17の出力信号は再び
all“0”となる。 その後、TPG11から供給される信号ADが再
びチヤネル3に対応するアドレスコードが発生し
ても、ラツチ17の出力信号がall“0”であるた
め、信号WPは“1”とならない。 すなわち、信号WPが“1”となるタイミング
は押鍵検出部2から新しいデータが供給され、割
り当てられたチヤネルに新しいデータを書き込む
最初のタイミングのみに“1”が現われることに
なる。 この信号WPは周期メモリ4、累積メモリ5、
計数メモリ6に、新データ書き込みを行なうもの
である。 また、出力D1から送出される信号は飛越し
数q・2OD-1であり、周期メモリ4に送出される。 一方、出力D2から送出される信号は、all
“0”データであり、累積メモリ5と計数メモリ
6に送出される。このデータは累積メモリ5と計
数メモリ6の初期値設定すなわち、累積および計
数値のクリヤ操作を行ない波形メモリ9から読み
出すデータを発音開始データから始まるように準
備するものである。 なお、ROM19に4オクターブ分すべての飛
越し数q・2OD-1が記憶されているが、RM1
9のかわりに第1表に示した1オクターブ分の飛
越し数を記憶しておき、ラツチ18に記憶された
ノートデータに基づいて所定の飛越し数qを選択
し、そのデータとラツチ18に記憶されたオクタ
ーブデータとの乗算を行ない飛越し数q・2OD-1
を発生するようにしてもよい。 第6図に戻つて動作説明を行なう。 発音周期データ発生部3からNDWP信号が供
給されると、TPG11から供給されている信号
ADに従つた所定のチヤネルが選択され(たとえ
ば、チヤネル3が選択されたとする)、信号φ3
信号φ5によつて、周期メモリ4には新しい飛越
し数q・2OD-1が、累積メモリ5と計数メモリ6
にはall“0”データが書き込まれる。 そして、再びTPG11から送出される信号AD
がチヤネル3に対応するコードとなると、信号
φ1,φ5によつて、周期メモリ4から飛越し数
q・2OD-1が読み出され加算器7の入力Aに送出
される。累積メモリ5からは累積値が加算器7の
入力Bに送出される。計数メモリ6からは計数値
が加算器8の入力Bに送出される。 そうすると、加算器7において飛越し数q・
2OD-1と累積値とが加算演算され信号φ2によつて
加算結果が記憶保持される。また、加算器8にお
いて、加算器7の出力Cから送出される最上位ビ
ツト、計数値とが加算演算され、信号φ2によつ
て加算結果が記憶保持される。 加算器7,8の出力信号は波形メモリ9に供給
される。供給されたデータに基づいて所定のサン
プル値が選択され、DAC10を介してアナログ
信号に変換されてアナログ的な楽音波形の1サン
プルが形成される。 そして、信号φ3が“1”となると、加算器7
の出力信号が累積メモリ5に、加算器8の出力信
号が計数メモリ6にそれぞれ書き込まれる。 信号ADがチヤネル3のアドレスコードからチ
ヤネル4のアドレスコードに変わると、チヤネル
4に対応した上述と同様な処理が行なわれること
になる。 再び信号ADがチヤネル3のアドレスコードと
なると、前述と同様な処理を行ない、DAC10
の出力から次の楽音波形のサンプル値が形成さ
れ、以下同様に順次、楽音波形のサンプル値が形
成されることになる。 そして、加算器8の出力信号のMSBが“1”
となると、インバータ13を介してアンドゲート
12の入力に“0”が供給され、アンドゲート1
2の出力は“0”となり、加算器7からの信号に
左右されることなく加算器8の入力Aには“0”
が供給される。 そうすると、加算器7の出力信号のMSBが
“1”となつても、計数メモリ6に記憶されてい
る計数値の+1処理が行なわれなくなる。 この結果、加算器8の出力信号のMSBが“1”
となると、波形メモリ9から読み出されるサンプ
ル値はI=0サンプル目の楽音波形1周期が読み
出され、楽音の発生は停止する。なぜならば、I
=0サンプル目の楽音波形は発音開始時で楽音が
まだ発生されていないためサンプル値として、I
=0,K=0〜15サンプルはすべて0となつてお
り、楽音が発生されなくなる。 なお、第6図では、加算器8の+1操作を禁止
するようにしていたが、加算器7と8の加算操作
を禁止するようにしてもよい。 次に、周期メモリ4、累積メモリ5、計数メモ
リ6および加算器7,8の出力信号と波形メモリ
9から選択される楽音波形のサンプルについて第
13図を用いて説明する。 なお、各出力信号を下記のようなデータ名とす
る。 周期メモリA……データA 累積メモリ5……データB 計数メモリ6……データC 加算器7……データD 加算器8……データE まず、各データのビツト構成について述べる。 データAは飛越し数であり、4オクターブ分の
楽音発生を想定しているので飛越し数q・2OD-1
の最大値は<3608>となる。その結果、2進数の
データとしてビツト数は12ビツト必要になる。 データBは発音できる最高周波数の楽音波形1
周期の分割数を16分割とすると、q・2OD-1 (nax)×
16=57728となり、その結果、2進数のデータと
してビツト数は16ビツト必要になる。 データCは、I=16、J=16を想定しているの
で9ビツト構成となる。 データDは、データAとデータBとの加算結果
となるので、17ビツト構成となる。 データEは、データCとデータDのMSBとの
加算結果となるので、9ビツト構成となる。 また、データDのビツト0〜ビツト15で表わさ
れている内容が第4図で説明したmrに相当する。
また、ビツト0〜ビツト11で表わされている内容
がrにビツト12〜ビツト15の内容がmに相当す
る。さらに、データDのrデータとデータEのj
データはデータDのmデータとデータEのiデー
タそれぞれの仮想サンプル点を示すものとなる。 第13図からもわかるように、データAとデー
タBの内容が加算され、加算された結果がデータ
Dとなる。 また、データCとデータDのビツト16の内容が
加算され、加算された結果がデータEとなる。 そして、データDのビツト12〜ビツト15(mデ
ータとする)の内容と、データEのビツト4〜ビ
ツト7(iデータとする)の内容がメモリ9に供
給されている。 メモリ9に供給されたmデータとiデータとに
より所定のサンプル値が選択されることになる。 mデータで所定のKサンプル目を選択し、iデ
ータで所定のIサンプル目を選択するようになつ
ている。 また、楽音波形1周期が発生されるごとに、デ
ータEが+1処理される。そして、データEの内
容が16歩進するごとにIサンプルの読み出し点が
変化する。 すなわち、16波の楽音波形を発生するごとに波
形の形状の異なるものが読み出されることにな
る。 以上の説明のように、上記実施例は、第2図に
示したような楽音波形エンベロープ包絡の発音開
始時から発音終了時までをI分割し、各分割点か
ら抽出した楽音波形1周期をK分割し、抽出した
Iサンプル個の楽音波形1周期をK分割して得た
Kサンプル個のサンプル値すなわち、K×1個の
サンプル値をデイジタル値の形で波形メモリ9に
記憶しておき、楽音発生時には、発音すべき周波
数に対応した飛越し数q・2OD-1によつて波形メ
モリ9に記憶してあるI=0サンプル目の楽音波
形1周期をJ回繰り返して読み出し、つぎに、I
=1サンプル目の楽音波形1周期をJ回繰り返し
て読み出し、順次つづけて、最後にIサンプル目
の楽音波形1周期をJ回繰り返して読み出し、I
×J波の楽音を発生するようにして、時間的に波
形の形状が変化する楽音信号を得るものである。 第14図に本発明の他の実施例の要部を示す。 第6図に示した実施例では、第4図で説明した
xnrがxn,pとxn+1,pとの間に存在した場合、波形メ
モリ9から読み出されるサンプル値はxn,pのサン
プル値が読み出されるようになつていた。 第14図では、xnrがxn.pとxn+1,pとの間に存在
した場合でも補間演算を行ない仮想的に仮想サン
プル点におけるサンプル値を算出して近似値を求
めようとするものである。 補間処理として直線補間を行なう場合は、つぎ
のようになる。xn+1,pとxn,pとに対して、
(xn+1,p)と(xn,p)の間を直線補間すると、 ^(xnr)={(xn+1,p)−(xn,p)}r/L+
(xn,p) ……(8) なる補間値^(xnr)で(xnr)を近似できる。第
14図の実施例は(8)式を具現化する一例である。 なお、第6図と同一機能のものには同一符号を
付して説明を省略する。第14図において、22
はRMで、加算器7の出力信号に+1した内容
を記憶している。23はセレクタ、24はRSフ
リツプフロツプ(以下RSFFと略す)、25,2
6はラツチ、27は減算器、28は乗算器、29
はRMで、乗算係数αを記憶している。30は
加算器である。 加算器7の出力信号のうちビツト12〜ビツト15
がセレクタ23とRM22に供給される。そし
て、信号φ2がRSFF24の入力Rに供給されると
出力Qからの出力信号は“0”となり、セレクタ
23の出力には加算器7から直接供給された信号
が現われ、波形メモリ9にmデータとして供給さ
れる。 一方、加算器8の出力信号のうちビツト4〜ビ
ツト7がiデータとして波形メモリ9に供給され
ている。そうすると、mデータとiデータにより
波形メモリ9から所定のサンプル値が送出され
る。 そして、波形メモリ9から送出されたサンプル
値は信号φ2が“1”から“0”へ変化するタイ
ミングでラツチ25に記憶保持される。 その後、信号φ3がRSFF24の入力Sに供給さ
れると出力Qは“1”となりRM22の出力信
号がセレクタ23の出力に現われ、mデータとし
て波形メモリ9に供給される。RM22から出
力されるデータは第6表に示すように加算器7の
出力信号のビツト12〜ビツト15の2進数に+1操
作を行なつたものである。
【表】
【表】 そして、上述と同様に加算器8の出力信号のう
ちビツト4〜ビツト7がiデータとして波形メモ
リ9に供給されている。そうすると、mデータと
iデータとにより波形メモリ9から所定のサンプ
ル値が送出される。波形メモリ9から送出された
サンプル値は、信号φ3が“1”から“0”へ変
化するタイミングでラツチ26に記憶保持され
る。 その結果、ラツチ25には、(8)式に示した
(xn,p)が、ラツチ26には(8)式に示した
(xn+1,p)に相当するサンプル値が記憶保持される
ことになる。 そして、減算器27において、(8)式に示した
(xn+1,p)−(xn,p)に相当する減算処理を行な
い、減算結果が乗算器28に供給される。 乗算器28の他入力には、加算器7の出力信号
のビツト0〜ビツト11に基づいた乗算係数αが供
給される。乗算係数αは(8)式に示したr/Lに相当 するものであり、rは加算器7の出力信号のビツ
ト0〜ビツト11の累算結果に相当するものであ
る。また、Lは第4図で述べた分割数Nと楽音波
形1周期の分割数Kとにより決まる定数である。 本発明の場合、N=216,K=16として説明を
進めているので、L=N/K=4096(10進数)と
なる。そして、RM29には、加算器7の出力
信号のビツト0〜ビツト11で表わされる組み合わ
せ、すなわち、212通りのr/Lに相当する乗算係数 αが記憶されている。 そして、加算器30において、乗算器28の出
力信号とラツチ25に記憶保持されているデータ
との加算処理を行ない、加算結果をDAC10に
供給し、アナログ的な楽音波形の1サンプルを形
成する。 その結果、加算器30の出力には(8)式に示した
^(xnr)が算出されることになる。 以上の説明のように、第4図で述べたxnr
xn,pとxn+1,pとの間に存在した場合、波形メモリ
9からxn,pとxn+1,pに相当するサンプル値(xn,p
と(xn+1,p)とを選択する。そして、加算器7の
出力信号のビツト0〜ビツト7すなわち、rデー
タと選択した(xn,p)と(xn+1,p)とを用い直
線補間演算し、(xnr)を補間値^(xnr)で近似
することにより、波形の形状変化をなめらかにし
さらに、不用なノイズ成分の発生を防ぐことがで
きる。 第15図に本発明の他の実施例の要部を示す。 第16図に楽音のエンベロープ包絡を発音開始
時から発音終了時までをI分割し、抽出したiサ
ンプル目とi+1サンプル目の楽音波形1周期の
一例を示す。 第16図中の記号について述べる。 iはI分割して抽出したサンプル位置であり、
第13図に示したデータEのビツト4〜ビツ
ト7の内容に相当する。 jはiサンプルをJ回(16回)繰り返し読み出
しを行なつている途中の位置を表わすもの
であり、第13図に示したデータEのビツ
ト0〜ビツト3の内容に相当するものであ
る。 mは楽音波形1周期の分割サンプル位置。 xi,nは加算器7,8の出力信号によつて選択さ
れた波形サンプル。 xi+1,nは加算器7と加算器8に+1された出力
信号によつて選択された波形サンプル。 xi,j,nは xi+1,nとxi,nサンプルとの間に存在するj回
目の波形サンプルである。 第6図に示した実施例は波形サンプルxi,j,n(j
=0,1,2,……15)は、すべて同じ波形デー
タを用い楽音波形の1サンプルを発生するように
していた。 第15図では、波形サンプルxi+1,nとxi,nとの間
に存在するxi,j,nは補間演算を用い仮想的に仮想サ
ンプル点におけるサンプル値を算出して近似値を
求めようとするものである。 なお、演算処理にあたり、減算器36と乗算器
37とROM38と加算器39とにより演算器を
構成している。 補間処理として、直線補間を行なう場合は、つ
ぎのようになる。xi+1,nとxi,nとに対して、
(xi+1,n)と(xi,n)との間を直線補間すると、 ^(xi,j,n)={(xi+1,n) −(xi,n)}j/J+(xi,n) ……(9) j=0,1,2,……,15 なる補間値^(xi,j,n)で(xi,j,n)を近似できる

第15図の実施例は(9)式を具現化する一例であ
る。 なお、第6図と同一機能なものには同一符号を
付して説明を省略する。第15図において、31
はRMで、加算器8の出力信号に+1した内容
を記憶している。32はセレクタ、33は
RSFF、34,35はラツチ、36は減算器、3
7乗算係数、38はRMで、乗算係数βを記憶
している。39は加算器である。 加算器8の出力信号のうちビツト4〜ビツト7
がセレクタ32とRM31に供給される。そし
て、信号φ2がRSFF33の入力Rに供給されると
出力Qからの出力信号は“0”となり、セレクタ
32の出力には加算器8から直接供給された信号
が現われ、波形メモリ9にiデータとして供給さ
れる。 一方、加算器7の出力信号のうちビツト12〜ビ
ツト15がmデータとして波形メモリ9に供給され
ている。そうすると、mデータとiデータにより
波形メモリ9から所定のサンプル値が送出され
る。 そして、波形メモリ9から送出されたサンプル
値は信号φ2が“1”から“0”へ変化するタイ
ミングでラツチ34に記憶保持される。 その後、信号φ3がRSFF33の入力Sに供給さ
れると出力Qは1となりRM31の出力信号が
セレクタ32の出力に現われ、iデータとして波
形メモリ9に供給される。RM31から出力さ
れるデータは第7表に示すように加算器8の出力
信号のビツト4〜ビツト7の2進数に+1操作を
行なつたものである。
【表】
【表】 そして、上述と同様に加算器7の出力信号のう
ちビツト12〜ビツト15がmデータとして波形メモ
リ9に供給されている。そうすると、mデータと
iデータとにより波形メモリ9から所定のサンプ
ル値が送出される。波形メモリ9から送出された
サンプル値は信号φ3が“1”から“0”へ変化
するタイミングでラツチ35に記憶保持される。 その結果、ラツチ34には、(9)式に示した
(xi,n)がラツチ35には(9)式に示した(xi+1,n
に相当するサンプル値が記憶保持されることにな
る。 そして、減算器36において、(9)式に示した
(xi+1,n)−(xi,n)に相当する減算処理を行ない、
減算結果が乗算器37に供給される。 乗算器37の他入力には、加算器8の出力信号
のビツト0〜ビツト3に基づいた乗算係数βが供
給される。乗算係数βは(9)式に示したj/Jに相当 するものであり、jは加算器8の出力信号のビツ
ト0〜ビツト3の計数結果に相当するものであ
る。また、Jは16の定数である。 そして、RM38には、加算器8の出力信号
のビツト0〜ビツト3で表わされる組み合わせ、
すなわち、24通りのj/Jに相当する乗算係数βが 記憶されている。 そして、加算器39において、乗算器37の出
力信号とラツチ34に記憶保持されているデータ
との加算処理を行ない、加算結果をDAC10に
供給し、アナログ的な楽音波形の1サンプルを形
成する。 その結果、加算器4の出力には(9)式に示した
(xi,j,n)が算出されることになる。 以上の説明のように、波形メモリ9からxi+1,n
とxi,nに相当するサンプル値(xi+1,n)と(xi,n
とを選択する。そして、加算器8の出力信号のビ
ツト0〜ビツト3すなわち、jデータと選択した
(xi+1,n)と(xi,n)とにより直線補間演算し
(xi,j,n)を補間値(xi,j,n)で近似することによ
り、波形の形状変化をなめらかにしさらに、不用
なノイズ成分の発生を防ぐことができる。 第17図に本発明の他の実施例の要部を示す。 第17図は、サンプルxi,j,n,rを補間演算で算出
し、近似値を求めようとするものである。 補間処理として直線補間を行なう場合の一例を
示すとつぎのようになる。第18図に説明図を示
す。 まず、xi+1,nとxi,nとに対して(xi+1,n)と
(xi,n)との間の直線補間を行ない、 ^(xi,j,n)={(xi+1,n) −(xi,n)}j/J+(xi,n)……(10) なる補間値^(xi,j,n)で(xi,j,n)を近似する。 次に、xi+1,n+1とxi,n+1とに対して、(xi+1,n+1
と(xi,n+1)との間に直線補間を行ない、 ^(xi,j,n+1)={(xi+1,n+1) −(xi,n+1)}j/J+(xi,n+1) ……(11) なる補間値^(xi,j,n+1)で(xi,j,n+1)を近似す
る。 そして、(10)式と(11)式で求めた^(xi,j,n)と^
(xi,j,n+1)との間の直線補間を行ない、 ^(xi,j,n,r)={^(xi,j,n+1) −^(xi,j,n)}r/L+(xi,j,n) ……(12) なる補間値(xi,j,n,r)で(xi,j,n,r)を近似する
。 i=0,1,……,15、j=0,1,2,…
…,15、m=0,1,2,……,15、r=0,
1,2,……,L−1 第17図の実施例は(10),(11),(12)式を具現化する
一例である。 第14,15図と同一機能なものには同一符号
を付して説明を省略する。第17図において、4
0,41,42は補間器で、第14図などに示し
たラツチ34,35、減算器36、乗算器37お
よび加算器39と同様なもので構成されている。 補間器40において、(10)式に示した補間演算を
行ない補間値^(xi,j,n)を求める。 補間器41において、(11)式に示した補間演算を
行ない補間値^(xi,j,n+1)を求める。 そして、補間器42において、補間器40と補
間器41で求めた補間値^(xi,j,n)と^(xi,j,n+1
)を
入力とし(12)式に示した補間演算を行ない補間値^
(xi,j,n,r)を求め、その補間値をDAC10に供給
し楽音波形を発生する。 以上の説明のように、加算器7,8の出力信号
に相当するサンプル値(xi,j,n,r)を限られた個数
のサンプル値(波形メモリ9にはI×Kサンプル
個のサンプル値が記憶されている)から、(10),
(11),(12)式を用いて、補間演算を行ない補間値^
(xi,j,n,r)で(xi,j,n,r)を近似することにより、

形の形状の時間的変化がなめらかになる。さら
に、不用なデイジタルノイズ成分の発生を防ぐこ
とができる。 以上のように本発明は、楽音の発音開始時から
発音終了時までをI分割して得たI個の異なる楽
音波形1周期をさらにK分割して得たI×K個の
サンプル値をデイジタル値の形で記憶する波形メ
モリ(実施例では波形メモリ9で構成)と、上記
波形メモリより異なる楽音波形の複数個のサンプ
ル値を順次読み出すための読み出しデータを発生
する読み出し装置(実施例では周期メモリ4、累
算器メモリ5、計数メモリ6と加算器7,とR
M31ととセレクタ32とで構成)と、上記読み
出されたサンプル値を用いて補間計算を行なう演
算器(実施例では減算器36と乗算器37とR
M38と加算器39とで構成)とを具備し、上記
波形メモリから読み出された複数個のサンプル値
(xi+1,n)と(xi,n)間に存在する仮想サンプル
点における仮想サンプル値(xi,j,n)を上記演算
器を用いて求めた補間値^(xi,j,n)で近似すること
により、波形の形状の時間変動の伴なつた自然楽
器に非常によく似た楽音信号をつくることができ
る。また、補間計算により波形の形状変化をなめ
らかにし、不用のデイジタルノイズ成分の発生を
防ぐことができる。
【図面の簡単な説明】
第1図は楽音波形の一例を示す図、第2図は楽
音波形のエンベロープ包絡状態の一例を示す図、
第3図は楽音波形の一例を示す図、第4図、第5
図は本発明の動作原理の説明図、第6図は本発明
の一実施例を示すブロツク図、第7図は第6図の
波形メモリ9のメモリマツプを示す図、第8図は
第6図のタイミングパルス発生部11の一具体例
を示すブロツク図、第9図は上記タイミングパル
ス発生部11のタイムチヤート、第10図は上記
実施例の動作を説明するためのタイムチヤート、
第11図は第6図の発音周期発生部3の一具体例
を示すブロツク図、第12図は第11図の動作を
説明するためのタイムチヤート、第13図、第1
6図、第18図は上記実施例の動作を説明するた
めの説明図、第14図、第15図、第17図は本
発明の他の実施例を示すブロツク図である。 1……鍵盤、2……押鍵検出部、3……発音周
期データ発生部、4……周期メモリ、5……累算
メモリ、6……計数メモリ、9……波形メモリ、
7,8,30,39……加算器、10……DAC、
11……タイミングパルス発生部、12,21…
…アンドゲート、13……インバータ、17,1
8,25,26,35,34……ラツチ、16,
19,22,29,31,38……RM、20
……比較器、14……発振器、15……カウン
タ、23,32……セレクタ、24,33……
RSフリツプフロツプ、27,36……減算器、
28,27……乗算器。

Claims (1)

  1. 【特許請求の範囲】 1 発音開始時から発音終了時まで時間経過とと
    もに形状が変化している楽音波形の、発音開始時
    から発音終了時までの時間をI分割した時点にお
    けるI個の楽音波形のそれぞれの1周期をK分割
    して得たI×K個のサンプル値を記憶する波形メ
    モリと、楽音音階を決定する発音周期データ発生
    部と、前記発音周期データ発生部から出力される
    発音周期データに基づき前記波形メモリより異な
    る楽音波形の複数個のサンプル値(Xi,n),
    (Xi+1,n)を順次読み出すための読み出しデータ
    を発生する読み出し装置と、前記読み出し装置で
    発生した読み出しデータにより読み出された前記
    複数個のサンプル値と前記読み出しデータに基づ
    く乗算係数βとを用いて補間演算を行なう演算器
    とを具備し、前記演算器では前記波形メモリから
    読み出した前記2つの波形サンプル(Xi,n),
    (Xi+1,n)および前記読み出しデータに基づく乗
    算係数βを用いて次式に示す補間演算を行ない、
    発音音階に対応する仮想サンプル点における仮想
    サンプル値^(Xi,,n)を求めるようにしたことを
    特徴とする楽音発生装置。 ^(Xi,,n)={(Xi+1,n)−(Xi,n)}× β+(Xi,n) 但し、iは波形ナンバを示し、i=0,1,
    2,……,−1,mは一周期内の波形サンプル
    数を示し、m=0,1,2,……,M−1
JP56194078A 1981-12-02 1981-12-02 楽音発生装置 Granted JPS5895792A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP56194078A JPS5895792A (ja) 1981-12-02 1981-12-02 楽音発生装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP56194078A JPS5895792A (ja) 1981-12-02 1981-12-02 楽音発生装置

Publications (2)

Publication Number Publication Date
JPS5895792A JPS5895792A (ja) 1983-06-07
JPH033236B2 true JPH033236B2 (ja) 1991-01-18

Family

ID=16318585

Family Applications (1)

Application Number Title Priority Date Filing Date
JP56194078A Granted JPS5895792A (ja) 1981-12-02 1981-12-02 楽音発生装置

Country Status (1)

Country Link
JP (1) JPS5895792A (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0664465B2 (ja) * 1983-09-12 1994-08-22 ヤマハ株式会社 楽音発生装置

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS53102018A (en) * 1977-02-17 1978-09-06 Kawai Musical Instr Mfg Co Electronic musical instrument
JPS5855518B2 (ja) * 1977-04-28 1983-12-09 ヤマハ株式会社 電子楽器
JPS5528072A (en) * 1978-08-21 1980-02-28 Nippon Musical Instruments Mfg Electronic musical instrument
JPS5635192A (en) * 1979-08-31 1981-04-07 Nippon Musical Instruments Mfg Electronic musical instrument
JPS5778599A (en) * 1980-11-04 1982-05-17 Matsushita Electric Industrial Co Ltd Electronic musical instrument

Also Published As

Publication number Publication date
JPS5895792A (ja) 1983-06-07

Similar Documents

Publication Publication Date Title
US4246823A (en) Waveshape generator for electronic musical instruments
JPH0631968B2 (ja) 楽音信号発生装置
KR0135601B1 (ko) 전자 악기의 디지탈 신호 발생기
US4119005A (en) System for generating tone source waveshapes
JPS60258594A (ja) 音楽的音調発生装置
EP0169659B1 (en) Sound generator for electronic musical instrument
JPS5895790A (ja) 楽音発生装置
EP0235538A2 (en) Waveform generator for electronic musical instrument
US4256003A (en) Note frequency generator for an electronic musical instrument
USRE31648E (en) System for generating tone source waveshapes
JPH033236B2 (ja)
JPH033237B2 (ja)
JPH0225515B2 (ja)
US4446769A (en) Combination tone generator for a musical instrument
JPH0679225B2 (ja) 電子楽器における雑音減少装置
JP3435702B2 (ja) 楽音発生装置
JP2736550B2 (ja) 電子楽器の補間回路
JPS6322312B2 (ja)
JPS5895794A (ja) 楽音発生装置
JPS58100192A (ja) 楽音発生装置
JP2510090Y2 (ja) 楽音信号発生装置
JP2586443B2 (ja) 波形発生装置
JPS5895791A (ja) 楽音発生装置
JPS5938593B2 (ja) 電子楽器の制御装置
JP3007093B2 (ja) 楽音波形発生装置