JPH05509429A - Sin/cos発生器 - Google Patents
Sin/cos発生器Info
- Publication number
- JPH05509429A JPH05509429A JP3514485A JP51448591A JPH05509429A JP H05509429 A JPH05509429 A JP H05509429A JP 3514485 A JP3514485 A JP 3514485A JP 51448591 A JP51448591 A JP 51448591A JP H05509429 A JPH05509429 A JP H05509429A
- Authority
- JP
- Japan
- Prior art keywords
- function generator
- sin
- complement
- cos
- cosx
- 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.)
- Granted
Links
- 230000000295 complement effect Effects 0.000 claims description 69
- 241000406668 Loxodonta cyclotis Species 0.000 description 4
- 238000000034 method Methods 0.000 description 4
- 238000004364 calculation method Methods 0.000 description 3
- 238000010586 diagram Methods 0.000 description 3
- 238000004422 calculation algorithm Methods 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- LKJPSUCKSLORMF-UHFFFAOYSA-N Monolinuron Chemical compound CON(C)C(=O)NC1=CC=C(Cl)C=C1 LKJPSUCKSLORMF-UHFFFAOYSA-N 0.000 description 1
- 101150065817 ROM2 gene Proteins 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 230000033764 rhythmic process Effects 0.000 description 1
- 238000004088 simulation Methods 0.000 description 1
- 238000011144 upstream manufacturing Methods 0.000 description 1
- XLYOFNOQVPJJNP-UHFFFAOYSA-N water Substances O XLYOFNOQVPJJNP-UHFFFAOYSA-N 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/02—Digital function generators
- G06F1/03—Digital function generators working, at least partly, by table look-up
- G06F1/035—Reduction of table size
- G06F1/0356—Reduction of table size by using two or more smaller tables, e.g. addressed by parts of the argument
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2101/00—Indexing scheme relating to the type of digital function generated
- G06F2101/04—Trigonometric functions
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Complex Calculations (AREA)
Abstract
(57)【要約】本公報は電子出願前の出願データであるため要約のデータは記録されません。
Description
【発明の詳細な説明】
この発明は関数発生器に関し、より詳しくは、改良されたsin/cos発生器
に関する。
背景技術
sinおよびCOS発生器のための集積回路において要求される記憶量を減少す
るために、表1に示すような小さな角度の場合の近似を使用した符号の法則を使
用することが提案されている。
表1
sin(X + Y)=sinXcosY +5inYcosXsinX +
YcosX
cos(X +Y)−cosXcosY −5inXsinYcosX −Ys
inX
また、記憶された値の量は、■象限だけの値を記憶し、表2に示すように、その
値の補数を取ることによって減少される。
表2
all 5IN(X+Y) C05(X+Y) 印糧< Co5t<Q l 5
in(X+Y) cos(X+Y) 5inX+YcosX cosX−Ysi
nXQ2 cos(X+Y) −5in(X+Y) cosX−YsinX −
5inX−YcosXQ3−5in(X+Y) −cos(X+Y) −5in
X−YcosX −cosX+YsinXQ4 −cos(X+Y) 5in(
X+Y) −cosX+YsinX 5inX+YcosXこの方法の実施方法
は、マツコーリスタ等(McCallister、 et at、)の米国特許
4,486.846号に記載されている。4個のROM(リード・オンリー・メ
モリー)が備えられ、粗sinROM(sinX)と粗cos ROM (co
s X )と微小sinROM(YsinX)と微小cosROM(YcosX
)とを含んでいる。加算器とマルチプレクサと制御ロジックが、これらの値を結
合して適宜な象限についてのsinとcosの値を生成するために使用される。
負の値は適宜なバイアスが加えられて対応する反転によって生成される。この方
法は、必要とされるROMの記憶容量を実質的に減少したけれども、誤差の減少
に加えて、R,0M容量のさらなる改良が必要とされる。
発明の開示
そこで、この発明の目的は、ROM容量と誤差を減少した改良されたsinおよ
びcos発生器を提供することである。
これらおよび他の目的は、5inX 、cosXおよび5inYについての値を
蓄え、上記5inXおよびcos Xを5inYと乗算して部分積(−sinY
sinX)と部分積5inYcosXを生成し、5in(X+Y)を生成するた
めに、5inXに部分積51nYcosXを加え、また、cos(X+Y)を生
成するために、cos Xに部分積5inYsinXを加えることによって、達
成される。上記5inXおよびcos Xの値は符号の指定を行うことなく、1
つの象限についてだけ蓄えられ、象限の制御は、加算と乗算を行う前に、5in
XとCo5Xの固有の値を反転するために行なわれる。負の僅は、lの補数を生
成し、最下位のビットに工を加えることによって形成される。
乗算器は、複数の部分積を生成するために、5inYと共に、上記5inX8よ
びcOsXの最上位ビット部を使用する。補数化されて、ソフトされあるいはシ
フトされない5inXあるいはeos Xおよび0の値など、マルチプレクサで
ある乗算器のための制御値を生成するために、5inY値デコーダが設けられる
。上記制御はビット対の復号を使用する補数に加えて工のシフトを含んでいる。
デコーダはロジックに対する格納装置である。加算器は和と桁上げを生成するウ
ォーレス(Wallace)の木であり、最終段の加算器はつオーレスの木の和
と桁上げを加えるために設けられている。まI;、lが丸めのために加算器の適
宜なビット位置に加算される。
第1.第2マルチプレクサは夫々、sinおよびCOS格納装置に連結された入
力端子を持っており、それらの出力端子の各々は夫々乗算器と加算器に連結され
ている。上記乗算器は、上記sinとcosを夫々生成するために第1と第2の
乗算器と各第りおよび第2の加算器を含んでいる。上記第1マルチプレクサは上
記第1加算器と第2乗算器に連結された出力端子を有し、上記第2マルチプレク
サは上記第2加算器と第1乗算器に連結された出力端子を有する。5inYの復
号された値のただ1つの値が上記第1と第2の乗算器両方に与えられる。制御反
転ゲートが上記第1および第2のマルチプレクサの出力側に設けられて8す、上
記Wc2乗算器Jこ与えられる上記第1マルチプレクサの出力が、上記第1マル
チプレクサが第1加算器に与える値の反転であるように、上記第1マルチプレク
サの反転出力が上記第2乗算器の入力に入力されている。
図面の簡単な説明
図1は本発明の原理を含んだsin/cos発生器のブロック図である。
図2は加算器アレイに8ける種々の部分の配列を示した図である。
図3は図1のsin/cos発生器の変形例で、単一のsin/cos格納器を
用いたもののブロック図である。
発明を実施するための最適モード
図1は16ビツト出力用のSin/cos発生器を示している。入力は20ビツ
ト語で、そのうち2ビツトは象@Qを、10ビツトは位相角Xを、そして8ビツ
トはより小さい位相角Yを表す。上記象@Qはデコーダ22によって、表3に示
すように、補数制御信号CIと02とマルチプレクサ選択信号SELにデコード
される。
−以下、余白 −
表3
角Xのだめの10ビツトは、sinROM24とcosROM26のアドレスで
ある。sinとcosに対する値は上記sinROM24とcosROM26に
17ビフト語として格納される。これに代えて、初めの0〜16ビツトをsin
、そして終わりの17〜33ビツトをCo5とする34ビツトの長い語を有する
1つのROMを用いてもよ(1゜こうすれば、1つのアドレスで両方の値が発生
する。これらは符号ピントを含まない。なぜならば、全てのsinとCOSは正
の数として格納され、それらの数は交互に制御信号C1,C2とデコーダ22に
よって制御されるからである。17ビツトのSin値とcos値は、16ビツト
の精度を有する出力を得るために使用される。上記5inX ROM24の出力
はマルチプレクサ(MUX)30の〇−人力とマルチプレクサ(MUX)32の
1−人力に与えられる。cosX ROM26の出力は、マルチプレクサ30の
1−人力とマルチプレクサ32の〇−人力に与えられる。デコーダ22からの選
択信号SELはマルチプレクサ30.32に接続されて、上記マルチプレクサの
出力が〇−人力または1−人力となり、したがって一方が出力としてsin値を
有し、他方が出力としてCo5値を有する。
マルチプレクサ30.32の出力は、それぞれ、ゲート・インバータ34と36
を介してレジスタ38と40に接続されている。上記インバータ34と36は、
それぞれのマルチプレクサ30,32からの出力と補数演算制御信号c2.cl
を受け取る排他的ORゲートとして示されている。また、上記制御信号C2は上
記レジスタ38に、また制御信号C1はレジスタ40に、符号ビットとして与え
られる。
レジスタ38内の17ビツトは、ウォーレスの木として示される加算器46に直
接与えられて、レジスタ38がら最上位ビットとして送られてくる符号ビットと
組み合わせられる。以下に詳しく説明したように、上記符号ビットは、最下位ビ
ットにも加算される。もし、制御ビットc2が1であれば、2の補数を形成する
ために、符号ビット1が1の補数に加算される。また、丸めビットが上記加算器
46において適宜な位置に加算される。レジスタ38の反転出方から出方された
レジスタ38内の値である最上位9ビツトと符号ビットを足したものがマルチプ
レクサ44に与えられる。
同様に、制御信号C1はマルチプレクサ32の出方を、直接あるいは1の補数と
して、排他的ORゲート36を介してレジスタ4oに送る。レジスタ4oの17
ビツトの値は、ウォーレスの木として示される加算器48に直接に与えられ、C
1からの符号ビットと組み合わせられる。(1は、また、2の補数を形成するた
めに、適当な補数の桁上りを提供するために使用される。また、丸めビットが上
記加算器48の適当なビット位置に加算される。レジスタ4o内の最上位9ビツ
トは符号ビットと組み合わされて、マルチプレクサ(MIJX) 42に送られ
る。
上記加算器46と48はつす−レスの木として説明しているが、他のいがなる加
算器アレイを用いることができる。
角Yを表す8ビツトは、5inYの復号された値を格納する5inY ROM2
8におけるアドレスとして使用される。アドレス指定された復号された値5in
Yは、これは13ビフトであるが、レジスタ5oに格納される。レジスタ5oの
出方はマルチプレクサ42.44に接続され、上記マルチプレクサのための制御
信号として働き、上記復号された5inYにレジスタ38.40からの5iaX
ならびにcosXを掛けたものである複数の部分積を生成する。
ROM28は再符号化された5inYの値を、実際の5inYの値の代わりに格
納している。Yの代わりに5inYを取ると、1つの近似を無くす。cos Y
はいまもlとみなされている。この結果、表1と表2は次の表IAと表2Aに示
すように修正されることになる。
表IA
Sin(X+Y) = Sin X Cos Y + Sin Y Cos X
= Sin X + Sin Y Cos XCo5(X+Y) = Cos
X Cos Y −Sin X Sin Y−CO5X −Sin Y Sin
X表2人
粁 狙μ」求 cos等式
%式%
以下に詳しく述べるように、5inYは非常に小さいので、上記部分積の上位1
0ビツトのみが上記加算器46と48に与えられる。また、5inXまたはco
sXの1の補数と復号された5inYとの部分積には、補数用桁上りは与えられ
る必要はない。というのは、補数用桁上りは範囲外にあるからである。
加算器46.48の出力は桁上り信号Cと和信号Sで、それらは最終段の加算器
52.54にそれぞれ送られる。最終段の加算器52の出力は16ビツトの5i
n(X+Y)であり、最終段の加算器54の出力は16ビツトのcos(X+Y
)である。
ウォーレスの水内での、上記部分積、符号ビット、補数桁上り、および丸めピン
トの相対位置は図2に示されている。5inXあるいはcos Xは18ビツト
語で、5lnX/cosXメモリからの17ビツトと、2°の位置にある符号ビ
ットとを含む。
マルチプレクサ42.44からの出力、すなわち5inYcosXあるいは5i
nYsinXも、符号ビットを含む18ビツト語となるであろう。角度Yの範囲
は、角度Xの1つの最小の8の分解能であるので、積5inYcosXあるいは
5inYsinXは、5inXあるいはcos Xの値の最小値に対して9ビッ
ト変位させられる。
図1の補数演算方法は、レジスタ38.40に続く排他的ORゲート34.36
によって1の補数を形成し、次に、最下位ビットつまりウォーレスの木46,4
8内の第2−17ビツトにそれぞれlを加える。上記つオーレスの木46.48
を用いることにより、5inYcosXとcosYsinXが適当な箇所に与え
られ、上記マルチプレクサ42.44とウォーレスの木46.48は先導部のゼ
ロを格納する必要がない。
丸め補正の1が第2−16ビツトの値に加えられ、その結果、符号ビットを含む
16ビツト値であるsinとCOSが出力される。
図1と表3を参照すると、第1の象限Qlでは、信号SEL、C1,C2はすべ
てゼロ(0)である。したがって、マルチプレクサ30.32は、それぞれ、5
inXとcos Xを、反転することなく、つまり、1の補数演算をすることな
く、レジスタ38.40に与える。レジスタ38は5inXの値をウォーレスの
木46に与えると共に、5inXの値の反転したものをマルチプレクサ44に供
給する。マルチプレクサ44では、その反転した5inXは復号された5inY
の値を乗じられて、ウォーレスの木48で加算される部分積−5inYsinX
を生成する。上記レジスタ40は、cos Xを直接ウォーレスの木48に与え
て、cos Xが上記−5inYsinXと組み合わされるようにすると共に、
cos Xをマルチプレクサ42に与えて、cosXに5inYが乗じられ、そ
の部分積がウォーレスの木46内で5inXに加算されるようにする。象限lに
対しては、ウォーレスの木46.48内の符号ビットはゼロで、補数演算用の1
は加えられない。加算器46と最終段の加算器52の出力は5inX+5inY
cosXであり、加算器48と最終段の加算器54の出力はcosX −5in
YsinXである。
第2の象@Q2においては、5EL−1,C1−1モしてC2−0である。これ
によって、マルチプレクサ30.32はl−人力を選択するので、マルチプレク
サ30がcos Xを出力し、マルチプレクサ32が5inXを出力する。CI
がlなので、マルチプレクサ32の出力5inXは排他的ORゲート36によっ
て反転され、lの補数としてレジスタ40に格納される。C2がゼロなので、マ
ルチプレクサ30の出力cosXは補数演算されることなくレジスタ38に格納
される。レジスタ38はcos Xを直接加算器46に送ると共に、cos X
の反転値をマルチプレクサ44に送る。レジスタ40は、5inXの1の補数を
、CIの値からの符号ビットと共に、直接に加算器48とマルチプレクサ42に
供給する。clはまた、加算器48の最下位ビットに与えられて、2の補数を完
全化する。加算器46と加算器52の出力はcosX−sinYsinXであり
、加算器48と最終段加算器54の出力は一5inX−sinYcosXである
。
第3の象限Q3においては、5EL−0、Cl−1モしてC2−1である。マル
チプレクサ30.32は5inXとcos Xをそれぞれ出力し、これら両方の
値は排他的ORゲー1−34.36によって反転され、■の補数としてレジスタ
38.40に格納される。レジスタ38は5inXの1の補数の値をその符号ビ
ットlと共に加算器46に与えると共に、5inXの値を出力する。この5in
Xの値はマルチプレクサ44への出力で補数演算し直される。レジスタ40は、
cos Xの1の補数の値をその符号ビット1と共に、加算器48とマルチプレ
クサ42に出力する。加算器46.48に置換供給された5inXとcos X
は両方とも負であるから、lの補数の桁上りC1,C2は両顎算器アレイにおい
て最下位ビットに加えられる。加算器46と最終段加算器52の出力は、−5i
nX−sinYcosXであり、加算器48と最終段加算器54の出力は、−c
osX +5inYsinXである。
なお、排他的ORゲート34による5inXの反転と、正の5inXとしてマル
チプレクサ44に与えられるためにレジスタ38の出力での再反転は、補数演算
の複雑化を減少させる。なぜならば、全変換つまり2の補数への補数演算の代わ
りに、■だけの補数演算が既に2回行なわれてしまっているからである。したが
って、桁上りの1を、レジスタ38.40の出力側よりも加算器46.48にお
いて補数に加えると、スピードを向上させることができると共に、マトリックス
の数字の数を減らすことができる。
第4の象@Q4では、5EL−1C1−0そしてC2−1である。したがつて、
マルチプレクサ30はcos Xを出力し、このcosXは排他的ORゲート3
4によって反転されてレジスタ38に送られる。マルチプレクサ32は5inX
をレジスタ40に出力する。反転されたcos Xはレジスタ38から加算器4
6に供給される一方、再度反転されて、マルチプレクサ44に送られる。レジス
タ40の5inXは加算器48とマルチプレクサ42に出力される。C2はまた
、加算器46内の最下位ビットに与えられ、2の補数を完全にする。加算器46
と最終段加算器52の出力は、−cosX +5inYsinXであり、加算器
48と最終段加算器54の出力は、s in X + s i n Y cos
Xである。
レジスタ50内の復号された5inYは、制御信号を乗算器として機能するマル
チプレクサ42.44に供給する。2進乗算において、上記復号された5inY
は乗数であって、適宜な信号をマルチプレクサに送って、複数の部分積を生成す
る。
最も簡単な形態では、復号された5inYの各ビットは0または1のいずれかを
マルチプレクサに与え、マルチプレクサはウォーレスの木アレイ46.48で加
えられる部分積を生成するであろう。この部分積は、乗数のビット位置に依存し
たその適宜なビット位置に置かれるであろう。
これに代えて、アレイ46.48の大きさは、たとえばブース(Booth)演
算あるいは修正ブース演算を含めた種々の方法を用いて、縮減することができる
。これは、部分積の数を少なくとも半分は減らすことができる。使用するアルゴ
リズムは、1989年11月13日に、「複数ビット復号用乗数(PLURAL
BIT 112EcODING MULTIPLIER)Jに対してダブリュ
ー・アール・ヤング(W、 R、Young)およびシー・ダブリュー・マリノ
フスキ(C,W、 Malinovski)によって提出された米国出願第43
4,790号に開示されたものが好ましい。その出願は参照用にここに組み込ま
れている。上記復号された5inYは、複数ビットからなる適当な制御信号内に
記録された乗数5inYである。上記ヤング/マリノアスキの出願の2ビット符
号化アルゴリズムを用いれば、マルチプレクサ44のための制御信号はゼロ、l
、ン7トlおよび−lであろう。制御信号の−lは1の補数をマルチプレクサの
出力に供給する。つオーレスの木における先行するlの補数には補数演算用の桁
上りは供給されない。なぜならば、それは全く範囲外にあるからである。マルチ
プレクサ42.44は、5inXとcos Xと再符号化された5inYの符号
を用いて符号のエクステンシ1ンを生成するために、適宜なロジックを含んでい
る。
5inYの範囲と値は知られているから、5inY ROM2Bは、5inYを
格納する代わりに、使用されるアルゴリズムに依存するマルチプレクサ制御信号
を格納するであろう。これによって、5inYをマルチプレクサ制御信号に再符
号化するために必要とされるロジックの量が減少する。
なお、レジスタ38.40.50は、スループットを高く、たとえば40MHz
に保つt:めの管路を供給するために使用される。余分の出力ビットを要求する
であろう+1の出力を無くすために、5inXとcos Xの値は、ROMの生
成時におい必要なROMの量をさらに減らすために、5inXとCO5Xを同じ
ROMから得ることができる。これは2つのアクセス(読み出し)を要求するで
あろう。sinの1つの象限を格納し、5rnXj二対してはXでアドレス指定
をし、cosXに対してはXの補数でアドレス指定をすることができる。レジス
タ38.40に値を与える図1の回路の変形を図3に示す。
値Xが制御可能な補数演算器60に入力される。この補数演算器60の出力はR
OM24に接続されている。ROM24の出力は、ゲート・インバータ36を介
してレジスタ38.4CH:接続されている。デコーダ22の選択出力SELは
排他的NORゲート62により上記補数演算器60に接続されている。上記排他
的NORゲート62のもう1つの入力はクロック信号CLKである。CLKがl
でSELがOである第1の半サイクルの間、上記補数演算器60はディスエーブ
ルどなるため、値Xをそのまま出力してROM24のアドレスを指定する。そし
て、ROM24は5inXを出力する。CLKが0−1?あり、SELも0であ
る第2の半サイクルの間、補数演算器6oはROM24のアドレスを指定する補
数Xを出力する。そして、ROM24はcos Xを出力する。5EL−1に対
しては、補数演算!!60は、第1の半サイクルにおいて、Xの補数を出方して
cos Xを指定し、第2の半サイクルにおいては、Xを出力して5inXを指
定する。補数演算器60を簡単にするため、排他的ORゲートを用いた1の補数
演算器とすることができる。象限に対する最小角および最大角は、最下位ビット
の1/2だけオアセットされるであろう。
デコーダ22の補数制御出力C1,C2は、クロック信号CLK62によって制
御されるマルチプレクサ64を介してインバータ36に接続されている。CLK
が1である第4の半サイクルの間、マルチプレクサ3oはc2をインバータ36
に与えるとともに、CLKが0である第2の半サイクルの間、上記マルチプレク
サ30はCIをインバータ36に与える。クロック信号CLKはレジスタ4゜の
クロック入力およびレジスタ38の反転クロック入力に接続されている。したが
って、第1の半サイクルと第2の半サイクルとの間の1から。へ移る時に、レジ
スタ38がインバータ36かもロードされるとと共に、第2の半サイクルと第1
の半サイクルとの間のOからIへ移る時に、レジスタ4oがインバータ36から
ロードされる。
SEL信号がsinとCosのアドレス指定順序を制御する一方、信号C1とc
2が5inXとcos Xの反転を制御する。選択信号SELが0となる第18
よび第3象限では、第1の半サイクルの間、ROM24からの出力ginXがレ
ジスタ38に与えられる一方、第2の半サイクルの間、cos Xがレジスタ4
oに与えられる0選択信号SELが1となる第2および第4象限に対しては、第
1の半サイクルの間、ROM24の出力5inXがレジスタ4oに与えられる一
方、第2の半サイクルの間、cosXがレジスタ38に与えられる。図」の回路
の残りのものは、前述のように動作する。
図1は2つの乗算器を用いて5in(X+Y)とcos(X+Y)を並行して生
成するものを示したが、同じ原理を使用して、5in(X+Y)とcos(X+
Y)を直列に生成することもできる。こうすれば、マルチプレクサ44、ウォー
レスの木488よび最終段の加算854を省略することができる。マルチプレク
サ30.32、排他的0R34,36への制御信号は表2Aに示した結果を生じ
させるように変えられる。
図示しないがさらに上述のものに代わるものとして、上記レジスタ38.40は
、マルチプレクサ30.32にそれぞれ接続されるさらに2つの排他的NORゲ
ート34’、36’に置き換えてもよい。これらの排他的NORゲート34’、
36′は、時間を余分にかけることなく、排他的ORゲート34.36の出力の
補数値を供給することができる。上記排他的ORゲート34.36と排他的NO
Rゲ−ト34’、36’の出力はそれぞれウォーレスの木46.48に直接に接
続されると共に、マルチプレクサ44.42にそれぞれ接続される。
丸め切り捨てによる誤差を表4に示す。
5inX、cosX(テーブルへの丸め) ≦2−18sinY(テーブルへの
丸め) ≦2−”cosX、s inX (10ビツトに切り捨て) ≦2−1
s最後の丸め ≦2−16
ンミユレーシヨンによれば、5in(X + Y)とcos(X+Y)に8ける
ピーク誤差は−92,6dbi二等しく、y!差ベクトルの太ささは、誤差ベク
トルがであれば、最大値−90,2dbとなる。
以上、本発明の詳細な説明し、図示したが、それは単に一例としてのものであっ
□ −
て、限定するためのものではないことは、はっきりと理解できょう。本発明の精
神と範囲は請求のI!!囲によってのみ限定されるべきである。
5INX+C03X)
Fl!”6;、 2
F’llt; 3;
要約書
5inX、cosXおよび5inYについての値を蓄え、上記5inXおよびc
os Xを5inYと乗算して部分積(−sinYsinX)と部分積5inY
cosXを生成し、5in(X + Y)を生成するために、5inXに部分積
5inYcosXを加え、また、cos(X+Y)を生成するために、cos
Xに部分積(−sinYsinX)を加えるs in/cos発生器。上記5i
nXおよびcos Xの値は符号の指定を行うことなく、唯一の象限についてだ
け蓄えられ、象限の制御は、加算と乗算を行う前に、5inXとcos Xの固
有の値を補数演算するために行なわれる。この補数演算はlの補数を生成し、最
下位のビットに1を加えて2の補数を形成する。
1+++謹−Ape1m+m N−ρCT/US 91105402
Claims (28)
- 1.等式sin(X+Y)=sinX+sinYcosX,cos(X+Y)= cosX−sinYsinXに従って略正弦波形の信号を発生する関数発生器で あって、sinXの値を格納する第1sin格納手段と、cosXの値を格納す るcos格納手段と、sinYの値を格納する第2sin格納手段と、上記第1 および第2sin格納手段からのsinXおよびsinY、並びに、上記cos 格納手段からのcosXを受けて、部分積(−sinYsinX)と部分積 s inYcosXを生成する乗算手段と、 sinXに上記部分積sinYcosXを加えると共に、cosXに上記部分積 (−sinYsinX)を加えて、sin(X+Y)とcos(X+Y)を表す 信号を生成する加算手段を備える関数発生器。
- 2.請求項1による関数発生器にぢいて、上記sinXおよびcosXは夫々N ビットを有し、上記乗算手段はsinXおよびcosXの最上位ビットを使用し 、MはNより小さい関数発生器。
- 3.請求項2による関数発生器において、Mは実質的にNより小さい関数発生器 。
- 4.請求項2による関数発生器において、上記加算手段の出力は、(N+P)ビ ットを有し、上記加算手段は、誤差を四捨五入するために、上記sin(X+Y )またはcos(X+Y)に1を加える丸め手段を含む関数発生器。
- 5.請求項4による関数発生器において、上記第1および第2sinおよびco s格納手段は、符号ビットを含まないで、(N−l)ビットのsinXおよびc osXを記憶する関数発生器。
- 6.請求項1による関数発生器において、上記第1sinおよびcos格納手段 と上記乗算および加算手段との間に、上記sinXおよびcosXの補数を形成 するための補数手段を含む関数発生器。
- 7.請求項6による関数発生器において、上記sinおよびcos格納手段はs inXおよびcosXの1つの象限を夫々蓄えており、さらに、象限信号を受け て、上記象限信号の1つの関数として、上記乗算手段と補数手段を制御するため の象限手段を含む関数発生器。
- 8.請求項7による関数発生器において、上記第1sinおよびcos格納手段 は、符号ビットなしで、上記slnXおよびcosXを夫々格納し、かつ、上記 象限手段は上記象限信号の1つの関数として上記加算手段の最上位ビットに符号 ビットを与える関数発生器。
- 9.請求項8による関数発生器において、上記補数手段は1の補数を形成し、上 記加算手段は、sinXおよびcosXの1の補数の最下位ビットに符号ピット の1を加算する手段を含む関数発生器。
- 10.請求項1による関数発生器において、上記sinおよびcos格納手段は 、符号ビットなしで、sinXおよびcosXの1つの象限を夫々記憶し、また 、象限手段を含み、この象限手段は象限信号を受け、上記乗算手段を上記象限信 号の関数として制御して、上記象限信号の関数として、上記加算手段の最上位ビ ットに上記符号ビットを与える関数発生器。
- 11.請求項10による函数発生器において、上記象限手段の制御の下に、si nXおよびcosXの1の補数を形成するための補数手段を含み、上記符号ピッ トは、また、2の補数を形成するために、上記加算手段の最下位ビットに加算さ れる関数発生器。
- 12.請求項1による関数発生器において、上記第1sinおよびcos格納手 段に連結された入力端子と上記加算手段に連結された出力端子を持つ第1マルチ プレクサ手段と、上記第1sinおよびcos格納手段に連結された入力端子と 上記乗算手段に連結された出力端子を持つ第2マルチプレクサ手段と、上記第1 および第2マルチプレクサ手段を制御する制御手段とを含む関数発生器。
- 13.請求項12による関数発生器において、上記sinXおよびcosXの補 数を形成するために、上記第1おょび第2マルチプレクサ手段と上記乗算および 加算手段との間に補数手段を含む関数発生器。
- 14.請求項13による関数発生器において、上記第1sinおよびcos格納 手段はそれぞれ上記sinXおよびcosXの1つの象限を記憶し、上記制御手 段は、象限信号を受けて、上記第1および第2マルチプレクサ手段と上記補数手 段を上記象限信号の1つの関数として制御するための象限手段を含む関数発生器 。
- 15.請求項1による関数発生器において、上記乗算手段は、sinYを受けて 、sinYをMUX制御信号に復号する復号手段(28)と、sinXとcos Xを受けて、上記MUX制御信号に応じて、sinXとcosXと零値のシフト され、あるいは、シフトされなかった値として、複数の部分積を生成するマルチ プレクサ手段を含む関数発生器。
- 16.請求項15による関数発生器において、上記復号手段は、sinYをMU X制御信号である零、非シフトおよびシフト信号およびビット対に対する補数に 復号する関数発生器。
- 17.請求項15による関数発生器において、上記復号手段(28)は第2si n格納手段であり、Yによってアドレス指定されて復号されたsinYの関数と して、上記MUX制御信号を格納する関数発生器。
- 18.請求項15による関数発生器において、上記加算手段は和と繰り上げを生 成するウォーレスの木と、sin(X+Y)とcos(X+Y)を生成するため に、上記和と繰り上げを加算する最柊段の加算器を含む関数発生器。
- 19.請求項15による関数発生器において、上記マルチプレクサ手段は第1と 第2のマルチプレクサ手段を含み、上記加算手段は、上記第1および第2マルチ プレクサ手段から入力を夫々受けて、sin(X+Y)およびcos(X+Y) をそれぞれ出力する第1及び第2加算手段を含み、 上記復号手段は上記第1および第2マルチプレクサ手段に共通MUX制御信号を 与える関数発生器。
- 20.請求項1による関数発生器において、上記乗算手段は第1および第2乗算 手段を含み、 上記加算手段は、上記第1および第2乗算手段からλ力を夫々受けて、sin( X+Y)およびcos(X+Y)の出力を夫々与える第1および第2加算手段を 含み、また、上記第1sinおよびcos格納手段に連結された入力端子と上記 第2乗算手段の入力端子と上記第1加算手段の入力端子に連結された出力端子と を有する第1マルチプレクサ手段を含み、 また、上記第1sinおよびcoos格納手段に連結された入力端子と、上記第 1乗算手段の入力端子および上記第2加算手段の入力端子に連結された出力端子 とを有する上記第2マルチプレクサ手段を含み、上記第1および第2マルチプレ クサ手段を制御する制御手段を含む関数発生器。
- 21.請求項20による関数発生器において、上記sinXおよびcosXの補 数を形成するために、上記第1および第2マルチプレクサ手段と上記第1および 第2乗算手段お上び第1、第2加算手段との間に、補数手段を含む関数発生器。
- 22.請求項21による関数発生器において、上記第1sinおよびcos格納 手段は上記sinXおよびcosXの1つの象限を夫々記憶し、上記制御手段は 、象限信号を受けて、上記第1および第2マルチプレクサ手段と上記補数手段を 上記象限信号の関数として制御する象限手段を含む関数発生器。
- 23.請求項21による関数発生器において、上記補数手段は、上記第1および 第2マルチプレクサ手段の出力に連結され、上記制御手段によって制御される第 1および第2補数手段と、常に補数演算を行うために、上記第1補数手段と、上 記第2乗算手段と第1加算手段の内の1つとの間に連結された第3補数手段とを 含む関数発生器。
- 24.請求項23による関数発生器において、上記第1、第2および第3補数手 段け1の補数を形成し、上記第1および第2加算手段は、補数化されたsinX またはcosXの最下位ビットに1を加えるための手段を含む関数発生器。
- 25.請求項1による関数において、 上記第2sin格納手段は、復号されたslnYをMUX制御信号として記憶し 、上記乗算手段は、sinXおよびcosXを受けて、上記MUX制御信号に応 じて、si口XとcosXと零のシフトされ、あるいは、シフトされない値とし て複数の部分積を生成するマルチプレクサ手段を含む関数発生器。
- 26.請求項1による関数発生器において、上記第2sin格納手段は、Yとし てsinYの値を格納する関数発生器。
- 27.請求項1による関数発生器において、上記第1sinおよびcos格納手 段は、sinXの値の1つの象限を蓄えるための共通sin格納手段と、cos Xのために、上記共通sin格納手段のsinXの値をアドレス指定するための Xを補数化するための入力補数手段を備える関数発生器。
- 28.請求項1による関数発生器において、上記第1sinおよびcos格納手 段は、各Xについて1つのワードとして、sinXおよびcosXの1つの象限 を蓄えるための共通格納手段を含む関数発生器。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US561,821 | 1990-08-02 | ||
US07/561,821 US5113361A (en) | 1990-08-02 | 1990-08-02 | Sin/cos generator implementation |
PCT/US1991/005402 WO1992002872A1 (en) | 1990-08-02 | 1991-07-30 | Sin/cos generator implementation |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH05509429A true JPH05509429A (ja) | 1993-12-22 |
JP2910937B2 JP2910937B2 (ja) | 1999-06-23 |
Family
ID=24243615
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP3514485A Expired - Fee Related JP2910937B2 (ja) | 1990-08-02 | 1991-07-30 | Sin/cos発生器 |
Country Status (6)
Country | Link |
---|---|
US (1) | US5113361A (ja) |
EP (1) | EP0541707B1 (ja) |
JP (1) | JP2910937B2 (ja) |
DE (1) | DE69103757T2 (ja) |
IE (1) | IE67648B1 (ja) |
WO (1) | WO1992002872A1 (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPWO2015194674A1 (ja) * | 2014-06-20 | 2017-04-20 | パナソニックヘルスケアホールディングス株式会社 | 医薬品処方支援方法、医薬品処方支援用コンピュータプログラムおよび医薬品処方支援装置 |
Families Citing this family (20)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5276633A (en) * | 1992-08-14 | 1994-01-04 | Harris Corporation | Sine/cosine generator and method |
US5467294A (en) * | 1994-03-09 | 1995-11-14 | Hu; Vince | High speed, low power direct digital synthesizer |
US5615139A (en) * | 1994-03-23 | 1997-03-25 | Advanced Micro Devices, Inc. | Apparatus and method for synthesizing a sinusoidal signal |
EP0718746B1 (fr) * | 1994-12-21 | 2005-03-23 | Koninklijke Philips Electronics N.V. | Multiplieur de booth pour fonctions trigonométriques |
JP2907045B2 (ja) * | 1995-01-06 | 1999-06-21 | ヤマハ株式会社 | 正弦波発生回路 |
DE19738357B4 (de) * | 1997-09-02 | 2005-01-05 | Rohde & Schwarz Gmbh & Co. Kg | Verfahren zum Betrieb eines digitalen Sinus-Generators |
US6661852B1 (en) | 1999-07-21 | 2003-12-09 | Raytheon Company | Apparatus and method for quadrature tuner error correction |
US6640237B1 (en) * | 1999-07-27 | 2003-10-28 | Raytheon Company | Method and system for generating a trigonometric function |
IL132161A (en) | 1999-09-30 | 2002-09-12 | Netmor Ltd | Digital coherent envelope demodulation of fdma signals |
US6320431B1 (en) * | 1999-10-08 | 2001-11-20 | National Semiconductor Corporation | Apparatus and method of generating numerically controlled oscillator signals |
US6373316B1 (en) * | 2000-01-18 | 2002-04-16 | International Business Machines Corporation | Digital cosine and sine multiplication circuits |
US6590948B1 (en) | 2000-03-17 | 2003-07-08 | Raytheon Company | Parallel asynchronous sample rate reducer |
US6647075B1 (en) | 2000-03-17 | 2003-11-11 | Raytheon Company | Digital tuner with optimized clock frequency and integrated parallel CIC filter and local oscillator |
US6931082B2 (en) | 2001-04-10 | 2005-08-16 | Netmor Ltd. | Digital phase locked loop |
GB0112639D0 (en) * | 2001-05-23 | 2001-07-18 | Lucas Industries Ltd | Sinusoid synthesis |
DE10129628A1 (de) * | 2001-06-20 | 2003-01-02 | Juergen Kaesser | Verfahren und Schaltung zur Erzeugung von sinusartigen Signalen und Taktsignalen für Frequenzen eines Rasters und ihre Anwendung in Funkgeräten |
US7580964B2 (en) * | 2006-01-25 | 2009-08-25 | Teledyne Technologies Incorporated | Hardware-efficient phase-to-amplitude mapping design for direct digital frequency synthesizers |
US8200728B2 (en) * | 2008-05-29 | 2012-06-12 | Harris Corporation | Sine/cosine generator |
US8195118B2 (en) * | 2008-07-15 | 2012-06-05 | Linear Signal, Inc. | Apparatus, system, and method for integrated phase shifting and amplitude control of phased array signals |
US8872719B2 (en) * | 2009-11-09 | 2014-10-28 | Linear Signal, Inc. | Apparatus, system, and method for integrated modular phased array tile configuration |
Family Cites Families (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US3813528A (en) * | 1972-06-02 | 1974-05-28 | Singer Co | High-speed function generator |
US4077063A (en) * | 1976-08-11 | 1978-02-28 | The Singer Company | Apparatus for rapidly determining the trigonometric functions of an input angle |
DE2701859B1 (de) * | 1977-01-18 | 1978-06-15 | Siemens Ag | Verfahren und digitaler Generator zur direkten Synthese von Sinusschwingungen |
US4159526A (en) * | 1977-08-08 | 1979-06-26 | Ncr Corporation | Digitally controlled variable frequency oscillator |
NZ192190A (en) * | 1978-11-23 | 1983-06-17 | Gen Electric Co Ltd | Digital sine wave generator for fsk transmitter |
US4342245A (en) * | 1979-10-26 | 1982-08-03 | Norlin Industries, Inc. | Complex waveform generator for musical instrument |
US4486846A (en) * | 1982-06-28 | 1984-12-04 | Motorola Inc. | Numerically controlled oscillator using quadrant replication and function decomposition |
US4809205A (en) * | 1986-11-19 | 1989-02-28 | Rockwell International Corporation | Digital sine conversion circuit for use in direct digital synthesizers |
US4888719A (en) * | 1988-07-21 | 1989-12-19 | General Electric Company | Sampled-data sine wave and cosine wave generation by accumulation |
-
1990
- 1990-08-02 US US07/561,821 patent/US5113361A/en not_active Expired - Lifetime
-
1991
- 1991-07-30 EP EP91915410A patent/EP0541707B1/en not_active Expired - Lifetime
- 1991-07-30 WO PCT/US1991/005402 patent/WO1992002872A1/en active IP Right Grant
- 1991-07-30 DE DE69103757T patent/DE69103757T2/de not_active Expired - Fee Related
- 1991-07-30 JP JP3514485A patent/JP2910937B2/ja not_active Expired - Fee Related
- 1991-08-01 IE IE272691A patent/IE67648B1/en not_active IP Right Cessation
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPWO2015194674A1 (ja) * | 2014-06-20 | 2017-04-20 | パナソニックヘルスケアホールディングス株式会社 | 医薬品処方支援方法、医薬品処方支援用コンピュータプログラムおよび医薬品処方支援装置 |
Also Published As
Publication number | Publication date |
---|---|
EP0541707B1 (en) | 1994-08-31 |
US5113361A (en) | 1992-05-12 |
DE69103757D1 (de) | 1994-10-06 |
EP0541707A1 (en) | 1993-05-19 |
JP2910937B2 (ja) | 1999-06-23 |
WO1992002872A1 (en) | 1992-02-20 |
IE912726A1 (en) | 1992-02-12 |
DE69103757T2 (de) | 1994-12-22 |
IE67648B1 (en) | 1996-04-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JPH05509429A (ja) | Sin/cos発生器 | |
US6233597B1 (en) | Computing apparatus for double-precision multiplication | |
JPH061438B2 (ja) | 倍精度乗算器 | |
JPS62194577A (ja) | 複素乗算器及び複素乗算方法 | |
JPH05134851A (ja) | 乗算回路出力方式 | |
JP2970231B2 (ja) | 並列乗算回路 | |
JP2009507413A (ja) | 全加算器モジュールおよび該全加算器モジュールを用いる乗算器デバイス | |
JPH08314697A (ja) | 符号付き/符号なし数兼用乗算器 | |
JPS58137045A (ja) | 並列乗算器 | |
JP3850512B2 (ja) | リードソロモン復号装置 | |
JP2991788B2 (ja) | 復号器 | |
JPH0778748B2 (ja) | ガロア体演算ユニット | |
JPS62122333A (ja) | シンドロ−ム回路 | |
JPH1115641A (ja) | 冗長2進加算器を用いた乗算装置 | |
JP2734438B2 (ja) | 乗算装置 | |
JPS62216034A (ja) | 並列乗算器 | |
JP3096574B2 (ja) | 倍精度乗算を実行する方法及び演算装置 | |
SU676986A1 (ru) | Цифровой функциональный преобразователь | |
JPS62253228A (ja) | パリテイあるいはシンドロ−ム生成回路 | |
JPS63623A (ja) | 乗算器 | |
JPS6383834A (ja) | 乗算器 | |
JP3186612B2 (ja) | 乗算器 | |
SU478306A1 (ru) | Матричный параллельный процессор дл вычислени преобразовани адамара | |
SU1083185A1 (ru) | Матричный вычислитель | |
KR100248977B1 (ko) | 승산기 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
LAPS | Cancellation because of no payment of annual fees |