(57)【特許請求の範囲】
【請求項１】
複数のスレーブ・デバイスをそれぞれ含む複数のスレーブ・デバイス・グループ内の複数のスレーブ・デバイスとマスタ・デバイスとの間の可変時分割多重伝送システムであって、
上記マスタ・デバイスが、同期クロック信号が供給される第１のクロック線に接続される同期クロック信号端子と、フレーム同期信号が供給される第２のクロック線に接続されるフレーム同期信号端子と、コマンド及びデータが供給される第１のデータ線に接続されるデータ出力端子と、コマンド及びデータが供給される第２のデータ線に接続されるデータ入力端子とを有し、
上記各スレーブ・デバイスが、上記第１のクロック線に接続される同期クロック信号入力端子と、上記第２のクロック線に接続されるフレーム同期信号入力端子と、上記第１のデータ線に接続されるデータ入力端子と、上記第２のデータ線に接続されるデータ出力端子と、デイジーチェーン入力端子と、デイジーチェーン出力端子と、スレーブ・デバイス・グループにおける自身の位置を示すデバイス識別子を保持するデバイス識別子保持回路を含むデバイス識別子付与回路とをそれぞれ有し、
上記各スレーブ・デバイス・グループ内の上記複数のスレーブ・デバイスの初段のスレーブ・デバイスの上記デイジーチェーン入力端子に所定の論理信号が印加され、当該初段のスレーブ・デバイスの上記デイジーチェーン出力端子が次段のスレーブ・デバイスの上記デイジーチェーン入力端子に接続され、上記複数のスレーブ・デバイスがデイジーチェーン出力端子及びデイジーチェーン入力端子により縦続接続されており、
上記マスタ・デバイスが上記フレーム同期信号に同期してデバイス識別子設定コマンドを上記第１のデータ線に供給すると、初段のスレーブ・デバイスが上記フレーム同期信号と上記デバイス識別子設定コマンドと上記デイジーチェーン入力端子の論理信号とに応答して所定のデバイス識別子を上記デバイス識別子保持回路に設定すると共に上記デイジーチェーン出力端子からデバイス識別子設定トークンを出力し、次段のスレーブ・デバイスが上記フレーム同期信号と上記デバイス識別子設定コマンドと上記デバイス識別子設定トークンとに応答して所定のデバイス識別子を上記デバイス識別子保持回路に設定すると共に上記デイジーチェーン出力端子からデバイス識別子設定トークンを出力し、上記各スレーブ・デバイスの上記デバイス識別子保持回路に所定のデバイス識別子がそれぞれ設定され、
上記複数のスレーブ・デバイスが、上記複数のスレーブ・デバイス・グループにそれぞれ付与された個別のスレーブ・デバイス・グループ識別子と上記デバイス識別子とにより識別され、
上記デバイス識別子付与回路が、上記デバイス識別子設定コマンドと上記フレーム同期信号とに応答してデバイス識別子決定シーケンスを示すシーケンス信号を出力するシーケンス開始制御回路と、上記シーケンス信号に応答して上記同期クロック信号をカウントするカウンタと、上記デイジーチェーン入力端子に入力される所定の論理信号又はデバイス識別子設定トークンと上記同期クロック信号に応答して次段のスレーブ・デバイス用のデバイス識別子設定トークンを生成するトークン生成回路とを更に含み、
上記カウンタのカウント値と上記デイジーチェーン入力端子に入力される所定の論理信号又はデバイス識別子設定トークンとに応じて所定のデバイス識別子が決定される、
可変時分割多重伝送システム。
【請求項２】
上記第１のデータ線、上記第２のデータ線に供給される信号が上記フレーム同期信号で規定される１フレーム中に複数の時間スロットを有し、上記マスタ・デバイスと上記スレーブ・デバイスとが所定の時間スロットを用いてデータ送受信を行なう、
請求項１に記載の可変時分割多重伝送システム。
【請求項３】
上記同期クロック信号の複数周期の時間幅に相当する上記フレーム同期信号のパルスにより上記１フレームが規定される、
請求項１又は２に記載の可変時分割多重伝送システム。
【請求項４】
上記フレーム同期信号のパルスが上記同期クロック信号の２周期の時間幅を有する、請求項３に記載の可変時分割多重伝送システム。
【請求項５】
上記各スレーブ・デバイスが、１フレーム中に含まれる複数の時間スロットの中の自身が使用できる時間スロットの番号を保持する時間スロット番号保持回路と、上記同期クロック信号入力端子と上記フレーム同期信号入力端子に接続されて上記同期クロック信号と上記フレーム同期信号とに応じて１つの時間スロットを示す時間スロット信号を出力する時間スロット位置指示回路と、上記同期クロック信号入力端子と上記フレーム同期信号入力端子と上記デイジーチェーン入力端子と上記デイジーチェーン出力端子とに接続されて時間スロット割当トークンを生成する時間スロット割当トークン供給回路とを含む時間スロット割当回路をそれぞれ有し、
上記マスタ・デバイスが上記同期クロック信号と上記フレーム同期信号とに同期して上記第１のデータ線に上記スレーブ・デバイスに対するデータを供給すると、初段のスレーブ・デバイスが、上記時間スロット信号と上記時間スロット番号とに応じて次段のスレーブ・デバイスのためのスロット割当トークンを生成して上記デイジーチェーン出力端子から出力し、次段のスレーブ・デバイスが、上記時間スロット信号と上記時間スロット番号と上記デイジーチェーン入力端子に供給される上記スロット割当トークンとに応じて次段のスレーブ・デバイスのためのスロット割当トークンを生成して上記デイジーチェーン出力端子から出力する、
請求項１乃至４の何れかに記載の可変時分割多重伝送システム。
【請求項６】
上記マスタ・デバイス及び上記スレーブ・デバイスが半導体集積回路である、請求項１乃至５の何れかに記載の可変時分割多重伝送システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、一般的には通信に関し、特に、デイジーチェーンを備えた回路、装置等のシステムにおける通信の方法および装置に関するものである。
【背景技術】
【０００２】
従来、回路、装置、システム等において、それらに含まれる種々の集積回路チップ、ユニット、機器等のデバイス間で通信を行うため、それらデバイスの識別をすることが必要である。システムにおけるこのようなデバイスの識別法として、種々の方法がある。第１の方法として、デバイス固有の識別子を、システムにおける通信のためのデバイス識別子あるいはアドレスとして使用する方法がある。デバイス固有の識別子とは、例えば集積回路チップにおいて、製造時にＲＯＭに焼き付けられる番号等である。このようなデバイス固有の識別子を使用する規格として、ボード上のチップ実装のテストにおいて使用されるＪＴＡＧ規格，多くのオーディオ製品において使用されるIIC（例：Audio I/F（IIC））がある。第２の方法として、ブランチ、リーフのようなデバイスに対し外部からアドレスを割り当てる方法がある。この方法を使用する例としては、IEEE1394規格がある。さらに第３の方法として、デバイスの識別子すなわちアドレスが方式で予め定められているものがある。この例としては、SCSI-2規格がある。この規格では、プリンタ、ディスプレイ等のデバイスには、特定のアドレスがオペレーティング・システムによって予め推奨されている。
【発明の開示】
【発明が解決しようとする課題】
【０００３】
上記のデバイス固有の識別子を使用する第１の方法の場合、特に集積回路チップの場合では、この固有識別子は、デバイスの製造業者、デバイスの機能等による種類に依存して、各デバイスに固有のデバイス識別子が割り当てられ、デバイス内のＲＯＭに書き込まれるようになっている。したがって、同じデバイス種類のものであっても、異なった製造業者の製造したデバイスには、異なったデバイス識別子が付与されている。このため、オーディオ製品等のようなシステムにおいて、使用されているデバイスを、これと同じデバイス種類であるが異なった製造業者のデバイスへ単に置き換えることは、簡単に行うことができない。このような置き換えを行いたい場合には、置き換え前のデバイスのシステム内におけるデバイス識別子を、置き換え後のデバイスのデバイス識別子に置換することも必要となる。これには、ソフトウェアの書き換え、ＲＯＭの内容の書き換え等が含まれる。また、別の問題として、システム内で同じ種類のデバイスを複数個使用しようとする場合、同じデバイス識別子が割り当てられたデバイスを使用することはできないため、そのための対策として、１つのデバイスに対し複数のデバイス識別子をＲＯＭに焼き付け、それらの１つをデバイスの使用時に選択できるようにすることも必要となる。さらに、デバイスの固有識別子ではなく他のデバイス識別子を必要とするシステムにおいて、そのデバイスに対し新たにデバイス識別子またはアドレスを付与しなければならない。さらにまた、デバイス固有識別子は、製造業者を識別する部分も含むため、非常に冗長な番号となっている。
【０００４】
一方、上記第２の方法では、デバイスに外部からアドレスを付与することが必要であるため、そのアドレス付与のためのハードウェア、ソフトウェアが必要となる。
上記第３の方法では、オペレーティング・システム等において、特定のデバイスが使用するアドレスが予め推奨されているため、アドレス割当に制限がある。また、システムに接続できるデバイスの数にも制限がある。
【０００５】
したがって、本発明の目的は、回路、装置等のシステムにおける通信において、システム内のデバイスに対し、そのシステム内の多数のデバイスにおけるそのデバイスの番号またはシステム内番号を識別するための識別子を、自動的に付与することができる通信の方法および装置を提供することである。
【０００６】
また、本発明の別の目的は、上記のようなシステムにおける通信において、システム内のデバイスに対し、共有可能な資源の割当順序等の所定の順序における順番を識別するための識別子を、自動的に付与することができる通信の方法および装置を提供することである。
【０００７】
さらに、本発明の別の目的は、上記のようなシステムにおいて、上記の識別子を用いた可変時分割多重通信の方法および装置を提供することである。
【課題を解決するための手段】
【０００８】
上記目的を達成するため、本発明による、複数のデバイスを含むシステムにおいての前記複数のデバイス間での通信を行う通信システムは、前記複数のデバイスを互いに接続するバスと、前記複数のデバイスをデイジーチェーンで接続するデイジーチェーン接続線と、を含むことを特徴とする。
【０００９】
本発明によれば、前記複数のデバイスは、マスタ・デバイスと少なくとも１つのグループの複数のスレーブ・デバイスから成り、前記通信システムにおいて、前記マスタ・デバイスと前記複数のスレーブ・デバイスの各々との間での通信を行うため、前記バスは、前記マスタ・デバイスと前記１つのグループの前記複数のスレーブ・デバイスの各々とを接続し、前記デイジーチェーン接続線は、前記１つのグループの前記複数のスレーブ・デバイスをデイジーチェーンで接続するようにできる。
【００１０】
本発明によれば、前記デイジーチェーン接続線は、前記複数のスレーブ・デバイス内の各々のデバイスに対し、前記複数のスレーブ・デバイス内の当該デバイスの番号または前記システムにおける所定の順序における当該デバイスの順番を識別するためのデバイス識別子を割り当てるために使用することができる。
【００１１】
また、本発明によれば、前記少なくとも１つのグループは、複数のグループの前記複数のスレーブ・デバイスから成るようにできる。
また、前記デイジーチェーン接続線は、前記１グループの前記複数のスレーブ・デバイスに対しデバイス識別子を付与するために使用することができる。この場合、前記デイジーチェーン接続線は、前記複数のグループのスレーブ・デバイスの各々に対し１つ設けることができる。このとき、複数の前記デイジーチェーン接続線の各々に接続した前記１グループのスレーブ・デバイスは、これらが接続した前記デイジーチェーン接続線の識別子を有するようにできる。
【００１２】
また、本発明によれば、さらに、１つのグループの前記複数のスレーブ・デバイスにデバイス識別子を付与するための装置を含み、該デバイス識別子付与装置は、前記１つのグループの複数のスレーブ・デバイスの内の前記デイジーチェーンの最上流に位置する最上流デバイスに設けた、第１の時点でデバイス識別子付与トークンを前記デイジーチェーンの下流に向かって送出するデバイス識別子付与トークン発生手段であって、該最上流デバイスが第１のデバイス識別子を有する、前記のデバイス識別子付与トークン発生手段と、前記最上流デバイスに設けた、前記第１のデバイス識別子を記憶する記憶手段と、前記デイジーチェーンの下流に位置する各下流デバイスに設けた時間測定手段であって、前記デバイス識別子付与トークンを第２の時点で受けたときの前記第１時点と第２時点との時間差を測定する、前記の時間測定手段と、前記各下流デバイスに設けたデバイス識別子決定手段であって、測定した前記時間差に基づいて、該各下流デバイスの自己のデバイス識別子を決定する、前記の決定手段と、前記各下流デバイスに設けた、前記の決定したデバイス識別子を記憶する記憶手段と、から成り、これによって、前記最上流デバイスの前記第１デバイス識別子と前記下流デバイスの各々に対し決定した前記第１デバイス識別子とは異なった各前記デバイス識別子によって、前記複数のデバイスを識別するようにすることができる。
【００１３】
また、本発明によれば、前記バスは、前記マスタ・デバイスと前記複数のスレーブ・デバイスとの各々の間でのデータおよび制御信号の双方を含む情報の伝送を行うようにできる。
【００１４】
また、本発明によれば、前記通信は、前記通信を時分割多重で行うようにできる。この場合、前記通信は、少なくとも２以上の異なった伝送帯域で行うようにできる。このとき、前記通信は、連続した時間スロットを用いて行うようにできる。前記異なった伝送帯域は、所定の時間フレーム内に使用する時間スロット数が異なることによって実現することができる。各前記スレーブ・デバイスに対する前記の使用時間スロット数は、可変とすることができる。前記使用時間スロット数は、予め設定することができる。前記使用時間スロット数は、０または１以上の整数とすることができる。また、本発明によれば、前記デイジーチェーン接続線は、前記１つのグループの複数のスレーブ・デバイスの各々に対し時間スロットを割り当てるための時間スロット割当トークンを、前記１つのグループの複数のスレーブ・デバイス間で伝達するのに使用することができる。この場合、前記１つのグループの複数のスレーブ・デバイスの各々は、前記１つのグループの複数のスレーブ・デバイス間で、前記時間スロット割当トークンを伝達し、該時間スロット割当トークンを受けた特定の前記スレーブ・デバイスは、前記時間スロットを利用する場合、該時間スロット割当トークンを受けた時、前記時間スロットの利用を開始し、前記使用時間スロット数だけ前記時間スロットを利用し、前記使用時間スロット数の時間スロットの使用が終えた時、前記時間スロットの利用を終了し、前記使用時間スロット数の前記時間スロットのうちの最後に利用した前記時間スロットに後続する前記時間スロットを、前記１つのグループの複数のスレーブ・デバイスのうちの前記デイジーチェーンに接続された次のスレーブ・デバイスに割り当てるため、前記次のスレーブ・デバイスに対し前記時間スロット割当トークンを渡すようにすることができる。
【００１５】
また、本発明によれば、前記バスは、シリアルバスとすることができる。この場合、前記シリアルバスを介しての通信は、通信時間フレームの間に実行し、前記通信時間フレームは、第１の基準クロックの１周期に等しくすることができる。この場合、前記シリアルバスを介しての通信は、データおよび制御信号の双方に対し共通の通信フォーマットで行うことができる。前記共通通信フォーマットは、初期化時には、少なくとも１つのコマンド・フィールドを含み、動作時には、少なくとも１つのコマンド・フィールドと、少なくとも１つのデータ・チャンネル・フィールドと、を含むようにできる。前記コマンド・フィールドは、デバイス識別子を含むようにできる。前記システムが複数のデイジーチェーン接続線を含むとき、前記コマンド・フィールドは、デイジーチェーン番号を含むようにできる。
【００１６】
さらに、本発明による、複数のデバイスにデバイス識別子を付与する方法は、前記複数のデバイスをデイジーチェーンで接続するステップと、前記複数のデバイスの内の前記デイジーチェーンの最上流に位置する最上流デバイスから、前記デイジーチェーンの下流に向かって、デバイス識別子付与トークンを第１の時点にて送出するステップであって、該最上流デバイスが第１のデバイス識別子を有する、前記のステップと、前記デイジーチェーンの下流に位置する各下流デバイスが、前記デバイス識別子付与トークンを第２の時点で受けるステップと、前記各下流デバイスが、前記第１時点と前記第２時点との間の時間差に基づいて、該各下流デバイスが、自己のデバイス識別子を決定するステップであって、該デバイス識別子が、前記第１デバイス識別子とは異なる、前記のステップと、から成り、これによって、前記最上流デバイスの前記第１デバイス識別子と前記下流デバイスの各々に対し決定した前記第１デバイス識別子とは異なった各前記デバイス識別子によって、前記複数のデバイスを識別すること、を特徴とする。
【００１７】
本発明によれば、前記第１時点は、第１の基準クロックにより定め、前記時間差を、前記第１時点からの第２の基準クロックの数をカウントすることにより、カウント値を発生するようにできる。また、前記カウント値に基づき前記デバイス識別子を定めることができる。さらに、前記デバイスの各々は、前記デバイス識別子を格納するための記憶手段を有するようにできる。
【００１８】
また、本発明によれば、前記複数のデバイスは、同種のデバイスとすることができ、また、該同種のデバイスは、入力デバイスまたは出力デバイスのいずれかとすることができる。
【００１９】
また、本発明による、マスタ・デバイスと複数のスレーブ・デバイスとを含むシステムにおいて、前記マスタ・デバイスが前記複数のスレーブ・デバイスを識別する方法は、Ａ．前記マスタ・デバイスが前記複数のスレーブ・デバイスにデバイス識別子を付与するステップであって、上述のデバイス識別付与方法を実行することにより前記複数のスレーブ・デバイスのデバイス識別子を決定するステップと、から成る、前記のステップと、Ｂ．前記マスタ・デバイスが、前記デバイス識別子付与方法によって前記複数のスレーブ・デバイスに与えられる前記デバイス識別子によって、前記複数のスレーブ・デバイスを識別するステップと、から成る。
【００２０】
本発明によれば、前記マスタ・デバイスは、前記デバイス識別子付与方法によって前記複数のスレーブ・デバイスに対し与えられる前記デバイス識別子を、予め前記マスタ・デバイスに設けた記憶手段に格納するようにできる。あるいは、前記マスタ・デバイスは、前記デバイス識別子付与方法によって前記複数のスレーブ・デバイスに対し与えられる前記デバイス識別子を、前記スレーブ・デバイスから受けて、前記マスタ・デバイス内の記憶手段に格納するようにできる。
【００２１】
また、本発明によれば、前記複数のスレーブ・デバイスが、複数のグループのスレーブ・デバイスから成るようにできる。この場合、前記複数のグループのスレーブ・デバイスを、複数の前記デイジーチェーンでそれぞれ接続することによって、各グループのスレーブ・デバイスに対する前記デバイス識別子を付与し、前記複数のデイジーチェーンにそれぞれ接続した前記複数のグループのスレーブ・デバイスに対し、デバイス・グループ識別子を付与し、これによって、前記複数のグループのスレーブ・デバイスのうちの各スレーブ・デバイスを、前記デバイス・グループ識別子と前記デバイス識別子との組み合わせで識別するようにできる。
【００２２】
また、本発明による、マスタ・デバイスと複数のスレーブ・デバイスとの間でデータを伝送するデータ伝送方法は、上述のデバイス識別方法によって得た前記デバイス識別子を使用して、前記マスタ・デバイスが前記複数のスレーブ・デバイスとの間でデータ伝送すること、を特徴とする。
【００２３】
また、本発明による、複数のデバイスにデバイス識別を付与するための装置は、前記複数のデバイスをデイジーチェーンで接続するデイジーチェーン接続線と、前記複数のデバイスの内の前記デイジーチェーンの最上流に位置する最上流デバイスに設けた、第１の時点でデバイス識別子付与トークンを前記デイジーチェーンの下流に向かって送出するデバイス識別子付与トークン発生手段であって、該最上流デバイスが第１のデバイス識別子を有する、前記のデバイス識別子付与トークン発生手段と、前記最上流デバイスに設けた、前記第１のデバイス識別子を記憶する記憶手段と、前記デイジーチェーンの下流に位置する各下流デバイスに設けた時間測定手段であって、前記デバイス識別子付与トークンを第２の時点で受けたときの前記第１時点と第２時点との時間差を測定する、前記の時間測定手段と、前記各下流デバイスに設けたデバイス識別子決定手段であって、測定した前記時間差に基づいて、該各下流デバイスの自己のデバイス識別子を決定する、前記の決定手段と、前記各下流デバイスに設けた、前記の決定したデバイス識別子を記憶する記憶手段と、から成り、これによって、前記最上流デバイスの前記第１デバイス識別子と前記下流デバイスの各々に対し決定した前記第１デバイス識別子とは異なった各前記デバイス識別子によって、前記複数のデバイスを識別する。
【００２４】
さらに、本発明は、デバイスであって、デイジーチェーンの上流側に接続するための入力端子と、前記デイジーチェーンの下流側に接続するための出力端子と、
該デバイスの前記デイジーチェーン内での位置に基づき、該デバイスに対しデバイス識別子を付与するデバイス識別付与手段と、から成るデバイスを提供する。
【００２５】
本発明によれば、前記デバイス識別付与手段は、時間測定手段であって、第１の時点でデイジーチェーンの最上流から送出されたデバイス識別子付与トークンを第２の時点で受けたときの前記第１時点と第２時点との時間差を測定する、前記の時間測定手段と、デバイス識別子決定手段であって、測定した前記時間差に基づいて、自己のデバイス識別子を決定する、前記の決定手段と、前記の決定したデバイス識別子を記憶する記憶手段と、を含むようにできる。
【００２６】
また、本発明による、マスタ・デバイスと複数のスレーブ・デバイスとを含むシステムにおいての、前記マスタ・デバイスが前記複数のスレーブ・デバイスを識別するデバイス識別システムは、上述のデバイス識別付与装置と、該デバイス識別付与装置により付与された前記複数のスレーブ・デバイスの前記デバイス識別子を記憶するため、前記のマスタ・デバイスに設けた記憶手段と、を含み、これによって、前記マスタ・デバイスが、前記複数のスレーブ・デバイスを前記マスタ・デバイスに記憶した前記スレーブ・デバイスの前記デバイス識別子によって識別すること、を特徴とする。
【００２７】
本発明によれば、前記複数のスレーブ・デバイスが、複数のグループのスレーブ・デバイスから成るようにできる。この場合、前記複数のグループのスレーブ・デバイスを、複数の前記デイジーチェーンでそれぞれ接続することによって、各グループのスレーブ・デバイスに対する前記デバイス識別子を付与し、前記複数のデイジーチェーンにそれぞれ接続した前記複数のグループのスレーブ・デバイスに対し、デバイス・グループ識別子を付与し、これによって、前記複数のグループのスレーブ・デバイスのうちの各スレーブ・デバイスを、前記デバイス・グループ識別子と前記デバイス識別子との組み合わせで識別するようにすることができる。
【発明を実施するための最良の形態】
【００２８】
次に、本発明の実施形態について、図面を参照して詳細に説明する。
先ず図１を参照すると、これには、本発明を組み込んだ基本構成の実施形態である通信システムＡを示している。このシステムＡは、図示のように、１つのマスタ・デバイス１と、複数のスレーブ・デバイス・グループ３−１〜３−Ｎ（ＳＤＧ１〜Ｎ）と、これらスレーブ・デバイス・グループの各々をマスタ・デバイス１と接続するバス５とで構成されている。各スレーブ・デバイス・グループは、例えば図示のように少なくとも１つ、例えば複数のスレーブ・デバイス３０−１−１〜３０−１−Ｎ、または３０−２−１〜３０−２−Ｎを備えている。これらスレーブ・デバイスの各々は、バス５に接続されている。また、通信システムＡは、さらに少なくとも１つのデイジーチェーン、例えばＤＣ１〜ＤＣＮを備えている。各デイジーチェーンは、各スレーブ・デバイス・グループに対応していて、１つのデイジーチェーンは、１つのグループ内のスレーブ・デバイスに関係している。例えばスレーブ・デバイス・グループ３−１においては、デイジーチェーンＤＣ１は、デイジーチェーン接続線７−１によって、複数のスレーブ・デバイスをデイジーチェーン形式で接続している。他のスレーブ・デバイス・グループには、デイジーチェーン接続線７−２〜７−Ｎが設けられている。
【００２９】
図１に示した通信システムＡにおいては、マスタ・デバイス１と各スレーブ・デバイス・グループＳＤＧ１〜Ｎ内の各スレーブ・デバイス３０との間におけるコマンド等の制御信号およびデータは、バス５を介して伝送される。このバスは、シリアルバスであるが、パラレルバスで構成することもできる。この伝送において使用するデバイスの識別子は、各スレーブ・デバイス・グループ３−１〜３−Ｎに設けた各デイジーチェーンＤＣ１〜ＤＣＮによって自動的に付与される。すなわち、スレーブ・デバイス・グループＳＤＧ１内のスレーブ・デバイス３０−１−１〜３０−１−Ｎの各々のデバイス識別子（デバイスＩＤ）は、デイジーチェーンＤＣ１によってデバイスＩＤ付与トークンまたは資源割当トークン（後述）をスレーブ・デバイス間で伝達させることによって付与されるように構成している。デイジーチェーンＤＣ１がスレーブ・デバイス３０−１−１〜３０−１−Ｎに与えるデバイスＩＤは、システム設計時に予め分かっているときには、マスタ・デバイス１のメモリにそれらのデバイスＩＤを予め記憶しておくようにすることができる。尚、システム設計時に判明していないときには、それらスレーブ・デバイスに割り当てるデバイスＩＤは、マスタ・デバイスとスレーブ・デバイスとの間の通信によってマスタ・デバイスが保有するようにすることもできる。尚、図１に示した構成では、スレーブ・デバイス・グループが複数あるため、デバイス・グループ間でスレーブ・デバイスを区別するために、スレーブ・デバイス・グループの識別子あるいはデイジーチェーンの識別子が必要となる。このようなスレーブ・デバイス・グループ識別子は、各スレーブ・デバイス・グループ内に設けるスレーブ・デバイスのＲＯＭまたはＲＡＭに格納したり、もしくは外部設定端子（Ｈは“１”、Ｌは“２”）で設定するようにすることができる。
【００３０】
上記のようにしてスレーブ・デバイスの各々に与えるデバイスＩＤ（スレーブ・デバイス・グループ識別子も含む場合がある）は、前述のように、通信システムＡ内におけるスレーブ・デバイスの番号すなわちシステム内番号として使用したり、あるいはこのシステム内における共有可能な資源の割当順序のような所定の順序における順番として使用したりすることができる。
【００３１】
通信システムＡの動作については、本システムは、例えば後述のように、可変時分割多重（ＶＴＤＭＣＡ：Variable Time Division Multiplex Command and Audio data）を用いることで動作させることができる。例えば、可変時分割多重においては、一定の通信時間フレーム毎に、連続した複数の時間スロットを設け、そしてこれら時間スロットを複数のチャンネルの各々に割り当てることによって、一定の通信フォーマットを使用して通信するようにシステムを動作させることができる。
【００３２】
次に、図２を参照して、図１の本発明の通信システムＡをより具体化した１実施形態であるオーディオ・マルチチップ・システムＢについて説明する。このシステムＢは、マスタ・デバイスとしてデジタル・シグナル・プロセッサ（ＤＳＰ）１Ｂを備え、そしてスレーブ・デバイスとして、入力（ＩＮ）デバイス・グループにＮ個のスレーブ・デバイス３０−１−１Ｂ，３０−１−２Ｂ…３０−１−ＮＢ（２つのみ示す）を、出力（ＯＵＴ）デバイス・グループにＮ個のスレーブ・デバイス３０−２−１Ｂ，３０−２−２Ｂ…３０−２−ＮＢ（２つのみ示す）を備えている。したがって、システムＢは、２つのスレーブ・デバイス・グループを備えている。ここで、ＩＮデバイス（ＤＳＰから入力を受けるデバイス）には、デジタル−アナログ変換器（ＤＡＣ）、その他のデバイスが含まれ、ＯＵＴデバイス（ＤＳＰに出力を供給するデバイス）には、アナログ−デジタル変換器（ＡＤＣ）その他のデバイスが含まれる。尚、後述のように、コーデック（ＣＯＤＥＣ）のようなＩＮ／ＯＵＴデバイス、ＰＬＬのような信号処理としての入力／出力のないＮＯデバイスもシステム内に含むことができる。システムＢにおいては、ＤＳＰ１ＢとＩＮデバイス３０−１−１Ｂ〜ＮＢおよびＯＵＴデバイス３０−２−１Ｂ〜ＮＢとを相互に接続するためのバスとして、導体５０Ｂと導体５２Ｂとを備えている。すなわち、マスタ・デバイスから複数のスレーブ・デバイスへの伝送に対し１本の接続線、そして複数のスレーブ・デバイスからマスタ・デバイスへの伝送に対し１本の接続線を設けている。さらに、フレーム同期クロックを供給するための導体６０と、ポート同期クロックを供給するための導体６２とを設けている。システムＢはまた、２つのスレーブ・デバイス・グループに対するデイジーチェーンとして、ＩＮデバイス・グループのデバイス３０−１−１Ｂ〜ＮＢに対するデイジーチェーンＤＣ１Ｂと、ＯＵＴデバイス・グループのデバイス３０−２−１Ｂ〜ＮＢに対するデイジーチェーンＤＣ２Ｂとを備えている。尚、後述のように、デバイスＩＤ（device ID）として、ＩＮデバイス３０−１−１Ｂには“１”が、そしてＩＮデバイス３０−１−２Ｂには“２”が付与される。これと同様に、デバイスＩＤとして、ＯＵＴデバイス３０−２−１Ｂには“１”が、そしてＯＵＴデバイス３０−２−２Ｂには“２”が付与される。これら２つのデバイス・グループを識別するためには、さらに、スレーブ・デバイス・グループ識別子が、各グループに属するデバイスのＲＯＭに予め焼き付けられる等の方法によって付与される。例えば、ＩＮデバイス・グループには“１”、そしてＯＵＴデバイス・グループには“２”等が付される。
【００３３】
詳細には、ＤＳＰ１Ｂは、一般に入手可能なデジタル・シグナル・プロセッサを使用することができ、そしてこれは、送信用の通信フレーム（ＦＳＸ）と受信用の通信フレーム（ＦＳＲ）を定めるフレーム同期クロックを供給するポートと、送信用ポート同期クロック（ＣＬＫＸ）と受信用ポート同期クロック（ＣＬＫＲ）を供給するポートと、そしてこのＤＳＰのシリアル・ポートを構成する、コマンドおよびデータの送信のためのデータ送信ポートＤＸとそしてそれらの受信のためのデータ受信ポートＤＲとを備えている。一方、ＩＮデバイスおよびＯＵＴデバイスの各々は、導体６０を介してフレーム同期クロックを受けるＬＲＣＫポートと、導体６２を介してポート同期クロックを受けるＢＣＫポートと、導体５０Ｂを介してＤＳＰ１Ｂからのデータおよびコマンドを受ける入力ポートＰＤＩと、導体５２Ｂを介してＤＳＰ１Ｂに対し状態やデータを出力する出力ポートＰＤＯとを備えている。さらに、これらデバイスには、各デバイスに対しデバイスＩＤを付与するため、デイジーチェーンの入力ポートＤＣＩと出力ポートＤＣＯとを備えている。これらポートは、デイジーチェーンを構成するデイジーチェーン接続線７−１Ｂまたは７−２Ｂのいずれかに接続されている。尚、ＩＮデバイスには、ＤＡＣである場合のそのアナログ出力端子は図示しておらず、また、ＯＵＴデバイスでは、これがＡＤＣである場合のそのアナログ入力端子は図示しておらず、デジタル信号を伝達する線のみを示している。
【００３４】
次に、図３を参照して、デイジーチェーンを用いてデバイスＩＤ（またはデバイス番号）を付与する回路等を詳細に説明する。尚、図３には、図２のシステムＢ内のＩＮデバイス３０−１−１Ｂ，３０−１−２Ｂの２つのデバイスのみを示しているが、他のＩＮデバイスおよびＯＵＴデバイスについても同様である。ＩＮデバイス３０−１−１Ｂは、デイジーチェーンＤＣ１Ｂの一部を構成する回路として、当該デバイスにデバイスＩＤ付与するためのデバイスＩＤ付与回路７０−１Ｂと、当該デバイスに共有可能な資源であるバスの利用の順番（本例では、通信フレーム内の連続した多数の時間スロットのうちの特定の順番の時間スロット）を割り当てるための時間スロット割当回路７２−１Ｂとを備えている。これら回路の入力は、ＤＣＩポートを介してデイジーチェーンの上流側の接続線７−１ＢＵ１に、そしてそれらの出力は、ＤＣＯポートを介して下流側の接続線７−１ＢＤ１に接続されている。尚、上流側接続線７−１ＢＵ１は、基準電圧に接続されており、そして下流側接続線７−１ＢＤ１は、１つ下流のＩＮデバイス３０−１−２Ｂの上流側接続線７−１ＢＵ２に接続されている。ＩＮデバイス３０−１−２Ｂも、同様に、同じＩＤ付与回路７０−２Ｂとスロット割当回路７２−２Ｂとを備え、そして下流側接続線７−１ＢＤ２は、さらに１つ下位のＩＮデバイスの上流側接続線に接続されている。これら回路の詳細については、以下で後述する。
【００３５】
次に、図４を参照して、図２のオーディオ・マルチチップ・システムＢの全体の動作について説明する。図４には、本システムで利用する可変時分割多重通信（ＶＴＤＭＣＡ）のフォーマットを示している。詳細には、フレーム同期クロックであるＬＲＣＫは、オーディオ信号のサンプリング周波数と同じ周波数ｆｓの逆数の周期１／ｆｓを有している。これは、従来のオーディオ製品において用いられているインターフェース（Audio Serial Interface）におけるデューティー比５０％のものに比べ、デューティー比が５０％よりかなり小さくされており、例えばクロックＢＣＫの２周期分の“Ｈ”区間にしている。その理由は、本発明によるＶＴＤＭＣＡ通信インターフェースと、従来の通信インターフェースとをそのデューティー比の違いによって識別できるようにすることによって、従来方式と共存可能としてコンパチビリティを保証するためである。ポート同期クロックＢＣＫの周波数によって、フレーム同期クロックの１周期の間に、多数の連続した時間スロットを定め、これによって多チャンネルに対応可能としている。これにより、時分割多重通信を実現している。また、図４は、この多数の時間スロットをもつ通信フレームの間において、初期化時と動作時においてＩＮデバイスおよびＯＵＴデバイスの入力ポートＰＤＩに入出力されるデータおよびコマンドの入力フォーマットおよび出力ポートＰＤＯから出力されるデータおよびコマンドの出力フォーマットを示している。初期化（initialization）時においては、入力ＰＤＩのフォーマットは、図示のように、先頭にコマンド・フィールド（ＣＭＤ）、そしてこれに多数の拡張コマンド・フィールド（ＥＭＤ）が続く。尚、各フィールドは、３２ビットを有していて、上記の１つの時間スロットの期間内に収まる長さを有している。ＩＮデバイス等からの出力ＰＤＯのフォーマットは、８ビットの状態フィールド（ＳＴＦ）が連続しており、この各状態フィールドはレジスタに格納された状態データを含む。次に、動作時においては、入力ＰＤＩのフォーマットは、先頭に３２ビットのコマンド・フィールド（ＣＭＤ）、そしてこれに続いて、多数のｎ個のチャンネルｃｈ１〜ｃｈｎの各々に対するオーディオ・チャンネル・フィールド（Ｃｈ１〜Ｃｈ（ｎ））がある。また出力ＰＤＯのフォーマットは、先頭に８ビットの状態フィールド（ＳＴＦ）、そしてこれに続いて、ｍ個のチャンネルの各々に対するオーディオ・チャンネル・フィールド（Ｃｈ１〜Ｃｈ（ｍ））がある。尚、入力チャンネルと出力チャンネルの数は異なった数とすることができるため、チャンネルの数ｍと数ｎとは同一としたりあるいは異なった数とすることができる。すなわち、動作時には、ＩＮデバイスは、入力データのみを受けるため、ＰＤＩフォーマットのみを使用し、そしてＯＵＴデバイスは、出力データを送出するだけであるので、ＰＤＯフォーマットのみを使用する。以上から分かるように、本発明のＶＴＤＭＣＡ通信では、シリアルバスを時分割多重で用いるものである。
【００３６】
次に、図５を参照して、上記のコマンド・フィールド、拡張コマンド・フィールド、オーディオ・チャンネル・フィールドを説明する。詳細には、図５（ａ）は、コマンド・フィールドの構造を示している。このコマンドの先頭のＤＩＤフィールドは、デバイスＩＤ決定シーケンスの実行有無を示すフィールドであり、このビットが“１”のときは、その決定シーケンスを実行し、“０”のときは後続のコマンドを実行する。ＥＭＤフィールドは、図４に示した拡張コマンド・フィールドの後続の有無を示すフィールドであり、このビットが“１”のときは、次のフィールドが拡張コマンド・フィールドであることを示し、“０”のときは、次のフィールドがオーディオ・チャンネル・フィールドであることを示す。デイジーチェーン・セレクト・フィールド（ＤＣＳ）は、スレーブ・デバイス・グループを示すフィールドであり、図２に示した例においては、ＩＮデバイスに０を、ＯＵＴデバイスに１を割り当てている。“デバイスＩＤ（device id）”フィールドは、デバイスＩＤ決定シーケンスで付与されたデバイス番号であり、デバイスの識別に使用する。この“デバイスＩＤ”フィールドが、“０ｘ００”のときは、デバイスは全て選ばれておらず、そして“０ｘ１Ｆ”のときは、デバイスは全て選ばれている。この設定は、一度に同じ設定（例えば、ＤＡＣのイネーブル、ミュートのオン／オフ等））を行うことができる。“レジスタＩＤ（register id）”フィールドは、ＩＮデバイスまたはＯＵＴデバイスの各々の固有の内部レジスタに割り当てられた番号であり、この番号は、レジスタの識別に使用する。このフィールドには、Ｒ／Ｗフラグが含まれ、その内部レジスタへの書き込みまたは読み出しを指定する。“データ（data）”フィールドは、デバイスＩＤとレジスタＩＤとによって選択した指定のデバイスの指定の内部レジスタに対するデータを含む。
【００３７】
次に、図５（ｂ）に示した拡張コマンド・フィールドについて説明すると、このフィールドは、ＭＳＢビットが未使用（rvd）である以外は、図５（ａ）のコマンド・フィールドと同じ構造を有している。尚、このフィールドの後には、拡張コマンド・フィールドしか選択できない。
【００３８】
図５（ｃ）は、状態フィールド（ＳＴＦ）を示しており、これは、３２ビットのうちのビット８〜１５の８ビットのみを使用する（図４では、８ビットとして図示）。この状態フィールドは、コマンド・フィールドまたは拡張コマンド・フィールドにおける要求に応答して、スレーブ・デバイス内のレジスタに格納したスレーブ・デバイスの状態を読み出してＤＳＰ１Ｂに送るのに使用する。
【００３９】
最後に、オーディオ・チャンネル・フィールドは、図示していないが、オーディオ・データの伝送に使用する。各々のオーディオ・チャンネル・フィールドは、これらフィールドに先行するコマンド・フィールドで選択されたデバイスのオーディオ・データとして扱う。尚、オーディオ・フォーマットは、デバイス毎に任意に選択することもできる。
【００４０】
以上に説明したフォーマットからも分かるように、図２および図３に示したスレーブ・デバイスであるＩＮデバイスおよびＯＵＴデバイスには、図示していないが、各デバイスが占有するオーディオ・チャネルを選択するレジスタを設けている。また、確認用として、各デバイスのデバイスＩＤを格納するレジスタを設けるのが好ましい。また、各デバイスの内部レジスタは、上述のように、各デバイスの内部レジスタにコントロール・データを設定するだけではなく、その内部レジスタから読み出すこともできる。図２のシステムでは、読み出し用ポートとしてＰＤＯポートを使っているが、ＰＤＯをＨｉｚ（高インピーダンス、すなわち開放）出力にすることにより、全てのデバイスのＰＤＯポートをワイヤドオア接続できる。レジスタのリード／ライトのタイミングについては、当業者であれば任意に設計することができるので、その詳細については説明を省略する。
【００４１】
次に、図６のフローチャートを参照して、図２に示したオーディオ・マルチチップ・システムＢの全体の動作について説明する。尚、このフローチャートは、ホスト・コントローラ(本例ではＤＳＰ)からの制御を示している。先ず、ステップ６０において、ＶＴＤＭＣＡ通信モードを使用するか否かを判定する。この判定は、通常、システム設計の段階で決められる。ＶＴＤＭＣＡモードではないと判定したときは、ステップ６１において、従来の通常の動作モードを使用する。この従来のモードでは、Audio Serial InterfaceおよびHost Serial Interfaceを用いる。一方、ＶＴＤＭＣＡモードを使用すると判定した場合、ステップ６２において、ホスト・コントローラが、ＶＴＤＭＣＡモードを使用するための初期化を実行する。すなわち、ＤＳＰ１Ｂのシリアル・ポートを初期化し、フレーム同期クロックＬＲＣＫの“Ｈ”区間幅、ＢＣＫクロック数、データ長、フレーム長等を設定する。その後、ステップ６３において、ＶＴＤＭＣＡモード決定シーケンスを生成する。また、図４に示した初期化用のＰＤＩ入力（図５（ａ）のＤＩＤフィールドが“１”）を生成することによって、デバイスＩＤ決定シーケンスを開始させ、これによってＩＮデバイスとＯＵＴデバイスに対しデバイスＩＤを自動的に付与する。次に、ステップ６４において、必要な場合には、全てのＩＮデバイスおよびＯＵＴデバイスのデバイスＩＤを確認する。これは、ＤＳＰ１Ｂが、各デバイスの内部レジスタに格納されたデバイスＩＤを読み出すことによって行う。すなわち、ＰＤＩ入力を使用してＤＳＰ１Ｂが各スレーブ・デバイスに対しそのデバイスＩＤを格納した内部レジスタを読み出すコマンドを送り、これに応答して、各スレーブ・デバイスが、その読み出したデバイスＩＤをＤＳＰ１Ｂに対しＰＤＯ出力を使用して送ることによって実現される。ＤＳＰ１Ｂは、これら受け取った各スレーブ・デバイスのデバイスＩＤを、予めＤＳＰ自身のメモリに格納されたスレーブ・デバイスのデバイスＩＤと照合する。またさらに、ステップ６４において、ＰＤＩデータの拡張コマンド・フィールド（図５（ｂ）に図示）を使用することによって、全てのスレーブ・デバイスを初期化する。初期化の完了後、次のステップ６５では、ＤＳＰ１Ｂは、ＩＮデバイスに対し、ＰＤＩ入力を送るか、あるいはＯＵＴデバイスからＰＤＯ出力を受ける。例えば、動作時においては、ＩＮデバイスへのＰＤＩ入力では、ＤＳＰ１Ｂは、最初にあるＩＮデバイス（任意に選択可）に対して、書き込みあるいは読み出しのコマンド・フィールドを送り、そしてそれに続いて、オーディオ・チャンネル・フィールドを送る。オーディオ・チャンネル・フィールドは、予め、全てのデバイスに対して行われた初期化によってその割り当てが決定している。このときのコマンド・フィールドが読み出しであれば、そのコマンド・フィールドで指定されたレジスタの内容がＰＤＯポートから状態フィールドに出力される。また、ＯＵＴデバイスに対するコマンド・フィールドも同様であり、オーディオ・チャンネル・フィールドがオーディオ・データの送信に変わるだけである。
【００４２】
次に、図７〜図２１を参照して、上述したシステムＢの動作の詳細について説明する。
図７は、ＤＳＰ１Ｂが図６のステップ６２において生成するＶＴＤＭＣＡモード決定のためのクロックＬＲＣＫおよびＢＣＫのタイミングを示している。図示のように、ＬＲＣＫのＨ（“１”）区間をＢＣＫ２クロック分としている。さらに、誤動作を防ぐため、ＩＮデバイスおよびＯＵＴデバイス側は、２回の検知（図７には、１回目はプレ（pre）ＶＴＤＭＣＡフレーム、２回目をＶＴＤＭＣＡフレームとして示している）でＶＴＤＭＣＡモードを確定するよう動作する。尚、ＬＲＣＫのＨ（“１”）区間をＢＣＫ２クロック分としたのは、上述のように、従来の動作モードにおけるAudio Serial InterfaceのＬＲＣＫ５０％デューティーと区別できるようにするためである。
【００４３】
次に、図８を参照して、デバイスＩＤ付与シーケンスのタイミングについて説明する。尚、このシーケンスは、図６のステップ６３で実行するものである。このデバイスＩＤ決定シーケンスは、ＩＮデバイス・グループおよびＯＵＴデバイス・グループの各々で互いに独立に行い、そしてデバイスＩＤ付与トークン（ＤＩＤトークン）をデイジーチェーンの最上流から下流に向かって伝達することにより行う。以下の説明ではＩＮデバイスについてのみ説明するが、同様の動作は、ＯＵＴデバイス・グループについても行う。詳細には、ＤＩＤトークンは、デイジーチェーンの最上流に接続した基準電圧により形成される。先ず、図８のＰＤＩポートに入力されるＰＤＩデータは、デバイスＩＤ付与シーケンスを開始させるため、前述のＤＩＤフィールドが“１”にセットされたコマンド・フィールドを含む。このコマンドを受けたＩＮデバイスは、デイジーチェーンの最上流のＩＮデバイスでは、ＤＣＩ１ポートに、常にハイのＤＩＤトークンを受けているため、クロックＬＲＣＫがハイのときにデバイスＩＤ＝１と判断する。そしてこのＤＩＤトークンを下流のＩＮデバイスへと伝達する。下流のＩＮデバイスは、このＤＩＤトークンを受けるまでにカウントしたＢＣＫのクロック数に基づいて(２クロックで１と判定)それ自身のデバイスＩＤを決定する。図８に示したように、最上流のＩＮデバイス（先頭デバイスとも呼ぶ）の次に下位のＩＮデバイスは、ＤＣＯ１に接続したＤＣＩ２がハイとなるまでのＢＣＫクロックをカウントし、そしてカウント４をデバイスＩＤ＝２とする。次に下位のＩＮデバイスは、カウント６をデバイスＩＤ＝３とする。すなわち、内部カウンタの２桁目以上を使用してデバイスＩＤを決定する。以上のようにして、ＤＩＤトークンをデイジーチェーンで最上流から下流へと伝達することによって、ＩＮデバイスが実行のデバイスＩＤを決定することができる。要約すると、コマンド・フィールド内のＤＩＤフィールドにより、全てのスレーブ・デバイスがデバイスＩＤ決定シーケンスを認識し、そして先頭のスレーブ・デバイスから順番にＤＩＤトークンをＢＣＫに同期して送っていき、ＤＣＩポートに“ハイ”が現れたサイクルで自分が何番目に接続されているか各スレーブ・デバイスが自分で認識すると共に、次のデバイスにＤＩＤトークンを出力して行く。先頭のデバイスのＤＣＩポートを“１”に固定にすることにより、デバイスＩＤ＝１を認識し起点となる。
【００４４】
本発明のこのデバイスＩＤ決定方法を使用することにより、同一システム内に同じ種類のデバイスが複数存在しても、ＤＳＰのようなマスタ・デバイスがそれぞれを特定することができる。この方法では、単純にマスタ・デバイスの外部端子を利用してデバイスを識別する方法と比べ、識別できるデバイスの数は、利用できるマスタ・デバイスの端子数に制限されない、という利点がある。すなわち、本発明のデイジーチェーンを利用するとで、そのような従来の制約はなくなり、マスタ・デバイスの設定端子数の増加を伴わずに、スレーブ・デバイスの数を増加させることができる。
【００４５】
次に、図９を参照して、このデバイスＩＤ付与シーケンスを実行する図３に示したデバイスＩＤ付与回路７０の１つの詳細について説明する。尚、他のデバイスＩＤ付与回路も同じ回路のものであるので、回路７０−２Ｂについて詳細に説明することにする。デバイスＩＤ付与回路７０−２Ｂは、図示のように、クロックＬＲＣＫとクロックＢＣＫ、そしてＤＣＩポートからのデバイス識別子（ＤＩＤ）付与トークン入力と、デバイスＩＤ決定シーケンスの開始コマンドと、システム・リセット信号とを、入力として受け、そして出力として、ＤＣＯポートへのＤＩＤ付与トークン出力を発生するように構成されている。尚、開始コマンドは、図８で説明したコマンド・フィールド内のＤＩＤフィールドにおける“１”の信号である。また、システム・リセット信号は、システムのリセットが解除されるときにハイとなる信号である。これら入力および出力を有する本回路は、図示のように、大きく分けて、デバイスＩＤ決定シーケンス開始制御部７００と、時間測定部７０１と、デバイスＩＤ記憶部７０２と、トークン判別回路７０３と、ＤＩＤ付与下流側トークン生成回路７０４と、先頭デバイス（最上流デバイス）判別回路７０５と、先頭トークン生成回路７０６とから構成されている。詳細には、シーケンス開始制御部７００は、Ｄ形フリップフロップ（Ｆ／Ｆ５）７０００を備え、これは、Ｄ入力、ＣＫ入力、リセット（ＲＳＴ）入力、そしてＱ出力を有し、そしてＣＫ端子は、インバータ７００２を介してクロックＬＲＣＫを受ける。このＦ／Ｆ５は、システム・リセット信号がハイで、開始コマンドがハイのとき、クロックＬＲＣＫに応答して、ハイのＱ出力を発生する。このハイのＱ出力は、決定シーケンスの開始から終了までの期間（１フレーム期間に等しい）を示す信号を出力する。
【００４６】
一方、時間測定部７０１は、カウンタ７０１０で構成され、このカウンタ７０１０は、クロックＢＣＫを受けるＣＬＯＣＫ端子と、Ｆ／Ｆ５のＱ出力に接続したＲＥＳＥＴ端子とを備えている。このカウンタは、ＲＥＳＥＴ端子に受けるＦ／Ｆ２のＱ出力の立ち下がりエッジによってリセットされ、そしてデバイスＩＤ決定シーケンスの開始後に受けるクロックＢＣＫをカウントすることにより、決定シーケンス開始時からの時間測定を開始し、その時間測定結果としてカウント値をその出力に発生する。また、デバイスＩＤ記憶部７０２は、＋１加算器７０２０とレジスタ７０２２で構成されている。＋１加算器７０２０は、入力がカウンタ７０１０のＬＳＢを除くカウンタ出力を受けるように接続し、そしてカウンタ出力に１加算した出力を発生する。これにより、クロックＢＣＫの２クロック分を、デバイス識別子１つ分としてカウントする。レジスタ７０２２は、クロックＢＣＫを受けるＣＬＯＣＫ端子に加え、トークン入力を受けるＬＡＴＣＨ端子と、＋１加算器７０２０の出力に接続された入力を有している。このレジスタ７０２２は、ハイのトークン入力を受けたときに、クロックＢＣＫに応答して、決定シーケンス開始時からトークン入力受信時までの時間測定の結果としての加算器出力をラッチし、この加算器出力を当該デバイスのデバイスＩＤとして記憶する。デバイスＩＤ付与回路７０−２Ｂが含むＤＩＤ付与下流側トークン生成部７０４は、Ｄ形フリップフロップ（Ｆ／Ｆ１）７０４０とＤ形フリップフロップ（Ｆ／Ｆ２）７０４２から成る。これらＦ／Ｆは、Ｆ／Ｆ５（７０００）のＱ出力を受けるＲＳＴ入力と、クロックＢＣＫを受けるＣＫ端子とを備えている。それらのＤ入力は、Ｆ／Ｆ１がトークン判別回路７０３からのトークンを受け、そしてＦ／Ｆ２がＦ／Ｆ１のＱ出力を受けるように接続されている。この構成により、Ｆ／Ｆ１とＦ／Ｆ２は、決定シーケンス開始時にリセット(立ち下がりエッジでリセット)された後、その後にトークン判別回路７０３を介してトークンを受けたときに、この受けたトークンをクロックＢＣＫの２クロック分（２段のＦ／Ｆ）遅延させたものを、下流側のＤＩＤ付与トークンとしてＦ／Ｆ２のＱ出力に生成するよう動作する。以上は、先頭デバイスを含むデバイスの一般的な動作であるが、先頭デバイスの場合、ＤＩＤ付与トークン入力は常にハイであるため、先頭トークンを特別に生成する必要がある。このため、上記のように、デバイスＩＤ付与回路７０−２Ｂは、回路７０３，７０５，７０６をさらに備えている。
【００４７】
詳細には、トークン判別回路７０３は、セレクタ７０３０を備え、これは、ＤＩＤ付与トークン（これは、先頭デバイスでは常にハイの信号）を受ける入力と、先頭トークン（後述）を受ける入力とを有し、そしてまた当該デバイスが先頭デバイスであること（ハイのとき）を示す先頭デバイス信号を受ける制御入力とを備えている。このセレクタは、先頭デバイス信号がハイのとき、先頭トークンを出力に通し、そしてローのときには上流からのＤＩＤ付与トークンを出力に通すように動作する。また、先頭デバイス判別回路７０５は、フリップフロップ（Ｆ／Ｆ６）７０５０とＡＮＤゲート７０５２とを備えている。Ｆ／Ｆ６は、システム・リセット信号を受けるリセット入力と、インバータ７００２を介してクロックＬＲＣＫを受けるＣＫ端子と、そしてＡＮＤゲート７０５２の出力に接続したＤ端子とを備え、そしてそのＡＮＤゲートは、開始コマンドを受ける入力とＤＩＤ付与トークン入力を受ける入力とを備えている。先頭デバイスの場合、ＤＣＩは常にハイであるため、ＡＮＤゲート（ＡＮ１）７０５２は、開始コマンドがハイになったときにハイの出力を出す。この出力を受けるＦ／Ｆ６は、クロックＬＲＣＫの立ち下がりに応答して、ハイのＱ出力を発生し、そしてこれはクロックＬＲＣＫの次の立ち下がり時にローになる（図１０参照）。一方、先頭デバイス以外の下流のデバイスでは、開始コマンドとＤＣＩ入力とが同時にハイになることはないため、Ｆ／Ｆ６のＱ出力は常にローに留まる。このようにして、Ｆ／Ｆ６のハイのＱ出力は、当該デバイスが先頭デバイスであることを示す。
【００４８】
次に、先頭トークン生成回路７０６は、先頭デバイスではＤＣＩが常にハイであるため、先頭デバイス専用のトークンを生成するために設けられている。詳細には、この回路７０６は、Ｆ／Ｆ３（７０６０）とＦ／Ｆ４（７０６２）と、インバータ７０６４と、そしてＡＮＤゲート（ＡＮ２）７０６６とを備えている。Ｆ／Ｆ３とＦ／Ｆ４とは、Ｆ／Ｆ５のＱ出力を受けるリセット端子と、クロックＢＣＫを受けるＣＫ端子とを備え、そしてＦ／Ｆ３は、先頭デバイス信号（Ｆ／Ｆ６のＱ出力）を受けるＤ端子を備え、そしてＦ／Ｆ４は、Ｆ／Ｆ３のＱ出力に接続したＤ端子を備えている。この接続により、Ｆ／Ｆ３とＦ／Ｆ４とは、先頭デバイス信号の前縁を１クロック分ずつ（図１０参照）、したがって２クロック分遅延させるよう動作する。遅延した信号をインバータ７０６４で反転させた信号と、先頭デバイス信号とを受けるＡＮＤゲートＡＮ２は、通信フレームの開始（クロックＬＲＣＫの立ち下がり）からクロックＢＣＫの２クロック分の長さだけハイの信号を出力に発生する。この出力は、先頭デバイス用の先頭トークンを構成する（図１０参照）。この先頭トークンは、上記のように、トークン判別回路７０３に供給される。尚、先頭デバイス以外の下流のデバイスでは、先頭デバイス信号は常にローであり、したがってＡＮＤゲートＡＮ２の出力は常にローとなる。
【００４９】
次に、図１０および図１１を参照して、このデバイスＩＤ付与回路７０の動作を説明する。先ず、図１０のタイミング図を参照して先頭デバイスについて説明する。最初に、システム・リセット信号がハイになった後、クロックＬＲＣＫがハイになってＶＴＤＭＣＡフレームが開始され、その後に受ける開始コマンドのハイによって、デバイスＩＤ決定シーケンスの開始が示されると、Ｆ／Ｆ５のＱ出力は、ハイとなってデバイスＩＤ決定シーケンスを示す。これにより、カウンタ７０１０は、図示のようにクロックＢＣＫのカウントを開始し、また加算器７０２０の加算によるデバイス識別子のカウントアップを開始する。一方で、Ｆ／Ｆ６は、当該デバイスが先頭デバイスであることを示す先頭デバイス信号を出力し、そしてこれに応答してＦ／Ｆ３，４等を介して、図示のように２クロック分ハイとなる先頭トークンを発生する。この先頭トークンは、セレクタ７０３０が、先頭デバイス信号がハイであるため出力に通してレジスタ７０２２とＦ／Ｆ１に供給される。これにより、レジスタ７０２２は、先頭トークンに応答してそのときの加算器出力“１”をラッチして記憶する。この“１”は、当該デバイスのデバイス識別子＝１であることを示す。一方で、その先頭トークンを受けるＦ／Ｆ１は、Ｆ／Ｆ２と共に動作して、先頭トークンを２クロック分遅延させて下流側トークンを生成し、これをＦ／Ｆ２のＱ出力に発生する。以上の動作によって、先頭デバイスには、デバイス識別子＝１が与えられる。
【００５０】
次に、図１１を参照して、先頭デバイスの１つ下流のデバイスについて説明すると、下流デバイスの場合、上述のようにＦ／Ｆ６並びにＦ／Ｆ３，４，５のＱ出力は全てローであるため、先頭デバイス信号（Ｆ／Ｆ６のＱ出力）および先頭トークン（ＡＮの出力）はローである。一方で、先頭デバイスからの下流トークンをＤＩＤ付与トークンとしてＤＣＩを介して受けると、セレクタ７０３０は、先頭デバイス信号がローであるため、このＤＩＤ付与トークンを出力に通過させてレジスタ７０２２、Ｆ／Ｆ１に供給する。これにより、レジスタ７０２２は、その時の加算器出力をラッチしてデバイス識別子＝２を記憶する。これと同時に、Ｆ／Ｆ１とＦ／Ｆ２は、このトークンを２クロック分遅延させることによって、さらに下流のデバイスに対するＤＩＤ付与トークンを生成する。
【００５１】
以上の動作によって、ＩＮデバイス・グループの各デバイスは、自己のデバイスＩＤを決定する、すなわちデバイスＩＤの付与を受けることができる。尚、Ｆ／Ｆ５のＱ出力が“ロー”に立ち下がったとき、この決定シーケンスは終了する。この決定シーケンスは、システムの初期化時に一回行うことが必要なだけであり、したがって、開始コマンドは、初期化時に一回生成させるだけである。初期化後の動作時においては、一度決定されたデバイスＩＤがレジスタに格納されたままとなる。
【００５２】
次に、図１２を参照して、図３に示した時間スロット割当回路７２の全体の動作について説明する。この回路は、可変時分割多重（ＶＴＤＭＣＡ）通信において、ＩＮデバイスまたはＯＵＴデバイスのようなスレーブ・デバイスの各々に対し、通信フレーム内の時間スロットを割り当てるのに使用するものである。尚、デバイスＩＤ付与回路７０の場合と同様に、ＩＮデバイス・グループとＯＵＴデバイス・グループとは互いに独立して同じ方法でこの時間スロット割当を行うため、図１２に示したＩＮデバイス・グループについて最初に説明する。図示のように、１つの通信フレームは、クロックＬＲＣＫの立ち上がりから次の立ち上がりまでの期間であり、そして、クロックＬＲＣＫの立ち上がりから最初の時間スロットが開始し、そしてこの後に多数の時間スロットが続く。図１２に示した例では、最初の時間スロットでは、ＰＤＩ入力のコマンド・フィールドが、そして２番目以降の時間スロットの各々には、オーディオ・チャンネル・フィールドｃｈ１〜ｃｈ８の１つが存在する。尚、ｃｈ８より後の期間は、図示例では不使用の期間である。また、図１２の例では、それぞれのＩＮデバイスが２チャンネル分を利用する場合、最上流デバイス（ＤＩＤ＝１）はｃｈ１とｃｈ２を利用し、次のデバイス（ＤＩＤ＝２）はｃｈ３とｃｈ４を利用し、そして次のデバイス（ＤＩＤ＝３）はｃｈ５とｃｈ６を利用し、そして最後のデバイス（ＤＩＤ＝４）はｃｈ７とｃｈ８を利用する。
【００５３】
通信フレームの開始後、デバイスＩＤ（ＤＩＤ＝１）番号１の先頭（最上流）デバイスは、２つ分のオーディオ・チャンネルがイネーブルで、また常にＤＣＩ１ポートがハイであるため、ＤＳＰ１ＢからＰＤＩポートに受けたＰＤＩ入力内のコマンド・フィールド後の最初のオーディオ・チャンネル・フィールドから２チャンネル分を取り込む。その際、ｃｈ２のオーディオ・チャンネル・フィールドの時間スロット期間の間、ＤＣＯ１ポートをハイにして、時間スロット割当トークン（以下では、時間スロット割当（ＳＡ）トークンと呼ぶ）を生成して、１つ下流の第２のＩＮデバイス（ＤＩＤ＝２）に送る。この第２のＩＮデバイスも２チャンネル・フィールド分を取り込むので、ｃｈ３とｃｈ４を取り込む。同様に、その際、ｃｈ４のオーディオ・チャンネル・フィールドの時間スロット期間の間、ＤＣＯ２ポートをハイにしてＳＡトークンを生成して、１つ下流の第３のＩＮデバイス（ＤＩＤ＝３）に送る。その後、同様にして、最後のＩＮデバイス（ＤＩＤ＝４）がＳＡトークンを受け取り、その直後のオーディオ・チャンネル・フィールドから自身の利用チャンネル数分（２つ分）だけオーディオ・チャンネル・フィールドを取り込み、そして自身の最後のオーディオ・チャンネル・フィールドの時間スロット期間（ｃｈ８）にＳＡトークンを生成し、１つ下流のＩＮデバイスにこのＳＡトークンを渡していく。これによって、時分割多重通信が実現される。また、この例では、最後のＩＮデバイス（ＤＩＤ＝４）は、自身が最後であるという認識は必要なく、下流にＳＡトークンを出力している。また、各デバイスが使用する時間スロットの数を互いに異なるように設定することにより、可変時分割多重が実現される。尚、以上のＩＮデバイス・グループに対するタイミングは、ＯＵＴデバイス・グループについても、図示のように同様である。
【００５４】
次に、図１３〜図１５を参照して、図３に示した時間スロット割当回路７２の回路の詳細について説明する。図１３（ａ）および（ｂ）に示したように、時間スロット割当回路７２は、大きく分けて、時間スロット位置指示部７２０と、利用時間スロット指示部７２１（図１３（ｂ））と、割当時間スロット判別部７２２（図１３（ｂ））と、データ保持部７２４と、データ記憶部７２５と、そしてＳＡ（スロット割当）トークン生成部７２６と、源トークン生成部７２７とから成っている。時間スロット位置指示部７２０は、カウンタ７２００とＡＮＤゲート７２０２で構成されている。カウンタ７２００は、クロックＬＲＣＫを受けるＲＳＴ端子と、クロックＢＣＫを受けるＣＫ端子と、５ビットのカウンタ出力（Ｑ１〜Ｑ５）とを有し、そしてクロックＬＲＣＫの立ち下がりエッジでリセットされ、そして１つの時間スロット（クロックＢＣＫ３２個分）の間に発生するクロックＢＣＫの数のカウントを完了したときに、５ビット・カウンタ出力（Ｑ１〜Ｑ５）が全てハイとなる（クロックＢＣＫの２個目からカウント開始するためカウント“３１”で全てハイとなる）。このカウンタ出力の各ビットに接続した入力をもつＡＮＤゲート７２０２は、カウンタ出力が全て“１”になったときのみハイの出力を発生する。このハイのＡＮＤゲート出力は、各々の時間スロットの終了部分を指示する信号（ｂｃ３１）となる。
【００５５】
利用時間スロット指示部７２１は、当該ＩＮデバイスが利用する時間スロット数を指示するものであって、Ｎビットのレジスタ７２１０で構成されている。Ｎは、デバイス内に設けられたチャンネルの総数である。このレジスタ７２１０は、ｃｈ１からｃｈＮまでのチャンネル・イネーブル・ビットを有しており、該当するビットが“１”であるときは、そのチャンネルがイネーブルされていること、すなわち、当該ＩＮデバイスにそのチャンネル（または時間スロット）を利用するよう設定されていることを示す。したがって、“１”のチャンネル・イネーブル・ビットは、時間スロット利用イネーブル信号を構成する。Ｎビットあるため、Ｎ個のチャンネルまでこのＩＮデバイスに割り当てることができ、これによって可変時分割多重が実現できる。尚、ここで、ｃｈ１イネーブル信号とは、図１２に示したｃｈ１スロットのことではなく、当該デバイスが利用するよう設定されたスロットの１番目のものという意味である。このレジスタ７２１０は、当該ＩＮデバイス内の内部レジスタであるコマンド・レジスタ７２１２内に含まれたものである。レジスタ７２１０の各ビットは、当該ＩＮデバイスに予め設定することができ、そしてこの場合、マスタ・デバイスであるＤＳＰ１Ｂのメモリ内にシステム設計時に予め格納することが好ましい。但し、システム設計時にスレーブ・デバイスへの時間スロットの割当内容が既知でない場合、あるいは可変である場合、マスタ・デバイスは、マスタ・デバイスにおいてシステム設計後に設定されたそれらスレーブ・デバイスに対する時間スロット割当内容を、通信によって（コマンド・フィールドを用いて）スレーブ・デバイスのコマンド・レジスタ７２１２内のレジスタ７２１０に書き込むこともでき、これは、シフトレジスタ７２４０およびアドレス・デコード回路（図１３（ｂ））を介して行うことができる。あるいはまた、スレーブ・デバイスにおいて設定されたこのレジスタの設定内容は、マスタ・デバイスが通信によって受けるようにすることもでき、これは、スレーブ・デバイスのレジスタ７２１０の読み出しを図１３（ｂ）の状態フィールド出力回路（パラレル／シリアル変換回路）を通じて受けることにより実現される。割当時間スロット判別部７２２は、チャンネル１〜Ｎにそれぞれ対応するＮ個のＡＮＤゲート７２２０−１〜Ｎから構成され、各ＡＮＤゲート７２２０は、１つの入力にチャンネル・イネーブル信号であるｃｈ１〜ｃｈＮのイネーブル信号の対応する１つを受け、そして別の１つの入力に同じく対応するチャンネルのＳＡ（時間スロット割当）トークン入力（ＳＡ１〜ＳＡＮ（またはＤＣＯ））を受け、そして残りの第３の入力にスロット開始位置指示信号ｂｃ３１を受けるように接続されている。ＳＡトークンＳＡ１〜ＳＡＮの各々は、各オーディオ・チャンネル・フィールド１〜Ｎにそれぞれ対応する時間スロットを、当該デバイスが利用できるようにするために割り当てるものである。したがって、各ＡＮＤゲート７２２０の出力には、ある特定の時間スロットに関して、この時間スロット（またはチャンネルの）の利用がイネーブルされており、かつＳＡトークンを受けており、しかも時間スロット位置指示信号を受けたときのみ、ハイの出力を発生する。このハイの出力は、このハイのときの時間スロットが当該デバイスに割り当てられているスロット（すなわち割当スロット）でかつ当該デバイスが利用するスロット（すなわち利用スロット）あることを示す割当スロット利用指示信号となる。尚、チャンネル・イネーブル信号がローのときは、当該デバイスが利用しない時間スロットであるため、割当スロット利用指示信号はローとなる。
【００５６】
データ保持部７２４は、図示のように、シフトレジスタ７２４０で構成され、このシフトレジスタは、ＰＤＩポートからのＰＤＩ入力すなわちパケット・データを受けるＤＡＴＡ端子と、クロックＢＣＫを受けるＣＫ端子とを有し、そしてシフトレジスタに保持したデータを発生する出力端子を有している。このシフトレジスタ７２４０は、入来するＰＤＩ入力を１パケット（または１時間スロット）の長さ分だけ保持するように動作する。
【００５７】
データ記憶部７２５は、Ｎチャンネルの数と同じＮ個のオーディオ・チャンネル・レジスタ７２５０−１〜Ｎで構成され、これらレジスタの各々は、対応するＡＮＤゲート７２２２からの割当スロット利用指示信号を受けるイネーブルＥＮ端子と、クロックＢＣＫを受けるＣＫ端子とを有し、そしてまたシフトレジスタ７２４０の出力に接続した入力（図では、概略的に示す）を有している。各レジスタ７２５０は、ＡＮＤゲート７２２２からの割当スロット利用指示信号に応答して、当該割当スロット（または割当チャンネル）内のパケットをシフトレジスタ７２４０から受けてラッチすることにより、そのパケットを記憶する。これにより、当該ＩＮデバイスは、割り当てられしかも利用する時間スロットからデータを受け取ることができる。尚、このレジスタ７２５０内のデータは、後続の処理（ＤＡＣの場合は、デジタル−アナログ変換）のために読み出されることになる。
【００５８】
次に、源トークン生成部７２７は、源（ソース）トークンを発生する回路部分であり、これは、先頭トークンを発生するかあるいは上流からのＳＡトークンを出力する。すなわち、源トークン生成部７２７は、マルチプレクサ（ＭＵＸ）７２７０と、先頭トークン生成回路７２７２とを備えている。ＭＵＸ７２７０は、一方の入力がデイジーチェーン入力ＤＣＩに接続され、そして他方の入力が先頭トークン生成回路７２７２の出力に接続され、そして図９の先頭デバイス判別回路７０５と同様の回路(共用も可能)からの先頭デバイス信号を受ける制御入力とを有している。したがって、先頭デバイス信号が真すなわちハイのとき、すなわち、当該デバイスが先頭デバイスであるときは、回路７２７２からの先頭トークンを出力に通し、そしてローのとき、すなわち、当該デバイスが先頭以外のデバイスであるときは、上流からＤＣＩポートで受けるＳＡトークンを出力に通す。先頭トークン生成回路７２７２は、クロックＢＣＫを受けるＢＣＫ端子と、クロックＬＲＣＫを受けるＬＲＣＫ端子とを有し、そして先頭トークンを発生する出力を有する。
【００５９】
詳細には、図１４に示すように、先頭トークン生成回路７２７２は、６ビット・カウンタ７２７２０と、ＡＮＤゲート７２７２２と、そしてＯＲゲート７２７２４とから構成されている。カウンタ７２７２０は、ＡＮＤゲート７２７２２の出力に結合したＣＬＫ端子と、クロックＬＲＣＫを受けるように接続したＲＳＴ端子とを有し、また、６ビットのカウンタ出力Ｑ１〜Ｑ６を有している。ＡＮＤゲート７２７２２は、一方の入力がクロックＢＣＫを受け、そして他方の入力が最上位のＱ６端子に接続されており、したがって、Ｑ６がローの間はクロックＢＣＫをカウンタＣＬＫ端子に供給し、そしてＱ６がハイになるとそれ以降は、リセットされるまで、クロックをカウンタＣＬＫ端子に供給するのを停止する。したがって、カウンタ出力Ｑ１〜Ｑ５を受けるＯＲゲートは、５ビット・カウンタ部分のビット出力の少なくとも１つがハイの間、すなわちカウンタ出力が１から３１の間（すなわち、時間スロットのうちコマンド・フィールドのある最初の時間スロット）は、出力にハイを発生する（図１６のトークンを参照）。このハイＯＲゲート出力は、先頭トークンを構成する。
【００６０】
最後に、図１３（ａ）に示すＳＡトークン生成部７２６は、Ｎ個のチャンネルにそれぞれ対応して設けたＮ個の縦続接続したトークン伝播回路７２６０−１〜Ｎを備えている。各トークン伝播回路７２６０は、クロックＢＣＫを受けるＢＣＫ端子と、時間スロット開始位置指示信号ｂｃ３１を受けるＢＣ３１端子と、この伝播回路が対応するチャンネルのチャンネル・イネーブル信号を受けるイネーブルＥＮ端子と、そして入力ＩＮ端子および出力ＯＵＴ端子を有している。伝播回路は、最初の段では、源トークン生成部７２７からのトークンを受ける入力ＩＮ端子を備え、そしてそれ以降の段では、前段のＯＵＴ端子に接続した入力ＩＮ端子を備えている。また、各伝播回路の出力ＯＵＴ端子は、ＩＮ端子で受けたトークンを、チャンネル・イネーブル信号がハイの時はほぼ１時間スロット分（ほぼクロックＢＣＫ３２個分）遅延させたものを発生し、そしてチャンネル・イネーブル信号がローのときは遅延なしでそのまま通過させる。最後の段７２６０−ＮのＯＵＴ端子は、次に下流のデバイスへのＳＡトークン（ＳＡＮ）をＤＣＯポートに供給する。これによって、下流側のデバイスが、順番に時間スロットを利用できるようになる。これら各伝播回路のＯＵＴ端子に発生されるトークンは、次段または次に下流のデバイスへのトークンとなると共に、当該デバイス内における時間スロット割当トークンＳＡ１〜ＳＡＮとして使用する。尚、ｃｈ１とｃｈ２のチャンネル・イネーブル信号がハイであるときは、２つのチャンネル、すなわち２つのスロットを使用することを意味し、図１２にｃｈ１およびｃｈ２を付して示した時間スロットを必ずしも使用することを意味するものではない。したがって、当該デバイスの上流のデバイスが図１２のｃｈ１とｃｈ２を利用しているとした場合、当該デバイスが利用するｃｈ１とｃｈ２は、図１２のｃｈ３とｃｈ４を付したスロットに相当することになる。
【００６１】
詳細には、図１５に示したように、各伝播回路７２６０は、マルチプレクサ（ＭＵＸ）７２６００と、イネーブル制御付きＤ形Ｆ／Ｆ７２６０２とから構成されている。ＭＵＸ７２６００は、一方の入力が当該伝播回路のＩＮ端子に接続され、そして他方の入力がＦ／Ｆ７２６０２のＱ出力に接続され、そして制御入力がＥＮ端子に接続されており、これによって、ＥＮ端子がローのときはＩＮ端子で受けたトークンをそのまま通過させ、そしてＥＮ端子がハイのときは、Ｆ／ＦのＱ出力をＭＵＸの出力、すなわち１時間スロット分遅延させたＩＮ端子のトークンを通過させる。Ｆ／Ｆ７２６０２のＤ端子は、ＩＮ端子に接続され、ＥＮ端子はｂｃ３１を受けるように接続されている。また、Ｆ／Ｆは、クロックＢＣＫを受けるように接続されたＣＬＫ端子を有し、ＥＮがハイの場合のみ入力信号をラッチする。したがって、このＦ／Ｆは、信号ｂｃ３１がハイであるときに、ＩＮ端子から入力された信号がハイであれば、次のスロットの間にハイの信号を発生する。尚、当該デバイスで利用するチャンネルの設定は、上述のようにレジスタ７２１０に格納されている。
【００６２】
次に、図１６〜図２１のタイミング図を参照して、この時間スロット割当回路７２の全体の動作について説明する。
先ず、図１６〜図２０で、１つのデバイス例えば先頭デバイスの動作について説明する。ここで、図１７〜図２０においては、デバイス内に４チャンネル分の処理部を有するものとする。図１６では、先頭デバイスがチャンネルｃｈ１を利用するが、ｃｈ２を利用せず、さらに図示しない別のチャンネルを利用する場合について示している。詳細には、図示のクロックＬＲＣＫおよびＢＣＫの下で、５ビット・カウンタ７２００は、図示のようにカウントを行って、各スロットの終わりにハイとなるｂｃ３１信号を発生し、これによって、スロットの終わりを示す。次に、先頭トークン生成回路７２７２は、図示のように最初のスロットで先頭トークンを発生するが、この先頭デバイスは、ｃｈ１を利用するため、ｃｈ１イネーブルはハイであり、したがってトークン伝播回路７２６０−１はその出力に１スロット分遅延したトークンＳＡ１を発生する。このトークンに応答して、この先頭デバイスは、シフトレジスタ７２４０の内容（チャンネルｃｈ１のデータ）をレジスタ７２５０−１にラッチして格納する。次に、トークンＳＡ１を受ける次のトークン伝播回路７２６０−２は、ｃｈ２イネーブルがローであるため、ＳＡ１を遅延させずにそのままＳＡ２として通過させる。このとき、ＡＮＤゲート７２２０−２の出力は、ｃｈ２イネーブル信号がローであるためローのままであり、したがって、レジスタ７２５０−２へのラッチは生じない。さらに、先頭デバイスは、別のチャンネル等を利用した後に、最後に下流へのトークンをＤＣＯポートに発生する。このようにして、先頭デバイスは、このデバイスが利用する時間スロットのチャンネル・データのみを受けることができる。
【００６３】
次に、図１７は、先頭デバイスがｃｈ１〜ｃｈ４の４チャンネル分を利用する場合（ｃｈ１〜ｃｈ４のチャンネル・イネーブル信号がハイ）を示している。この場合、ｃｈ１〜ｃｈ４のイネーブル信号はハイであるため、図示のように、ＳＡ１、ＳＡ２、ＳＡ３、ＳＡ４（＝ＤＣＯ）は、先頭トークンから１スロット分ずつ遅延したものとなる。この時、ＡＮＤゲート７２２０−１〜４の出力はハイであるため、レジスタ７２５０−１〜４のレジスタへのラッチが生ずる。尚、ＳＡ４トークンは、下流デバイスへのトークンとしてＤＣＯポートに出力される。このように、１つのデバイスに、多数の時間スロットを利用させることができ、可変時分割多重を実現できることが分かる。
【００６４】
図１８は、先頭デバイスがｃｈ１とｃｈ３のハイのイネーブル信号によって２つのチャンネルを利用する場合のタイミング図である。この場合、ｃｈ２イネーブル信号はローであるため、ＳＡ２トークンはＳＡ１トークンと同じである。このとき、ＡＮＤゲート７２２０−３は、ｃｈ３イネーブル信号がハイであるため、レジスタ７２５０−３は、ｃｈ２オーディオ・チャンネル・フィールドのデータをｃｈ２レジスタ７２５０−２ではなく、ｃｈ３レジスタ７２５０−３にラッチすることになる。したがって、１つのデバイス内で、２以上の受け取りチャンネルを利用する場合、イネーブルするチャンネルは、必ずしも連続している必要はない。ある条件下において、デバイス内のｃｈ２およびｃｈ４が使用されない場合、あるいはデバイス内のｃｈ１とｃｈ２およびｃｈ３とｃｈ４が同じデータを使用する場合には、このような設定を行うことにより、マスタ・デバイスのデータ送信の効率を高めることが可能である。これにより、任意のチャンネルを限定して使用でき、無駄なデータ送信を行う必要がない。尚、本例の場合、利用時間スロット数＝２である。
【００６５】
次に、図１９は、先頭デバイスにおいて、ｃｈ２イネーブル信号のみがハイの場合のタイミング図である。この場合、ｃｈ１イネーブル信号はローであるため、ＳＡ１は先頭トークンに等しく、そしてＳＡ２は、ＳＡ１から１スロット分遅延し、そしてその後のＳＡ３等は、ＳＡ２からの遅延はない。この場合、ＡＮＤゲート７２２０−２の出力のみがハイとなるため、ｃｈ２レジスタ７２５０―２がｃｈ１オーディオ・チャンネル・フィールドのデータを受けることになる。これは、デバイスに設けられている４チャンネル内のｃｈ２のみを使用する例である。
【００６６】
図２０は、先頭デバイスにおいて、全てのｃｈイネーブル信号がローである場合、すなわち全く時間スロットを利用しない場合のタイミング図を示している。この場合、先頭トークンは、そのままＳＡ１，ＳＡ２、ＳＡ３等として遅延されずに伝達され、そしてそのまま下流側のデバイスに伝達される。この使用モードは、ある条件下で当該デバイスを全く使用しないこと、あるいはデイジーチェーン接続の必要があるが、全く入力または出力を行わず時間スロットを利用する必要がないデバイスに対して使用できる。この場合、利用時間スロット数＝０の場合を構成する。以上のように、デバイス内の個々のチャンネルについて、使用／未使用を設定することができ、無駄なデータ送信を行う必要がないため、伝送効率を高めることができる。
【００６７】
図２１は、複数のデバイス間でのＳＡトークンの受け渡しを示すタイミング図である。図示例は、図２１（ａ）に示すように複数のデバイスをカスケード接続した場合を示している。しかも、デバイス１が１チャンネル分、デバイス２が２チャンネル分、デバイス３が全くチャンネルを使用せず、そしてデバイス４が３チャンネル分を使用するとする。この場合、図２１（ｂ）のタイミング図に示すように、デバイス１は、ｃｈ１オーディオ・チャンネル・フィールドを利用することにより、先頭トークンから１スロット分遅延したトークンを出力ＤＣＯ１に発生する。次に、デバイス２は、２チャンネル分利用するため、さらに２スロット分遅延したトークンをＤＣＯ２に発生する。デバイス３は、スロットを利用しないため、デバイス２の出力トークンをそのまま遅延させずにＤＣＯ３に出力する。次のデバイス４は、３チャンネル分を利用するため、デバイス３からのトークンをさらに３スロット分遅延させたトークンをＤＣＯ４に発生する。このようにして、デバイス間でデイジーチェーンを使って、時間スロット割当トークンを順番に伝播させることができる。さらに、これと共に、各デバイスでは利用する時間スロットの数を任意に設定できるため、本例では、デバイス２は、デバイス１の２倍の伝送帯域を有し、そしてデバイス４は、デバイス１の３倍の伝送帯域を有することになる。尚、デバイス３の伝送帯域はゼロである。このようにして、本発明によれば、可変の時分割多重をデイジーチェーンを使用することによって実現することができる。
【００６８】
以上に、ＤＳＰ１ＢからＩＮデバイスへのデータ伝送について説明したが、ＯＵＴデバイスからＤＳＰ１Ｂへのデータ伝送も上記と同様にして実現できる。異なる点は、レジスタ７２５０に送出するデータを配置し、そして割当スロットの開始時にそのデータをシフトレジスタ７２４０に移してＰＤＯポートから出力する点である。その他の時間スロット割当（ＳＡ）トークンの受け渡し、並びにチャンネル・イネーブル信号の使用は同じである。上記の説明からも分かるように、ＩＮデバイス・グループと、ＯＵＴデバイス・グループは、別個のデイジーチェーンを備えているため、互いに独立してデバイス識別子の付与および時間スロット割当トークンの伝達が可能であるため、同時に動作することが可能である。
【００６９】
以上に、本発明の好ましい実施形態について説明したが、この実施形態に対し種々の変更が可能である。第１に、デイジーチェーンの数は、デバイス・グループに対応させて２つ以上の任意の数とすることも可能である。この場合、各デイジーチェーン・グループのデバイスには、デイジーチェーン接続線の識別子または番号をデバイス・グループ識別子として格納することが必要である。第２に、マスタ・デバイスとして、ＤＳＰ以外のマイクロプロセッサのようなプログラマブル・デバイスとすることも可能であり、そしてそのシリアル・ポートをスレーブ・デバイスとのデータ伝送に使用することができる。第３に、スレーブ・デバイスのデバイス識別子は、マスタ・デバイスのメモリに予め記憶すること以外に、スレーブ・デバイスからマスタ・デバイスに伝送するようにすることも可能である。これは、スレーブ・デバイスの内部レジスタを読み出すことによって実現することができる。
【００７０】
第４に、図２２に示したように、同一のデバイスを２以上のデイジーチェーンに接続することも可能である。例えば、スレーブ・デバイスが、図示のように、コーデックのようなＩＮ／ＯＵＴデバイスの場合である。この場合、デバイスＩＤ付与回路７０は１つ設けるだけで良いが、時間スロット割当回路７２は２組設ける必要がある。これは、デバイスＩＤはコマンド・フィールドの送受信に利用されるので、マスタ側から区別でき、１つで良いが、オーディオ・チャンネル・フィールドは受信用（ＩＮ側）と送信用（ＯＵＴ側）で互いに独立しているので、デイジーチェーンが２つ必要だからである。第５に、上記のように、各スレーブ・デバイスに割り当てるスロット数を可変とすることによって、スレーブ・デバイス毎に異なった可変の伝送帯域を実現することができる。
【００７１】
第６に、上記実施形態におけるバスは、シリアルバスとしたが、パラレルバスも同様に使用することができる。第７に、所定の順序として、上記実施形態では、バスの時間スロット割当順序を“所定の順序”とした例を示しているが、その他の資源割当順序にも本発明を適用することができる。第８に、上記システムは、オーディオ・システムの例であるが、それ以外のシステム(例えば、ＬＡＮ、ＡＴＭ、遠隔監視システム、自動計測装置等)にも本発明を適用可能である。第９に、上記のスレーブ・デバイスとして、ＤＡＣ、ＡＤＣのようなデバイスを示したが、それ以外の集積回路チップ、または他の種類、規模の回路、ユニット、装置、機器(例えば端末、コンピュータ、カメラ、マイク、温度センサ、湿度センサ、圧力センサ、アクチュエータ等)等とすることも可能である。
【００７２】
以上に説明した本発明によれば、集積回路チップ等のデバイスに対し、自動的にデバイスに識別子を付与することができる。また、デバイスに対しより自由な識別子を付与することができるため、同種類のチップに対し異なったデバイス識別子を割り当てることができ、これにより、同一システム内において、同種類のチップを複数使用またはサポートすることが可能となる。これによって、従来のように、チップにデバイス識別子またはアドレスを、予めチップ製造時にＲＯＭに焼き付ける等して付与したり、あるいは、特定のデバイス種類に対し特定のデバイス識別子を付与することが不要となり、また、デバイスに対し外部からデバイス識別子を付与することも不要となる。これにより、回路等のシステムの設計が、チップ固有のデバイス識別子に拘束されないため、異なったメーカーの同種のチップを交換可能に使用することができる。
【００７３】
さらにまた、回路等のシステムにおいて付与する本発明のデバイス識別子では、従来のチップ固有のデバイス識別子のような冗長な識別子と比べ、単純な番号とすることができ、これによって、このデバイス識別子をそのまま使用して、最適なアドレスを形成したり、あるいはシステム内の共有可能な資源等の割当順序の順番としてもそのまま使用することができる。
【００７４】
また、上記順番として、共有可能な資源の順番とすれば、それら資源の効率的な利用を図ることができる。また、共有可能な資源として、バスを使用する時間スロットとすれば、可変時分割多重通信が実現される、また、時間スロットの割当量を可変とすることにより、バスの共有資源を使用しないデバイス、使用するデバイス、使用する頻度の高いデバイス等（ＩＮデバイス（ＤＡＣ）、ＯＵＴデバイス（ＡＤＣ）、ＩＮ／ＯＵＴデバイス（ＣＯＤＥＣ））を共存させても、これらデバイスの通信量を最適化（少ない冗長度）することができる。
【図面の簡単な説明】
【００７５】
【図１】図１は、本発明による実施形態の基本構成の通信システムを示すブロック図。
【図２】図２は、図１の通信システムをより具体化した１実施形態であるオーディオ・マルチチップ・システムＢを示すブロック図。
【図３】図３は、図２の各スレーブ・デバイス内に設けた、デバイスＩＤ付与回路、および時間スロット割当回路を示すブロック図。
【図４】図４は、図２のシステムで利用する可変時分割多重通信（ＶＴＤＭＣＡ）における通信フレームと、このフレーム内で伝送する伝送データ（ＰＤＩ入力およびＰＤＯ出力）の初期化時および動作時のフォーマットを示す図である。
【図５】図５は、図４に示した伝送フォーマットにおけるコマンド・フィールド、拡張コマンド・フィールドの構造を示す図であり、（ａ）はコマンド・フィールド、（ｂ）は拡張コマンド・フィールド、（ｃ）は状態フィールドを示す。
【図６】図６は、図２に示したオーディオ・マルチチップ・システムＢの全体の動作を示すフローチャート。
【図７】図７は、ＶＴＤＭＣＡモード決定のためのクロックＬＲＣＫおよびＢＣＫのタイミングを示す図。
【図８】図８は、デバイスＩＤ付与シーケンスにおける種々の信号を示すタイミング図。
【図９】図９は、図３に示したデバイスＩＤ付与回路７０の詳細を示す回路図。
【図１０】図１０は、先頭デバイス（最上流デバイス）における図９のデバイスＩＤ付与回路７０の動作を説明するためのタイミング図。
【図１１】図１１は、先頭デバイス以外の次の下流の第２のデバイスにおける図９のデバイスＩＤ付与回路７０の動作を説明するためのタイミング図。
【図１２】図１２は、図３に示した時間スロット割当回路群の全体の動作を説明するためのタイミング図。
【図１３】図１３は、（ａ）と（ｂ）が合わさって、図３に示した時間スロット割当回路７２の回路の詳細を示す回路図。
【図１４】図１４は、図１３の先頭トークン生成回路の詳細を示す回路図。
【図１５】図１５は、図１３のトークン伝播回路の詳細を示す回路図。
【図１６】図１６は、先頭デバイスがチャンネルｃｈ１を利用するがｃｈ２を利用しない場合を含む状況における、時間スロット割当回路内の種々の信号を示すタイミング図。
【図１７】図１７は、先頭デバイスがｃｈ１〜ｃｈ４の４チャンネル分を利用する場合における、時間スロット割当回路内の種々の信号のタイミング図。
【図１８】図１８は、先頭デバイスがｃｈ１とｃｈ３のハイのイネーブル信号によって２つのチャンネルを利用する場合における、時間スロット割当回路内の信号のタイミング図。
【図１９】図１９は、先頭デバイスにおいてｃｈ１イネーブル信号はローでｃｈ２イネーブル信号のみがハイの場合における、時間スロット割当回路内の信号のタイミング図。
【図２０】図２０は、先頭デバイスにおいて全てのｃｈイネーブル信号がローである場合における、時間スロット割当回路内の信号のタイミング図。
【図２１】図２１は、複数のデバイス間でのＳＡトークンの受け渡しを示すタイミング図である。
【図２２】図２２は、同一のデバイスを２つのデイジーチェーンに接続したシステム例を示すブロック図。
【符号の説明】
【００７６】
１  マスタ・デバイス
３−１〜Ｎ  スレーブ・デバイス・グループ
５  バス
３０−１−１〜Ｎ  スレーブ・デバイス
３０−２−１〜Ｎ  スレーブ・デバイス 
７−１〜Ｎ  デイジーチェーン接続線
１Ｂ  ＤＳＰ
３０−１−１Ｂ〜ＮＢ  スレーブ・デバイス
３０−２−１Ｂ〜ＮＢ  スレーブ・デバイス
ＤＣ１Ｂ  デイジーチェーン
５０Ｂ  バス導体
５２Ｂ  バス導体
６０  導体
６２  導体
７０  デバイスＩＤ付与回路
７００  デバイスＩＤ決定シーケンス開始制御部
７０１  時間測定部
７０２  デバイスＩＤ記憶部
７０３  トークン判別回路
７０４  下流側トークン生成回路
７０５  先頭デバイス判別回路
７０６  先頭トークン生成回路
７２０  時間スロット位置指示部
７２１  利用時間スロット指示部
７２２  割当時間スロット判別部
７２４  データ保持部
７２５  データ記憶部
７２６  時間スロット割当（ＳＡ）トークン生成部
７２７  源トークン生成部
７２６０  トークン伝播回路
７２７２  先頭トークン生成回路
【図１】
0004692599.tif 000002
【図２】
0004692599.tif 000003
【図３】
0004692599.tif 000004
【図４】
0004692599.tif 000005
【図５】
0004692599.tif 000006
【図６】
0004692599.tif 000007
【図７】
0004692599.tif 000008
【図８】
0004692599.tif 000009
【図９】
0004692599.tif 000010
【図１０】
0004692599.tif 000011
【図１１】
0004692599.tif 000012
【図１２】
0004692599.tif 000013
【図１３】
0004692599.tif 000014
【図１４】
0004692599.tif 000015
【図１５】
0004692599.tif 000016
【図１６】
0004692599.tif 000017
【図１７】
0004692599.tif 000018
【図１８】
0004692599.tif 000019
【図１９】
0004692599.tif 000020
【図２０】
0004692599.tif 000021
【図２１】
0004692599.tif 000022
【図２２】
0004692599.tif 000023