(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】6114568
(24)【登録日】2017年3月24日
(45)【発行日】2017年4月12日
(54)【発明の名称】データ処理装置内の双方向通信パスに沿って伝播するデータ信号を転送するための装置および方法
(51)【国際特許分類】
H04L 25/03 20060101AFI20170403BHJP
H04L 25/20 20060101ALI20170403BHJP
【FI】
H04L25/03 D
H04L25/20
【請求項の数】23
【外国語出願】
【全頁数】22
(21)【出願番号】特願2013-22447(P2013-22447)
(22)【出願日】2013年2月7日
(65)【公開番号】特開2013-168938(P2013-168938A)
(43)【公開日】2013年8月29日
【審査請求日】2016年2月1日
(31)【優先権主張番号】13/368,385
(32)【優先日】2012年2月8日
(33)【優先権主張国】US
(73)【特許権者】
【識別番号】513031706
【氏名又は名称】ザ リージェンツ オブ ザ ユニバーシティ オブ ミシガン
(74)【代理人】
【識別番号】110000855
【氏名又は名称】特許業務法人浅村特許事務所
(72)【発明者】
【氏名】サディール クマール サトパシー
(72)【発明者】
【氏名】デイヴィッド テオドア ブラーウー
(72)【発明者】
【氏名】デニス マイケル シルヴェスター
【審査官】
阿部 弘
(56)【参考文献】
【文献】
特表2004−506979(JP,A)
【文献】
国際公開第02/015013(WO,A2)
【文献】
米国特許第05801549(US,A)
【文献】
特開平04−242339(JP,A)
【文献】
特開平06−052077(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
H04L 25/03
H04L 25/20
(57)【特許請求の範囲】
【請求項1】
データ処理装置内の双方向通信パスに沿って伝播するデータ信号を転送するための装置であって、
前記双方向通信パスに平行に接続された第1の回路および第2の回路を備え、任意の時点において、前記第1および第2の回路の一方は、前記双方向通信パス上の前記データ信号の値を監視する能動回路であり、前記第1および第2の回路の他方は、前記データ信号の前記値を監視しない受動回路であり、
前記第1の回路および前記第2の回路のそれぞれは、
前記双方向通信パスに接続された時に、前記双方向通信パス上の前記データ信号の初期値における遷移を検出するように構成される遷移検出回路と、
前記遷移検出回路を前記双方向通信パスに選択的に接続するように構成されるスイッチ回路と、
有効時に、前記遷移検出回路による前記遷移の検出に応答し、前記双方向通信パス上の前記データ信号を、前記初期値とは反対の値に駆動するように構成される駆動回路と、
前記遷移検出回路、スイッチ回路および駆動回路の動作を制御するように構成される制御回路と、を備え、
前記能動回路は、最初に低利得状態であり、前記低利得状態において前記スイッチ回路は、前記遷移検出回路を前記双方向通信パスに接続し、前記駆動回路は有効ではなく、
前記能動回路の前記制御回路は、前記遷移が検出されたことを示す前記遷移検出回路からの信号に応答し、前記能動回路を高利得状態に移行させ、前記高利得状態において前記スイッチ回路は、前記遷移検出回路を双方向通信パスから切断し、前記駆動回路は、前記双方向通信パス上の前記データ信号を前記反対の値に駆動するために有効化され、
現在能動回路である前記第1および第2の回路の前記一方の前記制御回路は、前記データ信号が前記反対の値に駆動された後に、前記第1および第2の回路の前記一方を受動状態にし、次いでそれが前記受動状態において前記受動回路となり、
現在受動回路である前記第1および第2の回路の前記他方の前記制御回路は、前記データ信号が前記反対の値に駆動された後に、前記第1および第2の回路の前記他方を前記低利得状態にし、次いでそれが前記低利得状態において前記能動回路となる、装置。
【請求項2】
前記双方向通信パス内に配置されるリピータを形成して、前記データ信号が前記双方向通信パスに沿って伝播する際にその信号を増幅する、請求項1に記載の装置。
【請求項3】
前記第1および第2の回路のそれぞれにおける前記制御回路は、前記遷移が検出されたことを示す前記遷移検出回路からの前記信号、および前記第1および第2の回路への入力における前記双方向通信パス上のデータ信号の値を示す信号を、制御入力信号として受信し、それらの制御入力信号に依存して、前記受動状態、前記低利得状態および前記高利得状態の間の関連した第1および第2の回路の遷移を制御するように構成される、請求項2に記載の装置。
【請求項4】
前記入力における前記データ信号の前記値が第1の値である場合、前記第1の回路の前記制御回路は、その第1の回路を前記低利得状態にするように構成され、前記第1の回路は前記能動回路であり、前記第2の回路の前記制御回路は、その第2の回路を前記受動状態にするように構成され、前記第2の回路は前記受動回路であり、
前記入力における前記データ信号の前記値が第2の値である場合、前記第2の回路の前記制御回路は、その第2の回路を前記低利得状態にするように構成され、前記低利得状態において前記第2の回路は前記能動回路であり、前記第1の回路の前記制御回路は、
その第1の回路を前記受動状態にするように構成され、前記受動状態において前記第1の回路は前記受動回路である、請求項3に記載の装置。
【請求項5】
前記能動回路の前記遷移検出回路が前記遷移を検出する時に、前記能動回路の前記制御回路は、その能動回路を前記低利得状態から前記高利得状態に変化させるように構成され、
前記受動回路の前記制御回路は、前記高利得状態の前記能動回路の動作により前記データ信号が前記反対の値に駆動された後まで、前記受動状態の前記受動回路を維持するように構成される、請求項4に記載の装置。
【請求項6】
前記リピータは、インバータとして機能する、請求項2に記載の装置。
【請求項7】
前記リピータは、バッファとして機能する、請求項2に記載の装置。
【請求項8】
前記双方向通信パス内に配置される状態保持素子を形成して、クロック信号に依存して前記双方向通信パスに沿って伝播する前記データ信号をラッチする、請求項1に記載の装置。
【請求項9】
前記クロック信号における所定の遷移の間の前記第1および第2の回路への入力における前記双方向通信パス上の前記データ信号の前記値を示す制御値を格納するように構成される、構成格納素子をさらに備え、
前記第1および第2の回路のそれぞれにおける前記制御回路は、前記遷移が検出されたことを示す前記遷移検出回路からの前記信号、および前記構成格納素子に格納された前記制御値を、制御入力信号として受信し、それらの制御入力信号に依存して、前記受動状態、前記低利得状態よび前記高利得状態の間の関連した第1および第2の回路の遷移を制御するように構成される、請求項8に記載の装置。
【請求項10】
前記構成格納素子に格納された前記制御値が第1の値である場合、前記第1の回路の前記制御回路は、その第1の回路を前記低利得状態にするように構成され、前記低利得状態において前記第1の回路は前記能動回路であり、前記第2の回路の前記制御回路は、その第2の回路を前記受動状態にするように構成され、前記受動状態において前記第2の回路は前記受動回路であり、
前記構成格納素子に格納された前記制御値が第2の値である場合、前記第2の回路の前記制御回路は、その第2の回路を前記低利得状態にするように構成され、前記低利得状態において前記第2の回路は前記能動回路であり、前記第1の回路の前記制御回路は、その第1の回路を前記受動状態にするように構成され、前記受動状態において前記第1の回路は前記受動回路である、請求項9に記載の装置。
【請求項11】
前記能動回路の前記遷移検出回路が前記遷移を検出する時に、前記能動回路の前記制御回路は、その能動回路を前記低利得状態から前記高利得状態に変化させるように構成され、
前記受動回路の前記制御回路は、前記構成格納素子に格納された前記制御値が、前記クロック信号における次の所定の遷移後に更新された後まで、前記受動状態の前記受動回路を維持するように構成される、請求項10に記載の装置。
【請求項12】
前記クロック信号における前記所定の遷移の発生後に有効化パルスを生成するように構成されるパルス発生器をさらに備え、前記有効化パルスは、前記構成格納素子に、前
記第1および第2の回路への前記入力における前記双方向通信パス上の前記データ信号の現在の値を示すように、格納された制御値を更新させる、請求項9に記載の装置。
【請求項13】
前記クロック信号における前記所定の遷移は、前記クロック信号の立下りである、請求項9に記載の装置。
【請求項14】
前記遷移検出回路は、サイリスタ構成に配設されたトランジスタの対を備える、請求項1に記載の装置。
【請求項15】
前記対の両方のトランジスタは、前記装置内の他のトランジスタよりも低い閾値電圧を有するように構築される、請求項14に記載の装置。
【請求項16】
前記遷移検出回路は、
前記スイッチ回路を介して前記双方向通信パスに接続される感知ノードの対と、
前記感知ノードの対に接続され、前記遷移が検出されたことを示す前記信号を生成するように構成される、歪みインバータ回路と、を備える、請求項1に記載の装置。
【請求項17】
前記双方向通信パスへの第1および第2の入力接続を有し、
所定の状態への前記第1および第2の入力接続におけるデータ信号の値をリセットするためのリセット条件に応答するリセット回路をさらに備える、請求項1に記載の装置。
【請求項18】
前記装置は、インバータを形成し、前記リセット回路は、前記データ信号の前記値を、前記第1および第2の入力接続の一方において論理1にリセットし、前記第1および第2の入力接続の他方において論理0にリセットするための前記リセット条件に応答する、請求項17に記載の装置。
【請求項19】
データ処理装置用の相互接続構造であって、
前記データ処理装置の第1の処理ブロックと第2の処理ブロックとの間でデータ信号をルーティングするように構成される双方向通信パスと、
前記双方向通信パスを一連の双方向通信パス部分に分離するために前記双方向通信パスに沿って分布した複数のリピータ回路であって、各リピータ回路は、請求項1に記載の装置を備える、複数のリピータ回路と、を備える、相互接続構造。
【請求項20】
各双方向通信パス部分上の前記データ信号の前記値を、所定の状態にリセットするためのリセット条件に応答するリセット回路をさらに備える、請求項19に記載の相互接続構造。
【請求項21】
各リピータは、インバータを形成し、前記リセット回路は、前記データ信号の前記値を、1つおきの交互の双方向通信パス部分上で論理1にリセットし、他の全ての双方向通信パス部分上で論理0にリセットするための前記リセット条件に応答する、請求項2 0に記載の相互接続構造。
【請求項22】
データ処理装置内の双方向通信パスに沿って伝播するデータ信号を転送するための装置を操作する方法であって、前記装置は、前記双方向通信パスに平行に接続された第1の回路および第2の回路を備え、任意の時点において、前記第1および第2の回路の一方は、前記双方向通信パス上の前記データ信号の値を監視する能動回路であり、前記第1および第2の回路の他方は、前記データ信号の前記値を監視しない受動回路であり、前記第1の回路および前記第2の回路のそれぞれは、前記双方向通信パスに接続された
時に、前記双方向通信パス上の前記データ信号の初期値における遷移を検出するための、遷移検出回路と、前記遷移検出回路を前記双方向通信パスに選択的に接続するためのスイッチ回路と、有効時に、前記遷移検出回路による前記遷移の検出に応答し、前記双方向通信パス上の前記データ信号を、前記初期値とは反対の値に駆動する、駆動回路と、前記遷移検出回路、スイッチ回路および駆動回路の動作を制御するための制御回路と、を備え、前記方法は、
前記能動回路を、最初に低利得状態にすることであって、前記スイッチ回路は、前記遷移検出回路を前記双方向通信パスに接続し、前記駆動回路は有効ではない、低利得状態にすることと、
前記能動回路の前記制御回路に、前記遷移が検出されたことを示す前記遷移検出回路からの信号に応答して、前記能動回路を高利得状態にさせることであって、前記スイッチ回路は、前記遷移検出回路を双方向通信パスから切断し、前記駆動回路は、前記双方向通信パス上の前記データ信号を前記反対の値に駆動するために有効化される、高利得状態にさせることと、
前記データ信号が前記反対の値に駆動された後に、現在能動回路である前記第1および第2の回路の前記一方の前記制御回路に、前記第1および第2の回路の前記一方を受動状態にさせることであって、次いでそれが前記受動回路となる、受動状態にさせることと、
前記データ信号が前記反対の値に駆動された後に、現在受動回路である前記第1および第2の回路の前記他方の前記制御回路に、前記第1および第2の回路の前記他方を前記低利得状態にさせることであって、次いでそれが前記能動回路となる、前記低利得状態にさせることと、を含む方法。
【請求項23】
データ処理装置内の双方向通信パスに沿って伝播するデータ信号を転送するための装置であって、
前記双方向通信パスに平行に接続するための第1の手段および第2の手段を備え、任意の時点において、前記第1および第2の手段の一方は、前記双方向通信パス上の前記データ信号の値を監視するための能動手段であり、前記第1および第2の手段の他方は、前記データ信号の前記値を監視しない受動手段であり、
前記第1の手段および前記第2の手段のそれぞれは、
前記双方向通信パスに接続された時に、前記双方向通信パス上の前記データ信号の初期値における遷移を検出するための遷移検出手段と、
前記遷移検出手段を前記双方向通信パスに選択的に接続するためのスイッチ手段と、
有効時に、前記遷移検出手段による前記遷移の検出に応答して、前記双方向通信パス上の前記データ信号を、前記初期値とは反対の値に駆動するための駆動手段と、
前記遷移検出手段、スイッチ手段および駆動手段の動作を制御するための制御手段と、を備え、
前記能動手段は、最初に低利得状態であり、前記低利得状態において前記スイッチ手段は、前記遷移検出手段を前記双方向通信パスに接続し、前記駆動手段は有効ではなく、
前記能動手段の前記制御手段は、前記遷移が検出されたことを示す前記遷移検出手段からの信号に応答し、前記能動手段を高利得状態に移行させ、前記高利得状態において前記スイッチ手段は、前記遷移検出手段を双方向通信パスから切断し、前記駆動手段は、前記双方向通信パス上の前記データ信号を前記反対の値に駆動するために有効化され、
現在能動手段である前記第1および第2の手段の前記一方の前記制御手段は、前記データ信号が前記反対の値に駆動された後に、前記第1および第2の手段の前記一方を受動状態にし、次いでそれが前記受動状態において前記受動手段となり、
現在受動手段である前記第1および第2の手段の前記他方の前記制御手段は、前記データ信号が前記反対の値に駆動された後に、前記第1および第2の手段の前記他方を前記低利得状態にし、次いでそれが前記低利得状態において前記能動手段となる、装置。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、データ処理装置内の双方向通信パスに沿って伝播するデータ信号を転送するための装置および方法に関する。
【背景技術】
【0002】
双方向通信パスは、データ処理システムにおいてしばしば使用される。例えば、そのような双方向通信パスは、マルチプロセッサチップにおけるグローバル通信ネットワークの不可欠な部分を形成する、双方向構造内で使用することができる。そのような双方向通信パスは、一方向信号線を複製する必要性を排除することにより、低いケイ素負担での高い帯域幅を促進する。そのような双方向通信パスを使用した相互接続の例は、C. Parkらの論文、「45 nm、8コア、エンタープライズXeon(登録商標)プロセッサ用1.2 TB/sオンチップリング接続(A 1.2 TB/s on−chip ring interconnect for 45nm 8−core enterprise XeonR processor)」、ISSCC、2010年、p.180−181、およびS.Satpathyらの論文、「SWIFT:2.1 Tb/s、32×32、自己調停(セルフアービトレーション)メニーコア接続構造(SWIFT: A 2.1Tb/s 32×32 Self−Arbitrating Manycore Interconnect Fabric)」、SoVC、2011年、p.180−181に記載されている。
【0003】
従来の双方向通信パスは、通常は、通信パスに沿って伝播する際にデータを増幅するために、通信パスに沿って分布する一連のリピータを含む。通常は、リピータ構造は、一方向リピータの複製に基づき、その1つは、信号伝達のために選択的に有効化される。そのような従来のリピータ構造の一例を、
図1に示す。
図1に示されるように、双方向通信パスは、第1のプロセッサコア10と第2のプロセッサコア12との間に提供され、その通信パスは、双方向通信パスに沿って複数のリピータ回路を含有することにより、一連の双方向通信パス部分15に分離されている。この例において、各リピータ回路は、インバータ20、25の対を備え、その1つは、関連したフリップ−フロップ30のコンテンツに依存して、任意の時点で有効化される。特に、各フリップフロップは、クロック信号により制御され、クロック信号の立ち上がりにおいて、その入力に与えられるイネーブル信号をサンプリングし、そのイネーブル信号は、インバータ20、25のいずれが有効化されるべきかを特定する。したがって、第1のプロセッサコア10がデータ信号を第2のプロセッサコア12に送信する場合、インバータ25を有効化させるためにイネーブル信号が設定される。逆に、第2のプロセッサコア12がデータ信号を第1のプロセッサコア10に送信する場合、インバータ20を有効化させるためにイネーブル信号が設定される。
【0004】
そのようなリピータ回路は、標準的なセルとして形成することができ、したがって多種多様な相互接続設計に組み込むことができるが、そのような手法は、リピータの動作を制御するための関連フリップフロップ30にイネーブル信号を提供する必要性に起因して、リピータを構成するために論理および相互接続の負担をもたらす。これは、性能およびエネルギー効率を大幅に低下させ得る。さらに、信号伝播方向を反転させる時のコンテンションを排除するために、クロック信号の形式の同期化信号が必要である。
【0005】
さらに、相互接続構造が複雑になると、双方向通信リンクが駆動され得る元の場所の数が増加し、リピータを構成するために必要とされる制御信号の取扱いが、大きな設計上の課題となる。例えば、B.Stackhouseらの論文、「65nm、20億トランジスタクアッドコアItaniumプロセッサ(A 65nm 2−Billion Transistor Quad−Core Itanium Processor)」、JSSCC、2009年1月、第44巻(Vol.44)、第1号(No.1)、p.18−31は、スヌープベースの信号伝達スキームを使用した複雑な相互接続構造を説明しており、データ転送の方向に関する情報は、データが転送される必要がある時点とほぼ同時まで、利用可能ではない。したがって、データ転送が生じ得る前にデータ転送の方向を考慮するリピータを構成するために制御信号を発行する必要性が、そのような複雑な相互接続構造における性能に大きく影響する。
【0006】
近年、リピータを用いない信号伝達技術の開発に向けてかなりの研究がなされている。そのようなリピータを用いない信号伝達技術を説明している論文の例は、以下の通りである:
B.Kimら、「90 nm CMOSにおいて非線形電荷注入送信フィルタおよびトランスインピーダンス受信器を使用した4 Gb/s/ch、356 fJ/b、10 mm、イコライズドオンチップ接続(A 4Gb/s/ch 356fJ/b 10mm Equalized On−ch ip Interconnect with Nonlinear Charge−Injecting Transmit Filter and Transimpedance Receiver in 90nm CMOS)」、ISSCC、2009年、p.66−67、
J.Seoら、「90 nm CMOSにおいて適応プリエンファシスを使用した高帯域低エネルギーオンチップ信号伝送(High Bandwidth and Low Energy On−Chip Signaling with Adaptive Pre−Emphasis in 90nm CMOS)」、ISSCC、2010年、p.182−183、
R.Hoら、「高速低エネルギー容量駆動オンチップ配線(High−Sp eed and Low−Energy Capacitively−Driven On−Chip Wires)」、ISSCC、2007年、p.412−413、および
E.Mensinkら、「10mm オンチップ接続用の90nm CMOSにおける0.28 pJ/b、2 Gb/s/ch送受信機(A 0.2 8pJ/b 2Gb/s/ch Transceiver in 90nm CMOS for 10mm On−chip interconnects)」、ISSCC、2007年、p.414−415。
【0007】
これらの技術は、概して、双方向通信パスの一方の端部においてパルス発生回路を使用してパルスを生成し、次いでそのパルスを検出するように双方向通信パスの他方の端部においてパルス検出回路を配置することを含む。しかしながら、そのような技術は、低減された電圧振幅に基づく低エネルギー散逸での高速通信を達成し得るが、パルス発生および検出回路は、それぞれの特定の相互接続状況を考慮して慎重に特別設計される
必要があり、正確なデバイス整合、追加の電圧供給、およびより広い線厚/ピッチを伴う。したがって、そのような技術は、合成ベースの設計フローに容易に使用することができず、または、同じ設計において異なる相互接続状況に再利用することができない。
【0008】
したがって、広範な実装内で再設計する必要はないが、
図1を参照して上述した従の手法と比較して改善された性能および低減されたエネルギー消費をもって使用することができる、データ処理装置内の双方向通信パスに沿って伝播するデータ信号を転送するための改善された技術を提供することが望ましい。
【発明の概要】
【0009】
第1の態様から考慮すると、本発明は、データ処理装置内の双方向通信パスに沿って伝播するデータ信号を転送するための装置であって、双方向通信パスに平行に接続された第1の回路および第2の回路を備え、任意の時点において、第1および第2の回路の一方は、双方向通信パス上のデータ信号の値を監視する能動回路であり、第1および第2の回路の他方は、データ信号の前記値を監視しない受動回路であり、第1の回路および第2の回路のそれぞれは、双方向通信パスに接続された時に、双方向通信パス上のデータ信号の初期値における遷移を検出するように構成される遷移検出回路と、遷移検出回路を双方向通信パスに選択的に接続するように構成されるスイッチ回路と、有効時に、遷移検出回路による遷移の検出に応答し、双方向通信パス上のデータ信号を、初期値とは反対の値に駆動するように構成される駆動回路と、遷移検出回路、スイッチ回路および駆動回路の動作を制御するように構成される制御回路と、を備え、能動回路は、最初に低利得状態であり、スイッチ回路は、遷移検出回路を双方向通信パスに接続し、駆動回路は有効ではなく、能動回路の制御回路は、前記遷移が検出されたことを示す遷移検出回路からの信号に応答し、能動回路を高利得状態に移行させ、スイッチ回路は、遷移検出回路を双方向通信パスから切断し、駆動回路は、双方向通信パス上のデータ信号を前記反対の値に駆動するために有効化され、現在能動回路である第1および第2の回路の一方の制御回路は、データ信号が前記反対の値に駆動された後に、第1および第2の回路の一方を受動状態にし、次いでそれが受動回路となり、現在受動回路である第1および第2の回路の他方の制御回路は、データ信号が前記反対の値に駆動された後に、第1および第2の回路の他方を低利得状態にし、次いでそれが能動回路となる、装置を提供する。
【0010】
本発明によれば、第1および第2の回路は、双方向通信パスに平行に接続され、これらの回路は、同一に構築されているが、任意の時点において、それらの回路の一方は、データ信号の値を監視する能動回路であり、他方の回路は、データ信号の値を監視しない受動回路である。能動回路は、最初に低利得状態で開始し、その遷移検出回路は、データ信号における遷移を検出するために、その信号の値を監視しているが、駆動回路はその時は有効ではない。しかしながら、遷移検出回路による遷移の検出後、能動回路は、高利得状態に移行し、スイッチ回路は遷移検出回路を双方向通信パスから切断し、双方向通信パス上のデータ信号を反対の値に駆動するために、駆動回路が有効化される。これにより、データ信号を転送するための高性能およびエネルギー効率的なメカニズムが提供される。
【0011】
さらに、データ信号が反対の値に駆動されると、能動回路は受動状態に移行し、次いでそれが受動回路になり、一方で、それまでの受動回路は低利得モードに移行し、次いでそれがデータ信号における次の遷移に関して双方向通信パスを監視する能動回路になる。結果として、装置は自己構成型であり、したがって
図1の従来技術により必要とされるような構成信号の伝播の必要性を回避する。したがって、これにより、さらなる性能およびエネルギー消費の節約が提供される。
【0012】
本発明の装置の使用により生じる性能およびエネルギー消費の利点に加え、設計が双方向通信パスの実装の詳細に依存せず、したがって、設計は、多種多様な用途における使用のための標準的セルとして具体化され得る。
【0013】
装置は、双方向通信パス内で様々な目的で使用され得る。しかしながら、一実施形態において、装置は、双方向通信パス内に配置されるリピータを形成して、データ信号が双方向通信パスに沿って伝播する際にその信号を増幅する。
【0014】
1つのそのような実施形態において、第1および第2の回路のそれぞれにおける制御回路は、前記遷移が検出されたことを示す遷移検出回路からの前記信号、ならびに第1および第2の回路への入力における双方向通信パス上のデータ信号の値を示す信号を、制御入力信号として受信し、それらの制御入力信号に依存して、前記受動状態、前記低利得状態および前記高利得状態の間の関連した第1および第2の回路の遷移を制御するように構成される。したがって、装置は自己構成型であり、外部から提供される構成信号を必要としない。さらに、第1および第2の回路の両方が、双方向通信パス上のデータ信号、および遷移が検出されたことを示す遷移検出回路からの信号の値のみに依存して、低利得、高利得および受動状態の間で遷移するため、装置にはクロック信号が必要なく、したがって、装置は完全に自己タイミング型である。
【0015】
装置の自己タイミング型の性質により、装置は、異なるクロック速度で動作する2つのデバイスを接続する双方向通信パス内で容易に使用することができる。
【0016】
一実施形態において、第1および第2の回路への前記入力におけるデータ信号の値が第1の値である場合、第1の回路の制御回路は、その第1の回路を前記低利得状態にするように構成され、第1の回路は能動回路であり、第2の回路の制御回路は、その第2の回路を前記受動状態にするように構成され、第2の回路は受動回路である。逆に、前記入力におけるデータ信号の値が第2の値である場合、第2の回路の制御回路は、その第2の回路を前記低利得状態にするように構成され、第2の回路は能動回路であり、第1の回路の制御回路は、その第1の回路を前記受動状態にするように構成され、第1の回路は受動回路である。
【0017】
さらに、一実施形態において、能動回路の遷移検出回路が前記遷移を検出する時に、能動回路の制御回路は、その能動回路を低利得状態から高利得状態に変化させるように構成される。しかしながら、受動回路の制御回路は、前記高利得状態の能動回路の動作によりデータ信号が前記反対の値に駆動された後まで、受動状態の受動回路を維持するように構成される。
【0018】
リピータは、様々な様式で構成され得る。一実施形態において、リピータは、インバータ(その2つの入力は反対の値を有する)として機能し、一方、代替の実施形態において、リピータは、バッファ(その2つの入力は同じ値を有する)として機能する。
【0019】
代替の実施形態において、装置は、双方向通信パス内に配置される状態保持素子(例えば、フリップフロップ)を形成して、クロック信号に依存して双方向通信パスに沿って伝播するデータ信号をラッチする。1つの具体的実施形態において、そのような状態保持素子は、双方向通信パスの両端に提供される。
【0020】
装置が状態保持素子として使用される場合、その装置は、クロック信号における所定の遷移の間の第1および第2の回路への入力における双方向通信パス上のデータ信号の値を示す制御値を格納するように構成される、構成格納素子をさらに備えてもよい。次いで、第1および第2の回路のそれぞれにおける制御回路は、前記遷移が検出されたことを示す遷移検出回路からの前記信号、および前記構成格納素子に格納された前記制御値を、制御入力信号として受信するように配置されてもよく、それらの制御入力信号に依存して、前記受動状態、前記低利得状態よび前記高利得状態の間の関連した第1および第2の回路の遷移を制御するように構成される。
【0021】
1つの具体的実施形態において、前記構成格納素子に格納された制御値が第1の値である場合、第1の回路の制御回路は、その第1の回路を前記低利得状態にするように構成され、第1の回路は能動回路であり、第2の回路の制御回路は、その第2の回路を前記受動状態にするように構成され、第2の回路は受動回路である。逆に、前記構成格納素子に格納された制御値が第2の値である場合、第2の回路の制御回路は、その第2の回路を前記低利得状態にするように構成され、第2の回路は能動回路であり、第1の回路の制御回路は、その第1の回路を前記受動状態にするように構成され、第1の回路は受動回路である。
【0022】
一実施形態において、能動回路の遷移検出回路が前記遷移を検出する時に、能動回路の制御回路は、その能動回路を低利得状態から高利得状態に変化させるように構成される。しかしながら、受動回路の制御回路は、前記構成格納素子に格納された制御値が、前記クロック信号における次の所定の遷移後に更新された後まで、受動状態の受動回路を維持するように構成される。
【0023】
構成格納素子が格納された制御値を更新するようにトリガされ得るいくつかの様式がある。一実施形態において、装置は、前記クロック信号における前記所定の遷移の発生後に有効化パルスを生成するように構成されるパルス発生器をさらに備え、有効化パルスは、構成格納素子に、第1および第2の回路への前記入力における双方向通信パス上のデータ信号の現在の値を示すように、格納された制御値を更新させる。所定の遷移は、実装に依存して変動する。しかしながら、一実施形態において、前記クロック信号における所定の遷移は、クロック信号の立下りである。
【0024】
遷移検出回路は、様々な形態をとり得る。しかしながら、一実施形態において、遷移検出回路は、サイリスタ構成に配設されたトランジスタの対を備える。これは、遷移の速やかな検出を可能とする遷移検出回路のための特に効率的な実装を提供する。
【0025】
検出の速度をさらに改善するために、一実施形態において、前記対の両方のトランジスタは、前記装置内の他のトランジスタよりも低い閾値電圧を有するように構成される。
【0026】
一実施形態において、遷移検出回路は、スイッチ回路を介して前記双方向通信パスに接続される感知ノードの対と、前記感知ノードの対に接続され、前記遷移が検出されたことを示す信号を生成するように構成される、歪みインバータ回路とを備える。これは、インバータ回路を適切に歪めることにより、遷移の検出の速度を改善する。
【0027】
一実施形態において、装置は、前記双方向通信パスへの第1および第2の入力接続を有し、所定の状態への前記第1および第2の入力接続におけるデータ信号の値をリセッ
トするためのリセット条件に応答するリセット回路をさらに備える。これにより、装置は確実にリセット後に有効な開始状態となる。
【0028】
装置がインバータを形成する一実施形態において、リセット回路は、データ信号の値を、前記第1および第2の入力接続の一方において論理1にリセットし、前記第1および第2の入力接続の他方において論理0にリセットするためのリセット条件に応答する。
【0029】
第2の態様から見れば、本発明は、データ処理装置用の相互接続構造であって、データ処理装置の第1の処理ブロックと第2の処理ブロックとの間でデータ信号をルーティングするように構成される双方向通信パスと、前記双方向通信パスを一連の双方向通信パス部分に分離するために前記双方向通信パスに沿って分布した複数のリピータ回路であって、各リピータ回路は、本発明の第1の態様による装置を備える、複数のリピータ回路と、を備える相互接続構造を提供する。本発明の第1の態様によるリピータ回路を使用することにより、
図1を参照して上述した従来のリピータ回路と比較した場合に、リピータ回路の動作により性能およびエネルギー消費の利点が実現されるだけでなく、さらに、リピータ間のより広い分離が可能であり、それにより、面積の節約とともに、さらなるエネルギーの節約が提供されることが判明した。
【0030】
一実施形態において、相互接続構造は、各双方向通信パス部分上のデータ信号の値を、所定の状態にリセットするためのリセット条件に応答するリセット回路をさらに備える。1つの具体的実施形態において、各リピータは、インバータを形成し、リセット回路は、データ信号の値を、1つおきの交互の双方向通信パス部分上で論理1にリセットし、他の全ての双方向通信パス部分上で論理0にリセットするためのリセット条件に応答する。
【0031】
第3の態様から考慮すると、本発明は、データ処理装置内の双方向通信パスに沿って伝播するデータ信号を転送するための装置を操作する方法であって、装置は、双方向通信パスに平行に接続された第1の回路および第2の回路を備え、任意の時点において、第1および第2の回路の一方は、双方向通信パス上のデータ信号の値を監視する能動回路であり、第1および第2の回路の他方は、データ信号の値を監視しない受動回路であり、第1の回路および第2の回路のそれぞれは、双方向通信パスに接続された時に、双方向通信パス上のデータ信号の初期値における遷移を検出するための、遷移検出回路と、遷移検出回路を双方向通信パスに選択的に接続するためのスイッチ回路と、有効時に、遷移検出回路による遷移の検出に応答し、双方向通信パス上のデータ信号を、初期値とは反対の値に駆動する、駆動回路と、遷移検出回路、スイッチ回路および駆動回路の動作を制御するための制御回路と、を備え、前記方法は、能動回路を、最初に低利得状態にすることであって、スイッチ回路は、遷移検出回路を双方向通信パスに接続し、駆動回路は有効ではない、低利得状態にすることと、能動回路の前記制御回路に、前記遷移が検出されたことを示す遷移検出回路からの信号に応答して、能動回路を高利得状態にさせることであって、スイッチ回路は、遷移検出回路を双方向通信パスから切断し、駆動回路は、双方向通信パス上のデータ信号を前記反対の値に駆動するために有効化される、高利得状態にさせることと、データ信号が前記反対の値に駆動された後に、現在能動回路である第1および第2の回路の一方の制御回路に、第1および第2の回路の一方を受動状態にさせることであって、次いでそれが受動回路となる、受動状態にさせることと、データ信号が前記反対の値に駆動された後に、現在受動回路である第1および第2の回路の他方の制御回路に、第1および第2の回路の他方を前記低利得状態にさせることであって、次いでそれが能動回路となる、前記低利得状態にさせることと、を含む方法を提供する。
【0032】
第4の態様から考慮すると、本発明は、データ処理装置内の双方向通信パスに沿って伝播するデータ信号を転送するための装置であって、双方向通信パスに平行に接続するための第1の手段および第2の手段を備え、任意の時点において、第1および第2の手段の一方は、双方向通信パス上のデータ信号の値を監視するための能動手段であり、第1および第2の手段の他方は、データ信号の値を監視しない受動手段であり、第1の手段および第2の手段のそれぞれは、双方向通信パスに接続された時に、双方向通信パス上のデータ信号の初期値における遷移を検出するための遷移検出手段と、遷移検出手段を双方向通信パスに選択的に接続するためのスイッチ手段と、有効時に、遷移検出手段による遷移の検出に応答して、双方向通信パス上のデータ信号を、初期値とは反対の値に駆動するための駆動手段と、遷移検出手段、スイッチ手段および駆動手段の動作を制御するための制御手段と、を備え、能動手段は、最初に低利得状態であり、スイッチ手段は、遷移検出手段を双方向通信パスに接続し、駆動手段は有効ではなく、能動手段の制御手段は、前記遷移が検出されたことを示す遷移検出手段からの信号に応答し、能動手段を高利得状態に移行させ、スイッチ手段は、遷移検出手段を双方向通信パスから切断し、駆動手段は、双方向通信パス上のデータ信号を前記反対の値に駆動するために有効化され、現在能動手段である第1および第2の手段の一方の制御手段は、データ信号が前記反対の値に駆動された後に、第1および第2の手段の一方を受動状態にし、次いでそれが受動手段となり、現在受動手段である第1および第2の手段の他方の制御手段は、データ信号が前記反対の値に駆動された後に、第1および第2の手段の他方を前記低利得状態にし、次いでそれが能動手段となる装置を提供する。
【図面の簡単な説明】
【0033】
例示のみを目的として、添付の図面に示されるような本発明の実施形態を参照しながら、本発明をさらに説明する。
【
図1】双方向通信パスに沿って分布した一連の従来のリピータを示す概略図である。
【
図2】双方向通信パスに沿って分布した、一実施形態による一連のリピータを示す概略図である。
【
図3A】一実施形態による各リピータの第1および第2の回路内に提供されるコンポーネントを示し、装置の動作中にそれらの回路の状態が変化する様子を示すブロック図である。
【
図3B】一実施形態による各リピータの第1および第2の回路内に提供されるコンポーネントを示し、装置の動作中にそれらの回路の状態が変化する様子を示すブロック図である。
【
図3C】一実施形態による各リピータの第1および第2の回路内に提供されるコンポーネントを示し、装置の動作中にそれらの回路の状態が変化する様子を示すブロック図である。
【
図4】一実施形態に従い使用されるリピータの状態遷移図である。
【
図5】一実施形態による各リピータの第1および第2の回路の構造を示す詳細な図である。
【
図6】一実施形態に従い、低利得、高利得および受動状態のそれぞれにおいて、
図5の第1または第2の回路内のどのコンポーネントが使用されるかを示す図である。
【
図7A】一実施形態による
図2のフリップフロップの第1および第2の回路内に提供されるコンポーネントを示し、装置の動作中にそれらの回路の状態が変化する様子を示すブロック図である。
【
図7B】一実施形態による
図2のフリップフロップの第1および第2の回路内に提供されるコンポーネントを示し、装置の動作中にそれらの回路の状態が変化する様子を示すブロック図である。
【
図7C】一実施形態による
図2のフリップフロップの第1および第2の回路内に提供されるコンポーネントを示し、装置の動作中にそれらの回路の状態が変化する様子を示すブロック図である。
【
図8】一実施形態による
図2の各フリップフロップ内の第1および第2の回路の構造を示す詳細な図である。
【
図9】一実施形態による第1および第2の回路のそれぞれの動作を示すフロー図である。
【
図10A】一実施形態によるリピータを使用した際に生じるエネルギー消費の利点を示すグラフである。
【
図10B】一実施形態によるリピータを使用した際に生じるエネルギー消費の利点を示すグラフである。
【発明を実施するための形態】
【0034】
図2は、一実施形態による一連のリピータ50を概略的に示す図であり、一連のリピータは、双方向通信パスを一連の双方向通信パス部分15に分離するために、そのパスに沿って分布している。前述の
図1の例と同様に、第1のプロセッサコア10は、双方向通信パスの一方の端部に接続され、第2のプロセッサコア12は、双方向通信パスの他端に接続されている。しかしながら、双方向通信パスのいずれかの端部に接続されたデバイスがプロセッサコアである必要性はなく、代わりに、任意の好適なデバイスが双方向通信パスのいずれかの端部に接続されてもよい。
【0035】
一実施形態によるリピータ50の構造の詳細な説明は、
図5を参照しながら後述されるが、一実施形態において、各リピータは、双方向通信パスにわたり平行に接続される第1および第2の回路を備え、第1および第2の回路のそれぞれが、CMOS「サイリスタ構成」で配設されるトランジスタの対の形態の遷移検出回路を含み、したがって、
図2において、リピータ50のそれぞれは、「TABS」リピータとして標示されるが、TABSは、サイリスタ補助双方向信号伝達(Thyristor−Assisted Bidirectional Signalling)の略である。
【0036】
図8を参照しながらより詳細に後述されるように、リピータ50と同じ基本動作特性を有する回路を使用して、双方向パス沿いに設けられるフリップフロップ60を実装することができ、
図2の例において、そのようなフリップフロップは、コア10、12のそれぞれの中で使用されている。
図2に示される実施例において、データ信号は、単一のクロックサイクルで、プロセッサコア10、12の一方におけるフリップフロップ6 0から、他方のプロセッサコア10、12におけるフリップフロップ60まで、双方向通信パス全体を横断する。
【0037】
図2に示されるように、2つの隣接するリピータ50の間にわたる双方向通信パス部分15のそれぞれに対し、データ信号の初期値を設定するためのリセット条件に応答するように、リセット回路が提供される。一実施形態において、各リピータは、インバータとして機能し、したがって、リセット時に、各リピータへの反対の入力に対するデータ信号の値は、反対の値に設定される。したがって、1つの種類のリセット回路70、75は、リセット信号がアサートされる(この例においては論理1値として)と、関連した通信パス部分15に対する値を論理1値に設定するように配設される。逆に、別の形態のリセット回路80、85は、リセット信号がアサートされると、関連した通信パス部分に対するデータ信号の値を論理0値に設定するように配設される。
【0038】
図3Aは、一実施形態による各リピータ50を実装するために使用される第1の回路100および第2の回路150を示す。第1の回路は、双方向通信パスに接続された時に、双方向通信パス上のデータ信号の初期値における遷移を検出するように構成される遷移検出回路105を備える。さらに、遷移検出回路105を双方向通信パスに選択的に接続するように構成されるスイッチ回路110、115が提供される。駆動回路12 0、125は、有効時に、遷移検出回路105による遷移の検出に応答し、双方向通信パス上のデータ信号を、初期値とは反対の値に駆動するように構成される。したがって、初期値が論理0値である場合は、値は論理1値に駆動され、一方、初期値が論理1値である場合は、値は論理0値に駆動される。最後に、遷移検出回路、スイッチ回路および駆動回路の動作を制御するために、制御回路130が提供される。それらの制御動作を実行するために制御回路130が受信する入力は、2つの形態をとる。第1に、データ信号の初期値における遷移がいつ検出されたかを示す遷移検出回路105からの信号が受信される。第2の制御入力として、制御回路130は、リピータの両方の入力接続102、104からの値を受信する。
【0039】
第2の回路150は、同一の様式で構築され、したがって、素子155、160、165、170、175、180は、第1の回路100の素子105、110、115、120、125および130に対応する。しかしながら、第2の回路150は、第1の回路100が入力102、104にわたり接続される様式と相補的な様式で、2つの入力102、104にわたり接続される。その結果、第1および第2の回路100、15 0は、反対方向のデータ値の遷移を検出するために使用される。したがって、例として、第1の回路100は、入力102における論理1から論理0への遷移、または入力104における論理0から論理1への遷移を検出するように配設されてもよい。逆に、第2の回路150は、第1の入力102における論理0値から論理1値への遷移、および第2の入力104における論理1値から論理0値への遷移を検出するように構成されてもよい。
【0040】
任意の時点で、第1および第2の回路の一方は、双方向通信パス上のデータ信号の値を監視する能動回路となり、一方、他方の回路は、データ信号の値を監視しない受動回路となる。
図3Aに示される例のために、第1の回路100が現在能動回路であり、第2の回路150が現在受動回路であると仮定する。最初に、第1の回路は、低利得状態で動作可能であり、スイッチ110、115は、遷移検出回路105を入力信号に接続するために閉じている。したがって、遷移検出回路105は、この時点で有効である。しかしながら、制御回路は、この段階において駆動回路120、125の両方を無効化する。
【0041】
受動状態である第2の回路150を考慮すると、遷移検出回路155および駆動回路170、175は共に有効ではなく、スイッチ160、165は開いており、遷移検出回路を入力から切り離している。
【0042】
第1の回路100は、遷移検出回路がいずれかの入力での遷移を検出するまで、
図3Aに示される低利得状態を維持する。したがって、遷移検出回路は、入力102における論理1値から論理0値への遷移を検出し得るか、または代替として、入力104における論理0値から論理1値への遷移を検出し得る。そのような遷移が検出されるとすぐに、遷移検出回路は、制御回路にスイッチ110、115を開かせ、それにより遷移検出回路を入力から切り離し、無効状態にする信号を、制御回路130に送信する。同時に、駆動回路120、125は、入力をその新たな値に駆動するために有効化される。したがって、入力120は、論理0値に駆動され、入力104は、論理1値に駆動される。この状態において、第1の回路は、高利得状態100にあると言われる。上述の機構を使用して、入力は、速やかに新たなフリップ状態に遷移され得る。この時間の間、
図3Bに示されるように、第2の回路150は、受動状態を維持する。
【0043】
図3Cに示されるように、入力102、104がその新たな状態に駆動されると、制御回路130は、それらの入力102、104への接続を介してこの新たな状態を観察し、その時点で駆動回路120、125を無効状態にし、それにより第1の回路100は、受動状態に移行して受動回路になる。同時に、第2の回路150における対応する制御回路180はまた、入力102、104における状態遷移を観察し、スイッチ160、165を閉じさせて遷移検出回路155を有効化させ、それにより、第2の回路を低利得状態に移行させ、能動回路とする。この時点で、リピータは、いずれかの入力102、104において生じる後続の遷移を検出するように自己構成される。
【0044】
上記説明から、上述の実施形態のリピータは、完全に自己構成型であり、その動作は、遷移が第1のプロセッサコア10から第2のプロセッサコア12に伝送されている信号に起因して、または第2のプロセッサコア12から第1のプロセッサコア10に伝送されている信号に起因して生じているかに関係なく同一である。また、リピータは、完全に自己タイミング型であり、その操作にクロック信号は必要ない。結果として、リピータは、構成負担を有さず、それにより、
図1を参照しながら前述したような従来のリピータと比較して、より高い性能およびより低いエネルギー消費の両方を提供する。
【0045】
図4は、
図3Aから3Cを参照しながら上述したリピータの状態遷移図である。この図において、第1の回路はTABS_TOPと呼ばれ、第2の回路はTABS_BOTと呼ばれる。示されるように、処理状態の組み合わせが、状態200、状態210、状態220および状態230の間で遷移する。第1の回路は、有効時に、第1の入力10 2における論理1値から論理0値への遷移を、または第2の入力104における論理0値から論理1値への遷移を検出することができ、一方、第2の回路は、有効時に、第1の入力102における論理0値から論理1値への遷移を、または第2の入力104における論理1値から論理0値への遷移を検出することができる。
【0046】
図5は、第1の回路100の一実施形態の詳細な図である。前述したように、第2の回路150は、同一に構成されるが、そのポートは、双方向リピータを形成するように、リンクの反対のノードに接続される。
【0047】
図5に示されるように、PMOSトランジスタ300およびNMOSトランジスタ3 05がCMOSサイリスタ構成で配置され、遷移増幅器として使用される。回路100は、入力102における降下する遷移、または入力104における上昇する遷移を感知し、それにより、サイリスタに、両方の相互接続ノードを、反対の電源レールに切り替える、および引き出させる。
【0048】
上述したように、第1の回路および第2の回路は共に、3つの動作状態、すなわち低利得状態、高利得状態および受動状態を有する。いずれのスイッチも存在しない場合、またはリセットがアサートされた場合、能動回路は、低利得状態にされ、サイリスタノードは、感知トランジスタがその最低利得を有する電圧レベル(V
gs=0)まで、事前に充電/事前に放電されている。この低利得状態において、
図6のAに概略的に示されるように(低利得状態で使用されるコンポーネントが標示され、太字で示されている)、感知ノードS1およびS2は、低利得状態の間オンとなっている伝送ゲートT1 310およびT2 315を通して入力102、104に接続される。S1およびS2ノード電圧は、入力102および104上に設置される保持回路(図示せず)により保持される。
【0049】
入力102が高い値から低い値に遷移する場合、ノードS1は、最初に遷移に従う。これは、サイリスタにおけるPMOSデバイス300を徐々にオンにさせ、ノードS2 における電圧を上昇させ、それにより、NMOSサイリスタデバイス305をオンにさせる。この再生機構は、ノードS1およびS2を速やかに切り替えさせる。
【0050】
インバータ335、330は、より強いNMOS(インバータ335の場合)およびPMOS(インバータ330の場合)コンポーネントで歪められ、S1/S2切り替えに対するより速い応答を提供し、それにより、制御回路内のコンポーネント340、346、360および366に伝送ゲート310、315をオフにさせる出力信号を生成し、それにより、サイリスタを入力から切り離す。これにより、ノードS1およびS2は、入力102、104から切り離され、より速い切り替えが可能となる。
【0051】
サイリスタにおけるトランジスタ300、305が遷移すると、回路100は、
図6のBに示される高利得状態に移行し(
図6のBにおいて、高利得状態で使用されるコンポーネントが標示されており、太字で示されている)、感知トランジスタは、最も高い利得を有し(V
gs=V
DD/−V
DD)、これは、インバータ330、335を介して大きな内部ドライバ320、 325を強力にオンにし、それにより入力102、104をそれぞれの電源レールに向けて速やかに引き出して、状態の遷移を完了する。
【0052】
入力102および104が共に遷移したら、その遅延した信号値in_l_dおよびin_r_dは、コンポーネント390、392、394を介して事前充電信号cut_nおよびcut_pを有効化するが、これらの事前充電信号は、サイリスタをその事前充電状態にリセットおよび保持するように機能する。
【0053】
図6のCに示されるように、回路は、次いで、受動状態に移行し、制御回路内の素子340、342、344、346、348および350は、対応する素子360、362、364、366、368および370と同様に有効である。この状態において、駆動回路320、325およびサイリスタ300、305は共に無効であり、サイリスタは、入力から切断されている。
【0054】
また、
図5に示されるように、リセット信号がアサートされると、これは、トランジスタ305をオフにするためにトランジスタ385をオンにし、同様に、トランジスタ300をオフにするためにトランジスタ380をオンにする。
【0055】
一実施形態において、サイリスタを形成するトランジスタ300、305の動作速度を改善するために、これらのトランジスタは、回路内の他のトランジスタよりも低い閾値電圧を有するように構築される。
【0056】
第1の回路100または第2の回路150の一方は、低利得状態であるが、他方の回路150、100は、受動状態である。相互接続における遷移は、能動回路を低利得状
態から高利得状態を介して受動状態に切り替え、一方、他方の受動回路は、能動回路となり、その後相互接続の感知を開始して次の遷移を検出するために、受動状態から低利得状態に遷移する。
【0057】
上述の実施形態によるリピータ回路の配設は、いくつかの利点を提供する。まず、標準的セルベースの設計フロー内での従来のリピータのドロップイン交換を提供する。特に、完全に静的な実装は、そのようなTABSリピータが合成ベースの設計フローにおいて標準的セルとして使用されるのを可能にする。さらに、リピータは、自己タイミング型であり、構成負担を有さず、大幅な性能の向上およびエネルギー消費の節約を可能にする。例えば、1つの具体的な実施形態において、
図5のリピータ配設は、65nm CMOSにおいて1.0ボルトで実装された場合、8mm相互接続が、
図1に示されるもの等の従来のリピータと比較して、ビット当たり20%低いエネルギーで37%高い性能を達成することを可能にした。
【0058】
さらに、構成論理がないことが、クロッキングの必要性を排除し、設計フローを単純化して、低いデータ切り替え活動のための大きく改善されたエネルギー効率を提供するが、クロッキングは、従来の設計内のエネルギー消費の大きな割合を占める。特に、一実施形態において、
図5の設計は、低いデータ切り替え活動のための最大14倍良好なエネルギー効率を提供した。
【0059】
さらに、
図5の設計は、広範な供給電圧にわたり堅調な動作を提供し、それにより、多様な実装における使用が可能となる。性能の改善に加え、これらの特徴は、最適なリピータ挿入間隔を増加し、従来のリピータと比較して、双方向通信パスに沿って必要とされるリピータの数の大幅な低減をもたらす。1つの具体例において、挿入間隔を625μmから1mmに増加し、双方向通信パス内で38%少ないリピータをもたらすことができる。さらに、1.5mmの間隔で、エネルギー効率が51%改善されることが判明し、リピータカウントは、従来の最適間隔のリピータと同じ性能を維持しながら58%低減された。
【0060】
リピータとして使用されることに加えて、同様の回路配設はまた、従来の双方向フリップフロップの代わりに同期境界において使用するための同期型のリピータを提供するために使用することができ、そのような従来の双方向フリップフロップと比較して、大幅な面積の節約をもたらす。
【0061】
そのようなフリップフロップとして動作する際の回路の配設を、
図7Aに概略的に示す。
図3Aとの比較から分かるように、基本的な回路配設は非常に類似しており、したがって、第1の回路400内のコンポーネント405、410、415、420、425および430は、概して、
図3Aの第1の回路100におけるコンポーネント105、110、115、120、125、130に対応する。同様に、第2の回路450のコンポーネント455、460、465、470、475および480は、概して、
図3 Aの第2の回路150のコンポーネント155、160、165、170、175、および180に対応する。
【0062】
しかしながら、この実施形態において、入力402、404を直接監視する制御回路430、480ではなく、それらの入力は、代わりに、クロック信号に依存して制御される構成回路490に提供される。特に、クロック信号の立下りにおけるそれらの入力の値は、構成回路内でラッチされ、
図7AにおいてPASS_TOPおよびPASS_BOTと呼ばれる2つの制御信号を生成するために使用される。PASS_TOP信号
は、第1の回路400内の制御回路430に提供され、一方、PASS_BOT信号は、第2の回路450内の制御回路480に提供される。それらの信号が生成される様式に関するより詳細な議論は、
図8を参照しながら後述される。
【0063】
図7A〜7Cと前述の
図3A〜3Cとの比較から明らかなように、基本動作は同じであり、任意の時点で、一方の回路は能動回路で他方は受動回路であり、能動回路は低利得状態から高利得状態に、その後受動状態に遷移し、次いで受動回路となり、一方、受動回路は、遷移が完全に生じるまで受動状態を維持し、その後能動回路となって、次の遷移に関して双方向通信パスを監視する。
【0064】
図8は、
図7Aの第1の回路400内に提供されるコンポーネント、および構成回路490内に提供されるコンポーネントをより詳細に示す図である。2つのトランジスタ500、505は、遷移検出回路405を実装するために使用されるサイリスタを形成する。スイッチ410および415は、トランジスタ510、515により提供され、駆動回路420、425は、駆動トランジスタ520、525により形成される。制御回路は、NANDゲート540、NORゲート550、および様々なトランジスタ580、582、584、586により形成される。基本動作は、
図5の回路に関して前述した通りである。しかしながら、回路を直接高利得状態から受動状態に、または受動状態から低利得状態に遷移させるために使用される入力における値の代わりに、構成回路490により生成されるPASS_TOPおよびPASS_BOT信号が使用される。特に、
図8に示されるように、コンポーネント560、562、564、566により6T SRAMセルが形成され、遷移の方向が、クロック信号の立下りにおける相互接続の状態に基づいて、その6T SRAMセルに格納される。特に、パルス発生器570は、クロックの立下りに応答してパルス信号を生成し、この信号が、6T SRAMセルに、入力における値をサンプリングさせる。
【0065】
コンポーネント572、574、576、578から明らかなように、6T SRAMセル内に格納された値に依存して、PASS_TOP信号またはPASS_BOT信号のいずれかが設定され、他方の信号は設定されない。PASS_TOP信号が設定される場合、回路400が能動回路となり、一方PASS_BOT信号が設定される場合、回路450が能動回路となる。したがって、各クロックサイクルの開始時に、PASS_TOPおよびPASS_BOT信号の値に依存して、回路の一方が能動回路となり、他方が受動回路となる。
【0066】
図8の上記説明から、そのような配設は、従来の双方向フリップフロップの代わりに同期境界において使用するための同期型のリピータ構造を提供することが分かり、また一実施形態において、従来の双方向フリップフロップの使用と比較して、36%の面積の節約を提供することが判明している。
【0067】
図9は、
図5のリピータまたは
図8のフリップフロップ構造のいずれかの第1の回路および第2の回路のそれぞれの動作を概略的に示すフロー図である。ステップ600において、回路は、能動回路であるかどうかを決定し、能動回路である場合、ステップ605において、低利得状態であるかどうかを決定する。低利得状態である場合、ステップ610において、遷移がサイリスタにより検出されたかどうかが決定される。検出されていない場合、プロセスは、遷移が検出されるまでステップ610に留まり、その後、プロセスはステップ615に進行し、高利得状態に移行する。その後、プロセスはステップ605に戻る。
【0068】
次いで、ステップ605において、現在の状態が低利得状態でないことが決定され、したがってプロセスはステップ620に枝分かれし、データ信号が反対の値に駆動された(すなわち遷移が完全に生じた)かどうかが決定される。前述のように、駆動トランジスタは、この時点で、入力ノードを必要な反対の値に強力に駆動している。プロセスは、データ信号が反対の値に駆動された時点までステップ620に留まり、その後、プロセスはステップ625に進み、回路は受動状態に移行し、したがって受動回路となる。その後、プロセスはステップ600に戻る。
【0069】
この時、ステップ600において、回路が能動回路ではないことが決定され、したがってプロセスはステップ630に枝分かれし、データ信号が能動回路により反対の値に駆動されたかどうかが決定される。プロセスは、データ信号が反対の値に駆動されるまでステップ630に留まり、その後、プロセスはステップ635に遷移し、回路は低利得状態に移行し、したがって能動回路となる。その後、プロセスはステップ600に戻る。
【0070】
前述のTABS構造は、従来のインバータベースのリピータに勝る3つの主要な利点を提供する。まず、再生に次ぐ切り離し機構により、スイッチング待ち時間は、大域配線において一般に見られるような長い相互接続に対する低いスルーレートにより依存しなくなる。検出後に受信器がドライバを補助するTABS手法とは反対に、従来のリピータにおいては、遷移はドライバによってのみ行われる。さらに、内部フィードバックおよび状態追跡機構により、大域的な同期信号の必要性が排除される。
【0071】
図10Aは、例えば25℃で動作する65nm技術における従来のリピータと比較した、説明された実施形態のTABS構造を使用して達成可能なエネルギー消費の節約を示すグラフである。図示されるように、いかなる構成負担も存在しないことにより、T ABS技術は、リンク当たり602Mb/sの同じ処理量で、増加した双方向トラフィックを伴って27%から47%までエネルギー効率を改善する。双方向トラフィック確率は、トラフィックの方向の変化の確率を示す。予想されるように、TABS手法を使用した場合にはいかなる構成も行う必要がないことから(方向が変化する度に様々なフリップフロップ30を再構成する必要がある、
図1を参照しながら前述した従来の手法とは対照的に)、方向の変化がより頻繁である程、TABS技術を使用した場合に生じるエネルギー節約がより大きい。
【0072】
図10Bは、説明された実施形態のTABS構成を使用した場合のクロッキングの必要性の回避により生じる、エネルギー節約を示すグラフである。切り替え活動は、データが状態を遷移させる可能性の尺度である。したがって、この例において、方向は変化しないと仮定されており、0の切り替え活動は、データが静的であることを示し、1の切り替え活動は、データが各クロックサイクルを切り替えていることを示す。分かるように、データが静的である場合、TABS技術はエネルギーを使用せず、一方、従来の手法は、様々なフリップフロップ30がクロックされていることにより、依然としてエネルギーを消費する。したがって、データが静的である場合、最大の相対的エネルギー節約が生じる。逆に、切り替えの量が増加すると、クロッキングにより消費されるエネルギーが全体の消費エネルギーのより少ない割合となるため、エネルギー節約のパーセンテージが減少する。
【0073】
上述のTABS手法の使用から得られる改善された性能は、挿入間隔を増加させることにより、さらなるエネルギー効率の利益に利用することができる。上述の実施形態のTABS構造を使用して実現され得る増加した挿入間隔により、そのようなTAB構造は、頻繁なリピータ挿入が禁止されるキャッシュおよび他のIPブロック上で動作する双方向通信リンクにおける使用に極めて好適となる。
【0074】
本明細書において特定の実施形態を説明したが、本発明はこれに限定されず、本発明の範囲内で多くの修正および追加が行われてもよいことが認識される。例えば、本発明の範囲から逸脱せずに、独立請求項の特徴に対し、後続の従属請求項の特徴の様々な組み合わせがなされてもよい。