以下の段落は、特定の説明的な実施形態を記載する。その他の実施形態は、代替物、等価物、改良物を含んでもよい。また、説明的な実施形態は、数個のフィーチャを含んでもよく、特定のフィーチャは、ここで説明されるデバイス、システム及び方法の幾つかの実施形態にとって必須でなくてもよい。更に、幾つかの実施形態は、以下の説明的な実施形態の2つ以上からのフィーチャを含む。
また、ここで使用されるように、接続詞「又は(or)」は、一般的に、包括的な「又は(or)」を指すが、明示的に示される場合、又は、「又は(or)」が排他的な「又は(or)」でなければならないことを文脈が示す場合、「又は(or)」は、排他的な「又は(or)」を指してもよい。
更に、この記載及び図面において、参照番号上のアルファベットの接尾辞は、参照番号によって識別されるフィーチャの特有のインスタンスを示すために使用されてもよい。例えば、セルのグループにおけるセルは、特定のセルが区別されていない場合、参照番号165で識別されてもよい。但し、165Aは、特定のセルが残りのセル165から区別されている場合、特定のセルを識別するために使用されてもよい。
図1は、ナノインプリントリソグラフィシステム100の例示的な実施形態を示す。動作時、ナノインプリントリソグラフィシステム100は、基板102(例えば、ウエハ)の上に成形可能材料(例えば、レジスト)のドロップ124を配置し、基板102の上の成形可能材料をインプリントするために、パターニング面112を有するメサ(モールドとも称される)110を有するテンプレート108を用いて、基板102の上のインプリントフィールドにおける成形可能材料に、レリーフパターンを有するパターン層125を形成する。単一のメサ110は、単一の基板102又は複数の基板102の上の複数のインプリントフィールドにおける成形可能材料をインプリントするために使用されてもよい。
図1における実施形態では、基板102の周辺は、アップリケ106によって取り囲まれている。アップリケ106は、テンプレート108の下方のローカルガス環境を安定化させる、及び/又は、例えば、テンプレートが基板面130の上方にない場合に、パターニング面112をパーティクルから保護するのに有用である。更に、アップリケ106の上面は、基板面130に対して、(例えば、図1に示すように)下方、又は、同一平面上にあってもよい。
また、基板102は、アップリケ106も支持する基板チャック104に結合される。基板チャック104の例は、真空チャック、ピン型チャック、溝型チャック、静電チャック、電磁チャックを含む。幾つかの実施形態において、図1に示す実施形態のように、アップリケ106は、アップリケの一部が基板チャック104と基板102との間に挟まれることなく、基板チャック104の上に載置される。基板チャック104は、基板位置決めステージ107に支持される。
基板位置決めステージ107は、x、y、z、θ及びφ軸の1つ以上に沿った並進又は回転運動を提供する。基板位置決めステージ107、基板102及び基板チャック104は、ベース(不図示)の上に位置決めされてもよい。また、基板位置決めステージ107は、位置決めシステム又は位置決めサブシステムの一部であってもよい。
ナノインプリントリソグラフィシステム100は、テンプレート108も含む。テンプレート108は、z軸に沿って基板102に向かって延在するメサ110(モールドとも称される)を含む本体を含んでもよい。メサ110は、その上に、パターニング面112を有してもよい。また、テンプレート108は、メサ110なしで形成されてもよい。このように、幾つかの実施形態において、基板102に面するテンプレート108の表面は、メサ110として機能し、パターニング面112は、基板102に面するテンプレート108の表面上に含まれる。テンプレート108又はメサ110を構成する材料の例は、溶融シリカ、石英、シリコン、有機ポリマー、シロキサンポリマー、ホウケイ酸ガラス、フルオロカーボンポリマー、金属、硬化サファイアを含む。
パターニング面112は、複数の離間したテンプレート凹部114又はテンプレート凸部116によって定義されるフィーチャを有するが、幾つかの実施形態は、その他の構造(例えば、平面)を含む。パターニング面112は、基板102の上の成形可能材料のドロップ124から形成される、パターン層125のレリーフパターンの基礎(例えば、逆のもの)を形成するパターンを定義する。幾つかの実施形態において、パターニング面112は、フィーチャレスであり、この場合、平面が基板102の上の成形可能材料から形成される。幾つかの実施形態(例えば、インクジェットベースのアダプティブ平坦化を実行する実施形態)において、パターニング面112は、フィーチャレスであり、基板102と実質的に同じサイズであり、この場合、平面が、基板102の全体にわたって、成形可能材料から形成される。
テンプレート108は、テンプレートチャック118に結合される。テンプレートチャック118の例は、真空チャック、ピン型チャック、溝型チャック、静電チャック、電磁チャックを含む。テンプレートチャック118は、テンプレート108にわたって変化する力をテンプレート108に与えるように構成されていてもよい。テンプレートチャック118は、テンプレートチャック118、インプリントヘッド119及びテンプレート108が少なくともz軸方向に移動可能なように、ブリッジ120に移動可能に結合されるインプリントヘッド119に結合されてもよい。幾つかの実施形態において、テンプレートチャック118、インプリントヘッド119及びテンプレート108は、x、y、θ及びφ軸の1つ以上にも移動可能である。ナノインプリントリソグラフィシステム100は、テンプレート108、テンプレートチャック118又はインプリントヘッド119を移動させる1つ以上のモータを含んでいてもよい。
ナノインプリントリソグラフィシステム100は、流体ディスペンサ122も含む。流体ディスペンサ122は、ブリッジ120に移動可能に結合されてもよい。幾つかの実施形態において、流体ディスペンサ122及びテンプレートチャック118は、1つ以上の位置決め構成要素を共有する。幾つかの実施形態において、流体ディスペンサ122とテンプレートチャック118とは、互いに独立して移動する。
動作時、流体ディスペンサ122は、ドロップパターンに従って、基板102の上に成形可能材料のドロップ124を配置する。成形可能材料は、例えば、レジスト(例えば、フォトレジスト)、又は、別の重合可能材料であってもよく、成形可能材料は、モノマーを含む混合物を含んでもよい。
成形可能材料のドロップ124は、設計検討に応じて、所望の体積がパターニング面112と基板102との間に定義される前又は後に、基板102の上に分配されてもよい。異なる流体ディスペンサ122は、ドロップ124を分配するために、異なる技術を用いてもよい。成形可能材料が噴射可能である場合、成形可能材料のドロップ124を分配するために、インクジェット型ディスペンサが使用されてもよい。例えば、サーマルインクジェット、マイクロエレクトロメカニカルシステム(MEMS)ベースのインクジェット及び圧電インクジェットは、噴射可能な液体を分配するための技術である。
更に、付加的な成形可能材は、種々の技術、例えば、ドロップ分配、スピンコーティング、浸漬コーティング、化学蒸着(CVD)、物理蒸着(PVD)、薄膜堆積、厚膜堆積などを用いて、基板102に追加されてもよい。
ナノインプリントリソグラフィシステム100は、露光パス128に沿って化学線エネルギーを導くエネルギーソース126も含む。インプリントヘッド119及び基板位置決めステージ107は、テンプレート108及び基板102を露光パス128の上に(例えば、重なるように)位置決めするように構成されてもよい。カメラ136は、同様に、カメラ136の撮像視野が露光パス128の少なくとも一部と重なるように位置決めされてもよい。
成形可能材料のドロップ124が基板上に配置されると、インプリントヘッド119、基板位置決めステージ107のいずれか、又は、両方は、成形可能材料によって充填される所望のフィールド体積を定義するために、メサ110と基板102との間の距離を変化させる。例えば、インプリントヘッド119は、基板102の上にある成形可能材料のドロップ124に接触するメサ110を移動させる力をテンプレート108に与えてもよい。所望のフィールド体積が成形可能材料で充填された後、エネルギーソース126は、露光パス128に沿って成形可能材料に導かれ、基板面130及びパターニング面112の形状に一致させて成形可能材料を硬化、固化、又は、架橋させ、それにより、基板102の上にパターン層125を定義するエネルギー(例えば、化学線(UV))を生成する。成形可能材料は、テンプレート108が成形可能材料と接触している間に硬化され、それにより、基板102の上にパターン層を形成する。このように、ナノインプリントリソグラフィシステム100は、パターニング面112のパターンの逆である凹部及び凸部を有するパターン層125を形成するために、インプリントプロセスを用いる。
インプリントプロセスは、基板面130にわたって広がる複数のインプリントフィールド(例えば、図2では、インプリントフィールド141)において繰り返し行われる。例えば、インプリントフィールドのそれぞれは、メサ110と同じサイズであってもよいし、メサ110のパターン領域115のみと同じサイズであってもよい。メサ110のパターン領域115は、基板102の上にパターンをインプリントするために用いられるパターニング面112の領域(例えば、テンプレート凹部114及びテンプレート凸部116を含む領域)である。メサ110のパターン領域115は、押し出しを防止するために用いられる流体制御フィーチャを含んでもよい。幾つかの実施形態において、基板102は、1つのインプリントフィールドのみを有し、インプリントフィールドは、基板102、又は、メサ110でパターニングされる基板102の領域と同じサイズである。また、幾つかの実施形態において、インプリントフィールドは、重なり合う。インプリントフィールドの幾つかは、基板102の境界と交差するパーシャルインプリントフィールドであってもよい。
パターン層125は、各インプリントフィールドにおいて、基板面130の最高点の上に残膜厚(RLT)を有する残膜を有するように形成されてもよい。パターン層125は、残膜の上に延在する凸部などの1つ以上のフィーチャを含む。これらの凸部は、メサ110のパターン面112における凹部114と一致する。
パターン層125は、例えば、硬化、酸化、層形成、堆積、ドーピング、平坦化、エッチング、成形可能材料の除去、ダイシング、ボンディング、パッケージングなどを含む、物品(例えば、デバイス)製造のための公知の工程及びプロセスに更にさらされてもよい。物品の例は、CMOSロジック、マイクロプロセッサ、NANDフラッシュメモリ、NORフラッシュメモリ、DRAMメモリ、MRAM、3Dクロスポイントメモリ、Re-RAM、Fe-RAM、STT-RAM、MEMSを含む。
ナノインプリントリソグラフィシステム100は、基板位置決めステージ107、インプリントヘッド119、流体ディスペンサ122、エネルギーソース126又はカメラ136などの1つ以上のその他の構成要素又はサブシステムと通信する1つ以上のプロセッサ132(例えば、コントローラ)によって、調整、制御又は命令され、1つ以上の非一時的コンピュータ可読媒体134に記憶されたコンピュータ可読プログラムの指示に基づいて動作する。幾つかの実施形態において、図1における実施形態を含めて、1つ以上のプロセッサ及び1つ以上の非一時的コンピュータ可読媒体134は、ナノインプリントリソグラフィ制御デバイス135に含まれる。ナノインプリントリソグラフィ制御デバイス135は、ナノインプリントリソグラフィシステム100の動作を調整、制御又は命令する。
1つ以上のプロセッサ132のそれぞれは、マイクロプロセッサ(例えば、シングルコアマイクロプロセッサ、マルチコアマイクロプロセッサ)を含む中央演算処理装置(CPU)、グラフィック処理装置(GPU)、特定用途向け集積回路(ASIC)、フィールドプログラマブルゲートアレイ(FPGA)、デジタルシグナルプロセッサ(DSP)、特別に構成されたコンピュータ、及び、その他の電子回路(例えば、その他の集積回路)の1つ以上であってもよいし、含んでもよい。例えば、プロセッサ132は、専用コントローラであってもよいし、ナノインプリントリソグラフィシステムコントローラとして特別に構成された汎用コントローラであってもよい。
非一時的コンピュータ可読媒体の例は、これらに限定されないが、磁気ディスク(例えば、フロッピーディスク、ハードディスク)、光ディスク(例えば、CD、DVD、ブルーレイ)、光磁気ディスク、磁気テープ、半導体メモリ(例えば、不揮発性メモリカード、フラッシュメモリ、半導体ドライブ、SRAM、DRAM、EPROM、EEPROM)、ネットワーク接続ストレージ、イントラネット接続非一時的コンピュータ可読ストレージデバイス、インターネット接続非一時的コンピュータ可読ストレージデバイスを含む。
図1における実施形態では、ナノインプリントリソグラフィ制御デバイス135は、1つ以上のドロップパターンを生成してもよいし、ナノインプリントリソグラフィ制御デバイス135は、1つ以上のドロップパターンを生成した別のデバイス(例えば、ドロップパターン生成デバイス)から1つ以上のドロップパターンを取得してもよい。例えば、1つ以上のプロセッサ132は、解析が実行され、ドロップパターンなどの制御ファイルが生成されるネットワークコンピュータと通信してもよい。ドロップパターンは、流体ディスペンサ122が液体成形可能材料のドロップ124を配置すべき基板上の位置を示す。ドロップパターンは、フィールド体積及びインプリントフィールドフィーチャに基づいて生成されてもよい。フィールド体積は、パターン層125の所望のフィーチャの全て(例えば、インプリントフィールドにおけるパターン層125のフィーチャの全て)を生成するために必要とされる成形可能材料の体積を示す。また、インプリントフィールドフィーチャを考慮して、ドロップパターンの密度は、インプリントフィールドにわたって変化してもよい。また、ドロップパターンは、均一な密度を有するインプリントフィールドの領域(例えば、ブランク領域、又は、インプリントフィールドフィーチャが均一なフィーチャ密度を有する領域)にわたって均一なドロップ密度を有してもよい。
図2は、ナノインプリントリソグラフィシステム100の例示的な実施形態の斜視図を示す。ナノインプリントリソグラフィシステム100のこの実施形態は、基板102と、アップリケ106と、流体ディスペンサ122と、メサ110と、テンプレートチャック118と、インプリントヘッド119とを含む。また、図2は、基板102の上の複数のインプリントフィールド141を示す。また、流体ディスペンサ122は、インプリントフィールド141の1つの上に成形可能材料のドロップ124を配置させている。
図3は、基板102、アップリケ106、流体ディスペンサ122、テンプレート108及びドロップパターン142の例示的な実施形態の平面図(z軸に沿った図)を示す。テンプレート108は、メサ110を含む。図3における基板102は、複数のインプリントフィールド141を含む。インプリントフィールド141のそれぞれにおいて、それぞれのパターンは、成形可能材料(例えば、パターン層又は平面層)から形成される。アップリケ106及び基板102を支持する基板位置決めステージは、アップリケ106及び基板102をx軸及びy軸の両方に沿って移動させることができる。
これにより、基板位置決めステージは、インプリントフィールド141のそれぞれを、インプリントフィールド141の上に成形可能材料のドロップを配置する流体ディスペンサ122の下方に位置決めし、次いで、インプリントフィールド141の上に配置された成形可能材料にパターン(例えば、パターン層)を形成するテンプレート108の下方に位置決めする。幾つかの実施形態において、基板面の上には、1つのインプリントフィールドしか存在しない。
インプリントフィールド141が流体ディスペンサ122の下方に位置決めされると、流体ディスペンサ122は、成形可能材料のドロップ124をインプリントフィールド141の上に配置する。例えば、図3は、ドロップパターン142に従って、流体ディスペンサ122によって成形可能材料のドロップ124が配置されたインプリントフィールド141Aを示す。幾つかの実施形態において、流体ディスペンサ122は、同一のドロップパターン142に従って、インプリントフィールド141A~Cのそれぞれにドロップ124を配置する。しかしながら、幾つかの実施形態では、流体ディスペンサ122は、幾つかのインプリントフィールド141に対して、異なるドロップパターンを使用する。
図4は、ドロップパターンを生成するための動作フローの例示的な実施形態を示す。ここで説明されるこの動作フロー及びその他の動作フローは、それぞれ、特定のそれぞれの順序で提示されるが、これらの動作フローの幾つかの実施形態は、提示された順序とは異なる順序で動作の少なくとも幾つかを実行する。異なる順序の例は、同時、並列、重複、並べ替え、同期、インクリメンタル及びインターリーブされた順序を含む。また、これらの動作フローの幾つかの実施形態は、ここで説明される動作フローの2つ以上からの動作(例えば、ブロック)を含む。このように、動作フローの幾つかの実施形態は、ブロックを省略し、ブロックを加え(例えば、ここで説明されるその他の動作フローからのブロックを含み)、ブロックの順序を変更し、ブロックを結合し、又は、ここで説明される動作フローの例示的な実施形態に比べて、ブロックをより多くのブロックに分割する。
更に、ここで説明されるこの動作フロー及びその他の動作フローは、ドロップパターン生成デバイスによって実行されるが、これらの動作フローの幾つかの実施形態は、2つ以上のドロップパターン生成デバイスによって、又は、1つ以上のその他の特別に構成されたコンピュータデバイス(例えば、ナノインプリントリソグラフィ制御デバイス)によって実行される。
図4において、フローは、ブロックB400で開始し、次いで、ブロックB405に進み、ドロップパターン生成デバイスは、単一のドロップにおける成形可能材料の体積を示す成形可能材料のドロップの体積(ドロップ体積)を設定又は取得する(例えば、読み出す又は受け取る)。対応するナノインプリントリソグラフィシステムの構成要素(例えば、流体ディスペンサ)に応じて、ドロップ体積は、可能な体積の範囲を有してもよいし(例えば、調整可能であってもよいし)、又は、ドロップ体積は、固定の体積を有してもよい。次に、ブロックB410において、ドロップパターン生成デバイスは、1つ以上のインプリントフィールドの材料マップ(フィールド材料マップ)を取得する。フィールド材料マップは、基板全体をカバーしてもよいし、単一のインプリントフィールドのみを記述してもよいし、又は、複数のインプリントフィールドを記述してもよい。例えば、フィールド材料マップは、各タイル(例えば、画素)のそれぞれの値がインプリント材料の体積(例えば、図1におけるパターン層125などのパターン層の厚さ)を示す画像(例えば、ビットマップ、PNG)であってもよい。図5は、フィールド材料マップ160の例示的な実施形態を示す。フィールド材料マップ160における異なるシェードは、タイルの位置でのインプリント材料のそれぞれの体積を示す。
次に、ブロックB415において、ドロップパターン生成デバイスは、フィールド材料マップを複数のセルに分割する。例えば、ドロップパターン生成デバイスの幾つかの実施形態は、フィールド材料マップ上のセルのセット(例えば、アレイ、グリッド、テッセレーション)を重ね合わせる。セルのサイズは、ドロップパターンの解像度、及び、ドロップパターン生成デバイスがドロップパターンを生成することができる速度に影響する。また、セルは、様々な形状(例えば、正方形、長方形、三角形、六角形、八角形、不規則な多角形)を有するが、以下の例示的な実施形態において、セルは、六角形の形状を有する。幾つかの実施形態において、セルの全てが同一形状を有するのではなく、即ち、異なる形状が一緒に使用される。
図6は、フィールド材料マップの上にオーバーレイされたセルのセットの例示的な実施形態を示す。フィールド材料マップ160は、16個のタイル161を含み、フィールド材料マップ160における各タイル161の色は、タイル161の位置での成形可能材料の体積を示す。
また、この実施形態において、セル165のセットにおける各セル165は、六角形の形状を有する。六角形の形状は、長方形及びダイヤモンド(ひし形)の形状が、等方性及び長方形よりも円形である、ドロップ拡散ジオメトリーの準最適表現であるため、結果として生じるドロップパターンの質を改善する。長方形又はダイヤモンドの形状のセルの代わりに六角形のセルを用いることで、ドロップ拡散の等方性がよりよく再現される。また、幾つかのドロップパターンにおいて、ドロップの絶対多数は、正確に6個の隣接した隣接ドロップを有し、これは、各ドロップ領域が隣接する六角形の形状のセルのセットからなる場合に自然に現れる。
更に、ブロックB415は、ブロックB420を含む。ブロックB420において、ドロップパターン生成デバイスは、各セルに対するそれぞれの材料体積(セル体積)を決定し、各セルを割り当てられていないセルとしてマークする。セル体積は、セルに割り当てられる(例えば、ブロックB430又はブロックB440で割り当てられる)成形可能材料の体積を示す。幾つかの実施形態において、セルのセル体積は、セルによってオーバーレイされるフィールド材料マップにおけるタイルの領域での成形可能材料の体積の総和であると決定される。例えば、図6を参照するに、セルの領域がタイルの領域の半分である場合、第1のセル165Aのセル体積は、第1のセル165Aによってオーバーレイされるタイル161Aの成形可能材料の量の半分となる。また、例えば、第2のセル165Bのセル体積は、第2のセル165Bのそれぞれの半分によってオーバーレイされた2つのタイル161B~Cのそれぞれの成形可能材料の量の4分の1の総和となる。このように、多数のセルによってオーバーレイされたタイルは、その成形可能材料の体積がオーバーレイするセルの全てに分配され、成形可能材料の体積の一部(fraction)が特定のセルに送られ、特定のセルによってオーバーレイされたタイルの領域の一部(fraction)に等しくなる。また、全てのセルに割り当てられた総体積は、全てのタイルの総体積に等しくなる(フィールド材料マップにおける総体積に等しくなる)。
次いで、フローは、ブロックB425に移り、ドロップパターン生成デバイスは、ドロップ体積のどの部分も割り当てられていないセルである、割り当てられていないセルを選択する。
次に、ブロックB430において、ドロップパターン生成デバイスは、ドロップ体積の少なくとも一部を選択されたセルに割り当て、選択されたセルを割り当てられたものとしてマークする。選択されたセルに割り当てられるドロップ体積は、(例えば、ブロックB420からの)選択されたセルのセル体積である。セル体積は、ドロップ体積よりも小さく(セル体積は、最大セル体積がドロップ体積よりも小さくなるように設定される-ドロップ体積は、最大セル体積よりも実質的に大きくてもよい)、セル体積に等しいドロップ体積の一部は、選択されたセルに割り当てられ、ドロップ体積の一部は、割り当てられないままである。
次いで、フローは、ブロックB435に移り、ドロップパターン生成デバイスは、ブロックB430からのドロップ体積のいずれかが割り当てられてないままであるかどうかを判定する。ドロップパターン生成デバイスが、ブロックB430からのドロップ体積の一部が割り当てられていないままであると判定した場合(B435=Yes)、フローは、ブロックB440に移る。ブロックB440において、ドロップパターン生成デバイスは、残りのドロップ体積の少なくとも一部を、割り当てられていない隣接セルに割り当て、隣接セルを割り当てられたものとしてマークする。ブロックB440から、フローは、ブロックB435に戻る。ブロックB435-B440において、ドロップパターン生成デバイスは、隣接セルのセル体積に等しいドロップ体積の一部を割り当て、次いで、ドロップ体積の一部が割り当てられていないままであれば、別の隣接セルに移り、それによって、ドロップ体積の全てがセルに割り当てられるまで、複数の隣接セルにアクセスする(visit)。
また、ドロップパターン生成デバイスが、ブロックB430からのドロップ体積のいずれも割り当てられていないままであると判定した場合(B435=No)、フローは、ブロックB445に移る。
ブロックB445において、ドロップパターン生成デバイスは、割り当てられていないセルが残っているかどうかを判定する。ドロップパターン生成デバイスが、1つ以上の割り当てられていないセルが残っていると判定した場合(B445=Yes)、フローは、ブロックB425に戻る。ドロップパターン生成デバイスが、割り当てられていないセルが残っていないと判定した場合(B445=No)、フローは、ブロックB450に移る。
ブロックB450において、ドロップパターン生成デバイスは、ドロップのドロップ体積の一部を割り当てられたセルにおける各ドロップの位置を計算する(或いは、決定する)。ドロップのドロップ体積の一部を割り当てられたセルは、ドロップ領域と称されてもよい。例えば、3つのセルがドロップのドロップ体積の一部を割り当てられている(3つのセルがドロップ領域を構成する)場合、ドロップパターン生成デバイスは、ドロップに対して、3つのセル内の位置を計算する。この位置は、ドロップがドロップパターンにおいて配置される位置を示す。ドロップパターン生成デバイスは、ドロップパターンを定義するドロップの位置を出力又は記憶する。次いで、フローは、ブロックB455で終了する。
図7は、ドロップパターンを生成するための動作フローの例示的な実施形態を示す。フローは、ブロックB700で開始し、次いで、ブロックB705に移り、ドロップパターン生成デバイスは、フィールド材料マップを取得する。次に、ブロックB710において、ドロップパターン生成デバイスは、ドロップ体積を設定又は取得し(例えば、ユーザ入力から受け取り、メモリデバイスから読み出し)、走査シーケンスを取得し、フラッディングシーケンスを取得する。
走査シーケンスは、ドロップパターン生成デバイスが、割り当てられていないセルについて、セルのセットを走査するため使用するシーケンス又は順序を定義する。図8A-Dは、走査シーケンスの例示的な実施形態を示す。図8A-Dにおける走査シーケンスのそれぞれは、正確に1回、各セルにアクセスする。図8Aにおける走査シーケンスは、セルの特定の行を水平に左から右に走査し、行が終了したら、上方(又は下方)の行を水平に左から右に走査するラスタスキャンである。図8Bにおける走査シーケンスは、水平走査が行ごとに交互に行われる蛇行(serpentine)スキャンである。例えば、行におけるセルが水平に左から右に走査される場合、上方(又は下方)の行は、水平に右から左に走査される。図8Cにおける走査シーケンスは、コーナースキャンである。1つのコーナーのセルが走査され、次いで、走査は、境界(水平又は垂直)に到達するまで、水平方向と角度(ユーザによって特定される)をなす方向に進行する。そして、走査は、走査ラインを走査方向に垂直な方向に1セルサイズシフトした後、反対方向に戻る。図8Dにおける走査シーケンスは、スパイラルスキャンである。セルの中心又は近傍のセルが最初に走査され、次いで、走査は、全てのセルが割り当てられるまで、スパイラル状に進行する。スパイラルスキャンパスのピッチは、全てのセルが走査され、割り当てられることを保証するために、セルサイズ以下であってもよい。
幾つかの実施形態は、その他の走査シーケンスを使用する。例えば、幾つかの実施形態は、非連続パス又はカスタムデザインシーケンスをたどるキュー(queue)走査を使用する。キュー走査において、セルは、シーケンスに従ってキューに配置される。シーケンスは、全てのセルにアクセスするが、シーケンスは、連続パスをたどらなくてもよい(例えば、シーケンスは、間にあるセルにアクセスせずに、セルの間を飛び越えてもよい)。キュー走査よる走査の間に、セルが検査され、セルがドロップに割り当てられていない場合、セルは、ドロップに割り当てられる(ソースセルとしてラベリングされてもよい)。セルがドロップに割り当てられている場合、セルは、キューから除去され、次のセルが検査される。走査を開始する前に、キューシーケンスが生成されていてもよい。
幾つかのその他の実施形態は、以下の基準を満たす、その他の走査シーケンスを使用する。(1)走査シーケンスは、各セルにアクセスし、その結果として、各セルは、ドロップに割り当てられる。(2)2回以上アクセスするセルはない。(3)次にアクセスするセルの決定は、迅速に実行される。幾つかの実施形態において、この決定は、生成されたドロップ又は割り当てられたセルには依存しない。また、決定は、走査の現在の進行にとらわれず、無記憶で、走査の現在の進行を完全に認識していなくてもよい。
また、フラッディングシーケンスは、ドロップパターン生成デバイスがドロップ体積をセル(例えば、走査シーケンスに従って選択されたセル)の近傍に分配するために使用するシーケンスを定義する。そして、フラッディングシーケンスの形状及び順序は、フィールド材料マップにおけるフィーチャの密度に基づいて、ドロップ体積を隣接セルに割り当てるように構成されてもよい。
図9A-Dは、フラッディングシーケンスの例示的な実施形態を示す。図9Aは、セル165のセットにおける選択されたセルSを示す。選択されたセルSは、選択されたセルSに隣接する6個の隣接セルを有する。これらの6個のセルは、1から6までの番号が付けられ、フラッディングシーケンスに含まれる。また、番号1から6は、フラッディングシーケンスにおいて、隣接セルがアクセスされる順序を示す。この実施形態において、フラッディングシーケンスは、選択されたセルSの周囲で反時計回りに進行する。
図9Bは、セル165のセットにおける選択されたセルSを示す。選択されたセルSは、選択されたセルSに隣接する6個の隣接セルを有し、これらの6個のセルは、フラッディングシーケンスに含まれる。しかしながら、フラッディングシーケンスは、選択されたセルSに隣接していない隣接セルも含む。隣接セルは、フラッディングシーケンスにおいて、隣接セルがアクセスされる順序を示すために、1から8の番号が付けられる。
図9Cは、セル165のセットにおける選択されたセルSを示す。選択されたセルSは、選択されたセルSに隣接する6個の隣接セルを有し、これらの6個のセルは、フラッディングシーケンスに含まれる。また、隣接セルは、フラッディングシーケンスにおいて、隣接セルがアクセスされる順序を示すために、1から6の番号が付けられる。そして、図9Cにおける隣接セルは、図8Aにおける隣接セルとは異なる順序を付けられる。
図9Dは、セル165のセットにおける選択されたセルSを示す。選択されたセルSは、選択されたセルSに隣接する6個の隣接セルを有するが、隣接する隣接セルの4個だけがフラッディングシーケンスに含まれる。フラッディングシーケンスにおけるその他の5個の隣接セルは、選択されたセルSに隣接しない。
従って、図9A-Dによって示されるように、幾つかのフラッディングシーケンスは、等方性であり、幾つかのフラッディングシーケンスは、異方性である。また、フラッディングシーケンスの付加的な実施形態は、図19A-Dに示される。
また、図9A-Dによって示されるように、フィールドインプリントパターンが特定の方向のドロップの流れに有利となる場合、フラッディングシーケンスは、フィールドインプリントパターンによって有利となる方向に拡大する(grow)ように構成することができる。かかる構成は、フラッディングシーケンスにおいて、セルのシーケンスによって実現することができる。例えば、フラッディングシーケンスの幾つかの実施形態は、まず、有利な方向に隣接セルにアクセスし、次いで、有利な方向にそれらの隣接するセルにアクセスし、次いで、その他の方向に隣接するセルにアクセスする。有利な方向にある隣接セルの数及びシーケンスは、有利な方向が、その他の方向と比べて、どのくらい強く有利であるかを考慮して、調整することができる。テンプレート及び/又は基板のパターン及びパターンフィーチャの方向性は、流体拡散プロセスの動力学及び方向性に影響する。例えば、ライン/スペースアレイなどの指向性パターンは、そのような主軸方向に垂直な方向と比べて、アレイの主軸方向に沿って、流体をより迅速に拡散させることができる。主軸方向は、パターニング面において、ピッチ(例えば、10-80nmの幅)を有する凹部が長さ(例えば、ピッチの少なくとも20倍である)に沿って延在する方向を示し、液体成形可能材料がパターニング面における凹部に充填される場合(例えば、パターニング面が成形可能材料上に下降される場合)、これは、液体成形可能材料が最も容易に流れる方向である(凹部の例は、図1におけるパターニング面112の凹部114を含む)。例えば、図5におけるフィールド材料マップの逆(ノンスケール)がパターニング面である場合、第1の領域11Aにおける凹部の主軸方向は、x軸方向であり、第2の領域171Bにおける凹部の主軸方向は、y軸方向である。幾つかの実施形態において、主軸は、フィールド材料マップ、パターニング面及び基板面の少なくとも1つにおいて、凹部が延在する方向を示す。方向性は、優先フローの方向及び優先の大きさを示す各セルのベクトルとして記憶されてもよい。
図7を再び参照するに、ブロックB710の後、フローは、ブロックB715に移る。ブロックB715において、ドロップパターン生成デバイスは、フィールド材料マップをセルに分割する。ブロックB715は、ブロックB720を含み、ドロップパターン生成デバイスは、各セルに対して、それぞれのセル体積を決定する。次いで、フローは、ブロックB725に移り、ドロップパターン生成デバイスは、ブロックB710で取得された走査シーケンスにおける開始セルを選択する。走査シーケンスに従って選択されたセルは、ここでは、ソースセルと称される。次いで、ブロックB730において、ドロップパターン生成デバイスは、ドロップ体積の少なくとも一部をソースセルに割り当て、ソースセルを割り当てられたものとしてマークする。ドロップ体積がセル体積以下である場合、ドロップパターン生成デバイスは、ドロップ体積の全てをソースセルに割り当てる。ドロップ体積がセル体積よりも大きい場合、ドロップパターン生成デバイスは、セル体積に等しいドロップ体積の一部をソースセルに割り当てる。また、ドロップパターン生成デバイスは、ドロップ体積からソースセルのセル体積を差し引くことによって、残りのドロップ体積を算出する。次いで、フローは、ブロックB735に移り、ドロップパターン生成デバイスは、残りのドロップ体積がゼロよりも大きいかどうかを判定する。ドロップパターン生成デバイスが、残りのドロップ体積がゼロよりも大きいと判定した場合(B735=Yes)、フローは、ブロックB740に移る。
ブロックB740において、ドロップパターン生成デバイスは、フラッディングシーケンスにおいて、ソースセルの次の割り当てられていない隣接セルを選択する。次いで、ブロックB745において、ドロップパターン生成デバイスは、残りのドロップ体積の少なくとも一部を選択された隣接セルに割り当て、選択された隣接セルを割り当てられたものとしてマークする。残りのドロップ体積が、選択された隣接セルのセル体積以下である場合、ドロップパターン生成デバイスは、残りのドロップ体積の全てを、選択された隣接セルに割り当てる。残りのドロップ体積が、選択された隣接セルのセル体積よりも大きい場合、ドロップパターン生成デバイスは、選択された隣接セルのセル体積に等しい残りのドロップ体積の一部を、選択された隣接セルに割り当てる。また、ドロップパターン生成デバイスは、残りのドロップ体積から、選択された隣接セルのセル体積を差し引くことによって、残りのドロップ体積を算出する。次いで、フローは、ブロックB735に戻る。
ドロップパターン生成デバイスが、残りのドロップ体積がゼロより大きくないと判定した場合(B735=No)、フローは、ブロックB750に移る。ブロックB750において、ドロップパターン生成デバイスは、走査シーケンスに従って、割り当てられていないセルに対して、セルを走査する。次に、ブロックB755において、ドロップパターン生成デバイスは、走査シーケンスに従ってセルを走査している間に、割り当てられていないセルを見つけたかどうかを判定する。ドロップパターン生成デバイスが、割り当てられていないセルを見つけたと判定した場合(B755=Yes)、フローは、ブロックB760に移る。ブロックB725、又は、B760の最新の以前のブロックの繰り返しで選択されたソースセルから開始し、割り当てられていないセルは、走査シーケンスにおいて、第1の割り当てられていないセルとなる。ブロックB760において、ドロップパターン生成デバイスは、割り当てられていないセルを選択して、ソースセルとする。次いで、フローは、ブロックB730に戻る。
ブロックB755において、ドロップパターン生成デバイスが、割り当てられていないセルを見つけなかったと判定した場合(B755=No)、フローは、ブロックB765に移る。ブロックB765において、各ドロップについて、ドロップパターン生成デバイスは、ドロップ領域(ドロップのドロップ体積の一部が割り当てられたセル)におけるドロップの位置を計算する。また、ドロップパターン生成デバイスは、ドロップパターンを定義するドロップの位置を出力又は記憶する。次いで、フローは、ブロックB770で終了する。
図10は、ドロップパターンを生成するための動作フローの例示的な実施形態を示す。フローは、ブロックB1000で開始し、次いで、ブロックB1005に移り、ドロップパターン生成デバイスは、フィールド材料マップを取得する。次に、ブロックB1010において、ドロップパターン生成デバイスは、ドロップ体積Dを取得し、体積シーケンスを取得し、走査シーケンスを取得し、フラッディングシーケンスを取得する。体積シーケンスは、ドロップパターン生成デバイスがセルに対するそれぞれの体積を決定する順序を定義する。次いで、フローは、ブロックB1015に移り、ドロップパターン生成デバイスは、体積インデックスxを1に(x=1)、走査シーケンスインデックスyを1に(y=1)、フラッディングシーケンスインデックスzを1に(z=1)、ドロップカウントnを1に(n=1)初期化する。
次に、ブロックB1020において、ドロップパターン生成デバイスは、フィールド材料マップを、N個のセルに分割する(Nは、正の整数)。ブロックB1020は、ブロックB1025-B1035を含み、ドロップパターン生成デバイスは、体積シーケンスに従って、セルのセル体積を決定する。ブロックB1025において、ドロップパターン生成デバイスは、セルcvx(体積シーケンスvにおけるインデックスxのセル)に対して、セル体積vvxを決定する。
なお、体積インデックス及び走査シーケンスインデックスの両方は、N個のセルのセルを識別する(従って、各体積インデックスは、同一のセルを参照する、対応する走査シーケンスインデックスを有する)が、体積シーケンスは、例えば、体積インデックス、走査シーケンスインデックス及びフラッディングシーケンスインデックスの例示的な実施形態を示す図11に示されるように、走査シーケンスとは異なるシーケンス(例えば、順序、パス)において、セルを介して進行してもよいことに留意されたい。図11において、体積シーケンスは、走査シーケンスとは異なる順序において、セル164のセットにおけるセルを介して進行する。幾つかのセル(例えば、セルcv1/cS1、セルcv32/cS32)は、同一の体積インデックス及び走査シーケンスインデックスを有する。しかしながら、幾つかのセルは、セルの走査シーケンスインデックスとは異なる体積インデックスを有する。
このように、体積インデックスxが走査シーケンスインデックスyと同一である場合、セルcvxは、csyと同一のセルでなくてもよい。また、体積インデックスxが走査シーケンスインデックスyと同一である場合、セルcvxは、csyと同一のセルではないことがあるため、体積インデックスxに従って参照されるセルの体積と走査シーケンスインデックスyに従って参照されるセルの体積とを区別するために、体積インデックスxに従って参照されるセルの体積は、vvxによって示され、走査シーケンスインデックスyに従って参照されるセルの体積は、vsyによって示される。但し、(体積インデックスxが走査シーケンスインデックスyと同一でなくても)セルcvxが、体積インデックスx及び走査シーケンスインデックスyの特定の値に対して、セルcsyと同一のセルである場合、セル体積vvxは、セル体積vsyと同一である。例えば、図11において、セルcv12のセル体積vs12は、セルcs16のセル体積vs16と同一である。
また、フラッディングシーケンスは、走査シーケンス及び体積シーケンスとは異なる順序において、セルを介して進行する。更に、フラッディングシーケンスは、選択されたセル(例えば、図9A-Dを参照)に基づいており(例えば、基準点として使用し)、フラッディングシーケンスは、異なる選択されたセルに基づく場合、異なる順序において、セルを介して進行する。また、フラッディングシーケンスの基礎となる選択セルに応じて、各セルは、フラッディングシーケンスにおいて、複数のインデックスによって参照することができる。
例えば、図11において、セルcv21/cs17(体積シーケンスにおいて21番目のセル、及び、走査シーケンスにおいて17番目のセル)が、選択されたセル(例えば、ソースセル)である場合、セルcv22/cs24は、フラッディングシーケンスにおいて、セルcf6でもある。しかしながら、異なるセルが、選択されたセルである場合、セルcv22/cs24は、フラッディングシーケンスにおいて、異なるインデックスを有してもよい。
そこで、フラッディングシーケンスインデックスz、体積インデックスx及び走査シーケンスインデックスyに従って参照されるセルの体積を区別するために、フラッディングシーケンスインデックスzに従って参照させるセルの体積は、vfzによって示される。例えば、図11において、セルcv22/cs24/cf6の体積は、vv22、vs24及びvf6のいずれかによって参照される。
次いで、ブロックB1030において、ドロップパターン生成デバイスは、決定されたセル体積を有していないセルが存在するかどうかを判定する(例えば、x<Nであるか)。決定されたセル体積を有していないセルが存在する場合(B1030=Yes)、フローは、ブロックB1035に進む。ブロックB1035において、ドロップパターン生成デバイスは、体積インデックスを1つ増加させ、フローは、ブロックB1025に戻る。決定された体積を有していないセルが存在しない場合(B1030=No)、フローは、ブロックB1040に進む。
ブロックB1040において、ドロップパターン生成デバイスは、走査シーケンスにおいて、セルcsy(走査シーケンスsにおいて、インデックスyのセル)を選択する。従って、セルcsyは、ソースセルとして称されてもよい。
次いで、ブロックB1045において、ドロップパターン生成デバイスは、ドロップdnのドロップ体積Dnの少なくとも一部を、セルcsyに割り当てる。ブロックB1045において、ドロップパターン生成デバイスは、セルcsyを割り当てられたものとしてマークし、セルcsyを、ドロップdnのドロップ体積Dnの一部が割り当てられたセルのリストである充填セットlnに加え、ドロップdnの残りのドロップ体積Dn-remを算出する。ブロックB1045において、ドロップdnのドロップ体積Dnは、ブロックB1010で取得されたドロップ体積Dと等しい。そして、ドロップdnのドロップ体積Dnがセルcsyのセル体積vsy以上である場合、ドロップパターン生成デバイスは、セル体積vsyと等しいドロップ体積Dnの量をセルcsyに割り当てる。ドロップdnのドロップ体積Dnがセルcsyのセル体積vsy未満である場合、ドロップパターン生成デバイスは、ドロップ体積Dnの全てをセルcsyに割り当てる。
次に、ブロックB1047において、ドロップパターン生成デバイスは、フラッディングシーケンスに従って、セルcsyの割り当てられていない隣接セルを隣接リストに加える。このように、隣接リストにおけるセルは、フラッディングシーケンスによってアクセスされるのと同一の順序で順序づけられる。例えば、フラッディングシーケンスが図9Aにおけるフラッディングシーケンスである場合、図11におけるセルcs17が選択されたセルcsyであり、セルcs12、cs10、cs13、cs20、cs24及びcs19が全て割り当てられていないとすると、セルcs12、cs10、cs13、cs20、cs24及びcs19は、その順序で、隣接リストに加えられる。また、例えば、セルcs10は割り当てられているが、その他の5個のセルが割り当てられていないとすると、セルcs12、cs13、cs20、cs24及びcs19は、その順序で、隣接リストに加えられる。
次いで、フローは、ブロックB1050に進み、ドロップパターン生成デバイスは、残りのドロップ体積Dn-remがゼロよりも大きいかどうかを判定する。残りのドロップ体積Dn-remがゼロよりも大きい場合(B1050=Yes)、フローは、ブロックB1055に移る。ブロックB1055において、ドロップパターン生成デバイスは、セルcsyの隣接セルcfzを選択する。例えば、以前の段落からの例を用いて、セルcs12、cs10、cs13、cs20、cs24及びcs19が、その順序で、隣接リストに加えられ、隣接リストにおける第1のセルである場合、セルcs12は、隣接リストにおけるセルcf1となる。
次に、ブロックB1060において、ドロップパターン生成デバイスは、ドロップdnの残りのドロップ体積Dn-remの少なくとも一部を隣接セルcfzに割り当てる。ブロックB1060において、ドロップパターン生成デバイスは、隣接セルcfzを割り当てられたものとしてマークし、セルcfzを充填セットlnに加え、ドロップdnの残りのドロップ体積Dn-remを算出する。ドロップdnの残りのドロップ体積Dn-remが隣接セルcfzのセル体積vfz以上である場合、ドロップパターン生成デバイスは、セル体積vfzと等しい残りのドロップ体積Dn-remの量を隣接セルcfzに割り当てる。ドロップdnの残りのドロップ体積Dn-remが隣接セルcfzのセル体積vfz未満である場合、ドロップパターン生成デバイスは、残りのドロップ体積Dn-remの全てをセルcfzに割り当てる。
次いで、ブロックB1065において、ドロップパターン生成デバイスは、フラッディングシーケンスに従って、割り当てられていない隣接セルcfzを隣接リストに加える。ブロックB1065において、セルcfzの割り当てられていない隣接セルは、隣接リストの最後に加えられてもよい。セルcfzの近傍は、セルcfzに基づくのではなく、ソースセルSに基づくフラッディングシーケンスによって決定された順序で隣接リストに加えられてもよい。また、フラッディングシーケンスは、各セルに対して(相対的な意味で)同一でなくてもよい。このように、幾つかの実施形態において、ドロップパターン生成デバイスは、2つ以上のフラッディングシーケンスと、各セルに対して使用されているフラッディングシーケンスを示す情報とを取得する。幾つかのそのような実施形態において、隣接セルの隣接セルは、ソースセルSのフラッディングシーケンスによって決定された順序で隣接リストに加えられる。或いは、幾つかのそのような実施形態において、隣接セルの隣接セルは、隣接セルのフラッディングシーケンスによって決定された順序で隣接リストに加えられる(例えば、セルcfzの隣接セルは、セルcfzのフラッディングシーケンスによって決定された順序で隣接リストに加えられる)。更に、幾つかのそのような実施形態において、隣接セルの隣接セルは、ソースセル及び隣接セルの両方のフラッディングシーケンスによって決定された順序で隣接リストに加えられる(例えば、セルcfzの隣接セルは、セルS及びcfzのフラッディングシーケンスによって決定された順序で隣接リストに加えられる)。
次いで、フローは、ブロックB1070に移る。ブロックB1070において、ドロップパターン生成デバイスは、フラッディングシーケンスインデックスzを1つ増加させ、フローは、ブロックB1050に戻る。
ブロックB1050において、残りのドロップ体積Dn-remがゼロよりも大きくない場合(B1050=No)、フローは、ブロックB1071に移る。ブロックB1071において、ドロップパターン生成デバイスは、走査シーケンスインデックスyを1つ増加させる。次に、ブロックB1073において、ドロップパターン生成デバイスは、セルの全てが走査されたかどうか(例えば、走査インデックスyがNよりも大きいかどうか)を判定する。ドロップパターン生成デバイスが、セルの全てが走査されていないと判定した場合(B1073=No)、フローは、ブロックB1075に移る。ブロックB1075において、ドロップパターン生成デバイスは、セルcsyが割り当てられていないかどうかを判定する。ドロップパターン生成デバイスが、セルcsyが割り当てられていなくないと判定した場合(B1075=No)、フローは、ブロックB1071に戻る。ドロップパターン生成デバイスが、セルcsyが割り当てられていないと判定した場合(B1075=Yes)、フローは、ブロックB1077に移り、ドロップパターン生成デバイスは、ドロップカウントnを1つ増加させ、フラッディングシーケンスインデックスzを1に設定し、隣接リストをクリアする。次いで、フローは、ブロックB1040に戻る。
ブロックB1073において、ドロップパターン生成デバイスが、セルの全てが走査されたと判定した場合(B1073=Yes)、フローは、ブロックB1081に移る。ブロックB1081において、ドロップパターン生成デバイスは、ドロップインデックスiを1に設定する。
次に、ブロックB1083において、ドロップパターン生成デバイスは、ドロップdiに対するドロップ領域を定義する充填セットliにあるセルにおけるドロップdiの位置を選択する。例えば、ドロップパターン生成デバイスの幾つかの実施形態は、全てのセルの水平座標及び垂直座標に、その割り当てられた流体体積を乗算し、乗算の結果を合計し、次いで、結果の合計を、全てのセルの割り当てられた流体体積の合計で除算することによって、充填セットliにおけるセルの加重平均を計算する。次いで、ドロップパターン生成デバイスのこれらの実施形態は、ドロップdiの位置をセルの加重平均に移動させる。例えば、図12は、ドロップの充填セットに割り当てられるソースセル、充填セットに割り当てられる隣接セル及びドロップの位置(ドロップ位置)の例示的な実施形態を示す。充填セットは、ソースセル(S)と、13個の隣接セル(N)とを含む。ドロップ位置167は、充填セットにおける14個のセルの加重平均に基づいて計算された。
次に、ブロックB1085において、ドロップパターン生成デバイスは、ドロップインデックスiを1つ増加させる。次いで、ブロックB1087において、ドロップパターン生成デバイスは、ドロップインデックスiがドロップカウントnよりも大きいかどうかを判定する。ドロップパターン生成デバイスが、ドロップインデックスiがドロップカウントnよりも大きくないと判定した場合(B1087=No)、フローは、ブロックB1083に戻る。ドロップパターン生成デバイスが、ドロップインデックスiがドロップカウントnよりも大きいと判定した場合(B1087=Yes)、フローは、ブロックB1090に進む。ブロックB1090において、ドロップパターン生成デバイスは、ドロップパターンを定義するドロップ位置を出力又は記憶する。次いで、フローは、ブロックB1095で終了する。
図13は、ドロップのドロップ体積を1つ以上のセルに割り当てるための動作フローの例示的な実施形態を示す。フローは、ブロックB1300で開始し、ブロックB1305に移り、ドロップパターン生成デバイスは、ソースセルを選択する。次に、ブロックB1310において、ドロップパターン生成デバイスは、ドロップのドロップ体積の少なくとも一部をソースセルに割り当て、これは、ソースセルを割り当てられたものとしてマークすることと、ソースセルをドロップのそれぞれの充填セットに加えることと、ドロップの残りのドロップ体積を算出することとを含む。
次いで、フローは、ブロックB1315に進み、ドロップパターン生成デバイスは、ドロップ体積が残っているかどうかを判定する。ドロップパターン生成デバイスが、ドロップ体積が残っていないと判定した場合(B1315=No)、フローは、ブロックB1345に移り、フローが終了する。ドロップパターン生成デバイスが、ドロップ体積が残っていると判定した場合(B1315=Yes)、フローは、ブロックB1320に進む。
ブロックB1320において、ドロップパターン生成デバイスは、フラッディングシーケンスに従って、ソースセルの1つ以上の割り当てられていない隣接セルを、ソースセルの隣接リストに加える。フラッディングシーケンスは、隣接リストに加える隣接セル、及び、隣接リストにおける隣接セルの位置を識別する。例えば、図14は、ソースセル、及び、隣接リストに加えられた隣接セルの例示的な実施形態を示す。この実施形態において、ソースセルSの6個の隣接する隣接セルは、隣接リストに含まれる。また、隣接セルは、図9Aにおけるフラッディングシーケンスに従って、隣接リストに加えられ、隣接リストにある隣接セルは、隣接リストにおける隣接セルの順序を示すために、1から6の番号が付けられる。この例において、隣接リストにおける隣接セルの順序は、これらのセルの全てがフラッディングシーケンスに含まれ、割り当てられていないため、これらの6個のセルに対するフラッディングシーケンスと同一である。
次いで、ブロックB1325において、ドロップパターン生成デバイスは、隣接リストにおける次の隣接リストを選択する。ブロックB1325の最初の繰り返しにおいて、隣接リストからの次の隣接セルは、隣接リストにおける第1の隣接セルとなる。例えば、ソースセルが図14AからのソースセルSである場合、隣接セル1は、ブロックB1325の最初の繰り返しにおいて選択される隣接セルである。
次いで、フローは、ブロックB1330に移り、ドロップパターン生成デバイスは、ドロップの残りのドロップ体積の少なくとも一部を、選択された隣接セルに割り当て、これは、選択された隣接セルを割り当てられたものとしてマークすることと、選択された隣接セルを充填セットに加えることと、ドロップの残りのドロップ体積を算出することとを含む。
次いで、ブロックB1335において、ドロップパターン生成デバイスは、フラッディングシーケンスに従って、隣接リストにない、選択された隣接セルの割り当てられていない隣接セルを、隣接リストの最後に加える。例えば、図14Bは、ソースセル、ドロップ体積の一部を割り当てられた隣接セル、及び、隣接リストに加えられた隣接セルの例示的な実施形態を示す。図14Bにおいて、図14AにおけるソースセルSの第1の2つの隣接セルは、ドロップ体積の一部を割り当てられ、ドロップ体積の一部を割り当てられた隣接セルは、シェーディングによって示される。また、隣接セル1及び2の割り当てられていない隣接セルは、フラッディングシーケンスに従って、隣接リストに加えられている。例えば、セル1の割り当てられていない近傍であり、隣接リストに含まれていなかったセル7、8及び9は、(図9Aにおけるフラッディングシーケンスと同一である)フラッディングシーケンスに従って、隣接リストの最後に追加された。なお、フラッディングシーケンスは、(A)割り当てられたセル(ソースセルS)、及び、(B)隣接リストに既に含まれていたセル1の隣接セル(セル2及び6)をスキップしたことに留意されたい。また、隣接リストにおいて、セル1がセル2に先行するため、セル10-11が隣接リストに追加される前に、セル7-9が隣接リストに追加された。また、例えば、図14Cは、ソースセル、ドロップ体積の一部を割り当てられた隣接セル、及び、隣接リストに加えられた隣接セルの例示的な実施形態を示す。図14Cにおいて、図14Bにおける隣接リストからの第1の9個の隣接セルは、ドロップ体積の一部を割り当てられている。また、隣接セル1-9の割り当てられていない隣接セルは、フラッディングシーケンスに従って、隣接リストの最後に追加されている。
次に、ブロックB1340において、ドロップパターン生成デバイスは、ドロップ体積が残っているかどうかを判定する。ドロップパターン生成デバイスが、ドロップ体積が残っていないと判定した場合(B1340=No)、フローは、ブロックB1345に移り、フローが終了する。ドロップパターン生成デバイスが、ドロップ体積が残っていると判定した場合(B1340=Yes)、フローは、ブロックB1325に戻る。
従って、図13に示すように、ドロップパターン生成デバイスの幾つかの実施形態は、セルの間でドロップ体積を再帰的に分配する。
図15Aは、ソースセル、及び、フラッディングシーケンスに従って隣接リストに加えられた隣接セルの例示的な実施形態を示す。この実施形態において、ソースセルSの6個の隣接する隣接セルは、2個のその他の隣接セルと同様に、隣接リストに含まれる。また、隣接セルは、図9Bにおけるフラッディングシーケンスに従って、隣接リストに追加された。更に、隣接リストにおける隣接セルは、隣接セルが隣接リストに配置される順序を示すために番号付けされ、隣接リストにおける各隣接セルの位置は、隣接セルのそれぞれの番号(1-8)によって示される。この例において、隣接セルが隣接リストに配置される順序は、これらのセルの全てがフラッディングシーケンスに含まれ、割り当てられていないため、これらの8個のセルに対するフラッディングシーケンスと同一である。
図15Bは、ソースセル、ドロップ体積の一部を割り当てられた隣接セル、及び、フラッディングシーケンスに従って隣接リストに加えられた隣接セルの例示的な実施形態を示す。図15Bは、(例えば、図10におけるブロックB1060-B1065に記載されているように、図13におけるブロックB1330-B1335に記載されているように)ドロップ体積の一部が第1の8個の隣接セルのそれぞれに割り当てられ、隣接セルの割り当てられていない隣接セルが、隣接セルへのドロップ体積の一部の割り当てとともに、隣接リストの最後に加えられた後の図15Aからのセルを示す。ドロップ体積の一部を割り当てられた隣接セル(セル1-8)は、更に、シェーディングによって示される。
図15Cは、ソースセル、ドロップ体積の一部を割り当てられた隣接セル、及び、フラッディングシーケンスに従って隣接リストに加えられた隣接セルの例示的な実施形態を示す。図15Cは、(例えば、図10におけるブロックB1060-B1065に記載されているように、図13におけるブロックB1330-B1335に記載されているように)ドロップ体積の一部が、割り当てられていない18個の隣接セル(セル9-26)のそれぞれにも割り当てられ、隣接セルの割り当てられていない隣接セルが、隣接セルへのドロップ体積の一部の割り当てとともに、隣接リストの最後に加えられた後の図15Bからのセルを示す。ドロップ体積の一部を割り当てられた隣接セル(セル1-26)は、更に、シェーディングによって示される。
図15A-Cに示すように、フラッディングシーケンスは、ドロップ体積の分配を制御又は構成(例えば、調整)するために使用される。
図16Aは、ソースセル、フラッディングシーケンスに従って隣接リストに加えられた隣接セル、及び、以前に割り当てられたセルの例示的な実施形態を示す。以前に割り当てられたセル166は、ドロップ体積の一部を既に割り当てられている。この実施形態において、ソースセルSの4個の隣接する割り当てられていない隣接セルは、隣接リストに含まれている。また、隣接セルは、図9Cにおけるフラディングシーケンスに従って、隣接リストに追加された。更に、隣接リストにおける隣接セルは、隣接セルが隣接リストに配置される順序を示すために番号付けされ、隣接リストにおける各隣接セルの位置は、隣接セルのそれぞれの番号(1-4)によって示される。この例において、フラッディングシーケンスにおける隣接セルの2つは、以前に割り当てられたセル166であるため、隣接リストにおける各隣接セルの番号は、フラッディングシーケンスにおける隣接セルの番号とは異なる。
図16Bは、ソースセル、ドロップ体積の一部を割り当てられた隣接セル、及び、フラッディングシーケンスに従って隣接リストに加えられた隣接セルの例示的な実施形態を示す。図16Bは、(例えば、図10におけるブロックB1060-B1065に記載されているように、図13におけるブロックB1330-B1335に記載されているように)ドロップ体積の一部が、第1の4個の隣接セル(セル1-4)のそれぞれに割り当てられ、隣接セルの割り当てられていない隣接セルが、隣接セルへのドロップ体積の一部の割り当てとともに、隣接リストの最後に加えられた後の図16Aからのセルを示す。ドロップ体積の一部を割り当てられた隣接セル(セル1-4)は、更に、シェーディングによって示される。
図16Cは、ソースセル、ドロップ体積の一部を割り当てられた隣接セル、及び、フラッディングシーケンスに従って隣接リストに加えられた隣接セルの例示的な実施形態を示す。図16Cは、(例えば、図10におけるブロックB1060-B1065に記載されているように、図13におけるブロックB1330-B1335に記載されているように)ドロップ体積の一部が、割り当てられていない8個の隣接セル(セル5-12)のそれぞれにも割り当てられ、隣接セルの割り当てられていない隣接セルが、隣接セルへのドロップ体積の一部の割り当てとともに、隣接リストの最後に加えられた後の図16Bからのセルを示す。ドロップ体積の一部を割り当てられた隣接セル(セル1-12)は、更に、シェーディングによって示される。
図17は、ドロップのドロップ体積を1つ以上のセルに割り当てるための動作フローの例示的な実施形態を示す。フローは、ブロックB1700で開始し、ブロックB1705に移り、ドロップパターン生成デバイスは、ソースセルを選択する。次に、ブロックB1710において、ドロップパターン生成デバイスは、ドロップのドロップ体積の少なくとも一部をソースセルに割り当て、これは、ソースセルを割り当てられたものとしてマークすることと、ソースセルをドロップのそれぞれの充填セットに加えることと、ドロップの残りのドロップ体積を算出することとを含む。
次いで、フローは、ブロックB1715に進み、ドロップパターン生成デバイスは、ドロップ体積が残っているかどうかを判定する。ドロップパターン生成デバイスが、ドロップ体積が残っていないと判定した場合(B1715=No)、フローは、ブロックB1750に移り、フローが終了する。ドロップパターン生成デバイスが、ドロップ体積が残っていると判定した場合(B1715=Yes)、フローは、ブロックB1720に進む。
ブロックB1720において、ドロップパターン生成デバイスは、フラッディングシーケンスに従って、ソースセルの1つ以上の割り当てられていない隣接セルを、ソースセルの隣接リストに加える。フラッディングシーケンスは、隣接リストに加える隣接セル、及び、隣接リストにおける隣接セルの位置を識別する。例えば、図18Aは、ソースセル、及び、隣接リストに加えられた隣接セルの例示的な実施形態を示す。この実施形態において、ソースセルSの6個の隣接する隣接セルは、隣接リストに含まれる。また、隣接セルは、図9Aにおけるフラッディングシーケンスに従って、隣接リストに加えられた。更に、隣接リストにおける隣接セルは、隣接リストにおけるそれらの順序を示すために、1から6の番号が付けられる。この例において、隣接リストにおける隣接セルの順序は、これらのセルの全てがフラッディングシーケンスに含まれ、割り当てられていないため、これらの6個のセルに対するフラッディングシーケンスと同一である。
次いで、ブロックB1725において、ドロップパターン生成デバイスは、隣接リストにおける次の隣接リストを選択する。フローがブロックB1725に最初にアクセスすると、隣接リストからの次の隣接セルは、隣接リストにおける第1の隣接セルとなる。例えば、ソースセルが図18AからのソースセルSである場合、隣接セル1は、フローがブロックB1725を最初にアクセスする際に選択される隣接セルとなる。
次いで、フローは、ブロックB1730に移り、ドロップパターン生成デバイスは、ドロップの残りのドロップ体積の少なくとも一部を、選択された隣接セルに割り当て、これは、選択された隣接セルを割り当てられたものとしてマークすることと、選択された隣接セルを充填セットに加えることと、ドロップの残りのドロップ体積を算出することとを含む。
次に、ブロックB1735において、ドロップパターン生成デバイスは、ドロップ体積が残っているかどうかを判定する。ドロップパターン生成デバイスが、ドロップ体積が残っていないと判定した場合(B1735=No)、フローは、ブロックB1750に移り、フローが終了する。ドロップパターン生成デバイスが、ドロップ体積が残っていると判定した場合(B1735=Yes)、フローは、ブロックB1740に移る。
ブロックB1740において、ドロップパターン生成デバイスは、隣接リストが、割り当てられていない隣接セルである、少なくとも1つの付加的な隣接セルを含むかどうかを判定する。ドロップパターン生成デバイスが、隣接リストが少なくとも1つの付加的な隣接セルを含むと判定した場合(B1740=Yes)、フローは、ブロックB1725に戻る。ドロップパターン生成デバイスが、隣接リストが少なくとも1つの付加的な隣接セルを含まないと判定した場合(B1740=No)、フローは、ブロックB1745に移る。
ブロックB1745において、ドロップパターン生成デバイスは、隣接リストにある隣接セルの割り当てられていない隣接セルを、隣接リストに加える。例えば、図18Bは、ソースセル、ドロップ体積の一部を割り当てられた隣接セル、及び、隣接リストに加えられた隣接セルの例示的な実施形態を示す。図18Bは、ソースセルSの6個の隣接セル(セル1-6)がドロップ体積の一部を割り当てられた後の図18Aにおけるセルを示す。ドロップ体積の一部を割り当てられた隣接セルは、シェーディングによって示される。ドロップパターン生成デバイスが、ドロップ体積の一部が残っており(例えば、ブロックB1735)、隣接リストにおける隣接セル1-6の全てがドロップ体積の一部を割り当てられている(例えば、ブロックB1740において、隣接リストに付加的な割り当てられていない隣接セルが残っていない)と判定した後、ドロップパターン生成デバイスは、第1の6個の隣接セル1-6の割り当てられていない隣接セルを隣接リストに加えた。隣接リストに加えられた、割り当てられていない隣接セルは、隣接リストにおいて、それらのそれぞれの位置(7-18)によって示される。この例示的な実施形態において、フラッディングシーケンスは、ソースセルに隣接するセルと、ソースセルに隣接しないセルとを含む。また、割り当てられていない隣接セルを隣接リストに加える場合、ドロップパターン生成デバイスは、フラッディングシーケンスに従って、隣接リストを順番に処理して、隣接セルの割り当てられていない隣接セルを隣接リストに加える。更に、フラッディングシーケンスは、ドロップ体積の全てを割り当てるのに十分なセルを含むほど大きくてもよい。例えば、図19A-Bは、フラッディングシーケンスの例示的な実施形態を示し、これらのフラッディングシーケンスは、図9A-Dにおけるフラッディングシーケンスよりも多くのセルを含む。幾つかの実施形態において、フラッディングシーケンスのサイズは、ドロップ体積、セルサイズ及びフラッディングシーケンスのパターンを含む様々なパラメータに基づいて構成される。更に、幾つかの実施形態において、フラッディングシーケンスは、複数のサブシーケンスに分割され、ブロックB1720とブロックB1745の各繰り返しとにおいて、次のサブシーケンスは、隣接リストに加えられる。例えば、図19Bにおけるフラッディングシーケンスは、それぞれが10個のセルを含む4つのサブシーケンスに分割されてもよい。ブロックB1720において、第1のサブシーケンスの10個の隣接セルは、隣接リストに追加され、フローがブロックB1745にアクセスするたびに、次のサブシーケンスにおける10個の隣接セルが隣接リストに加えられる。
更に、図18Cは、ソースセル、ドロップ体積の一部を割り当てられた隣接セル、及び、隣接リストに加えられた隣接セルの例示的な実施形態を示す。図18Cは、12個の割り当てられていない隣接セル(セル7-18)がドロップ体積の一部を割り当てられた後の図18Bにおけるセルを示す。ドロップ体積の一部を割り当てられた隣接セルは、シェーディングによって示される。ドロップパターン生成デバイスが、ドロップ体積の一部が残っており(例えば、ブロックB1735)、隣接リストにおける隣接セルの全てがドロップ体積の一部を割り当てられている(例えば、ブロックB1740において、付加的な隣接セルが隣接リストに残っていない)と判定した後、ドロップパターン生成デバイスは、フラッディングシーケンスに従って、隣接リストにおける隣接セルの割り当てられていない隣接セルを隣接リストに加えた。隣接リストにおける割り当てられていない隣接セルは、隣接リストにおいて、それらのそれぞれの位置によって示される(19-36)。
ブロックB1745の後、フローは、ブロックB1725に戻る。
図20は、ドロップパターンを生成するための動作フローの例示的な実施形態を示す。フローは、ブロックB2000で開始し、次いで、ブロックB2005に移り、ドロップパターン生成デバイスは、フィールド材料マップを取得する。次に、ブロックB2010において、ドロップパターン生成デバイスは、ドロップ体積Dを取得し、体積シーケンスを取得し、走査シーケンスを取得し、フラッディングシーケンスを取得する。次いで、フローは、ブロックB2015に移り、ドロップパターン生成デバイスは、体積インデックスxを1に(x=1)、走査シーケンスインデックスyを1に(y=1)、フラッディングシーケンスインデックスzを1に(z=1)、ドロップカウントnを1に(n=1)初期化する。
次に、ブロックB2020において、ドロップパターン生成デバイスは、フィールド材料マップを、N個のセルに分割する(Nは、正の整数)。ブロックB2020は、ブロックB2025-B2035を含み、ドロップパターン生成デバイスは、体積シーケンスに従って、セル体積を決定する。ブロックB2025において、ドロップパターン生成デバイスは、セルcvx(体積シーケンスvにおけるインデックスxのセル)に対して、セル体積vvxを決定する。次いで、ブロックB2030において、ドロップパターン生成デバイスは、決定されたセル体積を有していないセルが存在するかどうかを判定する(例えば、x<Nであるか)。決定されたセル体積を有していないセルが存在する場合(B2030=Yes)、フローは、ブロックB2035に進む。ブロックB2035において、ドロップパターン生成デバイスは、体積インデックスxを1つ増加させ、フローは、ブロックB2025に戻る。決定された体積を有していないセルが存在しない場合(B2030=No)、フローは、ブロックB2040に進む。
ブロックB2040において、ドロップパターン生成デバイスは、走査シーケンスにおいて、セルcsy(走査シーケンスsにおいて、インデックスyのセル)を選択する。従って、セルcsyは、ソースセルとして称されてもよい。
次いで、ブロックB2045において、ドロップパターン生成デバイスは、ドロップdnのドロップ体積Dnの少なくとも一部を、セルcsyに割り当てる。ブロックB2045において、ドロップパターン生成デバイスは、セルcsyを割り当てられたものとしてマークし、セルcsyを、ドロップdnのドロップ体積Dnの一部が割り当てられたセルのリストである充填セットlnに加え、ドロップdnの残りのドロップ体積Dn-remを算出する。ブロックB2045において、ドロップdnのドロップ体積Dnは、ブロックB2010で取得されたドロップ体積Dと等しい。そして、ドロップdnのドロップ体積Dnがセルcsyのセル体積vsy以上である場合、ドロップパターン生成デバイスは、セル体積vsyと等しいドロップ体積Dnの量をセルcsyに割り当てる。ドロップdnのドロップ体積Dnがセルcsyのセル体積vsy未満である場合、ドロップパターン生成デバイスは、ドロップ体積Dnの全てをセルcsyに割り当てる。
次いで、フローは、B2050に移り、ドロップパターン生成デバイスは、残りのドロップ体積Dn-remがゼロよりも大きいかどうかを判定する。残りのドロップ体積Dn-remがゼロよりも大きい場合(B2050=Yes)、フローは、ブロックB2055に移る。
ブロックB2055において、ドロップパターン生成デバイスは、フラッディングシーケンスに従って、セルcsyの隣接セルcfzを選択する。
フラッディングシーケンスは、ドロップ体積及び最小セル体積に基づいて、ドロップ体積を超えることが保証されるセルのグループにおけるフラッディングシーケンスを定義し、これにより、ドロップパターン生成デバイスは、隣接セルを隣接リストに加えることなく、隣接セルを選択することができる。例えば、図19A-Bにおけるフラッディングシーケンスは、ドロップ体積を超えることが保証されるセルのグループを含む。
次に、ブロックB2060において、ドロップパターン生成デバイスは、隣接セルcfzが割り当てられていないかどうかを判定する。ドロップパターン生成デバイスが、隣接セルcfzが割り当てられていないと判定した場合(B2060=Yes)、フローは、ブロックB2065に移る。ブロックB2065において、ドロップパターン生成デバイスは、ドロップdnの残りのドロップ体積Dn-remの少なくとも一部を隣接セルcfzに割り当てる。ドロップパターン生成デバイスは、隣接セルcfzを割り当てられたものとしてマークし、セルcfzを充填セットlnに加え、ドロップdnの残りのドロップ体積Dn-remを算出する。ドロップdnの残りのドロップ体積Dn-remが隣接セルcfzのセル体積vfz以上である場合、ドロップパターン生成デバイスは、セル体積vfzと等しい残りのドロップ体積Dn-remの量を隣接セルcfzに割り当てる。ドロップdnの残りのドロップ体積Dn-remが隣接セルcfzのセル体積vfz未満である場合、ドロップパターン生成デバイスは、残りのドロップ体積Dn-remの全てをセルcfzに割り当てる。次いで、フローは、ブロックB2070に移る。
また、ドロップパターン生成デバイスが、隣接セルcfzが割り当てられていなくないと判定した場合(B2060=No)、フローは、ブロックB2070に移る。
ブロックB2070において、ドロップパターン生成デバイスは、フラッディングシーケンスインデックスzを1つ増加させ、フローは、ブロックB2050に戻る。
ブロックB2050において、残りのドロップ体積Dn-remがゼロよりも大きくない場合(B2050=No)、フローは、ブロックB2071に移る。ブロックB2071において、ドロップパターン生成デバイスは、走査シーケンスインデックスyを1つ増加させる。次に、ブロックB2073において、ドロップパターン生成デバイスは、セルの全てが走査されたかどうか(例えば、走査インデックスyがNよりも大きいかどうか)を判定する。ドロップパターン生成デバイスが、セルの全てが走査されていないと判定した場合(B2073=No)、フローは、ブロックB2075に移る。ブロックB2075において、ドロップパターン生成デバイスは、セルcsyが割り当てられていないかどうかを判定する。ドロップパターン生成デバイスが、セルcsyが割り当てられていなくないと判定した場合(B2075=No)、フローは、ブロックB2071に戻る。
ドロップパターン生成デバイスが、セルcsyが割り当てられていないと判定した場合(B2075=Yes)、フローは、ブロックB2077に移り、ドロップパターン生成デバイスは、ドロップカウントnを1つ増加させ、フラッディングシーケンスインデックスzを1に設定する。次いで、フローは、ブロックB2040に戻る。
ブロックB2073において、ドロップパターン生成デバイスが、セルの全てが走査されたと判定した場合(B2073=Yes)、フローは、ブロックB2081に移る。ブロックB2081において、ドロップパターン生成デバイスは、ドロップインデックスiを1に設定する。次に、ブロックB2083において、ドロップパターン生成デバイスは、充填セットliにあるセルにおけるドロップdiの位置を選択する。
次いで、ブロックB2085において、ドロップパターン生成デバイスは、ドロップインデックスiを1つ増加させる。次いで、フローは、ブロックB2087に移り、ドロップパターン生成デバイスは、ドロップインデックスiがドロップカウントnよりも大きいかどうかを判定する。ドロップパターン生成デバイスが、ドロップインデックスiがドロップカウントnよりも大きくないと判定した場合(B2087=No)、フローは、ブロックB2083に戻る。ドロップパターン生成デバイスが、ドロップインデックスiがドロップカウントnよりも大きいと判定した場合(B2087=Yes)、フローは、ブロックB2090に進む。ブロックB2090において、ドロップパターン生成デバイスは、ドロップ位置を含むドロップパターンを出力又は記憶する。次いで、フローは、ブロックB2095で終了する。
このように、ここで説明される動作フローの幾つかの実施形態は、以下の基準を満たす。(1)ドロップの総体積は、残膜体積に加えて、インプリントフィールドマップのフィーチャの総体積に一致する。例えば、幾つかの実施形態において、1個のドロップの体積と、そのドロップに割り当てられるセルの総計の体積との間の差である最大体積の不整合は、1個のセルの体積未満であることを保証する。(2)ドロップは、残膜(RL)又はインプリントフィールドにおける均一な密度領域などの均一なインプリントフィールドの不均一性を最小とするように配置される。例えば、幾つかの実施形態において、均一な密度領域では、全てのドロップは、それらに割り当てられた等しいサイズの領域を有し、これにより、ドロップが互いに等しく配置され、均一なドロップ密度をもたらす。(3)ドロップは、高いフィーチャ密度の領域が高いドロップ密度を有し、低いフィーチャ密度の領域が低いドロップ密度を有するように、インプリントフィールドのフィーチャに適合するように配置される。例えば、幾つかの実施形態において、ドロップ密度が変化する領域では、ドロップ領域サイズ(ドロップ領域サイズは、それぞれのドロップを割り当てられたセルのサイズの合計である)は、ドロップ領域サイズが低密度領域で大きくなり、ドロップ領域サイズが高密度領域で縮小するように、フィールド材料マップに従って変化し、その結果、ドロップ密度は、フィールドのフィーチャ密度分布に適応的に一致する。
更に、ここで説明される動作フローの幾つかの実施形態は、フィールドの小さい領域(例えば、単一のドロップによって充填される流域)に対して、ドロップパターンを生成する。ドロップに対する最適位置が選択されると、ドロップパターン生成の残りの間、ドロップは、その位置に固定され、全ての更なるドロップ位置最適化が、選択された位置をまだ有していないドロップに対して適用される。動作において、これは、インプリントフィールド領域を徐々に減少させ、選択された位置を既に有するドロップによって供給される量によって、流体体積要求を減少させる。
更に、ここで説明される動作フローの幾つかの実施形態は、同一のフィールド材料マップが入力されるたびに同一のドロップパターンを出力するという意味で決定論的である。また、これらの動作フローは、液滴ドロップの割り当てが各セルに対して1回だけ実行されるという意味で非反復的であるため、最適なドロップパターンが取得され、プロセスが極小値にスタックして収束に失敗しないことを保証する。このように、これらの動作フローは、走査シーケンスにおいて、1回だけ各セルにアクセスするため、迅速に実行することができる。一方、反復アルゴリズムは、フィールド材料マップを数回(時には、数千万回)読み出し、エラーメトリックを最小にするために、反復ごとにドロップ位置をアップデートする。これらの反復アルゴリズムは、特に、単一のインプリントフィールドよりも大きい幾つかの領域(例えば、ウエハ全体)に対して使用される場合、非常に時間がかかる。
更に、ドロップに割り当てられるセルは、低いセル体積を有するセルの間に未要求のセルを有することがある。これらの隙間の領域に同一のドロップ体積のドロップを配置すると、高い体積不整合が生じる可能性がある。この場合、流体ディスペンサが異なる体積のドロップの分配をサポートすれば、より大きなドロップを、走査シーケンスにおいて前に割り当てられるセルに対して使用することができ、隙間の体積の不整合を最小にするために、ドロップを、走査シーケンスにおいて後に割り当てられるセルに対して徐々に減少させることができる。
また、境界の近傍にあるインプリントフィールドの領域は、ドロップによって要求されるべきセルがないため、高い体積の不整合となり、準最適ドロップ配置を有することがある。従って、動作フローの幾つかの実施形態は、全ての準最適に配置されたドロップがインプリントフィールド又はウエハ領域の外側に位置するように、所望のインプリント領域又はウエハ領域よりも僅かに大きい領域に対して、ドロップパターンを発展させる。プロセスが終了した後、インプリントフィールド又はウエハ領域の外側に位置しているドロップは、廃棄される。動作フローは、セルの数に対して線形的に増加する実行時間を有するため、インプリントフィールド領域を増加させても、実行時間が著しく増加することはない。実施形態は、類似するサブ領域から構成される、より大きな領域に対して、より大きなドロップパターンを生成することを含んでもよい。
幾つかの場合において、ドロップ位置を選択するときに少しの繰り返しが許可されるのであれば、品質改善を取得することができる。図21は、ドロップの位置を最適化するための動作フローの例示的な実施形態を示す。フローは、ブロックB2100で開始し、次いで、ブロックB2105に移り、ドロップパターン生成デバイスは、ドロップに対する充填セット及びソースセルを取得する。充填セットは、ドロップに割り当てられたセルを含む。次に、ブロックB2110において、ドロップパターン生成デバイスは、充填セットにおけるドロップ位置を選択する。例えば、ドロップパターン生成デバイスの幾つかの実施形態は、(例えば、図10におけるブロックB1083の説明の例で記載したように)ドロップ位置として、充填セルにおける加重平均を算出する。
次いで、フローは、ブロックB2115に移り、ドロップパターン生成デバイスは、ドロップパターン生成デバイスは、ドロップから、充填セットにおける全てのセルを割り当てない。次いで、フローは、ブロックB2120に進み、ドロップパターン生成デバイスは、ドロップ位置を含む充填セットにおけるセルを、セルソースとして選択する。次いで、ブロックB2125において、ドロップパターン生成デバイスは、ドロップ体積の少なくとも一部をソースセルに割り当て、ソースセルを割り当てられたものとしてマークし、残りのドロップ体積を算出する。
次に、ブロックB2130において、ドロップパターン生成デバイスは、ドロップ体積が残っているかどうかを判定する。ブロックB2130において、ドロップパターン生成デバイスが、ドロップ体積が残っていると判定した場合(B2130=Yes)、フローは、ブロックB2135に移る。ブロックB2130において、ドロップパターン生成デバイスが、ドロップ体積が残っていないと判定した場合(B2130=No)、フローは、ブロックB2145に移る。
ブロックB2135において、ドロップパターン生成デバイスは、フラッディングシーケンスに従って、充填セットにおける次の割り当てられていない隣接セルを選択する。例えば、ドロップパターン生成デバイスは、フラッディングシーケンスに従って、現在選択されているセルの隣接セル(ソースセル又はブロックB2135の以前の繰り返しにおいて選択された隣接セル)を、隣接リストの最後に加える。次いで、ドロップパターン生成デバイスは、隣接リストにおける次の隣接セルを、次の割り当てられていない隣接セルとして選択する。次いで、フローは、ブロックB2140に進み、ドロップパターン生成デバイスは、残りのドロップ体積の少なくとも一部を選択された隣接セルに割り当て、選択された隣接セルを割り当てられたものとしてマークし、残りのドロップ体積を算出する。幾つかの実施形態において、ドロップパターン生成デバイスは、(例えば、図10におけるブロックB1065と同様に、又は、図13におけるブロックB1335と同様に)フラッディングシーケンスに従って、充填セットにある選択された隣接セルの隣接セルを、隣接リストの最後に加える。次いで、フローは、ブロックB2130に戻る。
ブロックB2145において、ドロップパターン生成デバイスは、充填セットにおけるドロップ位置を算出する。次に、ブロックB2150において、ドロップパターン生成デバイスは、充填セットにおける全てのセルを割り当てない。次に、ブロックB2155において、ドロップパターン生成デバイスは、加重平均の位置にある充填セットにおけるセルを、ソースセルとして選択する。次いで、フローは、ブロックB2160に移り、ドロップパターン生成デバイスは、最近選択されたソースセルが以前に選択されたソースセル(ブロックB2120又はブロックB2155の以前の繰り返しにおいて選択された)と同一であるかどうか、又は、ブロックB2125-B2155の繰り返しの数が繰り返しの最大数(例えば、5、10、100)に到達したかどうかを判定する。ドロップパターン生成デバイスが、最近選択されたソースセルが以前に選択されたソースセルと同一ではないと判定した場合(B2160=No)、フローは、ブロックB2125に戻る。ドロップパターン生成デバイスが、最近選択されたソースセルが以前に選択されたソースセルと同一である、又は、ブロックB2125-B2155の繰り返しの数が繰り返しの最大数に到達したと判定した場合(B2160=Yes)、フローは、ブロックB2165に進む。ブロックB2165において、ドロップパターン生成デバイスは、ドロップ位置を記憶又は出力する(例えば、ドロップ位置をドロップパターンに加える)。次いで、フローは、ブロックB2170で終了する。
この動作フローは、決定論的であり、極小値にスタックしない。また、この動作フローは、一度に単一のドロップを移動させ、それが動作する領域サイズ(充填セットによって定義される)がインプリントフィールド全体のサイズよりも著しく小さいため、実行するのに計算的に非常に効率的である。
図22は、ドロップパターン生成デバイスの例示的な実施形態を示す。ドロップパターン生成デバイス2235は、1つ以上のプロセッサ2232と、1つ以上のI/Oコンポーネント2238と、記憶装置2234とを含む。また、ドロップパターン生成デバイス2235のハードウエアコンポーネントは、1つ以上のバス又はその他の電気的接続を介して通信する。バスの例は、ユニバーサルシリアルバス(USB)、IEEE 1394バス、ペリフェラル コンポーネント インターコネクト(PCI)バス、ペリフェラル コンポーネント インターコネクト エクスプレス(PCIe)バス、アクセラレーテッド グラフィックス ポート(AGP)バス、シリアル AT アタッチメント(SATA)バス、及び、スモール コンピュータ システム インタフェース(SCSI)バスを含む。
1つ以上のプロセッサ2232は、マイクロプロセッサ(例えば、シングルコアマイクロプロセッサ、マルチコアマイクロプロセッサ)、1つ以上のグラフィック処理装置(GPUs)、1つ以上のテンソル処理装置(TPUs)、1つ以上の特定用途向け集積回路(ASICs)、1つ以上のフィールドプログラマブルゲートアレイ(FPGAs)、1つ以上のデジタルシグナルプロセッサ(DSPs)、又は、その他の電子回路(例えば、その他の集積回路)を含む1つ以上の中央演算処理装置(CPUs)を含む。I/Oコンポーネント2238は、基板位置決めステージ、インプリントヘッド、流体ディスペンサ、エネルギーソース及びカメラの1つ以上と通信する通信コンポーネントを含む。また、I/Oコンポーネント2238は、ディスプレイデバイス、キーボード、マウス、プリントデバイス、タッチスクリーン、ライトペン、光学記憶装置、スキャナ、マイクロフォン、ドライブ及びコントローラ(例えば、ジョイスティック、コントロールパッド)を含む、ネットワーク又はその他の入出力デバイス(不図示)と通信する通信コンポーネント(例えば、グラフィックカード、ネットワークインタフェースコントローラ)を含む。
記憶装置2234は、1つ以上のコンピュータ可読記憶媒体を含む。ここで使用されるように、コンピュータ可読記憶媒体は、製造の物品、例えば、磁気ディスク(例えば、フロッピーディスク、ハードディスク)、光ディスク(例えば、CD、DVD、ブルーレイ)、光磁気ディスク、磁気テープ、半導体メモリ(例えば、不揮発性メモリカード、フラッシュメモリ、半導体ドライブ、SRAM、DRAM、EPROM、EEPROM)を含む。記憶装置2234は、ROM及びRAMの両方を含んでもよく、コンピュータ可読データ又はコンピュータ実行可能命令を記憶することができる。
ドロップパターン生成デバイス2235は、初期化モジュール2234A、フィールド分割モジュール2234B、走査モジュール2234C、ドロップ割り当てモジュール2234D、隣接選択モジュール2234E、ドロップ配置モジュール2234F、リソグラフィ制御モジュール2234G、及び、通信モジュール2234Hも含む。モジュールは、論理回路、コンピュータ可読データ又はコンピュータ実行可能命令を含む。図22に示す実施形態において、モジュールは、ソフトウエア(例えば、Assembly、C、C++、C#、Java(登録商標)、BASIC、Perl、Visual Basic)で実装される。しかしながら、幾つかの実施形態において、モジュールは、ハードウエア(例えば、カスタマイズされた回路)、又は、代替的に、ソフトウエアとハードウエアとの組み合わせで実装される。モジュールが、少なくとも部分的に、ソフトウエアで実装される場合、ソフトウエアは、記憶装置2234に記憶される。また、ドロップパターン生成デバイス2235の幾つかの実施形態は、付加的なモジュールを含み、これらのモジュールの幾つかを省略し、これらのモジュールをより少ないモジュールに結合し、又は、これらのモジュールをより多くのモジュールに分割する。更に、ドロップパターン生成デバイス2235は、充填セットリポジトリ2234I、及び、ドロップパターンリポジトリ2234Jを含む。充填セットリポジトリ2234Iは、充填セットを記憶し、ドロップパターンリポジトリ2234Jは、ドロップパターンを記憶する。
初期化モジュール2234Aは、ドロップパターン生成デバイス2235に、ドロップ体積を取得(例えば、設定、受け取り)させ、フィールド材料マップを取得させ、走査シーケンスを取得させ、フラッディングシーケンスを取得させ、変数を初期化させる命令を含む。例えば、初期化モジュール2234Aの幾つかの実施形態は、ドロップパターン生成デバイス2235に、図4におけるブロックB405-B410、図7におけるブロックB705-B710、図10におけるブロックB1005-B1015、又は、図20におけるブロックB2005-B2015に記載された動作の少なくとも一部を実行させる命令を含む。
フィールド分割モジュール2234Bは、ドロップパターン生成デバイス2235に、フィールド材料マップをセルに分割させ、各セルに対するそれぞれのセル体積を決定させる命令を含む。例えば、フィールド分割モジュール2234Bの幾つかの実施形態は、ドロップパターン生成デバイス2235に、図4におけるブロックB415-B420、図7におけるブロックB715-B720、図10におけるブロックB1020-1035、又は、図20におけるブロックB2020-B2035に記載された動作の少なくとも一部を実行させる命令を含む。
走査モジュール2234Cは、ドロップパターン生成デバイス2235に、走査シーケンスに従って、割り当てられていないセルに対するセルのセットを走査させる、又は、ソースセルを選択させる命令を含む。例えば、走査モジュール2234Cの幾つかの実施形態は、ドロップパターン生成デバイス2235に、図4におけるブロックB425及びB445、図7におけるブロックB725及びB750-B760、図10におけるブロックB1040及びB1071-B1077、図13におけるブロックB1305、図17におけるブロックB1705、又は、図20におけるブロックB2040及びB2071-B2077に記載された動作の少なくとも一部を実行させる命令を含む。
ドロップ割り当てモジュール2234Dは、ドロップパターン生成デバイス2235に、ドロップ体積をセルに割り当て、セルを割り当てられたものとしてマークし、セルを充填セルに加え、又は、残りのドロップ体積を算出させる命令を含む。例えば、ドロップ割り当てモジュール2234Dの幾つかの実施形態は、ドロップパターン生成デバイス2235に、図4におけるブロックB430-B440、図7におけるブロックB730及びB745、図10におけるブロックB1045及びB1060、図13におけるブロックB1310及びB1330、図17におけるブロックB1710及びB1730、図20におけるブロックB2045及びB2065、又は、図21におけるブロックB2125及びB2140に記載された動作の少なくとも一部を実行させる命令を含む。また、充填セルは、充填セットリポジトリ2234Iに記憶されてもよい。
隣接選択モジュール2234Eは、ドロップパターン生成デバイス2235に、フラッディングシーケンスに従って実行される、1つ以上の隣接セルを隣接リストに加える命令を含む。例えば、隣接選択モジュール2234Eの幾つかの実施形態は、ドロップパターン生成デバイス2235に、図4におけるブロックB440、図7におけるブロックB735-B740、図10におけるブロックB1047-B1055及びB1065-B1070、図13におけるブロックB1315-B1325及びB1335-B1340、図17におけるブロックB1715-B1725及びB1735-B1745、図20におけるブロックB2050-B2060及びB2070、又は、図21におけるブロックB2130-B2135に記載された動作の少なくとも一部を実行させる命令を含む。
ドロップ配置モジュール2234Fは、ドロップパターン生成デバイス2235に、ドロップ(ドロップに割り当てられたセル)のそれぞれの充填セットにあるセルに基づいて、ドロップに対するそれぞれのドロップ位置を決定させ、ドロップ位置に基づいて、ドロップパターンを生成させる命令を含む。例えば、ドロップ配置モジュール2234Fの幾つかの実施形態は、ドロップパターン生成デバイス2235に、図4におけるブロックB450、図7におけるブロックB765、図10におけるブロックB1081-B1090、図20におけるブロックB2081-B2090、又は、図21におけるブロックB2105-B2120及びB2145-B2165に記載された動作の少なくとも一部を実行させる命令を含む。
リソグラフィ制御モジュール2234Gは、ドロップパターン生成デバイス2235に、基板位置決めステージ、インプリントヘッド、流体ディスペンサ、エネルギーソース及びカメラなどのナノインプリントリソグラフィシステムのその他の構成要素又はサブシステムを調整、制御又は指示させる命令を含む。
通信モジュール2234Hは、ドロップパターン生成デバイス2235に、1つ以上のその他のデバイス(例えば、ナノインプリントリソグラフィ制御デバイス、基板位置決めステージ、インプリントヘッド、流体ディスペンサ、エネルギーソース、カメラ、モニタ、別の計算デバイス)と通信させる命令を含む。
上述したデバイス、システム及びシステムの少なくとも一部は、少なくとも部分的に、上述した動作を実現するためのコンピュータ実行可能命令を含む1つ以上のコンピュータ可読媒体を、コンピュータ実行可能命令を読み出して実行する1つ以上のコンピュータデバイスに提供することによって、実装することができる。システム又はデバイスは、コンピュータ実行可能命令を実行するときに、上述した実施形態の動作を実行する。また、1つ以上のシステム又はデバイス上のオペレーションシステムは、上述した実施形態の動作の少なくとも一部を実装してもよい。
更に、幾つかの実施形態は、上述したデバイス、システム及び方法を実装するために、1つ以上の機能ユニットを使用する。機能ユニットは、ハードウエア(例えば、カスタマイズされた回路)だけで実装されてもよいし、ソフトウエアとハードウエアとの組み合わせ(例えば、ソフトウエアを実行するマイクロプロセッサ)で実装されてもよい。