JP2002152014A - 正規最小平均二乗アルゴリズムに基づいた係数適応用ハードウエアアクセリレータ - Google Patents

正規最小平均二乗アルゴリズムに基づいた係数適応用ハードウエアアクセリレータ

Info

Publication number
JP2002152014A
JP2002152014A JP2001223474A JP2001223474A JP2002152014A JP 2002152014 A JP2002152014 A JP 2002152014A JP 2001223474 A JP2001223474 A JP 2001223474A JP 2001223474 A JP2001223474 A JP 2001223474A JP 2002152014 A JP2002152014 A JP 2002152014A
Authority
JP
Japan
Prior art keywords
coefficient
memory
vector
adaptation
input signal
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
Application number
JP2001223474A
Other languages
English (en)
Inventor
Dake Liu
リュウ デイク
Stig Stuns
スタンス スティグ
Harald Bergh
ベルグ ハラルド
Nick Skelton
スケルトン ニック
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
FREEHAND COMM AB
FREEHAND COMMUNICATIONS AB
Original Assignee
FREEHAND COMM AB
FREEHAND COMMUNICATIONS AB
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by FREEHAND COMM AB, FREEHAND COMMUNICATIONS AB filed Critical FREEHAND COMM AB
Publication of JP2002152014A publication Critical patent/JP2002152014A/ja
Pending legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03HIMPEDANCE NETWORKS, e.g. RESONANT CIRCUITS; RESONATORS
    • H03H21/00Adaptive networks
    • H03H21/0012Digital adaptive filters
    • H03H21/0043Adaptive algorithms

Landscapes

  • Complex Calculations (AREA)
  • Filters That Use Time-Delay Elements (AREA)

Abstract

(57)【要約】 【課題】 適応フィルタ用の効率的な係数適応処理技術
を提供する。 【解決手段】 データメモリが入力信号を格納し、係数
メモリが係数ベクトルを格納する。乗算及び累算ユニッ
トがデータメモリから入力信号を読取り且つ係数メモリ
から係数ベクトルを読取って畳込みを実施する。乗算及
び累算ユニットとは別体の係数適応ユニットがデータメ
モリから入力信号を読取り且つ係数メモリから係数ベク
トルを読取って、乗算及び累算ユニットが読取を実施す
るのと同時に係数適応を実施して適応した係数ベクトル
を発生し、それを出力信号を発生するために畳込みの次
の繰返し期間中に乗算及び累算ユニットによって使用す
るために係数メモリ内へ書込み、各タップを1マシンク
ロックサイクルにおいて実行する。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、大略、適応システ
ムの分野に関するものであって、更に詳細には、適応フ
ィルタ用の効率的な係数適応処理技術に関するものであ
る。
【0002】
【従来の技術】適応システムは、あるパラメータ又は重
みを調節するために計算アルゴリズムを使用して改良さ
れた性能をサーチするシステムである。適応フィルタは
対話的な態様で実時間において2つの信号の間の入力・
出力関係をモデル化せんとする計算装置である。適応フ
ィルタは、例えば、エコー相殺及びライン等化用の計算
システムにおいて使用されている。適応フィルタは、
又、実時間最適化に関連している異なる種類のアプリケ
ーションに対する実時間制御システムにおいて使用する
のに適している。適応信号処理は、例えばレーダー、ソ
ナー、地震学、バイオ医学エレクトロニクス等のその他
の分野においても拡大している。
【0003】適応フィルタは4つの側面によって定義さ
れ、即ち、フィルタによって処理される入力信号x
(n)と、その入力信号x(n)からどのようにしてフィ
ルタ出力y(n)が計算されるかを定義する構成と、フ
ィルタの入力−出力関係を変えるために繰返し変化させ
ることが可能なフィルタパラメータと、ある時刻から次
の時刻へどのようにしてパラメータを調節するかを記述
する適応アルゴリズムとである。
【0004】適応フィルタは、性能フィードバック特徴
を具備した閉ループフィルタとして又は開ループフィル
タとして実現することが可能である。該アルゴリズムは
繰返し態様で動作して、新たなデータの到着及び現在の
信号の性能フィードバックで調節可能なパラメータをア
ップデートする。各繰返しにおいて、本システムは入力
信号x(n)の特性について益々知ることとなり、且つ
信号プロセッサがエラー信号e (n)を介して最新のシ
ステム性能に基づいた現在の組のパラメータに対して調
節を行う。次いで、該調節可能なパラメータの最適な組
の値に逐次的に到達する。
【0005】適応フィルタは、しばしば、デジタル信号
プロセッサ (DSP)上で稼動する1組のプログラム命
令として実現される。図1は一般的な適応フィルタ処理
を示している。通常、出力y(n)がどのようにして入
力x(n)から計算されるかに影響を与える有限の数の
パラメータを有する任意のシステムを図1における適応
フィルタ10として使用することが可能である。
【0006】該フィルタの係数ベクトルT(n)はT
(n)=[t1 (n)t2 (n)...tN(n)]Tによって定
義される。上述したように、該フィルタの入力はx
(n)であり、一方該フィルタの出力はy(n)である。
所望の応答信号はb (n)である。エラー信号e (n)は
所望の信号d (n)と実際の出力y (n)との間の差異を
表している。適応フィルタの最も頻繁に使用される構成
は有限インパルス応答(FIR)フィルタであり、それを
図2に示してある。
【0007】図2において、ユニットz-1は遅延ユニッ
トと呼ばれる。フィルタ自身はコンボリューション即ち
畳込みに基づいている。完全な計算ステップは「タッ
プ」と呼ばれる。図2はその線形性のために妥当なアー
キテクチャを示している。フィルタ処理を実施する場合
に、係数の組を使用して以下の式1を使用する畳込みを
介して出力を見つけ出す。
【0008】
【数1】
【0009】出力y (n)は所望の出力でない場合があ
る。即ち、y (n)は所望の信号d (n)に非常に近いも
のであるが充分に近いものではない場合がある。その場
合には、係数の組を補正するために適応アルゴリズムを
実行し、従って出力y (n)は次第に所望の信号d (n)
に近づく。所望の信号d (n)は不知であり且つ常に変
化する。従って、適応フィルタは実時間閉ループフィー
ドバックシステムであり、それは所望の信号d (n)に
追従するために常に適応を行う。
【0010】高品質の適応フィルタにおいては、係数の
組は常に適応し、そのことは多大の計算能力を必要と
し、適応フィルタを高価なものとしている。最もポピュ
ラーな適応アルゴリズムは正規最小平均二乗アルゴリズ
ム (LMS又はNLMS)と呼ばれる。LMSアルゴリ
ズムは所謂「最も急峻な降下」アプローチを利用し、制
限された数のデータサンプルに基づいて勾配ベクトルの
推定を派生する。
【0011】この適応アルゴリズムは収束制御及び係数
適応の処理を包含している。収束制御は全てのタップに
おいて実施されるものではなく、そのことは、それに関
連する計算能力が非常に高いものではないことを意味し
ている。そのために、本発明は収束制御処理の最適化を
取扱うものではない。然しながら、係数適応は、高性能
適応フィルタを達成するために、各サンプル期間中にお
いて全てのタップに対し実施すべきである。通常、計算
能力の殆どは係数適応を実施する場合に消費される。
【0012】適応計算のタップは、畳込みステップ及び
係数適応ステップを包含している。タップiにおいて関
与するタスクは次式によって示される。
【0013】
【数2】
【0014】上の式3において、tnew (i+1)は適応
後の新たな係数であり、且つtold(i+1)はこれから
適応が行われる古い係数である。
【0015】可変係数と共に処理のサンプルにおいて多
数のタップが存在しているので、デジタル信号プロセッ
サ (DSD)が所謂LMSアルゴリズムを実行するため
に必要とされる。図3は典型的なデジタル信号プロセッ
サのアーキテクチャを示している。
【0016】典型的なデジタル信号プロセッサと関連す
るアルゴリズムに従って、LSM計算処理のタップは7
個のステップを包含している。第一に、データがデータ
メモリDM20からデータレジスタDR28へロードさ
れる。次いで、該係数はタップメモリ又は係数メモリT
N22から係数レジスタTR30へロードされる。レジ
スタACR36がtnew (i)=told (i)+ (収束ファ
クタ)×DRの式を使用して係数を計算する。次いで、
この新しい係数はバッファBR26へ移動される (BR
=ACR)。次のステップにおいて、ACBがACRへ
移動され且つACR=ACR+データ×BRであるよう
に畳込みが実施される。次いで、ACRの内容がACB
へ移動され、且つ、最後に、tnew (n)が係数メモリT
M22へ移動される。
【0017】1つのタップに対する実行用クロックサイ
クルの数は異なるアーキテクチャに対して異なる場合が
ある。例えば、スタンダードの中央処理装置 (CPU)
を使用する場合には7個のステップが必要である。乗算
器−アキュムレータ (累算器)ハードウエアに基づいた
進化したデジタル信号プロセッサを使用する場合には、
1つのタップの畳込み及び係数適応に対するクロックサ
イクルの数は2と4との間である場合がある。
【0018】係数メモリは2つのメモリアクセス、即ち
1つの読取と1つの書込とを有している。両方のメモリ
アクセスが係数適応のために必要とされるので、1つの
クロックサイクルにおいて7個の全てのステップを実行
することは困難である。メモリ読取及び書込アドレスは
互いに依存する場合があるので二重ポートメモリを使用
することは不可能である。非同期メモリを係数メモリと
して使用することが可能であるが、速度が比較的遅かっ
たり電力消費が高いこと等の問題が発生する場合があ
る。
【0019】進化した入手可能なデジタルプロセッサに
おいては、特別の二重速度クロック(処理クロックと比
較して)が係数メモリに対してのみ適用され、従って係
数メモリは1つの処理クロックサイクルにおいて二度ア
クセスすることが可能である。然しながら、明らかな欠
点が存在している。メモリ速度は以前において論理速度
よりも遅いものであったので、処理サイクル当たりメモ
リが二度使用されるとすると、システム速度はメモリ速
度の半分とすることは不可能である。従って、システム
クロック速度を高いものとすることは不可能である。
【0020】適応システムにおける計算能力を減少させ
ることが有益的である場合がある。計算能力を減少させ
ることを阻止する1つの基本的な問題は、単一クロック
サイクルにおいて任意の位置から読取又はそれへ書込を
行うために同期メモリを物理的に実現することは不可能
であるということである。非同期メモリは単一CPUク
ロックサイクルにおいて任意の位置から読取又はそれへ
書込を行うことが可能であるが、それは、CPUクロッ
クがメモリアクセス時間よりもかなり遅い場合である場
合のみである。
【0021】従って、同期メモリを使用する場合には、
1つのタップの適応フィルタ処理を実行するために複数
の計算ステップを使用せねばならない。非同期メモリを
使用する場合には、1つのタップにおける全てのステッ
プを実行するために1クロックサイクルを使用すること
が可能であるが、このことは、システム速度が遅い場合
にのみ行うことが可能であるに過ぎない。別の可能性
は、1CPUクロックサイクルにおいてメモリを二度ア
クセスすることが可能であるようにメモリクロックを2
倍にさせることである。然しながら、その場合の欠点
は、二重速度メモリが「ボトルネック」となり、そのこ
とが性能を制限し且つ電力消費の主要な発生源となる。
【0022】
【発明が解決しようとする課題】本発明は、以上の点に
鑑みなされたものであって、上述した如き従来技術の欠
点を解消し、効率的な適応フィルタ用の係数適応技術を
提供することを目的とする。
【0023】
【課題を解決するための手段】最近の通信及び制御シス
テムにおいては、非常に低い電力消費を有する高性能適
応フィルタが必要とされている。本発明の1つの目的と
するところは、エキストラな拘束条件又はボトルネック
を導入することなしに、全ての計算ステップを1つのク
ロックサイクル内に移動させることである。本発明は充
分な柔軟性を与えながら、従来のシステムよりもより高
い性能及びより低いパワーとすることを可能としてい
る。本発明は完全な1タップ計算処理に対し1サイクル
解決の目標を達成している。本発明は汎用デジタル信号
プロセッサ (DSP)チップにおける適応フィルタクセ
リレータによるか、又は適応フィルタ及びその他の通常
のフィルタタスクの両方に対するスタンドアローンチッ
プによってハードウエアで実現することが可能である。
【0024】本発明は3つの主要な部分を有しており、
即ち、ハードウエアパーティション、簡単化した乗算演
算、及び従来の単一ポートスタチックランダムアクセス
メモリ(SRAM)を使用した1クロックサイクルにお
いてのメモリ読取及び書込の新規な方法である。
【0025】本発明は、1実施形態においては、最小平
均二乗アルゴリズムに基づいた係数適応を加速させるシ
ステムを提供しており、それは、入力信号を格納するた
めのデータメモリと、係数ベクトルを格納するための係
数メモリと、畳込みを実施するためにデータメモリから
入力信号を読取り且つ係数メモリから係数ベクトルを読
取るための乗算及び累算ユニットと、適応させた係数ベ
クトルを発生させるために乗算及び累算ユニットが読取
を実施するのと同時に係数適応を実施するためにデータ
メモリから入力信号を読取り且つ係数メモリから係数ベ
クトルを読取るための乗算及び累算ユニットとは別体の
係数適応ユニットとを有しており、適応された係数ベク
トルは出力信号を発生するために次の繰返しの畳込み期
間中に乗算及び累算ユニットによって使用するために係
数メモリ内へ書込まれ、各タップは1マシンクロックサ
イクルにおいて実行される。
【0026】係数適応ユニットは符号−大きさコード化
シフト制御ベクトルによって制御される演算右シフトを
使用して乗算を実施することが可能である。係数メモリ
は偶数係数メモリと奇数係数メモリとを有することが可
能であり、その各々は係数ベクトルの半分を格納する。
係数メモリは通常のメモリアクセスモードと係数適応モ
ードとを有することが可能であり、且つ係数適応モード
期間中に、係数メモリは1クロックサイクルでそれから
読取及びそれへの書込を行うことが可能である。各繰返
しの畳込みに対して、各タップ期間中にアップデートさ
れた係数ベクトルが使用される。
【0027】本発明は、別の実施形態においては、最小
平均二乗アルゴリズムに基づいた係数適応を加速させる
方法を提供しており、該方法は、 (a)データメモリ内
に入力信号を格納し、 (b)係数メモリ内に係数ベクト
ルを格納し、 (c)畳込みを実施するためにデータメモ
リから入力信号を及び係数メモリから係数ベクトルを読
取り、且つ (d)適応させた係数ベクトルを発生するた
めにステップ (c)の読取と同時に係数適応を実施する
ためにデータメモリから入力信号を読取り且つ係数メモ
リから係数ベクトルを読取る、上記各ステップを有して
おり、適応された係数ベクトルは出力信号を発生するた
めに次の繰返しの畳込みにおいて使用するために係数メ
モリ内へ書込まれ、各タップは1マシンクロックサイク
ルにおいて実行される。
【0028】
【発明の実施の形態】図4は本発明の好適実施例に基づ
くハードウエアパーティションを例示している。ハード
ウエアパーティションは係数適応ハードウエア用の計算
処理を従来の畳込みハードウエアから分離するために使
用している。従来の畳込み部分は乗算及び累算 (MA
C)ユニットを有している。係数適応用の別の部分もM
AC又は簡単化したMACとすることが可能である。
【0029】データメモリ40はデータベクトルx
(n)を格納即ち記憶する (尚、nは0乃至N−1であ
る)。係数メモリ42は係数ベクトルt (n)を格納する
(尚、nは0乃至N−1である)。1つのタップにおけ
る完全な計算タスクは2つの「パイプライン」ステップ
に分割される。最初のパイプラインステップ期間中に、
データベクトルx (n)及び係数ベクトルt (n)の両方
が乗算及び累算ユニット (MSE)44及び係数適応ハ
ードウエア (CAH)46に対して読込まれる。係数適
応ハードウエア (CAH)は第一パイプライン期間中に
式3に従って係数適応を実施する。
【0030】適応された新たな係数は係数適応ハードウ
エア46内に登録される。次のパイプラインステップ期
間中に、アップデートされた新たな係数が係数メモリ4
2へ書込まれる。FIRが適応フィルタである場合に、
係数適応ハードウエア46によって与えられる適応され
た新たな係数を使用して、第二のパイプラインステップ
期間中にFIR畳込みが実施される。個々で、基本的な
特徴は、適応された新たな係数は現在のサンプルにおけ
るパイプラインにおける次のクロックサイクルにおいて
畳込みのために使用される。このことはアルゴリズムの
遅延を他のアーキテクチャにおけるものよりもより短い
ものとさせる。FIRが適応フィルタでない場合には、
通常の有限インパルス応答が実行される。この場合にお
いては、係数は定数であり且つ係数メモリ42から乗算
及び累算ユニット44へ直接的に読込まれる。
【0031】パイプライン型計算処理は並列的に実施さ
れるので、係数適応処理の2番目の点は畳込み処理の1
番目の点と並列的に実施される。更に、最初のアップデ
ートした新たな係数の書込は2番目の古い係数及び2番
目のデータの読取と並列的に行われる。このように、適
応フィルタの1つのタップに対する完全な計算はパイプ
ライン型並列性を使用した1クロックサイクルにおいて
等価的に実施される。
【0032】図5は同時的な畳込み及び係数適応を管理
するパイプラインを例示している。2つの特別な命令が
特定される。1つの命令はSPFC (即ち、畳込み用セ
ットアップパイプライン)である。この命令は乗算及び
累算ユニット44及び係数適応ハードウエア46の両方
に対し第一データ (即ち、入力信号)及び第一係数ベク
トルの両方をフェッチする。同時に、係数適応処理をフ
ェッチ期間中に係数適応ハードウエア46において実行
する。
【0033】別の命令はCONV (畳込みハードウエア
ループ命令)である。この命令はハードウエアループを
開始させ且つ以下の機能を実施する。最初に、適応させ
た係数を係数メモリ42における以前の点へ書込む。次
いで、データメモリアドレスをインクリメントさせ且つ
アドレスモジュールオーバーフローを実施する。次い
で、係数メモリアドレスをインクリメントさせる。次い
で、ループカウンタを減少させループが終了したか否か
の判別を行う。この後に、乗算及び累算ユニット44に
おいて畳込みの1つのステップを実施する。最後に、次
のタップに対してデータ及び係数が読取られ、且つ次の
タップに対する係数適応が実施される。
【0034】本発明に基づく係数適応に対する簡単化し
た乗算について以下に説明する。係数適応処理は式3の
関数に従う。係数適応の計算は大きなダイナミックレン
ジ及び比較的緩和された分解能を必要とする。何故なら
ば、係数適応は所謂フィードバックを使用した「試行錯
誤」手順だからである。係数適応に対して乗算器が使用
される場合には、必要とされるダイナミックレンジを維
持するために大型の乗算器 (即ち、長尺の被乗数)が必
要である。通常の汎用デジタル信号プロセッサ(DSP)
が使用される場合には、このことは通常である。
【0035】係数適応ハードウエア46を乗算及び累算
ユニット44から分離した後に、係数適応ハードウエア
46はアクセリレータとして作用し且つ係数適応のみを
実施する。従って、係数適応ハードウエア46の出力は
高いダイナミックレンジ及び緩和された分解能を有する
ものでなければならない。本発明においては、乗算は5
ビット符号−大きさコード化シフト制御ベクトルによっ
て制御される演算右シフトへ変換される。従って、係数
適応に必要な計算能力は減少される。
【0036】式3における収束ファクタは適応計算のサ
ンプル期間中一定である。収束ファクタは1つの被乗数
であり、シフト制御ベクトルへ変換される。別の被乗
数、即ちデータはシフトされるべく維持される。符号−
大きさシフト制御ベクトルは表1に従って発生される。
【0037】
【表1】
【0038】表1は1つの例に過ぎず且つ一般的な変換
方法を示している。この表は、Nビット2の補数二進コ
ードがN個のグループのコードへ変換され、従って2N
の分解能がNへ緩和されることを示している。この表は
2の補数小数二進データを緩和した分解能及び高いダイ
ナミックレンジを有する符号−大きさ小数二進データへ
変換する。「F」は「符号」ビットを意味している。変
換されたシフト制御は、位置の数をシフトすることの制
御を与える。例えば、S0111は7ビット演算右シフ
トを与える。
【0039】上の表1によって変換されたシフト制御ベ
クトルを使用して、係数適応用の乗算はシフト関数 (機
能)として簡単化される。このことは電力消費及びシリ
コン面積のコストの両方を減少させる。このことは、
又、タイミングクリチカルパスを減少させ且つパイプラ
インを簡単化させる。従って、係数適応ハードウエアは
簡単化され且つ1つの例を図6において簡単化した乗算
に基づいて示してある。図6に例示した機能について以
下に説明する。
【0040】式3、即ちtnew (n)=told (n)± (収
束ファクタ)×x (n)を実行するために、収束ファクタ
がシフト制御ベクトルへ変換され且つレジスタファイル
バス50上に与えられる。データベクトルx(n)が異
なる可能なデータ供給源からノード「否定入力 (neg
ate in)」上に与えられる。データベクトルの第
一の点は前のデータベクトルの組からの最も古いデータ
でなければならない。
【0041】最も古いデータはレジスタファイル内にリ
ザーブし且つレジスタファイルバス50から古いDバッ
ファ54へ送るか、又は前の畳込みを終了する前に古い
Dバッファ54内にリザーブし且つ維持することが可能
である。現在の畳込み及び係数適応用のデータベクトル
はデータベクトルバスからのものであり且つレジスタデ
ータバッファ52によってパイプライン処理される。シ
フト制御ベクトルの符号が1である場合には、データベ
クトルx (n)に関して否定処理が実施され、そうでな
い場合には、否定ブロック58はデータベクトルx
(n)をバイパスさせる。
【0042】演算シフター60はシフト制御ベクトルの
大きさに従って演算シフト処理を実施し且つシフト動作
の間その符号を維持する。古い係数は式3におけるt
old (n)によって表されるように係数メモリからのもの
であり且つメモリアクセスパイプラインステップにおい
て使用可能である。全加算器66がメモリアクセスに対
するパイプラインステップにおいて新たな係数68であ
る結果をレジスタへ与える。次のパイプラインステップ
において、新たな係数が係数メモリへ書込まれる。
【0043】アップデート制御ブロック62が、演算シ
フター60の出力がゼロであるか否かをチェックする。
その出力がゼロでない場合には、アップデート用制御信
号は「真」であり、新しい係数は古い係数と異なってお
り、従って係数のアップデートが必要であることを意味
する。この機能はデータ依存性メモリ書込制御と呼称さ
れ、それはデータ転送及びアクセスパワーを節約するた
めのエキストラなチャンスを与えている。アップデート
制御信号は、LMS畳込みループ命令を実行している場
合にのみ真となることが可能であり、そのことは、アッ
プデート制御信号は畳込みの後にリセットされるべきで
あることを意味している。
【0044】次に、好適実施例に基づいて1クロックサ
イクルメモリ読取及び書込解決方法について説明する。
単一ポート同期スタチックランダムアクセスメモリ (S
RAM)は殆どのデジタル信号処理適用例に対しての典
型的なメモリである。
【0045】前に説明したように、単一ポートSRAM
においては、1つのクロックサイクルにおいて唯1つの
処理、即ち読取又は書込のいずれかが存在するに過ぎ
ず、それは単一ポート同期SRAMにおいて実施するこ
とが可能である。最小平均二乗(LMS)FIR適応フィ
ルタは1つのタップ処理期間中に、係数メモリからの読
取及び係数メモリへの書込の両方について質問する。こ
のことは、単一ポート同期SRAMが使用される場合に
は、タップ処理を1つのクロックサイクルにおいて実行
することが不可能であることを意味している。非同期S
RAMを使用することが可能であり、且つ1つのクロッ
クサイクルにおいて読取及び書込を管理することが可能
である。然しながら、完全な読取及び書込非同期SRA
Mに対して消費される時間は長いものであるので、適応
フィルタの性能は非常に低くなる。別の可能な古典的な
解決方法は、同期SRAMが1つのCPUクロックサイ
クルにおいて2つの処理を有することが可能であるよう
にメモリクロックを2倍とさせることであるが、その場
合の欠点は、そのメモリがシステム性能を低くさせるボ
トルネックとなるということである。
【0046】本発明は、同一のサイクルにおいて物理的
に単一のポートメモリを使用して係数メモリからの読取
及びそれへの書込を行う場合に関与する構造的パイプラ
インハザード (危険性)なしで、単一ポート同期SRA
Mを使用して1つのクロックサイクルにおいてメモリ読
取及び書込の両方を実施することをサポートすることが
可能なメモリアーキテクチャを提供している。即ち、本
発明によって提供されるメモリは特別のメモリとして及
び通常の単一ポート同期SRAMとして両方に使用する
ことが可能である。
【0047】図7は本発明に基づく係数メモリ用の1ク
ロックメモリ読取及び書込構成を示した回路図である。
この回路は以下の機能を行う。
【0048】係数メモリは2つの等しい物理的なメモリ
に分割されている。一方の物理的メモリは係数の半分t
(2k)(0≦k≦N/2−1)を保存するために使用さ
れ、且つ係数メモリ偶数又はタップメモリ偶数 (TM
E)70として指定される。他方は係数の半分t (2k
+1)(0≦k≦N/2−1)を保存するために使用さ
れ、タップメモリ奇数 (TMO)72として指定され
る。
【0049】2種類のメモリ作業モードが存在してお
り、即ち、係数適応モードと通常メモリアクセスモード
である。係数適応モードにおいては、メモリが分割され
且つ読取及び書込係数メモリの両方を1つのクロックサ
イクルにおいて実行させることが可能である。通常メモ
リモードにおいては、TMEとTMOとが合体され、且
つ係数メモリは通常の1ポート同期SRAMとしてアク
セスすることが可能である。
【0050】制御信号special accessが
1である場合には、メモリは係数適応モードにあり、1
クロックサイクルにおいての読取と書込の両方をサポー
トする (且つ、係数適応及び畳込みを実行する場合に適
応FIRをサポートする)。そうでない場合には、該メ
モリは通常のメモリとして動作する。
【0051】メモリアドレス [M−1,1](2M=N)は
TME70及びTMO72の両方のアドレス入力ポート
[M−2,0]へ接続している。メモリが係数適応モー
ドにあり且つ係数メモリが読取中である場合には、読取
メモリ処理がTME70及びTMO72の両方に関して
実行される。メモリアドレスの最小桁ビット[0]はデ
ータ読出しを選択するために使用される。メモリアドレ
ス[0]が0である場合には、メモリ読出しはTME7
0からである。メモリアドレス[0]が1である場合に
は、メモリ読出しはTMO72からである。
【0052】メモリが係数適応モードにある場合には、
書込処理はアドレスバスの最小桁ビットによって選択さ
れる。メモリアドレス[0]が1である場合には、メモ
リ書込はTME70に対して選択され、且つメモリアド
レス[0]がゼロである場合には、メモリ書込はTMO
72に対して選択される。
【0053】係数メモリTMが係数適応モードにない場
合には、メモリ書込イネーブルがメモリアドレス[0]
と共に与えられる。反転されたアドレス[0]は命令T
enableと共に書込イネーブルをTME70
へ与える。直接アドレス[0]は命令TM ena
bleと共に書込イネーブルをTMO72へ与える。
【0054】係数メモリTMが係数適応モードにある場
合には、メモリアドレスTMOは1つのパイプラインス
テップの遅れを持って登録される。このアドレス処理を
表2に要約してある。
【0055】
【表2】
【0056】適応させた係数が古い係数と同じである場
合には、信号アップデート用 (図6参照)は0であり、
TME70又はTMO72に対する書込許可は存在せ
ず、適応を行うことが必要でないことを意味している。
【0057】単に1つの機能的アドレスが存在してお
り,2つの物理的アドレスが存在している。従って、本
システムは、常に、同一のサイクルにおいて、偶数
(i)から読取り且つ奇数 (i−1)へ書込むか、又は奇
数 (i+1)から読取り且つ偶数 (i)へ書込むかのいず
れかである。畳込みのためにTMEメモリから古い係数
バス上の係数を読取り且つ適応処理 (パイプラインステ
ップ1)を実施する場合に、TMOからの古い係数に基
づいてアップデートされた新たな係数がTMOへ書込ま
れる。例えば、10番目のサイクル期間中に、バス (ベ
クトル点11)上の古い係数が次の点の畳込みのために
TMOからフェッチされる。フェッチ動作期間中に新た
な係数11が計算され且つ新たな係数レジスタ内に格納
される。適応された係数10がTMEに対する新たな係
数バスを介して係数メモリTMへ書込まれる。11番目
のサイクルの期間中に、新たな係数11がTMOへ書込
まれ且つ古い係数バス (ベクトル点12)がTMEから
読取られる。
【0058】本発明によって与えられる利点について説
明すると、スタンダードのデジタル信号プロセッサを使
用した場合に1つのタップを完了するために7つのステ
ップが必要であることに注意すべきである。進化したデ
ジタル信号プロセッサを使用することは、複数蓄積レジ
スタを使用することによってステップ数を7から5へ減
少させることが可能である。二重乗算−累算ハードウエ
アを使用し且つ同一のクロックサイクルでデータメモリ
と係数メモリの両方へアクセスすることによって、ステ
ップ数は、アーキテクチャの柔軟性を制限することによ
って3へ減少させることが可能である。
【0059】適応ハードウエアを畳込みハードウエアか
ら分離し、乗算をシフトへ簡単化させ、且つメモリ読取
及び書込を1つのクロックサイクルへ合体させることに
よって、本発明は計算ステップ数を最小である1へ減少
させている。従って、本発明は計算能力を最適に減少さ
せている。
【0060】本発明においては、係数適応は全てのサン
プルにおける全てのステップに対して容易に実行するこ
とが可能である。このことは殆どのその他の使用可能な
解決手段と異なっている。例えば、1MIP (百万個の
命令/秒)を使用して完全な畳込み及び係数適応を実施
する場合には、従来の解決手段は最大で7MIPを使用
する。
【0061】1クロックサイクルにおいて係数メモリか
らの読取とそれへの書込を行うことは、従来のクロック
及びIC (集積回路)設計方法の下で従来の単一ポート
同期SRAMを製品が使用することを可能とする。乗算
を簡単なシフトへ変換することによって、乗算及び累算
ユニット (MAC)の計算能力を減少させることが可能
である。
【0062】本発明は、ハードウエアルックアップテー
ブルを使用することを包含しており、従ってシフト制御
ベクトルを得るための処理は簡単である。データ依存性
メモリ書込を使用することによって、メモリアクセス期
間中に消費される電力は更に減少される。
【0063】以上、本発明の具体的実施の態様について
詳細に説明したが、本発明は、これら具体例にのみ制限
されるべきものではなく、本発明の技術的範囲を逸脱す
ることなしに種々の変形が可能であることは勿論であ
る。
【図面の簡単な説明】
【図1】 一般的な適応フィルタ処理を示した概略図。
【図2】 適応FIRフィルタを示した概略図。
【図3】 FIR適応フィルタ用の従来のDSBアーキ
テクチャを示した概略図。
【図4】 好適実施例のハードウエアパーティションを
示した概略図。
【図5】 同時的な係数適応及び畳込みを管理するパイ
プラインを示した概略図。
【図6】 係数適応用の簡単化した乗算処理を示した概
略図。
【図7】 単一ポート同期メモリを使用した同一サイク
ルにおける係数読取−書込処理を示した概略図。
【符号の説明】
40 データメモリ 42 係数メモリ 44 乗算及び累算ユニット (MSE) 46 係数適応ハードウエア (CAH)
フロントページの続き (72)発明者 スティグ スタンス スウエーデン国, スントビュベルイ, リッスネレデン 138 (72)発明者 ハラルド ベルグ スウエーデン国, スントビュベルイ, リッスネレデン 138 (72)発明者 ニック スケルトン スウエーデン国, スントビュベルイ, リッスネレデン 138 Fターム(参考) 5B056 BB28 BB71 FF05 FF06 5J023 DB05 DC03

Claims (12)

    【特許請求の範囲】
  1. 【請求項1】 最小平均二乗アルゴリズムに基づいた係
    数適応を加速させるシステムにおいて、 入力信号を格納するためのデータメモリ、 係数ベクトルを格納するための係数メモリ、 畳込みを実施するために前記データメモリから前記入力
    信号及び前記係数メモリから前記係数ベクトルを読取る
    ための乗算及び累算ユニット、 適用させた係数ベクトルを発生するために前記乗算及び
    累算ユニットが前記読取を実施するのと同時に係数適応
    を実施するために前記データメモリから前記入力信号及
    び前記係数メモリから前記係数ベクトルを読取るための
    係数適応ユニット、を有しており、前記適応させた係数
    ベクトルは出力信号を発生するために次の畳込み繰返し
    期間中に前記乗算及び累算ユニットによって使用するた
    めに前記係数メモリ内に書き戻され、各タップが1マシ
    ンクロックサイクルにおいて実行される、ことを特徴と
    するシステム。
  2. 【請求項2】 請求項1において、前記係数適応ユニッ
    トが、符号−大きさコード化シフト制御ベクトルによっ
    て制御される演算右シフトを使用して乗算を実施するこ
    とを特徴とするシステム。
  3. 【請求項3】 請求項1において、前記係数メモリが偶
    数係数メモリと奇数係数メモリとを有しており、その各
    々が前記係数ベクトルの半分を格納することを特徴とす
    るシステム。
  4. 【請求項4】 請求項3において、前記係数メモリが通
    常メモリアクセスモードと係数適応モードとを有してお
    り、且つ前記係数適応モード期間中に、1クロックサイ
    クルにおいて前記係数メモリが読取られ且つ書込まれる
    ことを特徴とするシステム。
  5. 【請求項5】 請求項1において、前記係数適応が次
    式、 tnew (i+1)=told (i+1)± (収束ファクタ)×
    x (i) 尚、told (i+1)は適応されるべき古い係数ベクトル
    であり、tnew (i+1)は適応後の新しい係数ベクトル
    であり、且つx (i)は入力信号である、を使用して実
    施することを特徴とするシステム。
  6. 【請求項6】 請求項1において、畳込みの各繰返しに
    対し、各タップ期間中にアップデートされた係数ベクト
    ルが使用されることを特徴とするシステム。
  7. 【請求項7】 最小平均二乗アルゴリズムに基づいた係
    数適応を加速させる方法において、 (a)データメモリ内に入力信号を格納し、 (b)係数メモリ内に係数ベクトルを格納し、 (c)畳込みを実施するために前記データメモリから前
    記入力信号を及び前記係数メモリから前記係数ベクトル
    を読取り、 (d)ステップ (c)の読取りと同時に係数適応を実施
    するために前記データメモリから前記入力信号及び前記
    係数メモリから前記係数ベクトルを読取って適応させた
    係数ベクトルを発生し、前記適応させた係数ベクトルを
    出力信号を発生するために次の畳込みの繰返しにおいて
    使用するために前記係数メモリ内に書き戻し、各タップ
    を1マシンクロックサイクルにおいて実行させる、上記
    各ステップを有していることを特徴とする方法。
  8. 【請求項8】 請求項7において、更に、符号−大きさ
    コード化シフト制御ベクトルによって制御される演算右
    シフトを使用して乗算を実施するステップを有している
    ことを特徴とする方法。
  9. 【請求項9】 請求項7において、更に、前記係数メモ
    リを偶数係数メモリと奇数係数メモリとに分割するステ
    ップを有しており、前記各係数メモリが前記係数ベクト
    ルの半分を格納することを特徴とする方法。
  10. 【請求項10】 請求項9において、前記係数メモリが
    通常メモリアクセスモード及び係数適応モードを有して
    おり、且つ前記係数適応モード期間中に、1クロックサ
    イクルにおいて前記係数メモリが読取られ且つ書込まれ
    ることを特徴とする方法。
  11. 【請求項11】 請求項7において、更に、次式、 tnew (i+1)=told (i+1)± (収束ファクタ)×
    x (i) 尚、told (i+1)は適応されるべき古い係数ベクトル
    であり、tnew (i+1)は適応後の新たな係数ベクトル
    であり、且つx (i)は入力信号である、を使用して係
    数適応を実施するステップを有していることを特徴とす
    る方法。
  12. 【請求項12】 請求項7において、畳込み各繰返しに
    対して、各タップ期間中にアップデートされた係数ベク
    トルを使用することを特徴とする方法。
JP2001223474A 2000-07-24 2001-07-24 正規最小平均二乗アルゴリズムに基づいた係数適応用ハードウエアアクセリレータ Pending JP2002152014A (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US09/624,430 US6714956B1 (en) 2000-07-24 2000-07-24 Hardware accelerator for normal least-mean-square algorithm-based coefficient adaptation
US09/624430 2000-07-24

Publications (1)

Publication Number Publication Date
JP2002152014A true JP2002152014A (ja) 2002-05-24

Family

ID=24501989

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2001223474A Pending JP2002152014A (ja) 2000-07-24 2001-07-24 正規最小平均二乗アルゴリズムに基づいた係数適応用ハードウエアアクセリレータ

Country Status (4)

Country Link
US (1) US6714956B1 (ja)
EP (1) EP1176718B1 (ja)
JP (1) JP2002152014A (ja)
DE (1) DE60130175T2 (ja)

Families Citing this family (28)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7917468B2 (en) * 2005-08-01 2011-03-29 Seven Networks, Inc. Linking of personal information management data
US20060277041A1 (en) * 2005-06-06 2006-12-07 Stig Stuns Sparse convolution of multiple vectors in a digital signal processor
EP1841065A1 (en) * 2006-03-29 2007-10-03 Mitel Networks Corporation Modified least-mean-squares method with reduced computational complexity
FR2951835B1 (fr) 2009-10-26 2013-10-18 Bruker Biospin Dispositif de correction de signaux de consigne et systeme de generation de gradients comportant un tel dispositif
WO2014169480A1 (zh) * 2013-04-19 2014-10-23 中国科学院自动化研究所 一种并行滤波方法及相应的装置
US10261179B2 (en) 2016-04-07 2019-04-16 Uhnder, Inc. Software defined automotive radar
US9846228B2 (en) 2016-04-07 2017-12-19 Uhnder, Inc. Software defined automotive radar systems
WO2017175190A1 (en) 2016-04-07 2017-10-12 Uhnder, Inc. Adaptive transmission and interference cancellation for mimo radar
CN109073741B (zh) 2016-04-25 2019-07-02 乌恩德股份有限公司 用于车辆的雷达感测系统及缓解其干扰的方法
WO2017187331A1 (en) 2016-04-25 2017-11-02 Uhnder, Inc. Vehicle radar system with a shared radar and communication system
WO2017187242A1 (en) 2016-04-25 2017-11-02 Uhnder, Inc. On-demand multi-scan micro doppler for vehicle
US9945935B2 (en) 2016-04-25 2018-04-17 Uhnder, Inc. Digital frequency modulated continuous wave radar using handcrafted constant envelope modulation
US9791551B1 (en) 2016-04-25 2017-10-17 Uhnder, Inc. Vehicular radar system with self-interference cancellation
US9791564B1 (en) * 2016-04-25 2017-10-17 Uhnder, Inc. Adaptive filtering for FMCW interference mitigation in PMCW radar systems
WO2017187299A2 (en) 2016-04-25 2017-11-02 Uhnder, Inc. Successive signal interference mitigation
US9575160B1 (en) 2016-04-25 2017-02-21 Uhnder, Inc. Vehicular radar sensing system utilizing high rate true random number generator
US10573959B2 (en) 2016-04-25 2020-02-25 Uhnder, Inc. Vehicle radar system using shaped antenna patterns
US9753121B1 (en) 2016-06-20 2017-09-05 Uhnder, Inc. Power control for improved near-far performance of radar systems
WO2018051288A1 (en) 2016-09-16 2018-03-22 Uhnder, Inc. Virtual radar configuration for 2d array
US11454697B2 (en) 2017-02-10 2022-09-27 Uhnder, Inc. Increasing performance of a receive pipeline of a radar with memory optimization
WO2018146632A1 (en) 2017-02-10 2018-08-16 Uhnder, Inc. Radar data buffering
WO2018146530A1 (en) 2017-02-10 2018-08-16 Uhnder, Inc. Reduced complexity fft-based correlation for automotive radar
US11105890B2 (en) 2017-12-14 2021-08-31 Uhnder, Inc. Frequency modulated signal cancellation in variable power mode for radar applications
US11114136B2 (en) * 2018-08-21 2021-09-07 Marcon International Inc Circuit, system, and method for reading memory-based digital identification devices in parallel
US11474225B2 (en) 2018-11-09 2022-10-18 Uhnder, Inc. Pulse digital mimo radar system
WO2020183392A1 (en) 2019-03-12 2020-09-17 Uhnder, Inc. Method and apparatus for mitigation of low frequency noise in radar systems
CN110837806B (zh) * 2019-11-11 2020-07-28 辽宁科技学院 一种基于深度卷积记忆网络的室内定位方法
WO2021144711A2 (en) 2020-01-13 2021-07-22 Uhnder, Inc. Method and system for intefrence management for digital radars

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5287299A (en) * 1992-05-26 1994-02-15 Monolith Technologies Corporation Method and apparatus for implementing a digital filter employing coefficients expressed as sums of 2 to an integer power
US5282155A (en) * 1992-11-19 1994-01-25 Bell Communications Resarch, Inc. Adaptive digital filter architecture for parallel output/update computations
US5381357A (en) * 1993-05-28 1995-01-10 Grumman Corporation Complex adaptive fir filter
US5703904A (en) * 1995-12-29 1997-12-30 Globespan Technologies, Inc. Impulse noise effect reduction
US5933797A (en) * 1997-02-28 1999-08-03 Telefonaktiebolaget Lm Ericsson (Publ) Adaptive dual filter echo cancellation

Also Published As

Publication number Publication date
DE60130175T2 (de) 2008-05-15
EP1176718A2 (en) 2002-01-30
US6714956B1 (en) 2004-03-30
EP1176718B1 (en) 2007-08-29
DE60130175D1 (de) 2007-10-11
EP1176718A3 (en) 2005-04-06

Similar Documents

Publication Publication Date Title
JP2002152014A (ja) 正規最小平均二乗アルゴリズムに基づいた係数適応用ハードウエアアクセリレータ
KR100310584B1 (ko) 승산-가산연산을이용한신호처리시스템
US6665696B2 (en) Delayed adaptive least-mean-square digital filter
US20010039557A1 (en) Digital signal processor
JP2738443B2 (ja) プロセッサ
JPH0514936B2 (ja)
JPH02214322A (ja) 最小2乗平均アルゴリズムを実施するためのパイプライン式プロセッサ
US5402368A (en) Computing unit and digital signal processor using the same
JP3479385B2 (ja) 情報処理装置
US5931892A (en) Enhanced adaptive filtering technique
Kularatna Digital Signal Processors
CN113258902B (zh) 一种处理器、滤波方法及相关设备
US7447722B2 (en) Low latency computation in real time utilizing a DSP processor
JP3850150B2 (ja) デジタル信号処理動作を実行する方法およびデジタル信号プロセッサ
US6792442B1 (en) Signal processor and product-sum operating device for use therein with rounding function
JP2001043084A (ja) プロセッサ装置
JP3348845B2 (ja) 適応デジタルフィルタ
JP2697619B2 (ja) Nポイントfft専用プロセッサ
JPH0424730B2 (ja)
JP3441847B2 (ja) データメモリを有するプロセッサ
Savla DSP architectures for system design
JPH04364525A (ja) 並列演算装置
JP2001034603A (ja) 積和演算処理装置
JPH06324868A (ja) 専用演算器付きディジタル信号処理プロセッサ
Pandya A Study of DSP Architecture for System Design