審決取消請求事件 » 平成 27 年(行ケ)10066 号「再構成可能命令セル・アレイ」事件

名称:「再構成可能命令セル・アレイ」事件
審決取消請求事件
知的財産高等裁判所:平成 27 年(行ケ)10066 号 判決日:平成 28 年 1 月 27 日
判決:請求認容
特許法29条2項
キーワード:引用発明の認定の誤り

[概要]
引用発明における「コンパイラ」は本願発明の構成とは異なる意義で用いられており、引
用発明の認定、一致点の認定には誤りがあるとされた事例。

[事件の経緯]
被告特許庁は、平成25年1月18日付けで拒絶査定をした。
原告は、同年5月22日,これに対する不服の審判(不服2013-9418号)を請求
した。
知財高裁は、原告の請求を容認した。

[本願発明1(請求項1の分説)]
A1:従属および独立の両方のプログラム命令のデータ経路を有するプログラム命令を実行
する
A2:プロセッサであって,
B:相互接続ネットワークと,
C:それぞれが前記相互接続ネットワークに接続される異種の複数の命令セルであって,該
命令セルの各々は少なくとも加算,減算,乗算,除算あるいはシフトの処理を行う該複数の
命令セルと,
D:復号モジュールであって,
E1:従属プログラム命令のデータ経路と独立プログラム命令のデータ経路の少なくとも1
つから
E2:前記命令セルの回路へのマッピングをそれぞれ符号化する構成命令を受け,
F:更に構成命令を復号して前記相互接続ネットワークおよび命令セルの少なくともいくつ
かのデータ経路を構成し,
G:これにより前記データ経路を前記命令セルの回路にマップしまた前記プログラム命令を
実行する,
D:復号モジュールと,
A:を備えるプロセッサ。

[取消事由]
(1)手続違背に係る判断の誤り
(2)理由不備に係る判断の誤り
(3)引用発明の認定及び対比判断の誤り
(4)本願発明の進歩性についての判断の誤り

[原告の主張(筆者にて原告の主張を適宜抜粋)]
取消事由3(引用発明の認定及び対比判断の誤り)
『審決は,引用発明の認定において,「・・・コンパイラを含む主演算装置と,・・・」と
しており,主演算装置にコンパイラが含まれていると認定したが,かかる認定は・・誤りで
ある。・・引用発明は,本願発明の構成要件D~Gの点において相違しており,審決は,一致
点の認定を誤り,相違点を看過したといえる。』、と原告は主張した。

[裁判所の判断](筆者にて適宜抜粋、下線)
『・・引用発明における「コンパイラ」について検討する。・・PLDの開発(FPGA等
の各テーブルに設定する内容の決定)は,通常のソフトウエアの開発同様,開発用言語を利
用して行われ,開発の手順としては,一般に,①ソース・コードの作成,②論理合成,③配
置配線,④コンフィグレーション・データの生成,⑤デバイス・プログラミング/コンフィ
グレーションにより行われる。・・まず,ソース・コードの作成が,HDLなどの開発用言語
の文法に従って行われ(上記①),次に,開発用ツール(ソフトウエア)によって,ソース・
コードからネットリスト(回路構成情報)を生成する論理合成が行われ(上記②),ここで生
成されたネットリストに従い,実際の素子に組込み可能なように配置と配線を決める配置配
線が行われ(上記③),この配置配線の結果は,コンフィグレーション・データ(又はビット・
ファイル)として生成され(上記④),開発用パソコンの中に保管されているコンフィグレー
ション・データがケーブルを介して,FPGA等のPLDが搭載されたボードのPLD又は
ROMにダウンロードされるという,デバイス・プログラミング/コンフィグレーション(F
PGAへのデータ書込み)の操作が行われる(上記⑤)。・・このように,ソースコードは,
HDLなどの高級言語で作成されており,これを0と1とからなる機械語(アセンブラ)に
変換すること,あるいは,プログラミング言語で書かれた,プログラムのソースコード(原
始コード)を,機械語,ないしバイトコードなどの中間言語によるオブジェクトコード(目
的コード)に翻訳(変換)することを,「コンパイル」,その動作をさせるソフトウエア又は場所
を,「コンパイラ」と呼ぶ(以下,「第1の意義」という。)一方,PLDの開発手順における
②論理合成,又は②論理合成と③配置配線とを合わせて,上記と同様に「コンパイル」,「コ
ンパイラ」との用語が用いられる(以下「第2の意義」という。)。
・・甲7文献において,コンパイラ技術は,「コンパイラ技術/合成技術」と記され,また,
上記(1)ア(オ)のとおり,「3 コンパイラ技術」として,すべての再構成可能なインストラクシ
ョンセットプロセッサの命令生成は,主に二つのステップを含み,そのうちの一つが再構成
可能アレイ用の様々なコンフィグレーションの合成であること,甲7文献の研究で用いられ
たコンパイラは,トライマランコンパイラをベースとしており,再構成可能なプロセッサに
おいて,粗粒度結合型再構成可能なユニットを利用して開発することができ,ループの命令
生成は,ソフトウエアのパイプライン処理に基づいており,この処理は,「FPGAの“place
and route”(配置配線)と同じである」こと,また,このコンパイラは,各ループ処理を分
析し,必要なスライス数を割り出すことができ,再構成時間と消費電力の双方を削減するた
め,必要なスライス数しか使わない,「消費電力を考慮し,さらに処理性能を低下することな
く動作させるスライスの数を最小限にするインテリジェントコンパイラ」であること(上記
(1)ア(キ))が示されている。
・・甲7文献に記載された「コンパイラ」は,PLDの開発段階で,ROMに格納するコ
ンフィグレーション・データを作成するために用いられるものであり,上記の第2の意義を
示すものと認められる。
・・引用発明の「プロセッサ」は,スライスのデータ経路コンポーネントのための構成を
ロードされたコンフィグレーションメモリを備え,「主演算装置」は,クロスバー及び処理エ
レメントを直接コントロールするものであるところ,甲7文献の「コンパイラ」は,PLD
の開発手順において,上記コンフィグレーションメモリへロードされるデータコンポーネン
トを生成するために用いられるものであるから,審決の述べるように,引用発明の主演算装
置に「トライマランをベースとしたコンパイラであって,再構成可能なアレイを異なる構成
へと統合させるステップを有するプロセッサ用命令セットを生成するコンパイラを含む」と
解する余地はない。』
裁判所はさらに以下の検討をした。
『(5)・・引用発明の「主演算装置」が,符号化された構成命令のプログラム言語命令をハー
ドウエア実行コードに変換する(復号化する)ことが,甲7文献に記載されており,引用発
明の「プロセッサ」が「復号モジュール」を備えるといえる場合,審決の認定した「・・・
命令のデータ経路から構成命令を受け,前記相互接続ネットワーク及び命令セルの少なくと
もいくつかのデータ経路を構成し,これにより前記データ経路を前記命令セルの回路にマッ
プしまた前記プログラム命令を実行する復号モジュールと,を備えるプロセッサ。」との一致
点の認定に誤りがないと解される余地があることから,この点について検討する。
本願発明の「復号モジュール」は,「復号モジュールであって,・・・前記データ経路を前
記命令セルの回路にマップしまた前記プログラム命令を実行する,復号モジュール」である。
そして,前記1(2)において述べたとおり,「復号モジュール」は,RICAコンパイラによっ
て生成され,符号化され,構成メモリに格納された構成命令を受けて復号化し,相互接続ネ
ットワーク及び命令セルの少なくともいくつかを構成し,これによりデータ経路を命令セル
の回路に現実にマップし,プログラム命令を実行するものと認められる。また,本願明細書
においては,構成命令が符号化されたものであることが明確に示されている・・これに対し,
引用発明の「主演算装置」は,「前記相互接続クロスバー及び前記処理エレメントを直接コン
トロールする」ところ,当該「コントロール」に「前記相互接続ネットワーク及び命令セル
の少なくともいくつかのデータ経路を構成し,これにより前記データ経路を前記命令セルの
回路にマップしまた前記プログラム命令を実行する」ことが含まれることは,甲7文献には
明示されていない。仮に,上記「コントロール」は,「・・・プログラム命令」を実行するこ
とを含むと解したとしても,引用発明の「プロセッサ」が,スライスのデータ経路コンポー
ネントのための構成をロードされたコンフィグレーションメモリを,処理エレメント及びク
ロスバーと共に備えることは認められるものの,このコンフィグレーションメモリから「構
成」(本願発明の「構成命令」に相当)を受けるのが「主演算装置」であることは,甲7文献
に明示されていないし,そのことを示唆する記載もない。また,「主演算装置」は,コンフィ
グレーションメモリにロードされた,スライスのデータ経路コンポーネントための「構成」
をコンフィグレーションメモリから受けていると更に仮定したとしても,甲7文献において
は,当該「構成」が符号化されているか,既に復号化されたものであるかについては,一切
記載がない。・・・引用発明において,主演算装置が「構成」を受けるとして,その段階にお
いて,当該「構成」が既にハードウエア実行コードであることも想定される。そうすると,
引用発明において,「構成」を主演算装置において受けるとしても,この「構成」が符号化さ
れており,主演算装置において「復号化」しているか否かは不明であるといわざるを得ない。
そして,他に,このような復号機能を有するモジュールの存在は窺われず,当事者も主張し
ていないから,「復号モジュール」を引用発明のプロセッサに含むと認定することはできない。
そうすると,本件において,引用発明と本願発明とは,「・・・復号モジュールと,を備え
る(プロセッサ)」である点において一致しているとはいえず,引用発明の「構成」は符号化
されたものであるか否かは不明であるから,審決は,引用発明が,モジュールが受けた「構
成」を復号する機能を有するか,すなわち,「復号モジュール」を含むか否か不明である点を
本願発明との相違点として認定すべきである。』
裁判所は、審決のした引用発明の認定,一致点の認定には誤りがあり,これは相違点の看
過につながると判断した。

[コメント]
技術用語が複数の意味を持つ場合にどの意味で使用されているのか注意が必要である。引
用文献全体および関連する技術常識から技術用語の意義を判断することの重要性をあらため
て本事案は示したものである。
以上
(担当弁理士:丹野 寿典)