JPH0589157A - Processor for calculating interaction force for gravity multiple system and electric force multiple system - Google Patents

Processor for calculating interaction force for gravity multiple system and electric force multiple system

Info

Publication number
JPH0589157A
JPH0589157A JP27657291A JP27657291A JPH0589157A JP H0589157 A JPH0589157 A JP H0589157A JP 27657291 A JP27657291 A JP 27657291A JP 27657291 A JP27657291 A JP 27657291A JP H0589157 A JPH0589157 A JP H0589157A
Authority
JP
Japan
Prior art keywords
logarithmic expression
expression
logarithmic
output
flag
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
Application number
JP27657291A
Other languages
Japanese (ja)
Other versions
JP2948378B2 (en
Inventor
Hiroaki Tomita
冨田浩明
Takayoshi Hashimoto
橋本栄利
Nobuaki Miyagawa
宮川宣明
Junichiro Makino
牧野淳一郎
Sachiko Kawabe
川辺幸子
Tomoyoshi Ito
伊藤智義
Shiyunichi Ebisaki
戎崎俊一
Taiichiro Sugimoto
杉本大一郎
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.)
Fujifilm Business Innovation Corp
Original Assignee
Fuji Xerox Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Fuji Xerox Co Ltd filed Critical Fuji Xerox Co Ltd
Priority to JP27657291A priority Critical patent/JP2948378B2/en
Publication of JPH0589157A publication Critical patent/JPH0589157A/en
Application granted granted Critical
Publication of JP2948378B2 publication Critical patent/JP2948378B2/en
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02EREDUCTION OF GREENHOUSE GAS [GHG] EMISSIONS, RELATED TO ENERGY GENERATION, TRANSMISSION OR DISTRIBUTION
    • Y02E60/00Enabling technologies; Technologies with a potential or indirect contribution to GHG emissions mitigation
    • Y02E60/10Energy storage using batteries

Landscapes

  • Complex Calculations (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

PURPOSE:To provide an inexpensive processor which can calculate interactive force and potential in a gravity or electric force multiple system at a speed of the same order as a supercomputer. CONSTITUTION:A relative position calculation means 2 obtains the coordinate differences of X, Y and Z based on the coordinates of two points, and converts them to logarithm expression. A relative distance calculation means 3 obtains the square of a relative distance r2 from the coordinate difference and the prescribed constant, and a 1/2 power-raising means 4 and a 3/2 power-raising means 5 obtain (r) and r3. Mass or a change Mj is supplied from the external part of an integrated circuit 1 at every cycle. Logarithm expression division means 6a and 6b obtain Mj/r3 and Mj/r. Interactive force calculation means 7a-7c calculate the products of Mj/r3 and the respective coordinate differences. A potential calculation means 8 calculates u*(Mj/r). Fixed point conversion means 9a-9d convert logarithm expression into fixed point expression. Values converted into fixed point expression in addition means for integration 10a-10d are sequentially integrated in integrated value register means 11a-11d. A processing in the integrated circuit 1 is made into a pipe line.

Description

【発明の詳細な説明】Detailed Description of the Invention

【0001】[0001]

【産業上の利用分野】本発明は、互いに重力を及ぼしあ
いながら運動している多数の星から構成される天体の様
な重力多体系や、互いに電気力を及ぼしあいながら運動
する多数のプラズマ粒子やタンパク質分子中の原子から
なる電気力多体系において、ある粒子が他の粒子から受
ける力およポテンシャルを計算するための専用処理装置
に関するものである。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a gravitational multi-body system such as an astronomical object composed of a large number of stars moving while exerting gravity on each other, and a large number of plasma particles moving while exerting an electric force on each other. The present invention relates to a dedicated processing device for calculating the force and potential that a particle receives from another particle in an electric force multi-body system composed of atoms in a protein molecule.

【0002】[0002]

【従来の技術】重力多体系とは、重力で相互作用してい
るたくさんの粒子からなる系である。銀河や球状星団な
どの多くが重力多体系とみなすことができる。重力多体
系はニュートンの運動方程式と万有引力(重力)だけに
支配される極めて単純な系でもあるにかかわらず、非線
形性に富んだ奇妙な振る舞いをすることが多い。3体以
上の場合は解析解が無いので数値計算を行う必要がある
が、大変な計算量を伴う。重力は遠方まで届くため、N
個の粒子の移動を計算するためにはN×(N−1)/2
個のペアに働く相互作用を全て考慮せねばならない。従
来は、重力および重力ポテンシャル計算をソフトウェア
で記述し、スーパーコンピュータ上で計算していた。
2. Description of the Related Art A gravitational many-body system is a system composed of many particles interacting by gravity. Many galaxies and globular clusters can be regarded as gravitational many-body systems. Although many-gravity systems are extremely simple systems governed only by Newton's equation of motion and universal gravitational force (gravity), they often behave strangely with rich nonlinearity. If there are three or more bodies, there is no analytic solution, so it is necessary to perform numerical calculation, but this involves a great amount of calculation. Gravity reaches far, so N
N * (N-1) / 2 to calculate the movement of individual particles
We must consider all interactions that work on individual pairs. Conventionally, gravity and gravitational potential calculation were written in software and calculated on a supercomputer.

【0003】[0003]

【発明が解決しようとする課題】従来技術では、粒子数
Nが大きいとその計算量は膨大になり現在最高のスーパ
ーコンピュータをもってしても数万体の計算が限度であ
る。一方、重力多体系の3次元構造を明らかにするため
には、最低数百万体の粒子の相互作用の数値計算をしな
ければならないが、現状のスーパーコンピュータでは計
算能力が全く足りないという、根本的問題がある。同様
の問題は、強結合プラズマや、強い不安定性が存在する
希薄プラズマや、タンパク質分子の3次元構造の解析の
分野においても存在する。また、スーパーコンピュータ
は極めて高価であるので、上記計算を行うにしても極め
て高価なものとなる。
In the prior art, when the number N of particles is large, the amount of calculation becomes enormous, and even the best supercomputer at present has a limit of tens of thousands of calculations. On the other hand, in order to clarify the three-dimensional structure of a gravitational many-body system, it is necessary to perform numerical calculation of the interaction of at least millions of particles, but the current supercomputer lacks computational power at all. There is a fundamental problem. Similar problems also exist in the fields of strongly coupled plasma, diluted plasma in which strong instability exists, and the analysis of the three-dimensional structure of protein molecules. Further, since the supercomputer is extremely expensive, even if the above calculation is performed, it will be extremely expensive.

【0004】本発明は、重力多体系における重力と重力
ポテンシャルの計算、あるいは、電気力多体系における
電気力と電気力ポテンシャルを、スーパーコンピュータ
とほぼ同程度のスピードで計算し、かつ、スーパーコン
ピュータよりもはるかに安い価格の、処理装置を提供す
るものである。
The present invention calculates the gravity and gravitational potential in a gravitational many-body system, or the electric force and electric potential in an electric many-body system at almost the same speed as a supercomputer, and Also offers a much cheaper processor.

【0005】[0005]

【課題を解決するための手段】本発明は、図1に示すよ
うに、一つの集積回路1上に、相対位置計算手段2と、
相対距離計算手段3と、1/2乗手段4と、3/2乗手
段5と、対数表現除算手段6aと、対数表現除算手段6
bと、3個の相互作用力計算手段7a,7b,7cと、
ポテンシャル計算手段8と、4個の固定小数点表現変換
手段9a,9b,9c,9dと、4組の積算用加算手段
10a, 10b,10c,10dと積算値レジスタ手
段11a,11b,11c,11dと、積算値レジスタ
手段11の内容を0にする手段と、積算値レジスタ手段
11の内容をホールドする手段と、外部バスインターフ
ェース手段15と、4つのパイプラインレジスタ19
a,19b,19c,19dから構成されている。前記
相対位置計算手段2は、成分差計算手段20a,20
b,20c及び3次元座標用レジスタ手段21a,21
b,21cを備えている。
According to the present invention, as shown in FIG. 1, a relative position calculating means 2 and a relative position calculating means 2 are provided on one integrated circuit 1.
Relative distance calculation means 3, 1/2 power means 4, 3/2 power means 5, logarithmic expression division means 6a, and logarithmic expression division means 6
b, three interaction force calculation means 7a, 7b, 7c,
Potential calculation means 8, four fixed point representation conversion means 9a, 9b, 9c, 9d, four sets of addition means for integration 10a, 10b, 10c, 10d and integrated value register means 11a, 11b, 11c, 11d. , Means for setting the content of the integrated value register means 11 to 0, means for holding the content of the integrated value register means 11, an external bus interface means 15, and four pipeline registers 19
It is composed of a, 19b, 19c and 19d. The relative position calculation means 2 includes component difference calculation means 20a, 20
b, 20c and register means 21a, 21 for three-dimensional coordinates
b, 21c.

【0006】[0006]

【作用】3次元空間上の質量中心或いは電荷中心を示す
2点の座標データのうち一方(Xj,Yj,Zj)は集
積回路1の外部より毎サイクル供給され、もう一方の座
標データ(Xi,Yi,Zi)は外部バス13および内
部バス12aを介し相対位置計算手段2内部のXi,Y
i,Zi用レジスタ手段21に格納されている。相対位
置計算手段2ではXi−Xj,Yi−Yj,Zi−Zj
を求め、それぞれ対数表現のXij,Yij,Zijに
変換する。相対距離計算手段3は、外部バス13および
内部バス12aを介して書き込まれる内部レジスタ46
の値eとXij,Yij,Zijから r2=Xij**2+Yij**2+Zij**2+e**2 を求め、出力する。なお、eは定数である。1/2乗手
段4はr=r2**(1/2)を求める。3/2乗手段
5はrとr2の積をとることによりr3=r2**(3
/2)を求める。集積回路1の外部より、予め対数表現
で表現されたMjが毎サイクル供給される。なお、Mj
は質量或いは電荷である。二つの対数表現除算手段6a
と6bは、それぞれ、Mj/r3とMj/rを求める。
三つの相互作用力計算手段7a,7b,7cは前記Mj
/r3とそれぞれXij,Yij,Zijの積、すなわ
ち、Xij*(Mj/r3),Yij*(Mj/r
3),Zij*(Mj/r3)を計算する。ポテンシャ
ル計算手段8は定数uとMj/rからu*(Mj/r)
を計算する。固定小数点変換手段9a,9b,9cは、
それぞれ、対数表現のXij*(Mj/r3),Yij
*(Mj/r3),Zij*(Mj/r3)を固定小数
点表現に変換する。固定小数点変換手段9dは対数表現
のu*(Mj/r)を固定小数点表現に変換する。積算
用加算手段10a,10b,10c,10dは、それぞ
れ、固定小数点表現に変換された前記4つの値とそれ以
前のそれぞれの積算値が入っている積算値レジスタ手段
11a,11b,11c,11dの値と足しあわせ、そ
の結果はそれぞれ積算値レジスタ手段11a,11b,
11c,11dに書き込まれる。また積算値レジスタ手
段11の内容は内部バス12bおよび外部バス13を使
い集積回路1の外部に読み出すことができる。
One of the coordinate data (Xj, Yj, Zj) of the two points indicating the center of mass or the center of charge in the three-dimensional space is supplied from the outside of the integrated circuit 1 every cycle, and the other coordinate data (Xi, Yj, Zi). Yi, Zi) is Xi, Y inside the relative position calculating means 2 via the external bus 13 and the internal bus 12a.
It is stored in the register means 21 for i and Zi. In the relative position calculation means 2, Xi-Xj, Yi-Yj, Zi-Zj.
Are calculated and converted into logarithmic expressions Xij, Yij, and Zij, respectively. The relative distance calculating means 3 has an internal register 46 written via the external bus 13 and the internal bus 12a.
From the value e of X and Xij, Yij, Zij, r2 = Xij ** 2 + Yij ** 2 + Zij ** 2 + e ** 2 is obtained and output. Note that e is a constant. The 1/2 means 4 calculates r = r2 ** (1/2). The 3/2 squaring means 5 calculates the product of r and r2 to obtain r3 = r2 ** (3
/ 2) is calculated. From the outside of the integrated circuit 1, Mj previously expressed in logarithmic expression is supplied every cycle. Note that Mj
Is mass or charge. Two logarithmic expression division means 6a
And 6b determine Mj / r3 and Mj / r, respectively.
The three interaction force calculation means 7a, 7b, 7c are Mj
/ R3 and Xij, Yij, and Zij respectively, that is, Xij * (Mj / r3), Yij * (Mj / r
3), Zij * (Mj / r3) is calculated. The potential calculation means 8 calculates u * (Mj / r) from the constant u and Mj / r.
To calculate. The fixed point conversion means 9a, 9b, 9c are
The logarithmic expressions Xij * (Mj / r3) and Yij, respectively.
* (Mj / r3), Zij * (Mj / r3) are converted into fixed point representation. The fixed point conversion means 9d converts u * (Mj / r) in logarithmic representation into fixed point representation. The adding means for integration 10a, 10b, 10c, 10d of the integrated value register means 11a, 11b, 11c, 11d respectively containing the four values converted into the fixed point representation and the respective integrated values before that. The values are added together, and the results are respectively added value register means 11a, 11b,
It is written in 11c and 11d. The contents of the integrated value register means 11 can be read out of the integrated circuit 1 using the internal bus 12b and the external bus 13.

【0007】この集積回路内の処理はパイプライン化さ
れている。このため、データ間の遅延の差をあわせるた
めのパイプラインレジスタ19a,19b,19c,1
9dがある。遅延されるデータはXij,Yij,Zi
j,Mjである。
The processing in this integrated circuit is pipelined. Therefore, pipeline registers 19a, 19b, 19c, 1 for adjusting the delay difference between data
There is 9d. The delayed data is Xij, Yij, Zi
j and Mj.

【0008】[0008]

【実施例】まず、実施例で用いて対数表現について説明
する。ビット長lの2進数pが実数 x=2**(p/f) ...(式5) を表すものとする。ここでfは定数で、 f=2**m ...(式6) と表せるものとする。このmを小数語長と呼ぶことにす
る。もとのビットパターンを小数部語長mビットの符号
なし固定小数点表示と見たときの値をyとすると、 p=y*f ...(式7) 従って、 x=2**y ...(式8) なる関係が成り立つ。この表現形式により、1以上2*
*(2**(1−m))未満の範囲の実数を相対間隔2
**(−(2**m))で表現することになる。実施例
においては、ビット長l=12、そのうち小数部語長m
=5ビットという形式を用いている。従って、ビットパ
ターン0x000(0xは、これに続く3桁の数が0〜
Fの16進数であることを示している)は1、ビットパ
ターン0x001は2**(1/32)、ビットパター
ン0xFFFは2**(127+(31/32))を表
すことになる。この12ビットを対数表現のビット[1
1:0]に割当てる。なお、ビット[11:0]はビッ
ト0からビット11までの12ビットからなるデータを
意味する。この形式では正の値しか表現できない。そこ
で、符号にもう1ビット、0か否かを示すのにもう1ビ
ット使う、前者のビットを符号フラグとよび、対数表現
のビット12に割当てる。後者のビットが1であれば対
数表現で表現される値は0ではないとする。このビット
のことを非ゼロフラグとよび、対数表現のビット13に
割当てる。したがって、実施例では対数表現を合計14
ビットで表している。
EXAMPLES First, the logarithmic expression used in the examples will be described. A binary number p having a bit length 1 is a real number x = 2 ** (p / f). . . (Formula 5) is represented. Where f is a constant, f = 2 ** m. . . (Formula 6) This m will be called the fractional word length. Letting y be the value when the original bit pattern is regarded as an unsigned fixed-point display with a fraction part word length of m bits, p = y * f. . . (Equation 7) Therefore, x = 2 ** y. . . (Equation 8) The following relationship holds. 1 or more 2 *
Real number in the range less than * (2 ** (1-m)) is the relative interval 2
It will be expressed by ** (-(2 ** m)). In the embodiment, bit length l = 12, of which fraction part word length m
= 5 bits is used. Therefore, the bit pattern 0x000 (0x is a 3-digit number following 0
The hexadecimal number of F) indicates 1, the bit pattern 0x001 indicates 2 ** (1/32), and the bit pattern 0xFFF indicates 2 ** (127+ (31/32)). These 12 bits are logarithmically expressed as bits [1
1: 0]. Bits [11: 0] mean data consisting of 12 bits from bit 0 to bit 11. Only positive values can be represented in this format. Therefore, the former bit, which is used to indicate whether the code is 1 bit or 0, is called the code flag, and is assigned to bit 12 of logarithmic expression. If the latter bit is 1, the value expressed in logarithmic expression is not 0. This bit is called a non-zero flag and is assigned to bit 13 of logarithmic representation. Therefore, in the embodiment, the logarithmic representation is 14
It is expressed in bits.

【0009】以下に、実施例について説明する。全体の
構成は図1に示されている。
Examples will be described below. The overall configuration is shown in FIG.

【0010】座標入力Xj,Yj,Zjはそれそれ20
ビットで、固定小数点で表現されている。入力Mjは1
4ビット幅で対数表現で表されている。外部バス13
は、3ビット幅のレジスタアドレスA[2:0]と28
ビット幅のデータバスD[27:0]と制御信号である
CS(チップセレクト)、OE(アウトプットエネーブ
ル)、WE(ライトイネーブル)から構成されている。
PC (パイプラインコントロール) 14は、集積回路
1の演算可を示す1ビットの入力信号である。NB 1
6は、2点間の距離が定数hよりも小さい場合を検出す
る1ビットの出力信号である。このNB 16は、相互
作用力やポテンシャルが大きくなってオーバーフロー等
を生じ得る場合を検出するのに使用される。
The coordinate inputs Xj, Yj, and Zj are each 20
Bits, expressed in fixed point. Input Mj is 1
It is expressed in logarithmic notation with a 4-bit width. External bus 13
Are register addresses A [2: 0] and 28 having a 3-bit width.
It is composed of a data bus D [27: 0] having a bit width, and control signals CS (chip select), OE (output enable), and WE (write enable).
A PC (pipeline control) 14 is a 1-bit input signal indicating whether the integrated circuit 1 can perform an operation. NB 1
Reference numeral 6 is a 1-bit output signal for detecting the case where the distance between the two points is smaller than the constant h. The NB 16 is used to detect a case where the interaction force or the potential becomes large and overflow or the like may occur.

【0011】内部バスは、外部バス13から入力したデ
ータを伝える内部バス12aと、外部バス13にデータ
を出力するための内部バス12bから構成される。
The internal bus comprises an internal bus 12a for transmitting data input from the external bus 13 and an internal bus 12b for outputting data to the external bus 13.

【0012】相対位置計算手段2は、X,Y,Z成分に
関して同じ処理を行うために3個の処理手段を持ってい
るが、それらの内容は同等なので、ここではX成分用の
ものについてのみ説明する。
The relative position calculation means 2 has three processing means for performing the same processing on the X, Y and Z components, but since the contents are the same, only the one for the X component will be described here. explain.

【0013】Xiの値を格納するレジスタ手段21aが
ある。これはラッチで構成されている。これは外部バス
13から内部バス12aを介して書き込まれる。このレ
ジスタ手段21は20ビット長で固定小数点表現の値が
入る。書き込みの為のラッチの制御は外部バスインター
フェース手段15によって行われる。
There is a register means 21a for storing the value of Xi. It consists of a latch. This is written from the external bus 13 via the internal bus 12a. This register means 21 has a 20-bit length and a fixed-point representation value is entered therein. The control of the latch for writing is performed by the external bus interface unit 15.

【0014】成分差計算手段20aの実施例を図2に示
す。集積回路1の外部より供給されるXj[19:0]
と、Xiレジスタ手段21aより供給されるXi[1
9:0]は、20ビット減算器29aに与えられ、差X
j−Xiは20ビット幅のD型フリップフロップ(以下
DFFと略す)36aに入力する。DFF 36aの出
力をXD[19:0]とする。このMSBであるXD
[19]はXj−Xiの符号を表している。20ビット
幅減算器29bで0−XDを求めておき、XD[19]
で19ビット幅のマルチプレクサ31を制御し、Xj−
Xiの絶対値を得る。つまり、Xj−Xiが0もしくは
正ならばXD[19]は0となりマルチプレクサ31は
XD[18:0]を出力し、そうでなければXD[1
9]は1でマルチプレクサ31は減算器20bの出力す
なわちXi−Xjを出力し、DFF 36cに与える。
XD[19]は1ビット幅のDFF 36b,36e,
36h,36lを経て対数表現の符号フラグであるXi
j[12]となる。DFF 36cの出力はDFF 3
6fの入力となるほか、コンパレータ35aに与えら
れ、コンパレータ35aで0との比較を行い19ビット
全てが0ならば0をそうではないならば1を出力し、D
FF 36d,36g,36kを経て対数表現の非ゼロ
フラグであるXij[13]として出力する。
An embodiment of the component difference calculating means 20a is shown in FIG. Xj [19: 0] supplied from outside the integrated circuit 1
And Xi [1 supplied from the Xi register means 21a.
9: 0] is given to the 20-bit subtractor 29a, and the difference X
The j-Xi is input to a 20-bit wide D-type flip-flop (hereinafter abbreviated as DFF) 36a. The output of the DFF 36a is XD [19: 0]. XD which is this MSB
[19] represents the code of Xj-Xi. 20-bit width subtractor 29b finds 0-XD, and XD [19]
Control the multiplexer 31 of 19-bit width with Xj-
Get the absolute value of Xi. That is, if Xj-Xi is 0 or positive, XD [19] becomes 0, and the multiplexer 31 outputs XD [18: 0]. If not, XD [1]
9] is 1 and the multiplexer 31 outputs the output of the subtractor 20b, that is, Xi-Xj, and supplies it to the DFF 36c.
XD [19] is a 1-bit wide DFF 36b, 36e,
Xi which is a code flag of logarithmic expression through 36h and 36l
j [12]. The output of DFF 36c is DFF 3
In addition to being an input to 6f, it is given to the comparator 35a and compared with 0 by the comparator 35a. If all 19 bits are 0, 0 is output, and if not, 1 is output.
It is output as Xij [13] which is a non-zero flag of logarithmic expression through FFs 36d, 36g and 36k.

【0015】DFF 36fの出力xa[18:0]は
次に述べるようにして対数表現に変換される。
The output xa [18: 0] of the DFF 36f is converted into a logarithmic representation as described below.

【0016】PLA(プログラマブルロジックアレイ)
32はプライオリティエンコーダとして動作し、xa
[18:0]を入力し、表1に示す様に入力xa[1
8:0]を出力xe[4:0]に変換する。表1におい
て“x“は0と1のどちらでもよいことを示す。
PLA (programmable logic array)
32 operates as a priority encoder, and xa
Enter [18: 0] and enter xa [1 as shown in Table 1.
8: 0] is converted to output xe [4: 0]. In Table 1, "x" indicates that either 0 or 1 may be used.

【0017】 〔表1〕 xa[18:0] xe[4:0] 0000000000000000000 00000 0000000000000000001 00000 000000000000000001x 00001 00000000000000001xx 00010 0000000000000001xxx 00011 000000000000001xxxx 00100 00000000000001xxxxx 00101 0000000000001xxxxxx 00110 000000000001xxxxxxx 00111 00000000001xxxxxxxx 01000 0000000001xxxxxxxxx 01001 000000001xxxxxxxxxx 01010 00000001xxxxxxxxxxx 01011 0000001xxxxxxxxxxxx 01100 000001xxxxxxxxxxxxx 01101 00001xxxxxxxxxxxxxx 01110 0001xxxxxxxxxxxxxxx 01111 001xxxxxxxxxxxxxxxx 10000 01xxxxxxxxxxxxxxxxx 10001 1xxxxxxxxxxxxxxxxxx 10010 また、xa[18:0]中の最上位にある1の右隣りの
ビットが、シフタ33の出力のMSBに現れるように、
PLA 32はシフタ制御信号sc[4:0]をも発生
し、シフタ33を制御する。ただし、ここで、シフタ3
3はxa[18:0]が全ビット0ならばシフタ33の
出力は全ビット0となるよう、また、シフトイン部分は
常に0となるようになっている。シフタ33の出力は1
9ビット幅のDFF 36iに与えられ、その出力をx
m[18:0]とする。
[0017] [Table 1] xa [18: 0] xe [4: 0] 0000000000000000000 00000 0000000000000000001 00000 000000000000000001x 00001 00000000000000001xx 00010 0000000000000001xxx 00011 000000000000001xxxx 00100 00000000000001xxxxx 00101 0000000000001xxxxxx 00110 000000000001xxxxxxx 00111 00000000001xxxxxxxx 01000 0000000001xxxxxxxxx 01001 000000001xxxxxxxxxx 01010 00000001xxx xxxxxxxx 01011 0000001xxxxxxxxxxxx 01100 000001xxxxxxxxxxxxx 01101 00001xxxxxxxxxxxxxx 01110 0001xxxxxxxxxxxxxxx 01111 001xxxxxxxxxxxxxxxx 10000 01xxxxxxxxxxxxxxxxx 10001 1xxxxxxxxxxxxxxxxxx 10010 Further, xa [18: 0] 1 to the right bit at the top in the can to appear MSB of the output of the shifter 33,
PLA 32 also generates shifter control signals sc [4: 0] to control shifter 33. However, here, shifter 3
3 is such that if xa [18: 0] is all bits 0, the output of the shifter 33 is all bits 0, and the shift-in part is always 0. Output of shifter 33 is 1
It is given to a 9-bit wide DFF 36i and its output is x
m [18: 0].

【0018】xe[4:0]は対数表現における非小数
部である。いっぽう、xm[18:0]は小数部をあら
わしていて、二つのコンパレータ35bと35cおよび
ROM(リードオンリーメモリ) 34のアドレス入力
上位6ビットとして与えられる。コンパレータ35bは
xm[18:13]が全て1のときのみ、すなわち、1
6進表示で3Fのときのみ、1を出力する。コンパレー
タ35cはxm[12:0]が全て0の時のみ出力xm
nzに0を出力する。xmnzはROM 34のアドレ
ス入力の最下位ビットに与える。ROM 34は128
語×5ビットの構成で小数部の対数表現への変換を行
う。アドレス入力(すなわちxm[18:13],,x
mnz)をX、データ出力をYと書くと、 xmnz=0の場合 Y=0x1F & (32*log2 (1+X/12
8)) xmnz=1かつxm[13]=0の場合 Y=0x1F & (32*log2 (1+(X>>
2)/32)) xmnz=1かつxm[13]=1の場合 Y=0x1F & (32*log2 (1+(X>>2
+1)/32)) という関係にある。ただし、この式における丸めは四捨
五入とする。なお、式中の記号&は、各ビット単位の論
理ANDを意味する。
Xe [4: 0] is the non-fractional part in the logarithmic representation. On the other hand, xm [18: 0] represents a fractional part and is given as the upper 6 bits of the address input of the two comparators 35b and 35c and ROM (read only memory) 34. The comparator 35b outputs only when xm [18:13] is 1, that is, 1
1 is output only when the hexadecimal display is 3F. The comparator 35c outputs only when xm [12: 0] is all 0, xm
0 is output to nz. xmnz is given to the least significant bit of the ROM 34 address input. ROM 34 is 128
The conversion of the decimal part to the logarithmic expression is performed with the structure of words × 5 bits. Address input (ie xm [18:13], x
Mnz) is X and data output is Y. When xmnz = 0, Y = 0x1F & (32 * log 2 (1 + X / 12
8)) When xmnz = 1 and xm [13] = 0 Y = 0x1F & (32 * log 2 (1+ (X >>)
2) / 32)) When xmnz = 1 and xm [13] = 1 Y = 0x1F & (32 * log 2 (1+ (X >> 2)
The relationship is +1) / 32)). However, the rounding in this formula is rounded off. The symbol & in the formula means a logical AND in bit units.

【0019】この式は、実効的には正規化した後のデー
タを5ビットに丸めてから対数に変換するのとほとんど
同じである。ただし、四捨五入される値がちょうど1/
2に等しい場合(すなわちxmnz=0の場合)は四捨
五入しないで6ビットの値をそのまま使って変換する。
これにより、端数がちょうど1/2の時の丸めの方向か
らおきるバイアスを無くしている。
This equation is practically almost the same as rounding the normalized data to 5 bits and converting it to logarithm. However, the rounded value is exactly 1 /
When it is equal to 2 (that is, when xmnz = 0), the value of 6 bits is used as it is for conversion without rounding.
This eliminates the bias generated from the rounding direction when the fraction is exactly 1/2.

【0020】Yの値(ROM 34の出力)が前記四捨
五入によって切上げられて32になる場合は、対数表現
の非小数部の方を1増やす必要がある。これはXの値が
0x7Eと0x7Fの場合で、この条件はコンパレータ
35bで検出され、その出力を加算器30のキャリーイ
ン入力に与え、入力の一方にDFF 36jを経たxe
[4:0]を入力し、もう一方の入力には全ビット0を
与えることでインクリントを行う。ROM 34の出力
はDFF 36nを経て対数表現の小数部Xij[4:
0]となる。加算器30の出力はDFF 36mを経て
対数表現の小数部Xij[9:5]となる。なお、Xi
j[11:10]はここでは常に0のため省略されてい
る。
When the value of Y (the output of the ROM 34) is rounded up to 32, the non-fractional part of the logarithmic expression must be increased by 1. This is the case when the value of X is 0x7E and 0x7F, this condition is detected by the comparator 35b, the output thereof is given to the carry-in input of the adder 30, and one of the inputs passes through the DFF 36j xe.
Incrementing is performed by inputting [4: 0] and giving all bits 0 to the other input. The output of the ROM 34 passes through the DFF 36n and the decimal part Xij [4: of the logarithmic expression.
0]. The output of the adder 30 passes through the DFF 36m and becomes the decimal part Xij [9: 5] of the logarithmic expression. Note that Xi
j [11:10] is omitted here because it is always 0.

【0021】上述の各DFF36a〜36nは、処理を
パイプライン化するために存在している。
The above-mentioned DFFs 36a to 36n are provided to pipeline the processing.

【0022】次に、本発明において乗算の計算のために
使用される対数表現乗算手段の実施例を図3に示す。こ
こでは二つの対数表現値a[13:0]とb[13:
0]の乗算について説明する。乗算結果はc[13:
0]とする。1個のANDゲート22と、1個のExO
Rゲート23と、1個の12ビット幅の加算器24から
構成されている。
Next, an embodiment of the logarithmic expression multiplying means used for the calculation of multiplication in the present invention is shown in FIG. Here, two logarithmic expression values a [13: 0] and b [13:
[0] multiplication will be described. The multiplication result is c [13:
0]. One AND gate 22 and one ExO
It is composed of an R gate 23 and one 12-bit wide adder 24.

【0023】 A=2**(a[11:0]/2**5) B=2**(b[11:0]/2**5) とすれば、下記の関係および加算器24の存在理由は容
易に理解できる。
If A = 2 ** (a [11: 0] / 2 ** 5) and B = 2 ** (b [11: 0] / 2 ** 5), then the following relationship and adder 24 The reason for existence of is easily understandable.

【0024】 A*B=2**((a[11:0]+b[11:0])/2**5) 非ゼロフラグc[13]は、a,bともに非ゼロのとき
のみ非ゼロであるから、ANDゲート22を利用し、a
[13]とb[13]の論理積をc[13]とする。ま
た、aとbの符号が互いに異なるときのみcは負になる
ので、ExORゲート23を利用し、a[12]とb
[12]の排他的論理和をとってc[12]とする。
A * B = 2 ** ((a [11: 0] + b [11: 0]) / 2 ** 5) The non-zero flag c [13] is non-zero only when both a and b are non-zero. Therefore, using the AND gate 22,
Let the logical product of [13] and b [13] be c [13]. Further, since c becomes negative only when the signs of a and b are different from each other, the ExOR gate 23 is used, and a [12] and b
The exclusive OR of [12] is taken as c [12].

【0025】対数表現除算手段の実施例を図4に示す。
ここでは対数表現値a[13:0]を非ゼロの対数表現
値b[13:0]で割り、c[13:0]を得る場合に
ついて説明する。この対数表現除算手段ではゼロで割る
ことは無いと仮定している。
An embodiment of the logarithmic expression division means is shown in FIG.
Here, a case will be described in which the logarithmic expression value a [13: 0] is divided by a non-zero logarithmic expression value b [13: 0] to obtain c [13: 0]. It is assumed that this logarithmic expression division means does not divide by zero.

【0026】 A/B=2**((a[11:0]−b[11:0])/2**5) という関係があるから、減算器25でa[11:0]か
らb[11:0]を引きc[11:0]とする。aがゼ
ロならばcもゼロなのでa[13]をそのままc[1
3]とする。aとbの符号が互いに異なるときのみcは
負になるので、ExORゲート26を利用し、a[1
2]とb[12]の排他的論理和をとってc[12]と
する。
Since there is a relationship of A / B = 2 ** ((a [11: 0] −b [11: 0]) / 2 ** 5), the subtractor 25 converts a [11: 0] to b. Subtract [11: 0] to be c [11: 0]. If a is zero, c is also zero, so a [13] is left unchanged as c [1
3]. Since c becomes negative only when the signs of a and b are different from each other, the ExOR gate 26 is used and a [1
2] and b [12] are exclusive ORed to obtain c [12].

【0027】対数表現加算手段の実施例を図5に示す。
二つの非負の対数表現XとYから、XとYを固定小数点
で表現したときの値をそれぞれxとyとすると、対数表
現加算手段は、非負の(x+y)を表す対数表現値Zを
得るものである。XとYは非負を仮定しているので、対
数表現の符号フラグを除く13ビットX[12:0],
Y[12:0],Z[12:0]を扱えばよい。
An embodiment of the logarithmic expression adding means is shown in FIG.
From two non-negative logarithmic expressions X and Y, if the values when X and Y are expressed in fixed point are x and y, respectively, the logarithmic expression adding means obtains a logarithmic expression value Z representing non-negative (x + y). It is a thing. Since X and Y are assumed to be non-negative, 13-bit X [12: 0] excluding the sign flag of logarithmic expression,
It is sufficient to handle Y [12: 0] and Z [12: 0].

【0028】非負の対数表現の加算は以下のようにして
実行出来る。
Non-negative logarithmic representation addition can be performed as follows.

【0029】a)どちらか一方が0のときは、もう一方
をそのまま出力。
A) When either one is 0, the other is output as it is.

【0030】b)どちらも0ではないときは、まず入力
のX,Yを符号無し2進数とみて比較し、大きい方を選
ぶ。また、XとYの差d=|X−Y|を得る。dが0x
FFよりも大きいときは二つの入力X,Yのうち小さい
方の値が大きい方の値の1/256よりも大きくない。
したがって、丸めの方向を考慮しても演算結果Zは、
X,Yのうちの大きい方の値そのままである。dが0x
FFよりも小さい場合は、ZはX,Yのうちの大きい方
よりも大きくなる。X>Yの場合、ZとXとdの間には
次の関係が成り立つ。
B) If neither is 0, first compare the input X and Y as unsigned binary numbers and select the larger one. Further, a difference d = | X−Y | between X and Y is obtained. d is 0x
When it is larger than FF, the smaller value of the two inputs X and Y is not larger than 1/256 of the larger value.
Therefore, even if the rounding direction is considered, the calculation result Z is
The larger value of X and Y remains unchanged. d is 0x
When it is smaller than FF, Z becomes larger than the larger one of X and Y. When X> Y, the following relationship holds between Z, X, and d.

【0031】 Z−X=log2 (1+2**(−d)) ...(式16) ただし、ここでZ,X,dは小数部5ビットの固定小数
点形式で表現している。したがってこの関係をROMに
入れておきdをアドレスとして与え、読み出されたデー
タをXに足せばZが得られる。
Z−X = log 2 (1 + 2 ** (− d)). . . (Expression 16) However, here, Z, X, and d are expressed in a fixed-point format with a fractional part of 5 bits. Therefore, if this relationship is stored in the ROM and d is given as an address and the read data is added to X, Z can be obtained.

【0032】実施例では、二つの入力X[12:0],
Y[12:0]は共に減算器37a,37bに接続さ
れ、更に、X[12:0]はDFF 38d、Y[1
2:0]はDFF 38eに接続され、対数表現の非ゼ
ロフラグであるX[12],Y[12]は更にNAND
ゲート63に接続され、その出力はDFF 38lを経
て信号zeroとなる。この信号は二つの入力XとYの
少なくとも一つが0であることを意味している。13ビ
ット幅の減算器37aはX−Yを、13ビット幅の減算
器37bはY−Xを計算する。減算器37aはXとYの
大小比較も兼ねており、これは減算器37aのキャリー
出力を見ることで行われる。キャリー出力はDFF 3
8a及びインバータ40を経てXgeY,YgtXとい
う信号を得る。XgeYはXがYよりも大きいか等しい
ことを、YgtXはYがXよりも大きいことを意味す
る。二つの減算器37aと37bの出力はそれぞれDF
F 38bとDFF 38cを経てマルチプレクサ39
aに与えられる。このマルチプレクサ39aはXgeY
で制御されており|X−Y|を出力XmY[12:0]
として出す。つまり、X>=Yの時はX−Yを、X<Y
の時はY−Xを出力する。一方、DFF 38dとDF
F 38eの出力はマルチプレクサ39bに与えられ
る。このマルチプレクサ39bはYgtXで制御されX
とYのうちの小さくない方を選び、つまり、Y>Xなら
ばYを、そうではないときはXを選び、選ばれた値はD
FF 38h,38jを経て加算器44の一方の入力に
入る。XmY[12:0]の上位5ビットXmY[1
2:8]を6入力NORゲート42aの5つの入力に与
える。この5ビット分は前記dが0xFFよりも大きい
ことを検出するのに使われる。またNORゲート42a
の残る一つの入力にはzeroが入り、すでに述べたよ
うに、入力X,Yの少なくとも一方が0であることを示
している。したがって、NORゲート42aの出力が0
の時は、XとYの差が0xFFよりも大きいか、XとY
の少なくとも一方が0であることを示している。NOR
ゲート42aの出力はDFF 38gを経てpassと
いう信号となる。この信号は6ビット分コピーされて6
ビット幅でANDゲート43に供給される。
In the embodiment, two inputs X [12: 0],
Y [12: 0] are both connected to the subtractors 37a and 37b, and X [12: 0] is DFF 38d and Y [1].
2: 0] is connected to the DFF 38e, and non-zero flags X [12] and Y [12] in logarithmic representation are further NAND.
It is connected to the gate 63 and its output becomes the signal zero through the DFF 38l. This signal means that at least one of the two inputs X and Y is zero. The 13-bit width subtractor 37a calculates XY, and the 13-bit width subtractor 37b calculates YY. The subtractor 37a also serves as a magnitude comparison of X and Y, and this is performed by observing the carry output of the subtractor 37a. Carry output is DFF 3
Signals XgeY and YgtX are obtained through 8a and the inverter 40. XgeY means that X is greater than or equal to Y, and YgtX means that Y is greater than X. The outputs of the two subtractors 37a and 37b are DF
The multiplexer 39 through the F 38b and the DFF 38c
given to a. This multiplexer 39a is XgeY
It is controlled by and outputs | X-Y | XmY [12: 0]
Issue as. That is, when X> = Y, XY is changed to X <Y
In case of, Y-X is output. On the other hand, DFF 38d and DF
The output of F 38e is provided to multiplexer 39b. This multiplexer 39b is controlled by YgtX and X
And Y, whichever is not smaller, that is, if Y> X then Y, otherwise choose X and the selected value is D
It enters one input of the adder 44 through the FFs 38h and 38j. Upper 5 bits of XmY [12: 0] XmY [1
2: 8] is applied to the five inputs of the six-input NOR gate 42a. These 5 bits are used to detect that d is larger than 0xFF. Also, the NOR gate 42a
Zero is input to the remaining one input of the above, indicating that at least one of the inputs X and Y is 0 as described above. Therefore, the output of the NOR gate 42a is 0.
, The difference between X and Y is greater than 0xFF, or X and Y
It indicates that at least one of the two is 0. NOR
The output of the gate 42a becomes a signal called "pass" through the DFF 38g. This signal is copied by 6 bits and 6
The bit width is supplied to the AND gate 43.

【0033】XmY[12:0]の下位8ビットXmY
[7:0]はROM 41のアドレス入力に接続する。
このROMは前記(式16)の関係を格納しており、構
成は256語×6ビットで、そのデータDとアドレスA
の関係は、小数部が5ビットであることを考慮すると D=32*log2 (1+2**(−A/32)) ...(式17) である。ROM 41の出力は6ビット幅のDFF 3
8fを経て6ビット幅の2入力ANDゲート43に入力
する。ANDゲート43は各ビットについてのANDを
とる。ANDゲート43の出力は6ビット幅のDFF
38iを経て、上位側に7ビット分の0を付加し、13
ビット加算器44のもう一方の入力に入る。ANDゲー
ト43の一方の入力にはそれぞれDFF 38fの各出
力が、もう一方の入力が前記passが接続されてい
る。したがって、ANDゲート43はpassが0のと
き、加算器44への入力を0にする。したがって、dが
0xFFよりも大きい時とXとYの少なくとも一方が0
の場合は、X,Yの小さくない方に0が加えられ出力と
してZ[12:0]に出る。そうではない場合は、RO
M 41から読み出した値をX,Yのうちの小さくない
方に足してZ[12:0]に出す。
Lower 8 bits XmY of XmY [12: 0]
[7: 0] is connected to the address input of the ROM 41.
This ROM stores the relation of (Equation 16), and has a structure of 256 words × 6 bits, and its data D and address A
Considering that the fractional part is 5 bits, the relation of D = 32 * log 2 (1 + 2 ** (-A / 32)). . . (Equation 17) The output of the ROM 41 is a 6-bit wide DFF 3
It is input to the 2-input AND gate 43 having a width of 6 bits via 8f. The AND gate 43 takes an AND for each bit. The output of the AND gate 43 is a 6-bit width DFF.
After 38i, 0 for 7 bits is added to the upper side,
It enters the other input of the bit adder 44. One output of the DFF 38f is connected to one input of the AND gate 43, and the pass is connected to the other input. Therefore, the AND gate 43 sets the input to the adder 44 to 0 when pass is 0. Therefore, when d is larger than 0xFF, and at least one of X and Y is 0.
In the case of, 0 is added to the smaller one of X and Y, and the result is output to Z [12: 0]. If not, RO
The value read from M 41 is added to the smaller one of X and Y and output to Z [12: 0].

【0034】図6に相対距離計算手段の実施例を示す。
ここでは三つの対数表現加算手段45a,45b,45
cを用いる。相対距離計算手段の行う演算 r2=Xij**2+Yij**2+Zij**2+e**2 のうち、2乗の演算は、Xij,Yij,Zij,eは
対数表現であるがゆえ、フラグの2ビットを除く部分を
MSB側に1ビットシフトしLSBに0を与えることに
より達成される。例えば、Xijに関しては、Xij
[12],Xij[10],Xij[9],Xij
[8],・・・,Xij[1],Xij[0],0を与
えることになる。図6においては、これをXij[1
2,,10..0],,0で表している。Yij,Zi
jに関しても同様である。ここでは2乗をとるので結果
は必ず非負である。したがって、対数表現の符号フラグ
を除く13ビットで処理をしている。Xij**2とY
ij**2を対数表現加算手段45aの入力に与え、X
ij**2+Yij**2を得る。eレジスタ46の1
3ビット出力の2乗e**2とZij**2を対数表現
加算手段45bの入力に与え、Zij**2+e**2
を得る。さらにこれら2つの加算結果を対数表現加算手
段45cの入力に与え、r2を得る。
FIG. 6 shows an embodiment of the relative distance calculating means.
Here, three logarithmic expression adding means 45a, 45b, 45
c is used. Calculation performed by the relative distance calculation means r2 = Xij ** 2 + Yij ** 2 + Zij ** 2 + e ** 2 Among the squared operations, since Xij, Yij, Zij, and e are logarithmic expressions, 2 bits of the flag This is achieved by shifting the part except for 1 bit to the MSB side and giving 0 to LSB. For example, for Xij, Xij
[12], Xij [10], Xij [9], Xij
[8], ..., Xij [1], Xij [0], 0 will be given. In FIG. 6, this is designated as Xij [1
2, 10, . 0], and 0. Yij, Zi
The same applies to j. Since the square is taken here, the result is always non-negative. Therefore, processing is performed with 13 bits excluding the logarithmic sign flag. Xij ** 2 and Y
ij ** 2 is given to the input of the logarithmic expression adding means 45a, and X
Get ij ** 2 + Yij ** 2. 1 of e-register 46
The squared e ** 2 and Zij ** 2 of the 3-bit output are given to the input of the logarithmic expression adding means 45b, and Zij ** 2 + e ** 2.
To get Further, these two addition results are given to the input of the logarithmic expression adding means 45c to obtain r2.

【0035】この13ビットの出力r2とhレジスタ4
7の13ビット出力hとを13ビット幅の減算器48に
与え、大小比較する。比較結果は減算器48のキャリー
アウトからインバータ49を介してNB 16として集
積回路1外部に出力する。r2>=hならばNBは0、
r2<hならばNBは1となる。
This 13-bit output r2 and h register 4
The 13-bit output h of 7 is applied to the 13-bit width subtracter 48, and the magnitude comparison is performed. The comparison result is output from the carry-out of the subtractor 48 to the outside of the integrated circuit 1 as the NB 16 via the inverter 49. If r2> = h, NB is 0,
If r2 <h, NB becomes 1.

【0036】eレジスタ46とhレジスタ47は外部バ
ス13から内部バス12aを経て値がロードされる。ロ
ードの制御は外部バスインターフェース手段15が行
う。
The e register 46 and the h register 47 are loaded with values from the external bus 13 via the internal bus 12a. The external bus interface means 15 controls the load.

【0037】図7に1/2乗手段の実施例を示す。r2
は非負の対数表現であるので、これを1/2乗するため
には非フラグ部r2[11:1]を1ビットLSB側に
シフトしr[10:0]とし、r[11]を0とすれば
よい。非ゼロフラグに関してはr2[12]をそのまま
r[12]とする。これは0の1/2乗は0であり、非
ゼロの値の1/2乗は非ゼロであるからである。ここで
の計算対象の性質上r2とrは決して負になることはな
いため対数表現の符号フラグを省略している。
FIG. 7 shows an embodiment of the 1/2 power means. r2
Is a non-negative logarithmic expression. Therefore, in order to raise this to the power of 1/2, the non-flag portion r2 [11: 1] is shifted to the LSB side by 1 bit to r [10: 0], and r [11] is set to 0. And it is sufficient. Regarding the non-zero flag, r2 [12] is directly set to r [12]. This is because the 1/2 power of 0 is 0 and the 1/2 power of non-zero values is non-zero. The sign flag of the logarithmic representation is omitted because r2 and r are never negative due to the nature of the calculation target here.

【0038】図8に3/2乗手段の実施例を示す。r2
とその1/2乗であるrを対数表現乗算手段でかけるこ
とによりr2の3/2乗であるr3を得ている。計算対
象の性質上r2とrは決して負になることはないため対
数表現の符号フラグを省略している。
FIG. 8 shows an embodiment of the 3/2 squaring means. r2
And r, which is its 1/2 power, are multiplied by a logarithmic expression multiplication means to obtain r3 which is 3/2 power of r2. The sign flag of the logarithmic expression is omitted because r2 and r are never negative due to the nature of the calculation target.

【0039】r3,rのいずれも、対数表現除算手段6
a,6bに入力するまえに、符号フラグにその値が非負
であることを意味する0を補い与える。Mjは負の値を
とりうるため、、対数表現除算手段6a,6bでは符号
フラグも取り扱う。
Both r3 and r are logarithmic representation division means 6
Before inputting to a and 6b, the sign flag is supplemented with 0 which means that the value is non-negative. Since Mj can take a negative value, the logarithmic expression division means 6a and 6b also handle the sign flag.

【0040】図9に相互作用力およびポテンシャル計算
手段の実施例を示す。この両者は同じ構成と同じ動作を
有し、違いは入出力データにある。X座標軸方向の相互
作用力に関して説明すると、パイプラインレジスタ19
aにてパイプラインステージの差を補正するために遅延
されたXijと対数表現除算手段6aで得られたMj/
r3の積を対数表現乗算手段51でとると、X座標軸方
向の相互作用力が得られる。3つの相互作用力計算手段
7a,7b,7cとポテンシャル計算手段8の入力デー
タと出力データをまとめると下記のようになる。
FIG. 9 shows an embodiment of the interaction force and potential calculation means. Both have the same configuration and the same operation, and the difference lies in the input / output data. Explaining the interaction force in the X coordinate axis direction, the pipeline register 19
Xj delayed to correct the pipeline stage difference at a and Mj / obtained by the logarithmic expression division means 6a.
When the product of r3 is taken by the logarithmic expression multiplication means 51, the interaction force in the X coordinate axis direction is obtained. The input data and output data of the three interaction force calculating means 7a, 7b, 7c and the potential calculating means 8 are summarized as follows.

【0041】 符号 入力データ 出力データ 7a Mj/r3,遅延されたXij 相互作用力のX成分 7b Mj/r3,遅延されたYij 相互作用力のY成分 7c Mj/r3,遅延されたZij 相互作用力のZ成分 8 Mj/r,定数u ポテンシャル 実施例では、定数uに固定小数点表現の1を対数表現し
た0x1000を用いている。
Sign Input data Output data 7a Mj / r3, delayed Xij X component of interaction force 7b Mj / r3, delayed Yij Y component of interaction force 7c Mj / r3, delayed Zij interaction force Z component of 8 Mj / r, constant u potential In the embodiment, 0x1000, which is a logarithmic representation of 1 in the fixed point representation, is used for the constant u.

【0042】図10に固定小数点表現変換手段の実施例
を示す。この手段は、5ビット×32語のROM 5
2、PLA 53、5個の2入力ANDゲート54と、
DFF55a,55b,55cと、48ビット出力のシ
フタ56から構成されており、14ビット幅の対数表現
を48ビット幅の固定小数点表現と符号フラグに変換す
る。YSignは符号フラグである。
FIG. 10 shows an embodiment of the fixed point representation conversion means. This means is 5 bits x 32 words ROM 5
2, PLA 53, five 2-input AND gates 54,
It is composed of DFFs 55a, 55b, 55c and a shifter 56 for outputting 48 bits, and converts a 14-bit width logarithmic expression into a 48-bit width fixed point expression and a sign flag. YSign is a code flag.

【0043】X[4:0]は対数表現の小数部分である
ので、これをROM 52で固定小数点表現の小数部分
に変換する。X[4:0]をA、ROMの出力をDとす
ると、その関係は D=32*(2**(A/32)−1) である。ただし、対数表現の非ゼロフラグX[12]が
0、つまり対数表現Xが0を表しているならば、固定小
数点表現の小数部分も0でなければならない。そこで、
ANDゲート54でそのためのマスキングを行ってい
る。この、ANDゲート54の出力のMSB側にX[1
2]をビット5として追加し合計6ビットとし、DFF
55cを経てシフタ56の入力y[5:0]とする。
ROM 52は(2**(A/32))から1を差し引
いた値を固定小数点表現の5ビット幅の小数部として出
力するので、ビット5にX[12]を付加することは、
Xが非ゼロならばその固定小数点表現にて1を加えたこ
とに等しく、したがって、2**(A/32)を表す実
数を小数幅5ビットの固定小数点表現で得たことにな
る。一方、Xが0ならばX[12]は0かつANDゲー
ト54の出力もみな0となり、固定小数点表現でも0と
なる。X[11:5]はy[5:0]を48ビット幅の
どこに置くかを決める。X[11:5]をPLA 53
に与えシフタのシフト制御信号を作り、DFF 56b
を介してシフタに与える。PLA 53はX[11:
5]が67の時y[5]がY[47]に、20の時にy
[5]がY[0]に現れるように、つまり (X[11:5]の値)−(Y[5]が現れるYのビッ
ト位置)=20 となるようなシフト制御信号を作る。Y[47:0]の
うちy[5:0]に対応しない場所はすべて0となる。
対数表現の符号フラグであるX[13]はDFF55a
を経てYSignとして符号フラグとして出力される。
Since X [4: 0] is the decimal part of the logarithmic expression, it is converted by the ROM 52 into the decimal part of the fixed point expression. If X [4: 0] is A and the output of the ROM is D, the relationship is D = 32 * (2 ** (A / 32) -1). However, if the non-zero flag X [12] of the logarithmic expression represents 0, that is, the logarithmic expression X represents 0, the decimal part of the fixed-point expression must also be 0. Therefore,
The AND gate 54 performs masking for that purpose. The output of the AND gate 54, X [1
2] is added as bit 5 to make a total of 6 bits, and DFF is added.
The input is y [5: 0] of the shifter 56 via 55c.
Since the ROM 52 outputs the value obtained by subtracting 1 from (2 ** (A / 32)) as the decimal part of the 5-bit width of the fixed-point representation, adding X [12] to bit 5
If X is non-zero, it is equivalent to adding 1 in the fixed-point representation, and thus a real number representing 2 ** (A / 32) is obtained in the fixed-point representation with a decimal width of 5 bits. On the other hand, if X is 0, X [12] is 0 and all the outputs of the AND gate 54 are 0, which is 0 even in the fixed-point representation. X [11: 5] determines where y [5: 0] is placed in the 48-bit width. X [11: 5] to PLA 53
The shift control signal of the shifter to the DFF 56b.
To the shifter via. PLA 53 has X [11:
5] is 67, y [5] is Y [47], and 20 is y.
A shift control signal is generated so that [5] appears in Y [0], that is, (value of X [11: 5]) − (Y bit position where Y [5] appears) = 20. All the locations of Y [47: 0] that do not correspond to y [5: 0] are zero.
The sign flag X [13] in the logarithmic expression is the DFF 55a.
Is output as a code flag as YSign.

【0044】図11に積算用加算手段と積算値レジスタ
手段の実施例をまとめて示す。これらは56ビット幅の
インバータ57、56ビット幅の2入力マルチプレクサ
58、56ビット幅の加算器59、56ビット幅の2入
力マルチプレクサ60、56ビット幅のレジスタ61、
2個の28ビット幅のトライステートバッファ62a,
62bから構成されている。積算用加算器に与えられる
入力は48ビットの固定小数(Y[47:0]と呼ぶこ
とにする)とその符号をしめすフラグ(YSignと呼
ぶことにする)である。 Y[47:0]のMSB側に
8ビットの0を付加してY[55:0]とする。以降の
計算は56ビット幅で行われる。Y[55:0]の各ビ
ット毎の反転をインバータ57でとり、それとY[5
5:0]をマルチプレクサ58に与え、YSignで選
択する。YSignが0ならばY[55:0]がそのま
ま出力され、1ならばインバータ57の出力が選択され
る。このマルチプレクサの出力を加算器59の一方の入
力に与え、もう一方の入力にはレジスタ61の出力を与
え、キャリーイン入力にはYSignを与える。この一
連の接続により、YSign=0すなわちY[47:
0]は正もしくは0の時はY[47:0]と積算値レジ
スタの値を足し合わせ、YSign=1の時はY[4
7:0]の2の補数をとり積算値レジスタの値と足し合
わせる、つまり積算値レジスタの値からY[47:0]
を引く。2の補数をとる操作は各ビットを反転しそれに
1を足すことであるが、実施例ではインバータ57がビ
ットの反転を行い加算器59のキャリーイン入力にYS
ignを与えることで1を足している。
FIG. 11 collectively shows an embodiment of the adding means for integration and the integrated value register means. These are a 56-bit wide inverter 57, a 56-bit wide 2-input multiplexer 58, a 56-bit wide adder 59, a 56-bit wide 2-input multiplexer 60, a 56-bit wide register 61,
Two 28-bit wide tri-state buffers 62a,
It is composed of 62b. The input given to the adder for accumulation is a 48-bit fixed decimal number (to be called Y [47: 0]) and a flag indicating its sign (to be called YSign). An 8-bit 0 is added to the MSB side of Y [47: 0] to form Y [55: 0]. Subsequent calculations are performed with a width of 56 bits. The inverter 57 inverts each bit of Y [55: 0], and outputs it to Y [5
5: 0] is given to the multiplexer 58 and selected by YSign. If YSign is 0, Y [55: 0] is output as it is, and if 1 is 1, the output of the inverter 57 is selected. The output of this multiplexer is applied to one input of the adder 59, the output of the register 61 is applied to the other input, and YSign is applied to the carry-in input. With this series of connections, YSign = 0, that is, Y [47:
0] is positive or when Y is 0 [47: 0] and the value of the integrated value register are added, and when YSign = 1, Y [4]
[7: 0] 2's complement is taken and added to the value of the integrated value register, that is, Y [47: 0] from the value of the integrated value register.
pull. The operation of taking the complement of 2 is to invert each bit and add 1 to it, but in the embodiment, the inverter 57 inverts the bit and YS is applied to the carry-in input of the adder 59.
1 is added by giving ign.

【0045】通常、加算器59の出力はマルチプレクサ
60を経て積算値レジスタ61にロードされる。ただ
し、マルチプレクサ60に積算値レジスタクリア信号が
与えられている場合はこのマルチプレクサは0を選択し
出力し、レジスタ61はレジスタロード信号が1の時の
み56ビット幅の入力をロードする。積算値レジスタ6
1の出力はすでに述べた様に加算器59の一方の入力と
トライステートバッファ62a,62bに与えられる。
Normally, the output of the adder 59 is loaded into the integrated value register 61 via the multiplexer 60. However, when the integrated value register clear signal is given to the multiplexer 60, this multiplexer selects and outputs 0, and the register 61 loads the 56-bit wide input only when the register load signal is 1. Integrated value register 6
The output of 1 is supplied to one input of the adder 59 and the tristate buffers 62a and 62b as described above.

【0046】2個のトライステートバッファ62a,6
2bはともに28ビット幅で、一方は積算値レジスタ6
1の出力の上位28ビットを入力し、もう一方は積算値
レジスタの出力の下位28ビットを入力する。いずれの
トライステートバッファも28ビット幅の内部バス12
bをドライブする。各トライステートバッファのイネー
ブル信号すなわち積算値レジスタ読み出し信号は外部バ
スインターフェース手段15にて作られる。
Two tri-state buffers 62a, 6
2b are both 28-bit wide, and one is integrated value register 6
The upper 28 bits of the output of 1 are input, and the other lower 28 bits of the output of the integrated value register are input. Both tri-state buffers are 28-bit wide internal bus 12
Drive b. The enable signal of each tri-state buffer, that is, the integrated value register read signal is generated by the external bus interface means 15.

【0047】図12に外部バスインターフェース手段の
実施例を示す。実施例は集積回路1外部より、3ビット
のレジスタアドレスA[2:0]、チップセレクト入力
CS、ライトイネーブル入力WE、アウトプットイネー
ブル入力OE、集積回路1に対する演算可を示すPC
14、28ビット幅の双方向性データバスDB[27:
0]を入力する。このうちPC 14を除くRA[2:
0],CS,WE,OE,DB[27:0]は外部バス
13を構成する。
FIG. 12 shows an embodiment of the external bus interface means. In the embodiment, a 3-bit register address A [2: 0], a chip select input CS, a write enable input WE, an output enable input OE, and a PC indicating whether operation is possible for the integrated circuit 1 are provided from the outside of the integrated circuit 1.
Bidirectional data bus DB [27:
0] is input. RA [2: except for PC 14:
0], CS, WE, OE, and DB [27: 0] form the external bus 13.

【0048】A[2:0],CS,WE,OEは集積回
路1のクロックに対して非同期な入力である。そのた
め、それぞれクロックに対して同期をとるシンクロナイ
ザ64a,64b,64c,64dに入力し、それらの
出力をレジスタアドレスデコーダ66に入力する。集積
回路1が外部バス13からの入力を受け付けるのはCS
=1かつWE=1かつOE=0のときで、A[2:0]
で指定された内部レジスタ(Xi,Yi,Zi,e,
h)に対応して、レジスタ書き込み信号がアサートされ
る。集積回路1が外部バス13に値を出力するのはCS
=1かつWE=0かつOE=1のときで、A[2:0]
で指定された積算値レジスタの上位もしくは下位の28
ビットの読み出し信号がアサートされる。同時に、バス
ドライブ信号がアサートされる。
A [2: 0], CS, WE, and OE are asynchronous inputs to the clock of the integrated circuit 1. Therefore, they are input to the synchronizers 64a, 64b, 64c, and 64d which are synchronized with the clocks respectively, and their outputs are input to the register address decoder 66. It is CS that the integrated circuit 1 accepts the input from the external bus 13.
= 1 and WE = 1 and OE = 0, A [2: 0]
Internal register (Xi, Yi, Zi, e,
Corresponding to h), the register write signal is asserted. It is CS that the integrated circuit 1 outputs a value to the external bus 13.
= 1 and WE = 0 and OE = 1, A [2: 0]
28 of the upper or lower of the integrated value register specified by
The bit read signal is asserted. At the same time, the bus drive signal is asserted.

【0049】外部バス13のデータバス部DB[27:
0]はDFF 68bを介して内部バ12aに接続さ
れ、また、内部バス12bはDFF 68aとトライス
テートバッファ65を介してDB[27:0]に出力す
る。トライステートバッファ65はバスドライブ信号を
DFF 67で1クロック遅らせたもので制御され、バ
スドライブ信号がアサートされた次のサイクルの間、ラ
ッチとして機能するDFF 68aの出力をDB[2
7:0]に出力し、そうではないときはハイインピーダ
ンス状態になる。
Data bus part DB [27: of the external bus 13]
0] is connected to the internal bus 12a via the DFF 68b, and the internal bus 12b outputs to DB [27: 0] via the DFF 68a and the tri-state buffer 65. The tri-state buffer 65 is controlled by delaying the bus drive signal by one clock by the DFF 67, and outputs the output of the DFF 68a, which functions as a latch, to DB [2 during the next cycle in which the bus drive signal is asserted.
7: 0], and if not, the high impedance state is entered.

【0050】すでに述べたように、各積算値レジスタは
トライステートバッファを介して内部バス12bをドラ
イブする。したがって、積算値レジスタの読み出し手順
は下記のようになる。
As described above, each integrated value register drives the internal bus 12b through the tristate buffer. Therefore, the procedure for reading the integrated value register is as follows.

【0051】1 A[2:0]とCS=1,WE=0,
OE=1をアサートする。
1 A [2: 0] and CS = 1, WE = 0,
Assert OE = 1.

【0052】2 クロックに同期してシンクロナイザが
出力する。
Output from the synchronizer in synchronization with 2 clocks.

【0053】3 レジスタアドレスデコーダ66がバス
ドライブ信号と積算値レジスタ上位/下位読み出し信号
をアサートする。
The 3-register address decoder 66 asserts the bus drive signal and the integrated value register upper / lower reading signal.

【0054】4 対応する積算値レジスタの上位または
下位の値が内部バス12bに出力。
4 The upper or lower value of the corresponding integrated value register is output to the internal bus 12b.

【0055】5 クロックに同期してバスドライブ信号
と内部バス12bの値がそれぞれDFF 67,DFF
68aに取り込まれる。
The values of the bus drive signal and the internal bus 12b are DFF 67 and DFF, respectively, in synchronization with 5 clocks.
It is taken in by 68a.

【0056】6 トライステートバッファ65がドライ
ブ状態となり、DFF 68aの値がDB[27:0]
に出力される。
6 The tri-state buffer 65 is driven, and the value of the DFF 68a is DB [27: 0].
Is output to.

【0057】一方、内部レジスタへの書き込みの場合
は、DB[27:0]の値はDFF68bを経て内部バ
ス12aに現れるので、各内部レジスタは対応する書き
込み信号で内部バス12aの値を取り込む。
On the other hand, in the case of writing to the internal register, the value of DB [27: 0] appears on the internal bus 12a via the DFF 68b, so that each internal register takes in the value of the internal bus 12a with a corresponding write signal.

【0058】PC 14は直列につながるDFF 69
に入力し、1クロック毎にその値は右隣のDFFに送ら
れていく。DFF 69のDFFの個数はXj,Yj,
Zj,Mjの入力から積算値レジスタ手段11の積算値
レジスタ61までにあるパイプラインステージ数−1に
等しく、実施例では14個である。
The PC 14 is a DFF 69 connected in series.
To the DFF on the right side every one clock. The number of DFFs in the DFF 69 is Xj, Yj,
The number of pipeline stages from the input of Zj and Mj to the integrated value register 61 of the integrated value register means 11 is equal to -1, which is 14 in the embodiment.

【0059】図13のタイミングチャートに沿って、P
Cの入力から積算値レジスタロード信号18と積算値レ
ジスタゼロクリア信号17の生成を説明する。Xj,Y
j,Zj,Mjの値はそれが有効であるかどうかにかか
わらず、毎サイクル入力され、計算され、積算値レジス
タ手段11の積算値レジスタ61の入力に達する。X
j,Yj,Zj,Mjが有効な時PC=1を入力する。
逆にXj,Yj,Zj,Mjが無効なときはPC=0を
入力する。有効なXj,Yj,Zj,Mjは連続して毎
サイクル与えられるものとする。図13では時刻0,
1,2に有効なXj,Yj,Zj,Mjが与えられ、こ
の間PC=1で、それ以外のときはPC=0である。P
Cの値はクロック毎にDFF 69a,69b,69
c,...69m,69nと伝播していき、時刻15,
16,17においてDFF 69nの出力は1になる。
時刻15のときには時刻0に入力されたXj等のデータ
が、時刻16のときには時刻1に入力されたXj等のデ
ータが、時刻17のときには時刻2に入力されたXj等
のデータが積算値レジスタ61の入力に現れる。したが
って、積算値レジスタは時刻14にゼロクリアする必要
がある。これはDFF 69mの出力の1とDFF 6
9nの出力の0を同時に検出すればよい。これはインバ
ータ70とANDゲート72で行われ、ANDゲート7
2の出力が積算値レジスタゼロクリア信号17である。
図13の時刻14において積算値レジスタゼロクリア信
号17を与えることにより、時刻14において積算値レ
ジスタの値は0となる。積算値レジスタはその入力に有
効な値が来ている時にのみロードされる。すなわち、D
FF 69mとDFF 69nの出力をORゲート71
に与え、その出力を積算値レジスタロード信号18とす
る。図13では時刻14,15,16,17にて積算値
レジスタロード信号18は1となる。PCが1から0に
戻ると14サイクル後にDFF 69nの出力も0とな
り、積算値レジスタに新たな値はロードされず値は保持
される。
According to the timing chart of FIG. 13, P
Generation of the integrated value register load signal 18 and the integrated value register zero clear signal 17 from the input of C will be described. Xj, Y
The values of j, Zj and Mj are input and calculated every cycle regardless of whether or not they are valid, and reach the input of the integrated value register 61 of the integrated value register means 11. X
When j, Yj, Zj, and Mj are valid, PC = 1 is input.
Conversely, when Xj, Yj, Zj, and Mj are invalid, PC = 0 is input. Valid Xj, Yj, Zj, and Mj are continuously given every cycle. In FIG. 13, time 0,
Valid Xj, Yj, Zj, and Mj are given to 1 and 2, and PC = 1 during this period, otherwise PC = 0. P
The value of C is DFF 69a, 69b, 69 for each clock.
c ,. . . It propagates with 69m and 69n at time 15,
In 16 and 17, the output of the DFF 69n becomes 1.
At time 15, the data such as Xj input at time 0, at time 16 the data such as Xj input at time 1, and at time 17 the data such as Xj input at time 2 are accumulated value registers. Appears at 61 inputs. Therefore, the integrated value register needs to be zero-cleared at time 14. This is the output 1 of DFF 69m and DFF 6
It suffices to simultaneously detect the 0 of the 9n output. This is done by the inverter 70 and the AND gate 72, and the AND gate 7
The output of 2 is the integrated value register zero clear signal 17.
By giving the integrated value register zero clear signal 17 at time 14 in FIG. 13, the value of the integrated value register becomes 0 at time 14. The accumulated value register is loaded only when its input has a valid value. That is, D
The output of the FF 69m and the output of the DFF 69n are OR gates 71
To the integrated value register load signal 18. In FIG. 13, the integrated value register load signal 18 becomes 1 at times 14, 15, 16, and 17. When the PC returns from 1 to 0, the output of the DFF 69n also becomes 0 after 14 cycles, and a new value is not loaded in the integrated value register and the value is held.

【0060】[0060]

【発明の効果】本発明の処理装置にて処理する「2点間
の距離を求め相互作用力とポテンシャルを計算しそれら
の積算を1回おこなう」という計算はスーパーコンピュ
ータ上の30個の浮動小数点命令に相当する。本発明は
パイプライン処理を行っておりその計算を見掛け上1サ
イクルで行う事ができる。従って、本発明による集積回
路で構成される処理装置を30MHzで動作させると9
00MFlopsの処理能力を得ることができる。これ
はスーパーコンピュータの性能にほぼ等しい。本発明に
よる処理装置は標準的なCMOSテクノロジーで集積回
路上に構成するこができ、その量産価格は汎用マイクロ
プロセッサのCPUチップ程度であり、スーパーコンピ
ュータと比較すると極めて安価である。
The calculation of "calculating the distance between two points, calculating the interaction force and the potential, and integrating them once" processed by the processing apparatus of the present invention is performed by using 30 floating point numbers on the supercomputer. Equivalent to a command. The present invention performs pipeline processing, and the calculation can be apparently performed in one cycle. Therefore, when the processor constituted by the integrated circuit according to the present invention is operated at 30 MHz,
A processing capacity of 00MFlops can be obtained. This is almost equal to the performance of a super computer. The processing device according to the present invention can be constructed on an integrated circuit by standard CMOS technology, and its mass-production price is about the CPU chip of a general-purpose microprocessor, which is extremely inexpensive as compared with a super computer.

【0061】更に、本発明の集積回路を複数個並列に動
作させると、個数に比例する処理能力を容易に得ること
が出来る。これにより、スーパーコンピュータよりも大
きな処理能力を得ることも容易である。
Furthermore, by operating a plurality of the integrated circuits of the present invention in parallel, it is possible to easily obtain a processing capacity proportional to the number of integrated circuits. As a result, it is easy to obtain a processing capacity larger than that of a super computer.

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

【図1】 この発明の概略の構成である。FIG. 1 is a schematic configuration of the present invention.

【図2】 成分差計算手段の実施例のブロック図であ
る。
FIG. 2 is a block diagram of an embodiment of a component difference calculation means.

【図3】 対数表現乗算手段の実施例のブロック図であ
る。
FIG. 3 is a block diagram of an embodiment of a logarithmic expression multiplication means.

【図4】 対数表現除算手段の実施例のブロック図であ
る。
FIG. 4 is a block diagram of an embodiment of logarithmic representation division means.

【図5】 対数表現の加算手段の実施例のブロック図で
ある。
FIG. 5 is a block diagram of an embodiment of a logarithmic addition unit.

【図6】 相対距離計算手段の実施例のブロック図であ
る。
FIG. 6 is a block diagram of an embodiment of relative distance calculation means.

【図7】 1/2乗手段の実施例のブロック図である。FIG. 7 is a block diagram of an embodiment of 1/2 powering means.

【図8】 3/2乗手段の実施例のブロック図である。FIG. 8 is a block diagram of an embodiment of a 3/2 squaring means.

【図9】 相互作用力計算手段とポテンシャル計算手段
の実施例のブロック図である。
FIG. 9 is a block diagram of an embodiment of interaction force calculation means and potential calculation means.

【図10】 固定小数点表現変換手段の実施例のブロッ
ク図である。
FIG. 10 is a block diagram of an embodiment of fixed point representation conversion means.

【図11】 積算用加算手段と積算値レジスタの実施例
のブロック図である。
FIG. 11 is a block diagram of an embodiment of addition means for integration and an integrated value register.

【図12】 外部バスインターフェース手段の実施例の
ブロック図である。
FIG. 12 is a block diagram of an embodiment of external bus interface means.

【図13】 積算値レジスタの実施例の動作を示すタイ
ミングチャートのブロック図
FIG. 13 is a block diagram of a timing chart showing the operation of the embodiment of the integrated value register.

【符号の説明】[Explanation of symbols]

1:集積回路、2:相対位置計算手段、3:相対距離計
算手段、4:1/2乗手段、5:3/2乗手段、6:対
数表現除算手段、7:相互作用力計算手段、8:ポテン
シャル計算手段、9:固定小数点表現変換手段、10:
積算用加算手段、11:積算値レジスタ手段、12:内
部バス、13:外部バス、14:PC、15:外部バス
インターフェース手段、16:NBフラグ、17:積算
値レジスタゼロクリア信号、18:積算値レジスタロー
ド信号、19:パイプラインレジスタ、20:成分差計
算手段、21:Xi,Yi,Zi用レジスタ手段、2
2:ANDゲート、23:ExORゲート、24:加算
器、25:減算器、26:ExORゲート、29:減算
器、30:加算器、31:2入力マルチプレクサ、3
2:PLA、33:シフタ、34:ROM、35:コン
パレータ、36:DFF、37:減算器、38:DF
F、39:2入力マルチプレクサ、40:インバータ、
41:ROM、42:NORゲート、43:ANDゲー
ト、44:加算器、45:対数表現加算手段、46:e
レジスタ、47:hレジスタ、48:減算器、49:イ
ンバータ、50:対数表現乗算手段、51:対数表現乗
算手段、52:対数小数変換ROM、53:PLA、5
4:ANDゲート、55:DFF、56:シフタ、5
7:インバータ、58:2入力マルチプレクサ、59:
加算器、60:2入力マルチプレクサ、61:レジス
タ、62:トライステートバッファ、63:NANDゲ
ート、64:シンクロナイザ、65:トライステートバ
ッファ、66:レジスタアドレスデコーダ、67:DF
F、68:DFF、69:DFF、70:インバータ、
71:ORゲート、72:ANDゲート
1: integrated circuit, 2: relative position calculation means, 3: relative distance calculation means, 4: 1/2 power means, 5: 3/2 power means, 6: logarithmic expression division means, 7: interaction force calculation means, 8: potential calculation means, 9: fixed point representation conversion means, 10:
Addition means for integration, 11: integrated value register means, 12: internal bus, 13: external bus, 14: PC, 15: external bus interface means, 16: NB flag, 17: integrated value register zero clear signal, 18: integrated value Register load signal, 19: pipeline register, 20: component difference calculating means, 21: Xi, Yi, Zi register means, 2
2: AND gate, 23: ExOR gate, 24: Adder, 25: Subtractor, 26: ExOR gate, 29: Subtractor, 30: Adder, 31: 2-input multiplexer, 3
2: PLA, 33: shifter, 34: ROM, 35: comparator, 36: DFF, 37: subtractor, 38: DF
F, 39: 2 input multiplexer, 40: inverter,
41: ROM, 42: NOR gate, 43: AND gate, 44: Adder, 45: Logarithmic expression adding means, 46: e
Register, 47: h register, 48: subtractor, 49: inverter, 50: logarithmic expression multiplying means, 51: logarithmic expression multiplying means, 52: logarithmic decimal conversion ROM, 53: PLA, 5
4: AND gate, 55: DFF, 56: shifter, 5
7: Inverter, 58: 2 input multiplexer, 59:
Adder, 60: 2 input multiplexer, 61: register, 62: tristate buffer, 63: NAND gate, 64: synchronizer, 65: tristate buffer, 66: register address decoder, 67: DF
F, 68: DFF, 69: DFF, 70: inverter,
71: OR gate, 72: AND gate

───────────────────────────────────────────────────── フロントページの続き (72)発明者 橋本栄利 神奈川県海老名市本郷2274番地富士ゼロツ クス株式会社海老名事業所内 (72)発明者 宮川宣明 神奈川県海老名市本郷2274番地富士ゼロツ クス株式会社海老名事業所内 (72)発明者 牧野淳一郎 東京都目黒区駒場3丁目8番1号東京大学 教養学部内 (72)発明者 川辺幸子 東京都目黒区駒場3丁目8番1号東京大学 教養学部内 (72)発明者 伊藤智義 東京都目黒区駒場3丁目8番1号東京大学 教養学部内 (72)発明者 戎崎俊一 東京都目黒区駒場3丁目8番1号東京大学 教養学部内 (72)発明者 杉本大一郎 東京都目黒区駒場3丁目8番1号東京大学 教養学部内 ─────────────────────────────────────────────────── ─── Continuation of the front page (72) Eri Hashimoto Eri Hinamoto 2274 Hongo, Ebina, Kanagawa Fuji Zero Tux Co., Ltd.Ebina Business Office (72) Nobuaki Miyagawa 2274 Hongo, Ebina, Kanagawa Fuji Zerox Co., Ltd.Ebina Business (72) Inventor Junichiro Makino 3-8-1, Komaba, Meguro-ku, Tokyo Inside the College of Arts and Sciences, The University of Tokyo (72) Inventor Sachiko Kawabe 3-8-1, Komaba, Meguro-ku, Tokyo Inside the College of Arts and Sciences (72) Inventor Tomoyoshi Ito 3-8-1, Komaba, Meguro-ku, Tokyo, Faculty of Arts and Sciences, The University of Tokyo (72) Inventor Shunichi Ebizaki 3-8-1, Komaba, Meguro-ku, Tokyo, Faculty of Arts and Sciences, University of Tokyo (72) Inventor, Sugimoto Univ. Ichiro 3-8-1, Komaba, Meguro-ku, Tokyo Inside the College of Arts and Sciences, The University of Tokyo

Claims (13)

【特許請求の範囲】[Claims] 【請求項1】 一方の質量中心点の座標を内部に記憶
し、他方の質量中心点の座標と質量を外部から与え、こ
の2点間に作用する重力および重力ポテンシャルを計算
する単一の集積回路で構成された処理装置において、処
理装置内部の計算の処理をパイプライン化し、座標と質
量のデータを連続して供給し、更に、計算した重力と重
力ポテンシャルを積算することを特徴とする処理装置。
1. A single integration for storing the coordinates of one center of mass point internally, giving the coordinates of the other center of mass point and the mass from the outside, and calculating gravity acting between these two points and gravity potential. In a processing device composed of a circuit, the processing for calculating inside the processing device is pipelined, the data of coordinates and mass are continuously supplied, and further, the calculated gravity and gravity potential are integrated. apparatus.
【請求項2】 一方の電荷中心点の座標を内部に記憶
し、他方の電荷中心点の座標と電荷を外部から与え、こ
の2点間に作用する電気力および電気力ポテンシャルを
計算する単一の集積回路で構成された処理装置におい
て、処理装置内部の計算の処理をパイプライン化し、座
標と電荷のデータを連続して供給し、更に、計算した電
気力と電気力ポテンシャルを積算することを特徴とする
処理装置。
2. A single unit for storing the coordinates of one of the charge center points inside, giving the coordinates of the other charge center point and the charge from the outside, and calculating the electric force and electric force potential acting between these two points. In the processing device configured by the integrated circuit of, the processing of calculation inside the processing device is pipelined, the data of coordinates and charges are continuously supplied, and further, the calculated electric force and electric potential are integrated. Characteristic processing device.
【請求項3】 処理装置内部のデータあるいは外部から
与えるデータを、以下に示す対数表現およびそれに付加
された非ゼロを表す1ビットの非ゼロフラグとxの正負
を表す1ビットの符号フラグにより表現することを特徴
とする請求項1又は請求項2記載の処理装置。データを
実数xとしたとき、 x=2**(p/f) ...(式1) で表す。ここで、**は巾乗を表す記号、pは所定ビッ
ト長の2進数、fは定数で、 f=2**m ...(式2) とする。但しmは小数部語長である。
3. Data inside the processing device or data given from the outside is expressed by the following logarithmic expression and a 1-bit non-zero flag representing non-zero added thereto and a 1-bit sign flag representing positive or negative of x. The processing apparatus according to claim 1 or 2, wherein When the data is a real number x, x = 2 ** (p / f). . . It is represented by (Formula 1). Here, ** is a symbol indicating a power, p is a binary number having a predetermined bit length, f is a constant, and f = 2 ** m. . . (Formula 2) However, m is a fraction part word length.
【請求項4】 固定小数点で表現され装置内部に保持さ
れる座標と、固定小数点で表現され装置外部から供給さ
れる座標で表される空間上の2点において、各座標成分
の差を求め、更に、これらの成分差を前記対数表現で表
現する相対位置計算手段と、 前記2点間の距離の2乗であるr2 r2=Xij**2+Yij**2+Zij**2+e**2 ただし、 Xij,Yij,Zij:成分差 Xij=Xj−Xi,Yij=Yj−Yi,Zij=Z
j−Zi Xi,Yi,Zi:装置内部に保持される座標 Xj,Yj,Zj:装置外部から供給される座標 e:定数 を前記対数表現を用いて求める相対距離計算手段と、 r2を1/2乗した値rを前記対数表現にて求める1/
2乗手段と、 r2を3/2乗した値r3を前記対数表現にて求める3
/2乗手段と、 装置外部から与えられる前記対数表現の質量或いは電荷
Mjを用いて、Mj/r3とMj/rを前記対数表現に
て求める二つの対数表現除算手段と、 相互作用力の各座標成分であるXij*Mj/r3,Y
ij*Mj/r3,Zij*Mj/r3を前記対数表現
にて求める三つの相互作用力計算手段とポテンシャルu
*Mj/r(ただしuは定数)を前記対数表現にて求め
る一つのポテンシャル計算手段と、 これら計算された四つの値を前記対数表現から固定小数
点表現に変換する固定小数点表現変換手段と、 変換後のこれら四つの値をそれぞれ積算するための4個
の積算用加算手段と、 それぞれの積算値を保持する4個の積算値レジスタ手段
と、 r2と定数hの大小を前記対数表現において比較し、結
果を装置外部にフラグとして出力するコンパレータ手段
と、 Xi,Yi,Zi,e,hの値を保持するレジスタ手段
と、 装置外部から与えられるレジスタ選択アドレス信号に従
い、前記4個の積算値レジスタの内容を内部バスを経て
外部データバスに出力することができ、かつ前記レジス
タ選択アドレス信号に従い、前記Xi,Yi,Zi,
e,hの値を保持するレジスタ手段に外部バスから内部
バスを経て値を書き込むことができる外部バスインター
フェース手段とを有することを特徴とする請求項3記載
の処理装置。
4. A difference between coordinate components at two points on a space represented by a coordinate expressed in fixed point and held inside the device and a coordinate expressed in fixed point and supplied from outside the device, Further, a relative position calculation means for expressing these component differences by the logarithmic expression, and r2 r2 = Xij ** 2 + Yij ** 2 + Zij ** 2 + e ** 2, which is the square of the distance between the two points, where Xij, Yij, Zij: Component difference Xij = Xj-Xi, Yij = Yj-Yi, Zij = Z
j-Zi Xi, Yi, Zi: Coordinates held inside the device Xj, Yj, Zj: Coordinates supplied from outside the device e: Relative distance calculating means for obtaining a constant using the logarithmic expression, and r2 is 1 / Calculate the value r squared by the logarithmic expression 1 /
Square means and a value r3 obtained by multiplying r2 by 3/2 by the logarithmic expression 3
/ Square means, two logarithmic expression dividing means for obtaining Mj / r3 and Mj / r by the logarithmic expression using the mass or charge Mj of the logarithmic expression given from the outside of the device, and each of the interaction forces Coordinate component Xij * Mj / r3, Y
Three interaction force calculating means and potential u for obtaining ij * Mj / r3 and Zij * Mj / r3 by the logarithmic expression.
* One potential calculation means for obtaining Mj / r (where u is a constant) by the logarithmic expression, and fixed point expression conversion means for converting these four calculated values from the logarithmic expression to the fixed point expression. The following four adding means for integrating each of these four values, four integrated value register means for holding each integrated value, r2 and the magnitude of the constant h are compared in the logarithmic expression. Comparator means for outputting the result as a flag to the outside of the apparatus, register means for holding the values of Xi, Yi, Zi, e and h, and four integrated value registers according to a register selection address signal given from the outside of the apparatus. Can be output to the external data bus via the internal bus, and the contents of Xi, Yi, Zi,
4. The processing apparatus according to claim 3, further comprising: external bus interface means capable of writing a value from an external bus via the internal bus to a register means for holding the values of e and h.
【請求項5】 処理装置に対する演算可を示す信号の0
から1への立ち上がりを検出し、前記4個の積算値レジ
スタ手段の内容を全て0にし、前記演算可を示す信号が
1の間、前記積算用加算手段の出力を取り込み、前記演
算可を示す信号が0の間、前記4個の積算値レジスタ手
段の内容を保持することを特徴とする請求項4記載の処
理装置。
5. A signal of 0 indicating that the operation is possible for the processing device.
The rise from 1 to 1 is detected, the contents of the four integrated value register means are all set to 0, and the output of the adding means for integration is taken in while the signal indicating the operation is possible is 1 to indicate the operation is possible. 5. The processing apparatus according to claim 4, wherein the contents of the four integrated value register means are held while the signal is 0.
【請求項6】 前記相対位置計算手段において、X,
Y,Z成分用にそれぞれ同一の構成の3個の成分差計算
手段を有し、各成分差計算手段は、成分差の正負を求め
る手段と、成分差が0かどうかを検査する手段と、成分
差の絶対値を求める手段と、成分差の絶対値においてM
SB側に連続して並ぶ0の個数を検出するプライオリテ
ィエンコーダ手段と、該プライオリティエンコーダ手段
の出力結果によって決まるシフト量だけ成分差の絶対値
をシフトするシフタ手段と、 該シフタ手段の出力を入力とする対数表現変換補間手段
と、前記シフタ手段の出力においてMSB側から所定の
個数の1が連続して並んでいるならば前記プライオリテ
ィエンコーダ手段の出力に1を加算するインクリメント
手段とを有することを特徴とする請求項4記載の処理装
置。
6. In the relative position calculation means, X,
Each of the Y and Z components has three component difference calculating means having the same configuration, and each component difference calculating means determines the positive or negative of the component difference and a means for checking whether the component difference is 0 or not. Means for obtaining the absolute value of the component difference and M for the absolute value of the component difference
Priority encoder means for detecting the number of 0s continuously arranged on the SB side, shifter means for shifting the absolute value of the component difference by a shift amount determined by the output result of the priority encoder means, and the output of the shifter means Logarithmic expression conversion interpolating means, and incrementing means for adding 1 to the output of the priority encoder means if a predetermined number of 1's from the MSB side are continuously arranged in the output of the shifter means. The processing device according to claim 4.
【請求項7】 前記相対距離計算手段の Xij**2+Yij**2+Zij**2+e**2 の計算を、 2**(x/m)と2**(y/m)なる値を表す対数
表現x,yから2**(z/m)=2**(x/m)+
2**(y/m)なる値を表す対数表現zを求める対数
表現加算器であって、xとyの大小を比較する手段と、
xとyの差の絶対値を求める手段と、その絶対値を入力
とする対数表現加算器用補間手段と、その出力とxとy
のうち小さくない方を加算する手段を有し、その出力を
zとする対数表現加算器と、 2**(x/m)と2**(y/m)なる値を表す対数
表現xとyから2**(z/m)=(2**(x/
m))*(2**(y/m))なる値を表す対数表現z
を求める対数表現乗算器であって、xとyの前記符号フ
ラグのExORをとり、それをzの符号フラグとし、x
とyの前記非ゼロフラグのANDをとり、それをzの非
ゼロフラグとし、xとyのフラグではない部分を加算器
に与えzのフラグではない部分とする対数表現乗算器と
を有することを特徴とする請求項4記載の処理装置。
7. A logarithm representing a value of 2 ** (x / m) and 2 ** (y / m) in the calculation of Xij ** 2 + Yij ** 2 + Zij ** 2 + e ** 2 of the relative distance calculating means. From the expressions x and y, 2 ** (z / m) = 2 ** (x / m) +
A logarithmic expression adder for obtaining a logarithmic expression z representing a value of 2 ** (y / m), and means for comparing the magnitudes of x and y,
Means for obtaining the absolute value of the difference between x and y, logarithmic expression adder interpolating means for inputting the absolute value, and its output and x and y
A logarithmic expression adder which has a means for adding the lesser of the two, and whose output is z, and a logarithmic expression x representing the values 2 ** (x / m) and 2 ** (y / m). From y 2 ** (z / m) = (2 ** (x /
m)) * (2 ** (y / m)) is a logarithmic expression z
Is a logarithmic expression multiplier for obtaining the sign flag of x and y, and taking it as the sign flag of z.
And a non-zero flag of y, which is a non-zero flag of z, and a logarithmic expression multiplier which gives a part which is not a flag of x and y to an adder and is a part which is not a flag of z. The processing device according to claim 4.
【請求項8】 前記3/2乗手段として前記対数表現乗
算器を使用し、r2とrを前記対数表現乗算器に与える
ことによってr3を得ることを特徴とする請求項6記載
の処理装置。
8. The processing apparatus according to claim 6, wherein the logarithmic expression multiplier is used as the 3/2 means, and r3 is obtained by applying r2 and r to the logarithmic expression multiplier.
【請求項9】 Mj/r3とMj/rを求める前記対数
表現除算手段として、 2**(x/m)と2**(y/m)なる値を表す対数
表現x,yから2**(z/m)=(2**(x/
m))/(2**(y/m))なる値を表す対数表現z
を求める対数表現除算器であって、xとyの前記符号フ
ラグのExORをとり、それをzの符号フラグとし、x
の前記非ゼロフラグをzの非ゼロフラグとし、xとyの
フラグではない部分を減算器に与えzのフラグではない
部分とする対数表現除算器を使用することを特徴とする
請求項4記載の処理装置。
9. The logarithmic expression dividing means for obtaining Mj / r3 and Mj / r is a logarithmic expression x, y representing a value of 2 ** (x / m) and 2 ** (y / m) to 2 *. * (Z / m) = (2 ** (x /
m)) / (2 ** (y / m)) logarithmic expression z
Is a logarithmic expression divider that calculates ExOR of the sign flags of x and y, and sets it as the sign flag of z, and x
5. The process according to claim 4, wherein the non-zero flag of z is a non-zero flag of z, and a non-flag portion of x and y is given to a subtracter and a non-flag portion of z is used. apparatus.
【請求項10】 前記三つの相互作用力計算手段は、X
ijとMj/r3、YijとMj/r3、およびZij
とMj/r3をそれぞれ入力とする三つの前記対数表現
乗算器を有することを特徴とする請求項7記載の処理装
置。
10. The three interaction force calculation means are X
ij and Mj / r3, Yij and Mj / r3, and Zij
8. The processing apparatus according to claim 7, further comprising three logarithmic expression multipliers that respectively input and Mj / r3.
【請求項11】 前記ポテンシャル計算手段は、uとM
j/rを入力とする前記の対数表現乗算器を有すること
を特徴とする請求項7記載の処理装置。
11. The potential calculation means comprises u and M.
8. The processing device according to claim 7, further comprising the logarithmic expression multiplier having j / r as an input.
【請求項12】 対数表現のフラグではない部分の一部
を逆変換補間手段に与え、対数表現の非ゼロフラグが0
の場合、前記逆変換補間手段の出力をゼロクリアするマ
スク手段と、該マスク手段の出力を対数表現のフラグで
はない部分の別の部分に従いシフトするシフト手段と、
対数表現の符号フラグが負を意味している場合、前記シ
フト手段の出力の各ビットを反転させる反転手段と、該
反転手段の出力のMSBで符号拡張する手段と、対数表
現の符号フラグが非負を表すならば0を出力し負を表す
ならば1を出力する手段とを有する、対数表現から固定
小数点表現への変換を行う固定小数点表現変換手段を更
に備えていることを特徴とする請求項4記載の処理装
置。
12. A part of a part which is not a flag of logarithmic expression is given to the inverse transform interpolation means, and a non-zero flag of logarithmic expression is 0.
In the case of, the mask means for clearing the output of the inverse transform interpolation means to zero, and the shift means for shifting the output of the mask means according to another part other than the part of the logarithmic expression flag,
When the sign flag of the logarithmic expression means negative, the inverting means for inverting each bit of the output of the shift means, the means for sign extension with the MSB of the output of the inverting means, and the sign flag of the logarithmic expression are non-negative. Fixed point representation conversion means for converting from logarithmic representation to fixed point representation, and further comprising means for outputting 0 if it represents, and outputting 1 if it represents negative. 4. The processing device according to 4.
【請求項13】 前記積算用加算手段のキャリーイン
を、前記固定小数点表変換手段から供給することを特徴
とする請求項12記載の処理装置。
13. The processing apparatus according to claim 12, wherein the carry-in of the addition means for accumulation is supplied from the fixed point table conversion means.
JP27657291A 1991-09-28 1991-09-28 Processor for calculating interaction forces for gravity and electric force systems Expired - Lifetime JP2948378B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP27657291A JP2948378B2 (en) 1991-09-28 1991-09-28 Processor for calculating interaction forces for gravity and electric force systems

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP27657291A JP2948378B2 (en) 1991-09-28 1991-09-28 Processor for calculating interaction forces for gravity and electric force systems

Publications (2)

Publication Number Publication Date
JPH0589157A true JPH0589157A (en) 1993-04-09
JP2948378B2 JP2948378B2 (en) 1999-09-13

Family

ID=17571348

Family Applications (1)

Application Number Title Priority Date Filing Date
JP27657291A Expired - Lifetime JP2948378B2 (en) 1991-09-28 1991-09-28 Processor for calculating interaction forces for gravity and electric force systems

Country Status (1)

Country Link
JP (1) JP2948378B2 (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008026912A (en) * 2004-12-13 2008-02-07 Fraunhofer Ges Zur Foerderung Der Angewandten Forschung Ev Method for generating display of calculation result which is linearly dependent on square value
JP2008147884A (en) * 2006-12-07 2008-06-26 Canon Inc Image processor, recorder, image processing method, program and storage medium
US7587576B2 (en) 2005-10-21 2009-09-08 Nec Corporation Parameter storing method, parameter storage device, multi-body problem processing apparatus, and address generator circuit

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008026912A (en) * 2004-12-13 2008-02-07 Fraunhofer Ges Zur Foerderung Der Angewandten Forschung Ev Method for generating display of calculation result which is linearly dependent on square value
JP2008523450A (en) * 2004-12-13 2008-07-03 フラウンホッファー−ゲゼルシャフト ツァ フェルダールング デァ アンゲヴァンテン フォアシュンク エー.ファオ How to generate a display of calculation results linearly dependent on a square value
US7587576B2 (en) 2005-10-21 2009-09-08 Nec Corporation Parameter storing method, parameter storage device, multi-body problem processing apparatus, and address generator circuit
JP2008147884A (en) * 2006-12-07 2008-06-26 Canon Inc Image processor, recorder, image processing method, program and storage medium
JP4732316B2 (en) * 2006-12-07 2011-07-27 キヤノン株式会社 Image processing apparatus, recording apparatus, image processing method, program, and storage medium

Also Published As

Publication number Publication date
JP2948378B2 (en) 1999-09-13

Similar Documents

Publication Publication Date Title
US5375079A (en) Arithmetical unit including accumulating operation
US4823301A (en) Method and circuit for computing reciprocals
JPH07248841A (en) Nonlinear function generator and format converter
US4857882A (en) Comparator array logic
US5508948A (en) Numeric representation converting apparatus and vector processor unit such apparatus
US5337266A (en) Method and apparatus for fast logarithmic addition and subtraction
US4956799A (en) Trigonometric function arithmetic processor using pseudo-division
Piromsopa et al. An FPGA implementation of a fixed-point square root operation
JPH0544686B2 (en)
JP2948378B2 (en) Processor for calculating interaction forces for gravity and electric force systems
JP2009507413A (en) Full adder module and multiplier device using the full adder module
JPH0568725B2 (en)
US20230086090A1 (en) Methods and Apparatus for Quotient Digit Recoding in a High-Performance Arithmetic Unit
US4852038A (en) Logarithmic calculating apparatus
US5097434A (en) Hybrid signed-digit/logarithmic number system processor
Pawar et al. Review on multiply-accumulate unit
Nandan et al. 65 years journey of logarithm multiplier
Dawid et al. High speed bit-level pipelined architectures for redundant CORDIC implementation
SalehiTabrizi et al. Designing Efficient Two-Level Reverse Converters for Moduli Set {2^ 2n+ 1-1, 2^ 2n, 2^ n-1\} 2 2 n+ 1-1, 2 2 n, 2 n-1
Stouraitis et al. Hybrid signed digit logarithmic number system processor
Koppala et al. Performance comparison of fast multipliers implemented on variable precision floating point multiplication algorithm
Sait et al. A novel technique for fast multiplication
Hojati et al. A Low-Cost Combinational Approximate Multiplier
JP3235125B2 (en) Digital signal processing circuit
sravya Alapati et al. Hardware Implementation of Posit Numeration System using FPGA for Signal Processing Applications

Legal Events

Date Code Title Description
S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313117

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313117

R360 Written notification for declining of transfer of rights

Free format text: JAPANESE INTERMEDIATE CODE: R360

R370 Written measure of declining of transfer procedure

Free format text: JAPANESE INTERMEDIATE CODE: R370

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313117

R360 Written notification for declining of transfer of rights

Free format text: JAPANESE INTERMEDIATE CODE: R360

R360 Written notification for declining of transfer of rights

Free format text: JAPANESE INTERMEDIATE CODE: R360

R371 Transfer withdrawn

Free format text: JAPANESE INTERMEDIATE CODE: R371

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313117

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20070702

Year of fee payment: 8

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20080702

Year of fee payment: 9

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20090702

Year of fee payment: 10

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100702

Year of fee payment: 11

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110702

Year of fee payment: 12

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110702

Year of fee payment: 12

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120702

Year of fee payment: 13

EXPY Cancellation because of completion of term
FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120702

Year of fee payment: 13