JPS61250751A - 情報処理装置 - Google Patents
情報処理装置Info
- Publication number
- JPS61250751A JPS61250751A JP60091247A JP9124785A JPS61250751A JP S61250751 A JPS61250751 A JP S61250751A JP 60091247 A JP60091247 A JP 60091247A JP 9124785 A JP9124785 A JP 9124785A JP S61250751 A JPS61250751 A JP S61250751A
- Authority
- JP
- Japan
- Prior art keywords
- data
- latch
- bits
- bit
- address
- 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.)
- Granted
Links
Landscapes
- Memory System (AREA)
Abstract
(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。
め要約のデータは記録されません。
Description
【発明の詳細な説明】
(産業上の利用分野)
本発明は情報処理装置に係り、特にメモリを読み出し、
読み出したデータに基づいて種々の処理を行うものに関
する。
読み出したデータに基づいて種々の処理を行うものに関
する。
(従来の技術)
近年情報処理装置は半導体技術の進歩に相俟って高度な
処理を行うようになっている。このような情報処理装置
は例えばワンチップマイクロプロセッサ(以下マイコン
と称す)がある。
処理を行うようになっている。このような情報処理装置
は例えばワンチップマイクロプロセッサ(以下マイコン
と称す)がある。
ブロック図を第14図に示し動作を説明する。
プログラムカウンタ1により発生されるアドレス情報に
従ってROM2が読み出される。 ROM2は通常イン
ストラクションROMと呼ばれ、予めマイコンにて行う
べき命令が格納されている。 ROM2より出力される
データに基づき、AlO2,RAM4. l105が所
定のタイミングで所定のデータのやりとりを行い情報処
理を行う。例えば、インテル社のマイコン8049がこ
れに相当する。インテル8049においては、ROM2
の読み出しは8ビット単位で行われ、短い命令は8ビッ
ト、長い命令は16ビットとなっており、この場合には
連続する2ワードのデータを読み出すようになっている
。
従ってROM2が読み出される。 ROM2は通常イン
ストラクションROMと呼ばれ、予めマイコンにて行う
べき命令が格納されている。 ROM2より出力される
データに基づき、AlO2,RAM4. l105が所
定のタイミングで所定のデータのやりとりを行い情報処
理を行う。例えば、インテル社のマイコン8049がこ
れに相当する。インテル8049においては、ROM2
の読み出しは8ビット単位で行われ、短い命令は8ビッ
ト、長い命令は16ビットとなっており、この場合には
連続する2ワードのデータを読み出すようになっている
。
(発明が解決しようとする問題点)
しかしながら、上記の構成においては、仮に必要なデー
タ長が例えば12ビットでよい場合においても16ビッ
ト分のデータを読むことになる。逆に言えば、ROM2
において、12ビットのデータが格納されている場合に
は4ビットが無駄となっていることになる。
タ長が例えば12ビットでよい場合においても16ビッ
ト分のデータを読むことになる。逆に言えば、ROM2
において、12ビットのデータが格納されている場合に
は4ビットが無駄となっていることになる。
本発明は上記問題点に鑑み、ROMの使用効率を上げた
情報処理装置を提供するものである。
情報処理装置を提供するものである。
(問題点を解決するための手段)
上記問題点を解決するため1本発明は。
データの第1番目のワードのデータの上位Mビットと下
位(N−M)ビットが上記記憶装置に格納されているア
ドレスを各々AiとBiとすると、但し[]はガウス記
号であり、[]内の数値の整数部を表す。
位(N−M)ビットが上記記憶装置に格納されているア
ドレスを各々AiとBiとすると、但し[]はガウス記
号であり、[]内の数値の整数部を表す。
の関係で上記データが格納されている記憶装置を有し。
上記アドレスBiは上記アドレスAiを。
ビットだけ右シフトして且つ最上位を含む少なくとも1
ビットに1を付与することによって作成するアドレス作
成器を有するものである。
ビットに1を付与することによって作成するアドレス作
成器を有するものである。
(作用)
本発明は上記した構成によってデータを上位ビットと下
位ビットに分け、下位ビットをまとめてlワードとして
ROMに格納する。これにより利用されないビットが少
なく或いは全くなくなるため。
位ビットに分け、下位ビットをまとめてlワードとして
ROMに格納する。これにより利用されないビットが少
なく或いは全くなくなるため。
ROMの利用効率を著しく向上させることができる。
(実施例)
以下図面に基づき本発明の一実施例を説明する。
第1図は本発明による情報処理装置を電子楽器に用いた
場合のブロック図である。この第1図を説明すると、1
−1は鍵盤である。1−2はタブレットであり5本電子
楽器より出力される楽音の音色の選択を指示する操作部
である。1−3は効果スイッチであり、楽音に対する各
種の効果の制御1例えばヴイブラート、トレモロ等の効
果のオン・オフを指示するスイッチである。■−4はマ
イコン(マイクロコンピュータ)であり5例えばインテ
ル社のマイコン8049等が相当する。1−5は楽音発
生部であり、マイコン1−4より与えられた制御信号に
基づいて波形演算、周波数演算を行う。1−6はデータ
バンクであり、楽音発生部1−5にて使用する波形デー
タやエンベロープデータが格納されているROM (読
出専用メモリ)である、1−7はフィルタであり、楽音
発生部1−5より出力される楽音信号の折り返しノイズ
を除去する。1−8はスピーカである。
場合のブロック図である。この第1図を説明すると、1
−1は鍵盤である。1−2はタブレットであり5本電子
楽器より出力される楽音の音色の選択を指示する操作部
である。1−3は効果スイッチであり、楽音に対する各
種の効果の制御1例えばヴイブラート、トレモロ等の効
果のオン・オフを指示するスイッチである。■−4はマ
イコン(マイクロコンピュータ)であり5例えばインテ
ル社のマイコン8049等が相当する。1−5は楽音発
生部であり、マイコン1−4より与えられた制御信号に
基づいて波形演算、周波数演算を行う。1−6はデータ
バンクであり、楽音発生部1−5にて使用する波形デー
タやエンベロープデータが格納されているROM (読
出専用メモリ)である、1−7はフィルタであり、楽音
発生部1−5より出力される楽音信号の折り返しノイズ
を除去する。1−8はスピーカである。
次に第1図(イ)に示す電子楽器の動作を説明する。マ
イコン1−4は内部に予め書き込まれた命令に従って、
鍵盤1−1.タブレット1−2、効果スイッチ1−3の
状態を順次検索する。またマイコン1−4は鍵盤1−1
における鍵の0N10FFの状態に基づいて押圧されて
いる鍵のコードを楽音発生部1−5の複数のチャンネル
に割り当てる割り当て信号を送出するとともに、タブレ
ット1−2、効果スイッチ1−3の状態に応じて制御デ
ータを送出する。楽音発生部1−5においては、マイコ
ン1−4より送出される割り当て信号及びその他の制御
信号を内部のレジスタに取り込み、これらの信号に基づ
いてデータバンク1−6より必要な波形データ、エンベ
ロープデータを読み出しながら楽音信号の合成を行う。
イコン1−4は内部に予め書き込まれた命令に従って、
鍵盤1−1.タブレット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へと送られ楽音
を発生する。
フィルタ1−7を通してスピーカ1−8へと送られ楽音
を発生する。
第1図(ロ)にマイコン1−4より楽音発生部1−5へ
データを転送する場合のタイミング図を示す。また、第
1表にマイコン1−4より楽音発生部1−5へ送出する
データの内容を示す。第1表において。
データを転送する場合のタイミング図を示す。また、第
1表にマイコン1−4より楽音発生部1−5へ送出する
データの内容を示す。第1表において。
NODはノートオクターブデータであり、ノートデータ
NDとオクターブデータOCT及びキーオンデータKo
nより成っている。その具体的な内容は第2表にNOD
のビット構成が示してあり、第3表にノートデータNO
と音名との対応が示してあり、第4表にオクターブデー
タOCTと音域との対応が示しである。即ち仮に楽音発
生部1−5に対しG#というノートの第6オクターブの
音(以下G#6と略す)をチャンネル1より出力したい
時には第1図(ロ)におけるアドレスとして00000
001 、データとして10011110をマイコン1
−4より送出することになる。
NDとオクターブデータOCT及びキーオンデータKo
nより成っている。その具体的な内容は第2表にNOD
のビット構成が示してあり、第3表にノートデータNO
と音名との対応が示してあり、第4表にオクターブデー
タOCTと音域との対応が示しである。即ち仮に楽音発
生部1−5に対しG#というノートの第6オクターブの
音(以下G#6と略す)をチャンネル1より出力したい
時には第1図(ロ)におけるアドレスとして00000
001 、データとして10011110をマイコン1
−4より送出することになる。
次に、PDDはピッチデチューンデータであり調律をず
らすための8 bitのデータである。PDDは2の補
数表示にて表されており、可変範囲は−128〜+12
7の256通りである。RLDはリリースデータで、キ
ーオフ後の減衰特性を制御する4 bitのデータであ
る。VOLはボリュームフラグであり、このビットを′
1″にすると後述のボリュームデータVLDに応じて楽
音発生部1−5からの楽音信号の出力レベル制御を可能
にするものである。 DMPはダンパフラグであり、ピ
アノタイプエンベロープの場合のキーオフ後の減衰を急
速な減衰にせしめるフラグであり、DMP=1の時に機
能する。 SQLはソロフラグであり、他のチャンネル
と同音名の楽音がアサインされた時にそのチャンネルの
発生している楽音とこれから発生しようとしている楽音
の位相特性を合わすか否かを選択するフラグであり。
らすための8 bitのデータである。PDDは2の補
数表示にて表されており、可変範囲は−128〜+12
7の256通りである。RLDはリリースデータで、キ
ーオフ後の減衰特性を制御する4 bitのデータであ
る。VOLはボリュームフラグであり、このビットを′
1″にすると後述のボリュームデータVLDに応じて楽
音発生部1−5からの楽音信号の出力レベル制御を可能
にするものである。 DMPはダンパフラグであり、ピ
アノタイプエンベロープの場合のキーオフ後の減衰を急
速な減衰にせしめるフラグであり、DMP=1の時に機
能する。 SQLはソロフラグであり、他のチャンネル
と同音名の楽音がアサインされた時にそのチャンネルの
発生している楽音とこれから発生しようとしている楽音
の位相特性を合わすか否かを選択するフラグであり。
5QL=1の時には位相合わせをキャンセルする。
TABはタブレットデータであり、第1図におけるタブ
レット1−2により指定されるデータがこの5bitに
入る。PEはピッチエクステントフラグで、このビット
を′1”にしたチャンネルにはピッチエクステントがか
かる。VLDはボリュームデータであり、前述のボリュ
ームフラグVOLとともにチャンネルから出力される楽
音のレベルを8 bitの細かさで制御する。なお、こ
れら一連のデータはすべてチャンネルごとに独立に設定
できるものである。
レット1−2により指定されるデータがこの5bitに
入る。PEはピッチエクステントフラグで、このビット
を′1”にしたチャンネルにはピッチエクステントがか
かる。VLDはボリュームデータであり、前述のボリュ
ームフラグVOLとともにチャンネルから出力される楽
音のレベルを8 bitの細かさで制御する。なお、こ
れら一連のデータはすべてチャンネルごとに独立に設定
できるものである。
次に、楽音発生部1−5における演算シーケンスについ
て説明する。
て説明する。
第5表及び第6表に楽音発生部1−5の演算シーケンス
を示す。本楽音発生部1−5においては、短い演算サイ
クルでより多くのデータ処理を行うために演算シーケン
スがイニシャルモード、ノーマルモードの2つのモード
を有し、更に上記両モードがそれぞれロングシーケンス
、ショートシーケンスに分かれている。また、イニシャ
ルモードショートシーケンス及びノーマルモードロング
シーケンスはそれぞれEVEN、 ODDの2つの状態
を有している。
を示す。本楽音発生部1−5においては、短い演算サイ
クルでより多くのデータ処理を行うために演算シーケン
スがイニシャルモード、ノーマルモードの2つのモード
を有し、更に上記両モードがそれぞれロングシーケンス
、ショートシーケンスに分かれている。また、イニシャ
ルモードショートシーケンス及びノーマルモードロング
シーケンスはそれぞれEVEN、 ODDの2つの状態
を有している。
イニシャルモードはマイコン1−4が楽音発生部1−5
に対して新たな楽音の発生を命令した際に楽音発生部1
−5におけるマイコン1−4より指定されたチャンネル
について種々のレジスタ等の初期設定を行うモードであ
りロングシーケンスより開始され、ショートシーケンス
を2回行った後ノーマルモードに入る。このイニシャル
モードにおける2回のショートシーケンスについて1回
目がODD。
に対して新たな楽音の発生を命令した際に楽音発生部1
−5におけるマイコン1−4より指定されたチャンネル
について種々のレジスタ等の初期設定を行うモードであ
りロングシーケンスより開始され、ショートシーケンス
を2回行った後ノーマルモードに入る。このイニシャル
モードにおける2回のショートシーケンスについて1回
目がODD。
2回目がEVENのショートシーケンスとなる。このイ
ニシャルモード終了後、ノーマルモードに移るが、ショ
ートシーケンス6回の後ロングシーケンス1回がくるこ
とになる。
ニシャルモード終了後、ノーマルモードに移るが、ショ
ートシーケンス6回の後ロングシーケンス1回がくるこ
とになる。
本実施例では各チャンネル毎に、独立した2系統の波形
と独立した2系統のエンベロープとを掛は合わせるよう
になっており、更にピッチの細かな調整機能をも有して
いるが、これらの演算処理を時分割で8チャンネル分行
うためには多大な演算ステップが必要となる。そこで短
いサイクルで演算しないといけないものをショートシー
ケンスとし、演算頻度の低いもの、つまり長いサイクル
で演算してもよいものをロングシーケンスとする。
と独立した2系統のエンベロープとを掛は合わせるよう
になっており、更にピッチの細かな調整機能をも有して
いるが、これらの演算処理を時分割で8チャンネル分行
うためには多大な演算ステップが必要となる。そこで短
いサイクルで演算しないといけないものをショートシー
ケンスとし、演算頻度の低いもの、つまり長いサイクル
で演算してもよいものをロングシーケンスとする。
そしてショートシーケンスの間にロングシーケンスを挿
入することにより演算の効率化を図っている。
入することにより演算の効率化を図っている。
第1図(ハ)にショートシーケンス、ロングシーケンス
のタイミング図を示す、第1図(ハ)に示すとおり、シ
ョートシーケンス(0)〜(10)の11のタイムスロ
ットより成っており、ロングシーケンスは(11)〜(
19)の9のタイムスロットより成っている0個々のタ
イムスロットは250nsであり、4分割されてψ1.
ψ3のノンオーバーラツプの2相クロツクとともに全体
のシステムが動作している。
のタイミング図を示す、第1図(ハ)に示すとおり、シ
ョートシーケンス(0)〜(10)の11のタイムスロ
ットより成っており、ロングシーケンスは(11)〜(
19)の9のタイムスロットより成っている0個々のタ
イムスロットは250nsであり、4分割されてψ1.
ψ3のノンオーバーラツプの2相クロツクとともに全体
のシステムが動作している。
ショートシーケンスとロングシーケンスの関係は。
ショートシーケンスがチャンネル0からチャンネル7ま
で8回くり返されるごとに1チャンネル分のロングシー
ケンスが入る。故に1例えばチャンネル3のショートシ
ーケンスは11X8+9の97タイムスロツトごとに1
回、ロングシーケンスは97×8の776タイムスロツ
トごとに1回の割で現われることになる。更に、ノーマ
ルモードのロングシーケンスにはEVENとODDの2
つの状態があるため、?76X2の1552タイムスロ
ツトを周期としてシステムが動作しているものである。
で8回くり返されるごとに1チャンネル分のロングシー
ケンスが入る。故に1例えばチャンネル3のショートシ
ーケンスは11X8+9の97タイムスロツトごとに1
回、ロングシーケンスは97×8の776タイムスロツ
トごとに1回の割で現われることになる。更に、ノーマ
ルモードのロングシーケンスにはEVENとODDの2
つの状態があるため、?76X2の1552タイムスロ
ツトを周期としてシステムが動作しているものである。
次に、第5表及び第6表に基づいて個々の演算シーケン
スについて説明する。前述のように、楽音発生部1−5
は新たな押鍵によりイニシャルモードロングシーケンス
より開始するようになっているのでイニシャルモードロ
ングシーケンスよりタイムスロット別に説明を行う。
スについて説明する。前述のように、楽音発生部1−5
は新たな押鍵によりイニシャルモードロングシーケンス
より開始するようになっているのでイニシャルモードロ
ングシーケンスよりタイムスロット別に説明を行う。
加n
(13) PDD + PHI) → PDR(1
5) O→ TRI (16) O→ TR2 (17) O−* ZRI (18) O→ ZR2 タイムスロット(13)の意味するところは、PDDと
いうレジスタの内容とPROというレジスタの内容を加
算してPDRというレジスタに格納するということであ
る。タイムスロット(15)〜(18)は、TRI。
5) O→ TRI (16) O→ TR2 (17) O−* ZRI (18) O→ ZR2 タイムスロット(13)の意味するところは、PDDと
いうレジスタの内容とPROというレジスタの内容を加
算してPDRというレジスタに格納するということであ
る。タイムスロット(15)〜(18)は、TRI。
TR2,ZRI、 ZR2というレジスタにOを書き込
むということである。
むということである。
データバンク み し
く12) wTD −+ HAD 4 HAD
(14) HAD 4 C0NT 4 C0NT
、 DIFI(16)〜(17) HAD 4 STE
4 EARIこれらの意味するところは、左端にあ
るデータ(例えばタイムスロット(14)ならばHAD
というデータ)をアドレスとしてデータバンク1−6よ
り中央に記載のC0NTというデータを読み出し、右端
にある名前・のレジスタC0NT及びDIFIに格納す
るということである。
(14) HAD 4 C0NT 4 C0NT
、 DIFI(16)〜(17) HAD 4 STE
4 EARIこれらの意味するところは、左端にあ
るデータ(例えばタイムスロット(14)ならばHAD
というデータ)をアドレスとしてデータバンク1−6よ
り中央に記載のC0NTというデータを読み出し、右端
にある名前・のレジスタC0NT及びDIFIに格納す
るということである。
(1) PDR+ JD L、B、 ; O→ER
2/1(3) ORG +OCT + 1−* VB2
−eΔvAR(4) D、B、 + EARI→EA
R2(6)0 →IIIRI (8) O−4ER1 (9) O−4WE2 (10) O−+ IIEI、 llR2タイム
スロット(1)における0−4ER2/1はシゴートシ
ーケンス1回目即ちODD時にはER2,2回目即ちE
VEN時にはERIというレジスタにOを書き込むこと
を意味する。またり、8.とは、PDR+ JDの演算
結果をレジスタに格納せずに、Lパス(後述)を介して
乗算部(後述)に送出することを意味する。タイムスロ
ット(3)においては、演算結果を4度WE2というレ
ジスタに格納した後デコードしてΔWARに格納するこ
とを意味する。タイムスロット(4)における0、B、
は、後述のデータバンク読み出し部によって得られる値
をレジスタ等を介さすDバス(後述)を介して加算器に
送出することを意味する。
2/1(3) ORG +OCT + 1−* VB2
−eΔvAR(4) D、B、 + EARI→EA
R2(6)0 →IIIRI (8) O−4ER1 (9) O−4WE2 (10) O−+ IIEI、 llR2タイム
スロット(1)における0−4ER2/1はシゴートシ
ーケンス1回目即ちODD時にはER2,2回目即ちE
VEN時にはERIというレジスタにOを書き込むこと
を意味する。またり、8.とは、PDR+ JDの演算
結果をレジスタに格納せずに、Lパス(後述)を介して
乗算部(後述)に送出することを意味する。タイムスロ
ット(3)においては、演算結果を4度WE2というレ
ジスタに格納した後デコードしてΔWARに格納するこ
とを意味する。タイムスロット(4)における0、B、
は、後述のデータバンク読み出し部によって得られる値
をレジスタ等を介さすDバス(後述)を介して加算器に
送出することを意味する。
上記のC,B、は、加算部にて得られた結果をレジスタ
を介さずに乗算部に直接入力することを意味しこの場合
においてはタイムスロット(1)にて得られたPDlt
+ JDの演算結果を意味する。
を介さずに乗算部に直接入力することを意味しこの場合
においてはタイムスロット(1)にて得られたPDlt
+ JDの演算結果を意味する。
−一タバンク み し
く1) IIAD→ ΔSTf!→A、B。
(3)〜(4) EARI/2→El/2→ ΔTl/
2.ΔEl/2゜ΔZl/2 (6)〜(7)HAD 4 STW/ΔSTw −
+ STW/υARここでタイムスロット(1)のA
、B、は、データバンク読み出しによって得られた値を
レジスタ等を介ざすに直接加算部のA入力へ入力するこ
とを意味する。また、タイムスロット(6)〜(7)の
STV/ΔS丁+1−+STw/vARは、ショートシ
ーケンス1回目即ち000時にはSTvというデータを
読み出してSTVというレジスタに格納し、2回目即ち
EVEN時にはΔSTwというデータを読み出してWA
Rというレジスタに格納することを意味する。
2.ΔEl/2゜ΔZl/2 (6)〜(7)HAD 4 STW/ΔSTw −
+ STW/υARここでタイムスロット(1)のA
、B、は、データバンク読み出しによって得られた値を
レジスタ等を介ざすに直接加算部のA入力へ入力するこ
とを意味する。また、タイムスロット(6)〜(7)の
STV/ΔS丁+1−+STw/vARは、ショートシ
ーケンス1回目即ち000時にはSTvというデータを
読み出してSTVというレジスタに格納し、2回目即ち
EVEN時にはΔSTwというデータを読み出してWA
Rというレジスタに格納することを意味する。
次にノーマルモードについて説明する。
ノーマルモードショートシーケンス
第6表において牢印のついている箇所は、ノートクロッ
クが発生した後の事始のショートシーケンスのみでその
演算が行われるものであり、この動作を制御するフラグ
を計算要求フラグCLRQと呼ぶことにする。
クが発生した後の事始のショートシーケンスのみでその
演算が行われるものであり、この動作を制御するフラグ
を計算要求フラグCLRQと呼ぶことにする。
迦Jl
(1) 1IE2 + WE!1 4
L、B。
L、B。
(2) STV + WAR−+D、B、 、
B、B。
B、B。
(3) ZRI + ΔZl 4ZR1(
4) DIFI + C,B、 → D
、B。
4) DIFI + C,B、 → D
、B。
(5) ERI + ΔEl + Ci −4E
RI(6) ZR2+ ΔZ2 →ZR2(
7) MAR+ ΔIt!AR4VAR*(8)
ER2+ ΔE2 + Ci −+ ER2(9)
FR+ CDR−4CDR拳ここで、タイムスロッ
ト(1)のり、B、は、演算結果をレジスタを介さず直
接乗算部へ入力することを意味する。タイムスロット(
2)のり、B、、 B、B、は同様に演算結果を直接デ
ータバンク読み出し部及び加算部のB入力へ入力するこ
とを意味する。タイムスロット(4)におけるC、B、
は、加算部の演算結果をレジスタを介さずに直接入力す
ることを意味し、この場合はタイムスロット(2)にお
けるSTV + wARの演算結果が入力される。また
、0.B。
RI(6) ZR2+ ΔZ2 →ZR2(
7) MAR+ ΔIt!AR4VAR*(8)
ER2+ ΔE2 + Ci −+ ER2(9)
FR+ CDR−4CDR拳ここで、タイムスロッ
ト(1)のり、B、は、演算結果をレジスタを介さず直
接乗算部へ入力することを意味する。タイムスロット(
2)のり、B、、 B、B、は同様に演算結果を直接デ
ータバンク読み出し部及び加算部のB入力へ入力するこ
とを意味する。タイムスロット(4)におけるC、B、
は、加算部の演算結果をレジスタを介さずに直接入力す
ることを意味し、この場合はタイムスロット(2)にお
けるSTV + wARの演算結果が入力される。また
、0.B。
はその演算結果を直接データバンク読み出し部へ入力す
ることを意味する。タイムスロット(5)及び(8)の
Ciは、それぞれタイムスロット(3)及び(6)にお
ける演算のくり上り(キャリー)を加えるという意味で
ある。
ることを意味する。タイムスロット(5)及び(8)の
Ciは、それぞれタイムスロット(3)及び(6)にお
ける演算のくり上り(キャリー)を加えるという意味で
ある。
見1里
(1)〜(3) VH2+ ER24VE2m(4
)〜(6) C,B、 X CN →(DAC)(
7) 〜(9) WRI X ERI −+ VE
1*ここで、タイムスロット(4)〜(6)のC,B、
とは加算部の出力をレジスタ等を介さず直接乗算部へ入
力することを意味する。この場合は、タイムスロット(
1)のVH2+ wEIの演算結果に相当する。また(
DAC)とあるのは、この演算結果をDAC(OAコン
バータ;後述)に入力することを表す。
)〜(6) C,B、 X CN →(DAC)(
7) 〜(9) WRI X ERI −+ VE
1*ここで、タイムスロット(4)〜(6)のC,B、
とは加算部の出力をレジスタ等を介さず直接乗算部へ入
力することを意味する。この場合は、タイムスロット(
1)のVH2+ wEIの演算結果に相当する。また(
DAC)とあるのは、この演算結果をDAC(OAコン
バータ;後述)に入力することを表す。
データバンク み し
く4) 〜(5) C,B、 −+ 11 →
WR1*(7) 〜(8) C,B、 + +1
1 →VR2*ここで、タイムスロット(4)〜(5
)のC,B、は加算部の演算結果を直接データバンク読
み出し部へ入力してデータバンク1−6のアドレスとす
ることを意味し、この場合は加算部におけるタイムスロ
ット(2)の5TII + vARの演算結果に相当す
る。タイムスロット(7)〜(8)のC,B、も同様に
タイムスロット(4)ノDIFI + (STw+ M
AR)ノ演算結果に相当する。
WR1*(7) 〜(8) C,B、 + +1
1 →VR2*ここで、タイムスロット(4)〜(5
)のC,B、は加算部の演算結果を直接データバンク読
み出し部へ入力してデータバンク1−6のアドレスとす
ることを意味し、この場合は加算部におけるタイムスロ
ット(2)の5TII + vARの演算結果に相当す
る。タイムスロット(7)〜(8)のC,B、も同様に
タイムスロット(4)ノDIFI + (STw+ M
AR)ノ演算結果に相当する。
(13)ΔTl/2 +TRI/2 →TRI/
2(14) PDR+ JD
−) L、B。
2(14) PDR+ JD
−) L、B。
(15) ΔEARI/2 + EARI/2 +
Ci→EARI/2(16) PDD + PE
D −4PDRここで、タイムス
ロット(14)のり、B、は、加算部の演算結果即ちP
DR+ JDの値をレジスタを介さず直接乗算部へ入力
することを意味する。タイムスロット(15)のCiは
タイムスロット(13)の演算を行った結果生じるくり
上り(キャリー)を意味する。
Ci→EARI/2(16) PDD + PE
D −4PDRここで、タイムス
ロット(14)のり、B、は、加算部の演算結果即ちP
DR+ JDの値をレジスタを介さず直接乗算部へ入力
することを意味する。タイムスロット(15)のCiは
タイムスロット(13)の演算を行った結果生じるくり
上り(キャリー)を意味する。
米見皿
(16)〜(18) CN + C,B、→FRここ
で、C,B、は加算部における演算結果をレジスタを介
さず直接乗算部へ入力することを意味し、この場合は加
算部タイムスロット(14)におけるPDR+ JDの
演算結果が入力される。
で、C,B、は加算部における演算結果をレジスタを介
さず直接乗算部へ入力することを意味し、この場合は加
算部タイムスロット(14)におけるPDR+ JDの
演算結果が入力される。
データバンク み し。
(14)〜(15) EAR2/1→E2/1→ Δ
T2/1゜AE2/1. AZ2/1 ここで、2/1というのは、奇数回目、即ち000時に
は2(例えばR2/1ならばR2)、偶数回目、即ちE
VEN時には1(同E1)トなることを意味し、EVE
N、ODDで別のデータを読み出し、別のレジスタへ格
納することを意味する。
T2/1゜AE2/1. AZ2/1 ここで、2/1というのは、奇数回目、即ち000時に
は2(例えばR2/1ならばR2)、偶数回目、即ちE
VEN時には1(同E1)トなることを意味し、EVE
N、ODDで別のデータを読み出し、別のレジスタへ格
納することを意味する。
第2図は第1図(イ)における楽音発生部1−5の詳細
な図である。まずこの図を用いて各ブロックの機能の概
略を説明すると、2−1はマスタクロックであり、ここ
ではf =8.00096MHzのものを用いている。
な図である。まずこの図を用いて各ブロックの機能の概
略を説明すると、2−1はマスタクロックであり、ここ
ではf =8.00096MHzのものを用いている。
2−2はシーケンサ(以下SEQと称す)であり、マス
タクロック2−1によるクロック信号を分周し。
タクロック2−1によるクロック信号を分周し。
楽音発生部1−5全体におけるシーケンス信号(以下S
Q倍信号称す)及び各種制御信号を発生する。2−3は
マイコンインターフェース部(以下UCIFと称す)で
あり、第1表にて示される各種データをマイコン1−4
が楽音発生部t−Sとは非同期で送出しているが、この
データを取り込み、SEQにより発生されるSQ倍信号
の同期をとる回路である。更にフラグKonによりイニ
シャルモード、ノーマルモードのモード切りかえを指示
するフラグINrを発生する。
Q倍信号称す)及び各種制御信号を発生する。2−3は
マイコンインターフェース部(以下UCIFと称す)で
あり、第1表にて示される各種データをマイコン1−4
が楽音発生部t−Sとは非同期で送出しているが、この
データを取り込み、SEQにより発生されるSQ倍信号
の同期をとる回路である。更にフラグKonによりイニ
シャルモード、ノーマルモードのモード切りかえを指示
するフラグINrを発生する。
2−4は比較レジスタ部(以下CDRと称す)であり、
前記演算シーケンスで示したレジスタCDI 8チャン
ネル分とマスタクロックを順次分周して得た10ビット
の分局信号とを比較し、8チャンネル分のノートクロッ
クと計算要求フラグCLRQを発生する。
前記演算シーケンスで示したレジスタCDI 8チャン
ネル分とマスタクロックを順次分周して得た10ビット
の分局信号とを比較し、8チャンネル分のノートクロッ
クと計算要求フラグCLRQを発生する。
2−5はランダムアクセスメモリ部(以下メモリと称す
)で、楽音発生部1−5内で行われる種々の演算結果を
記憶する。2−6はフルアダ一部(以下FAと称す)で
あり、各種データの加算を行う16ビットのフルアダー
を内蔵している。2−7は乗算部(以下MPLYと称す
)であり、 (2の補数の12bit) X (絶対値10bit)
の演算を行う乗算器を有している。2−8はデジタルア
ナログコンバータ(以下DACと称す)であり。
)で、楽音発生部1−5内で行われる種々の演算結果を
記憶する。2−6はフルアダ一部(以下FAと称す)で
あり、各種データの加算を行う16ビットのフルアダー
を内蔵している。2−7は乗算部(以下MPLYと称す
)であり、 (2の補数の12bit) X (絶対値10bit)
の演算を行う乗算器を有している。2−8はデジタルア
ナログコンバータ(以下DACと称す)であり。
MPLY2−7より出力されるデジタルの楽音データを
アナログの楽音データに変換する。2−9はアナログバ
ッファメモリ部(以下ABMと称す)で、 DAC2−
8よりマシンサイクル周期で発生される楽音データをC
DR2−4により発生されるノートクロックによる音程
同期への変換を行う、 ABM2−9の機能及び構成は
特開昭59−214091号公報に示されているアナロ
グバッファメモリと同様のものである。 2−10は入
出力回路部(以下I10と称す)であり、データバンク
1−6ヘアドレス信号を送出し、そのアドレス信号に対
応した波形データ、エンベロープデータの読み出しを行
い、必要に応じて読み出したデータのデータ変換を行う
、 2−11はマトリックススイッチ部(以下MS警と
称す)であり、IJCIF2−3、CDR2−4、メモ
リ2−5に接続された横方向のパスライン(HA 。
アナログの楽音データに変換する。2−9はアナログバ
ッファメモリ部(以下ABMと称す)で、 DAC2−
8よりマシンサイクル周期で発生される楽音データをC
DR2−4により発生されるノートクロックによる音程
同期への変換を行う、 ABM2−9の機能及び構成は
特開昭59−214091号公報に示されているアナロ
グバッファメモリと同様のものである。 2−10は入
出力回路部(以下I10と称す)であり、データバンク
1−6ヘアドレス信号を送出し、そのアドレス信号に対
応した波形データ、エンベロープデータの読み出しを行
い、必要に応じて読み出したデータのデータ変換を行う
、 2−11はマトリックススイッチ部(以下MS警と
称す)であり、IJCIF2−3、CDR2−4、メモ
リ2−5に接続された横方向のパスライン(HA 。
JIB、 HC,HD、 HE、 HLの各パス)とF
A2−6、阿PLY2−7、Ilo 2−10へ接続さ
れている縦方向のパスライン(A、B、C,D、Lの各
バス)とを、SQ倍信号応じて接続する回路である。こ
れらの回路により第5表及び第6表に示す演算シーケン
スを実行するものである。
A2−6、阿PLY2−7、Ilo 2−10へ接続さ
れている縦方向のパスライン(A、B、C,D、Lの各
バス)とを、SQ倍信号応じて接続する回路である。こ
れらの回路により第5表及び第6表に示す演算シーケン
スを実行するものである。
次に個々のブロックについて説明する。
第4図は第2図における5EQ2−2の詳細図である。
4−1はカウンタであり、マスタクロックを分周し、第
1図(ハ)に示す種々のタイミング信号を発生する。
TSは第1図(ハ)におけるタイムスロットを表す信号
であり、CI(Cはチャンネルコードであり、第1図(
ハ)におけるチャンネルの番号を表わす信号である。E
vは演算シーケンスにおける00口、EVENを表す信
号であり、EV=OはODD、 EV= 1はEVEN
を意味する。4−2はSQROM (シーケンスROM
)である。SQROM4−2のアドレス入力にはタイム
スロットを表す信号TSとフラグINIが入力されてお
り、これらの入力に基づいて各々のタイムスロットにお
ける各種制御命令を発生している。4−3は論理/7’
−トチあり、SQROM4−2による出力を各種フラグ
及び計算要求フラグCLRQ等で更に制御して、SQ倍
信号演奏情報、効果スイッチ1−3等の指示に従って。
1図(ハ)に示す種々のタイミング信号を発生する。
TSは第1図(ハ)におけるタイムスロットを表す信号
であり、CI(Cはチャンネルコードであり、第1図(
ハ)におけるチャンネルの番号を表わす信号である。E
vは演算シーケンスにおける00口、EVENを表す信
号であり、EV=OはODD、 EV= 1はEVEN
を意味する。4−2はSQROM (シーケンスROM
)である。SQROM4−2のアドレス入力にはタイム
スロットを表す信号TSとフラグINIが入力されてお
り、これらの入力に基づいて各々のタイムスロットにお
ける各種制御命令を発生している。4−3は論理/7’
−トチあり、SQROM4−2による出力を各種フラグ
及び計算要求フラグCLRQ等で更に制御して、SQ倍
信号演奏情報、効果スイッチ1−3等の指示に従って。
各機能ブロックが各タイムスロット毎にどのように動作
すべきかを指示する信号;図中ではSQと略記)を発生
する。
すべきかを指示する信号;図中ではSQと略記)を発生
する。
第5図はLICIF2−3の詳細図である。第5図にお
いて、5−1はラッチであり、第1図におけるマイコン
1−4より与えられるA/D O〜7をALEによりラ
ッチする。A/D O〜7とALEの関係は第1図(ロ
)に示すとおりであるので、ラッチ5−1には第1表に
示すところのアドレスがラッチされる。5−2はラッチ
であり、マイコン1−4より与えられるA/DO〜7を
鼎によりラッチする。A/D O〜7と豐の関係は第1
図(ロ)に示すとおりであるのでラッチ5−2には第1
表に示すところのデータがラッチされる。5−3はラッ
チであり、萱によって制御されラッチ5−1の出力をラ
ッチする。このようにアドレスを2段でラッチするのは
、 ALEが皆に無関係に周期的に1”になるからであ
り、このようにアドレスを2段でラッチすることにより
駅による新たなデータの書き込みを行うまでラッチ5−
3、ラッチ5−2にはそれぞれアドレス及びデータが格
納されることになる。5−4は1ワード8ビットのRA
Mであり、Aはアドレス入力、OEは出力制御端子であ
り、データ端子りはHEババス接続されている。ここで
、0E=1となると六入力で与えられたアドレスのデー
タをD端子より出力する。またWEは書き込み制御端子
で、IIH=1の時にD端子に与えられているデータを
A入力で与えられたアドレスに書き込む、 OB、 1
111!はSQ倍信号より制御されている。 RAM5
−4には第1表にて示した各種データ(NOD、PDD
、 RLD −VOL −DMP −SQL、 TAB
−PH,VLD)及びコントロールデータC0NT(
データバンクより書き込む。詳細は後述)、ピッチデー
タレジスタのデータPDRがそれぞれ8チャンネル分格
納されている。5−5はセレクタであり、マイコン1−
4の指定するアドレスと、 SQ倍信号指定するアドレ
スを。
いて、5−1はラッチであり、第1図におけるマイコン
1−4より与えられるA/D O〜7をALEによりラ
ッチする。A/D O〜7とALEの関係は第1図(ロ
)に示すとおりであるので、ラッチ5−1には第1表に
示すところのアドレスがラッチされる。5−2はラッチ
であり、マイコン1−4より与えられるA/DO〜7を
鼎によりラッチする。A/D O〜7と豐の関係は第1
図(ロ)に示すとおりであるのでラッチ5−2には第1
表に示すところのデータがラッチされる。5−3はラッ
チであり、萱によって制御されラッチ5−1の出力をラ
ッチする。このようにアドレスを2段でラッチするのは
、 ALEが皆に無関係に周期的に1”になるからであ
り、このようにアドレスを2段でラッチすることにより
駅による新たなデータの書き込みを行うまでラッチ5−
3、ラッチ5−2にはそれぞれアドレス及びデータが格
納されることになる。5−4は1ワード8ビットのRA
Mであり、Aはアドレス入力、OEは出力制御端子であ
り、データ端子りはHEババス接続されている。ここで
、0E=1となると六入力で与えられたアドレスのデー
タをD端子より出力する。またWEは書き込み制御端子
で、IIH=1の時にD端子に与えられているデータを
A入力で与えられたアドレスに書き込む、 OB、 1
111!はSQ倍信号より制御されている。 RAM5
−4には第1表にて示した各種データ(NOD、PDD
、 RLD −VOL −DMP −SQL、 TAB
−PH,VLD)及びコントロールデータC0NT(
データバンクより書き込む。詳細は後述)、ピッチデー
タレジスタのデータPDRがそれぞれ8チャンネル分格
納されている。5−5はセレクタであり、マイコン1−
4の指定するアドレスと、 SQ倍信号指定するアドレ
スを。
別のSQ倍信号用いて選択出力し、RAM5−4のA入
力に与えるものである。5−6は信号処理器であり、+
111’バスに接続され、バス上のデータを取り込み各
種フラグ信号を発生する。また、マイコン1−4より送
出されたリリースデータRLI) 4ビットに応じた1
6とおりのリリース用エンベロープデータを発生してH
Eババス送出する。5−7はゲートであり。
力に与えるものである。5−6は信号処理器であり、+
111’バスに接続され、バス上のデータを取り込み各
種フラグ信号を発生する。また、マイコン1−4より送
出されたリリースデータRLI) 4ビットに応じた1
6とおりのリリース用エンベロープデータを発生してH
Eババス送出する。5−7はゲートであり。
SQ倍信号応じてラッチ5−2の出力、つまりマイコン
1−4からのデータをIIEバス上に送出する。
1−4からのデータをIIEバス上に送出する。
次にUCIF2−3の動作を説明する。
第1表に示すようなデータが第1図(ロ)に示すタイミ
ングでマイコン1−4より与えられたとし。
ングでマイコン1−4より与えられたとし。
仮にアドレスが05□1データが891即ちチャンネル
5にF#1の押鍵を指示したとすると、先ずALE信号
によりラッチ5−1にアドレスがラッチされ。
5にF#1の押鍵を指示したとすると、先ずALE信号
によりラッチ5−1にアドレスがラッチされ。
次いで■信号によりラッチ5−2にデータがラッチされ
ると同時に、ラッチ5−3にアドレスがラッチされる0
次いで所定のタイミングでセレクタ5−5がラッチ5−
3の出力をセレクトし、同時にゲート5−7が開き、R
AM5−4のWHに書き込み信号が与えられる。この書
き込み信号によりHEババスはラッチ5−2にラッチさ
れたデータ即ちマイコン1−4が書き込もうとしたデー
タ即ち8916が与えられ、 RAM5−4の六入力に
はラッチ5−3の出力である05□が与えられるので、
RAM5−4のアドレス05、番地に89□6というデ
ータが書き込まれる。このようにして第1表に示した各
種データがRA!1I5−4に書き込まれる。
ると同時に、ラッチ5−3にアドレスがラッチされる0
次いで所定のタイミングでセレクタ5−5がラッチ5−
3の出力をセレクトし、同時にゲート5−7が開き、R
AM5−4のWHに書き込み信号が与えられる。この書
き込み信号によりHEババスはラッチ5−2にラッチさ
れたデータ即ちマイコン1−4が書き込もうとしたデー
タ即ち8916が与えられ、 RAM5−4の六入力に
はラッチ5−3の出力である05□が与えられるので、
RAM5−4のアドレス05、番地に89□6というデ
ータが書き込まれる。このようにして第1表に示した各
種データがRA!1I5−4に書き込まれる。
第1表に示すとおり、RAM5−4ニはVOL 7ラグ
、PEフラグ等のフラグ類が書き込まれているが、これ
らのフラグ類はHEババス介して信号処理器5−6へ送
出し、ここで一旦ラッチした後使用している。
、PEフラグ等のフラグ類が書き込まれているが、これ
らのフラグ類はHEババス介して信号処理器5−6へ送
出し、ここで一旦ラッチした後使用している。
第6図はCDR2−4の詳細図である。6−1はマスタ
クロツタを入力としたlOビットの分局器である。
クロツタを入力としたlOビットの分局器である。
6−2は比較器付RAM(以下CDRAMと称す。)で
あり、1ワード13ビットで8ワードを有する。各ワー
ドのうち上位10ビットには比較器が設けてあり、端子
Tより入力される分周器6−1による分周データとの比
較が行われ、10ビットすべてが一致すると端子Cより
一致パルスが出力される。 OE、 wE、A。
あり、1ワード13ビットで8ワードを有する。各ワー
ドのうち上位10ビットには比較器が設けてあり、端子
Tより入力される分周器6−1による分周データとの比
較が行われ、10ビットすべてが一致すると端子Cより
一致パルスが出力される。 OE、 wE、A。
Dの機能は前述のRAM5−4と同じである。6−3は
デコーダであり、A入力、EN入力とD出力の関係は第
8表に示すとおりである。6−4〜6−11はRSラッ
チであり、S入力に正のパルスが加わるとQ出力が°′
1”に、R入力に正のパルスが加わるとQ出力がt%O
”になる。RSラッチ6−4はチャンネルO,RSラッ
チ6−5はチャンネル1.・・・・・・の一致パルスが
Sに与えられる。6−12はセレクタであり、N入力に
与えられた8信号からチャンネルコードCHC3ビット
によりそのうちの1信号を選択してDより出力する。
6−13はラッチであり、 SQ倍信号従ってセレクタ
6−12の出力をラッチする。6−14は<NDゲート
である。
デコーダであり、A入力、EN入力とD出力の関係は第
8表に示すとおりである。6−4〜6−11はRSラッ
チであり、S入力に正のパルスが加わるとQ出力が°′
1”に、R入力に正のパルスが加わるとQ出力がt%O
”になる。RSラッチ6−4はチャンネルO,RSラッ
チ6−5はチャンネル1.・・・・・・の一致パルスが
Sに与えられる。6−12はセレクタであり、N入力に
与えられた8信号からチャンネルコードCHC3ビット
によりそのうちの1信号を選択してDより出力する。
6−13はラッチであり、 SQ倍信号従ってセレクタ
6−12の出力をラッチする。6−14は<NDゲート
である。
次に第6図に示すCDR2−4の動作について説明する
。分局器6−1がマスタクロックを分周して10ビット
の分周出力をCDRAM6−2のT入力へ与える。
。分局器6−1がマスタクロックを分周して10ビット
の分周出力をCDRAM6−2のT入力へ与える。
CDRAM6−2の各ワードには任意の値が入っている
が、これらの値の上位10ビットが分周器6−1の出力
値と一致するごとに一致パルスをC端子より出力する。
が、これらの値の上位10ビットが分周器6−1の出力
値と一致するごとに一致パルスをC端子より出力する。
CDRAM5−2のN入力にはCOO即ちチャンネル
を表す信号が入力しであるので、各ワードはそれぞれの
チャンネルに対応しているので、チャンネルごとに一致
パルスを発生する。この一致パルスはそれぞれをRSラ
ッチ6−4〜6−11へ入力されているので、一致パル
スが発生したチャンネルに対応するRSラッチのQ出力
が1”にセットされる。 RSラッチ6−4〜6−11
のQ出力のうちの1つがチャンネルコードCHCに応じ
てセレクタ6−12により順次選択されラッチ6−13
にラッチされる。ラッチ6−13の出力は<NDゲート
6−14に与えられているので、現在セレクタ6−12
が選択しているRSラッチのQ出力が′1”ならば、<
NDゲート6−14に加えられたSQ倍信号よってデコ
ーダ6−3のD出力の該当チャンネルが′1”になり上
記のRSラッチのQ出力はパ0”にリセットされる。
を表す信号が入力しであるので、各ワードはそれぞれの
チャンネルに対応しているので、チャンネルごとに一致
パルスを発生する。この一致パルスはそれぞれをRSラ
ッチ6−4〜6−11へ入力されているので、一致パル
スが発生したチャンネルに対応するRSラッチのQ出力
が1”にセットされる。 RSラッチ6−4〜6−11
のQ出力のうちの1つがチャンネルコードCHCに応じ
てセレクタ6−12により順次選択されラッチ6−13
にラッチされる。ラッチ6−13の出力は<NDゲート
6−14に与えられているので、現在セレクタ6−12
が選択しているRSラッチのQ出力が′1”ならば、<
NDゲート6−14に加えられたSQ倍信号よってデコ
ーダ6−3のD出力の該当チャンネルが′1”になり上
記のRSラッチのQ出力はパ0”にリセットされる。
第7図はメモリ2−5の詳細図である。第7図におイテ
、?−1〜?−4はRAM テあす、OE、 W[!、
A、 Dの各機能は前述のRAM5−4と同じである
。ここで、RAM7−1ニitwAR,IEARI、
Δz1. AEI、 %lE1. EARz。
、?−1〜?−4はRAM テあす、OE、 W[!、
A、 Dの各機能は前述のRAM5−4と同じである
。ここで、RAM7−1ニitwAR,IEARI、
Δz1. AEI、 %lE1. EARz。
ΔZ2. Ag3(7)各レジX夕が、 RAs7−2
ニハwR2,ZRI。
ニハwR2,ZRI。
ΔTl、 FR,AIIIAR,ZR2,Ar1(7)
各レジスタが。
各レジスタが。
RAM7−3ニ4:1ER1,TRI、 DIFI、
Dlll、 ER2,TR2,STw。
Dlll、 ER2,TR2,STw。
TAB’ 、 IIADの各レジスタが、 RAM?−
4にはNOD’、WE2゜VLD’の各レジスタがそれ
ぞれを8チャンネル分格納さレテイル。なお、NOD’
、 TAB’ 、 VLD’は前述のRAM5−4ニ
おけルN00. TAB、 VLD17)データを書き
込んだものである。7−5は1ワード10ビット13ワ
ードのROMであり、第5表、第6表で示した演算シー
ケンスにおけるノート係数CNが記憶されている。
4にはNOD’、WE2゜VLD’の各レジスタがそれ
ぞれを8チャンネル分格納さレテイル。なお、NOD’
、 TAB’ 、 VLD’は前述のRAM5−4ニ
おけルN00. TAB、 VLD17)データを書き
込んだものである。7−5は1ワード10ビット13ワ
ードのROMであり、第5表、第6表で示した演算シー
ケンスにおけるノート係数CNが記憶されている。
ここでQ′は出力、Aはアドレス入力、OEは出力制御
端子であり、0E=1でQにROMの内容が出力され、
0E=Oの時はQ=ハイ・インピーダンスである。ノー
ト係数CNの値は第7表に示すとおりである。なお、R
OM?−5の10ビットの出力はHDババス下位10ビ
ットに接続されている。7−6は信号処理器であり、R
AM7−4に格納されたNOD’よりNO(ノートデー
タ)と0CT(オクターブデータ)を読み出しこれらの
データ及びPHフラグに基づいてピッチデチューンデー
タPEDを発生する回路、並びにレジスタ’dE2のデ
ータを読み出してデコードするデコード回路が備えであ
る。
端子であり、0E=1でQにROMの内容が出力され、
0E=Oの時はQ=ハイ・インピーダンスである。ノー
ト係数CNの値は第7表に示すとおりである。なお、R
OM?−5の10ビットの出力はHDババス下位10ビ
ットに接続されている。7−6は信号処理器であり、R
AM7−4に格納されたNOD’よりNO(ノートデー
タ)と0CT(オクターブデータ)を読み出しこれらの
データ及びPHフラグに基づいてピッチデチューンデー
タPEDを発生する回路、並びにレジスタ’dE2のデ
ータを読み出してデコードするデコード回路が備えであ
る。
第8図はFA2−6の詳細図である。第8図において、
8−1〜8−8はラッチであり、5EQ2−2が発生す
るψ1.φ3の信号で動作している。8−9は加算器で
あり、A入力に与えられた値とS入力に与えられた値(
共に16ビット)とキャリー人力Ciに与えられた値の
加算を行い、C及びCoより出力する。Coは演算の結
果生じるキャリー出力である。 8−10゜8−11は
ビット処理回路であり、ラッチ8−1.ラッチ8−2に
よる出力のビット操作を行う回路である。
8−1〜8−8はラッチであり、5EQ2−2が発生す
るψ1.φ3の信号で動作している。8−9は加算器で
あり、A入力に与えられた値とS入力に与えられた値(
共に16ビット)とキャリー人力Ciに与えられた値の
加算を行い、C及びCoより出力する。Coは演算の結
果生じるキャリー出力である。 8−10゜8−11は
ビット処理回路であり、ラッチ8−1.ラッチ8−2に
よる出力のビット操作を行う回路である。
8−12は論理ゲートであり、 SQ倍信号応じてラッ
チ8−6の出力を強制的に1”または′O”にする、或
いはそのまま出力するといった動作を行う、 8−13
はRAMであり、そのサイズは1ワード9ビットで12
ワードのものである。 A、 D、 WE、 OEの各
機能は前述のRAM5−4と同じである。D出力9ビッ
トはCバスの下位9ビットに接続されている。
チ8−6の出力を強制的に1”または′O”にする、或
いはそのまま出力するといった動作を行う、 8−13
はRAMであり、そのサイズは1ワード9ビットで12
ワードのものである。 A、 D、 WE、 OEの各
機能は前述のRAM5−4と同じである。D出力9ビッ
トはCバスの下位9ビットに接続されている。
RAM8−13は位相合わせ(後述)用の位相レジスタ
で、12音のノートの個々の波形データ読み出し用アド
レス(MAR)の位相管理を行う。
で、12音のノートの個々の波形データ読み出し用アド
レス(MAR)の位相管理を行う。
第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より出力する。
において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より出
力する。なお、六入力の下位11ビットはGND (接
地電位)に接続されている(即ちn Q nが与えられ
ている)。9−15はシックで工から入力される14ビ
ットの信号をCに入力された制御信号に従ってシフトし
Oより出力する。シフトの内容は第12表に示すとおり
である。9−16は乗算器であり、A入力がこの補数表
示による12ビット、B入力が絶対値のlθビットで出
力が2の補数表示による14ビットである6通常12ビ
ット×10ビットの演算を行うと22ビットの結果が得
られるが、熱論乗算器9−16の出力14ビットは22
ビットのうちの上位14ビットである。故に1乗算器9
−16における入出力の関係は、次式のとおりになる。
はビット処理回路でありSQ倍信号応じてラッチ9−3
が出力する信号のビット処理を行う、 9−13はデコ
ーダであり入力Aと出力りとし関係は第11表に示すと
おりである。 9−14はセレクタであり、Cに入力さ
れているSQ倍信号応じてC=1ならばA、C=Oなら
ばBに入力されている16本の信号を選択してYより出
力する。なお、六入力の下位11ビットはGND (接
地電位)に接続されている(即ちn Q nが与えられ
ている)。9−15はシックで工から入力される14ビ
ットの信号をCに入力された制御信号に従ってシフトし
Oより出力する。シフトの内容は第12表に示すとおり
である。9−16は乗算器であり、A入力がこの補数表
示による12ビット、B入力が絶対値のlθビットで出
力が2の補数表示による14ビットである6通常12ビ
ット×10ビットの演算を行うと22ビットの結果が得
られるが、熱論乗算器9−16の出力14ビットは22
ビットのうちの上位14ビットである。故に1乗算器9
−16における入出力の関係は、次式のとおりになる。
なお、MPLY2−7における乗算器9−16は、回路
をより簡略化するため1以下の手法を用いている。
をより簡略化するため1以下の手法を用いている。
通常乗算器を構成する際に、2の補数値12ビット×絶
対値IOビットの乗算器は116個の加算器セルにより
22ビットの正確な演算結果が得られる。
対値IOビットの乗算器は116個の加算器セルにより
22ビットの正確な演算結果が得られる。
しかし、本システムにおいては本来得られる22ビット
のうちの上位14ビットのみを使用する。即ち下位8ビ
ットの出力は使用しないので本実施例では加算器セル省
略による演算誤差が上位14ビットのLSBに影響しな
い下位7ビット演算用の加算器セルを全部省略している
。そこで、本乗算器9−16では、下位ビット演算用の
加算器セル28セルを省略し第9図(ロ)に示すような
構成になっている。
のうちの上位14ビットのみを使用する。即ち下位8ビ
ットの出力は使用しないので本実施例では加算器セル省
略による演算誤差が上位14ビットのLSBに影響しな
い下位7ビット演算用の加算器セルを全部省略している
。そこで、本乗算器9−16では、下位ビット演算用の
加算器セル28セルを省略し第9図(ロ)に示すような
構成になっている。
第9図(ロ)において、破線内は同様のセルを略記した
。また、各ブロックはすべて全加算器であり。
。また、各ブロックはすべて全加算器であり。
入力がA、B、Ci(キャリー人力)、出力が和S及び
キャリーCoである。
キャリーCoである。
第10図はIlo 2−10の詳細図である。第10図
において10−1〜10−8はラッチである。ここで、
ラッチ1O−3はセット付のラッチでラッチの入力はD
バスのビット7〜ビット9に接続されている。 10−
9はシフタセレクタで、C入力によりA入力とB入力の
切換及び六入力の1ビットシフトを行う。
において10−1〜10−8はラッチである。ここで、
ラッチ1O−3はセット付のラッチでラッチの入力はD
バスのビット7〜ビット9に接続されている。 10−
9はシフタセレクタで、C入力によりA入力とB入力の
切換及び六入力の1ビットシフトを行う。
10−10はビット処理回路であり、SQ倍信号応じて
下位3ビットを強制的に′1″或いは“0〃にする回路
である。 10−11はデコーダであり、入カニと出力
りの関係は第13表に示すとおりである。デコーダ10
−11のA入力にはラッチ10−7の出力のビット12
〜ビット15が与えられている。 10−12はセレク
タであり、C入力に応じてA又はBに与えられている信
号のいずれかを選択してYより出力する。
下位3ビットを強制的に′1″或いは“0〃にする回路
である。 10−11はデコーダであり、入カニと出力
りの関係は第13表に示すとおりである。デコーダ10
−11のA入力にはラッチ10−7の出力のビット12
〜ビット15が与えられている。 10−12はセレク
タであり、C入力に応じてA又はBに与えられている信
号のいずれかを選択してYより出力する。
10−13はシフタであり、制御端子Cの入力に応じて
工からの入力をシフトして0より出力する。
工からの入力をシフトして0より出力する。
10−14はノイズ回路であり、ノイズフラグNAに応
じて入力データにノイズを混入する。
じて入力データにノイズを混入する。
第11図(イ)はMS+12−11の詳細図である。円
で囲った部分がスイッチであり、具体的には第11図(
ロ)に示すようにNchのMO5FtETで構成されて
おり、SQ倍信号1”になるとMOSFETがオンして
縦方向のラインと横方向のラインが導通しデータが転送
される。このMSl++2−11においては高速化のた
めにデータの転送の直前にすべてのパスラインに各タイ
ムスロット毎にψ1信号によりプリチャージを行った後
データの転送を行なっている。これはスイッチがNch
MOSFETで構成されているので、転送されたデー
タの′11”のレベル力tqosFErのしきい値電正
分だけ降下するのを防ぐためである。第11図(ハ)〜
第11図(す)はMSV2−11にて使用されているス
イッチパターンの例であり、円で囲った交点の箇所がス
イッチを介して接続されている。この例では便宜上洛バ
スが8ビットのものについて説明する。第11図(ハ)
は、スイッチによってbnとan(n=0〜7)とを接
続したものである。第11図(ニ)はbO〜b3の4本
の値と0”をスイッチによって縦方向のバスに書き込む
ようにしたものである。
で囲った部分がスイッチであり、具体的には第11図(
ロ)に示すようにNchのMO5FtETで構成されて
おり、SQ倍信号1”になるとMOSFETがオンして
縦方向のラインと横方向のラインが導通しデータが転送
される。このMSl++2−11においては高速化のた
めにデータの転送の直前にすべてのパスラインに各タイ
ムスロット毎にψ1信号によりプリチャージを行った後
データの転送を行なっている。これはスイッチがNch
MOSFETで構成されているので、転送されたデー
タの′11”のレベル力tqosFErのしきい値電正
分だけ降下するのを防ぐためである。第11図(ハ)〜
第11図(す)はMSV2−11にて使用されているス
イッチパターンの例であり、円で囲った交点の箇所がス
イッチを介して接続されている。この例では便宜上洛バ
スが8ビットのものについて説明する。第11図(ハ)
は、スイッチによってbnとan(n=0〜7)とを接
続したものである。第11図(ニ)はbO〜b3の4本
の値と0”をスイッチによって縦方向のバスに書き込む
ようにしたものである。
第11図(ホ)はbO〜b3をa O−a 3 ヘ、c
4〜c7をa4〜a7へ書き込むようにしたものであり
、これにより、2組のバスに別々に表れているデータを
混合して他のバスに転送することができるようにしたも
のである。第11図(へ)はビット位置を変換してバス
からバスへ転送するようにしたもので、このようにスイ
ッチを配することにより横方向のバスのデータの上下各
4ビットを位置を変更して縦方向のバスに転送する。第
11図(ト)〜第11図(す)は定数をバスに設定する
ための回路例であり、第11図(ト)はバスにオールn
Q”を設定する回路、第11図(チ)はバスに1010
1010即ちAAlGを設定する回路である。これは、
スイッチのない部分であるa7. a5゜a3. al
はこのスイッチが開く直前にプリチャージによって1”
が書き込まれたものがそのまま保持されることによる。
4〜c7をa4〜a7へ書き込むようにしたものであり
、これにより、2組のバスに別々に表れているデータを
混合して他のバスに転送することができるようにしたも
のである。第11図(へ)はビット位置を変換してバス
からバスへ転送するようにしたもので、このようにスイ
ッチを配することにより横方向のバスのデータの上下各
4ビットを位置を変更して縦方向のバスに転送する。第
11図(ト)〜第11図(す)は定数をバスに設定する
ための回路例であり、第11図(ト)はバスにオールn
Q”を設定する回路、第11図(チ)はバスに1010
1010即ちAAlGを設定する回路である。これは、
スイッチのない部分であるa7. a5゜a3. al
はこのスイッチが開く直前にプリチャージによって1”
が書き込まれたものがそのまま保持されることによる。
第11図(す)はフラグTOによって定数の値を変える
ようにしたもので、TO=Oならば0016がバスに書
き込まれ、TO=1ならば!EB1゜がバスに書き込ま
れる。第11図(ハ)〜第11図(す)に示すスイッチ
をMSW2−11に用途に応じて配して選択的に開閉す
ることにより、任意のバスから他の任意のバスへのデー
タ転送が必要なビット処理を含めて可能となる0例えば
、IIAバスからAバスへ、HBババスらBバスへ、C
バスからICバスへ同時にデータを転送したい時には5
lll、 5117.5V13を同時にオンすればよい
、また、CバスのデータをLバスとDバスに転送したい
時にはSす28.5W29゜51130をオンすれば、
Cバス→HLバス→Lバス及びDバスの経路でデータが
転送される。
ようにしたもので、TO=Oならば0016がバスに書
き込まれ、TO=1ならば!EB1゜がバスに書き込ま
れる。第11図(ハ)〜第11図(す)に示すスイッチ
をMSW2−11に用途に応じて配して選択的に開閉す
ることにより、任意のバスから他の任意のバスへのデー
タ転送が必要なビット処理を含めて可能となる0例えば
、IIAバスからAバスへ、HBババスらBバスへ、C
バスからICバスへ同時にデータを転送したい時には5
lll、 5117.5V13を同時にオンすればよい
、また、CバスのデータをLバスとDバスに転送したい
時にはSす28.5W29゜51130をオンすれば、
Cバス→HLバス→Lバス及びDバスの経路でデータが
転送される。
なお、 MS112−11において、データの転送は第
11図(ヌ)に示すタイミングで行われている。即ち、
ψ1=1の区間で縦方向、横方向のパスラインのプリチ
ャージを行い、ψ1の立ち下りよりψ3の立ち下りまで
の区間でデータの転送を行い、ψ3の立ち下りでラッチ
する。ここで、φ3の立ち下りからψ1の立ち上りまで
の区間はラッチ動作を安定に行うための余裕である。
11図(ヌ)に示すタイミングで行われている。即ち、
ψ1=1の区間で縦方向、横方向のパスラインのプリチ
ャージを行い、ψ1の立ち下りよりψ3の立ち下りまで
の区間でデータの転送を行い、ψ3の立ち下りでラッチ
する。ここで、φ3の立ち下りからψ1の立ち上りまで
の区間はラッチ動作を安定に行うための余裕である。
次にデータバンク1−6について説明する。データバン
ク1−6には4種類のデータが格納されている。それは
、(1)ヘッダアドレスデータ、(2)ヘッダデータ、
(3)波形データ、(4)エンベロープデータである。
ク1−6には4種類のデータが格納されている。それは
、(1)ヘッダアドレスデータ、(2)ヘッダデータ、
(3)波形データ、(4)エンベロープデータである。
ここで、ヘラ・ダアドレスデータはヘッダデータがどの
アドレスに格納しであるかを示す8ビットのデータであ
り、ヘッダデータは波形データ、エンベロープデータの
格納しであるアドレス及びそれらの属性を表わした8バ
イトのデータである0次に上記4種類のデータを更に詳
しく説明する。
アドレスに格納しであるかを示す8ビットのデータであ
り、ヘッダデータは波形データ、エンベロープデータの
格納しであるアドレス及びそれらの属性を表わした8バ
イトのデータである0次に上記4種類のデータを更に詳
しく説明する。
(1) ヘッダアドレスデータ(HAD)このデータ
は各タブレット、各オクターブ、各3鍵ごとに割り当て
られたノートデータをアドレスとしてヘッダデータのア
ドレスを示すデータである。ヘッダアドレスデータの格
納場所は第14表に示すとおりであり、ビット9〜ビッ
ト5にタブレットデータTAB、ビット4〜ビット2に
オクターブデータocr、ビット1〜ビットOにノート
データNDの上位2ビット、残りのビットにはすべて′
11”が入っている。ここでTAB、OCT、 NDで
構成される10ビットをりTDと呼び、その各々は第1
表に示したものであることは言うまでもない。ヘッダア
ドレスデータによるヘッダデータのアドレスは第15表
のように示され、ビット10〜ビット3にヘッダアドレ
スデータが入り、上位ビットはすべて′1”である、ま
た、下位3ビットにはooo〜111のデータを入れる
。
は各タブレット、各オクターブ、各3鍵ごとに割り当て
られたノートデータをアドレスとしてヘッダデータのア
ドレスを示すデータである。ヘッダアドレスデータの格
納場所は第14表に示すとおりであり、ビット9〜ビッ
ト5にタブレットデータTAB、ビット4〜ビット2に
オクターブデータocr、ビット1〜ビットOにノート
データNDの上位2ビット、残りのビットにはすべて′
11”が入っている。ここでTAB、OCT、 NDで
構成される10ビットをりTDと呼び、その各々は第1
表に示したものであることは言うまでもない。ヘッダア
ドレスデータによるヘッダデータのアドレスは第15表
のように示され、ビット10〜ビット3にヘッダアドレ
スデータが入り、上位ビットはすべて′1”である、ま
た、下位3ビットにはooo〜111のデータを入れる
。
(2)ヘッダデータ(HD)
ヘッダデータは第15表に示されるアドレスに格納され
ている1ワード8ビットで8ワードのデータであり、8
ワードの各内容は第16表に示すとおりである。第16
表において、C0NTはコントロールデータであり、こ
のヘッダデータにて示される波形データ、エンベロープ
データの属性を表す。El’は2種類あるエンベロープ
データのうちの一方である。他方のエンベロープデータ
E2’のスタートアドレスはSTE+ΔSTEで与えら
れる。 11.12は2種類ある波形データであり、w
lのスタートアドレスはSTV+ΔSTVで与えられる
。
ている1ワード8ビットで8ワードのデータであり、8
ワードの各内容は第16表に示すとおりである。第16
表において、C0NTはコントロールデータであり、こ
のヘッダデータにて示される波形データ、エンベロープ
データの属性を表す。El’は2種類あるエンベロープ
データのうちの一方である。他方のエンベロープデータ
E2’のスタートアドレスはSTE+ΔSTEで与えら
れる。 11.12は2種類ある波形データであり、w
lのスタートアドレスはSTV+ΔSTVで与えられる
。
なおC0NTは第17表に示すとおりの構成になってお
り、その意味するところは次のとおりである。
り、その意味するところは次のとおりである。
Plo:このへラダデータによる楽音がピアノ型エンベ
ロープを有するかオルガン型エンベロープを有するかを
示すフラグであり。
ロープを有するかオルガン型エンベロープを有するかを
示すフラグであり。
Plo = 1ならばピアノ型であることを意味する。
ORG :当該の楽音データが本来どの音域に属してい
たかを示す3ビットの情報であり。
たかを示す3ビットの情報であり。
ORGと音域の対応は第18表に示すとおりである。故
に波形データが実際に一周期分として有するサンプル数
がいくつであるかを示す情報でもある。
に波形データが実際に一周期分として有するサンプル数
がいくつであるかを示す情報でもある。
v8:波形データが12ビット精度であるか8ビット精
度であるかを示す。v8=1ならば8ビット精度である
。w8=1の時には波形データの下位に4ビットのII
OIPが追加され、波形の振幅レベルは保たれるよう
になっている。
度であるかを示す。v8=1ならば8ビット精度である
。w8=1の時には波形データの下位に4ビットのII
OIPが追加され、波形の振幅レベルは保たれるよう
になっている。
PCM : PCM= 1で波形データv1の立ち上り
部がPCNであることを示す。
部がPCNであることを示す。
NA:ノイズ信号を楽音信号に重畳する場合に使用する
2ビットの信号である。
2ビットの信号である。
(3)波形データ(111,112)
前述のように、楽音発生部1−5においては波形データ
として12ビットのものと8ビットのものと2種類を使
いわけている。ここで市販されているROMについて考
えるとそのほとんどが1ワード8ビット或いはそれ以下
のものであり、1ワード12ビットのものは希である。
として12ビットのものと8ビットのものと2種類を使
いわけている。ここで市販されているROMについて考
えるとそのほとんどが1ワード8ビット或いはそれ以下
のものであり、1ワード12ビットのものは希である。
そこで本発明においては次のように波形をROMに格納
している。即ち:8ビットの場合には、STV及びΔS
TVによって定まるアドレスより順次1ワードずつ格納
しているが、1ワード12ビットの波形データの場合は
第12図に示すとおり、上位8ビットはSTw十ΔST
Wによって示されるアドレスから順次格納しているが、
下位4ビットはSTw+ΔSTvの値を1ビット右シフ
トしてMSHに1を入れたアドレスより下位4ビット上
位4ビットに2ワード分ずつ順次格納しである。例えば
、仮にアドレス0444□6にある波形データの上位8
ビットの下位4ビットの場所は、アドレス1222□の
上位4ビットということになり、アドレス0445□6
についてはアドレス1222.、の下位4ビットという
ことになる。
している。即ち:8ビットの場合には、STV及びΔS
TVによって定まるアドレスより順次1ワードずつ格納
しているが、1ワード12ビットの波形データの場合は
第12図に示すとおり、上位8ビットはSTw十ΔST
Wによって示されるアドレスから順次格納しているが、
下位4ビットはSTw+ΔSTvの値を1ビット右シフ
トしてMSHに1を入れたアドレスより下位4ビット上
位4ビットに2ワード分ずつ順次格納しである。例えば
、仮にアドレス0444□6にある波形データの上位8
ビットの下位4ビットの場所は、アドレス1222□の
上位4ビットということになり、アドレス0445□6
についてはアドレス1222.、の下位4ビットという
ことになる。
このようにして効率的に波形データをROMに格納して
いる。即ち、仮にアドレスが0000□、〜FFFF1
6までのROMであったとすると、アドレスoooo1
゜〜7FFFtsに12ビットの波形データの上位8ビ
ットが格納され、アドレス5oooi、〜BFFF1.
にその各々の下位4ビットが格納される。アドレスco
oo1.〜FFFF0.には12ビットの波形データは
格納できないが、8ビットの波形データ、或いは後述の
エンベロープデータを格納するようにすればほとんど無
駄なく ROMの利用が図れる。
いる。即ち、仮にアドレスが0000□、〜FFFF1
6までのROMであったとすると、アドレスoooo1
゜〜7FFFtsに12ビットの波形データの上位8ビ
ットが格納され、アドレス5oooi、〜BFFF1.
にその各々の下位4ビットが格納される。アドレスco
oo1.〜FFFF0.には12ビットの波形データは
格納できないが、8ビットの波形データ、或いは後述の
エンベロープデータを格納するようにすればほとんど無
駄なく ROMの利用が図れる。
本実施例では波形データが12ビットの場合を示しであ
るが、波形データが10ビットの場合には、上位8ビッ
トのアドレスを2ビット右シフトして上位2ビットに1
を入れたアドレスに2ビットずつ4ワード分の下位2ビ
ットを格納するとよい。
るが、波形データが10ビットの場合には、上位8ビッ
トのアドレスを2ビット右シフトして上位2ビットに1
を入れたアドレスに2ビットずつ4ワード分の下位2ビ
ットを格納するとよい。
例えば上位8ビットのアドレスが1222.、であった
とすれば、下位2ビットはアドレスC4881,のビッ
ト4.ビット5に格納することになる。このようにすれ
ば、仮にROMのアドレスが上記のように0000□、
〜FFFF1.であれば、波形データの上位8ビットを
アドレスoooo1.〜BFFF1.に格納し、下位2
ビットをアドレスCFFF1s−DFFF□6に格納す
るようにすることになり、効率よく諸データの格納が行
える。
とすれば、下位2ビットはアドレスC4881,のビッ
ト4.ビット5に格納することになる。このようにすれ
ば、仮にROMのアドレスが上記のように0000□、
〜FFFF1.であれば、波形データの上位8ビットを
アドレスoooo1.〜BFFF1.に格納し、下位2
ビットをアドレスCFFF1s−DFFF□6に格納す
るようにすることになり、効率よく諸データの格納が行
える。
(4) エンベロープデータ(El’ 、 E2’)
エンベロープデータは16ビットで1ワードを構成し、
そのデータフォーマットは第19表に示すとおりである
。6丁はエンベロープアドレスの更新間隔を決めるデー
タである。Sはエンベロープの傾き(増加または減少)
を示すフラグである。2はエンベロープの傾きの大小を
示すフラグであり、DATAはその大きさである。第1
9表に示すデータが第16表に示すSTE、ΔSTEに
よって定められたアドレスに従ってデータバンクに格納
されている。
エンベロープデータは16ビットで1ワードを構成し、
そのデータフォーマットは第19表に示すとおりである
。6丁はエンベロープアドレスの更新間隔を決めるデー
タである。Sはエンベロープの傾き(増加または減少)
を示すフラグである。2はエンベロープの傾きの大小を
示すフラグであり、DATAはその大きさである。第1
9表に示すデータが第16表に示すSTE、ΔSTEに
よって定められたアドレスに従ってデータバンクに格納
されている。
以上のようにデータバンクが構成されているので、とな
り合った3鍵ごとに音色の変化を与えることができる一
方、逆に同一オクターブ内にては同じヘッダアドレスデ
ータを有するようにすれば波形データ、エンベロープデ
ータ、ヘッダデータを増すことなく同じ音色の楽音が得
られる。また。
り合った3鍵ごとに音色の変化を与えることができる一
方、逆に同一オクターブ内にては同じヘッダアドレスデ
ータを有するようにすれば波形データ、エンベロープデ
ータ、ヘッダデータを増すことなく同じ音色の楽音が得
られる。また。
各ヘッダデータにおいて任意の波形データ、エンベロー
プデータが指定できるので、少ない波形データ及びエン
ベロープデータであってもその組み合わせ方で様々な楽
音を発生することも可能である。
プデータが指定できるので、少ない波形データ及びエン
ベロープデータであってもその組み合わせ方で様々な楽
音を発生することも可能である。
次に楽音発生部1−5における押鍵時のイニシャル処理
、ノートクロックの発生方法、エンベロープ発生方法波
形の発生方法について述べる。
、ノートクロックの発生方法、エンベロープ発生方法波
形の発生方法について述べる。
(1) イニシャル処理
イニシャル処理においては、押鍵により楽音が発生され
る際の各種レジスタの初期設定が行われる。押鍵により
、演算シーケンスはイニシャルモードのロングシーケン
スより開始されるので、加算部において、タイムスロッ
ト13でPDRが初期設定される。この演算を更に詳し
く述べると、第5図RAM5−4よりPDDが読み出さ
れてHEパスにデータが乗る。同時に第7図信号処理器
7−6よりHDババス対してPEDが与えられ、第11
図(イ)において5W21と51117がオンしテPD
DがAバス、PEDがBバスに乗る。このデータが第8
図に示すところのFA2−6にて加算されてCバスに演
算結果が乗る。この演算結果が51123を介してHE
ババス乗り、RAM5−4にあるレジスタPDRに格納
される。なお、この演算において、 PDD、 PED
をFA2−6への転送は実際にPDD + PEDの演
算が行われるタイムスロットの1タイムスロツト前に、
また演算結果のPDRへの格納はPDD + PED演
算が行われる1タイムスロツト後に行われる。以下加算
演算についてはすべて同様である0次いで、タイムスロ
ット(15)〜(18)にてTRI、 TR2,ZRI
、 ZR2ニ”O”が書き込まれル、コノ動作は、TR
Iに60”を書き込む場合について述べると、タイムス
ロット(15)にて第11図(イ)のMSV2−11
L: オイテ5V33及び5w13がオンする。5V3
3は第11図(ト)のような構成になっており、Cバス
に°゛0”が与えられる。同時に5W13がオンしてい
るので、CバスのデータがHCパスに与えられ、第7図
に示すRAM?−3におけるレジスタTRIに”Q 7
1が書き込まれる。
る際の各種レジスタの初期設定が行われる。押鍵により
、演算シーケンスはイニシャルモードのロングシーケン
スより開始されるので、加算部において、タイムスロッ
ト13でPDRが初期設定される。この演算を更に詳し
く述べると、第5図RAM5−4よりPDDが読み出さ
れてHEパスにデータが乗る。同時に第7図信号処理器
7−6よりHDババス対してPEDが与えられ、第11
図(イ)において5W21と51117がオンしテPD
DがAバス、PEDがBバスに乗る。このデータが第8
図に示すところのFA2−6にて加算されてCバスに演
算結果が乗る。この演算結果が51123を介してHE
ババス乗り、RAM5−4にあるレジスタPDRに格納
される。なお、この演算において、 PDD、 PED
をFA2−6への転送は実際にPDD + PEDの演
算が行われるタイムスロットの1タイムスロツト前に、
また演算結果のPDRへの格納はPDD + PED演
算が行われる1タイムスロツト後に行われる。以下加算
演算についてはすべて同様である0次いで、タイムスロ
ット(15)〜(18)にてTRI、 TR2,ZRI
、 ZR2ニ”O”が書き込まれル、コノ動作は、TR
Iに60”を書き込む場合について述べると、タイムス
ロット(15)にて第11図(イ)のMSV2−11
L: オイテ5V33及び5w13がオンする。5V3
3は第11図(ト)のような構成になっており、Cバス
に°゛0”が与えられる。同時に5W13がオンしてい
るので、CバスのデータがHCパスに与えられ、第7図
に示すRAM?−3におけるレジスタTRIに”Q 7
1が書き込まれる。
一方データバンク読み出し部においては1次のような動
作をする。以下第10図を中心に説明する。
作をする。以下第10図を中心に説明する。
TAB、 ND、 OCTで構成されたVRDによって
ヘッダアドレスデータHADが読み出される。なお、こ
のイニシャル処理を行うイニシャルモードにおいては、
ラッチ10−3はSQ倍信号より111にセットされて
いる。このデータはIlo 2−10におけるシフタ1
0−13によって第15表に示されるフォーマットにデ
ータが変換されDバス5V15. HCバスを介してR
AM?−3のレジスタHADに格納される。この動作と
同時に、データバンクより読み出されたヘッダアドレス
データHADは、ラッチ10−8、ラッチ10−6で次
々とラッチされ、シフタセレクタ10−9にて第15表
に示すとおりのフォーマットにデータが変換されてラッ
チ10−4にラッチされる。ラッチ10−4の出力に対
し、先ずビット処理回路10−10で下位3ビットに対
して000が与えられてコントロールデータC0NTが
データバンク1−6より読み出されラッチ10−8を介
してラッチ1O−7の上位8ビットにラッチされる。コ
ントロールデータC0NTはセレクタ10−12.シフ
タ10−13、ノイズ回路10−14、ラッチ10−2
を介し、DバスよりRAM5−4のレジスタC0NTに
格納される。一方、ラッチ10−7の上位4ビットはデ
コーダ10−11に接続されているので第14表に示す
真理値表に従って16ビットのデータが得られる。但し
、この時にデコーダ10−11のC入力は′1”となっ
ている。
ヘッダアドレスデータHADが読み出される。なお、こ
のイニシャル処理を行うイニシャルモードにおいては、
ラッチ10−3はSQ倍信号より111にセットされて
いる。このデータはIlo 2−10におけるシフタ1
0−13によって第15表に示されるフォーマットにデ
ータが変換されDバス5V15. HCバスを介してR
AM?−3のレジスタHADに格納される。この動作と
同時に、データバンクより読み出されたヘッダアドレス
データHADは、ラッチ10−8、ラッチ10−6で次
々とラッチされ、シフタセレクタ10−9にて第15表
に示すとおりのフォーマットにデータが変換されてラッ
チ10−4にラッチされる。ラッチ10−4の出力に対
し、先ずビット処理回路10−10で下位3ビットに対
して000が与えられてコントロールデータC0NTが
データバンク1−6より読み出されラッチ10−8を介
してラッチ1O−7の上位8ビットにラッチされる。コ
ントロールデータC0NTはセレクタ10−12.シフ
タ10−13、ノイズ回路10−14、ラッチ10−2
を介し、DバスよりRAM5−4のレジスタC0NTに
格納される。一方、ラッチ10−7の上位4ビットはデ
コーダ10−11に接続されているので第14表に示す
真理値表に従って16ビットのデータが得られる。但し
、この時にデコーダ10−11のC入力は′1”となっ
ている。
セレクタ10−12がこのデコーダ出力をセレクトし、
シフタ10−13が6ビット右シフトして出力する。
シフタ10−13が6ビット右シフトして出力する。
ここで、このシフタ10−13の出力について考えると
、ラッチ10−7よりデコーダ10−11へ入力されて
いるデータはPlo及びORG 3ビットである。今デ
コーダ10−11のC入力はパ1”であるので、デコー
ダ10−11の出力はOR03ビットのみによって定ま
る。
、ラッチ10−7よりデコーダ10−11へ入力されて
いるデータはPlo及びORG 3ビットである。今デ
コーダ10−11のC入力はパ1”であるので、デコー
ダ10−11の出力はOR03ビットのみによって定ま
る。
故にデコーダ10−11の出力をシフタ10−13で6
ビット右シフトした値は第18表に示した値となる。こ
の値がノイズ回路10−14、ラッチ10−2を介して
Dバスに与えられ、MSV2−11において51115
を介してRAM7−3のレジスタDIFIに格納される
。
ビット右シフトした値は第18表に示した値となる。こ
の値がノイズ回路10−14、ラッチ10−2を介して
Dバスに与えられ、MSV2−11において51115
を介してRAM7−3のレジスタDIFIに格納される
。
次にラッチ10−4の出力に対し、ビット処理回路10
−10が下位3ビットに対し、0015次いで010を
与え、ヘッダデータのSTHの上位、下位の各8ビット
を読み出す。この5TIEの値がセレクタ10−12゜
シフタ10−13、ノイズ回路10−14、ラッチ10
−2を介してDバスに与えられ、MSv2−11におい
て8w5を介してRAM7−1のレジスタEARLへ格
納される。
−10が下位3ビットに対し、0015次いで010を
与え、ヘッダデータのSTHの上位、下位の各8ビット
を読み出す。この5TIEの値がセレクタ10−12゜
シフタ10−13、ノイズ回路10−14、ラッチ10
−2を介してDバスに与えられ、MSv2−11におい
て8w5を介してRAM7−1のレジスタEARLへ格
納される。
次にショートシーケンスに入る。ショートシーケンスは
2回実行される。タイムスロット(1)でPDRとJD
が加算されるが、ここでJDは定数でありMSW2−1
1において5W32をオンすることにより得られる。5
Td32は第11図(チ)に示すような構成になってお
り、JD=45B、、となっている。この加算結果に対
してノート係数CNを掛は合わせてFRを得る。
2回実行される。タイムスロット(1)でPDRとJD
が加算されるが、ここでJDは定数でありMSW2−1
1において5W32をオンすることにより得られる。5
Td32は第11図(チ)に示すような構成になってお
り、JD=45B、、となっている。この加算結果に対
してノート係数CNを掛は合わせてFRを得る。
この一連の日算を詳しく述べると、PDR+ JDがタ
イムスロット(1)で演算され、その結果が前述のとお
りタイムスロット(2)にてCバスに与えられル、 、
::、::テMSW2−11ニおいて5v28.5W2
9がオンし。
イムスロット(1)で演算され、その結果が前述のとお
りタイムスロット(2)にてCバスに与えられル、 、
::、::テMSW2−11ニおいて5v28.5W2
9がオンし。
Cバス→HLバス→Lバスの順でデータが転送され、第
9図(イ)におけるMPLY2−7のラッチ9−1にラ
ッチされる。次のタイムスロット(3)において、第7
図のROM7−5よりノートデータNOに応じたCNの
値が読み出され、HDババス与えられる。この値がMS
V2−11における5%119を介してLバスに与えら
れ、MPLY2−7のラッチ9−3にラッチされる。ラ
ッチ9−1の出力はシフタ9−11を介してラッチ9−
2へ、ラッチ9−3の出力はビット処理回路を介してラ
ッチ9−4へ送られラッチされる。故にラッチ9−2に
はPDR+ JDの値が、ラッチ9−4には、 CNの
値がラッチされている0次いで乗算器9−16が(PD
R+ JD)とCNの積を算出し、シフタ9−15を介
してラッチ9−8へ送出されラッチされる。なおこれら
の一連の動作において、シフタ9−11、ビット処理回
路9−12.シフタ9−15はデータをスルーさせるよ
うに動作する。
9図(イ)におけるMPLY2−7のラッチ9−1にラ
ッチされる。次のタイムスロット(3)において、第7
図のROM7−5よりノートデータNOに応じたCNの
値が読み出され、HDババス与えられる。この値がMS
V2−11における5%119を介してLバスに与えら
れ、MPLY2−7のラッチ9−3にラッチされる。ラ
ッチ9−1の出力はシフタ9−11を介してラッチ9−
2へ、ラッチ9−3の出力はビット処理回路を介してラ
ッチ9−4へ送られラッチされる。故にラッチ9−2に
はPDR+ JDの値が、ラッチ9−4には、 CNの
値がラッチされている0次いで乗算器9−16が(PD
R+ JD)とCNの積を算出し、シフタ9−15を介
してラッチ9−8へ送出されラッチされる。なおこれら
の一連の動作において、シフタ9−11、ビット処理回
路9−12.シフタ9−15はデータをスルーさせるよ
うに動作する。
即ちエンコーダ9−10のC入力には61″が与えられ
ている。ラッチ9−8の値がLバスよりMSW2−11
の8w9を介してnAM7−zのレジスタFRに格納さ
れる。故に、タイムスロット(2)において、ORG+
OCT+1が演算される。この演算において、+1の動
作は第8図のFA2−6における論理ゲート8−12に
よって行われる。即ち該当のタイムスロットで論理ゲー
ト8−12が強制的に1″を出力すればラッチ8−5が
パ1”をラッチし、加算器のCi大入力°°1″を与え
るものである。この演算の意味するところは次のとおり
である。即ち: ORGは波形データが本来どの音域
に属するかを示す値(これを仮にNとする)をオクター
ブデータOCTの逆論理をとった形で示すものである。
ている。ラッチ9−8の値がLバスよりMSW2−11
の8w9を介してnAM7−zのレジスタFRに格納さ
れる。故に、タイムスロット(2)において、ORG+
OCT+1が演算される。この演算において、+1の動
作は第8図のFA2−6における論理ゲート8−12に
よって行われる。即ち該当のタイムスロットで論理ゲー
ト8−12が強制的に1″を出力すればラッチ8−5が
パ1”をラッチし、加算器のCi大入力°°1″を与え
るものである。この演算の意味するところは次のとおり
である。即ち: ORGは波形データが本来どの音域
に属するかを示す値(これを仮にNとする)をオクター
ブデータOCTの逆論理をとった形で示すものである。
OCTとORGと、波形サンプル数の関係を第18表と
第22表に示す。故にORG+1は−Nを表わすことに
なる。つまり。
第22表に示す。故にORG+1は−Nを表わすことに
なる。つまり。
ORG + OCT + 1 = OCT −Nと
いうことであり、これは、現在発生しようとしている楽
音信号の音域と実際に使用しようとしている波形データ
の本来の音域との差、即ちオクターブシフトの量を示す
値である。つまり、原波形を何オクターブ高い音域の音
として読み出すかを示す。この値は一旦RAM7−4の
レジスタIE2に格納され、次いで、信号処理器7−6
でデコードされてRAM7−2(7) L/ジスタA
IIARに格納される。 ORG+OCT+1の値に対
するΔWARの値は第20表に示すとおりである。
いうことであり、これは、現在発生しようとしている楽
音信号の音域と実際に使用しようとしている波形データ
の本来の音域との差、即ちオクターブシフトの量を示す
値である。つまり、原波形を何オクターブ高い音域の音
として読み出すかを示す。この値は一旦RAM7−4の
レジスタIE2に格納され、次いで、信号処理器7−6
でデコードされてRAM7−2(7) L/ジスタA
IIARに格納される。 ORG+OCT+1の値に対
するΔWARの値は第20表に示すとおりである。
以下、タイムスロット(4)でEAR2,同(6)、
(8)。
(8)。
(9)、 (10)テVR1,ERI、 IE2. V
EI、 vR2の各レジスタの初期設定を行っている。
EI、 vR2の各レジスタの初期設定を行っている。
一方データバンク読み出し部においては、前述のロング
シーケンスでRAM7−3に格納したヘッダアドレスデ
ータHADを読み出し、Dバス→ラッチ10−1→シフ
タセレクタ10−9を介してラッチ10−4にラッチし
、ビット処理回路10−10で下位3ビットに001を
入力してデータバンクよりヘッダデータのΔSTEを読
み出す、この値はラッチ10−7→セレクタ10−12
→シフタ10−13→ノイズ回路10−14→ラッチ1
0−2を介してDパスへ与えられ、MSV2−11にお
いてSV40. SII+30を介してAバスへ入力さ
れてFA2−6にてEAR1と加算される。次いでRA
l’17−1のレジスタEARIに格納しである5TE
(エンベロープデータEl’のスタートアドレス)が読
み出され、Dバス→ラッチ10−1→シフタセレクタ1
0−9を介してラッチ10−4にラッチされる。ラッチ
10−4の出力はビット処理回路10−10によってL
SBに0”次いでII I Elが入力されて、第19
表に示されているとおりの2バイトのエンベロープデー
タを読み出す。この値16ビットがラッチ10−7にラ
ッチされる。ラッチ1O−7の出力に従って、初回のシ
ョートシーケンスでΔTl。
シーケンスでRAM7−3に格納したヘッダアドレスデ
ータHADを読み出し、Dバス→ラッチ10−1→シフ
タセレクタ10−9を介してラッチ10−4にラッチし
、ビット処理回路10−10で下位3ビットに001を
入力してデータバンクよりヘッダデータのΔSTEを読
み出す、この値はラッチ10−7→セレクタ10−12
→シフタ10−13→ノイズ回路10−14→ラッチ1
0−2を介してDパスへ与えられ、MSV2−11にお
いてSV40. SII+30を介してAバスへ入力さ
れてFA2−6にてEAR1と加算される。次いでRA
l’17−1のレジスタEARIに格納しである5TE
(エンベロープデータEl’のスタートアドレス)が読
み出され、Dバス→ラッチ10−1→シフタセレクタ1
0−9を介してラッチ10−4にラッチされる。ラッチ
10−4の出力はビット処理回路10−10によってL
SBに0”次いでII I Elが入力されて、第19
表に示されているとおりの2バイトのエンベロープデー
タを読み出す。この値16ビットがラッチ10−7にラ
ッチされる。ラッチ1O−7の出力に従って、初回のシ
ョートシーケンスでΔTl。
ΔEl、ΔZl、2回目のショートシーケンスでΔT2
゜ΔE2.Δ22.の値を発生する。先ず、デコーダ1
0−11にはラッチエロー7の上位4ビットが入力され
ているが、ラッチ10−7の上位4ビットには第19表
に示すところのΔTの値が入っている。故にデコーダ1
0−11は6丁を第13表に従ってデコードし、セレク
タ10−12へ出力する。セレクタ10−12において
は、この時C=1となってS入力を選択しシフタ10−
13へ出力する。このセレクタ10−12出力はシフタ
10−13、ノイズ回路10−14においては何らビッ
ト操作が行われることなくラッチ10−2を介してDバ
スに与えられ9M5W2−11においてSす10. H
Bババス介してRAM7−2のレジスタΔT1に格納さ
れる。
゜ΔE2.Δ22.の値を発生する。先ず、デコーダ1
0−11にはラッチエロー7の上位4ビットが入力され
ているが、ラッチ10−7の上位4ビットには第19表
に示すところのΔTの値が入っている。故にデコーダ1
0−11は6丁を第13表に従ってデコードし、セレク
タ10−12へ出力する。セレクタ10−12において
は、この時C=1となってS入力を選択しシフタ10−
13へ出力する。このセレクタ10−12出力はシフタ
10−13、ノイズ回路10−14においては何らビッ
ト操作が行われることなくラッチ10−2を介してDバ
スに与えられ9M5W2−11においてSす10. H
Bババス介してRAM7−2のレジスタΔT1に格納さ
れる。
ΔEl、ΔZl、ΔE2. AZ2は、第19表ニ示さ
れルトころのZ、S、DATAに応じてシフタ10−1
3にてビット操作が行われて各レジスタへ格納される。
れルトころのZ、S、DATAに応じてシフタ10−1
3にてビット操作が行われて各レジスタへ格納される。
どのようなビット操作が行われるかについては第13図
に示すとおりである。第19表におけるZの値に応じて
、データフォーマットが異なる事を示している。
に示すとおりである。第19表におけるZの値に応じて
、データフォーマットが異なる事を示している。
次に、データバンク1−6よりΔSTEを読み出す時と
同様にRAM7−3よりレジスタHADの値を読み出し
てラッチ10−4にラッチし、ビット処理回路10−1
0にてヘッダアドレスデータHADの下位3ビットに対
し初回のイニシャルモードでは1009次いで101゜
2回目のイニシャルモードでは1109次いで111を
与えることによりデータバンク1−6よりsrw。
同様にRAM7−3よりレジスタHADの値を読み出し
てラッチ10−4にラッチし、ビット処理回路10−1
0にてヘッダアドレスデータHADの下位3ビットに対
し初回のイニシャルモードでは1009次いで101゜
2回目のイニシャルモードでは1109次いで111を
与えることによりデータバンク1−6よりsrw。
ΔSTVを読み出し、STWをRAM7−3(7) L
/レジスタTv。
/レジスタTv。
ΔSTIをRAM?−1のレジスタMARに格納する。
以上により、すべてのレジスタの初期設定が完了する。
(2) ノートクロックの発生方法
先ず楽音発生部1−5で用いているノートクロック発生
法の原理について第3図とともに説明する。
法の原理について第3図とともに説明する。
第3図において、3−1は分局器であり端子CKに入力
されているマスタクロックを分周し、10ビットの分周
出力をQより出力する。3−2は比較器で。
されているマスタクロックを分周し、10ビットの分周
出力をQより出力する。3−2は比較器で。
A入力及びS入力の比較を行い、A=Bとなった時にQ
より1”を出力する。3−3はフリッププロップであり
、 CK大入力立上りでS入力に与えられた信号をとり
込みQより出力する。3−4は加算器であり、A入力と
S入力の和をCより出力する。
より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−6はRSラッチであり、S入力
に正のパルスが入るとQ=1となり、R入力に正のパル
スが入るとQ=Oとなる。3−7はディレィ回路であり
、入力信号を遅延させて出力する。
3−8は<NDゲートである。
次に第3図の動作を説明する。まず、RSラッチ3−6
のQ出力が°′0″であるとすると、<NDゲート3−
8の出力は常時60”であるのでフリップフロップ3−
3のQ出力は一定である。一方分周器はマスタクロック
の分周より、000□6から3FF1.をくり返す10
ビットのQを出力する。仮にフリップフロップ3−3の
出力がNであったとすると、当然000□6≦N≦3F
F□6であるので必ずいつか分周器3−1のQ出力=N
となる瞬間が存在し、この時は比較器3−2のQ出力よ
り一致パルスが出力される。
のQ出力が°′0″であるとすると、<NDゲート3−
8の出力は常時60”であるのでフリップフロップ3−
3のQ出力は一定である。一方分周器はマスタクロック
の分周より、000□6から3FF1.をくり返す10
ビットのQを出力する。仮にフリップフロップ3−3の
出力がNであったとすると、当然000□6≦N≦3F
F□6であるので必ずいつか分周器3−1のQ出力=N
となる瞬間が存在し、この時は比較器3−2のQ出力よ
り一致パルスが出力される。
すると、この一致パルスRSラッチ3−6のS入力に入
っているためにRSラッチ3−6のQ出力は1”となり
書き込みパルスが<NDゲート3−8より出力される。
っているためにRSラッチ3−6のQ出力は1”となり
書き込みパルスが<NDゲート3−8より出力される。
フリップフロップ3−3のS入力には加算器3−4のC
出力が与えられているのでN+Mの値が書き込まれる。
出力が与えられているのでN+Mの値が書き込まれる。
と同時に、書き込みパルスはディレィ回路3−7で遅延
された後RSラッチ3−6のQ出力を0”にする。この
ため、再びフリップフロップ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−3FFl、
となるためにやはりマスタクロックをM回カウントした
時に一致パルスが発生されることは言うまでもない。つ
まり、この比較器3−2の一致パルスをノートクロック
とし、定数Mを変化させれば種々の周期のノートクロッ
クが得られることになり、その周波数は(マスタクロッ
クの周波数)十Mとなる。
された後RSラッチ3−6のQ出力を0”にする。この
ため、再びフリップフロップ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−3FFl、
となるためにやはりマスタクロックをM回カウントした
時に一致パルスが発生されることは言うまでもない。つ
まり、この比較器3−2の一致パルスをノートクロック
とし、定数Mを変化させれば種々の周期のノートクロッ
クが得られることになり、その周波数は(マスタクロッ
クの周波数)十Mとなる。
また、 SRラッチ3−6のQ出力が計算要求フラグC
LRQに相当する。
LRQに相当する。
以上が本発明におけるノートクロック発生法の原理であ
る。
る。
次に、第1図に示す楽音発生部1−5におけるノートク
ロックの発生の演算シーケンスの詳細について説明する
。
ロックの発生の演算シーケンスの詳細について説明する
。
鍵盤1−1にて鍵が押圧され、マイコン1−4が楽音発
生部1−5に対して楽音の発生を指示すると、前述のよ
うに演算シーケンスがイニシャルモードロングシーケン
スより開始する。先ずタイムスロット(13)で、 PDD + PED→PDR・・・・・・(2−1)次
いで、ショートシーケンスに入りタイムスロット(1)
・・・(6)で POR+ JD→L、B、 ・・・・
・・(2−2)C,B、 XCN 4 FR・・・・・
・(2−3)の演算が行われる。次いでノーマルモード
になり、ショートシーケンスのタイムスロット(9)で
FR+ CDR−+ FR・・・・・・(2−4)ロン
グシーケンスのタイムスロット(14)〜(18)でP
DR十JD −+ L、B、 ・・・・・・
(2−5)C,B、 X CN →FR・・・・・
・(’z−6)PDD +PED + PDI’l
・・・・・・(2−7)の演算が行われる。こ
こで、PODは第1表に示したPDD即ちピッチデチュ
ーンデータであり、PEDは前述のピッチエクステント
データである。JDは定数であり11151゜(16進
数では45B)という値がセットしである。ノート係数
CNはアサインされた音名により定まる値であり、音名
とCNの関係は第7表に示しである。第5表、第6表の
説明にて述べたとおり、演算(2−2)、 (2−3)
及び演算(2−5)、 (2−6)は下式のとおりに表
せる。
生部1−5に対して楽音の発生を指示すると、前述のよ
うに演算シーケンスがイニシャルモードロングシーケン
スより開始する。先ずタイムスロット(13)で、 PDD + PED→PDR・・・・・・(2−1)次
いで、ショートシーケンスに入りタイムスロット(1)
・・・(6)で POR+ JD→L、B、 ・・・・
・・(2−2)C,B、 XCN 4 FR・・・・・
・(2−3)の演算が行われる。次いでノーマルモード
になり、ショートシーケンスのタイムスロット(9)で
FR+ CDR−+ FR・・・・・・(2−4)ロン
グシーケンスのタイムスロット(14)〜(18)でP
DR十JD −+ L、B、 ・・・・・・
(2−5)C,B、 X CN →FR・・・・・
・(’z−6)PDD +PED + PDI’l
・・・・・・(2−7)の演算が行われる。こ
こで、PODは第1表に示したPDD即ちピッチデチュ
ーンデータであり、PEDは前述のピッチエクステント
データである。JDは定数であり11151゜(16進
数では45B)という値がセットしである。ノート係数
CNはアサインされた音名により定まる値であり、音名
とCNの関係は第7表に示しである。第5表、第6表の
説明にて述べたとおり、演算(2−2)、 (2−3)
及び演算(2−5)、 (2−6)は下式のとおりに表
せる。
(PDR+ JD) X CN −+ FR・・・・・
・(2−8)ここで、 PDRはPDD + PEDで
あるので演算(2−8)は、(PDD + PED +
JD) X CN 4 FR−−−・−(2−9)と
なる、このFRの値を演算(2〜4)で示すようにCD
Rに累算する。前述のようにこの累算はノートクロック
が発生するごとに一回行われる。故にCDHの初期値を
Nとすると、CDHの値はN、 N+FR。
・(2−8)ここで、 PDRはPDD + PEDで
あるので演算(2−8)は、(PDD + PED +
JD) X CN 4 FR−−−・−(2−9)と
なる、このFRの値を演算(2〜4)で示すようにCD
Rに累算する。前述のようにこの累算はノートクロック
が発生するごとに一回行われる。故にCDHの初期値を
Nとすると、CDHの値はN、 N+FR。
N+2XFR,・・・・・・と変化する。このCDHの
上位10ビットの値とマスタクロックを順次分周して得
た10ビットの分局信号とを比較し、一致パルスを発生
するようにしているので、実際には、N N+FR
N−)二λX FR、、、10,と。比較8’8’8’ を行うことになり、CDHの上位10ビットが第3図F
R・ のフリップフロップ3−3に相当し、■が第3図の定数
回路3−5の値Mに相当する。故に上記(2−1)〜(
2−7)の演算を行えば一定周期のノートクロックが得
られ、その周波数は (マスタクロック周波数)牛脂となる。
上位10ビットの値とマスタクロックを順次分周して得
た10ビットの分局信号とを比較し、一致パルスを発生
するようにしているので、実際には、N N+FR
N−)二λX FR、、、10,と。比較8’8’8’ を行うことになり、CDHの上位10ビットが第3図F
R・ のフリップフロップ3−3に相当し、■が第3図の定数
回路3−5の値Mに相当する。故に上記(2−1)〜(
2−7)の演算を行えば一定周期のノートクロックが得
られ、その周波数は (マスタクロック周波数)牛脂となる。
(3)波形発生方法
第1図楽音発生部1−5に示すところの波形発生方法は
大別して次の5ステツプに分けられる。即ち: ■ アドレス発生 データバンク1−6より波形データを読み出す際のアド
レスを発生させる。
大別して次の5ステツプに分けられる。即ち: ■ アドレス発生 データバンク1−6より波形データを読み出す際のアド
レスを発生させる。
■ 波形読み出し
上記のアドレスで指定された波形データをデータバンク
1−6より読み出し、コントロールデータC0NTに応
じたビット処理を行う。
1−6より読み出し、コントロールデータC0NTに応
じたビット処理を行う。
■ エンベロープ乗算
■ 2波混合
■ CN乗算
以下各ステップを詳しく説明する。
■ アドレス発生
押鍵によるイニシャル設定にて八ツダーデータのSTV
(12のスタートアドレス)、ΔSTw(tillの
ワード数)、DIFI(1波形に含まれるサンプル数)
がレジスタST%l、 wAR,DIFIに格納され、
また演算によってレジスタΔvARが定まる。これらの
データに基づきノーマルモードにてアドレス発生を行う
わけであるが、以下の処理において波形データにPCM
部がある場合(PCM部1)とない場合(PCM=O)
でアドレス発生が異なるのでPCM部がある場合とPC
Mがない場合に分けて説明する。
(12のスタートアドレス)、ΔSTw(tillの
ワード数)、DIFI(1波形に含まれるサンプル数)
がレジスタST%l、 wAR,DIFIに格納され、
また演算によってレジスタΔvARが定まる。これらの
データに基づきノーマルモードにてアドレス発生を行う
わけであるが、以下の処理において波形データにPCM
部がある場合(PCM部1)とない場合(PCM=O)
でアドレス発生が異なるのでPCM部がある場合とPC
Mがない場合に分けて説明する。
匹」1色莞へ監査
第6表に示すとおり、タイムスロット(2)にて、5T
IIIとwARの和を求め、この和でもってデータバン
ク1−6から波形1の読み出しを行い、タイムスロット
(4)にて上記の和に更にDIFIを加えたもの即ちS
TV + wAR+ DIFI(7)値でデータバンク
1−6から波形2の読み出しを行っている。ここで、
STVは波形2の先頭アドレスであり、レジスタWAR
には初期値としてΔSTV即ち波形1に含まれるワード
数の負数が入っており、タイムスロット(7)にてΔv
ARを累算していく、故にSTV + vARの値は、
波形1の先頭アドレスより順次ΔvARの値ごとに増加
する値となる。また、ST+VAR+DIF1の値はこ
の値にDIFIを加えたものであるので、波形2の先頭
アドレスよりΔwARおきに増加する値となる。
IIIとwARの和を求め、この和でもってデータバン
ク1−6から波形1の読み出しを行い、タイムスロット
(4)にて上記の和に更にDIFIを加えたもの即ちS
TV + wAR+ DIFI(7)値でデータバンク
1−6から波形2の読み出しを行っている。ここで、
STVは波形2の先頭アドレスであり、レジスタWAR
には初期値としてΔSTV即ち波形1に含まれるワード
数の負数が入っており、タイムスロット(7)にてΔv
ARを累算していく、故にSTV + vARの値は、
波形1の先頭アドレスより順次ΔvARの値ごとに増加
する値となる。また、ST+VAR+DIF1の値はこ
の値にDIFIを加えたものであるので、波形2の先頭
アドレスよりΔwARおきに増加する値となる。
ここで、ΔWARは、波形の読みとばしを表わす値であ
るので1以上のようにして波形1及び波形2に対するア
ドレスを発生することができる。
るので1以上のようにして波形1及び波形2に対するア
ドレスを発生することができる。
また、本発音発生部1−5においては、PCM部が無し
で、且つソロフラグ5QL=Oで且つオクターブシフト
が行われない場合に位相合わせを行う。位相合わせの方
法は、演算シーケンスがイニシャルモードからノーマル
モードに転じた時の初回のタイムスロット(7)に演算
結果としてRAM8−13における同音名をアドレスと
するデータ9ビットをレジスタWARに格納する。RA
M8−13の出力は9ビットであるが、Cバスはプリチ
ャージされているので全16ビットの前述の9ビットよ
り上位7ビットにはu 1 ytが入る。2回目以降の
タイムスロット(7)の演算結果は、第6表に示すとお
りレジスタl1lARに格納されるとともにRAM8−
13における同音名をアドレスとするレジスタ(位相レ
ジスタ)に更新される。このようにすることにより、他
のチャンネルで同音名の楽音を既に発生している場合で
あっても、そのチャンネルにおけるレジスタl1lAR
の値がRAM8−13を介してこれから楽音を発生しよ
うとしているチャンネルのレジスタMARに与えられる
ためにこれら2チャンネル間での位相を合わせることが
可能となる。
で、且つソロフラグ5QL=Oで且つオクターブシフト
が行われない場合に位相合わせを行う。位相合わせの方
法は、演算シーケンスがイニシャルモードからノーマル
モードに転じた時の初回のタイムスロット(7)に演算
結果としてRAM8−13における同音名をアドレスと
するデータ9ビットをレジスタWARに格納する。RA
M8−13の出力は9ビットであるが、Cバスはプリチ
ャージされているので全16ビットの前述の9ビットよ
り上位7ビットにはu 1 ytが入る。2回目以降の
タイムスロット(7)の演算結果は、第6表に示すとお
りレジスタl1lARに格納されるとともにRAM8−
13における同音名をアドレスとするレジスタ(位相レ
ジスタ)に更新される。このようにすることにより、他
のチャンネルで同音名の楽音を既に発生している場合で
あっても、そのチャンネルにおけるレジスタl1lAR
の値がRAM8−13を介してこれから楽音を発生しよ
うとしているチャンネルのレジスタMARに与えられる
ためにこれら2チャンネル間での位相を合わせることが
可能となる。
ここで、タイムスロット(7)の演算WAR+ΔWAR
について述べる。
について述べる。
すAR+ΔすAR≧Oとなると音域とは無関係に演算結
果としてCバスには一512□。(FFOO,@)が与
えられる。オクターブシフトが無い場合はΔ1IAR=
1であるので、レジスタIIARの値は512を周期と
してくり返すことになる。
果としてCバスには一512□。(FFOO,@)が与
えられる。オクターブシフトが無い場合はΔ1IAR=
1であるので、レジスタIIARの値は512を周期と
してくり返すことになる。
以上により同じノートを発生する複数チャンネルの各々
のレジスタ%lARは常に同一となるので、異なる複数
チャンネルの発生する同じノートの波形の位相が完全に
一致することとなり、位相合わせが実現される。
のレジスタ%lARは常に同一となるので、異なる複数
チャンネルの発生する同じノートの波形の位相が完全に
一致することとなり、位相合わせが実現される。
次にタイムスロット(2)における演算STW + W
ARを更に詳しく説明する。
ARを更に詳しく説明する。
RAM7−3のレジスタST%lよりデータが読み出さ
れ。
れ。
MSす2−11に示すところのHCバス、5VI1.
Aバスを介しクロックψ3によりFA2−6のラッチ8
−1にラッチされる。同時にRAM7−1のレジスタw
ARの値がHAババス SV2、Bバスを介しクロック
ψ3によりFA2−6のラッチ8−2にラッチされる。
Aバスを介しクロックψ3によりFA2−6のラッチ8
−1にラッチされる。同時にRAM7−1のレジスタw
ARの値が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において上記のようなビット処理を行
うことにより、レジスタwARが512を周期として変
化しているにもかかわらず、各オクターブに応じた周期
で変化していくことになる1例えば、0RG= 5 、
0CT= 2の場合はオクターブシフトはなくイニシャ
ル処理の項で述べたとおりΔυAR=1である。また第
21表より、レジスタWARのビット7.8が常に1に
なるので、タイムスロット(2)の演算結果は仮にST
V’ = Oとすると−10,−9,・・・−1、−1
28,−127,・・・−1,−128・・・ となって128の周期でくり返すことになる。また。
らのビット処理を受けずにクロックψ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において上記のようなビット処理を行
うことにより、レジスタwARが512を周期として変
化しているにもかかわらず、各オクターブに応じた周期
で変化していくことになる1例えば、0RG= 5 、
0CT= 2の場合はオクターブシフトはなくイニシャ
ル処理の項で述べたとおりΔυAR=1である。また第
21表より、レジスタWARのビット7.8が常に1に
なるので、タイムスロット(2)の演算結果は仮にST
V’ = Oとすると−10,−9,・・・−1、−1
28,−127,・・・−1,−128・・・ となって128の周期でくり返すことになる。また。
0RG=4.0CT=5の場合は2オクターブシフトと
なりΔVAR=4となる。また第21表によりレジスタ
wARのビット6.7.8が常に1になるので同様に −40,・・・−8,−4,−64,−60,−56・
・・−4,−64,・・・ となって16の周期でくり返すことになる。
なりΔVAR=4となる。また第21表によりレジスタ
wARのビット6.7.8が常に1になるので同様に −40,・・・−8,−4,−64,−60,−56・
・・−4,−64,・・・ となって16の周期でくり返すことになる。
0CT=2の時くり返し周期が128であり、OCT、
= 5の時くり返し周期が16であることは、第22表
により所望の波形ポイントが得られていることを示して
いる。
= 5の時くり返し周期が16であることは、第22表
により所望の波形ポイントが得られていることを示して
いる。
また0RG= 4 、0CT= 5 (7)際、レジス
タMARが4ずつ歩進していることは、第18表に示さ
れる通り波形サンプル数64のデータを4サンプルに1
点ずつ得ることにより本来の波形データのオクターブを
2オクターブ上げることができることを示している。
タMARが4ずつ歩進していることは、第18表に示さ
れる通り波形サンプル数64のデータを4サンプルに1
点ずつ得ることにより本来の波形データのオクターブを
2オクターブ上げることができることを示している。
匹ユ綴IJ−8」企
PCM部がある場合のアドレス発生はPCM部がない場
合と比較してタイムスロット(2)における演算が異な
り、他は同様である。
合と比較してタイムスロット(2)における演算が異な
り、他は同様である。
タイムスロット(2)においてはSTR+ wARの演
算が行われる。即ち: RAM7−3のレジスタSTVよりデータが読み出され
、ICバス、5w11、Aバスを介してクロックψ3に
よりFA2−6のラッチ8−1にラッチされる。同時に
。
算が行われる。即ち: RAM7−3のレジスタSTVよりデータが読み出され
、ICバス、5w11、Aバスを介してクロックψ3に
よりFA2−6のラッチ8−1にラッチされる。同時に
。
RAM?−1ノL/ジX夕VAR+7)値がHAババス
s12、Bバスを介してFA2−6のラッチ8−2にラ
ッチされる。ここで、ラッチ8−1の出力はビット処理
回路8−10、ラッチ8−2の出力はビット処理回路8
−11に入力されるが双方の出力ともビット処理を行わ
れることなくラッチ8−3、ラッチ8−4へ送られ、加
算器8−9にて加算される。
s12、Bバスを介してFA2−6のラッチ8−2にラ
ッチされる。ここで、ラッチ8−1の出力はビット処理
回路8−10、ラッチ8−2の出力はビット処理回路8
−11に入力されるが双方の出力ともビット処理を行わ
れることなくラッチ8−3、ラッチ8−4へ送られ、加
算器8−9にて加算される。
ここで、レジスタwARの値について考えると、PCM
部がない場合にはレジスタwARには初期値として波形
−周期に含まれるサンプル数の負数が書き込まれるが、
PCM部がある場合には、レジスタIIAHの初期値と
してPCM部として用いる波形のすべてのサンプル数の
負数が書き込まれる。故に、タイムスロット(2)の演
算結果はデータバンク1−6における波形1のPCM部
先頭アドレスから順次ΔWARずつ増加した値となる。
部がない場合にはレジスタwARには初期値として波形
−周期に含まれるサンプル数の負数が書き込まれるが、
PCM部がある場合には、レジスタIIAHの初期値と
してPCM部として用いる波形のすべてのサンプル数の
負数が書き込まれる。故に、タイムスロット(2)の演
算結果はデータバンク1−6における波形1のPCM部
先頭アドレスから順次ΔWARずつ増加した値となる。
PCM部終了の検出はタイムスロット(7)における
演算において WAR+ΔWAR≧0となることを検出して行い、PC
M部終了後のアドレス発生はPCM部がない場合と全く
同じであり、ビット処理回路8−11によるビット処理
が行われる。
演算において WAR+ΔWAR≧0となることを検出して行い、PC
M部終了後のアドレス発生はPCM部がない場合と全く
同じであり、ビット処理回路8−11によるビット処理
が行われる。
なお、楽音発生部1−5におけるアドレス演算は16ビ
ットであるが、16ビットのアドレス信号では充分でな
い場合が当然考えられる。そこで、本楽音発生部1−5
においては、タブレットデータTABの上位3ビットを
用いてアドレス空間が拡張できるようになっている。
Ilo 2−10におけるラッチ10−3がアドレス空
間拡張用のラッチであり、ラッチ10−3にタブレット
データTARの上位3ビットがラッチされる。即ち: 押鍵によりイニシャルモードになると、 RAM5−4
に格納されたタブレットデータがMS112−11を介
してRAM7−3のレジスタTAB’に格納される。次
いでノ−マルモードに入ると、RAM?−3のレジスタ
TAB’の値が読み出され、MSll12−11を介し
てIlo 2−10におけるラッチ10−3にラッチさ
れる。このようにして内部演算は16ビットでありなが
ら19ビットのアドレス空間をアクセスすることができ
る。
ットであるが、16ビットのアドレス信号では充分でな
い場合が当然考えられる。そこで、本楽音発生部1−5
においては、タブレットデータTABの上位3ビットを
用いてアドレス空間が拡張できるようになっている。
Ilo 2−10におけるラッチ10−3がアドレス空
間拡張用のラッチであり、ラッチ10−3にタブレット
データTARの上位3ビットがラッチされる。即ち: 押鍵によりイニシャルモードになると、 RAM5−4
に格納されたタブレットデータがMS112−11を介
してRAM7−3のレジスタTAB’に格納される。次
いでノ−マルモードに入ると、RAM?−3のレジスタ
TAB’の値が読み出され、MSll12−11を介し
てIlo 2−10におけるラッチ10−3にラッチさ
れる。このようにして内部演算は16ビットでありなが
ら19ビットのアドレス空間をアクセスすることができ
る。
■ 波形読み出し
波形読み出しはタイムスロット(2)、 (4)にて行
われたアドレスに基づいて行われる。タイムスロット(
2)による演算結果はCパス、 51128、HLババ
スSす30. Dバスを介してIlo 2−10のラッ
チ10−1にラッチされる。まず、ラッチ10−1の出
力がシフタセレクタ1O−9、ラッチ1O−4、ビット
処理回路10−10を介してラッチ10−5にラッチさ
れてラッチ10−3によるデータとともにデータバンク
1−6を読み出し、データバンク1−6の出力がラッチ
10−8にラッチされる。次いで、ラッチ10−1の出
力がシフタセレクタ10−9にて1ビット右シフトされ
、MSBに1”が加えられてラッチl0−4でラッチさ
れる。ラッチ10−4の出力がビット処理回路10−1
0を介してラッチ10−5にラッチされ、ラッチ10−
3によるデータとともにデータバンク1−6を読み出し
、データバンク1−6の出力がラッチ10−7にラッチ
される。この時ラッチ10−7の上位8ビットにはラッ
チ1o−8の出力が与えられているので、前回のデータ
バンク1−6の値とともにラッチされる。ここで、ラッ
チ10−7の下位8ビットにラッチされたデータは、デ
ータバンクの項で述べたとおり12ビット波形の下位4
ビット2ワード分に相当する。ラッチ1o−7の出力は
セレクタ10−12を介してシフタ10−13に与えら
れ、上位8ビットは4ビット右にシフトされ。
われたアドレスに基づいて行われる。タイムスロット(
2)による演算結果はCパス、 51128、HLババ
スSす30. Dバスを介してIlo 2−10のラッ
チ10−1にラッチされる。まず、ラッチ10−1の出
力がシフタセレクタ1O−9、ラッチ1O−4、ビット
処理回路10−10を介してラッチ10−5にラッチさ
れてラッチ10−3によるデータとともにデータバンク
1−6を読み出し、データバンク1−6の出力がラッチ
10−8にラッチされる。次いで、ラッチ10−1の出
力がシフタセレクタ10−9にて1ビット右シフトされ
、MSBに1”が加えられてラッチl0−4でラッチさ
れる。ラッチ10−4の出力がビット処理回路10−1
0を介してラッチ10−5にラッチされ、ラッチ10−
3によるデータとともにデータバンク1−6を読み出し
、データバンク1−6の出力がラッチ10−7にラッチ
される。この時ラッチ10−7の上位8ビットにはラッ
チ1o−8の出力が与えられているので、前回のデータ
バンク1−6の値とともにラッチされる。ここで、ラッ
チ10−7の下位8ビットにラッチされたデータは、デ
ータバンクの項で述べたとおり12ビット波形の下位4
ビット2ワード分に相当する。ラッチ1o−7の出力は
セレクタ10−12を介してシフタ10−13に与えら
れ、上位8ビットは4ビット右にシフトされ。
ラッチ10−1の出力のLSB=Oならば下位8ビット
も4ビット右シフトされ、LSB=1ならば下位4ビッ
トがシフトされずにシフタ10−13より出方される。
も4ビット右シフトされ、LSB=1ならば下位4ビッ
トがシフトされずにシフタ10−13より出方される。
ここで、コントロールデータC0NTにおいてw8=1
即ち8ビット波形の指定がある場合には、シフタ10−
13は下位4ビットを91 Q #にして出力する。シ
フタ10−13の出力はノイズ回路10−14、ラッチ
10−2を介してDバスに与えられ、 MSW2−11
を介してRAM7−3のレジスタVRIに格納される。
即ち8ビット波形の指定がある場合には、シフタ10−
13は下位4ビットを91 Q #にして出力する。シ
フタ10−13の出力はノイズ回路10−14、ラッチ
10−2を介してDバスに与えられ、 MSW2−11
を介してRAM7−3のレジスタVRIに格納される。
この値が波形1の波形データである。
タイムスロット(4)によって得られたアドレスについ
ても同様の一理が行われる。ただし、コントロールデー
タC0NTにおいてNA = 00でない場合にはノイ
ズ回路10−14においてノイズ信号が加えられる。
<N=01の時にはビット9が、NA=IOの時にはビ
ット10が、NA=11の時にはビット9及び10がノ
イズ信号におきかえられる。このようにして、加算器を
用いずにノイズ信号を重畳している。これが波形2の波
形データとしてRAM?−2のレジスタWR2に格納さ
れる。
ても同様の一理が行われる。ただし、コントロールデー
タC0NTにおいてNA = 00でない場合にはノイ
ズ回路10−14においてノイズ信号が加えられる。
<N=01の時にはビット9が、NA=IOの時にはビ
ット10が、NA=11の時にはビット9及び10がノ
イズ信号におきかえられる。このようにして、加算器を
用いずにノイズ信号を重畳している。これが波形2の波
形データとしてRAM?−2のレジスタWR2に格納さ
れる。
■ エンベロープ乗算
上記のようにして波形1.波形2の2種類の波形データ
が得られたが、この波形データに対してエンベロープの
乗算を行う。波形1に対するエンベロープはRAM7−
3のレジスタERIに、波形2に対するエンベロープは
RAM7−3のレジスタER2に入っている。ここで、
エンベロープについて述べると。
が得られたが、この波形データに対してエンベロープの
乗算を行う。波形1に対するエンベロープはRAM7−
3のレジスタERIに、波形2に対するエンベロープは
RAM7−3のレジスタER2に入っている。ここで、
エンベロープについて述べると。
エンベロープは指数部4ビット仮数部9ビットの13ヒ
ツト浮動小数点表示になっている。エンベロープ乗算は
各チャンネル2回行わ九るがそれぞれの動作は同様であ
るので、タイムスロット(7)〜(9)におけるWRI
XERIの演算について説明する。
ツト浮動小数点表示になっている。エンベロープ乗算は
各チャンネル2回行わ九るがそれぞれの動作は同様であ
るので、タイムスロット(7)〜(9)におけるWRI
XERIの演算について説明する。
RAM7−3ノL/ジXJERI(7)データがMSV
2−11を介してMPLY2−7のラッチ9−3及びラ
ッチ9−5にラッチされる。ここで、ラッチ9−3には
レジスタERIの下位10ビットが、ラッチ9−5には
レジスタERIのビット9−12がラッチされる。次い
でRAM?−3のレジスタvRI(7)データがMSV
2−11を介しrMPLY2−7ノ5 ッf9−1にラ
ッチされる。ラッチ9−3の出力はビット処理回路9−
12においてそのMSBが°゛1”にされてラッチ9−
4にラッチされる。即ち、ラッチ9−4にはエンベロー
プの仮定部がラッチされる。ラッチ9−1の出力はシフ
タ9−11を介してラッチ9−2にラッチされる。この
際エンコーダ9−10のC入力にはSQ倍信号よって1
が与えられており、シフタ9−11のC入力には000
01が与えられる。故にシフタ9−11はラッチ9−1
の下位12ビット即ちデータバンク1−6より読み出し
た波形1の波形データ12ビットをラッチ9−2へ送出
する。乗算器9−16がラッチ9−2及びラッチ9−4
のデータの乗算を行い、積14ビットがラッチ9−7に
ラッチされ、シフタ9−15へ送出される。
2−11を介してMPLY2−7のラッチ9−3及びラ
ッチ9−5にラッチされる。ここで、ラッチ9−3には
レジスタERIの下位10ビットが、ラッチ9−5には
レジスタERIのビット9−12がラッチされる。次い
でRAM?−3のレジスタvRI(7)データがMSV
2−11を介しrMPLY2−7ノ5 ッf9−1にラ
ッチされる。ラッチ9−3の出力はビット処理回路9−
12においてそのMSBが°゛1”にされてラッチ9−
4にラッチされる。即ち、ラッチ9−4にはエンベロー
プの仮定部がラッチされる。ラッチ9−1の出力はシフ
タ9−11を介してラッチ9−2にラッチされる。この
際エンコーダ9−10のC入力にはSQ倍信号よって1
が与えられており、シフタ9−11のC入力には000
01が与えられる。故にシフタ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バスよりMSW 2
−11を介してRAM7−1のレジスタVEIに格納さ
れる。波形2の波形データとエンベロープの乗算も同様
にして行ねれRAM?−4のレジスタvE2に格納され
る。
されており、ラッチ9−6を介してデゴーダ9−13に
てデコードされ、セレクタ9−14を介してシフタ9−
15に制御信号として与えられる。故に、ラッチ9−7
の出力はエンベロープの指数部によってシフトされ、ラ
ッチ9−8にてラッチされる。このようにして、固定小
数点の波形データと浮動小数点のエンベロープの乗算が
行われる。ラッチ9−8の出力はLバスよりMSW 2
−11を介してRAM7−1のレジスタVEIに格納さ
れる。波形2の波形データとエンベロープの乗算も同様
にして行ねれRAM?−4のレジスタvE2に格納され
る。
■ 2波混合
上記のようにして、レジスタ%lE1. vEzに波形
が格納された。このステップではVEIと1IE2の和
を求める。タイムスロット(1)における演算がこれに
相当する。
が格納された。このステップではVEIと1IE2の和
を求める。タイムスロット(1)における演算がこれに
相当する。
■ CN乗算
タイムスロット(1)で2波混合を行うが1本楽音発生
部1−5においては、ABM2−9及びフィルタ1−7
の特性によっては音名に応じて発生される音圧レベルが
異なる場合がある。このための補正を行うのがCN乗算
である。ここでは補正の為の係数としてノート係数CN
をそのまま用いている。タイムスロット(1)における
VB2 + WEIの演算結果が、Cバスより5112
8. HLババス 51129、LバXを介シテMPL
Y2−7のラッチ9−1にラッチされる。一方メモリ2
−5のROM7−5よりノートデータNDに応じてノー
ト係数CNが読み出され、HDババス5V24、Lバス
を介してMPLY2−7のラッチ9−3にラッチされる
。
部1−5においては、ABM2−9及びフィルタ1−7
の特性によっては音名に応じて発生される音圧レベルが
異なる場合がある。このための補正を行うのがCN乗算
である。ここでは補正の為の係数としてノート係数CN
をそのまま用いている。タイムスロット(1)における
VB2 + WEIの演算結果が、Cバスより5112
8. HLババス 51129、LバXを介シテMPL
Y2−7のラッチ9−1にラッチされる。一方メモリ2
−5のROM7−5よりノートデータNDに応じてノー
ト係数CNが読み出され、HDババス5V24、Lバス
を介してMPLY2−7のラッチ9−3にラッチされる
。
ここで、VEI−IE2は16ビットのデータであるが
乗算器9−16のA入力は12ビットであるのでMPL
Y2−7では次のような処理を行っている。即ち、ラッ
チ9−1の上位5ビットがエンコーダ9−1oに入力さ
れ、エンコーダ9−10が第9表に示すとおりのデータ
をA、8両端子より出力する。つまり、ラッチ9−1に
おけるデータが実質何ビットで・あるかを求め、この結
果に応じてシフタ9−11によってラッチ9−1より1
2ビットをとり出す。例えば、ラッチ9−1の値が3A
261゜の場合は、このデータは実質15ビットのデー
タであるのでシフタ9−11はラッチ9−1のビット1
4以下の12ビットをとり出し、シフタ9−11の出力
は7441.となる、このようにして11E2 + I
EIの実質の部分とノート係数との乗算を行い、シフタ
9−15によって元のビット数にもどし。
乗算器9−16のA入力は12ビットであるのでMPL
Y2−7では次のような処理を行っている。即ち、ラッ
チ9−1の上位5ビットがエンコーダ9−1oに入力さ
れ、エンコーダ9−10が第9表に示すとおりのデータ
をA、8両端子より出力する。つまり、ラッチ9−1に
おけるデータが実質何ビットで・あるかを求め、この結
果に応じてシフタ9−11によってラッチ9−1より1
2ビットをとり出す。例えば、ラッチ9−1の値が3A
261゜の場合は、このデータは実質15ビットのデー
タであるのでシフタ9−11はラッチ9−1のビット1
4以下の12ビットをとり出し、シフタ9−11の出力
は7441.となる、このようにして11E2 + I
EIの実質の部分とノート係数との乗算を行い、シフタ
9−15によって元のビット数にもどし。
ラッチ9−9でラッチする。
以上のようにして少ないビット数の乗算器を用いて大き
なビット数のデータの乗算を行っている。
なビット数のデータの乗算を行っている。
このようにして得られた値をDAC2−8へ出力し、A
BM2−9で所定の周期に補正されて楽音信号として出
力される。
BM2−9で所定の周期に補正されて楽音信号として出
力される。
ところで、本楽音発生部1−5においては、先に述べた
ようにマイコンの指示により第1表のフラグVOLによ
り、 CN乗算をVLD乗算に切換えることができる。
ようにマイコンの指示により第1表のフラグVOLによ
り、 CN乗算をVLD乗算に切換えることができる。
即ち、ロングシーケンスにおいて、RAM5−6のレジ
スタVLD 8ビットが、MSW2−11を介してRA
M7−4のレジスタLVD’に送られる。送出の際にM
SW2−11においてビットシフトがなされ、8ビット
のデータを2ビット左シフトし更に下位2ビットに0”
を追加し、lOビットのデータに変換される。このこと
によりVLDのビット数はCNのビット数と同一となる
。 VB2−IJEIの値にROM7−5の値を掛ける
か、レジスタVLD’の値を掛は合わせるかは第1表に
おけるフラグVOLで決まり、VOL=OならばROM
7−5がHDバスニデータを送出し、 VOL= 1な
らばRAM?−4がHDババスデータを送出する。
スタVLD 8ビットが、MSW2−11を介してRA
M7−4のレジスタLVD’に送られる。送出の際にM
SW2−11においてビットシフトがなされ、8ビット
のデータを2ビット左シフトし更に下位2ビットに0”
を追加し、lOビットのデータに変換される。このこと
によりVLDのビット数はCNのビット数と同一となる
。 VB2−IJEIの値にROM7−5の値を掛ける
か、レジスタVLD’の値を掛は合わせるかは第1表に
おけるフラグVOLで決まり、VOL=OならばROM
7−5がHDバスニデータを送出し、 VOL= 1な
らばRAM?−4がHDババスデータを送出する。
上記のように構成することにより、マイコン1−4によ
って楽音発生部1−5の出力する楽音信号のレベルを変
えることが可能となり、第1表のVLDの値を順次変え
ることにより振幅変調をかけることが可能となる。
って楽音発生部1−5の出力する楽音信号のレベルを変
えることが可能となり、第1表のVLDの値を順次変え
ることにより振幅変調をかけることが可能となる。
鍵盤を押下する速さと圧力の少なくとも一方に基づきV
LDを作成すると、タッチレスポンス機能が実現する。
LDを作成すると、タッチレスポンス機能が実現する。
タッチレスポンス機能とは鍵盤の操作の速さ・強さ等に
よって音量・音色等が変化することである0例えばピア
ノは、強く打鍵すると音量が大きいだけでなく音色も華
やかなものになり、弱く打鍵すると音量が小さいだけで
なく音色もこもったものどなる。打鍵の強さに応じて音
量も音色も自在に変化するが、ピアノの場合は打鍵の後
、鍵盤を押す強さを変化させても、減衰しつつある音質
には変化を加えることができない、このようにピアノは
打鍵の強さのみがタッチレスポンス機能となっていて、
このような機能を特にイニシャルタッチコントロールと
呼ぶ。一般に打楽器がこれに属する。
よって音量・音色等が変化することである0例えばピア
ノは、強く打鍵すると音量が大きいだけでなく音色も華
やかなものになり、弱く打鍵すると音量が小さいだけで
なく音色もこもったものどなる。打鍵の強さに応じて音
量も音色も自在に変化するが、ピアノの場合は打鍵の後
、鍵盤を押す強さを変化させても、減衰しつつある音質
には変化を加えることができない、このようにピアノは
打鍵の強さのみがタッチレスポンス機能となっていて、
このような機能を特にイニシャルタッチコントロールと
呼ぶ。一般に打楽器がこれに属する。
一方、トランペットは息の強さにより持続している音質
をも変化することができるので、この音を模倣して電子
楽器の鍵盤操作で演奏する場合も。
をも変化することができるので、この音を模倣して電子
楽器の鍵盤操作で演奏する場合も。
押鍵によりトランペット音を発生中に押鍵の強さを増減
することで音量・音色に変化を与えることが必要となる
。このような機能を特にアフタータッチコントロールと
呼ぶ、一般に1弦楽器と管楽器がこれに属する。
することで音量・音色に変化を与えることが必要となる
。このような機能を特にアフタータッチコントロールと
呼ぶ、一般に1弦楽器と管楽器がこれに属する。
本発明の実施例では先に述べたように、VOLフラグに
よりVLD乗算を行うことにより、各チャンネル独立に
音量を制御することができる。
よりVLD乗算を行うことにより、各チャンネル独立に
音量を制御することができる。
応用例として、打鍵の強さを計測して、強さに応じてV
LDの値を作成してマイコンから転送することにより、
打鍵毎に転送された異なるVLDに応じて各音の音量が
変化することになる゛。
LDの値を作成してマイコンから転送することにより、
打鍵毎に転送された異なるVLDに応じて各音の音量が
変化することになる゛。
マイコンがVLDを転送する際、VLDの値に応じてタ
ブレットデータを切換えて転送すると、本実施例の楽音
発生部はVLDの値に応じて音量と共に音色をも変化さ
せられることは、先に掲げた機能説明で明らかである。
ブレットデータを切換えて転送すると、本実施例の楽音
発生部はVLDの値に応じて音量と共に音色をも変化さ
せられることは、先に掲げた機能説明で明らかである。
この音色の切換について、VLDが8ビットの例で説明
する。
する。
第23表に、VLDの値の範囲と、それに対応する強弱
名とタブレット名の一例を示す。
名とタブレット名の一例を示す。
VLDが1ビット小さくなる毎に、音量は1/2つまり
6dB小さくなり、これを音楽用語の強弱名の各々に割
当てである。またffの強さには華やかな音色が必要な
ので高調波の豊富な波形データをタブレットOに割当て
、mpより小さい音量ではこもった音色が必要なので正
弦波に近い波形データをタブレット3に割当てるように
、複数種類の波形データをデータバンクに準備しておく
。
6dB小さくなり、これを音楽用語の強弱名の各々に割
当てである。またffの強さには華やかな音色が必要な
ので高調波の豊富な波形データをタブレットOに割当て
、mpより小さい音量ではこもった音色が必要なので正
弦波に近い波形データをタブレット3に割当てるように
、複数種類の波形データをデータバンクに準備しておく
。
このようにすると、打鍵の強さによってVLDの数値範
囲で音色が4通り切換えられると同時に8ビットのVL
Dに応じて256通りの音量が指定できる。
囲で音色が4通り切換えられると同時に8ビットのVL
Dに応じて256通りの音量が指定できる。
以上はイニシャルタッチコントロールであったが、同様
に打鍵後の押鍵圧の大小に応じて、刻々と変化するVL
Dと、VLDの値に応じて刻々と変化するタブレットデ
ータとをマイコンが送出すると、本実施例の楽音発生部
は打鍵後の押鍵圧の変化に応じて刻々と、音色と音量と
を変化させることができる。
に打鍵後の押鍵圧の大小に応じて、刻々と変化するVL
Dと、VLDの値に応じて刻々と変化するタブレットデ
ータとをマイコンが送出すると、本実施例の楽音発生部
は打鍵後の押鍵圧の変化に応じて刻々と、音色と音量と
を変化させることができる。
以上がアフタータッチコントロールである。
(4) エンベロープ発生方法
楽音発生部1−5におけるエンベロープの発生方法は次
の3ステツプに分けられる。即ち。
の3ステツプに分けられる。即ち。
■ アドレス発生
■ エンベロープデータの読み出し
■ エンベロープ計算
以下各ステップを詳しく説明する。
■ アドレス発生
押鍵によるイニシャル設定にて、ヘッダデータのSTE
(エンベロープデータEl’のスタートアドレス)、
ΔSTE (エンベロープデータEl’のワード数)に
基づいてレジスタEARI、 EAR2,TRI、 T
R2゜ΔTl、ΔT2が初期設定されている。これらの
データをもとにアドレスの演算が行われる。アドレスの
演算は演算頻度が少なくてもよいので演算シーケンスの
ロングシーケンスにて行っている。更、に。
(エンベロープデータEl’のスタートアドレス)、
ΔSTE (エンベロープデータEl’のワード数)に
基づいてレジスタEARI、 EAR2,TRI、 T
R2゜ΔTl、ΔT2が初期設定されている。これらの
データをもとにアドレスの演算が行われる。アドレスの
演算は演算頻度が少なくてもよいので演算シーケンスの
ロングシーケンスにて行っている。更、に。
ロングシーケンスの奇数回目でエンベロープデータEl
′のアドレス演算を、偶数回目でエンベロープデータE
2’のアドレス演算を行っている。
′のアドレス演算を、偶数回目でエンベロープデータE
2’のアドレス演算を行っている。
奇数回目のロングシーケンスにおいて、タイムスロット
(13)で ΔTl + TRI→TRI ・・・・
・・(4−1)タイムスロット(15)で ΔEARI + EARI +Ci 4 EARI
・・・・・・(4−2)の演算が行われEARIの値
を用いてデータバンク1−6の読み出しを行う。タイム
スロット(15)のCiはタイムスロット(13)にて
行われるΔT1の累算によって生じたオーバーフローに
当る。ここで演算(4−1)を詳しく説明する。
(13)で ΔTl + TRI→TRI ・・・・
・・(4−1)タイムスロット(15)で ΔEARI + EARI +Ci 4 EARI
・・・・・・(4−2)の演算が行われEARIの値
を用いてデータバンク1−6の読み出しを行う。タイム
スロット(15)のCiはタイムスロット(13)にて
行われるΔT1の累算によって生じたオーバーフローに
当る。ここで演算(4−1)を詳しく説明する。
先ず、RAM7−2のレジスタΔT1の値がHBババス
MS++12−11を介しテFA2−6(7)ラッチ8
−H;−ラッチサレる。同時に、 RAM7−3のレジ
スタTRIの値がHCバス、MS112−11を介しテ
FA2−6ノ5 フチ8−2ニラツチされる。ラッチ8
−1の出力はビット処理回路8−10によってビット3
が強制的にII OIPにされ(ビット3を°゛0”に
する理由は後で述べる。)、ラッチ8−3でラッチされ
る。ラッチ8−2の出方はビット処理回路8−11を介
してラッチ8−4でラッチされる。ここでビット処理回
路8−11においてはビットの変換等の処理は施されな
い。ラッチ8−3及びラッチ8−4の出力を加算器8−
9にて加算し、ラッチ8−7、ラッチ8−8を介してC
バスニ与え、l’1sv2−11を介しテRAM7−:
M) L/ シスタTRIに加算結果を格納する。ここ
で加算結果にオーバーフローが生じた場合は、加算器8
−9のCoより1″が出力される。この出力をラッチ8
−6にてラッチし、タイムスロット15の演算の際に使
用する。但し、これは波形データにPCM部がない場合
についてであり、波形データにPCM部がある場合(フ
ラグPCM=1)にはPCM部を読み終えるまでレジス
タTRIに対し演算結果として強制的に0″が入力され
る。故にΔT1の累算によるオーバーフローが生じるこ
とがない為P側を読み終えるまではEARLの値が更新
されることはない。
MS++12−11を介しテFA2−6(7)ラッチ8
−H;−ラッチサレる。同時に、 RAM7−3のレジ
スタTRIの値がHCバス、MS112−11を介しテ
FA2−6ノ5 フチ8−2ニラツチされる。ラッチ8
−1の出力はビット処理回路8−10によってビット3
が強制的にII OIPにされ(ビット3を°゛0”に
する理由は後で述べる。)、ラッチ8−3でラッチされ
る。ラッチ8−2の出方はビット処理回路8−11を介
してラッチ8−4でラッチされる。ここでビット処理回
路8−11においてはビットの変換等の処理は施されな
い。ラッチ8−3及びラッチ8−4の出力を加算器8−
9にて加算し、ラッチ8−7、ラッチ8−8を介してC
バスニ与え、l’1sv2−11を介しテRAM7−:
M) L/ シスタTRIに加算結果を格納する。ここ
で加算結果にオーバーフローが生じた場合は、加算器8
−9のCoより1″が出力される。この出力をラッチ8
−6にてラッチし、タイムスロット15の演算の際に使
用する。但し、これは波形データにPCM部がない場合
についてであり、波形データにPCM部がある場合(フ
ラグPCM=1)にはPCM部を読み終えるまでレジス
タTRIに対し演算結果として強制的に0″が入力され
る。故にΔT1の累算によるオーバーフローが生じるこ
とがない為P側を読み終えるまではEARLの値が更新
されることはない。
ΔT1はイニシャル処理の項で述べたとおり第13表に
おけるC=0時のD出力の値であり、レジスタT旧は1
6ビットのレジスタであるので、例えばΔT1=400
01.であれば演算(4−1)は4回行われるとレジス
タTRIはオーバーフローし、演算(4−2)のC1=
1となりアドレスの更新が行われる。ここで、演算(4
−1)、 (4−2)はロングシーケンスの2回に1回
行われる。第1図(ハ)で示すとおり、同じチャンネル
のロングシーケンスは388タイムスロツトの周期、即
ち1タイムスロツトは250nsであるので97μsの
周期に現われる。故に演算(4−1)、 (4−2)は
194μs毎に行われ、ΔT1=4000..である場
合には776μSでアドレスの更新が行われることにな
る。
おけるC=0時のD出力の値であり、レジスタT旧は1
6ビットのレジスタであるので、例えばΔT1=400
01.であれば演算(4−1)は4回行われるとレジス
タTRIはオーバーフローし、演算(4−2)のC1=
1となりアドレスの更新が行われる。ここで、演算(4
−1)、 (4−2)はロングシーケンスの2回に1回
行われる。第1図(ハ)で示すとおり、同じチャンネル
のロングシーケンスは388タイムスロツトの周期、即
ち1タイムスロツトは250nsであるので97μsの
周期に現われる。故に演算(4−1)、 (4−2)は
194μs毎に行われ、ΔT1=4000..である場
合には776μSでアドレスの更新が行われることにな
る。
ところで、エンベロープデータは2バイトで構成されて
いるので、アドレスの更新の際は2ずつ更新されなけれ
ばならない。タイムスロット(15)においては次のよ
うにしてアドレスの更新を行っている。
いるので、アドレスの更新の際は2ずつ更新されなけれ
ばならない。タイムスロット(15)においては次のよ
うにしてアドレスの更新を行っている。
先ず、Δ11!ARIはΔT1によって定まる値であり
、ΔTl≠00081.の時にはΔEARL:0000
..であり、ΔTl = 0008□6の時にはΔEA
RI =FFEB、、 =−211゜である。この操作
はMSV2−11における51131にて行われる。
5W31は第11図(す)に示すようになっており、Δ
Tlのビット3の値を示すフラグTOによって制御して
いる。今仮にΔT1≠0008..とすると、5V31
によりAバスにoooo、、が、RAM7−1のレジス
タEARIよりHAバX、 N5w2−11(7)SW
2を介してBバス4:EARI(7)値が与えられる。
、ΔTl≠00081.の時にはΔEARL:0000
..であり、ΔTl = 0008□6の時にはΔEA
RI =FFEB、、 =−211゜である。この操作
はMSV2−11における51131にて行われる。
5W31は第11図(す)に示すようになっており、Δ
Tlのビット3の値を示すフラグTOによって制御して
いる。今仮にΔT1≠0008..とすると、5V31
によりAバスにoooo、、が、RAM7−1のレジス
タEARIよりHAバX、 N5w2−11(7)SW
2を介してBバス4:EARI(7)値が与えられる。
これらの値がFA2−6のラッチ8−1゜ラッチ8−2
にラッチされる。ラッチ8−1の出力はビット処理回路
8−10を介してラッチ8−3へ送られる。
にラッチされる。ラッチ8−1の出力はビット処理回路
8−10を介してラッチ8−3へ送られる。
ここで、ビット処理回路8−10ではデータの変換は行
われないようになっている。同時に、ラッチ8−2の出
力はビット処理回路8−11に与えられ、データのLS
Bが強制的に1”にされてラッチ8−4へ送られる。即
ちビット処理回路8−11にて予め1が加えられる。ま
た、先に述べたラッチ8−6に格納されている演算(4
−1)によるオーバーフローがラッチ8−5にラッチさ
れる。故にラッチ8−3.ラッチ8−4及びラッチ8−
5の値の加算を行うと、ラッチ8−5の値がu 1 t
tであればEAR1の値に2”が加えられることになる
。一方、ラッチ8−5の値が0″の場合はEARLの値
は1増加されたままとなるが、イニシャル処理の項で述
べたように、Ilo 2−10においてLSBに強制的
にnQIgN199を与えるので不都合は生じない。
われないようになっている。同時に、ラッチ8−2の出
力はビット処理回路8−11に与えられ、データのLS
Bが強制的に1”にされてラッチ8−4へ送られる。即
ちビット処理回路8−11にて予め1が加えられる。ま
た、先に述べたラッチ8−6に格納されている演算(4
−1)によるオーバーフローがラッチ8−5にラッチさ
れる。故にラッチ8−3.ラッチ8−4及びラッチ8−
5の値の加算を行うと、ラッチ8−5の値がu 1 t
tであればEAR1の値に2”が加えられることになる
。一方、ラッチ8−5の値が0″の場合はEARLの値
は1増加されたままとなるが、イニシャル処理の項で述
べたように、Ilo 2−10においてLSBに強制的
にnQIgN199を与えるので不都合は生じない。
ところでΔTl = 00081.の場合には、ΔEA
RIがFFEBl、 (−21,。)となる、故にEA
RIの値から21□。引かれることになり、 10ワー
ド前のエンベロープデータが読まれることになる。これ
により、エンベロープデータのアドレスがループするこ
とになり、マンドリンのようなくり返しエンベロープを
発生することができる。先に演算(4−1)にて、ビッ
ト処理回路8−10にてビット3を′0”にすると述べ
たが、その理由はビット3がΔEARL =FFEB工
、とするビットであり、この演算を行う際にレジスタT
RIにoooal、を加えないようにする為である。
RIがFFEBl、 (−21,。)となる、故にEA
RIの値から21□。引かれることになり、 10ワー
ド前のエンベロープデータが読まれることになる。これ
により、エンベロープデータのアドレスがループするこ
とになり、マンドリンのようなくり返しエンベロープを
発生することができる。先に演算(4−1)にて、ビッ
ト処理回路8−10にてビット3を′0”にすると述べ
たが、その理由はビット3がΔEARL =FFEB工
、とするビットであり、この演算を行う際にレジスタT
RIにoooal、を加えないようにする為である。
ロングシーケンスの偶数回目におけるAr2゜TR2,
ΔEAR2,EAR2の演算も同様にして行われる。
ΔEAR2,EAR2の演算も同様にして行われる。
なお、 EARL、 EAR2に関する演算は全く独立
に行われる為、波形1.波形2に対して全く異なったエ
ンベロープ信号を発生させることができるのは言うまで
もない。また、EAR1又はEAR2のくり返しについ
てもくり返しの周期を異ならしめることが容易であるの
で種々の効果を得ることができる。
に行われる為、波形1.波形2に対して全く異なったエ
ンベロープ信号を発生させることができるのは言うまで
もない。また、EAR1又はEAR2のくり返しについ
てもくり返しの周期を異ならしめることが容易であるの
で種々の効果を得ることができる。
■ エンベロープデータの読み出し
エンベロープデータの読み出しはロングシーケンスにお
いて行い、偶数回目に波形1のエンベロープデータを、
奇数回目に波形2のエンベロープデータの読み出しを行
う。
いて行い、偶数回目に波形1のエンベロープデータを、
奇数回目に波形2のエンベロープデータの読み出しを行
う。
レジスタEARI、 EAR2の値に基づいて行うエン
ベロープデータの読み出し方についてはイニシャル処理
の項で述べたものと全く同じであり、l102−10に
てデータバンク1−6より読みとったデータのフォーマ
ット変換を行いながらレジスタΔTl。
ベロープデータの読み出し方についてはイニシャル処理
の項で述べたものと全く同じであり、l102−10に
てデータバンク1−6より読みとったデータのフォーマ
ット変換を行いながらレジスタΔTl。
Ar1. AZI、 AZ2.ΔEl、ΔE2に格納し
ていく。
ていく。
■ エンベロープ計算
エンベロープデータの読み出しにより、Δ21゜ΔZ2
.ΔEl、ΔE2にデータが格納されており、またイニ
シャル処理によりERI、 ER2,ZRI、 ZR2
ニ初期値が与えられている。これらの値に応じてエンベ
ロープ計算を行う。
.ΔEl、ΔE2にデータが格納されており、またイニ
シャル処理によりERI、 ER2,ZRI、 ZR2
ニ初期値が与えられている。これらの値に応じてエンベ
ロープ計算を行う。
エンベロープ計算の基本は加算部のタイムスロット(3
)、 (5)、 (6)、 (8)である、タイムスロ
ット(3)、 (5)によって波形lのエンベロープを
計算し、タイムスロット(6)、 (8)によって波形
2のエンベロープを計算する。ここで、タイムスロット
(5)。
)、 (5)、 (6)、 (8)である、タイムスロ
ット(3)、 (5)によって波形lのエンベロープを
計算し、タイムスロット(6)、 (8)によって波形
2のエンベロープを計算する。ここで、タイムスロット
(5)。
(8)のCLはタイムスロット(3)、 (6)による
演算で生じたオーバーフローであるが、タイムスロット
(3)、 (6)にて生じたオーバーフローがどのよう
にしてタイムスロット(5)、 (8)で加えられるか
については、アドレス発生のタイムスロット(13)。
演算で生じたオーバーフローであるが、タイムスロット
(3)、 (6)にて生じたオーバーフローがどのよう
にしてタイムスロット(5)、 (8)で加えられるか
については、アドレス発生のタイムスロット(13)。
(15)で述べたものと同様である。このようにして得
られたERI、 ER2の値がエンベロープデータであ
る。
られたERI、 ER2の値がエンベロープデータであ
る。
ところで、エンベロープ計算は各種モードによって異な
る。各種モードとは。
る。各種モードとは。
1)波形がPCMを有する場合と有しない場合。
(PCM = l10)
2) ピアノ型エンベロープの場合とオルガン型エンベ
ロープの場合。(Plo = l10)3) ダンパフ
ラグをオンした場合とオフした場合。(DMP = l
10) の3種である。以下側々の場合について説明する。
ロープの場合。(Plo = l10)3) ダンパフ
ラグをオンした場合とオフした場合。(DMP = l
10) の3種である。以下側々の場合について説明する。
PCM部0かつP10=0
初期設定はERI、 ER2,ZRI、 ZR2とも0
”であり、鍵が押圧されている時はレジスタΔEl、Δ
E2゜ΔZl、Δz2の値に従ってエンベロープの演算
を行う。鍵が離されると、タイムスロット(3)、 (
5)。
”であり、鍵が押圧されている時はレジスタΔEl、Δ
E2゜ΔZl、Δz2の値に従ってエンベロープの演算
を行う。鍵が離されると、タイムスロット(3)、 (
5)。
(6)、 (8)(7)AZI、 AEI、 AZ2.
AE2(7)値トシテ。
AE2(7)値トシテ。
UCIF2−3の信号処理器5−6よりリリースデータ
が発生され、レジスタΔZl、ΔEl、ΔZ2.ΔE2
の値のかわりに用いられる。
が発生され、レジスタΔZl、ΔEl、ΔZ2.ΔE2
の値のかわりに用いられる。
なお、このモードにおいてはダンパフラグDMPによっ
て演算は何ら影響はされない。
て演算は何ら影響はされない。
PCM=OかっP10=1
初期設定はERI、 ER2,ZRI、 ZR2トも”
o”i’アリ、鍵が押圧されている時はレジスタΔEl
、ΔE2゜ΔZl、Δz2の値に従ってエンベロープの
演算を行う、鍵が離されると、ダンパフラグDMP=1
の場合は引き続きレジスタΔEl、ΔE2.Δz1.Δ
z2の値に従ってエンベロープの演算を行い、ダンパフ
ラグDMP= O(7)時はPcM=oがっP10=o
の場合と同じである。
o”i’アリ、鍵が押圧されている時はレジスタΔEl
、ΔE2゜ΔZl、Δz2の値に従ってエンベロープの
演算を行う、鍵が離されると、ダンパフラグDMP=1
の場合は引き続きレジスタΔEl、ΔE2.Δz1.Δ
z2の値に従ってエンベロープの演算を行い、ダンパフ
ラグDMP= O(7)時はPcM=oがっP10=o
の場合と同じである。
PCM部1かっP10=0
初期設定は、EA1=IFFF1. 、 ER2= O
、ZR1= O。
、ZR1= O。
ZR2=Oである。鍵が押圧されており、波形1がPC
M部を読み出している時は初期値が保持され、PCM部
を読み終えると、レジスタΔEl、ΔE2゜ΔZl、Δ
z2の値に従ってエンベロープの演算を行う。鍵が離さ
れると、波形1がPCM部を読み出しているいないに関
係なく UCIF2−3の信号処理器5−6によるリリ
ースデータに基づいて演算が行われる。
M部を読み出している時は初期値が保持され、PCM部
を読み終えると、レジスタΔEl、ΔE2゜ΔZl、Δ
z2の値に従ってエンベロープの演算を行う。鍵が離さ
れると、波形1がPCM部を読み出しているいないに関
係なく UCIF2−3の信号処理器5−6によるリリ
ースデータに基づいて演算が行われる。
即ちPCM=OかつP10=Oの場合に帰着する。
なお、このモードにおいてはダンパフラグDMPによっ
て演算は何ら影響を受けない。
て演算は何ら影響を受けない。
PCM=1かつP10=1
初期設定は、ER1=IFFF、6. ER2= O、
ZR1= O。
ZR1= O。
ZR2=Oである。ダンパフラグDMP=Oの場合は、
1度鍵が押圧されると離鍵のタイミングには無関係に演
算が行われる。即ち、波形1がPCM部を読み出しティ
る時にはレジスタHR1,ER2,ZRI、 ZR2は
初期値が保持され、 PCM部を読み終えるとレジスタ
ΔEl、ΔE2.ΔZl、Δz2の値に従って演算が開
始される。ダンパフラグDMP=1の場合は、PCM=
1かつP10=Oの場合と全く同じである。
1度鍵が押圧されると離鍵のタイミングには無関係に演
算が行われる。即ち、波形1がPCM部を読み出しティ
る時にはレジスタHR1,ER2,ZRI、 ZR2は
初期値が保持され、 PCM部を読み終えるとレジスタ
ΔEl、ΔE2.ΔZl、Δz2の値に従って演算が開
始される。ダンパフラグDMP=1の場合は、PCM=
1かつP10=Oの場合と全く同じである。
以上述べたように、種々のモードに応じて自由にエンベ
ロープ信号を発生することができる。また、ΔEl、Δ
Z1とΔE2.Δz2は全く独立に設定でき、そのデー
タはアドレス発生の項にて明らかなとおりΔTl、ΔT
2によって定まる時間で更新されるので前述の2種類の
波形データと相俟って種々の楽音が発生できる。
ロープ信号を発生することができる。また、ΔEl、Δ
Z1とΔE2.Δz2は全く独立に設定でき、そのデー
タはアドレス発生の項にて明らかなとおりΔTl、ΔT
2によって定まる時間で更新されるので前述の2種類の
波形データと相俟って種々の楽音が発生できる。
(発明の効果)
以上のように本発明はデータの第1番目のワードのデー
タの上位Mビットと下位(N−M)ビットが上記記憶装
置に格納されているアドレスを各々AiとBiとすると
、 Bi == 豊+N二且・Ai M 但し[]はガウス記号であり、[]内の数値の整数部を
表す。
タの上位Mビットと下位(N−M)ビットが上記記憶装
置に格納されているアドレスを各々AiとBiとすると
、 Bi == 豊+N二且・Ai M 但し[]はガウス記号であり、[]内の数値の整数部を
表す。
の関係で上記データが格納されている記憶装置を有し、
上記アドレスBiは上記アドレスAiを、Ωogz N
:y (但し[コはガウス記号である。)ビット
だけ右シフトして且つ最上位を含む少なくとも1ビット
に1を付与することによって作成するアドレス作成器を
有することにより、 ROMの使用効率が向上し、少な
いメモリエリアでより充実したデータを有する情報処理
装置を提供することができる。
:y (但し[コはガウス記号である。)ビット
だけ右シフトして且つ最上位を含む少なくとも1ビット
に1を付与することによって作成するアドレス作成器を
有することにより、 ROMの使用効率が向上し、少な
いメモリエリアでより充実したデータを有する情報処理
装置を提供することができる。
第2表
第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図は同じくUCIF2−3の詳細図、第6図は同
じ< CDR2−4の詳細図、第7図は同じくメモリ2
−5の詳細図、第8図は同じ< FA2−6の詳細図、
第9図(イ)は同じくMPLY2−7の詳細図、第9図
(ロ)はMPLY2−7にて使用している乗算器9−1
6の詳細図、第10図は楽音発生部1−5におけるIl
o 2−10の詳細図、第11図(イ)は同じ<MSV
2−11+71詳細図□、第11図(ロ)〜第11図(
す)はMS+12−11に用いられているスイッチのパ
ターン図、第11図(ヌ)はMS+12−11における
データ転送□のタイミング図、第12図はデータバンク
1−6におけるデータフォーマットを示す図、第13図
はデータバンク1−6におけるエンベロープデータのデ
ータフォーマットを示す図、第14図は従来の情報処理
装置のブロック図である・ 1−1・・・鍵盤、l−2・・・タブレット、1−3・
・・効果スイッチ、■−4・・・マイコン、1−5・・
・楽音発生部、1−6データバンク、1−7・・・フィ
ルタ、2−1・・・マスタクロック、2−2・・・シー
ケンサ(SEQ)、2−3・・・マイコンインターフェ
ース部(UCIF)、2−4・・・比較レジスタ部(C
DR)、2−5・・・メモリ、2−6・・・フルアダ一
部(FA)、2−7・・・乗算部(MPLY)、2−8
・・・ディジタルアナログコンバータ(DAC)、 2
−9・・・アナログバツアアメモリ部(ABM)、2−
1O・・・入出力回路部(Ilo)、2−11・・・マ
トリックススイッチ部(MSV)。 特許出願人 松下電器産業株式会社 第1図 (イ) (υ) A/D −C7バ?”−’l− 第2図 長 第4図 Q 第8図 第11図 FA Ml′LT Lゐ第11図 ()) (
+)第12図 第13図 zloの峙 2119綺
のブロック図、第1図(ロ)はマイコンによるデータ転
送のタイミング図、第1図(ハ)は本発明において用い
られている演算タイムスロットを表わす図、第2図は本
発明における楽音発生部1−5の構成図、第3図は楽音
発生部1−5におけるノートクロック発生の原理図、第
4図は楽音発生部1−5における5EQ2−2の詳細図
、第5図は同じくUCIF2−3の詳細図、第6図は同
じ< CDR2−4の詳細図、第7図は同じくメモリ2
−5の詳細図、第8図は同じ< FA2−6の詳細図、
第9図(イ)は同じくMPLY2−7の詳細図、第9図
(ロ)はMPLY2−7にて使用している乗算器9−1
6の詳細図、第10図は楽音発生部1−5におけるIl
o 2−10の詳細図、第11図(イ)は同じ<MSV
2−11+71詳細図□、第11図(ロ)〜第11図(
す)はMS+12−11に用いられているスイッチのパ
ターン図、第11図(ヌ)はMS+12−11における
データ転送□のタイミング図、第12図はデータバンク
1−6におけるデータフォーマットを示す図、第13図
はデータバンク1−6におけるエンベロープデータのデ
ータフォーマットを示す図、第14図は従来の情報処理
装置のブロック図である・ 1−1・・・鍵盤、l−2・・・タブレット、1−3・
・・効果スイッチ、■−4・・・マイコン、1−5・・
・楽音発生部、1−6データバンク、1−7・・・フィ
ルタ、2−1・・・マスタクロック、2−2・・・シー
ケンサ(SEQ)、2−3・・・マイコンインターフェ
ース部(UCIF)、2−4・・・比較レジスタ部(C
DR)、2−5・・・メモリ、2−6・・・フルアダ一
部(FA)、2−7・・・乗算部(MPLY)、2−8
・・・ディジタルアナログコンバータ(DAC)、 2
−9・・・アナログバツアアメモリ部(ABM)、2−
1O・・・入出力回路部(Ilo)、2−11・・・マ
トリックススイッチ部(MSV)。 特許出願人 松下電器産業株式会社 第1図 (イ) (υ) A/D −C7バ?”−’l− 第2図 長 第4図 Q 第8図 第11図 FA Ml′LT Lゐ第11図 ()) (
+)第12図 第13図 zloの峙 2119綺
Claims (1)
- 【特許請求の範囲】 1ワードNビット構成の複数ワードのデータを1ワード
Mビット構成で総ワード数Wの記憶装置に格納する際、
MとNの関係がM<N≦3/2Mの条件下で、 上記データの第i番目のワードのデータの上位Mビット
と下位(N−M)ビットが上記記憶装置に格納されてい
るアドレスを各々AiとBiとすると、Bi=[W/2
+(N−M)/M・Ai] 但し[]はガウス記号であり、[]内の数値の整数部を
表す。 の関係で上記データが格納されている記憶装置を有し、 上記アドレスBiは上記アドレスAiを、 [log_2N/(N−M)](但し[]はガウス記号
である。)ビットだけ右シフトして且つ最上位を含む少
なくとも1ビットに1を付与することによって作成する
アドレス作成器を有することを特徴とする情報処理装置
。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP60091247A JPS61250751A (ja) | 1985-04-30 | 1985-04-30 | 情報処理装置 |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP60091247A JPS61250751A (ja) | 1985-04-30 | 1985-04-30 | 情報処理装置 |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JPS61250751A true JPS61250751A (ja) | 1986-11-07 |
| JPH0584534B2 JPH0584534B2 (ja) | 1993-12-02 |
Family
ID=14021090
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP60091247A Granted JPS61250751A (ja) | 1985-04-30 | 1985-04-30 | 情報処理装置 |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JPS61250751A (ja) |
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2002063070A (ja) * | 2000-08-18 | 2002-02-28 | Fujitsu Ltd | 演算装置及び演算方法 |
-
1985
- 1985-04-30 JP JP60091247A patent/JPS61250751A/ja active Granted
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2002063070A (ja) * | 2000-08-18 | 2002-02-28 | Fujitsu Ltd | 演算装置及び演算方法 |
Also Published As
| Publication number | Publication date |
|---|---|
| JPH0584534B2 (ja) | 1993-12-02 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US5319151A (en) | Data processing apparatus outputting waveform data in a certain interval | |
| US4438502A (en) | Output processing system for a digital electronic musical instrument | |
| JPS5995595A (ja) | 電子楽器 | |
| JPS61250751A (ja) | 情報処理装置 | |
| EP0201998B1 (en) | Electronic musical instrument | |
| JPS61255397A (ja) | 電子楽器 | |
| JPS61240294A (ja) | 電子楽器 | |
| JPS61254992A (ja) | 電子楽器 | |
| JPS61233787A (ja) | 電子楽器 | |
| JPS61248095A (ja) | 電子楽器 | |
| JPS61231598A (ja) | 電子楽器 | |
| JPS61233786A (ja) | 電子楽器 | |
| JPS61240293A (ja) | 電子楽器 | |
| JPS61231597A (ja) | 電子楽器 | |
| JPS61233789A (ja) | 電子楽器 | |
| JPS61246794A (ja) | 電子楽器 | |
| JPS61233788A (ja) | 電子楽器 | |
| JPS61252591A (ja) | 電子楽器 | |
| JPS61233790A (ja) | 電子楽器 | |
| JPH08211879A (ja) | 音響シミュレーション用システム、装置並びに方法 | |
| JPS61249096A (ja) | 電子楽器 | |
| JPS61212899A (ja) | 電子楽器 | |
| JPH0583917B2 (ja) | ||
| JPS61243498A (ja) | 電子楽器 | |
| JPH0419587B2 (ja) |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| EXPY | Cancellation because of completion of term |