JP3032340B2 - プロセッサのデータメモリ用アドレスジェネレータ - Google Patents

プロセッサのデータメモリ用アドレスジェネレータ

Info

Publication number
JP3032340B2
JP3032340B2 JP3239936A JP23993691A JP3032340B2 JP 3032340 B2 JP3032340 B2 JP 3032340B2 JP 3239936 A JP3239936 A JP 3239936A JP 23993691 A JP23993691 A JP 23993691A JP 3032340 B2 JP3032340 B2 JP 3032340B2
Authority
JP
Japan
Prior art keywords
address
data
bits
instruction
address generator
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Lifetime
Application number
JP3239936A
Other languages
English (en)
Other versions
JPH04283834A (ja
Inventor
エマニユエル・ルソー
アラン・シヤトー
Original Assignee
アルカテル・ラデイオテレフオンヌ
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 アルカテル・ラデイオテレフオンヌ filed Critical アルカテル・ラデイオテレフオンヌ
Publication of JPH04283834A publication Critical patent/JPH04283834A/ja
Application granted granted Critical
Publication of JP3032340B2 publication Critical patent/JP3032340B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/34Addressing or accessing the instruction operand or the result ; Formation of operand address; Addressing modes
    • G06F9/342Extension of operand address space
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/34Addressing or accessing the instruction operand or the result ; Formation of operand address; Addressing modes
    • G06F9/355Indexed addressing
    • G06F9/3552Indexed addressing using wraparound, e.g. modulo or circular addressing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/38Concurrent instruction execution, e.g. pipeline, look ahead
    • G06F9/3877Concurrent instruction execution, e.g. pipeline, look ahead using a slave processor, e.g. coprocessor
    • G06F9/3879Concurrent instruction execution, e.g. pipeline, look ahead using a slave processor, e.g. coprocessor for non-native instruction execution, e.g. executing a command; for Java instruction set

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、プロセッサのデータメ
モリ用アドレスジェネレータに関する。
【0002】
【従来の技術及び発明が解決しようとする課題】プログ
ラマブルな電子システムは、通常は当該プロセッサに組
み込まれているプログラムコントローラから付与される
命令を実行するプロセッサを含んでいる。命令はしばし
ば、アドレス指定してデータメモリへと送られる出力デ
ータを、このデータメモリにやはり記憶され得る入力デ
ータから生成する演算を生起又は指令する。特定命令に
対するデータメモリの記憶場所のアドレスはアドレスジ
ェネレータによって供給される。
【0003】第1の公知のデータメモリアドレス指定法
として、直接アドレス指定法が有る。この方法では、ア
ドレスは、プログラムコントローラによって供給される
命令に含ませて直接的に供給される。
【0004】直接アドレス指定法は、非常に単純である
が、柔軟性の点で厳しい限界を有することが広く認めら
れている。その結果、所与のタスクをプロセッサが実行
するのに多数の命令が必要となることが多い。
【0005】第2の公知方法は間接アドレス指定法であ
る。この方法ではアドレスは、プログラムコントローラ
から供給される命令からアドレスジェネレータによって
算出される。間接アドレス指定法は、メモリ編成に大き
な柔軟性をもたらす。アドレスジェネレータは、クロッ
ク信号でクロックされる回路と、多数のセルを有する組
み合わせ回路とを含む。従ってアドレスジェネレータ
は、例えばレジスタや算術論理演算ユニットを含んでも
含まなくても、比較的大型となる。
【0006】本発明は、直接アドレス指定と間接アドレ
ス指定との中間のアドレス指定を可能にするアドレスジ
ェネレータであって、間接アドレス指定法がもたらすよ
うな柔軟性は実現しないが、従来より小型となり、従っ
て従来より低いコストで得られるアドレスジェネレータ
を提供することを目的とする。
【0007】
【課題を解決するための手段】本発明は、命令カウンタ
によってアドレス指定されたプログラムメモリから命令
を受け取り、かつ算術論理演算ユニットにアドレス指定
して送られるプログラム信号を発生するプログラムコン
トローラから制御語を受け取るべく構成されており、命
令カウンタはクロック信号で増分されかつプログラムコ
ントローラによってリセットされ、制御語が場所情報と
選択情報とを含んでおり、このプロセッサのデータメモ
リ用アドレスジェネレータは、場所情報のビットを含む
第1の部分と選択情報によって識別された現命令のアド
レスの選択された1組のビットから成る第2の部分とを
有するデータアドレスを発生する手段を備えている。
【0008】本発明のプロセッサのデータメモリ用アド
レスジェネレータにおいて、選択情報は好ましくは、デ
ータアドレスの第2の部分のビットの可変個数eを指定
する拡張コードを含む。
【0009】特別の一例において、本発明のアドレスジ
ェネレータはマルチプレクサの第1の群をさらに備えて
おり、これらの各マルチプレクサは、第1の入力で場所
情報の選択されたビットを受け取り、第2の入力で現命
令のアドレスの選択されたビットを受け取り、nを任意
の数とすると、n番目のマルチプレクサは、nがeより
大きい場合はその第1の入力にセットされ、nがe以下
である場合はその第2の入力にセットされ、データアド
レスの第2の部分は順位がe以下のマルチプレクサの出
力信号に基づいて設定され、データアドレスの第1の部
分は場所情報の選択されなかったビットと順位がeより
大きいマルチプレクサの出力信号とに基づいて設定され
る。
【0010】本発明のアドレスジェネレータは好ましく
は、選択情報の拡張コードからマルチプレクサを制御す
る選択信号を生成するデコーダを含む。
【0011】有利なことに、本発明のアドレスジェネレ
ータにおいて、指標付けビット列が、現命令のアドレス
の各々順位数を割り当てられたビットの少なくとも幾つ
かを備えており、選択情報が、データアドレスの第2の
部分が指標付けビット列のf番目以降のビットから成る
ことを指定する演算コードをも備えている。
【0012】本発明のアドレスジェネレータは第2のマ
ルチプレクサ群を含む点でも好ましく、第2のマルチプ
レクサ群の任意のn番目のマルチプレクサはそのk番目
の入力において指標付けビット列の(n+k−1)番目
のビットを受け取り、またその出力は第1のマルチプレ
クサ群のn番目のマルチプレクサの第2の入力に接続さ
れており、第2のマルチプレクサ群のマルチプレクサは
全て演算コードによってそのf番目の入力にセットされ
る。
【0013】本発明のアドレスジェネレータの好ましい
一例において、データアドレスの第2の部分は該アドレ
スの下位ビットから成るか、又は現命令のアドレスの連
続するビットから成る。
【0014】本発明のアドレスジェネレータの第1の適
用例としては、2p 個の命令のループの繰り返しの間に
データアドレスを割り当てられたデータ項目のインクリ
メントアドレス指定に係わり、この用途でデータアドレ
スの第2の部分は前記ループの実行の度に1単位ずつ増
分され、またこの第2の部分は現命令のアドレスのp番
目以降のビットを備えている。
【0015】本発明のアドレスジェネレータの第2の適
用例としては、2p 個の命令のループの繰り返しの間に
データアドレスを割り当てられたデータ項目のモジュラ
アドレス指定に係わり、この用途ではデータアドレスの
第2の部分は前記ループの実行の度に2q 単位ずつ増分
され、その際qはpより小さく、この第2の部分は現命
令のアドレスの(p−q)番目以降のビットを備えてい
る。
【0016】本発明のアドレスジェネレータの第3の適
用例としては、2p 個の命令のループをr回繰り返す間
にデータアドレスを割り当てられたデータ項目の増分循
環アドレス指定に係わり、この用途ではデータアドレス
の第2の部分は所定数2s をモジュロとして既に為され
た前記ループの実行の回数に等しく、rは整数uと2s
との積であり、前記第2の部分は現命令のアドレスのp
番目から(p+s−1)番目までのビットを備えてい
る。
【0017】本発明のアドレスジェネレータの第4の適
用例としては、2p 個の命令のループをr回繰り返す間
にデータアドレスを割り当てられたデータ項目のモジュ
ラ循環アドレス指定に係わり、この用途ではデータアド
レスの第2の部分は所定数2s をモジュロとして数2q
と既に為された前記ループの実行の回数との積であり、
qはpより小さく、rは整数uと2s との積であり、第
2の部分は現命令のアドレスの(p−q)番目から(p
−q+s−1)番目までのビットを備えている。
【0018】
【実施例】本発明の様々な目的及び特徴は、添付図面を
参照しつつ以下に詳述する非限定的な例から明らかとな
ろう。
【0019】図1と図2とにおいて、同じ構成要素には
同じ参照符号を付してある。
【0020】本発明によるアドレスジェネレータを、図
1に示した公知構造のプロセッサの一構成要素として説
明する。図1のプロセッサは次の諸要素を備えている。
【0021】命令カウンタCIは、クロック信号Ckの
各パルス毎に1単位ずつ増分される命令アドレスAIを
その出力において発生する。カウンタCIは後述するプ
ログラムコントローラCPによってリセットされる。
【0022】プログラムリードオンリメモリROMは、
命令カウンタCIから出力された命令アドレスAIによ
って識別された記憶場所に記憶された命令Iを発生す
る。
【0023】プログラムコントローラCPは、命令Iを
受け取り、従って命令カウンタCIのために初期値Vを
設定し得る。プログラムコントローラCPは、また、算
術論理演算ユニットALUへプログラム信号Pを送り、
ALUに付随したデータランダムアクセスメモリRAM
へ制御信号Cを送り、かつアドレスジェネレータGAへ
制御語MCを送る。
【0024】算術論理演算ユニットALUは、データ項
目DをデータメモリRAMの、データアドレスADによ
って識別された記憶場所へ書き込むか又はその記憶場所
から読み出す。
【0025】アドレスジェネレータGAは、このデータ
アドレスADを発生する。公知のように、アドレスジェ
ネレータGAはプログラムコントローラCPからの制御
語MCを受け取る。本発明によれば、アドレスジェネレ
ータGAは更に命令アドレスAIをも受け取る。
【0026】制御語MCは、データアドレスADと同じ
フォーマットを有する場所情報IEと、アドレスジェネ
レータGAを制御する選択情報ISとを含む。従って制
御語MCは、本発明が実施されない場合にプログラムコ
ントローラCPが直接アドレス指定のために発生する制
御語と同じ構造を有する。即ち、コントローラCPは変
更されていない。
【0027】データアドレスADは、場所情報IEか
ら、該情報IEのビットの幾つかを命令アドレスAIの
ビットによって置き換えることによって生成される。こ
の演算は、選択情報ISによって指定され、選択情報I
Sは関連する場所情報IEの個々のビットに関して、命
令アドレスAIのいずれのビットによって置き換えられ
るべきであるかを指定する。従って、アドレスジェネレ
ータGAは、データアドレスADが場所情報IEであ
り、選択情報ISがビットの置き換えを指定することは
ない直接アドレス指定モードと、データアドレスADが
場所情報IEのビットと命令アドレスAIとの組み合わ
せである計算アドレス指定モードとの2つのアドレス指
定モードを可能にする。
【0028】非限定的な例として、アドレスジェネレー
タGAの実施例を以下に説明する。
【0029】この例で、データアドレスADは、各々の
ビットが同位の場所情報ビットに等しい上位ビットを備
えた第1の部分と、命令アドレスAIの一連の連続ビッ
トの形態である下位ビットを備えた第2の部分との2つ
の部分に分割される。
【0030】選択情報ISは、この例では、拡張コード
と演算コードとの組み合わせである。拡張コードはデー
タアドレスADの第2の部分を構成するビットの可変の
個数eを指定し、演算コードはデータアドレスADの最
下位ビットであろう命令アドレスの第1ビットの順位を
指定する。
【0031】アドレスジェネレータGAは、例えば、図
2に示した回路の形態を有する。
【0032】広く受け入れられている慣例に従い、語の
ビットは0から番号を付けられている。データアドレス
ADは、b個のビットAD1 〜ADb から成り、この添
数字は1単位ずつ大きくなるビット順位を表す。データ
アドレスADの最初のm個のビットは、第1のマルチプ
レクサ群を構成するm個のマルチプレクサMA1 〜MA
m によって供給される。m番目より大きい順位のビット
は、場所情報と同位のビットである。
【0033】アドレスジェネレータGAは拡張コードE
Cからm個の選択信号S1 〜Sm を生成するデコーダD
ECを備えており、デコーダDECによって生成される
これら信号S1 〜Sm はその添数字がデータアドレスA
Dの第2の部分のビット数eより大きい場合は第1の状
態に有り、e以下の場合は第2の状態に有る。数eは必
ず数m以下である。数値による例として、2番目の選択
信号S2 はeが0又は1であれば第1の状態となり、e
が2以上であれば第2の状態となる。デコーダDECは
eが可変である場合、即ち0及びmではない値を有し得
る場合にのみ有用である。eが0又はmである場合は、
拡張コードの任意の状態に関して全ての選択信号が同じ
値を有し、従って選択信号はただ1種となる。
【0034】従ってアドレスジェネレータGAは、第1
のマルチプレクサ群を構成するマルチプレクサMA1
MAm を含んでいる。1番目のマルチプレクサMA1
1番目のデータアドレスビットAD1 を発生し、このビ
ットAD1 は、1番目の選択信号S1 が第1の状態に有
る場合はマルチプレクサMA1 の第1の入力に印加され
た場所情報IEの1番目のビットIE1 の値を取り、選
択信号S1 が第2の状態に有る場合はマルチプレクサM
1 の第2の入力に印加された、命令アドレスAIのビ
ットの中から選択された1番目のビットBS1 の値を取
る。2番目のマルチプレクサMA2 は2番目のデータア
ドレスビットAD2 を決定し、このビットAD2 は、2
番目の選択信号S2 が第1の状態に有る場合はマルチプ
レクサMA2 の第1の入力に印加された場所情報IEの
2番目のビットIE2 の値を取り、選択信号S2 が第2
の状態に有る場合はマルチプレクサMA2 の第2の入力
に印加された、命令アドレスAIのビットの中から選択
された2番目のビットBS2 の値を取る。その他のマル
チプレクサMA3 〜MAm の特徴点は、これら最初の2
つのマルチプレクサMA1 及びMA2 の特徴点から反復
法によって容易に推測される。マルチプレクサMA1
MAm の特徴点を通常のように一般化すると、n番目の
マルチプレクサMAn (1≦n≦m)はn番目のデータ
アドレスビットADn を決定し、このビットADn は、
n番目の選択信号Sn が第1の状態に有る場合はマルチ
プレクサMAn の第1の入力に印加された場所情報IE
のn番目のビットIEn の値を取り、選択信号Sn が第
2の状態に有る場合はマルチプレクサMAn の第2の入
力に印加された、命令アドレスAIのビットの中から選
択されたn番目のビットBSn の値を取る。
【0035】本発明の、図2に示してない第1の形態で
は、命令アドレスAIから選択されたビットBS1 〜B
m は、アドレスAIの特定のビットである。
【0036】図2に示した本発明の付加的な特徴によれ
ば、選択されるビットBS1 〜BSm の各々は、以下に
述べるように、命令アドレスAIの幾つかのビットのう
ちの1つの値を指令により取り得る。
【0037】命令アドレスAIのビットの全部又は一部
から、指標付けビット列が構成される。指標付けビット
列を構成するビットは、文字“AI”にこれらのビット
の指標付けビット列内での順位を表す添数字1〜gを付
して示す。所与の添数字のビットとして、命令アドレス
AI内での順位の数字が当該添数字より1つ小さいビッ
トを選択することが有利である。このような方法は単な
る例であり、唯一の可能な選択方法でないことは明らか
である。
【0038】アドレスジェネレータGAは、第1の群の
マルチプレクサMA1 〜MAm と同数のマルチプレクサ
MB1 〜MBm から成る第2のマルチプレクサ群を含ん
でおり、マルチプレクサMB1 〜MBm は、各々t個の
入力を有する。1番目のマルチプレクサMB1 はそのf
番目の入力に印加されたビットを選択された1番目のビ
ットBS1 として出力し、このような選択はf番目の入
力を指定する演算コードOCに応答して行なわれる。マ
ルチプレクサMB1 は、1番目の入力で指標付けビット
列の1番目のビットAI1 を受け取り、2番目の入力で
このビット列の2番目のビットAI2 を受け取り、この
ようにしてそのt番目の入力では指標付けビット列のt
番目のビットAIt を受け取る。同様に、2番目のマル
チプレクサMB2 はそのf番目の入力に付与されたビッ
トを選択された2番目のビットBS2 として出力する。
マルチプレクサMB2 の各入力には指標付けビット列
の、当該入力の順位より1つ上位のビットが印加され、
従ってマルチプレクサMB2 の1番目の入力は指標付け
ビット列の2番目のビットAI2 を受け取り、2番目の
入力はこのビット列の3番目のビットAI3 を受け取
り、このようにしてそのt番目の入力は指標付けビット
列の(t+1)番目のビットAIt+1 を受け取る。その
他のマルチプレクサMB3 〜MBm の特徴点は、これら
最初の2つのマルチプレクサMB1 及びMB2 の特徴点
から反復法によって容易に推測される。
【0039】マルチプレクサMB1 〜MBm の特徴点を
通常のように一般化すると、n番目のマルチプレクサM
n はそのk番目(1≦k≦t)の入力において指標付
けビット列の(n+k−1)番目のビットを受け取り、
かつ演算コードOCに応答してそのf番目の入力に付与
されたビットをn番目の選択されたビットBSn として
出力する。指標付けビット列のビット数gは第2群のマ
ルチプレクサの数mと個々のマルチプレクサの入力の数
tとの和に等しいことが留意される。
【0040】上述のような構造を有する本発明のアドレ
スジェネレータの種々の可能な適用例を以下に説明す
る。
【0041】本発明のアドレスジェネレータはまず、既
に述べたようにデータメモリRAMの直接アドレス指定
を行う場合に適用され得る。プログラムコントローラC
Pは拡張コードECを数eがゼロとなるように、即ちデ
ータアドレスADの第2の部分が無くなるように生成
し、従ってデータアドレスADは場所情報IEに等しく
なる。
【0042】本発明のアドレスジェネレータは、データ
メモリRAMのアドレス指定を命令ループ実行の一環と
して行なうことにも有利に用いられ得る。ループを構成
する命令の数が2の累乗(2p )である命令ループと関
係付けられたインクリメントアドレス指定、モジュラア
ドレス指定、及び循環アドレス指定の3つの例について
特に詳述する。
【0043】命令ループは、命令カウンタCIがスター
ト値Vにリセットされることによって始まる。命令アド
レスAIは新しい命令毎に1単位ずつ増分される。
【0044】インクリメントアドレス指定は、データア
ドレスADを命令ループ実行の度に1単位ずつ増分する
ことによって行なわれる。そのために、プログラムコン
トローラCPは演算コードOCを、第2群のマルチプレ
クサMB1 〜MBm がいずれもそのp番目の入力を選択
するように生成する。データアドレスADの上位ビット
は場所情報IEのビットである。データアドレスADの
下位ビットは命令アドレスAIのp番目以降の一連のビ
ットである。
【0045】プログラムコントローラCPは、拡張コー
ドECにおいてこの一連のビットの個数も指定する。
【0046】モジュラアドレス指定は、データアドレス
ADを命令ループ実行の度に2の累乗(2q )ずつ増分
することによって行なわれ、その際qの値はpの値より
小さい。モジュラアドレス指定実施のためには、プログ
ラムコントローラCPは演算コードOCを、第2群のマ
ルチプレクサMB1 〜MBm がいずれもその(p−q)
番目の入力を選択するように生成する。データアドレス
ADの上位ビットは場所情報のビットである。データア
ドレスADの下位ビットは命令アドレスAIの(p−
q)番目以降の一連のビットである。プログラムコント
ローラCPは拡張コードECにおいてこの一連のビット
の個数も指定する。
【0047】循環アドレス指定はインクリメントアドレ
ス指定やモジュラアドレス指定の変形である。
【0048】増分循環アドレス指定は、命令ループがr
回繰り返され、その際rは整数uと2の累乗(2s )と
の積である場合に用いられる。命令ループの最初の2s
回の実行において、データアドレスADは1回の実行毎
に1単位ずつ増分される。次の2s 回の実行では、デー
タアドレスADは1回の実行毎に2s 回前の実行の時に
有した値を取る。このような値決定がr回の実行が完了
するまで継続される。即ち、データアドレスADの第2
の部分は2s をモジュロとして既に為された命令ループ
の実行の回数に等しい。インクリメント循環アドレス指
定実施のためには、プログラムコントローラCPは演算
コードOCを、第2群のマルチプレクサMB1 〜MBm
がいずれもそのp番目の入力を選択するように生成し、
かつ拡張コードECを、第1のマルチプレクサ群の最初
のs個のマルチプレクサMA1 〜MAs が選択されたビ
ットBS1〜BSs を転送し、第1群のその他のマルチ
プレクサは場所情報IEの対応するビットを転送するよ
うに生成する。
【0049】モジュラ循環アドレス指定も、命令ループ
がr回繰り返され、その際rは整数uと2の累乗
(2s )との積である場合に用いられる。
【0050】しかし、命令ループの最初の2s 回の実行
においてデータアドレスADは、1回の実行毎に2の累
乗(2s )ずつ増分される。次の2s 回の実行では、デ
ータアドレスADは1回の実行毎に2s 回前の実行の時
に有した値を取り、このような値決定がr回の実行が完
了するまで継続される。即ち、データアドレスADの第
2の部分は2s をモジュロとして既に為された命令ルー
プの実行の回数と2q との積に等しい。
【0051】モジュロ循環アドレス指定実施のために
は、プログラムコントローラCPは演算コードOCを、
第2群のマルチプレクサMB1 〜MBm がいずれもその
(p−q)番目の入力を選択するように生成し、かつ拡
張コードECを、第1のマルチプレクサ群の最初のs個
のマルチプレクサMA1 〜MAs が選択されたビットB
1 〜BSs を転送し、第1群のその他のマルチプレク
サは場所情報IEの対応するビットを転送するように生
成する。
【0052】本発明によるアドレスジェネレータの適用
の一例を説明し、それによって上述のアドレス指定法の
幾つかを解説する。
【0053】プロセッサは対のデジタル標本値A
(i)、B(i)を受け取り、その際iは値として1〜
160の全ての整数を連続的に取る。
【0054】プロセッサは、連続する16個のこれら標
本値の平均値、
【0055】
【数1】
【0056】を求めなければならない。
【0057】この数1の式中、jは0〜9の全ての整数
をとり、またiは(16・j+k)に等しい。
【0058】プロセッサはまた、A(i)及びB(i)
からAo及びBoをそれぞれ減算することによって、補
正標本値Ac(i)、Bc(i)を Ac(i)=A(i)−Ao Bc(i)=B(i)−Bo のごとく求めなければならない。
【0059】プロセッサによって行なわれなければなら
ない演算は全て一連の命令の形態に翻訳され得、それら
の命令では、通常、等号左側の項が、例えば加算器又は
乗算器などの演算子出力レジスタを識別するか、又はデ
ータメモリの、等号右側の演算の結果が記憶される場所
を識別する。この一連の命令は2つのループ、即ちルー
プ1及びループ2を含む。
【0060】初期化段階 Loop 1: for j=0 to 9, do Loop 2: for k=1 to 16, do A(j)=A(j)+A(i) A(i)=A(i)+Ao B(j)=B(j)+B(i) B(i)=B(i)+Bo End loop 2 End loop 1 データメモリは、第1の部分として、データA(j)を
保有し、このデータA(j)は10個の連続するアドレ
スによって識別される記憶場所にjを増すべく記憶さ
れ、第2の部分として、データB(j)を保有し、この
データB(j)は10個の連続するアドレスによって識
別される記憶場所にjを増すべく記憶され、第3の部分
として、データA(i)及びB(i)を保有し、これら
のデータA(i)及びB(i)は320個の連続するア
ドレスによって識別される記憶場所にiを増すべく交互
に記憶され、従ってiがいかなる値であろうとA(i)
の直後にはB(i)が現れ、第4の部分として、データ
Ao及びBoを保有し、これらのデータAo及びBoは
任意の記憶場所に記憶される。
【0061】このデータメモリは、データAo及びBo
に関しては直接アドレス指定モードでアクセスされ、デ
ータA(j)及びB(j)に関してはインクリメントア
ドレス指定モードでアクセスされ、その際データアドレ
スADの第2の部分は拡張コードECの指定によって4
個のビットから成り、またこのアドレスADの最下位ビ
ットは演算コードOCの指定によって命令カウンタCI
から6番目に送られてくるビットで、なぜならループ1
は26 個の命令から成るからであり、更にアドレスAD
の第1の部分は場所情報IEのビットによって構成さ
れ、データA(i)及びB(i)に関してはモジュラア
ドレス指定モードでアクセスされ、その際データアドレ
スADの第2の部分は9個のビットから成り、またこの
アドレスADの最下位ビットは命令カウンタCIから1
番目に送られてくるビットであり、従って22 個の命令
から成るループ2の実行の度に2単位ずつ増大し、更に
アドレスADの第1の部分は場所情報IEのビットによ
って構成され、かつこの場合A(i)とB(i)とで同
じであり得る。
【図面の簡単な説明】
【図1】本発明によるアドレスジェネレータを具備した
公知プロセッサのブロック図である。
【図2】本発明によるアドレスジェネレータの一例のブ
ロック図である。
【符号の説明】
GA アドレスジェネレータ RAM データメモリ CP プログラムコントローラ ROM プログラムメモリ CI 命令カウンタ ALU 算術論理演算ユニット
フロントページの続き (56)参考文献 特開 昭57−207954(JP,A) 特開 昭49−34747(JP,A) 特開 平1−263750(JP,A) (58)調査した分野(Int.Cl.7,DB名) G06F 9/30 - 9/355 G06F 12/00 - 12/06

Claims (12)

    (57)【特許請求の範囲】
  1. 【請求項1】 命令カウンタによってアドレス指定され
    たプログラムメモリから命令を受け取り、かつ算術論理
    演算ユニットにアドレス指定して送られるプログラム信
    号を発生するプログラムコントローラから制御語を受け
    取るべく構成されており、前記命令カウンタはクロック
    信号で増分されかつ前記プログラムコントローラによっ
    てリセットされ、前記制御語が場所情報と選択情報とを
    含んでおり、前記場所情報のビットを含む第1の部分と
    前記選択情報によって識別された現命令のアドレスの選
    択された1組のビットから成る第2の部分とを有するデ
    ータアドレスを発生する手段を備えたことを特徴とす
    る、プロセッサのデータメモリ用アドレスジェネレー
    タ。
  2. 【請求項2】 前記選択情報が前記第2の部分のビット
    の可変の数eを指定する拡張コードを備えたことを特徴
    とする請求項1に記載の、プロセッサのデータメモリ用
    アドレスジェネレータ。
  3. 【請求項3】 マルチプレクサの第1の群をさらに備え
    ており、該各マルチプレクサは、第1の入力で前記場所
    情報の選択されたビットを受け取り、第2の入力で現命
    令のアドレスの選択されたビットを受け取り、nを任意
    の数とすると、n番目のマルチプレクサは、nがeより
    大きい場合はその第1の入力にセットされ、nがe以下
    である場合はその第2の入力にセットされ、データアド
    レスの前記第2の部分は順位がe以下のマルチプレクサ
    の出力信号に基づいて設定され、該データアドレスの前
    記第1の部分は前記場所情報の選択されなかったビット
    と順位がeより大きいマルチプレクサの出力信号とに基
    づいて設定されることを特徴とする請求項2に記載の、
    プロセッサのデータメモリ用アドレスジェネレータ。
  4. 【請求項4】 前記拡張コードから前記マルチプレクサ
    を制御する選択信号を生成するデコーダをさらに備えた
    ことを特徴とする請求項3に記載の、プロセッサのデー
    タメモリ用アドレスジェネレータ。
  5. 【請求項5】 指標付けビット列が、現命令のアドレス
    の各々順位数を割り当てられたビットの少なくとも幾つ
    かを備えており、前記選択情報が、データアドレスの前
    記第2の部分が指標付けビット列のf番目以降のビット
    から成ることを指定する演算コードをも備えていること
    を特徴とする請求項3又は4に記載の、プロセッサのデ
    ータメモリ用アドレスジェネレータ。
  6. 【請求項6】 マルチプレクサの第2の群をさらに備え
    ており、nを任意の数とすると、該マルチプレクサ群の
    n番目のマルチプレクサはそのk番目の入力において指
    標付けビット列の(n+k−1)番目のビットを受け取
    り、またその出力は前記第1の群のn番目のマルチプレ
    クサの第2の入力に接続されており、前記第2の群のマ
    ルチプレクサは全て前記演算コードによってそのf番目
    の入力にセットされることを特徴とする請求項5に記載
    の、プロセッサのデータメモリ用アドレスジェネレー
    タ。
  7. 【請求項7】 前記データアドレスの前記第2の部分が
    該アドレスの下位ビットから成ることを特徴とする請求
    項1から6のいずれか1項に記載の、プロセッサのデー
    タメモリ用アドレスジェネレータ。
  8. 【請求項8】 前記データアドレスの前記第2の部分が
    現命令の前記アドレスの連続するビットから成ることを
    特徴とする請求項1から7のいずれか1項に記載の、プ
    ロセッサのデータメモリ用アドレスジェネレータ。
  9. 【請求項9】 命令カウンタによってアドレス指定され
    たプログラムメモリから命令を受け取り、かつ算術論理
    演算ユニットにアドレス指定して送られるプログラム信
    号を発生するプログラムコントローラから制御語を受け
    取るべく構成されており、前記命令カウンタはクロック
    信号で増分されかつ前記プログラムコントローラによっ
    てリセットされ、前記制御語が場所情報と選択情報とを
    含んでおり、前記場所情報のビットを含む第1の部分と
    前記選択情報によって識別された現命令のアドレスの選
    択された1組のビットから成る第2の部分とを有するデ
    ータアドレスを発生する手段を備えており、2p 個の命
    令のループの繰り返しの間に前記データアドレスを割り
    当てられたデータ項目のインクリメントアドレス指定に
    適用されるデータメモリ用アドレスジェネレータであっ
    て、データアドレスの第2の部分が前記ループの実行の
    度に1単位ずつ増分され、前記第2の部分が現命令のア
    ドレスのp番目以降のビットから成っていることを特徴
    とする、プロセッサのデータメモリ用アドレスジェネレ
    ータ。
  10. 【請求項10】 命令カウンタによってアドレス指定さ
    れたプログラムメモリから命令を受け取り、かつ算術論
    理演算ユニットにアドレス指定して送られるプログラム
    信号を発生するプログラムコントローラから制御語を受
    け取るべく構成されており、前記命令カウンタはクロッ
    ク信号で増分されかつ前記プログラムコントローラによ
    ってリセットされ、前記制御語が場所情報と選択情報と
    を含んでおり、前記場所情報のビットを含む第1の部分
    と前記選択情報によって識別された現命令のアドレスの
    選択された1組のビットから成る第2の部分とを有する
    データアドレスを発生する手段を備えており、2p 個の
    命令のループの繰り返しの間に前記データアドレスを割
    り当てられたデータ項目のモジュラアドレス指定に適用
    されるデータメモリ用アドレスジェネレータであって、
    データアドレスの第2の部分が前記ループの実行の度に
    q 単位ずつ増分され、qがpより小さく、前記第2の
    部分が現命令のアドレスの(p−q)番目以降のビット
    を備えていることを特徴とする、プロセッサのデータメ
    モリ用アドレスジェネレータ。
  11. 【請求項11】 命令カウンタによってアドレス指定さ
    れたプログラムメモリから命令を受け取り、かつ算術論
    理演算ユニットにアドレス指定して送られるプログラム
    信号を発生するプログラムコントローラから制御語を受
    け取るべく構成されており、前記命令カウンタはクロッ
    ク信号で増分されかつ前記プログラムコントローラによ
    ってリセットされ、前記制御語が場所情報と選択情報と
    を含んでおり、前記場所情報のビットを含む第1の部分
    と前記選択情報によって識別された現命令のアドレスの
    選択された1組のビットから成る第2の部分とを有する
    データアドレスを発生する手段を備えており、2p 個の
    命令のループをr回繰り返す間に前記データアドレスを
    割り当てられたデータ項目のインクリメント循環アドレ
    ス指定に適用されるデータメモリ用アドレスジェネレー
    タであって、データアドレスの第2の部分が所定数2s
    をモジュロとして既に為された前記ループの実行の回数
    に等しく、rが整数uと2s との積であり、前記第2の
    部分は現命令のアドレスのp番目から(p+s−1)番
    目までのビットを備えていることを特徴とする、プロセ
    ッサのデータメモリ用アドレスジェネレータ。
  12. 【請求項12】 命令カウンタによってアドレス指定さ
    れたプログラムメモリから命令を受け取り、かつ算術論
    理演算ユニットにアドレス指定して送られるプログラム
    信号を発生するプログラムコントローラから制御語を受
    け取るべく構成されており、前記命令カウンタはクロッ
    ク信号で増分されかつ前記プログラムコントローラによ
    ってリセットされ、前記制御語が場所情報と選択情報と
    を含んでおり、前記場所情報のビットを含む第1の部分
    と前記選択情報によって識別された現命令のアドレスの
    選択された1組のビットから成る第2の部分とを有する
    データアドレスを発生する手段を備えており、2p 個の
    命令のループをr回繰り返す間に前記データアドレスを
    割り当てられたデータ項目のモジュラ循環アドレス指定
    に適用されるデータメモリ用アドレスジェネレータであ
    って、データアドレスの第2の部分が所定数2s をモジ
    ュロとして数2q と既に為された前記ループの実行の回
    数との積であり、qはpより小さく、rは整数uと2s
    との積であり、前記第2の部分は現命令のアドレスの
    (p−q)番目から(p−q+s−1)番目までのビッ
    トを備えていることを特徴とする、プロセッサのデータ
    メモリ用アドレスジェネレータ。
JP3239936A 1990-09-19 1991-09-19 プロセッサのデータメモリ用アドレスジェネレータ Expired - Lifetime JP3032340B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
FR9011560A FR2666916A1 (fr) 1990-09-19 1990-09-19 Vanne regulatrice de debit.
FR9011560 1990-09-19

Publications (2)

Publication Number Publication Date
JPH04283834A JPH04283834A (ja) 1992-10-08
JP3032340B2 true JP3032340B2 (ja) 2000-04-17

Family

ID=9400448

Family Applications (1)

Application Number Title Priority Date Filing Date
JP3239936A Expired - Lifetime JP3032340B2 (ja) 1990-09-19 1991-09-19 プロセッサのデータメモリ用アドレスジェネレータ

Country Status (5)

Country Link
US (1) US5355462A (ja)
EP (1) EP0476592A3 (ja)
JP (1) JP3032340B2 (ja)
CA (1) CA2051559C (ja)
FR (1) FR2666916A1 (ja)

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5479626A (en) * 1993-07-26 1995-12-26 Rockwell International Corporation Signal processor contexts with elemental and reserved group addressing
US5712999A (en) * 1993-11-30 1998-01-27 Texas Instruments Address generator employing selective merge of two independent addresses
JPH07253922A (ja) * 1994-03-14 1995-10-03 Texas Instr Japan Ltd アドレス生成回路
US6055619A (en) * 1997-02-07 2000-04-25 Cirrus Logic, Inc. Circuits, system, and methods for processing multiple data streams
US6259957B1 (en) 1997-04-04 2001-07-10 Cirrus Logic, Inc. Circuits and methods for implementing audio Codecs and systems using the same
JP4115576B2 (ja) * 1998-03-04 2008-07-09 富士通株式会社 マルチプロセッサシステム
US6463081B1 (en) * 1998-04-07 2002-10-08 United Microelectronics Corp. Method and apparatus for fast rotation
US6782447B2 (en) 1999-12-17 2004-08-24 Koninklijke Philips Electronics N.V. Circular address register
US7114023B2 (en) * 2003-08-29 2006-09-26 Intel Corporation Non-sequential access pattern based address generator
GB2484458A (en) 2010-10-04 2012-04-18 Thorn Security Commissioning detector units of an alarm system by means of a remote infrared based communication tool

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4202035A (en) * 1977-11-25 1980-05-06 Mcdonnell Douglas Corporation Modulo addressing apparatus for use in a microprocessor
DE2849382C2 (de) * 1978-11-14 1984-04-12 Raytheon Co., 02173 Lexington, Mass. Adressiervorrichtung für eine elektrische Recheneinrichtung
US4521858A (en) * 1980-05-20 1985-06-04 Technology Marketing, Inc. Flexible addressing and sequencing system for operand memory and control store using dedicated micro-address registers loaded solely from alu
US4935867A (en) * 1986-03-04 1990-06-19 Advanced Micro Devices, Inc. Signal processor memory management unit with indirect addressing using selectable offsets and modulo values for indexed address calculations
US4833602A (en) * 1987-06-29 1989-05-23 International Business Machines Corporation Signal generator using modulo means
US5032986A (en) * 1987-07-28 1991-07-16 Texas Instruments Incorporated Data processing device with parallel circular addressing hardware
US4908748A (en) * 1987-07-28 1990-03-13 Texas Instruments Incorporated Data processing device with parallel circular addressing hardware

Also Published As

Publication number Publication date
CA2051559C (fr) 2000-08-22
CA2051559A1 (fr) 1992-03-20
FR2666916B1 (ja) 1994-08-19
EP0476592A3 (en) 1992-08-05
JPH04283834A (ja) 1992-10-08
FR2666916A1 (fr) 1992-03-20
EP0476592A2 (fr) 1992-03-25
US5355462A (en) 1994-10-11

Similar Documents

Publication Publication Date Title
US4097920A (en) Hardware control for repeating program loops in electronic computers
US4038643A (en) Microprogramming control system
US4722068A (en) Double precision multiplier
US5896529A (en) Branch prediction based on correlation between sets of bunches of branch instructions
US3760369A (en) Distributed microprogram control in an information handling system
KR950012256A (ko) 벡터 데이타 처리용 컴퓨터 시스템 및 그 방법
JP3032340B2 (ja) プロセッサのデータメモリ用アドレスジェネレータ
US3325785A (en) Efficient utilization of control storage and access controls therefor
JPH053032B2 (ja)
US6073228A (en) Modulo address generator for generating an updated address
US4757444A (en) Vector processor capable of performing iterative processing
US6047364A (en) True modulo addressing generator
EP0180157A2 (en) Information processing unit
US5602767A (en) Galois field polynomial multiply/divide circuit and a digital signal processor incorporating same
US4849926A (en) Data processing circuit for calculating either a total sum or a total product of a series of data at a high speed
US20030182343A1 (en) Fast multiplication circuits
EP0936537B1 (en) Cyclic redundancy check in a computer system
US5065353A (en) Adder control method and adder control circuit
JPH08329038A (ja) データ処理装置
US6363469B1 (en) Address generation apparatus
US5134694A (en) Method and device for the processing of address words
JP2582444B2 (ja) ×2▲上n▼演算回路
EP0107447B1 (en) Computer data distributor
JP3078138B2 (ja) 可変長コード生成装置
EP0867804A2 (en) Triangular addressing