JP2005500724A - 対数ルックアップテーブル - Google Patents
対数ルックアップテーブル Download PDFInfo
- Publication number
- JP2005500724A JP2005500724A JP2003514405A JP2003514405A JP2005500724A JP 2005500724 A JP2005500724 A JP 2005500724A JP 2003514405 A JP2003514405 A JP 2003514405A JP 2003514405 A JP2003514405 A JP 2003514405A JP 2005500724 A JP2005500724 A JP 2005500724A
- Authority
- JP
- Japan
- Prior art keywords
- mantissa
- domain
- logarithmic
- component
- subset
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F7/00—Methods or arrangements for processing data by operating upon the order or content of the data handled
- G06F7/38—Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation
- G06F7/48—Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation using non-contact-making devices, e.g. tube, solid state device; using unspecified devices
- G06F7/52—Multiplying; Dividing
- G06F7/523—Multiplying only
- G06F7/5235—Multiplying only using indirect methods, e.g. quarter square method, via logarithmic domain
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/02—Digital function generators
- G06F1/03—Digital function generators working, at least partly, by table look-up
- G06F1/035—Reduction of table size
- G06F1/0356—Reduction of table size by using two or more smaller tables, e.g. addressed by parts of the argument
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2101/00—Indexing scheme relating to the type of digital function generated
- G06F2101/10—Logarithmic or exponential functions
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Analysis (AREA)
- Computational Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Mathematical Optimization (AREA)
- Pure & Applied Mathematics (AREA)
- Computing Systems (AREA)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
- Circuits Of Receivers In General (AREA)
- Mobile Radio Communication Systems (AREA)
- Complex Calculations (AREA)
Abstract
【課題】対数ドメインにおいて結果を生成すること。
【解決手段】本発明は、本技術は対数関数の特徴を利用して、ルックアップテーブルを実現するために必要なメモリ要件を軽減することができる。例えば、本技術は対数または対数様関数に対する不均一サンプリングを利用して、所与のルックアップテーブルに必要なエントリ数を削減することができる。とりわけ、本技術は数字を指数成分と仮数成分とに分離することに関する。そして、これらの異なる成分の各々は、異なるルックアップテーブルを使用して第一のドメインから第二のドメインに変換されることが可能である。
【選択図】図2
【解決手段】本発明は、本技術は対数関数の特徴を利用して、ルックアップテーブルを実現するために必要なメモリ要件を軽減することができる。例えば、本技術は対数または対数様関数に対する不均一サンプリングを利用して、所与のルックアップテーブルに必要なエントリ数を削減することができる。とりわけ、本技術は数字を指数成分と仮数成分とに分離することに関する。そして、これらの異なる成分の各々は、異なるルックアップテーブルを使用して第一のドメインから第二のドメインに変換されることが可能である。
【選択図】図2
Description
【技術分野】
【0001】
本発明は一般的にルックアップテーブルに関し、より具体的には、無線通信システムにおいて実現される対数ルックアップテーブルに関する。
【背景技術】
【0002】
無線通信に使用されている共通の技術は、複数の通信が無線周波数(RF)スペクトル上で同時になされる符号分割多重アクセス(CDMA)信号変調である。CDMA技術を内蔵している例示的無線通信デバイスには、セルラー無線電話、コンピュータに内蔵されているPCMCIAカード、無線通信機能を備えている携帯情報端末(PDA)などを含んでいるものもある。
【0003】
CDMA受信機の従来のアーキテクチャは、無線周波数(RF)部と赤外線(IF)部とを含んでいる。とりわけ、受信RF信号は一般的にRF部でフィルタリングされて、IF部の電圧利得増幅器(VGA)によるさらなるフィルタリングおよびスケーリングのためにRF信号からIF信号に変換され、最終的にはベースバンド信号に変換される。ベースバンド信号は一般的にアナログ/ディジタル(A/D)変換器を通過して、追跡および復調のためにディジタル信号プロセッサに送られてもよいディジタルサンプルを生成する。
【0004】
ゼロ赤外線周波数(ゼロIF)アーキテクチャは、CDMA無線通信デバイスにおいて使用されているごく最近のアーキテクチャである。従来の他のアーキテクチャと異なり、ゼロIFアーキテクチャは、最初にRF信号をIF信号に変換することなく、着信RF信号を直接ベースバンド信号に変換する。とりわけ、ゼロIFアーキテクチャは、A/D変換器によって生成されたディジタルサンプルをスケーリングするディジタルVGAを利用する。このように、ゼロIFアーキテクチャは、IFミキサー、IF VGA、およびIFフィルタを含む種々のIFコンポーネントの必要性を排除する。
【0005】
IF部を備えるヘテロダインアーキテクチャにおいて、自動利得制御ユニット(AGC)によって制御されるIF−VGAは、A/D変換器の比較的狭い動的範囲に適合するように、信号の拡張および圧縮のいずれかを担っている。そして、A/D変換器は小さいビット幅(一般的に4ビット)の数字を生成して、信号処理を実行する他のハードウェアを単純化することができる。しかしながら、ゼロIFアーキテクチャにおいては、IF VGAの欠如によって、A/D変換器は一般的に、出力において大きいビット幅の数字をもたらすより広い動的範囲を有するように設計されている。
【0006】
ゼロIFアーキテクチャはIFコンポーネントの必要性を排除するが、アーキテクチャは、主に、A/D変換器によって生成された比較的大きなディジタル信号(一般的に18ビット)のために、より複雑なベースバンドコンポーネントを必要とする。その結果、ディジタルVGAがベースバンドで実現され、A/D変換器からの大きなビット幅の信号をスケーリングする。ゼロIFアーキテクチャは比較的大きな乗算器(一般的に18ビット×18ビットの乗算器)を実現して、大きなディジタル信号をスケーリングすることができる。さらに、ディジタルVGAは一般的に、(しばしば1キロバイトを超える)比較的大きなルックアップテーブル(LUT)を含んでおり、AGCユニットから受信された値をデシベル(dB)の対数単位から、ディジタルVGAの利得を制御するための線形値に変換する。演算において、例えば、ディジタルVGAはA/D変換器から受信された線形ディジタル信号に、LUTから取得された線形利得値を乗算する。これらの理由によって、ゼロIFアーキテクチャを内蔵している無線通信デバイスは、IFコンポーネントが排除されたとしてもかなりのコストがかかる。
【0007】
1つ以上のルックアップテーブルを記憶するために必要なメモリスペース量は一般的に、ルックアップテーブル内に記憶されている情報量に比例する。従って、ルックアップテーブルが大きくなるほど、ルックアップテーブルの使用もメモリに集中する。一部の無線通信デバイスについては、メモリスペースはかなり限定されており、それによってルックアップテーブルを困難なものとし、および/または実現にコストがかかることになる。
【特許文献1】
U.S. Provisional Application Serial No.60/305,968 “DIGITAL VOLTAGE GAIN AMPLIFIER IMPLEMENTATION IN LOGARITHMIC DOMAIN IN THE ZERO IF ARCHITECTURE”, 2001年7月16日出願
【特許文献2】
U.S. Patent Application Serial No. 09/954,589 (Attorney Docket No. 010419) “DIGITAL VOLTAGE GAIN AMPLIFER FOR ZERO IF ARCHITETURE”, 2001年7月16日出願
【発明の開示】
【0008】
本出願は、特許文献1の優先権を主張する。本出願はまた、本出願と同日に出願され、同時継続かつ共に譲渡されている特許文献2に関する。
【0009】
一般的に、本発明は、線形入力から効率的に対数値を生成するための技術を目的としている。とりわけ、本技術は、対数関数の特徴を生かして、ルックアップテーブル(LUT)の実現に必要なメモリ要件を軽減する。本技術は、対数または対数様関数の不均一サンプリングを利用して、このよう演算を実行する際に使用される1つ以上のLUT内のエントリ数を減少させることができる。これらの技術は、スペクトル拡散無線通信システムを含む広範囲の応用に使用することができる。
【0010】
とりわけ、本技術は、1つ以上の入力変数を指数成分と仮数成分とに分離することに関する。例えば、入力変数は、無線通信デバイス内で処理されたディジタルベースバンド信号などの信号のディジタル値を備えていてもよい。入力変数の成分の各々は、対応するLUTを使用して第一のドメインから第二のドメインに変換されてもよい。例えば、指数成分は指数LUTを使用して変換されてもよい。同様に仮数成分は仮数LUTを使用して変換されてもよい。変換後、成分は、第二のドメイン内で実行された演算および他の操作のために結合される。第一のドメインは線形ドメインであってもよく、また第二のドメインは非線形ドメインであってもよい。例えば、第二のドメインは、所望の解像度の単位としてデシベルを有する対数ドメインであってもよい。
【0011】
とりわけ、仮数LUTのサイズは、全仮数値のサブセットのみを記憶し、次いで、所望ならサブセットから他の仮数値を引き出すことによって縮小されることが可能である。例えば、本発明の原理によると、セグメントと称される仮数エントリの部分が記憶され、残りのセグメントの仮数値が引き出されることが可能である。他の値は、例えば仮数LUTからエントリを選択するのに使用される入力アドレスを調整することによって、一般的には入力アドレスをシフトすること、または入力アドレスを新たな入力アドレスに補間することによって引き出される。そして変形入力アドレスを使用して、仮数LUTから所望の値を選択することができる。
【0012】
一実施形態において、本技術は1つ以上の方法に従って実行されてもよい。例えば、信号のディジタル値を表す数字は、第一のドメインにおいて指数成分と仮数成分に分離されてもよい。そして指数成分は第一のドメインから第二のドメインに変換されてもよく、また別個に、仮数成分は第一のドメインから第二のドメインに変換されてもよい。次いで、指数成分および仮数成分は第二のドメインにおいて結合され、無線通信デバイスのディジタル増幅器内で信号を増幅するなどの、種々の演算機能や他の操作が第二のドメイン内で実行されてもよい。特に、仮数成分については、全仮数値のサブセットは仮数LUTに記憶されてもよい。仮数LUTに記憶されていない仮数値はサブセットから引き出される。
【0013】
上述の技術はソフトウェア、ハードウェア、あるいはこれらの組み合わせによって実現されてもよい。従って、本発明は、実行される場合には上述の方法の1つ以上を遂行するプログラムコードを有するコンピュータ読み取り可能な媒体を備えている。
【0014】
一実施形態において、無線通信デバイスまたは他の装置は、数字から指数成分を抽出する指数抽出器と、数字から仮数成分を抽出する仮数抽出器とを含んでいてもよい。装置はまた、第一のドメインから第二のドメインに指数成分を変換するために使用される第一のLUTと、第一のドメインから第二のドメインに仮数成分を変換するために使用される第二のLUTとを含んでいてもよい。装置はまた、第二のドメインにおいて指数成分と仮数成分とを結合する加算器を含んでいてもよい。装置は、無線通信デバイスにおいて使用されているディジタル電圧利得増幅器を備えていてもよい。
【0015】
とりわけ、本発明に従った無線通信デバイスは、RF信号を受信するアンテナと、RF信号からベースバンド信号を生成するRFミキサーとを含んでいてもよい。さらに、無線通信デバイスは、ベースバンド信号をスケーリングするための上記の電圧利得増幅器を含んでいてもよい。無線通信デバイスはまた、スケーリングされたベースバンド信号の少なくとも一部を処理するディジタル信号プロセッサを含んでいてもよい。
【0016】
本発明は多数の利点を提供することができる。とりわけ、本発明は、1つ以上のLUTを実現するコンピュータデバイスのメモリ要件を著しく軽減することが可能である。対数変換ユニットは、以下に詳細に説明されるように、浮動小数点数の指数および仮数ごとに異なるLUTを利用してもよく、これによってメモリ要件の軽減が容易になる。とりわけ、仮数エントリの一部が仮数LUTに記憶されてもよく、追加の仮数値は必要ならば生成または近似されてもよい。場合によっては、仮数エントリのサブセットが全仮数値の不均一サンプルを備えていてもよい。これらまたは他の不均一サンプリング技術を使用して、仮数LUTのメモリ要件を著しく軽減することができる。
【0017】
本発明はLUTを使用する任意のコンピュータデバイスにおいて実現されてもよい。本発明の種々の詳細は無線通信デバイスと関連して説明されるが、本発明は必ずしもその態様に限定されるわけではない。むしろ、本技術をLUTを実現する任意のコンピュータデバイスと共に使用することによってLUTのサイズを縮小することができる。
【0018】
これらおよび他の実施形態のさらなる詳細は以下の添付の図面および説明において述べられる。他の特徴、目的、および利点は、説明および図面、そして特許請求の範囲から明らかになるであろう。
【発明を実施するための最良の形態】
【0019】
図1は、本発明に従った例示的無線通信デバイス(WCD)100のブロック図である。限定されているわけではないが、本発明の種々の実施形態は、図1に示されているように、ゼロIFアーキテクチャを実現する無線通信デバイスの受信機に関連して説明されている。この場合、WCD100は着信RF信号を直接ベースバンド信号に変換し、具体的には、最初にRF信号をIF信号に変換するということをしない。
【0020】
WCD100は、着信RF信号を受信するアンテナ104を含んでいる。例えば、着信RF信号は、CDMA基地局から送信された符号分割多重アクセス(CDMA)変調信号を備えていてもよい。アンテナ104によって受信されたRF信号は、RFミキサー112によってベースバンドに結合される前に、低雑音増幅器(LNA)108を通過してもよい。例えば、RFミキサー112は、タイミング基準としてWCD100のローカルクロックを利用する周波数合成器116によって生成されたキャリア波形を受信してもよい。例えば、ローカルクロックは、電圧制御温度補償型水晶発振器(VCTCXO)などの電圧制御発振器120を備えていてもよい。所望なら、WCD100はまたさらなるコンポーネント(図示せず)を含むことができる。
【0021】
RFミキサー112はベースバンド信号113を生成し、これは、例えばフィルタ124によってフィルタリングされて、アナログ/ディジタル(A/D)変換器128によってサンプリングされて、例えばディジタルベースバンド信号129などの信号の対応するディジタル値を生成することができる。ディジタルVGA132は、自動利得制御ユニット(AGC)134によって受信された対数利得値135に従ったディジタル値の増幅および減衰のいずれかによって、ディジタルベースバンド信号129をスケーリングする。
【0022】
ディジタルVGA132によるスケーリングの後、スケーリングされたディジタルベースバンド信号はレーキ受信機136に提供され、これは異なるソース、例えば異なる基地局から受信された信号を分離および追跡する。例えば、レーキ受信機136は、逆拡散、ウォルシュデカバリングおよび累算、パイロット時間および周波数追跡を実行する多数の「フィンガ」を含んでいてもよい。各フィンガは、対応するパスのパイロットおよびデータシンボルをディジタル信号プロセッサ(DSP)140に出力する。そしてDSP140はシンボル復調および/または他の信号処理を実行する。
【0023】
上記の通り、ゼロIFアーキテクチャはIFコンポーネントの必要性を排除するが、アーキテクチャは一般的に、より複雑なベースバンドコンポーネントを内蔵するために従来のデバイスを必要としてきた。しかしながら、比較的大きな乗算器を実現することができる従来のディジタルVGAと異なり、ディジタルVGA132は対数ドメインで動作する。とりわけ、ディジタルVGA132は、対数ドメイン内で、かつAGC134から受信された対数利得値135に従ってディジタルベースバンド信号129をスケーリングする。このように、ディジタルVGA132は、複雑かつ高価な乗算器を内蔵していないが、より簡素で、比較的低価な加算器を利用している。さらに、ディジタルVGA132は対数ドメインで動作するために、AGC134から受信された利得値135を線形値に変換せずに使用することができ、それによってこのために使用されていた従来のルックアップテーブル(LUT)の必要性を排除することができる。
【0024】
以下により詳細に説明されるように、ディジタルVGA132は対数変換ユニット(図1には図示せず)を利用して、ディジタルベースバンド信号129を線形ドメインから対数ドメインに変換することができ、また指数変換ユニット(図示せず)を利用して、スケーリングされたベースバンド信号を対数ドメインから線形ドメインに逆変換することができる。指数変換ユニットおよび対数変換ユニットはルックアップテーブルを利用してもよい。しかしながら、以下に説明されるさらなる技術を使用して、ルックアップテーブルのサイズを縮小することによってメモリ要件を軽減することができる。他の実施形態において、指数変換ユニットおよび対数変換ユニットは、可能な限り小さいサイズのルックアップテーブルと共にアルゴリズムを利用して、適切な変換値を動的に生成することができる。
【0025】
図2は、ディジタルVGA132(図1)がベースバンド信号を対数ドメインにおいてスケーリングするハイレベルプロセスを示しているフロー図である。図示されているように、ディジタルVGA132は線形ベースバンド信号を線形ドメインから対数ドメインに変換する(202)。以下に詳細に説明されるように、ディジタルVGA132は、ルックアップテーブルを利用して変換を実行する対数変換ユニットを内蔵していてもよい。対数ドメインは、所望の解像度にスケーリングされたデシベル単位を有していてもよく、利得値の変換は回避可能である。例えば、利得の所定の解像度に対応する2/15dBの解像度をWCDで使用してもよい。
【0026】
ディジタルVGA132は、対数ドメインのベースバンド信号を、AGC134から受信された利得値に加算することによって、スケーリングされたベースバンド信号を対数ドメインにおいて生成する(204)。スケーリングされたベースバンド信号は、例えば、利得値に従って増幅または減衰される。ディジタルVGA132は、スケーリングされたベースバンド信号を対数ドメインから線形ドメインに逆変換する(206)。ディジタルVGA132は、ルックアップテーブルを利用して変換を実行する指数変換ユニットを内蔵していてもよい。そしてスケーリングされた線形ベースバンド信号は、例えば、レーキ受信機136およびディジタル信号プロセッサ140によって処理されることが可能である(208)。
【0027】
図3は、対数ドメイン内で動作するディジタルVGA132の例示的実施形態を示しているブロック図である。図示されているように、ディジタルVGA132は、例えば、線形ディジタル値を所望の解像度のデシベル単位を有する対数値305に変換することによって、着信線形ベースバンド信号129を対数ドメインに変換する対数変換ユニット302を含んでいる。一実施形態において、対数変換ユニット302は、線形ベースバンド信号の許容値を対数値にマッピングする対数LUTを含んでいる。しかしながら、このようなLUTはかなりのメモリスペースを必要とする。このために、対数LUTのサイズを縮小することによってメモリスペースの要件を軽減するための種々のさらなる技術が説明されている。
【0028】
ディジタルVGA132は、従来の乗算器ではなく加算器306を含んでいる。とりわけ、ディジタルVGA132は対数ドメインを利用して、乗算機能を加算機能と交換する。すなわち、ディジタルVGA132は、Log(X*Y)=Log(X)+Log(Y)を利用して、乗算器を加算器306と効果的に交換する。しかしながら、WCD100はさらに、増幅されたベースバンド信号を線形ドメインにおいて処理してもよい。従って、ディジタルVGA132はまた、ベースバンド信号を、スケーリングされた後に、線形ドメインに逆変換する指数変換ユニット310を含んでいてもよい。
【0029】
ディジタルVGA132の利得は、AGC134からのフィードバックによって制御されることが可能である。とりわけ、AGC134は、例えば所望の解像度を有するデシベル単位で、利得値135を対数ドメインにおいて出力する。このように、ディジタルVGA132は、加算器306によるアプリケーションに先立って利得値135を変換する必要はない。むしろ、ディジタルVGA132は、対数ドメインにおいて利得値135を線形ベースバンド信号129に単に加算することによって、それに応じて線形ベースバンド信号129を増幅または減衰してもよい。
【0030】
指数変換ユニット310はスケーリングされたベースバンド信号を対数ドメインから線形ドメインに逆変換する。例えば、指数変換ユニット310は、以下により詳細に説明するように、1つ以上のLUTを使用してもよい。さらに、以下に説明される技術を使用して、1つ以上の指数LUTのサイズをかなり縮小して、メモリ要件を軽減することができる。
【0031】
特定の場合において、ディジタルVGA132は、所望の解像度にスケーリングされたデシベル単位を有する対数ドメインで動作する。上記の通り、デシベル単位を有する対数ドメインでの動作は、AGC134によって生成された利得値を変換せずに使用できる場合には、とりわけ好都合である。しかしながら、他の実施形態において、本発明は他の対数ドメインまたは非線形ドメインで動作してもよい。さらに別の実施形態において、対数変換ユニット302および指数変換ユニット310は、種々のLUTに加えて、あるいはそれらの代替としてアルゴリズムを実現する。
【0032】
図4は、より詳細に示されているディジタルVGA132の一実施形態のブロック図である。とりわけ、対数ルックアップテーブル(LOG LUT)402を含むものとして対数変換ユニット302が示されている。さらに、対数変換ユニット302は、着信符号付きベースバンド信号を符号なし絶対値(406で示されるABS)と(410で示されている)符号ビットに分離するハードウェアを含んでいる。すなわち、符号ビットが対数変換ユニット302内のベースバンド信号から除去されて、次いで指数変換ユニット310において伝搬および再挿入される。負の数の対数は未定である。従って、ベースバンド信号から符号ビットを除去することは、ディジタルVGA内のハードウェアが対数ドメイン内の負の数で動作しようとするシナリオを回避する。むしろ、ディジタルVGA132内の特定のハードウェアは、符号ビットが除去されると、対数ドメイン内の正の数でのみ動作してもよい。
【0033】
特定の例において、A/D変換器128(図1)は、1個の符号ビットと、7個の整数ビットと、10個の小数ビットとを含む、18ビットのバイナリ数としてディジタルベースバンド信号129を生成する。符号ビットはベースバンド信号から分離され、7個の整数ビットと10個の小数ビットを含む残りの17ビットのバイナリ数はLOG LUT402に供給される。ルックアップの結果として、17ビットのバイナリ数は9ビットの符号付き数に変換されて、これは加算器306に供給される。加算器306はまた、所望の解像度のデシベル単位で利得値を表すAGC134から9ビットの符号付き数を受信する。特に、利得値は既に対数ドメイン内にあるため、加算器306への入力に先立って何ら調整を必要としない。加算器306はそれぞれの入力を加算し、10ビットの結果を生成し、これは指数変換ユニット310に供給される。一例において、比較的簡素で、コストの低い9ビットの加算器が使用される。
【0034】
指数変換ユニット310は飽和ユニット424と少なくとも1つの指数LUT428とを含んでいてもよい。飽和ユニットを使用して、対数ドメインにおいてベースバンド信号を飽和することができる。例えば、上記の例で継続すると、指数変換ユニット310に供給される10ビットの符号付き結果は、飽和ユニット424によって7ビットに飽和され、128個の可能な値によって表される動的範囲を広げることができる。飽和ユニット424の出力は、(410で示されている)符号ビットに伴って指数LUT428に供給されて、線形ドメインにおいてスケーリングされたベースバンド信号を表す4ビットの符号付き結果を生成する。指数LUT430におけるルックアップに先立って飽和を実行することは、指数LUT430における個々のエントリの必要サイズを縮小することによって、メモリスペースを縮小することができる。さらに、打切り動作が指数LUT430に組み込まれていてもよい。すなわち、従来の乗算器タイプのVGAに追従する必要がある任意の従来の打切り動作が、単に指数LUT430の出力の適切なビット幅を定義することによって、本発明に従った指数LUT430に組み込まれていてもよい。
【0035】
図5〜図7は、本発明に従った指数変換ユニットの3つの異なる例示的実施形態を示している。図4に示されている飽和ユニット424は図5〜図7には示されていないが、ルックアップに先立つ飽和については含まれており、指数変換ユニット内の1つ以上のLUTのサイズを縮小することができる。さらに、指数変換ユニット内の1つ以上のLUTにおけるエントリは、ディジタル入力信号を効果的に打切る出力ビット幅を有していてもよい。
【0036】
図5に示されている指数変換ユニット502は、正および負の値に対して異なるLUTを含んでいる。とりわけ、指数変換ユニット502は、128個の可能な正の3ビットの値を記憶するEXP_LUT(pos)506を含んでおり、また128個の可能な負の4ビットの値を記憶するEXP_LUT(neg)510を含んでいる。(410で示されている)符号ビットを使用して、多重化器518によって使用されている入力信号514を提供して、適切なLUTから出力を選択する。従って、符号ビットが負の数を識別すると、多重化器518はEXP_LUT(neg)510から出力を選択する。符号ビットが正の数を識別すると、多重化器518はEXP_LUT(pos)506から出力を選択する。
【0037】
図6は、指数変換ユニットのさらに別の構成を示している。とりわけ、図6に示されているような指数変換ユニット540は単一のEXP_LUT(pos)544を使用して、EXP_LUT(neg)とEXP_LUT(pos)544から読み取られた正の値から相補的な負の値を生成するために使用される加算器548とを交換する。例えば、正の値XがEXP_LUT(pos)に記憶されているとすると、相補的な負の値は、ある場合(−X−1)には、適切な相補式によって生成されてもよい。しかしながら、正および負の値が好ましく各Y軸に対称である他の場合には、−X+1という2の補数式などを使用して、正の値から負の値を生成することができる。
【0038】
図6に示されているような指数変換ユニット540は、メモリ要件をさらに軽減することによって利点を提供することができる。とりわけ、指数変換ユニット540は単一の128ビット×3ビットのLUTと加算器548とを利用する。他方、図5に示されている指数変換ユニット502はより多くのメモリスペースを必要とするが、さらなる加算器を排除する。図5および図6の実施形態の各々は利点および不利点を有しており、これらは、所与の実現のための最良の構成を判断する際に考慮される。
【0039】
図7は、指数変換ユニットのさらに別の構成を示している。図6の実施形態と同様に、図7に示されている指数変換ユニット560は単一のEXP_LUT(pos)544を使用する。しかしながら、指数変換ユニット560は、EXP_LUT(pos)544から選択されたビットを反転して、符号ビットを付加することによって負の値を生成する。補数ユニット568を使用して、反転を実行することができ、また付加ユニット574を使用して、多重化器518が所望の出力を選択した後に符号ビットを付加することができる。図7の実施形態は、図5に示されているようなEXP_LUT(neg)の必要性を排除し、また図6に示されているような加算器の必要性をも排除する。
【0040】
図8は、対数変換ユニット302の実現をより詳細に示しているブロック図である。上記の通り、対数変換ユニット302を使用して、例えば着信線形ベースバンド信号129などの信号のディジタル値を対数ドメインに変換する。対数変換ユニット302が、線形ベースバンド信号の許容値を対数ドメインにマッピングする単一のLUTを遂行することによって実現可能である一方、図8に示されているような代替構成はメモリ要件を著しく軽減することができる。
【0041】
とりわけ、図8に示されているように、対数変換ユニット302は浮動小数点数を実現するための種々のハードウェアを含んでいる。例えば、Nビットの正のバイナリ数X(p)はX(p)=m*2E(ここでEは指数であり、1に設定されるX(p)の最上位ビットの位置を表しており、またmは仮数であり、残りのE−1個の最下位ビットを表している)で表すことができる。
【0042】
デシベル単位を有する対数ドメインにおいて、上記の浮動小数式は以下のように表すことができる。
20.log(X(p)/210).RdB=20.log(2E/210).RdB+20.log(m).RdB
ここでRdBは所望のデシベル解像度の逆である。デシベル単位の対数ドメインにおける浮動小数式は以下のように表すことができる。
X=XE+Xm
ここでXEは指数のデシベル値であり、Xmは仮数のデシベル値である。
【0043】
この特定のドメインにおいて、XEはN=17個のエントリのテーブルとして記憶されることが可能である(ここで各エントリは9ビット幅である)。さらにXmはN個のセグメントと考えられてもよい。しかしながら、セグメントのうちの1つだけがテーブルとして記憶される必要があり、他の全セグメントの値は記憶されているセグメントのエントリから引き出されることが可能である。例えば、m番目のセグメントは、2m−1個の要素を含んでおり、これらの各々は、(m+n)番目のセグメントの入力アドレスをnビットだけ左シフトすることによって(m+n)番目のセグメントの要素から引き出されることが可能である。さらに最も近い隣接補間を実行して、m番目のセグメントの要素から(m+n)番目のセグメントの要素を引き出すことができる。とりわけ、m番目のセグメントの要素から(m+n)番目のセグメントの要素を補間するためには、m番目のセグメントの入力アドレスをnビットだけ切上げ、(m+n)番目のセグメントの入力アドレスとして使用することができる。
【0044】
図8を再び参照すると、対数変換ユニット302は指数抽出器602と仮数抽出器606とを含んでいる。指数LUT612を使用して指数の対数値を生成することができる。さらに、仮数LUT616を使用して仮数の対数値を生成することができる。そしてこれらの値は加算器620によって結合され、可能な限り打切りユニット624によって打切られる。
【0045】
一実施形態において、仮数LUT616は種々の仮数セグメントの全可能な値をマッピングする。しかしながら、仮数LUT616のサイズを縮小することによってメモリ要件を軽減するためには、アドレス操作論理624を実現して、仮数の1つのセグメントの値を、仮数の異なるセグメントから生成するようにすることができる。このように、仮数の単一のセグメントのみが仮数LUT616に記憶されることが可能である。
【0046】
アドレス操作論理624は以下のように動作することができる。仮数LUT616が2U個のエントリを含んでいるとすると、
E>Uならば、入力アドレスをM’=round(M/2(E−U))とし、また
E≦Uならば、M’=<<(U−E)とする。
すなわち、E>Uならば、M’は補間されて、仮数LUT616に記憶されている最も近い隣接入力アドレスとして定義され、またE≦Uならば、M’は、入力アドレスを(U−E)ビットだけ左シフトすることによって得られる。そしてM’は記憶されているセグメントに供給されて、対数ドメインにおいて適切な変換値を生成することができる。
【0047】
図9および図10は、図8に示されている対数変換ユニット302の実施形態の背後にある概念をさらに示している一連の2つのグラフである。また、デシベル単位を有する対数ドメインにおける浮動小数式はX=XE+Xm(ここでXEは指数のデシベル値であり、Xmは仮数のデシベル値である)として表すことができる。図9は、同一入力に対するデシベル値XEのグラフと比較して、線形入力の関数としてのデシベル値Xのグラフである。図9から分かるように、XEの値は、種々の異なる入力において、Xの値からわずかにずれている。
【0048】
図10は、デシベル値Xmのグラフである。Xmは種々の異なる入力においてXとXEとの間の変化とみられる。従って、図8に示されているように、Xは指数LUT612と仮数LUT616から生成されることが可能である。とりわけ、指数LUT612を使用して指数の対数値を生成し、仮数LUT616を使用して仮数の対数値を生成する。しかしながら、重要なことに、メモリスペースを縮小するためには、仮数LUT616は、図9に示されているスパイク(すなわちセグメント)の1つに対するエントリを記憶することだけを要する。そして他のスパイクの値は、上記のようなアドレス操作論理624を使用して生成されることが可能である。
【0049】
仮数LUT616に記憶されているセグメント(すなわち図10に示されているスパイク)は、必要な正確さに応じて選択されてもよい。例えば、完全対数仮数テーブルは、最後のセグメント(この場合は17番目のセグメント)を記憶することによって全くの損失なしに引き出されることが可能である。しかしながら、これは、217−1=65,536個のエントリを有するLUTとなる。特に、対数関数は大きい入力においては平らになる傾向があるので、より小さいセグメントが、無線通信デバイスにおける性能の著しい損失なく選択されることが可能である。とりわけ、実験は、7番目のセグメントの記憶は全入力に対する許容近似を生成することを示している。これは27−1=64個のエントリのみを有する仮数LUTを必要とする。
【0050】
仮数テーブルの包含について比較的小さい数のセグメントを選択することは、対数関数に対する不均一サンプリングを効果的に導く。低入力、例えば対数関数が比較的速く変化する低セグメントにおいて、小さい数のセグメントにおける全ての値は大きい数のセグメントから生成されることが可能である。しかしながら、対数関数がかなりゆっくりと変化する高入力において、値は記憶されているセグメントから補間される。これは、対数関数の不均一サンプリングの一種とみられ、この場合、低入力においてはより多くのデータが保存されているが、高入力においてはごく小数のデータポイントしか保存されていない。実験は、このような不均一サンプリングは、WCDにおいて著しい性能低下を招かないことを示している。
【0051】
量子化雑音などの想定外の変数を説明するために、指数LUT612と仮数LUT616の双方の解像度をKビットだけ増加して、データが正しくかつ壊れていないことを保証することができる。量子化雑音は、浮動小数LOG関数が有限ビット幅のディジタル数で表されている場合には常に導かれることが可能である。実験は、指数LUT612と仮数LUT616の解像度をK=3ビット増加させることは、WCDの量子化雑音を十分に補償できることを示している。
【0052】
図11は、1つ以上のLUTを実現する際にメモリ要件を軽減するために使用可能なプロセスを示しているフロー図である。図11に示されているプロセスはWCDに使用される場合にはとりわけ効果的であるが、限定的ではない。例えば、図11のプロセスは、ルックアップテーブルを実現する任意のコンピュータデバイスに使用することができる。
【0053】
図示されているように、数字は、第一のドメインにおいて指数成分と仮数成分とに分離される(802)。例えば、第一のドメインは線形ドメインであってもよく、また数字は、信号のディジタル値を表すバイナリの浮動小数点数であってもよい。この場合、指数成分は、1に設定されている最上位ビットを単に識別および記憶することによって数字から抽出される。同様に、仮数成分は、残りの最下位ビットを単に記憶することによって数字から抽出される。
【0054】
指数成分は第一のドメインから、非線形ドメインなどの第二のドメインに変換されてもよい(804)。別個に、仮数成分は第一のドメインから第二のドメインに変換されてもよい(806)。特定の場合において、第二のドメインは所望の解像度のデシベル単位を有する対数ドメインである。第二のドメインに変換されると(804および806)、指数および仮数の成分は結合されてもよい(808)。例えば、指数および仮数の成分を単に合算することによって結合を容易にするように加算器が実現されてもよい。所望なら、結合は打切りまたは切上げられてもよい。
【0055】
指数成分の変換は第一のLUT、例えば指数LUTを使用して実行されてもよい。同様に、仮数成分の変換は第二のLUT、例えば仮数LUTを使用して実行されてもよい。あるいはまた、変換の一方または両方とも、アルゴリズム、またはアルゴリズムとLUTの組み合わせを使用して実行されてもよい。
【0056】
指数LUTは比較的小さくてもよく、また指数の可能なビット位置に対応するエントリを有していてもよい。例えば、数字が17ビットの数字である場合、指数LUTは17個のエントリだけを有している。一方で、仮数LUTはかなり多数のエントリを含んでいてもよい。例えば、数字が17ビットの数字である場合、仮数LUTはかなりの多数のエントリを含んでいてもよい。このために、さらなる技術を使用して、仮数LUTのサイズをさらに縮小することによって、メモリスペースを縮小することができる。
【0057】
図12は、仮数LUTのサイズを著しく縮小するために使用可能なプロセスを示しているフロー図である。図示されているように、全仮数値のサブセットのみが仮数テーブルに記憶されている(902)。そしてサブセットに含まれていない値はサブセットから引き出されることが可能である(904)。このように、仮数LUTを実現するためのメモリ要件が軽減される。
【0058】
再び図10を参照すると、仮数値のサブセットは、図10に示されているスパイクの1つに対応していてもよい。他の全スパイクの値は、入力をシフトして、シフトされた入力に基づいてサブセットのエントリを選択すること、および入力を補間して、補間された入力に基づいてサブセットのエントリを選択することのいずれかによって生成されることが可能である。小さい数の仮数セグメントの値が必要な場合(すなわち、図10において、記憶されているセグメントの左側に配置されているセグメント)、シフト操作を使用することができる。大きい数の仮数セグメントの値が必要な場合(すなわち、図10において、記憶されているセグメントの右側に配置されているセグメント)、補間操作を使用することができる。このように、可能な仮数値の総数が、必要なら、テーブルに記憶されている仮数エントリのより小さいサブセットから生成されて、それによってメモリスペースを縮小することができる。
【0059】
とりわけ、大きい数の仮数セグメントにおける値が必要な場合、この値の入力アドレスが補間されて、記憶されている仮数セグメント内の最も近い隣接入力アドレスとして定義される。小さい数の仮数セグメントにおける値が必要な場合、この値の入力アドレスは、記憶されているセグメントの数字と所望の値に対するセグメントの数字間の差異に対応するビット数だけ左シフトされる。そして補間されたアドレス、またはシフトされたアドレスが記憶されているセグメントに供給されて適切な変換値を生成する。
【0060】
上記のように、特定のサブセットが仮数LUTに記憶されて、所望の正確さに応じて選択されてもよい。特に、対数関数は大きな入力において平らになる傾向があるので、小さなセグメントを、無線通信デバイスにおける性能の著しい損失なく使用することができる。とりわけ、実験は、7番目のセグメントが全入力に対する許容近似を生成したことを示している。これは、27−1=64個のエントリのみを有する仮数LUTを要する。
【0061】
さらに別の実施形態において、対数または対数様関数の不均一サンプリングを備えているエントリを含む、わずかに大きな仮数LUTを使用することができる。例えば、エントリは上記の技術を使用して事前演算されてもよい。すなわち、仮数のセグメントが選択されて、小さいセグメントにおける値のすべてが事前演算されて、かつLUT内に含まれてもよい。しかしながら、大きいセグメントについて、エントリは上記の補間技術に従って事前演算されてもよい。このように、LUT内に記憶されている全セグメントは選択されたセグメント以上のエントリを有しておらず、従って必要なメモリスペース量を制限することになる。仮数LUTは単一のセグメントのみを記憶しているLUTよりも大きいが、アドレス操作論理は必要でない。特定の実現を設計する際に、さらなる必要なメモリスペースはアドレス操作論理の包含に対して重み付けされて、最良の、または最も効率のよい構成を判断する。
【0062】
上記の種々のLUTがメモリに記憶されて、必要ならアクセスされてもよい。上記の方法が、プログラムコードなどのソフトウェアで実現されてもよい場合がある。例えば、プログラムコードはメモリにロードされて、次いでプロセッサで実行されてもよい。プログラムコードはまず、ハードドライブ、または磁気、光学、光磁気、位相変化、あるいは他のディスクまたはテープ媒体などのコンピュータ読み取り可能な媒体で搬送される。あるいはまた、プログラムコードはEEPROMなどの電子コンピュータ読み取り可能な媒体からメモリにロードされても、またはネットワーク接続でダウンロードされてもよい。ダウンロードされると、プログラムコードはまず、搬送波に埋め込まれてもよく、そうでなければ電磁信号上で送信されてもよい。プログラムコードは広範囲の機能性を提供するアプリケーションプログラムにおける特徴として実現される。
【0063】
本発明がプログラムコードで実現される場合、プログラムコードを実行するプロセッサはマイクロプロセッサの形態を採ってもよく、またPC,マッキントッシュ(Macintosh)、コンピュータワークステーション、ハンドヘルドデータ端末、パームコンピュータ、WCD、無線基地局、ネットワークルータなどと統合されても、またはこれらの一部を形成してもよい。メモリは、プロセッサによってアクセスおよび実行されて上記の種々の方法を実行するプログラムコードを記憶するランダムアクセスメモリ(RAM)を含んでいてもよい。
【0064】
本発明の種々の実施形態が説明されてきた。例えば、ディジタルVGAはWCDにおける使用に関して説明されてきた。とりわけ、ディジタルVGAは対数ドメイン内で動作し、従来の乗算器、および1000バイトより大きいサイズを有する従来の指数ルックアップテーブルを、加算器、通常サイズの(すなわち全スペースのうちの約200バイト)の対数LUT、および通常サイズの(すなわち約128バイト)小さい指数テーブルと交換する。にもかかわらず、種々の変形が、本発明の主旨および範囲から逸脱することなくなされてもよい。例えば、ルックアップテーブルを実現するというよりはむしろ、本発明は、対数ドメインを線形ドメインに動的に変換する、および/またはその反対のアルゴリズムを使用して実現されてもよい。さらに、本発明は他の対数ドメインで実現されてもよい。さらに、本発明に従ったディジタルVGAは、例えば無線通信ネットワーク内の基地局を含む他のデバイスで使用されてもよい。例えば、ある種の打切りが後続する乗算器を実現するデバイスは本発明の恩恵を受ける。
【0065】
さらに、本発明の態様はディジタルVGA以外のアプリケーションで使用されてもよい。例えば、打切り動作が後続する乗算動作を実行する装置は本発明の態様を使用して、従来の乗算器を加算器と交換することができる。ある場合には、乗算器以外の加算器を使用して2つのベースバンド信号を乗算するように本発明が実現されてもよい。一般的に、本発明は、線形ディジタル値を対数ドメインに変換し、対数ドメインにおいてディジタル値を加算し、そして加算された値を線形ドメインに逆変換することによって乗算および打切りを実行することができる。さらに、打切り動作は、単に出力ビット幅を選択して信号を効果的に打切ることによって線形ドメインに逆変換するために使用可能なルックアップテーブルに内蔵されてもよい。
【0066】
メモリ要件を軽減するためにLUTのサイズを縮小するための種々の技術もまた説明されている。とりわけ、これらの技術の多くはWCDと関連して説明されている。しかし、本発明はこの観点に制限されない。例えば、1つ以上のLUTのサイズを縮小するために使用される技術をまた他のコンピュータデバイスで使用してメモリスペースを縮小することができる。従って、これらおよび他の実施形態は以下の特許請求の範囲内にある。
【図面の簡単な説明】
【0067】
【図1】本発明に従った無線通信デバイスを示しているブロック図。
【図2】本発明の実施形態に従ったフロー図。
【図3】本発明に従ったディジタルVGAの実施形態を示しているブロック図。
【図4】ディジタルVGAの実施形態をより詳細に示しているブロック図。
【図5】本発明に従った指数変換ユニットの3つの異なる例示的実施形態のうちの1つを示す図。
【図6】本発明に従った指数変換ユニットの3つの異なる例示的実施形態のうちの1つを示す図。
【図7】本発明に従った指数変換ユニットの3つの異なる例示的実施形態のうちの1つを示す図。
【図8】対数変換ユニットの実現をより詳細に示しているブロック図。
【図9】図8に示されている対数変換ユニットの実施形態の背後にある概念をさらに示している一連の2つのグラフのうちの1つ。
【図10】図8に示されている対数変換ユニットの実施形態の背後にある概念をさらに示している一連の2つのグラフのうちの1つ。
【図11】本発明に従ったフロー図。
【図12】本発明に従ったフロー図。
【符号の説明】
【0068】
100…例示的無線通信デバイス、104…アンテナ、108…低雑音増幅器、112…RFミキサー、116…周波数合成器、120…電圧制御発振器、124…フィルタ、128…ディジタル変換器、132…ディジタルVGA、134…自動利得制御ユニット、135…対数利得値、136…レーキ受信機、140…ディジタル信号プロセッサ、302…対数変換ユニット、305…対数値、306…加算器、310…指数変換ユニット、402…対数ルックアップテーブル、424…飽和ユニット、428…指数LUT、430…指数LUT、502…指数変換ユニット、518…多重化器、540…指数変換ユニット、548…加算器、560…指数変換ユニット、568…補数ユニット、574…付加ユニット、602…指数抽出器、606…仮数抽出器、612…指数LUT、616…仮数LUT、620…加算器、624…打切りユニット
【0001】
本発明は一般的にルックアップテーブルに関し、より具体的には、無線通信システムにおいて実現される対数ルックアップテーブルに関する。
【背景技術】
【0002】
無線通信に使用されている共通の技術は、複数の通信が無線周波数(RF)スペクトル上で同時になされる符号分割多重アクセス(CDMA)信号変調である。CDMA技術を内蔵している例示的無線通信デバイスには、セルラー無線電話、コンピュータに内蔵されているPCMCIAカード、無線通信機能を備えている携帯情報端末(PDA)などを含んでいるものもある。
【0003】
CDMA受信機の従来のアーキテクチャは、無線周波数(RF)部と赤外線(IF)部とを含んでいる。とりわけ、受信RF信号は一般的にRF部でフィルタリングされて、IF部の電圧利得増幅器(VGA)によるさらなるフィルタリングおよびスケーリングのためにRF信号からIF信号に変換され、最終的にはベースバンド信号に変換される。ベースバンド信号は一般的にアナログ/ディジタル(A/D)変換器を通過して、追跡および復調のためにディジタル信号プロセッサに送られてもよいディジタルサンプルを生成する。
【0004】
ゼロ赤外線周波数(ゼロIF)アーキテクチャは、CDMA無線通信デバイスにおいて使用されているごく最近のアーキテクチャである。従来の他のアーキテクチャと異なり、ゼロIFアーキテクチャは、最初にRF信号をIF信号に変換することなく、着信RF信号を直接ベースバンド信号に変換する。とりわけ、ゼロIFアーキテクチャは、A/D変換器によって生成されたディジタルサンプルをスケーリングするディジタルVGAを利用する。このように、ゼロIFアーキテクチャは、IFミキサー、IF VGA、およびIFフィルタを含む種々のIFコンポーネントの必要性を排除する。
【0005】
IF部を備えるヘテロダインアーキテクチャにおいて、自動利得制御ユニット(AGC)によって制御されるIF−VGAは、A/D変換器の比較的狭い動的範囲に適合するように、信号の拡張および圧縮のいずれかを担っている。そして、A/D変換器は小さいビット幅(一般的に4ビット)の数字を生成して、信号処理を実行する他のハードウェアを単純化することができる。しかしながら、ゼロIFアーキテクチャにおいては、IF VGAの欠如によって、A/D変換器は一般的に、出力において大きいビット幅の数字をもたらすより広い動的範囲を有するように設計されている。
【0006】
ゼロIFアーキテクチャはIFコンポーネントの必要性を排除するが、アーキテクチャは、主に、A/D変換器によって生成された比較的大きなディジタル信号(一般的に18ビット)のために、より複雑なベースバンドコンポーネントを必要とする。その結果、ディジタルVGAがベースバンドで実現され、A/D変換器からの大きなビット幅の信号をスケーリングする。ゼロIFアーキテクチャは比較的大きな乗算器(一般的に18ビット×18ビットの乗算器)を実現して、大きなディジタル信号をスケーリングすることができる。さらに、ディジタルVGAは一般的に、(しばしば1キロバイトを超える)比較的大きなルックアップテーブル(LUT)を含んでおり、AGCユニットから受信された値をデシベル(dB)の対数単位から、ディジタルVGAの利得を制御するための線形値に変換する。演算において、例えば、ディジタルVGAはA/D変換器から受信された線形ディジタル信号に、LUTから取得された線形利得値を乗算する。これらの理由によって、ゼロIFアーキテクチャを内蔵している無線通信デバイスは、IFコンポーネントが排除されたとしてもかなりのコストがかかる。
【0007】
1つ以上のルックアップテーブルを記憶するために必要なメモリスペース量は一般的に、ルックアップテーブル内に記憶されている情報量に比例する。従って、ルックアップテーブルが大きくなるほど、ルックアップテーブルの使用もメモリに集中する。一部の無線通信デバイスについては、メモリスペースはかなり限定されており、それによってルックアップテーブルを困難なものとし、および/または実現にコストがかかることになる。
【特許文献1】
U.S. Provisional Application Serial No.60/305,968 “DIGITAL VOLTAGE GAIN AMPLIFIER IMPLEMENTATION IN LOGARITHMIC DOMAIN IN THE ZERO IF ARCHITECTURE”, 2001年7月16日出願
【特許文献2】
U.S. Patent Application Serial No. 09/954,589 (Attorney Docket No. 010419) “DIGITAL VOLTAGE GAIN AMPLIFER FOR ZERO IF ARCHITETURE”, 2001年7月16日出願
【発明の開示】
【0008】
本出願は、特許文献1の優先権を主張する。本出願はまた、本出願と同日に出願され、同時継続かつ共に譲渡されている特許文献2に関する。
【0009】
一般的に、本発明は、線形入力から効率的に対数値を生成するための技術を目的としている。とりわけ、本技術は、対数関数の特徴を生かして、ルックアップテーブル(LUT)の実現に必要なメモリ要件を軽減する。本技術は、対数または対数様関数の不均一サンプリングを利用して、このよう演算を実行する際に使用される1つ以上のLUT内のエントリ数を減少させることができる。これらの技術は、スペクトル拡散無線通信システムを含む広範囲の応用に使用することができる。
【0010】
とりわけ、本技術は、1つ以上の入力変数を指数成分と仮数成分とに分離することに関する。例えば、入力変数は、無線通信デバイス内で処理されたディジタルベースバンド信号などの信号のディジタル値を備えていてもよい。入力変数の成分の各々は、対応するLUTを使用して第一のドメインから第二のドメインに変換されてもよい。例えば、指数成分は指数LUTを使用して変換されてもよい。同様に仮数成分は仮数LUTを使用して変換されてもよい。変換後、成分は、第二のドメイン内で実行された演算および他の操作のために結合される。第一のドメインは線形ドメインであってもよく、また第二のドメインは非線形ドメインであってもよい。例えば、第二のドメインは、所望の解像度の単位としてデシベルを有する対数ドメインであってもよい。
【0011】
とりわけ、仮数LUTのサイズは、全仮数値のサブセットのみを記憶し、次いで、所望ならサブセットから他の仮数値を引き出すことによって縮小されることが可能である。例えば、本発明の原理によると、セグメントと称される仮数エントリの部分が記憶され、残りのセグメントの仮数値が引き出されることが可能である。他の値は、例えば仮数LUTからエントリを選択するのに使用される入力アドレスを調整することによって、一般的には入力アドレスをシフトすること、または入力アドレスを新たな入力アドレスに補間することによって引き出される。そして変形入力アドレスを使用して、仮数LUTから所望の値を選択することができる。
【0012】
一実施形態において、本技術は1つ以上の方法に従って実行されてもよい。例えば、信号のディジタル値を表す数字は、第一のドメインにおいて指数成分と仮数成分に分離されてもよい。そして指数成分は第一のドメインから第二のドメインに変換されてもよく、また別個に、仮数成分は第一のドメインから第二のドメインに変換されてもよい。次いで、指数成分および仮数成分は第二のドメインにおいて結合され、無線通信デバイスのディジタル増幅器内で信号を増幅するなどの、種々の演算機能や他の操作が第二のドメイン内で実行されてもよい。特に、仮数成分については、全仮数値のサブセットは仮数LUTに記憶されてもよい。仮数LUTに記憶されていない仮数値はサブセットから引き出される。
【0013】
上述の技術はソフトウェア、ハードウェア、あるいはこれらの組み合わせによって実現されてもよい。従って、本発明は、実行される場合には上述の方法の1つ以上を遂行するプログラムコードを有するコンピュータ読み取り可能な媒体を備えている。
【0014】
一実施形態において、無線通信デバイスまたは他の装置は、数字から指数成分を抽出する指数抽出器と、数字から仮数成分を抽出する仮数抽出器とを含んでいてもよい。装置はまた、第一のドメインから第二のドメインに指数成分を変換するために使用される第一のLUTと、第一のドメインから第二のドメインに仮数成分を変換するために使用される第二のLUTとを含んでいてもよい。装置はまた、第二のドメインにおいて指数成分と仮数成分とを結合する加算器を含んでいてもよい。装置は、無線通信デバイスにおいて使用されているディジタル電圧利得増幅器を備えていてもよい。
【0015】
とりわけ、本発明に従った無線通信デバイスは、RF信号を受信するアンテナと、RF信号からベースバンド信号を生成するRFミキサーとを含んでいてもよい。さらに、無線通信デバイスは、ベースバンド信号をスケーリングするための上記の電圧利得増幅器を含んでいてもよい。無線通信デバイスはまた、スケーリングされたベースバンド信号の少なくとも一部を処理するディジタル信号プロセッサを含んでいてもよい。
【0016】
本発明は多数の利点を提供することができる。とりわけ、本発明は、1つ以上のLUTを実現するコンピュータデバイスのメモリ要件を著しく軽減することが可能である。対数変換ユニットは、以下に詳細に説明されるように、浮動小数点数の指数および仮数ごとに異なるLUTを利用してもよく、これによってメモリ要件の軽減が容易になる。とりわけ、仮数エントリの一部が仮数LUTに記憶されてもよく、追加の仮数値は必要ならば生成または近似されてもよい。場合によっては、仮数エントリのサブセットが全仮数値の不均一サンプルを備えていてもよい。これらまたは他の不均一サンプリング技術を使用して、仮数LUTのメモリ要件を著しく軽減することができる。
【0017】
本発明はLUTを使用する任意のコンピュータデバイスにおいて実現されてもよい。本発明の種々の詳細は無線通信デバイスと関連して説明されるが、本発明は必ずしもその態様に限定されるわけではない。むしろ、本技術をLUTを実現する任意のコンピュータデバイスと共に使用することによってLUTのサイズを縮小することができる。
【0018】
これらおよび他の実施形態のさらなる詳細は以下の添付の図面および説明において述べられる。他の特徴、目的、および利点は、説明および図面、そして特許請求の範囲から明らかになるであろう。
【発明を実施するための最良の形態】
【0019】
図1は、本発明に従った例示的無線通信デバイス(WCD)100のブロック図である。限定されているわけではないが、本発明の種々の実施形態は、図1に示されているように、ゼロIFアーキテクチャを実現する無線通信デバイスの受信機に関連して説明されている。この場合、WCD100は着信RF信号を直接ベースバンド信号に変換し、具体的には、最初にRF信号をIF信号に変換するということをしない。
【0020】
WCD100は、着信RF信号を受信するアンテナ104を含んでいる。例えば、着信RF信号は、CDMA基地局から送信された符号分割多重アクセス(CDMA)変調信号を備えていてもよい。アンテナ104によって受信されたRF信号は、RFミキサー112によってベースバンドに結合される前に、低雑音増幅器(LNA)108を通過してもよい。例えば、RFミキサー112は、タイミング基準としてWCD100のローカルクロックを利用する周波数合成器116によって生成されたキャリア波形を受信してもよい。例えば、ローカルクロックは、電圧制御温度補償型水晶発振器(VCTCXO)などの電圧制御発振器120を備えていてもよい。所望なら、WCD100はまたさらなるコンポーネント(図示せず)を含むことができる。
【0021】
RFミキサー112はベースバンド信号113を生成し、これは、例えばフィルタ124によってフィルタリングされて、アナログ/ディジタル(A/D)変換器128によってサンプリングされて、例えばディジタルベースバンド信号129などの信号の対応するディジタル値を生成することができる。ディジタルVGA132は、自動利得制御ユニット(AGC)134によって受信された対数利得値135に従ったディジタル値の増幅および減衰のいずれかによって、ディジタルベースバンド信号129をスケーリングする。
【0022】
ディジタルVGA132によるスケーリングの後、スケーリングされたディジタルベースバンド信号はレーキ受信機136に提供され、これは異なるソース、例えば異なる基地局から受信された信号を分離および追跡する。例えば、レーキ受信機136は、逆拡散、ウォルシュデカバリングおよび累算、パイロット時間および周波数追跡を実行する多数の「フィンガ」を含んでいてもよい。各フィンガは、対応するパスのパイロットおよびデータシンボルをディジタル信号プロセッサ(DSP)140に出力する。そしてDSP140はシンボル復調および/または他の信号処理を実行する。
【0023】
上記の通り、ゼロIFアーキテクチャはIFコンポーネントの必要性を排除するが、アーキテクチャは一般的に、より複雑なベースバンドコンポーネントを内蔵するために従来のデバイスを必要としてきた。しかしながら、比較的大きな乗算器を実現することができる従来のディジタルVGAと異なり、ディジタルVGA132は対数ドメインで動作する。とりわけ、ディジタルVGA132は、対数ドメイン内で、かつAGC134から受信された対数利得値135に従ってディジタルベースバンド信号129をスケーリングする。このように、ディジタルVGA132は、複雑かつ高価な乗算器を内蔵していないが、より簡素で、比較的低価な加算器を利用している。さらに、ディジタルVGA132は対数ドメインで動作するために、AGC134から受信された利得値135を線形値に変換せずに使用することができ、それによってこのために使用されていた従来のルックアップテーブル(LUT)の必要性を排除することができる。
【0024】
以下により詳細に説明されるように、ディジタルVGA132は対数変換ユニット(図1には図示せず)を利用して、ディジタルベースバンド信号129を線形ドメインから対数ドメインに変換することができ、また指数変換ユニット(図示せず)を利用して、スケーリングされたベースバンド信号を対数ドメインから線形ドメインに逆変換することができる。指数変換ユニットおよび対数変換ユニットはルックアップテーブルを利用してもよい。しかしながら、以下に説明されるさらなる技術を使用して、ルックアップテーブルのサイズを縮小することによってメモリ要件を軽減することができる。他の実施形態において、指数変換ユニットおよび対数変換ユニットは、可能な限り小さいサイズのルックアップテーブルと共にアルゴリズムを利用して、適切な変換値を動的に生成することができる。
【0025】
図2は、ディジタルVGA132(図1)がベースバンド信号を対数ドメインにおいてスケーリングするハイレベルプロセスを示しているフロー図である。図示されているように、ディジタルVGA132は線形ベースバンド信号を線形ドメインから対数ドメインに変換する(202)。以下に詳細に説明されるように、ディジタルVGA132は、ルックアップテーブルを利用して変換を実行する対数変換ユニットを内蔵していてもよい。対数ドメインは、所望の解像度にスケーリングされたデシベル単位を有していてもよく、利得値の変換は回避可能である。例えば、利得の所定の解像度に対応する2/15dBの解像度をWCDで使用してもよい。
【0026】
ディジタルVGA132は、対数ドメインのベースバンド信号を、AGC134から受信された利得値に加算することによって、スケーリングされたベースバンド信号を対数ドメインにおいて生成する(204)。スケーリングされたベースバンド信号は、例えば、利得値に従って増幅または減衰される。ディジタルVGA132は、スケーリングされたベースバンド信号を対数ドメインから線形ドメインに逆変換する(206)。ディジタルVGA132は、ルックアップテーブルを利用して変換を実行する指数変換ユニットを内蔵していてもよい。そしてスケーリングされた線形ベースバンド信号は、例えば、レーキ受信機136およびディジタル信号プロセッサ140によって処理されることが可能である(208)。
【0027】
図3は、対数ドメイン内で動作するディジタルVGA132の例示的実施形態を示しているブロック図である。図示されているように、ディジタルVGA132は、例えば、線形ディジタル値を所望の解像度のデシベル単位を有する対数値305に変換することによって、着信線形ベースバンド信号129を対数ドメインに変換する対数変換ユニット302を含んでいる。一実施形態において、対数変換ユニット302は、線形ベースバンド信号の許容値を対数値にマッピングする対数LUTを含んでいる。しかしながら、このようなLUTはかなりのメモリスペースを必要とする。このために、対数LUTのサイズを縮小することによってメモリスペースの要件を軽減するための種々のさらなる技術が説明されている。
【0028】
ディジタルVGA132は、従来の乗算器ではなく加算器306を含んでいる。とりわけ、ディジタルVGA132は対数ドメインを利用して、乗算機能を加算機能と交換する。すなわち、ディジタルVGA132は、Log(X*Y)=Log(X)+Log(Y)を利用して、乗算器を加算器306と効果的に交換する。しかしながら、WCD100はさらに、増幅されたベースバンド信号を線形ドメインにおいて処理してもよい。従って、ディジタルVGA132はまた、ベースバンド信号を、スケーリングされた後に、線形ドメインに逆変換する指数変換ユニット310を含んでいてもよい。
【0029】
ディジタルVGA132の利得は、AGC134からのフィードバックによって制御されることが可能である。とりわけ、AGC134は、例えば所望の解像度を有するデシベル単位で、利得値135を対数ドメインにおいて出力する。このように、ディジタルVGA132は、加算器306によるアプリケーションに先立って利得値135を変換する必要はない。むしろ、ディジタルVGA132は、対数ドメインにおいて利得値135を線形ベースバンド信号129に単に加算することによって、それに応じて線形ベースバンド信号129を増幅または減衰してもよい。
【0030】
指数変換ユニット310はスケーリングされたベースバンド信号を対数ドメインから線形ドメインに逆変換する。例えば、指数変換ユニット310は、以下により詳細に説明するように、1つ以上のLUTを使用してもよい。さらに、以下に説明される技術を使用して、1つ以上の指数LUTのサイズをかなり縮小して、メモリ要件を軽減することができる。
【0031】
特定の場合において、ディジタルVGA132は、所望の解像度にスケーリングされたデシベル単位を有する対数ドメインで動作する。上記の通り、デシベル単位を有する対数ドメインでの動作は、AGC134によって生成された利得値を変換せずに使用できる場合には、とりわけ好都合である。しかしながら、他の実施形態において、本発明は他の対数ドメインまたは非線形ドメインで動作してもよい。さらに別の実施形態において、対数変換ユニット302および指数変換ユニット310は、種々のLUTに加えて、あるいはそれらの代替としてアルゴリズムを実現する。
【0032】
図4は、より詳細に示されているディジタルVGA132の一実施形態のブロック図である。とりわけ、対数ルックアップテーブル(LOG LUT)402を含むものとして対数変換ユニット302が示されている。さらに、対数変換ユニット302は、着信符号付きベースバンド信号を符号なし絶対値(406で示されるABS)と(410で示されている)符号ビットに分離するハードウェアを含んでいる。すなわち、符号ビットが対数変換ユニット302内のベースバンド信号から除去されて、次いで指数変換ユニット310において伝搬および再挿入される。負の数の対数は未定である。従って、ベースバンド信号から符号ビットを除去することは、ディジタルVGA内のハードウェアが対数ドメイン内の負の数で動作しようとするシナリオを回避する。むしろ、ディジタルVGA132内の特定のハードウェアは、符号ビットが除去されると、対数ドメイン内の正の数でのみ動作してもよい。
【0033】
特定の例において、A/D変換器128(図1)は、1個の符号ビットと、7個の整数ビットと、10個の小数ビットとを含む、18ビットのバイナリ数としてディジタルベースバンド信号129を生成する。符号ビットはベースバンド信号から分離され、7個の整数ビットと10個の小数ビットを含む残りの17ビットのバイナリ数はLOG LUT402に供給される。ルックアップの結果として、17ビットのバイナリ数は9ビットの符号付き数に変換されて、これは加算器306に供給される。加算器306はまた、所望の解像度のデシベル単位で利得値を表すAGC134から9ビットの符号付き数を受信する。特に、利得値は既に対数ドメイン内にあるため、加算器306への入力に先立って何ら調整を必要としない。加算器306はそれぞれの入力を加算し、10ビットの結果を生成し、これは指数変換ユニット310に供給される。一例において、比較的簡素で、コストの低い9ビットの加算器が使用される。
【0034】
指数変換ユニット310は飽和ユニット424と少なくとも1つの指数LUT428とを含んでいてもよい。飽和ユニットを使用して、対数ドメインにおいてベースバンド信号を飽和することができる。例えば、上記の例で継続すると、指数変換ユニット310に供給される10ビットの符号付き結果は、飽和ユニット424によって7ビットに飽和され、128個の可能な値によって表される動的範囲を広げることができる。飽和ユニット424の出力は、(410で示されている)符号ビットに伴って指数LUT428に供給されて、線形ドメインにおいてスケーリングされたベースバンド信号を表す4ビットの符号付き結果を生成する。指数LUT430におけるルックアップに先立って飽和を実行することは、指数LUT430における個々のエントリの必要サイズを縮小することによって、メモリスペースを縮小することができる。さらに、打切り動作が指数LUT430に組み込まれていてもよい。すなわち、従来の乗算器タイプのVGAに追従する必要がある任意の従来の打切り動作が、単に指数LUT430の出力の適切なビット幅を定義することによって、本発明に従った指数LUT430に組み込まれていてもよい。
【0035】
図5〜図7は、本発明に従った指数変換ユニットの3つの異なる例示的実施形態を示している。図4に示されている飽和ユニット424は図5〜図7には示されていないが、ルックアップに先立つ飽和については含まれており、指数変換ユニット内の1つ以上のLUTのサイズを縮小することができる。さらに、指数変換ユニット内の1つ以上のLUTにおけるエントリは、ディジタル入力信号を効果的に打切る出力ビット幅を有していてもよい。
【0036】
図5に示されている指数変換ユニット502は、正および負の値に対して異なるLUTを含んでいる。とりわけ、指数変換ユニット502は、128個の可能な正の3ビットの値を記憶するEXP_LUT(pos)506を含んでおり、また128個の可能な負の4ビットの値を記憶するEXP_LUT(neg)510を含んでいる。(410で示されている)符号ビットを使用して、多重化器518によって使用されている入力信号514を提供して、適切なLUTから出力を選択する。従って、符号ビットが負の数を識別すると、多重化器518はEXP_LUT(neg)510から出力を選択する。符号ビットが正の数を識別すると、多重化器518はEXP_LUT(pos)506から出力を選択する。
【0037】
図6は、指数変換ユニットのさらに別の構成を示している。とりわけ、図6に示されているような指数変換ユニット540は単一のEXP_LUT(pos)544を使用して、EXP_LUT(neg)とEXP_LUT(pos)544から読み取られた正の値から相補的な負の値を生成するために使用される加算器548とを交換する。例えば、正の値XがEXP_LUT(pos)に記憶されているとすると、相補的な負の値は、ある場合(−X−1)には、適切な相補式によって生成されてもよい。しかしながら、正および負の値が好ましく各Y軸に対称である他の場合には、−X+1という2の補数式などを使用して、正の値から負の値を生成することができる。
【0038】
図6に示されているような指数変換ユニット540は、メモリ要件をさらに軽減することによって利点を提供することができる。とりわけ、指数変換ユニット540は単一の128ビット×3ビットのLUTと加算器548とを利用する。他方、図5に示されている指数変換ユニット502はより多くのメモリスペースを必要とするが、さらなる加算器を排除する。図5および図6の実施形態の各々は利点および不利点を有しており、これらは、所与の実現のための最良の構成を判断する際に考慮される。
【0039】
図7は、指数変換ユニットのさらに別の構成を示している。図6の実施形態と同様に、図7に示されている指数変換ユニット560は単一のEXP_LUT(pos)544を使用する。しかしながら、指数変換ユニット560は、EXP_LUT(pos)544から選択されたビットを反転して、符号ビットを付加することによって負の値を生成する。補数ユニット568を使用して、反転を実行することができ、また付加ユニット574を使用して、多重化器518が所望の出力を選択した後に符号ビットを付加することができる。図7の実施形態は、図5に示されているようなEXP_LUT(neg)の必要性を排除し、また図6に示されているような加算器の必要性をも排除する。
【0040】
図8は、対数変換ユニット302の実現をより詳細に示しているブロック図である。上記の通り、対数変換ユニット302を使用して、例えば着信線形ベースバンド信号129などの信号のディジタル値を対数ドメインに変換する。対数変換ユニット302が、線形ベースバンド信号の許容値を対数ドメインにマッピングする単一のLUTを遂行することによって実現可能である一方、図8に示されているような代替構成はメモリ要件を著しく軽減することができる。
【0041】
とりわけ、図8に示されているように、対数変換ユニット302は浮動小数点数を実現するための種々のハードウェアを含んでいる。例えば、Nビットの正のバイナリ数X(p)はX(p)=m*2E(ここでEは指数であり、1に設定されるX(p)の最上位ビットの位置を表しており、またmは仮数であり、残りのE−1個の最下位ビットを表している)で表すことができる。
【0042】
デシベル単位を有する対数ドメインにおいて、上記の浮動小数式は以下のように表すことができる。
20.log(X(p)/210).RdB=20.log(2E/210).RdB+20.log(m).RdB
ここでRdBは所望のデシベル解像度の逆である。デシベル単位の対数ドメインにおける浮動小数式は以下のように表すことができる。
X=XE+Xm
ここでXEは指数のデシベル値であり、Xmは仮数のデシベル値である。
【0043】
この特定のドメインにおいて、XEはN=17個のエントリのテーブルとして記憶されることが可能である(ここで各エントリは9ビット幅である)。さらにXmはN個のセグメントと考えられてもよい。しかしながら、セグメントのうちの1つだけがテーブルとして記憶される必要があり、他の全セグメントの値は記憶されているセグメントのエントリから引き出されることが可能である。例えば、m番目のセグメントは、2m−1個の要素を含んでおり、これらの各々は、(m+n)番目のセグメントの入力アドレスをnビットだけ左シフトすることによって(m+n)番目のセグメントの要素から引き出されることが可能である。さらに最も近い隣接補間を実行して、m番目のセグメントの要素から(m+n)番目のセグメントの要素を引き出すことができる。とりわけ、m番目のセグメントの要素から(m+n)番目のセグメントの要素を補間するためには、m番目のセグメントの入力アドレスをnビットだけ切上げ、(m+n)番目のセグメントの入力アドレスとして使用することができる。
【0044】
図8を再び参照すると、対数変換ユニット302は指数抽出器602と仮数抽出器606とを含んでいる。指数LUT612を使用して指数の対数値を生成することができる。さらに、仮数LUT616を使用して仮数の対数値を生成することができる。そしてこれらの値は加算器620によって結合され、可能な限り打切りユニット624によって打切られる。
【0045】
一実施形態において、仮数LUT616は種々の仮数セグメントの全可能な値をマッピングする。しかしながら、仮数LUT616のサイズを縮小することによってメモリ要件を軽減するためには、アドレス操作論理624を実現して、仮数の1つのセグメントの値を、仮数の異なるセグメントから生成するようにすることができる。このように、仮数の単一のセグメントのみが仮数LUT616に記憶されることが可能である。
【0046】
アドレス操作論理624は以下のように動作することができる。仮数LUT616が2U個のエントリを含んでいるとすると、
E>Uならば、入力アドレスをM’=round(M/2(E−U))とし、また
E≦Uならば、M’=<<(U−E)とする。
すなわち、E>Uならば、M’は補間されて、仮数LUT616に記憶されている最も近い隣接入力アドレスとして定義され、またE≦Uならば、M’は、入力アドレスを(U−E)ビットだけ左シフトすることによって得られる。そしてM’は記憶されているセグメントに供給されて、対数ドメインにおいて適切な変換値を生成することができる。
【0047】
図9および図10は、図8に示されている対数変換ユニット302の実施形態の背後にある概念をさらに示している一連の2つのグラフである。また、デシベル単位を有する対数ドメインにおける浮動小数式はX=XE+Xm(ここでXEは指数のデシベル値であり、Xmは仮数のデシベル値である)として表すことができる。図9は、同一入力に対するデシベル値XEのグラフと比較して、線形入力の関数としてのデシベル値Xのグラフである。図9から分かるように、XEの値は、種々の異なる入力において、Xの値からわずかにずれている。
【0048】
図10は、デシベル値Xmのグラフである。Xmは種々の異なる入力においてXとXEとの間の変化とみられる。従って、図8に示されているように、Xは指数LUT612と仮数LUT616から生成されることが可能である。とりわけ、指数LUT612を使用して指数の対数値を生成し、仮数LUT616を使用して仮数の対数値を生成する。しかしながら、重要なことに、メモリスペースを縮小するためには、仮数LUT616は、図9に示されているスパイク(すなわちセグメント)の1つに対するエントリを記憶することだけを要する。そして他のスパイクの値は、上記のようなアドレス操作論理624を使用して生成されることが可能である。
【0049】
仮数LUT616に記憶されているセグメント(すなわち図10に示されているスパイク)は、必要な正確さに応じて選択されてもよい。例えば、完全対数仮数テーブルは、最後のセグメント(この場合は17番目のセグメント)を記憶することによって全くの損失なしに引き出されることが可能である。しかしながら、これは、217−1=65,536個のエントリを有するLUTとなる。特に、対数関数は大きい入力においては平らになる傾向があるので、より小さいセグメントが、無線通信デバイスにおける性能の著しい損失なく選択されることが可能である。とりわけ、実験は、7番目のセグメントの記憶は全入力に対する許容近似を生成することを示している。これは27−1=64個のエントリのみを有する仮数LUTを必要とする。
【0050】
仮数テーブルの包含について比較的小さい数のセグメントを選択することは、対数関数に対する不均一サンプリングを効果的に導く。低入力、例えば対数関数が比較的速く変化する低セグメントにおいて、小さい数のセグメントにおける全ての値は大きい数のセグメントから生成されることが可能である。しかしながら、対数関数がかなりゆっくりと変化する高入力において、値は記憶されているセグメントから補間される。これは、対数関数の不均一サンプリングの一種とみられ、この場合、低入力においてはより多くのデータが保存されているが、高入力においてはごく小数のデータポイントしか保存されていない。実験は、このような不均一サンプリングは、WCDにおいて著しい性能低下を招かないことを示している。
【0051】
量子化雑音などの想定外の変数を説明するために、指数LUT612と仮数LUT616の双方の解像度をKビットだけ増加して、データが正しくかつ壊れていないことを保証することができる。量子化雑音は、浮動小数LOG関数が有限ビット幅のディジタル数で表されている場合には常に導かれることが可能である。実験は、指数LUT612と仮数LUT616の解像度をK=3ビット増加させることは、WCDの量子化雑音を十分に補償できることを示している。
【0052】
図11は、1つ以上のLUTを実現する際にメモリ要件を軽減するために使用可能なプロセスを示しているフロー図である。図11に示されているプロセスはWCDに使用される場合にはとりわけ効果的であるが、限定的ではない。例えば、図11のプロセスは、ルックアップテーブルを実現する任意のコンピュータデバイスに使用することができる。
【0053】
図示されているように、数字は、第一のドメインにおいて指数成分と仮数成分とに分離される(802)。例えば、第一のドメインは線形ドメインであってもよく、また数字は、信号のディジタル値を表すバイナリの浮動小数点数であってもよい。この場合、指数成分は、1に設定されている最上位ビットを単に識別および記憶することによって数字から抽出される。同様に、仮数成分は、残りの最下位ビットを単に記憶することによって数字から抽出される。
【0054】
指数成分は第一のドメインから、非線形ドメインなどの第二のドメインに変換されてもよい(804)。別個に、仮数成分は第一のドメインから第二のドメインに変換されてもよい(806)。特定の場合において、第二のドメインは所望の解像度のデシベル単位を有する対数ドメインである。第二のドメインに変換されると(804および806)、指数および仮数の成分は結合されてもよい(808)。例えば、指数および仮数の成分を単に合算することによって結合を容易にするように加算器が実現されてもよい。所望なら、結合は打切りまたは切上げられてもよい。
【0055】
指数成分の変換は第一のLUT、例えば指数LUTを使用して実行されてもよい。同様に、仮数成分の変換は第二のLUT、例えば仮数LUTを使用して実行されてもよい。あるいはまた、変換の一方または両方とも、アルゴリズム、またはアルゴリズムとLUTの組み合わせを使用して実行されてもよい。
【0056】
指数LUTは比較的小さくてもよく、また指数の可能なビット位置に対応するエントリを有していてもよい。例えば、数字が17ビットの数字である場合、指数LUTは17個のエントリだけを有している。一方で、仮数LUTはかなり多数のエントリを含んでいてもよい。例えば、数字が17ビットの数字である場合、仮数LUTはかなりの多数のエントリを含んでいてもよい。このために、さらなる技術を使用して、仮数LUTのサイズをさらに縮小することによって、メモリスペースを縮小することができる。
【0057】
図12は、仮数LUTのサイズを著しく縮小するために使用可能なプロセスを示しているフロー図である。図示されているように、全仮数値のサブセットのみが仮数テーブルに記憶されている(902)。そしてサブセットに含まれていない値はサブセットから引き出されることが可能である(904)。このように、仮数LUTを実現するためのメモリ要件が軽減される。
【0058】
再び図10を参照すると、仮数値のサブセットは、図10に示されているスパイクの1つに対応していてもよい。他の全スパイクの値は、入力をシフトして、シフトされた入力に基づいてサブセットのエントリを選択すること、および入力を補間して、補間された入力に基づいてサブセットのエントリを選択することのいずれかによって生成されることが可能である。小さい数の仮数セグメントの値が必要な場合(すなわち、図10において、記憶されているセグメントの左側に配置されているセグメント)、シフト操作を使用することができる。大きい数の仮数セグメントの値が必要な場合(すなわち、図10において、記憶されているセグメントの右側に配置されているセグメント)、補間操作を使用することができる。このように、可能な仮数値の総数が、必要なら、テーブルに記憶されている仮数エントリのより小さいサブセットから生成されて、それによってメモリスペースを縮小することができる。
【0059】
とりわけ、大きい数の仮数セグメントにおける値が必要な場合、この値の入力アドレスが補間されて、記憶されている仮数セグメント内の最も近い隣接入力アドレスとして定義される。小さい数の仮数セグメントにおける値が必要な場合、この値の入力アドレスは、記憶されているセグメントの数字と所望の値に対するセグメントの数字間の差異に対応するビット数だけ左シフトされる。そして補間されたアドレス、またはシフトされたアドレスが記憶されているセグメントに供給されて適切な変換値を生成する。
【0060】
上記のように、特定のサブセットが仮数LUTに記憶されて、所望の正確さに応じて選択されてもよい。特に、対数関数は大きな入力において平らになる傾向があるので、小さなセグメントを、無線通信デバイスにおける性能の著しい損失なく使用することができる。とりわけ、実験は、7番目のセグメントが全入力に対する許容近似を生成したことを示している。これは、27−1=64個のエントリのみを有する仮数LUTを要する。
【0061】
さらに別の実施形態において、対数または対数様関数の不均一サンプリングを備えているエントリを含む、わずかに大きな仮数LUTを使用することができる。例えば、エントリは上記の技術を使用して事前演算されてもよい。すなわち、仮数のセグメントが選択されて、小さいセグメントにおける値のすべてが事前演算されて、かつLUT内に含まれてもよい。しかしながら、大きいセグメントについて、エントリは上記の補間技術に従って事前演算されてもよい。このように、LUT内に記憶されている全セグメントは選択されたセグメント以上のエントリを有しておらず、従って必要なメモリスペース量を制限することになる。仮数LUTは単一のセグメントのみを記憶しているLUTよりも大きいが、アドレス操作論理は必要でない。特定の実現を設計する際に、さらなる必要なメモリスペースはアドレス操作論理の包含に対して重み付けされて、最良の、または最も効率のよい構成を判断する。
【0062】
上記の種々のLUTがメモリに記憶されて、必要ならアクセスされてもよい。上記の方法が、プログラムコードなどのソフトウェアで実現されてもよい場合がある。例えば、プログラムコードはメモリにロードされて、次いでプロセッサで実行されてもよい。プログラムコードはまず、ハードドライブ、または磁気、光学、光磁気、位相変化、あるいは他のディスクまたはテープ媒体などのコンピュータ読み取り可能な媒体で搬送される。あるいはまた、プログラムコードはEEPROMなどの電子コンピュータ読み取り可能な媒体からメモリにロードされても、またはネットワーク接続でダウンロードされてもよい。ダウンロードされると、プログラムコードはまず、搬送波に埋め込まれてもよく、そうでなければ電磁信号上で送信されてもよい。プログラムコードは広範囲の機能性を提供するアプリケーションプログラムにおける特徴として実現される。
【0063】
本発明がプログラムコードで実現される場合、プログラムコードを実行するプロセッサはマイクロプロセッサの形態を採ってもよく、またPC,マッキントッシュ(Macintosh)、コンピュータワークステーション、ハンドヘルドデータ端末、パームコンピュータ、WCD、無線基地局、ネットワークルータなどと統合されても、またはこれらの一部を形成してもよい。メモリは、プロセッサによってアクセスおよび実行されて上記の種々の方法を実行するプログラムコードを記憶するランダムアクセスメモリ(RAM)を含んでいてもよい。
【0064】
本発明の種々の実施形態が説明されてきた。例えば、ディジタルVGAはWCDにおける使用に関して説明されてきた。とりわけ、ディジタルVGAは対数ドメイン内で動作し、従来の乗算器、および1000バイトより大きいサイズを有する従来の指数ルックアップテーブルを、加算器、通常サイズの(すなわち全スペースのうちの約200バイト)の対数LUT、および通常サイズの(すなわち約128バイト)小さい指数テーブルと交換する。にもかかわらず、種々の変形が、本発明の主旨および範囲から逸脱することなくなされてもよい。例えば、ルックアップテーブルを実現するというよりはむしろ、本発明は、対数ドメインを線形ドメインに動的に変換する、および/またはその反対のアルゴリズムを使用して実現されてもよい。さらに、本発明は他の対数ドメインで実現されてもよい。さらに、本発明に従ったディジタルVGAは、例えば無線通信ネットワーク内の基地局を含む他のデバイスで使用されてもよい。例えば、ある種の打切りが後続する乗算器を実現するデバイスは本発明の恩恵を受ける。
【0065】
さらに、本発明の態様はディジタルVGA以外のアプリケーションで使用されてもよい。例えば、打切り動作が後続する乗算動作を実行する装置は本発明の態様を使用して、従来の乗算器を加算器と交換することができる。ある場合には、乗算器以外の加算器を使用して2つのベースバンド信号を乗算するように本発明が実現されてもよい。一般的に、本発明は、線形ディジタル値を対数ドメインに変換し、対数ドメインにおいてディジタル値を加算し、そして加算された値を線形ドメインに逆変換することによって乗算および打切りを実行することができる。さらに、打切り動作は、単に出力ビット幅を選択して信号を効果的に打切ることによって線形ドメインに逆変換するために使用可能なルックアップテーブルに内蔵されてもよい。
【0066】
メモリ要件を軽減するためにLUTのサイズを縮小するための種々の技術もまた説明されている。とりわけ、これらの技術の多くはWCDと関連して説明されている。しかし、本発明はこの観点に制限されない。例えば、1つ以上のLUTのサイズを縮小するために使用される技術をまた他のコンピュータデバイスで使用してメモリスペースを縮小することができる。従って、これらおよび他の実施形態は以下の特許請求の範囲内にある。
【図面の簡単な説明】
【0067】
【図1】本発明に従った無線通信デバイスを示しているブロック図。
【図2】本発明の実施形態に従ったフロー図。
【図3】本発明に従ったディジタルVGAの実施形態を示しているブロック図。
【図4】ディジタルVGAの実施形態をより詳細に示しているブロック図。
【図5】本発明に従った指数変換ユニットの3つの異なる例示的実施形態のうちの1つを示す図。
【図6】本発明に従った指数変換ユニットの3つの異なる例示的実施形態のうちの1つを示す図。
【図7】本発明に従った指数変換ユニットの3つの異なる例示的実施形態のうちの1つを示す図。
【図8】対数変換ユニットの実現をより詳細に示しているブロック図。
【図9】図8に示されている対数変換ユニットの実施形態の背後にある概念をさらに示している一連の2つのグラフのうちの1つ。
【図10】図8に示されている対数変換ユニットの実施形態の背後にある概念をさらに示している一連の2つのグラフのうちの1つ。
【図11】本発明に従ったフロー図。
【図12】本発明に従ったフロー図。
【符号の説明】
【0068】
100…例示的無線通信デバイス、104…アンテナ、108…低雑音増幅器、112…RFミキサー、116…周波数合成器、120…電圧制御発振器、124…フィルタ、128…ディジタル変換器、132…ディジタルVGA、134…自動利得制御ユニット、135…対数利得値、136…レーキ受信機、140…ディジタル信号プロセッサ、302…対数変換ユニット、305…対数値、306…加算器、310…指数変換ユニット、402…対数ルックアップテーブル、424…飽和ユニット、428…指数LUT、430…指数LUT、502…指数変換ユニット、518…多重化器、540…指数変換ユニット、548…加算器、560…指数変換ユニット、568…補数ユニット、574…付加ユニット、602…指数抽出器、606…仮数抽出器、612…指数LUT、616…仮数LUT、620…加算器、624…打切りユニット
Claims (31)
- ディジタル値の指数成分と仮数成分とを第一のドメインから第二のドメインに別個に変換し、前記第二のドメインにおいて前記ディジタル値の前記変換された指数成分と前記変換された仮数成分とを結合することによって、信号の前記ディジタル値を前記第一のドメインから前記第二のドメインに変換することと、
前記第二のドメインにおいて前記信号の前記変換されたディジタル値を処理することと
を備えた方法。 - 請求項1に記載の方法において、
前記信号の前記変換されたディジタル値を処理することが、前記変換されたディジタル信号をスケーリングすることを備えている方法。 - 請求項1に記載の方法において、
前記信号が、拡散スペクトル波形から生成されたディジタルベースバンド信号を備えている方法。 - 請求項1に記載の方法において、
さらに、前記処理されたディジタル値を前記第二のドメインから前記第一のドメインに変換することを備えている方法。 - 請求項1に記載の方法において、
前記信号の前記ディジタル値を変換することが、
対数仮数値を、前記仮数成分に基づいて対数仮数値のセットから選択することと、
対数指数値を、前記指数成分に基づいて指数対数値のセットから選択することと、
前記選択された対数仮数値と前記選択された対数指数値とを結合することと
を備えている方法。 - 請求項5に記載の方法において、
前記対数仮数値を選択することが、
複数の対数仮数値のサブセットを記憶することと、
前記サブセットに含まれていない前記対数仮数値の1つを、前記仮数成分に基づいて前記記憶されているサブセットから導き出すこととを備えた方法。 - 請求項1に記載の方法において、
さらに、前記指数成分を、指数ルックアップテーブルを使用して前記第一のドメインから前記第二のドメインに変換することと、
前記仮数成分を、仮数ルックアップテーブルを使用して前記第一のドメインから前記第二のドメインに変換することと
を備えている方法。 - 請求項1に記載の方法において、
さらに、前記第二のドメインにおいて前記変換された指数成分と前記変換された仮数成分の結合を打切ることを備えている方法。 - 請求項1に記載の方法において、
さらに、前記第二のドメインにおいて前記変換された指数成分と前記変換された仮数成分の結合を切上げることを備えている方法。 - 請求項1に記載の方法において、
前記第一のドメインは線形ドメインであり、前記第二のドメインは非線形ドメインである方法。 - 請求項10に記載の方法において、
前記第二のドメインは、デシベルを単位として使用する対数ドメインである方法。 - 請求項1に記載の方法において、
前記仮数成分を前記第一のドメインから前記第二のドメインに変換することが、全仮数値のサブセットを備えている仮数テーブルのルックアップを実行することを備えている方法。 - 請求項1に記載の方法において、
前記仮数成分を前記第一のドメインから前記第二のドメインに変換することが、補間を実行して、前記補間に基づいて全仮数値のサブセットを備えている仮数テーブルからエントリを選択することによって、前記第二のドメインにおいて前記仮数成分を生成することを備えている方法。 - 請求項13に記載の方法において、
前記補間が、前記仮数成分を切上げて、前記切上げられた仮数成分を右シフトすることによって実行される最も近い隣接補間である方法。 - 請求項1に記載の方法において、
前記仮数成分を前記第一のドメインから前記第二のドメインに変換することが、前記第一のドメインにおいて前記仮数成分を左シフトして、前記左シフトの結果に基づいて全仮数値のサブセットを備えている仮数テーブルからエントリを選択することによって、前記第二のドメインにおいて前記仮数成分を生成することを備えている方法。 - 請求項1に記載の方法において、
前記仮数成分を前記第一のドメインから前記第二のドメインに変換することが、対数関数の不均一サンプリングを備えているエントリを含む仮数テーブルのルックアップを実行することを備えている方法。 - 全対数仮数値のサブセットを仮数テーブル内のエントリとして記憶することと、
前記サブセットに含まれていない前記対数仮数値の1つを前記サブセットから導出することと、
前記導出された対数仮数値と対数指数値とを結合して、信号の対数ディジタル値を生成することとを備えている方法。 - 請求項17に記載の方法において、
前記サブセットに含まれていない前記対数仮数値の1つを導出することが、入力に対してシフト動作を実行して、前記シフトされた入力に基づいて前記エントリの1つを選択することによって、前記サブセットに含まれていない前記対数仮数値の1つを生成することを備えている方法。 - 請求項17に記載の方法において、
前記サブセットに含まれていない前記対数仮数値の1つを導出することが、補間を実行し、次いで前記補間に基づいて前記エントリの1つを選択することによって、前記サブセットに含まれていない前記対数仮数値の1つの近似を生成することを備えている方法。 - 実行されると、ディジタル値の指数成分と仮数成分とを第一のドメインから第二のドメインへと別個に変換し、前記第二のドメインにおいて前記ディジタル値の前記変換された指数成分と前記変換された仮数成分とを結合することによって、信号の前記ディジタル値を前記第一のドメインから前記第二のドメインに変換するプログラムコードを有するコンピュータ読み取り可能な媒体。
- 請求項20に記載のコンピュータ読み取り可能な媒体において、
前記プログラムコードは、実行されると、
全対数仮数値のサブセットを仮数テーブル内のエントリとして記憶することと、
前記サブセットに含まれていない前記対数仮数値の1つを前記サブセットから導出することと、
前記第二のドメインにおいて対数ディジタル値を生成するために、前記導出された対数仮数値を対数指数値と結合することとによって、
前記ディジタル値の前記仮数成分を前記第一のドメインから前記第二のドメインに変換するコンピュータ読み取り可能な媒体。 - 数字から指数成分を抽出する指数抽出器と、
前記数字から仮数成分を抽出する仮数抽出器と、
前記指数成分を第一のドメインから第二のドメインに変換するために使用される第一のルックアップテーブルと、
前記仮数成分を前記第一のドメインから前記第二のドメインに変換するために使用される第二のルックアップテーブルと、
前記第二のドメインにおいて前記指数成分と前記仮数成分とを結合する加算器と
を備えている装置。 - 請求項22に記載の装置において、
さらに、前記第二のドメインにおいて前記指数成分と前記仮数成分との結合を打切るシフタを備えている装置。 - 請求項22に記載の装置において、
さらに、前記第二のドメインにおいて前記指数成分と前記仮数成分との結合を切上げるシフタを備えている装置。 - 請求項22に記載の装置において、
前記第一のドメインが線形ドメインであり、前記第二のドメインがデシベルを単位として使用する対数ドメインである装置。 - 請求項22に記載の装置において、
補間を実行するアドレス操作論理を更に備え、
前記第二のルックアップテーブルが全仮数値のサブセットを備えている仮数テーブルであり、エントリが前記補完に基づいて前記仮数テーブルから選択される装置。 - 請求項22に記載の装置において、
入力に対してシフト動作を実行するアドレス操作論理を更に備え、
前記第二のルックアップテーブルが全仮数値のサブセットを備えている仮数テーブルであり、エントリが前記シフトされた入力に基づいて前記仮数テーブルから選択される装置。 - 請求項27に記載の装置において、
前記第二のルックアップテーブルが、対数関数の不均一サンプリングを備えているエントリを含む仮数テーブルである装置。 - 全仮数値のサブセットを仮数テーブル内のエントリとして記憶するメモリと、
入力に対する操作を実行して、前記操作の結果に基づいて前記エントリの1つを選択することによって、前記サブセットに含まれていない仮数値を生成するアドレス操作論理とを備えている装置。 - 請求項29に記載の装置において、
前記アドレス操作論理が、入力に対してシフト動作を実行し、前記シフトされた入力に基づいて前記エントリの1つを選択することによって、前記サブセットに含まれていない前記仮数値を生成する装置。 - 請求項29に記載の装置において、
前記アドレス操作論理が、補間を実行し、次いで前記補間に基づいて前記エントリの1つを選択することによって、前記サブセットに含まれていない前記仮数値を生成する装置。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US30596801P | 2001-07-16 | 2001-07-16 | |
US09/954,760 US6950841B2 (en) | 2001-07-16 | 2001-09-14 | Logarithmic lookup tables |
PCT/US2002/022820 WO2003009128A2 (en) | 2001-07-16 | 2002-07-16 | Logarithmic lookup tables |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2005500724A true JP2005500724A (ja) | 2005-01-06 |
Family
ID=26974894
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2003514405A Pending JP2005500724A (ja) | 2001-07-16 | 2002-07-16 | 対数ルックアップテーブル |
Country Status (5)
Country | Link |
---|---|
US (1) | US6950841B2 (ja) |
JP (1) | JP2005500724A (ja) |
CN (1) | CN1547694A (ja) |
AU (1) | AU2002320604A1 (ja) |
WO (1) | WO2003009128A2 (ja) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101510148B (zh) * | 2009-04-02 | 2014-10-29 | 北京中星微电子有限公司 | 一种指数运算方法和装置 |
JP5753639B1 (ja) * | 2015-03-03 | 2015-07-22 | 株式会社テスコム | 通信装置 |
Families Citing this family (19)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100517971B1 (ko) * | 2002-09-07 | 2005-09-30 | 엘지전자 주식회사 | 이동통신 시스템의 고정점 결정장치 및 방법 |
GB2401444B (en) * | 2003-05-07 | 2006-06-14 | Matsushita Electric Ind Co Ltd | Apparatus and program for encoding fixed length binary words |
US7321912B2 (en) * | 2003-06-24 | 2008-01-22 | Texas Instruments Incorporated | Device with dB-to-linear gain conversion |
JP4662737B2 (ja) * | 2004-06-17 | 2011-03-30 | セイコーNpc株式会社 | アッテネータ、アッテネータの減衰量取得方法及びプログラム |
US7271748B2 (en) * | 2004-09-13 | 2007-09-18 | Texas Instruments Incorporated | System and method for providing a thermometer coded output filter |
US20060106905A1 (en) * | 2004-11-17 | 2006-05-18 | Chren William A Jr | Method for reducing memory size in logarithmic number system arithmetic units |
US7916773B2 (en) * | 2004-12-20 | 2011-03-29 | Telefonaktiebolaget L M Ericsson (Publ) | Scaling and truncating in a receiver for coded digital data symbols |
EP1851895B1 (en) * | 2005-02-10 | 2011-07-06 | ST-Ericsson SA | Method and apparatus for signal quality estimation |
JP4205070B2 (ja) * | 2005-03-09 | 2009-01-07 | アンリツ株式会社 | 信号測定装置及び信号分析装置 |
US7475103B2 (en) * | 2005-03-17 | 2009-01-06 | Qualcomm Incorporated | Efficient check node message transform approximation for LDPC decoder |
US8418778B2 (en) | 2010-01-07 | 2013-04-16 | Black & Decker Inc. | Power screwdriver having rotary input control |
US9722334B2 (en) | 2010-04-07 | 2017-08-01 | Black & Decker Inc. | Power tool with light unit |
DE102011101567A1 (de) | 2011-05-16 | 2012-11-22 | Markus Rensburg | Vorrichtung zum Aufbau einer im Wesentlichen ebenen Fläche,Verfahren zum Aufbau einer im Wesentlichen ebenen Fläche und ebene Fläche, insbesondere Terrassenfläche |
US9411756B2 (en) | 2012-06-18 | 2016-08-09 | Blackberry Limited | Function approximation circuitry |
US8836424B2 (en) * | 2012-07-16 | 2014-09-16 | Intel Mobile Communications GmbH | Amplifier circuit, method and mobile communication device |
US9753695B2 (en) | 2012-09-04 | 2017-09-05 | Analog Devices Global | Datapath circuit for digital signal processors |
DE102014200465A1 (de) * | 2014-01-14 | 2015-07-16 | Robert Bosch Gmbh | Vorrichtung und Verfahren zur Bestimmung eines Schätzwertes des Logarithmus einer Eingangsgröße |
CN108958704B (zh) * | 2017-05-18 | 2020-12-15 | 华为技术有限公司 | 一种数据处理装置及方法 |
US11552650B2 (en) * | 2019-10-03 | 2023-01-10 | Raytheon Company | Methods to compress range doppler map (RDM) values from floating point to decibels (dB) |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
FR2660081B1 (fr) * | 1990-03-22 | 1994-09-23 | Asahi Optical Co Ltd | Viseur et appareil photo le comportant. |
US5642305A (en) | 1995-01-31 | 1997-06-24 | Motorola, Inc. | Logarithm/inverse-logarithm converter and method of using same |
US5600581A (en) | 1995-02-22 | 1997-02-04 | Motorola, Inc. | Logarithm/inverse-logarithm converter utilizing linear interpolation and method of using same |
JPH11212768A (ja) | 1998-01-23 | 1999-08-06 | Sanyo Electric Co Ltd | 対数値算出回路 |
-
2001
- 2001-09-14 US US09/954,760 patent/US6950841B2/en not_active Expired - Lifetime
-
2002
- 2002-07-16 AU AU2002320604A patent/AU2002320604A1/en not_active Abandoned
- 2002-07-16 WO PCT/US2002/022820 patent/WO2003009128A2/en active Application Filing
- 2002-07-16 CN CNA028165497A patent/CN1547694A/zh active Pending
- 2002-07-16 JP JP2003514405A patent/JP2005500724A/ja active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101510148B (zh) * | 2009-04-02 | 2014-10-29 | 北京中星微电子有限公司 | 一种指数运算方法和装置 |
JP5753639B1 (ja) * | 2015-03-03 | 2015-07-22 | 株式会社テスコム | 通信装置 |
Also Published As
Publication number | Publication date |
---|---|
AU2002320604A1 (en) | 2003-03-03 |
WO2003009128A3 (en) | 2003-09-25 |
US20030014453A1 (en) | 2003-01-16 |
WO2003009128A2 (en) | 2003-01-30 |
US6950841B2 (en) | 2005-09-27 |
CN1547694A (zh) | 2004-11-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5559286B2 (ja) | 対数と指数との変換を使用するディジタル電圧増幅器 | |
JP2005500724A (ja) | 対数ルックアップテーブル | |
EP0004046B1 (en) | Apparatus for amplitude and frequency modulating a signal | |
JP4202604B2 (ja) | 送信信号の振幅を制限する方法及び装置 | |
EP1058400B1 (en) | Method & apparatus for reducing the peak power probability of a spread spectrum signal | |
KR100407338B1 (ko) | 수신기 | |
US7340019B2 (en) | Programmable filter | |
US8682315B2 (en) | Predistortion system and method based on look up table interpolation | |
WO2001022582A1 (en) | Fir filter utilizing programmable shifter | |
US6678382B2 (en) | Digital attenuator | |
US6983012B1 (en) | Implementation of digital filter with reduced hardware | |
US5602874A (en) | Method and apparatus for reducing quantization noise | |
US7515647B2 (en) | Digital frequency converter | |
JP3842396B2 (ja) | デジタル変調装置 | |
JP3206773B2 (ja) | ディジタル信号処理型直交変調器 | |
US10250416B2 (en) | Recursive difference filter realization of digital filters | |
US6993551B2 (en) | Sparse-coefficient functions for reducing computational requirements | |
KR100346155B1 (ko) | 디지털 자동이득제어기에서의 곱셈장치 | |
JP2006020214A (ja) | 変調器 | |
EP1405427B1 (en) | System and method for post filtering peak power reduction in communications systems | |
JP2004214872A (ja) | ピーク制限回路 |