JP2840156B2 - Digital signal processor for selectively performing CORDIC, division or square root calculations - Google Patents

Digital signal processor for selectively performing CORDIC, division or square root calculations

Info

Publication number
JP2840156B2
JP2840156B2 JP4067202A JP6720292A JP2840156B2 JP 2840156 B2 JP2840156 B2 JP 2840156B2 JP 4067202 A JP4067202 A JP 4067202A JP 6720292 A JP6720292 A JP 6720292A JP 2840156 B2 JP2840156 B2 JP 2840156B2
Authority
JP
Japan
Prior art keywords
result
digital
accumulation
signal
procedure
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.)
Expired - Fee Related
Application number
JP4067202A
Other languages
Japanese (ja)
Other versions
JPH0594466A (en
Inventor
健治 藤野
スティーブン・リー・ガーベリック
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.)
Yokogawa Electric Corp
Original Assignee
Yokogawa Electric Corp
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
Priority claimed from US07/685,340 external-priority patent/US5134578A/en
Application filed by Yokogawa Electric Corp filed Critical Yokogawa Electric Corp
Publication of JPH0594466A publication Critical patent/JPH0594466A/en
Application granted granted Critical
Publication of JP2840156B2 publication Critical patent/JP2840156B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Landscapes

  • Measurement Of Current Or Voltage (AREA)
  • Complex Calculations (AREA)

Description

【発明の詳細な説明】DETAILED DESCRIPTION OF THE INVENTION

【0001】[0001]

【産業上の利用分野】本発明は、デジタル信号に対して
CORDIC、非復元除算、または、非復元平方根計算
手順を実施するプログラマブル・デジタル信号プロセッ
サに関するものであり、とりわけ、これらの手順をビッ
ト・シリアル信号によって実施する前記プロセッサに関
するものである。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a programmable digital signal processor for performing CORDIC, non-restoring division, or non-restoring square root calculation procedures on digital signals. The present invention relates to the processor implemented by a serial signal.

【0002】[0002]

【従来の技術】乗算加算演算を含む固定アルゴリズムの
演算をするために必要とされるデジタル・ハードウエア
量の観点から見ると、ビット・シリアルのデジタル信号
処理は効果的であると知られている。しかしながら、プ
ログラマブルなアルゴリズムが採用されるべきときに
は、または、アルゴリズムを実行するために相当量のメ
モリが含まれるときには、汎用コンピュータまたはマイ
クロプロセッサにおけるように、エレクトロニクス設計
者はビット・シリアルのデジタル信号処理の代わりにビ
ット・パラレルの処理を従来、使用してきた。
2. Description of the Related Art Bit serial digital signal processing is known to be effective in terms of the amount of digital hardware required to perform fixed algorithm operations including multiplication and addition operations. . However, when a programmable algorithm is to be employed, or when a significant amount of memory is included to execute the algorithm, electronics designers, such as in general purpose computers or microprocessors, have to implement bit-serial digital signal processing. Instead, bit-parallel processing has traditionally been used.

【0003】[0003]

【発明が解決しようとする課題】演算用のデジタル・デ
ータを発生させるデータ取得システムは、複数個のセン
サーからアナログ入力を受け取る。そして、これらのア
ナログ信号は、その演算を行う基礎として、コンピュー
タにより使用される前にデジタル化されねばならない。
ここで所望されることは、ある所定の簡単な初期的な処
理回路とともに、安価な単一のモノリシック集積回路の
範囲内で、種々のセンサーからのアナログ出力信号に対
するそれぞれのアナログ−デジタル変換器を含ませるこ
とである。このようなデータ取得回路は金属酸化物半導
体(MOS)集積回路技術を用いて構成することが可能で
あり、また、電力の計測および内燃機関のコントロール
のようなアプリケーションには好適なものである。
SUMMARY OF THE INVENTION A data acquisition system for generating digital data for computation receives analog inputs from a plurality of sensors. These analog signals must then be digitized before being used by a computer as a basis for performing their operations.
What is desired is to have each analog-to-digital converter for analog output signals from various sensors within a single inexpensive monolithic integrated circuit, together with some predetermined simple initial processing circuitry. It is to include. Such data acquisition circuits can be constructed using metal oxide semiconductor (MOS) integrated circuit technology and are suitable for applications such as power measurement and internal combustion engine control.

【0004】モノリシック集積回路の単位コストはある
範囲内においてデジタル・ハードウエアの複雑さととも
に上昇する傾向があることから、含まれるデジタル・ハ
ードウエアが経済的であるアナログ−デジタル変換器、
マルチプレクサおよびデジタル信号プロセッサが発明者
によって特に考慮された。ビット・シリアルのマルチプ
レクサおよびプロセッサは、デジタル・ハードウエアと
して特に経済的なものである。そして、ビット・シリア
ル信号の相互接続は2本のラインが必要となるだけであ
って、一方のラインはシリアル・データを導くものであ
り、また、他方のラインはタイミング(parsing)信号を
導くものである。データ取得システムにおいてデジタル
信号プロセッサ上での速度に対する要求はさほど厳しく
ないことが多く、該当のビット・シリアル演算はスピー
ド的に十分な場合が多い。シグマ・デルタのタイプのオ
ーバサンプリング・アナログ−デジタル変換器は、特に
1次のシグマ・デルタ式のアナログ−デジタル変換器は
デジタル・ハードウエアとして経済的なものである。
Since the unit cost of monolithic integrated circuits tends to increase with the complexity of digital hardware to some extent, analog-to-digital converters in which the digital hardware involved is economical,
Multiplexers and digital signal processors have been specifically considered by the inventors. Bit-serial multiplexers and processors are particularly economical as digital hardware. And the interconnection of bit-serial signals requires only two lines, one line leading the serial data and the other line leading the timing (parsing) signal. It is. In data acquisition systems, the speed requirements on digital signal processors are often not so demanding, and the relevant bit-serial operation is often sufficient in speed. Oversampling analog-to-digital converters of the sigma-delta type are especially
First-order sigma-delta analog-to-digital converters are economical as digital hardware.

【0005】シリコン・コンパイラとして知られる、シ
リコン基板上でコンピュータにより規則的にレイアウト
されるビット・シリアルの乗算器については、R. I. Ha
rtley および S. E. Noujaimにより、1989年8月22日に
発効された彼等の米国特許第4,860,240号”LOW−LATENC
Y TWO'S COMPLEMENT BIT−SERIAL MULTIPLIER”におい
て説明されている。シリコン・コンパイラとして知られ
る、シリコン基板上にコンピュータにより規則的にレイ
アウトされるビット・シリアル乗算器についても、R.
I. Hartleyおよび P. F. Corbett により、1990年3月20
日に発効された彼等の米国特許第4,910,700号”BIT-SLI
CED DIGIT SERIAL MULTIPLIER”;および、1990年7月3
日に発効された彼等の米国特許第4,939,687号”SERIAL-
PARALLEL MULTIPLIER USINGSERIAL AS WELL AS PARALLE
L ADDITION OF PARTIAL PRODUCTS”において説明されて
いる。R. I. Hartley および P. F. Corbett によるビ
ット・シリアルの加算器は、シリコン・コンパイラとし
て知られており、シリコン基板上にコンピュータにより
規則正しく整列されるものであり、その説明は、1988年
10月31日に出願して許可された彼等の米国特許出願第26
5,210号”DIGIT-SERIAL LINEAR COMBINING APPARATUS U
SEFUL IN DIVIDERS(現在の名称)”においてなされて
いる。1次のシグマ・デルタ方式の変調器を用いたオー
バサンプリングのアナログ−デジタル変換器の説明は、
例えば、S. L. Garverick により、1990年1月23日に発
効された米国特許第4,896,156号”SWITCHED-CAPACITANC
E COUPLING NETWORKsFOR DIFFERENTIAL-INPUT AMPLIFIE
RS, NOT REQUIRING BALANCED INPUT SIGNALS”において
なされている。P. L. Jacob および S. L. Garveri ck
によれば、1990年8月21日に発効された米国特許第4,95
1,052号”CORRECTION OF SYSTEMATIC ERROR IN AN OVER
SAMPLED ANALOG-TO-DIGITAL CONVERTER”において、オ
ーバサンプリングのアナログ−デジタル変換器における
システム的なエラーの訂正についての説明がなされてい
る。先行の特許のそれぞれは General Electric Compan
yに譲渡されているものであり、ここでは参照のために
取り込まれている。発明者の知り得たところによれば、
アナログ・デジタル変換及び単純なデータ処理の両方を
行う集積回路の中には、ビット・シリアル乗算・加算プ
ロセッサが実施する計算手順以外の計算手順を実施する
ことが可能なオン・チップ回路構成を必要とするものが
ある。例えば、パワー・メータリングに用いられる集積
回路において、CORDIC、除算、及び、平方根計算
手順を実施することが可能なオン・チップ・デジタル・
プロセッサを備えることが望ましいということが分かっ
た。さらに、ビット・シリアル除算・加算プロセッサと
の比較の観点に立てば、補除プロセッサもビット・シリ
アル信号で動作することが望ましい。本発明の目的は、
順次概算によって、CORDIC、非復元除算、また
は、非復元平方根計算を実施する順次ステップを選択的
に実施するためのビット・シリアル・プロセッサを提供
することにある。
A bit-serial multiplier regularly laid out by a computer on a silicon substrate, known as a silicon compiler, is described by RI Ha.
U.S. Pat. No. 4,860,240 issued to Aug. 22, 1989 by rtley and SE Noujaim, entitled "LOW-LATENC".
Y TWO'S COMPLEMENT BIT-SERIAL MULTIPLIER ". A bit-serial multiplier regularly laid out by a computer on a silicon substrate, known as a silicon compiler, is also described in R.
March 20, 1990 by I. Hartley and PF Corbett
Their US Patent No. 4,910,700 "BIT-SLI"
CED DIGIT SERIAL MULTIPLIER ”; and July 3, 1990
Their US Patent No. 4,939,687 "SERIAL-
PARALLEL MULTIPLIER USINGSERIAL AS WELL AS PARALLE
L ADDITION OF PARTIAL PRODUCTS ”. The bit-serial adders by RI Hartley and PF Corbett are known as silicon compilers, which are regularly aligned by a computer on a silicon substrate, Description 1988
U.S. Patent Application No. 26 filed and granted on October 31
No.5,210 "DIGIT-SERIAL LINEAR COMBINING APPARATUS U
SEFUL IN DIVIDERS (current name) ". A description of an oversampling analog-to-digital converter using a first-order sigma-delta modulator is:
For example, U.S. Pat. No. 4,896,156 "SWITCHED-CAPACITANC" issued on Jan. 23, 1990 by SL Garverick
E COUPLING NETWORKsFOR DIFFERENTIAL-INPUT AMPLIFIE
RS, NOT REQUIRING BALANCED INPUT SIGNALS ”. PL Jacob and SL Garveric
According to U.S. Pat.No. 4,955, issued on August 21, 1990,
1,052 ”CORRECTION OF SYSTEMATIC ERROR IN AN OVER
"SAMPLED ANALOG-TO-DIGITAL CONVERTER" describes the correction of systematic errors in oversampling analog-to-digital converters.
Assigned to y and incorporated here for reference. According to what the inventor has learned,
Some integrated circuits that perform both analog-to-digital conversion and simple data processing require on-chip circuitry that can perform computational procedures other than those performed by the bit-serial multiply-add processor. There is something to say. For example, in an integrated circuit used for power metering, an on-chip digital device capable of performing CORDIC, division, and square root calculation procedures.
It has been found desirable to have a processor. Further, from the viewpoint of comparison with a bit-serial division / addition processor, it is desirable that the compensation processor also operates on a bit-serial signal. The purpose of the present invention is
It is an object of the present invention to provide a bit-serial processor for selectively performing a sequential step of performing a CORDIC, non-restoring division, or non-restoring square root calculation by sequential approximation.

【0006】[0006]

【課題を解決するための手段】この発明は、1つの連続
ステップ毎に1つずつ増加する定数iに従って、ゼロ番
から始め、連続して順次付番されるステップを有する手
順で演算されるCORDIC、除算、または、平方根計算手順
の一連のステップを選択して実行するデジタル・プロセ
ッサに関するものであり、このデジタル・プロセッサに
は、それぞれの信号入力ポートが設けられており、それ
ぞれの一時記憶用データの信号入力ポートを介して第1
のデジタル累算入力として、前記CORDIC手順の初期ステ
ップ時に第1のベクトル成分を受信するように構成され
た前記第1の累算器であり、かつ、一時記憶され、更新
された第1のデジタル累算入力として、前記CORDIC手順
の各後続ステップ時に、前ステップ時の第1の累算結果
を受信し、また、それぞれの一時記憶用データの信号入
力ポートを介して、第1のデジタル累算入力として、前
記除算手順の初期ステップ時に、被除数入力信号を受信
するように構成された前記第1の累算器であり、かつ、
前記除算手順の各後続ステップにおいて、一時記憶さ
れ、更新された第1のデジタル累算入力として、前ステ
ップ時の第1の被除数を受信するように構成された前記
第1の累算器であり、かつ、それぞれの一時記憶用デー
タの信号入力ポートを介して、第1のデジタル累算入力
として、平方根計算手順の初期ステップ時に、被開閉数
入力信号を受信し、また、前記平方根計算手順の各ステ
ップ時に、一時記憶され、更新された第1のデジタル累
算入力として、前ステップ時の第1の被開閉数を受信す
るように構成された前記第1の累算器であり、連続的な
第1の、このようなデジタル累算器結果を一時的に記憶
するための第1の累算器手段と;それぞれの信号入力ポ
ート及びそれぞれの出力ポートが設けられており、それ
ぞれの一時記憶用データの信号入力ポートを介して、第
2のデジタル累算入力として、前記CORDIC手順の初期ス
テップ時に、第2のベクトル成分を受信し、前記CORDIC
手順の各後続ステップ時に、更新された第2のデジタル
累算入力として、前ステップ時の第2の累算結果を受信
し、それぞれの一時記憶用データの信号入力ポートを介
して、第2のデジタル累算入力として、前記除算手順の
初期ステップ時に、除数入力信号を受信し、前記除算手
順の各後続ステップ時に、一時記憶され、更新された第
2のデジタル累算入力として、前ステップの除数信号を
受信するように構成され、連続的な第2のデジタル累算
結果を一時的に記憶するための第2の累算器手段と;そ
れぞれの信号入力ポート及びそれぞれの信号出力ポート
が設けられており、第3のデジタル累算入力として、前
記CORDIC、除算、平方根計算のうち任意の関数のゼロ番
目のステップ時に算術ゼロを一時的に記憶し、前記CORD
IC手順の各ステップ時に、それぞれの弧の接線角の概算
値を一時的に記憶し、前記除算手順の各ステップ時に、
商のそれぞれの概算値を一時的に記憶し、前記平方根計
算手順の各ステップ時に、平方根のそれぞれの概算値を
一時的に記憶するように構成されている、第3のデジタ
ル累算結果を一時的に記憶するための第3の累算器手段
と;前記CORDIC手順の各ステップ時に、iに従って求め
られる弧の接線基数を発生する手段と;前記CORDIC手順
及び前記除算手順の各ステップ時に前記第1の累算結果
を更新する前に、前記各ステップにおいて前記第1の各
累算結果とゼロの比較を行うための手段と;前記平方根
計算手順の各ステップ時に前記第1の累算結果を更新す
る前に、前記各ステップにおいて前記第1の各累算結果
と前記被開閉数に対する試行概算値の比較を行うための
手段と;前記CORDIC手順の各ステップにおいて、少なく
ともゼロまたは正である前記比較器結果に応答し、前記
第1の累算器手段に調整を加えて、その第1のデジタル
累算結果から現在の第2の累算結果を減算し、さらに、
その結果、得られる合計を2倍して、更新された第1の
デジタル累算結果を発生するための手段と;前記CORDIC
手順の各ステップにおいて、少なくともゼロまたは正で
ある前記比較器結果に応答し、前記第2の累算手段に調
整を加えて、その第2のデジタル累算結果と現在の第1
のデジタル累算結果に2-(i+1)を掛けた積を加算し、更
新された第2のデジタル累算結果を発生するための手段
と;前記CORDIC手順の各ステップにおいて、少なくとも
ゼロまたは正である前記比較器結果に応答し、前記第3
の累算手段に調整を加えて、その第3のデジタル累算結
果とiに従って求められる前記弧の接線基数を加算し、
更新された第3のデジタル累算結果を発生するための手
段と;前記CORDIC手順の各ステップにおいて、ゼロ未満
である前記比較器結果に応答し、前記第1の累算手段に
調整を加えて、その第1のデジタル累算結果と第2の累
算結果を加算し得られた結果の合計を2倍して、更新さ
れた第1のデジタル累算結果を発生するための手段と;
前記CORDIC手順の各ステップにおいて、ゼロ未満に更新
される前に、前記第1の各デジタル累算結果に応答し、
前記第2の累算手段に調整を加えて、その第2のデジタ
ル累算結果を現在の第1のデジタル累算結果に2-(i+1)
を掛けた積だけデクリメントし、更新された第2のデジ
タル累算結果を発生するための手段と;前記CORDIC手順
の各ステップにおいて、ゼロ未満である前記比較器結果
に応答し、前記第3の累算手段に調整を加えて、その第
3のデジタル累算結果からiに従って求めらる弧の接線
基数を減算して更新された第3のデジタル累算結果を発
生するための手段と;前記除算手順の各ステップにおい
て、少なくともゼロまたは正である前記比較器結果に応
答し、前記第1の累算手段に調整を加えて、その第1の
デジタル累算結果から前記第2のデジタル累算結果の1
/2を減算し、更新された第1のデジタル累算結果を発
生するための手段と;前記除算手順の各ステップにおい
て、少なくともゼロまたは正である前記比較器結果に応
答し、前記第2の累算手段に調整を加えて、その第2の
デジタル累算結果と現在の第1のデジタル累算結果に2
-(i+1)を掛けた積を加算し、更新された第2のデジタル
累算結果を発生するための手段と;前記除算手順の各ス
テップにおいて、少なくともゼロまたは正である前記比
較器結果に応答し、前記第3の累算手段に調整を加え
て、その第3のデジタル累算結果とiに従って求められ
る前記弧の接線基数を加算し、更新された第3のデジタ
ル累算結果を発生するための手段と;前記除算手順の各
ステップにおいて、ゼロ未満である前記比較器結果に応
答し、前記第1の累算手段に調整を加えて、その第1の
デジタル累算結果と第2の累算結果を加算し得られた結
果の合計を2倍して、更新された第1のデジタル累算結
果を発生するための手段と;前記除算手順の各ステップ
において、ゼロ未満に更新される前に、前記第1の各デ
ジタル累算結果に応答し、前記第2の累算手段に調整を
加えて、その第2のデジタル累算結果を現在の第1のデ
ジタル累算結果に2-(i+1)を掛けた積だけデクリメント
し、更新された第2のデジタル累算結果を発生するため
の手段と;前記除算手順の各ステップにおいて、ゼロ未
満である前記比較器結果に応答し、前記第3の累算手段
に調整を加えて、その第3のデジタル累算結果からiに
従って求めらる弧の接線基数を減算して更新された第3
のデジタル累算結果を発生するための手段と;前記平方
根計算手順の各ステップにおいて、第1の各デジタル累
算結果が少なくとも前記被開閉数に対する試行概算値と
同等以上である前記比較器結果に応答し、前記第1の累
算手段に調整を加えて、その第1のデジタル累算結果か
ら2 -(i+2)と前記第3の累算結果の合計を減算し、更新
された第1のデジタル累算結果を発生するための手段
と;前記平方根計算手順の各ステップにおいて、第1の
各デジタル累算結果が前記被開閉数に対する試行概算値
未満である前記比較器結果に応答し、前記第1の累算手
段に調整を加えて、その第1のデジタル累算結果と2
-(i+2)と前記第3の累算結果の合計を加算し、更新され
た第1のデジタル累算結果を発生するための手段と;前
記平方根計算手順の各ステップにおいて、第1の各デジ
タル累算結果が少なくとも前記被開閉数に対する試行概
算値と同等以上である前記比較器結果に応答し、前記第
3の累算手段に調整を加えて、その第3のデジタル累算
結果と2-( i+1)を加算し、更新された第3のデジタル累
算結果を発生するための手段と;を含む。
SUMMARY OF THE INVENTION The present invention provides one continuous
According to a constant i that increases by one at each step,
Hands with steps that are numbered consecutively, starting with
CORDIC, division, or square root calculation procedure calculated in order
Digital process that selects and executes a series of steps
The digital processor.
Is provided with each signal input port,
First via the signal input port for each temporary storage data
The initial step of the CORDIC procedure
Configured to receive the first vector component during the
The first accumulator, and is temporarily stored and updated.
As the first digital accumulated input obtained, the CORDIC procedure
During each subsequent step, the first accumulation result from the previous step
And the signal input of each temporary storage data
Via the power port as the first digital accumulation input
Receives the dividend input signal during the initial step of the division procedure
The first accumulator configured to:
At each subsequent step of the division procedure,
As the first updated digital accumulation input
Wherein the first dividend is received at the time of the
The first accumulator and the respective temporary storage data
A first digital accumulation input via a signal input port of the
In the initial step of the square root calculation procedure,
Receiving the input signal and performing each step of the square root calculation procedure.
At the time of backup, the temporarily stored and updated first digital
As a calculation input, the first switched number at the previous step is received.
The first accumulator configured to be continuous;
First, temporarily store such digital accumulator results
First accumulator means for performing the respective signal input ports;
Ports and their respective output ports are provided.
Via the signal input port for each temporary storage data
2 as the digital accumulation input, the initial status of the CORDIC procedure
At the step, receiving the second vector component, the CORDIC
During each subsequent step of the procedure, an updated second digital
Receives the second accumulation result of the previous step as accumulation input
Via the signal input port for the temporary storage data.
Then, as a second digital accumulation input,
At the initial step, the divisor input signal is received and the
At each subsequent step in the sequence, the temporarily stored and updated
As the digital accumulation input of 2, the divisor signal of the previous step is
Continuous second digital accumulation configured to receive
Second accumulator means for temporarily storing the result;
Each signal input port and each signal output port
Is provided as the third digital accumulation input.
Zero of any function in the CORDIC, division, square root calculation
At the time of the eye step, temporarily store arithmetic zero, and
Approximate tangent angles for each arc at each step of the IC procedure
Temporarily store the value, at each step of the division procedure,
Temporarily store the approximate value of each of the quotients;
At each step of the calculation procedure, calculate the approximate value of each square root
A third digital device configured to temporarily store
Accumulator means for temporarily storing an accumulation result
And at each step of the CORDIC procedure according to i
Means for generating a tangent radix of the arc to be formed; said CORDIC procedure
And the first accumulation result at each step of the division procedure
Before updating the first
Means for comparing the accumulation result with zero; and the square root
Updating the first accumulation result at each step of the calculation procedure
Before each of the first accumulation results
To compare the trial estimate for the number of actuations
Means; at each step of said CORDIC procedure,
Responsive to the comparator result being both zero or positive,
Making adjustments to the first accumulator means so that the first digital
Subtracts the current second accumulation result from the accumulation result,
As a result, the resulting sum is doubled and the updated first
Means for generating a digital accumulation result; said CORDIC
In each step of the procedure, at least zero or positive
In response to the comparator result, the second accumulating means is adjusted.
The second digital accumulation result and the current first
2 in the digital accumulation result of-(i + 1)Multiplied by
Means for generating a new second digital accumulation result
And at least in each step of the CORDIC procedure
Responsive to the comparator result being zero or positive, the third
To the third means of digital accumulation
Add the tangent radix of the arc determined according to the result and i,
Procedure for generating an updated third digital accumulation result
Steps; less than zero at each step of the CORDIC procedure
Responsive to the comparator result being
With adjustments, the first digital accumulation result and the second accumulation
Double the sum of the results obtained by adding the calculation results and update
Means for generating a first digital accumulation result obtained;
Update to less than zero in each step of the CORDIC procedure
Responding to each of the first digital accumulation results before
The second accumulator is adjusted and its second digital
Is added to the current first digital accumulation result.-(i + 1)
Is decremented by the product multiplied by
Means for generating a result of summation of the totals; said CORDIC procedure
The comparator result being less than zero in each step of
In response to the third accumulation means,
The tangent of the arc obtained from the digital accumulation result of 3 according to i
Generates updated third digital accumulation result by subtracting radix
Means for generating; in each step of said division procedure
At least in response to the comparator result being zero or positive.
In response, the first accumulation means is adjusted and the first accumulation means is adjusted.
From the digital accumulation result, 1 of the second digital accumulation result
/ 2 is subtracted to generate an updated first digital accumulation result.
Means for generating; in each step of said division procedure
At least in response to the comparator result being zero or positive.
In response, the second accumulation means is adjusted and the second accumulation means is adjusted.
2 for the digital accumulation result and the current first digital accumulation result
-(i + 1)Multiplied by 2 and the updated second digital
Means for generating an accumulation result; each step of said division procedure
Said ratio being at least zero or positive in step
Responding to the comparator result and adjusting the third accumulating means.
Calculated according to the third digital accumulation result and i
A third digit updated by adding the tangent radix of said arc
Means for generating an accumulation result; each of the division procedures
Responsive to said comparator result being less than zero,
In response, the first accumulation means is adjusted and the first accumulation means is adjusted.
The result obtained by adding the digital accumulation result and the second accumulation result
Updated the first digital accumulation result by doubling the sum of the results
Means for generating a result; each step of said division procedure
The first data before being updated to less than zero.
Adjusting the second accumulation means in response to the digital accumulation result.
In addition, the second digital accumulation result is stored in the current first data.
2 for digital accumulation result-(i + 1)Is decremented by the product of
To generate an updated second digital accumulation result
Means in each step of the division procedure,
Responsive to the comparator result being full, the third accumulating means
, And from the third digital accumulation result to i
Therefore, the third radix updated by subtracting the tangent radix of the arc obtained is
Means for generating a digital accumulation result of;
In each step of the root calculation procedure, the first digital accumulation
The calculation result is at least a trial estimate for the number of switches
Responsive to the comparator result being equal to or greater than
The first digital accumulation result by adjusting the calculation means
2 -(i + 2)And the sum of the third accumulation result is subtracted and updated.
Means for Generating a Generated First Digital Accumulation Result
And in each step of the square root calculation procedure, a first
Each digital accumulation result is a trial estimate for the number of switches
Responsive to the comparator result being less than
Adjusting the stage, its first digital accumulation result and 2
-(i + 2)And the sum of the third accumulation result is added and updated.
Means for generating a first digital accumulation result;
In each step of the square root calculation procedure, the first digital
The cumulative total is at least a trial summary
Responding to the comparator result which is equal to or greater than the calculated value,
The third digital accumulation by adjusting the accumulation means of 3
Result and 2-( i + 1)And the updated third digital accumulation
Means for generating a calculation result.

【0007】[0007]

【実施例】以下図面を用いて本発明を説明する。添付図
面および以下の説明を通して、1ワード(32ビット)ディ
レイ・オペレータを表示するために、その後に数字をも
たない記号 Δ が用いられる。記号 Δn(n は整数)
は n-ビットのディレイ・オペレータを表示するために
用いられる。記号 S&Hn は、ビット・シリアルのワ
ードのストリームにおける各ビット・シリアルのワード
の n 番目のビットのサンプリングおよび保持の動作を
表示するために用いられる。ある1個のビット・シリア
ルのワードにおいて、記号 2m (ここに、m は -31 か
ら 0 までの範囲にある整数)の意味することは、ビッ
ト・シリアルのワードのストリングにおける32ビットの
ビット・シリアルのワード内の連続ビットの中の(31+
m)番目のビットが "1" であり、全ての他のビットは "
0" であるということである。
BRIEF DESCRIPTION OF THE DRAWINGS FIG. Throughout the accompanying drawings and the description that follows, the symbol Δ without digits is used to indicate a one-word (32-bit) delay operator. Symbol Δn (n is an integer)
Is used to indicate an n-bit delay operator. The symbol S & Hn is used to indicate the sampling and holding operation of the nth bit of each bit-serial word in the bit-serial word stream. In a bit-serial word, the meaning of the symbol 2 m (where m is an integer in the range from -31 to 0) is a 32-bit bit string in a bit-serial word string. (31+) in consecutive bits in a serial word
m) th bit is "1" and all other bits are "
0 ".

【0008】図1は本発明の一実施例を示した構成ブロ
ック図である。図1におけるモノリシック集積回路5は、
3相の電力幹線をモニタするために用いられるものであ
る。ここでの電力幹線として設けられているものは、電
流センス・トランス11の1次巻線が挿入されている第1相
の交流電流に対する導線1、電流センス・トランス12の1
次巻線が挿入されている第2相の交流電流に対する導線
2、および、電流センス・トランス13の1次巻線が挿入さ
れている第3相の交流電流に対する導線3である。電圧セ
ンス・トランス14の1次巻線は、接地部と第1相の導線1
との間の電圧をセンスするために接続されている。電圧
センス・トランス15の1次巻線は、接地部と第2相の導線
2との間の電圧をセンスするために接続されている。電
圧センス・トランス16の1次巻線は、接地部と第3相の導
線3との間の電圧をセンスするために接続されている。
FIG. 1 is a block diagram showing an embodiment of the present invention. The monolithic integrated circuit 5 in FIG.
It is used to monitor three-phase power mains. The mains provided here are a conductor 1 for the first-phase alternating current into which the primary winding of the current sense transformer 11 is inserted, and a conductor 1 for the current sense transformer 12.
Conductor for second phase alternating current with secondary winding inserted
2, and a conductor 3 for a third-phase alternating current into which the primary winding of the current sense transformer 13 is inserted. The primary winding of the voltage sense transformer 14 is connected to the ground and the first phase conductor 1.
Is connected to sense a voltage between the two. The primary winding of the voltage sense transformer 15 is connected to ground and the second phase conductor.
It is connected to sense the voltage between the two. The primary winding of voltage sense transformer 16 is connected to sense the voltage between ground and third phase conductor 3.

【0009】集積回路5におけるシグマ・デルタ変調器2
1,22および23は、電流センス・トランス11,12および13
の2次巻線から得られる電圧をデジタル化して、幹線導
体1,2および3を流れるアナログ電流のデジタル表現を行
う。集積回路5におけるシグマ・デルタ変調器24,25およ
び26は、電圧センス・トランス14,15および16の2次巻線
から加えられる電圧をデジタル化して、幹線導体1,2お
よび3に現れるアナログ電圧のデジタル表現を行う。シ
グマ・デルタ変調器21-26からの出力ビットのストリー
ムは、それぞれに、6-チャンネルの decimation フィル
タ20の入力ポートに流れる。このフィルタ20の出力ポー
トからは、ビット・シリアルの乗算-加算プロセッサ30
(これについてはより詳細に後述される)に対して、次
のように decimate された、ビット・シリアル表現され
たデータをサイクリックに供給する。 (1)幹線導体1を流れるアナログ電流、 (2)幹線導体1上のアナログ電圧、 (3)幹線導体2を流れるアナログ電流、 (4)幹線導体2上のアナログ電圧、 (5)幹線導体3を流れるアナログ電流、および (6)幹線導体3上のアナログ電圧。
Sigma-delta modulator 2 in integrated circuit 5
1,22 and 23 are current sense transformers 11,12 and 13
The digitalization of the analog current flowing through the main conductors 1, 2 and 3 is performed by digitizing the voltage obtained from the secondary winding of. The sigma-delta modulators 24, 25 and 26 in the integrated circuit 5 digitize the voltage applied from the secondary windings of the voltage sense transformers 14, 15 and 16 and convert the analog voltages appearing on the main conductors 1, 2 and 3 Digital representation of The streams of output bits from the sigma-delta modulators 21-26 respectively flow into the input ports of a 6-channel decimation filter 20. From the output port of this filter 20, a bit serial multiply-add processor 30
(This is described in more detail below), and cyclically supplies the decimated, bit-serialized data as follows: (1) Analog current flowing through main conductor 1, (2) analog voltage on main conductor 1, (3) analog current flowing through main conductor 2, (4) analog voltage on main conductor 2, (5) main conductor 3. And (6) the analog voltage on the main conductor 3.

【0010】乗算-加算プロセッサ30はビット・シリア
ルの出力信号をビット・シリアルのレジスタのバンク19
に供給する。そして、このバンク19からビット・シリア
ルの入力信号は、CORDIC プロセッサ40によって取り込
まれることができる。
The multiply-add processor 30 converts the bit-serial output signal into a bank 19 of bit-serial registers.
To supply. The bit serial input signal from the bank 19 can be captured by the CORDIC processor 40.

【0011】トランス11-16の2次巻線の第1端部からシ
グマ・デルタ変調器21-26まで供給される電圧に対して
参照されるアナログ基準電圧 AGND は、集積回路5内に
配置されているこの直流電圧に対する発生器18から、こ
れらの2次巻線の第2端部に加えられる。集積回路5内に
配置されているクロック発生器回路100から発生するク
ロック信号の周波数は、クリスタル101によってコント
ロールされた10 MHz の周波数において、クリスタル・
コントロール式の発振器(個別のものとしては図示され
ない)の発振に特定されたレシオである。この10 MHz
の発振(周波数)はクロック発生器内で1/4に分周され
て2.5 MHz を発生する。そして、これによりシグマ・デ
ルタ変調器21-26に対するオーバサンプリング・レート
が決められる。decimation フィルタ20は、4.9 kHz の
ワード・レートにおいて乗算-加算プロセッサ30に対し
て、データを更新する。ビット・シリアルのレジスタの
バンク19は、5 Hz を僅かに超えるワード・レートにお
いて CORDIC プロセッサ40に対して、そのビット・シリ
アルの入力信号を更新する。
An analog reference voltage AGND referenced to the voltage supplied from the first end of the secondary winding of the transformer 11-16 to the sigma-delta modulator 21-26 is located within the integrated circuit 5. A generator 18 for this DC voltage is applied to the second ends of these secondary windings. The frequency of the clock signal generated by the clock generator circuit 100 located in the integrated circuit 5 is equal to the frequency of the crystal signal at a frequency of 10 MHz controlled by the crystal 101.
This is the ratio specified for the oscillation of the control-type oscillator (not separately shown). This 10 MHz
Oscillation (frequency) is divided by 1/4 in the clock generator to generate 2.5 MHz. This determines the oversampling rate for the sigma-delta modulators 21-26. The decimation filter 20 updates the data to the multiply-add processor 30 at a word rate of 4.9 kHz. Bank 19 of bit-serial registers updates its bit-serial input signal to CORDIC processor 40 at word rates slightly above 5 Hz.

【0012】プログラマブル・リード・オンリ・メモリ
(PROM)9に記憶されているものは、乗算-加算プロセッサ
30に対するプログラム命令と係数データ、および、CORD
ICプロセッサ40に対するプログラム命令である。PROM
コントロール回路29は集積回路5内に配置されており、
プログラム命令および係数データを乗算-加算プロセッ
サ30に対して適切に渡し、また、プログラム命令を COR
DIC プロセッサ40に対して適切に渡す。PROM 9 は集積
回路5の外部に配置された別のモノリシック集積回路(I
C)であるが、その理由は、PROM 9 は好ましくは電気的
に消去可能なタイプのものであって、単一の IC 内でア
ナログ CMOS と組み合わせることは容易ではないからで
ある。本発明者は、PROM 9 として、電気的に消去可能
な PROMである NEC μPD28C04 を用いているが、これは
512バイトの記憶をすることができ、また、2.5 MHzを超
えるデータ・レートで読み取りが可能である。この PRO
M には11本のアドレス・ラインおよび8本のデータ・ラ
インが設けられている。PROM 9 に記憶される係数は16
ビットの2進小数点に最上位ビットが続く2の補数であ
る。集積回路9と5との間のインタフェースは17ビット幅
のものであるから、このインタフェースを介して高速の
ドライブをするためには適正量の電力が必要とされる。
[0012] Programmable read only memory
What is stored in (PROM) 9 is a multiplication-addition processor
Program instructions and coefficient data for 30 and CORD
These are program instructions for the IC processor 40. PROM
The control circuit 29 is arranged in the integrated circuit 5,
Appropriately pass program instructions and coefficient data to the multiply-add processor 30, and
Pass appropriately to DIC processor 40. PROM 9 is a separate monolithic integrated circuit (I
C), because PROM 9 is preferably of the electrically erasable type and cannot be easily combined with analog CMOS in a single IC. The inventor uses NEC μPD28C04, which is an electrically erasable PROM, as the PROM 9,
It can store 512 bytes and can read at data rates in excess of 2.5 MHz. This PRO
M has 11 address lines and 8 data lines. The coefficient stored in PROM 9 is 16
The two's complement number with the binary point of the bit followed by the most significant bit. Since the interface between the integrated circuits 9 and 5 is 17 bits wide, an appropriate amount of power is required to drive at high speed through this interface.

【0013】並列入力/直列出力(PISO)変換器31は、P
ROMコントロール回路29(図1では詳細には示されていな
い)によりコントロールされて、PROM 9にビット・パラ
レルのフォーマットで記憶されている係数を、乗算-加
算プロセッサ30に加えるためにビット・シリアルのフォ
ーマットに変換する。ここで詳述される電力計測システ
ムにおいては、これらの不変の係数がプロセッサ30のビ
ット・シリアルの乗算器部分において被乗数として用い
られる。そして、このようなビット・シリアルの乗算器
の設計により、並列-直列変換を必要ないかのように見
せる。しかしながら、集積回路基板上のビット・シリア
ルの乗算器レイアウトは、機能的な要素間のインタフェ
ースを介してビット・シリアルの信号だけを受け入れる
ような、標準的なビット・シリアルの設計だけが許容さ
れるシリコン・コンパイラによって決定され、図1に示
されているように、SIPO変換器31が用いられることにな
る。
The parallel input / serial output (PISO) converter 31
Controlled by a ROM control circuit 29 (not shown in detail in FIG. 1), the coefficients stored in PROM 9 in a bit-parallel format are applied to a bit-serial Convert to format. In the power measurement system detailed herein, these invariant coefficients are used as multiplicands in the bit serial multiplier portion of processor 30. And the design of such a bit-serial multiplier makes it appear as if parallel-to-serial conversion is not necessary. However, the bit-serial multiplier layout on the integrated circuit board allows only standard bit-serial designs to accept only bit-serial signals through the interface between the functional elements. As determined by the silicon compiler, and as shown in FIG. 1, a SIPO converter 31 will be used.

【0014】(プログラム・データRAM 6 のレイアウト
をするために、本発明者は1つのシリコン・コンパイラ
・プログラムを使用した。シグマ・デルタ変調器21-26
は、パルス幅変調器64および66のようなマクロセルとし
て配置される。別のシリコン・コンパイラ・プログラム
((Proceedings of the IEEE, vol. 75, pp. 1272-128
2, Sept. 1987 の"A Silicon Compiler for Digital Si
gnal Processing:Methodology,Implementation and App
lications"なる論文において F. Yassa, et al.によっ
て説明されているような))は、IC5 上の回路の残りのビ
ット・シリアルの部分をレイアウトするために使用され
た。)
(To lay out the program data RAM 6, the inventor used one silicon compiler program. Sigma-delta modulators 21-26.
Are arranged as macrocells, such as pulse width modulators 64 and 66. Another silicon compiler program
((Proceedings of the IEEE, vol. 75, pp. 1272-128
2, Sept. 1987, "A Silicon Compiler for Digital Si
gnal Processing: Methodology, Implementation and App
lications ") (as described by F. Yassa, et al.) was used to lay out the remaining bit-serial part of the circuit on IC5.)

【0015】乗算-加算プロセッサ30に対するランダム
・アクセス・プログラム・データ・メモリ6の高速ドラ
イブのための電力を保存するために、このプログラム・
データ・メモリ6が集積回路5内に配置されている。乗算
-加算プロセッサ30からメモリ6への書き込み、または、
この乗算-加算プロセッサ30に対するメモリ6からの読み
取りは RAM コントロール回路35を介してなされる。直
列入力/並列出力(SIPO)変換器32は、RAM コントロー
ル回路35(図1においては詳細には示されていない)に
よりコントロールされて、乗算-加算プロセッサ30から
のビット・シリアルのプログラム・データを、メモリ6
内で記憶されるように、ビット・パラレルのフォーマッ
トのものに変換するようにされる。並列入力/直列出力
(PISO)変換器33および34は、RAM コントロール回路35
(図1においては詳細には示されていない)によりコン
トロールされ、メモリ6内に記憶されているビット・パ
ラレルのプログラム・データについて、乗算-加算プロ
セッサ30への第1および第2のビット・シリアルのデータ
ストリームを同時に2個のワードに変換する。
In order to conserve power for the high speed drive of the random access program data memory 6 to the multiply-add processor 30, this program
Data memory 6 is located in integrated circuit 5. Multiplication
-Writing from the addition processor 30 to the memory 6, or
Reading from the memory 6 to the multiplication-addition processor 30 is performed via the RAM control circuit 35. A serial input / parallel output (SIPO) converter 32 is controlled by a RAM control circuit 35 (not shown in detail in FIG. 1) to convert the bit serial program data from the multiply-add processor 30. , Memory 6
To be stored in a bit-parallel format. The parallel input / serial output (PISO) converters 33 and 34
(Not shown in detail in FIG. 1), the first and second bit serial data to a multiply-add processor 30 for the bit-parallel program data stored in the memory 6. Is converted to two words at the same time.

【0016】正確な電力計測のためには、幹線導体1,2
および3上の交流信号について整数サイクルの積分をす
る乗算-加算プロセッサ30が必要とされる。これらの交
流信号の整数サイクルを検出するためには、プロセッサ
30が decimation フィルタ27から受け取るこれらの信号
に対して、ハイ・パス・フィルタ操作されたデジタル値
を、該乗算-加算プロセッサ30からゼロクロス検出器36
に加えるようにされる。このゼロクロス検出器36から
は、プロセッサ30に対してゼロクロスの指示が戻され
る。
For accurate power measurement, the main conductors 1, 2
A multiply-add processor 30 is required that performs an integral number of cycles of integration on the AC signals on and 3. To detect an integer number of cycles of these AC signals, a processor
For these signals that 30 receives from the decimation filter 27, the high-pass filtered digital values are passed from the multiply-add processor 30 to the zero-cross detector 36.
To be added to The zero-cross detector 36 returns a zero-cross instruction to the processor 30.

【0017】三角係数発生器37はプロセッサ30とのデー
タのやりとりをしており、このプロセッサ30が sinc2
のロー・パス・フィルタ操作の手順を実行するようにプ
ログラムされているときには、三角フィルタのカーネル
を定義する係数を発生する。
The triangular coefficient generator 37 is to exchange data with the processor 30, the processor 30 is sinc 2
Generates a coefficient that defines the kernel of the triangular filter when programmed to perform the low-pass filter operation procedure.

【0018】CORDIC プロセッサ40は、乗算-加算プロセ
ッサ30からビット・シリアルのレジスタのバンク19によ
り decimate された5 Hz の更新レートを僅かに超える
ビット・シリアルの出力信号を受け取る。CORDIC プロ
セッサ40において用いられるarctan の演算のアルゴリ
ズムについては、IRETransaction on Electronic Compu
ters, Vol. EC-8, No.3, pp. 330-334, Sept, 1959 に
おける"The CORDIC Trigonometric Computing Techniqu
e"なる論文においてJ. E. Volder によって記述されて
おり、また、より詳細なその説明は、Spring Joint Com
puter Conference, 1971 のダイジェストの 379-385 ペ
ージにおける"A United for ElementaryFunction"なる
論文において J. S. Walther によって記述されてお
り、ビット・シリアルに適合するように形成された。 CORDIC プロセッサ40に対するarctan の係数は、集積
回路5内に配置されたリード・オンリ・メモリ38に永久
的に記憶されている。この CORDIC プロセッサ40におい
ては、ソートの繰り返し技術により非復元の除算および
非復元の平方根の抽出を行なう。この技術については次
の文献おいて、即ち、New York, Heidelberg および Be
rlinの Spring-Verlagによって1975年に刊行された DES
IGN OF DIGITAL COMPUTERS-An Introduction なる文献
の278-301ページにおいて、H. W. Gschwindおよび E.
J. McCluskey において一般的な説明がなされており、
違いはビット・シリアル適合という点である。 CORDIC プロセッサ40を介するlatencyは、1ワードと1ビ
ット欠けの1ワード比較時間を伴う、ビット・シリアル
操作に適合するような2ワード分のビット・シリアル長
まで延長される。従って、この CORDIC プロセッサ40に
よれば、偶数時および奇数時の演算がそれぞれ交互に実
行される。CORDIC プロセッサ40は、次のような基本関
数の演算をすることができる。なお、xin および yin
は CORDICプロセッサ40に対して選択される入力変数で
ある。 (a)yin/xin, (b)yin(1/2), (c)tan-1(yin/xin), および (d)大きさ(yin,xin) = (yin2 + xin2)(1/2) 集積回路5内に配置されているノーマライザ回路39は、C
ORDIC プロセッサ40と共同して、更に別の基本関数の演
算をする。 (e)[sign(oa2)]*(cordic_out - L)/M ここに、L および M はPROM 9 から供給される CORDIC
プログラム命令に含まれている定数である。また、[si
gn(oa2)]は、レジスタに記憶されている値 oa2の極性
である。cordic_out なる信号は、CORDIC プロセッサ40
からの前の出力であり、更に別の基本関数は CORDIC プ
ロセッサ40の yin/xin 関数を用いて発生される。* な
る記号は、この明細書を通して乗算を表すものである。
The CORDIC processor 40 receives a bit-serial output signal from the multiply-add processor 30 which is slightly above the 5 Hz update rate decimated by the bank 19 of bit-serial registers. The algorithm of the arctan operation used in the CORDIC processor 40 is described in IRETransaction on Electronic Compu
ters, Vol. EC-8, No. 3, pp. 330-334, Sept, 1959, "The CORDIC Trigonometric Computing Techniqu
e "by JE Volder in a dissertation and a more detailed description is
Described by JS Walther in the article "A United for Elementary Function" in the digest of the puter Conference, 1971, pages 379-385, and was formed to be bit serial. The arctan coefficient for CORDIC processor 40 is permanently stored in read only memory 38 located within integrated circuit 5. In the CORDIC processor 40, non-restoring division and non-restoring square root extraction are performed by an iterative sorting technique. This technique is described in the following literature: New York, Heidelberg and Be.
DES published in 1975 by rlin's Spring-Verlag
In pages 278-301 of the document IGN OF DIGITAL COMPUTERS-An Introduction, HW Gschwind and E.
A general explanation is given in J. McCluskey,
The difference is in bit serial adaptation. Latency through the CORDIC processor 40 is extended to a bit-serial length of two words to accommodate bit-serial operations, with one-word and one-word missing one-word comparison times. Therefore, according to the CORDIC processor 40, the operations at the even number and the odd number are alternately executed. The CORDIC processor 40 can operate the following basic functions. Note that xin and yin
Are input variables selected for the CORDIC processor 40. (A) yin / xin, ( b) yin (1/2), (c) tan -1 (yin / xin), and (d) magnitude (yin, xin) = (yin 2 + xin 2) (1 / 2) Normalizer circuit 39 arranged in integrated circuit 5 has C
In cooperation with the ORDIC processor 40, another basic function is calculated. (E) [sign (oa2)] * (cordic_out-L) / M where L and M are CORDIC supplied from PROM 9
This is a constant included in the program instruction. Also, [si
gn (oa2)] is the polarity of the value oa2 stored in the register. The signal called cordic_out is sent to the CORDIC processor 40
, And yet another primitive is generated using the CORDIC processor 40 yin / xin function. The symbol * represents multiplication throughout this specification.

【0019】CORDIC プロセッサ40を通しての処理は時
分割多重化を基礎にして、なされるものであり、2個の
関数を同時に計測することができる。従って、選択され
た期間に、一方の関数 digout1 のビット・シリアルの
データがレジスタ60にロードされ、実質的なアプリケー
ションであるデジタル・メータ61に適用される。同様
に、選択された期間に、他方の関数 digout2のビット・
シリアルデータがレジスタ62にロードされて、デジタル
・メータ63に適用される。パルス幅変調器64は、digout
1 に応答して、対応する持続時間のパルスを信号 pdm1
として D'Arsonval メータ65に加える。同様に、パルス
幅変調器66は、digout2に応答して、対応する持続時間
のパルスを信号 pdm2 として別の D'Arsonval メータ67
に加える。
The processing through the CORDIC processor 40 is performed based on time division multiplexing, and two functions can be measured simultaneously. Thus, during a selected time period, the bit serial data of one function, digout1, is loaded into register 60 and applied to a digital meter 61, which is a substantial application. Similarly, during the selected time period, the bits of the other function digout2
The serial data is loaded into register 62 and applied to digital meter 63. Pulse width modulator 64
In response to 1, a pulse of the corresponding duration
To the D'Arsonval meter 65. Similarly, the pulse width modulator 66 responds to digout2 with another D'Arsonval meter 67 with the pulse of the corresponding duration as signal pdm2.
Add to

【0020】図2により詳細に示されているものは、電
力測定用IC 5上の PROM コントロール回路29とクロック
発生器100の部分、および、オフ・チップの PROM 9 に
対する PROM コントロール回路29の接続である。
Shown in more detail in FIG. 2 is the portion of the PROM control circuit 29 and clock generator 100 on the power measurement IC 5 and the connection of the PROM control circuit 29 to the off-chip PROM 9. is there.

【0021】クロック発生器100における11段のマスタ
・カウンタでは、シグマ・デルタ変調器21-26における
オーバサンプリング・レートの4倍でクロックされる。
この11段のマスタ・カウンタに含まれている2段のカウ
ンタ102は2個の並列ビットからなる下位のカウント出力
を発生するものであり、また、更に別の9段のカウンタ1
03は、カウンタ102からのオーバフロー・ビットをカウ
ントして、9個の並列ビットからなる上位のカウント出
力を発生するものである。ここで、9段のカウンタ103は
アップ・ダウンのタイプのものであり、9個の並列ビッ
トからなるカウント出力は選択的に2の補数にすること
ができる。そして、このような選択的な2の補数化をす
ることは、カウンタ102のカウント出力の最下位ビット
の補数に対応してなされるものであり、ここでの補数
は、ロジック・インバータ104によりコントロールさ
れ、図1の decimation フィルタ20用の鋸波信号として
加えられる。なお、このフィルタ20については、図7に
於いて更に詳述される。この選択的な2の補数化によ
り、9個の並列ビットからなる上位のカウント出力およ
びその補数が、6チャンネルそれぞれの decimation フ
ィルタ20(図7に関してより詳細に説明される)の上昇
係数および下降係数として用いられる。
The 11-stage master counter in clock generator 100 is clocked at four times the oversampling rate in sigma-delta modulators 21-26.
The two-stage counter 102 included in the 11-stage master counter generates a lower count output composed of two parallel bits.
03 is for counting the overflow bits from the counter 102 and generating a higher count output composed of nine parallel bits. Here, the nine-stage counter 103 is of the up / down type, and the count output composed of nine parallel bits can be selectively set to 2's complement. Such selective two's complementation is performed according to the complement of the least significant bit of the count output of the counter 102, and the complement here is controlled by the logic inverter 104. And is added as a sawtooth signal for the decimation filter 20 of FIG. The filter 20 will be described in further detail with reference to FIG. This optional two's complementation provides a high count output consisting of nine parallel bits and its complement, the rising and falling coefficients of the decimation filter 20 (described in more detail with respect to FIG. 7) for each of the six channels. Used as

【0022】それらの出力が更新される都度にシグマ・
デルタ変調器21-26によって2.5 MHzのレートで発生され
る ds_cntl信号は、カウンタ102に対してリセット信号
として加えられて、乗算-加算プロセッサ30とシグマ・
デルタ変調器21-26との間の同期をとるようにされる。
Each time those outputs are updated, sigma
The ds_cntl signal, generated by the delta modulators 21-26 at a rate of 2.5 MHz, is applied as a reset signal to the counter 102 to provide the multiplication-addition processor 30 and the sigma-
Synchronization with the delta modulators 21-26 is achieved.

【0023】カウンタ102のカウント出力の最下位ビッ
トが "1"であることに応じて、9ビット幅の並列ビット
・ラッチ105により、カウンタ103のカウント出力のアッ
プ・カウント部分がラッチされる。ラッチ105の内容
は、PROM 9 をアドレスするために用いられて、乗算-加
算プロセッサ30に対してプログラムされた命令をアクセ
スする。即ち、この9段のカウンタ103は、PROM 9 をア
ドレスするためのプログラム・カウンタとして使用され
て、連続してサイクリックに、乗算-加算プロセッサ30
に対するプログラム命令を逐次読み取られる。ラッチ10
5に一時的に記憶された最下位側の4ビットは、図3に示
されている16バイト単位でのアクセス・バイトに対する
アドレス・ビットとして、PROM 9 に対して直接渡され
る。マルチプレクサ106は、AND ゲート107から受け入れ
た "0" コントロール信号に応じて、ラッチ105に一時的
に記憶された最上位側の5ビットを、アドレス・ビット
としてPROM 9 に対して選択的に伝送する。
In response to the least significant bit of the count output of the counter 102 being "1", the 9-bit parallel bit latch 105 latches the up-count portion of the count output of the counter 103. The contents of latch 105 are used to address PROM 9 to access programmed instructions to multiply-add processor 30. That is, the nine-stage counter 103 is used as a program counter for addressing the PROM 9 and continuously and cyclically multiply-add processor 30.
Are sequentially read. Latch 10
The four least significant bits temporarily stored in 5 are passed directly to PROM 9 as address bits for the access byte in 16-byte units shown in FIG. Multiplexer 106 selectively transmits the five most significant bits temporarily stored in latch 105 to PROM 9 as address bits in response to a "0" control signal received from AND gate 107. .

【0024】ctr2 および ctr4 信号の双方が "1" であ
るのに応じて、PROM 9 の出力アドレスの第6、第8、第1
4および第16の間だけ、"1" 出力信号がAND ゲート107か
ら出される。ここでの ctr2 および ctr4信号は、それ
ぞれに、9ビット・ラッチ105から得られたときの、カウ
ンタ102および103からなるマスタ・カウンタの第2段お
よび第4段からのアップ・カウントに当るものである。A
ND ゲート107から受け入れた "1" コントロール信号に
応じて、マルチプレクサ106からは、カウンタ108の5並
列ビットのカウント出力がアドレス・ビットとして PRO
M 9 に渡される。このPROM 9 は3ビット分の待ち時間を
有するものと考える。
According to the fact that both the ctr2 and ctr4 signals are "1", the sixth, eighth and first output addresses of the PROM 9 are output.
The "1" output signal is output from the AND gate 107 only during the fourth and sixteenth periods. The ctr2 and ctr4 signals here correspond to the up-count from the second and fourth stages of the master counter composed of the counters 102 and 103, respectively, when obtained from the 9-bit latch 105. is there. A
In response to the "1" control signal received from the ND gate 107, the multiplexer 106 outputs the count output of the five parallel bits of the counter 108 as an address bit as a PRO bit.
Passed to M9. It is assumed that the PROM 9 has a wait time of 3 bits.

【0025】AND ゲート109と1010および cout11 は、u
pdate_wb(図11の回路で発生するような)および cordi
c_inc 信号がカウンタ108 からオーバフローして、5段
カウンタ108 のカウント値として "1" を発生するよう
にされる。cordic_inc 信号はCORDIC プロセッサ40に対
するプログラム命令毎に含まれているフラグ・ビットで
ある。そして、このフラグ・ビットは全ての命令に対し
て "1" であるけれども、最後のCORDIC命令以降には、
カウンタ108は "0" になり、停止する。従って、CORDI
C プロセッサ40に対するプログラムの最後の命令まで
は、カウンタ102 および103 からなるマスタ・カウンタ
の2048 カウント毎に、カウンタ103 は1回だけ歩進する
ことになる。update_wb フラグはロジック・インバータ
1012 によって補数化され、この補数は入力信号の一つ
として AND ゲート1011 に加えられる。この AND ゲー
ト1011 に対する他方の入力信号はカウンタ103 のオー
バフローである。update_wb フラグが "1" 以外のとき
にカウンタ103のオーバフローが生じたとすると、AND
ゲート1011 は COUT11 を加えてカウンタ108をゼロ・
カウントにリセットする。
AND gates 109 and 1010 and cout11
pdate_wb (as occurs in the circuit of Figure 11) and cordi
The c_inc signal overflows from the counter 108 to generate "1" as the count value of the five-stage counter 108. The cordic_inc signal is a flag bit included for each program instruction to CORDIC processor 40. And while this flag bit is "1" for all instructions, since the last CORDIC instruction,
The counter 108 becomes "0" and stops. Therefore, CORDI
Until the last instruction of the program for the C processor 40, the counter 103 will increment only once every 2048 counts of the master counter consisting of the counters 102 and 103. update_wb flag is logic inverter
Complemented by 1012, this complement is applied to AND gate 1011 as one of the input signals. The other input signal to the AND gate 1011 is an overflow of the counter 103. If the counter 103 overflows when the update_wb flag is other than "1", AND
Gate 1011 adds COUT11 to zero counter 108.
Reset to count.

【0026】シグマ・デルタ変調器21-26からの出力信
号の遷移を示すクロック・サイクルの "1" は、クロッ
ク・ディレイ段1013 において1ビット・シリアル分だけ
ディレイして、2段カウンタ102 に対するリセット信号
として加えられ、これによりカウンタ102 および103 は
同期される。
The clock cycle "1" indicating the transition of the output signal from the sigma-delta modulator 21-26 is delayed by one bit serial in the clock delay stage 1013, and reset to the two-stage counter 102. Signal, whereby the counters 102 and 103 are synchronized.

【0027】カウント2047に達した後で生じる、カウン
タ102 および103 からなるマスタ・カウンタの最終のキ
ャリー出力cout11は、マルチプレクサ1015 の入力とな
り、クロック・ディレイ段1014 出力とビット・シリア
ル・ワードのビットに対応して"1"であるコントロール
信号を出力する20 (20に相当するbitが1)により入力ポ
ートが選択される。そのコントロール信号が"0" である
次に続く31ビットの期間、マルチプレクサ1015 は、ラ
ッチ操作にあり、1ビット・クロックのディレイ段1014
出力を入力ポートに選択する。クロックされるディレイ
段1014 の出力ポートからの信号は、図9,11,13および15
において用いられるcordic_start 信号である。この信
号が"1" であるのは、乗算-加算プロセッサ30 に供給さ
れる64組の MAP 命令の最初のサイクルの間である。
The final carry output cout11 of the master counter consisting of counters 102 and 103, which occurs after the count 2047 has been reached, becomes the input of the multiplexer 1015 and is connected to the output of the clock delay stage 1014 and to the bits of the bit serial word. corresponding to 2 0 for outputting a control signal is "1" (bit corresponding to 2 0 1) input port is selected by. During the next 31 bits during which the control signal is "0", the multiplexer 1015 is in a latching operation and the 1-bit clock delay stage 1014
Select output for input port. The signals from the output port of the clocked delay stage 1014 are shown in FIGS.
Is the cordic_start signal used in. This signal is "1" during the first cycle of the 64 sets of MAP instructions provided to the multiply-add processor 30.

【0028】図3に示されているものは、PROM9 の一例
としてNECμPD28C04に記憶される、16 バイトのプログ
ラム情報である。図2の回路によれば、図4のタイミング
図に示されているタイミングで、16バイトの記憶されて
いるプログラム情報および定数情報が連続して取り出さ
れる。PROM9 のデータ読み取りについては、図2を参照
しながら更に詳細に説明される。
FIG. 3 shows 16-byte program information stored in the NEC μPD28C04 as an example of the PROM 9. According to the circuit of FIG. 2, 16 bytes of stored program information and constant information are continuously extracted at the timing shown in the timing chart of FIG. Reading data from the PROM 9 will be described in more detail with reference to FIG.

【0029】図2に示されている48ビットのラッチ90
は、8ビットのラッチ91, 92, 93, 94,96 および97から
の出力信号を、その入力信号として受け取る。(各コン
トロール信号のタイミングがシリコン・コンパイラによ
って独立にコントロールされるため、この48ビットラッ
チ90が実際にモノリシック IC 内に作り込まれ、実在す
るというわけではないけれども、これは IC の動作を
理解するための便利な仮定である。)PROM 9 から逐次
かつサイクリックに読み取られる16個の8ビット・バイ
トの中のアドレス0番およびアドレス8番のものは、32ビ
ット・シリアル・ワードの 2-28 のタイミングで8ビッ
トのラッチ91にラッチされる。PROM 9 から逐次かつサ
イクリックに読み取られる16個の8ビット・バイト中の
アドレス1番およびアドレス9番のものは、32ビット・シ
リアル・ワードの 2-24 のタイミングで8ビットのラッ
チ92にラッチされる。PROM 9 から逐次かつサイクリッ
クに読み取られた16個の8ビット・バイトの中のアドレ
ス2番およびアドレス10番のものは、32ビット・シリア
ル・ワードの 2-20 のタイミングで8ビットのラッチ93
にラッチされる。そして、PROM 9 から逐次かつサイク
リックに読み取られた16個の8ビット・バイトの中のア
ドレス3番およびアドレス11番のものは、32ビット・シ
リアル・ワードの 2-16のタイミング で8ビットのラッ
チ94にラッチされる。
The 48-bit latch 90 shown in FIG.
Receives the output signals from the 8-bit latches 91, 92, 93, 94, 96 and 97 as its input signals. (Because the timing of each control signal is controlled independently by the silicon compiler, this 48-bit latch 90 is actually built into the monolithic IC and is not real, but it understands the operation of the IC. Addresses 0 and 8 of the 16 8-bit bytes read sequentially and cyclically from PROM 9 are the 32-bit serial words 2 -28 Is latched by the 8-bit latch 91 at the timing shown in FIG. Addresses 1 and 9 of the 16 8-bit bytes read sequentially and cyclically from PROM 9 are latched into 8-bit latches 92 at the timing 2 to 24 of the 32-bit serial word. Is done. Addresses 2 and 10 of the 16 8-bit bytes sequentially and cyclically read from PROM 9 are latched by 8-bit latches 93 at timings 2-20 of the 32-bit serial word.
Latched. The address 3 and address 11 of the 16 8-bit bytes sequentially and cyclically read from PROM 9 are 8-bit data at the timing 2-16 of the 32-bit serial word. Latched by latch 94.

【0030】PROM 9 から逐次かつサイクリックに読み
取られた16個の8ビット・バイトの中のアドレス5番は、
ラッチ命令のタイミングで8ビットのラッチ96にラッチ
される。そして、8ビット後の別のラッチ命令のタイミ
ングで、PROM 9 から逐次かつサイクリックに読み取ら
れた16個の8ビット・バイトの中のアドレス7番が8ビッ
トのラッチ97にラッチされる。ラッチ96および97に対す
るラッチ命令は、それぞれAND ゲート961および971から
の出力である。32ビット・シリアル・ワードの 2-8のタ
イミング信号およびロジック・インバータ962からの出
力信号の双方が "1"であるときには、AND ゲート961の
出力信号が "1" になる。32ビット・シリアル・ワード
の 20 のタイミング信号およびロジック・インバータ97
2からの出力信号の双方が "1" であるときには、AND ゲ
ート971の出力信号が "1" になる。ctr5 が "0" にな
るときには、ロジック・インバータ962および972からの
出力信号が "1" になる。ここでの ctr5 信号は、ラッ
チ105でラッチされているときに、カウンタ102および10
3からなるカウンタの(0番目から数えて)5番目 のカウ
ント・ビットの出力信号である。
Address number 5 in 16 8-bit bytes sequentially and cyclically read from PROM 9 is:
The data is latched by the 8-bit latch 96 at the timing of the latch instruction. Then, at the timing of another latch instruction eight bits later, address 7 in the 16 8-bit bytes sequentially and cyclically read from PROM 9 is latched by 8-bit latch 97. The latch instructions for latches 96 and 97 are the outputs from AND gates 961 and 971, respectively. 32 when both bit-serial word of 2 -8 output signal from the timing signals and logic inverter 962 is "1", the output signal of the AND gate 961 becomes "1". 32-bit timing signals and logic inverter 97 2 0 serial word
When both the output signals from 2 are "1", the output signal of the AND gate 971 becomes "1". When ctr5 goes to "0", the output signal from logic inverters 962 and 972 goes to "1". The ctr5 signal here is output to the counters 102 and 10 when latched by the latch 105.
This is the output signal of the fifth count bit (counting from 0) of the counter consisting of three.

【0031】ラッチ90には48ビットが一時的に記憶され
ているものとする。ラッチ90の出力信号におけるビット
0-4は、その read0 アドレス read0_adr として RAM 6
(図2では示されない)に加えられる。ラッチ90の出力
信号におけるビット5-9は、その read1 アドレス read1
_adr として RAM 6に加えられる。そして、ラッチ90の
出力信号におけるビット10-14は、その write アドレス
write_adr として RAM 6に加えられる。ビット15は WR0
フラグであって、"1"のタイミングにおいて、RAM 6か
ら読みだしたread0データを直接RAM 6に再び書き込む動
作を行なう。ビット16-18は図9に示されるマルチプレク
サ45に対する3ビットのコントロール信号である。同様
に、ビット19-21はマルチプレクサ46に対するコントロ
ール信号である。ビット22-24はマルチプレクサ47に対
するコントロール信号である。ビット25-28は、それぞ
れロード・フラグ FA,OA1,OA2 および NP である。ビッ
ト29は XPフラグである。ビット30はEZ フラグであ
る。ビット31は使用されない。ラッチ96からラッチ90に
ラッチされているビット32-39は、命令 CC0 として COR
DIC プロセッサ40に渡される。ラッチ97からラッチ90に
ラッチされているビット40-47は、命令 CC1 として COR
DIC プロセッサ40に渡される。
It is assumed that 48 bits are temporarily stored in the latch 90. Bits in output signal of latch 90
0-4 is RAM 6 as its read0 address read0_adr
(Not shown in FIG. 2). Bits 5-9 in the output signal of latch 90 are read1 address read1
Added to RAM 6 as _adr. Bits 10-14 in the output signal of latch 90 are the write address
Added to RAM 6 as write_adr. Bit 15 is WR0
This is a flag, and at the timing of "1", an operation of directly writing the read0 data read from the RAM 6 again to the RAM 6 is performed. Bits 16-18 are a 3-bit control signal for the multiplexer 45 shown in FIG. Similarly, bits 19-21 are control signals for multiplexer 46. Bits 22-24 are control signals for multiplexer 47. Bits 25-28 are the load flags FA, OA1, OA2 and NP, respectively. Bit 29 is the XP flag. Bit 30 is the EZ flag. Bit 31 is not used. Bits 32-39 latched from latch 96 to latch 90 are correlated as instruction CC0.
It is passed to the DIC processor 40. Bits 40-47 latched from latch 97 to latch 90 are correlated as instruction CC1.
It is passed to the DIC processor 40.

【0032】PROM 9 から逐次かつサイクリックに読み
取られる16個の8ビット・バイトの中のアドレス4番、ア
ドレス6番、アドレス12番およびアドレス14番のもの
は、並列入力/直列出力レジスタ95に対して並列にロー
ドされる。ここでのレジスタ95は、乗算-加算プロセッ
サ30に加えられるべき coef 信号に対する8ビットの一
時記憶を有している。PROM 9 から逐次かつサイクリッ
クに読み取られる16個の8ビット・バイトの中のアドレ
ス4番およびアドレス12番のデータを PISO レジスタ95
にロードするコマンドを出力するために、ビット・シリ
アルの 2-12 のタイミングでOR ゲート951から "1" が
出力される。これにより、coef 信号の先頭の8ビット部
分がマルチプレクサ46に対して利用可能(図9を参照)
になる。PROM 9 から逐次かつサイクリックに読み取ら
れる16個の8ビット・バイト中のアドレス6番およびアド
レス14番のデータを PISO レジスタ95にロードするコマ
ンドを出力ために、ビット・シリアルの 2-4 のタイミ
ングでOR ゲート951から "1" が出力される。これによ
り、coef 信号の後半の8ビット部分がマルチプレクサ46
に対して利用可能になる。
The address number 4, address number 6, address number 12 and address number 14 of the 16 8-bit bytes sequentially and cyclically read from the PROM 9 are stored in the parallel input / serial output register 95. Loaded in parallel. The register 95 here has 8-bit temporary storage for the coef signal to be applied to the multiply-add processor 30. The data at addresses 4 and 12 in the 16 8-bit bytes read sequentially and cyclically from PROM 9 is written to PISO register 95.
The OR gate 951 outputs "1" at bit serial 2-12 timing in order to output a command to load the data. This allows the first eight bits of the coef signal to be available to multiplexer 46 (see FIG. 9).
become. To output a command to load the data for sequential and sixth address in the 16 8-bit bytes to be read cyclically and the address number 14 from PROM 9 in PISO register 95, bit-serial 2 -4 timing Outputs "1" from the OR gate 951. As a result, the latter eight bits of the coef signal are
Will be available to

【0033】PROM 9 から逐次かつサイクリックに読み
取られる16個の8ビット・バイト中のアドレス13番およ
びアドレス15番のデータは、並列入力/直列出力レジス
タ98に対して並列にロードされる。このロード操作は、
OR ゲート982の出力信号と同時に "1" となる ctr5 信
号に応答し、 "1" を出すAND ゲート981に応答してな
されるものである。ビット・シリアルの 20 のタイミン
グ またはビット・シリアルの 2-8 のタイミング のい
ずれかが"1" になるのに応じて、OR ゲート982の出力
信号が "1" になる。並列入力/直列出力レジスタ98の
直列出力ポートからのビット・シリアルの信号は、16ビ
ットのクロックディレイ・ライン983の入力ポートに加
えられるが、その出力ポートは PISO レジスタ98の直列
入力ポートに戻るように接続されて、循環的なシリアル
・メモリ・ループ984を形成している。この循環的なシ
リアル・メモリ・ループ984により、一時的に記憶され
ている PROM 9 からのアドレス13番およびアドレス15番
の8ビット・バイトが、並列入力/直列出力レジスタ98か
ら直接読み取られるデータと同時に、並列に得られる。
PROM 9 からのアドレス13番およびアドレス15番の8ビッ
ト・バイトの2つの16ビットペアが、並列入力/直列出力
レジスタ98からシフタ回路985に入力される。このシフ
タ回路985は、それらの16ビットをより上位にある16ビ
ットにシフトし、それらのビットに前に来る16個のビッ
トに "0" を満たして、これによりノーマライザ39で用
いられる L 定数を発生するものである。これと同時
に、PROM9 からの13番目および15番目の8ビット・バイ
トの各連続的なペアは、ディレイ・ライン983からシフ
タ回路986に向かう。このシフタ回路986は、それらの16
ビットをより上位にある16ビットにシフトし、それらの
ビットの前に来るビットに16個の "0" を満たして、こ
れによりノーマライザ39で用いられる M 定数を発生す
るものである。従って、L は現在の CORDIC 命令におけ
る定数値であり、また、M はループ984を周回して循
環、繰り返される CORDIC 命令における定数値である。
(L および M なる定数値をノーマライザ39でどのよう
に用いるかについては、図9を参照して、後に更に明細
書内で詳述される。)
The data at address 13 and address 15 in the 16 8-bit bytes sequentially and cyclically read from the PROM 9 are loaded in parallel to the parallel input / serial output register 98. This load operation
This is performed in response to the ctr5 signal which becomes "1" simultaneously with the output signal of the OR gate 982, and in response to the AND gate 981 which outputs "1". Any timing bit-serial 2 0 timing or bit-serial 2 -8 in response to become "1", the output signal of the OR gate 982 becomes "1". The bit serial signal from the serial output port of the parallel input / serial output register 98 is applied to the input port of the 16-bit clock delay line 983, but its output port returns to the serial input port of the PISO register 98. To form a circular serial memory loop 984. This circular serial memory loop 984 allows the temporarily stored 8-bit bytes at addresses 13 and 15 from PROM 9 to be read from data read directly from parallel input / serial output register 98. At the same time, they are obtained in parallel.
Two 16-bit pairs of 8-bit bytes at address 13 and address 15 from the PROM 9 are input to the shifter circuit 985 from the parallel input / serial output register 98. This shifter circuit 985 shifts those 16 bits to the higher 16 bits and fills the preceding 16 bits with "0", thereby reducing the L constant used by the normalizer 39. What happens. At the same time, each successive pair of thirteenth and fifteenth 8-bit bytes from PROM 9 goes from delay line 983 to shifter circuit 986. This shifter circuit 986 has 16
It shifts the bits to the higher 16 bits and fills the bits preceding those bits with 16 "0" s, thereby generating the M constant used by the normalizer 39. Thus, L is the constant value in the current CORDIC instruction, and M is the constant value in the CORDIC instruction that circulates and loops around loop 984.
(How to use the constant values L and M in the normalizer 39 will be described in detail later with reference to FIG. 9.)

【0034】図5で更に詳細に示されているものは、RAM
コントロール回路35と、RAM 6、直列入力/並列出力レ
ジスタ32、および、並列入力/直列出力レジスタ33,34に
対するその相互接続である。レジスタ32,33および34に
対する乗算-加算プロセッサ30の接続も示されている。R
AM 6 の書き込み入力ポートに対する SIPO レジスタ32
の接続は、乗算-加算プロセッサ30の命令における WR0
フラグが "0" であることに応答して、マルチプレクサ3
51を介して選択的になされることが示されている。該 W
R0 フラグが "0" である時に、マルチプレクサ351は R
AM 6 に対してその書き込み入力として2ビット前に読み
取られ、8ビット幅の並列ビット・ラッチ352に先に一時
的に記憶された read0 出力を選択する。
What is shown in more detail in FIG.
Control circuit 35 and its interconnection to RAM 6, serial input / parallel output register 32, and parallel input / serial output registers 33,34. The connection of the multiply-add processor 30 to the registers 32, 33 and 34 is also shown. R
SIPO register 32 for write input port of AM 6
Is connected to WR0 in the instruction of the multiplication-addition processor 30.
Multiplexer 3 in response to the flag being "0"
It is shown to be done selectively via 51. Said W
When the R0 flag is "0", the multiplexer 351 outputs R
Selects the read0 output that was read two bits ago as its write input to AM 6 and previously stored temporarily in an 8-bit wide parallel bit latch 352.

【0035】図6の RAM 6 に対するタイミング図におい
て示されているように、RAM の動作の各サイクルにおい
て、カウンタ102の初段の連続的な4カウントのそれぞれ
の間に、RAM 6 に対する READ0,READ1 および WRITE の
アクセスが逐次実行される。READ0,READ1 および WRITE
のアクセスはカウンタ102の4カウント・サイクルにお
ける第1のカウントによって先行され、その時、該 RAM
6はアクセスされない。図2のカウンタ102の初段からの
オーバフローの指示に応答して(図2の)カウンタ103か
ら出された信号は、クロックディレイ・ライン353にお
いて、2ビット,4ビット,6ビット,および8ビットの時間
だけディレイして、それぞれロジック・インバータ354
に対する入力信号、PISO レジスタ33およびラッチ352に
対するロード命令、SIPO レジスタ32および PISO レジ
スタ34に対するロード命令、および、WRITE アクセスの
間に RAM 6 に加えられる write_enable 信号を発生さ
せる。READ0,READ1 およびWRITE アクセスの各々の間
に、chip_enable 信号が ANDゲート354から RAM 6 に加
えられる。2入力の AND ゲート355は、ロジック・イン
バータ354からの出力信号が "1" になるのと同時に、
その入力信号が "1"になるインバータ入力の一つとして
加えられる ctr0 信号に応答し、ctr3 信号が "0" に
なった後で2ビット間 "1"の持続時間を有する。
As shown in the timing diagram for RAM 6 in FIG. 6, in each cycle of the operation of the RAM, between each of the first four consecutive counts of the counter 102, READ0, READ1, and WRITE access is executed sequentially. READ0, READ1 and WRITE
Access is preceded by the first count in four count cycles of counter 102, at which time the RAM
6 is not accessed. The signal output from the counter 103 (in FIG. 2) in response to the overflow instruction from the first stage of the counter 102 in FIG. 2 is a 2-bit, 4-bit, 6-bit, and 8-bit signal on the clock delay line 353. Delayed by time, each logic inverter 354
, A load instruction to PISO register 33 and latch 352, a load instruction to SIPO register 32 and PISO register 34, and a write_enable signal applied to RAM 6 during a WRITE access. A chip_enable signal is applied to RAM 6 from AND gate 354 during each of the READ0, READ1 and WRITE accesses. The two-input AND gate 355 outputs a "1" signal at the same time as the output signal from the logic inverter 354.
In response to the ctr0 signal being applied as one of the inverter inputs whose input signal goes to "1", it has a duration of "1" for two bits after the ctr3 signal goes to "0".

【0036】マルチプレクサ356はカウンタ102からの c
tr2 信号によりコントロールされるが、この ctr2 信号
はクロックディレイ・ライン357において2ビット分だけ
ディレイされている。2ビット後、カウンタ102からの c
tr2 信号は "1"になり、マルチプレクサ356はラッチ90
からの5ビットのwrite_adr 信号を選択して、カウンタ
103から取られた ctr3 および ctr4 出力とともに RAM
6 に入力される。マルチプレクサ356は、クロックディ
レイ・ライン357において2ビット分だけディレイされて
いる ctr2 信号に応答して "0" となり、マルチプレク
サ358からの5ビット幅の出力信号を選択して、カウンタ
103からの ctr3 および ctr4 出力とともに、7ビットの
(読み取り)アドレスとして RAM6 に入力される。マル
チプレクサ358は、"1" であるカウンタ102からの ctr1
信号に応答して、ラッチ90からの5ビットの read0_adr
信号をその出力ポートに選択する。マルチプレクサ358
は、 "0" であるカウンタ102からの ctr1 信号に応答
して、ラッチ90からの5ビットの read1_adr 信号をその
出力ポートに対して選択する。
The multiplexer 356 outputs c from the counter 102.
Controlled by the tr2 signal, the ctr2 signal is delayed by two bits on clock delay line 357. Two bits later, c from counter 102
The tr2 signal becomes "1", and the multiplexer 356 outputs the latch 90
Select the 5-bit write_adr signal from the
RAM with ctr3 and ctr4 outputs taken from 103
Entered in 6. The multiplexer 356 becomes “0” in response to the ctr2 signal delayed by 2 bits on the clock delay line 357, selects the 5-bit width output signal from the multiplexer 358, and
Along with the ctr3 and ctr4 outputs from 103, they are input to RAM6 as a 7-bit (read) address. The multiplexer 358 outputs ctr1 from the counter 102 which is "1".
In response to the signal, the 5-bit read0_adr from latch 90
Select a signal for its output port. Multiplexer 358
Selects the 5-bit read1_adr signal from latch 90 for its output port in response to the ctr1 signal from counter 102 being "0".

【0037】図7に、6チャンネルの decimation フィル
タ20をより詳細に示す。シグマ・デルタ変調器21(図
1)からの出力サンプル ds-i1 およびシグマ・デルタ変
調器24(図1)からの出力サンプル ds-v1 は、decimat
ion フィルタ・チャンネル201によって、時分割でマル
チプレクスされ、フィルタ処理される。この decimatio
n フィルタ・チャンネル201に含まれているマルチプレ
クサ2010 は、(図2の)2段カウンタ102からの上位ビッ
ト出力をより遅く変化させるカウント出力 ctr1に応答
して、シグマ・デルタ変調器21からの出力サンプル ds
-i1 とシグマ・デルタ変調器24からの出力サンプル ds-
v1との選択をする。
FIG. 7 shows the 6-channel decimation filter 20 in more detail. Sigma-delta modulator 21 (Figure
The output sample ds-i 1 from 1) and the output sample ds-v 1 from the sigma-delta modulator 24 (FIG. 1) are decimat
The time is multiplexed and filtered by the ion filter channel 201 in a time division manner. This decimatio
n Multiplexer 2010 included in filter channel 201 provides an output from sigma-delta modulator 21 in response to a count output ctr1 that changes the upper bit output from two-stage counter 102 (of FIG. 2) more slowly. Sample ds
-i 1 and output sample from sigma-delta modulator 24 ds-
v Choose between 1 .

【0038】選択された信号は、乗算器2011に対するビ
ット・シリアル乗算信号としてマルチプレクサ2010から
供給される。乗算器2011のもう1つの入力は、(図2の)
9段カウンタ103からビット・パラレルの被乗数信号 の
鋸波 である。乗算器2011は、鋸波信号のそれぞれのビ
ットをそれぞれのANDゲートの第1の入力信号として、ま
た、マルチプレクサ2010の出力信号をそれぞれのANDゲ
ートの第2の入力信号として接続される複数個の AND ゲ
ートから構成される。2段カウンタ102の下位ビットの出
力 ctr0 が "1" であるときには、この鋸波 信号は9段
カウンタ103からの正のアップ・カウンタに相当する。
これに対して、2段カウンタ102からのカウント出力 ctr
0 が "0" であるときには、この 鋸波信号は9段カウン
タ103からの負のダウン・カウンタに相当する。これに
よって、1つの入力信号サンプルを時分割処理して、三
角フィルタの上昇モードと下降モードの2つの累積演算
を容易にする。
The selected signal is provided from multiplexer 2010 as a bit-serial multiplication signal to multiplier 2011. Another input of the multiplier 2011 is (of Figure 2)
This is a sawtooth wave of the bit-parallel multiplicand signal from the 9-stage counter 103. The multiplier 2011 includes a plurality of bits connected to each bit of the sawtooth signal as a first input signal of each AND gate and an output signal of the multiplexer 2010 as a second input signal of each AND gate. Consists of an AND gate. When the lower bit output ctr0 of the two-stage counter 102 is "1", this sawtooth signal corresponds to a positive up counter from the nine-stage counter 103.
On the other hand, the count output from the two-stage counter 102 ctr
When 0 is "0", this sawtooth signal corresponds to a negative down counter from the 9-stage counter 103. As a result, one input signal sample is time-division-processed, and two accumulation operations of the rising mode and the falling mode of the triangular filter are facilitated.

【0039】下降フィルタ定数での累積演算 される d
s-i1の、上昇フィルタ定数での累積演算 される ds-i
1 の、そして、下降フィルタ定数での累積演算される d
s-v1 の、上昇フィルタ定数での累積演算される ds-v1
の並列ビット出力は、時分割切り替え法により、乗算器
2011から並列ビット加算器2012に対して、その加数とし
て加えられる。デジタル加算器2012からの和出力は、カ
スケードのワード・ラッチ2013,2014,2015および2016に
対して入力される。これらのワード・ラッチ2013,2014,
2015および2016は、(図2の)カウンタ102のカウンタ・
クロックで、それらの内容を順次、前方に送出する。デ
ジタル加算器2012を含む時分割切り替え法による累積の
間に、ラッチ2016からの出力信号が、マルチプレクサ20
17および2018により、加算器2012に対するその 被加算
数 入力信号として選択される。
The cumulative operation d using the descending filter constant is performed.
ds-i, which is the cumulative operation of si 1 with the ascending filter constant
Accumulated d with 1 and falling filter constant
the sv 1, ds-v 1 to be accumulated operation at elevated filter constant
The parallel bit output of the
From 2011, it is added to the parallel bit adder 2012 as its addend. The sum output from digital adder 2012 is input to cascade word latches 2013, 2014, 2015 and 2016. These word latches 2013, 2014,
2015 and 2016 are counters of counter 102 (of Figure 2)
The contents are sequentially transmitted forward by the clock. During accumulation by the time division switching method including digital adder 2012, the output signal from latch 2016
By 17 and 2018, it is selected as its augend input signal to adder 2012.

【0040】9ビット・カウンタのオーバフローを指示
する cout11 の "1" が、並列入力/直列出力段2019へ
のロード命令として用いられて、ラッチ2014の内容が、
即ち、完全な三角フィルタ係数からなる ds-v1 サンプ
ルのフィルタリング出力が、並列入力/直列出力段2019
に取り込まれる。同様に、9ビット・カウンタのオーバ
フローを指示する cout11 が "1"になることは並列入力
/直列出力段20110に対する別のロード命令としても用い
られて、ラッチ2016の内容が、即ち、完全な三角フィル
タ係数からなる ds-i1 サンプルのコンボリューション
が、該並列入力/直列出力段20110に取り込まれる。
The "1" of cout11 indicating the overflow of the 9-bit counter is used as a load instruction to the parallel input / serial output stage 2019, and the contents of the latch 2014 are
That is, the filtering output of ds-v 1 sample consisting of the complete triangular filter coefficient is output to the parallel input / serial output stage 2019.
It is taken in. Similarly, when cout11 indicating the overflow of the 9-bit counter becomes "1", the parallel input
Also used as another load instruction for the serial output stage 20110, the contents of the latch 2016, i.e., a convolution of ds-i one sample consisting of the complete triangular filter coefficients, is applied to the parallel input / serial output stage 20110. It is captured.

【0041】並列入力/直列出力段2001では、その並列
入力ポートより、(図2の)カウンタ103からのオーバフ
ローの指示 cout11 が "1" 、つまり、最大のカウント
に達したことを示す"1"のタイミングで、0101なる並列
ビット信号がロードされる。PISO レジスタ2001の直列
ビットの入力ポートには "0" 入力が加えられる。オー
バフローの指示 cout11 が "0" に戻った後では、この
オーバフローの指示 cout11 が次に "1" になるまで、P
ISOレジスタ2001は "0" で追従される1010ビット・シー
ケンスを出力する。PISOレジスタ2001からの出力信号は
マルチプレクサ2017のコントロールをするものである。
PISO レジスタ2001からの出力信号は、1ビット・クロッ
ク・ディレイ2002において1クロックだけディレイされ
て、マルチプレクサ2017へのコントロール信号を発生す
る。
In the parallel input / serial output stage 2001, the overflow instruction cout11 from the counter 103 (FIG. 2) is "1" from its parallel input port, that is, "1" indicating that the maximum count has been reached. At this timing, the parallel bit signal 0101 is loaded. A "0" input is applied to the serial bit input port of the PISO register 2001. After the overflow instruction cout11 returns to "0", P is reset until this overflow instruction cout11 next becomes "1".
ISO register 2001 outputs a 1010 bit sequence followed by "0". The output signal from the PISO register 2001 controls the multiplexer 2017.
The output signal from PISO register 2001 is delayed by one clock in one bit clock delay 2002 to generate a control signal to multiplexer 2017.

【0042】オーバフローの指示 cout11 が "1" であ
ることに続く第1のクロック・サイクルでは、ラッチ201
5に記憶されている上昇フィルタ係数で 累積演算されて
きたds-i1 の中間結果が、マルチプレクサ2017により加
算器2012の 被加算数 入力に対して選択されて、下降フ
ィルタ係数で累積演算される ds-i1 に予め加算され
る。オーバフローの指示 cout11 が"1" であることに続
く第2のクロック・サイクルでは、マルチプレクサ2018
により、算術的なゼロが加算器2012の入力ポートに対し
て選択されて、上昇フィルタ係数で ds-i1の累積演算が
開始される。オーバフローの指示 cout11 が "1"である
ことに続く第3のクロック・サイクルでは、ラッチ2015
に記憶されている上昇フィルタ係数で 累積演算された
ds-v1の中間的な結果が、マルチプレクサ2017により加
算器2012の 被加算数 入力に対して選択されて、下降フ
ィルタ係数で 累積演算される ds-v1 に予め加算され
る。オーバフローの指示 cout11 が "1" であることに
続く第4のクロック・サイクルでは、マルチプレクサ201
8により、算術的なゼロが加算器2012の入力ポートに対
して再び選択されて、上昇フィルタ係数でds-v1 の累積
演算が開始される。
In the first clock cycle following the overflow indication cout11 being "1", the latch 201
The intermediate result of ds-i1 that has been cumulatively calculated with the rising filter coefficient stored in 5 is selected by the multiplexer 2017 for the augend input of the adder 2012, and is cumulatively calculated with the falling filter coefficient. It is added to -i1 in advance. In the second clock cycle following the overflow indication cout11 being "1", the multiplexer 2018
As a result, an arithmetic zero is selected for the input port of the adder 2012, and the accumulation operation of ds-i1 is started with the ascending filter coefficient. In the third clock cycle following the overflow indication cout11 being "1", the latch 2015
Cumulatively calculated with the ascending filter coefficient stored in
The intermediate result of ds-v1 is selected by the multiplexer 2017 with respect to the augend input of the adder 2012, and is added in advance to ds-v1 that is cumulatively calculated with the falling filter coefficient. In the fourth clock cycle following the overflow indication cout11 being "1", the multiplexer 201
According to 8, an arithmetic zero is again selected for the input port of the adder 2012 and the accumulation operation of ds-v1 with the ascending filter coefficient is started.

【0043】シグマ・デルタ変調器22からの出力サンプ
ル ds-i2 およびシグマ・デルタ変調器25からの出力サ
ンプル ds-v2 は、decimation フィルタ202により時分
割切り替え法によりフィルタ処理される。decimation
フィルタ202における要素2020-2029および20210は、dec
imation フィルタ201における要素2010-2019および2011
0のそれぞれに対応している。シグマ・デルタ変調器23
からの出力サンプル ds-i3 およびシグマ・デルタ変調
器26からの出力サンプル ds-v3 は、decimationフィル
タ203により時分割多重化に基づいてフィルタ処理され
る。decimation フィルタ203における要素2030-2039お
よび20310は、decimationフィルタ201における要素2010
-2019および20110のそれぞれに対応している。マルチプ
レクサ2027および2037は、マルチプレクサ2017と同様
に、PISO レジスタ2001からの出力信号によってコント
ロールされる。また、マルチプレクサ2028および2038
は、マルチプレクサ2018と同様に、クロックされるラッ
チ2002からの出力信号によってコントロールされる。並
列入力/直列出力段2039,2029および2019は、ビット・シ
リアル・メモリのループ204に接続されている。並列入
力/直列出力段20310,20210および20110は、ビット・シ
リアル・メモリの別のループ205に接続されている。マ
ルチプレクサ206は、PROM 9 から与えられるような、乗
算-加算プロセッサ30の命令におけるv-i-select ビット
に応答して、回路207に対する読み取りのためにビット
・シリアル・メモリ・ループ204および205の一方からの
16ビットの塊を選択する。ここでの回路207は、16個の
"0" をこれらの 塊に先行させて、32ビットのデータ・
ワードを形成し、ビット・シリアルの加算器208のその
加数入力信号とする。加算器208はその被加算数入力と
してビット・シリアルの 2の0 乗を加算し、その加数入
力信号として受け入れた1の補数データを符号が付され
た2の補数表現の32ビットのデータ・ワードに変換す
る。
The output sample ds-i 2 from the sigma delta modulator 22 and the output sample ds-v 2 from the sigma delta modulator 25 are filtered by the decimal filter 202 by a time division switching method. decimation
Elements 2020-2029 and 20210 in filter 202 are dec
Elements 2010-2019 and 2011 in imation filter 201
0 corresponds to each. Sigma-delta modulator 23
The output sample ds-i 3 from the sigma-delta modulator 26 and the output sample ds-v 3 from the sigma-delta modulator 26 are filtered by the decision filter 203 based on time division multiplexing. Elements 2030-2039 and 20310 in decimation filter 203 are the same as elements 2010 in decimation filter 201.
-Supports 2019 and 20110 respectively. Multiplexers 2027 and 2037 are controlled by an output signal from PISO register 2001, similar to multiplexer 2017. Also, multiplexers 2028 and 2038
Is controlled by an output signal from a latch 2002 that is clocked, similar to the multiplexer 2018. The parallel input / serial output stages 2039, 2029 and 2019 are connected to a bit serial memory loop 204. The parallel input / serial output stages 20310, 20210 and 20110 are connected to another loop 205 of bit serial memory. Multiplexer 206 responds to the vi-select bit in the instruction of multiply-add processor 30, such as provided by PROM 9, for reading to circuit 207 from one of bit serial memory loops 204 and 205.
Select a 16-bit chunk. The circuit 207 here has 16
A "0" precedes these chunks to form a 32-bit data
A word is formed and taken as its addend input signal of the bit-serial adder 208. The adder 208 adds the bit serial 2 to the power of 0 as its augend input, and adds the received one's complement data as its addend input signal to the signed 32-bit complement 32-bit data. Convert to word.

【0044】図8には、乗算-加算プロセッサ30がより詳
細に示されている。select_R1 信号、enable_R1 信号お
よび XP 信号は、それぞれ”ロジック信号”と呼ばれる
ものである。”ロジック信号”は通常はコントロールの
目的で用いられるものであり、電力メータIC5 の場合に
は32ビット・サイクルであり、ビット・シリアル・ワー
ド(BSL)の間は一定である。定数 2-15の意味は、ビット
16だけを"1" としてハイにセットして、その他のビット
は"0" であるビット・シリアル・ワードを示す。
FIG. 8 shows the multiply-add processor 30 in more detail. The select_R 1 signal, enable_R 1 signal, and XP signal are each called “logic signals”. The "logic signal" is normally used for control purposes, and is 32 bit cycles in the case of power meter IC5 and is constant during the bit serial word (BSL). The meaning of the constant 2 -15 is a bit
Only 16 is set high as a "1" and the other bits indicate a bit serial word with a "0".

【0045】ビット・シリアルの乗算器301の2つの入力
は、被乗算数として、ビット・シリアルの coef_in
と、ビット・シリアルの乗数信号として2入力マルチプ
レクサ302の出力である。この2入力マルチプレクサ302
では、その入力ポートの一方においてビット・シリアル
の data_in 信号と、レフト・シフタ303において 216
倍された data_in 信号の2入力である。該レフト・シフ
タ303においては、16個の2進位置をより上位の方にシフ
トし、下位ビットにゼロを満たす。ビット・シリアルの
乗算器301のビット・シリアルの積出力は、ビット・シ
リアルの加算器305に対する加数入力信号として、AND
ゲート304を介して加えられる。ビット・シリアルの減
算器306からのビット・シリアルの差出力信号は、ビッ
ト・シリアル加算器305に対しビット・シリアルの被加
算数入力信号として、AND ゲート307を介して加えられ
る。NANDゲート308で出力される "1" の意味するところ
は、倍精度演算においてロジック信号 XPがハイである
と同時にビット16がハイのときを除いて、AND ゲート30
4の出力ポートにおける信号が乗算器301からのビット・
シリアルの積と等しく、また、AND ゲート307の出力ポ
ートにおける信号が減算器306からのビット・シリアル
の差出力信号に等しい。ここでのロジック信号 XP は、
乗算-加算プロセッサ30に対するプログラム命令の一部
である。マルチプレクサ309に加えられる select_R1
号が "1" であって、AND ゲート310の出力が選択される
ときを除いて、2入力マルチプレクサ309からのビット・
シリアルの acc(umulator)_in 信号が、減算器306に対
して被減数として加えられる。
The two inputs of the bit serial multiplier 301 are the bit serial coef_in
And the output of the two-input multiplexer 302 as a bit-serial multiplier signal. This two-input multiplexer 302
In the data_in signal bit-serial at one of its input ports, the left shifter 303 2 16
These are the two inputs of the doubled data_in signal. In the left shifter 303, the 16 binary positions are shifted to higher positions, and the lower bits are filled with zeros. The bit-serial product output of the bit-serial multiplier 301 is ANDed as an addend input signal to the bit-serial adder 305.
Applied through gate 304. The bit serial difference output signal from the bit serial subtractor 306 is applied to the bit serial adder 305 as a bit serial augend input signal via an AND gate 307. The meaning of "1" output from the NAND gate 308 means that in the double precision operation, except when the logic signal XP is high and at the same time the bit 16 is high, the AND gate 30
The signal at the output port 4 is the bit
The signal at the output port of AND gate 307 is equal to the serial product and the bit serial difference output signal from subtractor 306. The logic signal XP here is
It is a part of a program instruction for the multiplication-addition processor 30. The select_R 1 signal applied to multiplexer 309 is a "1", and the bit output from two-input multiplexer 309 is selected except when the output of AND gate 310 is selected.
The serial acc (umulator) _in signal is added to the subtractor 306 as the minuend.

【0046】加算器305からのビット・シリアルの和出
力R0 は、ビット・シリアルの信号 R 1 = ΔR0 を発生さ
せる1ワード長のディレイ・ライン311に対する入力信号
である。ディレイ・ライン311からのビット・シリアル
の和出力信号 R1 は、AND ゲート310に対する2個の入力
信号の一方であり、その他方の入力は enable_R1 のロ
ジック信号である。ディレイ・ライン311からのビット
・シリアルの和出力信号 R1 は、ビット・シリアルの信
号 R2 = ΔR1 を発生させる1ワード長のディレイ・ライ
ン312に対する入力信号である。ディレイ・ライン312か
らのビット・シリアルの和出力信号 R2 は、ビット・シ
リアルの信号 R3 = ΔR2 を発生させる1ワード長のディ
レイ・ライン311に対する入力信号である。
Addition of bit serial from adder 305
The force R0 is the bit serial signal R 1 = ΔR0
Input signal to the 1-word long delay line 311
It is. Bit serial from delay line 311
Sum output signal R1 Is the two inputs to AND gate 310
One of the signals, the other input is enable_R1 No
This is a magic signal. Bits from delay line 311
・ Serial sum output signal R1 Is the bit serial signal
No.RTwo = ΔR1 1-word delay line
Input signal to the input terminal 312. Delay line 312
Bit serial output signal RTwo Is the bit
Real signal RThree = ΔRTwo One word long
This is an input signal to the ray line 311.

【0047】加算器305からのビット・シリアルの和出
力信号 R0 は AND ゲート314の一方の入力ポートに加え
られ、その他方の入力ポートは XP ロジック信号であ
る。AND ゲート314の出力ポートから供給されるサンプ
ル・ホールド回路315は、その入力信号のビット16に応
じてロジック信号を出力する。ここで、その最下位ビッ
トはビット0である(LSB first)。AND ゲート314の出力
ポートからのロジック信号は、1ビット・シリアル・ワ
ードだけディレイされて、ビット・シリアルの減算器30
6の減数入力ポートに加えられる。
The bit serial sum output signal R 0 from adder 305 is applied to one input port of AND gate 314, the other input port being an XP logic signal. The sample and hold circuit 315 supplied from the output port of the AND gate 314 outputs a logic signal according to the bit 16 of the input signal. Here, the least significant bit is bit 0 (LSB first). The logic signal from the output port of the AND gate 314 is delayed by one bit serial word to produce a bit serial subtractor 30.
Added to the 6 decrement input ports.

【0048】通常(入力ロジック信号の全てが "0" に
セットされている)の時には、乗算-加算プロセッサ30
は data_in 信号と coef_in 信号との乗算をして積を生
成してacc_in 信号に加算される。ビット・シリアルの
乗算器301は16個の係数 ビット・スライスから構成され
ており、乗算においては、係数項は上位16ビットだけが
用いられる。ビット・シリアルの乗算器からの出力は32
ビットのビット・シリアルのワードであり、これはワー
ド当り32ビットの data_in ワードとワード当り16ビッ
トの coef_in 信号(これらの信号の双方は、2の補数の
表現の符号付き数値である)との、47ビットの積の上位
32ビットに等しい。この積の下位15ビットは、ビット・
シリアル乗算器301の内部回路において捨てられる。
Normally (all of the input logic signals are set to "0"), the multiplication-addition processor 30
Is multiplied by the data_in signal and the coef_in signal to generate a product, which is added to the acc_in signal. The bit-serial multiplier 301 is composed of 16 coefficient bit slices, and in the multiplication, only the upper 16 bits are used for the coefficient term. The output from the bit serial multiplier is 32
A bit-serial word of bits, with a data_in word of 32 bits per word and a coef_in signal of 16 bits per word (both of these signals are signed numbers in 2's complement representation) Upper 47-bit product
Equals 32 bits. The lower 15 bits of this product are
Discarded in the internal circuit of serial multiplier 301.

【0049】倍精度モードにおいては、連続する2ワー
ド操作の第1ワードの間、プロセッサ30に対するプログ
ラム命令の一部として使用されるフラグ信号 XP がハイ
にセットされる。信号 data_in および信号 coef_in は
2ワード操作間、同じ値を入力する。信号 acc_in およ
び乗算器の出力は、2ワード長における最下位(第1ワー
ド)部位および最上位(第2ワード)部位に当るもので
ある。XP がハイであるときには、マルチプレクサ302に
よって選択された乗算器301に対するデータ入力である
data_in は、レフト・シフタ303によって16ビット分だ
け左側に予めシフトされて、下位ビットにゼロを満たす
ようにされている。従って、倍精度操作における第1ワ
ード操作の間においては、乗算器301の出力は、下位の1
5ビットを捨てる代わりに、47ビットの完全な積におけ
る上位の16ビットを捨てたことと同様である。しかしな
がら、上位16ビットは、信号 data_in の上位16ビット
の値にも本来関係するため、下位の16ビットだけが有効
である。これを要約すると、第1ワードの間の乗算器301
の出力は、下位の16ビットが有効で、上位16ビットは無
効である。
In the double precision mode, during the first word of a continuous two-word operation, the flag signal XP, which is used as part of a program instruction to the processor 30, is set high. The signals data_in and coef_in are
Enter the same value between two word operations. The signal acc_in and the output of the multiplier correspond to the lowest (first word) part and the highest (second word) part in a two-word length. When XP is high, it is the data input to the multiplier 301 selected by the multiplexer 302.
The data_in is pre-shifted to the left by 16 bits by the left shifter 303 so that the lower bits are filled with zero. Therefore, during the first word operation in the double precision operation, the output of the multiplier 301 is
Equivalent to discarding the upper 16 bits of a 47-bit full product instead of discarding 5 bits. However, since the upper 16 bits are inherently related to the value of the upper 16 bits of the signal data_in, only the lower 16 bits are valid. To summarize, the multiplier 301 during the first word
In the output, the lower 16 bits are valid and the upper 16 bits are invalid.

【0050】乗算器の出力が acc_in からの最下位のワ
ードに加えられると AND ゲート304および307が作動
し、XP および 2-15 ビットが同時にハイであることか
ら、NANDゲート308の出力信号が "0" であることに応
答して、加算器305の加算数入力および被加算数入力の
双方のビット16をマスクするようにする。従って、加算
器305の和出力のビット16は、下位16ビットの加算から
のキャリー・ビット(即ち、ワードの有効部分)に等し
くなる。このビットはサンプル・ホールド回路315によ
りサンプル・ホールドされてロジック信号 test_outを
生成するが、この信号はディレイ316において1 ワード
分ディレイされて、第2ワード期間において用いるのロ
ジック信号 acc_bak を発生する。
[0050] The output of the multiplier is when added to the least significant word AND gates 304 and 307 are actuated from Acc_in, since XP and 2 -15 bit is high at the same time, the output signal of the NAND gate 308 is " In response to "0", bit 16 of both the addend input and the augend input of adder 305 is masked. Thus, bit 16 of the sum output of adder 305 is equal to the carry bit from the addition of the lower 16 bits (ie, the valid portion of the word). This bit is sampled and held by the sample and hold circuit 315 to generate a logic signal test_out, which is delayed one word in a delay 316 to generate a logic signal acc_bak for use in the second word period.

【0051】倍精度における第2ワード期間は、ロジッ
ク信号 XPはゼロである。実際に、単純精度の操作と倍
精度における第2ワードの操作の間には明確な差は存在
しない。前述したように、先のワードからの data_in
および acc_in 入力信号は繰り返されるべきであり、ま
た、第2ワードにおける上位ワードの acc_in が適用さ
れるべきである。第2ワード操作における下位部分がキ
ャリーを生じるときには、倍精度における最上位部分の
操作の間、ロジック信号 acc_bak がハイになる。この
ロジック信号 acc_bak は acc_in から減算される。ハ
イのロジック信号は -1 なる2の補数値を有しているこ
とから、下位ワードからのキャリーによって上位ワード
が増分されることになる。"0" であるロジック信号はゼ
ロなる2の補数値を有している。このために、下位ワー
ドからのキャリーが存在しないときに、第2ワードは影
響を受けることがない。
In the second word period in double precision, the logic signal XP is zero. In fact, there is no clear difference between simple precision operations and second word operations in double precision. As mentioned earlier, data_in from the previous word
And the acc_in input signal should be repeated and the high word acc_in in the second word should be applied. When the lower part of the second word operation produces a carry, the logic signal acc_bak goes high during the operation of the upper part in double precision. This logic signal acc_bak is subtracted from acc_in. Since the high logic signal has a two's complement value of -1, the carry from the lower word will increment the upper word. A logic signal that is "0" has a two's complement value of zero. Thus, when there is no carry from the lower word, the second word is not affected.

【0052】倍精度操作の実質的な効果は、data_in 信
号と coef_in 信号との完全な47ビットの積が累積中に
保存されるということである。下位ワードの最下位ビッ
トおよび上位の16ビットが意味を持たないことから、ア
キュムレータ(累積手段)のダイナミック・レンジも47
ビットである。
The net effect of the double precision operation is that the full 47 bit product of the data_in and coef_in signals is preserved during accumulation. Since the least significant bit of the lower word and the upper 16 bits have no significance, the dynamic range of the accumulator is also 47
Is a bit.

【0053】図9には、他の回路に対する乗算-加算プロ
セッサ30の接続がより詳細に示されている。8入力のマ
ルチプレクサ45により、乗算-加算プロセッサ30に加え
られるdata_in 信号が選択される。ビット・シリアルの
data_in 信号は以下から選択することができる。 (000) PISO レジスタ33を介して RAM 6 から加えら
れる read_0 信号、 (001) PISO レジスタ34を介して RAM 6 から加えら
れる read_1 信号、 (010) 乗算-加算プロセッサ30からの出力信号、 (011) 減算器51からの read_1 信号と read_0 信号
との差信号, (100) decimation フィルタ20の出力信号、 (101) decimation フィルタ20の出力信号、 (110) レジスタ・バンク19(図1)内のレジスタ192か
ら導かれた周波数指示f、および (111) AND ゲート50からのゼロクロスの指示。
FIG. 9 shows the connection of the multiply-add processor 30 to other circuits in more detail. The eight input multiplexer 45 selects the data_in signal to be applied to the multiply-add processor 30. Bit serial
The data_in signal can be selected from the following. (000) read_0 signal applied from RAM 6 via PISO register 33, (001) read_1 signal applied from RAM 6 via PISO register 34, (010) output signal from multiply-add processor 30, (011) The difference signal between the read_1 signal and the read_0 signal from the subtractor 51, (100) the output signal of the decimation filter 20, (101) the output signal of the decimation filter 20, (110) the register 192 in the register bank 19 (FIG. 1) And a (111) AND gate 50 zero crossing indication.

【0054】他の8入力マルチプレクサ46により、乗算-
加算プロセッサ30に加えられる coef_in信号が選択され
る。ビット・シリアルの coef_in信号は以下から選択す
ることができる。 (000) PISO レジスタ33を介して RAM 6 から加えら
れる read_0 信号、 (001) PISO レジスタ34を介して RAM 6 から加えら
れる read_1 信号、 (010) 乗算-加算プロセッサ30からの出力信号、 (011) 減算器51からの read_1 信号と read_0 信号
との差信号, (100) 三角係数発生器37からの相対的に高周波の si
nc2 のフィルタ係数βnb 、 (101) 三角係数発生器37からの相対的に低周波の si
nc2 のフィルタ係数βwb 、 (110) PISO レジスタ95を介して RAM 9 から加えら
れる coef 信号、および (111) 加算器52から得られる、乗算-加算プロセッサ
30の出力信号とPISOレジスタ95を介して RAM 9 から供
給される coef 信号との加算値。
The multiplication is performed by another 8-input multiplexer 46.
The coef_in signal to be applied to summing processor 30 is selected. The bit serial coef_in signal can be selected from the following. (000) read_0 signal applied from RAM 6 via PISO register 33, (001) read_1 signal applied from RAM 6 via PISO register 34, (010) output signal from multiply-add processor 30, (011) The difference signal between the read_1 signal and the read_0 signal from the subtractor 51, the relatively high-frequency si from the (100) triangular coefficient generator 37
nc 2 filter coefficient βnb, (101) relatively low frequency si from triangular coefficient generator 37
nc 2 filter coefficient β wb, (110) coef signal applied from RAM 9 via PISO register 95, and (111) multiply-add processor obtained from adder 52
The sum of the output signal of 30 and the coef signal supplied from RAM 9 via the PISO register 95.

【0055】4入力のマルチプレクサ47により、乗算-加
算プロセッサ30に加えられる acc_in 信号が選択され
る。ビット・シリアルの acc_in 信号は以下から選択す
ることができる。 (00) PISO レジスタ33を介して RAM 6 から加えられ
る read_0 信号、 (01) PISO レジスタ34を介して RAM 6 から加えられ
る read_1 信号、 (10) 乗算-加算プロセッサ30からの出力信号、およ
び (11) 減算器53で定まるような、乗算-加算プロセッ
サ30の出力信号とPISOレジスタ33を介して RAM 6 から
加えられる read_0 信号との間の差。
A four-input multiplexer 47 selects the acc_in signal to be applied to the multiply-add processor 30. The bit serial acc_in signal can be selected from the following. (00) read_0 signal applied from RAM 6 via PISO register 33, (01) read_1 signal applied from RAM 6 via PISO register 34, (10) output signal from multiply-add processor 30, and (11) The difference between the output signal of the multiply-add processor 30 and the read_0 signal applied from the RAM 6 via the PISO register 33, as determined by the subtractor 53.

【0056】図16においては、乗算-加算プロセッサ30
と CORDIC プロセッサ40との間に位置するレジスタ・バ
ンク19の構成要素であるビット・シリアル・レジスタ19
1-196が示されている。これらのレジスタ191-196の各々
は32ビットのビット・シリアル・メモリであり、記憶さ
れるビットはサイクリックに利用可能であり、読み取り
・書き込みは1ビット毎である。
In FIG. 16, the multiplication-addition processor 30
Bit serial register 19, which is a component of the register bank 19 located between the
1-196 is shown. Each of these registers 191-196 is a 32-bit bit serial memory, where the stored bits are available cyclically and read / write is bit-by-bit.

【0057】ビット・シリアルのレジスタ191は、(図9
における)乗算-加算プロセッサ30からレジスタ191に書
き込まれ、周波数に対して累積されたロー・パス・フィ
ルタ操作の結果である fa が記憶される。図16において
認められるように、マルチプレクサ401の 100 入力が選
択されたときには、fa は、CORDICプロセッサ40に対す
る xin 入力信号である。そして、マルチプレクサ402の
100 入力が選択されたときには、fa は、CORDICプロセ
ッサ40に対する yin 入力信号である。
The bit serial register 191 is shown in FIG.
) Is written from the multiply-add processor 30 to the register 191 and stored as a result of the low pass filter operation accumulated over frequency. As can be seen in Figure 16, when the 100 input of the multiplexer 401 is selected, f a is the xin input signal for the CORDIC processor 40. And the multiplexer 402
When the 100 input is selected, f a is the yin input signal for the CORDIC processor 40.

【0058】ビット・シリアルのレジスタ192は、周波
数更新時に(図16における)CORDICプロセッサ40からレ
ジスタ192に書き込まれるような、正規化された信号の
周波数(8fin/fs)である f を記憶するために用いられ
る。このビット・シリアルのレジスタ192の内容は、
(図9における)マルチプレクサ45により、読み取りお
よび選択ができて、(これも図9における)乗算-加算プ
ロセッサ30に対する data_in信号の1つである。図16に
おいて認められるように、マルチプレクサ401の 101入
力が選択されたときには、f は、CORDIC プロセッサ40
に対する xin入力信号となる。そして、マルチプレクサ
402の 101 入力が選択されたときには、f は、CORDICプ
ロセッサ40に対する yin入力信号となる。
The bit-serial register 192 stores f, the normalized signal frequency (8f in / f s ), as written to the register 192 from the CORDIC processor 40 (in FIG. 16) during frequency updates. Used to The contents of this bit-serial register 192 are
Multiplexer 45 (in FIG. 9) allows reading and selection and is one of the data_in signals to multiply-add processor 30 (also in FIG. 9). As can be seen in FIG. 16, when the 101 input of multiplexer 401 is selected, f
Xin input signal to And a multiplexer
When the 101 input of 402 is selected, f becomes the yin input signal to the CORDIC processor 40.

【0059】ビット・シリアルのレジスタ193は、(図1
6において示されているように)乗算-加算プロセッサ30
からレジスタ193に書き込まれるような、乗算-加算プロ
セッサ30についてのロー・パス・フィルタ操作に対する
カーネルにおいて用いられる周期数である np を記憶す
るために用いられる。プロセッサ30の出力からレジスタ
193にロードされる np は、該プロセッサ30に対する現
在の命令において現れている NP フラグに応答するもの
である。図16において認められるように、マルチプレク
サ401の 111 入力が選択されたときには、np は、CORDI
C プロセッサ40に対する xin入力信号となる。そして、
マルチプレクサ402の 111 入力が選択されたときには、
np は、CORDIC プロセッサ40に対する yin入力信号とな
る。
The bit-serial register 193 is shown in FIG.
Multiplication-addition processor 30 (as shown in 6)
Is used to store n p , the number of periods used in the kernel for low pass filtering for multiply-add processor 30, as written to register 193 from. Register from output of processor 30
The n p loaded into 193 is responsive to the NP flag appearing in the current instruction to the processor 30. As can be seen in FIG. 16, when the 111 input of multiplexer 401 is selected, n p
It becomes an xin input signal to the C processor 40. And
When the 111 input of multiplexer 402 is selected,
np is the yin input signal to the CORDIC processor 40.

【0060】ビット・シリアル・レジスタ194は ns
記憶するために用いられる。この nsは f で除算された
np に等しいものであって、その演算は CORDIC プロセ
ッサ40によってなされる。そして、CORDIC プロセッサ4
0からレジスタ194への書き込みは、(図16において認め
られるように)操作開始または更新の間になされる。
(ときには、特に図面においては、"ns”は”ns”とし
て現れることがある。)(図11において)ビット・シリ
アル・レジスタ194の内容は三角フィルタ係数発生器TRI
NC37に加えられる。図16において認められるように、マ
ルチプレクサ401の 110 入力が選択されたときには、6
ビットシフタ1910において 2の6乗倍されたns は、CORD
IC プロセッサ40に対する xin 入力信号となる。そし
て、マルチプレクサ402の 110 入力が選択されたときに
は、6ビットシフタ1910において 26倍されたns は、COR
DIC プロセッサ40に対する yin入力信号となる。
[0060] Bit-serial register 194 is used to store the n s. This n s is divided by f
Equivalent to n p and the operation is performed by CORDIC processor 40. And CORDIC processor 4
Writing from 0 to register 194 is done during operation initiation or updating (as seen in FIG. 16).
(Sometimes, especially in the drawings, "n s" may appear as "ns".) The contents of (11 in) bit-serial register 194 is triangular filter coefficients generator TRI
Added to NC37. As can be seen in FIG. 16, when the 110 input of multiplexer 401 is selected, 6
In the bit shifter 1910, n s multiplied by 2 to the sixth power is CORD
It becomes the xin input signal to the IC processor 40. When the 110 input of the multiplexer 402 is selected, n s multiplied by 26 in the 6-bit shifter 1910 is
It becomes a yin input signal to the DIC processor 40.

【0061】図9を参照すると、ビット・シリアルのレ
ジスタ195は、乗算-加算プロセッサ30から得られる信号
を累積するロー・パス・フィルタ処理結果である oa1
を記憶するために用いられている。図16において認めら
れるように、マルチプレクサ401の 000入力が選択され
たときには、oa1 は、CORDIC プロセッサ40に対する xi
n入力信号となる。また、マルチプレクサ402の 000 入
力が選択されたときには、oa1 は、CORDIC プロセッサ
40に対するyin 入力信号となる。
[0061] With reference to FIG. 9, the bit-serial register 195, multiplier - a low pass filter processing result of accumulating a signal obtained from the addition processor 30 o a1
Is used to store As can be seen in FIG. 16, when the 000 input of the multiplexer 401 is selected, o a1 is the xi to the CORDIC processor 40
n input signals. When the 000 input of the multiplexer 402 is selected, o a1 is set to the CORDIC processor.
Yin input signal for 40.

【0062】図9を参照すると、ビット・シリアルのレ
ジスタ196は、乗算-加算プロセッサ30から得られる信号
を累積するロー・パス・フィルタ処理結果である oa2
を記憶するために用いられている。図16において認めら
れるように、マルチプレクサ401 の 001入力が選択され
たときには、oa2 は、CORDIC プロセッサ40に対する xi
n 入力信号となる。また、マルチプレクサ402の 001 入
力が選択されたときには、oa2は、CORDIC プロセッサ4
0に対するyin 入力信号となる。
Referring to FIG. 9, a bit serial register 196 is a low pass filter processing result oa2 that accumulates the signal obtained from the multiplication-addition processor 30.
Is used to store As can be seen in FIG. 16, when the 001 input of multiplexer 401 is selected, oa2 is xi to CORDIC processor 40.
n Input signal. When the 001 input of the multiplexer 402 is selected, oa2 is set to the CORDIC processor 4
Yin input signal for 0.

【0063】図9だけに戻って考察すると、2入力 AND
ゲート48はその入力部の一方が乗算-加算プロセッサ30
の出力であり、3入力 NOR ゲート49の出力ポートが"1"
であるときには、その出力を RAM 6 に書き込む。プロ
セッサ30と40とのインタフェースであるレジスタバンク
19のビット・シリアル・レジスタ191,195および196のい
ずれにもロード命令が存在しない時には、NOR ゲート49
は"1" を出力する。NOR ゲート49は、ビット・シリアル
・レジスタ191,195および196のいずれかに加えられるロ
ード命令がある場合に、"0"を出力する。この時、RAM 6
においてはアドレスされた位置に算術的なゼロが書き
込まれて行くことになる。
Returning to FIG. 9 only, a two-input AND
Gate 48 has one of its inputs as multiply-add processor 30
Output, and the output port of 3-input NOR gate 49 is "1"
If so, write the output to RAM 6. Register bank that is the interface between processors 30 and 40
When no load instruction is present in any of the 19 bit serial registers 191, 195 and 196, NOR gate 49
Outputs "1". NOR gate 49 outputs "0" when there is a load instruction applied to any of bit serial registers 191, 195 and 196. At this time, RAM 6
In, arithmetic zero will be written to the addressed location.

【0064】図11および図12に関してより詳細に説明さ
れるように、三角フィルタ係数発生器37から発生する u
pdate_wb 信号は、フィルタ係数 2ns の数のサイクルが
終了する都度、normally "0" 状態から "1" になるよ
うにパルスを発生する。また、update_nb 信号は、フィ
ルタ係数 8ns の数のサイクルが終了する都度、normall
y "0" 状態から "1" になるようにパルスを発生する。u
pdate_wb 信号およびupdate_nb 信号は、それぞれディ
レイ・ライン54および55において、積和演算器の出力R3
と同期をとるため3BSL(96ビット)分ディレイされる。
ディレイされたupdate_nb 信号、および、プロセッサ30
に対するプログラム命令に含まれる FAフラグが同時に
"1" の時、AND ゲート56出力は "1" となる。乗算-加
算プロセッサ30によって演算された値 fa を記憶するた
めに用いられるビット・シリアル・レジスタ192に対す
るロード命令である。ディレイされた update_wb 信
号、および、プロセッサ30に対するプログラム命令に含
まれている OA1 フラグが同時に "1" である時、 AND
ゲート57出力は "1" となり、乗算-加算プロセッサ30
によって演算された値 oa1 の記憶用ビット・シリアル
・レジスタ195に対するロード命令となる。ディレイさ
れた update_wb 信号、および、プロセッサ30に対する
プログラム命令に含まれている OA2 フラグが同時に "
1" である時、AND ゲート58出力は "1" となり、乗算
-加算プロセッサ30によって演算された値 oa2 の記憶用
ビット・シリアル・レジスタ196に対するロード命令と
なる。
As will be described in more detail with respect to FIGS. 11 and 12, the u generated from triangular filter coefficient generator 37
pdate_wb signal, every time the number of cycles of the filter coefficients 2n s is completed, generates a pulse to be "1" normally The "0" state. Further, Update_nb signal, every time the number of cycles of the filter coefficients 8n s is completed, normall
y Generate a pulse from "0" to "1". u
The pdate_wb and update_nb signals are output at the delay lines 54 and 55, respectively, from the output R 3
Delayed by 3BSL (96 bits) to synchronize with
Update_nb signal delayed and processor 30
FA flag included in program instruction for
When "1", the output of the AND gate 56 becomes "1". A load instruction for the bit serial register 192 used to store the value f a calculated by the multiplication-addition processor 30. When the delayed update_wb signal and the OA1 flag included in the program instruction to the processor 30 are simultaneously "1", AND
The output of the gate 57 becomes "1" and the multiplication-addition processor 30
Is a load instruction for the storage bit serial register 195 having the value oa 1 calculated by the above. The delayed update_wb signal and the OA2 flag included in the program instruction to the processor 30 are simultaneously "
When it is "1", the output of the AND gate 58 becomes "1" and the multiplication is performed.
-A load instruction for the storage bit serial register 196 of the value oa2 calculated by the addition processor 30.

【0065】マルチプレクサ59およびディレイ・ライン
591はラッチ構成にされており、該マルチプレクサ59の
出力ポートにおけるロジック信号は、三角係数発生器37
が生成させる update_wb 信号がnormally "0" 状態か
ら "1" になるようにパルスを発生するときには、三角
係数発生器37からの update_nb信号の現在値がラッチさ
れて、update_freq 信号を発生するが、その波形は図12
に示されている。図16に示されているように、AND ゲー
ト197ではupdate_freq 信号と cordic_start信号との A
ND をとって、CORDIC プロセッサ40の命令の各サイクル
の最初の1ワード間、"1" となる。AND ゲート197からの
出力信号は、AND ゲート198においてf_sw との AND が
とられて、値f のロード操作を指示する CORDIC プロセ
ッサ40の命令の間に "1" となる。そして、update_freq
信号がハイである時点においては、AND ゲート198から
の "1"により、CORDIC プロセッサ40で演算された値 f
をビット・シリアル・レジスタ192にロードすることが
指令される。AND ゲート197からの出力信号は、AND ゲ
ート199においても ns_swフラグとの AND がとられて、
値 ns のロード操作を指示する CORDIC プロセッサ40の
命令の期間、"1" を保持する。そして、update_freq 信
号がハイである時点においては、AND ゲート198からの
"1" により、CORDIC プロセッサ40で演算された値 ns
をビット・シリアル・レジスタ194にロードすることが
指令される。レフト・シフタ1910では値 ns を 26
し、マルチプレクサ401および402に供給する。これによ
り、CORDIC プロセッサ40において、2回の除算を行なっ
ても、CORDIC プロセッサ40の出力信号のオーバフロー
が発生しない。
Multiplexer 59 and delay line
Reference numeral 591 denotes a latch configuration, and a logic signal at an output port of the multiplexer 59 is supplied to a triangular coefficient generator 37.
Generates a pulse so that the update_wb signal that is generated from the normally “0” state changes to “1”, the current value of the update_nb signal from the triangular coefficient generator 37 is latched, and the update_freq signal is generated. Figure 12 shows the waveform
Is shown in As shown in FIG. 16, the AND gate 197 outputs the A of the update_freq signal and the cordic_start signal.
By taking ND, it becomes "1" during the first word of each cycle of the instruction of the CORDIC processor 40. The output signal from the AND gate 197 is ANDed with f_sw in the AND gate 198, and becomes "1" during the instruction of the CORDIC processor 40 instructing the load operation of the value f. And update_freq
At the time when the signal is high, the value f calculated by the CORDIC processor 40 by "1" from the AND gate 198
Is loaded into the bit serial register 192. The output signal from the AND gate 197 is also ANDed with the n s _sw flag at the AND gate 199,
It holds “1” during the instruction of the CORDIC processor 40 that instructs the load operation of the value n s . At the time when the update_freq signal is high, the
The value n s calculated by the CORDIC processor 40 by "1"
Is loaded into the bit serial register 194. The left shifter 1910 multiplies the value n s by 26 and supplies it to the multiplexers 401 and 402. Thus, even if the CORDIC processor 40 performs the division twice, the output signal of the CORDIC processor 40 does not overflow.

【0066】図10には、ゼロクロス検出器36の構成がよ
り詳細に示されている。このゼロクロス検出器36の動作
は、プロセッサ30のプログラム命令からデコードされた
EZフラグによって可能となる。ゼロクロス検出器36
は、本質的にはそれに対する入力信号shk (図19Aに関
して説明される、vhk および ihk のハイ・パス・フィ
ルタ操作の結果の一方から選択されるもの)の符号ビッ
トを保持して、該符号ビットが変化する場合に、ゼロク
ロス信号を発生するものである。ゼロクロス検出器36の
normally "0" の出力信号ZC が "1" になって、符号ビ
ットが変化した時点を指示する。ノイズ・スパイクまた
は高調波歪みに応じて発生するゼロクロスの誤動作の可
能性を減少させるために、ゼロクロス検出器回路36に含
まれているタイマ360によりマスク信号 rflagを発生さ
せる。そして、これが"1" であるときには、ゼロクロス
の指示からある規定の時間が経過した後でのみ、符号ビ
ットが変化するゼロクロスの指示をすることが検出器36
に対して許容される。
FIG. 10 shows the structure of the zero-cross detector 36 in more detail. The operation of this zero cross detector 36 is decoded from the program instruction of the processor 30.
This is made possible by the EZ flag. Zero cross detector 36
Holds essentially the sign bit of the input signal s hk for it (selected from one of the results of the high pass filter operations of v hk and i hk , described with respect to FIG. 19A), When the sign bit changes, a zero-cross signal is generated. Zero cross detector 36
Normally, the output signal ZC of "0" becomes "1", indicating the time when the sign bit changes. The mask signal rflag is generated by a timer 360 included in the zero-crossing detector circuit 36 to reduce the possibility of a zero-crossing malfunction occurring in response to noise spikes or harmonic distortion. When this is "1", the detector 36 instructs the zero-crossing in which the sign bit changes only after a predetermined time has passed since the zero-crossing instruction.
Tolerated.

【0067】タイマ360は本質的にはカウンタであっ
て、PROM 9から読み取られたある規定の値 ZCT よりカ
ウント・ダウンするものである。このカウンタに含まれ
たビット・シリアルの減算器361は、その差出力信号を
マルチプレクサ362を通してフィード・バックさせるよ
うに配置されており、クロックディレイ・ライン363に
おいて1ワードだけディレイして timer 信号を発生す
る。そして、ここでの timer信号は当該減算器361に対
する被減数入力信号として加えられる。そのダウン・カ
ウントの始まりにおいて、reset 信号またはゼロクロス
検出器36の出力信号 ZC のいずれかが "1" になるのに
応答して OR ゲート364がマルチプレクサ362を切り替え
る "1" を発生させ、規定の値 ZCT を選択することによ
り、クロックディレイ・ライン363において1ワード分デ
ィレイさせて timer 信号の初期ワードを発生する。回
路365によれば、該 timer 信号の各ビット・シリアル・
ワードの22ビット目(該当のワードの符号ビット)の論
理状態がセンスされて、ロジック信号が発生する。次に
続くビット・シリアルのワードの22番目のビットの論理
状態が該回路365によってセンスされるまで、該ロジッ
ク信号が同じ論理状態を保持するようにされる。規定の
値 ZCT の22番目のビットがセンスされるときには、ZCT
が正の大きさであるために、それは固定的に "0" であ
る。回路365はこれに応答してロジック信号 "0" を発生
させる。この回路365からの応答はロジック・インバー
タ366の入力ポートに加えられる。そして、該インバー
タ366の出力ポートは2入力 AND ゲート367に対して入力
信号の一方を加えるように接続されている。AND ゲート
367は次のような条件で出力信号 "1" を出す。即ち、ロ
ジック・インバータ366からの "1" であるその入力信
号、および、これと同時に、ゼロクロス検出器36の動作
を可能にする EZ フラグ の"1"(その入力信号の他
方)に応答して、AND ゲート367は所期の条件付けがな
される。AND ゲート367からの出力信号は、2入力 AND
ゲート368の一つの入力信号となる。該 AND ゲート368
はビット・シリアルの 2-15 のワード・ビットを他の入
力信号とする。AND ゲート368の出力信号は減数信号と
して減算器361に加えられる。AND ゲート367からAND ゲ
ート368に対する入力として "1" が加えられる限り、AN
D ゲート368はビット・シリアルの 2-15 のワード・ビ
ット を減数信号として減算器361に加える。timer 信
号の極性が変化するまでタイマ360におけるカウント・
ダウン操作が続行されるが、この時点において回路365
から "1"の出力信号が生じる。インバータ366は、この
"1" に応答して AND ゲート367に "0" を加え、また、
これに応答して AND ゲート368に "0" を加える。AND
ゲート368は、その "0" 入力信号に応答して、減算器36
1に対してロジックゼロを加える。このために、reset信
号または ZC 信号のいずれかが "1" になることによっ
てタイマがリセットされるまで、ダウン・カウント操作
は停止されて、回路365は"1" 出力を出し続けることに
なる。
The timer 360 is essentially a counter which counts down from a predetermined value ZCT read from the PROM 9. The bit-serial subtractor 361 included in this counter is arranged to feed back the difference output signal through the multiplexer 362, and generates a timer signal by delaying one word on the clock delay line 363. I do. Then, the timer signal here is added as a minuend input signal to the subtractor 361. At the beginning of the down-count, the OR gate 364 generates a "1" which switches the multiplexer 362 in response to either the reset signal or the output signal ZC of the zero-crossing detector 36 going to "1", Selecting the value ZCT causes the initial word of the timer signal to be delayed by one word on the clock delay line 363. According to the circuit 365, each bit serial of the timer signal
The logic state of the 22nd bit of the word (the sign bit of the word) is sensed and a logic signal is generated. The logic signal is held at the same logic state until the logic state of the 22nd bit of the next following bit serial word is sensed by the circuit 365. When the 22nd bit of the specified value ZCT is sensed,
Is fixedly "0" because is positive. Circuit 365 responds by generating a logic signal "0". The response from circuit 365 is applied to the input port of logic inverter 366. The output port of the inverter 366 is connected to a two-input AND gate 367 so as to apply one of the input signals. AND gate
The 367 outputs an output signal "1" under the following conditions. That is, in response to its input signal being a "1" from the logic inverter 366, and at the same time, the EZ flag "1" (the other of the input signals) which enables the operation of the zero cross detector 36. The AND gate 367 is conditioned as desired. The output signal from AND gate 367 is a two-input AND
This is one input signal of the gate 368. The AND gate 368
Takes the bit serial 2-15 word bits as the other input signal. The output signal of the AND gate 368 is applied to the subtractor 361 as a subtraction signal. As long as "1" is added as an input from AND gate 367 to AND gate 368, AN
D-gate 368 applies the bit serial 2-15 word bits to subtractor 361 as a subtraction signal. timer count in timer 360 until the polarity of the timer signal changes
The down operation continues, but at this point the circuit 365
Produces an output signal of "1". Inverter 366
In response to "1", add "0" to AND gate 367, and
In response, "0" is added to the AND gate 368. AND
Gate 368 responds to its "0" input signal by
Add logic zero to 1. For this reason, the down-counting operation is stopped and the circuit 365 continues to output a "1" output until the timer is reset by either reset signal or ZC signal going to "1".

【0068】EZ フラグおよび timer-符号検出器回路36
5の出力信号が同時に "1" であることに応答して、AND
ゲート369が rflag 信号を発生させる。この rflag信
号が "1" であるときには、デジタル微分器3610をアク
ティブにして、クロックrflag ディレイ・ライン3611
の出力ポートからそれに加えられるビット・シリアルの
信号符号ビット変化を検出する。クロックディレイ・ラ
イン3611は、その出力ポートにおいて、1ワード長のデ
ィレイ後、RAM 6 からその入力ポートに読み取られた信
号shk (信号 vh1,ih1,vh2,ih2,vh3 および ih3 の中の
一つ)を反復させて、shk-符号検出器回路3612に入力
する。このshk-符号検出器回路3612によれば、ディレイ
したshk 信号のビット31をサンプルして、1ビット・シ
リアルのワードの1ワード分にわたって当該ビットを保
持する。rflag 信号が "1"であるときには、この保持
されているビットがマルチプレクサ3613により選択され
て、クロックディレイ・ライン3614に向けられる。shk
-符号検出器回路3612の出力ポートからの現在保持され
ているビットは、排他的-OR ゲート回路3615において、
クロックディレイ・ライン3614の出力部における信号と
の排他的-OR がとられる。rflag 信号が連続的に "1"
である限りは、現に保持されている符号ビットと先に保
持されていた符号ビットとについて、排他的-OR ゲート
回路3615により排他的-OR がとられて、shk-符号検出
器回路3612の保持されている出力をデジタル的に微分す
る。このデジタル的な微分演算の結果は、2入力 AND ゲ
ート3616に対する一つの入力として加えられる。この A
ND ゲート3616はその他方の入力信号として rflag 信号
を受け入れ、その出力ポートにおいて ZC 信号を発生さ
せる。shk の符号ビットにおいて変移が生じたときを
除き、排他的-OR ゲート回路3615に対する入力信号の双
方は "0" または "1" であり、そのゲートの応答が "0"
であるようにされる。そして、その結果として、AND
ゲート3616の応答 ZC は "0" になる。shk の符号ビッ
トに変移が生じたときには、排他的-ORゲート回路3615
に対する入力信号の一方は "0" になり、その他方は "
1" になって、そのゲートの応答が "1" であるようにさ
れる。そして、その結果として、AND ゲート3616の応答
ZC は "1" になり、ゼロクロスの指示を行なう。
EZ flag and timer-code detector circuit 36
In response to the output signals of 5 being "1" at the same time,
Gate 369 generates the rflag signal. When this rflag signal is "1", the digital differentiator 3610 is activated and the clock rflag delay line 3611 is activated.
, A bit serial signal sign bit change applied thereto from the output port is detected. The clock delay line 3611 provides a signal s hk (signals v h1 , i h1 , v h2 , i h2 , v h3 and i) read from the RAM 6 to the input port after a delay of one word length at its output port. h3 and one) is repeated in, s hk - input to the code detector circuit 3612. The s hk - According to the code detector circuit 3612, samples the bit 31 of the delay the s hk signal, holds the bit for one word one-bit serial word. When the rflag signal is "1", the retained bit is selected by multiplexer 3613 and directed to clock delay line 3614. s hk
-The currently held bits from the output port of the sign detector circuit 3612 are passed to the exclusive-OR gate circuit 3615
Exclusive-ORing with the signal at the output of clock delay line 3614 is performed. rflag signal continuously "1"
As long as, the exclusive-OR operation is performed by the exclusive-OR gate circuit 3615 on the currently held sign bit and the previously held sign bit, and the shk -sign detector 3612 Digitally differentiate the held output. The result of this digital differentiation operation is applied as one input to a two-input AND gate 3616. This A
ND gate 3616 accepts the rflag signal as the other input signal and generates a ZC signal at its output port. except when transition in the sign bit of s hk occurs, both input signals to the exclusive -OR gate circuit 3615 "0" or "1", the response of the gate is "0"
It is made to be. And as a result, AND
The response ZC of the gate 3616 becomes "0". When transition to the sign bit of s hk occurs exclusively -OR gate circuit 3615
One of the input signals to is "0" and the other is "
1 "so that the response of that gate is" 1 ", and consequently the response of AND gate 3616
ZC becomes "1" and gives a zero-cross instruction.

【0069】先に説明されたように、ZC が"1" である
ときにはタイマ360がリセットされ、クロックされるデ
ィレイ・ライン363の入力ポートに対して ZCT を加える
ように、マルチプレクサ362によって条件付けられる。
クロックされるディレイ・ライン363における1ワードの
ディレイの後で、ZCT の符号ビットが timer-符号検出
器回路365によって検出される。AND ゲート369によって
発生される rflag 信号は、timer-符号検出器回路365の
出力信号が "1" であることに応答して "0"になる。rfl
ag 信号が "0" であるときには、マルチプレクサ3613
は、タイマがゼロまでカウント・ダウンされるまで、当
該ゼロクロスを発生した符号の状態を該クロックディレ
イ・ラインの出力ポートからその入力ポートに戻すよう
に帰還する。rflag 信号が "0" であるときに、shk-
符号検出器回路3612のその出力状態を変化させるいかな
るノイズ・スパイクでも、この帰還ループに入ることは
マルチプレクサ3613によって許容されない。ところで、
この rflag信号が "0"であるときには、帰還している符
号ビットと、shk-符号検出器回路3612によって現に検
出されている符号ビットとにおけるいかなる差にも拘ら
ず、ZC 信号は"0" になる。
As previously described, when ZC is "1", the timer 360 is reset and conditioned by the multiplexer 362 to apply ZCT to the input port of the clocked delay line 363.
After a word delay on clocked delay line 363, the sign bit of ZCT is detected by timer-sign detector circuit 365. The rflag signal generated by AND gate 369 goes "0" in response to the output signal of timer-code detector circuit 365 being "1". rfl
When the ag signal is "0", the multiplexer 3613
Returns the state of the code that generated the zero cross from the output port of the clock delay line to its input port until the timer counts down to zero. When rflag signal is "0", it s hk -
Any noise spikes that change the output state of the sign detector circuit 3612 are not allowed by the multiplexer 3613 to enter this feedback loop. by the way,
When the rflag signal is "0", the sign bit being fed back, s hk - sign detector circuitry despite any difference in the code bit being currently detected by 3612, ZC signal "0" become.

【0070】図11には、三角フィルタ係数発生器37の構
成がより詳細に示されている。ビット・シリアルのカウ
ンタ370は、算術的な1からビット・シリアル・レジスタ
194(図16)に記憶されている値 ns までサイクリックに
カウント・アップして、図9に示されている三角フィル
タ係数発生器37の利用が可能となる。この ns入力信号
は、図11に示されているように、ビット・シリアル・レ
ジスタ194内の32ビットの上位16ビットにおいて有効で
ある。ビット・シリアルのカウンタ370は、MAPプロセッ
サ30におけるビット・シリアルの信号に対する32ビット
のフル・レンジの上位16ビットのサブ・レンジにおいて
カウント操作をするものであり、また、これに本質的に
含まれるビット・シリアルの加算器371は、ビット・シ
リアルの2- 15 に対するアキュムレータ(累積手段)と
して機能する。該カウンタ370におけるカウント操作は
cordic_start パルスと AND ゲート372におけるビット
・シリアルの 2-15 との AND がとられるので、cordic_
start パルスが "1" の時、加算器371に対する被加算数
入力信号を加えることによって達成される。加算器371
からの出力信号はクロックディレイ・ライン373におい
て1ビット・シリアル・ワードの持続時間だけディレイ
される。そして、このディレイ信号は、AND ゲート374
を介して、ビット・シリアルの加算器371に対する加数
入力信号として選択的に加えられる。ビット・シリアル
の比較器375で、クロックディレイ・ライン373からのビ
ット・シリアルのディレイ信号は、ビット・シリアル・
レジスタ194から読み取られるビット・シリアルの値 ns
と比較される。この比較器375からは、カウントが ns
に達したときに "1" のストリングが出力される。OR ゲ
ート376は、比較器375からの "1" または reset 信号と
して加えられる "1" に応答して、その出力ポートにお
いて "1" を発生させる。OR ゲート376の出力部におけ
る "1" は、ディレイ・ライン377において2BSLの持続時
間だけディレイされ、2入力 AND ゲート378において、
次の cordic_start パルスとの AND がとられる。AND
ゲート378からの normally "0" の出力信号における出
力結果の"1"は、ロジック・インバータ379により反転さ
れて、 AND ゲート374に対して加えられるnormally "1"
のロジック信号として出力は "0"なる。その結果、加
算器371による累積操作が中断され、算術的なゼロが加
数入力信号として加算器371に加えられる。ns と比較す
るときに算術的な1として計算されるビット・シリアル
の 2-1 5に対する累積をリセットする。
FIG. 11 shows the configuration of the triangular filter coefficient generator 37 in more detail. The bit-serial counter 370 is an arithmetic one to bit-serial register.
By cyclically counting up to the value n s stored in 194 (FIG. 16), the triangular filter coefficient generator 37 shown in FIG. 9 can be used. This ns input signal is valid in the upper 16 bits of the 32 bits in the bit serial register 194, as shown in FIG. Bit-serial counter 370 counts and is inherently included in the upper 16-bit sub-range of the 32-bit full range for bit-serial signals in MAP processor 30. bit-serial adder 371, a second bit-serial - to function as an accumulator (accumulating means) for 15. The counting operation in the counter 370 is
Since AND is taken between the bit-serial 2 -15 in cordic_start pulses and AND gate 372, cordic_
This is achieved by adding the augend input signal to the adder 371 when the start pulse is "1". Adder 371
The output signal from is delayed on clock delay line 373 by the duration of a 1-bit serial word. Then, this delay signal is output to the AND gate 374
Is selectively applied as an addend input signal to the bit-serial adder 371. The bit-serial comparator 375 outputs the bit-serial delay signal from the clock delay line 373 to the bit-serial
Bit serial value n s read from register 194
Is compared to From this comparator 375, the count is n s
Is reached, the string "1" is output. OR gate 376 generates a "1" at its output port in response to a "1" from comparator 375 or a "1" applied as a reset signal. The "1" at the output of OR gate 376 is delayed by a duration of 2 BSL on delay line 377, and at the two input AND gate 378,
AND with the next cordic_start pulse is taken. AND
The output result "1" of the normally "0" output signal from gate 378 is inverted by logic inverter 379 and normally "1" applied to AND gate 374.
The output becomes "0" as the logic signal of. As a result, the accumulation operation by adder 371 is interrupted and arithmetic zero is added to adder 371 as an addend input signal. Reset accumulated for 2 -1 5 bit-serial calculated as arithmetic 1 when comparing with the n s.

【0071】図11の三角係数発生器37に含まれている別
のカウンタ3710は、3段にカスケードされたカウンタ段
を含むビット・パラレルのカウンタである。これらの段
の第1のもので発生される state_0 出力信号は、カウン
タ370が ns なるカウントに達するのに対応して、"0"
ロジック状態と "1" ロジック状態が反転する。これら
の段の第2のもので発生される state_1 出力信号は、st
ate_0 出力信号の "1"-"0" 遷移に対応して、"0" ロジ
ック状態と "1" ロジック状態が反転する。これらの段
の第3のもので発生される state_2 出力信号は、state_
1 出力信号の "1"-"0" 遷移に対応して、"0" ロジック
状態と "1" ロジック状態が反転する。ビット・シリア
ルのカウンタ370に対するリセット信号として AND ゲー
ト378から出された "1" のストリングは、2入力AND ゲ
ート3724の一方の入力として加えられる。そして、この
AND ゲート3724の他方の入力信号はビット・シリアル
の 2- 31 である。これに応答してAND ゲート3724は1ク
ロック・サイクル長のリセット・パルスを発生する。疑
似ディレイ要素3725は、シリコン・コンパイラ・プログ
ラムにおいて、全ての関連する回路に対して 適用され
ている負の1ビットディレイである。いうまでもなく、
疑似ディレイ要素3725におけるカウンタ3710のリセット
・パルスの負のディレイが実際に存在することは不可能
であるけれども、シリコン・コンパイラ・プログラム
は、疑似ディレイ要素3725が示されているところで、全
ての回路パスにおいて当該回路パスと並列に単位クロッ
クディレイを導入することにより疑似ディレイを発生さ
せる。"1" なる update_wb 信号を cordic_start 信号
と同期させるために疑似ディレイが使用された。この相
対的に時間を進める1クロック・サイクル長のリセット
・パルスがカウンタ3710に加えられて、その3個のカウ
ンタ段のそれぞれをリセットし、これによって、信号st
ate_0,state_1 および state_2 の各々が"0" 値にされ
る。図12にカウンタ370の ctr カウント出力、および、
カウンタ3710からの信号 state_0,state_1 および stat
e_2 の相対的なタイミングが示されている。
Another counter 3710 included in the triangular coefficient generator 37 of FIG. 11 is a bit parallel counter including three cascaded counter stages. The state_0 output signal generated by the first of these stages is a "0", corresponding to the counter 370 reaching a count of n s.
The logic state and "1" logic state are inverted. The state_1 output signal generated by the second of these stages is st
The logic state "0" and the logic state "1" are inverted according to the "1"-"0" transition of the ate_0 output signal. The state_2 output signal generated by the third of these stages is state_
1 "0" logic state and "1" logic state are inverted according to "1"-"0" transition of output signal. The string of "1" output from AND gate 378 as a reset signal to bit serial counter 370 is applied as one input of a two input AND gate 3724. And this
The other input signal of the AND gate 3724 is 2 bit-serial - is 31. In response, AND gate 3724 generates a reset pulse one clock cycle long. The pseudo delay element 3725 is a negative one-bit delay applied to all relevant circuits in the silicon compiler program. Needless to say,
Although it is not possible for the negative delay of the reset pulse of the counter 3710 in the pseudo delay element 3725 to actually exist, the silicon compiler program will execute all circuit paths where the pseudo delay element 3725 is shown. , A pseudo delay is generated by introducing a unit clock delay in parallel with the circuit path. A pseudo-delay was used to synchronize the "1" update_wb signal with the cordic_start signal. This relatively time-advancing one-clock-cycle-long reset pulse is applied to counter 3710 to reset each of its three counter stages, thereby causing signal st
ate_0, state_1 and state_2 are each set to the "0" value. FIG. 12 shows the ctr count output of the counter 370, and
Signals state_0, state_1 and stat from counter 3710
The relative timing of e_2 is shown.

【0072】マルチプレクサ3711から供給される βwb
信号は、図12に示されているように、対称的な三角フィ
ルタの 2 ns サンプル幅の形状である。図11に示されて
いるように、state_0 が "0" であるときのカウント操
作期間は、該 state_0 信号によりマルチプレクサ3711
が ctr を選択し、その出力信号 βwb の上昇部分を形
成する。state_0 が "1" であるときのカウント操作期
間は、該 state_0 信号によりマルチプレクサ3711がビ
ット・シリアルの減算器3712からの差出力を選択し、そ
の出力信号 βwb の下降部分を形成する。この減算器37
12は被減数の入力信号は ns と減数として ctr であ
り、差の出力信号として ns -ctr を発生する。
Β wb supplied from the multiplexer 3711
The signal is in the form of a 2 ns sample width of a symmetric triangular filter, as shown in FIG. As shown in FIG. 11, during the count operation period when state_0 is “0”, the multiplexer 3711 is used by the state_0 signal.
Selects ctr and forms the rising part of its output signal β wb . During the count operation period when state_0 is "1", the multiplexer 3711 selects the difference output from the bit-serial subtractor 3712 by the state_0 signal, and forms a falling part of the output signal β wb . This subtractor 37
In 12 the minuend input signal is n s and the subtrahend is ctr, and the difference output signal is n s -ctr.

【0073】マルチプレクサ3713から供給される βnb
信号は、図12に示されているように、対称的な三角フィ
ルタ操作カーネルの 8ns のサンプル幅のものである。
図11に示されているように、state_2 が "0" であると
きのカウント操作サイクルの間は、ビット・シリアルの
加算器3714の和出力信号によって供給されるように、該
state_2 信号によりマルチプレクサ3713がその出力信
号 βnb の上昇部分を選択するように条件付けられる。
state_2 が "1" であるときのカウント操作サイクルの
間は、ビット・シリアルの減算器3715の差出力信号によ
って供給されるように、該 state_2 信号によりマルチ
プレクサ3713がその出力信号 βnb の上昇部分を選択す
るように条件付けられる。全てのビットを1ビット分だ
け上位に向けて配置することで、値 ns がシフタ3716に
より2で乗算されて、AND ゲート3720に対する入力信号
を発生する。更に、シフタ3716からの結果 2ns は、シ
フト3717により2で乗算されて、減算器3715に対する被
減数信号 4ns を発生する。ビット・シリアル加算器371
の和出力信号は、減算器3715によりその減数入力信号と
して用いられる。三角フィルタ係数発生器が起動した後
で、 state_2 が "0"である4個の連続的な ctr ランプ
の間に、加算器3714は 4ns までのランプを発生させる
が、これはその出力信号 βnb の上昇部分としてマルチ
プレクサ3713により選択される。state_2 が "1" であ
る次の4個の連続的な ctr ランプの間には、加算器3714
は再び 4ns までのランプを発生させるが、このランプ
は減算器3715において 4ns から減算されて、相補的ラ
ンプを発生するようにされる。そして、この相補的ラン
プはその出力信号 βnbの下降部分としてマルチプレク
サ3713により選択される。
Β nb supplied from multiplexer 3713
Signal, as shown in FIG. 12, those of sample width symmetrical triangular filtering operations kernel 8n s.
As shown in FIG. 11, during the count operation cycle when state_2 is "0", as is provided by the sum output signal of the bit-serial adder 3714.
The state_2 signal conditions the multiplexer 3713 to select the rising portion of its output signal β nb .
During the count operation cycle when state_2 is "1", the state_2 signal causes the multiplexer 3713 to cause the rising portion of its output signal β nb to be supplied by the difference output signal of the bit-serial subtractor 3715. Conditioned to choose. By placing all bits upward by one bit, the value n s is multiplied by two by the shifter 3716 to generate an input signal to the AND gate 3720. Furthermore, the results 2n s from shifter 3716 is multiplied by 2 by shifting 3717, to generate a minuend signal 4n s against subtractor 3715. Bit serial adder 371
Is used as a subtraction input signal by a subtractor 3715. After triangular filter coefficient generator is started, during the four successive ctr lamp is state_2 is "0", the adder 3714 is to generate a ramp up to 4n s, which is the output signal β It is selected by multiplexer 3713 as the rising part of nb . During the next four consecutive ctr ramps where state_2 is "1", adder 3714
Although generates a ramp up to 4n s again, the lamp is subtracted from 4n s in subtractor 3715, it is adapted to generate a complementary ramp. This complementary ramp is then selected by multiplexer 3713 as the falling part of its output signal β nb .

【0074】その和出力信号として 4ns までの各ラン
プを発生させるときには、加算器3714はその被加算数入
力としてカウンタ出力 ctr を受け入れ、また、その加
数入力として別のビット・シリアルの加算器3718からの
和出力を受け入れる。加算器3718がその加数入力信号お
よび被加算数入力信号として受け入れるものは、AND ゲ
ート3719および AND ゲート3720からの出力信号であ
る。加算器3714からのランプ出力の始まりにおいては、
AND ゲート3719および AND ゲート3720に対して入力さ
れる "0"値の state_0 信号および state_1 信号によ
り、加算器3718に対する算術的なゼロの加数入力信号お
よび被加算数入力信号を加える。加算器3718は、これら
の算術的なゼロの和をとって、その和出力信号として算
術的なゼロを発生させ、これを加算器3714に対してその
加数入力信号として供給する。従って、この加算器3714
の和出力は、その ctr 被加算数入力信号に等しいこと
になる。
[0074] When generating the respective lamp to 4n s as its sum output signal, the adder 3714 receiving the counter output ctr as its augend input, also, another bit-serial adder as its addend input Accept the sum output from 3718. What adder 3718 accepts as its addend and addend input signals are the output signals from AND gate 3719 and AND gate 3720. At the beginning of the ramp output from adder 3714,
The "0" value state_0 and state_1 signals input to AND gate 3719 and AND gate 3720 add the arithmetic zero addend and addend input signals to adder 3718. Adder 3718 sums these arithmetic zeros, generates an arithmetic zero as the sum output signal, and supplies this to adder 3714 as its addend input signal. Therefore, this adder 3714
Will be equal to its ctr augend input signal.

【0075】カウンタ370からの ctr 出力の次のサイク
ルにおいては、AND ゲート3719に対する一方の入力信号
として加えられる "1"値の state_0 信号は、その他方
の入力信号として入力される ns 信号を再び有効にさせ
て、加算器3718によって加数信号として用いる。AND ゲ
ート3720に対して加えられる "0"値の state_1 信号
は、算術的なゼロの被加算数入力信号を加算器3718に加
える。従って、加算器3718からの和出力信号は ns に対
応している。加算器3714は加数および被加算数のctr 信
号を受け入れるから、その和出力信号は ns+ctr にな
る。
In the next cycle of the ctr output from the counter 370, the “1” value state_0 signal applied as one of the input signals to the AND gate 3719 reverts to the n s signal input as the other input signal. It is made valid and used as an addend signal by the adder 3718. The “0” value state_1 signal applied to AND gate 3720 adds the arithmetic zero augend input signal to adder 3718. Therefore, the sum output signal from adder 3718 corresponds to n s . Since adder 3714 accepts the addend and augend ctr signals, the sum output signal is n s + ctr.

【0076】カウンタ370からの ctr 出力の次のサイク
ルにおいては、AND ゲート3719に対して加えられる "0"
値の state_0 信号は、加算器3718に対して算術的にゼ
ロの加数信号を加える。AND ゲート3720に対する一方の
入力信号として加えられる "1"値の state_1 信号は、
その他方の入力信号として受け入れられる 2ns 信号を
再び有効にして、加算器3718の被加算数として用いられ
る。従って、加算器3718からの和出力信号は 2ctr に対
応している。加算器3714は加数として 2ns 信号を受け
入れ、被加算数として ctr 信号を受け入れることか
ら、その和出力信号は 2ns+ctr になる。
In the next cycle of the ctr output from the counter 370, "0" is applied to the AND gate 3719.
The value state_0 signal arithmetically adds an addend signal of zero to adder 3718. The "1" value state_1 signal applied as one input signal to the AND gate 3720 is
The 2n s signal accepted as other input signals to reenable used as augend the adder 3718. Therefore, the sum output signal from the adder 3718 corresponds to 2ctr. The adder 3714 accepts the 2n s signal as addend, since accepting ctr signal as augend, the sum output signal becomes 2n s + ctr.

【0077】カウンタ370からの ctr 出力の次のサイク
ルにおいては、AND ゲート3719の一方の入力信号として
加えられる"1"値の state_0 信号は、その出力における
他の入力信号として受け入れられる ns 信号を再び有効
として、加算器3718に加数信号として用いる。AND ゲー
ト3720に対する一方の入力信号として加えられる "1"値
の state_1 信号は、その他方の入力信号として受け入
れられる 2ns 信号を再び有効として、加算器3718の被
加算数信号として用いる。従って、加算器3718からの和
出力信号は 3ns に対応している。加算器3714は加数と
して 3ns 信号を受け入れ、被加算数として ctr 信号を
受け入れることから、その和出力信号は3ns+ctr にな
る。
In the next cycle of the ctr output from counter 370, the "1" value state_0 signal applied as one input signal of AND gate 3719 will cause the n s signal to be accepted as the other input signal at its output. It is again valid and used as an addend signal in the adder 3718. State_1 signal of one is applied as an input signal "1" value to the AND gate 3720, the 2n s signal accepted as other input signals as valid again, used as augend signal of the adder 3718. Thus, the sum output signal from the adder 3718 corresponds to 3n s. The adder 3714 accepts 3n s signal as addend, since accepting ctr signal as augend, the sum output signal becomes 3n s + ctr.

【0078】state_0 信号が "1" であるときに、AND
ゲート3721はカウンタ370の最終カウントに応答して、u
pdate_wb と呼ばれ normally "0" 信号である "1" パル
スを発生させるが、この信号は、乗算-加算プロセッサ3
0におけるバンド幅の広い(即ち、狭いカーネルの)ロ
ー・パス・フィルタ操作が終了したことを示す。ctrは
cordic_start が生じる度に増分するものであることか
ら、update_wb 信号が"1" である持続時間は、乗算-加
算プロセッサ30のプログラム・サイクル即ち、64BSLに
等しい。AND ゲート3722はその一方の入力ポートにおい
て update_wb を受け入れる。update_wb の信号パルス
が "1" になる4回目毎に、AND ゲート3723は同時に "1"
である state_1 信号および state_2 信号の双方に応
答して、ANDゲート3722の他方の入力ポートに"1" を伝
える。AND ゲート3722はこれに応答して、update_nb と
呼ばれnormally "0" 信号である "1" パルスを発生させ
るが、この信号は、乗算-加算プロセッサ30における比
較的バンド幅の狭い(即ち、広いカーネルの)ロー・パ
ス・フィルタ操作が終了したことを示す。このバンド幅
の狭いロー・パス・フィルタ操作は、fa を算出すると
きに乗算-加算プロセッサ30によって用いられる。この
プロセッサ30においては、他の信号の算出のためにはバ
ンド幅の広いロー・パス・フィルタ操作が用いられる。
When the state_0 signal is "1", AND
Gate 3721 responds to the final count of counter 370 by
This signal is called pdate_wb and normally generates a "1" pulse, which is a "0" signal.
Indicates that the wideband (ie, narrow kernel) low pass filter operation at 0 has been completed. ctr is
The duration for which the update_wb signal is "1" is equal to the program cycle of the multiply-add processor 30, i.e., 64 BSL, since it is incremented each time cordic_start occurs. AND gate 3722 accepts update_wb at one of its input ports. Every fourth time when the update_wb signal pulse becomes "1", the AND gate 3723 simultaneously sets "1"
"1" is transmitted to the other input port of the AND gate 3722 in response to both the state_1 signal and the state_2 signal. The AND gate 3722 responds by generating a "1" pulse, called an update_nb, which is a normally "0" signal, which is a relatively low bandwidth (i.e., wide) signal in the multiply-add processor 30. Indicates that the low-pass filter operation (of the kernel) has been completed. This low bandwidth low pass filter operation is used by the multiply-add processor 30 when calculating f a . In this processor 30, a wide band low-pass filter operation is used for calculating other signals.

【0079】図13には、CORDIC プロセッサ40がより詳
細に示されている。このプロセッサ40によれば、yin/xi
n の arctan および magnitude(xin,yin)なる関数を繰
り返しの CORDIC 手順で同時に演算できるだけではな
く、CORDIC の演算で用いられると同じデジタル・ハー
ドウエアを共有して、除算または平方根演算を実行する
ことができる。この CORDICプロセッサ40に含まれてい
る3個のビット・シリアルのアキュムレータ(累積手
段)は、選択的によりそれぞれ加算または減算の演算が
可能である。これらのビット・シリアルのアキュムレー
タの中の第1のものはxout 信号を累積するものであっ
て、要素404,413-415,429-431,409および410を含んでい
る。これらのビット・シリアルのアキュムレータの中の
第2のものは zout 信号を演算するものであって、要素4
05,432-435,411および412を含んでいる。これらのビッ
ト・シリアルのアキュムレータの中の第3のものは yout
信号を演算するものであって、要素403,422,424-426,4
07および408を含んでいる。
FIG. 13 shows the CORDIC processor 40 in more detail. According to this processor 40, yin / xi
Not only can the functions arctan and magnitude (xin, yin) of n be computed simultaneously in an iterative CORDIC procedure, but they can also perform division or square root operations, sharing the same digital hardware used in CORDIC operations. it can. The three bit serial accumulators (accumulation means) included in the CORDIC processor 40 can selectively perform addition or subtraction operations, respectively. The first of these bit-serial accumulators accumulates the xout signal and includes elements 404,413-415,429-431,409 and 410. The second of these bit-serial accumulators operates on the zout signal, and element 4
Includes 05,432-435,411 and 412. The third of these bit-serial accumulators is yout
Computes a signal and includes elements 403, 422, 424-426, 4
Includes 07 and 408.

【0080】xout 信号は、CORDIC 演算の間の magnitu
de(xin,yin)なる関数に対するプロセッサ40の出力信号
である。このとき、互いに直交するように分解されたベ
クトルの xout 成分および yout 成分は、一連の漸近的
に回転動作手順に従い、yout成分はゼロにできるだけ近
接するように減少し、また、xout 成分はベクトルの大
きさにできるだけ近接するように増大する。xout 信号
を累積するビット・シリアルのアキュムレータは、平方
根の演算を実行するときには使用されない。そして、除
算を実行するときには、このビット・シリアルのアキュ
ムレータは、xout の増減というよりも、xin 信号の大
きさに対する直列メモリとして動作する。
The xout signal is the magnitu value during the CORDIC operation.
This is an output signal of the processor 40 for a function de (xin, yin). At this time, the xout component and the yout component of the vector decomposed so as to be orthogonal to each other follow a series of asymptotically rotating operations, and the yout component decreases so as to be as close to zero as possible. Increase to be as close as possible to the size. A bit serial accumulator that accumulates the xout signal is not used when performing the square root operation. Then, when performing division, the bit-serial accumulator operates as a serial memory for the magnitude of the xin signal, rather than increasing or decreasing xout.

【0081】zout 信号を累積するビット・シリアルの
アキュムレータは、CORDIC 演算の間に、ROM 回路38か
ら供給される arctan の固有係数 を加減算することに
より、yin/xin の arctan を演算する。これらの arcta
n 固有係数は、この累積演算がフル・デジタル・ワード
の加算または減算を必要とする ような2進値である。デ
ジタル・ワードの連続ビットが次第に重要になってく
る、ビット・シリアル演算の実行される時の、除算およ
び平方根演算の手順では、それらのそれぞれの部分商お
よび部分平方根結果のフル・デジタル・ワードでの演算
が必要とされる。これは、デジタル・ワードの連続的な
ビットが次第に重要でなくなるパラレル・ビットの算術
的計算またはビット・シリアルの演算において、これら
の結果の累積操作が簡単なシフト・レジスタを用いて連
続的なビットに基づいてなされることとは対照的であ
る。CORDIC 演算の間に arctan yin/xin を累積するた
めに用いられる、zout 信号を累積するビット・シリア
ルのアキュムレータはプロセッサ40によりビット・シリ
アルの算術的計算において実行される除算および平方根
演算の手順での結果を累積するためにも用いられる。こ
れは、CORDICと、除算および平方根演算を同一のハード
ウエアで実行できるため、ハードウエアの節減となる。
zout 信号は、magnitude(xin,yin)を除く全ての関数に
対する CORDIC プロセッサ40の出力信号である。
The bit-serial accumulator that accumulates the zout signal calculates the arctan of yin / xin by adding and subtracting the characteristic coefficient of the arctan supplied from the ROM circuit 38 during the CORDIC operation. These arcta
n The intrinsic coefficient is a binary value such that this accumulation operation requires addition or subtraction of a full digital word. When bit-serial operations are performed, where the successive bits of the digital word become increasingly important, the division and square-root operation procedures use the full digital word of their respective partial quotients and partial square root results. Is required. This is because, in arithmetic operations on parallel bits or bit-serial operations where successive bits of a digital word become increasingly insignificant, these bits can be successively accumulated using a simple shift register. This is in contrast to what is done on the basis of A bit-serial accumulator that accumulates the zout signal, which is used to accumulate arctan yin / xin during CORDIC operations, uses a divide-and-square operation procedure performed by processor 40 in bit-serial arithmetic calculations. Also used to accumulate results. This saves hardware because CORDIC and the division and square root operations can be performed on the same hardware.
The zout signal is the output signal of the CORDIC processor 40 for all functions except magnitude (xin, yin).

【0082】プロセッサ40によって実行される全ての繰
り返しの手順においては、yout 信号は、CORDIC および
除算の演算手順に対しては、yout の大きさが前述した
値、算術的なゼロに漸近するように、この yout 信号を
累積するビット・シリアルのアキュムレータにより選択
的に増減される。yout の値が全体的に減少するにつれ
て、演算におけるダイナミック・レンジのロスを回避す
るために、yout に対するビット・シリアルのアキュム
レータは、連続的な演算のステップ毎に youtを単位量
だけ上位にシフトさせるタイプのものである。yout の
スケーリングは、通常アルゴリズムで要求される数に関
連する全ての関連数についての、補正スケールリングに
よって達成される。yin/xin の演算をするときには、1
回の繰り返し毎に、1/2にスケーリングされるのに代わ
りに x は一定に保持される。yinの平方根を計算すると
きには、1/4の代わりにその試行した回数が繰り返し毎
に1/2のスケーリングされる。CORDIC 回転を実行すると
きには、y はスケールされない x を用いて修正され、
また、x は繰り返しのステップ i の間に 2-2i によっ
てスケールされた yを用いて修正される。このことが、
CORDIC アルゴリズムを回路化する際に従来からなされ
ているような、他方の修正をするのに前に xおよび y
の各々を2-iによってスケーリングすることとは異なる
ところである。全ての場合において、zout の累積は y
および x のスケールリングで影響を受けることはな
い。
In all iterative procedures performed by the processor 40, the yout signal is such that for the CORDIC and divide operation procedures, the magnitude of yout is asymptotic to the aforementioned value, arithmetic zero. This is selectively increased or decreased by a bit serial accumulator that accumulates the yout signal. As the value of yout decreases overall, a bit-serial accumulator for yout shifts yout up by a unit amount at each successive operation step to avoid loss of dynamic range in the operation. Type. Yout scaling is usually achieved by correction scaling for all relevant numbers related to the number required by the algorithm. When calculating yin / xin, 1
At each iteration, x is kept constant instead of being scaled by a factor of two. When calculating the square root of yin, the number of attempts is scaled by 1/2 at each iteration instead of 1/4. When performing a CORDIC rotation, y is modified with unscaled x,
Also, x is modified using y scaled by 2-2i during iteration step i. This is
X and y before modifying the other, as is traditionally done when circuitizing a CORDIC algorithm.
Is different from scaling each of the two by 2- i . In all cases, the accumulation of zout is y
It is unaffected by the scaling of x and x.

【0083】信号 div_sw は、プロセッサ40が除算のと
きを除いて "0" であるロジック信号である。そして、
信号 sqrt_sw は、プロセッサ40が平方根演算のときを
除いて "0" であるロジック信号である。信号 div_sw
および信号 sqrt_sw は、CORDIC プロセッサ40のための
命令においてそれぞれに単一ビットのフィールドとして
供給され、3個の異なるタイプの演算の各々を選択的に
実施するように、該プロセッサ40の中を通る信号の伝送
を切り替えるために用いられるマルチプレクサをコント
ロールする。ctr5 は、64サイクルの CORDIC 演算の奇
数サイクルの間だけハイにされるロジック信号である。
ctr5 が "0" であるときには、(図2における)CORDIC
プログラム・カウンタ108からの5ビットのカウンタ出力
は、CORDIC プロセッサ40に対する32個の CORDIC 命令
の中の一つであるPROM 9 アドレスを定義する。ctr5 が
"1" であるときには、カウンタ108からのカウント出力
は、CORDIC プロセッサ40に対する CORDIC 係数につい
ての PROM 9アドレスである。ctr5 が "1" であるとき
アクセスされた各 CORDIC 命令は該ctr5 の次の"0" の
ときには維持される。これはプロセッサ40において演算
サイクルに対し、2ワード分の期間を必要とすることを
反映するものである。
The signal div_sw is a logic signal that is “0” except when the processor 40 performs division. And
The signal sqrt_sw is a logic signal that is “0” except when the processor 40 performs the square root operation. Signal div_sw
And the signal sqrt_sw is provided as a single bit field in each of the instructions for the CORDIC processor 40 and the signals passing through the processor 40 to selectively perform each of the three different types of operations. Controls the multiplexer used to switch the transmission of the data. ctr5 is a logic signal that is driven high only during the odd cycles of a 64-cycle CORDIC operation.
When ctr5 is "0", CORDIC (in Figure 2)
The 5-bit counter output from program counter 108 defines the PROM 9 address, one of 32 CORDIC instructions for CORDIC processor 40. ctr5 is
When "1", the count output from counter 108 is the PROM 9 address for the CORDIC coefficient for CORDIC processor 40. Each CORDIC instruction accessed when ctr5 is "1" is maintained when it is "0" next to the ctr5. This reflects that the processor 40 requires a period of two words for an operation cycle.

【0084】cordic_start 信号が "1" である間は、マ
ルチプレクサ403は、図16におけるマルチプレクサ402か
らのその第1の入力信号として加えられる yin 信号をそ
の出力信号 y として選択する。同様に、マルチプレク
サ404は、図16におけるマルチプレクサ401からのその第
1の入力信号として加えられる xin 信号をその出力信号
x として選択する。そして、マルチプレクサ405は、そ
の第1の入力信号として加えられる算術的なゼロをその
出力信号 z として選択する。AND ゲート406に対する入
力信号として加えられる ctr5 信号はローであり、該 A
ND ゲート406からの出力信号をローに設定する。AND ゲ
ート406からのローの出力により、マルチプレクサ407で
選択されるその出力信号は、マルチプレクサ403からの
入力信号である y に等しくなる。この出力信号は1 ワ
ード長のディレイ・ライン408に入力される。AND ゲー
ト406からのローの出力により、マルチプレクサ409で選
択されるその出力信号は、マルチプレクサ404からの入
力信号である xに等しくなる。この出力信号は1 ワード
長のディレイ・ライン410に入力される。更に、ANDゲー
ト406からのローの出力により、マルチプレクサ411で選
択されるその出力信号は、マルチプレクサ405からの入
力信号である zに等しくなる。この出力信号は1 ワード
長のディレイ・ライン412に入力される。cordic_start
信号がハイである時点の後、つまりCORDIC プロセッサ4
0によるビット・シリアルの yout,xout および zout 信
号についての入力決定の期間の後、マルチプレクサ403
で選択されるその出力信号は、ディレイ・ライン408の
出力から、第2の入力信号として戻される yout 信号と
なる。マルチプレクサ404で選択されるその出力信号
は、ディレイ・ライン410の出力から、第2の入力信号と
して戻される xout 信号となる。そして、マルチプレク
サ405で選択されるその出力信号は、ディレイ・ライン4
12の出力から、第2の入力信号として戻される zout 信
号となる。AND ゲート406に対する入力信号として加え
られる ctr5 信号がハイであるときにのみ演算操作は進
行する。従って、要素408,403 および 407 を通るルー
プにおいて、マルチプレクサ407によりビット・シリア
ルのラッチ操作が中断される。要素410,404 および 409
を通るループにおいて、マルチプレクサ409によりビッ
ト・シリアルのラッチ操作が中断される。同様に、要素
412,405 および 411 を通るループにおいて、マルチプ
レクサ411によりビット・シリアルのラッチ操作が中断
される。
While the cordic_start signal is "1", multiplexer 403 selects the yin signal applied as its first input signal from multiplexer 402 in FIG. 16 as its output signal y. Similarly, multiplexer 404 is its multiplexer from multiplexer 401 in FIG.
The xin signal applied as the input signal of 1 is the output signal
Select as x. The multiplexer 405 then selects the arithmetic zero added as its first input signal as its output signal z. The ctr5 signal applied as an input signal to AND gate 406 is low,
The output signal from ND gate 406 is set low. The low output from AND gate 406 causes its output signal, selected by multiplexer 407, to be equal to y, the input signal from multiplexer 403. This output signal is input to a one-word delay line 408. The low output from AND gate 406 causes its output signal, selected by multiplexer 409, to be equal to x, the input signal from multiplexer 404. This output signal is input to a one-word long delay line 410. Further, the low output from AND gate 406 causes its output signal, selected by multiplexer 411, to be equal to z, the input signal from multiplexer 405. This output signal is input to a one-word long delay line 412. cordic_start
After the point when the signal is high, that is, the CORDIC processor 4
After a period of input decisions for the bit-serial yout, xout and zout signals by zero, multiplexer 403
Is the yout signal returned from the output of the delay line 408 as a second input signal. The output signal selected by multiplexer 404 is the xout signal returned from the output of delay line 410 as a second input signal. The output signal selected by the multiplexer 405 is output to the delay line 4
From the twelve outputs is the zout signal returned as the second input signal. The arithmetic operation proceeds only when the ctr5 signal applied as an input signal to AND gate 406 is high. Thus, in a loop through elements 408, 403 and 407, multiplexer 407 interrupts the bit-serial latch operation. Elements 410,404 and 409
In the loop through, the bit serial latch operation is interrupted by the multiplexer 409. Similarly, the element
In a loop through 412, 405 and 411, the multiplexer 411 interrupts the bit-serial latch operation.

【0085】演算のアルゴリズムにおいては、被除数 y
in とともに用いる正の除数 |x| が必要とされる。ctr5
が"0" であるとき、つまり要素410, 404 および 409
を通るループにおけるビット・シリアルのラッチ操作の
間には、マルチプレクサ404からの出力信号 x の符号ビ
ットは、サンプル・ホールド回路413によりサンプルさ
れ、1 ワードの持続時間にわたって保持される。この保
持されている符号ビットによりマルチプレクサ414がコ
ントロールされて、該保持されている符号ビットが "0"
であるときには、その x 入力信号を、または、保持さ
れている符号ビットが "1" であるときには、その -x
入力信号を、その出力信号として選択する。即ち、演算
操作の間 ctr5 が "1" であるときには、マルチプレク
サ414からの出力信号は |x| である。マルチプレクサ41
4に対する -x 入力信号は、算術的なゼロからマルチプ
レクサ404の出力信号 x の差として、ビット・シリアル
の減算器415から得られる。
In the operation algorithm, the dividend y
Requires a positive divisor | x | to be used with in. ctr5
Is "0", ie elements 410, 404 and 409
During a bit-serial latch operation in a loop through, the sign bit of the output signal x from the multiplexer 404 is sampled by a sample and hold circuit 413 and held for a duration of one word. The multiplexer 414 is controlled by the held sign bit, and the held sign bit becomes “0”.
, The x input signal or -x when the retained sign bit is "1"
Select an input signal as its output signal. That is, when ctr5 is "1" during the arithmetic operation, the output signal from multiplexer 414 is | x |. Multiplexer 41
The -x input signal for 4 is obtained from the bit-serial subtractor 415 as the difference between the arithmetic zero and the output signal x of the multiplexer 404.

【0086】通常、CORDIC の演算において、直交座標
xoutおよび yout を有するベクトルは、yout の大きさ
がゼロに向けて連続的に減少し、xout の大きさが完全
なベクトルに向けて増大するステップ状の回転に従う。
連続的な回転のステップに含まれる回転のそれぞれの角
度は次第に小さくなり、また、yout をゼロに減少させ
る回転角 zout の精度を増大すために累積される。CORD
IC の演算の各ステップにおいては、 yout の前の値は
算術的なゼロと比較されて、その符号を判別する。これ
は、xout の前の値を1/2だけ増減することで、第1のク
ロス和として yout の現在の値が yout の前の値よりも
小さくなるかどうかを判別するためである。第2のクロ
ス和は、更新された xout としてつぎのどちらかにより
生成される。yout の前の値が第1のクロス和において生
じる xout の前の値の半分だけ増大しているときには、
xout の前の値を yout の前の値の半分だけ減少させる
場合、または、yout の前の値が第1のクロス和において
生じる xout の前の値の半分だけ減少しているときに
は、xout の前の値を yout の前の値の半分だけ増大さ
せる場合である。yout の前の値が xout の前の値の半
分だけ増減するかどうかの決定により、回転のステップ
における回転角 zout の減少または増大も決定される。
Normally, in the CORDIC calculation, the rectangular coordinates
The vector with xout and yout follows a stepwise rotation where the magnitude of yout decreases continuously toward zero and the magnitude of xout increases toward the full vector.
The angles of each rotation included in successive rotation steps become progressively smaller and are accumulated to increase the accuracy of the rotation angle zout which reduces yout to zero. CORD
At each step of the IC operation, the value before yout is compared to arithmetic zero to determine its sign. This is to determine whether the current value of yout is smaller than the value before yout as the first cross sum by increasing or decreasing the value before xout by 1/2. The second cross sum is generated as an updated xout by either: When the previous value of yout has increased by half the previous value of xout that occurs in the first cross sum,
If the value before xout is reduced by half the value before yout, or if the value before yout is reduced by half the value before xout that occurs in the first cross sum, the value before xout Is increased by half of the previous value of yout. Determining whether the previous value of yout increases or decreases by half of the previous value of xout also determines the decrease or increase of the rotation angle zout in the step of rotation.

【0087】プロセッサ40において実行されるように、
第1のクロス和は、yout の前の値の2倍を xout の前の
値で増大または減少させることによって実行される。第
2のクロス和は、演算の第1ステップで 2-2yout だけ、
演算の第2ステップでは 2-4yout だけ、演算の第3ステ
ップで は2-6yout だけ、以下同様にすることにより xo
ut の前の値を増大または減少させることによって実行
される。CORDIC アルゴリズムでのこれらの修正は、you
t に対するビット・シリアルのアキュムレータが、連続
的な演算ステップ毎に yout を1 bit分だけ上位にシフ
トさせるタイプのものであるという事実を反映してお
り、yout の値が全体的に減少するときに、演算におけ
るダイナミック・レンジのロスを回避する。
As executed in processor 40,
The first cross sum is performed by increasing or decreasing twice the previous value of xout by the previous value of xout. No.
The cross sum of 2 is 2 -2 yout in the first step of the operation,
In the second step of the operation, only 2 -4 yout, in the third step of the operation, 2 -6 yout, and so on.
Performed by increasing or decreasing the previous value of ut. These modifications in the CORDIC algorithm are
This reflects the fact that the bit-serial accumulator for t is of the type that shifts yout up by one bit in each successive operation step, and when the value of yout decreases overall, To avoid loss of dynamic range in calculation.

【0088】CORDIC の演算の間のコントロール・ビッ
ト div_sw は "0" であり、AND ゲート406に対する他方
の入力信号として、連続的な "1" を連続的に出力する
ようにマルチプレクサ416を選択する。更に、該 AND ゲ
ート406の出力信号はその ctr5入力信号に等しくなる。
この"0"値のコントロール・ビット div_sw により、マ
ルチプレクサ417はその入力信号として |x| を選択す
る。
The control bit div_sw during the operation of CORDIC is “0”, and the multiplexer 416 is selected so as to continuously output “1” as the other input signal to the AND gate 406. Further, the output signal of the AND gate 406 is equal to its ctr5 input signal.
The multiplexer 417 selects | x | as its input signal according to the control bit div_sw having a value of “0”.

【0089】CORDIC の演算の間のコントロール・ビッ
ト sqrt_sw は "0" であり、マルチプレクサ418はその
出力信号として算術的なゼロを選択する。このマルチプ
レクサ418からの出力信号は、繰り返しの演算ステップ
の各々の間に連続的に修正される yout と比較される値
である。マルチプレクサ418によって選択された算術的
なゼロの出力信号は、マルチプレクサ403からの y 出力
信号と比較されて、yがなされるべき修正の方向を指示
する y の符号を決定する。ここでの比較はデジタル比
較器419によってなされ、また、その符号ビットは1 ワ
ード間にわたってラッチ420に記憶される。y が算術的
なゼロであるかまたはこれよりも大きいときには、比較
器419は "1" の出力信号を発生し、そうでないときには
"0" 出力信号を発生する。"1" または "0"のラッチ420
の出力信号は 、 youtの前の値が減少する大きさのyou
tに更新されたときには、yout の前の値を増大させるか
または減少させるかどうか、xoutの前の値が増大した大
きさのxout に更新された ときには、xout の前の値を
減少させるかまたは増大させるかどうか、および、ROM
38 からの arctan 係数 が、累積した回転角 zout が減
少するか増大するかどうか、ということを左右する。
The control bit sqrt_sw during the CORDIC operation is "0" and the multiplexer 418 selects arithmetic zero as its output signal. The output signal from this multiplexer 418 is a value that is compared to yout, which is continuously modified during each of the repetitive operation steps. The arithmetic zero output signal selected by multiplexer 418 is compared to the y output signal from multiplexer 403 to determine the sign of y that indicates the direction of correction y should be made. The comparison here is made by the digital comparator 419, and the sign bit is stored in the latch 420 for one word. When y is arithmetic zero or greater, comparator 419 produces an output signal of "1";
Generates "0" output signal. Latch 420 for "1" or "0"
The output signal of the magnitude you decrease before the value of yout
whether to increase or decrease the previous value of yout when updated to t, or to decrease the previous value of xout when the previous value of xout is updated to an increased size xout Whether to increase and ROM
The arctan coefficient from 38 determines whether the accumulated rotation angle zout decreases or increases.

【0090】マルチプレクサ421において、"0" である
コントロール・ビット sqrt_sw は、前に選択された |x
| 信号を選択し、ビット・シリアルの加算器422に被加
算数入力信号として加わる。この "0"値のコントロール
・ビット sqrt_sw はマルチプレクサ423においても、前
に選択された |x| 信号を選択し、減数入力信号として
ビット・シリアルの減算器424に加わる。加算器422に対
する加数入力信号および減算器424に対する被減算数入
力信号は、それぞれ、マルチプレクサ403からの y出力
信号である。
In the multiplexer 421, the control bit sqrt_sw which is "0" is set to | x
Select the signal and add it to the bit-serial adder 422 as the augend input signal. This "0" value control bit sqrt_sw also selects the previously selected | x | signal in multiplexer 423 and applies it to the bit serial subtractor 424 as a subtraction input signal. The addend input signal to adder 422 and the subtraction input signal to subtractor 424 are the y output signals from multiplexer 403, respectively.

【0091】明細書の以下の記載においては、下添字
(i-1), i, (i+1) は、プロセッサ40における演算ステッ
プの(i-1) 番目、i 番目および (i+1) 番目の繰り返し
を示すものである。
In the following description of the specification,
(i-1), i, (i + 1) indicate the (i-1) -th, i-th, and (i + 1) -th repetitions of the operation steps in the processor 40.

【0092】マルチプレクサ425においては、yi が負で
あるときには、加算器422からの和出力信号が yi と |x
i| とのクロス和として選択され、または、yi が正であ
るときには、減算器424からの差出力信号がその減分ま
たは増分として選択される。マルチプレクサ425からの
出力信号は左シフタ426により2乗され、その結果として
2倍にされた信号がマルチプレクサ407に対する第2の入
力信号として、繰り返しの値 y(i+1) として供給され
る。
In the multiplexer 425, when y i is negative, the sum output signal from the adder 422 becomes y i and | x
i | is selected as a cross sum of the, or, when y i is positive, the difference between the output signal from the subtractor 424 is selected as the decrement or increment. The output signal from multiplexer 425 is squared by left shifter 426, resulting in
The doubled signal is provided as a second input signal to multiplexer 407 as a repeated value y (i + 1) .

【0093】マルチプレクサ403からの yi 信号はスケ
ーラ427において δi = 2-2iによりスケール処理され
て、ディレイ・ライン428においてディレイされ、これ
に次いで、 2-2i・yi の付加したxiのクロス和を発生
させる。ディレイ・ライン428からの出力信号は、ビッ
ト・シリアルの加算器429に対する被加算数入力信号と
して加えられ、また、ビット・シリアルの減算器430に
対する減数入力信号として加えられる。加算器429に対
する加数入力信号および減算器430に対する被減数入力
信号は、それぞれに、マルチプレクサ414からの |x| 入
力信号である。マルチプレクサ431は、yi がゼロまたは
正であることに対応して、加算器429からの和出力信号
をマルチプレクサ409に対する第2の入力信号として選択
し、また、yiが負であることに応答して、減算器430か
らの差出力信号をマルチプレクサ409に対する第2の入力
信号として選択する。このマルチプレクサ409に対する
第2の入力信号は、ctr5 信号がハイであることに応答し
て、その出力信号において繰り返される。
The y i signal from multiplexer 403 is scaled by δ i = 2 −2i at scaler 427 and delayed at delay line 428, followed by x i plus 2 −2 i · y i . Generate a cross sum. The output signal from the delay line 428 is applied as an augend input signal to a bit serial adder 429 and as a subtraction input signal to a bit serial subtractor 430. The addend input signal to adder 429 and the minuend input signal to subtractor 430 are the | x | input signals from multiplexer 414, respectively. Multiplexer 431 selects the sum output signal from adder 429 as the second input signal to multiplexer 409, in response to y i being zero or positive, and responds to y i being negative. Then, the difference output signal from the subtractor 430 is selected as the second input signal to the multiplexer 409. This second input signal to the multiplexer 409 is repeated in its output signal in response to the ctr5 signal being high.

【0094】マルチプレクサ405からの出力信号z は、
ビット・シリアルの加算器432に対する被加算数入力信
号として加えられ、また、ビット・シリアルの減算器43
3に対する被減数入力信号として加えられる。リード・
オンリ・メモリ38から逐次読み取られる arctan 係数
は、加算器432による加数入力信号として用いられる。
更に、sqrt_sw コントロール信号が "0" であるときに
は、CORDIC の演算の間におけるように、マルチプレク
サ434は、ROM 38 からの tandata 信号を減算器433に対
するその減数入力信号として選択する。マルチプレクサ
435は、yi がゼロまたは正であることに応答して、加算
器432からの和出力信号をマルチプレクサ411に対する第
2の入力信号として選択し、また、yiが負であることに
応答して、減算器433からの差出力信号をマルチプレク
サ411に対する第2の入力信号として選択する。このマル
チプレクサ411に対する第2の入力信号は、ctr5 信号が
ハイであることに応答して、その出力信号を繰り返す。
The output signal z from the multiplexer 405 is
It is added as an augend input signal to a bit-serial adder 432 and
Added as the minuend input signal for three. Lead
The arctan coefficient sequentially read from the only memory 38 is used as an addend input signal by the adder 432.
Further, when the sqrt_sw control signal is "0", the multiplexer 434 selects the tandata signal from the ROM 38 as its subtrahend input signal to the subtractor 433, as during the CORDIC operation. Multiplexer
435 outputs the sum output signal from adder 432 to multiplexer 411 in response to y i being zero or positive.
And the difference output signal from the subtractor 433 is selected as the second input signal to the multiplexer 411 in response to y i being negative. The second input signal to the multiplexer 411 repeats its output signal in response to the ctr5 signal being high.

【0095】除算の手順に従う yin/xin の演算の間、
プロセッサ40は分数マシンとして動作するものであり、
xin および yin は最上位ビットが2の補数の算術的な値
の符号ビットでこれに続く2進小数点とからなる。この
yin/xin の演算の間、div_swは "1" である。これによ
り、マルチプレクサ416はその出力信号として飽和算術
回路440からの出力信号を選択する。マルチプレクサ417
において、その出力信号として |x|/2 信号を選択す
る。また、スケーラ427の出力信号を連続的に "0"にす
る。yin の大きさが xin よりも小さいとすると、飽和
算術回路440から発生する "1" のストリングにより、除
算手順が進行する。図15に関して更に詳細に説明される
ように、div_sw 信号が "1" であることにより arctan
係数 ROM回路38 において、第1のペアの CORDIC プログ
ラム命令の間にビット・シリアルの 2-1 を供給し、第2
の連続するペアの CORDIC プログラム命令の間にビット
・シリアルの 2-2 を供給し、第3の連続するペアの COR
DIC プログラム命令の間にビット・シリアルの 2-3
供給する。以下同様に進行する。
During the operation of yin / xin following the procedure of division,
Processor 40 operates as a fractional machine,
xin and yin consist of the sign bit of the two's complement arithmetic value in the most significant bit, followed by the binary point. this
During the operation of yin / xin, div_sw is "1". Thus, the multiplexer 416 selects the output signal from the saturation arithmetic circuit 440 as its output signal. Multiplexer 417
, The | x | / 2 signal is selected as the output signal. Further, the output signal of the scaler 427 is continuously set to “0”. Assuming that the magnitude of yin is less than xin, the string of "1" s generated by the saturation arithmetic circuit 440 causes the division procedure to proceed. As will be described in more detail with respect to FIG. 15, the div_sw signal is "1" so
In the coefficient ROM circuit 38, and supplies the 2 -1 bit-serial between CORDIC program instructions of the first pair, second
Provides a bit serial 2 -2 between consecutive pairs of CORDIC program instructions and a third consecutive pair of CORDIC
Supplies bit-serial 2 -3 during DIC program instructions. The process proceeds in a similar manner.

【0096】連続的に "0" であるスケーラ427の出力信
号は、結果として、算術的なゼロを加数入力信号として
加算器429へ入力するため、その和出力はマルチプレク
サ414から加えらる |x| の被加算入力信号と等しくな
る。また、結果として、算術的なゼロを減数入力信号と
して減算器430へ入力するため、その差出力も、マルチ
プレクサ414から加えられる |x| の被減数入力信号と等
しくなる。従って、yin/xin が演算されているときに
は、マルチプレクサ431の出力信号 |x| が、マルチプレ
クサ414の出力信号に等しくなる。ctr5 が "1" であ
り、要素410, 404および 409 を通してループ内で循環
される時に、この値がマルチプレクサ409で選択された
後では、マルチプレクサ404からの出力信号はその演算
サイクルを通じて(即ち、 cordic_start がハイになる
次の時点まで) |x| である。
The output signal of the scaler 427, which is continuously "0", results in the arithmetic zero being input to the adder 429 as an addend input signal. x |. Also, as a result, since the arithmetic zero is input to the subtractor 430 as the subtraction input signal, the difference output thereof is also equal to the minuend input signal of | x | Therefore, when yin / xin is calculated, the output signal | x | of the multiplexer 431 becomes equal to the output signal of the multiplexer 414. When ctr5 is "1" and is circulated in the loop through elements 410, 404 and 409, after this value is selected by multiplexer 409, the output signal from multiplexer 404 will be transmitted throughout its arithmetic cycle (ie, cordic_start Until the next time that goes high) | x |.

【0097】マルチプレクサ417は、マルチプレクサ404
から維持されている |x| 出力信号の1/2を出力する。こ
の |x|/2 信号は除算の手順において、トライアルの除
数として供給され、加算器422において y に加算される
か、または、減算器424において y から減算される。マ
ルチプレクサ417によって選択されたx/2 信号は、シリ
コン・コンパイラに対して付与される回路図において示
されるように、ビット・シフタ436によって加えられる
ものとして示される。実際には、より下位に向かうビッ
トのシフトは、全ての並列パスにおいて、1ビットだけ
上位にシフトさせるシリコン・コンパイラによってなさ
れる。
The multiplexer 417 includes a multiplexer 404
Outputs half of the | x | output signal maintained from This | x | / 2 signal is supplied as a trial divisor in a division procedure and is added to y in adder 422 or subtracted from y in subtractor 424. The x / 2 signal selected by multiplexer 417 is shown as being applied by bit shifter 436, as shown in the schematic provided for the silicon compiler. In practice, the shifting of the lower bits is done by a silicon compiler that shifts one bit higher in every parallel pass.

【0098】yin/xin の演算の間、コントロール・ビッ
ト sqrt_sw は "0" であり、このために、マルチプレク
サ434において、減算器433に対する減数入力信号として
tandata=2-i を選択する。ctr5 信号が "1" であるそ
れぞれの連続的な時点において、マルチプレクサ405か
らの z なる値が、加算器432において tandata の値の2
-i だけ増大された値として、または、減算器433におい
てtandata の値の 2-iだけ減少された値として、マルチ
プレクサ435で選択される。更新された値 zはディレイ
・ライン412を介してマルチプレクサ405にフィード・バ
ックされ、ctr5 信号が "1" である次の時点において使
用される。マルチプレクサ435によって(および、マル
チプレクサ425および431によって)なされる選択は、被
除数 yまたは修正された被除数をゼロと比較する連続的
なステップの前の演算されたy の符号に従ってなされ
る。前記のステップは、修正される被除数の大きさを小
さくする試行の一つとして、除算の手順において実行さ
れるものである。y(i-1)(y の前の値)がゼロまたは正
であったときは、yi (y の現在の値)の大きさは |x|/
2 を減算することにより減少し、また、加算器432にお
いて tandata=2-iだけ増大したときのマルチプレクサ40
5からの z の値がマルチプレクサ435により選択され
て、z の値を更新する。y(i-1)が負であったときは、yi
(y の現在の値)の大きさは |x|/2 を加算することに
より減少し、また、減算器433において tandata=2-i
け減少したときのマルチプレクサ405からの z の値がマ
ルチプレクサ435により選択されて、zの値を更新する。
During the operation of yin / xin, the control bit sqrt_sw is “0”, which causes the multiplexer 434 to output as the subtraction input signal to the subtractor 433
tandata = 2 Select -i . At each successive point in time when the ctr5 signal is "1", the value z from multiplexer 405 is summed by adder 432 with the value of tandata equal to 2
The value selected by the multiplexer 435 is a value increased by -i or a value reduced by 2 -i of the value of tandata in the subtractor 433. The updated value z is fed back to multiplexer 405 via delay line 412 and is used at the next point in time when the ctr5 signal is "1". The choice made by multiplexer 435 (and by multiplexers 425 and 431) is made according to the sign of the operated-up y before the successive step of comparing the dividend y or the modified dividend with zero. The above steps are performed in a division procedure as one of the attempts to reduce the size of the dividend to be modified. If y (i-1) (the previous value of y) is zero or positive, the magnitude of y i (the current value of y) is | x | /
2 by subtracting 2 and increasing by tandata = 2− i in the adder 432.
The value of z from 5 is selected by multiplexer 435 to update the value of z. If y (i-1) is negative, y i
The magnitude of (current value of y) is reduced by adding | x | / 2, and the value of z from multiplexer 405 when subtracting tandata = 2− i in subtractor 433 is To update the value of z.

【0099】"0"値であるコントロール・ビット sqrt_s
w によりマルチプレクサ418では、算術的なゼロを出力
信号として選択する。マルチプレクサ418によって選択
された算術的なゼロ出力信号は、マルチプレクサ403か
らの出力信号 y と比較されて、y の符号ビットを定め
るが、ここでの比較はデジタル比較器419と、ラッチ420
内に1ワード間記憶されている符号ビットによってなさ
れる。"0"値であるコントロール・ビット sqrt_sw はマ
ルチプレクサ421において、マルチプレクサ417によって
先に選択された |x|/2 信号を、加算器422に対してその
被加算数入力信号として加えることである。この"0"値
であるコントロール・ビット sqrt_swにより更にマルチ
プレクサ423において、先に選択された |x|/2 信号を、
減算器424に対してその減数入力信号として加えること
である。加算器422に対する加数入力信号および減算器4
24に対する被減数入力信号は、それぞれ、マルチプレク
サ403からの y 出力信号である。マルチプレクサ425で
は、y の前の値が負であったときには加算器422から和
出力が選択され、また、y の前の値が正であったときに
は減算器424から差出力が選択される。試行的な除算演
算のステップ間において除算の手順中におけるダイナミ
ック・レンジを維持するために、マルチプレクサ425に
よって選択された y-|x| または y+|x| の値をシフト
することなく下位に1ビット分試行的な除数 |x| をシフ
トさせる手順に従うというよりも、むしろ、マルチプレ
クサ425によって選択された y - |x| または y+ |x|
の値は、試行的な除数 |x| をシフトさせることなく、
上位に1ビット分シフトされる。マルチプレクサ425から
の出力信号がレフト・シフタ426により2と乗算されて、
該当の出力信号の重みが増大し、その結果として2倍に
された信号がマルチプレクサ407に対する第2の入力信号
として加えられる。
Control bit sqrt_s which is a "0" value
Due to w, the multiplexer 418 selects arithmetic zero as an output signal. The arithmetic zero output signal selected by multiplexer 418 is compared with the output signal y from multiplexer 403 to determine the sign bit of y, where the comparison is performed by digital comparator 419 and latch 420.
This is done by the sign bit stored for one word within. The control bit sqrt_sw, which is a "0" value, is to add the | x | / 2 signal previously selected by the multiplexer 417 in the multiplexer 421 to the adder 422 as its augend input signal. The control bit sqrt_sw, which is a “0” value, further causes the multiplexer 423 to multiplex the | x | / 2 signal selected earlier.
That is, the subtraction signal is added to the subtractor 424 as its subtraction input signal. Addend input signal to adder 422 and subtractor 4
The minuend input signals for 24 are the y output signals from multiplexer 403, respectively. In the multiplexer 425, the sum output is selected from the adder 422 when the value before y is negative, and the difference output is selected from the subtractor 424 when the value before y is positive. In order to maintain the dynamic range during the division procedure between the steps of the trial division operation, the lower one bit without shifting the value of y- | x | or y + | x | Rather than following the procedure of shifting the fractional divisor | x |, the y- | x | or y + | x | selected by the multiplexer 425
Without shifting the trial divisor | x |
It is shifted upward by one bit. The output signal from multiplexer 425 is multiplied by 2 by left shifter 426,
The weight of the corresponding output signal is increased, and the resulting doubled signal is added as a second input signal to multiplexer 407.

【0100】飽和算術回路440は1 よりは大きくならな
い商 zout の大きさを維持するために用いられる。商 z
out の大きさを維持するためには、|y| は |x| よりも
小でなければならない。|y|が十分に小さく、該当の除
算が満足のいくように進行できるときにのみ、回路440
は "1" を出す。y が 減算器415からの -x 出力信号を
超えて、負の値の y がレンジ内では大き過ぎないこと
が指示されたときには、回路440内のビット・シリアル
の比較器441によって "1" が発生する。y が x よりも
小であり、正の値の y がレンジ内では大き過ぎないこ
とが指示されたときには、回路440内のビット・シリア
ルの比較器442によってその出力信号としての"1" が発
生される。回路440内の AND ゲート443は、y がレンジ
内にある双方の指示に応答して "1" のストリングを発
生させ、飽和算術回路440からの出力信号として現れる
のに先だって 1-ワード分だけディレイさせるため、デ
ィレイ・ライン444に対する入力信号として加える。正
の y がレンジ外にあるときには、yについての "0" の
符号ビットが過ぎた後で、比較器419からは連続的に "
1" が出力される。そして、zout の累積の結果としてそ
の最大の正の値がもたらされ、"1" のストリングが "0"
の符号ビットによって追従されることになる。負のy
がレンジ外にあるときには、y についての "1" の符号
ビットの後で、比較器419からは連続的に "0" が出力さ
れる。そして、zout の累積の結果としてその最小の負
の値がもたらされ、"0" のストリングが "1" の符号ビ
ットによって追従されることになる。
The saturation arithmetic circuit 440 is used to maintain the magnitude of the quotient zout that does not become greater than one. Quotient z
| y | must be less than | x | to maintain the size of out. Only when | y | is small enough to allow the division to proceed satisfactorily,
Gives "1". When y exceeds the -x output signal from the subtractor 415, indicating that the negative value of y is not too large within the range, a "1" is generated by the bit-serial comparator 441 in the circuit 440. Occur. When y is less than x and a positive value of y is indicated not to be too large within the range, a "1" is generated as its output signal by the bit-serial comparator 442 in circuit 440. Is done. AND gate 443 in circuit 440 generates a string of "1" in response to both indications that y is in range, and is delayed by one-word before appearing as an output signal from saturation arithmetic circuit 440. For this purpose, it is added as an input signal to the delay line 444. When the positive y is out of range, comparator 419 continuously outputs "0" after the sign bit of "0" for y has passed.
1 "is output, and the accumulation of zout results in its largest positive value, and the string" 1 "becomes" 0 "
Will be followed by the sign bit of Negative y
Is outside the range, the comparator 419 outputs "0" continuously after the sign bit of "1" for y. Then, the accumulation of zout results in its least negative value, and the string of "0" will be followed by the sign bit of "1".

【0101】(yin)(1/2) を演算するための平方根演算
の手順は、多くの面において除算演算の手順に類似して
いる。しかしながら、i=1 のときには yi は 被除数 で
あり、そうでないときには剰余の 被除数 であるという
ことよりむしろ、i=1 のときにはyiは被平方根数であ
り、そうでないときは剰余の被平方根数である。除算演
算の手順における試行的な除数は、剰余の 被除数 に除
算されるべき試行的な平方根になり、試行テスト用の根
自体と比較されるべき結果を発生して、被平方根数また
は剰余の 被平方根数が減少されるべきであるかどうか
の決定する。剰余の 被平方根数 に除算されるべき試行
的な平方根は、これまでに抽出された zout の平方根か
ら導出されるべきであることから、別個の xout レジス
タにおける試行テスト用の根自体の追跡を維持する必要
はない。第1の演算ステップにおける試行的な平方根
は、不変の 1/4 または2進の 0.01 である。
(Yin) The procedure of the square root operation for calculating (1/2) is similar in many aspects to the procedure of the division operation. However, rather than saying that y i is the dividend when i = 1, and that it is the remainder dividend otherwise, y i is the square root when i = 1 and otherwise the square root of the remainder. It is. The trial divisor in the division operation procedure becomes the trial square root to be divided by the remainder dividend, producing a result to be compared with the trial test root itself, and the square root or remainder dividend Determine if the square root number should be reduced. Keep track of the trial test root itself in a separate xout register, because the trial square root to be divided by the number of square roots of the remainder should be derived from the square root of zout extracted so far. do not have to. The trial square root in the first operation step is an invariant 1/4 or binary 0.01.

【0102】(yin)(1/2) の演算の間は、コントロール
・ビット div_sw は "0" であり、マルチプレクサ416に
おいて、アンドゲート406に対する他の入力信号とし
て、連続的な "1" を選択し、この AND ゲート416の出
力信号はその ctr5 入力信号が繰り返される。
(Yin ) During the operation of (1/2) , the control bit div_sw is “0”, and the multiplexer 416 selects continuous “1” as another input signal to the AND gate 406. The output signal of the AND gate 416 repeats the ctr5 input signal.

【0103】(yin)(1/2) の演算の間、コントロール・
ビット sqrt_sw は "1" である。図15に関して更に詳細
に説明されるように、これにより arctan 係数 ROM38
が条件付けられて、第1のペアのCORDIC プログラム命令
の間にはビット・シリアルの2-1、第2のペアのCORDIC
プログラム命令の間にはビット・シリアルの2-2、第3の
ペアのCORDIC プログラム命令の間にはビット・シリア
ルの 2-3、等を tandata 信号として供給する。sqrt_sw
信号が "1" であることによりマルチプレクサ421にお
いて、加算器422に対する加数入力信号として算術的な
ゼロを選択する。従って、その和出力信号はその被加算
数入力信号 y と等しくなり、剰余の被平方根数 を減少
させることだけが可能になる。前記の sqrt_sw 信号が
"1" であることにより、マルチプレクサ423において、
ビット・シリアルの加算器437の和出力信号に当る試行
的な平方根が減算器424の減数入力信号として選択さ
れ、ここでの加算器437は、マルチプレクサ405からの z
出力信号をその被加算数入力信号として受け入れ、tan
data/2 をその加数入力信号としてするものである。こ
こでの tandata/2 信号は、シリコン・コンパイラに対
して付与される回路図において示されているように、ビ
ット・シフタ438によって加算器437に加えられるものと
して示されているが、実際に下位に向かうときのビット
・シフトは、全ての並列パスにおいて シリコン・コン
パイラでは1ビット分だけ上位にシフトさせることによ
りなされている。sqrt_sw 信号が "1" であることによ
りマルチプレクサ434において、減算器433に対する減数
入力信号として算術的なゼロを選択する。従って、それ
が生じたときには、平方根の累積が固定的に増分するこ
とになる。更に、sqrt_sw 信号が "1" であることによ
りマルチプレクサ418において、y(i+1) が減少されるべ
きか否かを定めるために、被平方根数 または剰余の 被
平方根数 yi と比較される試行的な平方根を選択する。
(Yin) During the operation of (1/2) , control
Bit sqrt_sw is "1". As described in further detail with respect to FIG.
Is conditioned, between the first pair of CORDIC program instructions is a bit serial 2 -1 , the second pair of CORDIC
Bit serial 2 -2 is supplied as a tandata signal between program instructions, bit serial 2 -3 , etc., between the third pair of CORDIC program instructions. sqrt_sw
Since the signal is "1", the multiplexer 421 selects arithmetic zero as an addend input signal to the adder 422. Therefore, the sum output signal is equal to the augend input signal y, and it is only possible to reduce the square root of the remainder. The sqrt_sw signal is
By being "1", in the multiplexer 423,
A trial square root corresponding to the sum output signal of the bit serial adder 437 is selected as the subtraction input signal of the subtractor 424, where the adder 437
Accept the output signal as its augend input signal,
data / 2 as its addend input signal. The tandata / 2 signal here is shown as being added to the adder 437 by the bit shifter 438, as shown in the schematic provided for the silicon compiler, but is actually The bit shift when going to is done by shifting up by one bit in the silicon compiler in all parallel paths. Since the sqrt_sw signal is "1", the multiplexer 434 selects arithmetic zero as a subtraction input signal to the subtractor 433. Thus, when that occurs, the accumulation of the square root will be fixedly incremented. Further, the sqrt_sw signal is compared to the square root number or the remainder square root number y i at multiplexer 418 to determine whether y (i + 1) should be reduced by being a "1" signal. Choose a trial square root.

【0104】図14に、スケーラ427の動作について更に
詳細に示す。信号 ctr5、ctr6、ctr7、ctr8、ctr9 およ
び ctr10 は、(図2における)カウンタ103のカウント
出力の上位6個ビットについて示す。OR ゲート4270は、
yin/xin の演算の間、div_swコントロール・ビットが "
1" であることに応答して、マルチプレクサ4271におい
て、スケーラ回路427の他の入力信号として算術的なゼ
ロを選択して、出力信号が算術的なゼロになる。このOR
ゲート4270は、フル・カウントにおいて "1"に達する
カウンタ103からの ctr10 出力に応答して、スケーラ回
路427に対する他の入力信号として算術的なゼロを選択
して、その結果としての出力信号が算術的なゼロになる
ようにされる。
FIG. 14 shows the operation of the scaler 427 in more detail. Signals ctr5, ctr6, ctr7, ctr8, ctr9 and ctr10 indicate the upper 6 bits of the count output of counter 103 (in FIG. 2). OR gate 4270
During the yin / xin operation, the div_sw control bit is set to "
In response to being 1 ", the multiplexer 4271 selects arithmetic zero as the other input signal of the scaler circuit 427, and the output signal becomes arithmetic zero.
Gate 4270 selects an arithmetic zero as another input signal to scaler circuit 427 in response to the ctr10 output from counter 103 reaching "1" at full count, and the resulting output signal is It is made to be zero.

【0105】OR ゲート4270の出力信号が "1" であると
きを除き、スケーラ427はカウンタ103からの ctr6,ctr
7,ctr8 および ctr9 信号の16個の連続的なカウント条
件に応答して、スケーラ427に加えられるビット・シリ
アルの信号 y で参照されるように、該当のカウントに
おけるビットの2倍の数だけ、信号 yを右にシフトし、
スケーラ427からのビット・シリアル信号 ys を出力す
る。
Except when the output signal of the OR gate 4270 is “1”, the scaler 427 outputs ctr6 and ctr from the counter 103.
In response to 16 consecutive counting conditions of the 7, ctr8 and ctr9 signals, as referenced by the bit-serial signal y applied to the scaler 427, by twice the number of bits in the corresponding count, Shift the signal y to the right,
The bit serial signal ys from the scaler 427 is output.

【0106】図14に、ctr6 信号が "1" であることに応
答して 4 なるファクタによって選択的に除算するため
に用いられる2-ビット・ライト・シフタ4272とマルチプ
レクサ4273、ctr7 信号が "1" であることに応答して 1
6 なるファクタによって選択的に除算するために用いら
れる4-ビット・ライト・シフタ4274とマルチプレクサ42
75,ctr8 信号が "1" であることに応答して 256 なるフ
ァクタによって選択的に除算するために用いられる8-ビ
ット・ライト・シフタ4276とマルチプレクサ4277,ctr9
信号が "1" であることに応答して 65 536なるファクタ
によって選択的に除算するために用いられる16-ビット
・ライト・シフタ4278とマルチプレクサ4279がそれぞれ
示されている。実際下位に向かうビットのシフトは、全
ての並列信号パスにディレイを導入してそれらの並列信
号パスを上位に向けてシフトさせるシリコン・コンパイ
ラによって提供される。ライト・シフタそれ自体はビッ
ト・シリアルのフォーマットでは利用可能ではないこと
から、この手順の全ての並列信号パスにおいてレフト・
シフタを用いる手続が必要である。
FIG. 14 shows a 2-bit write shifter 4272 and a multiplexer 4273 and a ctr7 signal used for selectively dividing by a factor of 4 in response to the ctr6 signal being "1". 1 in response to being
6 4-bit write shifter 4274 and multiplexer 42 used to selectively divide by a factor of
75, ctr8 8-bit write shifter 4276 and multiplexer 4277, ctr9 used to selectively divide by a factor of 256 in response to signal being "1"
Shown are 16-bit write shifters 4278 and multiplexers 4279, respectively, used to selectively divide by a factor of 65 536 in response to the signal being a "1". In fact, shifting bits downwards is provided by a silicon compiler that introduces a delay in all parallel signal paths and shifts those parallel signal paths upward. Since the right shifter itself is not available in a bit-serial format, the left shift is required for all parallel signal paths in this procedure.
Procedures using shifters are required.

【0107】図15には、arctan 係数 ROM 38 がより詳
細に示されている。実際の ROM 38に対して縮小サイズ
が、小さい角度においてはtanjent(正接) 関数は角度に
対して殆ど直線的に比例しているという事実によって可
能になった。従って、実際のROM 38 には、2のマイナス
のベキ乗の傾斜をする tanjentを有する8個の最大角だ
けの arctan 係数を記憶する。これらの arctan 係数は
カウンタ103の ctr6、ctr7 および ctr8 出力によって
アドレスされる。記憶されている arctan 係数は16-ビ
ット長であるけれども、16個の後続する "0" で追従す
ることにより、ROM 38 内の並列入力/直列出力の出力レ
ジスタを介して読み取られる。そして、この ROM 38 か
らの直列出力はディレイ・ライン381でディレイされ
て、該16個の後続する "0" が先頭の "0" として現れる
ようなシフトがなされる。2入力 ORゲート382に対する
入力信号として加えられるカウンタ103の ctr9 および
ctr10信号が、カウンタ103の最初の 29カウント(CORDI
C 演算における8サイクル)の間、双方ともに "0" であ
る限りは、該 OR ゲート382の出力信号は "0" であり、
これによりマルチプレクサ383において、ROM 380からの
arctan 係数 を更に別のマルチプレクサ384に対する入
力信号として選択する。"0" である OR ゲート385から
の出力信号に応答して、マルチプレクサ383からの arct
an 出力信号は、マルチプレクサ384の出力信号として繰
り返す。その入力信号として受け入れる sqrt_sw およ
び div_sw 信号が双方ともに "0" である限りは、即
ち、yin/xin の arctan の演算の間は、OR ゲート385か
らの出力信号は "0" である。
FIG. 15 shows the arctan coefficient ROM 38 in more detail. The reduced size for the actual ROM 38 was made possible by the fact that at small angles the tanjent function was almost linearly proportional to angle. Therefore, the actual ROM 38 stores the arctan coefficients of only the eight maximum angles having a tanjent having a slope of a power of two. These arctan coefficients are addressed by the ctr6, ctr7 and ctr8 outputs of counter 103. Although the stored arctan coefficients are 16-bit long, they are read through the parallel input / serial output output registers in ROM 38 by following up with the 16 trailing "0" s. Then, the serial output from the ROM 38 is delayed by a delay line 381 and shifted so that the 16 succeeding "0" appear as the leading "0". Ctr9 of counter 103 and 2
ctr10 signal, the first two 9 counts of the counter 103 (CORDI
As long as both are "0" for eight cycles in the C operation, the output signal of the OR gate 382 is "0",
This allows multiplexer 383 to read from ROM 380
The arctan coefficient is selected as the input signal to yet another multiplexer 384. In response to the output signal from OR gate 385 being "0", arct from multiplexer 383 is output.
the output signal repeats as the output signal of multiplexer 384. As long as the sqrt_sw and div_sw signals accepted as its input signals are both "0", that is, during the operation of the arctan of yin / xin, the output signal from the OR gate 385 is "0".

【0108】arctan yin/xin の演算の間、マルチプレ
クサ384からの tandata 出力信号は、ディレイ・ライン
386において1ワード分だけディレイされて、マルチプレ
クサ387に入力信号の一つとして加えられる。マルチプ
レクサ387の他方の入力信号は半分の大きさのものであ
って、ディレイ・ライン386の出力信号からビット・シ
フタ388によって発生される。ctr5 コントロール信号に
よりマルチプレクサ387において、ctr5 信号が "1" で
あるときにはより大きい入力信号の繰り返しを行い、ま
た、ctr5信号が "0" であるときにはより小さい入力信
号の繰り返しを行うようにする。カウンタ103の最初の
2の9乗 のカウント(CORDIC 演算の8サイクル)の後で
は、OR ゲート382の出力信号は "1" であり、マルチプ
レクサ383において、マルチプレクサ387からの出力信号
を繰り返す。従って、連続的な偶数の CORDIC 演算サイ
クル毎に、ROM 380 に記憶されている最小の arctan 係
数が1/2 にされて、マルチプレクサ384の tandata 出力
として現れる。
During the operation of arctan yin / xin, the tandata output signal from multiplexer 384 is a delay line
Delayed by one word at 386 is applied to multiplexer 387 as one of the input signals. The other input signal of the multiplexer 387 is half the magnitude and is generated by the bit shifter 388 from the output signal of the delay line 386. The ctr5 control signal causes the multiplexer 387 to repeat larger input signals when the ctr5 signal is "1" and to repeat smaller input signals when the ctr5 signal is "0". First of counter 103
After the 2 9th count (8 cycles of the CORDIC operation), the output signal of the OR gate 382 is "1", and the multiplexer 383 repeats the output signal from the multiplexer 387. Thus, for each successive even CORDIC operation cycle, the minimum arctan coefficient stored in ROM 380 is halved and appears as the tandata output of multiplexer 384.

【0109】yin/xin の演算または yin の平方根の演
算の間は、OR ゲート385の一方の入力信号は "1" であ
り、マルチプレクサ384において、マルチプレクサ383の
arctan 出力信号では無く、その tandata 出力信号に
おけるマルチプレクサ388の出力信号を繰り返す。cordi
c_start 信号がハイであるときには、CORDIC 命令の最
初のサイクルに、マルチプレクサ388はビット・シリア
ルの 2-1 をその出力信号として選択し、このために、t
andata 信号も 2-1 になる。その後、マルチプレクサ38
8はマルチプレクサ387の出力信号を繰り返し出力し、こ
のために、偶数のCORDIC 命令毎にビット・シリアルの
2-1 が半分にされて、マルチプレクサ384からの tandat
a 出力信号が現れる。
During the operation of yin / xin or the square root of yin, one input signal of the OR gate 385 is “1”, and the multiplexer 384 outputs the signal of the multiplexer 383.
The output signal of the multiplexer 388 in the tandata output signal is repeated instead of the arctan output signal. cordi
When c_start signal is high, the first cycle of CORDIC instructions, multiplexer 388 selects the 2 -1 bit-serial as its output signal, for this, t
The andata signal is also 2 -1 . Then multiplexer 38
8 repeatedly outputs the output signal of the multiplexer 387, thereby providing a bit serial output for each even CORDIC instruction.
2 -1 is halved and tandat from multiplexer 384
a Output signal appears.

【0110】図16における CORDIC プロセッサ40によれ
ば、マルチプレクサ401により選択された xin 入力信号
を受け取り、また、マルチプレクサ402により選択され
た yin 入力信号を受け取り。 CORDIC プロセッサ40
は、ビット・シリアルの yout出力信号およびビット・
シリアルの zout 出力信号を同時に出力するが、これら
の信号は2入力のマルチプレクサ400のそれぞれの入力ポ
ートに加えられる。マルチプレクサ400によって選択さ
れたビット・シリアルの yout または zout 出力信号
は、マルチプレクサ401および402に対するそれぞれの入
力信号としてフィード・バックされて、連続的な演算が
CORDIC プロセッサ40によって可能にされる。電力計測
への適用においては、プロセッサ40が ns または f の
演算をする時にのみ、該 CORDIC プロセッサ40の出力デ
ータが乗算-加算プロセッサ30に対して戻される。ns
よび f を乗算-加算プロセッサ30にフィード・バックす
るために、マルチプレクサ400の出力信号により、適当
な接続のもとにレジスタ・バンク19内のレジスタ192お
よび194にそれぞれの入力信号が書き込まれる。
According to the CORDIC processor 40 in FIG. 16, the xin input signal selected by the multiplexer 401 is received, and the yin input signal selected by the multiplexer 402 is received. CORDIC processor 40
Is the bit serial yout output signal and the bit
The serial zout output signals are output simultaneously, but these signals are applied to the respective input ports of a two-input multiplexer 400. The bit-serial yout or zout output signal selected by multiplexer 400 is fed back as the respective input signal to multiplexers 401 and 402 for continuous operation.
Enabled by CORDIC processor 40. In the power measurement application, the output data of the CORDIC processor 40 is returned to the multiplication-addition processor 30 only when the processor 40 performs the operation of n s or f. The output signals of multiplexer 400 cause the respective input signals to be written to registers 192 and 194 in register bank 19 under appropriate connections to feed back ns and f to multiply-add processor 30. .

【0111】図1に関して先に注意されたように、CORDI
C プロセッサ40を介する処理は時分割切り替え法に基づ
いてなされているものであり、また、これと同時に2個
の関数を計測することがが能である。各 CORDIC 命令サ
イクルの第1ワード期間、ハイである cordic_start 信
号、および、ハイである load1_sw 信号の双方に応答し
て、AND ゲート68が "1" 出力信号を発生し、関数 digo
ut1 についてのビット・シリアルの指示を、ビット・シ
リアルの出力レジスタ60にロードすることを指示する。
各 CORDIC 命令サイクルの第1ワード期間、ハイである
cordic_start信号、および、ハイである load2_sw 信号
の双方に応答して、AND ゲート69が "1" 出力信号を発
生し、関数 digout2についてのビット・シリアルの指示
を、ビット・シリアルの出力レジスタ62にロードするこ
とを指示する。
As noted above with respect to FIG.
The processing via the C processor 40 is performed based on the time division switching method, and it is effective to measure two functions at the same time. In response to both the high cordic_start signal and the high load1_sw signal during the first word period of each CORDIC instruction cycle, AND gate 68 generates a "1" output signal, and the function digo
Indicates that the bit serial instruction for ut1 is to be loaded into the bit serial output register 60.
High during the first word of each CORDIC instruction cycle
In response to both the cordic_start signal and the load2_sw signal being high, the AND gate 69 generates a "1" output signal and loads the bit-serial instruction for the function digout2 into the bit-serial output register 62. To do so.

【0112】パルス幅変調器64および66の各々がアクセ
スする共有の PDM カウンタ(特に図示されてはいな
い)は、クロック発生器100(図1参照)に含まれているビ
ット・シリアルのカウンタであって、クロック発生器10
0におけるクリスタル発振器の10 MHz のモヂュラー数
(例えば 215)をカウントするものである。パルス幅変
調器64に含まれているそれぞれのビット・シリアルの比
較器(特に図示されてはいない)は、ビット・シリアル
の形式の digout1 を PDM カウンタから出されるビット
・シリアルのカウントと比較するためのものであり、こ
れによってその出力パルス列を発生する。同様にして、
パルス幅変調器66に含まれているそれぞれのビット・シ
リアルの比較器(特に図示されてはいない)は、ビット
・シリアルの形式の digout2を PDM カウンタから出さ
れるビット・シリアルのカウントと比較するためのもの
であり、これによってその出力パルス列を発生する。パ
ルス幅の周期は1024 BSLであり、分解能を10bit とすれ
ばワード(32bit)単位でのカウントを実行すればよい。
分解能をさらに上げるためにはワード内での分割が必要
となり、例えば2bit 付加された場合を考慮すると、dig
out1 または digout2 信号の上位11位および12位のビッ
トが、00、01、10または11に対応して、0, 1/4,1/2, 3/
4のワードの時間分割を行ない、 "1"値の信号を選択的
に発生させる。これにより1024BSLのパルス周期におい
て、12 bitの分解能が実現出来る。
The shared PDM counter (not specifically shown) accessed by each of pulse width modulators 64 and 66 is a bit-serial counter included in clock generator 100 (see FIG. 1). Clock generator 10
It counts the number of crystal oscillators of 10 MHz at 0 (for example, 2 15 ). Each bit-serial comparator (not specifically shown) included in the pulse width modulator 64 compares digout1 in bit-serial form with the bit-serial count coming out of the PDM counter. Which generates its output pulse train. Similarly,
Each bit-serial comparator (not shown) included in the pulse width modulator 66 compares digout2 in bit-serial form with the bit-serial count coming out of the PDM counter. Which generates its output pulse train. The cycle of the pulse width is 1024 BSL, and if the resolution is 10 bits, the count may be executed in words (32 bits).
In order to further increase the resolution, division within a word is necessary. For example, considering the case where 2 bits are added, dig
The upper 11th and 12th bits of the out1 or digout2 signal are 0, 1/4, 1/2, 3 /, corresponding to 00, 01, 10 or 11
Time division of 4 words is performed to selectively generate a signal of "1" value. Thereby, a resolution of 12 bits can be realized in a pulse cycle of 1024 BSL.

【0113】図16に示されている PDM 発生器66は、第1
の入力信号として2入力の排他的 ORゲート70に接続され
ている。そして、load1_sw 信号および load2_sw信号の
双方がハイであり、これと同時に cordic_start パルス
がハイであるときを除き、この排他的 OR ゲート70の p
dm2 出力信号は該 PDM 発生器66からのパルスに対応し
ている。これらの状態の下では、digout1 と digout2
に対応して、それぞれPDM 発生器64および66からパルス
出力される。マルチプレクサ71はAND ゲート68および69
の出力信号を入力信号として、2個の "1" を受け入れ、
これに応答して、その出力信号としての "1" を生成す
る。マルチプレクサ71の出力信号は、その第2の入力信
号として排他的 OR ゲート70に加えられる。排他的 OR
ゲート70からの pdm2 信号は、PDM 発生器66からのパル
スの補数に当るものである。かくして、PDM 発生器64お
よび66は、センター読み取り式の D'Arsonval メータに
対するプッシュプル・ドライブのために配列されてい
る。1ビットのディレイ72は、AND ゲート68の出力信号
が "0" に戻るときに、マルチプレクサ71からの出力信
号の状態をラッチするように接続されている。
The PDM generator 66 shown in FIG.
Are connected to a two-input exclusive OR gate 70 as an input signal. Then, except when both the load1_sw and load2_sw signals are high and at the same time the cordic_start pulse is high, the p
The dm2 output signal corresponds to the pulse from the PDM generator 66. Under these conditions, digout1 and digout2
Are output from the PDM generators 64 and 66, respectively. Multiplexer 71 is AND gates 68 and 69
Accepts two "1" s with the output signal of
In response, it generates "1" as its output signal. The output signal of multiplexer 71 is applied to exclusive OR gate 70 as its second input signal. Exclusive OR
The pdm2 signal from gate 70 is the complement of the pulse from PDM generator 66. Thus, PDM generators 64 and 66 are arranged for a push-pull drive to a center read D'Arsonval meter. The one-bit delay 72 is connected so as to latch the state of the output signal from the multiplexer 71 when the output signal of the AND gate 68 returns to “0”.

【0114】マルチプレクサ400によって選択されたビ
ット・シリアルの yout または zout出力信号は、ノー
マライザ39に対する入力信号として加えられる。図1の
先の説明において注意されているように、このノーマラ
イザ39は CORDIC プロセッサ40と協同して更に別の基本
的な関数計算をする。 (e)[sign(oa2) ]*(yin - L)/M この関数によれば、まずメータのゼロを定数 L で変換
し、これに次いで、変換された読み取りをファクタ M
でスケール・ダウンすることにより、図1のメータ61,6
3,65および67のようなメータ上で、拡長スケールの読み
が可能となる。電力の計測において、この関数は固定的
な最後の演算であることから、最後の演算に対する yin
信号は、最後から2番目の演算 に対するマルチプレク
サ400の yout出力信号に等しくなる。L および M はPRO
M 9 からのCORDIC プログラム命令における定数であ
り、図2の要素98および984-986から抽出されて、ノーマ
ライザ39に加えられるものである。マルチプレクサ402
に加えるべき出力信号としては、減算器391からの差出
力信号または減算器392からの差出力信号のいずれか
が、マルチプレクサ390によって選択される。マルチプ
レクサ400からの yout 信号は減算器391において L か
ら減算され、また、L は減算器392において当該 yout
信号から減算される。M はその入力信号としてマルチプ
レクサ401に直接加えられて、マルチプレクサ402によっ
てノーマライザ39からプロセッサ40に対して選択された
(yout-L)なる被除数に対する xin なる除数として、
(CORDIC プロセッサ40による最後の演算において)用
いられる。
The bit serial yout or zout output signal selected by multiplexer 400 is applied as an input signal to normalizer 39. As noted in the previous description of FIG. 1, this normalizer 39 performs yet another basic function calculation in cooperation with the CORDIC processor 40. (E) [sign (oa2)] * (yin-L) / M According to this function, the meter's zero is first converted by a constant L, and then the converted reading is factor M
By scaling down with
On meters such as 3,65 and 67, extended scale readings are possible. In power measurement, this function is a fixed last operation, so yin for the last operation
The signal is equal to the yout output signal of multiplexer 400 for the penultimate operation. L and M are PRO
Constants in the CORDIC program instruction from M 9, extracted from elements 98 and 984-986 of FIG. 2 and added to normalizer 39. Multiplexer 402
Either the difference output signal from the subtractor 391 or the difference output signal from the subtractor 392 is selected by the multiplexer 390 as the output signal to be added to The yout signal from the multiplexer 400 is subtracted from L in the subtractor 391, and L is subtracted from the yout signal in the subtractor 392.
Is subtracted from the signal. M is directly applied to multiplexer 401 as its input signal, and as a divisor of xin to a dividend of (yout-L) selected from normalizer 39 to processor 40 by multiplexer 402,
(In the last operation by the CORDIC processor 40).

【0115】oa2 の極性である sign(oa2) は、サンプ
ル・ホールド回路394において oa2のビット31をサンプ
ルホールドすることにより、レジスタ196に記憶されて
いるoa2 ビットの直列データから決定される。サンプル
され、ホールドされた sign(oa2) は、回路394から2入
力の AND ゲート395に加えられる。この AND ゲート395
の他方の入力信号はsq_sw であり、sign(oa2) が負であ
ることに従って、最終の CORDIC 出力の極性を変化させ
たいときを除いて、全ての CORDIC 演算の間 "0" であ
る。信号 sq_sw が "0" であるときには AND ゲート395
の出力信号は "0" であり、また、この信号 sq_sw が "
1" であるときには[sign(oa2) ]である。排他的 OR
ゲート396は、AND ゲート395の出力信号および n_sw 信
号を入力信号として受け入れ、そして、マルチプレクサ
390において、減算器391および減算器392からの出力信
号の選択をコントロールする。digout1 および pdm1 出
力信号の極性、または、 digout2 および pdm2 出力信
号の極性を反転させたいときには、この n_sw 信号をハ
イとする。n_sw 信号が "1" であるときには、排他的OR
ゲート396において、AND ゲート395の出力信号が "0"
であるときには減算器391からの(L-yout)なる差信号
がその出力信号として、また、該AND ゲート395の出力
信号が "1" であるときには減算器392からの(yout-L)
なる差信号がその出力信号となるよう、マルチプレクサ
402を選択する。n_sw 信号が "0" であるときには、排
他的 OR ゲート396により、AND ゲート395の出力信号が
"0" であるときには減算器392からの(yout-L)なる差
信号がその出力信号として、また、該AND ゲート395の
出力信号が "1"であるときには減算器391からの(L-you
t)なる差信号がその出力信号として、マルチプレクサ4
02において選択される。
The polarity of oa2, sign (oa2), is determined from the oa2 bit serial data stored in the register 196 by sampling and holding the bit 31 of oa2 in the sample and hold circuit 394. The sampled and held sign (oa2) is applied from circuit 394 to a two-input AND gate 395. This AND gate 395
The other input signal is sq_sw, which is "0" during all CORDIC operations, except when it is desired to change the polarity of the final CORDIC output according to the sign (oa2) being negative. When the signal sq_sw is "0", the AND gate 395
Is "0" and this signal sq_sw is "
If it is 1 ", it is [sign (oa2)]. Exclusive OR
Gate 396 receives the output signal of nand gate 395 and the n_sw signal as input signals, and
At 390, the selection of the output signal from the subtractor 391 and the subtractor 392 is controlled. To invert the polarity of the digout1 and pdm1 output signals or the polarity of the digout2 and pdm2 output signals, set the n_sw signal to high. Exclusive OR when n_sw signal is "1"
In the gate 396, the output signal of the AND gate 395 is "0"
, The difference signal (L-yout) from the subtractor 391 is used as its output signal, and when the output signal of the AND gate 395 is "1", (yout-L) from the subtractor 392 is used.
Multiplexer so that the difference signal becomes the output signal.
Select 402. When the n_sw signal is "0", the output signal of the AND gate 395 is output by the exclusive OR gate 396.
When it is "0", the difference signal (yout-L) from the subtractor 392 is used as its output signal, and when the output signal of the AND gate 395 is "1", (L-you
t) is the output signal of the multiplexer 4
Selected at 02.

【0116】図17には、CORDIC プロセッサ40に対する
命令のフォーマットが示されている。これらの命令は3
つの主要なフィールドを有している。即ち、CORDIC プ
ロセッサ40において入力、および機能の選択をコントロ
ールする9ビット・フィールド、ロードおよびコントロ
ールのフラグ信号に対する7-ビット・フィールド、およ
び、CORDIC 係数(RC-coef 値)に対する16-ビット・フ
ィールドである。ロードおよびコントロールのフラグ信
号に対する7-ビット・フィールドには、4個の単一ビッ
トのロード信号が含まれている。即ち、f_sw、ns_sw、l
oad1_sw に対応する load1、および、load2_sw に対応
する load2 が含まれている。このロードおよびコント
ロールのフラグ信号に対する7-ビット・フィールドに
は、3個の単一ビットのコントロール信号も含まれてい
る。即ち、図16のノーマライザ39によって用いられる s
q_sw と n_sw、および、CORDIC 命令カウンタ108におけ
るカウントの実施をコントロールするために、図12にお
ける AND ゲート1010に加えられる cordic_inc 命令に
対応する inc である。CORDIC プロセッサ40において入
力および機能の選択をコントロールする9ビット・フィ
ールドは、yin の選択をコントロールする3ビット部分
を有し、xin の選択をコントロールする別の3ビット部
分を有し、そして、プロセッサ40によって実行される機
能を選択する更に別の3ビット部分を有している。
FIG. 17 shows the format of an instruction for the CORDIC processor 40. These instructions are 3
It has two main fields. That is, in the CORDIC processor 40, a 9-bit field for controlling the input and function selection, a 7-bit field for the load and control flag signals, and a 16-bit field for the CORDIC coefficient (RC-coef value). is there. The 7-bit field for the load and control flag signals contains four single bit load signals. That is, f_sw, ns_sw, l
Load1 corresponding to oad1_sw and load2 corresponding to load2_sw are included. The 7-bit field for this load and control flag signal also contains three single bit control signals. That is, s used by the normalizer 39 in FIG.
q_sw and n_sw, and inc corresponding to the cordic_inc instruction added to AND gate 1010 in FIG. 12 to control the implementation of the count in CORDIC instruction counter 108. The 9-bit field that controls input and function selection in CORDIC processor 40 has a 3-bit portion that controls the selection of yin, another 3-bit portion that controls the selection of xin, and Has a further 3-bit part that selects the function to be performed by

【0117】図18には、入力および機能のコード化が詳
細に表示されている。RC は、図16におけるマルチプレ
クサ400から供給されるような、プロセッサ40による前
の計算の結果に当るものである。RC-coef は、現在の C
ORDIC 係数の値であり、また、RC-coef-1 は、現在の C
ORDIC 係数の1つ前における CORDIC 係数の値である。
FIG. 18 shows the coding of inputs and functions in detail. RC is the result of a previous calculation by processor 40, such as provided by multiplexer 400 in FIG. RC-coef is the current C
Is the value of the ORDIC coefficient, and RC-coef -1 is the current C
The value of the CORDIC coefficient immediately before the ORDIC coefficient.

【0118】図19は、電力メータ IC5 におけるプロセ
ッサ30および40によって実行される計算の流れを示す図
である。乗算-加算プロセッサ30に対する一つの命令
は、6チャンネルの decimation フィルタ20からプロセ
ッサ30に対して、逐次時分割に切り替えられる32ビット
ワードの入力毎に実行される。CORDIC プロセッサ40に
対する命令の1つが実行される間に、この乗算-加算プロ
セッサ30に対する完全な1サイクル64個の命令が実行さ
れる。CORDIC プロセッサ40に対する命令の一つを実行
するための時間は、シグマ・デルタ変調器21-26に対す
るオーバ・サンプリング間隔に等しい。
FIG. 19 is a diagram showing a flow of calculations executed by the processors 30 and 40 in the power meter IC5. One instruction to the multiplication-addition processor 30 is executed from the 6-channel decimation filter 20 to the processor 30 for each input of a 32-bit word that is sequentially switched to time division. While one of the instructions to CORDIC processor 40 is being executed, a complete cycle of 64 instructions to multiply-add processor 30 is executed. The time to execute one of the instructions to CORDIC processor 40 is equal to the oversampling interval for sigma-delta modulators 21-26.

【0119】最初の手順は、電流トランス11-16におけ
る非直線性を補償するために、decimation フィルタ20
から供給されるv1、i1、v2、i2、v3 および i3 のビッ
ト・シリアルのデジタルデータを直線化することであ
る。電流トランス11-16およびこれらとともに用いられ
るスケール用抵抗は、電力メータ IC5 と一緒にプリン
ト回路基板上に搭載され、その製造中に、全体的のプリ
ント回路基板アセンブリがユニットとしてテストされ
て、該電流トランス11-16に関連する非直線性の係数が
決定される。これらの係数は当該アセンブリに含まれて
いる PROM 9 に書き込まれる。これらの非直線性の係数
は乗算-加算プロセッサ30により使用されて、decimatio
n フィルタ20から加えられるv1、i1、v2、i2、v3 およ
び i3 のビット・シリアルのデジタルデータについて、
それぞれ3次多項式を用いて補正される。これらそれぞ
れの多項式補正の後、それぞれハイ・パス・フィルタリ
ングされ、シグマ・デルタ変調器21-26におけるオフセ
ット・エラーである直流成分を除去する。
The first procedure is to compensate for the non-linearity in the current transformer 11-16 by using the decision filter 20.
Is to linearize the bit serial digital data of v 1 , i 1 , v 2 , i 2 , v 3 and i 3 supplied from. The current transformers 11-16 and the scale resistors used with them are mounted on a printed circuit board together with the power meter IC5, and during its manufacture, the entire printed circuit board assembly is tested as a unit and the current A coefficient of non-linearity associated with the transformer 11-16 is determined. These coefficients are written to PROM 9 included in the assembly. These nonlinearity coefficients are used by the multiply-add processor 30 to determine
For the bit serial digital data of v 1 , i 1 , v 2 , i 2 , v 3 and i 3 added from n filter 20,
Each is corrected using a third-order polynomial. After each of these polynomial corrections, each is high-pass filtered to remove the DC component that is an offset error in the sigma-delta modulators 21-26.

【0120】ここで図19に示されている手順を参照する
と、ステップ LIN1,LIN3 および LIN5 の各々におい
て、 vkのそれぞれ補正された値 vck は、PROM 9 から
読み取られた直線化係数Ak および Bk と、先に演算さ
れた利得係数 Γvk を用いて、 vkの全てのサンプルに
対して乗算-加算プロセッサ30により演算される。ここ
での演算は次の等式に従ってなされる。 vck ={[(Ak*vk)+Bk]vk+Γvk}vk k=1,2,3 (1)
Referring now to the procedure shown in FIG. 19, in each of the steps LIN1, LIN3 and LIN5, the respective corrected value v ck of v k is determined by the linearization coefficient A k read from PROM 9 And B k and the previously calculated gain coefficient Γ vk are used by multiply-add processor 30 for all samples of v k . The calculation here is performed according to the following equation. v ck = {[(A k * v k ) + B k ] v k + Γ vk } v k k = 1,2,3 (1)

【0121】ステップ LIN2,LIN4 および LIN6 の各々
において、ik のそれぞれ補正された値 ick は、PROM 9
から読み取られた直線化係数 Dk および Ek と、先
に演算された利得係数 Γik を用いて、ik の全てのサ
ンプルに対して乗算-加算プロセッサ30により演算され
る。ここでの演算は次の等式に従ってなされる。 ick ={[(Dk*ik)+Ek]ik+Γik}ik k=1,2,3 (2)
[0121] In each of the steps LIN2, LIN4 and LIN6, respectively corrected value i ck of i k are, PROM 9
Are calculated by the multiply-add processor 30 for all samples of i k using the linearization coefficients D k and E k read from, and the previously calculated gain coefficient Γ ik . The calculation here is performed according to the following equation. i ck = {[(D k * i k ) + E k ] i k + Γ ik } i k k = 1,2,3 (2)

【0122】ステップ LIN1,LIN3 および LIN5 に続く
ステップ HPF1,HPF3 および HPF5 の各々において、vck
に対するそれぞれにハイ・パス・フィルタの応答 vhk
は、PROM 9 から読み取られる定数 P を用いて、vck
全てのサンプルに対して乗算-加算プロセッサ30によっ
て演算される。この演算は以下の等式に従ってなされる
が、ここに、z-1 は32ビットのBSLに対する1ワードのデ
ィレイのオペレータである。 vhk = vck - z-1vck + P*z-1vhk k=1,2,3 (3)
In each of the steps HPF1, HPF3 and HPF5 following steps LIN1, LIN3 and LIN5, v ck
Each of the high-pass filter response to the v hk
Is calculated by the multiply-add processor 30 for all samples of v ck using a constant P read from PROM 9. This operation is performed according to the following equation, where z -1 is the one-word delay operator for a 32-bit BSL. v hk = v ck -z -1 v ck + P * z -1 v hk k = 1, 2, 3 (3)

【0123】ステップ LIN2,LIN4 および LIN6 に続く
ステップ HPF2,HPF4 および HPF6 の各々において、ick
に対するそれぞれのハイ・パス・フィルタの応答 ihk
は、PROM 9 から読み取られる反復係数Q を用いて、ick
の全てのサンプルに対して乗算-加算プロセッサ30によ
って演算される。この演算は以下の等式に従ってなされ
る。 ihk = ick - z-1ick +Q*z-1ihk k=1,2,3 (4)
In each of steps HPF2, HPF4 and HPF6 following steps LIN2, LIN4 and LIN6, i ck
Response i hk of each of the high-pass filter for
Uses the repetition factor Q read from PROM 9 to calculate i ck
Is calculated by the multiplication-addition processor 30 for all the samples of. This operation is performed according to the following equation. i hk = i ck - z -1 i ck + Q * z -1 i hk k = 1,2,3 (4)

【0124】図19に示されているように、乗算-加算プ
ロセッサ30により、乗算ステップ MULT1 において、vh1
のハイ・パス・フィルタによる応答とそれ自体との乗
算による平方が可能となり、これに次いで、ロー・パス
・フィルタ操作ステップ LPF1に移行する。図20に示さ
れているように、ロー・パス・フィルタ操作ステップ L
PF1 からのビット・シリアルの信号結果が、平方根演算
操作ステップ SQRT1 に対する入力信号として CORDIC
プロセッサ40に加えられて、幹線導体1上の 実効電圧の
ビット・シリアルの指示を生成する。
As shown in FIG. 19, at the multiplication step MULT1, the multiplication-addition processor 30 executes v h1
The multiplication of the response by the high-pass filter of itself with itself allows squaring, followed by a low-pass filter operation step LPF1. As shown in FIG. 20, the low-pass filter operation step L
The bit serial signal result from PF1 is the CORDIC input signal to the square root operation step SQRT1.
In addition to processor 40, it generates a bit-serial indication of the effective voltage on mains conductor 1.

【0125】図19に示されているように、乗算ステップ
MULT2 において、ih1 のハイ・パス・フィルタによる
応答とそれ自体との乗算による平方を演算することが乗
算−加算プロセッサ30により実効され、これに次いで、
ロー・パス・フィルタ操作のステップ LPF2 に対してそ
の積を入力する。図20に示されているように、ロー・パ
ス・フィルタ操作のステップ LPF2 から結果としてもた
らされるビット・シリアルの信号が、平方根の演算操作
ステップ SQRT2 に対する入力信号として CORDIC プロ
セッサ40に加えられて、幹線導体1を通る 実効 電流の
ビット・シリアル指示を示す。
As shown in FIG. 19, the multiplication step
In MULT2, multiplying the response of i h1 by the high-pass filter with itself and performing the square operation is performed by the multiply-add processor 30, followed by
The product is input to step LPF2 of the low-pass filter operation. As shown in FIG. 20, the bit serial signal resulting from the low pass filter operation step LPF2 is applied to the CORDIC processor 40 as an input signal to the square root operation operation step SQRT2, and the Shows a bit-serial indication of the effective current through conductor 1.

【0126】図19に示されているように、乗算ステップ
MULT3 において、vh2 のハイ・パス・フィルタによる
応答とそれ自体との乗算による平方を演算することが乗
算−加算プロセッサ30により実行され、これに次いで、
ロー・パス・フィルタ操作のステップ LPF3 に対してそ
の積を入力する。図20に示されているように、ロー・パ
ス・フィルタ操作のステップ LPF3 から結果としてもた
らされるビット・シリアルの信号が、平方根の演算操作
ステップ SQRT3 に対する入力信号として CORDIC プロ
セッサ40に加えられて、幹線導体2上の 実効電圧のビッ
ト・シリアルの指示を示す。
As shown in FIG. 19, the multiplication step
In MULT3, computing the response of v h2 by the high-pass filter and itself multiply is performed by the multiply-add processor 30, followed by
Input the product to step LPF3 of the low-pass filter operation. As shown in FIG. 20, the bit serial signal resulting from the low-pass filter operation step LPF3 is applied to the CORDIC processor 40 as an input signal to the square root operation operation step SQRT3 and Shows a bit serial indication of the effective voltage on conductor 2.

【0127】図19に示されているように、乗算ステップ
MULT4 において、ih2 のハイ・パス・フィルタによる
応答とそれ自体との乗算による平方を演算することが乗
算−加算プロセッサ30により実行され、これに次いで、
ロー・パス・フィルタ操作のステップ LPF4 に対してそ
の積を入力する。図20に示されているように、ロー・パ
ス・フィルタ操作のステップ LPF4 から結果としてもた
らされるビット・シリアルの信号が、平方根の演算操作
ステップ SQRT4 に対する入力信号として CORDIC プロ
セッサ40に加えられて、幹線導体2を通る 実効電流のビ
ット・シリアルの指示を示す。
As shown in FIG. 19, the multiplication step
In MULT4, multiplying the response of i h2 by the high-pass filter with itself and multiplying by itself is performed by the multiply-add processor 30, followed by
Input the product to step LPF4 of the low-pass filter operation. As shown in FIG. 20, the bit serial signal resulting from the low-pass filter operation step LPF4 is applied to the CORDIC processor 40 as an input signal to the square root operation operation step SQRT4 and Shows a bit serial indication of the effective current through conductor 2.

【0128】図19に示されているように、乗算ステップ
MULT5 において、vh3 のハイ・パス・フィルタによる
応答とそれ自体との乗算による平方を演算することが乗
算−加算プロセッサ30により実行され、これに次いで、
ロー・パス・フィルタ操作のステップ LPF5 に対してそ
の積を入力する。図20に示されているように、ロー・パ
ス・フィルタ操作のステップ LPF5 から結果としてもた
らされるビット・シリアルの信号が、平方根の演算操作
ステップ SQRT5 に対する入力信号として CORDIC プロ
セッサ40に加えられて、幹線導体3上の 実効電圧のビッ
ト・シリアルの指示を示す。
As shown in FIG. 19, the multiplication step
In MULT5, calculating the square of the response of v h3 by the high-pass filter and itself is performed by the multiply-add processor 30, followed by
The product is input to step LPF5 of the low-pass filter operation. As shown in FIG. 20, the bit serial signal resulting from the low pass filter operation step LPF5 is applied to the CORDIC processor 40 as an input signal to the square root operation operation step SQRT5, and the Shows the bit-serial indication of the effective voltage on conductor 3.

【0129】図19に示されているように、乗算ステップ
MULT6 において、ih3 のハイ・パス・フィルタによる
応答とそれ自体との乗算による平方を演算することが乗
算−加算プロセッサ30により実行され、これに次いで、
ロー・パス・フィルタ操作のステップ LPF6 に対してそ
の積を入力する。図20に示されているように、ロー・パ
ス・フィルタ操作のステップ LPF6 から結果としてもた
らされるビット・シリアルの信号が、平方根の演算操作
ステップ SQRT6 に対する入力信号として CORDIC プロ
セッサ40に加えられて、幹線導体3を通る 実効電流のビ
ット・シリアルの指示を示す。
As shown in FIG. 19, the multiplication step
In MULT6, calculating the square of the response of i h3 by the high-pass filter and itself is performed by the multiply-add processor 30, followed by
Input the product to step LPF6 of the low-pass filter operation. As shown in FIG. 20, the bit serial signal resulting from the low-pass filter operation step LPF6 is applied to the CORDIC processor 40 as an input signal to the square root operation operation step SQRT6 and Shows a bit serial indication of the effective current through conductor 3.

【0130】図20に示されている SELECT ステップにお
いては、これらの 実効 電圧および電流のいずれか一つ
が、IC5 からの digout1 出力信号として現れるように
選択することができる。また、後続のまたは併存する別
の SELECT ステップにおいては、これらの 実効電圧お
よび電流のいずれか一つが、IC5 からのdigout2 出力信
号として現れるように選択することができる。位相の各
々に対する 実効 電圧および電流の演算を実施するため
に乗算−加算プロセッサ30においてなされる図19の処理
は、以下の等式で記述される。ここに、vsk は”ハイ・
パス・フィルタ操作され、直線化された相 k の電圧 v
hk の平方”として読み取られるものであり、また、isk
は”ハイ・パス・フィルタ操作され、直線化された相
k の電流 ihk の平方”として読み取られるものであ
る。 vsk = vhk*vhk (5) isk = ihk*ihk (6)
In the SELECT step shown in FIG. 20, any one of these effective voltages and currents can be selected to appear as the digout1 output signal from IC5. Also, in a subsequent or concurrent SELECT step, any one of these effective voltages and currents can be selected to appear as the digout2 output signal from IC5. The processing of FIG. 19 performed in the multiply-add processor 30 to perform the effective voltage and current calculations for each of the phases is described by the following equation. Where v sk is “high
Pass filtered linearized phase k voltage v
hk squared and isk
Is a “high-pass filtered, linearized phase
are intended to be read as the square "of k current i hk. v sk = v hk * v hk (5) i sk = i hk * i hk (6)

【0131】図19に示されているように、乗算−加算プ
ロセッサ30によれば、全パス・フィルタのそれぞれのス
テップAPF1,APF2 およびAPF3 において、ハイ・パス・
フィルタの応答 vh1,vh2 および vh3 の各々の位相を9
0度だけシフトさせて、次の等式に従って位相シフトし
たハイ・パス・フィルタの応答vp1,vp2 および vp3
発生させることができる。 vpk =z-1vhk+α(z-1vpk−vhk) k=1,2,3 (7)
As shown in FIG. 19, according to the multiplication-addition processor 30, in each step APF1, APF2 and APF3 of the all-pass filter, a high-pass filter is used.
Set the phase of each of the filter responses v h1 , v h2 and v h3 to 9
Shifted by 0 degrees can produce the high pass filter responses v p1 , v p2 and v p3 phase shifted according to the following equation: v pk = z -1 v hk + α (z -1 v pk- v hk ) k = 1, 2, 3 (7)

【0132】図19に示されているように、乗算−加算プ
ロセッサ30によれば、それぞれの補間(位相シフト)フ
ィルタ・ステップPSF1,PSF2 およびPSF3 において、
電流トランス14,15および16の2次電圧とそれぞれに比
較されるとき、電流トランス11,12および13の2次電圧
におけるそれぞれの位相差に対する補償のために、ハイ
・パス・フィルタの応答 ih1,ih2 および ih3 の各々
の位相をシフトさせることができる。ここでの補間フィ
ルタ・ステップPSF1,PSF2 およびPSF3 によれば、次
の等式に従って位相シフトしたハイ・パス・フィルタの
応答 ip1,ip2 および ip3 を発生させることができ
る。 ipk = ihk+δk(z-1ihk−ihk) k=1,2,3 (8) これらの計算は、通常、これらの演算の結果を一時的に
記憶するためのプログラム・データ RAM 6 を用いて、v
p1,vp2,vp3,ip1,ip2,ip3 のシーケンスにおいて実
行される。
As shown in FIG. 19, according to the multiplication-addition processor 30, in each interpolation (phase shift) filter step PSF1, PSF2 and PSF3,
When compared with the secondary voltages of current transformers 14, 15 and 16, respectively, the response of the high pass filter i h1 to compensate for the respective phase differences in the secondary voltages of current transformers 11, 12 and 13 , I h2 and i h3 can be shifted. According to the interpolation filter steps PSF1, PSF2 and PSF3 here, it is possible to generate the responses i p1 , i p2 and i p3 of the high-pass filter phase-shifted according to the following equation. i pk = i hk + δ k (z −1 i hk −i hk ) k = 1,2,3 (8) These calculations are usually performed by program data for temporarily storing the results of these operations. Using RAM 6, v
p1, v p2, v p3, i p1, i p2, is executed in the sequence of i p3.

【0133】図19に示されているように、乗算−加算プ
ロセッサ30によれば次のようにすることが可能ある。即
ち、以下の等式に従って、乗算ステップ MULT7 におい
て vh 1 と ip1 との乗算をして第1相の実効電力の計算
を行い、その結果を一時的に記憶すること、乗算ステッ
プ MULT8 において vh2 とip2 との乗算をして第2相の
実効電力の計算を行い、その結果を一時的に記憶するこ
と、乗算ステップ MULT9において vh3 と ip3 との乗算
をして第3相の実効電力の計算を行い、その結果を一時
的に記憶すること、加算ステップ ADD1 において一時的
に記憶されている第1相および第2相の実効電力成分に第
3相の実効電力成分を加算してビット・シリアルの和信
号 ps を発生させることができる。 ps = (vh1*ip1)+(vh2*ip2)+(vh3*ip3) (9) そして、この乗算−加算プロセッサ30によれば、当該和
信号 psをロー・パス・フィルタ操作ステップ LPF7 に
渡して、幹線導体1,2および3を流れる平均的な実効電
力の指示を発生させることができる。
As shown in FIG. 19, according to the multiplication-addition processor 30, the following can be performed. That is, according to the following equation, the multiplication step MULT7 multiplies v h 1 and i p1 to calculate the effective power of the first phase, and temporarily stores the result. h2 and i p2 are multiplied to calculate the effective power of the second phase, and the result is temporarily stored.In a multiplication step MULT9, v h3 is multiplied by i p3 and the third phase is multiplied. Calculating the effective power and temporarily storing the result; adding the first and second phase effective power components temporarily stored in the addition step ADD1;
The bit-serial sum signal p s can be generated by adding the three-phase effective power components. ps = ( vh1 * ip1 ) + ( vh2 * ip2 ) + ( vh3 * ip3 ) (9) According to the multiplication-addition processor 30, the sum signal ps is low-passed. • Filter operation step An indication of the average effective power flowing through the main conductors 1, 2 and 3 can be passed to the LPF7.

【0134】図19に示されているように、乗算−加算プ
ロセッサ30によれば次のようにすることが可能にされ
る。即ち、以下の等式に従って、乗算ステップ MULT10
において vp1 と ip1 との乗算をして第1相の無効電力
の計算を行い、その結果を一時的に記憶すること、乗算
ステップ MULT11 において vp2 とip2 との乗算をして
第2相の無効電力の計算を行い、その結果を一時的に記
憶すること、乗算ステップ MULT12において vp3 と ip3
との乗算をして第3相の無効電力の計算を行い、その結
果を一時的に記憶すること、加算ステップ DD2 におい
て一時的に記憶されている第1相および第2相の無効電力
成分に第3相の無効電力成分を加算してビット・シリア
ルの和信号 qs を発生させることができる。 qs = (vp1*ip1)+(vp2*ip2)+(vp3*ip3) (10) そして、この乗算−加算プロセッサ30によれば、当該和
信号 qsをロー・パス・フィルタ操作ステップ LPF8 に
渡して、幹線導体1,2および3を流れる平均的な無効電
力の指示を発生させる。
As shown in FIG. 19, according to the multiplication-addition processor 30, the following is enabled. That is, according to the following equation, the multiplication step MULT10
Multiplying v p1 by i p1 to calculate the reactive power of the first phase, temporarily storing the result, and multiplying v p2 by i p2 in the multiplication step MULT11 to calculate the second Calculate the reactive power of the phase and temporarily store the result, in the multiplication step MULT12 v p3 and i p3
And calculate the reactive power of the third phase, and temporarily store the result.In the adding step DD2, the reactive power components of the first and second phases temporarily stored are calculated. by adding the reactive power component of the third phase can be generated sum signal q s bit-serial. q s = (v p1 * i p1) + (v p2 * i p2) + (v p3 * i p3) (10) Then, the multiplication - According to the addition processor 30, row the sum signal q s path Pass to filter operation step LPF8 to generate an indication of average reactive power flowing through trunk conductors 1, 2 and 3.

【0135】図20に示されている 関数選択 ステップに
おいては、幹線導体を流れる実効電力 P および無効電
力Q の指示を、IC5 からの digout1 および digout2 出
力信号として現れるように選択することができる。
In the function selection step shown in FIG. 20, the indication of the effective power P and the reactive power Q flowing through the main conductor can be selected to appear as digout1 and digout2 output signals from IC5.

【0136】代替的には、図20に示されているように、
実効電力および無効電力の指示は CORDIC プロセッサに
より、ARCTAN ステップにおいて力率角 Θ を計算し、
また、RMSステップにおいてそれらの平方の和について
の平方根を計算して、これにより、幹線導体1,2および
3に関する皮相電力 VAを計算することができる。図20に
示されている他の動作においては、ステップ P/VAにお
いて、CORDIC プロセッサによりステップsgn(Q)により
判別される無効電力の符号付きあるいは符号無しをとも
なう力率角 Θ のcosine を計算することができる。ま
た、ステップ 1 -Xで決定されるcosine の補数を取るこ
ともできる。
Alternatively, as shown in FIG.
The real power and reactive power indications are calculated by the CORDIC processor in the ARCTAN step by calculating the power factor angle 、.
It also calculates the square root of the sum of those squares in the RMS step, which allows the main conductors 1, 2 and
The apparent power VA for 3 can be calculated. In another operation shown in FIG. 20, in step P / VA, the CORDIC processor calculates the cosine of the power factor angle 無効 with or without sign of the reactive power determined by step sgn (Q). be able to. You can also take the complement of the cosine determined in Step 1 -X.

【0137】キャリブレイション係数は周波数依存であ
る。プリント回路基板アセンブリは50,60または400 Hz
の電力計測において使用されるものであることから、
準備的な手順としては、計測される電力の周波数を決定
することである。この準備的な手順は、等式 1−10 に
関して先に概説したステップよりも、乗算−加算プロセ
ッサ30に対する一連の命令実行において、より後に実行
される。次のサイクルの乗算−加算プロセッサ30の命令
を実行するときに用いるために、その結果は RAM 6 内
に記憶されることになる。電力線の周波数の変動は極め
て緩慢なものであることから、これは一般的には満足す
べきものである。
The calibration coefficient is frequency dependent. 50, 60 or 400 Hz printed circuit board assembly
Because it is used in power measurement of
A preliminary procedure is to determine the frequency of the power to be measured. This preparatory procedure is performed later in the execution of a series of instructions to the multiply-add processor 30 than the steps outlined above for Equations 1-10. The result will be stored in RAM 6 for use in executing the next cycle of multiply-add processor 30 instructions. This is generally satisfactory since the power line frequency changes are very slow.

【0138】3次の多項式によるリニアライズの正確性
あるいは不正確性は、いずれの場合においても周波数の
決定に影響するものではない。そして、図19に示されて
いるように、ゼロクロス検出器36で実行される ZCD ス
テップにおいて、ハイ・パス・フィルタの応答 ih1,i
h2,ih3,vh1,vh2 および vh3 の中から選択された1
つのshk に対し、ゼロクロスの指示を発生させる。これ
らのゼロクロスの指示は、次の等式によって記述されて
いるように、乗算−加算プロセッサ30によるロー・パス
・フィルタ操作のステップ LPF0 に渡される。 fa =z-1 fa+βwf* zcd(R,shk) (11) ゼロクロス検出器36の zcd(R,shk)なる応答は、shk
ある規定の最大値 1/2Rよりも低い周波数を有している
ときには、このshk だけの関数である。ここで、R はPR
OM9から読み取られるような、ゼロクロス間でのある規
定の最小時間である。R および shk は、それぞれ、ゼ
ロクロス検出器36の ZCT(図9参照)および X 入力部
に加えられる。shk の周波数が 1/2R を超えていると
きには、ゼロクロス検出器36は、1/2R よりも低い信号
周波数の最も高い周波数のサブ高調波に対応するパルス
を発生させる。累積されたフィルタ応答 fa は CORDIC
プロセッサ40に加えられる。そして、以下の等式に従っ
て、 fa は 4ns で除算され、これに次いでその商が 更
に4ns で除算されて、これによりゼロクロスの指示の周
波数 f を計算する。 f = fa/4ns/4ns (12) この値 f は乗算−加算プロセッサにより後で使用する
ために、レジスタ192に書き込まれる。
The accuracy or inaccuracy of the linearization by the third-order polynomial does not affect the determination of the frequency in any case. Then, as shown in FIG. 19, in the ZCD step executed by the zero-cross detector 36, the responses i h1 and i i of the high-pass filter
1 selected from h2 , ih3 , vh1 , vh2 and vh3
For each shk , a zero-cross indication is generated. These zero-cross indications are passed to the low-pass filter operation step LPF0 by the multiply-add processor 30, as described by the following equation: f a = z -1 f a + β wf * zcd (R, s hk) (11) zcd of the zero-crossing detector 36 (R, s hk) consisting response than the maximum value 1 / 2R provisions have s hk When it has a low frequency, it is a function of this shk only. Where R is PR
This is a specified minimum time between zero crossings, as read from OM9. R and shk are applied to the ZCT (see FIG. 9) and X inputs of the zero cross detector 36, respectively. When the frequency of shk is greater than 1 / 2R, the zero-cross detector 36 generates a pulse corresponding to the highest frequency sub-harmonic of the signal frequency lower than 1 / 2R. The accumulated filter response f a is CORDIC
Added to processor 40. Then, according to the following equation, f a is divided by 4n s, in which then the quotient is divided by further 4n s, thereby calculating the frequency f of the indication of the zero-crossing. f = f a / 4n s / 4n s (12) This value f multiplication - for later use by the addition processor, written into the register 192.

【0139】レジスタ192において値 f が更新された後
で、レジスタ192から乗算−加算プロセッサ30に対して
読み取られる fから、また、PROM9から乗算−加算プロ
セッサ30に対して読み取られる周波数依存性の定数 C0k
および C1k から進行する以下の等式に従って、乗算−
加算プロセッサ30により周波数依存性の利得係数 Γv k
が演算される。 Γvk = C0k + f*C1k (13) Γv1,Γv2 および Γv3 の演算の結果は、それぞれに
電流トランス14,15および16からのサンプルの直線化に
関して、それぞれに、v1,v2 および v3 の全てのサン
プル上で後から使用される。
After the value f is updated in the register 192, the frequency-dependent constant read from the register 192 to the multiply-add processor 30 and from the PROM 9 to the multiply-add processor 30 C 0k
And multiply according to the following equation proceeding from C 1k-
The frequency-dependent gain coefficient Γ v k by the addition processor 30
Is calculated. Γ vk = C 0k + f * C 1k (13) The results of the operations of Γ v1 , Γ v2 and Γ v3 are given by v 1 , v 1 , respectively, with respect to the linearization of the samples from current transformers 14, 15 and 16, respectively. v is used later on 2 and v of all samples 3.

【0140】レジスタ192における値 f が更新された後
で、レジスタ192から乗算−加算プロセッサ30に対して
読み取られる fから、また、PROM9から乗算−加算プロ
セッサ30に対して読み取られる周波数依存性の定数 F0k
および F1k から進行する以下の等式に従って、乗算−
加算プロセッサ30により非直線性についての周波数依存
性の係数 Γik が演算される。 Γik = F0k + f*F1k (14) Γi1,Γi2 および Γi3 の演算の結果は、それぞれに
電流トランス11,12および13からのサンプルの利得訂正
に関して、それぞれに、i1,i2 および i3 の全てのサ
ンプル上で後から使用される。
After the value f in register 192 has been updated, the frequency-dependent constants read from register 192 to multiply-add processor 30 and from PROM 9 to multiply-add processor 30 F 0k
And multiply according to the following equation proceeding from F 1k :
The addition processor 30 calculates a frequency-dependent coefficient ik ik for nonlinearity. Γ ik = F 0k + f * F 1k (14) The results of the operations of Γ i1 , Γ i2 and Γ i3 are given by i 1 , as used later on in all samples of i 2 and i 3.

【0141】レジスタ192における値 f が更新された後
で、レジスタ192から乗算−加算プロセッサ30に対して
読み取られる fから、また、PROM9から乗算−加算プロ
セッサ30に対して読み取られる周波数依存性の定数 Hk
および Gk から進行する以下の等式に従って、乗算−加
算プロセッサ30により周波数依存性の補間係数 δkが演
算される。 δk = Hk + f*Gk (15) δ1,δ2 および δ3 の演算の結果は、電流トランス14
−16から生じる電圧サンプルに対する、電流トランス11
−13から生じる電流サンプルの位相を訂正するために後
に使用される。
After the value f in register 192 has been updated, the frequency-dependent constant read from register 192 to multiply-add processor 30 and from PROM 9 to multiply-add processor 30 H k
And the following equation proceeding from G k, the frequency-dependent interpolation coefficient δ k is calculated by the multiplication-addition processor 30. δ k = H k + f * G k (15) The result of the calculation of δ 1 , δ 2 and δ 3 is the current transformer 14
Current transformer 11 for voltage samples resulting from −16
It is later used to correct the phase of the current sample resulting from -13.

【0142】レジスタ192における値 f が更新された後
で、レジスタ192から乗算−加算プロセッサ30に対して
読み取られる fから、また、PROM9から乗算−加算プロ
セッサ30に対して読み取られる周波数依存性の定数 J
および K から進行する以下の等式に従って、乗算−加
算プロセッサ30により周波数依存性の補間係数 α が演
算される。 α = J + f*K (16) この α の演算の結果は、乗算−加算プロセッサ30によ
って実施されるオールパス・フィルタ操作において、正
弦電圧を90度位相シフトさせるために後に使用される。
J および K の演算は、50 Hz および60 Hz の信号に対
して精密な90度の位相シフトをさせるためになされる。
After the value f in register 192 has been updated, the frequency-dependent constant read from register 192 to multiply-add processor 30 and from PROM 9 to multiply-add processor 30 J
And the following equation progressing from K, the multiplication-addition processor 30 calculates the frequency-dependent interpolation coefficient α. α = J + f * K (16) The result of the operation of α is later used to shift the sine voltage by 90 degrees in an all-pass filter operation performed by the multiply-add processor 30.
The calculations of J and K are made to provide a precise 90 degree phase shift for 50 Hz and 60 Hz signals.

【0143】レジスタ192における値 f が更新された後
で、乗算−加算プロセッサ30によって実行される命令に
おいては、レジスタ192から読み取られた f と PROM9か
ら読み取られた T とが一緒に乗算され、その結果とし
ての積の2進の小数部分が”floor”と呼ばれる端数切り
捨て操作において切り捨てられて、以下の等式で表され
るようなパラメータ np を定める。 np = floor(T*f) (17) ここでの値 T は update_nb なるパルス間で許容される
最大の持続時間の半分であり、このために、更新された
IC5 の出力信号間の最大時間に対応している。また、n
p はこの持続時間内で適合できる完全な信号サイクルの
最大数である。ここでの値 np はレジスタ193に書き込
まれて、CORDIC プロセッサ40に対して利用可能とな
る。この CORDIC プロセッサ40によれば、三角フィルタ
係数発生器37における鋸歯状波発生器の各々の鋸歯状波
のサンプル数 ns が以下の等式に従って、後に演算され
る。 ns = floor(np/f) (18) ここでの値 ns はレジスタ194に書き込まれて、既に進
行しているロー・パス・三操作によって必要とされる三
角フィルタ係数発生器37に対して利用可能となる。
After the value f in register 192 is updated, the instruction executed by multiply-add processor 30 multiplies f read from register 192 and T read from PROM 9 together, and The binary fractional part of the resulting product is truncated in a round-down operation called “floor” to define a parameter n p as represented by the following equation: n p = floor (T * f) (17) where the value T is half the maximum duration allowed between pulses update_nb, and therefore,
It corresponds to the maximum time between the output signals of IC5. Also, n
p is the maximum number of complete signal cycles that can be accommodated within this duration. The value n p here is written to the register 193 and made available to the CORDIC processor 40. According to the CORDIC processor 40, the number of samples n s of the sawtooth wave of each of the sawtooth wave generator in the triangular filter coefficients generator 37 is calculated after, according to equation below. n s = floor (n p / f) (18) where the value n s is written to the register 194 and sent to the triangular filter coefficient generator 37 needed by the low-pass triad operation already in progress. Will be available.

【0144】ロー・パス・フィルタ操作のステップ LPF
1 から LPF8 までは、乗算−加算プロセッサ30における
倍精度モード、および、三角フィルタ係数発生器37によ
って発生する狭帯域の sinc2 FIR フィルタ係数を用い
て実行される。従って、各フィルタ操作では2個の命令
が必要とされる。その第1の命令の間には、XPフラグが"
1" にセットされ、βwb が coef_inに対して選択さ
れ、フィルタ操作されている信号が data_in に対して
選択され、関連しているアキュムレータの最下位ワード
が RAM 6 から acc_in に対して選択され、そして、そ
の結果が RAM 6 に書き戻されて該アキュムレータの最
下位ワードを更新するようにされる。その第2の命令の
間には、XPフラグが "0"に復元され、βwb が coef_in
に対して再び選択され、フィルタ操作されている信号が
data_in に対して再び選択され、関連しているアキュ
ムレータの最上位ワードが RAM 6 から選択され、そし
て、その結果が前述されたような第1の命令からのキャ
リーに対して加算され、RAM 6 に書き戻されて該アキュ
ムレータの最上位ワードを更新するようにする。以下に
は、この2個の命令のシーケンスが、LPF1からLPF8 まで
の演算を記述するために関数 xp() によって表されてい
る。 vak = xp(z-1vak + βwb*vsk) (19) iak = xp(z-1iak + βwb*isk) (20) pa = xp(z-1pa + βwb*ps) (21) qa = xp(z-1qa + βwb*qs) (22)
Step LPF of low-pass filter operation
1 to LPF 8 are performed using the double precision mode in the multiply-add processor 30 and the narrow band sinc 2 FIR filter coefficients generated by the triangular filter coefficient generator 37. Thus, two instructions are required for each filter operation. During that first instruction, the XP flag is "
Set to 1 ", β wb is selected for coef_in, the filtered signal is selected for data_in, the least significant word of the associated accumulator is selected from RAM 6 for acc_in, Then, the result is written back to the RAM 6 to update the least significant word of the accumulator, and during the second instruction, the XP flag is restored to “0” and β wb is set to coef_in
Again and the filtered signal is
Again selected for data_in, the most significant word of the associated accumulator is selected from RAM 6 and the result is added to the carry from the first instruction as described above and stored in RAM 6 Written back to update the most significant word of the accumulator. In the following, the sequence of these two instructions is represented by the function xp () to describe the operations from LPF1 to LPF8. v ak = xp (z -1 v ak + β wb * v sk) (19) i ak = xp (z -1 i ak + β wb * i sk) (20) p a = xp (z -1 p a + Β wb * p s ) (21) q a = xp (z -1 q a + β wb * q s ) (22)

【0145】実際には、図20に示されている 関数選択
操作は、MAPプログラムおよび CORDIC プログラムにお
ける所望の2個の関数だけの演算を特定することによっ
て実施される。所望の2個の出力を形成するためには必
要とされない演算が実行されることはなく、また、MAP3
0 は最も必要とされる関数の組み合せ(即ち、3相の実
効電力 P と3相の無効電力Q との組み合わせ)のために
十分なだけのメモリおよび演算速度を備えるように設計
されている。
In practice, the function selection operation shown in FIG. 20 is performed by specifying only two desired functions in the MAP program and the CORDIC program. No operations are performed that are not required to form the two desired outputs, and MAP3
0 is designed to have enough memory and operation speed for the most required function combination (ie, the combination of the three-phase effective power P and the three-phase reactive power Q).

【0146】[0146]

【発明の効果】当該技術の熟練者であれば、以上の開示
を読むことによって、本発明を具現化したいくつかのデ
ジタル・プロセッサの設計が可能になるはずであり、そ
の中には、パワー・メータリングの分野外のエンジン制
御といった分野で用いられるものも含まれており、付属
の請求項の範囲について解釈する場合には、このことに
留意すべきである。
Those skilled in the art, after reading the foregoing disclosure, should be able to design several digital processors embodying the present invention, including: -Some are used in the field of engine control outside the field of metering, and this should be noted when interpreting the scope of the appended claims.

【図面の簡単な説明】[Brief description of the drawings]

【図1】パワー・メータリング・システムに接続して用
いられるモノリシック集積回路の概略図であリ、該モノ
リシック集積回路には、オーバ・サンプリング・アナロ
グ・デジタル変換器及びビット・シリアル形式のデジタ
ル信号によって動作するカスケード・デジタル信号プロ
セッサを備えており、該カスケード・デジタル信号プロ
セッサの1つは、本発明を具現化したものであって、CO
RDIC,非復元除算、または、非復元平方根計算を選択的
に実施する。
FIG. 1 is a schematic diagram of a monolithic integrated circuit used in connection with a power metering system, which includes an oversampling analog-to-digital converter and a digital signal in a bit-serial format. A cascaded digital signal processor operating according to one of the cascaded digital signal processors embodying the present invention, comprising:
Selectively perform RDIC, non-restoring division, or non-restoring square root calculation.

【図2】図1の電力計測システムに対する、プログラマ
ブル・リード・オンリ・メモリとのインタフェースのた
めの回路を含んでいるコントロール回路部の概略図であ
る。
FIG. 2 is a schematic diagram of a control circuit section including a circuit for interfacing with a programmable read only memory for the power measurement system of FIG. 1;

【図3】プログラマブル・リード・オンリ・メモリ内に
記憶されるプログラム情報を示す図である。
FIG. 3 is a diagram showing program information stored in a programmable read only memory.

【図4】プログラマブル・リード・オンリ・メモリのア
クセス動作についてのタイミング図である。
FIG. 4 is a timing chart for an access operation of a programmable read-only memory.

【図5】図1の電力計測システムに対する、ランダム・
アクセス・メモリとのインタフェースをするための回路
を含んでいるコントロール回路部の概略図である。
FIG. 5 is a schematic diagram showing a random power supply for the power measurement system of FIG.
FIG. 2 is a schematic diagram of a control circuit section including a circuit for interfacing with an access memory.

【図6】ランダム・アクセス・メモリのアクセス動作に
ついてのタイミング図である。
FIG. 6 is a timing chart for an access operation of a random access memory.

【図7】図1におけるオーバサンプリングのアナログ−
デジタル変換器とカスケードのデジタル信号プロセッサ
との間で使用される、複数チャンネルの decimationフ
ィルタの概略図である。
FIG. 7 shows an analog of oversampling in FIG.
FIG. 2 is a schematic diagram of a multi-channel decimation filter used between a digital converter and a cascaded digital signal processor.

【図8】図1のカスケードのデジタル信号プロセッサに
おけるフロントプロセッサである、ビット・シリアルの
乗算−加算プロセッサの概略図である。
FIG. 8 is a schematic diagram of a bit-serial multiply-add processor that is a front processor in the cascaded digital signal processor of FIG. 1;

【図9】図8のビット・シリアルの乗算−加算プロセッ
サを図1の電力計測システムにおける他の要素との接続
を示す概略図である。
FIG. 9 is a schematic diagram showing the connection of the bit serial multiply-add processor of FIG. 8 with other elements in the power measurement system of FIG. 1;

【図10】図1の電力計測システムにおいて用いられる
ゼロクロス検出器の概略図である。
FIG. 10 is a schematic diagram of a zero-cross detector used in the power measurement system of FIG.

【図11】図8のビット・シリアルの乗算−加算プロセ
ッサを用いて sinc2 のデジタル的なロー・パス・フィ
ルタ操作を実行するための、フィルタ係数を発生させる
ために用いられる三角フィルタ係数発生器の概略図であ
る。
11 is a triangular filter coefficient generator used to generate filter coefficients for performing a sinc 2 digital low pass filter operation using the bit serial multiply-add processor of FIG. 8; FIG.

【図12】 図11の三角フィルタ係数発生器に関連し
て、時間軸に対してプロットされた波形を示すタイミン
グ図である。
FIG. 12 is a timing diagram showing a waveform plotted against a time axis in relation to the triangular filter coefficient generator of FIG. 11;

【図13】本発明を具現化したビット・シリアル・プロ
セッサ、すなわち、CORDIC、除算、または、平方根計算
を選択的に実施する、図1のカスケード・デジタル信号
プロセッサの最後のプロセッサに関する概略図である。
FIG. 13 is a schematic diagram of a bit serial processor embodying the present invention, ie, the last processor of the cascaded digital signal processor of FIG. 1 that selectively implements CORDIC, divide, or square root calculations. .

【図14】図13の CORDIC プロセッサにおいて用いられ
るスケーラの概略図である。
FIG. 14 is a schematic diagram of a scaler used in the CORDIC processor of FIG.

【図15】図1に概略的に示されているような、arctan
演算に基づくリード・オンリ・メモリと CORDIC プロセ
ッサとの間のインタフェースをより詳細に示す概略図で
ある。
FIG. 15 shows an arctan, as schematically shown in FIG.
FIG. 4 is a schematic diagram illustrating in more detail the interface between an arithmetic based read only memory and a CORDIC processor.

【図16】図13のビット・シリアルの CORDIC プロセッ
サを図1の電力計測システムにおける他の要素との接続
を示す概略図である。
FIG. 16 is a schematic diagram showing the connection of the bit serial CORDIC processor of FIG. 13 with other elements in the power measurement system of FIG. 1;

【図17】CORDIC プロセッサの命令フォーマットを示
す図である。
FIG. 17 is a diagram showing an instruction format of a CORDIC processor.

【図18】CORDIC プロセッサの命令において図17のフ
ォーマット毎に用いられるような、入力選択および機能
の選択についてのコード化のテーブルであり、ここでの
命令は図1のモノリシック集積回路の CORDIC プロセッ
サによって用いられるものである。
FIG. 18 is a coding table for input selection and function selection as used in the format of FIG. 17 in the CORDIC processor instructions, where the instructions are executed by the monolithic integrated circuit CORDIC processor of FIG. 1; What is used.

【図19】図1のモノリシック集積回路の乗算−加算プ
ロセッサにおいて実行される処理についてのブロック図
である。
FIG. 19 is a block diagram of a process executed in a multiplication-addition processor of the monolithic integrated circuit of FIG. 1;

【図20】図1のモノリシック集積回路の CORDIC プロ
セッサにおいて実行される処理についてのブロック図で
ある。図19および図20は、図1のモノリシック集積回路
において実行される処理の合成ブロック図の左手部分お
よび右手部分に当るものであり、ここでの合成ブロック
図は明細書内では図19として参照される。
FIG. 20 is a block diagram illustrating processing executed in a CORDIC processor of the monolithic integrated circuit of FIG. 1; 19 and 20 correspond to the left-hand part and the right-hand part of the composite block diagram of the processing performed in the monolithic integrated circuit of FIG. 1, and the composite block diagram here is referred to as FIG. 19 in the specification. You.

【符号の説明】 1,2,3 幹線導体; 11−16 電流トランス; 18 アナログ基準発生器; 19 レジスタ・バンク; 20 6チャンネル decimation フィルタ; 21−26 シグマ・デルタ変調器; 29 PROM コントロール; 30 乗算−加算プロセッサ; 36 ゼロクロス検出器; 37 三角フィルタ係数発生器; 38 ARCTAN 係数 ROM; 39 ノーマライザ; 40 CORDIC プロセッサ;[Description of Signs] 1, 2, and 3 main conductors; 11-16 current transformer; 18 analog reference generator; 19 register bank; 20 6-channel decimation filter; 21-26 sigma-delta modulator; 29 PROM control; Multiplication-addition processor; 36 zero-cross detector; 37 triangular filter coefficient generator; 38 ARCTAN coefficient ROM; 39 normalizer; 40 CORDIC processor;

───────────────────────────────────────────────────── フロントページの続き (58)調査した分野(Int.Cl.6,DB名) G06F 17/10 G06F 7/52 320 G06F 7/552 G01R 19/00 JICSTファイル(JOIS)──────────────────────────────────────────────────続 き Continued on the front page (58) Field surveyed (Int.Cl. 6 , DB name) G06F 17/10 G06F 7/52 320 G06F 7/552 G01R 19/00 JICST file (JOIS)

Claims (3)

(57)【特許請求の範囲】(57) [Claims] 【請求項1】1つの連続ステップ毎に1つずつ増加する
定数iに従って、ゼロ番から始め、連続して順次付番さ
れるステップを有する手順で演算されるCORDIC、除算、
または、平方根計算手順の一連のステップを選択して実
行するデジタル・プロセッサにおいて、 それぞれの信号入力ポートが設けられており、それぞれ
の一時記憶用データの信号入力ポートを介して第1のデ
ジタル累算入力として、前記CORDIC手順の初期ステップ
時に第1のベクトル成分を受信するように構成された前
記第1の累算器であり、かつ、一時記憶され、更新され
た第1のデジタル累算入力として、前記CORDIC手順の各
後続ステップ時に、前ステップ時の第1の累算結果を受
信し、また、それぞれの一時記憶用データの信号入力ポ
ートを介して、第1のデジタル累算入力として、前記除
算手順の初期ステップ時に、被除数入力信号を受信する
ように構成された前記第1の累算器であり、かつ、前記
除算手順の各後続ステップにおいて、一時記憶され、更
新された第1のデジタル累算入力として、前ステップ時
の第1の被除数を受信するように構成された前記第1の
累算器であり、かつ、それぞれの一時記憶用データの信
号入力ポートを介して、第1のデジタル累算入力とし
て、平方根計算手順の初期ステップ時に、被開閉数入力
信号を受信し、また、前記平方根計算手順の各ステップ
時に、一時記憶され、更新された第1のデジタル累算入
力として、前ステップ時の第1の被開閉数を受信するよ
うに構成された前記第1の累算器であり、連続的な第1
の、このようなデジタル累算器結果を一時的に記憶する
ための第1の累算器手段と;それぞれの信号入力ポート
及びそれぞれの出力ポートが設けられており、それぞれ
の一時記憶用データの信号入力ポートを介して、第2の
デジタル累算入力として、前記CORDIC手順の初期ステッ
プ時に、第2のベクトル成分を受信し、前記CORDIC手順
の各後続ステップ時に、更新された第2のデジタル累算
入力として、前ステップ時の第2の累算結果を受信し、
それぞれの一時記憶用データの信号入力ポートを介し
て、第2のデジタル累算入力として、前記除算手順の初
期ステップ時に、除数入力信号を受信し、前記除算手順
の各後続ステップ時に、一時記憶され、更新された第2
のデジタル累算入力として、前ステップの除数信号を受
信するように構成され、連続的な第2のデジタル累算結
果を一時的に記憶するための第2の累算器手段と;それ
ぞれの信号入力ポート及びそれぞれの信号出力ポートが
設けられており、第3のデジタル累算入力として、前記
CORDIC、除算、平方根計算のうち任意の関数のゼロ番目
のステップ時に算術ゼロを一時的に記憶し、前記CORDIC
手順の各ステップ時に、それぞれの弧の接線角の概算値
を一時的に記憶し、前記除算手順の各ステップ時に、商
のそれぞれの概算値を一時的に記憶し、前記平方根計算
手順の各ステップ時に、平方根のそれぞれの概算値を一
時的に記憶するように構成されている、第3のデジタル
累算結果を一時的に記憶するための第3の累算器手段
と;前記CORDIC手順の各ステップ時に、iに従って求め
られる弧の接線基数を発生する手段と;前記CORDIC手順
及び前記除算手順の各ステップ時に前記第1の累算結果
を更新する前に、前記各ステップにおいて前記第1の各
累算結果とゼロの比較を行うための手段と;前記平方根
計算手順の各ステップ時に前記第1の累算結果を更新す
る前に、前記各ステップにおいて前記第1の各累算結果
と前記被開閉数に対する試行概算値の比較を行うための
手段と;前記CORDIC手順の各ステップにおいて、少なく
ともゼロまたは正である前記比較器結果に応答し、前記
第1の累算器手段に調整を加えて、その第1のデジタル
累算結果から現在の第2の累算結果を減算し、さらに、
その結果、得られる合計を2倍して、更新された第1の
デジタル累算結果を発生するための手段と;前記CORDIC
手順の各ステップにおいて、少なくともゼロまたは正で
ある前記比較器結果に応答し、前記第2の累算手段に調
整を加えて、その第2のデジタル累算結果と現在の第1
のデジタル累算結果に2-(i+1)を掛けた積を加算し、更
新された第2のデジタル累算結果を発生するための手段
と;前記CORDIC手順の各ステップにおいて、少なくとも
ゼロまたは正である前記比較器結果に応答し、前記第3
の累算手段に調整を加えて、その第3のデジタル累算結
果とiに従って求められる前記弧の接線基数を加算し、
更新された第3のデジタル累算結果を発生するための手
段と;前記CORDIC手順の各ステップにおいて、ゼロ未満
である前記比較器結果に応答し、前記第1の累算手段に
調整を加えて、その第1のデジタル累算結果と第2の累
算結果を加算し得られた結果の合計を2倍して、更新さ
れた第1のデジタル累算結果を発生するための手段と;
前記CORDIC手順の各ステップにおいて、ゼロ未満に更新
される前に、前記第1の各デジタル累算結果に応答し、
前記第2の累算手段に調整を加えて、その第2のデジタ
ル累算結果を現在の第1のデジタル累算結果に2-(i+1)
を掛けた積だけデクリメントし、更新された第2のデジ
タル累算結果を発生するための手段と;前記CORDIC手順
の各ステップにおいて、ゼロ未満である前記比較器結果
に応答し、前記第3の累算手段に調整を加えて、その第
3のデジタル累算結果からiに従って求めらる弧の接線
基数を減算して更新された第3のデジタル累算結果を発
生するための手段と;前記除算手順の各ステップにおい
て、少なくともゼロまたは正である前記比較器結果に応
答し、前記第1の累算手段に調整を加えて、その第1の
デジタル累算結果から前記第2のデジタル累算結果の1
/2を減算し、更新された第1のデジタル累算結果を発
生するための手段と;前記除算手順の各ステップにおい
て、少なくともゼロまたは正である前記比較器結果に応
答し、前記第2の累算手段に調整を加えて、その第2の
デジタル累算結果と現在の第1のデジタル累算結果に2
-(i+1)を掛けた積を加算し、更新された第2のデジタル
累算結果を発生するための手段と;前記除算手順の各ス
テップにおいて、少なくともゼロまたは正である前記比
較器結果に応答し、前記第3の累算手段に調整を加え
て、その第3のデジタル累算結果とiに従って求められ
る前記弧の接線基数を加算し、更新された第3のデジタ
ル累算結果を発生するための手段と;前記除算手順の各
ステップにおいて、ゼロ未満である前記比較器結果に応
答し、前記第1の累算手段に調整を加えて、その第1の
デジタル累算結果と第2の累算結果を加算し得られた結
果の合計を2倍して、更新された第1のデジタル累算結
果を発生するための手段と;前記除算手順の各ステップ
において、ゼロ未満に更新される前に、前記第1の各デ
ジタル累算結果に応答し、前記第2の累算手段に調整を
加えて、その第2のデジタル累算結果を現在の第1のデ
ジタル累算結果に2-(i+1)を掛けた積だけデクリメント
し、更新された第2のデジタル累算結果を発生するため
の手段と;前記除算手順の各ステップにおいて、ゼロ未
満である前記比較器結果に応答し、前記第3の累算手段
に調整を加えて、その第3のデジタル累算結果からiに
従って求めらる弧の接線基数を減算して更新された第3
のデジタル累算結果を発生するための手段と;前記平方
根計算手順の各ステップにおいて、第1の各デジタル累
算結果が少なくとも前記被開閉数に対する試行概算値と
同等以上である前記比較器結果に応答し、前記第1の累
算手段に調整を加えて、その第1のデジタル累算結果か
ら2 -(i+2)と前記第3の累算結果の合計を減算し、更新
された第1のデジタル累算結果を発生するための手段
と;前記平方根計算手順の各ステップにおいて、第1の
各デジタル累算結果が前記被開閉数に対する試行概算値
未満である前記比較器結果に応答し、前記第1の累算手
段に調整を加えて、その第1のデジタル累算結果と2
-(i+2)と前記第3の累算結果の合計を加算し、更新され
た第1のデジタル累算結果を発生するための手段と;前
記平方根計算手順の各ステップにおいて、第1の各デジ
タル累算結果が少なくとも前記被開閉数に対する試行概
算値と同等以上である前記比較器結果に応答し、前記第
3の累算手段に調整を加えて、その第3のデジタル累算
結果と2-( i+1)を加算し、更新された第3のデジタル累
算結果を発生するための手段と;から構成されるデジタ
ル・プロセッサ。
1. increment by one for each successive step
According to the constant i, the numbering starts from zero and continues sequentially.
CORDIC, division, calculated in a procedure with steps
Alternatively, select a series of steps in the square root
The digital processor to run, each signal input port is provided,
The first data through the signal input port for the temporary storage data of
Initial step of the CORDIC procedure as digital accumulation input
Before being configured to receive the first vector component at times
A first accumulator, which is temporarily stored and updated
As the first digital accumulation input, each of the CORDIC procedures
During the subsequent step, the first accumulation result of the previous step is received.
And the signal input port of each temporary storage data.
Through the port as the first digital accumulation input.
Receives the dividend input signal during the initial step of the arithmetic procedure
The first accumulator configured as described above, and
At each subsequent step of the division procedure, it is temporarily stored and updated.
In the previous step, as the new first digital accumulation input
The first dividend configured to receive a first dividend of
It is an accumulator and the signal of each temporary storage data
Signal as the first digital accumulation input
At the initial step of the square root calculation procedure
Receiving the signal and each step of the square root calculation procedure
Sometimes a temporarily stored and updated first digital accumulation input
As a force, the first opened / closed number at the previous step is received.
The first accumulator configured in such a manner that the first
Temporarily store such digital accumulator results
Accumulator means for; each signal input port
And each output port is provided.
Through the signal input port for the temporary storage data of
As a digital accumulation input, the initial step of the CORDIC procedure
Receiving a second vector component during the CORDIC procedure
Updated second digital accumulation during each subsequent step of
As an input, the second accumulation result of the previous step is received,
Via the signal input port of each temporary storage data
As a second digital accumulation input, the first digital division
Receiving a divisor input signal during the
During each subsequent step of the second, the temporarily stored and updated second
Receives the divisor signal of the previous step as the digital accumulation input of
And a continuous second digital accumulation unit
Second accumulator means for temporarily storing the result;
Each signal input port and each signal output port
Provided as a third digital accumulation input,
Zeroth of any function among CORDIC, division and square root calculation
Temporarily stores arithmetic zero at the step of
At each step of the procedure, an estimate of the tangent angle of each arc
Is temporarily stored, and at each step of the division procedure, the quotient is
Temporarily store the approximate value of
At each step of the procedure, calculate the approximate value of each square root.
A third digital, configured to store in time
Third accumulator means for temporarily storing an accumulation result
And at each step of the CORDIC procedure according to i
Means for generating a tangent radix of the arc to be formed; said CORDIC procedure
And the first accumulation result at each step of the division procedure
Before updating the first
Means for comparing the accumulation result with zero; and the square root
Updating the first accumulation result at each step of the calculation procedure
Before each of the first accumulation results
To compare the trial estimate for the number of actuations
Means; at each step of said CORDIC procedure,
Responsive to the comparator result being both zero or positive,
Making adjustments to the first accumulator means so that the first digital
Subtracts the current second accumulation result from the accumulation result,
As a result, the resulting sum is doubled and the updated first
Means for generating a digital accumulation result; said CORDIC
In each step of the procedure, at least zero or positive
In response to the comparator result, the second accumulating means is adjusted.
The second digital accumulation result and the current first
2 in the digital accumulation result of-(i + 1)Multiplied by
Means for generating a new second digital accumulation result
And at least in each step of the CORDIC procedure
Responsive to the comparator result being zero or positive, the third
To the third means of digital accumulation
Add the tangent radix of the arc determined according to the result and i,
Procedure for generating an updated third digital accumulation result
Steps; less than zero at each step of the CORDIC procedure
Responsive to the comparator result being
With adjustments, the first digital accumulation result and the second accumulation
Double the sum of the results obtained by adding the calculation results and update
Means for generating a first digital accumulation result obtained;
Update to less than zero in each step of the CORDIC procedure
Responding to each of the first digital accumulation results before
The second accumulator is adjusted and its second digital
Is added to the current first digital accumulation result.-(i + 1)
Is decremented by the product multiplied by
Means for generating a result of summation of the totals; said CORDIC procedure
The comparator result being less than zero in each step of
In response to the third accumulation means,
The tangent of the arc obtained from the digital accumulation result of 3 according to i
Generates updated third digital accumulation result by subtracting radix
Means for generating; in each step of said division procedure
At least in response to the comparator result being zero or positive.
In response, the first accumulation means is adjusted and the first accumulation means is adjusted.
From the digital accumulation result, 1 of the second digital accumulation result
/ 2 is subtracted to generate an updated first digital accumulation result.
Means for generating; in each step of said division procedure
At least in response to the comparator result being zero or positive.
In response, the second accumulation means is adjusted and the second accumulation means is adjusted.
2 for the digital accumulation result and the current first digital accumulation result
-(i + 1)Multiplied by 2 and the updated second digital
Means for generating an accumulation result; each step of said division procedure
Said ratio being at least zero or positive in step
Responding to the comparator result and adjusting the third accumulating means.
Calculated according to the third digital accumulation result and i
A third digit updated by adding the tangent radix of said arc
Means for generating an accumulation result; each of the division procedures
Responsive to said comparator result being less than zero,
In response, the first accumulation means is adjusted and the first accumulation means is adjusted.
The result obtained by adding the digital accumulation result and the second accumulation result
Updated the first digital accumulation result by doubling the sum of the results
Means for generating a result; each step of said division procedure
The first data before being updated to less than zero.
Adjusting the second accumulation means in response to the digital accumulation result.
In addition, the second digital accumulation result is stored in the current first data.
2 for digital accumulation result-(i + 1)Is decremented by the product of
To generate an updated second digital accumulation result
Means in each step of the division procedure,
Responsive to the comparator result being full, the third accumulating means
, And from the third digital accumulation result to i
Therefore, the third radix updated by subtracting the tangent radix of the arc obtained is
Means for generating a digital accumulation result of;
In each step of the root calculation procedure, the first digital accumulation
The calculation result is at least a trial estimate for the number of switches
Responsive to the comparator result being equal to or greater than
The first digital accumulation result by adjusting the calculation means
2 -(i + 2)And the sum of the third accumulation result is subtracted and updated.
Means for Generating a Generated First Digital Accumulation Result
And in each step of the square root calculation procedure, a first
Each digital accumulation result is a trial estimate for the number of switches
Responsive to the comparator result being less than
Adjusting the stage, its first digital accumulation result and 2
-(i + 2)And the sum of the third accumulation result is added and updated.
Means for generating a first digital accumulation result;
In each step of the square root calculation procedure, the first digital
The cumulative total is at least a trial summary
Responding to the comparator result which is equal to or greater than the calculated value,
The third digital accumulation by adjusting the accumulation means of 3
Result and 2-( i + 1)And the updated third digital accumulation
Means for generating a calculation result;
Processor.
【請求項2】各手順ステップが、2つの連続ワード間隔
毎において実施され、前記第1の各順次累算結果の比較
が、前期各手順ステップにおける前記2つの連続ワード
の早いワード期間において行われ、前記第1、第2、及
び、第3の累算結果の前記更新が、ゼロ番目以降の前記
手順ステップにおける前記2つの連続ワードの後のワー
ド期間において行われることを特徴とする、請求項1に
記載のデジタル・プロセッサ。
2. The method according to claim 1, wherein each of the procedural steps is performed at intervals of two consecutive words, and the comparison of the first successive accumulation results is performed in an earlier word period of the two consecutive words in each of the preceding procedural steps. , Wherein the updating of the first, second and third accumulation results is performed in a word period after the two consecutive words in the procedural steps from zero onwards. The digital processor of claim 1.
【請求項3】1つの連続ステップ毎に1つずつ増加する
定数iに従って、ゼロ番から始め、連続して順次付番さ
れるステップを有する手順で演算されるCORDIC、除算、
または、平方根計算手順の一連のステップを選択して実
行するデジタル・プロセッサにおいて、 それぞれの信号入力ポートが設けられており、それぞれ
の一時記憶用データの信号入力ポートを介して第1のデ
ジタル累算入力として、前記CORDIC手順の初期ステップ
時に第1のベクトル成分を受信するように構成された前
記第1の累算器であり、かつ、一時記憶され、更新され
た第1のデジタル累算入力として、前記CORDIC手順の各
後続ステップ時に、前ステップ時の第1の累算結果を受
信し、また、それぞれの一時記憶用データの信号入力ポ
ートを介して、第1のデジタル累算入力として、前記除
算手順の初期ステップ時に、被除数入力信号を受信する
ように構成された前記第1の累算器であり、かつ、一時
記憶され、更新された第1のデジタル累算入力として、
前記除算手順の各後続ステップにおいて、前ステップ時
の第1の被除数を受信するように構成された前記第1の
累算器であり、かつ、それぞれの一時記憶用データの信
号入力ポートを介して、第1のデジタル累算入力とし
て、平方根計算手順の初期ステップ時に、被開閉数入力
信号を受信し、また、一時記憶され、更新された第1の
デジタル累算入力として、前記平方根計算手順の各ステ
ップ時に、前ステップ時の第1の被開閉数を受信するよ
うに構成された前記第1の累算器であり、連続的な第1
の、このようなデジタル累算器結果を一時的に記憶する
ための第1の累算器手段と;それぞれの信号入力ポート
及びそれぞれの出力ポートが設けられており、それぞれ
の一時記憶用データの信号入力ポートを介して、第2の
デジタル累算入力として、前記CORDIC手順の初期ステッ
プ時に、第2のベクトル成分を受信し、更新された第2
のデジタル累算入力として、前記CORDIC手順の各後続ス
テップ時に、前ステップ時の第2の累算結果を受信し、
それぞれの一時記憶用データの信号入力ポートを介し
て、第2のデジタル累算入力として、前記除算手順の初
期ステップ時に、除数入力信号を受信し、一時記憶さ
れ、更新された第2のデジタル累算入力として、前記除
算手順の各後続ステップ時に、前記除数入力信号の絶対
値に相当する信号を受信するように構成されている、連
続的な第2のデジタル累算結果を一時的に記憶するため
の第2の累算器手段と;それぞれの信号入力ポート及び
それぞれの信号出力ポートが設けられており、第3のデ
ジタル累算入力として、前記CORDIC、除算、平方根計算
のうち任意の関数のゼロ番目のステップ時に算術ゼロを
一時的に記憶し、前記CORDIC手順の各ステップ時にはそ
れぞれの弧の接線角の概算値を一時的に記憶し、前記除
算手順の各ステップ時に、商のそれぞれの概算値を一時
的に記憶し、前記平方根計算手順の各ステップ時に、平
方根のそれぞれの概算値を一時的に記憶するように構成
されている、第3のデジタル累算結果を一時的に記憶す
るための第3の累算器手段と;前記CORDIC手順の各ステ
ップ時に、iに従って求められる弧の接線基数を発生す
る手段と;前記CORDIC手順及び前記除算手順の各ステッ
プ時に前記第1の累算結果を更新する前に、前記各ステ
ップにおいて前記第1の各累算結果とゼロの比較を行う
ための手段と;前記平方根計算手順の各ステップ時に前
記第1の累算結果を更新する前に、前記各ステップにお
いて前記第1の各累算結果と前記被開閉数に対する試行
概算値の比較を行うための手段と;前記CORDIC手順の各
ステップにおいて、少なくともゼロまたは正である前記
比較器結果に応答し、前記第1の累算器手段に調整を加
えて、その第1のデジタル累算結果から現在の第2の累
算結果を減算し、さらに、その結果、得られる合計を2
倍して、更新された第1のデジタル累算結果を発生する
ための手段と;前記CORDIC手順の各ステップにおいて、
少なくともゼロまたは正である前記比較器結果に応答
し、前記第2の累算手段に調整を加えて、その第2のデ
ジタル累算結果と現在の第1のデジタル累算結果に2
-(i+1)を掛けた積を加算し、更新された第2のデジタル
累算結果を発生するための手段と;前記CORDIC手順の各
ステップにおいて、少なくともゼロまたは正である前記
比較器結果に応答し、前記第3の累算手段に調整を加え
て、その第3のデジタル累算結果とiに従って求められ
る前記弧の接線基数を加算し、更新された第3のデジタ
ル累算結果を発生するための手段と;前記CORDIC手順の
各ステップにおいて、ゼロ未満である前記比較器結果に
応答し、前記第1の累算手段に調整を加えて、その第1
のデジタル累算結果と第2の累算結果を加算し得られた
結果の合計を2倍して、更新された第1のデジタル累算
結果を発生するための手段と;前記CORDIC手順の各ステ
ップにおいて、ゼロ未満に更新される前に、前記第1の
各デジタル累算結果に応答し、前記第2の累算手段に調
整を加えて、その第2のデジタル累算結果を現在の第1
のデジタル累算結果に2-(i+1)を掛けた積だけデクリメ
ントし、更新された第2のデジタル累算結果を発生する
ための手段と;前記CORDIC手順の各ステップにおいて、
ゼロ未満である前記比較器結果に応答し、前記第3の累
算手段に調整を加えて、その第3のデジタル累算結果か
らiに従って求めらる弧の接線基数を減算して更新され
た第3のデジタル累算結果を発生するための手段と;前
記第1の累算結果の絶対値が、前記第2の累算結果の絶
対値より小さい前記除算手順の各ステップにおいて、前
記第1の累算結果の大きさが少なくともゼロまたは正で
ある前記比較器結果に応答し、前記第1の累算手段に調
整を加えて、その第1のデジタル累算結果から前記第2
のデジタル累算結果の1/2を減算し、更新された第1
のデジタル累算結果を発生するための手段と;前記除算
手順の各ステップにおいて、少なくともゼロまたは正で
ある前記比較器結果に応答し、前記第3の累算手段に調
整を加えて、その第3のデジタル累算結果と2-(i+1)
加算し、更新された第3のデジタル累算結果を発生する
ための手段と;前記第1の累算結果の絶対値が、前記第
2の累算結果の絶対値より小さい前記除算手順の各ステ
ップにおいて、ゼロ未満である前記比較器結果に応答
し、前記第1の累算手段に調整を加えて、その第1のデ
ジタル累算結果と前記第2のデジタル累算結果の1/2
を加算し、更新された第1のデジタル累算結果を発生す
るための手段と;前記除算手順の各ステップにおいて、
ゼロ未満である前記比較器結果に応答し、前記第3のデ
ジタル累算手段に調整を加えて、その第3のデジタル累
算結果から2-(i+1)だけ減算し、更新された第3のデジ
タル累算結果を発生するための手段と;前記平方根計算
手順の各ステップにおいて、第1の各デジタル累算結果
が少なくとも前記被開閉数に対する試行概算値と同等以
上である前記比較器結果に応答し、前記第1の累算手段
に調整を加えて、その第1のデジタル累算結果から2
-(i+2)と前記第3の累算結果の合計を減算し、さらに2
倍して、更新された第1のデジタル累算結果を発生する
ための手段と;前記平方根計算手順の各ステップにおい
て、第1の各デジタル累算結果が前記被開閉数に対する
試行概算値未満である前記比較器結果に応答し、前記第
1の累算手段に調整を加えて、その第1のデジタル累算
結果の2倍して、更新された第1のデジタル累算結果を
発生するための手段と;前記除算手順または前記平方根
計算手順の各ステップにおいて、第1の各デジタル累算
結果が少なくとも前記被開閉数に対する試行概算値と同
等以上である前記比較器結果に応答し、前記第3の累算
手段に調整を加えて、その第3のデジタル累算結果と2
-(i+1)を加算し、更新された第3のデジタル累算結果を
発生するための手段から構成され、前記デジタル・プロ
セッサは、各手順ステップが2つの連続ビット・シリア
ル・ワード間隔において実行され、前記各手順ステップ
において、前記第1の累算結果の比較が、前記ビット・
シリアル・ワードの最初のワード期間において行われ、
前記第1、第2、及び、第3の累算結果の更新が、ゼロ
番以降の前記手順における前記2ビット・シリアル・ワ
ードの第2ワード期間において行われることを特徴とす
る、デジタル・プロセッサ。
3. Increment by one for each successive step
According to the constant i, the numbering starts from zero and continues sequentially.
CORDIC, division, calculated in a procedure with steps
Alternatively, select a series of steps in the square root
The digital processor to run, each signal input port is provided,
The first data through the signal input port for the temporary storage data of
Initial step of the CORDIC procedure as digital accumulation input
Before being configured to receive the first vector component at times
A first accumulator, which is temporarily stored and updated
As the first digital accumulation input, each of the CORDIC procedures
During the subsequent step, the first accumulation result of the previous step is received.
And the signal input port of each temporary storage data.
Through the port as the first digital accumulation input.
Receives the dividend input signal during the initial step of the arithmetic procedure
The first accumulator configured as described above, and
As a stored and updated first digital accumulation input:
In each subsequent step of the division procedure,
The first dividend configured to receive a first dividend of
It is an accumulator and the signal of each temporary storage data
Signal as the first digital accumulation input
At the initial step of the square root calculation procedure
Receiving the signal and also storing the updated first
Each step of the square root calculation procedure is used as a digital accumulation input.
At the time of backup, the first
The first accumulator configured in such a manner that the first
Temporarily store such digital accumulator results
Accumulator means for; each signal input port
And each output port is provided.
Through the signal input port for the temporary storage data of
As a digital accumulation input, the initial step of the CORDIC procedure
Receiving the second vector component and updating the updated second
Each successive scan of the CORDIC procedure
At the time of the step, the second accumulation result of the previous step is received,
Via the signal input port of each temporary storage data
As a second digital accumulation input, the first digital division
During the initial step, the divisor input signal is received and temporarily stored.
As the updated second digital accumulation input.
During each subsequent step of the arithmetic procedure, the absolute value of the divisor input signal is
A series configured to receive a signal corresponding to the value
To temporarily store successive second digital accumulation results
Second accumulator means; a respective signal input port and
Each signal output port is provided and the third data
Digital accumulation input, CORDIC, division, square root calculation
Arithmetic zero at the zeroth step of any function
Temporarily memorize it and store it at each step of the CORDIC procedure.
The approximate value of the tangent angle of each arc is temporarily stored, and
At each step of the calculation procedure, temporarily calculate the approximate value of each quotient.
At each step of the square root calculation procedure.
Configured to temporarily store the approximate value of each root
Temporarily stores the third digital accumulation result
Third accumulator means for performing each step of the CORDIC procedure.
The tangent radix of the arc determined according to i
Means for performing the steps of the CORDIC procedure and the division procedure.
Before updating the first accumulation result at the time of
The first accumulation result is compared with zero
Means at each step of said square root calculation procedure
Before updating the first accumulation result,
And trials for the first accumulation results and the number of switches to be opened and closed.
Means for performing an estimate comparison; each of said CORDIC procedures
Wherein the step is at least zero or positive
Adjusting the first accumulator means in response to the comparator result.
The current second accumulation is obtained from the first digital accumulation result.
The result of the operation is subtracted, and the resulting sum is 2
Multiply to produce an updated first digital accumulation result
Means for: at each step of said CORDIC procedure,
Respond to the comparator result being at least zero or positive
Then, the second accumulation means is adjusted and the second
Digital accumulation result and current 1st digital accumulation result
-(i + 1)Multiplied by 2 and the updated second digital
Means for generating an accumulation result; each of said CORDIC procedures
Wherein the step is at least zero or positive
Adjusting the third accumulating means in response to the comparator result;
Calculated according to the third digital accumulation result and i
A third digit updated by adding the tangent radix of said arc
Means for generating a cumulative result;
In each step, the comparator result that is less than zero
Responding and making adjustments to said first accumulator.
Obtained by adding the digital accumulation result and the second accumulation result
Doubled sum of results, updated first digital accumulation
Means for generating a result; each step of said CORDIC procedure.
Before updating to less than zero in the first
In response to each digital accumulation result, the second accumulation means is adjusted.
The second digital accumulation result is added to the current first
2 in the digital accumulation result of-(i + 1)Multiply only by the product
To generate an updated second digital accumulation result.
Means for: at each step of said CORDIC procedure,
Responsive to the comparator result being less than zero, the third accumulation
The third digital accumulation result by adjusting the calculation means
Is updated by subtracting the tangent radix of the arc obtained according to i
Means for generating a third digital accumulated result;
The absolute value of the first accumulation result is equal to the absolute value of the second accumulation result.
In each step of the division procedure that is smaller than the log value,
The magnitude of the first accumulation result is at least zero or positive.
In response to the comparator result, the first accumulation means is adjusted.
The second digital accumulation result is added to the second digital accumulation result.
デ ジ タ ル of the digital accumulation result of
Means for generating a digital accumulation result of the division;
In each step of the procedure, at least zero or positive
In response to the comparator result, the third accumulator is adjusted.
The third digital accumulation result and 2-(i + 1)To
Add to produce an updated third digital accumulation result
Means for calculating the absolute value of the first accumulation result,
Steps of the division procedure that are smaller than the absolute value of the accumulation result of step 2
Response to the comparator result being less than zero at
Then, the first accumulation means is adjusted and its first data is
Digital accumulation result and half of the second digital accumulation result
To produce an updated first digital accumulation result.
Means for; in each step of said division procedure,
Responsive to the comparator result being less than zero, the third data
Digital accumulator means to adjust its third digital accumulator
2 from the calculation result-(i + 1)Only the third digit
Means for generating a tall accumulation result; said square root calculation
In each step of the procedure, each first digital accumulation result
Is at least equal to the trial estimate for the number of
Responsive to the comparator result being above, the first accumulating means
To the first digital accumulation result.
-(i + 2)And the sum of the third accumulation result is subtracted, and 2
Multiply to produce an updated first digital accumulation result
Means for; calculating at each step of said square root calculation procedure
Where the first digital accumulation result is
Responding to the comparator result being less than the trial estimate,
Adjusting the accumulating means of the first and accumulating the first digital accumulating means
Double the result and update the updated first digital accumulation result
Means for generating; said division procedure or said square root
In each step of the calculation procedure, a first digital accumulation
The result is at least the same as the trial estimate for the number of switches
Responsive to the comparator result being greater than or equal to, the third accumulation
Adjusting the means, the third digital accumulation result and 2
-(i + 1), And the updated third digital accumulation result
Means for generating the digital program.
The Sessa is that each procedural step consists of two consecutive bit serial
Each of the above-mentioned procedural steps
In the comparison of the first accumulation result,
Occurs during the first word period of the serial word,
The update of the first, second, and third accumulation results is zero.
And the 2-bit serial wireless
Performed during the second word period of the code.
Digital processor.
JP4067202A 1991-04-15 1992-03-25 Digital signal processor for selectively performing CORDIC, division or square root calculations Expired - Fee Related JP2840156B2 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US07/685340 1991-04-15
US07/685,340 US5134578A (en) 1991-02-11 1991-04-15 Digital signal processor for selectively performing cordic, division or square-rooting procedures

Publications (2)

Publication Number Publication Date
JPH0594466A JPH0594466A (en) 1993-04-16
JP2840156B2 true JP2840156B2 (en) 1998-12-24

Family

ID=24751771

Family Applications (1)

Application Number Title Priority Date Filing Date
JP4067202A Expired - Fee Related JP2840156B2 (en) 1991-04-15 1992-03-25 Digital signal processor for selectively performing CORDIC, division or square root calculations

Country Status (1)

Country Link
JP (1) JP2840156B2 (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0890147B1 (en) * 1996-10-31 2004-02-25 Atmel Research Co-processor for performing modular multiplication
CN111984227B (en) * 2020-08-26 2023-10-13 南京大学 Approximation calculation device and method for complex square root

Also Published As

Publication number Publication date
JPH0594466A (en) 1993-04-16

Similar Documents

Publication Publication Date Title
JP3282632B2 (en) Power line electrical parameter measurement method using digital computer.
US5134578A (en) Digital signal processor for selectively performing cordic, division or square-rooting procedures
US5126961A (en) Plural-channel decimation filter, as for sigma-delta analog-to-digital converters
KR100284799B1 (en) Exponential circuit using shifting means and method of use
JPS5914940B2 (en) Programmable digital tone detector
KR970008534B1 (en) Circuitry for multiplying a pcm signal by a sinusoid
JP3082394B2 (en) Multi-channel decimation filter for sigma-delta analog-to-digital converter
CA1244140A (en) Method and apparatus for numerical division
JP2840156B2 (en) Digital signal processor for selectively performing CORDIC, division or square root calculations
KR920008269B1 (en) Digital word-serial multiplier circuit
Mienkina Filter-based algorithm for metering applications
JPH05158656A (en) Sum of product arithmetic unit and method therefor
US3610896A (en) System for computing in the hybrid domain
US3733475A (en) Digital pulse sequence divider
US3551664A (en) Bearing angle computer
SU783791A1 (en) Polynominal multiplying device
Moshos Design of real time computers utilizing counting techniques
JPH032970A (en) Arithmetic circuit
SU1652933A1 (en) Digital voltmeter for measuring ac effective values
RU2187886C1 (en) Device for converting numbers of residue system code into polyadic code
SU686034A1 (en) Multichannel digital smoothing device
SU960807A2 (en) Function converter
RU1784975C (en) Arithmetic-integrating device
SU650073A1 (en) Tangent computing arrangement
SU510717A1 (en) Sine-cosine functional converter

Legal Events

Date Code Title Description
LAPS Cancellation because of no payment of annual fees