【手続補正書】
【提出日】平成30年5月1日(2018.5.1)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
システムバスを介してシステムメモリにアクセスするように構成されたメモリインターフェースと、
前記システムメモリ内のマスタディレクトリの以前に読み出されたマスタディレクトリメモリブロックを記憶するように各々が構成された複数のCIキャッシュエントリを備える圧縮インジケータ(CI)キャッシュと
を備える圧縮メモリコントローラであって、
前記システムメモリ内のメモリライン内のアクセスされるべきメモリブロックの物理アドレスを備えるメモリ読出し要求を受信し、
前記物理アドレスが前記CIキャッシュの前記複数のCIキャッシュエントリのうちのCIキャッシュエントリに対応するかどうかを決定し、
前記物理アドレスが前記CIキャッシュの前記複数のCIキャッシュエントリのうちのCIキャッシュエントリに対応しないことを決定することに応答して、
前記マスタディレクトリから前記物理アドレスに対応するCIを含むマスタディレクトリメモリブロックを読み出し、
前記CIキャッシュのCIキャッシュエントリに前記マスタディレクトリメモリブロックを書き込み、
前記CIキャッシュの前記CIキャッシュエントリから前記CIを読出し、
前記物理アドレスが前記CIキャッシュの前記複数のCIキャッシュエントリのうちのCIキャッシュエントリに対応することを決定することに応答して、前記CIキャッシュの前記CIキャッシュエントリから前記CIを読み出し、
前記CIに基づいて、前記メモリ読出し要求のために読み出す前記システムメモリ内の前記メモリライン内のメモリブロックの数を決定し、
前記物理アドレスにおいて開始する前記システムメモリ内の前記メモリライン内の前記決定された数のメモリブロックを読み出すように構成された、圧縮メモリコントローラ。
【請求項２】
前記CIが前記マスタディレクトリから読み出されるべきであることを確率的に決定することに応答して、前記マスタディレクトリメモリブロックを読み出すように構成され、
前記圧縮メモリコントローラがさらに、前記CIが前記マスタディレクトリから読み出されるべきではないことを確率的に決定することに応答して、前記メモリブロックに関連付けられた1つまたは複数の誤り訂正コード(ECC)ビットから前記CIを読み出すよう構成された、請求項1に記載の圧縮メモリコントローラ。
【請求項３】
前記CIキャッシュの前記CIキャッシュエントリに前記マスタディレクトリメモリブロックを書き込む前に、
前記CIキャッシュの現在のCIキャッシュエントリが追い出されるべきであるかどうかを決定し、
現在のCIキャッシュエントリが追い出されるべきであることを決定することに応答して、
前記現在のCIキャッシュエントリが修正されているかどうかを決定し、
前記現在のCIキャッシュエントリが修正されていることを決定することに応答して、前記マスタディレクトリに前記現在のCIキャッシュエントリを書き込むようにさらに構成された、請求項1に記載の圧縮メモリコントローラ。
【請求項４】
前記CIが前記マスタディレクトリから読み出されるべきであることを確率的に決定することにさらに応答して、前記マスタディレクトリメモリブロックを読み出すように構成され、
前記圧縮メモリコントローラがさらに、前記CIが前記マスタディレクトリから読み出されるべきではないことを確率的に決定することに応答して、前記メモリブロックに関連付けられた1つまたは複数の誤り訂正コード(ECC)ビットから前記CIを読み出すように構成された、請求項1に記載の圧縮メモリコントローラ。
【請求項５】
前記物理アドレスが前記CIキャッシュの前記複数のCIキャッシュエントリのうちの前記CIキャッシュエントリに対応するかどうかを決定することに並行して、前記システムメモリに早期メモリ読出し要求を送信するようにさらに構成され、
前記圧縮メモリコントローラが、前記物理アドレスが前記CIキャッシュの前記複数のCIキャッシュエントリのうちの前記CIキャッシュエントリに対応することを決定することに応答して、前記CIに基づいて前記早期メモリ読出し要求を修正するように構成されていることによって、前記決定された数のメモリブロックを読み出すように構成された、請求項1に記載の圧縮メモリコントローラ。
【請求項６】
前記物理アドレスが前記CIキャッシュの前記複数のCIキャッシュエントリのうちの前記CIキャッシュエントリに対応するかどうかを決定することに並行して、レベル4(L4)キャッシュ上のキャッシュ読出し動作を実行するようにさらに構成された、請求項1に記載の圧縮メモリコントローラ。
【請求項７】
前記CIによって示された圧縮パターンを決定するように構成されていることによって、前記CIに基づいて、前記メモリ読出し要求のために読み出す前記システムメモリ内の前記メモリライン内のメモリブロックの前記数を決定するように構成された、請求項1に記載の圧縮メモリコントローラ。
【請求項８】
前記CIが、ゼロのメモリブロックが読み出されるべきであることを示すゼロラインインジケータを備えることを決定するように構成されていることによって、前記CIによって示される前記圧縮パターンを決定するように構成された、請求項7に記載の圧縮メモリコントローラ。
【請求項９】
システムバスを介してシステムメモリにアクセスするように構成されたメモリインターフェースと、
前記システムメモリ内のマスタディレクトリの以前に読み出されたマスタディレクトリメモリブロックを記憶するように各々が構成された複数のCIキャッシュエントリを備える圧縮インジケータ(CI)キャッシュと
を備える圧縮メモリコントローラであって、
書込みデータと、前記システムメモリ内のメモリライン内の書き込まれるべきメモリブロックの物理アドレスとを備えるメモリ書込み要求を受信し、
前記書込みデータのための圧縮パターンを決定し、
前記圧縮パターンに基づいて前記書込みデータのためのCIを生成し、
前記物理アドレスが前記CIキャッシュの前記複数のCIキャッシュエントリのうちのCIキャッシュエントリに対応するかどうかを決定し、
前記物理アドレスが前記CIキャッシュの前記複数のCIキャッシュエントリのうちのCIキャッシュエントリに対応しないことを決定することに応答して、
前記マスタディレクトリ内の前記物理アドレスに対応する記憶されたCIを、前記生成されたCIで更新し、
前記CIキャッシュのCIキャッシュエントリに前記記憶されたCIを書き込み、
前記物理アドレスが前記CIキャッシュの前記複数のCIキャッシュエントリのうちのCIキャッシュエントリに対応することを決定することに応答して、
前記CIキャッシュの前記CIキャッシュエントリを前記生成されたCIで更新し、
前記生成されたCIに基づいて、前記システムメモリ内の前記メモリライン内の1つまたは複数のメモリブロックに前記書込みデータを書き込み、
前記システムメモリ内の前記メモリライン内の前記1つまたは複数のメモリブロックの各々の1つまたは複数の誤り訂正コード(ECC)ビット内に前記生成されたCIを書き込むように構成された、圧縮メモリコントローラ。
【請求項１０】
前記CIが前記マスタディレクトリ内で更新されるべきであることを確率的に決定することに応答して、前記記憶されたCIを更新するように構成された、請求項9に記載の圧縮メモリコントローラ。
【請求項１１】
前記マスタディレクトリが更新されるべきであることを確率的に決定することにさらに応答して、前記記憶されたCIを更新し、前記CIキャッシュの前記CIキャッシュエントリに前記記憶されたCIを書き込むように構成された、請求項9に記載の圧縮メモリコントローラ。
【請求項１２】
前記CIキャッシュの前記CIキャッシュエントリに前記記憶されたCIを書き込む前に、
前記CIキャッシュの現在のCIキャッシュエントリが追い出されるべきかどうかを決定し、
現在のCIキャッシュエントリが追い出されるべきであると決定することに応答して、
前記現在のCIキャッシュエントリが修正されているかどうかを決定し、
前記現在のCIキャッシュエントリが修正されていることを決定することに応答して、前記マスタディレクトリに前記CIキャッシュエントリを書き込むようにさらに構成された、請求項9に記載の圧縮メモリコントローラ。
【請求項１３】
メモリ読出し要求のためのメモリ帯域幅の圧縮を提供するための方法であって、
圧縮メモリコントローラによって、システムバスを介して、システムメモリ内のメモリライン内のアクセスされるべきメモリブロックの物理アドレスを備えるメモリ読出し要求を受信するステップと、
前記物理アドレスが圧縮インジケータ(CI)キャッシュの複数のCIキャッシュエントリのうちのCIキャッシュエントリに対応するかどうかを決定するステップと、
前記物理アドレスが前記CIキャッシュの前記複数のCIキャッシュエントリのうちのCIキャッシュエントリに対応しないことを決定することに応答して、
前記システムメモリ内のマスタディレクトリから前記物理アドレスに対応する圧縮インジケータ(CI)を含むマスタディレクトリメモリブロックを読み出すステップと、
前記CIキャッシュのCIキャッシュエントリに前記マスタディレクトリメモリブロックを書き込むステップと、
前記CIキャッシュの前記CIキャッシュエントリから前記CIを読み出すステップと、
前記物理アドレスが前記CIキャッシュの前記複数のCIキャッシュエントリのうちのCIキャッシュエントリに対応することを決定することに応答して、
前記CIキャッシュの前記CIキャッシュエントリから前記CIを読み出すステップと、
前記CIに基づいて、前記メモリ読出し要求のために読み出す前記システムメモリ内の前記メモリライン内のメモリブロックの数を決定するステップと、
前記物理アドレスにおいて開始する前記システムメモリ内の前記メモリライン内の前記決定された数のメモリブロックを読み出すステップと
を備える方法。
【請求項１４】
メモリ書込み要求のためのメモリ帯域幅の圧縮を提供するための方法であって、
圧縮メモリコントローラによって、システムバスを介して、書込みデータと、システムメモリ内のメモリライン内の書き込まれるべきメモリブロックの物理アドレスとを備えるメモリ書込み要求を受信するステップと、
前記書込みデータのための圧縮パターンを決定するステップと、
前記圧縮パターンに基づいて前記書込みデータのための圧縮インジケータ(CI)を生成するステップと、
前記物理アドレスに対応するCIがCIキャッシュの複数のCIキャッシュエントリのうちのCIキャッシュエントリ内に存在するかどうかを決定するステップと、
前記物理アドレスに対応するCIが前記CIキャッシュの前記複数のCIキャッシュエントリのうちのCIキャッシュエントリ内に存在しないことを決定することに応答して、
マスタディレクトリ内の前記物理アドレスに対応する記憶されたCIを前記生成されたCIで更新するステップと、
前記CIキャッシュのCIキャッシュエントリに前記記憶されたCIを書き込むステップと、
前記物理アドレスに対応するCIが前記CIキャッシュの前記複数のCIキャッシュエントリのうちのCIキャッシュエントリ内に存在することを決定することに応答して、
前記CIキャッシュの前記CIキャッシュエントリを前記生成されたCIで更新するステップと、
前記生成されたCIに基づいて、前記システムメモリ内の前記メモリライン内の1つまたは複数のメモリブロックに前記書込みデータを書き込むステップと、
前記システムメモリ内の前記メモリライン内の前記1つまたは複数のメモリブロックの各々の1つまたは複数の誤り訂正コード(ECC)ビット内に前記生成されたCIを書き込むステップと
を備える方法。