(57)【要約】【課題】オンチップのインタフェースコントローラと外部との間のデータ転送時間を短縮する。【解決手段】半導体データ処理装置は、半導体チップに、中央処理装置（３）と、インタフェースコントローラ（１５）と、バスコントローラ（９）とを有する。インタフェースコントローラは、インタフェース制御部（３１）、ＦＩＦＯ部（３２、及び転送制御部（３３）を有する。インタフェース制御部は、ＦＩＦＯ部のデータを前記半導体チップの外部に出力し、前記半導体チップの外部から入力したデータをＦＩＦＯ部に入力する。転送制御部は、ＦＩＦＯ部が保有するデータを転送先アドレスを指定して転送する制御と、転送元アドレスを指定してＦＩＦＯ部にデータを入力する制御とを行なう。前記転送制御部による転送制御には前記データ転送制御装置による制御は介在されない。【選択図】　　　　図１
2004118252.tif 000002
【特許請求の範囲】
【請求項１】
半導体チップに、中央処理装置と、前記半導体チップの外部とデータの入出力を行なうインタフェースコントローラと、外部バスに接続可能なバスコントローラとを有し、
前記インタフェースコントローラは、インタフェース制御部、ＦＩＦＯ部、及び転送制御部を有し、
前記インタフェース制御部は、ＦＩＦＯ部のデータを前記半導体チップの外部に出力し、前記半導体チップの外部から入力したデータをＦＩＦＯ部に入力し、
前記転送制御部は、ＦＩＦＯ部が保有するデータを転送先アドレスを指定して転送する制御と、転送元アドレスを指定してＦＩＦＯ部にデータを入力する制御とを行なう半導体データ処理装置。
【請求項２】
前記転送制御部は、前記ＦＩＦＯ部からデータを読み出すのに並行して、そのデータを格納する転送先アドレスを指定する請求項１記載の半導体データ処理装置。
【請求項３】
前記転送制御部は、指定された転送元アドレスからデータを読み出すのに並行して、前記ＦＩＦＯ部にデータを入力させる請求項１記載の半導体データ処理装置。
【請求項４】
前記インタフェースコントローラは、ＵＳＢインタフェースコントローラである請求項１乃至３の何れか１項記載の半導体データ処理装置。
【請求項５】
半導体チップに、中央処理装置と、前記半導体チップの外部とデータの入出力を行なうインタフェースコントローラと、前記インタフェースコントローラ用のデータ転送制御装置と、外部バスに接続可能なバスコントローラと、前記バスコントローラを介して外部バスとの間のデータ転送を制御可能な汎用のデータ転送制御装置と、を有し、
前記インタフェースコントローラは、インタフェース制御部、及びＦＩＦＯ部を有し、
前記インタフェース制御部は、ＦＩＦＯ部のデータを前記半導体チップの外部に出力し、前記半導体チップの外部から入力したデータをＦＩＦＯ部に入力し、
前記インタフェースコントローラ用のデータ転送制御装置は、ＦＩＦＯ部が保有するデータを転送先アドレスを指定して転送する制御と、転送元アドレスを指定してＦＩＦＯ部にデータを入力する制御とを行なう半導体データ処理装置。
【請求項６】
前記インタフェースコントローラ用のデータ転送制御装置は、前記ＦＩＦＯ部からデータを読み出すのに並行して、そのデータを格納する転送先アドレスを指定する請求項５記載の半導体データ処理装置。
【請求項７】
前記インタフェースコントローラ用のデータ転送制御装置は、指定された転送元アドレスからデータを読み出すのに並行して、前記ＦＩＦＯ部にデータを入力させる請求項５記載の半導体データ処理装置。
【請求項８】
半導体チップに、中央処理装置と、前記半導体チップの外部とデータの入出力を行なうインタフェースコントローラと、外部バスに接続可能なバスコントローラと、前記バスコントローラを介して前記外部バスとの間のデータ転送を制御可能なデータ転送制御装置と、ＲＡＭとを有し、
前記インタフェースコントローラは、インタフェース制御部及び転送制御部を有し、
前記インタフェース制御部は、前記ＲＡＭの所定領域に格納されたデータを前記半導体チップの外部に出力し、前記半導体チップの外部から入力したデータを前記ＲＡＭの所定領域に入力し、
前記転送制御部は、前記ＲＡＭの所定領域に保有されるデータを転送先アドレスを指定して転送する制御と、転送元アドレスを指定して前記ＲＡＭの所定領域にデータを入力する制御とを行なう半導体データ処理装置。
【請求項９】
前記転送制御部は、前記ＲＡＭの所定領域をＦＩＦＯ形式でアクセスするためのアドレスを生成する第１アドレス生成部と、前記バスコントローラを介して外部バス経由でアクセスするためのアドレスを生成する第２アドレス生成部とを別々に有する請求項８記載の半導体データ処理装置。
【請求項１０】
前記転送制御部は、転送サイクルの前半では前記第１アドレス生成部で指定されたアドレスからデータを読み出し、転送サイクルの後半では前記第２アドレス生成部で指定されたアドレスにデータを書き込む請求項９記載の半導体データ処理装置。
【請求項１１】
ＣＰＵと、
ＵＳＢコントローラと、
ＤＭＡコントローラと、
前記ＣＰＵ、前記ＵＳＢコントローラ及び前記ＤＭＡコントローラに結合された内部バスと、を有し、
前記ＵＳＢコントローラは、ＦＩＦＯバッファと、前記ＦＩＦＯバッファに格納されたデータの転送制御を実行可能なデータ転送制御装置を含むことを特徴とする半導体基板上に形成されたデータ処理装置。
【請求項１２】
前記データ転送制御装置は、前記ＦＩＦＯバッファのアドレス指定と前記データ処理装置に結合されるべき外部装置のアドレス指定とを指定可能なアドレス生成機能を有する請求項１１記載のデータ処理装置。
【請求項１３】
ＣＰＵと、
ＵＳＢコントローラと、
ＤＭＡコントローラと、
ＲＡＭと、
前記ＣＰＵ、前記ＵＳＢコントローラ、前記ＤＭＡコントローラ及び前記ＲＡＭに結合された内部バスと、を有し、
前記ＵＳＢコントローラは、前記ＲＡＭに格納されたデータの転送制御を実行可能なデータ転送制御装置を含むことを特徴とする半導体基板上に形成されたデータ処理装置。
【請求項１４】
前記データ転送制御装置は、前記ＲＡＭのアドレス指定と前記データ処理装置に結合されるべき外部装置のアドレス指定とを指定可能なアドレス生成機能を有する請求項１３記載のデータ処理装置。
【請求項１５】
半導体チップ上のデータ処理装置であって、
前記データ処理装置に結合されるべき汎用外部バスを介して、前記汎用外部バスに結合されるべき外部装置とデータ転送を実行可能な汎用データ転送制御部と、
前記データ処理装置に結合されるべき所定仕様の所定外部バスを介して前記データ処理装置の外部とデータ転送を実行可能な所定インタフェースのデータ転送制御部とを有し、
前記所定インタフェースのデータ転送制御部は、転送バッファのアドレス指定と前記外部装置のアドレス指定とを指定可能なアドレス指定部を有することを特徴とするデータ処理装置。
【請求項１６】
前記転送バッファは、前記所定インタフェースのデータ転送制御部に設けられる請求項１５記載のデータ処理装置。
【請求項１７】
前記データ処理装置は、さらに、ＲＡＭを有し、
前記転送バッファは、前記ＲＡＭの一部の領域とされる請求項１５記載のデータ処理装置。
【請求項１８】
前記ＲＡＭは、前記汎用データ転送制御部のための転送バッファとされる領域をさらに含む請求項１７記載のデータ処理装置。
【請求項１９】
前記アドレス指定部は、転送サイクルの前半では指定されたアドレスからデータを読み出し、転送サイクルの後半で指定されたアドレスにデータを書き込むことを特徴とする請求項１５記載のデータ処理装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、外部とデータの入出力を行なうインタフェースコントローラを有する半導体データ処理装置に関し、例えばＵＳＢ（Ｕｎｉｖｅｒｓａｌ　Ｓｅｒｉａｌ　Ｂｕｓ）インタフェースコントローラを内蔵するマイクロコンピュータに適用して有効な技術に関する。
【０００２】
【従来の技術】
前記特許文献１にはＤＭＡ（ダイレクト・メモリ・アクセス）コントローラを設けたＵＳＢ周辺マイクロコントローラが記載される。特許文献２乃至７にはＤＭＡコントローラとシリアル／パラレル変換回路を設けたシリアルデータコントローラについて記載される。特許文献８には通信コントローラ内にＳＣＩ（シリアル・コミュニケーション・インタフェース）コントローラとＤＭＡコントローラを設けた通信制御システムについて記載が有る。
【０００３】
特許文献８には、デュアルアドレスモードを有するデータ転送コントローラについて記載がある。これに記載されたデータ転送コントローラは、ＦＩＦＯバッファを有する。ＦＩＦＯバッファは複段のバッファを有するから、デュアルアドレスモードにおいて、バッファ段数を上限として、転送元アドレスから連続してデータを読み出してＦＩＦＯに蓄え、蓄えたデータを連続的に転送先アドレスにライトすることができる。デュアルアドレスモードにおいて読み出しと書き込みを交互に行わなくてもよい。したがって、ＳＤＲＡＭ（シンクロナスＤＲＡＭ）に代表されるようにロウアドレス共通のメモリセルをカラムアドレスを順番に切換えて連続アクセスするバーストアクセスのように連続的なデータ入出力動作が可能なデバイスに対するデータ転送効率を向上させることができる。
【０００４】
【特許文献１】
特開平１０−３２６２５１号公報
【特許文献２】
特開平４−１６５５５１号公報
【特許文献３】
特開平４−１６８５５５号公報
【特許文献４】
特開平４−３５０７５２号公報
【特許文献５】
特開平４−２５５０５４号公報
【特許文献６】
特開平４−２２５４５５号公報
【特許文献７】
特開平５−２８９９７９号公報
【特許文献８】
特開２００１−１５４９７７号公報
【０００５】
【発明が解決しようとする課題】
本発明者はＵＳＢなどのインタフェースコントローラについて検討した。インタフェースコントローラには送受信データを一時的に蓄えるバッファとしてＦＩＦＯバッファを備えるものが有る。ＦＩＦＯバッファとメモリとの間のデータ転送はＤＭＡコントローラにより行なうことができる。ＤＭＡコントローラによるデータ転送効率を上げるのに特許文献８のようなＦＩＦＯバッファを有する構成を採用すればよい。そのようなインタフェースコントローラとＤＭＡコントローラを採用してインタフェースコントローラからメモリへ受信データを転送する場合、ＤＭＡコントローラはインタフェースコントローラのＦＩＦＯバッファから受信データを所定単位で連続的にバスに出力させ、出力されたデータをＤＭＡコントローラのＦＩＦＯバッファに順次保持し、保持したデータを順次ＤＭＡコントローラのＦＩＦＯバッファから出力すると共に転送先メモリアドレスを出力してメモリへの書き込みを制御する。
【０００６】
しかしながら、その場合にはインタフェースコントローラのＦＩＦＯバッファからＤＭＡコントローラのＦＩＦＯバッファにデータを移動することが必要になり、処理が直列的となる。転送方向が逆の場合も同様であり、転送すべきデータを転送元から一旦ＤＭＡコントローラのＦＩＦＯバッファに移してからインタフェースコントローラに与えることになる。これより明らかな如く、連続的なデータの転送効率を向上させるためにＤＭＡコントローラがＦＩＦＯバッファを備えても、更に転送効率を向上させる改良の余地のあることが本発明者によって明らかにされた。
【０００７】
本発明の目的は、オンチップのインタフェースコントローラと外部との間のデータ転送時間を短縮することができる半導体データ処理装置を提供することにある。
【０００８】
本発明の前記並びにその他の目的と新規な特徴は本明細書の記述及び添付図面から明らかになるであろう。
【０００９】
【課題を解決するための手段】
本願において開示される発明のうち代表的なものの概要を簡単に説明すれば下記の通りである。
【００１０】
〔１〕半導体データ処理装置は、半導体チップに、中央処理装置と、前記半導体チップの外部とデータの入出力を行なうインタフェースコントローラと、外部バスに接続可能なバスコントローラとを有する。前記インタフェースコントローラは、インタフェース制御部、ＦＩＦＯ部、及び転送制御部を有する。前記インタフェース制御部は、ＦＩＦＯ部のデータを前記半導体チップの外部に出力し、前記半導体チップの外部から入力したデータをＦＩＦＯ部に入力する。前記転送制御部は、ＦＩＦＯ部が保有するデータを転送先アドレスを指定して転送する制御と、転送元アドレスを指定してＦＩＦＯ部にデータを入力する制御とを行なう。前記転送制御部による転送制御には汎用のデータ転送制御装置による制御は介在されない。
【００１１】
上記手段によれば、ＦＩＦＯ部はインタフェース制御部と転送制御部が共有する。要するに、転送元と転送先の間に介在される汎用ＤＭＡコントローラのバッファを、一方の転送元又は転送先とされるインタフェースコントローラのＦＩＦＯバッファと共通化し、あたかも転送先から転送元に直接データ転送を行なうことが可能にされている。これはＤＭＡコントローラを単にインタフェースコントローラに専用化しただけではない。ＦＩＦＯ部はインタフェース制御部のバッファも兼ね、それ故に、単位アクセスサイクルで転送元からのリードと転送先へのライトを行なうことが可能になる。これはＤＭＡコントローラによる単なるシングルアドレシングモードとも異なる。転送先アドレスを指定しながら転送すべきデータをＦＩＦＯ部から連続的に出力し、且つ、転送元アドレスを指定しながら転送すべきデータをＦＩＦＯ部に連続的に入力することができる。以上より、オンチップのインタフェースコントローラと外部との間のデータ転送時間を短縮することができる。
【００１２】
本発明の具体的な態様として、前記転送制御部は、前記ＦＩＦＯ部からデータを読み出すのに並行して、そのデータを格納する転送先アドレスを指定する。また、別の態様として、前記転送制御部は、指定された転送元アドレスからデータを読み出すのに並行して、前記ＦＩＦＯ部にデータを入力させる。
【００１３】
前記インタフェースコントローラは、例えばＵＳＢインタフェースコントローラである。
【００１４】
〔２〕別の観点による半導体データ処理装置は、上記半導体データ処理装置に対しインタフェースコントローラの概念から転送制御部を除き、これに代えて、前記インタフェースコントローラ用のデータ転送制御装置を採用する。前記インタフェースコントローラ用のデータ転送制御装置は、ＦＩＦＯ部が保有するデータを転送先アドレスを指定して転送する制御と、転送元アドレスを指定してＦＩＦＯ部にデータを入力する制御とを行なう。この制御の汎用のデータ転送制御装置は介在されない。
【００１５】
具体的な態様として、前記インタフェースコントローラ用のデータ転送制御装置は、前記ＦＩＦＯ部からデータを読み出すのに並行して、そのデータを格納する転送先アドレスを指定する。別の態様として、前記インタフェースコントローラ用のデータ転送制御装置は、指定された転送元アドレスからデータを読み出すのに並行して、前記ＦＩＦＯ部にデータを入力させる。
【００１６】
〔３〕別の観点による半導体データ処理装置は、上記半導体データ処理装置に対しインタフェースコントローラの概念からＦＩＦＯ部を除き、これに代えて、オンチップＲＡＭの一部の領域をＦＩＦＯバッファに利用する。このとき、前記インタフェース制御部は、前記ＲＡＭの所定領域に格納されたデータを前記半導体チップの外部に所定のプロトコルで出力し、前記半導体チップの外部から所定のプロトコルで入力したデータを前記ＲＡＭの所定領域に入力する。前記転送制御部は、前記ＲＡＭの所定領域に保有されるデータを転送先アドレスを指定して転送する制御と、転送元アドレスを指定して前記ＲＡＭの所定領域にデータを入力する制御とを行なう。
【００１７】
オンチップＲＡＭをＦＩＦＯバッファに利用することにより、ＦＩＦＯ部に比べバッファ段数の上限に対する制限が緩和される。
【００１８】
具体的な態様として、前記転送制御部は、前記ＲＡＭの所定領域をＦＩＦＯ形式でアクセスするためのアドレスを生成する第１アドレス生成部と、前記バスコントローラを介して外部バス経由でアクセスするためのアドレスを生成する第２アドレス生成部とを別々に有する。このとき、前記転送制御部は、転送サイクルの前半では前記第１アドレス生成部で指定されたアドレスからデータを読み出し、転送サイクルの後半では前記第２アドレス生成部で指定されたアドレスにデータを書き込む。
【００１９】
〔４〕本発明の更に別の観点によるデータ処理装置は、ＣＰＵと、ＵＳＢコントローラと、ＤＭＡコントローラと、前記ＣＰＵ、前記ＵＳＢコントローラ及び前記ＤＭＡコントローラに結合された内部バスと、を有し、前記ＵＳＢコントローラは、ＦＩＦＯバッファと、前記ＦＩＦＯバッファに格納されたデータの転送制御を実行可能なデータ転送制御装置を含む。例えば前記データ転送制御装置は、前記ＦＩＦＯバッファのアドレス指定と前記データ処理装置に結合されるべき外部装置のアドレス指定とを指定可能なアドレス生成機能を有する。
【００２０】
更に別の態様によるデータ処理装置は、ＣＰＵと、ＵＳＢコントローラと、ＤＭＡコントローラと、ＲＡＭと、前記ＣＰＵ、前記ＵＳＢコントローラ、前記ＤＭＡコントローラ及び前記ＲＡＭに結合された内部バスと、を有し、前記ＵＳＢコントローラは、前記ＲＡＭに格納されたデータの転送制御を実行可能なデータ転送制御装置を含む。例えば前記データ転送制御装置は、前記ＲＡＭのアドレス指定と前記データ処理装置に結合されるべき外部装置のアドレス指定とを指定可能なアドレス生成機能を有する。
【００２１】
更に別の態様によるデータ処理装置は、半導体チップ上のデータ処理装置であって、前記データ処理装置に結合されるべき汎用外部バスを介して、前記汎用外部バスに結合されるべき外部装置とデータ転送を実行可能な汎用データ転送制御部と、前記データ処理装置に結合されるべき所定仕様の所定外部バスを介して前記データ処理装置の外部とデータ転送を実行可能な所定インタフェースのデータ転送制御部とを有し、前記所定インタフェースのデータ転送制御部は、転送バッファのアドレス指定と前記外部装置のアドレス指定とを指定可能なアドレス指定部を有する。前記転送バッファは、例えば前記所定インタフェースのデータ転送制御部に設けられる。前記データ処理装置は、さらに、ＲＡＭを有し、前記転送バッファは、前記ＲＡＭの一部の領域とされてよい。前記ＲＡＭは、例えば前記汎用データ転送制御部のための転送バッファとされる領域をさらに含む。前記アドレス指定部は、例えば転送サイクルの前半では指定されたアドレスからデータを読み出し、転送サイクルの後半で指定されたアドレスにデータを書き込む。
【００２２】
【発明の実施の形態】
図２には半導体データ処理装置の一例に係るデータプロセッサ１の全体が概略的に示される。同図に示されるデータプロセッサ１は、例えばＣＭＯＳ集積回路製造技術により単結晶シリコンのような１個の半導体基板（半導体チップ）に形成される。特に制限されないが、データプロセッサ１はＰＣ（パーソナルコンピュータ）等のコンピュータシステムにおける周辺機器（例えばプリンタやスキャナ等）に組み込まれてこれを制御する。
【００２３】
データプロセッサ１は、内部バス２に接続された中央処理装置（ＣＰＵ）３、データトランスファコントローラ（ＤＴＣ）４、汎用データ転送制御部とされるデータ転送制御装置（ＤＭＡＣ）５、ＣＰＵ３の処理プログラムなどを格納するプログラムメモリであるリードオンリメモリ（ＲＯＭ）７、ＣＰＵ３の作業領域並びにデータの一時記憶に利用されるランダムアクセスメモリ（ＲＡＭ）６、除算器８、ダイナミックシフトユニット１１、バスコントローラ９、及び所定インタフェースのデータ転送制御部とされるＵＳＢインタフェースコントローラ１５を備える。
【００２４】
前記内部バス２はバスコントローラ９を介して周辺バス１２にインタフェースされ、周辺バス１２には、周辺回路として、前記割込みコントローラ１３、ウォッチドッグタイマ（ＷＤＴ）１４、ＵＳＢインタフェースコントローラ１５、入出力ポート（ＰＲＴ）１６ａ〜１６ｎ、及びタイマカウンタ（ＴＭＲ）やシリアルコミュニケーションインタフェースコントローラ（ＳＣＩ）等のその他の周辺回路１７が接続される。データプロセッサ１はその他にクロック発生回路（ＣＰＧ）２０及びＰＬＬ回路等２１を有する。前記ＵＳＢインタフェースコントローラ１５は、ＵＳＢホストとの間で所定のプロトコルにしたがったシリアル・インタフェース制御機能を有し、更に、それ専用のＤＭＡ転送制御機能が付加されている。言い換えるならば、前記ＵＳＢインタフェースコントローラ１５は、ＵＳＢホストと間において、ユニバーサル・シリアル・バス（ＵＳＢ）の様な所定インタフェース仕様の所定外部バスを介してデータ転送実行する機能を有する。
【００２５】
前記内部バス２及び周辺バス１２は夫々、データバス、アドレスバス及びコントロールバス（制御信号バス）を含んでいる。前記周辺バス２は入出力ポート１６ａ〜１６ｃを介して外部バス２５とインタフェースされ、内部バス２はバスコントローラ９を介して周辺バス１２、更には前記入出力ポート１６ａ〜１６ｃを介して前記外部バス２５とインタフェース可能にされる。その他の入出力ポート１６ｄ〜１６ｎは周辺回路のための外部インタフェースバッファ等として機能される。
【００２６】
データプロセッサ１においてバスマスタモジュールは、前記ＣＰＵ３、ＤＴＣ４、ＤＭＡＣ５及びＵＳＢインタフェースコントローラ１５である。前記ＣＰＵ３は、例えばＲＯＭ５から命令をフェッチし、取り込んだ命令を解読する命令制御部と、命令制御部による命令解読結果に従って汎用レジスタや算術論理演算器などを用いて演算処理を行なう実行部とを有する。ＤＭＡＣ５はＣＰＵ３により内部バス２を介してデータ転送条件が初期設定され、内蔵周辺回路や外部からのデータ転送要求に応答して、データプロセッサ１の内部で、或はデータプロセッサ１の内部と外部との間のデータ転送を制御する。ＤＴＣ４は内蔵周辺回路や外部からのデータ転送要求に応答して、データプロセッサ１の内部で、或はデータプロセッサ１の内部と外部との間のデータ転送を制御する。データ転送制御条件はＲＡＭ６などに格納されたポインタ構造の転送制御データを参照して取得する。前記ＵＳＢインタフェースコントローラ１５は、特に制限されないが、ＦＩＦＯ部を有し、ＦＩＦＯ部とデータプロセッサ１の外部との間の専用のＤＭＡ転送制御機能を有する。データ転送制御条件はＣＰＵ３により内部バス２を介して設定される。前記ＵＳＢインタフェースコントローラ１５のＤＭＡ転送制御機能による転送元及び転送先を指定する為のアドレス信号は内部バス２及びバスコントローラ９を経由して外部バス２５に伝達される。
【００２７】
前記データプロセッサ１にリセット信号が与えられると、ＣＰＵ３等のオンチップ回路モジュールはリセット状態とされる。このリセット信号によるリセット状態が解除されると、ＣＰＵ３は所定のスタートアドレスから命令をリードし、プログラムの実行を開始し、それに従って、例えば、ＲＡＭ６からデータをフェッチし、フェッチしたデータの演算処理を行い、処理結果に基づいて、ＵＳＢインタフェースコントローラ１５等を使用して外部との間のデータ入出力等を行ってプリンタ制御などの所定の機器制御を行う。
【００２８】
図１には前記ＵＳＢインタフェースコントローラ１５及びバスコントローラ９の詳細が例示される。前記内部バス２として内部アドレスバス及びコントロールバス２Ａと内部データバス２Ｄが例示される。前記外部バス２５として外部アドレスバス及びコントロールバス２５Ａと外部データバス２５Ｄが例示され、そこには代表的に示されたＳＤＲＡＭ２７が接続される。同図において周辺バス１２、入出力ポート１６ａ〜１６ｎ及びその他の一部の回路モジュールは図示が省略されている。
【００２９】
前記バスコントローラ９は、バスアービタ３０によりバスマスタモジュールであるＣＰＵ３、ＤＭＡＣ５、ＤＴＣ４、及びＵＳＢインタフェースコントローラ１５との間のバス権要求の競合に対して調停を行う。実際には外部バスマスタによるバス権要求についても考慮するが、ここでは説明を簡単にするために外部バスマスタについては考慮しないこととする。ＵＳＢＢＲＥＱ、ＤＭＡＣＢＲＥＱ、ＤＴＣＢＲＥＱはバス権要求信号、ＵＳＢＢＡＣＫ，ＢＡＣＫ２、ＤＭＡＣＢＡＣＫ、ＤＴＣＢＡＣＫ、ＣＰＵＢＡＣＫはバス権承認信号である。
【００３０】
前記バスアービタ３０は、ＣＰＵ３以外のバスマスタモジュール（ＤＴＣ４、ＤＭＡＣ５、ＵＳＢインタフェースコントローラ１５）からのバス権要求信号（ＤＴＣＢＲＥＱ、ＤＭＡＣＢＲＥＱ、ＵＳＢＢＲＥＱ）に対してバス権を選択的に与えるための調停を行う。バス権要求信号をアサートしたバスマスタモジュールは、バスアービタ３０から返されるバス権承認信号ＢＡＣＫ１、ＢＡＣＫ２，ＢＡＣＫ３のアサートにより、バス権獲得を認識し、バスの使用を開始する。バスを使用していたバスマスタモジュールはバスの使用を終了すると、バス権要求信号をネゲートする。前記バスアービタ３０は、全てのバス権要求信号ＵＳＢＢＲＥＱ、ＤＭＡＣＢＲＥＱ、ＤＴＣＢＲＥＱのネゲート状態においてＣＰＵ３へのバス権承認信号ＣＰＵＢＡＣＫをアサートする。それによって、ＣＰＵ３はバス権を取得して、バスを利用してデータの処理を行う。このような制御は、バスアービタ３０がＣＰＵ３に優先的にバス権を与えることになるので、ＣＰＵ３による高速なデータ処理を可能にする。
【００３１】
一方、図示はされないが、バスアービタ３０からＣＰＵ３に対してバス権要求信号を出力するように構成できる。この場合、データプロセッサのチップ内に、ＣＰＵ３以外に他のＣＰＵが存在するようなマルチＣＰＵ構成の場合に有効である。すなわち、他の中央処理装置がバスアービタ３０に対してバス権要求信号を出力した場合、上記バスアービタ３０がＣＰＵ３にバス要求信号を出力して、ＣＰＵ３からバス権を解放させる。その後、上記バスアービタ３０が他のＣＰＵにバス権承認信号を出力してバス権を与える。他のＣＰＵのデータ処理が完了した場合、バスアービタ３０はＣＰＵ３にバス権承認信号ＣＰＵＢＡＣＫをアサートする。それによって、バス権がＣＰＵ３に戻される。この場合、他のＣＰＵにも選択的にバス権を与えることができるので、ＣＰＵ３のデータ処理と他のＣＰＵのデータ処理とを効率よく制御することができる。
【００３２】
バスアービタ３０の調停によりバス権が与えられたバスマスタモジュールはアドレス信号やアクセス制御信号などのバスコマンドをバス２Ａに出力する。バスコントローラ９はそのバスコマンドの内容に基づいて、アクセスサイクル数及びデータ幅等を決定してバスアクセス制御及びメモリアクセス制御等を行なう。前記バスアクセス制御及びメモリアクセス制御等のために、アドレスエリア毎にマッピングされるデバイスのアクセスデータサイズ及びアクセス速度の情報等がパワーオンリセット直後にＣＰＵ３により初期設定されており、内部アドレスバス及びコントロールバス２Ａ等から供給されるアクセスアドレスのエリアに応じて外部バス等に対するバス制御（デバイスアドレスの出力、データアクセスサイズ、ウェイトステート挿入等）を行う。
【００３３】
前記ＵＳＢインタフェースコントローラ１５は、インタフェース制御部３１、ＦＩＦＯ部３２、及び転送制御部３３を有する。
【００３４】
ＦＩＦＯ部３２は記憶回路３５とＦＩＦＯカウンタ３６によって構成される。記憶回路３５はデータバス２Ｄのビット数に応じたデータ幅でデータの並列入出力可能な記憶段を複数段備えて構成される。ＦＩＦＯカウンタ３６は読み出し動作の指示に応答して前記記憶段を指定するリードポインタと、書き込み動作の指示に応答して前記記憶段を指定するライトポインタとによって構成される。リードポインタは記憶段数に応ずるビット数の読み出し用リングカウンタで構成され、ライトポインタは記憶段数に応ずるビット数の書き込み用リングカウンタで構成される。
【００３５】
前記インタフェース制御部３１は、ＵＤＣ（ＵＳＢデバイスコントロール）コア３８、制御回路３９、及び制御レジスタ４０から成る。ＵＤＣコア３８はパーソナルコンピュータ等に搭載されるＵＳＢホスト４１にＵＳＢケーブルで接続され、ＵＳＢホスト４１からのコマンドに応答して所定のプロトコルでデータのシリアル送受信制御を行なう。ＵＳＢホスト４１からの受信データはＦＩＦＯ部３２に送られ、ＵＳＢホスト４１への送信データはＦＩＦＯ部３２から供給される。制御回路３９はＦＩＦＯ部３２に対するリード・ライト制御と、転送制御部３３に対する転送要求の制御を行なう。
【００３６】
インタフェース制御部３１によるＦＩＦＯ部３２のリード・ライト制御は、制御信号ＦＣＮＴＬによりリード要求又はライト要求をＦＩＦＯ部３２に与える制御である。これによってＦＩＦＯ部３２は、リード要求が与えられるとリードポインタが指す記憶段の記憶情報を読み出してインタフェース制御部３１に与え、ライト要求が与えられるとインタフェース制御部３１からの情報をライトポインタが指す記憶段に格納する。
【００３７】
インタフェース制御部３１による転送制御部３３への転送要求の制御は、ＦＩＦＯ部３２のエンプティー・フル状態に応じて制御信号ＴＲＲＥＱで指示されるＤＭＡ転送要求と、制御信号ＴＲＥＮＤで指示されるＤＭＡ転送の終了要求である。例えば、ＵＳＢホスト４１からの受信動作においてＦＩＦＯ部３２がフル状態であればＦＩＦＯ部３２のデータをＳＤＲＡＭ２７に転送する要求を出し、ＵＳＢホスト４５１への送信動作においてエンプティー状態であればＳＤＲＡＭ２７からＦＩＦＯ部３２にデータを転送する要求を出す。インタフェース制御部３１はデータの送受信動作においてＦＩＦＯカウンタ３６の値を参照してエンプティー・フル状態を判別する。受信動作においてＦＩＦＯ部３２のフル状態からＳＤＲＡＭ２７へのデータ転送によりエンプティー状態になるときＤＭＡ転送の終了を指示し、また、送信動作においてＦＩＦＯ部３２のエンプティー状態からＦＩＦＯ部３２へのデータ転送によりフル状態になるときＤＭＡ転送の終了を指示する。
【００３８】
前記転送制御部３３は制御回路４３及びアドレス生成回路４４を有する。アドレス生成回路４４はデータ転送に際して転送元又は転送先の一方となるＳＤＲＡＭ２７のアドレスを生成する。アドレス生成のためにアドレス生成回路４４は、転送回数を計数するための転送回数レジスタＴＣＲ、転送元アドレスを生成するソースアドレスレジスタＳＡＲ、転送先アドレスを生成するディスティネーションアドレスレジスタＤＡＲ、転送制御情報を保持する制御レジスタＣＨＲを有し、加算器ＡＤＤにより、転送動作毎に前記レジスタＳＡＲ，ＤＡＲ，ＴＣＲのインクリメント・デクリメントを行なってカウンタ動作させる。これによってＤＭＡ転送制御が行なわれる。前記レジスタＳＡＲ，ＤＡＲ，ＴＣＲ、ＣＨＲに対する初期設定はＣＰＵ３で行なわれる。
【００３９】
制御回路４３は前記信号ＴＲＲＥＱによるＤＭＡ転送要求及び信号ＴＲＥＮＤによるＤＭＡ転送終了要求に応じて、バスコントローラ９に対するバス権制御と、アドレス生成部４４によるＳＤＲＡＭ２７のアクセスアドレス生成制御と、ＦＩＦＯ部３２に対するバス２側からのリード・ライト制御とを行なう。
【００４０】
先ず、前記バス権制御として、制御回路４３はインタフェース制御部３１より信号ＴＲＲＥＱによりＤＭＡ転送要求が有ると、バスアービタ３０に信号ＵＳＢＢＲＥＱをアサートし、信号ＵＳＢＢＡＣＫのアサートが返されることによってバス権を獲得する。バス権獲得後、必要なＤＭＡ転送制御を行い、転送終了により、信号ＵＳＢＢＲＥＱをネゲートしてバス権を放棄する。
【００４１】
バス権を獲得したとき、制御回路４３は前記ＳＤＲＡＭ２７のアクセスアドレス生成制御とＦＩＦＯ部に対するリード・ライト制御がを行なう。信号ＴＲＲＥＱによりＦＩＦＯ部３２からＳＤＲＡＭ２７への転送が要求されているとき、信号ＦＣＮＴによりＦＩＦＯ部３２のリードポインタを制御してＦＩＦＯ部３２からバス２Ｄにデータを出力し、これに並行してアドレス生成部４４からバス２ＡにＳＤＲＡＭ２７へのライト動作の指示とライトアドレスを出力する。信号ＴＲＲＥＱによりＳＤＲＡＭ２７からＦＩＦＯ部３２への転送が要求されているとき、アドレス生成部４４からバス２ＡにＳＤＲＡＭ２７へのリード動作の指示とリードアドレスを出力してバス２Ｄにデータを読み出し、これに並行して信号ＦＣＮＴによりＦＩＦＯ部３２のライトポインタを制御してバス２ＤのデータをＦＩＦＯ部３２にライトする。
【００４２】
図３にはＵＳＢインタフェースコントローラ１５によるＦＩＦＯ部３２からＳＤＲＡＭ２７へのデータ転送動作タイミングが示され、図４にはＵＳＢインタフェースコントローラ１５によるＳＤＲＡＭ２７からＦＩＦＯ部３２へのデータ転送動作タイミングが示される。それらを参照しながら、ＵＳＢインタフェースコントローラ１５の送受信動作を説明する。
【００４３】
ＵＳＢホスト４１からＵＳＢケーブルを介してデータが転送されると、そのデータがＦＩＦＯＩ部３２に順次格納される。ＦＩＦＯ部３２がフル状態になると、インタフェース制御部３１は転送制御部３３に、信号ＴＲＲＥＱによりＦＩＦＯ部３２からからＳＤＲＡＭ２７への転送リクエストを出力する（図３のＴＲＲＥＱアサート）。
【００４４】
この転送リクエストに応答する転送制御部３３の制御回路４３は、バスアービタ３０に信号ＵＳＢＢＲＥＱをアサートしてバス権を要求する（図３のＵＳＢＢＲＥＱアサート）。バスアービタ３０はバス権を調停し、信号ＵＳＢＢＡＣＫをアサートすることによってＵＳＢインタフェースコントローラ１５にバス権を与える（図３のＵＳＢＢＡＣＫアサート）。バス権を獲得すると、制御回路４３は、信号ＦＣＮＴＳにてＦＩＦＯ部３２を制御してＦＩＦＯ部３２のデータをデータバス２Ｄに出力させる。また、制御回路４３は信号ＴＣＮＴによりアドレス生成回路４４を制御してＳＤＲＡＭ２７の転送先のアドレス及びライト制御信号をアドレスバス及びコントロールバス２Ａに出力させる。ＦＩＦＯ部３２のリードポインタのアドレスによる読み出し動作と、アドレス生成回路４４のレジスタＤＡＲのアドレスによる書き込み動作は並行され、双方のアドレスインクリメントも制御回路４３により同期され、それによるデータ転送動作が所定回数繰返されて、受信データがＳＤＲＡＭ２７に転送される。図３においてＦＩＦＯカウンタ３６の値は例えば０，１，２とインクリメントされ、これをアドレスとするデータＤ０，Ｄ１，Ｄ２がＦＩＦＯ部３２からバス２Ｄに出力され、これに並行して、バス２ＡにＳＤＲＡＭ２７のアドレスＤＡ０，ＤＡ１，ＤＡ２が順次出力され、これによってバス２ＤのデータＤ０，Ｄ１，Ｄ２が順次ＳＤＲＡＭ２７に書き込まれる。
【００４５】
比較例として例えばＦＩＦＯ部３２からＳＤＲＡＭ２７へのデータ転送を汎用のＤＭＡＣ５などを用いて行なう場合には、特許文献８に記載のデータバッファ内蔵のＤＭＡＣを用いてデータブロック転送を行なっても、当該比較例を示す図５に例示されるように、ＦＩＦＯ部３２からＤＭＡＣ５のデータバッファへの転送動作と、ＤＭＡＣ５のデータバッファからＳＤＲＡＭ２７への転送動作が直列的となり、転送動作時間が長くなる。図３の動作タイミングは図５に対して時間Ｔｍだけ転送動作時間が短縮される。
【００４６】
一方、ＵＳＢホスト４１への送信処理において、ＦＩＦＯ部３２内のデータがエンプティー状態になると、インタフェース制御部３１から転送制御部３３の制御回路４３に信号ＴＲＲＥＱによりＳＤＲＡＭ２７からＦＩＦＯ部３２への転送リクエストを出力する（図４のＴＲＲＥＱアサート）。
【００４７】
この転送リクエストに応答する転送制御部３３の制御回路４３は、バスアービタ３０に信号ＵＳＢＢＲＥＱをアサートしてバス権を要求する（図４のＵＳＢＢＲＥＱアサート）。バスアービタ３０はバス権を調停し、信号ＵＳＢＢＡＣＫをアサートすることによってＵＳＢインタフェースコントローラ１５にバス権を与える（図４のＵＳＢＢＡＣＫアサート）。バス権を獲得すると、制御回路４３は信号ＴＣＮＴによりアドレス生成回路４４を制御してＳＤＲＡＭ２７の転送元のアドレス及びリード制御信号をアドレスバス及びコントロールバス２Ａに出力させる。また、制御回路４３は、信号ＦＣＮＴＳにてＦＩＦＯ部３２を制御してＦＩＦＯ部３２にデータバス２Ｄのデータを入力させる。ＦＩＦＯ部３２のライトポインタのアドレスによる書き込み動作と、アドレス生成回路４４のレジスタＳＡＲのアドレスによる読み出し動作は並行され、双方のアドレスインクリメントも制御回路４３により同期され、それによるデータ転送動作が所定回数繰返されて、送信データがＳＤＲＡＭ２７からＦＩＦＯ部３２に転送される。図４においてバス２ＡにＳＤＲＡＭ２７のアドレスＳＡ０，ＳＡ１，ＳＡ２が順次出力され、これによってＳＤＲＡＭ２７からバス２ＤにデータＤ０，Ｄ１，Ｄ２が順次出力され、これに並行して、ＦＩＦＯカウンタの値は例えば０，１，２とインクリメントされ、これをアドレスとして、バス２ＤのデータＤ０，Ｄ１，Ｄ２がＦＩＦＯ部３２に入力される。
【００４８】
比較例として例えばＳＤＲＡＭ２７からＦＩＦＯ部３２へのデータ転送を汎用のＤＭＡＣ５などを用いて行なう場合には、特許文献８に記載のデータバッファ内蔵のＤＭＡＣを用いてデータブロック転送を行なっても、当該比較例を示す図６のように、ＳＤＲＡＭ２７からＤＭＡＣ５のデータバッファへの転送動作と、ＤＭＡＣ５のデータバッファからＦＩＦＯ部３２への転送動作が直列的となり、転送動作時間が長くなる。図４の動作タイミングは図６に対して時間Ｔｎだけ転送動作時間が短縮される。
【００４９】
図７にはデータプロセッサの別の例が示される。同図に示されるデータプロセッサは転送制御部３３をＵＳＢインタフェースコントローラ１５から独立させる。このとき、転送制御部３３の制御回路４３は、複数のＵＳＢインタフェースコントローラ１５、１５Ｂに対して選択的に同様のＤＭＡ転送制御を行なうことが可能になる。要するに、複数個のＵＳＢインタフェースコントローラがオンチップされる場合に、それらに転送制御部３３を共有させることが可能になり、回路規模に縮小に寄与する。また、データプロセッサの外部に配置したＵＳＢインタフェースコントローラに対しても同様のデータ転送制御を行なうことができる。或は、ＵＳＢインタフェースの仕様がバージョンアップにより変更された場合にも転送制御部３３の修正が容易になる。
【００５０】
図８にはデータプロセッサの更に別の例が示される。同図に示されるＵＳＢインタフェースコントローラ１５Ａは、図１のＦＩＦＯ部３２の記憶回路としてＲＡＭ６の一部の記憶領域（ＦＩＦＯエリア）６Ａを用いる。
【００５１】
この変更に応じて転送制御部３３ＡはＦＩＦＯエリア６Ａのアドレス生成部５０を備える。アドレス生成部５０はＦＩＦＯカウンタ３６とＦＩＦＯエリア６Ａアクセス用のリードアドレスレジスタＲＡＲｆとライトアドレスレジスタＷＡＲｆを有する。ＦＩＦＯカウンタ３６はＦＩＦＯエリア６Ａの記憶段数に相当するビット数を有し、前述同様のリードポインタとライトポインタを構成する。リードアドレスレジスタＲＡＲｆとライトアドレスレジスタＷＡＲｆの初期値はＦＩＦＯエリア６Ａの先頭アドレスがＣＰＵ３により初期設定される。リードアドレスレジスタＲＡＲｆの下位側アドレスはＦＩＦＯカウンタ３６のリードポインタの値で置換される。ライトアドレスレジスタＷＡＲｆの下位側アドレスはＦＩＦＯカウンタ３６のライトポインタの値で置換される。
【００５２】
また、インタフェース制御部３１ＡはＵＳＢホスト４１との間の送受信処理においてＦＩＦＯエリア６Ａをアクセスする時点からバス権を取得する制御を行なわなければならない。即ち、インタフェース制御部３１ＡはＵＳＢホスト４１と送受信を行なうとき、先ず、ＦＩＦＯエリア６Ａのリードライトを行なうための転送要求を信号ＴＲＲＥＱで転送制御部３３Ａに行ない、転送制御部３３Ａは信号ＵＳＢＢＲＥＱにてバス権を要求し、信号ＵＳＢＢＡＣＫのアサートにてバス権を獲得する。バス権獲得はインタフェース制御部３１Ａにも通知され、これによってインタフェース制御部３１Ａはアドレス生成部５０にＦＩＦＯカウント動作をさせ、ＦＩＦＯエリア６Ａに対する受信データの書き込み、或はＦＩＦＯエリア６Ａから送信データのリードを行なう。上記同様にインタフェース制御部３１ＡはＦＩＦＯカウンタ３６の値に基づいてＦＩＦＯエリアがフル状態又はエンプティー状態になったかを監視する。受信動作においてフル状態が検出されると、信号ＴＲＲＥＱによりＦＩＦＯエリア６ＡからＳＤＲＡＭ２７へのデータ転送を転送制御部３３Ａの制御回路４３Ａに要求し、これによってアドレス生成部５０がＦＩＦＯエリア６Ａのリードアドレスを出力し、アドレス生成部４４がＳＤＲＡＭ２７のライトアドレスを生成して、上述と同様のＤＭＡ転送が制御される。送信動作においてエンプティー状態が検出されると、信号ＴＲＲＥＱによりＳＤＲＡＭ２７からＦＩＦＯエリア６Ａへのデータ転送を転送制御部３３Ａに要求し、これによって、アドレス生成部４４がＳＤＲＡＭ２７のリードアドレスを出力し、アドレス生成部５０がＦＩＦＯエリア６Ａのライトアドレスを出力し、上述と同様のＤＭＡ転送が制御される。
【００５３】
図９には図８の構成においてＦＩＦＯエリア６ＡからＳＤＲＡＭ２７へのデータ転送タイミングが例示される。図９においてＦＩＦＯカウンタの値は例えば０，１，２とインクリメントされ、これをアドレスとするＦＩＦＯエリア６ＡからデータＤ０，Ｄ１，Ｄ２がバス２Ｄに出力される。この出力動作の各メモリサイクルの前半ではＦＩＦＯエリア６Ａに対するリードアドレスＳＡ０，ＳＡ１，ＳＡ２がバス２Ａに出力され、後半ではＳＤＲＡＭ２７に対するライトアドレスＤＡ０，ＤＡ１，ＤＡ２が出力される。これにより、バス２Ｄに出力されたデータＤ０，Ｄ１，Ｄ２はそれと同じメモリサイクルでＳＤＲＡＭ２７に書き込まれる。特に図示はしないがＳＤＲＡＭ２７からＦＩＦＯエリア６Ａへのデータ転送も上記と同じように１メモリサイクル内でＳＤＲＡＭからのリードとＦＩＦＯエリア６Ａへのライトアクセスを実現することができる。
【００５４】
ＲＡＭ６の一部をＦＩＦＯエリア６Ａに用いることにより、ＦＩＦＯ部３２に比べてバッファ段数の上限に対する制限が緩和される。即ち、図８のＦＩＦＯカウンタ３６のビット数を可変とし、ＦＩＦＯエリア６Ａに割当てるバッファ段数に応じてＦＩＦＯカウンタ３６のビット数を決定し、ＦＩＦＯカウンタ３６の計数値をレジスタＲＡＲ，ＷＡＲの下位側の与えるようにすれば、ＦＩＦＯの記憶容量を比較的自由に設定可能になる。
【００５５】
以上本発明者によってなされた発明を実施形態に基づいて具体的に説明したが、本発明はそれに限定されるものではなく、その要旨を逸脱しない範囲において種々変更可能であることは言うまでもない。
【００５６】
例えば、インタフェースコントローラはＵＳＢに限定されず、その他のシリアルインタフェース、パラレルインタフェース、更には通信コントローラ若しくは通信モジュール等であってもよい。汎用のデータ転送制御装置としてＤＭＡＣとＤＴＣの双方を備えることに限定されない。逆に、更に別のＤＭＡＣを追加してもよい。また、外部バスに接続されるメモリはＳＤＲＡＭに限定されず、ＤＲＡＭＳＲＡＭ、フラッシュメモリ等であってもよい。
【００５７】
【発明の効果】
本願において開示される発明のうち代表的なものによって得られる効果を簡単に説明すれば下記の通りである。
【００５８】
すなわち、ＦＩＦＯ部をインタフェース制御部と転送制御部に共有させる。これはＤＭＡコントローラを単にインタフェースコントローラに専用化しただけではない。ＦＩＦＯ部はインタフェース制御部のバッファも兼ね、それ故に、単位アクセスサイクルで転送元からのリードと転送先へのライトを行なうことが可能になる。転送先アドレスを指定しながら転送すべきデータをＦＩＦＯ部から連続的に出力し、且つ、転送元アドレスを指定しながら転送すべきデータをＦＩＦＯ部に連続的に入力することができる。以上より、オンチップのインタフェースコントローラと外部との間のデータ転送時間を短縮することができ、データ処理効率の向上に寄与する。
【図面の簡単な説明】
【図１】ＵＳＢインタフェースコントローラ及びバスコントローラの詳細を例示するブロック図である。
【図２】半導体データ処理装置の一例に係るデータプロセッサの全体を概略的に示すブロック図である。
【図３】ＵＳＢインタフェースコントローラによるＦＩＦＯ部からＳＤＲＡＭへのデータ転送動作を例示するタイミングチャートである。
【図４】ＵＳＢインタフェースコントローラによるＳＤＲＡＭからＦＩＦＯ部へのデータ転送動作を例示するタイミングチャートである。
【図５】ＦＩＦＯ部からＳＤＲＡＭへのデータ転送を汎用のＤＭＡＣを用いて行なう場合に特許文献８に記載のデータバッファ内蔵のＤＭＡＣを用いてデータブロック転送を行なう比較例としてのデータ転送動作を例示するタイミングチャートである。
【図６】ＳＤＲＡＭからＦＩＦＯ部へのデータ転送を汎用のＤＭＡＣを用いて行なう場合に特許文献８に記載のデータバッファ内蔵のＤＭＡＣを用いてデータブロック転送を行なう比較例としてのデータ転送動作を例示するタイミングチャートである。
【図７】データプロセッサの別の例を示すブロック図である。
【図８】データプロセッサの更に別の例を示すブロック図である。
【図９】図８の構成においてＦＩＦＯエリアからＳＤＲＡＭへのデータ転送動作を示すタイミングチャートである。
【符号の説明】
１　データプロセッサ
２　内部バス
３　ＣＰＵ
４　ＤＴＣ
５　ＤＭＡＣ
６　ＲＡＭ
６Ａ　ＦＩＦＯエリア
９　バスコントローラ
１５、１５Ａ、１５Ｂ　ＵＳＢインタフェースコントローラ
２５　外部バス
２７　ＳＤＲＡＭ
３０　バスアービタ
３１、３１Ａ　インタフェース制御部
３２　ＦＩＦＯ部
３３、３３Ａ　転送制御部
３５　記憶回路
３６　ＦＩＦＯカウンタ
３８　ＵＤＣコア
３９、３９Ａ　制御回路
４３、４３Ａ　制御回路
４４　アドレス生成回路
５０　アドレス生成回路
【図１】
2004118252.tif 000003
【図２】
2004118252.tif 000004
【図３】
2004118252.tif 000005
【図４】
2004118252.tif 000006
【図５】
2004118252.tif 000007
【図６】
2004118252.tif 000008
【図７】
2004118252.tif 000009
【図８】
2004118252.tif 000010
【図９】
2004118252.tif 000011