【手続補正書】
【提出日】平成20年8月12日(2008.8.12)
【手続補正１】
【補正対象書類名】明細書
【補正対象項目名】特許請求の範囲
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】  可変幅のコンテントアドレサブルメモリ（ＣＡＭ）デバイスであって、
可変幅の複数のデータを格納するための複数のＣＡＭブロックであって、各データは、１つまたはそれ以上の所定幅を有する１つまたはそれ以上のデータ部分を含んでおり、各ＣＡＭブロックは、各ＣＡＭブロックが前記データのうち所定幅の部分を格納することにより、前記各データが１つまたはそれ以上の前記ＣＡＭブロックに格納されるように構成されており、前記ＣＡＭブロックは、各検索データ部分が前記１つまたはそれ以上の所定幅を有する特定数の検索データ部分を含む検索データを受け取り、各ＣＡＭブロックは、前記ＣＡＭブロック内で前記検索データを検索するために、前記検索データ内の１つの検索データ部分を受け取る、前記複数のＣＡＭブロックと、
前記特定数の前記ＣＡＭブロックを連結させて１つまたはそれ以上の検索結果を生成するための複数のデュアルモード第１エンコーダであって、１セットの前記デュアルモード第１エンコーダは、前記検索データの幅に一致させるために前記特定数のＣＡＭブロックを連結するように構成されており、残りの前記デュアルモード第１エンコーダは、前記連結されたＣＡＭブロックが前記検索データと一致するデータを含む場合に、前記１つまたはそれ以上の検索結果を生成する、前記複数のデュアルモード第１エンコーダと、
を備える可変幅のＣＡＭデバイス。
【請求項２】  請求項１記載の可変幅のＣＡＭデバイスであって、
前記１つまたはそれ以上の検索結果は、前記ＣＡＭブロック内のアドレスであり、前記アドレスは、前記検索結果と一致する前記データの位置を特定するものである、可変幅のＣＡＭデバイス。
【請求項３】  請求項１記載の可変幅のＣＡＭデバイスであって、さらに、
前記１つまたはそれ以上の検索結果を受け取り、所定のアルゴリズムに従って、前記１つまたはそれ以上の検索結果の中の１つを出力のために選択する第２エンコーダを備える、可変幅のＣＡＭデバイス。
【請求項４】  請求項１記載の可変幅のＣＡＭデバイスであって、
前記各ＣＡＭブロックは複数のエントリを備えており、各エントリはデータフィールドとタグフィールドとを含み、前記データフィールドは、前記データの前記所定幅の部分を格納するように構成されており、前記タグフィールドは、前記データの全体の幅を示す１セットのタグビットを格納するように構成されている、可変幅のＣＡＭデバイス。
【請求項５】  請求項４記載の可変幅のＣＡＭデバイスであって、
各ＣＡＭブロック内の各エントリは、前記検索データの幅を示す１セットの入力タグビットを受け取り、各エントリは、前記入力タグビットが前記格納されたタグビットと一致し、かつ、前記データ部分が前記受け取られた検索データ部分と一致する場合に、一致結果を生成する、可変幅のＣＡＭデバイス。
【請求項６】  請求項５記載の可変幅のＣＡＭデバイスであって、
前記デュアルモード第１エンコーダのそれぞれは、前記ＣＡＭブロックの１つに関連付けられており、前記デュアルモード第１エンコーダは、前記デュアルモード第１エンコーダがディスエイブルにされた場合には、前記関連のＣＡＭブロックからの前記一致結果を転送し、前記第１エンコーダがイネーブルにされた場合には、前記検索結果を生成する、可変幅のＣＡＭデバイス。
【請求項７】  請求項６記載の可変幅のＣＡＭデバイスであって、
各エントリは、さらに、前記エントリに格納された前記所定幅のデータが有効か否かを示す有効ビットを格納するための有効ビットフィールドを含んでおり、各エントリは、前記有効ビットが前記エントリに格納された前記データが有効であることを示す場合にのみ、前記一致結果を生成する、可変幅のＣＡＭデバイス。
【請求項８】  請求項４記載の可変幅のＣＡＭデバイスであって、
前記各ＣＡＭブロック内の前記複数のエントリは、異なる行に配置されており、前記複数のデータのそれぞれのデータ内の前記所定幅の部分は１つの行内に格納されており、前記１セットのデュアルモード第１エンコーダは、前記連結されたＣＡＭブロック内の同じ行に配置された前記エントリを連結するように構成されている、可変幅のＣＡＭデバイス。
【請求項９】  請求項４記載の可変幅のＣＡＭデバイスであって、
前記各ＣＡＭブロック内の前記複数のエントリは、１つまたはそれ以上の行にインターリーブされている、可変幅のＣＡＭデバイス。
【請求項１０】  請求項１記載の可変幅のＣＡＭデバイスであって、
前記ＣＡＭブロックは、複数のクロックサイクルに渡って、前記検索データを順次検索する、可変幅のＣＡＭデバイス。
【請求項１１】  請求項１記載の可変幅のＣＡＭデバイスであって、
前記各ＣＡＭブロックは、１つのクロックサイクル内で、関連する検索データ部分を並行して検索する、可変幅のＣＡＭデバイス。
【請求項１２】  可変幅のコンテントアドレサブルメモリ（ＣＡＭ）デバイスであって、
複数の幅を有する複数のデータを格納するための複数のＣＡＭブロックであって、各ＣＡＭブロックは複数のエントリを有しており、各エントリは、前記複数のデータのうちの１つのデータ内の所定幅のデータ部分を格納するように構成されており、前記複数のデータのそれぞれは、異なるＣＡＭブロック内に配置された１つまたはそれ以上のエントリ内に格納されており、前記ＣＡＭブロックは、各ＣＡＭブロックが前記所定幅を有する１つの検索データ部分を受け取るために、特定数の検索データ部分を含む検索データを受け取るように構成されており、前記ＣＡＭブロック内の各エントリは、前記各エントリ内の前記所定幅のデータ部分が前記所定幅の前記検索データ部分と一致する場合に、一致結果を生成することができる、前記複数のＣＡＭブロックと、
前記複数のＣＡＭブロックを順次特定数連結させて前記検索データの幅に一致させるための複数の第１エンコーダであって、各第１エンコーダは、１つのＣＡＭブロックに関連付けられ、前記関連のＣＡＭブロック内の前記エントリからの前記一致結果を受け取り、１セットの前記第１エンコーダは、前記関連のＣＡＭブロックからの前記一致結果を、順次連結された次のＣＡＭブロックに入力として引き渡し、残りの前記各第１エンコーダは、前記順次連結されたＣＡＭブロックが前記検索データと一致するデータを含む場合に、検索結果を生成する、前記複数の第１エンコーダと
を備える、可変幅のＣＡＭデバイス。
【請求項１３】  請求項１２記載の可変幅のＣＡＭデバイスであって、さらに、
前記残りの第１エンコーダに接続されて、１つまたはそれ以上の前記検索結果を受け取る第２エンコーダであって、所定のアルゴリズムに従って、前記受け取った検索結果の中の１つを出力のために選択する、前記第２エンコーダを備える、可変幅のＣＡＭデバイス。
【請求項１４】  請求項１２記載の可変幅のＣＡＭデバイスであって、
前記複数の幅を有する前記複数のデータのそれぞれは、前記ＣＡＭブロック内の１つまたはそれ以上のエントリに格納されており、前記１つまたはそれ以上のエントリは、前記ＣＡＭブロックのいずれのブロックからも１つのエントリのみを含む、可変幅のＣＡＭデバイス。
【請求項１５】  請求項１２記載の可変幅のＣＡＭデバイスであって、
前記ＣＡＭブロック内の各エントリは、データフィールドとタグフィールドとを含み、前記データフィールドは、前記データの前記所定幅のデータ部分を格納するように構成されており、前記タグフィールドは、前記所定幅のデータ部分に関連付けられた前記データの幅を示す１セットのタグビットを格納する、可変幅のＣＡＭデバイス。
【請求項１６】  請求項１５記載の可変幅のＣＡＭデバイスであって、
各ＣＡＭブロック内の各エントリは、前記検索データの幅を示す１セットの入力タグビットを受け取り、各エントリは、前記入力タグビットが前記格納されたタグビットと一致し、かつ、前記格納された所定幅のデータ部分が前記検索データの前記受け取られた部分と一致する場合に、前記一致結果を生成する、可変幅のＣＡＭデバイス。
【請求項１７】  請求項１２記載の可変幅のＣＡＭデバイスであって、
前記各第１エンコーダは、前記各第１エンコーダがディスエイブルにされた場合には、前記関連のＣＡＭブロックからの前記検索結果を転送し、前記各第１エンコーダがイネーブルにされた場合には、前記検索結果の１つを生成する、可変幅のＣＡＭデバイス。
【請求項１８】  請求項１６記載の可変幅のＣＡＭデバイスであって、
各エントリは、前記エントリに格納された前記データ部分が有効か否かを示す有効ビットを格納するための有効ビットフィールドを含んでおり、各エントリは、前記有効ビットが前記エントリに格納された前記データ部分が有効であることを示す場合にのみ、前記一致結果を生成する、可変幅のＣＡＭデバイス。
【請求項１９】  請求項１２記載の可変幅のＣＡＭデバイスであって、
前記各ＣＡＭブロック内の前記複数のエントリは、異なる行に配置されており、前記複数のデータのそれぞれのデータ内の前記所定幅の部分は１つの行内に格納されており、前記１セットの第１エンコーダの各第１エンコーダは、前記次のＣＡＭブロックの同じ行に配置された前記エントリに、前記関連のＣＡＭブロックからの前記一致結果を転送するように構成されている、可変幅のＣＡＭデバイス。
【請求項２０】  請求項１２記載の可変幅のＣＡＭデバイスであって、
前記各ＣＡＭブロック内の前記複数のエントリは、１つまたはそれ以上の行にインターリーブされている、可変幅のＣＡＭデバイス。
【請求項２１】  請求項１２記載の可変幅のＣＡＭデバイスであって、
前記ＣＡＭブロックは、複数のクロックサイクルに渡って、前記検索データを順次検索する、可変幅のＣＡＭデバイス。
【請求項２２】  請求項１２記載の可変幅のＣＡＭデバイスであって、
前記各ＣＡＭブロックは、１つのクロックサイクル内で、関連する検索データ部分を並行して検索する、可変幅のＣＡＭデバイス。
【請求項２３】  可変幅のコンテントアドレサブルメモリ（ＣＡＭ）デバイスであって、
可変幅のデータを格納するための複数のＣＡＭブロックであって、各ＣＡＭブロックは複数のエントリを有し、各エントリは第１の幅のデータを格納するように構成されており、各ＣＡＭブロックは、前記各ＣＡＭブロック内の各エントリへの入力のために、検索データのうちの第１の幅の検索データ部分を受け取り、前記ＣＡＭブロック内の各エントリは、前記各エントリ内の前記データが前記第１の幅の前記検索データ部分と一致する場合に、一致結果を生成することができる、前記複数のＣＡＭブロックと、
前記複数のＣＡＭブロックの前記エントリを連結させるための複数の第１エンコーダであって、各第１エンコーダは、１つのＣＡＭブロックに関連付けられ、前記関連のＣＡＭブロック内の前記エントリからの前記一致結果を受け取り、各第１エンコーダは、前記一致結果を、順次連結された次のＣＡＭブロックに、前記次のＣＡＭブロックの前記エントリへの入力として転送するように構成されており、１セットの前記第１エンコーダは、前記一致結果を転送し、１つまたはそれ以上のＣＡＭブロック内の前記エントリを連結させることにより前記連結されたエントリの幅が前記検索データと一致するように適合されており、前記残りの第１エンコーダのそれぞれは、前記連結されたエントリの一致結果に応じて検索結果を生成する、前記複数の第１エンコーダと、
前記複数の第１エンコーダに接続されて、１つまたはそれ以上の前記検索結果を受け取る第２エンコーダであって、前記受け取った検索結果の中の１つを出力のために選択する、前記第２エンコーダと、
を備える可変幅のＣＡＭデバイス。
【請求項２４】  請求項２３記載の可変幅のＣＡＭデバイスであって、
前記各ＣＡＭブロック内の前記複数のエントリは、異なる行に配置されており、前記可変幅のデータのそれぞれのデータ内の前記第１の幅の部分はそれぞれ１つの行内に格納されており、前記１セットの第１エンコーダの各第１エンコーダは、前記次のＣＡＭブロックの同じ行に配置された前記エントリに、前記関連のＣＡＭブロックからの前記一致結果を転送するように構成されている、可変幅のＣＡＭデバイス。
【請求項２５】  請求項２３記載の可変幅のＣＡＭデバイスであって、
前記各ＣＡＭブロック内の前記複数のエントリは、１つまたはそれ以上の行にインターリーブされている、可変幅のＣＡＭデバイス。
【請求項２６】  請求項２３記載の可変幅のＣＡＭデバイスであって、
前記ＣＡＭブロックは、複数のクロックサイクルに渡って、前記検索データを順次検索する、可変幅のＣＡＭデバイス。
【請求項２７】  請求項２３記載の可変幅のＣＡＭデバイスであって、
前記各ＣＡＭブロックは、１つのクロックサイクル内で、関連する検索データ部分を並行して検索する、可変幅のＣＡＭデバイス。
【請求項２８】  請求項２４記載の可変幅のＣＡＭデバイスであって、
前記可変幅のデータのそれぞれは、前記ＣＡＭブロック内の１つまたはそれ以上のエントリに格納されており、前記１つまたはそれ以上のエントリは、前記ＣＡＭブロックのいずれのブロックからも１つのエントリのみを含む、可変幅のＣＡＭデバイス。
【請求項２９】  請求項２３記載の可変幅のＣＡＭデバイスであって、
前記ＣＡＭブロック内の各エントリは、タグフィールドとデータフィールドとを含み、前記データフィールドは、前記可変幅のデータの前記第１の幅の部分を格納するように構成されており、前記タグフィールドは、前記第１の幅の部分に関連付けられた前記可変幅のデータの幅を示す１セットのタグビットを格納する、可変幅のＣＡＭデバイス。
【請求項３０】  請求項２９記載の可変幅のＣＡＭデバイスであって、
各ＣＡＭブロック内の各エントリは、前記検索データの幅を示す１セットの入力タグビットを受け取り、各エントリは、前記入力タグビットが前記格納されたタグビットと一致し、かつ、前記格納されたデータが前記検索データの前記受け取られた部分と一致する場合に、前記一致結果を生成する、可変幅のＣＡＭデバイス。
【請求項３１】  請求項２９記載の可変幅のＣＡＭデバイスであって、
各エントリは、前記エントリに格納された前記データが有効か否かを示す有効ビットを格納するための有効ビットフィールドを含んでおり、各エントリは、前記有効ビットが前記エントリに格納された前記データが有効であることを示す場合にのみ、前記一致結果を生成する、可変幅のＣＡＭデバイス。
【請求項３２】  コンテントアドレサブルメモリデバイスであって、
可変幅の複数のデータを格納するための複数のコンテントアドレサブルなメモリブロックであって、各メモリブロックが複数のデータエントリを格納する複数のコンテントアドレサブルメモリブロックと、
第１のモードにおいて、検索語と、関連するメモリブロック内のデータエントリとの比較に基づいて検索結果を生成し、第２のモードにおいて、前記検索語との比較のために、前記複数のメモリブロックからの対応するデータエントリを連結する論理回路と、
を備えるコンテントアドレサブルメモリデバイス。
【請求項３３】  請求項３２記載のコンテントアドレサブルメモリデバイスであって、
前記論理回路は、各メモリブロックに関連づけられたエンコーダを含み、各エンコーダは前記第１のモード及び前記第２のモードで動作する、コンテントアドレサブルメモリデバイス。
【請求項３４】  請求項３３記載のコンテントアドレサブルメモリデバイスであって、
前記第１のモードにおける前記検索結果は少なくとも１つのメモリブロックのアドレスを含み、
前記第２のモードにおいて、前記エンコーダは一致した結果を１つのメモリブロックから他のメモリブロックに送信する、コンテントアドレサブルメモリデバイス。
【請求項３５】  請求項３２記載のコンテントアドレサブルメモリデバイスであって、
各データエントリは、データフィールドとタグフィールドとを含み、前記タグフィールドは、前記データフィールドを含むデータを格納するために使用されるメモリブロック数を示す、コンテントアドレサブルメモリデバイス。