JPH0423147A - バンク切り換え方式 - Google Patents

バンク切り換え方式

Info

Publication number
JPH0423147A
JPH0423147A JP12686590A JP12686590A JPH0423147A JP H0423147 A JPH0423147 A JP H0423147A JP 12686590 A JP12686590 A JP 12686590A JP 12686590 A JP12686590 A JP 12686590A JP H0423147 A JPH0423147 A JP H0423147A
Authority
JP
Japan
Prior art keywords
program
address
bank
memory
banks
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
Application number
JP12686590A
Other languages
English (en)
Inventor
Atsushi Kobayashi
篤 小林
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 JP12686590A priority Critical patent/JPH0423147A/ja
Publication of JPH0423147A publication Critical patent/JPH0423147A/ja
Pending legal-status Critical Current

Links

Abstract

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

Description

【発明の詳細な説明】 〔概  要〕 複数のメモリバンクを切り換えてアドレスの拡張を行う
バンク切り換え方式に関し、 バンク切り換え時のプログラム上の操作を無くし、プロ
グラムミスの発生を防止することを目的とし、 複数のメモリバンクを切り換えてアドレスの拡張を行う
バンク切り換え方式において、マイクロプロセッサの動
作を規定するプログラムのアドレスを、そのプログラム
の各モジュール内で参照するメモリバンクに、対応させ
てプログラム作成を行うプログラム作成部と、プログラ
ム実行時に、前記メモリバンクに対応ずけて決められて
いるプログラムアドレスを解析するアドレス解析部と、
このアドレス解析部の解析結果に基づいて前記複数のメ
モリバンクを切り換えるバンク切り換え部とを備えるよ
うに構成する。
〔産業上の利用分野〕
本発明は、複数のメモリバンクを切り換えてアドレスの
拡張を行うバンク切り換え方式に関する。
〔従来の技術〕
マイクロプロセッサがアクセスできるアドレス空間は、
それぞれのマイクロプロセッサの仕様で決まっている。
しかしながら、プログラムによっては、マイクロプロセ
ッサが持っているアドレス空間より広いアドレス空間を
必要とすることがある。そこで、マイクロプロセッサが
直接アクセスできるアドレス空間とは別のアドレス空間
に複数のメモリエリア(これをバンクと呼ぶ)を配置し
、それら複数のバンクをバンクレジスタに基づいて切り
換えてアドレスの拡張を行うバンク切り換え方式が知ら
れている。
第5図は、従来のバンク切り換え方式におけるプロセッ
サシステムの回路構成図であり、第6図はそのレジスタ
マツプである。
第5図において、CPUIIは、C312(コントロー
ル・ストレージ)に記憶されている制御プログラムに従
って処理を実行するプロセッサである。
バンクO、バツクト・・等からなる複数のバンク13は
、C312とは別のアドレス空間に配置されるメモリで
あり、ROMまたはRAMで構成されている。バンクレ
ジスタ14は、これら複数のバンク13を切り換える為
のレジスタであり、このバンクレジスタ14に書き込ま
れたデータはデコーダ15でデコードされて、対応する
バンクをイネーブルとする信号が出力される。また、ハ
ードレジスタ群16は、各種演算に使用されるレジスタ
群である。
なお、CPUI lとC312間は、CSデータバス1
7及びCSアドレスバス18で接続されており、CPU
IIと各バンク13間及びレジスタ間等は、レジスタデ
ータバス19及びレジスタアドレスバス20で接続され
ている。
上記各レジスタには、第6図に示すように8ビツトのア
ドレス領域が割り当てられいる。アドレス「00」から
アドレス’BFJ (16進数)は、バンク切り換えエ
リアであり、このバンク切り換えエリアは上述した複数
のバンク1、バンク2・・・に割り当てられる。アドレ
ス「CO」からアドレスrFF、は、ハードレジスタ群
16に割り当てられており、そのアドレス間にバンクレ
ジスタ14のアドレスも割り当てられている。
〔発明が解決しようとする課題〕
上述した従来のバンク切り換え方式では、バンクを切り
換える際に、C312に格納されているプログラムが、
先ずバンクレジスタ14に特定のバンクを指定するデー
タをセットし、その後そのバンクレジスタ14のデータ
により指定されるバンクのデータを睨み出す等の操作が
行う必要があった。すなわち、従来のバンク切り換え方
式では、プログラマが、現在どのバンクを使用している
かを常に意識してプログラムを作成しないと、バンク切
り換え時にプログラムミスが発生する可能性があった。
その為、プログラムが複雑化してバンク切り換えが頻繁
に行われると、それだけプログラムミスが発生する可能
性が高くなるという問題点があった。
本発明は、バンク切り換え時のプログラム上の操作を無
くし、プログラムミスの発生を防止することを目的とす
る。
〔課題を解決するための手段〕
第1図は、本発明の原理説明図である。
同図において、プログラム作成部1は、マイクロプロセ
ッサの動作を規定するプログラムのアドレスを、そのプ
ログラムの各モジュール内で参照するメモリバンクに対
応させてプログラムの作成を行う。
アドレス解析部2は、プログラム実行時に、メモリバン
クに対応ずけて決められているプログラムアドレスを解
析し、そのときのアドレスに対応するメモリバンクを指
定する。
また、バンク切り換え部3は、上記アドレス解析部2の
解析結果に基づいて、そのときのアドレスに何れのメモ
リバンクが対応するかを判断し、対応するメモリバンク
への切り換えを行う。
〔作  用〕
プログラム作成時には、プログラム作成部1により、例
えばプログラム内の各モジュールのアドレスが、モジュ
ール内で参照されるメモリバンクと対応ずけて配置され
る。そして、プログラム実行時には、そのときのアドレ
スから対応するメモリバンクが指定され、その指定され
たメモリバンクへの切り換えが行われる。
従って、プログラムによりバンク切り換えの操作をする
必要がないので、バンク切り換える為のプログラムミス
を無くすことができる。
(実  施  例〕 以下、本発明の実施例を図面を参照しながら説明する。
第2図は、本発明のバンク切り換え方式を適用したプロ
セッサシステムの回路構成図である。同図において、第
5図に示した従来の回路と同じ回路ブロックには同じ符
号を引用して説明を行う。
CPUI 1は、CSアドレスバス17及びCSデータ
バス18を介してC312(コントロール・ストレージ
)に接続しており、C312に記憶されている制御プロ
グラムに従って処理を実行する。また、CPUIIは、
レジスタアドレスバス19及びレジスタデータバス20
を介して複数のメモリバンク13(バンク0、バツクト
・・)、共通エリア21及びハードレジスタ群16に接
続している。
共通エリア21は、C312の制御プログラムの全アド
レスから参照可能なメモリであり、処理途中のデータ等
を記憶するメモリである。
複数のメモリバンク13は、C312とは別のアドレス
空間に配置されるレジスタ等からなるメモリであり、R
OMまたはRAMで構成されている。このメモリバンク
13は、後述するデコーダ22等により何れかのバンク
が選択され、その選択されたバンクがCPUIIにより
アクセスされる。また、ハードレジスタ群16は、演算
結果等を記憶するレジスタ群である。
デコーダ22は、CSアドレスをデコードする回路であ
り、そのデコード結果はレジスタ23に記憶される。レ
ジスタ23に記憶されたデータはデコーダ24で再びデ
コードされて、そのデコード結果によりCSアドレスに
対応するバンク13が選択される。すなわち、デコーダ
22等によりはCSアドレスに応じて自動的にバンクを
切り換えることができる。
一般にプログラムの作成は、モジュール単位で行われる
ことが多い、そして、1つのモジュール内では全てのレ
ジスタ等が参照されるわけではなく、参照されるレジス
タは特定のレジスタに限られる場合がほとんどである。
また、サブルーチン等で使用されるレジスタも、それぞ
れのサブルーチン内では特定のものに限定される場合が
多い。
この点に着目して、本実施例では、C312の制御プロ
グラムを作成する際に、制御プログラムを複数のモジュ
ールに分割し、それぞれのモジエール内で参照するメモ
リバンクとそれぞれのモジュールのアドレスとを対応ず
けてプログラムを作成するようにした。すなわち、特定
のアドレス範囲内では、特定のメモリバンク(1個また
は複数であってもよい)だけを参照するようにプログラ
ムを構成した。このようにC312の制御プログラムを
構成することにより、プログラムアドレスが決まれば、
参照すべきメモリバンクが一義的に定まるので、そのア
ドレスをハードウェアでデコードすることにより、その
プログラムで参照すべきメモリバンクに切り換えること
が可能となる。
従って、従来のようにバンクを切り換える際に、プログ
ラムによりバンクレジスタ14(第5図参照)を書き換
える等の操作が不要となり、バンク切り換えの為のプロ
グラムミスを無くすことができる。
第3図は、本実施例のレジスタマツプを示す図である。
レジスタアドレスは、バンク切り換えエリア25と、共
通エリア21と、ハードレジスタ群16とに割り当てら
れており、アドレス「00」からアドレスrBF、には
、バンク切り換えエリア25と共通エリア21とが配置
されている。ここで、バンク切り換えエリア25は、バ
ンク切り換えで選択されたバンク13に割り当てられる
領域である。また、アドレス「CO」からアドレスrF
F。
には、ハードレジスタ群16が配置されている。
次に、第4図は、C312の制御プログラムのアドレス
とメモリバンク13との対応関係を示す図である。同図
に示すようにC312のアドレスにより、そのプログラ
ム領域内でどのメモリバンク13が参照されるかが決ま
る。
例えば、実行中の制御プログラムのアドレスが、アドレ
ス「0000」からアドレスr 0FFF 、の範囲に
あるときには、デコーダ22によりそのときのアドレス
がデコードされ、そのデコード結果に基づいて対応する
メモリバツクエ3として、この場合、バンク0が選択さ
れる。
また、実行中の制御プログラムのアドレスがr 100
OJからr 27FF Jの範囲にあるときには、同様
にしてその時のアドレスのデコード結果から、アドレス
に対応するメモリバンク13として、この場合、バンク
1が選択される。
以上述べたように、上記実施例では、同一のメモリバン
クを参照するプログラムモジュールを1単位として、そ
の1単位のアドレスを参照すべきメモリバンクに対応さ
せてプログラムを作成している。そして、プログラム実
行時に、そのアドレスをデコードしてメモリバンクを切
り換えるようにしている。
従って、従来のように、ソフトウェアによりバンク切り
換えの操作を行う必要がないので、バンク切り換え時の
プログラムミスを無くすことができる。また、プログラ
ム作成時に現在どのバンクを使用しているかを意識せず
にプログラムを作成できるので、プログラマの負担を軽
減させることができる。
なお、上記実施例ではC312のアドレスをデコーダ2
2でデコードした後、そのデコード結果をレジスタ23
に記憶するよにしているが、デコーダ22により直接バ
ンクを切り換えるようにしでもよい。
〔発明の効果] 本発明によれば、ハードウェアによりプログラムアドレ
スをデコードし、その結果に基づいてメモリバンクを切
り換えることができるので、従来のようにプログラムに
よるバンク切り換えが不要となり、ソフトウェアによる
バグの発生を無くずことができる。
【図面の簡単な説明】
第1図は、本発明の原理説明図、 第2図は、本発明の実施例のプロセッサシステムの回路
構成図、 第3図は、実施例のレジスタマツプを示す図、第4図は
、実施例のCSマツプを示す図、第5図は、従来のプロ
セッサシステムの回路構成図、 第6図は、従来のレジスタマツプを示す図である。 ド プログラム作成部、 ・アドレス解析部、 ・バンク切り換え部。

Claims (1)

  1. 【特許請求の範囲】 複数のメモリバンクを切り換えてアドレスの拡張を行う
    バンク切り換え方式において、 マイクロプロセッサの動作を規定するプログラムのアド
    レスを、そのプログラムの各モジュール内で参照するメ
    モリバンクに対応させてプログラム作成を行うプログラ
    ム作成部(1)と、 プログラム実行時に、前記メモリバンクに対応ずけて決
    められているプログラムアドレスを解析するアドレス解
    析部(2)と、 このアドレス解析部(2)の解析結果に基づいて前記複
    数のメモリバンクを切り換えるバンク切り換え部(3)
    とを備えることを特徴とするバンク切り換え方式。
JP12686590A 1990-05-18 1990-05-18 バンク切り換え方式 Pending JPH0423147A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP12686590A JPH0423147A (ja) 1990-05-18 1990-05-18 バンク切り換え方式

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP12686590A JPH0423147A (ja) 1990-05-18 1990-05-18 バンク切り換え方式

Publications (1)

Publication Number Publication Date
JPH0423147A true JPH0423147A (ja) 1992-01-27

Family

ID=14945753

Family Applications (1)

Application Number Title Priority Date Filing Date
JP12686590A Pending JPH0423147A (ja) 1990-05-18 1990-05-18 バンク切り換え方式

Country Status (1)

Country Link
JP (1) JPH0423147A (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6107672A (en) * 1997-09-04 2000-08-22 Matsushita Electronics Corporation Semiconductor device having a plurality of buried wells
US6150699A (en) * 1997-03-03 2000-11-21 Nec Corporation Tri-voltage Bi-CMOS semiconductor device

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6150699A (en) * 1997-03-03 2000-11-21 Nec Corporation Tri-voltage Bi-CMOS semiconductor device
US6107672A (en) * 1997-09-04 2000-08-22 Matsushita Electronics Corporation Semiconductor device having a plurality of buried wells

Similar Documents

Publication Publication Date Title
JP2006139795A (ja) コンピュータシステムのbiosデータ格納装置及びその駆動方法
JPH0423147A (ja) バンク切り換え方式
US6889306B1 (en) Microprocessor and program modification method in the microprocessor
JPS62168229A (ja) システム構成自動認識処理方法
JPS63156231A (ja) リ−ドオンリ−メモリ内命令の変更方法
JPH04107630A (ja) 中央処理装置
JPH06187140A (ja) 処理装置
JPS58139254A (ja) プログラマブル・コントロ−ラ
JPH05233470A (ja) アドレス変換装置
JPH02280231A (ja) マイクロプログラム制御装置
JP2928216B1 (ja) 半導体集積回路
JPH01279353A (ja) 拡張ボード初期設定方式
JPH03127126A (ja) 情報処理装置
JPS62224854A (ja) マイクロ・コンピユ−タ
JPH0158522B2 (ja)
JPH01241644A (ja) マイクロコンピュータ制御回路
JPS6158042A (ja) マイクロプログラム制御方式
JPS62219126A (ja) プログラム制御方式
JPS6247745A (ja) マイクロプログラム制御方式
JPH0353348A (ja) マイクロプログラムのデバッグ方式
JPS63228332A (ja) 命令実行制御方式
JPS6346858B2 (ja)
JPH02252024A (ja) マイクロプログラムロード方式
JPH08221322A (ja) メモリの制御装置およびメモリの制御方法
JP2000112752A (ja) ファームウェア切り替え方式