JPH04333153A - データ処理装置 - Google Patents

データ処理装置

Info

Publication number
JPH04333153A
JPH04333153A JP3132042A JP13204291A JPH04333153A JP H04333153 A JPH04333153 A JP H04333153A JP 3132042 A JP3132042 A JP 3132042A JP 13204291 A JP13204291 A JP 13204291A JP H04333153 A JPH04333153 A JP H04333153A
Authority
JP
Japan
Prior art keywords
data
address
register
bit
registers
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
JP3132042A
Other languages
English (en)
Other versions
JP3486630B2 (ja
Inventor
Naomiki Mitsuishi
直幹 三ツ石
Shiro Baba
馬場 志朗
Hiromi Nagayama
ひろみ 永山
Tsutomu Hayashi
努 林
Yukihide Hayakawa
早川 幸秀
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.)
Hitachi Ltd
Original Assignee
Hitachi 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 Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP13204291A priority Critical patent/JP3486630B2/ja
Priority to KR1019920007701A priority patent/KR100272622B1/ko
Publication of JPH04333153A publication Critical patent/JPH04333153A/ja
Priority to US08/583,763 priority patent/US5687344A/en
Priority to US08/582,379 priority patent/US5666510A/en
Priority to US08/607,568 priority patent/US5771363A/en
Application granted granted Critical
Publication of JP3486630B2 publication Critical patent/JP3486630B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Landscapes

  • Microcomputers (AREA)
  • Memory System (AREA)
  • Advance Control (AREA)
  • Executing Machine-Instructions (AREA)

Abstract

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

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、データ処理装置にかか
り、例えば、シングルチップマイクロコンピュータの中
央処理装置に利用して有効な技術に関するものである。
【0002】
【従来の技術】シングルチップマイクロコンピュータは
、それに含まれる中央処理装置が主として扱うデータ長
によって4ビット、8ビット、16ビットマイクロコン
ピュータなどに区別される。現在、これらの中では8ビ
ットシングルチップマイクロコンピュータが最も多く使
用され、機器組込制御用として用いられている。このよ
うな8ビットシングルチップマイクロコンピュータは、
株式会社日立製作所平成元年6月発行の『H8/330
  HD6473308  HD6433308  ハ
ードウェアマニュアル』などにより公知であるのでその
詳細な説明は省略するが、8ビットシングルチップマイ
クロコンピュータの中央処理装置(以下8ビットCPU
とも記す)は、主として扱うデータ長が8ビットであり
、このため、8ビットCPUは8ビット長のレジスタま
たはアキュムレータと、8ビットレジスタの2倍長であ
る16ビットレジスタを有する。これらの8ビットCP
Uは、特に制限はされないものの、データ処理には主と
して8ビットレジスタを使用し、メモリを参照したりす
るためのアドレスレジスタとしては16ビットレジスタ
を使用する。このような16ビットレジスタは、インデ
ックスレジスタ、スタックポインタ、プログラムカウン
タなどと呼ばれる場合がある。アドレスレジスタが16
ビット長である場合、CPUが参照できるメモリは65
536(=216)バイト(以下64kバイトとも記す
)に限定される。しかしながら、8ビットシングルチッ
プマイクロコンピュータが用いられる機器組込制御の応
用では、機器の高性能化によって大容量のプログラムあ
るいはデータを扱うことが要求されている。
【0003】これに対し、CPUに8ビットのページレ
ジスタを付加し、16ビットレジスタと組合せてアドレ
スを生成することにより、参照できるメモリを1677
7216(=224)バイト(以下16Mバイトとも記
す)としたシングルチップマイクロコンピュータの例と
して株式会社日立製作所昭和63年12月発行『H8/
532  HD6475328  HD6435328
  ハードウェアマニュアル』に記載のものがある。こ
のようなページレジスタを利用してメモリなどを参照す
るための構成は、ページレジスタとアドレスレジスタと
を全く独立させて、演算器などのハードウェアの構成を
簡素化しているが、その反面、ページレジスタとアドレ
スレジスタとの間にキャリまたはボローの伝播が行われ
ず、プログラムあるいはコンパイラを作成する場合には
、一群のプログラムあるいはデータがページ境界を越え
ない様に常に注意しなければならない。例えば、上記の
例で、命令を0番地から実行すると、当初、プログラム
カウンタはH’0000(H’は16進数を示す),こ
れに対応するページレジスタ(以下コードページレジス
タとも記す)はH’00である。分岐命令を使用せずに
演算命令などを実行し続け、65535(H’FFFF
)番地に達し、次の命令を実行しようとした場合、プロ
グラムカウンタはH’FFFF→H’0000となって
オーバフローするが、この時のキャリはコードページレ
ジスタに伝播されないために、次の命令は0番地に戻っ
てしまう。このため、プログラムは64kバイトを越え
ないように分割して作成し、分割したプログラムをそれ
ぞれ別のページに割当て、あるページに存在するプログ
ラムから別のページに存在するプログラムに実行を移す
場合はページ間分岐命令を使用する必要がある。すなわ
ち、プログラム中で分岐命令を使用する場合は、分岐先
が同一ページ内に存在するか、別ページに存在するかを
意識してページ内分岐命令とページ間分岐命令を使い分
ける必要がある。データも同様に64kバイトを越えな
いように分割して管理する必要がある。このとき、いわ
ゆるポストインクリメントレジスタ間接モードなどの様
にメモリをアクセスする毎にアドレスレジスタの内容を
更新していく場合、上記同様にアドレスレジスタがオー
バフローしても対応するページレジスタ(以下データペ
ージレジスタとも記す)にキャリが伝播されない。また
、ディスプレースメント付レジスタ間接で、16ビット
のディスプレースメントを使用する場合、16ビットの
アドレスレジスタに16ビットのディスプレースメント
を加算し、キャリまたはボローが発生してもページレジ
スタには伝播せず、16ビットの加算結果とページレジ
スタが組み合わされてアドレスが生成される。すなわち
、ページレジスタH’00、アドレスレジスタH’FF
FF、ディスプレースメントH’4000の場合、結果
として得られるアドレスはH’003FFFとなる。し
たがって、ページレジスタを利用したアドレス拡張技術
においては、実質的に利用可能なアドレシングモードも
制限されてしまう。
【0004】これに対し、株式会社日立製作所昭和62
年9月発行『日立16ビットマイクロプロセッサ  H
D641016』などに記載されている16ビットCP
Uでは16Mバイトの連続したアドレス空間を使用でき
るものの、主としてデータ処理のために32ビットレジ
スタを有するなどCPU全体の機能が8ビットCPUに
対して格段に高く、これに比例して論理的な規模やチッ
プ占有面積といった物理的な規模が8ビットCPUに比
べて相当に大きくなり、このため、機器制御応用でシス
テム構成に必要なタイマなどの周辺機能を当該16ビッ
トCPUと共に1チップに内蔵できなかったり、充分な
記憶容量のメモリを内蔵できず、機器制御応用のための
所要のシステムをオンチップ化して所謂シングルチップ
マイクロコンピュータ化を実現することが難しくなると
いう問題が本発明者によって見い出された。
【0005】
【発明が解決しようとする課題】本発明の目的は、論理
的並びに物理的規模の増加を最小限にしつつ、連続的に
使用可能なアドレス空間を相対的に広げることができる
データ処理装置、例えば8ビットCPUを用いて64k
バイト以上のアドレス空間を連続的に使用できるデータ
処理装置を提供することにある。本発明の更に別の目的
は、命令の種類を相対的に極端に増やさず、連続する相
対的に広いアドレス空間を利用でき、しかも当該アドレ
ス空間の広さに見合うように相対的に豊富なアドレシン
グモードをサポートすることができるデー処理装置を提
供することにある。
【0006】本発明の前記並びにその他の目的と新規な
特徴は本明細書の記述及び添付図面から明らかになるで
あろう。
【0007】
【課題を解決するための手段】本願において開示される
発明のうち代表的なものの概要を簡単に説明すれば下記
の通りである。
【0008】すなわち、アドレスデータの保持には全体
が使用されデータの保持にはその一部分が使用される所
定ビット数のデータ保持手段を中央処理装置(CPU)
に設けるものであり、例えば、8ビットCPUに内蔵の
既存の16ビットレジスタにアドレス専用の拡張レジス
タを追加し、追加された拡張レジスタを含めた全体をア
ドレスデータとして一括把握して、メモリなどをアクセ
ス可能にするものである。このとき、アドレス演算は拡
張レジスタと対応レジスタとの双方を一単位として行わ
れ、アドレスデータを保持するとき斯るレジスタの更新
は前記拡張レジスタも一緒に行われる。即ち、拡張レジ
スタを含めた全体で一単位のデータとして把握して、ア
ドレス演算で発生するキャリーやボローが処理される。
【0009】前記データ保持手段の全体を利用したとき
と前記一部分を利用したときの機能の相違に鑑みれば、
データ処理装置の内外において、データ保持手段の全体
を一括するデータ転送制御と、前記データ保持手段の前
記一部分を一括するデータ転送制御との双方を可能にす
る。演算手段に対しても、前記演算手段の前記全体を利
用するアドレスデータに対する算術的演算(シフト演算
を含んでもよい)と、前記データ保持手段の一部分を利
用するデータに対する算術的並びに論理的な演算を行え
ればよい。このときのアドレス演算の効率化のためには
、演算手段は、前記データ保持手段の全体に対する算術
的な演算を、単位マシンサイクルで実行可能な演算ビッ
ト数を有するればよく、一括把握されるアドレスデータ
の演算で生ずるキャリーやボローの処理を別のサイクル
で行わなくてもよい。
【0010】後述するように前記データ保持手段の採用
によってリニアなアドレス空間が拡張されるが、これと
共にアドレシングモードを多様化するとき、その多様化
に応じてアドレシングモードと命令との組み合わせも必
然的に増大するが、このときその増大によって制御手段
の論理的並びに物理的規模の増大を極力抑え且つそのこ
とがデータ処理能力を著しく低下させないようにするに
は、前記データ保持手段の前記一部分に対する算術的並
びに論理的演算制御を、前記データ保持手段とデータ処
理装置外部との間では1つの命令で直接的には不可能に
することが得策である。このとき、周辺回路のコントロ
ールレジスタなどに対するビット操作に対しては1命令
で直接行ったほうがよい。
【0011】
【作用】上記した手段によれば、データ保持手段の全体
に対する利用はアドレスデータに限定され、アドレスデ
ータのビット数は、その他のデータの保持に利用される
当該データ保持手段の一部分のビット数に比べて拡張さ
れ、このことは、リニアに利用可能なアドレス空間を拡
張するように作用する。アドレス空間がリニアに拡張さ
れることは、ページレジスタによる従来のアドレス空間
拡張技術に比べて、種々のアドレス修飾を可能して、ア
ドレス空間の広さに見合うように相対的に豊富なアドレ
シングモードをサポートする。更にこのとき、前記デー
タ保持手段の全体の利用はアドレス生成に用途を限定し
ており、このことは、CPUの論理的並びに物理的な規
模の増大を抑制し、システム構成に必要な周辺機能やメ
モリなどのオンチップ化による1チップマイクロコンピ
ュータ化を容易に実現可能に作用する。
【0012】
【実施例】図1には本発明に係るマイクロコンピュータ
の一実施例であるシングルチップマイクロコンピュータ
が示される。
【0013】上記シングルチップマイクロコンピュータ
100は、全体の制御を司るCPU(中央処理装置)1
、CPU1の動作プログラムなどを保有するROM(リ
ードオンリメモリ)2、CPU1の作業領域並びにデー
タの一時記憶領域などとして利用されるRAM(ランダ
ムアクセスメモリ)3、タイマ4、シリアルコミュニケ
ーションインタフェース(SCI)5、クロックパルス
ジェネレータ68、及び、入出力ポート(IOP)61
乃至67などの機能ブロックから構成され、これらは内
部バス69で相互に接続されてなる。内部バスは特に制
限はされないものの、アドレスバス、データバス、コン
トロールバスを含む。斯るシングルチップマイクロコン
ピュータ100は公知の半導体集積回路製造技術によっ
てシリコン基板のような1つの半導体基板上に形成され
ている。
【0014】シングルチップマイクロコンピュータ10
0はクロックパルスジェネレータCPGの端子XTAL
,EXTALに接続される水晶発振子又は外部から入力
される外部クロックに基づいて生成される基準クロック
に同期して動作を行なう。この基準クロックの最小単位
をステートと呼ぶ。尚、図においてVss,Vccは電
源端子である。
【0015】前記CPU1にリセット信号RESが加え
られると、シングルチップマイクロコンピュータ100
はリセット状態になる。このリセット状態を解除すると
、CPU1は、スタートアドレスをリードして、このス
タートアドレスから命令のリードを開始するリセット例
外処理を行なう。前記スタートアドレスは、特に制限は
されないものの0番地に格納されているものとする。 この後、CPU1は、特に制限はされないものの、逐次
、ROM2から命令を読出して解読し、その解読結果に
基づいてデータの処理或いはRAM3、タイマ4、SC
I5、入出力ポート61乃至67などとデータの転送を
行なう。すなわち、CPU1は、入出力ポート61乃至
67などから入力されるデータ、あるいはSCI5など
から入力される指示を参照しつつ、ROM2に記憶され
ている命令に基づいて処理を行ない、その結果に従って
入出力ポート61〜7、タイマ4などを使用して外部に
信号を出力し、各種機器の制御を行なうものである。 特に制限はされないものの、上記ROM2、RAM3、
タイマ4などのリード/ライトは、バイト(例えば8ビ
ット)/ワード(例えば16ビット)のいずれも2ステ
ートで実行するものとする。
【0016】図2にはCPU1の内蔵レジスタの第1構
成例が示される。CPU1はそれぞれ16ビット長の8
本の汎用レジスタR0L,R0H〜R7L,R7Hと、
それぞれ8ビット長の8本の拡張レジスタとE0からE
7と、24ビット長のプログラムカウンタPCと、8ビ
ット長のコンディションコードレジスタCCRとを有し
ている。汎用レジスタR0L,R0H〜R7L,R7H
は、特に制限はされないものの、上位8ビットと下位8
ビットを独立させて8ビット長のデータを格納すること
も、上位・下位を連結して16ビット長のデータを格納
することもできる。
【0017】汎用レジスタR0L,R0H〜R7L,R
7Hをアドレスレジスタとして使用する場合は、汎用レ
ジスタが保有する16ビットをアドレスの下位16ビッ
トとし、対応する拡張レジスタが保有する8ビットをア
ドレスの上位8ビットとして、合計24ビットのアドレ
スを生成するものである。換言すれば、CPU1は最大
限24ビットのアドレスで規定される連続的なアドレス
空間を利用することができる。さらにこの24ビットの
アドレスを種々のモードで修飾することができるように
なっている。例えば、前記24ビットアドレスにディス
プレースメントを加算する、定数倍をする、あるいは他
のレジスタの内容を加算するといったことを行うことが
できる。この修飾を行なう場合、下位16ビットの計算
にて、キャリまたはボローが発生した場合には、上位8
ビットに桁上げまたは桁下げを行なう。この結果をアド
レスレジスタに保持させる場合には同時に上位8ビット
の結果も、対応する拡張レジスタに保持させる。
【0018】拡張レジスタE0〜E7はアドレスレジス
タとしての利用に専用化され、データレジスタとしては
使用できないようになっている。拡張レジスタE0〜E
7の操作は、特に制限はされないものの、アドレスデー
タを転送するために、拡張レジスタを汎用レジスタと組
合せてロード/ストアする場合と、拡張レジスタと汎用
レジスタとの間でデータ転送する場合に限定され、汎用
レジスタとは無関係に拡張レジスタに対して演算を行な
うことはできないようになっている。斯る制限は、CP
U1が実行すべき命令を解読して制御信号を生成する制
御部によって実現される。
【0019】プログラムカウンタPCは24ビットのカ
ウンタであり、CPU1が次に実行する命令のアドレス
を示している。コンディションコードレジスタCCRは
割込みマスクビット(I)と、キャリフラグ(C)、ゼ
ロフラグ(Z)、ネガティブフラグ(N)、オーバフロ
ーフラグ(V)を含んでいる。割込みマスクビットは1
のとき、CPU1を割込み禁止状態とし、0のとき、割
込み許可状態とする。その他のフラグは演算の結果など
を反映する。
【0020】図3には汎用レジスタR0L,R0H〜R
7L,R7Hと拡張レジスタE0〜E7のデータ構成例
が示される。CPU1が扱うバイトデータは、汎用レジ
スタの上位RiH(i=1,2,…,7)または下位R
iLに格納される。汎用レジスタの上位RiHを使用す
る場合、ビット15がデータの最上位ビット(MSB)
に、ビット8が最下位ビット(LSB)にそれぞれ対応
する。同様に、汎用レジスタの下位RiLを使用する場
合、ビット7が最上位ビットに、ビット0が最下位ビッ
トに対応する。ワードデータは汎用レジスタRiL及び
RiHに格納される。ビット15がデータの最上位ビッ
トに、ビット0が最下位ビットにそれぞれ対応する。ア
ドレスデータは拡張レジスタEiと汎用レジスタRiL
,RiHに格納される。拡張レジスタEiのビット7が
アドレスデータの最上位ビットに、汎用レジスタRiL
のビット0が最下位ビットにそれぞれ対応する。
【0021】CPU1は、これらの他に、1ビットデー
タ、あるいは2進化10進数データなどを扱うが、これ
らは本発明に直接は関係しないので詳細な説明は省略す
る。
【0022】図4にはRAM3,ROM2などのメモリ
のデータ構成例が示される。特に制限はされないものの
、メモリはバイト単位にアドレスが付けられている。 CPU1が扱うバイトデータは、メモリの各アドレスに
格納される。ワードデータはメモリの偶数アドレスと奇
数アドレスを連結して格納される。偶数アドレスのビッ
ト7がデータの最上位ビットに、奇数アドレスのビット
0が最下位ビットにそれぞれ対応する。アドレスデータ
は偶数アドレスから始まる4バイトのアドレスに格納さ
れる。先頭の偶数アドレスの1バイトは将来拡張用にシ
ステム上予約され、例えば利用が制限されている。次の
奇数アドレスのビット7がアドレスデータの最上位ビッ
トに、4バイトめの奇数アドレスのビット0が最下位ビ
ットにそれぞれ対応する。
【0023】図5及び図6にはCPU1のアドレッシン
グモードと実効アドレスの計算方法の一例が示される。
【0024】レジスタ間接モードでは命令コード中にレ
ジスタを指定する部分を含み、この命令コードで指定さ
れた汎用レジスタとこれに対応する拡張レジスタとが保
有する24ビットをアドレスとしてメモリ上のアドレス
を指定する。
【0025】ディスプレースメント付レジスタ間接モー
ドは、上記レジスタ間接モードと同様に得られた24ビ
ットのアドレスに、命令コード中に含まれるディスプレ
ースメントを加算した結果をアドレスとしてメモリ上の
アドレスを指定する。加算結果はアドレスの指定のみに
使用され、拡張レジスタEi及び汎用レジスタRiL,
RiHの内容には反映されない。特に制限はされないも
のの、ディスプレースメントは24ビットまたは16ビ
ットであり、16ビットディスプレースメントの場合は
加算の際に上位8ビットが符号拡張される。すなわち、
全24ビットのディスプレースメントの上位8ビットは
16ビットディスプレースメントのビット15と同じ値
であるとして加算が行われる。
【0026】ポストインクリメントレジスタ間接モード
は、前記レジスタ間接と同様に得られた24ビットのア
ドレスでメモリ上のアドレスを指定する。その後、この
アドレスに1または2または4を加算し、その加算結果
が拡張レジスタEi及び汎用レジスタRiH,RiLに
格納される。メモリ上のバイトデータを指定する場合は
1が、ワードデータを指定する場合は2が、アドレスデ
ータを指定する場合は4が、それぞれ加算される。
【0027】プリデクリメントレジスタ間接モードは、
前記レジスタ間接と同様に得られた24ビットのアドレ
スから1または2または4を減算して得られる24ビッ
トのアドレスでメモリ上のアドレスを指定する。その後
、その減算結果が拡張レジスタEi及び汎用レジスタR
iH,RiLに格納される。メモリ上のバイトデータを
指定する場合は1が、ワードデータを指定する場合は2
が、アドレスデータを指定する場合は4が、それぞれ減
算される。
【0028】プログラムカウンタ相対モードは、プログ
ラムカウンタPCが保有する24ビットのアドレスに命
令コード中に含まれるディスプレースメントを加算した
結果をアドレスとしてメモリ上のアドレスを指定する。 加算結果はプログラムカウンタPCに格納される。特に
制限はされないものの、ディスプレースメントは16ビ
ットまたは8ビットであり、加算されるディスプレース
メントはその上位8ビットまたは16ビットが符合拡張
される。すなわち、全24ビットのディスプレースメン
トの上位8ビットは16ビットディスプレースメントの
ビット15と、または上位16ビットは8ビットディス
プレースメントのビット7と同じ値であるとみなして加
算が行われる。プログラムカウンタ相対は分岐命令のみ
で使用される。
【0029】CPU1は、上記の他にイミディエイト、
レジスタ直接、絶対アドレスなどのアドレッシングモー
ドを実行するが、これらは本発明に直接は関係しないの
で詳細な説明は省略する。
【0030】図7にはCPU1の内部ブロックの一例が
示される。CPU1は主としてマイクロROMあるいは
PLA(Plogrammable  LogicAr
ray)で構成される制御部CONT、前記汎用レジス
タR0L,R0H〜R7L,R7H、拡張レジスタE0
〜E7、プログラムカウンタPC、コンディションコー
ドレジスタCCRを含む実行部EXEから構成される。
【0031】実行部EXEはさらに、テンポラリレジス
タTRL,TRH,TRE、算術論理演算器ALUL,
ALUH,ALUE、リードデータバッファRDBL,
RDBH,RDBE、ライトデータバッファWDBL,
WDBH,WDBE、及びアドレスバッファABL,A
BH,ABEを含み、これらが3本の内部バスA、B、
Cを介して接続されている。算術論理演算器ALUL,
ALUH,ALUEは、命令によって指定される各種演
算、プログラムカウンタの加算、実効アドレスの計算な
どに用いられる。リードデータバッファRDBL,RD
BH,RDBEはROM2、RAM3あるいは図示はさ
れない外部メモリなどからリードした命令やデータを一
時的に格納し、またライトデータバッファWDBL,W
DBH,WDBEは前記ROM2、RAM3あるいは外
部メモリなどにライトすべきデータを一時的に格納する
。これによってCPU1の内部動作とCPU1外部のリ
ード/ライト動作のタイミングを調整している。アドレ
スバッファABL,ABH,ABEはCPU1がリード
/ライトするアドレスを一時的に格納する。
【0032】特に制限はされないものの、上記実行部E
XE内の各ブロックは8ビットを単位としている。すな
わち、例えば、プログラムカウンタは8ビット単位で3
ブロックに分割されている。PCEがビット23〜16
、PCHがビット15〜8、PCLがビット7〜0に対
応する。汎用レジスタはR0H〜R7Hがビット15〜
8、R0L〜R7Lがビット7〜0に対応する。そして
それら汎用レジスタに対するビット23〜16が拡張レ
ジスタE0〜E7とされる。内部バスA,B,Cは、こ
れらのビット23〜16、15〜8、ビット7〜0に対
応して3本が並行して設けられている。その他に前記テ
ンポラリレジスタ・ALU・データバッファなども同様
に8ビットを単位に構成されている。これらの物理的な
配置は特に制限はされない。
【0033】図8乃至図11には図7のCPU1が処理
する代表的な命令や例外処理のフローチャートの一例が
示される。
【0034】リセット例外処理(図8)においては、C
PU1は0番地から始まる4バイトのアドレスに格納さ
れたスタートアドレスをリードする。なお、この4バイ
トの内、0番地の1バイトは、前記の通り将来拡張用に
予約されたものであり、無視される。CPU1は第1ス
テップSa1で、割込みマスクビットIを1にセットす
る。同時にCPU1内部でバスA上にデータ0を生成し
、これをアドレスバッファABL,ABH,ABE(以
下単にABとも記す)に転送するとともに、ALUL,
ALUH,ALUE(以下単にALUとも記す)で2を
加算する。加算結果はテンポラリレジスタTRL,TR
H,TRE(以下単にTRとも記す)に格納する。 第2ステップSa2で前記アドレスバッファABの内容
をアドレスとしてワードデータのリードを開始する。第
3ステップSa3ではリード動作を終了し、リードした
ワードデータをデータバッファRDBL,RDBH,R
DBE(以下単にRDBとも記す)に格納する。同時に
テンポラリレジスタTRの内容をバスAに出力し、アド
レスバッファABに転送する。第4ステップSa4で前
記アドレスバッファABの内容をアドレスとしてワード
データのリードを開始する。第5ステップSa5ではリ
ード動作を終了し、リードしたワードデータをデータバ
ッファRDBに格納する。この時、特に制限はされない
もののデータバッファRDBは、いわゆるファーストイ
ンファーストアウトとなっている。第6ステップSa6
では、第3ステップSa3及び第5ステップSa5でデ
ータバッファRDBに格納したデータの内24ビットを
スタートアドレスとしてバスAに出力し、アドレスバッ
ファABに転送するとともに、ALUで2を加算する。 加算結果はプログラムカウンタPCに格納する。なお、
第3ステップSa3でデータバッファRDBに格納され
たデータの上位8ビットは、前記の通り、無視される。 第7ステップSa7で前記アドレスバッファABの内容
をアドレスとしてプログラムの先頭命令のリードをワー
ドで開始する。第8ステップSa8ではリード動作を終
了し、リードしたワードデータをデータバッファRDB
に格納する。同時にプログラムカウンタPCの内容をバ
スAに出力し、アドレスバッファABに転送し、さらに
ALUで2を加算する。加算結果はプログラムカウンタ
PCに格納する。第9ステップSa9で前記アドレスバ
ッファABの内容をアドレスとしてプログラムの3バイ
トめ・4バイトめの命令のリードをワードで開始する。 さらに、第8ステップSa8でデータバッファRDBに
格納した命令を制御部に転送し、解読を開始する。次の
ステップからは、プログラムの先頭命令である、第9ス
テップSa9で解読を開始した命令に基づいた動作を開
始する。第9ステップSa9でリードを開始したワード
データはこの命令実行中にデータバッファRDBに格納
する。
【0035】イミディエイトデータをレジスタに転送す
る命令の処理フローが図9に示されており、例えば、デ
ータ34を汎用レジスタR0Lに転送する命令(MOV
.B#34,R0L)は、特に制限はされないものの、
命令コード中にイミディエイトデータ34を含み2バイ
トの命令長であるとする。本命令は、第1ステップSb
1では、直前に実行した命令または例外処理の最後のス
テップで開始したリード動作を終了し、リードしたワー
ドデータをデータバッファRDBに格納する。同時に、
プログラムカウンタPCの内容をバスAに出力し、アド
レスバッファABに転送し、さらにALUで2を加算す
る。加算結果はプログラムカウンタPCに格納する。第
2ステップSb2で、アドレスバッファABに格納され
た内容に基づいて、本命令から3バイトめ・4バイトめ
の命令のリードをワードで開始する。同時に、既にデー
タバッファRDBに格納してある本命令コード中に含ま
れるイミディエイトデータ34をバスAに出力し、AL
Uを通過し、ALUからバスCに出力してレジスタR0
Lに転送する。ALUを通過した時にデータを検査し、
コンディションコードレジスタのZ及びNフラグに反映
する。さらに、第1ステップSb1でデータバッファR
DBに格納した命令を制御部CONTに転送し、解読を
開始する。次のステップからは、次の命令である、第2
ステップSb2で解読を開始した命令に基づいた動作を
開始する。第2ステップSb2でリードを開始したワー
ドデータはこの命令実行中にデータバッファRDBに格
納する。
【0036】ディスプレースメント付レジスタ間接アド
レッシングモードでメモリの内容をレジスタ転送する命
令の処理フローが図10に示されており、例えば、レジ
スタR0(R0L,R0H)と拡張レジスタE0で示さ
れるアドレスに相対値1234を加えたアドレスからバ
イトデータを汎用レジスタR1Hに転送する命令{MO
V.B  @(1234,R0),R1H}は、特に制
限はされないものの、命令コード中にディスプレースメ
ント1234を含み4バイトの命令長であるとする。本
命令は、第1ステップSc1で、直前に実行した命令ま
たは例外処理の最後のステップで開始したリード動作を
終了し、リードしたワードデータ(本命例の第3・第4
バイト)をデータバッファRDBに格納する。同時にプ
ログラムカウンタPCの内容をバスAに出力し、アドレ
スバッファABに転送し、さらにALUで2を加算する
。 加算結果はプログラムカウンタPCに格納する。第2ス
テップSc2で、アドレスバッファABに格納された内
容に基づいて、本命令から3バイトめ・4バイトめの命
令である、次の命令のリードをワードで開始する。同時
に既にデータバッファRDBに格納してある本命令コー
ド中に含まれるディスプレースメント1234をバスB
に,汎用レジスタR0と拡張レジスタE0の内容をバス
Aに出力し、ALUでこれらの加算を行ない、ALUか
らバスCに出力してテンポラリレジスタTRに転送する
。加算に際してディスプレースメントは001234に
拡張される。第3ステップSc3でリード動作を終了し
、リードしたワードデータをデータバッファRDBに格
納する。同時にテンポラリレジスタTRの内容をバスA
に出力しアドレスバッファABに転送する。第4ステッ
プSc4で前記アドレスバッファABの内容をアドレス
としてデータのリードをバイトで開始する。第5ステッ
プSc5でリード動作を終了し、リードしたバイトデー
タをデータバッファRDBに格納する。前記同様にプロ
グラムカウンタPCの内容をアドレスバッファABに転
送し、2を加算する。第6ステップSc6で前記アドレ
スバッファABの内容をアドレスとしてデータのリード
をバイトで開始する。第5ステップSc5でデータバッ
ファRDBに格納したデータをバスAに出力し、ALU
を通過し、ALUからバスCに出力してレジスタR1H
に転送する。ALUを通過した時にデータを検査し、コ
ンディションコードレジスタCCRのZ及びNフラグに
反映する。第3ステップSc3でデータバッファRDB
に格納した命令を制御部CONTに転送し、解読を開始
する。次のステップからは、前記同様に、次の命令の動
作を開始する。
【0037】ポストインクリメントレジスタ間接アドレ
ッシングモードでメモリの内容をレジスタ転送する命令
の処理フローが図11に示されており、例えば、汎用レ
ジスタR7(R7L,R7H)と拡張レジスタE7で示
されるアドレスから拡張データを汎用レジスタR2(R
2L,R2H)と拡張レジスタE2に転送する命令{M
OV.L  @R7+,R2}は、特に制限はされない
ものの、2バイトの命令長であるとする。本命令は、第
1ステップSd1で、直前に実行した命令または例外処
理の最後のステップで開始したリード動作を終了し、リ
ードしたワードデータをデータバッファRDBに格納す
る。第2ステップSd2で、レジスタR7と拡張レジス
タE7の内容をバスAに出力し、アドレスバッファAB
に転送し、同時にALUで2を加算すし、結果を汎用レ
ジスタR7と拡張レジスタE7に格納する。第3ステッ
プSd3で前記アドレスバッファABの内容をアドレス
としてデータのリードをワードで開始する。第4ステッ
プSd4でリード動作を終了し、リードしたワードデー
タをデータバッファRDBに格納する。同時に汎用レジ
スタR7と拡張レジスタE7の内容をバスAに出力し、
アドレスバッファABに転送し、同時にALUで2を加
算する。加算結果は汎用レジスタR7と拡張レジスタE
7に格納する。第5ステップSd5で前記アドレスバッ
ファABの内容をアドレスとしてデータのリードをワー
ドで開始する。第6ステップSd6でリード動作を終了
し、リードしたワードデータをデータバッファRDBに
格納する。前記同様にプログラムカウンタPCの内容を
アドレスバッファABに転送し、2を加算する。第7ス
テップSd7で前記アドレスバッファABの内容をアド
レスとしてデータのリードをワードで開始する。データ
バッファRDBに格納したデータの内24ビットをバス
Aに出力し、ALUを通過し、ALUからバスCに出力
して汎用レジスタR2と拡張レジスタE2に転送する。 なお、第4ステップSd4でデータバッファRDBに格
納されたデータの上位8ビットは、無視される。特に制
限はされないものの、ALUを通過した時にデータを検
査せず、コンディションコードレジスタCCRのフラグ
は変化しない。第1ステップSd1でデータバッファR
DBに格納した命令を制御部CONTに転送し、解読を
開始する。次のステップからは、前記同様に、次の命令
の動作を開始する。
【0038】図31には前記CPU1が実行可能な算術
演算命令の一覧が示される。その算術演算は、具体的に
は加算・減算・比較を含む。
【0039】加算には機能別にADD、ADDC、AD
DE命令があり、さらに、ADD命令ではバイトサイズ
、ワードサイズがある。ADD命令では、指定されたソ
ースデータ(イミディエィトまたはレジスタの内容)と
ディスティネーションデータ(レジスタの内容)を加算
し、結果をディスティネーションのレジスタに格納する
とともに、結果をC,V,Z,Nの各フラグに反映する
。特に制限はされないものの、メモリの内容とレジスタ
の内容の直接的な演算若しくは1命令による演算は行な
わない。
【0040】ADD命令では、データ演算命令としての
性質上、バイトサイズ、ワードサイズがある。ADDC
命令もADD命令と同様であるが、加算はキャリフラグ
Cを含めて行なわれる。ADDC命令は、データ演算命
令としての性質上、バイトサイズ、ワードサイズがある
のが望ましいが、ワードサイズのADDC命令は25ビ
ット以上のデータを扱わない限り必要ない。これに対し
てADDC命令をバイトサイズのみとすれば、CPU1
の命令フォーマット・内部制御方式の単純化を行なって
、論理的・物理的規模を縮小可能である。前記必要性と
前記縮小規模を考慮して、特に制限はされないものの、
ADDC命令をバイトサイズのみとしている。ADDE
命令はアドレスデータ計算用に使用すべきものであり、
汎用レジスタと拡張レジスタを組合せて加算を行なう。 ADDE命令は、アドレスデータ演算命令としての性質
上、アドレスワードサイズのみとされ、フラグの変化は
禁止されている。減算についても同様である。
【0041】比較には、キャリ付きの比較命令は存在し
ない。SUBE命令はキャリ、ゼロ、ネガティブフラグ
のみ変化し、オーバフローフラグは変化しない。アドレ
スデータには符号を考慮する必要がないためである。
【0042】なお、#x:8、#x:16はそれぞれ8
ビット、16ビットイミディエィトデータ、Rd8、R
d16は8ビット、16ビット汎用レジスタ、Ed:R
d:16は拡張レジスタと汎用レジスタの内容などを示
す。
【0043】図12にはCPU1のレジスタ構成の第2
の実施例が示される。CPU1は8本の16ビット長の
汎用レジスタR0(R0L,RH)〜R7(R7L,R
7H)と、5本の8ビット長の拡張レジスタE01,E
23,E45,E6,E7と、24ビット長のプログラ
ムカウンタPCと、8ビット長のコンディションコード
レジスタCCRとを有している。
【0044】汎用レジスタをアドレスレジスタとして使
用する場合は、汎用レジスタの内容16ビットをアドレ
スの下位16ビットとし、対応する拡張レジスタの内容
をアドレスの上位8ビットとして、合計24ビットのア
ドレスを生成するものである。アドレッシングモードあ
るいは実効アドレスの計算方法は第1の実施例と同様で
ある。本実施例では汎用レジスタR0とR1、R2とR
3、R4とR5に対してそれぞれ1個の拡張レジスタE
01、E23、E45が対応し、第1実施例に対して拡
張レジスタの数を減らしている。例えばR0を指定して
ポストインクリメントレジスタ間接を使用すると、拡張
レジスタE01とR0の内容が書き変えられる。次にR
1を指定してポストインクリメントレジスタ間接を使用
すると、拡張レジスタE01とR1の内容が書き変えら
れる。このため、ユーザは、特に制限はされないものの
、汎用レジスタR0をデータレジスタとして、R1をア
ドレスレジスタとして使用する。したがって、この場合
には、拡張レジスタE01は、つねに汎用レジスタR1
と組合せて使用し、汎用レジスタR0とは組合せては使
用しないようにすることになる。このようにユーザのプ
ログラム作成上の制約が発生することになるが、すべて
の汎用レジスタをアドレスレジスタとして使用し、デー
タレジスタとしては使用しない応用例は存在しないと考
えられるので、上記制約は実質上の問題とならない。
【0045】図13にはCPU1のレジスタ構成の第3
の実施例が示される。CPU1は、第2の実施例同様に
、8本の16ビット長の汎用レジスタR0(R0L,R
H)〜R7(R7L,R7H)と、5本の夫々8ビット
長の拡張レジスタE3〜E7と、24ビット長のプログ
ラムカウンタPC、8ビット長のコンディションコード
レジスタCCRとを有している。
【0046】汎用レジスタをアドレスレジスタとして使
用する場合は、汎用レジスタの内容16ビットをアドレ
スの下位16ビットとし、対応する拡張レジスタの内容
をアドレスの上位8ビットとして、合計24ビットのア
ドレスを生成するものである。アドレッシングモードあ
るいは実効アドレスの計算方法は第1の実施例と同様で
ある。本実施例では汎用レジスタR0、R1、R2に対
して対応する拡張レジスタが存在しない。これらの汎用
レジスタをアドレスレジスタとして指定する場合には上
位8ビットを自動的に拡張して24ビットのアドレスと
するようになっている。特に制限はされないものの、汎
用レジスタR0の場合には、上位8ビットは自動的にR
0のビット15の内容と同一となる。汎用レジスタR1
の場合には、上位8ビットは自動的に全ビット0となる
。また、汎用レジスタR2の場合には上位8ビットは自
動的に全ビット1となる。
【0047】図14には図13の実施例における汎用レ
ジスタR0、R1、R2をアドレスレジスタとして指定
する場合におけるアドレスの拡張可能な範囲が示される
【0048】汎用レジスタR0の場合には、24ビット
アドレスとしての上位8ビットは自動的にR0のビット
15の内容と同一とされ、これにより、H’00000
0〜H’007FFFとH’FF8000〜H’FFF
FFFの範囲が指定される。汎用レジスタR1の場合に
は、上位8ビットは自動的に全ビット0とされ、これに
より、H’000000〜H’00FFFFの範囲が指
定される。また、汎用レジスタR2の場合には上位8ビ
ットは自動的に全ビット1とされ、これにより、H’F
F0000〜H’FFFFFFの範囲が指定される。こ
れらのH’000000〜H’00FFFFとH’FF
0000〜H’FFFFFFの範囲に使用頻度の高いプ
ログラムやデータ領域を配置すれば、それらはリニアな
アドレス範囲でアクセス可能にされる。
【0049】図15には、CPU1のレジスタ構成の第
4の実施例が示される。CPU1は、第2の実施例同様
に、8本の夫々16ビット長の汎用レジスタR0(R0
L,RH)〜R7(R7L,R7H)と、5本の夫々8
ビット長の拡張レジスタE01,E23,E45,E6
,E7と、24ビット長のプログラムカウンタPCと、
8ビット長のコンディションコードレジスタCCRとを
有している。本実施例の汎用レジスタと拡張レジスタは
、互いに独立とされ、アドレス計算時にキャリまたはボ
ローの伝播が禁止されている。プログラムカウンタPC
は前記同様に24ビットのレジスタとして使用できる。
【0050】本実施例によれば、24ビットのプログラ
ムカウンタPCを有するから、プログラムに関してはペ
ージ境界をいっさい考慮しなくてもよい。但し、データ
がページ境界を超えないようにプログラム作成者が管理
しなければならないが、データの管理はプログラムの管
理より容易であると考えられる。汎用レジスタと拡張レ
ジスタを独立とすることで、24ビットディスプレース
メントや24ビット絶対的データの転送など比較的命令
長の長い命令を実行することはできないが、その反面、
制御部CONTの論理的並びに物理的規模を縮小できる
【0051】汎用レジスタR7と拡張レジスタE7をい
わゆるスタックポインタとして使用する場合には、この
間のキャリまたはボローの伝播を許可してもよい。すな
わち、サブルーチンコール命令や割込み処理時などに、
暗黙的にスタックポインタ(汎用レジスタR7と拡張レ
ジスタE7)を使用する場合には、汎用レジスタR7と
拡張レジスタE7の間のキャリまたはボローの伝播を許
可するものである。
【0052】上記第1乃至第4実施例のレジスタ構成で
説明したように、汎用レジスタ・拡張レジスタを設け、
16Mバイトのアドレス空間を使用可能とした場合、主
要な演算はレジスタ間で行い、メモリとレジスタとの間
の演算は直接行わない即ち1命令では行わない命令体系
とするのが得策である。16Mバイトのアドレス空間を
有効に利用するには、前記のような複雑なアドレッシン
グモードが必要である。演算命令の多くにこのような複
雑なアドレッシングモードを実行可能とすると、制御部
CONTの構成が複雑になり、論理的・物理的規模を最
小限とする目的に反してしまうためである。メモリのア
クセスには、前記の通り、種々のアドレッシングモード
を有する転送命令でレジスタとのデータの転送を行い、
レジスタ上で演算などのデータ処理を行うものとすれば
よい。レジスタが8ビット長16本分として使用でき、
ある処理に必要なデータはレジスタ上に置くことができ
る。少なくとも、使用頻度の高いデータの大部分はレジ
スタ上に置くことができる。したがって、処理プログラ
ムの増加や実行速度の低下といった不都合が発生する場
合は少ないと考えられる。
【0053】メモリに対する演算を行う必要がある命令
としては、ビット操作命令がある。これらは、バイト単
位で割り当てられたアドレスの第nビットとして指定さ
れるものの、バイト単位で扱われるデータではなく、そ
れぞれのビットが独立した機能を有している。たとえば
、タイマの動作を制御するようなレジスタのような場合
、第0ビット・第1ビットでタイマのクロックを選択し
、第2ビットではタイマカウンタと比較レジスタの内容
が一致した時、タイマカウンタをクリアするかしないか
を指定し、第3ビットでは前記一致した時、割込みを発
生するかしないかを指定するものである。これらは1ビ
ット単位で1にセットしたり、0にクリアしたりする必
要がある。あるいは入力ポートの所定の1ビットが0で
あるか1であるかによってCPU1の処理プログラムが
異なる場合、前記1ビットのデータを判定する必要があ
る。かかる1ビットデータは前記タイマ制御用レジスタ
に対して直接演算しなければならない。バイト単位で一
旦レジスタに転送した後にビット操作を行うと、前記転
送とビット操作の間に割込みが入ってしまい、例えば前
記入力ポートの値が変化してしまうような不都合が発生
するためである。従って本実施例におけるCPU1は、
汎用レジスタのような内部のレジスタと周辺回路の制御
用レジスタのような外部レジスタとの間での直接的な演
算のためのビット操作命令はサポートしている。 尚、このようなビット操作命令の対象となるアドレスは
固定的で、複雑なアドレッシングモードは必要ではない
。絶対アドレスと、最低限レジスタ間接を実行できれば
よい。しかも絶対アドレスの場合も全アドレス空間を使
用できる必要はなく、前記タイマ・入出力ポートなどの
存在するアドレス範囲にのみ使用できれば十分と考えら
れる。このようなアドレス範囲の指定に使用できる絶対
アドレスは8ビットで十分である。16ビットとすれば
使用可能なアドレス範囲が広がるが、命令長が長くなり
制御が複雑になってしまう。少なくとも24ビットとし
て16Mバイトの全空間を使用可能としなければならな
い場合は非常に稀であると考えられる。したがって、1
ビット又は数ビットのビット操作命令を直接外部周辺回
路との間で行っても、これによって制御部の規模や命令
の種類が極端に増大する虞はない。
【0054】図16には本実施例のマイクロコンピュー
タ100におけるアドレスマップの一例が示される。
【0055】内蔵ROM2はアドレスH’00000か
ら配置され、内蔵周辺機能(タイマ4,SCI5など)
と内蔵RAM3はH’FF800以降に配置されており
、これらの間は外部空間とされる。内蔵周辺機能と内蔵
RAM3をアドレス空間の中途、例えば、H’0F80
0からH’0FFFFなどに配置することができるが、
この場合には外部空間が2ヵ所に分離される、また、内
蔵ROM2に書き込んだプログラムと外部空間に存在す
るプログラムを連続的に使用できず、本発明の目的に反
する。従って主としてプログラム領域とされるべき内蔵
ROM2と、主としてデータ領域とされるべき内蔵周辺
機能及び内蔵RAM3は互いにアドレス空間の反対に配
置し、この間は連続した空間とすべきである。このよう
にすることにより、マイクロコンピュータ100が適用
されるシステムに応じてデータ領域やプログラム領域が
大きくなっても、夫々を容易に連続したアドレス空間に
確保する事ができるようになり、システム上、データや
プログラムを管理したり、それらをアクセスするための
手順が簡素化されたりする。尚、内蔵ROM2はリセッ
ト処理に際してのスタートアドレスまたはスタートアド
レスを格納したアドレス(スタートベクタ)を含む。
【0056】以上の実施例では、アドレス空間16Mバ
イトであるとしたが、CPU1の機能としては16Mバ
イトのアドレス空間をもちながらも、シングルチップコ
ンピュータ100全体としては各機能ブロックの組合せ
などにより、16Mバイトのアドレス空間は必要とせず
、かつ入出力ポートの端子数を多く必要とする場合が考
えられる。このような場合、アドレス端子24本を持つ
ことは得策ではなく、アドレス端子数を減らし、入出力
ポート端子数を増加させなければならない。例えばアド
レス端子を20本とすると、実際に利用できるアドレス
空間は1Mバイトとなる。
【0057】図17にはシングルチップマイクロコンピ
ュータ100に含まれる機能ブロック選択回路の一例が
示される。
【0058】同図に示される機能ブロック選択回路は、
特に制限はされないものの、CPU1が出力する24ビ
ットのアドレス信号A0〜A23をデコードして各機能
ブロックの選択信号を生成し、ゲートG1,G2,G3
,G4,G6,G9,及びデコーダDEC1によって構
成される。シングルチップマイクロコンピュータ100
に含まれる各機能ブロックにはアドレス信号A0〜A2
3の全ビットは入力されず、当該機能ブロックが選択さ
れたことを示す機能ブロック選択信号と、当該機能ブロ
ックの中のいずれのアドレスが選択されたかを示す下位
アドレスビットが入力されるものである。本例によれば
、ROM2の容量が32kバイトであるとすると、RO
M2には1本の機能ブロック選択信号とアドレス信号A
0〜A14の下位15ビットが入力される。
【0059】上記機能ブロック選択回路により図16の
アドレスマップを実現する場合、アドレスの下位16ビ
ットを入力したデコーダDEC1において、H’000
0〜7FFFを検出するとBSEL1信号が1レベルと
される。さらにゲートG6において上位アドレスがH’
00を検出すると、ゲートG6、G1の出力、すなわち
、内蔵ROM2の選択信号が1レベルとなってがROM
2にが選択される。RAM3および内蔵周辺機能につい
ても同様である。とくに制限はされないものの、これら
のいずれもが選択されないと外部空間が選択される。
【0060】図18には外部アドレス端子を20本とし
、実際に利用できるアドレス空間を1Mバイトとするよ
うなマイクロコンピュータのアドレスマップが示される
【0061】斯るシングルチップマイクロコンピュータ
のアドレスマップは、前記の通り、主としてプログラム
領域とされるべき内蔵ROM2と、主としてデータ領域
とされるべき内蔵周辺機能及び内蔵RAM3とを互いに
アドレス空間の反対に配置し、この間を連続した空間と
するには、図18の(a),(b)の2通りのマッピン
グが考えられる。(a)の場合には内蔵周辺機能及び内
蔵RAMを16Mバイトの空間のH’FFFFFF側に
配置している。(b)の場合には内蔵周辺機能及び内蔵
RAM3を1Mバイトの空間のH’FFFFF側に配置
している。図18からも明らかなように、(a)の方が
利用可能な外部アドレス空間は大きくなるが、その反面
、データ領域は外部アドレス空間と内部アドレス空間と
で分離される。
【0062】図19には図18のアドレスマップを実現
する機能ブロック選択回路が示される。
【0063】同図に示される機能ブロック選択回路は、
ゲートき1〜G10、デコーダDEC1、及びレジスタ
REGによって構成され、特に制限はされないものの、
レジスタREGの内容によって、図18の(a),(b
)の2種類のアドレスマップを選択する。レジスタRE
Gの内容を1とするとゲートG7、G10の出力がアド
レスの上位4ビットに依存せず常に1となり、図18の
(b)に示されるアドレスマップとなる。レジスタRE
Gの内容を0とすると図18の(a)に示されるアドレ
スマップとなる。特に制限はされないものの、アドレス
マップの予約済みの空間は使用禁止とされる。レジスタ
REGはCPU1がリード/ライト可能なもののほか、
外部端子によって設定可能としてもよいし、内部で電源
に接続して固定的に設定するものとしてもよい。
【0064】図20には図18の(b)に示されるアド
レスマップを実現する機能ブロック選択回路が示される
。この機能ブロック選択回路は、図19においてレジス
タREGを1レベルにし、ゲートG7,G10を削除し
て成る構成と等価である。内蔵RAM3と連続した外部
空間を使用可能になる。アドレスバス4本及び上記ゲー
トG5,G7〜G8,G10などを削除でき、論理規模
・物理的規模を縮小できる。
【0065】図21には前記各種汎用レジスタ・拡張レ
ジスタ・プログラムカウンタ・テンポラリレジスタの具
体的な論理回路例が示される。
【0066】図21には代表的に3ビットの構成が示さ
れている。レジスタはフリップフロップ回路FFで構成
され、バスCからデータの入力が可能とされ、バスA・
Bに出力が可能とされている。データの入出力は制御部
からの信号に基づいて、システムクロックφ(図におけ
る記号*はローイネーブルであることを意味する)がロ
ウレベルの期間に行なわれる。汎用レジスタRiH、R
iL、及び拡張レジスタEiには夫々独立した制御信号
AH,BH,CH、AL,BL,CL、AE,BE,C
Eが与えられ、それぞれ独立した入出力が可能とされて
いる。プログラムカウンタPCは24ビット長固定のた
め、AEとAHとAL、BEとBHとBL、CEとCH
とCLはそれぞれ共通の信号APC、BPC、CPCと
して与えられ、一括した入出力を行う。テンポラリレジ
スタTRについては、その使用方法に依存するが、汎用
レジスタ及び拡張レジスタと同様とする。
【0067】特に制限はされないものの、それぞれのバ
スA,B,Cは負論理とされている。また、バスA及び
Bはシステムクロックφがハイレベルの期間にPチャネ
ル型MOSトランジスタQpによりハイレベル(0レベ
ル)に固定される。システムクロックφがロウレベルの
期間に、いずれのブロックもデータを出力しなければハ
イレベルが保持される。
【0068】図22には図10で説明した前記{MOV
.B  @(1234,R0),R1H命令}実行時の
汎用レジスタ及び拡張レジスタの一例動作タイミングチ
ャートが示される。
【0069】システムクロックφに同期した第1サイク
ル即ち前記第1ステップSc1と第5サイクルとしての
第5ステップSc5で制御信号APCが1レベルとなり
、プログラムカウンタPCの内容がAバスに出力される
。同時に制御信号CPCが1レベルとなり、Cバスの内
容がプログラムカウンタPCに入力される。特に制限は
されないもののプログラムカウンタPCの出力はいわゆ
るマスタ・スレーブとなっているためAバスにはCバス
の内容ではなく、直前のプログラムカウンタPCの内容
が出力される。第2ステップSc2で拡張レジスタE0
と汎用レジスタR0との制御信号AE0、AH0、AL
0が1レベルとなり、拡張レジスタE0と汎用レジスタ
R0の内容がAバスに出力される。第6ステップSc6
で汎用レジスタR1の制御信号AH1が1レベルとなり
、Cバスの内容が汎用レジスタR1Hに出力される。 制御信号AE1、AL1は0レベルであり、拡張レジス
タE1と汎用レジスタR1Lとの内容は保持される。
【0070】図23には図11に示される前記{MOV
.L  @R7+,R2}命令実行時の汎用レジスタの
一例動作タイミングチャートが示される。
【0071】システムクロックφに同期した第2サイク
ルとしての第2ステップSd2で拡張レジスタE7と汎
用レジスタR7の制御信号AE7、AH7、AL7が1
レベルとなり、拡張レジスタE7と汎用レジスタR7と
の内容がAバスに出力される。同時に制御信号CE7、
CH7、CL7が1レベルとなり、Cバスの内容が拡張
レジスタE7と汎用レジスタR7とに入力される。前記
同様に汎用レジスタの出力はいわゆるマスタ・スレーブ
となっているためAバスにはCバスの内容ではなく、直
前のプログラムカウンタPCの内容が出力される。第6
ステップSd6で制御信号APCが1レベルとなり、プ
ログラムカウンタPCの内容がAバスに出力される。同
時に制御信号CPCが1レベルとなり、Cバスの内容が
プログラムカウンタPCに入力される。第7ステップS
d7で拡張レジスタE2と汎用レジスタR2との制御信
号CE2、CH2、CL2が1レベルとなり、Cバスの
内容が拡張レジスタE2と汎用レジスタR2に入力され
る。
【0072】図24には図7に示されるリードデータバ
ッファRDB(RDBL,RDBH,RDBE)の具体
的な一例論理回路図画示される。
【0073】リードデータバッファはバスA及びBとシ
ングルチップマイクロコンピュータ100の含まれる内
部データバスL(D0〜D7),H(D8〜D15)に
結合されてなる第1のリードバッファ部分RDB1(R
DB1L,RDB1H)、バスA及びBと第1のリード
バッファ部分RDB1とに結合されてなる第2のリード
バッファ部分RDB2(RDB2L,RDB2H)、バ
スA及びBと第2のリードバッファ部分RDB2とに結
合されてなる拡張リードバッファ部分RDBE、CPU
1の制御部CONTと第2のリードバッファ部分RDB
2とに結合されてなる命令リードバッファ部分RDBI
(RDBIL,RDBIH)から構成される。第1のリ
ードバッファ部分RDB1と第2のリードバッファ部分
RDB2と命令リードバッファ部分RDBIはいずれも
16ビットである。拡張リードバッファ部分RDBEは
8ビットである。第1のリードバッファ部分RDB1と
第2のリードバッファ部分RDB2は、バスA及びBの
ビット15〜0に接続されている。特に制限はされない
ものの、拡張リードバッファ部分RDBEは、バスA及
びBのビット23〜16,及びビット7〜0に接続され
ている。リードされたデータはまずシステムクロックφ
がロウレベルの期間に第1のリードバッファ部分RDB
1に格納され、システムクロックφがハイレベルの期間
に第2のリードバッファ部分RDB2に転送される。リ
ードしたデータが後で必要になる場合には、次のデータ
をリードする前に、前記第2のリードバッファ部分RD
B2から拡張リードバッファ部分RDBEまたは命令リ
ードバッファ部分RDBIに転送され、保持される。
【0074】図25には図10で説明した前記{MOV
.B  @(1234,R0),R1H}命令実行時の
リードデータバッファの一例動作タイミングチャートが
示される。
【0075】第1ステップと第3ステップと第5ステッ
プで制御信号1が1レベルとなり、データバスD0〜D
15の内容が第1のリードバッファ部分RDB1に格納
される。これらの内容は次のステップで第2のリードバ
ッファ部分RDB2に転送される。第2ステップで制御
信号2が1レベルとなり、第2のリードバッファ部分R
DB2に保持されているディスプレースメントがBバス
に出力される。第3ステップで制御信号4が1レベルと
なり、第2のリードバッファ部分RDB2に保持されて
いる次の命令の下位8ビットの内容が拡張リードバッフ
ァ部分RDBEに転送される。第5ステップで制御信号
7が1レベルとなり、第2のリードバッファ部分RDB
2に保持されている次の命令のの内容が命令リードバッ
ファ部分RDBIに転送される。制御部CONTでは第
6ステップからこの内容を使用し、次の命令の解読を開
始する。第6ステップで制御信号3が1レベルとなり、
第2のリードバッファ部分RDB2に保持されているリ
ードデータがAバスに出力される。
【0076】図26には図11で説明した前記{MOV
.L  @R7+,R2}命令実行時における図24の
リードデータバッファの一例動作タイミングチャートが
示される。
【0077】第1ステップと第4ステップと第6ステッ
プで制御信号1が1レベルとなり、データバスD0〜D
15の内容が第1のリードバッファ部分RDB1に格納
される。これらの内容は次のステップで第2のリードバ
ッファ部分RDB2に転送される。第2ステップで制御
信号7が1レベルとなり、第2のリードバッファ部分R
DB2に保持されている次の命令の内容が命令リードバ
ッファ部分RDBIに転送される。制御部CONTでは
第7ステップからこの内容を使用し、次の命令の解読を
開始する。第6ステップで制御信号4が1レベルとなり
、第2のリードバッファ部分RDB2に保持されている
リードデータが拡張リードバッファ部分RDBEに転送
される。第7ステップで制御信号3、5が1レベルとな
り、第2のリードバッファ部分RDB2と拡張リードバ
ッファ部分RDBEに保持されている24ビットのリー
ドデータがAバスに出力される。
【0078】図27にはアドレスバッファAB(ABL
,ABH,ABE)の具体的な一例論理回路が示される
。同図において、アドレスバッファABの各ビットはフ
リップフロップ回路MAB1、MAB2で構成され、フ
リップフロップ回路MAB1はバスAとフリップフロッ
プ回路MAB2に接続され、フリップフロップ回路MA
B2はフリップフロップ回路MAB1とアドレスバスに
接続されている。フリップフロップ回路MAB1のAバ
スからのデータの入力は制御信号が1レベルのとき、シ
ステムクロックφがロウレベルの期間に行なわれる。 フリップフロップ回路MAB1の内容はフリップフロッ
プ回路MAB2にシステムクロックφがハイレベルの期
間に転送されアドレスバスに出力される。
【0079】図28には図10で説明した前記{MOV
.B  @(1234,R0),R1H}命令実行時に
おける図27のアドレスバッファの一例動作タイミング
チャートが示される。第1ステップと第3ステップと第
5ステップで制御信号が1レベルとなり、Aバスの内容
がフリップフロップ回路MAB1に格納される。これら
の内容は次のステップでフリップフロップ回路MAB2
に転送され、アドレスバスに出力される。
【0080】図29にはアドレスバッファABの変形例
が示される。図27のアドレスバッファに対し、フリッ
プフロップ回路MAB1とMAB2の間に、加算器例え
ばインクリメンタINCが付加されており、定数値2を
加算できる。24ビットのデータをアクセスするために
は16ビット単位のアクセスを2回に分けて行うため、
1回目のアクセスの後、アドレスに2を加算しなければ
ならないが、この加算に前記インクリメンタINCを使
用する。汎用のALUを使用する場合に比べてハードウ
ェア規模が増大するが、汎用の演算器を使用したときに
一旦計算したアドレスを例えばテンポラリレジスタなど
に一時的に確保した後で前記テンポラリレジスタの内容
を読み出してALUで2を加算し当該加算結果をアドレ
スバッファに転送するような手間を省くことができ、制
御部CONTの規模を縮小できる。これらアドレスバッ
ファの形式はCPUの全体的な構成に基づいて選択すれ
ばよく、例えば、実行部EXEの規模に比べて制御部C
ONTの規模が大きくなり過ぎてチップレイアウト上な
どで好ましくないと考えられる場合には図29のアドレ
スバッファを採用すればよい。
【0081】図30には図10で説明した前記{MOV
.B  @(1234,R0),R1H}命令実行時に
おける図29のアドレスバッファの一例動作タイミング
チャートが示される。第1ステップと第5ステップで制
御信号A1が1レベルとなり、Aバスの内容がフリップ
フロップ回路MAB1に格納される。これらの内容は次
のステップでフリップフロップ回路MAB2に転送され
、アドレスバスに出力される。第3ステップの後半から
制御信号A2が1レベルとなり、フリップフロップ回路
MAB1に2を加えた内容が第4ステップでフリップフ
ロップ回路MAB2に転送され、アドレスバスに出力さ
れる。
【0082】上記実施例によれば以下の効果を得るもの
である。
【0083】(1)8ビットCPU1に内蔵の既存の1
6ビットの汎用レジスタにアドレス専用の拡張レジスタ
を追加し、追加された拡張レジスタを含めた全体をアド
レスデータとして一括把握して、メモリなどをアクセス
可能にし、このとき、アドレス演算は拡張レジスタ及び
これに対応する汎用レジスタの双方を一単位として行い
、アドレスデータを保持する汎用レジスタの更新は対応
する拡張レジスタと共に行い、また、拡張レジスタも含
めた全体で一単位のデータとして把握して、アドレス演
算で発生するキャリーやボローを処理するから、16ビ
ットのアドレスレジスタを用いる場合に比べてリニアに
利用可能なアドレス空間を64kバイトから最大限16
Mバイトまで拡張することができる。更に、ページレジ
スタによる従来のアドレス空間拡張技術に比べて、プロ
グラムやコンパイラの作成が容易になり、しかも種々の
アドレス修飾も可能になって、アドレス空間の広さに見
合うように相対的に豊富なアドレシングモードをサポー
トすることができるようになる。
【0084】(2)更に、前記拡張レジスタはアドレス
生成に用途を限定してあるから、実行可能な命令の種別
若しくは組み合わせ数を、データ処理能力の極端な低下
を招くことなく減らすことができ、CPUの論理的並び
に物理的な規模の増大を抑制することができる。
【0085】(3)リニアなアドレス空間の拡張と共に
アドレシングモードを多様化するとき、その多様化に応
じてアドレシングモードと命令との組み合わせも必然的
に増大するが、このとき、アドレスデータ以外のデータ
を保持する汎用レジスタとCPUの外部との間では、ビ
ット操作処理などを除いて、1つの命令で直接的な演算
を不可能にすることにより、CPUの処理能力の極端な
低下を抑制しつつ、前記組み合わせの増大によってCP
Uの論理的並びに物理的な規模が増大することを極力抑
えることができる。
【0086】(4)上記により、16ビットCPUと同
等にアドレス空間を拡張しつつ、機器制御応用でシステ
ム構成に必要なタイマやメモリなどの周辺機能を1チッ
プに内蔵でき、機器制御応用のための所要のシステムを
オンチップ化して所謂シングルチップマイクロコンピュ
ータを実現することが容易になる。
【0087】(5)前記拡張レジスタと汎用レジスタの
全体をアドレスデータのために利用したときと前記汎用
レジスタをその他のデータのために利用したときの機能
の相違に鑑みて、CPUの内外において、拡張レジスタ
と汎用レジスタの全体を一括する全24ビットのデータ
転送制御と、前記汎用レジスタを一括する全16ビット
のデータ転送制御との双方が可能にされており、このと
き、一組の前記拡張レジスタ及び汎用レジスタが保持す
るアドレスデータに基づいてCPU外部のアドレスを指
定し、別の汎用レジスタとCPU外部との間でデータ転
送制御することができる。
【0088】(6)算術論理演算器は拡張レジスタ及び
汎用レジスタの内容に対して、算術演算(本実施例にお
いてはシフト演算も含む)、論理演算、比較等を行うが
、当該算術論理演算器は、前記拡張レジスタ及び汎用レ
ジスタの全体に対する24ビットのアドレスデータに対
する算術的な演算を、1マシンサイクルで実行可能な2
4ビットの演算ビット数を有するから、一括把握される
アドレスデータの演算で生ずるキャリーやボローの処理
を別のマシンサイクルを使って行う必要はなく、アドレ
ス演算を効率的に行うことができる。
【0089】以上本発明者によってなされた発明を実施
例に基づいて具体的に説明したが、本発明はそれに限定
されるものではなく、その要旨を逸脱しない範囲におい
て種々変更可能であることは言うまでもない。
【0090】例えば、CPU1のブロック構成・レジス
タ構成・具体的な論理回路例などについては何ら限定さ
れない。レジスタのビット数あるいはレジスタの本数な
どは任意に選択することもできる。アドレッシングモー
ドと実効アドレスの計算方法についても種々の変形例を
使用することができる。ALUは24ビット構成とした
が、16ビット構成とし、24ビットデータは下位16
ビットと上位8ビットの2回に分けて演算する構成とす
れば、物理的規模を縮小できる。拡張レジスタは16ビ
ット長としてもよい。また、上記実施例において拡張レ
ジスタと汎用レジスタとの間で相互にデータ転送可能に
することができる。
【0091】以上の説明では主として本発明者によって
なされた発明をその背景となった利用分野であるシング
ルチップマイクロコンピュータに適用した場合について
説明したが、本発明はそれに限定されるものではなく、
その他のデータ処理装置に適用可能であり、データの処
理能力に比べて処理可能なデータやプログラムの規模を
相対的に優先させる条件のもの、また、CPUの論理的
並びに物理的な規模の増大を抑えつつアドレス空間を拡
張して有効な条件のものに広く適用することができる。
【0092】
【発明の効果】本願において開示される発明のうち代表
的なものによって得られる効果を簡単に説明すれば下記
の通りである。
【0093】すなわち、アドレスデータの保持には全体
が使用されデータの保持にはその一部分が使用される所
定ビット数のデータ保持手段を中央処理装置(CPU)
に設けたから、リニアに利用可能なアドレス空間を拡張
することができると共に、ページレジスタによる従来の
アドレス空間拡張技術に比べて、プログラムやコンパイ
ラの作成が容易になる。しかも種々のアドレス修飾も可
能になって、アドレス空間の広さに見合うように相対的
に豊富なアドレシングモードをサポートすることができ
るようになる。更に、データ保持手段の全体の利用はア
ドレス生成に用途限定してあるから、実行可能な命令の
種別若しくは組み合わせ数を、データ処理能力の極端な
低下を招くことなく減らすことができ、CPUの論理的
並びに物理的な規模の増大を抑制することができる。
【0094】アドレスデータ以外のデータを保持する汎
用レジスタとCPUの外部との間では、ビット操作処理
などを除いて、1つの命令で直接的な演算を不可能にす
ることによっても、CPUの論理的並びに物理的な規模
が増大することを極力抑えることができる。
【0095】データ処理能力に比べて処理可能なデータ
やプログラムの規模を相対的に優先させるような場合に
、アドレス空間を拡張しつつ、機器制御応用でシステム
構成に必要なタイマやメモリなどの周辺機能を1チップ
に内蔵でき、機器制御応用のための所要のシステムをオ
ンチップ化して所謂シングルチップマイクロコンピュー
タを容易に実現することができる。
【図面の簡単な説明】
【図1】図1は本発明に係るデータ処理装置の一実施例
であるシングルチップマイクロコンピュータのブロック
図である。
【図2】図2はCPU1の内蔵レジスタの第1構成例を
示す説明図である。
【図3】図3は汎用レジスタR0L,R0H〜R7L,
R7Hと拡張レジスタE0〜E7のデータ構成例を示す
説明図である。
【図4】図4はメモリのデータ構成例を示す説明図であ
る。
【図5】図5はCPU1のアドレッシングモードと実効
アドレスの計算手法の一例を示す説明図である。
【図6】図6はCPU1のアドレッシングモードと実効
アドレスの計算手法の更に別の例を示す説明図である。
【図7】図7はCPU1内部の一例ブロック図である。
【図8】図8はCPU1によるリセット例外処理の一例
フローチャートである。
【図9】図9はイミディエイトデータをレジスタに転送
する命令の一例フローチャートである。
【図10】図10はディスプレースメント付レジスタ間
接アドレッシングモードでメモリの内容をレジスタ転送
する命令の一例フローチャートである。
【図11】図11はポストインクリメントレジスタ間接
アドレッシングモードでメモリの内容をレジスタ転送す
る命令の一例フローチャートである。
【図12】図12はCPU1のレジスタ構成の第2例を
示す説明図である。
【図13】図13はCPU1のレジスタ構成の第3例を
示す説明図である。
【図14】図14は図13の例における汎用レジスタを
アドレスレジスタとして指定する場合におけるアドレス
の拡張可能な範囲を示す説明図である。
【図15】図15はCPU1のレジスタ構成の第4例を
示す説明図である。
【図16】図16は本実施例のマイクロコンピュータ1
00における一例アドレスマップである。
【図17】図17はシングルチップマイクロコンピュー
タ100に含まれる機能ブロック選択回路の一例論理図
である。
【図18】図18は外部アドレス端子を20本とし、実
際に利用できるアドレス空間を1Mバイトとするような
マイクロコンピュータの一例アドレスマップである。
【図19】図19は図18のアドレスマップを実現する
機能ブロック選択回路の論理図である。
【図20】図20は図18の(b)に示されるアドレス
マップを実現する機能ブロック選択回路の論理図である
【図21】図21は前記各種汎用レジスタ・拡張レジス
タ・プログラムカウンタ・テンポラリレジスタの具体的
な論理回路図である。
【図22】図22は図10に示される{MOV.B  
@(1234,R0),R1H}命令実行時の汎用レジ
スタ及び拡張レジスタの一例動作タイミングチャートで
ある。
【図23】図23は図11に示される{MOV.L  
@R7+,R2}命令実行時の汎用レジスタの一例動作
タイミングチャートである。
【図24】図24は図7に示されるリードデータバッフ
ァRDBの具体的な一例論理回路図である。
【図25】図25は図10に示される{MOV.B  
@(1234,R0),R1H}命令実行時のリードデ
ータバッファの一例動作タイミングチャートである。
【図26】図26は図11に示される{MOV.L  
@R7+,R2}命令実行時における図24のリードデ
ータバッファの一例動作タイミングチャートである。
【図27】図27はアドレスバッファABの具体的な一
例論理回路である。
【図28】図28は図10に示される{MOV.B  
@(1234,R0),R1H}命令実行時における図
27のアドレスバッファの一例動作タイミングチャート
である。
【図29】図29はアドレスバッファABの変形例を示
す論理図である。
【図30】図30は図10に示される{MOV.B  
@(1234,R0),R1H}命令実行時における図
29のアドレスバッファの一例動作タイミングチャート
である。
【図31】図31は前記CPU1が実行可能な算術演算
命令の説明図である。
【符号の説明】
1  CPU 2  ROM 3  RAM 4  タイマ 5  SCI 100  シングルチップマイクロコンピュータR0L
,R0H〜R7L,R7H  汎用レジスタE0〜E7
  拡張レジスタ PC  プログラムカウンタ EXE  実行部 CONT  制御部

Claims (8)

    【特許請求の範囲】
  1. 【請求項1】  命令を実行するための実行手段と、実
    行手段による命令実行の手順を制御する制御手段とを有
    し、前記実行手段は、アドレスデータの保持には全体が
    使用され、その他のデータの保持にはその一部分が使用
    される、所定ビット数のデータ保持手段と、前記制御手
    段からの制御に基づき、前記データ保持手段を利用して
    演算可能な演算手段とを備え、て成るデータ処理装置。
  2. 【請求項2】  前記制御手段は、データ処理装置の内
    外における、データ保持手段の全体を一括するデータ転
    送制御と、前記データ保持手段の前記一部分を一括する
    データ転送制御とのための、制御論理を有して成る請求
    項1記載のデータ処理装置。
  3. 【請求項3】  前記データ保持手段を複数単位備え、
    前記制御手段は、一の前記データ保持手段の全体の内容
    に基づいてデータ処理装置外部のアドレスを指定して、
    他の前記データ保持手段の前記一部分とデータ処理装置
    外部との間でデータ転送制御するための、制御論理を有
    して成る請求項2記載のデータ処理装置。
  4. 【請求項4】  前記アドレスの指定は、前記データ保
    持手段の全体の内容を前記演算手段を介して修飾する処
    理を含む請求項3記載のデータ処理装置。
  5. 【請求項5】  前記演算手段は少なくとも、前記デー
    タ保持手段の前記全体に対する算術的演算と、前記デー
    タ保持手段の一部分に対する算術的並びに論理的な演算
    を行うものである請求項1記載のデータ処理装置。
  6. 【請求項6】  前記演算手段は、前記データ保持手段
    の全体に対する算術的な演算を、単位マシンサイクルで
    実行可能な演算ビット数を有する請求項5記載のデータ
    処理装置。
  7. 【請求項7】  前記制御手段は、前記データ保持手段
    の前記一部分に対する算術的並びに論理的演算制御の全
    部若しくは一部を、前記データ保持手段とデータ処理装
    置外部との間では1つの命令で直接的には不可能とする
    制御論理を有する請求項1記載のデータ処理装置。
  8. 【請求項8】  請求項1乃至7の何れか1項記載のデ
    ータ処理装置と当該データ処理装置によって制御される
    周辺回路とを1個の半導体基板に含んで1チップマイク
    ロコンピュータ化されて成るデータ処理装置。
JP13204291A 1991-05-08 1991-05-08 データ処理装置 Expired - Lifetime JP3486630B2 (ja)

Priority Applications (5)

Application Number Priority Date Filing Date Title
JP13204291A JP3486630B2 (ja) 1991-05-08 1991-05-08 データ処理装置
KR1019920007701A KR100272622B1 (ko) 1991-05-08 1992-05-07 데이타 처리장치
US08/583,763 US5687344A (en) 1991-05-08 1996-01-10 Single-chip microcomputer having an expandable address area
US08/582,379 US5666510A (en) 1991-05-08 1996-01-11 Data processing device having an expandable address space
US08/607,568 US5771363A (en) 1991-05-08 1996-02-27 Single-chip microcomputer having an expandable address area

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP13204291A JP3486630B2 (ja) 1991-05-08 1991-05-08 データ処理装置

Related Child Applications (1)

Application Number Title Priority Date Filing Date
JP2002297670A Division JP3669984B2 (ja) 2002-10-10 2002-10-10 マイクロコンピュータ

Publications (2)

Publication Number Publication Date
JPH04333153A true JPH04333153A (ja) 1992-11-20
JP3486630B2 JP3486630B2 (ja) 2004-01-13

Family

ID=15072155

Family Applications (1)

Application Number Title Priority Date Filing Date
JP13204291A Expired - Lifetime JP3486630B2 (ja) 1991-05-08 1991-05-08 データ処理装置

Country Status (1)

Country Link
JP (1) JP3486630B2 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0954791A1 (en) * 1996-11-07 1999-11-10 Atmel Corporation Eight-bit microcontroller having a risc architecture

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0954791A1 (en) * 1996-11-07 1999-11-10 Atmel Corporation Eight-bit microcontroller having a risc architecture
EP0954791A4 (en) * 1996-11-07 2003-06-11 Atmel Corp EIGHT BIT MICRO CONTROLLER WITH RISC ARCHITECTURE
EP1596279A3 (en) * 1996-11-07 2010-03-10 Atmel Corporation Microcontroller having a RISC architecture

Also Published As

Publication number Publication date
JP3486630B2 (ja) 2004-01-13

Similar Documents

Publication Publication Date Title
US10514922B1 (en) Transfer triggered microcontroller with orthogonal instruction set
TWI476597B (zh) 資料處理裝置及半導體積體電路裝置
CN104375972A (zh) 用于可配置数学硬件加速器的微处理器集成配置控制器
KR100462951B1 (ko) Risc 구조를 갖는 8 비트 마이크로콘트롤러
US5666510A (en) Data processing device having an expandable address space
US8145804B2 (en) Systems and methods for transferring data to maintain preferred slot positions in a bi-endian processor
KR100272622B1 (ko) 데이타 처리장치
JP2001092662A (ja) プロセッサコア及びこれを用いたプロセッサ
JP3694531B2 (ja) Riscアーキテクチャを有する8ビットマイクロコントローラ
JP4004915B2 (ja) データ処理装置
US5909588A (en) Processor architecture with divisional signal in instruction decode for parallel storing of variable bit-width results in separate memory locations
KR100277805B1 (ko) 데이타처리장치
JP3669984B2 (ja) マイクロコンピュータ
US6058467A (en) Standard cell, 4-cycle, 8-bit microcontroller
JP3486630B2 (ja) データ処理装置
JPS6128143B2 (ja)
JPH04104350A (ja) マイクロプロセッサ
JP3154542B2 (ja) データ処理装置
JP4545777B2 (ja) データ処理装置
JP3539951B2 (ja) データ処理装置
JPS6330658B2 (ja)
JP4498338B2 (ja) データ処理装置
JP4553622B2 (ja) データ処理装置
JPH05173778A (ja) データ処理装置
JP3345050B2 (ja) 二次元配列型メモリシステム

Legal Events

Date Code Title Description
A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20020813

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

Free format text: PAYMENT UNTIL: 20081031

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20081031

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20091031

Year of fee payment: 6

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

Free format text: PAYMENT UNTIL: 20091031

Year of fee payment: 6

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

Free format text: PAYMENT UNTIL: 20101031

Year of fee payment: 7

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

Free format text: PAYMENT UNTIL: 20101031

Year of fee payment: 7

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

Free format text: PAYMENT UNTIL: 20111031

Year of fee payment: 8

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

Free format text: PAYMENT UNTIL: 20111031

Year of fee payment: 8

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313111

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

Free format text: PAYMENT UNTIL: 20111031

Year of fee payment: 8

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

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

Free format text: PAYMENT UNTIL: 20111031

Year of fee payment: 8