特許第5656179号(P5656179)IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ インテル・コーポレーションの特許一覧

特許5656179複合データのレベルシフタおよびデスキュー装置
<>
  • 特許5656179-複合データのレベルシフタおよびデスキュー装置 図000002
  • 特許5656179-複合データのレベルシフタおよびデスキュー装置 図000003
  • 特許5656179-複合データのレベルシフタおよびデスキュー装置 図000004
  • 特許5656179-複合データのレベルシフタおよびデスキュー装置 図000005
  • 特許5656179-複合データのレベルシフタおよびデスキュー装置 図000006
  • 特許5656179-複合データのレベルシフタおよびデスキュー装置 図000007
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】5656179
(24)【登録日】2014年12月5日
(45)【発行日】2015年1月21日
(54)【発明の名称】複合データのレベルシフタおよびデスキュー装置
(51)【国際特許分類】
   G06F 12/00 20060101AFI20141225BHJP
   G06F 1/12 20060101ALI20141225BHJP
   G06F 13/42 20060101ALI20141225BHJP
【FI】
   G06F12/00 564A
   G06F1/04 340D
   G06F13/42 340A
   G06F12/00 597D
   G06F12/00 564D
【請求項の数】20
【全頁数】15
(21)【出願番号】特願2014-501084(P2014-501084)
(86)(22)【出願日】2012年2月27日
(65)【公表番号】特表2014-515138(P2014-515138A)
(43)【公表日】2014年6月26日
(86)【国際出願番号】US2012026772
(87)【国際公開番号】WO2012134685
(87)【国際公開日】20121004
【審査請求日】2013年9月19日
(31)【優先権主張番号】13/072,375
(32)【優先日】2011年3月25日
(33)【優先権主張国】US
(73)【特許権者】
【識別番号】591003943
【氏名又は名称】インテル・コーポレーション
(74)【代理人】
【識別番号】110000877
【氏名又は名称】龍華国際特許業務法人
(72)【発明者】
【氏名】ヘルダー、エドワード アール.
(72)【発明者】
【氏名】ウォルターズ、ブランドン エム.
(72)【発明者】
【氏名】チェダ、マヘッシ エム.
(72)【発明者】
【氏名】リ、シェンガオ
(72)【発明者】
【氏名】スミツ、ケネス アール.
【審査官】 野田 佳邦
(56)【参考文献】
【文献】 特開2006−134334(JP,A)
【文献】 特表2007−505556(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G06F 12/00−12/06
G06F 13/16−13/18
G06F 1/12
G06F 13/42
(57)【特許請求の範囲】
【請求項1】
集積回路であって、
前記集積回路に配置される回路セルと、前記回路セルに結合されているメモリセルとを備え、
前記回路セルは、
第1のトランジスタ、第2のトランジスタ、第3のトランジスタ、および第4のトランジスタを有し、
前記集積回路の送信領域から、第1のクロック信号に対応付けられているデータ信号の少なくとも一部分を受信し、
前記集積回路の受信領域に対応付けられている第2のクロック信号であって、前記第1のクロック信号と周波数が同じである第2のクロック信号の少なくとも一部分を受信し、
前記データ信号のうち受信した前記少なくとも一部分を前記受信領域に送信し、
前記第1のトランジスタは、前記第2のトランジスタと直列に結合され、
前記第3のトランジスタは、前記第4のトランジスタと直列に結合され、
前記第2のトランジスタのドレイン端末は、前記メモリセルの入力ノードに結合され、
前記第4のトランジスタのドレイン端末は、前記メモリセルの出力ノードに結合され、
前記第1のトランジスタおよび前記第3のトランジスタはそれぞれ、前記データ信号の前記少なくとも一部分を受信し、
前記第2のトランジスタおよび前記第4のトランジスタはそれぞれ、前記第2のクロック信号の前記少なくとも一部分を受信する集積回路。
【請求項2】
前記回路セルはさらに、前記データ信号の前記受信した少なくとも一部分を、前記送信領域に対応付けられている第1の電圧レベルから、前記受信領域に対応付けられている第2の電圧レベルへとレベルシフトする請求項1に記載の集積回路。
【請求項3】
前記第1のクロック信号に対応付けられているデータ信号の前記少なくとも一部分は、前記第1のクロック信号の偶数番号のパルスに対応付けられている前記データ信号の一部分を含み、
前記第2のクロック信号の前記少なくとも一部分は、前記第2のクロック信号の偶数番号のパルスを含む請求項1または2に記載の集積回路。
【請求項4】
前記回路セルに結合されている別の回路セルをさらに備え、
前記別の回路セルは、第5のトランジスタ、第6のトランジスタ、第7のトランジスタおよび第8のトランジスタを有しており、
前記第5のトランジスタは前記第6のトランジスタに直列に結合されており、
前記第7のトランジスタは、前記第8のトランジスタに直列に結合されており、
前記第5のトランジスタおよび前記第7のトランジスタはそれぞれ、前記第1のクロック信号の奇数番号のパルスに対応付けられている前記データ信号の一部分を受信し、
前記第6のトランジスタおよび前記第8のトランジスタはそれぞれ、前記第2のクロック信号の奇数番号のパルスに対応付けられている前記第2のクロック信号の一部分を受信する請求項に記載の集積回路。
【請求項5】
前記第1のトランジスタおよび前記第3のトランジスタがそれぞれ前記データ信号の前記少なくとも一部分を受信することはさらに、前記第1のトランジスタが前記データ信号の前記少なくとも一部分を受信し、前記第3のトランジスタがインバータを介して前記データ信号の前記少なくとも一部分を受信することを含む請求項1または2に記載の集積回路。
【請求項6】
記メモリセルは、ループを形成するように循環して結合されている2つのインバータを有する請求項1からのいずれか一項に記載の集積回路。
【請求項7】
前記第2のクロック信号は、前記第1のクロック信号とインターリーブしている請求項1からのいずれか一項に記載の集積回路。
【請求項8】
送信される前記データ信号の安定性を改善するべく前記回路セルの出力ノードに結合されるラッチをさらに備える請求項1からのいずれか一項に記載の集積回路。
【請求項9】
集積回路であって、
前記集積回路に配置される回路セルを備え、
前記回路セルは、
前記集積回路の送信領域から、第1のクロック信号に対応付けられているデータ信号の少なくとも一部分を受信し、
前記集積回路の受信領域に対応付けられている第2のクロック信号であって、前記第1のクロック信号と周波数が同じである第2のクロック信号の少なくとも一部分を受信し、
前記データ信号のうち受信した前記少なくとも一部分を前記受信領域に送信し、
前記第1のクロック信号に対応付けられているデータ信号の前記少なくとも一部分は、前記第1のクロック信号の偶数番号のパルスに対応付けられている前記データ信号の一部分を含み、
前記第2のクロック信号の前記少なくとも一部分は、前記第2のクロック信号の偶数番号のパルスを含み、
前記回路セルに結合されている別の回路セルをさらに備え、
前記別の回路セルは、第5のトランジスタ、第6のトランジスタ、第7のトランジスタおよび第8のトランジスタを有しており、
前記第5のトランジスタは前記第6のトランジスタに直列に結合されており、
前記第7のトランジスタは、前記第8のトランジスタに直列に結合されており、
前記第5のトランジスタおよび前記第7のトランジスタはそれぞれ、前記第1のクロック信号の奇数番号のパルスに対応付けられている前記データ信号の一部分を受信し、
前記第6のトランジスタおよび前記第8のトランジスタはそれぞれ、前記第2のクロック信号の奇数番号のパルスに対応付けられている前記第2のクロック信号の一部分を受信する集積回路。
【請求項10】
集積回路であって、
前記集積回路に配置される回路セルを備え、
前記回路セルは、
前記集積回路の送信領域から、第1のクロック信号に対応付けられているデータ信号の少なくとも一部分を受信し、
前記集積回路の受信領域に対応付けられている第2のクロック信号であって、前記第1のクロック信号と周波数が同じである第2のクロック信号の少なくとも一部分を受信し、
前記データ信号のうち受信した前記少なくとも一部分を前記受信領域に送信し、
前記回路セルは、第1のトランジスタ、第2のトランジスタ、第3のトランジスタおよび第4のトランジスタを有しており、
前記第1のトランジスタは、前記第2のトランジスタと直列に結合されており、
前記第3のトランジスタは、前記第4のトランジスタと直列に結合されており、
前記第1のトランジスタおよび前記第3のトランジスタはそれぞれ、前記データ信号の前記少なくとも一部分を受信し、
前記第2のトランジスタおよび前記第4のトランジスタはそれぞれ、前記第2のクロック信号の前記少なくとも一部分を受信し、
前記第1のトランジスタおよび前記第3のトランジスタがそれぞれ前記データ信号の前記少なくとも一部分を受信することはさらに、前記第1のトランジスタが前記データ信号の前記少なくとも一部分を受信し、前記第3のトランジスタがインバータを介して前記データ信号の前記少なくとも一部分を受信することを含む集積回路。
【請求項11】
第1のクロック信号に対応付けられている集積回路(IC)の送信領域からデータ信号の第1の部分および第2の部分を受信する段階と、
前記ICの受信領域に対応付けられている第2のクロック信号であって、前記第1のクロック信号と周波数が同じである第2のクロック信号の第1の部分および第2の部分を受信する段階と、
前記データ信号の前記第1の部分および前記第2のクロック信号の前記第1の部分に基づいて出力信号の第1の部分を生成する段階と、
前記データ信号の前記第2の部分および前記第2のクロック信号の前記第2の部分に基づいて、前記出力信号の第2の部分を生成する段階とを備え
前記データ信号の前記第1の部分および前記第2の部分を受信することはさらに、第1のトランジスタおよび第3のトランジスタが、前記データ信号の少なくとも一部分をそれぞれ受信することを有し、
前記第2のクロック信号の前記第1の部分および前記第2の部分を受信することはさらに、第2のトランジスタおよび第4のトランジスタが、前記第2のクロック信号の少なくとも一部分をそれぞれ受信することを有し、
前記第1のトランジスタは、前記第2のトランジスタと直列に結合され、
前記第3のトランジスタは、前記第4のトランジスタと直列に結合され、
前記第2のトランジスタのドレイン端末は、メモリセルの入力ノードに結合され、
前記第4のトランジスタのドレイン端末は、前記メモリセルの出力ノードに結合される方法。
【請求項12】
前記出力信号の前記第1の部分および前記第2の部分を前記出力信号に多重化する段階をさらに備え、
前記データ信号は、第1の電圧レベルに対応付けられており、前記出力信号は、前記第1の電圧レベルとは異なる第2の電圧レベルに対応付けられている請求項11に記載の方法。
【請求項13】
前記第1のクロック信号の第1の部分および第2の部分を生成する段階と、
前記第1のクロック信号の前記第1の部分に基づいて前記データ信号の前記第1の部分を生成する段階と、
前記第1のクロック信号の前記第2の部分に基づいて前記データ信号の前記第2の部分を生成する段階と
をさらに備え、
前記第1のクロック信号の前記第1の部分は、前記第1のクロック信号の偶数番号のクロックサイクルに対応し、前記第1のクロック信号の前記第2の部分は、前記第1のクロック信号の奇数番号のクロックサイクルに対応する請求項11または12に記載の方法。
【請求項14】
前記第2のクロック信号の偶数番号のクロックサイクルに基づいて、前記第2のクロック信号の前記第1の部分を生成する段階と、
前記第2のクロック信号の奇数番号のクロックサイクルに基づいて、前記第2のクロック信号の前記第2の部分を生成する段階と
をさらに備える請求項11から13のいずれか一項に記載の方法。
【請求項15】
前記第2のクロック信号の前記第1の部分は、前記第1のクロック信号の前記第1の部分とインターリーブしており、
前記第2のクロック信号の前記第2の部分は、前記第1のクロック信号の前記第2の部分とインターリーブしている請求項14に記載の方法。
【請求項16】
前記出力信号の前記第1の部分および前記第2の部分を生成することはさらに、前記メモリセルの出力ノードにおいて、前記出力信号の前記第1の部分および前記第2の部分を生成することを有する請求項11から15のいずれか一項に記載の方法。
【請求項17】
システムメモリと、
前記システムメモリに通信可能に結合されているプロセッサと
を備え、
前記プロセッサは回路セルと、前記回路セルに結合されているメモリセルとを有し、
前記回路セルは、
第1のトランジスタ、第2のトランジスタ、第3のトランジスタ、および第4のトランジスタを有し、
第1のクロック信号に対応付けられている前記プロセッサの送信領域からデータ信号の少なくとも一部分を受信し、
前記プロセッサの受信領域に対応付けられている第2のクロック信号であって、前記第1のクロック信号と周波数が同じである第2のクロック信号の少なくとも一部分を受信し、
前記送信領域から前記受信領域へと前記データ信号のうち受信した前記少なくとも一部分を送信し、
前記第1のトランジスタは、前記第2のトランジスタと直列に結合され、
前記第3のトランジスタは、前記第4のトランジスタと直列に結合され、
前記第2のトランジスタのドレイン端末は、前記メモリセルの入力ノードに結合され、
前記第4のトランジスタのドレイン端末は、前記メモリセルの出力ノードに結合され、
前記第1のトランジスタおよび前記第3のトランジスタはそれぞれ、前記データ信号の前記少なくとも一部分を受信し、
前記第2のトランジスタおよび前記第4のトランジスタはそれぞれ、前記第2のクロック信号の前記少なくとも一部分を受信するシステム。
【請求項18】
前記第1のクロック信号に対応付けられている前記データ信号の前記少なくとも一部分は、前記第1のクロック信号のうち偶数番号のパルスに対応付けられている前記データ信号の一部分を含み、
前記第2のクロック信号の前記少なくとも一部分は、前記第2のクロック信号の偶数番号のパルスを含む
請求項17に記載のシステム。
【請求項19】
記メモリセルは、ループを形成するように循環して結合されている2つのインバータを有する請求項17または18に記載のシステム。
【請求項20】
前記2つのインバータで形成されるフィードバックループに結合されている別の回路セルをさらに備え、
前記別の回路セルは、第5のトランジスタ、第6のトランジスタ、第7のトランジスタおよび第8のトランジスタを有し、
前記第5のトランジスタは、前記第6のトランジスタに直列に結合され、
前記第7のトランジスタは、前記第8のトランジスタに直列に結合され、
前記第5のトランジスタおよび前記第7のトランジスタはそれぞれ、前記第1のクロック信号の奇数番号のパルスに対応付けられている前記データ信号の一部分を受信し、
前記第6のトランジスタおよび前記第8のトランジスタはそれぞれ、前記第2のクロック信号の奇数番号のパルスに対応付けられている前記第2のクロック信号の一部分を受信する請求項19に記載のシステム。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、概して集積回路に関し、具体的には集積回路内のデータ送信に関する。
【背景技術】
【0002】
本明細書では特に明記していない限り、このセクションに記載している内容は、本願の特許請求の範囲に対する先行技術ではなく、このセクションに含めることで先行技術と認めるものでもない。
【0003】
従来のコンピュータシステムのさまざまな構成要素は、一の集積回路(IC)内に集積化されているとしてよい。ICは、幾つかの領域に分割されており、各領域は、メモリコントローラ(MC)領域およびダブルデータレート(DDR)入出力(I/O)領域等、特定機能に特化している。データは、MC領域からDDR I/O領域へと、例えば、フリップフロップベースのFIFOまたはシフトレジスタを介して送信されるとしてよい。これら2つの領域は、動作クロック周波数が同じであるとしてよい。しかし、さまざまな理由から、2つの領域のクロックは、別々のクロックソース、例えば、異なるフェーズロックループ(PLL)クロックソースから発生している場合がある。場合によっては、これら2つの領域間のクロックスキューは、各クロックサイクルの50%を超えてしまう場合がある。クロックスキューに対処するべく、これら2つの領域間で矛盾することなくデータ転送を行うためには、フリップフロップベースのFIFOのセットアップ時間およびホールド時間の許容誤差を追加する必要がある。セットアップ時間およびホールド時間の要件が長くなると、データ送信経路では遅延が発生するとしてよい。これは、上記2つの領域間でのデータ送信がレイテンシに大きく左右される場合には特に、望ましくない。
【0004】
さらに、ICのこれら2つの領域は、動作電圧レベルが異なる場合がある。このため、データが受信領域に入力された後に、レベルシフトする必要があるとしてよい。別箇の回路ブロックを用いてデータにレベルシフトを実施すると、遅延がさらに大きくなるとしてよい。
【図面の簡単な説明】
【0005】
本開示の実施形態は、添付図面に図示している例に基づいて説明される。図示内容は本開示を限定するものではない。添付図面では、同様の構成要素は同様の参照符号で示している。添付図面は以下の通りである。
図1】本開示のさまざまな実施形態に応じた、集積回路の2つの領域間でデータ送信を行う回路を示すブロック図である。
図2】本開示のさまざまな実施形態に応じた、当該回路を伝搬する信号のさまざまな波形を示すタイミングチャートである。
図3】本開示のさまざまな実施形態に応じた、集積回路の送信領域の整形クロック生成部を示すブロック図である。
図4】本開示のさまざまな実施形態に応じた、集積回路の受信領域の整形クロック生成部を示すブロック図である。
図5】本開示のさまざまな実施形態に応じた、集積回路の2つの領域間でのデータ送信を行う回路の動作の一部分を示すフローチャートである。
図6】本開示のさまざまな実施形態に応じた、本明細書で説明する方法および/または装置のさまざまな側面を実施するために利用するのに適したコンピュータシステムの一例を示すブロック図である。
【発明を実施するための形態】
【0006】
以下に記載する詳細な説明では、本明細書の一部を成す添付図面を参照する。添付図面では、本開示の実施形態を一例として図示している。他の実施形態を利用するとしてもよく、さらに、本開示の範囲から逸脱することなく構造または論理を変更するとしてもよいと理解されたい。このため、以下の詳細な説明は、本開示を限定するものと解釈されるべきではなく、本開示の実施形態の範囲は、特許請求の範囲およびその均等物によって定義される。
【0007】
さまざまな処理は、本開示の実施形態を理解し易いよう、順番に実行される複数の別箇の処理として説明されるが、説明の順序は、これらの処理の結果が順序に左右されることを暗示するものと解釈されるべきではない。
【0008】
説明の便宜上、「A/B」または「Aおよび/またはB」という表現は、(A)、(B)または(AおよびB)を意味する。説明の便宜上、「A、BおよびCのうち少なくとも1つ」という表現は、(A)、(B)、(C)、(AおよびB)、(AおよびC)、(BおよびC)または(AおよびBおよびC)を意味する。説明の便宜上、「(A)B」という表現は、(B)または(AB)を意味し、Aが任意の要素であることを意味する。
【0009】
以下の説明では、「ある実施形態において」または「複数の実施形態において」という表現を利用するが、複数の同じ実施形態または異なる実施形態のうち1以上を意味するとしてよい。さらに、「備える」、「有する」、「含む」等の用語は、本開示の実施形態に関して用いられる場合、同義語とする。
【0010】
以下の説明では、「トランジスタ」、「インバータ」、「フリップフロップ」および「ラッチ」等、さまざまな用語を用いるが、さまざまな実施形態で用いられるさまざまな構成要素を表すものとするとしてよい。これらの構成要素はさまざまな方法で実現されるとしてよく、および/または、同様の機能を持つ構成要素を代りに用いるとしてもよいと理解されたい。例えば、「ラッチ」は、1以上のフリップフロップの一部に基づいて実現されるとしてよく、この逆も可能であるとしてよい。同様に、「インバータ」は、複数のトランジスタに基づいて実現されるとしてよい。さらに、これらの構成要素は、一の特定用途向け集積回路(ASIC)、フィールドプログラマブルゲートアレイ(FPGA)等に集積されるとしてよい。このため、本開示で用いられる単語は、例示を目的としたものに過ぎず、限定を意図したものではないと解釈されたい。
【0011】
本開示のさまざまな実施形態は、集積回路の送信領域から、当該集積回路の受信領域へとデータを送信するための回路を説明するとしてよい。当該回路は、適切な電圧レベルまでデータをレベルシフトするとしてよく、クロックスキューに対する許容誤差が良好であるとしてよい。
【0012】
図1は、本開示のさまざまな実施形態に応じた、集積回路の2つの領域間でのデータ送信を行う回路100を示すブロック図である。この実施形態では、集積回路(IC)は、送信領域110および受信領域150を含むとしてよい。これら2つの領域は、図1では点線101として図示している、理論上の境界線によって区別されるとしてよい。境界101の左側が送信領域110であるとしてよい。送信領域110は、例えば、ICのメモリコントローラ(MC)領域であるとしてよい。境界101の右側は、受信領域150であるとしてよい。受信領域150は、例えば、ICのダブルデータレート入出力(DDR I/O)領域であるとしてよい。また、回路100は、当該ICの他の領域間でのデータ送信にも用いられるとしてよい。
【0013】
本開示のさまざまな実施形態によると、送信領域110はクロック信号111を供給するクロックソース(不図示)に対応付けられているとしてよく、受信領域150は、クロック信号155を供給する別のクロックソース(不図示)に対応付けられているとしてよい。クロック信号111およびクロック信号155は、周波数が同じであるとしてよい。しかし、クロック信号111およびクロック信号155は、互いに相対的に、時間および/または位相においてスキューが発生しているとしてよい。
【0014】
本開示のさまざまな実施形態によると、送信領域110および受信領域150は、動作電圧レベルが異なるとしてよい。例えば、送信領域110の構成要素は概して、第1の電圧レベルで動作するとしてよく、受信領域150の構成要素は概して、第1の電圧レベルよりも高いかまたは低い第2の電圧レベルで動作するとしてよい。しかし、特定の例外が当てはまる場合があるとしてよく、本開示の後半部分でより詳細に説明する。
【0015】
本開示のさまざまな実施形態によると、回路100は送信領域110から受信領域150へとデータ信号130を伝搬させるとしてよい。回路100は、送信領域において、ラッチ122および123を備えるとしてよく、任意でフリップフロップ121を備えるとしてよい。フリップフロップ121は、フリップフロップ121のQ端子でクロック信号111を受信するとしてよい。フリップフロップ121は、データ信号130をクロック信号111に対して同期させて、データ信号131を生成するとしてよい。データ信号131はこの後、ラッチ122および123に供給するとしてよい。本開示の一部の実施形態によると、フリップフロップ121に代えてラッチまたは同様の構成要素を利用するとしてもよい。本開示の一部の他の実施形態によると、データ信号130は、フリップフロップ121を経由することなく、ラッチ122および123と直接通信可能に結合されているとしてよい。
【0016】
本開示のさまざまな実施形態によると、ラッチ122は、クロック信号112を受信するとしてよく、データ信号132を出力するとしてよい。クロック信号112は、クロック信号111に基づいた信号であるとしてよい。特に、クロック信号112は、クロック信号111の偶数クロックサイクルを追跡するクロック信号であるとしてよい。例えば、クロック信号111のパルスがタイミング0、1、2、3、4、5、6、・・・でHIGHになる場合、クロック信号112は、最初のパルスがHIGHになるのは、タイミング0またはタイミング0の直後であるとしてよく、タイミング2、4、6等まで、または、タイミング2、4、6等の直後までパルスはHIGHにならないとしてよい。したがって、ラッチ122は、クロック信号111の偶数クロックサイクル毎にデータ信号131を取得するとしてよい。偶数クロックサイクル同士の間は、データ信号132は、クロック信号111の次の偶数クロックサイクルが開始されるまで、そのデータレベルを維持するとしてよい。言い換えると、クロック信号112は、全ての偶数クロックサイクルについてのクロック信号111のスナップショットであってよく、データ信号132は、クロック信号111の偶数クロックサイクルにおけるデータ信号131のスナップショットであってよい。
【0017】
同様に、ラッチ123は、クロック信号113を受信するとしてよく、データ信号133を出力するとしてよい。クロック信号113は、クロック信号111の奇数クロックサイクルに基づくクロック信号であってよく、パルスがHIGHになるのは、クロック信号111のパルスがHIGHになるタイミング1、3、5等、または、これらのタイミングの直後であるとしてよい。データ信号133は、クロック信号111の奇数クロックサイクルにおけるデータ信号131のスナップショットであるとしてよい。
【0018】
本開示の一部の実施形態によると、上述した例が示すように、ラッチ122および123の両方がHIGHトランスペアレントラッチであるとしてよい。つまり、ラッチ122および123の出力はクロック信号112およびクロック信号113の立ち上がりエッジに従ったものになるとしてよい。他の実施形態によると、クロック信号112および113が適宜調整される限りにおいて、LOWトランスペアレントラッチ、HIGHトランスペアレントラッチおよびLOWトランスペアレントラッチの組み合わせ、または、その他の種類のラッチを利用するとしてもよい。
【0019】
本開示のさまざまな実施形態において、回路100は、受信領域150において、メモリセル170、第1の回路セル160、第2の回路セル180、および、任意のラッチ173を備えるとしてよい。メモリセル170ならびに回路セル160および180は、図1において、点線で示すボックスとして図示している。
【0020】
本開示のさまざまな実施形態によると、メモリセル170は、回路セル160および180に結合されているとしてよい。メモリセル170は、入力ノード156および出力ノード153を有するとしてよい。メモリセル170は、スタティックランダムアクセスメモリ(RAM)セルまたはダイナミックRAMセル、または、他の種類のメモリセルと同様に、信号を格納する構成要素を含むとしてよい。一部の実施形態によると、例えば、図示しているように、メモリセル170は2つのインバータを円形に接合してインバータフィードバックループを形成するとしてよい。当該ループは、スタティックRAM(SRAM)セルと同様の機能を持つとしてよい。
【0021】
本開示のさまざまな実施形態によると、回路セル160は、トランジスタ161、162、163および164を備えるとしてよい。図示しているように、さまざまな実施形態では、トランジスタ161−164はN型トランジスタであってよい。トランジスタ161のソース端末は、トランジスタ162のドレイン端末に結合されているとしてよく、トランジスタ163のソース端末は、トランジスタ164のドレイン端末に結合されているとしてよい。トランジスタ161のドレイン端末は、メモリセル170の入力ノード156に結合されているとしてよく、トランジスタ163のドレイン端末は、メモリセル170の出力ノード153に結合されているとしてよい。トランジスタ162および164のソース端末は、Vssまたはグラウンドに結合されているとしてよい。本開示の他の実施形態によると、トランジスタ161−164はP型トランジスタであってもよく、当業者の理解にしたがって、トランジスタ161−164のさまざまな端末は、これに応じて配置されるとしてよい。
【0022】
本開示のさまざまな実施形態によると、トランジスタ161はゲート端末を介してクロック信号152を受信するとしてよい。送信領域のクロック信号112と同様に、クロック信号152は、クロック信号155の偶数クロックサイクルに同期されるクロック信号であってよい。特定の実施形態によると、図示したように、クロック信号155のパルスがHIGHまたはLOWのいずれであるかに応じて、トランジスタ161は反転クロック信号152を受信するとしてよい。
【0023】
本開示のさまざまな実施形態によると、トランジスタ162は、ゲート端末において、データ信号132を受信するとしてよい。クロック信号152に応じて、トランジスタ161のゲート端末における電圧レベルがHIGHである場合、トランジスタ161がオンになるとしてよい。この結果、トランジスタ162とメモリセル170の入力ノード156とが電気的に結合される。データ信号132がHIGHである場合(例えば、データ信号132が「1」である場合)、トランジスタ162がオンになるとしてよい。この結果、メモリセル170の入力ノード156において電圧レベルが下がり、出力ノード153においてHIGHとなる(例えば、出力ノード153もまた「1」となる)。
【0024】
トランジスタ163は、ゲート端末を介して、クロック信号152を受信するとしてよい。トランジスタ164は、インバータ169を介して、ゲート端末において、データ信号132の反転バージョンを受信するとしてよい。クロック信号152に応じて、トランジスタ163のゲート端末における電圧レベルがHIGHである場合、トランジスタ163がオンになるとしてよい。この結果、トランジスタ164がメモリセル170の出力ノード153と電気的に結合されるとしてよい。データ信号132がLOWである場合(例えば、データ信号132が「0」である場合)、インバータ169のために、トランジスタ162がオンになるとしてよい。この結果、メモリセル170の出力ノード153における電圧レベルが下がり、出力ノード153がLOWになる(例えば、出力ノード153もまた「0」になる)。
【0025】
トランジスタ161および163のゲート端末における電圧レベルがLOWである場合、トランジスタ161および163がオフになるとしてよい。この結果、トランジスタ162および164がメモリセル170から切り離され、データ信号132がメモリセル170の出力から分離する。したがって、クロック信号152に応じて、トランジスタ161−164は協働して、メモリセル170に、出力ノード153において、データ信号132の遅延したバージョンである出力信号を生成させるとしてよい。さらに、ノード153における出力信号は、受信領域150の電圧レベルに等しくなるようにレベルシフトされるとしてよい。
【0026】
本開示のさまざまな実施形態によると、第2の回路セル180はデータ信号133を受信するとしてよい。回路セル180は、回路セル160と同様に、トランジスタ165−168を含むとしてよく、回路セル160に含まれるトランジスタ161−164と同様の構造を持つとしてよい。しかし、トランジスタ165および168は、クロック信号155の奇数クロックサイクルに基づいたクロック信号151を受信するとしてよい。クロック信号151に応じて、トランジスタ161−164と同様に、トランジスタ165−168は協働して、メモリセル170に、出力ノード153において、データ信号133を遅延させたバージョンである出力信号を生成させるとしてよい。したがって、出力ノード153における信号は、クロック信号155の偶数クロックサイクルではデータ信号132に基づいた信号であるとしてよく、クロック信号155の奇数クロックサイクルではデータ信号133に基づいた信号であるとしてよい。信号155の偶数クロックサイクルおよび奇数クロックサイクルが出力ノード153において多重化されると、ノード153における出力信号は、送信領域から送信されたデータ信号130に遅延およびレベルシフトが発生したものであるとしてよい。
【0027】
本開示のさまざまな実施形態によると、図示しているように、ラッチ173は、多重化された出力ノード153に結合されているとしてよく、クロック信号155を受信するとしてよい。ラッチ173はさらに、出力信号を安定化させて、データ信号154を生成するとしてよい。データ信号154は、レベルシフトされてクロックのスキューが除去された後、受信領域150の残りの部分を伝搬するとしてよい。他の実施形態によると、ラッチ173は必要でないとしてよい。
【0028】
受信領域150の側の構成要素の大半は受信領域150の電圧レベルで動作するが、本開示のさまざまな実施形態によると、トランジスタ162、164、166および168は、ゲート端末において、送信領域110の電圧レベルで信号を受信するとしてよい。さまざまな実施形態によると、トランジスタ162、164、166および168は、送信領域110と受信領域150との間の電圧レベルの差に基づいて構成されるとしてよい。さらに、トランジスタ161−168はN型トランジスタとして説明されているが、トランジスタ161−168はP型トランジスタであってもよく、N型トランジスタおよびP型トランジスタの両方が混合しているとしてもよい。トランジスタ161−168は、サイズが同じであってもよいし、そうでなくてもよい。
【0029】
図2は、本開示のさまざまな実施形態に応じた、回路100を伝搬する信号のさまざまな波形を図示するタイミングチャートである。クロック信号111、112、152、113および151、ならびに、データ信号132、133、ならびに、出力ノード153におけるメモリセル170の出力信号、ならびに、データ信号154の波形を図示している。本開示のさまざまな実施形態によると、クロック信号112、113、152および151は、パルスがHIGHまたはLOWのいずれであってもよい。例えば、図2に図示しているように、クロック信号112および113はパルスがHIGHであり、クロック信号152および151のパルスはLOWであるとしてよい。
【0030】
本開示のさまざまな実施形態によると、図示されているように、送信領域110と受信領域150との間にクロックスキューが発生していない理想的なケースでは、送信領域のクロック信号111および受信領域のクロック信号155は同一であるとしてよい。さらに、クロック信号152のパルスは、クロック信号112のパルスに追従するとしてよく、クロック信号151のパルスはクロック信号113のパルスに追従するとしてよい。このように、クロック信号112、152、113および151は、互いにインターリーブされるとしてよい。例えば、第1のクロックサイクルにおいて、クロック信号113および151が平坦な状態を維持する一方、クロック信号112のパルスはクロックサイクルの前半においてHIGHまたはLOWになるとしてよく、クロック信号152のパルスはクロックサイクルの後半においてHIGHまたはLOWになるとしてよい。第2のクロックサイクルにおいて、クロック信号112および152が平坦な状態を維持する一方、クロック信号113のパルスはクロックサイクルの前半においてHIGHまたはLOWになるとしてよく、クロック信号151のパルスはクロックサイクルの後半においてHIGHまたはLOWになるとしてよい。
【0031】
本開示のさまざまな実施形態によると、送信領域110と受信領域150との間にクロックスキューが発生している場合、回路100はホールドスキューおよびセットアップスキューの許容誤差が大きくなるとしてよい。ホールドスキュー許容誤差を証明するべく、クロック信号112が対応するクロック信号152よりも早く立ち下がるとしてよい。出力ノード153におけるデータ信号は、クロック信号112がクロック信号152よりも早いがその差が1クロックサイクル以下である限り、依然として正しい値を持つとしてよい。同様に、出力ノード153におけるデータ信号は、クロック信号113がクロック信号151よりも早いがその差が1クロックサイクル以下である限り、依然として正しい値を持つとしてよい。セットアップスキューの許容誤差を証明するべく、クロック信号112および113がそれぞれ、クロック信号152、151よりも後に立ち下がるとしてよい。出力ノード153におけるデータ信号は、フリップフロップ121が受信領域に近接した配置されていると仮定すると、クロック信号112または113がクロック信号152または151より遅いがその差が1クロックサイクルの半分以下である限りにおいて、依然として正しい値を持つとしてよい。したがって、回路100は、ホールドスキューの許容誤差が1クロックサイクルに略等しいとしてよく、セットアップスキューの許容誤差がクロックサイクルの略半分であるとしてよいさまざまな実施形態によると、セットアップスキューの許容誤差は、クロックサイクルおよびデータ伝搬遅延に関連しているとしてよい。このため、セットアップスキューの許容誤差は、クロックサイクルの半分より大きくても小さくてもよい。
【0032】
図3は、本開示のさまざまな実施形態に応じた、集積回路の送信領域110の整形クロック生成部300を説明するためのブロック図である。整形クロック生成部300は、図2に図示しているように、クロック信号111、112および113と同様のクロック信号を生成するとしてよい。本開示のさまざまな実施形態によると、適切なクロック波形が生成される限りにおいて、他のクロック生成部を用いるとしてもよい。
【0033】
図4は、本開示のさまざまな実施形態に応じた、集積回路の受信領域150の整形クロック生成部400を説明するためのブロック図である。整形クロック生成部400は、図2に図示しているように、クロック信号151、152および155と同様のクロック信号を生成するとしてよい。本開示のさまざまな実施形態によると、適切なクロック波形が生成される限りにおいて、他のクロック生成部を利用するとしてもよい。
【0034】
図5は、本開示のさまざまな実施形態に応じた、集積回路の2つの領域間のデータ送信を行う回路100の処理の一部を示すフローチャートである。ブロック510において、第1の整形クロック生成部は、送信領域110について偶数クロック信号112および奇数クロック信号113を生成するとしてよく、第2の整形クロック生成部は、受信領域150について偶数クロック信号152および奇数クロック信号151を生成するとしてよい。ブロック520において、偶数クロック信号112に対応するデータ信号132、および、奇数クロック信号113に対応するデータ信号133は、上述したように、データ信号131または130に基づいて、ラッチ122および133によって生成されるとしてよい。ブロック530において、回路セル160は、偶数クロック信号152に基づいてメモリセル170とやり取りして、データ信号132に基づいた第1の出力信号を生成するとしてよい。回路セル180は、奇数クロック信号151に基づいてメモリセル170とやり取りすることで、データ信号133に基づいた第2の出力信号を生成するとしてよい。第1および第2の出力信号は、回路100によってレベルシフトされ、ノード153で多重化された後、受信領域150を伝搬するとしてよい。
【0035】
図6は、本開示の実施形態に応じた、前述した方法および装置のさまざまな側面を実施するために用いるのに適したコンピュータシステムの一例を示す図である。同図に示すように、コンピュータシステム600は、電源部601と、複数のプロセッサまたはプロセッサコア602と、システムメモリ604と、大容量ストレージ606と、通信インターフェース610とを備えるとしてよい。本願では、請求項の記載も含めて、「プロセッサ」および「プロセッサコア」という用語は、特に文脈から明示されない限り、類義語とみなされるとしてよい。
【0036】
本開示のさまざまな実施形態によると、プロセッサ602のうち少なくとも1つは、図1に図示したMC領域およびDDR I/O領域のように、特定の機能について専用であるさまざまな領域を含むとしてよい。プロセッサはさらに、領域間のデータ送信を容易にするものとして前述した回路100を含むとしてよい。
【0037】
また、コンピューティングシステム600は、1以上の有形で非一時的なコンピュータ可読大容量ストレージデバイス606(例えば、ディスケット、ハードドライブ、コンパクトディスクリードオンリーメモリ(CD−ROM)等)、入出力デバイス608(キーボード、カーソルコントロール等)を含むとしてよい。さまざまな実施形態によると、I/Oデバイス608は、1以上のカメラ618を含むとしてよい。構成要素は、互いに結合されているとしてよく、システムバス612を介して前述した構成要素に結合されているとしてもよい。システムバス612は、1以上のバスを表しているとしてよい。複数のバスの場合、1以上のバスブリッジ(不図示)でブリッジングされているとしてよい。データは、システムバス612を通過して、I/Oデバイス608から、例えば、カメラ618から、プロセッサ602へと供給されるとしてよい。
【0038】
システムメモリ604および大容量ストレージ606は、本明細書ではまとめて参照番号622で表す、1以上のオペレーティングシステム、ファームウェアモジュールまたはファームウェアドライバ、アプリケーション等を実現するプログラミング命令の作業中コピーおよび永久的コピーを格納するために用いられるとしてよい。プログラミング命令の永久的コピーは、製造時または使用時に、例えば、コンパクトディスク(CD)等の配信媒体(不図示)、または、通信インターフェース610(配信サーバ(不図示)から)を介して永久的ストレージ606に入れるとしてよい。つまり、エージェントプログラムを実装している1以上の配信媒体を用いて、エージェントおよびプログラムをさまざまなコンピューティングデバイスに配信するとしてよい。
【0039】
これらの構成要素601−622の上記以外の構成は公知であるので、さらなる説明は省略する。
【0040】
本明細書で具体的な実施形態を図示および説明してきたが、当業者によれば、本開示の実施形態の範囲から逸脱することなく、図示および説明した具体的な実施形態に代えて、多岐にわたる代替実施形態および/または均等実施形態を採用し得ることに想到するであろう。本願は、本明細書で説明した実施形態の適応例または変形例を含むことを意図している。このため、本開示の実施形態は請求項およびその均等物によってのみ限定されるものと明らかに認められたい。
図1
図2
図3
図4
図5
図6