JPH0376504B2 - - Google Patents

Info

Publication number
JPH0376504B2
JPH0376504B2 JP60092495A JP9249585A JPH0376504B2 JP H0376504 B2 JPH0376504 B2 JP H0376504B2 JP 60092495 A JP60092495 A JP 60092495A JP 9249585 A JP9249585 A JP 9249585A JP H0376504 B2 JPH0376504 B2 JP H0376504B2
Authority
JP
Japan
Prior art keywords
address
segment
shift amount
register
bits
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
JP60092495A
Other languages
English (en)
Other versions
JPS61250753A (ja
Inventor
Naoyuki Nishimura
Tomohito Shibata
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.)
Fujitsu Ltd
Original Assignee
Fujitsu 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 Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP9249585A priority Critical patent/JPS61250753A/ja
Priority to DE8686902895T priority patent/DE3683123D1/de
Priority to PCT/JP1986/000219 priority patent/WO1986006521A1/ja
Priority to US06/935,681 priority patent/US4796177A/en
Priority to EP86902895A priority patent/EP0220327B1/en
Publication of JPS61250753A publication Critical patent/JPS61250753A/ja
Publication of JPH0376504B2 publication Critical patent/JPH0376504B2/ja
Granted legal-status Critical Current

Links

Landscapes

  • Executing Machine-Instructions (AREA)

Description

【発明の詳細な説明】 〔概要〕 セグメント起点アドレスとオフセツトとを加算
して物理アドレスを生成するアドレス方式におい
て、従来はセグメントレジスタの内容を一定量シ
フトして加算していた。
そのためアドレス空間、セグメント起点アドレ
スが固定化されていた。
本発明では、セグメントレジスタの所定のビツ
ト領域にシフト量を記入することにより、アドレ
ス空間の拡張、セグメント起点アドレスの任意設
定を可能とするものである。
〔産業上の利用分野〕
本発明はプロセツサにおけるアドレス拡張方式
に関する。
近年、メモリアクセス方式としてアドレス空間
を一定の論理的なアドレス空間(以下セグメント
と称する)に分割し、セグメントの起点アドレス
と相対アドレス(オフセツト)との和で物理アド
レスを生成する方式が採用されている。
例えば16ビツトプロセツサでは、セグメントレ
ジスタは16ビツトであり、64kバイトのアドレ
ス空間が直接指定出来るが、その64kバイトをセ
グメントの取りうる空間とし、その起点アドレス
とオフセツトとを加算して物理アドレスとして送
出している。
しかし16ビツトで指定できる起点アドレスでは
アドレス空間に限界があるため、プロセツサ内で
その16ビツトの最下位ビツトに一定数の0を付加
(シフト)しており、例えば4ビツトシフトして
起点アドレスを20ビツト(1Mバイト)に拡張し
ている。
上記方式でシフト量を増加すれば最大32ビツト
のアドレス空間が得られるが、セグメント間隔が
拡大し、シフト量が一定のためプログラム単位ご
とに格納するセグメントが任意に設定できないと
いう問題があつた。
そのためアドレス空間が拡張可能であり、任意
にセグメントを設定し得るアドレス拡張方式が求
められている。
〔従来の技術〕
第3図aはプロセツサの機能ブロツク図、第3
b図は物理アドレス生成方式を示すブロツク図で
ある。
第3図aにおいて、1は論理演算部ALU、2
は実行中のセグメントの起点アドレスを格納する
セグメントレジスタ、3は実行中のオフセツトを
表すプログラムカウンタ、4は制御レジスタ等複
数のレジスタ類を表すもの、5は加算器、6はア
ドレス信号を一時格納するアドレスバツフア、7
はデータバツフア、8は命令を解読するインスト
ラクシヨンデコーダ、100は内部バス、101
はアドレスバス、102はデータバスである。
上記プロセツサにおいて、セグメントレジスタ
2とプログラムカウンタ3とを加算器5で加算し
て生成した物理アドレスをアドレスバツフア6を
通じてメモリをアクセスし、該メモリに格納され
ている命令、データ等を読取り、インストラクシ
ヨンデコーダ8で命令を解読したのち、指定の論
理演算を行う。
続いてプログラムカウンタ3を次のアドレスに
設定し、上記手順により処理を続行する。
以上の動作において、セグメントレジスタ2、
プログラムカウンタ3の初期値は実行を依頼する
プログラムに移すときオペレーテイングシステム
OSにより初期設定されるものである。
プロセツサが16ビツトマシンであると、通常セ
グメントレジスタ2、プログラムカウンタ3、レ
ジスタ類4は16ビツトで構成されており、IMバ
イトのアドレス空間はセグメントレジスタ2を4
ビツトシフトし、プログラムカウンタ3と加算し
ている。
第3図bは上記加算処理の詳細を表したもの
で、セグメントレジスタ2の最下位ビツト
(LSB)に4ビツトの0が付加されてプログラム
カウンタ3の値と加算されている。その結果セグ
メント起点アドレスは20ビツトに拡張され且つ4
ビツト即ち16バイトごと、IMバイトまで選択す
ることができる。
〔発明が解決しようとする問題点〕
以上説明したように制御装置の記憶容量の増設
によるアドレス空間の拡張はシフト量を増大すれ
ばよいが、従来の方式ではシフト量が一定であ
り、またシフト量を最大に設定するとセグメント
起点アドレスの取りうるアドレスの間隔が増大す
る。従つて最大のアドレス空間を使用しない用途
ではプログラム単位に格納するセグメントの選択
幅が狭くなつてメモリに無駄が生じる等の問題点
があつた。
そのため本発明の目的は任意にシフト量が設定
できるアドレス拡張方式を提供することにある。
〔問題点を解決するための手段〕
上記問題点の解決は、シフト量を設定するビツ
ト領域9を上記セグメントレジスタ2内に設けて
おき、上記セグメントレジスタ2内のセグメント
起点アドレスを該ビツト領域9に設定されたシフ
ト量だけシフトさせる手段11と、シフトされた
セグメント起点アドレスとオフセツトとを加算す
る手段12をを備えることを特徴とするアドレス
拡張方式によつて達成される。
〔作用〕
第1図は、本発明の原理説明図を示したもので
ある。本発明では、セグメントレジスタ2内にシ
フト量を設定するためのビツト領域9を設けてお
き、このビツト領域9には、各プログラムあるい
はオペレーテイングシステムにより任意のシフト
量を設定する。そして第1図中矢印で示したよう
に、セグメントレジスタ2内の上記ビツト領域9
およびそれ以外の領域からそれぞれシフト量およ
びセグメント起点アドレスがシフト手段11に取
り込まれる。シフト手段11は、ビツト領域9内
に設定されたシフト量を読み取つてその指令に基
づいてセグメント起点アドレスを上記シフト量だ
けシフトさせ、加算手段12において、シフトさ
れたセグメント起点アドレスとプログラムカウン
タ3内に格納されているオフセツトを加算する。
例えば最下位の4ビツトをシフト量として設定
すれば、0,1,2……16ビツトシフト指定可能
であり、また4,8,12,16ビツトシフトに対応
してそれぞれ16,256,4k,64kバイトおきに起
点アドレスが設定できる。
〔実施例〕
本発明の実施例を図を用いて説明する。
第2図は本発明のプロセツサのブロツク図であ
る。
図中、11はセグメントレジスタ2の所定ビツ
ト例えば最下位4ビツトと接続されその内容によ
り最下位ビツトに0を付加して左シフトするシフ
タである。なおシフタ11、加算器12、アドレ
スバツフア13、アドレスバス103はそれぞれ
最大アドレス空間を指定し得るビツト幅をもつも
のである。
その他は第3図aと同一記号は同一対象物を表
す。
以下動作を説明する。
各プログラムまたはオペレーテイングシステム
OSはプログラム、データ等が指定のメモリに格
納し得るようセグメントレジスタ2内のビツト領
域9にシフト量を記入しておく。
(1) 実行プログラムが起動されるとき、OSはセ
グメントレジスタ2にセグメント起点アドレス
およびプログラムカウンタ3に所定の値を格納
する。
(2) シフタ11はセグメントレジスタ2内のビツ
ト領域9のの所定ビツト情報を読取り、その指
令に基づきセグメントレジスタ2内に格納され
ているセグメント起点アドレスをシフトして加
算器12に出力する。
(3) 加算器12は上記出力とプログラムカウンタ
3との内容を加算して、アドレスバツフア13
を通じてアドレスバス103に出力する。
以上のごとくプログラマブルにセグメントレジ
スタのシフト量が設定でき、制御装置のアドレス
空間の拡張に容易に対処することができる。
〔発明の効果〕
以上の説明のごとくセグメントレジスタ内の所
定のビツト領域にシフト量を設定するのみで新た
な装置を用いることなく、任意にアドレス空間の
拡張およびセグメントベースアドレスを選定する
ことができ、プログラムサイズの大小に従つて容
易にかつ安価にアドレス空間を設定できる効果が
ある。
【図面の簡単な説明】
第1図は本発明の原理説明図、第2図は実施例
を示すプロセツサのブロツク図、第3図aは従来
のプロセツサのブロツク図、第3図bは従来のア
ドレス生成方式説明図、である。 図中、1は論理演算部ALU、2はセグメント
レジスタ、3はプログラムカウンタ、4はレジス
タ類、5,12は加算器、6,13はアドレスバ
ツフア、7はデータバツフア、8はインストラク
シヨンデコーダ、11はシフタ、100は内部バ
ス、101,103はアドレスバス、102はデ
ータバス、である。

Claims (1)

  1. 【特許請求の範囲】 1 セグメントレジスタ2内に格納されているセ
    グメント起点アドレスをシフトさせ、そのシフト
    出力とオフセツトとを加算して物理アドレスを生
    成するアドレス拡張方式であつて、 シフト量を設定するビツト領域9を上記セグメ
    ントレジスタ2内に設けておき、 上記セグメントレジスタ2内のセグメント起点
    アドレスを該ビツト領域9に設定されたシフト量
    だけシフトさせる手段11と、 シフトされたセグメント起点アドレスとオフセ
    ツトとを加算する手段12を備えることを特徴と
    するアドレス拡張方式。
JP9249585A 1985-04-30 1985-04-30 アドレス拡張方式 Granted JPS61250753A (ja)

Priority Applications (5)

Application Number Priority Date Filing Date Title
JP9249585A JPS61250753A (ja) 1985-04-30 1985-04-30 アドレス拡張方式
DE8686902895T DE3683123D1 (de) 1985-04-30 1986-04-30 Adressenerweiterungssystem.
PCT/JP1986/000219 WO1986006521A1 (en) 1985-04-30 1986-04-30 Address expanding system
US06/935,681 US4796177A (en) 1985-04-30 1986-04-30 Address extension system
EP86902895A EP0220327B1 (en) 1985-04-30 1986-04-30 Address expanding system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP9249585A JPS61250753A (ja) 1985-04-30 1985-04-30 アドレス拡張方式

Publications (2)

Publication Number Publication Date
JPS61250753A JPS61250753A (ja) 1986-11-07
JPH0376504B2 true JPH0376504B2 (ja) 1991-12-05

Family

ID=14055876

Family Applications (1)

Application Number Title Priority Date Filing Date
JP9249585A Granted JPS61250753A (ja) 1985-04-30 1985-04-30 アドレス拡張方式

Country Status (1)

Country Link
JP (1) JPS61250753A (ja)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2658473B2 (ja) * 1990-02-26 1997-09-30 日本電気株式会社 マイクロコンピュータ
JP2819931B2 (ja) * 1992-04-02 1998-11-05 日本電気株式会社 マイクロプロセッサ

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS49129456A (ja) * 1973-04-11 1974-12-11
JPS58133695A (ja) * 1982-01-30 1983-08-09 Fujitsu Ltd ペ−ジサイズ変更方式

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS49129456A (ja) * 1973-04-11 1974-12-11
JPS58133695A (ja) * 1982-01-30 1983-08-09 Fujitsu Ltd ペ−ジサイズ変更方式

Also Published As

Publication number Publication date
JPS61250753A (ja) 1986-11-07

Similar Documents

Publication Publication Date Title
JP2678183B2 (ja) デジタルプロセッサ制御装置および実行時記憶割当ての方法
KR970011207B1 (ko) 원자 억세스를 제공하는 레지스터가 소프트웨어 인터록 없이 공유된 레지스터의 개별 비트를 세트하고 클리어하기 위한 방법 및 장치
JPH0248931B2 (ja)
JPH0346850B2 (ja)
JP2806171B2 (ja) データ演算装置
EP0220327B1 (en) Address expanding system
JPS5911921B2 (ja) 数値制御装置
JPH0221616B2 (ja)
JPH0376504B2 (ja)
JPH0376503B2 (ja)
JP2565495B2 (ja) デ−タ処理システム
JPS61264378A (ja) 記憶回路
JP2658473B2 (ja) マイクロコンピュータ
US6363469B1 (en) Address generation apparatus
JP2005222519A (ja) メモリに記憶されたデータワード内のビット値へのアクセス
JPH0377137A (ja) 情報処理装置
JPH0351012B2 (ja)
JPS6017131B2 (ja) メモリ制御回路
JP2573711B2 (ja) マイクロサブルーチン制御方式
JP3474347B2 (ja) マイクロコンピュータの命令解読部
JP2576589B2 (ja) 仮想記憶アクセス制御方式
JPS60241135A (ja) アドレス生成方式
JPS6260033A (ja) マイクロプロセツサ制御方式
JPH06110682A (ja) 先行読み出し演算処理装置
JP2000163315A (ja) メモリ制御システム