(57)【特許請求の範囲】
【請求項１】
データ処理のためのシステムであって、
集積回路内の１又は２以上の回路、
を含み、
前記１又は２以上の回路は、
トークンビットを含む第１の単項数として第１の加数を符号化し、
第２の単項数として第２の加数を符号化し、
前記第２の単項数に基づいて前記第１の単項数内の前記トークンビットに対して第１のシフト演算を実行して出力単項数を発生させ、かつ
前記発生された出力単項数を前記第１の加数及び／又は前記第２の加数に対応する数表現に復号し、該復号された数表現が、該第１の加数及び該第２の加数の合計を示し、
前記第１の加数及び前記第２の加数の前記合計を示す前記復号された数表現に基づいて電圧制御式発振器（ＶＣＯ）のための制御信号を発生させる更新情報を決定するように構成される、
ことを特徴とするシステム。
【請求項２】
前記第１の加数の前記符号化は、トークン符号器によって実行され、
前記第２の加数の前記符号化は、シフト符号器によって実行され、
前記トークンビットに対する前記第１のシフト演算は、トークンシフターによって実行され、
前記発生された出力単項数の前記復号は、トークン復号器によって実行される、
ことを特徴とする請求項１に記載のシステム。
【請求項３】
前記第１のシフト演算は、前記第２の単項数に基づいて前記第１の単項数内の前記トークンビットの位置のシフトに対応し、前記出力単項数を発生させることを特徴とする請求項１に記載のシステム。
【請求項４】
前記１又は２以上の回路は、時間インスタンスでの入力信号の信号エッジと基準信号の別の信号エッジとの比較に基づいて多状態信号を発生するように構成され、
前記発生された多状態信号は、位相誤差情報を表す、
ことを特徴とする請求項１に記載のシステム。
【請求項５】
前記１又は２以上の回路は、前記位相誤差情報が予め決められた閾値よりも大きいか否かを検出するように構成され、
少なくとも前記第１のシフト演算は、前記位相誤差情報が前記予め決められた閾値よりも大きいときに実行される、
ことを特徴とする請求項４に記載のシステム。
【請求項６】
前記１又は２以上の回路は、前記発生された出力単項数内の前記トークンビットの位置に基づいて電圧制御式発振器（ＶＣＯ）のための制御信号を発生させる更新情報を決定するように構成され、
前記制御信号は、前記ＶＣＯの周波数を調節するのに使用され、
前記調節された周波数は、基準信号に対応する、
ことを特徴とする請求項４に記載のシステム。
【請求項７】
前記１又は２以上の回路は、前記位相誤差情報の２進コード化数へのコード化を実行するように構成されることを特徴とする請求項４に記載のシステム。
【請求項８】
前記コード化された位相誤差情報を１又は２以上のビットとして格納するように構成されたメモリ要素を更に含み、
前記１又は２以上のビットは、前記２進コード化数を表す、
ことを特徴とする請求項７に記載のシステム。
【請求項９】
前記発生された出力単項数内の前記トークンビットの位置のシフトが、前記格納された前記コード化された位相誤差情報に対応する前記２進コード化数の数値の増分又は減分を示すことを特徴とする請求項８に記載のシステム。
【請求項１０】
前記第１の加数は、前記格納された２進コード化数に対応し、前記第２の加数は、着信する位相誤差情報に対応することを特徴とする請求項８に記載のシステム。
【請求項１１】
前記１又は２以上の回路は、第３の単項数に基づいて前記発生された出力単項数内の前記トークンビットの位置に対して第２のシフト演算を実行するように構成され、
前記第３の単項数は、着信する位相誤差情報に対応する符号化された第３の加数である、
ことを特徴とする請求項８に記載のシステム。
【請求項１２】
前記第２のシフト演算は、前記着信する位相誤差情報がゼロに等しくないか又は予め決められた閾値よりも大きいときに実行されることを特徴とする請求項１１に記載のシステム。
【請求項１３】
前記第１の単項数の前記トークンビットのビット値が、該第１の単項数に対応する他のビットのビット値とは異なっていることを特徴とする請求項１に記載のシステム。
【請求項１４】
データ処理のためのシステムであって、
集積回路内の１又は２以上の回路、
を含み、
前記１又は２以上の回路は、
トークンビットを含む第１の単項数として第１の加数を符号化し、
第２の単項数として第２の加数を符号化し、
前記第２の単項数に基づいて前記第１の単項数内の前記トークンビットに対して第１のシフト演算を実行して出力単項数を発生させ、かつ
前記発生された出力単項数を前記第１の加数及び／又は前記第２の加数に対応する数表現に復号し、該復号された数表現が、該第１の加数及び該第２の加数の合計を示す、
ように構成され、
前記第１の単項数は、ｎ数のワイヤのセットによって表されるｎビット幅トークンに対応し、
前記ｎビット幅トークン内の前記トークンビットの位置が、前記第１の加数の値を示す、
ことを特徴とするシステム。
【請求項１５】
データ処理のためのシステムであって、
集積回路内の１又は２以上の回路、
を含み、
前記１又は２以上の回路は、
トークンビットを含む第１の単項数として第１の加数を符号化し、
第２の単項数として第２の加数を符号化し、
前記第２の単項数に基づいて前記第１の単項数内の前記トークンビットに対して第１のシフト演算を実行して出力単項数を発生させ、かつ
前記発生された出力単項数を前記第１の加数及び／又は前記第２の加数に対応する数表現に復号し、該復号された数表現が、該第１の加数及び該第２の加数の合計を示し、
トークンシフターの入力からの前記第１の単項数の前記トークンビットを前記第１のシフト演算において該トークンシフターの出力に経路指定して前記出力単項数を発生させる
ように構成され、
前記経路指定は、前記第２の単項数の制御の下で前記トークンシフターの複数の経路指定経路から経路指定経路を選択することによって実行される、
ことを特徴とするシステム。
【請求項１６】
データ処理の方法であって、
集積回路内の１又は２以上の回路により、トークンビットを含む第１の単項数として第１の加数を符号化する段階と、
前記１又は２以上の回路により、第２の単項数として第２の加数を符号化する段階と、
前記１又は２以上の回路により、前記第２の単項数に基づいて前記第１の単項数内の前記トークンビットに対して第１のシフト演算を実行して出力単項数を発生させる段階と、
１又は２以上の回路により、前記発生された出力単項数を前記第１の加数及び前記第２の加数に対応する数表現に復号する段階であって、該復号された数表現が、該第１の加数及び該第２の加数の合計を示す、前記復号する段階と、
前記１又は２以上の回路により、前記第１の加数及び前記第２の加数の前記合計を示す前記復号された数表現に基づいて電圧制御式発振器（ＶＣＯ）のための制御信号を発生させる更新情報を決定する段階と、
を含むことを特徴とする方法。
【請求項１７】
前記第１のシフト演算は、前記第２の単項数に基づいて前記第１の単項数内の前記トークンビットの位置のシフトに対応し、前記出力単項数を発生させることを特徴とする請求項１６に記載の方法。
【請求項１８】
データ処理の方法であって、
集積回路内の１又は２以上の回路により、トークンビットを含む第１の単項数として第１の加数を符号化する段階と、
前記１又は２以上の回路により、第２の単項数として第２の加数を符号化する段階と、
前記１又は２以上の回路により、前記第２の単項数に基づいて前記第１の単項数内の前記トークンビットに対して第１のシフト演算を実行して出力単項数を発生させる段階と、
１又は２以上の回路により、前記発生された出力単項数を前記第１の加数及び前記第２の加数に対応する数表現に復号する段階であって、該復号された数表現が、該第１の加数及び該第２の加数の合計を示す、前記復号する段階と、
を含み、
前記第１の単項数は、ｎ数のワイヤのセットによって表されるｎビット幅トークンに対応し、
前記ｎビット幅トークン内の前記トークンビットの位置が、前記第１の加数の値を示す、
ことを特徴とする方法。
【発明の詳細な説明】
【技術分野】
【０００１】
〔関連出願への相互参照／引用による組み込み〕
該当なし
【０００２】
本発明の開示の様々な実施形態は、加算器ベースの回路内のデータの処理に関する。より具体的には、本発明の開示の様々な実施形態は、複数の加数の合計のための加算器ベースの回路内のデータの処理に関する。
【背景技術】
【０００３】
集積回路（ＩＣ）処理及び／又は設計技術における最近の進歩により、継続して進歩するデータ処理技術を補足するための加算器の役割も増大している。加算器は、コンピュータ、プロセッサ、及び／又は「デジタル位相ロックループ（ＤＰＬＬ）」回路、「デジタルシグナルプロセッサ（ＤＳＰ）のための「乗累算（ＭＡＣ）」回路、及び／又は高周波数クロックソースの発生のために高速データの送信を必要とする回路のような他のデジタル集積回路の作動に関して極めて重要であると考えられる。
【発明の概要】
【発明が解決しようとする課題】
【０００４】
現在、ほとんどのデジタルＩＣは、一度に単一対の数に対してデータ処理演算を実行する。データ処理演算は、通常は、表現のために多数のビットを必要とする大数を取り扱うように調整される。ある一定のシナリオでは、大量の小数を取り扱うデータ処理演算が必要な時は、従来の加算器の使用による従来のデータ処理技術は、待ち時間、電力、及び／又はエリアに関連する処理性能に対して報いを受ける。従って、複数の加数を最適な方式で加算及び／又は減算することができる高度な加算器ベースの回路内でデータを処理する効率的な技術又は機構が必要であると考えられる。
【０００５】
従来のかつ慣例的な手法の更に別の制限及び欠点は、上述のシステムと本出願の残りに示されるようなかつ図面を参照した本発明の開示の一部の態様との比較を通して当業者に明らかになるであろう。
【課題を解決するための手段】
【０００６】
特許請求の範囲により完全に示すような実質的に図の少なくとも１つに示され及び／又はそれに関連して説明する加算器ベースの回路内でデータを処理するためのシステム及び方法。
【０００７】
本発明の開示のこれら及び他の特徴及び利点は、同じ参照番号が全体を通して同じ部分を示す添付図面と共に本発明の開示の以下の詳細説明の精査から認めることができる。
【図面の簡単な説明】
【０００８】
【図１Ａ】本発明の開示の実施形態による開示のシステム及び方法の実施のための集積回路の例示的トップレベル図を示すブロック図である。
【図１Ｂ】本発明の開示の実施形態による開示のシステム及び方法の実施のための集積回路内のＤｅＭＵＸ、位相検出器論理部、及びデジタルループフィルタに関する信号フローを示すブロック図である。
【図１Ｃ】本発明の開示の実施形態による開示のシステム及び方法の実施のための集積回路内のＤｅＭＵＸ、位相検出器論理部、及びデジタルループフィルタに関する信号フローを示すブロック図である。
【図２Ａ】本発明の開示の実施形態による加算器の例示的回路アーキテクチャを示すブロック図である。
【図２Ｂ】本発明の開示の実施形態による加算器の例示的回路アーキテクチャを示すブロック図である。
【図３Ａ】本発明の開示の実施形態による加算器内の加数の符号化に関連するデータ処理演算を示す図である。
【図３Ｂ】本発明の開示の実施形態による加算器内の加数の符号化に関連するデータ処理演算を示す図である。
【図３Ｃ】本発明の開示の実施形態による加算器内の加数の符号化に関連するデータ処理演算を示す図である。
【図４Ａ】本発明の開示の実施形態による加算器内のトークンシフト機構に関連するデータ処理演算を示す図である。
【図４Ｂ】本発明の開示の実施形態による加算器内のトークンシフト機構に関連するデータ処理演算を示す図である。
【図４Ｃ】本発明の開示の実施形態による加算器内のトークンシフト機構に関連するデータ処理演算を示す図である。
【図４Ｄ】本発明の開示の実施形態による加算器内のトークンシフト機構に関連するデータ処理演算を示す図である。
【図４Ｅ】本発明の開示の実施形態による加算器内のトークンシフト機構に関連するデータ処理演算を示す図である。
【図４Ｆ】本発明の開示の実施形態による加算器内のトークンシフト機構に関連するデータ処理演算を示す図である。
【図４Ｇ】本発明の開示の実施形態による加算器内のトークンシフト機構に関連するデータ処理演算を示す図である。
【図５Ａ】本発明の開示の実施形態による加算器ベースの回路内でデータを処理する開示のシステム及び方法の実施のための第１の例示的シナリオを示す図である。
【図５Ｂ】本発明の開示の実施形態による加算器ベースの回路内でデータを処理する開示のシステム及び方法の実施のための第１の例示的シナリオを示す図である。
【図６】本発明の開示の実施形態による加算器ベースの回路内でデータを処理する開示のシステム及び方法の実施のための第２の例示的シナリオを示す図である。
【図７】本発明の開示の実施形態による加算器ベースの回路内でデータを処理する開示のシステム及び方法の実施のための第３の例示的シナリオを示す図である。
【図８】本発明の開示の実施形態により加算器内でデータを処理する例示的方法を示す流れ図である。
【図９Ａ】本発明の開示の実施形態による加算器ベースの回路内でデータを処理する別の例示的方法を示す別の流れ図を図９Ｂと共同で示す図である。
【図９Ｂ】本発明の開示の実施形態による加算器ベースの回路内でデータを処理する別の例示的方法を示す別の流れ図を図９Ａと共同で示す図である。
【発明を実施するための形態】
【０００９】
以下に説明する実施は、加算器ベースの回路内でデータを処理する開示のシステム及び方法に見出すことができる。本発明の開示の例示的態様は、第１の単項数として第１の加数を符号化するように構成することができるシステムを含むことができる。第１の単項数は、トークンビットを含むことができる。第２の加数は、第２の単項数として符号化することができる。第１シフト演算は、第２の単項数に基づいて第１の単項数内のトークンビットに対して実行することができる。第１シフト演算を実行して出力単項数を発生させることができる。発生された出力単項数は、第１の加数及び／又は第２の加数の数表現に対応することができる数表現に復号することができる。実施形態により、復号された数表現は、第１の加数及び第２の加数の合計を示すことができる。
【００１０】
実施形態により、第１の加数は、トークン符号器によって符号化することができる。第２の加数は、シフト符号器によって符号化することができる。トークンビットに対するシフト演算は、トークンシフターによって実行することができる。発生された出力単項数は、トークン復号器によって復号することができる。
【００１１】
実施形態により、シフト演算は、第２の単項数に基づく第１の単項数内のトークンビットの位置のシフトに対応することができる。第１の単項数内のトークンビットの位置をシフトするシフト演算を実行して出力単項数を発生させることができる。実施形態により、ある時間インスタントでの入力信号の信号エッジと基準信号の別の信号エッジの比較に基づいて３状態信号のような多状態信号を発生させることができる。発生された多状態信号は、位相誤差情報を表すことができる。
【００１２】
実施形態により、位相誤差情報がゼロのような予め決められた閾値よりも小さいか又は等しいか否かは検出することができる。位相誤差情報が予め決められた閾値よりも大きい時に、第１のシフト演算を実行することができる。
【００１３】
実施形態により、位相誤差情報は、２進コード化数にコード化することができる。コード化された位相誤差情報は、１又は２以上のビットとしてメモリ要素に格納することができる。１又は２以上のビットは、２進コード化数を表すことができる。発生された出力単項数内のトークンビットの位置のシフトは、２進コード化数の数値の増分又は減分を示すことができる。実施形態により、２進コード化数は、格納かつコード化された位相誤差情報に対応することができる。
【００１４】
実施形態により、発生された出力単項数内のトークンビットの位置に第２のシフト演算を実行することができる。第２のシフト演算は、第３の単項数に基づくことができる。実施形態により、第３の単項数は、符号化された第３の加数とすることができる。符号化された第３の加数は、着信する位相誤差情報に対応することができる。
【００１５】
実施形態により、着信する位相誤差情報がゼロに等しくないか又は予め決められた閾値よりも大きい時に、第２のシフト演算を実行することができる。第１の加数は、格納された２進コード化数に対応することができる。第２の加数は、着信する位相誤差情報に対応することができる。
【００１６】
実施形態により、電圧制御式発振器（ＶＣＯ）のための制御信号を発生させる更新情報を決定することができる。更新情報は、発生された出力単項数内のトークンビットの位置に基づいて決定することができる。制御信号を使用してＶＣＯの周波数を調節することができる。調節された周波数は、基準信号に対応することができる。
【００１７】
実施形態により、ＶＯＣの制御信号を発生させる更新情報は、第１の加数と第２の加数の合計を示す復号された数表現に基づいて決定することができる。実施形態により、第１の単項数のトークンビットのビット値は、第１の単項数に対応する他のビットのビット値とは異なる場合がある。実施形態により、第１の単項数は、ｎビット幅トークンを含むことができる。ｎビット幅トークンは、ｎ数のワイヤのセットによって表すことができる。ｎビット幅トークン内のトークンビットの位置は、第１の加数の値を示すことができる。
【００１８】
図１Ａは、本発明の開示の実施形態によりデータを処理する開示のシステム及び方法の実施のための集積回路の例示的トップレベル図を示すブロック図である。図１Ａを参照すると、デジタル位相ロックループ（ＤＰＬＬ）１００ａのための集積回路のトップレベル図が示されている。ＤＰＬＬ１００は、データサンプラー１０２、分割器１０４、デマルチプレクサ（ＤｅＭＵＸ）１０６、デジタル位相検出器論理部１０８、デジタルループフィルタ１１０、デジタル／アナログコンバータ（ＤＡＣ）１１２、及び電圧制御式発振器（ＶＣＯ）１１４のような１又は２以上の回路を含むことができる。デジタルループフィルタ１１０は、デジタル位相検出器論理部１０８及びＤＡＣ１１２に通信的に結合することができる。
【００１９】
データサンプラー１０２は、ＶＣＯ１１４からのクロック信号（基準入力）を使用することによって入力データをサンプリングするように構成することができる適切な論理部、回路、コード、及び／又はインタフェースを含むことができる。データサンプラー１０２の例は、以下に限定されるものではないが、Ｎｙｑｕｉｓｔデータサンプリングベースのサンプラー、及び／又はゼロ交差サンプラー、及び／又は当業技術で公知の他のデータサンプラーを含むことができる。
【００２０】
分割器１０４は、着信信号の周波数を分割するように構成することができる適切な論理部、回路、インタフェース、及び／又はコードを含むことができる。分割器１０４の出力は、ＤｅＭＵＸ１０６へのクロックとして作用することができる。分割器１０４の出力の一部分は、ＤｅＭＵＸ１０６からデジタル位相検出器論理部１０８にフィードバックすることができる。
【００２１】
ＤｅＭＵＸ１０６は、図示のようにデータ信号をいくつかの出力行に分配するように構成することができる適切な論理部、回路、インタフェース、及び／又はコードを含むことができる。ＤｅＭＵＸ１０６は、分割器１０４からクロック信号、及びデータサンプラー１０２からデジタルデータ出力信号を受信するように構成することができる。ＤｅＭＵＸ１０６は、回復データ及び回復クロックを出力することができる。
【００２２】
デジタル位相検出器論理部１０８は、データサンプラー１０２に関連付けられた入力信号のエッジの相対タイミングを比較することによって位相誤差信号を検出することができる適切な論理部、回路、インタフェース、及び／又はコードを指す場合がある。実施において、データサンプラー１０２、ＤｅＭＵＸ１０６、及びデジタル位相検出器論理部１０８は、バングバング位相検出器を使用することによるなどで単一ユニット内に実施することができる。それにも関わらず、他のタイプの位相検出器を利用して、本発明の開示の範囲を制限することなく図１Ａに示されているデジタル位相検出器論理部１０８及び／又は１又は２以上の他のユニットの機能を実行することができる。従って、本発明の開示の範囲を制限することなく、図１Ａに説明する１又は２以上の他のユニットは、組み合わせて又は個別のエンティティとして実施することができる。他のタイプの位相検出器の例は、ＸＯＲ位相検出器、エッジトリガ式ＪＫフリップフロップ位相周波数検出器、デュアルＤタイプ位相比較器、及び／又は他のタイプＩ位相検出器又はタイプＩＩ位相検出器などを指す場合がある。これに代えて、実施形態により、着信信号が同じ周波数である時に、デジタル位相検出器論理部１０８は、印加された入力信号のエッジの相対タイミングを比較することによって位相誤差信号を検出することができる。基準ソースからのデジタルデータ入力信号が１つの入力信号として給送され、ＶＣＯ１１４の出力からの基準信号が別の入力信号としてデジタル位相検出器論理部１０８に給送される。デジタル位相検出器論理部１０８は、入力信号の位相が基準信号の位相よりも遅れるか否かを検出して位相誤差情報を発生させることができる。
【００２３】
デジタルループフィルタ１１０は、ＤＰＬＬ１００の動的挙動及び安定性を制御するように構成することができる適切な論理部、回路、インタフェース、及び／又はコードを含むことができる。デジタルループフィルタ１１０を使用して、ＶＣＯ１１４の望ましい作動を阻害する場合がある望ましくない誤った信号を取り除くことができる。デジタルループフィルタ１１０の１又は２以上の部分は、デジタルループフィルタ１１０の転送機能を利用するように構成することができ、それによってデジタルループフィルタ１１０は、受信した入力位相誤差信号を時間で積分することによって制御信号を出力することができる。実施形態により、デジタルループフィルタ１１０とデジタル位相検出器論理部１０８（又は存在する時はバングバング位相検出器）の間の接続は、図１Ｂ及び１Ｃに示すように図示かつ説明される。実施形態により、複数の加数を利用して、位相誤差情報を最小にすることができる。実施形態により、デジタルループフィルタ１１０は、以下に限定されるものではないが、有限インパルス応答（ＦＩＲ）フィルタ又は無限インパルス応答（ＩＩＲ）フィルタに基づいて実施することができる。実施形態により、デジタル位相検出器論理部１０８及びデジタルループフィルタ１１０は、単一エンティティとして実施することができる（図１Ａに図示）。
【００２４】
ＤＡＣ１１２は、デジタルループフィルタ１１０から受信したデジタルデータ信号をアナログデータ信号に変換するように構成することができる適切な論理部、回路、及び／又はインタフェースを含むことができる。アナログデータ信号は、ＶＣＯ１１４に更に送信することができる。ＤＡＣ１１２の例は、以下に限定されるものではないが、逐次比較ＤＡＣ、Ｒ−２ＲラダーＤＡＣ、２進加重ＤＡＣ、単項加重ＤＡＣ、セグメント化ＤＡＣ、サーモメータ符号化ＤＡＣ、及び／又はハイブリッドＤＡＣを含むことができる。
【００２５】
ＶＣＯ１１４は、ＤＡＣ１１２を通じてデジタルループフィルタ１１０から制御信号（電圧制御信号など）を受信するように構成することができる適切な論理部、回路、コード、及び／又はインタフェースを含むことができる。ＶＣＯ１１４は、受信した制御信号に基づいて、複数のＶＣＯサイクルを通じて位相誤差情報を最小にすることができるクロック信号を発生するように発振器（ＶＣＯ１１４）の周波数を調節することができる。発生されたクロック信号は、デジタル位相検出器論理部１０８の入力の基準信号とすることができる。ＶＣＯ１１４の実施のための例は、以下に限定されるものではないが、アナログ電圧制御式発振器、デジタル制御発振器（ＤＣＯ）、及び／又は数値制御発振器（ＮＣＯ）を含むことができる。実施において、ＶＣＯ１１４は、アナログ電圧制御式発振器とすることができる。アナログ電圧制御信号を供給するために、デジタル制御信号とすることができるデジタルループフィルタ１１０からの制御信号をアナログ制御信号に変換するためにＤＡＣ１１２を利用することができる。実施形態により、ＶＣＯ１１４は、デジタル電圧制御式発振器とすることができる。そのような場合に、ＤＰＬＬ１００は、ＤＡＣ１１２を必要としない場合がある。
【００２６】
作動において、データ入力信号を受信するようにデータサンプラー１０２を構成することができる。データ入力信号は、基準ソース（図１Ａには図示せず）から受信される。実施形態により、受信したデータ入力信号は、ＶＣＯ１１４から受信したクロック信号を使用することによってサンプリングすることができる。サンプルデータ入力信号は、ＤｅＭＵＸ１０６に通信することができる。予め決められた因数でクロック信号の周波数を分割するように分割器１０４を構成することができる。分割器１０４からのクロック信号は、ＤｅＭＵＸ１０６の別の入力として使用することができる。
【００２７】
実施形態により、データ入力信号及びクロック信号をデジタル位相検出器論理部１０８に供給するようにＤｅＭＵＸ１０６を構成することができる。デジタル位相検出器論理部１０８は、ＶＣＯ１１４からのクロック信号の立ち上がりエッジと基準ソースからのデータ入力信号のエッジとに対応する相対時間を比較するように構成することができる。実施形態により、デジタル位相検出器論理部１０８は、ある一定の時間インスタンスでのデータ入力信号のような入力信号の信号エッジとクロック信号のような基準信号の別の信号エッジとの比較に基づいて多状態信号を発生するように構成することができる。実施形態により、発生された多状態信号は、位相誤差信号に対応することができる。
【００２８】
実施形態により、位相誤差情報は、クロック信号の立ち上がりエッジがデータ入力信号のエッジに対して早く又は遅く到着したか否かを表すことができる。実施形態により、位相誤差情報は、クロック信号の立ち下がりエッジがデータ入力信号のエッジに対して早く又は遅く到着したか否かを表すことができる。当業者は、本発明の開示の範囲をクロック信号及びデータ入力信号のエッジに対応する相対時間の比較に制限すべきではないことを理解するであろう。
【００２９】
実施形態により、デジタル位相検出器論理部１０８は、発生された多状態信号をデジタルループフィルタ１１０に通信することができる。このデジタルループフィルタ１１０は、位相誤差情報に対応する受信した多状態信号を２進コード化数にコード化することができる。実施形態により、位相誤差情報を２の補数表現を使用することによって符号化し、２進コード化数を発生させることができる。位相誤差情報を符号化するのに使用される符号化技術の例は、以下に限定されるものではないが、１の補数表現、符号付き２進数表現、及び／又は符号なし２進数表現を含む。
【００３０】
実施形態により、デジタル位相検出器論理部１０８は、デジタルループフィルタ１１０への多状態信号の通信の前に発生された多状態信号を符号化することができる。実施形態により、ＤＰＬＬ１００は、１又は２以上のビットとしてコード化された位相誤差情報を格納するように構成されたメモリ要素を更に含むことができる。１又は２以上のビットは、２進コード化数を表すことができる。例えば、メモリ要素は、１又は２以上のビットとしてコード化された位相誤差情報を格納するように構成されたレジスタとすることができる。
【００３１】
実施形態により、位相誤差情報に対応する値（位相誤差値など）が予め決められた閾値よりも小さいか又は大きいか検出するようにデジタル位相検出器論理部１０８を構成することができる。予め決められた閾値を実質的にゼロに近い値のような最小値に事前設定することにより、位相誤差情報を最小にすることが望ましい。
【００３２】
位相誤差情報に対応する値が予め決められた閾値よりも大きい事例では、複数の加数を利用して位相誤差情報を積分するようにデジタルループフィルタ１１０を構成することができる。例えば、ループフィルタがアナログドメイン内で実現される時に、位相誤差情報の積分は、電荷ポンプ及びコンデンサによって達成することができる。コンデンサの電荷は、制御されたクロックの位相が基準と比較された場合に変化することがあり、複数の比較からの位相情報は、電荷ポンプの使用によるコンデンサからの電荷の加算又は減算によって処理することができる。そのような場合に、コンデンサの電圧は、制御信号としてＶＣＯ１１４に給送することができる。しかし、ループフィルタがデジタルドメイン（デジタルループフィルタ１１０など）内で達成される時に、位相誤差情報は、上述のように、レジスタのようなメモリ要素に数（２進コード化数など）を表すことができる個々のビットとして格納することができる。位相誤差情報は、レジスタ内の値に加算又は減算することができ、位相誤差の積分をもたらすことができる。位相誤差情報の加算又は減算は、複数の加数によって加算器を使用することで実行することができる。複数の加数は、レジスタのようなメモリ要素の既存のコンテンツ、及び／又は着信する位相誤差情報とすることができる。
【００３３】
実施形態により、複数の加数のうちの第１の加数は、メモリ要素に格納された２進コード化数に対応することができる。複数の加数のうちの第２の加数又は第３の加数のような次の加数は、着信する位相誤差情報に対応することができる。例えば、位相誤差情報は、例として図１Ｂ及び１Ｃに示すように２状態（２進など）ではなく、３状態情報のような多状態情報とすることができる。
【００３４】
デジタルループフィルタ１１０は、第１の単項数として第１の加数を符号化するように構成することができる。この符号化は、第１の加数の第１の単項数表現への変換とも呼ぶ。第１の単項数は、トークンビットを含むことができる。第１の単項数は、トークンビットを含むことができるｎビット幅トークンに対応することができる。ｎビット幅トークン内のトークンビットの位置は、第１の加数の値を示すことができる。
【００３５】
実施形態により、デジタルループフィルタ１１０は、第２の加数を第２の単項数として符号化するように構成することができる。第２の単項数は、着信する位相誤差情報を表すことができる。デジタルループフィルタ１１０は、第２の単項数に基づいて第１の単項数内のトークンビットに対して第１のシフト演算を実行するように構成することができる。第１のシフト演算は、ｎビット幅トークン内の少なくとも１つのビット位置だけトークンビットのシフトをもたらすことができる。実施形態により、第１のシフト演算は、トークンビットの位置に対してシフトなし、左シフト、又は右シフト演算に対応することができる。デジタルループフィルタ１１０は、第１のシフト演算に基づいて出力単項数を発生させることができる。実施形態により、発生された出力単項数内のトークンビットの位置のシフトは、格納かつコード化された位相誤差情報に対応する２進コード化数の数値の増分又は減分を示すことができる。
【００３６】
実施形態により、別の単項数に基づいて発生された出力単項数内のトークンビットの位置に第２のシフト演算を実行するようにデジタルループフィルタ１１０を構成することができる。実施形態により、他の単項数は、第３の単項数とすることができる。第３の単項数も、着信する位相誤差情報を表すことができる。
【００３７】
実施形態により、ＶＣＯ１１４の制御信号を発生させるために更新情報を決定するようにデジタルループフィルタ１１０を構成することができる。実施形態により、更新情報は、発生された出力単項数内のトークンビットの位置に基づくことができる。発生された制御信号を利用して、ＶＣＯ１１４の周波数を調節することができる。調節された周波数を使用して、ＶＣＯ１１４によって発生されるクロック信号を更新することができる。
【００３８】
実施形態により、発生された出力単項数を第１の加数及び／又は第２の加数の数表現に類似の数表現に復号するようにデジタルループフィルタ１１０を構成することができる。例えば、第１の加数及び第２の加数が２の補数として表される状態では、発生された出力単項数は、２の補数表現に復号することができる。発生された出力単項数を復号することによって得られた復号された数表現は、第１の加数及び第２の加数のような複数の加数の合計を示すことができる数表現とすることができる。得られた合計結果は、バングバング位相検出器のようなデジタル位相検出器論理部１０８によって発生された位相誤差情報を処理する時に、位相誤差ビットのようなビットの計数に対応することができる。
【００３９】
実施形態により、出力単項数をデジタル信号からアナログ信号に変換するようにＤＡＣ１１２を構成することができる。変換されたアナログ信号は、上述のようにＶＣＯ１１４の制御信号として作用することができる。実施形態により、ＤＡＣ１１２からの制御信号（この場合はアナログ形式）を受信するようにＶＣＯ１１４を構成することができる。ＶＣＯ１１４は、受信した制御信号に基づいて、発振器の周波数を調節し、デジタルループフィルタ１１０の制御下で複数のＶＣＯサイクルにわたる着信する位相誤差情報を最小にすることができるクロック信号を発生させることができる。デジタル位相検出器論理部１０８からデジタルループフィルタ１１０によって受信した位相誤差情報を時間で積分し、回復データ出力信号を取得することができる。例えば、位相誤差と呼ぶ発生された多状態信号の値が予め決められた閾値よりも小さい時に、回復データ出力信号及び回復クロック信号を発生するようにＤｅＭＵＸ１０６を構成することができる。
【００４０】
実施形態により、回復データ出力信号は、着信データ入力信号の位相との固定された関係を有することができる。回復データ出力信号は、データ入力信号と同じ周波数を有することができる。実施形態により、回復データ出力信号は、データ入力信号周波数の倍数とすることができる周波数を有することができる。回復データ信号は、ＤＰＬＬ１００のような集積回路を使用することができる電子デバイスの他の部分のための制御信号として使用することができる。回復データ出力信号及び／又は回復クロック信号の用途の例は、以下に限定されるものではないが、ＦＭ復調回路、信号再構成回路、クロック回復、及び／又は周波数合成を含むことができる。
【００４１】
本発明の開示の例示的態様により、複数の加数の処理を説明するためにＤＰＬＬ１００として実施される集積回路が示されている。しかし、大量の小数（加数など）にデータ処理演算が実行されることを必要とするいくつかの用途が存在する。これらの用途は、以下に限定されるものではないが、上述のようなＤＰＬＬ１００のようなＤＰＬＬ、デジタルシグナルプロセッサ（ＤＳＰ）の乗累算回路（ＭＡＣ）を含み、かつ同じく高速データの送信を必要とするか又は高周波数クロックソースの発生のための回路に使用される。大量の小数（加数など）にデータ処理演算が実行されることを必要とする他の用途は、音声認識、発話認識、及び同じくレーダー及び／又は地質学の分野を含む。これらの用途の両方は、必要な演算を実行するのに複数の加数の合計のような処理及び他の確立された技術に頼っている。
【００４２】
ＩＣの処理性能の典型的なメトリックは、与えられたデータ処理演算のために各々を最小にする目標を有する電力、エリア、及び待ち時間である。従来の技術において、デジタルＩＣの多くは、一度に単一対の数にデータ処理演算を実行することができる。データ処理演算は、表現のために多数のビットを必要とする大数を取り扱うように調整することができる。ある一定のシナリオでは、データ処理演算が大量の小数（加数など）を要求する時に、従来のデータ処理技術は、待ち時間、電力、及びエリアに関連する処理性能に対して報いを受けることがある。例えば、デジタル位相検出器論理部１０８によって発生された位相誤差情報の様々なビットを処理するために、データプロセッサは、着信する位相誤差情報の連続集計に関わる場合がある。データプロセッサは、位相誤差情報が利用可能になると直ちにデータ処理演算を実行することができる。従って、本発明の開示と比較すると、待ち時間が従来の技術に関わる場合がある。更に、相補型金属酸化膜半導体（ＣＭＯＳ）論理部の電力消費は、周波数と共に直線的に増加する。
【００４３】
本発明の開示の様々な実施形態は、多くの利点を含むことができる。高速シリアルデータ信号を低速パラレルデータ信号に逆多重化することによって大量の電力を節約することができる。低速データ信号は、電力消費を更に低減することができる。例えば、処理速度が半分に低減された時に、電力消費は２倍低減される。実施形態により、本方法又はシステムを最適化して様々な演算がパラレルに実行されるように構成することができる。実施形態により、上述のような本発明の開示の様々な実施形態における単純な単項法表現システムの使用は、回路の複雑さの単純化及び低待ち時間実施を可能にする。更に、上述のように、開示する方法及びシステムは、従来の技術に比べて電力消費が低いように構成することができる。
【００４４】
半加算器、全加算器、リップル加算器、桁上げ先見加算器、及び／又はパラレル加算器のような従来の加算器の使用による従来のデータ処理技術は、待ち時間、電力、及び／又はエリアに関連した処理性能に対して報いを受ける場合がある。例えば、半加算器は、２つの単一ピット入力値を受信して入力値の２進和を出力する回路とすることができる。半加算器回路は、入力値「０＋０」又は入力値「１＋１」に対して出力が同じである場合があるので制限される場合がある。全加算器は、持ち込み（入力）及び持ち出し（出力）信号を有する半加算器の拡張である。
【００４５】
従来の加算器の別の例において、リップル加算器は、いくつかの全加算器をパラレルに使用して（合計される入力数の各ビットに１リップル加算器）、一度に２つの大数の合計を決定することができる。従って、ｎビット合計は、「ｎ」全加算器を必要とする。「ゼロ番目」ビット演算からの持ち出し信号は、第１のビット演算の持ち込み入力に送られる。従って、次の持ち出し出力が次の全加算器に送られる等々である。リップル加算器の場合に、２つのｎビット数を互いに加算するために、桁上げ信号は、全ての「ｎ」全加算器を通じて伝播すべきである。これは、演算を実行するための時間が、望ましくない入力加数のビットの数と共に直線的に増加することを意味する。
【００４６】
従来の加算器の別の例において、当業技術で公知の桁上げ先見加算器は、非常に大きい（広い）数を加算しながらリップル加算器の待ち時間を改善することができる。桁上げ先見加算器回路では、最上位ビットの持ち込み信号は、入力ビットの各対に基づいて計算され、ｎビット加算に対して全てのｎビットを桁上げ信号が伝播する必要はない。各ビット対に対して、伝播信号及び発生信号と呼ぶ信号の対を発生させることができる。伝播信号は、持ち出しが持ち込みから生じた時にアサートされる場合がある。発生信号は、持ち出しがいかなる条件でも生じる時にアサートされる場合がある。各全加算器に対する持ち込み信号は、加数の下位ビットの各々に対する伝播信号及び発生信号の関数とすることができる。これは、加算演算の待ち時間を低減するが、リップル加算器よりも大きい回路エリア及び電力を必要とする。
【００４７】
言及したような半加算器、全加算器、リップル加算器、及び桁上げ先見加算器のような従来の加算器のどれも、多くの単一ビット数をパラレルに加算するように設計されていない。桁上げ先見加算器のある一定の構成は、多くのパラレルビットを加算することができる。例えば、「ｍ」入力値では、「ｍ／３」全加算器が入力で要求され、多くの小さい「１ビット」数から合計の「ｌｏｇ２（ｍ）ビット」２進表現に変換するのにある深さの「ｌｏｇ２（ｍ）」加算器が望ましい。この回路の構成は、データ処理演算を実行するのに必要な多数の全加算器に起因して、エリア及び待ち時間に関して大きい報いを受ける。待ち時間、電力、及び／又はエリアに関連する処理性能を最適化するために、開示のシステム及び方法は、開示する例示的加算器及び関連のデータ処理技術のような改善した加算器内でデータを処理するための効率的な機構を提供する（図１Ａ、１Ｂ、１Ｃ、２Ａ、２Ｂ、３Ａ−３Ｃ、４Ａ−４Ｇ、５Ａ、５Ｂ、及び６−９Ｂに説明するような）。
【００４８】
上述の用途に加えて、開示のシステム及び方法はまた、光学コンピュータデバイスに使用される集積コンピュータ要素（ＩＣＥ）コアのような光学処理要素に用途を見出すことができる。例えば、化学物質（炭化水素、掘削流体、及び仕上げ流体など）を分析、モニタ、及び／又は検出するのに必要な様々な業界（オイル及びガス業界、塗料業界、医薬品業界、及び化粧品業界など）は、光学処理要素（ＩＣＥコアなど）を利用する。多数のＩＣＥコア設計の較正標準誤差（ＳＥＣ）のような様々な性能係数は、光学処理要素（ＩＣＥコアなど）の設計、評価、及び製造中に計算しなければならない。開示のシステム及び方法は、パラレルにかつ最適な方式で多数の小数（加数など）にデータ処理演算を実行することにより、そのような設計、評価、及び製造に有利に使用される。
【００４９】
データ処理における光学系の使用は、パラレル性及び広い帯域幅の利点を有することは公知である。しかし、そのような光学ベースの解決法を電子回路に接続する必要性は、通常、データ処理における光学系の使用固有の利益を無効にする制限を生じる。開示のシステム及び方法は、そのような制限を克服し、開示する改良された加算器の処理性能を最適化するために適切な電子回路インタフェースを提供することができる。更に、開示のシステム及び方法は、量子ビット（ｑｕｂｉｔ）の迅速処理を必要とする量子コンピュータにおける用途を見出すことができる。上述の及び本発明の開示の様々な実施形態における単純な単項数表現システム及びトークンビットシフト機構の使用は、量子コンピュータにおける使用に適する回路の複雑さの単純化及び低い待ち時間実施を可能にすることができる。
【００５０】
図１Ｂ及び１Ｃは、本発明の開示の実施形態による開示のシステム及び方法の実施のための集積回路内のＤｅＭＵＸ、位相検出器論理部、及びデジタルループフィルタに関する信号フローを示すブロック図である。図１Ｂ及び１Ｃは、図１Ａからの要素に関して説明されている。図１Ｂを参照すると、デジタル位相検出器論理部１０８とデジタルループフィルタ１１０の間の第１の例示的通信接続１００ｂが示されている。更に、ＤｅＭＵＸ１０６も示されている。
【００５１】
ＤｅＭＵＸ１０６は、サンプリングされた入力信号を通信することができる。通信接続１００ｂにより、各受信サンプルに対する「ｐｅ０」、「ｐｅ１」、及び「ｐｅ２」のような個々の位相誤差加数の各々は、図のようにデジタル位相検出器論理部１０８によって計算することができる。個々の位相誤差加数は、「｛−１、０、＋１｝」のような３つの状態信号によって表すことができる。デジタル位相検出器論理部１０８は、個々の位相誤差加数の和を計算するように更に構成することができる。実施形態により、３サイクルにわたる個々の位相誤差加数の和の信号範囲は、｛−３、−２、．．．＋２、＋３｝とすることができる。デジタル位相検出器論理部１０８は、計算された和をデジタルループフィルタ１１０に通信するように構成することができる。デジタルループフィルタ１１０は、計算された和を受信するように構成することができ、位相誤差を累積する（積分）。そのような累積された位相誤差は、従来のアナログ電荷ポンプ内のコンデンサ及び電荷ポンプに関連付けられた位相誤差に同等とすることができる。
【００５２】
図１Ｃを参照すると、デジタル位相検出器論理部１０８とデジタルループフィルタ１１０の間の第２の例示的通信接続１００ｃが示されている。ＤｅＭＵＸ１０６も示されている。通信接続１００ｃにより、「ｐｅ０」、「ｐｅ１」、及び「ｐｅ２」のような個々の位相誤差加数の各々が示されている。図１Ｂに説明するように、個々の位相誤差加数は、３状態信号「｛−１、０、＋１｝」のような多状態信号によって表すことができる。デジタル位相検出器論理部１０８は、個々の位相誤差加数をデジタルループフィルタ１１０に通信するように構成することができる。デジタルループフィルタ１１０は、個々の位相誤差加数を受信するように構成することができ、位相誤差を累積する。図１Ｂに説明するように、そのような累積された位相誤差は、従来のアナログ電荷ポンプ内のコンデンサ及び電荷ポンプに関連付けられた位相誤差に同等とすることができる。
【００５３】
図２Ａ及び２Ｂは、本発明の開示の実施形態による加算器の例示的回路アーキテクチャを示すブロック図である。図２Ａ及び２Ｂは、図１Ａから１Ｃの要素に関して説明されている。図２Ａを参照すると、例示的加算器２００Ａが示されている。加算器２００Ａは、トークン符号器２０２、シフト符号器２０４ａ、トークンシフター２０６ａ、及びトークン復号器２０８を含むことができる。更に、第１の加数２１０ａ、第２の加数２１０ｂ、第１の単項数２１２、第２の単項数２１４ａ、出力単項数２１６ａ、及び復号された数表現２１８も示されている。実施形態により、加算器２００Ａは、図１Ａに説明するようにＤＰＬＬ１００のデジタル位相検出器論理部１０８及び／又はデジタルループフィルタ１１０に実施することができ、複数の加数を処理する。それにも関わらず、本発明の開示の範囲を制限することなく、デジタル遅延同期ループ（ＤＤＬＬ）、算術演算論理ユニット（ＡＬＵ）の１又は２以上のマルチ回路に使用されるフィールドプログラマブルゲートアレイ（ＦＰＧＡ）、グラフィック処理ユニット（ＧＰＵ）、マイクロプロセッサ、マイクロコントローラ、データコンバータ内でデータを処理するのに使用されるデジタル信号プロセッサ（ＤＳＰ）のための乗累算（ＭＡＣ）回路、及び／又は特定用途向け集積回路の減算回路のような他のＩＣで加算器を使用又は実施することができる。
【００５４】
トークン符号器２０２は、メモリ要素（レジスタなど）の２進コード化数のような既存のコンテンツを単項数表現に符号化するように構成することができる適切な論理部、回路、論理ゲート、算術演算論理ユニット（ＡＬＵ）、及び／又はインタフェースを含むことができる。例えば、トークン符号器２０２は、第１の加数２１０ａのような格納された２進位相情報を第１の単項数表現２１２に符号化することができる。換言すると、格納された２進位相情報の符号化演算は、単項数として表現される入力２進コード化数の変換を指すことができる。実施形態により、第１の単項数２１２は、トークンビットを含むことができる。トークン符号器２０２は、組合せ論理回路設計を使用して実施することができる。実施において、トークン符号器２０２は、ｌｏｇの加算を可能にするためのｌｏｇトークン符号器とすることができる。
【００５５】
シフト符号器２０４ａは、第２の加数２１０ｂのような着信する位相誤差情報を第２の単項数表現に符号化するように構成することができる適切な論理部、回路、論理ゲート、ＡＬＵ、及び／又はインタフェースを含むことができる。換言すると、着信する位相誤差情報の符号化演算は、コード化された位相誤差情報を第２の単項数２１４ａとして表現されるように変換することを指す。実施において、加算又は減算の効果を発生する代わりに、シフト符号器２０４ａは、複数の加数の乗算器として作用することができる。
【００５６】
トークンシフター２０６ａは、第２の単項数２１４ａのような別の単項数に基づいて第１の単項数２１２のような入力単項数内のトークンビットに第１のシフト演算を実行するように構成することができる適切な論理部、回路、論理ゲート、ＡＬＵ、及び／又はインタフェースを含むことができる。シフト演算は、出力単項数２１６ａを発生させることができる。
【００５７】
トークン復号器２０８は、発生された出力単項数２１６ａを第１の加数２１０ａ及び第２の加数２１０ｂに対応する数表現に復号するように構成することができる適切な論理部、回路、論理ゲート、ＡＬＵ、及び／又はインタフェースを含むことができる。復号された数表現２１８は、第１の加数２１０ａ及び第２の加数２１０ｂの合計を示すことができる。実施形態により、トークン復号器２０８の機能は、組合せ論理設計を使用して実現することができる。
【００５８】
作動において、トークン符号器２０２は、第１の加数２１０ａを符号化して第１の単項数２１２を取得することができる。入力第１の加数２１０ａは、２の補数２進数表現とすることができる。当業者は、本発明の開示の範囲が２の補数表現の使用による第１の加数２１０ａの表現に制限されないことを理解しなければならない。第１の加数２１０ａは、符号なし２進、符号付き２進、１の補数２進、ワンホット符号化、又は加算器２００Ａを利用することができる用途に適切な他の数表現システムの形態を取ることができる。
【００５９】
実施形態により、トークン符号器２０２は、２の補数として表現することができる入力第１の加数２１０ａを第１の単項数２１２に符号化することができる。実施形態により、シフト符号器２０４ａは、２の補数として表現することができる入力第２の加数２１０ｂを第２の単項数２１４ａに符号化することができる。
【００６０】
実施形態により、第１の単項数２１２は、トークンビットを含むことができる。例えば、第１の単項数２１２は、トークンビットとして単一ビット値「１」を含むことができる。第１の単項数２１２の全ての他のビット値は、「０」とすることができる。実施形態により、第１の単項数２１２は、トークンビットとして単一「０」を含むことができる。第１の単項数２１２の全ての他のビット値は、「１」とすることができる。従って、トークンビットは、第１の単項数２１２のような符号化（又は変換）単項数のビット値内の固有のビット値とすることができる。ｎビット幅トークン内のトークンビットの位置は、第１の単項数２１２の値を表すことができる。
【００６１】
実施において、第１の単項数２１２はまた、サーモメータコードの形態を取ることができる。サーモメータコードは、連続する「１」の列と連続する「０」の列によって形成される。そのような場合に、トークンビットは、「０」の列と「１」の列の間の境界の位置によって表すことができる。トークンビットは、サーモメータコードの「０」から「１」への移行直後の「１」の位置によって表すことができる。実施形態により、サーモメータコードを連続する０の列と連続する１の列とによって形成することができる。そのような場合に、サーモメータコード内の「１」から「０」への移行直後の「０」の位置によってトークンビットを表すことができる。トークンビットの位置は、第１の単項数２１２の値を表すことができる。
【００６２】
実施形態により、第１の単項数２１２は、１つのトークンビットの代わりに複数のトークンビットを含むことができる。実施形態により、複数のトークンビットを利用して多値桁を表すことができる。例えば、第１の単項数２１２によって表される数は、複素数のような２つの直交成分を含有する場合がある。複素数は、実数と虚数を含むことができる。実数は、トークンビットによって表すことができ、虚数はアナログ値として表すことができる。第１の単項数２１２が複素数を表す場合に、加算及び減算のようなデータ処理演算は、実数部だけに影響を与えるが、虚数部は変化しないままになる。
【００６３】
実施形態により、第１の単項数２１２内の複数のトークンビットは、複数の数を説明し、マルチトークンビットによって表される数の群に同時に算術演算を実行することができる（図７に説明するように）。例えば、２つの数は、第１の単項数２１２内の２つのトークンビットによって同時に表される。当業者は、第１の単項数２１２内のトークンビットの数が例示的であることを理解するであろう。第１の単項数２１２に対応する同じｎビット幅入力トークン（物理的にワイヤの同じセットによって表される）は、数がトークンビットの位置によって表され、かつ一緒のワイヤ全ての状態ではないので、複数の同一でない数を保持することができる。
【００６４】
図２Ｂを参照すると、別の例示的加算器２００Ｂが示されている。加算器２００Ｂは、加算器２００Ａに類似とすることができる。加算器２００Ｂは、トークン符号器２０２、シフト符号器２０４ａ、トークンシフター２０６ａ、トークン復号器２０８、及び要件に従うそのような要素の追加の事例（図示）のような加算器２００Ａの要素を含むことができる。例えば、第３の加数２１０ｃから第ｎ加数２１０ｎのような追加の加数が処理される時に、追加のシフト符号器２０４ｂから２０４ｎ及び対応するトークンシフター２０６ｂから２０６ｎを図２Ｂに示すように加数毎に利用することができる。
【００６５】
実施形態により、複数の加数２１０ａから２１０ｎの合計を実行するように加算器２００Ｂを構成することができる。複数の加数の合計は、シフト符号器及び図２Ｂに示すようにあらゆる追加の入力加数に対応する対応トークンシフターを追加することによって実行することができる。各追加の加数により、出力単項数２１６ａから出力単項数２１６ｎのような発生された出力単項数に対応する出力トークンの幅は各シフト演算で増大し、入力加数の合計によって表すことができる予想数の全範囲を可能にすることができる。
【００６６】
図３Ａ、３Ｂ、及び３Ｃは、本発明の開示の実施形態により加算器２００Ａ又は加算器２００Ｂのような加算器ベースの回路内の加数の符号化に関連したデータ処理演算を示している。図３Ａ、３Ｂ、及び３Ｃは、図１Ａ、１Ｂ、１Ｃ、２Ａ、及び２Ｂからの要素に関連付けて説明している。図３Ａを参照すると、本発明の開示の実施形態により第１の加数２１０ａを第１の単項数２１２に符号化するためのデータ処理演算を示す例示的真偽表が示されている。
【００６７】
第１の加数２１０ａは、ｎ数のワイヤのセット内の多状態信号によって物理的に表現されるｎビット幅の数とすることができる。この場合に、第１の加数２１０ａが２の補数及び３ビット２進コード化数であるので、第１の加数２１０ａは、「２3」組合せの最大値を表現することができる。実施形態により、「２3」組合せは、図３Ａに示すように例における「−４から＋３」の１０進値を有する８つの数の範囲を表すことができる。
【００６８】
実施形態により、入力第１の加数２１０ａは、別の形態の数表現で符号化することができ、２進コード化数のサイズは、可変ｎビット幅の数とすることができ、ここで「ｎ」は、あらゆる正の整数値とすることができる。ｎビット幅２進コード化数のサイズに基づいて、第１の加数２１０ａによって表される数の範囲を変えることができる。
【００６９】
実施形態により、第１の加数２１０ａは、第１の単項数２１２に符号化（又は変換）することができる。トークン符号器２０２の出力は、８ワイヤ上の多状態信号によって物理的に表現される８ビット幅の符号化出力とすることができる第１の単項数２１２とすることができる。第１の単項数２１２は、８ワイヤの１つ内の２進電圧として物理的に表現することができる（図３Ａの「ａ-4からａ3」に示す）。８ビット幅の第１の単項数２１２内のビットの１つ（トークン符号器２０２の出力とすることができる）は「１」とすることができ、残りの（ｎ−１）ビットは、図３Ａに示すように「０」が詰め込まれる。「１」を表す第１の単項数２１２のビット位置は、トークンビットと呼ぶことができる。第１の単項数２１２の値は、８ビット幅トークン内の（又は第１の単項数２１２内の）トークンビット「１」（ビット値「１」を有する固有のトークンビット）の位置によって表すことができる。
【００７０】
実施形態により、上述のように第１の単項数２１２が８ワイヤ内の多状態信号によって物理的に表現される場合に、８ワイヤの１つのワイヤは、「１」電圧を担持することができる。「１」電圧を有するワイヤは、個々の数を表すことができる。実施形態により、８ワイヤは、「−４、−３、−２、−１、０、＋１、＋２、＋３」のような８つの個々の数を表すことができる。実施形態により、第１の単項数２１２が表す数は、図示のように８ワイヤのアレイ内のトークンビットの位置に示している。
【００７１】
実施形態により、「−４、−３、−２、−１、０、１、２、３」として数の範囲を表す代わりに、トークンビットの位置によって表される数の範囲は、以下に限定されるものではないが、「０、１、２、３、４、５、６、７」のような連続した整数の範囲、「−８、−７、−６、−５、−４、−３、−２、−１」のような連続した負の整数の範囲、「０、２、４、６、８、１０、１２、１４」のような偶数の範囲、「０、１、３、４、５、６、７、９」のようなランダムな整数の範囲、及び／又は「１、２、４、８、１６、３２、６４、１２８」のような２の累乗を表す数の範囲などを含むことができる。
【００７２】
図３Ｂを参照すると、第１の単項数２１２の別の例示的符号化技術の真偽表が示されている。実施形態により、第１の単項数２１２は、一般的なサーモメータコードの形態で表現される。サーモメータコードは、連続した「１」の列と連続した「０」の列によって形成することができる。そのような場合に、トークンビットは、「０」の列（ビット値「０」を有する複数の連続ビット）と「１」の列（ビット値「１」を有する複数の連続ビット）の間の境界の位置によって表すことができる。これに代えて、トークンビットは、サーモメータコードの「０」から「１」への移行の位置によって表すことができる。トークンビットの位置は、第１の単項数２１２の値を表すことができる。実施形態により、第１の単項数２１２によって表される数値は、第１の単項数２１２内のトークンビットの位置によって示すことができる。実施形態により、「１」から「０」への１つの移行が存在することができる。ビット値「１」から「０」の移行は、個々の数を表すことができる。
【００７３】
図３Ｃを参照すると、第２の加数２１０ｂの例示的符号化技術の真偽表が示されている。シフト符号器２０４ａから２０４ｎ（図２Ａ及び２Ｂ）は、トークン符号器２０２と類似の変換方法を実施することができる。実施形態により、シフト符号器２０４ａは、第２の加数２１０ｂを第２の単項数２１４ａに符号化するように構成することができる。実施形態により、３ビットの符号化された第２の単項数２１４ａのビットの１つ（シフト符号器２０４ａの出力とすることができる）は、１にすることができ、残りの（ｎ−１）ビットは、「０」値である。「１」を表す第２の単項数２１４ａのビット値は、トークンビットと呼ぶことができる。実施形態により、符号化された第２の単項数２１４ａによって表される数値は、第２の単項数２１４ａのトークンビットの位置によって示すことができる。
【００７４】
実施において、シフト符号器２０４ａは、２ビット幅の２進コード化数として入力第２の加数２１０ｂを受信することができる。２ビット幅の２進コード化数は、２ワイヤ内の信号によって物理的に表すことができる。第２の単項数２１４ａは、３ワイヤ上の信号によって物理的に表すことができる。実施形態により、３ワイヤの全てが３つの個々の数を表すことができる。実施形態により、１つのワイヤだけが「１」電圧を担持することができる。「１」電圧を有するワイヤは、個々の数を表すことができる。第２の単項数２１４ａが表す数は、３ワイヤのアレイ内のトークンビットの位置によって説明することができる。
【００７５】
実施形態により、第２の単項数２１４ａは、２の補数の形態で表すことができ、２ビット２進コード化数及びシフト符号器２０４ａの出力は、３ビット幅の符号化された出力とすることができる。この場合に、シフト符号器２０４ａは、図３Ｃに示すように「−１から１」の１０進値を有する３つの数の範囲を表すように３つの組合せを利用することができる。それにも関わらず、第１の加数２１０ａと同様に、本発明の開示の範囲を制限することなく、２の補数表現のような数表現のあらゆる他の形態で第２の加数２１０ｂを符号化することができる。実施形態により、２進コード化数のサイズは、ｍビット数とすることができ、ここで「ｍ」は、あらゆる正の整数値とすることができる。ｍビット２進コード化数のサイズに基づいて、第２の加数２１０ｂによって表される数の範囲は変えることができる。
【００７６】
図４Ａから４Ｇは、本発明の開示の実施形態による加算器２００Ａ及び２００Ｂのような加算器内のシフト演算機構に関連したデータ処理演算を示している。図４Ａから４Ｇは、図１Ａ、１Ｂ、１Ｃ、２Ａ、２Ｂ、３Ａ、３Ｂ、及び３Ｃからの要素に関連付けて説明されている。図４Ａを参照すると、シフト演算機構を説明するためのトークンシフター２０６ａのような第１の例示的トークンシフターが示されている。更に、第１の単項数２１２、第２の単項数２１４ａ、ダミーワイヤ４０２ａ及び４０２ｂ、及び出力単項数２１６ａが示されている。トークンシフター２０６ａは、図４Ａに示すように単純交換マトリックスの使用によるシフト演算を実行するように構成することができる。
【００７７】
ｎビット幅入力トークンに対応する第１の単項数２１２は、「１」のようなトークンビットを含むことができる。ダミーワイヤ４０２ａ及び４０２ｂは、「１」のような入力トークンビットのビット値とは異なるものにすることができる全「０」ビット値のような無効ダミービットを保持するように構成することができる。図示の「ｂ-5からｂ4」のような１０ワイヤによって物理的に表される出力トークンが常に経路指定ソースを有することができるようにダミーワイヤ４０２ａ及び４０２ｂを提供することができる。出力トークンは、出力単項数２１６ｂに対応することができる。出力単項数２１６ａは、シフト演算による拡張されたトークン出力とすることができる１０ビット（ｎ＋２）幅の出力トークンとすることができる。
【００７８】
作動において、第２の単項数２１４ａに基づいて、シフトなし、左シフト、又は右シフトを適用することにより、出力に第１の単項数２１２の入力トークンビットを経路指定するようにトークンシフター２０６ａを構成することができる。換言すると、トークンシフター２０６ａは、シフト符号器２０４ａの入力の指示の下で入力トークンビットを経路指定することができる。
【００７９】
実施形態により、単項数表現システムでは、左又は右方向のトークンシフト演算は、シフト演算が実行される入力数の値の増分又は減分に対応することができる。実施形態により、シフト演算は、第２の単項数２１４ａに基づいて複数のビット位置だけの第１の単項数２１２内のトークンビットのシフトを伴う場合がある。そのような場合に、複数のビット位置毎の左又は右方向へのトークンシフト演算は、シフト演算が実行される数の値の乗算又は割算に対応することができる。
【００８０】
実施形態により、出力単項数２１６ａのビット位置の数の増加（ワイヤの数の増加によって物理的に表現される）は、シフト演算に起因して起こる場合がある。出力単項数２１６ａのビット位置（又はワイヤ）の数の増加は、第１の加数２１０ａ及び第２の加数２１０ｂの加算によって達成される数のセットが増加したという事実に起因する場合がある。例えば、この場合に、第１の加数２１０ａの範囲は、「−４から＋３」とすることができ、第２の加数２１０ｂの範囲は、「−１から＋１」とすることができる。第１の加数２１０ａ及び第２の加数２１０ｂの加算は、「−５から＋４」に範囲を増加させることができる。従って、発生された出力単項数２１６ａに対応する出力トークン幅は、数の全範囲を捕えるために拡張することができる。実施形態により、シフト演算の次のサイクル中に、各シフト演算後のｎビット幅入力トークンのサイズを大きくすることができる。
【００８１】
図４Ｂは、本発明の開示の実施形態によるシフト機構を説明するために図４Ａのトークンシフター２０６ａの交換マトリックスの例示的部分を示している。図４Ｂを参照すると、トークンシフター２０６ａの第ｎ出力ワイヤ４０４、トークンシフター２０６ａの入力ワイヤ４０５から４０７、経路指定経路４０８から４１０、及びシフト符号器２０４ａの入力ワイヤ４１１から４１３が示されている。
【００８２】
トークンシフター２０６ａの第ｎ出力ワイヤ４０４は、２進電圧を担持するか又は出力単項数２１６ａに対応する出力トークン内のトークンビットの最終位置を表すワイヤの１つとすることができる。第ｎ出力ワイヤ４０４のようなトークンシフター２０６ａの各出力ワイヤは、図４Ａ及び４Ｂの両方内の第ｎ出力入力ワイヤ４０４に向いた３つの入射矢印に示すように３つの入力ワイヤ４０５から４０７を経路指定することができる。入力ワイヤ４０６に示す濃い矢印マークは、第１の単項数２１２内の入力トークンビットの位置を表すことができる。経路指定経路４０８から４１０は、スイッチとして実施することができるが、バッファを有するスイッチとして実現することもできる。それにも関わらず、経路指定経路４０８から４１０は、本発明の開示の範囲を制限することなく、あらゆる他の適切な経路指定方法によって実施することができる。
【００８３】
作動において、入力ワイヤ４１１がアクティブである時に、トークンビットは、入力ワイヤ４０５によって経路指定経路４０８を使用して第ｎ出力ワイヤ４０４に経路指定される。同様に、入力ワイヤ４１２がアクティブである時に、トークンビット（又は「１」電圧）は、入力ワイヤ４０６によって経路指定経路４０９を使用して第ｎ出力ワイヤ４０４に経路指定される。最後に、入力ワイヤ４１３がアクティブである時に、トークンビットは、入力ワイヤ４０７によって経路指定経路４１０を使用して第ｎ出力ワイヤ４０４に経路指定される。実施形態により、シフト符号器２０４ａの入力ワイヤ４１１から４１３の１つがアクティブである時に、これは、アクティブ入力ワイヤが２進電圧を担持するか、又は第２の単項数２１４ａ内の「１」のようなトークンビットの位置を表すことを示している。
【００８４】
図４Ｃは、図４Ａのトークンシフター２０６ａの交換マトリックスの別の例示的部分を示し、本発明の開示の実施形態により出力トークンの１つの端部に関連付けられたシフト機構を更に示している。図４Ｃを参照すると、トークンシフター２０６ａの第ｎ出力ワイヤ４１４が示されている。第ｎ出力ワイヤ４１４は、トークンシフター２０６ａ（図４Ａ）の出力ワイヤ（「ｂ-5からｂ4」など）の端部の１つ（最左端ワイヤなど）に位置付けることができる。ダミーワイヤ４０２Ａ、トークンシフター２０６ａの入力ワイヤ４１５、経路指定経路４１６から４１８、及びシフト符号器２０４ａの入力ワイヤ４１１から４１３が更に示されている。
【００８５】
トークンシフター２０６ａの第ｎ出力ワイヤ４１４は、ダミーワイヤ４０２ａに関連付けられた端部ワイヤとすることができる。入力ワイヤ４１５に示されている濃い矢印マークは、第１の単項数２１２の入力トークンビットの位置を表すことができる。経路指定経路４１６から４１８は、経路指定経路４０８から４１０に類似とすることができ、スイッチとして実施することができる。出力トークンの両端でのシフト機構（この場合では図４Ａに示すような最左端ワイヤ「ｂ−５」及び最右端ワイヤ「ｂ４」など）は、以下に説明するように異なる経路指定機構を要求することがある。
【００８６】
作動において、入力ワイヤ４１１がアクティブである時に、第１の単項数２１２のトークンビットは、入力ワイヤ４１５によって経路指定経路４１８を使用して第ｎ出力ワイヤ４１４に経路指定される。ダミーワイヤ４０２ａには「０」ビット値を詰め込むことができる。入力ワイヤ（この場合では８ワイヤ「ａ-4からａ3」など）によって表される入力ｎビット幅トークンは、ダミーワイヤ４０２ａを使用してトークンシフター２０６ａ内に人工的に広げることができ、トークンシフター２０６ａの出力ワイヤ（この場合では１０ワイヤ「ｂ-5からｂ4」など）が常に経路指定ソースを有するようにする。ダミーワイヤ４０２ａの使用によるトークンシフター２０６ａの入力ワイヤ（この場合では８ワイヤ「ａ-4からａ3」など）の人工的な広がりは、入力の第１の単項数２１２（入力ｎビット幅トークンと呼ぶことができる）と比較した出力単項数２１６ａ（（ｎ＋２）ビット幅出力トークンと呼ぶことができる）の広がりを受け入れるために行うことができる。
【００８７】
図４Ｄは、本発明の開示の実施形態による出力トークンの他の端部に関連付けられたシフト機構を更に説明するための図４Ａのトークンシフター２０６ａの交換マトリックスの別の例示的部分を示している。図４Ｄを参照すると、トークンシフター２０６ａの第ｎ出力ワイヤ４１９が示されている。第ｎ出力ワイヤ４１９は、トークンシフター２０６ａの出力ワイヤ（「ｂ-5からｂ4」など）の他の端部（最右端ワイヤなど）に位置付けることができる。ダミーワイヤ４０２ｂ、トークンシフター２０６ａの入力ワイヤ４２０、経路指定経路４２１から４２３、及びシフト符号器２０４ａの入力ワイヤ４１１から４１３が更に示されている。
【００８８】
トークンシフター２０６ａの第ｎ出力ワイヤ４１９は、ダミーワイヤ４０２ｂに関連付けられた端部ワイヤとすることができる。入力ワイヤ４２０に示す濃い矢印マークは、第１の単項数２１２の入力トークンビットの位置を表すことができる。経路指定経路４２１から４２３は、経路指定経路４０８から４１０又は経路指定経路４１６から４１８に類似とすることができ、スイッチとして実施することができる。
【００８９】
作動において、入力ワイヤ４１３がアクティブである時に、トークンビットは、入力ワイヤ４２０によって経路指定経路４２１を使用して第ｎ出力ワイヤ４１９に経路指定される。ダミーワイヤ４０２ｂには「０」ビット値を詰め込むことができる。入力ワイヤによって物理的に表される入力ｎビット幅トークン（この場合では８ワイヤ「ａ-4からａ3」など）は、ダミーワイヤ４０２ｂの使用によってトークンシフター２０６ａ内で人工的に広げることができる。この広がりは、トークンシフター２０６ａの第ｎ出力ワイヤ４１９（この場合では１０ワイヤ「ｂ-5からｂ4」のような出力ワイヤの最右端ワイヤ）が常に経路指定ソースを有することを保証するために行われる。ダミーワイヤ４０２ｂの使用によるトークンシフター２０６ａの入力ワイヤの人工的な広がりは、入力の第１の単項数２１２（入力ｎビット幅トークンと呼ぶことができる）と比較した出力単項数２１６ａ（（ｎ＋２）−ビット幅出力トークンと呼ぶことができる）の広がりを受け入れるために行うことができる。
【００９０】
図４Ｅは、図４Ａのトークンシフター２０６ａの交換マトリックスの例示的真偽表を示し、本発明の開示の実施形態によるシフト機構を更に説明している。図４Ｅを参照すると、トークンシフター２０６ａの機能を示す要約された真偽表が示されている。
【００９１】
実施形態により、真偽表は、第２の単項数２１４ａに対応する３つの入力ワイヤ４１１から４１３の１つのアクティブ状態（シフト符号器２０４ａから）と、出力単項数２１６ａ内のシフトトークンビット（トークンシフター２０６ａの出力ワイヤ「ｂ−５からｂ４」によって表される）との間の関係を示している。
【００９２】
実施形態により、第２の単項数２１４ａの入力ワイヤ４１２がアクティブである場合にシフトなしを適用することによって第１の単項数２１２の入力トークンビットを出力トークンに経路指定するようにトークンシフター２０６ａを構成することができる。実施形態により、第２の単項数２１４ａの入力ワイヤ４１１がアクティブである場合に左シフトを適用することによって第１の単項数２１２の入力トークンビットを出力トークンに経路指定するようにトークンシフター２０６ａを構成することができる。実施形態により、第２の単項数２１４ａの入力ワイヤ４１３がアクティブである場合に右シフトを適用することによって第１の単項数２１２の入力トークンビットを出力トークンに経路指定するようにトークンシフター２０６ａを構成することができる。実施形態において、出力トークンによって表される数は、出力単項数２１６ａとして利用することができる。
【００９３】
実施形態により、出力単項数２１６ａは、トークンシフター２０６ｂに転送することができる。転送された出力単項数２１６ａは、別のトークンシフター２０６ｂの（ｎ＋２）ビット幅入力トークンに給送され、トークンシフター２０６ｂによる第２のシフト演算のような次のシフト演算を実行することができる。第２のシフト演算は、第２の出力単項数２１６ｂをもたらすことができる。
【００９４】
実施形態により、これに代えて、出力単項数２１６ａは、トークン復号器２０８に転送することができる。トークン復号器２０８は、出力単項数２１６ａを第１の加数２１０ａ及び／又は第２の加数２１０ｂに対応する数表現に復号することができる。復号された数２１８は、第１の加数２１０ａ及び第２の加数２１０ｂのような複数の加数の合計を示すことができる。最終合計は、１０ワイヤ上の信号によって物理的に表される１０ビット幅の復号出力とすることができる。
【００９５】
実施において、出力単項数２１６ｂは、トークン復号器２０８に転送することができる（加算器２００Ｂが３つの加数のパラレル処理のために実施される場合）。トークン復号器２０８は、出力単項数２１６ａを第１の加数２１０ａ、第２の加数２１０ｂ、及び／又は第３の加数２１０ｃに対応する数表現に復号することができる。復号された数２１８は、第１の加数２１０ａ、第２の加数２１０ｂ、及びこの場合では第３の加数２１０ｃのような複数の加数の合計を示すことができる。最終合計は、１２ワイヤ内の信号によって物理的に表される１２ビット幅の復号出力とすることができる。
【００９６】
トークン復号器２０８は、開示する加算器２００Ａを使用して復号された数２１８をその用途のネイティブコーディングに復号（又は変換）する。例えば、トークン復号器２０８は、復号された数２１８を２の補数２進数表現に復号することができる。実施形態により、復号された数２１８は、デジタル位相検出器論理部１０８によって発生される位相誤差ビットの計数に対応することができる。実施形態により、合計結果は、デジタル位相検出器論理部１０８によって発生された位相誤差ビットの計数に対応することができる。
【００９７】
図４Ｆは、本発明の開示の実施形態によるシフト演算機構を説明するためのトークンシフター２０６ａのような別の例示的トークンシフターを示している。図４Ｆを参照すると、本発明の開示の代替の実施形態によるシフト演算機構が示されている。
【００９８】
実施形態により、復号された数２１８によって表される数の範囲は、図２Ａに図示かつ説明する第１の加数及び第２の加数の和のような複数の入力加数の和、又は図２Ｂに図示かつ説明する第１の加数から最大第ｎ加数の合計がいずれの算術オーバーフローも引き起こさないような範囲にすることができる。これは、図４Ａに説明するように各トークンシフター２０６ａから２０６ｎの出力内の出力トークン空間（出力単項数）の広がりによって達成される。しかし、ある一定の用途は、複数の入力加数の数のサイズ又は範囲にかかわらず、出力トークン空間のような合計が特定の幅になるように要求する場合がある。そのような場合に、図４Ｆに示すようにラッピング演算を実行することができる。
【００９９】
ラッピング演算では、トークンシフター２０６ａの端部に位置付けられた「ｂ−４」及び「ｂ３」のような出力ワイヤの経路指定経路は、図のように修正することができる。例えば、経路指定経路は、ｎビット幅入力トークン及び出力トークンのサイズが一定に留まるように、ｎビット幅入力トークン（第１の単項数２１２に対応する）から出力トークンに修正することができる。出力トークンは、出力単項数２１６ａに対応することができ、例では「ｂ−４からｂ３」のような１０ワイヤによって物理的に表すことができる。そのような経路指定機構に基づいて、戻される和は、出力トークンによって表される数スパンのモジュロとすることができる。
【０１００】
図４Ｇは、本発明の開示の代替の実施形態によるシフト機構を詳しく説明するためのトークンシフター２０６ａの交換マトリックスの別の例示的部分を示している。図４Ｇを参照すると、トークンシフター２０６ａの第ｎ出力ワイヤ４０４、トークンシフター２０６ａの入力ワイヤ４２４から４３１、経路指定経路４３２から４３９、シフト符号器２０４ａの入力ワイヤ４４０から４４７（シフト符号器２０４ａが８ワイヤの信号を含む場合）が示されている。
【０１０１】
実施形態により、複数の加数のサイズは、要件によって可変とすることができる。全ての入力加数は、同じサイズ又は数の範囲を有するか又は持たなくてもよい。図２Ａ、２Ｂ、３Ａ、３Ｂ、及び４Ａに図示かつ説明するように、第１の加数２１０ａは範囲「−４から＋３」を有するが、入力第２の加数２１０ｂから第ｎ加数２１０ｎは、「−１から＋１」の範囲を有する。代替の実施形態において、第２の加数２１０ｂから第ｎ加数２１０ｎのような入力加数は、広範囲の数を表すことができる。例えば、第２の単項数４４８は、第２の加数２１０ｂを表すことができ、図４Ｇに示すように「−４から＋３」の数の範囲を含む。この場合に、シフト符号器２０４ａの入力ワイヤ４４０から４４７の数は、８ワイヤとすることができる。従って、トークンシフター２０６ａの第ｎ出力ワイヤ４０４の経路指定経路の数は、図４Ｂ、４Ｃ、及び４Ｄのトークンシフター２０６ａの交換マトリックスの例示的部分と比較して「３から８」に増加させることができる。トークンシフター２０６ａの第ｎ出力ワイヤ４０４は、２進電圧を担持するか又は出力単項数４４９に対応する出力トークン内のトークンビットの最終的な位置を表すワイヤの１つとすることができる。この場合における出力単項数４４９に対応する出力トークンの幅（又はサイズ）は、出力数の増加した範囲を表すために増すことができる。
【０１０２】
実施形態により、第ｎ出力ワイヤ４０４のようなトークンシフター２０６ａの各出力ワイヤは、図示のように経路指定された８つの入力ワイヤ４２４から４３１の１つを有することができる。入力ワイヤ４２８に示す濃い矢印マークは、第１の単項数２１２の入力トークンビットの位置を表すことができる。経路指定経路４３２から４３９は、スイッチとして実施することができるが、バッファを有するスイッチとして実現することもできる。
【０１０３】
実施形態により、複数の加数の入力加数の各々は、異なるサイズを有することができ、異なる数の範囲を表すことができる。実施形態により、加数の全ては、同じサイズを有することができ、同じ範囲の数を表すことができる。加算器２００Ａ又は加算器２００Ｂの実施のための他の加数に対して個々の入力加数のサイズ又は数の範囲に制限は設けられない。
【０１０４】
図５Ａ及び５Ｂは、本発明の開示の実施形態による加算器ベースの回路内でデータを処理する開示のシステム及び方法の実施のための第１の例示的シナリオを示している。図５Ａ及び５Ｂは、図１Ａ、１Ｂ、１Ｃ、２Ａ、２Ｂ、３Ａ−３Ｃ、及び４Ａ−４Ｇからの要素に関連付けて説明されている。図５Ａを参照すると、５つの入力加数２１０ａから２１０ｅを備えた加算器５００の実施のための例示的回路アーキテクチャが示されている。加算器５００は、加算器２００Ａ及び加算器２００Ｂに類似とすることができるが、図示のようにシフト符号器２０４ａから２０４ｄとトークンシフター２０６ａから２０６ｄとの４つの対によって実施することができる。加算器５００は、トークン符号器２０２及びトークン復号器２０８を更に含むことができる。
【０１０５】
実施形態により、第１の加数２１０ａ及び第２の加数２１０ｂの処理は、図２Ａ、２Ｂ、３Ａ−３Ｃ、及び４Ａ−４Ｇに説明する処理に類似とすることができる。更に別の加数の追加は、トークンシフター２０６ａの後に３つの追加のトークンシフター２０６ｂ、２０６ｃ、２０６ｄをカスケードすることによって達成することができる。各追加のトークンシフター２０６ｂ、２０６ｃ、２０６ｄにより、各シフト演算後の出力トークンの幅が広がる。従って、第３の加数２１０ｃは、残りの加数に対して、１０ワイヤの入力及び１２ワイヤの出力などをトークンシフター２０６ｂに追加することによって追加することができる。例えば、第４の加数２１０ｄは、トークンシフター２０６ｃに１２ワイヤの入力と１４ワイヤの出力とを追加することによって追加することができる。同様に、第５の加数２１０ｅは、１４ワイヤの入力と１６ワイヤの出力とをトークンシフター２０６ｄに追加することによって追加することができる。最終トークンシフター２１６ｄの最終出力単項数２１６ｄは、５つの入力加数２１０ａ、２１０ｂ、２１０ｃ、２１０ｄ、２１０ｅ全ての合計を表すことができるが、１６ワイヤの使用によって表されるトークンビット符号化形式内でのものである。
【０１０６】
トークン復号器２０８は、１６の１のトークン符号化を加算器５００の使用による５入力加数２１０ａ、２１０ｂ、２１０ｃ、２１０ｄ、２１０ｅの２の補数２進表現のようなその用途のネイティブコーディングに変換（又は復号）することができる。トークン復号器２０８の機能は、組合せ論理の使用によって実現することができる。復号結果は、復号された数表現２１８のような合計出力とすることができる。復号された数表現２１８は、図２Ａ、２Ｂ、及び４Ａ、４Ｂ、４Ｃ、４Ｄ、４Ｅ、４Ｆ、４Ｇに説明したトークンビットシフト機構に基づいて計算される５つの入力加数２１０ａ、２１０ｂ、２１０ｃ、２１０ｄ、２１０ｅの合計を示すことができる。
【０１０７】
実施形態により、ある一定の用途では、加算器５００を実行したデータ処理演算は、その合計の前に固定係数による入力加数の乗算に関わる場合がある。そのような場合に、開示する方法及びシステムは、加数の合計の前に２の０乗によって１又は２以上の加数を乗算することができる。加数は、同一又は異なる乗算因数を有することができる。
【０１０８】
一例において、図５Ａに示す加算器５００は、以下の数学関数（１）を実施することができる：
合計＝第１の加数２１０ａ＋第２の加数２１０ｂ＋第３の加数２１０ｃ＋第４の加数２１０ｄ＋第５の加数２１０ｅ                      （１）
【０１０９】
別の例では、第２の加数２１０ｂが「−１」から「＋１」の数の範囲を表し、因数３によって乗算される（２因数の０乗）時に、加算器５００は、次の数学関数（２）を実施することができる：
合計＝第１の加数２１０ａ＋３×第２の加数２１０ｂ＋第３の加数２１０ｃ＋第４の加数２１０ｄ＋第５の加数２１０ｅ                    （２）
数学関数（２）は、図４Ｂに示されている経路指定経路と比較して、図５Ｂに示すようにトークンシフター２０６ａの出力トークンワイヤの各々の経路指定経路を修正することによって実施することができる。
【０１１０】
図５Ｂを参照すると、トークンシフター２０６ａの例示的部分が示されている。実施形態により、図４Ｂに示す経路指定経路と比較して、トークンシフター２０６ａの第ｎ出力ワイヤ４０４のような出力トークンワイヤの各々に入力ワイヤ「ａn-3」から「ａn+3」によって物理的に表されるｎビット幅入力トークンからの経路指定経路を修正することによって乗算を実施することができる。
【０１１１】
実施形態により、経路指定は、２つの入力ワイヤを省略して、第３の入力ワイヤを全てトークンシフター２０６ａの第ｎ出力ワイヤ４０４に経路指定する（図４Ｂに示すように隣接する入力ワイヤ４０５、４０６、４０７から経路指定される経路指定経路４０８、４０９、４１０とは異なって）。この結果、３の因数を合計の前に第２の加数２１０ｂに導入することができる。それにも関わらず、本発明の開示の範囲を制限することなく、他の因数を経路指定経路によって省略される入力ワイヤの数の変数によって実施することができる。実施形態により、トークンシフター２０６ａの第ｎ出力ワイヤ４０４は、シフト符号器２０４ａの出力の制御の下で、第２の単項数２１４ａであるｎビット幅入力トークンからの３つの入力ワイヤの１つから経路指定することができる。
【０１１２】
図６は、本発明の開示の実施形態による加算器ベースの回路内でデータを処理する開示のシステム及び方法の実施のための第２の例示的シナリオを示している。図６は、図１Ａ、１Ｂ、１Ｃ、２Ａ、２Ｂ、３Ａ−３Ｃ、４Ａ−４Ｇ、５Ａ、及び５Ｂからの要素に関連付けて説明されている。図６を参照すると、加算器６００が示されている。加算器６００は、トークン符号器２０２、シフト符号器２０４ａ、２０４ｂ、２０４ｃ、２０４ｄ、トークンシフター２０６ａ、２０６ｂ、２０６ｃ、２０６ｄ、トークン復号器２０８、入力加数２１０ａ、２１０ｂ、２１０ｃ、２１０ｄ、２１０ｅ、及びトークンビット６０１を含むことができる。
【０１１３】
第２の例示的シナリオにより、第１の加数２１０ａ、第２の加数２１０ｂ、第３の加数２１０ｃ、第４の加数２１０ｄ、及び第５の加数２１０ｅは、それぞれ、数値「０」、「＋１」、「＋１」「−１」、及び「０」とすることができる。復号された数２１８は、「＋１」とすることができる。
【０１１４】
作動において、第１の加数２１０ａは、トークン符号器２０２によって第１の単項数２１２として符号化することができる。実施形態により、第１の単項数２１２は、トークンビット６０１を含むことができる。例えば、第１の単項数２１２は、トークンビットとして単一ビット値「１」を含むことができる。第１の単項数２１２の全ての他のビット値は、図６に示すように「０」とすることができる。第１の単項数２１２は、トークンビット６０１の位置（９ビット幅入力トークン内の「１」など）が第１の単項数２１２の値を表すことができる９ビット幅入力トークンとすることができる。数値「＋１」とすることができる第２の加数２１０ｂは、シフト符号器２０４ａによって第２の単項数２１４ａ（図３Ｃに示すように「００１」など）として符号化することができる。
【０１１５】
実施形態により、トークンシフター２０６ａは、第２の単項数２１４ａに基づいて第１の単項数２１２内のトークンビット６０１に第１のシフト演算を実行して出力単項数２１６ａ（「０００００１０００」など）を発生させることができる。この場合に、第１のシフト演算は、図６に示すように９ビット幅トークンで右に向けて１ビット位置毎にトークンビット６０１をシフトすることができるトークンビット６０１の右シフトとすることができる。シフト演算は、図４Ｂ−４Ｆに詳しく説明している。
【０１１６】
実施形態により、値「＋１」を表す第３の加数２１０ｃは、シフト符号器２０４ｂによって第３の単項数２１４ｂ（図３Ｃに示すように「００１」など）として符号化することができる。トークンシフター２０６ｂは、第３の単項数２１４ｂに基づいて発生された出力単項数２１６ａ内のトークンビット６０１に第２のシフト演算を実行するように構成することができる。第２のシフト演算は、出力単項数２１６ｂ（「００００００１００」など）をもたらすことができる。この場合に、第２のシフト演算は、図６に示すように９ビット幅トークンの右に向けて１ビット位置毎に更にトークンビット６０１をシフトすることができるトークンビット６０１の別の右シフトとすることができる。
【０１１７】
実施形態により、値「−１」を表す第４の加数２１０ｄは、シフト符号器２０４ｃによって第４の単項数２１４ｃ（図３Ｃに示すように「１００」など）として符号化することができる。トークンシフター２０６ｃは、第４の単項数２１４ｃに基づいて発生された出力単項数２１６ｂ内のトークンビット６０１に第３のシフト演算を実行することができる。第３のシフト演算は、出力単項数２１６ｃ（「０００００１０００」など）をもたらすことができる。この場合に、第３のシフト演算は、図６に示すように出力単項数２１６ｂ内のトークンビット６０１に対して９ビット幅トークンを左に向けて１ビット位置毎にトークンビット６０１をシフトすることができるトークンビット６０１の左シフトとすることができる。
【０１１８】
実施形態により、第５の加数２１０ｅは、値「０」を表すことができる。第５の加数２１０ｅは、シフト符号器２０４ｄによって第５の単項数２１４ｄ（「０１０」など）として符号化することができる。トークンシフター２０６ｄは、第５の単項数２１４ｄに基づいて、発生された出力単項数２１６ｃ内のトークンビット６０１に第４のシフト演算を実行することができる。この場合に、第４のシフト演算は、シフトしない演算とすることができ、従って、出力単項数２１６ｄのような第４のシフト演算の出力の値（「０００００１０００」など）を出力単項数２１６ｃと同じにすることができる。出力単項数２１６ｄのトークンビット６０１の位置は、単項数表現内の入力加数２１０ａ、２１０ｂ、２１０ｃ、２１０ｄ、２１０ｅの合計を示すことができる。
【０１１９】
実施形態により、入力加数２１０ａから２１０ｅは、パラレル入力データサンプラーから受信することができる（入力データサンプラーの例は、図１Ａに図示かつ説明するようにデータサンプラー１０２である）。実施形態により、複数の入力加数２１０ａから２１０ｅのトークン合計処理は、デジタル位相検出器論理部１０８のような位相検出器内で行うことができる。
【０１２０】
トークンシフター２０６ａ、２０６ｂ、２０６ｃ、２０６ｄの出力は、デジタルループフィルタ１１０（図１Ａ）のようなループフィルタへの入力とすることができる位相誤差測定値を表すことができる。実施形態により、入力加数２１０ａ、２１０ｂ、２１０ｃ、２１０ｄ、２１０ｅは、異なる時間インスタンスでデータサンプラー１０２のような単一入力データサンプラーから受信することができる。実施形態により、トークン復号器２０８は、発生された出力単項数２１６ｄを加数２１０ａ、２１０ｂ、２１０ｃ、２１０ｄ、２１０ｅに対応する数表現に復号することができる。復号された数２１８は、「０」＋「１」＋「１」−「１」＋「０」の合計を示している。復号された数２１８の値は、「＋１」とすることができる。
【０１２１】
図７は、本発明の開示の実施形態による加算器ベースの回路内でデータを処理する開示のシステム及び方法の実施のための第３の例示的シナリオを示している。図７は、図１Ａ、１Ｂ、１Ｃ、２Ａ、２Ｂ、３Ａ−３Ｃ、４Ａ−４Ｇ、５Ａ、５Ｂ、及び６からの要素に関連付けて説明されている。図７を参照すると、加算器７００内でデータを処理するための例示的回路アーキテクチャが示されている。加算器７００は、トークン符号器２０２、シフト符号器２０４ａ、２０４ｂ、２０４ｃ、２０４ｄ、トークンシフター２０６ａ、２０６ｂ、２０６ｃ、２０６ｄ、トークン復号器２０８、入力加数７０１ａ、７０１ｂ、７０１ｃ、７０１ｄ、７０１ｅ、２つのトークンビット７０２及び７０３、第１の単項数７０４、他の出力単項数７０５ａ、７０５ｂ、７０５ｃ、７０５ｄ、７０５ｅ（シフト演算に基づいて発生）、及び復号された数表現７０６を含むことができる。
【０１２２】
実施形態により、複数の数の合計処理は、同時に行うことができる。例えば、トークンビット７０１及び７０２のような２つのトークンビットによって表すことができる「−２」及び「＋２」のような２つの数は、トークンシフター２０６ａの入力ワイヤ「ａ-4からａ４」のようなワイヤの同じセットに置くことができる。ワイヤの同じセットは、数が全てのワイヤ一緒の状態ではなくトークンビットの位置によって表されるので、複数の同一ではない数を保持することができる。第３の例示的シナリオにより、トークンシフターのワイヤの同じセット内の値「−２、＋２」を有する２つの数の同時処理が示されている。値「−２、＋２」を有する２つの数は、第１の加数７０１ａに対応することができる。第２の加数７０１ｂ、第３の加数７０１ｃ、第４の加数７０１ｄ、及び第５の加数７０１ｅは、図６に説明する数値と同様に、それぞれ数値「＋１」、「＋１」、「−１」、及び「０」とすることができる。復号された数表現７０６は、図示のように「＋１」及び「＋３」とすることができる。
【０１２３】
作動において、第１の加数７０１ａは、トークン符号器２０２によって第１の単項数７０４（「００１０００１００」など）として符号化することができる。トークンビット７０２の位置（「１」など）は、第１の単項数７０４に対応する９ビット幅入力トークンの数「−２」を示すことができる。トークンビット７０３の位置は、第１の単項数７０４に対応する同じ９ビット幅入力トークンの数「＋２」を示すことができる。
【０１２４】
処理は、図２Ａ、２Ｂ、及び６に上述の処理と同様とすることができる。例えば、数値「＋１」とすることができる第２の加数７０１ｂは、シフト符号器２０４ａによって第２の単項数（図３Ｃに示すように「００１」など）として符号化することができる。トークンシフター２０６ａは、第２の単項数に基づいて２つのトークンビット７０２及び７０３に第１のシフト演算を実行して出力単項数７０５ａ（「０００１０００１０」など）を発生させることができる。この場合に、第１のシフト演算は、図７に示すように９ビット幅トークンの右に向けて１ビット位置毎にトークンビット７０２と７０３の両方を同時に右にシフトする演算とすることができる。第３の加数７０１ｃ、第４の加数７０１ｄ、及び第５の加数７０１ｅのような各追加の加数は、図示のようにシフト符号器２０４ｂ、２０４ｃ、２０４ｄ及びトークンシフター２０６ｂ、２０６ｃ、２０６ｄの追加の対の使用によって処理することができる。出力単項数表現７０５ｄ内のトークンビット７０２及び７０３の位置は、単項数表現内の入力加数７０１ａ−７０１ｅの合計を示すことができる。
【０１２５】
実施形態により、トークン復号器２０８は、発生された出力単項数７０５ｄを入力加数７０１ａ−７０１ｅに対応する数表現に復号することができる。復号された数表現７０６は、加数７０１ａ−７０１ｅの合計を示している。同時に処理された復号された数表現７０６の値は、図７に示すようにこの場合では「−１、＋３」とすることができる。
【０１２６】
当業者は、データを処理する開示のシステム及び方法の実施のためのために図示かつ説明する例示的加算器２００Ａ、２００Ｂ，６００、及び７００の回路アーキテクチャが例示的な目的で提供され、本発明の開示の範囲を制限すると解釈すべきでないことを理解するであろう。本発明の開示は、本発明の開示の範囲から逸脱することなく、上述のように、加数サイズの変動、加数の数、加数の乗算、トークン幅、トークンビット表現、算術オーバーフロー又はアンダーフローラッピング、マルチトークンビットの同時処理のような１又は２以上の変形を有する様々な他の回路アーキテクチャに実施することができる。
【０１２７】
図８は、本発明の開示の実施形態による加算器内でデータを処理する例示的方法を示す流れ図である。図８は、図１Ａ、１Ｂ、１Ｃ、２Ａ、２Ｂ、３Ａ−３Ｃ、４Ａ−４Ｇ、５Ａ、６、及び７の要素に関連付けて説明されている。方法８００は、ＤＰＬＬ１００のような集積回路に使用することができる加算器２００Ａ、２００Ｂ、５００、６００、又は７００のような加算器に実施することができる。本方法は、段階８０２で開始し、段階８１２に進む。
【０１２８】
段階８０４で、第１の加数（第１の加数２１０ａなど）を受信することができる。第１の加数は、加算器２００Ａ、２００Ｂ、５００、６００又は７００のような加算器のトークン符号器（トークン符号器２０２など）で受信することができる。実施形態により、第１の加数は、レジスタのようなメモリ要素に格納することができる２進コード化数に対応することができる。
【０１２９】
段階８０６で、第１の加数は、第１の単項数（第１の単項数２１２など）に符号化（又は変換）することができる。第１の加数は、トークン符号器（トークン符号器２０２など）によって符号化することができる。第１の単項数は、トークンビット（トークンビット６０１など）を含むことができる。実施形態により、第１の単項数は、複数のトークンビットを含むことができるｎビット幅入力トークンに対応することができる（図７に図示）。ｎビット幅入力トークン内のトークンビットの位置は、第１の加数の値を示すことができる。
【０１３０】
段階８０８で、第２の加数（第２の加数２１０ｂなど）を受信することができる。第２の加数は、加算器のシフト符号器（シフト符号器２０４ａなど）で受信することができる。実施形態により、第２の加数は、着信する位相誤差情報に対応することができる。
【０１３１】
段階８１０で、第２の加数（第２の加数２１０ｂなど）は、第２の単項数（第２の単項数２１４ａなど）に符号化することができる。第２の加数は、シフト符号器２０４ａのようなシフト符号器によって符号化することができる。
【０１３２】
段階８１２で、第２の単項数に基づいて第１の単項数内のトークンビット（トークンビット６０１など）でシフト演算を実行することができる。シフト演算は、トークンシフター（トークンシフター２０６ａなど）によって実行することができる。シフト演算に基づいて、トークンシフター２０６ａは、出力単項数２１６ａのような出力単項数を発生させることができる。シフト演算は、少なくとも１つのビット位置だけのトークンビットのシフトをもたらすことができる。
【０１３３】
段階８１４で、発生された出力単項数（出力単項数２１６ａなど）は、第１の加数及び／又は第２の加数の数表現に類似の数表現（復号された数２１８など）に復号することができる。発生された出力単項数は、トークン復号器２０８のようなトークン復号器によって復号することができる。実施形態により、得られた復号された数（復号された数２１８など）は、この場合での第１の加数及び第２の加数のような複数の加数の合計を示す数とすることができる。実施形態により、段階８１０及び段階８１２は、図２Ｂに示すように各追加の加数に対して繰り返すことができる。制御は、最終段階８１６に渡すことができる。実施形態により、復号された数は、複数の加数の合計を示すことができる。実施形態により、入力加数は、パラレル入力データサンプラーから受信することができる（入力データサンプラーの例は、図１Ａに図示かつ説明するようにデータサンプラー１０２である）。
【０１３４】
図９Ａ及び９Ｂは、本発明の開示の実施形態による加算器ベースの回路内でデータを処理するための別の例示的方法を示す別の流れ図である。図９Ａ及び９Ｂは、図１Ａ、１Ｂ、１Ｃ、２Ａ、２Ｂ、３Ａ−３Ｃ、４Ａ−４Ｇ、５Ａ、５Ｂ、６、７、及び８の要素に関連付けて説明されている。方法９００は、ＤＰＬＬ１００のための集積回路のような加算器ベースの回路に実施することができる。本方法は、段階９０２で開始し、段階９０４に進む。
【０１３５】
段階９０４で、クロック信号入力及びデータ入力信号を受信することができる。クロック信号入力は、ＶＣＯ１１４から受信することができ、受信したデータ入力信号は、ＶＣＯ１１４からのクロック信号の使用によってサンプリングすることができる。段階９０６で、ＶＣＯ１１４からのクロック信号の立ち上がりエッジは、１又は２以上の時間インスタンスに対して基準ソースからのデータ入力信号のエッジと比較することができる。実施形態により、比較は、デジタル位相検出器論理部１０８によって実行することができる。
【０１３６】
段階９０８で、ある一定の時間インスタントでのデータ入力信号のような入力信号の信号エッジとクロック信号のような基準信号の別の信号エッジとの相対時間の比較に基づいて、多状態信号（位相誤差と呼ぶ）を発生させることができる。そのような多状態信号は、デジタル位相検出器論理部１０８によって発生される。実施形態により、発生された多状態信号は、位相誤差情報に対応することができる。位相誤差情報は、クロック信号の立ち上がりエッジがデータ入力信号のエッジに対して早く又は遅く（ラグ）到着しているか否かを表すことができる。実施形態により、位相誤差情報は、クロック信号の立ち下がりエッジがデータ入力信号のエッジに対して早く又は遅く到着しているか否かを表すことができる。
【０１３７】
段階９１０で、発生された多状態信号は、２進コード化数にコード化することができる。実施形態により、デジタル位相検出器論理部１０８は、多状態信号を符号化するように構成することができる。これに代えて、実施形態により、デジタルループフィルタ１１０は、多状態信号を符号化するように構成することができる。例えば、多状態信号は、２進コード化数を発生させるために２の補数表現の使用によって符号化することができる。位相誤差情報を符号化するのに使用される符号化技術の例は、以下に限定されるものではないが、１の補数表現、符号付き２進数表現、及び／又は符号なし２進数表現を含むことができる。
【０１３８】
段階９１２で、コード化された位相誤差情報は、レジスタのようなメモリ要素に１又は２以上のビットとして格納することができる。実施形態により、位相誤差情報に対応する値（位相誤差値など）が、予め決められた閾値よりも小さいか又は等しいか否かを決定することができる。予め決められた閾値を最小値に事前設定することにより、位相誤差情報を最小にすることが望ましい。例えば、予め決められた閾値は、ゼロ又は実質的にゼロに設定することができる。デジタル位相検出器論理部１０８によってそのような決定を実行することができる。これに代えて、実施形態により、位相誤差情報に対応する位相誤差値が予め決められた閾値よりも小さいか又は等しいか否かのそのような決定が発生しないことがある。そのような実施形態において、位相誤差情報を積分するために１又は２以上の加数の処理を行うことができる。回復データ及びクロック信号は、各ＶＣＯサイクルで出力することができる。実施形態により、回復データ及びクロック信号は、各ＶＣＯサイクルで最小化位相誤差と共に出力することができ、それによって位相誤差積分を複数のＶＣＯサイクルにわたって実行することができる。
【０１３９】
実施形態により、位相誤差情報は、レジスタの値に加算又は減算することができ、この方式で位相誤差積分を実行することができる。位相誤差情報の加算又は減算は、複数の加数による加算器（加算器２００Ａ、２００Ｂ、５００、６００、又は７００など）の使用によって実行することができる。複数の加数は、メモリ要素の既存のコンテンツ及び着信する位相誤差情報に対応することができる。
【０１４０】
段階９１４で、格納された２進コード化数とすることができる第１の加数は、第１の単項数として符号化することができる。第１の加数２１０ａのような第１の加数の符号化（又は変換）の例は、図２Ａ、２Ｂ、及び３Ａに図示かつ説明されている。例えば、トークン符号器２０２は、第１の加数２１０ａのような格納された２進位相情報を第１の単項数２１２表現に符号化することができる。第１の単項数は、トークンビットを含むことができる。換言すると、第１の単項数は、トークンビット（ｎ数のワイヤの１つ内の２進電圧として物理的に表現される）を含むことができるｎビット幅トークン（図３Ａの入力ワイヤ「ａ−４」から「ａ３」のようなｎ数のワイヤとして物理的に表現される）に対応することができる。ｎビット幅トークンのトークンビットの位置は、２進コード化数の値（第１の加数）を示すことができる。
【０１４１】
段階９１６で、着信する位相誤差情報とすることができる第２の加数は、第２の単項数として符号化することができる。例えば、シフト符号器２０４ａは、例では図２Ａ、２Ｂ、及び３Ｃに図示かつ説明するように、２の補数として表すことができる入力第２の加数２１０ｂを第２の単項数２１４ａに符号化することができる。
【０１４２】
段階９１８で、第１の単項数（第１の単項数２１２など）のトークンビット内の第１のシフト演算のようなシフト演算は、第２の単項数（第２の単項数２１４ａなど）に基づいて実行することができる。第１のシフト演算は、出力単項数（出力単項数２１６ａなど）を発生させることができる。実施において、出力単項数は、図２Ａ、２Ｂ、及び４Ａに説明するようにｎビット幅入力トークンのトークン幅の拡張を表す「ｎ＋２」幅の出力トークンとすることができる。実施形態により、シフト演算の次のサイクル中に各シフト演算後のｎビット幅入力トークンのサイズを大きくすることができる。別の実施において、トークン幅は、図４Ｆ、６、及び７に図示かつ説明するように、シフト演算において拡張しなくてもよい。シフト演算の例は、図４Ａ−４Ｇに図示かつ説明されている。
【０１４３】
実施形態により、第１の加数及び次の加数のような複数の加数の処理は、デジタルループフィルタ１１０によって実行することができる。実施形態により、第３の加数、第４の加数のような次の入力加数に対応する更に別の着信する位相誤差情報を受信することができる。実施形態により、入力加数は、パラレル入力データサンプラーから受信することができる（入力データサンプラーの例は、図１Ａに図示かつ説明するようにデータサンプラー１０２である）。実施形態により、入力加数は、１つの入力データサンプラーから同時に又はある一定の時間間隔で受信することができる。実施形態により、第１のシフト演算からの出力単項数（出力単項数２１６ａなど）は、現在の位相誤差情報を示す第１の加数及び第２の加数の合計とすることができる。この位相誤差情報を利用して、複数のＶＣＯサイクルにわたって位相誤差情報を最小にし、積分データ出力信号及びクロック信号を発生させることができる。
【０１４４】
実施形態により、別の入力加数を受信することができる。そのような場合に、段階９２０で、他の着信する位相誤差情報に対応する第３の加数２１０ｃのような別の入力加数は、第３の単項数２１４ｂのような別の単項数に符号化することができる。例えば、シフト符号器２０４ｂのようなシフト符号器は、図２Ｂ及び５Ａに図示かつ説明するように第３の加数２１０ｃを第３の単項数２１４ｂに符号化（又は変換）するように構成することができる。
【０１４５】
段階９２２で、第２のシフト演算のような別のシフト演算は、発生された出力単項数（第１のシフト演算で発生）のトークンビットに対して実行することができる。他のシフト演算は、別の出力単項数（出力単項数２１６ｂなど）を発生させるために他の単項数（第３の単項数２１４ｂなど）に基づいてトークンシフター２０６ｂのようなトークンシフターによって実行することができる。実施形態により、第２のシフト演算からの出力単項数（出力単項数２１６ｂなど）は、更新された位相誤差情報を示す第１の加数、第２の加数、及び第３の加数の合計とすることができる。この位相誤差情報は、別のＶＣＯサイクルにわたって（複数のＶＣＯサイクルにわたって）位相誤差を最小にするために利用することができる。
【０１４６】
段階９２４で、発生された他の出力単項数（出力単項数２１６ｂなど）は、第１の加数、第２の加数、及び／又は第３の加数のような複数の加数の数表現に類似の数表現に復号することができる。他の出力単項数内のトークンビットの位置は、他の出力単項数の値（出力単項数２１６ｂなど）を示している。
【０１４７】
段階９２６で、更新情報を決定し、ＶＣＯ１１４の制御信号を発生させることができる。更新情報は、発生された出力単項数（出力単項数２１６ｂなど）内のトークンビットの位置に基づくことができる。段階９２８で、発生された制御信号を利用して、ＶＣＯ１１４の周波数を調節することができる。調節された周波数を使用して、クロック信号を更新することができる。更新されたクロック信号は、複数のＶＣＯサイクルにわたって着信する位相誤差情報を最小にすることができる。受信した位相誤差情報を時間で積分し、積分された回復データ出力信号及びクロック信号を取得することができる。
【０１４８】
段階９３２で、回復データ出力信号及び回復クロック信号を各ＶＣＯサイクルで発生させることができる。例えば、位相誤差値と呼ぶ着信する位相誤差情報の値が、更新されたクロック信号に起因してゼロのような予め決められた閾値よりも小さいか又は等しい時に、図１Ａに図示かつ説明するように最小にされた位相誤差又は位相誤差なし（積分）の回復データ出力信号及び回復クロック信号を発生するようにＤｅＭＵＸ１０６を構成することができる。回復データ及びクロック信号は、各ＶＣＯサイクルで出力することができる。実施形態により、回復データ及びクロック信号は、各ＶＣＯサイクルで最小位相誤差と共に出力することができ、それによって位相誤差積分を複数のＶＣＯサイクルにわたって実行することができる。制御は、別のＶＣＯサイクルを開始するために再度戻ることができる。例えば、制御は、段階９０４に渡すことができ、又は別の着信する位相誤差情報を受信して、一例では位相誤差を積分するために更に処理することができる。
【０１４９】
本発明の開示の実施形態により、加算器ベースの回路内でデータを処理するためのシステムを開示する。本発明のシステムは、集積回路のような加算器（加算器２００Ａ、２００Ｂ、５００、６００、又は７００など（図２Ａ、２Ｂ、５Ａ、６、及び７それぞれに説明するような））ベースの回路を含むことができる（集積回路の例は、ＤＰＬＬ１００ａとすることができる）（図１Ａ）。集積回路の１又は２以上の回路は、第１の単項数２１２として第１の加数２１０ａを符号化するように構成することができる。第１の単項数２１２は、トークンビット（トークンビット６０１など）を含むことができる。１又は２以上の回路は、第２の単項数２１４ａとして第２の加数２１０ｂを符号化するように更に構成することができる。集積回路の１又は２以上の回路は、第２の単項数２１４ａに基づいて第１の単項数２１２内のトークンビットに対して第１のシフト演算を実行するように構成することができ、出力単項数２１６ａを発生させることができる。集積回路の１又は２以上の回路は、発生された出力単項数２１６ａを第１の加数２１０ａ及び／又は第２の加数２１０ｂに対応する数表現に復号するように構成することができる。復号された数表現は、第１の加数２１０ａ及び第２の加数２１０ｂの合計を示すことができる。
【０１５０】
本発明の開示の様々な実施形態は、開示する電子デバイスの加算器ベースの回路内でデータを処理するための持続性コンピュータ可読媒体及び／又はストレージ媒体、及び／又は機械及び／又はコンピュータによって実行可能な命令のセットを格納した持続性機械可読媒体及び／又はストレージ媒体を提供することができる。電子デバイスの命令のセットは、機械及び／又はコンピュータをして、第１の単項数２１２として第１の加数２１０ａを符号化する段階を含む段階を実行させることができる。第１の単項数２１２は、トークンビットを含むことができる。第２の加数２１０ｂは、第２の単項数２１４ａとして符号化することができる。第１のシフト演算は、第２の単項数２１４ａに基づいて第１の単項数２１２内のトークンビットに対して実行することができる。第１のシフト演算は、出力単項数２１６ａを発生させるために実行することができる。発生された出力単項数２１６ａは、第１の加数２１０ａ及び／又は第２の加数２１０ｂの数表現に対応することができる数表現２１８に復号することができる。復号された数表現２１８は、第１の加数２１０ａ及び第２の加数２１０ｂの合計を示すことができる。
【０１５１】
本発明の開示は、ハードウエア又はハードウエアとソフトウエアの組合せで実現することができる。本発明の開示は、集中化様式で、少なくとも１つのコンピュータシステムで、又は分散様式で実現することができ、異なる要素をいくつかの相互接続したコンピュータシステムにわたって広げることができる。本明細書に説明する方法を実施するように適応化されたコンピュータシステム又は他の装置が適切であると考えられる。ハードウエアとソフトウエアの組合せは、読み込まれて実行された時に本明細書に説明した方法を実施するようにコンピュータシステムを制御することができるコンピュータプログラムを備えた汎用コンピュータシステムとすることができる。本発明の開示は、他の機能を同じく実行する集積回路の一部分を含むハードウエアに実現することができる。
【０１５２】
本発明の開示はまた、本明細書に説明する方法の実施を可能にする特徴の全てを含み、コンピュータシステムに読み込まれた時にこれらの方法を実行することができるコンピュータプログラム製品に組み込むことができる。本発明の関連において、コンピュータプログラムは、直接に、又はａ）別の言語、コード、又は表記への変換、ｂ）異なる内容形式における複製のいずれか又は両方の後に、情報処理機能を有するシステムに特定の機能を実行させるように意図された命令のセットのあらゆる言語、コード、又は表記におけるあらゆる表現を意味する。
【０１５３】
本発明の開示をある一定の実施形態に関して説明したが、本発明の開示の範囲から逸脱することなく様々な変更を実行することができ、かつ均等物で置換することができることは当業者によって理解されるであろう。これに加えて、本発明の開示の範囲から逸脱することなく、本発明の開示の教示に特定の状況又は内容を適応させるために多くの変更が可能である。従って、本発明の開示は、開示する特定の実施形態に限定されず、本発明の開示は、添付の特許請求の範囲に入る全ての実施形態を含むことになるように意図されている。
【符号の説明】
【０１５４】
１００ａ  デジタル位相ロックループ
１０２  データサンプラー
１０４  分割器
１０８  デジタル位相検出器論理部
１１０  デジタルループフィルタ
【図１Ａ】
0006338079.tif 000002
【図１Ｂ】
0006338079.tif 000003
【図１Ｃ】
0006338079.tif 000004
【図２Ａ】
0006338079.tif 000005
【図２Ｂ】
0006338079.tif 000006
【図３Ａ】
0006338079.tif 000007
【図３Ｂ】
0006338079.tif 000008
【図３Ｃ】
0006338079.tif 000009
【図４Ａ】
0006338079.tif 000010
【図４Ｂ】
0006338079.tif 000011
【図４Ｃ】
0006338079.tif 000012
【図４Ｄ】
0006338079.tif 000013
【図４Ｅ】
0006338079.tif 000014
【図４Ｆ】
0006338079.tif 000015
【図４Ｇ】
0006338079.tif 000016
【図５Ａ】
0006338079.tif 000017
【図５Ｂ】
0006338079.tif 000018
【図６】
0006338079.tif 000019
【図７】
0006338079.tif 000020
【図８】
0006338079.tif 000021
【図９Ａ】
0006338079.tif 000022
【図９Ｂ】
0006338079.tif 000023