JP2015043170A - インターフェース回路及びシステム - Google Patents

インターフェース回路及びシステム Download PDF

Info

Publication number
JP2015043170A
JP2015043170A JP2013174857A JP2013174857A JP2015043170A JP 2015043170 A JP2015043170 A JP 2015043170A JP 2013174857 A JP2013174857 A JP 2013174857A JP 2013174857 A JP2013174857 A JP 2013174857A JP 2015043170 A JP2015043170 A JP 2015043170A
Authority
JP
Japan
Prior art keywords
clock
interface
unit
data
selector
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2013174857A
Other languages
English (en)
Inventor
茂 石本
Shigeru Ishimoto
茂 石本
元昭 児山
Motoaki Koyama
元昭 児山
齋藤 誠一郎
Seiichiro Saito
誠一郎 齋藤
寛之 道江
Hiroyuki Michie
寛之 道江
和也 木村
Kazuya Kimura
和也 木村
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Toshiba Corp
Original Assignee
Toshiba Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Toshiba Corp filed Critical Toshiba Corp
Priority to JP2013174857A priority Critical patent/JP2015043170A/ja
Priority to US14/204,065 priority patent/US20150058655A1/en
Publication of JP2015043170A publication Critical patent/JP2015043170A/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/04Generating or distributing clock signals or signals derived directly therefrom
    • G06F1/12Synchronisation of different clock signals provided by a plurality of clock generators

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Transfer Systems (AREA)
  • Bus Control (AREA)

Abstract

【課題】1つの実施形態は、例えば、外部接続の自由度を向上できるインターフェース回路及びシステムを提供することを目的とする。【解決手段】1つの実施形態によれば、複数のユニットを有するインターフェース回路が提供される。複数のユニットのそれぞれは、クロックインターフェースと、データインターフェースと、セレクタとを有する。クロックインターフェースは、クロックを受けて転送する。データインターフェースは、データを受けて転送する。セレクタは、データインターフェースがクロックに同期してデータを転送するように、クロックを選択してデータインターフェースへ供給する。【選択図】図1

Description

本発明の実施形態は、インターフェース回路及びシステムに関する。
インターフェース回路は、システムに対して、外部モジュールが外部接続される際にインターフェース動作を行う。例えば、外部モジュールがインターフェース回路に接続され、外部モジュールからクロック及びデータがインターフェース回路経由でシステムのコントローラ等へ転送される。このとき、外部接続の自由度を向上することが望まれる。
特開2008−97307号公報
1つの実施形態は、例えば、外部接続の自由度を向上できるインターフェース回路及びシステムを提供することを目的とする。
1つの実施形態によれば、複数のユニットを有するインターフェース回路が提供される。複数のユニットのそれぞれは、クロックインターフェースと、データインターフェースと、セレクタとを有する。クロックインターフェースは、クロックを受けて転送する。データインターフェースは、データを受けて転送する。セレクタは、データインターフェースがクロックに同期してデータを転送するように、クロックを選択してデータインターフェースへ供給する。
実施形態にかかるインターフェース回路が適用されたシステムの構成を示す図。 実施形態にかかるインターフェース回路の回路構成(ファームウェアFW1選択時)を示す図。 実施形態における複数のユニットのレイアウト構成及びクロックの伝送経路(ファームウェアFW1選択時)を示す図。 実施形態にかかるインターフェース回路の回路構成(ファームウェアFW2選択時)を示す図。 実施形態における複数のユニットのレイアウト構成及びクロックの伝送経路(ファームウェアFW2選択時)を示す図。 実施形態にかかるインターフェース回路の回路構成(ファームウェアFW3選択時)を示す図。 実施形態における複数のユニットのレイアウト構成及びクロックの伝送経路(ファームウェアFW3選択時)を示す図。 基本の形態にかかるインターフェース回路が適用されたシステムの構成を示す図。
以下に添付図面を参照して、実施形態にかかるインターフェース回路を詳細に説明する。なお、この実施形態により本発明が限定されるものではない。
(実施形態)
実施形態にかかるインターフェース回路100について説明する前に、基本の形態にかかるインターフェース回路1について説明する。
インターフェース回路1は、システムに対して外部モジュールが外部接続される際にインターフェース動作を行う。例えば、インターフェース回路1は、図8に示すシステムSYS1に実装される。システムSYS1は、例えば、携帯端末のシステム、又はパーソナルコンピュータのシステムである。システムSYS1には、外部モジュールOMが外部接続される。外部モジュールOMは、例えば、カメラモジュール又はコントローラモジュールである。
具体的には、システムSYS1は、バス2、インターフェース回路1、コントローラ3、メモリ4、及びインターフェース(I/F)6を備える。
バス2は、インターフェース回路1、コントローラ3、メモリ4、及びインターフェース(I/F)6を相互に接続して信号を転送する。バス2は、外部モジュールOMからクロックを受けて、そのクロックに同期して信号(クロック、データ)を転送する。すなわち、バス2は、外部モジュールOMから受けたクロックに同期して転送動作を行うバス規格に従ったものである。このようなバス規格は、例えば、MIPI(Mobile Industry Processor Interface)、MDDI(Mobile Display Digital Interface)、又はIC(Inter−Integrated Circuit)などである。例えば、バス2は、クロック用のバス2c及びデータ用のバス2dを含む。
インターフェース回路1は、外部モジュールOMからクロック及びデータを受け、受けたクロック及びデータをバス2経由でコントローラ3等へ転送する。
例えば、外部モジュールOMがカメラモジュールである場合、カメラモジュールは、レンズ、イメージセンサ、及びクロックジェネレータ等を有する。カメラモジュールは、クロックに同期して被写体を撮像し、撮像された画像(静止画又は動画)の画像データとクロックとをインターフェース回路1へ供給する。このとき、インターフェース回路1は、例えば、カメラシリアルインターフェースである。
あるいは、例えば、外部モジュールOMがコントローラモジュールである場合、コントローラモジュールは、コントローラ、及びクロックジェネレータ等を有する。コントローラモジュールは、クロックに同期して制御動作を行い、コントローラ3に指示すべき制御内容を決定し、決定された制御内容に従った制御データとクロックとをインターフェース回路1へ供給する。このとき、インターフェース回路1は、例えば、コントローラシリアルインターフェースである。
インターフェース回路1は、出力端子OT1を介してバス2に接続されているとともに、複数の入力端子IT1〜IT4の少なくとも一部を介して外部モジュールOMが外部接続される。複数の入力端子IT1〜IT4は、上記のバス規格に対応して、クロック用の入力端子IT1とデータ用の入力端子IT2〜IT4とを含む。図8では、クロック用の入力端子IT1とデータ用の入力端子IT2とを介して外部モジュールOMが接続された状態が例示されている。
例えば、インターフェース回路1は、物理層インターフェース(PHY)11及び転送部12を有する。
物理層インターフェース11は、外部モジュールOMからクロック及びデータを受け、受けたクロック及びデータを転送部12へ出力する。物理層インターフェース11は、クロックインターフェースCIF及びデータインターフェースDIFa〜DIFcを有する。
クロックインターフェースCIFは、入力端子IT1を介して外部モジュールOMからクロックを受ける。クロックインターフェースCIFは、そのクロックに同期して、クロックを転送する。すなわち、クロックインターフェースCIFは、受けたクロックを転送動作用のクロックとして用いるとともに、クロック自体を転送する。クロックインターフェースCIFは、例えば、クロックに同期して信号(クロック)を転送する複数段のシフトレジスタ(図示せず)を用いて構成することができる。シフトレジスタの各段は、例えば、Dラッチ(図示せず)などを用いることができる。クロックインターフェースCIFは、転送されたクロックを、転送部12へ出力するとともに、データインターフェースDIFa〜DIFcへそれぞれ出力する。クロックインターフェースCIFは、クロックを受けて転送する伝送レーンとして機能するので、クロックレーンとも呼ばれる。
データインターフェースDIFaは、入力端子IT2を介して外部モジュールOMからデータを受け、クロックインターフェースCIFからクロックを受ける。データインターフェースDIFaは、クロックに同期して、データを転送する。データインターフェースDIFaは、例えば、クロックに同期してデータを転送する複数段のシフトレジスタ(図示せず)を用いて構成することができる。シフトレジスタの各段は、例えば、Dラッチ(図示せず)などを用いることができる。データインターフェースDIFaは、転送されたデータを、転送部12へ出力する。データインターフェースDIFaは、データを受けて転送する伝送レーンとして機能するので、データレーンとも呼ばれる。
なお、データインターフェースDIFb,DIFcについても、データインターフェースDIFaと同様である。
転送部12は、クロック及びデータを物理層インターフェース11から受ける。転送部12は、クロック及びデータをそれぞれ出力端子OT1経由でバス2へ出力する。転送部12は、転送レーンTL0を有する。
転送レーンTL0は、端子TL0aを介してクロックインターフェースCIFからクロックを受け、端子TL0b〜TL0dを介してデータインターフェースDIFa〜DIFcからデータを受ける。転送レーンTL0は、クロックを転送してクロック用のバス2cへ出力し、データを転送してデータ用のバス2dへ出力する。転送レーンTL0は、例えば、複数のデータを受けた場合、調停処理を行って処理順を決定し、決定された処理順に従って、複数のデータを順次にデータ用のバス2dへ出力する。処理順は、例えば、端子TL0b〜TL0dについてサイクリックに(ラウンドロビン的に)選択するものでもよいし、FIFO(First In, First Out)的に選択するものでもよい。
コントローラ3は、ファームウェアFWに従って、システムSYS1の各部を制御する。コントローラ3は、レジスタ5を有する。ファームウェアFWは、予め、インターフェース6を介してメモリ4に書き込まれている。コントローラ3は、システムSYS1が起動された際に、ファームウェアFWをメモリ4から読み出して、読み出されたファームウェアFWに従って制御信号群CSを生成し、生成された制御信号群CSをレジスタ5に格納する。コントローラ3は、制御信号群CSを用いて、データを処理したり各種の制御を行ったりする。
例えば、外部モジュールOMがカメラモジュールである場合、コントローラ3は、インターフェース回路1からバス2経由で画像データを受け、画像データに対して画像処理を施し、処理後の画像データをメモリ4等に格納する。
あるいは、例えば、外部モジュールOMがコントローラモジュールである場合、コントローラ3は、インターフェース回路1からバス2経由で制御データを受け、制御データに従って制御動作(例えば、外部モジュールOMにおけるコントローラとの協調制御動作など)を行う。
なお、システムSYS1では、図8に示すように、バス2、インターフェース回路1−1、コントローラ3、メモリ4、レジスタ5、及びインターフェース(I/F)6が1つのチップCHIP1に搭載されている。
システムSYS1では、インターフェース回路1−1に複数の外部モジュールOM−1〜OM−4を外部接続したいと要求されることがある。このとき、バス規格の制約により、複数の外部モジュールOM−1〜OM−4を、それぞれ、クロックインターフェース及びデータインターフェースに接続する必要がある。しかし、インターフェース回路1−1には、1つのクロックインターフェースCIFしか設けられていないため、バス規格に従いながら複数の外部モジュールOM−1〜OM−4を外部接続することが困難である。すなわち、インターフェース回路1−1は、1つの外部モジュールOM−1しか接続できず、外部接続の個数について自由度が低い傾向にある。
バス規格に従いながらこの要求を満たすためには、システムSYS1に対して、足りないクロックインターフェースCIFの個数分、インターフェース回路を追加する必要がある。例えば、インターフェース回路1−2〜1−4を追加する必要がある。このとき、インターフェース回路1−1は、既にチップCHIP1に搭載されているので、追加するインターフェース回路1−2〜1−4は、それぞれ、別のチップCHIP2〜CHIP4に搭載させて追加する必要がある。この場合、複数のインターフェース回路1−1〜1−4の全体としてチップ面積が増大しやすく、複数のインターフェース回路1−1〜1−4をシステムSYS1の筐体内にコンパクトに実装することが困難になる。
そこで、実施形態では、図1に示すように、インターフェース回路100の構成を工夫することで、チップ面積の増大を抑制しながら外部接続の個数についての自由度を向上させることを目指す。以下では、基本の形態と異なる部分を中心に説明する。
具体的には、システムSYS100は、複数のインターフェース回路1−1〜1−4(図8参照)に代えて、1つのインターフェース回路100を備える。インターフェース回路100は、外部接続される外部モジュールOMの個数に応じて、内部的な構成を切り替えることができる(図2、図4、図6参照)。
なお、システムSYS100では、図1に示すように、バス2、インターフェース回路100、コントローラ3、メモリ4、及びインターフェース(I/F)6が1つのチップCHIP100に搭載されている。
インターフェース回路100は、図2に示すように、物理層インターフェース11及び転送部12(図8参照)に代えて、物理層インターフェース(PHY)111及び転送部112を備える。
物理層インターフェース111は、複数のユニットUN0〜UN3を有する。転送部112は、複数の転送レーンTL0〜TL3を有する。複数の転送レーンTL0〜TL3は、複数のユニットUN0〜UN3に対応している。
まず、複数のユニットUN0〜UN3において共通する構成について説明する。
各ユニットUN0〜UN3は、クロックインターフェースCIF0〜CIF3、データインターフェースDIF0〜DIF3、及びセレクタSL0〜SL3を有する。
各クロックインターフェースCIF0,CIF1,CIF2,CIF3は、その入力ノードCIF0a,CIF1a,CIF2a,CIF3aが、対応する入力端子ITc1,ITc2,ITc3,ITc4に接続されている。各クロックインターフェースCIF0,CIF1,CIF2,CIF3は、対応する入力端子ITc1,ITc2,ITc3,ITc4を介してクロックを受けた場合に、クロックを転送する。各クロックインターフェースCIF0,CIF1,CIF2,CIF3は、制御ノードCIF0b,CIF1b,CIF2b,CIF3bで受けた制御信号に応じて、入力ノードCIF0a,CIF1a,CIF2a,CIF3aをイネーブル状態とディスエーブル状態とで切り替えることができる。
各データインターフェースDIF0,DIF1,DIF2,DIF3は、その入力ノードDIF0a,DIF1a,DIF2a,DIF3aが、対応する入力端子ITd1,ITc2,ITc3,ITd4に接続されており、そのクロックノードDIF0b,DIF1b,DIF2b,DIF3bが、対応するセレクタSL0,SL1,SL2,SL3の出力側に接続されている。各データインターフェースDIF0,DIF1,DIF2,DIF3は、対応する入力端子ITd1,ITc2,ITc3,ITd4を介してデータを受けた場合に、クロックノードDIF0b,DIF1b,DIF2b,DIF3bで受けたクロックに同期してデータを転送する。各データインターフェースDIF0,DIF1,DIF2,DIF3は、制御ノードDIF0c,DIF1c,DIF2c,DIF3cで受けた制御信号に応じて、入力ノードDIF0a,DIF1a,DIF2a,DIF3aをイネーブル状態とディスエーブル状態とで切り替えることができる。
各セレクタSL0,SL1,SL2,SL3は、その出力ノードSL0a,SL1a,SL2a,SL3aが、対応するデータインターフェースDIF0,DIF1,DFI2,DIF3に接続されている。各セレクタSL0,SL1,SL2,SL3は、クロックを選択して、対応するデータインターフェースDIF0,DIF1,DFI2,DIF3へクロックを供給する。これにより、データインターフェースDIF0,DIF1,DFI2,DIF3がクロックに同期してデータを転送するようにすることができる。各セレクタSL0,SL1,SL2,SL3は、制御ノードSL0c,SL1c,SL2c,SL3cで受けた制御信号に応じて、セレクト動作を行い、クロックを選択する。
次に、複数のユニットUN0〜UN3において異なる構成について説明する。
ユニットUN0におけるクロックインターフェースCIF0は、その出力ノードCIF0cが、転送レーンTL0及びセレクタSL0〜SL3に接続されている。ユニットUN0におけるセレクタSL0は、その入力ノードSL0bが、クロックインターフェースCIF0の出力ノードCIF0cに接続され、他のクロックインターフェースCIF1,CIF2,CIF3の出力ノードCIF1c,CIF2c,CIF3cに接続されていない。これにより、ユニット(第1のユニット)UN0におけるセレクタSL0は、ユニットUN0のクロックインターフェースCIF0から転送されたクロックを常に選択してユニットUN0のデータインターフェースDIF0へ供給する。
ユニットUN1におけるクロックインターフェースCIF1は、その出力ノードCIF1cが、転送レーンTL1及びセレクタSL1に接続されている。ユニットUN1におけるセレクタSL1は、その入力ノードSL1c,SL1bが、クロックインターフェースCIF0の出力ノードCIF0c又はクロックインターフェースCIF1の出力ノードCIF1cに接続され、残りのクロックインターフェースCIF2,CIF3の出力ノードCIF2c,CIF3cに接続されていない。これにより、ユニット(第2のユニット)UN1におけるセレクタSL1は、ユニット(第1のユニット)UN0のクロックインターフェースCIF0から転送されたクロックとユニット(第2のユニット)UN1のクロックインターフェースCIF1から転送されたクロックとのいずれかを選択してユニット(第2のユニット)UN1のデータインターフェースDIF1へ供給する。
ユニットUN2におけるクロックインターフェースCIF2は、その出力ノードCIF2cが、転送レーンTL2及びセレクタSL2,SL3に接続されている。ユニットUN2におけるセレクタSL2は、その入力ノードSL2c,SL2bが、クロックインターフェースCIF0の出力ノードCIF0c又はクロックインターフェースCIF2の出力ノードCIF2cに接続され、残りのクロックインターフェースCIF1,CIF3の出力ノードCIF1c,CIF3cに接続されていない。これにより、ユニット(第2のユニット)UN2におけるセレクタSL2は、ユニット(第1のユニット)UN0のクロックインターフェースCIF0から転送されたクロックとユニット(第2のユニット)UN2のクロックインターフェースCIF2から転送されたクロックとのいずれかを選択してユニット(第2のユニット)UN2のデータインターフェースDIF2へ供給する。
ユニットUN3におけるクロックインターフェースCIF3は、その出力ノードCIF3cが、転送レーンTL3及びセレクタSL3に接続されている。ユニットUN3におけるセレクタSL3は、その入力ノードSL3d,SL3c,SL3bが、クロックインターフェースCIF0の出力ノードCIF0c、クロックインターフェースCIF2の出力ノードCIF2c、又はクロックインターフェースCIF3の出力ノードCIF3cに接続され、残りのクロックインターフェースCIF1の出力ノードCIF1cに接続されていない。これにより、ユニット(第3のユニット)UN3のセレクタSL3は、ユニット(第1のユニット)UN0のクロックインターフェースCIF0から転送されたクロックとユニット(第2のユニット)UN2のクロックインターフェースCIF2から転送されたクロックとユニット(第3のユニット)UN3のクロックインターフェースCIF3から転送されたクロックとのいずれかを選択してユニット(第3のユニット)UN3のデータインターフェースDIF3へ供給する。
次に、インターフェース回路100の内部的な構成の切り替えについて説明する。
例えば、図1に示すように、外部接続される外部モジュールOMの個数の候補に対応して、システムSYS100にインストールされる候補となる複数のファームウェアFW1〜FW3が準備されている。ユーザは、インターフェース回路100に外部接続すべき外部モジュールOMの個数に応じて、複数のファームウェアFW1〜FW3のいずれかを選択してインターフェース6経由でメモリ4に書き込む。
例えば、図2に示すように、インターフェース回路100に4個の外部モジュールOM−1〜OM−4を接続したい場合、ファームウェアFW1が選択されインターフェース6(図1参照)経由でメモリ4に書き込まれる。図2は、ファームウェアFW1が選択された場合におけるインターフェース回路100の回路構成を示す図である。コントローラ3は、システムSYS100が起動された際に、ファームウェアFW1をメモリ4から読み出して、ファームウェアFW1に従った制御信号群CS1をレジスタ5に格納する。コントローラ3は、レジスタ5に格納された制御信号群CS1に従って、4個の外部モジュールOM−1〜OM−4を接続するための構成に切り替えるように、インターフェース回路100を制御する。例えば、コントローラ3は、インターフェース回路100において、図2に実線で示すラインをアクティブにするとともに、図2に一点鎖線で示すラインをノンアクティブにするように、インターフェース回路100を制御する。
具体的には、セレクタSL0は、ファームウェアFW1に応じてコントローラ3から受けた制御信号に従って、入力ノードSL0b及び他の入力ノード(図示せず)のうち入力ノードSL0bを選択する。これにより、セレクタSL0は、ユニットUN0のクロックインターフェースCIF0から転送されたクロックを選択してユニットUN0のデータインターフェースDIF0へ出力ノードSL0a経由で供給する。
セレクタSL1は、ファームウェアFW1に応じてコントローラ3から受けた制御信号に従って、複数の入力ノードSL1b,SL1cのうち入力ノードSL1bを選択する。これにより、セレクタSL1は、ユニットUN1のクロックインターフェースCIF1から転送されたクロックを選択してユニットUN1のデータインターフェースDIF1へ出力ノードSL1a経由で供給する。例えば、セレクタSL1は、入力ノードSL1cをハイインピーダンス状態にし、クロックインターフェースCIF0に接続されたラインのうち一点鎖線の部分をノンアクティブにする。
セレクタSL2は、ファームウェアFW1に応じてコントローラ3から受けた制御信号に従って、複数の入力ノードSL2b,SL2cのうち入力ノードSL2bを選択する。これにより、セレクタSL2は、ユニットUN2のクロックインターフェースCIF2から転送されたクロックを選択してユニットUN2のデータインターフェースDIF2へ出力ノードSL2a経由で供給する。例えば、セレクタSL2は、入力ノードSL2cをハイインピーダンス状態にし、クロックインターフェースCIF0に接続されたラインのうち一点鎖線の部分をノンアクティブにする。
セレクタSL3は、ファームウェアFW1に応じてコントローラ3から受けた制御信号に従って、複数の入力ノードSL3b〜SL3dのうち入力ノードSL3bを選択する。これにより、セレクタSL3は、ユニットUN3のクロックインターフェースCIF3から転送されたクロックを選択してユニットUN3のデータインターフェースDIF3へ出力ノードSL3a経由で供給する。例えば、セレクタSL3は、入力ノードSL3cをハイインピーダンス状態にし、クロックインターフェースCIF2に接続されたラインのうち一点鎖線の部分をノンアクティブにする。セレクタSL3は、入力ノードSL3dをハイインピーダンス状態にし、クロックインターフェースCIF0に接続されたラインのうち一点鎖線の部分をノンアクティブにする。
転送レーンTL0は、ファームウェアFW1に応じてコントローラ3から受けた制御信号に従って、クロックインターフェースCIF0に接続された入力ノードTL0aとデータインターフェースDIF0に接続された入力ノードTL0bとをイネーブルする。転送レーンTL0は、制御信号に従って、データインターフェースDIF1〜DIF3に接続された入力ノードTL0c〜TL0eをそれぞれディスエーブルする。例えば、転送レーンTL0は、入力ノードTL0c〜TL0eをそれぞれハイインピーダンス状態にし、データインターフェースDIF1〜DIF3に接続されたラインのうち一点鎖線の部分をノンアクティブにする。
転送レーンTL1は、ファームウェアFW1に応じてコントローラ3から受けた制御信号に従って、クロックインターフェースCIF1に接続された入力ノードTL1aとデータインターフェースDIF1に接続された入力ノードTL0cとをイネーブルする。転送レーンTL1は、制御信号に従って、データインターフェースDIF2に接続された入力ノードTL1bをディスエーブルする。例えば、転送レーンTL1は、入力ノードTL1bをハイインピーダンス状態にし、データインターフェースDIF2に接続されたラインのうち一点鎖線の部分をノンアクティブにする。
転送レーンTL2は、ファームウェアFW1に応じてコントローラ3から受けた制御信号に従って、クロックインターフェースCIF2に接続された入力ノードTL2aとデータインターフェースDIF2に接続された入力ノードTL2bとをイネーブルする。転送レーンTL2は、制御信号に従って、データインターフェースDIF3に接続された入力ノードTL2cをディスエーブルする。例えば、転送レーンTL2は、入力ノードTL2cをハイインピーダンス状態にし、データインターフェースDIF3に接続されたラインのうち一点鎖線の部分をノンアクティブにする。
転送レーンTL3は、ファームウェアFW1に応じてコントローラ3から受けた制御信号に従って、クロックインターフェースCIF3に接続された入力ノードTL3aとデータインターフェースDIF3に接続された入力ノードTL3bとをイネーブルする。
このとき、複数のユニットUN0〜UN3のレイアウトは、図3に示すように構成されている。図3は、ファームウェアFW1が選択された場合における複数のユニットUN0〜UN3のレイアウト構成及びクロックの伝送経路を示す図である。
複数のユニットUN0,UN1,UN2,UN3は、それぞれ、例えば、図3に示すようなユニット配置領域AUN0,AUN1,AUN2,AUN3に配置される。複数のユニットUN0〜UN3は、チップCHIP100においてチップエッジCE近傍に配置される。複数のユニット配置領域AUN0〜AUN3は、チップエッジCE近傍において、チップエッジCEに沿った方向に配列される。複数のユニット配置領域AUN0〜AUN3は、チップエッジCE近傍において、チップエッジCEに沿った方向に配列される。例えば、図3に示すように、チップエッジCEに沿って図3における左から右へ、ユニット配置領域AUN1,AUN0,AUN2,AUN3が順に配列されている。すなわち、複数のユニットUN0〜UN3の配列において、ユニットUN0及びユニットUN2が、ユニットUN1及びユニットUN3よりチップエッジCEに沿った方向における中央側に配置されている。
各ユニット配置領域AUN0〜AUN3では、例えば、クロックインターフェース配置領域ACIF0〜ACIF3がデータインターフェース配置領域ADIF0〜ADIF3を間にしてセレクタ配置領域ASL0〜ASL3の反対側に配されている。クロックインターフェース配置領域ACIF0〜ACIF3は、それぞれ、クロックインターフェースCIF0〜CIF3(図2参照)が配置される領域である。データインターフェース配置領域ADIF0〜ADIF3は、それぞれ、データインターフェースDIF0〜DIF3(図2参照)が配置される領域である。セレクタ配置領域ASL0〜ASL3は、それぞれ、セレクタSL0〜SL3(図2参照)が配置される領域である。データインターフェース配置領域ADIF0〜ADIF3は、チップエッジCEに沿った方向において、クロックインターフェース配置領域ACIF0〜ACIF3及びセレクタ配置領域ASL0〜ASL3の間に配されている。すなわち、複数のユニットUN0〜UN3は、同様なレイアウト構成を繰り返し配置することで実現可能である。
インターフェース回路100の内部的な構成が図2に示すように切り替えられている場合、クロックの伝送経路を模式的に示すと、図3に矢印で示すようになる。なお、実際には、レイアウト上の制約やプロセス上の制約などによりクロックは必ずしも平面的且つ直線的に伝送されるわけではないが、図3では、クロックが伝送される方向を直線近似した場合の伝送経路を所定の平面(例えば、半導体基板の表面)に投影して直線的に矢印で示している。また、図3では、クロックの伝送経路上で分岐するノードを模式的に△で示している。
例えば、クロックインターフェース配置領域ACIF0〜ACIF3に配置されたクロックインターフェースCIF0〜CIF3のそれぞれにクロックが入力される。そして、クロックインターフェースCIF0〜CIF3から転送されたクロックは、転送レーンTL0〜TL3(図2参照)へ出力される。それとともに、クロックインターフェースCIF0〜CIF3から転送されたクロックは、セレクタ配置領域ASL0〜ASL3に配置されたセレクタSL0〜SL3(図2参照)のセレクト動作により、データインターフェース配置領域ADIF0〜ADIF3に配置されたデータインターフェースDIF0〜DIF3(図2参照)へ出力される。
このとき、各ユニット配置領域AUN0〜AUN3内のレイアウト構成、すなわち各ユニットUN0〜UN3のレイアウト構成が同様であるので、チップエッジCEに沿った方向におけるクロックの伝送経路(伝送配線)の長さSTL0〜STL3を各ユニット配置領域AUN0〜AUN3の間で互いに略均等にすることができる。これにより、各ユニットUN0〜UN3の間で特性(例えば、伝送時間など)を容易に揃えることができる。
あるいは、例えば、図4に示すように、インターフェース回路100に2個の外部モジュールOM−1,OM−2を接続したい場合、ファームウェアFW2が選択されインターフェース6(図1参照)経由でメモリ4に書き込まれる。図4は、ファームウェアFW2が選択された場合におけるインターフェース回路100の回路構成を示す図である。コントローラ3は、システムSYS100が起動された際に、ファームウェアFW2をメモリ4から読み出して、ファームウェアFW2に従った制御信号群CS2をレジスタ5に格納する。コントローラ3は、レジスタ5に格納された制御信号群CS2に従って、2個の外部モジュールOM−1,OM−2を接続するための構成に切り替えるように、インターフェース回路100を制御する。例えば、コントローラ3は、インターフェース回路100において、図4に実線で示すラインをアクティブにするとともに、図4に一点鎖線で示すラインをノンアクティブにするように、インターフェース回路100を制御する。
具体的には、セレクタSL0は、ファームウェアFW2に応じてコントローラ3から受けた制御信号に従って、入力ノードSL0b及び他の入力ノード(図示せず)のうち入力ノードSL0bを選択する。これにより、セレクタSL0は、ユニットUN0のクロックインターフェースCIF0から転送されたクロックを選択してユニットUN0のデータインターフェースDIF0へ出力ノードSL0a経由で供給する。
セレクタSL1は、ファームウェアFW2に応じてコントローラ3から受けた制御信号に従って、複数の入力ノードSL1b,SL1cのうち入力ノードSL1cを選択する。これにより、セレクタSL1は、ユニットUN0のクロックインターフェースCIF0から転送されたクロックを選択してユニットUN1のデータインターフェースDIF1へ出力ノードSL1a経由で供給する。例えば、セレクタSL1は、入力ノードSL1bをハイインピーダンス状態にし、クロックインターフェースCIF1に接続されたラインのうち一点鎖線の部分をノンアクティブにする。
セレクタSL2は、ファームウェアFW2に応じてコントローラ3から受けた制御信号に従って、複数の入力ノードSL2b,SL2cのうち入力ノードSL2bを選択する。これにより、セレクタSL2は、ユニットUN2のクロックインターフェースCIF2から転送されたクロックを選択してユニットUN2のデータインターフェースDIF2へ出力ノードSL2a経由で供給する。例えば、セレクタSL2は、入力ノードSL2cをハイインピーダンス状態にし、クロックインターフェースCIF0に接続されたラインのうち一点鎖線の部分をノンアクティブにする。
セレクタSL3は、ファームウェアFW2に応じてコントローラ3から受けた制御信号に従って、複数の入力ノードSL3b〜SL3dのうち入力ノードSL3cを選択する。これにより、セレクタSL3は、ユニットUN2のクロックインターフェースCIF2から転送されたクロックを選択してユニットUN3のデータインターフェースDIF3へ出力ノードSL3a経由で供給する。例えば、セレクタSL3は、入力ノードSL3bをハイインピーダンス状態にし、クロックインターフェースCIF3に接続されたラインのうち一点鎖線の部分をノンアクティブにする。セレクタSL3は、入力ノードSL3dをハイインピーダンス状態にし、クロックインターフェースCIF0に接続されたラインのうち一点鎖線の部分をノンアクティブにする。
クロックインターフェースCIF1は、ファームウェアFW2に応じてコントローラ3から受けた制御信号に従って、入力ノードCIF1aをディスエーブルする。例えば、クロックインターフェースCIF1は、入力ノードCIF1aをハイインピーダンス状態にし、入力端子ITc2に接続されたラインと入力端子ITc2とをノンアクティブにする。
クロックインターフェースCIF3は、ファームウェアFW2に応じてコントローラ3から受けた制御信号に従って、入力ノードCIF3aをディスエーブルする。例えば、クロックインターフェースCIF3は、入力ノードCIF3aをハイインピーダンス状態にし、入力端子ITc4に接続されたラインと入力端子ITc4とをノンアクティブにする。
転送レーンTL0は、ファームウェアFW2に応じてコントローラ3から受けた制御信号に従って、クロックインターフェースCIF0に接続された入力ノードTL0aとデータインターフェースDIF0,DIF1に接続された入力ノードTL0b,TL0cとをイネーブルする。転送レーンTL0は、制御信号に従って、データインターフェースDIF2,DIF3に接続された入力ノードTL0d,TL0eをそれぞれディスエーブルする。例えば、転送レーンTL0は、入力ノードTL0d,TL0eをそれぞれハイインピーダンス状態にし、データインターフェースDIF2,DIF3に接続されたラインのうち一点鎖線の部分をノンアクティブにする。
転送レーンTL1は、ファームウェアFW2に応じてコントローラ3から受けた制御信号に従って、クロックインターフェースCIF1に接続された入力ノードTL1aとデータインターフェースDIF1,DIF2に接続された入力ノードTL1b,TL1cとをディスエーブルする。例えば、転送レーンTL1は、入力ノードTL1aをハイインピーダンス状態にし、クロックインターフェースCIF1に接続されたラインのうち一点鎖線の部分をノンアクティブにする。転送レーンTL1は、入力ノードTL1b,TL1cをハイインピーダンス状態にし、データインターフェースDIF1,DIF2に接続されたラインのうち一点鎖線の部分をノンアクティブにする。
転送レーンTL2は、ファームウェアFW2に応じてコントローラ3から受けた制御信号に従って、クロックインターフェースCIF2に接続された入力ノードTL2aとデータインターフェースDIF2,DIF3に接続された入力ノードTL2b,TL2cとをイネーブルする。
転送レーンTL3は、ファームウェアFW2に応じてコントローラ3から受けた制御信号に従って、クロックインターフェースCIF3に接続された入力ノードTL3aとデータインターフェースDIF3に接続された入力ノードTL3bとをディスエーブルする。例えば、転送レーンTL3は、入力ノードTL3aをハイインピーダンス状態にし、クロックインターフェースCIF3に接続されたラインのうち一点鎖線の部分をノンアクティブにする。転送レーンTL3は、入力ノードTL3bをハイインピーダンス状態にし、データインターフェースDIF3に接続されたラインのうち一点鎖線の部分をノンアクティブにする。
なお、インターフェース回路100では、各外部モジュールOM−1,OM−2に対して、データインターフェース(データレーン)を2レーン設けることができるので、データ転送レートを容易に向上できる。
また、インターフェース回路100では、クロックインターフェースCIF0,CIF2のクロックが選択され、クロックインターフェースCIF1,CIF3のクロックが非選択である。図2及び図4を比較すると、インターフェース回路100では、クロックを選択する際の優先度について、下記の数式1が成り立つことが分かる。
(クロックインターフェースCIF0,CIF2のクロックの優先度)
>(クロックインターフェースCIF1,CIF3のクロックの優先度)
・・・(数式1)
なお、クロックを選択する際の優先度とは、インターフェース回路100に外部接続される外部モジュールOMの個数が変更される際に、どのクロックインターフェースからのクロックをセレクタが優先的に選択するのかを決定するための指標である。例えば、クロックインターフェースCIF0,CIF2のクロックは、外部接続される外部モジュールOMが4個の場合(図2の場合)と外部接続される外部モジュールOMが2個の場合(図4の場合)とで一貫して選択されている。一方、クロックインターフェースCIF1,CIF3のクロックは、外部接続される外部モジュールOMが4個の場合(図2の場合)に選択されているが、外部接続される外部モジュールOMが2個の場合(図4の場合)にどのセレクタからも選択されていない。すなわち、クロックを選択する際の優先度について、上記の数式1が成り立つことが分かる。
インターフェース回路100の内部的な構成が図4に示すように切り替えられている場合、クロックの伝送経路は、図5に矢印で示すようになる。図5は、ファームウェアFW2が選択された場合における複数のユニットUN0〜UN3のレイアウト構成及びクロックの伝送経路を示す図である。なお、図5では、クロックが伝送される方向を直線近似した場合の伝送経路を所定の平面(例えば、半導体基板の表面)に投影して直線的に矢印で示している。また、図5では、クロックの伝送経路上で分岐するノードを模式的に△で示している。
例えば、クロックインターフェース配置領域ACIF0,ACIF2に配置されたクロックインターフェースCIF0,CIF2のそれぞれにクロックが入力される。そして、クロックインターフェースCIF0から転送されたクロックは、転送レーンTL0(図4参照)へ出力される。それとともに、クロックインターフェースCIF0から転送されたクロックは、セレクタ配置領域ASL0,ASL1に配置されたセレクタSL0,SL1(図2参照)のセレクト動作により、データインターフェース配置領域ADIF0,ADIF1に配置されたデータインターフェースDIF0,DIF1(図4参照)へ出力される。クロックインターフェースCIF2から転送されたクロックは、転送レーンTL2(図4参照)へ出力される。それとともに、クロックインターフェースCIF2から転送されたクロックは、セレクタ配置領域ASL2,ASL3に配置されたセレクタSL2,SL3(図4参照)のセレクト動作により、データインターフェース配置領域ADIF2,ADIF3に配置されたデータインターフェースDIF2,DIF3(図4参照)へ出力される。
このとき、ユニット配置領域AUN0,AUN2が、ユニット配置領域AUN1,AUN3よりもチップエッジCEに沿った方向における中央側に配置される。すなわち、優先度の高いクロックを転送するクロックインターフェースCIF0,CIF2を有するユニットUN0,UN2が、より低い優先度で選択されるクロックを転送するクロックインターフェースCIF1,CIF3を有するユニットUN1,UN3よりもチップエッジCEに沿った方向における中央側に配置される。これにより、各ユニットUN0〜UN3のクロックの伝送経路(伝送配線)の長さSTL0〜STL3のうち、少なくともユニットUN0,UN2,UN3のクロックの伝送経路の長さSTL0,STL2,STL3を互いに略均等にすることができる。また、ユニットUN0,UN2,UN3のクロックの伝送経路の長さSTL0,STL2,STL3と、ユニットUN1のクロックの伝送経路の長さSTL1との差をユニット1個に対応したものに抑えることができる。これにより、各ユニットUN0〜UN3の間で特性(例えば、伝送時間など)を容易に揃えることができる。
あるいは、例えば、図6に示すように、インターフェース回路100に1個の外部モジュールOM−1を接続したい場合、ファームウェアFW3が選択されインターフェース6(図1参照)経由でメモリ4に書き込まれる。図6は、ファームウェアFW3が選択された場合におけるインターフェース回路100の回路構成を示す図である。コントローラ3は、システムSYS100が起動された際に、ファームウェアFW3をメモリ4から読み出して、ファームウェアFW3に従った制御信号群CS3をレジスタ5に格納する。コントローラ3は、レジスタ5に格納された制御信号群CS3に従って、1個の外部モジュールOM−1を接続するための構成に切り替えるように、インターフェース回路100を制御する。例えば、コントローラ3は、インターフェース回路100において、図6に実線で示すラインをアクティブにするとともに、図6に一点鎖線で示すラインをノンアクティブにするように、インターフェース回路100を制御する。
具体的には、セレクタSL0は、ファームウェアFW3に応じてコントローラ3から受けた制御信号に従って、入力ノードSL0b及び他の入力ノード(図示せず)のうち入力ノードSL0bを選択する。これにより、セレクタSL0は、ユニットUN0のクロックインターフェースCIF0から転送されたクロックを選択してユニットUN0のデータインターフェースDIF0へ出力ノードSL0a経由で供給する。
セレクタSL1は、ファームウェアFW3に応じてコントローラ3から受けた制御信号に従って、複数の入力ノードSL1b,SL1cのうち入力ノードSL1cを選択する。これにより、セレクタSL1は、ユニットUN0のクロックインターフェースCIF0から転送されたクロックを選択してユニットUN1のデータインターフェースDIF1へ出力ノードSL1a経由で供給する。例えば、セレクタSL1は、入力ノードSL1bをハイインピーダンス状態にし、クロックインターフェースCIF1に接続されたラインのうち一点鎖線の部分をノンアクティブにする。
セレクタSL2は、ファームウェアFW3に応じてコントローラ3から受けた制御信号に従って、複数の入力ノードSL2b,SL2cのうち入力ノードSL2cを選択する。これにより、セレクタSL2は、ユニットUN0のクロックインターフェースCIF0から転送されたクロックを選択してユニットUN2のデータインターフェースDIF2へ出力ノードSL2a経由で供給する。例えば、セレクタSL2は、入力ノードSL2bをハイインピーダンス状態にし、クロックインターフェースCIF2に接続されたラインのうち一点鎖線の部分をノンアクティブにする。
セレクタSL3は、ファームウェアFW3に応じてコントローラ3から受けた制御信号に従って、複数の入力ノードSL3b〜SL3dのうち入力ノードSL3dを選択する。これにより、セレクタSL3は、ユニットUN0のクロックインターフェースCIF0から転送されたクロックを選択してユニットUN3のデータインターフェースDIF3へ出力ノードSL3a経由で供給する。例えば、セレクタSL3は、入力ノードSL3bをハイインピーダンス状態にし、クロックインターフェースCIF3に接続されたラインのうち一点鎖線の部分をノンアクティブにする。セレクタSL3は、入力ノードSL3cをハイインピーダンス状態にし、クロックインターフェースCIF2に接続されたラインのうち一点鎖線の部分をノンアクティブにする。
クロックインターフェースCIF1は、ファームウェアFW3に応じてコントローラ3から受けた制御信号に従って、入力ノードCIF1aをディスエーブルする。例えば、クロックインターフェースCIF1は、入力ノードCIF1aをハイインピーダンス状態にし、入力端子ITc2に接続されたラインと入力端子ITc2とをノンアクティブにする。
クロックインターフェースCIF2は、ファームウェアFW3に応じてコントローラ3から受けた制御信号に従って、入力ノードCIF2aをディスエーブルする。例えば、クロックインターフェースCIF2は、入力ノードCIF2aをハイインピーダンス状態にし、入力端子ITc3に接続されたラインと入力端子ITc3とをノンアクティブにする。
クロックインターフェースCIF3は、ファームウェアFW3に応じてコントローラ3から受けた制御信号に従って、入力ノードCIF3aをディスエーブルする。例えば、クロックインターフェースCIF3は、入力ノードCIF3aをハイインピーダンス状態にし、入力端子ITc4に接続されたラインと入力端子ITc4とをノンアクティブにする。
転送レーンTL0は、ファームウェアFW3に応じてコントローラ3から受けた制御信号に従って、クロックインターフェースCIF0に接続された入力ノードTL0aとデータインターフェースDIF0〜DIF3に接続された入力ノードTL0b〜TL0eとをイネーブルする。
転送レーンTL1は、ファームウェアFW3に応じてコントローラ3から受けた制御信号に従って、クロックインターフェースCIF1に接続された入力ノードTL1aとデータインターフェースDIF1,DIF2に接続された入力ノードTL1b,TL1cとをディスエーブルする。例えば、転送レーンTL1は、入力ノードTL1aをハイインピーダンス状態にし、クロックインターフェースCIF1に接続されたラインのうち一点鎖線の部分をノンアクティブにする。転送レーンTL1は、入力ノードTL1b,TL1cをハイインピーダンス状態にし、データインターフェースDIF1,DIF2に接続されたラインのうち一点鎖線の部分をノンアクティブにする。
転送レーンTL2は、ファームウェアFW3に応じてコントローラ3から受けた制御信号に従って、クロックインターフェースCIF2に接続された入力ノードTL2aとデータインターフェースDIF2,DIF3に接続された入力ノードTL2b,TL2cとをディスエーブルする。例えば、転送レーンTL2は、入力ノードTL2aをハイインピーダンス状態にし、クロックインターフェースCIF1に接続されたラインのうち一点鎖線の部分をノンアクティブにする。転送レーンTL2は、入力ノードTL2b,TL2cをハイインピーダンス状態にし、データインターフェースDIF2,DIF3に接続されたラインのうち一点鎖線の部分をノンアクティブにする。
転送レーンTL3は、ファームウェアFW3に応じてコントローラ3から受けた制御信号に従って、クロックインターフェースCIF3に接続された入力ノードTL3aとデータインターフェースDIF3に接続された入力ノードTL3bとをディスエーブルする。例えば、転送レーンTL3は、入力ノードTL3aをハイインピーダンス状態にし、クロックインターフェースCIF1に接続されたラインのうち一点鎖線の部分をノンアクティブにする。転送レーンTL3は、入力ノードTL3bをハイインピーダンス状態にし、データインターフェースDIF3に接続されたラインのうち一点鎖線の部分をノンアクティブにする。
なお、インターフェース回路100では、外部モジュールOM−1に対して、データインターフェース(データレーン)を4レーン設けることができるので、データ転送レートを容易に向上できる。
また、インターフェース回路100では、クロックインターフェースCIF0のクロックが選択され、クロックインターフェースCIF1〜CIF3のクロックが非選択である。図2、図4、及び図6を比較すると、インターフェース回路100では、クロックを選択する際の優先度について、下記の数式2が成り立つことが分かる。
(クロックインターフェースCIF0のクロックの優先度)
>(クロックインターフェースCIF2のクロックの優先度)
>(クロックインターフェースCIF0,CIF3のクロックの優先度)
・・・(数式2)
なお、クロックを選択する際の優先度とは、インターフェース回路100に外部接続される外部モジュールOMの個数が変更される際に、どのクロックインターフェースからのクロックをセレクタが優先的に選択するのかを決定するための指標である。例えば、クロックインターフェースCIF0のクロックは、外部接続される外部モジュールOMが4個の場合(図2の場合)と外部接続される外部モジュールOMが2個の場合(図4の場合)と外部接続される外部モジュールOMが1個の場合(図6の場合)とで一貫して選択されている。クロックインターフェースCIF2のクロックは、外部接続される外部モジュールOMが4個の場合(図2の場合)と外部接続される外部モジュールOMが2個の場合(図4の場合)とで一貫して選択されているが、外部接続される外部モジュールOMが1個の場合(図6の場合)にどのセレクタからも選択されていない。また、クロックインターフェースCIF1,CIF3のクロックは、外部接続される外部モジュールOMが4個の場合(図2の場合)に選択されているが、外部接続される外部モジュールOMが2個の場合(図4の場合)及び外部接続される外部モジュールOMが1個の場合(図6の場合)にどのセレクタからも選択されていない。すなわち、クロックを選択する際の優先度について、上記の数式2が成り立つことが分かる。
すなわち、クロックの優先度が高いとは、インターフェース回路100に外部接続される外部モジュールOMの個数が変更されても各ユニットのセレクタから選択されやすいことを示している。
ここで、インターフェース回路100において転送動作を行うクロックインターフェースの数を少なくできればインターフェース回路100の消費電力を低減できるため好ましい。しかし、インターフェース回路100に複数の外部モジュールOMが外部接続される場合、複数の外部モジュールOMのそれぞれから供給されるクロックの周期が異なる可能性がある。このとき、ある外部モジュールOMから供給されたデータを異なる外部モジュールOMのクロックを用いて転送してしまうと、そのデータを適正なタイミングで転送することが困難になり、データ化け等の転送エラーが発生する可能性がある。そこで、ある外部モジュールOMから供給されたデータの転送に用いるクロックはその同じ外部モジュールOMから供給されたクロックとする必要がある。その制約のもとで、転送動作を行うクロックインターフェースの数を可能な限り少なくするために、本実施形態では、クロックを選択する際の優先度という指標を導入し、その指標に従って各セレクタのセレクト動作を制御している。
インターフェース回路100の内部的な構成が図6に示すように切り替えられている場合、クロックの伝送経路は、図7に矢印で示すようになる。図7は、ファームウェアFW3が選択された場合における複数のユニットUN0〜UN3のレイアウト構成及びクロックの伝送経路を示す図である。なお、図7では、クロックが伝送される方向を直線近似した場合の伝送経路を所定の平面(例えば、半導体基板の表面)に投影して直線的に矢印で示している。また、図7では、クロックの伝送経路上で分岐するノードを模式的に△で示している。
例えば、クロックインターフェース配置領域ACIF0に配置されたクロックインターフェースCIF0にクロックが入力される。そして、クロックインターフェースCIF0から転送されたクロックは、転送レーンTL0(図6参照)へ出力される。それとともに、クロックインターフェースCIF0から転送されたクロックは、セレクタ配置領域ASL0〜ASL3に配置されたセレクタSL0〜SL3(図6参照)のセレクト動作により、データインターフェース配置領域ADIF0〜ADIF3に配置されたデータインターフェースDIF0〜DIF3(図6参照)へ出力される。
このとき、ユニット配置領域AUN0,AUN2が、ユニット配置領域AUN1,AUN3よりもチップエッジCEに沿った方向における中央側に配置される。すなわち、優先度の高いクロックを転送するクロックインターフェースCIF0,CIF2を有するユニットUN0,UN2が、より低い優先度で選択されるクロックを転送するクロックインターフェースCIF1,CIF3を有するユニットUN1,UN3よりもチップエッジCEに沿った方向における中央側に配置される。さらに、ユニット配置領域AUN0,AUN2を比較すると、ユニット配置領域AUN0がユニット配置領域AUN2よりもチップエッジCEに沿った方向における中央側に配置されている。すなわち、ユニットUN2より優先度の高いユニットUN0の方が、ユニットUN2よりもチップエッジCEに沿った方向における中央側に配置される。これにより、各ユニットUN0〜UN3のクロックの伝送経路(伝送配線)の長さSTL0〜STL3のうち、少なくともユニットUN0,UN2のクロックの伝送経路の長さSTL0,STL2を互いに略均等にすることができ、少なくともユニットUN1,UN3のクロックの伝送経路の長さSTL1,STL3を互いに略均等にすることができる。また、ユニットUN0,UN2のクロックの伝送経路の長さSTL0,STL2と、ユニットUN1,UN3のクロックの伝送経路の長さSTL1,STL3との差をユニット1個に対応したものに抑えることができる。これにより、各ユニットUN0〜UN3の間で特性(例えば、伝送時間など)を容易に揃えることができる。
以上のように、実施形態では、インターフェース回路100において、複数のユニットUN0〜UN3のそれぞれが、クロックインターフェースCIF0〜CIF3、データインターフェースDIF0〜DIF3、及びセレクタSL0〜SL3を有する。セレクタSL0〜SL3は、データインターフェースDIF0〜DIF3がクロックに同期してデータを転送するように、クロックを選択してデータインターフェースDIF0〜DIF3へ供給する。これにより、インターフェース回路100は、外部接続される外部モジュールOMの個数に応じて、内部的な構成を切り替えることができる。したがって、別のチップCHIP2〜CHIP4(図8参照)を追加することなくインターフェース回路100に複数の外部モジュールOM−1〜OM−4を外部接続させることができるので、チップ面積の増大を抑制しながら外部接続の個数についての自由度を向上できる。
また、実施形態では、インターフェース回路100の複数のユニットUN0〜UN3において、ユニットUN0のセレクタSL0は、ユニットUN0のクロックインターフェースCIF0から転送されたクロックを常に選択してユニットUN0のデータインターフェースDIF0へ供給する。ユニットUN1,UN2のセレクタSL1,SL2は、ユニットUN0のクロックインターフェースCIF0から転送されたクロックとユニットUN1,UN2のクロックインターフェースCIF1,CIF2から転送されたクロックとのいずれかを選択してユニットUN1,US2のデータインターフェースDIF1,DIF2へ供給する。ユニットUN3のセレクタSL3は、ユニットUN0のクロックインターフェースCIF0から転送されたクロックとユニットUN2のクロックインターフェースCIF2から転送されたクロックとユニットUN3のクロックインターフェースCIF3から転送されたクロックとのいずれかを選択してユニットUN3のデータインターフェースDIF3へ供給する。これにより、外部接続される外部モジュールOMの個数に応じて内部的な構成を切り替えるようにインターフェース回路100を構成することができる。
また、実施形態では、インターフェース回路100において、優先度の高いクロックを転送するクロックインターフェースを有するユニットが、より低い優先度で選択されるクロックを転送するクロックインターフェースを有するユニットよりもチップエッジに沿った方向における中央側に配置される。例えば、ユニットUN0がユニットUN2よりもチップエッジに沿った方向における中央側に配置される。例えば、ユニットUN0がユニットUN1,UN3よりもチップエッジに沿った方向における中央側に配置される。例えば、ユニットUN2がユニットUN1,UN3よりもチップエッジに沿った方向における中央側に配置される。これにより、インターフェース回路100に外部接続される外部モジュールの個数が変わった場合に、各ユニットUN0〜UN3のクロックの伝送経路の長さSTL0〜STL3を互いに略均等にでき、あるいは、互いの差をユニット1個に対応したものに抑えることができる。これにより、インターフェース回路100に外部接続される外部モジュールの個数が変わった場合に、各ユニットUN0〜UN3の間で特性(例えば、伝送時間など)を容易に揃えることができる。
また、実施形態では、インターフェース回路100が1つのチップCHIP100に搭載されている。例えば、コントローラ3、インターフェース回路100、及びバス3は、1つのチップCHIP100に搭載されている。これにより、チップ面積の増大を容易に抑制できる。
なお、インターフェース回路100には、3個の外部モジュールが外部接続されてもよい。このとき、例えば、ユニットUN0,UN1が図2に示す構成に切り替えられ、ユニットUN2,UN3が図4に示す構成に切り替えられてもよい。あるいは、例えば、ユニットUN0,UN1が図4に示す構成に切り替えられ、ユニットUN2,UN3が図2に示す構成に切り替えられてもよい。あるいは、インターフェース回路100は、図4に示す構成に切り替えられた状態で、ユニットUN0に外部モジュールOM−1が接続され、ユニットUN1〜UN3に外部モジュールOM−2が接続されてもよい。
あるいは、インターフェース回路100は、外部接続が要求される外部モジュールの個数に応じて4個より多くのユニットを備えてもよい。この場合も、上記と同様の考え方で、外部接続される外部モジュールOMの個数に応じて、内部的な構成を切り替えることができる。
本発明のいくつかの実施形態を説明したが、これらの実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これら新規な実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれるとともに、特許請求の範囲に記載された発明とその均等の範囲に含まれる。
1,100 インターフェース回路、SYS1,SYS100 システム。

Claims (8)

  1. 複数のユニットを備え、
    前記複数のユニットのそれぞれは、
    クロックを受けて転送するクロックインターフェースと、
    データを受けて転送するデータインターフェースと、
    前記データインターフェースがクロックに同期してデータを転送するように、クロックを選択して前記データインターフェースへ供給するセレクタと、
    を有し、
    前記複数のユニットにおける第1のユニットのセレクタは、前記第1のユニットの前記クロックインターフェースから転送されたクロックを常に選択して前記第1のユニットのデータインターフェースへ供給し、
    前記複数のユニットにおける第2のユニットのセレクタは、前記第1のユニットの前記クロックインターフェースから転送されたクロックと前記第2のユニットの前記クロックインターフェースから転送されたクロックとのいずれかを選択して前記第2のユニットのデータインターフェースへ供給し、
    前記複数のユニットにおける第3のユニットのセレクタは、前記第1のユニットの前記クロックインターフェースから転送されたクロックと前記第2のユニットの前記クロックインターフェースから転送されたクロックと前記第3のユニットの前記クロックインターフェースから転送されたクロックとのいずれかを選択して前記第3のユニットのデータインターフェースへ供給し、
    前記複数のユニットでは、前記第1のユニットが前記第2のユニットよりチップエッジに沿った方向における中央側に配置され、前記第1のユニットが前記第3のユニットよりチップエッジに沿った方向における中央側に配置され、前記第2のユニットが前記第3のユニットよりチップエッジに沿った方向における中央側に配置される
    インターフェース回路。
  2. 複数のユニットを備え、
    前記複数のユニットのそれぞれは、
    クロックを受けて転送するクロックインターフェースと、
    データを受けて転送するデータインターフェースと、
    前記データインターフェースがクロックに同期してデータを転送するように、クロックを選択して前記データインターフェースへ供給するセレクタと、
    を有する
    インターフェース回路。
  3. 前記複数のユニットにおける第1のユニットのセレクタは、前記第1のユニットの前記クロックインターフェースから転送されたクロックを常に選択して前記第1のユニットのデータインターフェースへ供給する
    請求項2に記載のインターフェース回路。
  4. 前記複数のユニットにおける第2のユニットのセレクタは、前記第1のユニットの前記クロックインターフェースから転送されたクロックと前記第2のユニットの前記クロックインターフェースから転送されたクロックとのいずれかを選択して前記第2のユニットのデータインターフェースへ供給する
    請求項2又は3に記載のインターフェース回路。
  5. 前記複数のユニットでは、第1の優先度で選択されるクロックを転送するクロックインターフェースを有するユニットが、前記第1の優先度より低い第2の優先度で選択されるクロックを転送するクロックインターフェースを有するユニットよりも中央側に配置される
    請求項2から4のいずれか1項に記載のインターフェース回路。
  6. 前記複数のユニットでは、前記第1のユニットが前記第2のユニットよりチップエッジに沿った方向における中央側に配置される
    請求項5に記載のインターフェース回路。
  7. 前記複数のユニットにおける第3のユニットのセレクタは、前記第1のユニットの前記クロックインターフェースから転送されたクロックと前記第2のユニットの前記クロックインターフェースから転送されたクロックと前記第3のユニットの前記クロックインターフェースから転送されたクロックとのいずれかを選択して前記第3のユニットのデータインターフェースへ供給し、
    前記複数のユニットでは、前記第1のユニット及び前記第2のユニットがそれぞれ前記第3のユニットよりチップエッジに沿った方向における中央側に配置される
    請求項2から5のいずれか1項に記載のインターフェース回路。
  8. コントローラと、
    外部モジュールからクロック及びデータを受ける、請求項2から7のいずれか1項に記載のインターフェース回路と、
    前記外部モジュールからのクロックを用いて、前記インターフェース回路から前記コントローラへデータを転送するバスと、
    を備えたシステム。
JP2013174857A 2013-08-26 2013-08-26 インターフェース回路及びシステム Pending JP2015043170A (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2013174857A JP2015043170A (ja) 2013-08-26 2013-08-26 インターフェース回路及びシステム
US14/204,065 US20150058655A1 (en) 2013-08-26 2014-03-11 Interface circuit and system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2013174857A JP2015043170A (ja) 2013-08-26 2013-08-26 インターフェース回路及びシステム

Publications (1)

Publication Number Publication Date
JP2015043170A true JP2015043170A (ja) 2015-03-05

Family

ID=52481493

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2013174857A Pending JP2015043170A (ja) 2013-08-26 2013-08-26 インターフェース回路及びシステム

Country Status (2)

Country Link
US (1) US20150058655A1 (ja)
JP (1) JP2015043170A (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20140312928A1 (en) * 2013-04-19 2014-10-23 Kool Chip, Inc. High-Speed Current Steering Logic Output Buffer

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5381529A (en) * 1991-08-30 1995-01-10 Nec Corporation Shift register with dual clock inputs for receiving and sending information between I/O channels and host based on external and internal clock inputs respectively
US20050080975A1 (en) * 2003-10-10 2005-04-14 Elledge Mark E. Data processing system having a serial data controller
JP2007109199A (ja) * 2005-09-15 2007-04-26 Seiko Epson Corp バッファ装置、、バッファ装置の制御方法、情報処理装置
JP2013143695A (ja) * 2012-01-11 2013-07-22 Ricoh Co Ltd 信号処理回路、画像処理装置及び信号処理方法

Family Cites Families (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3696895B2 (ja) * 1993-06-21 2005-09-21 キヤノン株式会社 ビデオカメラ及び映像信号処理方法
JPH10222464A (ja) * 1997-01-31 1998-08-21 Mitsubishi Electric Corp 同期式直列データ転送装置
JP2000163961A (ja) * 1998-11-26 2000-06-16 Mitsubishi Electric Corp 同期型半導体集積回路装置
US6625157B2 (en) * 1999-05-20 2003-09-23 Advanced Micro Devices, Inc. Apparatus and method in a network switch port for transferring data between buffer memory and transmit and receive state machines according to a prescribed interface protocol
US6747997B1 (en) * 2000-06-13 2004-06-08 Intel Corporation Network channel receiver architecture
JP2002024166A (ja) * 2000-07-05 2002-01-25 Sharp Corp 画像処理システム並びにそれを用いた半導体装置およびディジタルスチルカメラ装置
JP4524724B2 (ja) * 2001-01-19 2010-08-18 ルネサスエレクトロニクス株式会社 入出力装置
JP4809590B2 (ja) * 2004-03-31 2011-11-09 エーユー オプトロニクス コーポレイション 電子装置
JP4918866B2 (ja) * 2006-03-13 2012-04-18 ミツミ電機株式会社 通信装置、半導体集積回路装置及び通信システム
TW200803386A (en) * 2006-06-22 2008-01-01 Beyond Innovation Tech Co Ltd Signal synchronization system
US20080071948A1 (en) * 2006-09-14 2008-03-20 Integrated Device Technology, Inc. Programmable interface for single and multiple host use
US7728625B1 (en) * 2007-12-11 2010-06-01 Lattice Semiconductor Corporation Serial interface for programmable logic devices
JP5363143B2 (ja) * 2009-03-02 2013-12-11 オリンパス株式会社 データ通信システム及び受信装置
JP2011090626A (ja) * 2009-10-26 2011-05-06 Seiko Epson Corp 集積回路装置および電子機器
JP5358813B2 (ja) * 2011-03-30 2013-12-04 株式会社日立製作所 ネットワークノード、時刻同期方法及びネットワークシステム
JP2013058277A (ja) * 2011-09-07 2013-03-28 Renesas Electronics Corp 半導体装置

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5381529A (en) * 1991-08-30 1995-01-10 Nec Corporation Shift register with dual clock inputs for receiving and sending information between I/O channels and host based on external and internal clock inputs respectively
US20050080975A1 (en) * 2003-10-10 2005-04-14 Elledge Mark E. Data processing system having a serial data controller
JP2007109199A (ja) * 2005-09-15 2007-04-26 Seiko Epson Corp バッファ装置、、バッファ装置の制御方法、情報処理装置
JP2013143695A (ja) * 2012-01-11 2013-07-22 Ricoh Co Ltd 信号処理回路、画像処理装置及び信号処理方法

Also Published As

Publication number Publication date
US20150058655A1 (en) 2015-02-26

Similar Documents

Publication Publication Date Title
KR100987872B1 (ko) 2개 이상의 그래픽 처리 장치를 갖는 비용 효율적인 고성능그래픽 시스템을 위한 버스 인터페이스 컨트롤러
KR101044179B1 (ko) 2개 이상의 그래픽 처리 장치를 갖는 비용 효율적인 고성능그래픽 시스템을 위한 마더보드
KR101018573B1 (ko) 2개 이상의 그래픽 처리 장치를 갖는 비용 효율적인 고성능그래픽 시스템을 위한 그래픽 처리 장치
US20080005402A1 (en) Gals-based network-on-chip and data transfer method thereof
US20070239963A1 (en) Multiprocessor system
JP5968549B2 (ja) プロセッサベースシステムハイブリッドリングバス相互接続、ならびに関連デバイス、プロセッサベースシステム、および方法
WO2002077835A1 (fr) Dispositif a semi-conducteurs de commande de communication et systeme d'interface
JP2012064021A (ja) 通信システム、マスター装置、及びスレーブ装置、並びに通信方法
JP2007133527A (ja) クロック信号生成回路、半導体集積回路及び分周率制御方法
JP5544896B2 (ja) 受信回路、情報処理装置、およびバッファ制御方法
JP2010205154A (ja) クロック供給方法及び情報処理装置
JP2016004327A (ja) 伝送装置
TW201640369A (zh) 通道資源的重定向
KR102031269B1 (ko) 개선된 3d 토러스
US9317089B2 (en) Mesh performance improvement using dual voltage data transfer
KR20210127409A (ko) 싱글 센서와 멀티 드라이버간의 동기화 기능을 갖는 ois 회로, ois 장치 및 그 동작방법
KR100700158B1 (ko) 다층시스템 및 클록제어방법
RU2675090C2 (ru) Мобильное вычислительное устройство и способ передачи с него данных
JP2015043170A (ja) インターフェース回路及びシステム
US20070079046A1 (en) Multiprocessor system
JP2005250650A (ja) マルチレイヤシステム及びクロック制御方法
US20140365629A1 (en) Information processing system
JP2018121200A (ja) 回路装置、電子機器及びケーブルハーネス
CN102662886A (zh) SoC地址映像的优化方法
JP5107152B2 (ja) Cpu動作クロック同調式plcバスシステム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20150812

RD01 Notification of change of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7421

Effective date: 20151102

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20151210

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20151222

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20160412