JPH04133170A - マイクロプロセッサ中央処理ユニットに結合される算術計算演算モジュール - Google Patents

マイクロプロセッサ中央処理ユニットに結合される算術計算演算モジュール

Info

Publication number
JPH04133170A
JPH04133170A JP2414110A JP41411090A JPH04133170A JP H04133170 A JPH04133170 A JP H04133170A JP 2414110 A JP2414110 A JP 2414110A JP 41411090 A JP41411090 A JP 41411090A JP H04133170 A JPH04133170 A JP H04133170A
Authority
JP
Japan
Prior art keywords
input
output
adder
processing module
multiplexer
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
JP2414110A
Other languages
English (en)
Other versions
JP2948921B2 (ja
Inventor
Jean-Jacques Quisquater
ジャン−ジャック クイスキュアテ
Jean-Pierre Bournas
ジャン−ピエール ブルナ
Waleffe Dominique De
ドミニク ド ヴァレフ
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.)
Koninklijke Philips NV
Original Assignee
Philips Gloeilampenfabrieken NV
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 Philips Gloeilampenfabrieken NV filed Critical Philips Gloeilampenfabrieken NV
Publication of JPH04133170A publication Critical patent/JPH04133170A/ja
Application granted granted Critical
Publication of JP2948921B2 publication Critical patent/JP2948921B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F7/00Methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F7/38Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation
    • G06F7/48Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation using non-contact-making devices, e.g. tube, solid state device; using unspecified devices
    • G06F7/544Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation using non-contact-making devices, e.g. tube, solid state device; using unspecified devices for evaluating functions by calculation
    • G06F7/5443Sum of products
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2207/00Indexing scheme relating to methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F2207/38Indexing scheme relating to groups G06F7/38 - G06F7/575
    • G06F2207/3804Details
    • G06F2207/386Special constructional features

Landscapes

  • Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Computing Systems (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Pure & Applied Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Computational Mathematics (AREA)
  • Complex Calculations (AREA)
  • Advance Control (AREA)
  • Executing Machine-Instructions (AREA)

Abstract

(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。

Description

【発明の詳細な説明】
[0001]
【産業上の利用分野】
本発明は マイクロプロセッサ 中央処理ユニットと共
に集積された計算プロセッシング モジュール ユニッ
トで、次の一般式によって演算を行うシーケンサと、読
出/書込ワーキング メモリとを有し、B=a−X十T ここにおいて、B、X及びTはマルチビット長の整数で
、かつこれらのマルチビット長に比較して小さいm・ビ
ット フォルマットを有するオペランドであり、前記演
算は連続する計算ステップのシーケンスによって実行さ
れ、各計算ステップは、オペランドに関連の他のオペラ
ンドを組合せ、これらのオペランドの各々は、前記マル
チビット長に比較して小さなn・ビット フォルマット
を有し、かつ整数X、Tそれぞれよりn個の連続するビ
ットの部分を相互に排他的な増加する順で見て重要度i
のランクにそれぞれ位置し、同じ重要度ランクのかつ完
全な結果Bの相互に排他的な部分のn・ビットの他の部
分を同じく形成する部分的結果biを蓄積するものであ
り、前記プロセシング モジュールは、オペランドa、
  x、、  t、に対する入力と、結果biに対する
出力と、積a・xiを形成す11          
            1            
             するマルチプライヤで、そ
の後に第1加算器と第2加算器の直列配置が後続するマ
ルチプライヤとを有し、第2加算器は結果biに生ずる
n・ビットの最下位部分と最上位部分とに分割しうる部
分的演算結果を供給し、オペランドL、は1つの加算器
の入力の1つに供給され、前位の計算ステップの最上位
部分は第1リサイクリング蓄積記憶手段によって他の加
算器の入力の1つに供給される計算プロセシング モジ
ュールに関するものである。 [0002] さらに本発明は、限定されないカミとくにディジタル情
報の処理機能が、マイクロ コントローラ形の単一集積
回路によって行われる如き小形のかかるシステムを実現
することを目的とする。この種回路においては、製造コ
ストの要求と、処理の実行時間の両者を満足させるため
、処理の実行速度と、部品数を最小とするための装置構
成との間で厳密な妥協点(コンブロマイズ)を見出す必
要がある。この点に関し、特に重要な例は、例えばバン
ク(銀行)データの交換用、出入りのコントロール、署
名の保証等の多くの用途に用いうる“′スマート カー
ド′。 (または゛″チツプカード゛′の如くの小形装置で代表
される。 [0003] データ処理が多数の同様の算術計算処理を有する場合に
は、中央処理ユニット(CPU )に結合し、ここに一
般的な管理機能を持たせると有利であり、高速で特定の
種類の算術あるいは論理演算を行うことができ、しかも
中央処理ユニットとは比較的に独立してこれを行え、少
くとも連続する関連演算中はこれを行いうるプロセシン
グ モジュールをこれに設けると有利である。 [0004]
【従来の技術】
この種プロセシング モジュールで、本明細書序文の如
き目的のプロセシングモジュールはフランス特許FR−
A−2613861に開示されている。 [0005] この装置は元来スマート カード用のマイクロ コント
ローラ内に内蔵するのを目的としているので、マイクロ
 コントローラ チップ上に集積化して製造するメモリ
の要求をできるだけ経済的にし、かつ従来の技術ではか
なり制約を受けているクロック速度を最も有効に使用す
る必要がある。最後に処理時間がユーザにとって許容し
うるものであり、例えば演算結果に対する待合わせ時間
が可能な限り1秒以内またはその桁であるようにするこ
とも探究されている目的の1つである。 [0006] 従来既知のプロセシング モジュールを分析したところ
、とくに中央処理ユニットの制御によって処理されるべ
き新規なデータのロード(負荷入力)のため操作がしば
しば中断されることが判った。かかる中断は全体の処理
動作を著しく遅延させる原因となる。 [0007]
【発明の開示】
本発明の目的は、マイクロ コントローラ内に容易に集
積化が可能であり、中断時間を最小にして動作し、かつ
これに組合せて用いるメモリ容積を減少させうる演算プ
ロセシング モジュールを提供するにある。 [0008] 本発明によるプロセシング モジュールによるとオペラ
ンドaの連続ランクのに個の並列入力と、 kステップ サイクル内に、前記オペランドa [11
・・・k〕をマルチプライヤの1つの入力に連続的に供
給を行う入力選択手段と、第2リサイクル記憶手段及び
これに附属する遅延手段で、対応のサイクルの第1以外
の任意のサブステップの結果の最小位部分を(k−1)
計算サブステップだけ遅延させ、対応のサクイルの第1
計算サブステップの結果の最重要部分をに計算サブステ
ップだけ遅延させる手段と、を設けてなることを特徴と
する。 [0009] 本発明のとくに有利な変形例は、オペランドa〔〕に対
するに個の入力と中央処理ユニットの制御の下でオペラ
ンドa〔1・・・p)(pはオペランドa〔〕の可能数
)を、pステップのサイクルで連続してマルチプライヤ
の入力の1つに供給する入力選択手段で、演算のシーケ
ンス中、p=k及びp<k (p>2に対して)より選
択する選択手段と、付加的リサイクル記憶手段及びこれ
に附属する遅延手段で、対応のサイクルの第1と異なる
任意のサブステップの結果の最小位部分を(p−1)計
算ステップだけ遅延させ、対応のサクイルの第1計算ス
テップの結果の最重要部分をp計算ステップだけ遅延さ
せる手段と、 さらに第2リサクイル記憶手段内で使用するpの値の関
数として、遅延ステップの数を(k−p)だけ減少させ
得る遅延選択手段とを具えてなることを特徴とする。 [00101 既知のプロセシング モジュールに比較して、本発明の
プロセシング モジュールは演算を連続シーケンスとし
て行い、単1線でなくk(またはp)複式線のa−X形
を用いるのでより効率的である。 [0011] 同じ最終的結果(すなわち:X倍うイン)を得るための
計算ステップの全体数は相等しくなるが、一連の各連続
動作の開始に当り、中央処理ユニットによる呼によって
プロセシング モジュールの対応の遮断数は、本発明の
プロセシングモジュールではk(またはp)分の1とな
る。 [0012] 以下の説明で判る如く、本発明は、各クロック サイク
ルにおいて、基本的倍数演算と2つの付属的加算の遂行
を可能とし、一連の全動作中、デッド タイム(無駄時
間)が存しない。これと同時に、シーケンス中に処理す
べきデータに対応するアドレス ポインタは中央処理ユ
ニットより独立に負荷することができ、1つのシーケン
スと他のシーケンスの間の中断を最小に減少させること
ができる[0013] このような結果が得られるようにした特殊手段で、プロ
セシング モジュールと中央処理ユニットの間のインタ
フェイスに付属する装置は、本出願人の同時出願に係る
“′同種の演算のシーケンスに分割し得る多数の演算の
急速実行のためのマイクロコントローラ″と題するフラ
ンス国特許出願の主体である。 [0014] 本発明の他の実施例は、オペランドa()に対する入力
の数kを選択すること、すなわちプロセシング モジュ
ールをワーキング メモリに接続するバス(母線)の最
適使用を由来するに=3とし、このバスを3ステップ 
サイクルの各ステップに使用するか、あるいは4ステッ
プ サイクルとしてに=4とし、1つのサイクル時間に
このバスを使用しないの何れかとすることを特徴とする
。 [0015] 特定の用途に特に適した配置は、オペランドa〔〕に対
する入力の数kを4に等しくし、かつこれと同時に、中
央処理ユニットの制御のもとで、シーケンス中動作しう
るa(、]の入入力選択段は、4オペランドa〔〕、あ
るいは3オペランドのみの何れかとした入力の1つ、例
えば入力a〔4〕は使用しないようにする。このように
することによって、プロセシングの所定瞬時において遂
行すべき特定の演算に応じて、プロセシング モジュー
ルの使用上火なるフレキシビリティが得られる。例えば
、オペランドa 〔1,2,3,1によって3・ステッ
プ サイクルで遂行される、 B=a−X+T の形式の増倍演算で、4ステップで行われる、R=−q
−N+T の形式のモジュロN減算が後続する場合で、qは演算B
/Nの整数の商で、 Tは前の演算の累積剰余 である場合がこれに該当する。 [0016] 前記付加的リサイクル記憶手段カミ入力に第2加算器の
出力の結果の最上位部分を受取る第1バツフア レジス
タで構成される実施例では、前記付加的リサイクル記憶
手段は(k−1)のさらに他のバッファ レジスタのス
タックを有し、記憶データをステップ バイ ステップ
に転送し、前記リサイクリングに付随するスイッチ手段
は第1マルチプレクサと第2マルチプレクサを有し、 第1バツフア レジスタの出力を、一方では第2入力が
オペランド入力t、に接続されている第1マルチプレク
サの第1入力に接続し、この第1マルチプレクサの出力
は加算器の1つの入力に接続し、さらに第1バツフア 
レジスタの出力は他方において、第2入力が、第2加算
器の最下位出力に接続され、出力が前記(k−1)バッ
ファ レジスタのスタックを経由して他の加算器の入力
に接続されている第2マルチプレクサの第1入力に接続
してなることを特徴とする。 [0017] プロセシング モジュールにに入力a(、lを設け、(
p<kとするとき)pステップの減少したサイクルで動
作させるとすると、前記遅延選択手段には゛ショート・
サーキット マルチプレクサ″と呼ばれるマルチプレク
サを設けると有利であり、これによるとバッファ レジ
スタのスタック内のデータ転送中(k−p)のレジスタ
を省略することができる。 [0018] 本発明では、シーケンサの制御によって、第1マルチプ
レクサはオペランド入力tiを出力に送出し、第2マル
チプレクサは第1バツフア レジスタの出力におけるデ
ータを伝送し、演算サイクルの各第1ステップにおいて
これを行い、かつ第1及び第2マルチプレクサは、サイ
クルのその他のステップ中におていは、上述のセツティ
ングを反転せしめる構成とすることによりとくに簡単で
カリ小形の機器が得られる。 [0019] 本発明では、結果biをす、 xに変換するように、結
果biの出力の途中に排他的OR゛′回路を設け、ここ
において、Xは、該排他的OR回路に付属するレジスタ
内にロードされるnビット内の定数あるいは、入力にX
の前記値を受信し、出力は結果biのデータと共に該排
他的OR回路の入力に供給する付加的マルチプレフサの
セツティングに応じて定まるオペランドxiであるよう
にすることによって、プロセシング モジュールをさら
に広範に使用しうるようにできる。 [00201 増倍(マルチプリケーション)及び加算(アディション
)以外の演算も、例えば任意の高い価の整数の2’Sの
補数、または反対数を探索することによって遂行するこ
とができる。 ワーキング メモリ内の必要スペースについて云えば、
本発明によるプロセシング モジュールは、リサイクル
記憶手段のセットによって、データB及びTは同じ記憶
位置に書込むことができるため、すなわち一般に1つの
シーケンス(−連)の演算の結果Bは次のシーケンスの
データT(アキュムレータ)となるためかかるスペース
を最小に維持することができる。 [0021]
【実施例】
以下図面により本発明を説明する。 図1は本発明によるプロセシング モジュールの第1実
施例のブロック図である。図においてプロセシング モ
ジュール1は破線による枠内に表示しである。 前記モジュールはオペランド(演算数)a (1,2,
3〕に対する3つの入力11、12.13を有するほか
、オペランドX、用の入力21、オペランド上。用の入
力22および結果biに対する出力23を有する。また
、プロセシング モジュール1はステータス信号ととも
にプロセシング モジュール1に対するシーケンス制御
を通過させる入力/出力ポート25を含む。 [0022] プロセシング モジュール1は、このほかに中央処理ユ
ニット(CPU ) 2、読取専用形式のプログラム 
メモリ3および読取・書込形式のワーキング メモリ4
を含むマイクロコントローラ内でこれらと協働させるこ
とが好ましく、この場合、プロセシング モジュール1
の機能はパステータス・制御″レジスタ ユニット5お
よびシーケンサ6による管理を受け、これら2つのモジ
ュールは中央処理ユニット2により制御されるようにす
る。 [0023] ここでは、図示を明瞭にするため、プロセシング モジ
ュール1の機能にとって必要な本質的接続のみを示して
おり、したがって、中央処理ユニット2により送信また
は受信されるデータに関しては、ステータス・制御レジ
スタ ユニット5およびシーケンサ6とのリンクに関連
して1つのエレメント7のみを図示した内部データ バ
スと呼ばれるバスを使用するものとする。 [0024] また、アドレスに関しては、特に、中央処理ユニット2
をプログラム メモリ3およびワーキング メモリ4と
接続する内部アドレス バス8と呼ばれるバスを使用す
るものとする。ここで、図1の場合、ワーキング(作業
用)メモリ4は内部アドレス バス8に直接接続するの
でなく、その入力上に、オペランドも。 のアドレス用のダブル レジスター22−222 、オ
ペランドxiのアドレス用のダプル レジスター21−
221 、オペランドa〔1・・・k)(オペランドa
〔〕のナンバーには本実施例の場合3に等しい。)のア
ドレス用のシングル レジスタ211、ならびに結果b
iのアドレス用のダブル レジスター23−223より
なる組のアドレス ポインタ レジスタを配置したアド
レス スイッチング マルチプレクサ9を介して接続し
ていることに留意すべきである。 [0025] また、ワーキング メモリ4とプロセシング モジュー
ル1間で交換されるデータに関していえば、図1におい
ては、データをデータ入力11.12.13.21およ
び22に分配し、結果のデータを出力23から受信する
″゛ローカルバスパ10と呼ばれるバスを使用した特に
便利な配置が示されている。ローカル バスへのこの接
続は、それぞれオペランドa [”l〕、 a (2)
およびa〔3〕のデータ用のレジスタ311.312.
313 、オペランドX、用のダブル レジスタ321
.421、オペランドt、用のダブル レジスタ322
.422ならびに結果のデータb、用の1またはそれ以
上のレジスタ323を含む組のデータ レジスタを介し
て行うようにする。 [0026] 図示を明瞭にすること、さらにこの配置がプロセシング
 モジュール1の実際の作動に直接関係しないことの理
由で図1に図示していない配置の場合は、ローカル バ
ス10を介してプロセシング モジュール1によりメモ
リ4にアクセスする代りにマルチプレクサ(図示せず)
を介して、中央処理ユニット2をワーキング メモリ4
にアクセスさせることもできる。 [0027] ダブル ポインタ レジスター22−222.121−
221.123−223の各々は、中央処理ユニット2
により、作動シーケンスの間、処理すべきデータが読出
され書込まれるワーキング メモリ4内のスタート ア
ドレスでロードするようにしたそれらの前位レジスタ(
leading register)を有する。同じダ
ブル レジスタのイメージ レジスタ222.221.
223はシーケンサ6の制御のもとそれらの対応する前
位レジスタからロードされ、ついでシーケンサ6の制御
のもと自動的にデクレメント(漸減)される。 [0028] それぞれオペランドt、およびX、向けを意図するダブ
ル データ レジスタ322−422および321−4
21はローカル バスのクロック サイクルの2ステッ
プの間連続的にロードされるそれらの前位レジスタ32
2.321を有する。ここで、次のステップにはイメー
ジ レジスタ422.421へのデータの同時転送が行
われ、同じステップにレジスタ323内に前に記憶され
ていた結果データb、をワーキング メモリに書込むた
めローカル バス10が使用される。かくして、ローカ
ルバス10は作動サイクルの3ステップの間占有され、
プロセシング モジュール1はオペランドL、およびx
iを連続的にオペランドa (1) 、  a 〔2,
]およびa〔3〕と組合せる3つの処理操作を実行する
。また、後述するように、プロセシング モジュール1
は、3ステップ サイクルを形成する3つの作動ステッ
プに対して、単一の結果データをワーキング メモリ4
に書込ませるためのリサイクリング記憶手段を具える。 [0029] 図1に示す実施例においては、プロセシング モジュー
ル1に入出力(またはアクセス)するデータ用として、
−様な8ビット書式によるフォーマットを選択している
が、データ処理のため、例えば、16ビットのような他
の制限されたフォーマット(書式)を選定することがで
きることも当然である。 [0030] プロセシング モジュール1は本質的に、積a〔)xi
を生成するためのスタティック形8×8ビット未算器3
0、第1の16+8ビット加算器31および第2の16
+8ビット加算器32、ならびにある中間データに必要
な遅延を導入して適当な時間にそれらをリサイクルし、
3つの作動ステップに対する単一の結果データを得るこ
とを可能にするリサイクリング記憶手段を具える。 [0031] 未算器(マルチプライヤ) 30は入力上に、一方では
データ レジスタ421から供給されるオペランドxi
を受信し、他方では、データ レジスタ311.312
.313から到来するオペランドa [1]、 a (
2)、 a (3)の3ステップ サイクルにおける連
続的供給を可能にするデータ選択マルチプレクサ33の
出力に導出されるデータを受信する。前記未算器は、そ
の出力上に16ビット フォーマットで第1加算器31
の入力を導出する。また、前記加算器31の他の入力3
4はリサイクリング記憶手段から供給される8ビット形
状のデータを受信するようにする。16ビット フォー
マットの第1加算器31の出力は第2加算器32の入力
に供給する。ま7こ、第2加算器32は、他の入力35
に、3ステップ サイクルのステップの1つの間オペラ
ンドL、に対応する8ビット形状の決められたデータを
受信するようにする。第2加算器32は2つの8ビット
出力37および38を含む。出力37に導出される演算
結果の最下位ピッ) (least 51gn1fic
ance bit・・・最小有意義ビットともいう)は
出力23に供給し、結果データb、とじてデータ レジ
スタ323内に記憶されるようにする。出力38は第2
加算器32の出力の結果の8つの最上位ビット(m。 st 51gn1ficance bit )に関係し
、バッファ レジスタ41に供給するようにする。前記
バッファ レジスタ41は本質的にこのレジスタ内に現
われる結果データを1サイクル ステップだけ遅延させ
る働きをする。、また、第1バツフア レジスタ41の
出力は一方でこれを第1マルチプレクサ42の第1入力
に接続する。前記その出力を第2加算器32の入力35
に接続する。また、前記第1バツフア レジスタ41の
出力は、他方でこれを第2マルチプレクサ42の第1入
力に接続する。前記第2マルチプレクサ43の第2入力
には第2加算器32の最下位出力37を供給するように
し、マルチプレクサ43の出力を、記憶データをステッ
プごとに転送するスタック状の2つのバッファ レジス
タ44および45を介して第1加算器31の入力34に
接続する。 [0032] スタック状レジスタ44および45は前述の″付加的リ
サイクリング記憶手段″と呼称する記憶手段を構成し、
第1マルチプレクサ42および第2マルチプレクサ43
は″リサイクリングに関連するスイッチング手段′″を
構成する。 [0033] プロセシング シーケンス内のサイクルiの間のプロセ
シング モジュール1の機能は簡単には次のように説明
できる。 a)サイクルi−第1ステップ マルチプレクサのセツティング(設定):マルチプレク
サ33を入力11にセットマルチプレクサ42を入力2
2にセットマルチプレクサ43をバッファ レジスタ4
1の出力にセット第2加算器32の出力における結果:
=X、・a[1]+レジスタ45の現在の内容+オペラ
ンドt。 結果biの最下位ビットをレジスタ323内に記憶デー
タの転送: レジスタ44からレジスタ45ヘ レジスタ41からレジスタ44へ 第2加算器32の出力38における結果の最上位ビット
のレジスタ41への記憶ポインタ レジスタ(At) 
222のデクレメンテーション(減少)およびレジスタ
322へのオペランドt、+1のローディングb)サイ
クルi−第2ステップ マルチプレクサのセツティング(設定):マルチプレク
サ33を入力12にセットマルチプレクサ42をレジス
タ41の出力にセットマルチプレクサ43を第2加算器
32の最下位出力37にセット第2加算器32の出力に
おける結果:=X、・a[2]+レジスタ45の現在の
内容+ル ジメタ41の現在の内容 データの転送: レジスタ44からレジスタ45へ 第2加算器32の出力37における結果の最下位ビット
をレジスタ44内に記憶第2加算器32の出力38にお
ける結果の最上位ビットをレジスタ41内に記憶ポイン
タ レジスタ(Ax)221のデクレメンテーション(
減少)およびレジスタ321へのオペランドX、+1の
ローディングC)サイクルi−第3ステップ マルチプレクサのカッティング(設定):マルチプレク
サ33を入力13にセットマルチプレクサ42をレジス
タ41の出力にセットマルチプレクサ43を第2加算器
32の最下位ビット出力37にセット演算の結果:=X
、・a [3]+レジスタ45の現在の内容+レジスタ
41の現在の内容 データの転送: レジスタ44からレジスタ45へ 第2加算器32の出力37における結果の最下位ビット
をレジスタ44内に記憶第2加算器32の出力38にお
ける結果の最上位ビットのレジスタ41内への記憶ポイ
ンタ レジスタ(Ab) 223のデクレメンテーショ
ン(減少)および結果biのデータのレジスタ323か
らワーキング メモリ4への書込みオペランド レジス
タからのデータの同時転送レジスタ322からレジスタ
(t、+1)422へレジスタ321からレジスタ(x
、+1)421へ[0034] 状態となる。 [0035] 進行中のシーケンスの間、オペランドa [1,2,3
,1は一定値に保持されるが、オペランドし、およびX
、は各3ステップ サイクルごとに変化する。サイクル
i+1の第1ステップでは、新しい結果データはレジス
タ323内に記憶されるが、このサイクルの第3ステッ
プでは、この結果はワーキング メモリ4内に書込まれ
る。データのリサイクリングのための例えばスタック状
レジスタ44.45内でのデータ転送は同期的に作動す
るよう指定することが必要である。 [0036] 上述のようなプロセシング モジュール1の機能から分
るように、第2加算器32の出力における演算結果の最
下位部分はレジスタ44および45のオフセットによリ
サイクルの第1ステップ以外のすべての計算ステップに
対して2計算ステップたけ遅延し、第2加算器32の出
力における結果の最上位部分はそれがレジスタ41を通
過することで与えられる付加的遅延効果によりサイクル
の第1ステップの間3計算ステップだけ遅延する。 [0037] 当面する利用の場合は、連続する3ステップ サイクル
から形成される演算(作動)シーケンスがプロセシング
 モジュール1により準独立的な方法で実行されうるよ
う、データTおよびXを大きい値の整数(例えば512
ビット)としている。この時間の間、中央処理ユニット
2は、次のシーケンス目的用にオペランドL1およびX
 ならびに演算結果b1の初期アドレス ポインタに再
ロードするま ための所要時間を有する。 [0038] オペランドa FIL、2.3)は各シーケンスのスタ
ート時になされる特定の3ステップ サイクルの間、レ
ジスタ311.312.313にロードされ、ポインタ
 レジスタ(A)211は中央処理ユニット2によりロ
ードされたその初期値からシ−ケンサ6により増分(i
ncrement )される。 [0039] プロセシング シーケンスの終りにおいて、オペランド
t、およびxiのデー夕が使いつくされた場合は、プロ
セシング モジュール1、特にレジスタ41からそのな
かに格納されていたデータを′空(empty ) ”
にする必要がある。これは同じ演算方法を使用し、オペ
ランドL、およびX、としてゼロ値(0)を入れること
により容易に達成される。 [0040] これらのゼロ値はデータTおよびXの後でワーキング 
メモリ4内に記憶することができるが、シーケンサ6に
よりゼロ値を強制できるようなデータ レジスタ321
および322を与えるようにした場合は、ワーキング 
メモリ4内の関連記憶場所を節約することが可能となる
。1つの演算(作動)シーケンスから次に進む場合は、
オペランドa (1,2,3)のグループは該オペラン
ドが抽出子または幕板(extracts )を構成す
るデータへの桁の減少する順序でとるようにするのが好
都合である。次のシーケンスに対しては、アドレス ポ
インタ レジスタ(A)211が正しく位置決めされて
おり、したがって中央処理ユニットを介在させるを要し
ない。 [0041] 全般的に、図1においては、明瞭のため制御リンクにつ
いての図示を省略しているが、例外としてステータス・
制御レジスタ ユニット5およびシーケンサ6に至る鎖
線で示した制御リンクに接続するようにした制御ポート
25を例示しており、プロセシング モジュール1の内
部においては、これらのリンクはマルチプレクサ33.
42.43の制御を行う鎖線によるバス46で表示しで
ある。 [0042] また、プロセシング モジュール1の外部においては、
これらのリンクはデータ レジスタ321−421およ
び322−422内でのデータ転送のほか、前述のレジ
スタ321および322におけるゼロ値の強制を行わせ
るための制御リンク47として同様に表示しである。 [0043] クロック周波数で刻時される複数のフリップ フロップ
により構成したシーケンサ6に関しては、プロセシング
 モジュール1のシーケンシング(順序付け)条件は上
述の演算プロセスから純論理(pure logic)
により抽出されるので、詳細な説明を要しない。 [0044] ステータス・制御レジスタ ユニット5は、そのなかに
プロセシング モジュール1の作動ステータス情報(オ
フまたはランニング・・・) シーケンス内に行われる
べきサイクル数、および決められたシーケンスの終りに
データ レジスタ321および322をゼロ値に強制さ
せなければならないステップ数を書込むようにした複数
のレジスタを含む。この目的のため、ステータス・制御
レジスタ ユニット5は、特定の状態のもとて(シーケ
ンスの始めおよびシーケンスの終りに)行われるべきサ
イクル数の限度を書込むようにした複数のレジスタおよ
び1つのサイクル カウンタを具える。ステータス・制
御レジスタ ユニット5は任意の既知の方法で構成する
ことができる。°また、それは簡単に決められ、ここで
詳述する必要がないような論理条件を満足するような方
法で配置することができる。 [0045] 図2は、その原理において図1のプロセシング モジュ
ール1とほぼ同様であるが、若干の変形を与えるように
したプロセシング モジュール100を示す。この場合
、図1のプロセシング モジュール1の構成素子と同じ
機能を有する図2の構成素子に関しては同一符号数字を
用いて表示しである。 [0046] まず始めに、ここでは、オペランド入力a[I   )
の数kが4つに増えているので、図1のデータ レジス
タ311−313の数もオペランドa〔4〕用の入力1
4においてプロセシング モジュール100に接続した
1つのレジスタだけ増えることになり、同様にデータ選
択マルチプレクサ33も入力11ないし14の1つに対
する4つの選択セツティングを含むことになる。かくし
て、プロセシング モジュール100を4ステップ サ
イクルで機能するよう作動させ、1つの演算(作動)シ
ーケンスの間に4つの同時乗算“′ライン′°相当(t
he equivalent of four sim
ultaneous multiplication 
”1ines ” )を実行させることができる。また
、4ステップ サイクルに適するデータのリサイクル記
憶を得るため、スタック状バッファ レジスタは(図1
のプロセシング モジュール1の場合の2つの代りに)
3つのレジスタ44.445.45により形成する。し
たがって、4ステップ サイクルにおいては、第2加算
器32の出力37における演算結果の最下位部分はサイ
クルの第1ステップ以外のすべての計算ステップに対し
て3計算ステップだけ遅延される。遅延は、データがバ
ッファ レジスタ41を通過することにより、第2加算
器32の出力38における演算結果の最上位部分に関し
て4ステップに増加され、この遅延はサイクルの第1の
各ステップに導入される。 [0047] プロセシング モジュール100が4つのオペランドa
 [1,2,3,41を用いて、4ステップ サイクル
で機能しうる場合は、少ないオペランド数、例えば3つ
オペランドのみで機能させることもでき、この場合、オ
ペレーション サイクルは図1のプロセシング モジュ
ール1の場合のように3ステップに減少する。これを実
現するには、ステータス・制御レジスタ ユニットおよ
びシーケンサに、4つのオペランドa(I]あるいは3
つのみのオペランドのいずれかの使用のためデータ選択
マルチプレクサ33を制御する必要手段を設け、かつ作
動シーケンスの全期間にわたってこれを行うことで充分
である。同時に、3ステップサイクルおよび3に減少し
たオペランド数a〔〕で機能させる場合は、中間のデー
タ リサイクリングにおいて適当な遅延を得るためスタ
ック状のバッファレジスタ44−45をルジスタだけ減
らす必要があり、これはスタック状レジスタ内のレジス
タの1つ、例えばレジスタ445を″短絡゛′マルチプ
レクサ446を介して回避させることにより可能となる
。かくして、プロセシング モジュール100はその利
用に応じてその使用に融通性があり、各シーケンスにお
いて行うべき処理にもっとも適した作動モードの選択を
可能にする。4つのオペランドa (1ないし4〕また
は3つのみのオペランドa [1ないし3〕の使用の選
択はデータ選択マルチプレクサ33の適当な制御ならび
にバッファ レジスタ445を回避するか、しないかの
マルチプレクサ446のセツティングの制御により簡単
に得られる[0048] 図2のプロセシング モジュール100は図1に示すモ
ジュールに対し他の゛変形を含むものとし、それは結果
の最下位出力37と出力端子23との間に排他的論理和
回路50を介在させたことにある。したがって、出力2
3におけるデータ結果は第2加算器32の最下位出力と
、例えばゼロ値または16進値FF (all bit
s at 1  :全ビットが1)であり得るような決
められた定数で中央処理ユニットによりロードされた8
ビット レジスタ52のオペランドX■または内容Xの
なかから付加的マルチプレクサ51を介して選択された
値との間で排他的論理和演算により得られる。 この配置は、例えば、任意の長さの数に対する逆の値お
よび数の逆数に1を加えることによりその数の2の補数
を探索する際、直面する利用要求の関数としてのプロセ
シング モジュール100の処理能力の増大を可能にす
る。実際の例の場合は、図2に示すように、すべてが8
ビット フォーマットのオペランド データを処理する
ようプロセシング モジュール100を生成することが
できるが、これは必ずしも必要なことではなく、プロセ
シング モジュール100により他の任意のデータ フ
ォーマットを処理しうるよう選択することもできる。ま
た、オペランドa〔〕の数kを増やすこともでき、この
目的のためには、必要数の入力を有するマルチプレクサ
33を与え、スタック状レジスタ44−45内のレジス
タの数を増やしてそれを(k−1)個のレジスタに増加
させることが充分である。 [0049] 図3は本発明によるプロセシング モジュールの他の実
施例のブロック図である。この図に示すプロセシング 
モジュール110は、使用されている8ビットフオーマ
ツト以外に1最上位溢れビットがオペランドa〔4〕上
に現われるような特定の利用に関係する。1またはOの
溢れビットの値の考慮は、付加的1ビット入力端子24
からプロセシング モジュール110により実行される
。この溢れビットは、例えば、ステータス レジスタに
おいて受信され、前の演算の結果としてそのなかに記憶
することができる。他のオペランド入力(t、 )22
.  (x、 )21ならびに(a〔1・・・4〕)1
1ないし14は8ビット フォーマットを有する図2の
プロセシング モジュール100のそれらと同様であり
、また8ビット フォーマットの結果出力23に対して
も同じことが適用できる。 [0050] 単一溢れビットは、17−ビット出力を有する(9X8
)−ビット果算器60、第1の(17+9 )−ビット
加算器61および第2の(17+8 )−ビット加算器
62を使用することによる処理操作と同時にプロセシン
グ モジュール110により処理される。溢れビットは
オペランドa〔4〕に関連させる必要があり、したがっ
て、各サイクルの第4ステップにおいては、このビット
は、それが1にあるとき計算のなかに入り込むようにし
なければならない。したがって、第2加算器62の9ビ
ットの最上位出力68は9ビット バッファ レジスタ
71に伝送され、次のサイクルの第1ステップにはレジ
スタ71に格納されている結果が、同じく9ビット レ
ジスタにより形成したスタック状レジスタ74−75に
転送される。オペランドa〔1〕ないしa〔3〕に関連
するサイクルの他のステップに対しては溢れビットは存
在せず、入力24はOであり、現実に処理は8ビットに
わたって実行されるので第2加算器62の最上位出力6
8の9番目のビットは実際上Oとなる。また、第1マル
チプレクサ42の9番目のビット用の入力は必要でなく
なり、マルチプレクサ42は図1または図2に示す同等
物と同じものになる。 [0051] 第2加算器62の出力67における最上位演算結果に関
していえば、これらは常に8ビット フォーマットをと
り、サイクルの第1ステップ以外に、これらのデータが
スタック状レジスタ74−75内でリサイクルされると
き9番目のビットOが第2マルチプレクサ73の付加釣
人カフ6を介してスタック状にレジスタに導入され、こ
の入力は不変的にO値を強いられる。また、図に示すよ
うに、4から3へのサイクルのステップ数の減少、換言
すればオペランドa (1,2,3]のみの使用を求め
ることもでき、これは、図2で示したようにデータ選択
マルチプレクサ33の特別な制御により、またスタック
状のバッファ レジスタ74−75のレジスタの1つ、
例えばレジスタ745を回避させることを可能にするパ
短絡゛マルチプレクサ446により達成可能である。 [0052] 最後に、図3に示すプロセシング モジュール110は
、図2のプロセシングモジュール100のそれにきわめ
て匹敵した方法で機能する。すなわち、それは、4ステ
ップ サイクルよりなる作動シーケンスの間に、この単
一ビットを処理するための付加的シーケンスの使用を強
いることなしに、オペランドa〔4〕の可能な付加的溢
れビットと同時に4つのオペランドa [”lないし4
]に関する演算を可能にする。 [0053] 以上、図3においては、オペランドのフォーマットが8
ビット形状であるような例について、プロセシング モ
ジュール110の説明をしてきたが、他の任意の値の限
定フォーマットを使用しうろこと当然である。さらに一
般的にいえば、図3に示す実施例は、nビット オペラ
ンドの処理を行うため、(n+1)Xnビットを処理す
るよう配置した乗算器60と、 (2n+1)+ (n
+1)ビットに関し演算を行う第1加算器61と、(2
n+1)+nビットに関し演算を行う第2加算器とを含
むほか、(n+1)ビットのフォーマットを有する第1
バツフア レジスタと、同じく (n+1)ビットのフ
ォーマットを有するスタック状レジスタを構成するレジ
スタ74.745.75とを含み、さらに第2の3人カ
マルチプレクサ73を具えて、その第1  (n+1)
−ビット入力に第1バツフア レジスタ71の内容を供
給し、第2n−ビット入力に第2加算器62の最下位出
力67を供給し、O値を強いられる付加的1−ビット入
カフ6に、スタック状レジスタ74.745.75でリ
サイクルされるべき(n+1)番目の最上位ビットを供
給するようにしたプロセシング モジュール110に関
するものである。 [0054] 図4は本発明によるプロセシング モジュールの他の実
施例のブロック図を示す。図に示すプロセシング モジ
ュール120は図1のプロセシング モジュール1の変
形例とみなすことができる。したがって図1に示す構成
素子と同じ構成素子に関しては同一符号数字を用いて表
示しである。このプロセシング モジュール120はオ
ペランドa〔1ないし3〕に対する3つの入力11.1
2.13を含み、したがって、3ステップ サイクルの
形成されたシーケンスで機能するが、図1のブロック図
に示す構造に関していくつかのモジュールを付加するこ
とにより、オペランドa〔3〕より僅かに高いランクの
最上位ビットを表わす付加的溢れビットを同時に処理す
ることもできる。 [0055] 図示実施例は、演算a(3)   x、を実行した後で
実際に溢れビットが存在すす るときは、有効桁(signifieance)の適当
なシフト、すなわち8ビットのシフトにxiをもう−度
加算した場合、結果が得られるという考えにもとづくも
のである。この作動(演算)は、本質的に、(8+8+
1)ビットにわたって作動し、その第1の8ビット入力
に第2加算器32の出力38における結果の最上位部分
を受信し、その第28ビット入力に第3マルチプレクサ
82により選択されたオペランドxiの値もしくは8ビ
ット上のゼロ値のいずれかを受信するよう形成した第3
加算器81により行うことができる。前記第3加算器8
1は第1バツフア レジスタ41の入力に接続した第1
8ビット出力83ならびに桁上げ出力と呼ばれる第2の
1ビット出力84を含み、前記1ビット出力値をパゼロ
 リセット°′マルチプレクサと呼ばれる第4マルチプ
レクサ86を介して第3加算器81の第3入力87に3
ステップの遅延でリサイクルさせるため、1ビット桁上
げレジスタ85に記憶させるようにする。 [0056] オペランドa〔3〕の可能な溢れビットは任意の適当な
手段により、例えばステータス・制御レジスタ ユニッ
ト5(図1参照)のレジスタ内に記憶させるようにする
。それは、本質的に図1に関して前述したようにサイク
ルの第3ステップにおいて、a〔3”)   x、+レ
ジスタ45の現在の内容+レジスタ41の現在の内容:
の演算の実行と同時に考慮されるべきである。 [0057] この場合には、オペランドxiの第2加算器32の出力
38における結果の最上位部分との付加的加算が行われ
、これはその出力にオペランドxiを伝送するような方
法で第3マルチプレクサ82をセットすることにより達
成される。 この加算は、レジスタ85に格納される桁上げ(キャリ
ー)ビットを生じさせることを可能にし、残りの8ビッ
トを次のサイクルの第1ステップにスタック形レジスタ
44−45においてリサイクルさせるため第1バツフア
 レジスタ41に記憶させる。 [0058] 他のすべての場合、すなわち、溢れビットが1でないと
き、あるいはオペランドa〔1〕またはa〔2〕に関す
る演算が行われているときは、第3マルチプレクサ82
は、演算結果の最上位部分の第1バツフア レジスタ4
1への伝送に効力を有しない第3加算器81に等価なゼ
ロ値を伝送するような方法でセットされる。 [0059] しかし、この場合、桁上げレジスタ85内に記憶された
桁上げビットは、3ステップの遅延、すなわち、実際上
、サイクルの第3ステップごとに第3加算器81におけ
る加算に再入(re−enter )させるようにする
。 [00601 各サイクルの第1および第2ステップに対しては、ゼロ
 リセット マルチプレクサ86をその出力にゼロが伝
送されるようセットする。 [0061] プロセシング モジュール120は、他の点では、図1
のプロセシング モジュール1に関して前述した作動に
きわめて類似した方法で作動する。 [0062] 図5は本発明によるプロセシング モジュールの他の実
施例のブロック図を示す。図に示すプロセシング モジ
ュール130はオペランド入力a〔〕の数を4に等しく
した図4のプロセシング モジュール120に関連する
。したがって、前記プロセシング モジュール130は
、4人カマルチプレクサにより形成したデータ選択マル
チプレクサ33と、図2の場合のように、中間データ 
リサイクリングにおいて適当な遅延を生成するための付
加的レジスタ445を含むリサイクリング記憶手段の一
部を形成するスタック状バッファ レジスタ44−45
以外は、図4に示すプロセシング モジュール120の
場合と同じ構成素子により構成している。また、図2の
プロセシング モジュール100の場合に、オペランド
a〔〕の数をある決められたシーケンスに対して4から
3に減らすことができたと同様に、図5に示すプロセシ
ング モジュール130においてもこの可能性を与える
ことができる。それは、スタック状レジスタ44−45
のレジスタの1つを回避することを可能にし、プロセシ
ング モジュールが3ステップ サイクルで作動しなけ
ればならないとき適当なリサイクリングを設定する短絡
マルチプレクサ446を与えることで充分である。それ
以外のプロセシング モジュール130の機能は図2お
よび図4に関する前述の説明から容易に抽出される。 [0063] 本発明は本明細書記載の実施例に限定されるものでなく
、本発明は他の変形をも包含するものである。さらに、
図2の場合には、その出力に排他的論理回路と演算結果
データの組合せを付加するような補足を与えているが、
これを他の任意の実施例に適用することもできる。また
、本発明の実施に際しては、種々の実施例に関し前述し
たように、8ビット オペランド フォーマットを使用
することが好都合であったが、本発明によるプロセシン
グ モジュールの構成のため他の任意のフォーマットも
使用しうろこと明らかである。 [0064] 本発明によるプロセシング モジュールは、特に、イン
テル社(IN置 corporation )の設計に
係る8051マイクロコントローラのような既知のマイ
クロコントローラの中央処理ユニットに関連して容易に
集積化することが可能であり、かつその使用に際し標準
インストラクション セットの任意の変更を要しない。 また、本発明プロセシング モジュールに関連するステ
ータス・制御レジスタ ユニットはこのマイクロコント
ローラに与えられているいわゆるパ特殊機能(spec
ial functions ) ” レジスタ(SF
R)のセクションにより構成することができる。
【図面の簡単な説明】
【図1】 本発明プロセシング モジュールの第1実施例のブロッ
ク図およびともに集積形マイクロコントローラを構成す
る他のセクションを前記モジュールとの主接続を示す図
【図2】 図1に示すものと同じであるが、いくつかの変形例を含
むプロセシング モジュールのブロック図、
【図3】 演算数a [k)の可能な溢れビットを同時に処理する
よう形成した本発明プロセシング モジュールの第2実
施例のブロック図、
【図4】 特に付加的加算器を使用した本発明プロセシング モジ
ュールの第3実施例のブロック図、
【図5】 付加的加算器の使用という点で図4に示すものと同類の
本発明プロセシングモジュールの第4実施例のブロック
図である。
【符号の説明】
1、100.110.120.130  プロセシング
 モジュール2 中央処理ユニット(CPU ) 3 プログラム メモリ 4 ワーキング メモリ 5 ステータス・制御レジスタ ユニット6 シーケン
サ 7.8.10  バス 9 アドレス スイッチング マルチプレクサ11〜1
4.21.22.24.34.35.36  入力23
、37.38.67、68.83.84  出力25 
 入力/出力ポート 30、60  乗算器(マルチプライヤ)31、32.
61.62.81  加算器33、42.43.51.
73.82.86  マルチプレクサ41、44.45
.52.74.75.445.745  レジスタ46
、47  制御リンク 50  排他的論理和回路 85  桁上げレジスタ 121−221.122−222.123−223.3
21−421.322−422  ダブル レジスタ2
11、311.312.313.323  シングル 
レジスタ446   ”短絡°′マルチプレクサ
【書類芯】
図面
【図5】

Claims (12)

    【特許請求の範囲】
  1. 【請求項1】 マイクロプロセッサ中央処理ユニットと共に集積された
    計算プロセッシングモジュールユニットで、次の一般式
    によって演算を行うシーケンサと、読出/書込ワーキン
    グメモリとを有し、 B=a・X+T ここにおいて、B、X及びTはマルチビット長の整数で
    、かつこれらのマルチビット長に比較して小さいm・ビ
    ットフォルマットを有するオペランドであり、前記演算
    は連続する計算ステップのシーケンスによって実行され
    、各計算ステップは、オペランドに関連の他のオペラン
    ドを組合せ、これらのオペランドの各々は、前記マルチ
    ビット長に比較して小さなn・ビットフォルマットを有
    し、かつ整数X、Tそれぞれよりn個の連続するビット
    の部分を相互に排他的な増加する順で見て重要度iのラ
    ンクにそれぞれ位置し、同じ重要度ランクのかつ完全な
    結果Bの相互に排他的な部分のn・ビットの他の部分を
    同じく形成する部分的結果b_iを蓄積するものであり
    、前記プロセシングモジュールは、オペランドa、x_
    i、t_iに対する入力と、結果b_iに対する出力と
    、積a・x_iを形成するマルチプライヤで、その後に
    第1加算器と第2加算器の直列配置が後続するマルチプ
    ライヤとを有し、第2加算器は結果b_iに生ずるn・
    ビットの最下位部分と最上位部分とに分割しうる部分的
    演算結果を供給し、オペランドt_iは1つの加算器の
    入力の1つに供給され、前位の計算ステップの最上位部
    分は第1リサイクリング蓄積記憶手段によって他の加算
    器の入力の1つに供給される計算プロセシングモジュー
    ルにおいて、 オペランドaの相互に排他的な連続ランクのa〔1・・
    ・k〕のkオペランド部分を入力するk個の並列入力と
    、 サイクルにの計算サブステップの各計算サブステップ内
    に、前記オペランド部分、すなわちa〔1・・・k〕を
    マルチプライヤの1つの入力に連続的に供給を行う入力
    選択手段と、 第2リサイクル記憶手段及びこれに附属する遅延手段で
    、対応のサイクルの第1以外の任意のサブステップの結
    果の最小位部分を(k−1)計算サブステップだけ遅延
    させ、対応のサクイルの第1計算サブステップの結果の
    最重要部分をk計算サブステップだけ遅延させる手段と
    、 を設けてなることを特徴とするマイクロプロセッサ中央
    処理ユニット計算プロセッシングモジュール。
  2. 【請求項2】 マイクロプロセッサ中央処理ユニットと共に集積された
    計算プロセッシングモジュールユニットで、次の一般式
    によって演算を行うシーケンサと、読出/書込ワーキン
    グメモリとを有し、 B=a・X+T ここにおいて、B、X及びTはマルチビット長の整数で
    、かつこれらのマルチビット長に比較して小さいm・ビ
    ットフォルマットを有するオペランドであり、前記演算
    は連続する計算ステップのシーケンスによって実行され
    、各計算ステップは、オペランドに関連の他のオペラン
    ドを組合せ、これらのオペランドの各々は、前記マルチ
    ビット長に比較して小さなn・ビットフォルマットを有
    し、かつ整数X、Tそれぞれよりn個の連続するビット
    の部分を相互に排他的な増加する順で見て重要度iのラ
    ンクにそれぞれ位置し、同じ重要度ランクのかつ完全な
    結果Bの相互に排他的な部分のn・ビットの他の部分を
    同じく形成する部分的結果b_iを蓄積するものであり
    、前記プロセシングモジュールは、オペランドa、x_
    i、t_iに対する入力と、結果b_iに対する出力と
    、積a・x_iを形成するマルチプライヤで、その後に
    第1加算器と第2加算器の直列配置が後続するマルチプ
    ライヤとを有し、第2加算器は結果b_iに生ずるn・
    ビットの最下位部分と最上位部分とに分割しうる部分的
    演算結果を供給し、オペランドt_iは1つの加算器の
    入力の1つに供給され、前位の計算ステップの最上位部
    分は第1リサイクリング蓄積記憶手段によって他の加算
    器の入力の1つに供給される計算プロセシングモジュー
    ルにおいて、 オペランドaの相互に排他的な連続ランクのa〔1・・
    ・k〕のkオペランド部分を入力するk個の並列入力と
    、 サイクルpの計算サブステップの各計算サブステップに
    対する入力選択(セレクト)手段で、マルチプライヤの
    入力の1つに前記オペランドの部分a〔1・・・p〕を
    マルチプライヤの入力の1つに選択する手段とを有し、
    前記中央処理ユニットは、間隔〔2・・・k〕より前記
    演算の完全な実行のシーケンスの間に選出(チューズ)
    を行う選出手段を有し、 第2リサイクル記憶手段及びこれに附属する遅延手段で
    、対応のサイクルの第1以外の任意のサブステップの結
    果の最小位部分を(p−1)計算サブステップだけ遅延
    させ、対応のサクイルの第1計算サブステップの結果の
    最重要部分をp計算サブステップだけ遅延させる手段と
    、 さらに第2リサクイル記憶手段内で使用するpの値の関
    数として、遅延ステップの数を(k−p)だけ減少させ
    得る遅延選択手段とを具えてなるマイクロプロセッサ中
    央処理ユニット計算プロセッシングモジュール。
  3. 【請求項3】 オペランドa〔 〕に対する入力kの数を3に等しくす
    る請求項1記載のプロセシングモジュール。
  4. 【請求項4】 オペランドa〔 〕に対する入力kの数を4に等しくす
    る請求項1記載のプロセシングモジュール。
  5. 【請求項5】 オペランドa〔 〕に対する入力kの数を4に等しくし
    、入力a〔 〕の選択手段は、オペランドa〔 〕の3
    に等しい減少数で動作しうるようにした請求項2記載の
    プロセシングモジュール。
  6. 【請求項6】 前記第1リサイクル記憶手段は、入力に第2加算器の出
    力の結果の最上位部分を受取る第1バッファレジスタで
    構成される請求項1、3、4の何れかに記載のプロセシ
    ングモジュールにおいて、 前記第2リサイクル記憶手段は(k−1)のさらに他の
    バッファレジスタのスタックを有し、記憶データをステ
    ップバイステップに転送し、前記リサイクリングに付随
    するスイッチ手段は第1マルチプレクサと第2マルチプ
    レクサを有し、 第1バッファレジスタの出力を、一方では第2入力がオ
    ペランド入力t_iに接続されている第1マルチプレク
    サの第1入力に接続し、この第1マルチプレクサの出力
    は加算器の1つの入力に接続し、さらに第1バッファレ
    ジスタの出力は他方において、第2入力が、第2加算器
    の最下位出力に接続され、出力が前記(k−1)バッフ
    ァレジスタのスタックを経由して他の加算器の入力に接
    続されている第2マルチプレクサの第1入力に接続して
    なるプロセシングモジュール。
  7. 【請求項7】 請求項2または5に記載のプロセシングモジュールで、
    入力に第2加算器の出力における結果の最上位部分を受
    取る第1バッファレジスタによって前記リサイクル記憶
    手段が形成されるプロセシングモジュールにおいて、前
    記リサイクル記憶手段は、(k−1)のバッファレジス
    タのスタックを有し、記憶データはこの中でステップバ
    イステップに転送され、前記遅延選択手段は、“ショー
    トサーキット”マルチプレクサと呼ばれるマルチプレク
    サで、前記レジスタのスタック内のデータ転送中(k−
    p)のレジスタを回避しうるマルチプレクサを有し、 リサイクリングに附属する前記スイッチ手段は第1マル
    チプレクサと第2マルチプレクサとを有し、 第1バッファレジスタの出力を、一方では第2入力がオ
    ペランド入力t_iに接続されている第1マルチプレク
    サの第1入力に接続し、この第1マルチプレクサの出力
    は加算器の1つの入力に接続し、さらに第1バッファレ
    ジスタの出力は他方において、第2入力が、第2加算器
    の最下位出力に接続され、出力が前記(k−1)バッフ
    ァレジスタのスタックを経由して他の加算器の入力に接
    続されている第2マルチプレクサの第1入力に接続して
    なるプロセシングモジュール。
  8. 【請求項8】 請求項6または7記載のプロセシングモジュールにおい
    て、オペランドa〔k〕の最上位ビットのオーバーフロ
    ーのある場合、その同時処理の目的により、 (n+1)×(n)ビットに、(nは前記減少フォルマ
    ットのビット数)配置したマルチプライヤの付加的入力
    に接続した前記オーバーフロービット用の付加的入力を
    設け、 第1加算器を(2n+1)+(n+1)ビットの処理用
    に配置し、第2加算器を(2n+1)+nビットの処理
    用に配置し、第1バッファレジスタ及びレジスタのスタ
    ックのバッファレジスタを(n+1)ビットのフォルマ
    ットとし、 第2マルチプレクサは第1入力に(n+1)ビットのフ
    ォルマットの第1バッファレジスタの内容を受信し、第
    2入力には、一方において第2加算器の出力の最下位n
    ビットを、他方において、前記マルチプレクサの付加的
    入力より、ゼロに強制される(n+1)番目の最上位ビ
    ットを受信し、一方第1マルチプレクサはその2つの入
    力及び出力にnビットフォルマットを有し(第1バッフ
    ァレジスタの(n+1)番目の出力ビットを無視する)
    、結果b_iの出力もnビットとするプロセシングモジ
    ュール。
  9. 【請求項9】 請求項6または7記載のプロセシングモジュールにおい
    て、オペランドa〔k〕の最上位ビットのオーバーフロ
    ーのある場合、その同時処理の目的により、 第3・3入力加算器を設け、その第1・nビット入力は
    、第2加算器の出力における結果の最上位部分を受信し
    、第2・nビット入力は、第3マルチプレクサによって
    選択された通り、オペランドx_iの値、またはゼロに
    おけるnビットの値の何れかを受信し、この第3・3入
    力加算器は、前記第1バッファレジスタの入力に接続さ
    れた第1・nビット出力と、キャリー(桁上げ)出力と
    称される第2・1ビット出力とを有し、この値はkステ
    ップにおいてキャリーリサイクルのため1ビットキャリ
    ーレジスタ内に記憶され、第4ゼロリセットマルチプレ
    クサを経て同じ前記第3加算器の第3入力に接続され、
    前記第3マルチプレクサは、オペランドa〔k〕と同時
    にオーバーフロービットも考慮に入れるべきときは、そ
    の出力にオペランドx_iを伝送し、かつ他のすべての
    場合ゼロ値を伝送する如くしたプロセシングモジュール
  10. 【請求項10】 請求項6ないし9のいずれかに記載のプロセシングモジ
    ュールにおいて、シーケンサの制御によって、第1マル
    チプレクサはオペランド入力t_iを、を出力に送出し
    、第2マルチプレクサは第1バッファレジスタの出力に
    おけるデータを伝送し、演算サイクルの各第1ステップ
    においてこれを行い、かつ第1及び第2マルチプレクサ
    は、サイクルのその他のステップ中におていは、上述の
    セッティングを反転せしめるプロセシングモジュール。
  11. 【請求項11】 前記限定フォルマットのnの値を8ビットとする請求項
    1ないし10のいずれかに記載のプロセシングモジュー
    ル。
  12. 【請求項12】 請求項1ないし11の何れかに記載のプロセシングモジ
    ュールにおいて、結果b_iをb_ixに変換するため
    結果b_iの出力の途中に“排他的OR”回路を設け、
    ここにおいて、xは、該排他的OR回路に付属するレジ
    スタ内にロードされるnビット内の定数あるいは、入力
    にxの前記値を受信し、出力は結果b_iのデータと共
    に該排他的OR回路の入力に供給する付加的マルチプレ
    クサのセッティングに応じて定まるオペランドx_iで
    あるプロセシングモジュール。
JP2414110A 1989-12-29 1990-12-26 マイクロプロセッサ中央処理ユニットに結合される算術計算演算モジュール Expired - Fee Related JP2948921B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
FR8917456A FR2656706A1 (fr) 1989-12-29 1989-12-29 Organe de traitement arithmetique a associer a une unite centrale de microprocesseur.
FR8917456 1989-12-29

Publications (2)

Publication Number Publication Date
JPH04133170A true JPH04133170A (ja) 1992-05-07
JP2948921B2 JP2948921B2 (ja) 1999-09-13

Family

ID=9389153

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2414110A Expired - Fee Related JP2948921B2 (ja) 1989-12-29 1990-12-26 マイクロプロセッサ中央処理ユニットに結合される算術計算演算モジュール

Country Status (4)

Country Link
EP (1) EP0435399B1 (ja)
JP (1) JP2948921B2 (ja)
DE (1) DE69030303T2 (ja)
FR (1) FR2656706A1 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2775368B1 (fr) * 1998-02-26 2000-04-14 Sgs Thomson Microelectronics Coprocesseur d'arithmetique modulaire permettant de realiser des operations non modulaires rapidement

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6284335A (ja) * 1985-10-09 1987-04-17 Hitachi Ltd 乗算回路
JPS6347874A (ja) * 1986-08-16 1988-02-29 Nec Corp 算術演算装置
FR2613861B1 (fr) * 1987-04-10 1990-11-30 Pailles Jean Claude Procede et controleur pour cryptographier un message selon un algorithme a cle publique
FR2627297B1 (fr) * 1988-02-15 1990-07-20 Gallay Philippe Multiplieur de nombres binaires a tres grand nombre de bits

Also Published As

Publication number Publication date
DE69030303T2 (de) 1997-09-25
EP0435399A1 (fr) 1991-07-03
FR2656706A1 (fr) 1991-07-05
EP0435399B1 (fr) 1997-03-26
JP2948921B2 (ja) 1999-09-13
DE69030303D1 (de) 1997-04-30

Similar Documents

Publication Publication Date Title
US5287532A (en) Processor elements having multi-byte structure shift register for shifting data either byte wise or bit wise with single-bit output formed at bit positions thereof spaced by one byte
US6349318B1 (en) Arithmetic processor for finite field and module integer arithmetic operations
US6754805B1 (en) Method and apparatus for configurable multi-cell digital signal processing employing global parallel configuration
US5880981A (en) Method and apparatus for reducing the power consumption in a programmable digital signal processor
US5175863A (en) Signal data processing system having independently, simultaneously operable alu and macu
JP3573755B2 (ja) 画像処理プロセッサ
US5166978A (en) Encoding system according to the so-called rsa method, by means of a microcontroller and arrangement implementing this system
US4238833A (en) High-speed digital bus-organized multiplier/divider system
US5235536A (en) Absolute difference processor element processing unit, and processor
US20120278590A1 (en) Reconfigurable processing system and method
US9372665B2 (en) Method and apparatus for multiplying binary operands
US6209078B1 (en) Accelerated multimedia processor
US5163154A (en) Microcontroller for the rapid execution of a large number of operations which can be broken down into sequences of operations of the same kind
US7734896B2 (en) Enhanced processor element structure in a reconfigurable integrated circuit device
US10853037B1 (en) Digital circuit with compressed carry
US5414651A (en) Arithmetic unit for multiplying long integers modulo M and R.S.A. converter provided with such multiplication device
US5285403A (en) Arithmetic processing module to be associated with a microprocessor central processing unit
Sima et al. An 8x8 IDCT Implementation on an FPGA-augmented TriMedia
CN113032723A (zh) 一种矩阵乘法器的实现方法及矩阵乘法器装置
US5424969A (en) Product-sum operation unit
JP7250953B2 (ja) データ処理装置、及び人工知能チップ
JPH04133170A (ja) マイクロプロセッサ中央処理ユニットに結合される算術計算演算モジュール
KR100481586B1 (ko) 모듈러 곱셈 장치
JP5633303B2 (ja) リコンフィグ可能なlsi
US6401106B1 (en) Methods and apparatus for performing correlation operations

Legal Events

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