(57)【要約】【課題】  ＭＡＣデバイス等の機能回路ブロックを含むデータ処理システム及び設定方法に関し、設定データの再設定所要時間を短縮する。【解決手段】  メインプロセッサ１と、単一又は複数のＭＡＣデバイス３等の機能回路ブロックと、この機能回路ブロックの設定データを設定処理するデバイスコントローラ２とを含むデータ処理システム及び設定方法であって、デバイスコントローラ２に、ＭＡＣデバイス３等の機能回路ブロックに設定する設定データを保持する内部ＦＩＦＯ１０と、メインプロセッサ１からの指示により内部ＦＩＦＯ１０に保持した設定データを、ＭＡＣデバイス３等の機能回路ブロックに転送して設定する制御を行うシーケンサ８とを設け、内部ＦＩＦＯ１０に保持した設定データを読み出して、ＭＡＣデバイス３等の機能回路ブロックに対する再設定を行う。【選択図】        図１
2005339426.tif 000002
【特許請求の範囲】
【請求項１】
メインプロセッサと、単一又は複数の機能回路ブロックと、該機能回路ブロックの設定データを設定処理するデバイスコントローラとを含むデータ処理システムに於いて、
前記デバイスコントローラに、前記機能回路ブロックに設定する設定データを保持する内部ＦＩＦＯと、前記メインプロセッサからの指示により前記内部ＦＩＦＯに保持した設定データを前記機能回路ブロックに転送して設定する制御を行うシーケンサとを設けた
ことを特徴とするデータ処理システム。
【請求項２】
前記デバイスコントローラは、前記内部ＦＩＦＯに保持された設定データを前記メインプロセッサからの指示により展開して変更する為の内部ＲＡＭを備えたことを特徴とする請求項１記載のデータ処理システム。
【請求項３】
メインプロセッサと、単一又は複数の機能回路ブロックと、該機能回路ブロックの設定データを設定処理するデバイスコントローラとを含むデータ処理システムの前記設定データを前記機能回路ブロックに設定する設定方法に於いて、
前記メインプロセッサから前記デバイスコントローラを介して前記機能回路ブロックに設定データを設定すると共に、前記デバイスコントローラに設けた内部ＦＩＦＯに書き込んで保持する過程と、
前記内部ＦＩＦＯに保持した設定データを前記メインプロセッサからの指示により読み出して前記機能回路ブロックに再設定する過程とを含む
ことを特徴とする設定方法。
【請求項４】
前記内部ＦＩＦＯに保持された設定データを前記メインプロセッサからの指示により内部ＲＡＭに展開して、該設定データを変更し、該変更した設定データを前記内部ＦＩＦＯに書き込む過程を含むことを特徴とする請求項３記載の設定方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、設定データをメインプロセッサの制御により機能回路ブロックに設定処理するデータ処理システム及び設定方法に関する。
【背景技術】
【０００２】
メインプロセッサと各種の機能回路ブロックとを含み、機能回路ブロックにより各種の処理を実行させるデータ処理システムが知られており、単一或いは複数の機能回路ブロックに対して、メインプロセッサの制御により設定データの初期設定を行うものである。又メインプロセッサとその周辺回路とを集積回路化し、機能回路ブロックも集積回路化し、プリント基板上に搭載して、所望の機能を実現するデータ処理システムが比較的多く採用されている。
【０００３】
例えば、インターネットに接続するルータ等の装置は、周辺回路含めて集積回路化したメインプロセッサと、ＩＰパケットのルーティング制御を行う構成を集積回路化した機能回路ブロックと、この機能回路ブロックを制御する構成を集積回路化したデバイスコントローラとをプリント基板上に搭載し、メインプロセッサから各種の処理動作を行う為の設定データを、デバイスコントローラを介して各機能回路ブロックに初期設定することにより、ルーティング制御を行うことになる。
【０００４】
その場合に、何らかの障害発生により機能回路ブロックが制御処理を実行できなくなった時は、メインプロセッサは、ログ情報を収集した後、各機能回路ブロックのリセット処理を行い、再度設定データをメインプロセッサからデバイスコントローラを介して設定する処理を行うものである。従って、再設定処理が完了するまで、ＩＰパケットのルーティング処理が中止されることになる。
【０００５】
又命令とパラメータとからなるデータに対して、命令を一時的に保持する命令ＦＩＦＯ（Ｆｉｓｔ−Ｉｎ  Ｆｉｓｔ−Ｏｕｔ）を介して入力命令レジスタに現在実行する命令を保持させ、パラメータを一時的に保持するパラメータＦＩＦＯを介して、１命令分のパラメータを保持させるレジスタ群を含む構成のデータの入力装置が知られている(例えば、特許文献１参照)。
【０００６】
又プロセッサバスと、デバイスを接続するＳＣＳＩ（Ｓｍａｌｌ  Ｃｏｍｐｕｔｅｒ  Ｓｙｓｔｅｍ  Ｉｎｔｅｒｆａｃｅ）バスとの間に、データＦＩＦＯとコマンドＦＩＦＯとシーケンサとを含むコントローラが知られている(例えば、特許文献２参照)。
【特許文献１】特開平３−１４４７３１号公報
【特許文献２】特開平５−３５６６１号公報
【発明の開示】
【発明が解決しようとする課題】
【０００７】
機能回路ブロックの障害発生により、メインプロセッサからその機能回路ブロックに設定データを再設定することになるが、メインプロセッサからＰＣＩバス等を介して設定データを機能回路ブロックに設定する為には複数ステップを要するもので、その再設定が完了するまでの間は、所定の処理を実行できないことになる。例えば、ルータ等の通信装置に於いては、前述の再設定時には、設定処理完了まで通信制御を停止することになるから、サービス低下が大きい問題があった。
【０００８】
本発明は、機能回路ブロックに対する設定データの設定処理に要する時間を短縮して、サービス低下を回避することを目的とする。
【課題を解決するための手段】
【０００９】
本発明のデータ処理システムは、メインプロセッサと、単一又は複数の機能回路ブロックと、該機能回路ブロックの設定データを設定処理するデバイスコントローラとを含むデータ処理システムであって、デバイスコントローラに、ＭＡＣデバイス等の機能回路ブロックに設定する設定データを保持する内部ＦＩＦＯと、メインプロセッサからの指示により内部ＦＩＦＯに保持した設定データを、機能回路ブロックに転送して設定する制御を行うシーケンサとを設けた構成を有するものである。
【００１０】
又デバイスコントローラは、内部ＦＩＦＯに保持された設定データを、メインプロセッサからの指示により展開して変更する為の内部ＲＡＭを備えることができる。
【００１１】
又本発明の設定方法は、メインプロセッサと、単一又は複数の機能回路ブロックと、該機能回路ブロックの設定データを設定処理するデバイスコントローラとを含むデータ処理システムの前記設定データを前記機能回路ブロックに設定する設定方法であって、メインプロセッサからデバイスコントローラを介して、機能回路ブロックに設定データを設定すると共に、デバイスコントローラに設けた内部ＦＩＦＯに書き込んで保持する過程と、内部ＦＩＦＯに保持した設定データを、メインプロセッサからの指示により読み出して、機能回路ブロックに再設定する過程とを含むものである。
【００１２】
又内部ＦＩＦＯに保持された設定データを、メインプロセッサからの指示により内部ＲＡＭに展開して設定データを変更し、この変更した設定データを、内部ＦＩＦＯに書き込む過程を含むことができる。
【発明の効果】
【００１３】
ＭＡＣデバイス等の機能回路ブロックに設定する設定データを、内部ＦＩＦＯに保持しておき、機能回路ブロックの障害発生等により設定データの再設定処理を行う時に、内部ＦＩＦＯに保持していた設定データを読み出して、機能回路ブロックに設定することにより、メインプロセッサからの設定データをＰＣＩバスとデバイスコントローラとを介して再設定処理に要する時間より、ＰＣＩバスからの再設定処理の設定データの転送に要する時間を短縮することができる利点がある。又内部ＦＩＦＯは、他のメモリに比較してアドレス制御等の周辺回路が簡単化できる利点がある。
【発明を実施するための最良の形態】
【００１４】
本発明のデータ処理システムは、図１を参照すると、メインプロセッサ１と、単一又は複数のＭＡＣデバイス３等の機能回路ブロックと、この機能回路ブロックの設定データを設定処理するデバイスコントローラ２とを含むデータ処理システムであって、デバイスコントローラ２に、ＭＡＣデバイス３等の機能回路ブロックに設定する設定データを保持する内部ＦＩＦＯ１０と、メインプロセッサ１からの指示により内部ＦＩＦＯ１０に保持した設定データを、ＭＡＣデバイス３等の機能回路ブロックに転送して設定する制御を行うシーケンサ８とを設けた構成を有する。
【００１５】
本発明の設定方法は、メインプロセッサ１と、単一又は複数のＭＡＣデバイス３等の機能回路ブロックと、この機能回路ブロックの設定データを設定処理するデバイスコントローラ２とを含むデータ処理システムの設定データを、前記機能回路ブロックに設定する設定方法であって、メインプロセッサ１からデバイスコントローラ２を介して、ＭＡＣデバイス３等の機能回路ブロックに設定データを設定すると共に、デバイスコントローラ２に設けた内部ＦＩＦＯ１０に書き込んで保持する過程と、内部ＦＩＦＯ１０に保持した設定データを、メインプロセッサ１からの指示により読み出して、ＭＡＣデバイス３等の機能回路ブロックに再設定する過程とを含むものである。
【実施例１】
【００１６】
図１は、本発明の実施例１の説明図であり、１はメインプロセッサ（ＣＰＵ）、２はデバイスコントローラ、３は機能回路ブロックとしてのＭＡＣ（Ｍｅｄｉａ  Ａｃｃｅｓｓ  Ｃｏｎｔｒｏｌ）デバイス、４はＰＣＩバス、５はローカルバス、６はＰＣＩインタフェース（ＰＣＩ  Ｉ／Ｆ）、７はレジスタ（ＲＥＧ）、８はシーケンサ、９はＦＩＦＯインタフェース（ＦＩＦＯ  Ｉ／Ｆ）、１０は内部ＦＩＦＯを示す。
【００１７】
図１に於いては、メインプロセッサ１とデバイスコントローラ２とをＰＣＩバス４を介して接続し、このデバイスコントローラ２とＭＡＣデバイス３とをローカルバス５により接続して、データ処理システムを構成した場合を示し、デバイスコントローラ２は、ＰＣＩインタフェース６とレジスタ７とシーケンサ８とＦＩＦＯインタフェース９と内部ＦＩＦＯ１０とを含み、内部バスにより接続した構成を有し、又このデバイスコントローラ２は、（ＦＰＧＡ）として示すように、フィールド・プログラマブル・ゲート・アレイにより構成した場合を示しているが、他の構成、例えば、個別回路部品により、或いは、全体の機能部分を集積回路化により実現することも可能である。
【００１８】
又デバイスコントローラ２に設けた内部ＦＩＦＯ１０は、ランダムアクセスメモリに比較して、データの書き込み及び読み出しの為のアドレス制御等の制御構成が簡単化されるもので、この実施例に於いては、レジスタ７に設定されたＦＩＦＯ選択情報により、ＦＩＦＯインタフェース９を介して内部の複数のブロック領域が選択され、その選択されたブロック領域に対して、シーケンサ８のシーケンス処理により、設定データの書き込み及び読み出しが行われる。従って、レジスタ７は、メインプロセッサ１からの設定データ及びＦＩＦＯ選択情報等を一時的に保持するレジスタ群に相当する。又機能回路ブロックとしてのルーティング処理等を行うＭＡＣデバイス３は、集積回路化して、デバイスコントローラ２等と共にプリント基板上に搭載することもできる。又ＭＡＣデバイス３を複数設けることもできる。
【００１９】
システム立ち上げ時に、メインプロセッサ１からＭＡＣデバイス３に対する設定データの初期設定は、（１）〜（３）で示す順の処理で行われる。即ち、処理（１）は、メインプロセッサ１からＰＣＩバス４を介したＭＡＣデバイス３に対する設定データやアドレス等を含むアクセス要求を示し、デバイスコントローラ２のレジスタ７を介して、処理（２）のようにＭＡＣデバイス３に中継する。即ち、メインプロセッサ１から初期設定する為の設定データは、ＰＣＩバス４を介してデバイスコントローラ２のレジスタ７に一旦保持し、それからローカルバス５を介してＭＡＣデバイス３に転送されて設定される。
【００２０】
その初期設定過程に於いて、処理（３）として示すように、設定データを、レジスタ７からＦＩＦＯインタフェース９を介して内部ＦＩＦＯ１０に書き込む。その時の内部ＦＩＦＯ１０のブロック領域がレジスタ７を介して選択される。それによって、内部ＦＩＦＯ１０には、ＭＡＣデバイス３に対する設定データが保持されることになる。なお、内部ＦＩＦＯ１０に対する設定データの書き込み及び読み出しの制御は、既に知られている各種の手段により実行することができる。このように、メインプロセッサ１からレジスタ７を介した設定データが、ＭＡＣデバイス３に設定されると共に、内部ＦＩＦＯ１０に書き込まれることにより、初期設定処理は完了する。
【００２１】
図２は、再設定処理の説明図であり、処理（４），（５）の順序により再設定処理を実行するもので、前述の初期設定時に、メインプロセッサ１からの設定データをＭＡＣデバイス３に設定し、且つ内部ＦＩＦＯ１０に設定データを書き込んで、システム運用中に、ＭＡＣデバイス３に障害が発生した場合、そのＭＡＣデバイス３のリセット処理を行い、メインプロセッサ１は、再設定の為のＦＩＦＯロード指示（４）を行うことにより、デバイスコントローラ２のレジスタ７を介してシーケンサ８を起動する。それにより、内部ＦＩＦＯ１０に保持された設定データを、ローカルバス５を介してＭＡＣデバイス３に転送し（５）、ＭＡＣデバイス３に設定する。この場合、レジスタ７からのＦＩＦＯ選択情報に従って、ＦＩＦＯインタフェース９により内部ＦＩＦＯ１０のＭＡＣデバイス３対応のブロック領域が選択され、そのブロック領域に保持されたＭＡＣデバイス３に対する設定データを順次読み出して、ローカルバス５を介してＭＡＣデバイス３に転送して設定することにより、再設定処理が完了する。
【００２２】
従って、メインプロセッサ１からＰＣＩバス４とデバイスコントローラ２のレジスタ７とを介して、ＭＡＣデバイス３に対する再設定処理を行う場合に比較して、内部ＦＩＦＯ１０に保持させた設定データを順次読み出して、再設定処理を行うことにより、再設定処理時間を著しく短縮することができる。例えば、メインプロセッサ１からＰＣＩバス４を介してのアクセスが、３３ＭＨｚのクロック周波数で、３２ビット幅のＰＣＩバス４であると、設定データの１ステップ当り，４８０ｎｓｅｃを要することになり、設定コマンドが６７ステップの場合、設定完了までに３２．１６μｓｅｃを要することになる。これに対して、内部ＦＩＦＯ１０からのアクセスの場合、１ステップ当り２４０ｎｓｅｃで、設定コマンドが前述と同様に６７ステップの場合、設定完了までに１６．０８μｓｅｃを要することになる。即ち、内部ＦＩＦＯ１０を用いて再設定処理することにより、従来のメインプロセッサから直接的に再設定処理する場合に比較して、約半分の時間ですむことができる。
【００２３】
図３は、複数のＭＡＣデバイスを有するデータ処理システムの概要と、設定データの再設定処理とを説明する為のもので、図１及び図２と同一符号は同一部分を示し、３−１，３−２は機能回路ブロックとしてのＭＡＣデバイス、５−１，５−２はローカルバス、８−１，８−２はシーケンサを示す。シーケンサ８−１，８−２は、ＭＡＣデバイス３−１，３−２対応のものであり、又内部ＦＩＦＯ１０には、同一の設定データが保持されているか、又はＭＡＣデバイス３−１，３−２対応の設定データが、それぞれ異なるブロック領域に保持されている。このブロック領域は、レジスタ７からのＦＩＦＯ選択情報により選択される。
【００２４】
例えば、ＭＡＣデバイス３−１が，初期設定後に何らかの障害が発生すると、前述の場合と同様に、メインプロセッサ１は、ＦＩＦＯロード指示を行う。この時，ＭＡＣデバイス３−１を指定する。それにより、レジスタ７を介してシーケンサ８−１が起動され、又ＭＡＣデバイス３−１対応の設定データが保持されている内部ＦＩＦＯ１０のブロック領域が、ＦＩＦＯ選択情報によって選択され、そのブロック領域に保持された設定データがローカルバス５−１を介してＭＡＣデバイス３−１に転送されて設定される。この場合も前述のように、内部ＦＩＦＯ１０からの設定データによる再設定処理であるから、メインプロセッサ１からＰＣＩバス４を介して再設定する場合に比較して短時間で完了することができる。
【００２５】
図４は、保持している設定データの変更処理の説明図であり、図１及び図２と同一符号は同一部分を示し、又（６）〜（９）は処理の順序を示し、又１１はメモリインタフェース（ＲＡＭ  Ｉ／Ｆ）、１２は内部ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）を示す。内部ＲＡＭ１２は、内部ＦＩＦＯ１０とメモリインタフェース１１を介して設定データの転送を可能とし、且つＰＣＩインタフェース６とＰＣＩバス４とを介してメインプロセッサ１との間で設定データの転送を可能とする。
【００２６】
ＭＡＣデバイス３に設定した設定データを内部ＦＩＦＯ１０に保持しているが、この設定データを変更する場合、レジスタ７を介してＦＩＦＯ選択情報により内部ＦＩＦＯ１０のブロック領域を選択し（６）、そのブロック領域に保持している設定データを、メモリインタフェース１１を介して内部ＲＡＭ１２に展開する（７）。この内部ＲＡＭ１２に展開した設定データを、ＰＣＩインタフェース６を介してメインプロセッサ１により変更する(８)。この変更した設定データを、内部ＲＡＭ１２から内部ＦＩＦＯ１０に、メモリインタフェース１１を介して書き込む。そして、前述のように、シーケンサ８を起動して、変更した設定データを、内部ＦＩＦＯ１０からＭＡＣデバイス３に、ＦＩＦＯインタフェース９とローカルバス５とを介して転送して設定する。この場合、ＭＡＣデバイス３の設定データは、例えば、上書き処理されることになる。
【００２７】
図５は、デバイスコントローラの説明図であり、図４と同一符号は同一部分を示し、１３はデータインタフェース（ＤＡＴＡ  Ｉ／Ｆ）、１４はアドレスインタフェース（ＡＤＤ  Ｉ／Ｆ）、１５はトリステートのゲート回路を示す。又ＣＰＵは前述のメインプロセッサを示し、このメインプロセッサＣＰＵ等からのクロック信号ＣＬＫやリセット信号ＲＳＴが入力される。又内部ＦＩＦＯ１０は、ＦＩＦＯ．０〜ＦＩＦＯ．３のブロック領域を有する場合の例を示している。
【００２８】
このデバイスコントローラ２とＭＡＣデバイスとの間では、シーケンサ８から、デバイス選択信号ＸＣＳＢ、ＭＡＣデバイスへのリード指示信号ＸＲＤＢ、ライト指示信号ＸＷＲＢ、アドレスラッチ指示信号ＸＡＬＥが出力される。又データインタフェース１３とゲート回路１５を介してＭＡＣデバイスとの間で、１６ビット構成の設定データＭＡＣ_Ｄ［１５：０］が転送され、又アドレスインタフェース１４からＭＡＣデバイスの１５ビット構成のアクセスアドレスＭＡＣ_Ａ［１４：０］が転送されて、ライト指示の場合は、設定データＭＡＣ_Ｄ［１５：０］が、アクセスアドレスＭＡＣ_Ａ［１４：０］に従って書き込まれて設定される。
【００２９】
図６及び図７は、デバイスコントローラの内部信号説明図であり、図５に於けるデバイスコントローラ２の内部信号の信号略称と、その内容とを示すものである。なお、信号略称の説明の欄のＭＡＣは、デバイスを省略して示すものである。例えば、メインプロセッサＣＰＵからのＭＡＣアクセス開始指示信号ｍａｃ_ｒｅｑにより、レジスタ７からシーケンサ８に“１”の起動指示信号ｓｔａｒｔが入力され、又“１”のロード指示信号ｌｏａｄが入力されると、シーケンサ８からＭＡＣデバイスに、“０”のデバイス選択信号ＸＣＳＢと、ライト指示信号ＸＷＲＢと、アドレスラッチ指示信号ＸＡＬＥとが転送され、又シーケンサ８からゲート回路１５に、データ出力指示のデータイネーブル信号ＤＡＴＡ_ＯＥが加えられる。
【００３０】
それによって、ライトデータｍｗｄａｔａ［１５：０］が、データインタフェース１３とゲート回路１５とを介して、ＭＡＣデバイスに対する設定データＭＡＣ_Ｄ［１５：０］が転送され、初期設定時等のメインプロセッサからの設定データの設定時のアドレスｍａｄｄ［１４：０］又は再設定時の内部ＦＩＦＯ１０のアドレスに対応したアドレスｆａｄｄ［１４：０］が、アドレスインタフェース１４を介して、ＭＡＣデバイスのアクセスアドレスＭＡＣ_Ａ［１４：０］となり、そのアドレスに設定データが書き込まれる。
【００３１】
又レジスタ７から設定データｍｗｄａａ［１５：０］と、起動信号ｓｔａｒｔと、ロード指示信号ｌｏａｄと、ＦＩＦＯセレクト信号ｆｉｆｏ_ｓｅｌ［１：０］とにより、ＦＩＦＯインタフェース９を介して内部ＦＩＦＯ１０に、アクセスイネーブル信号ｆｉｆｏ_ｅｎと、ライトイネーブル信号ｆｉｆｏ_ｗｅと、ライトデータｆｉｆｏ_ｄｉｎ［３０：０］とを入力して、ＭＡＣデバイスに設定する設定データを、内部ＦＩＦＯ１０に書き込んで保持することができる。
【００３２】
又再設定時は、内部ＦＩＦＯ１０からのリードデータｆｉｆｏ_ｄｏｕｔ［３０：０］の中の１６ビット分が，ＦＩＦＯインタフェース９を介してデータｆｄａｔａ［１５：０］となり、データインタフェース１３を介して設定データＭＡＣ_ＤとしてＭＡＣデバイスに転送される。又リードデータｆｉｆｏ_ｄｏｕｔ［３０：０］の中の１５ビット分が，ＦＩＦＯインタフェース９を介してアドレスｆａｄｄ［１４：０］となり、アドレスインタフェース１４を介して、アクセスアドレスＭＡＣ_ＡとしてＭＡＣデバイスに転送される。その場合、内部ＦＩＦＯ１０から設定データを総て読み出した時に内部データ無しを示すエンプティ信号ｆｉｆｏ_ｅｍｐｔｙを出力し、再設定処理の終了を表示することができる。
【００３３】
又内部ＲＡＭ１２を用いて設定データを変更する場合は、図４に示す接続構成と多少相違させているが、内部ＲＡＭ１２は、メモリインタフェース１１とＦＩＦＯインタフェース９とを介して内部ＦＩＦＯ１０との間で設定データの転送を行う構成としている。又内部ＲＡＭ１２とメインプロセッサＣＰＵとの間は、ＰＣＩインタフェース６を介して設定データ等の転送を行う構成としている。従って、メインプロセッサＣＰＵの制御処理により、内部ＲＡＭ１２を用いて設定データの変更を行って、内部ＦＩＦＯ１０に、メモリインタフェース１１とＦＩＦＯインタフェース９とを介して書き込み、この内部ＦＩＦＯ１０からＭＡＣデバイスに、変更した設定データを、ＦＩＦＯインタフェース９とデータインタフェース１３とアドレスインタフェース１４とを介して転送して書き込むことにより、設定データの変更処理を行うことができる。この場合も、内部ＦＩＦＯ１２から変更した設定データをＭＡＣデバイスにロードするものであるから、メインプロセッサＣＰＵからＰＣＩバスを介して、変更した設定データをロードする場合に比較して所要時間を短縮することができる。
【００３４】
図８は、内部ＦＩＦＯ内デバイス設定データのフォーマット説明図であり、内部ＦＩＦＯには、１５ビット構成のアドレスＭＡＣ_Ａ［１４：０］と、１６ビット構成の設定データＭＡＣ_Ｄ［１５：０］との合計３１ビットの幅で、アドレス０〜２５５に格納した場合を示す。なお、内部ＦＩＦＯについてのフォーマットは、これに限定されるものでない。
【００３５】
図９は、ＭＡＣデバイスへのアクセス処理のフローチャートを示し、ＦＩＦＯは，前述の内部ＦＩＦＯ１０を示すもので、ロード指示信号ｌｏａｄの有無を判定し（Ａ１）、ロード指示でない場合は、リード要求信号ｍａｃ_ｒｅａｄか否かを判定し（Ａ２）、リード要求でない場合は、ライト要求信号ｍａｃ_ｗｒｉｔｅか否かを判定し（Ａ３）、ライト要求でもない場合は、処理を終了する。
【００３６】
又ロード指示有りの場合、内部ＦＩＦＯが空か否か、即ち、データが保持されているか否かを判定し（Ａ４）、空の場合は、設定データがないので処理を終了する。又空でない場合は、設定データが保持されているから、内部ＦＩＦＯから設定データを読み出して（Ａ５）、ＭＡＣデバイスに書き込む（Ａ６）。そして、ステップ（Ａ４）に移行し、内部ＦＩＦＯが空となるまで、内部ＦＩＦＯから設定データを読み出して、ＭＡＣデバイスに書き込む。そして、内部ＦＩＦＯが空となると、エンプティ信号ｆｉｆｏ_ｅｍｐｔｙを送出するから、保持していた設定データを読み出してＭＡＣデバイスに書き込む再設定処理が完了したことを示すので、この処理を終了する。なお、再設定処理後、内部ＦＩＦＯが空になるから、この内部ＦＩＦＯにのみ、メインプロセッサから再度設定データを書き込む処理を行っておき、次に再設定処理が必要になった時に、その設定データを読み出して、ＭＡＣデバイスに設定することもできる。
【００３７】
又リード要求の場合は、ＭＡＣデバイスからデータを読み出して（Ａ７）、前述のように、メインプロセッサに転送して、その処理を終了することになる。又ライト要求の場合は、ＭＡＣデバイスに対する設定データの書き込みと、内部ＦＩＦＯに対する設定データの書き込みとが行われ（Ａ８）、その処理を終了することになる。即ち、前述の初期設定の処理に相当するものである。
【００３８】
図１０は、デバイスコントローラのライトタイミングシーケンスチャートを示し、図５を参照すると、ＰＣＩインタフェース（ＰＣＩ  Ｉ／Ｆ）６と、レジスタ（ＲＥＧ）７と、シーケンサ（ＳＥＱ）８と、データインタフェース（ＤＡＴＡ  Ｉ／Ｆ）１４と、ＦＩＦＯインタフェース（ＦＩＦＯ  Ｉ／Ｆ）９と、ＭＡＣデバイスとについて示す。又ＣＬＫはクロック信号であり、デバイスコントローラは、このクロック信号ＣＬＫに同期して各部が動作する。
【００３９】
又ＰＣＩインタフェースＰＣＩ  Ｉ／Ｆのｍａｃ_ｒｅｑはアクセス開始指示信号、ｍａｃ_ｗｒｉｔｅはライト信号、ｍａｃ_ａｃｋはメインプロセッサへ送出する為のアクセス完了信号、ｍａｃ_ａｄｒ［１４：０］はＭＡＣデバイスのアドレス信号、ｍａｃ_ｗｄａｔａ［１５：０］はＭＡＣデバイスへのライトデータ（設定データ）を示す。又レジスタＲＥＧのｓｔａｒｔはシーケンサＳＥＱの起動信号であり、シーケンサＳＥＱのＭＡＣ_ＳＴＡＴＥは、状態遷移を示し、起動信号ｓｔａｒｔにより、ＩＤＬＥからＷ１，Ｗ２，・・・Ｗ６，ＩＤＬＥの状態に遷移する場合を示す。
【００４０】
又データインタフェースＤＡＴＡ  Ｉ／Ｆのｄａｔａ_ｏｅはＭＡＣデバイスとの間のデータ出力（“１”）又はデータ入力（“０”）イネーブル信号を示し、図５に示すように、シーケンサ８からゲート回路１５に加えられる。又ＦＩＦＯインタフェースＦＩＦＯ  Ｉ／Ｆのｆｉｆｏ_ｅｎは内部ＦＩＦＯへのアクセスイネーブル信号、ｆｉｆｏ_ｗｅはライトイネーブル信号、ｆｉｆｏ_ｄｉｎ［３０：０］は内部ＦＩＦＯへのライトデータ（設定データ）を示す。又ＭＡＣデバイスに対するＸＭＡＣ_ＣＳＢはＭＡＣデバイスに対する選択信号で、“０”でＭＡＣデバイスを選択し、“１”で他のデバイスを選択する信号、ＸＭＡＣ_ＲＤＢはリード指示信号、ＸＭＡＣ_ＷＲＢは“０”でライトアクセスを示すライト指示信号、ＸＭＡＣ_ＡＬＥは“０”でＭＡＣデバイスに対するアドレスラッチ信号、ＭＡＣ_Ａ［１４：０］はアドレス信号、ＭＡＣ_Ｄ［１５：０］はデータ（設定データ）を示す。
【００４１】
従って、メインプロセッサからの指示によるＰＣＩインタフェースＰＣＩ  Ｉ／Ｆからのアクセス指示信号ｍａｃ_ｒｅｑと、ライト信号ｍａｃ_ｗｒｉｔｅと、アドレス信号ｍａｃ_ａｄｒ［１４：０］と、ライトデータ（設定データ）ｍａｃ_ｗｄａｔａ［１５：０］とにより、ＭＡＣデバイスに設定データが書き込まれると共に、内部ＦＩＦＯにも書き込まれる。即ち、前述の初期設定の処理が行われる。
【００４２】
図１１は、内部ＦＩＦＯのロードタイミングシーケンスチャートを示し、信号の名称は、図１０と同様であり、レジスタＲＥＧのｌｏａｄはＦＩＦＯロード指示信号、ＦＩＦＯインタフェースＦＩＦＯ  Ｉ／Ｆのｆｉｆｏ_ｄｏｕｔ［３０：０］は、内部ＦＩＦＯからのリードデータ、ｆｉｆｏ_ｅｍｐｔｙは内部ＦＩＦＯに保持したデータを読み出して、保持データがなくなったことを示すエンプティ信号を示す。
【００４３】
レジスタＲＥＧからのロード指示信号ｌｏａｄにより、内部ＦＩＦＯへのアクセスイネーブル信号ｆｉｆｏ_ｅｎが“１”となり、内部ＦＩＦＯからのデータｆｉｆｏ_ｄｏｕｔ［３０：０］がＭＡＣデバイスに対するアドレス信号ＭＡＣ_Ａ［１４：０］及びデータ（設定データ）ＭＡＣ_Ｄ［１５：０］となり、ＭＡＣデバイスに設定される。即ち、再設定処理が行われる。
【００４４】
図１２は、デバイスコントローラの状態遷移説明図であり、アイドルＩＤＬＥ状態から、Ｒ１〜Ｒ６又はＷ１〜Ｗ６の状態に遷移する場合を示し、その場合の状態遷移の条件を図１３に示す。例えば、現在の状態がＩＤＬＥの時に，ＭＡＣデバイスに対するリード指示信号ｍａｃ_ｒｅａｄが“１”、且つアクセス開始指示信号ｍａｃ_ｒｅｑが“１”の条件で、次のＲ１の状態に遷移する。この状態Ｒ１から順次状態Ｒ２〜Ｒ６に遷移し、アクセス開始指示信号ｍａｃ_ｒｅｑが“０”となると、ＩＤＬＥの状態に遷移する。又信号の次の状態のＣＳ／ＲＤ／ＷＲ／ＡＬＥ／ＤＯＥは、デバイス選択信号、リード指示信号、ライト指示信号、アドレスラッチ指示信号、データの出力及び入力のイネーブル信号を示し、＝０１１１０等は、それぞれの信号の“０”，“１”を示す。
【００４５】
又現在の状態がＩＤＬＥの時に、ＭＡＣデバイスに対するライト指示信号ｍａｃ_ｗｒｉｔｅが“１”、且つアクセス開始指示信号ｍａｃ_ｒｅｑが“１”の条件、又はロード指示信号ｌｏａｄが“１”、且つ内部ＦＩＦＯのエンプティ信号ｆｉｆｏ_ｅｍｐｔｙが“０”の場合に、次のＷ１の状態に遷移する。この状態Ｗ１から順次状態Ｗ２〜Ｗ５に遷移し、エンプティ信号ｆｉｆｏ_ｅｍｐｔｙが“１”（内部ＦＩＦＯが空）の時に、状態Ｗ６に遷移し、“０”（内部ＦＩＦＯにデータ有り）の時に、状態Ｗ２に遷移する。又状態Ｗ６の時に、アクセス開始指示信号ｍａｃ_ｒｅｑが“０”となると、ＩＤＬＥの状態に遷移する。この状態Ｗ１〜Ｗ６の遷移について、図１０及び図１１のシーケンサＳＥＱのＭＡＣ_ＳＴＡＴＥに例示している。
【図面の簡単な説明】
【００４６】
【図１】本発明の実施例の説明図である。
【図２】再設定処理の説明図である。
【図３】複数のＭＡＣデバイスの再設定処理の説明図である。
【図４】設定データの変更処理の説明図である。
【図５】デバイスコントローラの説明図である。
【図６】デバイスコントローラの内部信号説明図である。
【図７】デバイスコントローラの内部信号説明図である。
【図８】内部ＦＩＦＯ内デバイス設定データのフォーマット説明図である。
【図９】ＭＡＣデバイスへのアクセス処理のフローチャートである。
【図１０】デバイスコントローラのライトタイミングシーケンスチャートである。
【図１１】内部ＦＩＦＯのロードタイミングシーケンスチャートである。
【図１２】デバイスコントローラの状態遷移説明図である。
【図１３】デバイスコントローラの状態遷移条件説明図である。
【符号の説明】
【００４７】
１  メインプロセッサ（ＣＰＵ）
２  デバイスコントローラ
３  ＭＡＣデバイス
４  ＰＣＩバス
５  ローカルバス
６  ＰＣＩインタフェース（ＰＣＩ  Ｉ／Ｆ）
７  レジスタ（ＲＥＧ）
８  シーケンサ
９  ＦＩＦＯインタフェース（ＦＩＦＯ  Ｉ／Ｆ）
１０  内部ＦＩＦＯ
【図１】
2005339426.tif 000003
【図２】
2005339426.tif 000004
【図３】
2005339426.tif 000005
【図４】
2005339426.tif 000006
【図５】
2005339426.tif 000007
【図６】
2005339426.tif 000008
【図７】
2005339426.tif 000009
【図８】
2005339426.tif 000010
【図９】
2005339426.tif 000011
【図１０】
2005339426.tif 000012
【図１１】
2005339426.tif 000013
【図１２】
2005339426.tif 000014
【図１３】
2005339426.tif 000015