JPS6091461A - Expanding device for data address space of microprocessor - Google Patents

Expanding device for data address space of microprocessor

Info

Publication number
JPS6091461A
JPS6091461A JP19805383A JP19805383A JPS6091461A JP S6091461 A JPS6091461 A JP S6091461A JP 19805383 A JP19805383 A JP 19805383A JP 19805383 A JP19805383 A JP 19805383A JP S6091461 A JPS6091461 A JP S6091461A
Authority
JP
Japan
Prior art keywords
instruction
address
extended
code
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.)
Granted
Application number
JP19805383A
Other languages
Japanese (ja)
Other versions
JPH0154729B2 (en
Inventor
Hiroshige Ishikawa
石川 博茂
Takaaki Uno
鵜野 高明
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.)
Sharp Corp
Original Assignee
Sharp Corp
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 Sharp Corp filed Critical Sharp Corp
Priority to JP19805383A priority Critical patent/JPS6091461A/en
Publication of JPS6091461A publication Critical patent/JPS6091461A/en
Publication of JPH0154729B2 publication Critical patent/JPH0154729B2/ja
Granted legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/06Addressing a physical block of locations, e.g. base addressing, module addressing, memory dedication

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Executing Machine-Instructions (AREA)

Abstract

PURPOSE:To expand a data address space with a simple constitution by using the control signal which is produced in response to execution of a definition instruction train of a CPU to an access control signal of an extended address memory. CONSTITUTION:An instruction multiplexer 11 connects logically an instruction input to an instruction output in a period while a CPU is executing a defined instruction. An address multiplexer 17 connects logically an address input to an address output. While a timing generating circuit 14 inactivates an extension instruction execution informing signal. When the CPU fetches an undefined instruction, i.e., an extension instruction, a defined instruction train in an instruction ROM18 is delivered. An extension instruction code is latched by an instruction register 12 and decoded by an instruction decoder 13. Based on the result of this decoding, a desired timing signal is produced by the circuit 14.

Description

【発明の詳細な説明】 く技術分野〉 本発明は、マイクロコンピュータの中央処理装置(以下
CPUと呼ぶ)のデータアドレス空間を拡張するだめの
装置(以下EAPと呼ぶ)に関するものである。
DETAILED DESCRIPTION OF THE INVENTION Technical Field The present invention relates to a device (hereinafter referred to as EAP) for expanding the data address space of a central processing unit (hereinafter referred to as CPU) of a microcomputer.

〈従来技術〉 第1図は、従来のマイクロコンピュータシステムにおけ
るCPUIとメモリ2の結線関係を概念的に示したもの
である。ある種のCPtJたとえばZ80では、メモリ
は物理的にコード、データ。
<Prior Art> FIG. 1 conceptually shows the connection relationship between a CPUI and a memory 2 in a conventional microcomputer system. In some CPtJs, for example the Z80, memory is physically used for code, data.

スタックの3つのメモリに分離されているわけではない
が、論理的には一般にとのように分離できると考えてよ
い。データ信号線3上には、コードやスタックメモリ2
cとCPU1間で送受されるデータが乗せられる。アド
レス信号線4上には、メモリ2をアドレス指定するだめ
のアドレスが乗せられる。ある種のCPU例えばZ80
01では、アドレス信号線4とデータ信号線3を共用し
、時分割的に使用しているものもあるが、これも概念的
には第1図によって表わすものとする。制御信この方式
では、アドレス信号線4のビット数と命令のアドレシン
グモードによって、アドレス指定可能なメモリ2の範囲
、いわゆるメモリアドレス空間の大きさが固定化してし
まい、マイクロコンピュータの応用分野によっては使い
にくいという欠点が出てくる。例えば28001 CP
Uでは、アドレス指定の方法にセグメントアドレスとい
う考え方を採用したため、セグメント境界において、メ
モリアドレスの連続性が保たれず多量の連続アドレスを
必要とするような応用には不向きである。
Although the stack is not separated into three memories, logically it can generally be considered that they can be separated like this. On the data signal line 3, the code and stack memory 2
Data transmitted and received between c and the CPU 1 is loaded. An address for addressing the memory 2 is placed on the address signal line 4. Some kind of CPU e.g. Z80
01, the address signal line 4 and the data signal line 3 are shared and used in a time-sharing manner, but this is also conceptually represented by FIG. 1. Control signals In this method, the addressable range of memory 2, the size of the so-called memory address space, is fixed depending on the number of bits of address signal line 4 and the addressing mode of the instruction. The drawback is that it is difficult. For example 28001 CP
Since U adopted the idea of segment addresses as an addressing method, the continuity of memory addresses cannot be maintained at segment boundaries, making it unsuitable for applications that require a large number of consecutive addresses.

に第2図に示すように、セグメントアドレスSNO〜S
N6とオフセットアドレスAO〜A15の合計23本の
アドレス信号線4を用いている。しかし、オフセットア
ドレスとセグメントアドレスの間には、オフセットアド
レスがその最大値65535番地を越えると、セグメン
トアドレスが桁上げされるという算術的関係を設けてい
ない。従って、セグメント境界を越えてメモリをアクセ
スする場合には、常にプログラムでセグメントアドレス
を変える操作をしなければならない。これは処理速度の
低下を招く原因となる。
As shown in Figure 2, segment addresses SNO to S
A total of 23 address signal lines 4 including N6 and offset addresses AO to A15 are used. However, there is no arithmetic relationship between the offset address and the segment address such that the segment address is carried when the offset address exceeds its maximum value of address 65535. Therefore, when accessing memory across segment boundaries, the program must always change the segment address. This causes a decrease in processing speed.

lデータ単位が65536バイトを越え、複数のセグメ
ントにわたってのデータを扱う例として、例えばマトリ
ックス演算におけるマトリックス情報や、ワードプロセ
シングにおけるテキスト情報。
Examples of handling data in which a data unit exceeds 65,536 bytes and span multiple segments include matrix information in matrix operations and text information in word processing.

データ集録装置における計測データなどがある。Examples include measurement data from a data acquisition device.

これらのデータの処理においては一般に次の事項が要求
される。
Processing of these data generally requires the following:

■ 可変長データの取扱い ■ データのランダムアクセス 第2図のセグメントアドレス方式では、■や■に際して
通常プログラムによるセグメントアドレスの書き換え操
作を必要とする。
■ Handling of variable length data ■ Random access of data In the segment address method shown in FIG. 2, it is necessary to rewrite the segment address by a normal program in case of ■ or ■.

上述のように1デ一タ単位が65536バイトを越す応
用は多いが、プログラムつまりコードメモIJ 2 a
が65536バイトを越す応用は一般に少ない。また6
5536バイトを越える応用があったとしても、プログ
ラムの記述は論理的なものであり、複数のセグメントに
渡ってプログラム(コード)が配置されるのは事前に知
ることができるので、セグメント通過時のみセグメント
アドレス書き換えの命令を置けばよく、プログラム全体
に占めるこの部分のメモリ占有の比率もプログラム実行
時間の比率も問題にならない。従って、プログラムに関
する限り、複数セグメント使用による実行処理速度の低
下は問題にならない。
As mentioned above, there are many applications where one data unit exceeds 65,536 bytes, but the program or code memo IJ2a
There are generally few applications in which the data exceeds 65,536 bytes. Also 6
Even if there is an application that exceeds 5,536 bytes, the program description is logical, and it is possible to know in advance that the program (code) will be allocated across multiple segments, so it can only be used when passing through a segment. It is sufficient to place an instruction to rewrite a segment address, and the ratio of memory occupation of this part to the entire program and the ratio of program execution time do not matter. Therefore, as far as the program is concerned, the reduction in execution processing speed due to the use of multiple segments is not a problem.

〈発明の目的〉 本発明は、マイクロプロセッサのこのようなデータアド
レス指定上の欠点を補うために考案されたものである。
<Object of the Invention> The present invention has been devised to compensate for such deficiencies in data addressing of microprocessors.

〈実施例〉 第3図は、本発明によるデータアドレス空間拡張装置(
EAP)6をマイクロコンピュータシステムに組み込ん
だ場合の、CPUI、メモリ2との結線図を概念的に示
したものである。アドレス信号線4.データ信号線3.
制御信号線5のもつ意味は第1図の説明と同じである。
<Embodiment> FIG. 3 shows a data address space expansion device (
This is a conceptual diagram showing a connection diagram between the CPU I and the memory 2 when the EAP 6 is incorporated into a microcomputer system. Address signal line 4. Data signal line 3.
The meaning of the control signal line 5 is the same as that explained in FIG.

第3図において、データメモリ2bは、CPUIの命令
セット中のデータメモリ参照命令によってアクセスされ
、拡張アドレスデータメモリ2dば、CPU Iにとっ
ては未定義命令である拡張命令によってアクセスされる
。拡張アドレスデータメモリ2dが兼用できる場合、デ
ータメモリ2bは省略しでもよい。
In FIG. 3, the data memory 2b is accessed by a data memory reference instruction in the instruction set of the CPU I, and the extended address data memory 2d is accessed by an extended instruction that is an undefined instruction for the CPU I. If the extended address data memory 2d can be used also, the data memory 2b may be omitted.

CPUIが定義命令を実行している期間、EAP6のI
IとIOl及びAIとAOはそれぞれ論理的に結線され
、第3図は第1図と同じ動作をする。
While the CPUI is executing the definition command, the EAP6 I
I and IOl and AI and AO are each logically connected, and the operation in FIG. 3 is the same as in FIG. 1.

CPUIが未定義命令をフェッチすると、この未定義コ
ードはIIからEAP6に取り込まれるが、CPUIに
は未定義コードの代わりに、あらかじめ未定義コードに
対応してEAP 6内部に用(7) 意されている定義命令列がIOを経由して供給される。
When the CPUI fetches an undefined instruction, this undefined code is fetched from the II to the EAP6, but instead of the undefined code, the CPUI has prepared (7) in the EAP6 in advance in response to the undefined code. Definition instruction strings are supplied via IO.

CPUIはこの■0から与えられる定義命令列を実行す
ることにより、拡張アドレスデータメモリ2dをアクセ
スするために必要な制御信号を出力する。
By executing the definition instruction sequence given from this 0, the CPU outputs control signals necessary to access the extended address data memory 2d.

EAP 6は取り込んだ上述の未定義コードを拡張命令
と解釈し、拡張命令のソース5rc、’!jだはデステ
ィネーションdstとなる拡張アドレスデータメモリ2
dのアドレスを出力する。まだEAP 6はこの間、メ
モリ2に拡張アドレス出力通知信号EXAENBを出力
する。
EAP 6 interprets the imported undefined code mentioned above as an extension instruction, and the source of the extension instruction 5rc,'! Extended address data memory 2 is the destination dst.
Outputs the address of d. During this time, the EAP 6 still outputs the extended address output notification signal EXAENB to the memory 2.

拡張命令には次の機能をもつ命令が含まれる。Extended instructions include instructions with the following functions.

■ LD R、src −== Load 1nto 
Register■ LD dst、 R−Load 
intoMemory(5tore ) 第1の命令は、EAP 6のもつアドレシングモードに
よって決められる拡張アドレスデータメモリ2d内のメ
モリアドレスの内容をCPUIの内部レジスタヘロード
する命令であり、第2の命令つアドレシングモードによ
って決められる拡張アドレスデータメモリ2d内のメモ
リアドレスヘスドアする命令である。
■ LD R, src -== Load 1nto
Register ■ LD dst, R-Load
intoMemory (5tore) The first instruction is an instruction to load the contents of the memory address in the extended address data memory 2d determined by the addressing mode of the EAP 6 into the internal register of the CPUI, and the second instruction This is an instruction to open a memory address in the extended address data memory 2d.

拡張命令は、拡張アドレスデータメモリ2dのアクセス
制御信号として、上述のようにCPU 1の定義命令列
実行に伴なって発生する制御信号を用いているので、E
AP 6側にノ・−ドウエアを用意すれば、拡張命令に
も定義命令のアドレシングモードはすべてもたせること
ができる。
The extended instruction uses the control signal generated as the CPU 1 executes the defined instruction sequence as described above as the access control signal for the extended address data memory 2d.
By preparing hardware on the AP 6 side, extended instructions can also have all the addressing modes of the definition instructions.

既述のよう々大容量のデータメモリを扱う応用では、次
のアドレシングモードは特に有効である。
The following addressing modes are particularly effective in applications that handle large-capacity data memories as described above.

■ インデックスアドレシング ■ ペースアドレシング ■ 間接アドレシング 第4図はEAP6内のブロック図である。1例としてC
PUIをz8001とした場合の本装置について説明す
る。
■ Index addressing ■ Pace addressing ■ Indirect addressing FIG. 4 is a block diagram within the EAP6. As an example, C
This device will be described when the PUI is z8001.

レジスタ演算ユニットRALUI5は、インデックスレ
ジスタ、ペースレジスタ、IJ[レジスタとスタは、双
方向パスとなっている命令出力IOと制御入力CIを動
作させることにより、CPUの入力命令IN、出力命令
OUTによって参照される。
The register operation unit RALUI5 operates the index register, pace register, IJ [register and star] by operating the instruction output IO and control input CI, which are bidirectional paths, so that they can be referenced by the CPU's input instruction IN and output instruction OUT. be done.

レジスタアクセス制御回路RA、 C20は上記レジス
タ演算ユニットRALUI 5中のレジスタや後述する
プログラムカウンタPC16の値をCPUIから参照可
能とする。
The register access control circuits RA and C20 allow the registers in the register operation unit RALUI 5 and the values of the program counter PC16, which will be described later, to be referenced from the CPUI.

CPUIが定義命令を実行している期間、命令マルチプ
レクサIMI 1は、論理的に命令入力TIと命令出力
10を結線し、アドレスマルチプレクサAM+7は、論
理的にアドレス入力AIとアドレス出力AOを結線し、
タイミング発生回路TG14は、拡張命令実行通知信号
EXIENBを非アクティブにする。
While the CPUI is executing a definition instruction, the instruction multiplexer IMI 1 logically connects the instruction input TI and the instruction output 10, the address multiplexer AM+7 logically connects the address input AI and the address output AO,
The timing generation circuit TG14 makes the extended instruction execution notification signal EXIENB inactive.

CPUIが未定義命令すなわち拡張命令をフェッチする
と、とのEAP6はこの命令コードに代えて命令ROM
 ] 8中の定義命令列を出力する。
When the CPU fetches an undefined instruction, that is, an extended instruction, the EAP6 stores the instruction ROM in place of this instruction code.
] Output the definition instruction sequence in 8.

定義命令列は、CPU lの定義命令の組み合せから構
成され、CPU Iによる定義命令列の実行は、而 未定義命令の前後でCPU Iの内部状態に影響を及は
さないようになっている。
The definition instruction sequence is composed of a combination of definition instructions of CPU I, and the execution of the definition instruction sequence by CPU I is designed so that it does not affect the internal state of CPU I before and after the undefined instruction. .

EAP6は、取り込んだ拡張命令コードを命令レジスタ
IRI2にラッチし、命令レコーダID13で解読する
。解読の結果、次の事項が決定し、必要なタイミング信
号がタイミング発生回路TG14において作成される。
The EAP6 latches the fetched extended instruction code into the instruction register IRI2 and decodes it using the instruction recorder ID13. As a result of the decoding, the following matters are determined, and necessary timing signals are generated in the timing generation circuit TG14.

(1)機能 (11)アドレシングモード On) ソースレジスタ、デスティネーションレジスタ (1)はロード命令とストア命令の区別であり、(11
)はインデックス、ペース、間接の指定である。(ii
i)はソース又はデスティネーションとなるCPUレジ
スタRO〜R15の指定である。
(1) Function (11) Addressing mode On) Source register and destination register (1) distinguish between load and store instructions; (11)
) is a specification of index, pace, and indirection. (ii
i) is the designation of the CPU registers RO to R15 as the source or destination.

第5図は拡張命令のフォーマットの例である。FIG. 5 is an example of the format of an extended instruction.

命令語長は、レジスタ間接アドレシングは1語。The instruction word length is one word for register indirect addressing.

インデックスとペースアドレシングモードは3語になっ
ている。
Index and pace addressing modes are three words.

ログラムブロックより構成されている。各拡張命令のデ
コードに従って、命令アクセス制御回路IACI9が動
作し、対応するプログラムブロックがシーケンシャルに
アクセスされ、命令マルチプレクサTM11を経由して
命令出力10へ出力する。定義命令列は次のために用意
されている。
It consists of program blocks. In accordance with the decoding of each extended instruction, the instruction access control circuit IACI9 operates, and the corresponding program block is sequentially accessed and output to the instruction output 10 via the instruction multiplexer TM11. Definition instruction strings are provided for the following purposes.

1、拡張命令の第2語、第3語のアクセスタイミングを
CPUIに発生させる 2、拡張命令の各アドレシングモードを擬似的にCPU
Iに発生させる 3 拡張命令実行時にCPU l内のソースレジスタか
らデータを出力させる 4 拡張命令実行時にCPU l内のソースレジスタに
データを取り込む 拡張アドレスの計算はアドレシングモードによって異な
る。レジスタ間接アドレシングの場合、レジスタ演算ユ
ニッ)RALUI 5内の特定レジスタを間接レジスタ
とし、その内容をプログラムカウンタPC+6にロード
する。インデックスアドレシングモードの場合、レジス
タ演算ユニット(2) RALUl5内の特定レジスタをインデックスレジスタ
とする。インデックスレジスタの内容とEAP6に取り
込まれた命令の第2語を基準アドレス(上位)、第3語
を基準アドレス(下位)とする値をレジスタ演算ユニッ
)RALUl 5で加算し、結果をプログラムカウンタ
PCI6にロードする。ペースアドレシングモードの場
合、レジスタ演算ユニットRALUls内の特定レジス
タをペースレジスタとし、この内容とEAPK取り込ま
れた命令の第2語を上位、第3語を下位とする偏移値を
レジスタ演算ユニッ) RALUで加算し、結果をプロ
グラムカウンタPC16にロードする。
1. Generate the access timing for the second and third words of the extended instruction on the CPU 2. Simulate each addressing mode of the extended instruction on the CPU
3. Cause data to be output from the source register in CPU 1 when an extended instruction is executed. 4. Load data into the source register in CPU 1 when an extended instruction is executed. The calculation of the extended address differs depending on the addressing mode. In the case of register indirect addressing, a specific register in the register operation unit (RALUI 5) is used as an indirect register, and its contents are loaded into the program counter PC+6. In the case of index addressing mode, a specific register in register operation unit (2) RALU15 is used as an index register. The content of the index register and the value with the second word of the instruction taken into the EAP6 as the reference address (upper) and the third word as the reference address (lower) are added by the register operation unit (RALU1) 5, and the result is added to the program counter PCI6. Load into. In the case of pace addressing mode, a specific register in the register arithmetic unit RALUls is set as a pace register, and this content and a deviation value with the second word of the EAPK fetched instruction as the upper and the third word as the lower are used as the register arithmetic unit (RALU). and load the result into the program counter PC16.

いずれのアドレシングモードの場合も、ロードされたプ
ログラムカウンタPCI6の内容は、拡張アドレスの出
力タイミングの期間、アドレスマルチプレクサAM+7
を経由してアドレス出力AOに出力する。拡張アドレス
出力通知信号EXAENBは拡張アドレスの出力に同期
してアクティブになる。またプログラムカウンタPC+
6の内容は、拡張アドレス出力後インクリメント又はデ
クリメントされる。
In either addressing mode, the contents of the loaded program counter PCI6 are stored in the address multiplexer AM+7 during the extended address output timing period.
Output to address output AO via . The extended address output notification signal EXAENB becomes active in synchronization with the output of the extended address. Also program counter PC+
The contents of 6 are incremented or decremented after the extended address is output.

第6図は、インデックスアドレシングモードをもつ拡張
命令のタイミングの一例である。この命令は、°ソース
レジスタR4の内容を拡張アドレスへ書き込む機能をも
ち、コードメモリ(第3図2a)上でアドレスm−2番
地の定義命令41−1とアドレスm+6番地の定義命令
#I−2にはさまれて置かれているとする。この3語か
らなる拡張命令のフェッチは定義命令+、1によって起
動される。起動された拡張命令のコードはEAPBの命
令レジスタIR+2に取り込まれ、CPUIにはこのコ
ードに代えて、LD R2,R2の命令コードが与えら
れる。
FIG. 6 is an example of the timing of an extended instruction with index addressing mode. This instruction has the function of writing the contents of the source register R4 to the extended address, and writes the definition instruction 41-1 at address m-2 and the definition instruction #I-1 at address m+6 on the code memory (Fig. 3 2a). Suppose that it is placed between 2. Fetching of this extended instruction consisting of three words is activated by definition instructions + and 1. The code of the activated extended instruction is taken into the instruction register IR+2 of EAPB, and the instruction code of LD R2, R2 is given to the CPUI instead of this code.

拡張命令の第2語の取り込みは、上述のLDR2゜R2
命令によって起動される。同様の動作繰返しにより、拡
張命令の第2語、第3語のレジスタ演算ユニッ)RAL
Ul 5への取り込みと次命令の起動が行なわれる。こ
の場合、命令ROM + 8に置かれる定義命令コード
列は次のようになる。
The second word of the extended instruction is captured using the above-mentioned LDR2°R2.
Activated by command. By repeating the same operation, the register operation unit (RAL) of the second and third words of the extended instruction is
The data is taken into Ul 5 and the next instruction is activated. In this case, the defined instruction code string placed in instruction ROM+8 is as follows.

LD R2,R2 L、D R2,R2 LD ■R6,R4 第3の命令は、メモリ読込みとメモリ書込みの二つのC
PUマシン状態をもつ命令である。メモリ読み込みサイ
クルで拡張命令の第3語をレジスタ演算ユニットRAL
Ul 5に取り込み、メモリ書キ込みサイクルでソース
レジスタR4の内容を上記レジスタ演算ユニットRAL
UI 5でアドレス計算された拡張アドレスへ書込む。
LD R2, R2 L, D R2, R2 LD ■R6, R4 The third instruction is a memory read and a memory write.
This is an instruction with PU machine state. The third word of the extended instruction is sent to the register operation unit RAL in the memory read cycle.
The contents of the source register R4 are loaded into the register operation unit RAL in the memory write cycle.
Write to the extended address calculated in UI 5.

なお上述のアドレス計算が拡張アドレスの出力タイミン
グまでに完了しない場合、CPUタイミング調整信号T
Cをアクティブにし、CPUIをウェイト又はストップ
させる。
Note that if the above address calculation is not completed by the output timing of the extended address, the CPU timing adjustment signal T
Activate C to wait or stop the CPUI.

〈発明の効果〉 以上のように本発明は、処理速度の低下を招くことなく
、拡張命令によって指定されるメモリアドレス(拡張ア
ドレス)を算出できるものであり、かつ拡張命令は、拡
張アドレスメモリのアクセス制御信号として、CPUの
定義命令列実行に伴って発生する制御信号を用いるので
、簡単な構成で、]:) 拡張1ρ腎にも定義命令のすべてのアドレシングモード
をもたせることができ、有用なデータアドレス空間拡張
装置が提供できる。
<Effects of the Invention> As described above, the present invention is capable of calculating a memory address (extended address) specified by an extended instruction without causing a decrease in processing speed, and the extended instruction can calculate the memory address (extended address) specified by an extended instruction. Since the access control signal is a control signal generated when the CPU executes the definition instruction sequence, the configuration is simple, and the extended 1ρ kidney can also have all the addressing modes of the definition instruction, making it useful. A data address space expansion device can be provided.

【図面の簡単な説明】[Brief explanation of the drawing]

第1図は従来のマイクロコンピュータシステムにおける
CPUとメモリの結線関係を概念的に示す図、第2図は
従来のセグメントアドレス方式を説明する図、第3図は
本発明装置を組み込んだ場合の結線関係を概念的に示す
図、第4図は本発明装置の一実施例を示す内部ブロック
図、第5図は拡張フォーマットの例を示す図、第6図は
拡張命令のタイミングの一例を示す図である。
Fig. 1 is a diagram conceptually showing the wiring relationship between the CPU and memory in a conventional microcomputer system, Fig. 2 is a diagram explaining the conventional segment addressing method, and Fig. 3 is the wiring diagram when the device of the present invention is incorporated. 4 is an internal block diagram showing an embodiment of the device of the present invention; FIG. 5 is a diagram showing an example of an extended format; FIG. 6 is a diagram showing an example of the timing of extended instructions. It is.

Claims (1)

【特許請求の範囲】 1、少なくとも次の各項構成、 (a)命令入力からの命令コード列を読み込み、この命
令コード列の中から、外部に接続されたCPUの定義さ
れた命令セットのコード(定義命令コードと呼ぶ)以外
のコード(未定義命令コードと呼ぶ)を検出する能力を
有し、命令入力が定義命令コードの場合には該定義命令
コードを命令出力に直接出力し、未定義命令コードの場
合には命令ROMからの命令列を前記未定義コードに代
えて命令出力に出力する命令マルチプレクサと、 (b) 前記未定義コードに代えて、1語または複数語
からなる拡張命令の命令語を読み込むために必要な制御
信号と、上記拡張命令のアドレシングモードに伴なうメ
モリアクセスに必要な制御信号を前記CPUのメモリア
クセス制御信号から得るため、及び前記拡張命令のソー
スレジスタ又はデスティネーションレジスタとしてCP
U内部レジスタの一つを指定するため、複数の定義命令
より構成された定義命令コード列を前記命令マルチプレ
クサに出力する命令ROMと、 (c)前記拡張命令によって指定されるメモリアドレス
(拡張アドレスと呼ぶ)を算出する機能を有するレジス
タ演算ユニットと、 (d) 前記拡張アドレスをアドレスマルチプレクサに
出力後、上記拡張命令コードに従って該拡張アドレス値
をインクリメントまたはデクリメントすることによって
更新し、更新された拡張アドレス値を保持する機能を有
するプログラムカウンタと、 (e)前記命令マルチプレクサの命令入力が定義命令コ
ードの場合には、アドレス入力の値をアドレス出力に直
接出力し、未定義命令すなわち拡張命令の場合には上記
プログラムカウンタから出力する更新前の拡張アドレス
値をアドレス出力に出力するアドレスマルチプレクサと
、 を備えて々ることを特徴とするマイクロプロセッサのデ
ータアドレス空間拡張装置。
[Scope of Claims] 1. At least the following items: (a) Read an instruction code string from an instruction input, and extract from this instruction code string a code of a defined instruction set of an externally connected CPU. It has the ability to detect codes (called undefined instruction codes) other than (called defined instruction codes), and when the instruction input is a defined instruction code, it outputs the defined instruction code directly to the instruction output, and In the case of an instruction code, an instruction multiplexer outputs an instruction string from the instruction ROM to the instruction output instead of the undefined code; In order to obtain the control signals necessary for reading the instruction word and the control signals necessary for memory access accompanying the addressing mode of the extended instruction from the memory access control signal of the CPU, and the source register or destination register of the extended instruction. CP as a nation register
(c) an instruction ROM that outputs a definition instruction code string composed of a plurality of definition instructions to the instruction multiplexer in order to specify one of the U internal registers; (c) a memory address (extension address and (d) after outputting the extended address to an address multiplexer, updating the extended address value by incrementing or decrementing the extended address value according to the extended instruction code; (e) When the instruction input of the instruction multiplexer is a defined instruction code, the value of the address input is directly output to the address output, and in the case of an undefined instruction, that is, an extended instruction, A data address space expansion device for a microprocessor, comprising: an address multiplexer that outputs an unupdated expansion address value outputted from the program counter to an address output;
JP19805383A 1983-10-21 1983-10-21 Expanding device for data address space of microprocessor Granted JPS6091461A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP19805383A JPS6091461A (en) 1983-10-21 1983-10-21 Expanding device for data address space of microprocessor

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP19805383A JPS6091461A (en) 1983-10-21 1983-10-21 Expanding device for data address space of microprocessor

Publications (2)

Publication Number Publication Date
JPS6091461A true JPS6091461A (en) 1985-05-22
JPH0154729B2 JPH0154729B2 (en) 1989-11-21

Family

ID=16384744

Family Applications (1)

Application Number Title Priority Date Filing Date
JP19805383A Granted JPS6091461A (en) 1983-10-21 1983-10-21 Expanding device for data address space of microprocessor

Country Status (1)

Country Link
JP (1) JPS6091461A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS623353A (en) * 1985-06-28 1987-01-09 Toshiba Corp Address space expanding device

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS623353A (en) * 1985-06-28 1987-01-09 Toshiba Corp Address space expanding device

Also Published As

Publication number Publication date
JPH0154729B2 (en) 1989-11-21

Similar Documents

Publication Publication Date Title
US4937738A (en) Data processing system which selectively bypasses a cache memory in fetching information based upon bit information of an instruction
EP0372841B1 (en) Arrangement for and method of locating ROM in computer memory space
US4446517A (en) Microprogram memory with page addressing and address decode in memory
JP2680828B2 (en) Digital device
JPS6091461A (en) Expanding device for data address space of microprocessor
JP3507193B2 (en) Load / store instruction processor
JPS5821300B2 (en) Memory address information
JPH0212358A (en) Data transfer system
JP2924004B2 (en) Instruction code transfer method
JPS60193046A (en) Detecting system for instruction exception
JPS626341A (en) Information processor
JPS61161560A (en) Memory device
JPS6047617B2 (en) information processing equipment
JPH0259495B2 (en)
JPH0226252B2 (en)
JPS6218934B2 (en)
JPH10105475A (en) Parity memory device and parity memory circuit
JPH04112251A (en) Microcomputer
JPS6036614B2 (en) information processing equipment
JPH0317743A (en) Microprogram writing system
JPS62168235A (en) Data processor
JPH0778722B2 (en) Register file method
JPH0319570B2 (en)
JPS62217483A (en) Memory device
JPS62219390A (en) Fifo memory