(57)【要約】      （修正有）【課題】効率的で柔軟なチップ用のメモリテスト方法、装置、電子機器、コンピュータ可読記憶媒体及びコンピュータプログラムを提供する。【解決手段】少なくとも１つのメモリを含む少なくとも１つの演算ユニットを含む複数の演算モジュールを含むチップ用のメモリテストプロセスであって、少なくとも１つの演算モジュールのうちの第１演算モジュールに対して、第１テストベクトルを生成するステップ２１０と、少なくとも１つの演算モジュールのうち前記第１演算モジュールとは異なる他の演算モジュールとは独立して、生成された第１テストベクトルを用いて、第１演算モジュールに対してメモリテストを実行するステップ２２０と、を含む。【選択図】図２
2022003680.tif 000002
【特許請求の範囲】
【請求項１】
チップ用のメモリテスト方法であって、前記チップは、少なくとも１つの前記メモリを含む少なくとも１つの演算ユニットを含む複数の演算モジュールを含み、前記方法は、
前記少なくとも１つの演算モジュールのうちの第１演算モジュールに対して、第１テストベクトルを生成するステップと、
少なくとも１つの演算モジュールのうち第１演算モジュールとは異なる他の演算モジュールとは独立して、生成された第１テストベクトルを用いて、前記第１演算モジュールに対してメモリテストを実行するステップと
を含んでなる、チップ用のメモリテスト方法。
【請求項２】
前記他の演算モジュールのうちの第２演算モジュールと前記第１演算モジュールが第１基準を満たす場合、前記第１テストベクトルを用いて、前記第２演算モジュールに対してメモリテストを実行するステップと、
前記他の演算モジュールのうちの第２演算モジュールと前記第１演算モジュールが前記第１基準を満たさない場合、前記第２演算モジュールに対して、第２テストベクトルを生成し、少なくとも１つの演算モジュールのうちの他の演算モジュールとは独立して、前記第１テストベクトルとは異なる、生成された第２テストベクトルを用いて、前記第２演算モジュールに対してメモリテストを実行するステップと
をさらに含む、請求項１に記載の方法。
【請求項３】
前記第１基準は、前記第２演算モジュールが前記第１演算モジュールと同じ構造又は演算機能を有することである、請求項２に記載の方法。
【請求項４】
前記第１テストベクトルを生成するステップは、
前記演算モジュールのうちの１つの演算ユニットに対して、サブテストベクトルを生成するステップと、
前記第１演算モジュールのすべての演算ユニット間で前記サブテストベクトルを再利用することにより、第１テストベクトルを生成するステップと
を含む、請求項１に記載の方法。
【請求項５】
第２基準に従って、前記演算ユニットの前記少なくとも１つのメモリを少なくとも１つのグループに分けるステップをさらに含み、
前記サブテストベクトルを生成するステップは、
分けられた前記少なくとも１つのグループの各々に対して、それぞれのグループテストベクトルをそれぞれ生成するステップと、
生成されたグループテストベクトルに基づいて、前記サブテストベクトルを生成するステップと
を含む、請求項４に記載の方法。
【請求項６】
前記第２基準に従って、前記演算ユニットの前記少なくとも１つのメモリを前記少なくとも１つのグループに分けるステップは、
前記少なくとも１つのメモリの位置及びタイプに応じて、前記演算ユニットの少なくとも１つのメモリを前記少なくとも１つのグループに分けるステップを含む、請求項５に記載の方法。
【請求項７】
前記第１演算モジュールに対して前記メモリテストを実行するステップは、
前記第１演算モジュールの前記少なくとも１つの演算ユニットのうちの各々に対して、異なるメモリサブテストが並列的又は直列的に実行されるように、対応するメモリサブテストを実行することにより、前記第１演算モジュールに対して前記メモリテストを実行するステップを含む、請求項１に記載の方法。
【請求項８】
第３基準に従って、前記演算ユニットの前記少なくとも１つのメモリを少なくとも１つのグループに分けるステップをさらに含み、前記各演算ユニットに対して、前記対応するメモリサブテストを実行するステップは、
分けられた少なくとも１つのグループの各々に対して、異なるメモリグループテストが並列的に実行されるように、対応するメモリグループテストを実行することにより、前記メモリサブテストを実行するステップを含む、請求項７に記載の方法。
【請求項９】
前記第３基準に従って、前記演算ユニットの前記少なくとも１つのメモリを前記少なくとも１つのグループに分けるステップは、
前記少なくとも１つのメモリの位置及びタイプに応じて、前記演算ユニットの前記少なくとも１つのメモリを前記少なくとも１つのグループに分けるステップを含む、請求項８に記載の方法。
【請求項１０】
チップ用のメモリテスト装置であって、
前記チップは、少なくとも１つの前記メモリを含む少なくとも１つの演算ユニットを含む複数の演算モジュールを含み、
前記装置は、
前記少なくとも１つの演算モジュールのうちの第１演算モジュールに対して、第１テストベクトルを生成するように構成される第１テストベクトル生成モジュールと、
少なくとも１つの演算モジュールのうち前記第１演算モジュールとは異なる他の演算モジュールとは独立して、生成された第１テストベクトルを用いて、前記第１演算モジュールに対してメモリテストを実行するように構成される第１メモリテストモジュールと
を含んでなる、チップ用のメモリテスト装置。
【請求項１１】
前記他の演算モジュールのうちの第２演算モジュールと前記第１演算モジュールが第１基準を満たす場合、
前記第１テストベクトルを用いて、前記第２演算モジュールに対してメモリテストを実行するように構成される第２メモリテストモジュールをさらに含み、
前記他の演算モジュールのうちの前記第２演算モジュールと前記第１演算モジュールが前記第１基準を満たさない場合、
前記第２演算モジュールに対して、第２テストベクトルを生成するように構成される第２テストベクトル生成モジュールと、
少なくとも１つの演算モジュールのうちの他の演算モジュールとは独立して、前記第１テストベクトルとは異なる、生成された第２テストベクトルを用いて、前記第２演算モジュールに対してメモリテストを実行するように構成される第３メモリテストモジュールと
をさらに含む、請求項１０に記載の装置。
【請求項１２】
前記第１基準は、前記第２演算モジュールが前記前記第１演算モジュールと同じ構造又は演算機能を有することである、請求項１２に記載の装置。
【請求項１３】
前記第１テストベクトル生成モジュールは、
前記演算モジュールのうちの１つの演算ユニットに対して、サブテストベクトルを生成するように構成されるサブテストベクトル生成モジュールと、
前記第１演算モジュールの全ての演算ユニット間で前記サブテストベクトルを再利用することにより、第１テストベクトルを生成するように構成されるサブテストベクトル再利用モジュールと
を含む、請求項１０に記載の装置。
【請求項１４】
第２基準に従って、前記演算ユニットの前記少なくとも１つのメモリを少なくとも１つのグループに分けるように構成される第１メモリ区分ブロックをさらに含み、
前記サブテストベクトル生成モジュールは、
分けられた前記少なくとも１つのグループの各々に対して、それぞれのグループテストベクトルをそれぞれ生成するように構成されるグループテストベクトル生成モジュールと、
生成されたグループテストベクトルに基づいて、前記サブテストベクトルを生成するように構成されるグループテストベクトル合成モジュールと
を含む、請求項１３に記載の装置。
【請求項１５】
前記第１メモリ区分ブロックは、
前記少なくとも１つのメモリの位置及びタイプに応じて、前記演算ユニットの前記少なくとも１つのメモリを前記少なくとも１つのグループに分けるように構成される第１メモリグループ区分モジュールを含む、請求項１４に記載の装置。
【請求項１６】
前記第１メモリテストモジュールは、
前記第１演算モジュールの前記少なくとも１つの演算ユニットの各々に対して、異なるメモリサブテストが並列的又は直列的に実行されるように、対応するメモリサブテストを実行することにより、前記第１演算モジュールに対して前記メモリテストを実行するように構成されるメモリサブテストモジュールを含む、請求項９に記載の装置。
【請求項１７】
第３基準に従って、前記演算ユニットの前記少なくとも１つのメモリを少なくとも１つのグループに分けるように構成される第２メモリ区分モジュールをさらに含み、
前記メモリサブテストモジュールは、
分けられた少なくとも１つのグループの各々に対して、異なるメモリグループテストが並列的に実行されるように、対応するメモリグループテストを実行することにより、前記メモリサブテストを実行することをさらに含む、請求項１６に記載の装置。
【請求項１８】
前記第２メモリ区分モジュールは、
前記少なくとも１つのメモリの位置及びタイプに応じて、前記演算ユニットの前記少なくとも１つのメモリを前記少なくとも１つのグループに分けるように構成される第２メモリグループ区分モジュールを含む、請求項１７に記載の装置。
【請求項１９】
電子機器であって、
１つ又は複数のプロセッサと、
１つ又は複数のプロセッサによって実行される際、請求項１〜９のいずれか一項に記載の方法を前記電子機器に実行させる１つ又は複数のプログラムを記憶するメモリと
を含んでなる電子機器。
【請求項２０】
プロセッサによって実行される際、請求項１〜９のいずれか一項に記載の方法を実現させるコンピュータプログラムが記憶されているコンピュータ可読記憶媒体。
【請求項２１】
コンピュータプログラムであって、前記コンピュータプログラムがプロセッサによって実行される際、請求項１〜９のいずれか一項に記載の方法を実現させる、コンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本開示は、主にチップの分野に関し、より具体的には、チップ用のメモリテスト方法と装置、電子機器、コンピュータ可読記憶媒体及びコンピュータプログラムに関する。
【背景技術】
【０００２】
人工知能の急速な発展に伴い、人工知能（ＡＩ）チップ（たとえば、システムオンチップＳｏＣ）の機能と計算能力もますます強力になり、その結果、ＡＩチップ設計の規模や複雑さも急激に増加している。既存のＡＩチップには、スタティックランダムメモリ（ＳＲＡＭ）、ダイナミックランダムメモリ（ＤＲＡＭ）、キャッシュ（ＣＡＣＨＥ）、レジスタやフラッシュメモリ（ＦＬＡＳＨ（登録商標））などの多数のメモリ（ｍｅｍｏｒｙ）が埋め込まれている。これらのメモリはチップの様々な位置に配置され、様々な論理演算をサポートしている。
【０００３】
チップの製造過程において、プロセスフロー、設計などの多くの原因により、チップ上の一部のメモリが正確に動作できなくなる。したがって、工場出荷前に、通常、チップのメモリに対してメモリビルトインスキャンテストＭＢＩＳＴ（Ｍｅｍｏｒｙ  Ｂｕｉｌｔ−Ｉｎ−Ｓｃａｎ−Ｔｅｓｔ）によりテストを行うことで、チップのメモリの有効性をテストし、不良メモリを交換したり修復したりする。
【発明の概要】
【発明が解決しようとする課題】
【０００４】
本開示によれば、チップ用のメモリテスト手段を提供する。
【課題を解決するための手段】
【０００５】
本開示の第１態様では、チップ用のメモリテスト方法であって、前記チップは、少なくとも１つのメモリを含む少なくとも１つの演算ユニットを含む複数の演算モジュールを含み、該方法は、
少なくとも１つの演算モジュールのうちの第１演算モジュールに対して、第１テストベクトルを生成するステップと、
少なくとも１つの演算モジュールのうち第１演算モジュールとは異なる他の演算モジュールとは独立して、生成された第１テストベクトルを用いて、第１演算モジュールに対してメモリテストを実行するステップとを含んでなる、チップ用のメモリテスト方法を提供する。
【０００６】
本開示の第２態様では、少なくとも１つのメモリを含む少なくとも１つの演算ユニットを含む複数の演算モジュールを含むチップ用のメモリテスト装置を提供する。該装置は、
少なくとも１つの演算モジュールのうちの第１演算モジュールに対して、第１テストベクトルを生成するように構成される第１テストベクトル生成モジュールと、
少なくとも１つの演算モジュールのうち、第１演算モジュールとは異なる他の演算モジュールとは独立して、生成された第１テストベクトルを用いて、第１演算モジュールに対してメモリテストを実行するように構成される第１メモリテストモジュールとを含む。
【０００７】
本開示の第３態様では、電子機器であって、
１つ又は複数のプロセッサと、
１つ又は複数のプロセッサによって実行される際、本開示の第１態様による方法をこの電子機器に実行させる１つ又は複数のプログラムを記憶するメモリと
を含んでなる電子機器を提供する。
【０００８】
本開示の第４の態様では、プロセッサによって実行される際、本開示の第１態様による方法を実現させるコンピュータプログラムが記憶されているコンピュータ可読記憶媒体を提供する。
本開示の第５態様では、コンピュータプログラムを提供し、該コンピュータプログラムがプロセッサによって実行される際、本開示の第１態様による方法を実現する。
【発明の効果】
【０００９】
本願による技術は、柔軟性が低く、時間がかかるためにＡＩチップの設計製造の要件を満たすことができないという従来のチップ用のメモリテスト手段（たとえば、ＭＢＩＳＴ）の問題を解決する。本開示によれば、ＡＩチップのメモリテストの柔軟性を向上させ、チップのメモリテストの周期及び時限についてのプレッシャーを低減し、メモリテストを実行するのに必要な時間を短縮し、チップの製造及び生産のコストを削減することができる、改良されたチップ用のメモリテスト手段を提供する。
【００１０】
なお、本部分で説明される内容は、本開示の実施例のキーとなる特徴又は重要な特徴を識別することを意図しておらず、本開示の範囲を制限することも意図していない。本開示の他の特徴は、以下の明細書によって理解しやすくなる。
【図面の簡単な説明】
【００１１】
【図１】本開示の複数の実施例によるチップ用のメモリテスト手段が実現される例示的な環境の模式図を示す。
【図２】本開示の複数の実施例によるチップ用のメモリテストプロセスのフローチャートを示す。
【図３】本開示の複数の実施例によるチップ用のメモリテスト手段が実現される別の例示的な環境の模式図を示す。
【図４】本開示の複数の実施例によるチップ用の演算ユニットのメモリテスト手段が実現される例示的な環境の模式図を示す。
【図５】本開示の複数の実施例によるチップ用のメモリテスト装置の模式的ブロック図を示す。
【図６】本開示の複数の実施例によるチップ用のメモリテスト装置のブロック図を示す。
【発明を実施するための形態】
【００１２】
以下では、図面を参照しながら本願の例示的な実施例を説明し、ここで、理解を容易にするために本願の実施例の様々な詳細を含むが、これらは単に例示的なものであると理解すべきである。したがって、当業者が理解すべきことは、本願の範囲及び主旨を逸脱することなく、ここで記載された実施例に様々な変更及び修正を加えることができる。同様に、以下の説明では、周知の機能及び構成については、明確化及び簡明化のために説明を省略する。
【００１３】
本開示の実施例の説明では、用語「含む」及び類似の用語は、オープンな包含、すなわち「含むが、これに限定されない」と理解されるべきである。用語「に基づく」は、「少なくとも部分的に基づく」と理解されるべきである。用語「１つの実施例」又は「該実施例」は、「少なくとも１つの実施例」と解釈されるべきである。用語「第１」、「第２」などは、異なる対象又は同じ対象を指すことができる。以下では、明示的かつ暗黙的な他の定義も含めることができる。
【００１４】
本明細書で使用される場合、用語「チップ」は、既存又は将来開発されるソフトウェア又はハードウェア、及びそれらの組み合わせによって実現される物理的キャリアを指す。特定の応用シナリオでは、これには、「ＳｏＣ」、「結晶ブロック」、「ウエハ」、「ダイ」、「集積回路」、「モノリシックデバイス」、「半導体デバイス」、「マイクロ電子デバイス」などが含まれるが、これらに限定されない。
【００１５】
本明細書で使用される場合、用語「演算ユニット」は、基本的な演算アルゴリズム又は機能を実現するユニットを指し、それは、任意の既存又は将来開発されるソフトウェア又はハードウェア、又はそれらの組み合わせによって実現することができる。演算ユニットは、たとえば、畳み込み、数値演算、ベクトル演算、行列演算、文字演算などを含むがこれらに限定されない、チップ内の様々な基本演算を実現することができる。
【００１６】
本明細書で使用される場合、用語「演算モジュール」は、ある機能又は演算を実現するモジュールを指し、それは、任意の既存又は将来開発されるソフトウェア又はハードウェア、及びそれらの組み合わせによって実現することができる。演算モジュールは、複数の演算ユニットを含むことができ、たとえば、演算モジュールは、複数の演算ユニットをアレイの形で含むことができる。演算モジュールは、計算能力に対するＡＩアルゴリズムの要求を満たすために、複雑で反復的な演算を迅速に実行することができる。
【００１７】
前述のように、ＡＩチップには、大量のメモリ（たとえば、ＳＲＡＭ、ＤＲＡＭ、ＣＡＣＨＥ、ＦＬＡＳＨ（登録商標）など）が埋め込まれている。埋め込まれたメモリの有効性をテストし、不良メモリを置換したり修復したりするために、通常、チップ出荷前に、チップのメモリにＭＢＩＳＴが行われる。
【００１８】
従来のＭＢＩＳＴ手段は、チップ全体の設計が完了された後に実行され、ＭＢＩＳＴテストを行う際に、チップのメモリを区分することなく、チップのすべてのメモリを全体としてテストするようなフラットテスト方式を採択している。
【００１９】
ＡＩチップの機能及び計算能力の向上に伴い、ＡＩチップに埋め込まれたメモリの数も急増している。これにより、チップのすべてのメモリに対して１回のテストを実行するには時間がかかる。特に、反復ＭＢＩＳＴテストを実行する必要がある場合、ＭＢＩＳＴテストには多くの時間が必要となり、チップの製造コストが増加する。さらに、チップメモリ数の急増に伴い、ＭＢＩＳＴテストに使用されるテストベクトルもますます複雑化している。さらに重要なことは、チップのいずれかの演算モジュール／機能ユニットを調整する必要がある場合、チップ全体のすべてのメモリを再テストする必要があり、このため、不必要なテストが多くなり、動作の柔軟性が劣る。
【００２０】
このように、従来のＭＢＩＳＴ手段は、チップ設計製造の周期を増加又は延長しない前提の下では、ＡＩチップに対応するメモリ実行テストのニーズを満たすことができなくなっている。したがって、ＡＩチップのメモリをテストするニーズに対応するために、効率的で柔軟なメモリテスト手段が必要とされている。
【００２１】
発明者は、まず、ＡＩチップの機能が複雑化するにつれて、単一のＡＩチップが通常、複数の演算モジュールを含み、これらの演算モジュールが通常、互いに独立して設計され、実現されることに気づいた。一例として、画像処理用ＡＩチップは、少なくとも１つのベクトル演算モジュール及び少なくとも１つの変位演算サブモジュールを含むことができる。上記演算モジュールは、異なる設計チームによって互いに独立して完成させることができる。
【００２２】
次に、発明者は、既存のＡＩチップの構造が規則的であり、層ごとに分布するという構造的特徴を有することに気づいた。具体的には、１つのＡＩチップは複数の演算モジュールを含み、各演算モジュールは複数の演算ユニットを含み、各演算ユニットはそれぞれ複数のメモリを含む。
【００２３】
さらに、発明者はまた、ＡＩチップの構造が再現性の高いものであることにも気づいた。具体的には、同じ機能の演算モジュールは、同じ構造を有してもよい。一例として、１つの画像処理用ＡＩチップは、同じ構造及び機能を有する複数（たとえば６個）の畳み込み演算モジュールを含むことができる。さらに、各演算モジュールは、同じ構造及び機能を有する複数の演算ユニットを含むことができ、一例として、畳み込み演算モジュールは、サイズが１０２４＊５１２の畳み込み演算ユニットのアレイであってもよい。
【００２４】
また、発明者は、従来のＡＩチップにおいて、各演算ユニットは、対応する演算ロジックを実行する１つの回路と、これに対応する複数のメモリとを含むことができ、複数のメモリが、通常、対応する演算ロジックを実行する回路の近くに配置され、高速なデータインタラクションを実現することができることにも気づいた。同一の演算ユニットに属する複数のメモリは、特定の基準（たとえば、メモリの位置、タイプ、サイズやテスト要件など）に従って複数のグループに分けることができ、複数のグループについてはＭＢＩＳＴテストが互いに並列的に実施され得る。
【００２５】
以上の知見に基づいて、本開示は、チップ用のメモリテスト（たとえば、ＭＢＩＳＴ）の改良手段を提案する。本開示の実施例によれば、チップ用のメモリテストは、チップのすべてのサブモジュール（すなわち、演算モジュール）の設計が完了された後に一緒に実行する必要はなく、各演算モジュールの設計製造の前に独立して実行される。具体的には、チップの演算モジュールの設計製造過程において、現在の演算モジュールについて、テストベクトルを設計して生成して、メモリテストを完了する。このように、チップのメモリテストをすべての演算モジュールの設計が完了された後に行う必要がなく、ＭＢＩＳＴのテストの周期及び時限についてのプレッシャーが緩和される。さらに、チップ全体ではなく単一の演算モジュールに対してメモリテストを実行するので、テストベクトルの設計の複雑さを低減する。さらに、チップの各演算モジュールのメモリテストを独立して実行することができるので、１つの演算モジュールを調整する際に、チップ全体のすべての記憶ユニットをテストする必要がなく、このように、不要なテストを回避する。したがって、本開示は、効率的で柔軟なメモリテスト手段を提供する。
【００２６】
以下、図面を参照して本開示の実施例を具体的に説明する。図１は、本開示の複数の実施例が実現され得る例示的な環境１００の模式図を示す。この例示的な環境１００は、コンピューティング機器１１０、チップ１５０を含む。チップ１５０は、第１演算モジュール１２０−１、第２演算モジュール１２０−２、及び第Ｌ演算モジュール１２０−Ｌを含む。第１演算モジュール１２０−１、第２演算モジュール１２０−２、及び第Ｌ演算モジュール１２０−Ｌは、チップ内でメモリテストの実行対象となる演算モジュールであり、たとえば、畳み込み演算モジュール、変位演算モジュールなどであってもよく、上記演算モジュールは互いに独立して設計されていてもよい。説明の便宜上、複数の演算モジュール１２０−１、１２０−２〜１２０−Ｌはまとめて演算モジュール１２０と呼ぶことができる。
【００２７】
コンピューティング機器１１０は、メモリテストを実行するテスト機器、たとえばＭＢＩＳＴ制御機器などである。図１に示すように、コンピューティング機器１１０は、第１テストベクトル１３０−１を第１演算モジュール１２０−１に入力し、第１演算モジュール１２０−１による第１テスト結果１４０−１を受信し、第２テストベクトル１３０−２を第２演算モジュール１２０−２に入力し、第２演算モジュール１２０−２による第２テスト結果１４０−２を受信する。コンピューティング機器１１０は、第１テスト結果１４０−１に基づいて第１演算モジュール１２０−１のメモリの有効性についてのテスト結果を得ることができ、第２テスト結果１４０−２に基づいて第２演算モジュール１２０−２のメモリの有効性についてのテスト結果を得ることができる。さらに、コンピューティング機器１１０は、不良メモリが存在すると判定された場合、不良メモリを置換又は修復することができる。
【００２８】
説明の便宜上、複数のテストベクトル、たとえば、第１テストベクトル１３０−１及び第２テストベクトル１３０−２は、まとめてテストベクトル１３０と呼ぶことができ、複数のテスト結果、たとえば第１テスト結果１４０−１及び第２テスト結果１４０−２は、まとめてテスト結果１４０と呼ぶことができる。なお、第１演算モジュール１２０−１についてのテスト及び第２演算モジュール１２０−２についてのテストは、互いに独立しており、設計及び製造上のニーズに応じて、異なる期間に実行され得る。
【００２９】
いくつかの実施例では、テストベクトル１３０及びテスト結果１４０は、有線通信又は無線通信の方式でコンピューティング機器１１０と演算モジュール１２０との間でインタラクションすることができる。いくつかの例示的な実施例では、コンピューティング機器１１０は、テストベクトル１３０を生成することができる。代替的に、別の例示的な実施例では、コンピューティング機器１１０は、コンピューティング機器１１０に結合された入力機器（たとえば、マウス、キーボード、タッチペン、タッチスクリーンなどを含むが、これらに限定されない）を介して、ユーザによって入力されたテストベクトル１３０を受信することもできる。
【００３０】
なお、図１に示すコンピューティング機器１１０及び演算モジュール１２０の数は、限定的ではなく例示的なものにすぎず、他の実施例では、コンピューティング機器１１０及び演算モジュール１２０の数は他の任意のデータであり、本開示はこれについて制限しない。
【００３１】
また、なお、テストベクトル１３０及びテスト結果１４０は、特定の適用シナリオに応じて、コンピューティング機器１１０と演算モジュール１２０との間で１回又は複数回のインタラクションによって伝達されてもよく、本開示はこれについても制限しない。
【００３２】
以下、図２を参照して、本開示によるチップ用のメモリテスト過程をより詳細に説明する。図２は、本開示の複数の例示的な実施例によるチップ用のメモリテストの過程２００のフローチャートを示す。過程２００は、図１のコンピューティング機器１１０によって実現されてもよい。検討を容易にするために、過程２００は図１を参照して説明される。
【００３３】
ブロック２１０において、コンピューティング機器１１０は、チップ１５０の第１演算モジュール１２０−１について、第１テストベクトル１３０−１を生成する。
【００３４】
ブロック２２０において、コンピューティング機器１１０は、チップ１５０の他の演算モジュール（たとえば、第２演算モジュール１２０−１〜第Ｌ演算モジュール）とは独立して、生成された第１テストベクトル１３０−１を用いて、第１演算モジュール１２０−１に対してメモリテストを実行する。具体的には、第１テストベクトル１３０−１を、第１演算モジュール１２０−１に出力し、第１演算モジュール１２０−１から返される第１テスト結果１４０−１を受信する。
【００３５】
このように、第１演算モジュール１２０−１のメモリテストは、従来のメモリテスト手段と比較して、チップ１５０全体の設計が完了されるのを待たずに、第１演算モジュール１２０−１の設計及び製造中に行うことができる。さらに、チップ１５０全体の全てのメモリに対してテストベクトルを設計する必要がないため、テストベクトルの複雑さを低減する。最後に、第１演算モジュール１２０−１の調整後に再度メモリテストを実行する際に、他の演算モジュールのメモリに対して不要なテストを行うことを必要としない。
【００３６】
いくつかの実施例では、第１テストベクトル１３０−１は、他の演算モジュールによって再利用されてもよい。たとえば、コンピューティング機器１１０は、他の演算モジュール（たとえば、第２演算モジュール１２０−２）と第１演算モジュール１２０−１が第１基準を満たすか否かを判定する。コンピューティング機器１１０は、第１基準が満たされた場合、第２演算モジュール１２０−２に対してメモリテストを実行する際に、第１テストベクトル１３０−１を再利用する。コンピューティング機器１１０が、第２演算モジュール１２０−２と第１演算モジュール１２０−１が第１基準を満たしていないと判断した場合、コンピューティング機器１１０は、第２演算モジュール１２０−２に対してメモリテストを実行する際に、前記第２演算モジュール１２０−２について、第１テストベクトル１３０−１とは異なる第２テストベクトル１３０−２を生成し、生成した第２テストベクトル１３０−２を用いて第２演算モジュール１２０−２に対してメモリテストを実行する。
【００３７】
いくつかの実施例では、第１基準は、第２演算モジュール１２０−２が第１演算モジュール１２０−１と同じ構造又は演算機能を有することである。
【００３８】
一例として、画像処理機能を実行するためのＡＩチップは、複数の畳み込み演算アレイと、複数の変位演算アレイとを含むことができ、複数の畳み込み演算アレイは、互いに同一又は少なくとも類似の構造を有し、複数の変位演算アレイは、互いに同一又は少なくとも類似の構造を有する。上記構造間の類似性に基づいて、テストベクトルは複数の畳み込み演算アレイ又は変位演算アレイ間で再利用され得る。
【００３９】
このように、テストベクトル１３０の設計複雑度はさらに低減される。
【００４０】
なお、第１演算モジュール１２０−１が第２演算モジュール１２０−２とは独立してメモリテストを実行するとは、両者間のテスト動作の過程が互いに独立していることを意味し、必ずしも第１演算モジュール１２０−１と第２演算モジュール１２０−２についてのテストが時間的に重なってはならないことを意味するものではない。いくつかの実施例では、第１演算モジュール１２０−１及び第２演算モジュール１２０−２についてのメモリテストは、特定の適用シナリオ（たとえば、チップ１５０に含まれるＭＢＩＳＴ用のピンの数、演算モジュール１２０のテスト要件、テストコストなど）に応じて、並列又は直列的に実行されてもよい。
【００４１】
上述したように、第１演算モジュール１２０−１は、複数の演算ユニットを含むことができる。また図２を参照して、本開示のチップ用のメモリテスト手段は、以下のようにさらに説明される。ブロック２１０において、コンピューティング機器１１０は、第１演算モジュール１２０−１の１つの演算ユニットについてサブテストベクトルを生成し、生成したサブテストベクトルを第１演算モジュール１２０−１のすべての演算ユニット間で再利用することにより、第１テストベクトル１３０−１を生成してもよい。ブロック２２０において、コンピューティング機器１１０は、第１演算モジュール１２０−１の各演算ユニットについて、対応するメモリサブテストを実行することにより、第１演算モジュール１２０−１に対してメモリテストを実行する。いくつかの実施例では、異なるメモリサブテストは並列方式で実行され、他のいくつかの実施例では、異なるメモリサブテストは直列方式で実行される。
【００４２】
次に、図３を参照して、コンピューティング機器１１０が第１演算モジュール１２０−１についてメモリテストを実行する手段についてさらに説明する。図３は、本開示の複数の実施例によるチップ用のメモリテスト手段が実現される別の例示的な環境３００の模式図を示す。図３に示すように、第１演算モジュール１２０−１は、複数の演算ユニット３１０−１１、３１０−１２、３１０−１Ｍ、……、……、；３１０−Ｎ１、３１０−Ｎ２、……、３１０−ＮＭを含み、ここで、Ｎ及びＭは正の整数である。すなわち、第１演算モジュール１２０−１は、Ｍ＊Ｎの演算ユニットのアレイである。説明の便宜上、複数の演算ユニット３１０−１１、３１０−１２、３１０−１Ｍ、……、……、；３１０−Ｎ１、３１０−Ｎ２、……、３１０−ＮＭは、まとめて演算ユニット３１０と呼ぶことができる。
【００４３】
いくつかの実施例では、コンピューティング機器１１０は、第１演算モジュール１２０−１の１つの演算ユニット３１０、たとえば、演算ユニット３１０−１１についてサブテストベクトルを生成し、生成したサブテストベクトルを第１演算モジュール１２０−１のすべての演算ユニット３１０の間で再利用することにより、第１テストベクトル１３０−１を生成することができる。図３に示す例示的な実施例では、生成したサブテストベクトルは、Ｍ＊Ｎ回再利用されてもよい。
【００４４】
いくつかの実施例では、異なる演算ユニット３１０（たとえば、図３の演算ユニット３１０−１１、３１０−１２、……、３１０−１Ｍ；……、；３１０−Ｎ１、３１０−Ｎ２、……、３１０−ＮＭ）について実行される複数のメモリサブテストは、並列方式で実行されてもよい。他のいくつかの実施例では、異なるメモリサブテストは直列方式で実行されてもよい。
【００４５】
このように、同一演算モジュール１２０に属する異なる演算ユニット３１０では構造及び機能が同じ／類似であるという特性が十分に利用され、テストベクトルの設計がさらに簡略化される。さらに、異なるメモリサブテストは、特定の適用シナリオ（たとえば、チップ１５０に含まれるＭＢＩＳＴ用のピンの数、演算モジュール１２０のテスト要件、テストコストなど）に応じて、並列又は直列的に実行されてもよく、それにより、メモリテストの効率をさらに向上させる。
【００４６】
上述したように、各演算ユニット３１０は、対応する演算論理を実行する１つの回路と、高速なデータ交換を可能にするために、対応する演算論理を実行する回路の近くに一般的に配置された複数のメモリとを含む。一方、同一演算ユニットに属する複数のメモリは、特定の基準（たとえば、メモリの位置、タイプ、サイズ、及びテスト要件など）に従って複数のグループに分けてもよい。演算ユニット３１０の上記特性に応じて、チップ用のメモリテストをさらに改善することができる。
【００４７】
図４を参照して、コンピューティング機器１１０が演算ユニット３１０に対してメモリテストを実行する手段についてさらに説明する。図４は、本開示の複数の実施例によるチップの演算ユニット３１０用のメモリテスト手段が実現される例示的な環境４００の模式図を示す。図４に示すように、演算ユニット３１０−１１は、複数のメモリ４１０−１１、４１０−１２、……、４１０−１Ｐ；……、４１０−Ｒ１、４１０−Ｒ２、……、４１０−ＲＱを含み、ここで、Ｒ及びＱは正の整数である。説明の便宜上、複数のメモリ４１０−１１、４１０−１２、……、４１０−１Ｐ；……、４１０−Ｒ１、４１０−Ｒ２、……、４１０−ＲＱは、まとめてメモリ４１０と呼ぶことができる。
【００４８】
代替的に又は追加的に、いくつかの実施例では、演算ユニット３１０−１１は、テストコントローラ４４０を含んで構成されてもよい。テストコントローラ４４０は、コンピューティング機器１１０の一部として実現されてもよいし、コンピューティング機器１１０から独立したモジュール又はエンティティとして設計されてもよい。テストコントローラ４４０は、サブテストベクトル４２０を受信し、演算ユニット３１０のテスト結果４３０を対応する機器に返す。いくつかの実施例では、テストコントローラ４４０は、ＭＢＩＳＴコントローラとして実現されていてもよい。
【００４９】
いくつかの実施例では、計算ユニット３１０のメモリ４１０は、第２基準に従って複数のメモリグループに分ける。
【００５０】
いくつかの実施例では、コンピューティング機器１１０は、メモリ４１０の位置に応じて、メモリ４１０を複数のグループに分けることができる。たとえば、コンピューティング機器１１０は、互いに近接した位置にあるメモリ４１０を１つのグループに分けられる。
【００５１】
代替的に又は追加的に、コンピューティング機器１１０は、メモリ４１０のタイプ（たとえば、ＳＲＡＭ、ＤＲＡＭ、ＣＡＣＨＥ、ＦＬＡＳＨ（登録商標）など）に応じて、メモリ４１０を複数のグループに分けることができる。たとえば、コンピューティング機器１１０は、すべてのＳＲＡＭタイプメモリを１つのグループに分け、すべてのレジスタを別のグループに分けられる。
【００５２】
図４に示すように、計算ユニット３１０−１１のメモリ４１０は、Ｒグループのメモリに分けるが、そのうち、４１０−１１、４１０−１２、……、４１０−１Ｐは、１つのグループに分け、メモリ４１０−Ｒ１、４１０−Ｒ２、……、４１０−ＲＱは、別のグループに分けている。
【００５３】
なお、コンピューティング機器１１０によるメモリ４１０のグループ化の根拠は、上記で検討した例に限定されるものではなく、他の実施例では、メモリのサイズ、ＭＢＩＳＴのテストコストなどに応じてもよく、本開示は、これについて制限しない。
【００５４】
いくつかの実施例では、各メモリグループは、１０〜１２個のメモリを含む。
【００５５】
いくつかの実施例では、コンピューティング機器１１０は、分けられている少なくとも１つのグループの各々について、それぞれのグループテストベクトル４５０をそれぞれ生成する。
【００５６】
いくつかの実施例では、テストコントローラ４４０は、分けられたグループに基づいて、各グループに対して対応するメモリグループテストを実行し、異なるメモリグループテストは並列的に実行される。図４に示すように、テストコントローラ４４０は、サブテストベクトル４２０を受信し、サブテストベクトル４２０に基づいて、第１グループのメモリ用のグループテストベクトル４５０−１及び第Ｒのグループのメモリ用のグループテストベクトル４５０−Ｒを生成する。テストコントローラ４４０は、メモリグループテストを第１グループのメモリと第Ｒのグループのメモリとの間で並列的に実行する。
【００５７】
いくつかの実施例では、テストコントローラ４４０は、メモリグループテスト結果４６０−１及び４６０−Ｒを受信し、演算ユニットテスト結果４３０として対応する機器に返す。
【００５８】
このように、同一計算ユニット３１０に属するメモリは異なるメモリグループに分けられ、異なるメモリグループ間でメモリグループテストが並列方式で実行されることにより、メモリテストの性能を向上させる。
【００５９】
さらに、ＡＩチップには、いずれの演算モジュール１２０にも含まれていないいくつかの共通メモリ（たとえば、いくつかの低速メモリ）も含まれている。さらに、各演算モジュール１２０は、各演算ユニット３１０に配置されたメモリの他に、本演算モジュール１２０用の共通メモリ（たとえば、低速メモリ）をいくつか含んでいる。いくつかの実施例では、コンピューティング機器１１０は、これらの共通メモリを所定の基準（位置、タイプ、テスト要件などを含むが、これらに限定されない）に従って複数の演算モジュールに分け、本開示のメモリテスト方法に従って上記共通メモリに対してメモリテストを実行してもよい。
【００６０】
いくつかの実施例では、メモリテストを実行する際に、メモリテストの読み取り／書き込みレートを制御するように、対応するクロック制御モジュールによって実行を補助する。
【００６１】
なお、具体的なテストベクトルの数値を設計する際には、既存又は将来の任意の方法を用いてテストベクトルを設計することができ、メモリテストのための配線を実行する際には、既存又は将来の任意の配線方法を用いることができ、本開示はこれについて限定しない。
【００６２】
さらに、なお、本開示の方法は、ＡＩチップの設計及び製造過程に加えて、チップのエミュレーション、研究開発及びシミュレーション等の過程にも適用可能である。
【００６３】
本開示の実施例によれば、従来のフラット化に基づくＭＢＩＳＴ方法とは異なり、本発明は、階層化メモリテスト技術を使用し、ＭＢＩＳＴテストをチップの演算モジュール１２０の設計及び製造段階に早めることで、ＭＢＩＳＴのテスト周期及びテスト時限についてのプレッシャーを緩和すると同時に、テストベクトル設計の複雑さを低減する。さらに、各演算モジュール１２０のメモリ４１０のテストを独立して行うことができるので、１つの演算モジュールに調整が発生してメモリテストを再実行する必要が生じた場合に、他の演算モジュールのメモリ４１０に対して不要なテストを行う必要がない。
【００６４】
さらに、同じ機能の演算モジュール１２０間、及び同一演算モジュール１２０の複数の演算ユニット３１０間でテストベクトルを再利用することにより、テストベクトルの設計の複雑さをさらに低減する。
【００６５】
さらに、本開示は、同一演算ユニット３１０のメモリ４１０をグループ化し、異なるメモリグループ間で異なるテストベクトルを使用して並列的にメモリグループテストを実行することで、メモリテストの時間をさらに短縮させ、チップの製造及び製造コストを低減する。
【００６６】
図５は、本開示の実施例によるチップ用のメモリテスト装置５００の模式的ブロック図を示す。装置５００は、図１に示されたコンピューティング機器１１０に含まれてもよく、又はコンピューティング機器１１０として実現されてもよい。図５に示すように、装置５００は、少なくとも１つの演算モジュールのうちの第１演算モジュール１２０−１について第１テストベクトル１３０−１を生成するように構成される第１テストベクトル生成モジュール５１０を含む。装置５００は、少なくとも１つの演算モジュール１２０のうち第１演算モジュール１２０−１とは異なる他の演算モジュールとは独立して、生成された第１テストベクトル１３０−１を利用して、第１演算モジュール１２０−１に対してメモリテストを実行するように構成される第１メモリテストモジュール５２０をさらに含んでもよい。
【００６７】
いくつかの実施例では、他の演算モジュールのうちの第２演算モジュール１２０−２と第１演算モジュール１２０−１が第１基準を満たす場合、装置５００は、第１テストベクトル１３０−１を用いて、第２演算モジュール１２０−２に対してメモリテストを実行するように構成される第２メモリテストモジュールをさらに含み、他の演算モジュールのうちの第２演算モジュール１２０−２と第１演算モジュール１２０が第１基準を満たさない場合、装置５００は、第２演算モジュール１２０−２に対して第２テストベクトルを生成するように構成される第２テストベクトル生成モジュールと、少なくとも１つの演算モジュールのうちの他の演算モジュールとは独立して、生成された、第１テストベクトル１３０−１とは異なる第２テストベクトル１３０−２を用いて、第１第２演算モジュール１２０−２に対してメモリテストを実行するように構成される第３メモリテストモジュールとをさらに含む。
【００６８】
いくつかの実施例では、第１基準は、第２演算モジュール１２０−２が第１演算モジュール１２０−１と同じ構造又は演算機能を有することである。
【００６９】
いくつかの実施例では、第１テストベクトル生成モジュール５１０は、演算モジュールの１つの演算ユニット３１０に対して、サブテストベクトル４２０を生成するように構成されるサブテストベクトル４２０生成モジュールと、サブテストベクトル４２０を第１演算モジュール１２０−１の全ての演算ユニット３１０間で再利用することにより、第１テストベクトル１３０−１を生成するように構成されるサブテストベクトル再利用モジュールとを含む。
【００７０】
いくつかの実施例では、装置５００は、第２基準に従って、演算ユニットの少なくとも１つのメモリ４１０を少なくとも１つのグループに分けるように構成される第１メモリ区分モジュールをさらに含む。サブテストベクトル生成モジュールは、区分された少なくとも１つのグループの各々について、それぞれのグループテストベクトル４５０をそれぞれ生成するように構成されるグループテストベクトル生成モジュールと、生成されたグループテストベクトル４５０に基づいてサブテストベクトル４２０を生成するように構成されるグループテストベクトル合成モジュールとをさらに含む。
【００７１】
いくつかの実施例では、第１メモリ区分ブロックは、少なくとも１つのメモリの位置及びタイプに応じて、演算ユニットの少なくとも１つのメモリ４２０を少なくとも１つのグループに分けるように構成される第１メモリグループ区分モジュールを含む。
【００７２】
いくつかの実施例では、第１メモリテストモジュールは、第１演算モジュール１２０−１の少なくとも１つの演算ユニット３１０の各々に対して、異なるメモリサブテストが並列的又は直列的に実行される対応するメモリサブテストを実行することにより、第１演算モジュール１２０−１に対してメモリテストを実行するように構成されるメモリサブテストモジュールを含む。
【００７３】
いくつかの実施例では、装置５００は、第３基準に従って、演算ユニット３１０の少なくとも１つのメモリ４２０を、少なくとも１つのグループに分けるように構成される第２メモリ区分モジュールをさらに含み、メモリサブテストモジュールは、分けられた少なくとも１つのグループの各々に対して、異なるメモリグループテストが並列的に実行される対応するメモリグループテストを実行することにより、メモリサブテストを実行することをさらに含む。
【００７４】
いくつかの実施例では、第２メモリ区分モジュールは、少なくとも１つのメモリ４２０の位置及びタイプに応じて、演算ユニット３１０の少なくとも１つのメモリ４２０を少なくとも１つのグループに分けるように構成される第２メモリグループ区分モジュールを含む。
【００７５】
図６は、本開示の実施例を実施するために使用され得る例示的な機器６００の模式的ブロック図を示す。機器６００は、図１に示す画像処理機器１３０を実現するために用いられ得る。図に示するように、機器６００は、読み取り専用メモリ（ＲＯＭ）６０２に記憶されたコンピュータプログラム命令、又は記憶ユニット６０８からランダムアクセスメモリ（ＲＡＭ）６０３にロードされたコンピュータプログラム命令に従って、様々な適切な動作及び処理を実行することができる中央処理装置（ＣＰＵ）６０１を含む。ＲＡＭ６０３には、機器６００の動作に必要な種々のプログラムやデータが記憶されていてもよい。ＣＰＵ６０１、ＲＯＭ６０２及びＲＡＭ６０３は、バス６０４を介して互いに接続されている。入力／出力（Ｉ／Ｏ）インタフェース６０５もバス６０４に接続されている。
【００７６】
Ｉ／Ｏインタフェース６０５には、機器６００の複数のコンポーネントが接続されており、これらのコンポーネントは、キーボード、マウスなどの入力ユニット６０６；各種のディスプレイ、スピーカなどの出力ユニット６０７；磁気ディスク、光ディスクなどの記憶ユニット６０８；ネットワークカード、モデム、無線通信送受信機などの通信ユニット６０９を含む。通信ユニット６０９は、インターネットのようなコンピュータネットワーク及び／又は様々な電気通信ネットワークを介して、機器６００が他の機器と情報／データを交換することを可能にする。
【００７７】
処理ユニット６０１は、上述した様々な方法及び処理、たとえば過程４００を実行する。たとえば、いくつかの実施例では、過程２００は、記憶ユニット６０８のような機械読み取り可能な媒体に有形的に含まれるコンピュータソフトウェアプログラムとして実現されてもよい。いくつかの実施例では、コンピュータプログラムの一部又は全部を、ＲＯＭ６０２及び／又は通信ユニット６０９を介して機器６００にロード及び／又はインストールすることができる。コンピュータプログラムがＲＡＭ６０３にロードされ、ＣＰＵ６０１によって実行される際、上述した過程４００の１つ又は複数のステップを実行することができる。代替的に、他の実施例では、ＣＰＵ６０１は、他の任意の適切な方式（たとえば、ファームウェアによって）過程４００を実行するように構成されてもよい。
【００７８】
本明細書で上述された機能は、１つ又は複数のハードウェア論理コンポーネントによって少なくとも部分的に実行されてもよい。たとえば、限定的ではないが、使用できる例示的なタイプのハードウェア論理コンポーネントには、フィールドプログラマブルゲートアレイ（ＦＰＧＡ）、特定用途向け集積回路（ＡＳＩＣ）、特定用途向け標準製品（ＡＳＳＰ）、システムオンチップ（ＳＯＣ）、複合プログラマブルロジックデバイス（ＣＰＬＤ）などが含まれる。
【００７９】
本開示の方法を実施するためのプログラムコードは、１つ又は複数のプログラミング言語の任意の組み合わせでプログラミングすることができる。これらのプログラムコードは、汎用コンピュータ、専用コンピュータ、又は他のプログラマブルデータ処理装置のプロセッサ又はコントローラに提供され、プログラムコードがプロセッサ又はコントローラによって実行されたときに、フローチャート及び／又はブロック図に規定された機能／動作を実行するようにすることができる。プログラムコードは、完全にマシン上で、部分的にマシン上で実行してもよく、独立したソフトウェアパッケージとして部分的にマシン上で、且つ部分的にリモートマシン上で実行してもよく、完全にリモートマシン又はサーバ上で実行してもよい。
【００８０】
本開示の文脈では、機械読み取り可能な媒体は、命令実行システム、装置、又は機器によって使用されるために、又は命令実行システム、装置、又は機器と共に使用されるプログラムを含むか記憶することができる有形媒体とすることができる。機械読み取り可能な媒体は、機械読み取り可能な信号媒体又は機械読み取り可能な記憶媒体であってもよい。機械読み取り可能な媒体は、電子的、磁気的、光学的、電磁気的、赤外線的、又は半導体的なシステム、装置又は機器、あるいはこれらの任意の適切な組み合わせを含むことができるが、これらに限定されるものではない。機械読み取り可能な記憶媒体のより具体的な例は、１つ又は複数のラインに基づく電気的接続、ポータブルコンピュータディスク、ハードディスク、ランダムアクセスメモリ（ＲＡＭ）、読み取り専用メモリ（ＲＯＭ）、消去可能プログラマブル読み取り専用メモリ（ＥＰＲＯＭ又はフラッシュメモリ）、光ファイバ、コンパクトディスク読み取り専用メモリ（ＣＤ−ＲＯＭ）、光学記憶機器、磁気記憶機器、又はこれらの任意の適切な組み合わせを含む。
【００８１】
ここで記載されたシステム及び技術は、バックグラウンドコンポーネントを含むコンピューティングシステム（たとえば、データサーバとして）、又はミドルウェアコンポーネントを含むコンピューティングシステム（たとえば、アプリケーションサーバ）、又はフロントエンドコンポーネントを含むコンピューティングシステム（たとえば、ユーザがここで記載されたシステム及び技術の実施形態とインタラクションすることができるグラフィカル・ユーザ・インタフェース又はウェブ・ブラウザを有するユーザ・コンピュータ）、又はそのようなバックグラウンドコンポーネント、ミドルウェアコンポーネント、又はフロントエンドコンポーネントの任意の組み合わせを含むコンピューティングシステムにおいて実施される。システムのコンポーネントは、任意の形式又は媒体のデジタルデータ通信（たとえば、通信ネットワーク）を介して相互に接続することができる。通信ネットワークの例には、ローカルエリアネットワーク（ＬＡＮ）、ワイドエリアネットワーク（ＷＡＮ）、及びインターネットが含まれる。
【００８２】
コンピュータシステムは、クライアント及びサーバを含むことができる。クライアント及びサーバは、一般的に互いに離れており、一般的に通信ネットワークを介してインタラクションする。クライアント−サーバの関係は、対応するコンピュータ上で実行され、互いにクライアント−サーバ関係を有するコンピュータプログラムによって生成される。
【００８３】
さらに、各動作は特定の順序で図示されているが、これは、そのような動作が、図示されている特定の順序又は順番で実行されること、又は、図示されているすべての動作が、所望の結果を得るために実行されることが必要であることを意味するものと理解されるべきである。ある環境では、マルチタスク及び並列処理が有利である場合がある。同様に、上記の検討にはいくつかの具体的な実施の詳細が含まれているが、これらは、本開示の範囲を制限するものとして解釈すべきではない。別個の実施例の文脈で説明されたいくつかの特徴は、単一の形態において組み合わせて実現されてもよい。逆に、単一の形態の文脈で記述された様々な特徴は、複数の形態において、単独で、又は任意の適切なサブ組み合わせで実現されてもよい。
【００８４】
この主題は、構造的特徴及び／又は方法の論理動作に特有の言語で説明されているが、添付の特許請求の範囲で限定された主題は、上記で説明された特定の特徴又は動作に限定されるとは限らないことを理解されたい。逆には、上記で説明された特定の特徴及び動作は、特許請求の範囲を実現する例示的な形態にすぎない。
【図１】
2022003680.tif 000003
【図２】
2022003680.tif 000004
【図３】
2022003680.tif 000005
【図４】
2022003680.tif 000006
【図５】
2022003680.tif 000007
【図６】
2022003680.tif 000008
【外国語明細書】
2022003680000001.pdf