JP2000293433A - プログラム実行方式 - Google Patents

プログラム実行方式

Info

Publication number
JP2000293433A
JP2000293433A JP11103576A JP10357699A JP2000293433A JP 2000293433 A JP2000293433 A JP 2000293433A JP 11103576 A JP11103576 A JP 11103576A JP 10357699 A JP10357699 A JP 10357699A JP 2000293433 A JP2000293433 A JP 2000293433A
Authority
JP
Japan
Prior art keywords
ram
program
rom
capacity
program execution
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
JP11103576A
Other languages
English (en)
Inventor
Hideki Takemoto
英樹 竹本
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.)
Niigata Fuji Xerox Manufacturing Co Ltd
Original Assignee
Niigata Fuji Xerox Manufacturing Co 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 Niigata Fuji Xerox Manufacturing Co Ltd filed Critical Niigata Fuji Xerox Manufacturing Co Ltd
Priority to JP11103576A priority Critical patent/JP2000293433A/ja
Publication of JP2000293433A publication Critical patent/JP2000293433A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Stored Programmes (AREA)
  • Memory System (AREA)

Abstract

(57)【要約】 【課題】 RAMの搭載容量に従って最適のプログラム
実行環境を選択する。 【解決手段】 マイクロコンピュータのプログラム実行
において、メモリ容量診断部2によりRAM4の搭載容
量が多いと判断されたときは、データリード部1によ
り、プログラムを内蔵したROM5からプログラムをR
AM4にコピーし、より高速アクセス可能なRAM4上
でプログラムを実行させ、RAM4の搭載容量が少ない
と判断されたときは、メモリの不足によるプログラムの
処理効率を下げないようにROM5上でプログラムを実
行させる。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】この発明は、RAMの搭載容
量に従って最適なプログラムの実行環境を選択するプロ
グラム実行方式に関する。
【0002】
【従来の技術】近年、マイクロコンピュータの持つプロ
セッサの発達によりその処理速度は、著しく向上してい
る。それに比べてプログラムを格納するROMのアクセ
ス速度は低速であり、そのためにプロセッサの性能を十
分に引き出せず、その解決方法としてROMよりもアク
セス速度の速いRAMでプログラムを実行させる方法が
考えられてきた。
【0003】例えば、特開平8−314801号公報に
おいては、ブートROMを用いずにROMのデータをR
AMへロードし、RAMでプログラムを実行するための
手段が記載されている。図5がその例であり、データリ
ード手段41は、電源投入時に、ROM43からのプロ
グラムのリード要求を出力する。アクセス制御手段42
は、リード要求をROM43に対して出力し、ROM4
3からリードされたデータをRAM44内に格納する。
これにより、ROM43内のプログラムが全てRAM4
4にロードされる。データリード手段41は、ROM4
3内の全てのデータをリードすると、メモリ切替え信号
を出力する。アクセス制御手段42は、メモリ切替え信
号を受け取ると、以後のプログラムに対するアクセス要
求をRAM44に対して出力する。
【0004】
【発明が解決しようとする課題】しかし、上述した従来
技術には、次のような問題点があった。
【0005】第1の問題点は、ROMと同一容量のRA
Mが必ず搭載されている必要があるということであり、
性能が上がる反面、コストも上がってしまうという欠点
があった。
【0006】第2の問題点は、第1の問題点に関連し
て、低価格、低コストのシステムには採用できないとい
うことであり、コストを抑えるためには性能を犠牲にし
なければならないという欠点があった。
【0007】この発明の目的は、以上の問題点を解決す
るためのメモリ切替方式とプログラム実行環境を提供す
るものである。
【0008】
【課題を解決するための手段】この発明は、マイクロコ
ンピュータのプログラム実行において、そのプログラム
を内蔵したROMから、RAMの搭載容量が多いときは
プログラムをRAMにコピーし、より高速アクセス可能
なRAM上でプログラムを実行することで実行速度を上
げることが可能となり、RAMの搭載容量が少ないとき
はメモリの不足によるプログラムの処理効率を下げない
ようにROM上でプログラムを実行させることができる
ものであり、RAMの搭載容量に従って最適のプログラ
ム実行方法を選択できることを特徴としている。
【0009】
【発明の実施の形態】次に、この発明の実施の形態につ
いて図面を参照して説明する。
【0010】図1は、この発明のプログラム実行方式の
実施の形態を示すブロック図である。図1を参照する
と、このプログラム実行方式は、ROM5と、RAM4
と、ROM5とRAM4のバンク切換、チップセレクト
(CS)信号の切換を行う切換制御部3と、RAM4の
搭載容量を調べて最適なメモリ割付を決定するメモリ容
量診断部2と、ROM5およびRAM4からデータを読
み書きするデータリード部1とで構成されており、電源
投入時には、切換制御部3からROM5への切換信号が
出力されていることにより、RAM4とROM5は異な
るアドレス空間を持っている。
【0011】まず、メモリ容量診断部2内のブートRO
Mプログラムが実行され、RAM4の搭載容量を診断す
る。RAM4の容量が十分にあると判断された場合は、
データリード部1によりROM5内のプログラムデータ
をRAM4にコピーし、切換制御部3によりRAM4へ
の切換信号を出力することによって、それ以降は、RA
M4内に格納されたプログラムが実行されることにな
る。
【0012】メモリ容量診断部2で容量が十分に無いと
判断された場合は、切換制御部3からの切換信号は、R
OM5に出力されたままとなり、ROM5内のプログラ
ムが実行される。
【0013】次に、この発明の実施の形態を図2の具体
的なアドレス空間を用いて詳細に説明する。メモリ容量
診断部11ではRAM14の容量診断を行い、アドレス
000000〜4FFFFFまでの5MB(メガバイ
ト)搭載されていると認識される。ここから、ROMの
容量1MBを引いた4MBが、このシステムを動作させ
るに必要十分なメモリ容量であると判断されたとする
と、アドレス800000〜8FFFFFに割り付けら
れているROM13の内容を、同一容量空間であるRA
M14のアドレス400000〜4FFFFFへコピー
を行い、その後、切換制御部12によるバンク切換、チ
ップセレクト信号の切換が行われることによって、アド
レス空間800000〜8FFFFFに割り付けられた
RAM15とアドレス空間000000〜3FFFFF
に割り付けられたRAM16とに分割される。その際、
ROM13へのアクセスは遮断される。
【0014】プログラムは、本来、ROM13のアドレ
ス空間800000〜8FFFFF内で動作するものと
して作成されているので、RAM15が同じアドレス空
間に割り付けられたことによって、プログラム内での特
別な変更を必要とせず、実行させることが可能となる。
【0015】また、上述のメモリ容量診断部11にて、
RAM14の容量5MBからROMの容量1MBを引い
た4MBが、このシステムを動作させるに必要十分なメ
モリ容量でないと判断された場合は、コピーおよびバン
ク切換等は行われず、プログラムはROM13で実行さ
れ、RAM14は、アドレス000000〜4FFFF
Fまで使用されることになる。
【0016】次に、この実施の形態の動作について、図
3のフローチャートを用いて説明する。図3に示す処理
は、装置の電源が投入された時に開始されるものであ
る。
【0017】電源投入時には、まず、ブートROM内の
プログラムが実行され、ハードウェア診断等が行われる
(ステップ101)。
【0018】次に、RAMの搭載容量を調べ、このシス
テムで最低限必要なメモリ容量以上が搭載されているか
をチェックする(ステップ102)。
【0019】十分なメモリがあると判断された場合はス
テップ104へ進み、必要最低限なメモリしかないと判
断された場合はステップ107へ進む(ステップ10
3)。
【0020】必要最低限なメモリ容量は、システム毎に
定義されるものとし、RAMの搭載容量は、拡張できる
ものとしている。すなわち、RAMを増設すれば必要最
低限以上のメモリが確保でき、ステップ104に進むこ
とが可能になる。
【0021】ROMの先頭アドレスから順にデータを読
み込み、RAMの対となるアドレスに書き込む。すなわ
ちコピーを行う(ステップ104)。
【0022】ROM内の全てのデータをコピーし終わっ
たかをチェックし、コピーが終了していない場合はステ
ップ104に戻り、同様の処理を繰り返す。全てのコピ
ーを終了したらステップ106に進む(ステップ10
5)。
【0023】図2のアドレス領域を例に取ると、ROM
のアドレスが800000番地より開始されているの
で、バンク切換、チップセレクト信号の切換等によりR
AMの一部の先頭アドレスを800000番地に切り換
える。それと同時にROMへのアクセスを禁止する(ス
テップ106)。
【0024】プログラムの実行アドレスを800000
番地に移動し、RAM内にコピーされたプログラムが実
行される。ステップ103から来た場合は、ROM内に
予め内蔵されているプログラムが実行される(ステップ
107)。
【0025】上述のように、この実施の形態は、メモリ
容量診断部によってプログラムをROM上で実行させた
方が良いかRAM上で実行させた方が良いかの判断を行
い、RAM上で実行させた方が良い場合は、データリー
ド部を介してROMに内蔵されているプログラムをRA
Mにコピーし、切換制御部を使用してプログラムの実行
場所を切り換えることで、最適なプログラム実行環境を
整えることができる。
【0026】次に、この発明の他の実施の形態を図4に
示す。図4に示す実施の形態では、その基本的構成は上
記の通りであるが、ROM33の一部であるアドレス8
80000〜8FFFFFまでを、RAM34のアドレ
ス580000〜5FFFFFまでにコピーし、切換制
御部32によってRAM34のアドレス580000〜
5FFFFFを、ROMと同一のアドレス880000
〜8FFFFFに切り換えることによって、プログラム
の800000〜87FFFFまではROM33上で、
プログラムの880000〜8FFFFFまではRAM
35上で動作させることが可能となる。
【0027】これにより、図2を用いて説明したところ
のRAM容量5MBからROM容量1MBを引いた4M
Bが必要十分なメモリでなくても、ROMの容量を0.
5MBとして、RAM容量5MBからROM容量0.5
MB引いた4.5MBが必要十分なメモリと判断される
可能性が出てくる。
【0028】すなわち、ROMのアドレス空間を分割
し、一部のみでも高速アクセス可能なRAM上で動作さ
せることができる。また、これによりブートROMを別
に設けなくても、ROM33内にブートプログラムを格
納することも可能になる。
【0029】
【発明の効果】以上説明したように、この発明は、RA
Mの搭載容量に従ってRAMを効率的に使い、RAM容
量が少ない時はメモリ不足による性能劣化を避けるため
にROM上でプログラムを動作させ、RAM容量が多い
時はROMよりもアクセススピードの速いRAM上でプ
ログラムを動作させることによって、その時のシステム
環境に合わせて最適の速度性能が出せるという効果があ
る。
【0030】そのため、低価格、低コストのシステムに
は余分なRAMを搭載せず、通常はROM上でプログラ
ムを動作させるが、RAMを増設すればその一部を使用
してRAM上でプログラムを実行できるようになり、R
AM増設による速度向上の度合いが高くなる。
【0031】また、プログラムを同一アドレスで実行さ
せることによって、プログラムがROMかRAMのどち
らで実行されているかを意識することもなく、プログラ
ム作成時にも何ら考慮する必要がない。
【図面の簡単な説明】
【図1】この発明のプログラム実行方式の実施の形態を
示すブロック図である。
【図2】この実施の形態を具体的なアドレス空間を用い
て説明する図である。
【図3】この実施の形態の動作について説明するフロー
チャートである。
【図4】この発明の他の実施の形態を示すブロック図で
ある。
【図5】従来のプログラム実行方式を説明する図であ
る。
【符号の説明】
1,41 データリード部 2,11,31 メモリ容量診断部 3,12,32 切換制御部 4,14,15,16,34,35,36,44 RA
M 5,13,33,43 ROM 42 アクセス制御手段

Claims (6)

    【特許請求の範囲】
  1. 【請求項1】プログラムをROMに内蔵したマイクロコ
    ンピュータのプログラム実行方式において、 プログラムをROM上で実行させた方が良いかRAM上
    で実行させた方が良いかの判断を行うメモリ容量診断部
    と、 前記メモリ容量診断部によりRAM上で実行させた方が
    良いと判断された場合に、ROMに格納されているデー
    タをRAMにコピーするデータリード部と、 プログラムの実行場所をRAMに切り換える切換制御部
    と、を備えることを特徴とするプログラム実行方式。
  2. 【請求項2】前記データリード部は、前記ROMに格納
    されたデータの一部を前記RAMにコピーすることを特
    徴とする請求項1に記載のプログラム実行方式。
  3. 【請求項3】前記ROM内にブートプログラムを格納す
    ることを特徴とする請求項2に記載のプログラム実行方
    式。
  4. 【請求項4】前記メモリ容量診断部は、前記RAMのメ
    モリ容量からRAMにコピーされるデータの容量を差し
    引いた残りのRAMのメモリ容量が、システムを動作さ
    せるに必要十分なメモリ容量である場合にRAM上で実
    行させた方が良いと判断することを特徴とする請求項1
    〜3のいずれかに記載のプログラム実行方式。
  5. 【請求項5】前記切換制御部は、前記ROMと同一アド
    レスでプログラムの実行場所をRAMに切り換えること
    を特徴とする請求項1〜4のいずれかに記載のプログラ
    ム実行方式。
  6. 【請求項6】プログラムをROMに内蔵したマイクロコ
    ンピュータのプログラム実行方法において、 RAMの搭載容量が多いときは前記ROMからプログラ
    ムをRAMにコピーし、より高速アクセス可能なRAM
    上でプログラムを実行し、 RAMの搭載容量が少ないときは前記ROM上でプログ
    ラムを実行させることを特徴とするプログラム実行方
    法。
JP11103576A 1999-04-12 1999-04-12 プログラム実行方式 Pending JP2000293433A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP11103576A JP2000293433A (ja) 1999-04-12 1999-04-12 プログラム実行方式

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP11103576A JP2000293433A (ja) 1999-04-12 1999-04-12 プログラム実行方式

Publications (1)

Publication Number Publication Date
JP2000293433A true JP2000293433A (ja) 2000-10-20

Family

ID=14357624

Family Applications (1)

Application Number Title Priority Date Filing Date
JP11103576A Pending JP2000293433A (ja) 1999-04-12 1999-04-12 プログラム実行方式

Country Status (1)

Country Link
JP (1) JP2000293433A (ja)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002132520A (ja) * 2000-10-24 2002-05-10 Hitachi Telecom Technol Ltd プログラム制御方法及びその方法を用いた装置
JP2002140228A (ja) * 2000-10-31 2002-05-17 Canon Inc データ処理装置およびデータ処理装置のメモリアクセス制御方法
JP2013097715A (ja) * 2011-11-04 2013-05-20 Nikon Corp 電子機器およびプログラム
JP2022537601A (ja) * 2019-09-11 2022-08-26 レッドパイン シグナルズ インコーポレイティド プロセッサの消費電力を削減するためのフラッシュとramの割り当てのシステムと方法

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002132520A (ja) * 2000-10-24 2002-05-10 Hitachi Telecom Technol Ltd プログラム制御方法及びその方法を用いた装置
JP2002140228A (ja) * 2000-10-31 2002-05-17 Canon Inc データ処理装置およびデータ処理装置のメモリアクセス制御方法
JP4724289B2 (ja) * 2000-10-31 2011-07-13 キヤノン株式会社 データ処理装置およびデータ処理装置のメモリアクセス制御方法
JP2013097715A (ja) * 2011-11-04 2013-05-20 Nikon Corp 電子機器およびプログラム
JP2022537601A (ja) * 2019-09-11 2022-08-26 レッドパイン シグナルズ インコーポレイティド プロセッサの消費電力を削減するためのフラッシュとramの割り当てのシステムと方法
JP7194314B2 (ja) 2019-09-11 2022-12-21 レッドパイン シグナルズ インコーポレイティド プロセッサの消費電力を削減するためのフラッシュとramの割り当てのシステムと方法

Similar Documents

Publication Publication Date Title
US7313683B2 (en) Computer system and method which boots from a bootup-memory-image stored in nonvolatile memory and copies data within an address range of predetermined width to main memory so that the system boots quickly after initialization
JP2001043180A (ja) マイクロプロセッサおよびそのための記憶装置
JP2000293433A (ja) プログラム実行方式
GB2299184A (en) Initial diagnosis of a processor
JP3693240B2 (ja) 異なる操作モードを利用してアダプタ構成ルーチンを実行する方法およびシステム
JPH0766368B2 (ja) ブ−トプロセツサ決定方式
JPH1020906A (ja) データ処理装置及びデータ処理方法
JPH0246970B2 (ja) Memorikakuchohoshiki
JP3804754B2 (ja) シングルチップマイクロコンピュータ
CN1326050C (zh) 用于操作具有内部数据高速缓存器的cpu的方法
JPH05233470A (ja) アドレス変換装置
JP3001464B2 (ja) マイクロプロセッサ装置
US6223241B1 (en) Sharing of the indirect addressing of the registers of a peripheral dedicated to emulation
JPH09198362A (ja) アドレス変換方法及び装置及びマルチプロセッサシステム及びその制御方法
JP2003303132A (ja) 半導体メモリ制御装置
JP3036449B2 (ja) メモリ診断装置
JPS6126701B2 (ja)
JPH0950387A (ja) エミュレーション装置
JP2002032352A (ja) マルチプロセッサシステム
JPH0512107A (ja) プログラム実行方式
JPS6029131B2 (ja) 診断方式
JPH0361216B2 (ja)
JPH10133872A (ja) 命令バッファを有するプロセッサ装置
JPH06161930A (ja) コンピュータ
JPH07281954A (ja) 高速pcシステム