IP Force 特許公報掲載プロジェクト 2022.1.31 β版

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

▶ ザイリンクス インコーポレイテッドの特許一覧

特許7611860SOC電源投入順序付けのためのシステムおよび方法
<>
  • 特許-SOC電源投入順序付けのためのシステムおよび方法 図1
  • 特許-SOC電源投入順序付けのためのシステムおよび方法 図2
  • 特許-SOC電源投入順序付けのためのシステムおよび方法 図3A
  • 特許-SOC電源投入順序付けのためのシステムおよび方法 図3B
  • 特許-SOC電源投入順序付けのためのシステムおよび方法 図4
  • 特許-SOC電源投入順序付けのためのシステムおよび方法 図5
  • 特許-SOC電源投入順序付けのためのシステムおよび方法 図6
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-12-26
(45)【発行日】2025-01-10
(54)【発明の名称】SOC電源投入順序付けのためのシステムおよび方法
(51)【国際特許分類】
   G06F 15/78 20060101AFI20241227BHJP
   G06F 1/24 20060101ALI20241227BHJP
   H03K 17/22 20060101ALN20241227BHJP
【FI】
G06F15/78 517
G06F1/24 351
H03K17/22 B
【請求項の数】 15
(21)【出願番号】P 2021570231
(86)(22)【出願日】2020-05-29
(65)【公表番号】
(43)【公表日】2022-08-04
(86)【国際出願番号】 US2020035402
(87)【国際公開番号】W WO2020243626
(87)【国際公開日】2020-12-03
【審査請求日】2023-05-26
(31)【優先権主張番号】16/426,985
(32)【優先日】2019-05-30
(33)【優先権主張国・地域又は機関】US
(73)【特許権者】
【識別番号】591025439
【氏名又は名称】ザイリンクス インコーポレイテッド
【氏名又は名称原語表記】XILINX INCORPORATED
(74)【代理人】
【識別番号】110002077
【氏名又は名称】園田・小林弁理士法人
(72)【発明者】
【氏名】プリパティ, ナレンドラ クマール
(72)【発明者】
【氏名】サラスワトゥラ, スレー アールケーシー
(72)【発明者】
【氏名】ヤチャレニ, サントッシュ
(72)【発明者】
【氏名】ルー, ウェイグアン
(72)【発明者】
【氏名】ホ, フーヒン
【審査官】坂東 博司
(56)【参考文献】
【文献】米国特許出願公開第2011/0032019(US,A1)
【文献】特表2019-511730(JP,A)
【文献】特表2014-515843(JP,A)
【文献】米国特許出願公開第2012/0221833(US,A1)
【文献】米国特許出願公開第2012/0187998(US,A1)
【文献】米国特許出願公開第2018/0316180(US,A1)
【文献】米国特許出願公開第2009/0027102(US,A1)
【文献】米国特許第07271504(US,B2)
【文献】米国特許第08612789(US,B2)
【文献】米国特許第09471120(US,B1)
【文献】米国特許第09859885(US,B2)
(58)【調査した分野】(Int.Cl.,DB名)
G06F 15/78
G06F 1/24
H03K 17/22
(57)【特許請求の範囲】
【請求項1】
第1のパワードメインが提供する第1の領域と、
第2のパワードメインが提供する第2の領域と、
前記第1のパワードメインと前記第2のパワードメインの間に直接配置されたプログラマブルインターフェースと、
前記プログラマブルインターフェース内に配置され、前記第1のパワードメインから前記第2のパワードメインに第1のデータを移動させるように構成された第1のレベルシフティング回路と、
前記プログラマブルインターフェース内に配置され、前記第2のパワードメインから前記第1のパワードメインに第2のデータを移動させるように構成された第2のレベルシフティング回路と、
パワーオンリセットシステム(PORS)とを備え、
前記PORSが、
前記第1のパワードメインおよび前記第2のパワードメインの電圧を検出するように構成された電圧検出回路と、
前記第1のレベルシフティング回路および前記第2のレベルシフティング回路に結合された制御回路であって、前記第1のパワードメインおよび前記第2のパワードメインの検出された前記電圧に応答して、前記第1のレベルシフティング回路を制御する第1の絶縁信号、および前記第2のレベルシフティング回路を制御する第2の絶縁信号を発生させるように構成され、前記第1の絶縁信号と前記第2の絶縁信号の間の遅延を制御し、前記第1のパワードメインと前記第2のパワードメインの間のノイズ結合を制御する、制御回路とを備える、集積回路(IC)。
【請求項2】
前記PORSが、前記第2のパワードメインの電圧変化を示す、前記電圧検出回路に結合されたグリッチフィルタ回路をさらに備える、請求項1に記載の集積回路。
【請求項3】
前記第2のパワードメインの前記電圧変化が所定の時間期間を過ぎると、前記制御回路が、前記第1のレベルシフティング回路を無効にしてから第1の所定の遅延後に前記第2のレベルシフティング回路を無効にするようにさらに構成されている、請求項2に記載の集積回路。
【請求項4】
前記制御回路が、前記第2のレベルシフティング回路を無効にしてから第2の所定の遅延後に前記第2のパワードメインをリセットするパワーオンリセット信号を放出するようにさらに構成されている、請求項3に記載の集積回路。
【請求項5】
前記第2の領域が、前記第1の領域と重なり合わない前記ICの一部に設けられている、請求項1に記載の集積回路。
【請求項6】
前記第1の領域が、マスタ電源として働き、前記ICの電力管理をもたらすように構成されたプラットフォーム管理コントローラ(PMC)を備える、請求項1に記載の集積回路。
【請求項7】
前記第2の領域が、プロセッサシステム(PS)またはプログラマブル論理(PL)ブロックを備える、請求項6に記載の集積回路。
【請求項8】
第3のパワードメインが提供する第3の領域と、
前記第2のパワードメインから前記第3のパワードメインに第3のデータを移動させるように結合された第3のレベルシフティング回路と、
前記第3のパワードメインから前記第2のパワードメインに第4のデータを移動させるように結合された第4のレベルシフティング回路とをさらに備え、
前記電圧検出回路が、前記第1のパワードメイン、前記第2のパワードメイン、および前記第3のパワードメインの電圧を検出するようにさらに構成され、前記制御回路がさらに、前記第3のレベルシフティング回路および前記第4のレベルシフティング回路に結合され、前記第1のパワードメイン、前記第2のパワードメイン、および前記第3のパワードメインの検出された前記電圧に応答して、前記第3のレベルシフティング回路を制御する第3の絶縁信号と、前記第4のレベルシフティング回路を制御する第4の絶縁信号とを発生させるように構成されている、請求項7に記載の集積回路。
【請求項9】
パワードメイン間で電力移行を調和させるための方法であって、
第1のパワードメインが第1の領域を提供することと、
第2のパワードメインが第2の領域を提供することと、
前記第1のパワードメインと前記第2のパワードメインの間にプログラマブルインターフェースを直接配置することと、
前記第1のパワードメインから前記第2のパワードメインに第1のデータを移動する第1のレベルシフティング回路を前記プログラマブルインターフェース内に配置することと、
前記第2のパワードメインから前記第1のパワードメインに第2のデータを移動する第2のレベルシフティング回路を前記プログラマブルインターフェース内に配置することと、
前記第1のパワードメインおよび前記第2のパワードメインの電圧を検出することと、
前記第1のパワードメインおよび前記第2のパワードメインの検出された前記電圧に応答して、前記第1のレベルシフティング回路を制御する第1の絶縁信号と、前記第2のレベルシフティング回路を制御する第2の絶縁信号とを制御回路により生成し、前記第1の絶縁信号と前記第2の絶縁信号の間の遅延と、前記第1のパワードメインと前記第2のパワードメインの間のノイズ結合を前記制御回路により制御することと、を含む、方法。
【請求項10】
前記第2のパワードメインの電圧変化が、所定の時間期間を過ぎると、
前記第1の絶縁信号を使用して、前記第1のレベルシフティング回路を無効にすることと、
前記第1のレベルシフティング回路を無効にしてから第1の所定の遅延後に、前記第2の絶縁信号を使用して、前記第2のレベルシフティング回路を無効にすることと、
前記第2のレベルシフティング回路を無効にし、パワーオンリセット信号を放出してから第2の所定の遅延後に、前記第2のパワードメインをリセットすることと、をさらに含む、請求項9に記載の方法。
【請求項11】
前記第2の領域が、前記第1の領域と重なり合わないICの一部に設けられている、請求項10に記載の方法。
【請求項12】
前記第1の領域が、マスタ電源として働き、前記ICの電力管理をもたらすように構成されたプラットフォーム管理コントローラ(PMC)を備える、請求項11に記載の方法。
【請求項13】
前記第2の領域が、プロセッサシステム(PS)、拡張パフォーマンスI/Oブロック(XPIO)、またはプログラマブル論理(PL)ブロックを備える、請求項12に記載の方法。
【請求項14】
第3のパワードメインが第3の領域を提供することと
前記第2のパワードメインから前記第3のパワードメインに第3のデータを移動させることと、
前記第3のパワードメインから前記第2のパワードメインに第4のデータを移動させることと、
前記第1のパワードメイン、前記第2のパワードメイン、および前記第3のパワードメインの電圧を検出することと、
前記第1のパワードメイン、前記第2のパワードメイン、および前記第3のパワードメインの検出された前記電圧に応答して、第3の絶縁信号を使用して、前記第3のレベルシフティング回路を制御し、第4の絶縁信号を使用して、前記第4のレベルシフティング回路を制御することと、をさらに含む、請求項13に記載の方法。
【請求項15】
前記第3のパワードメインの電圧変化が、所定の時間期間を過ぎると、
前記第3の絶縁信号を使用して、前記第3のレベルシフティング回路を無効にすることと、
前記第3のレベルシフティング回路を無効にしてから第3の所定の遅延後に、前記第4の絶縁信号を使用して、前記第4のレベルシフティング回路を無効にすることと、
前記第4のレベルシフティング回路を無効にし、パワーオンリセット信号を放出してから第4の所定の遅延後に、前記第3のパワードメインをリセットすることと、をさらに含む、請求項14に記載の方法。
【発明の詳細な説明】
【技術分野】
【0001】
様々な実施形態は、概して、集積回路デバイスに関し、より具体的には、電源投入時にシステムオンチップ(SoC:System-on-Chip)に供給される複数の電力を管理することができる電力管理回路を含むデバイスに関するものである。
【背景技術】
【0002】
プログラマブル集積回路(IC:Integrated Circuit)とは、プログラマブル回路を含むある種のICのことである。プログラマブルICの一例として、フィールドプログラマブルゲートアレイ(FPGA:Field Programmable Gate Array)がある。FPGAの特徴は、プログラマブル回路ブロックを搭載していることである。プログラマブル回路ブロックの例としては、入出力ブロック(IOB:Input/Output Block)、構成可能論理ブロック(CLB:Configurable Logic Block)、専用ランダムアクセスメモリブロック(BRAM:Dedicated Random Access Memory block)、デジタル信号処理ブロック(DSP:Digital Signal Processing Block)、プロセッサ、クロックマネージャ、および遅延ロックループ(DLL:Delay Lock Loop)があるが、これらに限定されるものではない。
【0003】
回路設計は、時に構成ビットストリームと呼ばれる構成データをデバイスに読み込むことで、プログラマブルICのプログラマブル回路内に物理的に具体化され得る。構成データは、デバイスの内部構成メモリセルに読み込まれ得る。個々の構成メモリセルの集合状態が、プログラマブルICの機能を決める。例えば、様々なプログラマブル回路ブロックによって行われる特定の演算や、プログラマブルICのプログラマブル回路ブロック間の接続性は、構成データが読み込まれた時点の構成メモリセルの集合状態によって定義される。
【発明の概要】
【0004】
装置および関連する方法は、システムオンチップ(SoC)レベルでの統合されたパワーオンリセットシステム(PORS:Power-On-Reset System)に関するものである。説明のための例では、集積回路が、第1のパワードメインおよび第2のパワー領域を含み得る。レベルシフタ回路が、第1のパワードメインから第2のパワードメインにデータを移動させるように結合され得る。電圧検出回路、グリッチフィルタ回路、および論理ゲートを含むPORSが、第1のパワードメインと第2のパワードメインとの間で絶縁信号を発生させるように構成され得る。発生した絶縁信号に応答してレベルシフタ回路が有効になり得る。絶縁信号を用いることで、電源投入時にIC上の複数のパワードメインを包括的に管理し、不安定な動作を回避することができる。
【0005】
様々な実施形態は、1つまたは複数の利点を実現し得る。例えば、電源投入時に、様々なランプ速度を持つ電源を制御し得、それにより、チップにおける競合電流、および/または様々なパワードメイン間のノイズ結合を大幅に減らすかまたはなくすことができる。実施形態によっては、複数の電圧クロスドメインの不足と巨大な電流サージに起因する電源投入時のチップの損傷が、大幅に低減されるかまたはなくされ得る。実施形態によっては、絶縁信号は、プログラマブル論理(PL:Programmable Logic)がパワーオンリセット(POR:Power-On-Reset)信号を取得する前に、高可用性シームレス冗長プロトコル(HSR:High-availability Seamless Redundancy protocol)に到達し得る。意図しないPOR/リセット事象が起こると、絶縁信号よりもPOR信号を遅らせることにより、IOグリッチが防止され得る。実施形態によっては、PLとネットワークオンチップ(NoC:Network-on-Chip)ブロックの電源との間の絶縁信号は、PL電源切断により遅延する可能性があり(例えば、100ns)、これによりNoCブロックへのノイズ結合を大幅に低減し得る。いくつかの実施形態は、レジスタ転送レベル(RTL:Register-Transfer Level)の検証強化のために、POR電圧検出器モデルにパワーアウェアサポートを提供することができる。総電源投入時間を短縮することができる実施形態もあれば、オンチップ電圧生成を備えたPLファブリックのパフォーマンスを向上させることができる実施形態もある。いくつかの実施形態は、システムレベルでの消費電力を削減することのできるPMCディープスリープモードも提供し得る。実施形態によっては、通常のモード時にシステムモニタリング(SYSMON:SYStem MONitoring)/アナログミキサ信号(AMS:Analog Mixer Signal)からすべてのPL電源(Vccint、Vccint_ram、Vccaux)が立ち上がったのが分かった後、26msカウンタを飛ばすことのできるファームウェア(FM:FirMware)依存のskip_por_cntを使用して、por_pl_b信号を発生させ、総電源投入時間を最小限に抑えることができる。いくつかの実施形態は、複数のパワードメインを横断する滑らかな境界走査チェーンを提供し得る。
【0006】
ある例示的な態様において、集積回路(IC)は、第1のパワードメインによって提供される第1の領域と、第2のパワードメインによって提供される第2の領域とを含む。第1のレベルシフティング回路が、第1のパワードメインから第2のパワードメインに第1のデータを移動させるように結合され、第2のレベルシフティング回路が、第2のパワードメインから第1のパワードメインに第2のデータを移動させるように結合されている。ICは、パワーオンリセットシステム(PORS)も含む。PORSは、第1のパワードメインおよび第2のパワードメインの電圧を検出するように構成された電圧検出回路を含む。制御回路は、第1のレベルシフティング回路および第2のレベルシフティング回路に結合され、第1のパワードメインおよび第2のパワードメインの検出された電圧に応答して、第1のレベルシフティング回路を制御する第1の絶縁信号と、第2のレベルシフティング回路を制御する第2の絶縁信号と、を発生させるように構成されている。
【0007】
実施形態によっては、PORSは、電圧検出回路に結合され、第2のパワードメインの電圧変化を示す、グリッチフィルタ回路も含み得る。第2のパワードメインの電圧変化が所定の時間期間を過ぎると、制御回路が、第1のレベルシフティング回路を無効にしてから第1の所定の遅延後に第2のレベルシフティング回路を無効にするように構成され得る。実施形態によっては、制御回路は、第2のレベルシフティング回路を無効にしてから第2の所定の遅延後に第2のパワードメインをリセットするパワーオンリセット信号を放出するようにさらに構成され得る。
【0008】
実施形態によっては、制御回路は、第2のレベルシフティング回路を無効にしてから第2の所定の遅延後に第2のパワードメインをリセットするパワーオンリセット信号を放出するように構成され得る。第2の領域は、第1の領域と重なり合わないICの一部に設けられ得る。第1の領域は、マスタ電源として働き、ICの電力管理をもたらすように構成されたプラットフォーム管理コントローラ(PMC)を含み得る。第2の領域は、プログラマブル論理(PL)ブロックを含み得る。第2の領域は、プロセッサシステム(PS)を含み得る。実施形態によっては、集積回路が、第3のパワードメインによって提供される第3の領域も含み得る。第3のレベルシフティング回路が第2のパワードメインから第3のパワードメインに第3のデータを移動させるように結合され得、第4のレベルシフティング回路が第3のパワードメインから第2のパワードメインに第4のデータを移動させるように結合され得る。電圧検出回路は、第1のパワードメイン、第2のパワードメイン、および第3のパワードメインの電圧を検出するようにさらに構成され得る。制御回路は、さらに、第3のレベルシフティング回路および第4のレベルシフティング回路に結合され、第1のパワードメイン、第2のパワードメイン、および第3のパワードメインの検出された電圧に応答して、第3のレベルシフティング回路を制御する第3の絶縁信号と、第4のレベルシフティング回路を制御する第4の絶縁信号と、を発生させるように構成され得る。実施形態によっては、第3の領域は、データ処理エンジン(DPE)配列を含み得る。
【0009】
別の例示的な態様において、方法は、第1のパワードメインが第1の領域を提供することと、第2のパワードメインが第2の領域を提供することと、を含む。第1のレベルシフティング回路が第1のパワードメインから第2のパワードメインに第1のデータを移動させるように結合され、第2のレベルシフティング回路が第2のパワードメインから第1のパワードメインに第2のデータを移動させるように結合されている。方法は、第1のパワードメインおよび第2のパワードメインの電圧を検出することと、第1のパワードメインおよび第2のパワードメインの検出された電圧に応答して、第1のレベルシフティング回路を制御する第1の絶縁信号と、第2のレベルシフティング回路を制御する第2の絶縁信号とを発生させることと、も含む。
【0010】
実施形態によっては、第2のパワードメインの電圧変化が所定の時間期間を過ぎると、方法は、第1の絶縁信号を使用して、第1のレベルシフティング回路を無効にすることと、第1のレベルシフティング回路を無効にしてから第1の所定の遅延後に、第2の絶縁信号を使用して、第2のレベルシフティング回路を無効にすることと、第2のレベルシフティング回路を無効にしてから第2の所定の遅延後に、第2のパワードメインをリセットするパワーオンリセット信号を放出することと、を含み得る。
【0011】
実施形態によっては、第2の領域は、第1の領域と重なり合わないICの一部に設けられ得る。第1の領域が、マスタ電源として働き、ICの電力管理をもたらすように構成されたプラットフォーム管理コントローラ(PMC)を含み得る。実施形態によっては、第2の領域が、プロセッサシステムを含み得る。実施形態によっては、第2の領域は、拡張パフォーマンスI/Oブロック(XPIO)を含み得る。第2の領域は、プログラマブル論理(PL)ブロックを含み得る。
【0012】
実施形態によっては、方法は、(1)第3のパワードメインが第3の領域を提供することであって、第3のレベルシフティング回路が第2のパワードメインから第3のパワードメインに第3のデータを移動させるように結合され、第4のレベルシフティング回路が第3のパワードメインから第2のパワードメインに第4のデータを移動させるように結合されている、提供することと、(2)第1のパワードメイン、第2のパワードメイン、および第3のパワードメインの電圧を検出することと、(3)第1のパワードメイン、第2のパワードメイン、および第3のパワードメインの検出された電圧に応答して、第3のレベルシフティング回路を制御する第3の絶縁信号と、第4のレベルシフティング回路を制御する第4の絶縁信号とを発生させることと、も含み得る。
【0013】
実施形態によっては、第3のパワードメインの電圧変化が、所定の時間期間を過ぎると、方法は、(4)第3の絶縁信号を使用して、第3のレベルシフティング回路を無効にすることと、(5)第3のレベルシフティング回路を無効にしてから第3の所定の遅延後に、第4の絶縁信号を使用して、第4のレベルシフティング回路を無効にすることと、(6)第4のレベルシフティング回路を無効にしてから第4の所定の遅延後に、第3のパワードメインをリセットするパワーオンリセット信号を放出することと、も含み得る。実施形態によっては、第3の領域は、データ処理エンジン(DPE)配列を含み得る。
【0014】
以下に、様々な実施形態の詳細を添付図面および説明において明示する。他の特徴および利点が、この説明および図面から、また特許請求の範囲から分かってくるであろう。
【図面の簡単な説明】
【0015】
図1】本開示の回路およびプロセスが具体化され得る、例示的なプログラマブル集積回路(IC)を示す図である。
図2】システムオンチップ(SoC)レベルのパワーオンリセットシステム(PORS)を有する例示的な集積回路を示す図である。
図3A】IC上の様々なパワードメインの例示的な概略図である。
図3B】プログラミングロジック(PL)における相互接続ブロックパワードメインとXPIOパワードメインとの間の例示的なインターフェースアーキテクチャを示す図である。
図4】IC上のパワーオンリセットシステムの例示的なアーキテクチャを示す図である。
図5】PORSによって発生させる例示的な絶縁信号に関係するデータシートを示す図である。
図6】ICにおけるパワードメイン間で電力移行を調和させる例示的な方法のフローチャートである。
【発明を実施するための形態】
【0016】
様々な図面において、同様の記号は、同様の要素を示す。
【0017】
理解を助けるために、以下のように、本明細書を編成する。最初に、電源投入時の過渡状態にパワードメインにわたって信号絶縁を包括的に管理するのに適した例示的なプラットフォーム(例えば、FPGA)を、図1を参照しながら手短に紹介する。2番目に、図2図4を参照しながら、様々なパワードメイン間の絶縁信号を発生させるのにどのように例示的なパワーオンリセットシステム(PORS)が使用され得るかを紹介することに考察を移す。次に、図5を参照しながら、この考察では、パワーオンリセットシステム(PORS)によって発生させる例示的な絶縁信号を開示する。最後に、図6を参照しながら、この考察では、ICにおいてパワードメイン間で電力移行を調和させる例示的な方法を開示する。パワーオンリセットシステム(PORS)を使用することにより、このチップにおける競合電流を、事実上、減らすかまたはなくすことができるように、電源投入時のシステムオンチップ(SoC)の複数の電源が管理され得る。
【0018】
図1は、本開示の回路およびプロセスが具体化され得る、例示的なプログラマブル集積回路(IC)を示す。プログラマブルIC100としては、FPGA論理回路が挙げられる。プログラマブルIC100は、様々なプログラマブルリソースにより具体化され得、システムオンチップ(SoC)と呼ばれることがある。FPGA論理回路の様々な例としては、いくつかの異なるタイプのプログラマブル論理ブロックの配列を挙げることができる。
【0019】
例えば、図1は、マルチ-ギガビットトランシーバ(MGT:Multi-Gigabit Transceiver)101、構成可能論理ブロック(CLB:Configurable Logic Block)102、ブロックランダムアクセスメモリ(BRAM:Block of Random Access Memory)103、入力/出力ブロック(IOB)104、構成・クロッキング論理回路(CONFIG/CLOCKS)105、デジタル信号処理ブロック(DSP:Digital Signal Processing)106、特殊化入力/出力ブロック(I/O)107(例えば、クロックポート)、および他のプログラマブル論理108(例えば、デジタルクロックマネージャ、アナログ-デジタルコンバータ、システムモニタリング論理回路)を含む、多数の様々なプログラマブルタイルを含むプログラマブルIC100の良い例となるものである。プログラマブルIC100は、専用プロセッサブロック(PROC)110を含む。プログラマブルIC100は、内部再構成ポートおよび外部再構成ポート(図示せず)を含み得る。
【0020】
様々な例において、MGT101を使用して、シリアライザ/デシリアライザが具体化され得る。MGT101としては、様々なデータシリアライザおよびデシリアライザを挙げることができる。データシリアライザとしては、様々なマルチプレクサ実装形態を挙げることができる。データデシリアライザとしては、様々なデマルチプレクサ実装形態を挙げることができる。
【0021】
FPGA論理回路のいくつかの例では、各プログラマブルタイルは、各隣接タイルにおいて対応する相互接続素子との間の標準化相互接続124を有するプログラマブル相互接続素子(INT)111を含む。それにより、まとめられたプログラマブル相互接続素子は、図示のFPGA論理回路用のプログラマブル相互接続構造を具体化する。プログラマブル相互接続素子INT111は、図1に含まれる例として示されるものと同じタイル内にプログラマブル論理素子との間のイントラ接続120を含む。プログラマブル相互接続素子INT111は、図1に含まれる例として示されるものと同じタイル内にプログラマブル相互接続素子INT111との間のインター-INT-接続122を含む。
【0022】
例えば、CLB102は、ユーザロジックを具体化するようにプログラムされ得る構成可能論理素子(CLE:Configurable Logic Element)112に加えて、1つのプログラマブル相互接続素子INT111を含み得る。BRAM103は、BRAM論理素子(BRL:BRAM Logic element)113と、1つまたは複数のプログラマブル相互接続素子とを含み得る。例によっては、タイルに含まれる相互接続素子の個数は、タイルの高さによって決まってくることがあり得る。図示の実装形態では、BRAMタイルの高さは、5つのCLBと同じ高さであるが、他の数(例えば、4)も使用され得る。DSPタイル106には、DSP論理素子(DSPL)114と、1つまたは複数のプログラマブル相互接続素子とが含まれ得る。IOB104には、例えば、入出力論理素子(IOL:Input/Output Logic element)115の2つのインスタンスと、プログラマブル相互接続素子INT111の1つのインスタンスとが含まれ得る。例えばI/O論理素子115に接続された実際のI/O接着パッドは、様々な図示の論理ブロック上に積層された金属を用いて製造され得、入出力論理素子115の区域に閉じ込められなくてもよい。
【0023】
図示の実装形態では、ダイの中央付近の柱状区域(図1では斜線で示す)が、構成、クロック、およびその他の制御論理に使用される。この列から延在する水平区域109には、プログラマブルIC100の幅にわたってクロックおよび構成信号が分布する。なお、「柱状」区域および「水平」区域というのは、図面を縦方向に見たときの相対的なものであることに留意されたい。
【0024】
図1に示したアーキテクチャを活かすプログラマブルICの中には、プログラマブルICの大部分を構成する通常の柱状構造を崩すようなさらなる論理ブロックを含み得るものがある。さらなる論理ブロックは、プログラマブルブロックおよび/または専用論理であり得る。例えば、図1に示すプロセッサブロックPROC110は、CLB102およびBRAM103のいくつかの列に跨っている。
【0025】
図1は、例示的なプログラマブルICのアーキテクチャの良い例となるものである。列にある論理ブロックの個数、列の相対幅、列の個数および順序、列に含まれる論理ブロックのタイプ、論理ブロックの相対サイズ、ならびに相互接続/論理実装形態は、単に例として提示するものである。例えば、実際のプログラマブルICでは、ユーザロジックの効果的な具体化を促進するために、CLB102が現れる場所にはどこでも、CLB102の複数の隣接する列が含まれ得る。
【0026】
包括的機能を備えるように、プログラマブル論理(PL)とプロセッサシステム(PS)とが、単一チップに一体化され得る。単一チップは、例えば、通信システム、医療機器、および視覚分野において具体化され得る。単一チップは、複数のパワードメインを備え得る。いずれか/すべての電源の様々なランプ速度が、例えば、結合ノイズや競合電流につながる可能性がある。パワーオンリセットシステム(PORS)が、電源投入時に、単一チップの複数の電源が効き目のあるように提供する様々なパワードメイン間の信号送信を管理するのに使用され得る。
【0027】
図2は、システムオンチップ(SoC)レベルのパワーオンリセットシステム(PORS)を有する例示的な集積回路を示す。この図示された例では、通信システム200が基地局205を含む。基地局205は、セルホンからのアナログ信号を送受信するのに使用され得る。基地局205は、基地局205とセルホン210との間でデータ通信を行う集積回路(IC)215を含む。IC215はまた、複数のパワードメインが別々に提供する別々の回路を使用して、データ処理を行うのに使用され得る。様々な実施形態において、複数のパワードメインを、例えば、別々の他と無関係な電圧調整装置が提供することがあり得る。様々な実施形態では、別々のドメインを他と無関係な電路を通して共通調整装置が提供し、またこの別々のドメインでは、例えば、誘導フィルタリングまたは容量性フィルタリングが別々であり得る。
【0028】
この図示された例では、IC215は、システムオンチップ(SoC)型のデバイスとして具体化されている。通常、SoCとは、互いに相互作用することができる2つ以上のサブシステムを含むICのことである。一例として、SoCは、プログラムコードを実行するプロセッサおよび1つまたは複数の他の回路を含み得る。この他の回路は、ハードワイヤード回路、プログラマブル回路、他のサブシステム、および/またはそれらの如何なる組合せでも、として具体化され得る。回路は、互いにかつ/またはプロセッサと協調して働くことができる。この図示された例では、SoCは、データ処理エンジン(DPE:Data Processing Engine)配列220を含む。DPE配列220としては、1つまたは複数のDPEを挙げることができる。DPEとしては、例えば、mathエンジン(ME)を挙げることができる。
【0029】
説明上、IC215は、プログラマブル論理(PL)230を含む。PL230は、特定の機能を行うようにプログラムされ得る回路である。一例として、PL230は、フィールドプログラマブルゲートアレイ(FPGA)回路として具体化され得る。PL230は、プログラマブル回路ブロック配列を含み得る。PL230内のプログラマブル回路ブロックの例としては、相互接続ブロック231、PLインターフェースブロック232、構成可能論理ブロック(CLB:Configurable Logic Block)、専用ランダムアクセスメモリブロック(BRAM)、デジタル信号処理ブロック(DSP:Digital Signal Processing block)、クロックマネージャ、および/または遅延ロックループ(DLL:Delay Lock Loop)が挙げられるが、これらに限定されるものではない。図2の例では、PL230は、2つの別々の区分で示されている。別の例では、PL230は、プログラマブル回路の統一された領域として具体化され得る。さらに別の例では、PL230は、プログラマブル回路の3つ以上の異なる領域として具体化され得る。PL230の特定の編成は、限定を意図したものではない。実施形態によっては、PL230は、いくつかのプログラマブル回路ブロックを含み得る。PL230内の各プログラマブル回路ブロックは、プログラマブル相互接続回路(例えば、相互接続ブロック231)およびプログラマブル論理回路の両方を含み得る。プログラマブル相互接続回路は、プログラマブル相互接続ポイント(PIP:Programmable Interconnect Point)によって相互接続された、様々な長さの多数の相互接続ワイヤを含み得る。相互接続ワイヤは、ビット単位の接続性をもたらすように(例えば、各ワイヤが1ビットの情報を伝達する)構成され得る(例えば、ワイヤごとに)。プログラマブル論理回路は、例えば、ルックアップテーブル、レジスタ、算術論理などを含み得るプログラマブル素子を用いて、ユーザデザインの論理を具体化する。プログラマブル相互接続(例えば、相互接続ブロック231)およびプログラマブル論理回路は、プログラマブル素子がどのように構成され、働くかを定義する構成データを内部構成メモリセルに読み込むことによってプログラムされ得る。
【0030】
実施形態によっては、IC215にある様々なPLリソースに電力を供給するのに、複数の電源が必要とされ得る。ノイズや寄生効果に対して向上した不感受性を維持しつつ、パフォーマンスや信号強度を高めるように、リソースごとに異なる電圧レベルで働くことができる。例えば、相互接続ブロック231は、Vccintパワードメインで働くことができる。したがって、様々な電圧のドメイン間のインターフェースを成すのにPLインターフェース232が使用され得る。図3Bを参照しながら、PLインターフェースアーキテクチャの一例をさらに詳細に説明する。
【0031】
IC215は、IC215の一部として作製されたハードワイヤード回路として具体化されたプロセッサシステム(PS:Processor System)235も含む。PS235は、様々な異なるプロセッサ型のいずれかとして具体化され得るか、またはそれを含み得る。例えば、PS235は、個別のプロセッサ、例えば、プログラムコードを実行することができる1つのコアとして具体化され得る。別の例では、PS235は、マルチコアプロセッサとして具体化され得る。さらに別の例では、PS235としては、1つまたは複数のコア、モジュール、コプロセッサ、インターフェース、および/または他のリソースを挙げることができる。PS235は、様々な異なるタイプのアーキテクチャのいずれでも使用して具体化され得る。PS235を具体化するのに使用され得るアーキテクチャ例としては、ARMプロセッサアーキテクチャ、x86プロセッサアーキテクチャ、RISCアーキテクチャ、GPUアーキテクチャ、モバイルプロセッサアーキテクチャ、DSPアーキテクチャ、またはコンピュータ可読命令もしくはプログラムコードを実行することができる他の適切なアーキテクチャを挙げることができるが、これらに限定されるものではない。実施形態によっては、PS235は、ローパワードメイン(LPD:Low Power Domain)もフルパワードメイン(FPD:Full Power Domain)も備え得る。
【0032】
IC215は、ネットワークオンチップ(NoC)225、ならびに/またはハードワイヤード回路ブロック240、245、250、255、および/もしくは260のいずれでも、などのサブシステムも含む。NoC225を通して、DPE配列220内の1つまたは複数のDPEは、PSならびに/またはハードワイヤード回路ブロック255および260と通信することが可能であり得る。実施形態によっては、ハードワイヤード回路ブロック255および260は、例えば、I/O(例えば、拡張性能I/O(XPIO)256)またはメモリコントローラ(MC:Memory Controller)を含み得る。実施形態によっては、DPE配列220の1つまたは複数のDPEは、システムオンチップ(SoC:System-on-Chip)インターフェースブロックおよびPL230を介して、ハードワイヤード回路ブロック240、245、250と通信することが可能であり得る。実施形態によっては、SoCインターフェースブロックは、IC215の1つまたは複数のサブシステムに直につながれ得る。例えば、SoCインターフェースブロックは、PS235および/または他のハードワイヤード回路ブロックに直につながれ得る。特定の実施形態では、ハードワイヤード回路ブロック240~260は、ASICの例と見なすことができる。
【0033】
この図示された例では、PS235は、プラットフォーム管理コントローラ(PMC)265も含む。PMC265は、電力管理(例えば、電源投入/切断、リセット、絶縁、IROクロッキング)を引き受けるマスタ電源として設計されている。実施形態によっては、PMC265は、自然にパワードメインになり、IC215やIC215における他のすべての機能を開始させるのに立ち上げ、使用することができるはずであり得る。また、他のパワードメインは、PMCパワードメインのスレーブパワードメインとして設定され得る。例えば、PL230(例えば、相互接続ブロック231のパワードメイン)の電源は、PMC265電源のサブセットとして設計され得る。実施形態によっては、PL230は、例えば、DPE配列220および/またはPS235とは異なる基準電圧で、また異なるクロック速度で働くことができる。
【0034】
PMC265は、パワーオンリセットシステム(PORS)270も含む。PORS270は、パワードメインクロッシングに対して複数の絶縁信号を発生させるように構成されている。PORSはまた、すべての電源を検出する検出した後、パワーオンリセット(POR)信号と、様々な電源に対する電源ステータス信号とを発生させるように構成されている。様々な電源に対する電源ステータス信号は、様々なパワードメイン(例えば、PLパワードメイン、PMCパワードメイン)の安定性を示すことができる。PORSがランプアッブおよび/またはランプダウン時にICにあるパワードメイン間の順序付けを制御する一例について、図3Aを参照しながらさらに詳しく述べる。
【0035】
この図示された例では、PORS270がPMC265に配置されているが、様々な実施形態において、PORS270は、異なる場所に(例えば、プログラマブル論理PLに)具体化され得る。
【0036】
実施形態によっては、PORS270は、ハードブロック固定回路として具体化され得る。例えば、特定用途向け集積回路(ASIC)が、絶縁信号およびPOR信号を発生させるPORS270をもたらすことができる。
【0037】
実施形態によっては、PORS270の機能の一部またはすべてが、絶縁信号および/またはPOR信号の発生を制御する、データストアに格納された命令のセットを実行するように構成されているプロセッサ(例えば、PS235)において具体化され得る。プロセッサ(例えば、PS235)およびデータストアは、PL230の場合と同じ集積回路215に配置され得る。実施形態によっては、プロセッサ(例えば、PS235)およびデータストアは、システムオンチップ(SoC)のプログラマブル論理ブロック(例えば、PL230)において具体化されても、SoCの固定回路を使用したハードブロックにおいて具体化されてもよい。
【0038】
図3Aは、IC上の様々なパワードメインの例示的な概略図を示す。IC215上の様々な機能ブロックは、様々な電圧で働くことができる。したがって、IC215は、いくつかのパワードメインを含み得る。例えば、PS235は、ローパワードメイン(LPD)および/またはフルパワードメイン(FPD)を含み得、NoC225には異なるパワードメインがあり得、DPE配列220には別の異なるパワードメインがあり得る。この図示された例では、PMC265は、自然にパワードメインとなり、IC216やIC215における他のすべての機能を開始させるのに、立ち上げ、使用することができるはずである。
【0039】
この図示された例では、IC215は、第1のパワードメイン300a(第1の電圧が提供する)および第2のパワードメイン300b(第2の電圧が提供する)を含む。第1のドメイン300aおよび第2のパワードメイン300bが1つまたは複数の機能ブロックを提供することがあり得る。例えば、実施形態によっては、DPE配列220を第1のパワードメイン300aが提供することがあり得る。実施形態によっては、PS235を第1のパワードメイン300aが提供することがあり得る。実施形態によっては、PL230を第1のパワードメイン300aが提供することがあり得る。実施形態によっては、XPIO256を第1のパワードメイン300aが提供することがあり得る。実施形態によっては、NoC225を第2のパワードメイン300bが提供することがあり得る。実施形態によっては、DPE配列220を第2のパワードメイン300bが提供することがあり得る。IC215は、PMCパワードメイン300と第1のパワードメイン300aとのインターフェースを成すインターフェース回路300c(例えば、PLインターフェース232)も含む。この図示された例では、第1のパワードメイン300aと第2のパワードメイン300bとのインターフェースを成すためにインターフェース回路300c(例えば、PLインターフェース232)も使用される。実施形態によっては、第1のパワードメイン300aと第2のパワードメイン300bとのインターフェースを成すために他のインターフェース回路が使用され得る。実施形態によっては、IC215は、対応する様々なパワードメイン間のインターフェースを成すいくつかのインターフェースブロックを含み得る。例えば、図2におけるDPE配列220は、NoC225と連通する第1のインターフェースブロックと、相互接続ブロック231と連通する第2のインターフェースブロックとを含み得る。他の例において、IC215は、多くの様々なパワードメイン(例えば、6個以上のパワードメイン)を含み得る。
【0040】
様々なパワードメイン間の順序付けを制御する際、様々なパワードメインのパワーステータス(例えば、電圧)がPORSによって受信され、インターフェースブロックに印加する絶縁信号を発生させ、かつ/または様々なパワードメインのうちの1つまたは複数をリセットするパワーオンリセット信号を発生させるように、PORS270によって処理され得る。例えば、PORS270は、PMCパワードメイン300のパワーステータス(例えば、電圧)301および第1のパワードメイン300aの第1のパワーステータス302を受信する。受信したパワーステータスは、絶縁信号304aを発生させるようにPORS270によって処理され得る。絶縁信号304aにより、インターフェース回路300cは、2つのパワードメイン300と300aとの間でデータ転送を開始することができるか、開始することができなくなる。インターフェース回路300cとしては、絶縁信号304aによって、PMCパワードメイン300から第1のパワードメイン300aにデータを移動させ、また第1のパワードメイン300aからPMCパワードメイン300にデータを移動させることができるようにされ得、またできなくされ得る、いくつかのレベルシフタ回路を挙げることができる。例えば、絶縁信号が高レベル(例えば、デジタル1)である場合、PMCパワードメイン300と第1のパワードメイン300aとの間のインターフェース回路300cが有効にされ得る。絶縁信号が低レベル(例えば、デジタル0)である場合、2つのパワードメイン300と300aとの間のインターフェース回路300cが無効にされ得る。様々な絶縁信号間の遅延を制御することにより、様々なパワードメインの電源投入および/または電源切断の順序が制御され得る。それにより、様々なパワードメイン間の競合電流および/またはノイズ結合が有利に減らされ得る。この図示された例では、PORS270は、PMCパワードメイン300のパワーステータス(例えば、電圧)301、第1のパワードメイン300aの第1のパワーステータス302、および第2のパワードメイン300bの第2のパワーステータス303も受信する。受信したパワーステータスは、絶縁信号304bを発生させるように、PORS270によって処理され得る。絶縁信号304bにより、インターフェース回路300cは、2つのパワードメイン300aと300bとの間でデータ転送を開始することができるか、または開始することができなくなる。例えば、絶縁信号が高レベル(例えば、デジタル1)である場合、2つのパワードメイン300aと300bとの間のインターフェース回路300cが有効にされ得る。絶縁信号が低レベル(例えば、デジタル0)である場合、2つのパワードメイン300aと300bとの間のインターフェース回路300cが無効にされ得る。様々な絶縁信号間の遅延を制御することにより、様々なパワードメインの電源投入および/または電源切断の順序が制御され得る。それにより、様々なパワードメイン間の競合電流および/またはノイズ結合が有利に減らされ得る。PORSアーキテクチャの一例について、図4を参照しながらさらに詳しく述べる。
【0041】
図3Bは、プログラミングロジック(PL)における相互接続ブロックパワードメインとXPIOパワードメインとの間の例示的なインターフェースアーキテクチャを示す。より具体的には、この図示された例では、PLインターフェース232が2つの異なるパワードメイン(例えば、VccintドメインとVccint_socドメインとの)間のインターフェースを成すことができる。この場合、PLインターフェース232は、相互接続ブロック231の動作電圧VccintとIC215にあるその他の回路(例えば、NoC225および/またはXPIO256)の動作電圧Vccint_socとで移行するインターフェースをもたらすことができる。他の回路としては、例えば、NoC、mathエンジン(ME)、ローパワードメイン(LPD)にある機能ブロック、および/またはフルパワードメイン(FPD)にある機能ブロックを挙げることができる。この図示された例では、PLインターフェース232は、SoCパワードメイン(例えば、NoCおよびXPIOのパワードメイン)からPLパワードメインに信号を移動させ、SoCパワードメインとPLパワードメインとの適合性を可能にするように構成された第1のレベルシフタ305を含む。第1のレベルシフタ305は、絶縁信号iso_soc_pl_b310によって制御される。例えば、第1のレベルシフタ305は、絶縁信号iso_soc_pl_b310がデジタル1であるか、またはデジタル0であるかに基づき、有効にされ得るか、または無効にされ得る。
【0042】
PLインターフェース232は、PLパワードメインからSoCパワードメインに信号を移動させ、PLパワードメインとSoCパワードメインとの適合性を可能にするように構成された第2のレベルシフタ315を含む。第2のレベルシフタ315は、絶縁信号iso_pl_soc_b320によって制御される。絶縁信号iso_soc_pl_b310およびiso_pl_soc_b320は、チップ上のPLパワードメインおよびSoCパワードメインにわたるレベルシフタ305/315におけるゲーティング信号として使用される。これらの絶縁信号は、PORS270によって発生させ得る。PORSの一例について、図4を参照しながらさらに詳しく述べる。実施形態によっては、PLインターフェース232とPL230との接続は、幅がプログラム可能(例えば、構成可能)であり得る。例えば、PLインターフェース232とPL230との接続は、幅が32ビット、64ビット、または128ビットであるように構成され得る。この図示された例では、PORS270は、所定の閾値に応答して、VccintドメインをリセットするPOR信号por_pl_bも発生させる(例えば、Vccintドメインには、例えば40ns以上である電圧変化(例えば、グリッチ)がある)。PORS270は、相互接続ブロック231をリセットするPOR信号por_int_bも発生させる。実施形態によっては、他の機能ブロックによって受信されるほどの時間、相互接続ブロック231にデータを保つように、POR信号por_int_bが、POR信号por_pl_bより後に(例えば、約3us)発生され得る。
【0043】
図4には、IC上のパワーオンリセットシステムの例示的なアーキテクチャを示す。この図示された例では、PORS207は、パワーオンリセット信号を発生させる(例えば、PL230にある相互接続ブロックに対しては第1のパワーオンリセット信号por_int_b、PMC265にあるPL関係論理回路に対しては第2のパワーオンリセット信号por_pl_pmc_b、またPL230に対しては第3のパワーオンリセット信号por_pl_bを発生させる)ように構成された第1の回路405を含む。
【0044】
第1の回路405は、第1の電圧検出回路410を含む。第1の電圧検出回路410は、PL230、PS235、およびPMC265の電源を検出する電源投入検出装置を含む。この図示された例では、第1の電圧検出回路410は、PL(例えば、相互接続ブロック231)の内部コア供給電圧Vccint、ブロックBRAMの供給電圧Vcc_ram、PL補助論理回路の補助供給電圧Vccaux、PMC265の内部コア供給電圧Vccint_pmc、およびPMC補助論理回路の補助供給電圧Vccaux_pmcを検出する。それにより、検出された電圧は、第1のグリッチフィルタ回路415によって、おおよそ例えば40ns以下で、如何なるパワーダウン電源グリッチもフィルタで取り除くように、フィルタが掛けられる。次に、フィルタが掛けられた電圧は、第1の論理回路420aによって、パワーオンリセット信号por_int_b、por_pl_pmc_b、およびpor_pl_bを発生させるように処理される。POR信号por_int_bは、相互接続ブロック231をリセットするのに使用され得、POR信号por_pl_bは、Vccintドメイン全体をリセットするのに使用され得る。
【0045】
この図示された例では、第1の論理回路420aは、第1のAND論理回路425を含む。フィルタが掛けられた電圧はすべて、第1のAND信号POR_1を発生させるように第1のAND論理回路425によって受信される。第1のAND信号POR_1は、26msまたは1us遅延する。選択回路(例えば、2入力マルチプレクサ)430が、26ms遅延信号および1us遅延信号を受信するのに使用される。選択信号skip_por_cntが、26ms遅延信号または1us遅延信号を出力するのに使用される。ユーザは、選択信号skip_por_cntを使用して、2つの遅延信号の中から選択することができる。それにより、第1の中間信号por_pl_pmc_b_srcを発生させる出力信号が2ms遅延する。2ms遅延は、Vggが安定する、すなわち、Vggが、相互接続ブロック231の構成メモリセルの調整電源であり得る、のを助けることができる。por_pl_pmc_b_buf_int信号を発生させるように、第1の中間信号por_pl_pmc_b_srcおよびハードウェア依存信号pl_ipor_bが2入力ANDゲート435によって受信される。ハードウェア依存信号pl_ipor_bは、外部信号Ext_por_bおよび外部テスト(例えば、joint test action group(JTAG)モード)の機能である。信号pl_ipor_b信号は、境界走査によってゲートされ得、境界走査チェーンは、多くのパワードメインにわたり得る。実施形態によっては、多くのパワードメインに対する絶縁制御は、ソフトウェアによって制御され得、PLパワードメインとSoCパワードメインとが、por_pl_b信号によってつなぎ合わされ得る。por_ipor_b信号は、JTAG要件に合わせてpor_pl_b信号を制御することができる。
【0046】
それにより、パワーオンリセット信号por_int_b、por_pl_pmc_b、およびpor_pl_bを発生させるように、por_pl_pmc_b_buf_int信号が処理される。より具体的には、por_pl_pmc_b_buf_int信号は、第1のバッファ440によって受信される。第1のバッファリングされたpor_pl_pmc_b_buf_int信号は、パワーランプダウン時に3us遅らされる。第1のパワーオンリセット信号por_int_bを発生させるように、第1のバッファリングされたpor_pl_pmc_b_buf_int信号および3us遅延por_pl_pmc_b_src信号が、第1の2入力ORゲート445によって受信される。por_pl_pmc_b_buf_int信号は、第2のバッファ450によって受信される。第2のバッファリングされたpor_pl_pmc_b_buf_int信号は、パワーランプダウン時に、例えば約200ns遅らされる。第2のパワーオンリセット信号por_pl_pmc_bを発生させるように、第2のバッファリングされたpor_pl_pmc_b_buf_int信号および200ns遅延por_pl_pmc_b_buf_int信号が第2の2入力ORゲート455によって受信される。第2のパワーオンリセット信号por_pl_pmc_bは、PMCパワードメイン300で使用される内部POR信号である。第2のパワーオンリセット信号por_pl_pmc_bは、第3のパワーオンリセット信号por_pl_bを発生させるように、第3のバッファ460によってバッファリングされる。第3のパワーオンリセット信号por_pl_bは、内部PMC検出装置および内部PL検出装置がすべて作動し、相互接続および構成メモリセルが構成される準備が整った後に放出される内部PORである。第3のパワーオンリセット信号por_pl_bはまた、メモリセルの調整電源(Vgg)が立ち上がり、安定するのを確実にすることができる。第1のパワーオンリセット信号por_int_bは、遅延バージョンのpor_pl_bであり、電源切断時に、相互接続における競合を回避するのに使用され得る。第2のパワーオンリセット信号por_pl_pmc_bは、第3のパワーオンリセット信号por_pl_bと同じ機能を有する可能性がある。
【0047】
この図示された例では、PORS270は、PLインターフェース232によって使用され得る絶縁信号を発生させるように構成された第2の回路465も含む。第2の回路465は、第2の電圧検出回路470aを含む。第2の電圧検出回路470aは、PMCの内部コア供給電圧Vccint_pmc、およびPMC補助論理回路の補助供給電圧Vccaux_pmcを検出する。次に、第2の検出電圧が第2のグリッチフィルタ回路475aによってフィルタが掛けられる。次に、フィルタが掛けられた第2の電圧が、第2のAND信号POR_2を発生させるように、第2の2入力ANDゲート480aによって処理される。第2のAND信号POR_2が、第2の中間信号init_pmc_aux_lvish_aux_nを発生させるVccaux_pmcレベルシフタ485aによって受信される。次に、第2のAND信号POR_2および外部パワーオンリセット信号Ext_por_bが、第3のAND信号pmc_raw_por_nを発生させる第3の2入力ANDゲート480bによって受信される。第3のAND信号pmc_raw_por_nは、IC215全体に対してマスタパワーオンリセット信号として働くことができる。PMC電源がランプアップされると、外部パワーオンリセット信号Ext_por_bがユーザによって放出される。実際の内部POR信号を放出する前に、ユーザ確認が必要とされることがあり得る。実施形態によっては、第1のAND信号POR_1および第2のAND信号POR_2がウォッチドッグ回路によってモニタされ得る。第1の電圧検出回路410および/または第2の電圧検出回路470aが故障すると、このウォッチドッグ回路が、この故障を検出し、第1のAND信号POR_1および第2のAND信号POR_2が、第1の電圧検出回路410および/または第2の電圧検出回路470aを避けるように外部からさせることがあり得、これにより、絶縁信号である第1のAND信号POR_1および第2のAND信号POR_2の発生が、フェイルセーフ選択肢であり得ることが約束され得る。
【0048】
第2の回路465は、第3の電圧検出回路470bも含む。第3の電圧検出回路470bは、IC215にある、PMCパワードメイン300を除くすべてのパワードメインのパワーステータスを検出する。この図示された例では、第3の電圧検出回路470bは、NoC225またはXPIO256の内部コア供給電圧Vccint_soc、PS235のローパワードメインVcc_psintlp、PS235のフルパワードメインVcc_psintfp、PL230の内部コア供給電圧Vccint、ブロックBRAMの内部コア供給電圧Vccint_ram、およびPL補助論理回路の補助供給電圧Vccauxを検出する。第3の電圧検出回路470bは、例えば、DPE配列220の電源ステータスも検出し得る。この図示された例では、第3の電圧検出回路470bによって検出された電圧は、第3のグリッチフィルタ回路475bによってフィルタが掛けられる。フィルタが掛けられた第3の検出電圧のすべてが電源ステータス信号として出力される。様々なパワードメイン間の絶縁信号を発生させるように、フィルタが掛けられた第3の検出電圧、第3のAND信号pmc_raw_por_n、第1の制御信号ctrl_iso_pmc_pl、第2の制御信号ctrl_iso_pl_soc、および第1の中間信号por_pl_pmc_b_srcが第2の論理回路420bによって処理される。第1の制御信号ctrl_iso_pmc_plおよび第2の制御信号ctrl_iso_pl_socは、オンチップ制御レジスタに格納され得る。例えば、第1の制御信号ctrl_iso_pmc_plは、PMCパワードメイン(Vccint_pmc)からPLパワードメイン(Vccint)に信号を放出するまたは絶縁するレジスタベースの制御信号であり得る。例えば、制御信号ctrl_iso_pmc_plが高レベル(例えば、デジタル1)である場合、PMCパワードメイン(Vccint_pmc)からPLパワードメイン(Vccint)への信号が絶縁され得る。制御信号ctrl_iso_pmc_plが低レベル(例えば、デジタル0)である場合、PMCパワードメイン(Vccint_pmc)からPLパワードメイン(Vccint)に信号が放出され得る。第2の制御信号ctrl_iso_pl_socもまた、PLパワードメイン(Vccint)からNoC/XPIOパワードメイン(Vccint_soc)に信号を放出するまたは絶縁するレジスタベースの制御信号であり得る。様々な制御信号ctrl_iso_も同様に、図4には示されていない図5に載っている様々なパワードメインクロッシングに対して発生され得る。
【0049】
この図示された例では、3入力ANDゲート480cが、フィルタが掛けられたVccint、第3のAND信号pmc_raw_por_n、および反転した第1の制御信号ctrl_iso_pmc_plを受信し、第4のAND信号を発生させる。第4のAND信号は、絶縁信号iso_pl_pmc_bである。この絶縁信号iso_pl_pmc_bは、PL230からPMC265にデータを移動させるレベルシフタを有効にするのに使用され得る。この絶縁信号iso_pl_pmc_bも、第1のVccintレベルシフタ485bが受信し、絶縁信号iso_pmc_pl_bを発生させる。この絶縁信号iso_pmc_pl_bは、PMC265からPL230にデータを移動させるレベルシフタを有効にするのに使用され得る。4入力ANDゲート480dが、フィルタが掛けられたVccint、フィルタが掛けられたVccint_soc、および反転した第2の制御信号ctrl_iso_pl_socを受信し、第5のAND信号を発生させる。第2のVccintレベルシフタ485cが、この第5のAND信号を受信し、絶縁信号iso_soc_pl_bを発生させる。この絶縁信号iso_soc_pl_bは、SoC215からPL230にデータを移動させるレベルシフタを有効にするのに使用され得る。第5のAND信号も、例えば、パワーランプダウン時に100ns程度遅延して、Vccint_socレベルシフタ485dによって、またORゲート490によって、絶縁信号iso_pl_soc_bを発生させるように処理される。絶縁信号iso_pl_soc_bは、PL230からSoC215にデータを移動させる、レベルシフタを有効にするのに使用され得る。第2の論理回路によって発生され得る絶縁信号の例示的なデータシートについて、図5を参照しながら述べる。
【0050】
例えば、あるモードでは、PMCドメインにおける全電圧(例えば、Vccint_pmc、Vccaux_pmc)およびPLのVccintが、高レベルであり得る。ctrl_iso_pmc_pl信号を制御することによって、高レベル(例えば、デジタル1)で絶縁信号iso_pmc_pl_bおよびiso_pl_pmc_bが発生され得る。それにより、PMCとPLとの間に配置され、絶縁信号によって制御される対応するレベルシフタが有効になり得る。別のモードでは、PMCドメインにおける全電圧(例えば、Vccint_pmc、Vccaux_pmc)が高レベルであり得、PLドメインにおける電圧Vccint、NoC/XPIOドメインにおける電圧Vccint_socが高レベルの場合、ctrl_iso_pl_soc信号を制御することにより、絶縁信号iso_soc_pl_b310およびiso_pl_soc_b320が高レベル(例えば、デジタル1)で発生され得る。それにより、絶縁信号によって制御される対応するレベルシフタが有効になり得る。
【0051】
実施形態によっては、第1のグリッチフィルタ回路415、第2のグリッチフィルタ回路475a、および/または第3のグリッチフィルタ回路475bが、PMCパワードメインまたはSoCパワードメインのいずれかにおいて例えば約40nsよりも短い擾乱(例えば、パワーダウングリッチ)に応答して発生した絶縁信号を有効に保つように構成され得る。この擾乱は、所定の時間閾値未満の間、所定の最小動作電圧を下回る電圧であり得る。PL電源(例えば、Vccint_ram、Vccint、Vccaux)にパワーダウンさせる40nsよりも長いグリッチがある場合、絶縁信号iso_pl_soc_b320が、絶縁信号iso_soc_pl_b310よりも遅く発生される可能性がある。例えば、絶縁信号iso_pl_soc_b320が、絶縁信号iso_soc_pl_b310よりも100ns程度後に発生される可能性がある。それにより、第2のレベルシフタ315が、第1のレベルシフタ305より100ns程度後に有効になる可能性がある。それにより、PORS270が、絶縁信号iso_soc_pl_b310より200ns遅延して、Vccintドメインをリセットするpor_pl_b信号を発生させる。絶縁信号を順序付けするこのやり方は、電源切断時のXPIO256へのノイズまたはグリッチ伝播を回避することができる。相互接続(PLドメイン)からXPIO(SoCドメイン)へのレベルシフタ(例えば、第2のレベルシフタ315)は、por_pl_bをローにアサートすることによって、PLドメインの電源を切る前に、100ns固定され得る(iso_pl_soc_b=0で)。それにより、Vggメモリセルを原因とする相互接続の如何なる競合も回避するために、相互接続ブロック232が、por_pl_bの後のpor_int_b信号によって3us内でリセットされ得る。
【0052】
図5では、パワーオンリセットシステムによって発生される例示的な絶縁信号に関係する例示的なデータシートを示す。データシートには、様々なパワードメイン間の絶縁信号が含まれている。例えば、データシートには、絶縁信号iso_soc_pmc_bおよび絶縁信号iso_pl_pmc_bが含まれている。データシートには、mathエンジンとPLとの間の絶縁信号(例えば、iso_1_me_pl、iso_1_pl_me、iso_2_me_plなど)、およびmathエンジンとSoCとの間の絶縁信号(例えば、iso_1_me_soc、iso_1_soc_me、iso_2_me_socなど)も含まれている。mathエンジン(ME)に相当するPORの分割部分により、バッファリング要件/負荷要件を事実上、減らすかなくすことができる。
【0053】
図6では、ICにおけるパワードメイン間で電力移行を調和させる例示的な方法のフローチャートを示す。電力移行としては、IC215におけるパワードメインの電源投入および/または電源切断を挙げることができる。方法600において、605では、コントローラ(例えば、PS235)が、PMCパワードメイン300(例えば、マスタ電源)の電源が入っているか否かを検出する。PNCパワードメイン300の電源が入っていなければ(例えば、Vccint_pmcおよびVccaux_pmcが低レベルである)、コントローラが、PMCパワードメイン300のステータスをモニタし続ける。PMCパワードメイン300の電源が入っていれば(例えば、Vccint_pmcおよびVccaux_pmcが高レベルである)、この図示された例では、610で、コントローラが、電圧検出回路に、PMCパワードメイン300のパワーステータスS0(例えば、電圧)、第1のパワードメイン(例えば、300a)(例えば、スレーブ電源)のパワーステータスS1(例えば、電圧)、および第2のパワードメイン(例えば、300b)(例えば、スレーブ電源)のパワーステータスS2を検出するよう命令する。例えば、電圧検出回路が、XPIOドメインの電源Vccint_socおよび相互接続ドメインの電源Vccintを検出する。実施形態によっては、第1のパワードメインおよび第2のパワードメインは、PMCパワードメイン以外のIC215の如何なるパワードメイン(例えば、PL、PS、NoC、XPIO、またはME)であり得る。実施形態によっては、コントローラが、電圧検出回路に、PMCパワードメイン300のパワーステータスS0(例えば、電圧)および第1のパワードメイン(例えば、300a)のパワーステータスS1(例えば、電圧)を検出し、必要に応じて、PMCパワードメインおよび/または第1のパワードメインへの絶縁信号および/またはPOR信号を発生させるよう命令することがあり得る。
【0054】
615では、コントローラが、PMCパワードメイン、第1のパワードメイン、および/または第2のパワードメインには、所定の閾値(例えば、40ns)以上のグリッチがあるかどうか判断する。例えば、この理解を深める実施形態では、コントローラが、第2のパワードメインに40ns以上のグリッチがあるかどうかを判断する。
【0055】
グリッチが40nsに満たなければ、620において、コントローラが、PORS270に、第1のパワードメイン(例えば、第1のパワードメイン300a)から第2のパワードメイン(例えば、第2のパワードメイン300b)にデータを移動させる第1のレベルシフタ(例えば、レベルシフタ回路305)を認める、第1の絶縁信号(例えば、310)を発生させるよう命令し、また625において、コントローラが、PORS270に、第2のパワードメインから第1のパワードメインにデータを移動させる第2のレベルシフタ(例えば、レベルシフタ回路315)を認める、第2の絶縁信号(例えば、第2の絶縁信号320)を発生させるよう命令する。また、この方法は、第2のパワードメインに40ns以上のグリッチがあるかどうかモニタし続ける615に折り返す。
【0056】
グリッチが40ns以上であれば(例えば、グリッチが40ns~80nsであれば)、630において、コントローラが、PORS270に、第1のパワードメインから第2のパワードメインにデータを移動させる第1のレベルシフタを無効にする第1の絶縁信号を発生させるよう命令し、また635および640において、コントローラが、PORS270に、第1の絶縁信号の発生から第1の所定の遅延後に(例えば、100ns)、第1のパワードメインから第2のパワードメインにデータを移動させる第2のレベルシフタを無効にする第2の絶縁信号を発生させるよう命令する。645および650において、コントローラが、PORS270に、第2の所定の遅延後に(例えば、第1の絶縁信号の発生の200ns後、または第2の絶縁信号の発生の100ns後)第2のパワードメインをリセットするPOR信号を発生させるよう命令する。
【0057】
実施形態によっては、第1のパワードメインまたはPMCパワードメインに長いグリッチがあると(例えば、40nsを超える電圧擾乱があると)、PORS270が、第1のパワードメインまたはPMCパワードメインをリセットするPOR信号を発生させ得る。
【0058】
異なる絶縁信号に応じて、異なるサブシステム(例えば、PL(相互接続)、NoC(SoC)、XPIO、ME、および/またはPS)が制御され得る。様々な所定の遅延後に(例えば、約100ns遅延、3us遅延、200ns遅延)絶縁信号およびPOR信号を発生させることにより、スムーズな電力順序付けが様々な電源の電源投入および/または電源切断時の競合を回避するように制御され得る。例えば、PL電源のうちの1つがランプダウンである際、PL電源のうちの1つがランプダウンすると、PLとSoCとの間の絶縁信号の順序付けは、XPIOへのグリッチ伝播を回避するように制御され得る。グリッチを回避する事象の順序としては、まず、iso_soc_pl_bを使用してPLに対してXPIO/SoCを絶縁し、次に、電源切断時に約100ns遅延してiso_pl_soc_b信号を使用して、SoCに対してPLを絶縁し、電源切断時にXPIO/SoCからPLへの絶縁から約200ns遅延して、por_pl_b信号を放出することを挙げることができる。したがって、PLドメイン内の相互接続ブロックからXPIOのSoCドメインへのレベルシフタが、por_pl_bをローにアサートすることにより、PLドメインの電源を切る前に固定され得る。
【0059】
図を参照しながら様々な実施形態について述べてきたが、他の実施形態も考えられ得る。例えば、新しいパワードメインが加えられる際、mini PORSが使用され得る。実施形態によっては、PS235またはPL230にPLインターフェース232(例えば、レベルシフタ305、320)が配置され得る。
【0060】
実施形態によっては、電圧検出回路410、470a、470bのうちのいくつかまたはすべてがPS235またはPL230に配置され得る。別の実施形態において、第1の回路405および第2の回路465内の論理ゲート(例えば、ANDゲート、ORゲート)のうちのいくつかまたはすべてがPS235またはPL230に配置され得る。
【0061】
様々な電子ハードウェアを含むモジュールの様々な例が回路を使用して具体化され得る。限定ではなく例として、ハードウェアとしては、トランジスタ、抵抗、コンデンサ、スイッチ、集積回路、および/またはその他のモジュールを挙げることができる。様々な例において、モジュールとしては、様々な集積回路(例えば、FPGA、ASIC)を含む、シリコン基板に作製された、アナログ論理回路および/またはデジタル論理回路、ディスクリートコンポーネント、トレース回路および/またはメモリ回路を挙げることができる。実施形態によっては、モジュールは、プロセッサによって実行される予めプログラムされた命令および/またはソフトウェアの実行に関わる場合がある。例えば、様々なモジュールがハードウェアにもソフトウェアにも関わる場合がある。
【0062】
様々な実装形態において、通信システムが、適切な通信方法、機器、および技法を使用して通信することができる。例えば、このシステムは、メッセージがソースから受け手に専用物理リンク(例えば、光ファイバリンク、赤外線リンク、超音波リンク、ポイントツーポイント配線、デイジー-チェーン)を介して直に運ばれる、ポイントツーポイント通信を使用して、適合デバイス(例えば、データをシステムにかつ/またはシステムから移動させることができるデバイス)と通信することができる。システムの構成要素は、通信ネットワーク上で、パケットベースメッセージを含む情報を如何なる形態または媒体のアナログデータ通信またはデジタルデータ通信によって交換することができる。通信ネットワークの例としては、例えば、LAN(ローカルエリアネットワーク)、WAN(広域ネットワーク)、MAN(メトロポリタンエリアネットワーク)、無線ネットワークおよび/または光ネットワーク、ならびにインターネットを成すコンピュータおよびネットワークが挙げられる。他の実装形態では、例えば無指向性無線周波数(RF)信号を使用することにより、通信ネットワークによって互いにつながれているすべてのまたはほぼすべてのデバイスへの一斉送信により、メッセージを運ぶことができる。さらに他の実施形態では、指向性(すなわち、狭ビーム)アンテナを使用して送信されるRF信号、または場合により、集光光学系とともに使用され得る赤外線信号など、高い指向性を特徴とするメッセージを運ぶことができる。例としてであって限定するつもりではなく、USB2.0、FireWire、ATA/IDE、RS-232、RS-422、RS-485、802.11a/b/g/n、Wi-Fi、WiFi-Direct、Li-Fi、BlueTooth、Ethernet、IrDA、FDDI(ファイバ分散型データインターフェース)、トークン-リングネットワーク、または周波数、時間、もしくは符号分割に基づく多重化技法など、相応のインターフェースおよびプロトコルを使用する、さらに他の実装形態が考えられ得る。実装形態によっては、場合により、データ整合性、または暗号化(例えば、WEP)およびパスワード保護などのセキュリティ手段に対し、誤り検出訂正(ECC:Error Checking and Correction)などの特徴を組み込むことができる。
【0063】
いくつかの実装形態について述べてきた。それにも関わらず、様々な修正がなされ得ることが分かるであろう。例えば、本開示の技法のステップが異なる順番で行われたとすると、または本開示のシステムの構成要素が様々に組み合わされていたとすると、またはこの構成要素が他の構成要素で補完されていたとすると、有益な結果がもたらされる可能性がある。したがって、他の実装形態も以下の特許請求の範囲にある。
図1
図2
図3A
図3B
図4
図5
図6