• ポートフォリオ機能


ポートフォリオを新規に作成して保存
既存のポートフォリオに追加保存

  • この表をプリントする
PDF PDFをダウンロード
審決分類 審判 査定不服 2項進歩性 取り消して特許、登録 G06F
管理番号 1322732
審判番号 不服2015-22687  
総通号数 206 
発行国 日本国特許庁(JP) 
公報種別 特許審決公報 
発行日 2017-02-24 
種別 拒絶査定不服の審決 
審判請求日 2015-12-25 
確定日 2017-01-10 
事件の表示 特願2014-547242「メモリ応答の順序付けのためのメモリ装置、コンピュータシステムおよび方法」拒絶査定不服審判事件〔平成25年 6月20日国際公開、WO2013/089937、平成27年 1月 5日国内公表、特表2015-500541、請求項の数(14)〕について、次のとおり審決する。 
結論 原査定を取り消す。 本願の発明は、特許すべきものとする。 
理由 第1 手続の経緯
本願は,2012年11月2日(パリ条約による優先権主張外国庁受理2011年12月13日(以下,「優先日」という。),米国)を国際出願日とする出願であって,平成26年10月31日付けで手続補正がなされ,平成27年5月19日付けで拒絶理由が通知され,平成27年7月27日付けで意見書が提出されるとともに手続補正がなされたが,平成27年9月4日付けで拒絶査定がなされ,これに対して,平成27年12月25日に拒絶査定不服審判が請求されたものである。

第2 本願発明
本願の請求項1-14に係る発明は,平成27年7月27日付けの手続補正で補正された特許請求の範囲の請求項1-14に記載された事項により特定されるものと認められるところ,本願の請求項1に係る発明(以下,「本願発明」という。)は以下のとおりである。
「コンピューティングシステムであって,
複数のメモリユニットと,
システムバススレーブと,
前記メモリユニットおよび前記システムバススレーブに連結されるメモリコントローラと,
前記メモリコントローラと前記複数のメモリユニットとの間に複数のチャネルをそれぞれ構成する通信バスと,
を備えるコンピューティングシステムであって,
前記メモリコントローラが,
複数のコマンドを受け取るキューと,
複数の応答を前記複数のメモリユニットから,ある順序で受信するように構成される応答ロジックと,
前記応答ロジックに連結され,前記複数の応答を,前記複数の応答が前記応答ロジックによって受信される前記順序とは独立の順序で,前記システムバススレーブに提供させるように構成される順序付けロジックとを備え,
前記メモリコントローラは,前記複数のコマンドを対応するメモリユニットに提供する際に,前記複数のチャネルが利用可能か否かを判定し,利用可能と判定されたチャネルのメモリユニットに前記複数のコマンドの中の対応するコマンドを提供することを特徴とする,コンピューティングシステム。」

第3 原査定の理由の概要

<<拒絶理由>>
『3.(進歩性)この出願の下記の請求項に係る発明は,その出願前に日本国内又は外国において,頒布された下記の刊行物に記載された発明又は電気通信回線を通じて公衆に利用可能となった発明に基いて,その出願前にその発明の属する技術の分野における通常の知識を有する者が容易に発明をすることができたものであるから,特許法第29条第2項の規定により特許を受けることができない。

記 (引用文献等については引用文献等一覧参照)

●理由1(実施可能要件),理由2(サポート要件)について
<省略>

●理由3(進歩性)について

・請求項 1,4,5,7,8,13
・引用文献等 1
・備考
引用文献1(特に,段落[0018],[0075]-[0077]及び図1A,14参照。)には,システム(本願の「システムバスマスタ」に相当。)から入ってくるメモリコマンドシーケンス(本願の「複数のコマンド」に相当。)をシステムバスを介して受け取り,それらを再順序付けし,複数の共有リソース(本願の「メモリユニット」に相当。)に発行し,その後,複数の共有リソースからのデータ(本願の「応答」に相当。)の順序をメモリコマンドシーケンスに対応して再順序付けし,システムバスを介してシステムに伝送するメモリコントローラが記載されている。
引用文献1にはシステムバススレーブが明確に記載されていないが,システムバススレーブは周知技術であるから,引用文献1記載の発明において,システムバススレーブを設けることは,当業者が容易に想到し得たものである。
したがって,請求項1,4,5,7,8,13に係る発明は,引用文献1記載の発明及び周知技術に基いて,当業者が容易に想到し得たことである。

・請求項 2,3
・引用文献等 1
・備考
引用文献1には,論理チャネルについて明確な記載がないが,「論理バンク」(特に,段落[0075]-[0085]参照。)との記載があることから,引用文献1には,論理チャネルを有する構成が記載されていると認められる。また,それが認められないとしても,複数の論理チャネルを備えるバスによって連結される複数のメモリユニットであって,それぞれのメモリユニットがそれぞれの論理チャネルに対応する技術は,周知技術である。
<途中省略>

また,以下のようにも考えられる。

・請求項 1,4,5,7,8,13
・引用文献等 3
・備考
引用文献3(特に,段落[0007]-[0009],[0013]-[0019]及び図1,2,5,6参照。)には,プロセッサ(本願の「システムバスマスタ」に相当。)からのリクエスト(本願の「複数のコマンド」に相当。)をバスサブシステムを介して受け取り,それら順序を最適化し,メモリサブシステム(本願の「メモリユニット」に相当。)に提供し,その後,メモリサブシステムからのデータ(本願の「応答」に相当。)の順序を初期リクエスト順序に対応して再順序付けし,バスサブシステムを介してプロセッサに伝送するリクエスト再順序付けユニットが記載されている。
引用文献3にはシステムバス,システムバススレーブが明確に記載されていないが,システムバス,システムバススレーブは周知技術であるから,引用文献3記載の発明において,バスサブシステムをシステムバスとし,また,システムバススレーブを設けることは,当業者が容易に想到し得たものである。
したがって,請求項1,4,5,7,8,13に係る発明は,引用文献3記載の発明及び周知技術に基いて,当業者が容易に想到し得たことである。

・請求項 2,3
・引用文献等 3
・備考
引用文献3には,論理チャネルについて明確な記載がないが,「バンク」(特に,段落[0027]-[0028]参照。)との記載があることから,引用文献3には,論理チャネルを有する構成が記載されていると認められる。また,それが認められないとしても,複数の論理チャネルを備えるバスによって連結される複数のメモリユニットであって,それぞれのメモリユニットがそれぞれの論理チャネルに対応する技術は,周知技術である。
<途中省略>

<引用文献等一覧>
1.特表2002-530731号公報
2.特表2010-508599号公報
3.特開平10-228417号公報』

<<拒絶査定>>
『●理由3(特許法第29条第2項)について

・請求項 1-14
・引用文献等 1又は3
<途中省略>
引用文献1(特に,段落0018及び図1A参照。)には,共用リソース108は,任意の数および種類で構成できることが記載されている。また,例えば,DDR3 SDRAMのようなマルチチャネルメモリ(本願の「複数のチャネル」を有する「メモリユニット」に相当。)は,本願優先日当時周知であった。したがって,引用文献1記載の発明において,上記周知技術を適用し,共用リソース108として複数のマルチチャネルメモリとすることで,メモリコントローラと複数のメモリユニットとの間に複数のチャネルをそれぞれ構成する通信バスを有するように構成することは,当業者が容易に想到し得たものである。
また,引用文献1(特に,段落0059,0071-0087及び図13A-17参照。)には,同一のメモリバンクへの先行コマンドとの間の必要な遅延時間を示すコマンド発行時間(Cd)フィールドによる判定結果に応じて,複数のコマンドの各々を対応するメモリバンクに発行することが記載されている。ここで,この判定は,メモリバンクが利用可能か否かを判定することと実質的な差違はない。そして,メモリバンクが利用可能であれば,そのメモリバンクと接続するチャネルが利用可能であり,メモリバンクが利用不可であれば,そのメモリバンクと接続するチャネルが利用不可であることは明らかである。よって,引用文献1記載の発明において,上記周知技術を適用し,共用リソース108を複数のマルチチャネルメモリとする場合,引用文献1記載の発明の上記判定を,複数のチャネルが利用可能か否かの判定とすることは,当業者であれば適宜なし得た程度のことである。したがって,引用文献1記載の発明において,上記周知技術を適用し,共用リソース108を複数のマルチチャネルメモリとすることで,メモリコントローラが,複数のチャネルが利用可能か否かを判定し,判定結果に応じて複数のコマンドの各々を対応する複数のチャネルに提供するように構成することは,当業者が容易に想到し得たものである。
また,引用文献3記載の発明に上記周知技術を適用することからも同様のことがいえる。
よって,出願人の主張は採用できない。

したがって,請求項1-14に係る発明は,引用文献1又は3記載の発明及び周知技術に基いて,当業者が容易に想到し得たことである。

<引用文献等一覧>
1.特表2002-530731号公報
3.特開平10-228417号公報』

第4 当審の判断

1.引用例1を引用した場合の判断

1-1.引用例1に記載されている技術的事項及び引用発明

本願の優先日前に頒布又は電気通信回線を通じて公衆に利用可能となり,原審の拒絶査定の理由である平成27年5月19日付けの拒絶理由通知において引用された,特表2002-530731号公報(平成14年9月17日出願公表,以下,「引用例1」という。)には,関連する図面とともに,以下の技術的事項が記載されている。(当審注:下線は,参考のために当審で付与したものである。)

A 「 【0045】
400?800Mb/s/ピンの範囲の速度でバスデータを伝達するシンクロナスリンクDRAM(SLDRAM)などのパケット指向型高速メモリの発展に伴い,メモリアクセスの衝突に起因する問題は益々増加している。まず図9Aを参照すると,発明の実施形態による,例示的なSLDRAM型マルチプロセッサシステム900が示される。マルチプロセッサシステム900は,システムバス906によってコントローラ904に接続されるプロセッサ902を含む。ユニバーサルコントローラ904は,次いで,SLDRAMバスによってシンクロナスリンクDRAM(SLDRAM)908およびSLDRAM910に接続される。SLDRAMバスは単方向コマンドバス912および双方向データバス914で構成されている。留意点として,図9Aには2つのSLDRAMのみが示されているが,バス912および914によって,任意の数のSLDRAMがユニバーサルコントローラ904に接続され得ることがあげられる。別の場合では,SLDRAMは,SLDRAM908のようなSLDRAMを任意の適切な数だけ含むバッファ付きモジュールの形態をとり得る。ユニバーサルコントローラ904をSLDRAM908および910のそれぞれに接続する初期化/同期(I/S)バス916は,ユニバーサルコントローラ904によって生成される初期化信号および同期信号の信号経路を提供する。」

B 「 【0057】
次に,本発明の実施形態に従ったメモリコントローラ1000のブロックダイヤグラムを図解した図10に言及する。メモリコントローラ1000が図1に示されたユニバーサルコントローラ104の実施形態の1つにすぎず,したがって本発明の限界を制限するものと捉えるべきでないことは注記すべきである。メモリコントローラ1000はシステム・インタフェース1002を含み,これはシステム・バス906を介してプロセッサ902をメモリ・スケジューラ1006(スケジューラと呼ぶ)に接続する。本発明の実施形態の1つにおいては,システムインタフェース1002は,プロセッサ902によって生成されたメモリコマンドパケットとそれに関連付けられた書き込みデータパケットの両方の,メモリコマンドパケットスケジューラ1004への伝送に備えるために配置されている。内部バッファがいっぱいで新しいコマンドが収容できないとスケジューラ1006が表示している状況では,システムインタフェース1002はスケジューラ1006が新しいコマンドを受け入れ準備完了と表示する時まで新しいコマンドをホールドする。」

C 「 【0072】
上に述べたように,同じメモリバンクへのコマンドは,前に発行されたコマンドの処理を行うために,発行の間に最短の遅延が必要である。これは図13Aに,一対のコマンドの間の二つの時間帯によって表わされている。見てとれるように,図13Aに示された順序で4つのリードコマンドがメモリに送られたとすると,コマンドバスは4つの使用可能なクロックサイクル,すなわち時間帯1,2,5,6の間は,使われずに過ぎることになる。以下で論じるように,この非効率の少なくとも幾分かは,本発明に従ったコマンドの再順序付けによって改善されるであろう。
【0073】
図13Bと図13Cの時刻表1304と1306はそれぞれ,本発明の特定の実施形態に従った図13Aのコマンドの再順序付けと,それにより得られる利点の少なくともいくつかを図解している。この例においては,データバスのコンフリクトは簡便を期して考慮されていない。しかしながら以下に論じるように,メモリコマンドの効果的な再順序付けのためには,そのような考慮に注意が払われねばならない。CMD2とCMD3がCMD0とCMD1とは異なったメモリバンクに差し向けられているという事実のため,二対のコマンドの間にあるメモリ・アクセス待ち時間は問題とならず,無視してもよい。すなわち,コマンドは時刻表1304に示されたように配置し直すことができ,CMD2をCMD0の直後の時間帯1に置き,CMD3をCMD1の直後の時間帯4に置く。これは,異なったメモリバンクに差し向けられているという事実により,CMD0とCMD2の発行の間,CMD1とCMD3の発行の間には遅延は必要ないからである。しかしながら,図13Cに示したように,同じバンクに差し向けられたコマンドの対の間には最短の遅延時間,例えば2クロックサイクルが維持されねばならないことが理解されるだろう。すなわち,コマンドの再順序付けは同じメモリバンクへの連続するコマンド間の遅延時間を縮減する試みは含んでいない。
【0074】
コマンドの再順序付けの結果は図13Cに示されている。ここでは4つのコマンドが5クロックサイクル内に発行され,時間帯2だけが使われずに過ぎている。もちろん,さらに別のメモリバンクに向かう5番目のメモリコマンドが時間帯2に挿入され,コマンドバスが活用される効率をさらに極限まで増大させることは理解されるだろう。
【0075】
図14は,本発明の特定の実施形態に従って構成されたメモリコントローラの一部のブロックダイヤグラムである。再順序付け回路1400はシステム・プロセッサから入ってくるメモリコマンドシーケンス,すなわち1,2,3というコマンドシーケンスを受け取る。特定の実施形態によれば,メモリコマンドは制限回路(示されていない)を介して再順序付け回路1400に伝送され,制限回路は上述のように,選択されたコマンドに,関連付けられたメモリの同一の論理バンクに差し向けられた他のコマンドに応じて,発行時間の制約を課す。コマンドは,コマンドキュー1402内で再順序付けされ,そこからコマンドはメモリに向けて発行される。この例においては,コマンドは1,3,2の順に再順序付けされている。
【0076】
<途中省略>
【0077】
さらに,メモリからのデータはメモリコントローラによって,プロセッサがメモリコマンドを伝送する元のシーケンスに対応しないシーケンスで受け取られるかもしれないので,第3のシーケンスがデータキュー1408に格納される。このシーケンス(この例では3,2,1)は,コマンドシーケンス1,3,2に対応するデータがデータ読み取り回路1406に受け取られるであろう順序を表わしている。データキューシーケンスは,コマンドキューシーケンスとメモリの様々な論理バンクに関連付けされた既知の待ち時間に基づいて,再順序付け回路1400によって算出される。メモリがデータキュー1408に格納されたシーケンス(すなわち3,1,2)でメモリコントローラにデータを伝送するとき,データは読み取りデータバッファ1410に格納され,FIFO1404内の情報とデータキュー1408に基づいて,元のコマンドシーケンスの順序に対応する順序,すなわち1,2,3でプロセッサに伝送するように,再順序付けされる。」

そうすると,引用例1には,

「複数のSLDRAMと(【0045】段落,図9A),
プロセッサと(【0045】段落,図9A),
前記SLDRAMおよび前記プロセッサに連結されるメモリコントローラと(【0045】,【0057】段落,図9A),
前記メモリコントローラと複数のSLDRAMとの間のSLDRAMバスと(【0045】段落,図9A),
を備えるマルチプロセッサシステムであって(【0045】段落,図9A),
前記メモリコントローラが,
複数のコマンドを受け取るコマンドキューと(【0075】段落,図14),
コマンドシーケンスに対応する複数のデータを,前記複数のSLDRAMから,プロセッサがメモリコマンドを伝送する元のシーケンスに対応しないシーケンスで受け取るデータ読み取り回路と(【0077】段落,図14),
前記データ読み取り回路に連結され,前記複数のデータを,元のコマンドシーケンスの順序に対応する順序でプロセッサに伝送するように再順序付けさせるFIFO及びデータキューとを備え(【0077】段落,図14),
前記メモリコントローラは,前記複数のコマンドをSLDRAMに提供する際に,同じメモリバンクへのコマンドの対の間に最短の遅延時間を維持しつつ,使用可能なクロックサイクルが使われずに過ぎることが改善されるように,コマンドの再順序付けを実行する(【0072】?【0074】段落,図13A?図13C),
マルチプロセッサシステム。」

の発明(以下,「引用発明」という。)が記載されている。

1-2.対比
本願発明と引用発明とを対比する。

(ア)引用発明の「SLDRAM」は,メモリの所定の単位,すなわち“メモリユニット”であると言えるから,引用発明の「複数のSLDRAM」が本願発明の「複数のメモリユニット」に相当する。
引用発明の「プロセッサ」は,システムバスを介して“コマンド”を送信する主体である点で本願発明の「システムバススレーブ」と共通していることから,引用発明の「プロセッサ」と本願発明の「システムバススレーブ」とは,「コマンド送信手段」である点で共通している。
そして,引用発明の「メモリコントローラ」が本願発明の「メモリコントローラ」に相当するから,引用発明の「前記SLDRAMおよび前記プロセッサに連結されるメモリコントローラ」と本願発明の「前記メモリユニットおよび前記システムバススレーブに連結されるメモリコントローラ」とは,「前記メモリユニットおよび前記コマンド送信手段に連結されるメモリコントローラ」である点で共通している。
引用発明の「前記メモリコントローラと複数のSLDRAMとの間」には,“SLDRAMバス”による“通信チャネル”が構成されていることは明らかであるから,引用発明の「前記メモリコントローラと複数のSLDRAMとの間のSLDRAMバス」と本願発明の「前記メモリコントローラと前記複数のメモリユニットとの間に複数のチャネルをそれぞれ構成する通信バス」とは,後記する点で相違するものの,「前記メモリコントローラと前記複数のメモリユニットとの間にチャネルを構成する通信バス」である点で共通している。
引用発明の「マルチプロセッサシステム」は,コンピューティングシステムの一態様であるから,本願発明の「コンピューティングシステム」に対応する。
以上の検討から,引用発明と本願発明とは,後記する点で相違するものの,
「コンピューティングシステムであって,
複数のメモリユニットと,
コマンド送信手段と,
前記メモリユニットおよび前記コマンド送信手段に連結されるメモリコントローラと,
前記メモリコントローラと前記複数のメモリユニットとの間にチャネルを構成する通信バスと,
を備えるコンピューティングシステム」
の点で共通している。

(イ)引用発明の「複数のコマンドを受け取るコマンドキュー」が本願発明の「複数のコマンドを受け取るキュー」に相当する。

引用発明の「コマンドシーケンスに対応する複数のデータ」は,コマンドに対するメモリからの“複数”の“応答”であるから,本願発明の「複数の応答」に相当する。
引用発明の「プロセッサがメモリコマンドを伝送する元のシーケンスに対応しないシーケンス」は,所定の“順序”であるから,本願発明の「ある順序」に相当する。
そうすると,引用発明の「コマンドシーケンスに対応する複数のデータを,前記複数のSLDRAMから,プロセッサがメモリコマンドを伝送する元のシーケンスに対応しないシーケンスで受け取るデータ読み取り回路」が本願発明の「複数の応答を前記複数のメモリユニットから,ある順序で受信するように構成される応答ロジック」に相当する。

上記のことから,引用発明の“データ読み取り回路”が“コマンドシーケンスに対応する複数のデータ”を受け取る“順序”である,「プロセッサがメモリコマンドを伝送する元のシーケンスに対応しないシーケンス」が本願発明の「前記応答ロジックによって受信される前記順序」に相当する。また,引用発明の「元のコマンドシーケンスの順序に対応する順序」と,「プロセッサがメモリコマンドを伝送する元のシーケンスに対応しないシーケンス」とが互いに“独立”していることは明らかであるから,引用発明の「元のコマンドシーケンスの順序に対応する順序」が本願発明の「前記応答ロジックによって受信される前記順序とは独立の順序」に相当する。
また,引用発明の「プロセッサ」と本願発明の「システムバススレーブ」とは,コマンドに対する“応答”を“受信する”手段”である点で共通しているから,引用発明の「プロセッサ」と本願発明の「システムバススレーブ」とは,「応答受信手段」である点で共通している。
また,引用発明の「FIFO及びデータキュー」は,“複数のデータ”の“順序”を“再順序付けさせる”ものであるから,本願発明の「順序付けロジック」に対応する。
してみれば,引用発明の「前記データ読み取り回路に連結され,前記複数のデータを,元のコマンドシーケンスの順序に対応する順序でプロセッサに伝送するように再順序付けさせるFIFO及びデータキュー」と本願発明の「前記応答ロジックに連結され,前記複数の応答を,前記複数の応答が前記応答ロジックによって受信される前記順序とは独立の順序で,前記システムバススレーブに提供させるように構成される順序付けロジック」とは,「前記応答ロジックに連結され,前記複数の応答を,前記複数の応答が前記応答ロジックによって受信される前記順序とは独立の順序で,前記応答受信手段に提供させるように構成される順序付けロジック」である点で共通している。

以上の検討から,引用発明と本願発明とは,後記する点で相違するものの,
「前記メモリコントローラが,
複数のコマンドを受け取るキューと,
複数の応答を前記複数のメモリユニットから,ある順序で受信するように構成される応答ロジックと,
前記応答ロジックに連結され,前記複数の応答を,前記複数の応答が前記応答ロジックによって受信される前記順序とは独立の順序で,応答受信手段に提供させるように構成される順序付けロジックとを備え」
る点で共通している。

上記(ア),(イ)の検討から,本願発明と引用発明とは,

「コンピューティングシステムであって,
複数のメモリユニットと,
コマンド送信手段と,
前記メモリユニットおよび前記コマンド送信手段に連結されるメモリコントローラと,
前記メモリコントローラと前記複数のメモリユニットとの間にチャネルを構成する通信バスと,
を備えるコンピューティングシステムであって,
前記メモリコントローラが,
複数のコマンドを受け取るキューと,
複数の応答を前記複数のメモリユニットから,ある順序で受信するように構成される応答ロジックと,
前記応答ロジックに連結され,前記複数の応答を,前記複数の応答が前記応答ロジックによって受信される前記順序とは独立の順序で,応答受信手段に提供させるように構成される順序付けロジックとを備える,
コンピューティングシステム。」

の点で一致し,以下の点で相違する。

[相違点1]
コマンド送信手段が,本願発明では,「システムバススレーブ」であるのに対して,引用発明では,「プロセッサ」である点。

[相違点2]
メモリコントローラと複数のメモリユニットとの間の通信バスが,本願発明では,「メモリコントローラと複数のメモリユニットとの間に複数のチャネルをそれぞれ構成する」ものであるのに対して,引用発明では,そのように構成されていない点。

[相違点3]
応答受信手段が,本願発明では,「システムバススレーブ」であるのに対して,引用発明では,「プロセッサ」である点。

[相違点4]
メモリコントローラが,複数のコマンドを対応するメモリユニットに提供する際に,本願発明では,「前記複数のチャネルが利用可能か否かを判定し,利用可能と判定されたチャネルのメモリユニットに前記複数のコマンドの中の対応するコマンドを提供する」のに対して,引用発明では,「同じメモリバンクへのコマンドの対の間に最短の遅延時間を維持しつつ,使用可能なクロックサイクルが使われずに過ぎることが改善されるように,コマンドの再順序付けを実行する」ものである点。

1-3.判断
上記相違点について検討する。

[相違点1]及び[相違点3]について
システムバスに接続されたプロセッサをマスタプロセッサに対するスレーブプロセッサとして動作させることは,例えば特開平7-36704号公報(特に第1図の記載参照),特開平5-151171号公報(特に第1図の記載参照)等に記載されているように周知技術であるから,引用発明において,プロセッサをスレーブプロセッサとして動作させることで,コマンド送信手段や応答受信手段を「システムバススレーブ」により構成することは,当業者が適宜なし得たことである。

[相違点2]について
複数のメモリチャネルを有するメモリシステムは,例えば,特開2010-287058号公報(特に【請求項1】の記載参照),国際公開第2010/080141号(特に第2図の記載参照)等に記載されているように周知技術であるものと認められる。
引用発明は,複数のSLDRAMを備えたシステムであるから,この複数のSLDRAMを複数のメモリチャネルを有するものとすることに格別の困難性は認められない。

[相違点4]について
引用発明は,「複数のバンクを備えるメモリ」において,複数のコマンドをSLDRAMに提供する際に,同じメモリバンクへのコマンドの対の間に最短の遅延時間を維持しつつ,使用可能なクロックサイクルが使われずに過ぎることが改善されるように,コマンドの再順序付けを実行するというものであるから,引用発明のメモリとして,上記周知の複数のメモリチャネルを有するメモリシステムを適用したとしても,当該周知技術適用後の発明は,同じメモリバンクへのコマンドの対の間に最短の遅延時間を維持しつつ,使用可能なクロックサイクルが使われずに過ぎることを改善するように,コマンドの再順序付けを実行するという発明となるにとどまり,「複数のチャネルが利用可能か否かを判定し,利用可能と判定されたチャネルのメモリユニットに複数のコマンドの中の対応するコマンドを提供する」ように動作する発明となるものではない。
また,引用発明を,「メモリバンクが利用可能か否かを判定し,判定結果に応じてコマンドを送信する」という発明であるとみても,「メモリバンクが利用可能か否かを判定すること」と「チャネルが利用可能か否かを判定すること」とは,技術的に異なるものであり,両者が任意に置き換え可能なものであるとは認められないことから,引用発明に上記周知の「複数のメモリチャネルを有するメモリシステム」を適用したものにおいて,「メモリバンクが利用可能か否かを判定すること」を「チャネルが利用可能か否かを判定すること」に替える動機付けが無い。
してみれば,引用発明において,メモリコントローラが,複数のコマンドを対応するメモリユニットに提供する際に,複数のチャネルが利用可能か否かを判定し,利用可能と判定されたチャネルのメモリユニットに複数のコマンドの中の対応するコマンドを提供するように構成すること,すなわち,上記相違点4に係る構成とすることは,当業者が適宜なし得たものであるとすることはできない。

以上のとおりであるから,本願発明は,当業者が引用発明及び周知技術に基づいて容易に発明をすることができたとはいえない。

1-4.本願の請求項2-8に係る発明について
本願の請求項2-8に係る発明は,本願発明をさらに限定したものであるので,本願発明と同様に,当業者が引用発明及び周知技術に基づいて容易に発明をすることができたとはいえない。

1-5.本願の請求項9に係る発明について
本願の請求項9に係る発明は,本願発明を「方法の発明」として記載したものであるので,本願発明と同様に,当業者が引用発明及び周知技術に基づいて容易に発明をすることができたとはいえない。

1-6.本願の請求項10-14に係る発明について
本願の請求項10-14に係る発明は,請求項9に係る発明をさらに限定したものであるので,本願発明と同様に,当業者が引用発明及び周知技術に基づいて容易に発明をすることができたとはいえない。

2.引用例3を引用した場合の判断

2-1.引用例3に記載されている技術的事項及び引用発明3

本願の優先日前に頒布又は電気通信回線を通じて公衆に利用可能となり,原審の拒絶査定の理由である平成27年5月19日付けの拒絶理由通知において引用された,特開平10-228417号公報(平成10年8月25日出願公開,以下,「引用例3」という。)には,関連する図面とともに,以下の技術的事項が記載されている。(当審注:下線は,参考のために当審で付与したものである。)

D 「【0009】図2は,本発明の多重プロセッサの実施形態201を示すブロック図である。データ処理システム201は,多数のプロセッサP1?P4(それぞれ,参照番号203,204,205,206で示されている)を有している。これらのプロセッサは,メモリバス215に接続されている。メモリバス215は,リクエスト再順序付けユニット214を介して,メモリサブシステム216に接続されている。プロセッサP1?P4は,メモリサブシステム216に対するリクエストをメモリバス215に発生する。リクエスト再順序付けユニット214は,メモリバス215からのリクエストを受け入れ,該リクエストを,後述するようにして,本発明の技術に従ってスケジュールする。或る実施形態では,メモリバス215はIntel P6バス,プロセッサの個数は4つ以下,プロセッサはIntel PentiumPro-compatibleプロセッサである。」

E 「【0014】データは,D99,D110,D1,D104,D2,D50の最適順序で,メモリサブシステム216から読み取られる(324)。これらのデータは,次に,D110,D104,D99,D50,D2,D1(それぞれ,参照番号315,316,・・・320で示されている)の順序312に再順序付けされる(313)。再順序付けされたデータ順序は,初期リクエスト順序と一致する。再順序付けされたデータは,戻される(322)。データは,初期リクエスト順序に従って戻されるので,例えばプロセッサのようなメモリ演算をリクエストする構成要素(図示せず)は,リクエストされた演算がメモリサブシステム216により実際に遂行される順序を意識する必要はない。図5には,図示を容易化する目的で,リクエストされた読取り演算のみが示されている。一般に,リクエストされた演算も書込み演算である。書込みのためのデータは,書込みリクエスト/アドレス自体と一緒に再順序付けされなくてはならない。一般に,書込みの前に読取りが遂行されるように,同じアドレスへのリクエストされた読取りが続く,リクエストされた書込みが再順序付けされる状況を防止するステップをとらなくてはならない。不正確な読取りを防止する1つの方法は,書込みリクエストが既にスケジュールされたことをシステムの一部301が演繹するまで,該部分301が,読取りリクエストが続く書込みリクエストを発行しないようにすることである。他の方法は,システムの一部301が,制限されることなくリクエストを発行できるようにし,次に,再順序付けプロセス自体の間に前記状況を積極的に防止することである。後者の方法では,例えばプロセッサのようなメモリ演算をリクエストする構成要素(図示せず)は,再順序付けが行なわれることを意識する必要はない。
【0015】図6は,本発明を具現するデータ処理システム401を示す機能的ブロック図である。システムの一部301は,メモリアクセスリクエスト303およびリクエスト303の或るものと関連する「W」データ403を発行する。「W」データは,リクエストされたメモリ演算(単一および複数)と関連するデータであり,目的メモリ位置(単一および複数)に書き込まれるべきデータを有している。リクエスト303および「W」データ403は,例えば,データ処理システムの一部301におけるバスサブシステム(図示せず。このバスサブシステムは図1のバスサブシステム111と同じである)から発行される。リクエスト再順序付けユニット214内で,アドレス再順序付けサブユニット311がリクエスト303を受けかつこれらを一時的にバッファに記憶する。本発明の実施形態では,アドレス再順序付けサブユニット311は,オプションとしての衝突検出器404を介して,リクエスト303を受ける。アドレス再順序付けサブユニット311に入るとき,リクエスト303には初期順序を付すことができる。アドレス再順序付けサブユニット311は,下記の技術に従って,リクエストの新しい順序408で,メモリサブシステム216にリクエストを提供する。
【0016】リクエスト再順序付けユニット214内の第1データ再順序付けサブユニット406は,「W」データ403を受ける。第1データ再順序付けサブユニット406は,アドレス再順序付けサブユニット311からの方向で,「W」データの新しい順序410で,「W」データをメモリサブシステム216に提供する。「W」データ403の新しい順序410は,リクエスト303の新しい順序408に一致する。メモリサブシステム216はリクエストを満たしかつ得られた全ての「R」データ412をリクエスト再順序付けユニット214に戻す。「R」データはリクエストされたメモリ演算(単一または複数)から得られ,目的メモリ位置(単一または複数)からのデータ読取りを含んでいる。
【0017】リクエスト再順序付けユニット214内で,第2データ再順序付けサブユニット313が「R」データを受けかつ該「R」データをデータ処理システムの一部301に戻す。リクエスト303が初期順序を有する場合には,第2データ再順序付けサブユニット313は,「R」データを戻す(414)前に,「R」データ412への順序を復元する(これにより,復元された順序はリクエスト303の初期順序に一致する)。本発明の実施形態では,第2データ再順序付けサブユニット313および第1データ再順序付けサブユニット406は,アドレス再順序付けサブユニット311からの方向を受けるべく接続された単一ユニットにおいて実施される。図6の本発明の実施形態は,一般に,進行中の実行時ダイナミック態様で演算する。リクエスト再順序付けユニット214は,新しいリクエストおよび対応「W」データをダイナミックに受け入れる。リクエスト再順序付けユニット214は,対応する「W」データのリクエストおよび410のための新しい最適順序408に従って,リクエストおよび対応する「W」データをメモリサブシステム216にダイナミックに提供する。リクエスト再順序付けユニット214は,メモリサブシステム216からの「R」データを,ダイナミックに受け,再順序付けしかつ戻す。」

F 「【0021】図7は,本発明の実施形態によるアドレス再順序付けサブユニット311でのリクエスト順序付けを示すフローチャートである。図6を参照しつつ,図7を説明する。図7の実施形態では,アドレス再順序付けサブユニット311は,ステップ502において,再順序付けサブユニット311でバッファされたリクエストが,利用可能なアドレスを目的としているか否かを決定する。YES(503)であれば,ステップ504において,再順序付けサブユニット311が,新しい順序408へのリクエストをスケジュールし,従ってデータ再順序付けサブユニット406に対応するあらゆる「W」データをスケジュールさせる。スケジュールされたリクエストは,ステップ504で,アドレス再順序付けサブユニット311から取り出される。本発明の好ましい実施形態では,アドレス再順序付けサブユニットは,ステップ504で,利用可能なアドレスを目的とするリクエスト間の最高の省略時優先順位を有するリクエストをスケジュールする。
【0022】リクエストのスケジューリングは,リクエストがメモリサブシステム216に供給するリクエストのキューに入れられる。本発明の好ましい実施形態では,キューの長さはゼロであり,リクエストはこれらがスケジュールされるやいなや,メモリサブシステム216に提供される。本発明の実施形態では,メモリサブシステムはメモリのバンクを有し,メモリアドレスは,メモリアドレスが存在するバンクが利用可能であるときに利用可能である。本発明の実施形態では,メモリサブシステムは,インターリーブされたアドレスを備えたメモリのバンクを有し,メモリアドレスは,メモリアドレスが存在するバンクが利用可能であるときに利用可能である。本発明は,メモリのバンクを備えたメモリサブシステムへのアクセスを制御するのに特に適している。また,本発明は,インターリーブされたアドレスを備えたメモリのバンクを備えたメモリサブシステムへのアクセスを制御するのにも特に適している。また,本発明は,半導体メモリサブシステムまたは同様なメモリサブシステムまたはより高速のメモリサブシステムのようなメモリサブシステムへのアクセスを制御するのにも特に適している。」

そうすると,引用例3には,

「メモリサブシステム216と(【0009】段落,図2),
プロセッサと(【0009】段落,図2),
前記メモリサブシステム216および前記プロセッサに連結されるリクエスト再順序付けユニット214と(【0009】段落,図2),
前記リクエスト再順序付けユニット214と前記メモリサブシステム216との間を接続する構成と(【0009】段落,図2),
を備えるデータ処理システムであって(【0009】段落,図2),
前記リクエスト再順序付けユニット214が,
複数のリクエストを受け取るアドレス再順序付けサブユニット311と(【0015】段落,図6),
リクエストを満たしかつ得られた全ての「R」データを,前記メモリサブシステム216から,所定の順序で受け取るデータ再順序付けサブユニット313と(【0016】,【0017】段落,図6),
前記データ再順序付けサブユニット313に連結され,前記全ての「R」データを,リクエストの初期順序に復元してプロセッサに戻すようにさせるアドレス再順序付けサブユニット311とを備え(【0014】,【0016】,【0017】段落,図6),
前記アドレス再順序付けサブユニット311は,メモリサブシステム216にリクエストを提供する際に,再順序付けサブユニット311でバッファされたリクエストが,利用可能なアドレスを目的としているか否か,すなわち,リクエストのメモリアドレスが存在するバンクが利用可能であるか否かを決定し,利用可能であれば,リクエストをメモリサブシステム216に提供する(【0015】,【0021】,【0022】段落,図6,図7),
データ処理システム。」

の発明(以下,「引用例3発明」という。)が記載されている。

2-2.対比
本願発明と引用例3発明とを対比する。

(ア)引用例3発明の「メモリサブシステム216」は,メモリの所定の単位,すなわち“メモリユニット”であると言えるから,引用例3発明の「メモリサブシステム216」が本願発明の「メモリユニット」に相当する。
引用例3発明の「リクエスト」が本願発明の「コマンド」に相当し,引用例3発明の「プロセッサ」は,“リクエスト”を送信する主体である点で本願発明の「システムバススレーブ」と共通していることから,引用例3発明の「プロセッサ」と本願発明の「システムバススレーブ」とは,「コマンド送信手段」である点で共通している。
そして,引用例3発明の「リクエスト再順序付けユニット214」が本願発明の「メモリコントローラ」に相当するから,引用例3発明の「前記メモリサブシステム216および前記プロセッサに連結されるリクエスト再順序付けユニット214」と本願発明の「前記メモリユニットおよび前記システムバススレーブに連結されるメモリコントローラ」とは,「前記メモリユニットおよび前記コマンド送信手段に連結されるメモリコントローラ」である点で共通している。
引用例3発明の「前記リクエスト再順序付けユニット214と前記メモリサブシステム216との間」には,データを“通信”するために,何らかの“通信チャネル”が構成されていることは明らかであるから,引用例3発明の「前記リクエスト再順序付けユニット214と前記メモリサブシステム216との間を接続する構成」と本願発明の「前記メモリコントローラと前記複数のメモリユニットとの間に複数のチャネルをそれぞれ構成する通信バス」とは,後記する点で相違するものの,「前記メモリコントローラと前記メモリユニットとの間に構成された通信チャネル」である点で共通している。
引用例3発明の「データ処理システム」が本願発明の「コンピューティングシステム」に対応する。
以上の検討から,引用例3発明と本願発明とは,後記する点で相違するものの,
「コンピューティングシステムであって,
メモリユニットと,
コマンド送信手段と,
前記メモリユニットおよび前記コマンド送信手段に連結されるメモリコントローラと,
前記メモリコントローラと前記メモリユニットとの間に構成された通信チャネルと,
を備えるコンピューティングシステム」
の点で共通している。

(イ)引用例3発明の「複数のリクエストを受け取るアドレス再順序付けサブユニット311」が本願発明の「複数のコマンドを受け取るキュー」に相当する。

引用例3発明の「リクエストを満たしかつ得られた全ての「R」データ」は,リクエストに対するメモリサブシステム216からの“複数”の“応答”であるから,本願発明の「複数の応答」に相当する。
引用例3発明の「所定の順序」が本願発明の「ある順序」に相当する。
そうすると,引用例3発明の「リクエストを満たしかつ得られた全ての「R」データを,前記メモリサブシステム216から,所定の順序で受け取るデータ再順序付けサブユニット313」と本願発明の「複数の応答を前記複数のメモリユニットから,ある順序で受信するように構成される応答ロジック」とは,「複数の応答を前記メモリユニットから,ある順序で受信するように構成される応答ロジック」である点で共通する。
引用例3発明の「所定の順序」が本願発明の「前記応答ロジックによって受信される前記順序」に相当する。また,引用例3発明の「リクエストの初期順序」と,「所定の順序」とが互いに“独立”していることは明らかであるから,引用例3発明の「リクエストの初期順序」が本願発明の「前記応答ロジックによって受信される前記順序とは独立の順序」に相当する。
また,引用例3発明の「プロセッサ」と本願発明の「システムバススレーブ」とは,コマンドに対する“応答”を“受信する”手段”である点で共通しているから,引用例3発明の「プロセッサ」と本願発明の「システムバススレーブ」とは,「応答受信手段」である点で共通している。
また,引用例3発明の「アドレス再順序付けサブユニット311」は,“全ての「R」データ”の“順序”を“リクエストの初期順序”に“復元”させるものであるから,本願発明の「順序付けロジック」に対応する。
してみれば,引用例3発明の「前記データ再順序付けサブユニット313に連結され,前記全ての「R」データを,リクエストの初期順序に復元してプロセッサに戻すようにさせるアドレス再順序付けサブユニット311」と本願発明の「前記応答ロジックに連結され,前記複数の応答を,前記複数の応答が前記応答ロジックによって受信される前記順序とは独立の順序で,前記システムバススレーブに提供させるように構成される順序付けロジック」とは,「前記応答ロジックに連結され,前記複数の応答を,前記複数の応答が前記応答ロジックによって受信される前記順序とは独立の順序で,前記応答受信手段に提供させるように構成される順序付けロジック」である点で共通している。

以上の検討から,引用例3発明と本願発明とは,後記する点で相違するものの,
「前記メモリコントローラが,
複数のコマンドを受け取るキューと,
複数の応答を前記メモリユニットから,ある順序で受信するように構成される応答ロジックと,
前記応答ロジックに連結され,前記複数の応答を,前記複数の応答が前記応答ロジックによって受信される前記順序とは独立の順序で,応答受信手段に提供させるように構成される順序付けロジックとを備え」
る点で共通している。

上記(ア),(イ)の検討から,本願発明と引用例3発明とは,

「コンピューティングシステムであって,
メモリユニットと,
コマンド送信手段と,
前記メモリユニットおよび前記コマンド送信手段に連結されるメモリコントローラと,
前記メモリコントローラと前記メモリユニットとの間に構成された通信チャネルと,
を備えるコンピューティングシステムであって,
前記メモリコントローラが,
複数のコマンドを受け取るキューと,
複数の応答を前記メモリユニットから,ある順序で受信するように構成される応答ロジックと,
前記応答ロジックに連結され,前記複数の応答を,前記複数の応答が前記応答ロジックによって受信される前記順序とは独立の順序で,応答受信手段に提供させるように構成される順序付けロジックとを備える,
コンピューティングシステム。」

の点で一致し,以下の点で相違する。

[相違点1]
メモリユニットが,本願発明では,「複数のメモリユニット」であるのに対して,引用例3発明では,メモリユニットが複数であることは明記されていない点。

[相違点2]
コマンド送信手段が,本願発明では,「システムバススレーブ」であるのに対して,引用例3発明では,「プロセッサ」である点。

[相違点3]
メモリコントローラとメモリユニットとの間のチャネルが,本願発明では,「前記メモリコントローラと前記複数のメモリユニットとの間に複数のチャネルをそれぞれ構成する通信バス」で構成されているのに対して,引用例3発明では,そのように構成されていない点。

[相違点4]
応答受信手段が,本願発明では,「システムバススレーブ」であるのに対して,引用例3発明では,「プロセッサ」である点。

[相違点5]
メモリコントローラが,複数のコマンドを対応するメモリユニットに提供する際に,本願発明では,「前記複数のチャネルが利用可能か否かを判定し,利用可能と判定されたチャネルのメモリユニットに前記複数のコマンドの中の対応するコマンドを提供する」のに対して,引用例3発明では,「再順序付けサブユニット311でバッファされたリクエストが,利用可能なアドレスを目的としているか否か,すなわち,リクエストのメモリアドレスが存在するバンクが利用可能であるか否かを決定し,利用可能であれば,リクエストをメモリサブシステム216に提供する」ものである点。

2-3.判断
上記相違点について検討する。

[相違点2]及び[相違点4]について
システムバスに接続されたプロセッサをマスタプロセッサに対するスレーブプロセッサとして動作させることは,例えば特開平7-36704号公報(特に第1図の記載参照),特開平5-151171号公報(特に第1図の記載参照)等に記載されているように周知技術であるから,引用例3発明において,プロセッサをスレーブプロセッサとして動作させることで,コマンド送信手段や応答受信手段を「システムバススレーブ」とすることは,当業者が適宜なし得たことである。

[相違点1]及び[相違点3]について
複数のメモリチャネルを有するメモリシステムは,例えば,特開2010-287058号公報(特に【請求項1】の記載参照),国際公開第2010/080141号(特に第2図の記載参照)等に記載されているように周知技術であるものと認められる。
引用例3発明は,メモリサブシステム216を備えたシステムであるところ,上記周知技術を参酌すれば,このメモリサブシステムを複数のメモリユニットで構成し,複数のメモリユニットが複数のメモリチャネルを有するものとすることに格別の困難性は認められない。

[相違点5]について
引用例3発明は,「複数のバンクを備えるメモリ」において,複数のリクエストをメモリサブシステムに提供する際に,再順序付けサブユニット311でバッファされたリクエストが,利用可能なアドレスを目的としているか否か,すなわち,リクエストのメモリアドレスが存在するバンクが利用可能であるか否かを決定し,利用可能であれば,リクエストをメモリサブシステム216に提供するというものであるから,引用例3発明のメモリサブシステムとして,上記周知の複数のメモリチャネルを有するメモリシステムを適用したとしても,当該周知技術適用後の発明は,リクエストのメモリアドレスが存在するバンクが利用可能であれば,リクエストをメモリサブシステムに提供するという発明となるにとどまり,「複数のチャネルが利用可能か否かを判定し,利用可能と判定されたチャネルのメモリユニットに複数のコマンドの中の対応するコマンドを提供する」ように動作する発明となるものではない。
また,「メモリバンクが利用可能か否かを判定すること」と「チャネルが利用可能か否かを判定すること」とは,技術的に異なるものであり,両者が任意に置き換え可能なものであるとは認められないことから,引用例3発明に上記周知の「複数のメモリチャネルを有するメモリシステム」を適用したものにおいて,「メモリバンクが利用可能か否かを判定すること」を「チャネルが利用可能か否かを判定すること」に替える動機付けが無い。
してみれば,引用例3発明において,メモリコントローラが,複数のコマンドを対応するメモリユニットに提供する際に,複数のチャネルが利用可能か否かを判定し,利用可能と判定されたチャネルのメモリユニットに複数のコマンドの中の対応するコマンドを提供するように構成すること,すなわち,上記相違点5に係る構成とすることは,当業者が適宜なし得たものであるとすることはできない。

以上のとおりであるから,本願発明は,当業者が引用例3発明及び周知技術に基づいて容易に発明をすることができたとはいえない。

2-4.本願の請求項2-8に係る発明について
本願の請求項2-8に係る発明は,本願発明をさらに限定したものであるので,本願発明と同様に,当業者が引用例3発明及び周知技術に基づいて容易に発明をすることができたとはいえない。

2-5.本願の請求項9に係る発明について
本願の請求項9に係る発明は,本願発明を「方法の発明」として記載したものであるので,本願発明と同様に,当業者が引用例3発明及び周知技術に基づいて容易に発明をすることができたとはいえない。

2-6.本願の請求項10-14に係る発明について
本願の請求項10-14に係る発明は,請求項9に係る発明をさらに限定したものであるので,本願発明と同様に,当業者が引用例3発明及び周知技術に基づいて容易に発明をすることができたとはいえない。

第5 むすび
以上のとおり,本願の請求項1-14に係る発明は,当業者が引用発明及び周知技術に基づいて容易に発明をすることができたものではなく,また,当業者が引用例3発明及び周知技術に基づいて容易に発明をすることができたものでもないから,原査定の理由によっては,本願を拒絶することはできない。
また,他に本願を拒絶すべき理由を発見しない。
よって,結論のとおり審決する。
 
審決日 2016-12-21 
出願番号 特願2014-547242(P2014-547242)
審決分類 P 1 8・ 121- WY (G06F)
最終処分 成立  
前審関与審査官 中野 裕二  
特許庁審判長 石井 茂和
特許庁審判官 辻本 泰隆
須田 勝巳
発明の名称 メモリ応答の順序付けのためのメモリ装置、コンピュータシステムおよび方法  
代理人 野村 泰久  
代理人 大菅 義之  

プライバシーポリシー   セキュリティーポリシー   運営会社概要   サービスに関しての問い合わせ