(57)【特許請求の範囲】
【請求項１】
予測値に基づいて圧縮符号化された圧縮波形サンプルを記憶した波形サンプル記憶手段と、
ループスタート位置情報およびループエンド位置情報を発生するループ位置情報発生手段と、
所望のピッチ情報を所定周期毎に累算することにより、ループスタート位置を経由してループエンド位置まで順次増加する位相情報を発生するとともに、前記ループ位置情報発生手段から発生されるループエンド位置情報に基づいてループエンド位置に達したと検出された際に、位相情報をループスタート位置にループバックして再び順次増加する位相情報を発生する位相情報発生手段と、
該位相情報発生手段から今回の周期で発生された位相情報に対応した圧縮波形サンプルが記憶されている今回アドレスが、前回の周期で発生された位相情報に対応した圧縮波形サンプルが記憶されている前回アドレスと異なる場合には１ないし複数回前記波形サンプル記憶手段にアクセスして１ないし複数個の圧縮波形サンプルを読み出すと共に、前記今回アドレスが前記前回アドレスと同じ場合には前記波形サンプル記憶手段にアクセスしない読出制御手段と、
該読出制御手段により前記波形サンプル記憶手段から読み出された圧縮波形サンプルを予測値に基づいて所定周期毎に順次に逐一デコードし、その結果を伸長波形サンプルとして順次出力するデコード手段と、
該デコード手段によりデコードされた最新の伸長波形サンプルを含む少なくとも１つの伸長波形サンプルを、一時記憶する第１の一時記憶手段と、
前記ループ位置情報発生手段から発生されるループスタート位置情報に基づいて、前記読出制御手段で最初にループスタート位置の圧縮波形サンプルを読み出した時にデコードされた伸長波形サンプルを、以降にループバックした時の予測値として一時記憶する第２の一時記憶手段と、
所定周期毎に、前記デコード手段から出力される伸長波形サンプル、前記第１の一時記憶手段から出力される伸長波形サンプル、または、前記第２の一時記憶手段から出力される伸長波形サンプルのいずれかを、前記位相情報発生手段から今回の周期で発生された位相情報と前回の周期で発生された位相情報とに基づいて発生された選択制御信号に基づき出力波形サンプルとして選択的に出力する出力手段とを備え、
デコードすべき圧縮波形サンプルに隣接する直前の伸長波形サンプルが前記予測値として前記デコード手段に供給されるよう、前記デコード手段から出力される伸長波形サンプル、前記第１の一時記憶手段から出力される伸長波形サンプル、または、前記第２の一時記憶手段から出力される伸長波形サンプルのいずれかを、前記選択制御信号に基づき選択して前記デコード手段に供給するようにしたことを特徴とする圧縮波形サンプルを用いたループ再生装置。
【請求項２】
前記波形サンプル記憶手段には、圧縮波形サンプルが１アドレスにつきｎ（ｎは２以上の整数）サンプルずつ記憶されており、前記読出制御手段は、所定周期毎に、前記波形サンプル記憶手段を１回アクセスするかまたは全くアクセスしないように動作するものであり、前記第１の一時記憶手段には少なくともｎ個の伸長波形サンプルが記憶され、前記第２の記憶手段にはループスタート位置を含む少なくともｎ個の伸長波形サンプルが記憶されるようにしたことを特徴とする請求項１記載の圧縮波形サンプルを用いたループ再生装置。
【請求項３】
前記位相情報発生手段で発生する位相情報は整数部と小数部とから成り、前記出力手段は、前記位相情報の整数部に基づき少なくとも２つのサンプルを選択するとともに、前記位相情報の小数部に基づき前記少なくとも２つのサンプルを用いて補間演算することにより、前記位相情報に応じた波形サンプルを生成するようにしたことを特徴とする請求項１記載の圧縮波形サンプルを用いたループ再生装置。
【請求項４】
前記所定周期時間を再生チャンネル数で分割したチャンネル時間に対応して時分割動作を行うことにより、複数チャンネルの楽音を再生するようにしたことを特徴とする請求項１記載の圧縮波形サンプルを用いたループ再生装置。
【請求項５】
前記圧縮波形サンプルが差分符号化あるいは適応差分符号化されていることを特徴とする請求項１記載の圧縮波形サンプルを用いたループ再生装置。
【発明の詳細な説明】
【０００１】
【発明が属する技術分野】
本発明は、記憶された差分符号化あるいは適応差分符号化された圧縮波形サンプルを読み出して再生する際に、圧縮波形サンプルの一部を繰り返し読み出すようにしてループ再生するループ再生装置に関する。
【０００２】
【従来の技術】
従来、実際の楽器音をＰＣＭ化してＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）等からなる波形メモリに記憶しておき、演奏時に波形メモリにアクセスして読み出し所望の楽器音を再生するようにしたＰＣＭ音源が知られている。このＰＣＭ音源においてピッチをシフトして波形メモリから読み出す方法として、ピッチ同期タイプとピッチ非同期タイプとが知られている。ピッチ同期タイプのＰＣＭ音源では、再生するピッチに対応した周波数のクロックをカウントし、そのカウント値に対応してメモリアドレス値に対応した周期で波形メモリをアクセスし波形サンプルデータを順次に逐一読み出している。また、ピッチ非同期タイプのＰＣＭ音源では、一定の所定周期（出力レート）毎に、ピッチに対応した数値の周波数情報を累算し、その累算結果に対応したメモリアドレス値を生成して波形メモリをアクセスし波形サンプルデータを読み出している。
【０００３】
ところで、ＰＣＭ音源はＰＣＭ化された楽音波形サンプルをそのまま波形メモリに記憶しているため、打楽器音のような比較的短い時間の音の場合は、最初から最後までの楽音波形サンプルを波形メモリに記憶することができるが、ブラスやストリングス等の持続音の場合は、割り当てられるメモリ容量に限りがあるため最初から最後までの楽音波形サンプルの全てを波形メモリに記憶することはできない。そこで、楽音波形サンプルの全てを波形メモリに記憶することはできない楽音を発音する際には、波形メモリに記憶されている楽音波形サンプルの一部を繰り返し読み出して再生するループ再生が用いられている。
【０００４】
【発明が解決しようとする課題】
しかしながら、前記ループ再生を行うようにしても音色数が増加するに従い波形メモリの記憶容量が増大することになるため、各楽音に割り当てるメモリエリアを削減しなければならないことになり、再生される楽音の品質を維持することができないおそれが生じる。
これを解決するには、１楽音波形サンプル当たりのビット数を圧縮して削減すれば、限られたメモリエリアであってもある程度長時間の楽音波形サンプルを記憶することが可能となる。楽音波形サンプルの圧縮方法としては、差分ＰＣＭ（ＤＰＣＭ）化された圧縮波形サンプルとしたり、適応差分ＰＣＭ（ＤＰＣＭ）化された圧縮波形サンプルとすることが考えられる。このような圧縮波形サンプルは、隣接する直前までの楽音波形サンプル値から生成した予測値を用いて圧縮符号化されるため、デコードする際には隣接する直前のデコード後の波形サンプルが予測値として必要となる。すなわち、圧縮波形サンプルを順番に逐一読み出さなければデコードすることができない。しかしながら、ループ再生を行う際には、ループエンドに達した際にループスタートの位置へループバックしなければならず、そうすると、途中の圧縮波形サンプルに戻るようになるため、デコードすることができないという問題点があった。
【０００５】
そこで、本発明は、１波形サンプル当たりのビット数を削減した圧縮波形サンプルを記憶した波形サンプル記憶手段を備えていても、ループ再生することのできるループ再生装置を提供することを目的としている。
【０００８】
【課題を解決するための手段】
上記目的を達成するために、本発明の圧縮波形サンプルを用いたループ再生装置は、予測値に基づいて圧縮符号化された圧縮波形サンプルを記憶した波形サンプル記憶手段と、ループスタート位置情報およびループエンド位置情報を発生するループ位置情報発生手段と、所望のピッチ情報を所定周期毎に累算することにより、ループスタート位置を経由してループエンド位置まで順次増加する位相情報を発生するとともに、前記ループ位置情報発生手段から発生されるループエンド位置情報に基づいてループエンド位置に達したと検出された際に、位相情報をループスタート位置にループバックして再び順次増加する位相情報を発生する位相情報発生手段と、該位相情報発生手段から今回の周期で発生された位相情報に対応した圧縮波形サンプルが記憶されている今回アドレスが、前回の周期で発生された位相情報に対応した圧縮波形サンプルが記憶されている前回アドレスと異なる場合には１ないし複数回前記波形サンプル記憶手段にアクセスして１ないし複数個の圧縮波形サンプルを読み出すと共に、前記今回アドレスが前記前回アドレスと同じ場合には前記波形サンプル記憶手段にアクセスしない読出制御手段と、該読出制御手段により前記波形サンプル記憶手段から読み出された圧縮波形サンプルを予測値に基づいて所定周期毎に順次に逐一デコードし、その結果を伸長波形サンプルとして順次出力するデコード手段と、該デコード手段によりデコードされた最新の伸長波形サンプルを含む少なくとも１つの伸長波形サンプルを、一時記憶する第１の一時記憶手段と、前記ループ位置情報発生手段から発生されるループスタート位置情報に基づいて、前記読出制御手段で最初にループスタート位置の圧縮波形サンプルを読み出した時にデコードされた伸長波形サンプルを、以降にループバックした時の予測値として一時記憶する第２の一時記憶手段と、所定周期毎に、前記デコード手段から出力される伸長波形サンプル、前記第１の一時記憶手段から出力される伸長波形サンプル、または、前記第２の一時記憶手段から出力される伸長波形サンプルのいずれかを、前記位相情報発生手段から今回の周期で発生された位相情報と前回の周期で発生された位相情報とに基づいて発生された選択制御信号に基づき出力波形サンプルとして選択的に出力する出力手段とを備え、デコードすべき圧縮波形サンプルに隣接する直前の伸長波形サンプルが前記予測値として前記デコード手段に供給されるよう、前記デコード手段から出力される伸長波形サンプル、前記第１の一時記憶手段から出力される伸長波形サンプル、または、前記第２の一時記憶手段から出力される伸長波形サンプルのいずれかを、前記選択制御信号に基づき選択して前記デコード手段に供給するようにしている。
【０００９】
また、上記圧縮波形サンプルを用いたループ再生装置において、前記波形サンプル記憶手段には、圧縮波形サンプルが１アドレスにつきｎ（ｎは２以上の整数）サンプルずつ記憶されており、前記読出制御手段は、所定周期毎に、前記波形サンプル記憶手段を１回アクセスするかまたは全くアクセスしないように動作するものであり、前記第１の一時記憶手段には少なくともｎ個の伸長波形サンプルが記憶され、前記第２の記憶手段にはループスタート位置を含む少なくともｎ個の伸長波形サンプルが記憶されるようにしてもよい。
さらに、上記圧縮波形サンプルを用いたループ再生装置において、前記位相情報発生手段で発生する位相情報は整数部と小数部とから成り、前記出力手段は、前記位相情報の整数部に基づき少なくとも２つのサンプルを選択するとともに、前記位相情報の小数部に基づき前記少なくとも２つのサンプルを用いて補間演算することにより、前記位相情報に応じた波形サンプルを生成するようにしてもよい。
さらにまた、上記圧縮波形サンプルを用いたループ再生装置において、前記所定周期時間を再生チャンネル数で分割したチャンネル時間に対応して時分割動作を行うことにより、複数チャンネルの楽音を再生するようにしてもよい。
さらにまた、上記圧縮波形サンプルを用いたループ再生装置において、前記圧縮波形サンプルが差分符号化あるいは適応差分符号化されていてもよい。
【００１０】
このような本発明によれば、最初にループスタート位置の圧縮波形サンプルを読み出した時にデコードされた伸長波形サンプルを、以降にループバックした時の予測値として一時記憶するようにしたので、ループバック時にループスタートの位置に戻されても、一時記憶手段に記憶されている伸長波形サンプルを予測値としてデコードすることができる。従って、１波形サンプル当たりのビット数を削減した圧縮波形サンプルを記憶した波形サンプル記憶手段を備えていても、ループ再生による再生を可能とすることができる。
また、ピッチ非同期タイプとして所望のピッチ情報を所定周期毎に累算することにより、ループスタート位置を経由してループエンド位置まで順次増加する位相情報を発生するようにすると、時分割処理を容易に行えるようになり、低コストで複数の楽音を再生することが可能となる。
【００１１】
【発明の実施の形態】
本発明の圧縮波形サンプルを用いたループ再生装置を説明する前に、圧縮符号化の一種であるＡＤＰＣＭの一般的なエンコーダとデコーダについて図１および図２を参照しながら簡単に説明する。
図１はＡＤＰＣＭエンコーダの一般的な構成を示すブロック回路図である。図１において、１サンプル当たり１６ビットでＰＣＭ化されたｎ番目のＰＣＭデータＳ（ｎ）は減算器１０１に入力され、予測信号Ｓ’（ｎ−１）との差分が演算される。減算器１０１から出力される差分データｄ（ｎ）は、符号化部１０２において量子化幅演算部１０３から出力された量子化幅Δ（ｎ−１）で量子化されて４ビットに圧縮符号化される。
【００１２】
圧縮符号化された４ビットからなるＡＤＰＣＭデータＤ（ｎ）はエンコーダから出力されると共に、量子化幅演算部１０３および予測部１０５に供給される。量子化幅演算部１０３においては、前回に量子化幅演算部１０３において演算されて生成された量子化幅Δ（ｎ−１）信号と、ＡＤＰＣＭデータＤ（ｎ）の内のサインビットを除くデータのデータ値に対応する関数との乗算が行われて新たな量子化幅Δ（ｎ）信号が生成される。すなわち、ＡＤＰＣＭデータＤ（ｎ）をＬ４（ｎ），Ｌ３（ｎ），Ｌ２（ｎ），Ｌ１（ｎ）として表すと、Ｌ４（ｎ）がサインビットであることから量子化幅演算部１０３では次の演算が行われる。
Δ（ｎ）＝ｆ｛Ｌ３（ｎ），Ｌ２（ｎ），Ｌ１（ｎ）｝＊Δ（ｎ−１）  （１）
量子化幅演算部１０３で生成された量子化幅Δ（ｎ）信号は遅延回路１０４により１サンプリングタイミング遅延されて、次の入力サンプルＳ（ｎ＋１）を圧縮符号化する際の量子化幅Δ（ｎ）として符号化部１０２に供給される。
【００１３】
また、予測部１０５では、ＡＤＰＣＭデータＤ（ｎ）と前回量子化幅演算部１０３で生成された量子化幅Δ（ｎ−１）信号と前回に予測部１０５において演算されて生成された予測信号Ｓ’（ｎ−１）とが演算されて、新たな予測信号Ｓ’（ｎ）が生成される。予測信号Ｓ’（ｎ）を生成するための演算式を次に示す。
0003567767.tif 000002
予測部１０５で生成された予測信号Ｓ’（ｎ）は遅延回路１０６により１サンプリングタイミング遅延されて、次の入力サンプルＳ（ｎ＋１）を圧縮符号化する際の予測信号として減算器１０１に供給される。
このようにエンコードされることにより、１６ビットのＰＣＭサンプルが圧縮されて４ビットのＡＤＰＣＭサンプルとなる。
【００１４】
図２はＡＤＰＣＭデコーダの一般的な構成を示すブロック回路図である。図２において、１サンプル当たり４ビットとなるようＡＤＰＣＭ化されたｎ番目のＡＤＰＣＭサンプルＤ（ｎ）は復号部２０１に入力され、量子化幅Δ（ｎ−１）信号と予測信号Ｓ’（ｎ−１）と演算されて元の１６ビットのＰＣＭサンプルに戻るよう伸長される。伸長された１６ビットのＰＣＭサンプルＳ’（ｎ）は遅延回路２０２により１サンプリングタイミング遅延されて、次のＡＤＰＣＭサンプルＤ（ｎ＋１）を伸長する際の予測信号として復号部２０１に供給される。
【００１５】
また、入力されたｎ番目のＡＤＰＣＭサンプルＤ（ｎ）は量子化幅演算部２０３に供給され、前回に量子化幅演算部２０３において演算されて生成された量子化幅Δ（ｎ−１）信号と、ＡＤＰＣＭデータＤ（ｎ）の内のサインビットを除くデータのデータ値に対応する関数との乗算が行われて新たな量子化幅Δ（ｎ）信号が生成される。すなわち、量子化幅演算部２０３においても上記（１）式の演算が行われる。量子化幅演算部２０３で生成された量子化幅Δ（ｎ）信号は遅延回路２０４により１サンプリングタイミング遅延されて、次のＡＤＰＣＭサンプルＤ（ｎ＋１）を伸長する際の量子化幅Δ（ｎ）信号として復号部２０１に供給される。
このようにデコードされることにより、４ビットのＡＤＰＣＭサンプルが伸長されて１６ビットのＰＣＭサンプルにデコードされる。なお、ＡＤＰＣＭデコーダにおいては、上記説明したように隣接する直前のデコード後のサンプルを予測値としてデコードする必要があるため、ＡＤＰＣＭサンプルを順次に逐一デコードしなければ元の正しいＰＣＭサンプルを得ることができない。
【００１６】
本発明の圧縮波形サンプルを用いたループ再生装置に備えられるＡＤＰＣＭデコーダの原理的な構成は前記図２に示すデコーダに示すとおりであり、ＡＤＰＣＭデコーダを備える本発明の圧縮波形サンプルを用いたループ再生装置の実施の形態の全体の構成を回路ブロック図で図３（ａ）に示す。
図３（ａ）における各部の詳細構成は後述するが、図３（ａ）において、１は位相情報発生部（Ｐｈａｓｅ  Ｇｅｎｅｒａｔｏｒ  あるいは  Ｐｉｔｃｈ  Ｇｅｎｅｒａｔｏｒ：ＰＧ）であり、オクターブ情報（ＯＣＴ）によりシフトされた周波数情報（ＦＮ）を一定のサンプリング周期ｆｓ毎に累算し、累算値の整数部ＩＮＴと、その小数部データＦＲＡを出力している。ただし、図３に示す本発明の圧縮波形サンプルを用いたループ再生装置は、６４チャンネル分の同時発音が可能とされているので、正確にはサンプリング周波数ｆｓの６４倍の６４ｆｓの周期（１／６４ｆｓ）毎にチャンネル毎の累算が実行される。また、累算値は新たなキーオン信号ＫＯＮＰが発生した際に、発音割当されたチャンネルの累算値はリセットされる。
【００１７】
２はアドレスポインタ（ＡＤＰ）であり、ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）６をアクセスするメモリアドレス（ＭＡ）と、ＲＡＭ６をアクセスするタイミングを示すメモリアクセスタイミング（ＭＡＴ）を発生して、メモリコントローラ５を制御している。なお、ＲＡＭ６に記憶されるＡＤＰＣＭ楽音波形サンプルは、打楽器音のような比較的短い時間の音の場合は、最初から最後までのＡＤＰＣＭ楽音波形サンプルを記憶できるが、ブラスやストリングス等の持続音の場合は、割り当てられるメモリ容量に限りがあるため最初から最後までのＡＤＰＣＭ楽音波形サンプルの全てを記憶することはできない。そこで、ＲＡＭ６に記憶されているＡＤＰＣＭ楽音波形サンプルの一部を繰り返し読み出して再生するループ再生が用いられている。
【００１８】
ＲＡＭ６に記憶されている各楽器音の最初のＡＤＰＣＭ楽音波形サンプルが記憶されているメモリ空間のアドレスがスタートアドレスＳＡであり、ループ再生を行う際のループの最初のＡＤＰＣＭ楽音波形サンプルが記憶されているメモリ空間のアドレスがループスタートアドレス（ＬＳＡ）であり、また、ループの最後のＡＤＰＣＭ楽音波形サンプルが記憶されているメモリ空間のアドレスがループエンドアドレス（ＬＥＡ）である。ＡＤＰ２はこれらのアドレスに基づいてアクセスすべきメモリアドレスＭＡ及びメモリアクセスタイミングＭＡＴを生成している。なお、スタートアドレスＳＡは絶対値で表されたメモリアドレスとされ、ループスタートアドレスＬＳＡとループエンドアドレスＬＥＡは、スタートアドレスＳＡからの相対値アドレスとされている。なお、ＲＡＭ６に１度アクセスすると１６ビット読み出すことができ、１ＡＤＰＣＭ楽音波形サンプルは、例えば４ビットとされているので、ＡＤＰＣＭ楽音波形サンプルを４サンプル同時に読み出すことができる。すなわち、ＲＡＭ６における１メモリアドレスに４サンプルのＡＤＰＣＭ楽音波形サンプルが対応していることになる。
【００１９】
ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）３は、本発明のループ再生装置を制御する上位装置の役割を担うものであり、発音指示に連動して各部にパラメータをセットすると共に、周辺装置４に含まれているＣＤ−ＲＯＭからＡＤＰＣＭ楽音波形サンプルをメモリコントローラ５を介して読み出し、ＲＡＭ６に転送している。ＡＤＰＣＭデコーダ７は、読み出されたＡＤＰＣＭ楽音波形サンプルを元の１６ビットのＰＣＭ楽音波形サンプルに伸長するよう順次デコードする。そして、位相情報の小数部データＦＲＡに対応する補間された楽音波形サンプルを得るために必要な隣接する２つのＰＣＭ楽音波形サンプルＳ０，Ｓ１が選択されてＡＤＰＣＭデコーダ７から出力される。隣接するＰＣＭ楽音波形サンプルＳ０，Ｓ１は、ＡＤＰ２において生成された２種類の選択制御信号ＤＳ０〜３とＳＤＥＣ１〜３，５〜７により選択されてＡＤＰＣＭデコーダ７から出力される。ＡＤＰＣＭデコーダ７から出力される２つのＰＣＭ楽音波形サンプルＳ０，Ｓ１は補間器（Ｉｎｔｅｒｐｏｌａｔｏｒ）８に供給されて小数部データＦＲＡに対応した補間サンプルが生成され、楽音波形サンプルＳとしてアキュムレータＡＣＣ９に供給される。
【００２０】
アキュムレータＡＣＣ９では、図３（ｂ）に示すように例えば１／６４ｆｓの周期ごとに供給されるチャンネルＣＨ０〜ＣＨ６３の６４チャンネル分の楽音波形サンプルが累算されてサンプリング周期ｆｓごとに図示しないＤＡＣ（デジタル−アナログ変換器）へ出力される。ＤＡＣでアナログ信号に変換された楽音波形信号はサウンドシステムから楽音信号として放音されるようになる。
なお、図３（ａ）に示す構成においてはＣＤ−ＲＯＭドライブを含む周辺装置４が備えられており、イニシャル時においてＣＤ−ＲＯＭからＲＡＭ６に記憶すべきＡＤＰＣＭ楽音波形サンプルが読み出されて、ＲＡＭ６に記憶される。また、後述するロングストリーム再生時の場合には、分割されたロングストリームデータが順次ＣＤ−ＲＯＭから読み出されてＲＡＭ６の所定記憶エリアに記憶される。
【００２１】
ここで、ＲＡＭ６に記憶されるＡＤＰＣＭ楽音波形サンプルについて図４を参照しながら説明する。図４（ａ）は楽音波形を示しており、波形中のＳ（０），Ｓ（１），・・・Ｓ（Ａ）は、楽音波形をサンプルしてそれぞれ１６ビットに符号化されたＰＣＭ楽音波形サンプルを示している。ただし、カッコ内の数値は１６進で示されている。このＰＣＭ楽音波形サンプルＳ（０），Ｓ（１），・・・Ｓ（Ａ）を、図１に示すようなＡＤＰＣＭエンコーダにより４ビットのＡＤＰＣＭ楽音波形サンプルＤ（０），Ｄ（１），・・・Ｄ（Ａ）に圧縮符号化されてＣＤ−ＲＯＭに記録され、ＣＤ−ＲＯＭから読み出されてＲＡＭ６に記憶される。ここでは、ＡＤＰＣＭ楽音波形サンプルＤ（０），Ｄ（１），・・・Ｄ（Ａ）をメモリアドレス１００番地からＲＡＭ６に書き込むものとする。
【００２２】
この場合、１メモリアドレスに対応するビット数は１６ビットとされていることから、メモリアドレス１００番地には、図４（ｂ）に示すようにＡＤＰＣＭ楽音波形サンプルＤ（０），Ｄ（１），Ｄ（２），Ｄ（３）の４サンプルが書き込まれる。また、次のメモリアドレス１０１番地には続くＡＤＰＣＭ楽音波形サンプルＤ（４），Ｄ（５），Ｄ（６），Ｄ（７）の４サンプルが書き込まれ、次のメモリアドレス１０２番地には残るＡＤＰＣＭ楽音波形サンプルＤ（８），Ｄ（９），Ｄ（Ａ）の３サンプルが書き込まれる。
従って、図４（ａ）に示すＰＣＭ楽音波形サンプルＳ（０），Ｓ（１），・・・Ｓ（Ａ）のスタートアドレスＳＡは、１００番地となる。また、ループ再生する場合にはループスタートのサンプル値とループエンドのサンプル値とをほぼ等しくするのが好適なことから、例えば、ループスタートのサンプルはＳ（５）とされ、ループエンドのサンプルはＳ（Ａ）とされる。ループスタートアドレスＬＳＡはスタートアドレスＳＡからの相対値で５番地、ループエンドアドレスＬＥＡは同様にＡ番地となる。なお、このアドレス番地も１６進で表されている。
【００２３】
次に、図５（ａ）にＰＧ１の詳細構成を示す。図５（ａ）に示すように、整数部と小数部で表された周波数情報（ＦＮ）はシフタ（Ｓｈｉｆｔ）１１に入力され、シフタ１１にシフト信号として入力されたオクターブ情報（ＯＣＴ）によりシフトされる。周知のように１ビットＭＳＢ側へシフトする毎に、ＦＮは２倍の数値となる。シフタ１１によりＯＣＴに対応してシフトされたＦＮは、第１累算器（ＡＣＣ１）１２および第２累算器（ＡＣＣ２）１３に供給され、チャンネル毎のＦＮを一定のサンプリング周期（１／６４ｆｓ）毎に累算する。累算された整数部はデータＩＮＴとして、その小数部はデータＦＲＡとして出力されている。なお、サンプリング周波数はｆｓであるが、本発明の圧縮波形サンプルを用いたループ再生装置は６４チャンネル分の同時発音を可能とするように、各部は時分割動作周波数６４ｆｓの周期で時分割動作されている。すなわち、ＰＧ１では図５（ｂ）に示すように１サンプリング周期（１／ｆｓ）が６４分割されて１／６４ｆｓ周期毎にＣＨ０，ＣＨ１，・・・ＣＨ６３のＦＮの累算が実行されている。
【００２４】
また、新たなキーオン信号ＫＯＮＰが発生した際に、ＡＣＣ１およびＡＣＣ２にキーオン信号ＫＯＮＰが供給されると、発音割当されたチャンネルの累算値がリセットされる。
図５（ｃ）にはループ再生する際の累算値の変化態様がランプ波形で示されている。ただし、横軸は経過時間、縦軸はＡＣＣ１およびＡＣＣ２から出力される累算値である。すなわち、図５（ｃ）に示すようにキーオン信号ＫＯＮＰが発生したタイミングにおいて、対応するチャンネルの累算値はリセットされて「０」からスタートしシフタ１１から出力されるキーオンされた音のピッチに対応するＦＮが１／６４ｆｓ周期毎に累算されていくようになる。これにより累算値は右肩上がりにリニアに上昇していく。そして、累算値がループエンドアドレスＬＥＡを越えると、このことが検出されて累算値はループスタートアドレスＬＳＡに戻されるようになる。この動作を実行するために、累算値がループエンドアドレスＬＥＡを越えたタイミングを示すリターンタイミングＲＴＮＴと、リターン値ＲＴＮＰがＡＤＰ２からＡＣＣ１およびＡＣＣ２に供給されている。なお、リターン値ＲＴＮＰはループスタートアドレスＬＳＡに越えた値Ａを加算した値とされ、リターンタイミングＲＴＮＴが発生した際には、累算値はＬＳＡ＋Ａの値に再セットされる。ループ再生時には、このような動作が繰り返し実行される。
また、ＡＣＣ２から出力される整数部データＩＮＴは、ＣＰＵ３がモニタしており、後述するロングストリームを再生する際に周辺装置４に装着されたＣＤ−ＲＯＭから分割されたロングストリームデータを順次読み出すタイミングを測っている。
【００２５】
次に、図６にアドレスポインタ（ＡＤＰ）２の詳細構成を示す。ＡＤＰ２において、供給された累算値の整数部データＩＮＴは第１加算器（ＡＤ１）において「＋１」が加算され、データＩＮＴ＋１とされる。これは、データＩＮＴで示されるサンプルと、データＩＮＴ＋１で示されるサンプルとを小数部データＦＲＡで補間してＦＮの累算値に対応するサンプル値を得るためである。データＩＮＴ＋１は第１セレクタ（ＳＥＬ１）および第２加算器（ＡＤ２）に供給される。ＡＤ２ではループエンドアドレスＬＥＡからデータＩＮＴ＋１が差し引かれており、その出力のＭＳＢのレベルで、データＩＮＴ＋１がループエンドアドレスＬＥＡを越えたことが検出される。すなわち、データＩＮＴ＋１がループエンドアドレスＬＥＡを越えると、サインビットであるＭＳＢがＨレベルとなるので、この信号をリターンタイミングＲＴＮＴとしてＰＧ１に供給する。また、ループエンドアドレスＬＥＡからデータＩＮＴ＋１が差し引かれた値は第３加算器（ＡＤ３）においてループスタートアドレスＬＳＡが加算されるので、ＡＤ３の出力をリターン値ＲＴＮＰとしてＰＧ１に供給する。
【００２６】
ＡＤ２のＭＳＢ出力はＳＥＬ１の入力Ｂを選択する選択信号ＳＢとされると共に、第１インバータ（ＩＮＶ１）で反転されて入力Ａを選択する選択信号ＳＡとされる。これにより、ＳＥＬ１においてはデータＩＮＴ＋１がループエンドアドレスＬＥＡを越えるまでは、入力Ａが選択されてＡＤ１から出力されるデータＩＮＴ＋１が出力され、越えるとＡＤ３が出力するループエンドアドレスＬＥＡからデータＩＮＴ＋１が差し引かれた値にループスタートアドレスＬＳＡが加算された値が出力される。ＳＥＬ１の出力は第１シフタ（ＳＨ１）で２ビットＬＳＢ側へシフトされて１／４倍されると共に、ＬＳＢ側の２ビットが第１デコーダ（ＤＥＣ１）に入力される。ＳＨ１において１／４とされるのは、１メモリアドレス当たり４つのＡＤＰＣＭ楽音波形サンプルがＲＡＭ６に記憶されているからである。そして、ＳＨ１の出力にスタートアドレスＳＡが第４加算器（ＡＤ４）で加算されて、ＲＡＭ６をアクセスする際のメモリアドレスＭＡが生成される。
【００２７】
また、ＳＥＬ１のＬＳＢ側の２ビットはＤＥＣ１において、デコードされて第１選択制御情報ＤＳ０〜ＤＳ３が発生される。この場合、２ビットが「００」の場合にＤＳ３が発生され、２ビットが「０１」の場合にＤＳ０が発生され、２ビットが「１０」の場合にＤＳ１が発生され、２ビットが「１１」の場合にＤＳ２が発生される。第１選択制御情報ＤＳ０〜ＤＳ３の持つ意味については後述するが、ＲＡＭ６を１度アクセスすることにより読み出されて伸長されたＡＤＰＣＭデコード後の４つのＰＣＭ楽音波形サンプルの内のいずれが、データＩＮＴ＋１に対応するＰＣＭ楽音波形サンプルなのかを示す情報であり、第１選択制御情報ＤＳ０〜ＤＳ３を用いてデータＩＮＴ＋１に対応するＰＣＭ楽音波形サンプルデータＳ１と、データＩＮＴに対応するＰＣＭ楽音波形サンプルＳ０とを選択して、補間器８に送出している。
【００２８】
また、ＳＥＬ１の出力は第５加算器（ＡＤ５）において「＋１」だけ減算され、次いで第２シフタ（ＳＨ２）において１／４とされる。従って、ＳＨ２の出力はデータＩＮＴに対応するメモリアドレスとなる。ＳＨ１の出力のＬＳＢとＳＨ２の出力のＬＳＢとは、第１エクスクルーシブオアゲート（ＥＸ−ＯＲ１）に印加され、両ＬＳＢが一致しているか不一致かが検出される。一致している場合にはＥＸ−ＯＲ１からはＬレベルが出力され、従って第１アンドゲート（ＡＮＤ１）出力はＬレベルを維持し、不一致の場合はＥＸ−ＯＲ１の出力がＨレベルとなりＡＮＤ１の一方にＨレベルが印加されると共に、ＡＮＤ１の他方は通常Ｈレベルとされている（後述するＳＤＥＣ５が発生される場合のみＬレベルとされる）ので、ＡＮＤ１からＨレベルのメモリアクセスタイミングＭＡＴが出力されるようになる。すなわち、ＥＸ−ＯＲ１の出力がＨレベルとなるのは、データＩＮＴ＋１に対応するメモリアドレスがデータＩＮＴに対応するメモリアドレスより１だけインクリメントされた場合であり、この場合にメモリアクセスタイミングＭＡＴが出力されるようになる。なお、図３に示す構成の仕様では２オクターブアップまでのピッチシフトとされているので、データＩＮＴ＋１に対応するメモリアドレスがデータＩＮＴに対応するメモリアドレスより２以上インクリメントされることはなく、このためＬＳＢのみ比較している。
【００２９】
さらに、ＳＨ２の出力のＬＳＢは時分割動作サンプリング周波数６４ｆｓにおける６４周期分遅延する第１ディレイ（ＤＬ１）において６４周期分遅延されると共に、第２エクスクルーシブオアゲート（ＥＸ−ＯＲ２）の一方に印加される。ＥＸ−ＯＲ２の他方にはＤＬ１の出力が印加されており、ＥＸ−ＯＲ２では同チャンネルにおいてデータＩＮＴに対応する今回のメモリアドレスが前回のメモリアドレスよりインクリメントされたか否かを検出している。インクリメントされた場合には、ＥＸ−ＯＲ２の出力がＨレベルとなるため、ＡＮＤ１からＨレベルのメモリアクセスタイミングＭＡＴが出力されるようになる。このように、必要とするＡＤＰＣＭ楽音波形サンプルに対応するメモリアドレスがインクリメントされた時に限り、ＡＮＤ１からＨレベルのメモリアクセスタイミングＭＡＴが出力されるので、インクリメントされない場合はＲＡＭ６にアクセスせず、ＣＰＵ３の負担を軽くすることができる。なお、インクリメントされない場合に必要なＡＤＰＣＭ楽音波形サンプルは、今回までに既に読み出されてＡＤＰＣＭデコードされ、ＡＤＰＣＭデコーダ７に備えられている直前ブロックＲＡＭに格納されている。
【００３０】
ＥＸ−ＯＲ１の出力およびＥＸ−ＯＲ２の出力は、第２デコーダ（ＤＥ２）に入力されてデコードされ、第２選択制御情報の内のＳＤＥＣ１，ＳＤＥＣ２，ＳＤＥＣ３が発生されている。この場合、両出力が「００」の場合にＳＤＥＣ１が発生され、ＥＸ−ＯＲ２の出力がＨレベルの「０１」の場合にＳＤＥＣ３が発生され、ＥＸ−ＯＲ１の出力がＨレベルの「１０」の場合にＳＤＥＣ２が発生される。なお、第１ゲートアレイ（ＧＡ１）は、通常はリターンタイミングＲＴＮＴが発生された場合だけ閉じられ、この際には第２選択制御情報ＳＤＥＣ１〜ＳＤＥＣ３の発生を抑制している。このように、第２選択制御情報ＳＤＥＣ１〜ＳＤＥＣ３はループをリターンする以外のタイミングで必要となる情報である。
【００３１】
ＡＤＰ２に入力されたループスタートアドレスＬＳＡは、第３シフタ（ＳＨ３）において１／４とされる。従って、ＳＨ３の出力はアドレスＬＳＡに対応するサンプルのメモリアドレスとなる。ＳＨ３の出力のＬＳＢとＳＨ２の出力のＬＳＢとは、第３エクスクルーシブオアゲート（ＥＸ−ＯＲ３）に印加され、両ＬＳＢが不一致の場合にＨレベルが出力される。なお、第２ゲートアレイ（ＧＡ２）がリターンタイミングＲＴＮＴが発生されたタイミングだけ開くこと、および、第３ゲートアレイ（ＧＡ３）は通常は開いていることから、リターンタイミングＲＴＮＴが発生された場合だけ、ＥＸ−ＯＲ３の出力は有効となる。このことから、ループのリターン時にＳＨ２から出力されるデータＩＮＴに対応するメモリアドレスが、ループスタートアドレスＬＳＡに対応するサンプルのメモリアドレスを越えた際に、ＥＸ−ＯＲ３からＨレベルが出力されることになる。
【００３２】
そして、ＥＸ−ＯＲ１の出力およびＥＸ−ＯＲ３の出力は、第３デコーダ（ＤＥＣ３）に入力されてデコードされ、第２選択制御情報の内のＳＤＥＣ５，ＳＤＥＣ６，ＳＤＥＣ７が発生されている。この場合、両出力が「００」の場合にＳＤＥＣ５が発生され、ＥＸ−ＯＲ３の出力がＨレベルの「０１」の場合にＳＤＥＣ７が発生され、ＥＸ−ＯＲ１の出力がＨレベルの「１０」の場合にＳＤＥＣ６が発生される。なお、ＧＡ２はリターンタイミングＲＴＮＴが発生されたタイミングだけ開くこと、および、ＧＡ３は通常は開いていることから、リターンタイミングＲＴＮＴでのみ第２選択制御情報ＳＤＥＣ５〜ＳＤＥＣ７が発生される。このように、第２選択制御情報ＳＤＥＣ５〜ＳＤＥＣ７はループをリターンするタイミングでのみ必要となる情報である。
【００３３】
さらにまた、ＳＨ１の出力とＳＨ３の出力とは第４ゲートアレイ（ＧＡ４）と第２アンドゲート（ＡＮＤ２）により、全ビットの一致が検出される。すなわち、ループスタートアドレスＬＳＡに対応するサンプルのメモリアドレスに、データＩＮＴ＋１に対応するサンプルのメモリアドレスが一致した際に、Ｈレベルが出力される。このＨレベルの信号は、リターンタイミングＲＴＮＴが発生されている場合を除いて開いている第３アンドゲート（ＡＮＤ３）からリターンスタートアドレス検出信号（ＬＳＡＤＴＣＴ）として発生される。ＬＳＡＤＴＣＴ信号は、ループスタートアドレスＬＳＡに対応するサンプルのメモリアドレスにより読み出された４つのＡＤＰＣＭ楽音波形サンプルをデコードして一時記憶する際に利用される。
【００３４】
次に、第２選択制御情報ＳＤＥＣ１〜ＳＤＥＣ３，ＳＤＥＣ５〜ＳＤＥＣ７の持つ意味を図７を参照しながら説明する。
第２選択制御情報のＳＤＥＣ１が発生される場合は、図７（ａ）に示すようにデータＩＮＴ＋１に対応するサンプルが直前ブロックＲＡＭに記憶されている場合である。この直前ブロックＲＡＭはＡＤＰＣＭデコーダ７に備えられており、前回ＲＡＭ６にアクセスされた際に読み出された４つのＡＤＰＣＭ楽音波形サンプルがＡＤＰＣＭデコーダ７でデコードされて記憶されている。以下、４つのＡＤＰＣＭ楽音波形サンプルおよびこれをデコードした４つのＰＣＭ楽音波形サンプルを１ブロックという。すなわち、直前ブロックＲＡＭには前回までにデコードされた内の最新の４つのＰＣＭ楽音波形サンプル（１サンプルが１６ビットに伸長されている）が、それぞれサブブロックＳＢ１〜ＳＢ４に記憶されている。この場合には、データＩＮＴ＋１に対応するサンプルが既に直前ブロックＲＡＭに記憶されているので、ＲＡＭ６にアクセスする必要はない。従って、ＳＤＥＣ１が発生される場合には、メモリアクセスタイミングＭＡＴ信号は発生されない。また、図示する例ではデータＩＮＴ＋１に対応するサンプルＳ１がＳＢ３に記憶されており、隣接するデータＩＮＴに対応するサンプルＳ０がＳＢ２に記憶されている。
【００３５】
第２選択制御情報のＳＤＥＣ２が発生される場合は、図７（ｂ）に示すようにデータＩＮＴ＋１に対応するサンプルが今回デコードされるブロックの先頭のサブブロックＳＢ１のサンプルとなる場合である。従って、今回デコードブロックのＳＢ１のサンプルがＳ１とされ、隣接する直前ブロックＲＡＭのＳＢ４のサンプルがＳ０とされる。この場合には、データＩＮＴ＋１に対応するサンプルが含まれる今回デコードブロックをＲＡＭ６にアクセスしデコードして得る必要があるので、ＳＤＥＣ２が発生される場合には、メモリアクセスタイミングＭＡＴ信号が発生される。
第２選択制御情報のＳＤＥＣ３が発生される場合は、図７（ｃ）に示すようにデータＩＮＴ＋１に対応するサンプルが今回デコードされるブロック内のＳＢ２より後のサブブロックのサンプルとなる場合である。図示する例では、今回デコードブロックのＳＢ２のサンプルがＳ１とされ、隣接する今回デコードブロックのＳＢ１のサンプルがＳ０とされる。この場合には、データＩＮＴおよびデータＩＮＴ＋１に対応するサンプルを含む今回デコードブロックをＲＡＭ６にアクセスしデコードして得る必要があるので、ＳＤＥＣ３が発生される場合には、メモリアクセスタイミングＭＡＴ信号が発生される。
【００３６】
第２選択制御情報のＳＤＥＣ５が発生される場合は、前記したようにループがリターンされる場合であり、図７（ｄ）に示すようにデータＩＮＴ＋１に対応するサンプルがループエンドアドレスＬＥＡに対応するサンプルが含まれるループエンドブロックのＳＢ２以上のサブブロックのサンプルとなると共に、リターン値ＲＴＮＰに対応するサンプルがループスタートブロックＲＡＭ内のサンプルとされている場合である。このループスタートブロックＲＡＭは、ＡＤＰＣＭデコーダ７に備えられており、ＬＳＡＤＴＣＴ信号が発生した際に読み出されてデコードされた４つのＰＣＭ楽音波形サンプルが一時記憶されるメモリである。このループスタートブロックＲＡＭ内にはループスタートアドレスＬＳＡに対応するサンプルが少なくとも記憶されている。図示する例では、ループエンドアドレスＬＥＡに対応するサンプルがループエンドブロックのＳＢ１とされ、データＩＮＴ＋１に対応するサンプルがループエンドブロックのＳＢ２とされると共に、ループスタートアドレスＬＳＡに対応するサンプルがループスタートブロックＲＡＭのＳＢ１とされ、リターンされた際のデータＩＮＴ＋１に対応するサンプルがループスタートブロックＲＡＭのＳＢ２とされている。この場合には、データＩＮＴおよびデータＩＮＴ＋１に対応するサンプルをＲＡＭ６にアクセスし、デコードして得る必要がないので、ＳＤＥＣ５が発生される場合には、メモリアクセスタイミングＭＡＴ信号は発生されない。
【００３７】
第２選択制御情報のＳＤＥＣ６が発生される場合は、ループがリターンされる場合であって、図７（ｅ）に示すようにデータＩＮＴ＋１に対応するサンプルが、ループエンドアドレスＬＥＡに対応するサンプルが含まれるループエンドブロックを越えたサンプルとなると共に、リターン値ＲＴＮＰに対応するサンプルがループスタートブロックＲＡＭに記憶されているブロックの次の今回デコードブロック内のサンプルとされている場合である。図示する例では、ループエンドアドレスＬＥＡに対応するサンプルがループエンドブロックのＳＢ１とされ、データＩＮＴ＋１に対応するサンプルがループエンドブロックを越えたサンプルとされると共に、ループスタートアドレスＬＳＡに対応するサンプルがループスタートブロックＲＡＭのＳＢ１とされ、リターンされた際のデータＩＮＴ＋１に対応するサンプルがループスタートブロックＲＡＭを越え、今回デコードブロックのサブブロックＳＢ１のサンプルとされている。この場合には、データＩＮＴ＋１に対応するサンプルが含まれる今回デコードデータブロックをＲＡＭ６にアクセスし、デコードすることにより得る必要があるので、ＳＤＥＣ６が発生される場合には、メモリアクセスタイミングＭＡＴ信号が発生される。
【００３８】
第２選択制御情報のＳＤＥＣ７が発生される場合は、ループがリターンされる場合であって、図７（ｆ）に示すようにデータＩＮＴ＋１に対応するサンプルおよびデータＩＮＴに対応するサンプルが、ループエンドアドレスＬＥＡに対応するサンプルが含まれるループエンドブロックを越えたサンプルとなると共に、リターン値ＲＴＮＰに対応するサンプルがループスタートブロックＲＡＭに記憶されているブロックの次の今回デコードブロック内のサンプルとされている場合である。図示する例では、ループエンドアドレスＬＥＡに対応するサンプルがループエンドブロックのＳＢ１とされ、データＩＮＴ＋１，データＩＮＴに対応するサンプルがループエンドブロックを越えたサンプルとされると共に、ループスタートアドレスＬＳＡに対応するサンプルがループスタートブロックＲＡＭのＳＢ１とされ、リターンされた際のデータＩＮＴ＋１，データＩＮＴに対応するサンプルがループスタートブロックＲＡＭを越え、今回デコードブロックのサブブロックＳＢ１，ＳＢ２のサンプルとされている。この場合には、データＩＮＴ＋１およびデータＩＮＴに対応するサンプルが含まれる今回デコードデータブロックをＲＡＭ６にアクセスし、デコードすることにより得る必要があるので、ＳＤＥＣ７が発生される場合には、メモリアクセスタイミングＭＡＴ信号が発生される。
【００３９】
次に、第１選択制御情報ＤＳ０〜ＤＳ３の持つ意味を図８を参照しながら説明する。第１選択制御情報ＤＳ０〜ＤＳ３は、データＩＮＴ＋１に対応するサンプルが直前ブロックＲＡＭ（あるいはループスタートブロックＲＡＭ）および今回デコードブロックのどのサブブロックにあるかを示す情報である。第１選択制御情報のＤＳ０が発生する場合は、データＩＮＴ＋１に対応するサンプルが直前ブロックＲＡＭ（あるいはループスタートブロックＲＡＭ）のサブブロックＳＢ２のサンプルとされる場合である。第１選択制御情報のＤＳ０は、第２選択制御情報のＳＤＥＣ１，３，５，７のいずれかと共に発生する。
また、第１選択制御情報のＤＳ１が発生する場合は、データＩＮＴ＋１に対応するサンプルが直前ブロックＲＡＭ（あるいはループスタートブロックＲＡＭ）のサブブロックＳＢ３のサンプルとされる場合である。第１選択制御情報のＤＳ１も、第２選択制御情報のＳＤＥＣ１，３，５，７のいずれかと共に発生する。
【００４０】
さらに、第１選択制御情報のＤＳ２が発生する場合は、データＩＮＴ＋１に対応するサンプルが直前ブロックＲＡＭ（あるいはループスタートブロックＲＡＭ）のサブブロックＳＢ４のサンプルとされる場合である。第１選択制御情報のＤＳ２も、第２選択制御情報のＳＤＥＣ１，３，５，７のいずれかと共に発生する。なお、第１選択制御情報のＤＳ０〜２が発生する場合におけるデータＩＮＴに対応するサンプルは、同じブロックの隣接する直前のサブブロックのサンプルとされる。
さらにまた、第１選択制御情報のＤＳ３が発生する場合は、データＩＮＴ＋１に対応するサンプルが今回デコードブロックのサブブロックＳＢ１のサンプルとされる場合である。この場合は、データＩＮＴに対応するサンプルは直前ブロックＲＡＭ（あるいはループスタートブロックＲＡＭ）に含まれ、そのサブブロックＳＢ４のサンプルとされる。第１選択制御情報のＤＳ３は、第２選択制御情報のＳＤＥＣ２，６のいずれかと共に発生する。
【００４１】
次に、図１０および図１１に分割して示すＡＤＰＣＭデコーダ７の詳細構成を説明するが、説明する際に必要に応じて図９に示すデコード時における直前ブロックＲＡＭとループスタートブロックＲＡＭの制御態様を示す図、図１２に示すタイミング図、図１３に示す第２選択制御情報ＳＤＥＣと発生される選択信号との関係を示す図表、図１４に示す第１選択制御情報ＤＳおよび第２選択制御情報ＳＤＥＣと発生される選択信号との関係を示す図表を参照して説明するものとする。なお、図１０および図１１に示すＡＤＰＣＭデコーダ７は２つに分割して示されており、図中のラインに付されたイ〜ルはそれぞれ相互に同じラインを示すものとされている。
図１０および図１１に示すＡＤＰＣＭデコーダ７において、ＲＡＭ６から同時に読み出された合計１６ビットの４つのＡＤＰＣＭ楽音波形サンプルは、第１０セレクタ（ＳＥＬ１０）の４つの入力Ａ，Ｂ，Ｃ，Ｄに１ＡＤＰＣＭ楽音波形サンプル（４ビット）ずつ並列に入力される。このＳＥＬ１０には、入力Ａを選択する選択信号ＳＡとして図１２（ｈ）に示すタイミング信号ＴＩＭ０１が印加され、入力Ｂを選択する選択信号ＳＢとして図１２（ｉ）に示すタイミング信号ＴＩＭ２３が印加され、入力Ｃを選択する選択信号ＳＣとして図１２（ｊ）に示すタイミング信号ＴＩＭ４５が印加され、入力Ｄを選択する選択信号ＳＤとして図１２（ｋ）に示すタイミング信号ＴＩＭ６７が印加されている。
【００４２】
タイミング信号ＴＩＭ０１〜ＴＩＭ６７は、図１２（ｂ）に示すように時分割処理用サンプリング周波数６４ｆｓの１周期である図１２（ｃ）に示す１チャンネルに割り当てられた周期（１／６４ｆｓ）をさらに８分割（１／６４ｆｓ＊１／８）した図１２（ｄ）に示す周期の２周期分の周期を有し、図１２（ｈ）〜（ｋ）に示すように相互に重ならないよう順次発生されている。このような、タイミング信号ＴＩＭ０１〜ＴＩＭ６７によりＳＥＬ１０に並列に入力された４つのＡＤＰＣＭ楽音波形サンプルは、入力Ａから入力Ｄに向かって順次選択されて１ＡＤＰＣＭ楽音波形サンプルずつ選択出力される。出力されたＡＤＰＣＭ楽音波形サンプルＤ（ｎ）は、ＡＤＰＣＭデコード部７０に順次入力され、予測値である隣接する直前のデコード後のサンプルＸ（ｎ−１）と量子化幅Δ（ｎ−１）信号に基づいてデコードされる。デコードされることにより１６ビットに伸長されたＰＣＭ楽音波形サンプルＸ（ｎ）は、第１０ラッチ回路（ＬＡ１０）に第１０オアゲート（ＯＲ１０）を介して印加された図１２（ｅ）〜（ｇ）に示すタイミング信号ＴＩＭ１、ＴＩＭ３，ＴＩＭ５，ＴＩＭ７のそれぞれのタイミングによりラッチされる。タイミング信号ＴＩＭ１、ＴＩＭ３，ＴＩＭ５，ＴＩＭ７は、タイミング信号ＴＩＭ０１〜ＴＩＭ６７の後半の半周期にそれぞれ該当しており、ＡＤＰＣＭデコード部７０によるデコードが完了した後のそれぞれのタイミングでラッチするようにしている。ＬＡ１０の出力は第１２セレクタ（ＳＥＬ１２）の入力Ａに入力される。
【００４３】
また、ＳＥＬ１０で選択出力されたＡＤＰＣＭ楽音波形サンプルＤ（ｎ）は量子化幅演算部７１にも入力され、第１４セレクタ（ＳＥＬ１４）から選択出力された量子化幅Δ（ｎ−１）信号と上記（１）式の演算が行われて、新たな量子化幅Δ（ｎ）信号が生成されて出力される。生成された量子化幅Δ（ｎ）信号は、第１１ラッチ回路（ＬＡ１１）に第１６オアゲート（ＯＲ１６）を介して印加されたタイミング信号ＴＩＭ１、ＴＩＭ３，ＴＩＭ５，ＴＩＭ７のそれぞれのタイミングによりラッチされる。タイミング信号ＴＩＭ１、ＴＩＭ３，ＴＩＭ５，ＴＩＭ７は、前記したようにタイミング信号ＴＩＭ０１〜ＴＩＭ６７の後半の半周期にそれぞれ該当しており、量子化幅演算部７１による演算が完了した後のそれぞれのタイミングでラッチするようにしている。ＬＡ１１の出力は第１４セレクタ（ＳＥＬ１４）の入力Ａに入力される。
【００４４】
サンプルをＡＤＰＣＭデコードする動作をさらに説明すると、ＳＥＬ１２において入力Ａは、第１１ナンドゲート（ＮＡＮＤ１１）、第１２ナンドゲート（ＮＡＮＤ１２）、第１３ナンドゲート（ＮＡＮＤ１３）および第１３インバータ（ＩＮＶ１３）の作用により発生された選択信号ＳＡで選択される。すなわち入力Ａは、タイミング信号ＴＩＭ０１が発生されているタイミングを除いて選択されている。このＳＥＬ１２から選択出力されるサンプルＸ（ｎ−１）は予測値としてＡＤＰＣＭデコード部７０に供給される。また、ＳＥＬ１４に印加されている選択信号ＳＡ，ＳＢ，ＳＣは、ＳＥＬ１２と同じ選択信号ＳＡ，ＳＢ，ＳＣとされているので、その入力Ａは、タイミング信号ＴＩＭ０１が発生されているタイミングを除いて選択されている。このＳＥＬ１４の選択出力は量子化幅Δ（ｎ−１）信号としてＡＤＰＣＭデコード部７０に供給される。
【００４５】
ここで、ＳＥＬ１０に入力された４つのＡＤＰＣＭ楽音波形サンプルをＤ（０），Ｄ（１），Ｄ（２），Ｄ（３）とすると、タイミング信号ＴＩＭ２３が発生した際には、ＡＤＰＣＭデコード部７０にＳＥＬ１０で選択出力された入力Ｂの２番目のＡＤＰＣＭ楽音波形サンプルＤ（１）が入力される。同時に、ＬＡ１０から出力されるＡＤＰＣＭデコード部７０においてデコードされた１番目のＡＤＰＣＭ楽音波形サンプルＤ（０）をデコードしたＰＣＭ楽音波形サンプルＸ（０）が予測値としてＳＥＬ１２から選択出力されてＡＤＰＣＭデコード部７０に供給される。さらに、ＬＡ１１から出力される量子化幅演算部７１において演算された量子化幅Δ（０）がＳＥＬ１４から選択出力されてＡＤＰＣＭデコード部７０に供給される。これによりＡＤＰＣＭデコード部７０は、隣接する直前のデコード後のサンプル（０）と量子化幅Δ（０）信号を用いて、ＡＤＰＣＭ楽音波形サンプルＤ（１）をデコードすることができる。タイミング信号ＴＩＭ４５，ＴＩＭ６７が発生した際も同様の動作が行われるので、４つのＡＤＰＣＭ楽音波形サンプルＤ（０），Ｄ（１），Ｄ（２），Ｄ（３）は、順次に逐一ＡＤＰＣＭデコードされる。
なお、読み出された最初のサンプルであるＡＤＰＣＭ楽音波形サンプルＤ（０）のデコード動作については後述する。
【００４６】
ＡＤＰＣＭデコード部７０においてデコードされたＰＣＭ楽音波形サンプルＸ（ｎ）は、第１１セレクタ（ＳＥＬ１１）の入力Ａにも供給される。このＳＥＬ１１の入力Ｂには第１７セレクタ（ＳＥＬ１７）の選択出力が供給され、入力Ａを選択する選択信号ＳＡは第１３オアゲート（ＯＲ１３）および第１４インバータ（ＩＮＶ１４）の作用により第２選択制御情報のＳＤＥＣ５およびＳＤＥＣ６が発生しているタイミングを除いて発生され、入力Ｂを選択する選択信号ＳＢはＯＲ１３の作用により第２選択制御情報のＳＤＥＣ５およびＳＤＥＣ６が発生しているタイミングで発生される。第２選択制御情報ＳＤＥＣ５，ＳＤＥＣ６はリターンタイミングＲＴＮＴが発生した際に発生されることから、リターンされないタイミングにおいてはＳＥＬ１１からは入力Ａに入力されたＰＣＭ楽音波形サンプルＸ（ｎ）が選択出力される。
【００４７】
ＳＥＬ１１の選択出力は、直前ブロックＲＡＭ（ＲＡＭ１０）とループスタートブロックＲＡＭ（ＲＡＭ１１）に並列に供給される。直前ブロックＲＡＭ１０とループスタートブロックＲＡＭ１１はそれぞれ４つのサブブロックＳＢ１〜ＳＢ４に分割されており、それぞれのサブブロックＳＢ１〜ＳＢ４には６４チャンネル分のサンプルが記憶可能とされている。直前ブロックＲＡＭ１０のサブブロックＳＢ１のライトイネーブル（ＷＥ）信号は第１０ゲートアレイ（ＧＡ１０）の作用により、第２選択制御情報のＳＤＥＣ３あるいはリターンタイミングＲＴＮＴ信号が発生されている際のタイミングＴＩＭ１で発生される。また、サブブロックＳＢ２のＷＥ信号は、第２選択制御情報のＳＤＥＣ３あるいはリターンタイミングＲＴＮＴ信号が発生されている際のタイミングＴＩＭ３で発生され、サブブロックＳＢ３のＷＥ信号は、第２選択制御情報のＳＤＥＣ３あるいはリターンタイミングＲＴＮＴ信号が発生されている際のタイミングＴＩＭ５で発生され、サブブロックＳＢ４のＷＥ信号は、第２選択制御情報のＳＤＥＣ３あるいはリターンタイミングＲＴＮＴ信号が発生されている際のタイミングＴＩＭ７で発生される。
【００４８】
ここで、ＳＤＥＣ３は図７（ｃ）に示すようにデータＩＮＴ＋１に対応するサンプルが今回デコードされるブロック内のサブブロックＳＢ２以降のサンプルとなる場合に発生され、ＳＤＥＣ３が発生されるとこの場合のようにＲＡＭ６に対する新たなアクセスを行いＡＤＰＣＭ楽音波形サンプルが１ブロック分読み出される。この１ブロックのＡＤＰＣＭ楽音波形サンプルは前記したように順次デコードされて、上記のＷＥ信号の発生タイミングで直前ブロックＲＡＭ１０に順次書き込まれるようになる。なお、直前ブロックＲＡＭ１０にはチャンネル選択信号ＳＨ（０〜６３）も印加されており、チャンネル毎に直前ブロックＲＡＭ１０に書き込まれる。このように、ＳＤＥＣ３の発生とともにＲＡＭ６にアクセスした場合には、読み出されてデコードされたＰＣＭ楽音波形サンプルにより、直前ブロックＲＡＭ１０の内容が更新されるようになる。
【００４９】
また、リターンタイミングＲＴＮＴが発生される場合はＳＤＥＣ５〜ＳＤＥＣ７のいずれかが発生されることになり、ＳＤＥＣ５が発生される場合は、図７（ｄ）に示すようにデータＩＮＴ＋１に対応するサンプルがループスタートブロックＲＡＭ１１のサブブロックＳＢ２以上のサンプルとなる場合であるので、ＳＤＥＣ５が発生された場合は、ループスタートブロックＲＡＭ１１の内容を直前ブロックＲＡＭ１０に転送して更新する必要がある。さらに、ＳＤＥＣ６が発生される場合は、図７（ｅ）に示すようにデータＩＮＴに対応するサンプルがループスタートブロックＲＡＭ１１のサブブロックＳＢ４のサンプルとなる場合であるので、ＳＤＥＣ６が発生された場合も、ループスタートブロックＲＡＭ１１の内容を直前ブロックＲＡＭ１０に転送して更新する必要がある。そこで、ＳＥＬ１１の入力Ｂに供給されているループスタートブロックＲＡＭ１１のサンプルを、ＳＥＬ１７を介してＳＥＬ１１から選択出力して直前ブロックＲＡＭ１０に供給している。これにより、ループスタートブロックＲＡＭ１１の内容で直前ブロックＲＡＭ１０の内容が更新されるようになる。
【００５０】
また、ＳＥＬ１１の選択出力が供給されるループスタートブロックＲＡＭ１１のサブブロックＳＢ１のライトイネーブル（ＷＥ）信号は第１１ゲートアレイ（ＧＡ１１）の作用により、ループスタートアドレス検出信号ＬＳＡＤＴＣＴが発生されている際のタイミングＴＩＭ１で発生される。また、サブブロックＳＢ２のＷＥ信号はループスタートアドレス検出信号ＬＳＡＤＴＣＴが発生されている際のタイミングＴＩＭ３で発生され、サブブロックＳＢ３のＷＥ信号はループスタートアドレス検出信号ＬＳＡＤＴＣＴが発生されている際のタイミングＴＩＭ５で発生され、サブブロックＳＢ４のＷＥ信号はループスタートアドレス検出信号ＬＳＡＤＴＣＴが発生されている際のタイミングＴＩＭ７で発生される。
【００５１】
ここで、ＬＳＡＤＴＣＴは前記したようにループスタートアドレスＬＳＡに対応するサンプルのメモリアドレスに、データＩＮＴ＋１に対応するサンプルのメモリアドレスが一致した際に発生される。したがって、ＬＳＡＤＴＣＴ発生中にＲＡＭ６に対する新たなアクセスが行われ読み出されて順次デコードされた１ブロックのＰＣＭ楽音波形サンプルには、ループスタートアドレスＬＳＡに対応するサンプルが含まれていることになる。そこで、ループスタートブロックＲＡＭ１１のＷＥ信号を上記の発生タイミングで発生することにより、ループスタートブロックＲＡＭ１１にループスタートアドレスＬＳＡに対応するサンプルを含む１ブロックのサンプルが書き込まれるようになる。なお、ループスタートブロックＲＡＭ１１にはチャンネル選択信号ＳＨ（０〜６３）も印加されており、チャンネル毎にループスタートブロックＲＡＭ１１に書き込まれる。このように、ＬＳＡＤＴＣＴが発生された場合には、読み出されてデコードされたＰＣＭ楽音波形サンプルがループスタートブロックＲＡＭ１１に書き込まれるようになる。
【００５２】
直前ブロックＲＡＭ１０のサブブロックＳＢ１〜ＳＢ４から出力される４つのサンプルは、それぞれ第１６セレクタ（ＳＥＬ１６）の入力Ａから入力Ｄに供給され、ループスタートブロックＲＡＭ１１のサブブロックＳＢ１〜ＳＢ４から出力される４つのサンプルは、それぞれ第１７セレクタ（ＳＥＬ１７）の入力Ａから入力Ｄに供給される。さらに、直前ブロックＲＡＭ１０のサブブロックＳＢ４から出力されるサンプルは、ＳＥＬ１２の入力Ｂに供給され、ループスタートブロックＲＡＭ１１サブブロックＳＢ４から出力されるサンプルは、ＳＥＬ１２の入力Ｃに供給される。ＳＥＬ１２の入力Ｂは、ＳＤＥＣ２あるいはＳＤＥＣ３のいずれかが発生している際に、タイミング信号ＴＩＭ０１が発生したときに発生される選択信号ＳＢにより選択される。すなわち、図７（ｂ）（ｃ）に示すように、ＳＤＥＣ２あるいはＳＤＥＣ３が発生している場合には、ＲＡＭ６にアクセスして読み出されたＡＤＰＣＭ楽音波形サンプルをデコードする必要がある。この際のタイミングＴＩＭ０１の期間において今回デコードブロックの先頭のサブブロックＳＢ１に対応するサンプルのデコードが行われるが、デコード時には予測値としてそのサンプルに隣接する直前のデコード後のサンプルが必要である。この隣接する直前のサンプルは、直前ブロックＲＡＭ１０のサブブロックＳＢ４に記憶されているので、このサンプルをＳＥＬ１２で選択し予測値のサンプルＸ（ｎ−１）としてＡＤＰＣＭデコード部７０に供給しているのである。
【００５３】
また、ＳＥＬ１２の入力Ｃは、ＳＤＥＣ６あるいはＳＤＥＣ７のいずれかが発生している際に、タイミング信号ＴＩＭ０１が発生したときに発生される選択信号ＳＣにより選択される。すなわち、図７（ｅ）（ｆ）に示すように、ＳＤＥＣ６あるいはＳＤＥＣ７が発生している場合には、リターン時にＲＡＭ６にアクセスして読み出されたＡＤＰＣＭ楽音波形サンプルをデコードする場合である。この際のタイミングＴＩＭ０１の期間において今回デコードブロックの先頭のサブブロックＳＢ１に対応するサンプルのデコードが行われるが、デコード時には予測値としてそのサンプルに隣接する直前のデコード後のサンプルが必要である。この隣接する直前のサンプルは、ループスタートブロックＲＡＭ１１のサブブロックＳＢ４に記憶されているので、このサンプルをＳＥＬ１２で選択し予測値のサンプルＸ（ｎ−１）としてＡＤＰＣＭデコード部７０に供給しているのである。
【００５４】
直前ブロックＲＡＭ１０およびループスタートブロックＲＡＭ１１の出力が供給されているＳＥＬ１６およびＳＥＬ１７には、共通の選択信号ＳＡ，ＳＢ，ＳＣ，ＳＤが印加されている。なお、入力Ａを選択する選択信号ＳＡはタイミング信号ＴＩＭ６７、入力Ｂを選択する選択信号ＳＢはタイミング信号ＴＩＭ４５、入力Ｃを選択する選択信号ＳＣはタイミング信号ＴＩＭ２３、入力Ｄを選択する選択信号ＳＤはタイミング信号ＴＩＭ０１とされている。
すると、ＳＥＬ１６からはタイミング信号ＴＩＭ０１の発生タイミングにおいて直前ブロックＲＡＭ１０のサブブロックＳＢ１のサンプルが選択出力され、タイミング信号ＴＩＭ２３の発生タイミングにおいて直前ブロックＲＡＭ１０のサブブロックＳＢ２のサンプルが選択出力され、タイミング信号ＴＩＭ４５の発生タイミングにおいて直前ブロックＲＡＭ１０のサブブロックＳＢ３のサンプルが選択出力され、タイミング信号ＴＩＭ６７の発生タイミングにおいて直前ブロックＲＡＭ１０のサブブロックＳＢ４のサンプルが選択出力され、第１５セレクタ（ＳＥＬ１５）の入力Ｂと第１８セレクタ（ＳＥＬ１８）の入力Ｂに供給される。
【００５５】
また、ＳＥＬ１７からはタイミング信号ＴＩＭ０１の発生タイミングにおいてループスタートブロックＲＡＭ１１のサブブロックＳＢ１のサンプルが選択出力され、タイミング信号ＴＩＭ２３の発生タイミングにおいてループスタートブロックＲＡＭ１１のサブブロックＳＢ２のサンプルが選択出力され、タイミング信号ＴＩＭ４５の発生タイミングにおいてループスタートブロックＲＡＭ１１のサブブロックＳＢ３のサンプルが選択出力され、タイミング信号ＴＩＭ６７の発生タイミングにおいてループスタートブロックＲＡＭ１１のサブブロックＳＢ４のサンプルが選択出力され、ＳＥＬ１５の入力ＣとＳＥＬ１８の入力Ｃに供給される。ＳＥＬ１５の入力ＡにはＡＤＰＣＭデコード部７０のデコード出力が直接供給され、ＳＥＬ１５の入力ＤにはＳＥＬ１２の選択出力が供給されている。さらに、ＳＥＬ１８の入力Ａおよび入力ＤにはＡＤＰＣＭデコード部７０のデコード出力が直接供給されている。
【００５６】
ＳＥＬ１５およびＳＥＬ１８には、共通の選択信号ＳＡ，ＳＢ，ＳＣ，ＳＤが印加されている。そして、この入力Ａを選択する選択信号ＳＡは第１７オアゲート（ＯＲ１７）の作用によりＳＤＥＣ３あるいはＳＤＥＣ７が発生された際に発生され、入力Ｂを選択する選択信号ＳＢはＳＤＥＣ１が発生された際に発生され、入力Ｃを選択する選択信号ＳＣはＳＤＥＣ５が発生された際に発生され、入力Ｄを選択する選択信号ＳＤは第１８オアゲート（ＯＲ１８）の作用によりＳＤＥＣ２あるいはＳＤＥＣ６が発生された際に発生される。
ここで、ＳＤＥＣ１が発生される場合は、図９（ａ）に示すように前回ＳＥＬ１５から選択出力したサンプルＳ０（１）、および、前回ＳＥＬ１８から選択出力したサンプルＳ１（１）と、今回ＳＥＬ１５から選択出力させるサンプルＳ０（２）、および、今回ＳＥＬ１８から選択出力させるサンプルＳ１（２）とが、全て直前ブロックＲＡＭ１０に記憶されている場合である。したがって、図１３のＳＤＥＣ１の欄に示すようにデータＩＮＴ＋１に対応するサンプルＳ１と、データＩＮＴに対応する隣接するサンプルＳ０として直前ブロックＲＡＭ１０からのサンプルを選択出力するように、選択信号ＳＢが発生されて直前ブロックＲＡＭ１０からの出力が入力されているＳＥＬ１５およびＳＥＬ１８の入力Ｂが選択されるのである。
【００５７】
また、ＳＤＥＣ２が発生される場合は、図９（ｂ）に示すように前回選択出力したサンプルＳ０（１）および前回選択出力したサンプルＳ１（１）と、今回ＳＥＬ１５から選択出力させるサンプルＳ０（２）とが直前ブロックＲＡＭ１０に記憶されており、今回ＳＥＬ１８から選択出力させるサンプルＳ１（２）が、今回デコードブロックのサブブロックＳＢ１のサンプルとされている場合である。したがって、ＲＡＭ６に対するアクセスが行われ図１３のＳＤＥＣ２の欄に示すようにデータＩＮＴ＋１に対応するサンプルＳ１を今回デコードブロックから選択出力するように、選択信号ＳＤが発生されてＡＤＰＣＭデコード部７０から出力される今回デコードブロックが入力されているＳＥＬ１８の入力Ｄが選択される。さらに、データＩＮＴに対応する隣接するサンプルＳ０を直前ブロックＲＡＭ１０のサブブロックＳＢ４から読み出すように、選択信号ＳＤが発生されて直前ブロックＲＡＭ１０のサブブロックＳＢ４からの出力がＳＥＬ１２を介して入力されているＳＥＬ１５の入力Ｄが選択されるのである。
【００５８】
さらにまた、ＳＤＥＣ３が発生される場合は、図９（ｃ）に示すように前回選択出力したサンプルＳ０（１）および前回選択出力したサンプルＳ１（１）とが直前ブロックＲＡＭ１０に記憶されており、今回ＳＥＬ１５から選択出力させるサンプルＳ０（２）と今回ＳＥＬ１８から選択出力させるサンプルＳ１（２）とが、今回デコードブロックに含まれている場合である。したがって、ＲＡＭ６に対するアクセスが行われ図１３のＳＤＥＣ３の欄に示すようにデータＩＮＴ＋１に対応するサンプルＳ１と、データＩＮＴに対応する隣接するサンプルＳ０を今回デコードブロックから選択出力するように、選択信号ＳＡが発生されてＡＤＰＣＭデコード部７０から出力される今回デコードブロックが入力されているＳＥＬ１５およびＳＥＬ１８の入力Ａが選択されるのである。
【００５９】
さらにまた、ＳＤＥＣ５が発生される場合は、リターン時であるリターンタイミングＲＴＮＴ信号が発生されていると共に、図９（ｄ）に示すように前回選択出力したサンプルＳ０（１）および前回選択出力したサンプルＳ１（１）とが直前ブロックＲＡＭ１０に記憶されており、今回ＳＥＬ１５から選択出力させるサンプルＳ０（２）と今回ＳＥＬ１８から選択出力させるサンプルＳ１（２）とが、ループスタートブロックＲＡＭ１１に記憶されている場合である。したがって、図１３のＳＤＥＣ５の欄に示すようにデータＩＮＴ＋１に対応するサンプルＳ１と、データＩＮＴに対応する隣接するサンプルＳ０をループスタートブロックＲＡＭ１１から選択出力するように、選択信号ＳＣが発生されてループスタートブロックＲＡＭ１１からの出力がＳＥＬ１７を介して入力されているＳＥＬ１５およびＳＥＬ１８の入力Ｃが選択されるのである。
【００６０】
さらにまた、ＳＤＥＣ６が発生される場合は、リターンタイミングＲＴＮＴ信号が発生されていると共に、図９（ｅ）に示すように前回選択出力したサンプルＳ０（１）および前回選択出力したサンプルＳ１（１）とが直前ブロックＲＡＭ１０に記憶されており、今回ＳＥＬ１５から選択出力させるサンプルＳ０（２）がループスタートブロックＲＡＭ１１に記憶されていると共に、今回ＳＥＬ１８から選択出力させるサンプルＳ１（２）が今回デコードブロックのサブブロックＳＢ１とされている場合である。したがって、ＲＡＭ６に対するアクセスが行われ、図１３のＳＤＥＣ６の欄に示すようにデータＩＮＴ＋１に対応するサンプルＳ１を今回デコードブロックから選択出力するように、選択信号ＳＤが発生されてＡＤＰＣＭデコード部７０から出力される今回デコードブロックが入力されているＳＥＬ１８の入力Ｄが選択される。さらに、データＩＮＴに対応する隣接するサンプルＳ０をループスタートブロックＲＡＭ１１のサブブロックＳＢ４から読み出すように、選択信号ＳＤが発生されてループスタートブロックＲＡＭ１１のサブブロックＳＢ４からの出力がＳＥＬ１２を介して入力されているＳＥＬ１５の入力Ｄが選択されるのである。
【００６１】
さらにまた、ＳＤＥＣ７が発生される場合は、リターンタイミングＲＴＮＴ信号が発生されていると共に、図９（ｆ）に示すように前回選択出力したサンプルＳ０（１）および前回選択出力したサンプルＳ１（１）とが直前ブロックＲＡＭ１０に記憶されており、今回ＳＥＬ１５から選択出力させるサンプルＳ０（２）と今回ＳＥＬ１８から選択出力させるサンプルＳ１（２）とが、今回デコードブロックに含まれている場合である。したがって、ＲＡＭ６に対するアクセスが行われ、図１３のＳＤＥＣ７の欄に示すようにデータＩＮＴ＋１に対応するサンプルＳ１と、データＩＮＴに対応する隣接するサンプルＳ０を今回デコードブロックから選択出力するように、選択信号ＳＡが発生されてＡＤＰＣＭデコード部７０から出力される今回デコードブロックが入力されているＳＥＬ１５およびＳＥＬ１８の入力Ａが選択されるのである。
なお、ＳＤＥＣ５およびＳＤＥＣ６が発生する場合は、ループスタートブロックＲＡＭ１１の内容が直前ブロックＲＡＭ１０に転送されてその内容の更新がおこなわれる。このため、ループスタートブロックＲＡＭ１１の出力が供給されているＳＥＬ１７の選択出力がＳＥＬ１１の入力Ｂに供給され、ＳＤＥＣ５およびＳＤＥＣ６が発生した際に、ＳＥＬ１１は入力Ｂを選択してループスタートブロックＲＡＭ１１からのサンプルを直前ブロックＲＡＭ１０に供給している。
【００６２】
上記したようにＳＥＬ１８からはデータＩＮＴ＋１に対応するサンプルＳ１が選択出力され、ＳＥＬ１５からはデータＩＮＴに対応する隣接するサンプルＳ０が選択出力されるが、タイミングによっては必要でないサンプルがＳＥＬ１５，ＳＥＬ１８から出力される。そこで、ＳＥＬ１５の後段に第１２ラッチ回路（ＬＡ１２）を設けると共に、ＳＥＬ１８の後段に第１４ラッチ（ＬＡ１４）を設けて必要なサンプルだけを出力するようにしている。
ＬＡ１２およびＬＡ１４の動作を第１選択制御情報ＤＳ０〜ＤＳ３および第２選択制御情報ＳＤＥＣ１〜ＳＤＥＣ３，ＳＤＥＣ５〜ＳＤＥＣ７の組み合わせで図１３、図１４および図１５を主に参照しながら説明する。
【００６３】
ＳＤＥＣ１とＤＳ０が共に発生している場合は、ＳＥＬ１５およびＳＥＬ１８からは入力Ｂに供給されている直前ブロックＲＡＭ１０から出力される図１５（ｃ）に示す前回デコードブロックが図１５（ｅ）に示すタイミングで順次選択出力される。この際は図１４の〈ＳＤＥＣ１〉に示しているように、第１６インバータ（ＩＮＶ１６）と第１２ゲートアレイ（ＧＡ１２）と第１３ゲートアレイ（ＧＡ１３）の作用により、ＬＡ１２にはタイミング信号ＴＩＭ１がラッチ信号として印加され、ＬＡ１４には第１４ゲートアレイ（ＧＡ１４）の作用によりタイミング信号ＴＩＭ３がラッチ信号として印加される。従って、ＬＡ１２に前回デコードブロックの先頭サブブロックのサンプルＳ（−４）がラッチされ、ＬＡ１４にサンプルＳ（−３）がラッチされる。すなわち、ＤＳ０が発生されているので、図８（ａ）に示されているように直前ブロックＲＡＭ１０のサブブロックＳＢ１のサンプルがサンプルＳ０とされ、隣接するサブブロックＳＢ２のサンプルがサンプルＳ１とされることになる。ＬＡ１２およびＬＡ１４でラッチされたサンプルＳ０とサンプルＳ１とは同期して出力されるようタイミングＴＩＭ７でラッチされる第１３ラッチ（ＬＡ１３）および第１５ラッチ（ＬＡ１５）を介して出力される。
【００６４】
また、ＳＤＥＣ１とＤＳ１が共に発生される場合は、ＳＥＬ１５およびＳＥＬ１８からは同様に図１５（ｃ）に示す前回デコードブロックが図１５（ｅ）に示すタイミングで順次選択出力される。この際は図１４の〈ＳＤＥＣ１〉に示しているようにＧＡ１３の作用により、ＬＡ１２にはタイミング信号ＴＩＭ３がラッチ信号として印加され、ＬＡ１４にはＧＡ１４の作用によりタイミング信号ＴＩＭ５がラッチ信号として印加される。従って、ＬＡ１２に前回デコードブロックのサンプルＳ（−３）がラッチされ、ＬＡ１４にサンプルＳ（−２）がラッチされる。すなわち、ＤＳ１が発生されているので、図８（ｂ）に示されているように直前ブロックＲＡＭ１０のサブブロックＳＢ２のサンプルがサンプルＳ０とされ、隣接するサブブロックＳＢ３のサンプルがサンプルＳ１とされることになる。ＬＡ１２およびＬＡ１４でラッチされたサンプルＳ０とサンプルＳ１とは、タイミングＴＩＭ７でＬＡ１３およびＬＡ１５から出力される。
【００６５】
また、ＳＤＥＣ１とＤＳ２が共に発生される場合は、ＳＥＬ１５およびＳＥＬ１８からは同様に図１５（ｃ）に示す前回デコードブロックが図１５（ｅ）に示すタイミングで順次選択出力される。この際は図１４の〈ＳＤＥＣ１〉に示しているようにＧＡ１３の作用により、ＬＡ１２にはタイミング信号ＴＩＭ５がラッチ信号として印加され、ＬＡ１４にはＧＡ１４の作用によりタイミング信号ＴＩＭ７がラッチ信号として印加される。従って、ＬＡ１２に前回デコードブロックのサンプルＳ（−２）がラッチされ、ＬＡ１４にサンプルＳ（−１）がラッチされる。すなわち、ＤＳ２が発生されているので、図８（ｃ）および図９（ａ）に示されているように直前ブロックＲＡＭ１０のサブブロックＳＢ３のサンプルがサンプルＳ０とされ、隣接するサブブロックＳＢ４のサンプルがサンプルＳ１とされることになる。ＬＡ１２およびＬＡ１４でラッチされたサンプルＳ０とサンプルＳ１とは、タイミングＴＩＭ７でＬＡ１３およびＬＡ１５から出力される。
【００６６】
ＳＤＥＣ１とＤＳ３が共に発生される場合はなく、ＤＳ３はＳＤＥＣ２と共に発生される。この場合は、ＳＥＬ１５からは入力Ｄに供給されている図１５（ｂ）に示すＳＥＬ１２から出力される１サンプル遅延された今回デコードブロックが図１５（ｅ）に示すタイミングで順次選択出力され、ＳＥＬ１８からは入力Ｄに供給されている図１５（ａ）に示す今回デコードブロックが図１５（ｅ）に示すタイミングで順次選択出力される。この際は図１４の〈ＳＤＥＣ２〉に示しているように、ＯＲ１８とＧＡ１２とＧＡ１３の作用により、ＬＡ１２にはタイミング信号ＴＩＭ１がラッチ信号として印加され、ＬＡ１４にはＧＡ１４の作用によりタイミング信号ＴＩＭ１がラッチ信号として印加される。従って、ＬＡ１４に今回デコードブロックの先頭サブブロックのサンプルＳ（０）がラッチされ、ＬＡ１２にサンプルＳ（０）に隣接する直前のサンプルＳ（＊）がラッチされる。ＳＤＥＣ２はリターン時には発生しないので、Ｓ（＊）は前回最終デコードサンプルとなる。すなわち、ＤＳ３が発生されているので、図８（ｄ）および図９（ｂ）に示されているように今回デコードブロックのサブブロックＳＢ１のサンプルがサンプルＳ１とされ、直前デコードブロック（直前ブロックＲＡＭ１０）のサブブロックＳＢ４のサンプルがサンプルＳ０とされることになる。ＬＡ１２およびＬＡ１４でラッチされたサンプルＳ０とサンプルＳ１とは同期して出力されるようタイミングＴＩＭ７でラッチされるＬＡ１３およびＬＡ１５を介して出力される。
【００６７】
次に、ＳＤＥＣ３とＤＳ０が共に発生された場合は、ＳＥＬ１５およびＳＥＬ１８からは入力Ａに供給されているＡＤＰＣＭデコード部７０から出力される図１５（ａ）に示す今回デコードブロックが図１５（ｅ）に示すタイミングで順次選択出力される。この際は図１４の〈ＳＤＥＣ３〉に示しているように、ＩＮＶ１６とＧＡ１２とＧＡ１３の作用により、ＬＡ１２にはタイミング信号ＴＩＭ１がラッチ信号として印加され、ＬＡ１４にはＧＡ１４の作用によりタイミング信号ＴＩＭ３がラッチ信号として印加される。従って、ＬＡ１２に今回デコードブロックの先頭サブブロックのサンプルＳ（０）がラッチされ、ＬＡ１４に隣接するサンプルＳ（１）がラッチされる。すなわち、ＤＳ０が発生されているので、図８（ａ）および図９（ｃ）に示されているように今回デコードブロックのサブブロックＳＢ１のサンプルがサンプルＳ０とされ、隣接するサブブロックＳＢ２のサンプルがサンプルＳ１とされることになる。ＬＡ１２およびＬＡ１４でラッチされたサンプルＳ０とサンプルＳ１とは同期して出力されるようタイミングＴＩＭ７でラッチされるＬＡ１３およびＬＡ１５を介して出力される。
【００６８】
また、ＳＤＥＣ３とＤＳ１が共に発生される場合は、ＳＥＬ１５およびＳＥＬ１８からは同様に図１５（ａ）に示す今回デコードブロックが図１５（ｅ）に示すタイミングで順次選択出力される。この際は図１４の〈ＳＤＥＣ３〉に示しているようにＧＡ１３の作用により、ＬＡ１２にはタイミング信号ＴＩＭ３がラッチ信号として印加され、ＬＡ１４にはＧＡ１４の作用によりタイミング信号ＴＩＭ５がラッチ信号として印加される。従って、ＬＡ１２に今回デコードブロックのサンプルＳ（１）がラッチされ、ＬＡ１４にサンプルＳ（２）がラッチされる。すなわち、ＤＳ１が発生されているので、図８（ｂ）に示されているように今回デコードブロックのサブブロックＳＢ２のサンプルがサンプルＳ０とされ、隣接するサブブロックＳＢ３のサンプルがサンプルＳ１とされることになる。ＬＡ１２およびＬＡ１４でラッチされたサンプルＳ０とサンプルＳ１とは、タイミングＴＩＭ７でＬＡ１３およびＬＡ１５から出力される。
【００６９】
また、ＳＤＥＣ３とＤＳ２が共に発生される場合は、ＳＥＬ１５およびＳＥＬ１８からは同様に図１５（ａ）に示す前回デコードブロックが図１５（ｅ）に示すタイミングで順次選択出力される。この際は図１４の〈ＳＤＥＣ３〉に示しているようにＧＡ１３の作用により、ＬＡ１２にはタイミング信号ＴＩＭ５がラッチ信号として印加され、ＬＡ１４にはＧＡ１４の作用によりタイミング信号ＴＩＭ７がラッチ信号として印加される。従って、ＬＡ１２に今回デコードブロックのサンプルＳ（２）がラッチされ、ＬＡ１４にサンプルＳ（３）がラッチされる。すなわち、ＤＳ２が発生されているので、図８（ｃ）に示されているように今回デコードブロックのサブブロックＳＢ３のサンプルがサンプルＳ０とされ、隣接するサブブロックＳＢ４のサンプルがサンプルＳ１とされることになる。ＬＡ１２およびＬＡ１４でラッチされたサンプルＳ０とサンプルＳ１とは、タイミングＴＩＭ７でＬＡ１３およびＬＡ１５から出力される。
【００７０】
次に、ＳＤＥＣ５とＤＳ０が共に発生された場合は、ＳＥＬ１５およびＳＥＬ１８からは入力Ｃに供給されているループスタートブロックＲＡＭ１１から出力される図１５（ｄ）に示すループスタートブロックが図１５（ｅ）に示すタイミングで順次選択出力される。この際は図１４の〈ＳＤＥＣ５〉に示しているように、ＩＮＶ１６とＧＡ１２とＧＡ１３の作用により、ＬＡ１２にはタイミング信号ＴＩＭ１がラッチ信号として印加され、ＬＡ１４にはＧＡ１４の作用によりタイミング信号ＴＩＭ３がラッチ信号として印加される。従って、ＬＡ１２にループスタートブロックの先頭サブブロックのサンプルＳ（−４Ｌ）がラッチされ、ＬＡ１４に隣接するサンプルＳ（１−４Ｌ）がラッチされる。すなわち、ＤＳ０が発生されているので、図８（ａ）に示されているようにループスタートブロックＲＡＭ１１のサブブロックＳＢ１のサンプルがサンプルＳ０とされ、隣接するサブブロックＳＢ２のサンプルがサンプルＳ１とされることになる。ＬＡ１２およびＬＡ１４でラッチされたサンプルＳ０とサンプルＳ１とは同期して出力されるようタイミングＴＩＭ７でラッチされるＬＡ１３およびＬＡ１５を介して出力される。
【００７１】
また、ＳＤＥＣ５とＤＳ１が共に発生される場合は、ＳＥＬ１５およびＳＥＬ１８からは同様に図１５（ｄ）に示す今回デコードブロックが図１５（ｅ）に示すタイミングで順次選択出力される。この際は図１４の〈ＳＤＥＣ５〉に示しているようにＧＡ１３の作用により、ＬＡ１２にはタイミング信号ＴＩＭ３がラッチ信号として印加され、ＬＡ１４にはＧＡ１４の作用によりタイミング信号ＴＩＭ５がラッチ信号として印加される。従って、ＬＡ１２にループスタートブロックのサンプルＳ（１−４Ｌ）がラッチされ、ＬＡ１４にサンプルＳ（２−４Ｌ）がラッチされる。すなわち、ＤＳ１が発生されているので、図８（ｂ）および図９（ｄ）に示されているようにループスタートブロックＲＡＭ１１のサブブロックＳＢ２のサンプルがサンプルＳ０とされ、隣接するサブブロックＳＢ３のサンプルがサンプルＳ１とされることになる。ＬＡ１２およびＬＡ１４でラッチされたサンプルＳ０とサンプルＳ１とは、タイミングＴＩＭ７でＬＡ１３およびＬＡ１５から出力される。
【００７２】
また、ＳＤＥＣ５とＤＳ２が共に発生される場合は、ＳＥＬ１５およびＳＥＬ１８からは同様に図１５（ｄ）に示すループスタートブロックが図１５（ｅ）に示すタイミングで順次選択出力される。この際は図１４の〈ＳＤＥＣ５〉に示しているようにＧＡ１３の作用により、ＬＡ１２にはタイミング信号ＴＩＭ５がラッチ信号として印加され、ＬＡ１４にはＧＡ１４の作用によりタイミング信号ＴＩＭ７がラッチ信号として印加される。従って、ＬＡ１２にループスタートブロックのサンプルＳ（２−４Ｌ）がラッチされ、ＬＡ１４にサンプルＳ（３−４Ｌ）がラッチされる。すなわち、ＤＳ２が発生されているので、図８（ｃ）に示されているようにループスタートブロックＲＡＭ１１のサブブロックＳＢ３のサンプルがサンプルＳ０とされ、隣接するサブブロックＳＢ４のサンプルがサンプルＳ１とされることになる。ＬＡ１２およびＬＡ１４でラッチされたサンプルＳ０とサンプルＳ１とは、タイミングＴＩＭ７でＬＡ１３およびＬＡ１５から出力される。
【００７３】
ＳＤＥＣ５とＤＳ３が共に発生される場合はなく、ＤＳ３はＳＤＥＣ６と共に発生される。この場合は、ＳＥＬ１５からは入力Ｄに供給されている図１５（ｂ）に示すＳＥＬ１２から出力される１サンプル遅延された今回デコードブロックが図１５（ｅ）に示すタイミングで順次選択出力され、ＳＥＬ１８からは入力Ｄに供給されている図１５（ａ）に示す今回デコードブロックが図１５（ｅ）に示すタイミングで順次選択出力される。この際は図１４の〈ＳＤＥＣ６〉に示しているように、ＯＲ１８とＧＡ１２とＧＡ１３の作用により、ＬＡ１２にはタイミング信号ＴＩＭ１がラッチ信号として印加され、ＬＡ１４にはＧＡ１４の作用によりタイミング信号ＴＩＭ１がラッチ信号として印加される。従って、ＬＡ１４に今回デコードブロックの先頭サブブロックのサンプルＳ（０）がラッチされ、ＬＡ１２にサンプルＳ（０）に隣接する直前のサンプルＳ（＊）がラッチされる。ＳＤＥＣ６が発生するのはリターン時なので、Ｓ（＊）はループスタートブロックの最終デコードサンプルとなる。すなわち、ＤＳ３が発生されているので、図８（ｄ）および図９（ｅ）に示されているように今回デコードブロックのサブブロックＳＢ１のサンプルがサンプルＳ１とされ、ループスタートブロック（ループスタートブロックＲＡＭ１１）のサブブロックＳＢ４のサンプルがサンプルＳ０とされることになる。ＬＡ１２およびＬＡ１４でラッチされたサンプルＳ０とサンプルＳ１とは同期して出力されるようタイミングＴＩＭ７でラッチされるＬＡ１３およびＬＡ１５を介して出力される。
【００７４】
次に、ＳＤＥＣ７とＤＳ０が共に発生された場合は、ＳＥＬ１５およびＳＥＬ１８からは入力Ａに供給されているＡＤＰＣＭデコード部７０から出力される図１５（ａ）に示す今回デコードブロックが図１５（ｅ）に示すタイミングで順次選択出力される。この際は図１４の〈ＳＤＥＣ７〉に示しているように、ＩＮＶ１６とＧＡ１２とＧＡ１３の作用により、ＬＡ１２にはタイミング信号ＴＩＭ１がラッチ信号として印加され、ＬＡ１４にはＧＡ１４の作用によりタイミング信号ＴＩＭ３がラッチ信号として印加される。従って、ＬＡ１２に今回デコードブロックの先頭サブブロックのサンプルＳ（０）がラッチされ、ＬＡ１４に隣接するサンプルＳ（１）がラッチされる。すなわち、ＤＳ０が発生されているので、図８（ａ）および図９（ｆ）に示されているように今回デコードブロックのサブブロックＳＢ１のサンプルがサンプルＳ０とされ、隣接するサブブロックＳＢ２のサンプルがサンプルＳ１とされることになる。ＬＡ１２およびＬＡ１４でラッチされたサンプルＳ０とサンプルＳ１とは同期して出力されるようタイミングＴＩＭ７でラッチされるＬＡ１３およびＬＡ１５を介して出力される。
【００７５】
また、ＳＤＥＣ７とＤＳ１が共に発生される場合は、ＳＥＬ１５およびＳＥＬ１８からは同様に図１５（ａ）に示す今回デコードブロックが図１５（ｅ）に示すタイミングで順次選択出力される。この際は図１４の〈ＳＤＥＣ７〉に示しているようにＧＡ１３の作用により、ＬＡ１２にはタイミング信号ＴＩＭ３がラッチ信号として印加され、ＬＡ１４にはＧＡ１４の作用によりタイミング信号ＴＩＭ５がラッチ信号として印加される。従って、ＬＡ１２に今回デコードブロックのサンプルＳ（１）がラッチされ、ＬＡ１４にサンプルＳ（２）がラッチされる。すなわち、ＤＳ１が発生されているので、図８（ｂ）に示されているように今回デコードブロックのサブブロックＳＢ２のサンプルがサンプルＳ０とされ、隣接するサブブロックＳＢ３のサンプルがサンプルＳ１とされることになる。ＬＡ１２およびＬＡ１４でラッチされたサンプルＳ０とサンプルＳ１とは、タイミングＴＩＭ７でＬＡ１３およびＬＡ１５から出力される。
【００７６】
また、ＳＤＥＣ７とＤＳ２が共に発生される場合は、ＳＥＬ１５およびＳＥＬ１８からは同様に図１５（ａ）に示す前回デコードブロックが図１５（ｅ）に示すタイミングで順次選択出力される。この際は図１４の〈ＳＤＥＣ７〉に示しているようにＧＡ１３の作用により、ＬＡ１２にはタイミング信号ＴＩＭ５がラッチ信号として印加され、ＬＡ１４にはＧＡ１４の作用によりタイミング信号ＴＩＭ７がラッチ信号として印加される。従って、ＬＡ１２に今回デコードブロックのサンプルＳ（２）がラッチされ、ＬＡ１４にサンプルＳ（３）がラッチされる。すなわち、ＤＳ２が発生されているので、図８（ｃ）に示されているように今回デコードブロックのサブブロックＳＢ３のサンプルがサンプルＳ０とされ、隣接するサブブロックＳＢ４のサンプルがサンプルＳ１とされることになる。ＬＡ１２およびＬＡ１４でラッチされたサンプルＳ０とサンプルＳ１とは、タイミングＴＩＭ７でＬＡ１３およびＬＡ１５から出力される。
【００７７】
このようにして第１選択制御情報ＤＳ０〜ＤＳ３および第２選択制御情報ＳＤＥＣ１〜３，５〜７により選択出力されたサンプルＳ０とサンプルＳ１とは、補間器（Ｉｎｔｅｒｐｏｌａｔｏｒ）８に供給されて位相情報の小数部データＦＲＡに対応した補間サンプルが生成され、楽音波形サンプルＳとしてアキュムレータＡＣＣ９に供給される。
【００７８】
ここで、図１０および図１１に戻りＡＤＰＣＭデコーダ７の構成における量子化幅Δ（ｎ−１）信号をＡＤＰＣＭデコード部７０に供給するための構成の説明を行う。
前記したように、ＳＥＬ１０で選択出力されたＡＤＰＣＭ楽音波形サンプルＤ（ｎ）は量子化幅演算部７１にも入力され、ＳＥＬ１４から選択出力された量子化幅Δ（ｎ−１）信号と上記（１）式の演算が行われて、新たな量子化幅Δ（ｎ）信号が生成されて出力される。生成された量子化幅Δ（ｎ）信号は、ＬＡ１１にＯＲ１６を介して印加されたタイミング信号ＴＩＭ１，ＴＩＭ３，ＴＩＭ５，ＴＩＭ７のそれぞれのタイミングによりラッチされる。さらに、第１３セレクタ（ＳＥＬ１３）の入力Ａに供給される。入力ＡはＳＤＥＣ５あるいはＳＤＥＣ６が発生されていない場合に選択されて、ＳＥＬ１３の選択出力は直前量子化幅ＲＡＭ１２およびループスタート量子化幅ＲＡＭ１３に並列に供給される。
【００７９】
直前量子化幅ＲＡＭ１２に書き込まれるのはリターンタイミングＲＴＮＴ信号あるいはＳＤＥＣ３が発生されているときのタイミングＴＩＭ７である。すなわち、直前ブロックＲＡＭ１０の内容が更新される際に、その最終のサンプルを用いて演算された量子化幅Δが直前量子化幅ＲＡＭ１２に書き込まれるようになる。この直前量子化幅ＲＡＭ１２の出力は、ＳＤＥＣ２あるいはＳＤＥＣ３が発生されている際のタイミングＴＩＭ０１にＳＥＬ１４から選択出力されてＡＤＰＣＭデコード部７０に量子化幅Δ（ｎ−１）信号として供給される。この際には、直前ブロックＲＡＭ１０のサブブロックＳＢ４のサンプルがＳＥＬ１２から選択出力されてＡＤＰＣＭデコード部７０にサンプルＸ（ｎ−１）として供給されている。
【００８０】
また、ループスタート量子化幅ＲＡＭ１３に書き込まれるのはループスタートブロックスタートアドレス検出信号ＬＳＤＴＣＴが発生されているときのタイミングＴＩＭ７である。すなわち、ループスタートブロックＲＡＭ１１の内容が更新される際に、ループスタートブロックの最終のサンプルを用いて演算された量子化幅Δ信号がループスタート量子化幅ＲＡＭ１３に書き込まれるようになる。このループスタート量子化幅ＲＡＭ１３の出力は、ＳＤＥＣ６あるいはＳＤＥＣ７が発生されている際のタイミングＴＩＭ０１にＳＥＬ１４から選択出力されてＡＤＰＣＭデコード部７０に量子化幅Δ（ｎ−１）信号として供給される。この際には、ループスタートブロックＲＡＭ１１のサブブロックＳＢ４のサンプルがＳＥＬ１２から選択出力されてＡＤＰＣＭデコード部７０にサンプルＸ（ｎ−１）として供給されている。
また、ループスタート量子化幅ＲＡＭ１３の出力はＳＥＬ１３の入力Ｂにも供給されており、リターンタイミングＲＴＮＴ信号と共にＳＤＥＣ５あるいはＳＤＥＣ６が発生した際には、ＳＥＬ１３から選択出力されたループスタート量子化幅ＲＡＭ１３の出力が直前量子化幅ＲＡＭ１２に転送されて、直前量子化幅ＲＡＭ１２の内容が更新される。この動作は、前記した直前ブロックＲＡＭ１０の内容がループスタートブロックＲＡＭ１１の内容で更新される場合と同時に行われる。これにより、必要とする量子化幅Δ（ｎ−１）信号をＡＤＰＣＭデコード部７０に常に供給することができるようになる。
【００８１】
以上説明した本発明の圧縮波形サンプルを用いたループ再生装置においては、図４に示すような波形のサンプルを繰り返し再生するループ再生を行うことにより楽音等を発生している。このようなループ再生のモードをノーマルループモードということにする。そして、本発明の圧縮波形サンプルを用いたループ再生装置においては、ノーマルループモードの再生だけではなく、ループ再生機能を応用してロングストリームの再生も行うことができる。この再生モードをロングストリームモードということにする。
そこで、本発明の圧縮波形サンプルを用いたループ再生装置におけるロングストリームモードにおける再生について図１６を参照しながら次に説明する。なお、ロングストリームモードにおける再生は、６４チャンネルのうちの少なくとも１チャンネルを用いて行われる。
【００８２】
図１６は、図３に示す本発明の圧縮波形サンプルを用いたループ再生装置の構成においてロングストリームモードの再生を行う概略を説明するための図である。ロングストリームモード時には周辺装置４に装着されたＣＤ−ＲＯＭに記録されているＢＧＭ等のロングストリームが再生される。このロングストリームモード時は、最初にＲＡＭ６に用意された同じ大きさのエリアＡとエリアＢとからなるエリアの記憶容量に対応する大きさの図示するロングストリーム部分１が読み出されて記憶される。この記憶動作は、ＣＰＵ３がメモリコントローラ５を制御して、ＣＤ−ＲＯＭから読み出したロングストリーム部分１のＡＤＰＣＭ楽音波形サンプルをＲＡＭ６のエリアＡおよびエリアＢに記憶する。エリアＡとエリアＢとは同じ記憶容量とされ、この例では３ブロック分（１２ＡＤＰＣＭ楽音波形サンプル分）の記憶容量とされる。なお、ロングストリームモード時には、エリアＡの最初のサンプルに対応する先頭アドレスであるスタートアドレスＳＡとループスタートアドレスＬＳＡとを等しくし、エリアＢの最終のブロックの先頭サンプルに対応するアドレスをループエンドアドレスＬＥＡとしている。
【００８３】
ついで、メモリコントローラ５はＲＡＭ６のエリアＡの最初からＡＤＰＣＭ楽音波形サンプルを読み出してＡＤＰＣＭデコーダ７に供給し、前記したようにＡＤＰＣＭデコードが行われてＰＣＭ楽音波形サンプルＳ０，Ｓ１が出力される。ＰＣＭ楽音波形サンプルサンプルＳ０，Ｓ１は、補間器８に供給されて位相情報の小数部データＦＲＡに対応した補間サンプルが生成され、楽音波形サンプルＳとしてアキュムレータＡＣＣ９に供給される。
ここで、再生が進んでデータＩＮＴが（ＬＥＡ−ＬＳＡ）／２以上となったこと、すなわちエリアＡの最終のＡＤＰＣＭ楽音波形サンプルが読み出されたことが検出されたときに、ＣＰＵ３はＣＤ−ＲＯＭから前回読み出された最終のブロック（エリアＢの最終ブロック）と次の２ブロック分の３ブロック分のロングストリーム部分２Ａを読み出してＲＡＭ６のエリアＡに記憶させる。上記検出は、ＣＰＵ３がＰＧ１から出力される位相情報の整数部データＩＮＴが記憶されているレジスタ１０の内容をモニタすることにより行う。そして、エリアＢに記憶されているロングストリームのＡＤＰＣＭ楽音波形サンプルが順次に逐一読み出されて再生が継続される。
【００８４】
さらに、再生が進んでＣＰＵ３がデータＩＮＴがループエンドアドレスＬＥＡ以上となったことを検出すると、ＣＰＵ３はＣＤ−ＲＯＭから前回読み出された最終のブロックの次の３ブロック分のロングストリーム部分２Ｂを読み出してＲＡＭ６のエリアＢに記憶させる。この場合には、ＡＤＰＣＭデコード部７０からループエンドアドレスＬＥＡを越えた際に発生されるリターンタイミングＲＴＮＴおよびリターン値ＲＴＮＰとがＰＧ１に供給されて、ＰＧ１から出力される位相情報はリターン値ＲＴＮＰに対応した値となる。この際のＰＧ１から出力される位相情報は、エリアＡの先頭ブロックアドレスに対応するようになり、続く再生はエリアＡに記憶されている次のロングストリーム部分２ＡのＡＤＰＣＭ楽音波形サンプルを読み出すことにより継続されるようになる。
このように、データＩＮＴが（ＬＥＡ−ＬＳＡ）／２以上となった際にエリアＡをすでに読み出されている最終のブロックを重複するよう更新すると共に、データＩＮＴがループエンドアドレスＬＥＡ以上となった際にエリアＢを更新しながらループ再生を繰り返し行うことにより、ＲＡＭ６のエリアＡとエリアＢとが交互に所定量毎の新たなロングストリーム部分のＡＤＰＣＭ楽音波形サンプルにより更新されていくようになる。これにより、ＢＧＭ等のＲＡＭ６にすべて記憶することのできない大量のサンプルからなるロングストリームを再生することが可能となる。
【００８５】
次に、ロングストリームモード時に発生される第１選択制御情報ＤＳ０〜ＤＳ３および第２選択制御情報ＳＤＥＣ１〜ＳＤＥＣ３が発生された際のＡＤＰＣＭデコーダ７の動作の概略を図１７を参照しながら説明する。なお、ロングストリームモード時には、図６を参照すれば明らかなようにＳＤＥＣ５〜ＳＤＥＣ７はＧＡ３の作用により発生されない。
図１７に示す（ａ）から（ｃ）の動作は、図９に示す（ａ）から（ｃ）の動作と同様であるので、その説明は省略する。図１７（ｄ）に示す動作は、データＩＮＴ＋１がループエンドアドレスＬＥＡを越えた場合のリターン時の動作であり、図１７（ｄ）にリターンタイミングＲＴＮＴが発生している際にＳＤＥＣ３とＤＳ０とが共に発生された場合の動作を示している。
【００８６】
この場合は、前回選択出力したサンプルＳ０（１）および前回選択出力したサンプルＳ１（１）とが直前ブロックＲＡＭ１０に記憶されており、今回ＳＥＬ１５から選択出力させるサンプルＳ０（２）と今回ＳＥＬ１８から選択出力させるサンプルＳ１（２）とが、次のブロックのサブブロックＳＢ１，サブブロックＳＢ２のサンプルとされる場合である。このサブブロックＳＢ１のサンプルに対応するアドレスはループエンドアドレスＬＥＡである。したがって、ＲＡＭ６をアクセスしてエリアＢの最終ブロックを読み出せばよいのであるが、この際にはリターンタイミングＲＴＮＴが発生されているので、この際に発生されるメモリアドレスＭＡはループスタートアドレスＬＳＡに対応するエリアＡの最初のブロックを指すメモリアドレスになる。すなわち、リターン時はエリアＢの最終ブロックとエリアＡの最初のブロックとを同一内容として連続するＡＤＰＣＭ楽音波形サンプルを読み出す必要がある。このため、図１６に示すようにエリアＡが更新される際には、エリアＢの最終ブロックが先頭ブロックとしてエリアＡに重複して書き込まれるのである。このようにしてＲＡＭ６のエリアＡの先頭のブロックが読み出されて、今回デコードブロックとしてデコードされるようになる。
【００８７】
図１７（ｅ）に示す動作は、ピッチアップしてロングストリーム再生する際に、データＩＮＴ＋１がループエンドアドレスＬＥＡを越えた場合のリターン時の動作を示している。この場合は、前回選択出力したサンプルＳ０（１）が直前ブロックＲＡＭ１０に記憶されていると共に、前回選択出力したサンプルＳ１（１）が次のブロックのサブブロックＳＢ１のサンプルとされ、直前ブロックＲＡＭ１０に記憶されており今回ＳＥＬ１５から選択出力させるサンプルＳ０（２）が次のブロックのサブブロックＳＢ４のサンプルとされると共に、今回ＳＥＬ１８から選択出力させるサンプルＳ１（２）が、さらに次のブロックのサブブロックＳＢ１のサンプルとされる場合である。次のサブブロックＳＢ１のサンプルＳ１（１）に対応するアドレスはループエンドアドレスＬＥＡである。この場合も前述と同様にループスタートアドレスＬＳＡに対応するエリアＡの最初のブロックにアクセスされるようになる。この際に、次のブロックを読み出してデコードすることは可能であるが、ハードウェアの制限からその次のブロックにアクセスすることはできない。従って、図１７（ｅ）に示すようなピッチアップを伴うことはできないので、このようなピッチアップの再生は制限される。
【００８８】
以上説明した本発明の圧縮波形サンプルを用いたループ再生装置においては、楽音を発生するものとして説明したが楽音に限るものではなく、ゲームにおける効果音等を発生するものであってもよい。また、上記の説明においてはピッチ非同期タイプとして説明したが、必ずしもピッチ非同期タイプとすることはなく、必要に応じて本発明の圧縮波形サンプルを用いたループ再生装置をピッチ同期タイプとしてもよい。
さらに、以上説明した本発明の圧縮波形サンプルを用いたループ再生装置においては、６４音同時発音可能とされているが、この発音数に限られるものではなく１２８音同時発音可能にしても、逆に３２音同時発音可能であってもよい。さらにまた、１オクターブ以内のピッチアップとしたが、２つ以上のブロックを読み出し可能となるようハードウェアを構成すれば、２オクターブ以上のピッチアップを可能とすることができる。
さらにまた、波形サンプルを圧縮する方式として量子化幅を適応的に制御するＡＤＰＣＭ方式を採用したが、この方式に限ることはなくＤＰＣＭ方式により圧縮するようにしてもよい。
【００８９】
【発明の効果】
本発明は以上のように、最初にループスタート位置の圧縮波形サンプルを読み出した時にデコードされた伸長波形サンプルを、以降にループバックした時の予測値として一時記憶するようにしたので、ループバック時にループスタートの位置に戻されても、一時記憶手段に記憶されている伸長波形サンプルを予測値としてデコードすることができる。従って、１波形サンプル当たりのビット数を削減した圧縮波形サンプルを記憶した波形サンプル記憶手段を備えていても、ループ再生による再生を可能とすることができる。
また、ピッチ非同期タイプとして所望のピッチ情報を所定周期毎に累算することにより、ループスタート位置を経由してループエンド位置まで順次増加する位相情報を発生するようにすると、時分割処理を容易に行えるようになり、低コストで複数の楽音を再生することが可能となる。
【図面の簡単な説明】
【図１】ＡＤＰＣＭエンコーダの一般的な構成を示す図である。
【図２】ＡＤＰＣＭデコーダの一般的な構成を示す図である。
【図３】本発明の圧縮波形サンプルを用いたループ再生装置における実施の形態の構成例を示すブロック図である。
【図４】本発明の圧縮波形サンプルを用いたループ再生装置における波形サンプルを圧縮した際にその圧縮波形サンプルを記憶する態様を示す図である。
【図５】本発明の圧縮波形サンプルを用いたループ再生装置の実施の形態における位相情報発生部の構成およびその動作を示す図である。
【図６】本発明の圧縮波形サンプルを用いたループ再生装置の実施の形態におけるアドレスポインタの構成を示す回路図である。
【図７】本発明の圧縮波形サンプルを用いたループ再生装置の実施の形態における第２選択制御情報ＳＤＥＣが発生した際のＡＤＰＣＭデコーダの動作を示す図である。
【図８】本発明の圧縮波形サンプルを用いたループ再生装置の実施の形態における第１選択制御情報ＤＳが発生した際のＡＤＰＣＭデコーダの動作を示す図である。
【図９】本発明の圧縮波形サンプルを用いたループ再生装置の実施の形態における第１選択制御情報ＤＳと第２選択制御情報ＳＤＥＣが共に発生した際のＡＤＰＣＭデコーダの動作を示す図である。
【図１０】本発明の圧縮波形サンプルを用いたループ再生装置の実施の形態におけるＡＤＰＣＭデコーダの詳細構成の一部を示す回路図である。
【図１１】本発明の圧縮波形サンプルを用いたループ再生装置の実施の形態におけるＡＤＰＣＭデコーダの詳細構成の他の一部を示す回路図である。
【図１２】本発明の圧縮波形サンプルを用いたループ再生装置の実施の形態における動作タイミングを示す図である。
【図１３】本発明の圧縮波形サンプルを用いたループ再生装置の実施の形態における第２選択制御情報ＳＤＥＣと第１５セレクタおよび第１８セレクタの選択信号との関係を示す図表である。
【図１４】本発明の圧縮波形サンプルを用いたループ再生装置の実施の形態における第２選択制御情報ＳＤＥＣと第１２ラッチおよび第１４ラッチのラッチ信号との関係を示す図表である。
【図１５】本発明の圧縮波形サンプルを用いたループ再生装置の実施の形態における第１５セレクタおよび第１８セレクタの入力Ａ〜入力Ｄに供給されるサンプルを示す図である。
【図１６】本発明の圧縮波形サンプルを用いたループ再生装置の実施の形態におけるロングストリーム再生の動作を示す図である。
【図１７】本発明の圧縮波形サンプルを用いたループ再生装置の実施の形態におけるロングストリーム再生時の第２選択制御情報ＳＤＥＣが発生した際のＡＤＰＣＭデコーダの動作を示す図である。
【符号の説明】
１  位相情報発生部，２  アドレスポインタ，３  ＣＰＵ，４  周辺装置，５  メモリコントローラ，６  ＲＡＭ，７  ＡＤＰＣＭデコーダ，８  補間器，９  アキュムレータ，１０  レジスタ，１１  シフタ，７０  ＡＤＰＣＭデコード部，７１  量子化幅演算部，１００  メモリアドレス，１０１  メモリアドレス，１０１  減算器，１０２  メモリアドレス，１０２  符号化部，１０３  量子化幅演算部，１０４  遅延回路，１０５  予測部，１０６  遅延回路，２０１  復号部，２０２  遅延回路，２０３  量子化幅演算部，２０４  遅延回路，ＤＳ０〜ＤＳ３  第１選択制御情報，ＲＡＭ１０  直前ブロックＲＡＭ，ＲＡＭ１１  ループスタートブロックＲＡＭ，ＲＡＭ１２  直前量子化幅ＲＡＭ，ＲＡＭ１３ループスタート量子化幅ＲＡＭ，ＳＢ１〜ＳＢ４  サブブロック，ＳＤＥＣ１〜３，ＳＤＥＣ５〜７  第２選択制御情報
【図１】
0003567767.tif 000003
【図２】
0003567767.tif 000004
【図３】
0003567767.tif 000005
【図４】
0003567767.tif 000006
【図５】
0003567767.tif 000007
【図６】
0003567767.tif 000008
【図７】
0003567767.tif 000009
【図８】
0003567767.tif 000010
【図９】
0003567767.tif 000011
【図１０】
0003567767.tif 000012
【図１１】
0003567767.tif 000013
【図１２】
0003567767.tif 000014
【図１３】
0003567767.tif 000015
【図１４】
0003567767.tif 000016
【図１５】
0003567767.tif 000017
【図１６】
0003567767.tif 000018
【図１７】
0003567767.tif 000019