JPS59106048A - マイクロプロセツサシステム - Google Patents
マイクロプロセツサシステムInfo
- Publication number
- JPS59106048A JPS59106048A JP21651182A JP21651182A JPS59106048A JP S59106048 A JPS59106048 A JP S59106048A JP 21651182 A JP21651182 A JP 21651182A JP 21651182 A JP21651182 A JP 21651182A JP S59106048 A JPS59106048 A JP S59106048A
- Authority
- JP
- Japan
- Prior art keywords
- address
- microprocessor
- instruction
- circuit
- output
- 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
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/36—Preventing errors by testing or debugging software
Abstract
(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。
め要約のデータは記録されません。
Description
【発明の詳細な説明】
本発明は、マイクロプロセッサのメモリ空間を拡張する
ための技術に関し、特に論理アドレスを物理アドレスに
変換するアンレス変換回路に関する。
ための技術に関し、特に論理アドレスを物理アドレスに
変換するアンレス変換回路に関する。
従来、マイクロプロセッサのアドレス変換回路は、第1
図に示されるように、論理アドレスの上位数ビットを用
いて、幾つかあるリロケーション・ベース・レジスタの
一つを選択し、そのレジスタの出力と論理アドレスの残
りのビット(これをオフセットと呼ぶ)とを加算し、物
理アドレスを生成するのが一般的である。
図に示されるように、論理アドレスの上位数ビットを用
いて、幾つかあるリロケーション・ベース・レジスタの
一つを選択し、そのレジスタの出力と論理アドレスの残
りのビット(これをオフセットと呼ぶ)とを加算し、物
理アドレスを生成するのが一般的である。
ところが、従来の方法では、論理アドレスの性格、すな
わち現在の論理アドレスが、命令7エツチのアドレスな
のか、命令実行サイクルにおける一データアクセスのた
めのアドレスなのかについては無関係にただ唯一のりロ
ケーション・ペース・レジスタを選択するために、次の
ような欠点があった。
わち現在の論理アドレスが、命令7エツチのアドレスな
のか、命令実行サイクルにおける一データアクセスのた
めのアドレスなのかについては無関係にただ唯一のりロ
ケーション・ペース・レジスタを選択するために、次の
ような欠点があった。
■ 命令の格納されているセグメント(これをグロシー
ジャ・セグメントと呼ぶ)と、データの格納されている
セグメント(これをデータ・セグメントと呼ぶ)とがア
ドレス変換回路のハードウェア/ソフトウェアにより明
確に識別されないため、プログラムにより区別して最適
なセグメント化を行なわなければならず、プログラム設
計者にとって大きな負担となシブログラム開発に時間の
かかる原因となっていた。
ジャ・セグメントと呼ぶ)と、データの格納されている
セグメント(これをデータ・セグメントと呼ぶ)とがア
ドレス変換回路のハードウェア/ソフトウェアにより明
確に識別されないため、プログラムにより区別して最適
なセグメント化を行なわなければならず、プログラム設
計者にとって大きな負担となシブログラム開発に時間の
かかる原因となっていた。
■ また、プログラムが複雑になシ、そのデバッグに時
間がかかっていた。
間がかかっていた。
■ グロシージャセグメントとデータセグメントとを合
わせて64にバイトを越えるようなたいへん大きなシス
テムでは、リロケーション・ベース・レジスタの書替え
のだめのプログラム・オーバーヘッドが大きく、処理速
度の低下の原因になっていた。
わせて64にバイトを越えるようなたいへん大きなシス
テムでは、リロケーション・ベース・レジスタの書替え
のだめのプログラム・オーバーヘッドが大きく、処理速
度の低下の原因になっていた。
従って本発明の目的は、マイクロプロセッサのプログラ
ム開発およびプログラムディバックに資する時間を短縮
し、さらにその処理速度を高めることにある。
ム開発およびプログラムディバックに資する時間を短縮
し、さらにその処理速度を高めることにある。
本発明によれば、マイクロプロセッサの命令をデコード
する命令デコーダを用いて、論理アドレスが命令フェッ
チのアドレスか、データアクセスのアドレスかを区別し
、これによってグロシージャセグメント用のメモリ空間
とデータセグメント用のメモリ空間とを明確に分離した
アーキテクチャを有するマイクロプロセッサが得られる
。
する命令デコーダを用いて、論理アドレスが命令フェッ
チのアドレスか、データアクセスのアドレスかを区別し
、これによってグロシージャセグメント用のメモリ空間
とデータセグメント用のメモリ空間とを明確に分離した
アーキテクチャを有するマイクロプロセッサが得られる
。
次に本発明の一実施例を示す図面を参照して本発明の詳
細な説明する。
細な説明する。
第2図を参照すると、マイクロプロセッサ(Z80)l
は、命令をデコードする命令デコーダ2と。
は、命令をデコードする命令デコーダ2と。
リロケーション・ベース・レジスタ3と、リロケーショ
ンベースレジスタ選択回路4と演算回路5と、メインメ
モリ6とを具備している。マイクロプロセッサ1 (z
so )の論理アドレス出力は演算回路5に接続される
。リロケーションベース・レジスタ選択回路4は、命令
デコーダ2の出力フェッチ信号と、マイクロプロセッサ
1(Z80) からの出力Ml信号を用いて、どのリロ
ケーション・ベース・レジスタの内容を演算回路5に出
力するかを決定する回路である。演算回路5は、リロケ
ーション・ベース・レジスタ4からの出力とマイクロプ
ロセッサ1からの論理アドレスとを加算し。
ンベースレジスタ選択回路4と演算回路5と、メインメ
モリ6とを具備している。マイクロプロセッサ1 (z
so )の論理アドレス出力は演算回路5に接続される
。リロケーションベース・レジスタ選択回路4は、命令
デコーダ2の出力フェッチ信号と、マイクロプロセッサ
1(Z80) からの出力Ml信号を用いて、どのリロ
ケーション・ベース・レジスタの内容を演算回路5に出
力するかを決定する回路である。演算回路5は、リロケ
ーション・ベース・レジスタ4からの出力とマイクロプ
ロセッサ1からの論理アドレスとを加算し。
実アドレスを生成するものである。メインメモリ6は、
演算回路5から出力された芙アドレスにデータを書き込
むか、またはそのアドレスのデータもしくは命令を読み
出す。−万、マイクロプロセッサ1(Z80)のデータ
・バス7は、メインメモリ6および命令デコーダ2に接
続されている。命令デコーダ2は、データ・バス7がら
のデータと。
演算回路5から出力された芙アドレスにデータを書き込
むか、またはそのアドレスのデータもしくは命令を読み
出す。−万、マイクロプロセッサ1(Z80)のデータ
・バス7は、メインメモリ6および命令デコーダ2に接
続されている。命令デコーダ2は、データ・バス7がら
のデータと。
Z80から出力される制御信号である。Ml、■Q。
RD 、 RF8)1 、 I RQ倍信号用いてフェ
ッチ信号を生成するための回路である。ここで、フェッ
チ信号とu、zsoが命令の最初のオペレーション・コ
ード(以下Up コードと略す)を7エツチするM1
サイクルに引き続い−C命令の7エツチを行なうための
メモリ・リードサイクルの間ONになっているような信
号であシ、マイクロプロセッサ1(Z80)のすべての
命令に対して、予め定められたタイミングで出力される
。
ッチ信号を生成するための回路である。ここで、フェッ
チ信号とu、zsoが命令の最初のオペレーション・コ
ード(以下Up コードと略す)を7エツチするM1
サイクルに引き続い−C命令の7エツチを行なうための
メモリ・リードサイクルの間ONになっているような信
号であシ、マイクロプロセッサ1(Z80)のすべての
命令に対して、予め定められたタイミングで出力される
。
ここで、マイクロプロセッサ1 (zso )が、〔L
oad (lX+d)、n)という命令を実行する時を
例示する。この命令の実行時には、マイクロプロセラt
1(zso)のアドレスバス、データバス、制御信号等
は、他の命令実行時にも共通する一般的なタイムチャー
トを示すので、他の命令実行時におけるこれらの信号の
動きは、すべてこのタイムチャートから容易に類推でき
る。この命令は、メインメモリ6中には第4図に示され
るように格納されている。また、この命令の意味は、z
soの内部にあるLXレジスタの内容と命令中のdとい
う定数とを加算しその結果で示されるデータ・セグメン
トにnという定数番書込めというものである。
oad (lX+d)、n)という命令を実行する時を
例示する。この命令の実行時には、マイクロプロセラt
1(zso)のアドレスバス、データバス、制御信号等
は、他の命令実行時にも共通する一般的なタイムチャー
トを示すので、他の命令実行時におけるこれらの信号の
動きは、すべてこのタイムチャートから容易に類推でき
る。この命令は、メインメモリ6中には第4図に示され
るように格納されている。また、この命令の意味は、z
soの内部にあるLXレジスタの内容と命令中のdとい
う定数とを加算しその結果で示されるデータ・セグメン
トにnという定数番書込めというものである。
この命令の7エツチから実行の終了までのタイムチャー
トを第3図に示す。この図から明らかなように、この命
令のOp コードをフェッチするM1サイクルにおいて
、マイクロプロセッサ1(Z80)はMl、M几Q、R
D侶号をONにするので、プログラム・カウンタPCの
内容が論理アドレスとしてマイクロプロセッサ(Z80
)1 から出力される。
トを第3図に示す。この図から明らかなように、この命
令のOp コードをフェッチするM1サイクルにおいて
、マイクロプロセッサ1(Z80)はMl、M几Q、R
D侶号をONにするので、プログラム・カウンタPCの
内容が論理アドレスとしてマイクロプロセッサ(Z80
)1 から出力される。
リロケーションベースレジスタ選択回路4は、 Mlが
ONであるため、リロケーションベースレジスタ311
JLプロシージャセグメントを演算回路5に出力させる
。演算回路5はプロシージャセグメントと、マイクロプ
ロセッサ1 (zso )からのオフセットとを加算し
て実アドレスを作成しメインメモリ6に供給する。メイ
ンメモリ6は、そのアドレスで指定された内容をデータ
・バス7に出力する。マイクロプロセッサ1(ZSO)
は、そのデータ・バスの内容ヲOp コードとして取
り込む。
ONであるため、リロケーションベースレジスタ311
JLプロシージャセグメントを演算回路5に出力させる
。演算回路5はプロシージャセグメントと、マイクロプ
ロセッサ1 (zso )からのオフセットとを加算し
て実アドレスを作成しメインメモリ6に供給する。メイ
ンメモリ6は、そのアドレスで指定された内容をデータ
・バス7に出力する。マイクロプロセッサ1(ZSO)
は、そのデータ・バスの内容ヲOp コードとして取
り込む。
この時命令デコーダ2は、マイクロプロセッサ1(ZS
O)と同一のタイミングでデータ・バスの内容(L)D
)nを取り込み、続くメモリリフレッシ−サイクルの期
間中にこの命令がもう1バイトの(Jpコードを心安と
する命令であることを解釈する。
O)と同一のタイミングでデータ・バスの内容(L)D
)nを取り込み、続くメモリリフレッシ−サイクルの期
間中にこの命令がもう1バイトの(Jpコードを心安と
する命令であることを解釈する。
従って、マイクロプロセッサ1(ZSO)は再度M1サ
イクルを実行する。この時、論理アドレスが。
イクルを実行する。この時、論理アドレスが。
PC+IKなることを除いて、最初のM 1 cycl
eと同一の状態となる。そしてマイクロプロセッサ1(
ZSO)は、この時のデータ・バス7の内容(36)H
を2つ目のUp コードとして取り込む。この時命令
デコーダ2はマイクロプロセッサ1(ZSO) と同一
のタイミングでデータ・バスの内容を取り込み、続くリ
フレッシュサイクルの期間中に、この命令が何バイト命
令であるかをデコードし、その結果を7工ツチ伯号とし
て出力する。この場合。
eと同一の状態となる。そしてマイクロプロセッサ1(
ZSO)は、この時のデータ・バス7の内容(36)H
を2つ目のUp コードとして取り込む。この時命令
デコーダ2はマイクロプロセッサ1(ZSO) と同一
のタイミングでデータ・バスの内容を取り込み、続くリ
フレッシュサイクルの期間中に、この命令が何バイト命
令であるかをデコードし、その結果を7工ツチ伯号とし
て出力する。この場合。
さらに2バイトの命令をプロシージャ・セグメントのア
ドレス空間からフェッチしなければならないので引き続
く2つのメモリ・リード・サイクルの間フェッチ信号が
ONになり続ける。この2つのサイクルでは、マイクロ
プロセッサ1(ZSO)はM1信号をONにせずMl−
LQとRD倍信号けをONにする。そのためリロケーシ
ョン・ベースレジスタ選択回路4は、命令デコーダ2か
らの7工ツチ信号を用いて、リロケーションベースレジ
スタに対しプロシージャー・セグメントを演算回路5に
出力させ続ける。
ドレス空間からフェッチしなければならないので引き続
く2つのメモリ・リード・サイクルの間フェッチ信号が
ONになり続ける。この2つのサイクルでは、マイクロ
プロセッサ1(ZSO)はM1信号をONにせずMl−
LQとRD倍信号けをONにする。そのためリロケーシ
ョン・ベースレジスタ選択回路4は、命令デコーダ2か
らの7工ツチ信号を用いて、リロケーションベースレジ
スタに対しプロシージャー・セグメントを演算回路5に
出力させ続ける。
すべての命令フェッチが完了する4番目のサイクル(メ
モリ・リード・サイクル)の終了と同時に命令デコーダ
2はフェッチ信号’1(JFFにする。
モリ・リード・サイクル)の終了と同時に命令デコーダ
2はフェッチ信号’1(JFFにする。
するとりロケーションベースレジスタ選択回路4は、そ
の後M1ツイクルが始まるまでの間リロケーションベー
スレジスタ3に対しデータセグメントの内容を演算回路
5に出方するように働く、そして、この命令の実行サイ
クルであるメモリライトサイクル中にマイクロプロセッ
サ1(ZSO)がら出力さnた論理アドレスは演算回路
5においてデータセグメントの内容と加算され、実アド
レスが形成される。メインメモリ6はこの実アドレスに
対応した番地にデータバスの内容を書込む。
の後M1ツイクルが始まるまでの間リロケーションベー
スレジスタ3に対しデータセグメントの内容を演算回路
5に出方するように働く、そして、この命令の実行サイ
クルであるメモリライトサイクル中にマイクロプロセッ
サ1(ZSO)がら出力さnた論理アドレスは演算回路
5においてデータセグメントの内容と加算され、実アド
レスが形成される。メインメモリ6はこの実アドレスに
対応した番地にデータバスの内容を書込む。
このようにして、命令フェッチ時にはプローシージャセ
グメント用のメモリ空間を、データ・アクセス時はデー
タセグメント用のメモリ空間を提供することができる。
グメント用のメモリ空間を、データ・アクセス時はデー
タセグメント用のメモリ空間を提供することができる。
本実施例では、説明を簡単にするためにプロシージャセ
グメントとデータセグメントとは各々1つのメモリ空間
しか持たないように書いたが、これらが複数個に分割さ
れている場合には、論理アドレス−剖、をリロケーショ
ンデータレジスタ選択回路4に入力し1分割されたりロ
ケーションデータレジスタ3のうちから1つを選択する
ように設計することで対応することができる。
グメントとデータセグメントとは各々1つのメモリ空間
しか持たないように書いたが、これらが複数個に分割さ
れている場合には、論理アドレス−剖、をリロケーショ
ンデータレジスタ選択回路4に入力し1分割されたりロ
ケーションデータレジスタ3のうちから1つを選択する
ように設計することで対応することができる。
本発明は以上説明したように、命令フェッチサイクルに
使用するりロケーションベースレジスタと、命令実行サ
イクルに使用するりロケーションベースレジスタとを独
立させたことによって、命令フェッチ時と命令実行時と
のメモリ空間を明確に分離させることができる。
使用するりロケーションベースレジスタと、命令実行サ
イクルに使用するりロケーションベースレジスタとを独
立させたことによって、命令フェッチ時と命令実行時と
のメモリ空間を明確に分離させることができる。
第1図は従来のアドレス変換機構を示す図、第2図は本
発明の一実施例によるアドレス変換機構を示す図、第3
図は命令実行時のタイムチャート。 第4図は、プロシージャセグメント上での命令格納状態
を示す図である。 1・・・・・・マイクロプロセッサ、2・・川・命令デ
コーダ、3・・曲りロケーションベースレジスタ、4・
・・・・・・リロケーションベースレジスタ選択回路、
・・5・・・・・・演算回路、6・・・・・・メインメ
モリ。
発明の一実施例によるアドレス変換機構を示す図、第3
図は命令実行時のタイムチャート。 第4図は、プロシージャセグメント上での命令格納状態
を示す図である。 1・・・・・・マイクロプロセッサ、2・・川・命令デ
コーダ、3・・曲りロケーションベースレジスタ、4・
・・・・・・リロケーションベースレジスタ選択回路、
・・5・・・・・・演算回路、6・・・・・・メインメ
モリ。
Claims (1)
- 論理アドレスを出力するマイクロプロセッサと、前記マ
イクロプロセッサ動作時の命令フェッチサイクルと命令
実行サイクルとを識別する命令デコーダと、前記命令デ
コーダの識別信号によって選択される第一および第二の
りロケーションレジスタとを有し、前記マイクロプロセ
ッサが送出する前記論理アドレスと、前記選択された一
方のりロケーションレジスタの内容とを加算して実アド
レスを作成することを特徴とするマイクロプロセッサシ
ステム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP21651182A JPS59106048A (ja) | 1982-12-09 | 1982-12-09 | マイクロプロセツサシステム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP21651182A JPS59106048A (ja) | 1982-12-09 | 1982-12-09 | マイクロプロセツサシステム |
Publications (1)
Publication Number | Publication Date |
---|---|
JPS59106048A true JPS59106048A (ja) | 1984-06-19 |
Family
ID=16689572
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP21651182A Pending JPS59106048A (ja) | 1982-12-09 | 1982-12-09 | マイクロプロセツサシステム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPS59106048A (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2000357088A (ja) * | 1999-05-20 | 2000-12-26 | Samsung Electronics Co Ltd | マイクロプロセッサ及びデータ処理システム |
-
1982
- 1982-12-09 JP JP21651182A patent/JPS59106048A/ja active Pending
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2000357088A (ja) * | 1999-05-20 | 2000-12-26 | Samsung Electronics Co Ltd | マイクロプロセッサ及びデータ処理システム |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR100350568B1 (ko) | 디버그기능을수행하기위한데이타처리시스템및방법 | |
US5347636A (en) | Data processor which efficiently accesses main memory and input/output devices | |
US4954943A (en) | Data processing system | |
US5455955A (en) | Data processing system with device for arranging instructions | |
JPH0628036B2 (ja) | シミュレーシヨン方法 | |
US3775756A (en) | Programmable special purpose processor having simultaneous execution and instruction and data access | |
JPS6029126B2 (ja) | デ−タ処理装置 | |
US5255382A (en) | Program memory expander for 8051-based microcontrolled system | |
US4747045A (en) | Information processing apparatus having an instruction prefetch circuit | |
US6012138A (en) | Dynamically variable length CPU pipeline for efficiently executing two instruction sets | |
US5155838A (en) | Computer system with emulation mechanism | |
JPH0668724B2 (ja) | シミユレーシヨン方法 | |
JP2680828B2 (ja) | ディジタル装置 | |
JPS59106048A (ja) | マイクロプロセツサシステム | |
US5187782A (en) | Data processing system | |
KR950006585B1 (ko) | 마이크로프로그램 제어장치 및 그 제어방법 | |
JP2504191B2 (ja) | マイクロプロセッサ | |
JP2000029508A (ja) | プログラマブルコントローラ | |
JPS6316350A (ja) | マイクロプロセッサ | |
JPH0683986A (ja) | シングルチップ・マイクロコンピュータ | |
JP2743947B2 (ja) | マイクロプログラム制御方式 | |
JP3474347B2 (ja) | マイクロコンピュータの命令解読部 | |
JPS6015969B2 (ja) | マイクロ命令アドレス生成方式 | |
JPH05250156A (ja) | Riscプロセッサ | |
JPH0131218B2 (ja) |