JPS6022192A - 電子楽器 - Google Patents

電子楽器

Info

Publication number
JPS6022192A
JPS6022192A JP58131255A JP13125583A JPS6022192A JP S6022192 A JPS6022192 A JP S6022192A JP 58131255 A JP58131255 A JP 58131255A JP 13125583 A JP13125583 A JP 13125583A JP S6022192 A JPS6022192 A JP S6022192A
Authority
JP
Japan
Prior art keywords
data
waveform
musical tone
section
read
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
Application number
JP58131255A
Other languages
English (en)
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.)
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 JP58131255A priority Critical patent/JPS6022192A/ja
Publication of JPS6022192A publication Critical patent/JPS6022192A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Electrophonic Musical Instruments (AREA)

Abstract

(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。

Description

【発明の詳細な説明】 産業上の利用分野 本発明は電子楽器に関し、特に、回路の動作スピードを
高速化せずに、複雑な演算処理を行ない楽音波形を生成
する電子楽器に関する。
従来例の構成とその問題点 従来tデータメモリから楽音合成データを読み取り、そ
の読み取ったデータを用い楽音を生成する場合、一定時
間内たとえば、25μS (40kHz )おるいは、
8音時分割多重発生の場合は3/1g(40kHiX 
8. )ごとに波形サンプルを言−1−算して波形を発
生する必要があり、3/As内に合成データの読み取り
、読み取ったデータを用い波3杉勺三)戊を行なうこと
になり、高速な回路動作が要求さiする。
また、波形の形状変化を時間的に施す場合、1回の波形
サンプル発生に複数の楽音合成データの読み取りおよび
、複雑な計算処理が必要となり、さらに高速な回路動作
が要求され、実現力;困酸となる。
発明の目的 本発明の目的は、複数の楽音合成データの読み取り、複
雑な計算処理を行ない楽音を生成する場合でも、低速な
回路動作で実現できる電子系e(を提供するものである
発明の構成 本発明の電子楽器は、楽音合成データを言己1:音する
データメモリ部と、上記データメモリ部力1ら楽音合成
データを読み取るデータ読み取シ部と、上記データ読み
取り部で読み取った楽音合成データを用い楽音を生成す
る波形発生部とを具備し、データ読み取υ部で楽音合成
データ読み取り処理を行なうとともに、波形発生部で前
回読み取った楽音合成データを用い楽音を生成するよう
に構成したものであり、同一タイミング内で、読み取っ
たデータを用い波形生成せず1時間的に処理タイミング
を分けることにより、各部の動作スピードを低速化する
ものである。
実施例の説明 以下本発明の一実施例を図面に基づいて説明する。
第1図は本発明の一実施例を示す電子楽器のブロック図
である。(101)は鍵盤部(KB)、(102)は音
色タブレットスイッチや効果スイッチなどにより構成し
ている操作部(TAB)、(1oa)は中央処理装置(
CPU)で、コンピュータなどに用いられるものと同様
のもの、(104)は読み書き可能な記憶装置(ランダ
ムアクセスメモリでRAMと呼ぶ)、(106)はCP
U(103)の動作を決定す仝プログラムが格納された
読み出し専用記憶装置(リードオンリーメモリでROM
と呼ぶ)、(106)は楽音の合成を行なうだめの波形
サンプルデータや波形内挿を行なうだめの制(財)デー
タなどを記憶しているROMである。(107)はRO
M(106)に記憶している波形サンプルデータや制御
データを用いて楽音を発生する楽音発生部、(108)
はす7プリングノイズを除去するフィルタ、(109)
は電気音響変換器である。
鍵盤部(101)、操作部(102) 、 CPU(1
03)。
RAM(104)、ROM(105’)(106)、楽
音発生部(1o7)はデータバス、アドレスバスおよび
コントロール線で結合されている。このようにデータバ
スとアドレスバスとコントロール線とで結合する方法そ
の・ものは、ミニコンピユータやマイクロコンピュータ
を中心とした構成方法として公知のものである。データ
バスとしては8〜16本位用いられ、このバス線上をデ
ータが一方向でなく多方向に時分割的に送受信される。
アドレスバスも複数本たとえば16本用意され、通常は
CPU(1o3)がアドレスコードを出力し、他の部分
がアドレスコードを受け取る。コントロール線は通常メ
モリ・・リクエスト線(MREO)、I10リクエスト
線(IORQ)、す7ド線(RI)) 、ライト線(W
R)などが用いられる。
MREQはメモリを読み書きすることを示し。
l0RQは入出力装置(I/、0)の内容を取り出しす
ることを示し、RDはメモリやIloからデータを読み
出すタイミングを示し、WRはメモリやIloにデータ
を書き込むタイミングを示す。このようなコントロール
線を用いたものとしては、ザイログ社のマイクロプロセ
ッサz80があげられる。
次に第1図の電子楽器の動作について述べる。
鍵盤部(1o1)は、複数の鍵スィッチを複数の群に分
けて、群内の鍵スィッチのオン/オフ状態を一括してデ
ータバスに送ることができるように構成される。たとえ
ば61鍵の鍵盤の場合%6鍵(半オクターブ)ずつの1
0群と1鍵の1群の11群に分け、各群にアドレスコー
ドを1つずつ割りつける。アト、レスラインに上記各群
のうちの1つを示すアドレスコードが到来し、信号l0
RQと信号HDが印加されると、鍵盤部(1o1)はそ
のアドレスコードを解読して、対応する群内のキースイ
ッチのオン/オフを示す6ビツトまだは1ビツトのデー
タをデータバスに出力する。これらは、デコーダ、バス
ドライバおよび若干のゲニト回路を用いて構成すること
ができる。操作部(102)のうち、タブレットスイッ
チについては、鍵盤部(101)と同様の構成をとるこ
とができる。
CPU(103)はその内部にあるプログラムカウンタ
のコードに対応するROM(1oes)のアドレスから
命令コードを読み取り、これを解読して算術演算、論理
演算、データの読み込みと書き込み、プログラムカウン
タの内容の変更による命令のジャンプなどの作業を行な
う。これらの作業の手順はROM(1o5)に書き込ま
れている。まずCPU(1o3)はROM(105)よ
り鍵盤部(101)のデータを取り込むための命令を読
み取り、鍵盤部(101)の各鍵のオン/オフを示すコ
ードを各群ごとに取り込んで行く。そして、押鍵されて
いる鍵コードを、楽音発生部(107)の有限のチャネ
ルに割り当て鍵コードに対応する楽音発生データを送出
する。
次にcpu(1os)は操作部(102)よりデータを
取シ込むだめの一群の命令を順次ROM(105)から
読み取シ、これらを解読して操作部(,102)に対応
するアドレスコードとコントロール信号l0RQとRD
を出力し、データバスに操作部(102)のスイッチの
状態を表現するコードを出力させ、CPU(103)内
に読み込む。CPU(103)内に読み込んだデータに
基づいて、音色の選択や所定の効果側(財)データの生
成を行ない、ROM(106)に音色選択データ、楽音
発生部(107)K効果側脚データを送出する。なお、
押鍵されている鍵コードを楽音発生部(1o7)の有限
のチャネルに割り当ててゆく方法そのものは、ジェネレ
ータアサイナ機能として公知のものである。
楽音発生部(107)ではCPU (103)から供給
されだ楽音発生データに基づいて、楽音合成データRO
M(106)から所定の波形サンプルデータや制御デー
タを取シ込み波形内挿処理を行なって楽音波形を発生し
、フィルタ(10B)を介して電気音響変換器(109
)から楽音を発生させる。
第2図にCPU(1oa)から楽音発生部(107)に
データを供給する場合のタイムチャートを示す。
アドレスバスに工10ボートアドレスを、データバスに
楽音発生データや効果側聞データなどをそれぞれ供給す
る。そして、コントロール信号I ORQとWRが論理
ロウレベル(以下t(Onと略す)から論理・・イレベ
ル(以下°ゞI +1と略す)へ変化するタイミングで
、工10ポートアドレスで指定されているチャネルにデ
ータバスの内容をランチする。
次に、楽音発生部(’+07)に供給される各種のデー
タについての説明を行なう〇 第1表にI10ポートアドレスと各種データの内容を示
す。I10ポートアドレスは16進表示となっている。
I10ポートアドレス(00)+6から(07)+6に
対応するデータは、楽音発生データで8チャネル分すな
わち%8音分の発生が可能となっている。I10ボート
アドレス(08)16は減衰データでエンベロープ信号
の減衰11’!j性を指定するものである。
第1表 第2表に楽音発生データの構成内容を示す。ビット位置
DOからD3は音階周波数を指定するノートクロック指
定データである。ビット位置D4〜D6は発生音域を指
定する波形サンプル数指定データである。ビット位1f
iD7は鍵スィッチのオン/オフ操作に伴なうキーオシ
/オフ信号で、オフ時は’o”、オン時はパ1”となる
第3表に波形サンプル数指定データ5Do−8D2のコ
ード内容とそのコードで指定される波形1周期のサンプ
ル数を示す。波形サンプル数指定データSDは(ooo
’)2から(111)2’ECV)8種類ノ波形サンプ
ル数が指定できるようになっており、本実施例では1.
512サンプルから4サンプルまでを指定している。
第4表にノートクロック指定データNDo−ND3で表
わされるコードの内容と、そのコードで指定される指定
音階の関係を示す。
第2表 第3表 第4表 楽音合成データROM(106)の記憶内容についての
説明 第3図に発音開始時から発音終了時1での楽音波形のエ
ンベロープ包絡状態の一例を示す。第3図に示しだエン
ベロープ包絡の発音開始時から発音終了時までの楽音波
形から1枚(i=o+L+2.3I ・・・・・・、l
−1)を選択抽出する。そして、選択抽出した楽音波形
1周期をそれぞれN分割する。第4図に選択抽出した楽
音波形の一例を示す。
抽出しだ1枚の楽音波形1周期をN分割(n−o。
1+ 2+ 3+ ・・・・・・、N−1)−して得だ
N個の波形サンプル値すなわち、IXN個の波形サンプ
ル値と、楽音を生成する時に使用する制御データ(本発
明では、波形内挿を行なうだめの制御データを考えてい
る。)とをデータメモリに記憶しておく。
波形生成方法についての説明 波形生成方法としては、波形内挿処理を行ない楽音波形
を生成するものであり、選択抽出して得だサンプル波位
置土からi+1の間を楽音波形1周期がM回(m””O
y 1+ 2+ 3+ ・””’+ M−1)くり返し
て推移するものとし、波形サンプルf(Xi、n)とf
 (Xi++、n )との間に存在する仮想サンプル値
f (Xi、m、n )を補間演算を用い仮想的に仮想
サンプル点の波形サンプル値を算出して近似値をめるも
のである。補間式を下式に示す。
f (Xi、m、n)−f(Xi、n)+(f(Xi+
+、n) f(Xi、n)) X M・・・・・・(1
) iは、選択抽出しだ1枚の波形サンプル位置で、波形ナ
ンバを表わす。(1−o、1.・・・・・・。
ニー1) mは、波形ナンバlから1+1の間をM回繰り返し推移
している途中の位置を表わすものである。(m−o、1
.・・・・・・、M−1)nid、楽音波形1周期をN
分割したサンプル位置で、波形ザンプルナンパを表わす
(n−o、1.・・・・・・、N−1)第5図(2L)
に(1)式を用いだ補間例を示す。図かシもわかる工う
に、波形のつなぎ目で不連続が発生している。この不連
続点のレベル差が大きい場合は、不用なノイズ成分とし
て聴感上問題となる場合がある。そこで、本実施例では
、(1)式に補正項を加えて第4図(b)に示すように
不連続点の発生を防止している。(2)式に補正項を加
えた補間式を示す。
・・・・・・(2) 音程の発生方法についての説明 音階の決定については、12音階に相当するクロック信
号を発生する。オクターブ関係については、データメモ
リに記憶している楽音波形1周期のサンプル数をかえる
ことによりオクターブ関係の音程を発生している。
co音を612サンプルとすると、音階クロック信号は
、32.7031〜1zX512ザンプル≠16.74
曲となる。第5表に音階と音階クロックの関係を示す。
第5表 九。、=8.OO○96計 第6図は楽音発生部(107)の構成図である。
第6図において、(601)は主発振器% (602)
は楽音発生部(107)の動作内容を開側1するンーケ
ンザ、(603)はCPU(103)から供給される各
種のデータをランチする入力レジスタ部、(604)は
タイマー、(605)は比較レジスタ部、(606)は
発音すべき周波数に対応する周波数データを発生する周
波数データプロセッサ(以下FDPと略す)、(607
)は前述で説明した(2)式の波形内挿処理を行なう波
形データプロセソザ(以下WDPと略す)、(6oa)
は楽音合成データROM(106)から波形サンプルデ
ータや制菌データなどを読み込むデータ・リード・プロ
セッサ(以下DRPと略す)、(609)は所定のパル
ス幅のパルス信号を生成する読み出しパルス形成部、(
610)はWDP(607)、DRP(608)などに
演算処理要求を行なう計算要求フラグ発生部、(611
)はディジタル信号をアナログ信号に変換するディジタ
ル/アナログ変換器(以下DACと略す)、(612)
は1チャネル当りアナログスイッチ2つとコンデンサ1
つとで構成しアナログ信号を保持するアナログバッファ
メモリ部、(els)は積分器である。
上記構成において、(604)、 (eos)、 (e
oe)。
(610)は発音音階を決定するノートクロック発生部
を構成し、(608)は楽音合成データROM(106
)から所定のデータを読み出すデータ読み出し部を構成
し、(607)は該読み出したデータを処理し楽音を形
成する波形計算部を構成し、(611)、 (61,2
)、 (613)は該計算結果のディジタル信号をアナ
ログ信号に変換する変換部を構成する。
入力レジスタ部(603)、比較レジスタ部(605)
、FDP(606)、WDP(607)、DRP(60
8)、計算要求フラグ発生部(610)はンーケンサ(
602)によって処理を行なう手順が決められている。
CPU(103)から所定のチャネルたとえばチャネル
1に楽音発生データが供給されると、/−ケンザ(60
2)で決められている所定のタイミングで入カレジス’
z部(6os)からFDP(6o6)、WDP (60
7)、DRP (608)に楽音発生データが供給され
る。そうすると、DRP(608)において、楽音合成
データROM(106)から波形サンプルデータと制(
財)データを読み取る。そして、(2)式に示したf(
Xi、n)をデータWDIとし% f(Xi+1.n)
をデータWDIIとしてWDP(607)に供給する。
さらに。
読み取った制御データに基づいた@)式に示した内挿係
数の分子項をデータMLPとしてWDP’(60’7)
に供給する。
WDP(607ンでは、DRP(aos)から供給され
たデータWD■、 WDI、 MLPを用い、(2)式
の波形演算処理を行なってDAC(611)に供給する
。そして、DA(3(611)において、WDP(60
7)がら供給されたディジタル信号をアナログ信号に変
換し、アナログバッファメモリ部(612)にアナログ
信号として供給し、チャネル1に対応するコンデンサに
電荷が蓄えられる。
一方%FDP(606) では、入力レジスタ部(60
3)から供給された楽音発生データに基づいた周波数デ
ータが生成され、比較レジスタ部(eos)のチャネル
1に対応するレジスタに供給される。そして、比較レジ
スタ(eos)に供給されたデータとタイマー(604
)から供給されている時間データとの比較処理を行ない
、一致が検出できると一致パルスを読み出しパルス形成
部(609)と計算要求フラグ発生部(610)に供給
する。
そうすると、読み出しパルス形成部(T)09)で所定
のパルス幅の読み出し信号を生成し、アナログバッファ
メモリ部(612)に供絨する。アナログバッファメモ
リ部(6j2)内のチャネル1に対応するコンデンサに
蓄えられている電荷は読み出し信号によって積分器(,
613)に流れ込む。
計算要求フラグ発生部(elo)では、次の波形サンプ
ルすなわち、仮想サンプル点をめるだめの計算要求フラ
グを発生し保持する。そして、その後再び処理タイミン
グがチャネル1となると、計算要求フックが発生してい
るので前述と同様に波形内挿処理が行なわれ、アナログ
バッファメモリ部(612)内のコンデンサに電荷が蓄
えられる。
以後、計算要求フラグに対応して波形内挿処理が行なわ
れ、楽音波形を発生することになる。
なお、コンデンサに蓄える電荷は%f (Xi、m、n
−+ )と今回求めた波形サンプル値f(Xi、m、n
)との差分に相当する。そして、積分器(613,)に
よって今回求めた波形サンプル値f (Xi、m、n)
が復元されることになる。アナログバッファメモリ部(
612)と積分器(’613 )周辺の動作については
、特願昭57−126413 「波形読み出し装置」に
述べであるO 第7図はシーケンサ(602)の−具体例のブロック図
である。図中、(701)は2相りロック信号φ1と信
号φ2とを発生する2相りロック発生部% (702)
i1チャネル尚υの動作シーケンスを決める11進カウ
ンタ、(γ03)は現在演算処理を行なっているチャネ
ルコードを発生するカウンタ、(704)は動作手順が
記憶されているROM。
(706)ldデコーダである。第8図にシーケンサ(
602)のタイミングチャート図を示す。
主発振器(60’1)からマスタクロック(MCK)信
号が2相りロック発生部(アo1)に供給される。
2相りロック発生部(701)では、第8図に示すよう
な2相りロック信号φ1.φ2を発生する。信号φ1は
11進カウンタ(702)とカウンタC7os )に供
給されている。
11進カウンタ(902)は4ビツト構成となっでおり
、信号φ1がn o +1から1″へ変化するタイミン
グでカウントアツプ処理を行う。出力信号が(1111
)2となり、次にカウントアツプを行なうと(0101
)2にセットされる。この結果、11進カウンタ(70
2)の出力信号は11の状態、すなわち(olol)2
〜(1111)2となる。これを命令ステップ信号とし
て使用する。
カウンタ(7o3)は3ビツト構成となっており、11
カウンタ(702ンの出力信号が(1111)2か ′
ら(0101)2へ変化するたびにカウントアツプ処理
を行う。この結果、カウンタ(703)の出力信号は8
の状態、すなわち(000)2〜(111)2となる。
これをチャネルコードとして使用する。
ROM(704)は11進カウ7り(702)から供給
される命令ステップ信号に基づいた命令コードを読み出
し、デコーダ(705)に供給する。デコーダ(705
)はROM(704)から供給された命令コードを解読
して処理制御信号を各部に供給する。
この結果、1チャネル当りの計算時間は2.75μS 
となり% 11の命令ステップで各演算処理を行なうこ
とになる。そして、22μs ごとに計算タイミングが
返される−ことになる。
第9図にアナログバッフ1メモリ部(612)の−具体
例の構成図を示す。図中、(901)は入力端、(90
2)は出力端、(903)〜(908)はアナログスイ
ッチ、C1〜C8はコンデンサである。
アナログスイッチ(903)、 (905)、 (90
7)のゲート入力に供給されている信号AW1〜ムW8
はWDP(607)から供給されている。まだ、アナロ
グスイッチ(904)+ (906)l (908)の
ゲート入力に供給されている信号AR1〜ARsは読み
出しパルス形成部(6Q9)から供給されている。
DAC(611)で変換されたアナログ信号は入力端(
901)に印加されアナログスイッチ(903)+(9
05)l (907)に供給される。そして、チャネル
1に対応するデータであれば、アナログスイッチ(90
3)のみオン状態となり%入力端(901)に印加され
たアナログ信号に相当する電荷がコンデンサC1に蓄え
られる。
その後、チャネル1に対応する読み出しパルスAR1が
読み出しパルス発生部(609)からアナログスイッチ
(904)のゲート入力に供給されると、コンデンサC
1に蓄えられている電荷が出力端(902)を介して積
分器(e13)に供給される。
アナログスイッチ(903)、 (905)、 (90
7)はWDP(607)の動作タイミングに同期してい
るので、同時に複数個オン状態にならない。アナログス
イッチ(904)・(’906)、 (9Q8)は音階
周波数に同期してオンするようになっているため、複数
個同時にオン状態となりうる。
第10図は楽音発生部(107)の内部動作タイミング
チャートである。第10図には4チャネル分のタイミン
グを示しだ〜。
図中の略記号の説明 CRFは、谷チャネルごとの計算要求信号である。
そして、要求開始時点が比較レジスタ 部(eoe)から供給される一致信号と同期している。
すなわち、音階周波数 に同期することとなり、たとえ、げ、C音階であれば5
?、74μsごとに発生する。
aLeは、波形演算タイミングを示す。
DACは、DAC(611)を介してアナログバッファ
メモリ(612)内のコンデンサに電荷を蓄えるタイミ
ングを示す。
OTCは、アナログバッファメモリ(e12)内のコン
デンサに蓄えられている電荷を積 分器(613)に供給するタイミングであり、CRFと
同様に、音階周波数に同期して発生している。
チャネル1のタイムチャートについて説明する。
チャネル1に相当する演算タイミングはシーケンサ(6
02)で発生しているチャネルコードによって決まって
お9%図にも示しであるように、22μs ごとに演算
タイミングが発生している。
■・・・信号CRF1がチャネルコート11の途中で発
生する。発生したタイミングでは波形内挿処理および、
データ読み取シ処理を行なわない。
■・・・信号CRF1が発生すると同時に信号0TC1
が 6 発生し、アナログバッファメモリ(612)内のコンデ
ンサC1の電荷を積分器(613Jに供給する。信号O
TCのパルス幅は2μs程度である。
■・・・チャネルコードが再び1となると、波形ザンプ
ルデータなどの読み込み処理や波形内挿処理や周波数デ
ータの更新処理fJを行なう。
■・・・チャネル1の演算処理が終了するとs 4g号
DACIが発生し、DAC(611)を介してコンデン
サC1に電荷が蓄えられる。
■・・・チャネル1の演算処理が終了すると、信号CR
F1をリセットして計算要求を解除する。
■・・・前述の■と同様に、信号CRF1が再び発生す
るタイミングで、前述の■のタイミングでコンデンサC
1に蓄えられた電荷を積分器(613)に供給する。
以後、上述と同様に、信号CRFが発生するたびに%1
回の仮想波形サンプル値算出処理が行なわれ、信号CR
Fの発生タイミング、すなわち音階同期に同期して波形
算出結果を積分器(613)に供給する。
演算サイクルと音階周期の関係は、最小音階周期内に同
一チャネルの演算タイミングが2回と演算結果をアナロ
グバッファメモリ部(612)内のコンデンサに電荷を
蓄えることが出来ればよい。
すなわち、最小音階周波数内に1oチャネル分に相当す
る演算タイミングを設ければよい。
タイマ(604) + 比較レジスタ部(605)+y
DP(eoe)v 計算要求フラグ発生部(610)で
構成しているノートクロック発生部の説明第11図に、
FDP(606)から比較レジスタ部(606)に供給
する周波数データの推移を示す。
タイマー(604)は10ビツトの2進カウンタで構成
しており、出力状態を16進表示で表わすと、(Coo
○)16から(3F’F )16まで順次カウントアン
プを行ない、(3FF)16から再び(ooo)1bと
なり。
(ooO)16から(3FF)+675”主発振器(6
o1)から供給される信号MCKに基づいてくり返され
る。すなわち、タイマー(604)のくシ返し周期TR
は下式のようになる。
=127.98μs タイマー(604)の出力データ推移状態を第11図中
のタイマー出力データとして記載しである。
音階周期の発生方法としては、タイマー(604)の出
力信号とFDP(eoe)から比較レジスフ部(605
)に供給された周波数データとの比較を行ない、一致が
検出できれば一致パルスヲ比較しジスタ部(605)か
ら送出する。その一致パルスの発生周期が発音すべき音
階の音階周期となる。
第11図に示したように、周波数データを更新すること
によシノートクロソク信号が発生できる。
すなわち、下式に示すような演算処理をFDP(eoe
)で行なう。
NF’D=MOD(OFD+PD、TDm、) 、、、
−、、(4)NFDは、新しい周波数データである。
OFDは、更新前の周波数データである。
FDは1発生音階によって決1っている音階データであ
る。
’rI)maxは、タイマー(604)の出力状態数で
ある。本実施例の場合T I)maxは210すなわち
1024である。
第6弐に12音階に対応する音階データPDを示す。
第6表 数字表現は10進数である。
データ・リード・プロセッサDRP(60B)の処理内
容の説明 まず、データメモリ(楽音合成データROM (106
) )に記憶しているデータの内容について説明する。
第12図にデータメモリの一例を示す。
楽音合成データは、制御データと波形データとを1組と
する合成データと先頭アドレスデータとから構成してい
る。
先頭アドレスデータは、それぞれの合成データの先頭ア
ドレスを示すデータである。
制(財)データは、制御データ領域に格納しているデー
タのアドレス長を示す制(財)データ長データ(CDL
)とループ波形区間の先頭波形を示すループ先頭波形ナ
ンバ(RTI)と波形データを用い合成波形を生成する
時に使用する推移データとから構成している。推移デー
タは波形データ1枚ごとに設けている。なお、第12図
の例では、データCDLはCDL==(’11 )jQ
’、データRTWNはRTWN=(5)1oとなってい
る。
波形データは、楽音波形1周期を複数枚(第12図では
10枚)有している。
複数組の合成データは、鍵スィッチの位置によって合成
データを用意するたとえば、オクターブごとに異なる合
成データを用意するものや、音色に応じて異なる合成デ
ータを用意するものである。
次に、第12図に示した推移データについて説算出を簡
略化する方法として次のようにしている。
■ (2)式ではNm +n項の増分値が1であったが
、補間係数の分子項の増分値をαとする。
Nm+n (Nm+n)α ■ 補間係数 MN を MNa と置き換える。
■ MNの項を216と固定化する。
この結果、補間係数は(Nm+n)α/216 となり
、1/216項は固定的に右シフト操作を行なうだけで
よく、MN項をめ除算する必要がなくなり、補間係数の
算出が容易になる。第7表に推移データと増分値αと、
波形1周期のサンプル数と、波形推移回数との関係を示
す。
なお、推移回数データが(F)+6の場合は、最終波形
を示す最終波形フラグ(信号WEF )であり、波形ナ
ンバiをi−データRTWNとしてループ処理を指示す
るものである。第12図の例では、推移データ(9)に
(F)+6を格納している。
DRP(60B)の処理としては、3種類の処理がある
(1) イニシャル処理 (11)波形生成処理 (iii) ループ制(財)処理 第7図に処理の流れ図を示す。捷ず、記号の説明を行な
う。
D(SD、ND)は、入力レジスタ部(603)から供
給している楽音発生データ(ND、SD)である。
M(ROM)は、楽音合成データROM(106)であ
る。
R(TAD)は、先頭アドレスデータを格納するレジス
タである。
R(CDL)は、制御データ長データを格納するレジス
タである。
R(RTWN ) は、ループ先頭波形ナン・(ブータ
ラ格納するレジスタである。
R(n)は、波形サンプルナンバを格納するレジスタで
ある。
R(i)は、波形ナンバを格納するレジスタである。
R(MLP)は、補間係数(Nm+n)αを格納するレ
ジスタである。
CF(MLP)は、補間係数の更新の結果桁上げの有無
を表示するキャリー・フラグであシ、桁上げを行なう場
合OF (MLP )=“′1″となる。
R(WDI)は、波形サンプルf(Xi、n)を格納す
るレジスタである。
R(WDI)は、波形サンプルf(Xi++、n)を格
納するレジスタである。
R(REP)は、推移データを格納するレジスタである
S D (i)は、波形ナンバiを波形サンプル数SD
に応じて左シフトを行なったデータであり、たとえば、
8D=1e;(2’)サンプルの場合は、左に4ビツト
シフトを行なったデータとなる。
D(α)は、推移データREPに基づいた増分値αであ
る。
D(SD)は、波形サンプル数である。
wxyは、最終波形データを示すフラグであシ。
最終波形ならW g p 、= t(111となる。
なお、上記の各種レジスタR(x)は%DRP(608
)内に設けている。
また、各種レジスタR(x)は、チャネル数分用意して
いる。
なお、本実施例では、楽音合成データ(ND、SD)〔
7ビツト〕に対応する先頭アドレスデータを有するもの
で1、楽音合成ROM(106)の先頭アドレスデータ
領域は、27=128語となっている0 次に、第13図の処理流れ図の各部の説明を行なう。
■ 楽音発生に先立ち、初期設定を行なうものであり、
入力レジスタ部(603)から供給している楽音発生デ
ータD(SD、ND)に対応する先頭アドレスデータを
楽音合成データROM(以下データROMと略す)、(
106)から読み取り、レジスタR(TAD )に格納
する(D(SD、HD)−。
M(RO,M)、M(ROM)→R(TAD))。そし
て、先頭アドレスに対応する制御データ長データDCL
とループ先頭波形ナンバデータRTWNを読み取り各レ
ジスタR(DCL)、R(RTWN)に格納する(n(
Tap)−〉M(moM)、M(ROM)→R(、CD
L)、R(RTWN))。さらに、波形サンプルナンバ
n、波形ナンバi、補間係数MLP。
キャリー・フラグCF(MLP)、波形サンプルf (
Xi、n)、f (Xi++、n)の初期設定(’(0
)1o−+R(n)。
R(i)、R(MLP)、OF(MLP)、R(WDI
)。
R(WDII)) を行なう。
■ 波形サンプルf (Xi、n)1.f (Xi−)
1.n)と補間係数MLPをWDP(607)へ供給〔
R(WDI)。
R(WD…)+ R(MLP)→WDPへ〕するととも
に、波形ナンバiに対応する推移データREPの読み取
りを行なうものである。
推移データRIPの読み取りは、推移データアドレスの
算出(R(TAD)十R(i)+1)を行ないデータR
OM(106)に供給(→R(ROM))L−データR
OM(1o6)から推移データRICPを読み取る(M
(ROM)−>R(R1!:P)’)。
■ 最終波形の有無を調べるものであり、レジスタR(
REP)に格、納した推移データREPが(F)16な
ら最終波形を示し、次の■の処理を実行し、REP\(
F)16なら次の@の処理をスキップして■の処理に進
む分岐判断を行なうものである。
■ 最終波形データの場合実行するものであり、レジス
タR(RTWN)に格納したループ先頭波形ナンバデー
タRTWNを波形ナンバレジスタR(i)に転送し、波
形ナンバiをループ先頭波形にセットする( R(RT
WN ) −)R(i))。そして、波形ナンバiに対
応する推移データREPの読み取りを行なうものである
推移データRIPの読み取りは、上述の■の処理で説明
したものと同様な処理を行なう。
■ 波形サンプルf (Xi、n)の読み取りと、波形
サンプルナンバnの更新(R(n)+ 1−>R(n)
)および、補間係数MLPとキャリフラグCF(MLP
)の初期設定(Ulo−+R(MLP)、CF(MLP
))を行なうものである。
波形サンプルf(Xi、n)の読み取りは、波形サンプ
ルアドレスの算出(R(TAD)+R(CDL)+5D
(i)+R(n))を行ない、データROM(106)
に供給(、、M(ROM))L、データROM(106
)から波形サンプルf(Xi、n)を読み取りレジスタ
R(WDI)に格納する(M(ROM)→R(WDI)
)。
■ 波形サンプルf (Xi、n)、 f(Xi+1.
n)と補間係数MLPとをWDP(607)へ供給(R
(WDI)。
R(WDI)、R(MLP)→WDPへ〕するとともに
、波形サンプルf(Xi、n)とf (Xi+1.n)
の読み取りと、補間係数MLPの更新処理(R(MLP
)+n(α)→R(MLP))と波形サンプルナンバn
の更新処理(R(n)+1→R(n) )を行なうもの
である。
波形サンプルf(Xi、n)の読み取りは、波形サンプ
ルアドレスの算出(R(TAD)+R(CDL)+5D
(i)+1R(n))を行ない、データROM(106
)に供給するとともに、レジスタR(WDA )に格納
する。そして、データROM(106)から波形サンプ
ルf(Xi、n)を読み取る(M(ROM)−+R(W
DI))。
波形サンプルf (Xi+1.n )の読み取りは、波
形サンプルアドレスの算出(R(WDA) + D (
S D )、)を行ない、データROM(106)に供
給し、データROM(106)から波形サンプk f 
(Xi++、 n )を読−’h取9vジ、z、pR(
WDII)K格納(M(RO’M)→R(WD…)〕す
る。なお、波形サンプルアドレスは、波形サンプルf(
Xi、n)でめたアドレス(レジスタR(WDA)に格
納しである)と波形サンプル数SDとの加算処理を行な
うことにょシ算出できる。
■ 利用波形データの更新の有無を調べるものであシ、
フラグOF(MLP)二11″なら波形ナンバの更新処
理を行ない、処理■へ進む。まだ。
OF(、MLP)\パ1”′なら更新を行なわず、処理
■に進む分岐判断を行なうものである。
■ 波形ナンバiの更新処理(R(i)+1−→R(i
))を行なうものである。
次に、第13図の処理流れ図を用い、前述(1)〜01
1)の処理について説明する。
(1) イニシャル処理 キーオン/オフ信号KDがオフ(t(011)からオン
(パ1” )に変化すると、処理■を実行して押鍵スイ
ッチに対応する楽音を発生するだめの初期設定を行なう
(II)波形生成処理 イニシャル処理が終了した後、計算要求フラグと所定の
演算タイミングから、第1図中(3)に示した波形発生
区間の波形を生成するものであり、処理■、■、■→■
、■→■、■→・・・・・・■。
■→■、■、■→■、■、■→■、■→・・・・・・と
順次計算要求フラグと演算タイミングに従い処理を行い
、最終波形W9まで推移する。使用波形を更新する場合
、処理■、■、■、および■を実行し推移データREP
 と波形ナンバiの更新を行なう。その他の場合は、処
理■を実行し、順次波形サンプルf(Xi、n)げ(X
i+1.n)t f(Xi、n++)if(Xi+1.
n+1)+ ・・・・・・+ f(Xi、ト+);7(
Xi++、n−1)+ −・・・を読み取るとともに、
補間係数MLPの更新を行なう。
なお、処理■、■のくり返し実行回数CRPは、CRP
 = M(i)X S D−1となる。M (i)は、
推移データRIP に基づいたくり返し数である(第7
表参照)。SDは波形サンプル数である(SD=4. 
8.−・・・・−,512)。
(iii) ループ制御処理 使用波形の更新を行ない、読み取った推移データRIP
がRIP−CF)16となると、レジスタR(RTWN
)に格納しているループ先頭波形ナンバRTWNQ波形
ナンバレジスタR(i)に転送し波形ナンバiの変更を
行なう。以降上述の(11)波形生成処理と同様な処理
を行ない、再び、最終波形となると、ループ制御処理を
行ないループ先頭波形に戻り波形サンプルの読み取りな
どを行ない、ループ波形発生区間を実現する。
処理■、■、■、■→■、■→■、■−ン・・・・・・
→■、■→■、■、■−)■、■、■→■、■−)■、
■−・・・・・・・→■、■→■、■、■→■、■。
■、■→■、■→・・・・・・と順次所定のタイミング
に従い実行する。
そして、キーオン/オフ信号が再びオフ(0)から(”
1”)に変化すると、処理■に戻り、上述したような、
イニシャル処理→波形生成処理→ループ制御処理→波形
生成処理→ループ制(財)処理→・・・・・・を順次実
行する。
なお、イニシャル処理、波形生成処理、ループ制御処理
中にキーオン/オフ信号KDがオフからオンになった場
合でも、所定のタイミングで処理を中断して、イニシャ
ル処理から再び実行する。
丑だ、波形データW5と波形データW9とを同一の波形
とすることにより、波形データW8と波形データW9の
補間処理が終了した後、使用波形データがW5とW6と
なっても、連続的につながったループ波形を発生するこ
とができる。
波形サンプル数SDと波形サンプルナン/< n 。
補間係数MLP、波形ナン、<1の推移関係を下記に示
す。
(SD=4、推移データRKP=Dの場合)nMIJP
 i OO。
1 8192 0 2 16384 0 3 24576 0 0 32768 0 1 40960 0 2 、、、.49’+52 0 3 57344 0 Q 65536(=O) 1 2.2’ 2 波形デ一タプロセツサwnp(6o了)の処理内容の説
明 WDP(eo7)の処理としては、4種類の演算処理が
ある。
■ 波形補間処理を行なって仮想波形サンプル値f (
Xi、m、n)をめる。
■ 仮想波形サンプル値f(Xi、m、n) (!:エ
ンベローグ信号EDとの乗算を行ない、エンベロープ付
△ 加液形サンプル値f (Xi、m、n、q、r)をめる
■ 前回求めたエンベロープ付加波形サンプル値f (
Xi、in、 n−1,q 、r−1)と今回求めだエ
ンベロープ付加波形サンプル値f (Xi、m、n、q
、r )との差分演算を行ない差分波形サンプル値Df
 (Xi、m、n、q、r)をめる。
■ エンベロープ信号EDの更新を行なう。
エンベロープ信号EDとエンベローフ付加方法について
説明する。
エンベロープ信号EDは20ビツトで構成している。上
位4ビット−q E D U (Q)%下位16ビツト
をE D L (R)とする。
エンベロープ信号EDの更新方法は、新ED−旧ED+
Δ1jDと云う演算処理を行なってめる。
増分エンベロープデータΔEDは、CPU(103)か
ら入力レジスタ部(eo3)に供給している減衰データ
を使用する。
エンベロープ付加波形サンプル値をめる演算式を下式に
示す。
・・・・・・(→ q =o、11 21 −−+ Q ’ (Q=2 ;
 ED” )r、=o、1,2. ・−−−−−、R−
1(R=2 ;KI)L)エンベロノブデー夛uni単
調増加すなわち、新ED−旧ED+ΔED (一定)と
し%(6)式を実行することにより、指数特性の減衰エ
ンベローフ。
を付加することができる0 なお、キーオン/オフ信号KDが+!111(オン状態
)の場合は、エンベロープ信号Kn二に)10(EDU
=ゆ)、0. ’E D L = (0)+o’)を設
定し、キーオン/オフ信号KDがゞto+1 (オフ状
態)になると、上述したエンベロープ信号EDの更新処
理を行なうO この結果、キーオン時には、実質的に。
f (Xi、m、n、q、r ) = f (Xi、m
、n)となる。
そして、キーオフになると(5)式を実行し、エンベロ
ープ付加波形サンプル値をめることになる。
また、エンベロープ信号KDの更新が進み、EDU:(
1111)2 となると、エンベロープ付加波形サンプ
ル値f(xll m+ n+ Q+ r ) −b)1
o と設定するとともに、エンベロープ信号KDの更新
処理を禁止する。この結果、楽音波形の発生が終了した
ことになる。
第14図に前述した■〜■の演算処理の流れ図を示す。
第14図中C点で処理■に対応する仮想サンプル値f(
Xi、m、n)が算出できる。
G点で処理■に対応するエンベロープ付加波形サンプル
値f (Xi、m、n、q、r )が算出できる。
H点で処理■に対応する差分波形サンプル値D f (
Xi、m、n、q、r)が算出できる。
次に、DRP(608)で読み取った波形サンプルと仮
想サンプル値f(Xi、m、n)の関係について述べる
〈処理■で読み取ったデータ〉 WDl =f(Xi、n) WD…=伺でも良い。
MLP =に)1゜ となり% f (Xi、m、n ) = f (Xi、
n)となる。
〈処理■で読み取ったデータ〉 ”I=f(Xi、n) W D l ”” f (Xi++、n )MLP==
(Nm+n、)α となり。
となる。
次に、WDP(607) とDRP(608)の相互関
係について説明する。
チャネル1に対応する説明を行なう。なお、計算要求フ
ラグ信号GRFが発生しているものとする。
■ シーケンサ(602)で発生しているチャネルコー
ドCHCがチャネル1のタイミングになると、チャネル
1に対応する楽音発生データを入力レジスタ部(603
)からFDP (60e)、wnp(607)+DRP
(608) へ供給する。
■ そうすると、DRP(608)で楽音発生データに
基づいて、データROM(106)から先頭アドレスデ
ータ、制御データ、波形データf(Xi、n)。
f (Xi+1.n )を読み取り、制(財)データに
基づいてめた係数(Nm+n)α と波形データf(X
i、n)。
f (Xi++、 n ) とを命令ステップ11のタ
イミング(第8図参照)でDRP (608)内のレジ
スタR(WDI)、R(WDl[)、R(MLP)に格
納する。
■ 一方、WDP(607)では、命令ステップ1のタ
イミングで、チャネルコードCHCに基づいてDRP(
608)内のレジスタR(WD l )、R(Wlll
)。
R(MLP)から読み出されている係数データ(Nm+
n)α−1と波形データf(xi、n−1)+ f(X
i++、n−1)とを一時記憶する。そして、一時記憶
したデータを用い波形演算処理を行なう。そして、命令
ステップ11のタイミングで、演算結果(差分波形サン
プル値Df(Xi、m、n−++q+r))をWD P
 (607)内のレジスタR(OBR)に格納し、DA
Ci(611)に供給する。
上述の■〜■の処理が、シーケンサ(eo2)から発生
しているチャネルコードCHCのチャネル1に対応する
命令ステップト11の同一タイミング内で実行される。
そして、再びシーケンサ(602)で発生しているチャ
ネルコードCHCがチャネル1となると。
下達の処理を行なう。
■ 上述■の説明と同様に、チャネル1に対応する楽音
発生データを、FDP(606)、WDP(6Q7)、
DRP(60B)に供給する。 。
■ 上述の■の説明と同様に、DRP(6os)で、デ
ータROM(1oe)内に格納している制(財)データ
、波形データf(Xi、n++)、f(Xi+1.n4
−+) ′f:読み取シ、レジスタR(WDI)、R(
WD川)、、R(MLP)に格納する。
ただし、上述■で説明した内容と異なる点は、データメ
モリ(1o6)から読み取る制御データや波形データは
、上述■のタイミング、すなわち、前回のチャネル1の
計算タイミングで更新した波形ナンバi、波形サンプル
ナンバnに基づいたデータとなる。
■ 上述■と同様に、DRP(eos)内のレジスタR
(MLP)、R(WDlン、R(WDl[)から読み出
されているデータに基づいて、波形演算処理を行なう。
なお、今回の計算タイミングで波形演算処理に用いるデ
ータは、前回のチャネル1のタイミングでDRP(eo
a)内に読み取り処理を行なった係数データ、波形デー
タf(Xi、n )、f(Xi+1. n )である。
以降、計算要求フラグ信号ORFに基づいて、チャネル
1に対応する計算タイミングで、上述の処理がくり返さ
れる。
なお、DRP(eos)で読み取るデータは、第13図
で説明した処理流れ図に基づくものである。
上述の説明のように、DRP’(608)で読み取った
データは、次回に発生する計算タイミング(ただし、計
算要求フラグ信号CRFが発生している時)で%WDP
 (607)で行なう波形演算処理に用いる。
このように、読み出し、波形演算処理を、同一計算タイ
ミング内ですべて実行せず、時間的に処理タイミングを
分け、パイプライン的処理を行なうことにより、各一部
の構成要素の動作スピードを低速化できる。− たとえば、命令ステップト11のタイミング内で、楽音
合成データROM(106)から先頭アドレスデータと
制(財)データあるいは、制御データと波形データf(
Xi、o)あるいは、波形データf(Xi、n)。
f (Xi++、 n )の2種類のデータを読み取れ
ばよく、1デゴタ当りの読み取り時間RTは、 RT = 2.75 μs/2 = 1.37ps (
、max)となる。
一方、命令ステップト11のタイミングですべての処理
を実行する場合、1データ当りの読み出し時間RT’は
、波形演算処理を考慮して。
RT’≦(2,75μB/2 )/2 = 8871s
となり、データROM(,106)の動作スピードが約
2倍になる。
また、 WDP(607)内にある乗算器などの動作ス
ピードも約2倍となる。
発明の詳細 な説明したように、本発明の電子楽器は、楽音合成デー
タを記憶するデータメモリ部と、上記データメモ9部か
ら楽音合成データを読み取るデータ読み取シ部と、上記
データ読み取り部で読み取った楽音合成データを用い楽
音を生成する波形発生部とを具備し、データ読み取り蔀
で楽音合成データ読み取り処理を行なうとともに、波形
発生部で前回読み取った楽音合成データを用い楽音を生
成するように構成することにより、各部の動作スピード
を低速化することができ、LSI化が容易になる。
【図面の簡単な説明】
第1図は本発明の一実施例の電子楽器のブロック図、第
2図〜第5図はその動作説明図、第6図は同実施例の楽
音発生部の構成図、第7図は同実施例のシーケンサの構
成図、第8図は第7図の動作説明図、第9図は同実施例
のアナログバッファメモリ部の構成図、第10図〜第1
4図はその動作説明図である。 (101)・・・・°°鍵盤、(102)−・−・−操
作部、(1oa)・・・・・・中央処理装置、(104
)・・・・・・RAM、(105)・・・・・・ROM
、(1oe)・・・・・・楽音合成データROM。 (1o7)・・・・・・楽音発生部、(eol)・・・
・・・主発振器、(602)・・・・・・シーケンサ、
(603)・・・・・−人力レジ−スタTa、(604
)・・・・・・タイマー、(605)・・・・・・比較
レジスタ部、(6,06)・・・・・・周波数f−タブ
ロセソサ、(eo7)・・・・・・波形計算部、(60
B、)・・・・・・データ・リード・プロセッサ、(6
09)・・・・・・読み出しパルス形成部、(610)
・・・・・・計算要求フラグ発生部、(el 1 )・
・・・・・DAC,(612)・・・・・・アナログバ
ッフ1メモリ部% (613)・・・・・・積分器。

Claims (1)

    【特許請求の範囲】
  1. 楽音合成データを記憶するデータメモリ部と、上記デー
    タメモリ部から楽音合成データを読み取るデータ読み取
    り部と、上記データ読み取り部で読み取った楽音合成デ
    ータを用い楽音を生成する波形発生部とを具備し、デー
    タ読み取9部で楽音合成データ読み取り処理を行なうと
    ともに、波形発生部で前回読み取った楽音合成データを
    用い楽音を生成するようにしたことを特徴とする電子楽
    器。
JP58131255A 1983-07-18 1983-07-18 電子楽器 Pending JPS6022192A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP58131255A JPS6022192A (ja) 1983-07-18 1983-07-18 電子楽器

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP58131255A JPS6022192A (ja) 1983-07-18 1983-07-18 電子楽器

Publications (1)

Publication Number Publication Date
JPS6022192A true JPS6022192A (ja) 1985-02-04

Family

ID=15053633

Family Applications (1)

Application Number Title Priority Date Filing Date
JP58131255A Pending JPS6022192A (ja) 1983-07-18 1983-07-18 電子楽器

Country Status (1)

Country Link
JP (1) JPS6022192A (ja)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5227621A (en) * 1975-08-11 1977-03-02 Risaachi Lab Ltd Deutsche Double tone synthesizer
JPS5515153A (en) * 1978-07-19 1980-02-02 Kawai Musical Instr Mfg Co Electronic musical instrument

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5227621A (en) * 1975-08-11 1977-03-02 Risaachi Lab Ltd Deutsche Double tone synthesizer
JPS5515153A (en) * 1978-07-19 1980-02-02 Kawai Musical Instr Mfg Co Electronic musical instrument

Similar Documents

Publication Publication Date Title
JPS634197B2 (ja)
JPS6022192A (ja) 電子楽器
JPH0331273B2 (ja)
JPS60233695A (ja) 電子楽器
JPS59220798A (ja) 電子楽器
JPH0231396B2 (ja)
JPH0127434B2 (ja)
JPS59136795A (ja) 楽音発生装置
JPS59136796A (ja) 楽音発生装置
JPS6343759B2 (ja)
JPS59123887A (ja) 楽音発生装置
JPH0127436B2 (ja)
JPS59214092A (ja) 電子楽器
JPS59214091A (ja) ノ−トクロツク発生装置
JP2940384B2 (ja) 電子楽器
JPH0421199B2 (ja)
JPS6033597A (ja) 電子楽器
JPH0127435B2 (ja)
JPS59220797A (ja) 電子楽器
JPS59220799A (ja) 電子楽器
JPH03204695A (ja) 楽音合成装置
JPS6033596A (ja) 電子楽器
JPS6032096A (ja) ノ−トクロック発生装置
JPH02179698A (ja) 処理装置
JPS59136792A (ja) 楽音発生装置