(57)【特許請求の範囲】
【請求項１】
差動信号を用いてデータ転送を行う所与のインターフェース規格の物理層の回路を少なくとも含むマクロセルであって、
第１のモードでは、第１、第２の入力信号のうち第１の入力信号を第１のセレクタ出力信号として出力すると共に第２の入力信号を第２のセレクタ出力信号として出力し、第２のモードでは、前記第１、第２の入力信号のうち第２の入力信号を前記第１のセレクタ出力信号として出力すると共に第１の入力信号を前記第２のセレクタ出力信号として出力するセレクタと、
前記第１のセレクタ出力信号に対応した送信制御信号が入力され、差動信号を構成する第１、第２の信号のうちいずれか一方用の第１のパッドに接続される信号ラインを駆動する第１の送信ドライバと、
前記第２のセレクタ出力信号に対応した送信制御信号が入力され、前記一方とは異なる他方用の第２のパッドに接続される信号ラインを駆動する第２の送信ドライバと、
前記第１、第２のパッドに接続される受信回路と、
を含み、
マクロセルの第１の辺から対向する第３の辺へと向かう方向を第１の方向とした場合に、
前記第１、第２の送信ドライバが、
前記第１、第２のパッドの前記第１の方向側に配置されると共に前記第１の方向に沿った第１のラインを対称軸として線対称に配置され、
前記受信回路が、
前記第１、第２の送信ドライバの前記第１の方向側に配置されることを特徴とするマクロセル。
【請求項２】
請求項１において、
前記受信回路と前記第１、第２のパッドとを接続する信号ラインを前記第１の方向に沿って配線するための配線領域が、前記第１、第２の送信ドライバの間の領域に設けられることを特徴とするマクロセル。
【請求項３】
請求項１又は２において、
前記物理層よりも上位層の回路を含む第２のマクロセルから前記第１、第２の入力信号を入力するための第１、第２の入力端子を含み、
前記セレクタが、
前記第１のモードでは、前記第１の入力端子を介して前記第２のマクロセルから入力された前記第１の入力信号を前記第１のセレクタ出力信号として出力すると共に前記第２の入力端子を介して前記第２のマクロセルから入力された前記第２の入力信号を前記第２のセレクタ出力信号として出力し、前記第２のモードでは、前記第２の入力端子を介して前記第２のマクロセルから入力された前記第２の入力信号を前記第１のセレクタ出力信号として出力すると共に前記第１の入力端子を介して前記第２のマクロセルから入力された前記第１の入力信号を前記第２のセレクタ出力信号として出力することを特徴とするマクロセル。
【請求項４】
請求項３において、
前記第１、第２の入力端子が、
マクロセルの四辺のうちの一辺に沿って設けられる送信インターフェース領域に配置されることを特徴とするマクロセル。
【請求項５】
請求項１乃至４のいずれかにおいて、
前記所与のインターフェース規格が、ＵＳＢ（Universal Serial Bus）規格であることを特徴とするマクロセル。
【請求項６】
請求項１乃至５のいずれかにおいて、
前記物理層よりも上位層の回路を含む第２のマクロセルのＩ／Ｏ領域の一部に対して、マクロセルのＩ／Ｏ領域の全体がオーバラップするように配置される場合において、
マクロセルの前記第１の辺の長さをＬとし、前記第２のマクロセルのＩ／Ｏ領域に配置されるＩ／Ｏセルのピッチ幅をＰＬとした場合に、Ｌ＝ＰＬ×Ｎ（Ｎは２以上の整数）であることを特徴とするマクロセル。
【請求項７】
複数のマクロセルを含む物理層回路であって、
請求項１乃至６のいずれかに記載のマクロセルと、
前記物理層よりも上位層の回路を含む第２のマクロセルと、
を含むことを特徴とする集積回路装置。
【請求項８】
請求項７に記載の集積回路装置と、
前記集積回路装置を制御する処理部と、
を含むことを特徴とする電子機器。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、マクロセル、集積回路装置、及び電子機器に関する。
【背景技術】
【０００２】
近年、電子機器間を接続するためのインターフェース規格として、ＵＳＢ（Universal Serial Bus)が注目を集めている。このＵＳＢでは、差動信号を構成する信号ＤＰ（Ｄ＋）、ＤＭ（Ｄ−）を用いてデータ転送が行われる。このためＵＳＢのデータ転送機能を有する集積回路装置は、ＤＰ、ＤＭ用のパッド（第１、第２のパッド）を有しており、このＤＰ、ＤＭ用のパッドは、外部端子を介して外部のＵＳＢレセプタクルに接続される。
【０００３】
しかしながら、これまでの集積回路装置では、これらのＤＰ、ＤＭ用のパッドの配列が固定されていた。従って集積回路装置（半導体ＩＣ）が実装される回路基板（circuit bord）の仕様等によって、ＤＰ、ＤＭ用のパッド配列を変更する場合には、集積回路装置が有するマクロセルのマスクパターンやレイアウトを変更しなければならないという課題があった。
【特許文献１】特開２０００−１４８７１６号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
本発明の目的は、差動信号用の第１、第２のパッドを差動信号の第１、第２の信号に自由に割り当てることを可能にするマクロセル、これを含む集積回路装置及び電子機器を提供することにある。
【課題を解決するための手段】
【０００５】
本発明は、差動信号を用いてデータ転送を行う所与のインターフェース規格の物理層の回路を少なくとも含むマクロセルであって、第１のモードでは、第１、第２の入力信号のうち第１の入力信号を第１のセレクタ出力信号として出力すると共に第２の入力信号を第２のセレクタ出力信号として出力し、第２のモードでは、前記第１、第２の入力信号のうち第２の入力信号を前記第１のセレクタ出力信号として出力すると共に第１の入力信号を前記第２のセレクタ出力信号として出力するセレクタと、前記第１のセレクタ出力信号に対応した送信制御信号が入力され、差動信号を構成する第１、第２の信号のうちいずれか一方用の第１のパッドに接続される信号ラインを駆動する第１の送信ドライバと、前記第２のセレクタ出力信号に対応した送信制御信号が入力され、前記一方とは異なる他方用の第２のパッドに接続される信号ラインを駆動する第２の送信ドライバとを含むマクロセルに関係する。
【０００６】
本発明のマクロセルは、差動信号を用いてデータ転送を行う物理層（例えば最下位層）の回路として第１、第２の送信ドライバを含む。そしてセレクタは、第１のモードでは、第１、第２の入力信号を、各々、第１、第２のセレクタ出力信号として出力し、第２のモードでは、第２、第１の入力信号を、各々、第１、第２のセレクタ出力信号として出力する。そして第１の送信ドライバは、セレクタからの第１のセレクタ出力信号に応じて、第１、第２の信号のうちいずれか一方用の第１のパッドに接続される信号ラインを駆動し、第２の送信ドライバは、セレクタからの第２のセレクタ出力信号に応じて、第１、第２の信号の他方用の第２のパッドに接続される信号ラインを駆動する。このようにすることで、差動信号用の第１、第２のパッドを差動信号の第１、第２の信号に自由に割り当てることが可能になり、利便性を向上できる。
【０００７】
また本発明では、前記第１、第２のパッドに接続される受信回路を含み、マクロセルの第１の辺から対向する第３の辺へと向かう方向を第１の方向とした場合に、前記第１、第２の送信ドライバが、前記第１、第２のパッドの前記第１の方向側に配置されると共に前記第１の方向に沿った第１のラインを対称軸として線対称に配置され、前記受信回路が、前記第１、第２の送信ドライバの前記第１の方向側に配置されるようにしてもよい。
【０００８】
このようにすれば、種々の場所に配置しても差動信号の信号特性等を維持できるマクロセルの提供や、マクロセルの小面積化を図ることが可能になる。
【０００９】
また本発明では、前記受信回路と前記第１、第２のパッドとを接続する信号ラインを前記第１の方向に沿って配線するための配線領域が、前記第１、第２の送信ドライバの間の領域に設けられるようにしてもよい。
【００１０】
このようにすれば、線対称に配置される第１、第２の送信ドライバ間の空きスペースを有効活用して、受信回路と第１、第２のパッドとを接続する信号ラインを配線することが可能になる。
【００１１】
また本発明は、差動信号を用いてデータ転送を行う所与のインターフェース規格の物理層の回路を少なくとも含むマクロセルであって、第１のモードでは、第１、第２の入力信号のうち第１の入力信号を第１のセレクタ出力信号として出力すると共に第２の入力信号を第２のセレクタ出力信号として出力し、第２のモードでは、前記第１、第２の入力信号のうち第２の入力信号を前記第１のセレクタ出力信号として出力すると共に第１の入力信号を前記第２のセレクタ出力信号として出力するセレクタと、前記第１のセレクタ出力信号に対応した抵抗制御信号が入力され、差動信号を構成する第１、第２の信号のうちいずれか一方用の第１のパッドに接続されるプルアップ用又はダミー用の第１の抵抗回路と、前記第１のセレクタ出力信号に対応した抵抗制御信号が入力され、前記一方とは異なる他方用の第２のパッドに接続されるプルアップ用又はダミー用の第２の抵抗回路とを含むマクロセルに関係する。
【００１２】
本発明のマクロセルは、差動信号を用いてデータ転送を行う物理層（例えば最下位層）の回路として第１、第２の抵抗回路を含む。そしてセレクタは、第１のモードでは、第１、第２の入力信号を、各々、第１、第２のセレクタ出力信号として出力し、第２のモードでは、第２、第１の入力信号を、各々、第１、第２のセレクタ出力信号として出力する。そして第１の抵抗回路は、セレクタからの第１のセレクタ出力信号に応じて、第１のパッドに接続される信号ラインのプルアップ用又はダミー用の抵抗回路として機能する。また第２の抵抗回路は、セレクタからの第２のセレクタ出力信号に応じて、第２のパッドに接続される信号ラインのプルアップ用又はダミー用の抵抗回路として機能する。このようにすることで、差動信号用の第１、第２のパッドを差動信号の第１、第２の信号に自由に割り当てることが可能になり、利便性を向上できる。
【００１３】
また本発明では、第１のモードでは、第３、第４の入力信号のうち第３の入力信号を第３のセレクタ出力信号として出力すると共に第４の入力信号を第４のセレクタ出力信号として出力し、第２のモードでは、前記第３、第４の入力信号のうち第４の入力信号を前記第３のセレクタ出力信号として出力すると共に第３の入力信号を前記第４のセレクタ出力信号として出力する第２のセレクタと、前記第３のセレクタ出力信号に対応した抵抗制御信号が入力され、差動信号を構成する第１、第２の信号のうちいずれか一方用の第１のパッドに接続されるプルダウン用の第３の抵抗回路と、前記第４のセレクタ出力信号に対応した抵抗制御信号が入力され、前記一方とは異なる他方用の第２のパッドに接続されるプルダウン用の第４の抵抗回路とを含むようにしてもよい。
【００１４】
また本発明では、前記第３、第４の抵抗回路は、ＵＳＢ（Universal Serial Bus）のＯＴＧ（On-The-Go）用の抵抗回路であってもよい。
【００１５】
また本発明では、前記物理層よりも上位層の回路を含む第２のマクロセルから前記第１、第２の入力信号を入力するための第１、第２の入力端子を含み、前記セレクタが、前記第１のモードでは、前記第１の入力端子を介して前記第２のマクロセルから入力された前記第１の入力信号を前記第１のセレクタ出力信号として出力すると共に前記第２の入力端子を介して前記第２のマクロセルから入力された前記第２の入力信号を前記第２のセレクタ出力信号として出力し、前記第２のモードでは、前記第２の入力端子を介して前記第２のマクロセルから入力された前記第２の入力信号を前記第１のセレクタ出力信号として出力すると共に前記第１の入力端子を介して前記第２のマクロセルから入力された前記第１の入力信号を前記第２のセレクタ出力信号として出力するようにしてもよい。
【００１６】
このようにすれば、例えば第１の信号に対応する信号を常に第１の入力端子から入力し、第２の信号に対応する信号を常に第２の入力端子から入力することが可能になり、パッド配列の変更の影響が第２のマクロセルに及ぶのを防止できる。
【００１７】
また本発明では、前記第１、第２の入力端子が、マクロセルの四辺のうちの一辺に沿って設けられる送信インターフェース領域に配置されるようにしてもよい。
【００１８】
このようにすれば、マクロセルと第２のマクロセルとの間でやり取りされる信号のタイミング設計の容易化等を図れる。
【００１９】
また本発明では、前記所与のインターフェース規格が、ＵＳＢ（Universal Serial Bus）規格であってもよい。
【００２０】
また本発明では、前記物理層よりも上位層の回路を含む第２のマクロセルのＩ／Ｏ領域の一部に対して、マクロセルのＩ／Ｏ領域の全体がオーバラップするように配置される場合において、マクロセルの前記第１の辺の長さをＬとし、前記第２のマクロセルのＩ／Ｏ領域に配置されるＩ／Ｏセルのピッチ幅をＰＬとした場合に、Ｌ＝ＰＬ×Ｎ（Ｎは２以上の整数）であってもよい。
【００２１】
このようにすれば、マクロセルを色々な場所に配置できるようになり、利便性を向上できる。そして、このようにマクロセルを色々な場所に配置した場合にも、差動信号の信号特性等を維持することが可能になる。
【００２２】
また本発明は、複数のマクロセルを含む物理層回路であって、上記のいずれかのマクロセルと、前記物理層よりも上位層の回路を含む第２のマクロセルとを含む集積回路装置に関係する。
【００２３】
また本発明は、上記の集積回路装置と、前記集積回路装置を制御する処理部とを含む電子機器に関係する。
【発明を実施するための最良の形態】
【００２４】
以下、本発明の好適な実施の形態について詳細に説明する。なお以下に説明する本実施形態は特許請求の範囲に記載された本発明の内容を不当に限定するものではなく、本実施形態で説明される構成の全てが本発明の解決手段として必須であるとは限らない。
【００２５】
１．集積回路装置の構成
図１に本実施形態のマクロセルが適用される集積回路装置の構成例を示す。この集積回路装置は、マクロセルＭＣ１と第２のマクロセルＭＣ２を含む。なお、これらのマクロセルＭＣ１、ＭＣ２（メガセル、マクロブロック）は、論理機能を有する中規模又は大規模な回路の単位である。また、本実施形態の集積回路装置は３個以上のマクロセルを含むようにしてもよい。
【００２６】
図１においてマクロセルＭＣ１は、差動信号（シリアルバス）を用いてデータ転送を行うインターフェース規格（例えばＵＳＢ又はＩＥＥＥ１３９４等）の物理層の回路を少なくとも含むマクロセルである。この物理層回路は、例えばＵＳＢのＦＳ（フルスピード）モードやＨＳ（ハイスピード）モードを実現する送信回路（第１、第２の送信ドライバ）や受信回路（差動レシーバ、第１、第２のシングルエンドレシーバ）や抵抗回路（プルアップ用抵抗回路、プルダウン用抵抗回路）などを含むことができる。なおマクロセルＭＣ１は、物理層回路以外の回路（論理層回路等）を含むこともできる。
【００２７】
マクロセルＭＣ１は、例えばその配線及び回路セル配置が固定化されるハードマクロになっている。より具体的には、例えば、配線や回路セル配置が手作業のレイアウトにより行われる（配線、配置の一部を自動化してもよい）。
【００２８】
一方、マクロセルＭＣ２は、物理層よりも上位層（論理層、リンク層、トランザクション層又はアプリケーション層等）の回路を含むマクロセルである。ＵＳＢを例にとれば、マクロセルＭＣ２は、ＳＩＥ（Serial Interface Engine）やユーザロジック（デバイス固有の回路）などの論理層回路（ＭＣ１が含む論理層回路の他の部分）を含むことができる。
【００２９】
マクロセルＭＣ２は、例えばその配線及び回路セル配置が自動配置配線されるソフトマクロになっている。より具体的には、例えば、ゲートアレイの自動配置配線ツールにより基本セル間の配線等が自動的に行われる（配置、配線の一部を固定化してもよい）。
【００３０】
なお、図１において、マクロセルＭＣ１として、物理層の回路のみを含むマクロセルを用いてもよい。またマクロセルＭＣ２は、少なくとも物理層よりも上位の層の回路を含むものであればよい。
【００３１】
図１では集積回路装置の四辺に沿ってＩ／Ｏ領域が設けられている。このＩ／Ｏ領域には複数のＩ／Ｏセル（入力専用セル、出力専用セル、入出力兼用セル）が並んで配置される。またＩ／Ｏ領域の外側には、差動信号ＤＰ（Ｄ＋）、ＤＭ（Ｄ−）用のパッドＰ１、Ｐ２（端子）を含む複数のパッドが並んで配置される。そして図１ではマクロセルＭＣ１のＩ／Ｏ領域の全体がマクロセルＭＣ２のＩ／Ｏ領域の一部にオーバラップするようにＭＣ１が配置される。なおパッドをＩ／Ｏ領域内（Ｉ／Ｏセル内）に設ける構成としてもよい。
【００３２】
２．データ転送制御装置の構成
図２に、図１の集積回路装置により実現されるデータ転送制御装置の構成例を示す。なお本実施形態の集積回路装置により実現される装置は図２の構成に限定されない。例えば図２とは異なる構成のデータ転送制御装置を実現してもよい。或いは図２の構成にアプリケーション層デバイスやＣＰＵ（広義にはプロセッサ）などの構成を加えて、集積回路装置として１チップ化してもよい。
【００３３】
図２のデータ転送制御装置（集積回路装置）は、トランシーバ２００と転送コントローラ２１０とバッファコントローラ２２０とデータバッファ２３０とインターフェース回路２４０を含む。なおこれらの回路ブロックの一部を省略したり、これらの回路ブロック間の接続形態を変更してもよい。
【００３４】
トランシーバ２００は、差動信号ＤＰ、ＤＭ（差動データ信号）を用いてデータを送受信するための回路である。このトランシーバ２００は、例えばＵＳＢ（広義には所与のインターフェース規格）の物理層回路（アナログフロントエンド回路）を含むことができる。なおトランシーバ２００に物理層以外の層の回路を含めてもよい。
【００３５】
転送コントローラ２１０は、ＵＳＢを介したデータ転送を制御するためのコントローラであり、いわゆるＳＩＥ（Serial Interface Engine）の機能などを実現するためのものである。例えば転送コントローラ２１０は、パケットハンドル処理、サスペンド＆レジューム制御、或いはトランザクション管理などを行う。
【００３６】
バッファコントローラ２２０は、データバッファ２３０に記憶領域（エンドポイント領域等）を確保したり、データバッファ２３０の記憶領域に対するアクセス制御を行う。より具体的にはバッファコントローラ２２０は、インターフェース回路２４０を介したアプリケーション層デバイス側からのアクセスや、インターフェース回路２４０を介したＣＰＵ側からのアクセスや、ＵＳＢ（転送コントローラ２１０）側からのアクセスを制御したり、これらのアクセスの調停を行ったり、アクセス・アドレスの生成・管理を行う。
【００３７】
データバッファ２３０（パケットバッファ）は、ＵＳＢを介して転送されるデータ（送信データ又は受信データ）を一時的に格納（バッファリング）するためバッファ（ＦＩＦＯ）である。このデータバッファ２３０はＲＡＭなどのメモリにより構成できる。
【００３８】
インターフェース回路２４０は、アプリケーション層デバイスが接続されるＤＭＡ（DirectMemoryAccess）バスや、ＣＰＵが接続されるＣＰＵバスを介したインターフェースを実現するための回路である。このインターフェース回路２４０には、ＤＭＡ転送のためのＤＭＡハンドラ回路などを含めることができる。
【００３９】
図１のマクロセルＭＣ１は、図２のトランシーバ２００の一部又は全部を含むことができる。またマクロセルＭＣ２は、転送コントローラ２１０、バッファコントローラ２２０、データバッファ２３０、インターフェース回路２４０の一部又は全部を含むことができる。なおマクロセルＭＣ２にアプリケーション層デバイスなどの回路を含ませてもよい。
【００４０】
３．トランシーバの構成
図３にトランシーバ２００（物理層回路）の詳細な構成例を示す。
【００４１】
図３において送信回路１０は、例えばＵＳＢのＦＳモードにおいて差動信号ＤＰ、ＤＭを用いてデータの送信処理を行うための回路である。この送信回路１０は、差動信号を構成する信号ＤＰ（広義には第１の信号）のパッドに接続される信号ラインを駆動する第１の送信ドライバ１２と、差動信号を構成する信号ＤＭ（広義には第２の信号）のパッドに接続される信号ラインを駆動する第２の送信ドライバ１４を含む。これらの送信ドライバ１２、１４によりＤＰ、ＤＭのパッドの信号ラインを駆動することで、ＤＰ、ＤＭのパッド（データ端子）を用いた差動信号の伝送が可能になる。
【００４２】
また送信回路１０は、ＤＰ、ＤＭのパッド（広義には第１、第２のパッド）に接続される第１のダンピング抵抗ＲＤＰ１と第２のダンピング抵抗ＲＤＰ２を含む。これらのダンピング抵抗ＲＤＰ１、ＲＤＰ２の一端は送信ドライバ１２、１４の出力に接続され、他端はＤＰ、ＤＭのパッドに接続される。なお送信回路１０（集積回路装置）にダンピング抵抗ＲＤＰ１、ＲＤＰ２を含ませない構成としてもよい。この場合には、ダンピング抵抗ＲＤＰ１、ＲＤＰ２を外付けのパーツで実現すればよい。
【００４３】
第１、第２の送信制御回路２２、２４は、第１、第２の送信ドライバ１２、１４の制御用の回路である。具体的には送信制御回路２２は、前段の回路（例えばマクロセルＭＣ２内の回路）から送信データ信号ＤＯＵＴ１とアウトプットディスイネーブル信号ＯＵＴＤＩＳを受け、制御信号ＯＰ１、ＯＮ１を送信ドライバ１２に出力する。送信制御回路２４は、前段の回路から信号ＤＯＵＴ２とＯＵＴＤＩＳを受け、制御信号ＯＰ２、ＯＮ２を送信ドライバ１４に出力する。
【００４４】
受信回路３０は、例えばＵＳＢのＦＳモードにおいて差動信号ＤＰ、ＤＭを用いてデータの受信処理を行うための回路である。この受信回路３０は、差動レシーバ３２と第１、第２のシングルエンドレシーバ３４、３６を含む。
【００４５】
差動レシーバ３２（差動コンパレータ）は、ＤＰ、ＤＭのパッドを介して入力される差動信号を差動増幅して、データ信号ＤＩＮとして後段の回路（例えばマクロセルＭＣ２内の回路）に出力する。この差動レシーバ３２は、差動信号ＤＰ、ＤＭがその第１、第２の差動入力に入力される演算増幅回路により実現できる。なお差動レシーバ３２は、イネーブル信号ＣＯＭＰＥＮＢにより、その動作がイネーブル又はディスエーブルされる。
【００４６】
シングルエンドレシーバ３４は、ＤＰのパッドを介して入力されるシングルエンドの信号を増幅して、データ信号ＳＥＤＩＮ１として後段の回路（例えばマクロセルＭＣ２内の回路）に出力する。シングルエンドレシーバ３６は、ＤＭのパッドを介して入力されるシングルエンドの信号を増幅して、データ信号ＳＥＤＩＮ２として後段の回路に出力する。これらのシングルエンドレシーバ３４、３６は、例えば入力電圧の立ち上がり時と立ち下がり時とでしきい値が異なるヒステリシス特性を有するバッファ回路などにより実現できる。またシングルエンドレシーバ３４、３６は、イネーブル信号ＳＥＥＮＢ１、ＳＥＥＮＢ２により、その動作がイネーブル又はディスエーブルされる。
【００４７】
プルアップ用の抵抗回路４０は、ＤＰの信号ラインをプルアップするための回路であり、ＤＰのパッド（第１のパッド）に接続される。この抵抗回路４０は、トランジスタ等で実現されるスイッチ素子ＳＵＰ１と、例えば１．５Ｋオームのプルアップ用の抵抗ＲＵＰ１を含む。具体的にはスイッチ素子ＳＵＰ１の一端はＤＰのパッドに接続され、他端は抵抗ＲＵＰ１の一端に接続される。また抵抗ＲＵＰ１の他端は電源ＶＤＤに接続される。
【００４８】
抵抗回路４２は、抵抗回路４０がＤＰの信号ラインに接続されることで形成される寄生容量と等価な寄生容量等を、ＤＭの信号ラインに形成するためのダミーの抵抗回路であり、ＤＭの信号ラインに接続される。この抵抗回路４２は、抵抗回路４０のスイッチ素子ＳＵＰ１、抵抗ＲＵＰ１と同一構成（同一のゲート長・ゲート幅、同一の抵抗）のスイッチ素子ＳＵＰ２、抵抗ＲＵＰ２を含む。具体的にはスイッチ素子ＳＵＰ２の一端はＤＭのパッドに接続され、他端は抵抗ＲＵＰ２の一端に接続される。
【００４９】
なお図３では抵抗ＲＵＰ１、ＲＵＰ２が電源ＶＤＤ側に設けられているが、スイッチ素子ＳＵＰ１、ＳＵＰ２の方を電源ＶＤＤ側に設けるようにしてもよい。
【００５０】
抵抗制御回路５０、５２は抵抗回路４０、４２の制御用の回路である。具体的には抵抗制御回路５０、５２は、スイッチ素子ＳＵＰ１、ＳＵＰ２のオン・オフを制御する信号ＲＵＰＳＷ１、ＲＵＰＳＷ２を生成して抵抗回路４０、４２に出力する。
【００５１】
なお抵抗制御回路５０は、前段の回路（例えばマクロセルＭＣ２内の回路）からのプルアップイネーブル信号ＲＵＰＥＮＢ１に基づいて信号ＲＵＰＳＷ１を出力し、スイッチ素子ＳＵＰ１のオン・オフを制御する。一方、抵抗制御回路５２は、前段の回路からのプルアップイネーブル信号ＲＵＰＥＮＢ２に基づいて信号ＲＵＰＳＷ２を出力し、スイッチ素子ＳＵＰ２のオン・オフを制御する。
【００５２】
図４（Ａ）に送信回路１０（ＦＳ用）の具体的な回路構成例を示す。送信ドライバ１２は、電源ＶＤＤ、ＶＳＳ（広義には第１、第２の電源）間に直列接続されたＰ型トランジスタＴＰＴＲ１とＮ型トランジスタＴＮＴＲ１を含む。そしてその出力ノードＴＮ１とＤＰのノードとの間にダンピング抵抗ＲＤＰ１が設けられる。送信ドライバ１４は、電源ＶＤＤ、ＶＳＳ間に直列接続されたＰ型トランジスタＴＰＴＲ２とＮ型トランジスタＴＮＴＲ２を含む。そしてその出力ノードＴＮ２とＤＭのノードとの間にダンピング抵抗ＲＤＰ２が設けられる。
【００５３】
送信制御回路２２は、前段の回路から信号ＤＯＵＴ１、ＯＵＴＤＩＳを受け、図４（Ｂ）に示す真理値表にしたがった論理演算を行って、送信ドライバ１２に信号ＯＰ１、ＯＮ１を出力する。送信制御回路２４は、前段の回路から信号ＤＯＵＴ２、ＯＵＴＤＩＳを受け、図４（Ｂ）に示す真理値表にしたがった論理演算を行って、送信ドライバ１４に信号ＯＰ２、ＯＮ２を出力する。例えばＯＵＴＤＩＳがローレベル（Ｌレベル）であるとする。すると、ＤＯＵＴ１がローレベルの場合はＤＰがローレベルになり、ＤＯＵＴ１がハイレベル（Ｈレベル）の場合はＤＰがハイレベルになる。またＤＯＵＴ２がローレベルの場合はＤＭがローレベルになり、ＤＯＵＴ２がハイレベルの場合はＤＭがハイレベルになる。一方、ＯＵＴＤＩＳがハイベルの場合にはＤＰ、ＤＭは共にハイインピーダンス状態になる。
【００５４】
図５に差動レシーバ３２（ＦＳ用）の具体的な回路構成例を示す。この差動レシーバ３２は演算増幅回路１２０、１２２と、出力回路１２４と、インバータ回路１２６、１２８と基準電圧発生回路１３０を含む。なおこれらの一部を省略する構成としてもよい。
【００５５】
ここで演算増幅回路１２０は、カレントミラー回路を構成するトランジスタＴＡ１、ＴＡ２と、差動対を構成するトランジスタＴＡ３、ＴＡ４と、電流源を構成するトランジスタＴＡ５を含む。演算増幅回路１２２は、カレントミラー回路を構成するトランジスタＴＡ６、ＴＡ７と、差動対を構成するトランジスタＴＡ８、ＴＡ９と、電流源を構成するトランジスタＴＡ１０を含む。出力回路１２４は、駆動用のトランジスタＴＡ１１と、ＴＡ１１に直列接続され電流源を構成するトランジスタＴＡ１２を含む。また出力回路１２４は、イネーブル信号ＥＮＢ（ＣＯＭＰＥＮＢ）がローレベル（ノンアクティブ）の場合に、出力回路１２４の出力ノードＮＡ５を所定電圧（ＶＤＤ）に設定するためのトランジスタＴＡ１３を含む。
【００５６】
信号ＤＰ、ＤＭ（第１、第２の信号）は、演算増幅回路１２０の第１、第２の差動入力であるトランジスタＴＡ３、ＴＡ４のゲートに入力される。演算増幅回路１２０の出力ノードＮＡ２、ＮＡ１からの出力信号は、演算演算回路１２２の第１、第２の差動入力であるトランジスタＴＡ８、ＴＡ９のゲートに入力される。演算演算回路１２２の出力ノードＮＡ４からの出力信号は、出力回路１２４のトランジスタＴＡ１１のゲートに入力される。そして出力回路１２４の出力ノードＮＡ５からの出力信号は、トランジスタＴＡ１４、ＴＡ１５により構成されるインバータ回路１２６とトランジスタＴＡ１６、ＴＡ１７により構成されるインバータ回路１２８によりバッファリングされて、信号ＤＩＮとして出力される。
【００５７】
基準電圧発生回路１３０は、コンパレータイネーブル信号ＣＯＭＰＥＮＢを受け、基準電圧ＶＲＥＦとイネーブル信号ＥＮＢを出力する。基準電圧ＶＲＥＦは、電流源を構成するトランジスタＴＡ５、ＴＡ１０、ＴＡ１２のゲートに入力される。イネーブル信号ＥＮＢは出力回路１２４のトランジスタＴＡ１３のゲートに入力される。
【００５８】
図６に基準電圧発生回路１３０の回路構成例を示す。基準電圧発生回路１３０は、カレントミラー回路を構成するトランジスタＴＢ１、ＴＢ２と、ＴＢ１に直列接続されるトランジスタＴＢ３と、ＴＢ２に直列接続されるトランジスタＴＢ４と、出力ノードＮＢ２に接続されるトランジスタＴＢ５を含む。
【００５９】
信号ＣＯＭＰＥＮＢがハイレベル（アクティブ）になると、トランジスタＴＢ３がオンになり、トランジスタＴＢ１、ＴＢ３に流れる電流がカレントミラーによりトランジスタＴＢ２、ＴＢ４に流れ、これにより基準電圧ＶＲＥＦが出力ノードＮＢ２に発生する。一方、信号ＣＯＭＰＥＮＢがローレベル（ノンアクティブ）になると、トランジスタＴＢ３がオフになると共にトランジスタＴＢ５がオンになる。これにより基準電圧ＶＲＥＦがＶＳＳ（例えば０Ｖ）に設定されると共に基準電圧発生回路１３０において流れる電流が遮断される。また基準電圧ＶＲＥＦがＶＳＳになることで図５のトランジスタＴＡ５、ＴＡ１０、ＴＡ１２がオフになり、演算増幅回路１２０、１２２、出力回路１２４において流れる電流が遮断される。また信号ＥＮＢがローレベルになり、図５のトランジスタＴＡ１３がオンになることで、出力ノードＮＡ５の電圧がＶＤＤになり、ＮＡ５の電圧が不安定になることによる貫通電流の発生が防止される。以上により、差動レシーバ３２のディスエーブル時に差動レシーバ３２において流れる電流を遮断（制限）することができ、低消費電力化を図れる。
【００６０】
図７にシングルエンドレシーバ３４（３６）の回路構成例を示す。このシングルエンドレシーバ３４（３６）は、しきい値電圧のヒステリシス特性を有するバッファ回路１４０と、インバータ回路１４２、１４４を含む。
【００６１】
バッファ回路１４０は、直列接続されたトランジスタＴＣ１、ＴＣ２、ＴＣ３、ＴＣ４と、ＴＣ１に並列接続されたトランジスタＴＣ５と、ＴＣ２に並列接続されたトランジスタＴＣ６と、ＴＣ４に並列接続されたトランジスタＴＣ７を含む。またバッファ回路１４０は、トランジスタＴＣ８、ＴＣ９、ＴＣ１０、ＴＣ１１で構成されるフィードバック用のインバータ回路１４１を含む。なおトランジスタＴＣ１のゲートにはＶＳＳが接続され、ＴＣ４のゲートにはＶＤＤが接続される。
【００６２】
信号ＤＰ（ＤＭ）はバッファ回路１４０のトランジスタＴＣ２、ＴＣ３のゲートに入力される。そしてバッファ回路１４０の出力ノードＮＣ２からの出力信号は、トランジスタＴＣ１２、ＴＣ１３により構成されるインバータ回路１４２とトランジスタＴＣ１４，ＴＣ１５により構成されるインバータ回路１４４によりバッファリングされて、信号ＳＥＤＩＮ１（ＳＥＤＩＮ２）として出力される。
【００６３】
なお信号ＤＰ（ＤＭ）がローレベルの場合には、出力ノードＮＣ２の電圧がローレベルになり、トランジスタＴＣ５がオンになり、Ｐ型トランジスタ側のオン抵抗が小さくなる。これにより、信号ＤＰ（ＤＭ）がローレベルからハイレベルに変化する時のしきい値電圧が高くなる。一方、信号ＤＰ（ＤＭ）がハイレベルの場合には、出力ノードＮＣ２の電圧がハイレベルになり、トランジスタＴＣ７がオンになり、Ｎ型トランジスタ側のオン抵抗が小さくなる。これにより、信号ＤＰ（ＤＭ）がハイレベルからローレベルに変化する時のしきい値電圧が低くなる。以上によりバッファ回路１４０のしきい値電圧のヒステリシス特性が実現される。
【００６４】
またイネーブル信号ＳＥＥＮＢ１がローレベル（ノンアクティブ）になると、トランジスタＴＣ６がオンになり、ノードＮＣ１の電圧がＶＤＤに設定される。またトランジスタＴＣ１１がオンになり、ノードＮＣ２の電圧がＶＳＳに設定される。またトランジスタＴＣ８がオフになり、フィードバック用インバータ回路１４１において流れる電流が遮断される。以上により、シングルエンドレシーバ３４（３６）のディスエーブル時にシングルエンドレシーバ３４（３６）において流れる電流を遮断（制限）することができ、低消費電力化を図れる。
【００６５】
４．マクロセルＭＣ１の回路構成
さて図１の集積回路装置を回路基板に実装する際に以下のような課題がある。例えば図８（Ａ）では、集積回路装置５００とＵＳＢのレセプタクル５１０が、回路基板５２０の一方の面側（例えば表面側）に同面実装されている。そして図８（Ａ）のＥ１に示すような配線ＷＬ１、ＷＬ２により、集積回路装置５００のＤＰ、ＤＭ用の端子と、レセプタクル５１０のＤＰ、ＤＭ用の端子とが接続される。なおＵＳＢのレセプタクル５１０としては、Ａレセプタクル、Ｂレセプタクル、Mini-Ａレセプタクル、Mini-Ｂレセプタクル、Mini-ＡＢレセプタクルなどがある。
【００６６】
一方、図８（Ｂ）では、集積回路装置５００が回路基板５２０の一方の面側（例えば表面側）に実装され、ＵＳＢのレセプタ５１０が回路基板５２０の他方の面側（例えば裏面側）に逆面実装されている。そして図８（Ｂ）のＥ２に示すような配線ＷＬ１、ＷＬ２により、集積回路装置５００のＤＰ、ＤＭ用の端子と、レセプタクル５１０のＤＰ、ＤＭ用の端子が接続される。
【００６７】
この場合に図８（Ａ）のＥ３と図８（Ｂ）のＥ４を比べれば明らかなように、集積回路装置５００のＤＰ、ＤＭの端子の配列が異なっている。従って図８（Ａ）（Ｂ）のような種々の実装形態に対応するためには、ＤＰ、ＤＭの端子の配列や、これらの端子にボンディングワイヤを介して接続されるパッドの配列を変更する必要がある。
【００６８】
ところがこれまでの集積回路装置では、ＤＰ、ＤＭのパッド配列は固定されていた。従って図８（Ａ）（Ｂ）に示すような同面実装や逆面実装などの種々の実装形態に対応するためには、配線ＷＬ１、ＷＬ２をクロスさせることなどが必要になり、これはＤＰ、ＤＭの信号特性の劣化を招く。
【００６９】
また図８（Ａ）のＥ３の配列でＤＰ、ＤＭのパッドが配置される集積回路装置（マクロセル）と図８（Ｂ）のＥ４の配列でＤＰ、ＤＭのパッドが配置される集積回路装置とを、別機種で用意すると、製品の高コスト化や開発期間の長期化を招く。またＤＰ、ＤＭのパッドの配列を変更することで、ＤＰ、ＤＭの信号特性の対称性が崩れ、信号特性が劣化してしまうおそれもある。
【００７０】
そこで本実施形態では、マクロセルＭＣ１のレイアウトを変更することなく、セレクト信号を入力するだけで、ＤＰ、ＤＭの配列を任意に変更できる手法を採用している。図９にこの手法を用いたマクロセルＭＣ１の回路構成例を示す。なお図９では、図３で説明した各種のイネーブル信号（ＯＵＴＤＩＳ、ＣＯＭＰＥＮＢ等）については省略して示してある。
【００７１】
図９において、第１のパッドＰ１は、差動信号を構成する信号ＤＰ、ＤＭ（広義には第１、第２の信号）のいずれか一方用のパッドであり、第２のパッドＰ２は、この一方とは異なる他方用のパッドである。例えば第１のモードでは、パッドＰ１がＤＰ用のパッドになり、パッドＰ２がＤＭ用のパッドになる。一方、第２のモードでは、パッドＰ１がＤＭ用のパッドになり、パッドＰ２がＤＰ用のパッドになる。これらの第１、第２のモードはセレクト信号ＳＥＬにより切り替えることができ、信号ＳＥＬが第１のレベル（例えばハイレベル）の場合には第１のモードになり、信号ＳＥＬが第２のレベル（例えばローレベル）の場合には第２のモードになる。
【００７２】
第１のシングルエンドレシーバ３４は、パッドＰ１（Ｐ１に接続される信号ラインＳＬ１）に、その入力が接続され、第１の出力信号ＳＥＱ１を出力する。第２のシングルエンドレシーバ３６は、パッドＰ２（Ｐ２に接続される信号ラインＳＬ２）に、その入力が接続され、第２の出力信号ＳＥＱ２を出力する。なお、これらのシングルエンドレシーバ３４、３６としては例えば図７のような構成の回路を採用できるが、これに限定されない。
【００７３】
セレクタ１００は、セレクト信号ＳＥＬが第１のレベルになり第１のモードに設定されると、シングルエンドレシーバ３４、３６からの出力信号ＳＥＱ１、ＳＥＱ２のうちＳＥＱ１を第１のセレクタ出力信号ＳＬＱ１として出力する。また出力信号ＳＥＱ２を第２のセレクタ出力信号ＳＬＱ２として出力する。一方、セレクト信号ＳＥＬが第２のレベルになり第２のモードに設定されると、出力信号ＳＥＱ１、ＳＥＱ２のうちＳＥＱ２をセレクタ出力信号ＳＬＱ１として出力する。また出力信号ＳＥＱ１をセレクタ出力信号ＳＬＱ２として出力する。
【００７４】
以上のようにすれば、第１のモードでは、パッドＰ１からの信号（例えばＤＰ）がシングルエンドレシーバ３４により増幅されてセレクタ出力信号ＳＬＱ１として出力され、パッドＰ２からの信号（例えばＤＭ）がシングルエンドレシーバ３６により増幅されてセレクタ出力信号ＳＬＱ２として出力されるようになる。一方、パッド配列が変更されて第２のモードになると、パッドＰ２からの信号（例えばＤＰ）がシングルエンドレシーバ３６により増幅されてセレクタ出力信号ＳＬＱ１として出力され、パッドＰ１からの信号（例えばＤＭ）がシングルエンドレシーバ３４により増幅されてセレクタ出力信号ＳＬＱ２として出力されるようになる。
【００７５】
また図９において差動レシーバ３２は、パッドＰ１に、その第１の差動入力が接続され、パッドＰ２に、その第２の差動入力が接続され、第１の出力信号ＤＦＱと、ＤＦＱの反転信号である第２の出力信号ＸＤＦＱを出力する。この差動レシーバ３２としては、例えば図５のような構成の回路を採用できるが、これに限定されない。また出力信号ＸＤＦＱとしては、例えば図５のインバータ回路１２６の出力信号などを用いることができる。
【００７６】
セレクタ１０２は、第１のモードに設定されると、差動レシーバ３２からの出力信号ＤＦＱ、ＸＤＦＱのうちＤＦＱをセレクタ出力信号ＳＬＱ３として出力する。一方、第２のモードに設定されると、差動レシーバ３２からの出力信号ＤＦＱ、ＸＤＦＱのうちＸＤＦＱをセレクタ出力信号ＳＬＱ３として出力する。
【００７７】
以上のようにすれば、第１のモードでは、パッドＰ１からの信号（例えばＤＰ）を正極性としパッドＰ２からの信号（例えばＤＭ）を負極性とする適正な差動増幅が差動レシーバ３２により行われて、差動増幅された信号がセレクタ出力信号ＳＬＱ３として出力されるようになる。一方、パッド配列が変更されて第２のモードになると、パッドＰ２からの信号（例えばＤＰ）を正極性としパッドＰ１からの信号（例えばＤＭ）を負極性とする適正な差動増幅が差動レシーバ３２により行われて、差動増幅された信号がセレクタ出力信号ＳＬＱ３として出力されるようになる。
【００７８】
なおセレクト信号ＳＥＬの設定情報は、例えば集積回路装置（マクロセルＭＣ１）が内蔵するＥＥＰＲＯＭ（書き換え可能な不揮発性メモリ）やマスクＲＯＭなどのメモリ（レジスタ）に記憶できる。例えばパッドＰ１をＤＰ用のパッドに設定し、パッドＰ２をＤＭ用のパッドに設定する場合には、セレクト信号ＳＥＬを例えば第１のレベルにして第１のモードに設定する情報を、上記メモリに記憶すればよい。また例えばパッドＰ１をＤＭ用のパッドに設定し、パッドＰ２をＤＰ用のパッドに設定する場合には、セレクト信号ＳＥＬを例えば第２のレベルにして第２のモードに設定する情報を、上記メモリに記憶すればよい。
【００７９】
また図９のマクロセルＭＣ１は、セレクタ１００からのセレクタ出力信号ＳＬＱ１、ＳＬＱ２や、セレクタ１０２からのセレクタ出力信号ＳＬＱ３を、図１のマクロセルＭＣ２に出力するための出力端子ＴＭ１、ＴＭ２、ＴＭ３を含むことができる。ここでマクロセルＭＣ２は、前述したように、物理層よりも上位層（論理層、リンク層、トランザクション層又はアプリケーション層等）の回路を含むマクロセルである。
【００８０】
そしてセレクタ１００は、第１のモードでは、出力信号ＳＥＱ１をセレクタ出力信号ＳＬＱ１として出力端子ＴＭ１を介してマクロセルＭＣ２に出力する。また出力信号ＳＥＱ２をセレクタ出力信号ＳＬＱ２として出力端子ＴＭ２を介してマクロセルＭＣ２に出力する。一方、第２のモードでは、出力信号ＳＥＱ２をセレクタ出力信号ＳＬＱ１として出力端子ＴＭ１を介してマクロセルＭＣ２に出力する。また出力信号ＳＥＱ１をセレクタ出力信号ＳＬＱ２として出力端子ＴＭ２を介してマクロセルＭＣ２に出力する。
【００８１】
またセレクタ１０２は、第１のモードでは、出力信号ＤＦＱをセレクタ出力信号ＳＬＱ３として出力端子ＴＭ３を介してマクロセルＭＣ２に出力する。一方、第２のモードでは、出力信号ＸＤＦＱをセレクタ出力信号ＳＬＱ３として出力端子ＴＭ３を介してマクロセルＭＣ２に出力する。
【００８２】
そしてこれらの出力端子ＴＭ１、ＴＭ２、ＴＭ３は、マクロセルＭＣ１の四辺のうちの一辺（例えば第３の辺）に沿って設けられる受信インターフェース領域に固定配置することができる。なお出力端子ＴＭ１、ＴＭ２、ＴＭ３は、実際のレイアウトでは信号ＳＬＱ１、ＳＬＱ２、ＳＬＱ３の出力用の信号ラインであり、例えばマクロセルＭＣ１のネットリストなどにおいて出力端子として定義されるものである。また受信インターフェース領域については後述する。
【００８３】
出力端子ＴＭ１を介して出力されるセレクタ出力信号ＳＬＱ１は、図３の信号ＳＥＤＩＮ１に相当し、出力端子ＴＭ２を介して出力されるセレクタ出力信号ＳＬＱ２は、信号ＳＥＤＩＮ２に相当する。また出力端子ＴＭ３を介して出力されるセレクタ出力信号ＳＬＱ３は、信号ＤＩＮに相当する。なおこれらの信号のバッファリングを行うバッファ回路や電圧のレベルシフトを行う回路などを、セレクタ１００、１０２内に含めることができる。
【００８４】
また図９においてセレクタ１０４は、第１のモードに設定されると、第１、第２の入力信号ＳＬＩ４、ＳＬＩ５（データ信号）のうちＳＬＩ４を第１のセレクタ出力信号ＳＬＱ４として出力する。また入力信号ＳＬＩ５を第２のセレクタ出力信号ＳＬＱ５として出力する。一方、第２のモードに設定されると、入力信号ＳＬＩ４、ＳＬＩ５のうちＳＬＩ５をセレクタ出力信号ＳＬＱ４として出力する。また入力信号ＳＬＩ４をセレクタ出力信号ＳＬＱ５として出力する。
【００８５】
また送信ドライバ１２には、セレクタ出力信号ＳＬＱ４に対応した送信制御信号ＯＰ１、ＯＮ１が入力され、パッドＰ１に接続される信号ラインＳＬ１を駆動する。また送信ドライバ１４には、セレクタ出力信号ＳＬＱ５に対応した送信制御信号ＯＰ２、ＯＮ２が入力され、パッドＰ２に接続される信号ラインＳＬ２を駆動する。
【００８６】
以上のようにすれば、第１のモードでは、パッドＰ１（例えばＤＰ）に接続される信号ラインＳＬ１が、入力信号ＳＬＩ４に応じた電圧で送信ドライバ１２により駆動され、パッドＰ２（例えばＤＭ）に接続される信号ラインＳＬ２が、入力信号ＳＬＩ５に応じた電圧で送信ドライバ１４により駆動されるようになる。一方、パッド配列が変更されて第２のモードになると、パッドＰ２（例えばＤＰ）に接続される信号ラインＳＬ２が、入力信号ＳＬＩ４に応じた電圧で送信ドライバ１４により駆動され、パッドＰ１（例えばＤＭ）に接続される信号ラインＳＬ１が、入力信号ＳＬＩ５に応じた電圧で送信ドライバ１２により駆動されるようになる。
【００８７】
また図９において、セレクタ１０６は、第１のモードに設定されると、第１、第２の入力信号ＳＬＩ６、ＳＬＩ７のうちＳＬＩ６を第１のセレクタ出力信号ＳＬＱ６として出力する。また入力信号ＳＬＩ７を第２のセレクタ出力信号ＳＬＱ７として出力する。一方、第２のモードに設定されると、入力信号ＳＬＩ６、ＳＬＩ７のうちＳＬＩ７をセレクタ出力信号ＳＬＱ６として出力する。また入力信号ＳＬＩ６をセレクタ出力信号ＳＬＱ７として出力する。
【００８８】
また第１の抵抗回路４０には、セレクタ出力信号ＳＬＱ６に対応した抵抗制御信号ＲＵＰＳＷ１が入力される。そしてこの第１の抵抗回路４０は、パッドＰ１に接続されるプルアップ用又はダミー用の抵抗回路として機能する。また第２の抵抗回路４２には、セレクタ出力信号ＳＬＱ７に対応した抵抗制御信号ＲＵＰＳＷ２が入力される。そしてこの第２の抵抗回路４２は、パッドＰ２に接続されるプルアップ用又はダミー用の抵抗回路として機能する。
【００８９】
以上のようにすれば、第１のモードでは、パッドＰ１（例えばＤＰ）に接続される抵抗回路４０が、例えばプルアップ用の抵抗回路として機能し、信号ラインＳＬ１がプルアップされ、パッドＰ２（例えばＤＭ）に接続される抵抗回路４２が例えばダミー用の抵抗回路として機能するようになる。一方、パッド配列が変更されて第２のモードになると、パッドＰ２（例えばＤＰ）に接続される抵抗回路４２が例えばプルアップ用の抵抗回路として機能し、パッドＰ１（例えばＤＭ）に接続される抵抗回路４０が例えばダミー用の抵抗回路として機能するようになる。これにより、パッド配列が変更されても適正なプルアップ制御を実現できるようになる。
【００９０】
また図９のマクロセルＭＣ１は、図１のマクロセルＭＣ２から入力信号ＳＬＩ４、ＳＬＩ５，ＳＬＩ６、ＳＬＩ７を入力するための入力端子ＴＭ４、ＴＭ５、ＴＭ６、ＴＭ７を含むことができる。
【００９１】
そしてセレクタ１０４は、第１のモードでは、入力端子ＴＭ４を介して入力された入力信号ＳＬＩ４をセレクタ出力信号ＳＬＱ４として出力する。また入力端子ＴＭ５を介して入力された入力信号ＳＬＩ５をセレクタ出力信号ＳＬＱ５として出力する。一方、第２のモードでは、入力端子ＴＭ５を介して入力された入力信号ＳＬＩ５をセレクタ出力信号ＳＬＱ４として出力する。また入力端子ＴＭ４を介して入力された入力信号ＳＬＩ４をセレクタ出力信号ＳＬＱ５として出力する。
【００９２】
またセレクタ１０６は、第１のモードでは、入力端子ＴＭ６を介して入力された入力信号ＳＬＩ６をセレクタ出力信号ＳＬＱ６として出力する。また入力端子ＴＭ７を介して入力された入力信号ＳＬＩ７をセレクタ出力信号ＳＬＱ７として出力する。一方、第２のモードでは、入力端子ＴＭ７を介して入力された入力信号ＳＬＩ７をセレクタ出力信号ＳＬＱ６として出力する。また入力端子ＴＭ６を介して入力された入力信号ＳＬＩ６をセレクタ出力信号ＳＬＱ７として出力する。
【００９３】
そしてこれらの入力端子ＴＭ４〜ＴＭ７は、マクロセルＭＣ１の四辺のうちの一辺（例えば第３の辺）に沿って設けられる送信インターフェース領域に固定配置することができる。なお入力端子ＴＭ４〜ＴＭ７は実際のレイアウトでは信号ＳＬＱ４〜ＳＱ７の入力用の信号ラインであり、例えばマクロセルＭＣ１のネットリストなどにおいて入力端子として定義されるものである。また送信インターフェース領域については後述する。
【００９４】
また入力端子ＴＭ４を介して入力される信号ＳＬＩ４は、図３の信号ＤＯＵＴ１に相当し、入力端子ＴＭ５を介して入力される信号ＳＬＩ５は、信号ＤＯＵＴ２に相当する。また入力端子ＴＭ６を介して入力される信号ＳＬＩ６は、信号ＲＵＰＥＮＢ１に相当し、入力端子ＴＭ７を介して入力される信号ＳＬＩ７は、信号ＲＵＰＥＮＢ２に相当する。
【００９５】
図１０（Ａ）に図９のセレクタ１００、１０４、１０６の回路構成例を示し、図１０（Ｂ）にセレクタ１０２の回路構成例を示す。なおこれらのセレクタの構成は図１０（Ａ）（Ｂ）に示す構成に限定されない。
【００９６】
例えば図１０（Ａ）において、信号Ｓ（セレクト信号ＳＥＬ）がハイレベル（第１のレベル）になると、Ｐ型トランジスタとＮ型トランジスタにより構成されるトランスファー・ゲートＴＧ１、ＴＧ４がオン（導通状態）になり、ＴＧ２、ＴＧ３がオフ（非導通状態）になる。これにより、入力信号Ｉ１、Ｉ２が、各々、出力信号Ｑ１、Ｑ２として出力されるようになる。一方、信号Ｓがローレベル（第２のレベル）になると、トランスファー・ゲートＴＧ２、ＴＧ３がオンになり、ＴＧ１、ＴＧ４がオフになる。これにより、入力信号Ｉ１，Ｉ２が、各々、出力信号Ｑ２、Ｑ１として出力されるようになる。
【００９７】
また図１０（Ｂ）において、信号Ｓがハイレベルになると、入力信号Ｉ１が選択されて出力信号Ｑとして出力され、信号Ｓがローレベルになると、入力信号Ｉ２が選択されて出力信号Ｑとして出力されるようになる。
【００９８】
以上のように説明した図９のマクロセルＭＣ１によれば、マクロセルＭＣ１のレイアウト等を変更することなく、セレクト信号ＳＥＬの設定を変えるだけで、ＤＰ、ＤＭのパッド配列を任意に変更できる。
【００９９】
例えばセレクト信号を第１のレベルにして第１のモードに設定すれば、パッドＰ１をＤＰ用のパッドとして使用でき、パッドＰ２をＤＭ用のパッドとして使用できる。一方、セレクト信号を第２のレベルにして第２のモードに設定すれば、パッドＰ２をＤＰ用のパッドとして使用でき、パッドＰ１をＤＭ用のパッドとして使用できる。これにより図８（Ａ）（Ｂ）のような種々の実装形態に柔軟に対応できる。
【０１００】
そしてこのようにパッド配列が変更されても、本実施形態によれば、端子ＴＭ１、ＴＭ４、ＴＭ６についてはＤＰ用の専用端子として使用でき、端子ＴＭ２、ＴＭ５、ＴＭ７についてはＤＭ用の専用端子として使用できるという利点がある。また端子ＴＭ３からは、信号ＤＰ、ＤＭの極性に応じた適正な差動増幅信号を出力できるという利点がある。
【０１０１】
即ち本実施形態によれば、第１のモードでは、パッドＰ１に入力された信号ＤＰに対応する信号ＳＬＱ１が、端子ＴＭ１から出力され、パッドＰ２に入力された信号ＤＭに対応する信号ＳＬＱ２が、端子ＴＭ２から出力される。そして第２のモードに設定されてパッド配列が変更された場合にも、パッドＰ２に入力された信号ＤＰに対応する信号ＳＬＱ１が、端子ＴＭ１から出力され、パッドＰ１に入力された信号ＤＭに対応する信号ＳＬＱ２が、端子ＴＭ２から出力される。即ち第１、第２のモードのいずれのモードに設定されたとしても、常に、端子ＴＭ１からは信号ＤＰに対応する信号が出力され、端子ＴＭ２からは信号ＤＭに対応する信号が出力されるようになる。
【０１０２】
また本実施形態によれば、第１のモードでは、パッドＰ１に入力された信号ＤＰを正極性とし、パッドＰ２に入力された信号ＤＭを負極性として差動増幅された信号ＳＬＱ３が、端子ＴＭ３から出力される。そして第２のモードに設定されてパッド配列が変更された場合にも、パッドＰ２に入力された信号ＤＰを正極性とし、パッドＰ１に入力された信号ＤＭを負極性として差動増幅された信号ＳＬＱ３が、端子ＴＭ３から出力されるようになる。即ち第１、第２のモードのいずれのモードに設定されたとしても、常に、端子ＴＭ３からは信号ＤＰ、ＤＭの極性に応じた適正な差動増幅信号が出力されるようになる。
【０１０３】
また本実施形態によれば、第１のモードでは、端子ＴＭ４から入力されたＤＰ用の入力信号ＳＬＩ４に基づいて、ＤＰ用のパッドＰ１の信号ラインＳＬ１が駆動され、端子ＴＭ５から入力されたＤＭ用の入力信号ＳＬＩ５に基づいて、ＤＭ用のパッドＰ２の信号ラインＳＬ２が駆動される。そして第２のモードに設定されてパッド配列が変更された場合にも、端子ＴＭ４から入力されたＤＰ用の入力信号ＳＬＩ４に基づいて、ＤＰ用のパッドＰ２の信号ラインＳＬ２が駆動され、端子ＴＭ５から入力されたＤＭ用の入力信号ＳＬＩ５に基づいて、ＤＭ用のパッドＰ１の信号ラインＳＬ１が駆動される。即ち第１、第２のモードのいずれのモードに設定されたとしても、常に、端子ＴＭ４にはＤＰ用の信号を入力でき、端子ＴＭ５にはＤＭ用の信号を入力できるようになる。
【０１０４】
また本実施形態によれば、第１のモードでは、端子ＴＭ６から入力されたＤＰ用の入力信号ＳＬＩ６に基づいて、ＤＰ用のパッドＰ１の信号ラインＳＬ１がプルアップされ、端子ＴＭ７から入力されたＤＭ用の入力信号ＳＬＩ７に基づいて、ＤＭ用のパッドＰ２の信号ラインＳＬ２がプルアップされないようになる。そして第２のモードに設定されてパッド配列が変更された場合にも、端子ＴＭ６から入力されたＤＰ用の入力信号ＳＬＩ６に基づいて、ＤＰ用のパッドＰ２の信号ラインＳＬ２がプルアップされ、端子ＴＭ７から入力されたＤＭ用の入力信号ＳＬＩ７に基づいて、ＤＭ用のパッドＰ１の信号ラインＳＬ１がプルアップされないようになる。即ち第１、第２のモードのいずれのモードに設定されたとしても、常に、端子ＴＭ６にはＤＰ用の信号を入力でき、端子ＴＭ７にはＤＭ用の信号を入力できるようになる。
【０１０５】
以上のように本実施形態によれば、ＤＰ、ＤＭのパッド配列を任意に変更できる一方で、端子ＴＭ１〜ＴＭ７については、それぞれＤＰ用、ＤＭ用の端子として固定できる。従って上位層の回路を含むマクロセルＭＣ２とのインターフェース部分（端子と配線の接続部分）を固定化でき、ＤＰ、ＤＭのパッド配列を変更した場合にも、マクロセルＭＣ２に影響が及ぶのを防止できる。
【０１０６】
また本実施形態では、セレクト信号ＳＥＬの設定を変えるだけで、ＤＰ、ＤＭのパッド配列の変更を実現でき、差動レシーバ３２、シングルエンドレシーバ３４、３６、送信ドライバ１２、１４、抵抗回路４０、４２などの物理層回路のレイアウトを変更する必要がない。従って、信号ＤＰ、ＤＭの良好な信号特性を維持できるという利点がある。
【０１０７】
５．マクロセルＭＣ１のレイアウト
図１１に本実施形態のマクロセルＭＣ１のレイアウト例を示す。なおマクロセルＭＣ１のレイアウトは図１１の例に限定されず、種々の変形実施が可能である。
【０１０８】
図１１のマクロセルＭＣ１は、複数（Ｎ個）のＩ／Ｏセルが配置されるＩ／Ｏ領域を含む。これらの複数のＩ／ＯセルはＩ／Ｏ領域の長手方向に沿って並んで配置される。またＩ／Ｏ領域の外側にはＤＰ、ＤＭ用のパッドＰ１、Ｐ２を含む複数のパッドが配置される。なおＩ／Ｏ領域（Ｉ／Ｏセル）がパッドを含む構成にしてもよい。
【０１０９】
マクロセルＭＣ１の第１の辺ＳＤ１から、ＳＤ１に対向する第３の辺ＳＤ３へと向かう方向を第１の方向ＤＲ１としたとする。すると、送信回路１０が含む送信ドライバ１２、１４は、パッドＰ１、Ｐ２（Ｉ／Ｏ領域）の第１の方向ＤＲ１側に配置される。具体的にＩ／Ｏ領域に隣接するように送信ドライバ１２、１４が配置される。
【０１１０】
また第１の方向ＤＲ１に沿ったラインを第１のラインＳＹＬとする。すると送信ドライバ１２、１４は、ラインＳＹＬを対称軸として線対称（実質的に線対称である場合も含む）に配置される。また送信回路１０（集積回路装置）がダンピング抵抗ＲＤＰ１、ＲＤＰ２を内蔵する場合には、ダンピング抵抗ＲＤＰ１、ＲＤＰ２もラインＳＹＬを対称軸として線対称に配置される。また、パッドＰ１、Ｐ２もラインＳＹＬを対称軸として線対称に配置することができる。
【０１１１】
また本実施形態では受信回路３０が、送信回路１０（送信ドライバ１２、１４）の第１の方向ＤＲ１側に配置される。より具体的には送信回路１０の第１の方向ＤＲ１側に隣接するように受信回路３０が配置される。この受信回路３０は、差動レシーバ３２やシングルエンドレシーバ３４、３６を含む。
【０１１２】
また本実施形態では、送信ドライバ１２、１４の制御用の送信制御回路２２、２４も、送信回路１０の第１の方向ＤＲ１側に配置される。より具体的には送信回路１０の第１の方向ＤＲ１側に隣接するように送信制御回路２２、２４が配置される。そして受信回路３０は、これらの送信制御回路２２、２４の間の領域に配置される。
【０１１３】
なお送信制御回路２２と受信回路３０との間の領域や、送信制御回路２４と受信回路３０との間の領域に、他の回路ブロック（例えば信号のレベルを変換するレベルシフタ等）を配置してもよい。また送信回路１０と、受信回路３０、送信制御回路２２、２４との間の領域に他の回路ブロックを配置することも可能である。
【０１１４】
また本実施形態では、受信回路３０とパッドＰ１、Ｐ２とを接続する信号ラインを配線するための配線領域６０が、送信ドライバ１２と送信ドライバ１４との間の領域に設けられている。なお配線領域６０を他の場所（例えば送信ドライバ１２の左側や送信ドライバ１４の右側）に設ける構成とすることもできる。
【０１１５】
またマクロセルＭＣ１の第２の辺ＳＤ２から、ＳＤ２に対向する第４の辺ＳＤ４へと向かう方向を第２の方向ＤＲ２としたとする。すると本実施形態では、抵抗回路４０と抵抗回路４２が、送信回路１０（送信ドライバ１２、１４）の第２の方向ＤＲ２側に配置される。そして抵抗制御回路５０、５２が、抵抗回路４０、４２の第１の方向ＤＲ１側に配置される。
【０１１６】
なお図１１ではマクロセルＭＣ１の左側辺が第２の辺ＳＤ２となり、右側辺が第４の辺ＳＤ４になっているが、左側辺を第４の辺ＳＤ４、右側辺を第２の辺ＳＤ２としてもよい。この場合には、送信回路１０の左側に抵抗回路４０、４２が配置されることになる。また送信回路１０と抵抗回路４０、４２との間の領域や、抵抗回路４０、４２と抵抗制御回路５０、５２の間の領域に、他の回路ブロックを配置してもよい。また抵抗回路４０（及び抵抗制御回路５０）と、抵抗回路４２（及び抵抗制御回路５２）とを、第１のラインＳＹＬを対称軸として線対称に配置することも可能である。
【０１１７】
さて、従来ではＦＳモード用の物理層回路は、ゲートアレイ（シーオブゲート）などの自動配置配線手法により配置されていた。従って、送信回路１０や受信回路３０を構成する回路セルが、集積回路装置の色々な場所に散在してしまうと共にその散在する配置位置も集積回路装置の機種毎に変化してしまう。この結果、差動信号ＤＰ、ＤＭの信号特性も集積回路装置の機種毎に変化してしまい、新たな集積回路装置を製品化する毎にＤＰ、ＤＭの信号特性を再評価しなければならないという課題があった。
【０１１８】
これに対して本実施形態では図１１に示すように、送信回路１０、受信回路３０などの物理層回路が、その配線及び回路セル配置が固定化されるハードマクロとしてマクロセル化されている。従って、送信回路１０や受信回路３０を構成する回路セルの配置位置が集積回路装置内で散在してしまう事態を防止でき、差動信号ＤＰ、ＤＭの信号特性を機種間で一定に保つことが容易になる。この結果、ＡＳＩＣとして新たな集積回路装置を製品化した場合に、ＤＰ、ＤＭの信号特性を再評価しなくても済むようになり、開発コストの低減化や開発期間の短縮化を図れる。
【０１１９】
またダンピング抵抗ＲＤＰ１、ＲＤＰ２や、抵抗回路４０内のプルアップ抵抗ＲＵＰ１を、集積回路装置の外付けパーツで実現する手法では、ユーザによって千差万別の種類の抵抗が使われる可能性があるため、ＤＰ、ＤＭの信号特性を保証することが難しくなる。これに対して本実施形態では、ダンピング抵抗ＲＤＰ１、ＲＤＰ２やプルアップ抵抗ＲＵＰ１がオンチップの抵抗としてマクロセルＭＣ１内に内蔵される。従って、これらの抵抗を集積回路装置の外付けパーツで実現する手法に比べて、ＤＰ、ＤＭの信号特性を保証することが容易になる。
【０１２０】
なおダンピング抵抗ＲＤＰ１、ＲＤＰ２は、例えば所定の極性の不純物が導入された拡散領域により構成される拡散抵抗により実現できる。このようにすれば、拡散抵抗を構成する拡散領域と基板との間に形成される寄生ダイオードを、ＤＰ、ＤＭの信号ラインの静電保護回路として活用でき、集積回路装置の信頼性を向上できる。即ち拡散抵抗で構成されるダンピング抵抗ＲＤＰ１、ＲＤＰ２を集積回路装置に内蔵することで、ＤＰ、ＤＭの信号特性の保証と集積回路装置の信頼性の向上とを両立できるという利点がある。
【０１２１】
また本実施形態では、送信ドライバ１２、１４を、ラインＳＹＬを対称軸として対称に配置している。従って、パッドＰ１、Ｐ２からの信号ラインについても、ラインＳＹＬを対称軸として線対称に配線でき、これらの信号ラインの配線長を同等にできる。この結果、ＤＰの信号ラインの寄生容量や寄生抵抗とＤＭの信号ラインの寄生容量や寄生抵抗を同等（実質的に同等の場合も含む）にすることができ、ＤＰ、ＤＭの信号特性を向上できる。
【０１２２】
例えば図１２（Ａ）は、送信回路１０や受信回路３０をゲートアレイなどの自動配置配線手法で配置した場合のＤＰ、ＤＭの信号特性（アイパターン）である。図１２（Ａ）では、Ｃ１、Ｃ２に示すようにＤＰ、ＤＭの信号波形の対称性を維持できず、これらの信号のクロスポイントが理想値（例えばフルスイング電圧である３．３Ｖの半分の１．６５Ｖ）からずれてしまう。この結果、例えばＣ３、Ｃ４に示すように、ＤＰ、ＤＭの信号波形と禁止領域（六角形の領域）との間の余裕が少なくなってしまい、良好な信号特性を得ることができない。
【０１２３】
一方、図１２（Ｂ）は、本実施形態の手法で送信回路１０や受信回路３０を配置した場合のＤＰ、ＤＭの信号特性である。図１２（Ｂ）では、Ｃ５、Ｃ６に示すようにＤＰ、ＤＭの信号波形の対称性が維持され、これらの信号のクロスポイントを理想値に近づけることができる。この結果、例えばＣ７、Ｃ８に示すように、ＤＰ、ＤＭの信号波形と禁止領域との間の余裕が大きくなり、良好な信号特性を得ることができる。
【０１２４】
また本実施形態では送信回路１０がパッドＰ１、Ｐ２の第１の方向ＤＲ１側に配置され、受信回路３０が送信回路１０の第１の方向ＤＲ１側に配置されており、これにより、マクロセルＭＣ１のレイアウト面積を格段に小さくできる。
【０１２５】
即ち送信回路１０の送信ドライバ１２、１４は、ＵＳＢのＤＰ、ＤＭラインを駆動する必要があるため、一定の電流駆動能力（例えば１８ｍＡ）が必要になる。従ってパッドＰ１、Ｐ２と送信回路１０とを接続する信号ラインＳＬＴ１、ＳＬＴ２の線幅が細いと、エレクトロンマイグレーションにより信号ラインが切断されてしまうおそれがある。このため、信号ラインＳＬＴ１、ＳＬＴ２の線幅についてはなるべく太くすることが望ましい。
【０１２６】
一方、受信回路３０側においては、ＤＰ、ＤＭの信号は、受信回路３０を構成するＣＭＯＳトランジスタのゲートに入力される。従ってパッドＰ１、Ｐ２と受信回路３０とを接続する配線領域６０内の信号ラインＳＬＲ１、ＳＬＲ２については、送信回路１０側の信号ラインＳＬＴ１、ＳＬＴ２に比べて、その線幅を細くできる。即ち例えばデザインルール上の最小線幅にできる。
【０１２７】
従って例えば図１１とは逆に送信回路１０の方を受信回路３０の第１の方向ＤＲ１側に配置するレイアウトにすると、太い線幅の信号ラインＳＬＴ１、ＳＬＴ２を送信回路１０に接続するための配線領域が必要になってしまう。このため、太い線幅の信号ラインＳＬＴ１、ＳＬＴ２の分だけ、マクロセルＭＣ１の幅（ＳＤ１の長さ）が太くなってしまい、集積回路装置の回路面積が大きくなり製品の高コスト化を招く。
【０１２８】
これに対して本実施形態では図１１に示すように、送信回路１０の第１の方向ＤＲ１側に受信回路３０を配置している。従って、太い線幅の信号ラインＳＬＴ１、ＳＬＴ２については、パッドＰ１、Ｐ２の近くに配置される送信回路１０までにだけ配線すれば済む。この結果、これらの太い線幅の信号ラインＳＬＴ１、ＳＬＴ２の配線領域が要因となってマクロセルＭＣ１の幅が太くなってしまうという事態を防止できる。そして、送信ドライバ１２、１４間に設けられる配線領域６０に配線される信号ラインＳＬＲ１、ＳＬＲ２の線幅は細くできる。従って、配線領域６０の幅が細くなるため、これらの配線領域６０を送信ドライバ１２、１４間に設けても、マクロセルＭＣ１の幅はそれほど太くならない。この結果、集積回路装置の回路面積を小さくでき、製品の低コスト化を実現できる。
【０１２９】
また送信ドライバ１２、１４には大きな電流供給能力が要求されるため、送信ドライバ１２、１４を構成するトランジスタ（図４（Ａ）のＴＰＴＲ１、ＴＮＴＲ１、ＴＰＴＲ２、ＴＮＴＲ２）のサイズ（Ｗ／Ｌ）は大きくする必要がある。従って図１１に示すように、送信ドライバ１２、１４を含む送信回路１０のレイアウト面積は、受信回路３０のレイアウト面積に比べて大きくなる。従って、図１１のように送信回路１０の第１の方向ＤＲ１側に受信回路３０を配置する手法によれば、受信回路３０の両側に空きスペースを形成できる。そして受信回路３０の両側の空きスペースに送信制御回路２２、２４を配置するようにすれば、空きスペースを有効活用でき、レイアウト効率を高めることができる。
【０１３０】
なお図１１では、抵抗回路４０、４２（及び抵抗制御回路５０、５２）については、ラインＳＬＹを対称軸として線対称には配置されていない。この点、ＤＰ、ＤＭの信号ラインの寄生抵抗や寄生容量を同等にする目的のためには、抵抗回路４０、４２についてもＳＬＹに対して線対称に配置することが望ましい。しかしながら、このように線対称に配置すると、抵抗回路４０、４２間の距離が離れてしまう。このため、製造プロセスのばらつきが要因となって、抵抗回路４０の抵抗や寄生容量と抵抗回路４２の抵抗や寄生容量とが同等にならなくなり、ＤＰ、ＤＭの信号特性が劣化するおそれがある。
【０１３１】
これに対して図１１では、抵抗回路４０、４２については線対称に配置せずに、送信回路１０の第２の方向ＤＲ２側に設けている。従って、抵抗回路４０、４２が互いに近くに配置されるようになり、製造プロセスがばらついても、抵抗回路４０の抵抗や寄生容量と抵抗回路４２の抵抗や寄生容量とをほぼ同等にできる。また図１１のＡ１に示すように、本来は必要の無いダミーの配線を設ければ、抵抗回路４０、４２を線対称に配置しなくても、ＤＰ、ＤＭの配線長を同等にできる。この結果、ＤＰ、ＤＭの信号特性が劣化する事態を防止できる。
【０１３２】
６．マクロセルＭＣ１の配置
図１１のレイアウトのマクロセルＭＣ１を用いれば、図１や図１３に示すように、マクロセルＭＣ１を集積回路装置の任意の場所（任意の四辺の任意の場所）に配置できるという利点がある。
【０１３３】
即ち集積回路装置を使用するユーザが、マクロセルＭＣ１を図１のように集積回路装置の下辺に配置するのではなく、図１３のように集積回路装置の右辺に配置することを要求してくる場合がある。このような要求に応えるためには、マクロセルＭＣ１は、集積回路装置の任意の四辺に配置できることが望ましい。またパッドＰ１、Ｐ２がコーナーに配置されると、ＤＰ、ＤＭのボンディングワイヤが配線できなくなったり、ＤＰ、ＤＭのボンディングワイヤの長さに差が生じてしまいＤＰ、ＤＭの負荷バランスが崩れてしまう場合がある。従ってマクロセルＭＣ１は、集積回路装置の四辺の各辺の任意の場所に配置できることが望ましい。
【０１３４】
この点、本実施形態では、マクロセルＭＣ２は、その配線及び回路セル配置が自動配置配線されるマクロセルとなっており、このマクロセルＭＣ２の四辺の内周には、図１３に示すように、Ｉ／Ｏセルが並んで配置されるＩ／Ｏ領域が設けられている。そしてマクロセルＭＣ１のＩ／Ｏ領域の全体が、マクロセルＭＣ２のＩ／Ｏ領域の一部にオーバラップするように、マクロセルＭＣ１が配置される。即ち、マクロセルＭＣ１のＩ／Ｏ領域の長手方向に伸びる上下のラインと、マクロセルＭＣ２のＩ／Ｏ領域の長手方向に伸びる上下のラインとが一致するように、マクロセルＭＣ１が配置される。
【０１３５】
そしてマクロセルＭＣ１の第１の辺ＳＤ１の長さをＬとし、マクロセルＭＣ２のＩ／Ｏ領域に配置されるＩ／Ｏセルのピッチ幅をＰＬとした場合に、Ｌ＝ＰＬ×Ｎ（Ｎは２以上の整数）の関係が成り立つようになっている。
【０１３６】
このようにすることで、マクロセルＭＣ１を集積回路装置（マクロセルＭＣ２）の任意の四辺の任意の場所に配置することが可能になる。そしてＭＣ１は、その配線や回路セル配置が固定されたマクロセルであるため、ＭＣ１を任意の場所に配置しても、ＤＰ、ＤＭの信号特性を一定に保つことができ、信号特性の再評価が不要になるという利点がある。
【０１３７】
７．インターフェース領域
図１１では、マクロセルＭＣ１とＭＣ２との間での信号をやり取りするためのインターフェース領域ＩＦＲＸ、ＩＦＴＸ１、ＩＦＴＸ２、ＩＦＲＣがマクロセルＭＣ１に設けられている。これらのインターフェース領域ＩＦＲＸ、ＩＦＴＸ１、ＩＦＴＸ２、ＩＦＲＣは、マクロセルＭＣ１からの信号をバッファリングしてマクロセルＭＣ２に出力するバッファや、マクロセルＭＣ２からの信号をバッファリングしてマクロセルＭＣ１に入力するバッファなどを含む領域である。
【０１３８】
例えば受信インターフェース領域ＩＦＲＸは、受信回路３０とマクロセルＭＣ２との間で信号をインターフェースするための領域である。この受信インターフェース領域ＩＦＲＸには、例えば図９のセレクタ１００、１０２や、端子ＴＭ１、ＴＭ２、ＴＭ３を配置できる。
【０１３９】
また送信インターフェース領域ＩＦＴＸ１、ＩＦＴＸ２は、送信制御回路２２、２４とマクロセルＭＣ２との間で信号をインターフェースするための領域である。この送信インターフェース領域ＩＦＴＸ１、ＩＦＴＸ２には、例えば図９のセレクタ１０４や、端子ＴＭ４、ＴＭ５を配置できる。
【０１４０】
また抵抗制御インターフェース領域ＩＦＲＣは、抵抗制御回路５０、５２とマクロセルＭＣ２との間で信号をインターフェースするための領域である。この抵抗制御インターフェース領域ＩＦＲＣには、例えば図９のセレクタ１０６や、端子ＴＭ６、ＴＭ７を配置できる。
【０１４１】
本実施形態ではこのようなインターフェース領域ＩＦＲＸ、ＩＦＴＸ１、ＩＦＴＸ２、ＩＦＲＣを、マクロセルＭＣ１の例えば第３の辺（広義にはＭＣ１の四辺のうちのいずれか一辺）に沿って設けている。より具体的には第３の辺に沿って固定配置している。このようにすれば、マクロセルＭＣ１、ＭＣ２間でやり取りされる信号の遅延や受け渡しタイミングを許容範囲内に収めることが容易になり、マクロセルＭＣ２の回路構成や規模が変化した場合にも、安定した回路動作を保証できるようになる。
【０１４２】
即ち、インターフェース領域ＩＦＲＸ、ＩＦＴＸ１、ＩＦＴＸ２、ＩＦＲＣの場所が固定化されていれば、マクロセルＭＣ１、ＭＣ２間の信号ラインの寄生容量を容易に見積もることが可能になる。従って、これらの信号ラインの寄生容量が許容範囲内に収まるように設定して、ソフトマクロであるマクロセルＭＣ２の自動配置配線を行うことが可能になり、信号タイミングの設計を容易化できる。またマクロセルＭＣ２の自動配置配線の際のルーティング条件の設定が容易になり、マクロセルＭＣ２の自動配置配線の配線効率を向上できる。
【０１４３】
８．ＨＳモード
ＵＳＢでは、転送レートが１２ＭｂｐｓであるＦＳ（Full Speed）モードが定義されている。そしてＵＳＢ２．０では、このＦＳモードに加えて、転送レートが４８０ＭｂｐｓであるＨＳ（High Speed）モードが定義されている。
【０１４４】
図１４に、このＨＳモードを実現する場合の物理層回路の構成例を示す。図３と異なるのは、図１４では、ＨＳ用の送信回路７０及びその送信制御回路８２、８４と、ＨＳ用の受信回路９０と、検出回路９８が更に設けられている点である。
【０１４５】
ＨＳ用の送信回路７０は、ＤＰ、ＤＭのパッドに接続され、電流源７６（定電流源）と、第１、第２の送信ドライバ７２、７４（電流ドライバ）を含む。電流源７６は、イネーブル信号ＨＳＥＮＢがアクティブになると、送信ドライバ７２、７４に電流を供給する。
【０１４６】
ＨＳ用の第１、第２の送信制御回路８２、８４は、第１、第２の送信ドライバ７２、７４の制御用の回路である。具体的には送信制御回路８２は、前段の回路から送信データ信号ＨＳＤＯＵＴ１とアウトプットディスイネーブル信号ＨＳＯＵＴＤＩＳを受け、制御信号ＧＣ１を送信ドライバ７２に出力する。送信制御回路８４は、前段の回路から信号ＨＳＤＯＵＴ２とＨＳＯＵＴＤＩＳを受け、制御信号ＧＣ２を送信ドライバ７４に出力する。
【０１４７】
受信回路９０は、ＵＳＢのＨＳモードにおいて受信処理を行うための回路であり、差動レシーバ９２を含む。差動レシーバ９２（差動コンパレータ）は、ＤＰ、ＤＭのパッドを介して入力される差動信号を差動増幅して、データ信号ＨＳＤＩＮとして後段の回路に出力する。この差動レシーバ９２は、差動信号ＤＰ、ＤＭがその第１、第２の差動入力に入力される演算増幅回路により実現できる。なお差動レシーバ９２は、イネーブル信号ＨＳＣＯＭＰＥＮＢにより、その動作がイネーブル又はディスエーブルされる。
【０１４８】
検出回路９８（スケルチ回路）は、ＵＳＢ上の信号（ＤＰ、ＤＭ）が有効なデータなのかノイズなのかを区別するための回路である。より具体的には検出回路９８は、ＵＳＢの信号のピーク値を保持し、信号の包絡線を検波することで、信号の振幅を検出する。そして例えば、その振幅が１００ｍＶ以下であれば信号はノイズであると判断し、１５０ｍＶ以上であれば有効なデータであると判断する。そして有効なデータであると判断した場合には、出力信号ＨＳＳＱをアクティブにする。なお検出回路９８は、イネーブル信号ＨＳＳＱＥＮＢにより、その動作がイネーブル又はディスエーブルされる。
【０１４９】
図１５に送信回路７０の構成例を示す。図１５において、ＩＳは電流源７６に相当し、トランジスタＴＥ１は送信ドライバ７２に相当し、トランジスタＴＥ２は送信ドライバ７４に相当する。
【０１５０】
制御信号ＧＣ１がハイレベル（アクティブ）になると、電流源ＩＳからトランジスタＴＥ１を介してＤＰに電流（定電流）が流れ、ＵＳＢのバスステートがＪ状態になる。一方、制御信号ＧＣ２がハイレベルになると、電流源ＩＳからトランジスタＴＥ２を介してＤＭに電流が流れ、ＵＳＢのバスステートがＫ状態になる。そして、送信データに応じてＵＳＢのバスステートをＪ又はＫ状態にすることで、ＨＳモードでの送信が可能になる。一方、送信（ＨＳ送信）期間以外の期間では、制御信号ＧＣ３がアクティブになり、電流源ＩＳからトランジスタＴＥ３を介してＶＳＳ（ＡＶＳＳ）に電流が流れる。これにより、送信開始時に直ぐに安定した電流を流すことができ、送信回路７０のレスポンスを向上できる。
【０１５１】
ＨＳモードに対応したマクロセルＭＣ１は、図９に示す回路に加えて、図１６の示す回路を含むことができる。
【０１５２】
図１６において差動レシーバ７０は、パッドＰ１にその第１の差動入力が接続され、パッドＰ２にその第２の差動入力が接続され、第１の出力信号ＨＳＤＦＱと、ＨＳＤＦＱの反転信号である第２の出力信号ＨＳＸＤＦＱを出力する。
【０１５３】
セレクタ１１０は、第１のモードでは、差動レシーバ７０からの出力信号ＨＳＤＦＱをセレクタ出力信号ＳＬＱ８として出力する。一方、第２のモードでは、差動レシーバ７０からの出力信号ＨＳＸＤＦＱをセレクタ出力信号ＳＬＱ８として出力する。なお出力信号ＳＬＱ８は出力端子ＴＭ８を介してマクロセルＭＣ２に出力される。
【０１５４】
また図１６においてセレクタ１１２は、第１のモードでは、入力信号ＳＬＩ９、ＳＬＩ１０のうちＳＬＩ９をセレクタ出力信号ＳＬＱ９として出力し、ＳＬＩ１０をセレクタ出力信号ＳＬＱ１０として出力する。一方、第２のモードでは、ＳＬＩ１０をセレクタ出力信号ＳＬＱ９として出力し、ＳＬＩ９をセレクタ出力信号ＳＬＱ１０として出力する。
【０１５５】
また送信ドライバ７２には、セレクタ出力信号ＳＬＱ９に対応した送信制御信号ＧＣ１が入力され、パッドＰ１に接続される信号ラインＳＬ１を駆動する。また送信ドライバ７４には、セレクタ出力信号ＳＬＱ１０に対応した送信制御信号ＧＣ２が入力され、パッドＰ２に接続される信号ラインＳＬ２を駆動する。
【０１５６】
なお図１６では検出回路９８に対応するセレクタは設けられていないが、検出回路９８の回路構成によっては、このようなセレクタを設けるようにしてもよい。
【０１５７】
９．ＯＴＧ（On-The-Go）
ＵＳＢ規格は、パーソナルコンピュータなどのホストとペリフェラルとの間でデータ転送を行うための規格であり、データ転送制御の主導権はホストが有している。一方、ＵＳＢ規格においてペリフェラルであった携帯機器などの電子機器が、ホストを介在させることなくＵＳＢ規格のデータ転送を行うことができれば、ユーザの利便性が向上する。
【０１５８】
このような背景の下、ＯＴＧ規格はＵＳＢ２．０規格の追加規格として策定された。ＯＴＧ規格では、ホスト機能をペリフェラルに持たせるデュアルロールデバイス等についての規格が新たに盛り込まれている。
【０１５９】
図１７に、ＵＳＢのＯＴＧを実現する場合の物理層回路の構成例を示す。図３と異なるのは、図１７ではプルダウン用の第３、第４の抵抗回路４４、４６と、抵抗制御回路５４、５６が更に設けられている点である。即ちＯＴＧにおいてデュアルロールデバイスは、ペリフェラルとしての動作のみならず、ホストとしても動作する。そしてこのホスト動作時（ホストコントローラ２１４が動作している時）に、プルダウン用の抵抗回路４４等が必要になる。
【０１６０】
プルダウン用の抵抗回路４４は、ＤＰの信号ラインをプルダウンするための回路であり、ＤＰのパッド（第１のパッド）に接続される。この抵抗回路４４は、トランジスタ等で実現されるスイッチ素子ＳＤＷ１と、例えば１５Ｋオームのプルダウン用の抵抗ＲＤＷ１を含む。具体的にはスイッチ素子ＳＤＷ１の一端はＤＰのパッドに接続され、他端は抵抗ＲＤＷ１の一端に接続される。また抵抗ＲＤＷ１の他端は電源ＶＳＳに接続される。
【０１６１】
抵抗回路４６は、ＤＭの信号ラインをプルダウンするための回路であり、ＤＭのパッド（第２のパッド）に接続される。この抵抗回路４６は、トランジスタ等で実現されるスイッチ素子ＳＤＷ２と、プルダウン用の抵抗ＲＤＷ２を含む。具体的にはスイッチ素子ＳＤＷ２の一端はＤＭのパッドに接続され、他端は抵抗ＲＤＷ２の一端に接続される。また抵抗ＲＤＷ２の他端は電源ＶＳＳに接続される。
【０１６２】
なお図１７では抵抗ＲＤＷ１、ＲＤＷ２が電源ＶＳＳ側に設けられているが、スイッチ素子ＳＤＷ１、ＳＤＷ２の方を電源ＶＳＳ側に設けるようにしてもよい。
【０１６３】
抵抗制御回路５４、５６は抵抗回路４４、４６の制御用の回路である。具体的には抵抗制御回路５４、５６は、前段の回路（例えばマクロセルＭＣ２内の回路）から、プルダウンイネーブル信号ＲＤＷＥＮＢ１、ＲＤＷＥＮＢ２を受ける。そして、スイッチ素子ＳＤＷ１、ＳＤＷ２のオン・オフを制御する信号ＲＤＷＳＷ１、ＲＤＷＳＷ２を生成して、抵抗回路４４、４６に出力する。
【０１６４】
図１８に、ＵＳＢのＯＴＧ（ＦＳモードのＯＴＧ）を実現する場合のマクロセルＭＣ１の構成例を示す。なおＨＳモードのＯＴＧを実現する場合には、図１８に示す回路に加えて、図１６に示す回路をマクロセルＭＣ１に含ませればよい。
【０１６５】
図１８において、セレクタ１０８は、第１のモードに設定されると、第３、第４の入力信号ＳＬＩ１４、ＳＬＩ１５のうちＳＬＩ１４を第３のセレクタ出力信号ＳＬＱ１４として出力する。また入力信号ＳＬＩ１５を第４のセレクタ出力信号ＳＬＱ１５として出力する。一方、第２のモードに設定されると、入力信号ＳＬＩ１４、ＳＬＩ１５のうちＳＬＩ１５をセレクタ出力信号ＳＬＱ１４として出力する。また入力信号ＳＬＩ１４をセレクタ出力信号ＳＬＱ１５として出力する。
【０１６６】
また第３の抵抗回路４４にはセレクタ出力信号ＳＬＱ１４に対応した抵抗制御信号ＲＤＷＳＷ１が入力され、第３の抵抗回路４４はパッドＰ１に接続される信号ラインＳＬ１のプルダウン用の抵抗回路として機能する。また第４の抵抗回路４６にはセレクタ出力信号ＳＬＱ１５に対応した抵抗制御信号ＲＤＷＳＷ２が入力され、第４の抵抗回路４６はパッドＰ２に接続される信号ラインＳＬ２のプルダウン用の抵抗回路として機能する。
【０１６７】
以上のようにすれば、第１のモードでは、パッドＰ１（例えばＤＰ）に接続される抵抗回路４４が、プルダウン用の抵抗回路として機能し、信号ラインＳＬ１がプルダウンされる。一方、パッド配列が変更されて第２のモードになると、パッドＰ２（例えばＤＰ）に接続される抵抗回路４６が、プルダウン用の抵抗回路として機能し、信号ラインＳＬ２がプルダウンされるようになる。これにより、パッド配列が変更されても、ＯＴＧにおける適正なプルダウン制御を実現できるようになる。
【０１６８】
１０．電子機器
図１９に、本実施形態の集積回路装置（マクロセル）により実現されるデータ転送制御装置を含む電子機器の構成例を示す。この電子機器３００は、本実施形態で説明したデータ転送制御装置３１０（集積回路装置）、ＡＳＩＣなどで構成されるアプリケーション層デバイス３２０、ＣＰＵ３３０、ＲＯＭ３４０、ＲＡＭ３５０、表示部３６０、操作部３７０を含む。なおこれらの機能ブロックの一部を省略する構成としてもよい。
【０１６９】
ここでアプリケーション層デバイス３２０は、例えば、携帯電話のアプリケーションエンジンを実現するデバイスや、情報記憶媒体（ハードディスク、光ディスク）のドライブを制御するデバイスや、プリンタを制御するデバイスや、ＭＰＥＧエンコーダ、ＭＰＥＧデコーダ等を含むデバイスなどである。処理部３３０（ＣＰＵ）はデータ転送制御装置３１０や電子機器全体の制御を行う。ＲＯＭ３４０は制御プログラムや各種データを記憶する。ＲＡＭ３５０は処理部３３０やデータ転送制御装置３１０のワーク領域やデータ格納領域として機能する。表示部３６０は種々の情報をユーザに表示する。操作部３７０はユーザが電子機器を操作するためのものである。
【０１７０】
なお図１９ではＤＭＡバスとＣＰＵバスが分離されているが、これらを共通化してもよい。またデータ転送制御装置３１０を制御する処理部と、電子機器を制御する処理部とを別々に設けてもよい。また本実施形態が適用できる電子機器としては、携帯電話、光ディスクドライブ（ＣＤ−ＲＯＭ、ＤＶＤ）、光磁気ディスクドライブ（ＭＯ）、ハードディスクドライブ、ＴＶ、ＴＶチューナ、ＶＴＲ、ビデオカメラ、オーディオ機器、プロジェクタ、パーソナルコンピュータ、電子手帳、或いはワードプロセッサなどの種々のものがある。
【０１７１】
なお、本発明は本実施形態に限定されず、本発明の要旨の範囲内で種々の変形実施が可能である。
【０１７２】
例えば明細書や図面中の記載において広義又は同義な用語（所与のインターフェース規格、第１の信号、第２の信号、第１のパッド、第２のパッド、第１の電源、第２の電源等）として引用された用語（ＵＳＢ、ＤＰ、ＤＭ、ＤＰのパッド、ＤＭのパッド、ＶＤＤ、ＶＳＳ等）は、明細書や図面中の他の記載においても広義又は同義な用語に置き換えることができる。
【０１７３】
また本発明により実現されるデータ転送制御装置は、図２等で説明した構成に限定されるものではなく、種々の変形実施が可能である。また本発明のマクロセルの回路構成やレイアウトも、図９、図１１、図１６等で説明したものに限定されず、種々の変形実施が可能である。
【図面の簡単な説明】
【０１７４】
【図１】集積回路装置の構成例。
【図２】集積回路装置により実現されるデータ転送制御装置の構成例。
【図３】物理層回路の構成例。
【図４】図４（Ａ）（Ｂ）は送信回路の構成例。
【図５】差動レシーバの構成例。
【図６】基準電圧発生回路の構成例。
【図７】シングルエンドレシーバの構成例。
【図８】図８（Ａ）（Ｂ）は種々の実装形態の説明図。
【図９】マクロセルＭＣ１の構成例。
【図１０】図１０（Ａ）（Ｂ）はセレクタの構成例。
【図１１】マクロセルＭＣ１のレイアウト例。
【図１２】図１２（Ａ）（Ｂ）はＤＰ、ＤＭの信号特性の説明図。
【図１３】マクロセルＭＣ１の配置手法の説明図。
【図１４】ＨＳ用の物理層回路の構成例。
【図１５】ＨＳ用の送信回路の構成例。
【図１６】ＨＳ用のマクロセルＭＣ１の構成例。
【図１７】ＯＴＧ用の物理層回路の構成例。
【図１８】ＯＴＧ用のマクロセルＭＣ１の構成例。
【図１９】電子機器の構成例。
【符号の説明】
【０１７５】
ＭＣ１、ＭＣ２  マクロセル、ＲＤＰ１、ＲＤＰ２  ダンピング抵抗、
ＳＤ１〜ＳＤ４  第１〜第４の辺、ＴＭ１〜ＴＭ１３  出力端子又は入力端子、
１０  送信回路、１２、１４  送信ドライバ、２２、２４  送信制御回路、
３０  受信回路、３２  差動レシーバ、３４、３６  シングルエンドレシーバ、
４０、４２、４４、４６  抵抗回路、５０、５２、５４、５６  抵抗制御回路、
１００、１０２、１０４、１０６、１１０、１１２  セレクタ、
２００  トランシーバ、２１０  転送コントローラ、２２０  バッファコントローラ、
２３０  データバッファ、２４０  インターフェース回路、
【図１】
0004826058.tif 000002
【図２】
0004826058.tif 000003
【図３】
0004826058.tif 000004
【図４】
0004826058.tif 000005
【図５】
0004826058.tif 000006
【図６】
0004826058.tif 000007
【図７】
0004826058.tif 000008
【図８】
0004826058.tif 000009
【図９】
0004826058.tif 000010
【図１０】
0004826058.tif 000011
【図１１】
0004826058.tif 000012
【図１２】
0004826058.tif 000013
【図１３】
0004826058.tif 000014
【図１４】
0004826058.tif 000015
【図１５】
0004826058.tif 000016
【図１６】
0004826058.tif 000017
【図１７】
0004826058.tif 000018
【図１８】
0004826058.tif 000019
【図１９】
0004826058.tif 000020