【事件の表示】
　平成　６年特許願第１６７９０３号「分散メモリ型並列計算機のキャッシュ制御方式」拒絶査定不服審判事件〔平成　８年　２月　２日出願公開、特開平　８−　３０５６８〕について、次のとおり審決する。
【結論】
　本件審判の請求は、成り立たない。
【理由】
１．手続の経緯・本願発明
　本願は、平成６年７月２０日の出願であって、平成１４年１月７日付けで拒絶査定がなされ、これに対し、同年２月１４日に審判請求がなされ、同年３月１５日に手続補正がなされたが、当審より、平成１７年６月２８日付けで拒絶理由（以下、「当審拒絶理由」という。）の通知がなされ、これに対し、同年９月５日付けで意見書（以下、単に「前記意見書」という。）が提出された。
　なお、前記意見書では、「本意見書と同時に提出の手続補正書」なる文言があるが、当審より、平成１７年９月１６日及び９月２０日に、本願の代理人に問い合わせたところ、同年９月２１日に、請求人は手続補正書を提出しておらず、前記意見書の前記文言は誤記である旨の回答を受けた。
　よって、本願の請求項１乃至６に係る発明は、上記平成１４年３月１５日になされた手続補正により補正された特許請求の範囲の請求項１乃至６に記載されたとおり次のものと認める。
「【請求項１】プロセッサと主メモリからなるプロセッシングエレメント（ＰＥ）が相互結合網で多数接続された分散メモリ型並列計算機において、
　プロセッサが発行したｓｔｏｒｅ命令のアドレス部の上位数ビットを宛先ＰＥの番号とし、残りの下位ビットを当該ＰＥの主メモリアドレスとするリモートｓｔｏｒｅコマンドメッセージを発生し、そのメッセージを受け取ったＰＥがそのコマンドを解釈して、主メモリにメッセージのデータをストアすることで、リモートｓｔｏｒｅを実行する手段と、
　プロセッサが発行したｌｏａｄ命令のアドレス部の上位数ビットを宛先ＰＥの番号とし、残りの下位ビットを当該ＰＥのメモリアドレスとするリモートｌｏａｄコマンドメッセージを発生し、そのメッセージを受け取ったＰＥがそのコマンドを解釈して、メモリのデータを読み出してコマンドを発行したＰＥのプロセッサに結果のメッセージを返送することで、リモートｌｏａｄを実行する手段と、
　主メモリのキャッシュ領域へと主メモリのキャッシュ領域以外へのアクセスを行うことが可能な、前記リモートｓｔｏｒｅ実行手段あるいは前記リモートｌｏａｄ実行手段がリモートアクセスを行う際に、リモートアクセスのアドレスに対応するデータのコピーが主メモリのキャッシュ領域に存在しているか否かを検出する手段と、リモートｓｔｏｒｅのアドレスに対応するデータのコピーが主メモリのキャッシュ領域に存在している場合には、リモートｓｔｏｒｅのアドレスを対応している主メモリのキャッシュ領域に存在するコピーのアドレスに変換する手段を有し、リモートｓｔｏｒｅコマンドメッセージを発生したＰＥの主メモリのキャッシュ領域にコピーが存在する場合には、当該キャッシュ領域を更新すると共に、宛先ＰＥへのリモートｓｔｏｒｅを発行し、リモートｓｔｏｒｅコマンドメッセージを発生したＰＥの主メモリのキャッシュ領域にコピーが存在しない場合には、宛先ＰＥへのリモートｓｔｏｒｅを発行するキャッシュ領域アクセス手段を備え、
　宛先ＰＥの主メモリが書き換えられても、その領域のコピーを有する他のＰＥのキャッシュコヒーレンシの維持処理を行わないことを特徴とする並列計算機のキャッシュ制御方式。
　【請求項２】前記キャッシュ領域アクセス手段は、主メモリのキャッシュ領域にリモートアクセスのアドレスに対応するデータのコピーが存在していることを検出するために、コピーの存在を記憶するタグメモリを備えることを特徴とする請求項１記載の並列計算機のキャッシュ制御方式。
　【請求項３】プロセッサと主メモリからなるプロセッシングエレメント（ＰＥ）が相互結合網で多数接続された分散メモリ型並列計算機において、
　プロセッサが発行したｓｔｏｒｅ命令のアドレス部の上位数ビットを宛先ＰＥの番号とし、残りの下位ビットを当該ＰＥの主メモリアドレスとするリモートｓｔｏｒｅコマンドメッセージを発生し、そのメッセージを受け取ったＰＥがそのコマンドを解釈して、主メモリにメッセージのデータをストアすることで、リモートｓｔｏｒｅを実行する手段と、
　プロセッサが発行したｌｏａｄ命令のアドレス部の上位数ビットを宛先ＰＥの番号とし、残りの下位ビットを当該ＰＥのメモリアドレスとするリモートｌｏａｄコマンドメッセージを発生し、そのメッセージを受け取ったＰＥがそのコマンドを解釈して、メモリのデータを読み出してコマンドを発行したＰＥのプロセッサに結果のメッセージを返送することで、リモートｌｏａｄを実行する手段と、
　主メモリのキャッシュ領域へと主メモリのキャッシュ領域以外へのアクセスを行うことが可能な、前記リモートｓｔｏｒｅ実行手段あるいは前記リモートｌｏａｄ実行手段がリモートアクセスを行う際に、リモートアクセスのアドレスに対応するデータのコピーが主メモリのキャッシュ領域に存在していることを検出し、リモートｌｏａｄを行った時、そのアドレスに対応するデータのコピーが主メモリのキャッシュ領域に存在していることを検出する手段と、リモートｌｏａｄのアドレスを対応している主メモリのキャッシュ領域に存在するコピーのアドレスに変換する手段を備え、そのコピーを読み出し、リモートアクセスの代わりにプロセッサに結果を返すキャッシュ領域アクセス手段を備え、
　宛先ＰＥの主メモリが書き換えられても、その領域のコピーを有する他のＰＥのキャッシュコヒーレンシの維持処理を行わないことを特徴とする並列計算機のキャッシュ制御方式。
　【請求項４】前記キャッシュ領域アクセス手段は、
　リモートｌｏａｄを行った時、そのアドレスの内容のコピーが主メモリのキャッシュ領域に存在していないことを検出する手段と、
　このとき、主メモリのキャッシュ領域へのリモートＰＥのデータの領域のネットワークを通しての転送に伴って更新されるタグメモリとを有することを特徴とする請求項１記載の並列計算機のキャッシュ制御方式。
　【請求項５】前記キャッシュ領域アクセス手段は、
　プロセッサがプリフェッチ機能によりリモートメモリのプリフェッチを行った時、そのアドレスの内容のコピーが主メモリのキャッシュ領域に存在していることを検出する手段と、
　プリフェッチのアドレスを対応している主メモリのキャッシュ領域に存在するコピーのアドレスに変換する手段を備えて、そのコピーを読み出し、プロセッサに結果を返すことを特徴とする請求項１記載の並列計算機のキャッシュ制御方式。
　【請求項６】前記キャッシュ領域アクセス手段は、
　プロセッサがプリフェッチ機能によりリモートメモリのプリフェッチを行ったとき、そのアドレスの内容のコピーが主メモリに存在していないことを検出する手段と、
　このとき、主メモリのキャッシュ領域のリモートＰＥのデータの領域のネットワークを通しての転送に伴って更新されるタグメモリとを有することを特徴とする請求項１記載の並列計算機のキャッシュ制御方式。」
２．当審拒絶理由
　一方、当審拒絶理由の概要は、理由１．が、本願は、明細書及び図面の記載が不明確であり、特許法第３６条第４項並びに第６項第１号及び第２号に規定する要件を満たしていないので特許を受けることができないというものであり、理由２．が、本願の請求項１乃至６に係る発明は、本願の出願前に頒布された刊行物及び周知技術に基いて当業者が容易に発明することができたものであるから、特許法第２９条第２項の規定により特許を受けることができないというものである。
　以下、上記各理由が解消したか否かについて検討する。
３．当審拒絶理由についての検討
　Ａ．理由１．（特許法第３６条第４項並びに第６項第１号及び第２号）について、
　当審拒絶理由通知の理由１．は以下のとおりである。
「１．本件出願は、明細書及び図面の記載が下記の点で不備のため、特許法第３６条第４項並びに第６項第１号及び第２号に規定する要件を満たしていない。
　　　記
　請求項１−６に係る発明は、全体的に不明確であり、発明の詳細な説明に記載された実施例とも対応していない。逆に、発明の詳細な説明の記載は、請求項１−６に係る発明の技術的な裏付けを十分かつ明確になしていない。具体的には、以下のとおり。
　（１）請求項１及び３は、「プロセッシングエレメント（ＰＥ）」の構成について、「プロセッサと主メモリからなる」としか記載されていない。よって、請求項１及び３に記載の「リモートｌｏａｄを実行する手段」、「リモートｓｔｏｒｅを実行する手段」及び「キャッシュ領域アクセス手段」は、ａ．各ＰＥに含まれるものであるのか、又は、ｂ．各ＰＥの外に、各ＰＥに共通して設けられているのか不明である。
　なお、上記ｂ．は、発明の詳細な説明及び図面には記載されていない。
　（２）請求項１及び３に記載の「プロセッサが発行したｓｔｏｒｅ命令のアドレス部の上位数ビットを宛先ＰＥの番号とし、残りの下位ビットを当該ＰＥのメモリアドレスとするリモートｓｔｏｒｅコマンドメッセージを発生し、そのメッセージを受け取ったＰＥがそのコマンドを解釈して、メモリにメッセージのデータをストアすることで、リモートｌｏａｄを実行する手段」及び「プロセッサが発行したｌｏａｄ命令のアドレス部の上位数ビットを宛先ＰＥの番号とし、残りの下位ビットを当該ＰＥのメモリアドレスとするリモートｌｏａｄコマンドメッセージを発生し、そのメッセージを受け取ったＰＥがそのコマンドを解釈して、メモリのデータを読み出してコマンドを発行したＰＥのプロセッサに結果のメッセージを返送することで、リモートｌｏａｄを実行する手段」について、
　（２−ａ）「リモートｓｔｏｒｅを実行する手段」及び「リモートｌｏａｄを実行する手段」には、他のＰＥが行う処理が含まれているから、当該「手段」が意味する技術的な範囲が不明である。例えば、「リモートｌｏａｄを実行する手段」は、以下のいずれ（あるいはそれ以外）であるのか不明である。
　イ．リモートｌｏａｄコマンドメッセージを他のＰＥに送信し、他のＰＥから結果のメッセージを受け取る手段
　ロ．リモートｌｏａｄコマンドメッセージを他のＰＥに送信すると共に、他のＰＥに対し、そのコマンドを解釈させ、及び、メモリのデータを読み出させてコマンドを発行したＰＥのプロセッサに返送させる処理をリモート制御する手段
　ハ．ｌｏａｄ命令を発行したＰＥと、リモートｌｏａｄコマンドメッセージを受信・解釈・実行する他のＰＥと、２つのＰＥを接続する相互接続網
　なお、上記イ．の場合、他のＰＥが行う処理の位置付けが不明である。また、上記ロ．及びハ．は、発明の詳細な説明に記載したものではないことが明らかである。また、上記ハ．の場合、ネットワークを介して接続された複数の装置を一つの「手段」として記載することは不適切である。
　（２−ｂ）「リモートｓｔｏｒｅを実行する手段」及び「リモートｌｏａｄを実行する手段」が、発明の詳細な説明に記載したどの部分に対応するのか不明である。
　図１及び図４の記載からすると、「キャッシュ領域アクセス部」が、プロセッサからの命令を解釈し、リモートｓｔｏｒｅメッセージやリモートｌｏａｄメッセージを他のＰＥに発行しているが、請求項１及び３の記載においては、このような処理を「リモートｓｔｏｒｅを実行する手段」及び「リモートｌｏａｄを実行する手段」が行っており、かつ、「キャッシュ領域アクセス手段」とは別の「手段」であるから、請求項１及び３の記載と、発明の詳細な説明に記載した実施例とは対応していない。
　つまり、請求項１及び３の記載において、「リモートｓｔｏｒｅを実行する手段」及び「リモートｌｏａｄを実行する手段」と、「キャッシュ領域アクセス手段」との関係が不明であり、あるＰＥのプロセッサが「ｓｔｏｒｅ命令」又は「ｌｏａｄ命令」を発行したときに、どの手段が、これを解釈し、メッセージを生成し、及び、送信するのか、また、どの手段がこのメッセージを受信してどのように実行するのか、等、各「手段」の間におけるデータ及び制御の流れが不明確である。
　（２−ｃ）「リモートｌｏａｄを実行する手段」において、宛先ＰＥがデータを読み出す「メモリ」とは、「主メモリ」であるのか、それ以外のメモリであるのか不明である。
　（３）請求項１及び３には、「前記リモートｓｔｏｒｅ実行手段あるいは前記リモートｌｏａｄ実行手段がリモートアクセスを行う際に、」と記載されているが、上記（２）で引用した、「リモートｓｔｏｒｅを実行する手段」及び「リモートｌｏａｄを実行する手段」に関する記述においては、「リモートアクセス」がどのような処理であるのか明記していない。よって、「リモートアクセス」とは、「リモートｓｔｏｒｅを実行する手段」及び「リモートｌｏａｄを実行する手段」が行う処理のうち、どの部分を指すのか不明である。
　（４）請求項３の記載において、「リモートｌｏａｄを実行する手段」は、他のＰＥに対して「リモートｌｏａｄコマンドメッセージ」を送信することを前提としているから、請求項３に記載の「リモートｌｏａｄを行った時」とは、他のＰＥに前記「リモートｌｏａｄコマンドメッセージ」を送信し、該他のＰＥから結果のメッセージを受信し終わった後の「時」を指すと考えられるが、このタイミングと、「リモートアクセスを行う際に」というタイミングとの関係が不明である。　また、すでに「リモートｌｏａｄ」を実行し終わった後に、「リモートアクセス」の代わりにプロセッサに結果を返すことに、どのような意義があるのか不明である。
　（５）明細書の段落【００４１】には、「あるメモリ領域が書き換えられたとして、…そのコピーへの書き換え結果は反映されない。」及び「ある時点で、他のＰＥの書き込みを反映させたい場合には、プログラムで…示せばよい。」と記載され、書き換え結果を反映する場合と反映されない場合とが併記されているが、全体としてみれば、ソフトウェアにより任意のタイミングで維持処理を行っていると解釈すべきである。（実際、「維持処理」を全く行わないですむようなアプリケーションを具体的に想定することができない。）
　一方、請求項１及び３に記載の「維持処理を行わない。」は、「維持処理」を未来永劫全く行わない場合を含んでいるから、段落【００４１】の記載と矛盾している。」
　（Ａ−１）理由１．（１）乃至（４）について、
　上記理由１．（１）乃至（４）は、前記意見書において、請求人は何の釈明も行っていないから、依然として解消していない。
　（Ａ−２）理由１．（５）について、
　上記理由１．（５）に対して、請求人は、前記意見書において、以下のように主張している。
「・・３６条第６項について
　本願の請求項は要件を満たしているものと考えます。
　発明としては『コピーの書き換え結果を反映させない』という構成で完結します。その後に、どのような処理を行うか、具体的には、
　１）『維持処理』を行うか否か
　２）どのように、あるいはどのタイミングで『維持処理』を行うか
といった事項は、運用上の問題といえます。
　すなわち、実施形態の記載は、発明が適用される対象／装置の動作を説明するものです。この場合、『コピーへの書き換え結果未反映』とした後の処理例を説明することで、装置動作が完結する一形態を説明することが可能となります。段落００４１にて説明された『コピー破棄』はそのための一手法に過ぎません。
　装置動作を完結させる例が例示されていれば、当業者は、その内容を当然に把握できますし、他の形態が存在しえることも理解することが期待されます。その中には『維持処理』を行わない、という選択肢も存在しえます。
『宛先ＰＥの主メモリが書き換えられても、その領域のコピーを有する他のＰＥのキャッシュコヒーレンシの維持処理を行わない』という構成要素は、明細書に記載された事項であるため、第６項第１号の要件を満たすものと考えます。
　また、『維持処理を行わないアプリケーションが想定できない』旨審判官殿は述べられていますが、『維持処理を行わない』こと自体は技術的に実現不可能な話ではなく、『維持処理を行わない』ことの作用なり効果なりは存在しますので、問題とすべきではないと考えます。」
　この主張からすると、本願請求項１−６に係る発明は、維持処理を全く行わない態様を含んでいるが、この点に関し、請求人は、「『維持処理を行わない』こと自体は技術的に実現不可能な話ではなく、『維持処理を行わない』ことの作用なり効果なりは存在しますので、問題とすべきではない」と主張するにとどまり、維持処理を全く行わないでよい分散アプリケーションとして具体例を何ら挙げておらず、したがって、そのことによる作用又は効果も不明なままである。
　また、請求人は、前記意見書において、一方では「本願発明では、キャッシュコヒーレンシの維持は、リモートｌｏａｄあるいはｓｔｏｒｅの実行段階では行わず、ソフトウェアで、適当なタイミングを見計らって行うものです。」とも主張しているが、この主張は、前述の主張とは明らかに矛盾しているので採用することができない。
　したがって、上記理由１．（５）も解消していない。
　（Ａ−３）理由１．についてのむすび
　上記（Ａ−１）及び（Ａ−２）により、本願の明細書及び図面の記載は、特許法第３６条第４項並びに第６項第１号及び第２号に規定する要件を満たしていないので、本願は特許を受けることができない。
　Ｂ．理由２．（特許法第２９条第２項）について、
　（Ｂ−１）引用発明
　（Ｂ−１−１）引用発明１
　当審拒絶理由の理由２．に引用された、本願の出願日前である平成５年１０月２１日に頒布された刊行物である、福田、外２名著、”キャッシュ・オンリ・メモリ・アーキテクチャ向きディレクトリ機構の提案”、情報処理学会研究報告、（社）情報処理学会、第９３巻、第９１号（９３−ＡＲＣ−１０２）、第４１−４８頁（以下「引用文献１」という。）には、次の事項が記載されている。
　（ア）「キャッシュ・オンリ・メモリ・アーキテクチャ（以下ＣＯＭＡ）は，分散共有メモリ・システムの一種で，各ノードのローカル・メモリを一種のレベル３キャッシュとして用いることで，大きな共有メモリ領域を提供しようとするものである．」
（第４１頁第７−９行）
　（イ）「我々の想定するｆｌａｔ　ＣＯＭＡシステムは，図１に示すように，各ワークステーションが通信ボードに非階層ディレクトリを持ち適当なネットワークに接続される．ワークステーションはローカル・メモリをレベル３・キャッシュとして扱うので，このレベル３・キャッシュがデータをリプレイスする先は存在しない．あえてリプレイスするとすれば他のノードとなる．プロセッサ／キャッシュがデータをローカル・メモリに要求すると，通信ボードはそのデータがローカル・メモリに存在するかをチェックし，存在すればローカル・メモリからデータを供給する．データがローカル・メモリに存在しなかった場合，通信ボードは，そのデータの最新のオーナへデータ要求メッセージを発行し，データ供給メッセージを待ち受ける．リモート・アクセス中のデッド・ロックを避けるために，各ノードのシステム・バスはスプリット・バス転送機能を持つ．通信ボードの主要構成要素はｄｙｎａｍｉｃ　ｄｉｒｅｃｔｏｒｙ　ｔａｂｌｅ，ｆｉｘｅｄ　ｏｗｎｅｒ　ｔａｂｌｅ，ｄｉｒｅｃｔｏｒｙ　ｃｏｎｔｒｏｌｌｅｒ，ｌｉｎｋ　ｃｏｎｔｒｏｌ　ｃｈｉｐである．Ｄｙｎａｍｉｃ　ｄｉｒｅｃｔｏｒｙ　ｔａｂｌｅの持つ機能は，ＤＳＭアドレスから物理アドレスへの変換と，ローカル・メモリにあるデータのコヒーレンシ／オーナシップの維持である．Ｆｉｘｅｄ　ｏｗｎｅｒ　ｔａｂｌｅは，予め割り当てられた範囲のＤＳＭ空間のデータのオーナを記憶する．Ｄｉｒｅｃｔｏｒｙ　ｃｏｎｔｒｏｌｌｅｒは，これら２つのテーブルを更新／維持する．Ｌｉｎｋ　ｃｏｎｔｒｏｌ　ｃｈｉｐは，ネットワークとのメッセージのやり取りを行なう．プロセッサ／キャッシュが要求したデータがローカル・メモリに存在しない場合，データ要求メッセージがｌｉｎｋ　ｃｏｎｔｒｏｌ　ｃｈｉｐを介してネットワークに送出される．Ｄｙｎａｍｉｃ　ｄｉｒｅｃｔｏｒｙ　ｔａｂｌｅに要求されたデータの有効なエントリがあれば，そこに記録されているオーナにメッセージが直接送られる．有効なエントリがなければ，データのｆｉｘｅｄ　ｏｗｎｅｒ　ｔａｂｌｅを持つマネージャ経由で送られる．このような仕組みで，階層ディレクトリを置き換えることができる．」
（第４３頁右欄第１１行−第４４頁左欄第４行）
　（ウ）「我々は各ノードが，Ｄｙｎａｍｉｃ　ｄｉｓｔｒｉｂｕｔｅｄ　ｍａｎａｇｅｒ　ａｌｇｏｒｉｔｈｍのように全ＤＳＭ空間に対応するディレクトリ／テーブルではなく，ローカル・メモリ空間に対応するディレクトリ・テーブルを持つべきであると考える．この場合，ディレクトリ・サイズはシステムの拡張とは関係なく，ローカル・メモリ・サイズによって決まる．前述の条件で，その大きさは２Ｍｂｙｔｅとなり，システム中のメモリ量によらず一定である．我々はこのディレクトリをｄｙｎａｍｉｃ　ｄｉｒｅｃｔｏｒｙ　ｔａｂｌｅと呼ぶ．このテーブルの構造は，表１に示すようにローカル・メモリに関係付けられた一種のフル・アソシアティブ・タグ・メモリである．データが一度ローカル・メモリに読み込まれると，ｄｙｎａｍｉｃ　ｄｉｒｅｃｔｏｒｙ　ｔａｂｌｅは，そのデータの物理アドレス，コヒーレンシ情報，と最新のオーナシップを記録する．このテーブルは，データが他のノードのライトで無効化された後も，新たなデータが同じアドレスに読み込まれるまでは関連するオーナシップ情報を残しておく．
　Ｄｙｎａｍｉｃ　ｄｉｒｅｃｔｏｒｙ　ｔａｂｌｅに，要求されたデータのオーナシップ情報がない場合，我々がｆｉｘｅｄ　ｏｗｎｅｒ　ｔａｂｌｅと呼ぶもう一つのテーブルが必要になる．この状況はデータがローカル・メモリに取り込まれたことがないか，ローカル・メモリの同じアドレスに別のデータが取り込まれてオーナシップ情報が上書きされた場合に起こる．（我々はこの状況をｃｏｌｄ　ｃａｃｈｅ　ｍｉｓｓと呼ぶ．これに対応して，ローカル・メモリにデータは残っていないが，ｄｙｎａｍｉｃ　ｄｉｒｅｃｔｏｒｙ　ｔａｂｌｅにオーナシップ情報が残っている状況をｈｏｔ　ｃａｃｈｅ　ｍｉｓｓと呼ぶ．）　全てのノードはｆｉｘｅｄ　ｏｗｎｅｒ　ｔａｂｌｅを持ち，ＤＳＭ空間の予め割り当てられた範囲のデータのオーナシップを記憶している．各ノードに割り当てられる範囲の広さはそのノードのローカル・メモリの広さであり，全てのノードのローカル・メモリが同じ大きさならば，ＤＳＭ空間をノード数で割った大きさとなる．Ｃｏｌｄ　ｃａｃｈｅ　ｍｉｓｓが発生すると，データ要求メッセージは，まずマネージャに送られ，そこからｆｉｘｅｄ　ｏｗｎｅｒ　ｔａｂｌｅのエントリに記録されているオーナへと転送される．Ｆｉｘｅｄ　ｏｗｎｅｒ　ｔａｂｌｅを用いたオーナの捜し出しは，マネージャを介するため，メッセージ数が増加する．しかし我々はｃｏｌｄ　ｃａｃｈｅ　ｍｉｓｓ数に比べて非常に少ないと考えている．このオーナシップ管理アルゴリズムをｓｅｍｉ−ｄｙｎａｍｉｃ　ｄｉｓｔｒｉｂｕｔｅｄ　ｍａｎａｇｅｒ　ａｌｇｏｒｉｔｈｍと呼ぶことにする．」
（第４４頁右欄第９行−第４５頁左欄８行）
　（エ）図１には、プロセッサ／キャッシュ（Ｐｒｏｃｅｓｓｏｒ　Ｃａｃｈｅ）とローカル・メモリ（Ｌｏｃａｌ　Ｍｅｍｏｒｙ）と通信ボード（Ｃｏｍｍｕｎｉｃａｔｉｏｎ　Ｂｏａｒｄ）とを有したＮ個のノード（Ｎｏｄｅ）が、相互結合網（Ｉｎｔｅｒｃｏｎｎｅｃｔｉｏｎ　Ｎｅｔｗｏｒｋ）を介して接続されたシステム構成が記載されている。
　上記（イ）からして、ローカル・メモリのキャッシュ領域には、オーナのノードのデータのコピーが記憶されていることは自明である。
　上記（イ）の「Ｄｙｎａｍｉｃ　ｄｉｒｅｃｔｏｒｙ　ｔａｂｌｅの持つ機能は，ＤＳＭアドレスから物理アドレスへの変換と，ローカル・メモリにあるデータのコヒーレンシ／オーナシップの維持である．」、及び、上記（ウ）の「データが一度ローカル・メモリに読み込まれると，ｄｙｎａｍｉｃ　ｄｉｒｅｃｔｏｒｙ　ｔａｂｌｅは，そのデータの物理アドレス，コヒーレンシ情報，と最新のオーナシップを記録する．このテーブルは，データが他のノードのライトで無効化された後も，新たなデータが同じアドレスに読み込まれるまでは関連するオーナシップ情報を残しておく．」からすると、各ノードが行うデータに対するアクセスには、データの読み出し要求のみならず、データのライト（ｗｒｉｔｅ）すなわち書き込み要求が存在し、実際に書き込みがなされると、キャッシュとオーナが持つデータとのキャッシュコヒーレンシの維持処理が行われることがわかる。また、書き込みが、読み出しと同等の手法により行われることも技術常識からして自明である。
　よって、各ノードは、他のノードから又は自身のノード内からデータ書き込み要求メッセージ又はデータ読み出しメッセージを受け取り、データの書き込み又はデータの読み出しを実行する手段、並びに、データ書き込み要求メッセージに対してキャッシュ領域にコピーがない場合にはオーナのノードに当該メッセージを転送する手段を有しているといえる。
　したがって、上記（ア）乃至（エ）からして、引用文献１には次の発明（以下「引用発明１」という。）が記載されている。
　プロセッサ／キャッシュとローカル・メモリからなるノードが相互結合網でＮ個接続された分散共有メモリ・システムにおいて、
　プロセッサ／キャッシュがデータ書き込み要求メッセージを発行すると、ｄｙｎａｍｉｃ　ｄｉｒｅｃｔｏｒｙ　ｔａｂｌｅを参照して、そのデータがローカル・メモリに有効な状態で存在する場合はＤＳＭアドレスを物理アドレスに変換してローカル・メモリのデータに対して書き込みを行い、有効な状態で存在しない場合は、ｄｙｎａｍｉｃ　ｄｉｒｅｃｔｏｒｙ　ｔａｂｌｅを参照してそのデータのオーナを検出し、当該オーナのノードに対してデータ書き込み要求メッセージを転送し、そのメッセージを受け取ったオーナのノードがそのメッセージを解釈して、ローカル・メモリのデータに対して書き込みを行う手段と、
　プロセッサ／キャッシュがデータ読み出し要求メッセージを発行すると、ｄｙｎａｍｉｃ　ｄｉｒｅｃｔｏｒｙ　ｔａｂｌｅを参照して、そのデータがローカル・メモリに有効な状態で存在する場合はＤＳＭアドレスを物理アドレスに変換してローカル・メモリからデータを読み出し、有効な状態で存在しない場合は、ｄｙｎａｍｉｃ　ｄｉｒｅｃｔｏｒｙ　ｔａｂｌｅを参照してそのデータのオーナを検出し、当該オーナのノードに対してデータ読み出し要求メッセージを転送し、そのメッセージを受け取ったオーナのノードがそのメッセージを解釈して、ローカル・メモリのデータを読み出してメッセージを発行したノードに結果のメッセージを返送することで読み出しを行う手段と、
　ローカル・メモリのキャッシュ領域とローカル・メモリのキャッシュ領域以外へのアクセスを行うことが可能な、前記書き込みを行う手段あるいは前記読み出しを行う手段が他のノードに対してリモートアクセスを行う際に、リモートアクセスのＤＳＭアドレスに対応するデータのコピーがローカル・メモリのキャッシュ領域に存在しているか否かを検出する手段と、データ書き込み要求メッセージのアドレスに対応するデータのコピーがローカル・メモリのキャッシュ領域に存在している場合には、データ書き込み要求メッセージのアドレスを対応しているローカル・メモリのキャッシュ領域に存在するコピーの物理アドレスに変換する手段を有し、データ書き込み要求メッセージを発行したノードのローカル・メモリのキャッシュ領域にコピーが存在する場合には、当該キャッシュ領域を更新すると共に、オーナのノードへデータ書き込み要求メッセージを転送してキャッシュコヒーレンシの維持処理を行い、データ書き込み要求メッセージを発行したノードのローカル・メモリのキャッシュ領域にコピーが存在しない場合には、オーナのノードへデータ書き込み要求メッセージを転送する手段を備え、
　オーナのノードのローカル・メモリが書き換えられても、その領域のコピーを有する他のノードのキャッシュコヒーレンシの維持処理を行うことを特徴とする分散共有メモリ・システムのキャッシュ制御方式。
　（Ｂ−１−２）引用発明２
　当審拒絶理由の理由２．で引用された、本願の出願日前である平成５年８月２０日に頒布された刊行物である、松岡、外７名著、”超並列計算機ＲＷＣ−１における記憶構成”、情報処理学会研究報告、（社）情報処理学会、第９３巻、第７１号（９３−ＡＲＣ−１０１）、第１７−２４頁（以下「引用文献２」という。）には、次の事項が記載されている。
　（オ）「超並列計算機における記憶構成の要件を整理し、超並列計算機ＲＷＣ−１におけるメモリの大域的仮想化とデータの共有方式について述べる。ＲＷＣ−１では、大域仮想アドレスを相対ＰＥ番号と局所仮想アドレスに分割し、それぞれに変換機構を設けることによって、アドレス変換の柔軟・簡素化を図っている。」
（第１７頁第７−９行）
　（カ）「データの共有
　並列計算機では、複数のＰＥ間で単一のデータ（構造）を共有するのが一般的である。データ（構造）を共有する場合、レイテンシィの短縮のためにデータの（複数個の）コピーをＰＥ群が持つことが考えられる。コピーを行う場合の問題点として、データのコピー、更新、無効化などにともなう通信量の増加があり、データの共有管理が重要な課題となる。
キャッシュ
　キャッシュを採用することによって、メモリアクセスの平均的なレイテンシィを短縮できる。キャッシュの問題点は、ミスヒット率が高くなった時の性能低下である。これは、大規模データを扱う際のスラッシングや、多数のリモートデータや多数のコンテクストのデータを入れた時のヒット率の低下が原因となる。」
（第１９頁左欄第２２−３６行）
　（キ）「３．１　アドレス変換
　大域的なメモリの仮想化を行なうためには、基本的に、大域仮想アドレス（ＧＶＡ）から、物理ＰＥ番号（ＰＰＥ）と局所物理アドレス（ＬＰＡ）を求める変換が必要となる。一般的にこの変換はテーブル引き（およびハッシュなどの組み合わせ論理）を用いて行われるが、変換自体は以下のように分類できる。これらの変換の手順を図２に示す。」
（第１９頁左欄第３８−４４行）
　（ク）図２には、いずれの方式においても、アドレス（ＧＶＡ）の上位ビットを物理ＰＥ番号（ＰＰＥ）に、下位ビットを局所アドレス（ＬＰＡ又はＬＶＡ）に割り当てていることが記載されている。
　（ケ）「４．４　明示的なコピー
　ある時点まで書き込みの結果を元データに反映させる必要が無い、あるいは、ある時点まで他系のＰＥ上のコピーを更新する必要が無い場合には、ソフトウェアによるデータの明示的なコピーが有効である。」
（第２２頁左欄第２１−２５行）
　上記（ケ）は、任意の時点までは、キャッシュコヒーレンシのための維持処理を行わないことを意味するから、実質的に、自系のデータが書き換えられてもその時点では他系のＰＥ上のコピーを更新するキャッシュコヒーレンシ維持処理を行わないことが記載されている。
　よって、上記（オ）乃至（ケ）からして、引用文献２には次の発明（以下「引用発明２」という。）が記載されている。
　キャッシュを有する複数のＰＥが接続された超並列計算機において、
　リモートアクセスに使用するアドレスの上位ビットを宛先ＰＥの番号とし、残りの下位ビットを当該ＰＥのメモリアドレスとし、
　自系のデータが書き換えられても、その領域のコピーを有する他系のＰＥのキャッシュコヒーレンシの維持処理を行わないことを特徴とする並列計算機のキャッシュ制御方式。
　（Ｂ−２）本願発明と引用発明との対比
　本願の請求項１に係る発明（以下、単に「本願発明」という。）と引用発明１とを対比すると、引用発明１の「ローカル・メモリ」、「ノード」、「分散メモリ型並列計算機」、「（発行される）データ書き込み要求メッセージ」、「（転送される）データ書き込み要求メッセージ」、「書き込みを行う手段」、「（発行される）データ読み出し要求メッセージ」、「（転送される）データ読み出し要求メッセージ」、「読み出しを行う手段」、「ＤＳＭアドレス」、「物理アドレスに変換する手段」、「オーナのノード」及び「転送する手段」はそれぞれ、本願発明の「主メモリ」、「プロセッシングエレメント（ＰＥ）」、「分散共有メモリ・システム」、「ｓｔｏｒｅ命令」、「リモートｓｔｏｒｅコマンドメッセージ」、「リモートｓｔｏｒｅを実行する手段」、「ｌｏａｄ命令」、「リモートｌｏａｄコマンドメッセージ」、「リモートｌｏａｄを実行する手段」、「アドレス」、「アドレスに変換する手段」、「宛先ＰＥ」及び「キャッシュ領域アクセス手段」に対応している。
　また、引用発明１の「プロセッサ／キャッシュ」は、プロセッサ機能を有している点で、本願発明の「プロセッサ」と一致している。また、引用発明１のノードの数である「Ｎ個」は、複数個である点で、本願発明の「多数」に対応している。
　よって、両者は、
「プロセッサと主メモリからなるプロセッシングエレメント（ＰＥ）が相互結合網で複数接続された分散メモリ型並列計算機において、
　プロセッサが発行したｓｔｏｒｅ命令からリモートｓｔｏｒｅコマンドメッセージを発生し、そのメッセージを受け取ったＰＥがそのコマンドを解釈して、主メモリにメッセージのデータをストアすることで、リモートｓｔｏｒｅを実行する手段と、
　プロセッサが発行したｌｏａｄ命令からリモートｌｏａｄコマンドメッセージを発生し、そのメッセージを受け取ったＰＥがそのコマンドを解釈して、メモリのデータを読み出してコマンドを発行したＰＥのプロセッサに結果のメッセージを返送することで、リモートｌｏａｄを実行する手段と、
　主メモリのキャッシュ領域へと主メモリのキャッシュ領域以外へのアクセスを行うことが可能な、前記リモートｓｔｏｒｅ実行手段あるいは前記リモートｌｏａｄ実行手段がリモートアクセスを行う際に、リモートアクセスのアドレスに対応するデータのコピーが主メモリのキャッシュ領域に存在しているか否かを検出する手段と、リモートｓｔｏｒｅのアドレスに対応するデータのコピーが主メモリのキャッシュ領域に存在している場合には、リモートｓｔｏｒｅのアドレスを対応している主メモリのキャッシュ領域に存在するコピーのアドレスに変換する手段を有し、リモートｓｔｏｒｅコマンドメッセージを発生したＰＥの主メモリのキャッシュ領域にコピーが存在する場合には、当該キャッシュ領域を更新すると共に、宛先ＰＥへのリモートｓｔｏｒｅを発行し、リモートｓｔｏｒｅコマンドメッセージを発生したＰＥの主メモリのキャッシュ領域にコピーが存在しない場合には、宛先ＰＥへのリモートｓｔｏｒｅを発行するキャッシュ領域アクセス手段を備え、
　ることを特徴とする並列計算機のキャッシュ制御方式。」
　の点で一致し、以下の点で相違している。
［相違点１］
　本願発明は、ＰＥが多数接続されているのに対し、引用発明１では、Ｎ個接続されているものの、Ｎが多数に限定されていない点。
［相違点２］
　本願発明は、プロセッサが発行したｓｔｏｒｅ命令又はｌｏａｄ命令のアドレス部の上位数ビットを宛先ＰＥの番号とし、残りの下位ビットを当該ＰＥの主メモリアドレスとするのに対し、引用発明１は、ＤＳＭアドレスをオーナのノード番号と物理アドレスとに対応付けたｄｙｎａｍｉｃ　ｄｉｒｅｃｔｏｒｙ　ｔａｂｌｅによりアドレス変換とノードの指定を行う点。
［相違点３］
　本願発明は、宛先ＰＥの主メモリが書き換えられても、その領域のコピーを有する他のＰＥのキャッシュコヒーレンシの維持処理を行わないのに対し、引用発明１では、これとは逆に維持処理を行う点。
　（Ｂ−３）理由１．についての当審の判断
　上記相違点について、以下検討する。
［相違点１について］
　引用発明１において、ノード数Ｎに上限は設けられていないから、これを多数に限定することは単なる設計事項にすぎない。
［相違点２について］
　引用発明２にあるように、アドレスの上位ビットをプロセッサ番号、下位ビットをメモリアドレスとすることは周知技術にすぎないから、引用発明１において、プロセッサが発行するデータ要求メッセージに使用するＤＳＭアドレスに替えて、上位ビットをプロセッサ番号とし、下位ビットをメモリアドレスとするアドレスを採用することに格別な困難性はない。
［相違点３について］
　引用発明２にあるように、自系のデータが書き換えられても他系のキャッシュ領域のコピーに対して必要となる時点までは維持処理を行わないことは周知技術であるから、引用発明１において、宛先ＰＥの主メモリが書き換えられても、その領域のコピーを有する他のＰＥのキャッシュコヒーレンシの維持処理を行わないよう構成することは、当業者が容易に想到し得た事項である。
　そして、本願発明の作用効果も、各引用発明及び周知技術から当業者が容易に予測できる範囲内のものである。
　（Ｂ−４）理由２．についてのむすび
　したがって、本願発明は、引用発明１及び２に基づいて当業者が容易に発明することができたものであるので、特許法第２９条第２項の規定により特許を受けることができない。
４．むすび
　つまり、当審拒絶理由は理由１．及び理由２．共に依然として解消していない。
　よって、結論のとおり審決する。