【手続補正書】
【提出日】平成29年10月20日(2017.10.20)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
記憶ドライブと、
ダイナミックランダムアクセスメモリと、
前記記憶ドライブおよび前記ダイナミックランダムアクセスメモリに接続されるシステムバスと、
（ｉ）前記システムバスに接続され、（ｉｉ）前記システムバスを介して、前記記憶ドライブおよび前記ダイナミックランダムアクセスメモリにアクセスする、複数の画像処理装置と、
（ｉ）前記システムバスを介して前記複数の画像処理装置のうちの１つに接続され、（ｉｉ）前記記憶ドライブから分離している、最終レベルキャッシュモジュールと、
を備え、
前記複数の画像処理装置のうちの前記１つは、プロセッサと複数のキャッシュとを有し、
前記プロセッサは、前記プロセッサによって要求されるデータが、前記複数のキャッシュのうちの１つに格納されていない場合、前記複数の画像処理装置のうちの前記１つの外部の物理位置の第１の物理アドレスに格納されている前記データにアクセスするための要求を生成し、
前記要求は、前記第１の物理アドレスを含み、
前記最終レベルキャッシュモジュールは、
前記ダイナミックランダムアクセスメモリと、
（ｉ）前記システムバスを介して前記プロセッサからの前記要求を受信し、（ｉｉ）前記第１の物理アドレスを第１の仮想アドレスに変換する最終レベルキャッシュコントローラと、
（ｉ）前記最終レベルキャッシュコントローラから前記第１の仮想アドレスを受信し、（ｉｉ）前記第１の仮想アドレスを第２の物理アドレスに変換するダイナミックランダムアクセスメモリコントローラと、
を有し、
前記ダイナミックランダムアクセスメモリコントローラは、前記第２の物理アドレスに基づいて、前記ダイナミックランダムアクセスメモリまたは前記記憶ドライブ内の前記データにアクセスするかどうかを決定し、
前記第２の物理アドレスが前記記憶ドライブ内である場合、前記最終レベルキャッシュコントローラは前記記憶ドライブ内の前記データにアクセスし、
前記第２の物理アドレスが前記ダイナミックランダムアクセスメモリ内である場合、前記ダイナミックランダムアクセスメモリコントローラは、前記ダイナミックランダムアクセスメモリ内の前記データにアクセスし、
前記ダイナミックランダムアクセスメモリコントローラは、前記最終レベルキャッシュコントローラが前記ダイナミックランダムアクセスメモリコントローラに前記第１の仮想アドレスを転送した後に、前記第２の物理アドレスが前記ダイナミックランダムアクセスメモリ内である場合、前記ダイナミックランダムアクセスメモリ内の前記データにアクセスする、
ネットワークデバイス。
【請求項２】
前記最終レベルキャッシュコントローラは、前記第１の物理アドレスの前記第１の仮想アドレスへのフルセットアソシアティブ変換を実行する、
請求項１に記載のネットワークデバイス。
【請求項３】
前記記憶ドライブは、前記ダイナミックランダムアクセスメモリより大きい記憶容量を有する、
請求項１または２に記載のネットワークデバイス。
【請求項４】
前記記憶ドライブは、前記ダイナミックランダムアクセスメモリより１桁大きい記憶容量を有する、
請求項３に記載のネットワークデバイス。
【請求項５】
前記ダイナミックランダムアクセスメモリへの、又は前記ダイナミックランダムアクセスメモリからのデータの転送速度は、前記記憶ドライブへの、又は前記記憶ドライブからのデータの転送速度より高速である、
請求項１から４のいずれか一項に記載のネットワークデバイス。
【請求項６】
前記記憶ドライブはソリッドステートメモリ又は回転記憶媒体を含む、
請求項１から５のいずれか一項に記載のネットワークデバイス。
【請求項７】
前記記憶ドライブはダイナミックランダムアクセスメモリを含み、
前記記憶ドライブの前記ダイナミックランダムアクセスメモリは、前記最終レベルキャッシュモジュールの前記ダイナミックランダムアクセスメモリより遅いデータ転送速度を有する、
請求項１から６のいずれか一項に記載のネットワークデバイス。
【請求項８】
前記ダイナミックランダムアクセスメモリは、キャッシュとして実装され、前記記憶ドライブとは分離しており、
前記最終レベルキャッシュコントローラは、（ｉ）前記第１の物理アドレスに基づいて、前記ダイナミックランダムアクセスメモリにアクセスするかどうかを決定し、（ｉｉ）前記第１の物理アドレスについて、キャッシュミスが発生したと決定し、（ｉｉｉ）前記キャッシュミスに基づいて、前記キャッシュミスが発生したことを前記プロセッサに信号で伝える、又は前記記憶ドライブにアクセスする、
請求項１から６のいずれか一項に記載のネットワークデバイス。
【請求項９】
前記ダイナミックランダムアクセスメモリは、キャッシュとして実装され、前記記憶ドライブとは分離しており、
前記ダイナミックランダムアクセスメモリコントローラは、（ｉ）前記第１の仮想アドレスに基づいて、前記ダイナミックランダムアクセスメモリにアクセスするかどうかを決定し、（ｉｉ）前記第１の仮想アドレスについて、キャッシュミスが発生したと決定し、（ｉｉｉ）前記キャッシュミスに基づいて、前記キャッシュミスが発生したことを前記最終レベルキャッシュコントローラに信号で伝え、
前記最終レベルキャッシュコントローラは、前記キャッシュミスが発生したことを示す前記信号に応答して前記記憶ドライブにアクセスする、
請求項１から６のいずれか一項に記載のネットワークデバイス。
【請求項１０】
前記ダイナミックランダムアクセスメモリはキャッシュとして実装され、
前記ダイナミックランダムアクセスメモリコントローラは、（ｉ）前記第１の仮想アドレスに基づいて、前記ダイナミックランダムアクセスメモリにアクセスするかどうかを決定し、（ｉｉ）前記第１の仮想アドレスについて、キャッシュミスが発生したと決定し、（ｉｉｉ）前記キャッシュミスに基づいて、前記キャッシュミスが発生したことを前記最終レベルキャッシュコントローラに示すべく第１の信号を生成し、
前記最終レベルキャッシュコントローラは、前記第１の信号に応答して、前記キャッシュミスが発生したことを前記プロセッサに示すべく第２の信号を生成し、
前記プロセッサは、前記第２の信号に応答して、前記記憶ドライブにアクセスする、
請求項１から６のいずれか一項に記載のネットワークデバイス。
【請求項１１】
前記プロセッサは、データを転送するための前記要求を生成し、
前記要求は、前記第１の物理アドレスを示し、
前記最終レベルキャッシュコントローラは、前記要求に基づいて、前記第１の物理アドレスを前記第１の仮想アドレスに変換し、
前記ダイナミックランダムアクセスメモリコントローラは、前記第２の物理アドレスに基づいて、（ｉ）前記プロセッサと前記ダイナミックランダムアクセスメモリとの間で前記データを転送するか、又は（ｉｉ）前記プロセッサと前記記憶ドライブとの間で前記データを転送するかを決定する、
請求項１から６のいずれか一項に記載のネットワークデバイス。
【請求項１２】
前記プロセッサと前記記憶ドライブとの間で転送される前に、前記データを暗号化する暗号化デバイスを更に備える
請求項１１に記載のネットワークデバイス。
【請求項１３】
前記プロセッサは、（ｉ）第２の仮想アドレスを生成し、（ｉｉ）前記第２の仮想アドレスを前記第１の物理アドレスに変換する、
請求項１から１２のいずれか一項に記載のネットワークデバイス。
【請求項１４】
前記ダイナミックランダムアクセスメモリは第１の部分及び第２の部分を含み、
前記第１の部分は、最終レベルキャッシュとして実装され、
前記第２の部分は、キャッシュとしては実装されず、前記第１の部分より低い階層レベルを有する、
請求項１から６のいずれか一項に記載のネットワークデバイス。
【請求項１５】
前記ダイナミックランダムアクセスメモリコントローラは、複数の前記階層レベルに基づいて、前記第１の部分及び前記第２の部分にアクセスする、
請求項１４に記載のネットワークデバイス。
【請求項１６】
前記ダイナミックランダムアクセスメモリは、第１の部分及び第２の部分を含み、
前記第１の部分は、仮想メモリとして実装され、
前記第２の部分は、仮想メモリとしては実装されず、前記第１の部分より低い階層レベルを有する、
請求項１から６のいずれか一項に記載のネットワークデバイス。
【請求項１７】
前記最終レベルキャッシュコントローラは、
第２のデータを転送するための、前記プロセッサからの第１の複数の物理アドレスを示す複数の要求を受信し、
前記第１の複数の物理アドレスを複数の仮想アドレスに変換し、
前記複数の仮想アドレスを第２の複数の物理アドレスに変換し、
前記第２の複数の物理アドレスに基づいて、（ｉ）前記プロセッサと前記ダイナミックランダムアクセスメモリとの間で、前記第２のデータを転送するか、又は（ｉｉ）前記プロセッサと前記記憶ドライブとの間で、前記第２のデータを転送するかを決定し、
前記第２の複数の物理アドレスのうちのいくつかのアドレスは前記ダイナミックランダムアクセスメモリ中にあり、前記第２の複数の物理アドレスのうちのその他のアドレスは前記記憶ドライブ中にある、
請求項１から６のいずれか一項に記載のネットワークデバイス。
【請求項１８】
前記最終レベルキャッシュモジュールはただ１つの集積回路によって実装される、
請求項１から１７のいずれか一項に記載のネットワークデバイス。
【請求項１９】
前記ダイナミックランダムアクセスメモリは第１の複数のエントリを含み、
前記記憶ドライブは、前記第１の複数のエントリにマッピングされる第２の複数のエントリを含み、
前記最終レベルキャッシュコントローラは、前記第１の複数のエントリのうちの１つのエントリにおける残りの記憶容量に基づいて、前記プロセッサと、前記記憶ドライブの前記第２の複数のエントリのうちの１つのエントリとの間でデータを転送し、
前記第２の複数のエントリのうちの前記１つのエントリは、前記第１の複数のエントリのうちの前記１つのエントリにマッピングされる、
請求項１から６のいずれか一項に記載のネットワークデバイス。
【請求項２０】
前記ダイナミックランダムアクセスメモリ中の各エントリは、前記記憶ドライブ中の１又は複数のエントリにマッピングされる、
請求項１９に記載のネットワークデバイス。
【請求項２１】
前記ダイナミックランダムアクセスメモリ中の１又は複数のエントリは、前記記憶ドライブ中の１又は複数のエントリにマッピングされる、
請求項１９に記載のネットワークデバイス。
【請求項２２】
前記最終レベルキャッシュコントローラは、（ｉ）データの使用頻度、（ｉｉ）前記データの優先レベル、又は（ｉｉｉ）前記データがロックされた状態にあるかどうか、のうち少なくとも１つに基づいて、前記ダイナミックランダムアクセスメモリ中に前記データを格納する、
請求項１から６のいずれか一項に記載のネットワークデバイス。
【請求項２３】
ネットワークデバイスのシステム内の、記憶ドライブおよび最終レベルキャッシュモジュールのダイナミックランダムアクセスメモリにアクセスするための方法であって、
前記システムは、前記記憶ドライブと、前記最終レベルキャッシュモジュールと、複数の画像処理装置と、システムバスとを備え、
前記システムバスは、前記記憶ドライブと、前記ダイナミックランダムアクセスメモリと、前記複数の画像処理装置とに接続され、
前記複数の画像処理装置は、前記システムバスを介して、前記記憶ドライブおよび前記ダイナミックランダムアクセスメモリにアクセスし、
前記最終レベルキャッシュモジュールは、最終レベルキャッシュコントローラと、ダイナミックランダムアクセスメモリコントローラと、前記ダイナミックランダムアクセスメモリとを有し、
前記最終レベルキャッシュモジュールは、前記システムバスを介して前記複数の画像処理装置のうちの１つに接続され、かつ、前記記憶ドライブから分離しており、
前記複数の画像処理装置のうちの前記１つは、プロセッサと複数のキャッシュとを有し、
前記方法は、
前記プロセッサによって要求されるデータが、前記複数のキャッシュのうちの１つに格納されていない場合、前記複数の画像処理装置のうちの前記１つの外部の物理位置の第１の物理アドレスで格納されている前記データにアクセスするための要求を前記プロセッサによって生成する段階であって、前記要求は前記第１の物理アドレスを含む、段階と、
前記システムバスを介して前記プロセッサからの前記要求を前記最終レベルキャッシュコントローラにおいて受信する段階と、
前記最終レベルキャッシュコントローラによって前記第１の物理アドレスを第１の仮想アドレスに変換する段階と、
前記最終レベルキャッシュコントローラから前記ダイナミックランダムアクセスメモリコントローラに前記第１の仮想アドレスを転送する段階と、
前記最終レベルキャッシュコントローラから前記第１の仮想アドレスを前記ダイナミックランダムアクセスメモリコントローラにおいて受信する段階と、
前記ダイナミックランダムアクセスメモリコントローラによって前記第１の仮想アドレスを第２の物理アドレスに変換する段階と、
前記第２の物理アドレスに基づいて、前記ダイナミックランダムアクセスメモリまたは前記記憶ドライブ内の前記データにアクセスするかどうかを決定する段階と、
前記最終レベルキャッシュコントローラが前記ダイナミックランダムアクセスメモリコントローラに前記第１の仮想アドレスを転送した後に、
前記第２の物理アドレスが前記記憶ドライブ内である場合、前記最終レベルキャッシュコントローラによって前記記憶ドライブ内の前記データにアクセスする段階と、
前記第２の物理アドレスが前記ダイナミックランダムアクセスメモリ内である場合、前記ダイナミックランダムアクセスメモリコントローラによって前記ダイナミックランダムアクセスメモリ内の前記データにアクセスする段階と、を備える
方法。
【請求項２４】
前記第１の物理アドレスを前記第１の仮想アドレスに変換する段階は、前記第１の物理アドレスの前記第１の仮想アドレスへのフルセットアソシアティブ変換を実行する段階を有する、
請求項２３に記載の方法。
【請求項２５】
前記記憶ドライブは、前記ダイナミックランダムアクセスメモリより大きい記憶容量を有する、
請求項２３または２４に記載の方法。
【請求項２６】
前記記憶ドライブは、前記ダイナミックランダムアクセスメモリより１桁大きい記憶容量を有する、
請求項２５に記載の方法。
【請求項２７】
前記ダイナミックランダムアクセスメモリへの、又は前記ダイナミックランダムアクセスメモリからのデータの転送速度は、前記記憶ドライブへの、又は前記記憶ドライブからのデータの転送速度より高速である、
請求項２３から２６のいずれか一項に記載の方法。
【請求項２８】
前記記憶ドライブはソリッドステートメモリ又は回転記憶媒体を含む、
請求項２３から２７のいずれか一項に記載の方法。
【請求項２９】
前記記憶ドライブはダイナミックランダムアクセスメモリを含み、
前記記憶ドライブの前記ダイナミックランダムアクセスメモリは、前記最終レベルキャッシュモジュールの前記ダイナミックランダムアクセスメモリより遅いデータ転送速度を有する、
請求項２３から２７のいずれか一項に記載の方法。
【請求項３０】
前記第１の物理アドレスに基づいて、前記ダイナミックランダムアクセスメモリにアクセスするかどうかを決定する段階であって、前記ダイナミックランダムアクセスメモリはキャッシュとして実装される、段階と、
前記第１の物理アドレスについて、キャッシュミスが発生したと決定する段階と、
前記キャッシュミスに基づいて、前記キャッシュミスが発生したことを前記プロセッサに信号で伝える、又は前記記憶ドライブにアクセスする段階と、を更に備える
請求項２３から２７のいずれか一項に記載の方法。
【請求項３１】
前記第２の物理アドレスに基づいて、前記ダイナミックランダムアクセスメモリにアクセスするかどうかを決定する段階であって、前記ダイナミックランダムアクセスメモリはキャッシュとして実装される、段階と、
前記第１の仮想アドレスについて、キャッシュミスが発生したと決定する段階と、
前記キャッシュミスに基づいて、前記キャッシュミスが発生したことを前記最終レベルキャッシュコントローラに信号で伝える段階と、
前記キャッシュミスが発生したことを示す前記信号に応答して、前記記憶ドライブにアクセスする段階と、を更に備える
請求項２３から２７のいずれか一項に記載の方法。
【請求項３２】
前記第２の物理アドレスに基づいて、前記ダイナミックランダムアクセスメモリにアクセスするかどうかを決定する段階であって、前記ダイナミックランダムアクセスメモリはキャッシュとして実装される、段階と、
前記第１の仮想アドレスについて、キャッシュミスが発生したと前記ダイナミックランダムアクセスメモリコントローラによって決定する段階と、
前記キャッシュミスに基づいて、前記キャッシュミスが発生したことを前記最終レベルキャッシュコントローラに示すべく第１の信号を生成する段階と、
前記第１の信号に応答して、前記キャッシュミスが発生したことを前記プロセッサに示す第２の信号を前記最終レベルキャッシュコントローラにおいて生成する段階と、
前記第２の信号に応答して、前記記憶ドライブにアクセスする段階と、を更に備える
請求項２３から２７のいずれか一項に記載の方法。
【請求項３３】
データを転送するための前記要求を生成する段階であって、前記要求は前記第１の物理アドレスを示す、段階と、
前記要求に基づいて、前記第１の物理アドレスを前記第１の仮想アドレスに変換する段階と、
前記第２の物理アドレスに基づいて、（ｉ）前記プロセッサと前記ダイナミックランダムアクセスメモリとの間で前記データを転送するか、又は（ｉｉ）前記プロセッサと前記記憶ドライブとの間で前記データを転送するかを決定する段階と、を更に備える
請求項２３から２７のいずれか一項に記載の方法。
【請求項３４】
前記プロセッサと前記記憶ドライブとの間で転送される前に、前記データを暗号化する段階を更に備える
請求項３３に記載の方法。
【請求項３５】
前記プロセッサにおいて第２の仮想アドレスを生成する段階と、
前記第２の仮想アドレスを前記第１の物理アドレスに変換する段階と、を更に備える
請求項２３から３４のいずれか一項に記載の方法。
【請求項３６】
前記ダイナミックランダムアクセスメモリの複数の部分に、前記複数の部分の複数の階層レベルに基づいてアクセスする段階を更に備え、
前記ダイナミックランダムアクセスメモリは第１の部分及び第２の部分を含み、
前記第１の部分は、最終レベルキャッシュとして実装され、
前記第２の部分は、キャッシュとしては実装されず、前記第１の部分より低い階層レベルを有する、
請求項２３から２７のいずれか一項に記載の方法。
【請求項３７】
前記ダイナミックランダムアクセスメモリの複数の部分に、前記複数の部分の複数の階層レベルに基づいてアクセスする段階を更に備え、
前記ダイナミックランダムアクセスメモリは、第１の部分及び第２の部分を含み、
前記第１の部分は、仮想メモリとして実装され、
前記第２の部分は、仮想メモリとしては実装されず、前記第１の部分より低い階層レベルを有する、
請求項２３から２７のいずれか一項に記載の方法。
【請求項３８】
第２のデータを転送するための、前記プロセッサからの複数の要求を受信する段階であって、前記複数の要求は第１の複数の物理アドレスを示す、段階と、
前記第１の複数の物理アドレスを複数の仮想アドレスに変換する段階と、
前記複数の仮想アドレスを第２の複数の物理アドレスに変換する段階であって、前記第２の複数の物理アドレスのうちのいくつかのアドレスは前記ダイナミックランダムアクセスメモリ中にあり、前記第２の複数の物理アドレスのうちのその他のアドレスは前記記憶ドライブ中にある、段階と、
前記第２の複数の物理アドレスに基づいて、（ｉ）前記プロセッサと前記ダイナミックランダムアクセスメモリとの間で前記第２のデータを転送するか、又は（ｉｉ）前記プロセッサと前記記憶ドライブとの間で前記第２のデータを転送するかを決定する段階とを更に備える
請求項２３から２７のいずれか一項に記載の方法。
【請求項３９】
前記最終レベルキャッシュモジュールはただ１つの集積回路によって実装される、
請求項２３から３８のいずれか一項に記載の方法。
【請求項４０】
前記ダイナミックランダムアクセスメモリの第１の複数のエントリのうちの１つのエントリにおける残りの記憶容量に基づいて、前記プロセッサと、前記記憶ドライブの第２の複数のエントリのうちの１つのエントリとの間でデータを転送する段階を更に備え、
前記第２の複数のエントリは前記第１の複数のエントリにマッピングされ、
前記第２の複数のエントリのうちの前記１つのエントリは、前記第１の複数のエントリのうちの前記１つのエントリにマッピングされる、
請求項２３から２７のいずれか一項に記載の方法。
【請求項４１】
前記ダイナミックランダムアクセスメモリ中の各エントリは、前記記憶ドライブ中の１又は複数のエントリにマッピングされる、
請求項４０に記載の方法。
【請求項４２】
前記ダイナミックランダムアクセスメモリ中の１又は複数のエントリは、前記記憶ドライブ中の１又は複数のエントリにマッピングされる、
請求項４０に記載の方法。
【請求項４３】
（ｉ）データの使用頻度、（ｉｉ）前記データの優先レベル、又は、（ｉｉｉ）前記データがロックされた状態にあるかどうか、のうち少なくとも１つに基づいて、前記ダイナミックランダムアクセスメモリ中に前記データを格納する段階を更に備える
請求項２３から２７のいずれか一項に記載の方法。