JPH04363735A - 命令処理装置 - Google Patents
命令処理装置Info
- Publication number
- JPH04363735A JPH04363735A JP3095843A JP9584391A JPH04363735A JP H04363735 A JPH04363735 A JP H04363735A JP 3095843 A JP3095843 A JP 3095843A JP 9584391 A JP9584391 A JP 9584391A JP H04363735 A JPH04363735 A JP H04363735A
- Authority
- JP
- Japan
- Prior art keywords
- address
- registers
- value
- register
- memory
- 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
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/06—Addressing a physical block of locations, e.g. base addressing, module addressing, memory dedication
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/34—Addressing or accessing the instruction operand or the result ; Formation of operand address; Addressing modes
- G06F9/342—Extension of operand address space
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/30098—Register arrangements
- G06F9/30105—Register structure
- G06F9/30112—Register structure comprising data of variable length
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/30098—Register arrangements
- G06F9/3012—Organisation of register space, e.g. banked or distributed register file
- G06F9/3013—Organisation of register space, e.g. banked or distributed register file according to data content, e.g. floating-point registers, address registers
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Executing Machine-Instructions (AREA)
- Memory System (AREA)
- Memory System Of A Hierarchy Structure (AREA)
Abstract
(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。
め要約のデータは記録されません。
Description
【0001】
[発明の目的]
【0002】
【産業上の利用分野】本発明はマイクロプロセッサ等の
命令処理装置に関し、特に効率良くアドレス空間をアク
セスする命令処理装置に関する。
命令処理装置に関し、特に効率良くアドレス空間をアク
セスする命令処理装置に関する。
【0003】
【従来の技術】近年の半導体技術の急激な進歩に伴い、
マイクロプロセッサの扱うアドレス空間は増大する一方
である。従って、如何に効率良くアドレス空間をアクセ
ス出来るかが、マイクロプロセッサの性能を左右するこ
とになる。
マイクロプロセッサの扱うアドレス空間は増大する一方
である。従って、如何に効率良くアドレス空間をアクセ
ス出来るかが、マイクロプロセッサの性能を左右するこ
とになる。
【0004】日立のH8/500シリーズのマイクロコ
ンピュータの場合は、図7(a)に示すコントロール・
レジスタCRと、図7(b)に示す汎用レジスタRn(
n=0〜7)を備えており、図8に示すように、コント
ロール・レジスタ中の8ビットのページ・レジスタ4本
、即ち、コード・ページ・レジスタCP、データ・ペー
ジ・レジスタDP、エクステンド・ページ・レジスタE
P、及びスタック・ページ・レジスタTPと、16ビッ
トの汎用レジスタRn、或いはプログラム・カウンタP
Cとの組み合わせによって、24ビットの実効アドレス
を生成して、16メガバイトのアドレス空間をアクセス
している。
ンピュータの場合は、図7(a)に示すコントロール・
レジスタCRと、図7(b)に示す汎用レジスタRn(
n=0〜7)を備えており、図8に示すように、コント
ロール・レジスタ中の8ビットのページ・レジスタ4本
、即ち、コード・ページ・レジスタCP、データ・ペー
ジ・レジスタDP、エクステンド・ページ・レジスタE
P、及びスタック・ページ・レジスタTPと、16ビッ
トの汎用レジスタRn、或いはプログラム・カウンタP
Cとの組み合わせによって、24ビットの実効アドレス
を生成して、16メガバイトのアドレス空間をアクセス
している。
【0005】つまり、16メガバイトのアドレス空間を
64キロバイト単位の256ページに分割し、4本のペ
ージ・レジスタでその中のどのページを使用するかを指
定してアクセスするものである。但し、アドレスが進行
して次のページに進みたくても、ページ・レジスタは自
動的にはインクリメントしないので、プログラムは64
キロバイトのページ内で閉じる必要があり、メモリの使
用効率も悪く、また使いづらさもある。
64キロバイト単位の256ページに分割し、4本のペ
ージ・レジスタでその中のどのページを使用するかを指
定してアクセスするものである。但し、アドレスが進行
して次のページに進みたくても、ページ・レジスタは自
動的にはインクリメントしないので、プログラムは64
キロバイトのページ内で閉じる必要があり、メモリの使
用効率も悪く、また使いづらさもある。
【0006】また、インテルのマイクロプロセッサ80
86の場合は、図9(a)に示すように、セグメント・
レジスタとして、コード・セグメント・レジスタCS、
データ・セグメント・レジスタDS、スタック・セグメ
ント・レジスタSS、及びエクストラ・セグメント・レ
ジスタESを備え、また、図9(b)に示すように、汎
用レジスタ(AX、BX(ベースレジスタ)、CX、D
X)と、4本のポインタ/インデクス・レジスタ、即ち
、スタック・ポインタ・レジスタSP、ベース・ポイン
タ・レジスタBP、ソース・インデクス・レジスタSI
、及びデスティネーション・インデクス・レジスタDI
と、ステータス/制御レジスタとして命令・ポインタ・
レジスタIP及びフラグ・レジスタを備えている。この
場合のアクセスは、図10に示すように、16ビットの
セグメント・セレクタを4ビット左にシフトしたセグメ
ント・ベース・アドレスと、16ビットのセグメント・
オフセットとを加算して、20ビットの実効アドレスを
生成し、1メガバイトのアドレス空間をアクセスする。
86の場合は、図9(a)に示すように、セグメント・
レジスタとして、コード・セグメント・レジスタCS、
データ・セグメント・レジスタDS、スタック・セグメ
ント・レジスタSS、及びエクストラ・セグメント・レ
ジスタESを備え、また、図9(b)に示すように、汎
用レジスタ(AX、BX(ベースレジスタ)、CX、D
X)と、4本のポインタ/インデクス・レジスタ、即ち
、スタック・ポインタ・レジスタSP、ベース・ポイン
タ・レジスタBP、ソース・インデクス・レジスタSI
、及びデスティネーション・インデクス・レジスタDI
と、ステータス/制御レジスタとして命令・ポインタ・
レジスタIP及びフラグ・レジスタを備えている。この
場合のアクセスは、図10に示すように、16ビットの
セグメント・セレクタを4ビット左にシフトしたセグメ
ント・ベース・アドレスと、16ビットのセグメント・
オフセットとを加算して、20ビットの実効アドレスを
生成し、1メガバイトのアドレス空間をアクセスする。
【0007】ここで、セグメント・セレクタには4本の
セグメント・レジスタの内何れかが、また、セグメント
・オフセットには、ベース・レジスタBX、4本のポイ
ンタ/インデクス・レジスタ、命令・ポインタ・レジス
タIP、或いは命令中のディスプレースメント等の内何
れかが使用される。
セグメント・レジスタの内何れかが、また、セグメント
・オフセットには、ベース・レジスタBX、4本のポイ
ンタ/インデクス・レジスタ、命令・ポインタ・レジス
タIP、或いは命令中のディスプレースメント等の内何
れかが使用される。
【0008】この場合にも、1つのセグメントでは64
キロバイトまでの領域のプログラムやデータしか扱えず
、使用効率が悪い。
キロバイトまでの領域のプログラムやデータしか扱えず
、使用効率が悪い。
【0009】また、ザイログのマイクロプロセッサZ8
001の場合には、図11(a)に示す16ビット×1
6本の汎用レジスタR0〜R15と、図11(b)に示
す専用レジスタを備え、図12に示すように、汎用レジ
スタを2本使ったレジスタペアから7ビットのセグメン
トSEGと、16ビットのオフセットOFFSETを連
結して、23ビットの実効アドレスを生成し、8メガバ
イトのアドレス空間をアクセスする。
001の場合には、図11(a)に示す16ビット×1
6本の汎用レジスタR0〜R15と、図11(b)に示
す専用レジスタを備え、図12に示すように、汎用レジ
スタを2本使ったレジスタペアから7ビットのセグメン
トSEGと、16ビットのオフセットOFFSETを連
結して、23ビットの実効アドレスを生成し、8メガバ
イトのアドレス空間をアクセスする。
【0010】Z8001では、16ビットのオフセット
だけで64キロバイトのアドレス空間内のみを使用する
モードもあり、これは、図11(b)の専用レジスタの
中のフラグ制御語のセグメントモードビットSEGを切
り替えて使用する。64キロバイト以内では、ノンセグ
メントモードで、汎用レジスタ1本で16ビットのオフ
セットのみでアクセスし、64キロバイトを越える範囲
では、セグメントモードビットをセグメントモードに切
り替えて、汎用レジスタ2本で7ビットのセグメントと
16ビットのオフセットを連結してアクセスするという
方法もあるが、セグメントモードを切り替えながら使用
するというのは現実的でないので、64キロバイトを越
える場合はセグメントモードに固定して使用する。
だけで64キロバイトのアドレス空間内のみを使用する
モードもあり、これは、図11(b)の専用レジスタの
中のフラグ制御語のセグメントモードビットSEGを切
り替えて使用する。64キロバイト以内では、ノンセグ
メントモードで、汎用レジスタ1本で16ビットのオフ
セットのみでアクセスし、64キロバイトを越える範囲
では、セグメントモードビットをセグメントモードに切
り替えて、汎用レジスタ2本で7ビットのセグメントと
16ビットのオフセットを連結してアクセスするという
方法もあるが、セグメントモードを切り替えながら使用
するというのは現実的でないので、64キロバイトを越
える場合はセグメントモードに固定して使用する。
【0011】この場合も前の2例と同じく、オフセット
がオーバーフローしてもセグメントが影響を受けないの
で、プログラムやデータは64キロバイト内で閉じる必
要があり、メモリ効率が悪く、汎用レジスタの使用に無
駄がある。
がオーバーフローしてもセグメントが影響を受けないの
で、プログラムやデータは64キロバイト内で閉じる必
要があり、メモリ効率が悪く、汎用レジスタの使用に無
駄がある。
【0012】
【発明が解決しようとする課題】以上のように、従来の
マイクロプロセッサ等の命令処理装置では、広いアドレ
ス空間をアクセスするために用いていたページ・レジス
タやセグメント・レジスタといった手段は、アドレス空
間の連続性という点で問題があり、また、16ビットの
基本となるレジスタの他にページ・レジスタやセグメン
ト・レジスタといった特殊な用途のための専用レジスタ
または汎用レジスタが更にもう1本必要になるという欠
点があった。
マイクロプロセッサ等の命令処理装置では、広いアドレ
ス空間をアクセスするために用いていたページ・レジス
タやセグメント・レジスタといった手段は、アドレス空
間の連続性という点で問題があり、また、16ビットの
基本となるレジスタの他にページ・レジスタやセグメン
ト・レジスタといった特殊な用途のための専用レジスタ
または汎用レジスタが更にもう1本必要になるという欠
点があった。
【0013】本発明は、上記問題点を解決するもので、
その目的は、効率良くアドレス空間をアクセスする命令
処理装置を提供することである。
その目的は、効率良くアドレス空間をアクセスする命令
処理装置を提供することである。
【0014】
【課題を解決するための手段】前記課題を解決するため
に、本発明の特徴は、図1に示す如く、メモリ5の全ア
ドレス空間中の任意のアドレスを指定するのに十分なビ
ット幅を有する少なくとも1つの第1のレジスタR1n
と、全アドレス空間中の任意のアドレスを指定するのに
不十分なビット幅を有する少なくとも1つの第2のレジ
スタR2mとを備え、命令語により指定された前記1つ
または結合された複数の第1のレジスタR1n或いは第
2のレジスタR2m内に保持される値を基にしてオペラ
ンドアドレスを生成する命令処理装置において、前記1
つまたは複数の第1のレジスタR1nの全ビットによる
値或いは必要なビット幅を切り出して得られる値から所
望のオペランドアドレスを生成する第1のアドレス生成
手段1と、前記1つまたは複数の第2のレジスタR2m
の一部のビットの値に応じてアドレス指定に不足するビ
ットを生成して全アドレス空間中の所定の部分空間に対
するオペランドアドレスを生成する第2のアドレス生成
手段3とを具備し、命令語中の情報により前記第1のア
ドレス生成手段1または第2のアドレス生成手段3の何
れかが指定されることである。
に、本発明の特徴は、図1に示す如く、メモリ5の全ア
ドレス空間中の任意のアドレスを指定するのに十分なビ
ット幅を有する少なくとも1つの第1のレジスタR1n
と、全アドレス空間中の任意のアドレスを指定するのに
不十分なビット幅を有する少なくとも1つの第2のレジ
スタR2mとを備え、命令語により指定された前記1つ
または結合された複数の第1のレジスタR1n或いは第
2のレジスタR2m内に保持される値を基にしてオペラ
ンドアドレスを生成する命令処理装置において、前記1
つまたは複数の第1のレジスタR1nの全ビットによる
値或いは必要なビット幅を切り出して得られる値から所
望のオペランドアドレスを生成する第1のアドレス生成
手段1と、前記1つまたは複数の第2のレジスタR2m
の一部のビットの値に応じてアドレス指定に不足するビ
ットを生成して全アドレス空間中の所定の部分空間に対
するオペランドアドレスを生成する第2のアドレス生成
手段3とを具備し、命令語中の情報により前記第1のア
ドレス生成手段1または第2のアドレス生成手段3の何
れかが指定されることである。
【0015】本発明の第2の特徴は、メモリ5の全アド
レス空間中の任意のアドレスを指定するのに十分なビッ
ト幅を有する少なくとも1つの第1のレジスタR1nと
、全アドレス空間中の任意のアドレスを指定するのに不
十分なビット幅を有する少なくとも1つの第2のレジス
タR2mとを備え、命令語により指定された前記1つま
たは結合された複数の第1のレジスタR1n或いは第2
のレジスタR2m内に保持される値を基にしてオペラン
ドアドレスを生成する、或いは、命令語により指定され
た前記1つまたは結合された複数の第1のレジスタR1
n或いは第2のレジスタR2m内に保持される値を基に
してメモリ5をアクセスし、メモリ5から読み出された
値を基にして間接的にオペランドアドレスを生成する命
令処理装置において、前記1つまたは複数の第1のレジ
スタR1nの全ビットによる値、メモリ5から読み出さ
れた値、或いはこれら2つの値から必要なビット幅を切
り出して得られる値から所望のオペランドアドレスを生
成する第1のアドレス生成手段1と、前記1つまたは複
数の第2のレジスタR2m或いはメモリ5から読み出さ
れたデータの一部のビットの値に応じてアドレス指定に
不足するビットを生成して全アドレス空間中の所定の部
分空間に対するオペランドアドレスを生成する第2のア
ドレス生成手段3とを具備し、命令語中の情報により前
記第1のアドレス生成手段1または第2のアドレス生成
手段3の何れかが指定されることである。
レス空間中の任意のアドレスを指定するのに十分なビッ
ト幅を有する少なくとも1つの第1のレジスタR1nと
、全アドレス空間中の任意のアドレスを指定するのに不
十分なビット幅を有する少なくとも1つの第2のレジス
タR2mとを備え、命令語により指定された前記1つま
たは結合された複数の第1のレジスタR1n或いは第2
のレジスタR2m内に保持される値を基にしてオペラン
ドアドレスを生成する、或いは、命令語により指定され
た前記1つまたは結合された複数の第1のレジスタR1
n或いは第2のレジスタR2m内に保持される値を基に
してメモリ5をアクセスし、メモリ5から読み出された
値を基にして間接的にオペランドアドレスを生成する命
令処理装置において、前記1つまたは複数の第1のレジ
スタR1nの全ビットによる値、メモリ5から読み出さ
れた値、或いはこれら2つの値から必要なビット幅を切
り出して得られる値から所望のオペランドアドレスを生
成する第1のアドレス生成手段1と、前記1つまたは複
数の第2のレジスタR2m或いはメモリ5から読み出さ
れたデータの一部のビットの値に応じてアドレス指定に
不足するビットを生成して全アドレス空間中の所定の部
分空間に対するオペランドアドレスを生成する第2のア
ドレス生成手段3とを具備し、命令語中の情報により前
記第1のアドレス生成手段1または第2のアドレス生成
手段3の何れかが指定されることである。
【0016】本発明の第3の特徴は、請求項2に記載の
命令処理装置において、前記の命令語により指定された
前記1つまたは結合された複数の第1のレジスタR1n
或いは第2のレジスタR2m内に保持される値を基にし
てメモリ5をアクセスし、メモリ5から読み出された値
を基にして間接的にオペランドアドレスを生成する機能
を、複数回適用し得ることである。
命令処理装置において、前記の命令語により指定された
前記1つまたは結合された複数の第1のレジスタR1n
或いは第2のレジスタR2m内に保持される値を基にし
てメモリ5をアクセスし、メモリ5から読み出された値
を基にして間接的にオペランドアドレスを生成する機能
を、複数回適用し得ることである。
【0017】本発明の第4の特徴は、請求項1、2、ま
たは3に記載の命令処理装置において、前記第2のアド
レス生成手段3が、前記1つまたは複数の第2のレジス
タR2m或いはメモリ5から読み出されたデータの最上
位ビットを拡張してアドレス指定に不足するビットを生
成し、全アドレス空間中の所定の部分空間に対するオペ
ランドアドレスを生成することである。
たは3に記載の命令処理装置において、前記第2のアド
レス生成手段3が、前記1つまたは複数の第2のレジス
タR2m或いはメモリ5から読み出されたデータの最上
位ビットを拡張してアドレス指定に不足するビットを生
成し、全アドレス空間中の所定の部分空間に対するオペ
ランドアドレスを生成することである。
【0018】本発明の第5の特徴は、請求項1、2、ま
たは3に記載の命令処理装置において、前記第2のアド
レス生成手段3が、前記1つまたは複数の第2のレジス
タR2m或いはメモリ5から読み出されたデータの一部
のqビットの値で指定される予め用意された変換テーブ
ルの値を基にしてアドレス指定に不足するビットを生成
し、全アドレス空間中の所定の部分空間に対するオペラ
ンドアドレスを生成することである。
たは3に記載の命令処理装置において、前記第2のアド
レス生成手段3が、前記1つまたは複数の第2のレジス
タR2m或いはメモリ5から読み出されたデータの一部
のqビットの値で指定される予め用意された変換テーブ
ルの値を基にしてアドレス指定に不足するビットを生成
し、全アドレス空間中の所定の部分空間に対するオペラ
ンドアドレスを生成することである。
【0019】
【作用】本発明の命令処理装置では、第1のアドレス生
成手段1により、1つまたは複数の第1のレジスタR1
nの全ビットによる値、メモリ5から読み出された値、
或いはこれら2つの値から必要なビット幅を切り出して
得られる値から所望のオペランドアドレスが生成される
か、或いは、第2のアドレス生成手段3により、1つま
たは複数の第2のレジスタR2m或いはメモリ5から読
み出されたデータの一部のビットの値に応じてアドレス
指定に不足するビットを生成して、メモリ5の全アドレ
ス空間中の所定の部分空間に対するオペランドアドレス
が生成される。また、第1のアドレス生成手段1または
第2のアドレス生成手段3の何れかが指定されるかは、
命令語中の情報により指定される。
成手段1により、1つまたは複数の第1のレジスタR1
nの全ビットによる値、メモリ5から読み出された値、
或いはこれら2つの値から必要なビット幅を切り出して
得られる値から所望のオペランドアドレスが生成される
か、或いは、第2のアドレス生成手段3により、1つま
たは複数の第2のレジスタR2m或いはメモリ5から読
み出されたデータの一部のビットの値に応じてアドレス
指定に不足するビットを生成して、メモリ5の全アドレ
ス空間中の所定の部分空間に対するオペランドアドレス
が生成される。また、第1のアドレス生成手段1または
第2のアドレス生成手段3の何れかが指定されるかは、
命令語中の情報により指定される。
【0020】特に、本発明の第2の特徴の命令処理装置
は、指定するアドレスがレジスタR1nまたはR2m中
にあるレジスタ間接アドレシングの場合と、メモリ5中
にあるメモリ間接アドレシングの場合との両方をカバー
するものであり、また、本発明の第3の特徴の命令処理
装置は、いわゆる多重間接アドレシングモードと呼ばれ
る機能を実現するもので、レジスタ間接アドレシングや
メモリ間接アドレシングを多重に使用する場合に対して
もカバーするものである。
は、指定するアドレスがレジスタR1nまたはR2m中
にあるレジスタ間接アドレシングの場合と、メモリ5中
にあるメモリ間接アドレシングの場合との両方をカバー
するものであり、また、本発明の第3の特徴の命令処理
装置は、いわゆる多重間接アドレシングモードと呼ばれ
る機能を実現するもので、レジスタ間接アドレシングや
メモリ間接アドレシングを多重に使用する場合に対して
もカバーするものである。
【0021】尚、第2のアドレス生成手段3が行なう不
足するビットを補う方法には、例えば、1つまたは複数
の第2のレジスタR2m或いはメモリ5から読み出され
たデータの最上位ビットを拡張してアドレス指定に不足
するビットを生成し、全アドレス空間中の所定の部分空
間に対するオペランドアドレスを生成する方法や、1つ
または複数の第2のレジスタR2m或いはメモリ5から
読み出されたデータの一部のqビットの値で指定される
予め用意された変換テーブルの値を基にしてアドレス指
定に不足するビットを生成し、全アドレス空間中の所定
の部分空間に対するオペランドアドレスを生成する方法
がある。
足するビットを補う方法には、例えば、1つまたは複数
の第2のレジスタR2m或いはメモリ5から読み出され
たデータの最上位ビットを拡張してアドレス指定に不足
するビットを生成し、全アドレス空間中の所定の部分空
間に対するオペランドアドレスを生成する方法や、1つ
または複数の第2のレジスタR2m或いはメモリ5から
読み出されたデータの一部のqビットの値で指定される
予め用意された変換テーブルの値を基にしてアドレス指
定に不足するビットを生成し、全アドレス空間中の所定
の部分空間に対するオペランドアドレスを生成する方法
がある。
【0022】これにより、アドレス空間を連続的にアク
セスでき、しかも基本となるレジスタの他にページ・レ
ジスタやセグメント・レジスタといった特殊な用途のた
めの専用レジスタや汎用レジスタを必要とせずに実現す
ることができ、結果として、効率良くアドレス空間をア
クセスする命令処理装置を実現できる。
セスでき、しかも基本となるレジスタの他にページ・レ
ジスタやセグメント・レジスタといった特殊な用途のた
めの専用レジスタや汎用レジスタを必要とせずに実現す
ることができ、結果として、効率良くアドレス空間をア
クセスする命令処理装置を実現できる。
【0023】
【実施例】以下、本発明に係る実施例を図面に基づいて
説明する。
説明する。
【0024】先ず、本発明の実施例に係る命令処理装置
が実現されるCPUコアの大まかな構成を説明する。図
2(a)に示すように、16ビットのレジスタ16本か
らなる汎用レジスタファイル11と演算部13が内部バ
スBUSに接続されて、24ビットの実効アドレスによ
りメモリ5の16メガバイトのアドレス空間をアクセス
するものとする。また、汎用レジスタファイル11は、
図2(b)に示すような構成で、16ビットのレジスタ
として使用する場合は、Rw0〜Rw15を指定してア
クセスし、2本連結して32ビットのレジスタとしてア
クセスする場合は、Rd0〜Rd14の偶数番号のレジ
スタを指定してアクセスするものとする。
が実現されるCPUコアの大まかな構成を説明する。図
2(a)に示すように、16ビットのレジスタ16本か
らなる汎用レジスタファイル11と演算部13が内部バ
スBUSに接続されて、24ビットの実効アドレスによ
りメモリ5の16メガバイトのアドレス空間をアクセス
するものとする。また、汎用レジスタファイル11は、
図2(b)に示すような構成で、16ビットのレジスタ
として使用する場合は、Rw0〜Rw15を指定してア
クセスし、2本連結して32ビットのレジスタとしてア
クセスする場合は、Rd0〜Rd14の偶数番号のレジ
スタを指定してアクセスするものとする。
【0025】次に、本発明の第1の実施例を説明する。
本実施例は、演算部13内に、16ビットレジスタRw
0〜Rw15の全ビットによる値、メモリ5から読み出
された値、或いは32ビットレジスタRd0〜Rd14
の値またはメモリ5から読み出された値から必要なビッ
ト幅を切り出して得られる値から所望のオペランドアド
レスを生成する第1のアドレス生成手段1と、16ビッ
トレジスタRw0〜Rw15またはメモリ5から読み出
されたデータの一部のビットの値に応じてアドレス指定
に不足するビットを生成して全アドレス空間中の所定の
部分空間に対するオペランドアドレスを生成する第2の
アドレス生成手段3とを具備しており、第2のアドレス
生成手段3が行なう不足するビットを補う方法は、ここ
では、16ビットレジスタRw0〜Rw15またはメモ
リ5から読み出されたデータの最上位ビットを拡張して
アドレス指定に不足するビットを生成し、全アドレス空
間中の所定の部分空間に対するオペランドアドレスを生
成する方法によっている。
0〜Rw15の全ビットによる値、メモリ5から読み出
された値、或いは32ビットレジスタRd0〜Rd14
の値またはメモリ5から読み出された値から必要なビッ
ト幅を切り出して得られる値から所望のオペランドアド
レスを生成する第1のアドレス生成手段1と、16ビッ
トレジスタRw0〜Rw15またはメモリ5から読み出
されたデータの一部のビットの値に応じてアドレス指定
に不足するビットを生成して全アドレス空間中の所定の
部分空間に対するオペランドアドレスを生成する第2の
アドレス生成手段3とを具備しており、第2のアドレス
生成手段3が行なう不足するビットを補う方法は、ここ
では、16ビットレジスタRw0〜Rw15またはメモ
リ5から読み出されたデータの最上位ビットを拡張して
アドレス指定に不足するビットを生成し、全アドレス空
間中の所定の部分空間に対するオペランドアドレスを生
成する方法によっている。
【0026】先ず、本実施例のレジスタ間接アドレシン
グモードの場合について説明する。
グモードの場合について説明する。
【0027】この場合に、第1のアドレス生成手段1が
行なうアドレシングは、図3(a)に示すように、16
ビットの汎用レジスタ2本を連結した32ビットのレジ
スタRd0〜Rd14の上位8ビットを無視した24ビ
ットを実効アドレスとしてアクセスするのが一般的であ
る。図示した例は、16ビットの汎用レジスタRw7及
びRw6を連結した32ビットのレジスタRd6を指定
して実効アドレスを生成する例である。
行なうアドレシングは、図3(a)に示すように、16
ビットの汎用レジスタ2本を連結した32ビットのレジ
スタRd0〜Rd14の上位8ビットを無視した24ビ
ットを実効アドレスとしてアクセスするのが一般的であ
る。図示した例は、16ビットの汎用レジスタRw7及
びRw6を連結した32ビットのレジスタRd6を指定
して実効アドレスを生成する例である。
【0028】また、第2のアドレス生成手段3では、図
3(b)及び(c)に示すように、16ビットレジスタ
Rw0〜Rw15の内1本(図3(b)ではRw2、同
図(c)ではRw5)を指定し、その最上位ビットを2
4ビットまで符号拡張することによって24ビットの実
効アドレスを生成し、図4に示すようなメモリ5の一部
領域をアクセス可能としている。
3(b)及び(c)に示すように、16ビットレジスタ
Rw0〜Rw15の内1本(図3(b)ではRw2、同
図(c)ではRw5)を指定し、その最上位ビットを2
4ビットまで符号拡張することによって24ビットの実
効アドレスを生成し、図4に示すようなメモリ5の一部
領域をアクセス可能としている。
【0029】このように本実施例では、汎用レジスタを
節約して利用することができる。即ち、アドレスポイン
タとして使用するレジスタの本数が半分になれば、そこ
で節約できたレジスタにオペランドを置くことができ、
その分メモリ5上のオペランドを減少させることができ
、結果として、メモリアクセスの頻度が減少し、高速実
行が可能となり、オブジェクト効率も向上する。
節約して利用することができる。即ち、アドレスポイン
タとして使用するレジスタの本数が半分になれば、そこ
で節約できたレジスタにオペランドを置くことができ、
その分メモリ5上のオペランドを減少させることができ
、結果として、メモリアクセスの頻度が減少し、高速実
行が可能となり、オブジェクト効率も向上する。
【0030】また、従来の汎用レジスタを2本使用する
モードとも共存し、その使用方法をアドレシングモード
で切り替えられる点も特徴である。使用頻度の高いもの
を図4のメモリ領域で、先頭から32キロバイト(アド
レス000000〜007FFF)と最後の32キロバ
イト(アドレスFF8000〜FFFFFF)において
、使用頻度の低いものはそれ以外の中間の領域に配置す
れば、16ビットのアドレスポインタと32ビットのア
ドレスポインタが効率良く共存できると同時に、広いア
ドレス空間と豊富なレジスタ群を実現できる。尚、具体
的な共存の方法は、レジスタ間接アドレシングモードに
、16ビットの汎用レジスタ1本で使用する場合と2本
で使用する場合の2つのタイプを設けることにより実現
できる。
モードとも共存し、その使用方法をアドレシングモード
で切り替えられる点も特徴である。使用頻度の高いもの
を図4のメモリ領域で、先頭から32キロバイト(アド
レス000000〜007FFF)と最後の32キロバ
イト(アドレスFF8000〜FFFFFF)において
、使用頻度の低いものはそれ以外の中間の領域に配置す
れば、16ビットのアドレスポインタと32ビットのア
ドレスポインタが効率良く共存できると同時に、広いア
ドレス空間と豊富なレジスタ群を実現できる。尚、具体
的な共存の方法は、レジスタ間接アドレシングモードに
、16ビットの汎用レジスタ1本で使用する場合と2本
で使用する場合の2つのタイプを設けることにより実現
できる。
【0031】即ち、アセンブリ表現において、16ビッ
トの汎用レジスタ1本で使用する場合を(Rwn)と表
記する。ここで、(R)はレジスタ間接モードを意味し
、wは16ビットレジスタ1本であることを意味し、n
はレジスタの番号を意味し、本実施例の場合はn=0〜
15となる。また、16ビットの汎用レジスタ2本で使
用する場合を(Rd2n)と表記する。ここで、dは1
6ビットレジスタ2本であることを意味し、2nは偶数
番号のレジスタを意味する。n=5の場合は、2n+1
=11番(Rw11)と2n=10番(Rw10)のレ
ジスタが連結されて32ビットのレジスタを指定するこ
ととなり、本実施例の場合はn=0〜7である。
トの汎用レジスタ1本で使用する場合を(Rwn)と表
記する。ここで、(R)はレジスタ間接モードを意味し
、wは16ビットレジスタ1本であることを意味し、n
はレジスタの番号を意味し、本実施例の場合はn=0〜
15となる。また、16ビットの汎用レジスタ2本で使
用する場合を(Rd2n)と表記する。ここで、dは1
6ビットレジスタ2本であることを意味し、2nは偶数
番号のレジスタを意味する。n=5の場合は、2n+1
=11番(Rw11)と2n=10番(Rw10)のレ
ジスタが連結されて32ビットのレジスタを指定するこ
ととなり、本実施例の場合はn=0〜7である。
【0032】このような使用方法の切り替えは、アドレ
シングモードで指定することにより容易に可能であり、
プログラミング時に簡単に切り替えられるので、1つの
プログラム中に任意に混在させて使用でき、効率がよい
。
シングモードで指定することにより容易に可能であり、
プログラミング時に簡単に切り替えられるので、1つの
プログラム中に任意に混在させて使用でき、効率がよい
。
【0033】次に、メモリ間接アドレシングモードの場
合について説明する。
合について説明する。
【0034】この場合もレジスタ間接アドレシングモー
ドの場合と同様に、第2のアドレス生成手段3において
、メモリ5上のデータを1ワード(16ビット)読み出
して、その最上位ビットを24ビットまで符号拡張する
ことによって、図4に示すようなメモリ5の一部領域を
アクセスすることが可能であり、メモリ5上のデータを
節約できる。また、1ワード読み出した時点で、アドレ
スポインタが作れるので、高速実行が可能となり、オブ
ジェクト効率が向上する。
ドの場合と同様に、第2のアドレス生成手段3において
、メモリ5上のデータを1ワード(16ビット)読み出
して、その最上位ビットを24ビットまで符号拡張する
ことによって、図4に示すようなメモリ5の一部領域を
アクセスすることが可能であり、メモリ5上のデータを
節約できる。また、1ワード読み出した時点で、アドレ
スポインタが作れるので、高速実行が可能となり、オブ
ジェクト効率が向上する。
【0035】また、第1のアドレス生成手段1における
2ワード(32ビット)読み出して、その上位8ビット
を無視した24ビットでアドレスポインタとするモード
とも共存し、その使用方法がアドレシングモードで切り
替えられ、効率がよい点もレジスタ間接アドレシングモ
ードの場合と同じである。
2ワード(32ビット)読み出して、その上位8ビット
を無視した24ビットでアドレスポインタとするモード
とも共存し、その使用方法がアドレシングモードで切り
替えられ、効率がよい点もレジスタ間接アドレシングモ
ードの場合と同じである。
【0036】次に、本発明の第2の実施例を説明する。
【0037】本実施例は、大まかな構成は第1の実施例
と同様であるが、第2のアドレス生成手段3が行なう不
足するビットを補う方法は、ここでは、16ビットレジ
スタRw0〜Rw15またはメモリ5から読み出された
データの一部である上位3ビットの値で指定される予め
用意された変換テーブル17の値を基にしてアドレス指
定に不足するビットを生成し、全アドレス空間中の所定
の部分空間に対するオペランドアドレスを生成する方法
によっている。
と同様であるが、第2のアドレス生成手段3が行なう不
足するビットを補う方法は、ここでは、16ビットレジ
スタRw0〜Rw15またはメモリ5から読み出された
データの一部である上位3ビットの値で指定される予め
用意された変換テーブル17の値を基にしてアドレス指
定に不足するビットを生成し、全アドレス空間中の所定
の部分空間に対するオペランドアドレスを生成する方法
によっている。
【0038】即ち、図5に示すように、8種類の8ビッ
トアドレス変換テーブル17を備え、16ビットの汎用
レジスタ1本(図5ではRw2)の最上位から3ビット
でその変換テーブル17中の1つを指定し、16ビット
の汎用レジスタの下位13ビットに指定した変換テーブ
ル17のアドレス8ビットを連結し、更にその最上位ビ
ットを3ビット符号拡張するようにしている。ここで、
8種類の変換テーブル17の内、”000”と”001
”で指定するテーブルと、”110”と”111”で指
定するテーブルは、図5に示すような8ビットアドレス
に固定し、残り4つのテーブルで任意の8ビットアドレ
スを指定できるものとする。これによって、図6に示す
ような16メガバイトのアドレス空間の内、先頭から1
6キロバイト(アドレス000000〜003FFF)
と最後の16キロバイト(アドレスFFC000〜FF
FFFF)は必ず指定され、その内側の可変領域内に8
キロバイト単位で、任意に4つの領域を指定することが
できる。
トアドレス変換テーブル17を備え、16ビットの汎用
レジスタ1本(図5ではRw2)の最上位から3ビット
でその変換テーブル17中の1つを指定し、16ビット
の汎用レジスタの下位13ビットに指定した変換テーブ
ル17のアドレス8ビットを連結し、更にその最上位ビ
ットを3ビット符号拡張するようにしている。ここで、
8種類の変換テーブル17の内、”000”と”001
”で指定するテーブルと、”110”と”111”で指
定するテーブルは、図5に示すような8ビットアドレス
に固定し、残り4つのテーブルで任意の8ビットアドレ
スを指定できるものとする。これによって、図6に示す
ような16メガバイトのアドレス空間の内、先頭から1
6キロバイト(アドレス000000〜003FFF)
と最後の16キロバイト(アドレスFFC000〜FF
FFFF)は必ず指定され、その内側の可変領域内に8
キロバイト単位で、任意に4つの領域を指定することが
できる。
【0039】こうすることによって、固定領域にはプロ
グラム中の各ルーチンが共通にアクセスするような共通
データを保持し、可変領域にはあるルーチン固有のデー
タを保持するといった使用方法が可能になる。また、そ
れ以外の領域(アドレス100000〜EFFFFF)
は、16ビットの汎用レジスタを2本使用してアクセス
する方法とも共存し、その使用方法がアドレシングモー
ドによって切り替えられることはいうまでもない。
グラム中の各ルーチンが共通にアクセスするような共通
データを保持し、可変領域にはあるルーチン固有のデー
タを保持するといった使用方法が可能になる。また、そ
れ以外の領域(アドレス100000〜EFFFFF)
は、16ビットの汎用レジスタを2本使用してアクセス
する方法とも共存し、その使用方法がアドレシングモー
ドによって切り替えられることはいうまでもない。
【0040】また、メモリ間接アドレシングモードの場
合も、上記レジスタ間接アドレシングモードの場合と同
様である。
合も、上記レジスタ間接アドレシングモードの場合と同
様である。
【0041】
【発明の効果】以上のように本発明によれば、従来1つ
のアドレスポインタを作るのに16ビットの汎用レジス
タを必ず2本使用していたのに対し、1本の汎用レジス
タでも可能になり、その分余裕のできた汎用レジスタを
他の目的に使用できるため、限られた汎用レジスタを有
効活用することができ、汎用レジスタにオペランドを置
くことが可能となり、メモリ上にあったオペランドがそ
の分減少し、結果として、メモリアクセスの頻度が減少
し、高速実行が可能となり、オブジェクト効率の高い命
令処理装置を提供することができる。
のアドレスポインタを作るのに16ビットの汎用レジス
タを必ず2本使用していたのに対し、1本の汎用レジス
タでも可能になり、その分余裕のできた汎用レジスタを
他の目的に使用できるため、限られた汎用レジスタを有
効活用することができ、汎用レジスタにオペランドを置
くことが可能となり、メモリ上にあったオペランドがそ
の分減少し、結果として、メモリアクセスの頻度が減少
し、高速実行が可能となり、オブジェクト効率の高い命
令処理装置を提供することができる。
【0042】また、第1のアドレス生成手段或いは第2
のアドレス生成手段の何れを指定するかの切り替えをア
ドレシングモードで容易に可能としたので、1つのプロ
グラム中で任意に混在させて使用でき、プログラミング
効率の高い命令処理装置を提供することができる。
のアドレス生成手段の何れを指定するかの切り替えをア
ドレシングモードで容易に可能としたので、1つのプロ
グラム中で任意に混在させて使用でき、プログラミング
効率の高い命令処理装置を提供することができる。
【図1】本発明の発明原理図である。
【図2】図2(a)は本発明の命令処理装置が実現され
るCPUの構成図、図2(b)は汎用レジスタの構成図
である。
るCPUの構成図、図2(b)は汎用レジスタの構成図
である。
【図3】図3(a)、(b)、及び(c)は本発明の第
1の実施例に係る命令処理装置の実効アドレス生成例で
ある。
1の実施例に係る命令処理装置の実効アドレス生成例で
ある。
【図4】本発明の第1の実施例に係る命令処理装置のア
ドレス空間上のメモリ配置図である。
ドレス空間上のメモリ配置図である。
【図5】本発明の第2の実施例に係る命令処理装置の実
効アドレス生成例である。
効アドレス生成例である。
【図6】本発明の第2の実施例に係る命令処理装置のア
ドレス空間上のメモリ配置図である。
ドレス空間上のメモリ配置図である。
【図7】第1の従来例(H8/500)のコントロール
レジスタ(図7(a))及び汎用レジスタ(図7(b)
)の構成図である。
レジスタ(図7(a))及び汎用レジスタ(図7(b)
)の構成図である。
【図8】第1の従来例(H8/500)の24ビット実
効アドレス生成方法を説明する図である。
効アドレス生成方法を説明する図である。
【図9】第2の従来例(8086)のセグメントレジス
タ(図9(a))及び汎用レジスタポインタ/インデク
ス・レジスタ、ステータス/制御レジスタ(図9(b)
)の構成図である。
タ(図9(a))及び汎用レジスタポインタ/インデク
ス・レジスタ、ステータス/制御レジスタ(図9(b)
)の構成図である。
【図10】第2の従来例(8086)の24ビット実効
アドレス生成方法を説明する図である。
アドレス生成方法を説明する図である。
【図11】第3の従来例(Z8001)の汎用レジスタ
(図11(a))及び専用レジスタ(図11(b))の
構成図である。
(図11(a))及び専用レジスタ(図11(b))の
構成図である。
【図12】第3の従来例(Z8001)の24ビット実
効アドレス生成方法を説明する図である。
効アドレス生成方法を説明する図である。
1 第1のアドレス生成手段
3 第2のアドレス生成手段
5 メモリ
R1n 第1のレジスタ
R2m 第2のレジスタ
11 汎用レジスタファイル
13 演算部
17 変換テーブル
Claims (5)
- 【請求項1】 メモリの全アドレス空間中の任意のア
ドレスを指定するのに十分なビット幅を有する少なくと
も1つの第1のレジスタと、全アドレス空間中の任意の
アドレスを指定するのに不十分なビット幅を有する少な
くとも1つの第2のレジスタとを備え、命令語により指
定された前記1つまたは結合された複数の第1のレジス
タ或いは第2のレジスタ内に保持される値を基にしてオ
ペランドアドレスを生成する命令処理装置において、前
記1つまたは複数の第1のレジスタの全ビットによる値
或いは必要なビット幅を切り出して得られる値から所望
のオペランドアドレスを生成する第1のアドレス生成手
段と、前記1つまたは複数の第2のレジスタの一部のビ
ットの値に応じてアドレス指定に不足するビットを生成
して全アドレス空間中の所定の部分空間に対するオペラ
ンドアドレスを生成する第2のアドレス生成手段とを有
し、命令語中の情報により前記第1のアドレス生成手段
または第2のアドレス生成手段の何れかが指定されるこ
とを特徴とする命令処理装置。 - 【請求項2】 メモリの全アドレス空間中の任意のア
ドレスを指定するのに十分なビット幅を有する少なくと
も1つの第1のレジスタと、全アドレス空間中の任意の
アドレスを指定するのに不十分なビット幅を有する少な
くとも1つの第2のレジスタとを備え、命令語により指
定された前記1つまたは結合された複数の第1のレジス
タ或いは第2のレジスタ内に保持される値を基にしてオ
ペランドアドレスを生成する、或いは、命令語により指
定された前記1つまたは結合された複数の第1のレジス
タ或いは第2のレジスタ内に保持される値を基にしてメ
モリをアクセスし、メモリから読み出された値を基にし
て間接的にオペランドアドレスを生成する命令処理装置
において、前記1つまたは複数の第1のレジスタの全ビ
ットによる値、メモリから読み出された値、或いはこれ
ら2つの値から必要なビット幅を切り出して得られる値
から所望のオペランドアドレスを生成する第1のアドレ
ス生成手段と、前記1つまたは複数の第2のレジスタ或
いはメモリから読み出されたデータの一部のビットの値
に応じてアドレス指定に不足するビットを生成して全ア
ドレス空間中の所定の部分空間に対するオペランドアド
レスを生成する第2のアドレス生成手段とを有し、命令
語中の情報により前記第1のアドレス生成手段または第
2のアドレス生成手段の何れかが指定されることを特徴
とする命令処理装置。 - 【請求項3】 前記の命令語により指定された前記1
つまたは結合された複数の第1のレジスタ或いは第2の
レジスタ内に保持される値を基にしてメモリをアクセス
し、メモリから読み出された値を基にして間接的にオペ
ランドアドレスを生成する機能は、複数回適用し得るこ
とを特徴とする命令処理装置。 - 【請求項4】 前記第2のアドレス生成手段は、前記
1つまたは複数の第2のレジスタ或いはメモリから読み
出されたデータの最上位ビットを拡張してアドレス指定
に不足するビットを生成し、全アドレス空間中の所定の
部分空間に対するオペランドアドレスを生成することを
特徴とする請求項1、2、及び3に記載の命令処理装置
。 - 【請求項5】 前記第2のアドレス生成手段は、前記
1つまたは複数の第2のレジスタ或いはメモリから読み
出されたデータの一部のqビットの値で指定される予め
用意された変換テーブルの値を基にしてアドレス指定に
不足するビットを生成し、全アドレス空間中の所定の部
分空間に対するオペランドアドレスを生成することを特
徴とする請求項1、2、及び3に記載の命令処理装置。
Priority Applications (5)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP09584391A JP3181307B2 (ja) | 1991-04-25 | 1991-04-25 | 命令処理装置 |
| KR1019920006348A KR960008318B1 (ko) | 1991-04-25 | 1992-04-16 | 명령처리장치 |
| DE69229424T DE69229424T2 (de) | 1991-04-25 | 1992-04-23 | Adressengeneration in einer Datenverarbeitungseinheit |
| EP92106940A EP0510635B1 (en) | 1991-04-25 | 1992-04-23 | Address generation in a data processing unit |
| US08/696,103 US5835973A (en) | 1991-04-25 | 1996-08-14 | Instruction processing unit capable of efficiently accessing the entire address space of an external memory |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP09584391A JP3181307B2 (ja) | 1991-04-25 | 1991-04-25 | 命令処理装置 |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JPH04363735A true JPH04363735A (ja) | 1992-12-16 |
| JP3181307B2 JP3181307B2 (ja) | 2001-07-03 |
Family
ID=14148658
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP09584391A Expired - Fee Related JP3181307B2 (ja) | 1991-04-25 | 1991-04-25 | 命令処理装置 |
Country Status (5)
| Country | Link |
|---|---|
| US (1) | US5835973A (ja) |
| EP (1) | EP0510635B1 (ja) |
| JP (1) | JP3181307B2 (ja) |
| KR (1) | KR960008318B1 (ja) |
| DE (1) | DE69229424T2 (ja) |
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2009223897A (ja) * | 1997-03-27 | 2009-10-01 | Atmel Corp | Riscアーキテクチャを有する8ビットマイクロコントローラ |
Families Citing this family (11)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| EP0711435A1 (en) * | 1994-05-25 | 1996-05-15 | National Semiconductor Corporation | Processor core which provides a linear extension of an addressable memory space |
| US5566308A (en) * | 1994-05-25 | 1996-10-15 | National Semiconductor Corporation | Processor core which provides a linear extension of an addressable memory space |
| US5915266A (en) * | 1994-05-25 | 1999-06-22 | National Semiconductor Corporation | Processor core which provides a linear extension of an addressable memory space |
| US5819056A (en) * | 1995-10-06 | 1998-10-06 | Advanced Micro Devices, Inc. | Instruction buffer organization method and system |
| US5940877A (en) * | 1997-06-12 | 1999-08-17 | International Business Machines Corporation | Cache address generation with and without carry-in |
| US6098160A (en) * | 1997-10-28 | 2000-08-01 | Microchip Technology Incorporated | Data pointer for outputting indirect addressing mode addresses within a single cycle and method therefor |
| US7254696B2 (en) * | 2002-12-12 | 2007-08-07 | Alacritech, Inc. | Functional-level instruction-set computer architecture for processing application-layer content-service requests such as file-access requests |
| US7334116B2 (en) * | 2004-10-06 | 2008-02-19 | Sony Computer Entertainment Inc. | Bit manipulation on data in a bitstream that is stored in a memory having an address boundary length |
| CN100351813C (zh) * | 2005-09-07 | 2007-11-28 | 大唐微电子技术有限公司 | 数字信号处理系统中访问存储单元的方法及其处理系统 |
| KR102552666B1 (ko) * | 2018-11-12 | 2023-07-10 | 삼성전자주식회사 | 전자 장치 및 그것의 동작 방법 |
| US20260086718A1 (en) * | 2024-09-25 | 2026-03-26 | Ati Technologies Ulc | Systems and methods for providing extended memory access in a parallel processor |
Family Cites Families (9)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US3657705A (en) * | 1969-11-12 | 1972-04-18 | Honeywell Inc | Instruction translation control with extended address prefix decoding |
| US3976976A (en) * | 1975-04-04 | 1976-08-24 | The United States Of America As Represented By The Secretary Of The Navy | Method and means to access and extended memory unit |
| US4090237A (en) * | 1976-09-03 | 1978-05-16 | Bell Telephone Laboratories, Incorporated | Processor circuit |
| US4206503A (en) * | 1978-01-10 | 1980-06-03 | Honeywell Information Systems Inc. | Multiple length address formation in a microprogrammed data processing system |
| US4363091A (en) * | 1978-01-31 | 1982-12-07 | Intel Corporation | Extended address, single and multiple bit microprocessor |
| JPS6017130B2 (ja) * | 1980-06-06 | 1985-05-01 | 日本電気株式会社 | アドレス制御装置 |
| IT1183808B (it) * | 1985-04-30 | 1987-10-22 | Olivetti & Co Spa | Circuito elettronico per collegare un microprocessore ad una memoria ad elevata capacita |
| US4868740A (en) * | 1986-06-04 | 1989-09-19 | Hitachi, Ltd. | System for processing data with multiple virtual address and data word lengths |
| JPH0192851A (ja) * | 1987-10-02 | 1989-04-12 | Hitachi Ltd | アドレス空間切替装置 |
-
1991
- 1991-04-25 JP JP09584391A patent/JP3181307B2/ja not_active Expired - Fee Related
-
1992
- 1992-04-16 KR KR1019920006348A patent/KR960008318B1/ko not_active Expired - Fee Related
- 1992-04-23 EP EP92106940A patent/EP0510635B1/en not_active Expired - Lifetime
- 1992-04-23 DE DE69229424T patent/DE69229424T2/de not_active Expired - Fee Related
-
1996
- 1996-08-14 US US08/696,103 patent/US5835973A/en not_active Expired - Fee Related
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2009223897A (ja) * | 1997-03-27 | 2009-10-01 | Atmel Corp | Riscアーキテクチャを有する8ビットマイクロコントローラ |
Also Published As
| Publication number | Publication date |
|---|---|
| DE69229424T2 (de) | 1999-11-18 |
| EP0510635A3 (en) | 1993-07-07 |
| US5835973A (en) | 1998-11-10 |
| EP0510635A2 (en) | 1992-10-28 |
| KR920020322A (ko) | 1992-11-21 |
| JP3181307B2 (ja) | 2001-07-03 |
| EP0510635B1 (en) | 1999-06-16 |
| KR960008318B1 (ko) | 1996-06-24 |
| DE69229424D1 (de) | 1999-07-22 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| EP2510444B1 (en) | Hierarchical translation tables control | |
| KR100266337B1 (ko) | 정보처리회로,반도체집적회로장치,마이크로컴퓨터,및전자기기 | |
| JPH04363735A (ja) | 命令処理装置 | |
| JP2615103B2 (ja) | 仮想計算機システム | |
| US5666510A (en) | Data processing device having an expandable address space | |
| JPS61148551A (ja) | アドレス変換方式 | |
| JPH0812636B2 (ja) | 仮想記憶制御方式の計算機システム | |
| KR19990036893A (ko) | 다중 어드레싱 모드를 실행하는 프로세서 구조 및 그 설계방법 | |
| KR19990037573A (ko) | 사용가능한 연산코드를 최대화하고 다양한 어드레싱 모드를 실행하는 프로세서 구조 및 명령 세트 | |
| JPH0195347A (ja) | アドレス変換方式 | |
| JPS6128143B2 (ja) | ||
| KR100207335B1 (ko) | 마이크로컴퓨터와 어드레스 발생 방법 | |
| KR20010085562A (ko) | 데이터 랜덤 액세스 메모리를 사용하는 다양한 사이즈의마이크로컨트롤러를 위한 강제 페이지 페이징 방법 | |
| JPH0376503B2 (ja) | ||
| JP3644614B2 (ja) | 動的中間コード処理装置 | |
| JPS58137064A (ja) | アドレス拡張方式 | |
| JPS6049335B2 (ja) | マイクロプログラム制御方式のデ−タ処理装置における分岐アドレス決定方式 | |
| JPH0325644A (ja) | 多重仮想アドレス空間制御装置 | |
| JPH0517583B2 (ja) | ||
| JPS5918787B2 (ja) | Tlbパ−テイシヨン方式 | |
| JPS6273346A (ja) | アドレス変換装置 | |
| JPS62296251A (ja) | ペ−ジングアドレス方式 | |
| JPS63271567A (ja) | 非対称密結合マルチプロセツサシステム | |
| JPH073659B2 (ja) | マイクロプロセッサ | |
| JPS603656B2 (ja) | 計算機のメモリ拡張方式 |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20080420 Year of fee payment: 7 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090420 Year of fee payment: 8 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100420 Year of fee payment: 9 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100420 Year of fee payment: 9 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110420 Year of fee payment: 10 |
|
| LAPS | Cancellation because of no payment of annual fees |