JPS61252591A - 電子楽器 - Google Patents

電子楽器

Info

Publication number
JPS61252591A
JPS61252591A JP60093702A JP9370285A JPS61252591A JP S61252591 A JPS61252591 A JP S61252591A JP 60093702 A JP60093702 A JP 60093702A JP 9370285 A JP9370285 A JP 9370285A JP S61252591 A JPS61252591 A JP S61252591A
Authority
JP
Japan
Prior art keywords
data
latch
address
bits
waveform
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
JP60093702A
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 JP60093702A priority Critical patent/JPS61252591A/ja
Publication of JPS61252591A publication Critical patent/JPS61252591A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Electrophonic Musical Instruments (AREA)

Abstract

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

Description

【発明の詳細な説明】 (産業上の利用分野) 本発明は電子楽器に係るものであり、特にメモリ等に格
納された波形データを読み出すことによって楽音を発生
するものに関する。
(従来の技術) 近年電子楽器はデジタル信号処理技術の導入により高度
な音づくりが可能となった。これにより、たとえばピア
ノ、チェンバ口といった自然楽器に非常によく似た音色
を発生することも容易となったが、一方向然楽器は通常
音域によって音色が異なるという特徴があり、電子楽器
にて自然楽器音を発生する場合にもやはり音域によって
音色を変化させなければ不自然な感じを与えることにな
る。
第14図に、メモリを読み出すことにより楽音を発生す
る電子楽器におけるメモリの構成図を示す。
従来は第14図に示すような構成で上記に示すような音
域による音色の変化を与えていた。即ち、第14図にお
いて、波形データ(1)〜(Y)は楽音の波形を表わす
データである。制御データ(1)〜(Y):よ波形デー
タを読み出す際にどのように波形データを読み出すかを
表わすデータである。先頭アドレス128ワードはY組
の波形データ、制御データの先頭アドレスを表わす。こ
の先頭アドレスは鍵盤上の8鍵に対して1対1で対応さ
れており、例えばC3の鍵が押圧されたとすると、C3
に対応する先頭アドレスを読み取り、読み取られた先頭
アドレスに対応する波形データ、制御データに基づいて
楽音を発生するものである(例えば特願昭58−118
59号)。
(発明が解決しようとする問題点) しかしながら上記のような構成では、例えば波形データ
(1)と(2)が全く同じデータでよいが、各々に対応
する制御データ(1)、 (2)の内容が異なるといっ
た場合であっても同じ内容の波形データを2組用意する
必要がある。このためかなり冗長なデータを有すること
になりメモリサイズが増加するという問題点を有してい
た。
本発明は上記問題点に鑑み、冗長なデータを有すること
なく楽音のデータを格納した電子楽器を提供するもので
ある。
(問題点を解決するための手段) 上記問題点を解決するために、本発明は、次のような特
徴をもつデータバンクと楽音発生部を有している。即ち
、データバンクは、波形データと、該波形データのアド
レスを含む第1のデータと、該第1のデータのアドレス
を含む第2のデータとが格納されるものである。そして
、楽音発生部は、少なくとも音色選択データと音程デー
タとを含む演奏データを受取り、上記データバンクから
該音色選択データと該音程データの全部又は一部をアド
レスとして該当する第2のデータを読み出し、上記デー
タバンクから該第2のデータの全部又は一部をアドレス
として該当する第1のデータを読み出し、上記データバ
ンクから該第1のデータの全部又は一部をアドレスとし
て該当する波形データを読み出し、該波形データに上記
演奏データに基づく処理を施して楽音信号を発生するも
のである。
(作用) 本発明は上記した構成によって、押鍵により、音色選択
データ及び音程データで波形データ及び制御データの各
々のアドレスを格納しであるデータのアドレス即ちヘッ
ダアドレスデータ1(ADを読み出し、次いでヘッダア
ドレスデータ)IADに基づいて波形データ及び制御デ
ータを読み出す、故にある音色においては波形データ1
と制御データ1を、他のある音色においては波形データ
1に対して制御データ2を用いるという場合においても
ヘッダアドレスHADの値を変えておけば従来例のよう
に波形データを2組設ける必要がなく、メモリの増加を
防ぐことができる。
(実施例) 以下図面に基づき本発明の一実施例を説明する。
第1図は本発明による情報処理装置を電子楽器に用いた
場合のブロック図である。この第1図を説明すると、1
−1は鍵盤である。l−2はタブレットであり、本電子
楽器より出力される楽音の音色の選択を指示する操作部
である。1−3は効果スイッチであり、楽音に対する各
種の効果の制御、例えばヴイブラート、トレモロ等の効
果のオン・オフを指示するスイッチである。1−4はマ
イコン(マイクロコンピュータ)であり、例えばインテ
ル社のマイコン8049等が相当する。1−5は楽音発
生部であり、マイコン1−4より与えられた制御信号に
基づいて波形演算、周波数演算を行う。1−6はデータ
バンクであり、楽音発生部1−5にて使用する波形デー
タやエンベロープデータが格納されているROM (読
出専用メモリ)である。1−7はフィルタであり、楽音
発生部1−5より出力される楽音信号の折り返しノイズ
を除去する。1−8はスピーカである。
次に第1図(イ)に示す電子楽器の動作を説明する。マ
イコン1−4は内部に予め書き込まれた命令に従って、
鍵盤1−Lタブレット1−2、効果スイッチ1−3の状
態を順次検索する。またマイコン1−4は鍵盤1−1に
おける鍵の0N10FFの状態に基づいて押圧されてい
る鍵のコードを楽音発生部1−5の複数のチャンネルに
割り当てる割り当て信号を送出するとともに、タブレッ
ト1−2、効果スイッチ1−3の状態に応じて制御デー
タを送出する。楽音発生部1−5においては、マイコン
1−4より送出される割り当て信号及びその他の制御信
号を内部のレジスタに取り込み、これらの信号に基づい
てデータバンク1−6より必要な波形データ、エンベロ
ープデータを読み出しながら楽音信号の合成を行う。こ
の楽音発生部1−5において合成された楽音信号は、フ
ィルタ1−7を通してスピーカ1−8へと送られ楽音を
発生する。
第1tl(ロ)にマイコン1−4より楽音発生部1−5
へデータを転送する場合のタイミング図を示す、また、
第1表にマイコン1−4より楽音発生部1−5へ送出す
るデータの内容を示す、第1表において、NODはノー
トオクターブデータであり、ノートデータNDとオクタ
ーブデータOCT及びキーオンデータにonより成って
いる。その具体的な内容は第2表にNODのビット構成
が示してあり、第3表にノートデータNOと音名との対
応が示してあり、第4表にオクターブデータOCTと音
域との対応が示しである。即ち仮に楽音発生部1−5に
対しG#というノートの第6オクターブの音(以下G#
6と略す)をチャンネル1より出力したい時には第1図
(ロ)におけるアドレスとして00000001 、デ
ータとして10011110をマイコン1−4より送出
することになる。
次に、PDOはピッチデチューンデータであり調律をず
らすための8 bitのデータである。PDDは2の補
数表示己て表されており、可変範囲は−128〜+12
7の256通りである。 RLDはリリースデータで、
キーオフ後の減衰特性を制御する4 bitのデータで
ある。 VOLはボリュームフラグであり、このビット
を”1”にすると後述のボリュームデータVLDに応じ
て楽音発生部1−5からの楽音信号の出力レベル制御を
可能にするものである。DMPはダンパフラグであり、
ピアノタイプエンベロープの場合のキーオフ後の減衰を
急速な減衰にせしめるフラグであり、DMP=4の時に
機能する。SQLはソロフラグであり、他のチャンネル
と同音名の楽音がアサインされた時にそのチャンネルの
発生している楽音とこれから発生しようとしている楽音
の位相特性を合わすか否かを選択するフラグであり、5
QL=1の時には位相合わせをキャンセルする。
TABはタブレットデータであり、第1図におけるタブ
レット1−2により指定されるデータがこの5bitに
入る。PEはピッチエクステントフラグで、このビット
をos 1 reにしたチャンネルにはピッチエクステ
ントがかかる。 VLDはボリュームデータであり、前
述のボリュームフラグVOLとともにチャンネルから出
力される楽音のレベルを8 bitの細かさで制御する
。なお、これら一連のデータはすべてチャンネルごとに
独立に設定できるものである。
次に、楽音発生部1−5における演算シーケンスについ
て説明する。
第5表及び第6表に楽音発生部1−5の演算シーケンス
を示す。本楽音発生部1−5においては、短い演算サイ
クルでより多くのデータ処理を行うために演算シーケン
スがイニシャルモード、ノーマルモードの2つのモード
を有し、更に上記両モードがそれぞれロングシーケンス
、ショートシーケンスに分かれている。また、イニシャ
ルモードショートシーケンス及びノーマルモードロング
シーケンスはそれぞれEVEN、 ODDの2つの状態
を有している。
イニシャルモードはマイコン1−4が楽音発生部1−5
に対して新たな楽音の発生を命令した際に楽音発生部1
−5におけるマイコン1−4より指定されたチャンネル
について種々のレジスタ等の初期設定を行うモードであ
りロングシーケンスより開始され、ショートシーケンス
を2回行った後ノーマルモードに入る。このイニシャル
モードにおける2回のショートシーケンスについて1回
目がODD、2回目がEVENのショートシーケンスと
なる。このイニシャルモード終了後、ノーマルモードに
移るが、ショートシーケンス6回の後ロングシーケンス
1回がくることになる。
本実施例では各チャンネル毎に、独立した2系統の波形
と独立した2系統のエンベロープとを掛は合おせるよう
になっており、更にピッチの細かな調整機能をも有して
いるが、これらの演算処理を時分割で8チャンネル分行
うためには多大な演算ステップが必要となる。そこで短
いサイクルで演算しないといけないものをショートシー
ケンスとし、演算頻度の低いもの、つまり長いサイクル
で演算してもよいものをロングシーケンスとする。
そしてショートシーケンスの間にロングシーケンスを挿
入することにより演算の効率化を図っている。
第1図(ハ)にショートシーケンス、ロングシーケンス
のタイミング図を示す。第1図(ハ)に示すとおり、シ
ョートシーケンス(0)〜(10)の11のタイムスロ
ットより成っており、ロングシーケンスは(11)〜(
19)の9のタイムスロットより成っている。個々のタ
イムスロットは250nsであり、4分割されてψ1.
ψ3のノンオーバーラツプの2相クロツクとともに全体
のシステムが動作している。
ショートシーケンスとロングシーケンスの関係は、ショ
ートシーケンスがチャンネル0からチャンネル7まで8
回くり返されるごとに1チャンネル分のロングシーケン
スが入る。故に、例えばチャンネル3のショートシーケ
ンスは11X8+9の97タイムスロツトごとに1回、
ロングシーケンスは97×8の776タイムスロツトご
とに1回の割で現われることになる。更に、ノーマルモ
ードのロングシーケンスにはEVENとODDの2つの
状態があるため、776X2の1552タイムスロツト
を周期としてシステムが動作しているものである。
次に、第5表及び第6表に基づいて個々の演算シーケン
スについて説明する。前述のように、楽音発生部1−5
は新たな押鍵によりイニシャルモードロングシーケンス
より開始するようになっているのでイニシャルモードロ
ングシーケンスよりタイムスロット別に説明を行う。
加算部 (13) PDD + PED −+ PDR(15)
   O→TRI (16)   O→TR2 (17)0→zR1 (18)   0   →ZR2 タイムスロット(13)の意味するところは、 PDD
というレジスタの内容とPEDというレジスタの内容を
加算してPDRというレジスタに格納するということで
ある。タイムスロット(15)〜(18)は、TRI。
TR2,ZRI、 ZR2というレジスタに0を書き込
むということである。
f二5 /’ −弓」111に皿 (12)    l1lTD −* HAD  −’)
 HAD(14)     HAD −+ C0NT 
4 C0NT、 DIFI(16) 〜(17) HA
D −) STE  +EARIこれらの意味するとこ
ろは、左端にあるデータ(例えばタイムスロット(14
)ならばHADというデータ)をアドレスとしてデータ
バンク1−6より中央に記載のC0NTというデータを
読み出し、右端にある名前のレジスタC0NT及びDI
FIに格納するということである。
(1)  PDR+  JD   L、B、  ;  
O−) ER2/1(3)  ORG  +  OCT
  +  1 −+  WB2 −’)  ΔWAR(
4)  D、B、 + EARI →EAR2(6)O
→り旧 (8)0     → ERI (9)      O−+WE2 (10)     O−4wEt、 wnzタイムスロ
ット(1)におけるO→ER2/ 1はショートシーケ
ンス1回目即ち000時にはER2,2回目即ちEVE
N時にはERIというレジスタにOを書き込むことを意
味する。またり、B、とは、PDR+ JDの演算結果
をレジスタに格納せずに、Lバス(後述)を介して乗算
部(後述)に送出することを意味する。タイムスロット
(3)においては、演算結果を一度WE2というレジス
タに格納した後デコードしてΔWARに格納することを
意味する。タイムスロット(4)におけるり、B、は、
後述のデータバンク読み出し部によって得られる値をレ
ジスタ等を介さずDバス(後述)を介して加算器に送出
することを意味する。
逮J1漿 上記のC08,は、加算部にて得られた結果をレジスタ
を介さずに乗算部に直接入力することを意味しこの場合
においてはタイムスロット(1)にて得られたPDR十
JDの演算結果を意味する。
データバンク み出し部 (1)    I(An→ΔSTF!→A、B。
(3)〜(4) EARI/2→E1/2→ΔTl/2
.ΔEl/2゜Δz1/2 (6)〜(7) HAD −) STV/ΔSTW −
+ 5TII/WARここでタイムスロット(1)のA
、B、は、データバンク読み出しによって得られた値を
レジスタ等を介ざすに直接加算部のへ入力へ入力するこ
とを意味する。また、タイムスロット(6)〜(7)の
STI+I/ΔSTW −+ 5TII/WARは、シ
:I −トン−ケンス1回目即ちODD時にはSTWと
いうデータを読み出してSTwというレジスタに格納し
、2回目即ちEVEN時にはΔSTWというデータを読
み出してWARというレジスタに格納することを意味す
る。
次にノーマルモードについて説明する。
ノーマルモードショートシーケンス 第6表において中部のついている箇所は、ノートクロッ
クが発生した後の最姑のショートシーケンスのみでその
演算が行われるものであり、この動作を制御するフラグ
を計算要求フラグCLRQと呼ぶことにする。
加J1罷 (1)  WEZ + I/El      −* L
、B。
(2) 5TII +WAR41)、B、 、 B、B
(3)  ZRI  + Δ21     →ZRI(
4)  DIFI + C,B、    →D、B。
(5)  ERI  + ΔEl  + Ci 4 E
RI(6) ZR2+AZ2  4 ZR2(7)  
 WAR+  AWAR−+ WAR傘(8)  FR
2+ ΔE2  +  Ci −*  FR2(9) 
  FR十 CDR→ CDR傘ここで、タイムスロッ
ト(1)のり、B、は、演算結果をレジスタを介さず直
接乗算部へ入力することを意味する。タイムスロット(
2)のり、B、、 B、B、は同様に演算結果を直接デ
ータバンク読み出し部及び゛加算部のB入力へ入力する
ことを意味する。タイムスロット(4)におけるC、B
、は、加算部の演算結果をレジスタを介さずに直接入力
することを意味し、この場合はタイムスロット(2)に
おけるSTW + WARの演算結果が入力される。ま
た、D、B。
はその演算結果を直接データバンク読み出し部へ入力す
ることを意味する。タイムスロット(5)及び(8)の
Ciは、それぞれタイムスロット(3)及び(6)にお
ける演算のくり上り(キャリー)を加えるという意味で
ある。
鬼豆皿 (1) 〜(3)  In2 +  FR2→IIE2
*(4)〜(6)  C,B、  X  CN  → 
([1AC)(7) 〜(9)  WRI  X  E
RI  −+  w81にこで、タイムスロット(4)
〜(6)のC,B、とは加算部の出力をレジスタ等を介
さず直接乗算部へ入力することを意味する。この場合は
、タイムスロット(1)のWEZ +vEIの演算結果
に相当する。また(DAC)とあるのは、この演算結果
をDAC(DAコンバータ:後述)に入力することを表
す。
データバンク み出し部 (4) 〜(5)   C,B、  −+  Ml  
−+  WRI傘(7) 〜(8)   C,B、  
→ 11 −+  VH2傘ここで、タイムスロット(
4)〜(5)のC,B、は加算部の演算結果を直接デー
タバンク読み出し部へ入力してデータバンク1−6のア
ドレスとすることを意味し、゛この場合は加算部におけ
るタイムスロット(2)のSTV + WARの演算結
果に相当する。タイムスロット(7)〜(8)のc、8
.も同様にタイムスロット(4)(7)DIFI + 
(STIil + WAR)(7)?iij算結果4.
m相当する。
(13)ΔTl/2 +TRI/2    →TRI/
2(14)  PDR+ JD          −
+L、B。
(15)  ΔEARI/2 + EARL/2 + 
Ci 4 EARI/2(16)  PDD + PE
ND          −* PDRここで、タイム
スロット(14)のり、B、は、加算部の演算結果即ち
PDR+ JDの値をレジスタを介さず直接乗算部へ入
力することを意味する。タイムスロット(15)のCi
はタイムスロット(13)の演算を行った結果生じるく
り上り(キャリー)を意味する。
ここで、C,B、は加算部における演算結果をレジスタ
を介さず直接乗算部へ入力することを意味し、この場合
は加算部タイムスロット(14)におけるPDR+ J
Dの演算結果が入力される。
データバンク読み【し く14)〜(15)  EAR2/1−+ R2/1→
ΔT2/1゜ΔE2/1. Δ22/1 ここで、2/1というのは、奇数回目、即ち000時に
は2(例えばR2/1ならばR2)、偶数回目、即ちE
VEN時には1(同El) トなルコトを意味し、EV
[l!N、ODDで別のデータを読み出し、別のレジス
タへ格納することを意味する。
第2図は第1図(イ)における楽音発生部1−5の詳細
な図である。まずこの図を用いて各ブロックの機能の概
略を説明すると、2−1はマスタクロックであり、ここ
ではf = 8.00096MHzのものを用いている
。2−2はシーケンサ(以下SEQと称す)であり。
マスタクロック2−1によるクロック信号を分周し、楽
音発生部1−5全体におけるシーケンス信号(以下SQ
倍信号称す)及び各種制御信号を発生する。2−3はマ
イコンインターフェース部(以下UCIFと称す)であ
り、第1表にて示される各種データをマイコン1−4が
楽音発生部1−5とは非同期で送出しているが、このデ
ータを取り込み、SEQにより発生されるSQ倍信号の
同期をとる回路である。更にフラグにonによりイニシ
ャルモード、ノーマルモードのモード切りかえを指示す
るフラグINIを発生する。
2−4は比較レジスタ部(以下CDRと称す)であり、
前記演算シーケンスで示したレジスタCDR8チャンネ
ル分とマスタクロックを順次分周して得たlOビットの
分周信号とを比較し、8チャンネル分のノートクロック
と計算要求フラグCLRQを発生する。
2−5はランダムアクセスメモリ部(以下メモリと称す
)で、楽音発生部1−5内で行われる種々の演算結果を
記憶する。2−6はフルアダ一部(以下FAと称す)で
あり、各種データの加算を行う16ビツトのフルアダー
を内蔵している。2−7は乗算部(以下MPLYと称す
)であり、 (2の補数の12bit) X (絶対値10bit)
の演算を行う乗算器を有している。2−8はデジタルア
ナログコンバータ(以下DACと称す)であり。
MPLY2−7より出力されるデジタルの楽音データを
アナログの楽音データに変換する。2−9はアナログバ
ッファメモリ部(以下ABMと称す)で、DAC2−8
よりマシンサイクル周期で発生される楽音データをCD
R2−4により発生されるノートクロツタによる音程同
期への変換を行う。ABM2−9の機能及び構成は特開
昭59−214091号公報に示されているアナログバ
ッファメモリと同様のものである。 2−10は入出力
回路部(以下I10と称す)であり、データバンク1−
6ヘアドレス信号を送出し、そのアドレス信号に対応し
た波形データ、エンベロープデータの読み出しを行い、
必要に応じて読み出したデータのデータ変換を行う。2
−11はマトリックススイッチ部(以下MSwと称す)
であり、UCIF2−3、CDR2−4、メモリ2−5
に接続された横方向のパスライン(HA 。
HB、 HC,HD、 HE、 HLの各バス)とFA
2−6、MPLY2−7、Ilo 2−10へ接続され
ている縦方向のパスライン(A、B、C,D、Lの各バ
ス)とを、SQ倍信号応じて接続する回路である。これ
らの回路により第5表及び第6表に示す演算シーケンス
を実行するものである。
次に個々のブロックについて説明する。
第4図は第2図における5EQ2−2の詳細図である。
4−1はカウンタであり、マスタクロックを分周し。
第1図(ハ)に示す種々のタイミング信号を発生する。
TSは第1図(ハ)におけるタイムスロットを表す信号
であり、CHCはチャンネルコードであり、第1図(ハ
)におけるチャンネルの番号を表わす信号である。EV
は演算シーケンスにおけるODD、EVENを表す信号
であり、EV=OはODD、 EV= 1はEVENを
意味する。4−2はSQROM (シーケンXROM)
t”ある。5080M4−2のアドレス入力にはタイム
スロットを表す信号TSとフラグINIが入力されてお
り、これらの入力に基づいて各々のタイムスロットにお
ける各種制御命令を発生している。4−3は論理ゲート
であり、5080M4−2による出力を各種フラグ及び
計算要求フラグCLRQ等で更に制御して、 SQ倍信
号演奏情報、効果スイッチ1−3等の指示に従って。
各機能ブロックが各タイムスロット毎にどのように動作
すべきかを指示する信号;図中ではSQと略記)を発生
する。
第5図はUCIF2−3の詳細図である。第5図におい
て、5−1はラッチであり、第1図におけるマイコン1
−4より与えられるA/D O〜7をALEによりラッ
チする。A/D O〜7とALEの関係は第1図(ロ)
に示すとおりであるので、ラッチ5−1には第1表に示
すところのアドレスがラッチされる。5−2はラッチで
あり、マイコンl−4より与えられるA/DO〜7を豐
によりラッチする。A/Do〜7と盟の関係は第1図(
ロ)に示すとおりであるのでラッチ5−2には第1表に
示すところのデータがラッチされる。5−3はラッチで
あり、豐によって制御されラッチ5−1の出力をラッチ
する。このようにアドレスを2段でラッチするのは、A
LEが豐に無関係に周期的に′1”になるからであり、
このようにアドレスを2段でラッチすることにより費に
よる新たなデータの書き込みを行うまでラッチ5−3、
ラッチ5−2にはそれぞれアドレス及びデータが格納さ
れることになる。5−4は1ワード8ビツトのRAMで
あり、Aはアドレス入力、OEは出力制御端子であり、
データ端子りはHEババス接続されている。ここで、0
E=1となるとA入力で与えられたアドレスのデータを
D端子より出力する。またWEは書き込み制御端子で、
VE=1の時にD端子に与えられているデータを六入力
で与えられたアドレスに書き込む。OE、 WEはSQ
倍信号より制御されている。RAM5−4には第1表に
て示した各種データ(NOD、POD、 RLD −V
OL −DMP −SQL、 TAB −PE、 VL
D)及びコントロールデータC0NT(データバンクよ
り書き込む。詳細は後述)、ピッチデータレジスタのデ
ータPDRがそれぞれ8チャンネル分格納されている。
5−5はセレクタであり、マイコン1−4の指定するア
ドレスと、SQ倍信号指定するアドレスを。
別のSQ倍信号用いて選択出力し、RAM5−4の六入
力に与えるものである。5−6は信号処理器であり、H
Eババス接続され、バス上のデータを取り込み各種フラ
グ信号を発生する。また、マイコン1−4より送出され
たリリースデータRLD4ビットに応じた16とおりの
リリース用エンベロープデータを発生してHEババス送
出する。5−7はゲートであり、SQ倍信号応じてラッ
チ5−2の出力、つまりマイコン1−4からのデータを
HEババス上送出する。
次にUCIF2−3の動作を説明する。
第1表に示すようなデータが第1図(ロ)に示すタイミ
ングでマイコン1−4より与えられたとし、仮にアドレ
スが0511データが8916即ちチャンネル5にF#
1の押鍵を指示したとすると、先ずALE信号によりラ
ッチ5−1にアドレスがラッチされ、次いで盟信号によ
りラッチ5−2にデータがラッチされると同時に、ラッ
チ5−3にアドレスがラッチされる。次いで所定のタイ
ミングでセレクタ5−5がラッチ5−3の出力をセレク
トし、同時にゲート5−7が開き、RAM5−4のWE
に書き込み信号が与えられる。この書き込み信号により
HEババスはラッチ5−2にラッチされたデータ即ちマ
イコン1−4が書き込もうとしたデータ即ち8916が
与えられ、RAM5−4のA入力にはラッチ5−3の出
力である0516が与えられるので、RAM5−4のア
ドレス0516番地に89□、というデータが書き込ま
れる。このようにして第1表に示した各種データがRA
M5−4に書き込まれる。
第1表ニ示ストオリ、RAM5−4ニはVOL’7ラグ
、PEフラグ等のフラグ類が書き込まれているが、これ
らのフラグ類はHEパスを介して信号処理器5−6へ送
出し、ここで一旦ラッチした後使用している。
第6図はCDR2−4の詳細図である。6−1はマスタ
クロックを入力とした10ビツトの分局器である。
6−2は比較器付RAM(以下CDRAMと称す。)で
あり、1ワード13ビツトで8ワードを有する。各ワー
ドのうち上位10ビツトには比較器が設けてあり、端子
Tより入力される分局器6−1による分局データとの比
較が行われ、10ビツトすべてが一致すると端子Cより
一致パルスが出力される。OE、 TdE、A。
Dの機能は前述のRAM5−4と同じである。6−3は
デコーダであり、A入力、EN入力とD出力の関係は第
8表に示すとおりである。6−4〜6−11はRSラッ
チであり、S入力に正のパルスが加わるとQ出力が1”
に、R入力に正のパルスが加わるとQ出力が0”になる
、 RSラッチ6−4はチャンネルO,RSラッチ6−
5はチャンネル1、・・・・・・の一致パルスがSに与
えられる。6−12はセレクタであり、A入力に与えら
れた8信号からチャンネルコードCHC3ビットにより
そのうちの1信号を選択してDより出力する。6−13
はラッチであり、SQ倍信号従ってセレクタ6−12の
出力をラッチする。6−14はANDゲートである。
次に第6図に示すCDR2−4の動作について説明する
。分周器6−1がマスタクロックを分周して10ビツト
の分周出力をCDRAM6−2のT入力へ与える。
CDRAM6−2の各ワードには任意の値が入っている
が。
これらの値の上位10ビツトが分周器6−1の出力値と
一致するごとに一致パルスをC端子より出力する。CD
RAM6−2のA入力にはCHC即ちチャンネルを表す
信号が入力しであるので、各ワードはそれぞれのチャン
ネルに対応しているので、チャンネルごとに一致パルス
を発生する。この一致パルスはそれぞれをRSラッチ6
−4〜6−11へ入力されているので、一致パルスが発
生したチャンネルに対応するRSラッチのQ出力が1”
にセットされる。RSラッチ6−4〜6−11のQ出力
のうちの1つがチャンネルコードCHCに応じてセレク
タ6−12により順次選択されラッチ6−13にラッチ
される。ラッチ6−13の出力はANDゲート6−14
に与えられているので、現在セレクタ6−12が選択し
ているRSラッチのQ出力がIt 1 pIならば、A
NDゲート6−14に加えられたSQ倍信号よってデコ
ーダ6−3のD出力の該当チャンネルが°゛1”になり
上記のRSラッチのQ出力はパ0”にリセットされる。
第7図はメモリ2−5の詳細図である。第7図において
、7−1〜7−4はRAMであり、OR,すE、 A、
 Dの各機能は前述のRAM5−4と同じである。ここ
で、RAM7−1ニはwAR,EARI、 AZI、 
AEI、 VEI、 EAR2゜ΔZ2. AE2ノ各
レジスタが、RAM7−2L:l−はWB2. ZRl
ΔTl、 FR,ΔIIAR,ZR2,ΔT2の各レジ
スタが、RAM7−34:はERI、 TRI、 DI
FI、 DWI、 ER2,TR2,STY。
TAB’ 、 HADの各レジスタが、 RAM7−4
4mはNOD’、1IE2 。
VLD’の各レジスタがそれぞれを8チャンネル分格納
サレテイル。なお、NOD’ 、 TAB’ 、 VL
D’は前述のRAM5−4におけるNOD、 TAB、
 VLDのデータを書き込んだものである。7−5は1
ワード10ビツト13ワードのROMであり、第5表、
第6表で示した演算シーケンスにおけるノート係数CN
が記憶されている。
ここでQは出力、Aはアドレス入力、OEは出力制御端
子であり、0E=1でQにROMの内容が出力され、0
E=0の時はQ=ハイ・インピーダンスである。ノート
係数CNの値は第7表に示すとおりである。なお、RO
M7−5の10ビツトの出力はHDババス下位10ビツ
トに接続されている。7−6は信号処理器であり、RA
M7−4に格納されたNOD’よりND(ノートデータ
)と0CT(オクターブデータ)を読み出しこれらのデ
ータ及びPEフラグに基づいてピッチデチューンデータ
PEDを発生する回路、並びにレジスタWE2のデータ
を読み出してデコードするデコード回路が備えである。
第8図はFA2−6の詳細図である。第8図において、
8−1〜8−8はラッチであり、5EQ2−2が発生す
るψ1.ψ3の信号で動作している。8−9は加算器で
あり、N入力に与えられた値とS入力に与えられた値(
共に16ビツト)とキャリー人力Ciに与えられた値の
加算を行い、C及びCOより出力する。COは演算の結
果生じるキャリー出力である。8−10゜8−11はビ
ット処理回路であり、ラッチ8−1.ラッチ8−2によ
る出力のビット操作を行う回路である。
8−12は論理ゲートであり、SQ倍信号応じてラッチ
8−6の出力を強制的にパ1”またはo〃にする。或い
はそのまま出力するといった動作を行う。8−13はR
AMであり、そのサイズは1ワード9ビツトで12ワー
ドのものである。A、 D、 WE、 OEの各機能は
前述のRAM5−4と同じである。D出力9ビットはC
バスの下位9ビツトに接続されている。
RAM8−13は位相合わせ(後述)用の位相レジスタ
で。
12音のノートの個々の波形データ読み出し用アドレス
(WAR)の位相管理を行う。
第9図(イ)はMPLY2−7の詳細図である。第9図
において9−1〜9−9はラッチである。ここでラッチ
9−3にはLバスのビット7〜ビツト9が、ラッチ9−
5にはLバスのビット9〜ビツト12が接続されている
。9−10はエンコーダである。入出力の関係は第9表
に示すとおりである。9−11はシフタであり、工から
入力される16ビツトの信号をCに入力された制御信号
に従ってシフトしOより出力する。
シフトの内容は第10表に示すとおりである。9−12
はビット処理回路でありSQ倍信号応じてラッチ9−3
が出力する信号のビット処理を行う。9−13はデコー
ダであり入力Aと出力りとし関係は第11表に示すとお
りである。9−14はセレクタであり、Cに入力されて
いるSQ倍信号応じてC=1ならばA。
C=oならばBに入力されている16本の信号を選択し
てYより出力する。なお、A入力の下位11ビツトはG
ND (接地電位)に接続されている(即ちパ0”が与
えられている)。9−15はシフタでIから入力される
14ビツトの信号をCに入力された制御信号に従ってシ
フトし0より出力する。シフトの内容は第12表に示す
とおりである。9−16は乗算器であり、A入力がこの
補数表示による12ビツト、B入力が絶対値のlOビッ
トで出力が2の補数表示による14ビツトである。通常
12ビツト×10ビツトの演算を行うと22ビツトの結
果が得られるが、無論乗算器9−16の出力14ビツト
は22ビツトのうちの上位14ビツトである。故に、乗
算器9−16における入出力の関係は、次式のとおりに
なる。
なお、MPLY2−7における乗算器9−16は、回路
をより簡略化するために以下の手法を用いている。
通常乗算器を構成する際に、2の補数値12ビツトX絶
対値10ビツトの乗算器は116個の加算器セルにより
22ビツトの正確な演算結果が得られる。
しかし、本システムにおいては本来得られる22ビツト
のうちの上位14ビツトの−みを使用する。即ち下位8
ビツトの出力は使用しないので本実施例では加算器セル
省略による演算誤差が上位14ビツトのLSBに影響し
ない下位7ビツト演算用の加算器セルを全部省略してい
る。そこで、本乗算器9−16では、下位ビット演算用
の加算器セル28セルを省略し第9図(ロ)に示すよう
な構成になっている。
第9図(ロ)において、破線内は同様のセルを略記した
。また、各ブロックはすべて全加算器であり。
入力がA、B、Ci(キャリー人力)、出力が和S及び
キャリーCoである。
第10図はIlo 2−10の詳細図である。第10図
において10−1−10−8はラッチである。ここで、
ラッチ10−3はセット付のラッチでラッチの入力はD
バスのビット7〜ビツト9に接続されている。10−9
はシフタセレクタで、C入力によりA入力とB入力の切
換及びA入力の1ビツトシフトを行う。
10−10はビット処理回路であり、SQ倍信号応じて
下位3ビツトを強制的に°゛1″或いはII Ojjに
する回路である。10−11はデコーダであり、入力I
と出力りの関係は第13表に示すとおりである。デコー
ダ10−11のA入力にはラッチ10−7の出力のビッ
ト12〜ビツト15が与えられている。10−12はセ
レクタであり、C入力に応じてA又はBに与えられてい
る信号のいずれかを選択してYより出力する。
10−13はシフタであり、制御端子Cの入力に応じて
Iからの入力をシフトして0より出力する。
10−14はノイズ回路であり、ノイズフラグNAに応
じて入力データにノイズを混入する。
第11図(イ)はMSV2−11の詳細図である。円で
囲った部分がスイッチであり、具体的には第11図(ロ
)に示すようにNchのMOSFETで構成されており
、SQ倍信号′1”になるとMOSFETがオンして縦
方向のラインと横方向のラインが導通しデータが転送さ
れる。このMSV2−11においては高速化のためにデ
ータの転送の直前にすべてのパスラインに各タイムスロ
ット毎にψ1信号によりプリチャージを行った後データ
の転送を行なっている。これはスイッチがNch MO
SFL’Tで構成されているので、転送されたデータの
1″のレベルがMOSFETのしきい値電圧分だけ降下
するのを防ぐためである。第11図(ハ)〜第11図(
す)はMS%12−11にて使用されているスイッチパ
ターンの例であり、円で囲った交点の箇所がスイッチを
介して接続されている。この例では便宜上洛バスが8ビ
ツトのものについて説明する。第11図(ハ)は、スイ
ッチによってbnとan(n=o〜7)とを接続したも
のである。第11図(ニ)はbo−b3の4本の値と0
”をスイッチによって縦方向のバスに書き込むようにし
たものである。
第11図(ホ)はbO〜b3をaO〜a3へ、C4〜C
7をa 4〜a 7へ書き込むようにしたものであり、
これにより、2組のバスに別々に表れているデータを混
合して他のバスに転送することができるようにしたもの
である。第11図(へ)はビット位置を変換してバスか
らバスへ転送するようにしたもので、このようにスイッ
チを配することにより横方向のバスのデータの上下各4
ビットを位置を変更して縦方向のバスに転送する。第1
1図(ト)〜第11図(ワ)は定数をバスに設定するた
めの回路例であり、第11図(ト)はバスにオール゛0
”を設定する回路、第11図(チ)はバスに10101
010即ちAA、 、を設定する回路である。これは、
スイッチのない部分であるC7. a5*a3. al
はこのスイッチが開く直前にプリチャージによって′1
”が書き込まれたものがそのまま保持されることによる
。第11図(す)はフラグTOによって定数の値を変え
るようにしたもので、TO=0ならば0016がバスに
書き込まれ、TO=1ならばEB、Gがバスに書き込ま
れる。第11図(ハ)〜第11図(す)に示すスイッチ
をMSW2−11に用途に応じて配して選択的に開閉す
ることにより、任意のバスから他の任意のバスへのデー
タ転送が必要なビット処理を含めて可能となる。例えば
、HAババスらAバスへ、HBババスらBバスへ、Cバ
スからHCバスへ同時にデータを転送したい時にはSw
l、 SV7.51113ヲ同時にオンすればよい、ま
た、CバスのデータをLバスとDバスに転送したい時に
は5112g、 5W29゜5Td30をオンすれば、
Cバス→肛バス→Lバス及びDバスの経路でデータが転
送される。
なお、 MS%12−11において、データの転送は第
11図(ヌ)に示すタイミングで行われている。即ち、
ψ1=1の区間で縦方向、横方向のパスラインのプリチ
ャージを行い、φ1の立ち下りよりψ3の立ち下りまで
の区間でデータの転送を行い、ψ3の立ち下りでラッチ
する。ここで、ψ3の立ち下りからψ1の立ち上りまで
の区間はラッチ動作を安定に行うための余裕である。
次にデータバンク1−6について説明する。データバン
ク1−6には4種類のデータが格納されている。それは
、(1)ヘッダアドレスデータ、(2)ヘッダデータ、
(3)波形データ、(4)エンベロープデータである。
ここで、ヘッダアドレスデータはへラダデータがどのア
ドレスに格納しであるかを示す8ビツトのデータであり
、ヘッダデータは波形データ、エンベロープデータの格
納しであるアドレス及びそれらの属性を表わした8バイ
トのデータである。次に上記4種類のデータを更に詳し
く説明する。
(1)  ヘッダアドレスデータ(HAD)このデータ
は各タブレット、各オクターブ、各3#!ごとに割り当
てられたノートデータをアドレスとしてヘッダデータの
アドレスを示すデータである。ヘッダアドレスデータの
格納場所は第14表に示すとおりであり、ビット9〜ビ
ツト5にタブレットデータTAB、ビット4〜ビット2
にオクターブデータOCT、ビット1〜ビットOにノー
トデータNDの上位2ビツト、残りのビットにはすべて
1″が入っている。ここでTAB、OCT、NDで構成
される10ビツトをりTDと呼び、その各々は第1表に
示したものであることは言うまでもない。ヘッダアドレ
スデータによるヘッダデータのアドレスは第15表のよ
うに示され、ビット10〜ビツト3にヘッダアドレスデ
ータが入り、上位ビットはすべてパ1”である。また、
下位3ビツトには000〜111のデータを入れる。
(2)へラダデータ(HD) ヘッダデータは第15表に示されるアドレスに格納され
ている1ワード8ビツトで8ワードのデータであり、8
ワードの各内容は第16表に示すとおりである。第16
表において、 C0NTはコントロールデータであり、
このヘッダデータにて示される波形データ、エンベロー
プデータの属性を表す、E1′は2種類あるエンベロー
プデータのうちの一方である。他方のエンベロープデー
タE2’のスタートアドレスはSTE+ΔSTEで与え
られる。111.112は2種類ある波形データであり
、vlのスタートアドレスはsrw+ΔSTvで与えら
れる。
なおC0NTは第17表に示すとおりの構成になってお
り、その意味するところは次のとおりである。
Plo:このヘッダデータによる楽音がピアノ型エンベ
ロープを有するかオルガン型エンベロープを有するかを
示すフラグであり、P10=1ならばピアノ型であるこ
とを意味する。
ORG :当該の楽音データが本来どの音域に属してい
たかを示す3ビツトの情報であり。
ORGと音域の対応は第18表に示すとおりである。故
に波形データが実際に一周期分として有するサンプル数
がいくつであるかを示す情報でもある。
v8:波形データが12ビット精度であるか8ビット精
度であるかを示す。v8=1ならば8ビット精度である
。V8=1の時には波形データの下位に4ビツトの′O
”が追加され、波形の振幅レベルは保たれるようになっ
ている。
PCM : PCM= 1で波形データw1の立ち上り
部がPCMであることを示す。
NA:ノイズ信号を楽音信号に重畳する場合に使用する
2ビツトの信号である。
(3)波形データ(%11.12) 前述のように、楽音発生部1−5においては波形データ
として12ビツトのものと8ビツトのものと2種類を使
いわけている。ここで市販されているROMに1いて考
えるとそのほとんどが1ワード8ビット或いはそれ以下
のものであり、1ワード12ビツトのものは希である。
そこで本発明においては次のように波形をROMに格納
している。即ち:8ビットの場合には、STv及びΔS
TWによって定まるアドレスより順次1ワードずつ格納
しているが、1ワード12ビツトの波形データの場合は
第12図に示すとおり、上位8ビツトはSTV+ΔST
Vによって示されるアドレスから順次格納しているが、
下位4ビツトはSTW+ΔSTwの値を1ビツト右シフ
トしてMSBに1を入れたアドレスより下位4ビツト上
位4ビットに2ワ一ド分ずつ順次格納しである。例えば
、仮にアドレス04441.にある波形データの上位8
ビツトの下位4ビツトの場所は、アドレス12221.
の上位4ビツトということになり、アドレス0445L
、についてはアドレス12221.の下位4ビツトとい
うことになる。
(4)  エンベロープデータ(El’ 、 E2’)
エンベロープデータは16ビツトで1ワードを構成し、
そのデータフ、オーマットは第19表に示すとおりであ
る。ΔTはエンベロープアドレスの更新間隔を決めるデ
ータである。Sはエンベロープの傾き(増加または減少
)を示すフラグである。Zはエンベロープの傾きの大小
を示すフラグであり、DATAはその大きさである。第
19表に示すデータが第16表に示すSTE、ΔSTE
によって定められたアドレスに従ってデータバンクに格
納されている。
以上のようにデータバンクが構成されているので、とな
り合った3鍵ごとに音色の変化を与えることができる一
方、逆に同一オクターブ内にては同じヘッダアドレスデ
ータを有するようにすれば波形データ、エンベロープデ
ータ、ヘッダデータを増すことなく同じ音色の楽音が得
られる。また、各ヘッダデータにおいて任意の波形デー
タ、エンベロープデータが指定できるので、少ない波形
データ及びエンベロープデータであってもその組み合わ
せ方で様々な楽音を発生することも可能である。
次に楽音発生部1−5における押鍵時のイニシャル処理
、ノートクロックの発生方法、エンベロープ発生方法波
形の発生方法について述べる。
(1)  イニシャル処理 イニシャル処理においては、押鍵により楽音が発生され
る際の各種レジスタの初期設定が行われる。押鍵により
、演算シーケンスはイニシャルモードのロングシーケン
スより開始されるので、加算部において、タイムスロッ
ト13でPDRが初期設定される。この演算を更に詳し
く述べると、第5図RAM5−4よりPDDが読み出さ
れてHEババスデータが乗る。同時に第7図信号処理器
7−6よりHDババス対してPEDが与えられ、第11
図(イ)において5li121 ト5W17がオンしテ
PDDがAバス、PEDがBバスに乗る。このデータが
第8図に示すところのFA2−6にて加算されてCバス
に演算結果が乗る。この演算結果が51123を介して
HEババス乗り、RAM5−4にあるレジスタPDHに
格納される。なお、この演算において、PDD、 PE
Dti−FA2−6への転送は実際にPDD + PE
Dの演算が行われるタイムスロットの1タイムスロツト
前に、また演算結果のPDRへの格納はPDD 十PE
D演算が行われる1タイムスロツト後に行われる。以下
加算演算についてはすべて同様である。次いで、タイム
スロット(15)〜(18)にてTRI、 TR2,Z
RI、 ZR2ニ”O”が書き込まれる。コノ動作は、
TRIに0”を書き込む場合について述べると、タイム
スロット(15)にて第11図(イ)のMSW2−11
ニおイテ5V33及び51113がオンする。5V33
は第11図(ト)のような構成になっており、Cバスに
パ0”が与えられる。同時に81113がオンしている
ので、CバスのデータがHCバスに与えられ、第7図に
示すRAM7−3におけるレジスタTRIに°゛0″が
書き込まれる。
一方データバンク読み出し部においては、次のような動
作をする。以下第10図を中心に説明する。
TAB、 ND、 OCTで構成されたVRDによって
ヘッダアドレスデータHADが読み出される。なお、こ
のイニシャル処理番行うイニシャルモードにおいては、
ランチ10−3はSQ倍信号より111にセットされて
いる。このデータはIlo 2−10におけるシフタ1
0−13によって第15表に示されるフォーマットにデ
ータが変換されDバスSす15. HCパスを介してR
AM7−3のレジスタHADに格納される。この動作と
同時に、データバンクより読み出されたヘッダアドレス
データHADは、ラッチ10−8.ラッチ10−6で次
々とラッチされ、シフタセレクタ10−9にて第15表
に示すとおりのフォーマットにデータが変換されてラッ
チ10−4にラッチされる。ラッチ10−4の出方に対
し。
先ずビット処理回路10−10で下位3ビツトに対して
000が与えられてコントロールデータC0NTがデー
タバンク1−6より読み出されラッチ1o−8を介して
ラッチ10−7の上位8ビツトにラッチされる。コント
ロールデータC0NTはセレクタ10−12、シフタ1
0−13、ノイズ回路10−14、ラッチ1o−2を介
し、DバスよりRAM5−4のレジスタC0NTに格納
される。一方、ラッチ10−7の上位4ビツトはデコー
ダ10−11に接続されているので第14表に示す真理
値表に従って16ビツトのデータが得られる。但し、こ
の時にデコーダ10−11のC入力は°゛1″となって
いる。
セレクタ10−12がこのデコーダ出方をセレクトし、
シフタ10−13が6ビツト右シフトして出方する。
ここで、このシフタ10−13の出力について考えると
、ラッチ10−7よりデコーダ10−11へ入力されて
いるデータはPlo及びORG 3ビツトである。今デ
コーダ10−11のC入力は”°1″であるので、デコ
ーダ10−11の出力はORG 3ビツトのみによって
定まる。
故にデコーダ10−11の出方をシフタ10−13で6
ビツト右シフトした値は第18表に示した値となる。こ
の値がノイズ回路10−14、ラッチ1o−2を介して
Dバスに与えられ、MSIi12−11において5W1
5を介してRAM7−3のレジスタDIFIに格納され
る。
次にラッチ10−4の出力に対し、ビット処理回路10
−10が下位3ビットニ対し、001、次イテo1oを
与え、ヘッダデータのSTEの上位、下位の各8ビツト
を読み出す。このSTHの値がセレクタ10−12、シ
フタ10−13、ノイズ回路10−14、ラッチ1o−
2を介してDバスに与えられ、MSV2−11において
SV5を介してRAM7−1のレジスタEARIへ格納
される。
次にショートシーケンスに入る。ショートシーケンスは
2回実行される。タイムスロット(1)でPDRとJD
が加算されるが、ここでJDは定数でありMS+12−
11において5w32をオンすることにより得られる。
3%132は第11図(チ)に示すような構成になって
おり、 JD=45Bi、となっている。この加算結果
に対してノート係数CNを掛は合わせてFRを得る。
この一連の日算を詳しく述べると、PDR+ JDがタ
イムスロット(1)で演算され、その結果が前述のとお
りタイムスロット(2)にてCバスに与えられる。コ、
: テMSV2−11ニおイテ51128.5V29が
オンし、Cバス→HLバス→Lバスの順でデータが転送
され、第9図(イ)におけるMPLY2−7のラッチ9
−1にラッチされる。次のタイムスロット(3)におい
て、第7図のROM7−5よりノートデータNOに応じ
たCNの値が読み出され、HDババス与えられる。この
値がMSV2−11における5W19を介してLバスに
与えられ、MPLY2−7のラッチ9−3にラッチされ
る。ラッチ9−1の出力はシフタ9−11を介してラッ
チ9−2へ、ラッチ9−3の出力はビット処理回路を介
してラッチ9−4へ送られラッチされる。故にラッチ9
−2にはPDR+ JDの値が、ラッチ9−4には、C
Nの値がラッチされている。次いで乗算器9−16が(
PDR+ JD)とCNの積を算出し、シフタ9−15
を介してラッチ9−8へ送出されラッチされる。なおこ
れらの一連の動作において、シフタ9−11.ビット処
理回路9−12、シフタ9−15はデータをスルーさせ
るように動作する。
即ちエンコーダ9−10のC入力には”1”が与えられ
ている。ラッチ9−8の値がLバスよりMSW2−11
のSW9を介してRAM7−2のレジスタFRに格納さ
れる。故に、タイムスロット(2)において、ORG+
OCT+ 1が演算される。この演算において、+1の
動作は第8図のFA2−6における論理ゲート8−12
によって行われる。即ち該当のタイムスロットで論理ゲ
ート8−12が強制的にパ1”を出力すればラッチ8−
5がII I IIをラッチし、加算器のCi大入力1
”を与えるものである。この演算の意味するところは次
のとおりである。即ち:  ORGは波形データが本来
どの音域に属するかを示す値(これを仮にNとする)を
オクターブデータOCTの逆論理をとった形で示すもの
である。OCTとORGと、波形サンプル数の関係を第
18表と第22表に示す。故にORG+1は−Nを表わ
すことになる。つまり、 ORG + OCT +  1  = OCT −Nと
いうことであり、これは、現在発生しようとしている楽
音信号の音域と実際に使用しようとしている波形データ
の本来の音域との差、即ちオクターブシフトの量を示す
値である6つまり、原波形を何オクターブ高い音域の音
として読み出すかを示す。この値は一旦RAM7−4の
レジスタVE2に格納され、次いで、信号処理器7−6
でデコードされてRAM7−2+7) L’ジスタΔW
ARに格納される。 ORG+OCT+1の値に対する
ΔWARの値は第20表に示すとおりである。
以下、タイムスロット(4)でEAR2,同(6)、 
(8)。
(9)、 (10)テVRI、 ERI、 WB2. 
IIEI、 VH2の各レジスタの初期設定を行ってい
る。
一方データバンク読み出し部においては、前述のロング
シーケンスでRAM7−3に格納したヘッダアドレスデ
ータHADを読み出し、Dバス→ラッチ10−1→シフ
タセレクタ1O−9を介してラッチ10−4にラッチし
、ビット処理回路10−10で下位3ビツトに001を
入力してデータバンクよりヘッダデータのΔSTEを読
み出す。この値はラッチl0−7→セレクタ10−12
→シフタ10−13→ノイズ回路10−14→ラッチt
o−2を介してDパスへ与えられ、MSli12−11
において5V26.5W30を介してAバスへ入力され
てFA2−6にてEARLと加算される。次いでRAM
7−1のレジスタIEARIに格納しであるSTE (
エンベロープデータEl″のスタートアドレス)が読み
出され、Dバス→ラッチ10−1→シフタセレクタ10
−9を介してラッチ10−4にラッチされる。ラッチ1
0−4の出力はビット処理回路10−10によってLS
Bに0”次いで′1″が入力されて、第19表に示され
ているとおりの2バイトのエンベロープデータを読み出
す。この値16ビツトがラッチ10−7にラッチされる
。ラッチ10−7の出力に従って、初回のショートシー
ケンスでΔTl。
ΔEl、Δz1.2回目のショートシーケンスでΔT2
゜ΔE2.ΔZ2.の値を発生する。先ず、デコーダ1
0−11にはラッチ10−7の上位4ビツトが入力され
ているが、ラッチ10−7の上位4ビツトには第19表
に示すところのΔTの値が入っている。故にデコーダ1
0−11は4丁を第13表に従ってデコードし、セレク
タ10−12へ出力する。セレクタ10−12において
は、この時C=1となってS入力を選択しシフタ10−
13へ出力する。このセレクタ10−12出力はシフタ
10−13、ノイズ回路10−14においては何らビッ
ト操作が行われることなくラッチ10−2を介してDバ
スに与えられ、MSW2−11において5VIO,HB
ババス介してRAM7−2のレジスタΔT1に格納され
、る。
ΔEl、Δzi、ΔE2.ΔZ2は、第19表に示され
るところのZ、S、DATAに応じてシフタ10−13
にてビット操作が行われて各レジスタへ格納される。ど
のようなビット操作が行われるかについては第13図に
示すとおりである。第19表におけるZの値に応じて、
データフォーマットが異なる事を示している。
次に、データバンク1−6よりΔSTEを読み出す時と
同様にRAM?−3よりレジスタtlADの値を読み出
してラッチ10−4にラッチし、ビット処理回路10−
10にてヘッダアドレスデータHADの下位3ビツトに
対し初回のイニシャルモードでは1009次いで101
゜2回目のイニシャルモードでは110.次いで111
を与えることによりデータバンク1−6よりSTv。
ΔSTWを読み出し、STvをRAM7−3のレジスタ
STW 。
ΔSTWをRAM7−1のレジスタwARに格納する。
以上により、すべてのレジスタの初期設定が完了する。
(2)  ノートクロックの発生方法 先ず楽音発生部1−5で用いているノートクロック発生
法の原理について第3図とともに説明する。
第3図において、3−1は分局器であり端子CKに入力
されているマスタクロックを分周し、10ビツトの分周
出力をQより出力する。3−2は比較器で、A入力及び
S入力の比較を行い、A=Bとなった時にQより1″を
出力する。3−3はフリップフロップであり、CK入力
の立上りでS入力に与えられた信号をとり込みQより出
力する。3−4は加算器であり、A入力とS入力の和を
Cより出力する。
3−5は加算器3−4のS入力に対して定数Mを入力す
る定数回路である。3−6はRSラッチであり、S入力
に正のパルスが入るとQ=1となり、R入力に正のパル
スが入るとQ=Oとなる。3−7はディレィ回路であり
、入力信号を遅延させて出力する。
3−8はANDゲートである。
次に第3図の動作を説明する。まず、RSラッチ3−6
のQ出力が110”であるとすると、 ANDゲート3
−8の出力は常時″0”であるのでフリップフロップ3
−3のQ出力は一定である。一方分周器はマスタクロッ
クの分周より、 0001.から3FF1.をくり返す
10ビツトのQを出力する。仮にフリップフロップ3−
3の出力がNであったとすると、当然0001.≦N≦
3FF1.であるので必ずいつか分周器3−1のQ出力
=Nとなる瞬間が存在し、この時は比較器3−2のQ出
力より一致パルスが出力きれる。
すると、この一致パルスRSラッチ3−6のS入力に入
っているためにRSラッチ3−6のQ出力は”11”と
なり書き込みパルスがANDゲート3−8より出力され
る。フリッププロップ3−3のS入力には加算器3−4
のC出力が与えられているのでN+Mの値が書き込まれ
る6と同時に、書き込みパルスはディレィ回路3−7で
遅延された後RSラッチ3−6のQ出力を110”にす
る。このため、再びフリップフロップ3−3のQ出力は
一定となるが、値はNからN+Mに変化している。故に
次は分周器3−1のQ出力がN+Mになった時に一致パ
ルスを発生することになる。これをくり返すことにより
、比較器3−2は分周器3−1の出力値がN、N+M、
N+2M・・・・・・となった時にパルスを発生する。
つまり分周器3−1がマスタクロックをM回カウントす
るごとに一致パルスを発生することになる。また、 N +nM>3FF1.どなる場合においては、加算器
3−4の出力はオーバフローの後N + nM −3F
F1.となるためにやはりマスタクロックをM回カウン
トした 。
時に一致パルスが発生されることは言うまでもない。つ
まり、この比較器3−2の一致パルスをノートクロック
とし、定数Mを変化させれば種々の周期のノートクロッ
クが得られることになり、その周波数は(マスタクロツ
タの周波数)十Mとなる。
また、SRラッチ3−6のQ出力が計算要求フラグCL
RQに相当する。
以上が本発明におけるノートクロック発生法の原理であ
る。
次に、第1図に示す楽音発生部1−5におけるノートク
ロックの発生の演算シーケンスの詳細について説明する
鍵盤1−1にて鍵が押圧され、マイコン1−4が楽音発
生部1−5に対して楽音の発生を指示すると、前述のよ
うに演算シーケンスがイニシャルモードロングシーケン
スより開始する。先ずタイムスロット(13)で。
PDD + PED→PDR・・・・・・(2−1)次
いで、ショートシーケンスに入りタイムスロット(1)
・・・(6)で PDR+ JD→L、B、         ・・・・
・・(2−2)C0B、 XCN→FR・・・・・・(
2−3)の演算が行われる。次いでノーマルモードにな
り、ショートシーケンスのタイムスロット(9)でFR
+ CDR4FR・・・・・・(2−4)ロングシーケ
ンスのタイムスロット(14)〜(18)でPDR+ 
JD→L、B、         ・・・・・・(2−
5)C,B、 X CN→FR・・・・・・(2−6)
PDD + PHD→PDR・・・・・・(2−7)の
演算が行われる。ここで、PDDは第1表に示したPD
D即ちピッチデチューンデータであり、 PEDは前述
のピッチエクステントデータである。JDは定数であり
1115□。(16進数では45B)という値がセット
しである。ノート係数CNはアサインされた音名により
定まる値であり、音名とCNの関係は第7表に示しであ
る。第5表、第6表の説明にて述べたとおり、演算(2
−2)、 (2−3)及び演算(2−5)、 (2−6
)は下式のとおりに表せる。
(PDR十JD) X CN 4 FR・・・・・・(
2−8)ここで、PDRはPDD + PROであるの
で演算(2−8)は、(POD  +  PED  +
  JD)  X  CN  4  FR、−−−−・
・(2−9)となる。このFRの値を演算(2−4)で
示すようにCDHに累算する。前述のようにこの累算は
ノートクロックが発生するごとに一回行われる。故にC
DHの初期値をNとすると、 CDHの値はN、 N+
FR。
N+2XFR,・・・・・・と変化する。このCDHの
上位10ビツトの値とマスタクロックを順次分周して得
た10ビツトの分局信号とを比較し、一致パルスを発生
するようにしているので、実際には、N−笠土胆 及九
lム堕 11091.ト。比較8’8’    8’ を行うことになり、CDHの上位10ビツトが第3図R のフリッププロップ3−3に相当し、■が第3図の定数
回路3−5の値Mに相当する。故に上記(2−1)〜(
2−7)の演算を行えば一定周期のノートクロックが得
られ、その周波数は 、FR (マスタクロック周波数)〒工となる。
(3)波形発生方法 第11!l楽音発生部1−5に示すところの波形発生方
法は大別して次の5ステツプに分けられる。即ち: ■ アドレス発生 データバンク1−6より波形データを読み出す際のアド
レスを発生させる。
■ 波形読み出し 上記のアドレスで指定された波形データをデータバンク
1−6より読み出し、コントロールデータC0NTに応
じたビット処理を行う。
■ エンベロープ乗算 ■ 2波混合 ■ CN乗算 以下各ステップを詳しく説明する。
■ アドレス発生 押鍵によるイニシャル設定にてヘッダーデータのSTす
(112のスタートアドレス)、Δ5TW(11のワー
ド数)、DIFI(1波形に含まれるサンプル数)がレ
ジスタ5TII、 WAR,DIFIに格納され、また
演算によってレジスタΔWARが定まる。これらのデー
タに基づきノーマルモードにてアドレス発生を行うわけ
であるが、以下の処理において波形デー°夕にPCM部
がアル場合(PCM部1)トない場合(PCM=O)で
アドレス発生が異なるのでPCM部がある場合とPCM
がない場合に分けて説明する。
匹恒1娼4へ4企 第6表に示すとおり、タイムスロット(2)にて。
STwとWARの和を求め、この和でもってデータバン
ク1−6から波形1の読み出しを行い、タイムスロット
(4)にて上記の和に更にDIFIを加えたもの即ちS
TW + IIAR+ DIFIの値でデータバンク1
−6から波形2の読み出しを行っている。ここで、ST
Vは波形2の先頭アドレスであり、レジスタWARには
初期値としてΔ5TII即ち波形1に含まれるワード数
の負数が入っており、タイムスロット(7)にてΔWA
Rを累算していく、故にSTW + MARの値は、波
形1の先頭アドレスより順次ΔWARの値ごとに増加す
る値となる。また、ST + WAR+ DIFIの値
はこの値にDIFIを加えたものであるので、波形2の
先頭アドレスよりΔWARおきに増加する値となる。
ここで、ΔWARは、波形の読みとばしを表わす値であ
るので、以上のようにして波形1及び波形2に対するア
ドレスを発生することができる。
また、本発音発生部t−Sにおいては、PCM部が無し
で、且つソロフラグ5QL=Oで且つオクターブシフト
が行われない場合に位相合わせを行う。位相合わせの方
法は、演算シーケンスがイニシャルモードからノーマル
モードに転じた時の初回のタイムスロット(7)に演算
結果としてRAM8−13における同音名をアドレスと
するデータ9ビツトをレジスタWARに格納する。RA
)’+8−13の出力は9ビツトであるが、Cバスはプ
リチャージされているので全16ビツトの前述の9ビツ
トより上位7ビツトにはIt 1 $1が入る。2回目
以降のタイムスロット(7)の演算結果は、第6表に示
すとおりレジスタWARに格納されるとともにRAM8
−13における同音名をアドレスとするレジスタ(位相
レジスタ)に更新される。このようにすることにより、
他のチャンネルで同音名の楽音を既に発生している場合
であっても、そのチャンネルにおけるレジスタυARの
値がRAM8−13を介してこれから楽音を発生しよう
としているチャンネルのレジスタWARに与えられるた
めにこれら2チャンネル間での位相を合わせることが可
能となる。
ここで、タイムスロット(7)の演算WAR+ΔWAR
について述べる。
WAR+ΔWAR≧0となると音域とは無関係に演算結
果としてCバスには−5121゜(Froots)が与
えられる。オクターブシフトが無い場合はΔWAR=1
であるので、レジスタWARの値は512を周期として
くり返すことになる。
以上により同じノートを発生する複数チャンネルの各々
のレジスタWARは常に同一となるので、異なる複数チ
ャンネルの発生する同じノートの波形の位相が完全に一
致することとなり1位相合わせが実現される。
次にタイムスロット(2)における演算STW + W
ARを更に詳しく説明する。
RAM7−3のレジスタSTWよりデータが読み出され
MSW2−11ニ示すところのHCバス、SIl!11
、Aバスを介しクロックψ3によりFA2−6のラッチ
8−1にラッチされる。同時にRAM7−1のレジスタ
WARの値がHAババスSV2、Bバスを介しクロック
ψ3によりFA2−6のラッチ8−2にラッチされる。
ラッチ8−1の出力は、ビット処理回路8−10では何
らのビット処理を受けずにクロックψ1によってラッチ
8−3にラッチされる。一方、ラッチ8−2の出力は、
ビット処理回路8−11においてORGを入力として第
21表に示すとおりのビット処理が行われた後クロック
ψ1でラッチ8−4にラッチされる。加算器8−9がラ
ッチ8−3、ラッチ8−4の出力を加算し、ラッチ8−
7.ラッチ8−8を介してCバスへ与えられる。ビット
処理回路8−11において上記のようなビット処理を行
うことにより、レジスタl1lARが512を周期とし
て変化しているにもかかわらず、各オクターブに応じた
周期で変化していくことになる。例えば、0RG= 5
 、0CT= 2の場合はオクターブシフトはな〈イニ
シャル処理の項で述べたとおりΔWAR=1である。ま
た第21表より、レジスタWARのビット7.8が常に
1になるので、タイムスロット(2)の演算結果は仮に
5T11’ = Oとすると−10,−9,・・・−1
、−128,−127,・・・−1,−128・・・ となって128の周期でくり返すことになる。また、0
RG=4.0CT=5の場合は2オクターブシフトとな
りΔWAR=4となる。また第21表によりレジスタW
ARのビット6.7,8が常に1になるので同様に −40,・・・ −8,−4,−64,−60,−56
・・・−4,−64,・・・ となって16の周期でくり返すことになる。
0CT=2の時くり返し周期が128であり、0CT=
5の時くり返し周期が16であることは、第22表によ
り所望の波形ポイントが得られていることを示している
* タ0RG= 4 、 OCT、 5 ノ際、レジX
 タWARが4ずつ歩進していることは、第18表に示
される通り波形サンプル数64のデータを4サンプルに
1点ずつ得ることにより本来の波形データのオクターブ
を2オクターブ上げることができることを示している。
PCM部がある場合 PCM部がある場合のアドレス発生はPCM部がない場
合と比較してタイムスロット(2)における演算が異な
り、他は同様である。
タイムスロット(2)においてはSTR+ MARの演
算が行われる。即ち: RAM7−3のレジスタSTwよりデータが読み出され
、HCバス、5VII、 Aバスを介してクロックψ3
によりFA2−6のラッチ8−1にラッチされる。同時
に、RAM7−1(7) L/ジスタWARの値が)I
AババスSW2、Bバスを介してFA2−6のラッチ8
−2にラッチされる。ここで、ラッチ8−1の出力はビ
ット処理回路8−10、ラッチ8−2の出力はビット処
理回路8−11に入力されるが双方の出力ともビット処
理を行われることなくラッチ8−3、ラッチ8−4へ送
られ、加算器8−9にて加算される。
ここで、レジスタWARの値について考えると、PCM
部がない場合にはレジスタMARには初期値として波形
−周期に含まれるサンプル数の負数が書き込まれるが、
PCM部がある場合には、レジスタWARの初期値とし
てPCM部として用いる波形のすべて゛  のサンプル
数の負数が書き込まれる。故に、タイムスロット(2)
の演算結果はデータバンク1−6における波形1のPC
M部先頭アドレスから順次ΔWARずつ増加した値とな
る。PCM部終了の検出はタイムスロット(7)におけ
る演算において WAR+ΔWAR≧0となることを検出して行い、PC
M部終了後のアドレス発生はPCM部がない場合と全く
同じであり、ビット処理回路8−11によるビット処理
が行われる。
なお、楽音発生部1−5におけるアドレス演算は16ビ
ツトであるが、16ビツトのアドレス信号では充分でな
い場合が当然考えられる。そこで、本楽音発生部1−5
においては、タブレットデータTABの上位3ビツトを
用いてアドレス空間が拡張できるようになっている。I
lo 2−10におけるラッチ10−3がアドレス空間
拡張用のラッチであり、ラッチ10−3にタブレットデ
ータTABの上位3ビツトがラッチされる。即ち: 押鍵によりイニシャルモードになると、RAM5−4に
格納されたタブレットデータがMSW2−11を介して
RAM7−3のレジスタTAB’に格納される。次いで
ノーマルモードに入ると、RAM7−3のレジスタTA
B’の値が読み出され、MSW2−11を介t、テI1
02−10ニおけるラッチ10−3にラッチされる。こ
のようにして内部演算は16ビツトでありながら19ビ
ツトのアドレス空間をアクセスすることができる。
■ 波形読み出し 波形読み出しはタイムスロット(2)、 (4)にて行
われたアドレスに基づいて行われる。タイムスロット(
2)による演算結果はCバス、5Ii128.1化バス
、5W30、Dバスを介しテI102−10(7)ラッ
チ10−H,−ラッチされる。まず、ラッチ10−1の
出力がシフタセレクタ10−9、ラッチ10−4.ビッ
ト処理回路10−10を介してラッチ10−5にラッチ
されてラッチ10−3によるデータとともにデータバン
ク1−6を読み出し。
データバンク1−6の出力がラッチ10−8にラッチさ
れる。次いで、ラッチ10−1の出力がシフタセレクタ
l0−9にて1ビツト右シフトされ、MSBに1〃が加
えられてラッチ10−4でラッチされる。ラッチ10−
4の出力がビット処理回路10−10を介してラッチ1
0−5にラッチされ、ラッチ10−3によるデータとと
もにデータバンク1−6を読み出し、データバンク1−
6の出力がラッチ10−7にラッチされる。この時ラッ
チ10−7の上位8ビツトにはラッチ10−8の出力が
与えられているので、前回のデータバンク1−6の値と
ともにラッチされる。ここで、ラッチ10−7の下位8
ビツトにラッチされたデータは、データバンクの項で述
べたとおり12ビツト波形の下位4ビツト2ワード分に
相当する。ラッチ10−7の出力はセレクタ10−12
を介してシフタ10−13に与えられ、上位8ビツトは
4ビツト右にシフトされ。
ラッチ10−1の出力のLSB=Oならば下位8ビツト
も4ビツト右シフトされ、LSB=1ならば下位4ビツ
トがシフトされずにシック10−13より出力される。
ここで、コントロールデータC0NTにおいてす8=1
即ち8ビツト波形の指定がある場合には、シフタ10−
13は下位4ビツトを′0”にして出力する。シフタ1
0−13の出力はノイズ回路10−14、ラッチ1O−
2を介してDバスに与えられ、MSV2−11を介して
RAM7−3のレジスタwR1に格納される。この値が
波形1の波形データである。
タイムスロット(4)によって得られたアドレスについ
ても同様の処理が行われる。ただし、コントロールデー
タC0NTにおいてNA = 00でない場合にはノイ
ズ回路10−14においてノイズ信号が加えられる。A
N=01の時にはビット9が、NA=10の時にはビッ
ト10が、NA=11の時にはビット9及び10がノイ
ズ信号におきかえられる。このようにして、加算器を用
いずにノイズ信号を重畳している。これが波形2の波形
データとしてRAM?−2のレジスタ+1R2に格納さ
れる。
■ エンベロープ乗算 上記のようにして波形1、波形2の2種類の波形データ
が得られたが、この波形データに対してエンベロープの
乗算を行う。波形1に対するエンベロープはRAM7−
3のレジスタERIに、波形2に対するエンベロープは
RAM7−3のレジスタER2に入っている。ここで、
エンベロープについて述べると、エンベロープは指数部
4ビツト仮数部9ビットの13ビット浮動小数点表示に
なっている。エンベロープ乗算は各チャンネル2回行わ
れるがそれぞれの動作は同様であるので、タイムスロッ
ト(7)〜(9)におけるwRI X ERIの演算に
ついて説明する。
RAM7−3(7) レジスタER1ノデータがMSW
2−11を介してMPLY2−7のラッチ9−3及びラ
ッチ9−5にラッチされる。ここで、ラッチ9−3には
レジスタERIの下位10ビツトが、ラッチ9−5には
レジスタERIのビット9−12がラッチされる。次い
でRAM?−3のレジスタ11RI(7)データがMS
V2−11を介して1lIPLY2−7(73ラッチ9
−1にラッチされる。ラッチ9−3の出力はビット処理
回路9−12においてそのMSBが°11”にされてラ
ッチ9−4にラッチされる。即ち、ラッチ9−4にはエ
ンベロープの仮定部がラッチされる。ラッチ9−1の出
力はシフタ9−11を介してラッチ9−2にラッチされ
る。この際エンコーダ9−10のC入力にはSQ倍信号
よって1が与えられており、シフタ9−11のC入力に
は00001が与えられる。故にシフタ9−11はラッ
チ9−1の下位12ビット即ちデータバンク1−6より
読み出した波形1の波形データ12ビツトをラッチ9−
2へ送出する。乗算器9−16がラッチ9−2及びラッ
チ9−4のデータの乗算を行い、積14ビットがラッチ
9−7にラッチされ、シフタ9−15へ送出される。
一方、ラッチ9−5にはエンベロープの指数部がラッチ
されており、ラッチ9−6を介してデゴーダ9−13に
てデコードされ、セレクタ9−14を介してシフタ9−
15に制御信号として与えられる。故に、ラッチ9−7
の出力はエンベロープの指数部によってシフトされ、ラ
ッチ9−8にてラッチされる。このようにして、固定小
数点の波形データと浮動小数点のエンベロープの乗算が
行われる。ラッチ9−8の出力はLバスよりMSV2−
11を介してRAM?−1のレジスタ%lE1に格納さ
れる。波形2の波形データとエンベロープの乗算も同様
にして行われRAM?−4のレジスタVllE2に格納
される。
■ 2波混合 上記のようにして、レジスタ1E1. VB2に波形が
格納された。このステップではwElと1IE2の和を
求める。タイムスロット(1)における演算がこれに相
当する。
■ CN乗算 タイムスロット(1)で2波混合を行うが、本楽音発生
部1−5においては、ABM2−9及びフィルタ1−7
の特性によっては音名に応じて発生される音圧レベルが
異なる場合がある。このための補正を行うのがCN乗算
である。ここでは補正の為の係数としてノート係数CN
をそのまま用いている。タイムスロット(1)における
1IE2+%lE1の演算結果が、Cバスより5V28
、HLババス5V29、Lバスを介してMPLY2−7
のラッチ9−1にラッチされる。一方メモリ2−5のR
OM7−5よりノートデータNOに応じてノート係数C
Nが読み出され、HDババス 8%124、Lパスを介
してMPLY2−7のラッチ9−3にラッチされる。
ここで、wHI + VB2は16ビツトのデータであ
るが乗算器9−16のA入力は12ビツトであるのでM
PLY2−7では次のような処理を行っている。即ち、
ラッチ9−1の上位5ビツトがエンコーダ9−10に入
力され、エンコーダ9−10が第9表に示すとおりのデ
ータをA、8両端子より出力する。つまり、ラッチ9−
1におけるデータが実質何ビットであるかを求め、この
結果に応じてシフタ9−11によってラッチ9−1より
12ビツトをとり出す0例えば、ラッチ9−1の値が3
A26□6の場合は、このデータは実質15ビツトのデ
ータであるのでシフタ9−11はラッチ9−1のビット
14以下の12ビツトをとり出し、シフタ9−11の出
力は7441.となる。このようにしてWB2 + M
HIの実質の部分とノート係数との乗算を行い、シフタ
9−15によって元のビット数にもどし、ラッチ9−9
でラッチする。
以上のようにして少ないビット数の乗算器を用いて大き
なビット数のデータの乗算を行っている。
このようにして得られた値をDAC2−8へ出力し、A
BM2−9で所定の周期に補正されて楽音信号として出
力される。
ところで1本楽音発生部1−5においては、先に述べた
ようにマイコンの指示により第1表のフラグvOLによ
り、CN乗算をVLD乗算に切換えることができる。即
ち、ロングシーケンスにおいて、RAM5−6のレジ:
A 9 VLo 8ビツトが、MSw2−11ヲ介シテ
RAM?−4のレジスタLVD−に送られる。送出の際
にMSV2−11においてビットシフトがなされ、8ビ
ツトのデータを2ビツト左シフトし更に下位2ビツトに
60”を追加し、10ビツトのデータに変換される。こ
のことによりVLDのビット数はCNのビット数と同一
となる。 IIEZ十WE1の値にROM7−5の値を
掛けるか、レジスタVLD’の値を掛は合わせるかは第
1表におけるフラグVOLで決まり、VOL=Oならば
ROM7−5がHDババスデータを送出し、 VOL=
 1ならばRAM7−4がHDババスデータを送出する
上記のように構成することにより、マイコン1−4によ
って楽音発生部1−5の出力する楽音信号のレベルを変
えることが可能となり、第1表のVLDの値を順次変え
ることにより振幅変調をかけることが可能となる。
鍵盤を押下する速さと圧力の少なくとも一方に基づきV
LDを作成すると、タッチレスポンス機能が実現する。
タッチレスポンス機能とは鍵盤の操作の速さ・強さ等に
よって音量・音色等が変化することである。例えばピア
ノは1強く釘等すると音量が大きいだけでなく音色も華
やかなものになり、弱く打鍵すると音量が小さいだけで
なく音色もこもったものとなる。打鍵の強さに応じて音
量も音色も自在に変化するが、ピアノの場合は打鍵の後
、鍵盤を押す強さを変化させても、減衰しつつある音質
には変化を加えることができない。このようにピアノは
打鍵の強さのみがタッチレスポンス機能となっていて、
このような機能を特にイニシャルタッチコントロールと
呼ぶ、一般に打楽器がこれに属する。
一方、トランペットは息の強さにより持続している音質
をも変化することができるので、この音を模倣して電子
楽器の鍵盤操作で演奏する場合も、押鍵によりトランペ
ット音を発生中に押鍵の強さを増減することで音量・音
色に変化を与えることが必要となる。このような機能を
特にアフタータッチコントロールと呼ぶ。一般に、弦楽
器と管楽器がこれに属する。
本発明の実施例では先に述べたように、VOLフラグに
よりVLD乗算を行うことにより、各チャンネル独立に
音量を制御することができる。
応用例−とじて、打鍵の強さを計測して、強さに応じて
VLDの値を作成してマイコンから転送することにより
、打鍵毎に転送された異なるVLDに応じて各音の音量
が変化することになる。
マイコンがVLDを転送する際、VLDの値に応じてタ
ブレットデータを切換えて転送すると、本実施例の楽音
発生部はVLDの値に応じて音量と共に音色をも変化さ
せられることは、先に掲げた機能説明で明らかである。
この音色の切換について、 VLDが8ビツトの例で説
明する。
第23表に、VLDの値の範囲と、それに対応する強弱
名とタブレット名の一例を示す。
VLDが1ビット小さくなる毎に、音量は172つまり
6dB小さくなり、これを音楽用語の強弱名の各々に割
当てである。またffの強さには華やかな音色が必要な
ので高調波の豊富な波形データをタブレットOに割当て
、mpより小さい音量ではこもった音色が必要なので正
弦波に近い波形データをタブレット3に割当てるように
、複数種類の波形データをデータバンクに準備しておく
このようにすると、打鍵の強さによってVLI)の数値
範囲で音色が4通り切換えられると同時に8ビツトのV
LDに応じて256通りの音量が指定できる。
以上はイニシャルタッチコントロールであったが、同様
に打鍵後の押鍵圧の大小に応じて、刻々と変化するVL
Dと、VLDの値に応じて刻々と変化するタブレットデ
ータとをマイコンが送出すると、本実施例の楽音発生部
は打鍵後の押鍵圧の変化に応じて刻々と、音色と音量と
を変化させることができる。
以上がアフタータッチコントロールである。
(4)  エンベロープ発生方法 楽音発生部1−5におけるエンベロープの発生方法は次
の3ステツプに分けられる。即ち、■ アドレス発生 ■ エンベロープデータの読み出し ■ エンベロープ計算 以下各ステップを詳しく説明する。
■ アドレス発生 押鍵によるイニシャル設定にて、ヘッダデータの5TE
(エンベロープデータEl’のスタートアドレス)、Δ
5TE(エンベロープデータEl’のワード数)に基づ
いてレジスタEARL、 EARL、 TRI、 TR
2゜ΔTl、ΔT2が初期設定されている。これらのデ
ータをもとにアドレスの演算が行われる。アドレスの演
算は演算頻度が少なくてもよいので演算シーケンスのロ
ングシーケンスにて行っている。更に、ロングシーケン
スの奇数回目でエンベロープデータEl’のアドレス演
算を、偶数回目でエンベロープデータE”のアドレス演
算を行っている。
奇数回目のロングシーケンスにおいて、タイムスロット
(13)で ΔTl  +  TRI  → TRI       
    ・・・・・・(4−1)タイムスロット(15
)で ΔEARI + EARL +Ci −* EARL 
  ・・・・・・(4−2)の演算が行われEARLの
値を用いてデータバンク1−6の読み出しを行う。タイ
ムスロット(15)のCiはタイムスロット(13)に
て行われるΔT1の累算によって生じたオーバーフロー
に当る。ここで演算(4−1)を詳しく説明する。
先ず、RAM7−2のレジスタΔT1の値がHBババス
阿S1+12−11を介してFA2−6のラッチ8−1
にラッチされる。同時に、RAM7−3のレジスタTR
Iの値がHCバス、MSW2−11を介してFA2−6
のラッチ8−2にラッチされる。ラッチ8−1の出力は
ビット処理回路8−10によってビット3が強制的にI
t 011にされ(ビット3をII O$1にする理由
は後で述べる。)、ラッチ8−3でラッチされる。ラッ
チ8−2の出力はビット処理回路8−11を介してラッ
チ8−4でラッチされる。二二でビット処理回路8−1
1においてはビットの変換等の処理は施されない、ラッ
チ8−3及びラッチ8−4の出力を加算器8−9にて加
算し、ラッチ8−7、ラッチ8−8ヲ介してCパスに与
え、MS112−11を介しテRAM7−3のレジスタ
TRIに加算結果を格納する。ここで加算結果にオーバ
ーフローが生じた場合は、加算器8−9のGoより1”
が出力される。この出力をラッチ8−6にてラッチし、
タイムスロット15の演算の際に使用する。但し、これ
は波形データにPCM部がない場合についてであり、波
形データにPCM部がある場合(フラグPCM=1)に
はPCC郡部読み終えるまでレジスタTRIに対し演算
結果として強制的に′0”が入力される。故にΔT1の
累算によるオーバーフローが生じることがない為PCM
を読み終えるまではEARIの値が更新されることはな
い。
ΔT1はイニシャル処理の項で述べたとおり第13表に
おけるC=O時のD出力の値であり、レジスタTRIは
16ビツトのレジスタであるので、例えばΔT1=40
001.であれば演算(4−1)は4回行われるとレジ
スタTRIはオーバーフローし、演算(4−2)のC1
=1となりアドレスの更新が行われる。ここで5演算(
4−1)、 (4−2)はロングシーケンスの2回に1
回行われる。第1図(ハ)で示すとおり、同じチャンネ
ルのロングシーケンスは388タイムスロツトの周期、
即ち1タイムスロツトは250nsであるので97μs
の周期に現われる。故に演算(4−1)、 (4−2)
は194μS毎に行われ、ΔT1=40001.である
場合には776μsでアドレスの更新が行われることに
なる。
ところで、エンベロープデータは2バイトで構成されて
いるので、アドレスの更新の際は2ずっ更新されなけれ
ばならない、タイムスロット(15)においては次のよ
うにしてアドレスの更新を行っている。
先ず、ΔEARLはΔT1によって定まる値であり、A
 Tl # 00081. (7)時にはAEAR1=
00001.テあり、ΔT1=00081.の時にはΔ
EARL = FFEBi、 =−21□。である。こ
の操作はMSW2−11における5V31にて行われる
。5W31は第11図(す)に示すようになっており、
ΔT1のビット3の値を示すフラグTOによって制御し
ている。今仮にΔT1≠00081.とすると、5W3
1によりAバスにoooo、、が、RAM?−1のレジ
スタEARIよりHAババスMS112−11の511
2を介してBバスにEARL(7)値が与えられる。こ
れらの値がFA2−6のラッチ8−1゜ラッチ8−2に
ラッチされる。ラッチ8−1の出力はビット処理回路8
−10を介してラッチ8−3へ送られる。
ここで、ビット処理回路8−10ではデータの変換は行
われないようになっている。同時に、ラッチ8−2の出
力はビット処理回路8−11に与えられ、データのLS
Bが強制的にl”にされてラッチ8−4へ送られる。即
ちビット処理回路8−11にて予め1が加えられる。ま
た、先に述べたラッチ8−6に格納されている演算(4
−1)によるオーバーフローがラッチ8−5にラッチさ
れる。故にラッチ8−3.ラッチ8−4及びラッチ8−
5の値の加算を行うと、ラッチ8−5の値が°°1″で
あればEARIの値に”2”が加えられることになる。
一方、ラッチ8−5の値が0”の場合はEARIの値は
1増加されたままとなるが、イニシャル処理の項で述べ
たように、Ilo 2−10においてLSBに強制的に
I Q l#、 It l”を与えるので不都合は生じ
ない。
ところでΔT1=00081.の場合には、ΔEA旧が
FFEB、、 (−01゜)となる。故にEARIの値
から2111.引かれることになり、10ワード前のエ
ンベロープデータが読まれることになる。これにより、
エンベロープデータのアドレスがループすることになり
、マンドリンのようなくり返しエンベロープを発生する
ことができる。先に演算(4−1)にて、ビット処理回
路8−10にてビット3をHOjjにすると述べたが、
その理由はビット3がΔEARI =FFEB1.とす
るビットであり、この演算を行う際にレジスタTRIに
00081.を加えないようにする為である。
ロングシーケンスの偶数回目におけるΔT2゜TR2,
ΔEAR2,EAR2の演算も同様にして行われる。
なお、EARI、 EAR2に関する演算は全く独立に
行われる為、波形l、濾波形に対して全く異なったエン
ベロープ信号を発生させることができるのは言うまでも
ない。また、EARI又はEAR2のくり返しについて
もくり返しの周期を異ならしめることが容易であるので
種々の効果を得ることができる。
■ エンベロープデータの読み出し エンベロープデータの読み出しはロングシーケンスにお
いて行い、偶数回目に波形1のエンベロープデータを、
奇数回目に波形2のエンベロープデータの読み出しを行
う。
レジスタEARI、 EAR2の値に基づいて行うエン
ベロープデータの読み出し方についてはイニシャル処理
の項で述べたものと全く同じであり、■102−10に
てデータバンク1−6より読みとったデータのフォーマ
ット変換を行いながらレジスタΔTl。
Ar1. AZI、 AZ2. AEI、ΔE2ニ格納
していく。
■ エンベロープ計算 エンベロープデータの読み出しにより、AZI。
ΔZ2.ΔEl、ΔE2にデータが格納されており、ま
タイニシャル処理ニよ’JERI、 ER2,ZRI、
 ZR2ニ初期値が与えられている。これらの値に応じ
てエンベロープ計算を行う。
エンベロープ計算の基本は加算部のタイムスロット(3
)、 (5)、 (6)、 (8)である、タイムスロ
ット(3)、 (5)によって波形1のエンベロープを
計算し、タイムスロット(6)、 (8)によって波形
2のエンベロープを計算する。ここで、タイムスロット
(5)。
(8)のC1はタイムスロット(3)、 (6)による
演算で生じたオーバーフローであるが、タイムスロット
(3)、 (6)にて生じたオーバーフローがどのよう
にしてタイムスロット(5)、 (8)で加えられるか
については、アドレス発生のタイムスロット(13) 
(15)で述べたものと同様である。このようにして得
られ九〇RI、 ER2の値がエンベロープデータであ
る。
ところで、エンベロープ計算は各種モードによって異な
る。各種モードとは、 1)波形がPCMを有する場合と有しない場合。
(PCM = l10) 2) ピアノ型エンベロープの場合とオルガン型エンベ
ロープの場合、 CP10=110)3) ダンパフラ
グをオンした場合とオフした場合。(DMP = l1
0) の3種である。以下側々の場合について説明する。
PCM=OかつP10=0 初期設定はERI、 ER2,ZRI、 ZR2トも一
〇#であり、鍵が押圧されている時はレジスタΔE1.
ΔE2゜ΔZl、Δz2の値に従ってエンベロープの演
算を行う。鍵が離されると、タイムスロット(3)、 
(5)。
(6)、 (8)のAZI、 AEI、 AZ2. A
ll!2(7)値トシテ。
UCIF2−3の信号処理器5−6よりリリースデータ
が発生され、レジスタΔz1.ΔEl、ΔZ2.ΔE2
の値のかわりに用いられる。
なお、このモードにおいてはダンパフラグDMPによっ
て演算は何ら影響はされない。
pcP4=oかつP10=1 初期設定はERI、 ER2,ZRI、 ZR2トもI
IO”であり、鍵が押圧されている時はレジスタΔEl
、Δ[2゜ΔZl、Δz2の値に従ってエンベロープの
演算を行う。鍵が離されると、ダンパフラグDMP=1
の場合は引き続きレジスタ八El、ΔE2.Δ21.Δ
z2の値に従ってエンベロープの演算を行い、ダンパフ
ラグDMP=Oの時はPCN=OかつP10=Oの場合
と同じである。
PCM部1かつP10=0 初期設定は、EA1=IFFFt*t ER2= O、
ZR1= O。
ZR2=Oである。鍵が押圧されており、波形1がPC
M部を読み出している時は初期値が保持され、PCM部
を読み終えると、レジスタΔEl、ΔE2゜ΔZl、Δ
Z2の値に従ってエンベロープの演算を行う、1Mが離
されると、波形1がPCM部を読み出しているいないに
関係なく UCIF2−3の信号処理器5−6によるリ
リースデータに基づいて演算が行われる。
即ちPCM=OかつP10=Oの場合に帰着する。
なお、このモードにおいてはダンパフラグDMPによっ
て演算は何ら影響を受けない。
PCM部1かつP10=1 初期設定は、ER1=IFFF、、、 ER2冨0 、
 ZR1= O。
ZR2=0である。ダンパフラグDMP=Oの場合は、
1度鍵が押圧されると離鍵のタイミングには無関係に演
算が行われる。即ち、波形1がPCM部を読み出しテイ
ル時にはレジスタERI、 ER2,ZRI、 ZR2
は初期値が保持され、PCM部を読み終えるとレジスタ
ΔEI、ΔE2.ΔZl、Δz2の値に従って演算が開
始される。ダンパフラグDMP=1の場合は、PCM部
1かつP10=Oの場合と全く同じである。
以上述べたように、種々のモードに応じて自由にエンベ
ロープ信号を発生することができる。また、ΔEl、Δ
ZlとΔE2.Δz2は全く独立に設定でき、そのデー
タはアドレス発生の項にて明らかなとおりΔTl、ΔT
2によって定まる時間で更新されるので前述の2種類の
波形データと相俟って種々の楽音が発生できる。
(発明の効果) 以上のように本発明は、波形データと、該波形データの
アドレスを含む第1のデータと、該第1のデータのアド
レスを含む第2のデータとを格納するデータバンクを有
し、少なくとも音色選択データと音程データとを含む演
奏データを受取り、上記データバンクから該音色選択デ
ータと該音程データの全部又は一部をアドレスとして該
当する第2のデータを読み出し、上記データバンクから
該第2のデータの全部又は一部をアドレスとして該当す
る第1のデータを読み出し、上記データバンクから該第
1のデータの全部又は一部をアドレスとして該当する波
形データを読み出し、該波形データに上記演奏データに
基づく処理を施して楽音信号を発生する楽音発生部を有
することにより、各鍵ごとに音色の変化を与えることが
できる一方、逆に同一オクターブ内にては同じヘッダア
ドレスデータを有するようにすれば波形データ、エンベ
ロープデータ、ヘッダデータを増すことなく同じ音色の
楽音が得られる。また、各ヘッダデータにおいて任意の
波形データ、エンベロープデータが指定できるので、少
ない波形データ及びエンベロープデータであってもその
組み合わせ方で様々な楽音を発生することも可能である
第7表 X :  Don’t care X :  Don’t care 第14表 (上位2 ビット) 第15表 第19表 一: ビット処理を行わないビット
【図面の簡単な説明】
第1図(イ)は本発明における情報処理装置の一実施例
のブロック図、第1図(ロ)はマイコンによるデータ転
送のタイミング図、第1図(ハ)は本発明において用い
られている演算タイムスロットを表わす図、第2図は本
発明における楽音発生部1−5の構成図、第3図は楽音
発生部1−5におけるノートクロック発生の原理図、第
4図は楽音発生部1−5における5EQ2−2の詳細図
、第5図は同じくυClF2−3の詳細図、第6図は同
じ< CDR2−4の詳細図、第7図は同じくメモリ2
−5の詳細図、第8図は同じ< FA2−6の詳細図、
第9図(イ)は同じくMPLY2−7の詳細図、第9図
(ロ)はMPLY2−7にて使用している乗算器9−1
6の詳細図、第1O図は楽音発生部1−5におけるIl
o 2−10の詳細図、第11図(イ)は同じ<MS%
12−11(7)詳細図、第11図(ロ)〜第11図(
す)はMS12−11に用いられているスイッチのパタ
ーン図、第101(、()はMS12−114=おける
データ転送のタイミング図、第12図はデータバンク1
−6におけるデータフォーマットを示す図、第13図は
データバンク1−6におけるエンベロープデータのデー
タフォーマットを示す図、第14図は従来の電子楽器に
おけるメモリの構成図である。 1−1・・・鍵盤、1−2・・・タブレット、1−3・
・・効果スイッチ、1−4・・・マイコン、1−5・・
・楽音発生部、1−6データバンク、1−7・・・フィ
ルタ、2−1・・・マスタクロック、2−2・・・シー
ケンサ(SEQ)、 2−3・・・マイコンインターフ
ェース部(UCIF)、2−4・・・比較レジスタ部(
CDR)、2−5・・・メモリ、2−6・・・フルアダ
一部(FA)、2−7・・・乗算部(MPLY)、2−
8・・・ディジタルアナログコンバータ(DAC)、2
−9・・・アナログバツアアメモリ部(ABM)、2−
10・・・入出力回路部(Ilo)、2−11・・・マ
トリックススイッチ部(MSll)。 特許出願人 松下電器産業株式会社 第1図 (イ) (Yj) A/D  4バコ二〇− 第2図 」 第4図 第8図 第11図 FA          MPLY    14)第1
1図 第12図 第13図 2禦0 の 瓜1 Z−1+?  綺 ΔE  5SSS SS SS SSS 5SSSSΔ
Z       DATA     00000000
第14図

Claims (1)

  1. 【特許請求の範囲】 波形データと、該波形データのアドレスを含む第1のデ
    ータと、および該第1のデータのアドレスを含む第2の
    データとを格納するデータバンクを有し、 少なくとも音色選択データと音程データとを含む演奏デ
    ータを受取り、上記データバンクから該音色選択データ
    と該音程データの全部又は一部をアドレスとして該当す
    る第2のデータを読み出し、上記データバンクから該第
    2のデータの全部又は一部をアドレスとして該当する第
    1のデータを読み出し、上記データバンクから該第1の
    データの全部又は一部をアドレスとして該当する波形デ
    ータを読み出し、該波形データに上記演奏データに基づ
    く処理を施して楽音信号を発音する楽音発生部を有する
    ことを特徴とする電子楽器。
JP60093702A 1985-05-02 1985-05-02 電子楽器 Pending JPS61252591A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP60093702A JPS61252591A (ja) 1985-05-02 1985-05-02 電子楽器

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP60093702A JPS61252591A (ja) 1985-05-02 1985-05-02 電子楽器

Publications (1)

Publication Number Publication Date
JPS61252591A true JPS61252591A (ja) 1986-11-10

Family

ID=14089733

Family Applications (1)

Application Number Title Priority Date Filing Date
JP60093702A Pending JPS61252591A (ja) 1985-05-02 1985-05-02 電子楽器

Country Status (1)

Country Link
JP (1) JPS61252591A (ja)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5887592A (ja) * 1981-11-20 1983-05-25 セイコーインスツルメンツ株式会社 電子楽器
JPS5957292A (ja) * 1982-09-27 1984-04-02 ヤマハ株式会社 楽音形成方法

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5887592A (ja) * 1981-11-20 1983-05-25 セイコーインスツルメンツ株式会社 電子楽器
JPS5957292A (ja) * 1982-09-27 1984-04-02 ヤマハ株式会社 楽音形成方法

Similar Documents

Publication Publication Date Title
JPS6029959B2 (ja) 電子楽器
US5340938A (en) Tone generation apparatus with selective assignment of one of tone generation processing modes to tone generation channels
JPS61252591A (ja) 電子楽器
US4502359A (en) Electronic musical instrument
JPS61255397A (ja) 電子楽器
EP0201998B1 (en) Electronic musical instrument
JPS61254992A (ja) 電子楽器
JPS61240294A (ja) 電子楽器
JPS61231597A (ja) 電子楽器
JPS61250751A (ja) 情報処理装置
JPS61248095A (ja) 電子楽器
JPS61231598A (ja) 電子楽器
JPS61233789A (ja) 電子楽器
JPS61246794A (ja) 電子楽器
JPS61233788A (ja) 電子楽器
JPS61240293A (ja) 電子楽器
JPS61233786A (ja) 電子楽器
JPS61212899A (ja) 電子楽器
JPS61243498A (ja) 電子楽器
JPS61233787A (ja) 電子楽器
JPS61233790A (ja) 電子楽器
JPS61249096A (ja) 電子楽器
JPH0419587B2 (ja)
EP0255151B1 (en) Electronic musical instrument
JPS585796A (ja) 電子楽器のディレイビブラート制御装置