JP-2026514796-A - チップレット配列
Abstract
チップレット配列が提示される。チップレット配列は、外部通信インターフェースによって制御可能である。チップレット配列は、チップレットネットワークに接続された少なくとも1つのチップレットを備え、少なくとも1つのチップレットは、少なくとも1つのハードウェアリソースを備える。チップレット配列は、1つ以上のマイクロシステムをオーケストレーションするように構成されたチップレット制御プレーンを備える。各マイクロシステムは、少なくとも1つのハードウェアリソースと、チップレットネットワークにおけるアドレス指定可能な接続とを備える。制御プレーンは、外部通信インターフェースでマイクロサービスとして1つ以上のマイクロシステムを公開するようにさらに構成される。 【選択図】図4
Inventors
- デルシング ジャーカー
- パニアグア クリスティーナ
- シン チョウハン シャイレシュ
Assignees
- エルティーユー ライセンス アーベー
Dates
- Publication Date
- 20260513
- Application Date
- 20240414
- Priority Date
- 20230420
Claims (20)
- 外部通信インターフェース(150)によって制御可能なチップレット配列(100)であって、前記チップレット配列(100)は、チップレットネットワーク(120)に接続された少なくとも1つのチップレット(110)を備え、前記少なくとも1つのチップレット(110)は、少なくとも1つのハードウェアリソース(112)を備え、前記チップレット配列(100)は、チップレット制御プレーン(300)を備え、前記チップレット制御プレーン(300)が、 ・1つ以上のマイクロシステム(200)をオーケストレーションすることであって、各マイクロシステム(200)は、少なくとも1つのハードウェアリソース(112)と、前記チップレットネットワーク(120)にアドレス指定可能な接続とを備える、ことと、 ・前記外部通信インターフェース(150)でマイクロサービス(400)として1つ以上のマイクロシステム(200)を公開することと を行うように構成される、チップレット配列(100)。
- 前記チップレットネットワーク(120)によって接続された2つ以上のチップレット(110)を備える、請求項1に記載のチップレット配列(100)。
- 前記チップレット制御プレーン(300)は、ハードウェアリソース(112)の可用性及び/又は利用に基づいて、マイクロシステム(200)のインスタンス化を構成するように構成される、請求項1又は2に記載のチップレット配列(100)。
- 前記チップレット制御プレーン(300)は、ハードウェアリソース(112)の可用性及び/又は利用に基づいて、マイクロサービス(400)のインスタンス化を構成するように構成される、請求項1~3のいずれか一項に記載のチップレット配列(100)。
- 前記チップレット制御プレーン(300)は、 ・前記チップレット配列(100)のマイクロシステム(200)をインスタンス化するように構成可能なリソースオーケストレータ(410) を備える、請求項1~4のいずれか一項に記載のチップレット配列(100)。
- 前記リソースオーケストレータ(410)は、前記チップレット配列(100)の1つ以上の事前構成されたマイクロサービス(400)に関連付けられた、前記チップレット配列(100)の事前構成されたマイクロシステム(200)を備える、請求項5に記載のチップレット配列(100)。
- 前記リソースオーケストレータ(410)は、特定のマイクロシステム(200)に関連付けられたマイクロサービス(400)をインスタンス化するように、さらに構成可能である、請求項5又は6に記載のチップレット配列(100)。
- 少なくとも1つのマイクロシステム(200)は、前記少なくとも1つのマイクロシステム(200)に関連付けられた1つ以上のマイクロサービス(400)を消費又は生成するように構成される、請求項1~7のいずれか一項に記載のチップレット配列(100)。
- 前記チップレット制御プレーン(300)は、 ・前記マイクロシステム(200)と前記チップレット配列(100)の前記外部通信インターフェース(150)との間の通信を制御するように構成されたネットワークマネージャ(440) を備える、請求項1~8のいずれか一項に記載のチップレット配列(100)。
- 前記ネットワークマネージャ(440)は、前記チップレット配列(100)の1つ以上の事前構成されたマイクロサービス(400)に関連付けられた、前記チップレット配列(100)の事前構成されたマイクロシステム(200)である、請求項9に記載のチップレット配列(100)。
- 前記制御プレーン(300)は、前記チップレット配列(100)の前記ハードウェアリソース(112)の少なくともいくつかを示すデータを含むリソースレジストリ(430)を含み、好ましくは、前記リソースレジストリ(430)は、前記チップレット配列(100)の全てのチップレット(110)の全てのハードウェアリソース(112)を示すデータを含む、請求項1~10のいずれか一項に記載のチップレット配列(100)。
- 前記制御プレーン(300)は、前記ハードウェアリソース(112)の利用をスケジューリングするように構成されたリソーススケジューラ(420)を備える、請求項1~11のいずれか一項に記載のチップレット配列(100)。
- 前記リソーススケジューラ(420)は、前記チップレット配列(100)の1つ以上の事前構成されたマイクロサービス(400)に関連付けられた、前記チップレット配列(100)の事前構成されたマイクロシステム(200)である、請求項12に記載のチップレット配列(100)。
- 少なくとも1つのハードウェアリソース(112)は、前記チップレット(110)を前記チップレットネットワーク(120)に接続するように構成されたネットワークインターフェースである、請求項1~13のいずれか一項に記載のチップレット配列(100)。
- 少なくとも1つのハードウェアリソース(112)は、CPU、GPU又はマイクロコントローラ等の計算ハードウェアリソースであり、及び/又は少なくとも1つのハードウェアリソース(112)は、揮発性メモリ又は不揮発性メモリ等のメモリハードウェアリソースであり、及び/又は少なくとも1つのハードウェアリソース(112)は、温度センサ、圧力センサ、光センサ、光学センサ又は指紋センサ等のセンサハードウェアリソース(112)であり、及び/又は少なくとも1つのハードウェアリソース(112)は、割り込みコントローラ、DMAコントローラ、デジタルI/O、DAC、ADC又はクロック等の周辺ハードウェアリソース(112)であり、及び/又は少なくとも1つのハードウェアリソース(112)は、I2Cインターフェース、PCIeインターフェース又はUCIeインターフェース等の通信ハードウェアリソース(112)であり、及び/又は少なくとも1つのハードウェアリソース(112)は、スピーカ、ブザー、光源又はディスプレイ等のアクチュエータハードウェアリソース(112)である、請求項1~14のいずれか一項に記載のチップレット配列(100)。
- 各ハードウェアリソース(112)は、少なくとも1つの専用ハードウェア機能を提供する、請求項1~15のいずれか一項に記載のチップレット配列(100)。
- 前記チップレット配列(100)は、集積回路(IC)の一部を形成するチップレットパッケージである、請求項1~16のいずれか一項に記載のチップレット配列(100)。
- 請求項1~17のいずれか一項に記載のチップレット配列(100)を構成する方法(500)であって、前記方法は、前記チップレット配列(100)の前記制御プレーン(300)によって実行され、 インスタンス化されるべきマイクロシステム(200)を示す要求を取得するステップ(510)と、 取得された前記要求に従ってマイクロシステム(200)をインスタンス化するステップ(520)と、 を含む、方法(500)。
- 前記要求は、インスタンス化されるべき前記マイクロシステム(200)の1つ以上のハードウェア要件を示すリソースレシピ(105)を含み、インスタンス化するステップ(520)は、 示された前記ハードウェア要件を満たすハードウェアリソースを選択するステップ(522)と、 選択された前記ハードウェアリソース(112)に関連付けられて割り当てられたスケジューリングデータを取得するステップ(524)と、 をさらに含む、請求項18に記載の方法(500)。
- 前記ハードウェアリソース(112)のうちの少なくとも1つは、計算ハードウェアリソースとして選択され、前記要求は、選択された前記計算ハードウェアリソースによって実行されると、前記要求によって示される前記マイクロシステム(200)をインスタンス化するプログラム命令をさらに含み、インスタンス化するステップ(510)は、 選択された前記計算ハードウェアリソースによる前記プログラム命令の実行によって前記マイクロシステムを展開するステップ(526) をさらに含む、請求項19に記載の方法(500)。
Description
本開示は、チップレットに関する。より正確には、本開示は、チップレット配列(chiplet arrangements)のマイクロサービスアーキテクチャに関する。本発明の実施形態は、例えば、チップレット配列と、そのようなチップレット配列を構成する方法を含む。 ムーアの法則によれば、集積回路(IC)内のトランジスタの数は、2年ごとに倍増する。しかしながら、コストが高いために、シリコン製造の改善のペースは、減速しており、ますます小型化されたチップを商業的に実現可能な規模で生産することは、ますます困難になっている。モノリシックチップの現在の開発は、経済的な制約だけでなく、供給/需要、柔軟性、及び競争力の面でも限界に直面している。概して、チップは、設計の初期段階から、将来の変更又は進化の可能性を考慮せずに、構想され、ハードウェアの再利用を妨げている。 この状況に対応して、チップレットが有望な解決策として登場した。一般に、チップレットは、より大きな集積回路の特定の機能又は機能のサブセットを実行するように構成されたモジュール式半導体部品である。チップレットは、他のチップレットと組み合わせて、より複雑な集積回路を形成することができ、設計及び製造においてより大きい柔軟性を提供する。 チップレットの概念は、数十年前から存在しており、その最初の例は1980年代に登場した。その当時、チップレットは、主にメモリ及びI/O機能のために使用され、バスインターフェースを介してメインプロセッサに接続された別個のパッケージ上に実装されていた。近年、チップレットは、半導体製造技術が進歩し、現代の電子デバイスが複雑化したことにより、再び関心が高まっている。複雑なシステム又はシステムオンチップ(SoC)をより小さく、より管理可能なコンポーネントに分解することで、チップレットには、いくつかの利点がある。 チップレットの使用を容易にするために、業界団体及び標準団体は、チップレット間で接続して通信するためのインターフェース及びプロトコルを開発してきた。例としては、米国半導体工業会(SIA)のチップレット統合インターフェース(CII)や、オープン・コンピュート・プロジェクト(Open Compute Project:OCP)の高度インターフェース・バス(AIB)等が挙げられる。チップレットは、複雑な半導体デバイスを設計及び製造するにあたって、柔軟性、効率性、歩留まり、拡張性、最適化された性能、そして信頼性を向上させる有望なアプローチである。 チップレットの設計及び製造における柔軟性は、膨大な数の異なるタスクを実行するように構成され得るハードウェアのプロビジョニングを容易にする。しかしながら、チップレットは、特定のタスク又は機能を果たすPCBを作成するようなロックされた解決策である。標準化作業は今も進んでいるが、チップレットの潜在能力は、まだ十分に活用されていない。 S. Singh and I. Chana, “A survey on resource scheduling in cloud computing: Issues and challenges,” Journal of Grid Computing, no. DOI 10.1007/s10723-015-9359-2, pp. 217-264, 2016.Z.-H. ZHAN, X.-F. LIU, Y.-J. GONG, J. ZHANG, H. S.-H. CHUNG, and Y. LI, “Cloud computing resource scheduling and a survey of its evolutionary approaches,” ACM Computing Surveys, vol. 47, no. 4, July 2015.M. Kumar, S. C. Sharma, A. Goel, and S. P. Singh, “A comprehensive survey for scheduling techniques in cloud computing,” Journal of Network and Computer Applications, vol. 143, pp. 1-33, 2019.“Workflow management solutions based on microservices, ”Applied Sciences.A. N. Lam, O. Haugen, and J. Delsing, “Dynamical orchestration and configuration services in industrial iot systems: An autonomic approach,” IEEE Open Journal of the Industrial Electronics Society, vol. 3, pp. 128-145, 2022. 本発明の実施形態を以下で説明するにあたって、本発明の概念をどのように実施することができるかの非限定的な例を示す添付の図形式の図面を参照する。 本開示のいくつかの例によるチップレット配列の概略図である。本開示のいくつかの例によるチップレットの概略図である。本開示のいくつかの例によるマイクロサービスに関連するマイクロシステムの概略図である。本開示のいくつかの例によるチップレット配列の概略図である。本開示のいくつかの例による制御プレーンの概略図である。本開示のいくつかの例によるマイクロシステムの動的インスタンス化のSysMLシーケンス図である。本開示のいくつかの例によるチップレット配列内のリソースセキュリティマイクロシステムのSysMLモデルである。本開示のいくつかの例によるチップレット配列を構成する方法の概略図である。 以下では、添付の図面を参照して、特定の実施形態をより完全に説明する。しかしながら、本発明は、多くの異なる形態で具現化されてもよく、本明細書に記載される実施形態に限定されると解釈されるべきではない。むしろ、これらの実施形態は、本開示が徹底的かつ完全であり、添付の特許請求の範囲で定義されるような本発明の範囲を当業者に十分に伝えるように、例として提供される。 同様に、「接続された」又は「動作可能に接続された」という用語は、必ずしも直接的ではなく、必ずしも機械的ではないが、接続されたものとして定義される。「結合された」又は「接続された」2つ以上のアイテムは、互いに一体であってもよい。「1つの」という用語は、本開示が別途明示的に必要としない限り、1つ以上として定義される。「実質的に」、「およそ」、及び「約」という用語は、当業者によって理解されるように、指定されたものの大部分であるが、必ずしもその全体でないものとして定義される。「備える」(及びその任意の形態)、「有する」(及びその任意の形態)、「含む」(及びその任意の形態)、及び「含有する」(及びその任意の形態)は、オープンエンド連結動詞である。結果として、1つ以上のステップを「備える」、「有する」、「含む」又は「含有する」方法は、それらの1つ以上のステップを保有するが、それらの1つ以上のステップのみを保有することに限定されない。 本開示では、チップレットとは、一般に小さい集積回路(IC)であり、そのICは、明確に定義された機能のサブセットを備える。これは、他のチップレットと組み合わせて、チップレット配列を形成するように設計される。チップレット配列は、単一パッケージ内の共通のインターポーザ上に設けられてもよい(が、必ずしもそうである必要はない)。 チップレット配列は、例えば、大規模集積回路(IC)と比較して、いくつかの利点を有する。チップレット配列は、異なる機能を別個のチップレットに分離するので、チップレット配列は、製造中に欠陥を特定して修正することが容易になる。これにより、全体的な歩留まりが向上し、コストが削減される可能性がある。異なるチップレットを混合し、整合させることによって、設計者は、特定のアプリケーションに最適化されたシステムオンチップ(SoC)の形態でカスタムチップレット配列を作成することができる。これにより、より効率的で高性能なデバイスが得られる。チップレットの形態でより小さく、より扱いやすい構成部品を扱うことによって、設計者は、より迅速に反復し、個々の構成部品をより徹底的に試験してから、それらをチップレット配列100のより大きなシステムに組み込むことができる。設計者は、さらに、必要に応じて、オンフライで部品を追加するか、又はSoCから部品を除去することができる。これにより、設計エンジニアは、快適に、システム全体の性能及び複雑さをスケーリングすることができる。チップレットにより、企業は規模の経済を活用し、既存のチップ設計を再利用することが可能になるので、新規開発コストを削減できる。チップレットは、高電力(データセンタ内のサーバ)からバッテリ動作デバイス(スマートウォッチ)に及ぶ様々なアプリケーションをサポートする。チップレットの背後にある考え方は、チップレットの異なるベンダー間の相互運用性を可能にする。これにより、単一のモノリシックチップソリューションと比較して、性能が向上する。 ハードウェアの観点からのチップレットの構成可能性は、これまで、対応するソフトウェア構成可能性から切り離されてきた。チップレットのソフトウェア機能は、一般に、異なるチップレットのそれぞれによって提供される機能に限定される。各チップレットは、概して各チップレットに特有のハードウェア抽象化レイヤ(HAL)を使用して、処理される。チップレットの柔軟性を最大限に高め、SoCのリソース利用率を向上させるために、本開示の背後にある発明者らは、チップレット又はチップレットの集合が複数のマイクロサービスを使用して共有及び利用され得ることを認識した。 概して、マイクロサービスは、ソフトウェアアーキテクチャアプローチであり、大規模アプリケーションが、別個に開発、展開、及び維持され得る小規模で独立した緩く結合されたサービスに分解される。各マイクロサービスは、典型的には、特定の機能(例えば、ビジネス機能等)を実行し、HTTP又はメッセージングプロトコル等の軽量機構を介して、他のマイクロサービスと通信する。このアプローチによって、アプリケーションのより迅速でより効率的な開発、展開、及びスケーリングも、回復力とフォールトトレランスも向上する。また、マイクロサービスによって、チームがアプリケーションの異なる部分で独立して作業することも可能になり、各チームは、自分自身のマイクロサービスの開発及び保守を担当する。このアプローチにより、全体的な開発速度が向上し、チーム間の競合や依存関係のリスクが軽減し得る。全体として、マイクロサービスは、大規模で複雑な情報システム/コンピュータシステムにおいて、俊敏性、拡張性、信頼性を向上させることができる。 歴史的に、マイクロサービスは、商品ハードウェアの分散システム上で実行することができる独立した軽量コンポーネントとして展開されるように設計されてきた。これにより、単一のサーバ上でモノリシックアプリケーションを実行するよりも、スケーラビリティ及びフォールトトレランスが向上する。マイクロサービスのための1つの一般的なハードウェア構成は、クラウドベースのインフラストラクチャである。共通の選択肢は、Amazon Web Services(AWS)、Microsoft Azure、又はGoog