JPH0619702A - マイクロコンピュータ演算器 - Google Patents
マイクロコンピュータ演算器Info
- Publication number
- JPH0619702A JPH0619702A JP4195982A JP19598292A JPH0619702A JP H0619702 A JPH0619702 A JP H0619702A JP 4195982 A JP4195982 A JP 4195982A JP 19598292 A JP19598292 A JP 19598292A JP H0619702 A JPH0619702 A JP H0619702A
- Authority
- JP
- Japan
- Prior art keywords
- arithmetic
- address
- register
- unit
- word length
- 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.)
- Pending
Links
Landscapes
- Executing Machine-Instructions (AREA)
Abstract
(57)【要約】
【目的】 マイクロコンピュータ演算器における算術論
理演算及びアドレス演算等の処理時間を短縮し、かつレ
ジスタを削減することを可能とする。 【構成】 主にアドレスの演算を行う少なくとも2つの
独立なアドレス演算器12,13と、少なくとも1つの
算術論理演算器10と、アドレス演算器と算術論理演算
器にそれぞれ接続されるレジスタファイル11とを有す
る。このレジスタファイル11はそれぞれの演算器に対
する入力、出力データの語長を選択的に設定できるよう
に、所要の語長以上のビット長を有するレジスタ若しく
はレジスタペアで構成する。
理演算及びアドレス演算等の処理時間を短縮し、かつレ
ジスタを削減することを可能とする。 【構成】 主にアドレスの演算を行う少なくとも2つの
独立なアドレス演算器12,13と、少なくとも1つの
算術論理演算器10と、アドレス演算器と算術論理演算
器にそれぞれ接続されるレジスタファイル11とを有す
る。このレジスタファイル11はそれぞれの演算器に対
する入力、出力データの語長を選択的に設定できるよう
に、所要の語長以上のビット長を有するレジスタ若しく
はレジスタペアで構成する。
Description
【0001】
【産業上の利用分野】本発明は、マイクロコンピュータ
に関し、特に複数の語長を演算する複数の演算器を有す
るマイクロコンピュータに関する。
に関し、特に複数の語長を演算する複数の演算器を有す
るマイクロコンピュータに関する。
【0002】
【従来の技術】従来この種のマイクロコンピュータは、
データの演算用の算術論理演算器と、アドレス演算用の
アドレス演算器を有している。特に、アトレス演算器
は、算術論理演算器の2つの入力データをメモリから転
送するために、少なくとも2つのアドレスを発生する事
ができるアドレス演算器を搭載している。
データの演算用の算術論理演算器と、アドレス演算用の
アドレス演算器を有している。特に、アトレス演算器
は、算術論理演算器の2つの入力データをメモリから転
送するために、少なくとも2つのアドレスを発生する事
ができるアドレス演算器を搭載している。
【0003】従来例を図3に示す。この例では1つの算
術論理演算器10と、レジスタファイル11と、2つの
独立したアドレス演算器12,13と、アドレス演算レ
ジスタファイル14とを有している。前記アドレス演算
レジスタファイル14は、2つのアドレス演算器のため
の1語長のレジスタdp0,dp1,dp2,dp3と
dn0,dn1,dn2,dn3の8本のレジスタを有
する。又、レジスタファイル11は、算術論理演算器の
為の1語長の8本のレジスタを有する。このレジスタ
は、r0Hとr0L,r1Hとr1L,r2Hとr2
L,r3Hとr3Lで2語長のレジスタペア構成を取っ
ており、算術演算器の演算の種類によって選択的に語長
を決定する事ができる。
術論理演算器10と、レジスタファイル11と、2つの
独立したアドレス演算器12,13と、アドレス演算レ
ジスタファイル14とを有している。前記アドレス演算
レジスタファイル14は、2つのアドレス演算器のため
の1語長のレジスタdp0,dp1,dp2,dp3と
dn0,dn1,dn2,dn3の8本のレジスタを有
する。又、レジスタファイル11は、算術論理演算器の
為の1語長の8本のレジスタを有する。このレジスタ
は、r0Hとr0L,r1Hとr1L,r2Hとr2
L,r3Hとr3Lで2語長のレジスタペア構成を取っ
ており、算術演算器の演算の種類によって選択的に語長
を決定する事ができる。
【0004】そして、算術論理演算器10とレジスタフ
ァイル11とはバス7〜9で相互に接続される。又、ア
ドレス演算器12,13とアドレス演算レジスタファイ
ル14とはバス1〜6で相互に接続される。更に、前記
各レジスタファイル11と14とはレジスタ間転送用バ
ス15で相互に接続されている。
ァイル11とはバス7〜9で相互に接続される。又、ア
ドレス演算器12,13とアドレス演算レジスタファイ
ル14とはバス1〜6で相互に接続される。更に、前記
各レジスタファイル11と14とはレジスタ間転送用バ
ス15で相互に接続されている。
【0005】この構成によれば、算術論理演算器10の
出力結果はレジスタファイル11に格納される。またア
ドレス演算器12,13の入出力はレジスタファイル1
4に限られている。そのため2つのレジスタファイル1
1と14のデータを転送して、算術論理演算器の演算結
果をアドレス演算に使えるようにするため、あるいはそ
の反対の目的のためにレジスタ転送用バス15が使用さ
れる。このレジスタ転送用バス15は1語長のビット幅
を持ち、レジスタファイル11と14の内のレジスタ全
ての間での転送が可能になっている。したがって、算術
論理演算器10での演算結果をアドレス演算器12,1
3でのアドレス演算に用いたい場合は、算術論理演算器
10の出力結果を一度レジスタファイル11に出力した
後、命令によってレジスタファイル11からレジスタフ
ァイル14にデータを転送し、その後アドレス演算器1
2,13においてアドレス演算を行うことになる。
出力結果はレジスタファイル11に格納される。またア
ドレス演算器12,13の入出力はレジスタファイル1
4に限られている。そのため2つのレジスタファイル1
1と14のデータを転送して、算術論理演算器の演算結
果をアドレス演算に使えるようにするため、あるいはそ
の反対の目的のためにレジスタ転送用バス15が使用さ
れる。このレジスタ転送用バス15は1語長のビット幅
を持ち、レジスタファイル11と14の内のレジスタ全
ての間での転送が可能になっている。したがって、算術
論理演算器10での演算結果をアドレス演算器12,1
3でのアドレス演算に用いたい場合は、算術論理演算器
10の出力結果を一度レジスタファイル11に出力した
後、命令によってレジスタファイル11からレジスタフ
ァイル14にデータを転送し、その後アドレス演算器1
2,13においてアドレス演算を行うことになる。
【0006】
【発明が解決しようとする課題】上述した従来の構成で
は、算術論理演算器10が使用するレジスタ11と、ア
ドレス演算器12,13が使用するレジスタ14の種類
が異なる上に、算術論理演算器10での演算結果をアド
レスとして使用するときにはレジスタ転送バス15を通
してデータの転送を行わねばならず、処理時間の増大と
プログラム上の煩雑さを招き、しかも一時的に同一デー
タを保持する必要がある事から、余分なレジスタを必要
とし、ハードウェア上の資源が無駄になるという問題が
ある。本発明の目的は、処理時間を短縮し、かつレジス
タを削減することができるマイクロコンピュータ演算器
を提供することにある。
は、算術論理演算器10が使用するレジスタ11と、ア
ドレス演算器12,13が使用するレジスタ14の種類
が異なる上に、算術論理演算器10での演算結果をアド
レスとして使用するときにはレジスタ転送バス15を通
してデータの転送を行わねばならず、処理時間の増大と
プログラム上の煩雑さを招き、しかも一時的に同一デー
タを保持する必要がある事から、余分なレジスタを必要
とし、ハードウェア上の資源が無駄になるという問題が
ある。本発明の目的は、処理時間を短縮し、かつレジス
タを削減することができるマイクロコンピュータ演算器
を提供することにある。
【0007】
【課題を解決するための手段】本発明は、主にアドレス
の演算を行う少なくとも2つの独立なアドレス演算器
と、少なくとも1つの算術論理演算器と、アドレス演算
器と算術論理演算器にそれぞれ接続されるレジスタファ
イルとを有する。このレジスタファイルは、少なくとも
2組の、少なくとも2つの1語長レジスタとしても使用
する事のできる2語長以上のビット長を有するレジスタ
若しくはレジスタペアを有し、算術論理演算器に対する
入力として少なくとも2つ以上のレジスタを語長を選択
的に選んで設定でき、かつ出力として少なくとも1つ以
上のレジスタを語長を選択的に選んで設定でき、一方ア
ドレス演算器に対する入力として、少なくとも2つ以上
のレジスタを語長を選択的に選んで設定でき、かつ出力
として少なくとも1つ以上のレジスタを語長を選択的に
選んで設定できる。
の演算を行う少なくとも2つの独立なアドレス演算器
と、少なくとも1つの算術論理演算器と、アドレス演算
器と算術論理演算器にそれぞれ接続されるレジスタファ
イルとを有する。このレジスタファイルは、少なくとも
2組の、少なくとも2つの1語長レジスタとしても使用
する事のできる2語長以上のビット長を有するレジスタ
若しくはレジスタペアを有し、算術論理演算器に対する
入力として少なくとも2つ以上のレジスタを語長を選択
的に選んで設定でき、かつ出力として少なくとも1つ以
上のレジスタを語長を選択的に選んで設定でき、一方ア
ドレス演算器に対する入力として、少なくとも2つ以上
のレジスタを語長を選択的に選んで設定でき、かつ出力
として少なくとも1つ以上のレジスタを語長を選択的に
選んで設定できる。
【0008】
【実施例】次に、本発明について図面を参照して説明す
る。図1は本発明の第1実施例のブロック図である。1
語長または2語長のデータをそれぞれの入出力に独立に
選択的に設定できる算術論理演算器10と、1語長のデ
ータを演算する2つの独立なアドレス演算器12,13
と、それぞれ2つで2語長のレジスタペアとして使用す
る事のできる4つの1語長レジスタファイル11で構成
される。そして、このレジスタファイル11に対し、バ
ス1〜6を用いてアドレス演算器12,13を相互接続
し、かつバス7〜9を用いて算術論理演算器10を相互
接続している。
る。図1は本発明の第1実施例のブロック図である。1
語長または2語長のデータをそれぞれの入出力に独立に
選択的に設定できる算術論理演算器10と、1語長のデ
ータを演算する2つの独立なアドレス演算器12,13
と、それぞれ2つで2語長のレジスタペアとして使用す
る事のできる4つの1語長レジスタファイル11で構成
される。そして、このレジスタファイル11に対し、バ
ス1〜6を用いてアドレス演算器12,13を相互接続
し、かつバス7〜9を用いて算術論理演算器10を相互
接続している。
【0009】第1のアドレス演算器12は、1語長の2
つの入力と、同じく1語長の1つの出力を有しており、
これに1語長のバス1と第1のアドレス演算器の第1の
入力が接続され、1語長のバス2と第1のアドレス演算
器の第2の入力が接続されている。また、この第1のア
ドレス演算器12の出力は1語長のバス5に接続されて
いる。また、第2のアドレス演算器13は、1語長の2
つの入力と、同じく1語長の1つの出力を有しており、
これに1語長のバス3と第2のアドレス演算器の第1の
入力が接続され、1語長のバス4と第2のアドレス演算
器の第2の入力が接続されている。また、この第2のア
ドレス演算器の出力は、1語長のバス6に接続されてい
る。
つの入力と、同じく1語長の1つの出力を有しており、
これに1語長のバス1と第1のアドレス演算器の第1の
入力が接続され、1語長のバス2と第1のアドレス演算
器の第2の入力が接続されている。また、この第1のア
ドレス演算器12の出力は1語長のバス5に接続されて
いる。また、第2のアドレス演算器13は、1語長の2
つの入力と、同じく1語長の1つの出力を有しており、
これに1語長のバス3と第2のアドレス演算器の第1の
入力が接続され、1語長のバス4と第2のアドレス演算
器の第2の入力が接続されている。また、この第2のア
ドレス演算器の出力は、1語長のバス6に接続されてい
る。
【0010】算術論理演算器10は1語長または2語長
のデータをそれぞれ独立に選択的に入力する事のできる
2つの入力と、1語長または2語長のデータを選択的に
出力する事のできる1つの入力とを有しており、これに
2語長のバス7と算術演算器の第1の入力が接続され、
同じく2語長のバス8と算術演算器の第2の入力が接続
されている。また、この算術演算器の出力は、2語長の
バス9に接続されている。
のデータをそれぞれ独立に選択的に入力する事のできる
2つの入力と、1語長または2語長のデータを選択的に
出力する事のできる1つの入力とを有しており、これに
2語長のバス7と算術演算器の第1の入力が接続され、
同じく2語長のバス8と算術演算器の第2の入力が接続
されている。また、この算術演算器の出力は、2語長の
バス9に接続されている。
【0011】レジスタファイル11は4つの1語長のレ
ジスタr0H,r0L,r1H,r1Lよりなり、それ
ぞれr0Hレジスタとr0Lレジスタ、r1Hレジスタ
とr1Lレジスタは2語長のレジスタペアr0とr1と
して操作する事ができる。r0Hとr1Lまたはr0H
とr1H等のほかの組み合わせがレジスタペアとして操
作可能であるか否かについては、どちらでもかまわない
が、本実施例の中では不可能であるものとする。
ジスタr0H,r0L,r1H,r1Lよりなり、それ
ぞれr0Hレジスタとr0Lレジスタ、r1Hレジスタ
とr1Lレジスタは2語長のレジスタペアr0とr1と
して操作する事ができる。r0Hとr1Lまたはr0H
とr1H等のほかの組み合わせがレジスタペアとして操
作可能であるか否かについては、どちらでもかまわない
が、本実施例の中では不可能であるものとする。
【0012】1語長のバス1にはr0Hまたはr1Hが
選択的に出力可能であり、1語長のバス2にはr0Lま
たはr1Lが選択的に出力可能である。また、1語長の
バス3にはr0Hまたはr1Hが選択的に出力可能であ
り、1語長のバス4にはr0Lまたはr1Lが選択的に
出力可能である。2語長のバス7に対して、上位1語長
にはr0Hまたはr1Hが選択的に出力可能であり、下
位1語長にはr0Lまたはr1Lが選択的に出力可能で
ある。2語長のバス9に関して、上位1語長からr0H
またはr1Hに対して選択的に入力可能であり、下位1
語長からはr0Lまたはr1Lに対して選択的に入力可
能である。
選択的に出力可能であり、1語長のバス2にはr0Lま
たはr1Lが選択的に出力可能である。また、1語長の
バス3にはr0Hまたはr1Hが選択的に出力可能であ
り、1語長のバス4にはr0Lまたはr1Lが選択的に
出力可能である。2語長のバス7に対して、上位1語長
にはr0Hまたはr1Hが選択的に出力可能であり、下
位1語長にはr0Lまたはr1Lが選択的に出力可能で
ある。2語長のバス9に関して、上位1語長からr0H
またはr1Hに対して選択的に入力可能であり、下位1
語長からはr0Lまたはr1Lに対して選択的に入力可
能である。
【0013】1語長のバス5から、r0Hまたはr1H
に選択的に入力可能であり、1語長のバス6から、r0
Hまたはr1Hに選択的に入力可能である。ただし、2
語長のバスに対して必ず2語長のデータを出力する必要
性はなく、同様に2語長のバスから必ず2語長のデータ
を入力する必要はなく、1語長のレジスタに対してのみ
書き込みを行ってもかまわない。また、ここではバス
5,6からはr0Hまたはr1Hに選択的に入力可能で
あるとして説明を行っているが、r0Lおよびr1Lに
も選択的に入力可能であってもかまわない。
に選択的に入力可能であり、1語長のバス6から、r0
Hまたはr1Hに選択的に入力可能である。ただし、2
語長のバスに対して必ず2語長のデータを出力する必要
性はなく、同様に2語長のバスから必ず2語長のデータ
を入力する必要はなく、1語長のレジスタに対してのみ
書き込みを行ってもかまわない。また、ここではバス
5,6からはr0Hまたはr1Hに選択的に入力可能で
あるとして説明を行っているが、r0Lおよびr1Lに
も選択的に入力可能であってもかまわない。
【0014】この構成によれば、1つの算術論理演算器
10と、2つのアドレス演算器12,13とは同期的に
動作し、入力データを読み込んだ次のクロックサイクル
で書き込みを行う。1つの算術論理演算器10と2つの
アドレス演算器12,13がレジスタファイル11より
独立にデータを取り込み、独立にデータを書き込む事が
でき、算術論理演算器10、第1のアドレス演算器1
2、第2のアドレス演算器13の出力結果を次のサイク
ルで算術論理演算器10、第1のアドレス演算器12、
第2のアドレス演算器13の入力として演算する事が可
能となり、データの転送などを行う必要がなく多くのデ
ータの演算の組み合わせが可能となる。
10と、2つのアドレス演算器12,13とは同期的に
動作し、入力データを読み込んだ次のクロックサイクル
で書き込みを行う。1つの算術論理演算器10と2つの
アドレス演算器12,13がレジスタファイル11より
独立にデータを取り込み、独立にデータを書き込む事が
でき、算術論理演算器10、第1のアドレス演算器1
2、第2のアドレス演算器13の出力結果を次のサイク
ルで算術論理演算器10、第1のアドレス演算器12、
第2のアドレス演算器13の入力として演算する事が可
能となり、データの転送などを行う必要がなく多くのデ
ータの演算の組み合わせが可能となる。
【0015】図2は本発明の第2実施例のブロック図で
あり、第1実施例と等価な部分には同一符号を付してあ
る。第1実施例ではレジスタファイル11が1語長と2
語長の組み合わせしか行えなかったのに対して、この第
2実施例ではレジスタファイル11に 1/2語長のレジス
タを加え、それぞれ 0.5/1/1.5/2/2.5語長のデータを扱
えるようにしたものである。本実施例では付加するレジ
スタを 1/2語長としたが、任意ビット長にする事が可能
である。また、レジスタ本数も最大4本の 2.5語長のレ
ジスタペアに増やしてある。これにともない、バス7,
8,9が 2.5語長のバスとなり上位 0.5語長はr0e,
r1e,r2e、r3eに対する入出力を行う。
あり、第1実施例と等価な部分には同一符号を付してあ
る。第1実施例ではレジスタファイル11が1語長と2
語長の組み合わせしか行えなかったのに対して、この第
2実施例ではレジスタファイル11に 1/2語長のレジス
タを加え、それぞれ 0.5/1/1.5/2/2.5語長のデータを扱
えるようにしたものである。本実施例では付加するレジ
スタを 1/2語長としたが、任意ビット長にする事が可能
である。また、レジスタ本数も最大4本の 2.5語長のレ
ジスタペアに増やしてある。これにともない、バス7,
8,9が 2.5語長のバスとなり上位 0.5語長はr0e,
r1e,r2e、r3eに対する入出力を行う。
【0016】なお、種々のベンチマークの結果から、こ
の種のマイクロコンピュータに必要なレジスタの本数
は、3つの演算器に対しては最低4本が必要であり、性
能を考慮するならば、少なくとも8本は必要であると考
えられており、本数の増加や、ビット長の最適設定は、
演算器の種類と数によって決められるべきものである。
の種のマイクロコンピュータに必要なレジスタの本数
は、3つの演算器に対しては最低4本が必要であり、性
能を考慮するならば、少なくとも8本は必要であると考
えられており、本数の増加や、ビット長の最適設定は、
演算器の種類と数によって決められるべきものである。
【0017】
【発明の効果】以上説明したように本発明は、算術論理
演算器とアドレス演算器とでレジスタを共用しているの
で、算術論理演算器での演算結果をアドレスとして使用
するとき内部バスなどを通してデータの転送を行う必要
がなく、処理時間を短縮し、ソフトウェア上も単純にな
り、ハードウェア資源を効率的に利用する事ができると
いう効果を有する。
演算器とアドレス演算器とでレジスタを共用しているの
で、算術論理演算器での演算結果をアドレスとして使用
するとき内部バスなどを通してデータの転送を行う必要
がなく、処理時間を短縮し、ソフトウェア上も単純にな
り、ハードウェア資源を効率的に利用する事ができると
いう効果を有する。
【図1】本発明のマイクロコンピュータ演算器の第1実
施例のブロック図である。
施例のブロック図である。
【図2】本発明の第2実施例のブロック図である。
【図3】従来のマイクロコンピュータ演算器のブロック
図である。
図である。
【符号の説明】 1〜6 アドレス演算器用バス 7〜9 算術論理演算器用バス 10 算術論理演算器 11 レジスタファイル 12,13 アドレス演算器 14 アドレス演算用レジスタファイル
Claims (1)
- 【請求項1】 主にアドレスの演算を行う少なくとも2
つの独立なアドレス演算器と、少なくとも1つの算術論
理演算器と、前記アドレス演算器と算術論理演算器にそ
れぞれ接続されるレジスタファイルとを有し、このレジ
スタファイルは、少なくとも2組の、少なくとも2つの
1語長レジスタとしても使用する事のできる2語長以上
のビット長を有するレジスタ若しくはレジスタペアを有
し、算術論理演算器に対する入力として少なくとも2つ
以上のレジスタを語長を選択的に選んで設定でき、かつ
出力として少なくとも1つ以上のレジスタを語長を選択
的に選んで設定でき、一方アドレス演算器に対する入力
として、少なくとも2つ以上のレジスタを語長を選択的
に選んで設定でき、かつ出力として少なくとも1つ以上
のレジスタを語長を選択的に選んで設定できる事を特徴
とするマイクロコンピュータ演算器。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP4195982A JPH0619702A (ja) | 1992-06-30 | 1992-06-30 | マイクロコンピュータ演算器 |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP4195982A JPH0619702A (ja) | 1992-06-30 | 1992-06-30 | マイクロコンピュータ演算器 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| JPH0619702A true JPH0619702A (ja) | 1994-01-28 |
Family
ID=16350245
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP4195982A Pending JPH0619702A (ja) | 1992-06-30 | 1992-06-30 | マイクロコンピュータ演算器 |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JPH0619702A (ja) |
-
1992
- 1992-06-30 JP JP4195982A patent/JPH0619702A/ja active Pending
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US4149242A (en) | Data interface apparatus for multiple sequential processors | |
| US4229801A (en) | Floating point processor having concurrent exponent/mantissa operation | |
| JPH05173837A (ja) | オペランド内の情報のスタティックおよびダイナミック・マスキングを兼ね備えるデータ処理システム | |
| US4835684A (en) | Microcomputer capable of transferring data from one location to another within a memory without an intermediary data bus | |
| JPS58501560A (ja) | マイクロプロセツサ | |
| JPS6042966B2 (ja) | デ−タ処理システム | |
| US7376777B2 (en) | Performing an N-bit write access to an M×N-bit-only peripheral | |
| US7613905B2 (en) | Partial register forwarding for CPUs with unequal delay functional units | |
| US4305138A (en) | Stack memory device | |
| KR910001708B1 (ko) | 중앙처리장치 | |
| JPH0227696B2 (ja) | Johoshorisochi | |
| US3387273A (en) | High speed serial processor | |
| JP2504535B2 (ja) | バスユニットの構成方法 | |
| JPS6033644A (ja) | メモリバンク切換方法および装置 | |
| JP2969825B2 (ja) | デュアルポートメモリ | |
| JPH0418634A (ja) | データ処理装置 | |
| JPH06301641A (ja) | 電子計算機 | |
| JPS61161560A (ja) | メモリ装置 | |
| JPH033047A (ja) | 演算機能付きメモリ | |
| JPH0784963A (ja) | Cpuを有する半導体集積回路 | |
| JPH1074190A (ja) | 並列プロセッサ | |
| JPH0719224B2 (ja) | 演算処理装置 | |
| US10180847B2 (en) | Circuitry for configuring entities | |
| JPS6285339A (ja) | マイクロコンピユ−タ | |
| JPH0823849B2 (ja) | メモリ読出レジスタ制御装置 |